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

大龍的博客

常用鏈接

統(tǒng)計(jì)

最新評(píng)論

TCP/IP協(xié)議棧中的TimeStamp選項(xiàng) ---轉(zhuǎn)

TCP/IP協(xié)議棧中的TimeStamp選項(xiàng) TCP應(yīng)該是以太網(wǎng)協(xié)議族中被應(yīng)用最為廣泛的協(xié)議之一,這里就聊一聊TCP協(xié)議中的TimeStamp選項(xiàng)。這個(gè)選項(xiàng)是由RFC 1323引入的,該C建議提交于1992年,到今天已經(jīng)足足有20個(gè)年頭。不過(guò)相信大部分程序猿對(duì)這個(gè)建議還是相當(dāng)陌生。 要理解為啥需要用TimeStamp選項(xiàng),還需要從TCP協(xié)議的幾個(gè)基本設(shè)計(jì)說(shuō)起。 TCP協(xié)議的幾個(gè)設(shè)計(jì)初衷,以及引發(fā)的問(wèn)題: 1. 協(xié)議規(guī)定收端不需要響應(yīng)每一個(gè)收到的數(shù)據(jù)報(bào)文,只需要收到N個(gè)報(bào)文后,向發(fā)端回復(fù)一個(gè)ack報(bào)文即可。 這樣的規(guī)定是為了提高通訊的效率,但是也引入了幾個(gè)問(wèn)題: A. 發(fā)端發(fā)出報(bào)文后,到底多久能夠收到ack是不確定的。 B. 萬(wàn)一ack報(bào)文丟失了,判斷需要重發(fā)的timeout時(shí)間也很難確定。 2. TCP報(bào)文中,標(biāo)示Sequence號(hào)的地址長(zhǎng)度為32位。 這就限制了發(fā)端最多一次發(fā)送2^30長(zhǎng)度的數(shù)據(jù),就必須等待ack信號(hào)。為啥呢?在這個(gè)鏈接里有一些詳細(xì)的討論。 然而對(duì)于超高速以太網(wǎng)(1000M以至于10G),這樣會(huì)影響TCP連接的轉(zhuǎn)發(fā)效率。 為解決上面提到的問(wèn)題,TimeStamp選項(xiàng)主要有兩個(gè)用途: 1. 測(cè)量TCP連接兩端通訊的延遲(Round Trip Time Measurement) 有了RTTM機(jī)制,TCP的兩端可以很容易的判斷出線路上報(bào)文的延遲情況,從而制定出一個(gè)優(yōu)化的發(fā)包間隔和報(bào)文TimeOut時(shí)間,從而解決了第一個(gè)問(wèn)題。 2. 處理Sequence號(hào)反轉(zhuǎn)的問(wèn)題(Protect Against Wrapped Sequence Numbers)。 TCP收端收到一個(gè)數(shù)據(jù)報(bào)文后,會(huì)先比較本次收到報(bào)文的TimeStamp和上次收到報(bào)文的TimeStamp。如果本次的比較新,那么可以直接判斷本次收到的報(bào)文是新的報(bào)文,不需要進(jìn)行復(fù)雜的Sequence Number Window Scale計(jì)算,從而解決了第二個(gè)問(wèn)題。 然而,RFC1323建議還存在一些隱患。 建議中定義TimeStamp增加的間隔可以使1ms-1s。如果設(shè)備按照1ms的速度增加TimeStamp,那么只要一個(gè)TCP連接連續(xù)24.8天(1ms*2^31)沒(méi)有通訊,再發(fā)送報(bào)文,收端比較本次報(bào)文和上次報(bào)文TimeStamp的動(dòng)作就會(huì)出錯(cuò)。(問(wèn)題1) (注:TCP協(xié)議中并沒(méi)有定義KeepAlive。如果應(yīng)用層代碼不定義超時(shí)機(jī)制,TCP連接就永遠(yuǎn)不會(huì)中斷,所以連續(xù)24.8天不通訊的情況是卻有可能發(fā)生的。) 引用Linux相關(guān)代碼:((s32)(tp->rx_opt.rcv_tsval - tp->rx_opt.ts_recent) < 0) 比如 tp->rx_opt.rcv_tsval = 0x80000020, tp->rx_opt.ts_recent = 0x10 ((s32)(tp->rx_opt.rcv_tsval - tp->rx_opt.ts_recent) = (s32)0x80000010,是一個(gè)負(fù)數(shù),必然小于0。 如果解決問(wèn)題1呢? 已知按照RFC1323的規(guī)定,按照最快TimeStamp增加的速度,也需要24.8天TImeStamp才有可能發(fā)生反轉(zhuǎn)。 如果((s32)(tp->rx_opt.rcv_tsval - tp->rx_opt.ts_recent) < 0)判斷成立,還可以再用本地收到報(bào)文的本地TimeStamp減去上一次收到報(bào)文的本地TimeStamp。如果時(shí)間大于24.8天,那么就是TimeStamp發(fā)生了反轉(zhuǎn);否則就不是反轉(zhuǎn)的情況。這樣做是不是就萬(wàn)無(wú)一失了呢?不一定! 別忘了本地TimeStamp的計(jì)數(shù)器也是個(gè)32位,也可能會(huì)翻轉(zhuǎn)的。(問(wèn)題2) 舉個(gè)極端的例子:假設(shè)TCP兩端設(shè)備的TimeStamp增加間隔不一致,A為1ms,B為10ms。TCP連接連續(xù)248天沒(méi)有通訊;這個(gè)時(shí)候B向A發(fā)送了一個(gè)數(shù)據(jù)報(bào)文。 此時(shí)B發(fā)送給A的TCP報(bào)文中的TimeStamp,正好發(fā)生了翻轉(zhuǎn)。然而由于A的計(jì)數(shù)器是每1ms加一的,248天時(shí)間,A的計(jì)數(shù)器已經(jīng)歸零過(guò)5次了。這時(shí)候再用本地TimeStamp做判斷還是錯(cuò)的。 比較保險(xiǎn)的做法是: 如果TCP連接的速度不那么快(2^32/s),本地TimeStamp用最大間隔時(shí)間1S。從而規(guī)避了(問(wèn)題2)。 如果TCP連接速度非常快,1S的TimeStamp間隔就有些不合時(shí)宜了,可以選小一級(jí),如100ms。如果這時(shí)候還會(huì)發(fā)生連續(xù)24800天(為啥是24800天呢)不通訊的情況,除了罵娘以外,我也沒(méi)辦法了。

posted on 2013-02-18 11:32 大龍 閱讀(2660) 評(píng)論(0)  編輯 收藏 引用


只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問(wèn)   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <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在线观看免费视频精品观看| 伊人久久综合97精品| 国产一级一区二区| 国产永久精品大片wwwapp| 国产一区二区三区久久久| 国产综合亚洲精品一区二| 在线观看欧美日韩国产| 亚洲在线视频免费观看| 香蕉久久国产| 久久精品亚洲一区二区三区浴池| 久久色中文字幕| 亚洲国产精品www| 亚洲日韩欧美视频一区| 正在播放亚洲| 久久久亚洲欧洲日产国码αv| 免费人成精品欧美精品| 欧美日韩久久不卡| 国产亚洲一级| 99re66热这里只有精品4| 性做久久久久久久免费看| 麻豆成人综合网| 一本色道久久综合狠狠躁篇怎么玩 | 免费在线日韩av| 日韩视频―中文字幕| 久久精品国产第一区二区三区| 欧美电影在线观看| 国产午夜精品美女毛片视频| 一本色道久久综合亚洲精品高清| 久久久国产91| 亚洲深夜av| 欧美另类99xxxxx| 狠狠色狠狠色综合人人| 亚洲一区激情| 亚洲国产日韩欧美| 久久久一区二区| 国产欧美日韩免费| 一区二区三区高清在线观看| 老司机一区二区| 亚洲女爱视频在线| 欧美三区美女| 一区二区成人精品| 欧美国产日韩xxxxx| 欧美一区二区三区在线观看| 国产精品va在线| 国产精品99久久久久久宅男| 亚洲国产91精品在线观看| 久久久久久久久岛国免费| 国产欧美日韩视频在线观看 | 欧美四级电影网站| 91久久国产精品91久久性色| 久久综合99re88久久爱| 性色一区二区三区| 国产日韩欧美亚洲| 久久成人免费网| 亚洲欧美综合另类中字| 国产精品三上| 欧美影院成年免费版| 亚洲一区三区电影在线观看| 国产精品天天看| 久久丁香综合五月国产三级网站| 国产精品卡一卡二| 亚洲自拍三区| 亚洲精品在线电影| 欧美日韩国产综合新一区| 宅男在线国产精品| 亚洲精品日韩精品| 欧美日韩一二三四五区| 亚洲一区欧美| 午夜精品国产更新| 黄色欧美成人| 欧美激情四色| 欧美日韩色综合| 午夜精品一区二区三区在线| 亚洲先锋成人| 激情久久一区| 亚洲伦理久久| 国产精品一二三四| 久久亚洲午夜电影| 美女主播精品视频一二三四| 99re6这里只有精品| 亚洲少妇自拍| 玉米视频成人免费看| 亚洲日本理论电影| 国产乱人伦精品一区二区| 男女激情久久| 欧美性猛交xxxx免费看久久久| 久久久久久久激情视频| 毛片精品免费在线观看| 亚洲亚洲精品在线观看| 久久精品成人一区二区三区| 亚洲人成绝费网站色www| 一级成人国产| 亚洲国产一区二区三区在线播| 日韩一区二区精品视频| 国产亚洲欧美另类中文| 91久久精品视频| 国产麻豆综合| 亚洲精品视频在线看| 国产日韩在线一区| 日韩视频永久免费观看| 在线成人av网站| 一区二区欧美在线观看| 激情综合久久| 亚洲综合二区| 一本色道久久综合亚洲精品不 | 国产在线精品二区| 亚洲麻豆一区| 亚洲动漫精品| 欧美在线视频一区| 亚洲欧美日韩爽爽影院| 欧美激情1区2区| 毛片av中文字幕一区二区| 国产精品视频区| av成人福利| 99精品国产高清一区二区 | 免费观看日韩| 久久免费视频在线| 国产精品丝袜久久久久久app| 亚洲经典自拍| 亚洲国产一成人久久精品| 欧美一区二区网站| 欧美日韩在线免费视频| 久久在线精品| 国产欧美精品在线播放| 一本色道久久综合亚洲精品婷婷 | 小黄鸭精品密入口导航| 欧美激情久久久| 欧美大片免费看| 在线观看视频日韩| 久久精品人人做人人爽电影蜜月| 欧美一级视频精品观看| 国产精品尤物| 先锋影音一区二区三区| 久久精品99无色码中文字幕 | 免费看精品久久片| 欧美wwwwww| 亚洲人成小说网站色在线| 巨乳诱惑日韩免费av| 欧美激情亚洲| 亚洲精品女av网站| 欧美黑人多人双交| 亚洲精品社区| 亚洲一区综合| 国产日本欧美一区二区三区| 欧美一区二区三区在线看 | 在线观看久久av| 久久亚洲综合网| 欧美激情影音先锋| 一本色道久久综合一区| 国产精品www.| 久久成人精品电影| 欧美黑人多人双交| 亚洲深爱激情| 国产欧美日韩免费看aⅴ视频| 欧美在线亚洲在线| 亚洲第一视频| 亚洲欧美日韩精品一区二区| 国产午夜精品理论片a级大结局 | 欧美大片免费观看| 一本高清dvd不卡在线观看| 欧美一级播放| 在线观看国产日韩| 欧美日韩精品不卡| 亚洲欧美一级二级三级| 欧美电影在线观看| 亚洲影院一区| 亚洲第一在线| 国产精品免费视频观看| 久久亚洲精品伦理| 亚洲网站在线观看| 欧美丰满高潮xxxx喷水动漫| 亚洲男人的天堂在线观看| 尤物99国产成人精品视频| 欧美性久久久| 老司机午夜精品视频| 亚洲午夜未删减在线观看| 欧美va亚洲va国产综合| 欧美一区二区在线| 99re热这里只有精品视频| 国产在线欧美日韩| 欧美日韩一区二区高清| 久久天天狠狠| 欧美在线free| 一区二区高清视频| 国产精品天天看| 亚洲资源av| 亚洲日本中文| 欧美成人国产| 久久久999精品免费| 亚洲免费网站| 中文欧美字幕免费| 亚洲人精品午夜| 在线欧美亚洲| 国产在线精品自拍| 国产欧美在线看| 国产精品午夜av在线| 欧美午夜一区二区福利视频| 欧美精品免费视频| 欧美成人国产va精品日本一级|