Giao Thuc Khoi Tao Phien Sip

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 42

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

CHNG III GIAO thc khi to phin sip

3.1 Gii thiu giao thc SIP


3.1.1 Chc nng ca SIP
SIP l mt giao thc iu khin tng ng dng c th thit lp, duy tr v gii ta cc cuc gi hoc cc phin truyn thng. Cc phin truyn thng c th l in thoi hi ngh, hc t xa, in thoi Internet v cc ng dng tng t khc. SIP c th em li cho cc thnh vin c cc phin n hng v a hng (n pht hoc a pht). Ngi bt u khng cn thit phi l mt thnh vin ca phin truyn thng. Phng tin v cc thnh vin c th b sung vo phin hin ti. SIP cng c th c dng bt u cc phin cng nh mi cc thnh vin ti phin hi thoi m c thng bo v thit lp bi cc phng tin khc. SIP h tr cc dch v nh x tn v cc dch v gin tip mt cch trong sut. V th n cho php thi hnh mt cch y cc dch v trn ISDN, mng thoi thng minh v h tr cc cuc gi di ng ca ngi dng c a ch khng c nh. SIP h tr 5 dch v trong vic thit lp v kt thc cc phin truyn thng: - nh v ngi dng: Xc nh v tr ca ngi dng tin hnh hi thoi. - Nng lc ngi dng: Xc nh cc phng thc (phng tin) v cc tham s tng ng trong hi thoi. - Xc nh nhng ngi sn sng tham gia hi thoi. - Thit lp cc tham s cn thit cho cuc gi. - iu khin cuc gi: Bao gm c qu trnh truyn v kt thc cuc gi. SIP l mt phn trong b giao thc chun cho truyn dng tin a phng thc do IETF khuyn ngh nh RSVP ( giao thc gi trc ti nguyn ), RTP ( giao thc truyn ti theo thi gian thc ), RTSP ( giao thc phn phi dng tin a phng thc ), SAP ( giao thc thng bo phin ), SDF ( giao thc m t phin ). Tuy nhin SIP hot ng c lp vi cc giao thc trn. SIP cng c th kt hp vi cc giao thc bo hiu v thit lp cuc gi khc. Theo cch , mt h thng u cui dng SIP xc nh a ch hp l ca mt h thng v giao thc t mt a ch gi n l giao thc c lp. V d, SIP c th dng

L Vn Thng, D2001VT

56

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

ch ra rng ngi tham gia c th thng qua H323, cng H245, a ch ngi dng ri dng H225 thit lp cuc gi.

3.1.2 Cc thnh phn ca h thng SIP


3.1.2.1 Cc nh ngha Call: Mt cuc gi gm tt c cc thnh vin trong phin c mi bi mt ti nguyn chung. Mt cuc gi SIP c nhn bit bi Call - ID. Call leg: Call leg c nhn bit bi s kt hp ca Call - ID, To and from. Client: L mt chng trnh ng dng gi i nhng yu cu SIP. Client c th nh hng trc tip hoc khng n ngi s dng. Client c cha trong cc Proxy v Uers Agent. Conference: Hi ngh l mt phin hi thoi a phng. Mt hi nghh c th khng c hoc c nhiu thnh vin v bao gm cc trng hp nh hi ngh a phng, hi ngh nhiu mt li ( full mesh ), cuc gi hai thnh vin, ... Mt vi cuc gi c th to ra mt hi ngh. Downstream: l yu cu gi trc tip t pha gi n ngi nghe ( t UAC n UAS ). Final Respone: l p ng kt thc mt phin giao dch SIP, bao gm cc p ng sau: 2xx, 3xx, 4xx, 5xx, 6xx. Invitation: L yu cu gi t User hoc Service ngh tham gia vo mt phin hi thoi. Mt li mi y gm mt yu cu INVITE ngay sau mt yu cu ACK. Parallel search: Trong mt qu trnh tm kim song song mt Proxy a ra mt vi yu cu ti ngi dng hin ti trong khi nhn mt yu cu n. Provisional Respone: p ng tm thi l p ng c Server dng thng bo tin trnh gi nhng cha kt thc mt phin giao dch SIP, p ng 1xx l mt Provisional Respone. Server: L mt chng trnh ng dng c nhim v nhn cc yu cu hp l t cc dch v v gi tr li cc p ng. Server c th l Proxy, Redirect, UAS, Registrars. Session: Theo c t ca SDP th mt phin a truyn thng l tp hp nhng ngi gi v nhn cng vi dng d liu t ni gi n ni nhn. N c xc

L Vn Thng, D2001VT

57

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

nh bi chui cc tn User, Session ID, kiu mng, kiu a ch v a ch cc phn t trong trng ngun. SIP transaction: l qu trnh xy ra gia mt Client v mt Server gm tt c cc bn tin t yu cu u tin gi i t client n server cho n p ng cui cng t Server gi tr li Client. N c nhn bit bi s th t CSeq. Yu cu ACK c cng s CSeq vi yu cu INVITE tng ng nhng cha mt giao dch ca ring n. Upstream: p ng gi trc tip t UAS n UAC. URL - encoded: L chui k t m ho theo chun RFC 1738. 3.1.2.2 Cc thnh phn ca kin trc SIP Xt trn quan im khch hng / phc v ( Client /Server ), cc thnh phn chnh ca mt h thng SIP c m t bi hnh v sau:

Hnh 3.1 Cu trc ca mt h thng SIP Trong hnh trn User Agent l thit b u cui trong mng SIP, c th l mt my in thoi SIP, c th l my tnh chy phn mm u cui SIP. Proxy Server l phn mm trung gian hot ng c nh server v client thc hin cc yu cu thay mt cc u cui khc. Tt c cc yu cu c x l ti ch bi Proxy Server nu c th, hoc c chuyn cho cc my ch khc. Trong trng hp Proxy Server khng trc tip p ng cc yu cu ny th Proxy Server s thc hin khu chuyn i hoc dch sang khun dng thch hp trc khi chuyn i.

L Vn Thng, D2001VT

58

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Location Server l phn mm nh v thu bao, cung cp thng tin v nhng v tr c th ca pha b gi cho cc phn mm Proxy Server v Redirect Server. Redirect Server l phn mm nhn yu cu SIP v chuyn i a ch SIP sang mt s a ch khc v gi li cho u cui. Khng ging nh Proxy Server, Redirect Server khng bao gi hot ng nh mt u cui, tc l khng gi i bt c yu cu no. Redirect Server cng khng nhn hoc hu cuc gi. Registrar Server l phn mm nhn cc yu cu ng k REGISTER. Trong nhiu trng hp Registrar Server m nhim lun mt s chc nng an ninh nh xc nhn ngi s dng. Thng thng Registrar Server c ci t cng vi Proxy hoc Rredirect Server hoc cung cp dch v nh v thu bao. Mi ln u cui c bt ln ( th d my in thoi hoc phn mm SIP ) th u cui li ng k vi Server. Nu u cui cn thng bo cho Server v a im ca mnh th bn tin REGISTER cng c gi i. Ni chung, cc u cui u thc hin vic ng k li mt cch nh k.

3.1.3 Khi qut v hot ng ca SIP


Trong hi thoi SIP, mi bn tham gia ( bn gi v b gi ) c gn mt a ch SIP hay cn gi l SIP URL. Ngi s dng phi ng k v tr ca h vi SIP server. to mt cuc gi SIP, pha gi nh v ti my phc v thch ng v sau gi i mt yu cu SIP. Hot ng SIP thng xuyn nht l mi cc thnh vin tham gia hi thoi. Thnh phn Registrar ng vai tr tip nhn cc yu cu ng k t UA ( User Agent ) v lu tr cc thng tin ny ti mt dch v bn ngoi SIP ( Non SIP ). 3.1.3.1 a ch SIP Cc thnh vin tham gia hi thoi c nh danh bi mt a ch SIP gi l SIP URL. SIP URL c dng trong cc bn tin SIP thng bo v ni gi ( from ), ch hin thi ( Request URI ) v ni nhn cui cng ( to ) ca mt yu cu SIP v ch r a ch gin tip. Mt SIP URL c th gn vo mt trang Web hoc nhng hyperlink khc thng bo rng ngi dng hoc dch v c th gi thng qua SIP. 3.1.3.2 Giao dch SIP Khi c a ch IP ca SIP server yu cu c gi i theo tng vn chuyn ( giao thc ) TCP hay UDP. Khch hng gi mt hng nhiu yu cu SIP ti SIP server v nhn cc phc p t Server. Mt yu cu cng vi nhng phc p ng cho nhng

L Vn Thng, D2001VT

59

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

nhu cu to nn mt giao dch SIP. Tt c cc p ng cho mt yu cu phi cha cng cc gi tr trong trng Call - ID Cseq, To v From. iu lm cho cc p ng ph hp vi cc yu cu. Mi cuc gi trong SIP c nh danh bi mt b nh danh cuc gi ( Call - ID ). Yu cu c gi i t u ( From ) ti u ( To ). Trng From v To u theo khun dng SIP - URL. Trng CSeq lu tr thng tin v phng thc s dng trong phin, c dng: CSeq="CSeq": "DIGIT Method" DIGIT l s nguyn khng du 32 bit. Nu giao thc TCP c s dng, cc yu cu v p ng trong mt giao dch SIP n gin u c truyn qua cng mt kt ni TCP. Mt s yu cu SIP t cng mt khch hng n cng mt Server c th dng mt kiu ni TCP hoc c th dng mt kiu kt ni mi cho mi yu cu. Nu khch hng gi yu cu thng qua giao thc UDP n hng, cc p ng s c gi n cc a ch nm trong trng mo u "Via" ca p ng nu yu cu c gi qua giao thc UDP a hng th cc p ng s c a ti cng mt i ch qung b v cng ch. Khun dng bn tin SIP khng ph thuc vo giao thc truyn. 3.1.3.3 Li mi SIP Mt li mi SIP gm hai yu cu INTIVE v ACK. Yu cu INTIVE mi thnh vin tham gia hi thoi khi pha b gi ng tham gia, bn gi xc nhn nhn c p ng bng cch gi mt yu cu ACK. Nu pha gi khng mun mi thnh vin tham gia cuc gi na n s gi yu cu BYE thay cho ACK. Thng ip INTIVE cha thnh phn m t phin ( SDP ) v phng thc tin hnh trao i ng vi phin . Vi cc phin a hng, "m t phin" lit k kiu v khun dng ca cc phng tin phn phi cho phin hi thoi. Vi mt phin n hng, "m t phin" lit k kiu v khun dng ca cc phng tin m pha gi mun s dng v ni nhng d liu mun gi i. Trng hp my phc v mun u quyn ( PS: Proxy Server ). Tin trnh xy ra nh sau: Proxy Server tip nhn li mi INTIVE PS tra cu thng tin dch v nh v ngoi SIP
L Vn Thng, D2001VT

60

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

PS nhn v thng tin to ra a ch chnh xc PS to li INTIVE trong trng Request - URI v chuyn tip UAS ( User Agent Server ) cnh bo pha b gi PS nhn p ng chp nhn 200 OK t UAS PS tr v kt qu thnh cng cho pha gi Pha gi gi thng bo xc nhn ACK Yu cu xc nhn c chuyn tip qua PS. Ch : Mt ACK c th c gi trc tip n ngi c gi qua Proxy. Tt c cc yu cu v p ng phi c cng Call - ID. Trng hp my phc v gin tip. Tin trnh xy ra nh sau: PS tip nhn li mi INTIVE Lin lc vi dch v nh v Tr li a ch pha gi Pha gi gi thng bo xc nhn ACK n PS Pha gi to mt yu cu mi vi cng mt Call - ID nhng c CSeq cao hn ti a ch tr li bi Server u tin Pha b gi gi p ng chp nhn 200 OK Pha gi gi thng bo xc nhn ACK. 3.1.3.4 nh v ngi dng Ngi c gi c th di chuyn gia cc h thng u cui khc nhau ti cc thi im khc nhau. Nhng v tr c ng k vi SIP server. Mt my nh v ( Location Server ) c th s dng mt hay nhiu giao thc nh finger ( RFC1288[17] ), rwhois (RFC2167[18]), LDAP(RFC1777[19], multicast - based[[20], ... xc nh h thng u cui m User c th ti. Mt Location Server c th tr li vi v tr m User ng k ng thi ti nhiu Host hoc bi Location Server c li. SIP server s tng kt cc kt qu a ra danh sch cc v tr. i vi cc loi SIP server th hot ng sau khi nhn c cc v tr l khc nhau. Mt SIP Redirect Server s tr li danh sch cho khch hng vi tiu Contact. Mt SIP Proxy Server c th lin tc th cc a ch cho n khi cuc gi thnh cng hay ngi c gi t chi cuc gi vi cch th tun t cc a ch. Mt Proxy Server c th thc hin mt dch v "anycast". Nu Proxy Server gi mt yu cu SIP, n phi b sung thm a ch ca chnh n vo phn u danh sch ca "forwardes noted" trong
L Vn Thng, D2001VT

61

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

tiu Via. Du hiu Via m bo rng bn tin tr li c th ly ra t cng mt ng ( hng ). hng p ng, mi Host phi g b tiu Via ca chnh n, v th thng tin c truyn ni b s "n " i vi pha b gi v mng bn ngoi. Proxy Server phi kim tra xem n c pht yu cu ti danh sch Host (host listed) cha trong cc tham s Via rent - by, Via received hay Via - maddr. 3.1.3.5 Thay i mt phin hin ti Trong mt vi trng hp cn phi thay i cc thng s ca mt phin hi thoi hin ti. Vic c thc hin bi vic pht li cc INTIVE. Cc INTIVE c cng trng Call - ID nhng c trng tiu v thn bn tin khc mang nhng thng tin mi. Cc bn tin INVITE phi c CSeq cao hn cc yu cu trc. V d: C hai thnh vin ang hi thoi v mun c thm mt ngi th ba. Mt trong cc thnh vin s mi thnh vin th ba tham gia vi mt a ch "multicast" mi v ng thi gi mt bn tin INTIVE n thnh vin th hai vi trng miu t phin multicast nhng c Call - ID c.

3.1.4 Cc loi bn tin SIP


SIP l giao thc dng TEXT s dng b k t ISO 10646 trong m ho. iu ny to cho SIP tnh linh hot v m rng d thi hnh cc ngn ng lp trnh cp cao nh Java, Tol, Perl. C php ca SIP gn ging vi giao thc HTTP, cho php dng li m v n gin ho s lin kt ca cc my phc v SIP vi cc my phc v Web. Mt bn tin SIP c th l mt yu cu t khch hng ti mt Server hay mt p ng t Server gi li khch hng. C hai loi bn tin ny u s dng chung mt nh dng c bn c quy nh trong RFC 2822 vi cu trc gm mt dng khi u ( start - line ), mt s trng tiu v v mt phn thn bn tin ty chn. Cu trc ny c tm tt nh sau: generic - message = start - line *message - header CRLF [message - body] Trong : Start - line = Request - line/Status - line (general - header)
L Vn Thng, D2001VT

62

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Message - header = /Request - header /Respone - header /(entity - header) Dng khi u, cc dng tiu hay dng trng phi c kt thc bng mt k t xung dng ( CRLF ) v phi lu rng dng trng vn phi c ngn cch phn tiu v thn ca bn tin ngay c khi phn thn bn tin l rng. 3.1.4.1 Bn tin Request Cc bn tin SIP c phn bit vi nhau da vo dng u tin ( Start - line ). Trong , cc bn tin yu cu c dng khi u l mt dng yu cu ( Request - line ). Dng ny cha tn phng thc, mt Request - URI, v mt s phin bn giao thc. Cc thnh phn c ngn cch vi nhau bng mt k t trng ( SP ). Cng nh cc dng khc, dng khi u c kt thc bng mt k t xung dng CRLF. Khun dng bn tin Request: Request = Request - line ( general - header/Request - header/entity - header ) CLRF [ message - body ] Request - line = Method SP Request - URIP SIP - Version CRF a) Methods (Cc ch th) SIP nh ngha 6 ch th sau: Methods = INTIVE/ACK/OPTION/BYE/CANCEL/REGISTER INTIVE Ch th INTIVE thng bo rng User hoc dch v c mi tham gia vo mt phin hi thoi. Mt Server s t ng tr li mt li mi tham gia hi thoi nu User sn sng tham gia bng p ng 200 OK - Respone. Nu nh mt UA ( User Agent ) nhn c mt yu cu INVITE cho Call leg vi s CSeq cao hn cc INVITE trc c cng Call - ID, n s kim tra cc t nh danh Version th ni dung ca phn miu t phin s c xem xt nu n mun thay i v UA phi xem xt cc trng tiu cho vic thay i. Nu nh c mt s thay i, UA phi cp nht nhng trng thi ni b hoc nhng thng tin pht ra nh kt qu ca tiu . Nu miu t phin thay i, UAS phi iu chnh li cc thng s phin hi thoi cho ph hp sau khi yu cu User xc nhn. Ch th ny c a ra bi SIP Proxy, Redirect Server v UAS cng nh khch hng.
L Vn Thng, D2001VT

63

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

ACK Yu cu ACK xc nhn rng khch hng nhn c p ng cui cng cho yu cu INVITE ( ACK ch s dng cho yu cu INVITE ). Khi UAC chp nhn p ng 2xx, tt c cc p ng cui cng khc ca Proxy u tin hay ca UAC u nhn c tr li. Trng Via c a vo Host pht ra yu cu ACK sau khi UAC nhn c mt p ng 2xx hoc Proxy u tin nhn c mt p ng non - 2xx. Yu cu ACK c th cha mt thn bn tin ( message body ) vi phn miu t phin cui cng dng cho ngi c gi. Nu nh thn bn tin ACK rng, ngi c gi s s dng phn miu t phin trong yu cu INVITE. Mt Proxy Server nhn mt yu cu ACK sau khi gi i cc p ng 3xx,4xx,5xx hay 6xx phi quyt nh ACK l ca n hay l cho cc UA hoc Proxy Server pha bn kia. Quyt nh da vo vic xem xt th a ch trong trng To. Nu th a ch trong trng tiu To ca ACK ph hp vi th a ch trong trng tiu To ca p ng v cc trng tiu From, Call - ID, CSeq ca p ng ph hp vi cc trng ca ACK th chng t rng ACK l dnh cho Proxy Server. Ch th ny phi c a ra bi SIP Proxy, Redirect Server, UA cng nh khch hng. OPTION Ch th OPTION dng hi v kh nng ca SIP Server. Nu mt Server c kh nng lin lc vi User c th p ng li yu cu OPTION bng mt tp hp cc kh nng ca n. Ch th ny c a ra bi SIP Proxy, Redirect Server, UA, Register, Client. BYE UAC s dng ch th BYE thng bo cho Server rng n mun gii phng cuc gi. Yu cu BYE cng ging nh mt yu cu INTIVE cha mt tiu Contact, ngi c gi phi gi yu cu BYE ti a ch. Ch th ny phi c a ra bi mt Proxy Server v khng h tr bi Redirect Server v UAS. CANCEL Yu cu CANCEL c dng hu b mt yu cu sp c thc hin vi cng gi tr trong cc trng Call - ID, From, To v CSeq ca yu cu . UAC hay Proxy khch hng c th pht ra mt yu cu CANCEL ti mi lc. Proxy trong trng hp c bit c th gi mt yu cu CANCEL ti ch m khng tr

L Vn Thng, D2001VT

64

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

li mt p ng cui cng sau khi n nhn c cc p ng 2xx hay 6xx cho mt hay nhiu yu cu tm kim song song ( paralled seach ). Cc trng Call - ID, CSeq, To, From trong CANCEL u ging nh trong yu cu gc ( yu cu m n mun hu b ). Tuy nhin khch hng phn bit c cc p ng cho CANCEL vi cc p ng cho yu cu gc th thnh phn CSeq Method s c thit lp trong CANCEL. Khi mt UAS nhn c yu cu CANCEL, n khng phi pht ra mt p ng 2xx cho yu cu hu b. Redirect Server v UAS khi nhn c mt yu cu CANCEL s p ng bng mt trng thi l 200 nu nh tn ti giao dch SIP v trng thi l 481 nu khng tn ti giao dch . REGISTER Ch th REGISTER c dng ng k danh sch a ch ca ngi dng trong trng tiu To vi SIP server. Nh vy ch th ny dng ng k thng tin ngi dng. b) Request - URI Trng Request - URI c khun dng theo SIP URL. N thng bo cho ngi dng hoc dch v v a ch hin ti. Khc vi trng To, Request - URI c th c ghi li bi Proxy (my phc v u quyn). Khi s dng nh mt Request - URI, SIP URL phi cha cc tham s transport - param, maddr - param, ttl - param v cc thnh phn tiu . Mt Server khi nhn c mt SIP URL, a ch SIP vi nhng thnh phn s hu b chng trc khi tin hnh x l. in hnh l, UAS thit lp trng Request - URI v trng To trong cng mt SIP URL coi nh khng thay i trong mt khong thi gian di. Tuy nhin, nu nh UAC dnh cho pha b gi nhiu hng trc tip, t trng tiu Contact ca mt p ng cho yu cu trc , trng To s vn cha cc thng s long - term, a ch "public" trong khi Request - URI c th thit lp cc a ch d phng. Proxy Server v Redirect Server dng nhng thng tin cha trong trng Request - URI v trng tiu ca yu cu qun l cc yu cu v ghi li trng Request - URI. Host - port ca Request - URI in hnh ph hp vi mt trong cc "host name" ca Server nhn. Nu khng, Server phi u quyn cho yu cu ti a ch "Indicate" hoc tr li p ng 404 ( not found: khng tm thy ) nu n khng mun hay khng th thc hin c.

L Vn Thng, D2001VT

65

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Nu SIP Server nhn c mt yu cu vi mt URI "indicating" vi mt cu trc khc hn SIP m Server khng hiu c, Server phi gi li mt p ng 400 ( Bad Request ). N phi thc hin vic ngay c khi trng tiu To cha mt cu trc m n khng hiu. SIP Version C bn tin Request v Repone u cha phin bn ca SIP c s dng tng t nh trong bn tin HTTP. Hin nay, c hai phin bn SIP c k hiu l SIP v SIP/2.0. Option Tag Option tag c dng ch nh nh r cc la chn mi trong SIP. Cc th la chn c s dng trong trng Supported, Unsupported v Require. C php: Option - tag = token New Option c ng k bi t chc IANA ( Internet Assigned Number Authority ). Khi ng k th cn phi c cc thng tin sau: Tn v m t ca "Option". Tn c di khng qu 20 k t . Thng bo v t chc c quyn thay i "Option". Thng tin lin lc ( hm th hay a ch email ) ng k phi c gi ti iana@iana.org. 3.1.4.2 Bn tin Respones Cc bn tin p ng c phn bit vi cc bn tin yu cu bng mt dng trng thi ( Status -line ) c t dng khi u ca bn tin. Dng trng thi ca bn tin p ng bao gm tn phin bn giao thc SIP, mt m trng thi v mt cm vn bn gii thch ngha ca bn tin tr li. Mi thnh phn cng c phn bit vi nhau bng mt k t trng SP. cui dng, k t xung dng CRLF c s dng tch bit n vi dng tip theo trong bn tin. Khun dng bn tin nh sau: Respone = Status - line ( General - header/ Respone - header/ entity - header ) CRLF [ message - body ] Trong : Status - Line = SIP - Version SP status - Code SP Reason - Phrase CRLF
L Vn Thng, D2001VT

66

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Status - Code l mt m kt qu nguyn gm 3 digit ch ra kt qu ca vic c gng hiu v p ng yu cu. Status - Phrase th a ra mt bn yu cu ngn theo ng nguyn vn ca Status Code. Status - Code dng cho my cn Reason - Phrase l dng cho ngi s dng. Khch hng khng th yu cu hin th hay kim tra Status - Phrase. Status - code gm 3 digit. Digit u tin nh ngha loi p ng. Hai digit sau khng c vai tr phn loi. Bn SIP /2.0 cho php 6 gi tr ca digit u tin nh sau: 1xx: Informational 2xx: Success 3xx: Redirect 4xx: Client - Error 5xx: Server - Error 6xx: Global - Farlure : Nhn v x l yu cu : Thnh cng : Chuyn tip yu cu : Li ngi dng, c php ca yu cu li khng tho mn Server : Li my phc v : Yu cu khng c p ng ti mi Server

Di y l v d mt s gi tr ring ca 6 digit u tin ca Response Code v Reason Phrase ch thch m tng ng l p ng g: Informational = "100" Success Redirection Client - Error Server - Error = "200" = "300" = "400" = "500" ; Trying ; OK ; Multiple Choices ; Bad Request ; Internal Server Error

Global - Failure = 600 ; Busy Everywhere M p ng SIP c th m rng c. Cc ng dng SIP khng yu cu phi hiu r v ngha ca tt c m p ng c ng k m ch cn hiu cc loi m p ng, ngha ca digit u tin.

3.1.5 Thn bn tin SIP ( SIP Message Body )


3.1.5.1 Body Inclusion Yu cu cha cc thn bn tin tr khi c lu khc. Trong c t ny, yu cu CANCEL khng cha mt thn bn tin. Cn i vi cc ch th ACK, INTIVE, OPTIONS, thn bn tin bao gi cng l mt miu t phin. Vic s dng thn bn tin cho yu cu REGISTER ang c nghin cu thm.
L Vn Thng, D2001VT

67

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Vi bn tin p ng, ch th yu cu v m trng thi p ng xc nh kiu v s th hin ca cc thn bn tin. Tt c cc p ng u gm mt thn bn tin. Thn bn tin cho p ng 1xx cha thng tin t vn v tin trnh ca yu cu. Trong p ng 2xx cho yu cu INTIVE thn bn tin cha miu t phin. Trong p ng 3xx thn bn tin cha miu t v cc ch chn la hay dch v. Vi cc p ng 4xx v ln hn, thn bn tin gm cc thng tin b sung, cc thng tin con ngi c th c c v cc nguyn nhn gy li. 3.1.5.2 Kiu thn bn tin ( Message Body Type ) Kiu truyn thng ca thn bn tin c ch ra bi trng tiu Content - Type. Nu thn bn tin qua m ho th n c ch ra bi trng tiu Content - Encoding. Tp hp cc k t ca thn bn tin c ch ra bi trng tiu Content - Type 3.1.5.3 di thn bn tin ( Message Body Length ) di thn bn tin tnh theo Byte c a ra bi trng tiu Content - Length.

3.1.6 Khun dng tho thun ( Comfact From )


Khi SIP c truyn thng qua giao thc UDP vi s xc thc v mt miu t phin phc tp th di ca mt yu cu hay p ng SIP s ln hn MTU. gii quyt vn ny, khun dng tho thun ca SIP c nh ngha bng cch s dng cc t vit tt cho cc trng tiu chung, c miu t di y: Tn trng ngn c e f i m l s t v Server cng chp nhn iu . Tn trng di Content - Type Content - Encoding From Call - ID Contract Content - Length Subject To Via

Client c th dng c tn trng ngn v tn trng di trong cng mt yu cu v

L Vn Thng, D2001VT

68

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

3.2 nh ngha cc trng tiu v m trng thi trong bn tin SIP


3.2.1 nh ngha cc trng tiu
Cc trng tiu ca SIP ging vi cc trng tiu ca HTTP v c c php v ng ngha. Cc trng tiu gm tiu chung, tiu yu cu, tiu p ng, tiu thc th. Cc trng tiu yu cu v ty chn, khng dng c cho mi ch th c lit k trong bng 3.1. Trong : o (optional): ch ra ty chn. Ty chn c ngha rng mt UA c th cha trng tiu trong mt yu cu v p ng v UA c th b qua trng tiu nu n tn ti trong mt yu cu v p ng. m (mandatory): bt buc. Mt trng tiu yu cu bt buc phi c mt trong mt yu cu, v trng tiu phi c UAC hiu trong qu trnh x l p ng. _ (not applicate): khng s dng c. C ngha l cc trng tiu khng c tn ti trong mt yu cu. Nu mt trng no c trong yu cu do li th n phi c UAS b qua trong qu trnh nhn yu cu. *: ch ra rng trng tiu ch cn thit nu thn bn tin khng rng. m*: ch th mt tiu nn c gi, nhng Server cn phi chun b nhn cc yu cu m khng c trng tiu . Ct Where miu t kiu yu cu v p ng m trng tiu c s dng Trong : R: cp n cc trng tiu c s dng trong cc yu cu ( l cc trng tiu chung v yu cu). r: ch nh mt trng tiu chung hay p ng, p dng cho tt c cc p ng. g: t tn trng tiu chung. e: t tn trng tiu thc th. c: sao chp trng tiu t yu cu n p ng. Ct proxy ch ra cc Proxy c th thm cc thnh phn ring bit vo cc tiu hay khng.
L Vn Thng, D2001VT

69

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Trong : c: ch th cho mc ni m: c th thay i tiu a: c th thm tiu nu khng tn ti r: c tiu Bng 3.1 Tm tt cc trng tiu Header Field (1) Accept Accept Accept Accept - Encoding Accept - Encoding Accept - Language Accept - Language Alert - Info Allow Allow Allow Also Authorization Authorization Call - ID Call - Info Contact Contact Contact Contact where (2) R 415 r R 415 R 415 R R 200 405 R R r gc g R 1xx 2xx 3xx proxy ACK BYE CAN INV OPT REG (3) (4) (5) (6) (7) (8) (9) o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o am o o o o o o o o o o m m m m m m o o o o o o o o o o o o o r m m m m m m am o o o o m o o o o m o o o o o o

Bng 3.1 Tm tt cc trng tiu (tip) (1) Contact Content - Disposition Content - Encoding Content - Language Content - Length Content - Type CSeq Date Encryption
L Vn Thng, D2001VT

(2) 485 e e e e e gc g g

(3)

r r a r 70

(4) o o o m* * m o o

(5) o o o o m* * m o o

(6) o m* m o o

(7) o o o o m* * m o o

(8) o o o o m* * m o o

(9) o o o o m* * m o o

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Error - Info Expires From In - Reply - To Max - Forwards MIME - Version Organization Priority Proxy - Authenticate Proxy - Authorization Proxy - Require Record - Route Record - Route Require Response - Key Retry - After

R g gc R R g g R 401, 407 R R R 2xx, 401, 484 g R R

r rm am a

o m o o o

o m o o o o o o o o o -

o m o o o o o o o o o -

o o m o o o o o o o o o o o o -

o m o o o o o o o o o o -

o o m o o o o o o o o o o o

r r amr

o o o o

acr

o -

Bng 3.1 Tm tt cc trng tiu (tip) (1) (2) 404, 413, 480, Retry - After 486, 500, 503, 600, Route Server Subject Supported Timestamp To Unsupported Unsupported User - Agent Via
L Vn Thng, D2001VT

(3)

(4)

(5)

(6)

(7)

(8)

(9)

603 R r R g g gc(1) R 420 g gc

acmr 71

o o o m o o o m

o o o o m o o o m

o o o o m o o o m

o o o o o m o o o m

o o o o m o o o m

o o o o m o o o m

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Warning WWW - Authenticate WWW - Authenticate

r R 401

o o o

o o o

o o o

o o o

o o o

o o o

3.2.1.1 Khun dng trng tiu Cc trng tiu k trn thng gm tn trng, sau l du :, v gi tr ca trng. Khun dng ca trng tiu bn tin nh sau: message - header field - name field - value = field - name ":" [ field - value ] CRLF = token = *( field - content | LWS )

Trong field - content l cc OCTET to nn gi tr trng tiu v bao gm * TEXT - UTF8 hoc s kt hp ca token, separators v quoted - string. 3.2.1.2 Cc trng tiu chung Cc trng tiu chung p dng cho c cc bn tin yu cu v bn tin p ng. Cc tn trng general- header c th c m rng khi kt hp vi s thay i v phin bn giao thc. Tuy nhin, trng tiu mi hoc ang th nghim c th c ngha nh cc trng tiu chung nu tt c cc bn trong phin truyn thng u nhn bit c chng l cc trng tiu chung. Cc trng tiu khng nhn bit c x l nh cc trng tiu thc th. 1) Tiu Accept Khi c s xut hin ca trng Accept, Server s pht i mt gi tr mc nh ca ng dng /sdp. Ging nh mt trng tiu yu cu, n ch c s dng trong cc ch th c thn bn tin. 2) Tiu Accept - Endcoding Trng tiu yu cu Accept - Endcoding cng ging nh tiu Accept nhng hn ch m ni dung biu din s chp nhn ca p ng. 3) Tiu Accept - Language C php phn tiu ngn ng chp nhn quy nh v lnh trong ngn ng da vo tham s q ging nh p dng vo SIP. Trng tiu yu cu Accept - Language cho php Client thng bo cho Server ngn ng n mong mun nhn reason phrases,

L Vn Thng, D2001VT

72

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

miu t phin hay p ng trng thi c truyn ti nh thn bn tin. Mt Proxy c th s dng trng ny tr gip vic la chn ch i vi cc cuc gi. 4) Tiu Call -ID Trng tiu chung Call - ID xc nh mt li mi thnh vin hoc tt c cc ng k ca mt Client thnh vin mt cch duy nht. Ch rng mt hi ngh a phng tin n gin c th thm vi cuc gi vi cc Call - ID khc nhau, nu ngi s dng mi nhiu ln khc nhau n cng mt hi ngh. i vi mt yu cu INVITE, mt UAS b gi khng nn cnh bo vi ngi s dng nu ngi s dng p li Call - ID trong yu cu INVITE. Nu ngi s dng l mt thnh vin ca hi ngh v cc tham s ca hi ngh c cha trong miu t phin khng c thay i, th UAS b gi ny c th chp nhn cuc gi bt chp Call - ID. Mt li mi cho Call - ID hoc phin hin ti c th thay i cc tham s ca hi ngh. Mt ng dng ca Client c th a ra mt ch th n gin ti ngi s dng v cc tham s ca hi ngh c thay di v chp nhn cuc gi t ng hoc n c th yu cu ngi s dng xc nhn . Mt ngi s dng c th c mi n cng mt hi ngh hoc cuc gi s dng nhiu Call - ID khc nhau. Client c th loi nhng bn sao ny nu mun bng cch s dng cc nhn dng trong miu t phin. Ch th REGISTER v OPTION s dng gi tr Call - ID yu cu c ging hon ton vi p ng. Tt c cc yu cu REGISTER a ra bi mt Client phi c cng mt Call - ID. 5) Tiu Contact Trng tiu chung Contact c th xc nhn trong yu cu INVITE, OPTION, ACK, REGISTER v trong p ng 1xx, 2xx, 3xx v 485. Thng thng n cung cp URL ngi s dng c th c cc giao tip xa hn. Cc yu cu INVITE, OPTION v ACK: Cc yu cu INVITE bt buc v yu cu ACK c th cha tiu Contact ch ra v tr khi to yu cu. i vi OPTION, Contact a ra gi v a ch cc yu cu SIP c th c gi n. Cc p ng 2xx INVITE v OPTION: Mt Server gi p ng 2xx c th chn vo mt tiu p ng Contact ch ra a ch SIP trong cng mt Call - ID. Trng tiu Contact cha a ch ca Server hoc ca Proxy, nu Host pha sau tng la. Gi tr tiu c sao chp vo trng Request - URI ca yu cu

L Vn Thng, D2001VT

73

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

tip theo cho cuc gi ny. Nu p ng khng cha tiu Record - Route th a ch trong trng tiu Contact c b sung nh phn t cui cng trong trng tiu Route. Nu mt UA s dng c TCP v UDP n khng nn ch th mt tham s truyn ti trong URI. Cc p ng INVITE 1xx: Mt UAS gi mt p ng 1xx c th chn vo tiu p ng Contact. N cng c ngha nh p ng 1xx v p ng Invite 2xx. Ch rng yu cu CANCEL phi khng c gi n a ch , ng hn l n cng ng dn nh yu cu ban u. Cc yu cu RIGISTER: Yu cu REGISTER c th cha trng tiu Contact ch ra v tr ngi s dng c th n. Yu cu RIGISTER nh ngha trng Contact * ch c s dng vi expire 0 loi b tt c cc ng k ngi s dng c bit. Mt tham s expire tu chn ch ra thi gian kt thc ca ng k. Nu Contact no khng c tham s expire th trng tiu expires c s dng nh gi tr mc nh. Cc p ng 2xx REGISTER : Mt p ng REGISTER c th quay v tt c cc v tr m ngi s dng hin ti c th t n. Mt tham s expire mc nh ch ra thi gian kt thc ca ng k. Cc p ng 3xx v 405 : Trng tiu p ng Contact c th s dng chung vi m p ng 3xx v 485 ch ra mt hoc nhiu a ch thay th. N c th xut hin trong cc p ng trong ch th BYE, INVITE, OPTION. Trng tiu Contact cha URIs a ra v tr mi hoc tn ca User th hoc c th l cc tham s truyn ti b sung c bit. Cc p ng 4xx, 5xx, 6xx: Trng tiu p ng CONTACT c th c s dng trong cc p ng 4xx, 5xx, 6xx ch ra v tr b xung thng tin v li c th tm ra. Mt trng tiu p ng Contact c th cha bt k URI thch hp ch ra b gi no c th t c, khng hn ch SIP URLs. Cc tham s sau c nh ngha: - q: gi tr q ch ra u tin tng i gia v tr cho trc, 0<q<1, q cng ln u tin cng cao. - Action: tham s action c s dng ch khi ng k vi yu cu REGISTER. Nu tham s ny khng c c t hot ng xy ra ph thc vo cu hnh
L Vn Thng, D2001VT

74

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Server th trong cc p ng ca n, cc bn sao phi ch ra ch c s dng. Tham s ny khng c ch trong cc yu cu khc nhau. - Expire : Tham s expire ch ra URI c gi tr trong bao lu. 6) Tiu Date L mt trng tiu chung phn nh thi gian khi yu cu hoc p ng c gi i ln u. V vy m cc bn tin truyn li c cng gi tr trng tiu d liu nh bn tin u tin. 7) Tiu Encryption Trng tiu m ho chung c t ni dung c m ho. Trng tiu ny thng s dng cho cc yu cu v p ng end - to - end. Yu cu c m ho da trn kho cng cng ph thuc vo thc th c t tn trong trng tiu To. p ng c m ho da trn kho cng cng truyn trong trng tiu kho p ng. Ch rng bn thn kho cng cng khng c s dng m ho. iu ny ph thuc vo tng thut ton c s dng. i vi bt k bn tin m ho no, th t nht c phn thn bn tin v c th cc trng tiu khc c m ho. Mt ng dng nhn mt yu cu hay p ng cha mt trng tiu Encrytion gii m thn thc th sau ghp bn tin gc n ng dy yu cu v n cc tiu ca bn tin ban u. Tiu bn tin cu phn gii m thay th hon ton tiu bn trong phn bn tin gc vi cc trng c cng tn. M ho ch cung cp s b mt : pha ch khng m bo rng yu cu hoc p ng t pha gi c lit k trong tiu bn tin From, m ch m bo rng pha gi s dng kha cng cng ca pha ch. Tuy nhin, cc Proxy khng c kh nng thay i yu cu hoc p ng. V cc Proxy c th da vo s quy nh trc ca chng kt hp bt k trng tiu SIP no, nn khng c s m bo rng cc yu cu m ho c cc trng tiu n s t n cng ch nh yu cu khng m ho c nh danh khc nhau. 8) Tiu From Cc p ng v yu cu phi c trng tiu chung From ch ra b khi u yu cu. Server sao chp trng tiu From t yu cu vo p ng. Trng From c th c tham s Tag. Gi tr Tag thng l duy nht v c m ho ngu nhin 32 bit. Mt User duy tr gi tr Tag thng sut trong mt cuc gi nh danh bng Call - ID. 9) Tiu Organization

L Vn Thng, D2001VT

75

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Trng tiu chung Organization hoc truyn tn ca t chc m thc th a ra yu cu hoc p ng ph thuc vo. Trng ny c th c s dng bng phn mm Client lc cc cuc gi. 10) Tiu Record - route Trng tiu p ng v yu cu Record - Route c b sung vo mt yu cu bi mt proxy bt k trong ng cc yu cu tip theo cho cuc gi cng nhnh. N cha cc SIP - URL c th n xc nh Proxy Server, gm c mt tham s a ch ( maddr ) xc nh v tr ca n. Mi Proxy Server b sung Request - URI vo u ca danh sch. Server sao chp trng tiu Record- route vo trng tiu Route ca cc yu cu tip theo trong cng mt nhnh call, vi th t cc yu cu ngc li yu cu l gn nht vi UAC. Nu trng tiu cha trng tiu Contact th UAC ch gi b sung ni dung ca n nh mt tiu Route cui cng. Tr khi iu ny gy lp, bt k Client no u phi gi yu cu tip theo bt k i vi nhnh gi ny n Request - URI u tin trong trng tiu yu cu Route v loi b li vo ny. 11) Tiu Require Client s dng trng tiu yu cu Require ni cho cc UAS v cc tu chn m Client mong i cc Server h tr x l thch hp yu cu. Nu mt Server khng hiu tu chn n phi p li bng cch quay tr v m trng thi 420 ( Bad Extension) v lit k nhng tu chn n khng hiu trong tiu Unsupported . 12) Tiu Timestamp Trng tiu chung Timestamp miu t khi no Client gi yu cu n Server. Gi tr ca Timestamp ch ng k n Client v n c th s dng bt k n v thi gian no. Server phi hi m vi cng gi tr chnh xc v c th b sung thm s du phy ng ch ra thi gian tri t khi n nhn c yu cu. 13) Tiu To Trng tiu chung To c t pha nhn ca yu cu, c cng ng php SIP - URI vi trng From. Cc p ng v yu cu phi tha nhn trng tiu chung To, ch ra pha nhn trong yu cu. Tham s Tag phc v nh mt c ch chung phn bit nhiu trng hp ngi s dng c nh danh bng mt SIP - URL. Khi Proxy chia cc yu cu, th cn c ph-

L Vn Thng, D2001VT

76

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

ng tin phn bit cc p ng t mi ch gi. Trng Tag trong trng tiu To dng phn bit p ng UAC. 14) Tiu User - Agent Trng tiu chung User - Agent cha thng tin v Agent User Client khi to yu cu . 15) Tiu Via Trng Via ch ra tuyn m yu cu i qua do ngn chn c cc yu cu b lp v m bo tr li trn cng ng yu cu. Request Client khi to yu cu phi chn vo yu cu. Mt trng Via cha tn Host, a ch mng, s cng mc nh hoc s cng nhn c p ng. Mt Proxy nn kim tra trng tiu Via nh nht m bo rng n cha a ch mng chnh xc ca ngi gi, khi nhn t Proxy. Nu a ch ngi gi l khng chnh xc, Proxy phi b sung thuc tnh received. Mt Proxy gi mt yu cu n a ch qung b th phi b sung tham s maddr vo trng tiu Via, v c tham s ttl. Nu Server nhn yu cu cha tham s maddr trong trng Via nh nht, th n nn gi p ng n a ch qung b lit k trong tham s maddr. Via Receiver - Tagged Thng thng mi Host gi hoc nh hng bn tin SIP b sung vo trng Via ch ra tuyn ngang qua. Tuy nhin, c th rng NTAs thay i a ch ngun v cng ca yu cu, trong trng hp ny trng tiu Via khng th tin vo vic tr li tuyn. ngn chn iu ny, mt Proxy nn kim tra trng tiu Via nh nht m bo rng n cha a ch mng chnh xc ca ngi gi, khi c nhn t pha Proxy. Nu a ch ngi gi khng chnh xc, Proxy phi b sung tham s received vo trng tiu Via, trng ny c chn vo bi hop trc . Response Trng tiu Via trong p ng c x l bi Proxy hoc UAC theo quy tc sau: 1. Trng tiu Via u tin nn ch ra Proxy hoc Client x l p ng ny. Nu khng th bn tin s b loi b. Ngoi ra cn loi b trng Via ny.

L Vn Thng, D2001VT

77

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

2. Nu khng c trng tiu Via th hai, th p ng ny c nh ra cho Client ny. Vic x l ph thuc vo trng Via c cha tham s maddr hay l trng receive - tagged khng. - Nu cha tham s maddr: vic gi trng n a ch a sc thi c lit k y, s dng cng c ch ra trong sent - by hoc cng 5060 nu khng c cng no c mt. p ng c gi s dng TTL ch ra trong tham s ttl, hoc TTL = 1 th tham s ny khng c mt. - Nu trng Via th hai khng cha tham s maddr v l 1 trng receiver tagged, th s gi bn tin n a ch trong tham s received, s dng cng ch ra trong gi tr sent-by, hoc s dng cng 5060 nu tham s ny khng c mt. - Nu khng ri vo cc trng hp trc, th gi bn tin n a ch ch ra bi gi tr sent - by trong trng tiu Via th hai. User Agent v Redirect Server UAS hoc Server gi truyn mt p ng da trn cc quy nh sau: - Nu trng tiu Via u tin trong yu cu cha tham s maddr th gi p ng n a ch a sc thi c lit k , s dng cng ch ra trong sent- by, hoc cng 5060, cc cng khng c mt. - Nu a ch trong gi tr sent - by ca trng Via u tin khc vi a ch ngun ca gi, th gi p ng n a ch ngun gi hot ng ging vi trng hp x l trng tiu Via receiver - tagged. - Nu cc iu kin trn khng ng, th gi p ng n a ch cha gi tr sent-by. Nu p ng c gi s dng TCP, s dng kt ni TCP ang tn ti nu n kh dng. 3.2.1.3 Cc trng tiu thc th Cc trng tiu thc th nh ngha siu thng tin v thn bn tin hoc nu thn bn tin khng c mt th n th hin cc ti nguyn nh danh theo yu cu. Thut ng tiu thc th l thut ng HTTP 1.1 phn chnh ca p ng c th cha phin vn chuyn phn chnh ca bn tin. Thn ca bn tin ban u c gi l thc th. Tiu Allow

L Vn Thng, D2001VT

78

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Trng tiu cho php lit k tp hp cc ch th c h tr bi ti nguyn nh ngha bi yu cu URI. Mc ch cc trng ny l thng bo n ngi nhn cc ch th gi tr kt hp vi ti nguyn mt cch chnh xc. Trng tiu cho php c mt trong p ng 405( Method Not Allowed ) v trong p ng OPTION. Khun dng: Allow = "Allow" ": " 1#Method Tiu Content - Encoding Gi tr ca trng tiu thc th Content - Encoding ch ra cc m ho ph hp c ng dng trong phn thn ca thc th, v v vy c ch gii m phi c ng dng t c kiu phng tin trong trng tiu Content - Type. Nu nhiu m ho c dng trong thc th th m ho ph hp phi c sp xp t theo th t chng c dng. Client c th dng m ho Content vo phn chnh ca yu cu. Nu Server khng c kh nng m ho phn chnh hoc phn khng th nhn bit c bt k gi tr Contant - Encoding no, th n phi gi p ng 415( Unsupporterd Media Type ), lit k cc m ho c th chp nhn trong tiu Accept - Encoding. Mt Server c th p dng Content - Encoding vo phn chnh trong cc p ng. Server ch c s dng cc m ho lit k trong tiu Accep - Encoding trong yu cu. Tiu Content - Length Gi tr trng tiu Content - Length ch ra kch c phn chnh ca bn tin, l s octet tnh theo thp phn gi n pha nhn. Cc ng dng nn dng trng ny ch ra kch c phn chnh ca bn tin truyn i, bt k kiu phng tin g ca thc th. Gi tr Content - Length ln hn hoc bng 0 u c s dng ( bng 0 khi phn chnh trong bn tin khng c ). Nu mt Server nhn yu cu UDP khng c trng Content Length th n phi gi s rng yu cu bao vy phn d ca gi. Nu Server nhn yu cu UDP c trng Content - Length, m gi tr ca n ln hn kch c ca phn thn bn tin gi trong yu cu, th Client nn to ra p ng lp 400. Nu c d liu b sung trong gi UDP sau khi byte cui cng ca thn bn tin c c, th Server phi x l phn d liu nh bn tin ring. iu ny cho php nhiu bn tin c t trong cng mt gi UDP. Tiu Content - Type Tiu Content - Type ch ra kiu phng tin ca thn bn tin gi n pha nhn
L Vn Thng, D2001VT

79

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Tiu Expires Trng tiu thc th Expries a ra thi gian v ngy m ni dung bn tin s ht hiu lc.Trng ny ch c nh ngha trong ch th REGISTER v INVITE. - i vi REGISTER: n l trng tiu p ng v yu cu. Trong bn tin REGISTER, Client ch ra ng k gi tr trong bao lu. Trong p ng, Server ch ra thi gian ht hiu lc sm nht ca cc ng k. Server c th la chn khong thi gian ngn hn trong yu cu t Client nhng khng nn lu hn. - i vi INVITE: n l trng tiu p ng v yu cu. Trong mt yu cu, ch gi c th hn ch gi tr ca yu cu, v d Client c th hn ch khong thi gian tm kim mt yu cu hi ngh. 3.2.1.4 Cc trng tiu yu cu Cc trng tiu yu cu cho php Client chuyn qua cc thng tin b sung theo yu cu v cc thng tin v Client n Server. Cc trng ny hot ng nh cc b thay i theo yu cu vi ngha tng trng vi cc tham s ca ngn ng lp trnh. 1) Tiu Authorziation Mt UA mun xc nh bn thn mnh vi mt UAS hay REGISTER, sau khi nhn c p ng 401, c th lm iu ny bng cch a trng tiu yu cu Authorization vo mt yu cu. Gi tr trng Authorization bao gm cc u nhim cha thng tin cho php UAS bit phm vi hot ng ca ti nguyn c yu cu. 2) Tiu Max - Forwards Trng tiu yu cu Max - Forwards s dng phng php SIP hn ch s Proxy hoc s cng trn hng m yu cu i n Server tip theo. Gi tr Max Forwards l s nguyn thp phn ch ra s ln duy tr bn tin yu cu ny c cho php theo hng truyn. Mi Proxy nhn hoc Gateway nhn yu cu cha trng tiu Max - Forwards phi kim tra v cp nht gi tr ca n u tin v vic nh hng yu cu: - Nu gi tr bng 0: pha nhn khng phi nh hng trc yu cu v tr v 483 ( Too many hop ). Thay vo , mt Server c th hot ng nh mt u nhn cui cng cho cc yu cu OPTION.

L Vn Thng, D2001VT

80

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

- Nu gi tr ln hn 0: th bn tin nh hng phi cha trng Max- Forwards cp nht vi gi tr gim i 1. 3) Tiu Priority Trng tiu yu cu ch ra s khn thit ca yu cu khi Client nhn c. 4) Tiu Proxy - Authorization Trng tiu yu cu Proxy - Authorization cho php Client xc nh bn thn n cho Proxy xc thc. Gi tr trng Proxy - Authorization bao gm cc u quyn c cha thng tin xc thc ca User Agent cho Proxy v/hoc v phm vi hot ng ca ti nguyn c yu cu. 5) Tiu Proxy - Require Trng Proxy - Require s dng ch ra cc im nhy cm ca Proxy c h tr bi Proxy. 6) Tiu Response - Key Client c th s dng trng tiu Response - Key yu cu kha m User Agent s dng m ho p ng . 7) Tiu Route Trng tiu yu cu Route xc nh tuyn din ra yu cu. Mi Host loi b li vo u tin v sau cc Proxy yu cu Host lit k li vo v cng s dng n nh Request - URI. 8) Tiu Subject Trng tiu ny c d nh cung cp cc tng kt, hoc ch ra bn cht ca Call, cho php lc Call m khng c s phn tch cc miu t hi ngh. 3.2.1.5 Cc trng tiu p ng Cc trng tiu p ng cho php Server b qua cc thng tin b sung v p ng khi khng th t trong Status - Line. Cc trng tiu ny a ra cc thng tin v Server v v cc truy nhp xa hn n ti nguyn c nh danh bi Request - URI. Tuy nhin, trng tiu mi hoc ang th nghim c th c ngha nh trng Respone-header nu tt c cc bn trong truyn thng u nhn bit c chng l

L Vn Thng, D2001VT

81

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

cc trng Respone -header. Cc trng tiu khng nhn bit c x l nh cc trng tiu thc th". 1) Tiu Proxy - Authenticate Trng tiu p ng Proxy - Authenticate phi c k n nh mt phn ca p ng 407 ( Proxy Authentication Required ). Gi tr ca trng bao gm cc nhn dng ch ra h thng xc thc v cc tham s ng dng vo Proxy i vi Request - URI ny. 2) Tiu Retry - After Trng tiu chung Retry - After c th c s dng vi p ng 563 ( Service Unavaiable) ch ra dch v c mong i khng c gi tr trong bao lu t khi Client yu cu v vi p ng 404 ( Not found ); 600 ( Busy ); hoc 603 ( Decline ) ch ra khi no pha b gi kh dng li. Gi tr ca trng ny c th l SIP - date hoc s nguyn giy theo sau thi gian p ng. 3) Tiu Server Trng tiu p ng Server cha thng tin v phn mm c s dng bi User Agent Server x l yu cu. 4) Tiu Unsupported Mt trng tiu p ng Unsupported lit k cc c im m Server khng h tr. 5) Tiu Warning Trng tiu p ng Warning c s dng mang cc thng tin b sung v trng thi ca p ng. Mt Server bt k c th b sung tiu Warning vo p ng Proxy Server phi t tiu Warning b sung vo trc tiu nhn thc bt k.

3.2.2 M trng thi


M p ng ( Respone - Code ) ca SIP c m rng t m p ng trong HTTP/1.1, ch c nhng m ph hp ca HTTP /1.1 mi c a vo trong SIP.

L Vn Thng, D2001VT

82

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

3.2.2.1 Informational 1xx p ng Informational cho bit Server hoc Proxy lin lc ang thc hin vi hot ng v vn cha nhn c mt p ng cui cng. Khch hng phi i mt p ng xa hn t Server. Server gi mt p ng 1xx nu nh n mun i mt khong thi gian ln hn hoc bng 200ms nhn c mt p ng cui cng. Mt Server c th pht ra nhiu p ng 1xx. Ch rng, p ng 1xx khng c tin cy truyn dn, c ngha l n khng phi l nguyn nhn khin cho khch hng gi mt ARC. Cc Server c th t do pht li cc p ng Informational v khch hng c th kim tra trng thi hin ti ca vic x l gi bng cch gi li cc yu cu. 1) 100 Trying Mt s hot ng khng xc nh s c i din cho cuc gi nhng User khng c nh v. 2) 180 Ringing ( bo chung ) UAS s c t vo mt v tr ni m Uset ng k gn y v c gng bo chung cho User. 3) 181 Call Is Being Forwarded ( Cuc gi sp ti ) Mt Proxy Server dng m trng thi thng bo l cuc gi sp ti ch 4) 182 Queued Pha gi tm thi khng sn sng, pha b gi s quyt nh xp hng cc cuc gi thay cho b chng i. Khi b gi sn sng, n s tr li 1 p ng trng thi cui cng thch hp. Server c th pht ra mt s p ng 182 cp nht pha gi vo trng thi ca hng i gi. 3.2.2.2 Successful 2xx Yu cu c thnh cng ( hon thnh ) v kt thc mt tm kim 200 OK Yu cu c thnh cng. Thng tin c tr li vi p ng tu thuc vo ch th dng trong yu cu. V d: BYE: Cuc gi kt thc. Thn bn tin rng. CANCEL: Tm kim b hu b. Thn bn tin rng. INVITE: Ngi c gi ng tham gia h thoi, thn bn tin cho bit kh nng ca ngi c gi.
L Vn Thng, D2001VT

83

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

OPTIONS: B gi ng chia s kh nng, miu t trong thn bn tin. REGISTER: Vic ng k thnh cng. Client x l thn bn tin theo Content - Type. 3.2.2.3 Redirection 3xx Cc p ng 3xx a ra thng tin v v tr mi ca User, hoc v dch v hon thnh cuc gi. Chng c th kt thc tm kim hin ti v c th to ra mt tm kim mi nu n ph hp. 1) 300 Multiple choices a ch trong yu cu c th c vi la chn ng vi cc v tr c th ca n, v User hay UA c th la chn mt a ch u tin trong gi li yu cu. p ng gm mt thc th cha danh sch v c im ngun v v tr m t User hay UA c th la chn mt v tr thch hp nht ng k. Khun dng ca thc th c ch nh bi kiu truyn thng trong trng tiu Content - Type. Khc vi HTTP, p ng SIP c th gm vi Contact hay mt danh sch a ch trong trng Contact. UA c th dng cc gi tr ca trng Contact t ng gi li hoc yu cu User xc nhn mt s la chn. 2) 301 Moved Permanently User khng da trn a ch trong trng Request - URI v yu cu khch hng th li mt a ch mi trong trng tiu Contract. Pha gi s cp nht danh sch cc b, danh sch a ch v v tr User v gi li cc yu cu tng lai n danh sch a ch. 3) 302 Moved Temporarily Yu cu khch hng th li yu cu ti mt a ch mi trong trng Contract. Khong thi gian pht li yu cu c trnh by trong tiu Expires. Nu nh khng c thi gian kt thc r rng th a ch ch s dng cho cuc gi hin ti v khng c dng cho cc cuc gi tip theo. 4) 305 Use Proxy Yu cu truy nhp ti nguyn thng qua Proxy c a ra bi trng Contact. Trng Contact cha URI ca Proxy. p ng ny ch c pht ra bi UAS. 5) 380 Alternative Server

L Vn Thng, D2001VT

84

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Cuc gi cha hon thnh nhng dch v la chn ( thay i ) c s dng. Dch v la chn c miu t trong phn thn bn tin ca p ng. 3.2.2.4 Request Failure 4xx p ng 4xx ch r cc p ng li t mt Server ring bit. Khch hng khng th gi li cng mt yu cu m khng c s thay i. Tuy nhin yu cu ging nhau t mt Server khc th c th vn thnh cng. 1) 400 Bad Request Yu cu khng th hiu do sai v c php. 2) 401 Unauthoried Yu cu i hi xc nhn ca User 3) 402 Payment Required Dnh trc cho s dng trong tng lai 4) 403 Forbidden S dng khi Server hiu yu cu nhng t chi thc hin n. Yu cu khng c lp li khi c p ng ny. 5) 404 Not Found Server c thng tin dt khot l User khng c mt trong ch nh vng trng trng Request - URI. Trng thi ny c tr li khi vng trng trng Request - URI khng khp vi vng nhn c bi yu cu. 6) 405 Method Not Allowed Ch th trong Request - Line khng cho php nhn bit a ch thng qua trng Request - URI. p ng ny gm mt trng tiu Allow cha mt danh sch cc ch th c hiu lc cho vic nhn bit cc a ch. 7) 406 Not Acceptable Ti nguyn nhn bit bi yu cu ch c th to ra cc p ng cha c tnh khng chp nhn theo trng tiu Accept trong yu cu. 8) 407 Proxy Athentication Required p ng ny ging p ng 401 nhng n ch ra rng khch hng u tin phi xc thc bn thn vi Proxy. Proxy phi tr li mt trng tiu Proxy - Authenticate cha mt yu cu ng dng cho Proxy trong yu cu ti nguyn. Khch hng c th lp li yu cu vi mt trng tin Proxy - Authorization thch hp. 9) 408 Request Timeout
L Vn Thng, D2001VT

85

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Server khng th cung cp mt p ng trong vng thi gian cho php. Trong mt tiu Expires, khch hng c th lp li yu cu m khng cn thay i ti cc thi im sau. 10) 409 Conflict Yu cu khng c hon thnh v s xung t ti nguyn. p ng ny c tr li nu nh thng s hot ng trong yu cu REGISTER mu thun vi ng k hin c. 11) 410 Gone Yu cu ti nguyn khng cn sn sng ti Server v khng c a ch ti no c nhn bit. 12) 411 Length Required Server t chi yu cu m khng nh ngha Content - Length. Khch hng c th lp li yu cu ny nu n mun b sung mt trng tiu Content - Length cha di ca thn bn tin trong bn tin yu cu.

13) 413 Request Entity Too Large Server t chi x l mt yu cu bi v yu cu qu di so vi nng lc x l ca Server. Server c th hu b kt ni ngn khch hng tip tc yu cu. Nu ch l trng thi tm thi th Server s pht ra trng Rettry - After thng bo sau mt thi gian khch hng c th th li. 14) 414 Request - URI Too Long Server t chi yu cu v trng Request - URI qu di, Server khng th hiu c. 15) 415 Unsupported Media Type Server t chi phc v yu cu v thn ca yu cu khng thuc mt khun dng c h tr bi Server. Server c th tr li mt danh sch cc dng c th chp nhn c s dng cc trng tiu Accept, Accept - Encoding, Accept - Language. 16) 420 Bad Extension Server khng hiu ch th m rng giao thc trong trng tiu Required hay Proxy - Require. 17) 480 Temporarily Unavaiable H thng u cui b gi lin lc thnh cng nhng pha b gi li khng sn sng. p ng ny ch ra mt thi gian tt hn cho cuc gi trong tiu Retry -

L Vn Thng, D2001VT

86

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

After. Reson Phrase c th ch ra cc nguyn nhn chnh xc ti sao pha b gi li khng sn sng. Gi tr ny c th c thit lp bi UA. p ng ny c tr li bi mt Redirect Server nhn din c User thng qua Request - URI nhng khng c c v tr hp l hin nay ca User . 18) 481 Call Leg /Transaction does not Exist p ng ny c tr li khi c ba iu kin sau: Server nhn c mt yu cu BYE m khng ph hp vi Call - leg hin ti. Server nhn c mt yu cu CANCEL khng ph hp vi cc giao dch hin ti. Server nhn c INVITE vi mt th To khng ph hp vi gi tr th ni b. 19) 482 Loop Deteccted Server nhn c mt yu cu vi trng Via cha bn thn n. 20) 483 Too many hops Server nhn c mt yu cu cha nhiu Via entries ( Hops ) hn s cho php ca trng tiu Max Forwards. 21) 484 Address Incomplete Server nhn c mt yu cu vi a ch n To hoc Request - URI khng y . Cc thng tin b xung c th c h tr. 22) 485 Ambiguous a ch ngi c gi cung cp bi yu cu l kh hiu ( m h ). p ng ny cha mt danh sch cc a ch r rng c th trong trng tiu Contract. N c dng tr li trng thi 404 hoc chn danh sch la chn c th nu nh a ch trong yu cu l kh hiu. 23) 486 Busy Here H thng u cui b gi lin lc thnh cng nhng pha gi li khng th tham gia thm vo cuc gi. p ng ny ch th mt thi gian tt hn cho cuc gi trong trng Retry - After. 3.2.2.5 Server Failure 5xx p ng 5xx l p ng li khi chnh Server b li. 1) 500 Server Internal Error Server gp phi mt tnh hung bt ng ngn cn n hon thnh yu cu. Client c th hin th trng thi li c th v c th th li yu cu sau vi giy.

L Vn Thng, D2001VT

87

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

2) 501 Not Implemented Server khng th h tr yu cu chc nng hon thnh yu cu. y l mt p ng thch hp khi Server khng nhn thc r v ch th yu cu v kh nng h tr ca n cho cc User. 3) 502 Bad Gateway Server khi hot ng nh mt Gateway hoc Proxy, nhn mt p ng khng hp l t dowstream Server, n s c gng hon thnh yu cu . 4) 503 Service Unavaiable Server khng c kh nng x l yu cu do s qu ti tm thi hay do bo dng. 5) 504 Gateway Time - out Server khi hot ng nh mt cng khng th nhn mt p ng kp thi t Server khc. N s truy xut vo c gng hon thnh yu cu. 6) 505 SIP Version Not Supported Server khng h tr cho version SIP dng trong bn tin yu cu. p ng ny cha mt thc th miu t ti sao khng h tr Version v nu ra cc giao thc khc c h tr bi Server. 3.2.2.6 Global Farlures 6xx p ng 6xx ch ra rng yu cu khng c p ng ti mi Server. 1) 600 Busy Everywhere H thng u cui b gi lin lc thnh cng nhng pha b gi ang bn v ang mun thc hin cuc gi ti thi im ny. p ng ny ch ra mt thi gian tt hn tin hnh cuc gi trong tiu Retry - After. p ng ny ch tr li khi bit rng khng c im u cui no s tr li s tr li yu cu. 2) 603 Decline My b gi lin lc thnh cng nhng User dt khot khng mun hoc khng th tham gia cuc gi. p ng ny ch ra mt thi gian tt hn tin hnh cuc gi trong tiu Retry - A fter. 3) 604 Dose not exist anywhere Server c thng tin chnh xc l User c ch ra trong trng tiu yu cu To khng tn ti ti bt c ni no. Vic tm kim User mt ni no khng mang li kt qu. 4) 606 not Acceptable
L Vn Thng, D2001VT

88

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

UA lin lc thnh cng nhng mt s mt ca miu t phin nh cc yu cu v phng tin, bng thng hay kiu a ch khng c chp nhn. p ng 606 c ngha l User mun giao tip nhng khng c chp nhn miu t phin thch hp. p ng ny gm mt danh sch cc nguyn nhn ti sao m t phin khng c h tr cha trong trng tiu Warning.

3.3 Hot ng ca SIP Client v SIP Server


SIP c th s dng c giao thc UDP ( User Datagram Protocol ) v TCP ( Transmission Control Protocol ) nh nhng giao thc truyn.

3.3.1 Yu cu
Server loi b nhng yu cu ging nhau v truyn li nhng p ng thch hp. Sau khi nhn mt yu cu CANCEL t Upstream Client, mt Stateful Proxy Server s gi mt yu cu CANCEL ti tt c cc nhnh ni n khng nhn c p ng cui cng. Khi mt UA nhn c mt yu cu, n s kim tra li trng Call - ID da trn cuc gi ang din ra. Nu nh Call - ID c tm thy, n s so snh gi tr Tag ca trng To vi tag ca user v s t chi yu cu nu nh hai gi tr khng ging nhau. Nu gi tr ca tiu From ( k c cc gi tr Tag ) ging vi gi tr ca cuc gi hin ti, Server s so snh n gi tr ca trng tiu CSeq. Nu gi tr nh hn hoc bng gi tr CSeq hin ti th yu cu l yu cu pht li. Nu khng l mt yu cu mi. Nu nh tiu From khng ging vi tiu From ca cuc gi hin ti, mt cuc gi mi c thit lp. Nu gi tr Call - ID khng tm thy, mt cuc gi mi c thit lp vi cc gi tr c ghi vo cc trng mo u To, From v Call - ID. Trong trng hp ny, trng tiu To khng cha mt th a ch ( Tag ). Server tr li mt p ng cha cng mt gi tr ca trng To nhng vi mt th a ch duy nht c thm vo th a ch c th c b qua nu yu cu ch cha mt trng tiu Via.

3.3.2 p ng
Mt Server c th pht ra mt hay nhiu p ng tm thi trc khi gi mt p ng cui cng nu nh mt Stateful Proxy, UAS, Redirect Server hay Registrar khng
L Vn Thng, D2001VT

89

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

th tr li mt yu cu cho p ng cui cng trong vng 200 ms, n s pht ra mt p ng tm thi loi 1xx cng sm cng tt. Stateless Proxy khng th pht cc p ng tm thi cho bn thn chng. Cc p ng l nh x ca cc yu cu bng cch sao chp li cc gi tr trong cc trng tiu To, From, Call - ID, CSeq v cc thng s nhnh ca cc tiu Via t yu cu. Nu nh trng tiu Via ch ra rng Upstream Server s dng giao thc truyn TCP th Proxy phi nhanh chng m mt kt ni TCP ti a ch . Nh vy Proxy phi c x l c bit nhn cc yu cu n t cc kt ni TCP th ng mc d hu ht cc p ng u s n mt kt ni TCP ch ng. Mt kt ni TCP ch ng (active connection) l mt kt ni TCP c khi to bi Proxy cn mt kt ni th ng (passive connection) l kt ni c chp nhn bi Proxy nhng c khi to bi mt thc th khc. p ng 100 khng c gi i, cn cc p ng 1xx khc c th c gi, sau khi Server loi b cc p ng m m trng thi c gi i sm hn. p ng 2xx c gi i theo tiu Via. Khi Stateful Proxy nhn c mt p ng 2xx n phi gi i mt p ng cui cng khng phi l loi 2xx ( non - 2xx ). Cc p ng vi trng thi 300 v ln hn c pht li bi cc Stateful Proxy cho n khi Upstream Proxy tip theo gi i mt yu cu ACK hay CANCEL. Mt Stateful Proxy phi duy tr trng thi t nht l 32s k t khi nhn c p ng khng phi (non 200) u tin iu khin vic pht li cc p ng. 32s l khong thi gian pht li ln nht ca mt p ng 200 s dng thi gian mc nh trong trng hp yu cu ACK b mt trn ng ti UA b gi hoc Stateful Proxy tip theo.

3.3.3 a ch ngun, a ch ch v cc kt ni
3.3.3.1 Unicast UDP Cc p ng c tr li danh sch a ch trong trng mo u Via khng c a ch ngun ca p ng. Vi cuc gi v cc p ng khng c pht ra bi next-hop stateless server m c pht ra bi 1 proxy hay UAS. Do , stateless proxy c th s dng trong trng tiu Via gi cc p ng. 3.3.3.2 Multicast UDP Cc yu cu c th l qung b ( multicast ), yu cu multicast c th c trng cho mt Host v khng ph thuc vo trng Request - URI. Yu cu ny m bo rng n

L Vn Thng, D2001VT

90

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

khng th ra khi phm vi ca mt h thng qun l iu ny c th thc hin vi TTL hay phm vi qun l tu theo s thc hin ca n trong mng. Mt Client nhn c mt yu cu multicast khng phi kim tra xem thnh phn Host ca trng Request -URI c ging vi Host hay tn vng ca n khng. Nu yu cu c nhn thng qua multicast th p ng tr li phi thng qua multicast. p ng cho cc yu cu multicast c pht qung b vi cng thng s TTL nh trong yu cu. TTL c ly ra t thng s ttl trong trng tiu Via. trnh vic cc p ng b kp ( implosion ), Server phi tr li cc yu cu multicast bng mt m trng thi khc vi trng thi 2xx v 6xx. Thi gian tr ca cc p ng nh hn hoc bng 1s. Server c th ngng cc p ng nu nh n nhn c cc p ng c s nh hn hay p ng 6xx t nhm cc thnh vin u tin khc. Server khng tr li cc yu cu CANCEL nhn c thng qua pht qung b trnh vic yu cu b kp. Proxy hoc UAC c th gi 1 yu cu CANCEL khi nhn c mt p ng 2xx hay 6xx u tin cho mt yu cu multicast. Server c th ngng p ng nu yu cu i hi Server phi vi phm cc nguyn tc x l bn tin c bn.

3.3.4 Kt ni TCP
Mt kt ni TCP n c th lu tr mt hay nhiu giao dch SIP. Mt giao dch SIP khng cha hay cha nhiu p ng tm thi theo sau l mt hay nhiu p ng cui cng. Client c th kt ni khi m p ng cui cng u tin ti. Nu Client ng hoc xc lp li kt ni TCP u tin nhn c cc p ng cui cng u tin, Server s coi hot ng ny nh mt yu cu CANCEL. Hot ng ny phi c hn ch v c th khin Client lm vic sai chc nng dn n mt Proxy Server s chim d mt kt ni v thi hn. Server khng c ng kt ni TCP cho n khi n gi i mt p ng cui cng. Tuy nhin, bnh thng th Client chu trch nhim ng kt ni. Nu nh mt Server mun tr li mt p ng cho Client m khng mun m mt kt ni dnh cho Client th n s m mt kt ni khc ti danh sch a ch trong trng Via. Theo cch mt Proxy hay UA phi c x l c bit nhn c cc yu cu v p ng trong cng mt kt ni th ng ( passive connection ).

3.4 Hot ng ca UA ( User - Agent )


Phn ny m t cc nguyn tc m UAC v UAS dng to v x l cc yu
L Vn Thng, D2001VT

91

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

cu v p ng.

3.4.1 Pha gi pht yu cu Intive yu cu


Khi mt UAC mun khi to mt cuc gi, n s a ra mt yu cu INVITE. Trng To trong yu cu cha a ch ngi gi. Trng Request - URI cha cng a ch . Trng From cha a ch ca pha b gi. Nu a ch From c th xut hin trong yu cu pht ra t UAC cho cng mt cuc gi th pha gi phi ci thng s Tag trong trng From. UAC c th nhp thm trng Contact cha mt a ch m n mun lin lc sau khi ngi b gi kt thc hi thoi vi pha gi. V danh sch a ch trong trng a ch Via. Nu ging nhau, th a ch branch trong trng Via c kim tra. Nu n ging vi mt branch bit, p ng c x l bi mt Virtual Client. Nu khng p ng s b loi b. Nu mt yu cu cn c nhn thng qua giao thc TCP, Proxy s kim tra xem n c kt ni hin ti no ti a ch ca n cha. Nu c th p ng s c gi qua kt ni . Nu khng mt kt ni TCP mi s c thit lp thng qua a ch v cng trong trng Via v p ng s c gi qua . Ch rng mt UAC hay Proxy u c x l c bit nhn cc p ng ti qua mt kt ni TCP. Cc p ng 2xx phi c truyn li bi cc Proxy thm ch qua c mt kt ni TCP.

3.4.2 Pha b gi pht p ng


Khi pha b gi nhn c yu cu INTIVE, pha b gi c th chp nhn, gi li hay hu b cuc gi. Trong tt c cc trng hp trn n pht ra mt p ng. p ng ny phi sao chp li cc gi tr trong trng To, From, Call - ID CSeq v Via t yu cu. Thm vo , p ng UAS phi b sung tham s Tag vo trng To nu yu cu cha nhiu hn mt trng tiu Via. UAS c th nhp thm mt trng tiu Contact vo p ng. N cha mt a ch m pha b gi mun lin lc cho giao dch tip theo bao gm c ACK cho INVITE hin ti. UAS lu gi gi tr ca trng To v From k c cc th Tag. Chng s tr thnh a ch ni b hay a ch xa ca cc Call - leg tng ng.

3.4.3 Pha gi nhn c p ng ban u


Nhiu p ng c th n cng mt UAC cho mt yu cu INVITE, mi p ng c phn bit bng tham s Tag trong trng tiu To v i din cho mt Call - leg ring. Pha gi c th cng nhn hay kt thc vi mi p ng UAS. tha nhn n

L Vn Thng, D2001VT

92

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

gi mt yu cu ACK cn kt thc n gi yu cu BYE. Trng tiu To From trong p ng 200 bao gm c cc th Tag. Trng Request - URI ca ACK hay BYE c th thit lp bt c a ch no c tm thy trong trng tiu Contact nu n tn ti. Ln lt UAC s sao chp cc a ch t trng tiu To vo trng Request -URI. UAC cng lu n gi tr ca trng tiu To v From trong mi p ng vi mi Call - leg trng tiu To s tr thnh a ch xa cn trng From tr thnh a ch ni b.

L Vn Thng, D2001VT

93

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

3.4.4 Pha gi hay b gi pht ra yu cu tip theo


Khi mt cuc gi c thit lp c pha gi hoc b gi c th pht ra yu cu INTIVE hay BYE thay i hay kt thc cuc gi khng ch n pha gi hay b gi pht ra yu cu mi, trng tiu trong yu cu c thit lp nh sau: Vi mi Call - leg gi tr trng tiu To s c thit lp thnh a ch xa cn trng From s thnh a ch ni b. Trng tiu Contact c th khc vi trng Contact c gi i trong yu cu hay p ng trc . Trng Request - URI thit lp gi tr ca trng tiu Contract nhn c trong mt yu cu hay p ng trc t mt thnh vin xa, hoc ti gi tr ca mt a ch xa.

3.4.5 Nhn cc yu cu tip theo


Khi mt yu cu tip theo c nhn, cc kim tra sau c thc hin: Nu nh Call - ID l mi, yu cu l cho cuc gi mi. Khng ch n gi tr ca trng tiu To v From Nu Call - ID hin c, yu cu l dnh cho cuc gi hin ti. Nu cc gi tr To, From, Call - ID v CSeq thc s ph hp vi cc yu cu nhn c trc ( k c cc th Tag ) th yu cu l mt yu cu pht li. Nu khng c s ph hp vi bc trc , trng To v From tng phn vi Call - leg hin ti v a ch xa. Nu nh c s ph hp v gi tr Cseq trong yu cu ln hn gi tr CSeq nhn c trong leg trc y, yu cu l mt giao dch mi cho Call - leg hin ti.

3.5 Hot ng ca SIP Proxy v Redirect Server


3.5.1 Redirect Server
Mt Redirect Server khng th pht ra cc yu cu SIP cho chnh n. Sau khi nhn c mt yu cu khc yu cu CANCEL, n thu thp danh sch cc v tr thay i v tr li mt p ng cui cng loi 3xxx hoc l t chi yu cu. Vi cc yu cu CANCEL c khun dng hp l, n c th tr li mt p ng 2xx. p ng ny s kt thc phin giao dch SIP. Redirect Server s duy tr trng thi giao dch trong sut phin giao dch SIP.

L Vn Thng, D2001VT

94

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

3.5.2 UAS
UAS hot ng ging nh Ridiect Server, chng c th chp nhn cc yu cu v gi li mt p ng loi 2xx.

3.5.3 Proxy Server


3.5.3.1 Proxy Request trnh lp li, mt Server phi kim tra xem a ch ca n c thc s nm trong trng tiu Via ca yu cu n khng. Cc gi tr ca trng To, From, Call -ID v Contact u c sao chp chnh xc t yu cu gc. Proxy c th thay i trng Request - URI thng bo cho Server ni n mun gi yu cu n. Mt Proxy Server bao gi cng chn mt trng tiu Via cha a ch ca chnh n vo cc yu cu. Cc Proxy bao gi cng a vo cc thng s branch. 3.5.3.2 Proxy Respone Proxy ch x l mt p ng khi m trng Via cao nht ph hp vi mt trong cc a ch ca n. Nu khng p ng s dng li ( khng c x l ). 3.5.3.2 Stateless Proxy Mt Stateless Proxy s loi b trng Via ca chnh n v kim tra a ch trng Via tip theo. Trong trng hp giao thc truyn l UDP, p ng c gi n danh sch a ch trong th a ch maddar hay received nu chng c mt v cui cng n a ch trong trng sent - by. Proxy vn gi nguyn trng thi statefull khi thit lp yu cu nhn thng qua TCP. Stateless Proxy khng c pht ra yu cu tm thi. 3.5.3.3 Statefull Proxy ( nhn yu cu ) Khi mt Stateful Proxy nhn c mt yu cu, n s kim tra trng To - From, Call -ID v CSeq da vo bng yu cu hin ti. Nu Tuple khng c mt yu, cu tng ng vi mt giao dch mi v yu cu c u quyn. Mt Statefull Proxy Server c th pht p ng tm thi 1xx. 3.5.3.4 Stateful Proxy ( nhn ACK ) Khi nhn c mt yu cu ACK, Statefull Proxy c th x l cc b hay u quyn. Cc yu cu ACK c s l y quyn tr khi gi tr cc trng tiu To, From,

L Vn Thng, D2001VT

95

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

Cseq v Call - ID ph hp vi mt p ng ( khng phi 200 ) c gi bi Proxy. Trong trng hp , yu cu c s l cc b v ngng vic truyn li cc p ng. 3.5.3.5 Staeful Proxy ( nhn mt p ng ) Khi mt Proxy Server nhn mt p ng thng qua s kim tra trng Via, n s kim tra trng To ( khng c Tag ), From ( k c Tag ), Call - ID v CSeq da trn cc gi tr trong yu cu trc . Nu khng trng nhau p ng c tr. 3.5.3.6 Stateless, Non - Forking Proxy Cc Proxy thuc loi ny pht ra hu ht l cc yu cu unicast cho mi yu cu SIP ti, do chng khng th Fork cc yu cu. Tuy nhin, Server c th la chn mt kiu hot ng pht ra cc yu cu khc. Server c th gi cc yu cu v p ng. N khng th duy tr trng thi ca phin giao dch SIP. Proxy Server lu tr kt qu ca vic bin dch a ch v lu tr cc p ng nhanh chng pht li.

3.5.4 Forking Proxy


Server tr li mt yu cu ngay lp tc bng p ng 100. p ng thnh cng cho mt yu cu INTIVE cha trng tiu Contact. Nu Proxy i hi cc yu cu trong tng lai phi c nh tuyn qua n th n s b xung thm mt tiu Record Route vo yu cu. Qu trnh x l cc p ng hon thnh khi tt c cc yu cu u nhn c tr li bi cc p ng trng thi cui cng ( cho unicast ) hoc sau li mt p ng 408 ( Time out ) ti Client. 1xx: Proxy gi p ng tr li Client 2xx: Proxy gi p ng ti Client m khng gi mt yu cu ACK. Sau khi nhn mt p ng 2xx, Server kt thc tt c cc yu cu sp thc hin bng cch gi mt yu cu CANCEL v ng kt ni TCP. 3xx: Proxy gi mt yu cu ACK v lp li cc danh sch a ch. Nu khng, p ng c s thp nht s c tr li khi khng c loi p ng 2xx. 4xx, 5xx: Proxy gi mt yu cu ACK v ghi li cc p ng c m trng thi nh hn 4xx v 5xx. Khi hon thnh, p ng c s m nh nht s c tr li nu nh khng c cc p ng 2xx, 3xx. 60s ( cho multicast ), mt Proxy c th gi p ng CANCEL ti tt c cc cuc gi v tr

L Vn Thng, D2001VT

96

n tt nghip i hc

Chng III. Giao thc khi to phin SIP

6xx: Proxy gi mt p ng ti Client v gi i mt yu cu ACK. Cc yu cu sp thc hin khc c th kt thc vi yu cu CANCEL. Mt Proxy c th duy tr trng thi trong mt giai on m n la chn. Nu mt Proxy vn c danh sch cc ch m n gi yu cu INTIVE cui cng n, n c th gi trc tip yu cu ACK ti cc Server

Kt lun chng 3
Trong chng 3 trnh by cc vn c bn v chc nng, kin trc v hot ng ca giao thc SIP, t thy c vai tr quan trng ca giao thc SIP trong mng NGN. Nh s n gin v kh nng p ng cao m giao thc SIP ngy cng c ng dng rng ri cho dch v in thoi qua mng IP ni ring v truyn thng trong mng Internet ni chung. Nhng tin b ca giao thc SIP gip gim chi ph, m rng thm nhiu dch v mi v tng hiu qu ca dch v mng.

L Vn Thng, D2001VT

97

You might also like