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

大龍的博客

常用鏈接

統計

最新評論

tcp_tw_recycle和tcp_timestamps導致connect失敗問題 --- 轉

 
   近來線上陸續出現了一些connect失敗的問題,經過分析試驗,最終確認和proc參數tcp_tw_recycle/tcp_timestamps相關;
1. 現象
    第一個現象:模塊A通過NAT網關訪問服務S成功,而模塊B通過NAT網關訪問服務S經常性出現connect失敗,抓包發現:服務S端已經收到了syn包,但沒有回復synack;另外,模塊A關閉了tcp timestamp,而模塊B開啟了tcp timestamp;
    第二個現象:不同主機上的模塊C(開啟timestamp),通過NAT網關(1個出口ip)訪問同一服務S,主機C1 connect成功,而主機C2 connect失敗;

2. 分析
    根據現象上述問題明顯和tcp timestmap有關;查看linux 2.6.32內核源碼,發現tcp_tw_recycle/tcp_timestamps都開啟的條件下,60s內同一源ip主機的socket connect請求中的timestamp必須是遞增的。
    源碼函數:tcp_v4_conn_request(),該函數是tcp層三次握手syn包的處理函數(服務端);
    源碼片段
       if (tmp_opt.saw_tstamp &&
            tcp_death_row.sysctl_tw_recycle &&
            (dst = inet_csk_route_req(sk, req)) != NULL &&
            (peer = rt_get_peer((struct rtable *)dst)) != NULL &&
            peer->v4daddr == saddr) {
            if (get_seconds() < peer->tcp_ts_stamp + TCP_PAWS_MSL &&
                (s32)(peer->tcp_ts - req->ts_recent) >
                            TCP_PAWS_WINDOW) {
                NET_INC_STATS_BH(sock_net(sk), LINUX_MIB_PAWSPASSIVEREJECTED);
                goto drop_and_release;
            }
        }
        tmp_opt.saw_tstamp:該socket支持tcp_timestamp
        sysctl_tw_recycle:本機系統開啟tcp_tw_recycle選項
        TCP_PAWS_MSL:60s,該條件判斷表示該源ip的上次tcp通訊發生在60s內
        TCP_PAWS_WINDOW:1,該條件判斷表示該源ip的上次tcp通訊的timestamp 大于 本次tcp


    分析:主機client1和 client2通過NAT網關(1個ip地址)訪問serverN,由于timestamp時間為系統啟動到當前的時間,因此,client1和 client2的timestamp不相同;根據上述syn包處理源碼,在tcp_tw_recycle和tcp_timestamps同時開啟的條件 下,timestamp大的主機訪問serverN成功,而timestmap小的主機訪問失敗;

    參數:/proc/sys/net/ipv4/tcp_timestamps - 控制timestamp選項開啟/關閉
          /proc/sys/net/ipv4/tcp_tw_recycle - 減少timewait socket釋放的超時時間

3. 解決方法
    echo 0 > /proc/sys/net/ipv4/tcp_tw_recycle;
    tcp_tw_recycle默認是關閉的,有不少服務器,為了提高性能,開啟了該選項;
    為了解決上述問題,個人建議關閉tcp_tw_recycle選項,而不是timestamp;因為 在tcp timestamp關閉的條件下,開啟tcp_tw_recycle是不起作用的;而tcp timestamp可以獨立開啟并起作用。
    源碼函數:  tcp_time_wait()
    源碼片段:
        if (tcp_death_row.sysctl_tw_recycle && tp->rx_opt.ts_recent_stamp)
            recycle_ok = icsk->icsk_af_ops->remember_stamp(sk);
        ......
       
        if (timeo < rto)
            timeo = rto;

        if (recycle_ok) {
            tw->tw_timeout = rto;
        } else {
            tw->tw_timeout = TCP_TIMEWAIT_LEN;
            if (state == TCP_TIME_WAIT)
                timeo = TCP_TIMEWAIT_LEN;
        }

        inet_twsk_schedule(tw, &tcp_death_row, timeo,
                   TCP_TIMEWAIT_LEN);

    timestamp和tw_recycle同時開啟的條件下,timewait狀態socket釋放的超時時間和rto相關;否則,超時時間為TCP_TIMEWAIT_LEN,即60s;

    內核說明文檔 對該參數的介紹如下
    tcp_tw_recycle - BOOLEAN
    Enable fast recycling TIME-WAIT sockets. Default value is 0.
    It should not be changed without advice/request of technical
    experts.

posted on 2013-02-17 18:58 大龍 閱讀(369) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   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>
            亚洲国产精品电影在线观看| 欧美激情在线播放| 国产一区二区精品久久91| 欧美久久久久久蜜桃| 男人的天堂成人在线| 久久久久.com| 免费在线欧美视频| 欧美国产日韩二区| 欧美午夜剧场| 国产欧美日韩综合精品二区| 国产精品亚洲综合| 韩日欧美一区二区| 日韩视频在线你懂得| 一区二区三区产品免费精品久久75 | 欧美日韩在线不卡| 国产精品免费电影| 激情五月***国产精品| 亚洲激情黄色| 亚洲少妇最新在线视频| 欧美一区二区三区四区在线| 你懂的一区二区| 9人人澡人人爽人人精品| 亚洲午夜精品| 欧美电影专区| 激情欧美一区二区| 亚洲男人的天堂在线| 久久一区二区三区国产精品| 亚洲国产日韩欧美| 亚洲欧美国产三级| 欧美大胆a视频| 国产亚洲a∨片在线观看| 亚洲精品九九| 久久综合久久综合久久| 一区二区三区四区五区在线| 久久综合久久综合九色| 国产农村妇女精品一二区| 99爱精品视频| 欧美成人一区二区三区| 午夜精品一区二区在线观看| 欧美日韩调教| 亚洲伦理久久| 欧美+日本+国产+在线a∨观看| 亚洲一区在线观看免费观看电影高清| 欧美大片91| 亚洲高清免费视频| 久久综合久色欧美综合狠狠| 亚洲香蕉伊综合在人在线视看| 欧美国产日韩一区二区在线观看| 伊人久久噜噜噜躁狠狠躁 | 狠狠色综合色区| 亚洲欧美国产一区二区三区| 亚洲国产一区二区三区a毛片| 久久久久久久久久久成人| 先锋影音国产一区| 欧美日韩亚洲一区二区| 亚洲国产欧美一区| 牛牛精品成人免费视频| 久久精品女人的天堂av| 国产亚洲午夜| 久久婷婷激情| 久久久久久久久蜜桃| 红桃视频国产精品| 能在线观看的日韩av| 久久久久国产精品厨房| 激情综合自拍| 欧美成人免费视频| 久久综合色天天久久综合图片| 在线观看视频欧美| 欧美高清在线一区| 欧美精品久久久久久久久老牛影院| 亚洲国产成人精品视频| 亚洲国产91| 欧美日本免费| 亚洲欧美一区二区视频| 亚洲综合二区| 狠色狠色综合久久| 亚洲国产精品黑人久久久| 欧美片在线观看| 午夜久久久久久久久久一区二区| 午夜精品99久久免费| 国产美女精品视频| 免费观看在线综合| 欧美激情麻豆| 欧美伊人久久大香线蕉综合69| 久久国产日韩欧美| 亚洲精品日韩欧美| 亚洲午夜在线观看视频在线| 国产一区二区三区黄| 亚洲高清影视| 国产欧美日韩精品a在线观看| 久久精品国产99国产精品| 久久亚洲美女| 亚洲欧美日韩国产一区二区三区 | 美女精品一区| 亚洲图片欧美午夜| 久久精品国产99精品国产亚洲性色 | 快she精品国产999| 欧美成人精品不卡视频在线观看| 一本色道久久综合亚洲二区三区| 亚洲午夜激情| 亚洲精品视频在线播放| 西西人体一区二区| 一区二区成人精品| 久久久噜噜噜久久人人看| 亚洲午夜久久久| 久久影视精品| 欧美一区成人| 一区二区三区免费观看| 国产小视频国产精品| 亚洲欧洲在线播放| **网站欧美大片在线观看| 亚洲天堂成人| 一区二区三区国产精品| 久久九九免费| 久久精品国产一区二区三区免费看 | 国产日韩精品一区二区| 亚洲成色www久久网站| 欧美在线精品一区| 美国十次了思思久久精品导航| 欧美一区二区三区四区在线观看地址| 女人香蕉久久**毛片精品| 久久久国产成人精品| 欧美午夜免费影院| 亚洲国产片色| 亚洲区一区二区三区| 久久久久久久网| 久久久精品国产一区二区三区| 国产精品国产亚洲精品看不卡15| 亚洲国产一区二区三区a毛片| 国内外成人在线| 欧美有码视频| 久久er精品视频| 国产农村妇女精品一二区| 亚洲一二三级电影| 亚洲欧美日韩在线不卡| 欧美日韩精品一区二区三区| 亚洲国产婷婷香蕉久久久久久| 亚洲激情综合| 欧美激情久久久久久| 亚洲狠狠丁香婷婷综合久久久| 亚洲激情在线视频| 欧美经典一区二区三区| 亚洲精品乱码视频| 中日韩午夜理伦电影免费| 欧美黄色一级视频| 亚洲免费观看高清完整版在线观看| 亚洲乱码国产乱码精品精| 欧美国产日韩一区二区| 亚洲精品在线一区二区| 中文亚洲欧美| 国产精品久久久久999| 亚洲一区高清| 美女主播精品视频一二三四| 在线精品视频一区二区三四| 麻豆国产精品va在线观看不卡 | 欧美国产日韩xxxxx| 亚洲人成欧美中文字幕| 欧美日韩一区二区三区视频| 亚洲一区二区三区色| 久久亚洲欧美| 亚洲人成小说网站色在线| 欧美日韩国产一区| 亚洲一区二区三区四区在线观看| 久久超碰97中文字幕| 黄页网站一区| 欧美日韩不卡合集视频| 亚洲一区国产| 欧美高清在线观看| 亚洲男女自偷自拍| 狠狠色狠狠色综合| 欧美日韩精品免费看 | 这里只有视频精品| 久久亚洲春色中文字幕| 亚洲免费观看高清在线观看| 国产精品久久久| 久久综合精品一区| 一区二区三区日韩欧美| 久久久亚洲综合| 亚洲一区二区三区欧美| 狠狠久久亚洲欧美| 欧美乱妇高清无乱码| 欧美一区二区三区视频在线 | 久久婷婷成人综合色| 亚洲免费观看在线观看| 久久久噜噜噜久久久| 亚洲网站在线观看| 在线日韩电影| 国产亚洲福利社区一区| 欧美日韩国产va另类| 久久午夜精品一区二区| 一区二区欧美精品| 亚洲高清视频在线| 久久综合影视| 午夜精品福利视频| 夜夜嗨av色综合久久久综合网| 狠狠爱综合网| 国产午夜精品理论片a级探花| 欧美日韩1234| 欧美国产日韩一区二区在线观看 | 亚洲精品一区二区在线|