Download presentation
Presentation is loading. Please wait.
Published byLynne Booth Modified over 9 years ago
1
Asynchronous Interactive Design of Web Applications: Real-time SIP Message Monitoring System using AJAX Student: Yan-Hsiang Wang Advisor: Dr. Quincy Wu Graduate Institute of CSIE National Chi Nan University
2
2 Motivation Session Initiation Protocol (SIP) is widely used as the signaling protocol for Voice over IP. SIP is adopted by 3GPP in IP Multimedia Subsystem (IMS).
3
3 A Convenient Tool - Ethereal
4
4 Limitation of Ethereal Hard-phone users cannot install software to capture packets.
5
5 Server-based SIP Packet Capturing Running SIP Capturing on Server-side instead of Client-side. Existing web-base systems cannot update data in pages seamlessly. WIST - Web Interface for SIP Trace http://sourceforge.net/projects/wist Distributed SIP Analyzer http://sourceforge.net/projects/sipanalzyer
6
6 Existing System 1
7
7 Existing System 2
8
8 AJAX Asynchronous Javascript And XML This term was born in February 2005. It is not a technology; it is an approach. Connect Web Browser and Web Server asynchronously. Reload data without refreshing pages. Create an interactive web application Which behaves like a desktop application.
9
9 Ajax Applications Auto-Complete (Yahoo! Travel) http://travel.yahoo.com/ http://travel.yahoo.com/
10
10 Ajax Applications Auto-Complete (Yahoo Dictionary) http://tw.dictionary.yahoo.com/ http://tw.dictionary.yahoo.com/
11
11 Ajax Applications (cont.) Drag & Drop (UrMap) http://www.urmap.com.tw/ http://www.urmap.com.tw/ Real-Time Viewer (Digg Spy) http://digg.com/spy http://digg.com/spy Slider (Google Finance) http://finance.google.com/finance?q=twx http://finance.google.com/finance?q=twx
12
12 Ajax Engine
13
13 Limitation of AJAX It can’t work when some browsers disable “JavaScript” Most popular browsers support AJAX Internet Explorer 5.0 ~ Mozilla 1.0 ~ Safari 1.2 ~ Opera 8.0 ~
14
14 Our System Architecture ApacheMySQL Ethernet card Captor (libpcap) AJAX engine HTML + Cascading Style Sheets Data JavaScript Call SIP Extractor (php) Server-side systemClient-side system web browser HTTP RequestXML Data PHP Query Data Ethernet Frame SIP Message SIP Header Field
15
15 Server-Side System We use Libpcap to capture packets on udp port 5060. Strip off the Ethernet, IP and UDP headers by a PHP script. Store the SIP messages in a MySQL database for further querying.
16
16 Client-Side System Our querying page is based on an Ajax engine. Refresh data seamlessly Update the latest packets in real time Provide desktop-like application interface friendly Use tree menu as message browser. Expand the message dynamically
17
17 Integration with SIP server(1)
18
18 Integration with SIP server(2) SERweb
19
19 Implementation
20
20 Advantages Surfing web-base system is convenient and easy (compared with Ethereal). User can search the historical data with ordinary privilege. Ethereal requires super-user privilege to capture packets. We can package these messages in a Pcap format file and mail it to users so that they can parse it with other tools (Ethereal, Wireshark).
21
21 Advantages (cont.) Refresh the message table when the latest message is captured. Query the latest record from the database in each second Compare the latest record from the database and the current record in browser Refresh the message table if these two records are different
22
22 Performance Measurement Environment FreeBSD 5.4 as Operating System MySQL-5.0.22 as Database Apache-2.0.58_2 as Web server Ser-0.9.6_2 as SIP server Sajax-0.12 as Ajax library Two SIPp generators on WinXP as Client Call setup scenario (powered by SIPp)
23
23 Comparison with Running Ethereal on the Server(1/2) Concurrent Calls: 30
24
24 Comparison with Running Ethereal on the Server(2/2) Concurrent Calls: 1000
25
25 System Loading Step1: only httpd, mysqld, ser Step2: start stress testing Step3: start capturing and pipe the output to the dissector Step4: enable live update on the browser Step5: work continuously without SIP traffics Calls per second: 10,000 Total calls: 20,000
26
26 Performance Measurement Environment Fedora core 6 as Operating System MySQL-5.0.27 as Database Apache-2.2.4 as Web server Call setup scenario (powered by SIPp) Max Allowed Rate: 10,000 Concurrent Calls: 0~8,000(with interval 200) Total calls: 20,000
27
27 Call Failure Rate
28
28 Conclusion Advantage Conserve the bandwidth of network Friendly interface Convenient to use Future work Access control Inter-domain collaboration
29
29 Demo Show the Wireshark image to this notebook Enable SIP Fluoroscope Live Update Sepp(Wifi-phone) calls Test(X-Lite) Capture SIP signalings
30
30 Q&A Thanks for your comments!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.