TCP流量控制

1、流量控制
所謂的流量控制就是讓發送方的發送速率不要太快,讓接收方來得及接受。利用滑動窗口機制可以很方便的在TCP連接上實現對發送方的流量控制。TCP的窗口單位是字節,不是報文段,發送方的發送窗口不能超過接收方給出的接收窗口的數值。
- 發送方的發送窗口不可以大於接收方發回的窗口大小
2、Nagle算法
TCP的數據傳輸分爲交互數據流和成塊數據流,交互數據流一般是一些交互式應用程序的命令,所以這些數據很小,而考慮到TCP報頭和IP報頭的總和就有40字節,如果數據量很小的話,那麼網絡的利用效率就較低。
數據傳輸使用Nagle算法,Nagle算法很簡單,就是規定一個TCP連接最多只能有一個未被確認的未完成的小分組。在該分組的確認到達之前不能發送其他的小分組。
然而Nagle算法並不是所有場合都需要開啓,對於一些需要快速響應,對延時敏感的應用,
比如窗口程序,鼠標響應,一般而言需要關閉Nagle。Socket API用戶可以通過套接口
選項TCP_NODELAY來關閉該算法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章