Giới thiệu về Mạng — Giao thức và Mô hình

Khám phá cách các giao thức mạng giúp các thiết bị tương tác hiệu quả và an toàn, cùng với tầm quan trọng của mô hình mạng trong việc chuẩn hóa truyền thông.

Giới thiệu về Mạng — Giao thức và Mô hình
Photo by NASA / Unsplash

Giới thiệu về Mạng — #3 Giao thức và Mô hình

3.0 — Giới thiệu

3.0.1 — Tại sao tôi nên học module này?

Bạn đã biết các thành phần cơ bản của một mạng đơn giản, cũng như cấu hình ban đầu. Nhưng sau khi bạn đã cấu hình và kết nối các thành phần này, làm thế nào để biết chúng sẽ hoạt động cùng nhau?

Giao thức! Giao thức là tập hợp các quy tắc đã được thống nhất được tạo ra bởi các tổ chức tiêu chuẩn. Nhưng, bởi vì bạn không thể cầm lấy một quy tắc và xem xét nó kỹ lưỡng, làm thế nào để thực sự hiểu tại sao có quy tắc như vậy và nó được cho là làm gì?

Mô hình! Mô hình cung cấp cho bạn một cách để hình dung các quy tắc và vị trí của chúng trong mạng của bạn.

3.0.2 — Tôi sẽ học gì từ module này?

Tiêu đề Module: Giao thức và Mô hình

Mục tiêu Module: Giải thích cách các giao thức mạng cho phép các thiết bị truy cập vào tài nguyên mạng cục bộ và từ xa.

Chủ đềMục tiêu
Các Quy tắcMô tả các loại quy tắc cần thiết để truyền thông thành công
Giao thứcGiải thích tại sao giao thức là cần thiết trong truyền thông mạng
Bộ Giao thứcGiải thích mục đích của bộ giao thức
Tổ chức Tiêu chuẩnGiải thích vai trò của các tổ chức tiêu chuẩn trong việc thiết lập giao thức cho khả năng tương tác mạng
Mô hình Tham chiếuGiải thích cách mô hình TCP/IP và mô hình OSI được sử dụng để tạo điều kiện chuẩn hóa trong quá trình truyền thông
Đóng gói Dữ liệuGiải thích cách đóng gói dữ liệu cho phép dữ liệu được truyền qua mạng
Truy cập Dữ liệuGiải thích cách các máy chủ cục bộ truy cập tài nguyên cục bộ trên mạng

3.0.3 — Hoạt động lớp học — Thiết kế Hệ thống Truyền thông

3.1 — Các Quy tắc

3.1.1 — Thời Kỳ Máy Tính "Ốc đảo" - Những Năm 1960s

Hãy tưởng tượng bạn quay ngược thời gian về những năm 1960 - thời kỳ "đồ đá" của công nghệ. Đó là thời điểm khi những chiếc máy tính đầu tiên bắt đầu xuất hiện, nhưng chúng tồn tại như những hòn đảo hoàn toàn biệt lập.

Vấn Đề Cơ Bản

Vào thời điểm đó, nếu bạn có hai chiếc máy tính được sản xuất bởi hai công ty khác nhau, chúng hoàn toàn không thể "nói chuyện" với nhau. Mỗi máy tính là một thế giới riêng biệt, với ngôn ngữ riêng, cách thức hoạt động riêng. Việc chia sẻ dữ liệu giữa hai máy tính khác hãng là điều không tưởng.

Khát Vọng Kết Nối

Một số kỹ sư thông minh bắt đầu có ý tưởng táo bạo: "Giá như những chiếc máy tính này có thể kết nối và trao đổi dữ liệu với nhau thì tuyệt biết mấy!" Họ mơ ước về việc có thể chia sẻ tập tin, gửi thông tin giữa các máy tính.

Bước Đột Phá Đầu Tiên

Năm 1969, giấc mơ này trở thành hiện thực với sự ra đời của ARPANET - mạng máy tính đầu tiên do Bộ Quốc phòng Mỹ phát triển. Đây là một cuộc cách mạng thực sự - lần đầu tiên các máy tính có thể "nói chuyện" với nhau.

Vấn Đề Mới Nảy Sinh

Tuy nhiên, thành công ban đầu này lại tạo ra một vấn đề mới. Ý tưởng kết nối máy tính lan truyền như "cháy rừng", các công ty lớn như IBM bắt đầu tự phát triển mạng lưới riêng của mình. Nhưng mỗi công ty lại tạo ra một "phương ngữ" riêng - hệ thống mạng độc quyền chỉ hoạt động với sản phẩm của chính họ.

Cuộc Chiến "Phương Ngữ"

Kết quả là chúng ta có vô số mạng lưới khác nhau, mỗi cái đều "nói" một ngôn ngữ riêng. Máy tính của IBM không thể kết nối với máy tính của hãng khác. Chúng giống như hai người đang cố gắng giao tiếp bằng hai ngôn ngữ hoàn toàn khác nhau - một bên nói "Bonjour", bên kia hoàn toàn bối rối không hiểu gì.

Thời Kỳ "Nguyên Thủy"

Điều quan trọng cần nhớ là thời kỳ này thậm chí còn nguyên thủy hơn nhiều so với chúng ta tưởng tượng. Ngay cả những thứ cơ bản như dây cáp Ethernet hay cổng Ethernet mà chúng ta quen thuộc ngày nay cũng chưa được phát minh. Mỗi công ty đều có cách kết nối riêng, giống như việc bạn cố gắng sạc iPhone bằng dây sạc Android - hoàn toàn không tương thích.

Thời kỳ này cho chúng ta thấy tầm quan trọng của việc có các chuẩn chung. Sự phân mảnh này cuối cùng đã dẫn đến nhận thức rằng tất cả các công ty cần phải sử dụng cùng một "ngôn ngữ mạng" để máy tính của họ có thể giao tiếp với nhau - điều này sau này đã dẫn đến sự ra đời của các mô hình mạng chuẩn hóa như TCP/IP và OSI. Đây chính là bối cảnh lịch sử quan trọng giúp chúng ta hiểu tại sao các mô hình mạng như TCP/IP và OSI lại được coi là những "người hùng" đã cứu vãn tình thế, cho phép các thiết bị khác nhau có thể kết nối và giao tiếp với nhau như ngày nay.

3.1.2 — Cơ bản về Truyền thông

Các mạng khác nhau về kích thước, hình dạng và chức năng. Chúng có thể phức tạp như các thiết bị được kết nối qua internet, hoặc đơn giản như hai máy tính được kết nối trực tiếp với nhau bằng một cáp duy nhất, và mọi thứ ở giữa.

Tất cả các phương thức truyền thông đều có ba yếu tố chung sau đây:

  • Nguồn thông điệp (người gửi) — Nguồn thông điệp là những người, hoặc các thiết bị điện tử, cần gửi thông điệp đến các cá nhân hoặc thiết bị khác.
  • Đích đến thông điệp (người nhận) — Đích đến nhận thông điệp và giải thích nó.
  • Kênh — Bao gồm các phương tiện cung cấp đường dẫn để thông điệp di chuyển từ nguồn đến đích.

3.1.3 — Giao thức Truyền thông

Việc gửi một thông điệp, dù là truyền thông trực tiếp hay qua một mạng, đều được quản lý bởi các quy tắc gọi là giao thức. Những giao thức này là đặc thù cho từng phương thức truyền thông được sử dụng.

Ví dụ: Trước khi giao tiếp, họ phải đồng ý về cách thức giao tiếp. Nếu giao tiếp bằng giọng nói, trước tiên họ phải đồng ý về ngôn ngữ. Nếu ai đó sử dụng tiếng Anh, nhưng cấu trúc câu kém, thông điệp có thể dễ dàng bị hiểu sai.

Mạng: Trước khi giao tiếp, các thiết bị phải đồng ý về cách thức giao tiếp. Chúng cũng phải định dạng thông điệp theo cách dễ hiểu.

3.1.4 — Thiết lập Quy tắc

Các giao thức phải đáp ứng các yêu cầu sau để chuyển giao thành công một thông điệp được hiểu bởi người nhận:

  • Một người gửi và người nhận được xác định
  • Ngôn ngữ và ngữ pháp chung
  • Tốc độ và thời gian chuyển giao
  • Yêu cầu xác nhận

3.1.5 — Yêu cầu Giao thức Mạng

Các giao thức được sử dụng trong truyền thông mạng có nhiều đặc điểm cơ bản chung này.

Các giao thức máy tính thông thường bao gồm các yêu cầu sau:

  • Mã hóa thông điệp
  • Định dạng và đóng gói thông điệp
  • Kích thước thông điệp
  • Message Timming
  • Các tùy chọn chuyển giao thông điệp

3.1.6 — Mã hóa Thông điệp

Mã hóa là quá trình chuyển đổi thông tin thành một dạng khác có thể chấp nhận được, để truyền tải.

Giải mã đảo ngược quá trình này để diễn giải thông tin.

Message Source(Nguồn Thông điệp)Encoder(Bộ Mã hóa)Transmitter(Bộ Phát)Transmission Medium(Môi trường truyền dẫn)Receiver(Bộ Thu)Decoder(Bộ Giải mã)Message Destination(Đích Thông điệp)Tạo ra thông điệp ban đầu cần truyền điChuyển đổi thông điệp thành định dạngphù hợp để truyền qua kênh truyềnPhương tiện vật lý hoặc logicđể truyền tải thông điệpChuyển đổi tín hiệu đã nhậntrở lại thành thông điệp gốcTạo thông điệpMã hóaPhát tín hiệuTruyền dữ liệuThu tín hiệuGiải mã

Ví dụ: Để truyền đạt thông điệp, bạn chuyển đổi suy nghĩ của mình thành một ngôn ngữ đã thỏa thuận. Sau đó, bạn nói các từ sử dụng âm thanh và ngôn ngữ để nhắn đi thông điệp. Thông điệp tới mắt cô ấy, cô ấy đọc nội dung và giải để hiểu thông điệp mà bạn gửi tới.

Tương tự với máy tính, nó cần mã hóa thông điệp thành các bit, truyền qua mạng và máy nhận được chuỗi bit đó sẽ thực hiện giải mã để hiểu thông điệp.

3.1.7 — Định dạng và Đóng gói Thông điệp

Khi gửi thông điệp từ nguồn đến đích, thông điệp cần tuân theo một định dạng và cấu trúc nhất định. Định dạng này phụ thuộc vào:

  • Loại thông điệp cần gửi
  • Kênh truyền dẫn được sử dụng

Lấy ví dụ về gửi thư qua đường bưu điện:

  • Phong bì cần có địa chỉ người gửi và người nhận ở vị trí chuẩn
  • Nếu địa chỉ hoặc định dạng không đúng, thư sẽ không thể gửi đi

Khi đặt một thông điệp (như lá thư) vào bên trong một định dạng khác (như phong bì), quá trình này được gọi là đóng gói. Ngược lại, khi người nhận mở phong bì để lấy thư ra, đó là quá trình giải gói.

Ví dụ: Giao thức Internet (IP) hoạt động giống như một phong bì thư. Nó chứa các thông tin về địa chỉ nguồn và đích của gói tin, tương tự như cách phong bì có địa chỉ người gửi và người nhận. Trong hình minh họa, gói tin IPv6 (Internet Protocol version 6) có các trường thông tin để xác định rõ nguồn gửi và đích đến. Nhiệm vụ chính của IP là đảm bảo gói tin được chuyển từ nguồn đến đích thông qua một hoặc nhiều mạng máy tính khác nhau.

Các trường trong Header IPv6

Tên trườngKích thướcVị tríChức năng
Version4 bitsByte 1- Luôn có giá trị 6 để xác định gói IPv6
- Chia sẻ byte đầu với Traffic Class
Traffic Class8 bitsByte 1-2- Xác định độ ưu tiên của gói tin
- Tương đương ToS trong IPv4
- Hỗ trợ xử lý QoS
Flow Label20 bitsByte 2-4- Gắn nhãn cho chuỗi gói tin liên quan
- Giúp xử lý đồng bộ video và thoại thời gian thực
Payload Length16 bits2 bytes tiếp- Chỉ kích thước phần dữ liệu sau header
- Không tính 40 bytes của header
Next Header8 bits1 byte- Chỉ định giao thức lớp trên:
+ 6: TCP
+ 17: UDP
+ 58: ICMPv6
Hop Limit8 bits1 byte- Giới hạn số router tối đa gói tin đi qua
- Tương đương TTL trong IPv4

So sánh IPv6 và IPv4

3.1.8 — Kích thước Thông điệp

Ví dụ: Trong giao tiếp hàng ngày, con người thường chia thông điệp thành những câu ngắn để người nghe dễ tiếp nhận và xử lý thông tin. Thay vì nói một đoạn dài, chúng ta thường ngắt thành từng câu ngắn gọn.

Internet: Tương tự, trong mạng máy tính, một thông điệp lớn cần được chia thành nhiều phần nhỏ hơn gọi là khung (frame). Mỗi khung phải có kích thước nằm trong giới hạn cho phép - không quá lớn và không quá nhỏ. Khi gửi đi, mỗi khung sẽ mang theo địa chỉ riêng để định tuyến. Khi đến máy nhận, các khung sẽ được ghép lại thành thông điệp ban đầu.

3.1.9 — Thời gian Truyền Thông điệp

Thời gian truyền thông điệp đóng vai trò quan trọng trong truyền thông mạng, bao gồm 3 yếu tố chính:

  • Kiểm soát Luồng — Quản lý tốc độ truyền dữ liệu bằng cách xác định lượng thông tin có thể gửi và tốc độ truyền tải.
    • Ví dụ: Trong giao thức TCP, bên gửi sẽ điều chỉnh tốc độ truyền dựa trên phản hồi từ bên nhận thông qua cơ chế cửa sổ trượt (sliding window). Nếu bên nhận báo hiệu quá tải, bên gửi sẽ giảm tốc độ truyền để tránh tắc nghẽn.
  • Thời gian chờ Phản hồi — Khi không nhận được phản hồi trong thời gian cho phép, thiết bị sẽ thực hiện các hành động được định nghĩa trong giao thức mạng như gửi lại yêu cầu hoặc tiếp tục truyền thông điệp tiếp theo.
    • Ví dụ: Khi gửi một gói tin ICMP Echo Request (ping), nếu sau 1 giây không nhận được phản hồi Echo Reply, thiết bị sẽ gửi lại gói tin đó tối đa 3 lần trước khi thông báo "Request timed out".
  • Phương thức Truy cập — Xác định thời điểm thiết bị được phép gửi thông điệp.
    • Ví dụ: Trong mạng Ethernet sử dụng CSMA/CD, trước khi gửi dữ liệu, thiết bị sẽ lắng nghe đường truyền. Nếu đường truyền đang bận, nó sẽ chờ một khoảng thời gian ngẫu nhiên rồi thử lại. Nếu xảy ra xung đột (collision), các thiết bị sẽ dừng truyền và chờ một thời gian ngẫu nhiên trước khi thử lại. Trong mạng Wi-Fi (CSMA/CA), thiết bị sẽ gửi một khung RTS (Request to Send) và chờ phản hồi CTS (Clear to Send) từ điểm truy cập trước khi bắt đầu truyền dữ liệu thực sự.

3.1.10 — Các Phương thức Gửi Thông điệp

Ví dụ thực tế: Khi giao tiếp, chúng ta có thể:

  • Nói chuyện với một người (giao tiếp 1-1)
  • Nói chuyện với một nhóm người (giao tiếp nhóm)
  • Nói với tất cả mọi người trong phòng (giao tiếp đại chúng)

Trong mạng máy tính: Cũng có 3 phương thức gửi thông điệp tương tự:

Phương thứcMô tảHình minh họa
UnicastGửi thông điệp đến một thiết bị cụ thể
MulticastGửi thông điệp đến một nhóm thiết bị được chọn
BroadcastGửi thông điệp đến tất cả các thiết bị trong mạng

3.1.11 — Biểu tượng Node trong Mạng

Trong các tài liệu và sơ đồ mạng, các thiết bị mạng (như router, switch) và thiết bị đầu cuối (như máy tính, điện thoại) thường được biểu diễn bằng biểu tượng node đơn giản dưới dạng hình tròn.

0:00
/1:04

3.2 — Giao thức

3.2.1 — Tổng quan về Giao thức Mạng

Các giao thức mạng xác định một định dạng chung và tập hợp các quy tắc để trao đổi thông điệp giữa các thiết bị. Giao thức được thực hiện bởi thiết bị đầu cuối và thiết bị trung gian trong phần mềm, phần cứng, hoặc cả hai. Mỗi giao thức mạng có chức năng, định dạng và quy tắc riêng cho truyền thông.

Loại Giao thứcMô tả
Giao thức Truyền thông MạngGiao thức cho phép hai hoặc nhiều thiết bị giao tiếp qua một hoặc nhiều mạng. Gia đình giao thức này bao gồm các giao thức như Giao thức Điều khiển Truyền tải (TCP), Giao thức Truyền Tải Siêu Văn Bản (HTTP), và nhiều giao thức khác
Giao thức Bảo mật MạngGiao thức được sử dụng để cung cấp xác thực, bảo mật dữ liệu và mã hóa dữ liệu. Ví dụ về các giao thức bảo mật bao gồm SSH (Secure Shell), SSL (Secure Sockets Layer) và TLS (Transport Layer Security)
Giao thức Định tuyếnGiao thức cho phép các router trao đổi thông tin định tuyến, so sánh thông tin đường đi và sau đó chọn đường đi tốt nhất đến mạng đích. Ví dụ về giao thức định tuyến bao gồm OSPF (Open Shortest Path First) và BGP (Border Gateway Protocol)
Giao thức Khám phá Dịch vụGiao thức được sử dụng để tự động phát hiện thiết bị hoặc dịch vụ. Ví dụ về giao thức khám phá dịch vụ bao gồm DHCP (Dynamic Host Configuration Protocol) để khám phá dịch vụ cấp phát IP và DNS (Domain Name System) để ánh xạ tên miền thành địa chỉ IP

3.2.2 — Chức năng của Giao thức Mạng

Giao thức mạng thực hiện nhiều chức năng quan trọng để đảm bảo truyền thông hiệu quả giữa các thiết bị. Dưới đây là các chức năng chính:

Chức năngMô tả
Địa chỉ (Addressing)Xác định thiết bị gửi và nhận thông qua hệ thống địa chỉ.
Ví dụ: Ethernet, IPv4, IPv6 sử dụng địa chỉ MAC và IP để định danh thiết bị.
Độ tin cậy (Reliability)Đảm bảo dữ liệu được truyền đến đích một cách chính xác và đầy đủ.
TCP cung cấp cơ chế kiểm tra và gửi lại dữ liệu khi có lỗi.
Điều khiển luồng (Flow control)Quản lý tốc độ truyền dữ liệu để tránh quá tải.
TCP điều chỉnh tốc độ gửi dựa trên khả năng xử lý của bên nhận.
Trình tự (Sequencing)Đánh số thứ tự các gói tin để đảm bảo lắp ráp đúng thứ tự tại đích.
TCP gắn số thứ tự cho từng phân đoạn dữ liệu.
Phát hiện lỗi (Error detection)Kiểm tra tính toàn vẹn của dữ liệu trong quá trình truyền.
Ethernet, IPv4, IPv6 và TCP đều có cơ chế phát hiện lỗi.
Giao diện ứng dụng (Application interface)Cho phép các ứng dụng mạng giao tiếp với nhau.
Ví dụ: HTTP/HTTPS cho phép trình duyệt web và máy chủ web trao đổi dữ liệu.

3.2.3 — Tương tác Giao thức

Khi gửi một thông điệp qua mạng máy tính, thông điệp đó cần được xử lý bởi nhiều giao thức khác nhau. Mỗi giao thức sẽ thực hiện một nhiệm vụ riêng biệt:

  • Giao thức ứng dụng (như HTTP) xử lý nội dung thông điệp
  • Giao thức vận chuyển (như TCP) đảm bảo thông điệp được gửi đi đáng tin cậy
  • Giao thức mạng (như IP) định tuyến thông điệp đến đích
  • Giao thức truy cập mạng (như Ethernet) truyền thông điệp qua đường truyền vật lý

Các giao thức này phối hợp chặt chẽ với nhau để đảm bảo thông điệp được gửi đến đích một cách chính xác và hiệu quả.

3.3 — Bộ Giao thức

3.3.1. Bộ Giao thức Mạng

Bộ giao thức là tập hợp các giao thức được thiết kế để làm việc cùng nhau một cách liền mạch. Nó bao gồm các giao thức cần thiết để thực hiện chức năng truyền thông.

Các giao thức trong bộ được tổ chức thành các lớp theo ngăn xếp giao thức. Mỗi lớp có chức năng riêng:

  • Các lớp cao hơn tập trung vào nội dung thông điệp
  • Các lớp thấp hơn đảm nhiệm việc truyền dữ liệu qua mạng
  • Mỗi lớp phụ thuộc vào chức năng của các lớp dưới nó

3.3.2. Sự phát triển của Bộ Giao thức

Qua thời gian, nhiều bộ giao thức khác nhau đã được phát triển:

Bộ Giao thứcĐặc điểm
TCP/IP (Bộ Giao thức Internet)- Là bộ giao thức phổ biến nhất hiện nay
- Được duy trì bởi IETF (Lực lượng Đặc nhiệm Kỹ thuật Internet)
- Là tiêu chuẩn mở
OSI (Giao thức Kết nối Hệ thống Mở)- Phát triển năm 1977 bởi ISO và ITU
- Nổi tiếng với mô hình 7 lớp
- Hầu hết đã được thay thế bởi TCP/IP
AppleTalk- Do Apple phát triển năm 1985
- Dành riêng cho thiết bị Apple
- Được thay thế bởi TCP/IP năm 1995
Novell NetWare- Do Novell phát triển năm 1983
- Sử dụng giao thức IPX
- Chuyển sang TCP/IP năm 1995

3.3.3. Ví dụ Giao thức TCP/IP

Bộ giao thức TCP/IP hoạt động ở 3 lớp chính:

  • Lớp ứng dụng
  • Lớp vận chuyển
  • Lớp Internet

Riêng ở lớp truy cập mạng, TCP/IP không định nghĩa giao thức riêng mà sử dụng các giao thức phổ biến như:

  • Ethernet cho mạng có dây
  • WLAN cho mạng không dây

Các giao thức này có nhiệm vụ truyền tải gói tin IP qua đường truyền vật lý.

Hình minh họa trên cho thấy quá trình truyền dữ liệu giữa trình duyệt web và máy chủ web thông qua 3 giao thức chính:

  1. HTTP - Giao thức ở tầng ứng dụng
  2. TCP - Giao thức ở tầng vận chuyển
  3. IP - Giao thức ở tầng Internet

Ở lớp dưới cùng, dữ liệu được truyền qua mạng thông qua giao thức Ethernet. Ngoài ra có thể sử dụng các giao thức không dây như WLAN hoặc mạng di động tùy vào môi trường triển khai.

3.3.4. Bộ Giao thức TCP/IP

Bộ giao thức TCP/IP là nền tảng của Internet và hầu hết các mạng máy tính hiện đại. Nó có hai đặc điểm quan trọng:

  • Mở và miễn phí: Bất kỳ ai cũng có thể sử dụng TCP/IP mà không phải trả phí, dù là nhà sản xuất phần cứng hay phần mềm
  • Dựa trên tiêu chuẩn: Được công nhận bởi ngành công nghiệp và các tổ chức tiêu chuẩn, đảm bảo khả năng tương tác giữa các thiết bị từ nhiều nhà sản xuất khác nhau

TCP/IP được chia thành 4 lớp chính, mỗi lớp có các giao thức riêng phục vụ các mục đích khác nhau:

Lớp Ứng dụng

LoạiGiao thứcChức năng
Hệ thống tên miềnDNSChuyển đổi tên miền (ví dụ: google.com) thành địa chỉ IP
Quản lý địa chỉ IPDHCPv4/DHCPv6Tự động cấp phát địa chỉ IP cho các thiết bị
SLAACCho phép thiết bị tự cấu hình địa chỉ IPv6 mà không cần máy chủ DHCP
Dịch vụ EmailSMTPGửi email giữa các máy chủ
POP3Tải email về máy tính cá nhân
IMAPĐọc email trực tiếp trên máy chủ
Truyền tệp tinFTPTruyền tệp tin đáng tin cậy, có xác nhận
SFTPTruyền tệp tin bảo mật qua SSH
TFTPTruyền tệp tin đơn giản, không xác nhận
Web và APIHTTPTruyền tải nội dung web (văn bản, hình ảnh, video...)
HTTPSPhiên bản bảo mật của HTTP
RESTCung cấp API cho ứng dụng web

Lớp vận chuyển

LoạiGiao thứcChức năng
Hướng kết nốiTCPGiao thức Điều khiển Truyền. Cho phép giao tiếp đáng tin cậy giữa các quy trình chạy trên các máy chủ riêng biệt và cung cấp truyền tải đáng tin cận, được xác nhận việc giao hàng thành công
Không hướng kết nốiUDPGiao thức Datagram Người dùng. Cho phép một quy trình chạy trên một máy chủ gửi các gói tin đến một quy trình chạy trên một máy chủ khác. Tuy nhiên, UDP không xác nhận việc truyền datagram thành công

Lớp Internet

LoạiGiao thứcChức năng
Giao thức InternetIPv4Giao thức Internet phiên bản 4. Nhận các phân đoạn thông báo từ lớp vận chuyển, đóng gói thông báo và địa chỉ các gói tin để giao hàng từ đầu đến cuối qua mạng. IPv4 sử dụng địa chỉ 32 bit
IPv6IP phiên bản 6. Tương tự như IPv4 nhưng sử dụng địa chỉ 128 bit
NATDịch Địa chỉ Mạng. Dịch địa chỉ IPv4 từ mạng riêng thành địa chỉ IPv4 công cộng duy nhất toàn cầu
MessagingICMPv4Giao thức Thông báo Điều khiển Internet cho IPv4. Cung cấp phản hồi từ máy chủ đích đến máy chủ nguồn về lỗi trong việc phân phối gói
ICMPv6ICMP cho IPv6. Chức năng tương tự như ICMPv4 nhưng được sử dụng cho các gói IPv6
ICMPv6 NDPhát hiện Hàng xóm ICMPv6. Bao gồm bốn thông báo giao thức được sử dụng để giải quyết địa chỉ và phát hiện địa chỉ trùng lặp
Giao thức Định tuyếnOSPFĐường đi Ngắn nhất Mở đầu tiên. Giao thức định tuyến trạng thái liên kết sử dụng thiết kế phân cấp dựa trên các khu vực. OSPF là một giao thức định tuyến nội bộ tiêu chuẩn mở
EIGRPGiao thức Định tuyến Cổng Nội bộ Nâng cao. Một giao thức định tuyến độc quyền của Cisco sử dụng một thước đo tổng hợp dựa trên băng thông, độ trễ, tải và độ tin cậy
BGPGiao thức Cổng Biên giới. Một giao thức định tuyến cổng bên ngoài tiêu chuẩn mở được sử dụng giữa các Nhà cung cấp Dịch vụ Internet (ISP). BGP cũng thường được sử dụng giữa các ISP và khách hàng tư nhân lớn của họ để trao đổi thông tin định tuyến

Lớp Truy cập Mạng

LoạiGiao thứcChức năng
Phân giải Địa chỉARPCung cấp ánh xạ địa chỉ động giữa một địa chỉ IPv4 và một địa chỉ phần cứng
Liên kết Dữ liệuEthernetXác định các quy tắc cho tiêu chuẩn dây và tín hiệu của lớp truy cập mạng
WLANXác định các quy tắc cho tín hiệu không dây qua tần số vô tuyến 2.4 GHz và 5 GHz

3.4 — Tổ chức Tiêu chuẩn

3.4.1. Tiêu chuẩn Mở

Các tiêu chuẩn mạng được phát triển bởi các tổ chức tiêu chuẩn quốc tế. Tiêu chuẩn mở mang lại nhiều lợi ích:

  • Tăng khả năng tương tác giữa các thiết bị
  • Thúc đẩy cạnh tranh công bằng
  • Khuyến khích đổi mới
  • Ngăn chặn độc quyền thị trường

Các tổ chức tiêu chuẩn thường là:

  • Trung lập với nhà cung cấp
  • Phi lợi nhuận
  • Phát triển và thúc đẩy tiêu chuẩn mở
  • Duy trì internet mở với các thông số kỹ thuật tự do

Một tổ chức có thể tự xây dựng tiêu chuẩn hoặc dựa trên giao thức độc quyền sẵn có.

3.4.2. Tiêu chuẩn Internet

Các tổ chức chính phát triển tiêu chuẩn cho internet và TCP/IP:

  • ISOC (Hiệp hội Internet): Thúc đẩy phát triển và sử dụng internet toàn cầu
  • IAB (Hội đồng Kiến trúc Internet): Quản lý và phát triển tiêu chuẩn internet
  • IETF (Lực lượng Đặc nhiệm Kỹ thuật Internet): Phát triển và duy trì giao thức internet/TCP/IP
  • ICANN: Phối hợp phân bổ địa chỉ IP và quản lý tên miền
  • IANA: Giám sát phân bổ địa chỉ IP và định danh giao thức cho ICANN

IRTF (Lực lượng Đặc nhiệm Nghiên cứu Internet): Nghiên cứu dài hạn về internet và TCP/IP

3.4.3. Tiêu chuẩn Điện tử và Truyền thông

Các tổ chức phát triển tiêu chuẩn cho truyền tín hiệu:

IEEE (Viện Kỹ sư Điện và Điện tử)

  • Phát triển tiêu chuẩn công nghệ
  • Quản lý tiêu chuẩn Ethernet 802.3 và WLAN 802.11

EIA (Liên minh Ngành công nghiệp Điện tử)

  • Tiêu chuẩn về dây điện và thiết bị mạng

TIA (Hiệp hội Ngành công nghiệp Viễn thông)

  • Tiêu chuẩn truyền thông: vô tuyến, di động, VoIP, vệ tinh

ITU-T (Liên minh Viễn thông Quốc tế)

  • Tiêu chuẩn nén video, IPTV, băng thông rộng
  • Một trong những tổ chức lâu đời nhất về tiêu chuẩn truyền thông

3.5 — Mô hình Tham chiếu

3.5.1. Lợi ích của Việc Sử dụng Mô hình Phân lớp

Trong thực tế, chúng ta không thể trực tiếp quan sát được các gói tin di chuyển qua mạng. Vì vậy, việc có một mô hình để hình dung hoạt động của mạng là rất cần thiết.

Hoạt động của mạng là một khái niệm phức tạp, khó để giải thích và hiểu. Do đó, người ta sử dụng mô hình phân lớp để chia nhỏ các hoạt động mạng thành các lớp dễ quản lý hơn.

Mô hình phân lớp mang lại những lợi ích sau:

  • Giúp thiết kế giao thức dễ dàng hơn vì mỗi lớp có phạm vi hoạt động và giao diện rõ ràng với các lớp khác
  • Tạo điều kiện cho cạnh tranh khi các sản phẩm từ nhiều nhà cung cấp có thể hoạt động cùng nhau
  • Giới hạn tác động của thay đổi công nghệ ở một lớp, không ảnh hưởng đến các lớp khác
  • Tạo ra ngôn ngữ chung để mô tả chức năng và khả năng của mạng

Hiện nay có hai mô hình phân lớp chính được sử dụng:

  • Mô hình OSI (Open Systems Interconnection)

Mô hình TCP/IP

3.5.2. Mô hình Tham chiếu OSI

Mô hình OSI liệt kê đầy đủ các chức năng và dịch vụ có thể có ở mỗi lớp. Mô hình này tạo ra tính nhất quán cho mọi loại giao thức và dịch vụ mạng bằng cách xác định những gì cần làm ở mỗi lớp, nhưng không quy định cách thực hiện cụ thể.

Mô hình OSI cũng mô tả cách các lớp tương tác với lớp trên và dưới nó. Các giao thức TCP/IP được xây dựng dựa trên cả mô hình OSI và TCP/IP. Bảng dưới đây mô tả chi tiết từng lớp của mô hình OSI. Chức năng và mối quan hệ giữa các lớp sẽ rõ ràng hơn khi chúng ta tìm hiểu sâu về các giao thức.

Các lớp trong mô hình OSI

LớpTênChức năng
7Lớp Ứng dụng (Application Layer)Chứa các giao thức cho giao tiếp giữa các ứng dụng
6Lớp Trình bày (Presentation Layer)Chuẩn hóa cách biểu diễn dữ liệu giữa các dịch vụ ứng dụng
5Lớp Phiên (Session Layer)Quản lý các phiên giao tiếp và trao đổi dữ liệu
4Lớp Vận chuyển (Transport Layer)Phân đoạn, truyền và tái lắp ráp dữ liệu giữa các thiết bị đầu cuối
3Lớp Mạng (Network Layer)Định tuyến và chuyển dữ liệu giữa các thiết bị qua mạng
2Lớp Liên kết Dữ liệu (Data Link Layer)Truyền dữ liệu giữa các thiết bị trên cùng đường truyền vật lý
1Lớp Vật lý (Physical Layer)Xử lý việc truyền và nhận các bit dữ liệu trên phương tiện vật lý

Lưu ý: Các lớp trong mô hình OSI thường được gọi bằng số (Lớp 1, Lớp 2,...) thay vì tên.

3.5.3. Mô hình Giao thức TCP/IP

Mô hình TCP/IP ra đời vào đầu những năm 1970, còn được gọi là mô hình Internet. Mô hình này gắn liền với bộ giao thức TCP/IP cụ thể, mô tả chức năng của từng lớp trong bộ giao thức.

Các lớp trong mô hình TCP/IP

LớpTênChức năng
4Lớp Ứng dụng (Application Layer)Xử lý dữ liệu người dùng, mã hóa và kiểm soát phiên
3Lớp Vận chuyển (Transport Layer)Hỗ trợ giao tiếp giữa các thiết bị qua nhiều mạng khác nhau
2Lớp Internet (Internet Layer)Tìm đường đi tối ưu qua mạng
1Lớp Truy cập Mạng (Access Layer)Điều khiển phần cứng và phương tiện truyền dẫn

3.5.4. So sánh Mô hình OSI và TCP/IP

Các giao thức TCP/IP có thể được mô tả theo mô hình OSI. Trong đó:

  • Lớp mạng (OSI) tương ứng với lớp Internet (TCP/IP) - phụ trách định tuyến gói tin
  • Lớp vận chuyển giống nhau ở cả hai mô hình - đảm bảo truyền dữ liệu tin cậy
  • Lớp ứng dụng TCP/IP tương ứng với 3 lớp trên cùng của OSI

Lớp truy cập mạng TCP/IP tương ứng với 2 lớp dưới cùng của OSI

3.5.5. Packet Tracer - Khám phá Mô hình TCP/IP và OSI

Packet Tracer là công cụ mô phỏng mạng cho phép chúng ta quan sát cách dữ liệu di chuyển qua các lớp trong mô hình TCP/IP và OSI. Thông qua chế độ mô phỏng, ta có thể theo dõi:

  • Cách dữ liệu được chia thành các phần nhỏ gọi là PDU (Protocol Data Unit)
  • Cách PDU được đánh dấu để có thể ghép lại tại điểm đích
  • Nội dung dữ liệu tại mỗi lớp trong quá trình truyền

Ví dụ điển hình là khi truy cập một trang web:

  1. Trình duyệt trên máy khách gửi yêu cầu đến máy chủ web
  2. Dữ liệu được chia nhỏ thành các PDU
  3. PDU di chuyển qua các lớp mạng
  4. Máy chủ web xử lý và phản hồi

Packet Tracer giúp trực quan hóa toàn bộ quá trình này, từ đó hiểu rõ hơn về cách thức hoạt động của mạng máy tính.

3.6 — Đóng gói Dữ liệu

3.6.1. Phân đoạn Thông điệp

Khi dữ liệu được truyền qua mạng, nó không đơn giản như gửi một lá thư thông thường. Dữ liệu cần được chia thành các phân đoạn nhỏ hơn để truyền đi hiệu quả.

Việc phân đoạn dữ liệu mang lại hai lợi ích chính:

  • Tăng tốc độ truyền: Dữ liệu lớn được chia thành các gói nhỏ có thể truyền đi đồng thời, cho phép nhiều cuộc giao tiếp diễn ra cùng lúc trên mạng (ghép kênh).
  • Tăng độ tin cậy: Nếu một phân đoạn bị lỗi, chỉ cần gửi lại phân đoạn đó thay vì phải gửi lại toàn bộ dữ liệu.

3.6.2. Sắp xếp Dữ liệu

Khi dữ liệu được phân đoạn, cần có cơ chế để sắp xếp lại chúng theo đúng thứ tự. Giống như việc gửi một lá thư 100 trang trong 100 phong bì riêng biệt - mỗi phong bì cần được đánh số để người nhận có thể ghép lại đúng thứ tự.

Trong mạng máy tính, giao thức TCP đảm nhiệm việc sắp xếp các phân đoạn để khôi phục lại dữ liệu gốc một cách chính xác.

3.6.3. Đơn vị Dữ liệu Giao thức (PDU)

Khi dữ liệu di chuyển qua các tầng mạng, mỗi tầng sẽ thêm thông tin điều khiển riêng vào dữ liệu. Quá trình này gọi là đóng gói.

Tại mỗi tầng, dữ liệu được gọi là PDU (Protocol Data Unit) với tên gọi khác nhau:

  • Tầng Ứng dụng: Data (Dữ liệu)
  • Tầng Vận chuyển: Segment (Phân đoạn) với TCP hoặc Datagram với UDP
  • Tầng Mạng: Packet (Gói)
  • Tầng Liên kết dữ liệu: Frame (Khung)
  • Tầng Vật lý: Bits (Bit)

3.6.4. Quá trình Đóng gói

Khi gửi dữ liệu, quá trình đóng gói diễn ra từ trên xuống dưới qua các tầng mạng. Mỗi tầng thêm thông tin điều khiển riêng vào dữ liệu nhận được từ tầng trên.

3.6.5. Quá trình Giải đóng gói

Khi nhận dữ liệu, quá trình ngược lại gọi là giải đóng gói diễn ra. Thiết bị nhận sẽ gỡ bỏ lần lượt các thông tin điều khiển được thêm vào ở mỗi tầng để khôi phục dữ liệu gốc.

3.7 — Truy cập Dữ liệu (Data Access)

3.7.1. Địa chỉ (Addressing)

Khi truyền thông điệp qua mạng, việc phân đoạn dữ liệu là cần thiết. Tuy nhiên, các phân đoạn này cần được gán địa chỉ đúng cách để có thể đến được đích. Phần này sẽ giới thiệu tổng quan về địa chỉ mạng và công cụ Wireshark - một công cụ giúp theo dõi lưu lượng mạng.

Hai tầng chịu trách nhiệm vận chuyển dữ liệu từ nguồn đến đích là:

  • Tầng Mạng (Network Layer): Chứa địa chỉ nguồn và đích để gửi gói IP từ nguồn ban đầu đến đích cuối cùng, có thể trên cùng mạng hoặc khác mạng.
  • Tầng Liên kết dữ liệu (Data Link Layer): Chứa địa chỉ nguồn và đích để gửi khung dữ liệu (frame) giữa các card mạng (NIC - Network Interface Card) trên cùng một mạng.

3.7.2. Địa chỉ Logic Tầng 3 (Layer 3 Logical Address)

Địa chỉ IP là địa chỉ logic tầng mạng (Layer 3), dùng để gửi gói tin từ nguồn đến đích.

Mỗi gói IP chứa hai thành phần:

  • Địa chỉ IP nguồn (Source IP): Địa chỉ của thiết bị gửi
  • Địa chỉ IP đích (Destination IP): Địa chỉ của thiết bị nhận

Địa chỉ IP gồm hai phần:

  • Phần mạng/Tiền tố (Network/Prefix): Xác định mạng mà thiết bị thuộc về
  • Phần host/ID giao diện (Host/Interface ID): Xác định thiết bị cụ thể trong mạng
Lưu ý: Subnet mask (IPv4) hoặc prefix-length (IPv6) dùng để phân biệt phần mạng và phần host của địa chỉ IP.

3.7.3. Thiết bị Cùng Mạng (Devices on Same Network)

Ví dụ về máy tính PC1 giao tiếp với máy chủ FTP trong cùng mạng:

  • Địa chỉ nguồn: PC1 - 192.168.1.110
  • Địa chỉ đích: FTP Server - 192.168.1.9

Cả hai địa chỉ đều có cùng phần mạng (192.168.1), cho thấy chúng nằm trên cùng một mạng.

  1. Cấu trúc khung dữ liệu:
    • Header Ethernet (tầng Data Link) chứa địa chỉ MAC nguồn và đích
    • Header IP (tầng Network) chứa địa chỉ IP nguồn và đích
    • Phần dữ liệu (Data) chứa nội dung cần truyền
  2. Mô hình mạng:
    • PC1 (192.168.1.110) với địa chỉ MAC: AA-AA-AA-AA-AA-AA
    • FTP Server (192.168.1.9) với địa chỉ MAC: CC-CC-CC-CC-CC-CC
    • Các thiết bị kết nối qua switch trong cùng mạng LAN
  3. Quá trình truyền dữ liệu:
    • Thiết bị nguồn và đích nằm trong cùng mạng (192.168.1.x)
    • Khung dữ liệu được gửi trực tiếp từ nguồn đến đích
    • Không cần qua router trung gian

3.7.4. Vai trò của Địa chỉ Tầng Liên kết Dữ liệu: Cùng Mạng IP

Khi thiết bị nguồn và đích nằm trên cùng mạng, khung dữ liệu được gửi trực tiếp giữa chúng. Trong mạng Ethernet, địa chỉ này gọi là địa chỉ MAC (Media Access Control).

Địa chỉ MAC được gắn cố định trên card mạng và gồm:

  • MAC nguồn: Địa chỉ MAC của thiết bị gửi (VD: AA-AA-AA-AA-AA-AA)
  • MAC đích: Địa chỉ MAC của thiết bị nhận (VD: CC-CC-CC-CC-CC-CC)

3.7.5. Thiết bị Khác Mạng (Devices on Remote Networks)

Khi thiết bị giao tiếp với thiết bị ở mạng khác, quy trình địa chỉ sẽ phức tạp hơn.

3.7.6. Vai trò của Địa chỉ Tầng Mạng

Khi giao tiếp giữa các mạng khác nhau:

  • IP nguồn: PC1 - 192.168.1.110
  • IP đích: Web Server - 172.16.1.99

Phần mạng khác nhau (192.168.1 vs 172.16.1) cho thấy thiết bị nằm ở các mạng khác nhau.


Hình ảnh minh họa quá trình truyền dữ liệu giữa các thiết bị khác mạng:

  1. Cấu trúc gói tin:
    • Header Ethernet chứa địa chỉ MAC nguồn và đích
    • Header IP chứa địa chỉ IP nguồn (192.168.1.110) và đích (172.16.1.99)
  2. Các thành phần trong mô hình:
    • PC1: IP 192.168.1.110, MAC: AA-AA-AA-AA-AA-AA
    • Router R1: Interface kết nối PC1 có IP 192.168.1.1
    • Router R2: Interface kết nối Web Server có IP 172.16.1.1
    • Web Server: IP 172.16.1.99, MAC: AB-CD-EF-12-34-56
  3. Quá trình định tuyến:
    • PC1 gửi gói tin đến R1 (gateway mặc định)
    • R1 chuyển tiếp qua các router trung gian
    • R2 chuyển gói tin đến Web Server đích
    • Tại mỗi chặng, địa chỉ MAC nguồn/đích được cập nhật

3.7.7. Vai trò của Địa chỉ Tầng Liên kết Dữ liệu: Khác Mạng IP

Khi giao tiếp khác mạng:

  • Khung dữ liệu không thể gửi trực tiếp đến đích
  • Cần gửi qua router/gateway trung gian
  • MAC nguồn: Địa chỉ MAC của thiết bị gửi
  • MAC đích: Địa chỉ MAC của gateway/router gần nhất

Địa chỉ vật lý tầng 2 dùng để chuyển khung dữ liệu giữa các giao diện mạng trên cùng đường truyền vật lý.

Quá trình truyền gói tin qua mạng:

Từ Máy chủ đến Router (Host to Router)

Giữa các Router (Router to Router)

Từ Router đến Máy chủ (Router to Host)

Tại mỗi chặng:

  • Gói IP được đóng gói trong khung dữ liệu mới
  • Mỗi khung chứa địa chỉ MAC nguồn và đích
  • Router loại bỏ thông tin tầng 2 cũ và thêm thông tin mới khi chuyển tiếp

Install wireshark

References:

www.netacad.com