Skype is a telecommunications application. We use skype for day to day chats, video conferencing, voice call through SkypeIn and SkypeOut. Skype uses VoIP (Voice-Over Ip) for performing these tasks. Skype establishes a connection between people using a virtual network and does not need any IP address for the connection. It is based on an overlay network for its functionality.
What is an Overlay Network?
- An overlay network is a virtual network consisting of nodes and virtual links.
- It can give additional network services based on users needs.
- More efficient operation in a given networked environment. Example – Routing in an Ad Hoc Network.
- It has an open and an extensible network architecture.
Skype Architecture :
- Skype is a peer-to-peer application which is based on overlay network where additional functionalities can be inducted without much change to the existing architecture.
- The infrastructure consists of hosts (Users Machines) and supernodes (Hosts having the ability to work in enhanced mode).
- Super nodes are selected on the basis of reachability of the machine, bandwidth available.
- User Connection –
Users are connected to the super node via authenticated login server. Every host machine maintains a cache of super node IP addresses to which they can connect.
- Search for the Users –
The searching of users is done by the supernode. It performs a global index of the searched user and keeps on expanding the search until the user is found. It keeps moving from one supernode to another in search of that particular host. A user search typically takes between three and four seconds to complete for hosts that have a global IP address.
- Voice Connection –
After the searched user is found, the voice connection between them is established using TCP (Transmission Control Protocol is a secure and end-to-end protocol) for signaling the call request and call ending. For streaming the data of voice calls, either TCP or UDP (User Datagram Protocol) is used. Generally, UDP is preferred due to fast data streaming.
- Security –
A software is used to encrypt and decrypt the audios transmitted between host users which also enhances the call quality and security of skype.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.