[ Pobierz całość w formacie PDF ]
.They provide aset of control functions for multiparty multimedia conferencing, and can alsodetermine the master/slave relationship between parties to open/close logicalchannels between the endpoints.In Figure 2-7 I showed the functions and rel-ative positions of H.225 and H.245 with reference to ISO s open system inter-connection (OSI) stack [1].Figure 3-2 shows the protocol sequence for estab-lishment of a real-time H.323 voice communication session from one PSTNphone to another over an IP network.Note that in this diagram, ARQ standsfor Admission Request, ACF for Admission Confirm, LRQ for LocationRequest, and LCF for Location Confirm.Ingress and egress gateways areindicated by IGW and EGW, respectively.Ingress and egress gatekeepers areindicated by IGK and EGK, respectively.SESSION INITIATION PROTOCOL (SIP)SIP (IETF s RFC 3261) refers to a suite of call setup and media mapping pro-tocols for multimedia (including voice) communications over a wide area net-36 EVOLUTION OF VoIP SIGNALING PROTOCOLSFigure 3-2 Message exchange for setting up an H.323-based VoIP session from onePSTN phone to another over an IP network.work (WAN).It includes definitions of the SIP, Session Announcement Pro-tocol (SAP), and Session Description Protocol (SDP; RFCs 3266, 3108, and2327).SIP supports flexible addressing.The called party s address can be an e-mailaddress, a URL, or ITU-T s E.164-based telephone number.It uses a simplerequest-response protocol with syntax and semantics that are very similar tothose of the HTTP protocol used in the World Wide Web (WWW).As thename suggests, SIP is used to initiate a session between users, but it does so in alightweight fashion.This is because SIP performs location service, call partici-pant management, and call establishment but not resource reservation for thecircuit or tunnel that is to be used for transmission of information.Thesecharacteristics of SIP appear to be very similar to the features of the H.225protocol.SAP is used along with SDP to announce the session descriptionsproactively (via UDP packets) to the users.SDP includes information about the media streams, attributes of thereceiver s capability, destination address(es) for unicast or multicast, UDP port,payload type, and so on.The receiver s capability may include a list of en-coders that the sender can use during a session.These attributes can also berenegotiated dynamically during a session to reduce the probability of conges-tion.These characteristics of SDP appear to be very similar to the features ofthe H.245 protocol.SESSION INITIATION PROTOCOL 37Figure 3-3 Message exchange for setting up a SIP-based voice communication sessionfrom one IP or SIP phone to another.SIP architectural elements include (a) user agents (UA): client (UAC) orserver (UAS) and (b) network servers: redirection, proxy, or registrar.Theclient or end device in SIP includes both the client and the server; hence, a callparticipant (end device) may either generate or receive requests.SIP requestscan traverse many proxy servers.Each proxy server may receive a request andthen forward it to the next-hop server, which may be another proxy server orthe destination UA server.A SIP server may act as a redirect server as well.Aredirect server informs the client about the next-hop server so that the clientcan contact it directly.Figure 3-3 shows the message exchange for a SIP-based call setup.Note thatthe number of messages that need to be exchanged to set up a SIP session issmaller than that for an H.323 session (Fig.3-2).As of 2001, both software-based (running in a PC) and hardware-based SIP and IP phones were available.For call routing over a large IP network, SIP may use the TRIP (telephonyrouting over IP, a work-in-progress in IETF s IPTel WG, RFC 2871) protocolto locate the server to which a call should be routed.For routing a call to aPSTN terminal (POTS phone), it may be necessary to use the ENUM (elec-tronic numbering, RFC 2916) protocol.ENUM converts E.164 telephonyaddress to IP address (using an enhanced DNS server) and vice versa.38 EVOLUTION OF VoIP SIGNALING PROTOCOLSSIP s request-response messages include an INVITE request followed bya reply indicating the results; for example, a reply of 200 OK means that theconnection request has been accepted.The request contains header fields thatare used to convey call information.Following the header fields is the body ofthe message, which contains a description of the session to be established.Since SIP allows the use of fast, (call) stateless proxies in the core of thenetwork and (call) stateful proxies at the edge, SIP is significantly more scalablethan H.323.However, one can argue that by using RAS-only GKs in the coreand full routing GKs on the edge, it is possible to achieve the same range ofscalability in the H.323 domain as well.The following variants of SIP have emerged during the past few years: SIP-,SIP best common practice (SIP-BCP), SIPþ/SIP-T, and so on.However,SIPþ/SIP-T appears to be the most useful (feature-rich) variant and the domi-nant one for interworking with PSTN.SIPþ/SIP-T is an extension of SIP that allows call termination to the PSTN.It encapsulates SS7 ISUP, Q.931 ISDN, or CAS signals as a MIME attach-ment to a SIP (e-mail) message.SIPþ adds the ability to handle carrier sig-naling and tunnel PSTN-to-PSTN calls through an IP network.The MIMEencoding permits the signals to be tunneled between media gateway controllers(MGCs).SIPþ retains full SIP functionality in the sense that the followingfeatures can still be used: (a) multihop searches to route calls to the terminatingend, (b) network to network connections (NNIs) to terminate calls to a carrierother than the originating one, and (c) addition of proxies to subdivide thenetwork (which makes it more scalable).SIP programming interfaces include the call-processing language (CPL), theSIP common gateway interface (SIP-CGI), and SIP server-based applets (serv-lets).CPL (RFC 2824) is an extensible markup language (XML)-based scriptinglanguage for describing call services.It o¤ers primitives for making deci-sions based on call properties and is engineered for end-user service creation viagraphical user interface (GUI)-based tools.It is fast, lightweight, and scalable.SIP-CGI is similar to HTTP CGI (almost 90% equivalent).It is the interfacethat generates SIP services using the programming language of choice.This isvery similar to the development of dynamic Web content.It is more flexiblethan CPL, but doesn t scale as well and can be much more risky to execute.It needs to be guarded against intentional or unintentional malicious scriptbehavior.SIP servlets mirror the concept of HTTP servlets
[ Pobierz całość w formacie PDF ]