Mô hình TCP/IP thường được mô tả với 4 tầng, mỗi tầng đảm nhiệm một nhóm chức năng riêng trong quá trình truyền dữ liệu giữa các thiết bị mạng. Cách phân chia này giúp các giao thức phối hợp với nhau mà không cần một giao thức duy nhất xử lý toàn bộ quá trình truyền thông.
Bốn tầng của mô hình TCP/IP gồm:
Application Layer (Tầng ứng dụng): Cung cấp các giao thức phục vụ trao đổi dữ liệu giữa các ứng dụng.
Transport Layer (Tầng giao vận): Quản lý việc truyền dữ liệu giữa các ứng dụng trên hai thiết bị.
Internet Layer (Tầng Internet): Đảm nhiệm địa chỉ IP và chuyển tiếp gói tin giữa các mạng.
Network Access Layer (Tầng truy cập mạng): Xử lý việc truyền dữ liệu trên mạng kết nối trực tiếp, chẳng hạn Ethernet hoặc Wi-Fi.
Tùy tài liệu, tầng Network Access còn được gọi là Link Layer (tầng liên kết). Trong mô hình TCP/IP 4 tầng, tầng này bao gồm các chức năng tương ứng với tầng vật lý và tầng liên kết dữ liệu của mô hình OSI.
Tầng ứng dụng nằm ở vị trí cao nhất trong mô hình TCP/IP. Tầng này cung cấp các giao thức để phần mềm trao đổi dữ liệu qua mạng, chẳng hạn trình duyệt web giao tiếp với máy chủ web hoặc ứng dụng email gửi thư đến hệ thống nhận thư.
Các giao thức phổ biến ở tầng ứng dụng gồm:
HTTP/HTTPS: Trao đổi dữ liệu giữa trình duyệt và máy chủ web.
DNS: Tra cứu thông tin tên miền, thường dùng để tìm địa chỉ IP tương ứng với tên miền.
DHCP: Cấp phát các thông số cấu hình mạng cho thiết bị theo cơ chế DHCP.
SSH: Cho phép truy cập và quản trị hệ thống từ xa thông qua kết nối được mã hóa.
FTP: Truyền tệp giữa các thiết bị.
SMTP: Gửi email giữa các ứng dụng và hệ thống thư điện tử.
Khi người dùng truy cập một website, trình duyệt tạo yêu cầu HTTP hoặc HTTPS để gửi đến máy chủ. Tầng ứng dụng xác định nội dung và cách trao đổi dữ liệu theo giao thức tương ứng, sau đó chuyển dữ liệu xuống tầng giao vận để tiếp tục xử lý.
Cần lưu ý rằng tầng ứng dụng của TCP/IP gộp các chức năng tương ứng với tầng ứng dụng, tầng trình bày và tầng phiên trong mô hình OSI. Vì vậy, hai mô hình không phân chia các chức năng hoàn toàn giống nhau.
Tầng giao vận chịu trách nhiệm truyền dữ liệu giữa các ứng dụng trên thiết bị nguồn và thiết bị đích. Tầng này sử dụng số cổng (port) để xác định ứng dụng hoặc dịch vụ liên quan đến luồng dữ liệu, đồng thời cung cấp các cơ chế truyền tải tùy theo giao thức được lựa chọn.
Hai giao thức tiêu biểu ở tầng giao vận là TCP và UDP.
TCP (Transmission Control Protocol) cung cấp cơ chế truyền dữ liệu có kết nối, hỗ trợ kiểm soát thứ tự dữ liệu, xác nhận nhận dữ liệu, truyền lại khi cần và kiểm soát luồng. TCP thường được sử dụng khi ứng dụng cần cơ chế truyền tải tin cậy.
UDP (User Datagram Protocol) truyền dữ liệu theo từng datagram mà không cần thiết lập kết nối như TCP. UDP có ít cơ chế xử lý hơn, phù hợp với các ứng dụng cần giảm độ trễ hoặc tự triển khai cơ chế truyền tải riêng.
Ví dụ, khi trình duyệt truy cập một website qua HTTPS sử dụng TCP, tầng giao vận xử lý kết nối TCP và dữ liệu giữa hai đầu. Với HTTP/3, dữ liệu HTTP được truyền qua QUIC, một giao thức hoạt động trên UDP, nên không phải mọi kết nối HTTPS đều sử dụng TCP.
Tầng giao vận cũng giúp hệ điều hành phân phối dữ liệu đến đúng ứng dụng thông qua thông tin cổng và các thông số liên quan.
Tầng Internet đảm nhiệm việc đánh địa chỉ logic và chuyển tiếp gói tin giữa các mạng. Đây là tầng giúp dữ liệu có thể đi từ thiết bị nguồn đến thiết bị đích ngay cả khi hai thiết bị không nằm trong cùng một mạng cục bộ.
Các giao thức tiêu biểu gồm:
IPv4: Sử dụng địa chỉ IP 32 bit để định danh giao diện mạng.
IPv6: Sử dụng địa chỉ IP 128 bit, cung cấp không gian địa chỉ lớn hơn IPv4.
ICMP: Hỗ trợ thông báo lỗi và cung cấp thông tin phục vụ chẩn đoán mạng; công cụ ping thường sử dụng thông điệp ICMP Echo Request và Echo Reply.
Khi một máy tính gửi dữ liệu đến máy chủ ở mạng khác, tầng Internet sử dụng địa chỉ IP đích để xác định nơi cần chuyển gói tin. Các router trên đường đi căn cứ vào thông tin định tuyến để chuyển tiếp gói tin qua những mạng trung gian.
IP hoạt động theo cơ chế truyền gói tin không kết nối và không tự bảo đảm rằng gói tin chắc chắn đến đích, đến đúng thứ tự hoặc chỉ đến một lần. Nếu ứng dụng cần độ tin cậy, các cơ chế ở tầng trên, chẳng hạn TCP, sẽ đảm nhiệm phần tương ứng.
Tầng truy cập mạng xử lý việc trao đổi dữ liệu trên liên kết mạng trực tiếp giữa các thiết bị. Tầng này liên quan đến cách dữ liệu được đóng gói để truyền trong mạng cục bộ và cách thiết bị gửi, nhận dữ liệu qua môi trường truyền dẫn.
Một số công nghệ và giao thức tiêu biểu gồm:
Ethernet: Công nghệ mạng có dây phổ biến trong mạng LAN và trung tâm dữ liệu.
Wi-Fi (IEEE 802.11): Công nghệ kết nối mạng không dây.
PPP: Giao thức truyền dữ liệu qua liên kết điểm-điểm.
ARP: Được sử dụng trong mạng IPv4 để tìm địa chỉ lớp liên kết tương ứng với địa chỉ IPv4 trên mạng cục bộ. Vị trí phân loại ARP có thể khác nhau tùy cách trình bày mô hình.
Ví dụ, khi máy tính gửi dữ liệu đến một máy chủ nằm trong cùng mạng LAN, thiết bị cần xác định cách chuyển dữ liệu đến giao diện mạng đích trên liên kết đó. Với Ethernet, dữ liệu được đóng gói thành frame và sử dụng địa chỉ MAC để chuyển tiếp trong mạng cục bộ.
Nếu máy chủ nằm ngoài mạng LAN, máy tính thường gửi frame đến địa chỉ MAC của gateway mặc định. Router sau đó xử lý gói IP và chuyển tiếp dữ liệu đến mạng tiếp theo.
| Tầng | Chức năng chính | Ví dụ giao thức/công nghệ |
|---|---|---|
| Application | Cung cấp giao thức trao đổi dữ liệu cho ứng dụng | HTTP, HTTPS, DNS, DHCP, SSH, SMTP |
| Transport | Truyền dữ liệu giữa các ứng dụng, sử dụng thông tin cổng | TCP, UDP |
| Internet | Địa chỉ IP và chuyển tiếp gói tin giữa các mạng | IPv4, IPv6, ICMP |
| Network Access | Truyền dữ liệu qua liên kết mạng trực tiếp | Ethernet, Wi-Fi, PPP |
Bốn tầng phối hợp với nhau để xử lý những phần việc khác nhau. Khi có sự cố mạng, việc hiểu chức năng từng tầng giúp xác định phạm vi cần kiểm tra, thay vì chỉ tập trung vào ứng dụng hoặc máy chủ.
Để dễ hình dung, hãy xét trường hợp người dùng truy cập một website từ máy tính cá nhân.
Bước 1: Tầng ứng dụng tạo dữ liệu
Trình duyệt tạo yêu cầu HTTP hoặc HTTPS gửi đến máy chủ web. Nếu sử dụng tên miền, hệ thống có thể cần thực hiện truy vấn DNS để tìm địa chỉ IP trước khi kết nối đến máy chủ.
Bước 2: Tầng giao vận xử lý dữ liệu
Dữ liệu được chuyển đến giao thức vận chuyển phù hợp. Với HTTPS chạy trên TCP, TCP xử lý kết nối, phân đoạn dữ liệu khi cần, đánh số thứ tự và sử dụng các cơ chế xác nhận, truyền lại để hỗ trợ truyền dữ liệu tin cậy.
Bước 3: Tầng Internet đóng gói gói IP
Dữ liệu tầng giao vận được đặt trong gói IP có thông tin địa chỉ IP nguồn và đích. Các router dựa vào thông tin này để chuyển tiếp gói tin qua các mạng.
Bước 4: Tầng truy cập mạng truyền frame
Gói IP được đóng gói vào frame phù hợp với công nghệ liên kết đang sử dụng, chẳng hạn Ethernet hoặc Wi-Fi. Frame được truyền qua mạng cục bộ đến thiết bị tiếp theo.
Bước 5: Thiết bị đích xử lý dữ liệu theo chiều ngược lại
Tại máy chủ, dữ liệu được xử lý qua các tầng từ dưới lên. Thông tin liên kết mạng được xử lý trước, tiếp đến là gói IP, dữ liệu giao vận và cuối cùng là dữ liệu được chuyển đến ứng dụng web.
Có thể tóm tắt quá trình này như sau:
Máy khách: Application → Transport → Internet → Network Access
Máy chủ: Network Access → Internet → Transport → Application
Trong thực tế, dữ liệu có thể được chia thành nhiều phần và đi qua nhiều thiết bị trung gian. Các lớp đóng gói, thông tin tiêu đề và cơ chế xử lý cụ thể còn phụ thuộc vào giao thức được sử dụng.
TCP/IP và OSI đều được sử dụng để mô tả các chức năng truyền thông mạng, nhưng có cách phân chia tầng khác nhau.
| Tiêu chí | Mô hình TCP/IP | Mô hình OSI |
|---|---|---|
| Số tầng thường dùng | 4 tầng | 7 tầng |
| Tầng ứng dụng | Gộp chức năng ứng dụng, trình bày và phiên | Tách thành Application, Presentation và Session |
| Tầng giao vận | Transport | Transport |
| Tầng Internet | Tương ứng gần nhất với Network | Network |
| Tầng truy cập mạng | Gộp chức năng liên kết dữ liệu và vật lý | Data Link và Physical |
| Mục đích sử dụng | Mô tả kiến trúc giao thức Internet | Mô hình tham chiếu để phân tích chức năng mạng |
Hai mô hình không ánh xạ hoàn toàn tương đương ở mọi chi tiết. Tuy nhiên, mô hình OSI có thể giúp phân tích vị trí của sự cố, trong khi mô hình TCP/IP cung cấp góc nhìn thực tế về các giao thức đang phối hợp trong quá trình truyền dữ liệu.
Nắm được chức năng từng tầng giúp quản trị viên khoanh vùng sự cố hiệu quả hơn. Một số ví dụ thường gặp:
Tầng ứng dụng: Website trả về lỗi HTTP, DNS không phân giải được tên miền hoặc dịch vụ ứng dụng không phản hồi.
Tầng giao vận: Cổng TCP không mở, kết nối bị từ chối hoặc quá trình thiết lập kết nối TCP bị gián đoạn.
Tầng Internet: Sai địa chỉ IP, thiếu route, gateway không phù hợp hoặc gói tin không đến được mạng đích.
Tầng truy cập mạng: Card mạng bị ngắt, Wi-Fi mất kết nối, liên kết Ethernet gặp sự cố hoặc cấu hình mạng cục bộ không chính xác.
Có thể kết hợp nhiều công cụ để kiểm tra:
ping: Kiểm tra khả năng phản hồi ICMP đến địa chỉ đích, nếu đường truyền và chính sách mạng cho phép.
traceroute hoặc tracepath: Quan sát các chặng trên đường đi đến đích.
ip addr: Kiểm tra địa chỉ IP và giao diện mạng trên Linux.
ip route: Kiểm tra bảng định tuyến trên Linux.
ss -lntup: Kiểm tra các socket đang lắng nghe và thông tin giao thức/cổng tương ứng trên Linux.
Lưu ý rằng một công cụ kiểm tra thành công không đồng nghĩa toàn bộ các tầng đều hoạt động bình thường. Chẳng hạn, máy chủ có thể phản hồi ping nhưng website vẫn không truy cập được do dịch vụ web chưa chạy, cổng bị chặn hoặc cấu hình ứng dụng gặp lỗi.
Mô hình TCP/IP gồm 4 tầng: Application, Transport, Internet và Network Access. Mỗi tầng xử lý một nhóm chức năng riêng, từ trao đổi dữ liệu giữa các ứng dụng, truyền tải dữ liệu, định tuyến bằng địa chỉ IP đến truyền dữ liệu trên liên kết mạng trực tiếp.
Hiểu rõ vai trò của từng tầng giúp người học nắm được cách mạng Internet hoạt động và hỗ trợ quản trị viên xác định nguyên nhân sự cố khi cấu hình hoặc vận hành máy chủ.