VPS Ubuntu
6 Phiên bản Ubuntu 18.10 - 24.04
Internet Layer là gì? Ở bài trước, ta đã tìm hiểu về Data Link Layer. Đây là tầng nhận chuỗi bit từ Physical Layer, tổ chức chúng thành frame, dùng MAC address để truyền dữ liệu trong cùng một mạng cục bộ và kiểm tra lỗi frame bằng FCS/CRC.
Nhưng Data Link Layer chỉ giải quyết được một phạm vi rất gần: truyền frame giữa các thiết bị trong cùng một LAN, cùng một VLAN hoặc cùng một liên kết mạng.
Ví dụ: Laptop → Switch → Router
Trong đoạn này, switch có thể đọc MAC address và chuyển frame đến đúng cổng. Nhưng nếu laptop muốn truy cập một website nằm ở một quốc gia khác, MAC address trong mạng LAN không đủ để đưa dữ liệu đến đó.
Lúc này, dữ liệu cần đi qua nhiều mạng khác nhau, nhiều router khác nhau và nhiều tuyến đường khác nhau. Đây chính là lúc Internet Layer bắt đầu làm việc. Ở bài này Thuê Cloud và bạn sẽ tìm hiểu rõ hơn về các khái niệm sau ở tần Network Layer sau:
Sau khi Data Link Layer xử lý xong frame, phần dữ liệu bên trong frame thường là một IP packet. Ở tầng Data Link, thiết bị nhìn dữ liệu dưới dạng frame. Frame có MAC nguồn, MAC đích, EtherType, payload và FCS. Trong đó, phần payload thường chứa dữ liệu của tầng phía trên.
Với mạng TCP/IP phổ biến, payload đó thường là một gói IP.
Có thể hình dung ngắn gọn:
Điểm quan trọng là frame chỉ có ý nghĩa trong một đoạn mạng cục bộ.
Khi dữ liệu đi từ laptop đến router trong nhà, frame có MAC nguồn là MAC của laptop và MAC đích là MAC của router. Nhưng khi router chuyển dữ liệu sang mạng của nhà cung cấp Internet, frame cũ không được giữ nguyên mãi.
Router sẽ lấy IP packet bên trong frame, sau đó đóng IP packet đó vào một frame mới phù hợp với mạng kế tiếp.
Điều này tạo ra một nguyên lý rất quan trọng:
Frame thay đổi theo từng đoạn mạng, còn IP packet tiếp tục hành trình đến địa chỉ IP đích. Đây là điểm khác biệt lớn giữa Data Link Layer và Internet Layer.
Internet Layer là tầng chịu trách nhiệm xử lý địa chỉ IP, IP packet và định tuyến dữ liệu qua nhiều mạng khác nhau.
Trong mô hình TCP/IP, tầng này được gọi là Internet Layer. Trong mô hình OSI, chức năng tương ứng thường nằm ở Network Layer, tức tầng số 3.
Ở bài này, ta có thể hiểu hai cách gọi này gần nhau về mặt chức năng:
Nhiệm vụ chính của Internet Layer là giúp dữ liệu đi từ mạng nguồn đến mạng đích bằng địa chỉ IP. Nếu Data Link Layer dùng MAC address để truyền frame trong LAN, thì Internet Layer dùng IP address để đưa packet đi qua nhiều mạng.
Ví dụ khi bạn truy cập một website, dữ liệu có thể đi theo hành trình như sau:
Laptop của bạn
→ Router trong nhà
→ Router của nhà mạng
→ Router trung gian
→ Mạng của data center
→ Server website
Ở mỗi chặng, Router sẽ đọc địa chỉ IP đích trong packet và quyết định nên gửi packet đến đâu tiếp theo. Internet Layer không quan tâm nội dung bên trong là website, video hay file tải xuống. Nó cũng không quan tâm ứng dụng nào sẽ nhận dữ liệu cuối cùng.
Nó chỉ quan tâm đến một câu hỏi:
Packet này cần đi đến địa chỉ IP nào, và bước tiếp theo nên gửi nó đi đâu?
IP packet là đơn vị dữ liệu chính của Internet Layer.
Nếu Data Link Layer xử lý frame, thì Internet Layer xử lý packet. Một IP packet chứa các thông tin cần thiết để router có thể định tuyến dữ liệu qua nhiều mạng khác nhau.
Một cấu trúc IP packet đơn giản có thể hình dung như sau:
IP Packet
┌────────────┬───────────┬─────┬─────────┐
│ IP nguồn │ IP đích │ TTL │ Payload │
└────────────┴───────────┴─────┴─────────┘
Trong thực tế, IP header có nhiều trường hơn. Nhưng với mục tiêu hiểu tầng Internet, bạn nên nắm trước các thành phần quan trọng.
Điểm cần nhớ là IP packet không phải dữ liệu cuối cùng mà người dùng nhìn thấy. Nó chỉ là một lớp đóng gói ở tầng Internet.
Bên trong IP packet còn có dữ liệu tầng Transport. Bên trong dữ liệu tầng Transport mới có thể có HTTP request, DNS query hoặc dữ liệu ứng dụng khác.
IP address dùng để xác định thiết bị hoặc mạng đích ở tầng Internet.
Nếu MAC address giúp frame đi trong cùng một mạng LAN, thì IP address giúp packet đi qua nhiều mạng khác nhau. Ví dụ, laptop của bạn có thể đang nằm trong mạng nội bộ với địa chỉ: 192.168.1.10
Router trong nhà có thể có địa chỉ LAN: 192.168.1.1
Khi bạn truy cập một website, server website có thể có một địa chỉ IP public ở bên ngoài Internet. Laptop của bạn cần gửi IP packet đến địa chỉ IP đó. Nhưng laptop không gửi frame trực tiếp đến server ở xa. Ở tầng Data Link, laptop chỉ gửi frame đến router trong cùng LAN trước.
Điều này tạo ra hai lớp địa chỉ cùng tồn tại:
Có thể hiểu đơn giản:
MAC address giống địa chỉ của điểm giao tiếp gần nhất trong từng đoạn mạng. IP address giống địa chỉ định tuyến để packet biết đích cuối cùng cần đến.
Khi dữ liệu đi qua nhiều router, MAC nguồn và MAC đích có thể thay đổi ở từng đoạn. Nhưng IP đích trong packet vẫn hướng về server cần đến. Đây là nguyên lý rất quan trọng khi phân biệt Data Link Layer và Internet Layer.
Router là thiết bị trung tâm khi nói về Internet Layer. Switch chủ yếu xử lý frame dựa trên MAC address. Router xử lý IP packet dựa trên địa chỉ IP. Khi router nhận dữ liệu từ một cổng mạng, nó không chỉ chuyển frame như switch. Router sẽ xử lý sâu hơn một tầng.
Quá trình có thể hiểu như sau:
Router nhận frame:
→ lấy IP packet bên trong frame
→ đọc IP đích
→ tra routing table
→ chọn next hop
→ đóng packet vào frame mới
→ gửi sang mạng tiếp theo
Điểm quan trọng là Router không giữ nguyên frame cũ để gửi đi mãi. Frame chỉ có giá trị trong đoạn mạng hiện tại. Khi packet đi qua router, router sẽ bỏ phần frame cũ, giữ lại IP packet, sau đó tạo frame mới cho đoạn mạng kế tiếp.
Ví dụ:
Laptop gửi dữ liệu đến router trong nhà. Frame đầu tiên có thể có MAC nguồn là laptop và MAC đích là router. Khi router gửi packet ra mạng của nhà mạng, frame mới sẽ có MAC nguồn là cổng WAN của router và MAC đích là thiết bị kế tiếp của nhà mạng.
Nhưng IP packet bên trong vẫn tiếp tục hành trình đến IP đích.
Đây là lý do ta có thể nói:
Data Link thay đổi theo từng hop, còn Internet Layer duy trì hướng đi của packet qua nhiều mạng.
Routing là quá trình router chọn đường đi cho IP packet.
Mỗi router có một bảng định tuyến, gọi là routing table. Bảng này giúp router biết packet có IP đích thuộc mạng nào và nên gửi packet đến next hop nào. Router không cần hiểu nội dung dữ liệu bên trong packet. Nó không cần biết đó là website, email hay video. Nó chỉ cần đọc IP đích và quyết định đường đi tiếp theo.
Một quá trình routing đơn giản có thể hình dung như sau:
Packet đi vào router
→ router đọc IP đích
→ router tra routing table
→ router chọn cổng ra hoặc next hop
→ packet được gửi tiếp
Trong mạng nhỏ, route có thể được cấu hình thủ công bằng static route.
Trong mạng lớn, router có thể dùng các giao thức định tuyến động để học đường đi. Ví dụ trong doanh nghiệp có thể gặp OSPF, còn trên Internet quy mô lớn thường nhắc đến BGP.
Ở bài này, chưa cần đi sâu vào thuật toán định tuyến. Điều cần hiểu là:
Routing giúp IP packet đi qua nhiều mạng khác nhau để tiến gần hơn đến IP đích.
Mỗi router chỉ cần biết bước tiếp theo hợp lý. Packet không cần biết toàn bộ bản đồ Internet ngay từ đầu.
Default gateway là thiết bị mà máy tính gửi dữ liệu đến khi đích không nằm trong cùng mạng LAN. Trong mạng gia đình, default gateway thường chính là router Wi-Fi hoặc modem/router của bạn.
Ví dụ:
Laptop: 192.168.1.10
Default gateway: 192.168.1.1
Khi laptop muốn truy cập một thiết bị khác trong cùng LAN, nó có thể gửi frame trực tiếp đến thiết bị đó nếu biết MAC address.
Nhưng khi laptop muốn truy cập một website ngoài Internet, địa chỉ IP đích không nằm trong mạng nội bộ. Laptop không thể gửi frame trực tiếp đến server website. Thay vào đó, laptop gửi frame đến router trong LAN. Router này đóng vai trò cửa ra khỏi mạng nội bộ.
Có thể hiểu đơn giản:
Default gateway là cánh cửa để thiết bị trong LAN đi ra các mạng khác.
Ở tầng Data Link, laptop cần biết MAC address của default gateway để gửi frame đến router. Sau đó, router xử lý IP packet bên trong và định tuyến nó ra ngoài.
Điểm này cho thấy Data Link Layer và Internet Layer không tách rời nhau. Chúng phối hợp với nhau trong từng bước truyền dữ liệu.
Trong mạng gia đình hoặc văn phòng nhỏ, hầu hết thiết bị sử dụng địa chỉ IP private như:
192.168.x.x
10.x.x.x
172.16.x.x – 172.31.x.x
Các địa chỉ này dùng trong mạng nội bộ và không được định tuyến trực tiếp trên Internet public.
Khi các thiết bị trong LAN muốn truy cập Internet, router thường dùng NAT, tức Network Address Translation. NAT giúp chuyển địa chỉ IP private bên trong mạng LAN thành địa chỉ IP public khi dữ liệu đi ra ngoài.
Ví dụ:
Laptop trong LAN: 192.168.1.10
Router có IP public: địa chỉ do nhà mạng cấp
Khi laptop truy cập website, router thay đổi thông tin địa chỉ để packet có thể đi ra Internet bằng IP public. Khi server phản hồi, router dùng bảng NAT để biết phản hồi đó cần trả về thiết bị nào trong LAN.
Không cần đi quá sâu vào NAT table ở bài này. Nhưng cần hiểu vai trò thực tế của NAT:
Khi học Internet Layer, bạn cũng sẽ gặp ICMP.
ICMP là giao thức hỗ trợ thông báo lỗi và kiểm tra trạng thái mạng ở tầng Internet. Một ví dụ quen thuộc là lệnh ping.
Khi bạn ping một địa chỉ IP, thiết bị gửi ICMP Echo Request đến đích. Nếu đích phản hồi, bạn nhận được ICMP Echo Reply.
Ví dụ:
ping 8.8.8.8
Ping không dùng để truyền dữ liệu ứng dụng như HTTP. Nó chủ yếu dùng để kiểm tra xem thiết bị đích có phản hồi ở tầng IP hay không, độ trễ khoảng bao nhiêu và có mất gói hay không.
Tuy nhiên, cần hiểu đúng: ping không thành công không luôn có nghĩa là mạng hỏng. Nhiều hệ thống có thể chặn ICMP vì lý do bảo mật.
ICMP là một phần quan trọng giúp chẩn đoán Internet Layer, nhưng nó không đại diện cho toàn bộ hoạt động của tầng này.
Một khái niệm nâng cao hơn ở Internet Layer là MTU, viết tắt của Maximum Transmission Unit. MTU là kích thước tối đa của một gói dữ liệu có thể truyền qua một liên kết mạng mà không cần chia nhỏ ở tầng IP.
Trong Ethernet phổ biến, MTU thường là 1500 bytes cho payload IP.
Nếu IP packet quá lớn so với MTU của đường truyền, có thể xảy ra vấn đề phân mảnh, gọi là fragmentation. Với IPv4, router hoặc thiết bị gửi có thể phân mảnh packet trong một số trường hợp. Với IPv6, fragmentation được xử lý khác và router trung gian không phân mảnh packet như IPv4.
Trong thực tế, MTU sai có thể gây ra lỗi rất khó chịu. Ví dụ, một số website tải được, một số kết nối lại treo hoặc chập chờn, đặc biệt khi dùng VPN, PPPoE hoặc tunnel.
Không cần đi sâu vào cấu trúc fragmentation trong bài cơ bản. Nhưng người học mạng nên biết rằng Internet Layer không chỉ có IP address và router. Nó còn liên quan đến kích thước packet, giới hạn đường truyền và cách packet đi qua nhiều môi trường mạng khác nhau.
Một điểm kỹ thuật rất quan trọng: IP hoạt động theo mô hình best-effort.
Điều này có nghĩa là Internet Layer cố gắng đưa packet đến đích, nhưng không đảm bảo tuyệt đối rằng packet sẽ đến nơi, đến đúng thứ tự hoặc không bị mất.
Packet có thể bị rơi vì nhiều lý do:
Internet Layer không tự truyền lại packet bị mất theo cách TCP làm. Nó cũng không đảm bảo thứ tự dữ liệu cho ứng dụng. Nhiệm vụ đảm bảo truyền tin đáng tin cậy thường thuộc về tầng phía trên, đặc biệt là Transport Layer với TCP.
Đây chính là lý do cần bài tiếp theo.
Internet Layer đưa packet đến đúng IP. Nhưng để dữ liệu được chia luồng, kiểm soát thứ tự, phát hiện mất dữ liệu và đưa đến đúng ứng dụng, ta cần Transport Layer.
Data Link Layer và Internet Layer rất dễ bị nhầm vì cả hai đều liên quan đến việc “đưa dữ liệu đi”. Nhưng phạm vi của chúng khác nhau.
Data Link Layer xử lý frame trong từng liên kết mạng hoặc mạng cục bộ. Internet Layer xử lý packet đi qua nhiều mạng.
Bảng dưới đây giúp phân biệt rõ hơn:
| Data Link Layer | Internet Layer |
| Xử lý frame | Xử lý IP packet |
| Dùng MAC address | Dùng IP address |
| Hoạt động trong LAN hoặc từng liên kết | Hoạt động qua nhiều mạng |
| Switch xử lý chính | Router xử lý chính |
| Frame thay đổi qua từng đoạn mạng | IP packet được định tuyến đến đích |
| Kiểm tra lỗi frame bằng FCS/CRC | Dùng TTL/Hop Limit, routing, ICMP |
Cách dễ nhớ nhất là:
Ví dụ khi laptop truy cập website, laptop gửi frame đến router trong LAN. Đây là phần của Data Link Layer.
Sau đó router lấy IP packet bên trong frame và định tuyến packet ra ngoài Internet. Đây là phần của Internet Layer.
Hai tầng này luôn phối hợp với nhau. IP packet muốn đi qua một đoạn mạng cụ thể vẫn phải được đóng vào frame phù hợp với đoạn mạng đó.
Khi Internet Layer hoàn thành nhiệm vụ, packet đã được đưa đến đúng địa chỉ IP đích hoặc ít nhất đã tiến gần hơn đến mạng đích qua từng router.
Nhưng đến đúng thiết bị vẫn chưa đủ. Một máy tính hoặc server có thể chạy rất nhiều ứng dụng cùng lúc. Ví dụ cùng một server có thể chạy web server, SSH, database, DNS service hoặc proxy service.
Vậy khi packet đến đúng IP, hệ thống làm sao biết dữ liệu này thuộc ứng dụng nào?
Đây là nhiệm vụ của Transport Layer.
Nếu Internet Layer trả lời câu hỏi:
Packet này cần đi đến địa chỉ IP nào?
Thì Transport Layer trả lời câu hỏi:
Dữ liệu này thuộc kết nối nào, port nào và ứng dụng nào?
Bài tiếp theo sẽ đi vào các khái niệm như TCP, UDP, port, segment, datagram, kết nối, truyền lại dữ liệu và kiểm soát thứ tự.
Mạch xử lý sẽ tiếp tục như sau:
Internet Layer: IP packet → đúng thiết bị
Transport Layer: TCP/UDP → đúng port và ứng dụng
Internet Layer là tầng nằm sau Data Link Layer trong quá trình dữ liệu đi lên các tầng mạng.
Ở bài trước, Data Link Layer đã giúp tổ chức bit thành frame, dùng MAC address để truyền frame trong mạng LAN và giúp switch chuyển dữ liệu đến đúng cổng. Nhưng khi dữ liệu cần đi xa hơn, ra khỏi mạng cục bộ và đi qua nhiều mạng khác nhau, Data Link Layer không còn đủ. Lúc này, Internet Layer tiếp quản.
Internet Layer xử lý IP packet, địa chỉ IP, router, routing, default gateway, TTL, ICMP, NAT và các vấn đề liên quan đến việc đưa packet qua nhiều mạng.
Điểm quan trọng nhất cần nhRank Math SEOớ là:
Nếu Data Link Layer giúp dữ liệu đi đúng trong mạng LAN, thì Internet Layer giúp dữ liệu đi từ mạng này sang mạng khác.
Sau khi packet đến đúng thiết bị bằng địa chỉ IP, tầng tiếp theo sẽ cần xác định dữ liệu đó thuộc ứng dụng nào bằng TCP/UDP và port. Đó chính là nhiệm vụ của Transport Layer, bài tiếp theo trong series.
THUECLOUD là dịch vụ cho thuê máy chủ ảo Cloud VPS & PROXY. Chúng tôi cung cấp tất cả các dòng máy chủ ảo VPS, Cloud VPS, GPU Server, Dedicated Server chất lượng cao với 24 phiên bản hệ điều hành mới nhất.
🌐 Website: https://thuecloud.com/ 💬Zalo Busines: https://zalo.me/thuecloud 💬 Telegram: @thuecloud 📘 Facebook: https://www.facebook.com/thuecloud/ 🎵 Tiktok: https://www.tiktok.com/@thuecloud
📞 Hotline & Zalo: 0382.126.579
📍 Địa chỉ: Số 278 – Phường Thụy Khuê – Quận Tây Hồ – TP. Hà Nội