Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
understanding-SIP.pdf
Скачиваний:
118
Добавлен:
01.03.2016
Размер:
4 Мб
Скачать
☆

SIP and the Internet

9

problem of TCP. This is a TCP problem in which a dropped segment with a large window causes the entire window’s worth of messages to wait in a buffer (that is, be blocked) until the dropped segment is retransmitted.

SCTP also supports multihoming, so if one of a pair of load balancing servers fails, the other can immediately begin receiving the messages without even requiring a DNS or other database lookup.

As a transport protocol, SCTP requires operating system level support to be used, which will initially delay its use in the Internet. Also, as we shall see in Chapter 10 on NAT traversal, the use of new transports on the Internet is severely limited by their support in middleboxes such as NAT. Also, note that the advantages of SCTP over TCP only occur during packet loss. In a zero loss network, the performance of the two is identical. SCTP is not commonly supported in Internet hosts today.

1.2.4.6 Datagram Congestion Control Protocol

Datagram Congestion Control Protocol (DCCP) [11] is another new transport protocol that tries to provide congestion and flow control similar to TCP but without the reliability or in-order delivery of TCP. It shows some promise for use as a real-time transport. However, its support is very limited today, and limited NAT support will delay its adoption.

1.2.5Application Layer

The top layer shown in Figure 1.1 is the application layer. This includes signaling protocols such as SIP and media transport protocols such as Real-Time Transport Protocol (RTP), which is introduced in Chapter 12. HTTP, SMTP, FTP, and Telnet are all examples of application layer protocols. SIP can theoretically use any transport protocol, although it is currently standardized to run over TCP, UDP, and SCTP. The use of TCP, TLS, SCTP, and UDP transport for SIP will be discussed in the next chapter.

1.2.6Utility Applications

Two Internet utility applications are also shown in Figure 1.1. The most common use of the DNS (well-known port number 53) is to resolve a symbolic name (such as domain.com, which is easy to remember) into an IP address (which is required by IP to route the packet). Also shown is the Dynamic Host Configuration Protocol (DHCP). DHCP allows an IP device to download configuration information upon initialization. Common fields include a dynamically assigned IP address, DNS addresses, subnet masks, maximum transmission unit (MTU), or maximum packet size, and server addresses for e-mail and Web browsing. SIP has a DHCP extension for configuration [12].

10

SIP: Understanding the Session Initiation Protocol

Another utility is Internet Control Message Protocol (ICMP), a control and diagnostic protocol that runs between single IP routing hops—between routers and between routers and hosts. It runs directly on top of the IP layer without a transport protocol, using protocol 1. The most common ICMP message is a Type 8 Echo Request or ping. Ping tests can be used to verify connectivity. A Type 0 Echo Reply is a ping response whose latency is often measured and displayed. Other ICMP error messages include a Type 3 Destination Unreachable message or a Type 11 TTL Exceeded for Datagram where TTL stands for Time to Live. ICMP is also used to provide the traceroute (tracert on Windows) Internet utility used to discover IP hops between hosts.

1.2.7Multicast

In normal Internet packet routing, or unicast routing, a packet is routed to a single destination. In multicast routing, a single packet is routed to a set of destinations. Single LAN segments running a protocol such as Ethernet offer the capability for packet broadcast, where a packet is sent to every node on the network. Scaling this to a larger network with routers is a recipe for disaster, as broadcast traffic can quickly cause congestion. An alternative approach for this type of packet distribution is to use a packet reflector that receives packets and forwards copies to all destinations that are members of a broadcast group. For a number of years, the Internet Multicast Backbone Network (MBONE), an overlay of the public Internet, has used multicast routing for high-bandwidth broadcast sessions. Participants who wish to join a multicast session send a request to join the session to their local MBONE router using a protocol known as Internet Group Management Protocol (IGMP). That router will then begin to broadcast the multicast session on that LAN segment.

Additional requests to join the session from others in the same LAN segment will result in no additional multicast packets being sent, since the packets are already being broadcast. If the router is not aware of any multicast participants on its segment, it will not forward any of the packets. Routing of multicast packets between routers uses special multicast routing protocols to ensure that packet traffic on the backbone is kept to a minimum. Multicast IPv4 Internet addresses are reserved in the range 224.0.0.0 to 239.255.255.255.

Multicast transport is always UDP, since the handshake and acknowledgments of TCP are not possible. Certain addresses have been defined for certain protocols and applications. The scope or extent of a multicast session can be limited using the time to live (TTL) field in the IP header. This field is decremented by each router that forwards the packet, which limits the number of hops the packet takes. SIP support for multicast will be discussed in Section 3.8. Multicast is slowly becoming a part of the public Internet as service providers begin supporting it, and it is finding an important application today in the streaming

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]