Presentation is loading. Please wait.

Presentation is loading. Please wait.

VoIP Case Study1 VoIP Case Study: Skype Dr. Danny Tsang Department of Electrical & Electronic Engineering Hong Kong University of Science and Technology.

Similar presentations


Presentation on theme: "VoIP Case Study1 VoIP Case Study: Skype Dr. Danny Tsang Department of Electrical & Electronic Engineering Hong Kong University of Science and Technology."— Presentation transcript:

1 VoIP Case Study1 VoIP Case Study: Skype Dr. Danny Tsang Department of Electrical & Electronic Engineering Hong Kong University of Science and Technology

2 VoIP Case Study Phone becomes “the Portal”... Instantmessaging presence presence XML audiovideo data HTTP … through which a whole new world of services are delivered

3 VoIP Case Study3 What Is Skype? r It is a peer-to-peer (P2P) overlay network for VoIP and other applications, developed by the people who did KaZaA r To a user, it is an Instant Messaging (IM) system that supports P2P VoIP and other applications r The fee-based SkypeOut service allows calls to regular phone numbers

4 VoIP Case Study4 Skype - a raving success r Skype - computer computer telephony m You can talk to other computer based phones free r Skype Out - computer -> PSTN telephony m You can call normal PSTN telephones - and pay for it r Skype In - PSTN telephony -> computer telephony m You can be called from PTSN telephones m You get a normal phone number r Currently on-line: ~1.8 million users r ~150 million skype software download (www.skype.com)www.skype.com r Skype hardware phones available

5 VoIP Case Study5 Overview of Skype P2P Network Skype login Server Message exchange with The login server during login Ordinary Host Super node Neighbors relationships in the Skype network Major Entities r Login Server m Single central server m User authentication at login (private/public keys) m Ensures uniqueness of Skype user names r Super nodes m Nodes with public IP address, enough CPU, memory, and network bandwidth m Registrar functionality (distributed directory, presence service) m Signaling/media proxy (reachability of ordinary hosts) r Ordinary nodes m Hosts behind FW/NAT

6 VoIP Case Study6 Highlights of Skype r P2P-based signaling m to find and locate users, Skype uses "supernodes" that are running on peer machines (In contrast, traditional VoIP systems use fixed central servers) m little management structure and overhead m highly scalable r Strong NAT/firewall traversal capability m e.g., use a peer relay to connect clients behind NATs, or use a TCP tunnel to a peer relay to bypass a UDP blocking firewall r Better voice quality than the MSN and Yahoo IM applications m Wideband voice codec: allow frequency between 50-8000Hz to pass through m Heavy software-based DSP operations at clients, including codecs, mixer and fancy echo cancellation, e.g., Thinkpad X31, an active Skype session consumes around 10-20% of CPU r Security feature: m encrypts calls end-to-end, and stores user information in a decentralized fashion r Integrated buddy list, presence information, chat, and audio conferencing

7 VoIP Case Study7 Reverse Engineering of Skype r Based on “An Analysis of the Skype Peer-to- Peer Internet Telephony Protocol” by S. Baset and H. Schulzrinne at Columbia, September 15, 2004 m “We observe, …, we think, …, we conjecture…, etc.” r Terminologies: m Skype client (SC) m Super node (SN) m Host cache (HC): list of IP addresses and port number of some super nodes

8 VoIP Case Study8 Some Observed Facts r For NAT and firewall traversal, SC uses a variation of typical schemes such as STUN to determine the type of NAT and firewall it is behind. SC refreshes this information periodically. This information is stored, e.g., in the Windows registry r Use TCP to bypass UDP-restricted NAT/firewall r Unlike its file sharing counter part KaZaa, a SC CANNOT prevent itself from becoming a SC

9 VoIP Case Study9 Skype Functions r Startup m After installation, SC sends a HTTP 1.1 GET to skype.com r Login r User search r Call establishment and tear down r Media transfer r Presence messages

10 VoIP Case Study10 Skype Login 1. Advertises its presence to other peers and its buddies. 2. Determines the type of NAT and firewall it is behind. 3. Discover online Skype nodes with public IP addresses. Stores Skype user names and passwords and ensures that Skype user names are unique across the Skype name space. Login server: ns14.inet.telt.dk(Denmark)

11 VoIP Case Study11 Skype Login algorithm authentication with login server is not shown

12 VoIP Case Study12 Skype Login in details r A SC authenticates its user name and password with the login server, advertises its presence to other peers and its buddies, determines the type of NAT and firewall it is behind, and discovers online Skype nodes with public IP addresses r These newly discovered nodes were used to maintain connection with the Skype network should the SN to which SC was connected became unavailable r SC must establish a TCP connection to a SN in order to connect to the Skype network m For a given entry in HC, SC tries to make the connection in the following order: TCP with the IP address and the port listed, the IP address and HTTP port (80), the IP address and SHTTP port (443) r After SC is connected to a SN, the SC gets the IP address of the Skype login server, and authenticates the username and password with the login server r SC sends UDP packets to 22 distinct nodes at the end of login process m Advertise its arrival m Build an “alternative node tables” that provide a list of available nodes SC can use should its current SN becomes unavailable

13 VoIP Case Study13 User Search r Perhaps use Chord-like hash-based methods, combined with traditional blind searching techniques r SN acts like a search proxy for CN and caches searched results

14 VoIP Case Study14 Use of An Immediate Node r Two reasons m Passing NAT and firewall m Acting as a mixer for conferencing traffic

15 VoIP Case Study15 Conferencing r CPU and bandwidth usages at the bridging point (e.g., the A node above) increase with # conference participants A B C B A+C A+B C

16 VoIP Case Study16 Conferencing r A call was established between A (the most powerful one) and B. Then B decided to include C in the conference. r It mixed its own packets with those of B and sent them to C over UDP and vice versa r Even if user B or C started a conference, A, which was the most powerful amongst the three, always got elected as conference host and mixer. r If iLBC codec is used, the total call 36 KB/s for a two-way call. For three- user conference, it jumps to 54 kb/s for the machine hosting the conference. r For a three party conference, Skype does not do full mesh conferencing. r To host a conference with 5 parties you need a big PC, a Pentium 4 or thereabouts. With a PIII CPU of 450 MHz you will be limited to hosting 3 parties. A BC B A+C A+B C

17 VoIP Case Study17 Reflection of Skype Pros: r “scales as it grows” r Ease of use (self configuration) r Intelligence at the edge r Transparent FW/NAT traversal r Integration of IM, presence, voice r Encrypted communication Cons: r Proprietary protocols r Closed world, no SIP/H.323 GWs r No bandwidth control at super nodes r Reliability? Are there enough super nodes? r Not suitable for business usage, privacy?

18 VoIP Case Study18 Broad Impact r Great application for WLAN-enabled handsets m A new opportunity for fixed-line operators m New opportunity and challenge to mobile phone operators and manufacturers (think when WLAN infrastructure and handsets become widespread) r New challenges to SIP/ENUM-based approaches r Since naming on overlay networks could work well, DNS may not need to expand its scope r VoIP is a new must-to-have feature for IM systems r A new view on P2P networks, which previously focused on content rather than communications r A large number of online Skype VoIP clients distributed throughout the world can provide valuable network performance measurements and other information r Other issues, including anonymity vs. law enforcement

19 VoIP Case Study19 Profound Impact r Skype has shown, or at least has suggested, the following: m Signaling, the most unique property of traditional phone systems, can now be accomplished effortlessly with self- organizing P2P networks m P2P overlay networks can scale up to handle large-scale connection-oriented real-time services such as voice r For Skype, the Internet is just a dumb "bit pipes“ m We should focus on applications and services that run on layers above pipes, since pipes or roads always only have relatively small business value themselves

20 VoIP Case Study20 Reference r B. Goode, “Voice over Internet protocol (VoIP),” Proceedings of the IEEE, vol. 90, no. 9, pp. 1495 – 1517, Sep. 2002. r M. Maresca, N. Zingirian, and P. Baglietto, “Internet protocol support for telephony,” Proceedings of the IEEE, vol. 92, no. 9, pp. 1463 – 1477, Sep. 2002. r S. A. Baset and H. Schulzrinne, “An analysis of the Skype peer-to- peer internet telephony protocol,” Computer Science Department, Columbia University, Tech. Rep. CUCS-039-04, 2004. [Online]. Available: http://arxiv.org/pdf/cs.NI/0412017 r C. Schlatter, “Why SIP?” 2005, Swiss Education and Research Network, SWITCH. [Online]. Available: http://vconf.switch.ch/econf_docs/sip_h323_skype.pdf http://vconf.switch.ch/econf_docs/sip_h323_skype.pdf r H. T. Kung, “P2P VoIP,” 2004, lecture notes on CS-143/CSCI-E135: Computer Networks. [Online]. Available: http://www.eecs.harvard.edu/cs143/


Download ppt "VoIP Case Study1 VoIP Case Study: Skype Dr. Danny Tsang Department of Electrical & Electronic Engineering Hong Kong University of Science and Technology."

Similar presentations


Ads by Google