Tại sao TCP đợi ba ACK trùng lặp trước khi truyền lại nhanh?Tại sao TCP đợi ba ACK trùng lặp trước khi truyền lại nhanh?
Trả lời
RFC 2001 nói
Kể từ TCP không biết liệu một ACK trùng lặp là do mất phân khúc hay chỉ là một sắp xếp lại các phân đoạn, nó chờ đợi cho một số ít của ACK trùng lặp sẽ tiếp nhận. Giả sử rằng nếu có chỉ cần sắp xếp lại các phân đoạn, sẽ chỉ có một hoặc hai các ACK trùng lặp trước khi phân đoạn được sắp xếp lại được xử lý, sau đó sẽ sau đó tạo một ACK mới. Nếu ba hoặc nhiều ACK trùng lặp là nhận được liên tiếp, thì đó là dấu hiệu mạnh cho thấy một đoạn đã bị mất . TCP sau đó thực hiện truyền lại những gì dường như là phân đoạn thiếu , mà không cần đợi bộ đếm thời gian truyền lại đến hết hạn.
Lý do không thực hiện truyền lại cho đến khi bản sao thứ ba có vẻ là cho đến thời điểm đó có nhiều khả năng chỉ bị phân phối không đúng thứ tự và việc truyền lại không thực sự cần thiết.
- 1. Tại sao phải chờ SIFS trước khi gửi ACK?
- 2. Truyền lại TCP tiếp tục ngay cả sau khi cờ RST đặt lại xuất hiện
- 3. Đếm truyền lại TCP
- 4. Tại sao các thư trùng lặp được ghi lại
- 5. tải dữ liệu trong một TCP ack
- 6. Tắt ACK bị trì hoãn TCP
- 7. Tại sao chúng ta cần phải mã hóa base64 trước khi truyền?
- 8. Tại sao điều này cho vòng lặp dừng lại trước khi đạt giá trị dự định?
- 9. Tại sao không trùng lặp mã QR trông giống nhau?
- 10. Kỹ thuật nhanh nhất để xóa dữ liệu trùng lặp
- 11. Tại sao @OneToOne cho phép liên kết trùng lặp?
- 12. Tại sao mật khẩu lặp lại yếu?
- 13. Tại sao lặp lại php bằng tham chiếu trả về một bản ghi cuối cùng trùng lặp?
- 14. CAKeyFrameHãy trì hoãn sự chậm trễ trước khi lặp lại
- 15. git rebase và git push: không nhanh về phía trước, tại sao lại sử dụng?
- 16. TCP: Số seq/ack được tạo ra như thế nào?
- 17. Peek trước khi lặp lại một mảng trong PHP
- 18. Các quy tắc truyền lại cho TCP là gì?
- 19. yêu cầu lặp lại nhanh chóng loại
- 20. MySQL 5.5.24 - nhập trùng lặp trên UPDATE, khi không có trùng lặp thực
- 21. Tìm hàng trùng lặp/lặp lại trong phân cấp sql
- 22. Tại sao "ngã ba" cần thiết bởi socat khi kết nối với một máy chủ web?
- 23. Tại sao AddRange nhanh hơn sử dụng vòng lặp foreach?
- 24. Phát hiện trùng lặp trong Hàng đợi lưu trữ Azure
- 25. Loại bỏ trùng lặp nhanh trong numpy và python
- 26. Tại sao bạn cần một vòng lặp while trong khi chờ đợi một biến trạng
- 27. Tại sao việc lặp lại Danh sách nhanh hơn lập chỉ mục thông qua Danh sách?
- 28. Sau khi ghi vào một tệp, tại sao os.path.getsize vẫn trả lại kích thước trước đó?
- 29. Tại sao Ưu đãi DHCP và Ack được phát?
- 30. tại sao foreach là nhanh hơn so với vòng lặp for trong khi đọc dòng richtextbox