Mạng máy tính bài 02: OSI và TCP/IP: Điều gì xảy ra khi bạn mở một website?
- 19-10-2026
- Toanngo92
- 0 Comments
Mạng và truyền thông cho người mới · Bài 2/6 · Biên soạn lại tháng 10/2026.
Theo dõi một lần truy cập website để hiểu vai trò của các tầng, DNS, DHCP, HTTP và quá trình đóng gói dữ liệu.
Mục lục
1. Tại sao không chỉ có một giao thức làm tất cả?
Khi bạn mở một trang web, có nhiều vấn đề khác nhau: tìm máy phục vụ tên miền, thống nhất cách yêu cầu nội dung, truyền dữ liệu giữa các ứng dụng, chọn đường qua nhiều mạng và phát tín hiệu qua Wi-Fi. Nếu trộn tất cả vào một cơ chế khổng lồ, việc thay đổi và kiểm tra từng phần sẽ rất khó.
Phân tầng là chia công việc theo trách nhiệm. Tầng trên sử dụng dịch vụ tầng dưới mà không cần tự làm lại mọi chi tiết. Trình duyệt không phải tự thiết kế tín hiệu vô tuyến để gửi HTTP; Wi-Fi cũng không cần hiểu ý nghĩa của từng bài học HTML.
Giao thức là quy tắc trao đổi giữa những thành phần tương ứng. “Đồng tầng” là cách mô tả quan hệ logic giữa hai phía; dữ liệu thật vẫn phải đi xuống ngăn xếp của bên gửi, qua môi trường truyền rồi đi lên phía nhận. Nó không bay trực tiếp từ tầng ứng dụng máy này tới tầng ứng dụng máy kia.

2. Dùng OSI để hiểu chức năng, dùng TCP/IP để đọc hệ thống thực tế
OSI có bảy tầng, giúp gọi tên nhóm chức năng và trao đổi khi học hoặc chẩn đoán. Bộ giao thức Internet thường được trình bày bằng mô hình TCP/IP bốn tầng. Một số giáo trình dùng năm tầng bằng cách tách tầng liên kết và vật lý; đó là cách trình bày khác, không phải Internet bị thay đổi số tầng.
Không nên kể rằng TCP/IP đơn giản là bản OSI bị cắt bớt, hoặc mọi giao thức thực tế luôn khớp chính xác vào một ô. Hai mô hình có lịch sử và mục đích riêng; bảng sau là công cụ đối chiếu để học.
| Nhóm TCP/IP | Công việc cần hiểu | Ví dụ |
|---|---|---|
| Ứng dụng | Quy tắc phục vụ nhu cầu của ứng dụng và biểu diễn thông tin | HTTP, DNS, DHCP, SMTP |
| Giao vận | Trao đổi giữa các điểm cuối ứng dụng trên host | TCP, UDP |
| Internet | Địa chỉ IP và chuyển gói qua các mạng | IPv4, IPv6, ICMP |
| Liên kết / truy cập mạng | Gửi dữ liệu qua một liên kết và môi trường cụ thể | Ethernet, Wi-Fi |
3. Trước khi mở website: máy cần có cấu hình mạng
Trong một mạng gia đình dùng IPv4, DHCP thường cấp địa chỉ IP và cung cấp cấu hình như subnet mask, default gateway, DNS resolver. Đây là một dịch vụ cấu hình, không phải giao thức tải trang web. Thiết bị cũng có thể được cấu hình thủ công; không phải mọi địa chỉ đều do DHCP cấp.
Luồng DHCPv4 thường được học qua Discover, Offer, Request, Acknowledge: client tìm dịch vụ, server đề nghị cấu hình, client yêu cầu dùng cấu hình và server xác nhận. Địa chỉ được cấp theo lease, cần được gia hạn theo cơ chế của giao thức. IPv6 có các cơ chế cấu hình riêng như SLAAC và DHCPv6; không suy nguyên toàn bộ luồng IPv4 sang IPv6.
Khi bạn gõ URL, kết nối Wi-Fi và quá trình lấy cấu hình thường đã diễn ra trước đó. Vì vậy không nên vẽ một lần xin DHCP mới bắt buộc cho mọi lần tải lại trang.
4. DNS: tên miền được phân giải thành thông tin cần kết nối
Bạn nhớ khoahoc.hocvietcode.com dễ hơn một chuỗi địa chỉ IP. DNS giúp truy vấn thông tin tên miền; bản ghi A chứa địa chỉ IPv4, AAAA chứa địa chỉ IPv6. DNS còn có nhiều loại bản ghi khác nên không chỉ là một bảng tên đổi thành IP.
Thông thường máy sử dụng bộ phân giải DNS được cấu hình, có thể là dịch vụ của router, nhà mạng hoặc nhà cung cấp khác. Trình duyệt hay hệ điều hành có thể đã có cache. Nếu resolver cần tra cứu thêm, nó có thể lần lượt tìm thông tin qua hệ thống phân cấp root, TLD và máy chủ có thẩm quyền, rồi cache theo thời gian phù hợp.
Không mặc định máy người dùng tự hỏi root server trong mỗi lần mở trang. Một tên cũng có thể có nhiều địa chỉ hoặc trỏ qua CDN; kết quả giữa các nơi và các thời điểm có thể khác. DNS cung cấp thông tin để kết nối, không tự tải nội dung website.
- Ứng dụng kiểm tra thông tin phân giải đã có theo cơ chế của nó.
- Truy vấn được chuyển tới resolver thích hợp khi cần.
- Resolver dùng cache hoặc thực hiện tra cứu cần thiết.
- Client nhận kết quả và dùng địa chỉ phù hợp để tiếp tục kết nối.
5. HTTP, HTTPS và việc nhận trang
HTTP quy định cách client gửi request và server trả response: phương thức, địa chỉ tài nguyên, header, status và dữ liệu. HTTPS bảo vệ trao đổi HTTP bằng cơ chế bảo mật tương ứng, thường được giải thích qua TLS. Chứng chỉ và xác minh tên máy chủ góp phần xác thực đầu bên kia; chỉ có biểu tượng ổ khóa không chứng minh nội dung kinh doanh của website đáng tin.
Với HTTP/1.1 hoặc HTTP/2 trên HTTPS, ta thường theo dõi một kết nối TCP rồi thiết lập TLS và trao đổi HTTP. HTTP/3 dùng QUIC trên UDP và tích hợp TLS trong cơ chế QUIC. Vì thế không viết “mọi website luôn dùng TCP”. Ở mức nhập môn, hiểu một luồng TCP/TLS trước rồi nhận biết có HTTP/3 là đủ; chưa cần học chi tiết QUIC.
Một lần mở trang có thể tạo nhiều request cho HTML, CSS, script, ảnh và dịch vụ khác. Cache có thể làm một số tài nguyên không cần tải lại; một kết nối cũng có thể được tái sử dụng. Sơ đồ từng bước là cách giải thích có đơn giản hóa, không phải khẳng định mỗi request đều thiết lập một kết nối mới.
6. Đóng gói: cùng dữ liệu, nhiều lớp thông tin điều khiển
Xét ví dụ HTTP đi qua TCP, IPv4 và Ethernet. Dữ liệu ứng dụng được TCP xử lý thành luồng và các segment; segment được mang trong gói IP; gói IP nằm trong frame của liên kết. Tầng vật lý biểu diễn bit bằng tín hiệu phù hợp. Phía nhận xử lý theo chiều ngược lại để giao dữ liệu cho đúng thành phần.
Router không phải tháo dữ liệu lên HTTP để đọc một trang rồi mới biết chuyển tiếp. Nó xử lý thông tin cần cho chuyển gói và đóng lại frame theo liên kết kế tiếp. Tên “gói tin” thường được dùng chung trong giao tiếp, nhưng khi cần chính xác hãy nói rõ IP packet, Ethernet frame hay TCP segment. UDP thường được gọi là datagram.
| Đang quan sát | Thông tin tiêu biểu | Không nên nhầm với |
|---|---|---|
| Ứng dụng | Tên miền, URL, phương thức HTTP | Địa chỉ MAC của điểm phát Wi-Fi |
| TCP / UDP | Port nguồn và port đích | Địa chỉ IP của máy |
| IP | IP nguồn, IP đích | Tên tài khoản đăng nhập website |
| Liên kết | MAC hoặc trường địa chỉ theo giao thức liên kết | Danh tính cố định của người dùng |
7. Quan sát trên máy: DNS và Network trong trình duyệt
Trên Windows, mở terminal và chạy lệnh dưới. Chú ý tên resolver trả lời và các dòng địa chỉ kết quả; đầu ra thật phụ thuộc mạng và thời điểm. Dòng “Non-authoritative answer” thường chỉ phản hồi không đến trực tiếp từ máy chủ có thẩm quyền cho tên đó, không tự có nghĩa kết quả là giả.
nslookup khoahoc.hocvietcode.com
Tiếp theo mở DevTools của trình duyệt, chọn Network rồi tải lại website. Chọn request document để đọc URL, method và status. Nếu bật cột Protocol, bạn có thể thấy h2 hoặc h3 theo kết nối thực tế; không tự ép một kết quả dự kiến. DevTools Network hiển thị hoạt động ở mức trình duyệt, không phải công cụ xem đầy đủ mọi frame Wi-Fi hoặc gói IP trên đường truyền.
8. Đọc thêm: các dịch vụ ứng dụng khác
SMTP dùng trong việc gửi/chuyển thư; IMAP và POP3 phục vụ các cách truy cập thư. SSH thường dùng để truy cập từ xa an toàn. FTP và Telnet có giá trị lịch sử và vẫn tồn tại ở một số môi trường, nhưng không nên làm lựa chọn mặc định để gửi thông tin nhạy cảm. SFTP hoạt động trên SSH và khác FTPS, vốn bảo vệ FTP bằng TLS. Chỉ cần nhận biết nhóm mục đích ở đây; chưa cần học thuộc mọi cổng dịch vụ.
Ghi nhớ sau bài học
- Phân tầng chia trách nhiệm, không yêu cầu mỗi thiết bị thực hiện đầy đủ mọi tầng.
- DHCP cung cấp cấu hình; DNS phân giải tên; HTTP trao đổi nội dung ứng dụng.
- DNS thường đi qua resolver và có cache; không phải mỗi lần đều hỏi root từ đầu.
- OSI là mô hình tham chiếu; TCP/IP có các cách trình bày bốn hoặc năm tầng.
- HTTP/3 dùng QUIC; không đồng nhất toàn bộ web với TCP.

