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

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉,開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            服務器的幾種異常終止

            Posted on 2010-12-27 16:39 S.l.e!ep.¢% 閱讀(520) 評論(0)  編輯 收藏 引用 所屬分類: epoll

            服務器的幾種異常終止

            作者: famdestiny ?時間: 2008-09-18 16:59:00
            1、在accept函數返回前連接夭折

            這種情況發生在TCP 3次握手剛好完成,服務器TCP將連接放入到已經建立好連接隊列中,此時客戶端給一個RST,接下來accept返回,不過這時accept返回的是ECONNECTABORT錯誤.這不是一個致命錯誤。

            2、服務器進程終止

            過程如下:

            a、kill掉服務進程,作為進程善后處理的部分,所有打開的文件描述符被關閉,這導致服務端TCP(注意"服務端"和"服務端TCP"是不同概念)發送FIN給客戶端,客戶端TCP響應以ACK。

            b、客戶端此時正阻塞在scanf函數(基于上篇中提到的客戶端模型),這導致客戶端不知道服務端TCP已經關閉連接。

            c、客戶端在scanf返回后調用write向服務端發數據,由于服務端已經被kill掉,所以服務端TCP會發送一個RST給客戶端TCP.

            d、客戶端在發送完數據后立即調用read讀取數據,由于有第一步的FIN,read立即返回0(表示EOF),然而客戶端希望的是收到剛才發送的數據而不是EOF。如果客戶端接著往服務端發數據,將誘發服務端TCP向服務端發送SIGPIPE信號,因為向接收到RST的套接口寫數據都會收到此信號.

            問題的本質在于客戶端同時處理兩個描述字--套接口和用戶輸入,程序被單純地阻塞在一個源上了。這個問題可以通過1、設置非阻塞模式。2、采用select以及epoll處理。

            3、服務器主機崩潰

            在客戶TCP發送數據后,由于接收不到ACK,它將試圖一直重傳,直到最后放棄,并返回給客戶進程一個出錯信息。ETIMEOUT表示沒有相應,EHOSTUNREACH表示路由器判定主機不可達。

            4、服務器崩潰后重啟

            由于服務端TCP丟失了以前的連接信息,這將導致服務端發送一個RST,而此時客戶端阻塞在read函數,這將導致返回一個ECONNECTRESET錯誤.

            5、服務器關機

            服務器關機時init進程會先發送SIGTERM(此信號可捕獲)給所有進程,再過一段時間發送SIGKILL(次信號不可捕獲)給仍然在運行的程序,這時就和服務器進程終止一樣了。

            ?

            久久99国产亚洲高清观看首页| 国内精品久久久久| 九九精品99久久久香蕉| 久久久久久精品免费看SSS| 亚洲国产另类久久久精品黑人| 看久久久久久a级毛片| 久久这里有精品视频| 成人久久精品一区二区三区| 亚洲精品乱码久久久久久按摩| 99久久无码一区人妻| 久久久久九国产精品| 精品国产日韩久久亚洲| 久久香蕉一级毛片| 久久伊人中文无码| 亚洲中文久久精品无码ww16| 青草影院天堂男人久久| 亚洲婷婷国产精品电影人久久| 久久久久久亚洲精品不卡| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区| 久久综合久久性久99毛片| 2021久久精品国产99国产精品| 欧美久久精品一级c片片| 国产精品中文久久久久久久| 国产精品VIDEOSSEX久久发布| 国产精品免费久久久久久久久| 精品国产乱码久久久久久郑州公司 | 无码人妻久久一区二区三区| 日本五月天婷久久网站| 久久久久亚洲精品无码蜜桃| 日韩精品久久无码人妻中文字幕| 久久精品国产免费观看三人同眠| 韩国无遮挡三级久久| 日产精品久久久久久久| 久久精品国产影库免费看| 国产精品久久久久久影院| 久久精品国产精品青草app| 久久狠狠色狠狠色综合| 久久精品无码一区二区日韩AV| 99久久国产免费福利| 日韩久久久久中文字幕人妻| 一本久久免费视频|