poglavlje 7 multimedi jalno umrežavanje

121
7: Multimedijalno umrežavanje 7 - 1/121 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.

Upload: ketan

Post on 12-Jan-2016

62 views

Category:

Documents


1 download

DESCRIPTION

Poglavlje 7 Multimedi jalno umrežavanje. Computer Networking: A Top Down Approach Featuring the Internet , 3 rd edition. Jim Kurose, Keith Ross Addison-Wesley, July 2004. QoS. mre ža obezbeđuje aplikaciji nivo performan si potreban za funkcionisanje a pli kacije. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 1/121

Poglavlje 7Multimedijalno umrežavanje

Computer Networking: A Top Down Approach

Featuring the Internet, 3rd edition.

Jim Kurose, Keith RossAddison-Wesley, July 2004.

Page 2: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 2/121

Multimedija, Quality of Service: Šta je to?

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

mreža obezbeđuje aplikaciji nivo performansi potreban za funkcionisanje aplikacije

QoS

Page 3: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 3/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

Page 4: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 4/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

Page 5: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 5/121

MM aplikacije umrežavanja

Osnovne karakteristike: Tipično osetljivost na

kašnjenje end-to-end kašnjenje jitter kašnjenje

Tolerancija gubitaka: gubici 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

Klase MM aplikacija:1) Streaming uskladištenog

audio i video sadržaja2) Streaming audio i video

signala-zapisa "uživo"3) Interaktivni audio i video

u realnom vremenu

Jitter je promena kašnjenja paketa unutaristog toka paketa (packet stream)

Page 6: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 6/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.

Page 7: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 7/121

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

1. videorecorded

2. videosent

3. video received,played out at client

Kum

ula

tivni

podaci

streaming: u ovom trenutku, klijent izvodi (play out) rani-početni deo videa, dok server još uvek šalje preostali deo videa

networkdelay

vreme

Page 8: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 8/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

Page 9: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 9/121

Streaming multimedijalnih aplikacija "uživo"

Primeri: Internet radio talk show Uživo sportski događajiStreaming playback bafer playback može da se uspori nekoliko desetina

sekundi nakon transmisije postoje vremenska ograničenja još uvekInteraktivnost nemuguće brzo premotavanje premotavanje pa pauza, to je moguće

Page 10: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 10/121

Interaktivnost, Multimedija u realnom vremenu

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?

aplikacije: IP telefoniranje, video konferencija, distribuirani interaktivni svet

Page 11: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 11/121

Multimedija preko današnjeg Internet-aTCP/UDP/IP: “servis najboljeg pokušaja” nema garancija da neće biti kašnjenja, gubitaka

Današnje multimedijalne aplikacije na Internet-ukoriste tehnike aplikacionog nivoa da bi smanjile (što je moguće više) uticaje kašnjenja i gubitaka

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

?? ???

?

? ??

?

?

Page 12: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 12/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

Page 13: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 13/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. 28=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.

Page 14: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 14/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

Page 15: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 15/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

Page 16: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 16/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

dekompresija uklanja jitter korekcija greške

Media Player

Page 17: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 17/121

Multimedija na Iternet-u: najprostiji pristup

audio, video nisu stream-ovani: ne postoji, “pipelining,” duga kašnjenja, dok ne

bude playout!

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

Page 18: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 18/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

Page 19: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 19/121

Streaming sa streaming servera

Ova arhitektura dozvoljava protokole koji nisu HTTP između servera i medija player-a

Koristi UDP radije nego TCP

Page 20: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 20/121

constant bit rate videotransmission

Cum

ula

tive

data

time

variablenetwork

delay

client videoreception

constant bit rate video playout at client

client playoutdelay

bu

ffere

dvid

eo

Streaming multimedijalne aplikacije: bafering na klijent strani

Bafering na klijent strani, playout kašnjenje kompenzuje dodatno kašnjenje na mreži, jitter kašnjenje

Page 21: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 21/121

Streaming multimedijalne aplikacije: bafering na klijent strani

Bafer na klijent strani se puni brzinom x(t) i prazni brzinom d

bufferedvideo

variable fillrate, x(t)

constant drainrate, d

Page 22: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 22/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

Page 23: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 23/121

Streaming multimedijalne aplikacije: klijentova brzina (e)

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

1.5 Mbps encoding

28.8 Kbps encoding

Page 24: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 24/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

Page 25: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 25/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”.

Page 26: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 26/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

Page 27: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 27/121

Metafile primer

<title>Twister</title> <session> <group language=en lipsync> <switch> <track type=audio e="PCMU/8000/1" src = "rtsp://audio.example.com/twister/audio.en/lofi"> <track type=audio e="DVI4/16000/2" pt="90 DVI4/8000/1" src="rtsp://audio.example.com/twister/audio.en/hifi"> </switch> <track type="video/jpeg" src="rtsp://video.example.com/twister/video"> </group> </session>

Page 28: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 28/121

Kako radi RTSP

Page 29: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 29/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

Page 30: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 30/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

Page 31: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 31/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

Page 32: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 32/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.

Page 33: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 33/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

Page 34: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 34/121

constant bit ratetransmission

Cum

ula

tive

data

time

variablenetwork

delay(jitter)

clientreception

constant bit rate playout at client

client playoutdelay

bu

ffere

ddata

Kašnjenje usled jitter-a

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.

Page 35: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 35/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

Page 36: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 36/121

Fiksno playout kašnjenje

packets

tim e

packetsgenerated

packetsreceived

loss

r

p p '

playout schedulep' - r

playout schedulep - r

• 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’

Page 37: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 37/121

Adaptivno playout kašnjenje, I

packetith receivingafter delay network average of estimated

acketpith for delay network tr

receiverat played is ipacket timethep

receiverby received is ipacket timether

packetith theof timestampt

i

ii

i

i

i

Dynamic estimate of average delay at receiver:

)()1( 1 iiii trudud

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

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.

Page 38: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 38/121

Adaptivno playout kašnjenje, II

Also useful to estimate the average deviation of the delay, vi :

||)1( 1 iiiii dtruvuv

The estimates di and vi 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:

iiii Kvdtp

where K is a positive constant.

Remaining packets in talkspurt are played out periodically

Page 39: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 39/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

sequence numbers without gaps --> talk spurt begins.

Page 40: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 40/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

Page 41: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 41/121

Oporavak od gubitaka paketa (2)

2nd FEC scheme• “piggyback lower quality stream” • send lower resolutionaudio stream as theredundant information• for example, nominal stream PCM at 64 kbpsand redundant streamGSM at 13 kbps.

• Whenever there is non-consecutive loss, thereceiver can conceal the loss. • Can also append (n-1)st and (n-2)nd low-bit ratechunk

Page 42: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 42/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

Page 43: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 43/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

Page 44: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 44/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

Page 45: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 45/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

Page 46: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 46/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

Page 47: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 47/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.

Page 48: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 48/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.

Page 49: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 49/121

RTP Header

Payload Type (7 bits): pokazuje tip kodiranja koji se tekuće koristi.Ako pošiljalac menja kodiranje usred konferencije, on informišeprimaoca 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 poslatiRTP paket i može da se koristi za detekciju gubitaka paketa i zarestauriranje niza paketa.

Page 50: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 50/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.

Page 51: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 51/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

Page 52: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 52/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

Page 53: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 53/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.

Page 54: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 54/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.

Page 55: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 55/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.

Page 56: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 56/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.

Page 57: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 57/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.

Page 58: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 58/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

Page 59: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 59/121

Postavljanje poziva ka poznatoj IP adresi• 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)

• SIP poruke mogu da budu poslate preko TCP ili UDP-a; ovde preko RTP/UDP. •Default SIP port number je 5060.time time

Bob'stermina l rings

A lice

167.180.112.24

Bob

193.64.210.89

port 38060

Law audio

G SMport 48753

Page 60: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 60/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

Page 61: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 61/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 SIPservers ć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

Page 62: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 62/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

Page 63: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 63/121

SIP Registrar

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

Kada Bob startuje SIP client, klijent šalje SIP REGISTER poruku ka Bobovom registrar serveru

(slične funkcije kao kod Instant Messaging)

Register Message:

Page 64: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 64/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

Page 65: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 65/121

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

(1) Jim sends INVITEmessage to umass SIPproxy.(2) Proxy forwardsrequest to upenn registrar server. (3) upenn server returnsredirect response,indicating that it should try [email protected]

(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.

SIP client217.123.56.89

SIP client197.87.54.21

SIP proxyum ass.edu

SIP registrarupenn.edu

SIPregistrareurecom .fr

1

2

34

5

6

7

8

9

Page 66: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 66/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.

Page 67: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 67/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

Page 68: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 68/121

Mreže sa distribuiranim sadržajemContent 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 serverin S. America CDN server

in Europe

CDN serverin Asia

Page 69: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 69/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 serverin S. America CDN server

in Europe

CDN serverin Asia

Page 70: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 70/121

CDN primer

izvorni server (www.foo.com) distribuira HTML zamenjuje: http://www.foo.com/sports.ruth.gif

sa

http://www.cdn.com/www.foo.com/sports/ruth.gif

HTTP request for

www.foo.com/sports/sports.html

DNS query for www.cdn.com

HTTP request for

www.cdn.com/www.foo.com/sports/ruth.gif

1

2

3

Origin server

CDNs authoritative DNS server

NearbyCDN server

CDN kompanija (cdn.com) distribuira gif fajlove koristi svoj

authoritative (nadležan) DNS server da rutira preusmerene zahteve

Page 71: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 71/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

Page 72: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 72/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

Page 73: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 73/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: differential garancije Integrated Services: garancije nepromenljivosti

jednostavan model za proučavanje deljenja i zagušenja:

Page 74: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 74/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

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

Princip 1

Page 75: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 75/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)

obezbediti zaštitu (izolaciju) jedne klase od drugih

Princip 2

Page 76: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 76/121

Principi QoS garancija (3)

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

Dok je obezbeđena izolacija između protoka, poželjno je koristiti što efikasnije

resurse

Princip 3

Page 77: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 77/121

Principi QoS garancija (4)

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

Dopuštanje poziva: protok deklariše svoje potrebe, mreža može dablokira poziv (npr. signal zauzeća) ako ne može ispuniti zahtevani uslov

Princip 4

Page 78: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 78/121

QoS principi: zaključak

Page 79: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 79/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

Page 80: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 80/121

Mehanizmi raspoređivanja i politike

raspoređivanje: izabrati sledeći paket za slanje linkom

FIFO (first in first out) raspoređivanje: šalje po redosledu stizanja u red 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

Page 81: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 81/121

Politika raspoređivanja: više

Raspoređivanje na osnovu prioriteta: prenositi paket iz reda sa najvećim prioritetom

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 ...

Page 82: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 82/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)

Page 83: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 83/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

Page 84: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 84/121

Mehanizmi politike

Cilj: ograničiti saobraćaj da ne prelazi deklarisane parametre

Tri zajednički-korišćena kriterijuma: (Dugoročna) srednja vrednost brzine: koliko paketa

može da se pošalje u jedinici vremena 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)

Page 85: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 85/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).

Page 86: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 86/121

Mehanizmi politike (više)

token bucket, obezbediti garantovanu gornju granicu kašnjenja npr. QoS garancije!

WFQ

token rate, r

bucket size, b

per-flowrate, R

D = b/Rmax

arrivingtraffic

Page 87: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 87/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

Page 88: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 88/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 QoSgarancije načinjene za već prihvaćene tokove?

Page 89: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 89/121

Integrisani servisi: scenario QoS garancija

Rezervacija resursa setap poziva, signaliziranje

(RSVP) saobraćaj, QoS deklaracija kontrola prihvatanja po elementu

QoS-sensitive scheduling (e.g.,

WFQ)

request/reply

Page 90: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 90/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

Page 91: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 91/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"

WFQ

token rate, r

bucket size, b

per-flowrate, R

D = b/Rmax

arrivingtraffic

Page 92: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 92/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

Page 93: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 93/121

Ruter na ivici: po-toku upravljanje

saobraćajem

označavanje paketa kao in-profile i out-profile

Core router: za klasu upravljanje

saobraćajem buferovanje i raspoređivanje

bazirani na markiranju na ivici davanje prednosti in-profile

paketi Obezbediti prosleđivanje

Diffserv arhitektura

scheduling

...

r

b

marking

Page 94: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 94/121

Edge-router markiranje paketa

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

profile: pred-pregovaranje o brzini A, bucket veličina B markirani paket na ivici baziran je per-flow profajlu

Moguće korišćenje markiranja:

User packets

Rate A

B

Page 95: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 95/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

Page 96: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 96/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

Page 97: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 97/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

Page 98: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 98/121

Prosleđivanje (PHB)

PHBs se razvijaju: Očekivano prosleđivanje: brzina otpremanja

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

Zajamčeno prosleđivanje: 4 klase saobraćaja svaka garantuje minimalnu količinu širine opsega

Page 99: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 99/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

Page 100: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 100/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: rezervacija resursa duž putanje end-to-end (kraj sistema, ruteri) za QoS za multimedijalne aplikacije

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]

Page 101: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 101/121

RSVP ciljevi dizajna

1. prilagoditi heterogene primaoce (različite širine opsega duž putanje)

2. prilagoditi različite aplikacije različitim zahtevima za resursima

3. učiniti multicast servise prve klase adaptivnim na članove multicast grupe

4. uticaj postojećeg multicast/unicast rutiranja, adaptacijom na promene postojećih unicast i multicast ruta

5. overhead kontrolnog protokola da bi se povećao (u najgorem slučaju) linearno broj primaoca

6. modularni design za heterogenu raspoloživu tehnologiju

Page 102: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 102/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)

Page 103: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 103/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: rezerviše resurse od pošiljaoca

(jednog ili više) do primaoca reservation teardown: uklanja rezervacije primaoca

signaling od-mreže-ka-kraju sistema path error reservation error

Page 104: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 104/121

Putanja poruka: RSVP pošiljalac-mreža signaling

putanja poruke sadrži: adresu: unicast odredište ili multicast grupu flowspec-specifikaciju protoka: specifikaciju zahteva za

širinom opsega 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

Page 105: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 105/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

H5

H3

H4H1

R1 R2 R3

Page 106: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 106/121

inout

inout

inout

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

H2

H5

H3

H4H1

R1 R2 R3L1

L2 L3

L4L5

L6 L7

L5 L7L6

L1L2 L6 L3

L7L4m1:

m1:

m1:

Page 107: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 107/121

inout

inout

inout

RSVP: građenje stanja putanje

sledeće, H5 šalje path message, kreirajući više stanja na ruterima

H2

H5

H3

H4H1

R1 R2 R3L1

L2 L3

L4L5

L6 L7

L5 L7L6

L1L2 L6 L3

L7L4

L5

L6L1

L6

m1:

m1:

m1:

Page 108: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 108/121

inout

inout

inout

RSVP: građenje stanja putanje

H2, H3, H5 šalju path msgs, kompletirajući tabele stanja putanje

H2

H5

H3

H4H1

R1 R2 R3L1

L2 L3

L4L5

L6 L7

L5 L7L6

L1L2 L6 L3

L7L4

L5

L6L1

L6L7

L4L3L7

L2m1:

m1:

m1:

Page 109: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 109/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

Page 110: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 110/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 opsegaH2

H5

H3

H4H1

R1 R2 R3L1

L2 L3

L4L5

L6 L7

Page 111: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 111/121

inout

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

H2

H5

H3

H4H1

R1 R2 R3L1

L2 L3

L4L5

L6 L7

L1L2 L6

L6L1(b)

inout

L5L6 L7

L7L5 (b)

L6

inout

L3L4 L7

L7L3 (b)

L4L2

b

bb

b

bb

b

m1:

m1:

m1:

Page 112: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 112/121

inout

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

H2

H5

H3

H4H1

R1 R2 R3L1

L2 L3

L4L5

L6 L7

L1L2 L6

L6L1(b)

inout

L5L6 L7

L7L5 (b)

L6

inout

L3L4 L7

L7L3 (b)

L4L2

b

bb

b

bb

b

b

b

(b)m1:

m1:

m1:

Page 113: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 113/121

inout

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

H2

H5

H3

H4H1

R1 R2 R3L1

L2 L3

L4L5

L6 L7

L1L2 L6

L6L1(b)

inout

L5L6 L7

L7L5 (b)

L6

inout

L3L4 L7

L7L3 (b)

L4L2

b

bb

b

bb

b

b

b

(b)m1:

m1:

m1:

Page 114: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 114/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)

H2 H3

H4H1

R1 R2 R3L1

L2 L3

L4L6 L7

H2 H3

L2 L3

Page 115: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 115/121

RSVP: primer 2

H1, H4 su jedini pošiljaoci šalju path messages kao ranije, indicirajući filtriranu

rezervaciju

H2 H3

H4H1

R1 R3L1

L2 L3

L4L6 L7

H2 H3

L2 L3

L2(H1-via-H1 ; H4-via-R2 )L6(H1-via-H1 )L1(H4-via-R2 )

in

out

L6(H4-via-R3 )L7(H1-via-R1 )

in

out

L1, L6

L6, L7

L3(H4-via-H4 ; H1-via-R3 )L4(H1-via-R2 )L7(H4-via-H4 )

in

out

L4, L7

R2

Page 116: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 116/121

RSVP: primer 2

primalac H2 šalje reservation message za izvor H4 širine opsega b prostirući upstream prema H4, rezervišući b

H2 H3

H4H1

R1 R3L1

L2 L3

L4L6 L7

H2 H3

L2 L3

L2(H1-via-H1 ;H4-via-R2 )L6(H1-via-H1 )L1(H4-via-R2 )

in

out

L6(H4-via-R3 )L7(H1-via-R1 )

in

out

L1, L6

L6, L7

L3(H4-via-H4 ; H1-via-R2 )L4(H1-via-62 )L7(H4-via-H4 )

in

out

L4, L7

R2

(b)

(b)

(b)

L1

bb b

b

Page 117: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 117/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

H2 H3

H4H1

R1 R3L1

L2 L3

L4L6 L7

H2 H3

L2 L3

L2(H1-via-H1 ;H4-via-R2 )L6(H1-via-H1 )L1(H4-via-R2 )

in

out

L6(H4-via-R3 )L7(H1-via-R1 )

in

out

L1, L6

L6, L7

L3(H4-via-H4 ; H1-via-R3 )L4(H1-via-62 )L7(H4-via-H4 )

in

out

L4, L7

R2

(b)

(b)

(b)

L1

bb b

b

Page 118: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 118/121

RSVP: soft-stanje pretpostavimo da H4 (pošiljalac) odlazi bez izvršavanja teardown-a

H2 H3

H4H1

R1 R3L1

L2 L3

L4L6 L7

H2 H3

L2 L3

L2(H1-via-H1 ;H4-via-R2 )L6(H1-via-H1 )L1(H4-via-R2 )

in

out

L6(H4-via-R3 )L7(H1-via-R1 )

in

out

L1, L6

L6, L7

L3(H4-via-H4 ; H1-via-R3 )L4(H1-via-62 )L7(H4-via-H4 )

in

out

L4, L7

R2

(b)

(b)

(b)

L1

bb b

b

konačno stanje na ruterima će isteći i nestati!

gonefishing!

Page 119: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 119/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

Page 120: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 120/121

RSVP: napomene

multicast kao servis “prve klase” rezervacije orijentisane ka primaocu korišćenje soft-stanja

Page 121: Poglavlje  7 Multimedi jalno umrežavanje

7: Multimedijalno umrežavanje 7 - 121/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