Transcript Chapter 7

Poglavlje 7 Multimedijalno umrežavanje

Computer Networking: A Top Down Approach Featuring the

Internet, 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley, July 2004. 7: Multimedijalno umrežavanje 7 - 1/121

Multimedija, Quality of Service: Šta je to?

Multimedijalne aplikacije:

mrežni audio i video (“kontinualni mediji”)

QoS

mreža obezbeđuje aplikaciji

aplikacije nivo performansi potreban za funkcionisanje

7: Multimedijalno umrežavanje 7 - 2/121

Poglavlje 7: Ciljevi Principi

 Klasifikacija multimedijalnih aplikacija    Identifikacija mrežnih servisa koji su potrebni aplikaciji Odabrati najbolji od best effort servisa Mehanizmi za obezbeđivanje QoS

Protokoli i arhitekture

  Specifični protokoli za servis najboljeg pokušaja Arhitekture za QoS 7: Multimedijalno umrežavanje 7 - 3/121

Poglavlje 7: sadržaj

    7.1 Multimedijalne mrežne aplikacije 7.2 Streaming uskladištene audio i video aplikacije 7.3 Multimedija u realnom vremenu: Proučavanje telefoniranja preko Internet-a 7.4 Protokoli za interaktivne aplikacije koje rade u realnom vremenu  RTP,RTCP,SIP      7.5 Distribuirane multimedijalne aplikacije: distribuirane mreže bazirane na sadržaju 7.6 Iznad najboljeg pokušaja 7.7 Mehanizmi raspoređivanja i vođenja politike 7.8 Integrisani servisi i diferencirani servisi 7.9 RSVP 7: Multimedijalno umrežavanje 7 - 4/121

MM aplikacije umrežavanja Klase MM aplikacija:

1) Streaming uskladištenog audio i video sadržaja 2) Streaming audio i video signala-zapisa "uživo" 3) Interaktivni audio i video u realnom vremenu Jitter je promena kašnjenja paketa unutar istog toka paketa (packet stream)

Osnovne karakteristike:

 Tipično

osetljivost na kašnjenje

 end-to-end kašnjenje  jitter kašnjenje  Tolerancija gubitaka: koji se ne pojavljuju često prouzrokovani minornim greškama-kvarovima Ove karakteristike se razlikuju od "elastičnih" Web aplikacija, e mail, FTP i Telnet, koje su netolerantne na gubitke ali tolerantne na kašnjenje gubici 7: Multimedijalno umrežavanje 7 - 5/121

Streaming uskladištenih multimedijanih aplikacija Streaming:

 medijalna aplikacija uskladištena na izvoru   transmitovana do klijenta streaming: klijentovo preslušavanje ili gledanje - playout počinje pre nego što svi podaci stignu - vremenska ograničenja za podatke koji još uvek treba da se prenesu nisu toliko stroga kao kod aplikacija "uživo", interaktivnih aplikacija kao što su telefoniranje preko Interneta i video konferensing.

7: Multimedijalno umrežavanje 7 - 6/121

Streaming uskladištene multimedijalne aplikacije: Šta je to ?

1. video recorded 2. video sent

network delay

3. video received, played out at client vreme

streaming:

deo videa u ovom trenutku, klijent izvodi (play out) rani-početni deo videa, dok server još uvek šalje preostali 7: Multimedijalno umrežavanje 7 - 7/121

Streaming uskladištene multimedijalne aplikacije: interaktivnost

Funkcionalnost kao-kod-VCR-a:

klijent može da pauzira, premota video zapis itd.

 10 sec početno kašnjenje OK   1-2 sec dok komanda ne počne da se izvršava OK RTSP je često korišćen 7: Multimedijalno umrežavanje 7 - 8/121

Streaming multimedijalnih aplikacija "uživo" Primeri:

 Internet radio talk show  Uživo sportski događaji

Streaming

 playback bafer  playback može da se uspori nekoliko desetina sekundi nakon transmisije  postoje vremenska ograničenja još uvek

Interaktivnost

  nemuguće brzo premotavanje premotavanje pa pauza, to je moguće 7: Multimedijalno umrežavanje 7 - 9/121

Interaktivnost, Multimedija u realnom vremenu

  

aplikacije:

IP telefoniranje, video konferencija, distribuirani interaktivni svet

zahtevi end-end kašnjenja:

  za glas, kašnjenja manja od 150 msec slušalac ne primećuje kašnjenja između 150 msec i 400 msec mogu biti prihvatljiva • uključuju aplikacioni-nivo (paketizacija) i mrežna kašnjenja • značajno veća kašnjenja slabe interaktivnost

inicijalizacija sesija

 kako onaj koji poziva oglašava svoju IP adresu, broj porta, algoritme kodiranja?

7: Multimedijalno umrežavanje 7 - 10/121

Multimedija preko današnjeg Internet a TCP/UDP/IP:

nema

?

?

“servis najboljeg pokušaja”

garancija da neće biti kašnjenja, gubitaka

?

?

?

?

?

Ali rekli ste da multimedijalne aplikacije zahtevaju da QoS i nivo performansi budu efikasni!

?

?

?

?

Današnje multimedijalne aplikacije na Internet-u koriste tehnike aplikacionog nivoa da bi smanjile (što je moguće više) uticaje kašnjenja i gubitaka 7: Multimedijalno umrežavanje 7 - 11/121

Kako treba razvijati Internet da bolje podržava multimediju?

Filozofija integrisanih servisa:  Fundamentalne promene na Internet-u tako da aplikacije mogu da rezervišu end-to-end širinu opsega  Zahteva novi, kompleksan softver na hostovima i ruterima Nemešanje   nema promena kao gore ISP povećavaju širinu opsega kako zahtevi rastu   mreže sa distribucijom sadržaja repliciraju uskladišten sadržaj na krajeve Internet-a (Web strane, MP3, video) višestruko upućivanje na overlay mrežama na aplikacionom sloju  sportski događaji Filozofija različitih servisa:  Male promene Internet infrastrukture tako da se obezbeđuje prva i druga klasa servisa 7: Multimedijalno umrežavanje 7 - 12/121

Nekoliko reči o audio kompresiji

    pre prenosa preko računarskih mreža signal treba biti digitalizovan i komprimovan Analogni signal (glas, muzika) je semplovan konstantnom brzinom   telefon: 8,000 samples/sec CD muzika: 44,100 samples/sec Svaki odbirak je kvantizovan, tj. zaokružen  npr. 2 8 =256 mogućih kvantizacionih veličina Svaka kvantizaciona veličina je predstavljena bit-ovima  8 bit-ova za 256 vrednosti     PCM impulsno kodna modulacija primer: 8,000 samples/sec, 8 bitova --> 64,000 bps Prijemnik vrši konverziju nazad u analogni signal:  postoji smanjenje kvaliteta CD - 44100 samples/sec, 16 bits per sample Primeri brzina  CD stereo: 1.411 Mbps   tehnike kompresije MPEG 1 sloj 3 - MP3: 96, 128, 160 kbps. Kada se datoteka MP3 razbije na delove, svaki deo još uvek može da se reprodukuje.

7: Multimedijalno umrežavanje 7 - 13/121

Nekoliko reči o video kompresiji

    Video je niz slika prikazanih konstantnom brzinom  npr. 24 ili 30 slika/sec Digitalna slika je niz piksela Svaki piksel je predstavljen bit-ovima koji definišu osvetljenje i boju Redundantnost   prostorna vremenska

Primeri:

   MPEG 1 (CD-ROM) 1.5 Mbps MPEG2 (DVD) 3-6 Mbps MPEG4 (za objektno orijentisanu video kompresiju, često korišćen na Internet-u, < 1 Mbps)

Istraživanje:

 Uslojeni (skalabilni) video  prilagođava slojeve na iskoristljivu širinu opsega 7: Multimedijalno umrežavanje 7 - 14/121

Poglavlje 7: sadržaj

    7.1 Multimedijalne mrežne aplikacije 7.2 Streaming uskladištene audio i video aplikacije 7.3 Multimedija u realnom vremenu: Proučavanje telefoniranja preko Internet-a 7.4 Protokoli za interaktivne aplikacije koje rade u realnom vremenu  RTP,RTCP,SIP      7.5 Distribuirane multimedijalne aplikacije: distribuirane mreže bazirane na sadržaju 7.6 Iznad najboljeg pokušaja 7.7 Mehanizmi raspoređivanja i vođenja politike 7.8 Integrisani servisi i diferencirani servisi 7.9 RSVP 7: Multimedijalno umrežavanje 7 - 15/121

Streaming uskladištene multimedijalne aplikacije

RealTimeProtocol, RTStreamingP Tehnike streaming-a aplikacionog nivoa za pravljenje najboljeg rešenja servisa najboljeg pokušaja:  bafering na klijent strani   korišćenje UDP-a u odnosu na TCP višestruka kodiranja multimedije Media Player    dekompresija uklanja jitter korekcija greške 7: Multimedijalno umrežavanje 7 - 16/121

Multimedija na Iternet-u: najprostiji pristup

   audio ili video uskladišten u fajl pretraživač uspostavlja TCP konekciju sa Web serverom i zahteva audio/video fajl sa HTTP zahtev-porukom fajl transferovan kao HTTP objekat   primljen u potpunosti na klijent strani onda prosleđen plejeru

audio, video nisu stream-ovani:

 ne postoji, “pipelining,” duga kašnjenja, dok ne bude playout!

7: Multimedijalno umrežavanje 7 - 17/121

Multimedija na Iternet-u: streaming pristup

    pretraživač dobija (GET)

metafile

(URL ili tip kodiranja) pretraživač startuje player, prosleđujući mu metafile player kontaktira server server

stream-uje

audio/video ka player-u 7: Multimedijalno umrežavanje 7 - 18/121

Streaming sa streaming servera

  Ova arhitektura dozvoljava protokole koji nisu HTTP između servera i medija player-a Koristi UDP radije nego TCP 7: Multimedijalno umrežavanje 7 - 19/121

Streaming multimedijalne aplikacije: bafering na klijent strani constant bit rate video transmission

variable network delay

client video reception constant bit rate video playout at client client playout delay  Bafering na klijent strani, playout kašnjenje kompenzuje dodatno kašnjenje na mreži, jitter kašnjenje time 7: Multimedijalno umrežavanje 7 - 20/121

Streaming multimedijalne aplikacije: bafering na klijent strani variable fill rate, x(t) constant drain rate, d buffered video  Bafer na klijent strani se puni brzinom x(t) i prazni brzinom d 7: Multimedijalno umrežavanje 7 - 21/121

Streaming multimedijalne aplikacije: UDP ili TCP?

UDP

  server šalje brzinom koja odgovara klijentu (ne obazire se na mrežna zagušenja !)  brzina slanja = brzina kodovanja = konstantna brzina  zatim, brzina punjenja = konstantna brzina - paketni gubici kratko playout kašnjenje (2-5 sekundi) da bi kompenzovao mrežno jitter kašnjenje  oporavak od greške

TCP

    slanje je sa maksimalno mogućom brzinom kod TCP-a brzina punjenja se menja zbog TCP kontrole zagušenja, retransmisije izgubljenih paketa veće playout kašnjenje: "glatka" TCP brzina isporuke HTTP/TCP prolaze lakše kroz firewalls 7: Multimedijalno umrežavanje 7 - 22/121

Streaming multimedijalne aplikacije: klijentova brzina (e)

1.5 Mbps encoding 28.8 Kbps encoding Q: kako rukovati različitim sposobnostima klijentove brzine prijema?

 28.8 Kbps dialup  100Mbps Ethernet A: server skladišti, transmituje više kopija videa, kodiranih različitim brzinama 7: Multimedijalno umrežavanje 7 - 23/121

Korisnička kontrola streaminga media: Real Time Streaming Protocol - RTSP

HTTP  Nije mu cilj multimedijalni sadržaj  Nema komande za brzo premotavanje, repozicioniranje, itd.

RTSP: RFC 2326  Klijent-server protokol aplikacionog sloja.

 Za korisnika da bi kontrolisao display: rewind, fast forward, pause, resume, repositioning itd. … Šta ne radi:  ne definiše kompresione šeme za audio i video    ne definiše kako je audio/video enkapsuliran za streaming preko mreže ne određuje kako se streamed media transportuje; može biti transportovan preko UDP-a ili TCP-a ne specificira kako media player baferuje audio/video 7: Multimedijalno umrežavanje 7 - 24/121

RTSP: out of band kontrola

FTP koristi “out-of-band” kontrolni kanal:  Fajl je prenešen preko jedne TCP konekcije.

  Kontrolne informacije (promena direktorijuma, brisanje fajla, promena imena fajla, itd.) se šalju preko odvojene TCP konekcije.

“out-of-band” i “in-band” kanali koriste različite brojeve portova RTSP poruke su takođe poslate out-of-band:  RTSP kontrolne poruke koriste različite brojeve portova u odnosu na media stream: out of-band.

  Port 554 media stream se posmatra “in band”.

7: Multimedijalno umrežavanje 7 - 25/121

RTSP Primer Scenario:

   metafile za komunikaciju ka web browser-u browser startuje player player postavlja RTSP control konekciju, data konekciju ka streaming server-u 7: Multimedijalno umrežavanje 7 - 26/121

Metafile primer

Twister 7: Multimedijalno umrežavanje 7 - 27/121

Kako radi RTSP

7: Multimedijalno umrežavanje 7 - 28/121

RTSP primer razmene

C - client, S - sender C: SETUP rtsp://audio.example.com/twister/audio RTSP/1.0 Transport: rtp/udp; compression; port=3056; mode=PLAY S: RTSP/1.0 200 1 OK Session 4231 C: PLAY rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=0 .

C: PAUSE rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 Range: npt=37 .

C: TEARDOWN rtsp://audio.example.com/twister/audio.en/lofi RTSP/1.0 Session: 4231 S: 200 3 OK 7: Multimedijalno umrežavanje 7 - 29/121

Poglavlje 7: sadržaj

    7.1 Multimedijalne mrežne aplikacije 7.2 Streaming uskladištene audio i video aplikacije 7.3 Multimedija u realnom vremenu: Proučavanje telefoniranja preko Internet-a 7.4 Protokoli za interaktivne aplikacije koje rade u realnom vremenu  RTP,RTCP,SIP      7.5 Distribuirane multimedijalne aplikacije: distribuirane mreže bazirane na sadržaju 7.6 Iznad najboljeg pokušaja 7.7 Mehanizmi raspoređivanja i vođenja politike 7.8 Integrisani servisi i diferencirani servisi 7.9 RSVP 7: Multimedijalno umrežavanje 7 - 30/121

Interaktivne aplikacije koje rade u realnom vremenu

   PC-2-PC telefoniranje  instant messaging servisi obezbeđuju ovo PC-2-telefon  Dialpad  Net2phone video konferensing koristeći Web kamere 7: Multimedijalno umrežavanje 7 - 31/121

Interaktivne multimedijalne aplikacije: telefoniranje preko Internet-a Predstavljanje telefoniranja preko Internet-a kroz primer

 govornikov glas-audio: naizmenično se smenjuje priča i tišina.

 64 kbps za vreme talkspurt  paketi su generisani samo za vreme priče-talk spurts  20 msec chunks na 8 Kbytes/sec: 160 bytes podataka   heder aplikacionog sloja dodat svakom komadu-chunk.

Chunk+header su enkapsulirani u UDP segment.

 aplikacija šalje UDP segment na soket svakih 20 msec za vreme talkspurt.

7: Multimedijalno umrežavanje 7 - 32/121

Internet telefoniranje: gubici i kašnjenje paketa

  

mrežni gubici:

IP datagram izgubljen zbog zagušenja mreže (prepunjen bafer rutera)

gubici usled kašnjenja:

IP datagram stiže suviše kasno za playout kod primaoca   kašnjenja: procesiranje, rad sa redovima u mreži; kašnjenja end-system-a (pošiljalac i primalac) tipično maksimalno dozvoljeno kašnjenje: 400 ms tolerancija gubitaka: zavisno od kodiranja glasa, prikrivanje gubitaka, brzina gubitaka paketa između 1% i 20% može da se toleriše 7: Multimedijalno umrežavanje 7 - 33/121

Kašnjenje usled jitter-a

constant bit rate transmission

variable network delay (jitter)

client reception constant bit rate playout at client client playout delay time   Posmatramo end-to-end kašnjenja dva susedna paketa: razlika može biti veća od 20 msec izbegavanje jitter-a: sequence numbers, timestamps, playout delay.

7: Multimedijalno umrežavanje 7 - 34/121

Internet telefoniranje: fiksno playout kašnjenje

  Primalac pokušava da izvede-playout svakog chunk-a tačno q msecs nakon generisanja chunk-a.

 chunk ima vremensku markicu t: play out chunk je u t+q .

 chunk stiže nakon t+q: podaci stižu isuviše kasno za playout, podaci su “izgubljeni” Tradeoff za q:   veliko q: manji gubici paketa malo q: bolja interaktivnost 7: Multimedijalno umrežavanje 7 - 35/121

Fiksno playout kašnjenje

• Sender generates packets every 20 msec during talk spurt.

• First packet received at time r • First playout schedule: begins at p • Second playout schedule: begins at p’ packets

packets generated packets received

loss r p p'

playout schedule p' - r playout schedule p - r

time 7: Multimedijalno umrežavanje 7 - 36/121

Adaptivno playout kašnjenje, I

  Goal: minimize playout delay, keeping late loss rate low Approach: adaptive playout delay adjustment:    Estimate network delay, adjust playout delay at beginning of each talk spurt. Silent periods compressed and elongated.

Chunks still played out every 20 msec during talk spurt.

t i d i   timestamp r i  the time packet i is received by receiver r p i  i  t i the time  packet network i is delay played at receiver for ith p acket estimate of of the ith average packet network delay after receiving ith packet Dynamic estimate of average delay at receiver:

d i

 ( 1 

u

)

d i

 1 

u

(

r i

 where u is a fixed constant (e.g., u = .01).

t i

) 7: Multimedijalno umrežavanje 7 - 37/121

Adaptivno playout kašnjenje, II

Also useful to estimate the average deviation of the delay, v

i

:

v i

 ( 1 

u

)

v i

 1 

u

|

r i

t i

d i

| The estimates d

i

and v

i

are calculated for every received packet, although they are only used at the beginning of a talk spurt.

For first packet in talk spurt, playout time is:

p i

t i

d i

Kv i

where K is a positive constant.

Remaining packets in talkspurt are played out periodically 7: Multimedijalno umrežavanje 7 - 38/121

Adaptivno playout kašnjenje, III Q:

How does receiver determine whether packet is first in a talkspurt?

  If no loss, receiver looks at successive timestamps.

 difference of successive stamps > 20 msec -->talk spurt begins .

With loss possible, receiver must look at both time stamps and sequence numbers.

 difference of successive stamps > 20 msec and numbers without gaps --> talk spurt begins.

sequence 7: Multimedijalno umrežavanje 7 - 39/121

Oporavak od gubitaka paketa (1) forward error correction (FEC): šema

 za svaku grupu od n chunks kreirati redundant chunk koristeći exclusive OR nad n originalnih chunks   poslati n+1 chunks, povećavajući širinu opsega za faktor 1/n.

može se rekonstrurati original od n chunks ako postoji najviše jedan izgubljeni chunk od n+1 chunks   Playout kašnjenje treba da bude fiksirano na vreme za prijem svih n+1 paketa Tradeoff:    veće n, manje trošenje širine opsega veće n, veće playout kašnjenje veće n, veća verovatnoća da će dva ili više chunks biti izgubljena 7: Multimedijalno umrežavanje 7 - 40/121

Oporavak od gubitaka paketa (2)

2nd FEC scheme • “piggyback lower quality stream” • send lower resolution audio stream as the redundant information • for example, nominal stream PCM at 64 kbps and redundant stream GSM at 13 kbps.

• Whenever there is non-consecutive loss, the receiver can conceal the loss. • Can also append (n-1)st and (n-2)nd low-bit rate chunk 7: Multimedijalno umrežavanje 7 - 41/121

Oporavak od gubitaka paketa (3)

Preklapanje  chunks se dele na manje jedinice   npr. 4 x 5 msec jedinica po chunk-u Paket sadrži male jedinice od različitih chunks    ako je paket izgubljen, još uvek sadrži dovoljno informacija za svaki chunk nema redundancy overhead ali utiče na povećanje playout kašnjenja 7: Multimedijalno umrežavanje 7 - 42/121

Zaključak:

Internet multimedija

 koristiti

UDP

da bi se izbegla TCP congestion control (kašnjenja) za vremenski-osetljiv saobraćaj    na klijent strani koristiti

adaptive playout delay

: za kompenzaciju kašnjenja na server strani

podesiti stream bandwidth

na iskoristljivu širinu opsega putanje od klijenta do servera  izabrati između pre-encoded stream rates  dynamic server encoding rate oporavak od grešaka (na vrhu UDP-a)   FEC, preklapanje retransmisija 7: Multimedijalno umrežavanje 7 - 43/121

Poglavlje 7: sadržaj

    7.1 Multimedijalne mrežne aplikacije 7.2 Streaming uskladištene audio i video aplikacije 7.3 Multimedija u realnom vremenu: Proučavanje telefoniranja preko Internet-a 7.4 Protokoli za interaktivne aplikacije koje rade u realnom vremenu  RTP,RTCP,SIP      7.5 Distribuirane multimedijalne aplikacije: distribuirane mreže bazirane na sadržaju 7.6 Iznad najboljeg pokušaja 7.7 Mehanizmi raspoređivanja i vođenja politike 7.8 Integrisani servisi i diferencirani servisi 7.9 RSVP 7: Multimedijalno umrežavanje 7 - 44/121

Real-Time Protocol (RTP)

   RTP određuje strukturu paketa za pakete koji nose audio i video podatke RFC 1889.

RTP paket omogućava    payload type identifikaciju packet sequence numbering timestamping    RTP radi na krajevima sistema.

RTP paketi su enkapsulirani u UDP segmente Interoperabilnost: ako dve Internet phone aplikacije startuju RTP, onda one mogu biti sposobne da rade zajedno 7: Multimedijalno umrežavanje 7 - 45/121

RTP radi na vrhu UDP-a

RTP biblioteke obezbeđuju interfejs transportnog-sloja što proširuje UDP: • broj porta, IP adrese • payload type identifikacija • packet sequence numbering • time-stamping 7: Multimedijalno umrežavanje 7 - 46/121

RTP primer

   Posmatramo slanje 64 kbps PCM-kodirani glas preko RTP-a. Aplikacija sakuplja kodirane podatke u chunks, npr. svakih 20 msec = 160 bytes u chunk-u. Audio chunk sa RTP header-om formira RTP paket, koji je enkapsuliran u UDP segment.   RTP header pokazuje tip audio kodiranja u svakom paketu  sender može da menja kodiranje za vreme konferencije. RTP header takođe sadrži sequence numbers i timestamps.

7: Multimedijalno umrežavanje 7 - 47/121

RTP i QoS

  RTP ne daje bilo kakav mehanizam za obezbeđivanje isporuke podataka za određeno vreme ili druge garancije za kvalitet servisa. RTP enkapsulacija se jedino vidi na krajevima sistema: ona se ne vidi na ruterima između.  Ruteri koji obezbeđuju best-effort servis ne čine bilo kakav specijalan napor da bi obezbedili da RTP paketi stignu na odredište za određeno vreme.

7: Multimedijalno umrežavanje 7 - 48/121

RTP Header

Payload Type (7 bits): pokazuje tip kodiranja koji se tekuće koristi.

Ako pošiljalac menja kodiranje usred konferencije, on informiše primaoca preko ovog payload type polja. •Payload type 0: PCM mu-law, 64 kbps •Payload type 3, GSM, 13 kbps •Payload type 7, LPC, 2.4 kbps •Payload type 26, Motion JPEG •Payload type 31. H.261

•Payload type 33, MPEG2 video Sequence Number (16 bits): se povećava za jedan za svaki poslati RTP paket i može da se koristi za detekciju gubitaka paketa i za restauriranje niza paketa.

7: Multimedijalno umrežavanje 7 - 49/121

RTP Header (2)

Timestamp polje (32 bits dugo). Prikazuje trenutak sempliranja prvog bajta u RTP paketu podataka.  Za audio, timestamp clock se tipično povećava za jedan za svaki period odabiranja (npr. svakih 125 mikrosecs za 8 KHz sampling clock)  ako aplikacija generiše chunks od 160 kodiranih odbiraka samples, onda se timestamp povećava za 160 za svaki RTP paket kada je izvor aktivan. Timestamp clock nastavlja da se povećava konstantnom brzinom čak i kada je izvor neaktivan.

SSRC polje (32 bits dugo). Synchronization source identifier identifikuje izvor RTP stream-a. Svaki stream u RTP sesiji treba da ima različit SSRC. 7: Multimedijalno umrežavanje 7 - 50/121

RTSP/RTP programski zadatak

  Napraviti server koji enkapsulira uskladištene video frejmove u RTP pakete   grab-ovati video frejm, dodati RTP headers, kreirati UDP segments, poslati segmente na UDP socket uključiti seq numbers i time stamps  obezbeđen je client RTP-a Takođe napisati klijent stranu RTSP-a   play i pause komande obezbeđen je server RTSP-a 7: Multimedijalno umrežavanje 7 - 51/121

Real-Time Control Protocol (RTCP)

   Radi u spoju sa RTP-om. Svaki učesnik u RTP sesiji periodično transmiruje RTCP kontrolne pakete svim ostalim učesnicima.

Svaki RTCP paket sadrži sender i/ili receiver izveštaje-statistiku   Statistika uključuje broj poslatih paketa, broj izgubljenih paketa, međudolazni jitter, itd.

Povratna sprega može da se koristi za kontrolu performansi  Pošiljalac može da modifikuje svoje transmisije koristeći povratnu spregu-feedback 7: Multimedijalno umrežavanje 7 - 52/121

RTCP

- Za jednu RTP sesiju postoji tipično jedna multicast adresa; svi RTP i RTCP paketi koji pripadaju toj sesiji koriste tu multicast adresu. - RTP i RTCP paketi se razlikuju međusobno po različitim brojevima portova (+1). - Da bi ograničili saobraćaj, svaki učesnik smanjuje svoj RTCP saobraćaj kako se broj učesnika na konferenciji povećava.

7: Multimedijalno umrežavanje 7 - 53/121

RTCP paketi Receiver report paketi:

 deo izgubljenih paketa, poslednji sequence number, srednja vrednost međudolaznih jitter-a.

Sender report paketi:

 SSRC od RTP stream-a, tekuće vreme, broj poslatih paketa i broj poslatih bajtova.

Source description paketi:

 e-mail adresu pošiljaoca, njegovo ime, SSRC pridruženog RTP stream-a.  Obezbeđuje mapiranje između SSRC i user/host imena.

7: Multimedijalno umrežavanje 7 - 54/121

Sinhronizacija stream-ova

   RTCP može da sinhronizuje različite media streams unutar RTP sesije. Razmotrimo videoconferencing aplikaciju za koju svaki sender generiše jedan RTP stream za video i jedan za audio. Timestamps u RTP paketu se spajaju sa video i audio sampling clocks   Svaki RTCP sender-report paket sadrži (za najskorije generisani paket u pridruženom RTP stream-u):  timestamp od RTP paketa  wall-clock time kada je paket bio kreiran. Primalac može da koristi ovo za sinhronizaciju playout-a audia i videa. 7: Multimedijalno umrežavanje 7 - 55/121

RTCP Bandwidth Scaling

 RTCP pokušava da ograniči svoj saobraćaj na 5% širine opsega sesije.

Primer   Pretpostavimo da jedan sender šalje video brzinom od 2 Mbps. RTCP pokušava da ograniči svoj saobraćaj na 100 Kbps. RTCP daje 75% od ove brzine primaocu; preostalih 25% pošiljaocu    75 kbps se podjednako deli između primaoca:  Sa R primaoca, svaki primalac dobije da pošalje RTCP saobraćaj na 75/R kbps. Pošiljalac dobija za slanje RTCP traffic na 25 kbps.

Učesnik određuje RTCP packet transmission period proračunavajući srednju vrednost veličine RTCP paketa (kroz celu sesiju) i deleći je sa alociranom brzinom.

7: Multimedijalno umrežavanje 7 - 56/121

Session Initiation Protocol - SIP

  Protokol za inicijalizaciju sesije IETF

SIP dugoročna vizija

 Zamislimo da svi telefonski pozivi i pozivi video konferencija idu preko Internet-a   Ljudi se identifikuju po imenima ili e-mail adresama radije nego po telefonskim brojevima.

Možete naći pozivaoca bez obzira gde je ili koji IP uređaj pozivalac trenutno koristi.

7: Multimedijalno umrežavanje 7 - 57/121

SIP servisi

 Postavljanje poziva    Obezbeđuje mehanizme za pozivaoca da upozna pozvanog da želi da uspostavi poziv Obezbeđuje mehanizme da se pozivalac i pozvani mogu složiti oko tipa medija i kodiranja.

Obezbeđuje mehanizme za završetak poziva   Obezbeđuje tekuću IP adresu pozivaoca.

 Mapira mnemonički identifikator na tekuću IP adresu Upravljanje pozivom   Dodaje nove media streams za vreme poziva Menja kodiranje za vreme poziva   Poziva druge Transferuje i zadržava pozive 7: Multimedijalno umrežavanje 7 - 58/121

Alice

Postavljanje poziva ka poznatoj IP adresi

Bob 167.180.112.24

INVITE [email protected]

m=audio 38060 RT 4.210.89

12.24

P/AVP 0 193.64.210.89

port 5060 Bob's terminal rings 200 OK c=IN IP4 193.6

4.210.89

m=audio 48753 RTP/AVP 3 port 5060 • Alisin SIP invite message indicira njen broj porta i IP adresu. Indicira kodiranje koje Alisa preferira da primi (PCM ulaw) • Bobova 200 OK poruka indicira njegov broj porta, IP adresu i preferirano kodiranje (GSM) ACK port 5060 port 38060 m Law audio • SIP poruke mogu da budu poslate preko TCP ili UDP-a; ovde preko RTP/UDP.

GSM port 48753 •Default SIP port number je 5060.

time time 7: Multimedijalno umrežavanje 7 - 59/121

Postavljanje poziva

 Codec pregovaranje:  Pretpostavimo da Bob nema PCM ulaw encoder.   Bob će odgovoriti 606 Not Acceptable Reply i listom encodera koje može koristiti. Alisa može onda poslati novu INVITE poruku, oglašavajući odgovarajući enkoder.

  Odbacivanje poziva  Bob može odbaciti poziv sa odgovorom “busy,” “gone,” “payment required,” “forbidden”.

Media može da se pošalje preko RTP ili nekog drugog protokola 7: Multimedijalno umrežavanje 7 - 60/121

Primer SIP poruke

INVITE sip:[email protected] SIP/2.0

Via: SIP/2.0/UDP 167.180.112.24

From: sip:[email protected]

To: sip:[email protected] Call-ID: [email protected]

Content-Type: application/sdp Content-Length: 885 c=IN IP4 167.180.112.24

m=audio 38060 RTP/AVP 0 Napomena:    HTTP message sintaksa sdp = session description protocol Call-ID je jedinstven za svaki poziv • Ovde neznamo Bobovu adresu. Intermediate SIP servers će biti neophodni • Alisa šalje i prima SIP poruke koristeći SIP default port number 5060. • Alisa specificira preko Via: header kojim SIP klijent šalje i prima SIP poruke preko UDP 7: Multimedijalno umrežavanje 7 - 61/121

Prevođenje imena i lokacija korisnika

  Pozivalac želi da pozove pozvanog, ali ima samo njegovo ime ili e-mail address.

Treba da dobije IP adresu tekućeg hosta pozvanog:    korisnik putuje DHCP protokol korisnik ima različite IP uređaje (PC, PDA)  Resultat može biti baziran na različitim stvarima: vreme dana i noći, nema uznemiravanja ...

Servisi obezbeđeni od SIP servera:

  SIP registrar server SIP proxy server 7: Multimedijalno umrežavanje 7 - 62/121

SIP Registrar

 Kada Bob startuje SIP client, klijent šalje SIP REGISTER poruku ka Bobovom registrar serveru (slične funkcije kao kod Instant Messaging)

Register Message:

REGISTER sip:domain.com SIP/2.0

Via: SIP/2.0/UDP 193.64.210.89 From: sip:[email protected]

To: sip:[email protected]

Expires: 3600 7: Multimedijalno umrežavanje 7 - 63/121

SIP proxy

    Alisa šalje invite message svom proxy serveru  sadrži adresu sip:[email protected]

Proxy je sposoban za rutiranje SIP messages ka pozvanom  moguđe kroz više proksija.

Pozvani šalje odziv nazad kroz isti skup proksija.

Proxy vraća SIP response message Alisi  sadrži Bobovu IP adresu  Napomena: proxy je analogan lokalnom DNS serveru 7: Multimedijalno umrežavanje 7 - 64/121

Primer

Caller [email protected] with places a call to [email protected]

SIP registrar upenn.edu

(1) Jim sends INVITE message to umass SIP proxy.

(2) Proxy forwards request to upenn registrar server. (3) upenn server returns redirect response, indicating that it should try [email protected]

SIP proxy umass.edu

1 8

SIP client 217.123.56.89

2 3 4 7 9

SIP registrar eurecom.fr

6 5

SIP client 197.87.54.21

(4) umass proxy sends INVITE to eurecom registrar. (5) eurecom registrar forwards INVITE to 197.87.54.21, which is running keith’s SIP client. (6-8) SIP response sent back (9) media sent directly between clients. Note: nije prikazano i SIP ack message.

7: Multimedijalno umrežavanje 7 - 65/121

Poređenje sa H.323

   H.323 je drugi signaling protokol za real-time interaktivnost H.323 je kompletno, vertikalno integrisan skup protokola za multimedijalni konferensing: signaling, registration, admission control, transport i codecs.

SIP je jedno komponentni. Radi sa RTP-om. Može da se kombinuje sa drugim protokolima i servisima   H.323 potiče iz ITU (telefonije).

SIP dolazi iz IETF-a: pozajmljujući mnogo od HTTP a. SIP ima Web-primese, dok H.323 ima telefon-primese. 7: Multimedijalno umrežavanje 7 - 66/121

Poglavlje 7: sadržaj

    7.1 Multimedijalne mrežne aplikacije 7.2 Streaming uskladištene audio i video aplikacije 7.3 Multimedija u realnom vremenu: Proučavanje telefoniranja preko Internet-a 7.4 Protokoli za interaktivne aplikacije koje rade u realnom vremenu  RTP,RTCP,SIP      7.5 Distribuirane multimedijalne aplikacije: distribuirane mreže bazirane na sadržaju 7.6 Iznad najboljeg pokušaja 7.7 Mehanizmi raspoređivanja i vođenja politike 7.8 Integrisani servisi i diferencirani servisi 7.9 RSVP 7: Multimedijalno umrežavanje 7 - 67/121

Mreže sa distribuiranim sadržajem

Content distribution networks (CDNs)

Replikacija sadržaja

  Izazov je stream velikih fajlova (npr. video) sa jednog izvorišnog servera u realnom vremenu Rešenje: pravljenje replika sadržaja na stotine servera kroz Internet  sadržaj download-ovan sa CDN servera pre roka   smeštanje sadržaja "blizu" korisnika izbegavajući pogoršanje (gubici, kašnjenje) sadržaja koji se šalje duž dugih putanja CDN server je tipično na ivici/pristupnoj mreži origin server in North America CDN distribution node CDN server in S. America CDN server in Europe CDN server in Asia 7: Multimedijalno umrežavanje 7 - 68/121

Mreže sa distribuiranim sadržajem (CDNs) Replike sadržaja

  CDN (npr. Akamai) korisnik je provajder sadržaja (npr. CNN) CDN pravi replike korisnikovih sadržaja na CDN serverima. Kada provajder ažurira sadržaj, CDN ažurira servere origin server in North America CDN distribution node CDN server in S. America CDN server in Europe CDN server in Asia 7: Multimedijalno umrežavanje 7 - 69/121

CDN primer

HTTP request for www.foo.com/sports/sports.html

1 Origin server 3 2 DNS query for www.cdn.com

CDNs authoritative DNS server HTTP request for www.cdn.com/www.foo.com/sports/ruth.gif

Nearby CDN server

izvorni server (www.foo.com)

 distribuira HTML  zamenjuje: http://www.foo.com/sports.ruth.gif

sa h ttp://www.cdn.com/www.foo.com/sports/ruth.gif

CDN kompanija (cdn.com)

 distribuira gif fajlove  koristi svoj authoritative (nadležan) DNS server da rutira preusmerene zahteve 7: Multimedijalno umrežavanje 7 - 70/121

Više o CDNs rutiranje zahteva

 CDN kreira“mapu”, koja sadrži rastojanja od lista ISPs i CDN čvorova   kada upit stigne na authoritative DNS server:   server određuje ISP sa koga upit potiče koristi “mapu” za određivanje najboljeg CDN servera CDN čvorovi kreiraju overlay (preklapanje) mreže aplikacionog sloja 7: Multimedijalno umrežavanje 7 - 71/121

Poglavlje 7: sadržaj

    7.1 Multimedijalne mrežne aplikacije 7.2 Streaming uskladištene audio i video aplikacije 7.3 Multimedija u realnom vremenu: Proučavanje telefoniranja preko Internet-a 7.4 Protokoli za interaktivne aplikacije koje rade u realnom vremenu  RTP,RTCP,SIP      7.5 Distribuirane multimedijalne aplikacije: distribuirane mreže bazirane na sadržaju 7.6 Iznad najboljeg pokušaja 7.7 Mehanizmi raspoređivanja i vođenja politike 7.8 Integrisani servisi i diferencirani servisi 7.9 RSVP 7: Multimedijalno umrežavanje 7 - 72/121

Poboljšanje QoS u IP mrežama

Do sada: “nalaženje najboljeg od best effort” U budućnosti: sledeća generacija Interneta sa QoS garancijama  RSVP: signalizira rezervaciju resursa    Differentiated servisi: Integrated Services: differential garancije garancije nepromenljivosti jednostavan model za proučavanje deljenja i zagušenja: 7: Multimedijalno umrežavanje 7 - 73/121

Principi QoS garancija

 Primer: 1Mbps IP telefon i FTP dele 1.5 Mbps link.   FTP-podaci mogu da zaguše ruter prouzrokujući gubitke audio podataka potrebno je dati prioritet audio podacima u odnosu na FTP Princip 1 markiranje paketa potrebno za ruter da bi vodio računa o različitim klasama kao i nova politika rutera na osnovu koje se tretiraju paketi 7: Multimedijalno umrežavanje 7 - 74/121

Principi QoS garancija (2)

  šta ako se aplikacije "loše ponašaju" (audio podaci se šalju većom brzinom od deklarisane)  politika: prisiliti izvor da se pridržava dodeljene širine opsega markiranje i politika na ivici mreže:  slično ATM UNI (User Network Interface)

Princip 2

obezbediti zaštitu (izolaciju) jedne klase od drugih 7: Multimedijalno umrežavanje 7 - 75/121

Principi QoS garancija (3)

 Dodeljivanje fiksne (ne-deljive) širine opsega toku: neefikasno korišćenje širine opsega ako tokovi ne koriste svoja dodeljivanja

Princip 3

Dok je obezbeđena izolacija između protoka, poželjno je koristiti što efikasnije resurse 7: Multimedijalno umrežavanje 7 - 76/121

Principi QoS garancija (4)

Osnovna činjenica: ne može se podržati saobraćajni zahtevi iznad kapaciteta linka

Princip 4

Dopuštanje poziva: protok deklariše svoje potrebe, mreža može da blokira poziv (npr. signal zauzeća) ako ne može ispuniti zahtevani uslov 7: Multimedijalno umrežavanje 7 - 77/121

QoS principi: zaključak

7: Multimedijalno umrežavanje 7 - 78/121

Poglavlje 7: sadržaj

    7.1 Multimedijalne mrežne aplikacije 7.2 Streaming uskladištene audio i video aplikacije 7.3 Multimedija u realnom vremenu: Proučavanje telefoniranja preko Internet-a 7.4 Protokoli za interaktivne aplikacije koje rade u realnom vremenu  RTP,RTCP,SIP      7.5 Distribuirane multimedijalne aplikacije: distribuirane mreže bazirane na sadržaju 7.6 Iznad najboljeg pokušaja 7.7 Mehanizmi raspoređivanja i vođenja politike 7.8 Integrisani servisi i diferencirani servisi 7.9 RSVP 7: Multimedijalno umrežavanje 7 - 79/121

Mehanizmi raspoređivanja i politike

 

raspoređivanje:

izabrati sledeći paket za slanje linkom

FIFO (first in first out) raspoređivanje:

redosledu stizanja u red  šalje po politika odbacivanja: ako paket stigne u popunjen red: koji paket odbaciti?

• Tail drop: ispustiti dolazeći paket • prioritet: ispustiti/ukloniti na osnovu prioriteta • slučajno: ispustiti/ukloniti slučajno 7: Multimedijalno umrežavanje 7 - 80/121

Politika raspoređivanja: više Raspoređivanje na osnovu prioriteta:

reda sa najvećim prioritetom  prenositi paket iz više klasa, sa različitim prioritetima  klasa može da zavisi od markiranja ili drugih informacija hedera npr. IP izvorište/odredište, brojevi portova ...

7: Multimedijalno umrežavanje 7 - 81/121

Politika raspoređivanja: još više round robin raspoređivanje:

 više klasa  ciklično skeniranje klasa redova, uslužiti jedan iz svake klase redova (ako je iskoristljiv) 7: Multimedijalno umrežavanje 7 - 82/121

Politika raspoređivanja: još uvek više Težinski fair rad sa redovima:

 generalizovani Round Robin  svaka klasa uzima težinsku količinu servisa u svakom ciklusu 7: Multimedijalno umrežavanje 7 - 83/121

Mehanizmi politike Cilj:

ograničiti saobraćaj da ne prelazi deklarisane parametre Tri zajednički-korišćena kriterijuma:   

(Dugoročna) srednja vrednost brzine:

može da se pošalje u jedinici vremena  koliko paketa osnovno pitanje: šta je interval length: 100 paketa u sekundu ili 6000 paketa u minutu imaju istu srednju vrednost!

Vršna vrednost brzine:

npr. 6000 pkts per min. (ppm) srednja vrednost; 1500 ppm vršna vrednost brzine

(Max.) Burst Size:

max. broj paketa poslatih uzastopno (bez uplitanja besposlenosti-idle) 7: Multimedijalno umrežavanje 7 - 84/121

Mehanizmi politike Token Bucket:

ograničava ulaz na određenu veličinu burst-a i srednju vrednost brzine    bucket može da drži b token-a token-i su generisani brzinom r token/sec dok se bafer bucket ne napuni

preko intervala dužine t: broj dopuštenih paketa je manji od ili jednak (r t + b).

7: Multimedijalno umrežavanje 7 - 85/121

Mehanizmi politike (više)

 token bucket, obezbediti garantovanu gornju granicu kašnjenja npr.

QoS garancije

!

arriving traffic token rate, r bucket size, b WFQ per-flow rate, R 7: Multimedijalno umrežavanje 7 - 86/121

Poglavlje 7: sadržaj

    7.1 Multimedijalne mrežne aplikacije 7.2 Streaming uskladištene audio i video aplikacije 7.3 Multimedija u realnom vremenu: Proučavanje telefoniranja preko Internet-a 7.4 Protokoli za interaktivne aplikacije koje rade u realnom vremenu  RTP,RTCP,SIP      7.5 Distribuirane multimedijalne aplikacije: distribuirane mreže bazirane na sadržaju 7.6 Iznad najboljeg pokušaja 7.7 Mehanizmi raspoređivanja i vođenja politike 7.8 Integrisani servisi i različiti servisi 7.9 RSVP 7: Multimedijalno umrežavanje 7 - 87/121

IETF integrisani servisi

   arhitektura za obezbeđivanje QoS garancija u IP mrežama za individualne aplikacione sesije rezervacija resursa: ruteri održavaju informacije o stanju (kao VC) dodeljenih resursa, QoS zahteva prihvati/odbi zahteve za setup poziva: Pitanje: da li može da novo pristigli tok bude prihvaćen sa garancijom performansi dok se ne naruši QoS garancije načinjene za već prihvaćene tokove?

7: Multimedijalno umrežavanje 7 - 88/121

Integrisani servisi: scenario QoS garancija

Rezervacija resursa

   setap poziva, signaliziranje (RSVP) saobraćaj, QoS deklaracija kontrola prihvatanja po elementu request/ reply  QoS-sensitive scheduling (e.g., WFQ) 7: Multimedijalno umrežavanje 7 - 89/121

Prihvatanje poziva Dolazeća sesija mora da:

   deklariše svoje QoS zahteve 

R-spec:

definiše QoS koji se zahteva okarakteriše saobraćaj koji će biti poslat u mrežu 

T-spec:

definiše karakterisitke saobraćaja signaling protokol: potreban za nošenje R-spec i T spec ruterima (gde se rezervacija zahteva) 

RSVP

7: Multimedijalno umrežavanje 7 - 90/121

Integrisani servisi QoS: modeli servisa

[rfc2211, rfc 2212]

Garantovani servisi:

  najgori slučaj dolaznog saobraćaja: leaky-bucket policed source jednostavno (matematički dokazivo)

bound

kašnjenje [Parekh 1992, Cruz 1988]

Kontrolisani servisi opterećenja:

 "kvalitet servisa koji približno aproksimira QoS koji će isti tok da ima od neopterećenog mrežnog elementa" arriving traffic token rate, r bucket size, b WFQ per-flow rate, R 7: Multimedijalno umrežavanje 7 - 91/121

IETF diferencirani servisi

Povezano sa integrisanim servisima: 

Skalabilnost:

signaling, održavanje po-toku stanja rutera teško je kada je veliki broj tokova 

Fleksibilni modeli servisa:

Intserv ima samo dve klase. Takođe se žele “kvalitetne” klase servisa  relativno različiti servisi: Platinum, Gold, Silver Diffserv pristup:  proste funkcije u jezgru mreže, relativno složene funkcije na ivici rutera (ili hostova)  Obezbeđuju se funkcionalne komponente za građenje clasa servisa 7: Multimedijalno umrežavanje 7 - 92/121

Diffserv arhitektura

Ruter na ivici:  upravljanje  označavanje paketa kao profile i out-profile in-

Core router:

   za klasu upravljanje saobraćajem buferovanje i raspoređivanje bazirani na markiranju na ivici davanje prednosti in-profile  Obezbediti prosleđivanje

b r

.

..

7: Multimedijalno umrežavanje 7 - 93/121

Edge-router markiranje paketa

  profile: pred-pregovaranje o brzini A, bucket veličina B markirani paket na ivici baziran je per-flow profajlu Rate A B User packets Moguće korišćenje markiranja:   na klasi bazirano markiranje: paketi različitih klasa markirani različito intra-class markiranje: podešen deo toka-protoka markiranog različito u odnosu na nepodešen 7: Multimedijalno umrežavanje 7 - 94/121

Klasifikacija i uslovljavanje

   Paket je markiran u Type of Service (TOS) u IPv4, i Traffic Class u IPv6 6 bits se koriste za Differentiated Service Code Point (DSCP) i određuju PHB koji će paket da primi 2 bits su tekuće neiskorišćena 7: Multimedijalno umrežavanje 7 - 95/121

Klasifikacija i uslovljavanje

mogu biti poželjna za ograničavanje brzine saobraćaja nekih klasa:  korisnik deklariše traffic profile (npr. brzinu, veličinu burst-a)  merač saobraćaja, oblikovan ako nije podešen 7: Multimedijalno umrežavanje 7 - 96/121

Prosleđivanje (PHB)

   PerHopBehavior rezultat u različito posmatranom merenom prosleđivanju ponašanja performansi PHB ne specificira koje mehanizme da koristi da bi omogućio željeno PHB ponašanje performansi Primeri:   Klasa A uzima x% od širine opsega odlaznog linka kroz vremenske intervale specifične dužine Paketi klase A prvo odlaze pre paketa iz klase B 7: Multimedijalno umrežavanje 7 - 97/121

Prosleđivanje (PHB) PHBs se razvijaju:

Očekivano prosleđivanje:

paketa jedne klase jednaka je ili veća od specificirane brzine brzina otpremanja  logical link with a minimum guaranteed rate 

Zajamčeno prosleđivanje:

 4 klase saobraćaja svaka garantuje minimalnu količinu širine opsega 7: Multimedijalno umrežavanje 7 - 98/121

Poglavlje 7: sadržaj

    7.1 Multimedijalne mrežne aplikacije 7.2 Streaming uskladištene audio i video aplikacije 7.3 Multimedija u realnom vremenu: Proučavanje telefoniranja preko Internet-a 7.4 Protokoli za interaktivne aplikacije koje rade u realnom vremenu  RTP,RTCP,SIP      7.5 Distribuirane multimedijalne aplikacije: distribuirane mreže bazirane na sadržaju 7.6 Iznad najboljeg pokušaja 7.7 Mehanizmi raspoređivanja i vođenja politike 7.8 Integrisani servisi i diferencirani servisi 7.9 Resource Reservation Protocol - RSVP 7: Multimedijalno umrežavanje 7 - 99/121

Skaliranje na Internet-u

bez uspostavljanja konekcije (bez nformacija o stanju) prosleđivanje duž IP rutera

+

servis najboljeg pokušaja

=

bez mrežnih signaling protokola u početnom IP dizajnu    Novi zahtevi: end (kraj sistema, ruteri) za QoS za multimedijalne aplikacije rezervacija resursa duž putanje end-to RSVP:  Resource Reservation Protocol [RFC 2205] “ … dozvoljava korisnicima da komuniciraju zahtevima na mreži na robustan i efikasan način ” npr. signaling-om !

raniji Internet Signaling protokol: ST-II [RFC 1819] 7: Multimedijalno umrežavanje 7 - 100/121

RSVP ciljevi dizajna

1.

2.

3.

4.

5.

6.

prilagoditi putanje) heterogene primaoce prilagoditi različite aplikacije resursima (različite širine opsega duž različitim zahtevima za učiniti multicast servise prve klase multicast grupe adaptivnim na članove uticaj postojećeg multicast/unicast rutiranja , adaptacijom na promene postojećih unicast i multicast ruta overhead kontrolnog protokola slučaju) linearno broj primaoca da bi se povećao (u najgorem modularni design za heterogenu raspoloživu tehnologiju 7: Multimedijalno umrežavanje 7 - 101/121

RSVP: ne radi …

   ne specificira kako se resursi rezervišu  radije: određuje mehanizam potrebnih komunikacija ne određuje kako će da se uzmu rutirani paketi  to je posao protokola rutiranja  signaling odvojen od rutinga ne radi interakciju sa prosleđivanjem paketa  odvajanje područja kontrole (signaling-a) i podataka (prosleđivanja) 7: Multimedijalno umrežavanje 7 - 102/121

RSVP: pregled rada

    pošiljaoci, primalac se pridružuju multicast grupi   dato izvan RSVP-a nije potrebno da se pošiljaoci pridruže grupi signaling od pošiljaoca-ka-mreži  

path message:

čini prisustvo pošiljaoca poznatim ruterima path teardown: briše stanje putanja pošiljaoca na ruterima signaling od-primaoca-ka-mreži  

reservation message:

ili više) do primaoca rezerviše resurse od pošiljaoca (jednog reservation teardown: uklanja rezervacije primaoca signaling od-mreže-ka-kraju sistema   path error reservation error 7: Multimedijalno umrežavanje 7 - 103/121

Putanja poruka: RSVP

pošiljalac-mreža

signaling

  putanja poruke      sadrži:

adresu:

unicast odredište ili multicast grupu

flowspec-specifikaciju protoka:

širinom opsega specifikaciju zahteva za

filter flag:

ako je pozitivno-yes, zapis identifikuje upstream pošiljaoce (da bi dozvolili filtriranje paketa od strane izvora)

predhodni hop:

upstream ruter/host ID

vreme osvežavanja:

vreme kada ove informacije ističu putanja poruke: komunicira sender informacijama i reverzna putanja-ka-senderu ruting informacijama  kasnije upstream prosleđivanje rezervacija primaoca 7: Multimedijalno umrežavanje 7 - 104/121

RSVP: jednostavna audio konferencija

     H1, H2, H3, H4, H5 i pošiljaoci i primaoci multicast grupa m1 nema filtriranja: paketi od bilo kog pošiljaoca se prosleđuju brzina audio sadržaja: b samo jedno multicast stablo rutiranja je moguće H2 H3 R1 R2 R3 H4 H1 H5 7: Multimedijalno umrežavanje 7 - 105/121

RSVP: građenje stanja putanje

  H1, …, H5 svi šalju path messages preko m1: (address=m1, Tspec=b, filter-spec=no-filter, refresh=100) Pretpostavimo da H1 šalje prvu path message m1: in out L1 L2 L6 H2 H1 L2 L1 R1 m1: in out L5 L6 L7 m1: in out L3 L4 L7 L6 H5 R2 L5 L7 R3 L4 L3 H3 H4 7: Multimedijalno umrežavanje 7 - 106/121

RSVP: građenje stanja putanje

 sledeće, H5 šalje path message, kreirajući više stanja na ruterima m1: in out L1 L6 L1 L2 L6 H2 H1 L2 L1 R1 m1: in out L5 L5 L6 L6 L7 m1: in out L3 L4 L7 L6 H5 R2 L5 L7 R3 L4 L3 H3 H4 7: Multimedijalno umrežavanje 7 - 107/121

RSVP: građenje stanja putanje

 H2, H3, H5 šalju path msgs, kompletirajući tabele stanja putanje m1: in out L1 L2 L6 L1 L2 L6 H2 H1 L2 L1 R1 m1: in out L5 L5 L6 L7 L6 L7 m1: in out L3 L3 L4 L4 L7 L7 L6 H5 R2 L5 L7 R3 L4 L3 H3 H4 7: Multimedijalno umrežavanje 7 - 108/121

Poruke rezervacije:

od-primaoca-ka-mreži

signaling

  sadržaj rezervacione poruke:   

željena širina opsega: tip filtera:

• nema filtra: bilo koji paketi adresirani na multicast grupu mogu da koriste rezervaciju • fiksirani filtar: samo paketi iz određenog skupa pošiljaoca mogu da koriste rezervaciju • dinamički filtar: pošiljaoci čiji paketi mogu biti prosleđeni po linku će se menjati (po izboru primaoca) vremenom.

filter spec

rezervacije upstream toka od primaoca-ka-pošiljaocu, rezervacija resursa, kreiranje dodatnog stanja

povezanog sa primaocem

na ruterima 7: Multimedijalno umrežavanje 7 - 109/121

RSVP: primer 1 - rezervacija

primaoca

H1 želi da primi audio sadržaj od svih ostalih pošiljaoca  H1 poruka rezervacije teče po stablu do izvora   H1 samo rezerviše dovoljno širine opsega za 1 audio stream rezervacija je tipa “no filter” – bilo koji pošiljalac može da koristi rezervisanu širinu opsega H3 H2 H1 L2 L1 R1 L6 H5 R2 L5 L7 R3 L4 L3 H4 7: Multimedijalno umrežavanje 7 - 110/121

RSVP: primer 1 - rezervacija

primaoca

  H1 poruke rezervacije teku po stablu do izvora ruteri, hostovi rezervišu potrebnu širinu opsega b na downstream linkovima prema H1 m1: in out L1 L1

(b)

L2 L2 L6 L6 m1: in out L5 L5 H2 H1 L2 b b L1 R1 L6 b L6 L6

(b)

L7 L7 b R2 L5 b L7 m1: in out L3 L3 R3 L4 L4 b L3 b L4 H5 L7 L7

(b)

H3 H4 7: Multimedijalno umrežavanje 7 - 111/121

RSVP: primer 1 - rezervacija

primaoca

(nastavak)

   sledeće, H2 čini no-filter rezervaciju za širinu opsega b H2 prosleđuje ka R1, R1 prosleđuje ka H1 i R2 (?) R2 ne čini nikakvu akciju, dok je opseg b već rezervisan na L6 m1: in out L1 L1(

b

) L2 L2

(b)

L6 L6 m1: in out L3 L3 L4 L4 L7 L7 (

b

) m1: in out L5 L5 L6 L6 (

b

) L7 L7 H2 H1 b L2 b b b L1 R1 L6 b b R2 L5 b L7 R3 b L3 b L4 H3 H4 H5 7: Multimedijalno umrežavanje 7 - 112/121

RSVP: rezervacija

primaoca

: izdanje

Šta ako ima više pošiljaoca (npr. H3, H4, H5) preko linka (npr. L6)?

 proizvoljno preklapanje-interleaving paketa  L6 ima leaky bucket politiku toka: ako brzina slanja H3+H4+H5 prelazi b, gubitak paketa će se pojaviti m1: in out L1 L1(

b

) L2 L2

(b)

L6 L6 m1: in out L5 L5 H2 H1 b L2 b b b L1 R1 L6 b L6 L6 (

b

) L7 L7 b R2 L5 b L7 m1: in out L3 L3 R3 L4 L4 b L3 b L4 H5 L7 L7 (

b

) H3 H4 7: Multimedijalno umrežavanje 7 - 113/121

RSVP: primer 2

  H1, H4 su jedini pošiljaoci  šalju

path messages

kao ranije, indicirajući rezervaciju  ruteri skladište upstream pošiljaoca za svaki upstream link H2 želi da prima od H4 (samo) H1 L1 R1 L6 R2 L7 R3 L4 H4 7: Multimedijalno umrežavanje 7 - 114/121

RSVP: primer 2

 H1, H4 su jedini pošiljaoci  šalju

path messages

rezervaciju kao ranije, indicirajući filtriranu in out L1, L6 L2(H1-via-H1 ; H4-via-R2 ) L6(H1-via-H1 ) L1(H4-via-R2 ) in out L4, L7 L3(H4-via-H4 ; H1-via-R3 ) L4(H1-via-R2 ) L7(H4-via-H4 ) H1 L1 R1 R2 L6 L7 in out L6, L7 L6(H4-via-R3 ) L7(H1-via-R1 ) R3 L4 H4 7: Multimedijalno umrežavanje 7 - 115/121

RSVP: primer 2

 primalac H2 šalje reservation message za izvor H4 širine opsega b  prostirući upstream prema H4, rezervišući b in L1, L6 out L6(H1-via-H1 ) L1(H4-via-R2 ) in out L4, L7 L3(H4-via-H4 ; H1-via-R2 ) L4(H1-via-62 ) H1 b R1 L6 b R2 b L7 in L6, L7 out L7(H1-via-R1 ) R3 L4 b H4 7: Multimedijalno umrežavanje 7 - 116/121

RSVP: soft-stanje

   pošiljaoci periodično ponovo pošalju path msgs da bi osvežili (održavali) stanje primaoci periodično ponovo pošalju resv msgs da bi osvežili (održavali) stanje path i resv msgs imaju TTL polje, specificirajući interval osvežavanja in L1, L6 out L6(H1-via-H1 ) L1(H4-via-R2 ) in out L4, L7 L3(H4-via-H4 ; H1-via-R3 ) L4(H1-via-62 ) H1 b R1 L6 b R2 b L7 in L6, L7 out L7(H1-via-R1 ) R3 L4 b H4 7: Multimedijalno umrežavanje 7 - 117/121

RSVP: soft-stanje

  pretpostavimo da H4 (pošiljalac) odlazi bez izvršavanja teardown-a konačno stanje na ruterima će isteći i nestati!

in L1, L6 out L6(H1-via-H1 ) L1(H4-via-R2 ) in out L4, L7 L3(H4-via-H4 ; H1-via-R3 ) L4(H1-via-62 ) H1 b R1 L6 b R2 b L7 in L6, L7 out L7(H1-via-R1 ) R3 L4 b gone fishing!

7: Multimedijalno umrežavanje 7 - 118/121

Osvežavanje pri višestrukom korišćenju rezervacije/putanje

   oporavak od ranije izgubljene poruke osvežavanja  očekivano vreme dok se refresh ne primi mora biti duže od timeout intervala! (poželjan je kratak vremenski interval) Rukovanje primaocem/pošiljaocem koje nestaje bez teardown-a  Sender/receiver stanje će isteći i nestati Osvežavanja rezervacija će prouzrokovati da nove rezervacije budu načinjene za primaoca od pošiljaoca koji se priključio od kada su primaoci osvežili poslednji put rezervaciju   Npr. u prethodnom primeru, H1 je jedino primalac, H3 samo pošiljalac. Path/reservation messages completiraju tokove podataka H4 se pridružuje kao pošiljalac, ništa se ne dešava dok H3 ne osveži rezervaciju, prouzrokujući da R3 prosledi rezervaciju na H4, koji dodeljuje širinu opsega 7: Multimedijalno umrežavanje 7 - 119/121

RSVP: napomene

   multicast kao servis “prve klase” rezervacije orijentisane ka primaocu korišćenje soft-stanja 7: Multimedijalno umrežavanje 7 - 120/121

Multimedijalno umrežavanje: Zaključak

   

multimedijalne aplikacije i zahtevi izbor najboljeg od današnjih servisa najboljeg pokušaja mehanizmi raspoređivanja i politike Internet sledeće generacije: Intserv, RSVP, Diffserv

7: Multimedijalno umrežavanje 7 - 121/121