An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol
|
|
|
- Randolph Hines
- 9 years ago
- Views:
Transcription
1 An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol Salman A. Baset and Henning Schulzrinne Department of Computer Science Columbia University, New York NY September 15, 2004 ABSTRACT Skype is a peer-to-peer VoIP client developed by KaZaa in Skype claims that it can work almost seamlessly across NATs and firewalls and has better voice quality than the MSN and Yahoo IM applications. It encrypts calls end-to-end, and stores user information in a decentralized fashion. Skype also supports instant messaging and conferencing. This report analyzes key Skype functions such as login, NAT and firewall traversal, call establishment, media transfer, codecs, and conferencing under three different network setups. Analysis is performed by careful study of Skype network traffic. ensures that Skype login names are unique across the Skype name space. Figure 1 illustrates the relationship between ordinary hosts, super nodes and login server. Apart from the login server, there is no central server in the Skype network. Online and offline user information is stored and propagated in a decentralized fashion and so are the user search queries. Categories and Subject Descriptors C.2.2 [Computer-Communication Networks]: Network Protocols Applications General Terms Algorithms, Design, Measurement, Performance, Experimentation, Security, Keywords Peer-to-peer (p2p), Voice over IP (VoIP), Super Node (SN), Internet telephony, conferencing 1. INTRODUCTION Skype is a peer-to-peer VoIP client developed by KaZaa [17] that allows its users to place voice calls and send text messages to other users of Skype clients. In essence, it is very similar to the MSN and Yahoo IM applications, as it has capabilities for voicecalls, instant messaging, audio conferencing, and buddy lists. However, the underlying protocols and techniques it employs are quite different. Like its file sharing predecessor KaZaa, Skype is an overlay peerto-peer network. There are two types of nodes in this overlay network, ordinary hosts and super nodes (SN). An ordinary host is a Skype application that can be used to place voice calls and send text messages. A super node is an ordinary host s end-point on the Skype network. Any node with a public IP address having sufficient CPU, memory, and network bandwidth is a candidate to become a super node. An ordinary host must connect to a super node and must register itself with the Skype login server for a successful login. Although not a Skype node itself, the Skype login server is an important entity in the Skype network. User names and passwords are stored at the login server. User authentication at login is also done at this server. This server also Figure 1. Skype Network. There are three main entities: supernodes, ordinary nodes, and the login server. NAT and firewall traversal are important Skype functions. We believe that each Skype node uses a variant of STUN [1] protocol to determine the type of NAT and firewall it is behind. We also believe that there is no global NAT and firewall traversal server because if there was one, the Skype node would have exchanged
2 traffic with it during login and call establishment in the many experiments we performed. The Skype network is an overlay network and thus each Skype client (SC) should build and refresh a table of reachable nodes. In Skype, this table is called host cache (HC) and it contains IP address and port number of super nodes. It is stored in the Windows registry for each Skype node. Skype claims to have implemented a 3G P2P or Global Index [2] technology (Section 4.3), which is guaranteed to find a user if that user has logged in the Skype network in the last 72 hours. Skype uses wideband codecs which allows it to maintain reasonable call quality at an available bandwidth of 32 kb/s. It uses TCP for signaling, and both UDP and TCP for transporting media traffic. Signaling and media traffic are not sent on the same ports. The rest of this report is organized as follows. Section 2 describes key components of the Skype software and the Skype network. Section 3 describes the experimental setup. Section 4 discusses key Skype functions like startup, login, user search, call establishment, media transfer and codecs, and presence timers. Flow diagrams based on actual network traffic are used to elaborate on the details. Section 5 discusses conferencing. Section 6 discusses other experiments. 2. KEY COMPONENTS OF THE SKYPE SOFTWARE A Skype client listens on particular ports for incoming calls, maintains a table of other Skype nodes called host cache, uses wideband codecs, maintains a buddy list, encrypts messages endto-end, and determines if it is behind a NAT or a firewall. This section discusses these components and functionalities in detail. 2.1 Ports A Skype client (SC) opens a TCP and a UDP listening port at the port number configured in its connection dialog box. SC randomly chooses the port number upon installation. In addition, SC also opens TCP listening ports at port number 80 (HTTP port), and port number 443 (HTTPS port). Unlike many Internet protocols, like SIP [5] and HTTP [6], there is no default TCP or UDP listening port. Figure 15 shows a snapshot of the Skype connection dialog box. This figure shows the ports on which a SC listens for incoming connections. 2.2 Host Cache The host cache (HC) is a list of super node IP address and port pairs that SC builds and refreshes regularly. It is the most critical part to the Skype operation. At least one valid entry must be present in the HC. A valid entry is an IP address and port number of an online Skype node. A SC stores host cache in the Windows registry at HKEY_CURRENT_USER / SOFTWARE / SKYPE / PHONE / LIB / CONNECTION / HOSTCACHE. After running a SC for two days, we observed that HC contained a maximum of 200 entries. Host and peer caches are not new to Skype. Chord [19], another peer-to-peer protocol has a finger table, which it uses to quickly find a node. 2.3 Codecs The white paper [7] observes that Skype uses ilbc [8], isac [9], or a third unknown codec. GlobalIPSound [10] has implemented the ilbc and isac codecs and their website lists Skype as their partner. We believe that Skype uses their codec implementations. We measured that the Skype codecs allow frequencies between 50-8,000 Hz to pass through. This frequency range is the characteristic of a wideband codec. 2.4 Buddy List Skype stores its buddy information in the Windows registry. Buddy list is digitally signed and encrypted. The buddy list is local to one machine and is not stored on a central server. If a user uses SC on a different machine to log onto the Skype network, that user has to reconstruct the buddy list. 2.5 Encryption The Skype website [13] explains: Skype uses AES (Advanced Encryption Standard) also known as Rijndel which is also used by U.S. Government organizations to protect sensitive information. Skype uses 256-bit encryption, which has a total of 1.1 x possible keys, in order to actively encrypt the data in each Skype call or instant message. Skype uses 1536 to 2048 bit RSA to negotiate symmetric AES keys. User public keys are certified by Skype server at login. 2.6 NAT and Firewall We conjecture that SC uses a variation of the STUN [1] and TURN [18] protocols to determine the type of NAT and firewall it is behind. We also conjecture that SC refreshes this information periodically. This information is also stored in the Windows registry. Unlike its file sharing counter part KaZaa, a SC cannot prevent itself from becoming a super node. 3. EXPERIMENTAL SETUP All experiments were performed for Skype version Skype was installed on two Windows 2000 machines. One machine was a Pentium II 200MHz with 128 MB RAM, and the other machine was a Pentium Pro 200 MHz with 128 MB RAM. Each machine had a 10/100 Mb/s Ethernet card and was connected to a 100 Mb/s network. We performed experiments under three different network setups. In the first setup, both Skype users were on machines with public IP addresses; in the second setup, one Skype user was behind port-restricted NAT; in the third setup, both Skype users were behind a port-restricted NAT and UDP-restricted firewall. NAT and firewall machines ran Red Hat Linux 8.0 and were connected to 100 Mb/s Ethernet network. Ethereal [3] and NetPeeker [4] were used to monitor and control network traffic, respectively. NetPeeker was used to tune the bandwidth so as to analyze the Skype operation under network congestion. For each experiment, the Windows registry was cleared of any Skype entries and Skype was reinstalled on the machine. All experiments were performed between February and April, 2004.
3 4. SKYPE FUNCTIONS Skype functions can be classified into startup, login, user search, call establishment and tear down, media transfer, and presence messages. This section discusses each of them in detail. 4.1 Startup When SC was run for the first time after installation, it sent a HTTP 1.1 GET request to the Skype server (skype.com). The first line of this request contains the keyword installed. During subsequent startups, a SC only sent a HTTP 1.1 GET request to the Skype server (skype.com) to determine if a new version is available. The first line of this request contains the keyword getlatestversion. See the Appendix for complete messages. 4.2 Login Login is perhaps the most critical function to the Skype operation. It is during this process 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. We observed that these newly discovered nodes were used to maintain connection with the Skype network should the SN to which SC was connected became unavailable Login Process As discussed in Section 2, the HC must contain a valid entry for a SC to be able to connect to the Skype network. If the HC was filled with only one invalid entry, SC could not connect to the Skype network and reported a login failure. However, we gained useful insights in the Skype login process by observing the message flow between SC and this invalid HC entry. The experimental setup and observations for the login process are described below. First, we flushed the SC host cache and filled it with only one entry which was the IP address and port number of a machine on which no Skype client was running. The SC was then started and a login attempt was made. Since HC had an invalid entry, SC could not connect to the Skype network. We observed that the SC first sent a UDP packet to this entry. If there was no response after roughly five seconds, SC tried to establish a TCP connection with this entry. It then tried to establish a TCP connection to the HC IP address and port 80 (HTTP port). If still unsuccessful, it tried to connect to HC IP address and port 443 (HTTPS port). SC then waited for roughly 6 seconds. It repeated the whole process four more times after which it reported a login failure. We observed that a SC must establish a TCP connection with a SN in order to connect to the Skype network. If it cannot connect to a super node, it will report a login failure. Most firewalls are configured to allow outgoing TCP traffic to port 80 (HTTP port) and port 443 (HTTPS port). A SC behind a firewall, which blocks UDP traffic and permits selective TCP traffic, takes advantage of this fact. At login, it establishes a TCP connection with another Skype node with a public IP address and port 80 or port 443. Figure 2. Skype login algorithm. Only one entry is present in the HC. If there is more than one entry, SC sends UDP packets to them before attempting a TCP connection. Authentication with the login server is not shown Login Server After a SC is connected to a SN, the SC must authenticate the user name and password with the Skype login server. The login server is the only central component in the Skype network. It stores Skype user names and passwords and ensures that Skype user names are unique across the Skype name space. SC must
4 authenticate itself with login server for a successful login. During our experiments we observed that SC always exchanged data over TCP with a node whose IP address was We believe that this node is the login server. A reverse lookup of this IP address retrieved NS records whose values are ns14.inet.tele.dk and ns15.inet.tele.dk. It thus appears from the reverse lookup that the login server is hosted by an ISP based in Denmark Bootstrap Super Nodes After logging in for the first time after installation, HC was initialized with seven IP address and port pairs. We observed that upon first login, HC was always initialized with these seven IP address and port pairs except for a rare random occurrence. In the case where HC was initialized with more than seven IP addresses and port pairs, it always contained those seven IP address and port pairs. It was with one of these IP address and port entries a SC established a TCP connection when a user used that SC to log onto the Skype network for the first time after installation. We call these IP address and port pairs bootstrap super nodes. Figure 16 shows a snapshot of the host cache of the SC that contains IP address and port numbers of these bootstrap super nodes. These IP address and port pairs and their corresponding host names obtained using a reverse lookup are: IP address:port Reverse lookup result :33033 sls-cb10p6.dca2.superb.net :33033 ip9.181.susc.suscom.net : x50a15b19.boanxx15.adsl-dhcp.tele.dk : x50a15b0c.albnxx9.adsl-dhcp.tele.dk :33033 rs ev1.net :33033 rs ev1.net :33033 ns2.ev1.net From the reverse lookup, it appears that bootstrap SNs are connected to the Internet through four ISPs. Superb [14], Suscom [15], ev1.net [16] are US-based ISPs. After installation and first time startup, we observed that the HC was empty. However upon first login, the SC sent UDP packets to at least four nodes in the bootstrap node list. Thus, either bootstrap IP address and port information is hard coded in the SC, or it is encrypted and not directly visible in the Skype Windows registry, or this is a one-time process to contact bootstrap nodes. We also observed that if the HC was flushed after the first login, SC was unable to connect to the Skype network. These observations suggest that we perform separate experiments to analyze the first-time and subsequent login processes First-time Login Process The SC host cache was empty upon installation. Thus, a SC must connect to well known Skype nodes in order to log on to the Skype network. It does so by sending UDP packets to some bootstrap super nodes and then waits for their response over UDP for some time. It is not clear how SC selects among bootstrap SNs to send UDP packets to. SC then established a TCP connection with the bootstrap super node that responded. Since more than one node could respond, a SC could establish a TCP connection with more than one bootstrap node. A SC, however, maintains a TCP connection with at least one bootstrap node and may close TCP connections with other nodes. After exchanging some packets with SN over TCP, it then perhaps acquired the address of the login server ( ). SC then establishes a TCP connection with the login server, exchanges authentication information with it, and finally closes the TCP connection. The initial TCP data exchange with the bootstrap SN and the login server shows the existence of a challenge-response mechanism. The TCP connection with the SN persisted as long as SN was alive. When the SN became unavailable, SC establishes a TCP connection with another SN. Figure 3. Message flow for the first login after installation for SC on a public IP address. B stands for bytes and N stands
5 for node. SYN and ACK packets are shown to indicate who initiated TCP connection. Message flows are not strictly according to time. Messages have been grouped together to provide a better picture. Message size corresponds to size of TCP or UDP payload. Not all messages are shown. For the login process, we observed message flow for the same Skype user id for the three different network setups described in Section 3. The message flow for the first-time login process for a SC running on a machine with public IP address is shown in Figure 3. The total data exchanged between SC, SN, login server, and other nodes during login is about 9 kilobytes. Figure 4. Message flow for first login after installation for SC behind a simple NAT. B stands for bytes and N stands for node. SYN and ACK packets are shown to indicate who initiated TCP connection. Message flows are not strictly according to time. Messages have been grouped together to provide a better picture. Message size corresponds to size of TCP or UDP payload. Not all messages are shown in the message flow. For a SC behind a port-restricted NAT, the message flow for login was roughly the same as for a SC on a public IP address. However, more data was exchanged. On average, SC exchanged 10 kilobytes of data with SN, login server, and other Skype nodes. The message flow is shown in Figure 4. A SC behind a port-restricted NAT and a UDP-restricted firewall was unable to receive any UDP packets from machines outside the firewall. It therefore could send and receive only TCP traffic. It had a TCP connection with a SN and the login server, and it exchanged information with them over TCP. On average, it exchanged 8.5 kilobytes of data with SN, login server, and other Skype nodes. The message flow is shown in Figure 5.
6 The following inferences can be drawn by careful observation of call flows in Fig 3, 4, and NAT and Firewall Determination We conjecture that a SC is able to determine at login if it is behind a NAT and firewall. We guess that there are at least two ways in which a SC can determine this information. One possibility is that it can determine this information by exchanging messages with its SN using a variant of the STUN [1] protocol. The other possibility is that during login, a SC sends and possibly receives data from some nodes after it has made a TCP connection with the SN. We conjecture that at this point, SC uses its variation of STUN [1] protocol to determine the type of NAT or firewall it is behind. Once determined, the SC stores this information in the Windows registry. We also conjecture that SC refreshes this information periodically. We are not clear on how often a SC refreshes this information since Skype messages are encrypted Alternate Node Table Skype is a p2p client and p2p networks are very dynamic. SC, therefore, must keep track of online nodes in the Skype network so that it can connect to one of them if its SN becomes unavailable. From Figure 3 and 4, it can be seen that SC sends UDP packets to 22 distinct nodes at the end of login process and possibly receives a response from them if it is not behind a UDP-restricted firewall. We conjecture that SC uses those messages to advertise its arrival on the network. We also conjecture that upon receiving a response from them, SC builds a table of online nodes. We call this table alternate node table. It is with these nodes a SC can connect to, if its SN becomes unavailable. The subsequent exchange of information with some of these nodes during call establishment confirms that such a table is maintained. It can be seen from Figure 3, 4, and 5, that SC sends ICMP messages to some nodes in the Skype network. The reason for sending these messages is not clear Subsequent Login Process The subsequent login process was quite similar to the first-time login process. The SC built a HC after a user logged in for the first time after installation. The HC got periodically updated with the IP address and port number of new peers. During subsequent logins, SC used the login algorithm to determine at least one available peer out of the nodes present in the HC. It then established a TCP connection with that node. We also observed that during subsequent logins, SC did not send any ICMP packets. Figure 5. Message flow for first login after installation for a SC behind a firewall, which blocks UDP packets. B stands for bytes and N stands for node. SYN and ACK packets are shown to indicate who initiated TCP connection. Message flows are not strictly according to time. Messages have been grouped together to provide a better picture. Message size corresponds to size of TCP or UDP payload. Not all messages are shown in the message flow Login Process Time We measured the time to login on the Skype network for the three different network setups described in Section 3. For this experiment, the HC already contained the maximum of two hundred entries. The SC with a public IP address and the SC behind a port-restricted NAT took about 3-7 seconds to complete the login procedures. The SC behind a UDP-restricted firewall took about 34 seconds to complete the login process. For SC behind a UDP-restricted firewall, we observed that it sent UDP packets to its thirty HC entries. At that point it concluded that it is behind UDP-restricted firewall. It then tried to establish a TCP connection with the HC entries and was ultimately able to connect to a SN.
7 4.3 User Search Skype uses its Global Index (GI) [2] technology to search for a user. Skype claims that search is distributed and is guaranteed to find a user if it exists and has logged in during the last 72 hours. Extensive testing suggests that Skype was always able to locate users who logged in using public or private IP address in the last 72 hours. Skype is a not an open protocol and its messages are encrypted. Whereas in login we were able to form a reasonably precise opinion about different entities involved, it is not possible to do so in search, since we cannot trace the Skype messages beyond a SN. Also, we were unable to force a SC to connect to a particular SN. Nevertheless, we have observed and present search message flows for the three different network setups. login process and responses were received from them. Message size corresponds to payload size of TCP or UDP packets. A SC behind a port-restricted NAT exchanged data between SN, and some of the nodes which responded to its UDP request during login process. The message flow is shown in Figure 7. A SC behind a port-restricted NAT and UDP-restricted firewall sent the search request over TCP to its SN. We believe that SN then performed the search query and informed SC of the search results. Unlike user search by SC on a public IP address, SC did not contact any other nodes. This suggests that SC knew that it was behind a UDP-restricted firewall. The message flow is shown Figure 8. Figure 6. Message flow for user search when SC has a public IP address. B stands for bytes and N stands for node. Message sizes correspond to payload size of TCP or UDP packets. A SC has a search dialog box. After entering the Skype user id and pressing the find button, SC starts its search for a particular user. For SC on a public IP address, SC sent a TCP packet to its SN. It appears that SN gave SC the IP address and port number of four nodes to query, since after that exchange with SN, SC sent UDP packets to four nodes. We also observed that SC had not exchanged any information with these four nodes during login. SC then sent UDP packets to those nodes. If it could not find the user, it informed the SN over TCP. It appears that the SN now asked it to contact eight different nodes, since SC then sent UDP packets to eight different nodes. This process continued until the SC found the user or it determined that the user did not exist. On average, SC contacted eight nodes. The search took three to four seconds. We are not clear on how SC terminates the search if it is unable to find a user. Figure 7. Message flow for user search when SC is behind a port-restricted NAT. B stands for bytes and N stands for node. UDP packets were sent to N1, N2, N3, and N4 during Figure 8. User search by a SC behind a UDP-restricted firewall. B stands for bytes. Data is exchanged with SN only. Message size corresponds to payload size of TCP/UDP packets Search Result Caching To observe if search results are cached at intermediate nodes, we performed the following experiment. User A was behind a portrestricted NAT and UDP-restricted firewall, and he logged on the Skype network. User B logged in using SC running on machine B, which was on public IP address. User B (on public IP) searched for user A, who is behind port-restricted NAT and UDP-restricted firewall. We observed that search took about 6-8 seconds. Next, SC on machine B was uninstalled, and Skype registry cleared so as to remove any local caches. SC was reinstalled on machine B and user B searched for user A. The search took about 3-4 seconds. This experiment was repeated four times on different days and similar results were obtained. From the above discussion we infer that the SC performs user information caching at intermediate nodes. 4.4 Call Establishment and Teardown We consider call establishment for the three network setups described in Section 3. Further, for each setup, we consider call establishment for users that are in the buddy list of caller and for
8 users that are not present in the buddy list. It is important to note that call signaling is always carried over TCP. For users that are not present in the buddy list, call placement is equal to user search plus call signaling. Thus, we discuss call establishment for the case where callee is in the buddy list of caller. If both users were on public IP addresses, online and were in the buddy list of each other, then upon pressing the call button, the caller SC established a TCP connection with the callee SC. Signaling information was exchanged over TCP. The message flow between caller and callee is shown in Figure 9. The initial exchange of messages between caller and callee indicates the existence of a challenge-response mechanism. The caller also sent some messages (not shown in Figure 9) over UDP to alternate Skype nodes, which are online Skype nodes discovered during login. For this scenario, three kilobytes of data was exchanged. Figure 9. Message flow for call establishment when caller and callee SC are on machines with public IP addresses and callee is present in the buddy lists of caller. B stands for bytes. Not all messages are shown. In the second network setup, where the caller was behind portrestricted NAT and callee was on public IP address, signaling and media traffic did not flow directly between caller and callee. Instead, the caller sent signaling information over TCP to an online Skype node which forwarded it to callee over TCP. This online node also routed voice packets from caller to callee over UDP and vice versa. The message flow is shown in Figure 10. Figure 10. Message flow for call establishment when caller SC is behind a port-restricted NAT and callee SC is on public IP address. B stands for bytes and N stands for node. Not all messages are shown. Caller SC sent UDP messages to nodes 5, 6, 7, and 8 during login and received responses from them. We thus believe caller SC stored the IP address and port of these nodes in its internal tables, which we call the alternate node table. For the third setup, in which both users were behind portrestricted NAT and UDP-restricted firewall, both caller and callee SC exchanged signaling information over TCP with another online Skype node. Caller SC sent media over TCP to an online node, which forwarded it to callee SC over TCP and vice versa. The message flow is shown in Figure 11.
9 generally do not want that arbitrary traffic should flow across their machines. During call tear-down, signaling information is exchanged over TCP between caller and callee if they are both on public IP addresses, or between caller, callee and their respective SNs. The messages observed for call tear down between caller and callee on public IP addresses are shown in Figure 12. Figure 12. Call tear down message flow for caller and callee with public IP addresses For the second, and third network setups, call tear down signaling is also sent over TCP. We, however, do not present these message flows, as they do not provide any interesting information. Figure 11. Message flow for call establishment when caller and callee SC are behind a port-restricted NAT and UDPrestricted firewall. B stands for bytes and N stands for a node. Not all messages are shown. Voice traffic flows over TCP. There are many advantages of having a node route the voice packets from caller to callee and vice versa. First, it provides a mechanism for users behind NAT and firewall to talk to each other. Second, if users behind NAT or firewall want to participate in a conference, and some users on public IP address also want to join the conference, this node serves as a mixer and broadcasts the conferencing traffic to the participants. The negative side is that there will be a lot of traffic flowing across this node. Also, users 4.5 Media Transfer and Codecs If both Skype clients are on public IP address, then media traffic flowed directly between them over UDP. The media traffic flowed to and from the UDP port configured in the options dialog box. The size of voice packet was 67 bytes, which is the size of UDP payload. For two users connected to Internet over 100 Mb/s Ethernet with almost no congestion in the network, roughly 140 voice packets were exchanged both ways in one second. Thus, the total uplink and downlink bandwidth used for voice traffic is 5 kilobytes/s. This bandwidth usage corresponds with the Skype claim of 3-16 kilobytes/s. If either caller or callee or both were behind port-restricted NAT, they sent voice traffic to another online Skype node over UDP. That node acted as a media proxy and forwarded the voice traffic from caller to callee and vice versa. The voice packet size was 67 bytes, which is the size of UDP payload. The bandwidth used was 5 kilobytes/s. If both users were behind port-restricted NAT and UDP-restricted firewall, then caller and callee sent and received voice traffic over TCP from another online Skype node. The TCP packet payload size for voice traffic was 69 bytes. The total uplink and downlink bandwidth used for voice traffic is about 5 kilobytes/s. For media traffic, SC used TCP with retransmissions. The Skype protocol seems to prefer the use of UDP for voice transmission as much as possible. The SC will use UDP for voice transmission if it is behind a NAT or firewall that allows UDP packets to flow across Silence Suppression No silence suppression is supported in Skype. We observed that when neither caller nor callee was speaking, voice packets still flowed between them. Transmitting these silence packets has two advantages. First, it maintains the UDP bindings at NAT and second, these packets can be used to play some background noise at the peer. In the case where media traffic flowed over TCP between caller and callee, silence packets were still sent. The purpose is to avoid the drop in TCP congestion window size, which takes some RTT to reach the maximum level again.
10 4.5.2 Putting a Call on Hold Skype allows peers to hold a call. Since a SC can operate behind NATs, it must ensure that UDP bindings are mak at a NAT. On average, a SC sent three UDP packets per second to the call peer, SN, or the online Skype node acting as a media proxy when a call is put on hold. We also observed that in addition to UDP messages, the SC also sent periodic messages over TCP to the peer, SN, or online Skype node acting as a media proxy during a call hold Codec Frequency Range We performed experiments to determine the range of frequencies Skype codecs allow to pass through. A call was established between two Skype clients. Tones of different frequencies were generated using the NCH Tone Generator [11] on the caller SC and output was observed on the callee SC and vice versa. We observed that the minimum and maximum audible frequency Skype codecs allow to pass through are 50 Hz and 8,000 Hz respectively. Using Net Peeker [4], we reduced the uplink and downlink bandwidth available to Skype application to 1500 bytes/s, respectively. We observed that the minimum and maximum audible frequencies Skype codecs allowed to pass through remained unchanged i.e. 50 Hz and 8,000 Hz, respectively Congestion We checked Skype call quality in a low bandwidth environment by using Net Peeker [4] to tune the upload and download bandwidth available for a call. We observed that uplink and downlink bandwidth of 2 kilobytes/s each was necessary for reasonable call quality. The voice was almost unintelligible at an uplink and downlink bandwidth of 1.5 kilobytes/s. 4.6 Keep-alive Messages We observed in for three different network setups that the SC sent a refresh message to its SN over TCP every 60s. Figure 13. Skype refresh message to SN 5. CONFERENCING We observed the Skype conferencing features for a three-user conference for the three network setups discussed in Section 3. We use the term user and machine interchangeably. Let us name the three users or machines as A, B, and C. Machine A was a 2 GHz Pentium 4 with 512 MB RAM while machine B, and C were Pentium II 300MHz with 128 MB RAM, and Pentium Pro 200 MHz with 128 MB RAM, respectively. In the first setup, the three machines had a public IP address. A call was established between A and B. Then B decided to include C in the conference. From the ethereal dump, we observed that B and C were sending their voice traffic over UDP to SC on machine A, which was acting as a mixer. It mixed its own packets with those of B and sent them to C over UDP and vice versa as shown in Figure 14. The size of the voice packet was 67 bytes, which is the size of UDP packet payload. Figure 14. Skype three user conferencing In the second setup, B and C were behind port-restricted NAT, and A was on public Internet. Initially, user A and B established the call. Both A and B were sending media to another Skype online node, which forwarded A s packets to B over UDP and vice versa. User A then put B on hold and established a call with C. It then started a conference with B and C. We observed that both B and C were now sending their packets to A over UDP, which mixed its own packets with those coming from B and C, and forwarded it to them appropriately. In the third setup, B and C were behind port-restricted NAT and UDP-restricted firewall and A was on public Internet. User A started the conference with B and C. We observed that both B and C were sending their voice packets to A over TCP. A mixed its own voice packets with those coming from B and C and forwarded them to B and C appropriately. We also observed that even if user B or C started a conference, A s machine, which was the most powerful amongst the three, always got elected as conference host and mixer. The white paper [7] observes that if ilbc [8] codec is used, then 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. For a three party conference, Skype does not do full mesh conferencing [12]. 6. OTHER EXPERIMENTS Unlike MSN Messenger, which signs out the user if that user logs in on other machine, Skype allows a user to log in from multiple machines simultaneously. The calls intended for that user are routed to all locations. Upon user picking a call at one location, the call is immediately cancelled at other locations. Similarly, instant messages for a user who is logged in at multiple machines are delivered to all the locations. A voice call was established between a SC in the IRT Lab [20] and a SC connected to a 56 kb/s modem. Modem users were in China, Pakistan, and Singapore. The experiment was then repeated with MSN, and Yahoo messengers. In all three cases, the modem users reported better quality for Skype.
11 The SN is selected by the Skype protocol based on a number of factors like CPU and available bandwidth. It is not possible to arbitrarily select a SN by filling the HC with IP address of an online SC. This conclusion was drawn from the following experiment. Consider two online Skype nodes A and B. A is connected to Skype network and has only one entry in its HC. We call super node of A as SN_A. Now we modify the HC of SC on machine B, such that it only contains the IP address and port number of SC running at A. When B logged onto the Skype network, we observed that it connected to A s super node rather than connecting to A. 7. CONCLUSION Skype is the first VoIP client based on peer-to-peer technology. We think that three factors are responsible for its increasing popularity. First, it provides better voice quality as then MSN and Yahoo IM clients; second, it can work almost seamlessly behind NATs and firewalls; and third, it is extremely easy to install and use. We believe Skype client uses its version of STUN [1] protocol to determine the type of NAT or firewall it is behind. The NAT and firewall traversal techniques of Skype are similar to many existing applications such as network games. It is by random selection of sending and listner ports, use of TCP as voice streaming protocol, and the peer-to-peer nature of the Skype network, that not only SC traverses NATs and firewalls but it does so withhout any explicit NAT or firewall traversal server. Skype uses TCP for signaling. It uses wide band codecs and has probably licenced them from GlobalIPSound [10]. Skype communication is encrypted. The underlying search technique Skype uses for user search is still not clear. Our guess is that it uses a combination of hashing and periodic controlled flooding to gain information about the online Skype users. Skype has a central login server which stores the login and password of each user. Since Skype packets are encrypted, it is not possible to say with certainty what other information is stored on the login server. However, during our experiments we did not observe any subsequent exchange of information with the login server after a user logged onto the Skype network. APPENDIX The Appendix shows the message dump of HTTP 1.1 GET requests that a SC sent to skype.com and the responses it received, when it was started by the user. When SC was started for the first time after installation, it sent a HTTP 1.1 GET request containing the keyword installed to skype.com. This request was not sent in subsequent Skype runs. The request is shown below: GET /ui/0/97/en/installed HTTP/1.1 User-Agent: Skype Beta 0.97 Host: ui.skype.com Cache-Control: no-cache The 200 OK response SC received for this GET request: HTTP/ OK Date: Tue, 20 Apr :51:39 GMT Server: Apache/ (Debian GNU/Linux) PHP/4.3.5 mod_ssl/ OpenSSL/0.9.7b X-Powered-By: PHP/4.3.5 Cache-control: no-cache, must revalidate Pragma: no-cache Expires: 0 Content-Length: 0 Content-Type: text/html; charset=utf-8 Content-Language: en During subsequent startups, SC sent a a HTTP 1.1 GET request containing the keyword getlatestversion to skype.com: GET /ui/0/97/en/getlatestversion?ver= HTTP/1.1 User-Agent: Skype Beta 0.97 Host: ui.skype.com Cache-Control: no-cache The 200 OK response SC received for this GET request: HTTP/ OK Date: Tue, 20 Apr :51:40 GMT Server: Apache/ (Debian GNU/Linux) PHP/4.3.5 mod_ssl/ OpenSSL/0.9.7b X-Powered-By: PHP/4.3.5 Cache-control: no-cache, must revalidate Pragma: no-cache Expires: 0 Transfer-Encoding: chunked Content-Type: text/html; charset=utf-8 Content-Language: en REFERENCES [1] J. Rosenberg, J. Weinberger, C. Huitema, and R. Mahy. STUN: Simple Traversal of User Datagram Protocol (UDP) Through Network Address Translators (NATs). RFC 3489, IETF, Mar [2] Global Index (GI): [3] Ethereal. [4] Net Peeker. [5] J. Rosenberg, H. Schulzrinne, G. Camarillo, A. R. Johnston, J. Peterson, R. Sparks, M. Handley, and E. Schooler. SIP: session initiation protocol. RFC 3261, IETF, June [6] R. Fielding, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach, T. Berners-Lee. HTTP: hyper text transfer protocol. RFC 2616, IETF, June [7] Skype conferencing white paper by PowerModeling: e%20test%20feb%2009.pdf [8] ILBC codec. [9] isac codec. [10] Global IP Sound. [11] NCH Tone Generator.
12 [12] J. Lennox and H. Schulzrinne. A protocol for reliable decentralized conferencing. ACM International Workshop on Network and Operating Systems Support for Digital Audio and Video (NOSSDAV), Monterrey, California, June [13] Skype FAQ. [14] Superb Internet. [15] Susquehanna Communications. [16] Everyones Internet. [17] KaZaa. [18] J. Rosenberg, R. Mahy, C. Huitema. TURN: traversal using relay NAT. Internet draft, Internet Engineering Task Force, July Work in progress. [19] I. Stoica, R. Morris, D. Karger, M. F. Kaashoek, H. Balakrishnan. Chord: A scalable peer-to-peer lookup service for internet applications. In Proc. ACM SIGCOMM (San Diego, 2001). [20] IRT lab. Figure 16. Skype connection tab. It shows the ports on which Skype listens for incoming connections. Figure 17. Skype host cache list
An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol
An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol Written by: Salman A. Baset and Henning G. Schulzrinne (Colombia University, NY) CIS 6000 Distributed Systems Benjamin Ferriman [email protected]
An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol
An Analysis of the Skype Peer-to-Peer Internet Telephony Protocol Salman A. Baset and Henning G. Schulzrinne Department of Computer Science Columbia University, New York NY 10027 {salman,hgs}@cs.columbia.edu
Skype characteristics
Advanced Networking Skype Renato Lo Cigno Credits for part of the original material to Saverio Niccolini NEC Heidelberg Skype characteristics Skype is a well known P2P program for real time communications
Best Practices for Controlling Skype within the Enterprise. Whitepaper
Best Practices for Controlling Skype within the Enterprise Whitepaper INTRODUCTION Skype (rhymes with ripe ) is a proprietary peer-to-peer (P2P) voice over Internet protocol (VoIP) network, founded by
Skype network has three types of machines, all running the same software and treated equally:
What is Skype? Why is Skype so successful? Everybody knows! Skype is a P2P (peer-to-peer) Voice-Over-IP (VoIP) client founded by Niklas Zennström and Janus Friis also founders of the file sharing application
VoIP over P2P networks
VoIP over P2P networks Víctor Ramos UAM-Iztapalapa Redes y Telecomunicaciones [email protected] http://laryc.izt.uam.mx/~vramos What is the Internet? The IP protocol suite and related mechanisms and
Mobile P2PSIP. Peer-to-Peer SIP Communication in Mobile Communities
Mobile P2PSIP -to- SIP Communication in Mobile Communities Marcin Matuszewski, Esko Kokkonen Nokia Research Center Helsinki, Finland [email protected], [email protected] Abstract This
A Performance Study of VoIP Applications: MSN vs. Skype
This full text paper was peer reviewed by subject matter experts for publication in the MULTICOMM 2006 proceedings. A Performance Study of VoIP Applications: MSN vs. Skype Wen-Hui Chiang, Wei-Cheng Xiao,
Overview. Tor Circuit Setup (1) Tor Anonymity Network
8-345: Introduction to Telecommunication Networks Lectures 8: Delivering Content Web, Peer-Peer, CDNs Peter Steenkiste Spring 05 www.cs.cmu.edu/~prs/nets-ece Web Peer-to-peer Motivation Architectures TOR
OVERVIEW OF ALL VOIP SOLUTIONS
OVERVIEW OF ALL VOIP SOLUTIONS Kovács Gábor Parnaki Zsolt Gergı 13/03/2009 TABLE OF CONTENTS Introduction Overview of VoIP protocols Standard based implementations: H.323 SIP Proprietary solutions: Skype
How To Use A Phone Over Ip (Phyto) For A Phone Call
SIP and VoIP Skype an example VoIP client 1 SIP / VoIP: what are these? Voice over IP (VoIP) Session Initiation Protocol (SIP) Control channel Known in telephone world as signaling channel Does call setup:
A Comparative Study of Signalling Protocols Used In VoIP
A Comparative Study of Signalling Protocols Used In VoIP Suman Lasrado *1, Noel Gonsalves *2 Asst. Prof, Dept. of MCA, AIMIT, St. Aloysius College (Autonomous), Mangalore, Karnataka, India Student, Dept.
Internet Security. Prof. Anja Feldmann, Ph.D. [email protected] http://www.net.t-labs.tu-berlin.de/
Internet Security Prof. Anja Feldmann, Ph.D. [email protected] http://www.net.t-labs.tu-berlin.de/ Prof. Dr. Jean-Pierre Seifert [email protected] http://www.sec.t-labs.tu-berlin.de/
IT Security Evaluation of Skype in Corporate Networks
IT Security Evaluation of Skype in Corporate Networks Tapio Korpela Helsinki University of Technology [email protected] Abstract Whilst the Skype community continues surging, using Skype Voice-over-IP (VoIP)
SOSIMPLE: A SIP/SIMPLE Based P2P VoIP and IM System
1 SOSIMPLE: A SIP/SIMPLE Based P2P VoIP and IM System David A. Bryan and Bruce B. Lowekamp Computer Science Department College of William and Mary Williamsburg, VA 23185 {bryan, lowekamp}@cs.wm.edu Abstract
Design of a SIP Outbound Edge Proxy (EPSIP)
Design of a SIP Outbound Edge Proxy (EPSIP) Sergio Lembo Dept. of Communications and Networking Helsinki University of Technology (TKK) P.O. Box 3000, FI-02015 TKK, Finland Jani Heikkinen, Sasu Tarkoma
A Self-Managing SIP-based IP Telephony System based on a P2P approach using Kademlia
A Self-Managing SIP-based IP Telephony System based on a P2P approach using Kademlia Felipe de Castro Louback Rocha 1, Linnyer Beatriz 1 Programa de Pós Graduação em Engenharia Elétrica, Universidade Federal
TECHNICAL CHALLENGES OF VoIP BYPASS
TECHNICAL CHALLENGES OF VoIP BYPASS Presented by Monica Cultrera VP Software Development Bitek International Inc 23 rd TELELCOMMUNICATION CONFERENCE Agenda 1. Defining VoIP What is VoIP? How to establish
Best Practices for Controlling Skype within the Enterprise > White Paper
> White Paper Introduction Skype is continuing to gain ground in enterprises as users deploy it on their PCs with or without management approval. As it comes to your organization, should you embrace it
User Manual. Onsight Management Suite Version 5.1. Another Innovation by Librestream
User Manual Onsight Management Suite Version 5.1 Another Innovation by Librestream Doc #: 400075-06 May 2012 Information in this document is subject to change without notice. Reproduction in any manner
Session Initiation Protocol and Services
Session Initiation Protocol and Services Harish Gokul Govindaraju School of Electrical Engineering, KTH Royal Institute of Technology, Haninge, Stockholm, Sweden Abstract This paper discusses about the
How To Block Skype
Why and How to block Skype Oscar Santolalla Helsinki University of Technology osantola(@)cc.hut.fi Abstract Skype has become a very popular Voice-over-Internet Protocol (VoIP) service that was designed
Guidance Regarding Skype and Other P2P VoIP Solutions
Guidance Regarding Skype and Other P2P VoIP Solutions Ver. 1.1 June 2012 Guidance Regarding Skype and Other P2P VoIP Solutions Scope This paper relates to the use of peer-to-peer (P2P) VoIP protocols,
Research on P2P-SIP based VoIP system enhanced by UPnP technology
December 2010, 17(Suppl. 2): 36 40 www.sciencedirect.com/science/journal/10058885 The Journal of China Universities of Posts and Telecommunications http://www.jcupt.com Research on P2P-SIP based VoIP system
TalkShow Advanced Network Tips
TalkShow Advanced Network Tips NewTek Workflow Team TalkShow is a powerful tool to expand a live production. While connecting in a TalkShow unit is as simple as plugging in a network cord and an SDI cable,
SIP : Session Initiation Protocol
: Session Initiation Protocol EFORT http://www.efort.com (Session Initiation Protocol) as defined in IETF RFC 3261 is a multimedia signaling protocol used for multimedia session establishment, modification
Bit Chat: A Peer-to-Peer Instant Messenger
Bit Chat: A Peer-to-Peer Instant Messenger Shreyas Zare [email protected] https://technitium.com December 20, 2015 Abstract. Bit Chat is a peer-to-peer instant messaging concept, allowing one-to-one
A Measurement of NAT & Firewall Characteristics in Peer to Peer Systems
A Measurement of NAT & Firewall Characteristics in Peer to Peer Systems L. D Acunto, J.A. Pouwelse, and H.J. Sips Department of Computer Science Delft University of Technology, The Netherlands [email protected]
NAT and Firewall Traversal with STUN / TURN / ICE
NAT and Firewall Traversal with STUN / TURN / ICE Simon Perreault Viagénie {mailto sip}:[email protected] http://www.viagenie.ca Credentials Consultant in IP networking and VoIP at Viagénie.
Voice-Over-IP. Daniel Zappala. CS 460 Computer Networking Brigham Young University
Voice-Over-IP Daniel Zappala CS 460 Computer Networking Brigham Young University Coping with Best-Effort Service 2/23 sample application send a 160 byte UDP packet every 20ms packet carries a voice sample
NEFSIS DEDICATED SERVER
NEFSIS TRAINING SERIES Nefsis Dedicated Server version 5.2.0.XXX (DRAFT Document) Requirements and Implementation Guide (Rev5-113009) REQUIREMENTS AND INSTALLATION OF THE NEFSIS DEDICATED SERVER Nefsis
A Scalable Multi-Server Cluster VoIP System
A Scalable Multi-Server Cluster VoIP System Ming-Cheng Liang Li-Tsung Huang Chun-Zer Lee Min Chen Chia-Hung Hsu [email protected] {kpa.huang, chunzer.lee}@gmail.com {minchen, chhsu}@nchc.org.tw Department
Understanding Slow Start
Chapter 1 Load Balancing 57 Understanding Slow Start When you configure a NetScaler to use a metric-based LB method such as Least Connections, Least Response Time, Least Bandwidth, Least Packets, or Custom
SIP OVER NAT. Pavel Segeč. University of Žilina, Faculty of Management Science and Informatics, Slovak Republic e-mail: [email protected].
SIP OVER NAT Pavel Segeč University of Žilina, Faculty of Management Science and Informatics, Slovak Republic e-mail: [email protected] Abstract Session Initiation Protocol is one of key IP communication
About Firewall Protection
1. This guide describes how to configure basic firewall rules in the UTM to protect your network. The firewall then can provide secure, encrypted communications between your local network and a remote
Adaptation of TURN protocol to SIP protocol
IJCSI International Journal of Computer Science Issues, Vol. 7, Issue 1, No. 2, January 2010 ISSN (Online): 1694-0784 ISSN (Print): 1694-0814 78 Adaptation of TURN protocol to SIP protocol Mustapha GUEZOURI,
REQUIREMENTS AND INSTALLATION OF THE NEFSIS DEDICATED SERVER
NEFSIS TRAINING SERIES Nefsis Dedicated Server version 5.1.0.XXX Requirements and Implementation Guide (Rev 4-10209) REQUIREMENTS AND INSTALLATION OF THE NEFSIS DEDICATED SERVER Nefsis Training Series
A P2P SIP Architecture - Two Layer Approach - draft-sipping-shim-p2p-arch-00.txt
A SIP Architecture - Two Layer Approach - draft-sipping-shim-p2p-arch-00.txt IETF65, Dallas March 25, 2006 Eunsoo Shim Sathya Narayanan Greg Daley Panasonic Digital Networking Laboratory Two Layer Approach
A Topology-Aware Relay Lookup Scheme for P2P VoIP System
Int. J. Communications, Network and System Sciences, 2010, 3, 119-125 doi:10.4236/ijcns.2010.32018 Published Online February 2010 (http://www.scirp.org/journal/ijcns/). A Topology-Aware Relay Lookup Scheme
VOICE OVER IP AND NETWORK CONVERGENCE
POZNAN UNIVE RSITY OF TE CHNOLOGY ACADE MIC JOURNALS No 80 Electrical Engineering 2014 Assaid O. SHAROUN* VOICE OVER IP AND NETWORK CONVERGENCE As the IP network was primarily designed to carry data, it
NAT Traversal in SIP. Baruch Sterman, Ph.D. Chief Scientist [email protected]. David Schwartz Director, Telephony Research davids@deltathree.
Baruch Sterman, Ph.D. Chief Scientist [email protected] David Schwartz Director, Telephony Research [email protected] Table of Contents 2 3 Background Types of Full Cone Restricted Cone Port Restricted
Implementing SIP and H.323 Signalling as Web Services
Implementing SIP and H.323 Signalling as Web Services Ge Zhang, Markus Hillenbrand University of Kaiserslautern, Department of Computer Science, Postfach 3049, 67653 Kaiserslautern, Germany {gezhang, hillenbr}@informatik.uni-kl.de
ANALYSIS OF LONG DISTANCE 3-WAY CONFERENCE CALLING WITH VOIP
ENSC 427: Communication Networks ANALYSIS OF LONG DISTANCE 3-WAY CONFERENCE CALLING WITH VOIP Spring 2010 Final Project Group #6: Gurpal Singh Sandhu Sasan Naderi Claret Ramos ([email protected]) ([email protected])
VoIP and NAT/Firewalls: Issues, Traversal Techniques, and a Real-World Solution
ACCEPTED FROM OPEN CALL VoIP and NAT/Firewalls: Issues, Traversal Techniques, and a Real-World Solution Hechmi Khlifi, Jean-Charles Grégoire, and James Phillips, Université du Québec ABSTRACT In spite
Adding Multi-Homing and Dual-Stack Support to the Session Initiation Protocol
Adding Multi-Homing and Dual-Stack Support to the Session Initiation Protocol Mario Baldi, Fulvio Risso, Livio Torrero Dipartimento di Automatica e Informatica, Politecnico di Torino, Torino, Italy {mario.baldi,
Session Initiation Protocol (SIP) The Emerging System in IP Telephony
Session Initiation Protocol (SIP) The Emerging System in IP Telephony Introduction Session Initiation Protocol (SIP) is an application layer control protocol that can establish, modify and terminate multimedia
An Introduction to VoIP Protocols
An Introduction to VoIP Protocols www.netqos.com Voice over IP (VoIP) offers the vision of a converged network carrying multiple types of traffic (voice, video, and data, to name a few). To carry out this
NAT TCP SIP ALG Support
The feature allows embedded messages of the Session Initiation Protocol (SIP) passing through a device that is configured with Network Address Translation (NAT) to be translated and encoded back to the
Technical Configuration Notes
MITEL SIP CoE Technical Configuration Notes Configure MCD for use with OpenIP SIP Trunking service SIP CoE 11-4940-00186 NOTICE The information contained in this document is believed to be accurate in
MITEL SIP CoE. Technical. Configuration Notes. Configure MCD 6.X for use with babytel SIP trunks. SIP CoE 13-4940-00266
MITEL SIP CoE Technical Configuration Notes Configure MCD 6.X for use with babytel SIP trunks SIP CoE 13-4940-00266 NOTICE The information contained in this document is believed to be accurate in all respects
Nokia E65 Internet calls
Nokia E65 Internet calls Nokia E65 Internet calls Legal Notice Copyright Nokia 2007. All rights reserved. Reproduction, transfer, distribution or storage of part or all of the contents in this document
Manual. ABTO Software
Manual July, 2011 Flash SIP SDK Manual ABTO Software TABLE OF CONTENTS INTRODUCTION... 3 TECHNICAL BACKGROUND... 6 QUICK START GUIDE... 7 FEATURES OF FLASH SIP SDK... 10 2 INTRODUCTION Trends indicate
Source-Connect Network Configuration Last updated May 2009
Source-Connect Network Configuration Last updated May 2009 For further support: Chicago: +1 312 706 5555 London: +44 20 7193 3700 [email protected] This document is designed to assist IT/Network
Network Convergence and the NAT/Firewall Problems
Network Convergence and the NAT/Firewall Problems Victor Paulsamy Zapex Technologies, Inc. Mountain View, CA 94043 Samir Chatterjee School of Information Science Claremont Graduate University Claremont,
The Role and uses of Peer-to-Peer in file-sharing. Computer Communication & Distributed Systems EDA 390
The Role and uses of Peer-to-Peer in file-sharing Computer Communication & Distributed Systems EDA 390 Jenny Bengtsson Prarthanaa Khokar [email protected] [email protected] Gothenburg, May
Dial91 iphone User Guide
Dial91 iphone User Guide Dial91 iphone Edition User Guide 1 About Dial91 iphone Edition Dial91 iphone Edition is a SIP-based phone for the Apple iphone mobile digital device, and ipod touch mobile digital
Application Note. Onsight Connect Network Requirements V6.1
Application Note Onsight Connect Network Requirements V6.1 1 ONSIGHT CONNECT SERVICE NETWORK REQUIREMENTS... 3 1.1 Onsight Connect Overview... 3 1.2 Onsight Connect Servers... 4 Onsight Connect Network
Packet Capture. Document Scope. SonicOS Enhanced Packet Capture
Packet Capture Document Scope This solutions document describes how to configure and use the packet capture feature in SonicOS Enhanced. This document contains the following sections: Feature Overview
Getting Started with. Avaya TM VoIP Monitoring Manager
Getting Started with Avaya TM VoIP Monitoring Manager Contents AvayaTM VoIP Monitoring Manager 5 About This Guide 5 What is VoIP Monitoring Manager 5 Query Endpoints 5 Customize Query to Filter Based
Authentication and Authorisation for Integrated SIP Services in Heterogeneous Environments 1
Authentication and Authorisation for Integrated SIP Services in Heterogeneous Environments 1 Dorgham Sisalem, Jiri Kuthan Fraunhofer Institute for Open Communication Systems (FhG Fokus) Kaiserin-Augusta-Allee
P2P: centralized directory (Napster s Approach)
P2P File Sharing P2P file sharing Example Alice runs P2P client application on her notebook computer Intermittently connects to Internet; gets new IP address for each connection Asks for Hey Jude Application
Bridgit Conferencing Software: Security, Firewalls, Bandwidth and Scalability
Bridgit Conferencing Software: Security, Firewalls, Bandwidth and Scalability Overview... 3 Installing Bridgit Software... 4 Installing Bridgit Software Services... 4 Creating a Server Cluster... 4 Using
Internet Technology Voice over IP
Internet Technology Voice over IP Peter Gradwell BT Advert from 1980s Page 2 http://www.youtube.com/v/o0h65_pag04 Welcome to Gradwell Gradwell provides technology for every line on your business card Every
SIP: Ringing Timer Support for INVITE Client Transaction
SIP: Ringing Timer Support for INVITE Client Transaction Poojan Tanna ([email protected]) Motorola India Private Limited Outer Ring Road, Bangalore, India 560 037 Abstract-The time for which the Phone
MITEL SIP CoE. Technical. Configuration Notes. Configure MCD 4.1 for use with SKYPE SIP Trunking. SIP CoE 10-4940-00120
MITEL SIP CoE Technical Configuration Notes Configure MCD 4.1 for use with SKYPE SIP Trunking SIP CoE 10-4940-00120 NOTICE The information contained in this document is believed to be accurate in all respects
Wharf T&T Limited DDoS Mitigation Service Customer Portal User Guide
Table of Content I. Note... 1 II. Login... 1 III. Real-time, Daily and Monthly Report... 3 Part A: Real-time Report... 3 Part 1: Traffic Details... 4 Part 2: Protocol Details... 5 Part B: Daily Report...
SHORT DESCRIPTION OF THE PROJECT...3 INTRODUCTION...4 MOTIVATION...4 Session Initiation Protocol (SIP)...5 Java Media Framework (JMF)...
VoIP Conference Server Evgeny Erlihman [email protected] Roman Nassimov [email protected] Supervisor Edward Bortnikov [email protected] Software Systems Lab Department of Electrical
Voice Over IP. Priscilla Oppenheimer www.priscilla.com
Voice Over IP Priscilla Oppenheimer www.priscilla.com Objectives A technical overview of the devices and protocols that enable Voice over IP (VoIP) Demo Packet8 and Skype Discuss network administrator
NAT and Firewall Traversal with STUN / TURN / ICE
NAT and Firewall Traversal with STUN / TURN / ICE Simon Perreault Viagénie {mailto sip}:[email protected] http://www.viagenie.ca Credentials Consultant in IP networking and VoIP at Viagénie.
Professor Yashar Ganjali Department of Computer Science University of Toronto. [email protected] http://www.cs.toronto.
Professor Yashar Ganjali Department of Computer Science University of Toronto [email protected] http://www.cs.toronto.edu/~yganjali Announcements Programming assignment 2 Extended Deadline: Fri.
CSCI-1680 CDN & P2P Chen Avin
CSCI-1680 CDN & P2P Chen Avin Based partly on lecture notes by Scott Shenker and John Jannotti androdrigo Fonseca And Computer Networking: A Top Down Approach - 6th edition Last time DNS & DHT Today: P2P
WHAT S BEHIND YOUR SMARTPHONE ICONS? A brief tour of behind-the-scenes signaling for multimedia services
WHAT S BEHIND YOUR SMARTPHONE ICONS? A brief tour of behind-the-scenes signaling for multimedia services Harry G. Perros Computer Science Department NC State University, Raleigh 27695 USA Email: [email protected]
Developing and Integrating Java Based SIP Client at Srce
Developing and Integrating Java Based SIP Client at Srce Davor Jovanovi and Danijel Matek University Computing Centre, Zagreb, Croatia [email protected], [email protected] Abstract. In order
Alkit Reflex RTP reflector/mixer
Alkit Reflex RTP reflector/mixer Mathias Johanson, Ph.D. Alkit Communications Introduction Real time audio and video communication over IP networks is attracting a lot of interest for applications like
2.2 SIP-based Load Balancing. 3 SIP Load Balancing. 3.1 Proposed Load Balancing Solution. 2 Background Research. 2.1 HTTP-based Load Balancing
SIP TRAFFIC LOAD BALANCING Ramy Farha School of Electrical and Computer Engineering University of Toronto Toronto, Ontario Email: [email protected] ABSTRACT This paper presents a novel solution to
Introduction to VoIP Technology
Lesson 1 Abstract Introduction to VoIP Technology 2012. 01. 06. This first lesson of contains the basic knowledge about the terms and processes concerning the Voice over IP technology. The main goal of
Peer-to-Peer Systems and Security
Peer-to-Peer Systems and Security Network Address Translation Christian Grothoff Technische Universität München April 8, 2013 Freedom of connection with any application to any party is the fundamental
Application Note. Firewall Requirements for the Onsight Mobile Collaboration System and Hosted Librestream SIP Service v5.0
Application Note Firewall Requirements for the Onsight Mobile Collaboration System and Hosted Librestream SIP Service v5.0 1 FIREWALL REQUIREMENTS FOR ONSIGHT MOBILE VIDEO COLLABORATION SYSTEM AND HOSTED
AV@ANZA Formación en Tecnologías Avanzadas
SISTEMAS DE SEÑALIZACION SIP I & II (@-SIP1&2) Contenido 1. Why SIP? Gain an understanding of why SIP is a valuable protocol despite competing technologies like ISDN, SS7, H.323, MEGACO, SGCP, MGCP, and
An outline of the security threats that face SIP based VoIP and other real-time applications
A Taxonomy of VoIP Security Threats An outline of the security threats that face SIP based VoIP and other real-time applications Peter Cox CTO Borderware Technologies Inc VoIP Security Threats VoIP Applications
Application Notes for Avaya IP Office 7.0 Integration with Skype Connect R2.0 Issue 1.0
Avaya Solution & Interoperability Test Lab Application Notes for Avaya IP Office 7.0 Integration with Skype Connect R2.0 Issue 1.0 Abstract These Application Notes describe the steps to configure an Avaya
RELOAD Usages for P2P Data Storage and Discovery
RELOAD Usages for P2P Data Storage and Discovery AW2-presentation from Alexander Knauf [email protected] Review Infrastructure Independent Conferencing: Decentralized fashion Multiple conference
Dial91 Android Edition User Guide
Dial91 Android Edition User Guide Dial91 Android Edition User Guide 1 About Dial91 Android Edition Dial91 Android Edition is a SIP- based phone for an Android phone. With Dial91 Android Edition (Dial91),
Performance evaluation of the Asterisk PBX
Performance evaluation of the Asterisk PBX Luís Sousa Instituto Superior Técnico Av. Rovisco Pais, 1049-001 Lisboa, Portugal [email protected] Abstract Currently PBX (Private Branch exchange)
MITEL SIP CoE Technical. Configuration Note. Configure MCD for use with Thinktel SIP Trunking Service. SIP CoE 12-4940-00197
MITEL SIP CoE Technical Configuration Note Configure MCD for use with SIP Trunking Service SIP CoE NOTICE The information contained in this document is believed to be accurate in all respects but is not
Guideline for setting up a functional VPN
Guideline for setting up a functional VPN Why do I want a VPN? VPN by definition creates a private, trusted network across an untrusted medium. It allows you to connect offices and people from around the
Integrated Instant Messaging System
Integrated Instant Messaging System Ajinkya Nalawade Dharmik Kamdar Pratik Angolkar Sharmila Gaikwad Assistant Professor, Department of Computer Engineering Abstract -- The Internet-based instant messaging
Setting up a reflector-reflector interconnection using Alkit Reflex RTP reflector/mixer
Setting up a reflector-reflector interconnection using Alkit Reflex RTP reflector/mixer Mathias Johanson Alkit Communications AB Introduction The Alkit Reflex reflector/mixer system can be set-up to interconnect
1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP.
Chapter 2 Review Questions 1. The Web: HTTP; file transfer: FTP; remote login: Telnet; Network News: NNTP; e-mail: SMTP. 2. Network architecture refers to the organization of the communication process
The Impact of SCTP on SIP Server Scalability and Performance
The Impact of on SIP Server Scalability and Performance Kumiko Ono, Henning Schulzrinne Department of Computer Science Columbia University Email: {kumiko, hgs}@cs.columbia.edu Abstract The Stream Control
A Realization method of Voice over IP System Passing Through Firewall and its Implementation
A Realization method of Voice over IP System Passing Through Firewall and its Implementation Masashi Ito and Akira Watanabe Graduate School of Science and Technology, Meijo University, Japan [email protected],
MyIC setup and configuration (with sample configuration for Alcatel Lucent test environment)
MyIC setup and configuration (with sample configuration for Alcatel Lucent test environment) N.B. Goto MyIC Preferences in the System Toolbar. Description: this may be any appropriate description of the
PortGo 6.0 for Wndows User Guide
PortGo 6.0 for Wndows User Guide PortSIP Solutions, Inc. [email protected] http:// @May 20, 2010 PortSIP Solutions, Inc. All rights reserved. This User guide for PortGo Softphone 6.0. 1 Table of Contents
Voice over IP Communications
SIP The Next Big Step Voice over IP Communications Presented By: Stephen J. Guthrie VP of Operations Blue Ocean Technologies Goals What are our Goals for Today? Executive Summary: It is expected that real-time
Project Code: SPBX. Project Advisor : Aftab Alam. Project Team: Umair Ashraf 03-1853 (Team Lead) Imran Bashir 02-1658 Khadija Akram 04-0080
Test Cases Document VOIP SOFT PBX Project Code: SPBX Project Advisor : Aftab Alam Project Team: Umair Ashraf 03-1853 (Team Lead) Imran Bashir 02-1658 Khadija Akram 04-0080 Submission Date:23-11-2007 SPBX
ENUM: Migrating to VoIP. P2P Voice Applications
Advanced Networking ENUM: Migrating to VoIP P2P Voice Applications Renato Lo Cigno Credits for part of the original material to Saverio Niccolini NEC Heidelberg Index ENUM P2P Basics Overlay & P2P Does
