An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol

An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol

September 15, 2004 | Salman A. Baset and Henning Schulzrinne
This paper provides an in-depth analysis of Skype, a peer-to-peer VoIP client developed by KaZaa. The authors examine key functions such as login, NAT and firewall traversal, call establishment, media transfer, codecs, and conferencing under three different network setups: both users with public IP addresses, one user behind a NAT, and both users behind a NAT and a UDP-restricted firewall. The analysis is based on careful study of Skype network traffic. Skype uses a decentralized approach for storing user information and supports instant messaging and conferencing. It claims to work seamlessly behind NATs and firewalls, offering better voice quality than MSN and Yahoo IM applications. The paper details the login process, including the use of a login server and the discovery of online nodes. It also discusses NAT and firewall traversal techniques, the use of wideband codecs, and the encryption of calls. The authors observe that Skype uses a variant of the STUN protocol to determine the type of NAT and firewall it is behind and that there is no global NAT and firewall traversal server. They also note that Skype maintains a host cache (HC) to build and refresh a table of reachable nodes, and that the login server is the only central component in the Skype network. The paper presents experimental results on call establishment, media transfer, and conferencing under different network conditions. It highlights the use of TCP for signaling and UDP for media traffic, and the role of online nodes in maintaining connections. The authors also discuss the search mechanism for user discovery and the caching of search results. In conclusion, the paper emphasizes Skype's popularity due to its superior voice quality, seamless NAT and firewall traversal, and ease of use. It suggests that Skype's success is attributed to its peer-to-peer architecture, random port selection, and the use of TCP for voice streaming. The underlying search technique for user discovery remains unclear, but the authors speculate it involves a combination of hashing and periodic controlled flooding.This paper provides an in-depth analysis of Skype, a peer-to-peer VoIP client developed by KaZaa. The authors examine key functions such as login, NAT and firewall traversal, call establishment, media transfer, codecs, and conferencing under three different network setups: both users with public IP addresses, one user behind a NAT, and both users behind a NAT and a UDP-restricted firewall. The analysis is based on careful study of Skype network traffic. Skype uses a decentralized approach for storing user information and supports instant messaging and conferencing. It claims to work seamlessly behind NATs and firewalls, offering better voice quality than MSN and Yahoo IM applications. The paper details the login process, including the use of a login server and the discovery of online nodes. It also discusses NAT and firewall traversal techniques, the use of wideband codecs, and the encryption of calls. The authors observe that Skype uses a variant of the STUN protocol to determine the type of NAT and firewall it is behind and that there is no global NAT and firewall traversal server. They also note that Skype maintains a host cache (HC) to build and refresh a table of reachable nodes, and that the login server is the only central component in the Skype network. The paper presents experimental results on call establishment, media transfer, and conferencing under different network conditions. It highlights the use of TCP for signaling and UDP for media traffic, and the role of online nodes in maintaining connections. The authors also discuss the search mechanism for user discovery and the caching of search results. In conclusion, the paper emphasizes Skype's popularity due to its superior voice quality, seamless NAT and firewall traversal, and ease of use. It suggests that Skype's success is attributed to its peer-to-peer architecture, random port selection, and the use of TCP for voice streaming. The underlying search technique for user discovery remains unclear, but the authors speculate it involves a combination of hashing and periodic controlled flooding.
Reach us at info@study.space
Understanding An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol