• <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.¢% 閱讀(521) 評論(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(次信號不可捕獲)給仍然在運行的程序,這時就和服務器進程終止一樣了。

            ?

            国产精品久久久久久五月尺| 亚洲国产精品综合久久一线| 无码人妻久久一区二区三区蜜桃| 久久久久亚洲?V成人无码| 无码人妻久久一区二区三区免费 | 久久精品国产亚洲AV无码偷窥| 77777亚洲午夜久久多喷| 久久久久国色AV免费看图片| 欧美久久综合九色综合| 日韩精品国产自在久久现线拍| 青青草国产97免久久费观看| 99久久精品国产一区二区| 亚洲国产日韩欧美综合久久| 久久亚洲私人国产精品| 久久久久久久久波多野高潮| 亚洲欧美国产精品专区久久| 国产精品久久一区二区三区| 国内精品伊人久久久久妇| 99久久免费国产精品| AA级片免费看视频久久| 日本一区精品久久久久影院| 亚洲香蕉网久久综合影视| 亚洲国产成人精品女人久久久 | 88久久精品无码一区二区毛片| 久久精品国产日本波多野结衣 | 精品综合久久久久久97| 精品久久久久国产免费| 久久久久亚洲精品男人的天堂| 久久99精品国产麻豆婷婷| 日本强好片久久久久久AAA| 久久久久久久久66精品片| 久久热这里只有精品在线观看| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 | 69SEX久久精品国产麻豆| 亚洲精品tv久久久久久久久| 日本五月天婷久久网站| 亚洲午夜久久久| 偷窥少妇久久久久久久久| 亚洲精品国产综合久久一线| 久久午夜免费视频| 亚洲愉拍99热成人精品热久久|