2009年6月22日 星期一

TCP sliding window

TCP sliding window每一個ack中間可以送多少byte,就是windows size的意思

假設有10,000byte的檔案要送,windows size是4000,送端TCP可以一次送4000 byte,然後收端再給一個ack確認,這4,000個byte用一個或多個packet來送都可以,若4,000 byte送出 ack正確,則可以把window往下移個4,000 byte,就好像窗戶在移動一樣

window size是收送同步的,送端會跟收端會議定一個數值,而且因需要而變動,所以是動態的當收端告訴送端window size=0 時,代表要送端不要再送了,送端會等到收到另一個非0的window size後才會再繼續送

若線路壅塞,代表送端送出的資料要等比較久才會收到ACK,送端在收到正確ack才會再送下面的資料,所以傳送速度自然就會便慢了

TCP Explicit Congestion Notification
在收送兩端的中間的router再偵測到網路壅塞時可以發出ECN給兩端的主機,通知他們網路即將發生阻塞,(我相信用TCP的ECN通知後,要不要做處理應該事APP的事情,在router端只負責告知)

TCP MSS Adjustment
在TCP的SYN裡會有TCP的最大size資訊,所以在3-way handshaking完成後TCP MSS已經固定這個功能是偵測TCP SYN內容,將TCP MSS做修改以確保兩端所收送的風包在中間的router可以被處理在收送兩端initial TCP時,預設會參考自己設定的MTU,扣掉3,2 層的header後當作TCP的
MSSTCP MSS的值是扣掉TCP header的數字

BGP conditional map
在BGP route產生時,通常用network or aggregate方式將BGP route放進BGP中,但這兩個方式必須有相對應的IGP或必須存在componet route,在BGP做aggregate時,會將小網段summary成大網段,但是若在這個大網段中仍然想要有specific route時可以利用這個指令將某些route放進BGP table中,通常這些例外的route會比原本大網段的prefix來的小

另外這個指令只要match某種條件就可以放bgp route,不再受到IGP才能放或aggregate的限制
BGP community 可以有很多組嗎? 可不可以transit AS ?

沒有留言: