P2P Networks 195 Network servers: There are three types of servers in a network: 1. Registration server (or registrars): This server keeps track of the user location (i.e., the current PC or terminal on which the user resides). The user-agent sends a registration message to the SIP registrar, and the registrar stores the registration information in a location service via a non-SIP protocol (e.g., LDAP). Once the information is stored, the registrar sends the appropriate response back to the user- agent. 2. Proxy server: Proxy servers are application layer routers that receive SIP requests and forward them to the next hop server that may have more information about the location of the called party. 3. Redirect server: Redirect servers receive requests and then return the location of another SIP user agent or server where the user might be found. It is quite common to find proxy, redirect and registrar servers implemented in the same program. SIP is based on an HTTP-like request/response transaction model. Each transaction consists of a request that invokes a particular method or function, on the server and at least one response. Just as for HTTP, all requests and responses use textual encoding for SIP. Some commands and responses of SIP and their use are illustrated in Table 11.1. Table 11.1: Commands and Responses Used in SIP Method Used INVITE For inviting a user to a call ACK For reliable exchange of invitation messages BYE For terminating a connection between the two endpoints CANCEL For terminating the search for a user OPTIONS For getting information about the capabilities of a call REGISTER For giving information about the location of a user to the SIP registration server Message format for SIP is shown Figure 11.2. The message body is separated from the header by a blank line. The Via indicates the host and port at which the caller is expecting a response. When an SIP message goes through a number of proxies, each such proxy appends to CU IDOL SELF LEARNING MATERIAL (SLM)
196 Advanced Computer Networks this field with its own address and port. This enables the receiver to send back an acknowledgment through the same set of proxies. The From (or To) field specifies the SIP URI of the sender (or receiver) of the invitation, which is usually the e-mail address assigned to the user. The call-ID contains a globally unique identifier of this call generated by a combination of a random string and IP address. The Content-Length and Content-Type fields describe the body of the SIP message. Request Response Method URL SIP/2.0 SIP/2.0 status return Via: SIP/2.0/protocol host.port From: user<sip:from_user@source> To: user<sip:to_user@destination> Call-ID localid@host Content-Length: length of the body Content-Type: media type of body Header: parameter, par1=”value”, par2=”value” Blank line intentionally left to separate header from body V=0 o = origin_user time stamp time stamp IN IP4 host c = IN IP4 media destination address t=00 m = media type port RTP/AVP payload types SIP message Fig. 11.2: Sip Message Format We now illustrate a simple example (refer to Figure 11.2) that captures the essence of SIP operations. Here, a client (caller) is inviting a participant (callee) for a call. The SIP client creates an INVITE message for [email protected], which is normally sent to a proxy server (Step 1). This proxy server tries to obtain the IP address of the SIP server that handles requests for the requested domain. The proxy server consults a location server to determine this next hop server (Step 2). The location server is a non-SIP server that stores information about the next hop server for different users and returns the IP address of the machine where callee can be found (Step 3). CU IDOL SELF LEARNING MATERIAL (SLM)
P2P Networks 197 On getting this IP address, the proxy server forwards the INVITE message (Step 5) to the host machine. After the UAS has been reached, it sends an OK response back to the proxy server (Step 8), assuming that the callee wants to accept the call. The proxy server, in turn, sends back an OK response to the client (Step 9). The client then confirms that he or she has received the response by sending an ACK (Step 10). A full-fledged multimedia session is now initiated between the two participants. At the end of this session, the callee sends a BYE message to the caller (Step 11), which in turn ends the session with another BYE message (Step 12). Note that we have skipped the TRYING and RINGING message exchanges (Step 4, Step 6, and Step 7) in the above explanation. 1. Invite Fig. 11.3: Timeline for a Typical SIP Session CU IDOL SELF LEARNING MATERIAL (SLM)
198 Advanced Computer Networks 11.7 SIP Security SIP security is a vast and somewhat challenging field. Authentication: Can users steal other users’ identity? Integrity: Is the SIP message received the same as the one sent? Confidentiality: Is someone else listening on your SIP call setup? Privacy Non-repudiation: Making sure we can trace callers In addition, the RTP media stream, the actual conversation audio, may need to be confidential. Client Security Replay Server Security Denial-of-service attacks IETF RFCs RFC 3329 Security Mechanism Agreement for the Session Initiation Protocol (SIP) RFC Draft SIP Digest Authentication Relay Attack Security between Networks Securing the customer connection is not the only precaution that a Service Provider must take. Connections at peering points must also be secured. A recent Yankee Group report cited ‘Network topology hiding’ as one of the key drivers behind deploying session border controllers. We refer to a session border controller sited at a peering point as a Core Session Border Controller. A Core Session Border Controller performs several duties: It hides the real addresses of your customers from peer networks. It hides the details of your internal network from peer networks. It polices the connection to other Service Providers. It can remark QoS settings between Service Providers. It provides detailed call information. CU IDOL SELF LEARNING MATERIAL (SLM)
P2P Networks 199 Protect Your Customers A Core Session Border Controller acts as a proxy for all users in a network. The home network’s DNS ensures that all off-network calls are routed to the Core Session Border Controller. It does this by giving the address of the Core Session Border Controller as the address of any remote Call Agent. The session border controller creates new signaling and media addresses that are sent to the remote network. The called party in the remote network sees the session border controller as the source of the call. All signaling and media will be returned via the session border controller. In this way, the called party has no visibility of the user’s real address. Incoming calls are also routed via the home network’s Core Session Border Controller. The remote network’s DNS supplies the address of the Core Session Border Controller as the home network ’ s Call Agent. Therefore, the Core Session Border Controller receives all calls coming into the home network. It presents its own addresses in the reply for both signaling and media. This architecture prevents visibility of the user’s real network address in the remote network. The Core Session Border Controller can prevent scanning and DoS attack at the peering point. At Newport Networks, we believe that the carrier-class 1460 session border controller is ideal for deployment in these demanding locations. Designed for high availability, it offers Service Providers a reliable method of securely interconnecting multimedia networks. Fig. 11.4: Core Session Border Controller CU IDOL SELF LEARNING MATERIAL (SLM)
200 Advanced Computer Networks Protect Your Network In addition to hiding the address of the user, the Core Session Border Controller hides the internal network details. The Core Session Border Controller acts as an endpoint for the two legs of the SIP call: one to the home network and one to the remote network. This means that details of routing in one leg are not passed to the other. There is a clean separation between the networks. Therefore, the only information visible in the remote network is that of its own network. Police the Border A Core Session Border Controller connects all inter-network multimedia traffic. The Newport Networks ’ 1460 session border controller polices traffic flow-by-flow as it enters and leaves the network. Calls established using SIP carry an identifier of the media type. The 1460 measures the actual flow against expected flow for the requested media type. This can prevent service theft, i.e., requesting a low bandwidth connection and using high bandwidth media. If excessive data rates are seen, corrective action is taken. For example, it can dump excess traffic, it can generate an alarm or it can create punitive charging records. The 1460 session border controller can also check and, if necessary, remark QoS bits. This can be done generically for each network or specifically for each session. This prevents users from manipulating the quality settings of their call to get a better service than they are paying for. This also enables carriers to enforce IP-IP interconnect agreements to deliver ‘end- to-end’ SLAs. 11.8 Summary In Computer Networking, P2P is a file sharing technology, allowing the users to access mainly the multimedia files like videos, music, e-books, games, etc. The individual users in this network are referred to as peers. The peers request for the files from other peers by establishing TCP or UDP connections. A peer-to-peer network allows computer hardware and software to communicate without the need for a server. When one peer makes a request, it is possible that multiple peers have the copy of that requested object. Now, the problem is how to get the IP addresses of all those peers. This is decided by the underlying architecture supported by the P2P systems. By means of one of these methods, the client peer can get to know about all the peers which have the requested object/file and the file transfer takes place directly between these two peers. Peer-to-peer SIP (P2P-SIP) is an implementation of a distributed voice over Internet Protocol (VoIP) or instant messaging CU IDOL SELF LEARNING MATERIAL (SLM)
P2P Networks 201 communications application using a peer-to-peer (P2P) architecture, in which session control between communication endpoints is facilitated with the Session Initiation Protocol (SIP). A SIP address is a lot like an e-mail address, in that it also serves as a locator of the user. SIP addresses even look very similar to e-mail addresses. Like e-mail addresses, they are comprised of two parts: a username and a domain. Session Initiation Protocol (SIP) is a signaling protocol used for initiating, maintaining, modifying and terminating real-time sessions that involve video, voice, messaging and other communications applications and services between two or more endpoints on IP networks. SIP was developed by four people and later approved by the Internet Engineering Task Force (IETF) in 1996—and standardized in 1999. SIP was designed to address the evolving needs of IP-based communications. 11.9 Keywords/Abbreviations Session Initiation Protocol (SIP): A signaling protocol used for initiating, maintaining, modifying and terminating real-time sessions that involve video, voice, messaging and other communications applications and services between two or more endpoints on IP networks. Peer-to-peer (P2P) Network: A group of computers, each of which acts as a node for sharing files within the group. User Agent Server (UAS): The Server that hosts the application responsible for receiving the SIP requests from a UAC, and on reception, it returns a response to the request back to the UAC. Request for Comments (RFC): A formal document drafted by the Internet Engineering Task Force (IETF) that describes the specifications for a particular technology. TCP (Transmission Control Protocol): A standard that defines how to establish and maintain a network conversation. Abbreviations WMN: Wireless Mesh Networks SIP: Session Initiation Protocol PSTN: Public Switched Telephone Network IETF: Internet Engineering Task Force ASCII: American Standard Code for Information Interchange P2P: Peer to Peer CU IDOL SELF LEARNING MATERIAL (SLM)
202 Advanced Computer Networks UAS: User Agent Server RFC: Request for Comments TCP: Transmission Control Protocol SDP: Session Description Protocol RTP: Real-time Transport Protocol UAC: User Agent Client UAS: User Agent Server LDAP: Light-weight Directory Access Protocol 11.10 Learning Activity 1. What is P2P (peer-to-peer) used for? ----------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------- 2. Why are peer-to-peer networks useful? ----------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------- 11.11 Unit End Questions (MCQs and Descriptive) A. Descriptive Type Questions 1. What is SIP explain its characteristics. 2. Explain SIP Addressing. 3. Explain different components of SIP. 4. Explain SIP session establishment with example. 5. Explain SIP security in detail. B. Multiple Choice/Objective Type Questions 1. P2P is a __________ application architecture. (a) Tier-I (b) Network client (c) Client-server (d) None of the above CU IDOL SELF LEARNING MATERIAL (SLM)
P2P Networks 203 2. Network in which every computer is capable of playing the role of client, server or both at the same time is called __________. (a) Peer-to-peer network (b) Local area network (c) Dedicated server network (d) Wide area network 3. In peer-to-peer network, each computer in a network is referred as __________. (a) Server (b) Client (c) Peer (d) Sender 4. The processes on each machine that communicate at a given layer are called __________. (a) UDP process (b) Intranet process (c) Server technology (d) Peer-to-peer process 5. DHCP Server provides __________ to the client. (a) Protocol (b) IP Address (c) MAC Address (d) Network Address Answers 1. (c), 2. (a), 3. (c), 4. (d), 5. (b) 11.12 References 1. https://searchunifiedcommunications.techtarget.com/definition/Session-Initiation- Protocol 2. Data Communications and Networking Book by Behrouz A. Forouzan. 3. SIP: Understanding the Session Initiation Protocol Book by Alan B. Johnston. CU IDOL SELF LEARNING MATERIAL (SLM)
www.cuidol.in 1800-1213-88800 INSTITUTE OF DISTANCE & ONLINE LEARNING NH-95, Chandigarh-Ludhiana Highway, Gharuan, Mohali (Punjab) Phone:- 7527009635 | Email: [email protected] FOLLOW US ON:
Search
Read the Text Version
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
- 88
- 89
- 90
- 91
- 92
- 93
- 94
- 95
- 96
- 97
- 98
- 99
- 100
- 101
- 102
- 103
- 104
- 105
- 106
- 107
- 108
- 109
- 110
- 111
- 112
- 113
- 114
- 115
- 116
- 117
- 118
- 119
- 120
- 121
- 122
- 123
- 124
- 125
- 126
- 127
- 128
- 129
- 130
- 131
- 132
- 133
- 134
- 135
- 136
- 137
- 138
- 139
- 140
- 141
- 142
- 143
- 144
- 145
- 146
- 147
- 148
- 149
- 150
- 151
- 152
- 153
- 154
- 155
- 156
- 157
- 158
- 159
- 160
- 161
- 162
- 163
- 164
- 165
- 166
- 167
- 168
- 169
- 170
- 171
- 172
- 173
- 174
- 175
- 176
- 177
- 178
- 179
- 180
- 181
- 182
- 183
- 184
- 185
- 186
- 187
- 188
- 189
- 190
- 191
- 192
- 193
- 194
- 195
- 196
- 197
- 198
- 199
- 200
- 201
- 202
- 203
- 204
- 205
- 206
- 207
- 208
- 209
- 210