Sunteți pe pagina 1din 99

Pgin 1

PRIECT DE DIPLM Cmunicre prin VIP

Pgin 2 Scpul lucrrii................................................................................................................................3 I Intrducere n VIP.....................................................................................................................4


1 Prezentre generl________________________________________________________________4 2. Trnsprtul dtelr________________________________________________________________7
...............................................................................................................................................................................8 2.1 Prblemele trnsprtului dtelr n timp rel..................................................................................................8 2.1.1 Pierdere pchetelr................................................................................................................................9

Pgin 3

Scpul lucrrii
n cest lucrre se v fce intrducere n telefni prin Internet prezentndu-se n prte teretic mdul de funcinre cestei tehnlgi mpreun cu vntjele cestei i dezvntjele f de telefni clsic pe cre cu tii cuntem. mre tenie se v crd prtclului de semnlizre SIP mpreun cu prtclele dicente. Prim Prte lucrrii reprezint prte teretic cestei lucrri. Prezint mtivele pentru cre se flsete cest tehnlgie, vntjele i dezvntjele VIP-ului, prblemele cre pr n trnsprtul vcii, mdul cum se relizez semnlizre flsindu-se prtclul SIP i crcteristicile vcii trnsprtte. n du prte lucrrii se prezint plicie sftwre ce cmbin cnvesiile de tip text (cht) cu cnversiile de tip vce (VIP). Sunt descrise crcteristicile prgrmului, mdul de funcinre i mdul de utilizre.

Pgin 4

I Intrducere n VIP
1 Prezentre generl
Telefni prin Internet definit c i cmunici prin vce n timp rel prin reeu cu cmutie de pchete nu mi este de mult nutte. cest tehnlgie dtez nc de pe vreme zilelr de nceput le Internetului. Priectul Netwrk Secure Cmmunictins l geniei RP (dvnced Reserch Prjects gency) implement infrstructur pentru cmunicre prin vce n timp rel nc din decembrie 1973. Prtclul ce st l bz implementrii, Netwrk Vice Prtcl, ve c scp principl s demnstreze c este psibil cnvrbire ntre du persne prin vce n timp rel, de bun clitte, sigur i cu bnd flsit mic. Cncluzi priectului fst c trnsmisi mpchett vcii prezint vntje ecnmice i pte fi relizt [16]. Ttui u fst necesri prpe 20 de ni pentru c cest frm de trnsmisie s fie precit de publicul lrg. Echipmentele specilizte flsite tunci nu mi sunt necesre: un clcultr persnl re n md binuit plc de sunet, un micrfn, bxe. Pe lng ceste mi este nevie i de un sftwre priectt pentru trnsmisi i recepi vcii prin ree cre cum se gsete frte ur. vnd n vedere rspndire clcultrelr i cnexiunilr l ree de dte pe scr mndil, telefni peste reelele de pchete este psibil pentru un numr frte mre de utiliztri. L prim vedere trnsmisi vcii prin reelele de dte pre idee prst. Dej exist ree telefnic ce se bzez pe cmutre de circuite i cre se extinde peste cele pte cntinente i frmez ce mi mre ree cnstruit vredt de m. n plus reele de dte sunt i neptrivite pentru trnsmisi vcii. cest este plicie n timp rel i necesit privilegii specile din prte reelei derece n prezent cele mi multe reele nu sigur servicii de timp rel. Ttui VIP gsit clieni derece prpune l mmentul priiei trife ce nu se cmpru cu cele prcticte de furnizrii de telefnie clsic pentru pelurile l distn. Ppulritte pelurilr prpe grtuite l distn dvedit c i clitte prst este stisfctre dc preul este cnvenbil. stfel mtt-ul ntr- pi cmpetitiv i dezvltt trei lucruri sunt imprtnte: preul, preul i preul se deverete nc dt. n viitr trifele pentru pelurile l distn se vr micr nu din cuz VIP, ci din cuz cmpetiiei din ce n ce mi cerbe ntre furnizrii de servicii. vntjul din punctul de vedere l trifelr se v diminu, dr experii firm c cest tehnlgie re un viitr strlucitr. Dtrit multiplexrilr sttistice i metdelr vnste de cmpresie, VIP v fi prezent n cntinure trife mi mici dect trnsmisi vcii prin reelele bzte pe cmutre circuitelr. lt vntj ce impune cest tehnlgie pe pi l reprezint suprtul pentru cnferine ce permite relizre unr cnversii ntre mi multe persne ntr-un md simplu i eficient. Din punctul de vedere l utiliztrului, principlul vntj l telefniei prin Internet l reprezint schem de trifre. ici spre desebire de telefni clsic nu se ine cnt de distn dintre pelt i pelnt, stfel pentru distne medii i mri telefni prin Internet este mi rentbil dect ce trdiinl. Dr pe lng preurile mi reduse, clitte cnvrbirii trebuie s

Pgin 5 fie cel puin l ceei nivel cu ce ferit de telefni clsic i n plus s se sigure i lte serviciile specile. Trnsmisi vcii i dtelr pe reeu cu cmutie de pchete reprezint flsire mi eficient reelei dect n czul telefniei trdiinle unde prte din resursele reelei se pune l dispzii utiliztrului pe tt prcursul cnvrbirii chir dc cest vrbete su nu. Telefni clsic fer stzi pe lng cnvrbiri de clitte nlt i servicii n plus cum r fi cnvrbiri l numere specile pentru cre nu se txez, trnsmitere l lte drese pelurilr primite, restricinre unr peluri, peluri cu tx invers i ltele. prte din ceste servicii r trebui suprtte i de telefni prin Internet pentru pute cncur cu devrt cu telefni clsic. Utiliztrii de telefnie prin Internet pt prfit i de ntur sftwre cestei. Sluiile sftwre pt fi ur extinse i integrte cu lte servicii i plicii cum r fi whitebrd, clendr electrnic su internet prpriu-zis. Dezvltre de servicii ni necesit mult mi puine investiii n timp i bni dect dezvltre de servicii pentru reeu cu cmutie de circuite. plicie pentru telefni prin Internet pte fi trnsmisi n timp rel l fcsimilelr. Clitte trnsmisiilr fxurilr sunt n md tipic fectte de ntrzierile din ree, cmptibilitte minilr i clitte semnlului nlgic. Pentru trimite fxuri prin ree cu cmutie de pchete, interf trebuie s frmeze pchete din dtele ce trebuiesc trimise, s se cupe de cnversi prtclelr de semnlizre i cntrl i s sigure livrre cmplet dtelr scnte n rdine crect. Pentru cest plicie este i mi critic fenmenul de pierdere pchetelr dect pentru pliciile de vce. Multe lte plicii pt implement VIP. De exemplu, mesjele snre pt fi pregtite utiliznd un telefn i pi livrte unei csue ptle ce pte cnine i vce i dte flsind Internetul su serviciile intrnet. Dcumentele ce cnin nte udi, fiierele multimedi, etc. pt ur junge stndrde n pliciile tip ffice n viitrul prprit. Principlele justificri pentru dezvltre VIP pt fi cncentrte dup cum urmez: Pre redus. Cum s- menint mi sus, sunt vntje rele pentru cnvrbiri pe distne mri, lucru de mre imprtn pentru cmpniile ce u legturi cu lte ri. Simplificre. ree vce/dte permite stndrdizre mi ur i reduce necesrul de echipment. plicii vnste. Beneficiile pe termen lung le VIP includ i suprtul pentru pliciile multimedi i cu multiple ntrebuinri, cu cre sistemul telefnic ctul nu pte cncur. Cretere pieei VIP fst spectculs n ultimii ni i se crede c cest tendin v cntinu. Ttui, exist numerse specte ce trebuiesc mbuntite de ctre dezvlttrii de echipmente VIP cum r fi clitte vcii, ntrziere i pierdere pchetelr dr i cntrlul pelurilr i mngementul sistemelr [13]. Pentru intercnectre cu celellte reele de telefnie este flsit un gtewy cre n rmn pte fi trdus c cnvertr de intercnectre su mi simplu prt. n cntinure m pstrt denumire de gtewy. ici este lcul unde semnlul de vce este pchetizt su unde pchetele de vce sunt trnsfrmte n semnl de vce. n czul unui pel telefn clsic telefn clsic prin reeu IP, un gtewy este un server l cre utiliztrul sun cum r sun l server-ul unui furnizr de Internet de l mdemul clcultrului. Server-ul i v cere utiliztrului s intrduc infrmiile privitre l cntul flsit i numrul l cre v sun, pi v pchetiz semnlul vcl, fiecre pchet vnd n ntet infrmiile necesre cre s-l trimit spre un lt gtewy unde prcesul v fi inverst i pelul v fi trimis spre un telefn binuit. Pe de lt prte ultimul gtewy cre este lclizt ct mi prpe de centrl peltului, frmez

Pgin 6 numrul telefnului pelt i cnd cnexiune fst stbilit, ncepe s trimit semnlul de vce l pelntului ntr-un sens i n celllt sens vce pchetizt peltului. Gtewy-urile permit c pelurile de lung distn su cele interninle s pr sistemelr de txre le pertrilr PSTN c i cum r fi peluri lcle. Nu tte server-ele iniile trimit pelurile PSTN spre Internet i nu tte server-ele finle primesc peluri din Internet. Gtewy-urile pt fi cnectte l rice fel de ree IP, i n czul furnizrilr de telefnie IP cmercili ce ree nu este Internetul public. Muli furnizri, ttui, Internetul public este flsit pentru prte su pentru tt prcesul de rutre pchetelr de vce i cest re implicii n clitte pelului. dt intrte pe Internet, pchetele sunt trtte l fel cu celellte pchete indiferent dc cnin text, grfice su vide. tunci cnd jung l gtewy-ul finl pchetele sunt prceste i trimise spre reeu PSTN. pertrii de gtewy-uri prefer s plseze echipmentele n mrile centre metrplitne, unde pt fi cntcti cei mi muli bni PSTN printr-un pel telefnic lcl. Dc un server trebuie s flsesc un pel de distn mre pentru stbili pelul telefnic, vntjele ecnmice rele se pierd. pertrii de gtewy-uri finle trebuie s pltesc pentru liniile de cces n reeu PSTN, cre sunt n generl celei linii cu cele dministrte de furnizrii de Internet, stfel nct utiliztrii s se pt cnect prin cnexiuni dil-up l mbele servicii. Utiliztrii de telefnie IP cre sunt cnecti n permnen l ree lcl nu pelez l un gtewy, cel puin nu n prim fz. n schimb reeu lr este cnectt mereu l unul su mi multe echipmente de cest tip. n reelele de telefnie IP ce in de cmpnie su de un grup restrns pelurile r pute s nu trec nicidt printr-un gtewy. Scenriile de flsire telefniei prin reelele de pchete sunt clsificte dup tipul terminlelr ce se fl l cpetele unui pel. Derece l fiecre cpt l firului pte fi un telefn binuit su un terminl de dte, exist ptru clse generle. n clsificre ce v urm breviere PC se refer l rice terminl de dte cpbil s trnsmit vce prin ree (clcultre persnle, telefne IP, etc.). Scenriile sunt: Terminlul pelntului: PC, terminlul peltului: PC. cest situie este trctiv pentru utiliztrii privi cre u dej cnexiune l Internet i un clcultr cpbil s nregistreze i s rede vce. Pchetul sftwre necesr este grtis. cest scenriu pur IP v benefici de vntjele integrrii serviciului de telefnie cu lte servicii Internet, c WWW, mesgerie instntnee, e-mil, etc. . Pentru pelnt cstul cnvrbirii l reprezint cstul cnectrii l Internet, cstul chiziinrii pchetului sftwre cre debicei este zer, plus csturile ferente deinerii i ntreinerii hrdwre-lui necesr. Terminlul pelntului: PC, terminlul peltului: telefn legt l un din reelele nnISDN, ISDN, GSM, . cest scenriu reprezint extensie scenriului precedent n cre cei cre flsesc un PC c telefn pt vrbi i cu utiliztrii reelei PSTN. Este flsit un gtewy ce cnvertete pelul prin Internet ntr-un pel PSTN. cest gtewy trebuie s fie ct mi prpe de reedin peltului pentru c s se minimizeze csturile cnexiunii gtewy-pelnt. cest scenriu este cmercilizt de pertrii de gtewy-uri. Pentru pelnt csturile iniierii cnvrbirii i meninerii cestei sunt sum cstului ccesului l Internet, cstului deinerii sftwre-lui cre este de bicei zer, cstului cerut de pertrul gtewy-ului flsit ce depinde n mre msur de cstul cnexiunii gtewy-utiliztr pelt i cstului deineri i ntreineri hrdwre-lui necesr. Terminlul pelntului: telefn ( nn-ISDN, ISDN, GSM), terminlul peltului: telefn ( nn-ISDN, ISDN, GSM). cest scenriu este trctiv pentru utiliztrii cre vr s

Pgin 7 ecnmisesc bni n czul cnvrbirilr l mre distn i nu u su nu dresc s flsesc un PC. De exemplu, utiliztri de telefne mbile prefer s prte dr prtul prpiu-zis fr lte prte n plus. pelul trebuie s trec prin du gtewyuri: PSTN-Internet i Internet-PSTN. cest sluie este cmercilizt de pertrii de gtewy-uri. Csturile se cmpun din trifele percepute de cele du gtewy-uri (triful perceput de gtewy-ul de destinie este prprinl cu cstul cnexiunii gtewyutiliztr pelt) i din cstul cnexiunii utiliztr pelnt-gtewy lcl. Terminlul pelntului: telefn ( nn-ISDN, ISDN, GSM), terminlul peltului: PC. cest frm de pel este flsitre utiliztrilr ce vr s vrbesc cu utiliztri de Internet flsind un telefn nrml. Csturile cnin triful gtewy-ului flsit i cstul pelului pn l cest [12]. Indiferent de ce se fl ntre interlcutri, cnversie telefnic ntre du persne impune c fiecre s ib un micrfn i un difuzr. n telefnul trdiinl, micrfnul i difuzrul sunt incluse n receptr. n telefnul nlgic (pe cre ti l cuntem) semnlul vcl prdus de micrfn este trimis direct printr-un fir ctre centrl lcl. Dc se flsete telefni prin Internet, este necesr i ici flsire unui micrfn i unui difuzr. ceste pt fi micrfnul i bxele livrte mpreun cu clcultrul persnl su pt fi incluse ntr- csc ce include elemente de emisie i recepie. Dr ceste pt prveni i de l un telefn nlgic cre este legt l centrl cre suprt telefni prin Internet su de l un telefn cnectt direct l Internet cre cunte tehnicile VIP. Indiferent de prtul flsit, mecnismul unui pel telefnic prin Internet este celi. Deci ce se ntmpl tunci cnd drim s iniiem un pel? Mi nti, dup ce m tstt un numr de telefn su m ccest un link cninnd numele interlcutrului drit, este necesr s prnesc prcesul de semnlizre pentru determin stre terminlului pelt dispnibil su cupt i s stbilesc cnexiune. pi, cnd cnversi nceput, semnlul nlgic prdus de micrfn trebuie cdt ntr-un frmt digitl crespunztr trnsmisiei prin ree cu cmutie de pchete. Reeu nsi trebuie s sigure c dtele prduse de cnversi n timp rel este trnsprtt peste mediul vut l dispziie ntr- mnier cre prduce clitte cceptbil vcii. n finl, r pute fi necesr c fluxul de dte ce reprezint vce utiliztrului s fie cnvertit de un gtewy ntr-un lt frmt ri din cuz interperbilitii cu lt schem multimedi, ri destini pelului se fl ntr- ree telefnic trdiinl [11] . innd cnt de cee ce s- scris n prgrful de mi sus se pte emite idee c, n mre, necesrul tehnlgic l unei sluii VIP se pte mpri n ptru ctegrii semnlizre prezentt pe lrg n subcpitlul 3, cdre vce i cdecurile flsite sunt prezentte n subcpitlul 4, trnsprt prezentt n cntinure i cntrlul gtewy-ului nu este prezentt n cest lucrre, mnunte putndu-se citi n crte IP telephny [2] .

2. Trnsprtul dtelr
Semnlul nlgic primit de l micrfnul flsit de utiliztr este entint dup numii prmetri ccepti de ti interlcutrii n fz premergtre pelului prpiu-zis. n urm cestui prces se bin dtele ce trebuiesc trimise l prtele ce prticip l cest cnversie. ninte s prezint prtclele flsite pentru trnsferul infrmiei vi menin ctev din prblemele cre trebuie rezlvte pentru ve clitte bun.

Pgin 8

2.1 Prblemele trnsprtului dtelr n timp rel


Cel mi rspndit sistem telefnic este stzi cel nlgic. cest sistem flsete mduli semnlelr electrice pe un fir pentru trnsprt vce. Dei este tehnlgie veche, trnsmisi nlgic re multe vntje: este simpl i este crcterizt de ntrziere trnsmisiei frte mic derece semnlul se prpg pe fir prpe cu vitez luminii. Este de semene i frte ieftin tunci cnd sunt puini utiliztri cre vrbesc n celi timp, i cnd sunt l mic distn unii f de lii. Dr i ce mi simpl tehnlgie nlgic necesit pereche de fire pentru fiecre cnversie, fpt ce devine rpid neprctic i frte cstisitr. prim mbuntire cestei tehnlgii fst s se multiplexeze mi multe cnversii pe celi fir, flsind diferite frecvene de trnsprt pentru fiecre semnl. Dr i cest versiune re deficiene: dc nu se flsesc centrle (switchbrds) mnule, cmuti utmt necesit numerse mecnisme electrmecnice cre sunt cstisitre de cumprt i de ntreinut; zgmtul se dug l fiecre etp trnsmisiei din cuz c nu se pte s se desebesc semnlul riginl de zgmt i stfel eliminre zgmtului este prpe impsibil. Pentru tte ceste mtive, multe ri flsesc ree telefnic digitl. n cele mi multe czuri lini bntului rmne nlgic, dr semnlul este cnvertit l un flux digitl n prim centrl. De bicei, cest semnl re rt de 64kb/s (un entin de 8 bii l fiecre 125s). cum multe cnle de vce pt fi multiplexte pe ceei linie de trnsmisiune flsind tehnlgie numit multiplexre cu diviziune n timp (TDM). n cest tehnlgie, fluxul digitl ce reprezint singur cnversie este mprit n blcuri (de bicei n ctei, denumite i entine), i blcuri de l mi multe cnversii sunt ntreesute ntr- mnier rund-rbin n slturile temprle le liniei de trnsmisiune. Cu cest tehnlgie digitl, zgmtul cre se mestec cu semnlul riginl nu influeez clitte cmuniciei derece semnlele digitle pt fi refcute. Mi mult, multiplexre cu diviziune n timp fce psibil cmuti digitl. Cmuttrul trebuie s cpieze cninutul unui slt temprl din trnsmisi de intrre n lt slt temprl din trnsmisi de ieire. De cee funci de cmutre pte fi relizt flsind clcultre. Ttui mic ntrziere este intrdus de fiecre cmuttr derece pentru fiecre cnversie un slt temprl este dispnibil numi l fiecre T micrsecunde, i n unele czuri r pute fi necesr s se tepte pn l T micrsecunde pentru cpi cninutul unui slt n ltul. Tinnd cnt c T este 125s n cele mi multe reele digitle, cest timp este neglijbil i ntrziere depinde n principl de timpul de prpgre. Numi n czul n cre drete s impun un punct de vedere, un utiliztr v vrbi n md nrml n numi jumtte din timpul ttl l cnversiei. i cum ninte de vrbi trebuie s se gndesc puin v utiliz numi 35% din timpul unei cnversii nrmle. Dc, cest utiliztr, r pute s pese pe un butn de fiecre dt cnd re cev de spus, el v trimite spre ree infrmii numi tunci cnd vrbete nu i cnd tce. Cum vm vede mi trziu, cele mi multe tehnici flsite pentru trnsfrm vce n bii de infrmie (numite cdecuri) u cum psibilitte s detecteze peridele de linite, tunci cnd utiliztrul nu vrbete. Cu cest metd, cunscut c deteci ctiviti vcii (vice ctivity detectin), nlc s se trnsmit infrmii, vce su linite l fiecre 125 micrsecunde, cum se fce stzi, se pte trnsmite infrmii dr tunci cnd trebuie, n md sincrn.

Pgin 9 Cnd este vrb de multiplexre mi multr cnversii pe ceii linie de trnsmisiune, n lc s se cupe bnd tt timpul, cest bnd pte fi flsit de ltcinev tunci cnd un numit utiliztr tce. cest md de multiplexre este cunscut c multiplexre dinmic (su sttistic). Principlul vntj l cestei multiplexri este c permite c bnd ttl unei linii pte fi flsit mult mi eficient, n specil tunci cnd sunt multe cnversii pe ceii linie. Dr multiplexre dinmic intrduce incertitudine n ree. Tcmi m spus c n czul TDM, ntrziere de pn l T micrsecunde pte fi intrdus l fiecre cmuttr; cest ntrziere este cnstnt pe prcursul ntregii cnversii. Situi este ttl diferit l multiplexre dinmic: dc lini de trnsmisiune este gl tunci cnd trebuie trimise dte prin ree, ceste vr trece imedit. Dc, pe de lt prte, lini este cupt, dtele trebuie s tepte pn cnd v exist psibilitte de le trimite. cest ntrziere vribil se numete jitter i trebuie crectt de prte ce recepinez dtele. ltfel, dc bucile de dte sunt redte imedit cum sunt primite, ce ce spus trnsmitrul mesjului pte devenii inteligibil. Urmtre generie de telefnie v utiliz prbbil multiplexre dinmic i v mix vce i dte pe ceei linie de trnsmisiune. Mi multe tehnlgi sunt bune cndidte pentru cest, c de exemplu vce peste Frme Rely, vce peste TM i bineneles vce peste IP. Se crede c vce peste IP este ce mi flexibil sluie derece nu necesit stbilire de cnle virtule ntre dispzitivele cre vr cmunic. cest este sclbil mi mult dect TM su Frme Rely n termeni de cnectivitte [2]. VIP se cnfrunt cu destul de multe prbleme tehnice; derece reelele IP existente nu u fst priectte s servesc pliciile n timp rel dic plicii cre u limite impuse privind timpul de rspuns. Cerinele pentru vce sunt dure: pentru cmunicie n timp rel de clitte bun este necesr ntrziere mxim dus-ntrs de 200 300 ms dic pe un sens ntrziere nu trebuie s depesc 100 150 ms. Pentru cmpens jitterul este flsit l recepie un buffer; lungime cestui buffer influenez i el ntrziere dus-ntrs. De cee jitterul trebuie s fie mic stfel nct redre sunetului l recepie s rmn lin. Pierdere pchetelr trebuie i e s fie mic, derece fluxul de vce este sensibil l pierdere de pchete.( Pierdere unr pchete duce l pierdere unr buci din semnlul primit de l micrfnului trnsmitrului i stfel redre l recepie se fce cu ntreruperi.) Din pcte pierdere de pchete n Internet este crelt derece pierderile pr n timpul cngestiilr i ceste pierderi cntinue de pchete reduc substnil inteligibilitte vcii. Vi fce n cntinure prezentre mi detlit principlelr prbleme: pierdere pchetelr; ntrzierile; jitterul.

2.1.1 Pierdere pchetelr


Este un lucru cmun n reelele cu cmutie de pchete, derece pe msur ce rutele devin cngestinte, czile de teptre n elementele de rutre devin nencptre i nu v mi fi lc pentru lte pchete i ceste vr fi runcte. Pierdere de pchete pte duce l degrdre clitii vcii. Fiecre pchet cnine ntre 20 80ms, n funcie de cdecul flsit, din semnlul cptt de micrfn. Cnd sunt dr ctev pchete pierdute, creierul umn este cpbil s recnstruisc znele pierdute, dr dc numrul pchetelr este mre vce redt este

Pgin 10 neinteligibil. n cntinure sunt prezentte tehnicile prin cre se pte rezlv prblem pierderii pchetelr: mbuntire reelei. Derece fenmenul de runcre pchetelr este strns legt de bnd insuficient cnexiunilr i de vitez de prcesre elementelr de rutre, mbuntire reelei pte fi sluie pentru cest prblem. nlcuire cu puze. L destinie cninutul pchetelr este redt, prnd prbleme tunci cnd pchetele crr infrmie trebui redt nu mi ssesc fiind ntrzite su pierdute. nlcuire cu puze rezlv cest prblem prin redre de linite n lcul infrmiei din pchetele pierdute. Din pcte, dc rt de pierdere pchetelr este pre mre su pchetele sunt pre mri (dic cnin frgmente mri de semnlul cptt) n semnlul redt pr frnturi din semnlul riginl, lucru ce deterirez semnifictiv clitte vcii. nlcuire cu zgmt. cest metd nlcuiete znele fr infrmie cu zgmt. Studiile rt c se bin perfrmne mi bune dect metd precedent. Repetre pchetelr. Redre infrmiei din ultimul pchet recepint crect, tunci cnd un pchet lipsete este lt metd de recuper din pgubele prduse de pierdere de pchete. Interplre pchetelr. Flsete crcteristicile vcii din pchetele nvecinte pentru estim infrmi udi ce s- pierdut. Sunt ctev tehnici de interplre i studiile n cest privin u rtt c cest metd pte ve perfrmne mi bune dect cele meninte mi sus. ntreesre entinelr udi pe mi multe pchete(frme interleving). n reelele cu cmutie de pchete fenmenul de pierdere pchetelr este crelt i stfel nu numi un pchet este pierdut n czul cngestiei ci mi multe pchete cnsecutive. cest fpt degrdez clitte vcii cnsiderbil. ntreesere entinelr udi pe mi multe pchete pte reduce cest efect. Dezvntjul multr entine pentru le ntreese. Trnsmisie redundnt. Infrmi dintr-un pchet este n md redundnt trnsmis n pchete cnsecutive. n czul n cre pchetul riginl este pierdut, cest pte fi refcut din pchetele urmtre.

2.1.2 ntrziere pchetelr


ntrzierile de lung durt prvc intrre prticipnilr l cnversie ntr-un md de cmunicie hlf-duplex, dic unul dintre ei vrbete i ceilli tept un timp pentru c s fie siguri c vrbitrul termint ce re de zis. Dc timpul de teptre este les n md ernt, pt exist di su mi muli vrbitri n celi timp. ntrzierile de lung durt este un efect pgubs i din cuz ecului cre fce c vrbitrul s i ud prpri s vce dup un timp dup ce termint de vrbit. Cerinele excte n privin ntrzieri nu pt fi dte din cuz c este un fenmen subiectiv, dr exist numite limite. Se spune c redre vcii interlcutrului cu 150ms declt f de mmentul cnd vrbete, este ceptbil pentru cele mi multe plicii. Pe msur ce ntrziere crete interlcutrii ncep s vrbesc n celi timp su se cnfrunt cu un ecu dernjnt, dic clitte cnvrbirii este frte sczut. Ttui, ntrzieri ntre 150 i 400ms sunt cceptte pentru cnvrbiri ntre persne flte l mre distn. ntrziere este un din cele mi mri prbleme cu cre se cnfrunt telefni prin Internet. n reelele cu cmutie de pchete fctrii cuztri sunt: ntrziere prdus de cdecuri. Funci principl unui cdec este de digitliz semnlul vcl nlg, dr i de- reliz cmpresie pentru reduce necesrul

Pgin 11 de bnd. Rtele mri de cmpresie pt fi binute cu jutrul unr lgritmi ce u c dezvntj timpul de prcesre destul de mre. ntrziere este cmpus din timpul necesr prelucrrii entinelr ce intr ntr-un singur pchet i din timpul necesr bservrii entinelr urmtre pentru explt numite crelii ce r pute pre. Timpul necesr decdrii este de bicei jumte din timpul necesr cdrii deci l recepie ntrziere prdus este mi mic dect ce prdus l trnsmisie. ntrziere din cuz trnsmisiei. Reprezint timpul necesr pentru pune un pchet pe lini de trnsmisiune i este determint de vitez liniei i de mrime pchetului. ntrzierile prduse de czile de teptre. cest timp pierdut reprezint prblem ce mi imprtnt intrdus de reelele cu cmutie de pchete. Depinde de numrul de pchete ce tept n cd i vriz enrm de l un pchet l ltul. ntrziere prdus de czile de teptre este principl prblem pentru pliciile n timp rel derece este surs pentru jitter. ntrzierile cuzte de prpgre. Reprezint timpul necesr pentru c semnlul s jung de l un punct l reelei l celllt i este determint de vitez lumini. cest timp devine imprtnt dc distnele ntre puncte este mre cum r fi czut legturilr prin stelit.

2.1.3 Jitterul
Jitterul reprezint vrii durtei de timp ntre pchetele primite l recepie. Mi pte fi definit c vrii ntrzierilr l cre sunt supuse pchetelr. cest fenmen este prblem imprtnt ce trebuie depit n cmuniciile prin vce. Jitterul pre mi les din cuz ntrzierilr prduse de czile de teptre, dr pte prveni si din fptul c pchetele pt prcurge trsee diferite. Pentru -l cmpens, l recepie, se flsete un buffer n cre sunt inute primele pchetele ssite pentru durt de timp definit ninte c infrmi cninut s fie redt. ntrziere prdus de cest buffer se dug l ntrziere ttl deci pentru ve cmunicie de clitte trebuie s vem de semene un jitter mic. n md idel, dimensiune buffer-ului este les n md dinmic n cncrdn cu situi reelei. De bicei dimensiune buffer-ului este de 50 100ms. n figur I.1 este prezentt situie ce s-r pute ntmpl din cuz jitter-ului. frz rstit nrml r pute junge l celllt cpt cu ntreruperi.

Figur I.1 Jitter-ul

Pgin 12

2.2 RTP (RFC 1889)


m vzut c tunci cnd ree cu multiplexre dinmic este flsit pentru trnsmisi dtelr n timp rel, c de exemplu vce, jitterul trebuie lut n cnsiderie de ctre receptr. Ruterele sunt exemple bune pentru dispzitive ce relizez multiplexre dinmic i de cee n tehnlgiile vce i vide peste IP trebuie s fie lut n cnsiderre prblemele cuzte de jitter. Grupul pentru trnsprtul infrmiilr udi i vide din cdrul IETF nceput lucrul l un prtcl de trnsprt n timp rel n 1993. Scpul cestui prtcl este de feri servicii cerute de cnferinele multimedi interctive, c sincrnizre redrii infrmiilr primite, demultiplexre, identificre tipului de mediu flsit pentru trnsmisie i identificre prticipnilr ctivi. Ttui, nu numi pliciile pentru cnferine multimedi pt benefici de RTP, ci i stcre de dte cntinue, distribui interctiv de dte cu frmte multimedi, simulri relizte n prlel pe mi multe terminle i pliciile de msur i cntrl pt prfit de vntjele duse de RTP. Scpul priectrii RTP fst binere unui prtcl cu urmtrele crcteristici: Flexibil. RTP nu trebuie s fie limitt numi pentru cnferine udi i vide; Extensibil. RTP trebuie s permit implementre de ni servicii; Independent f de prtclele inferire. RTP r trebui s lucreze cu UDP, TCP, TM i ltele; Cpbil s cmbine mi multe fluxuri medi ntr-unul singur i s-l trnsmit cu lt tip de cdre; Eficient din punct de vedere l benzii. Dimensiune ntetului n czul pchetelr mici de vce pte fi chir ct dimensiune infrmiilr prpriu-zise. De exemplu pentru pchetele ce cnin 65ms de vce cdt de prcedur ce fer 4800bit/s dimensiune infrmiei trnsprtte este 39 de ctei. Ipv4 intrduce 20 de ctei n ntet, UDP[3] nc 8 ctei i nivelul de trnsprt li cel puin 8 ctei. Cu ntetul RTP de 4 8 ctei dimensiune ntetului ttl pte junge l 40 44 de ctei. cest fpt pte st n cle flsirii RTP pe cnexiuni de mic vitez. Interninl. Prtclul trebuie s includ cdri de tipul lege , lege dr i seturi de crctere nn SCII. Eficient din punct de vedere l prcesrii. i cele mi mri intervle de timp cninute n pchete creez rt de 40 de pchete pe secund pentru un singur cnl de vce. L cest vlre prcesre pchetelr pte deveni prblem. Implementbil imedit. Prtclul pte s nu ib vi ndelungt i de cee trebuie s fie psibil s fie implementt vnd l dispziie sftwre-ul i hrdwre-ul curent. Prtclul pentru trnsprtul n timp rel (RTP) fst priectt pentru permite receptrelr cmpensre prblemelr cuzte de jitter i ssire ntr- lt rdine pchetelr dect ce n cre u fst trnsmise. RTP pte fi flsit pentru rice flux de dte n timp rel, de exemplu pentru vce i pentru vide. RTP include mdlitte de identific pchetele IP ce trnsprt infrmii iscrne prin urmtrele infrmi incluse n ntet: Infrmii referitre l tipul dtelr trnsprtte; Infrmii referitre l tipul l cre u fst emise (timestmps);

Pgin 13 Numere de secven. Un lt prtcl, RTCP, ce este n md binuit flsit mpreun cu RTP, permite jungere l trnsmitr rprtelr privind clitte trnsmisiei (mrime jitterului, numrul de pchete pierdute, etc.) i pte trnsprt ctev infrmii privind identitte prticipnilr. RTP i RTCP nu u nici- influen supr cmprtrii reelei IP; ceste nu cntrlez n nici-un fel clitte seviciului. Reeu pte elimin, ntrzi pchetele RTP su schimb rdine cestr, c rice pchet IP. RTP i RTCP dr permit receptrelr s ib funcinre crect chir dc reeu prduce jitter prin flsire de buffere i s dein mi multe infrmii despre ree pentru c msurile de crectre crespunztre s fie plicte (redundn, cdecuri cu rt sczut, etc.). ceste du prtcle sunt priectte de pute fi flsite peste rice prtcl de trnsprt. Dr de bicei se flsesc peste UDP derece schem de retrnsmisi TCP nu este dptt pentru dtele ce trebuiesc trnsprtte cu ntrzieri frte mici, cum sunt cmuniciile interctive. n cest cz RTP este scit n md trdiinl unui prt UDP pr ir RTCP urmtrului prt UDP impr. cum se pte citi din RFC-ul 1889, RTP este un prtcl ce sigur servicii de trnsprt cpt l cpt l unr dte cu crcteristici de timp rel, cum r fi udi su vide fcnd prte dintr- cmunicie interctiv. Printre ceste servicii sunt incluse indentificre tipului dtelr trnsprtte, numertre pchetelr, tmpilre cu infrmii de timp pchetelr i mnitrizre livrrii. pliciile flsesc n md binuit RTP peste UDP pentru benefici de serviciile sle de multiplexre i de verificre crectitudini infrmiilr (prin sum de verificre). RTP permite i trnsferul dtelr ctre destinii multiple flsind distribui de tip multicst dc cest este furnizt de ctre reeu flsit. mintesc din nu c cest prtcl nu furnizez nici un mecnism cre s sigure trnsprtul l timp l dtelr su lte grnii de clitte serviciilr, dr se bzez pe serviciile nivelurilr inferire s sigure ceste grnii. cest nu grntez trnsprtul su trnsprtul n secven i nici nu presupune c reeu flsit este sigur i livrez pchetele n secven n cre u fst trnsmise. Numerele de secven incluse n RTP permit receptrului s recnstruisc secven n cre trnsmis trnsmitrul. cest prtcl este de multe ri integrt n prcesele desfurte de ctre plicie dect s fie implementt c un strt seprt. n timpul creri prtclului nu s-u specifict tte elementele pentru se permite mdificrile. Pe lng RTP implementre cmplet pentru numit plicie necesit specificre mdului cum un tip de dte este trnsprtt de cest prtcl dr i mdul cum se identific cest tip de dte i cum se cdez cest. Vi prezent n cntinure ctev utilizri imprtnte le cmpurilr RTP: - numrul de secven i infrmi de timp. Fiecre pchet RTP cnine un numr de secven i infrmie de timp. n funcie de plicie, ceste pt fi flsite n mi multe mduri. plicie vide, de exemplu, pte imedit deduce din infrmi de timp pentru ce zn din ecrn este infrmi dintr-un numit pchet. Chir dc nu primit pchetele cre eru ninte cestui din cuz pierderilr su ntrzierilr, plici pte flsi pchetul pentru cnstrui imgine ce descrie. plicie udi nu pte flsi cest infrmie n cest md, derece nu se pte nelege vce cu priuni lips su chir cu priuni cre nu sunt n secven n cre u fst nregistrte, dr pte flsi numrul de secven i infrmi de timp pentru cntrl un buffer de recepie. De exemplu, plicie pte decide c v pstr, ntr-un buffer, 100ms de vce ninte de le red. De fiecre dt cnd un nu pchet RTP v ssi, el este plst n buffer n pzii crespunztre n funcie de numrul de secven. Dc un pchet nu junge l timp i nc lipsete tunci cnd r trebui redt, plici pte s cpieze infrmi din ultimul pchet

Pgin 14 cre tcmi fst redt i s repete destul timp pentru c s se jung l vlre timpului redrii echivlent cu infrmi de timp din urmtrul pchet primit, su s flsesc schem de interplre defini de cdecul flsit. - tipul infrmiei trnsprtte. Frmtul infrmiei de timp rel trnsprtte este nespecifict n RFC 1889 i trebuie definit ri de plicie ri de prfilul RTP flsit. Pentru distinge dintre un frmt prticulr i ltul fr nliz cninutul pchetului, ntetul RTP cnine un identifictr l tipului infrmiei. n cntinure vi prezent ctev exemple de flsire RTP-ului: - simpl udi cnferin. Un grup de lucru se ntlnete pentru discut flsind serviciile multicst le Internetului pentru cmunicii de vce. Printr-un mecnism recre de lcre se bine dres multicst i pereche de prturi. Un prt este flsit pentru dtele udi i celllt este flsit pentru pchetele de cntrl (RTCP). dres de multicst i prturile sunt distribuite prticipnilr drii. Dc se drete c cest cnferin s nu fie scultt i de li prticipni nedrii, pchetele de dte i de cntrl pt fi cdte cu mecnismele prezentte n RFC-ul 1889 subcpitlul 9.1, cz n cre cheie de cdre trebuie genert i distribuit prticipnilr drii. pliciile de udi cnferin flsit de fiecre prticipnt trimite dte udi n buci mici, de exemplu, de durt 20ms. ntetul RTP i dtele sunt ncpsulte ntr-un pchet UDP. ntetul RTP indic tipul cdri (c PCM, DPCM su LPC) dtelr din fiecre pchet pentru c receptri s pte cunte tipul dtelr primite ir trnsmitrii s pt mdific tipul cdrii n timpul cnferinei pentru, de exemplu, permite recepi de ctre un nu prticipnt ce este cnectt printr- legtur cu bnd mic su pentru recin l cngesti reelei. Internetul, c rice lt ree de pchete, czinl pierde i rerdnez pchetele i le ntrzie cu durt vribil de timp. Pentru nvinge ceste impedimente, ntetul RTP cnine infrmii de timp i un numr de secven cre permit receptrilr s recnstruisc secven nregistrt de surs, pentru c n cest exemplu, priunile primite s fie redte l fiecre 20 de milisecunde. cest recnstrucie este plict pentru fiecre surs de RTP ce i prte l cest cnferin. Numrul de secven pte fi de ltfel flsit i l determinre de ctre receptr numrului de pchete ce u fst pierdute. Derece membrii grupului pt intr su prsi cnferin n timpul cnferinei, este necesr s se tie cine prticip l un mment dt i ct de bine se recepinez dtele udi. Pentru cest scp fiecre instn plicie udi din cnferin, n md peridic, trimite n md multicst un rprt de recepie plus numele persnei cre flsete cest instn spre prtul RTCP. Rprtul indic ct de bine este recepint vrbitrul curent i pte fi flsit pentru cntrl cdecurile dptive. Pe lng numele utiliztrului i lte infrmii de indentificre pt fi incluse. lcie trimite pchetul RTCP BYE cnd prsete cnferin. - Cnferin udi i vide. Dc se flsesc n ceei cnferin mbele mdliti (udi i vide) ceste sunt trnsmise c du sesiuni RTP seprte. Pchetele sunt trnsmise flsind pentru fiecre mdlitte du perechi de prturi diferite i/su drese de multicst. Nu exist nici- legtur l nivelul RTP ntre fluxurile udi i vide, cu excepi c utiliztrul ce prticip n mbele sesiuni trebuie s utilizeze celi nume n pchetele RTCP pentru c sesiunile s pt fi scite. mtivre pentru cest seprre reprezint psibilitte ce se crd prticipnilr s leg mdul de primire dtelr (numi udi, numi vide su mbele). n ciud seprrii, sicrnizre redrii fluxurilr udi i vide pte fi relizt flsind infrmiile de timp trnsprtte n pchetele RTCP pentru cele du sesiuni. - Mixere i trnsltre. Pn cum, n exemplele prezentte s- presupus c ti prticipni dresc s primesc fluxurile n celi frmt. Ttui, cest lucru nu se pte reliz

Pgin 15 nttdeun. S cnsiderm czul n cre prticipnii dintr- zn sunt legi printr- cnexiune de vitez mic de ceilli prticipni cre se bucur de cnexiuni de mre vitez. n lc s se impun tuturr flsire unui cdec ce prduce fluxuri de clitte i bnd sczut, un releu l nivelul RTP-ului numit mixer pte fi plst lng zn cu bnd limitt. cest resincrnizez pchetele udi primite, mixez fluxurile ntr-un singur flux, cdez dtele udi din cest flsind un cdec de bnd mi mic i trimite pchetele ce cnine dtele rezultte pe link-ul ce duce spre zn ce deservete mixerul. ceste pchete pt fi trimise n md unicst spre un singur recipient su n md multicst pe mi multe drese spre recipiente multiple. ntetul RTP include un mijlc pentru c mixerul s identifice sursele ce u cntribuit l un pchet mixt, stfel rptndu-se crect vrbitrul curent l receptr. Civ prticipni l cnferin r pute fi cnecti printr- cnexiune de mre vitez dr r pute de semene s nu fie direct ccesibili prin multicst prin IP. De exemplu, ceti r pute fi n sptele unui firewll l nivel plicie cre elimin tte pchetel IP. Pentru ceste stii, flsire unui mixer nu r fi necesr, dr trebuie flsit lt biect ce lucrez l nivelul RTP-ului, numit trnsltr. Di trnsltri sunt instli de fiecre prte firewll-ului, cel din exterir trimind pchetele de multicst primite printr- cnexiune sigur, spre trnsltrul din interir. cest din urm trimite pchetele din interir n md multicst spre grupul ce prticip l cnferin. Mixerele i trnsltrii pt fi priecti pentru gm lrg de scpuri. Un exemplu r fi un mixer cre mdific imginile primite prin mi multe fluxuri cmbinndu-le ntr-un singur flux vide pentru cre imgine n cre ti prticipnii sunt prezeni. ninte de prezent cmpurile ce sunt prezente ntr-un pchet RTP ctev definiii sunt necesre: Sesiune RTP. sesiune RTP reprezint un grup de prticipni ce cmunic prin RTP. Fiecre prticipnt flsete du drese de trnsprt (n czul IP, de exemplu, du prturi pe clcultrul lcl) pentru fiecre sesiune: un pentru fluxul RTP i cellt pentru rprtele RTCP. Dc se flsete trnsmisie multicst, ti prticipnii flsesc ceei pereche de drese multicst de nivel 4 (de trnsprt). Fluxurile medi din ceei sesiune r trebui s flsesc celi cnl RTCP. Surs de sincrnizre SSRC. Surs unui flux RTP, identifict printr-un cmp de 32 de bii din ntetul RTP. Tte pchetele RTP cu un SSRC cmun u ceei referin de timp i de sincrnizre, deci un receptr grupez pchetele dup surs de sincrnizre n vedere sincrnizrii. Exemplele de surse includ trnsmitrul unui flux de pchete binute de l surs de semnl cum r fi un micrfn su cmer, su un mixer RTP. surs de sincrnizre i pte schimb frmtul dtelr trimise n timp. Identifictrul SSRC este les n md letr stfel nct cest vlre s fie unic ntr- sesiune RTP. Un prticipnt nu trebuie s flsesc celi identifictr pentru tte sesiunile dintr- sesiune multimedi; legtur dintre ceste sesiuni se fce prin RTCP. Dc un prticipnt generez mi multe fluxuri ntr- sesiune RTP, cum r fi fluxurile de l mi multe cmere vide, fiecre dintre ceste trebuie identifict prntr-un SSRC diferit. Surs cntribuitre CSRC. Cnd un flux RTP este rezulttul unei cmbinri (mixri) mi multe fluxuri, list de SSRC-uri fiecrui flux flsit este dugt n ntetul RTPului l fluxului rezultt c CSRC. cest flux re prpriul lui SSRC. Frmtul NTP. mdlitte stndrd de exprim (scrie) infrmi de timp din fiecre pchet, prin scriere numrului de secunde trecute din 1 inurie 1900, r 0, cu jutrul 32 de bii pentru prte ntreg i 32 de bii pentru prte zeciml (n czul prii zecimle numrul este exprimt n ^32 secunde). frm mi cmpct exist cu numi 16 bii pentru prte ntreg si 16 pentru prte zeciml. Primi 16 bii ce s-u

Pgin 16 mis pt fi binui din ziu curent, ir prte zeciml este pur i simplu trunct l prte ce mi semnifictiv. Pchetul RTP cnine nttdeun tte cmpurile pn l list CSRC. cest list exist numi dup ce pchetul trece de un mixer. Cmpurile sunt: 2 bii sunt rezervi pentru versiune flsit de RTP. Un bit ce indic dugre de bii n plus din csiderente de liniere. Dc pchetul fst mdifict (P=1), tunci ultimul ctet l cmpului de indic tipul dtelr trnsprtte indic mi precis ci ctei u fst dugi. Un bit de extensie X indic prezen extensiilr dup eventul list CSRC ntetului fix. Extensiile u frm prezentt n figur I.2.

Figur I.2 Extensi ntetului Cmpul de 4 bii CC indic numrul de CSRC-uri ce urmez dup ntetul fix. Bit de mrcj (M). Interpretre cestui bit este definit de un lt dcument ce vine dt cu plici flsit i numit prfil RTP. fst pus cu inteni pentru permite semnlizre unr evenimente imprtnte cum r fi mrginile unui cdru n fluxul de pchete. cel dcument r pute defini i li bii de mrcj su specific c nu exist bit de mrcj prin mdificre numrului de bii din cmpul tipul infrmiei trnsprtte (srcini). Tipul infrmiei trnsprtte(PT). re 7 bii i identific frm infrmiei trnsprtte i determin interpretre cestei de ctre plicie. Dcumentul mintit mi sus specific crespnden sttic ntre cduri de identificre tipului infrmiei i diferite frmte de dte. n plus se pt defini lte crespndene dinmice prin mijlce nn-RTP. Un emitr RTP trimite un singur identifictr de srcin l un mment dt; cest cmp nu este destint pentru multiplexre unr fluxuri medi diferite. Figur I.3 prezint prte din identifictri sttici.

Figur I.3 Identifictri sttici

Pgin 17 Numrul de secven (16 bii). Numrul de secven este incrementt pentru fiecre pchet RTP trimis i pte fi flsit de receptr pentru detect pierdere pchetelr i refce rdine pchetelr. Vlre iniil numrului este letrie pentru fce tcurile supr fluxurilr cdte mi dificile.

Figur I.4 Pchetul RTP Infrmi de timp (32 de bii). cest reflect mmentul cnd s- fcut entinre primului ctet din dtele cninute n pchet. cest vlre trebuie lut de l un ces cre este incrementt mntn i liner n timp pentru permite sincrnizre i clculul jitterului. Rezlui cesului trebuie s fie suficient pentru curtee drit sincrnizrii i pentru msur jitterul pchetelr l ssire. Frecven cesului este dependent de frmtul infrmiei trnsprtte i este specifict n md sttic n dcumentele ce definesc prfilele i crespnden cestr cu cduri su pte fi definit n md dinmic pentru frmte definite prin mijlce nn-RTP. Dc pchetele RTP sunt generte peridic, se v flsi vlre cesului de entinre, nu vlre cesului sistemului. C exemplu, pentru flux udi cu rt fix, cesul flsit v fi incrementt cu unu pentru fiecre perid de entinre. Dc plicie udi citete blcuri cperind 160 de peride de entinre de l dispzitivulde nregistrre, vlre infrmiei de timp v fi mrit cu 160 pentru fiecre stfel de blcuri, indiferent dc vr fi trnsmise su elimitte din cuz c reprezint peride de linite. Vlre iniil infrmiei de timp este un letrie, l fel c numrul de secven. Ctev pchete RTP pt ve vlri le infrmiei de timp egle dc ceste sunt (teretic) sunt generte n celi timp, cum r fi pchetele ce prin celuii cdru vide. Pchetele cnsecutive pt fi mrcte cu vlri nemntne dc dtele sunt trnsmise n lt rdine dect ce n cre u fst nregistrte i entinte, c n czul cdrelr vide interplte MPEG (numerele de secven sunt n cntinure mntne). SSRC (32 de bii). Cpul SSRC identific surs dup cre se fce sincrnizre. cest identifictr este les n md letr, cu inteni c s nu existe du surse de sincrnizre n ceei sesiune RTP cu celi SSRC. Cu tte c prbbilitte c cest lucru s se ntmple este mic, tte pliciile RTP trebuie s fie pregtite s detecteze i s rezlv ceste cliziuni. Dc surs i schimb dres de trnsprt surs, trebuie s i schimbe i SSRC-ul pentru evit prii cnfuziilr.

Pgin 18 List CSRC (ntre 0 i 15 elemente de 32 de bii fiecre). cest list identific sursele ce u cntribuit l dtele ce sunt cninute de pchet. Numrul surselr este dt de cmpul CC. Dc sunt mi mult de 15 surse, numi 15 pt fi identificte. Identifictrii CSRC sunt inseri de mixere, flsind identifictrii SSRC i surselr cntribuitre. De exemplu, pentru pchetele udi identifictrii SSRC i surselr cre u fst mixte mpreun pentru cre un pchet sunt listte n cdul cmpului CSRC, permind stfel indicre vrbitrului l recepie n md crect. Pentru un studiu prfundt se pt cnsult urmtrele mterile RFC 1889[4], Reele de clcultre [1] i IP Telephny [2]

2.3 RTCP (RFC 1889)


Prtclul pentru cntrlul RTP-ului este bzt pe trnsmisi peridic pchetelr de cntrl ctre ti prticipnii unei sesiuni prticulre. Pchetele de cntrl sunt distribuite n celi md c i pchetele de dte. Fiecre pchet RTCP include un rprt l trnsmitrului i/su un rprt l receptrului cre prezint sttistici cum r fi numrul de pchete trimise, numrul de pchete pierdute, jitterul, ntrziere ft de ultimul rprt, timpul de emisie l ultimului rprt, etc, utile pentru pliciilr. RTCP re ptru funcii seprte: a. Funci principl este de furniz feedbck cu privire l clitte distribuiei de dte. Infrmiile primite prin cest cle putnd fi flsite l cntrlul unei cdri dptive (cdec dptiv). Experimentele flsind multiplexre IP u rtt c feedbck-ul este critic pentru dignsticul greelilr n distribuie. cest funcie este relizt prin flsire du rprte: rprtul trnsmitrului i rprtul receptrului. b. RTCP identific ti prticipni unei sesiuni. cest prtcl fce cest lucru prin trnsprtul unui identifictr de nivel trnsprt l fiecrei surse numit nume cnnic (CNME) (cnnicl nme) i l unui identifictr de surs de sincrnizre (SSRC). SSRC-ul se pte schimb ntr- sesiune. Identifictrul CNME este de semene flsit pentru sincrnizre fluxurilr multimedi multiple. Cnd un prticipnt prsete cnferin este trimis un pchet RTCP BYE. c. Pchetele prtclului sunt trimise pentru ndeplini primele du funcii, de cee rt cu cre sunt trimise pchetele este de semene cntrlt. cest cntrl l rtei este relizt de RTCP. Numrul de prticipni bservt este flsit pentru determinre vlrii cestei rte. Cu ct numrul prticipnilr este mi mre cu tt rt cu cre se trimite pchete de ctre fiecre prticipnt este mi mic. d. ptr funcie (pinl) este de trnsprt minimum de infrmie de cntrl sesiunii, pentru, c exemplu, s se pt fce identificre prticipnilr n interf grfic. Ti prticipni trebuie s trimit pchete RTCP, fpt ce pte cre prbleme pentru cnferinele pe bz de multicst de mri dimensiuni derece trficul RTCP v crete linir cu cretere numrului de prticipni. ccest prblem nu exist cu fluxurile RTP n cnferinele udi ce flsesc suprimre puzelr, derece meni nu vrbesc de regul n celi timp. Derece numrul de prticipni este cunscut tuturr ce scult rprtele RTCP, fiecre din ceti i pte cntrl rt cu cre trimite ceste rprte. cest fpt este flsit pentru limit bnd flsite de RTCP l vlre reznbil, de bicei nu mi mult de 5% din bnd lct sesiunii. cest bnd trebuie mprit de ti prticipnii. n stndrde se stipulez c trnsmitrilr ctivi le revine un sfert din cest bnd derece infrmiile

Pgin 19 cninute n rprtele trnsmitrilr sunt frte imprtnte pentru receptri. Ce ce rmne se mprte ntre receptri. Chir i pentru cele mi mici sesiuni, ce mi mre rt cu cre se pte trnsmite, de ctre un prticipnt, un rprt RTCP este unul l fiecre 5 secunde. Rt cu cre se trnsmite este letrizt cu un fctr de 0,5 pn l 1,5 pentru nu se cre sincrnizri nedrite ntre rprte. Vlre medie rtei este derivt, de fiecre prticipnt, din mrime pchetului pe cre vre s-l trimit i din numrul de trnsmitri i receptri din pvhetele pe cre le primete. Sunt mi multe tipuri de pchete RTCP, unul pentru fiecre tip de infrmie: SR: reprezint rprtul trnsmitrului i cnine infrmiile de trnsmisie i recepie despre trnsmitrii ctivi; RR: reprezint rprtul receptrului i cnine infrmiile despre sculttrii ce nu sunt i trnsmitri ctivi; SDES: reprezint descriere sursei i cnine numeri prmetrii referitri l surs, incluznd i CNME; BYE: reprezint rprtul trimis tunci cnd un prticipnt prsete cnferint; PP: prezint funciile specifice unei plicii. Ctev pchete RTCP pt fi incluse ntr-un singur pchet l prtclului de trnsprt. Fiecre mesj RTCP cnine destule infrmii pentru fi decdt fr prbleme dc mi multe semene mesje sunt ncpsulte n celi pchet UDP. cest md de flsire este flsitr pentru trnsmite eficient infrmi, innd cnt de dimensiunile ntetului prtclului de trnsprt. Rprtele receptrului i le trnsmitrului (figur I.5) Fiecre SR (sender reprt) cnine trei seciuni bligtri. Prim seciune cnine: 5 bii pentru numrul de rprte cninute n cest rprt; tipul pchetului, cre n czul SR-ului este 200; lungime cestui rprt pe 16 bii i numrul de bii intrdui c umplutur pe 32 de bii; SSRC-ul trnsmitrului cestui rprt. cest indentifictr se v regsi i n pchetele RTP ce plec de l cest. du seciune cnine infrmiile despre fluxul RTP ce este trimis de cest trnsmitr: infrmi de timp ce cnine dt l cre fst trimis cest rprt. cest pte s fie bslut su reltiv ft de mmentul nceperii sesiunii. infrmi de timp RTP ce reprezint celi lucru c mi sus dr flsind regulile de l pchetele RTP; numrul de pchete trimise de cest trnsmitr de l nceputul sesiunii pe 16 bii. Este resett dc SSRC-ul este schimbt; numrul de ctei de dte ce u fst trimise de l nceputul sesiunii. ceste este de semene resett cnd se schimb SSRC-ul. Ce de- trei seciune cnine un set de frgmente le rprtului de recepie, unul pentru fiecre surs de cre uzit de cnd trimis ultimul SR su RR. Fiecre re celi frmt. ceste cnin: SSRC (indentifictrul sursei): 32 de bii identifictrul sursei despre cre se fce rprtul; rt pierderilr: 8 bii vlre rtunjit rprtului (pchete primite/pchete pierdute*256);

Pgin 20 numrul ttl l pchetelr pierdute (24 bii) de l nceputul recepiei. Pchetele ntrzite nu sunt numrte c pierdute ir pchetele duplicte sunt numrte c primite; cel mi mre numr de secven primit, vrint extins: (32 bii). Cei mi imprtni 16 bii cnin numrul de cicluri le numrului de secven ir ultimi 16 bii cnin cel mi mre numr de secven primit ntr-un pchet RTP de l surs indict n primul cmp; jitterul: 32 de bii. estimre vriiei timpului scurs ntre ssirile pchetelr RTP, msurt n uniti n cre se msr i infrmi de timp i exprimt c un numr ntreg fr semn. Jitterul J este definit c devii medie diferenei ntre distnele n timp de l receptr f de cele l trnsmitr pentru pchete cnsecutive. cum este rtt n reli de mi js, definii este echivlent cu diferen timpului de prpgre reltiv pentru cele du pchete; timpul de prpgre reltiv este diferen ntre infrmi de timp nscris n pchetul RTP i timpul indict de cesul receptrului tunci l mmentul ssirii pchetului, msurte n celi uniti. Dc Si reprezint infrmi de timp purtt de pchetul i i Ri este timpul de ssire l cestui, tunci pentru cele du pchete i i j, D pte fi exprimt c: D(i,j)=(Rj-Ri)-(Sj-Si)=(Rj-Sj)(Ri-Si). Jitterul este clcult n md cntinuu l fiecre ssire unui pchet i de l surs SSRC_n, flsind cest diferen D pentru cest pchet i pentru pchetul i-1 n rdine ssirii (nu neprt n secven), cnfrm frmulei: J=J+(|D(i-1,i)|-J)/16. Cnd se emite un rprt, vlre curent lui J este prelut. infrmi de timp cninut de ultimul rprt l sursei (LSR): 32 de bii. Se flsesc cei 32 de bii din mijlcul infrmiei de timp cninut de ultimul rprt primit din prte unei surse (cest frm se numete frm cmpct). ntrziere f de mmentul cnd s- primit ultimul rprt SR (DLSR): 32 de bii. Exprimt n frm cmpct (mi simplu n multipli de 1/65536s). mpreun cu LSR trnsmitrul cestui ultim SR pte flsi cest infrmie pentru clcul timpul dus-ntrs. Rptul receptrului rt c rprtul trnsmitrului, cu diferenele c vlre cmpului ce indic tipul infrmiei trnsprtte (PT) este egl cu 201 i seciune du lipsete. cest rprt pte fi flsit de receptrii psivi cre nu generez fluxuri de RTP. SDES: pchetul RTCP de descriere l sursei (figur I.6) Un pchet SDES re cmpul PT egl cu 202 i cnine priuni unde se enumer sursele (SC). Fiecre priune cnine un SSRC su un CSRC i list de infrmii. Fiecre element din list este prezentt flsind frmtul tip, lungime, vlre. Urmtrele tipuri exist dr dr CNME trebuie s existe: CNME(unic n cdrul unei sesiuni) este de frm utiliztr@min_gzd, dres IP su numele dmeniului minii gzd; NME, numele binuit l sursei; EMIL; PHNE, numrul de telefn; LC, lci minii surs. n figur 6 se prezint pchetul SDES. BYE (figur I.7) Pchetul RTCP BYE indic c unul su mi multe surse indicte prin priuni de enumerre (SC) nu mi sunt ctive.

Pgin 21

Figur I.5 Rprtul trnsmitrului

PP: pchetul RTCP definit de plicie (figur I.8) cest pchet pte fi flsit pentru trnsprt infrmii ce in numi de plici flsit. Cmpul PT este sett l vlre 204. Detlii n plus se pt gsi n RFC 1889[4], IP telephny [2].

Figur I.6 Descriere surselr

Pgin 22

Figur I.7 Pchetul BYE

Figur I.8 Pchetul PP

2.4 RTSP (Rel Time Streming Prtcl RFC 2326)


Prtclul pentru fluxurile n timp rel su RTSP [5] este un prtcl de nivel plicie pentru cntrlul livrrii dtelr cu prprietti de timp rel. RTSP furnizez bz extensibil pentru permite trnsprtul cntrlt, l cerere, l dtelr de timp rel, cum r fi cele udi i vide. Sursele de dte pt fi tt prtele ce cptez n mmentul trnsmisiei c i dte stcte. cest prtcl este priectt pentru cntrl multiple sesiuni de trnsfer de dte, pentru furniz mijlcele prin cre se lege cnlele de trnsprt, cum r fi UDP, multicst UDP su TCP i pentru furniz mijlcele pentru legere mecnismelr de trnsprt bzte pe RTP. RTSP stbilete i cntrlez unul su mi multe fluxuri sincrnizte de dte cntinue cum r fi udi su vide. n md nrml nu trnsprt el nsui ceste fluxuri, cu tte c interpunere fluxurilr medi cu fluxul de cntrl este psibil. Cu lte cuvinte, RTSP prpune un cntrl l distn prin ree l server-elr multimedi. Setul de fluxuri ce trebuiesc cntrlte sunt definite de descriere prezentrii (presenttin descriptin). Frmtul cestei descrieri se fce ntr-un dcument ce trebuie s fie specifict l implementre prtclului. Nu exist niune de cnexiune RTSP, dr serverul menine sesiune etichett cu jutrul unui identifictr. stfel de sesiune nu este legt n nici un fel de cnexiune de l nivelul trnsprt, cum r fi de exemplu cnexiune TCP. n timpul unei sesiuni RTSP, un client

Pgin 23 pte deschide i nchide mi multe cnexiuni sigure de trnsprt ctre server pentru trimite cereri RTSP su pte flsi un prtcl fr cnexiune cum r fi UDP. Fluxurile cntrlte de RTSP pt flsi RTP, dr mdul de funcinre l prtclului prezentt nu depinde de mecnismul de trnsprt flsit pentru duce dtele n timp rel. Prtclul este intenint semntr n sintx i md de perre cu HTTP versiune 1.1 [7]. HTTP dic Hypertext Trnsfer Prtcl este un prtcl de nivel plicie pentru sistemele flte l distn i cre cmunic ntre ele. Este un prtcl generic, fr stri. cest fst flsit de ctre iniitiv glbl infrmtic Wrld Wide Web nc din 1990. Prim versiune HTTP/0.9 fst un simplu prtcl pentru trnsferul dtelr neprelucrte prin Internet. Versiune 1.0, cum fst definit n RFC-ul 1495, mbuntit prtclul prin fptul c permis mesjelr s ib un frmt semntr cu frmtul MIME (Multipurpse Internet Mil Extensins), mesje ce cnineu infrmii despre dtele trnsprtte i mdifictri i semnticii mesjelr de cerere i rspuns. Versiune 1.1 include cerine mi dure dect versiune nterir cu scpul de furniz implementri sigure crcteristicilr cestui prtcl. HTTP sigur un set de metde i ntete ce indic scpul unei cereri. cest este cnstruit pe disciplin referinelr furnizte de Unifrm Resurce Identifier(URI), c lcie URL su c nume URN, pentru indic resurs pentru cre se v plic metd. Mesjele sunt trimise ntr-un frmt similr cu cel flsit n sistemele de pt electrnic din Internet definit n dcumentul Multipurpse Internet Mil Extensins (MIME). HTTP este de ltfel flsit i c prtcl de cmunicie ntre gentul utiliztrului (plici cre rulez l cerere utiliztrului), gtewy-uri su prxy-uri i lte sisteme din Internet, incluznd i pe cele ce suprt prtclele FTP i SMTP. n cest md HTTP permite cesul l resursele dispnibile de l diverse plicii. HTTP este un prtcl de tip cerere rspuns. Un client trimite cerere ctre server, ce cnine metd cerut, un cmp URI, versiune de prtcl urmt de un mesj de frmt semntr cu MIME ce re n cmpnen mdifictri de sintx cereri, infrmii despre client, i psibil cninutul mesjului pe cnexiune cu serverul. cest rspunde cu linie de stre, ce include versiune prtclului i un cd de succes su de erre urmt de un mesj semntr MIME ce cnine infrmiile despre server, infrmiile despre entitte indict n cerere i psibil crpul entitii. Prtclul RTSP se difereniz de HTTP/1.1 prin urmtrele specte: intrduce un numr de ni metde i re un identifictr de prtcl diferit; un server RTSP trebuie s menin stre n tte czurile, spre desebire de ntur fr stri HTTP-ului. i clientul i serverul pt emite cereri. dtele sunt trnsprtte de ctre un lt prtcl. setul de crctere flsite n cmpunere mesjelr este ltul. identifictrul resursei URI este n cdrul unei cereri nttdeun bslut. ceste mdificri duc l implementre mi ur unr situii n cre exist mi multe ierrhii de directre pe singur gzd cu singur dres IP. Prtclul permite urmtrele perii: - binere de infrmii de l un server. Clientul pte cere descriere prezentrilr prin HTTP su lt metd. Dc prezentre este trimis n md multicst tunci descriere cnine dres de multicst i prturile utilizte pentru fluxurile medi. Dc dr cest client este vizt de prezentre, dic numi el v primi fluxurile medi prin unicst tunci clientul v feri destini din mtive de securitte.

Pgin 24 - invitre unui server medi l cnferin. Un server medi pte fi invitt l cnferin, fie pentru red fiiere multimedi, fie pentru nregistr tt su prte din cnferin. cest perie este frte util pentru pliciile de nvmnt l distn. - infrmre utiliztrilr despre tipurile de dte n timp rel dispnibile pentru prezentre existent dej. n specil pentru prezentrile n timp rel, este util s se infrmeze pe cei cre prticip de ctre server ce tipuri de dte n timp rel u devenit dispnibile. Sunt necesre ctev precizri: Prezentre. Reprezint unul su mi multe fluxuri prezentte de ctre server clienilr c trnsmisiune multimedi cmplet, flsind descriere prezentrii cre este definit mi js. n cele mi multe czuri n cntextul RTSP, cest implic cntrlul supr celr fluxuri, dr nu nttdeun este . Descriere prezentrii. descriere unei prezentri cnine infrmii supr unui su mi multe fluxuri medi din cdrul prezentrii, cum r fi setul de cdecuri flsit, dresele flsite i infrmii despre cninut. n lte prtcle prpuse de IETF c SDP (Sessin Descriptin Prtcl) flsesc termenul de sesiune pentru prezentre n timp rel. Descriere prezentrii pte ve mi multe frmte, incluznd dr nu numi frmtul SDP. Flux medi. Reprezint un singur flux de dte ce pt fi udi, vide su dtele prvenite de l un whitebrd. Cnd se flsete RTP, un flux cnine tte pchetele RTP i RTCP crete de surs ntr- sesiune RTP. Mesj. Este unitte de bz n cmunici RTSP. Entitte. Reprezint infrmi trnsfert n cdrul unui rspuns su cereri. Sesiune RTSP. Reprezint trnzcie cmplet RTSP, cum r fi vizinre unui film. sesiune cnst de bicei n crere de ctre client unui mecnism de trnsprt pentru fluxul medi, prnire redrii i nchidere fluxului. Prtclul RTSP re urmtrele prprieti: Extensibil. Metde i prmetri ni pt fi frte ur dugi l cest prtcl; Ur de nlizt. RTSP pte nlizt de ctre nlizrele stndrd HTTP su MIME; Sigur. RTSP reutilizez mecnismele reelei de securitte. Tte mecnismele de utentificre flsite n HTTP sunt direct plicbile. Se pt flsi i mecnismele de securitte le nivelurilr trnsprt i ree; Independent de mdul de trnsprt. RTSP pte flsi prtclul cu dtgrme nesigur UDP su prtclul sigur pe bz de fluxuri c RTP. Cpbil de lucrul cu mi multe servere. Fiecre flux medi dintr- prezentre pte fi stct pe diferite servere. Clientul n md utmt stbilete mi multe sesiuni de cntrl cncurente cu severele ce cnin fiierele medi. Sincrnizre se fce l nivelul trnsprt; Cntrlez prtele ce fc nregistrre. Prtclul pte cntrl tt prtele ce fc nregistrre su redre fiierelr medi ct i prtelr ce fc ceste funci n md lterntiv; Sepr cntrlul fluxului de iniilizre cnferinei. Cntrlul fluxului este seprt de invitre l cnferin server-elr. Singur cerin n cest cz este c prtclul ce iniiz cnferint s furnizeze su utilizt pentru cre un identifictr pentru cnferin. n prticulr SIP su H.323 pt fi utilizi pentru invitre unui server l cnferin. Prin server se nelege rice sistem ce drete su este slicitt s trimit dte n timp rel. Ptrivit pentru pliciile prfesinle. RTSP furnizez curtee mre, l nivelul cdrelr ce permite editre l distn;

Pgin 25 Neutru din punct de vedere l descrierii prezentrii. Prtclul nu impune un frmt de descriere i pte cmunic tipul descrierii ce v fi flsit. Ttui, descriere trebuie s ib cel puin un identifictr l resursei dic un URI; Permite flsire sistemelr firewll i prxy. Prtclul pte fi mnevrt cu uurin tt de sistemele firewll l nivel plicie ct i de cele l nivel trnsprt. Un stfel de sistem trebuie s neleg metd SETUP pentru deschide un cnl de cmunicie pentru fluxul medi de pe UDP; Flsete HTTP. cl unde este nevie, RTSP reutilizez cnceptele HTTP pentru c infrstuctur existent s nu fie mdifict; Permite cntrlul reznbil l server-ului. Dc un client pte s prnesc un flux de dte, tunci el trebuie s ib cpcitte i s presc fluxul. Server-ele nu trebuie s prnesc trimitere unui flux ntr-un semene md nct clientul s nu pt s presc cel flux; Permite negciere metdei de trnsprt. Clientul pte negci metd de trnsprt ninte de fi nevit s prceseze un flux de dte n timp rel; Permite negciere cpcitilr. Dc crcteristicile de bz nu sunt dispnibile, trebuie s existe un mecnism pentru c clientul s determine ce metde nu vr fi implementte. cest permite clienilr s fieze interf grfic crespunztre. De exemplu, dc srire unr priuni din film nu este permis, tunci interf grfic trebuie s fie n stre s mpiedice micre indictrului de pziie n timp l filmului. Fiecre prezentre i flux medi pte fi identifict de un URL. Prezentre n sine i prprietile fluxurilr din cre cest este frmt sunt definite de un dcument ce cnine descriere prezentrii. cest dcument pte fi binut de ctre client flsind HTTP su lte mijlce cum r fi pt electrnic i nu este bligtrul s fie stct pe serverul medi. n generl cest dcument trebuie s cnin descriere mediilr ce frmez prezentre, incluznd i cdecurile flsite, limbjul i li prmetri cre permit clientului s leg ce mi ptrivit cmbinie. n cest descriere prezentrii fiecre flux medi cntrlt de RTSP este identifict printr-un URL l prtclului RTSP, cre indic spre server-ul ce prelucrez cel flux i prt numele ri fluxului ri server-ului. Mi multe fluxuri medi pt fi lclizte pe servere diferite; de exemplu, fluxurile udi i vide pt fi mprite pe mi multe server-e pentru c ncrcre cestr s fie echitbil. Descriere enumer i ce metde de trnsprt pte flsi un server. Pe lng prmetri mediilr flsite, dres de ree destinie i prtul trebuiesc determini. Ctev mduri de perre pt fi distinse: Unicst: dtele udi su vide sunt trnsmise spre lcul de unde fst trimis cerere RTSP, cu numrul prtului les de client. Este psibil c dtele s fie trnsmise pe celi flux sigur c RSTP. Multicst cu legere dresei de ctre server: cest lege i dres i prtul. cest este czul tipic pentru trnsmisie n timp rel su prpe de trnsmisie l cerere. Multicst cu legere dresei de ctre client: dc server-ul trebuie s prticipe l cnferin dej existent, dres de multicst, prtul i mdlitte de cdre sunt precizte de descriere cnferinei. RTSP cntrlez un flux cre pte fi trimis prin intermediul unui prtcl seprt, independent de cnlul de cntrl. De exemplu, cntrlul RTSP se pte fce prin intermediul unei cnexiuni TCP ir dtele pt fi trnsprtte cu jutrul prtclului UDP. stfel, livrre dtelr cntinu i dc nici lt cerere RTSP nu este recepint de ctre server. Ttui, pe timpul vieii unei cnexiuni, un singur flux medi pte fi cntrlt prin cereri RTSP trimise n

Pgin 26 md secvenil pe diferite cnexiuni TCP. De cee, server-ul trebuie s menin stre sesiunii pentru fi cpbil s creleze cererile cu un flux. Multe metde din cdrul RTSP nu cntribuie l mdificre strii. Ttui urmtrele jc un rl centrl n definire lcrii i utilizrii resurselr n server: SETUP, PLY, RECRD, PUSE i TERDWN. Metd SETUP fce c server-ul s lce resurse pentru un flux i s prnesc sesiune RTSP. Metdele PLY i RECRD prnesc trnsmisi dtelr pentru un flux lct prin metd SETUP. Metd PUSE prete temprr un flux fr eliber resursele server-ului. Metd TERDWN eliberez resursele scite cu fluxul medi. Sesiune ncetez s mi existe n server. Metdele cre cntribuie l stre unei sesiuni cnin cmpul ntet sesiune pentru indic stre crei sesiuni mnipulez. Serverul generez un identifictr l sesiunii n rspuns l cerere de tip SETUP. Server-ul, dup ce primete cererile cu metdele de mi sus, rspunde cu un mesj ce cnine n principl linie de stre frmt din versiune prtclului, un cd de trei cifre ce indic clientului succesul su insuccesul ciunii cerute prin metd trimis i frz textul ce indic n cuvinte ce nsemn cdul. Prim cifr din cd definete cls rspunsului. Ultimele du cifre nu u nici un rl n ierrhi rspunsurilr. Exist 5 vlri psibile pentru prim cifr: 1xx: rspuns infrminl rspuns primit, prcesul cntinu; 2xx: succes ciune fst primit cu succes, neles i cceptt; 3xx: ndrumre ctre lte drese trebuiesc lute ciuni n plus pentru cmplet cerere; 4xx: erre de client cerere cnine erri de sintx i nu pte fi ndeplinit; 5xx: erre de server server-ul nu pte ndeplini cerere ce pre vlid. Cdurile sunt incluse n sintx rspunsului pentru fi citite i nelese de ctre utmte ir frzele ce le urmez sunt destinte utiliztrilr umni. Pentru infrmii n plus recmnd RFC 2326 [5]

3 Semnlizre 3.1 Intrducere


Semnlizre reprezit prcesul ce permite iniilizre i cntrlul unei cnversii ntre du su mi multe persne. n czul telefniei prin Internet de cest lucru se cup prtclele de semnlizre. ceste sunt flsite pentru stbili i cntrl sesiunile su pelurile multimedi. ceste sesiuni includ cnferine multimedi, telefnie, nvmnt l distn i lte stfel de plicii. Prtclele de semnlizre peste IP sunt flsite s intercnecteze clieni sftwre i hrdwre prin reele lcle (LN) su prin Internet. Principlele funcii le cestui tip de prtcle sunt: cutre unui utiliztr, trnsli de drese i nume, stbilire unei cnexiuni, negciere prmetrilr unui pel, schimbul prmetrilr specifici prtelr flsite n cnversie, ntrerupere unui pel i mngementul prticipnilr l cnversie cum r fi invitre de ni prticipni. lte servicii, cum r fi

Pgin 27 securitte, trifre, nunre sesiunilr pt fi incluse n ceste prtcle. Semnlizre este frte strns legt de trnsmisi fluxurilr de dte, dr cest nu fce prte din semnlizre. stzi du prtcle de semnlizre exist pe pi: H.323 i SIP. ceste du prtcle reprezint du brdri diferite supr celeii prbleme: semnlizre i cntrlul cnferinelr multimedi. H.323 este un stndrd umbrel de l Interntinl Telecmunictins Unin (ITU) pentru cmunicii multimedi peste reele lcle (LN-uri) cre nu furnizez nici un fel de grnie privind clitte serviciilr. H.323 fce prte din serie mi mre de stndrde pentru cmunicii numit seri H.32x, ce cnine stndrde pentru cnferine multimedi peste tipuri diferite de reele, incluznd ISDN i PSTN. Specifici H.323 fst prbt n 1996, dr primele stndrde din seri H.32x u fst prbte nc din 1990. Versiune 2 stndrdului se refer l cnferinele peste reelele de mri dimensiuni de tipul WN (Wide re Netwrks) i fst prbt n 1998. cest versiune dugt i specificii pentru cmunici ntre reelele de pchete i cele de circuite. Versiune 3 fst prbt n nul 2000 i cnine specificii pentru trnsmisi fx-urilr peste reelele de pchete, pentru cmunici ntre mngerii de peluri i pentru mecnisme mi rpide pentru stbilire cnexiunii telefnice. n curnd v pre i versiune 4. H.323 reprezint brdre trdiinl flsind tehnicile telefniei prin reelele de circuite, bzte pe prtclul de semnlizre ISDN Q.931. Prtclul denumit Sessin Inititin Prtcl pe scurt SIP [9] este dezvltt de grupul de lucru Multiprty Multimedi Sessin Cntrl (MMUSIC) ce fce prte din Internet Engineering Tsk Frce (IETF). cest prtcl este mi puin cunscut dect H.323 i de cee v fi dezbtut pe lrg n urmtrele pgini. SIP este un prtcl mi simplu i se bzez pe prtclul HTTP. El fst priectt iniil pentru cnferinele multimedi ce flsesc Internetul.

3.2 SIP su Prtclul de Iniiere Sesiunii (RFC 3261) 3.2.1 Intrducere SIP
SIP este definit n RFC-ul 3261 din iunie 2002, dcument ce i lcul RFC-ului 2543 din mrtie 1999. Prtclul de Initilizre l Sesiunii (SIP) fst gndit pentru se sigur un md vnst de cntrl l nceperii, terminrii si dministrrii mdului n cre se trnsmit dtele ntr- ree. L dezvltre prtclului s- inut cnt de fptul c cest v trebui s ruleze eficient pe diverse vrinte de servicii multimedi. Cu jutrul SIP se pt lcliz ntr- mnier sclbil resursele dintr- ree si, indiferent de lclizre fizic cestr, se pt inii si negci crcteristicile sesiunii de cmunicre. Ctev dintre dmeniile cre suprt cest prtcl sunt plictiile de telefnie IP si videcnferin. Dup cum se bserv i din denumire, Prtclul de Iniilizre l Sesiunii iniilizez, dministrez si termin sesiune de cmunicie ntr- ree. Prtclul fst priectt pentru fcilitre feririi serviciilr vcle pe reele de dte. pliciile cre u dptt dej cest prtcl sunt cele de telefnie IP si videcnferint, ns cest pte fi utilizt cu succes si pentru servicii de mesgerie instntnee, ntificre de evenimente su pentru dministrre ltr tipuri de sesiuni de cmunicre. In cee ce priveste relizre unei legturi pentru cmunictie, SIP este un prtcl de cntrl cre fer servicii similre cu cele ferite de prtclele de cntrl existente n czul pliciilr de telefnie clsic, ns relizez cestui lucru ntr-un cntext strns legt de Internet.

Pgin 28 Sessin Inititin Prtcl fce prte din rhitectur prmvt de civ ni de Internet Engineering Tsk Frce, cre mi cuprinde Rel-Time Trnsprt Prtcl (RTP) - prtclul de trnsprt pentru dte udi, vide, su lte dte sensibile in cee ce priveste timpul de trnsfer prin rete, Rel-Time Streming Prtcl (RTSP) - pentru cntrlul fluxurilr multimedi l cerere, Sessin Descriptin Prtcl (SDP) - pentru descriere sesiunilr multimedi, Sessin nnuncement Prtcl (SP) - pentru nunre sesiunilr de cmunicre de l un singur emittr l mi multi receptri, Telephny Ruting ver IP (TRIP) - pentru lclizre celei mi bune ci de trnsmisie ntre Internet si reeu de telefnie public. n principl SIP este destint pentru sigurre sesiunilr de cmunicie intre utiliztri identifici prin identifictri de tip e-mil su numr de telefn. rice echipment cre re signt un nume de gzd ntr- ree pte lu prte l sesiune SIP. Prcesul de crere unei legturi SIP ncepe cu descperire unui utiliztr indiferent de lclizre cestui n ree, pentru c descriere sesiunii s pt fi trimis utiliztrului. crcteristic frte imprtnt este dt de fptul c utiliztrul v menine celi identifictr, chir dc se v schimb lci fizic su dispzitivul cu cre cest se cnectez l ree. tribuire cestui identifictr unui utiliztr v fi relizt de ctre furnizrul serviciului de cnectre n ree su cmpni telefnic. In plus, identitte unui singur utiliztr pte fi reprezentt simultn de un numr de terminle cnectte l ree. n funcie de elementele lgice prezente in elementele de ree SIP, se pt trimite cereri de relizre cmuniciei ctre ricre dintre terminlele cre recunsc celsi identifictr (unul, mi multe su chir tte). Iniiere sesiunii depinde si de bilitte prii pelte de determin cntitte de infrmtii necesre despre sesiune n sine, stfel inct cest s pt decide n cee ce priveste prticipre su nu l cmunici cre r urm s ib lc. C urmre, un mesj SIP include infrmtii despre pelnt, mtivul pentru cre se drete deschidere unei sesiuni, ct de urgent este relizre legturii si infrmii despre prmetrii sesiunii de cmunicre.

3.2.2 SDP
SIP flsete prtclul de descriere l sesiunii (SDP) specifict n RFC-ul 2327 din prilie 1998, elbrt de ctre grupul de lucru MMUSIC. Pentru c un receptr s pt s fie n stre s recepineze sesiune SIP, cest trebuie s cunsc: cre dres de multicst v fi flsit de ctre sesiune; cre v fi prtul de destinie UDP; cdecurile vide su/i udi cre vr fi flsite; ctev infrmii despre sesiune (numele, scurt descreiere); infrmii de cntct; rrul de ctivitte. Principlul scp l descrierii sesiunii de tip SDP este s definesc sintx stndrd pentru cest tip de infrmie. ceste infrmii pt fi livrte flsind vriette de metde de trnsprt, depinznd de cntext: prtclul pentru nunre sesiunilr (SP) pentru reelele multicst; prtclul pentru fluxurile de dte n timp rel (RTSP) pentru pliciile ce lucrez cu fluxuri; SIP pentru iniilizre cmuniciilr punct l punct su multipunct.

Pgin 29 descripie unei sesiuni exprimt n frmt SDP este scurt prezentre textul numelui i scpului unei sesiuni i infrmii despre mediul, prtclele, cdecurile i mdul de trnsprt ce sunt necesre pentru decide dc sesiune este de interes i pentru cunte ce plicii trebuiesc prnite pentru prticip l sesiune. SDP este pur i simplu un frmt pentru descriere de sesiune nu incrprez un prtcl de trnsprt. n generl, SDP trebuie s sigure destule infrmii pentru c un receptr s fie cpbil s i prte l sesiune i s nune resursele ce vr fi flsite, elementelr de ree ce nu prticip l sesiune dr cre dresc s cunsc ceste infrmii. Pentru sesiune pte exist su nu crespnden n timp. Indiferent de cest lucru sesiune pte fi ctiv numi l numite mmente de timp. SDP pte trnsprt list de dte i re l cre sesiune ncepe i se termin. Pentru fiecre dintre ceste du evenimente se pte specific mmentele de timp cnd se vr repet. ceste infrmii sunt sunt devrte n ntreg ree. Se pt de semene specific mdifictri de timp. Descriere unei sesiuni se cmpune din infrmii generle cre se plic ntregii sesiuni urmte de seciuni ce sunt specifice fiecrui frmt l dtelr n timp rel trnsmise. Fiecre seciune cnine tipul (vide, udi), prtclul de trnsprt (RTP/UDP/IP, H.320) i tributele cdecului flsit. Pentru sesiune IP de tip multicst, dresele de multicst i prturile de trnsprt sunt de semene livrte receptrelr. ceste reprezint dresele de destinie i prturile de destinie le fluxului multicst, indiferent dc este trimis, recepint su mbele. Pentru sesiune IP de tip multicst, sunt precizte n cest descriere i dres distnt pentru fluxul medi i prtul de trnsprt pentru dres de cntct. stfel rspunsul l invitie r pute cnine infrmii similre privind lcul unde pelntul s trimit fluxurile udi i vide. Sintx SDP: descriere unei sesiuni cnst ntr-un numr de linii de text de frm: <tip>=<vlre> unde <tip> este mereu un crcter i depinde dc este liter mre su liter mic, ir <vlre> este un text l crui frmt depinde de <tip>. n generl <vlre> este ri un numr de cmpuri delimitte de un singur crcter spiu su un sir de crctere cu un frmt recre. descriere de sesiune cnine descriere l nivelul ntregii sesiuni (cre se plic ntregii sesiuni i tuturr fluxurilr medi) i pinl mi multe descrieri l nivelul fluxurilr ce cnine detlii ce se plic unui singur flux. Prim prte ncepe cu linie ce re crcterele v= i cntinu cu prim descriere de flux medi. cest ncepe cu linie ce re l ceput crcterele m= i cntinu cu urmtre descriere de flux su cu sfitul ntregii descrieri. n generl, vlrile cninute n descriere de nivel sesiune sunt vlbile pentru tte fluxurile cu excepi czului n cre sunt rescrise de vlre echivlent existent ntr- descriere unui flux. n cntinure prezint un exemplu de descriere unei sesiuni: v=0 =g.bell 877283459 877283519 IN IP4 132.151.1.19 s=Cme here,Wtsn! u=http://www.ietf.rg e=g.bell@bell-telephne.cm c= IN IP4 132.151.1.19 b=CT:64 t=3086272736 0 k=cler:mnhle cver m=udi 3456 RTP/VP 96 =rtpmp:96 VDVI/8000/1

Pgin 30 m=vide 3458 RTP/VP 31 m=plictin 32416 udp wb =rient:prtrit Cmpurile individule u urmtrele sensuri i trebuie s fie n cest rdine cu crcterul * indicnd un cmp pinl: v= versiune prtclului = cretrul i identifictrul sesiunii s= numele sesiunii i=* infrmii despre sesiune u=* link-ul (URI) descrierii e=* dres de e-mil p=* numr de telefn c=* infrmii despre mdul de cnectre b=* infrmii despre bnd un su mi multe infrmii de timp z=* mdifictr de timp cu vlre dependent de fusul rr k=* cheie de cdificre =* zer su mi multe tribute de sesiune zer su mi multe descrieri de fluxuri Fiecre infrmie de timp este frmt dintr-un cmp ce incepe cu crcterul t urmt de nc cmp pinl r. t= mmentul de timp cnd sesiune este ctiv r=* zer su mi multe mmente de timp cnd se repet sesiune Fiecre descriere de flux exte frmt din cmpul ce re l nceputul liniei crcterul m i din lte cmpuri pinle ce furnizez infrmii n plus: m= numele fluxului i dres de trnsprt i=* titlul fluxului c=* infrmii despre mdul de cnectre b=* infrmii despre bnd k=* cheie de cdre =* zer su mi multe tribute le fluxului Cmpurile ci din descriere de nivel sesiune se plic tuturr fluxurilr cu excepi czului n cre sunt rescrise de cmpurile cu celi nume din descrierile fluxurilr.

3.2.3 SP (RFC 2974)


cest prtcl este flsit pentru fce cunscute unui public lrg, cnferinele multicst i lte tipuri de sesiuni multicst. Un emitr SP trimite n md multicst n md peridic pchete de infrmre, flsind drese de multicst i prturi cunscute. Un sculttr SP fl de utiliztrii vizi de trnsmisi multicst flsind prtclul Multicst Scpe Zne nnuncement Prtcl.

Pgin 31 Emitrul SP nu este cntient de prezen su bsen sculttrilr SP. Un nun SP este trimis viznd ceii utiliztri c i sesiune pe cre nun, sigurnd c receptrii nunului pt fi receptri psibili i sesiunii nunte. Dc sesiune flsete drese n mi multe zne dministrtive, este necesr ce emitrul SP s trimit cpii identice l nunului pentru fiecre zn dministrtiv. Emitrii SP multiplii pt nun ceii sesiune, fpt ce jut l rbustee prtclului n f pierderii de pchete su defectrii emittrelr SP. Durt de timp ce exist ntre du nunri celeii sesiuni este les stfel nct bnd ttl flsit de tte nunurile unui singur grup SP s rmn limit precnfigurt. Fiecre emitr SP r trebui s sculte celellte nunuri pentru determin numrul ttl de sesiuni nunte pentru un grup prticulr. SP cnine mecnisme pentru sigur integritte nunurilr de sesiuni, pentru utentificre riginii unui nun i pentru cdre nunului. Frmtul pchetului SP pentru versiune 4 prtclului IP este prezentt n figur 9. Cmpul tipul mesjului (T) indic dc cest pchet nun sesiune su terge un nun. Un bit (E) indic dc srcin pchetului este cdt su nu i un bit (C) indic dc su nu infrmi din cest pchet este cmprimt. Cmbini infrmiilr din cmpurile identifictrul mesjului i surs nunului r trebui s furnizeze un identifictr unic l nunului cre pte fi flsit pentru identific versiune prticulr unei sesiuni. cest lucru este binevenit n czul n cre se memrez nunurile su pentru ignr pchetele cre nu u putut fi decriptte. Derece cest identifictr nu este grntt fi unic, trebuiesc flsite lte metde diinle cum r fi verificre lungimi pchetelr i chir verificre n md peridic cninutului pchetelr. nunurile SP pt fi utentificte flsind semntur digitl infrmiei trnsprtte de pchet, flsind cmpul de utentificre pinl. De semene ceste pt fi i cdte. Ttui, cest lucru nu nsemn c mdul stndrd de inii cnferin privt ntr- ree de mri dimensiuni este prin nunre ei cu jutrul pchetelr SP cdte pentru cest scp prtclul SIP este mi util. Principl utilizre nunurilr SP r trebui s fie n reelele de tip intrnet unde pt dernj puin utiliztri su pentru sesiunile frte mri unde utiliztri sunt fcturi pentru prticipre l cnferin. Derece este ur pentru un utiliztr de re credin s rspndesc cheie SP este necesr lure de msuri suplimentre pentru ccesul prticipnilr l cnferin. SP trebuie flsit pentru sesiuni de interes public unde prticipni nu sunt cunscui n prelbil. Dc se cunsc invitii un mecnism mi bun este invitre lr explicit flsind SIP. Detlii se pt bine cnsultnd RFC 2974 [8]

Pgin 32

Figur I.9 Pchetul SP

3.2.4 Entitile SIP i definiii


SIP reprezint stndrdul IETF pentru stbilire cnexiunilr VIP. Prtclul de Iniilizre Sesiunilr este un prtcl de cntrl l nivel plicie (de semnlizre) pentru crere, mdificre i nchidere sesiunilr cu unul su mi muli prticipni. ceste sesiuni includ cnferine multimedi prin Internet, peluri telefnice prin Internet i distribuii multimedi. Prticipnii ntr- sesiune pt cmunic prin multicst, printr- ree de cnle unicst su printr- cmbini cestr du mduri. rhitectur SIP este similr cu cee prtclului HTTP. Cererile sunt generte de ctre client i trimise serverului. ceste prcesez cererile i trimite un rspuns clientului. cerere i rspunsul crespunztr frmez trnzcie. SIP re mesjele INVITE i CK cre definesc prcesele de deschidere de cnle sigure prin cre mesjele de cntrl le pelului pt fi trimise. Prtclul fce frte puine presupuneri cu privire l prtclul de trnsprt. El nsui sigur sigurn trnsprtului i nu se bzez pe TCP pentru cest. SIP se bzez de SDP (Prtclul de Descriere l Sesiunilr) pentru negciere cdecurilr dispnibile. Prtclul de Iniilizre Sesiunilr flsete descrieri de sesiuni pentru permite prticipnilr punere de crd supr unr tipuri de medi cmptibile. cest prtcl sprijin mbilitte utiliztrului prin existen funciilr de tip prxy i de ndrumre rspunsurilr spre lci curent utiliztrului. SIP sigur urmtrele fze din stbilire i nchidere unei cmunicii (RFC 3261): Gsire utiliztrului: determinre terminlului cre v fi flsit pentru cmunicie; Determinre strii utiliztrului: prtclul pte determin dc un utiliztr este dispnibil s rpund l un pel su nu; Determinre cpcitilr de cmunicre: pte fl cre sunt tipurile de medi i prprietile cestr, ce pt fi flsite n timpul cmuniciei. Stbilire sesiunii: nunre prilr prticipnte i stbilire prmetrilr l mbele cpete le sesiunii;

Pgin 33 Mngementul sesiunii: include trnsferul i nchidere sesiunii, mdificre prmetrilr i invcre de servicii. cum m mi spus SIP nu este un sistem de cmunicie cmplet. cest este mi degrb cmpnent cre pte fi flsit mpreun cu lte prtcle IETF pentru frm rhitectur multimedi cmplet. n md nrml cest rhitectur v cuprinde prtcle c RTP (RFC 1889) pentru trnsprtul dtelr de timp rel i pentru furniz un feedbck n privin clitii serviciilr, RTSP (RFC 2326) pentru cntrlul trnsprtului fluxurilr medi, Prtclul pentru cntrlul gtewy-urilr medi (MEGC Medi Gtewy Cntrl Prtcl RFC 3015) pentru cntrlul gtewy-urilr ce sunt l mrgine reelelr de pchete i fc legtur cu reelele cu cmutie de circuite i SDP (RFC 2327) pentru descriere sesiunilr multimedi. De cee, SIP trebuie flsit n cnjuncie cu lte prtcle pentru furniz servicii cmplete utiliztrilr. Ttui, funcinre prtclului nu depinde de nici-un prtcl. SIP nu furnizez servicii. n schimb, SIP flsete primitive cre pt fi flsite pentru implement diferite servicii. De exemplu SIP pte lcliz un utiliztr i trimite l ce lcie ctev pchete de dte. Dc cest primitiv este flsit pentru trimite descriere de sesiune tunci, de exemplu, cele du terminle pt cnveni supr prmetrilr sesiunii. Dc ceei primitiv este flsit pentru trimite ftgrfie pelntului n celi md c descriere sesiunii, tunci un serviciu de identificre pelntului pte fi ur de implementt. Cum rtt cest exemplu, singur primitiv este flsit pentru furniz diferite servicii. SIP nu fer servicii de cntrl cnferinelr cum r fi cntrlul vrbitrului curent (flr cntrl) su vtre i nu indic cum r trebui cndus cnferin. cest prtcl pte fi flsit pentru inii sesiune cre flsete un lt prtcl de cntrl l cnferinelr. Derece mesjele SIP i sesiunile stbilite cu ceste nu pt trece prin reele cmplet diferite, SIP nu pte i nu fer nici mdlite prin cre s se sigure rezervre de resurse. Din cuz nturi infrmiilr trnsmise sigurn cestr este imprtnt. n cest scp, prtclul pte fi flsit pentru se implement servicii de securitte ce includ prevenire tcurilr de tip denil-f-service, utentificre, prteci integritii i cdre. ninte de prezent entitile i mdul de perre l prtclului este necesr precizre unr niuni: Client: un prgrm plicie cre trimite cereri SIP. Clienii pt su nu pt intercin cu un utiliztr umn. Server: Un server este un prgrm plicie cre ccept cereri pentru le prelucr i trimite npi rspunsuri l ceste cereri. pel: un pel cnst din ti prticipnii dintr- cnferin inviti de surs cmun. Un pel SIP este identifict de ctre un identifictr unic. stfel, dc un utiliztr este invitt l ccei sesiune multicst de ctre persne diferite, fiecre din ceste invitii este un pel unic. cnversie telefnic prin Internet punct l punct reprezint un singur pel SIP. Cnexiune: cnexiune ce servete cnversie este identifict printr- cmbinie de cmpuri: identifictrul pelului, dresele prticipnilr i vlrile cmpurilr Frm(De l) i T(Spre). vnd ceei identifictr l pelului, cererile ce u cmpurile cu vlrile Spre i De l B prin celeii cnexiuni c i cererile ce u cmpurile cu vlrile Spre B i De l , din direcie pus. Sesiune: n specifici SDP sesiune multimedi reprezint un set de trnsmitri i receptri i fluxurile de dte ce sunt ntre ceti. cnferin multimedi este un exemplu de sesiune. Dup cum s- mi spus un pelt pte fi invitt l ceei sesiune de mi multe ri. Dc se flsete SDP, sesiune este definit de

Pgin 34 cnctenre numelui utiliztrului, identifictrul sesiunii, tipul reelei, tipul dresei i elementele de dres din cmpul rigine din ntet. Trnzcie SIP: re lc ntre un client i un server i cnine tte mesjele de l prim cerere trimis de client server-ului pn l ultimul rspuns trimis de server ctre client. trnzcie este identifict, ntr- cnexiune, de numrul de secven Cseq. Cmpnentele rhitecturii SIP sunt: gentul utiliztrului: este plicie ce cnine tt un gent client ct i un gent server. Clientul este gentul ce trimite pelurile ir serverul este cel cre le primete. Server prxy: este un prgrm intermedir ce funcinez tt c server ct i c client cu scpul de fce su retrimite cereri din prte ltr clieni. Server de ndrumre: reprezint server-ul cre ccept cerere SIP i sciz unui client mi multe drese l cre pte fi gsit. Spre desebire de server-ul prxy, cest nu trimite mesjul mi deprte. n schimb, trimite nu dres gsit clientului cerndu-i cestui s retrimit mesjul cl. Server de lclizre: este flsit de ctre un server prxy su de ndrumre pentru bine infrmii despre lciile psibile le unui pelnt. Prxy utbund : este prxy-ul ce este lclizt prpe de rigine unei cereri. Primete tte cererile unui gent client, incluznd i cele cre nu i sunt dreste. Prxy-ul trimite ceste cereri, dup prcesri lcle, l dresele din ntete. Registrtr: este un server ce ccept cererile de nregistrre REGISTER. Mnitrizez utiliztrii n interirul dmeniului de ree signt. Este n md tipic pus n cei lcie cu un server prxy su de ndrumre i pte fce c infrmiile ce le deine s fie dispnibile. ceste sunt elemente seprte lgic i nu sunt implementri fizice distincte. Nu este delc un fenmen nebinuit de gsi servere prxy, de ndrumre i registrtri cre rulez n cdrul unei singure cnversii. n czul unei sesiuni SIP tipice, mesjele trimise de un gent trec prin unul su mi multe servere prxy, dup cre jung l unul su mi muli geni SIP. Cu tte ceste, nu este exclus nici relizre unei cmunicii directe (fr intermediri) ntre genii SIP. De fpt este un fenmen de cmunicie frte nrml cel n cre dr prim cerere de cmunicie trece prin serverele prxy, dup cre tte celellte mesje vr fi schimbte direct ntre geni.

3.2.5 Mdul de perre SIP


pelnii i peli sunt identifici prin drese SIP. Cnd relizez un pel SIP, un pelnt trebuie s lclizeze mi nti server-ul crespunztr i s-i trimit cerere. Pentru fi invitt i identifict prte pelt trebuie s ib un nume. SIP flsete un identifictr de tip e-mil de frm utiliztr@dmeniu, utiliztr@gzd, utiliztr@dres IP su numr de telefn@ gtewy din cuz c cest md de dresre este cel mi rspndit n Internet. Flsind dres de e-mil c dres SIP, cest prtcl furnizez metde sclbile prin cre un gent client l utiliztrului pte furniz cerere ctre un server SIP. pelntul pte fl unde s trimit cerere flsind serverele DNS. Prin relizre unei serii de intergri DNS (Dmin Nme Server) de ctre cel ce vre s iniieze cnvrbire se pte determin dres server-ului ce re sub cntrl un numit dmeniu. dres de tip e-mil permite c dresele SIP s fie ur trnsfrmte n infrmii de tip URI (Unifrm Resurce Identifiers) cum r fi sip: tedr@cnstntin . vntjul cestui fpt este c ceste infrmii pt fi ur intrduse n pgini Web, stfel nct plin psre cu muse-ul pe

Pgin 35 link-ul crespunztr iniiz un pel ctre ce dres, ntr-un md semntr cu link-urile pentru trimitere unui e-mil de genul mil t : URL. Un server de ree SIP pte trimite pelul ctre lte servere, jungnd ntr-un finl l unul cre tie sigur dres IP unde utiliztrul pte fi gsit. Prcesul de determinre urmtrului hp se numete rutre next hp. C un rezultt l deciziilr lute n urm rutrii, un server de ree SIP pte junge l cncluzi c l un utiliztr se pte junge prin mi multe servere dicente. n ceste czuri, SIP permite unui server prxy s creeze mi multe cpii dintr cerere recepint i s trimit pe mi multe ci prlele spre serverele dicente. n cndiii nrmle, fiecre server v gener un rspuns; SIP re reguli definite pentru cnctenre rspunsurilr i trimitere cestr l gentul client. dt ce lclizre server-ului s- ncheit, clientul pte trimite cereri ctre cest. cerere mpreun cu rspunsul crespunztr frmez trnzcie SIP. Cerere pte fi trimis prin cnle TCP sigure su prin UDP. Dc se flsete un prtcl sigur, cerere i rspunsurile dintr- singur trnzcie SIP sunt trnsprtte pe ceei cnexiune. Mi multe cereri SIP de l celi client ctre celi server pt fi trnsmise pe ceei cnexiune su se pte flsi cte cnexiune pentru fiecre cerere. Dc un client trimite cerere printr-un prtcl de dtgrme n md unicst de tipul UDP-ului, gentul ce recepinez trimite rspunsul cnfrm infrmiei cninut n cmpul Vi din ntetul cereri. Fiecre server prxy de pe cle urmt de cerere trimite rspunsul flsind celi cmp Vi. Pentru prtclele de dtgrme, sigurn trnsmisiei se bine prin retrnsmisii. invitie SIP ncununt cu succes cnst din du cereri: un INVITE urmt de CK. Cerere INVITE cere peltului s intre ntr- cnferin nume su s stbilesc cnversie. Dup ce peltul cceptt s prticipe, pelntul cnfirm c primit rspunsul prin trimitere unei cereri CK. Cerere INVITE cnine descriere sesiunii cre i furnizez peltului destule infrmii pentru se intr n sesiune. Dc peltul drete s ccepte pelul, rspunde invitiei prin trimitere unui rspuns cu descriere similr sesiunii. Dup ce peltul cceptt s prticipe, pelntul cnfirm c primit rspunsul prin trimitere unei cereri CK. Un pelt pte s i schimbe pzii n timp. ceste lcii pt fi n md dinmic nregistrte l un server SIP. Cnd un server SIP este intergt despre pzii peltului, cest ntrce list cu psibilele lcii. De fpt un server de lclizre din siestemul SIP generez list i psez serverului SIP. r pute exist situi n cre suntem nevii s schimbm prmetrii unei sesiuni existente. cest se pte reliz prin retrimitere cererii INVITE flsind celi identifictr de pel (cmpul Cll ID celi) dr cu un nu crp l mesjului. Cerere trebuie s ib un numr de secven Cseq mi mre dect cel vut de ultim cerere clientului ctre server.

3.2.6 Prprietile prtclului SIP


Este un prtcl cu stri de durt mic. sesiune n cre vem cnferin su un pel cnst un su mi multe trnzcii cerere-rspuns SIP. Fiecre dintre ceste pt prcurge rute diferite prin server-ele din ree. ntr-un pel binuit, cerere este de tipul INVITE i pte prcurge mi multe server-e de ree n drumul ei pn l pelt. Rspunsul l cest cerere cnine dres mnunit cre pte fi flsit de gentul client pentru trimite cererile urmtre direct ctre gentul server. Derece server-ele de ree SIP nu trebuie s menin stre pelului i dup ce trnzcie s- ncheit, ceste nu dein infrmii despre pelnt su pelt. cest crcteristic fcilitez sclbilitte i sigurn unui server SIP, derece se pte blc fr c s fecteze trnzciile iniite prin el. Durt i numrul strilr meninute ntr-un server sunt

Pgin 36 mici n cmprie cu cele din reeu de telefnie clsic, unde centrl trebuie s menin stre unui pel pentru ntreg durt cestui. Ttui un server ce drete s cunsc stre unui pel pte menine stre unui pel pe ntreg durt cestui. Prin intermediul cmpurilr Rute(rut) i RecrdRute(rut inregistrt) din ntetul mesjelr SIP, fiecre prxy pte ,n md individul, insist s fie pe cle urmt de trnzciile urmtre. Mi mult, prxy-ul se pte rzgndi i se pte scte de pe cle de semnlizre. Un server de ree SIP nu trebuie s ib stri nici chir pe durt trnzciilr. Un server prxy su de ndrumre pte fi cmplet fr stri. Dup ce primete cerere, cest ri generez un rspuns ri trimite cerere mi deprte i uit tt. Mesjele cnin tte infrmiile necesre pentru c un server prxy s le prceseze i s l ruteze. cest md de funcinre crespunde rhitecturii bzte pe dtgrme din Internet, unde pchetele cnin infrmii suficiente pentru fi rutte n md individul. n plus, un prxy cu stri pte deveni fr stri n rice mment fr fect mdul de funcinre l prtclului. dministrtrul decide n privin fiecrui pel dc un prxy v fi cu stri su fr. cest flexibilitte permite existen unr servere de mri dimensiuni pziinte centrl n ree cre sunt fr stri. Pemite i existen unr servere mi mici cu stri pziinte spre periferi reelei. Prtclul este neutru din punctul de vedere l prtclelr de nivele inferire. SIP fce presupuneri minime supr prtcllelr de trnsprt i de nivel ree. Nivelele inferire pt furniz servicii ce se bzez pe pchete su fluxuri de ctei i pt fi su nu sigure. n cntextul Internetului, SIP pte utiliz i UDP i TCP c prtcle de trnsprt. UDP permite pliciei s cntrleze mi ur mmentul trimiteri mesjelr i retrnsmisi cestr, s relizeze cutri prlele i s flsesc trnsmisie n md multicst. Ruterele pt lucr mi repede cu pchete SIP UDP. TCP permite trecere cu uurin prin cmpnentele de tip firewll existente. Cnd este flsit TCP, SIP pte flsi un su mi multe cnexiuni pentru ncerc s cntcteze un utiliztr su s mdifice prmetri unei cnferine dej existente. Cereri diferite SIP pentru celi pel SIP pt flsi cnexiuni TCP diferite su un singur, dup preferin. SIP pte fi flsit cu prtclele din Internet l fel cum pte fi flsit i cu prtcle c L5 de l TM, IPX, Frme Rely su X.25. genii utiliztrului r pute implement i UDP i TCP. Serverele prxy, de ndrumre, registrtrele trebuie s implementeze i UDP i TCP. Prtclul se bzez pe text. SIP flsete c frm de cdre UTF-8. cest fpt permite implementre ur n limbje cum r fi Jv, Tcl su Perl, permite gsire i crectre greilr de prgrmre cu uurin i cel mi imprtnt fce c SIP s fie un prtcl flexibil i extensibil. Cum SIP este flsit n principl pentru iniiere cnferinelr multimedi dect pentru trnsferul dtelr multimedi, se cnsider c prcesre n plus existent din cuz flsirii unui prtcl bzt pe text nu este imprtnt.

3.2.7 Mesjele SIP


cum m mi spus mi devreme SIP este un prtcl bzt pe text. Sintx mesjelr i cmpurile din ntet sunt identice cu specifici HHTP/1.1. Un mesj SIP este su cerere su un rspuns. cerere este genert de un client i un rspuns este genert de un server. Mesjele cerere i rspuns flsesc frmtul mesjului generic din RFC-ul 822 pentru trnsferul crpului unui mesj. mbele tipuri de mesje cnst dintr- linie de strt, unul su mi multe linii de ntet, linie gl (dic linie ce nu ere nimic ninte crcterului CRLF ce indic terminre unei linii) ce vertizez c s-u termint liniile din ntet i pinl crpul mesjului. Frmtul mesjului cerere este expus n cntinure: Cerere: linie de cerere *(ntet generl | ntet cerere | ntet crp mesj)

Pgin 37 CRLF [crpul mesjului] unde lini de cerere este frmt din cmpurile: linie de cerere : metd SP identifictrul de tip URI l sursei SP Versiune SIP CRLF cu urmtrele semnificii: Cmpul metd pte urmtrele vlri: INVITE | CK | PTINS | BYE | CNCEL | REGISTER | metd extins Cmpul versiune SIP : SIP/2.0 Cmpul SP: (spiu liber) Mesjele SIP flsete cmpurile ntetului pentru specific diferite infrmii despre prticipni, cle de urmt i ltele. ceste cmpuri sunt semntre cu cele de l HTTP n sintx i semntic. rdine n cre pr nu re n generl nici- imprtn, cu excepi cmpurilr ce sunt intrduse ntre server-e. Unele cmpuri din ntet sunt flsite n tte mesjele i ltele dr cnd sunt necesre. plicie ce implementez SIP nu trebuie s neleg tte cpurile, dr r fi de drit s pte fce. Dc un prticipnt SIP nu nelege un ntet l pte ignr. Numrul ttl de cmpuri n ntetul SIP este 44 i pt fi mprite n ptru grupuri: Cmpurile ntetului generl ce exist i n cereri i n rspunsuri. Cmpurile ntetului crp mesj ce definesc infrmi despre crpul mesjului su dc cest nu este prezent tunci despre resurs identifict de cerere. Cmpurile ntetului cerere ce permit clientului s trimit infrmii n plus despre cerere i despre el nsui, server-ului. Cmpurile ntetului rspuns ce cnin infrmiile despre server i despre ccesul l resurs identifict de URI din cerere. n cdrul ntetului generl se fl urmtrele cmpuri mi imprtnte: Cll-ID (identifictrul pelului; de exemplu CllID:12ef-56c4-235de@hme.r) este flsit n multe scpuri. n cdrul cererilr de nregistrre i de binere prmetrilr unui server este flsit pentru recunte rspunsurile crespunztre cererilr. Pentru cererile de invitre i de nregistrre este flsit i pentru detect cpiile cestr cereri.Cererile INVITE succesive cu celi CllID dr cu prmetrii diferii pt fi flsite pentru schimb n md dinmic prmetri ntr- cnferin. Prim prte din identifictr trebuie s fie unic pentru fiecre gzd ir ultim prte, un dmeniu su dres IP gzdei, l fce unic n tt reeu. Un nu CllID trebuie genert pentru fiecre nu pel. Cseq (Cmmnd Sequence, de exemplu Cseq: 1234 INVITE) trebuie s existe n fiecre cerere. Este frmt din un numr de secven fr semn i numele metdei. ntr-un pel, numrul de secven este incrementt cu fiecre nu cerere (cu excepi situiei n cre cerere este retrnsmisi unei lte cereri) i re l nceput vlre letre. Serverul trebuie s cpieze vlre cestui cmp n tte rspunsurile ce sunt determinte de cerere ce l cnine. Frm (de exemplu Frm: te<sip:te@hme.r>). cest cmp trebuie s fie prezent n tte cererile i rspunsurile. Cnine numele utiliztrului ce pte fi fit n interf grfic (prte ce pte s lipsesc) i dres de unde plect cerere. Infrmii n plus pt fi dugte. Trebuie spus c cest cmp este cpit n rspunsuri i stfel cmpul Frm din rspuns nu-l indic pe cel ce l trimis. T (de exemplu T: mihi<sip:hme@yh.cm>; tg=287747). cest cmp trebuie s fie prezent i n cereri i n rspunsuri i indic destini drit cereri. Este cpit n

Pgin 38 rspuns. Vlre cmpului tg identific destini n czul n cre un identifictr URI SIP se indic mi multe terminle psibile. n czul cestei situii n rspunsuri se intrduce cest cmp tg cu vlre letre pentru se pute distinge ntre mi multe terminle. Vi (de exmplu Vi: SIP/2.0/UDP/PXY1.furnizr.r; received 10.0.0.3). Cmpul Vi este flsit pentru nregistr rut urmt de ctre cerere, pentru permite server-elr SIP intermedire s trimit rspunsurile pe ceei rut. Pentru reliz cest lucru fiecre server prxy dug n ntet un nu cmp Vi l cele existente. Receptrul unei cereri pte dug prmetri pinli, de exeplu pentru indic c primit cerere de l dres cre nu se fl n ultimul cmp Vi. Flsind cest infrmie un server prxy pte trimite rspunsul ctre trnsmitrul riginl, chir dc pe rut dintre ei se fl un dispzitiv NT ce trnsltez dresele de ree. Cnd prmetrul mddr ce indic existen unei drese multicst este prezent n cmpul Vi, rspunsul este trimis flsind trnsmisie multicst l dres specifict dup mddr i timpul de vi este stct n prmetrul ttl. Existen cestui cmp rt c SIP fst priectt vnd n vedere prblemele IP. Encryptin (de exemplu: Encryptin: PGP versin=2.6.2,encding=scii). cest cmp indic c crpul mesjului i psibil numite mesje din ntet sunt cdte. ntetul ce se refer l crpul mesjului cnine urmtrele cmpuri: Cntent-Type (de exemplu Cntent-Type: pplictin/sdp). cest descrie tipul infrmiei din crpul mesjului. n eemplul dt, ntetul este urmt de descriere unei sesiuni n frmt SDP. Un lt exemplu de vlre psibil este text/html. Cntent-length. Indic numrul de ctei l crpului mesjului. Cmpurile ce pr numi n mesjele de cerere sunt cninute n ntetul cerere i u urmtre semnificie: ccept (de exemplu ccept: pplictin/sdp, text/html). cest cmp pinl indic ce tipuri de infrmii sunt permise n rspuns. Sintx este specifict n RFC-ul 1288. ccept-Lnguge (de exemplu ccept-Lnguge: fr, en-gb; q=0.8, en; q=0.7). cest indic n ce prefer pelntul s se vrbesc. Sintx este de semene prezentt n RFC 1288. Expires (flsit l mesjele INVITE i REGISTER; de exemplu Expires: Thu, 01 Dec 2004 16:00:00 GMT su Expires: 5 n secunde). Pentru un mesj de nregistrre, cest cmp indic pentru ct timp nregistrre v fi vlid. nregistrtrul pte scurt cest perid n rspunsul su. Pentru un mesj de invitre, cest cmp pte fi flsit pentru limitre durtei de cutre. Pririty (de exemplu Pririty: emergency). Vlrile psibile sunt cele indicte n RFC 2076 plus emergency. Recrd-Rute (flsit de semene i n mesjele de rspuns; de exemplu Recrd-Rute: sip:centrl.hme.r;mddr=192.190.123.234;sip:fcturre.firm.r;mddr=192.194.126. 23). Unele server-e prxy pt dug elemente ni l cest cmp dc vr s fie pe cle urmt de semnlizri. n exemplul dt cerere trecut printr-un prxy de fcturre i pi printr- centrl. semene entiti trebuie s mnitrizeze stre pelurilr pentru -i indeplini scpul. Subject (de exemplu Subject:Cnferin despre SIP). cest cnine text fr sintx bine definit i re c scp infrmre peltului despre ce v fi vrb n pel. Metdele SIP sunt listte mi js:

Pgin 39 INVITE: cerere INVITE invit un utiliztr su un serviciu s prticipe ntr- sesiune. Crpul mesjului cnine descriere mesjului. CK: cerere CK cnfirm c pelntul primit un rspuns finl l cerere INVITE, cnfirm un rspuns firmtiv. PTINS: cest metd se cup cu infrmiile privind crcteristicile prticipnilr i fl crcteristicile receptrului. BYE: cerere BYE nchide un pel su termin cerere de pel, putnd fi trimis i de pelnt i de pelt. CNCEL: cerere CNCEL termin cerere de pel nerezlvt dr nu fectez pelurile ce sunt n desfurre. REGISTER: metd REGISTER este flsit pentru nregistr lci curent utiliztrului. cest metd este flsit i tunci cnd sunt mi multe server-e SIP pe un singur clcultr. n cest cz dr un singur server pte flsi prtul scit SIP. INF: reprezint infrmi din timpul pelrii cum r fi tnurile DTMF. PRCK: este cnfirmre prvizrie. lte metde r mi pute fi CMET, SUBSCRIBE i NTIFY. Metdele cre nu sunt recunscute de server-ele prxy su de ndrumre sunt trtte c fiind metd PTINS i trimise c tre. Metdele cre nu sunt recunscute de un gent server su un registrtr prvc un rspuns de tipul 501 Server Filure (erre server). ntetul pte fi urmt de un crp l mesjului seprt de cest printr- linie gl (lb). Pentru cererile CK, INVITE i PTINS crpul este mereu descriere unei sesiuni. Cmpul Cntent-Type trebuie s cnin tipul infrmiei. n eemplele dte tipul crpului mesjului este Sessiun Descriptin Prtcl. Dup ce primit i interprett mesjul, sistemul rspunde cu un mesj de rspuns SIP. Lini de stre cestui este frmt din versiune SIP, cdul ce indic rspunsul i frz de mtivre rspunsului. cest frz este descriere textul scurt cdului. Frmtul rspunsului este rtt n cntinure: Rspuns: linie de stre *(ntet generl | ntet rspuns | ntet l crpului mesjului) CRLF [crpul mesjului] Linie de stre= versiune SIP SP cdul SP frz de mtivre CRLF Cdul= Infrminl | Succes | ndrumre ctre lte drese| Erre client | Erre server | Erre glbl | Cd extins (3 cifre) Frz de mtivre= text cdt UTF-8, fr CR, LF Cdul este un numr ntreg frmt din trei cifre, prim cifr indicnd tipul rspunsului: 1XX : Infrminl: indic c s- primit cerere i prcere cestei cntinu. cest nu este un rspuns definitiv spre desebire de restul. Exemplu: 180 RINGING (Sun). 2XX : Succes: rspunsul rt c s- primit cerere, fst neles i cceptt. Exemplu: 200 K. 3XX :ndrumre ctre lte drese: trebuie s se fc perii n plus pentru c cerere s fie ndeplinit. Eemplu: 302 MVED TEMPRRILY (mutt temprr). 4XX : Erre client: cerere cnine greeli de sintx su nu pte fi ndeplinit l cest server. Exemplu: 404 NT FUND (nu s- gsit destini drit). 5XX : Erre server: serverul nu pte s ndeplinesc cerere ce pre vlid. Exemplu: 501 NT IMPLEMENTED (nu este implementt ciune cerut)

Pgin 40 6XX : Erre glbl: Cerere nu s- putu ndeplini l nici un server. Exemplu: 600 BUSY EVERYWHERE (cupt peste tt). cest md de clsificre permite dugre de ni cduri frte ur. Cnd un terminl mi vechi primete un rspuns ce re un cd CXX pe cre nu-l cunte, cest l trtez c fiind C00. stefel i cele mi vechi terminle pt recin inteligent tunci cnd se cnfrunt cu cduri necunscute. ceste pt d infrmii diinle utiliztrului dc frz de mtivre este prezent.

3.2.8 Exemple de peluri SIP


3.2.8.1 pel prpriu-zis n exemplul urmtr se v prezent mesjele schimbte ntre du terminlele tunci cnd Te vre s-l sune pe Mihi. Te indic fptul c pte primi prin RTP udi cdt 0 (PCM), 3(GSM) i 4(G.723). Prte scris cu itlic reprezint crpul mesjului.

C->S: INVITE sip:di@bucuresti.rm-tel.cm SIP/2.0 Vi: SIP/2.0/UDP cell.rm-tel.cm Frm: Te<sip:Te@criv.rm-tel.cm>;tg=3 T: di<sip:di@bucuresti.rm-tel.cm> Cll-ID: 662606876@cell.rm-tel.cm CSeq: 1 INVITE Cntct: <sip:Te@criv.cell.rm-tel.cm> Subject: di, vin repede. Cntent-Type: pplictin/sdp Cntent-Length: ... v=0 =rm 53655765 2353687637 IN IP4 128.3.4.5 s= di, vin repede. t=3149328600 0 c=IN IP4 cell.rm-tel.cm m=udi 3456 RTP/VP 0 3 4 =rtpmp:0 PCMU/8000 =rtpmp:3 GSM/8000 =rtpmp:4 G723/8000 S->C: SIP/2.0 100 Trying Vi: SIP/2.0/UDP cell.rm-tel.cm Frm: Te<sip:Te@criv.rm-tel.cm>;tg=3 T: di<sip:di@bucuresti.rm-tel.cm> ;tg=37462311 Cll-ID: 662606876@cell.rm-tel.cm CSeq: 1 INVITE Cntent-Length: 0 S->C: SIP/2.0 180 Ringing Vi: SIP/2.0/UDP cell.rm-tel.cm

Pgin 41 Frm: Te<sip:Te@criv.rm-tel.cm>;tg=3 T: di<sip:di@bucuresti.rm-tel.cm> ;tg=37462311 Cll-ID: 662606876@cell.rm-tel.cm CSeq: 1 INVITE Cntent-Length: 0 S->C: SIP/2.0 182 Queued, 2 cllers hed Vi: SIP/2.0/UDP cell.rm-tel.cm Frm: Te<sip:Te@criv.rm-tel.cm>;tg=3 T: di<sip:di@bucuresti.rm-tel.cm> ;tg=37462311 Cll-ID: 662606876@cell.rm-tel.cm CSeq: 1 INVITE Cntent-Length: 0 S->C: SIP/2.0 182 Queued, 1 cller hed Vi: SIP/2.0/UDP cell.rm-tel.cm Frm: Te<sip:Te@criv.rm-tel.cm>;tg=3 T: di<sip:di@bucuresti.rm-tel.cm> ;tg=37462311 Cll-ID: 662606876@cell.rm-tel.cm CSeq: 1 INVITE Cntent-Length: 0 S->C: SIP/2.0 200 K Vi: SIP/2.0/UDP cell.rm-tel.cm Frm: Te<sip:Te@criv.rm-tel.cm>;tg=3 T: di <sip:di@bucuresti.rm-tel.cm> ;tg=37462311 Cll-ID: 662606876@cell.rm-tel.cm CSeq: 1 INVITE Cntct: sip:di@bucuresti.rm-tel.cm Cntent-Type: pplictin/sdp Cntent-Length: ... v=0 =di 4858949 4858949 IN IP4 192.1.2.3 s=vin n curnd t=3149329600 0 c=IN IP4 cell.rm-tel.cm m=udi 5004 RTP/VP 0 3 =rtpmp:0 PCMU/8000 =rtpmp:3 GSM/8000 C->S: CK sip:di@ bucuresti.rm-tel.cm SIP/2.0 Vi: SIP/2.0/UDP cell.rm-tel.cm Frm: Te<sip:Te@criv.rm-tel.cm>;tg=3 T: di<sip:di@bucuresti.rm-tel.cm> ;tg=37462311 Cll-ID: 3298420296@cell.rm-tel.cm CSeq: 1 CK C->S: BYE sip:di@ bucuresti.rm-tel.cm SIP/2.0 Vi: SIP/2.0/UDP cell.rm-tel.cm Frm: Te<sip:Te@criv.rm-tel.cm>;tg=3 T: di <sip:di@bucuresti.rm-tel.cm> ;tg=37462311 Cll-ID: 3298420296@cell.rm-tel.cm CSeq: 2 BYE

Pgin 42 S->C: SIP/2.0 K Vi: SIP/2.0/UDP cell.rm-tel.cm Frm: Te<sip:Te@criv.rm-tel.cm>;tg=3 T: di <sip:di@bucuresti.rm-tel.cm> ;tg=37462311 Cll-ID: 662606876@cell.rm-tel.cm CSeq: 2 BYE Exemplul ilustrez flsire rspunsurilr infrminle. ici, recepi pelului este cnfirmt imedit (100), pi, dup ntrzieri dtrte unr prcesri n bz de dte, se indic sunre celuillt prticipnt (180) i pelul este pus ntr- cd, cu nunri peridice le situiei. di nu pte s primesc dect udi PCMU i GSM. De bservt c list de cdecuri le lui di pte s diferere de ce lui Te derece fiecre prte trimite list cu cdecuri pe cre le pte flsi l recepie. di v trimite dtele udi l prtul 3456 l terminlului criv.rm-tel.cm ir Te l prtul 5004 l terminlului bucuresti.rm-tell.cm. Se cnsider c sesiune medi este sesiune RTP. stfel di v primi pchete RTCP pe prtul 5004 ir Te le v primi pe prtul 3457. Derece cele du pri u cnvenit supr setului de cdecuri ce vr fi flsite, Te cnfirm pelul fr trimite nu descriere de sesiune (CK). Pentru nchei cnversi, Te trimite un mesj BYE ctre di. 3.2.8.2 nregistrre Un utiliztr l min sturn.rm-tell.cm se nregistrez prin multicst l serverul lcl SIP numit rm-tell.cm. n exemplu, gentul utiliztrului de pe sturn se tept s primesc cereri SIP pe prtul UDP 3890. nregistrre expir peste du re. Tte invitiile ulterire primite pe dres Te@criv.rm-tel.cm ssite l server-ul SIP rm-tel.cm vr fi redirecinte ctre Te@sturn.rm-tel.cm, prtul UDP 3890. C->S: REGISTER sip:rm-tel.cm SIP/2.0 Vi: SIP/2.0/UDP sturn.rm-tel.cm Frm: <sip:Te@criv.rm-tel.cm>;tg=19 T: sip:Te@criv.rm-tel.cm Cll-ID: 70710@sturn.rm-tel.cm CSeq: 1 REGISTER Cntct: <sip:Te@sturn.rm-tel.cm:3890;trnsprt=udp> Expires: 7200

3.2.9 Mdul de perre

Pgin 43

Figur I.10. Mdul de perre prxy n figurile I.10 i I.11 se prezint cele du mduri n cre pte lucr prtclul SIP. stfel cmunici ntre un server i un client se pte fce direct ntre ceste du cum se prezint n figur 11 su prin intermediul unui prxy cum este prezentt n figur 10. Ultim situie este flsit tunci cnd se drete trifre utiliztrilr pentru serviciile ferite, mesjele tte trecnd prin server-ul prxy, dr i cnd se drete flsire serviciilr mi cmplexe [15].

Pgin 44

Figur I.11 Mdul de perre direct

3.2.10 Servicii vnste SIP


Fr extensii SIP fer numerse servicii de mngement le pelului. Multe din ceste fiind implementte cu jutrul registrtrilr SIP, server-elr prxy i de ndrumre. Registrtrul. Un registrtr este un server cre ccept cereri REGISTER. celi server pte implement i lte funcii SIP cum r fi un server prxy. Registrtrul este flsit pentru pstr lci curent unui utiliztr.dres IP unui utiliztr se pte schimb n mi multe situii este cnectt printr-un furnizr de Internet ce sigur drese dinmice, este cnectt printr- ree LN unde dresele se stbilesc prin DHCP (Dynmic Hst Cnfigurtin Prtcl) su un utiliztr ce flsete serviciul rming. Pentru pel cest utiliztr flsind dres lui SIP, entitte din reeu SIP trebuie s menin crespnden ntre dresele SIP i dresele IP. cest este scpul registrtrului. Pentru fcilit mbilitte utiliztrului i pentru evit cnfigurre mnul ct mi mult, SIP definete dres de multicst prin cre se pt cntct tte serverele SIP (sip.mcst.net 224.0.1.75). Un client pte nregistr dres IP curent flsind un mesj de nregistrre multicst. Din mi multe mtive, SIP limitez timpul de vi cestui mesj (TTL) l 1, stfel putndu-se descperi registrtri numi n reeu lcl. cest md de nregistrre este semntr cu metd de descperire gtekeeper-elr prezentt n H.323. Ttui, n H.323, gtekeeper-ele cre dresc s prei pelul pt rspunde , permind clientului s-l selecteze pe cel mi prprit i s-l cntcteze n md direct mi trziu. n prezent, server-ele SIP nu pt rspunde l un mesj cerere de nregistrre, de cee clientul nu re ns s fle dres celui mi prprit server, su chir s tie dc exist un server cre i cceptt nregistrre. Registrtrul pte fi de semene cntctt n md direct dc se cunte dres cestui. n cest cz prcedur este semntre c n czul ricrei cereri SIP.

Pgin 45 Stre registrtrului nu este permnent. Dc nregistrre nu este rectulizt cest v fi elimint dup r prin cnvenie (cest vlre pte fi mdifict cu jutrul cmpului expires). Pentru menine nregistrre, un terminl trebuie s trimit mesje de nregistrre n md peridic. Dc terminlul su utiliztrul se mut i dresc s mdifice prmetrii nregistrrii, ceti pt elimin nregistrre prin trimitere unui mesj cu vlre cmpului cntct egl cu crcterul * i pi prin trimitere unui nu mesj de nregistrre. Server prxy. Un server prxy se cmprt c un server pe prte (cceptnd cereri) i c un client pe cellt prte (trimind cereri). Un prxy pte trimite un mesj fr s-i schimbe destini finl, su pte s-i schimbe civ prmetrii ninte s- de- drumul. cest chir pte s trimit un rspuns genert lcl. cerere de l ctre B pte fi rutt prin mi multe server-e prxy. Este de drit c rspunsul s prcurg ceei rut. De exemplu, un pry se pte cup de fcturre pelului su de cntrlul unui firewll i trebuie s cunsc situi pelului. Cnd este flsit cnexiune TCP pentru trnzcie SIP, n md binui nu sunt prbleme derece rspunsul junge l celllt cpt n md utmt dtrit mdului de perre l prtclului TCP. Pe de lt prte, cnd se flsete UDP numite infrmi trebuie s existe pentru permite receptrului unei cereri s cunsc unde s trimit rspunsul. Derece prtclul SIP nu depinde de prtclul flsit, cest cnine cmpul Vi pentru rezlv prblem de mi sus. Existen cestui cmp jut i l evitre buclelr derece fiecre prxy verific dc nu este dej pe list din cmpul Vi. n fiecre mment cnd un prxy SIP trimite cerere din prte unui utiliztr, cest dug numele su n list de server-e prxy strbtute de cerere. Cnd un prxy trimite un rspuns, relizez prcesul invers i se terge de p ce list. Dc nu numi cererile i rspunsurile ci i tte cererile trebuie s prcurg ceei cle, cmpul Vi nu este suficient i server-ele prxy trebuie s flsesc cmpul Recrded Rute. cest din cuz c clieni SIP pt dug un cmp Cntct cre permite server-elr s le trimit rspunsurile direct i stfel nu este grntt pzii server-elr prxy pe rut tuturr cererilr. Cnd ceste rescriu cmpul Recrded Rute, dug identifictrul prpriu SIP URL cu dres de tip multicst (vnd prmetrul mddr) n prim pziie listei. Cnd server-ele prxy sunt flsite pentru rutre mesjelr de semnlizre, mdelul de pelre este semntr cu cel de l H.323 cnd se flsesc entitile gtekeeper pentru rutre, cu excepi c mesjele SIP cnin destule infrmii pentru se pute cnstrui server-e prxy fr stri (ttui nu tte funciile de bz pt fi implementte flsind entiti fr stri, cum r fi de exemplu fcturre, cz n cre trebuie s se in sub bservre mesjele schimbte i strile cmuniciei pentru verific ceren semnlizrii). Exist numite servere cre numite frking prxy ce trimit cpii unei cereri l diferite drese pentru ncerc s cntcteze mi multe terminle prinnd celeii persne. ceste nu sunt trnsprente i pt filtr unele rspunsuri ninte s l trimit npi clientului. ceste pt determin situi n cre un terminl primete cpii le celuii mesj cu celi CllID, cz n cre terminlul n cuz trebuie s rspund l fiecre cerere. Server de ndrumre. Un stfel de server rspunde l cerere INVITE cu un mesj de tipul 3XX su rejectez pelul cu un mesj de tipul erre client su erre server. Rspunsul 300 multiple chices (psibiliti multiple) pte fi flsit tunci cnd utiliztr identifict prim SIP URL-ul ce se fl n cerere pte fi cntctt l mi multe drese. ceste psibiliti sunt trecute n cmpul Cntct l rspunsului. Un exemplu pte fi: Cntct: sip: Te@servici.r,sip:Te@cs.r; Rspunsul 301 mved permntely (mutt definitiv) indic c utiliztrul identifict prin URL-ul din cerere nu mi pte fi cntctt l cest dres. Clientul r trebui s ncerce

Pgin 46 l dres furnizt n cmpul Cntct l rspunsului. cest cmp pte cnine de semene mi multe drese; Rspunsul 302 mved temprrily (mutt temprr) trimite (ndrum) clientul ctre nu lcie, l fel c rspunsurile precedente, dr pentru perid limitt de timp, indict prin vlre cmpului Expires; Rspunsul 380 lterntive service (serviciu lterntiv) este mi cmplex i pte pre redundnt f de rspunsurile precedente. Pe lng fptul c furnizez nu lcie n cmpul Cntct, rspunsul cnine de semene i descriere de sesiune n crpul mesjului ce reprezint cpcitile de emisie ni lcii. De l pelnt se tept c s trimit un mesj INVITE l cest nu lcie i s fere n descriere de sesiune cninut de mesj nite cpciti semntre (psibil cpie prmetrilr SDP din rspunsul 380, cu excepi prtului RTP pentru recepie). Server-ul de ndrumre pte fi flsit n cnjuncie cu un registrtr pentru ndrum pelurile ctre lci curent utiliztrului pelt. Pte fi flsit c i frm primitiv unui sistem de distribuie pelurilr. Un server de ndrumre pte fi i un mijlc de mbuntii sclbilitte distribuirii pelurilr su server-elr gent de pel. Intrdus pe rut flsit de mesje pte distribui pelurile l mi multe servere secundre stfel binndu-se ncrcre egl cestr. cest se pte reliz flsind prmetru mddr in cmpul Cntct stfel: <sip:dresriginl@cllcenter.cm:9999;mddr=drescentrl3.cllcenter.cm> Prin ntrcere cestei linii, server-ul indic pelntului c trebuie s trimit un mesj INVITE un mesj cu ceei destinie (dresriginl@cllcenter), dr l dres indict de prmtrul mddr. cest prmetrul indic pelntului s sr peste prcedur nrml de identificre unui server SIP crespunztr ce se cup de dmeniul din dres i s flsesc server-ul crui dmeniu fst furnizt cu dres mddr. Funcinre server-ului de ndrumre este similr cu rlul juct de ctre gtekeeeperul H.323 n mdul de lucru direct. Mterilul cnsultt pentru relizre cestui subcpitl fst crte IP telephny [2].

3.2.10.1 Lclizre utiliztrilr i mbilitte dresele SIP sunt numite unifrm resurce lctrs (URL). ceste sunt defpt texte ce indic nume de utiliztri su de server-e multimedi, cu excepi czului n cre dresele SIP flsesc drese IP. dresele SIP nu se refer l dresele de trnsprt ce vr fi flsite ci l entitte bstrct. Ce mi simpl frm este utiliztr@min dr pt exist frme n cre pr numere de telefn, prturi, nume de dmeniu i drese de IP. ceste frme sunt prezentte n tbelul urmtr: Te@netcentre.cm:1234 Dmeniuutiliztr.cm supprt@cmpny.fr:2345; dres SIP binuit Nu exist prte referitre l utiliztr, prtul v fi 5060 Se specific prtclul de trnsprt

Pgin 47 trnsprt=UDP 192.190.234.3:8001 supprt@netcentre.net; mddr=239.255.255.1;ttl=32 +33231759329@cybercll.cm; user=phne 0231759329;isub=10;pstd= w11p11@cybercll.cm; user= phne centrl@netcentre.net pririty= high&custmercde=1234 Nuvenit@reg.grupdeutiliztri . cm METHD=REGISTER Numr de telefn lcl cu subdres ISDN tept pentru tn, frmez numrul 11 (puz) 11 flsind tnuri DTMF Indic flsire ntetelr extinse pentru cntrlre priritii URL-urile treimitere precedente declnu Server-ul vre s fie cntctt l cest dres Se indic flsire dresei de trnsprt n lcul dresei SIP Numr de telefn vlbil n tt reeu

unui mesj de invitre; cest iniiz nregistrre l registrtrul grupului de utiliztri reg.grupdeutiliztri.cm

n cele mi multe situii dres SIP unui utiliztr v fi ceei cu dres s de e-mil. Cele mi multe extensi (ntete, mddr, etc.) nu sunt permise n cmpurile T i Frm, dr pt fi flsite n cmpul Cntct. SIP definete mdlite de lcliz un terminl fizic prnind de l un nume, dic de l un URL. cest se fce n du fze: n primul rnd URL-ul SIP permite teminlului ce drete stbilire unei legturi s lclizeze server-ul SIP. cest v fi destini mesjului iniil INVITE. cest server pte fi destini finl pelului; dc nu se presupune c tie dres de trnsprt terminlului drit; Dc sever-ul SIP nu este destini finl pelului, cest v ndrum cerere INVITE ctre terminlul cutt. cest pte fi fcut ri prin instruire terminlului pelnt s trimit nu invitie l lt lcie flsind rspunsul 302, ri trnsmind inviti n md trnsprent l dres de trnsprt crespunztre. Primul mdel este semntr cu mdelul H.323 de pel direct ir l dile cu mdelul de pel rutt prin gtekeeper. Pentru gsi server-ul SIP, un terminl v flsi sistemul DNS (Dmin Nme Server). rice identifictr SIP URL trebuie s ib nregistrre n cest sistem. Flsind celi md de lucru n cre de exemplu brwser-ul Internet Explrer trnsltez dresele textule n drese IP, terminlul fce rst de ceste nregistrri. Flsindu-le pe ceste pte deduce dres de trnsprt server-ului. innd minte dres server-ului su URL-ul cestui n lc de cele le terminlului cu cre se drete cmunicre, este psibil mutre terminlului pelt i chir slvre n memrie de tip cche URL-urilr. Dc dres terminlului pelt s-r menine

Pgin 48 direct n DNS tunci r pre prbleme l slvre n memrii de tip cche nregistrrilr. n md nrml tte nregistrrile DNS pt fi slvte de ctre rezlvtrul DNS. ceste expir dup vlre n secunde exprimt de prmetru TTL ce este cninut de nregistrri. De cee dc terminlul pelt se mic, pelntul v ve nc n memrie dres greit i pelul v eu. Singur sluie este de pune prmetrul TTL l 0 i s se fc intergri DNS tunci cnd terminlul se mic. Sluie nu frte ur. Pe de lt prte, server-ul SIP este frte imprbbil s se mute i meninere dresei n nregistrri DNS nu pune nici- prblem. Server-ul este nunt despre nu lcie terminlului i pte ndrum cerere INVITE ctre lci crespunztre. Un gent de pel este un serviciu cre se cup pelurile spre i de l un utiliztr n lcul cestui. n telefni trdiinl cest tip de serviciu este relizt de ctre infrstuctur inteligent pertrului su de ctre Privte Brnch Echnge(PBX) flt n psesi unei cmpnii. Un gent de pel pte reliz urmtrele srcini: ncerc s gsesc utiliztrul prin ndrumre mesjelr de iniilizre pelurilr (H.323 Setup su SIP INVITE) ctre lciile crespunztre su ctre mi multe lcii simultn. Implementez regurile de ndrumre pelurilr cum r fi trimitere pelului ctre lte lcii tunci cnd sun cupt, tunci cnd nu se rspunde su n md necndiint; Implementez filtrre pelurilr flsind reguli dependente de rigine pelului i/su dependente de mmentul iniierii cestui. nregistrez ncercrile nereuite; relizez rice lte scini privind mngementul pelului din prte utiliztrului. Tte ceste funcii pt fi implementte de ctre un prxy SIP. ndrumre simpl pelurilr i filtrre pt fi implementte i de ctre un server de ndrumre. Server-ele prxy SIP fer ce mi mre flexibilitte derece pt lege s primesc i s trimit mi deprte tte mesjele de semnlizre i stfel s mnitrizeze i s cntrleze tte spectele legte de un pel. Pentru fi cpbil s flsesc tte ceste servicii un utiliztr trebuie s freze tte pelurile ce vin spre el s trec prin server-ul prxy. Cel mi bun md de fce cest lucru este de cnfigur nregistrre DNS s indice spre cest server. gentul de pel pte fi i crcteristic sftwre-ului de utiliztr, cest situie fiind mi puin prctic dect ce cre presupune existen unui server prxy seprt i centrlizt din cuz c terminlul unui utiliztr pte fi stins n rice mment i pte ve dres IP dinmic. Prin ccesul bzei de dte unui registrtr, un server prxy pte rezlv tte prblemele legte de mbilitete utiliztrului su schimbre dresei IP dc terminlele sunt cnfigurte s flsesc nregistrrile dinmice. De exemplu, de fiecre dt cnd un utiliztr se cnectez l Internet flsind serviciile unui furnizr, primete dres nu IP. Dr dc stfwre-ul SIP pe cre l flsete nregistrez cest nu dres, prxy-ul v pute s trimit tte pelurile ctre cest dres. 3.2.10.2 Cnferin SIP pte fi flsit pentru stbilire unei cnferine. Ttui cest nu fer nici frm de cntrl l susccesiunii vrbitrilr n cest mment (surs cestui mteril este RFC 3261 emis n Iunie 2002).

Pgin 49 cnferin de tip multicst reprezint cnferin n cre fluxul medi este trimis flsind trnsmisi de tip multicst. Semnlizre crespunztre cestui flux pte fi trnsmis flsind multicst su unicst. n czul n cre se flsete semnlizre multi-unicst (mi multe semnlizri de tip unicst), nu exist mri diferene f de czul cnversiei punct l punct, cu excepi fptului c descrierile de sesiune SDP indic drese multicst. Cnd se flsete semnlizre multicst pentru stbilire unei cnferine, cererile SIP sunt trnsprtte flsind UDP derece cest este singurul prtcl cre pte flsi trnsprtul multicst peste IP. Cererile multicst vr fi flsite mi les pentru iniilizre unr cnferine i de cee n cmpul destinie se v fl mi degrb numele unei cnferine dect l unei persne. Ttui, este psibil s se flsesc cerere multicst cre s flsesc URLul unei persne n cmpul destinie, de exemplu pentru cutri de tip multicst. Rspunsurile l cerere SIP sunt trimise npi ctre prtul UDP cre fst flsit pentru trnsmisie i l ceei dres de tip multicst. Pentru reduce trficul pe ree i pentru evit psibilele fluxuri de rspunsuri sincrnizte, s-u fcut numite mdificri f de czul prcedurii de invitre multi-unicst, ce includ: rspunsurile 2XX nu sunt trimise; rspunsurile 6XX sunt trimise numi dc URL-ul din cmpul destinie este celi cu unui utiliztr ce flsete terminlul n cuz (dic dc cerere este intergre multicst i nu invitie l cnferin multicst); rspunsurile sunt trimise dup ntrziere letre de 0-1 secunde. Dc tte mesjele INVITE sunt trimise de unitte centrl n unicst, cest pte furniz un mecsnism simplu de cntrl l vrbitrului prin trimitere unui nu mesj INVITE cu prmetrul c vnd vlre 0.0.0.0 (vlre zer) unui terminl pentru -i indic c nu mi re dreptul s vrbesc i mi trziu s-i trimit un mesj INVITE cu prmetrul c cu lt vlre dect ce nul pentru -i indic dreptul l micrfn. SIP n md ntiv suprt cdre n mi multe strturi. cest cls de cdecuri cdez infrmi medi flsind mi multe fluxuri de dte simultne. Un flux cntine infrmiile de bz (suficiente pentru redre de clitte prst) i celellte fluxuri vnd infrmii n plus ce permit recnstruire semnlului pentru redre de clitte superir. stfel un receptr pte lege rprtul clitte/bnd cel mi bun prin lure deciziiei de primi unu, du su mi multe fluxuri de dte. cest lucru este cnvenbil pentru cnferinele multicst, permind tuturr receptrilr s dpteze recepi cnfrm crcteristicilr terminlelr flte l dispziie, stfel trnsmitr nefiind bligt s trimit fluxuri mdificte pentru fiecre receptr. SDP descrie un flux cdt n mi multe strturi stfel: c= <dres multicst de bz>/<ttl>/<numr de drese> De exemplu: c=IN IP4 224.2.1.1/127/3. dresele multicst trebuie s fie cntinue (224.2.1.1, 224.2.1.2, 224.2.1.3). Suprtul prtclului SIP pentru cnferinele multi-unicst este limitt. entitte centrl pte fi cnfigurt stfel nct s funcineze c un element MCU din H.323 cre s mixeze su s cmut fluxurile medi ce intr n cest prt. n mmentul de f singurul md de fce cmutre r fi s se trimit invitie SIP cu prmetrul SDP c pus pe zer derec cest v semnliz terminlului s presc trnsmisi i s rectiveze trnsmisi prin trimitere unui mesj INVITE cu prmetru c nenul. SIP furnizez un md simplu i elegnt de trnsfrm un pel punct l punct (de l l B) ntr- cnferin (, B i C). Persn (de exemplu ) cre drete s invite un nu prticipnt s i prte l cnferin trimite un mesj INVITE i persnei dej existente (B) i prticipntului invitt (C) cu prmetrii ni sesiunii (cum r fi dres multicst i eventul un lt

Pgin 50 set de cdecuri spre desebire de dres unicst sesiunii existente ntre i B) dr cu celi CllID. Meninnd vlre prmetrului CllID se semnlizez prticipntului B c cest nu reprezint invitie l lt sesiune ci dr se schimb prmetrii sesiuni existente. Cntrlul pelurilr pt fi ctivte pe min prxy su registrtr intr-un md simplu prin trimitere de mesje de nregistrre. De exemplu un utiliztr cre drete s trimit temprr pelurile, cei sunt destinte, l lt lcie trimite dr un mesj REGISTER cu numele cestui n cmpul T i nu lcie n cmpul Cntct, vnd vlre drit n cmpul Expires. Crcteristici mi cmplicte privind cntrlul pelurilr nu intr n biectivul prtclului SIP i prbbil vr fi cnfigurte flsind lte prtcle, cum r fi HTTP. Terminlele SIP vr fi de bicei clcultre persnle multimedi i brwser-ele web reprezint interf perfect pentru cnfigur un prxy cmplex.

3.2.10.3 Fcturre pelurilr Prin definiie, ti prticipni inviti de surs cmun se fl n celi pel SIP. cest pel este identifict printr-un identifictr unic n tt reeu, CllID. Cu cest definiie, cnferin (cunscut n termeni SIP c sesiune multimedi) pte fi frmt din mi multe peluri SIP- fiecre utiliztr cre cntctt direct cntrlerul multipunct re un CllID unic. ntr-un pel fiecre cnexiune pte fi identifict prin cmbini infrmiilr din cmpurile T, Frm i CllID. Tte cnexiunile pt fi grupte ntr- sesiune multimedi cmun cu jutrul descrieri sesiunii. n PSTN un pel este de bicei pltit de persn cere-l iniiz. Un prxy ce este un releu pentru semnlizrile de l un terminl pte cre bzele de dte pentru fcturre n cre se nregistrez mmentele n cre se trimit mesjele INVITE, CNCEL i BYE, precum i rspunsurile. Durt unei cnexiuni se pte determin c durt n timp ntre prim cerere INVITE cceptt i prim cerere BYE. Pentru fr c semnlizre unui utiliztr s trec printr-un prxy, cle cnvenbil de fce cest lucru este c prxy-ul s cntrleze un firewll din ree. stfel se micrez psibilitile c un utiliztr s clesc prxy-ul ce este flsit pentru fcturre. n tbelul scit figuri I.12 este prezentt bz de dte cmplett de ctre un server prxy SIP n urm mesjelr ce u trecut prin cest. Pe bz cestr infrmii pte fl cine sunt, cu cine vrbit, ce servicii s-u flsit i ct durt cnvrbire i stfel pte implement un serviciu de fcturre i de utrizre. Cu jutrul echipmentului firewll se pt nchide pelurile celr cre i-u depit creditul su nu u dreptul de flsi serviciile de telefnie.

Pgin 51

Figur I.12 Fcturre cu jutrul unui prxy Identifictrul pelului 4321@192.190.12.32 4321@192.190.12.32 4321@192.190.12.32 4321@192.190.12.32 4321@192.190.12.32 4321@192.190.12.32 4321@192.190.12.32 4321@192.190.12.32 4653@192.190.12.32 4653@192.190.12.32 4653@192.190.12.32 De l Te@hm e Te@hm e Te@hm e Te@hm e Te@hm e Te@hm e Te@hm e Te@hm e Te@hm e Te@hm e Te@hm e Spre di@hme1 di@hme1 di@hme1 Mrius@hme2 Mrius@hme2 Mrius@hme2 ndree@hme 3 ndree@hme 3 Gerge@hme4 Gerge@hme4 Gerge@hme4 peri INVITE 200 BYE INVITE 200 BYE INVITE 486 INVITE 200 BYE Infrmi de timp 15/05/2003 11:11:12 15/05/2003 11:11:23 15/05/2003 11:12:45 15/05/2003 11:16:17 15/05/2003 11:16:31 15/05/2003 11:32:15 15/05/2003 11:45:12 15/05/2003 11:45:33 15/05/2003 12:33:12 15/05/2003 12:33:35 15/05/2003 14:11:55

Pgin 52

3.2.11 SIP i telefni trdiinl (RFC 3372, septembrie 2002)


SIP este un prtcl ce pte stbili, mdific i pri sesiuni multimedi. ceste sesiuni includ cnferine multimedi, telefnie prin internet i lte plicii similre. SIP este unul din prtclele de bz flsit pentru implementre Vcii peste IP (VIP) Cu tte c relizre semnlizri crespunztre pelurilr telefnice i trnsprtul fluxurilr medi peste IP u destule vntje f de telefni trdiinl, ree VIP nu pte exist izlt de reelele de telefnie existente. Este vitl c reeu telefnic ce flsete SIP s fie cpbil s intercineze cu PSTN. crcteristic imprtnt ricrei reele de telefnie SIP reprezint trnspren f de serviciile PSTN. ceste servicii, c de exemplu meninere unui pel n teptre, numere de telefn grtuite, etc. implementte n prtcle cum r fi Signlling System N.7 (SS7) trebuie s fie ferite de ree SIP ntr- mnier n cre diferenele s fie mici n timp ce flexibilitte prtclului SIP s nu fie limitt. Pe de lt prte, este necesr c SIP s ib primitivele pentru trnsprtul cestr servicii i pentru terminlele SIP nu numi pentru cele ce cunsc SS7. Ttui, este esenil c infrmi SS7 s fie dispnibil l gtewy-uri, puncte de intercnectre SS7-SIP, pentru sigur trnspren trsturilr ce sunt suprtte n SIP. Dc e psibil, infrmi SS7 trebuie s fie dispnibil fr pierderi n reeu SIP; cest lucru este necesr derece unele reele flsesc prmetri SS7 extini pentru trnsmite infrmii prin ceste reele. lt imprtnt crcteristic reelei telefnice SIP reprezint rutre cererilr SIP stfel cerere SIP ce iniilizez un pel telefnic trebuie s cnin destule infrmii n ntelul ei pentru fi rutt n md crespunztr de ctre serverele prxy prin ree. cest duce l fptul c este necesr c numrul frmt de ctre un utiliztr trebuie lut din semnlizre SS7 i pus n cerere SIP. RFC-ul 3372 sigur un cdru pentru integrre semnlizrii din telefni trdiinl n mesjele SIP. cest sigur crcteristicile de cre s- vrbit mi devreme prin tehnici cunscute c ncpsulre i respectiv trnsltre. L gtewy-urile SIP-SS7, mesjele de semnlizre din telefni trdiinl sunt ncpsulte n mesjele SIP pentru c infrmiile necesre serviciilr s nu fie pierdute n cererile SIP. Ttui, intermediri c server-ele prxy ce iu deciziile de rutre nu trebuie s li se cer s neleg mesjele SS7 i stfel simultn numite infrmii critice sunt trsltte n cmpurile crespunztre din ntetele SIP. n timp ce SIP re tte mecnismele pentru stbilire i prire pelurilr, cest nu re nici un fel de mecnism pentru trnsprt infrmiile din timpul pelului pe cle de semnlizre n tipul sesiunii. ceste infrmii nu schimb stre pelurilr SIP su prmetrii sesiunilr pe cre SIP le iniiz. Un mecnism de reliz cest lucru este de semene necesr. Prblemele cre trebuiesc depite i mdul de fce cest lucru este prezentt n urmtrul tbel:

Trnspren l semnlizrile SS7 Rutre mesjelr innd cnt de

ncpsulre cestr n mesjele SIP Trnsltre infrmiei n ntetulul

Pgin 53 semnlizre ncpsult Trnsferul semnlizrilr din timpul pelului SIP Flsire metdei INF pentru trnsprtul infrmiilr din timpul sesiunii

De bservt c exist multe mduri de semnlizre n telefnie (SS7 ISUP:ISDN User Prt, BTNUP, Q.931, MF, etc.). RFC-ul 3372 se refer numi l SS7 i intete s specifice numi cmprtre numi interfelr ISUP-SIP. Este psibil c pe viitr s existe dcumente cre s se cupe cu lte sisteme de semnlizre. RFC-ul descris n cest subcpitl intrduce niune de SIP-T dic SIP pentru telefne ce reprezint un set de mecnisme ce sunt flsite pentru intercnectre reelelr SIP cu cele ce flsesc SS7. Scpul cestui set de mecnisme este de sigur cdificre infrmiei trnsprtte prin semnlizre SS7 n mesje SIP i trnspren serviciilr dincl de punctele de intercnectre PSTN-SIP. SIP-T este recmndt fi flsit cl unde ree VIP este legt de ree PSTN. Flsind SIP-T, exist trei mdele simple pentru mdul cum pelurile intercinez cu gtewy-urile. pelurile ce sunt riginre dintr- ree PSTN pt trvers gtewy-ul pentru ve c int un terminl SIP, cum r fi un telefn IP. n md semntr, un telefn IP pte inii un pel prin cre s se prte cnversie cu cinev legt l ree PSTN. Ultim psibilitte de interes din punct de vedere l prtclului SIP este cee c ree IP ce flsete SIP s fie dr ree de trnzit ntre gtewy-uri. n cest cz pentru pute intercnect reeu IP cu PSTN trebuie c infrmi SS7 primit s fie pstrt n cererile SIP l gtewyul ce iniiz pelul SIP i s fie reflsit cest infrmie tunci cnd l gtewy-ul ce se fl l celllt cpt l pelului SIP, se recnstruiete semnlizre PSTN. Prin ncpsulre infrmiilr ISUP n semnlizre SIP, ree telefnic ce flsete prtclul SIP sigur pstrre tuturr infrmiilr critice SS7 tunci cnd pelul SIP este flsit pentru fce legtur ntre du segmente PSTN. Dc r fi fst vrb numi de schimbul de infrmii ntre gtewy-uri, rice prtcl pentru trnsprtul cestr r fi fst bun, ne fiind nevie neprt de SIP i de SIP-T. SIP-T este flsit pentru benefici de vntjele utilizrii SIP: rutre cererilr i cntrlul pelurilr relizte de server-ele prxy, uurin n relizre serviciilr SIP i ltele. Intrducere de infrmii din mesjele ISUP primite n ntetul cererilr, permite intermedirilr s cnsidere ceste infrmii tunci cnd prcesez cererile. SIP stfel fcilitez stbilire de peluri i crere de servicii pentru reeu IP i n celi timp prin SIP-T sigur metdele de intercnectre cu PSTN. n cntinure vi detli fluxurile mesjelr de semlizre tunci cnd vem un din situiile prezentte mi devreme: rigine pelului PSTN, int PSTN: gtewy-ul de unde se iniiz pelul SIP primete infrmiile ISUP de l reeu de telefnie PSTN, le intrduce n mesjele SIP pe cre le trnsmite ctre gtewy-ul unde se termin pelul SIP. cest extrge infrmiile ISUP pe cre le flsete n semnlizre ctre reeu PSTN. Se flsete

Pgin 54 rutre SIP pentru determin punctul de ieire din ree i pentru inii negciere unei sesiuni medi ntre cpete. Mesjele schimbte sunt prezentte n figur I.13. rigine PSTN i int pelului reeu IP: gtewy-ul ce iniiz pelul SIP primete infrmii ISUP de l PSTN i le intrduce n mesje SIP ce sunt direcinte ctre gentul SIP. Terminlul nu re nevie de infrmiile ISUP ncpsulte i le ignr. (figur I.14) rigine IP i int pelului reeu PSTN: un telefn SIP iniiz pelul VIP cre este rutt de unul su mi multe server-e prxy ctre gtewy-ul crespunztr. cest prduce din infrmiile dte, semnlizre ISUP i direcinez pelul ctre interf PSTN dispnibil. (figur I.14)

Figur I.13 PSTN-PSTN

Pgin 55

Figur I.14 PSTN-IP

Figur I.15 IP-PSTN Mesjele ce sunt schimbte n reelele PSTN u urmtre semnificie: IM: Initil ddress Messge, mesj trimis pentru se indic prnire unui pel i pentru se cere rezervre unei pri din lini telefnic pn l bntul pelt, CM ddress Cmplete Messge, trimis pentru indic dispnibilitte pri pelte i fptul c lini fst rezervt, NM nswer Messge, trimis tunci cnd prte pelt ridict receptrul, REL Relese Messge, indic fptul c prte pelnt nchis telefnul i termint cnvrbire, RLC Relese Cmplete Messge, cnfirm nchidere cnvrbirii i eliberre liniei rezervte.

Pgin 56 Din punct de vedere funcinl exist trei elemente distincte ntr- ree VIP ce flsete SIP i intercinez cu PSTN: Iniitrul pelului SIP Terminlul ce este pelt de pelul iniit Intermedirii ce rutez cererile SIP Funcinre cestr elemente este precizt n cntinure: Iniitrul. Funciile gentului ce iniiz pelul este de gener cererile SIP de crere unei sesiuni cum r fi INVITE. Cnd un pel re rigine n PSTN, un gtewy reprezint un iniitr. ltfel, cest este un terminl SIP binuit. n rice cz, se pte bserv c nu se pte nticip tipul de element crui pelul i este destint, dic nu se pte ti dc terminlul drit fi pelt se fl legt l reeu SIP su l PSTN. n czul cnd un pel i re rigine n PSTN, gtewy-ul ce iniiz pelul i necesri pi s pstreze infrmi ISUP primit intct prin ncpsulre cestei n mesjele pe cre le crez. cest este trebuie s recunsc versiune ISUP pe cre recepint- i s includ cest infrmie n mesjul cret. pi crez ntetul cereri INVITE din prmetrii ISUP primii. cest pte nsemn c n cmpul T s trec un URL cre s trimit l numrul frmt de ctre utiliztr. n lte czuri, un telefn SIP este iniitrul unui pel VIP. n md nrml, telefnul trimite cerere unui prxy SIP cre este respnsbil pentru rutre cestei ctre destini crespunztre. ici nu exist nici- infrmie ISUP cre s fie ncpsult. Cu tte c pelul pte ve c int un terminl din reeu de telefnie clsic i trebuie genert semnlizre ISUP, terminlul nu re de unde s tie cest i r fi neptrivit c tte terminlele s genereze infrmie ISUP ncpsult. stfel un iniitr trebuie s genereze semnlizre SIP i s relizeze ncpsulre i mdificre frmtului semnlizrii tunci cnd este psibil. Terminlul pelt n reeu SIP. cest este un gent SIP stndrd cre pte fi ri un gtewy ce intercinez cu PSTN ri un terminl SIP. n czul n cre un pelul re c int un terminl din reeu PSTN, gtewy-ul de ieire se fl l cptul pelului SIP. cest generez infrmiile ISUP crespuztre pentru semnlizre prin reeu PSTN. Vlrile pentru prmetrii ISUP pt fi extrse din ntetul cereri SIP primite su din infrmiile ISUP ncpsulte n mesj. n czul n cre int unui pel este un terminl SIP, gentul server cre primete cererile cu infrmiile ncpsulte n md nrml nu ine cnt de ceste. Intermedirii. cestr le este ncredint srcin de rut mesjele de l unul l celllt ctre terminlele SIP i gtewy-uri. Fiecre server prxy i decizie n privin direciei n cre s trimit un mesj, bzt pe mi multe cmpuri din ntet. SIP-T intrduce numite cnsiderii n plus pentru ciune de trimitere mesjelr cre pt duce ni crcteristici i cndiii de ndeplinit pentru intermediri. sigurre trnsprenei f de ISUP este principlul scp urmrit de SIP-T. Cmpbilitte ntre vrintele ISUP cunscute de interfeele PSTN ce se fl l cpetele unui pel SIP pte s influeneze trnspren ft de serviciile PSTN. Din cuz cest server-ele prxy pt ine cnt de vrint flsit n lure deciziilr de rutre. Un lt element imprtnt ce trebuie lut n cnsiderre tunci cnd se iu deciziile de rutre reprezint lcul unde este mplst gtewy-ul unde se termin un pel SIP. cest lcie trebuie s fie ct mi prpe de utiliztrul pelt. SIP-ul definit n RFC-ul 3261 nu re mijlcele pentru trnsprt infrmi de cntrl cre este genert n timpul unei sesiuni. Metd INF ce fst definit n RFC-ul 2976 i dugt l SIP trebuie flsit pentru trnsprtul infrmiei din timpul sesiunii.

Pgin 57

3.2.12 Securitte pelurilr


Cererile i rspunsurile SIP cnin infrmii imprtnte despre mdul i cninutul cmuniciei ntre utiliztri. Crpul mesjului pte cnine chei de cdre pentru sesiune ce se iniiliz. De cee SIP pte utiliz du metde cmplementre de cdre pentru prtej dreptul l intimitte: Cdre cp l cp: se bzez pe chei de cdre cunscut de cei di geni i utiliztrilr implici n trnzcie. n md nrml, mesjul este trimis cdt cu chei public receptrului, stfel nct numi cest s pt citi mesjul. Tte implementrile trebuie s pt flsi cdre bzt pe PGP, dr pt flsi i lte scheme de cdre. cerere su un rspuns SIP este cdt cp l cp prin mprire mesjului ntr- prte cre este cdt i un ntet mic cre rmne necdt. Unele pri le mesjului SIP, cum r fi lini de cerere, lini de rspuns i lte cmpuri trebuie citite de server-ele prxy i de cee nu trebuiesc cdte. Tte ceste cmpuri trebuie s fie pziinte ninte celr cdte. Mesjul este cdt ncepnd cu primul crcter l primului cmp cre este cdt i pn l sfritul mesjului. Cdre ntre servere: nu tte cererile su rspunsurile SIP pt fi cdte cp l cp din cuz c sunt ctev cmpuri c T su Vi cre trebuie s fie vizibile pentru serverele prxy, stfel nct cererile s fie rutte n md crespunztr. Pentru c utiliztrii reelei ruvitri s nu pt citi ceste cmpuri se plic cdre ntre server-e. cest tip de cdre se pte plic i cererilr su rspunsurilr cre u fst dej cdte cp l cp. De bservt c prin cest md de cdre server-ele prxy pt fl cine pe cine sun dr ceste infrmii se pt fl i din relizre unei nlize trficului reelei, stfel cest tehnic duce un grd de prtecie limitt dr cre merit efrtul. n md nrml prxy-urile nu u vie s mdifice cmpurile ntetelr i crpurile mesjelr. ceste pt, ttui, s cdeze mesjele nemrcte cu chei de cdre peltului. Prxy-urile trebuie s cdeze mesjele SIP dc terminlul ce le emite nu re cest funcie su pentru impune plitici de securitte. Msuri de prtecie trebuie lute pentru mpiedic un tctr s mdifice i s retrnsmit cereri i rspunsuri SIP. celei msuri de cdre ce se plic pentru sigur utenticitte unui mesj SIP sunt flsite i pentru utentificre celui cre trnsmis mesjul. Ttui ceste mecnisme nu sigur integritte mesjului. Mecnismele de utentificre de l nivelul trnsprt i de l nivelul ree pt fi flsite ntre server-e. SIP pte flsi i schemele HTTP de utentificre. Tte implementrile SIP trebuie s permit flsire utentificrii de tip PGP. Cel mi simplu md de utentificre include prl trimis sub frm textul ntr- cerere repett ce este trimis c urmre unui rspuns neutrizt su unui rspuns unui prxy ce drete utentificre l cerere riginl. Schemele mi cmplicte presupun trimitere unui rspuns l cerere unei entiti ce drete se cup cu utentificrile, rspuns ce cnine un secret cmun. PGP dic Pretty Gd Privcy este bzt pe mdelul n cre clientul i dezvluie identitte prin trimitere unei cereri semnt cu cheie privt. Server-ul pte n cest fel s determine rigine cereri numi dc re cces l cheie public, de preferbil semnt de trei entitte de ncredere. ceste msuri nu sunt perfecte. Chir i cu mesjele cdte, persn ru vitre pte s citesc mesjele trimise i pte intrduce rspunsuri neutentificte ce mdific desfurre nrml unui pel. [2]

Pgin 58

3.3 H.323 i SIP 3.3.1 Intrducere


Dte fiind cele du prtcle de semnlizre ce se fl n cmpetiie pentru dminre semnlizri n cdrul telefniei prin reelele IP, se pune prblem cre este mi bun? Veste bun este c cele du stndrde pr s cnverg lund ideile bune unul de l celllt. n prticulr versiune 3 stndrdului H.323 dugt elemente cre iu crescut perfrmn (s- umblt l ntrziere n iniilizre unui pel i l prcesre fr stri pentru flsire UDP-ului), elemente cre iniil eru vntje imprtnte le SIP-ului. Mi imprtnt, fiecre stndrd n ceei msur permit flsire mjritii funciilr cerute de ctre utiliztri, printe ceste flndu-se: iniilizre pelului, nchidere unui pel, meninere unui pel n stre de teptre, trnsferre unui pel l lt lcie, cnferin i iniilizre pelului de pe pgin Web. Singurele diferene funcinle sunt indicre unui pel n teptre (cre este utilizt numi n H.323), cntrlul pelului de ctre trei persn (de exemplu secretr cre d un telefn din prte directrului, funcie utilizt numi n SIP) i ctev funcii referitre l cnferine. n timp ce funciile ce pt fi flsite sunt semntre, stndrdul H.323 (prin intermediul prtclului H.245) furnizez un mecnism mi rbust pentru prcesul n cre se schimb infrmiile referitre l cpcitile terminlelr, dect fer SIP. Ttui, funcinlitte nu este singurul punct n dezbtere H.323 vs SIP. L fel de imprtnt sunt i clitte serviciilr (QS), sclbilitte, flexibilitte i intercnectre cu lte reele. n timp ce l cpitlul funcinlitte cele du stndrde sunt similre n dmeniile tcmi prezentte sunt frte diferite. n urmtrul tbel sunt prezentte crcteristicile celr du prtcle: semnri Clitte serviciilr i mngementul Durt iniilizrii pelului Recuperre pchetelr pierdute Lips de psibilitilr H.323 mi bun Tlern l defeciuni (H.323 permite gtekeeper-i i terminle redundnte ) Cntrlul (SIP dmisiei SIP mi bun Deteci buclelr (flsind cmpul Vi din ntet buclele sunt identificte mi bine dect flsind prmetrul PthVlue de l H.323)

rezervre resurselr

se bzez pe lte prtclle pentru mngementul benzii,

Pgin 59 mngementul pelului i pentru benzii) cntrlul

Stbilitte i flexibilitte

Prcesre fr stri Flsire UDP-ului Cmuniciile ntre server-e pentru lclizre terminlelr

Lclizre terminlelr n lte dmenii dministrtive (SIP nu definete metd dr sugerez flsire DNS-ului)

Cmplexitte (SIP este mi simplu) Extensibilitte (flsire numelr de crcteristici i de cduri rgnizte ntr- structur ierrhic cre pt fi nregistrte de ctre rgnizi IN reprezint metd de extindere mi flexibil dect singurul prmetru flsit pentru extensie NnStndrdPrm ) Uurin n mdificre (este mi simplu i re metd de cdre bzt pe text)

Intercnectre

Intercnectre cu

Pgin 60 reeu PSTN (H.323 flsete tipul mesje de sunt

Q.931 ce cmptibile cu stndrdul SS7)

3.3.2 Unde SIP este mi bun


SIP este simplu. cest fce ntr- trnzcie ce fce H.323 versiune 1 n ptru su cinci schimburi de mesje, fiecre dintre ceste specificte n dcumente ITU diferite. n plus SIP pte flsi UDP, spre desebire de versiunile 1 i 2 le stndrdului H.323 ce puteu flsi numi TCP. Cmbini cestr desebiri dus l timpi mult mi mici pentru iniilizre unui pel n czul flsirii SIP. cest situi dus l mdificrile prute n versiune 2 stndrdului H.323, printre cre i prcedur numit Fst Cnnect ce scurtez timpul necesr pentru iniilizre unui pel. n versiunile ulterire s- dugt i psibilitte de lucr cu UDP. rgnizi IETF dbndit mre experint n trnsmisi dtelr n md multicst. SIP fst cret pentru ree ce permite trnsmisi n md multicst nu numi pentru fluxurile medi ci i pentru semnlizre. De exemplu un mesj INVITE pte fi trimis unui grup prin trnsmisie de tip multicst. cest md de perre este flsitr unei instituii ce se cup cu rezlvre prin telefn unr prbleme dr i unui utiliztr cre ncerc s gsesc pe cinev ntr- instituie. Versiunile 1 i 2 le H.323 trebuie s flsesc trnsmisi n md multi-unicst pentru reliz celi lucru. Flsire URL-urilr c identifictri este un lucru frte imprtnt. L prim privire pre s nu existe mre diferen ntre un lis de tip e-mil de l H.323 (Te@nume.r) i un URL de tip SIP (sip: Te@nume.r). n relitte exist dr un: un lis H.323 presupune c prtclul flsit este H.323, ir SIP specific prtclul chir n URL. Din cest cuz un server SIP pte direcin un pel ctre un server nn-SIP ntr- mnier frte flexibil. Un terminl SIP, tunci cnd este pelt de un lt terminl SIP, pte direcin pelul ctre pgin Web su ctre un URL de e-mil. Prcedur din SIP pte fi relizt i de ctre H.323 flsindu-se tipul identifictrilr de tip URL tunci cnd se specific dres lis, dispnibil din versiune 2 prtclului H.225. Dr prin cest dugre schem identifictrilr ncepe s devin frte cmplict. Muli furnizri de servicii dresc s ib psibilitte s mrcheze unele peluri c fiind priritre. Cmpul Pririty din ntetul SIP duce cestui funcie cre nu exist n H.323. Trimitere mesjelr sub frm de text pte fi si un vntj i un dezvntj. vntejele sunt: metd simpl, se pt depist frte ur greile i se pt crect l fel de ur i prblemele de intercnectre se depistez repede. Dezvntjul principl este cel c cest metd de cdre crez mesje de dimensiuni mi mri dect dc s-r fi flsit mesje cdte binr.

3.3.3 Unde este H.323 mi bun

Pgin 61 H.323 fce distincie clr ntre tipurile de medi ce pt fi flsite i tipurile de medi ce sunt n md efectiv trnsmise n ree. SIP nu fce semene distincie, terminlele prezentnd dr cdecurile pe cre le pte flsi l recepie i nu exist nici prcedur pentru deschidere cnexiunii medi n fr de trimitere efectiv dtelr. cest pre simplificre semnlizrii i pte pre c un vntj pentru SIP. Ttui n unele czuri, n prticlr n czul n cre se implementez un server cre v fi flsit frte mult i resursele trebuiesc meninute sub cntrl, cest md de lucru pte cuz prbleme derece fiecre server cre i prezint cpcitte de recepie trebuie s sculte un prt pentru recepin dtele. Un client H.323 trebuie s ncep prcesul de scultre dr cnd primete mesjul penLgiclChnnel. cest md de funcinre l prtclului SIP pte duce l existen mi multr prcese ce nu primesc nimic i derece cele mi multe cdecuri implementez funci de detecie puzelr ceste prcese pt s nu primesc nimic chir dc cnferin se desfr n md nrml, c nchidere prceselr cre nu fc nimic din cuz c prtenerul de cnversie disprut este frte greu de relizt. H.323 singur su n cmbinie cu H.332 cnine elemente frte puternice de cntrl l cnferinei. SIP nu fst cret pentru cntrlul mdului de desfurre l cnferinei i de cee multe din elementele necesre pentru cntrl nu exist, nc. Mesjele H.323 ce prin prtclului H.225, fiind prelute de l Q.931, sunt cdte cnfrm stndrdului Q.931. Celellte mesje c i mesjele ce sunt extindere mesjelr Q.931 sunt cdte cnfrm regulilr de cdre pchetelr (PER) flsind sintx bstrct 1 (NS.1). cest md de cdre genert frte discuii privind cmplexitte H.323-ului. Flsire du cdri cu reguli diferite duce l efrturi mri de prgrmre din prte cmpniilr cre nu u implementt stndrdul Q.931 i nu u un cmpiltr NS.1. Rezlvre prblemelr de intercnectre ntre terminlele H.323 necesit mnitrizre reelelr cu prgrme ce cunsc metdele de cdre Q.931 i PER NS.1 i cre sunt mi greu de gsit. Prnire de l zer este dificil, dr dup ce cmpni re un NS.1 i implementre Q.931, sunt ctev dvntje n flsire cestei cdri: unitile de dte ce sunt trnsferte ntre terminle sunt ptimizte din punct de vedere l dimensiunii (psibil) perfrmn este mi bun. n reelele mderne dimensiune pchetelr nu mi este prblem, dr dc H.323 v fi utilizt n reelele de telecmunicii mbile tunci cest spect v fi un vntj. Perfrmn este discutbil n czul stndrdului H.323. Este devrt c cele mi multe prtcle ce flsesc mesje cdte binr sunt frte rpide derece structurile de dte flsite n prgrm pt fi trimise imedit l buffere i invers. Dr Q.931 i PER sunt frte cmplexe i perfrmn depinde mult de mplementre. n stdiul ctul de dezvltre celr du stndrde, descperire entitii cre se cup de peluri este mi bine relizt l H.323 unde un terminl pte cunte ce gtekeeper se cup de peluri spre desebire de situi de l SIP. n rice cz, cest fpt se pte fix frte ur n versiunile urmtre.

3.3.4 Intercnectre SIP - H323


Cele du prtcle se cup cu iniiere, cntrlul i terminre cnversiilr multimedi. Derece fiecre dintre ceste u rhitectur seprt i mesje distincte cre numi n ceste rhitecturi funcinez, pentru legre unei reele SIP cu ree H.323 este nevie de un echipment numit gtewy ce trebuie s implementeze cele du prtcle,

Pgin 62 pentru fce schimbul de infrmii ntre cele du reele. cest echipment pte juc urmtrele rluri: pe prte cu reeu H.323 jc rlul de terminl H.323 i pe prte cu reeu SIP jc rlul de gent server su client; pe prte cu H.323 jc rlul unui Gtekeeper ir pe prte cu SIP unui registrtr i/su server prxy. imgine unei intercnectri simple ntre cele du reele este prezentt n figur urmtre:

Figur I.16 Intercnectre reelelr SIP i H.323 Derece H.323 flsete n semnlizre mesje din mi multe prtcle (de exemplu RS, H.255 i H.245) i n mi multe etpe, timpul de iniilizre pelurilr este mre n cmprie cu SIP. Dc se flsete mdul de semnlizre denumit FstStrt cest timp se reduce jungnd cmprtiv cu cel l prtclului cu cre este in cmpetiie. Flsind cest md n tbelul urmtr se prezint mesjele ce sunt flsite pentru iniilizre unei sesiuni i cum sunt ele trnsfrmte din mesje de semnlizre H.323 n mesje SIP.

Nr. 1 2 3

Prte H.323 -> Iniilizre cu FstStrt <- Cll prceeding

Prte SIP

Cmentrii Cnine infrmiile despre cnlele lgice flsite pentru sensul invers Gtwy-ul indic primire infrmiilr

INVITE ->

Cnine infrmiile despre prturile pentru sensul invers n frmt SDP

4 5 6 <- lerting

180 Ringing <200 K <Utiliztrul rspuns pelului

Pgin 63 7 8 N N+ 1 N+ 2 N+ 3 -> Relese cmplete <- Relese 200 K -> <- Cnnect CK -> BYE <Utiliztrul nchis

Pentru deschidere unui nu flux de dte se flsesc mesjele din tbelul ce urmez

-> penLgiclChnnel INVITE -> celi identifictr mesjul de pel c

INVITE precedent dr cu vlre cmpului Cseq incrementt. Infrmi SDP cninut descrie list mdifict cnlelr medi 200 K <Se cnfirm list mdifict prin infrmi SDP cninut <penLgiclChnnelck

3.3.5 Cncluzii
Pe pi exist echipmente ce suprt H.323 su SIP dr puine tiu s flsesc mbele prtcle. n prezent echipmentele ce lucrez cu H.323 sunt mi numerse dect cele ce flsesc SIP. n prctic, vr exist cmpnii ce vr prduce echipmente ce vr flsi unul din cele du prtcle pn v fi sigur c unul dintre ceste v dispre su pn se vr uni ntr-un lt prtcl. Dc se drete funcinre stbil cu lte implementri tunci se pt lege

Pgin 64 echipmente ce flsesc H.323 derece cest prtcl este mi stbil din punct de vedere l stndrdelr dect SIP. ltfel, cele du prtcle furnizez celei servicii. Singur zn n cre se bserv diferen, este iniilizre cnferinelr. Derece SIP pte fi flsit pentru invit mi multe persne s se lture l un pel, cnferinele pt fi iniite fr existen n md bligtriu unui server pentru cnferine. n prctic ttui, dc ceste mnunte sunt vntje su nu depinde de slui implementt de vnztrul echipmentului i nu de prtclele ce sunt flsite. Mterilele din cre u fst cnsultte pentru reliz cest subcpitl u fst: Reele de clcultre [1], IP telephny [2], RFC 2327 [6], RFC 2616 [7], RFC 2974 [8], RFC 3261 [9], RFC 3272 [10], Vice ver IP [15]. ceste r pute fi cnsultte pentru se prfund niunile prezentte ici.

4. Vce n VIP
cest reprezint un fctr imprtnt n difereniere reelelr ni prute ce fer sevicii VP (vce peste reele de pchete) dr i echipmentelr flsite. De cee msurre clitii vcii ntr-un md biectiv, sigur i ieftin devine frte imprtnt. Clitte pte nsemn mi multe lucruri depinznd de punctul de vedere. Pe de prte, clitte vcii este un md de descrie i evlu fidelite vcii, inteligibilitte i crcteristicile semnlului vcl nlg. Pe de lt prte, clitte vcii pte descrie perfrmnele mecnismului de trnsprt flsit. Reeu PSTN trdiinl rezlvt prblem clitii prin ptimizre circuitelr pentru bnd flsit de vce i pentru ritmul cnversiei.cest ree juns s furnizeze servicii de bun clitte pentru plicii n timp rel ce u nevie de ntrzieri mici, jitter mic i bnd cnstnt dr mic. Cu tte c PSTN nu prezint clitte vcii excepinl, utiliztrii s-u binuit cu cest i cmpr celellte servicii flsind PSTN c reper. Spre desebire de reeu de telefnie trdiinl, reele IP u fst priectte s fere servicii pliciilr ce nu u cerine de timp rel, cum r fi trnsferul fiierelr su e-mil. ceste plicii crez un trfic n rfle i uneri cer bnd nsemnt dr nu sunt fectte de ntrzieri su vrii cestr. Pentru pute flsi pliciile de timp rel, reelele IP trebuie s ib i mecnisme cre s sigure clitte serviciilr (QS) necesr pentru trnsprtul dtelr. Utiliztrii PSTN s-u binuit cu clitte frte bun vcii. Furniznd clitte cmprbil serviciilr v duce l cceptre i succesul pliciilr de vce prin reelele de pchete. VIP, prin intrducere de cdecuri nelinire i prin impunere de termeni privind livrre pchetelr unr reele ce nu u fst priectte pentru cerine de cest gen, fce c meninere cliti vcii dificil. Trnsmisi, flsind cest tip de reele, cre nu pune nici prblem trficului de dte cre nu este n timp rel pte pune prbleme serise trficului n timp rel. Trnsmisi este fectt de: bnd n timp rel, ntrzierile dtrte prceselr din gtewy-uri, pierdere pchetelr, ntrzierile i cdecurile nelinire. Multe tipuri de reele de dte nu pt s sigure bnd necesr pentru trnsprtul vcii. Reele de dte nu sigur ntrziere mic i nici mcr cnstnt. Intrducere semnlului vcl n ceste reele necesit flsire de metde cre s sigure trnsprtul n timp rel, clitte vcii putnd ve de suferit dc ceste metde nu funcinez cum trebuie. Cu tte c vce n timp rel necesit bnd reznbil, necesrul efectiv este ri bnd cnstnt pentru cdecurile linire ri bnd recre pentru cdecurile cu rt mic. Cu tte c furnizrii de servicii sigur bnd suficient pentru pliciile de vce fr fect trficul de

Pgin 65 dte binuit, se flsesc i tehnici de cmpresie n prticulr pentru trficul n timp rel ce re c destinie un clcultr persnl. Cmpresi nelinir pte fi cuz mjr pentru scdere cliti vcii. Reele VIP se bzez pe prcesele cre de multe ri sunt relizte n gtewy-uri pentru prevenire unr prbleme de clitte. De exemplu, eliminre peridelr de linite pte preveni crere i trnsmitere de pchete pe peridele dintre frzele vrbite. L fel, suprimtrele de ecu sunt necesre pentru elim ecul tunci cnd devine perceptibil tunci cnd reeu intrduce ntrzieri. Dc prcesele de cest timp nu funcinez cum trebuie clitte vcii re de suferit. pliciile cmpensez pierdere pchetelr prin retrnsmitere pchetelr pierdute flsind TCP. pliciile de dte cum r fi trnsferul de fiiere i e-mil sunt mi puin fectte de timpul n cre cest retrnsmisie re lc , dr trficul de vce n timp rel nu pte ccept cest ntrziere. n plus VIP flsete UDP cre nu grntez livrre pchetelr. Pchetele pierdute nsemn infrmie pierdut. ntrziere perceput de ctre utiliztr pte fi prveni din timpul n cre sistemul su reeu trensfrm semnlul nlg n semnl digitl, crez pchetele, trnsmite, rutez i stchez ntr-un buffer un semnl de vce. cest ntrziere pte s creeze prbleme ntr- cnversie i pte s mresc stricciunile prvcte de lte prbleme cum r fi ecul. Un mtiv imprtnt pentru msurre cliti vcii este dezvltre i flsire cdecurilr nelinire ce cmprim vce stfel nct se trnsmite infrmi imprtnt fr se trnsmite tt semnlul vcl. Cu lte cuvinte ceste cdecuri cnserv cum sun vce fr pstr tte frecvenele semnlului. n generl, se pte exprim i msur clitte vcii n funcie de sculttrul i vrbitrul ce u lut prte l cnversie. Clitte trebuie msurt cpt l cpt. dic indiferent de sisteme, prte i metde de trnsmisie, cest trebuie exmint din punctul de vedere l utiliztrului. Dr ntur subiectiv cestui tip de evlure clittiv nseste rice spect l cliti vcii. definiie clr clitii vcii este necesr ninte de discut crcteristicile i cmpnentele cestei. Muli fctri influenez percepi cliti unui pel telefnic de l uurin cu cre cest este efectut pn l clitte sunetului din receptr. L un nivel mi ridict clitte unui pel este cmpus din clitte serviciului, clitte sunetului i clitte cnversiei. ceste sunt interdependente tunci cnd un utiliztr trebuie s-i spun prere despre clitte unui pel. De exemplu cest pte tler, ignr su pte s nu bserve clitte mi prst sunetului tunci cnd clitte serviciilr este frte bun. Utiliztrii telefnelr mbile su cei cre prt cnversii prin stelit l mre distn pt tler su ignr prblemele de sunet din cuz vntjelr duse de pel. Un lt exemplu este i clitte cnversiei. Cnd exist ntrziere perceptibil ntre frzele sculttrului i vrbitrului, muli utiliztri percep cest situie c prblem de clitte serviciului su sunetului. Multe specte le cliti serviciilr sunt strns legte de prblemele i deciziile lute de furnizrul de servicii i mi puin legte de perfrmn reelei i funcinre echipmentelr de ree. Ttui, clitte sunetului i cnversiei pr stns legte de dispunere reelei i perfrmn cestei. Din cest cuz, clitte vcii este rezulttul msurrii clittive i cntittive cliti sunetului i cnversiei. Clitte vcii este fectt de trei fctri principli: clritte, ntrziere i ecul. Clritte este msur fidelitii, lipsei distrsiunilr i inteligibiliti unui semnl de vce. ntrziere este timpul necesr unui semnl vcl s jung de l vrbitr l sculttr. Ecul este sunetul prdus de vrbitr ce junge l ureche cestui. n percepere clitii un fctr i fectez pe ceilli, utiliztrii neputnd s disting ntre diferitele efecte cuzte de ree.

Pgin 66 Distrsiunile i fidelitte sunt nu sunt fectte de ntrziere, stfel un semnl vcl pte fi ntrzit rict i tt v sun bine l redre. Pentru c un utiliztr s percep clitte vcii c cceptbil trebuie c clritte s fie reznbil de bun ir ntrziere reznbil de scurt. Se mi bserv c ecul depinde de ntrziere i ecul fectez clritte. Clritte descrie fidelitte perceput i ntur nedistrsint unui semnl de vce. De semene cest mi pte fi descris i c inteligibilitte vcii, indicnd cntitte de infrmie cre pte fi extrs dintr- cnversie. Ttui este psibil c s se neleg ce spune vrbitrul chir dc l recepie exist clritte prst semnlului, cum r fi vce distrsint su greu de uzit. Clritte i evlure cestei depinde de mi muli fctri. De exemplu unele benzi de frecven sunt mi imprtnte pentru percepi clritii dect ltele. culttrii sunt mi sensibili l distrsiunile su tenurile ce u lc n bnd de frecven 10001200 Hz dect l cele ce u lc n bnd 250-800 Hz. Un lt exemplu este c frzele cmplete sunt mi ur de neles dect secven de cuvinte fr nici legtur, chir dc frz cmplet este mi distrsint dect secven de cuvinte. De cee utiliztrii percep frzele cmplete c vnd clitte mi bun. ntr-un pel telefnic ce este iniit n reeu PSTN i re c int un terminl dintr- ree de pchete mi muli fctri cntribuie l fectre clritii sunetului trnsmis.Telefnul PSTN influenez prin clitte receptrului i micrfnului, prin nivelul semnlului i prin ecul genert ntre micrfn i receptr. Reeu PSTN flsete semnlul digitl. Trnsfrmre semnlului nlg n semnl digitl de multe ri fectez clritte vcii. Gtewy-ul ce intercnectez reeu PSTN cu reeu IP fectez clritte din cuz cdecurilr flsite, cmpnentelr ce elimin peridele de linite i genertrelr de zgmt. Reeu IP, dei nu re cmpnente de vce ctive, fectez clritte prin tendin de pierde pchete i de dug jitter livrrii de pchete. Terminlul IP fectez i el prin cdecul flsit, prin mecnismul de eliminre peridelr de linite i prin clitte micrfnului i receptrului (bxelr). Pierdere pchetelr nu este un fenmen rr n reelele IP. Pe msur ce reeu su unele link-uri devin cngestinte, bufferele din rutere ncep s nu mi primesc pchete i ceste sunt runcte. lt cuz pierderi pchetelr reprezint schimbre rutelr tunci cnd unele link-uri nu mi funcinez. Un efect similr cu pierdere pchetelr este cel cnd un pchet este ntrzit frte mult i junge pre trziu pentru fi flsit n recnstruci semnlului de vce. Pentru pliciile ce nu sunt de timp rel pierdere pchetelr nu re pre mre imprtn. Prtclele sigur mecnisme de retrnsmisie pentru recuper pchetele pierdute. Ttui n czul pliciilr de timp rel, pchetele trebuie s ssesc ntr-un intervl bine definit de timp pentru pute fi flsite l recnstruci semnlului de vce. Retrnsmisi nu pte fi flsit n cest cz derece fce c vce s devin inteligibil. Pentru evit pierderile de pchete, sunt necesre mecnisme specile cre s minimum de bnd pentru ceste plicii. ceste mecnisme minimizez pierderile de pchete i ntrziere pentru trficul priritr cum este vce. ceste mecnisme includ scheme de pririti flsite l cntrlul fluxului printr-un ruter, n prtrclul MLSP su l setre bitului type f sevice din ntetul IP. lterntiv mi dinmic pentru rezervre de resurse este prtclul RSVP, ce permite unui terminl su unu gtewy s cer numit clitte serviciului IP. Indiferent de metd flsit exist ttui prblem imprtnt. Dc se presupune c exist resurse suficiente, rezervre i cntrlul cestr pe ntregul drum l pelului este frte dificil din cuz dmeniilr cu dministrre distinct strbtute i din cuz tipurilr diferite de rutere ntlnite cre pt feri su nu serviciul cerut.

Pgin 67 Un cdec trnsfrm semnlul de vce nlg ntr-un flux digitl de bii i vice-vers. Unele cdecuri flsesc i tehnici de cmpresie, ndeprtnd infrmi redundnt su mi puin imprtnt pentru reduce bnd necesr pentru trnsmisie. Cu lte cuvinte, multe cdecuri cmprim semnlul de vce prin pstrre numi celr pri din semnlul de vce cre sunt imprtnte din punct de vedere l percepiei. cest lucru nsemn pstrre celr pri cre u cel mi mre impct din punct de vedere l mdului cum ureche umn ude cel semnl, mi les dc cele pri sunt distrsinte su mise. Depinznd de tipul de cdec flsit, prte receptre unei cnversii VIP pte s nu reprduc semnlul riginl. Ctev cdecuri, c G.711, sunt numite linire derece ceste reprduc prpe n ntregime semnlul riginl. lte cdecuri, c G.729 su G.723.1, ncerc s reprduc sunetul subiectiv uzit de ureche umn i nu semnlul riginl cptt de micrfn. ceste cdecuri sunt n generl numite nelinire. Cmpresi este un prces ce pune n bln clitte vcii, putere de clcul lcl, ntrziere i bnd necesr pentru trnsmisie. Cu ct este mi mre reducere de bnd necesr cu tt este mi mre cerere de putere de clcul pentru clritte perceput semnlului. n plus cu ct este mi mre reducere benzi necesre cu tt ntrziere prdus de prcesul de clcul este mi mre stfel crescnd ntrziere glbl. li fctri cre influenez efectul cdecului supr clitii vcii sunt lungime pchetului, pierdere pchetelr i rice mecnism de crecie errilr pe cre cdecul l flsete el nsui. Pe lng pierdere pchetelr i cdecuri muli li fctri fectez clritte vcii, incluznd i zgmtul, cmpnentele ce detectez dc se vrbete su nu pe cnexiune (detectre de vce), ecul i fctri de mediu. Zgmtul, indiferent de surs lui, pte reduce clritte unui semnl de vce.Dc zgmtul este intrdus ninte c semnlul s fie trnsfrmt ntr-un semnl digitl, cdecul trnsfrm i zgmtul mpreun cu semnlul. Dc zgmtul este intrdus dup ce semnlul este dus l frm nlgic, cest distrsinez i mi mult semnlul. Detectrele de vce degrdez clritte prin tiere din greel unr priuni din semnl. Vce cre junge npi l vrbitr i este perceptibil n timpul cnversiei pte fect clritte perceput. n finl, un receptr pte ve clitte excelent dr zgmtul din cmer, stre utiliztrului, cerinele cestui precum i li fctri pt influen un utiliztr s cred c clitte udi perceput este incceptbil. ceti fctri de mediu fectez metdele de testre i fc testele subiective ce flsesc meni mi dificile. ntrziere reprezint timpul necesr unui semnl s prcurg reeu. n cntextul telefnic ntrziere reprezint timpul necesr c semnlul genert l gur vrbitrului s jung l ureche sculttrului. ntrziere este sum ntrzierilr prvcte de echipmentele de ree i de link-urile reelelei prin cre trece trficul crespunztr vcii. Muli fctri cntribuie l ntrziere glbl incluznd ntrziere genert n reeu PSTN, n reeu IP i de ctre echipmentele VIP. ntrziere dtrt trnsmisiei pe pelurile de distn mre este de prximtiv 250 ms tunci cnd cest trece printr-un stelit gestinr i reprezint principl cuz ntrzierilr n reeu PSTN. n plus ntrzierile dtrte cmutiei n ndurile de ree este mic n cmprie cu ntrziere dtrt trnsmisie. n cele mi multe czuri ntrziere n reelele PSTN este reltiv mic i depinde n principl de distn ntre cpetele pelului. ntrziere n reelele IP este n principl dtrt de stcrii n buffere, n czi de teptre i cmutrii su rutrii n ruterele IP. n specil ntrziere n reeu de pchete este frmt din ntrziere dtrt prcesului cpturri pchetelr, cmutri/rutri cestr i teptri n czi de teptre. ntrziere dtrt cpturri pchetelr reprezint timpul necesr ce trebuie teptt pn cnd tt pchetul este primit ninte de fi prcest i trimis spre urmtrul ruter. Lungime

Pgin 68 pchetului i vitez de trnsmisie detremin vlre cestei ntrzieri. Flsind pchete de dimensiuni mici pe link-uri de viteze mri se pte micr ntrziere dr eficien reelei r pute scde. ntrziere dtrt cmutrii/rutrii reprezint timpul n cre un ruter l flsete pentru cmut un pchet. n cest timp echipmentul nlizez ntetul pchetului, verific tbelul de rutre i trimite pchetul ctre prtul crespunztr. cest ntrziere depinde de rhitectur echipmentului de ree i de mrime tbelei de rutre. Cele mi ni rutere pt fce lu unele decizii de rutre prin hrdwre i nu prin sftwre micrnd stfel ntrziere. Dtrit multiplexrii sttistice i ssirilr sincrne pchetelr este necesr flsire de czi de teptre l prturile de intrre i de ieire din rutere. cest fpt prduce ntrziere cre este dependent de ncrcre reelei, lungime pchetelr i distribui sttistic pchetelr pe prturi. Priectre de rutere i de link-uri de mri cpciti pte micr ntrziere dr nu pte elimin. Gtewy-urile i terminlele cntribuie i ele n md semnifictiv l ntrziere glbl din cuz prcesrii semnlului l mbele cpete le link-ului. n timpul necesr prcesrii este inclus timpul n cre cdecul cdez semnlul nlgic n semnl digitl i decdez semnlul digitl ntr-unul nlgic. Unele cdecuri fc i cmpresie semnlului cee ce fce c ntrziere s cresc. n prte trnsmitre, ntrziere de pchetizre timpul necesr pentru frm un pchet din infrmi udi este un lt fctr. Cu ct este mi mre pchetul cu tt se tept mi mult pentru frmre unui pchet. Flsind pchete mici pte micr ntrziere dr eficien sufer derece este nevie s se trimit mi multe pchete n ree fiecre vnd un ntet cre nu trnsprt infrmie. n prte receptre, trebuie s se ntrzie pchetele pentru se cmpens vriiile durtelr ntre ssirile pchetelr su pe scurt jitter. Chir i pchetele cre sunt trnsmise cu durte n timp cnstnte ntre ele jung l receptr cu durte vribile din cuz teptrilr n czile de teptre i din cuz trnsmisiei pe ci diferite pchetelr. Pentru elimin efectul jitterului se flsete un buffer n cre sunt puse pchetele ninte de decdre derece ceste necesit pentru funcin crespunztr un fux de pchete cnstnt fr guri. ntrziere prdus de cest buffer pte fi diminut prin micrre jitterul n fiecre nd i reducere numrului de nduri din ree. Se pte ptimiz i dimensiune bufferului pentru fi ct mi mic pentru jitterul existent. Flsind mecnismele ce fc trficul n timp rel priritr f de celellte fluxuri reeu pte micr cnsiderbil jitterul. ntrziere nu fectez n md direct clitte vcii dr, n schimb, fectez crcterul cnversiei. Cei mi muli utiliztri nu bserv ntrziere mi mic de 100 de milisecunde. Cnd cest este ntre 100 i 300 de milisecunde, utiliztrii bserv dr mic ezitre n rspunsul prtenerului de cnversie. Dup 300 de milisecunde, ntrziere este clr pentru utiliztri i cnversi devine din ce n ce mi dificil. n md evident, ntrziere mic duce l cnversie de clitte mi bun i l percepie mi bun uriliztrului supr clitii generle vcii. Pentru elimin ecul nedrit, priectni de ree intrduc cmpnente funcinle numite suprimtre de ecu n centrlele lcle, n gtewy-urile VIP i n terminlele VIP psibil ct mi prpe de lcul unde se prduce ecul. Pentru utiliz ct mi eficient bnd, reelele VIP flsesc funcie numit eliminre durtelr n cre nu se vrbete su deteci vcii. cest funcie este relizt de un element cre se fl n gtewy-uri su n terminle i cre elimin pchetele crespunztre mmentelr cnd nu se vrbete. ceste perez pe prte de ieire unui gtewy i se pt dpt l nivele diferite de zgmt. Derece cnversiile sunt de bicei, pe un termen mi lung, de tipul hlf-duplex flsind stfel de funcie se pte reliz reducere de 50% necesrului

Pgin 69 de bnd pe cele du cnle flsite lute mpreun. Dei funcinre cestr nu fectez clritte, n czul n cre nu funcinez crect descrete n md sigur inteligibilitte semnlului i clitte per nsmblu cnversiei. L recepie, pentru c cel ce scult s nu cred c nu mi este nimeni pe linie n mmentele n cre pchetele crespunztre mmentelr de puz u fst eliminte, exist funcie ce generez un zgmt de fundl cre trebuie s fie ct mi prprit de zgmtul de fundl de l trnsmisie. Mterilele cnsulte pentru scrie cest subcpitl u fst The Qulity f vice ver IP [14] i Vice qulity in cnverging telephny nd IP netwrks [17].

II plicie sftwre
1. Prezentre generl Pentru nelege ct mi bine funcinre prtclului de semnlizre prezentt n lucrre de f m relizt plicie cre s flsesc cest prtcl pentru inii i termin sesiune de cmunicie prin vce printr- ree de dte. De l nceput m impus numite limitri. Nu s-u flsit sisteme mi cmplicte cum r fi server-e prxy, server-e de redirectre, gtewy-uri. plici trebui s funcineze numi ntr- ree lcl de mici dimensiuni i de cee m trecut cu vedere prblemele legte de sigurre clitii serviciilr (QS). Trnsmisi vcii prin ree fst ntr-un fel pe plnul di, imprtnt fiind mdul de cmunicre ntre plicii flsind prtclul SIP. Derece semnlizrile se relizu pe un LN fr lte sisteme prinnd rhitecturii SIP, s- flsit mdelul de cmunicie ntre du terminle cre i cunsc dresele de ree i cmunic direct fr interveni ltr sisteme. plici este i un exemplu cum frte ur se pte integr VIP cu lte frme de servicii, drece integrez un sistem de cht cu unul de VIP. Dezvltre prgrmului s- relizt n du etpe. Mi nti su pus bzele cmuniciei pe bz de mesje scrise i dup cee s-u dezvltt mecnismele de cmunicie prin vce. n relizre prii de cht, biectivele prpuse u fst implementre unei plicii cre s permit trnsmitere mesjelr scrise prin metd multicst, s prezinte list celr cre flsesc cest plicie i s permit flsire de imgini grfice inserte n text cre s exprime numite stri eminle (emticne) fr ve cmpnent centrl cre s relizeze ceste lucruri. pliciile discut ntre ele flsind un set de mesje text trimise sub frm / cuvnt cheie infrmie. Prin ceste ele indic intrre unui nu utiliztr, trimitere unui nu mesj, schimbre nicknme-ului i ieire unui utiliztr. Prte cre este respnsbil cu implementre VIP vut c scp principl relizre unei plicii cre s permit sigurre cmunicii prin prtclul SIP cu celellte plicii. u

Pgin 70 fst implementi genii server i client cre se cup de trimitere mesjelr, recepinre i prcesre cestr. Trnsmitere vcii s- relizt ntr-un md frte simplu. Pchetel cre ssesc de l plc udi sunt pur i simplu intrduse i pchete UDP i trimise in ree. S- dptt cest sluie derece s- drete flsire pliciei ntr- ree lcl de mici dimensiuni cre nu este frte mult. n cest cz rt de pierdere pchetelr este mic i cum s implementt dr un singur cdec, flsire prtclelr RTP i RTCP pentru trnsmisi pchetelr udi nu r fi fcut dect s cmplice plici, fr s duc cntribuii imprtnte. Prte grfic pliciei flsete ferestre, butne i zne de text cu infrmii despre funcinre pentru permite intrciune ct mi ur cu un utiliztr. Ferestr principl prezint zn unde se scriu mesjele scrise de utiliztri, unde se pt scrie mesje ni, unde se schimb numele de pelre l utiliztrului (nicknme) i de unde se pte iei din cnversie. Mesjul scris de un utiliztri junge l ti cei cre u plici prnit i sunt cnecti, derece se flsete cmunicie multicst. Tt n cest ferestr sunt trecute i infrmii despre utiliztrii ce sunt n cnversie l un numit mment dt. ceste infrmii cuprind numele i dres de ree terminlului flsit. ceste pt fi flsite pentru inii cnversie prin vce cu persn respectiv. Pe lng cest ferestr principl mi sunt ferestr pentru vizulizre unei pgini cu infrmii despre mdul de flsire, pentru vizulizre mesjelr trimise i recepinte, pentru cnectre, pentru vizulizre infrmiilr despre plicie, pentru iniiere unei sesiuni SIP i pentru terminre unei sesiuni SIP. cum s- precizt mi devreme cest plicie re psibilitte de nregistr mesjele trimise ntre utiliztri. Dc un utiliztr i prte l cnversie cest pte vizuliz mesjele trimise n cdrul celei cnversii din mmentul intrrii cestui prin intermediul unei ferestre. Dc drete vizulizre mesjelr din lte zile pte citi fisierul lg.txt n cre sunt trecute mesjele de l prim flsire prgrmului. n cntinure se vr prezent pi necesri cre trebuiesc fcui pentru utiliz cest prgrm. pi se vr prezent mi detlit mdul de funcinre l prgrmului n generl i pi pe cele du direcii: prte de cht i prte de VIP. 2. Mdul de utilizre Dup prnire prgrmului pre ferestr principl ce cnine elementele tte elementele necesre pentru relizre n bune cndiii unei cnversii cht. Pentru intr ntr- discuie cu li utiliztri trebuie s c prgrmul s fie cnectt l ree. Flsind br de meniuri se selectez butnul ctins ce deschide un sub dmeniu i de cl se lege butnul Cnnect ce v deschide ferestr n cre se scrie dres de multicst i prtul ce v fi flsit pentru cmunici prin mesje text i numele sub cre vre utiliztrul s fie cunscut n cnversie. Se ps butnul i n cest mment utiliztr v fi n mdul cnversie dc tte infrmiile u fst crecte. Succesul su insuccesul cestei ciuni este indict n textul din jsul ferestrei principle. Tt ici se indic psibil erre ntlnit n relizre ciunii drite de utiliztr. Dc n list utiliztrilr prezentt n drept pre numi numele utiliztrului nsemn c prgrmul funcinez dr numi el re prgrmul de cht prnit. Schimbre numelui cu cre pre n cest list se fce flsind butnul Chnge Nickce este plst n ferestr principl. Succesul su insuccesul cestei ciuni este indict n zn din jsul ferestrei.

Pgin 71 Pentru trimite mesje este dejuns s se selecteze zn destint cestui lucru, s se scrie mesjul i s se pese tst Enter. n cest mment cest mesj mpreun cu numele utiliztrului pr n zn de text din centrul ferestrei. n cest ferestr pt fi reprezentte i imgini ce indic numite stri eminle le utiliztrului numite emticne. Pentru cest utiliztrul trebuie s tsteze un numit cd frmt din du su trei crctere text. ceste cduri specifice plus descriere imginii scite sunt prezentte n cntinure: fericit :) frte fericit :d surprins : suprt(limb):p smecher ;) suprt :( dezrientt :s ruint :$ chelri de sre (s) nedecis :| d (y) nu (n) ft (x) bit (z) te iubesc (l) nu te iubesc (u) pz (p) cdu (g) ctui (%) flre (f) butur (d) flre filit (w) bere (b) lilic :[ messenger (m) emil (e) telefn (t) srut (k) idee (i) drmit (s) muzic (8) zi de ntere (^) furis :@ plng :'( cel (&) film (~) curcubeu (r) sre (#) nger () ces () drc (6) pisic (@) phr (c) ste (*) Derece zn de fire permite vizinre numi mesjelr cele mi recente se permite citire tuturr mesjelr trimise i recepinte n cdrul sesiunii curente prin intermediul ferestrei Lg. Pentru deschide trebuie pste butnele View i Current Lg din br de meniuri. Pentru vizuliz mesjele din cdrul ltr cnversii trebuie s se deschid fiierul lg.txt flt n celi directr unde se fl i fiierele n jv. Pentru inii cnversie prin vce trebuie s se selecteze din br de meniuri dmeniul ctins subdmeniul ViceCht cre v deschide ferestr n cre se vr intrduce numele utiliztrului i dres de ree cestui cre v fi invitt s prticipe i scurt descriere mtivului pentru cre se relizez cest invitie. Dup psre butnului Dil l prte pelt v pre ferestr cre v prezent surs i mtivul cestui pel. Dc se ps butnul Yes tunci pelul este cceptt i se pte ncepe cnversi. Dc se ps butnul N tunci prte cre iniit pelul este infrmt c pelul nu se pte reliz. Cnversi se pte termin i din prte pelt i din prte pelnt prin psre butnului Kill ViceCht din dmeniul ciuni din br de meniu. Situi pelului n tte mmentele sle este prezentt n zn din jsul ferestrei principle, utiliztrul putnd stfel s cineze n cuntin de cuz. n rice mment se pte purt dr sigur cnversie prin vce, ssire unei invitii ni su trimitere unei v ve c rspuns n md utmt un refuz. Meninez c cele du plicii sunt independente dic se pte purt cnversie prin vce chir dc utiliztrul nu se fl cnectt l sistemul de trnsmitere i recepie mesjelr scrise dr unele infrmii necesre pentru relizre unei cnversii prin vce pt fi extrse din infrmiile prezentte de prgrm tunci cnd se fl ntr- cnversie prin text. De exemplu dc nu se indic dispnibilitte pentru purtre unei cnversii de tip cht prin cnectre tunci nu se pte ti dc utiliztrul drit pentru cnversie prin vce re prgrmul prnit. Tt prin cnectre se pte fl numele i dres de ree utiliztrului necesre pentru iniire unei cnversii.

Pgin 72 Pentru ieire din prgrm ri se ps butnul X din drept sus ferestrei principle cre v decnect prgrmul din cnversi cht i v termin cnversi ctiv prin vce su pte s pese butnul Exit din dmeniul ctins din br de meniuri mment n cre se vr execut celei ciuni c mi sus. 3. Descriere clselr cnstituente cest prgrm este frmt dintr- cls principl numit Client ce iniiz celellte clse i cnstriuete ferestr principl i din mi multe clse secundre. ceste sunt n generl de du tipuri: clse flsite numi l prte grfic pliciei (but, Help, Cnnect, VIP, VipT, VRing) i clse flsite n funcinre pliciei (Client, Chtre, Cnectre, Cnversie, Recepie, Trnsmisie, UsergentSIP, UsergentServerSIP, UsergentClientSIP). Pe lng ceste mi sunt prezente clse (Pcket, bsluteLyut, bsluteCnstrints, MesjSIP) cre pt fi numite utilitre drece sunt flsite n funcinre celrllte clse. Clsele bsluteLyut i bsluteCnstrints sunt flsite pentru pziinre elementelr grfice n ferestre i u fst prelute de l Sun Micrsystems. u fst intrduse n pchetul Client derece ele nu sunt n Jv 2 SDK 1.4.1 . Fiind flsite de tte clsele ce definesc ferestre, ele pt fi cnsiderte c fcnd prte din stndrd i nu u mi fst desente n digrm de clse. > Cls principl reprezint cls numit Client cre definete ferestr principl dr cnine i cdul ce determin mdul de funcinre l ntregii plicii. cest cls prnete un fir de execuie cre n funcie de numite stri (cnectre, decnectre, cnectt) se instiz celelte clse necesre pentru cmunicii. Din cest cls se iniilizez i cls ce prnete firele de execuie ce trimit i recepinez pe prtul SIP (les n stndrd c fiind 5060) Dc utiliztrul cere s fie cnectt (psibil numi n czul n cre nu vem cnexiune stbilit) tunci cest cls crez instn unei clse ce ncerc s se cnecteze, numit Cnectre. n funcie de rezulttul cestei ciuni cntinu cu crere unei clse ce se cup cu cnversi, numit Cnversie, su infrmez utiliztrul c, cnexiune nu se pte reliz. Dc utiliztrul drete decnectre (psibil numi n czul n cre vem cnexiune stbilit) cls Client cmnd clsei Cnversie s se presc i cere decnectre clsei Cnectre. Mesjele ce trebuiesc trimise sunt pste clsei Cnversie de l cre primete mesjele primite de l celelte plicii. ceste mesje primite sunt pste clsei cre le fiez pe ecrn (cls Chtre). Metdele i tributele clsei Client pt fi vzute n figur IV.1 ( pe lng tributele rtte mi sunt i referinele l celellte clse prezentte precum i l biectele grfice). > Cls Cnectre este flsit l cnectre i decnectre de l ree n mbele situii cest trimind celrllte plicii mesje specifice. re metde prin cre returnez referin l scketul de tip multicst pe cre l crez.

Pgin 73 Metdele i rgumentele sunt prezentte n figur IV.2.

Figur IV.1 Cls Client

Figur IV.2 Cls Cnectre > Cls Cnversie se cup cu trnsmitere i primire mesjelr, pentru cest flsind du fire de execuie plste n du clse denumite Receptie i Trnsmisie. Pentru prte de trnsmisie se ntreine list de mesje pentru exist sigurn c mesjele nu se pierd i pentru flsire firului de execuie numi tunci cnd sunt mesje n teptre n list. Clsele Recepie i Trnsmisie flsesc metdele clsei Cnversie pentru prelu i ps

Pgin 74 mesjele. Cls Cnversie flsete l rndul ei metdele clsei Client pentru -i d secvenele de crctere primite de l celellte plicii i pentru prelu crcterele scrise de utiliztr. Mesjele i situiile n cre se schimb ceste sunt prezentte mi js: - cnectre. Se trimite din prte pliciei cre se cnectez mesjul /cnnect l cre fiecre plicie ce primete cest mesj rspunde cu /nick nume(dresIP) unde nume reprezint peltivul les de fiecre utiliztr ir dresIP reprezint dres de ree terminlului flsit de utiliztr. - schimbre peltivului. plici cre primit cerere de schimbre peltivului trimite n ree prin trnsmisie de tip multicst mesjul /chgnick peltiv vechi: peltiv nu dup ce n prelbil verifict c peltivul nu nu este dej flsit n ree. - trimitere de mesje. plici l crui utiliztr scris un mesj trimite mesjul /msg peltiv: mesj. plici cre primete cest mesj tiprete mesjul primit. - decnectre. plici cre primete cmnd de decnectre trimite mesjul /discnnect peltiv(dresIP) Metdele i vribilele clselr sunt prezentte n figur IV.3( n cls Cnversie pe lng tributele rtte mi sunt i referinele ctre clsele Receptie i Trnsmisie): > Cls Chtre reprezint cls prin cre se fiez mesjele de l server nlcuindu-se ici cdurile cu imgini. Din punct de vedere l implementrii cest cls crez imgine cre este pi desent n ferestr principl pelndu-se metd pint() cestei clse. ici se definesc cdurile i emticnele desente i se fce sciere ntre ele. Derece cee ce se desenez n ferestr principl este imgine, funci scrll, cre se gsete l un Textre, nu este suprtt i de cee fst nevie de creere unei ni clse Lg cre pte fi discui dr fr nlcui cdurile cu emticne i cre bineneles suprt funci scrll. Cls Pcket este cls cre este flsit numi de cls Chtre n cdrul metdei pint() i furnizez infrmii despre ce emticn trebuie desent, unde fst gsit i cte crctere trebuie s nlcuisc. Metdele i rgumentele cestei clse precum i cele le clsei Pcket sunt prezentte n figur IV.4. > Cls Lg se cup pe lng fire discuiei din sesiune curent i cu meninere unui fiier lg.txt n cre se scriu tte mesjele primite plus r i ziu l cre fst cnectre l server. cest fiier pte fi ters de ctre utiliztr prin intermediul unui butn pus l dispzii cestui. Metdele i rgumentele cestei clse sunt prezentte n figur IV.5. > Help fiez ntr- ferestr priuni din cest dcument flt ntr-un fiier numit help.txt. > but fiez, ntr- ferestr, infrmii despre plicie. > Cnnect definete ferestr unde sunt mplste cmpurile unde se intrduc infrmiile despre dres de multicst, prtul i peltivul utiliztr. Tt n cest ferestr se fl un butn Cnnect cre cint psez infrmiile, flte n cmpuri, clsei Client i infrmez pe cest c se drete cnectre l clcultrul indict. > VIP definete ferestr unde sunt trecute infrmiile despre utiliztrul ce v fi invitt s prticipe l cnversie prin vce. Tt n ce ferestr este trecut mtivul cnversiei. tunci cnd se ps butnul Dil ceste infmii sunt pste clsei UsergentClientSIP.

Pgin 75

Figur IV.3 Clsele Cnverstie, Trnsmisie i Recepie

Figur IV.4 Cls Pcket

Pgin 76

Figur IV.5 Cls Chtre i Pcket

Figur IV.6 Cls Lg > VRing definete ferestr ce pre tunci cnd se primete din ree invitie l cnversie. cest ferestr prezint utiliztrului infrmii despre cel ce l invit i mtivul cestei invitii. Du butne sunt puse l dispziie pentru lege dc cept cest invitie su nu. Indiferent de legere se pelez metde din cls UsergentServerSIP pentru se trimite rspunsul. > VipT definete ferestr cre pre tunci cnd un utiliztr drete s termine cnversie. Dc se cnfirm terminre cnversiei tunci se pelez metde cre s trimit mesjul BYE pri interlcutre. > UsergentSIP reprezint cls n cre se prnesc firele de execuie ce trimit mesjele SIP i recepinez ceste mesje. Dup scurt prcesre mesjele primite sunt trimise ri

Pgin 77 clsei UsergentServerSIP dc sunt cereri, ri clsei UsergentClientSIP dc sunt rspunsuri.

Figur IV.7 Cls UsergentSIP > MesjSIP este flsit pentru extrgere vlrilr cmpurilr dintr-un mesj SIP i pentru crere de mesje SIP.

Figur IV 8 Cls UsergentClientSIP > UsergentClientSIP reprezint cls ce prcesez rspunsurile primite de l servere prin intermediul clsei UsergentSIP i cre trimite clsei MesjSIP infrmiile necesre pentru crere de cereri SIP. ceste cereri sunt pste clsei UsergentSIP. > UsergentServerSIP este cls ce prcesez cererile primte de l clieni i trimite npi rspunsuri crete cu jutrul clsei MesjSIP.

Pgin 78

Figur IV. 9 Cls MesjSIP

Pgin 79

Figur IV. 10 Cls UsergentServerSIP > SDP reprezint cls ce crez i descifrez infrmiile SDP.

Figur IV.11 Cls SDP > CpturePlybck reprezint cls ce se cup cu primire infrmiei udi de l plc de sunet, trimitere cestei infrmii flsind pchete UDP, recepinre i trimitere cestei spre plc udi. Firele de execuie sunt prnite ri de server, ri de client ir nchidere cestr se relizez de cls cre le-u prnit. Firele de execuie sunt ncpsulte n du clse interire cestei clse. Cdecul flsit este unul dintre cele suprtte de mediul Jv dic frecven de entinre 8000Hz, cu 8 bii pe entin, fr semn, stere.

Pgin 80

Figur IV. 12 Cls CpturePlybck Digrm de clse este urmtre:

Figur IV. 13 Digrm de clse

Pgin 81 4. Mdul de funcinre L prnire pliciei, cls Client se cup cu instnre clselr Help, but, Cnnect i Chtre dr i cu prnire firului de execuie prpriu. Digrm de clbrre din figur urmtre v prezent cest cz:

Figur IV. 14 Digrm de clbrre n czul: prnire execuie Dc se drete cnectre, prin intermediul ferestrei definit de cls Cnnect se duce l cuntin clsei Client c se drete cnectre. n cest mment n interirul firului de execuie l clsei principle se verific dc mi exist cnexiune, cz n cre ciune se ignr. Dc nu exist cnnexiune tunci se instniez cls Cnectre, cre prin crere unui scket ctre server ncerc deschidere unui cnexiuni cu cest. Dc cest ciune se desfr fr prbleme se instniz cls Cnversie cu fluxurile de intrre i ieire de pe scket-ul cret. L rndul ei cest cls instnez du clse cre cnin fiecre cte un fir de execuie ce se cup cu unul cu recepi cls Receptie i celllt cu trnsmisi cls Trnsmisie. Dc instn clsei Cnectre indic c, cnexiune nu se pte reliz tuci se nchide tt prcesul cu un mesj de erre ctre utiliztr. Digrm de clbrre pentru czul n cre prcesul de cnectre se desfr fr prbleme este prezentt n figur IV.15.

Pgin 82

Figur IV. 15 Digrm de clbrre n czul cnectrii fr prbleme Dc vem cnexiune i utiliztrul scrie un mesj su drete s-i schimbe nick-ul, cmnd junge l instn clsei Cnversie unde este pus ntr- list de mesje. Din cest list de mesje este lut de ctre instn clsei Trnsmisie. Digrm de clbrre este:

Figur IV.16 Digrm de clbrre n czul n cre se trimite un mesj Dup tipul mesjelr primite de ctre instn clsei Recepie putem ve urmtrele digrme de clbrre: - czul cnd se primete un text scris de li utiliztri;

Pgin 83

Figur IV. 17 Digrm de clbrre n czul recepinrii unui mesj czul cnd se primete peltivele utiliztri cnecti;

Figur IV.18 Digrm de clbrre n czul primiri unui peltiv l unui utiliztr cnectt czul n cre utiliztrul drete decnectre;

Decnectre pte surveni n czul n cre pr erri l citire su trnsmitere mesjelr su n czul n cre utiliztrul ps butnul Discnnect. Dc pre cel puin un din ceste situii instn clsei Client trimite cmnd de decnectre ctre instn clsei Cnectre, prete firele de execuie din instnele clselr Recepie i Trnsmisie, terge ri utiliztrilr cnecti l celi server, trimite cmnd ce nchide fiierul unde se nscriu mesjele primite, terge ri unde se fiez mesjele primite, terge cmpul Nicknme i lte ciuni ce in de ferestr de fire.

Pgin 84

Figur IV. 19 Digrm de clbrre n czul n cre utiliztrul cmnd decnectre Pentru iniiere unei sesiuni VIP utiliztrul trebuie s deschid ferestr definit de cls VIP i s scrie cl infrmiile necesre pentru identificre pri interlcutre i s cnfirme cest lucru prin psre butnului. ceste infrmii sunt pste clsei UsergentClientSIP cre cu jutrul clselr MesjSIP i SDP crez mesjul SIP INVITE pe cre l psez clsei UsergentSIP mpreun cu prtul i dres unde trebuie s trimit pchetul UDP. Cellt plicie primete pchetul cu jutrul clsei UsergentSIP cre dup ce bserv c este cerere l trimite clsei UsergentServerSIP. cest cu jutrul clselr MesjSIP i SDP decdific mesjul SIP i bservnd c reprezint invitie deschide ferestr cnstruit de cls VRing. ici utiliztrul indic dc ccept su nu invitie i presupunnd c ccept cls UsergentServerSIP prnete firele de execuie din cls CpturePlybck cre ncep s primesc pchete udi de l plc udi i le trimit spre cellt plicie i trimit pchetele primite din ree spre plc udi. Cls UsergentServerSIP trimite prin intermediul clsei UsergentSIP mesjul SIP K cre dt juns l UsergentClientSIP determin prnire firelr de execuie le clsei CpturePlybck i trimitere spre cellt plicie mesjului SIP CK. Digrm din figur 20 prezint succesiune etpelr prezentte mi sus.

Pgin 85

Figur IV. 20 Trimitere unui mesj INVITE Metdele reprezentte prin cifre sunt: 1: Utiliztrul ps butnul ViceCht cre pelez metd vipctin (ctinEvent) 2: shw() - se fiez ferestr; ici utiliztrul intrduce infrmiile i ps butnul Dil 3: sendInvite(String,String,String,String,String,Inetddress) se crez mesjul SIP cu jutrul clselr MesjSIP (metd creteRequest()) i SDP (metd creteMesj()) 4: putMesj(String,int,Inetddress) se trimite mesjul clsei UsergentSIP 5: send(DtgrmPcket) trimitere ntr-un pchet UDP 6: receive(DtgrmPcket) recepinre pchetului 7: mesjNu(String) dup ce determint c mesjul este cerere cest este trimis clsei UsergentServerSIP 8: shw() - deschide ferestr cre infrmez ssire invitiei 9: yesctin(ctinEvent) utiliztrul rspunde firmtiv i vribilele rspuns i click sunt trecute pe vlre true

Pgin 86 10: clicked(), rspunsul() se testez vribil click pn cnd este true (utiliztrul pst pe un butn) i pi se cere rspunsul (presupunem c ccept inviti) 11: strt() se prnesc firele de execuie 12: putMesj(String,int,Inetddress) se trimite mesjul SIP K 13: send(DtgrmPcket) 14: receive(DtgrmPcket) 15: mesjNu(String) 16: strt() se prnesc firele de execuie le clsei CpturePlybck 17: putMesj(String,int,Inetddress) se trimite mesjul SIP CK 18: send(DtgrmPcket) 19: receive(DtgrmPcket) 20: mesjNu(String)

Pentru terminre unei sesiuni SIP trebuie s se pese butnul din dmeniul ctins din br de meniuri numit Kill ViceCht. cest v dechide ferestr n cre se drete cnfirmre utiliztrului pentru trimite mesjul BYE cre v nchide sesiune. Derece sesiune pte fi nchis de ricre din cei di prticipni dic din punctul de vedere l pliciei pte fi nchis ri de server-ul SIP ri de clientul SIP. Derece cls CpturePlybck fst instnit l nivelul cestr cmpnente, cls VipT ce definete i ferestr trimite mbelr clse cmnd s trimit mesjul BYE. L nivelul cestr clse se decide cine instnit cls CpturePlybck, prete i trimite n ree spre cellt plicie mesjul SIP BYE. cl cest mesj este pst celr du clse cre dc u instnit cls de cptre i redre vcii presc ir dc nu u fcut cest lucru ignr mesjul. Figur 21 prezint etpele prezentte mi devreme. Metdele reprezentte prin cifre sunt: 1: vipTctin(ctinEvent) utiliztrul ps butnul Kill ViceCht 2: shw() se fisez ferestr cre cere cnfirmre ciunii 3: sendBYE() se trimite cmd de nchidere cnversiei i de trimitere mesjului BYE 4: sendBYE() se trimite cmd de nchidere cnversiei i de trimitere mesjului BYE 5: putMesj(String,int,Inetddress) se trimite mesjul dup ce fst cret cu jutrul clselr MesjSIP i SDP su 7: putMesj(String,int,Inetddress) 6: kill() se cmnd prire firelr de execuie ce se cup cu cptre/redre i trimitere/recepinre pchetelr udi su 8: kill() 9: send(DtgrmPcket) se trimite n ree pchetul 10: receive(DtgrmPcket) se recepinez pchetul 11: mesjNu(String) se psez mesjul din pchetul recepint 12: mesjNu(String) se psez mesjul din pchetul recepint

Pgin 87 13: kill() -se cmnd prire firelr de execuie ce se cup cu cptre/redre i trimitere/recepinre pchetelr udi

su 14: kill()

Figur IV. 21 Trimitere mesjului BYE

5. Mdul de cnfigurre Imprtnte pentru plici de f sunt prturile prin cre se trimit i se recepinez mesjele scrise, pchetele SIP i pchetele udi. Du dintre ceste u fst lese i integrte n implementre. stfel mesjele SIP se trimit i se recepinez prin prtul 5060 vlre prelut din RFC ce se cup cu descriere SIP. Pchetele udi se trimit i se recepinez prin prtul 3234, vlre les de mine. L dispzii utiliztrilr rmne legere vlrii prtului prin

Pgin 88 cre se trimit i se recepinez mesjele scrise. Pentru funcinre crect trebuie c prtul les s fie celi pentru ti utiliztrii. Exist i psibilitte s se creze cmere privte prin legere de ctre un grup unui prt diferit de cel les de restul utiliztrilr stfel cest grup putnd trimite mesje ntre ei fr c restul s-le recepineze (prin flsire cestei plicii) 6. Mdliti de extindere Felul cum fst implementt cest plicie i cnfer prpriette de fi extins frte ur. Derece fst cret din mi multe mdule unele cmplet independente, se pte schimb cmprtmentul cestei plicii cu puine mdificri le clselr. De exemplu prte de cnversie depinde numi de metdele ce exist n cls Client i de cele ce exist n cls Cnversie i schimbre cmprtmentului n timpul cnversiei schimb dr metdele din Cnversie ce pelez pe cele din Client. Schimbre prtclului ce este flsit de plicii pentru cnectre, decnectre duce numi l schimbre clsei Cnversie derece numi ici se ine cnt de cest prtcl. De semene i mdlitte de fire mesjelr se pte schimb ur derece se flsete pentru cest lucru singur metd din cls Client i cls Chtre, ir mdificre cestr se pte reliz fr dificuti. Se pte reliz fr mre efrturi scriere mesjelr cum ssesc ntr-un element grfic numit Textre, dr n mdul cest nu se mi pt prezent imginile cdificte. Se pte reliz i mdificre imginilr ntr-un md simplu prin nlcuire vechilr imgini cu nile imgini n flder-ul Imges, cu cndii s se pstreze celei denumiri. Setul de imgini se pte mbuntii, pundu-se dug ni imgini i cdurile ferente dr pentru cest trebuie mdificte clsele Pchet unde sunt prceste cdurile i Chtre unde sunt ncrcte imginile. extindere necesr pentru cest plicie este implementre prtclelr RTP i RTCP pentru trnsmisi pchetelr udi, pentru respect stndrdele n ttlitte. cest se pte reliz cu scriere de clse semntre cu MesjSIP cre s creeze i s prceseze mesjele prtclelr RTP i RTCP. lt extindere reprezint implementre de cdecuri n plus. cest depinde de ce fer mediul Jv i de ce permite plc udi din clcultrul pe cre rulez plici. Se pte reliz prin crere unei liste nlnuite cre s cnin prmetrii cdecurilr i cre s fie flsit tunci cnd se iniiz cls CpturePlybck. Printr- frm de indexre s v indic ce zn listei trebuie flsit. lt psibilitte este crere unei clse cre s se cupe cu implementre unui cdec specific. ici trebuie menint c prgrmele relizte n Jv u timpi de execuie mi mri dect prgrmele relizte n lte limbje i din cest cuz ntrzierile glble prduse trnsmisiei de vce prin reeu de pchete sunt mi mri dect cele precnizte n terie. Flsire unr cdecuri mi cmplicte v duce cu sigurn l ntrzieri mult mi mri. Pentru utilizre n cndii bune ntr- ree frte intens flsit trebuie s se duge mecnismele IntServ, dic plici s fie cpbil s trimit i s prceseze mesjele PTH i RESV prin cre se pte rezerv resursele necesre trnsmisiei n cndiii bune vcii prin LN. Pentru mecnismul de cnversiei prin mesje scrise cest lucru nu e necesr derece nu este plicie n timp rel. Implementre mecnismelr IntServ se pte reliz prin dugre de clse cre s tie s citesc i s creeze mesjele i clse cre s relizeze cmunici prin ree. Prte de cht pte fi mbuntit prin dugre de cmere privte n cre s se pt discut fr c mesjele s jung l cei din fr cmerei. mdlitte r pute fi intrducere n mesj i numelui cmerei i pliciile s fieze mesjele primite n funcie de cmer unde se fl utiliztrul i de numele cmerei din mesj.

Pgin 89

7. Cncluzii n urm testelr funcinle s- bservt c serviciile furnizte de cest plicie nu sunt dependente de putere de clcul terminlului pe cre rulez. Dc se flsesc un terminl cu un prcesr cu frecven de lucru de peste 1 GHz i un terminl cu un prcesr cu frecven de lucru sub 500 MHz pe cre rulez cest plicie se bserv c vem ceei clitte udi n mbele sensuri. cest plicie este mrturie n plus supr uurinei cu cre se pte intergr plicie VIP cu lte plicii. n czul de f nu fst nevie dect de scriere unr clse n plus. Nu fst nevie delc mdificre clselr dej existente. n dezvltre cestei plicii s- remrct uurin cu cre prtclul SIP fst implementt. Dup cum se v bserv din listre cdului s- lucrt numi cu siruri de crctere i perii cu ceste, lucru frte ur de relizt. i dimensiune clsei este mrturie n cest sens. Chir dc u fst implementte numi prte din cererile i rspunsurile SIP, ttui se bserv simplitte clselr cre i-u deciziile n privin cestr. Este nevie numi de cuntere metdei su tipului cereri pentru lu decizie. Clitte serviciilr ferite depinde n mre msur (dc terminlul este unul ptrivit) de serviciile ferite de reeu pe cre funcinez plici prezentt derece nu s- implementt prtclele RTP i RTCP, mecnismele de rezervre resurselr i cdecuri de bnd mi mic. Dc este flsit pe ree de mici dimensiuni cu ncrcre medie tunci clitte serviciilr este bun. Dc vem reele de mri dimensiuni su ncrcri mri tunci clitte este mult mi sczut. cum se bserv i din cdul prezentt n nexele de l fritul lucrrii, cest plicie prezint interf cre este ur de nvt i de flsit. Fiecre butn re scit un text de tip tltip cre explic ce se v ntmpl dc v fi flsit. Desfurre unei ciuni imprtnte cum r fi cnectre su trimitere unei invitii este urmt cu scriere unui mesj explictiv n prte de js ferestrei principle. Errile cre pr sunt de semene fite n prte de js ferestrei. n ferestrele unde utiliztrul trebuie s intrduc infrmii, fiecre cmp re scit un tltip cre i indic sub ce frm su ce tip de infrmie este cerut de prgrm. Dc intrduce infrmie necrespunztre (de exemplu litere n lc de cifrele ce indic prtul flsit) ciune euez i n zn din prte de js prgrmului i-se spune unde greit. n plus tte ceste zne de intrducere infrmiei sunt trecute infrmii cre ri sunt cele prpuse spre fi flsite (cum r fi dres si prtul de multicst) ri du infrmi n plus despre cee ce se cere de l utiliztr. cest plicie fst un exerciiu util pentru mine derece m- jutt s nv mdul cum funcinez i cum se pte implement prtclul SIP.

Pgin 90

nex 1 Cdul pliciei explict n cest seciune vi prezent i explic cdurile unr clse imprtnte cum r fi Chtre cre se cup cu prte de scriere mesjelr i emticnelr, CpturePlybck cre se cup cu cptre i redre vcii i clsele UsergentServerSIP i UsergentClientSIP ce prcesez i trimit cererile i rspunsurile SIP. Chtre este respnsbil cu fire textului primit de l server n ferestr principl pliciei. E crez imgine n cre pun textele plus emticnele primite cre pi, prin pelre metdei pint(Grphics g) cestei clse, din cls Client, cest imgine este desent. Prin cnstructr i-se precizez unde s deseneze imgine. Implementre clsei ncepe : pckge Client; imprt jv.wt.*; imprt jv.wt.gem.*; imprt jv.wt.Grphics2D; imprt jv.wt.imge.*; imprt jv.util.LinkedList; imprt jv.util.StringTkenizer; imprt jvx.swing.*; clss Chtre extends JPnel { privte blen first; privte BufferedImge bimg; privte Grphics2D big; privte Imge ngel,ngry,sleep,bt,birthdy,by,ct,clck,cnfused; privte Imge cry,cup,devil,dg,dntlve,drink,emil,embrrssed,gift; privte Imge girl,hndcuffs,ide,kiss,lve, messenger,mvie,music,n; privte Imge picture,rinbw,rse,str,sun,sunnyfce,telephne,undecided; privte Imge wiltflwer,yes,hppy,verryhppy,surprized,tngue,wink,sd,beer; privte LinkedList mesjePrimite; privte int width,heigth,x,y; n cest seciune sunt definite imgine ce v fi desent (bimg), (big) instn ce v pune l dispziie metdele necesre pentru desen n bimg, list de mesje (mesjePrimite) ce v cnine mesjele dte de cls Client, zn i dimensiunile imginii ce v fi desente i imginile ce vr fi puse n bimg tunci cnd se ntlnete cdul unui emticn. n cntinure este scris cnstructrul cre iniilizez tributele de mi sus: public Chtre(int x,int y,int w,int h) { mesjePrimite=new LinkedList(); first=flse;

Pgin 91 this.x=x; this.y=y; width=w; heigth=h; ngel=Tlkit.getDefultTlkit().getImge("Imges/ngel.gif"); ngry=Tlkit.getDefultTlkit().getImge("Imges/ngry.gif"); sleep=Tlkit.getDefultTlkit().getImge("Imges/sleep.gif"); . . . . wink=Tlkit.getDefultTlkit().getImge("Imges/wink.gif"); yes=Tlkit.getDefultTlkit().getImge("Imges/yes.gif"); bimg=new BufferedImge(w,h,BufferedImge.TYPE_3BYTE_BGR); big=bimg.creteGrphics(); } Se bserv crere unei imgini (bimg) cu dimensiunile dte prin cnstructr i iniilizre vribilei big cu instn tip Grphics2D fpt ce i d dreptul de fi flsit pentru desen n bimg. n cntinure se scrie metd ce mi imprtnt cestei clse, metd cre frmez imgine bimg i desenez cl unde i- fst indict prin cnstructr: public vid pint(Grphics g) { Se definesc vribil ce v cnine secven de crctere ce trebuie desent i vribil ce v fi flsit ntr-un ciclu fr pentru desenre tuturr mesjelr din list. String s=null; int cnt; Se definesc vribilele ce indic de unde ncepe desenre textului n cdrul imginii. int pzImgY=5; int pzImgX=10; Derece s- bservt c pentru desenre pentru prim dt unei imgini trebuie pelt metd drwImge(..) de du ri s- flsit urmtrul cd ce este rult dr singur dt pe prcusul vieii clsei Chtre. Prblem cu fire imginilr fst bservt i rezlvt pe prcursul crerii versiunilr nterire i de tunci cdul nu mi fst schimbt. Mtivul pentru cre imgine, cre este flsit pentru prim r, nu se desenez dect dup pelul de du ri metdei drwImge(..) mi este necunscut dr cred c re legtur cu ncrcre imginii n memrie. if(first==flse)

Pgin 92 { big.drwImge(ngel,0,0,this); big.drwImge(ngry,0,0,this); . . . big.drwImge(wiltflwer,0,0,this); big.drwImge(wink,0,0,this); big.drwImge(yes,0,0,this); first=true; } Se lege cum culre de fundl i se desenez mrginile imginii principle: big.setClr(Clr.white); big.fillRect(0,0,width,heigth); big.setClr(Clr.blck); big.drwRect(1,1,width-1,heigth-1); Se scrie ciclul fr cre este flsit pentru desen tte mesjele din list. Metd dim() ntrce dimensiune listei, metd get(int) prei mesjul de l pzii indict: fr(cnt=0;cnt<dim();cnt++) { s=get(cnt); String str=null; int n; while ((lengthG(s,big))>=(width-pzImgX-6)) { n=lengthG(s,big,width,pzImgX); str=s.substring(0,n); s=s.substring(n); pzImgY=drwS(str,big,pzImgX,pzImgY,pzImgY); } if(lengthG(s,big)<(width-pzImgX-6)) { pzImgY=drwS(s,big,pzImgX,pzImgY,pzImgY); } } Metd lengthG(String, Grphics2D, int, int ) ntrce numrul mxim de crctere cre se pt desen dintr-un mesj dt stfel nct s nu se depesc lime imginii desente i primind c prmetrii secven de crctere, vribil flsit pentru desenre, lime i pzii de pe x X de unde ncepe fire secvenei. Ciclul while este flsit pentru mpri mesjul dt n secvene de crctere ce pt fi desente ntr-un singur rnd. Din ciclul while se iese numi dc lungime secvenei de crctere rmse de desent nu depete lime imginii din cre se

Pgin 93 scde pzii de unde se ncepe scriere secvenei i un spiu les de mine egl cu 6 pentru nu se scrie exct pn l mrgine znei de fire. Metd length(String s, Grphics2D) ntrce dimensiune grfic secvenei , secven ce fst dt c prmetru. Metd drwS(String,Grphics2D,int,int,int) desenez secven dt c prmetru ncepnd desenre pe x X din pzii indict de primul prmetru ntreg ir desenre pe x Y ncepe din pzii indict de unul din ultimii prmetrii i ntrce pzii pe x Y unde fst desent secven. Dup ce se iese din ciclul while se desenez ce mi rms din mesjul iniil. n cntinure se sct mesje din list dc desenre lr se fce prpe de limit de js imginii desente: if(pzImgY>(heigth-10)) { rmv(); rmv(); rmv(); } else if(pzImgY>(heigth-20)) { rmv(); rmv(); } else if(pzImgY>(heigth-40)) { rmv(); } Se sct din ce n ce mi multe mesje dc desenre cestr junge periculs de prpe de mrgine inferir imginii. Metd rmv() elimin mesje din list. cum se desenez imgine principl, fiind i ultim instruciune din metd pint: g.drwImge(bimg,x,y,this); } Pentru fce redesenre se pelez metd repint() n cls principl metd cre pelez ici metd updte(Grphics g) : public vid updte(Grphics g) { pint(g); } n cntinure se scrie metd drwS() cre desenez mesjul primit c prmetru desennd ttdt i emticnele crespunztre cdului. cest metd verific dc mesjul re emticne su nu. Dc nu re, desenez direct mesjul. Dc re, desenez mesjul pn l primul emticn, desenez imgine emticnului i pi metd se pelez pe e nsi pentru mesjul de dup emticn. privte int drwS(String s, Grphics2D big,int pX, int pY, int pY1) {

Pgin 94 int x; int nr; Imge img; int temp; Pcket pck=trd(s); String str; S- nceput cu declrre unr vribile cum r fi: x-> pzii pe x X unde s- gsit cdul emticnului; nr-> numrul de crctere ce cnstituie cdul; img-> v cnine imgine emticnului; temp-> vribil flsit pentru desenre textului cu mrgine de js l celi nivel cu mrgine de js imginii; pck-> iniilizt cu instn unei clse ce re c prmetrii tribute de genul x, nr, img ; str-> vribil flsit pentru desenre mesjului pn l emticn. Metd trd(String) returnez instn unei clsei Pcket dc secven pst c prmetru re emticne su null dc nu exist emticne n secven. if(pck==null) { if(pY==pY1) { pY+=15; big.drwString(s,pX,pY); return pY; } else { big.drwString(s,pX,pY1); return 0; } } n czul secvenei fr emticne textul pte fi desent n du vrinte psibile. Vrint du de desenre se flsete pentru fire textului dup ce s- desent imgine unui emticn. n prim vrint se dug 15 (dimensiune mxim prximtiv unui crcter pe x Y plus spiul lst ntre rnduri) derece dimensiune pst cnd se pelez metd reprezint pzii unde s- desent ultimul rnd. else { pY+=2; x=pck.getx(); nr=pck.getnr(); img=pck.getImg(); str=s.substring(0,x); temp=pY+img.getHeight(this); big.drwString(str,pX,temp); big.drwImge(img,(pX+lengthG(str,big)),pY,this); if((x+nr)<s.length())

Pgin 95 { drwS(s.substring(x+nr),big,((pX+lengthG(str,big)) +img.getWidth(this)),pY-=2,temp); } return temp; } } bservie: dc imgine se desenez n punctul , cest punct v reprezent clul stng sus l imginii; dc un text se desenez n punctul , cest punct v reprezent clul stng js l textului. n czul secvenei cu emticne pzii de unde se desenez imgine se mut mi n js cu 2 pentru c imgine s nu fie desent peste litere cre u elemente grfice sub mrgine de js nrml unui text (cum r fi: g, y, j, q, etc.). pi se ncrc n vribilele x, nr i img rezulttul metdei trd(), n str secven pn l primul emticn ir n temp lcul unde v fi desent textul (se bserv c textul se v desen stfel nct mrgine de js textului s cincid cu mrgine de js imginii). Dup ceste tribuiri se desenez textul i pi imgine, flsindu-se pentru pziinre imginii metd lengthG(String, Grphics2D) ce ntrce lungime secvenei desente. Dc mi sunt crctere se rei metd. Se ntrce pzii unde fst desent textul. cum se scrie implementre metdei ce ntrce dimensiunile grfice unei secvene de crctere: privte int lengthG(String s,Grphics2D big) { return big.getFntMetrics().stringWidth(s); } n cntinure se scrie implementre metdei ce ntrce numrul de crctere mxim pe cre -l trebui s-l ib secven dt c prmetru pentru pute ncpe pe lime dt i e c prmetru: privte int lengthG(String s,Grphics2D big,int w,int pX) { int strW=0; int i=0; Pcket pck=trd(s); fr(i=0;i<s.length();i++) { strW+=big.getFntMetrics().chrWidth(s.chrt(i)); if(pck!=null) { if(strW>(w-pX-48)) { brek; } } else

Pgin 96 { if(strW>(w-pX-6)) { brek; } } } return i; } cest metd verific dc sunt emticne su nu. Dc nu sunt clculez dimensiune grfic crcterelr dugnd cte dimensiune unui crcter i dc se junge prpe de mrgine tunci se prete clculul i se ntrce indexul crcterului l cre s- juns. Dc sunt emticne se urmez celi lgritm dr limit este mult mi drstic derece trebuiesc lute n cnsiderre i lime imginii emticnelr cre vr fi desente n cdrul celuii mesj. L fel i n cest cz se ntrce indexul crcterului l cre s- juns. cum se rt cum s- implementt metd cre ntrce instn clsei Pcket dc s- gsit n secven de crctere cre i s- pst c rgument, un cd l unui emticn: prtected Pcket trd(String s) { int x; Pcket pck=new Pcket(); Pcket temp; if((x=s.indexf("()"))!=-1) { temp=new Pcket(ngel,x,3); if(temp.getx()<pck.getx()) pck=temp; } if((x=s.indexf("()"))!=-1) { temp=new Pcket(ngel,x,3); if(temp.getx()<pck.getx()) pck=temp; } if((x=s.indexf(":@"))!=-1) { temp=new Pcket(ngry,x,2); if(temp.getx()<pck.getx()) pck=temp; } if((x=s.indexf("(s)"))!=-1) { temp=new Pcket(sleep,x,3); if(temp.getx()<pck.getx()) pck=temp; } if((x=s.indexf("(S)"))!=-1) { temp=new Pcket(sleep,x,3); if(temp.getx()<pck.getx()) pck=temp; }

Pgin 97 . . . if((x=s.indexf("(w)"))!=-1) { temp=new Pcket(wiltflwer,x,3); if(temp.getx()<pck.getx()) pck=temp; } if((x=s.indexf("(W)"))!=-1) { temp=new Pcket(wiltflwer,x,3); if(temp.getx()<pck.getx()) pck=temp; } if((x=s.indexf(";)"))!=-1) { temp=new Pcket(wink,x,2); if(temp.getx()<pck.getx()) pck=temp; } if((x=s.indexf("(y)"))!=-1) { temp=new Pcket(yes,x,3); if(temp.getx()<pck.getx()) pck=temp; } if((x=s.indexf("(Y)"))!=-1) { temp=new Pcket(yes,x,3); if(temp.getx()<pck.getx()) pck=temp; } if(pck.getx()==100) return null; else return pck; } Se fce cmpri cu 100 derece tunci cnd se flsete cnstructrul fr prmetrii se iniilizez xCrct (tribut l clsei Pcket) cu 100. Se bserv c se returnez instn cre re ce mi mic pziie n cdrul secvenei dte, derece ne interesez primul emticn din secven, nu primul n rdine lfbetic. Se mi bserv c cest plicie suprt diferite cduri pentru celi emticn (de exemplu imgine nger se pte fi scriind cdul () su ()). n cntinure se scriu implementrile ultimelr metdelr, ceste fiind flsite pentru lucrul cu list de mesje: synchrnized public vid put(String s) { mesjePrimite.ddLst(new String(s)); } synchrnized public String rmv()

Pgin 98 { return new String((String)mesjePrimite.remveFirst()); } synchrnized public String get(int i) { return new String((String)mesjePrimite.get(i)); } synchrnized public int dim() { return mesjePrimite.size(); } synchrnized public vid del() { mesjePrimite.cler(); } }

Pgin 99

List de brevieri VIP Vice ver IP IP Internet Prtcl SIP Sessin Inititin Prtcl QS Qulity f Service GW Gtewy SDP Sessin Descriptin Prtcl TDM Time Divizin Multiplexing RTP Rel-time Trnsprt Prtcl RTCP RTP Cntrl Prtcl RTSP Rel Time Streming Prtcl ISUP ISDN User Prt UDP User Dtgrm Pcket TCP - Trnsmissin Cntrl Prtcl IntServ Integrted Services DiffServ Differentited Services

S-ar putea să vă placă și