1
SIPv6 Analyzer SIPv6 Analyzer
Whai-En Chen
Research Assistant Professor
Dept. of Computer Science and Information Engineering National Chiao Tung University
wechen@mail.nctu.edu.tw
2
Outline Outline
• Introduction
• Install and Uninstall Procedures
• Quick Start- User Guide
• Filtering Rules
• SIPv6 Analyzer Demo
– Capturing Packets
– SIP Functions: SIP Viewer and Flowcharts – RTP Function: RTP Spy (Playback)
• Conclusions
• Future Works
3
Introduction Introduction
• 構想:針對SIP與IPv6通訊協定,開發出一個簡單 易用的分析工具
• SIPv6 Analyzer特色
– 以call leg整理SIP信令 – 繪出SIP信令流程圖 – 重現RTP語音串流 – 可調式Jitter Buffer
• 開發成員:賴健利、翁瑞鴻、蘇家永、宋岳鑫、
蔡昌裕
• 目前維護:宋岳鑫 (yhsung@csie.nctu.edu.tw)
• 榮譽:2003國網盃程式設計比賽冠軍
2004 IPv6 Appli-Contest實作組冠軍
4
A General Protocol Analyzer
A General Protocol Analyzer - - Ethereal Ethereal
Packet List
Protocol Parser
Hex Dump
5
SIPv6 Analyzer SIPv6 Analyzer
分析專案子視窗 分析器主視窗 SIP信令圖形流程子視窗
流量與通訊協定統子頁面 RTP監控與撥放子頁面
封包解析子頁面
6
系統功能特點 系統功能特點
• 安裝與反安裝功能
• 人性化之圖形使用介面
• 解析之通訊協定分析包括Ethernet2 Header、ARP、
ICMPv4、IPv4、ICMPv6、IPv6、IPv6 Options 、
IP(v4/v6)-in-IP(v4/v6) Tunnel、Teredo、 TCP、UDP、
HTTP、FTP、DNS、SIP、SDP、RTCP、RTP
• SIP信令流程圖形化分析
• RTP串流監聽分析
• 流量與通訊協定統計
• 精靈式封包產生器
• 跨網路之遠端分析
7
Download the SIPv6 Analyzer
Download the SIPv6 Analyzer
8
Install the Install the
SIPv6 Analyzer
SIPv6 Analyzer
9
Install the
Install the WinPcap WinPcap
10
Finish Installation
Finish Installation
11
Uninstall Procedure
Uninstall Procedure
12
Menu and Speed Buttons (1)
Menu and Speed Buttons (1)
13
Menu and Speed Buttons (2) Menu and Speed Buttons (2)
Remote Capture(a)開啟遠端擷取封包功能 Local Capture (b)開啟本機擷取封包功能
Open Offline Packet (c)開啟已儲存之封包擷取檔案 Close Form (d)關閉擷取封包畫面
Quit (e)離開SIPv6 Analyzer
快捷按鈕(1)的功能與選單中的「Remote Capture」相同。
快捷按鈕(2)的功能與選單中的「Local Capture」相同。
快捷按鈕(3)的功能與選單中的「Open Offline Packet」相同。
快捷按鈕(4)的功能與選單中的「Close Form」相同。
快捷按鈕(5)可以切換到下一個專案視窗。
快捷按鈕(6)可以將專案視窗重疊顯示。
快捷按鈕(7)可以將專案視窗做水平切割式的排列。
快捷按鈕(8)可以將專案視窗做垂直切割式的排列。
14
Analysis Project (1)
Analysis Project (1)
15
Analysis Project (2) Analysis Project (2)
快捷按鈕(1)是開始/停止擷取封包的控制按鈕。
快捷按鈕(2)可以將擷取下來的封包儲存成檔案。
快捷按鈕(3)套用/取消Capture filter 或Display filter 的設定。
快捷按鈕(4)可以設定Capture filter或Display filter。
快捷按鈕(5)是開啟/關閉「Packet Viewer」頁面的控制按鈕。
快捷按鈕(6)是開啟/關閉「SIP Viewer」頁面的控制按鈕。
快捷按鈕(7)是開啟/關閉「RTP Spy」頁面的控制按鈕。
快捷按鈕(8)是開啟/關閉「Statistics」頁面的控制按鈕。
「Frame List」區塊(9)將所擷取到的封包都會列在上面,並顯示擷 取到的封包編號、擷取到的時間、來源位址、目的位址以及封 包的封裝。
「Detail Frame Information」區塊(10)顯示出被選擇封包的詳細內 容。
「Hex Information」區塊(11)將封包的原始內容直接以十六進位方 式表現。
16
SIP Viewer (1)
SIP Viewer (1)
17
SIP Viewer (2) SIP Viewer (2)
• 「Dialog(Call-leg) List」區塊(1)將SIP訊息整理成Dialog (call leg)的方式顯示。「Call-ID」欄位是SIP訊息中的Call- ID標頭,「Caller」欄位(表示發話方)是SIP訊息中的From 標頭。「Callee」欄位(表示受話方)是SIP訊息中的To標 頭。
• 「SIP Packet List」區塊(2)為同一個Dialog中,所有SIP訊 息的清單。
18
RTP Spy (1)
RTP Spy (1)
19
RTP Spy (2) RTP Spy (2)
• 「Session List」區塊(1)將一次通話中相同來源的RTP封包 整理成一筆資料。「Session」欄位代表的是目的位址與通 訊埠,「SSRC」欄位即RTP封包中所帶的SSRC
(Synchronization Source),「Media Type」欄位為RTP封包 所使用的語音編碼,「Packet Count」欄位代表此Session 所包含的RTP封包總數,「Length」欄位代表該次通話所 進行的時間。
• 「Media Instance」區塊(2)在滑鼠左鍵雙擊點選「Session List」中的一筆資料後,可以在這個列表中選擇所要播放 的RTP串流,「Media Description」欄位代表的是此RTP串 流的目的位址與通訊埠,「Status」欄位代表此RTP串流 的狀態為播放中/播放完畢/可以播放,「Packet Count」欄 位代表此RTP串流的封包總數,「Length」欄位代表此 RTP串流的時間。
• 「Play Control Panel」區塊(3)用來控制使用者所要播放的 RTP串流,由左而右有播放、停止以及暫停。
20
Statistic (1)
Statistic (1)
21
Statistic (2) Statistic (2)
• 「Host Traffic」區塊(1)是對於各個主機位址的網 路流量列表,「IP Address」欄位代表的是主機的 IP位址,「Host Address」欄位代表的是主機的資 料連結層位址,如Ethernet中的MAC (Media
Access Control) 位址。「Bytes」欄位代表對該主 機傳送的總位元組個數,「Packets」欄位代表對 該主機傳送的總封包數。
• 「Packet Distribution」區塊(2)是IPv4/IPv6/otheres 通訊協定的封包分佈圓餅圖。
• 「Flow Statistics」區塊(3)是目前網路流量的輸出
速率圖表。
22
Set Filtering Rules Set Filtering Rules
Set Capture Filter Set Display Filter
23
Filtering Rules Filtering Rules
• SIPv6 Analyzer provides two Filters: Capture Filter and Display Filter.
• The filter rule is the same as the tcpdump.
• Some useful examples:
– host 140.113.1.1 (capture the packet from and to 140.113.1.1)
– dst 140.113.1.1 / src 140.113.1.1 (to/from 140.113.1.1) – net 205.153.60.0 mask 255.255.255.0 (for a subnet) – udp port 5060 (for SIP; port 9000 for RTP)
– host 140.113.1.1 and udp port 5060 – ip6 (for IPv6 packets)
24
SIPv6 Analyzer Demo
SIPv6 Analyzer Demo
25
Demo Environment Demo Environment
SIP RTP
26
Operation (1)
Operation (1)
27
Operation (2)
Operation (2)
28
SIP Viewer: SIP Messages
SIP Viewer: SIP Messages
29
SIP Flowcharts
SIP Flowcharts
30
RTP Spy: RTP Playback
RTP Spy: RTP Playback
31
Conclusions Conclusions
• SIPv6 Analyzer provides several functions (e.g., SIP Viewer and RTP Spy) for the users who attempt to debug the SIP VoIP network or the SIP devices.
• SIPv6 Analyzer can be downloaded in the web page (i.e.
http://www.csie.nctu.edu.tw/~yhsung/sipv6_analyzer)
• Users can fills the registration form and will be informed when the SIPv6 Analyzer is upgraded.
• Users can contact Dr. Chen (wechen@mail.nctu.edu.tw) for any further research or cooperation possibility.
• Users can contact Mr. Sung (yhsung@csie.nctu.edu.tw) for the comments or bugs of SIPv6 Analyzer.
32
Future Works Future Works
• SIP message comparison
• Video playback for RTP packets
• G.723, G.729 and GSM codec translation
• Stable packet generator
• Script input interface
• Test patent for SIP applications
• IPv6 test tool
• Fast sort data structure and algorithm for RTP Spy
• Automatic jitter buffer adjustment algorithm
33
References References
• RFC 3261. SIP: Session Initiation Protocol. J. Rosenberg, H.
Schulzrinne, G. Camarillo, A. Johnston, J. Peterson, R.
Sparks, M. Handley, E. Schooler. June 2002
• RFC 3550. RTP: A Transport Protocol for Real-Time
Applications. H. Schulzrinne, S. Casner, R. Frederick, V.
Jacobson. July 2003
• RFC 2327. SDP: Session Description Protocol. M. Handley, V. Jacobson. April 1998
• RFC 2460. IPv6: Internet Protocol, Version 6 Specification.
S. Deering, R. Hinden. December 1998
• Ethereal. http://www.ethereal.com
• Windump. http://windump.polito.it/
• Winpcap. http://winpcap.polito.it/
34