Mục lục bài họcĐang ở d02-b3
← A-Level Computer Science
0/30 bài đã học xong
Chương 2 · Communication · Bài 3/3 của chương · bài 6/30 của A-Level Computer Science

The Internet: protocols, addressing and packet switching

Internet: giao thức, địa chỉ và chuyển mạch gói
← Mục lục bài học
Lý thuyết · English

Internet versus World Wide Web

The Internet is the global network infrastructure; the Web is one service running on it, alongside email and file transfer. Getting this distinction right is a standard one-mark question.

The TCP/IP stack

Four layers. Application (HTTP, FTP, SMTP) speaks to the program. Transport (TCP) splits data into packets, numbers them, acknowledges and retransmits. Internet (IP) adds source and destination addresses and routes. Link puts the bits on the physical medium. Each layer adds a header on the way down and the receiver strips them on the way up — layering means one layer can change without rewriting the others.

Packet switching

Data is split into packets, each carrying a header (source, destination, sequence number) and a trailer (error check). Packets may take different routes and arrive out of order; the receiver reorders by sequence number and requests missing packets. Compared with circuit switching, packet switching uses the network efficiently and survives a broken link, but adds delay and cannot guarantee ordering.

Addressing

MAC is a fixed hardware address used within a local network; IP is a logical address that changes with location and is used to route between networks. IPv4 is $32$ bits and has run out; IPv6 is $128$ bits. Public addresses are routable on the Internet; private ones are not, which is why NAT exists.

DNS

DNS turns a domain name into an IP address. The resolver asks a root server, then a TLD server, then the authoritative name server for the domain; results are cached to avoid repeating the walk. Without DNS the Web still works — but only if you type $142.250.…$ instead of a name.

Giải thích tiếng Việt

Internet khác World Wide Web

Internet là hạ tầng mạng toàn cầu; Web chỉ là một dịch vụ chạy trên đó, bên cạnh email và truyền file. Phân biệt đúng chỗ này là một câu một điểm quen thuộc.

Chồng giao thức TCP/IP

Bốn tầng. Application (HTTP, FTP, SMTP) nói chuyện với chương trình. Transport (TCP) chia dữ liệu thành gói, đánh số, báo nhận và gửi lại khi mất. Internet (IP) gắn địa chỉ nguồn – đích và định tuyến. Link đưa bit lên môi trường vật lý. Mỗi tầng thêm một phần đầu khi đi xuống và bên nhận bóc ngược khi đi lên — phân tầng nghĩa là đổi một tầng mà không phải viết lại các tầng còn lại.

Chuyển mạch gói

Dữ liệu được chia thành các gói, mỗi gói mang phần đầu (nguồn, đích, số thứ tự) và phần đuôi (mã kiểm lỗi). Các gói có thể đi theo đường khác nhau và tới nơi không đúng thứ tự; bên nhận sắp lại theo số thứ tự và yêu cầu gửi lại gói thiếu. So với chuyển mạch kênh, chuyển mạch gói dùng mạng hiệu quả hơn và sống sót khi một đường đứt, nhưng thêm độ trễ và không bảo đảm thứ tự.

Địa chỉ

MAC là địa chỉ phần cứng cố định, dùng trong phạm vi mạng cục bộ; IP là địa chỉ logic, đổi theo vị trí và dùng để định tuyến giữa các mạng. IPv4 dài $32$ bit và đã cạn; IPv6 dài $128$ bit. Địa chỉ công cộng định tuyến được trên Internet, địa chỉ riêng thì không — và đó là lý do NAT tồn tại.

DNS

DNS đổi tên miền thành địa chỉ IP. Bộ phân giải hỏi máy chủ gốc, rồi máy chủ tên miền cấp cao, rồi máy chủ có thẩm quyền của tên miền đó; kết quả được lưu đệm để khỏi đi lại cả chặng. Không có DNS thì Web vẫn chạy — với điều kiện bạn gõ $142.250.\ldots$ thay vì gõ tên.

Ví dụ — theo dấu một yêu cầu web

Một người dùng gõ www.truong.edu.vn vào trình duyệt. Mô tả những gì xảy ra tới lúc trang hiển thị, nêu rõ vai trò của DNS, TCP, IP và chuyển mạch gói.

Giải.

1. Phân giải tên (DNS). Trình duyệt cần một địa chỉ IP chứ không dùng được tên. Nó kiểm bộ nhớ đệm cục bộ trước; nếu chưa có, bộ phân giải hỏi máy chủ gốc, được chỉ tới máy chủ của .vn, rồi tới máy chủ có thẩm quyền của truong.edu.vn, và nhận về địa chỉ IP. Kết quả được lưu đệm kèm thời hạn sống.

2. Thiết lập kết nối (TCP). Trình duyệt mở kết nối TCP tới cổng $80$ hoặc $443$ của địa chỉ đó. TCP là tầng bảo đảm độ tin cậy: nó sẽ đánh số và báo nhận.

3. Gửi yêu cầu (Application). Một yêu cầu HTTP GET / được tạo ở tầng ứng dụng và đưa xuống dưới.

4. Đóng gói và định tuyến (Transport → Internet → Link). TCP chia dữ liệu thành gói và đánh số thứ tự; IP gắn địa chỉ nguồn và đích vào từng gói; tầng liên kết đưa bit lên đường truyền. Mỗi tầng thêm phần đầu của mình.

5. Chuyển mạch gói. Các bộ định tuyến trên đường đi đọc địa chỉ IP đích và chuyển tiếp từng gói theo tuyến tốt nhất tại thời điểm đó, nên hai gói cùng một trang có thể đi hai đường khác nhau và tới lệch thứ tự.

6. Bên nhận bóc ngược. Máy chủ bóc các phần đầu từ dưới lên, TCP sắp lại theo số thứ tự và yêu cầu gửi lại gói nào thiếu, rồi giao dữ liệu hoàn chỉnh cho phần mềm web. Phản hồi HTTP đi ngược lại đúng chuỗi bước đó, và trình duyệt dựng trang.

Ý cần nhấn: DNS chỉ làm việc ở bước đầu; việc bảo đảm không mất gói và đúng thứ tự là của TCP, không phải của IP.

Bẫy hay mất điểm — Gán nhầm việc cho tầng. IP chỉ định tuyến và không bảo đảm gì cả — gói mất thì IP không biết. Việc đánh số, báo nhận và gửi lại là của TCP. Câu hỏi ‘tầng nào chịu trách nhiệm …’ ra gần như mọi kỳ.
Phải nhớ — Internet là hạ tầng, Web là một dịch vụ. Bốn tầng TCP/IP mỗi tầng một việc: HTTP ở Application, chia gói và tin cậy ở Transport, định tuyến ở Internet. MAC là cục bộ và cố định, IP là logic và định tuyến được; DNS chỉ dịch tên thành IP.

Đọc xong rồi — làm thử ngay

Bài tập của chương Communication gồm 14 câu trắc nghiệm và 3 đề tự luận. Đáp án hiện ngay khi chọn, miễn phí.

Làm bài tập chương →