Mạng internet là một thực thể có kiến trúc phức tạp, được tổ chức thành các tầng giao thức.

Layered Architecture

Một ví dụ đời thực về kiến trúc phân tầng chính là việc đi máy bay. Các bước mà ta sẽ trải qua là:

  • Mua vé
  • Kiểm tra hành lý
  • Đi qua cổng
  • Lên máy bay

Trên máy bay, phi công và các bộ phận liên quan sẽ chịu trách nhiệm xác định tuyến đường bay.

Khi máy bay đến đích, chúng ta cần phải:

  • Xuống máy bay
  • Đi qua cổng
  • Lấy hành lý
  • Nếu chuyến bay tệ, chúng ta có thể ghé qua quầy vé để phàn nàn gì đó.

Đây có thể xem như một chu trình gồm nhiều giai đoạn của internet. Mỗi giai đoạn sẽ tương ứng với một tầng, và mỗi tầng sẽ cung cấp một dịch vụ nhất định cho chúng ta.

Ví dụ tầng giao dịch sẽ bán vé và cho ta thông tin về chuyến bay. Tầng định tuyến thì sẽ cung cấp cho máy bay các lộ trình bay phù hợp tránh mưa bão.

Mạng internet chia các giao thức thành các tầng (layers). Các giao thức gắn liền với một hoặc nhiều tầng. Mỗi tầng cung cấp một dịch vụ cho chính tầng đó và sử dụng trực tiếp dịch vụ của tầng nằm bên dưới nó.

Các giao thức có thể được cài đặt trong phần mềm, phần cứng, hoặc cả hai. Ở tầng ứng dụng (application layer), các giao thức như HTTP hay SMTP hầu như luôn được cài đặt trong phần mềm của các hệ cuối. Tương tự đối với tầng vận chuyển (transport layer). Tầng vật lý (physical layer) và tầng liên kết (link layer) thì thường được cài đặt ở card mạng. Tầng mạng (network layer) thường là tầng trộn lẫn giữa phần mềm và phần cứng.

Có hai loại tầng giao thức là TCP/IP và OSI.

TCP/IP Model

Khi các tầng giao thức được chồng lên nhau, chúng tạo thành chồng giao thức (protocol stack). Chồng giao thức gồm năm tầng, theo thứ tự từ dưới lên trên là: physical layer, data link layer, network layer, transport layerapplication layer.

Chồng giao thức này còn được gọi là mô hình TCP/IP.

The OSI Model

Open System Interconnection (OSI) là một mô hình kiến trúc network máy tính, chúng có bảy tầng. Năm trong số bảy tầng của OSI là tương tự với năm tầng của mô hình TCP/IP. Hai tầng còn lại là tầng trình bày (presentation layer) và tầng phiên (session layer).

Presentation Layer

Tầng trình bày (presentation layer) cung cấp một số giao thức để các ứng dụng có thể phiên dịch dữ liệu truyền tải. Các dịch vụ này bao gồm nén dữ liệu (data compression), mã hóa dữ liệu (data encryption), cũng như mô tả dữ liệu (data description).

Session Layer

Tầng phiên (session layer) cung cấp các dịch vụ phân định ranh giới chẳng hạn như lưu vết (checkpointing) hoặc khôi phục (recovering).

Sự hỗ trợ của hai tầng này sẽ hữu dụng nếu như ứng dụng được xây dựng có thể sử dụng được các dịch vụ của presentation layer hoặc session layer.

Minh họa cho mô hình OSI:

Encapsulation

Hình bên dưới cho thấy quá trình vận chuyển gói tin. Đầu tiên, các gói tin sẽ được di chuyển theo hướng xuống tại chồng giao thức bên gửi, sau đó đi lên và đi xuống ở các bộ chuyển gói tin.

Khi đến bên nhận, các gói tin đi ngược lên từ tầng physical đến tầng application để tạo thành thông điệp ban đầu. Hệ cuối nào cũng phải được cài đặt năm tầng là tối thiểu, để nhất quán quá trình truyền dữ liệu.

Các bộ chuyển (Switch) được cài đặt để sử dụng tầng physical và tầng link. Trong khi đó, các bộ định tuyến (Router) được cài đặt để sử dụng cả tầng network. Vì vậy mà các bộ định tuyến có thể sử dụng giao thức IP (giao thức của tầng network) và đồng thời cũng có thể sử dụng các giao thức ở tầng link. Tuy nhiên, các bộ chuyển tầng link thì không hiểu địa chỉ tầng network mà chỉ hiểu địa chỉ MAC tồn tại ở tầng link.

Đối với mô hình OSI, ba tầng cuối cùng đều dùng chung một dạng gói tin là message.

Resources