• 
    

    
    

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

      ?

      Wireshark抓包工具在TCP性能分析時(shí)的應(yīng)用

      2019-07-24 10:33:16劉志鵬
      智富時(shí)代 2019年6期

      劉志鵬

      【摘 要】隨著Internet和TCP/IP網(wǎng)絡(luò)的快速發(fā)展,IP業(yè)務(wù)對(duì)網(wǎng)絡(luò)質(zhì)量的要求也越來(lái)越高。Wireshark作為一款抓包軟件,內(nèi)置了很多功能強(qiáng)大的統(tǒng)計(jì)分析工具,可以很好的協(xié)助網(wǎng)絡(luò)工程師進(jìn)行網(wǎng)絡(luò)分析及排查故障。本文通過(guò)列舉FTP應(yīng)用案例,介紹該軟件進(jìn)行TCP性能分析時(shí)的常用工具。

      【關(guān)鍵詞】TCP;滑動(dòng)窗口;往返時(shí)間;Wireshark

      【中圖分類號(hào)】V351 【文獻(xiàn)標(biāo)識(shí)碼】A

      隨著Internet和TCP/IP網(wǎng)絡(luò)的快速發(fā)展,IP分組網(wǎng)絡(luò)大規(guī)模部署,IP業(yè)務(wù)大規(guī)模的應(yīng)用,都給網(wǎng)絡(luò)運(yùn)維帶來(lái)了新的挑戰(zhàn)。使用Wireshark抓取并分析傳輸鏈路中的數(shù)據(jù)報(bào)文,可以幫助運(yùn)維人員更好的理解各協(xié)議的工作機(jī)制,同時(shí)其強(qiáng)大的統(tǒng)計(jì)分析功能也可以協(xié)助運(yùn)維人員進(jìn)行網(wǎng)絡(luò)分析及故障排查。

      本文將結(jié)合一個(gè)FTP應(yīng)用案例(傳輸層協(xié)議使用的是TCP),來(lái)介紹Wireshark抓包工具在TCP性能分析時(shí)常用的工具。

      一、TCP協(xié)議概述

      傳輸控制協(xié)議是一種面向連接的,可靠的傳輸層協(xié)議。首先,采用三次握手來(lái)建立TCP連接,四次握手來(lái)釋放TCP連接,保證建立的傳輸信道是可靠的。其次,TCP采用了連續(xù)ARQ協(xié)議(回退N;超時(shí)自動(dòng)重傳)來(lái)保證數(shù)據(jù)傳輸?shù)恼_性,使用滑動(dòng)窗口協(xié)議來(lái)保證接收方能夠及時(shí)處理所接收到的數(shù)據(jù),進(jìn)行流量控制。最后,TCP使用慢啟動(dòng)、擁塞避免、快重傳和快恢復(fù)來(lái)進(jìn)行擁塞控制,避免網(wǎng)絡(luò)擁塞。

      二、FTP應(yīng)用案例場(chǎng)景:

      如圖1所示,本端是一臺(tái)Win10的筆記本電腦,裝有Wireshark,作為FTP客戶端,使用的FTP軟件為FlashFXP。遠(yuǎn)端是一臺(tái)Linux的服務(wù)器,作為FTP服務(wù)器端。中間網(wǎng)絡(luò)系統(tǒng)可提供的帶寬為300Mbps,網(wǎng)絡(luò)中未進(jìn)行QOS限速,使用儀表打流量測(cè)試正常。服務(wù)器端防火墻為100Mbps端口,其它端口均為1000Mbps端口。從FTP客戶端上傳1個(gè)約2GB文件到FTP服務(wù)器端,F(xiàn)TP軟件顯示上傳速率約為5MBps,即40Mbps。

      三、使用Wireshark分析TCP性能

      (一)抓取TCP數(shù)據(jù)報(bào)文

      打開Wireshark抓包工具,選擇網(wǎng)卡來(lái)抓取收發(fā)的數(shù)據(jù)。在筆記本電腦上使用FlashFXP軟件,將文件上傳到對(duì)端FTP服務(wù)器。通過(guò)FlashFXP軟件可以查看傳輸速率,待傳輸速率穩(wěn)定后,停止抓包,保存抓包文件。

      (二)使用TCP過(guò)濾參數(shù)分析數(shù)據(jù)報(bào)文

      Wireshark提供tcp.flags、tcp.analysis等顯示過(guò)濾參數(shù),例如:tcp.flags.reset==1、tcp.analysis.retransmission、tcp.analysis.duplicate_ack、tcp.analysis.window_full等??梢允褂眠@些參數(shù)來(lái)分析與TCP會(huì)話重置、TCP重傳、重復(fù)確認(rèn)、窗口大小有關(guān)的TCP運(yùn)作及性能問(wèn)題,分別過(guò)濾后發(fā)現(xiàn)抓包文件中存在大量的window_full的數(shù)據(jù)包,說(shuō)明TCP會(huì)話的數(shù)據(jù)發(fā)送端的發(fā)送緩存中裝滿了待確認(rèn)報(bào)文,無(wú)法繼續(xù)發(fā)送數(shù)據(jù)包。

      (三)使用統(tǒng)計(jì)工具進(jìn)行分析

      Wireshark提供了豐富的統(tǒng)計(jì)工具,比如分析TCP連接常用的IO圖表和TCP流圖形。使用這些統(tǒng)計(jì)工具,可以更加方便和直觀的了解TCP流的時(shí)間序列、吞吐量、往返時(shí)間RTT、窗口大小等。

      使用時(shí)間序列(tcptrace)功能,如圖3所示,橫坐標(biāo)表示時(shí)間,縱坐標(biāo)表示序列號(hào);上方的綠線與下方的棕線之間的差值就是接收窗口大小,接收到ACK確認(rèn)報(bào)文,窗口向上移動(dòng),只有在窗口范圍之內(nèi)才可以發(fā)送數(shù)據(jù)包;縮在一起的藍(lán)色小點(diǎn)代表一個(gè)個(gè)數(shù)據(jù)包。

      該TCP流的接收窗口大小基本保持262800字節(jié),可以判斷出遠(yuǎn)端服務(wù)器接收不存在性能或應(yīng)用異常的問(wèn)題。A時(shí)刻發(fā)送的數(shù)據(jù)包,經(jīng)過(guò)往返時(shí)間RTT后,在B時(shí)刻收到TCP確認(rèn)報(bào)文,確認(rèn)了n個(gè)報(bào)文,于是發(fā)送窗口向上滑動(dòng),可以繼續(xù)發(fā)送n個(gè)報(bào)文,Wireshark抓包工具捕獲第n個(gè)報(bào)文后,判斷出發(fā)送端待確認(rèn)報(bào)文等于接收窗口大小,提示window_full,等待接收端ACK確認(rèn)報(bào)文。

      Wireshark根據(jù)每個(gè)TCP報(bào)文段從發(fā)出到收到接收端TCP確認(rèn)報(bào)文的時(shí)間進(jìn)行統(tǒng)計(jì),生成往返時(shí)間圖表。該TCP數(shù)據(jù)流的往返時(shí)間基本穩(wěn)定在53ms。

      在TCP數(shù)據(jù)通道建立協(xié)商階段,接收端支持的窗口大小為65535字節(jié),縮放因子WS為8,即最大接收窗口為524280字節(jié)。根據(jù)TCP吞吐量的計(jì)算公式:吞吐量=最大接收窗口/往返時(shí)間,該場(chǎng)景中,TCP最大吞吐量約為524280B/0.053s=9.89MB/s。經(jīng)過(guò)協(xié)商后,接收端以32850B*8=262800字節(jié)為接收窗口大小,實(shí)際傳輸速率約為4.96MB/s。

      (四)總結(jié)

      通過(guò)Wireshark抓包軟件過(guò)濾和統(tǒng)計(jì)工具分析發(fā)現(xiàn),造成筆記本電腦上傳文件速率未達(dá)到期望值的原因是接收窗口較小以及延時(shí)較大引起的。在網(wǎng)絡(luò)沒(méi)有擁塞的前提下,延時(shí)主要是運(yùn)營(yíng)商線路累計(jì)的,無(wú)法調(diào)整。提高文件傳輸速率的解決辦法是提高接收窗口大小。

      早期的WinXP系統(tǒng)可以修改注冊(cè)表調(diào)整TCP窗口大小和縮放因子;目前的Windows系統(tǒng)TCP窗口為自動(dòng)調(diào)節(jié),可以通過(guò)Windows PowerShell 的Set-NetTCPSetting進(jìn)行調(diào)整;Linux操作系統(tǒng)可以通過(guò)修改/proc/sys/net/core中的相關(guān)文件進(jìn)行調(diào)整。

      四、結(jié)束語(yǔ)

      TCP協(xié)議機(jī)制復(fù)雜,不同的操作系統(tǒng)及應(yīng)用在實(shí)現(xiàn)上也存在著差異。在網(wǎng)絡(luò)規(guī)模較大,帶寬資源緊張,延時(shí)不穩(wěn)定時(shí),很難定位故障。借助Wireshark工具,可以及時(shí)發(fā)現(xiàn)問(wèn)題所在,縮短故障排查時(shí)間。在網(wǎng)絡(luò)運(yùn)維中,可以作為輔助工具使用。

      【參考文獻(xiàn)】

      [1]Yoram Orzach著.Network Analysis Using Wireshark Cookbook古宏霞,孫余強(qiáng)譯.Wireshark網(wǎng)絡(luò)分析實(shí)戰(zhàn) .人民郵電出版社,2015.02.

      华亭县| 巴中市| 阿巴嘎旗| 漳平市| 林口县| 大余县| 全南县| 五原县| 富平县| 荥阳市| 六盘水市| 罗山县| 新民市| 清水河县| 阜南县| 安丘市| 临澧县| 寿阳县| 南充市| 吴桥县| 建湖县| 绥德县| 鹤壁市| 阜新| 松阳县| 灯塔市| 宝山区| 当阳市| 鹰潭市| 冷水江市| 乐东| 兴山县| 调兵山市| 襄垣县| 吉林市| 翁牛特旗| 五峰| 普安县| 太谷县| 哈巴河县| 拜泉县|