• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      網(wǎng)絡異常測試初探

      2013-04-16 23:13:30本刊編輯x025
      計算機與網(wǎng)絡 2013年23期
      關鍵詞:數(shù)據(jù)包端口組件

      開發(fā)或者測試互聯(lián)網(wǎng)產(chǎn)品的過程中,同學們一定遇到過connection timed out 和 socket read timed out兩種和網(wǎng)絡相關的異常。今天我們并不分析引起這些異常的原因,也不談發(fā)生異常以后的解決辦法,我們來說說如何制造這類異常,從而模擬對應的異常場景。

      了解tcp協(xié)議就知道connection即建立連接的過程,其實和socket read即傳輸數(shù)據(jù)的過程并沒有太大的差別,兩者都是請求應答模式,而只是前者的請求數(shù)據(jù)量很小而已。要使兩者超時,我們可以采用相同的方法即限制網(wǎng)絡傳輸?shù)膸拋磉_到目的。

      Tc即traffic control就是這樣一款能夠限制網(wǎng)絡流量的工具。Tc中主要的概念包括類class和過濾器filter。

      我們可以用class把網(wǎng)絡設備的帶寬劃分成不同的區(qū)間:

      tc class add dev $DEV parent 1:classid 1:11 htb rate 90mbps ceil 100mbps

      tc class add dev $DEV parent 1:classid 1:12 htb rate 90bps ceil 100bps

      如上,11這個class對應的帶寬 為 90到 100mbps,12這個 class對應的帶寬只有90到100bps。劃分好了class,我們就可以用filter把符合特定條件的數(shù)據(jù)包歸入不同的class中

      tc filter add dev $DEV protocol ip parent1:0 prio 1 u32 match ip sport $PORT 0xffff match ip dst $IP flowid 1:12

      如上就把源端口是$PORT,目的地址是$IP的數(shù)據(jù)包歸入12這個class中了,這樣就把符合該條件的數(shù)據(jù)流量限制到了90到100bps。在正在運行的系統(tǒng)中開啟上述tc限制,即把特定數(shù)據(jù)流限制到一個極小值,我們就能模擬出connection timed out異常了。

      那么socket read timed out異常又該如何模擬呢,我們怎么才能區(qū)分建立連接和數(shù)據(jù)傳輸這2個過程,tc工具還能滿足我們的需求嗎?在尋找問題答案的過程中,另一個linux內(nèi)核組件iptables進入了我們的視野。

      Iptables是linux系統(tǒng)中常用的防火墻組件,功能十分強大,網(wǎng)上有十分豐富的資料。由于其能夠識別數(shù)據(jù)包中的syn、ack等標志位,故能把建立連接和后續(xù)的數(shù)據(jù)傳輸過程區(qū)分開來。

      iptables-A INPUT-p tcp--src $IP--dport $PORT !--syn-jDROP

      如上,在目的機器上加入該條iptables規(guī)則,可以實現(xiàn)將未設置syn標志位的數(shù)據(jù)包丟棄的功能,這樣連接能夠建立完成但后續(xù)的數(shù)據(jù)傳輸將無響應。

      另外,Iptables具有一種連接跟蹤機制,即能夠記錄連接的狀態(tài)。這些狀態(tài)分別是 NEW、ESTABLISHED、RELATED 和INVALID。我們可以利用該特性實現(xiàn)相同的效果。

      iptables-A INPUT-p tcp-m state--state ESTABLISHED-s $IP--dport $PORT-jDROP

      如上,在目的機器上加入該條iptables規(guī)則,當匹配了ip和端口,并且數(shù)據(jù)包所對應的連接狀態(tài)是ESTABLISHED 時將其丟棄。

      至此read timed out異常也能輕松模擬了。Tc和Iptables是linux網(wǎng)絡模塊中強有力的工具,除了能夠利用它們開發(fā)功能,也能夠在網(wǎng)絡異常測試中發(fā)揮關鍵的作用。

      猜你喜歡
      數(shù)據(jù)包端口組件
      無人機智能巡檢在光伏電站組件診斷中的應用
      能源工程(2022年2期)2022-05-23 13:51:50
      一種端口故障的解決方案
      科學家(2021年24期)2021-04-25 13:25:34
      新型碎邊剪刀盤組件
      重型機械(2020年2期)2020-07-24 08:16:16
      U盾外殼組件注塑模具設計
      SmartSniff
      端口阻塞與優(yōu)先級
      初識電腦端口
      電腦迷(2015年6期)2015-05-30 08:52:42
      生成樹協(xié)議實例探討
      風起新一代光伏組件膜層:SSG納米自清潔膜層
      太陽能(2015年11期)2015-04-10 12:53:04
      基于Libpcap的網(wǎng)絡數(shù)據(jù)包捕獲器的設計與實現(xiàn)
      花莲市| 江阴市| 华宁县| 开化县| 西乌| 宁国市| 桓仁| 福清市| 巨鹿县| 肥城市| 兰溪市| 大丰市| 隆尧县| 涿州市| 隆林| 剑阁县| 巴塘县| 长海县| 安平县| 和林格尔县| 乐平市| 庆安县| 龙泉市| 十堰市| 安顺市| 台湾省| 沾化县| 石柱| 汉寿县| 托克逊县| 龙井市| 大宁县| 铜陵市| 台江县| 景东| 黄浦区| 刚察县| 苗栗市| 项城市| 青神县| 阿城市|