ScholarGate
Trợ lý

Tầng Giao vận và Kiểm soát Tắc nghẽn

Tầng giao vận mở rộng việc truyền tải từ máy chủ đến máy chủ thành giao tiếp giữa các tiến trình, cung cấp cho các ứng dụng hoặc là luồng byte đáng tin cậy, có thứ tự, được kiểm soát tắc nghẽn (TCP) hoặc là các gói dữ liệu không kết nối, nhẹ (UDP), trong khi kiểm soát tắc nghẽn điều chỉnh tốc độ gửi để mạng dùng chung không bị sập.

Tìm chủ đề với PaperMindSắp ra mắtFind papers & topics
Tools & resources
Tải xuống bản trình chiếu
Learn & explore
VideoSắp ra mắt

Definition

Tầng giao vận là tầng giao thức cung cấp giao tiếp logic giữa các tiến trình ứng dụng chạy trên các máy chủ khác nhau, bổ sung các dịch vụ như ghép kênh, truyền tải đáng tin cậy, kiểm soát luồng và kiểm soát tắc nghẽn trên nền tảng truyền tải từ máy chủ đến máy chủ của tầng mạng.

Scope

Lĩnh vực này bao gồm các dịch vụ giao vận đầu cuối: ghép kênh và phân kênh dữ liệu đến các tiến trình ứng dụng, các nguyên tắc truyền dữ liệu đáng tin cậy qua mạng không đáng tin cậy (xác nhận, truyền lại, số thứ tự, cửa sổ trượt), Giao thức Điều khiển Truyền dẫn hướng kết nối và Giao thức Dữ liệu Người dùng không kết nối, cùng với lý thuyết và thực hành kiểm soát tắc nghẽn. Nó không bao gồm việc định tuyến các gói tin qua mạng (tầng mạng) và các giao thức ứng dụng sử dụng dịch vụ giao vận (tầng ứng dụng).

Sub-topics

Core questions

  • Tầng giao vận truyền dữ liệu đến tiến trình ứng dụng chính xác như thế nào thông qua ghép kênh và phân kênh?
  • Làm thế nào để xây dựng việc truyền tải đáng tin cậy, có thứ tự trên một mạng không đáng tin cậy, dễ mất mát?
  • Các cơ chế thiết lập kết nối, kiểm soát luồng và độ tin cậy của TCP hoạt động như thế nào?
  • Khi nào một ứng dụng nên sử dụng UDP thay vì TCP?
  • Kiểm soát tắc nghẽn phát hiện và phản ứng với tình trạng quá tải mạng như thế nào trong khi vẫn đảm bảo công bằng?

Key concepts

  • ghép kênh và phân kênh
  • cổng và socket
  • truyền dữ liệu đáng tin cậy
  • cửa sổ trượt, go-back-N, lặp lại chọn lọc
  • bắt tay ba bước của TCP
  • kiểm soát luồng
  • kiểm soát tắc nghẽn
  • tăng dần/giảm theo cấp số nhân (AIMD)
  • khởi động chậm và tránh tắc nghẽn
  • Giao thức Dữ liệu Người dùng (UDP)

Key theories

Reliable data transfer over an unreliable channel
Reliability is built from acknowledgments, retransmission timers, sequence numbers, and sliding-window protocols (go-back-N and selective repeat) that detect and recover from loss, duplication, and reordering despite an unreliable underlying network.
TCP congestion control
TCP infers congestion from packet loss and adjusts its sending window with additive-increase/multiplicative-decrease dynamics — slow start, congestion avoidance, and fast recovery — to probe for available bandwidth while backing off sharply on loss.
Connectionless versus connection-oriented transport
UDP offers a thin, connectionless service with no setup, reliability, or congestion control, minimizing delay and overhead, while TCP offers a connection-oriented, reliable, congestion-controlled byte stream; the choice trades latency and control for guarantees.

Clinical relevance

Hành vi của tầng giao vận định hình hiệu suất của hầu hết mọi ứng dụng mạng: TCP truyền tải web, email và truyền tệp một cách đáng tin cậy, trong khi UDP hỗ trợ các ứng dụng có độ trễ thấp như DNS, thoại và video thời gian thực, và nhiều trò chơi. Kiểm soát tắc nghẽn là yếu tố đã giúp Internet không bị sập dưới tải trọng kể từ cuối những năm 1980, và công việc đang tiếp diễn về các thuật toán như CUBIC và BBR cùng các giao thức như QUIC tiếp tục điều chỉnh sự cân bằng giữa độ trễ, thông lượng và công bằng.

History

TCP và IP ban đầu là một giao thức trong thiết kế Cerf-Kahn năm 1974 và sau đó được tách ra, với UDP (RFC 768, 1980) được thêm vào cho các ứng dụng chỉ cần dịch vụ gói dữ liệu cơ bản. Sau một loạt các sự cố tắc nghẽn trên Internet thời kỳ đầu, công trình năm 1988 của Van Jacobson đã giới thiệu các thuật toán khởi động chậm và tránh tắc nghẽn, những thuật toán này vẫn là nền tảng của kiểm soát tắc nghẽn TCP, được tinh chỉnh qua nhiều thập kỷ thành các biến thể như Reno, CUBIC và BBR.

Debates

Kiểm soát tắc nghẽn dựa trên mất mát so với dựa trên độ trễ và dựa trên mô hình
TCP cổ điển suy ra tắc nghẽn từ việc mất gói tin, điều này có thể làm giảm hiệu suất sử dụng các liên kết băng thông cao, độ trễ cao và phản ứng muộn, thúc đẩy các thuật toán dựa trên độ trễ và dựa trên mô hình như BBR; tranh luận vẫn tiếp diễn về sự công bằng và khả năng triển khai khi các thuật toán như vậy cùng tồn tại với các thuật toán dựa trên mất mát.

Key figures

  • Van Jacobson
  • Jon Postel
  • Vinton Cerf
  • Sally Floyd

Related topics

Seminal works

  • kurose2021
  • jacobson1988
  • rfc9293

Frequently asked questions

Khi nào tôi nên sử dụng UDP thay vì TCP?
Sử dụng UDP khi độ trễ thấp quan trọng hơn việc đảm bảo truyền tải và bạn có thể chấp nhận hoặc tự xử lý mất mát — ví dụ: thoại/video thời gian thực, truy vấn DNS hoặc trò chơi. Sử dụng TCP khi bạn cần truyền tải đáng tin cậy, có thứ tự và kiểm soát tắc nghẽn tích hợp, chẳng hạn như đối với các trang web, truyền tệp và email.
Kiểm soát tắc nghẽn thực sự làm gì?
Kiểm soát tắc nghẽn điều chỉnh tốc độ người gửi đưa dữ liệu vào mạng dựa trên các tín hiệu tắc nghẽn, thường là mất gói tin hoặc độ trễ. Bằng cách giảm tốc độ khi mạng bị quá tải và thăm dò dung lượng dự phòng khi khác, nó giữ cho lưu lượng tổng hợp gần với dung lượng của mạng và chia sẻ băng thông khá công bằng giữa các luồng.

Methods for this concept

Related concepts