Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

This is the first level bullet for notes 12 point Arial Regular

Hasonló előadás


Az előadások a következő témára: "This is the first level bullet for notes 12 point Arial Regular"— Előadás másolata:

1 This is the first level bullet for notes 12 point Arial Regular
This is the second level bullet for notes 9 point Arial Regular This is the third level bullet for notes 9 point Arial Regular

2 Valósidejű kommunikációs kihívások
This is the first level bullet for notes 12 point Arial Regular This is the second level bullet for notes 9 point Arial Regular This is the third level bullet for notes 9 point Arial Regular VoIP, H.323, SIP, WebRTC, NAT Enterprise Software Engineering – meetup 03/18/2015

3 Tartalom VoIP alapok QoS, codec-ek H.323 SIP WebRTC
Protocol stack: STUN, TURN, ICE, DTLS-SRTP Media Engine, codec-ek ORTC Browser API-k Realtime Persistent Collaboration / PaaS – Platform-as-a-Service Circuit Távközlési trendek, standardizácó

4 Voice over IP alapok Vonalkapcsolt világ
TDM – Time Division Multiplexing, SCN – Switched Circuit Network Garantált sávszélesség Csomagkapcsolt világ (packet-switched) Különböző sávszélességigényű kapcsolatok egy hálózaton VoIP protokollok: H.323, SIP, Skype, WebRTC Jelzésrendszer: Q.931, H.225, SIP Média: RTP, RTCP Codec Titkosítás: TLS, SRTP, MiKEY, SDES, DTLS-SRTP Quality of Service

5 Quality of Service Lehetséges problémák csomagkapcsolt környezetben:
Sávszélesség Csomagvesztés Késleltetés Jitter – változó késleltetés Sorrendhelyesség Sérült csomagok QoS protokollok Layer 2: IEEE 802.1p – Class of Service (CoS) az Ethernet keretben az IEEE 802.1Q által definiált VLAN fejlécben, 8 prioritás szint Layer 3: DiffServ – DSCP (Differentiated Services Code Point) az IP fejléc DS mezőjében

6 Audio codec-ek Codec Sávszélesség Szabadalom Mintavétel Bit / minta Késleltetés CBR VBR Megjegyzés G.711 A-low 64 kbit/s - 8 kHz 13 bit 125 us x Európa G.711 u-law Észak-Amerika, Japán G.722 16 kHz 14 bit 4 ms G.729 8 kbit/s 15 ms G.729.1 8-32 kbit/s 8 v. 16 kHz 16 bit 48,9375 ms CPU kímélőbb G.729 iLBC 13.33, kbit/s ? Ingyenes impl. 30, 20 ms internet Low Bitrate Codec GSM-HR 5.6 kbit/s 25 ms half rate GSM-FR 13 kbit/s 20-30 ms full rate GSM-EFR 12.2 kbit/s enhanced full rate Codec-ek összehasonlítási szempontjai: sávszélesség igény, mintavételi frekvencia (átviteli sávszélesség), rendszerbe bevitt késleltetés, számítási teljesítmény igény, licenszdíj, adaptivitás és végül: szubjektív hangminőség.

7 Opus Codec: Quality vs Bitrate
Forrás:

8 Opus Codec: Bitrate vs. Latency
Forrás: Audio samples:

9 RTP – Real-time Transport Protocol
Általános keretrendszer real-time adatok továbbítására (audio, video,...) UDP-t használ, eredetileg páros portok Támogatja a multicast-ot Biztosítja a helyes csomagsorrendet Alsóbb rétegek biztosítják számára a QoS-t RTP session = IP cím + RTP és RTCP port RTP Audio Video Profile (RTP/AVP), RFC 3551, pár példa: Payload type: 0 PCMU G.711 u-law Payload type: 3 GSM GSM-FR Payload tpye: 4 G723 G.723.1 Payload type: 8 PCMA G.711 A-law Dynamic Payload Type, pl.: RFC 2833 – DTMF RFC 2198 – Redundant transmission

10 RTCP – Real-time Control Protocol
QoS adatokat szállít: jitter, round-trip delay Információkat szállít a résztvevőkről: CNAME – canonical end-point identifier UDP – eredetileg páratlan portokon, RTP.Port + 1 Hierarchiába szervezhetők a jelentések (multicast esetén hasznos, pl. IPTV) Adaptív jelentés-gyakoriság, max. 5% sávszélesség Üzenettípusok Sender report (SR) Receiver report (RR) Source description (SDES) End of participation (BYE) Application-specific message (APP)

11 H.323 áttekintés és basic call-flow
ITU-T esernyő-szabvány Q.931 alapján, H.225.0, H.245, T120, T38 stb. Hang, videó, fax/adatkapcsolat. Bináris, ASN.1 struktúrákat használ Entitások: Terminal, Gatekeeper, Gateway FastConnect Titkosítás: H.235, MiKEY, TLS Forrás:

12 H.323 Protocol Stack Forrás:

13 Session Initiation Protocol (SIP)
Szöveges üzenetek, UTF-8 karakter kódolással a HTTP protokoll alapján Kliens-szerver architektúra, Entitások: UA, Proxy, Registrar, SBC. Tranzakció orientált, request/response A DNS koncepió és URI újrahasználásával Uniform Resource Identifier, pl.: End-to-end intelligens végpontok és buta hálózat, ellentétben az ISDN/PBX modellel a route-oláson kívül minden logika a végpontokban van SDP – Session Description Protocol, média leírására RTP / RTCP – média átvitelére

14 SIP üzenetek SDP – Session Description Protocol (RFC 4566)
Request-Line INVITE SIP/2.0 Message Header Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9 Max-Forwards: 70 From: Alice To: Bob Call-ID: CSeq: 1 INVITE Contact: Content-Type: application/sdp Content-Length: 151 Blank Line Message Body (SDP) v=0 o=alice IN IP4 client.atlanta.example.com s=- c=IN IP t=0 0 m=audio RTP/AVP 0 a=rtpmap:0 PCMU/8000 SDP – Session Description Protocol (RFC 4566) Média kiegyezésre, offer / answer protokoll RFC 3264 alapján Szöveges leírás

15 SIP trapezoid / call-flow

16 SIP NAT mögött RTP dinamikusan kiosztott portokat használ, problémás a tűzfalaknak Megoldások: Elkerülni a NAT-ot ahol lehet IP tunneling Nyilvános SIP szolgáltatók használata (SIP OPTIONS) Hivatalos megoldások ALG (Application Layer Gateways), pl.: SBC – Outbound proxy a kliensben STUN (Session Traversal Utilities for NAT), RFC 5389 TURN (Traversal Using Relays around NAT), RFC 5766 ICE (Interactive Connectivity Establishment), RFC 5245 Megkerülő megoldások (workarounds) NAT átkonfigurálása, pl. port forwarding VoIP HTTP protokollon, pl.: IAX (Inter Asterisk eXchange)

17 WebRTC vs RTCweb IETF RTCWEB Working Group
Protocols, STUN, TURN, ICE W3C WebRTC Working Group Browser API, RTCPeerConnection, GetUserMedia Source Libjingle – Google implementation, library

18 WebRTC codec-ek Audio Opus – IETF RFC 6716, Firefox/Chrome, 6–510 Kbit/s Skype’s SILK codec + Xiph.org’s CELT codec G.711 – not used by Chrome SILK – Microsoft/Skype, nem kompatibilis Opus-szal Video VP8 – Google, ingyenes, 100–2,000+ Kbit/s H.264 – OpenH264/Cisco, Firefox – download on install Squared/Spark miatt MPEG Licensing Administration, (MPEG LA) VP9, Chrome in beta, SVC – Scalable Video Codec H.265

19 WebRTC Audio / Video engines
Encoding/decoding, Noise Reduction, Packet Loss Concealment, Adaptive Jitter-buffer Acquiring Audio and Video with getUserMedia Forrás:

20 NAT Traversal Mapping hiányában a kívülről jövő csomagokat eldobja a NAT tűzfal Forrás:

21 STUN Session Traversal Utilities for NAT (STUN), RFC 5389
Segít felfedezni a NAT tűzfalat a hálózatban és megállapítani a külső IP:port párt Külső STUN szervert igényel, STUN binding request Keepalive a NAT route bejegyzések megtartására Probléma: UDP általában le van tiltva vállalati proxy-kban Forrás:

22 TURN Traversal Using Relays around NAT (TURN), RFC 5766
Ha nem működik a STUN, TURN relay, UDP, fallback to TCP Külső TURN szervert igényel, TURN allocate request, permission negotiation Probléma: már nem peer-to-peer, TURN kapacitás Forrás:

23 ICE Interactive Connectivity Establishment (ICE), RFC 5245
A leghatékonyabb kapcsolat felderítése: közvetlen, STUN, TURN Probléma: ICE candidate gathering megnövelheti a hívásfelépítési időt, nagy SDP Trickle ICE: inkrementális gyűjtés, signalling channelen küldi át menetközben Forrás:

24 WebRTC Protocol Stack DTLS: Datagram Transport Layer Security (RFC 6347) – pl. SRTP kulcskiegyezés Javához: SCTP: Stream Control Transport Protocol (RFC 4960) p2p adatcsatornához, TCP szerű Naked SCTP nem működik együtt a NAT tűzfalakkal Multiplexing: több SRTP, SRTCP stream ugyanazon a porton Forrás:

25 WebRTC vs ORTC Forrás: ORTC API Update, Robin Raymond/Peter Thatcher/Bernard Aboba, IIT RTC Conference, Chicago, IL, Sept. 30, 2014.

26 WebRTC 1.0 to ORTC 1.1 ORTC – Object-RTC
Objektum orientált API SDP manipulációra a Microsoft elképzelése, talán a Spartan böngészővel érkezik, Windows 10 WebRTC imlementálható az ORTC API-n A vonalon elvileg megegyeznek: protokollok, codec-ek Forrás: ORTC API Update, Robin Raymond/Peter Thatcher/Bernard Aboba, IIT RTC Conference, Chicago, IL, Sept. 30, 2014.

27 WebRTC charter Media Stream Functions API functions to manipulate media streams for interactive real-time communications, connecting various processing functions to each other, and to media devices and network connections, including media manipulation functions for e.g. allowing to synchronize streams. Supplementary functions such as recording of media streams are also in scope. Audio Stream Functions An extension of the Media Stream Functions to process audio streams, to enable features such as automatic gain control, mute functions and echo cancellation. Video Stream Functions An extension of the Media Stream Functions to process video streams, to enable features such as bandwidth limiting, image manipulation or "video mute". Functional Component Functions API functions that allow to query for the components present in an implementation, instantiate them, and connect them to media streams. P2P Connection Functions API functions to provide interfaces that enable the conveyance of parameters necessary to establish peer to peer connections, based on the protocols selected by the IETF RTCWeb Working Group. Included in this category are also API functions to allow identification of the peer. Forrás:

28 WebRTC charter / Device API WG
Media Capture and Streams JavaScript APIs that allow local media, including audio and video, to be requested from a platform MediaStream Recording a JavaScript API to record MediaStreams MediaStream Image Capture a JavaScript API to capture still images from a video MediaStream Media Capture Depth Stream Extensions An extension to the Media Capture and Streams API to capture depth streams (e.g. from 3D cameras) Media Capture from DOM Elements An extension to DOM elements to allow to capture a media stream from their content Audio Output Devices API JavaScript APIs that let a Web application manage how audio is rendered on the user audio output devices Screen Capture API An extension to the Media Capture and Streams API to use a user's display, or parts thereof, as the source of a MediaStream.

29 WebRTC vállalati környezetben
RETURN – Recursively Encapsulated TURN for Connectivity and Privacy WebRTC gateways Security Considerations for WebRTC HTTP Proxy tunneling Simulcast, layered video - multiple streams Second screen: - make webapps more similiar to desktop apps Statistics:

30 WebPush Regisztráció WebApp engedélyt kér a böngészőtől/felhasználótól PushServer megválaszolja a regisztrációt Böngésző visszatér a PushService objektummal és az URL-lel ahova üzenetet küldhet az AppServer WebApp elküldi az AppServernek a Push URL-t Üzenet kézbesítés AppServer üzen a Push URL-en keresztül PushServer értesíti a böngészőt Böngésző értesíti a megfelelő WebApp-et WebPush - cél az energiahatékonység növelése

31 Realtime Persistent Collaboration
Ismertebb implementációk Slack - Circuit – Unify, Squared/Spark – Cisco, Skype for Business – Microsoft, Lync & Skype, várható megjelenés Április, 2015. Box, Dropbox, Glip, Hipchat, Asana, Sococo, Moxtra, Talko, Voxer Platform-as-a-Service PaaS SDK, API TokBox, Twilio, Digium: Respoke

32 Circuit

33 További trendek, kihívások
Firefox hello – WebRTC / Telefonica WebRTC/DTLS/ICE interworking with SIP/SDES/MiKEY Közös codec-ek Transcoding VS Distributing: 50:1 QoS az interneten Authentication unauthenticated origins -> TLS SIP Source Identity FCC (Federal Communications Commission) to shut down PSTN (Public Switched Telephone Network)

34 Vészhívások / Emergency Service
Lokáció meghatározása IP cím alapján nem lehetséges. Forrás: NICC ND 143 V1.1.1 ( )

35 Köszönöm a figyelmet!


Letölteni ppt "This is the first level bullet for notes 12 point Arial Regular"

Hasonló előadás


Google Hirdetések