天天看點

大廠高頻網絡面試題之tcp停止等待協定的優化(滑動視窗與累積确認)tcp停止等待協定的優化(滑動視窗與累積确認)

tcp停止等待協定的優化(滑動視窗與累積确認)

一、停止等待協定的優缺點

優點: 可靠。

缺點: 信道使用率低,即一個資料包得等到确認才能接着往下發。

大廠高頻網絡面試題之tcp停止等待協定的優化(滑動視窗與累積确認)tcp停止等待協定的優化(滑動視窗與累積确認)

信道使用率: 即: 資料包發送時間 / (資料包發送時間+等待确認時間+确認包接收時間)

大廠高頻網絡面試題之tcp停止等待協定的優化(滑動視窗與累積确認)tcp停止等待協定的優化(滑動視窗與累積确認)

二、如何優化?

  想要提升信道使用率,由于"等待确認時間" 跟 "确認包接受時間"是一定的,是以,我們隻有增大資料包的發送時間,即無間斷的發送一定量的資料包,就是我們的資料包不一個一個等,這也引出了我們的滑動視窗(連續的ARQ協定)了。

滑動視窗與累積确認:

1、tcp在第一次連接配接會跟發送方會跟接收方确認一個視窗的大小,即資料的發送與接受緩存區。

2、如下圖,滑動視窗的值為5,即一次有5個資料包可以連續發送;當B計算機累積收到連續5個資料包時,向A計算機發送一個累積确認信号5(“我已經收到5個包啦,快點,下一波!”),緊接着A的滑動視窗向後滑動5格(“下一波兄弟進入備戰區!”),即之前發過的咱不管了也不備份在緩存區了。緊接着A計算機發送6、7、8、9、10這些資料包。

大廠高頻網絡面試題之tcp停止等待協定的優化(滑動視窗與累積确認)tcp停止等待協定的優化(滑動視窗與累積确認)

3、假如B計算機隻收到了1、2、4資料包,3資料包丢失了,那麼就會向A資料包發送确認信号3,告訴A計算機從資料包3開始重傳(這裡有個壞處,就是加入我們隻丢失了資料包2,會導緻A計算機的大量重傳)。

繼續閱讀