• <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>

            woaidongmao

            文章均收錄自他人博客,但不喜標題前加-[轉貼],因其丑陋,見諒!~
            隨筆 - 1469, 文章 - 0, 評論 - 661, 引用 - 0
            數據加載中……

            connect的兩種出錯情況

            分兩種情況討論:機器連接不上或者是程序沒有起來.


            首先來看關于socket和TCP協議的幾個基本概念.


            標示一個socket,需要四元組:本機IP地址,本機端口,對端IP地址,對端端口號.有了這四個元素,才能唯一的表示一個socket.其中,IP地址是定位一臺機器的,而端口號是定位機器上的一個進程的.當發起一個connect請求時,首先是根據對端的IP地址找到相應的機器,然后TCP連接數據被送往該機器的協議棧中,在協議棧中,查找是否有監聽所連接端口號的程序在運行,如果有,則將該連接請求放入連接隊列中.否則,將給發起連接的機器發送RST報文.


            回到開始談到的兩種情況.


            第一種情況,對端IP地址不能定位到一臺機器,也就是說,發出去的connect請求不會被任何協議棧接受(中間經過的路由器之類的不算).TCP在這種情況下,會嘗試幾次連接,如果都沒有連接成功,則返回超時錯誤.


            第二種情況,機器定位到了,但是沒有對應端口號的機器,則該請求會被協議棧接收,但是會返回一個RST報文.注意,這個RST報文是在對端收到三次握手的第一個報文的時候回復的.


            因此,兩種情況下,connect都會返回-1報錯,進一步的,如果要定位是哪一種錯誤,可以通過查看errno來判斷.


            man connect函數的結果告訴我們,分別是這兩種錯誤號:


            ETIMEDOUT
                          Timeout while attempting connection.  The server may be too busy to accept new connections.  Note that  for  IP
                          sockets the timeout may be very long when syncookies are enabled on the server.
            ECONNREFUSED
                          No-one listening on the remote address.

            posted on 2009-04-30 14:05 肥仔 閱讀(878) 評論(0)  編輯 收藏 引用 所屬分類: 網絡編程

            欧美亚洲国产精品久久蜜芽| 99热精品久久只有精品| 狠狠综合久久综合88亚洲| 囯产极品美女高潮无套久久久| 久久久久久久97| 久久99亚洲综合精品首页| 久久99精品国产麻豆宅宅| 品成人欧美大片久久国产欧美| 欧美日韩精品久久久免费观看| 久久亚洲私人国产精品vA| 精品国产热久久久福利| 久久综合香蕉国产蜜臀AV| 久久99精品久久久久久水蜜桃 | 久久久久一级精品亚洲国产成人综合AV区 | 久久成人18免费网站| 国产亚洲精品久久久久秋霞| 国产精品无码久久综合网| 青草国产精品久久久久久| 亚洲欧美国产日韩综合久久| 久久综合综合久久97色| 亚洲国产欧美国产综合久久| 久久男人中文字幕资源站| 伊人久久大香线蕉影院95| 国内精品久久人妻互换| 2021国产精品久久精品| 久久久久香蕉视频| 久久精品女人天堂AV麻| 99久久精品国产一区二区蜜芽 | 亚洲欧美日韩精品久久亚洲区 | 久久一本综合| 久久精品国产一区二区| 99久久无码一区人妻| 久久久精品免费国产四虎| 久久精品国产99久久无毒不卡| 亚洲AV无码久久| 久久久久久久人妻无码中文字幕爆 | 国产激情久久久久影院| 999久久久免费国产精品播放| 久久综合久久久| 久久艹国产| 国内精品伊人久久久久777|