Re: [ CN ] 作業二

作者: ckmShih (林檎技客 Ringo Geek)   2013-12-23 18:42:29
※ 引述《s88239 ()》之銘言:
: 1. 下面這種情形要怎麼處理?
: sender 4 5 6
: ↓ ↓ ↓
: loss arrive
: receiver __1__ __2__ __3__ _____
: 說明:packet #4 掉了,但是#5、#6都有收到
: $我個人推測:
: drop data #5
: flush
: recv data #6 _____ _____ __6__ _____
: send ack #6
: recv data #4 __4__ _____ __6__ _____
: send ack #4
: recv data #5 __4__ __5__ __6__ _____
: send ack #5
: ignr data #6
: send ack #6
: 每遇到out of bound就先drop一個packet再flush
#5 不必 drop 掉
因為沒收到 #4 故 buffer 還有一個空格
buffer 的空格不需要跟 packet 的順序對齊
: 2. 第二種情形?
: sender 4 5 6 7
: ↓ ↓ ↓ ↓
: loss recv recv drop
: receiver __1__ __2__ __3__ _____ __5__ __6__
: 這種情形是packet #4 掉了,#5、#6、#7都有收到
: #7 drop掉,可是這時後buffer有gap,不能flush吧?
: 那該怎麼處理?
同上所述
buffer 的空格不需要跟 packet 的順序對齊
所以沒有 gap 的問題 後來的補上
接收端重組 packet 可以另外開 array 來處理
不需要在 buffer 排序
: 3. sender跟receiver是否要寫在同一份檔案?
: 總共是否只要交兩份code?(transmitter、agent)
是的
TA

Links booklink

Contact Us: admin [ a t ] ucptt.com