Vysoké učení technické v Brně Fakulta elektrotechniky a komunikačních technologií Bakalářský studijní program Teleinformatika
SEMESTRÁLNÍ PROJEKT 1
Základní vlastnosti technologie diffserv
2004/2005
Otto Zeman, Brno
Obsah 1
Kvalita služeb v IP sítích (QoS) ..................................................... - 2 1.1 1.2 1.3 1.4
2
Základní parametry přenosu ........................................................ - 7 2.1 2.2 2.3 2.4 2.5
3
Definice ..............................................................................- 2 Historie a současnost ..............................................................- 2 Třídy služby .........................................................................- 3 Naměřené hodnoty v reálné síti CRFreeNet – Chrudim ......................- 4 -
Definice ..............................................................................- 7 Ztráta paketů .......................................................................- 8 Zpoždění - latence .................................................................- 8 Kolísání zpoždění - jitter .........................................................- 8 Šířka pásma - bandwith ...........................................................- 8 -
InterServ x Diffserv ................................................................... - 9 3.1 Integrované služby .................................................................- 9 3.2 Diferencované služby ............................................................ - 11 3.2.1 Referenční model technologie diffserv ................................. - 12 3.2.2 Třídič - Classifier ........................................................... - 13 3.2.3 Značkování – Marker........................................................ - 13 3.2.4 Měřič - Meter ................................................................ - 14 3.2.5 Přeznačení - Remarker .................................................... - 15 3.2.6 Zahození - Dropper ......................................................... - 16 3.2.7 Tvarovač – Shaper .......................................................... - 16 -
4
Závěr ....................................................................................- 16 -
5
Literatura...............................................................................- 16 -
1 Kvalita služeb v IP sítích (QoS) 1.1 Definice Internet byl vybudován s cílem poskytovat přenosovou službu, bez zajištění parametrů spojení, jako např. doručení paketů do určité doby (s minimalizací zpoždění způsobený přenosem sítí) případně zajištění předem definované šířky pásma po dobu trvání přenosu, atd. Přitom v dnešních sítích je stále častěji potřeba rozlišovat různé požadavky na kvalitu služeb. QoS = Quality of Service Kvalita služby je dle ITU-T E.800 definována jako výsledek výkonnosti služby, který určuje stupeň spokojenosti uživatele. Stupeň spokojenosti uživatele je těžce definovatelný. Kvalita služby v IP sítích charakterizuje výkonností toku paketů jednou nebo více sítěmi. Snahou je doručit pakety mezi koncovými uživateli dle určitých kritérií. Základní pravidla pro provoz Internetu, která byla definována již v 70. letech: Žádnému typu provozu nebude odmítnut přístup do sítě. S jakýmkoliv provozem se bude zacházet stejně. Jediná garance pro provoz je, že bude přenesen co nejlepším způsobem (Best Effort) v závislosti na dostupných prostředcích. To znamená, že nebude zbytečně a zcela uměle docházet ke zpoždění nebo nebude docházet ke ztrátám paketů. Na přenos datových souborů nebo elektronické pošty nemá velký vliv zpoždění nebo jeho kolísání. Pokud přejdeme k interaktivní komunikaci dozvíme se, že zpoždění nebo jeho kolísání má nyní určitý vliv tj. zpoždění a kolísání nemá velký vliv do té doby, do kdy nedojde k přetížení komunikační cesty mezi komunikujícími stranami. Neexistuje ale žádná jistota, že potřebná úroveň přenosové služby bude zajištěna celou dobu spojení, protože zátěž sítě může zapříčinit delší zpoždění paketů nebo dokonce jejich ztrátu. Zpoždění a kolísáni jsou u Best Effort provozu nepředvídané, tedy nijak neošetřené – nezajištěné. Jedním řešením by bylo zvýšení přenosové kapacity Internetu. Nedocházelo by ke ztrátám paketů a zpoždění bychom docílili velmi malé. Ale dostatek kapacity v páteřní síti neřeší problém s nedostatkem šířky pásma v okrajových částech sítě. Hraniční směšovače páteřní sítě Internetu (edge routers) dnes zpracovávají milióny datových toků přicházejících rychlostí Gbit/s. Chování distribuovaných aplikací je závislé na časových charakteristikách spojení, jako je propustnost a zpoždění. Patří sem služby – aplikace jako např. videokonference po IP, IP telefonie, telnet, ftp nebo www. Uživatel zde samozřejmě čeká určitou úroveň služby (např. načtení obrázku, či webové stránky apod. za akceptovatelnou dobu). Aplikace může poskytnout očekávanou kvalitu služby, pokud propojující komponenty poskytují propojení s tou určitou definovanou nebo lepší kvalitou.
1.2 Historie a současnost Technologie pro lokální počítačové sítě (LAN) historicky nepodporovali QoS, protože byly zaměřeny na přenos obyčejných dat. Pro tyto obyčejná data měli dostatečnou šířku pásma. Ale s příchodem nových aplikací (přenášející video, hlas, atd.) do LAN již začalo být nutností mít možnost dát provozu citlivému na zpoždění přednost před obyčejným přenosem. Jako doplňkové mechanismy v LAN se používá kombinace značení rámců a následně jejich řazení do front dle jejich priorit podle standardů IEEE 802.1 Q/p. Protokol IP byl navrhnut v době, kdy ještě nebyla definovaná kvalita služeb. Hlavička IP paketu sice obsahuje položku ToS (Type of Service), ale ta se nepoužívá kvůli zvýšení nároků na zpracování ve směrovačích. Další možností jsou zde hodnoty priorit (IP precedence), které díky 3 bitům položky ToS umožňují roztřídit provoz do 8 tříd. IP precedence byla nahrazena DSCP
-2-
(Differentiated Service Code Point), který na rozdíl od IP precedence využívá 6 bitů položky ToS a umožňuje rozřazení do 64 tříd v rámci mechanismu DIFFSERV. DSCP je v současnosti nejmodernější řešení zajištění QoS v IP síti. QoS se řeší pomocí doplňkových mechanismů diferencovaných služeb (DIFFSERV), protokolu RSVP (Resource reSerVation Protocol) a technologie MPLS (Multiprotocol Label Switching). Dosažení požadované kvality služby tedy předpokládá spolupráci všech vrstev referenčního modelu a spolupráci síťových prvků. To znamená, že maximální kvalita služby bude záviset na nejslabším článku sítě.
1.3 Třídy služby Kapitola popisuje nejčastější - doporučený způsob dělení síťového provozu do tříd a to pomocí Behavior Aggregate (BA) a MultiField (MF) [viz kap. 3.2.2]. Pro třídění síťového provozu jsou běžně definovány následující třídy: Real-time (VoIP) - Tato třída je zaměřena na aplikace jako je VoIP a video. Třída požaduje nízké ztráty (méně než 0.25%), nízké zpoždění a minimální jitter (typicky 5ms uvnitř páteře) a má předepsanou šířku pásma a dostupnost. Dosažitelný výkon je odvozen ze šířky pásma a ztráty paketů. Obchodní data (Business) - Tato třída představuje interaktivní aplikace jako je SNA (System Network Architecture) telnet a intranetové webové aplikace. Třída má specifikované požadavky na zpoždění RTT (Round-Trip Time - tj. aplikace, které se dokáží vyrovnat s občasným zvýšením zpoždění přenosu paketu a občasnými ztrátami paketu) by měl být méně než 250ms, na ztráty (menší než 1%) a specifikuje šířku pásma a dostupnost. Dosažitelný výkon je odvozen ze ztráty a RTT. Jitter není důležitý pro tuto třídu služby a proto ani není definován. Best effort - Tato třída představuje celý zbylý provoz, který nebyl klasifikován jako Real-time nebo Business. Definuje podmínky na míru ztrát a , specifikuje šířku pásma a dostupnost. Dosažitelný výkon je odvozen ze ztrát. Zpoždění a jitter nejsou důležití pro tuto službu a nejsou stanoveny. Třída dovoluje možnost zpoždění paketů ve vyrovnávací paměti směrovače.
Tabulka 1. - Příklady a zařazení služeb Typ služby Best effort
Real-time (VoIP)
Business
WWW (World Wide Web)
IP telefonie
WWW (World Wide Web)
Komunikační programy (ICQ,MSN,AIM,IRC)
On-line web kamery
E-mail
On – line TV
FTP (File Transfer Protokol) Výměnné sítě (P2P)
(DC++, Bittorrent, eDonkey2k, Kazaa)
-3-
Vzdálená správa PC
(Real VNC, Remote Administrator)
1.4 Naměřené hodnoty v reálné síti CRFreeNet – Chrudim Zde jsou přiložené naměřené hodnoty, které jsem pořizoval za účelem zjištění provozu v reálné síti. Statistika byla provedena na hlavním routeru občanského sdružení CRFreeNet Chrudim, na místě které předává pakety a tudíž nezachytává ARP protokol. Tato síť nemá žádná datová omezení, ani nijak zakázané porty, vše je dovoleno. Síť má 2Mbps směrem do Internetu a sdílí ji 70 lidí. Statistiky byly pořízeny za časový interval 24hodin. Sledoval jsem jednotlivé parametry pro jednotlivé služby (přeneseno paketů, přeneseno dat, velikost průměrného paketu a využití jednotlivého protokolu). Viz. Tab.2 Popis jednotlivých aplikací – protokolů, které jsem zachytil
[port]
Auth – Authentication Service
[113]
Bootpc – Bootstrap Protocol Client - zaváděcí protokolový klient
[68]
Csnet –ns - Mailbox Name Nameserver
[105]
Domain - Domain Name Server
[53]
Echo –
[7]
Ftp – File Transfer Protocol [Control] – přenášení souborů
[21]
Ftp – data - File Transfer Protocol [Default Data]
[20]
Gopher –
[70]
Http - World Wide Web Http
[80]
Https – World Wide Web Security
[443]
ICQ – I seek you - protokol pro chatování
[5190]
Iso – tsap –
[102]
Jabber – Otevřený protokol pro chatování
[5222]
Kerberos - Autentizační mechanismus
[88]
Link –
[245]
MSN - MSN Messenger
[1863]
MySQL - Relační databázový systém
[3306]
Ntp - Network time protokol – slouží ke synchronizaci času
[123]
Ostatní – většinou P2P sítě Pop3 - Post Office Protocol – protokol příchozí pošty v3
[110]
Pop3s - Post Office Protocol Security – zabezpečený protokol příchozí pošty v3 [995] Sftp - Simple File Transfer Protocol
[115]
Smtp - Simple Mail Transfer Protocol
[25]
Ssh - Protokol pro vzdálený přístup ke konzoly serveru po síti
[22]
Sunrpc - SUN Remote Procedure Call
[111]
Systat - Active Users
[11]
Tcpmux - TCP Port Service Multiplexer
[1]
Telnet - slouží k navázání spojení s jiným počítačem
[23]
Tftp - Trivial File Transfer Protocol
[69]
-4-
Tabulka 2. – Naměřené hodnoty v reálné síti CRFreeNet
Port
Přeneseno paketů
Přeneseno dat [byte]
[kB]
[MB]
Velikost průměrného paketu [byte]
Využití protokolů
Auth
65
5818
5,68
0,01
89,51
0,00%
Bootpc
56
5692
5,56
0,01
101,64
0,00%
csnet-ns
2
278
0,27
0,00
139,00
0,00%
Domain
2749
392822
383,62
0,37
142,90
0,00%
Echo
892
1196870
1168,82
1,14
1341,78
0,01%
14304
10821563
10567,93
10,32
756,54
0,05%
ftp-data
14
1210
1,18
0,00
86,43
0,00%
Gopher
18
1468
1,43
0,00
81,56
0,00%
http
3768083
3488922687
3407151,06
3327,30
925,91
15,66%
https
44993
15442129
15080,20
14,73
343,21
0,07%
ICQ
30313
5027510
4909,68
4,79
165,85
0,02%
iso-tsap
3
233
0,23
0,00
77,67
0,00%
Jabber
1787
119012
116,22
0,11
66,60
0,00%
Kerberos
1
139
0,14
0,00
139,00
0,00%
Link
2
278
0,27
0,00
139,00
0,00%
MSN
36
2799
2,73
0,00
77,75
0,00%
Mysql
2144
1740247
1699,46
1,66
811,68
0,01%
Ntp
2613
515445
503,36
0,49
197,26
0,00%
18 313 870 021 17884638,69 17465,47
548,02
82,23%
ftp
Ostatní
33418417
pop3
297927
433363918
423206,95
413,29
1454,60
1,95%
pop3s
1131
422951
413,04
0,40
373,96
0,00%
Sftp
2
278
0,27
0,00
139,00
0,00%
Smtp
9474
411280
401,64
0,39
43,41
0,00%
Ssh
46
6727
6,57
0,01
146,24
0,00%
Ssh
2
278
0,27
0,00
139,00
0,00%
Sunrpc
180
13250
12,94
0,01
73,61
0,00%
Systat
2
186
0,18
0,00
93,00
0,00%
Tcpmux
81
6242
6,10
0,01
77,06
0,00%
7719
359082
350,67
0,34
46,52
0,00%
6
282
0,28
0,00
47,00
0,00%
37603062
22272650695
21750635
21240
592,31
100,00%
telnet Tftp Celkem
-5-
Graf 1. - Využití služeb v síti CRFreeNet pop3
http
2%
16%
ostatní 82%
http
ostatní
pop3
Graf 1. zobrazuje využití služeb v reálné sítí. Je zde vidět, že je markantní 82% využití ostatních služeb což je způsobené většinou P2P programy (DC++, Kazaa, BitTorrent, atd.). Je to způsobeno tím, že v síti CRFeeNet nejsou žádné limity, ani blokované porty. Graf 2. - Využití služeb v síti CRFreeNet bez 3 nejvíce zastoupených parametrů (http,pop3 a ostaní)
ntp mysql 1% 5%
pop3s 1%
ICQ 14%
domain
echo
smtp telnet domain 1% 1% 1% echo 3% ftp 30%
https 42%
ftp
https
ICQ
mysql
ntp
pop3s
smtp
telnet
Graf 2. zobrazuje využití služeb v síti CRFreenet. Je zde patrné, že je nejvíce využito protokolu https 42%, ftp 30% a také ICQ 14%. Ostatní protokoly jsou už vzhledem k ostatním zanedbatelné.
-6-
Graf 3. - Rozdělení do tříd služeb v reálné síti CRFreeNet Chrudim Business; 0,1%
Best Effort ; 99,9%
Best Effort
Business
Graf 3. zobrazuje rozdělení do tříd v síti CRFreeNet. Je zde jasně vidět, že skoro veškerý provoz je probíhá ve třídě Best Effort. Je to dáno tím, že tato síť nemá žádné omezení, a proto zhruba 80% provozu představuje využití P2P programů.
2 Základní parametry přenosu 2.1 Definice Kvalita služby záleží na kombinaci následujících parametrů: ztráta paketů (souvisí se spolehlivostí) – [viz kap. 2.2], zpoždění (souvisí se šířkou pásma) - [viz kap. 2.3], kolísání (souvisí se zpožděním – včasném doručení paketů) – [viz kap. 2.4], šířka pásma (bandwith) – jedná se o kapacitu spoje, udává se např. kbps - [viz kap. 2.5].
Tabulka 3. - Citlivost různých typů služeb na parametry sítě Služba
Citlivost na šířku pásma
ztrátu paketů
zpoždění
kolísání
velmi nízká
střední
vysoká
vysoká
Elektronický obchod
Nízká
vysoká
vysoká
nízká
Transakce
nízká
vysoká
vysoká
nízká
e-mail
nízká
vysoká
nízká
nízká
telnet
nízká
vysoká
střední
nízká
Občasné prohlížení webu
nízká
střední
střední
nízká
Časté prohlížení webu
střední
vysoká
vysoká
nízká
Přenos souborů
vysoká
střední
nízká
nízká
Videokonference
vysoká
střední
vysoká
vysoká
Skupinové vysílaní
vysoká
vysoká
vysoká
vysoká
Hlas
-7-
2.2 Ztráta paketů Ztrátu paketů v síti můžeme hledat v různých příčinách. Nejvíce je to kvůli přetížení či zahlcení síťového uzlu, kdy některé směrovače nebo přepínače nestačí odbavovat příchozí pakety dostatečně rychle. Fronty ve vyrovnávacích pamětích směrovačů přetečou a proto jsou další pakety zahozeny. Tato ztráta je pro aplikace, které neprobíhají v reálném čase není zase tak kritická, protože aplikace založené na TCP protokolu se mohou spolehnout na jejich opětovné vyslání. Kdežto aplikace pracující v reálném čase, používají nespolehlivý transportní protokol UDP. Tyto aplikace jsou citlivější na ztrátu paketů, protože nemají mechanismus na opětovné vysílání paketů a to proto, že jim pozdější doručení paketů by nebylo moc platné. Na druhé straně z charakteru přenášeného signálu vyplývá tolerance určité míry ztrát.
2.3 Zpoždění - latence Zpoždění čili latencí se rozumí čas, za který data doputují do cílového místa. Zpoždění se skládá z několika dílčích zpoždění: zpoždění kódováním a serializací (přípravou paketů na přenos médiem), zpoždění při přenosu (odvozené z rychlosti šíření signálu v médii a ze vzdálenosti), zpoždění způsobené čekáním ve frontě na odbavení, zpoždění při přepínání v síti (nalezení další cesty v síti a odpovídajícího výstupního portu).
2.4 Kolísání zpoždění - jitter Kolísání zpoždění je způsobeno zpožděním při serializací paketů, rozdílem délek front, které souvisejí s mírou zahlcení sítě. Důsledkem uvedených faktorů je, že pakety v rámci dané konverzace nemusejí přicházet od zdroje se stejným zpožděním. Kolísání zpoždění má nejhorší dopad na VoIP. Při rychlosti vysílání 20 ms se očekává, že pakety budou doručeny k cíli pravidelně po 20 ms. To ale nemusí být vždy dodrženo kvůli dynamickým změnám zatížení sítě. Tento problém je řešen vyrovnávacími pamětmi v telefonech, nebo branách.
2.5 Šířka pásma - bandwith Šířka pásma je šířka kmitočtového pásma právě postačujícího při daném druhu vysílání pro zajištění přenosu informace požadovanou rychlostí a s požadovanou jakostí v daných podmínkách. Je vyjádřena třemi číslicemi a jedním písmenem. Písmeno označuje umístění desetinné čárky a udává jednotku potřebné šířky pásma Hz, kHz, MHz (Např. 12,5 kHz = 12K5).
-8-
Tabulka 4. - Přehled nejdůležitějších parametrů síťových služeb Typ provozu
Maximální ztráty paketů
Maximální jednosměrná latence
Maximální kolísání
Garantovaná prioritní šířka pásma na relaci
Hlas po IP
1%
200 ms
30 ms
12 – 106 kbitps (v závislosti na rychlosti vzorkování, kodeku apod.)
Videokonference
1%
200 ms
30 ms
Objem relace plus 20%
Streamované video
2%
5s
-
Závisí na formátu kódování a rychlosti toku videa
různé
různé
různé
různé
data
3 InterServ x Diffserv Abychom splnili požadavky uživatelů na kvalitu poskytovaných služeb, nebo aplikací můžeme použít dva způsoby zajištění QoS: Integrovaných služeb – Integrated Services (InterServ) Diferencované služby – Differentiated Services (Diffserv)
3.1 Integrované služby U integrovaných služeb aplikace oznámí počítačové síti své požadavky na přenos dat. To znamená, že definuje určité vlastnosti, které by při přenosu paketů měli být dodrženy. Počítačová síť ověří zda požadavku může vyhovět. Pokud nelze vyhovět, aplikace může požádat o nižší přiřazení QoS. Pokud síť požadavkům vyhoví musí informovat všechny komponenty, např. směrovače v uzlech počítačové sítě, přes které bude probíhat spojení, aby mohly pro dané spojení rezervovat odpovídající objem prostředků. Zpravidla se rezervuje určitá šířka pásma pro spojení mezi dvěma směrovači, určitá velikost vyrovnávací paměti pro tvorbu front uvnitř směrovače, apod. K tomuto účelu slouží rezervační protokol RSVP [1] (Resource reSerVation Protocol). Protokol RSVP není vhodné pro použití v Internetu, protože přináší velkou časovou režii. Řada aplikací nepotřebuje nutně zajistit určitou konkrétní průchodnost nebo minimální zpoždění. Postačí, když bude zajištěno, že tyto parametry nebudou výrazně zhoršeny vlivem jiné komunikace současně probíhající v téže počítačové síti. Například, aby spuštění přenosu velkého souboru nezpůsobilo podstatné zpomalení interaktivní komunikace, kde je odezva vnímána uživatelem mnohem citlivěji. Navíc, při stále se zvyšujících rychlostech průchodu paketů směrovači je třeba maximálně zjednodušit zpracování jednotlivých procházejících paketů a minimalizovat objem stavové informace (jakou je například rezervace síťových prostředků), kterou musí směrovače o jednotlivých spojeních udržovat. Proto se v poslední době pozornost obrací více k jinému přístupu k implementaci QoS do počítačové sítě k diferencovaným službám. DiffServ poskytne zajištění QoS na základě klasifikace paketů do různých tříd s podobnými vlastnostmi. Třídit provoz můžeme dle různých hodnot: MAC adresa, identifikátor portu přepínače, adresa IP, typ aplikace (identifikovaný podle čísel portů TCP/UDP).
-9-
Model integrovaných služeb je definován v [9]. Je modelem schopným zaručit QoS. Admission Control - Na žádost aplikace jsou podle dostupnosti síťových prostředků tyto prostředky (požadovaná šířka pásma a vyrovnávací paměti) buď poskytnuty a zpět je zasláno pozitivní potvrzení nebo negativní odpověď. Bez jeho přítomnosti by model InterServ zaručoval všechny dostupné zdroje všem třídám paketu a mohl by poskytovat opět jen služby typu best-effort. RSVP (Resource reSerVation Protocol) [1] – provádí rezervaci síťových prostředku a to buď pomocí dynamického rezervačního protokolu, manuálně nebo využitím protokolu sítového managementu RSVP . Na rezervaci zdrojů se podílí další přidružené mechanismy, včetně plánovacích charakteristik (desired scheduling characteristics), profilu zdroje datového toku, kritérií klasifikace datového toku či rezervačních identifikátoru. Packet classifier – Třídič paketu - plní funkci mapování paketu do servisních tříd. Třídič paketu je součástí směrovačů i koncových zařízení. Packet scheduler - Plánovač paketu - řídí odesílání paketu podle odpovídající servisní třídy, tj. datového toku. Popis zpráv PATH a RESV Zdroj datového toku vysílá v pravidelných intervalech zprávy typu PATH, které jsou dále šířeny po trase směrem k příjemci od jednoho routeru k následujícímu. V případě multicastových toků se zprávy PATH samozřejmě šíří od zdroje ve více větvích. Zprávy PATH obsahují zejména tyto objekty: RSVP_HOP: Každý router na trase od zdroje k příjemci sem zapíše sebe jakožto původce zprávy. SENDER_TSPEC: Do tohoto objektu zapíše zdroj parametry toku, který generuje - jde v podstatě o specifikaci průměrné a špičkové přenosové rychlosti a maximálního rozsahu špiček. Dalšími routery na trase je tento objekt ve zprávách PATH předáván beze změny. Příjemce z něho proto získá originální informace o parametrech datového toku. ADSPEC: Tento objekt umožňuje příjemci poté, co k němu doputuje, zjistit vlastnosti trasy od zdroje (dostupnost funkcí potřebných pro specifikaci QoS, šířku pásma, MTU atd.). Na rozdíl od SENDER_TSPEC je objekt ADSPEC po cestě od zdroje k příjemci postupně modifikován tak, aby odrážel vlastnosti celé trasy. Příjemce posílá periodicky objekty (FLOWSPEC, FILTERSPEC) zabalené ve zprávě typu RESV (rezervační požadavek) proti směru datového toku - jednotlivé uzly na této cestě lze totiž určit z předcházejících zpráv typu PATH.
Obr. 1 - referenční model technologie InterServ – [9]
- 10 -
3.2 Diferencované služby Tato technologie slouží k rozdělení služeb dle jejich nároků na síť. Hledání jiné cesty než je InterServ vychází z náročnosti protokolu RSVP. Pokud by IntServ se realizoval v celém Internetu zatěžoval by extrémně routery. Ty přenášejí i statisíce toků a jejich nároky na paměť a výpočetní kapacitu by tak byly opravdu veliké. Proto pracovní skupina IETF se snažila vyvinout jednoduší model QoS. Jeho hlavním principem je rozdělení datového toku do malého počtu tříd (CoS - Classe of Service), kterým odpovídá určitá kvalita služeb. K roztřídění paketů do jednolité třídy se využívá oktet ToS (Type of service) v hlavičce IPv4 nebo oktet Traffic Class v hlavičce IPv6 [viz obr. 2]. DS - rozlišované služby (differentiated service) DSCP – značka rozlišované služby CU – nepoužito (currently unused)
DSCP
CU
DS
Délka hlavičky
Verze
Identifikace TTL
Celková délka paketu
TOS
Příznaky
Protokol
Verze
Ofset fragmentu
Třída přenosu
Označení toku dat
Typ následující hlavičky
Délka datové části paketu
Hop limit
. . .
Kontrolní součet hlavičky
Adresa odesílatele Cílová adresa . . . IP v 4
IP v 6
Obr. 2– Položky ToS a Traffic Class v hlavičce IP paketu Model Diffserv pro dělení komunikační sítě na menší části využívá DS-domény, což je část sítě analogická autonomnímu systému. V DS doméně je jednotná administrace, která zajišťuje: vyhodnocování oprávněnosti požadavků, přiřazení toků do tříd, označení paketů.
- 11 -
Obr. 3 – schéma diffserv V DS doméně se rozlišují tři typy uzlů – routerů Okrajový uzel – ten leží na rozhraní DS domény a části sítě, která neznačkuje pakety. Tento uzel je nejdůležitější, protože provádí klasifikaci vstupních toků – označuje pakety a posílá je do své DS-domény. Vnitřní uzel – neprovádí žádnou klasifikaci paketů, pouze naloží s daným paketem dle jeho značky Hraniční uzel – (edge routers) leží na rozhraní dvou DS-domén, které mohou mít různá klasifikační pravidla. Způsob jak se naloží z přicházejícími pakety z jiné DS-domény zaleží na dohodě mezi oběmi DS-domény. Obyčejně se provede reklasifikace na základě značky v příchozím paketu a cílové adrese. Poté se přiřadí nová značka.
3.2.1 Referenční model technologie diffserv
Obr. 4– referenční model technologie diffserv
- 12 -
3.2.2 Třídič - Classifier Třídič dělí přicházející tok paketů do několika skupin podle předdeklarovaných pravidlech. Máme dva základní druhy třídičů: Behavior Aggregate (BA) MultiField (MF) BA třídič patří mezi nejjednodušší diffserv třídiče. Ten třídí pakety pouze na základě hodnoty pole DSCP v hlavičce paketu. BA třídič se používá tehdy, kdy je DSCP určené (paket označovaný) už dříve. DSCP hodnota paketu může být označena v mnoha různých cestách. Pokud podporuje zákazníkova síť diferencované služby, je žádoucí, aby byli pakety označeny již ve vstupním routeru. U mnoha zákaznických sítí se dá očekávat, že nebude provádět toto označení. Takoví zákazníci mohou užívat služby poskytnuté od jejich poskytovatelů služeb pro označené pakety. MF třidič užívá kombinaci jednoho nebo více polí z pětic: zdrojová adresa, cílová adresa, zdrojový port, cílový port, protokolový identifikátor. Tyto pětice jsou umístěné v IP hlavičce paketu pro třídění. MF třídič můžeme použít pro komplikovanější zdrojovou alokační politiku u zákazníků. Např.: značkování paketů podle druhu aplikace (čísla portu), jako TELNET nebo FTP, značkování paketů podle n-tice, který určí aplikační tok, jako např. datový tok videa
3.2.3 Značkování – Marker Jsou definovány dva typy mechanismů diferencovaného zacházení s pakety různých tříd, označované zkratkou PHB (Per Hop Behavior), čili PHB označuje zpracování paketů směrovačem na základě značky paketu. Expedited forwarding (EF) – urychlené předávání [2], které nabízí absolutní záruky velikosti kolísání zpoždění pro danou třídu. Je proto velmi složité na zajištění a neefektivní. Když poskytneme EF danému toku dat, tak to skoro odpovídá poskytnutí virtuálního okruhu, což vede k nižším využití síťových prostředků. EF lze poskytovat jen omezenému počtu toků. Závěr: složité a aplikovatelné na omezený počet toků Assured forwarding (AF) – zajištěné předávání [3] – služba je navržena tak, aby zajistila přenos garantovanou rychlostí. Používá se především transportní protokol TCP. Ten pracuje na základě stanovení priorit pro různé kategorie provozu. V případě zahlcení sítě budou zahozeny pakety, které patří nejnižší třídě kvalitě QoS). Závěr: zajišťuje pouze slabší garance QoS Vedle EF a AF existuje ještě služba základní (BE – Best Effort), která je vhodná pro nenáročné datové přenosy. IETF nemohla samozřejmě použít označení podmínek jako zlato, stříbro a bronz pro popis správy sítě. Proto definovala např. AF21 jako třídu 2, zlato. Jednotlivé hodnoty jsou uvedeny v tabulce 5. DSCP – značka rozlišované služby
- 13 -
Tabulka 5. - DSCP pro PHB (Tabulka zobrazuje jednotlivé značky pro různé třídy provozu) DSCP
Service
DSCP
Service
0
Best effort
0
Best effort
8
Class 1
8
Class 1
10
Class 1, gold (AF11)
10
Class 1, gold (AF11)
12
Class 1, silver (AF12)
12
Class 1, silver (AF12)
14
Class 1, bronze (AF13)
14
Class 1, bronze (AF13)
16
Class 2
16
Class 2
18
Class 2, gold (AF21)
18
Class 2, gold (AF21)
20
Class 2, silver (AF22)
20
Class 2, silver (AF22)
22
Class 2, bronze (AF23)
22
Class 2, bronze (AF23)
24
Class 3
24
Class 3
26
Class 3, gold (AF31)
26
Class 3, gold (AF31)
27
Class 3, silver (AF32)
27
Class 3, silver (AF32)
30
Class 3, bronze (AF33)
30
Class 3, bronze (AF33)
32
Class 4
32
Class 4
34
Class 4, gold (AF41)
34
Class 4, gold (AF41)
36
Class 4, silver (AF42)
36
Class 4, silver (AF42)
38
Class 4, bronze (AF43)
38
Class 4, bronze (AF43)
40
Express forwarding
40
Express forwarding
48
Control
46
Expedited forwarding (EF)
56
Control
48
Control
56
Control
3.2.4 Měřič - Meter Pro každou třídu změří měřič [4] datový tok od zákazníka s jeho datovým profilem. Datovým profilem rozumíme dohodnuté podmínky mezi zákazníkem a poskytovatelem. Ty pakety, které odpovídají danému profilu mohou vstoupit do sítě, zatímco ty, které neodpovídají jsou podmíněné podle TCS (Transparent Cache Switching – propustné cache přepínání). Akce které mohou být provedeny jsou tvarování, přeznačení a zahození provozu. Datové profily jsou typicky popisované v rámci definovaných token bucket parametrů. Většina meřičů je implementovaná jako token bucket. Token bucket je vysvětleno v kapitole 3.2.4.1.
- 14 -
3.2.4.1 Token bucket
Obr. 5 - Token bucket Token bucket je nejvíce využívaným mechanismem pro řízení toku dat. Tato technologie slouží k vyrovnávání různě velkého objemu dat přicházející nepravidelnými rychlostmi na vstupní porty směrovače v síti tak, aby nemohlo dojit k překročeni výstupní kapacity linky, tj. k jejímu zahlcení. Metoda token bucket patří do komponentu měření a může být použita pro ovlivnění značkování nebo rozhodnutí o policing (zahození paketu, předávání či podržení ve vyrovnávací paměti). Token bucket si můžeme představit jako nádobu, která obsahuje v každém okamžiku určitý počet tokenů. Každý z nich je povolením k odeslání určitého objemu dat. Na počátku je nádoba plná. Po příchodu paketu se ověří, zda počet tokenů v nádobě alespoň odpovídá velikosti paketu. Pokud ano, je paket zařazen do fronty a odeslán na výstupní port, nebo může být příslušným způsobem označen. Zároveň je z nádoby odebrán určitý počet tokenů, který odpovídá velikosti paketu. Pokud ne, paket může být zahozen, uložen do vyrovnávací paměti, kde bude pozdržen do doby, než se nádoba naplní dostatečným počtem tokenů, nebo označen jiným způsobem. Tokeny jsou do nádoby plynule doplňovány stálou rychlostí, dokud není nádoba plná. Token bucket lze tedy popsat dvěma parametry: rychlostí doplňování tokenů r a velikostí nádoby b. Největší povolený shluk přicházejících paketů tedy odpovídá hloubce token bucketu b a dlouhodobá průměrná rychlost zpracování příchozích dat odpovídá rychlosti doplňování tokenů do nádoby r. Dlouhodobý průměr rychlosti přicházejících dat tedy nesmí překročit rychlost doplňování tokenů a krátkodobé špičky nesmí překročit velikost nádoby, jinak může dojít k zahození paketů nebo jiné odpovídající akci.
3.2.5 Přeznačení - Remarker Přeznačení [4] provádíme u těch paketů, které již předtím byly označené. Označení paketů můžeme provádět v různých částech sítě. Pokud zákazník sítě podporuje diffserv značení, poté pakety mohou být značené aplikacemi nebo v routeru. Přeznačení je také akce, které můžeme použít při neodpovídajících paketech. Pakety mohou projít mnoha různými doménami, pakety které byly předtím označeny mohou být přeznačeny. Když paketový tok poruší datové profily v nějaké správní hranici, poté mohou být pakety přeznačeny k různým DSCP. Přeznačení je také nezbytné na rozhraní dvou administrativních domén, které využívají různé DSCP. DSCP musí být také přeložen, když paket přechází přes hranici domény.
- 15 -
3.2.6 Zahození - Dropper Zahození [4] je další možná akce, kterou můžeme použít na pakety, kterou nejsou ve vhodném datovém profilu. Ve srovnání s tvarováním, kde tvarovač musí mít vyrovnávací paměť, je zahození jednodušší.
3.2.7 Tvarovač – Shaper Tvarovač [4] má za úkol přenést datový tok do souladu se sjednaným datovým profilem. Rozdíl mezi tvarovačem a značkovačem je v tom, že značkovač jednoduše označí paket a nechá je projít do sítě. Zatímco tvarovač zabrání vstupním paketům projít sítí do té doby, dokud se datový tok nepřizpůsobí danému profilu. Tvarování je méně náročná forma zacházení s pakety než značení. Pro nějaké služby je přísná přijímací kontrola nezbytná. Tvarování také může být potřebné v hraničním uzlu různé domény. Koncový uzel může potřebovat upravit odcházející datový tok, tak aby odpovídal sjednanému datovému profilu pro další doménu. Tvarovací obvod má konečnou velikost vyrovnávací paměť.
4 Závěr InterServ [7] spolu s protokolem RVSP [1] poskytuje jen koncové garance služeb, ale potřebuje k tomu účast všech směrovačů, které musí udržovat informaci o stavu každého toku paketů.Objem těchto stavových informací s počtem toků zákonitě roste. To znamená zvýšení požadavků na paměťovou a procesní kapacitu směrovačů a jejich složitost. Proto InterServ lze uplatnit např. v podnikové síti ale nikoliv v Internetu. Diffserv [4] poskytuje určité znevýhodnění v závislosti na platbě za službu. Třídy služeb jsou předdefinované a zajišťované bez potřeby zvláštní signalizace v síti. Klasifikaci provádějí koncové systémy, takže je pro DiffServ mnohem jednodušší. To je ale do jisté míry současně nevýhodou, protože DiffServ za cenu jednoduchosti systému sítě přesouvá složitost fungování sítě k jejímu okraji. DiffServ lze uplatnit i v rozsáhlých sítích, protože místo sledování jednotlivých toků paketů v síti sleduje pouze základní provoz.
5 Literatura [1] Kolektiv autoru. Resource ReSerVation Protocol (RSVP) - Version 1 Functional Specification. IETF http://www.ietf.org/rfc/rfc2205.txt?number=2205 [2] Kolektiv autoru. An Expedited Forwarding PHB (Per-Hop Behavior) http://www.ietf.org/rfc/rfc3246.txt?number=3246 [3] Kolektiv autoru. Assured Forwarding PHB Group http://www.ietf.org/rfc/rfc2597.txt?number=2597 [4] Kolektiv autoru. An Architecture for Differentiated Services http://www.ietf.org/rfc/rfc2475.txt?number=2475 [5] Ineternet QoS - Architectures and Mechanisms for Quality of Service – Zheng Wang - 2001 [6] QoS v prostředí IP sítí - Ing. Petr Berka http://www.elektrorevue.cz/clanky/04036/.iso-8859-1 [7] TCP/IP v kostce - Rita Pužmanová – 2004 - ISBN 80-7232-236-2 [8] http://www.cesnet.cz/doc/techzpravy/2000-6/diffserv.html [9] Kolektiv auturů. Integrated Services in the Internet Architecture: an Overview http://www.ietf.org/rfc/rfc1633.txt?number=1633
- 16 -