<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > UNIX網(wǎng)絡(luò)編程――產(chǎn)生RST

          UNIX網(wǎng)絡(luò)編程――產(chǎn)生RST

          作者: 時間:2016-10-08 來源:網(wǎng)絡(luò) 收藏

          產(chǎn)生RST的3個條件:

          本文引用地址:http://www.ex-cimer.com/article/201610/305555.htm

          1. 建立連接的SYN到達某端口,但是該端口上沒有正在監(jiān)聽的服務(wù)。

          如:IP為192.168.1.33的主機上并沒有開啟WEB服務(wù)(端口號為0x50),這時我們通過IE去訪問192.168.1.33,通過Wireshark抓包,可以看到,對此SYN包的回復(fù)為RST。說明此服務(wù)器(即IP192.168.1.33)是存在的,不過其上并沒有運行WEB Server(如apache)的程序

          2. TCP想取消一個已有連接。

          基于什么樣的情況才會取消一個已有的連接?

          3. TCP接收到了一個根本不存在的的連接上的分節(jié)。

          我們知道,TCP在數(shù)據(jù)傳輸前,要通過三路握手(three-way handshake)建立連接,即連接建立起后,服務(wù)器和客戶端都有一個關(guān)于此連接的描述,具體形式表現(xiàn)為套接口對,如果收到的某TCP分節(jié),根據(jù)源IP,源tcp port number,及目的IP,目的tcp port number在本地(指服務(wù)器或客戶端)找不到相應(yīng)的套接口對,TCP則認為在一個不存在的連接上收到了分節(jié),說明此連接已錯,要求重新建立連接,于是發(fā)出了RST的TCP包!

          今天遇到的問題就是 server 端被殺調(diào)了,結(jié)果client不知道,仍然拿原來的socket去操作,結(jié)果server返回rst的tcp包,client異步讀返回錯誤。



          關(guān)鍵詞:

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();