Menu
CoddyTech

Cổng là gì

Bài học 10 trên 47 trong khóa học Mạng máy tính với terminal của Coddy.

Địa chỉ đưa yêu cầu của bạn đến đúng máy. Nhưng một máy có thể chạy cùng lúc một trang web, một cơ sở dữ liệu và một máy chủ thư. Cần có thứ gì đó cho biết yêu cầu dành cho chương trình nào.

Đó là cổng: một số từ 1 đến 65535 dùng để chọn chương trình. Địa chỉ là tòa nhà, còn cổng là cánh cửa.

Trong URL, cổng đứng sau dấu hai chấm:

curl -s http://127.0.0.1:9104/hello.txt
#                        ^^^^ cổng

Địa chỉ và cổng kết hợp với nhau xác định một đầu của cuộc giao tiếp. Cặp đó được gọi là socket. Khi bạn nghe nói máy chủ “mở một socket trên cổng 9104”, điều đó có nghĩa chính xác là cặp này.

Hai chương trình trên cùng một máy không thể cùng lắng nghe trên một cổng. Đây là nguyên nhân gây ra lỗi mà nhà phát triển nào rồi cũng gặp: địa chỉ đang được sử dụng.

challenge icon

Thử thách

Khó

Chứng minh cổng chọn chương trình bằng cách chạy hai máy chủ trên cùng một máy.

  1. Tạo hai thư mục, a và b
  2. Đặt một tệp i.txt vào mỗi thư mục: AAA trong a, BBB trong b
  3. Chạy máy chủ cho a trên cổng 9104 và cho b trên cổng 9105
  4. Lấy i.txt từ mỗi cổng, lấy từ cổng 9104 trước

Cùng địa chỉ, cùng tên tệp, khác cánh cửa:

AAA
BBB

(cd a && python3 -m http.server 9104 &) khởi chạy máy chủ cho một thư mục mà không thay đổi thư mục hiện tại của bạn.

Tự làm thử

Terminal
quiz iconTự kiểm tra

Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.

Tất cả bài học trong Mạng máy tính với terminal

Tự luyện tập: Playground Terminal