450 likes | 643 Views
Chair of Communication Systems Department of Applied Sciences University of Freiburg 2006. Communication Systems 16 th lecture (last but one). 1 | 45. Communication Systems administrational stuff. Next Tuesday last practical course – on VoIP and SIP
E N D
Chair of Communication Systems Department of Applied Sciences University of Freiburg 2006 Communication Systems16th lecture (last but one) 1 | 45
Communication Systemsadministrational stuff • Next Tuesday • last practical course – on VoIP and SIP • we provided a list of SIP accounts for testing last lecture, everybody should be able to connect the SIP server and start a VoIP session over it • Next Friday – written examinations, starting 10a.m. • Grades in oral or written exams will be sent to the examinations office (an will be available there beginning of winter term) • If you need a special printed paper – please tell us, so we could prepare it – it will be available at the secretaries of the computing department 2 | 45
Communication SystemsLast lecture – real time protocols and QoS • Introduction to real time services for video broadcasting, voice-over-IP, Internet telephony • Introduction of special multimedia protocols • RTP (Real Time Transport Protocol) • RTCP (RTP Control Protocol) • RSVP (Resource Reservation Protocol) • Problems of RSVP and multimedia chanllenges • Bandwidth management and Quality of Services • Provide QoS control in IP networks, i.e., going beyond best effort to provide some assurance for QoS 3 | 45
Communication SystemsPlan for this lecture – Voice over IP • We will introduce SIP – session initialization protocol • Telephony over IP networks • Only session setup, but compression, packet transport left to other services like RTP and RTCP • Second part of the lecture will introduce H.323 protocols • Standard defined by the ITU, thus much more complex with much more options and extensions to it • Primarily defined for ISDN/digital telephony networks • H.32x series defines not only VoIP but classical telefony too (H.324) and ISDN (H.320) 4 | 45
Communication Systems application layer protocols – internet telephony • For a rather long time telephone and data networks were different entities – remember the network taxonomy • packet orientated vs. circuit switched • packet orientation is rather efficient in bandwidth using but cannot give any guarantees on packet delivery • bandwidth growth and optional QoS helped to offer service quality near to circuit switching • Why to provide two completely different infrastructures for rather the same services? • voice is just another piece of data (and not the biggest one compared to other applications and services in use) 5 | 45
Communication Systems application layer protocols – internet telephony • Voice-over-IP is a big hype at the moment • every network equipment vendor has some products in its portfolio (even companies like Siemens are able to offer products conforming to standards!!) • many new “telephone companies” evolve to offer services, the old providers have to think on new strategies • all of them hope for reduce of costs and a source for roaring profits :-) • so TCP/IP is just used for another application/service • this service has to meet some requirements 6 | 45
Communication Systemsinternet telephony - requirements • security • reduced costs might induce new type of SPAM – spit (spam over internet telephony) • how to know that the caller is the one he claims to, same for the called partner • compatibility to existing services • routing of emergency calls • location of emergency • presence • rebustness of servers and “routes” • permanent updates of clients (mobile devices move from network to network) 7 | 45
Communication Systemsinternet telephony - requirements • Voice over IP should offer • higher robustness (e.g. alternate routes) • better voice quality • mobility, multimedia and conferencing • secure communication • gateways to other telephone systems (GSM, UMTS, PSTN) • 100% open standards • hope of a combination of lower costs with better functionality 8 | 45
Communication Systemsinternet telephony – infrastructure (idialized :-)) 9 | 45
Communication Systemsinternet telephony - standards • Requirements by VoIP services • enough bandwidth for digitized audio stream (both directions!) • minimal jitter and noise • Two main VoIP standards • H323 – standard developed by Telcos - ITU (second part of lecture) • SIP – internet standard • SIP is session initialization protocol • developed by Henning Schulzrinne (Feb. 1999) • IETF Standard RFC 2543 (March 1999) • current: RFC 3261 (June 2002) 10 | 45
Communication Systemsinternet telephony - SIP • SIP just for session setup not for transport of multimedia streams • inspired by HTTP • text based Peer-to-Peer application layer protocol • using requests and replies to set up a connection 11 | 45
Communication Systemsinternet telephony - SIP • Requirements toward SIP • localization of endpoints • setup of connections • exchange of media and presence information • modification of sessions: rerouting and cancelling of calls • complete a session • scalability (more than one session should be possible) • SIP addresses designed same way as email addresses • sip: “userID@sipgateway.site” 12 | 45
Communication SystemsSIP - entities • Peers = User Agents (UA) • a UA can fulfill on of the following roles • user agent client (UAC) = initiator of a request • user agent server (UAS) = application, which contacts the user and answers requests for him • SIP clients • telephones: as UAC or UAS • Gateways: connections to other networks, translates between different audio and video codecs • SIP server • might act as proxy server and could be used for • authentification, authorization • secure routing and rerouting 13 | 45
Communication SystemsSIP – server • SIP server • redirect server = information service • location server is the request address for the host on wich a given user might be reached on • registrar server acts as registration service • registers the current location of the clients • often at the same place as proxy or redirect • is not a required component for SIP, but useful in larger setups 14 | 45
Communication SystemsSIP – message types • SIP defines messages for communiction setup end ending 15 | 45
Communication SystemsSIP – direct example session • direct SIP connection • disadvantage: • the calling party has to know the IP address of called party • INVITE message contains the details, which type of session is to be initiated 16 | 45
Communication SystemsSIP – header fields • Request URI, SIP version number • VIA: SIP version number, protocol, every SIP entity adds host and port, which created or routed the message • Max-Forwards is decremented at every hop • To, From: tags as identifier • Call-ID: sender creates local non-ambiguous identifier which is globally unique in combination with the full qualified domain name • CSeq: command sequence is incremented with every new request • More optional fields • Contact contains the SIP address of the current host, if connected over proxy – messages could be sent directly • Content-Type and –Length tell the style of the following SDP body 18 | 45
Communication SystemsSIP – “trying message” (message before ringing) 19 | 45
Communication SystemsSIP – “ringing” (cont.) • To and From fields are the same as in INVITE • direction of the initiating request is important • connection over a proxy • only answers to requests, does not send requests by itself • no media abilities (does not handle media sessions) • reads header and does not analyse body+ • proxy may send request for clients location to location server 21 | 45
Communication SystemsSIP – redirect, registering & instant messaging • redirection • client sends INVITE to the SIP redirect server • redirect server sends a request to the location server or requests the IP of the client to call • current data is sent to the client, which ACK's • from now on further on like direct connection • registration • REGISTER message to SIP registration server • binding of the SIP URI with IP the users client/machine • 200 OK • instant messaging like the wellknown tools in that sector • online status, buddy lists ... 23 | 45
Communication SystemsSDP – service description protocol • session description protocol (SDP) • IETF standard RFC 2327 • text coded like SIP • description syntax 24 | 45
Communication SystemsSDP – service description protocol • example: • v=0 • o=calling 2890844526 2890844526 IN IP4 10.8.4.254 • s=Phone Call • c=IN IP4 100.101.102.103 • t=0 • m=audio 49170 RTP/AVP • a=rtpmap:0 PCMU/8000 • Version is 0 (at the moment no other versions available) • Origin o=username session-id version network-type adress-type adress • Subject s=subject 25 | 45
Communication SystemsSDP – service description protocol (cont.) • Connection Data c=network-type address-type connection-adress • Time t=start-time stop-time • Media Announcements m=media port transport format-list • Attributes a=… • This setup defines the multimedia session • which usually uses RTP / RTCP explained later this lecture 26 | 45
Communication SystemsSIP – firewalls, NAT, ... • NAT • SIP messages contain IP addresses in the data segments of its packets • internal network addresses from the NATted network are not visible from the „outside“ world • A calls B, B gets the message from A, but not vice versa • problem could be solved with a proxy server sitting in the internal and external LAN • Firewalls • RTP does not use fixed layer 4 port numbers • variable in the range of 1024 - 65534 27 | 45
Communication SystemsSIP – firewalls, NAT, ... (cont.) • stun protocol • simple traversal of UDP through NATs • returning public's IP port • can help to determine which kind of NAT is used • most clients implement that protocol to produce the relevant SDP messages • stun server will send its response to the IP:port the initial packet was sent to • if change-ip flag, then sends from different IP • if change-port flag from different port 28 | 45
Communication SystemsH323 – the ITU specification of VoIP • Introduced SIP • Internet standard, thus rather simple in layout and functionality • compression, packet transport left to other services like RTP and RTCP (earlier lectures) • the latter define container and control protocols for multimedia data streams • H.323 is another standard for VoIP • Standard defined by the ITU, thus much more complex with much more options and extensions to it • Primarily defined for ISDN/digital telephony networks (remember the protocol stacks of the ISDN/SS7/Q.931 of earlier lectures) 29 | 45
Communication Systemsinternet telephony - standards • H.323 – standard developed by Telcos - ITU • Thus the H.32x series defines not only VoIP but classical telefony too (H.324) and ISDN (H.320) - “umbrella standard” • 1996 the first version 1 was introduces, today modern equipment is using version 5 • Family of protocols: defines the transmission of multimedia content in realtime over unreliable networks • Protocol suite consists of several modules: terminal, gateway, gatekeeper, MCU (multipoint controller unit) 30 | 45
H.323 Gatekeeper H.323 Terminal H.323 Terminal H.323 MCU H.323 Gateway Communication SystemsH.323 - components Paketorientiertes Netzwerk H.320 Endpunkt ISDN Andere Telefonnetze SIP klass. Telefonie Analoges Telefon SIP Client 31 |45
Communication Systems H.323 – terminals • Terminals and their components • communication end points • hardware modules like (IP Telephones) or software (softphones) • used mainly for audio communication, but video and data (e.g. Whiteboard application) possible too • Terminals has to implement audio codecs (G.7XX) • Required codec: G.711 (just ISDN PCM) • Optional codecs: G.722, G.723, G.728, G.729 • Codecs may comprimise between qualitiy, needed computing power, used bandwidth • And may implement video codecs (H.26X) • Optional: H.261, H.263 32 | 45
Communication Systems H.323 – terminal components • Terminals implements a data channel H.225.0 for • conversion of streams for the transport of the different kinds of network interfaces and vice versa • Framing, numbering of sequenzen, error detection and correction • The terminal system unit is defined by standards H.245 for media control • Call control • Capability exchange • Setup and description of logical channels (voice, video, other applications) 33 | 45
Communication Systems H.323 – protocols and transportation • The H.245 media control channel, the data channels and the call signaling channel requires a certain reliability and therefor may use TCP • The unreliable UDP is used for the voice and video channels, which use the RTP (presented last lecture) 34 | 45
Communication SystemsH.323 - protocol Daten Steuerung Audio Video T.12X H.225.0 H.245 RAS G.711 G.723.1 G.729 G.729A H.261 H.263 RTP/ RTCP RTP/ RTCP TCP UDP IP Physikal. Schicht / Vermittlungsschicht • Layered protocol • precall control • control of the calls itself • media control • transport of media data • H.323 is not TCP/IP dependent and can be used over ISDN too 35 | 45
Communication Systems H.323 – gatekeeper, MCU • Gatekeeper • „Manager“ of a zone • Access control • Address translation (telephone numbers – IP addresses) • Call authorization • Gatekeeper could be found by either fixed IP setting in terminals or dynmically be multicast request • Multi controller unit (MCU) • allows multipoint connections, conferences • e.g. for video conferences with more than two partners • Multiplexing of audio/video channels 36 | 45
Communication Systems H.323 – gateway • Gateways • Interface to other types of telephony networks or between different network like IP and ISDN • Seamless translation • Signal conversion • Translates in realtime between two protocol stacks and their respective formats • Or: interface to another H.323 gateway 37 | 45
Communication Systems H.323 – call setup • H323 connection between two participants • Call setup uses the H225 protocol • A -> B: Setup • B -> A: Alerting • A -> B: Connect • Device setup done via H245 protocol • A -> B: termCapSet • B -> A: termCapAck • B -> A: termCapSet • A -> B: termCapAck • A -> B: mSDet • B -> A: mSDetAck • A -> B: mSDetConfirm 38 | 45
Communication Systems H.323 – call setup and destruction • Device setup done via H245 protocol (cont.) • A -> B: openReq • B -> A: openAck • B -> A: openReq • A -> B: openAck • Then: Voice and video streams via RTP packets • Call teardown • A -> B: endSession • B -> A: endSession • A -> B: releaseComplete 39 | 45
Communication Systems H.323 – devices • Several vendors in the market, e.g. Polycom • Computing dept. uses soft and hardware client by that vendor capable of ISDN and IP network connections • Other softclients: • MS Netmeeting • Gnome Meeting (Linux) 40 | 45
Communication SystemsH-protocols and codecs • codecs encode and decode analog data for transport over digital networks (independent of network type) • g series codecs are defined for audio, h series for video streams • rather common – pulse code modulation (PCM) • sampling -> quantisation -> encoding • G.711: 8000 Hz x 256 Q.-Intervalle = 64 kbit/s • well known standard for ISDN telephone networks • codecs might offer compression and voice activity detection (or silence detection) 41 | 45
Communication SystemsH-protocols and codecs • how to select suitable codecs (different for voice, music, ...) • tradeoff between bandwidth and “qualitty” • rather subjective criterion (mean opion score) • different popular voice codecs compared 42 | 45
Communication Systemsbandwidth and codecs • needed bandwidth for a multimedia session depends on the demands of the codec used • often this bandwidth is needed full-duplex • rather big overhead through headers • e.g. packets travelling over ethernet • 18 Byte ethernet, 20 Byte IP, 8 Byte UDP, 12 Byte RTP • ~ 58 Byte header information / ~ 120 Byte for codec (depending on samples and data rate) 43 | 45
Communication SystemsH.323 – SIP comparison • handle rather the same type of services • H.323 was developed for telecommunication, not primerily for IP networks • SIP is directly focused for the Internet use • H.323 is able to handle video conferences and offers more complex telefony functions • SIP much simpler, but clearer and easier to understand/implement, scales better • SIP might take over, but many products implement H.323 so it is not dead by now 44 | 45
Communication SystemsLiterature • Kurose & Ross: Computer Networking, 3rd edition (international) • Section 7.4.3 SIP • Tanenbaum: Computer Networks, 4th edition: • Section 7.4.5 Voice over IP 45 | 45