通過wireshark抓取視訊流資訊
阿新 • • 發佈:2019-01-28
平常在測試客戶端與服務端互動時,因為一般都是為http與https協議,所以平常都會用Charles工具進行抓包分析,使用下來很方便,確實是一個輕量級的抓包工具。
但是抓取的協議比較固定,想抓取一些其它資訊的時候就無法再用這個工具了。例如說視訊流資訊,以及該視訊的播放指標等,介於這樣的需求,可以採用網上也比較流程的工具-- wireshark
因為以前測試過一段時間的視訊相關的指標,簡單整理下流程
以我以前抓取Android上播放的視訊為例
1、首先在客戶端播放視訊的時候,同時在手機上通過adb shell命令連上手機,然後通過tcpdump命令抓包
這步的具體步驟在另外一個文件中分享過,地址為
2、去wireshark官網上下載相應的安裝包安裝
3、拿到.pcap檔案之後,用wireshark開啟,可以看到非常詳細的資訊,包括每一秒的網路耗時,網路協議,IP地址
在此需要一些tcp、http、dns等協議的基礎知識,另外需要知道wireshark常用的過濾的方法。這樣在分析pcap包時會方便很多,如下面截的圖
Wireshark的I/O
Graph計算出來
(3)RTT時間
(4)TCP重傳率
”,如下圖所示:
舉一些例項計算指標
==================================================================================按抓的包可以分析出
(1)、下載視訊大小(對對應的IP地址進行Follow TCP Stream操作)
==================================================================================
(2)、下載峰值速率和平均下載速率,可以通過==================================================================================
(3)RTT時間
分片的RTT是指標對每個分片,在網路傳輸中從傳送端傳送資料開始,到傳送端收到來自接收端的確認總共經歷的時延,以毫秒為單位,如下圖所示,每個來自接收端的確認ACK響應,都有一個時延時間RTT,將這個分片中每個響應的時延加起來則為整個分片的RTT。
驗證結果:
經過計算,第一個分片的RTT為0.96ms ==================================================================================TCP重傳率為每個分片在網路傳輸中重傳報文數與有效報文數的百分比率。
重傳報文標識為[TCP Retransmission],如下圖所示:
驗證結果:
經過統計,重傳報文數為7,有效報文數為486,7/486=0.0144,即1.44%。 ================================================================================== (5)下載時長通過分片檔案可以檢視到,分片下載開始時間為“2014-03-21 15:11:38.224013”,如下圖所示:
分片下載結束時間為“2014-03-21 15:11:49.105883
驗證結果:
分片下載時長為15:11:49.105883 - 15:11:38.224013 = 10.88187s,取小數點後兩位,為10.88s。