青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

loop_in_codes

低調(diào)做技術(shù)__歡迎移步我的獨(dú)立博客 codemaro.com 微博 kevinlynx

tcp要點(diǎn)學(xué)習(xí)-數(shù)據(jù)發(fā)送一

Author : Kevin Lynx

1. 什么是delayed ack algorithm
   delayed ack algorithm也就是<TCP/IP詳解>中所謂的"經(jīng)受時(shí)延的確認(rèn)"(翻譯得真饒舌 = =||)。在RFC1122中提到delayed ack
   的概念:
  

  "
      A host that is receiving a stream of TCP data segments can
      increase efficiency 
in both the Internet and the hosts by
      sending fewer than one ACK (acknowledgment) segment per data
      segment received; 
this is known as a "delayed ACK" [TCP:5].
    
"


   我在之前提到過,TCP在收到每一個(gè)數(shù)據(jù)包時(shí),都會(huì)發(fā)送一個(gè)ACK報(bào)文給對(duì)方,用以告訴對(duì)方"我接收到你剛才發(fā)送的數(shù)據(jù)了"。并
   且會(huì)在報(bào)文的確認(rèn)號(hào)字段中標(biāo)志希望接收到的數(shù)據(jù)包。

   但是,如你所想,如果為每一個(gè)接收到的報(bào)文都發(fā)送一個(gè)ACK報(bào)文,那將會(huì)增加網(wǎng)絡(luò)的負(fù)擔(dān)。于是,為了解決這個(gè)問題,delayed
   ack被提出。也就是說,實(shí)現(xiàn)了delayed ack的TCP,并不見得會(huì)對(duì)每一個(gè)接收到的數(shù)據(jù)包發(fā)送ACK確認(rèn)報(bào)文。

   實(shí)際情況是,TCP延遲發(fā)送這個(gè)ACK。延遲多久?<TCP/IP詳解>中說的是200ms,在RFC1122中說的則是500ms。delayed ack有時(shí)候
   還會(huì)附加到數(shù)據(jù)報(bào)文段一起發(fā)送,如果在延遲時(shí)間內(nèi)有報(bào)文段要發(fā)送的話,如果沒有,那么當(dāng)延遲時(shí)間到時(shí),就單獨(dú)發(fā)送ACK。

   在另一份文檔中,作者講到delayed ack的好處:
   a) to avoid the silly window syndrome;
   b) to allow ACKs to piggyback on a reply frame if one is ready to go when the stack decides to do the ACK;
   c) to allow the stack to send one ACK for several frames, if those frames arrive within the delay period.

   a) 所謂的糊涂窗口綜合癥(別人都這樣翻譯的,似乎有點(diǎn)搞笑:D)
   b) 將ACK與將要發(fā)送的數(shù)據(jù)報(bào)文一起發(fā)送
   c) 一個(gè)ack確認(rèn)多個(gè)報(bào)文段,如果這幾個(gè)報(bào)文段在延遲時(shí)間內(nèi)到達(dá)

2. 什么是Nagle algoritm ?
   簡而言之,nagle算法主要目的是減少網(wǎng)絡(luò)流量,當(dāng)你發(fā)送的數(shù)據(jù)包太小時(shí),TCP并不立即發(fā)送該數(shù)據(jù)包,而是緩存起來直到數(shù)據(jù)包
   到達(dá)一定大小后才發(fā)送。(improving the efficiency of TCP/IP networks by reducing the number of packets that need to
   be sent over the network.)

   關(guān)于這個(gè)算法,我覺得wikipedia上講的比較好。具體點(diǎn)說,當(dāng)上層提交數(shù)據(jù)給TCP時(shí),TCP覺得你的數(shù)據(jù)太小了(套用一般的例子,
   如果你要發(fā)送1一個(gè)字節(jié)的數(shù)據(jù),當(dāng)附加上TCP和IP頭后,數(shù)據(jù)包通常就會(huì)增加到41字節(jié),那么這顯然是低效的),就緩存你的數(shù)據(jù),
   當(dāng)數(shù)據(jù)緩存到一定長度后,如果之前發(fā)送的數(shù)據(jù)得到了ACK確認(rèn)且接收方有足夠空間容納數(shù)據(jù),就發(fā)送這些數(shù)據(jù),否則繼續(xù)等待。

   wikipedia上給了一段nagle的偽代碼:

if there is new data to send
     
if the window size >= MSS and available data is >= MSS
       send complete MSS segment now
     
else
       
if there is unconfirmed data still in the pipe
         enqueue data 
in the buffer until an acknowledge is received
       
else
         send data immediately
       end 
if
     end 
if
   end 
if 

   
   TCP socket提供了關(guān)閉nagle算法的接口,你可以通過TCP_NODELAY選項(xiàng)決定是否開啟該算法。不過MSDN上建議不要關(guān)閉此算法。如果
   你發(fā)送的數(shù)據(jù)不至于很小的話(<40byte),我也不建議你關(guān)閉。

posted on 2008-05-22 15:42 Kevin Lynx 閱讀(3161) 評(píng)論(1)  編輯 收藏 引用 所屬分類: network

評(píng)論

# re: tcp要點(diǎn)學(xué)習(xí)-數(shù)據(jù)發(fā)送一[未登錄] 2012-06-06 16:42 春秋十二月

交互式程序如telnet和rlogin是關(guān)閉nagle算法的典型應(yīng)用  回復(fù)  更多評(píng)論   

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲精品视频在线看| 亚洲区免费影片| 午夜久久黄色| 国产亚洲毛片在线| 久久久视频精品| 久久免费少妇高潮久久精品99| 久久资源av| 欧美成人日韩| 亚洲天堂av图片| 午夜精品久久久久久久男人的天堂| 国产一二三精品| 欧美激情1区2区| 欧美视频免费| 欧美一区二区日韩一区二区| 欧美激情一区在线| 欧美视频免费在线| 久久人人97超碰精品888| 亚洲伦理久久| 国产午夜久久久久| 亚洲第一页中文字幕| 欧美色图一区二区三区| 久久精品国产久精国产一老狼 | 91久久国产自产拍夜夜嗨| 亚洲欧洲久久| 国产女主播一区| 亚洲第一在线综合网站| 欧美日韩久久久久久| 久久精品在这里| 欧美激情第1页| 久久av红桃一区二区小说| 欧美freesex8一10精品| 亚洲在线观看免费视频| 久久久久久久久久久久久女国产乱| 日韩一区二区久久| 欧美一区网站| 国产精品久久网站| 欧美成人精品在线播放| 国产精品久久久久91| 美日韩精品免费| 国产精品福利在线观看| 免费毛片一区二区三区久久久| 欧美怡红院视频一区二区三区| 日韩一区二区精品在线观看| 久久福利影视| 亚洲一区二区少妇| 老巨人导航500精品| 性视频1819p久久| 在线午夜精品| 欧美乱大交xxxxx| 99视频在线观看一区三区| 欧美在线不卡视频| 亚洲天堂男人| 麻豆av一区二区三区久久| 欧美一区二区性| 欧美精品一区二区三区在线看午夜 | 亚洲国产高清高潮精品美女| 亚洲午夜激情网站| 亚洲精品视频免费| 久久精品123| 亚洲欧美视频在线| 欧美激情中文字幕乱码免费| 久久一区二区三区国产精品 | 亚洲欧洲日产国码二区| 一区二区三区久久精品| 亚洲国产小视频| 欧美在线关看| 亚洲女人小视频在线观看| 欧美国产成人在线| 六月婷婷一区| 国产日韩欧美在线视频观看| 一区二区动漫| 欧美日韩精品二区| 欧美制服第一页| 欧美视频中文在线看| 亚洲国产黄色片| 在线看片第一页欧美| 欧美一乱一性一交一视频| 亚洲欧美一区在线| 欧美四级剧情无删版影片| 午夜国产精品影院在线观看| 欧美精品在线一区| 亚洲国产精品一区二区第四页av| 狠狠色狠狠色综合日日五| 亚洲欧美欧美一区二区三区| 亚洲男人影院| 欧美亚州韩日在线看免费版国语版| 欧美1区免费| 永久免费精品影视网站| 久久国产视频网| 久久久久久亚洲精品杨幂换脸| 国产美女精品人人做人人爽| 中文av一区特黄| 亚洲在线视频| 亚洲国产精品悠悠久久琪琪| 亚洲电影免费观看高清完整版| 久久久久久久久久码影片| 久久久噜噜噜久久人人看| 国产欧美一区二区白浆黑人| 亚洲一线二线三线久久久| 亚洲欧美成人在线| 国产精品高潮久久| 亚洲伊人一本大道中文字幕| 欧美午夜免费电影| 亚洲电影免费观看高清| 亚洲欧洲三级| 欧美激情精品久久久久久变态| 亚洲高清不卡一区| 欧美视频在线一区| 亚洲午夜一级| 先锋影音久久久| 国产网站欧美日韩免费精品在线观看| 午夜伦理片一区| 久久欧美中文字幕| 在线日韩一区二区| 你懂的国产精品| 亚洲精品视频中文字幕| 中文国产一区| 国产精品区一区二区三区| 亚洲欧美视频一区| 久久综合狠狠综合久久综合88| 国产欧美日韩精品在线| 久久精品国亚洲| 欧美jizz19性欧美| 日韩香蕉视频| 欧美午夜免费| 欧美一区二视频在线免费观看| 一本大道久久a久久精二百| 欧美视频中文一区二区三区在线观看| 亚洲一区在线视频| 久久免费午夜影院| 亚洲欧洲一区二区三区在线观看| 欧美人与性动交cc0o| 宅男精品视频| 久久婷婷综合激情| 亚洲精品激情| 国产精品久久久久久久久借妻 | 一区二区三区四区蜜桃| 欧美午夜免费影院| 欧美在线视频免费播放| 欧美国产亚洲另类动漫| 一区二区三区精密机械公司| 国产精品综合久久久| 久久九九热免费视频| 91久久久亚洲精品| 午夜一级久久| 在线精品国产欧美| 欧美日韩免费看| 欧美一区二区三区婷婷月色| 欧美福利视频| 亚洲综合国产精品| 国产一区二区三区久久精品| 牛夜精品久久久久久久99黑人| 亚洲免费观看| 久久久欧美精品| 一区二区三区欧美日韩| 国产亚洲欧美一区二区三区| 母乳一区在线观看| 亚洲综合第一页| 欧美激情中文字幕乱码免费| 怡红院精品视频| 欧美日韩一区三区四区| 久久国产一区| 日韩视频在线一区二区| 久久免费视频一区| 亚洲天堂男人| 亚洲高清免费| 国产精品亚洲成人| 女人香蕉久久**毛片精品| 亚洲一区国产一区| 亚洲国产99| 国产精品久久久一区麻豆最新章节| 午夜精品久久久久久久99黑人| 亚洲成人在线网| 欧美一区二区三区视频免费播放| 亚洲欧洲综合另类| 国产一区二区福利| 欧美日韩国产一区二区三区| 久久精品首页| 亚洲视频网在线直播| 欧美激情性爽国产精品17p| 欧美一区网站| 国产麻豆精品theporn| 欧美高清你懂得| 久久精品国产免费| 亚洲少妇最新在线视频| 亚洲第一天堂av| 久久综合亚州| 欧美一区二区三区精品电影| 亚洲免费观看高清在线观看| 黑人极品videos精品欧美裸| 国产精品超碰97尤物18| 欧美成人精品激情在线观看| 欧美一区二区三区四区在线观看| 在线视频一区观看| 亚洲人在线视频| 你懂的网址国产 欧美| 欧美制服丝袜第一页| 亚洲午夜精品一区二区| 亚洲精品日韩激情在线电影| 久久电影一区|