QOS

13
Calitatea QoS in Calitatea QoS in re re ţ ţ ele de ele de transport. transport.

description

Calitatea QoS in reţele de transport

Transcript of QOS

  • Calitatea QoS in reele de transport.

  • 1.Generaliti

    Termenul QoS, folosit extensiv n ultimii 10+ ani, are un sens foarte larg i se poate referi la orice modalitate prin care se poate asigura o mbuntire/prioritizare fa de serviciul standart oferit de Internet, i anume best effort. mplicit, termenul best effort poate fi considerat sinonim cu lipsa oricrui mecanism QoS. n continuare, ne vom concentra pe o parte din acele tehnologii/mecanisme QoS configurabile pe ruterele Cisco (deci QoS la nivelul 3), folosind protocolul IP. De notat c alte tehnologii, cum ar fi ATM, asigur, conform unora, abiliti QoS mai ridicate, sau chiar singureleabiliti QoS adevrate. O clasificare larg a mecanismelor QoS identific urmtoarele categorii: mecanisme i politici de control al cozilor i de control/evitare a congestiilor mecanisme de traffic policing i traffic shaping mecanisme de marcare/clasificare a traficului (ToS, Diffserv, NBAR) mecanisme de rezervare (RSVP)

  • Fig.1. Aciunea mecanismelor QoS ntr-un ruter Cisco

  • 2.Congestii Atunci cnd cererea de band depeste disponibilitatea apare fenomenul de congestie. De exemplu, exist mai multe fluxuri de intrare ntr-un nod, iar suma benzilor (maxime) ale acestor fluxuri depete banda disponibil pe interfaa de ieire. n acest caz, solu ia este mpiedicarea(sau prevenirea) congestiei, dar atunci cnd acest lucru nu este posibil, implementarea unor mecanisme de control al cozilor face ca mcar o parte din trafic (n func ie de priorit i) s poatfolosi interfa a de ieire n condiii controlate.Dou mecanisme snt n general folosite ca referin n procesele de control al cozilor: Leaky Bucket (gleata gurit). Se refer la o situa ie similar cu a unei gle i cu o gaurla partea inferioar i cu umplerea pe la partea superioar. Gaura de ieire face ca debitul descurgere a apei s fie constant, n timp ce diametrul mult mai mare al gurii gle ii permiteacumularea cu debit variabil a apei n gleat. Atta vreme ct gleata nu se umple complet, esteposibil s se succead perioade n care gleata s se umple cu vitez mult mai mare dect se poategoli, i perioade n care se umple ncet sau de loc. Token Bucket (gleata cu jetoane). Se refer la o gleat care se umple i se golete peaceeai parte (pe sus). Umplerea gle ii se face ca mai nainte; n schimb, golirea gle ii se face pebaza unor jetoane: o aplica ie care dorete s extrag o anumit cantitate de ap dintr-o gleato poate face doar dac are un jeton. Jetoanele snt introduse n gleat de ctre controlorul deieire, n spe de ctre re ea, n func ie de diferite criterii. Aplica iile nu pot scoate o cantitate maimare de ap dect cantitatea de jetoane disponibile.

  • 3.Tipuri de coziFIFO (First In First Out) este cel mai simplu tip de coad; se bazeaz pe leaky bucket, nu seasigur nici o alt prioritate dect prioritatea primului venit. FQ (Fair Queueing) reprezint un mecanism n care traficul de intrare este mprit n fluxuri sau conversaii. mprirea se face automat, pe baza adresei S/D, portului i protocolului;Nici un flux nu poate monopoliza interfaa de ieire; fiecare flux va fi alocat unei cozi i cozile vor fi deservite pe rnd spre a avea acces la aceast interfa. WFQ (Weighted Fair Queueing) este similar cu FQ, dar se ine seama i de prioritateapachetului n func ie de un cmp special tipic, cmpul ToS (Type of Service) din header-ul IP.WFQ este varianta de FQ implicit pe ruterele Cisco. Pachetele cu prioritate mare primesc o pondere (weight) mai mare i au acces preferen ial la ieire. Aceasta se face pstrnd ordinea prin care snt deservite cozile, dar extrgnd mai multe pachete dintr-o coad atunci cnd vine rndul cozii i pachetele au pondere mai mare.La FQ i WFQ traficul este mprit automat n conversaii separate, fr ca administratorul s poat interveni. PQ (Priority Queueing) este un mecanism care i d administratorului un control foarte mare asupra traficului, prin punerea la dispozi ie a 4 cozi n care s mpart tipurile de trafic dorite.Cele 4 cozi au priorit i n ordine descresctoare (high, medium, normal i low). PQ funcioneaz pe principiul c ntotdeauna pachetele dintr-o coad de prioritate mai mare va trece naintea traficuluide prioritate mai mic, n mod integral (nu ponderat). Deci, dup ce un pachet iese prin interfaa de ieire, se examineaz pe rnd, n ordine, cozile, i urmtorul pachet este luat din coada de prioritateacea mai mare. CQ (Custom Queuing) este o variant mai soft de PQ, care permite stabilirea unor ordine stricte a prioritii fr a bloca complet traficul mai puin prioritar. Se aloc maxim 16 cozi; pentru fiecare coad se definete numrul de octei care vor fi extrai atunci cnd vine rndul cozii respective la ieire; cozile snt servite pe rnd (round-robin). Prin urmare, cozilor de prioritate mare li se vor configura un numr mai mare de octei dect celor de prioritate mai mic.

  • 4.Cozi software i hardware n toate cazurile precedente, coada (sau cozile) de prioritate mai mic pot ajunge s fie deservite prea rar i ca urmare, prin analogie cu modelul gleii (gurite sau cu jetoane), gleata se umple i d pe dinafar. n termeni de reea, la depirea spaiului de memorie alocat cozii,pachetele ulterioare vor fi eliminate (dropped). Acest lucru este detectat de ctre entitatea de protocol care emite pachetele respective; dac aceasta folosete un mecanism de control al fluxului(tipic, n cazul TCP, mecanismul sliding window), acest mecanism va determina scderea fluxului emis.

  • 5.Clasificarea pachetelor ToS i DSCP nc din 1981, n header-ul pachetelor IP s-a definit cmpul de 8 bii numit ToS (Type ofService), care permite diferenierea pachetelor. Acest cmp a fost modificat de ctre RFC1394. Tipurile de pachete se mpart dup 2 criterii:Criteriul Precedence (primii 3 bii), cu valori de la 000 (normal) pn la 111 (Network Control). n principiu, o valoare mai mare nseamn o prioritate mai mare i un tratament preferenial (mai puin susceptibile la eliminare n caz de congestie).Citeriul Service Profile (urmtorii 4 bii), cu urmtoarele valori: 0000=normal, 0001=minimize monetary cost, 0010=maximize reliability, 0100=maximize throughput, 1000=minimize delay. n principiu, nu se pot pune 2 bii simultan pe 1; Cele 2 criterii s-au folosit, istoric vorbind, din diferite motive, foarte puin, dei exist de la nceputurile Internetului, ceea ce a fcut ca acesta din urm s fie considerat n general best effort; majoritatea ruterelor au tratat traficul ca fiind de tipurile 000 respectiv 0000. n 1998, grupul de lucru Diffserv (de la Differentiated Services, definite de RFC2474, RFC2475) a propus nlocuirea cmpului ToS cu un cmp n mare parte incompatibil, numit DSCP (Diffserv Code Point), cu diferena de principiu c acest cmp nu va fi standard i constant pe ntreaga durat deviat a pachetului (ct timp acesta strbate Internetul), i este interpretat (i poate fi modificat) ninteriorul unui domeniu Diffserv. ntr-un astfel de domeniu, se definete conceptul de PHB (Per-4 Hop Behaviour) care se refer la modul n care este tratat un pachet ntr-un nod (hop) n func ie devaloarea DSCP.

  • Fig. 2 Cmpurile ToS i DSCP

  • Practic, ntr-un domeniu Diffserv se procedeaz astfel: se definesc un numr (redus) de clase deserviciu dorite; fiecrei clase i se aloc o valoare DSCP; se face clasificarea pachetelor n ruterele de frontier ale domeniului, n funcie de criteriile dorite, i li se aloc valoarea DSCP respectiv; ruterele din interiorul domeniului trateaz toate pachetele cu un anumit DSCP ntr-un anumit mod,adic un anumit PHB; aceasta poate nsemna o anumit prioritate ntr-o coad, o anumit band alocat prin shaping, etc. Structura DSCP presupune folosirea primilor 6 bii din octet; valoarea 000000 este rezervat pentrubest effort. n afara acesteia, snt 5 clase relativ standardizate: Clasa EF (Expedited Forwarding) este clasa de prioritate maxim; pachetele marcate EF ar trebui s beneficieze de un comportament similar unui circuit dedicat, adic delay ct mai mic i fr pierderi 4 clase AF (Assured Forwarding) notate AF1...AF4, cu AF4 avnd prioritatea cea mai mare. n cadrul fiecrei clase se definesc 3 sub-clase numite Gold, Silver i Bronze n total 12 categorii care difer prin parametrii cu care se configureaz mecanismele de queueing, policing i/sau shaping.Aadar trebuie reinut c Diffserv nu reprezint un set de valori standard, ci posibilitateaadministratorilor dintr-un anumit domeniu (de exemplu, reeaua unui ISP) de a mpri traficul n clase DSCP dup criterii proprii (adres S/D, protocol, port, etc) i de a-i asigura un tratament difereniat n noduri (PHB). DSCP este suportat att pe IPv4 ct i IPv6.

  • 6.Clasificarea automat a pachetelor - NBARO variant alternativ clasificrii manuale este clasificarea automat, pe baza recunoateriitipului pachetului prin examinarea sa de ctre ruter, numit NBAR (Network Based Application Recognition). NBAR este o funcie avansat, destinat doar pachetelor IP (nu i IPX, etc), care nu examineaz doar numrul de port, ci i o parte din coninutul pachetului n cazul pachetelor HTTP, se examineaz primii 400 de octei pentru a determina MIME-TYPE, adic tipul pachetelor multimedia cum ar fi .mp3, etc. Pe baza examinrii pachetului, se determin aplica ia i protocolulcare l folosete, inclusiv (n cazul anumitor protocoale) situaiile n care numrul portului este alocat dinamic. Fiecare versiune mai nou de IOS a adus recunoaterea unor aplicaii suplimentare cum ar fi SSH, Napster, eDonkey, Gnutella, Kazaa, Bit Torrent, Skype,etc. De notat c, dac o versiune IOS mai veche nu recunoate anumite protocoale mai noi, sepoate folosi un fiier PLDM (Packet Description Language Module) care specific stringuri de textdin interiorul pachetelor, ce snt asociate cu protocoalele. Fiierul se ncarc n flash-ul ruterului,fr a fi necesar schimbarea IOS-ului. NBAR nu poate funciona n cazul tunelelor sau a traficului criptat. n plus, folosirea NBAR poate consuma resurse semnificative de memorie i de procesor.

  • 7. Suportul Cisco IOS pentru QoSn general, strategiile de queuing, policing i shaping snt disponibile pe majoritatea imaginilor IOS pentru ruterele Cisco, inclusiv pe cele de tip low-end cum ar fi 800, 1700, 1800,2500, 2600 etc, deoarece se consider c aceste strategii trebuie implementate la periferia reelei, i nu n core unde se folosesc, tipic, rutere de tip high-end cum ar fi seriile 7000 etc, dar al cror rol este n principal s ruteze pachetele pe linkuri de mare vitez (backbone)Feature-set-ul numit generic IP BASIC suport o parte din strategii, cele considerate debaz. Un set complet, cuprinznd i cele mai avansate snt suportate n variantele IP PLUS. Feature-set-ul specific unei imagini IOS se poate determina folosind. Pe linkurile de vitez mai mic sau egal cu E1 (2.048Mbps) politica de queueing implicit este (ncepnd cu IOS 11.0) WFQ, n timp ce pe linkurile mai rapide este FIFO. Aceasta pentru c,dei mai ineficient, FIFO este mai rapid, i pe interfe ele de vitez mare se presupune c se dorete (implicit) s se consume ct mai pu in timp de procesare. NBAR i CAR snt suportate numai pe IOS care includ CEF Cisco Express Forwarding,un tip de forwarding rapid al pachetelor IP ntre interfe e, implementat din punct de vedere istoricn versiuni mai noi de IOS dect cel clasic. Practic, se creaz o tabel de forwarding rapidnumit FIB Forwarding Information Base pe baza tabelei de rutare, care nu mai este consultat lafiecare pachet. Folosirea CEF este activat prin comanda: router(config)# ip cef

  • care apare implicit n fiierul de configurare la IOS mai noi (i se poate da manual la IOS mai vechicare l suport). Pe seria 7000, CEF este activat implicit. De notat c ip cef este o comandcare, spre deosebire de comenzile globale folosite pn acum (gen ip classless, ipsubnet-zero, ip routing etc.) modific modul intern de func ionare al ruterului, nuactiveaz/configureaz un serviciu. Pe seriile 2600, 3600, 7100, 7200 NBAR este disponibil de la IOS 12.1(5)T i pe 1700 de la12.2(2)T. n general T semnific Technology Release i marcheaz apariia unei funcionaliti noi.

  • Generarea traficului de test ntre PC-uri : Fig.3 Topologia folosit