Voice over IP Skype
Skype The largest and most well know P2P Internet telephony operator Started in 2003, grew in only 1.5 years from nothing to a rapidly expanding Internet telephony operator over 2 million active users as of March 2005
Skype products Basic skype SkypeOut SkypeIn Skype API Free phone calls from computer to computer on the Internet Similar to MSN, Yahoo IM, but better voice quality SkypeOut a low cost way to make calls from Skype to traditional landlines or mobile phones. e.g. use SkypeOut to call the United Kingdom you can save up to 80% per minute compared with Bell Canada SkypeIn get your own, regular phone number, receive phone calls from anywhere In Beta test Skype API an open application programming interface (API) that enables third parties to develop their own add-ons for Skype Business users can develop their application systems based on Skype
Skype technology Based on peer-to-peer network Proprietary protocols minimal network infrastructure Utilize its users’ computers to do the work three types of hosts: ordinary hosts, Skype users super nodes, Skype users with sufficient computing power, memory and network bandwidth login servers, for authentication Skpye owns only the login servers Proprietary protocols
Connect to Skype network Each Skype client maintains a host cache which is a list of IP addresses of known super nodes. Initially empty. super nodes are responsible for locating users, routing calls and providing the clients information about hosts currently connected to the network. A Skype client must connect to the network through super nodes
Connect to Skype network First login When Skype client is run for the first time after intallation, it will communicate with the Skype server (skype.com) After that, the client’s host cache is filled with IP addresses of 7 bootstrap super nodes. Establish a connection with one of them authenticate the user name and password with the Skype login server The host cache is periodically updated with the IP address of new super nodes Subsequent login Choose one super nodes from the host cache and establish a connection to that super node
Call establishment User lookup “Global Index” technology that keeps track of which users have used the network in the near past Skype claims, that any user who has logged in to the network in the last 72 hours can be found After acquiring the callee’s IP address, the caller establishes a connection to the callee and send signaling messages. After the callee answered the call, voice packets are sent directly between the two parties. If one or both of the parties are behind NAT or firewall, they communicate through another Skype online node
Other issues Security Voice quality NAT and firewall All communication is encrypted with Advanced Encryption Standard (AES) The AES encryption keys are transmitted between hosts using the Rivest, Shamir, & Adleman (RSA) algorithm. Voice quality wideband codecs: allow 50 – 8000 Hz to pass through NAT and firewall Skype uses Simple Traversal of User Datagram Protocol (STUN) and Traversal Using Relay NAT (TURN) algorithms to determine the type of firewalls and NAT