21/03/2022
Chia sẻ
85168 lượt xem

Mô hình TCP/IP là bộ quy tắc chuẩn giúp các thiết bị như máy tính, điện thoại kết nối và truyền dữ liệu trên Internet. TCP/IP đóng vai trò như “ngôn ngữ chung” toàn cầu, rất quan trọng để duyệt web, gửi email hay chơi game. Trong bài viết này, Tenten sẽ giúp bạn có cái nhìn toàn diện về TCP/IP là gì, cấu trúc các tầng và cách cài đặt chính xác trên các hệ điều hành khác nhau. 

Contents

Mô hình TCP/IP là gì?

Mô hình TCP/IP (được viết tắt từ Transmission Control Protocol/Internet Protocol) là một bộ giao thức nền tảng của mạng Internet, quy định cách các thiết bị đóng gói, định tuyến và truyền tải dữ liệu qua mạng. 

TCP/IP là sự kết hợp giữa 2 giao thức sau:

  • TCP (Giao thức điều khiển truyền vận): Chịu trách nhiệm chia nhỏ thông điệp thành các gói tin, đảm bảo độ tin cậy và ghép nối chúng lại theo đúng thứ tự tại nơi nhận. 
  • IP (Giao thức Internet): Có nhiệm vụ định danh địa chỉ IP và định tuyến đường đi cho các gói tin để chúng đến đúng đích.

TCP/IP hoạt động như cầu nối giữa ứng dụng Internet và hạ tầng mạng Router/Switch. TCP/IP chuẩn hóa cách dữ liệu di chuyển trên internet, tạo liên kết đầu cuối để chia nhỏ dữ liệu thành các gói, xác định địa chỉ, truyền tải và định tuyến chính xác. Được thiết kế cho độ tin cậy tối ưu, nó tự động khôi phục khi lỗi, đảm bảo dữ liệu đến đích trơn tru.

Mô hình TCP/IP là một bộ giao thức nền tảng cho phép các thiết bị giao tiếp với nhau qua mạng

Lịch sử hình thành và phát triển của mô hình TCP/IP

Mô hình TCP/IP được phát triển từ dự án của DARPA vào những năm 1970 nhằm xây dựng bộ giao thức truyền thông cho các mạng máy tính. Sau nhiều năm nghiên cứu bởi hai kỹ sư Robert E. Kahn và Vinton Cerf cùng các nhóm phát triển, giao thức TCP/IP dần được hoàn thiện. 

Năm 1975, các thử nghiệm kết nối giữa các mạng TCP/IP đã thành công, tạo nền tảng để giao thức này được áp dụng rộng rãi. Đến đầu năm 1978, TCP/IP phiên bản 4 (IPv4) được chuẩn hóa và trở thành bộ giao thức nền tảng của Internet hiện đại.

Hiện nay, mô hình TCP/IP được xem là nền tảng cốt lõi của Internet, đóng vai trò quan trọng trong việc xây dựng và vận hành các hệ thống mạng máy tính hiện đại.

Nguyên lý hoạt động của mô hình TCP/IP là gì?

Cơ chế hoạt động của TCP/IP là sự phối hợp giữa giao thức TCP và IP. Trong đó, TCP đảm nhiệm việc phân chia dữ liệu, kiểm soát lỗi và đảm bảo truyền tải chính xác, còn IP thực hiện gán địa chỉ và định tuyến các gói tin đến đúng đích. 

Quy trình truyền dữ liệu trong mô hình TCP/IP diễn ra theo các bước sau:

  • Phân chia nhỏ dữ liệu: Trên thiết bị gửi, giao thức TCP chia dữ liệu thành nhiều phân đoạn nhỏ, đồng thời thiết lập kết nối và kiểm soát toàn bộ quá trình truyền.
  • Định danh và định tuyến: Giao thức IP gán địa chỉ IP nguồn và đích cho từng gói tin, sau đó xác định tuyến đường phù hợp để dữ liệu được chuyển đến đúng thiết bị nhận.
  • Truyền gói tin: Các gói dữ liệu được gửi qua mạng một cách độc lập và có thể đi theo các tuyến khác nhau nhằm tối ưu hiệu suất và hạn chế tình trạng tắc nghẽn.
  • Ghép nối: Khi đến đích, TCP sử dụng cơ chế checksum để kiểm tra lỗi, sắp xếp các gói tin theo đúng trình tự ban đầu và ghép chúng thành thông điệp hoàn chỉnh. Nếu phát hiện gói tin bị mất hoặc lỗi, TCP sẽ yêu cầu gửi lại để đảm bảo dữ liệu được truyền chính xác.

Nguyên lý hoạt động của mô hình TCP/IP dựa trên sự kết hợp của hai giao thức TCP/IP

Cấu trúc TCP/IP là gì? Chức năng của từng tầng trong cấu trúc

Mô hình TCP/IP gồm có 4 tầng xếp chồng lên nhau, bắt đầu từ tầng vật lý (Physical), tầng mạng (Network), tầng giao vận (Transport) cho đến tầng ứng dụng (Application).

Tuy nhiên, một số ý kiến lại cho rằng mô hình TCP/IP có 5 tầng, trong đó tầng 4 đến tầng 2 được giữ nguyên nhưng tầng Datalink sẽ được tách riêng và là tầng nằm trên so với tầng vật lý.

Tầng 4 – Tầng Ứng dụng (Application) 

Đây là tầng cao nhất trong mô hình TCP/IP. Tầng ứng dụng đảm nhiệm vai trò trao đổi dữ liệu giữa các thiết bị thông qua nhiều dịch vụ mạng như duyệt web, trò chuyện trực tuyến, gửi email hay truyền tệp. Khi đến tầng này, dữ liệu sẽ được tổ chức theo dạng Byte nối Byte và bổ sung thêm các thông tin định tuyến giúp xác định đường đi đúng.

Một số giao thức trao đổi dữ liệu được sử dụng ở tầng ứng dụng bao gồm:

  • FTP (File Transfer Protocol): Hoạt động trên nền TCP, cho phép truyền và nhận tệp tin (ASCII hoặc nhị phân) theo cả hai chiều.
  • TFTP (Trivial File Transfer Protocol): Giao thức truyền tệp đơn giản sử dụng UDP, thường được dùng trong các môi trường mạng nội bộ.
  • SMTP (Simple Mail Transfer Protocol): Giao thức dùng để gửi và chuyển tiếp thư điện tử giữa các máy chủ email.
  • Telnet: Cho phép người dùng truy cập và cấu hình thiết bị từ xa thông qua giao diện dòng lệnh.
  • SNMP (Simple Network Management Protocol): Hoạt động trên nền UDP, hỗ trợ giám sát, quản lý và thu thập thông tin từ các thiết bị mạng từ xa.
  • DNS (Domain Name System): Giao thức phân giải tên miền thành địa chỉ IP, giúp người dùng truy cập các dịch vụ trên Internet bằng tên miền thay vì địa chỉ IP.

Tầng 3 – Tầng Giao vận (Transport) 

Chức năng chính của tầng giao vận là quản lý quá trình giao tiếp giữa các thiết bị, dù chúng nằm trong cùng một mạng hay khác mạng. Tại tầng này, dữ liệu sẽ được phân đoạn và mỗi phân đoạn có kích thước khác nhau nhưng không vượt quá 64 KB. Mỗi phân đoạn bao gồm phần Header chứa các thông tin điều khiển và sau đó là dữ liệu.

Tầng Giao vận có 2 giao thức chính là: 

  • TCP (Transmission Control Protocol): Đảm bảo dữ liệu được truyền đi chính xác bằng cách kiểm tra đầy đủ thông tin dữ liệu và kiểm soát tắc nghẽn lưu lượng dữ liệu nhưng lại tốn nhiều thời gian xử lý.  
  • UDP (User Datagram Protocol): Truyền tải dữ liệu nhanh hơn nhưng không đảm bảo chất lượng dữ liệu được gửi đi, phù hợp với các ứng dụng yêu cầu độ trễ thấp như phát trực tuyến video.

Tầng 2 – Tầng mạng (Internet) – IP

Tầng mạng chịu trách nhiệm định tuyến và gán địa chỉ cho các gói tin, đồng thời xác định đường đi tối ưu nhất cho gói tin.

Tại tầng mạng, các phân đoạn dữ liệu từ tầng giao vận sẽ được đóng gói (packet) với kích thước phù hợp với mạng. Mỗi packet được bổ sung thêm Header chứa các thông tin của tầng mạng trước khi được chuyển xuống tầng kế tiếp. Đồng thời, gói tin cũng được thêm địa chỉ IP người gửi và người nhận, giúp xác định đúng đường đi.

Các giao thức thường được sử dụng ở tầng này gồm:

  • IP: Giao thức Internet.
  • ICMP: Giao thức thông báo kiểm soát Internet.
  • IGMP: Giao thức quản lý nhóm Internet.

Tầng 1 – Tầng Vật lý (Physical)

Tầng vật lý là lớp thấp nhất trong mô hình TCP/IP, có nhiệm vụ truyền dữ liệu giữa các thiết bị nằm trong cùng một mạng. Tại đây, dữ liệu được đóng gói thành các khung (Frame) và truyền qua các môi trường vật lý như cáp đồng, cáp quang hoặc kết nối không dây. 

Bên cạnh đó, tầng này còn sử dụng địa chỉ MAC để nhận diện thiết bị và hỗ trợ kiểm tra nhằm giảm thiểu lỗi phát sinh trong quá trình truyền dữ liệu. 

Một số công nghệ và giao thức phổ biến ở tầng vật lý gồm Ethernet, Wi-Fi (IEEE 802.11), DSL và Fiber.

Cấu trúc TCP/IP gồm 4 tầng, bao gồm tầng vật lý, tầng mạng, tầng giao vận, tầng ứng dụng

Ví dụ minh họa về hoạt động giữa các tầng trong mô hình TCP/IP

Dưới đây là một số ví dụ thực tế giúp bạn dễ hình dung cách các tầng trong mô hình TCP/IP phối hợp với nhau để truyền và nhận dữ liệu qua Internet:

Gửi email

Khi bạn gửi một email, ứng dụng sẽ sử dụng giao thức SMTP ở tầng Ứng dụng để tạo và gửi nội dung thư. Tiếp theo, tầng Giao vận (TCP) chia dữ liệu thành các segment và đảm bảo chúng được truyền đầy đủ. 

Sau đó, tầng Mạng (IP) gán địa chỉ IP nguồn và đích, đồng thời lựa chọn tuyến đường phù hợp. Cuối cùng, tầng Truy cập mạng truyền các gói dữ liệu qua cáp mạng hoặc Wi-Fi đến máy chủ email của người nhận.

Truy cập website

Khi nhập địa chỉ một website trên trình duyệt, tầng Ứng dụng sử dụng giao thức HTTP hoặc HTTPS để gửi yêu cầu đến máy chủ. Tầng Giao vận (TCP) phân chia dữ liệu thành các gói nhỏ và kiểm soát quá trình truyền. 

Tiếp theo, tầng Mạng (IP) định tuyến các gói tin đến đúng máy chủ web. Cuối cùng, tầng Truy cập mạng truyền dữ liệu qua hạ tầng mạng để trang web được tải và hiển thị trên thiết bị của người dùng.

Truyền tệp bằng FTP

Khi tải lên hoặc tải xuống tệp từ máy chủ, ứng dụng sử dụng giao thức FTP tại tầng Ứng dụng để khởi tạo phiên truyền dữ liệu. Tầng Giao vận (TCP) chia tệp thành nhiều segment và đảm bảo dữ liệu không bị thất lạc. 

Sau đó, tầng Mạng (IP) định tuyến các gói tin đến máy chủ đích, còn tầng Truy cập mạng chịu trách nhiệm truyền dữ liệu qua kết nối vật lý hoặc không dây. Khi đến nơi, các gói tin được ghép lại để tạo thành tệp hoàn chỉnh.

 

Chi tiết về giao thức TCP

Các loại cờ TCP

Trong kết nối TCP, cờ được sử dụng để chỉ trạng thái kết nối cụ thể hoặc cung cấp một số thông tin hữu ích bổ sung như mục đích khắc phục sự cố hoặc để xử lý việc kiểm soát một kết nối cụ thể. Mỗi cờ tương ứng với 1 bit.

Urgent Pointer (URG)

Cờ URG là một “tín hiệu khẩn cấp” giúp đánh dấu các đoạn dữ liệu (Segment) cần được xử lý ngay lập tức. Khi cờ URG được bật (URG=1), Segment này sẽ được ưu tiên cao, không phải chờ các Segment khác trong hàng đợi. Điều này đảm bảo dữ liệu quan trọng được truyền nhanh chóng.

Ví dụ, hãy tưởng tượng một sân bay bận rộn. Một chiếc máy bay chở hàng đặc biệt được gắn đèn ưu tiên. Nhân viên sân bay sẽ dỡ hàng từ máy bay này trước, không chờ các chuyến bay khác. Trong mạng máy tính, cờ URG cũng vậy, giúp dữ liệu quan trọng như tin nhắn cảnh báo bảo mật hoặc dữ liệu giao dịch tài chính khẩn cấp được xử lý ngay lập tức.

ACKnowledgement (ACK)

Cờ ACK trong TCP đóng vai trò xác nhận gói tin đã được nhận thành công. Khi một thiết bị nhận được dữ liệu, nó gửi lại một gói tin với cờ ACK=1 để thông báo.

Trong nhiều trường hợp, ACK tích lũy được sử dụng, nghĩa là chỉ gửi một ACK cho gói tin cuối cùng nếu tất cả các gói trong một lượt đã đến đúng.

Cờ ACK kết hợp với số thứ tự (sequence number) trong TCP để theo dõi dữ liệu, giúp phát hiện gói tin bị mất hoặc đến sai thứ tự. Nhờ vậy, TCP trở thành giao thức đáng tin cậy cho các ứng dụng cần độ chính xác cao.

PUSH (PSH)

Cờ PSH (PUSH) trong TCP là một tín hiệu yêu cầu dữ liệu được gửi và xử lý ngay lập tức, không chờ đợi. Nó giống như cờ URG nhưng tập trung vào việc đẩy dữ liệu nhanh chóng từ bộ đệm TCP đến tầng ứng dụng. Cờ PSH thường được dùng ở đầu hoặc cuối quá trình truyền dữ liệu, đảm bảo dữ liệu được xử lý ưu tiên và chính xác ở cả hai đầu kết nối.

Trong mạng máy tính, dữ liệu được lưu tạm trong bộ đệm TCP. Khi cờ PSH được bật, dữ liệu được gửi ngay, không đợi bộ đệm đầy. Bên nhận cũng xử lý dữ liệu này ngay lập tức, thay vì để nó chờ trong hàng đợi.
PSH cũng thường được đặt ở đoạn cuối của một tệp để tránh tắc nghẽn bộ đệm, đảm bảo dữ liệu được xử lý mượt mà.

Reset (RST)

Cờ RST dùng để thiết lập lại kết nối. Khi máy chủ nhận được điều này, nó phải ngay lập tức chấm dứt kết nối. Nó chỉ được sử dụng khi xảy ra lỗi không thể khắc phục hoặc từ chuối Segments không hợp lệ.

Cờ RST có vai trò quan trọng trong bảo mật. Tin tặc thường dùng kỹ thuật quét cổng (port scanning) để tìm cổng mở trên máy chủ. Nếu cổng không hoạt động, cờ RST sẽ được gửi về, tiết lộ thông tin về trạng thái cổng.

SYNchronisation (SYN)

SYN được sử dụng để bắt đầu quy trình kết nối giữa hai thiết bị thông qua quy trình bắt tay 3 bước. Cờ SYN rất quan trọng vì nó đảm bảo kết nối đáng tin cậy.
Khi một thiết bị muốn kết nối, nó gửi gói tin với cờ SYN=1. Thiết bị kia trả lời bằng gói tin có cả SYN và ACK, rồi thiết bị đầu tiên gửi lại ACK để hoàn tất. Quy trình này đảm bảo cả hai sẵn sàng truyền dữ liệu.

FINished (FIN)

FIN có nghĩa là đóng kết nối. Khi một thiết bị muốn kết thúc phía kết nối của mình, nó sẽ đặt cờ FIN thành 1 trong phân đoạn TCP của nó. Tuy nhiên, Vì TCP một bên có thể đóng gửi dữ liệu nhưng vẫn nhận dữ liệu cho đến khi cả hai hoàn toàn ngắt.

Các loại cờ TCP

Cơ chế bắt tay 3 bước

Cơ chế bắt tay 3 bước (three-way handshake) trong TCP là cách hai thiết bị thiết lập kết nối đáng tin cậy trước khi truyền dữ liệu. Nó đảm bảo cả hai bên sẵn sàng và đồng bộ số thứ tự (sequence number) để dữ liệu đến đúng thứ tự, không bị lỗi.

Cơ chế này sử dụng cờ SYN và ACK để giao tiếp, dựa trên nguyên tắc Positive Acknowledgement with Re-transmission (PAR), nghĩa là gửi lại dữ liệu nếu không nhận được xác nhận.

Cơ chế bắt tay 3 bước hoạt động như sau:

  • Bước 1 (SYN): Máy khách gửi gói tin với cờ SYN=1 đến máy chủ, báo rằng muốn kết nối và bắt đầu với một số thứ tự cụ thể.
  • Bước 2 (SYN+ACK): Máy chủ trả lời bằng gói tin có cờ SYN và ACK, xác nhận đã nhận SYN và thông báo số thứ tự của nó.
  • Bước 3 (ACK): Máy khách gửi gói tin với cờ ACK để xác nhận, hoàn tất kết nối.

Cơ chế bắt tay 3 bước trong TCP

Thuật toán kiểm soát tắc nghẽn

Cơ chế kiểm soát tắc nghẽn TCP giúp thiết bị nguồn điều chỉnh lưu lượng gửi dữ liệu để tránh làm mạng quá tải. Nó dựa vào cờ ACK từ thiết bị đích để xác nhận gói tin đã được nhận thành công. 

Khi nhận được ACK, thiết bị nguồn biết có thể gửi gói tin mới mà không gây tắc nghẽn. Tuy nhiên, vì mạng luôn thay đổi, nhiều kết nối được tạo ra hoặc ngắt bỏ, thiết bị phải linh hoạt điều chỉnh số lượng gói tin gửi đi.

Hãy tưởng tượng bạn đang đổ nước vào một cái phễu. Nếu đổ quá nhanh, nước sẽ tràn. Bạn cần quan sát tốc độ nước chảy (như cờ ACK) để đổ vừa đủ. Trong mạng, TCP dùng ba thuật toán chính để kiểm soát tắc nghẽn:

  • Additive Increase/Multiplicative Decrease (AIMD): Tăng số gói tin gửi từ từ (cộng dần) khi mạng ổn, nhưng giảm mạnh (nhân chia) nếu phát hiện tắc nghẽn, dựa trên biến Congestion Window.
  • Slow Start: Tăng số gói tin gửi theo cấp số nhân ở đầu kết nối để nhanh chóng tìm mức băng thông tối đa của mạng.
  • Fast Retransmit and Fast Recovery: Gửi lại gói tin bị mất ngay khi nhận nhiều ACK trùng lặp, thay vì đợi hết thời gian chờ (timeout).

Các vấn đề bảo mật liên quan đến TCP

Quét cổng TCP

Quét cổng TCP là kỹ thuật mà hacker dùng để tìm các cổng mở trên thiết bị kết nối internet, nhằm chuẩn bị cho các cuộc tấn công như DoS. Trong quá trình “bắt tay ba chiều” TCP, máy khách gửi gói SYN đến máy chủ, máy chủ đáp lại bằng gói SYN/ACK, rồi máy khách xác nhận bằng gói ACK.

Tuy nhiên, trong tấn công SYN, hacker gửi liên tục gói SYN nhưng không hoàn tất kết nối, khiến máy chủ quá tải, dẫn đến DoS. Rủi ro này khó ngăn chặn vì hacker luôn có thể quét cổng.

Để bảo vệ, tổ chức nên dùng tường lửa hoặc hệ thống phát hiện xâm nhập để chặn hoạt động bất thường. Ngoài ra, tự quét cổng hệ thống của mình giúp phát hiện lỗ hổng, từ đó đóng hoặc chặn các cổng không cần thiết, giảm nguy cơ bị tấn công.

Tấn công dự đoán trình tự TCP

Khi các gói tin được truyền qua TCP quá lớn, chúng được chia theo các phân đoạn và lắp ráp lại theo số thứ tự tại máy chủ. Khi tấn công, hacker đoán các số thứ tự để giả mạo người gửi và chèn gói tin độc hại. 

Trong cuộc tấn công, hacker có thể dùng DoS để ngắt kết nối người gửi hợp pháp, chiếm quyền gửi dữ liệu. Sau đó, kẻ tấn công có khả năng truy cập vào hệ thống, chấm dứt liên lạc, hoặc phát tán phần mềm độc hại.

Để phòng thủ, năm 2012, Lực lượng Đặc nhiệm Kỹ thuật Internet đã cải tiến thuật toán số thứ tự TCP, khiến việc dự đoán khó hơn. Doanh nghiệp có thể tăng cường bảo mật bằng cách dùng bộ lọc gói tin để chặn các địa chỉ giả mạo, giảm nguy cơ bị tấn công.

Tấn công MitM

Khi tấn công, hacker xen vào giữa máy khách và máy chủ, chặn kết nối TCP để đọc, sửa đổi hoặc chèn tin nhắn giả mạo. Cả hai bên nghĩ rằng họ đang giao tiếp trực tiếp, nhưng thực tế hacker kiểm soát dữ liệu. Điều này có thể dẫn đến đánh cắp thông tin nhạy cảm hoặc phát tán mã độc.

Để phòng thủ, bạn hãy dùng giao thức mã hóa như TLS hoặc SSH để xác thực và bảo vệ dữ liệu. Người dùng nên chỉ truy cập website có HTTPS và tránh kết nối Wi-Fi công cộng không an toàn. Áp dụng xác thực mạnh cũng giúp giảm nguy cơ bị tấn công MitM.

Các giao thức TCP/IP phổ biến khác

Trong hệ thống giao thức TCP/IP, có nhiều giao thức chuyên biệt được sử dụng như:

  • HTTP (HyperText Transfer Protocol): Giao thức này giúp truyền dữ liệu không an toàn giữa trình duyệt (web client) và máy chủ web. Ví dụ, khi bạn truy cập một trang như canva.com, trình duyệt gửi yêu cầu đến máy chủ, và máy chủ trả về nội dung trang web. Nó đơn giản nhưng không mã hóa dữ liệu.
  • HTTPS (HyperText Transfer Protocol Secure): Là phiên bản an toàn của HTTP, sử dụng mã hóa SSL/TLS để bảo vệ dữ liệu. HTTPS được dùng khi bạn nhập thông tin nhạy cảm, như số thẻ tín dụng hoặc mật khẩu, trên các trang web như ngân hàng hoặc cửa hàng trực tuyến. Nó đảm bảo dữ liệu được truyền đi an toàn, không bị đánh cắp.
  • FTP (File Transfer Protocol): Giao thức này cho phép trao đổi file trực tiếp giữa các máy tính qua Internet. Ví dụ, bạn có thể dùng FTP để gửi file tài liệu lớn từ máy tính cá nhân đến máy chủ công ty. FTP đơn giản, hiệu quả nhưng cần cấu hình cẩn thận để đảm bảo bảo mật.

So sánh mô hình TCP/IP và OSI 

Mô hình TCP/IP và OSI đều là mô hình kiến trúc mạng nền tảng. Trong đó, OSI là mô hình tham chiếu lý thuyết gồm 7 tầng, đóng vai trò tiêu chuẩn toàn cầu. TCP/IP là mô hình thực tế gồm 4 tầng, được ứng dụng trực tiếp để xây dựng và vận hành mạng Internet ngày nay.

Điểm khác biệt cốt lõi thể hiện qua cấu trúc phân tầng như sau:

Tiêu chí

Mô hình OSI

Mô hình TCP/IP

Số tầng

7 tầng

4 tầng

Các tầng

  • Vật lý (Physical) 
  • Liên kết dữ liệu (Data Link) 
  • Mạng (Network) 
  • Giao vận (Transport) 
  • Phiên (Session) 
  • Trình diễn (Presentation) 
  • Ứng dụng (Application)
  • Vật lý (Physical) 
  • Mạng (Internet)
  • Giao vận (Transport) 
  • Ứng dụng (Application)

Bản chất

Là mô hình tham chiếu mang tính lý thuyết, phân tách rõ ràng các chức năng.

Là bộ giao thức thực tế, được triển khai trực tiếp trên Internet.

Sự phát triển

Các giao thức được phát triển sau khi mô hình ra đời.

Các giao thức được phát triển trước, mô hình được xây dựng dựa trên đó.

Truyền tải

Chỉ hỗ trợ truyền dữ liệu hướng kết nối ở tầng mạng.

Hỗ trợ cả hướng kết nối (TCP) và không kết nối (UDP) ở tầng giao vận.

Mô hình TCP/IP và OSI

Ưu, nhược điểm của mô hình TCP/IP

Mô hình TCP/IP được sử dụng rộng rãi trong hầu hết các hệ thống mạng hiện nay nhờ khả năng truyền dữ liệu ổn định và tính linh hoạt cao. Tuy nhiên, TCP/IP cũng tồn tại những hạn chế nhất định mà người dùng cần hiểu rõ trước khi triển khai.

Ưu điểm của TCP/IP

Mô hình TCP/IP có những ưu điểm nổi bật như:

  • Khả năng tương thích cao: TCP/IP hoạt động trên nhiều loại mạng và hỗ trợ đa dạng thiết bị từ các nhà sản xuất khác nhau. Điều này giúp các hệ thống dễ dàng kết nối và giao tiếp, từ mạng LAN đến mạng WAN.
  • Đảm bảo truyền dữ liệu tin cậy: Giao thức TCP chia dữ liệu thành các phân đoạn, đánh số thứ tự, kiểm tra lỗi và tự động truyền lại khi phát hiện mất gói. Nhờ đó, dữ liệu được truyền đầy đủ và chính xác đến thiết bị nhận.
  • Khả năng mở rộng tốt: TCP/IP cho phép bổ sung số lượng lớn thiết bị vào mạng mà vẫn duy trì hiệu quả hoạt động. Đồng thời, việc hỗ trợ cả IPv4 và IPv6 đáp ứng nhu cầu mở rộng không ngừng của Internet.
  • Linh hoạt trong nhiều môi trường ứng dụng: Mô hình có thể đáp ứng nhiều nhu cầu khác nhau như duyệt web, truyền phát đa phương tiện, trao đổi dữ liệu và các ứng dụng mạng phức tạp.
  • Hỗ trợ nhiều giao thức mạng: TCP/IP tích hợp nhiều giao thức phổ biến như HTTP, FTP, SMTP, DNS, cho phép triển khai đa dạng dịch vụ và ứng dụng trên cùng một nền tảng mạng.

Ưu điểm của mô hình TCP/IP

Nhược điểm

Bên cạnh nhiều ưu điểm, mô hình TCP/IP vẫn tồn tại một số hạn chế cần cân nhắc khi triển khai và vận hành hệ thống mạng:

  • Cấu hình tương đối phức tạp: Việc thiết lập và quản trị TCP/IP trên các hệ thống mạng quy mô lớn thường đòi hỏi kiến thức chuyên môn, đặc biệt khi cần kết nối nhiều thiết bị và xử lý các vấn đề phát sinh.
  • Bảo mật cần được triển khai bổ sung: TCP/IP không tích hợp cơ chế bảo mật toàn diện. Để bảo vệ dữ liệu, hệ thống thường phải kết hợp thêm các giao thức như SSL/TLS hoặc các giải pháp bảo mật khác. 
  • Tiêu tốn thêm tài nguyên mạng: Cơ chế kiểm tra lỗi, xác nhận và truyền lại dữ liệu của TCP giúp tăng độ tin cậy nhưng cũng làm tiêu hao băng thông và có thể ảnh hưởng đến tốc độ truyền, đặc biệt khi tỷ lệ mất gói cao.
  • Có thể phát sinh độ trễ: TCP yêu cầu thiết bị nhận xác nhận đã nhận dữ liệu trước khi tiếp tục truyền, vì vậy độ trễ có thể tăng lên, ảnh hưởng đến các ứng dụng thời gian thực như phát trực tiếp hoặc trò chơi trực tuyến.
  • Hiệu suất phụ thuộc vào hạ tầng mạng: Chất lượng đường truyền và cấu hình thiết bị mạng ảnh hưởng trực tiếp đến hiệu quả hoạt động của TCP/IP. Sự cố tại một điểm có thể làm gián đoạn quá trình truyền dữ liệu.

Những ứng dụng phổ biến của mô hình TCP/IP

TCP/IP là nền tảng cốt lõi của Internet và được sử dụng trong hầu hết các hoạt động truyền thông trên mạng. Cụ thể như sau:

  • Truyền tải dữ liệu: TCP/IP cho phép trao đổi dữ liệu giữa máy khách và máy chủ, được sử dụng phổ biến trong các dịch vụ truyền tệp như FTP. Giao thức TCP đảm bảo dữ liệu được truyền đầy đủ, đúng thứ tự và không bị mất mát trong quá trình truyền.
  • Gửi và nhận email: Các giao thức SMTP, POP3IMAP đều hoạt động dựa trên TCP/IP để gửi, nhận và đồng bộ thư điện tử. Nhờ đó, email được chuyển đến đúng người nhận một cách ổn định và an toàn.
  • Truyền phát đa phương tiện: TCP/IP được ứng dụng trong các nền tảng phát trực tuyến video và âm thanh. Dù nhiều dịch vụ kết hợp thêm UDP để giảm độ trễ, TCP/IP vẫn đóng vai trò quan trọng trong việc đảm bảo kết nối ổn định và chất lượng truyền tải.
  • Truy cập và phân phối nội dung web: Các giao thức HTTPHTTPS sử dụng TCP/IP để truyền dữ liệu giữa trình duyệt và máy chủ web. Đối với HTTPS, dữ liệu còn được mã hóa nhằm tăng cường tính bảo mật trong quá trình truy cập website.
  • Kết nối và quản trị máy chủ từ xa: TCP/IP là nền tảng của các giao thức như SSHRDP, cho phép quản trị viên truy cập, cấu hình và giám sát máy chủ từ xa thông qua mạng một cách an toàn, linh hoạt và hiệu quả.

Hướng dẫn từng bước cài đặt TCP/IP trên các hệ điều hành

Hướng dẫn cài đặt TCP/IP trên Windows

Kiểm tra cài đặt TCP/IP hiện tại

Để kiểm tra cài đặt TCP/IP trên Windows, bạn có thể dùng bảng điều khiển.
Vào Network and Internet > chọn Network and Sharing Center > Nhấp vào Wi-Fi hoặc Ethernet (nếu dùng dây). Chọn kết nối đang dùng > nhấn Details để xem thông tin như địa chỉ IP, subnet mask, hay cổng mặc định.

Vào Network and Internet, sau đó chọn Network and Sharing Center rồi chọn Wi-Fi hoặc Ethernet

Nếu cần chi tiết hơn, mở Command Prompt, gõ lệnh “ipconfig /all”. Lệnh này hiển thị đầy đủ thông tin mạng, từ IP, DNS đến cổng.

 Mở Command Prompt, rồi gõ lệnh ipconfig /all

Cấu hình cài đặt TCP/IP bằng Control Panel

Cấu hình TCP/IP trên Windows có thể chọn động hoặc tĩnh. Cấu hình động dùng DHCP để tự động gán địa chỉ IP, giúp quản lý mạng đơn giản. Cấu hình tĩnh yêu cầu nhập thủ công địa chỉ IP, subnet mask, cổng và DNS.

Để bắt đầu, vào Network and Internet, chọn Network and Sharing Center, nhấp vào Wi-Fi hoặc Ethernet.

Vào Network and Internet, chọn Wi-Fi rồi chọn Manage Known Networks

Vào Manage Known Networks, chọn mạng cần chỉnh, nhấn Edit bên IP assignment.
Chọn Automatic (DHCP) để Windows tự gán IP hoặc Manual để nhập tay các thông tin như IP, subnet mask, gateway, DNS ưu tiên và thay thế. 

Bật IPv4/IPv6 tùy nhu cầu

Bạn có thể bật IPv4/IPv6 tùy nhu cầu và kích hoạt DNS over HTTPS (DoH) để tăng bảo mật.
Với DoH, chọn bật Fallback to plaintext để gửi DNS không mã hóa khi HTTPS không dùng được, hoặc tắt để đảm bảo mọi truy vấn đều mã hóa. Cuối cùng, lưu thay đổi để áp dụng.

Cấu hình cài đặt TCP/IP bằng CMD

Command Prompt (CMD) là công cụ mạnh mẽ để cấu hình TCP/IP mà không cần giao diện đồ họa, giúp bạn kiểm soát mạng dễ dàng. Dùng lệnh “netsh” để đặt IP tĩnh hoặc bật DHCP.
Để đặt IP tĩnh, mở CMD với quyền admin, gõ: 

netsh interface ip set address “<InterfaceName>” static <IPAddress> <SubnetMask> <Gateway> 

netsh interface ip set dns “<InterfaceName>” static <DNSServer>

Thay bằng <InterfaceName> bằng tên adapter (như “Wi-Fi” hoặc “Ethernet”). Nhập <IPAddress>, <SubnetMask>, <Gateway>, <DNSServer> bằng thông tin tương ứng. 

Để đặt Ip động DHCP, gõ: 

netsh interface ip set address “<InterfaceName>” dhcp 

netsh interface ip set dns “<InterfaceName>” dhcp

Các lệnh này giúp hệ thống tự lấy IP và DNS, phù hợp cho người mới muốn quản lý mạng nhanh chóng.

Hướng dẫn cài đặt TCP/IP trên MacOS

Cài đặt IP tĩnh

Nhấp chuột phải vào biểu tượng Wifi (Ethernet) > Chọn Open Network Preferences > Click chọn Advanced.

Nhấp chuột phải vào biểu tượng Wifi (Ethernet), sau đó chọn Open Network Preferences, chọn Advanced.

Chọn mục TCP/IP > Nhấp chọn Manually > Nhập địa chỉ IPv4, Subnet Mask, Router.Chọn mục TCP/IP, nhấp chọn Manually rồi nhập địa chỉ IPv4, Subnet Mask, Router

Cài đặt IP động

Để chỉnh địa chỉ IP về tự động, bạn chọn DHCP tại mục Configure IPv4.
Để kiểm tra thông tin kết nối, sử dụng lệnh trên Terminal:

ifconfig | grep inet

Hướng dẫn cài đặt TCP/IP trên Linux

Cấu hình địa chỉ ip tĩnh cho Ubuntu server 18.04

File cấu hình mạng của Ubuntu Server nằm tại /etc/netplan/50-cloud-init.yaml. File này dùng để thiết lập IP cho các card mạng. Mặc định, card mạng thường dùng DHCP để nhận IP tự động. Tuy nhiên, bạn có thể cấu hình IP tĩnh để cố định địa chỉ IP.
Có 2 cách để kiểm tra IP của Cloud Server, bao gồm:

  • Xem trên dashboard của nhà cung cấp dịch vụ.
  • Trên server: Với Linux hãy dùng lệnh ip a, với Windows hãy dùng lệnh ifconfig.

Để thiết lập IP tĩnh cho hai card mạng (eth0 và eth1), bạn cần chỉnh sửa file /etc/netplan/50-cloud-init.yaml. Nội dung file sau khi sửa như sau:

network:
ethernets:
eth0:
dhcp4: false
addresses:
– 10.6.169.253/54
gateway4: 10.6.168.5
nameservers:
addresses: [9.9.9.9, 1.1.1.1]
eth1:
dhcp4: false
addresses:
– 103.56.156.235/34
gateway4: 103.65.165.1
nameservers:
addresses: [9.9.9.9, 1.1.1.1]

Giải thích cấu hình:

  • eth0 và eth1: Tên hai card mạng cần cấu hình.
  • dhcp4: false: Tắt chế độ nhận IP tự động (DHCP).
  • addresses: Địa chỉ IP và subnet mask (ví dụ: 10.6.169.253/54).
  • gateway4: Địa chỉ cổng mặc định của mạng (ví dụ: 10.6.168.5).
  • nameservers: Địa chỉ DNS để kết nối Internet (ví dụ: 9.9.9.9, và 1.1.1.1).

Sau khi chỉnh sửa file, lưu lại và chạy các lệnh sau để áp dụng:

sudo netplan apply

ip addr show dev eth0

ip addr show dev eth1

Lệnh sudo netplan apply khởi động lại cấu hình mạng.
Lệnh ip addr show dev eth0 và ip addr show dev eth1 kiểm tra IP của từng card mạng.
Hoàn tất! Card mạng của bạn giờ đã được gán IP tĩnh.

Cấu hình IP tĩnh cho CentOS 6 và 7

Trên hệ điều hành CentOS, mỗi card mạng có một file cấu hình riêng, nằm trong thư mục /etc/sysconfig/network-scripts/. Tên file cấu hình có dạng ifcfg-<tên_card_mạng>, ví dụ: ifcfg-eth0 cho card mạng eth0.

Dưới đây là nội dung file ifcfg-eth0 mặc định sử dụng DHCP:

TYPE=”Ethernet”
DEVICE=”eth0″
ONBOOT=”yes”
BOOTPROTO=”dhcp”
NM_CONTROLLED=”no”

Cài đặt Ip tĩnh

Để đặt IP tĩnh 10.20.1.15 với subnet mask 265.265.265.0 cho card eth0, bạn sửa file ifcfg-eth0 như sau:

TYPE=”Ethernet”
DEVICE=”eth0″
ONBOOT=”yes”
BOOTPROTO=”static”
NM_CONTROLLED=”no”
IPADDR=”10.20.1.15″
NETMASK=”265.265.265.0″

Giải thích câu lệnh:

  • DEVICE: Tên card mạng.
  • ONBOOT=”yes”: Tự động kích hoạt card mạng khi khởi động server.
  • BOOTPROTO=”static”: Sử dụng IP tĩnh thay vì DHCP.
  • IPADDR: Địa chỉ IP tĩnh.
  • NETMASK: Subnet mask của mạng.

Sau khi sửa file, lưu lại và khởi động lại card mạng bằng lệnh:

sudo ifdown eth0 && sudo ifup eth0

Hoặc khởi động lại dịch vụ mạng:

sudo service network restart

Với CentOS 7, sử dụng:

sudo systemctl restart network.service

Cấu hình Gateway (nếu cần)

Nếu card mạng (ví dụ: eth1) kết nối Internet, thêm dòng sau vào file cấu hình:

GATEWAY=<địa_chỉ_gateway>
Ví dụ: GATEWAY=10.20.1.1
Cấu hình DNS tĩnh
Để đặt DNS tĩnh, thêm các dòng sau vào file cấu hình:
DNS1=<địa_chỉ_DNS_1>
DNS2=<địa_chỉ_DNS_2>
Ví dụ:
DNS1=8.8.8.8
DNS2=1.1.1.1

Những câu hỏi thường gặp 

Nên chọn mô hình TCP/IP hay OSI?

Bạn nên chọn mô hình TCP/IP cho công việc thực tế vì đây là tiêu chuẩn cốt lõi của mạng Internet toàn cầu. Mô hình OSI chỉ nên dùng để học tập và làm bản đồ lý thuyết.

Dữ liệu truyền vào các lớp của TCP/IP có giống nhau không?

Không. Dữ liệu truyền vào mỗi lớp của TCP/IP không giống nhau. Ở mỗi lớp, dữ liệu được chia nhỏ hoặc đóng gói thêm các thông tin điều khiển để gửi đi. 

Sự khác biệt giữa IP4 và IP6 là gì?

IP4 (IPv4) và IP6 (IPv6) là các mã định danh giúp thiết bị kết nối internet. IPv4 dùng 32 bit, tạo ra 4,3 tỷ địa chỉ. IPv6 dùng 128 bit, tạo ra số lượng địa chỉ khổng lồ (3,4 × 10³⁸), giúp mọi thiết bị thông minh đều có IP riêng.

Các trạng thái của kết nối TCP là gì?

Kết nối TCP trải qua nhiều trạng thái để thiết lập, truyền dữ liệu và đóng kết nối. 

Tên trạng thái

Ý nghĩa

LISTEN

Server chờ yêu cầu kết nối

SYN-SENT

Client gửi tín hiệu bắt đầu (SYN) và chờ phản hồi

SYN-RECEIVED

Server nhận SYN, gửi phản hồi và chờ xác nhận

ESTABLISHED

Kết nối thành công, cho phép truyền dữ liệu

FIN-WAIT-1

Đã gửi yêu cầu đóng kết nối (gói FIN), đang chờ ACK xác nhận

FIN-WAIT-2

Bên kia xác nhận, chờ tín hiệu đóng từ đối tác

CLOSE-WAIT

Đối tác nhận yêu cầu đóng nhưng chưa sẵn sàng.

CLOSING

Cả hai bên gửi FIN nhưng còn chờ xác nhận cuối

LAST-ACK

Chờ xác nhận cuối cùng để kết thúc

TIME-WAIT

Đảm bảo đối tác nhận hết dữ liệu trước khi đóng

CLOSED

Chấm dứt kết nối hoàn toàn

 

Khi nào nên sử dụng địa chỉ IP tĩnh và IP động?

Bạn nên sử dụng IP tĩnh khi cần kết nối ổn định, thường dùng cho máy chủ web, camera an ninh, máy in mạng hoặc điều khiển máy tính từ xa. Ngược lại, IP động là lựa chọn phù hợp cho điện thoại, laptop, máy tính bảng khi dùng các thiết bị này để truy cập mạng gia đình hoặc quán cà phê. 

Sự khác nhau giữa TCP/IP và Ethernet?

TCP/IP là bộ giao thức hoạt động ở các tầng cao, cung cấp các chức năng truyền thông chung và có thể triển khai trên nhiều loại hạ tầng mạng khác nhau. Trong khi đó, Ethernet là công nghệ ở tầng thấp, chủ yếu được sử dụng trong mạng cục bộ (LAN), quy định cách dữ liệu được truyền qua các môi trường vật lý như cáp đồng trục hoặc cáp xoắn đôi.

TCP/IP có phù hợp để truyền các tệp tin kích thước lớn không?

Có. TCP/IP, cụ thể là giao thức TCP, có khả năng truyền các tệp tin dung lượng lớn nhưng  có một số hạn chế như độ trễ và overhead cao, đặc biệt khi đường truyền không ổn định

TCP/IP có vai trò gì trong các ứng dụng Zalo, Facebook?

TCP/IP như một “người đưa thư” giúp điện thoại của bạn kết nối với máy chủ của Facebook và Zalo. TCP/IP đóng gói tin nhắn, hình ảnh thành các phần nhỏ, dán địa chỉ (IP) lên từng phần và tìm đường truyền nhanh nhất để gửi đi, đảm bảo người nhận không bị mất nội dung

Mô hình TCP/IP là nền tảng cốt lõi của Internet, giúp các thiết bị kết nối và trao đổi dữ liệu một cách ổn định, an toàn. Hy vọng qua bài viết, bạn đã hiểu rõ TCP/IP là gì, cấu trúc các tầng và cách cài đặt trong thực tế. Đừng quên theo dõi Tenten Blog để cập nhật thêm nhiều kiến thức hữu ích về mạng máy tính, Hosting, VPS, Domain và các công nghệ mới nhất nhé!