MNG MY TNH (Dnh cho sinh vin h i hc chnh qui chuyn ngnh Cng ngh thng tin)
Ngi bin son: ThS. Nguyn Xun Anh
H NI 11/2012 Bi ging Mng my tnh Ths. Nguyn Xun Anh 2 MC LC
CHNG 1: GII THIU .............................................................................. 7 1.1 Mng my tnh v mng Internet ........................................................... 7 1.2 Phn loi mng my tnh theo phm vi a l ......................................... 7 1.3 Hnh trng mng ...................................................................................... 7 1.3.1 Hnh trng vt l ............................................................................... 7 1.3.2 Hnh trng logic ................................................................................ 8 1.3.3 Kt ni vi mng Internet ................................................................. 9 CHNG 2: KIN TRC V HIU NNG MNG ................................. 11 2.1 Chuyn mch knh v chuyn mch gi ............................................... 11 2.2 Phn tng v chc nng ca cc tng .................................................... 13 2.2.1 Kin trc phn tng ......................................................................... 13 2.2.2 M hnh OSI ................................................................................... 14 2.2.2.1 Cc tin trnh ngang hng ........................................................ 15 2.2.2.2 Giao din gia cc tng ........................................................... 16 2.2.2.3 T chc cc tng ...................................................................... 16 2.2.3 Chc nng cc tng trong m hnh OSI ......................................... 17 2.2.3.1 Tng vt l ............................................................................... 17 2.2.3.2 Tng lin kt d liu ................................................................ 18 2.2.3.3 Tng mng ............................................................................... 18 2.2.3.4 Tng vn ti ............................................................................. 19 2.2.3.5 Tng phin ............................................................................... 20 2.2.3.6 Tng trnh din ......................................................................... 20 2.2.3.7 Tng ng dng ......................................................................... 21 2.2.4 M hnh TCP/IP .............................................................................. 21 2.2.4.1 Tng truy nhp mng ............................................................... 22 2.2.4.2 Tng Internet ............................................................................ 22 2.2.4.3 Tng vn ti ............................................................................. 22 2.2.4.4 Tng ng dng ......................................................................... 23 2.2.5 So snh m hnh OSI v m hnh TCP/IP ...................................... 24 2.3 Tn min v a ch ............................................................................... 25 2.3.1 Cc dch v tn min ...................................................................... 25 2.3.1.1 Dch v t b danh cho my tnh ............................................ 26 2.3.1.2 Dch v t b danh cho my ch ............................................ 26 2.3.1.3 Phn tn ti .............................................................................. 26 2.3.2 C ch hot ng ca dch v tn min ......................................... 27 2.3.3 Bn ghi dch v tn min ................................................................ 29 Bi ging Mng my tnh Ths. Nguyn Xun Anh 3 2.4 Nguyn tc thit k Internet .................................................................. 31 2.5 Cc yu t to nn hiu nng mng ....................................................... 36 2.5.1 Cc yu t nh gi hiu nng mng .............................................. 36 2.5.2 Vai tr ca vic nh gi hiu nng mng my tnh ...................... 36 2.5.3 Cc phng php nh gi hiu nng mng................................... 37 CHNG 3: TNG NG DNG ................................................................ 40 3.1 Cc khi nim v ci t cc giao thc tng ng dng ......................... 40 3.1.1 M hnh dch v ca tng ng dng ............................................... 40 3.1.2 M hnh khch ch ......................................................................... 42 3.1.3 M hnh ngang hng ....................................................................... 42 3.2 Cc giao thc thng dng ti lp ng dng ........................................ 42 3.2.1 Giao thc truy nhp trang web HTTP ............................................ 42 3.2.1.1 Tng quan v giao thc HTTP ................................................ 43 3.2.1.2 Khun dng ca bn tin HTTP ................................................ 46 3.2.1.3 Tng tc ngi dng-my ch .............................................. 49 3.2.1.4 GET c iu kin ..................................................................... 50 3.2.1.5 Web caches .............................................................................. 52 3.2.2 Giao thc truyn tp tin FTP .......................................................... 53 3.2.3 Giao thc chuyn th in t ......................................................... 55 3.2.3.1 SMTP ....................................................................................... 57 3.2.3.2 POP3 ........................................................................................ 65 3.2.3.3 IMAP ....................................................................................... 66 3.3 Mt s ng dng quen thuc ................................................................. 67 3.3.1 Trnh duyt web .............................................................................. 67 3.3.2 Phn mm c th in t .............................................................. 69 3.3.3 Trnh a phng tin ...................................................................... 69 3.3.4 Tin ch Telnet, rlogin, ssh ............................................................. 69 CHNG 4: TNG VN TI ..................................................................... 71 4.1 Ghp knh v phn knh, cc giao thc TCP v UDP .......................... 71 4.1.1 Ghp knh v phn knh ................................................................ 71 4.1.2 Giao thc TCP ................................................................................ 75 4.1.3 Giao thc UDP ............................................................................... 75 4.1.3.1 Cu trc d liu ca giao thc UDP ........................................ 77 4.1.3.2 Cch tnh UDP checksum ........................................................ 77 4.2 Cc nguyn l truyn tin cy ................................................................. 78 4.2.1 Xy dng giao thc truyn d liu tin cy ..................................... 79 4.2.1.1 Truyn d liu tin cy trn knh tin cy hon ton ................. 79 4.2.1.2 Truyn d liu tin cy trn knh truyn c li bit ................... 79 Bi ging Mng my tnh Ths. Nguyn Xun Anh 4 4.2.1.3 Truyn d liu tin cy khi c li ............................................. 83 4.3 iu khin lu lng ............................................................................. 86 4.4 Nng cao hiu nng bng ng ng Pipeline ...................................... 87 4.4.1 Giao thc Go-back-N ..................................................................... 88 4.4.2 Giao thc lp li c la chn .......................................................... 92 CHNG 5: LP TRNH SOCKET ............................................................ 97 5.1 Khi nim v socket .............................................................................. 97 5.1.1 M hnh client/server ...................................................................... 97 5.1.2 Cc kin trc Client/Server ............................................................ 98 5.1.2.1 Client/Server hai tng .............................................................. 98 5.1.2.2 Client/Server ba tng ............................................................... 99 5.1.2.3 Kin trc n- tng ..................................................................... 99 5.1.3 M hnh truyn tin socket ............................................................... 99 5.2 Java sockets ......................................................................................... 101 5.2.1 Socket cho pha server .................................................................. 101 5.2.2 Socket cho pha Client .................................................................. 103 5.3 My ch a x l ................................................................................. 105 5.4 Lp trnh socket vi ngn ng C ......................................................... 105 CHNG 6: GIAO THC TCP ................................................................. 107 6.1 Cu trc segment ................................................................................. 107 6.2 Truyn d liu tin cy .......................................................................... 108 6.3 iu khin lung ................................................................................. 112 6.4 Qun l kt ni .................................................................................... 114 6.5 iu khin tc nghn ........................................................................... 117 CHNG 7: TNG MNG V GIAO THC IP .................................... 121 7.1 M hnh dch v tng mng ................................................................. 121 7.1.1 Nguyn l chuyn mch tng mng ............................................. 122 7.1.2 Lch s chuyn mch gi v chuyn mch o .............................. 125 7.2 Nguyn tc nh tuyn ......................................................................... 126 7.2.1 Thut ton nh tuyn theo trng thi ng truyn .................... 128 7.2.2 Thut ton vector khong cch ..................................................... 131 7.3 nh tuyn phn cp ............................................................................ 135 7.4 Giao thc IP ......................................................................................... 136 7.4.1 a ch IPv4 .................................................................................. 137 7.4.1.1 Vn a ch v nh tuyn ................................................. 141 7.4.1.2 Khun dng gi d liu IP ..................................................... 142 7.4.1.3 Phn mnh v hp nht gi tin IP .......................................... 144 7.4.2 a ch IP V6 ................................................................................ 147 Bi ging Mng my tnh Ths. Nguyn Xun Anh 5 7.4.2.1 nh dng gi tin IP V6 ......................................................... 147 7.4.2.2 ICMP cho IPV6 ..................................................................... 149 7.4.3 Chuyn t IPv4 sang IPv6 ............................................................ 149 7.5 nh tuyn trn Internet ...................................................................... 149 7.5.1 Giao thc RIP ............................................................................... 150 7.5.2 Giao thc OSPF ............................................................................ 151 7.5.3 Giao thc BGP .............................................................................. 151 7.6 Cc giao thc khc .............................................................................. 152 7.6.1 Giao thc ICMP ............................................................................ 152 7.6.2 Cp pht a ch IP ........................................................................ 153 7.6.2.1 Giao thc RARP .................................................................... 153 7.6.2.2 Giao thc BOOTP ................................................................. 154 7.6.2.3 Giao thc DHCP .................................................................... 154 7.7 Chuyn i a ch ............................................................................... 155 7.7.1.1 Giao thc ARP ....................................................................... 155 7.7.1.2 Chuyn i a ch - NAT .................................................... 156 7.8 Chia mng ............................................................................................ 156 CHNG 8: TNG LIN KT ................................................................. 157 8.1 M hnh dch v tng lin kt d liu ................................................. 157 8.2 Giao thc a truy nhp ........................................................................ 158 8.2.1 Giao thc phn chia knh truyn .................................................. 161 8.2.2 Giao thc a truy cp ngu nhin ................................................. 162 8.2.2.1 Slotted ALOHA ..................................................................... 162 8.2.2.2 ALOHA thun ty ................................................................. 163 8.2.2.3 a truy cp cm nhn sng mang .......................................... 164 8.3 Cc cng ngh kt ni ......................................................................... 165 8.3.1 Cng ngh Ethernet ...................................................................... 165 8.3.1.1 Cu trc khung d liu Ethernet ........................................... 166 8.3.1.2 Dch v truyn s liu khng lin kt .................................... 167 8.3.1.3 Di tn c s v m ho Manchester ..................................... 168 8.3.1.4 CSMA/CD ............................................................................. 168 8.3.1.5 Hiu sut Ethernet .................................................................. 170 8.3.1.6 Cc cng ngh Ethernet ......................................................... 171 8.3.2 Kt ni mng din rng ................................................................ 173 8.3.2.1 Giao thc PPP ........................................................................ 173 8.3.2.2 Giao thc iu khin ng truyn PPP .............................. 176 8.4 Cc thit b mng ni b ...................................................................... 178 8.4.1 B tp trung .................................................................................. 178 Bi ging Mng my tnh Ths. Nguyn Xun Anh 6 8.4.2 Cu ni .......................................................................................... 179 8.4.2.1 Nguyn l lc v chuyn tip ................................................ 180 8.4.2.2 Xy dng bng chuyn mch ................................................ 182 8.4.2.3 Spanning Tree ........................................................................ 182 8.4.2.4 So snh cu ni v thit b nh tuyn .................................. 183 8.4.2.5 Kt ni cc on mng qua ng trc ................................. 185 8.4.3 Switch ........................................................................................... 185 8.5 Kt ni khng dy ............................................................................... 186 8.5.1 Cc m hnh kt ni mng khng dy .......................................... 187 8.5.2 u v nhc im ca kt ni khng dy .................................... 188 BI TP TNG HP ...................................................................................... 190
Bi ging Mng my tnh Ths. Nguyn Xun Anh 7 CHNG 1: GII THIU 1.1 Mng my tnh v mng Internet Mng my tnh l mt h thng bao gm cc my tnh c ni kt vi nhau trao i thng tin. Vic kt ni cc my tnh vi nhau nhm mc ch sau: Chia s phn cng: ngi s dng c th dng chung cc thit b phn cng nh my in, my v. Cao hn na, ngi dng c th tn dng nng lc x l ca cc my tnh khc. Chia s d liu: D liu c qun l tp trung, nh vy s m bo an ton v ton vn d liu. Trao i thng tin: vic trao i thng tin nh th in t, ng tin ln cc trang thng tin in t mt cch d dng, nhanh chng v tin li. Nu nhiu mng my tnh vi nhau gi l kt ni lin mng (internet), vic kt lin mng trn phm vi ton cu hnh thnh nn mng Internet. S pht trin ca mng Internet vt xa nhng d on ca nhng ngi sng lp, n lm thay i li sng ca nhn loi. 1.2 Phn loi mng my tnh theo phm vi a l Mng my tnh c th c t trn mt khu vc nht nh, v d: trong mt cn phng, mt ta nh, mt quc gia hay trn phm vi ton cu. Da vo phm vi phn b ca cc my tnh trong mng ngi ta c th phn ra cc loi mng, trong khi nim mng cc b (LAN - Local Area Network) v mng din rng (WAN - Wide Area Network) thng hay c nhc ti. Mng cc b kt ni cc my tnh trong mt khu vc bn knh hp, thng thng di 1 Km, bng thng tng i ln, thng c s dng trong ni b mt gia nh, c quan. Mng din rng kt ni cc my tnh c phm vi ln hn 1 Km v thng c lp t da trn nn tng mng vin thng. Mng cc b thng c bng thng ln c thit k kt ni cc my tnh trong mt khu vc a l nh nh mt tng ca to nh, hoc trong mt to nh.... Mng cc b cho php dng chung nhng thit b ngoi vi nh my in, my chiu v thm ch c th chia s cc ti nguyn trn mi my tnh nh a, phn mm, ti nguyn d liu. 1.3 Hnh trng mng Hnh trng mng (Network Topology) l cu trc my tnh lin kt cc my tnh vi nhau, cn phi phn bit hnh trng vt l v hnh trng logic. Hnh trng vt l tr li cho cu hi cc my tnh c ni vi nhau nh th no (phn nh cu trc hnh hc ca mng). Hnh trng logic tr li cho cu hi cc my tnh trao i thng tin vi nhau nh th no (mng vn hnh theo nguyn tc no). 1.3.1 Hnh trng vt l Hnh trng vt l c 3 dng cu trc c bn l: dng tuyn (Bus Topology), dng vng (Ring Topology) v dng hnh sao (Star Topology). T ba dng cu Bi ging Mng my tnh Ths. Nguyn Xun Anh 8 trc c bn trn s to lp cc hnh thng mng khc nh: dng hnh cy (Tree), dng hn hp (Mesh),v.v....
Hnh 1.1 Cc hnh trng vt l
Dng tuyn: Theo cch b tr hnh lang, tt c cc my tnh trong mng u c ni vi nhau trn mt trc ng dy cp chnh. Hai u mt ca dy cp c bt bi mt thit b gi l kt cui (Terminator), kt cui c tc dng gi cho cc tn hiu di chuyn trn dy gim c suy hao. Loi dng ny dng t dy cp nht, d lp t. Tuy nhin, khi c s hng hc on no th rt kh pht hin, ch cn mt im trn ng dy b t s ngng hot ng ca ton b mng. Dng vng: ng dy cp c thit k lm thnh mt vng khp kn, tn hiu chy quanh theo mt chiu no . Mng dng vng tit kim dy dn nhng ng dy phi khp kn, nu b ngt mt ni no th ton b mng s ngng hot ng. Dng hnh sao: Dng hnh sao bao gm mt im trung tm, cc my tnh trao i thng tin vi nhau u phi chuyn qua trung tm ny. Dng hnh sao c u im sau: - Hot ng theo nguyn l ni song song nn nu c mt thit b no mt nt thng tin b hng th mng vn hot ng bnh thng. - Cu trc mng n gin. - D dang m rng qui m mng. - Nhc im ca mng hnh sao: - Kh nng m rng mng hon ton ph thuc vo kh nng ca trung tm . Khi trung tm c s c th ton mng ngng hot ng. - Mng yu cu ni c lp ring r tng thit b cc nt thng tin n trung tm. Khong cch t my n trung tm thng di 100m. 1.3.2 Hnh trng logic Hnh trng logic c phn thnh hai loi: Qung b v th bi. Qung b: Bi ging Mng my tnh Ths. Nguyn Xun Anh 9 Trong hnh trng qung b, knh truyn c chia s cho tt c cc my tnh. Khi mt my tnh gi tin, tt c cc my tnh cn li s nhn c tin . Ti mt thi im ch cho php mt my tnh c php s dng ng truyn. Th bi: Hnh trng ny khng c nt iu phi, mt bn tin c bit c gi l th bi (token) c trao i gia cc nt theo mt th t nh trc. V d, nt th nht gi th bi ti nt th hai, nt th hai gi th bi ti nt th ba. . . nt th N gi th bi ti nt th nht. Khi nt nhn c th bi, n ch gi th bi khi c d liu cn truyn, nu khng n s ngay lp tc chuyn th bi ti nt k tip. Nu nt c d liu cn truyn, khi nhn c th bi, n gi i lng d liu c php v sau chuyn th bi ti nt k tip. 1.3.3 Kt ni vi mng I nternet Cng vi s pht trin ca mng Internet, ngi ta c nhiu cch thc kt ni vo Internet. Mi cch c u im v nhc im ring, tu thuc vo phn cng, phn mm v chi ph phi tr. Thc t, chng ta c th gp chung thnh 3 loi hnh dch v kt ni c bn sau: - Kt ni trc tip, c nh - Kt ni trc tip, khng c nh - Kt ni gin tip Kt ni trc tip, c nh: y l cc loi kt ni m ngi s dng c th truy cp vo Internet vo bt c lc no mnh mun. My tnh s c cung cp cho mt a ch tnh v khng b khng thay i trong mt thi gian di. Tc l u im ln nht ca loi hnh ny v my tnh c kt ni s dng bng thng rng. Chng ta c th thy kt ni qua modem cp (cable modem), ISDN ... l nhng v d in hnh v loi kt ni ny. Thng thng y l loi hnh kt ni t tin, c v gi cc cng nh thit b kt ni. Kt ni trc tip, khng c nh: Mi ln kt ni, my tnh s c cp cho mt a ch phc v cho phin lm vic, a ch ny ch tn ti trong thi gian kt ni. Loi kt ni ny thng dng trong mng in thoi cng cng. u im l gi thnh tng i thp, tuy nhin hn ch ca loi kt ni ny l tc , n gin v d liu c truyn chung vi tn hiu thoi trn cp ng. Nu kt ni qua ng dy in thoi th tc hn ch 56 Kbps. Kt ni gin tip, khng c nh: y l kt ni Internet m my tnh ca ngi dng khng kt ni mt cch trc tip vo mng, m n c kt ni vo mt my tnh khc ang thc s ni Internet. Cch ny thng thy cc phng dch v Internet cng cng. Tc cng tu thuc vo loi kt ni Internet m my ch ang c cng nh s my tnh khch ang kt ni vo my ch. Hn na, loi hnh ny c th khng cung Bi ging Mng my tnh Ths. Nguyn Xun Anh 10 cp y cc chc nng cho my khch, tt c u tu thuc vo chnh sch bo mt c thit lp trn my ch. Cn c vo nhu cu s dng, ngi dng c th la chn cc phng tin kt ni sau: Kt ni qua mng in thoi cng cng (PSTN): Dng modem quay s, tc chm, cht lng khng tt, tuy nhin y l mng bao ph rng ln, k c cc vng ho lnh. ng thu bao (leased line). Thu ng dy ring ca cng ty vin thng. Mng dch v tch hp s (ISDN - Integrated Service Digital Nework). S dng ng in thoi s thay v ng tng t. Frame relay: Ph hp vi cc dch v truyn s liu. Ch truyn khng ng b (ATM - Asynchoronous Trangfer Mode) ATM thch hp cc dch v i hi bng thng rng. ng v tinh (satellite links): Gi thnh t, ch ph hp vi nhng khu vc kh trin khai knh truyn bng thng rng bng cc ng dy hu tuyn in thoi di ng: Hnh thc ny ang ngy cng ph bin, c bit khi cc cng ty thng tin di ng trin khai mng 3G v 4G.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 11 CHNG 2: KIN TRC V HIU NNG MNG 2.1 Chuyn mch knh v chuyn mch gi Chuyn mch knh: Khi c hai i tng cn trao i thng tin vi nhau th gia chng s thit lp mt knh c nh v c duy tr cho n khi mt trong hai bn ngt lin lc, d liu ch c truyn theo con ng c nh . Chuyn mch knh hot ng theo m hnh ca h thng in thoi cng cng. V d, hai my A v B cn phi trao i thng tin vi nhau. c th giao tip vi my B, my A phi thc hin mt cuc gi. Nu my B chp nhn cuc gi th mt knh truyn c thit lp dnh ring cho vic trao i thng tin gia my A v my B. Tt c cc ti nguyn c cp cho cuc gi ny nh bng thng ng truyn, kh nng ca cc b chuyn i thng tin u c dnh ring cho cuc gi, khng chia s cho bt k cuc gi no khc ngay c khi my A v B khng gi thng tin cho nhau.
Hnh 2.1 Mng chuyn mch knh
Bng thng s c chia thnh nhiu phn bng nhau v s gn cho cc cuc gi. Khi mt cuc gi s hu phn bng thng , mc d khng s dng n hoc khng s dng ht n cng khng chia s bng thng ny cho cc cuc gi khc. Vic phn chia bng thng ca knh truyn c th thc hin k thut phn chia theo tn s (FDMA-Frequency Division Multi Access) hay phn chia theo thi gian (TDMA- Time Division Multi Access). Chuyn mch knh c hiu sut khng cao do phi mt thi gian thit lp knh truyn, hiu sut s dng knh truyn thp v c nhng thi im knh truyn c thit lp nhng li khng c s dng hoc s dng rt t, trong khi cc thc th khc c nhu cu truyn d liu vn phi nm trong hng i. Chuyn mch thng bo: Thng bo l mt n v thng tin vi khun dng nht nh, mi thng bo gm hai phn: Phn thng tin iu khin v phn ni dung cn chuyn, phn thng tin iu khin phi ch nh r ch n ca thng bo. Cn c vo thng tin iu khin, mi nt trung gian s quyt nh chuyn thng bo ti nt k tip, ng i ca cc thng bo s khng c nh.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 12
Hnh 2.2 Chuyn mch thng bo
So vi chuyn mch knh, hiu sut s dng ng truyn ca chuyn mch gi cao hn, c ch truyn tin linh hot hn v c th t u tin cho tng thng bo. Tuy nhin, do khng qui nh ln ca mi bn tin nn kh qui nh thng nht thi gian p ng ca mi thng bo, khi c li xy ra th phi truyn li ton b thng bo . Chuyn mch gi: Trong phng php chuyn mch gi, thng tin trao i gia hai my tnh c phn thnh nhng gi tin c kch thc ti a xc nh. Gi tin ca nhng ngi dng khc nhau s chia s nhau bng thng ca knh truyn. Nu lng thng tin cn truyn i vt qu kh nng p ng ca knh truyn th s xy ra trng hp mi gi tin chim dng ton b bng thng ca knh truyn. Trong trng hp ny, cc thit b nh tuyn s lu li cc gi tin cha gi vo hng i ch cho n khi knh truyn ri s ln lt gi i.
Hnh 2.3 Chuyn mch gi
Phng php chuyn mch gi cho php tn dng knh truyn tt hn, do c th p ng nhiu ngi s dng hn m khng cn phi nng cp h thng phn cng. V d: gi s mt ng truyn c tc 2 Mbps, mi ngi dng c cp bng thng 100 Kbps v ch hot ng ti a 10% tng thi gian. Nu dng phng php chuyn mch knh s ch p ng ti a 20 ngi s dng, trong khi nu dng phng php chuyn mch gi th c th p ng cho khong 200 ngi s dng. Chuyn gi thch hp cho dch v truyn d liu ln nhng cn phi c c ch iu khin tt nghn v mt mt d liu. Thng Bi ging Mng my tnh Ths. Nguyn Xun Anh 13 lng ph thuc vo s lng ngi dng ng thi nn mt s ng dng v m thanh v hnh nh s c cht lng khng n nh. 2.2 Phn tng v chc nng ca cc tng 2.2.1 Kin trc phn tng gim phc tp ca vic thit k v ci t mng, ngi ta thng la chn cch thit k theo quan im phn tng. Mi h thng thnh phn ca mng c xem nh mt cu trc a tng, trong mi tng c xy dng trn tng di n. S lng cc tng cng nh tn v chc nng ca mi tng tu thuc vo tng ca ngi thit k. Mc ch ca vic phn tng l chuyn mn ha cc chc nng dch v. Mi tng khi s dng dch v khng cn quan tm n cch thc hin ca cc tng di.
Hnh 2.4 Kin trc phn tng
Vic thit k phn tng phi bo m cc nguyn tc sau: - Trong mt mng s lng tng v chc nng/nhim v ca mi tng phi nh nhau. - D liu khng c truyn trc tip t tng th i ca h thng ny sang tng th i ca h thng kia, ngoi tr i vi tng thp nht. Bn gi phi chuyn d liu n tng di n, n tng thp nht s chuyn cho tng thp nht ca bn nhn v d liu li c chuyn tip cho tng cao hn. - Lin kt gia hai tng thp nht gi l lin kt vt l, lin kt ca tt c cc tng cao hn gi l lin kt logic. Bi ging Mng my tnh Ths. Nguyn Xun Anh 14 - Giao tip gia hai tng lin k gi l giao din, chng trao i d liu vi nhau qua cc im truy nhp dch v. - Cc tng tng ng giao tip vi nhau da trn cc qui tc nht nh gi l giao thc, mi tng c th c nhiu giao thc. - Giao thc (Protocol) l tp cc tiu chun trao i thng tin gia hai h thng my tnh hoc hai thit b my tnh vi nhau. Mi giao thc phi qui nh n v d liu ca giao thc (PDU Protocol Data Unit) v tp cc qui tc trao i thng tin: Gi/nhn, qui nh tc , phng php truyn (mt hng, hai hng hay hai hng lun phin). - D liu ca tng trn khi chuyn qua tng di c th s c tch thnh nhng n v d liu nh hn v ng thi c thm cc thng tin iu khin ph hp vi giao thc truyn tin ca tng di. Bn nhn, mi tng tng ng s bc tch thng tin iu khin v tp hp cc n v d liu chuyn ln tng cao hn. 2.2.2 M hnh OSI ISO l tn vit tt ca T chc Quc t v tiu chun ho (International Organization for Standardization), c thnh lp nm 1946 v chnh thc hot ng vo ngy 23/2/1947, nhm mc ch xy dng cc tiu chun v sn xut, thng mi v thng tin. Mt trong cc chun ISO v truyn thng mng l m hnh lin kt gia cc h thng m (OSI - Open Systems lnterconnection Model). y l m hnh cc h thng khc nhau c th trao i thng tin vi nhau m khng cn quan tm n kin trc bn trong ca chng. Ban u, mi hng t thit k cc giao thc ring nhm to th c quyn cho cc sn phm mng ca mnh. M hnh OSI ra i nhm mc ch cho php hai h thng bt k trao i thng tin vi nhau m khng cn thay i bt c phn cng hoc phn mm no ca mi hng sn xut. M hnh OSI c phn tng vi mc ch thit k cc h thng mng cho php vic truyn thng thc hin c qua tt c cc kiu h thng my tnh khc nhau. Cc tng c thit k ring bit nhng lin quan cht ch vi nhau, mi tng nh ngha mt phn ca qu trnh truyn thng tin trn mng. Nm vng nhng quy tc c bn ca m hnh OSI l tin vng chc thit k v pht trin cc h thng thng tin trn mng. M hnh OSI gm 7 tng sau: - Tng ng dng. (Application layer). - Tng trnh din (Presentation layer) - Tng phin (Session layer) - Tng vn ti (Transport layer) - Tng mng (Network layer) - Tng lin kt d liu (Datalink layer) - Tng vt l (Physical layer)
7. Tng ng dng Giao din 7-6 6. Tng trnh din Giao din 6-5 5. Tng phin Giao din 5-4 4. Tng vn ti 7. Tng ng dng Giao din 7-6 6. Tng trnh din Giao din 6-5 5. Tng phin Giao din 5-4 4. Tng vn ti Bi ging Mng my tnh Ths. Nguyn Xun Anh 15
Hnh 2.5 M hnh phn tng OSI
Hnh 2.5 minh ha mi quan h gia cc tng khi thng tin ca ngi s dng c gi t my tnh PC1 n my tnh PC2. Ngi s dng trn my tnh PC1 gi tin cho ngi s dng ti my tnh PC2, thng tin s ln lt c chuyn t tng ng dng xung tng vt l ca my tnh PC1, sau i qua nhiu nt trung gian khc (gi l thit b mng, nhng nt trung gian ny thng ch lin quan n tng vt l, tng lin kt d liu v tng mng ca m hnh OSI) trc khi n my tnh PC2. Ti my tnh PC2, thng tin s li ln lt c chuyn tip t lp vt l n lp ng dng. Khi xy dng m hnh, cc nh thit k phn tch qu trnh truyn d liu thnh nhng chc nng c bn nht. Nhng chc nng no c mc ch s dng lin quan n nhau c gp thnh tng nhm v gi l tng trong m hnh tham chiu OSI. Nh vy, mi tng c xc nh chc nng v nhim v ring bit. Vi cch thit k nh vy, m hnh tham chiu OSI kh ton din v linh hot, ng thi m bo tnh trong sut gia cc h thng. 2.2.2.1 Cc tin trnh ngang hng Trong mi my, mi tng s dng cc dch v do tng bn di cung cp. V d, tng 3 s dng cc dch v do tng 2 cung cp v n lt mnh li cung cp dch v cho tng 4. Gia cc my tnh, tng x trn mt thit b giao tip vi tng x trn thit b khc. Vic giao tip ny c tin hnh theo cc quy tc v quy c c tha thun trc - gi l giao thc. Ti tng vt l, vic truyn thng l trc tip: My PC1 gi mt lung bit n my tnh PC2. Ti cc tng cao hn trn my PC1, d liu c chuyn gn xung cc tng bn di, n my PC2 v tip tc i ln cc tng cao hn (trong my PC2). Mi tng trong my gi d liu i (my PC1) thm cc thng tin ca tng vo bn tin nhn c t pha trn ri sau chuyn ton b gi d liu xung tng pha di. Cc thng tin c thm vo ny gi l thng tin iu khin, nu thm vo trc gi l tiu chn trc (header), cc thng tin iu Bi ging Mng my tnh Ths. Nguyn Xun Anh 16 khin c thm vo cui gi l thng tin chn sau (Trailer). Thng tin chn trc c thm vo bn tin ti cc tng trnh din, vn ti, phin, mng. Tng lin kt d liu thm c thng tin trc ln sau bn tin.
Hnh 2.6 Thm v tch thng tin iu khin ti cc tng
Ti tng vt l, ton b d liu c chuyn thnh dng ph hp vi mi trng truyn dn nhm bo m thng tin c th n c my nhn. Ti bn nhn, cc tiu c bc tch dn dn khi chuyn d liu t tng thp ln tng cao. V d, tng lin kt d liu loi b cc thng tin iu khin ca n, kt qu sau khi bc tch s l d liu ca tng mng v c chuyn ln tng trn (tng mng). Tng t nh vy tng mng loi b thng tin iu khin s c d liu ca tng vn ti v d liu s li chuyn cho tng trn (tng vn ti), qu trnh tng t c thc hin cho n tng ng dng. 2.2.2.2 Giao din gia cc tng Trn cng mt my tnh, hai tng k nhau trao i d liu vi nhau qua cc giao din, tng trn yu cu dch v ca tng di thng qua giao din gi l im truy cp dch v (SAP- Service Access Point). Ti mi im truy nhp dch v ngi ta qui nh phng php v khun dng d liu trao i gia hai tng k nhau trn cng mt thit b. nh ngha giao din gia cc tng mt cch r rng s cho php thay i nghip v ti mt tng m khng nh hng n cc tng khc. 2.2.2.3 T chc cc tng C th chia by tng c th thnh ba nhm: Nhm h tr mng, nhm h tr ngi s dng, nhm trung gian. Nhm h tr mng bao gm ba tng thp ca m hnh OSI (Tng vt l, lin kt d liu v mng), chng m nhim v cc vn lin quan n mt vt l khi truyn d liu t mt thit b ny n mt thit b khc (v d: nhng c t v in, cc kt ni vt l, nh a ch vt l, nh thi gian truyn). Nhm h tr ngi s dng bao gm ba tng cao nht ca m hnh OSI (Tng phin, trnh din, ng dng), chng cung cp Bi ging Mng my tnh Ths. Nguyn Xun Anh 17 cc tnh nng tng tc gia cc h thng phn mm tch bit. Nhm trung gian gm cc tng nm gia hai nhm trnm c th trong m hnh OSI l tng vn tim n m bo vic chuyn d liu tin cy gia cc thit b u cui. Ni chung, cc tng trn ca m hnh OSI thng c thc hin bi phn mm trong khi nhm cc tng di c c trin khai di s kt hp ca c phn cng v phn mm, tng vt l hu nh c trin khai bi phn cng. Hnh 2.5 m t tng quan cc tng trong m hnh OSI, mi tng u nh ngha n v d liu (PDU - Protocol Data Unit) ca giao thc trong tng . Qu trnh trao i thng tin c bt u ti tng ng dng, sau chuyn xung cc tng di. Ti mi tng, ngoi tr tng ng dng v tng vt l, thng tin iu khin s c thm vo n v d liu. Khi n v d liu chuyn n tng vt l, chng c chuyn thnh tn hiu in t v truyn i trn ng truyn vt l. n trm nhn, tn hiu in t i n tng vt l v c chuyn ngc li thnh chui cc bt. Cc n v d liu sau s c chuyn t tng vt l ln cc tng trn trong m hnh OSI. Khi i qua mi tng, cc thng tin iu khin s b loi b v n tng ng dng s c bn tin ging nh bn tin gc ti tng ng dng ca bn gi. 2.2.3 Chc nng cc tng trong m hnh OSI 2.2.3.1 Tng vt l Tng vt l thc hin cc chc nng cn thit truyn lung bit d liu i qua cc mi trng truyn n, n gii quyt cc vn lin quan n c im k thut v c v in ca gia giao din ca thit b mng vi mi trng truyn dn. thc hin vai tr ny, lp vt l cn phi xc nh cc th tc v cc chc nng m cc thit b vt l v thit b giao tip cn phi tun th. Tng vt l thc hin cc chc nng sau: - m bo giao tip vi mi trng truyn dn: Tng vt l xc nh cc c tnh giao din gia cc thit b mng v mi trng truyn dn. - Biu din d liu di dng bit: d liu tng vt l l lung bit lin tc 0 v l. truyn i, cc bit phi c m ha thnh cc tn hiu in, quang hoc tn s. - Tc truyn dn: Qui nh s lng bit c gi i trong mt n v thi gian v khong thi gian truyn i mt bit. - ng b: My gi v nhn phi c ng b ha mc bit. - Qun l knh truyn: Tng vt l lin quan n vic kt ni cc thit b vo mi trng truyn thng. Trong cu hnh im-im, hai thit b c ni vi nhau qua mt ng truyn dnh ring. Trong cu hnh im- nhiu im, mt ng truyn c nhiu thit b dng chung. - Hnh trng vt l: Hnh trng vt l xc nh cch ni cc thit b vi nhau to thnh mng. C ba hnh trng c bn: dng bus, dng vng v dng sao. - Ch truyn dn: Tng vt l cng xc nh hng truyn d liu gia hai thit b: n cng (simplex), bn song cng (haif-duplex) hay song cng Bi ging Mng my tnh Ths. Nguyn Xun Anh 18 (full-duplex). Trong ch n cng, mt thit b ch c th gi hoc nhn d liu. Ch n cng l truyn thng mt chiu. Trong ch bn song cng, mt thit b c th gi v nhn d liu, nhng khng phi ti cng mt thi im. Trong ch song cng, mt thit b c th nhn v gi d liu ti cng mt thi im. 2.2.3.2 Tng lin kt d liu Tng lin kt d liu m bo truyn tin tin cy gia hai thit b vt l kt ni trc tip vi nhau, d liu ti tng ny gi l khung (Frame). Tng lin kt d liu m nhim cc chc nng sau: - To khung d liu: Tng lin kt d liu chia gi tin nhn c t tng mng thnh cc n v d liu gi l cc khung d liu. - Qun l a ch vt l: Tng lin kt d liu phi xc nh, gi tin cn chuyn c ch l thit b trong mng ni b hay mng khc. Nu gi d liu c chuyn n thit b khc trong mng ni b, n thm a ch vt l ca thit b ch vo khung d liu. Nu gi tin cn chuyn ra ngoi mng ni b, n thm a ch vt l ca cng mc nh. - Kim sot lu lng: Nu tc nhn d liu nh hn tc gi d liu, tng lin kt d liu phi thc hin mt k thut kim sot lu lng ngn nga tnh trng qu ti ti ni nhn. - Kim sot li: Tng lin kt d liu lm tng tnh tin cy cho tng vt l bng cch s dng mt k thut pht hin v truyn li cc khung b li hoc b mt. N cng s dng k thut ngn nga hin tng lp khung. Kim sot li thng c thc hin bng cch thm mt thng tin iu khin vo phn cui ca khung, thng thng ngi ta s dng k thut kim tra vng (CRC Cyclic Redandunce Check). - Kim sot truy cp: Khi nhiu thit b c ni vi cng mt ng truyn, cc giao thc tng lin kt d liu cn xc nh xem thit b no c quyn s dng ng truyn ti mt thi im xc nh. 2.2.3.3 Tng mng Tng mng chu trch nhim chuyn d liu (d liu ca tng mng gi l gi tin packet) gia cc thit b u cui ca ngi s dng. Nu nh tng vn ti m bo lin kt u cui ti mc tin trnh th tng mng ch m bo lin kt mc u cui ca ngi s dng. Theo nh ngha ban u, tng mng gii quyt cc vn dn cc gi tin qua mt mng. Mt s v d v cc giao thc nh vy l X.25, v giao thc Host/IMP ca mng ARPANET. Vi s xut hin ca khi nim lin mng, cc chc nng mi c b sung cho tng ny, l chc nng dn ng cho d liu t mng ngun n mng ch. Nhim v ny thng i hi vic nh tuyn cho gi tin quan mt mng li ca cc mng my tnh, l lin mng. Tng mng m nhim cc chc nng sau: - Qun l a ch logic: a ch vt l ca tng lin kt d liu m bo tnh duy nht trong ton mng, tuy nhin n ch gii quyt c vn nh a ch cc b. Nu gi d liu c chuyn n mt mng khc, cn phi c Bi ging Mng my tnh Ths. Nguyn Xun Anh 19 mt h thng a ch khc nhm phn bit c h thng gi v h thng nhn. Tng mng b sung thm thng tin iu khin vo mi gi d liu gi i, trong cha a ch logic ca thit b nhn v thit b gi. - nh tuyn: Khi cc mng hoc cc nt ring r c ni vi nhau to thnh mt lin mng (mng ca cc mng), cc thit b. Cc thit b kt ni trung gian (thit b nh tuyn - router) phi xc nh tuyn ng cho cc gi d liu chng n c ni nhn cui cng. 2.2.3.4 Tng vn ti Tng vn ti chu trch nhim chuyn ton b bn tin t ni gi n ni nhn mt cch ton vn. Ni cch khc, tng vn ti m bo lin kt gia cc tin trnh trn cc my tnh khc nhau trn mi trng mng. C hai loi lin kt: Lin kt c hng (Connection Oriented) v lin kt v hng (Connectionless). i vi lin kt c hng, tng vn ti to ra mt kt ni logic gia hai cng u cui: tt c d liu ca cng mt bn tin c truyn theo ng kt ni . Kt ni c hng gm ba giai on: thit lp lin kt, truyn d liu, gii phng lin kt. Do phi truyn tt c cc d liu trn mt kt ni, tng vn ti cn phi kim sot th t truyn, lu lng, pht hin v sa li. Tng vn ti m nhim cc chc nng sau: - Thit lp lin kt logic gia cc tin trnh trn thit b u cui ca ngi dng: Mi my tnh thng chy nhiu chng trnh ti cng mt thi im, vic chuyn bn tin khng ch n thun l truyn d liu t mt my tnh ny sang my tnh khc m phi chuyn bn tin t mt tin trnh trn my tnh ny n tin trnh tng ng trn mt my tnh khc. m nhim chc nng ny, mt loi thng tin iu khin c thm vo tng vn ti gi l cng (port), mi cng s tng ng vi mt tin trnh ti tng phin. - Phn on v ti hp: d liu ti tng ng dng thng c dung lng ln, vn chuyn c hiu qu, my tnh phi chia mi bn tin thnh cc on (segment) nh hn v chng c truyn c lp vi nhau. Mi on tin c gn mt s th t, s th t ny gip cho tng vn ti pha nhn ti hp cc on li thnh bn tin hon chnh. - Kim sot kt ni: Ti tng vn ti ngi ta s dng hai k thut truyn s liu: kt ni c hng hoc kt ni v hng. Kt ni c hng ni gi yu cu kt ni n tng vn ti ca my nhn, nu c chp thun th mi chuyn cc on d liu, sau khi truyn xong d liu phi gi tip yu cu hy kt ni. Kt ni v hng khng phi gi yu cu kt ni trc khi truyn d liu (datagram), do kt ni v hng s khng tin cy bng kt ni c hng, tnh tin cy trong truyn d liu v hng do cc tin trnh tng trn m nhim. - Kim sot lu lng: Tng vn ti chu trch nhim kim sot lu lng gia hai my tnh u cui ca ngi s dng. thc hin chc nng ny, phn thng tin iu khin ca on tin phi c thnh phn kim sot lng d liu c php gi i. Bi ging Mng my tnh Ths. Nguyn Xun Anh 20 - Kim sot li: Tng vn ti chu trch nhim kim sot li ti cc thit b u cui ca ngi s dng. Tt c cc on tin gi i phi c m bm n ch chnh xc, nu c li th phi truyn li. 2.2.3.5 Tng phin Tng phin ng vai tr kim sot vin hi thoi gia cc tin trnh trn lp ng dng qua mng, n m bo nhim v thit lp, duy tr v ng b ha tnh tng tc gia cc tin trnh ng cp trn cc my tnh khc nhau. Tng phin m nhim cc chc nng sau: - Kim sot hi thoi: Tng phin cho php hai tin trnh cng tham gia vo mt cuc hi thoi. N cho php truyn thng gia hai tin trnh c thc hin hoc theo kiu bn song cng hoc theo kiu song cng. V d, hi thoi gia mt thit b u cui vi mt my ch c th theo kiu bn song cng. - ng b ha: Tng phin cho php mt tin trnh thm cc mc gi l im ng b (synchronization point) vo lung d liu. V d, nu h thng cn gi i mt tp tin ln gm N trang, c sau M trang nn chn thm cc im ng b m bo rng vic nhn tng cm M trang c thc hin c lp. Trong trng hp ny nu nh c li khi ang truyn i trang th P x M+1, vic truyn li s c bt u t trang P x M+1, khng cn phi truyn li cc trang t 1 n trang P x M. 2.2.3.6 Tng trnh din Tng trnh din thc hin cc nhim v lin quan n c php v ng ngha ca cc thng tin c trao i gia hai h thng. Tng trnh din c nhim v: - M ha/Gii m d liu (Encode/Decode): Cc tin trnh trn hai thit b trao i cc thng tin di nhiu dng khc nhau (xu k t, s, m thanh, hnh nh), cc thng tin ny sau c chuyn sang dng bit truyn i. Do cc h thng my tnh khc nhau s dng cc chn m ha khc nhau, tng trnh din chu trch nhim m bo tnh trong sut i vi ngi s dng trn cc h thng s dng cch m ha khc nhau . Tng trnh din ti pha gi chuyn thng tin theo khun dng ca mnh thnh thng tin theo khun dng chung. Tng trnh din ti my nhn s chuyn thng tin trong khun dng chung thnh thng tin theo khun dng ca my nhn. - Nn/Gii nn: Nn d liu l qu trnh lm lm gim s lng bit cn thit phi chuyn trn ng truyn vt l, t nng cao hiu sut truyn tin. Nn d liu ngy cng tr nn quan trng, c bit trong vic truyn cc d liu a phng tin m thanh, hnh nh. - M ha/Gii m bo mt (Encrypt/Decrypt): H thng phi c kh nng m bo tnh b mt khi chuyn nhng thng tin quan trng. Do vy pha gi s bin i thng tin ban u (bn r) thnh mt dng khc (bn m ha) v gi n n pha nhn - y l tin trnh m ha. Pha nhn thc hin qu trnh ngc li bng cch chuyn bn tin nhn c (bn m ha) thnh nguyn dng ban u (bn r), qu trnh ny c gi l gii m. Bi ging Mng my tnh Ths. Nguyn Xun Anh 21 2.2.3.7 Tng ng dng Tng ng dng cung cp cc tin ch ngi dng truy cp vo mng nh: cc dch v nh gi th in t, truy cp v chuyn file t xa. Tng ng dng cng cung cp cc phng thc cho cc ng dng khc (v d truy nhp c s d liu m hnh khch/ch). Tng ng dng l tng cao nht trong m hnh OSI, do n to ra d liu thc s ch khng c cc thng tin iu khin. Tng ng dng cung cp cc dch v sau: - Thit b u cui o ca mng: mt thit b u cui o ca mng l phin bn phn mm ca mt thit b u cui vt l, cho php ngi ng ng nhp vo mt my t xa. - Qun l, truy cp v chuyn tp tin: ng dng ny cho php ngi dng truy cp tp tin, qun l cc tp trn mt my tnh khc. - Cc dch v khc: Hai dch v ph bin nht l th in t v truy nhp web. Dch v th in t cho php hai hoc nhiu ngi ngi trao i th vi nhau qua mng (gi l th in t). Dch v truy nhp web cho php ngi dng c tin tc trn cc trang thng tin in t. Ni chung cc dch v loi ny rt nhiu v ngy cng a dng. 2.2.4 M hnh TCP/I P M hnh OSI l m hnh tham chiu c ISO xy dng nhm to mt chun phc v vic ni kt cc h thng m. Tuy nhin m hnh ny ch dng li mc l thuyt, trong thc t m hnh TCP/IP ang c s dng rng ri nht hin nay (mng Internet ang s dng m hnh ny), hu ht tt c cc h iu hnh u c ci t b giao thc TCP/IP. B giao thc ny c t tn theo hai giao thc chnh ca n l giao thc iu khin vn ti (TCP - Transmission Control Protocol) v giao thc lin mng (IP - Internet protocol).
Hnh 2.7 Cc tng trong b giao thc TCP/IP V mt lch s, m hnh TCP/IP ra i trc khi c m hnh OSI. Ging nh m hnh OSI, m hnh cng c phn thnh bn tng, mi tng gm b giao thc m nhim cc chc nng ring bit. Tuy s lng tng t hn, nhng m hnh TCP/IP vn phi m nhim y cc chc nng nu trong m Bi ging Mng my tnh Ths. Nguyn Xun Anh 22 hnh OSI. M hnh TCP/IP chia theo 4 tng: truy nhp mng, mng, vn ti v ng dng. 2.2.4.1 Tng truy nhp mng y l tng thp nht ca m hnh TCP/IP, chu trch nhim nhn cc gi tin ca tng trn Internet v vic truyn pht chng trn mt mng xc nh. Theo quan im hin nay m hnh TCP/IP khng cn bao gm cc c t vt l, ni cch khc tng lin kt cng khng cn bao gm vn v phn cng hay vic truyn tn hiu vt l na. Tuy nhin trong cc trng hp trin khai c th, tng truy nhp mng s c chia thnh hai tng con thc hin cc chc nng ca tng lin kt d liu v tng vt l ca m hnh OSI. i vi truy nhp mng qua modem quay s, cc gi IP thng c truyn bng cch s dng giao thc PPP. i vi truy nhp Internet bng thng rng (broadband) nh ADSL hay modem cp, giao thc PPPoE thng c s dng. Mng dy cc b (local wired network) thng s dng Ethernet, cn mng khng dy cc b thng dng chun IEEE 802.11. i vi cc mng din rng (wide-area network), cc giao thc thng c s dng l PPP i vi cc ng T-carrier hoc E-carrier, Frame relay, ATM (Asynchronous Transfer Mode), hoc giao thc packet over SONET/SDH (POS). Tng truy nhp mng kt hp ca cc thnh phn vt l thc s nh cc b lp, cp mng v cc thit b ni khc. 2.2.4.2 Tng Internet Tng Internet tng ng vi tng mng trong m hnh OSI, n m bo lin kt logic gia hai thit b u cui ca ngi s dng. Cc giao thc trong tng ny nhn d liu t tng vn ti cng vi mt a ch ca my ch m gi tin s c gi ti ng gi d liu v thc hin nhim v chn ng chuyn tip gi tin n a ch ch. Trong b giao thc lin mng, giao thc IP thc hin nhim v c bn dn ng d liu t ngun ti ch. Giao thc IP c th chuyn d liu theo yu cu ca nhiu giao thc tng trn khc nhau; mi giao thc trong c nh danh bi mt s hiu giao thc duy nht: giao thc ICMP (Internet Control Message Protocol) l giao thc 1 v giao thc IGMP (Internet Group Management Protocol) l giao thc 2. Mt s giao thc truyn bi giao thc IP, chng hn ICMP (dng gi thng tin chn on v truyn d liu bng IP) v IGMP (dng qun l d liu a truyn (multicast)), c t ln trn IP nhng thc hin cc chc nng ca tng lin mng, iu ny minh ha mt s bt tng thch gia lin mng v chng TCP/IP v m hnh OSI. Tt c cc giao thc nh tuyn, chng hn giao thc BGP (Border Gateway Protocol), giao thc OSPF, v giao thc RIP (Routing information protocol|), u thc s l mt phn ca tng mng, mc d chng c th c v thuc v phn trn ca chng giao thc. 2.2.4.3 Tng vn ti Nhim v trc tin ca tng vn ti l m bo lin kt gia cc tin trnh trn cc thit b u cui ca ngi s dng. Tng vn ti cng c th iu Bi ging Mng my tnh Ths. Nguyn Xun Anh 23 chnh lu lng lung thng tin. N cng cung cp mt s vn chuyn tin cy, m bo rng d liu n m khng b li. lm nh vy, phn mm giao thc h tr bn nhn c th gi li cc thng bo xc nhn v vic thu d liu v bn gi c th truyn li cc on tin b mt hoc b li. Nhim v ca tng vn ti l kt hp cc kh nng truyn bn tin t u cui n u cui m khng ph thuc vo mng bn di, kim sot li (error control), phn mnh d liu v iu khin lu lng. Vic truyn bn tin gia cc tin trnh trn cc thit b u cui ca ngi s dng ti tng vn ti gm hai loi: - Kt ni c hng (connection-oriented), v d giao thc TCP - Kt ni v hng (connectionless), v d giao thc UDP Tng vn ti c th c xem nh mt c ch vn chuyn thng thng, ngha l trch nhim ca mt phng tin vn ti l m bo rng hng ha/hnh khch ca n n ch an ton v y . Tng vn ti cung cp dch v kt ni cc ng dng vi nhau thng qua vic s dng cc cng TCP v UDP. Do IP ch cung cp dch v pht chuyn n lc ti a (best effort delivery), tng vn ti l tng u tin gii quyt vn tin cy. TCP l mt giao thc kt ni c hng, n gii quyt nhiu vn tin cy cung cp mt dng d liu ng tin cy: - D liu n ch ng th t - Sa li d liu mc ti thiu - Loi b d liu trng lp - Gi li cc gi tin b tht lc hoc b li - Kim sot lu lng truyn tin UDP l mt giao thc kt ni v hng. Ging nh giao thc IP, n l mt giao thc n lc ti a phn pht d liu v khng tin cy. Giao thc ny thng c dng cho cc dch v yu khng i hi chnh xc cao. RTP (Real-time Transport Protocol - giao thc vn ti thi gian thc) l mt giao thc c thit k cho d liu thi gian thc, l giao thc tng phin s dng nh dng gi tin UDP. Tuy nhin, n vn c xp vo giao thc thuc tng vn ti. 2.2.4.4 Tng ng dng y l tng cao nht trong cu trc phn lp ca TCP/IP, n bao gm ba tng trn ca m hnh OSI. Tng ny bao gm tt c cc chung trnh ng dng s dng cc dch v sn c thng qua mt chng giao thc TCP/IP. Cc chng trnh ng dng tng tc vi mt trong cc giao thc ca tng vn ti truyn hoc nhn d liu. Mi chng trnh ng dng la chn mt kiu giao thc thch hp cho cng vic ca n. Tng ng dng l ni cc chng trnh mng thng dng nht lm vic nhm lin lc gia cc nt trong mt mng. Giao tip xy ra trong tng ny l ty theo cc ng dng c th v d liu c truyn t chng trnh, trong nh Bi ging Mng my tnh Ths. Nguyn Xun Anh 24 dng c s dng ni b bi ng dng ny, v c ng gi theo mt giao thc tng vn ti. Trong m hnh TCP/IP, khng c tng no nm gia ng dng v cc tng vn ti, tng ng dng trong b TCP/IP phi bao gm cc giao thc hot ng nh cc giao thc ti tng trnh din v tng phin ca m hnh OSI. Vic ny thng c thc hin qua cc th vin lp trnh. D liu thc gi qua mng c truyn cho tng ng dng, ni n c ng gi theo giao thc tng ng dng. T , d liu c truyn xung giao thc tng thp ti tng vn ti. Hai giao thc tng thp thng dng nht l TCP v UDP. Mi ng dng s dng dch v ca mt trong hai giao thc trn u cn c cng. Hu ht cc ng dng ph bin u c cc cng ring bit (HTTP - Giao thc truyn siu vn bn dng cng 80; FTP - Giao thc truyn tp dng cng 21, v.v..) 2.2.5 So snh m hnh OSI v m hnh TCP/I P B giao thc trong m hnh TCP/IP c s dng trc khi m hnh OSI c cng b. Trong khi m hnh TCP/IP c trin khai thc t trong cc h thng mng, vic s dng m hnh thng din t chc nng v hot ng ca mng. Hai m hnh ny c lin quan vi nhau, nhng khng phi l hon ton ging nhau. im khc bit u tin d thy nht l s lng ca cc tng cp. M hnh ca B Quc Phng M (DoD model) vi b giao thc IP ch c bn hoc nm tng (tng lin kt c th c coi nh l mt tng ring bit, song cng c th c phn tch ra thnh hai tng, tng vt l v tng lin kt d liu) trong khi m hnh OSI li dng by tng. So snh tn ca chng mt cch cht ch cho chng ta thy rng, hai tng tng trnh din v tng phin gp li vo tng ng dng. Cc tng ca m hnh OSI khng c nhiu chc nng phn nh hot ng ca m hnh TCP/IP. Chng hn, cn phi c mt tng nm gia tng mng v tng vn ti ch ra ni tn ti ca giao thc ICMP (Internet Control Message Protocol) v IGMP (Internet Group Management Protocol). Tng t nh vy cng cn phi c mt tng gia tng mng v tng lin kt d liu dnh cho giao thc ARP (Address Resolution Protocol) v giao thc RARP (Reverse Address Resolution Protocol). Bng sau tm tt mt s giao thc v v tr ca chng trong m hnh OSI. thun tin, cc phn tip theo s trnh by cc giao thc theo m hnh TCP/IP (v y l m hnh ang c p dng trn mng Internet), i khi cng s dng m hnh OSI gii thch nguyn l lm vic ca cc thit b trn mng. Tng M hnh OSI M hnh TCP/IP Giao thc 7 Tng ng dng Tng ng dng HTTP, SMTP, SNMP, FTP, Telnet, ECHO, SIP, SSH, NFS, RTSP, XMPP, Whois, ENRP 6 Tng trnh din XDR, ASN.1, SMB, AFP, NCP Bi ging Mng my tnh Ths. Nguyn Xun Anh 25 5 Tng phin ASAP, TLS, SSH, ISO 8327 / CCITT X.225, RPC, NetBIOS, ASP 4 Tng vn ti Tng vn ti TCP, UDP, RTP, SCTP, SPX, ATP, IL 3 Tng mng Tng Internet IP, ICMP, IGMP, IPX, BGP, OSPF, RIP, IGRP, EIGRP, ARP, RARP, X.25 2 Tng lin kt d liu Tng truy nhp mng Ethernet 802.2, Token ring, HDLC, Frame relay, ISDN, ATM, 802.11 WiFi, FDDI, PPP 1 Tng vt l Ethernet 802.3 (10BASE-T, 100BASE-T, 1000BASE-T), SONET/SDH, T-carrier/E- carrier, 802.11 2.3 Tn min v a ch Mi con ngi c th c xc nh theo nhiu cch nh: nhn bit qua tn trong giy khai sinh, s chng minh th, s h chiu. D c nhiu cch nhn bit phn bit mi ngi nhng phng thc nhn bit no ph thuc vo hon cnh. V d cng an s dng s chng minh th nhn dn ch khng s dng tn. Bnh thng mi ngi thch nh tn nhau hn l chng minh th. Ging nh con ngi, my tnh trn mng cng c th c xc nh bng nhiu cch: Tn my tnh hoc tn min. Nhng tn tng i d nh i vi con ngi, nhng cung cp t thng tin v v tr trn mng (tn min www.ptit.edu.vn ch cho chng ta bit my tnh thuc Vit Nam). Hn na tn my tnh bao gm nhiu k t - c ch ci v ch s - c di thay i nn thit b nh tuyn kh c th x l c. V vy, my tnh c xc nh thng qua a ch logic gi l a ch IP. a ch IP gm c 32 bit (phin bn 4) hoc 128 bit (phin bn 6) v c cu trc phn cp, n gin chng ta s ch ni n a ch IP phin bn 4. a ch IP phn cp v khi duyt a ch t tri qua phi, chng ta nhn c thm nhiu thng tin xc inh v v tr ca my tnh trn mng (V tr trong mng ca cc mng, trong mt mng . . . ). iu ny tng t khi xt a ch bu in t di ln, chng ta nhn c nhiu thng tin v a ch . 2.3.1 Cc dch v tn min C hai cch xc nh mt my tnh: da vo tn my tnh hoc a ch IP. Con ngi thch s dng tn my d nh, trong khi thit b nh tuyn li s dng a ch IP c cu trc phn cp v di c nh. dung ho gia hai cch cn phi c mt dch v ch dn chuyn i tn my tnh sang a ch IP v y chnh l nhim v ca h thng tn min trn mng Intemet (DNS). DNS l mt c s d liu phn tn c t trn mt h thng phn cp cc my ch tn min v cung cp dch v thuc tng ng dng cho php my tnh v my ch tn trao i thng tin phc v mc ch xc nh a ch IP. Giao thc trao i tn min DNS thuc tng ng dung v chy trn nn giao thc UDP vi s hiu cng l 53. Bi ging Mng my tnh Ths. Nguyn Xun Anh 26 Thng thng DNS c cc giao thc tng ng dng khc nh HTTP, SMTP v FTP s dng xc nh a ch IP t tn my tnh do ngi dng a vo. iu g xy ra khi ngi s dng mun truy nhp vo trang www.ptit.edu.vn? gi c bn tin HTTP yu cu ti my ch web th my tnh ca ngi s dng phi xc nh c a ch IP ca www.ptit.edu.vn. iu ny c thc hin nh sau: my tnh ca ngi s dng chy ng dng DNS. Trnh duyt s ly ra tn my tnh (www.ptit.edu.vn) t a ch URL trn trnh duyt v chuyn n cho tin trnh DNS trn my trm. Tin trnh DNS my trm gi mt yu cu cha tn min www.ptit.edu.vn ti my ch DNS c ng k trong cu hnh a ch. Nhn c yu cu ny, my ch DNS s tm kim trong c sor d liu ca mnh, nu khng tm thy s gi chuyn tip yu cu n my ch tn min cp cao hn. Kt qu l tin trnh DNS my trm s nhn c mt bn tin tr li t my ch DNS cha a chi IP cn xc nh. Sau trnh duyt s m mt kt ni TCP ti tin trnh HTTP my ch trn my tnh c a ch IP va c xc nh. R rng cc ng dng Internet s dng DNS hot ng chm i. Tuy nhin, a ch IP c xc nh thng c ghi tm trong mt my ch DNS trong mt thi gian nht nh v nh vy lm gim ti cho h thng DNS cng nh tr ca ng dng. Bn cnh dch v xc nh a ch IP t tn my, DNS cung cp mt s dch v quan trng sau: 2.3.1.1 Dch v t b danh cho my tnh My tinh c th c mt hoc nhiu b danh, v d tn my ch trang web Server1.www.ptit.edu.vn c th c hai b anh l www.ptit.edu.vn v ptit.edu.vn. Tn b danh thng d nh hn tn tht. Mt ng dng c th yu cu DNS xc nh tn tht cng nh a ch IP ca mt tn b danh. 2.3.1.2 Dch v t b danh cho my ch a ch ca th in t cn d nh. V d nu trn my ch ca hc vin Cng ngh bu chnh vin thng (trang thng tin in t l www.ptit.edu.vn) th a ch hp th in t ca cc thnh vin s l XXX@ptit.edu.vn. ng dng c th s dng DNS xc nh tn y ca mt b danh cng nh a ch IP ca my tnh . Trn thc t, DNS cho php t tn min cho cc dch v ca mt my ch, v d Hc vin Cng ngh Bu chnh vin thng c tn min l ptit.edu.vn th cc dch v c bn nh trang web c tn min l www.ptit.edu.vn, th in t l mail.ptit.edu.vn 2.3.1.3 Phn tn ti DNS thc hin vic phn tn ti cho cc my ch, c bit l cc my ch web nhn bn (cc my ch c ni dung ging ht nhau). Nhng trang c nhiu ngi truy cp nh yahoo.com c t trn nhiu my ch ging ht nhau. Mi my ch l mt h thng u cui khc nhau, c a ch IP khc nhau. i vi cc my ch ging ht nhau nh vy, mt nhm a ch IP s gn vi tn y ca mt my no . C s d liu DNS cha ton b nhm a ch IP . Khi my khch gi truy vn DNS xc nh a ch IP th my ch s gi ton b nhm a ch IP nhng my ch thay i th t cc a ch IP trong nhm. Thng thng my khch gi bn tin HTTP ti my tnh c a ch Bi ging Mng my tnh Ths. Nguyn Xun Anh 27 IP c lit k u tin trong nhm. s hon chuyn v tr cc a ch IP m DNS thc hin phn ti cho cc my ch. Vic hon v ca DNS cng c dng cho email khi nhiu my ch th in t c chung b danh. DNS c c t trong RFC 1034 v RFC 1035 v cp nht trong mt s RFC khc. DNS l h thng phc tp v chng ta ch nghin cu mt vi kha cnh ca n. Chi tit v DNS c th c trong [Abitz 1993]. Ging nh cc giao thc HTTP, FPT hay SMTP, giao thc DNS nm tng ng dng v n hot ng gia hai thc th truyn thng u cui s dng m hnh khch/ ch, s dng mt giao thc tng vn ti trao i bn tin DNS gia hai u cui. Tuy nhin vai tr ca DNS khc cc ng dng Web, FTP hay Email nhiu. DNS khng phi ng dng c ngi dng trc tip s dng m DNS ch cung cp mt dch v Internet thit yu cho cc ng dng: chuyn i tn my tnh sang a ch IP. 2.3.2 C ch hot ng ca dch v tn min My trm gi bn tin truy vn tn min n my ch DNS c ng k trong phn cu hnh a ch IP, trong bn tin cha tn min cn xc nh a ch IP. Sau mt khong thi gian no t vi phn nghn giy n vi chc giy, my trm nhn c bn tin tr li ca DNS cha a ch IP cn xc nh. V vy, vi my khch th DNS l mt dch v xc nh IP n gin v d hiu. Nhng trin khai dch v thc s rt phc tp, bao gm nhiu my ch tn min t khp ni trn th gii v mt giao thc tng ng dng xc nh cch thc trao i thng tin gia cc my ch tn min. trin khai DNS, ngi ta c th a ra mt kin trc n gin sau: c mt my ch cha tt c cc nh x tn v a ch IP. Theo thit k tp trung ny, my khch ch cn gi tt c cc truy vn ti my ch duy nht v my ch ny s trc tip tr li mi truy vn. Mc d tnh n gin ca thit k ny rt hp dn nhng n hon ton khng thch hp cho mng Intemet vi s lng ln v ngy cng tng cc my tnh. Thit k tp trung nh vy ny sinh mt s vn sau: - im hng duy nht: nu my ch tn min duy nht ngng lm vic cng c ngha l ton b mng Internet ngng hot ng. - Khi lng x l ln: mt my ch tn min duy nht phi x l tt c cc truy vn DNS (cho tt c cc bn tin yu cu t hng t my tnh trn ton cu). - C s d liu tp trung xa: my ch tn min duy nht khng th gn tt c cc my khch. Nu my ch tn min t Hoa K th tt c truy vn t cc nc khc phi chuyn ti pha bn kia tri t v c th qua mt ng kt ni chm v tc nghn. Hu qu l cc ng dng phi chu tr rt ln. - Bo tr: my ch tn min phi ghi nh thng tin v tt c cc tn min trn mng Intemet. Khi c s d liu s rt ln v my ch tn min phi cp nht thng xuyn thng tin cho mi tn min mi, ng thi phi gii quyt Bi ging Mng my tnh Ths. Nguyn Xun Anh 28 cc vn kim chng v xc nhn khi ngi dng s dng c s d liu tp trung. Nh vy, mt c s d liu tp trung trn mt my ch tn min duy nht khng ph hp khi quy m h thng ln. Do , h thng my ch tm min c thit k phn tn, l mt v d in hnh v trin khai c s d liu phn tn trn mng Internet. gii quyt vn quy m mng , DNS s dng nhiu my ch tn min t chc phn cp v phn tn trn ton cu. Khng c my ch tn min no cha tt c tn v a ch IP cc tn min trn mng Internet, nhng thng tin ny c phn tn trn nhiu my ch tn min. C ba loi my ch tn min: my ch tn min cc b, my ch tn min gc v my ch tn min y quyn. Cc my ch tn min trao i thng tin vi nhau v vi cc my tnh khc. My ch tn min cc b: Mi nh cung cp dch v Internet (ISP) u c my ch tn min cc b (cn c gi l my ch tn min mc nh). Khi my tnh trong c quan to ra mt bn tin truy vn DNS th u tin bn tin c gi ti my ch tn min . a ch IP ca my ch tn min cc b phi c cu hnh trong my tnh ca ngi s dng (trong my tnh chy h iu hnh windows, g lnh ipconfig /all). Loi my ch tn min thng gn vi my trm, trong trng hp ti c quan ca mt t chc, n c th trn cng mng ni b. Vi cc ISP th khong cch gia my ch tn min v cc my tnh ca ngi s dng ch l vi thit b nh tuyn. Nu my tnh yu cu xc nh a ch ca mt my tnh khc trong cng mt ISP th my ch tn min cc b c th ngay lp tc xc nh c a chi IP m khng phi lin h vi bt k my ch tn min no khc. My ch tn min gc: Trn mng Intemet c 13 my ch tn min gc, hu ht t ti Bc M. Khi my ch tn min cc b khng c thng tin v tn min c yu cu th my ch tn min cc b s ng vai tr my khch DNS v gi cu hi truy vn ti mt trong s cc my ch tn min gc. Nu my ch tn min gc c thng tin ca tn min c hi, n s gi mt bn tin tr li n my ch tn min cc b v sau thng tin ny c my ch tn min cc b gi tr li cho my trm yu cu. Nu my ch tn min gc khng c thng tin tn min , n s tm kim thng tin v my ch tn min qun l tn min yu cu. My ch tn min y quyn: Mi my tnh phi ng k ti mt my ch tn min y quyn. Thng thng my ch tn min y quyn mt my tnh l mt my ch tn min trong min ISP ca my tnh (thc t mi my tnh phi c t nht hai my ch tn min y quyn phng trng hp mt my ch tn min b hng). C th nh ngha, my ch tn min y quyn ca mt my tnh l my ch tn min lun lu tr bn ghi DNS cho php xc nh a ch IP ca my tnh t tn. Khi my ch tn min y quyn nhn c truy vn t my ch tn min gc, Bi ging Mng my tnh Ths. Nguyn Xun Anh 29 n s gi mt bn tin DNS tr li cha nh x c yu cu. Sau , my ch tn min gc gi nh x ti my ch v my ch tn min cc b li tip tc gi nh x ti my tnh yu cu. Nhiu my ch tn min va l my ch tn min cc b va l my ch tn min y quyn. Xt v d n gin sau. Gi s trm mun c a ch IP ca my tnh tn min l www.yahoo.com, gi s my ch gc ca min l opendns.com v my ch tn min y quyn ca www.yahoo.com l dns.yahoo.com. u tin my trm gi mt bn tin truy vn ti my ch tn min cc b dns.vnn.vn. Bn tin cha tn min www.yahoo.com cn xc nh a ch IP. My ch tn min cc b khng cha bn ghi tn min www.yahoo.com, do n gi bn tin ti my ch tn min gc, nhng n phn tch phn ui ca tn min l .com do n gi ti my ch tn min gc chuyn qun l cc tn min c phn ui l .com, trong trng hp ny n gi n my ch opendns.com. My ch tn min opendns.com khng cha bn ghi v tn min www.yahoo.com nhng li cha a ch IP ca my ch tn min y quyn dns.yahoo.com ca tn min www.yahoo.com, v vy n tr v a ch IP ca my ch dns.yahoo.com cho my ch tn min cc b dns.vnn.vn. Nhn c a ch IP ny, my ch tn min dns.vnn.vn gi tip bn tin n my ch dns.yahoo.com yu cu cung cp a ch IP ca tn min www.yahoo.com, ti y my ch tn min dns.yahoo.com c cha a ch IP ca my ch www.yahoo.com, n gi kt qu cho my ch tn min cc b dns.vnn.vn, my ch tn min dns.vnn.vn s chuyn tip cho my trm v ng thi lu a ch ny trong c s d liu tm ca n. Mt c tnh quan trng ca DNS l lu tr tm thi cc bn ghi DNS (DNS caching). Trn thc t, DNS lu tr tm thi lm gim tr cng nh lm gim s bn tin DNS trao i trn mng. tng ny rt n gin: Khi nhn c nh x DNS ca my tnh no , bn cnh vic gi tip bn tin, my ch tn min s lu nh x ny vo b nh cc b ( a cng hay RAM). Vi nh x tn my - a ch IP c lu tr, nu c mt truy vn khc yu cu a ch IP ca cng tn my m my ch tn min va lu tr, my ch tn min s xc nh c a ch p mong mun, ngay c khi n khng phi l my ch tn min y quyn cho my tnh . trnh b lc hu, thng tin lu tr tm thi s b xo b sau mt khong thi gian nht nh (thng l 48 gi). 2.3.3 Bn ghi dch v tn min My ch tn min cng trin khai c s d liu phn tn, ghi li cc bn ghi ti nguyn cho cc nh x tn my mt a ch IP. Mi bn tin tr li DNS cha mt hay nhiu bn ghi ti nguyn, chi tit trong RFC 1034, RFC 1035. Bn ghi ti nguyn gm 4 trng sau: (Name, Value, Type, TTL). TTL l thi gian tn ti ca bn ghi ti nguyn, dng xc nh thi im c th xo bn ghi ti nguyn khi b nh lu tr. ngha ca trng Name v Value ph thuc vo trng Type: Nu Type = A th Name l tn my v Value l a ch IP ca my . Bn ghi kiu A l nh x Tn my - a ch IP chun. Bi ging Mng my tnh Ths. Nguyn Xun Anh 30 Nu Type = NS th Name l mt min v Value l tn my ca my ch tn min y quyn ca cc my tnh trong min . Bn ghi ny thng c s dng gi tip cc truy vn DNS. Nu Type = CNAME th Value l tn y ca my c tn b danh t trong Name. Bn ghi kiu ny cho php xc nh tn y ca mt my tnh t tn b danh. Nu Type : MX th Value l tn my ca my ch th in t c tn b danh t trong Name.
Hnh 2.8 Khun dng bn tin DNS
Nu mt my ch tn min l my ch tn min y quyn cho mt my tnh no th my ch tn min s cha bn ghi kiu A ca my tnh (ngay c nu my ch tn min khng l my ch tn min y quyn th c th n cha bn ghi kiu A trong b nh tm ca n). Nu my ch tn min khng l my ch tn min y quyn ca my tnh c hi th n s cha mt bn ghi kiu NS cho min ca my tnh ny v n cng c mt bn ghi kiu A xc nh a ch IP ca my ch tn min ca tn min ny t trong trng Value ca bn ghi NS. C hai loi bn tin DNS: bn tin yu cu v bn tin tr li, c hai kiu bn tin ny c chung khun dng minh ha trn hnh 2.8. Mi hai byte u tin l phn tiu gm mt s trng sau: Trng u tin l mt nh danh 16 bit cho mi bn tin yu cu, 16 bt nh danh ny c ghi li vo bn tin tr li, cho php my khch xc nh c l cu tr li cho bn tin yu cu no. C nhiu c trong trng Flag (mi c ng vi mt bit), c truy vn (query/reply flag) xc nh bn tin l yu cu (0) hay l tr li (1). C authoritiative c t trong bn tin tr li khi my ch tn min l my ch tn min y quyn ca tn my tnh cn xc nh a ch IP, c mong mun quy truy vn (recursive-desired query) c t khi my khch (my trm hay my ch tn min) mong mun my ch tn min thc hin truy vn quy Bi ging Mng my tnh Ths. Nguyn Xun Anh 31 khi n khng c bn ghi , c chp nhn quy (recursion-available flag) c t trong bn tin tr li nu my ch tn min h tr quy. Trong phn tiu cng c 4 trng s lng, cc trng ny xc nh s lng cc bn ghi trong 4 phn d liu sau phn tiu . Phn cu hi (Question session) cha thng tin v cu hi c to ra. N bao gm trng tn cha tn ang c hi v trng kiu xc nh kiu cu hi cho tn my tnh (Kiu A cho tn my tnh, kiu MX cho my ch th in t). Trong bn tin tr li t my ch tn min, phn tr li (answer section) cha cc bn ghi ti nguyn cho tn c yu cu trc . Mi bn ghi ti nguyn c 4 trng: Type (A, NS, CNAME, MX), Name, Value, TTL. Bn tin tr li c th c nhiu bn ghi ti nguyn v tn my tnh c th ng vi nhiu a ch IP. Phn y quyn (authonty section) cha cc bn ghi ca cc my ch y quyn. Phn ph tr (additional section) cha cc bn ghi khc. V d trng tr li trong bn tin tr li mt truy vn MX s cha tn y ca my ch th in t c tn b danh t trong Name. Phn ph tr c th c mt bn ghi kiu A cung cp a ch IP cho chnh my ch th in t . Cc phn trn m t cch thc ly d liu trong c s d liu DNS. vy lm th no a c d liu vo c s d liu? Cho ti gn y, ni dung ca my ch DNS c cu hnh tnh, v d, thng qua file cu hnh c ngi qun tr h thng to ra gn y, la chn UPDATE c a vo giao thc DNS cho php d liu c t ng thm vo hay xo b khi c s d liu thng qua bn tin DNS. RFC 2136 c t qu trnh cp nht ng ca DNS. 2.4 Nguyn tc thit k Internet Mng Internet thc cht l mng ca cc mng c kt ni trn ton cu, do vic thit k mng Internet phi da trn m hnh phn cp. Nh vy chng ta c th phn bit hai loi thit k: thit k cho mng din rng v thit k cho mng ni b. D l loi no th vic thit k u phi tun th cc bc sau: Xc nh yu cu: Trc khi thit k cn phi xc nh cc yu cu i vi mng bao gm: - Yu cu k thut. - Yu cu v hiu nng. - Yu cu v ng dng. - Yu cu v qun l mng. - Yu cu v an ninh v an ton mng. - Yu cu rng buc v ti chnh, thi gian thc hin, yu cu v chnh tr ca d n, xc nh ngun nhn lc, xc nh cc ti nguyn c v c th ti s dng. Mc ch ca giai on ny l nhm xc nh mong mun ca khch hng trn mng m chng ta sp xy dng. Nhng cu hi cn c tr li trong giai on ny l: Xy dng mng lm g? S dng cho mc ch g? Bi ging Mng my tnh Ths. Nguyn Xun Anh 32 Cc my tnh no s c ni mng? Nhng ngi no s c s dng mng, mc khai thc s dng mng ca tng ngi / nhm ngi ra sao? Trong tng lai gn (3 n 5 nm ti) c ni thm my tnh vo mng khng, nu c th ni u, s lng bao nhiu? Phng php thc hin ca giai on ny l phng vn khch hng, nhn vin cc phng mng c my tnh s ni mng. Thng thng cc i tng m phng vn khng c chuyn mn su hoc khng c chuyn mn v mng, cho nn hn ch s dng nhng thut ng chuyn mn trao i vi h. Chng hn nn hi khch hng Bn c mun ngi trong c quan bn gi mail c cho nhau khng?, hn l hi Bn c mun ci t Mail server cho mng khng? . Nhng cu tr li ca khch hng thng khng c cu trc, rt ln xn, n xut pht t gc nhn ca ngi s dng, khng phi l gc nhn ca k s mng. Ngi thc hin phng vn phi c k nng v kinh nghim trong lnh vc ny, phi bit cch t cu hi v tng hp thng tin. Mt cng vic cng ht sc quan trng trong giai on ny l Quan st a hnh xc nh nhng ni mng s i qua, khong cch xa nht gia hai my tnh trong mng, d kin ng i ca dy mng, quan st hin trng cng trnh kin trc ni mng s i qua. a hnh ng vai tr quan trng trong vic chn cng ngh v nh hng ln n chi ph xy dng v vn hnh mng. Ch n rng buc v mt thm m cho cc cng trnh kin trc khi chng ta trin khai ng dy mng bn trong n. Gii php ni kt mng cho 2 ta nh tch ri nhau bng mt khong khng phi c bit lu . Sau khi kho st a hnh, cn v li a hnh hoc yu cu khch hng cung cp cho chng ta s thit k ca cng trnh kin trc m mng i qua. Trong qu trnh phng vn v kho st a hnh, ng thi ta cng cn tm hiu yu cu trao i thng tin gia cc phng ban, b phn trong c quan khch hng, mc thng xuyn v lng thng tin trao i. iu ny gip ch ta trong vic chn bng thng cn thit cho cc nhnh mng sau ny. Phn tch yu cu: Khi c c yu cu ca khch hng, bc k tip cn phi phn tch yu cu xy dng bng c t yu cu h thng mng, trong xc nh r nhng vn sau: - Nhng dch v mng no cn phi c trn mng ? (Dch v chia s tp tin, chia s my in, Dch v web, Dch v th in t, Truy cp Internet hay khng?, ...) - M hnh mng l g? (Workgoup hay Client / Server? ...) - Mc yu cu an ton mng. - Rng buc v bng thng ti thiu trn mng. - Xc nh s lng nt mng quyt nh phng thc phn cp, chn k thut thit b chuyn mch. - Da vo c cu t chc phn on vt l m bo hai yu cu an ninh v m bo cht lng dch v. Bi ging Mng my tnh Ths. Nguyn Xun Anh 33 - Da vo m hnh vt l la chn mi trng truyn dn. - D bo cc yu cu m rng. Thit k gii php: Ngi thit k cn phi a ra hnh trng mng, bao gm hnh trng vt l v hnh trng logic, cc cnng ngh cn s dng. Bc k tip trong tin trnh xy dng mng l thit k gii php tha mn nhng yu cu t ra trong bng c t yu cu h thng mng. Vic chn la gii php cho mt h thng mng ph thuc vo nhiu yu t, c th lit k nh sau: Kinh ph dnh cho h thng mng. Cng ngh ph bin trn th trng. Thi quen v cng ngh ca khch hng. Yu cu v tnh n nh v bng thng ca h thng mng. Rng buc v php l. Ty thuc vo mi khch hng c th m th t u tin, s chi phi ca cc yu t s khc nhau dn n gii php thit k s khc nhau. Tuy nhin cc cng vic m giai on thit k phi lm th ging nhau, chng c m t nh sau: Thit k s mng mc m hnh lin quan n vic chn la m hnh mng, giao thc mng v thit t cc cu hnh cho cc thnh phn nhn dng mng. M hnh mng c chn phi h tr c tt c cc dch v c m t trong bng c t yu cu h thng mng. M hnh mng c th chn l Workgroup hay Domain (Client/Server) i km vi giao thc TCP/IP, NETBEUI hay IPX/SPX. V d: Mt h thng mng ch cn c dch v chia s my in v th mc gia nhng ngi dng trong mng cc b v khng t nng vn an ton mng th ta c th chn M hnh Workgroup. Mt h thng mng ch cn c dch v chia s my in v th mc gia nhng ngi dng trong mng cc b nhng c yu cu qun l ngi dng trn mng th phi chn M hnh Domain. Nu hai mng trn cn c dch v mail hoc kch thc mng c m rng, s lng my tnh trong mng ln th cn lu thm v giao thc s dng cho mng phi l TCP/IP. Mi m hnh mng c yu cu thit t cu hnh ring. Nhng vn chung nht khi thit t cu hnh cho m hnh mng l: nh v cc thnh phn nhn dng mng, bao gm vic t tn cho Domain, Workgroup, my tnh, nh a ch IP cho cc my, nh cng cho tng dch v. Phn chia mng con, thc hin tm ng i cho thng tin trn mng. Cn phi xy dng chin lc khai thc v qun l ti nguyn mng ,chin lc ny nhm xc nh ai c quyn lm g trn h thng mng. Thng thng, ngi dng trong mng c nhm li thnh tng nhm v vic phn quyn c thc hin trn cc nhm ngi dng. Bi ging Mng my tnh Ths. Nguyn Xun Anh 34 Cn c vo s thit k mng mc m hnh, kt hp vi kt qu kho st a hnh bc k tip ta tin hnh thit k mng mc vt l. S mng mc vt l m t chi tit v v tr i dy mng a hnh, v tr ca cc thit b ni kt mng nh Hub, Switch, Router, v tr cc my ch v cc my trm. T a ra c mt bng d tr cc thit b mng cn mua. Trong mi thit b cn nu r: Tn thit b, thng s k thut, n v tnh, n gi, La chn phn cng, phn mm: Da trn cc phn tch yu cu v kinh ph d kin cho vic trin khai la chn thit b ca cc nh cung cp thit b mng, phn mm h iu hnh v cc phn mm ng dng. Mt m hnh mng c th c ci t di nhiu h iu hnh khc nhau. Chng hn vi m hnh Domain, ta c nhiu la chn nh: Windows NT, Windows 2003, Netware, Unix, Linux,... Tng t, cc giao thc thng dng nh TCP/IP, NETBEUI, IPX/SPX cng c h tr trong hu ht cc h iu hnh. Chnh v th ta c mt phm vi chn la rt ln. Quyt nh chn la h iu hnh mng thng thng da vo cc yu t nh: Gi thnh phn mm ca gii php. S quen thuc ca khch hng i vi phn mm. S quen thuc ca ngi xy dng mng i vi phn mm. H iu hnh l nn tng cho cc phn mm sau vn hnh trn n. Gi thnh phn mm ca gii php khng phi ch c gi thnh ca h iu hnh c chn m n cn bao gm c gi thnh ca cc phm mm ng dng chy trn n. Hin nay c 2 xu hng chn la h iu hnh mng: cc h iu hnh mng ca Microsoft Windows hoc cc phin bn ca Unix, Linux. Sau khi chn h iu hnh mng, bc k tip l tin hnh chn cc phn mm ng dng cho tng dch v. Cc phn mm ny phi tng thch vi h iu hnh chn. Tnh ton gi thnh: Tnh ton gi thnh m bo cc ch tiu k thut, cc yu cu ca ng dng, tnh kh m ca h thng. Vic tnh ton gi thnh cn phi xem xt ti yu t u t ban u v chi ph phi tr trong qu trnh vn hnh h thng. Trin khai mu th nghim: Trin khai quy m nh nhng vn minh ha c ton b cc yu cu v k thut, yu cu v ng dng lm c s cho vic nh gi kh nng v gi thnh ca mng trc khi trin khai trn din rng. Khi bn thit k c thm nh, bc k tip l tin hnh lp t phn cng v ci t phn mm mng theo thit k. Ci t phn cng lin quan n vic i dy mng v lp t cc thit b ni kt mng (Hub, Switch, Router) vo ng v tr nh trong thit k mng mc vt l m t. Tin trnh ci t phn mm bao gm: Ci t h iu hnh mng cho cc my ch, cc my trm Ci t v cu hnh cc dch v mng. Bi ging Mng my tnh Ths. Nguyn Xun Anh 35 To ngi dng, phn quyn s dng mng cho ngi dng. Tin trnh ci t v cu hnh phn mm phi tun th theo s thit k mng mc m hnh m t. Vic phn quyn cho ngi dng pheo theo ng chin lc khai thc v qun l ti nguyn mng. Nu trong mng c s dng router hay phn nhnh mng con th cn thit phi thc hin bc xy dng bng nh tuyn trn cc router v trn cc my tnh. Kim th v nh gi: Sau khi ci t xong phn cng v cc my tnh c ni vo mng, bc k tip l kim tra s vn hnh ca mng. Trc tin, kim tra s ni kt gia cc my tnh vi nhau. Sau , kim tra hot ng ca cc dch v, kh nng truy cp ca ngi dng vo cc dch v v mc an ton ca h thng. Ni dung kim th da vo bng c t yu cu mng c xc nh lc u. i chiu vi cc yu cu xc nh ban u, nu khng p ng th phi lp li cc bc trn tm ra gii php ti u nht c th. nh gi bn thit k mng cn phi da trn cc tiu ch sau: - p ng yu cu ngi s dng - Gi thnh thp - D ci t - D m rng - D c lp trong trng hp xy ra li. i vi thit k cho mng din rng (thng l nhim v ca cc nh cung cp dch v Internet), ngi ta chia thnh ba lp sau:
Lp li: Lp li l trc xng sng ca mng thng dng cc b chuyn mch c tc cao, n yu cu tin cy cao, c cng sut d tha, c kh nng t chu li, c kh nng thch nghi cao, p ng nhanh, d qun l, c kh nng lc gi, hay lc cc tin trnh ang truyn trong mng. Lp phn phi: Lp phn phi l gianh gii gia lp truy nhp v lp li ca mng. lp phn tn thc hin cc chc nng m bo gi d liu n tng phn on mng, m bo an ninh-an ton, phn on mng theo nhm cng tc, chia min, nh tuyn gia cc mng, chuyn mi trng truyn dn, nh tuyn gia cc min, to bin gii gia cc min trong nh tuyn tnh v ng, thc hin cc b lc gi tin, thc hin cc c ch m bo cht lng dch v. Lp truy nhp: Lp truy nhp cung cp cc kh nng truy nhp cho ngi dng cc b hay t xa truy nhp vo mng, thng c thc hin bng cc b chuyn mch trong mt khu vc nh. Bi ging Mng my tnh Ths. Nguyn Xun Anh 36 2.5 Cc yu t to nn hiu nng mng Hiu nng mng l khi nim cho bit hiu sut hot ng ca h thng mng. Hiu nng ch yu c xc nh bi s kt hp ca nhiu yu t, c nhng yu nh: Bng thng, thng lng, thi gian p ng, tr, tin cy, t l li, tc x l ca phn mm ng dng, tnh sn sng ca h thng. Tu theo mc ch nghin cu c th, hiu nng c th ch bao gm mt nhn t no hoc l s kt hp mt s trong cc nhn t nu trn. 2.5.1 Cc yu t nh gi hiu nng mng C th phn cc yu t nh gi hiu nng thnh hai loi: cc yu t hng ti ngi s dng v cc yu t hng ti h thng. i vi ngi s dng, thi gian p ng l yu t quan trng nht, c bit trong cc h thng thi gian thc hoc cc mi trng h thng tng tc. l khong thi gian t khi gi mt yu cu cho n khi nhn c kt qu chnh xc. Trong cc h thng tng tc, i khi ngi ta s dng yu t thi gian phn ng ca h thng thay cho thi gian p ng, yu t ny c tnh bng khong thi gian t khi d liu yu cu n c h thng cho n khi yu cu cha trong d liu nhn c khe thi gian phc v u tin. y l yu t th hin mc hiu dng ca b lp lch ca h thng trong vic nhanh chng cung cp dch v cho mt yu cu mi n. Trong cc h thng mng my tnh, cc i lng thi gian p ng, thi gian phn ng ca h thng u c xem l cc bin ngu nhin, v vy ngi ta thng ni v phn b, k vng, phng sai... ca chng. Cc yu t hng ti h thng in hnh l bng thng, thng lng v thi gian tr. Bng thng c nh ngha l lng thng tin ti a c th chuyn ti trn mng trong mt n v thi gian, trong khi thng lng c nh ngha l lng thng tin thc t c vn chuyn qua mng trong mt n v thi gian. n v thng tin y c th l bit, byte hay gi s liu... Nu cc n v thng tin i vo mng theo mt c ch c lp vi trng thi ca mng, th thng lng cng chnh bng tc n trung bnh nu mng vn cn c kh nng vn chuyn, khng dn n trng thi b tc nghn. Mt s trng hp ngi ta s dng i lng h s s dng ng truyn, l t s ca thng lng trn bng thng. Thi gian tr l thi gian trung bnh vn chuyn mt gi s liu qua mng t ngun ti ch. Cng c trng hp ngi ta s dng i lng thi gian tr chun ho, l t s ca thi gian tr trn mt tham s thi gian no , th d thi gian cn thit truyn mt gi tin. 2.5.2 Vai tr ca vic nh gi hiu nng mng my tnh Trong sut lch s pht trin ca mng my tnh, vn nh gi v d on hiu nng mng lun thu ht s quan tm ca nhng ngi nghin cu v thit k mng, mc ch chnh l nm c v ci thin c trng chi ph v hiu nng. Yu cu nh gi v d on hiu nng mng t ra ngay t khi ngi ta thit k kin trc ca h thng cho n khi mng c lp t v a vo hot ng. Trong giai on u ca qu trnh thit k, ngi ta thng phi d on hai iu: Th nht, cc ng dng s chy trn mng v cc yu cu dch v m cc ng dng ny i hi h thng mng phi p ng, th hai la chn Bi ging Mng my tnh Ths. Nguyn Xun Anh 37 kin trc da trn cc cng ngh phn cng v phn mm s c pht trin v a ra th trng trong tng lai khi h thng mng bc vo giai on trin khai thc hin. Trong giai on thit k chi tit, vic d on v nh gi hiu nng s tr nn c th hn. Th d s chn ng truyn vt l nh th no, cc c tnh ca ng truyn c chn s nh hng th no n hiu nng ca mng. Cc k thut c dng d on v nh gi hiu nng mng trong giai on thit k v trin khai thc hin c khi ch l cc tnh ton bng tay, nhng cng c khi l cc m phng rt tinh vi. Vic so snh hiu nng d on vi hiu nng thc t t c thng gip cho nh nghin cu thy c cc khim khuyt chnh trong thit k hoc cc li trong vic lp trnh h thng. Ngy nay, vic d on v nh gi hiu nng thng c ngi ta coi l mt phn khng th thiu c ca cng vic thit k v trin khai thc hin h thng. Sau khi trin khai h thng mng, hai cng vic quan trng cn phi thc hin: Cu hnh mng v tinh chnh mng. Cu hnh mng: Sau khi mng c trin khai thc hin, vic d on v nh gi hiu nng mng i vi cc ng dng c th cng c ngha quan trng. Nhm t c s ti u ho, nh sn xut phi ch ra c cc cch kt hp v t chc phn cng v phn mm mng em li mt gii php tt nht cho cc yu cu ca khch hng, vic ny thng c gi l nh cu hnh mng. Mc d c th vn s dng cc cng c v phng php c s dng trong giai on pht trin h thng, nhng cn phi b sung thm mt s yu t na. c im mi trng ca ngi s dng sn phm mng cn c biu din bng cc tham s nh lng v a vo m hnh m phng hiu nng. iu chnh hiu sut hot ng ca h thng: Sau khi h thng mng c lp t v i vo vn hnh, ngi qun tr h thng cn phi lm sao cho h thng t c hiu nng hot ng tt nht, vic ny c gi l iu chnh hiu sut hot ng ca h thng. i vi cc h thng mng, vic tm ra c im lm vic ti u v n nh trn ton mng l rt kh, n ph thuc vo nhiu yu t khc nhau v i hi kinh nghim thc tin ca ngi qun tr h thng. 2.5.3 Cc phng php nh gi hiu nng mng C nhiu phng php nh gi hiu nng mng my tnh, c th chia chng lm ba loi: m hnh gii tch, m phng v phng php o lng. M hnh gii tch: Trong cc mng chuyn mch gi, gi tin l cc khi d liu c chiu di thay i c, c truyn qua mng t ngun ti ch theo mt con ng no do h thng mng quyt nh. Cc ti nguyn mng s c chia s gia cc gi s liu khi chng i qua mng. S lng v chiu di cc gi s liu i vo hoc i qua mng ti mi thi im, thi gian ko di cc cuc kt ni v.v., tt c cc tham s ny ni chung thay i theo thi gian v hin trng ca h thng mng. V vy, nu ra cc tiu chun o lng nh lng v hiu nng, cn Bi ging Mng my tnh Ths. Nguyn Xun Anh 38 phi s dng cc khi nim v xc sut nghin cu s tng tc ca chng vi mng. L thuyt hng i ng vai tr then cht trong vic phn tch mng, bi v l cng c ton hc thch hp nht pht biu v gii cc bi ton v hiu nng. Theo phng php ny, chng ta vit ra cc mi quan h hm gia cc tiu chun hiu nng cn quan tm v cc tham s ca h thng mng bng cc phng trnh c th gii c bng gii tch. M phng: M phng l s bt chc mt hay nhiu kha cnh ca s vt c thc, bng mt cch no cng ging cng tt. Trong vn nh gi hiu nng mng, m phng c hiu l mt k thut s dng my tnh in t s lm cc th nghim v mng c lin quan n thi gian. M hnh m phng gi lp hnh vi hot ng ca mng, ngay c khi ngi nghin cu ch quan tm n gi tr trung bnh ca mt s o trong trng thi dng. Cu trc v phc tp ca b m phng ph thuc vo phm vi ca th nghim m phng, n thng c xy dng c cu trc, cho php m-un ho chng trnh m phng thnh tp cc chng trnh con, sao cho vic sa i hoc b sung cc chng trnh con c d dng. Ngoi ra, chng trnh m phng cng phi c xy dng sao cho t c tc cao nhm lm gim thi gian chy m phng cng nhiu cng tt. Phng php o lng: y l phng php xc nh hiu nng da trn vic o cc tham s mng cu thnh o hiu nng cn quan tm trn mng thc, vic o hiu nng nhm thc hin cc nhim v sau: - Gim st hiu nng ca mng. - Thu thp s liu lp m hnh d liu vo cho cc phng php nh gi hiu nng bng gii tch hoc m phng. - Kim chng cc m hnh khc da trn cc s liu o c. o hiu nng khng ch quan trng trong cc giai on trin khai thc hin v tch hp h thng m cn c trong cc giai on lp t v vn hnh h thng. Bi v sau khi lp t v a vo s dng, mi mt h thng c th s c mt ti h thng v cc o hiu nng c quan tm ring ca n, cho nn sau khi lp t, ngi ta thng phi iu chnh cu hnh cho ph hp. Cc tham s cu hnh s c chn sau khi cc php o hiu nng cho thy cc tham s cu hnh ny lm cho h thng t c hiu nng tt nht. Trong thc t, mi ngi u tha nhn tm quan trng ca vic o v nh gi hiu nng. Chng ta c th thy r iu ny qua vic, hu nh tt c cc h thng mng u tch hp bn trong n cc cng c o v nh gi hiu nng; nh c th o hiu nng bt c lc no trong sut thi gian tn ti ca h thng. So snh cc phng php nh gi hiu nng: Phng php m hnh Gii tch: S dng m hnh gii tch c th thay i cc tham s h thng v cu hnh mng trong mt min rng vi chi ph thp m vn c th t c cc kt qu mong mun. Tuy nhin, cc m hnh gii tch m chng ta xy dng thng l khng th gii c nu khng c n Bi ging Mng my tnh Ths. Nguyn Xun Anh 39 gin ho nh cc gi thit, hoc c phn r thnh cc m hnh nhiu cp. Cc m hnh gii c thng rt n gin hoc khc xa thc t, cho nn phng php ny thng ch c s dng ngay trong giai on u ca vic thit k mng, gip cho ngi thit k d on c cc gi tr gii hn ca hiu nng. Ngoi ra, cc kt qu ca phng php ny bt buc phi c kim nghim bng kt qu ca cc phng php khc, nh m phng hoc o. Phng php m phng: Trong nhng trng hp m hnh gii tch m chng ta nhn c, d c n gin ho, hoc phn r nhng vn khng th gii c bng ton hc, khi chng ta s ch cn mt phng php l m phng. Phng php m phng c th c s dng ngay trong giai on u ca vic thit k h thng mng cho n giai on trin khai thc hin v tch hp h thng. Phng php ny ni chung, i hi mt chi ph rt cao cho vic xy dng b m phng cng nh kim chng tnh ng n ca n. Tuy nhin, sau khi xy dng xong b m phng, ngi nghin cu c th tin hnh chy chng trnh m phng bao nhiu ln tu , vi chnh xc theo yu cu v chi ph cho mi ln chy thng l rt thp. Cc kt qu m phng ni chung vn cn c kim chng, bng phng php gii tch hoc o lng. Phng php m hnh gii tch v m hnh m phng ng vai tr rt quan trng trong vic thit k v trin khai thc hin h thng, c bit l giai on u ca d n. Phng php o lng: Phng php o ch c th thc hin c trn ang hot ng, n i hi chi ph cho cc cng c o v cho vic tin hnh o. Vic o cn c tin hnh ti nhiu im trn mng thc nhng thi im khc nhau v cn lp i lp li trong mt khong thi gian di, thm ch c th di n hng thng. Ngoi ra, ngi nghin cu phi c kin thc v l thuyt thng k th mi c th rt ra c cc kt lun hu ch t cc s liu thu thp c. Mc du vy, phng php o lng vn c th khng pht hin hoc d on c cc hin tng c bit ca mng.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 40 CHNG 3: TNG NG DNG 3.1 Cc khi nim v ci t cc giao thc tng ng dng ng dng mng l ng lc pht trin ca mng my tnh, c nhiu pht minh t ph trong vic pht trin cc ng dng mng. Bt u t thp nin 60, nhng ng dng n gin tng tc vi ngi dng qua ch dng lnh (text- based) tr nn ph bin nh truy cp my tnh t xa (telnet), th in t (email), truyn tp tin (ftp), nhm thng tin (newsgroup), v tr chuyn t xa (chat). Hin nay, nhng ng dng a phng tin phc tp hn nh World Wide Web, in thoi trc tuyn, hi tho t xa, chia s tp tin ngy cng tr nn quen thuc. Mc d chng trnh ng dng mng c nhiu loi khc nhau, c th c nhiu thnh phn tng tc vi nhau, nhng li ca chng l phn mm. Phn mm ng dng mng c ci t phn tn trn cc thit b u cui ca ngi s dng nh my tnh, in thoi di ng V d, vi vic truy nhp trang tin in t c hai phn mm tng tc vi nhau: phn mm trnh duyt trong my tnh ca ngi dng v phn mm cho php truy nhp vo ni dung c ci t trn my ch web. Vic kt ni c thc hin gia cc tin trnh ch khng phi gia cc chng trnh phn mm, tin trnh l mt chng trnh chy trn thit b u cui. Khi cc tin trnh chy trn cng mt thit b, chng s trao i d liu vi nhau thng qua c ch truyn thng lin tin trnh, h iu hnh ca thit b u cui ngi s dng s kim sot c ch ny. Vic kt ni nh vy s c thc hin bng cch trao i bn tin qua mng my tnh. Tin trnh gi s to v gi bn tin qua mng, tin trnh nhn s nhn bn tin v c th phn hi li bng cch gi mt bn tin tr li. ng dng mng c cc giao thc nh ngha khun dng, th t trao i cc bn tin cng nh hnh vi ca mi bn khi nhn c bn tin. 3.1.1 M hnh dch v ca tng ng dng Cn phn bit ng dng mng v giao thc tng ng dng, giao thc tng ng dng ch v mt phn (cho d l phn quan trng) ca ng dng mng. V d Web l ng dng mng cho php ngi dng ly cc thng tin t my ch web nhng lm c iu th ng dng mng phi s dng nhiu giao thc khc nhau ca tng ng dng. ng dng mng bao gm nhiu thnh phn, nh tiu chun nh dng vn bn (HTML), trnh duyt Web (Netscape Navigator hay Microsoft Internet Explorer), phn mm my ch web (Apache, Microsoft, v Netscape), v giao thc tng ng dng. Giao thc tng ng dng ca Web - HTTP (Hypertext Transfer Protocol, RFC 2616), nh ngha cch thc chuyn bn tin gia trnh duyt v my ch web, nh vy HTTP ch l mt phn ca ng dng Web. Mt v d khc l ng dng th in t, n cng bao gm nhiu thnh phn: my ch th in t c chc nng nh mt hm th, my ch c th in t cho php ngi dng c v gi th, chun nh ngha cu trc ca th Bi ging Mng my tnh Ths. Nguyn Xun Anh 41 in t v giao thc tng ng dng nh ngha cch thc chuyn bn tin gia my ch th in t v my ch c th in t, cng nh ngha ca mt s trng trong th (v d cc tiu th : ngi nhn, ngi gi). Giao thc tng ng dng cho th in t l SMTP (Simple Mail Transfer Protocol, RFC 821). Do , giao thc SMTP ch l mt phn ca ng dng th in t. Giao thc tng ng dng nh ngha cch thc truyn bn tin gia cc tin trnh ng dng chy trn cc thit b khc nhau, n xc nh: - Kiu bn tin trao i, v d nh bn tin yu cu hay bn tin tr li. - C php ca bn tin, v d cc trng trong bn tin cng nh cch xc nh chng. - ngha ca cc trng. - Qui tc xc nh tin trnh gi v tr li bn tin khi no v nh th no.
Hnh 3.1 Cc ng dng trn mng
Nhiu giao thc tng ng dng c c t trong cc, v d: c t ca HTTP l HTTP RFC 2616. Nu ngi thit k trnh duyt tun theo cc qui tc ca HTTP RFC 2616, trnh duyt s c th ly c cc trang WEB t bt k my ch web no tun theo cc qui tc ca RFC 2616. Bi ging Mng my tnh Ths. Nguyn Xun Anh 42 3.1.2 M hnh khch ch Trong m hnh khch/ch (Client/Server), mt hay mt s my tnh c thit lp cung cp cc dch v nh file server, mail server, Web server, Printer server, Cc my tnh c thit lp cung cp cc dch v c gi l Server, cn cc my tnh truy cp v s dng dch v th c gi l Client. Giao thc ng dng mng thng chia ra hai: my khch v my ch, phn my khch trong thit b lin lc vi phn my ch trong mt thit b khc. V d: trnh duyt Web thuc my khch v phn ci t trang web thuc my ch. Trong nhiu ng dng, my tnh s thc hin c phn my khch v phn my ch ca ng dng. 3.1.3 M hnh ngang hng Trong m hnh ngang hng (peer-to-peer)cc my tnh trong mng c th hot ng va nh mt Client va nh mt Server. V d xt mt phin lm vic Telnet gia my A v my B. Nu my A bt u trc (c ngha l ngi dng my A ng nhp vo my B), khi my A chy pha my khch v my B chy pha my ch ca ng dng. Mt khc, nu my B bt u trc th my B chy pha my khch ca ng dng. FTP - c dng truyn tp tin gia hai my l v d khc. Sau khi thit lp phin lm vic FTP gia hai my tnh, mi my u c th truyn tp tin ti my kia trong sut phin lm vic. Tuy nhin ging nh hu ht cc ng dng mng, my no bt u trc c coi l my khch. hn na, my tnh c th chy c pha my khch v my ch ti cng mt thi im. V d: my ch th in t ng vai tr my khch khi gi th v ng vai tr my ch ca khi nhn th. 3.2 Cc giao thc thng dng ti lp ng dng Cc ng dng mng ngy cng a dng v phong ph, phn ny s trnh by mt s giao thc dng trong cc ng dng ph bin: Web, truyn tp tin, th in t v dch v tn min. Web l ng dng u tin v v Web c s dng ph bin v giao thc tng ng dng ca n - HTTP, tng i n gin v minh ha nhiu c trng c bn ca giao thc. Tip theo l ng dng truyn tp tin, bi v ng dng ny c nhiu c im tri ngc vi HTTP. Chng ta cng s nghin cu th in t, mt trong nhng ng dng u tin v thng dng nht ca Internet. Th in t ngy nay s dng nhiu giao thc tng ng dng. Web, truyn tp tin, v th in t u yu cu mt dch v truyn ng tin cy, khng c yu cu thi gian v yu cu v bng thng. Do vy ba ng dng ny s dng TCP tng vn ti. ng dng th t l DNS (Domain Nam System) cung cp dch v chuyn i tn min thnh a ch IP. Ngi dng khng tng tc trc tip vi DNS m yu cu dch v DNS gin tip thng qua cc ng dng khc (v d Web, truyn file v th in t). DNS minh ha r vic trin khai mt c s d liu phn tn trn mng nh th no. 3.2.1 Giao thc truy nhp trang web HTTP Cho n nhng nm 1990, Internet ch c s dng trong cc c quan nghin cu, cc trng i hc vi cc dch v n gin nh truy cp t xa, Bi ging Mng my tnh Ths. Nguyn Xun Anh 43 truyn tp tin, nhn v gi th in t. Mc d cc ng dng ny ph bin - nhng Internet v c bn vn ch c bit ti trong cng ng nghin cu. Vo u thp nin 90, ng dng quan trng nht ca Internet - World Wide Web xut hin, v nhanh chng c mi ngi chp nhn. N thay i cch thc tng tc gia con ngi v mi trng lm vic. Chnh iu ny gip a Intemet t mt trong rt nhiu mng thng tin (v d mng trc tuyn Prodigy, American Onlie hay Compuserve, h thng thng tin quc gia : Minitee/Tranpac Php, Private X25, Frame Relay) thnh mt mng ln nht ton cu. Lch s pht trin ca ngnh cng ngh vin thng nh hng ln n x hi loi ngi. Cng ngh u tin l in thoi - c pht minh vo nm 1870. in thoi cho php hai ngi ni chuyn trc tip m khng cn trong cng mt vng. N c nhng nh hng c tt ln xu n x hi. Cng ngh tip theo l truyn thanh, truyn hnh - ra i vo nhng nm 1920-1930, gip con ngi thu nhn mt tng thng tin rt ln bng m thanh v hnh nh, v tc ng ln n x hi. C l cng ngh th ba lm thay i cuc sng v cng vic ca con ngi l Web. Sc li cun ca Web i vi con ngi l ch Web hot ng theo yu cu, ngha l c th nhn c thng tin cn thit vo cc thi im cn thit. iu ny khc so vi cng ngh qung b (truyn thanh, truyn hnh) ch pht i nhng ni dung c sn ti nhng thi im nh trc. Ngoi ra Web c nhiu c im l th khc. Ai cng c th d dng tr thnh cc nh xut bn; cc siu lin kt v cc cng c tm kim gip ta tm kim qua nhiu trang web. Cc hnh nh ha v hot hnh khuy ng th gic. Cc thnh phn khc nh: Form, Java applet, Active X cho php tng tc ti cc website khc. 3.2.1.1 Tng quan v giao thc HTTP Hyper Text Transfer Protocol (HTTP) - giao thc tng ng dng ca Web - l tri tim ca Web. HTTP c trin khai trn c hai pha my khch v my ch. Cc tin trnh my khch v my ch trn cc h thng u cui khc nhau giao tip vi nhau thng qua vic trao i cc bn tin HTTP. HTTP quy nh cu trc bn tin cng nh cch thc trao i bn tin gia my khch v my ch. Trc khi ni v HTTP, chng ta hy ni li cc thut ng v web. Trang Web (webpage - hay cn gi l mt tp tin) cha cc i tng (Object). i tng n gin ch l mt file nh file HTML, file nh JPEG, file nh GIF file java applet, mt on m thanh i tng c xc nh qua a ch URL. Trang Web cha mt file HTML c s v tham chiu n cc i tng khc. V d mt trang web cha mt tp tin HTML vn bn v 5 i tng nh JPEG khi trang web c 6 i tng: 1 file vn bn HTML v 5 file nh. File HTML c s ny tham chiu n cc i tng khc thng qua a ch URL. Mi a ch URL c hai thnh phn l: tn ca my ch v ng dn ca i tng. y l mt a ch URL www.ptit.edu.vn/Portals/0/ptitlogo72.gif www.ptit.edu.vn l tn my ch v Portals/0/ptitlogo72.gif l ng n i tng. Bi ging Mng my tnh Ths. Nguyn Xun Anh 44 Trnh duyt (Browser) - chng trnh giao tip ngi dng ca ng dng Web cho php hin th trang Web. Browser l pha my khch ca giao thc HTTP. Hin nay c rt nhiu phn mm trnh duyt nhng ph bin nht l Nestcape Communication v Microsoft Internet Explorer. My ch web lu gi cc i tng web v c xc nh qua a ch URL . Phn mm My ch web l pha my ch ca giao thc HTTP. mt s phn mm My ch web ph bin l Apache, Microsoft Internet Information My ch v Nestcape Enterprise My ch. HTTP xc nh cch thc trnh duyt yu cu trang web t web my ch cng nh cch thc my ch gi trang web c yu cu ti trnh duyt. di y chng ta s ni r hn v qu trnh trao i gia my khch v my ch. Hnh 2.6 minh ha qu trnh ny. Khi ngi dng yu cu mt i tng (v d kch vo mt siu lin kt), browser s gi mt bn tin HTTP ti my ch yu cu i tng . My ch nhn c yu cu v tr li bng cch gi li mt thng ip tr li cha i tng c yu cu.
Hnh 3.2 tng tc my khch/my ch
Cho ti nhng nm 1997, phn ln cc trnh duyt Web v My ch web tun th phin bn HTTP 1.0 (c t trong RFC 1945), t nm 1998 mt s trnh duyt v my ch web s dng phin bn 1.1 theo khuyn ngh RFC 2616. Phin bn mi ny tng thch vi phin bn 1.0, ngha l Web my ch dng phin bn 1.1 c th ni chuyn c vi trnh duyt s dng phin bn 1.0 v ngc li c phin bn 1.0 v 1.1 u s dng TCP lm giao thc tng vn ti. HTTP my khch khi to mt kt ni TCP ti HTTP my ch. Sau khi thit lp c kt ni, c tin trnh browser v My ch web u truy cp ti TCP thng qua socket. My ch nhn bn tin yu cu ny v gi bn tin tr li qua socket. Sau khi gi bn tin qua socket th bn tin nm ngoi tm kim sot ca my khch v chnh thc th TCP chu trch nhim chuyn n sang pha bn kia. Giao thc TCP cung cp dch v truyn tin tin cy cho HTTP, nh vy bn tin ca tin trnh my trm s c chuyn ti nguyn vn n my ch v ngc li. Giao Bi ging Mng my tnh Ths. Nguyn Xun Anh 45 thc HTTP khng gii quyt vic mt mt d liu m vic ny l cng vic ca giao thc TCP. Mt im quan trng l my ch gi cc i tng c yu cu cho my khch m khng ghi li bt k mt thng tin trng thi no ca my khch. Nu my khch no yu cu li cng mt i tng th my ch s khng th tr li cho my khch rng i tng va c gi cho my khch, my ch s gi li cho my khch i tng nh th n khng bit vic gi ln trc. HTTP my ch khng nh cc thng tin v my khch, v th HTTP c gi l giao thc khng trng thi. Kt ni lin tc v khng lin tc HTTP h tr c hai cch kt ni lin tc v khng lin tc. HTTP 1.0 s dng kt ni khng lin tc. Ch mc nh ca HTTP 1.1 l kt ni lin tc. Kt ni khng lin tc Gi s trang web c cha mt tp tin HTML c s v 10 file nh JPEG v ng thi c 11 i tng ny cng trn mt my ch, a ch ca file HTML ny l www.ptit.edu.vn/english/index.html, cc bc thc hin nh sau: 1. HTTP my khch khi to mt kt ni TCP ti my ch c a ch l www.ptit.edu.vn. Cng 80 l cng c HTTP my ch s dng Lng nghe cc yu cu ly trang Web t my khch thng qua giao thc HTTP. 2. HTTP my khch gi bn tin yu cu qua socket ti thc th TCP c kt ni bc trc. Thng ip bao gm ng dn english/index.html. 3. HTTP my ch nhn c bn tin yu cu t socket, ly i tng english/index.html trong b nh ca mnh ( cng hoc RAM), t i tng ny vo trong mt bn tin tr li v gi i qua socket. 4. HTTP my ch yu cu thc th TCP kt thc kt ni (nhng n khng ng li thc s cho n khi my khch nhn c bn tin). 5. HTTP my khch nhn c bn tin tr li, kt ni c ng li. Bn tin ch ra rng n cha mt i tng l file HTML. Client s ly file ra t bn tin tr li. File HTML tham chiu n 10 i tng nh JPEG. 6. Bn bc u c lp li cho mi i tng nh c tham chiu trong file HTML.
Khi nhn c bn tin tr li c cha trang Web, browser s hin th trang web. Cc browser khc nhau th c th c cc cch hin th khc nhau i vi cng mt trang web. HTTP khng nh hng g i vi cch hin th trang web ca my khch. Cc c t trong HTTP ch nh ngha giao thc truyn thng gia tin trnh my khch v my ch m thi. Cc bc trn s dng cch kt ni khng lin tc v sau khi gi i mt i tng th my ch s ng kt ni TCP li, kt ni khng c s dng ly cc i tng khc. lu rng mi kt ni TCP chuyn duy nht mt bn tin yu cu v mt bn tin tr li, nh vy trong v d trn, my khch yu cu ton b i tng trn trang web th s c th c ti 11 kt ni TCP c thit lp. Bi ging Mng my tnh Ths. Nguyn Xun Anh 46 Trong v d trn, chng ta khng h ni n vic my khch nhn c 10 file nh JPEG qua 10 lin kt TCP ring r hay mt s file c nhn qua cng mt kt ni. Trn thc t, ngi dng c th cu hnh cho trnh duyt iu khin mc song song ca cc kt ni. Ch mc nh ca trnh duyt thng l t 5 n 10 kt ni TCP song song v mi kt ni kim sot mt cp bn tin yu cu/tr li. Nu ngi dng khng thch th c th t s kt ni song song ti a l 1, trong trng hp ny 10 kt ni c thit lp ring l. Trong chng sau chng ta s thy rng cch kt ni song song lm gim thi gian tr li.
Kt ni lin tc: C mt vi nhc im trong kt ni khng lin tc: Th nht, khi lin kt mi c to ra, pha my khch v my ch phi to ra vng m TCP (buffer) cng nh lu gi cc bin TCP. iu ny chnh l gnh nng cho my ch khi c nhiu my khch cng yu cu mt lc. Vi cch kt ni lin tc, my ch khng ng lin kt TCP sau khi gi bn tin tr li. Cc bn tin yu cu v tr li sau (gia cng mt my khch v my ch) c gi qua cng mt kt ni. Trong v d trn, ton b i tng trong trang Web (mt file HTML v 10 file nh JPEG) c truyn ni tip nhau trn cng mt kt ni TCP. Ngoi ra, c th cc trang web khc trn cng my ch c th c truyn qua mt kt ni TCP. Thng thng th HTTP my ch ng lin kt khi lin kt khng c s dng trong mt khong thi gian no . Ch lm vic mc nh ca phin bn HTTP 1.1 v gi lin tc. Trong trng hp ny, HTTP my khch gi yu cu khi n nhn c mt tham chiu (v d mt siu lin kt, hay tham chiu n file nh) v vy my khch c th gi cc yu cu lin tip. Khi my ch nhn c yu cu th n s gi cc i tng ni tip nhau. 3.2.1.2 Khun dng ca bn tin HTTP Cc c t HTTP 1.0 (RFC 1945) v HTTP 1.1 (RFC 2016) c t khun dng bn tin HTTP. C hai kiu khun dng HTTP: bn tin yu cu v bn tin tr li. Bn tin yu cu HTTP: Mt bn tin yu cu thng c dng sau: GET /english/index.html HTTP/1.l Host: www.ptit.edu.vn Connection :close User-agent :Mozzilla /4. 0 Accept- language:Fr (extra carry return line feed) Trc ht ta thy rng bn tin c vit bng m ASCII - v th bt k my tnh thng thng no cng c th c c. Th hai, bn tin gm 5 dng v mi dng u kt thc bi lp k t c bit Carriage Return (CR=13h) v Line Feed (LF-10h). Trn thc t mt bn tin c th c nhiu dng hn. Dng Bi ging Mng my tnh Ths. Nguyn Xun Anh 47 u tin ca bn tin c gi l dng yu cu (request line), cc dng sau gi l tiu (header). Dng yu cu c 3 trng: trng method, trng a ch URL v trng phin bn HTTP. Trng method nhn mt trong ba gi tr: GET, POST v HEAD. Phn ln cc yu cu s dng phng thc GET. Phng thc ny c trnh duyt s dng yu cu i tng c a ch URL. Trong v d trn th trnh duyt yu cu i tng somedir/page.html. Trng phin bn xc nh phin bn giao thc HTTP (trong v d l 1.1 ).
Hnh 3.3 Khun dng chung ca bn tin yu cu
By gi hy xt cc trng trong tiu . Host: www.ptit.edu.vn l a ch ca my tnh c cha i tng c yu cu. ngha ca trng Connection: close l trnh duyt yu cu my ch khng s dng cch kt ni lin tc v yu cu my ch ng kt ni li sau khi gi i i tng c yu cu. mc my khch s dng phin bn HTTP 1.1 nhng n khng s dng kt ni lin tc. Trng User-agent l phn mm trnh duyt ca ngi s dng. Phn mm trnh duyt y l Mozzil1a, mt sn phm ca hng Nestcape. Trng ny rt quan trng v my ch c th gi cc bn khc nhau ca cng mt i tng n cc trnh duyt khc nhau (cc bn i tng ny u c xc nh qua cng mt a ch URL duy nht). Cui cng l trng Accept language trong v ny ngi s dng yu cu bn ting Php ca i tng - nu my ch c bn ny. Trong trng hp khng c th my ch gi i bn mc nh. Khun dng tng qut ca bn tin c thm trng Entity Body sau cc dng tiu . Trng ny khng c s dng trong phng thc GET nhng c s dng trong phng thc POST. HTTP my khch s dng phng thc POST khi ngi dng in vo mt form - v d khi mun tm kim qua mt my tm kim nh Google. vi phng thc POST ngi dng vn yu cu trang web nhng ni dung c th ph thuc vo ni dung in trong form. Nu gi tr ca trng method l POST th phn entity body s cha ni dung m ngi dng in vo form. Phng thc HEAD cng tng t nh phng thc POST. Khi nhn c yu cu vi phng thc POST, my ch s gi li bn tin HTTP tr li nhng khng gi i tng c yu cu. Thng ngi ta s dng phng thc HEAD g li. Bn tin tr li: Bi ging Mng my tnh Ths. Nguyn Xun Anh 48 Sau y l mt v d v bn tin tr li, bn tin ny c th l tr li cho bn tin yu cu trn.
Hnh 3.4 Khun dng bn tin tr li
HTTP/1.1 200 OK Connection :close Date : Thu, 01 Dec 2011 11:00:15 GMT My ch Apache/1. 3. 0 (unix) Last modified :Mon, 14 Nov 2011 19:29:04 GMT Connect length : 8611 Connect type :text/html ( data data . . . . . . . )
Bn tin trn gm c 3 phn : Dng u tin l dng trng thi (status link), 6 dng tiu v cui cng l phn thn (Entity body) cha i tng c yu cu (l phn data data... ). Dng trng thi c 3 trng : trng phin bn ca giao thc, m trng thi v trng trng thi bn tin tr li. Trong v d ny th dng trng thi cho bit my ch s dng phin bn HTTP 1.1 v trng thi l sn sng (my ch nhn c yu cu v gi i tng c yu cu). Trng Connection: close bo cho my khch bit my ch s ng kt ni sau khi gi i bn tin. Trng Date: cho bit thi gian khi my ch to ra bn tin v gi i, ch rng y khng phi l thi gian khi i tng c to ra hay ln cui cng i tng c cp nht. l thi im m my ch tm thy i tng trong h thng file ca mnh, chn i tng vo bn tin tr li v gi i. Trng server cho bit bn tin tr li ny c to ra t phn mm My ch web Apache, ngha ca n ging vi trng User agent trong bn tin yu cu. Trng Last modified l thi gian cui cng i tng c cp nht. Trng Content lenght: cho bit di ca i tng c gi. Content type xc nh kiu ca i tng l file vn bn HTML ( kiu ca i tng c t y ch khng phi trong phn m rng ca tn file). Khi nhn c mt bn tin yu cu HTTP 1.0, my ch cng s khng s dng kt ni lin tc ngay c khi my ch dng phin bn 1.1. My ch s ng Bi ging Mng my tnh Ths. Nguyn Xun Anh 49 kt ni ngay sau khi gi i tng. iu ny cn thit v my khch s dng phin bn HTTP 1.0 s ch my ch ng kt ni li. Khun dng chung ca mt bn tin tr li c minh ha trn hnh 2.8. Khun dng ny tng thch vi v d trn. Tuy nhin cn phi ni thm v m trng thi (status code) v ngha ca chng. M trng thi cng vi cm t i sau cho bit kt qu ca yu cu. Sau y l mt vi gi tr thng dng v ngha ca chng:
200 OK: Yu cu c p ng v d liu c yu cu nm trong bn tin 301 Moved permanetly: cho bit i tng c chuyn v a ch URL mi ca i tng c t trong trng Location: ca bn tin tr li, phn mm ti my khch s t ng ly i tng ti a ch URL mi (y l hin tng chuyn hng thng gp khi duyt web). 400 Bad Request: my ch khng hiu c yu cu t my khch 404 Not found: i tng khng c lu trn my ch 505 HTTP version not support: my ch khng h tr giao thc ca my khch. 3.2.1.3 Tng tc ngi dng-my ch HTTP my ch khng lu gi trng thi, iu ny n gin ho kin trc v lm tng hiu sut hot ng ca my ch. Tuy nhin cc my ch mun phn bit ngi dng khng ch v mun hn ch s truy cp m cn v my ch mun phc v theo nh danh ngi dng. HTTP c 2 c ch my ch phn bit ngi dng: Authentication v cookies. Authentication (Kim Chng) Nhiu my ch yu cu ngi dng phi cung cp tnv mt khu c th truy cp vo ti nguyn trn my ch. Yu cu ny c gi l kim chng. HTTP c cc m trng thi v trng thc hin qu trnh kim chng. Gi s my khch yu cu mt i tng t my ch v my ch yu cu my khch cung cp tn v mt khu. u tin my khch vn gi mt bn tin yu cu thng thng. My ch s tr li vi bn tin c phn thn rng v trng m trng thi l 401 Authentication required. Trong bn tin tr li ny c trng www-authenticate: xc nh phng thc kim chng m ngi ng phi thc hin, thng thng l a tn v mt khu. Nhn c bn tin ny, my khch yu cu ngi dng cung cp tn v mt khu. Sau , my khch s gi li bn tin yu cu c trng Authoziration: trong tiu , trng ny cha tn v mt khu ca ngi dng. Sau khi nhn c i tng u tin, my khch tip tc gi tn v mt khu trong cc bn tin k tip (thng th cho n khi ngi dng ng trnh duyt li. Khi trnh duyt cn m, tn v mt khu c lu li trong cache ngi dng khng phi nh li na). Theo cch ny my ch c th phn bit cc ngi dng. Trong chng 7 ta s thy rng HTTP phn bit ngi dng kh lng lo v khng kh vt qua. Bi ging Mng my tnh Ths. Nguyn Xun Anh 50
Cookies: Cookie l k thut khc c my ch s dng ghi li u vt ca ngi truy cp. N c c t trong RFC 2109. V d ln u tin ngi dng truy cp vo mt my ch no c s dng cookie. Bn tin tr li ca my ch c trng Set-cookies: trong tiu cng vi mt chui k t do My ch web to ra. Khi nhn c bn tin tr li, my khch xc nh c trng Set- cookies v chui k t i km, Trnh duyt s thm mt dng vo cui file cookie (v mt file c bit trn my my khch). Dng ny thng l dng cha tn my ch v chui k t cookie. Gi s mt tun sau, my khch gi thng ip yu cu n my ch, my khch s t ng chn trng Cookies: trong tiu ca bn tin yu cu vi gi tr l chui gi tr cookie lu trong file cookie. My ch web s dng cookie cho nhiu mc ch: - Nu my ch yu cu kim chng nhng khng mun i hi ngi dng ng nhp qua tn v mt khu th c th s dng cookie cho mi ln ngi dng truy cp vo my ch. - My ch s dng cookie nu mun ghi nh cc hot ng ca ngi dng, phc v mc ch qung co. - Nu ngi s dng mua hng trn mng th my ch s dng cookie ghi li nhng g m ngi s dng mua. S dng cookie gy kh khn cho ngi dng khng c my tnh c nh m truy cp vo my ch t nhiu my khc nhau. My ch s coi l nhng ngi dng khc nhau. 3.2.1.4 GET c iu kin Lu gi li cc i tng tng c ly, web cache c th lm gim thi gian ch t khi gi yu cu n khi nhn i tng v lm gim lu lng thng tin truyn trn mng Internet. Web cache c trin khai trn trnh duyt hay cc cache my ch. Mc d web cache lm gim thi gian ch nhn i tng nhng vn ny sinh l bn sao ca i tng c lu gi trn my khch c th c, ni cch khc i tng trn my ch c th thay i t khi my khch ly i tng v. Tuy nhin HTTP c c ch cho php s dng cache trong khi vn m bo i tng trong cache cha b c.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 51 Hnh 3.5 Client yu cu i tng thng qua cache
C ch ny chnh l GET c iu kin (conditional GET). mt bn tin HTTP c gi l c iu kin nu: (1) thng ip s dng phng thc GET v (2) thng ip c trng If- modified- since trong tiu . V d, trnh duyt yu cu mt i tng t my ch m trong cache ca n cha c: GET /english/index.html HTTP/1.0 User-agent :Mozilla/4.0 Sau my ch gi bn tin tr li km vi i tng HTTP /1.0 200 OK Date : Thu, 01 Dec 2011 11:00:15 Server : Apache/1.3.0 (Unix) Last-modified: Mon, 14 Nov 2011 19:29:04 Content-type :image/gif (data data .) Trnh duyt hin th i tng ng thi lu li i tng trong cache cc b cng vi thi gian trong trng Last-modined km theo i tng. Mt tun sau, ngi s dng li yu cu i tng ny trong khi i tng c lu trn cache. Nhng i tng c th b thay i trong thi gian 1 tun nn trnh duyt phi thc hin kim tra bng cch gi mt bn tin GET c iu kin, c th browser gi i: GET /english/index.html HTTP/1.0 User-agent : Mozlla /4.0 If-modified-since : Thu, 01 Dec 2011 11:00:15 Gi tr trng If-modified-since: l gi tr ca trng Last- modified: trong tiu m my ch gi cho my khch tun trc. Bn tin GET c iu kin yu cu my ch ch gi i tng cho my khch nu nh i tng c cp nht sau thi gian c ch ra trn. Gi s i tng khng thay i g t Thu, 01 Dec 2011 11:00:15 th my ch s gi cho my khch bn tin: HTTP /1.0 304 Not modified Date : Thu, 08 Dec 2011 12:05:17 Server: Apache 11. 3. 0 (Unix) (empty entity body) Bn tin tr li ny khng km theo i tng. Vic gi km i tng chi lm lng phi ng truyn v lm tng thi gian my khch phi ch nhn c i tng, c bit khi i tng c kch thc ln. Gi tr trng trng thi l 304 Not modified bo cho my khch bit i tng m my khch lu trong cache ging i tng gc ti my ch, do my khch c th s dng li i tng ny. Bi ging Mng my tnh Ths. Nguyn Xun Anh 52 3.2.1.5 Web caches Web cache (my ch i din) l thc th p ng yu cu t my khch. My tnh lm nhim v Web cache c a ring lu tr bn sao cc i tng tng c yu cu. Ngi s dng c th cu hnh cho trnh duyt sao cho tt c cc yu cu u c gi n web cache trc, khi tt c yu cu ca trnh duyt v mt i tng no s c chuyn n webcache trc. Gi s trnh duyt yu cu i tng l mt file nh c a ch l http://www.ptit.edu.vn/campus.gif - Trnh duyt khi to mt kt ni TCP ti webcache v gi yu cu ti webeache - Webcache s kim tra v tm i tng, nu tm c th webcache s gi i tng cho my khch qua kt ni TCP c thit lp. - Nu webcache khng c i tng th n s khi to mt kt ni t my ch tht s cha i tng, y l www.ptit.edu.vn. Sau webcache gi bn tin yu cu ti cho my ch ny thng qua kt ni TCP va khi to. Sau khi nhn c yu cu t webcache, my ch s gi li i tng cho webcache. - Khi nhn c i tng, webcache s lu li bn sao ca i tng v gi i tng trong bn tin HTTP tr li cho my my khch (thng qua kt ni TCP c thit lp trc ). Nh vy webcache va l my khch va l my ch. Webcache ng vai tr my ch khi nhn yu cu v tr li, ng vai tr my khch khi gi yu cu v nhn bn tin tr li. Webcache c s dng rng ri v ba nguyn nhn sau: webcache lm gim thi gian my khch phi i. Trong trng hp cache c i tng c yu cu th i tng ny s ngay lp tc c chuyn ti my khch. Th hai, webcache lm gim ti mng. Bng cch gim ti ng truyn ra mng Intemet, c quan khng cn phi nng cp ng truyn v gim chi ph. Webcache lm gim lng thng tin Web trao i trn Internet, do tng hiu sut hot ng ca tt c cc ng dng. Nm 1998, theo thng k hn 75% thng tin c truyn trn mng l ng dng web, v vy gim ti web ci thin ng k hiu sut ton b Intemet. Th ba, mng Internet vi nhiu webcache gip cho vic nhanh chng pht tn thng tin - thm ch ngay cho nhng nh cung cp thng tin c tc my ch chm hay tc kt ni chm. Nu mt nh cung cp c mt ni dung cn ph bin th ni dung ny ngay lp tc c chuyn n cc webcache v yu cu ca ngi dng t mi ni c p ng nhanh chng. Cache cng tc: C th kt hp nhiu webcache t cc v tr khc nhau trn mng nhm nng cao hiu sut tng th. V d, cache ca mt c quan c th c cu hnh sao cho cc yu cu ca n c gi t cache ca nh cung cp dch v Intemet cp quc gia. Khi nu cache ca c quan khng c i tng c yu cu th n s gi bn tin yu cu HTTP n cache ca ISP. Cache ISP s Bi ging Mng my tnh Ths. Nguyn Xun Anh 53 tm i tng trong h thng lu tr ca mnh hoc ti chnh my ch c lu gi i tng. Sau n s gi i tng trong bn tin tr li HTTP ti cache ca c quan. Cache ca c quan li gi i tng t trnh duyt yu cu. Mi ln i tng khi qua cache u c sao chp li trong cache. Mt v d v h thng cache cng tc l h thng cache NLANR. H thng ny c nhiu my lm nhim v webcache M, cung cp dch v cho cc webcache ca cc t chc v cc khu vc trn ton th gii. Cache ny ly i tng t cache khc bng cch kt hp s dng giao thc HTTP v ICP (Intemet Caching Protocol). ICP l giao thc tng ng dng cho php mt cache nhanh chng xc nh mt cache khc c mt i tng no hay khng, v nu c th cache c th s dng giao thc HTTP ly i tng v. ICP c s dng rng ri trn rt nhiu h thng cache lin hp. Mt kiu cng tc khc l cm cache (cache cluster), thng t trn cng mt mng LAN. Cache c thay th bi cm cache khi mt cache duy nht khng p ng hiu qu khi c qu nhiu yu cu hay khi dung lng thit b nh hn ch. Tuy nhin khi trnh duyt yu cu mt i tng th vn ny sinh l yu cu c gi n cache no trong cm cache ny. vn ny c th c gii quyt bng cch tm kim theo hm bm. n gin nht, trnh duyt thc hin php bm trn a ch URL, trnh duyt s cn c vo kt qu gi yu cu n mt trong cc cache trong cm. Nu tt c trnh duyt dng cng mt thut ton bm, i tng khng bao gi c lu trn cc cache khc nhau trong cm. Nu i tng thc s c lu tr trong cm th trnh duyt lun c th gi yu cu n cache thch hp; Tm kim theo hm bm l ct li ca giao thc Cache Array Routing (CARP). 3.2.2 Giao thc truyn tp tin FTP FTP (File Transfer Protocol) l giao thc truyn tp tin tin cy gia hai my tnh. Giao thc ny xut hin t nhng nm 1971 nhng vn cn c s dng rng ri cho n tn ngy nay. Cc tiu chun truyn tin ca giao thc FTP c m t trong RFC 959, hnh 3.5 minh ha cc dch v ca FTP.
Hnh 3.6 FTP cho php trao i file gia hai my tnh
Trong phin lm vic ca FTP, ngi dng lm vic trn my tnh ca mnh v trao i tp tin vi mt my tnh khc. truy cp ti my tnh khc, ngi dng phi ng nhp thng qua vic cung cp tn ngi dng v mt Bi ging Mng my tnh Ths. Nguyn Xun Anh 54 khu. Sau khi nhng thng tin ny c kim chng th cng vic truyn tp tin t h thng tp tin trn my tnh ca mnh n h thng tp tin u kia mi c th thc hin c. Nh m t trn hnh 3.6, ngi dng tng tc vi FTP thng qua chng trnh giao tip ngi dng ca FTP. u tin ngi dng nh tn my tnh cn truyn tp tin. Tin trnh FTP my khch khi to mt kt ni TCP ti tin trnh FTP my ch sau ngi dng a cc thng tin v tn v mt khu my ch kim chng. Sau khi c my ch xc nh, ngi ng mi c th thc hin vic trao i file gia hai h thng file. HTTP v FTP u l giao thc truyn file v c rt nhiu c im chung nh c hai u s dng cc dch v ca TCP. Tuy vy hai giao thc ny c nhng im khc nhau c bn. im khc nhau ni bt nht l FTP s dng hai kt ni TCP song song, mt ng truyn thng tin iu khin (control connection) v mt ng truyn d liu (data connection). Cc thng tin iu khin nh thng tin nh danh ngi dng, mt khu truy nhp, lnh thay i th mc, lnh put hoc get file gia hai my tnh c trao i qua ng truyn thng tin iu khin. ng truyn d liu truyn file d liu thc s. V FTP phn bit lung thng tin iu khin vi lung d liu nn n dc gi l gi thng tin iu khin out-of-band. Trong chng 6 chng ta s thy rng giao thc RTSP dng truyn m thanh v hnh nh lin tc cng s dng cch gi thng tin iu khin kiu out-of-band. Nh ni, HTTP gi tiu ca bn tin v file d liu trn cng mt kt ni TCP. V vy m HTTP c gi l gi thng tin iu khin in-band. Trong phn tip theo ta s thy rng SMTP - giao thc gi th in t cng s dng truyn thng tin iu khin kiu in-band. ng truyn thng tin iu khin v ng truyn d liu ca giao thc FTP c minh ha trong hnh 3.7.
Hnh 3.7 FTP gm 2 ng: Kim sot v d liu
Khi ngi dng bt u mt phin lm vic FTP, u tin FTP s thit lp mt ng kt ni thng tin iu khin TCP qua cng 21. Pha my khch ca giao thc FTP truyn thng tin v nh danh ngi dng v mt khu cng nh lnh thay i th mc qua kt ni ny. Khi ngi dng c mt yu cu trao i file (truyn t/n my ngi dng), FTP m mt kt ni TCP truyn d liu qua cng 20. FTP truyn ng mt file qua kt ni ny v ngay sau khi truyn xong th ng kt ni li. Nu trong cng phin lm vic ngi dng c yu cu truyn file th FTP s m mt kt ni khc. Nh vy vi FTP, lung thng tin iu khin c m v tn ti trong sut phin lm vic ca ngi dng, nhng Bi ging Mng my tnh Ths. Nguyn Xun Anh 55
` mi kt ni d liu c to ra cho mi mt yu cu truyn file (kt ni d liu l khng lin tc). Trong sut phin lm vic, FTP my ch phi gi li cc thng tin v trng thi ca ngi dng, c bit n phi kt hp cc thng tin iu khin vi ti khon ca ngi dng. My ch cng lu gi th mc hin thi m ngi dng truy cp cng nh cy th mc ca ngi dng. Ghi li cc thng tin trng thi ca mi phin lm vic hn ch ng k tng s phin lm vic ng thi. HTTP khng lu gi trng thi nn n khng ghi li bt k thng tin no v trng thi ca ngi dng. Cc lnh FTP Lnh (yu cu) t my khch n my ch v kt qu (tr li) t my ch ti my khch c gi thng qua kt ni iu khin v c m ho bng bng m ASCII 7 bit. Do vy ging nh lnh HTTP, ngi ta c th c c lnh FTP. Trng hp cc lnh vit lin tc th lp k t CR (carriage return) v LF (line feed) c s dng phn bit cc lnh (v tr li) mi cu lnh cha 4 k t ASCII in hoa, mt s lnh c tham s. Sau y l mt s cu lnh hay dng: USER username: s dng gi thng tin tn ti khon ca ngi dng cho my ch PASS password: dng gi mt khu cho my ch LIST: dng yu cu my ch gi mt danh sch cc tp tin trong th mc hin thi. Danh sch ny c gi thng qua mt kt ni d liu TCP RETR filename: dng ly mt tp tin t th mc hin thi (trn my xa) STOR filename: dng ti mt tp tin vo th mc hin thi (trn my xa) Thng thng c quan h 1-1 gia lnh ca ngi dng v lnh ca FTP. ng vi mi lnh t my khch l mt tr li ca my ch. Cu tr li l mt m ba ch s v c th c mt thng bo km theo. iu ny tng t nh trng m trng thi trong bn tin tr li HTTP. di y l mt s cu tr li thng gp: 331 username OK, password requiered 125 connection already open; Transfer staring 425 canDt open data connection 452 error writing file 3.2.3 Giao thc chuyn th in t Cng vi Web, th in t l mt trong nhng ng dng Internet thng dng nht. gn ging th tn thng thng, e-mail l dch v khng i hi ng b - ngha l mi ngi gi v c th khi thy thun tin, khng cn theo k hach trc. Nhng khc vi th tn thng, e-mail nhanh, d gi v chi ph thp. hn na nhng bn tin e-mail ngy nay c th cha ng cc hyperlink, vn bn nh dng HTML, hnh nh, m thanh v c video. Hnh 3.8 minh ha h thng th in t trn mng Internet gm c 3 thnh phn phn chnh: user agent, mail my ch v SMTP (Simple Mail Bi ging Mng my tnh Ths. Nguyn Xun Anh 56 Transfer Protocol). tin theo di, chng ta s ly v d ngi A gi e-mail cho B m t 3 thnh phn trn. Chng trnh giao tip ngi dng cho php c, hi m, gi, lu gi v son tho cc th (user agent dnh cho e-mail cn c gi l trnh c th). Khi A son tho xong th, user agent ca A s gi th ti my ch th in t ca A, ti y th c t vo trong hng i gi ra ngoi. Khi B mun c th, user agent ca B s ly th trn hp th ca B ti my ch th in t. Hin nay, nhng phn mm son e-mail thng dng l Eudora, Microsoft Outlook v Nescape Messenger. My ch th in t l thnh phn ct li trong h thng e-mail. Mi ngi c mt hp th t trn my ch th in t. Hp th ca B qun l, lu gi cc th gi t B. Th c to ra ti user agent ca ngi gi, c gi t my ch th in t ca ngi gi, ri ti my ch th in t ca ngi nhn - v cui cng c chuyn vo hp th ca ngi nhn. Khi B mun truy cp vo hp th ca mnh, my ch th in t cha hp th ca B s kim chng B thng qua tn v mt khu truy nhp. My ch th in t ca A cn phi x l khi my ch th in t ca B gp s c. Nu my ch th in t ca A khng th gi th cho my ch th in t ca B, n s gi nhng th trong hng i gi bn tin v s c gng gi li cc bn tin. Qu trnh gi li c tin hnh thng xuyn 30 pht mt ln trong nm ngy. V sau vi ngy, nu vn khng thnh cng th my ch s hu b th v gi th bo cho ngi gi (A).
Hnh 3.8 Minh ha h thng th in t
Bi ging Mng my tnh Ths. Nguyn Xun Anh 57
SMTP (Simple Mail Transfer Protocol) l giao thc gi th in t ca tng ng dng. SMTP s dng dch v truyn d liu tin cy ca TCP truyn th t my ch th in t ca ngi gi n my ch th in t ca ngi nhn. Ging cc giao thc khc tng ng dng, SMTP c 2 pha: pha my khch, trn my ch th in t ca ngi gi v pha my ch trn my ch th in t ca ngi nhn. Tt c cc my ch th in t u chy c hai pha my khch v my ch ca SMTP. My ch th in t ng vai tr my khch khi gi th v ng vai tr my ch khi nhn th. 3.2.3.1 SMTP SMTP l tri tim ca dch v gi th trn Internet v c c t trong RFC821. SMTP truyn cc bn tin (th) t my ch th in t ca ngi gi n my ch th in t ca ngi nhn. SMTP ra i trc HTTP kh lu (RFC c t SMTP c t nm 1982 v SMTP xut hin trc mt thi gian di). mc d c nhiu u im nn c tt c my ch th in t trn Internet s dng, SMTP vn l mt k thut c nn chc chn c nhng c tnh lc hu. V d SMTP i hi phn thn ca tt c cc bn tin e-mail phi m ho theo bng m ASCII 7 bit. s hn ch ny l do trong nhng nm u thp k 80, vi s ng truyn t i, khng ai gi th cng vi nhng phn nh km ln, hay gi km cc file hnh nh, m thanh c kch thc ln. Nhng trong k nguyn a phng tin ngy nay, vic gii hn m ASCII 7 bit l mt hn ch ln v d liu a phng tin nh phn phi c chuyn sang m ASCII trc khi c gi i qua SMTP v sau li phi gii m thnh m nh phn sau khi th n ch. minh ha hot ng c bn ca SMTP, hy xt v d sau gi s A mun gi cho B mt bn tin ASCII n gin: - u tin, A s dng user agent ca mnh, nh a ch e-mail ca B (B@ptit.edu.vn), son e-mail v yu cu user agent gi th i. - User agent ca A gi th ti my ch th in t ca A. ti y th c t vo hng th i gi . - SMTP my khch chy trn my ch th in t ca A thy th trong hng i. N to kt ni TCP ti SMTP my ch trn my ch th in t ca B. - Sau giai on khi to 3 bc, SMTP my khch gi th ca A qua kt ni TCP. - Ti my ch th in t ca B, SMTP my ch nhn th v t th vo hp th ca B. - Cui cng, khi thun tin B s s dng user agent ca mnh c th.
SMT P
Bi ging Mng my tnh Ths. Nguyn Xun Anh 58 Internet
My ch th in t ca A My ch th in t ca B
Hnh 3.9 Trao i th gia hai my ch Email
Kch bn ny c minh ha trn hnh 3.9, mt im quan trng cn ch l SMTP khng s dng my ch th in t trung gian gi th - ngay c khi my ch th in t gi v nhn xa nhau . V d nu mail my ch ca A t Hongkong v my ch th in t ca B H Ni, th gia hai my ch th in t Hong Kong v H Ni vn c ng kt ni TCP trc tip. c bit nu my ch th in t ca B b hng th th vn cn trong my ch th in t ca A v i cho ln gi sau. Bn tin khng c gi qua my ch th in t trung gian. SMTP c nhiu c im tng t nh nhng quy tc trong giao tip trc din ca con ngi. u tin, SMTP my khch (chy trn my ch th in t gi) thit lp kt ni TCP vi cng 25 ti SMTP my ch (chy trn my ch th in t nhn). Trong trng hp my ch khng lm vic, my khch s c gng th li ln sau. Ngay khi kt ni c thit lp, my ch v my khch thc hin mt vi th tc bt tay. Qu trnh ny tng t nh hai ngi t gii thiu v bn thn trc khi tin hnh ni chuyn. Trong th tc trao i, SMTP my khch thng bo vi SMTP my ch a ch ngi gi v a ch ngi nhn. Ngay sau qu trnh gii thiu, my khch s gi th bng dch v truyn d liu tin cy ca TCP. Sau , my khch s lp li cc bc ny khi vn cn bn tin khc gi t my ch, cn nu khng, my khch yu cu TCP ng kt ni li. V d sau l on hi thoi gia my khch (C) v my ch (S). Tn my tnh my khch l yahoo.com v my ch l hamburger.edu. Dng hi thoi m u bng ch C: l on hi thoi my khch gi qua socket TCP v dng hi thoi bt u vi ch S: l on hi thoi my ch gi i thng qua socket TCP. on hi thoi bt u ngay sau khi thit lp c kt ni TCP: S: 220 ptit.edu.vn C: 250 Hello yahoo.com S: 250 Hello crepes. fr, pleased to meet you C: MAIL FROM: <A@crepes. fr> S: 250 A@crepes. fr. . . Sender ok C: RCPT TO: <B@ptit.edu.vn > S: 250 B ptit.edu.vn . . .Recipient ok C : DATA S: 354 Enter mail, end with . Oa a line by itself C: Do you like ketchup? C: How about pickles ? S: 250 Message accepted for delivery C : QUIT Bi ging Mng my tnh Ths. Nguyn Xun Anh 59 S: 221 ptit.edu.vn closing connection. Trong v d trn, my khch gi mt bn tin (Do you like ketchup? How abou pickles?) t my ch th in t yahoo.com ti my ch th in t ptit.edu.vn. Client s dng 5 cu lnh : HELO (vit tt ca HELLO), MAIL FROM, RCPT TO, DATA v QUIT. ngha ca nhng cu lnh ny c th on c qua tn gi ca n. My ch gi tr kt qu thc hin mi lnh, mi cu tr li gm mt m trng thi v mt li gii thch ting Anh. y SMTP s dng kt ni lin tc: Nu c nhiu th gi t cng mt my ch th in t th my ch th in t gi s gi tt c cc th trn cng mt kt ni TCP. vi mi bn tin, my khch bt u tin trnh gi bng lnh HELO yahoo.com v ch gi lnh QUIT sau khi gi tt c th. Giao thc SMTP v HTTP u c s dng gi file gia cc my tnh. HTTP chuyn file hoc i tng t Web my ch ti Web my khch (trnh duyt Web), SMTP chuyn file (l bn tin th in t) gia cc my ch th in t. Khi truyn file c 2 giao thc HTTP v SMTP cng s dng kt ni lin tc. im khc bit c bn gia hai giao thc l HTTP l giao thc kiu ko (Pull protocol) - my khch ko thng tin t my ch v. Pha nhn (my khch) l pha thit lp kt ni TCP. SMTP li l giao thc theo kiu y (Push protocol) - my khch y thng tin ln my ch. Pha gi (my khch) l pha thit lp kt ni TCP trc. Ngoi d liu vn bn, bn tin cn c th cha cc kiu d liu khc nh m thanh hnh nh. HTTP t cc i tng ny trong cc bn tin ring r gi. vi SMTP tt c cc i tng ny c t trong cng mt th in t. Khi A gi th cho B, A s t th vo phong b, ghi r a ch gi v a ch nhn, nhn vin bu in s ng du ngy thng vo phong b. Th in t cng ging nh vy, bn cnh ni dung bc th (phn thn) cng cn c a ch ngi gi, a ch ngi nhn. Nhng thng tin ph tr ny s c t trong cc dng tiu . Cc dng tiu v phn thn ca th c tch bit vi nhau bng lp k t CR-LF. RFC 822 c t y cc dng tiu cng nh ngha ca chng. Ging HTTP, tiu gm t kho, theo sau l du hai chm v mt gi tr no . vi SMTP c mt s trng bt buc, mt s trng khng bt buc. Tiu phi c trng From: v trng To: mt s trng nh Subject: c th c hoc khng, nhng trng ny khc nhng lnh SMTP m c cp n (mc d chng cng c from v To). Cc lnh. l mt phn trong giai on khi to ca SMTP trong khi cc trng nm ngay trong th. Mt bc th thng c tiu nh sau: From: A@yahoo.com To: B@ptit.edu.vn Subject: Searching for the meaning of life Sau phn tiu bn tin l mt dng trng, tip n l thn bn tin (dng m ASCII). Bn tin kt thc bng mt dng ch cha mt du chm cu. Bi ging Mng my tnh Ths. Nguyn Xun Anh 60 Phn tiu bn tin c c t trong RFC 822 ph hp cho vic gi vn bn nhng li khng y gi th cha ni dung a phng tin (multimedia) - l th c nh km nh, audio, video hoc cc th cha cc k t khc ting Anh. gi d liu khng thuc dng vn bn ASCII, user agent gi phi gi thm mt s trng trong tiu ca th. Nhng trng ny c c t trong RFC 2045 v RFC 2046, l phn m rng MIME (Multipurpose Intemet Man Extension) cho RFC 822. Hai trng MIME h tr multimedia l Content-Type: v Content- Transfer-encoding. Trng Content-Type cho php pha nhn thc hin cc thao tc thch hp trn th nhn c. V d, nu ch ra thn bn tin cha nh JPEG, user agent nhn c th gi thn bn tin ti chng trnh gii nn JPG. gi bn tin vn bn khng m ho theo bng m ASCII (v d vn bn ting Trung Quc, Nht bn), ngi ta phi m ho n theo bng m ASCII m khng lm nh hng ti SMTP. Trng Content-Transfer- encoding: xc nh phn thn bn tin c m ho theo bng m ASCII v phng php m ho c s dng. V vy khi user agent nhn c mt bn tin vi hai tiu trn, u tin n s dng gi tr ca tiu Content-Transfer-encoding: chuyn i thn bn tin v dng ban u (khng theo nh dng ASCII) v sau s dng trng Content-Type xc nh thao tc thc hin k tip. Xt v d sau, gi s A mun gi mt nh JPEG cho B . thc hin iu ny, A s dng phn mm Eudora, nh a ch mail ca B , ch ca e-mail v chn nh JPEG vo thn bn tin. Sau khi hon tt vic son tho, A nhn nt send. Sau , user agent ca A to ra mt bn tin MIME c ni dung sau: From: A@yahoo.com To: B@ptit.edu.vn Subject: Picture of yummy crepe. MIME-Version: 1.0 Content-Transfer-encoding: base64 Content-Type: Image/jpeg (base64 encoded data . . . ...base64 encoded data) Vi bn tin MIME trn, chng ta thy rng user agent ca A m ho nh JPEG s dng k thut m ho base64. y l mt trong nhng k thut m ho chun trong MIME [RFC 2045] bin i sang nh dng m ASCII 7 bit. Khi B c th, user agent ca B x l bn tin MIME ny. Thy trng Content- Transfer-endcoding: base64, n thc hin gii m thn bn tin c m ho bng k thut base64. Trng Content-Type: image/jpeg gip cho user agent ca B xc nh rng thn ca bn tin phi c gii nn theo chun JPEG. Cui cng, bn tin cha trng MIME-Version: xc nh phin bn MIME ang c s dng. lu rng, bn tin cng phi tun theo khuyn ngh RFC 822/SMTP. Theo c t MIME trong khuyn ngh RFC 2046, trng Content-Type: c khun dng sau: Content-Type: type/subtype; parmeters Bi ging Mng my tnh Ths. Nguyn Xun Anh 61 Phn tham s sau du chm phy c th khng bt buc. Trong khuyn ngh RFC 2046, trng Content-Type c s dng xc nh kiu d liu trong phn thn ca bn tin MIME, gm hai gi tr: kiu d liu v kiu con. Sau phn kiu v kiu con l phn tham s. Ni chung, kiu cao nht (top-level) c s dng khai bo kiu d liu chung, kiu con (subtype) xc nh nh dng c bit trong kiu d liu chung. Cc tham s b ngha cho kiu v khng nh hng ti bn cht kiu d liu. tp hp tham s ph thuc vo kiu v kiu con. c thit k c th m rng, s lng cc lp type/subtype v nhng tham s i km trong MIME ngy cng tng. bo m l tp hp ny pht trin c trnh t, c c t r rng, MIME cn thit lp qu trnh ng k vi IAAN (Internet Assigned Numbers Authority) l c quan ng k trung tm. Tin trnh ng k kiu d liu c c t trong khuyn ngh RFC 2048. Hin nay, mi c nh ngha cho by nhm d liu chnh. vi mi kiu li c mt danh sch cc kiu con v danh sch ny ang tng ln hng nm. Di y l 5 nhm d liu chnh: - Vn bn (Text): Kiu vn bn c s dng xc nh thn bn tin cha thng tin dng vn bn mt kiu con thng gp l plain (trn). Vn bn trn khng c lnh hay ch dn nh dng khun dng v do khng cn phn mm c bit no hin th. Nu nhn tiu MIME ca th trong hp th bn c th s thy trn tiu c trng text/plain; charset-us-ascii hay text/plain; charset=ISO-8859-1. Nhng tham s ny xc nh b m m bn tin s dng. Mt kiu con khc cng rt thng dng l text/html. Kiu con html yu cu my ch th in t thng dch nhng th HTML gn trong bn tin. iu ny cho php user agent nhn hin th bn tin di dng mt trang Web (vi font, hyperlink, applet v v. v. v). - nh (Image): Kiu nh c dng xc nh thn bn tin l nh. Hai kiu con thng dng l image/gif v image/jpeg. vi kiu con image/gif, mun hin th nh, user agent phi gii nn nh GIF. - m thanh (Audio): Kiu audio yu cu ni dung c gi ra thit b audio (speaker hoc telephone). Kiu con thng dng l basic (m theo lut 8-bit c s) v 32kadpcm (nh dng 32kps c c t trong RFC 1911). - Video: Kiu video c kiu con l mpeg v quicktime. - Kiu ng dng (Application): Kiu ng dng dnh cho d liu khng thuc bt k kiu no khc. N thng c p dng cho loi d liu phi qua mt ng dng khc x l trc khi ngi nhn c th s dng c. V d kh ngi gi gn mt ti liu MS Word vo thng ip E-mail, user agent t gi tr application/msword vo trng type/subtype. Khi user agent thy gi tr application/msword trong trng type/subtype, n khi ng ng dng MS Winword v chuyn phn thn bn tin MIME cho ng dng Word. mt kiu con quan trng khc l l octerstream. Kiu con ny thng c dng khi thn bn tin cha d liu nh phn tu . Khi nhn kiu con ny, mail reader s yu cu ngi nhn la chn lu bn tin trn a x l sau. Bi ging Mng my tnh Ths. Nguyn Xun Anh 62 C mt kiu MIME c bit quan trng l kiu a phn (multipart). Bn tin e- mail cng nh trang Web c th cha nhiu i tng (nh vn bn, nh, applet). Web gi mi i tng trong mt bn tin tr li c lp nhng th in t t tt c cc i tng trong cng mt bn tin. c bit, khi bn tin a phng tin c nhiu i tng th bn tin c kiu l multipart/mixed. Khi nhn c mt bn tin m trng content-type c gi tr multipart/mixed, user agent ni nhn bit bn tin nhn c cha nhiu i tng. Khi nhn c thng ip nh vy, user agent phi xc nh r: - im u v im cui ca i tng. - Cch m ho cc i tng khng theo bng m ASCII. - Kiu ca mi i tng. Cng vic ny c thc hin nh k t phn cch gia cc i tng v trng Content-type, Content-Transfer-Endcoding ng trc mi i tng trong bn tin. Xt v d sau: Gi s A mun gi bn tin bao gm mt on vn bn ASCII, mt nh JPEG v cui cng l mt on vn bn ASCII cho B. S dng user agent ca mnh, A nh mt on vn bn, chn nh JPEG sau nh tip on vn bn cn li. kt qu l user agent ca A to ra mt bn tin nh sau: From: A@yahoo.com. To: B@ptit.edu.vn Subject: Picture of yummy crepe with commentary MIME-Version: 1.0 Content-Type:mu/tipartlmixed; Boundary=StartOfNextPart --StartOfNextPart Dear B , Please find a picture of an absolutely scrumption crepe. - StartOfNextPart Content-Transfer-Encoding: base64 Content-Type: image/jpeg base64 encoded data base64 encoded data --StartOfNextPart Let me know if you would like the recipe. Qua bn tin trn chng ta thy rng trng Content-Type: trong tiu xc nh cch thc phn cch cc phn khc nhau trong cng mt bn tin. Vic phn cch c bt u bng 2 du gch ngang (--) v kt thc bng lp k t CRLF. Bn tin e-mail bao gm nhiu phn, li ca bn tin l phn thn cha d liu thc s c chuyn t ngi gi n ngi nhn. vi bn tin nhiu phn, thn bn tin gm nhiu phn v trc mi phn c mt hoc vi trng xc nh kiu. ng trc thn bn tin l lp CRLF v mt s trng. Nhng trng nh From:, To:, v Subject: c c t trong RFC 822 v nhng trng nh Bi ging Mng my tnh Ths. Nguyn Xun Anh 63 Content-type: v Content- Transfer- endcoding: l tiu MIME. Nhng chnh my ch th in t nhn bn tin cng chn vo bn tin mt s trng khc, v d Received: u bn tin. Trng ny xc nh tn ca SMTP my ch gi bn tin (from), tn ca SMTP my ch nhn bn tin (by) v thi gian khi bn tin ti ch. Ngi c s c c bn tin nh sau: Received: from yahoo.com by ptit.edu; 10 Dec 11 18:37:39 GMT From: A@yahoo.com To: B@ptit.edu.vn Subject: Picture of yummy crepe. MIME-Version:1.0 Content-Transfer-encoding: base64 Content-Type: image/jpeg base64 encoded data . . . . . base64 encoded data Thc ra tt c mi ngi khi ng e-mail u nhn thy trng Received: ng trc bn tin e-mail (trng ny c th nhn thy trc tip trn mn hnh hoc khi in th). C th c nhng bn tin c nhiu trng Received: v trng Return-Path: phc tp. l v bn tin ny c th c chuyn tip qua nhiu my ch th in t trc khi n tay ngi nhn. V d nu B cu hnh my ch th in t ca mnh (ptit.edu.vn) gi chuyn tip tt c cc th ca B ti google.com khi tt c cc th ca B khi ly t google.com s c nhng trng sau: Received: from ptit.edu.vn by google.com; Dec 2011 18:03:01 GMT Received: from crepes. fr by ptit.edu.vn ; 10 Dec 2011 18:03:07 GMT Nhng trng ny cho php ngi nhn theo di vt ng i ca th qua nhiu SMTP my ch cng nh thi gian th ti mi my ch.
Hnh 3.10 Giao thc email v cc thc th truyn thng
Mi khi SMTP gi th t my ch th in t ca A ti my ch th in t ca B , th c t trong mail bom ca B . t trc ti gi, chng ta chp nhn gi thit c th, B phi ng nhp vo my ch th in t v s dng mt chng trnh c th (mail reader) no ci ngay trn my ch th in t. t tn u nhng nm 90, mi ngi vn thc hin nh vy. Nhng ngy nay mi ngi thng c th qua mt user agent chy trn my tnh c Bi ging Mng my tnh Ths. Nguyn Xun Anh 64 nhn ca mnh. Chy user agent trn my tnh c nhn, ngi s dng c c nhiu tnh nng cao cp, k c vic gi v nhn nhng bn tin a phng tin. Gi s B (ngi nhn) chy user agent ca mnh trn my tnh c nhn. C th ci t my ch th in t ngay trn may tnh c nhn ca B . Tuy nhin cch ny c nhiu nhc im. My ch th in t qun l nhiu mailbox, thc hin c chc nng my khch v my ch ca SMTP. Nu ci my ch th in t trn my tnh c nhn ca B th PC lc no cng phi bt v kt ni vo Intemet c th nhn th mi (m th th c th n bt c lc no). iu ny khng thc t vi a s ngi s dng Internet. Thng thng, ngi s dng chy chng trnh user agent trn my tnh c nhn, truy cp vo hp th trn mt my ch th in t dng chung (my ch th in t ny lun lun kt ni ti Internet v c chia x gia nhiu ngi dng khc). My ch th in t thng c ISP ca ngi dng (v trng i hc hoc cng ty) qun l. Do user agent chy trn my tnh c nhn v my ch th in t c qun l Ei cc ISP nn cn c mt giao thc cho php user agent v my ch th in t trao i vi nhau. u tin chng ta xt trng hp th c to ra ti PC ca A c chuyn ti my ch th in t ca B nh th no. Cng vic ny c th c thc hin mt cch n gin bng vic user agent ca A trao i trc tip vi my ch th in t ca B bng giao thc SMTP. User agent ca A s khi to mt kt ni TCP ti my ch th in t ca B , gi nhng lnh khi to SMTP, ti th ln bng lnh DATA v sau ng kt ni li. Cch tip cn ny hon ton c th thc hin c nhng t khi c ng v n khng h tr trng hp my ch th in t pha nhn b trc trc. Trn thc t, user agent gi khi to SMTP ti th ca A ti chnh maii my ch ca A (ch khng phi l my ch th in t ca ngi nhn th). My ch th in t ca A sau s thit lp mt phin lm vic SMTP ti my ch th in t ca B gi tip th t my ch th in t ca B . Nu my ch th in t ca B ngng lm vic th my ch th in t ca A s gi th li v sau c gng gi li. RFC SMTP c nhng lnh gi tip th qua nhiu SMTP my ch. User agent chy trn my tnh c nhn ca B ly bn tin trong hp th trn my ch th in t ca B nh th no ? Gii php l phi c mt giao thc ly th cho php chuyn th t my ch th in t ca B ti my tnh cc b. Hin nay c 2 giao thc ly th thng dng l POP3 (Post Once Protocol - Verson 3) v IMAP (Internet Mail Access Protocol). User agent ca B khng th s dng SMTP ly th bi v ly th ging nh vic ko trong khi SMTP l mt giao thc y. Hnh 3.10 minh ha v vic gi v nhn th. SMTP c dng chuyn th gia cc my ch th in t hay gia user agent ca ngi gi v my ch th in t ca ngi gi. POP3 hay IMAP c ng chuyn th t my ch th in t ti user agent ca ngi nhn. Bi ging Mng my tnh Ths. Nguyn Xun Anh 65 3.2.3.2 POP3 POP3 c c t trong RFC 1939 l giao thc ly th cc k n gin v c rt t chc nng. POP3 c khi to khi user agent (my khch) to kt ni TCP ti mail my ch (my ch) qua cng 110. Sau khi thit lp c kt ni TCP, POP3 gm 3 giai on: kim chng, tin hnh x l v cp nht. Trong giai on kim chng u tin, user agent s dng tn v mt khu xc nhn ngi s dng. Trong giai on tin hnh x l th hai user agent tin hnh ly th. N c th nh du cc th xo hay hy b vic nh u xo. Giai on ba - cp nht, xy ra sau khi my khch ra lnh qut kt thc phin lm vic POP3 . ti thi im mail my ch xo tt c th c nh du. Trong giai on x l, user agent gi lnh v my ch tr li kt qu thc hin ca mi lnh . Mi lnh c hai trng thi kt qu: +OK thng bo lnh va gi c thc hin ng v ERR thng bo lnh va gi khng thc hin c. Giai on kim chng c 2 lnh l user (tn truy nhp) v pass (mt khu). Gi s my ch th in t tn ptit.edu.vn, thc hin lnh telnet kim th nh sau: telnet ptit.edu.vn 110 +OK POP3 server ready user B +OK pass xxxx +OK user successfully logged on Nu nh sai 1 lnh th my ch POP3 s p li bng bn tin -ERR Ngi s dng c th cu hnh user agent mt trong hai ch Ti v xo (download and delete) hay ti v gi (download and keep). Chui lnh c user agent gi ph thuc vo cu hnh ny. Trong ch u, user agent s pht ra chui lnh list, retr v dele. Gi s ngi dng c 2 bn tin trong hp th ca mnh. Trong on hi thoi di y C: (my khch) l user agent v S: (my ch) l my ch th in t. Khi giai on x l cng vic s nh sau: C: list S: 1 498 S: 2 912 S: . C : retr 1 S : (blah blah . . . S: S: blah) S: . C: dele 1 C: retr 2 S : (blah blah . . . . Bi ging Mng my tnh Ths. Nguyn Xun Anh 66 S: S: ..blah) C: dele 2 C : quit S: +OK POP3 sever signing off u tin, user agent yu cu mail my ch lit k kch thc ca tt c th lu tr trong hp th. Sau , user agent by v xo tm th trong hp th. Lu rng sau giai on kim chng ngi ng ch cn 4 cu lnh v list, retr, dele v quit. C php ca cc lnh ny c c t trong RFC 1939. Sau khi x l lnh quit, my ch POP3 vo giai on cp nht v xo th 1, 2 trong mailbox. Trong ch ny, khi B ly th t nhng a im khc nhau, th ca B s nm ri rc trn nhiu my. c bit, nu B ly th t my tnh nh th sau s khng th c li th trn my tnh c quan. Trong ch th hai download and keep, user agent vn li th trn mail my ch sau khi ti v. Khi B vn c th c th t nhiu my khc nhau. Trong phin lm vic POP3 gia user agent v mail my ch, my ch POP3 s ghi nh mt vi thng tin trng thi - v d cc th b nh du xo. Tuy nhin my ch POP3 khng chuyn thng tin trng thi gia cc phin lm vic khc nhau. V d khng c th no c nh u xo u mi phin lm vic. iu ny lm n gin cng vic xy dng mt my ch POP3 3.2.3.3 IMAP Sau khi ti th v t my tnh c nhn, B c th to nhng th mc cha th v chuyn th vo trong cc th mc . Sau B c th xo, chuyn th gia cc th mc hay tm kim th theo tn ngi gi v ch th. Phng thc nh vy bt tin vi ngi s dng mun c th t nhiu ni v h thch duy tr phn cp th mc trn mail my ch c th truy cp c t bt k my tnh no. POP3 khng p ng c yu cu ny. IMAP (c t trong RFC 2060) c th gii quyt vn ny. Ging POP3, IMAP cng l giao thc ly th nhng c nhiu c tnh v do phc tp hn POP3. IMAP c thit k cho php ngi dng thao tc trn nhng hp th xa mt cch d dng. IMAP cho php B to nhng th mc th khc nhau trong hp th. B c th t th vo trong th mc hay dch chuyn th t th mc ny n nhng th mc khc. IMAP cng c lnh cho php tm kim trn th mc theo tiu ch xc nh. IMAP phc tp hn POP3 nhiu v my ch IMAP phi duy tr h thng th mc cho mi ngi dng. Nhng thng tin trng thi nh th phi c mail my ch lu gi cho tt c cc phin lm vic. Nn nh rng POP3 my ch khng lu gi trng thi ca mi ngi dng sau khi phin lm vic kt thc. IMAP c mt c tnh quan trng l c nhng lnh cho php user agent ch ly mt s thnh phn trong th. V d: user agent c th ly phn tiu hoc mt phn trong th c nhiu phn. iu ny rt c ch khi kt ni gia user agent v mail my ch chm, ngi dng c th khng cn ti tt c th trong Bi ging Mng my tnh Ths. Nguyn Xun Anh 67 hp th ca mnh. c bit c th trnh ti nhng th cha ni dung m thanh hay hnh nh c kch thc ln. Phin lm vic IMAP gm 3 giai on: giai on thit lp kt ni gia my khch (user agent) v IMAP my ch, giai on my ch chp nhn kt ni v giai on tng tc my khch lmy ch. tng tc my khch/my ch ca IMAP tng t nhng phong ph hn nhiu tng tc trong POP3. My ch lun mt trong bn trng thi. Trong trng thi cha kim chng l trng thi khi u, khi ngi dng phi ng nhp h thng trc khi thc hin cc lnh. Trng thi kim chng, ngi dng phi chn mt th mc trc khi gi lnh. Trong trng thi la chn, ngi dng c th s dng nhng lnh c th tc ng ti bn tin (nh ly, xo, chuyn th). Cui cng l trng thi thot (logout) khi kt thc phin lm vic. 3.3 Mt s ng dng quen thuc 3.3.1 Trnh duyt web Trnh duyt web l mt phn mm ng dng cho php ngi s dng xem v tng tc vi cc vn bn, hnh nh, on phim, nhc, tr chi v cc thng tin khc trn mt trang web ca mt a ch web trn mng ton cu hoc mng ni b. Vn bn v hnh nh trn mt trang web c th lin kt ti cc trang web khc ca cng mt a ch web hoc a ch web khc. Trnh duyt web cho php ngi s dng truy cp cc thng tin trn cc trang web mt cch nhanh chng v d dng thng qua cc lin kt . Trnh duyt web c nh dng HTML hin th, do vy mt trang web c th hin th khc nhau trn cc trnh duyt khc nhau. Trnh duyt web thng giao tip vi my ch web bng cch s dng giao thc HTTP ly ni dung cc trang web. HTTP cho php cc trnh duyt web gi thng tin n cc my ch web, cng nh ly cc trang web v. HTTP c s dng rng ri nht l HTTP/1.1 c nh ngha trong ti liu RFC 2616. Cc trang c xc nh bng cch thc ca mt URL (Uniform Resource Locator), c coi nh mt a ch bt u bng cm http:// bo cho bit s dng giao thc HTTP. nh dng file ca mt trang web thng l HTML (ngn ng nh du siu vn bn) v c xc nh bi giao thc HTTP s dng kiu ni dung MIME. Phn ln cc trnh duyt h tr nhiu nh dng file khc bn cnh HTML, nh l cc nh dng nh JPEG, PNG, GIF... v c th m rng h tr nhiu hn nh s dng cc plug-in. S kt hp ca kiu ni dung HTTP v c t giao thc URL cho php cc nh thit k trang web c th a nh, hot hnh, video, m thanh v a phng tin c streaming vo trang web, hoc c th truy cp chng thng qua trang web. World Wide Web l mt th vin khng l vi nhiu trang c lu tr trong cc my tnh khc nhau trn khp th gii. Cng vi www, ngi s dng c th lm c nhiu vic hn l ch c thng tin nh mt tp ch thng thng. truy cp vo WWW bn cn mt chng trnh gi l trnh duyt web (Web browsers). Hai trnh duyt web thng dng nht l Netscape Navigator v Bi ging Mng my tnh Ths. Nguyn Xun Anh 68 Microsoft Internet Explorer. Nu nh cung cp dch v Internet (ISP Internet Service Provider) ca bn cung cp cho bn mt phin bn c bn c th t download phin bn mi nht t mng Internet. truy nhp mt trong rt nhiu cc trang thng tin in t ny, ngi s dng phi khi ng trnh duyt v nhp vo a ch ca trang Web. Tt c cc ti nguyn trn Internet u c URL (Uniform Resource Locator, mt xu k t c nh dng xc nh vng ti nguyn) hoc a ch (address), v d http://www.microsoft.com. Http l vit tt ca HyperText Transfer Protocol( Giao thc truyn siu vn bn). N thng bo cho trnh duyt ca bn y l mt ti liu Web v trnh duyt s dng giao thc truyn siu vn bn truy xut thng tin. Tip theo l cm t (www.microsoft.com) tn vng ca my ch m ngi s dng cn truy nhp, chnh l a ch ca my ch cha thng tin trn mng Internet. Tn vng l xc nh nn chng ta c th nh a ch cc my tnh trn mng mt cch d dng. Thc t a ch l mt lot cc ch s v my tnh phi tm trong mt danh sch ln cc a ch v tm ra a ch khp vi n. Mi t theo sau tn vng u l ng dn n th mc v file m trnh duyt cn truy nhp. Trn trang thng tin c c ti v s bao gm cc thnh phn c bn ca mt trang Web nh l vn bn, hnh nh, v mt vi t vi nhng mu sc khc nhau. Nhng t c mu khc ny thng l nhng lin kt (hyper links) n cc trang khc, nu nhn chut mt trang mi tng ng vi lin kt s c np. i khi vic lin kt ny cng c b tr trn cc hnh nh/biu tng, khi nu n vo hnh nh hoc biu tng trn s c ni n mt a ch khc ging nh l nhng cm t i mu. Khi duyt Web, ngi s dng c th m lin tip t trang ny sang trang khc, t lin kt ny n lin kt khc, nu mun quay li mt trang qua th nhn nt Back (hu ht mi trnh duyt u c chc nng ny trn thanh cng c ca trnh duyt). Thng thng, ngi s dng cn phi hiu v s dng thnh tho cc chc nng sau: Nt Home s a v trang mc nh, ngi s dng c th t t trang ny theo yu cu. HyperLink (khi a chut vo y con tr chut s chuyn thnh hnh bn tay): y l mt lin kt, nhn chut vo s dn ti mt trang khc. Cc lin kt ny thng c mu khc vi mu ca phn vn bn khc. Mt lin kt c n s c mu khc vi mu ban u ca n, iu ny gip bn nhn bit nhng trang no ngi dng xem. Addresss: l ni in a ch ca trang Web mun truy nhp. Navigation bar (thanh iu hng) c thit k gip ngi dng chn nhanh mt s trang Web m ch cn nhn nt. Trn thanh c nhiu phn khc nhau tng ng vi cc a ch. Bi ging Mng my tnh Ths. Nguyn Xun Anh 69 3.3.2 Phn mm c th in t Th in t (Email) l phng php gi mt bc th qua mng Internet. Vic gi th in t c nhng u th hn hn phng php gi th thng thng: ngi s dng c th gi n bt c lc no trong ngy m khng cn phi ri khi nh hay phng lm vic v n s c a ti hp th ngi nhn trong vi pht sau . s dng email, ngi s dng phi truy nhp vo trang Web mail ca nh cung cp dch v th in t v thao tc theo hng dn ca nh cung cp dch v ny. a s cc my tnh ca ngi s dng ci t phn cn phn mm gi l email client, chng trnh email client cho PC ph bin hin nay l Outlook Express (S c trnh by chi tit trong chng sau). a ch email thng gm tn, theo sau l @, v tip theo l tn min ca nh cung cp dch v th in t. Phn tn do ngi s dng t qui nh, phn tn min phi tun th theo tn min ca nh cung cp dch v. V d @yahoo.com l tn min ca YAHOO.... 3.3.3 Trnh a phng tin Trnh a phng tin (Media player) l mt thut ng c th ch nhng phn mm my tnh c chc nng thc thi cc tp tin a phng tin. Hu ht cc trnh a phng tin u h tr mt s cc nh dng tp tin media, trong c c cc tp tin audio (m thanh s) v video (hnh nh s). Mt s trnh a phng tin li ch tp trung vo cc nh dng m thanh (audio) hoc video, v c gi tng ng vi l trnh audio (audio player) v trnh video (video player). Nhng nh sn xut ra cc trnh ng dng ny thng ch trng vo vic cung cp cho ngi dng nhng tri nghim tt nht v cc nh dng m h tp trung hng n. Trnh a phng tin quen thuc vi nhiu ngi dng nht l Windows Media Player c tch hp sn trn Microsoft Windows. Hin phin bn mi nht ca ng dng ny l Windows Media Player 11, c tch hp cng vi Windows Vista, v cng c th ti v ci v s dng trn Windows XP SP2. Ngi dng Mac OS X c th dng Quicktime Player xem cc nh dng Quicktime v iTunes thc thi nhiu nh dng media khc nhau. Winamp l trnh a phng tin ch chy trn Windows xong h tr c Apple iPod v nhiu thit b di ng nh Creative's Zen hay chi audio v video. Vi cc bn phn phi ca Linux, cng c mt s lng a dng cc trnh a phng tin nh VLC, MPlayer, xine, hay Totem. 3.3.4 Tin ch Telnet, rlogin, ssh TELNET (vit tt ca TErminaL NETwork) l mt tin ch mng giao din dng lnh c dng cung cp nhng phin giao dch ng nhp vo cc my trn mng, to cm gic nh mt thit b cui c gn vo mt my tnh khc. TELNET vn c ci t sn trong hu ht cc h iu hnh, song vi s tin trin gn y SSH (Secure Shell) tr nn mt giao thc c u th hn trong vic truy cp t xa. SSH cng c ci t sn cho hu ht cc loi my vi tnh. Bi ging Mng my tnh Ths. Nguyn Xun Anh 70
Bi ging Mng my tnh Ths. Nguyn Xun Anh 71 CHNG 4: TNG VN TI Nm gia tng ng dng v tng mng, tng vn ti l tng trung tm trong kin trc phn tng vi nhim v cung cp dch v truyn thng gia cc tin trnh ng dng chy trn cc my tnh khc nhau. Giao thc tng vn ti cung cp mt knh truyn logic (o) gia cc tin trnh ng dng chy trn my tnh khc nhau. Gi l logic v khng tn ti mt ng truyn vt l thc s gia hai tin trnh. Cc tin trnh ng dng s s dng ng truyn o ny trao i bn tin m khng phi bn tm v c s h tng ca mi trng vt l thc s. pha gi, thc th vn ti chn bn tin m n nhn c t tin trnh ng dng vo cc 4-PDU (l n v d liu ca giao thc tng vn ti - Protocol Data Unit). Cng vic c thc hin bng cch chia bn tin thnh nhiu on nh, b sung vo u mi on tiu ca tng vn ti to ra gi d liu ca tng vn ti (4-PDU). Sau tng vn ti truyn gi d liu (4-PDU) xung tng mng, ti y mi gi ny c t trong gi d liu ca tng mng (3-PDU). pha nhn, tng vn ti nhn gi d liu t tng mng, loi b phn tiu ca gi d liu 4-PDU, ghp chng li thnh mt bn tin hon chnh v chuyn cho tin trnh ng dng nhn. Trn mng my tnh c th c nhiu giao thc hot ng tng vn ti. Mi giao thc c th cung cp cc dch v vi cht lng khc nhau cho ng dng. Tt c giao thc tng giao vn u cung cp dch v ghp knh (multiplex) v phn knh (demultiplex), iu ny s ni c th trong cc phn sau. Ngoi dch v ghp knh/phn knh, tng vn ti cn c th cung cp cc dch v khc cho tin trnh ng dng nh truyn d liu tin cy. 4.1 Ghp knh v phn knh, cc giao thc TCP v UDP 4.1.1 Ghp knh v phn knh Ghp knh/phn knh khng phi l mt trong nhng chc nng chnh ca tng vn ti, nhng n li l cng vic rt cn thit. hiu ti sao nh vy, ta thy rng IP truyn d liu gia hai thit b u cui, mi thit b c mt a ch IP nht nh. IP khng truyn d liu gia cc tin trnh ng dng chy trn cc my tnh. M rng vic gi - t my tnh n my tnh - t tin trnh n tin trnh l cng vic ghp knh v phn knh. Ti my tnh nhn, tng vn ti nhn on d liu t tng mng ngay pha di v c trch nhim gi d liu trong on d liu ny ti tin trnh ng dng thch hp trn my tnh. Gi s ti mt thi im my tnh ca ngi s dng ang ti trang Web, chy mt phin FTP v hai phin Telnet. Nh vy c tt c 4 tin trnh ang chy ti tng ng dng: 2 tin trnh Telnet, 1 tin trnh FTP, v 1 tin trnh HTTP. Khi tng vn ti trong my tnh ca ngi s dng nhn c d liu t tng mng chuyn ln, n phi gi d liu trong ti 1 trong 4 tin trnh trn. Mi on tin ca tng vn ti c trng xc nh tin trnh nhn d liu. Tng vn ti bn nhn s s dng trng ny xc nh r tin trnh nhn v Bi ging Mng my tnh Ths. Nguyn Xun Anh 72 gi d liu trong on tin ti tin trnh . Cng vic chuyn d liu trong on tin ti ng tin trnh ng dng c gi l phn knh. Ti thit b gi, tng vn ti nhn d liu t nhiu tin trnh ng dng khc nhau, to on tin cha d liu cng vi mt s thng tin tiu v cui cng chuyn on tin xung tng mng. Qu trnh trn c gi l ghp knh.
Hnh 4.1 Dch v ghp knh, phn knh
UDP v TCP thc hin vic ghp knh v phn knh nh hai trng c bit u on tin: trng nh danh cng tin trnh gi (cng ngun - source port number) v trng nh danh cng tin trnh nhn (cng ch - destination port number), hai trng ny c minh ha trn hnh 4.2. Chng xc nh mt tin trnh ng dng duy nht chy trn my tnh. Tt nhin UDP v TCP cn c nhiu trng khc m chng ta s nghin cu sau. 32 bits
Cng ngun Cng ch Cc thng tin iu khin khc
D liu ca tng ng dng
Hnh 4.2 Trng a ch tin trnh gi, tin trnh nhn trong on tin
S hiu cng l mt con s 16 bit, nhn gi tr t 0 ti 65535. Cc gi tr t 0 n 1023 l cc gi tr dng cho cc dch v cng cng, tc l ch cho cc ng dng thng dng nh HTTP, FTP s dng. HTTP s dng cng 80, FTP s dng cng 20 v 21. Danh sch cc cng thng dng c th tham kho Bi ging Mng my tnh Ths. Nguyn Xun Anh 73 trong RFC 1700. Khi xy dng mt ng dng mi, phi xc nh s hiu cng cho ng dng ny. Bng 4.1: Mt s ng dng v giao thc ti tng vn ti ng dng Giao thc tng ng dng Tng vn ti tng ng Th in t SMTP TCP Truy cp t xa Telnet TCP Web HTTP TCP Truyn file FTP TCP File my ch NFS thng l UDP a phng tin Ph thuc hng sn xut thng l UDP in thoi qua Internet Ph thuc hng sn xut thng l UDP Qun l mng SNMP thng l UDP nh tuyn RIP thng l UDP Tn min DNS thng l UDP
Mi ng dng chy trn thit b u cui c s hiu cng nht nh. Bi vy vn t ra l ti sao mi on tin tng vn ti u c trng s hiu cng ngun v ch. Mt thit b u cui c th chy ng thi hai tin trnh cng kiu, nh vy s hiu cng ch cha phn bit cc tin trnh. Gi s my ch web chy tin trnh HTTP x l cc bn tin yu cu; khi my ch web phc v nhiu yu cu cng mt lc th my ch s chy nhiu tin trnh trn cng 80. gi d liu n tin trnh nhn, phi xc nh s hiu cng ca pha gi (cng ngun).
Hnh 4.3 S dng s hiu cng ngun/ch trong trnh ng dng khch/ch
Thng thng, my tnh no khi u trc ng vai tr my khch, my tnh kia ng vai tr my ch. Xt v d mt tin trnh ngi s dng Telnet my ch. on tin tng vn ti khi ri my khch chuyn ti my ch c s Bi ging Mng my tnh Ths. Nguyn Xun Anh 74 hiu cng ngun l mt gi tr ngu nhin (khng c php l gi tr ca cng c mt tin trnh no s dng) v s hiu cng ch (cng ca tin trnh nhn) bt buc phi l 23. Gi s pha my khch chn s hiu cng l X th mi on tin c gi t ng dng Telnet c cng ngun l x, cng ch l 23. Khi on tin ti my ch, cn c vo s hiu cng l 23, my ch s chuyn d liu trong on tin ti tin trnh Telnet. on tin truyn t my ch ti my khch s o ngc s hiu cng. Cng ngun by gi s l cng ca ng dng c gi tr 23, cn cng ch s l X (l s hiu cng ngun trong on tin gi t my khch ti my ch). Khi on tin ti, my khch cng s cn c vo s hiu cng ngun v ch gi d liu trong segment ti ng tin trnh ng dng, hnh 4.3 minh ha qu trnh trn.
Hnh 4.4 Cc tin trnh cng to kt ni n mt dch v
Xt trng hp hai my khch khc nhau cng thit lp phin lm vic ti mt my ch v mi my khch u chn cng ngun l X, iu ny hon ton c th xy ra vi nhng my ch c nhiu ngi truy cp. Khi my ch phi s dng a ch IP trong gi d liu IP cha on tin. Trn hnh 4.4, my C c hai phin lm vic v my A c mt phin lm vic HTTP ti cng my ch B. c ba my A, B, C u c a ch IP phn bit ln lt l A, B, C. Bi ging Mng my tnh Ths. Nguyn Xun Anh 75 My C s dng hai cng ngun (X,Y) khc nhau cho hai kt ni HTTP ti B. A chn s hiu cng ngun c lp vi C nn n c th gn cng ngun x cho kt ni HTTP ca mnh. Tuy nhin my ch B vn c th thc hin phn knh hai on tin c lp cng ging nhau do a ch IP ngun khc nhau. Tm li, bn nhn s dng c ba gi tr (a ch IP ngun, s hiu cng ngun, s hiu cng ch) xc nh tin trnh ng dng nhn. 4.1.2 Giao thc TCP TCP l mt giao thc tng vn ti cung cp dch v truyn d liu tin cy, n s dng nhiu nguyn l m bo truyn tnh tin cy nh: pht hin li, nh s th t cc on tin, c ch xc nhn. Giao thc TCP thuc loi kt ni c hng v trc khi gi d liu ca lp ng dng phi c th tc Bt tay, ngha l chng phi gi mt s on tin c bit xc nh cc tham s m bo cho qu trnh truyn d liu. TCP c c t trong cc khuyn ngh RFC 793, RFC 1122, RFC 1323, RFC 2018, RFC 2581. Giao thc TCP c cc c im sau: - nh hng kt ni: Trc khi truyn d liu phi thc hin th tc thit lp lin kt, sau khi truyn d liu xong th mt trong hai bn hoc c hai bn gi tn hiu yu cu hy b lin kt. - nh s tun s: Mi on tin trc khi gi i phi c nh s tun t, da vo c ch ny m bn nhn s sp xp li cc on tin chnh xc v ng thi pht hin c nhng on tin b tht lc. - m bo tnh tin cy: Li c th xy ra khi mt on tin no b tht lc hoc ni dung on tin b thay i. Trong c hai trng hp trn, giao thc TCP s yu cu gi li. - iu khin lu lng: nng lc x l ca mi my tnh ch c hn nht nh (thng ph thuc ba ti nguyn c bn trong mi my tnh: tc c CPU, dung lng b nh, tc c/ghi thit b lu tr, ngoi ra c th xt thm cc yu t khc nh: s lng ngi dng, bng thng mng...). Nu khng c c ch iu khin lu lng th bn nhn c th khng kp x l cc on tin gi n v dn n tnh trng li nh: trn b nh, treo h thng. 4.1.3 Giao thc UDP Giao thc UDP (RFC 768) l giao thc thuc tng vn ti, ngoi chc nng ghp knh/phn knh, UDP c thm c ch pht hin li n gin (chc nng pht hin v sa li s c chuyn ln tng ng dng). C th ni, nu s dng UDP th gn nh ng dng lm vic trc tip vi tng mng IP. UDP ly bn tin t tin trnh ng dng, chn thm mt s trng iu khin, trong c hai trng a ch cng ngun v ch cho chc nng Ghp knh/phn knh to nn d liu (gi l datagram) v c chuyn xung tng mng. Tng mng t datagram ny trong gi tin v c gng gi gi IP ti my tnh nhn. UDP khng i hi bn gi v bn nhn phi thit lp lin kt trc khi trao i d liu. V vy UDP c xem l giao thc kt ni v hng hay khng lin kt. Giao thc UDP dng nh khng c c nhiu u im nh giao thc TCP: truyn d liu Bi ging Mng my tnh Ths. Nguyn Xun Anh 76 tin cy, kim sot lu lng, tuy nhin trn thc t giao thc UDP c s dng nhiu hn v nhng c im sau: - Khng cn thit lp lin kt: Giao thc TCP s dng c ch bt tay ba bc trc khi truyn d liu nhng giao thc UDP khng cn c ch. V vy UDP s khng phi mt thi gian thit lp ng truyn. y chnh l nguyn nhn dch v DNS chy trn UDP ch khng phi l TCP, DNS s chy chm nu s dng TCP. HTTP s dng TCP v cc i tng Web cn c ti v chnh xc, do yu cu mt ng truyn tin cy. - Khng duy tr trng thi kt ni. TCP ghi nh trng thi kt ni trn h thng u cui. Trng thi kt ni bao gm vng m ca bn nhn v bn gi, cc tham s kim sot tc nghn, s tun t pht v s bin nhn. Cc thng s gip TCP trin khai dch v truyn tin tin cy v c ch kim sot tc nghn. UDP khng phi lu gi nhng thng tin nh vy, do nu pha my ch s dng UDP th c kh nng phc v ng thi nhiu my khch hn. - Thng tin iu khin t hn: Thng tin iu khin ca on tin TCP ti thiu l 20 bytes trong khi UDP ch c 8 bytes. - Khng kim sot tc gi. TCP c c ch kim sot tc nghn, iu chnh tc gi khi xy ra tc nghn. C ch iu chnh ny c th nh hng ti nhng ng dng thi gian thc, l nhng ng dng chp nhn mt mt d liu nhng li i hi phi c mt tc truyn ti thiu. Tc truyn d liu ca UDP ch b gii hn bi tc sinh d liu ca tng ng dng, kh nng my tnh ngun (CPU, tc ng h) v tc truy nhp mng. Bn nhn khng nht thit phi nhn ton b d liu, khi nghn mng, mt phn d liu c th b mt do trn vng m cc thit b mng, tc nhn c th b gii hn do tc nghn ngay c khi tc gi khng b hn ch. Cc ng dng ph bin nh: Email, truy cp t xa, Web v truyn tp tin chy trn nn TCP v chng cn n dch v truyn d liu tin cy. Tuy nhin c mt s ng dng khc thch hp vi UDP hn TCP nh: Giao thc cp nht bng nh tuyn RIP s dng UDP, bi v vic cp nht c thc hin nh k, cho nn d cp nht b mt nhng s c cp nht mi sau mt khong thi gian ngn. UDP c s dng gi d liu qun tr mng SNMP, trong trng hp ny UDP thch hp hn TCP v cc tin trnh qun tr mng thng hot ng khi mng c s c khng th truyn d liu chnh xc hay c ch kim sot tc nghn khng lm vic. DNS s dng UDP, do c th trnh c thi gian tr ca giai on thit lp kt ni. Ngy nay UDP thng c cc ng dng a phng tin nh in thoi Internet, hi tho t xa, cc ng dng thi gian thc. Cc ng dng ny chp nhn mt mt, li trn mt phn d liu, v th truyn d liu tin cy khng phi l tiu ch quan trng nht nh gi s thnh cng ca ng dng. Hn na cc ng dng thi gian thc nh in thoi Internet v hi tho t xa khng thch ng c vi c ch kim sot tc nghn ca TCP, do cc ng dng a phng tin v thi gian thc thng la chn UDP tng vn ti. Bi ging Mng my tnh Ths. Nguyn Xun Anh 77 Mc d trin khai trong thc t, song vic cc ng dng a phng tin s dng UDP gy ra nhiu tranh ci. UDP khng kim sot c tc nghn nn l nguyn nhn tim n gy nghn mng, khi ch rt t thng tin c chuyn trn mng. Nu tt c mi ngi u xem phim trc tuyn th cc gi tin s b trn b m cc thit b mng v khng c ai s dng c dch v ny. Thiu c ch kim sot tc nghn l mt trong nhng nhc im ca giao thc UDP. 4.1.3.1 Cu trc d liu ca giao thc UDP Cu trc d liu ca giao thc UDP c m t trong RFC 768. d liu ca ng dng nm trong trng d liu ca UDP datagram. V d i vi DNS, trng d liu cha bn tin yu cu hay bn tin tr li. 32 bits
Cng ngun Cng ch Chiu di Checksum
D liu tng ng dng Hnh 4.5 Cu trc UDP datagram
Phn thng tin iu khin UDP c bn trng, ln mi trng l hai byte. S hiu cng cho php thit b gi chuyn d liu ti ng tin trnh chy trn thit b nhn. Trng Checksum c bn nhn s dng kim tra trong datagram c li hay khng. Trng di (Length) cho bit di (tnh theo byte) ca ton b UDP datagram, k c phn thng tin iu khin. 4.1.3.2 Cch tnh UDP checksum UDP checksum c s dng pht hin li, n c tnh nh sau: tnh gi tr b mt ca tng cc t 16 bit trong datagram, gi tr nhn c c t vo trng checksum trong UDP datagram. Gi s c ba t 16 bit sau y: 0110011001100110 0101010101010101 0000111100001111 Tng hai t u l: 0110011001100110 0101010101010101 1011101110111011 Cng t th ba vo, ta c: 1011101110111011 0000111100001111 1100101011001010 Bi ging Mng my tnh Ths. Nguyn Xun Anh 78 Cch ly b mt l o 0 thnh 1 v 1 thnh 0. V vy kt qu php ly b mt ca 1100101011001010 l 0011010100110101 v chnh l gi tr checksum. Ti pha nhn, tt c bn t (k c checksum) c cng li. Nu d liu khng c li th tng nhn c phi chui cc bit 1, tc l 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1. Nu c mt bt no bng 0 th chc chn d liu nhn c b li. Mc d UDP c th pht hin li nhng n khng x l li. Datagram li c th b loi b, nhng cng c th c chuyn ln tng ng dng km theo cnh bo. 4.2 Cc nguyn l truyn tin cy Truyn d liu tin cy l mt trong nhng chc nng chnh ca tng vn ti, tuy nhin chc nng ny cng xut hin tng lin kt d liu hay tng ng dng. Hnh 4.5a l s cu trc ca qu trnh truyn d liu tin cy, tng di cung cp mt dch v truyn tin cy cho cc thc th tng trn.
Hnh 4.5 Nguyn l truyn d liu tin cy Trn ng truyn tin cy ny, d liu khng b li (bit 0 bin thnh bit 1 hoc ngc li), khng b mt v c nhn theo ng th t gi. y chnh l dch v m giao thc TCP cung cp cho cc ng dng Internet. thc hin cng vic ny, ngi ta cn n nhng giao thc truyn d liu tin cy. Nguyn nhn l tng pha di ca giao thc tin cy l khng tin cy. V d TCP l giao thc truyn d liu tin cy nm pha trn giao thc truyn khng tin cy (IP) gia hai thit b u cui trn mng. n gin chng ta coi tng pha di l mt ng truyn im ni im (point-to-point) khng tin cy (Hnh 4.5b). Thc th gi s nhn d liu t pha trn chuyn xung qua hm rdt-send(), pha nhn s dng hm rdt_rcv() ly gi d liu t ng truyn. chuyn d liu ln tng trn, pha nhn s dng hm deliver_data(). Bi ging Mng my tnh Ths. Nguyn Xun Anh 79 4.2.1 Xy dng giao thc truyn d liu tin cy tm hiu c ch truyn d liu tin cy, chng ta s m t trng thi ca pha nhn v pha gi bng k thut my hu hn trng thi (finite state machine - FSM). 4.2.1.1 Truyn d liu tin cy trn knh tin cy hon ton Giao thc u tin, n gin nht c a ra - rdt 1.0 s dng knh truyn tin cy pha di. FSM ca bn gi v bn nhn u ch c mt trng thi (xem hnh 4.6). Mc d mi FSM trong hnh 4.6 ch c mt trng thi nhng vn cn n s chuyn trng thi quay v chnh trng thi c. S kin kch hot vic chuyn trng thi c t pha trn ng k nm ngang, l nhn s kin. Pha bn di ng k nm ngang l nhng hnh ng m thc th phi thc hin ngay khi s kin xy ra (thc hin trc khi thc th chuyn sang trng thi mi). Vi rdt1.0, vic gi n gin ch l nhn d liu t tng trn thng qua s kin rdt_send(data), to ra on d liu bng hm make_data (packet,data) v gi on d liu ln knh truyn. Trn thc t, s kin rdt_send(data) l kt qu ca mt th tc, v d khi ng dng pha trn s dng hm rdt_send().
Hnh 4.6 Giao thc cho knh truyn tin cy hon ton
bn nhn, rdt nhn gi d liu (packet) t knh truyn bng s kin rdt_rcv(packet), ly d liu ra khi gi d liu bng hm extract (packet,data) v a d liu ln tng trn. Trn thc t, s kin rdt_rcv(packet) l kt qu ca mt th tc, v d khi ng dng pha trn s dng hm rdt_rcv(). Trong giao thc n gin ny, khng c s khc bit gia d liu (data) vi gi d liu (packet). Nh vy, tt c packet u c truyn t pha gi cho pha nhn. vi knh truyn tin cy, pha nhn khng cn thit phi phn hi cho pha gi v n chc rng khng c chuyn g xy ra. Ch rng, chng ta gi thit pha nhn c th nhn d liu vi tc pha gi gi. V vy, pha nhn khng cn yu cu pha gi gi chm li. 4.2.1.2 Truyn d liu tin cy trn knh truyn c li bit Mt dng knh truyn thc t hn l gi d liu trn knh truyn c th b li. Thng bit b li trn ng truyn vt l ca mng. Gi s tt c cc gi d liu truyn i u n c ch v theo ng th t gi mc d cc bit trong Bi ging Mng my tnh Ths. Nguyn Xun Anh 80 gi d liu c th b li. Trong thc t cuc sng, khi hai ngi ni chuyn vi nhau, nu ngi nghe r th xc nhn, ngc li s yu cu ngi ni nhc li. C ch ny c p dng cho rdt 2.0. Trong mng my tnh, giao thc truyn tin cy da trn c ch truyn li nh vy c gi l cc giao thc ARQ (Automatic Repeat request).
Bn gi Bn nhn
Hnh 4.7 Giao thc cho knh truyn c li bit
Cc giao thc ARQ cn phi c ba kh nng sau x l trong trng hp c li bit: - Pht hin li: l c ch cho php bn nhn pht hin c khi no trong gi d liu c bit b li, thng s dng k thut CRC thc hin cng vic ny. - Phn hi t pha nhn: Khi pha gi v pha nhn nm trn cc thit b u cui khc nhau - c th cch nhau hng nghn km, cch duy nht pha gi bit c kt qu gi l pha nhn gi thng tin phn hi thng bo tnh trng nhn cho pha gi. Bo nhn ng ACK v bo nhn sai NAK trong v d trn chnh l cc thng tin phn hi. Giao thc rdt 2.0 yu cu pha nhn gi phn hi cc bn tin ACK hay NAK cho pha gi. on d liu phn hi ch cn s dng mt bit, v d gi tr 0 ng vi NAK v gi tr 1 ng vi ACK. - Truyn li: on d liu b li s c bn gi pht li. Trong giao thc rdt 2.0, pha gi c hai trng thi. trng thi th nht, pha gi i d liu t tng trn. Trong trng thi th hai, bn gi i phn hi ACK hoc NAK t bn nhn. Nu nhn c ACK t rdt_rcv(rcvpkt) && isACK(rcvpkt) tng ng vi s kin ny, bn gi bit c on d liu chuyn n ch an ton, v vy n tr v trng thi i d liu t tng trn chuyn tip. Nu nhn c NAK, bn gi gi li on d liu ri quay li trng thi i phn hi ACK hoc NAK cho on d liu va gi li. Khi bn gi trong trng thi ch phn hi (ACK hoc NAK), n khng th nhn thm d liu t tng trn a xung. N ch chp nhn d liu khi nhn c ACK v chuyn trng thi. Bn gi khng gi d liu cho n khi n chc chn rng bn nhn Bi ging Mng my tnh Ths. Nguyn Xun Anh 81 nhn ng on d liu gi. Giao thc rdt 2.0 vi hnh vi nh vy thuc kiu dng v ch (stop and wait).
Hnh 4.8 FSM ca bn gi trong rdt 2.1
FSM bn nhn trong giao thc rdt 2.0 ch c mt trng thi duy nht. Khi nhn c on d liu, bn nhn gi bn tin phn hi ACK hoc NAK, ph thuc vo on d liu nhn c li hay khng. Trong hnh 4.7, rdt_rcv (rcvpkt) && corrups(rcvpkt) tng ng vi s kin on d liu nhn c b li.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 82
Hnh 4.9 FSM ca pha nhn trong rdt 2.1
Giao thc rdt 2.0 vn cn nhc im: chng ta cha tnh n kh nng chnh on tin ACK hoc NAK c li. Chnh on tin phn hi (ACK hoc NAK) cng cn phi c trng kim tra li bn gi (lc ny li l bn nhn) c kh nng pht hin li trong chnh gi phn hi. Vn y l khi nhn c mt gi phn hi b li, pha gi khng th xc nh n l ACK nay NAK, do khng xc nh c on d liu n gi t ch c b li hay khng. Trong trng hp ny, c ba gii php x l ACK hoc NAK b li: - Gii php th nht, dng xc nhn khc tng t nh ACK, tuy nhin c th xy ra li lin hon, do gii php ny kh c th p dng. - Gii php th hai l thm vo trng kim tra mt s bit khng nhng cho php bn nhn pht hin m cn sa c cc bit li. y hon ton c th l gii php trung gian cho nhng knh truyn c li nhng khng x l c trng hp ton b on d liu b mt. - Gii php th ba, pha gi pht li gi d liu nu pht hin li trong gi phn hi (ACK hoc NAK). Tuy nhin, phng php ny c th dn n s trng lp d liu. Bn nhn khng bit c ACK/NAK m n gi phn hi Bi ging Mng my tnh Ths. Nguyn Xun Anh 83 c b li trn ng truyn khng. V th n khng xc nh c gi d liu va nhn c l gi d liu mi hay gi c. Gii php n gin nht cho vn ny (s c p dng cho nhiu giao thc, k c TCP) l thm mt trng s th t cho on d liu, pha gi nh s cho cc gi d liu v t gi tr ny vo trng s th t (sequence number). Bn nhn ch cn kim tra s th t xc nh on d liu nhn c l on mi hay on truyn li. Vi giao thc stop and wait n gin, ch cn mt bit s th t. Bn nhn c th xc nh bn gi gi li on d liu gi ln trc (s th t ca on d liu nhn c trng vi s th t vi on d liu nhn c ln trc) hay on d liu mi (c s th t khc nhau, tng ln theo module 2). V chng ta vn gi nh ton b on d liu khng b mt trn knh truyn, nn trong on d liu phn hi (ACK/NAK) khng cn ch ra s th t ca on d liu m chng bin nhn. Bn gi bit rng on d liu ACK/NAK (c th b li hoc khng) l bin nhn cho on d liu gn nht n gi. Hnh 4.8 v 4.9 l FSM ca bn gi v nhn trong giao thc rdt 2.1. Trong rdt 2.1, FSM ca bn gi v nhn u c s trng thi tng gp i. l v trng thi giao thc phi biu din gi d liu c gi (bi bn gi) v gi d liu c i (ti bn nhn) c s th t l 0 hay 1. Ch rng cc hnh ng trong trng thi gi d liu c s th t 0 c gi (pha gi) hoc c mong i (pha nhn) ngc vi trng thi gi d liu c s th t 1 c gi hay c i. Giao thc rdt 2.1 s dng c bin nhn ng (ACK) v bin nhn sai (NAK). NAK c gi khi nhn c gi d liu b li hay khng ng s th t. Chng ta c th khng cn s dng NAK: thay v vic gi NAK, chng ta gi ACK cho gi d liu cui cng c nhn ng. Nu nhn hai ACK cho cng mt gi d liu (hin tng trng ACK - duplicate ACK) bn gi xc nh c bn nhn khng nhn ng gi d liu sau gi d liu bin nhn ACK hai ln. TCP s dng s kin 3 ln nhn c ACK trng nhau (tripie dupiicate ACKs) kch hot vic gi li rdt 2.2 l giao thc truyn d liu tin cy trn knh truyn c bt li khng s dng NAK. 4.2.1.3 Truyn d liu tin cy khi c li D liu trn knh truyn khng nhng b li m cn c th b mt, y l tnh hung khng phi khng ph bin trong mng my tnh ngy nay, k c Internet. Lc ny giao thc cn phi gii quyt hai vn : lm th no pht hin gi d liu b mt v lm g khi mt gi d liu. s dng c ch pht hin li nh checksum, s th t, bin nhn ACK v truyn li gi d liu - c pht trin trong giao thc rdt 2.2 - cho php chng ta gii quyt c vn th hai. gii quyt vn th nht, chng ta cn n mt c ch mi. Bi ging Mng my tnh Ths. Nguyn Xun Anh 84
Hnh 4.10 FSM ca bn gi trong rdt 3.0
C nhiu gii php x l vic mt mt d liu. y chng ta trnh by gii php la chn bn gi l ni pht hin v x l vic mt d liu. Gi s pha gi gi i gi d liu nhng chnh gi d liu hoc bin nhn ACK cho n b mt trn ng truyn. Trong c hai trng hp, bn gi u khng nhn c bin nhn cho gi d liu gi. Gii php c a ra l sau khi gi mt khong thi gian no m khng nhn c bin nhn ACK (c th gi d liu b mt) th bn gi s gi li. Nhng pha gi phi i trong bao lu chc chn rng gi d liu b mt? t nht pha gi phi i trong khong thi gian gi tin i n c pha nhn, pha nhn x l gi tin v thng tin bin nhn quay li. Trong nhiu mng, rt kh d on v c lc thi gian ny. L tng l phi x l vic mt gi tin ngay khi c th, i mt khong thi gian di ng ngha vi vic chm tr khi x l gi tin b mt. Trn thc t, pha gi s chn mt khong thi gian i no , mc d khng m bo chc chn l gi tin b mt. Nu khng nhn c ACK trong khong thi gian ny, bn gi s gi li gi d liu Ch rng, nu gi d liu n tr, pha gi s gi li gi d liu - ngay c khi gi d liu v c ACK u khng b mt. iu ny gy ra trng lp d liu ti pha nhn. Tuy nhin, giao thc rdt 2.2 c kh nng (nh s th t) ngn chn s trng lp d liu. Bi ging Mng my tnh Ths. Nguyn Xun Anh 85
Hnh 4.11 Hot ng ca giao thc rdt 3.0
i vi pha gi, truyn li l gii php vn nng. Pha gi khng bit c gi d liu b mt, gi bin nhn ACK b mt hay ch n gin l chng b tr. Trong tt c cc trng hp, hnh ng ca n l ging nhau: truyn li. thc hin c ch truyn li theo thi gian, mt b nh thi m ngc (countdown timer) c s dng nhc pha gi thi gian i ht. Do vy, pha gi phi c kh nng (1) khi to timer mi khi gi gi d liu (gi d liu gi ln u hay gi d liu c truyn li), (2) phn ng vi ngt ca timer (a ra nhng hnh ng thch hp) v (3) dng timer. S trng lp cc gi d liu do pha gi to ra, s mt mt cc gi d liu (c gi d liu ln gi bin nhn) gy kh khn cho pha gi khi x l cc gi bin nhn ACK. Nu nhn c ACK, lm th no pha gi bit c ACK l bin nhn cho gi d liu gi i gn y nht, hay l ACK bin nhn cho gi d liu no gi t trc nhng n tr? Gii php l ta thm vo gi ACK trng s th t bin nhn (acknowledge number). Gi tr ca trng ny - do pha nhn to ra - l s th t ca chnh gi d liu cn c bin nhn. Bng cch kim tra gi tr trng bin nhn, pha gi c th xc nh c s th t ca gi d liu c bin nhn. Thi gian dch chuyn theo chiu t trn xung. Thi im nhn gi d liu chm hn thi im gi gi d liu v tnh Bi ging Mng my tnh Ths. Nguyn Xun Anh 86 n thi gian gi d liu lan to trn ng truyn. Trong hnh 4.11b-d, ngoc vung xc nh thi im timer c thit lp v thi im timeout. V s th t ca gi d liu thay i ln lt gia 0 v 1 nn i khi giao thc rdt 3.0 c gi l giao thc mt bit lun chuyn (alternate bit protocol). 4.3 iu khin lu lng iu khin lu lng l hnh ng thay i tc chuyn d liu gia bn gi v bn nhn trnh hin tng bn nhn khng kp x l. Nhim v ca n l m bo rng bn gi khng th tip tc truyn d liu nhanh hn mc m bn nhn c th tip thu c. iu khin lu lng c thc hin bng cch bn nhn thng bo cho bn gi bit v kh nng x l d liu ca n. iu khin tc nghn thc hin nhim v m bo cho mng c kh nng vn chuyn lu lng a vo, y l vn ton cc trn mng, lin quan n hnh vi ca mi nt mng, qu trnh cha v chuyn tip trong mi nt mng v cc yu t khc c khuynh hng lm gim thng lng ca mng. iu khin lu lng v iu khin tc nghn l hai khi nim khc nhau nhng lin quan cht ch vi nhau. iu khin lu lng l trnh tc nghn, cn iu khin tc nghn l gii quyt vn tc nghn hoc c du hiu tc nghn sp xy ra. Vic trin khai gii php iu khin lu lng v iu khin tc nghn c th thc hin trn cc thut ton ring bit, i khi c hai thut ton ny cng c ci t trong mt giao thc, th hin ra nh l mt thut ton duy nht, th d trong giao thc TCP. iu khin lu lng mt vi tng trong mng: Tng vn ti, tng mng v tng lin kt d liu. iu khin lu lng tng vn ti (cn gi l iu khin lu lng u cui - u cui) nhm trnh cho b m ca bn nhn khng khi b trn. iu khin lu lng trn tng chng s trnh cho tng ng truyn khi b tc nghn. Tuy nhin, vic iu khin lu lng trn tng chng s c nh hng n cc chng khc, do n cng c tc dng trnh tc nghn cho cc ng truyn c nhiu chng. Trong m hnh tham chiu OSI, iu khin lu lng theo tng chng c thc hin tng mng v tng lin kt d liu. Gii php iu khin lu lng c s dng rng ri nht l dng c ch ca s trt, c th p dng ti mt hay nhiu tng ca mng (thng tng lin kt d liu, tng mng nhng ph bin nht l tng vn ti). C ch iu khin lu lng bng ca s trt cho php bn gi pht i lin tip mt s n v d liu nht nh ri dng li v ch thng bo v kt qu nhn trc khi tip tc pht cc n v d liu tip theo. Bn nhn iu khin lu lng bng cch km li hay gi ngay bin nhn, l mt n v d liu c cha thng tin iu khin bo cho bn gi bit v vic nhn mt hay mt s n v d liu. Ti mi thi im, bn gi phi ghi nh danh sch cha s tun t cc n v d liu gi, cc n v d liu ny c coi l ang nm trong ca s gi. Tng t, bn nhn cng duy tr mt danh sch gi l ca s nhn, tng ng vi cc n v d liu liu m n nhn. Hai ca s gi v nhn khng nht thit phi c ln bng nhau. Ngi ta xut v s dng mt s phng Bi ging Mng my tnh Ths. Nguyn Xun Anh 87 thc qun l ca s khc nhau: bin nhn ring r cho mi n v d liu nhn c, bin nhn cui ca s, bin nhn u ca s v.v. 4.4 Nng cao hiu nng bng ng ng Pipeline Mc d hot ng ng nhng hiu sut hot ng ca rdt 3.0 cha cao, im yu ca vn l do thao tc dng v ch. Sau khi pht mt on d liu, bn pht dng gi d liu ch nhn thng bo tr li ca bn nhn. Nu kt qu ng, bn pht s gi on tin k tip. Nu kt qu sai, bn pht s gi li on d liu . c lc hiu sut ca giao thc stop and wait, hy xt trng hp l tng vi hai thit b u cui, mt b bin pha ng, mt b bin pha ty nc M. Thi gian tr gia hai thit b (d tn hiu lan truyn vi tc nh sng, trong thc t tr trn cc thit b mng ln hn rt nhiu) l Pprop xp x 15 ms. Gi s hai thit b c kt ni bng ng truyn tc C =1 Gbit/s. Kch thc ca on d liu SP=1Kbyte/packet, thi gian cn thit truyn ton b gi d liu trn knh truyn tc 1 Gbps c tnh bi cng thc:
T trans=
SP
= 8Kbit / packet =8 microseconds C
1Mbit / sec
Vi giao thc stop and wait, nu pha gi bt u gi gi d liu ti thi im t = 0 th ti thi im t = 8 microsecond, bit cui cng mi c bn gi y ra ng truyn. Tip theo phi mt 15 ms c gi d liu i t pha gi sang pha nhn nh vy bit cui cng ca gi d liu n ch ti thi im t = 15.008ms. n gin, ta gi thit gi ACK c cng di vi gi d liu v pha nhn gi ngay gi ACK khi nhn c bit cui cng ca gi d liu. Khi vy bit cui cng ca gi ACK c truyn ti ch ti thi im t = 30.016 ms. Trong khong thi gian 30.016ms, pha gi ch hot ng (gi hoc nhn) trong 0.016 ms. Nu nh ngha hiu sut ca bn gi (hay knh truyn) l t l thi gian pha gi hot ng (gi d liu trn knh truyn), chng ta c hiu sut U sender rt thp:
U sender= 0.008 =0.00015 30.016
iu c ngha l pha gi ch hot ng trong khong 0.15 phn nghn thi gian. Theo cch tnh khc, pha gi gi 1 Kbyte trong 30,016 milisecond tng ng vi tc truyn l 33 Kbyte/s thp hn nhiu so vi tc c th l 1 Gigabit/s. Ngi qun tr mng bt hnh ny phi tr mt s tin khng l thu ng truyn 1 Gigabit/s nhng cui cng ch nhn c mt ng truyn c tc 33 Kbyte/s. y l mt v d sng ng minh ha vic phn Bi ging Mng my tnh Ths. Nguyn Xun Anh 88 mm c th gii hn cc kh nng ca phn cng pha di. Trong trng hp ny Chng ta b qua thi gian x l ca cc giao thc tng di c pha gi v pha nhn cng nh thi gian x l v thi gian tr ca gi tin ti cc router trung gian. Nu tnh c nhng yu t ny, hiu sut hot ng thc s s cn thp hn na. Gii php cho vn hiu sut s l cho php pha gi gi ng thi nhiu gi d liu m khng cn phi i ACK. C th hnh dung cc gi d liu ni tip nhau trn ng truyn t pha gi n pha nhn ging nh Nc chy trong mt ng ng. V th k thut gi lin tip ny c gi l k thut ng ng (pipeline). K thut ny lm tng hiu sut ca giao thc ln nhiu ln, tuy nhin n i hi nhng yu cu sau: - Khong s th t phi tng, bi v mi gi d liu c truyn i (khng tnh cc gi d liu truyn li) phi c mt s th t duy nht. Trn ng truyn c th c ng thi nhiu gi d liu c gi cha c bin nhn. - Pha gi v pha nhn c th phi c b m (buffer) cho nhiu gi d liu. t nht pha gi c vng m cho cc gi d liu c truyn i nhng cha c bin nhn. Pha nhn cng c th cn vng m cho c cc gi d liu nhn ng, nh s tho lun di y. Yu cu v khong s th t cn thit cng nh v vng m ph thuc vo cch giao thc x l vic mt d liu, d liu b li, b tr. C hai cch tip cn chnh c trnh by y: Quay li N (Go-Back-N) v lp li c La chn (Sesective Repeat). 4.4.1 Giao thc Go-back-N Trong giao thc Go-Back-N, pha gi cho php truyn i ng thi nhiu gi d liu m khng phi i bin nhn. Tuy nhin tng s gi d liu khng phi l v hn m b gii hn bi gi tr N - tng s gi d liu ti a cha c bin nhn trong ng ng. Hnh 3.18 l khong s th t trong giao thc Go- Back-N. nh ngha base l s th t ca gi d liu c truyn i lu nht cha c bin nhn v next seqnum l s th t nh nht cha c s dng (l s th t ca on tip theo s gi). C bn khong s th t nh sau: Khong [0,base-1] ng vi s th t ca cc gi d liu c truyn i v c bin nhn. Khong [base, nextseqnum-1] ng vi cc gi d liu c gi i nhng cha c bin nhn. Khong [nextseqnum, base +N- 1] c th c s dng lm s th t cho cc gi s c gi nu nh c d liu t tng trn chuyn xung. Khong t [base+n] tr ln cha c s dng cho n khi cc gi tin i bin nhn c bin nhn. Trong hnh 4.12, khong cho php s th t ca nhng gi d liu c gi nhng cha c bin nhn c th xem l mt ca s kch thc N nm trong phm vi s th t. Khi giao thc vn hnh, ca s ny c th trt trn ton b khong s th t. V vy, N thng c xem l ln ca s (window size) v giao thc GBN l giao thc ca s trt (sliding- window). ti sao ngay t u chng ta phi gii hn s lng ti a cc gi d liu c gi m cha cn bin nhn bi gi tr N. ti sao khng gi tr N ny l v hn. Bi ging Mng my tnh Ths. Nguyn Xun Anh 89 Chng ta s thy trong phn 3.5, kim sot lu lng l mt trong nhng l do bt buc ta phi t gii hn pha gi.
Hnh 4.12 Khong s th t ca bn gi trong giao thc Go-Back-N
Trong thc t, s th t ca on d liu c t trong mt trng c di c nh trong phn thng tin iu khin ca on d liu. Nu k l ln trng s th t (tnh theo bit) ca on d liu th khong s th t s l [0,2 k - 1]. V khong s th t b gii hn, nn tt c cc thao tc trn s th t s c thc hin theo module 2 k (khong s th t c th xem l mt vng trn vi 2 k gi tr, sau gi tr 2 k -1 l gi tr 0). Giao thc rdt 3.0 ch s dng 1 bit lm s th t nn khong s th t l [0,1]. Gi l FSM m rng (extended FSM) v c thm vo cc bin (base v nextseqnum - ging nh bin trong ngn ng lp trnh), cc thao tc v hnh ng c iu kin lin quan n cc bin ny. Trong giao thc GBN, pha gi phi p ng ba s kin sau: - C d liu t trn chuyn xung : khi rdt_send() c pha trn s dng chuyn d liu xung, pha gi phi kim tra xem ca s y cha (tc l c N gi d liu gi i cha c bin nhn khng). Nu ca s cha y, pha gi to ra v sau gi gi d liu ng thi cp nht cc bin. Nu ca s y, pha gi khng chp nhn d liu t tng trn v thng bo ca s y. Khi , tng trn s phi gi li. Trn thc t, pha gi s a d liu vo vng m (nhng cha gi ngay) hoc c c ch ng b (s dng semaphore hay c) ch cho php tng ng dng s dng rdt_send() khi ca s cha y. - Nhn c mt ACK: trong giao thc GBN, gi tr bin nhn gi tin c s th t n s mang gi tr tch lu, ngha l ton b gi d liu c s th t nh hn hoc bng n u c pha nhn nhn ng. Chng ta s quay li vn ny khi xem xt pha nhn trong giao thc GBN. - Ht thi gian i (timeout): tn giao thc - Go-Back-N bt ngun t hnh vi ca pha gi khi d liu b mt hay b tr. Ging nh trong giao thc stop and wait, ng h nh thi c s dng x l vic mt gi d liu hay gi phn hi. Khi ht thi gian i (timeout), pha gi s gi li tt c cc gi d liu c gi i trc nhng cha c bin nhn. Trong hnh 4.13, pha gi ch s dng duy nht mt ng h nh thi, c th xem Bi ging Mng my tnh Ths. Nguyn Xun Anh 90 l thi gian ca on d liu c truyn i lu nht nhng cha c bin nhn. Nu ACK no c nhn nhng vn cn gi d liu gi i cha c bin nhn th ng h nh thi s c khi ng li. Nu tt c cc on d liu gi u c bin nhn th c th ngng ng h nh thi.
Hnh 4.13 FSM m rng ca bn gi trong GBN
Cc hnh ng ca pha nhn trong giao thc GBN n gin. Nu nhn c ng on d liu v on d liu ny ng th t th pha nhn gi ACK cho on d liu nhn c v chuyn d liu trong on d liu ny bn trn. Trong tt c cc trng hp cn li, pha nhn loi b on d liu v gi li ACK cho on d liu ng th t cui cng n nhn c. Ch rng on d liu c chuyn ln tng trn mt ln duy nht nn nu on d liu th k c nhn v chuyn ln trn th ngha l tt c cc on d liu c s th t nh hn k cng c chuyn ln. S dng ACK tch lu l s la chn tt nht cho giao thc GBN. Trong giao thc GBN, bn nhn loi b on tin khng theo th t. Dng nh lng ph khi loi b on tin nhn ng nhng khng ng th t, nhng c vi nguyn nhn cho hot ng trn. Bn nhn phi chuyn d liu ln tng trn theo ng th t. Gi s on tin N ang c i nhn nhng on tin th (N+1) li n trc. Trong trng hp y, d liu chuyn ln hp l, bn nhn c th lu tm on tin (N+1) v ch chuyn on tin ny bn tng trn sau khi nhn ng on tin th N. Tuy nhin theo quy tc truyn li ca bn gi, nu on tin th N b mt th on tin ny v c on tin N+l s c truyn li. Bi ging Mng my tnh Ths. Nguyn Xun Anh 91
Hnh 4.14 FSM m rng ca bn nhn trong GBN
Nh vy, bn nhn c th loi b on tin N+1. u im ca gii php ny l bn nhn trin khai vng m (buffer) n gin bi khng cn lu li cc on tin khng ng th t. Nu bn gi phi ghi nh cc cn ca ca s (base, base+n) v v tr nextseqnum trong ca s, th bn nhn ch phi nh s th t ca on tin hp l tip theo. Gi tr ny c gi trong bin expectedseqnum (s th t c mong i). Tt nhin, nhc im ca vic loi b on tin nhn ng (nhng khng theo th t) l khi truyn li on tin c th b mt hay li, do phi truyn i truyn li nhiu ln. Vi ln gii hn, bn gi s ch c gi cc gi tin t 0 n 3 nhng sau phi i bin nhn cho cc on tin ny trc khi tip tc gi tip. Khi nhn c cc ACK lin tip nhau (v d ACK0 v ACK1), ca s s trt v pha trc, bn gi c th truyn on tin mi (ln lt l pkt4 v pkt5). pha bn nhn, on tin s 2 b mt, do on tin 3,4,5 gi n khng theo ng th t v b loi b. Vi GBN, c mt ch quan trng l trin khai GBN tng t FSM m rng. Hnh thc trin khai bao gm nhiu th tc khc nhau, mi th tc thc hin mt nhm cc hnh ng no p li cc s kin khc nhau c th xy ra. vi lp trnh hng s kin, cc th tc s c cc th tc khc gi hay l kt qu ca vic gi ngt. pha bn gi, s kin c th l: - Thc th tng trn truyn d liu xung qua th tc rdt_send() - Ngt khi thi gian i ht - Tng di chuyn d liu bn qua hm rdt_rcv().
Bi ging Mng my tnh Ths. Nguyn Xun Anh 92
Hnh 4.15 Giao thc Go-Back-N trong qu trnh hot ng
Trong thc t, TCP l giao thc ta GBN. Tuy nhin c s khc bit gia GBN v TCP. Nhiu phin bn TCP lu li cc segment khng theo th t nhn ng. Trong phng n nng cp TCP, s dng bin nhn c la chn [RFC 258] cho php bn nhn c th bin nhn tu mt on tin khng theo th t (ch khng s dng gi tr bin nhn tch lu). Bin nhn c la chn chnh l lp giao thc gi lin tip th hai: Lp li c la chn (selective repeat - SR). C th xem TCP l s kt hp ca c hai giao thc GBN v SR. 4.4.2 Giao thc lp li c la chn Giao thc GBN khc phc c hiu sut thp ca giao thc stop and wait. Tuy nhin trong mt vi tnh hung, chnh hiu sut ca giao thc GBN cng rt thp. V d khi kch thc ca s v thi gian truyn mt on tin ln, c th c nhiu on tin trn ng truyn, mt on tin b li c th khin GBN phi truyn li nhiu on tin. Giao thc lp li c la chn (SR - Selective Repeat) trnh vic truyn li khng cn thit bng cch bn gi ch gi li cc on tin m n cho l c li (hoc mt). truyn li tng on tin khi cn thit, bn nhn cn bin nhn cho tng on tin nhn ng. Vn s dng li kch thc ca s l N gii hn tng s on tin cha c bin nhn trn ng truyn. Tuy nhin khc Bi ging Mng my tnh Ths. Nguyn Xun Anh 93 vi GBN, bn gi s nhn c bin nhn ACK cho mt s on tin trong ca s.
Hnh 4.16 Khong s th t ca bn gi v bn nhn
Bn nhn Selective Repeat s bin nhn cho bt k on tin nhn ng, cho d khng theo ng th t. on tin khng ng th t vn c lu gi li cho n khi tt c cc on tin cn thiu (on tin c s th t nh hn) c chuyn n, khi tt c cc on tin s c chuyn ln tng trn theo ng th t. S kin v phn ng ca bn gi - D liu nhn c t pha trn: Khi nhn c d liu t pha trn, bn gi SR kim tra s th t s gi. Nu s th t s gi nm trong ca s gi, d liu c ng gi v gi i, ngc li th d liu c lu gi trong b m hoc gi tr ln tng trn gi sau, ging GBN. - Ht thi gian i Timeout: Timer li c s dng pht hin mt gi tin. Tuy nhin, mi gi tin gi i c mt timer ring, bi v ch c duy nht mt gi tin c gi li khi ht thi gian i. C th s dng ng h h thng gi vai tr ng b cho cc timer. - Nhn c ACK: Nu nhn c ACK, bn gi nh du gi tin c chuyn ng. Nu s th t ca gi tin va c bin nhn bng send_base, cnh ca s s trt ti gi tin c s th t nh nht cha c bin nhn. Nu ca s di chuyn v cn cc gi tin cha c truyn th cc gi tin s c gi. Bi ging Mng my tnh Ths. Nguyn Xun Anh 94
Hnh 4.17 SR trong qu trnh hot ng
S kin v phn ng ca bn nhn - Nhn ng gi tin vi s th t trong khong [rcv_base,rcv_base+N-1. Trong trng hp ny, gi tin nhn c nm trong ca s nhn. Bn nhn gi bin nhn cho gi tin ny. Nu gi tin cha c nhn t trc, n s c ghi li trong b m. Nu gi tin c s th t bng vi cn di ca ca s nhn (rcv_base trong hnh 4.16) th n cng cc gi tin c s th t lin tip lu gi t trc (bt u t rcv_base) c chuyn ln tng trn. Ca s nhn s trt v pha trc mt khong bng vi khong s gi tin chuyn ln tng trn. vi v d trn hnh 4.17 khi nhn c gi tin c s th t rcv_base 2 th gi tin ny cng vi gi tin rcv_base+1 v gi tin rcv_base+2 c chuyn ln tng trn. - Nhn c gi tin vi s th t trong [rcv_base-N,rcv_base-1].Trong trng hp ny, gi bin nhn li cho gi tin (mc d bin nhn t trc). - Cc trng hp khc. B qua gi tin i.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 95
Hnh 4.18 Truyn li hay gi mi
Trong bc hai, bn nhn phi bin nhn li (ch khng c b qua) cho gi tin n vi s th t nh hn gi tr bin ca ca s hin thi. iu ny ht sc cn thit. V d vi khng gian s th t ca bn gi v bn nhn trong hnh 4.16, nu khng nhn c ACK t bn nhn xc nhn gi tin send_base c nhn, bn gi s gi li gi tin send_base, Pc d r rng rng (vi chng ta, ch khng phi bn gi) bn nhn nhn c gi tin . Nu bn nhn khng bin nhn gi tin ny, ca s bn gi c th s khng bao gi trt ti pha trc. V d ny minh ha mt c im quan trng ca giao thc SR (v nhiu giao thc tng t khc). s xc nh ca bn gi v bn nhn v ci g c nhn, ci g cha c nhn khng phi lun lun ging nhau. vi giao thc SR, iu ny c ngha l ca s bn gi v bn nhn khng bao gi trng khp nhau. Thiu s ng b gia ca s bn gi v bn nhn c th gy hu qu nghim trng khi khong s th t nh. V d iu g c th xy ra vi khong s th t l 4, cc gi tin c nh s l 0, 1, 2 v 3 , ln ca s l 3. Gi s cc gi tin t 0, 1 , 2 c truyn i v nhn chnh xc ti pha bn nhn. Bn nhn gi bin nhn cho 3 gi tin ny. Khi , ca s bn nhn tin ln cc gi tin th 4,5 v 6 vi s th t tng ng l 3, 0, 1. By gi xem xt hai trng Bi ging Mng my tnh Ths. Nguyn Xun Anh 96 hp. Trng hp u tin, hnh 3.26(a), ACK ca 3 gi tin u tin b mt, bn gi truyn li cc gi tin . Khi bn nhn nhn c tip theo gi tin c s th t 0 - li chnh l gi tin 0 u tin c gi ban u. Trong trng hp th hai, hnh 4.18(b), ACK cho ba gi tin c chuyn i thnh cng. Nh vy ca s bn gi s trt v pha trc v gi i cc gi tin 4, 5, v 6 vi s th t tng ng l 3, 0, 1. Nu gi tin vi s th t 3 b mt, lc y gi tin c s th t 0 n, gi tin ny cha d liu mi (khng phi gi tin 0 truyn li). R rng c mt bc mn chn gia bn gi v bn nhn v bn nhn khng th nhn thy hnh ng t bn gi. Bn nhn ch quan st c gi tin no n nhn c hay gi i. Hai trng hp trong l tng t nhau. Khng c phng php no phn bit c gi 0 c truyn li hay gi 5 c truyn ln u tin. R rng nu kch thc ca s nh hn khong s th t mt n v th h thng khng cn lm vic ng n. Nhng ln ca s nn l bao nhiu? Ngi ta chng minh c rng ln ca s phi b hn hoc bng mt na khong s th t vi giao thc SR. Chng ta gi thit mi trng truyn khng tin cy di dn n vic cc gi tin c th b gi li trn ng truyn. y l vic t khi xy ra khi knh truyn gia pha gi v pha nhn l mt mi trng vt l thc s. Tuy nhin khi knh truyn ny li l mt mng my tnh th vic mt gi tin b gi li trn knh truyn hon ton c th xy ra. H qu ca n l xut hin mt gi tin vi s th t hay s bin nhn l x trong khi c ca s nhn v gi u khng cha x. Trong trng hp ny, knh truyn b coi l mt b m, c th tu pht mi gi tin bt c thi im no. V s th t c th c s dng li nn trong mt s trng hp s xy ra hin tng trng lp gi tin. Gii php trong thc t l bo m s th t khng c s dng li cho n khi bn gi c th tng i chc chn v gi tin vi s th t x c gi trc y khng cn tn ti trong mng. iu ny c thc hin vi gi thit mt gi tin khng th Tn ti trong mng trong mt khong thi gian ln hn mt khong thi gian c nh no y. Thi gian sng ln nht ca gi tin xp x l 3 pht vi mng TCP cao tc [RFC 1323].
Bi ging Mng my tnh Ths. Nguyn Xun Anh 97 CHNG 5: LP TRNH SOCKET Socket l mt phng php thit lp kt ni truyn tin gia mt chng trnh yu cu dch v v mt chng trnh cung cp dch trn mng v i khi trong my tnh. Theo nh ngha cc chc nng mi tng trong m hnh OSI, tng mng m nhim lin kt gia u cui vi u cui th tng vn ti m nhim lin kt gia hai tin trnh. Mi socket l mt im cui trong mt kt ni v c th c xem nh kt hp ca tng mng v tng vn ti, do n phi bao gm mt cp a ch logic ca tng mng v s hiu cng ca tng vn ti. Mt socket trn my yu cu dch v c a ch mng c cp sn gi mt socket trn my cung cp dch v. Mt khi socket c thit lp ph hp, hai my tnh c th trao i dch v v d liu. Khi nim lp trnh socket do trng i hc Berkeley xut vo nhng nm 1980, xut hin ln u tin trong h iu hnh Unix l Berkeley Sockets Interface, mt chng trnh thit b c thit k gip my tnh ni mng c th trao i thng tin vi nhau. Gia nhng nm 1990, Microsoft to ring socket ca h l Windows Sockets (cn gi l WinSock), nh vy cc ng dng Windows c th trao i thng tin vi nhau qua mng my tnh. 5.1 Khi nim v socket 5.1.1 M hnh client/server M hnh client/server cung cp mt cch tip cn tng qut chia s ti nguyn trong cc h thng phn tn, trong tin trnh cung cp dch v gi l server v ngc li tin trnh s dng dch v gi l client. Ti nguyn s c qun l bi mt tp cc tin trnh gi l cc tin trnh server v mi tin trnh client mun thc hin truy xut ti ti nguyn thng qua tin trnh server . Bn thn cc tin trnh server cng cn phi truy xut ti cc ti nguyn dng chung c qun l bi mt tin trnh khc, v vy mt s tin trnh c th ng c hai vai tr client v server. Cc tin trnh client gi yu cu ti tin trnh server, nu yu cu hp l th tin trnh server s thc hin yu cu v tr v kt qu cho client. M hnh truyn tin client/server hng ti vic cung cp dch v. Qu trnh trao i d liu bao gm: - Tin trnh client gi yu cu ti tin trnh server - Tin trnh server kim tra v x l yu cu ca tin trnh client - Tin trnh server gi kt qu x l yu cu cho client Nh vy, m hnh client/server thc cht gm hai bc truyn thng ip v mt bc x l, nh vy ny sinh vn ng b client v server. Tin trnh client phi trng thi ch cho n khi nhn c kt qu tr v t tin trnh server. M hnh client/server thng c ci t da trn cc thao tc c bn l gi v nhn. Qu trnh giao tip gia client v server c th din ra theo mt trong hai ch : ng b hoc khng ng b. Bi ging Mng my tnh Ths. Nguyn Xun Anh 98 Ch ng b: Trong ch ng b, khi tin trnh client hoc server pht ra lnh gi d liu, vic thc thi ca tin trnh s b tm ngng cho ti khi tin trnh nhn pht ra lnh nhn d liu. Tng t i vi tin trnh nhn d liu, nu tin trnh no pht ra lnh nhn d liu, m ti thi im cha c d liu gi ti th vic thc thi ca tin trnh cng s b tm ngng cho ti khi c d liu gi ti. Ch khng ng b: Trong ch ny, khi tin trnh client hay server pht ra lnh gi d liu thc s, vic thc thi ca tin trnh vn c tin hnh m khng quan tm n vic c tin trnh no pht ra lnh nhn d liu hay khng. Tng t cho trng hp nhn d liu, khi tin trnh pht ra lnh nhn d liu, n s nhn d liu hin c, vic thc thi ca tin trnh vn c tin hnh m khng quan tm n vic c tin trnh no pht ra lnh gi d liu tip theo hay khng.
Hnh 5.1 Tng tc gia Client v Server
Khi pht trin cc ng dng mng, lp trnh vin cn ch tin trnh trng thi b ch, v n c th dn n tnh hung mt tin trnh no s ri vo vng lp v hn. 5.1.2 Cc kin trc Client/Server 5.1.2.1 Client/Server hai tng Trong ng dng client/server hai tng, khi lng cng vic x l c dnh cho pha client trong khi server ch n gin ng vai tr nh l chng Tin trnh ang x l Tr li Yu cu Thc thi yu cu Ch Server Client Tin trnh ang ch Bi ging Mng my tnh Ths. Nguyn Xun Anh 99 trnh kim sot lung vo ra gia ng dng v d liu. C th tm thy nhng ng dng loi ny nh dch v truy nhp t xa (telnet), truyn tp tin (ftp), thm ch l c dch v Web (web tnh). Kin trc ny c nhc im sau: - Tng lu lng thng tin lu chuyn trn mng: Trong qu trnh x l, tin trnh client cn nhiu thng tin ph tr do phi gi nhiu yu cu ti tin trnh server. - Gim hiu nng x l:cc my trm thng c cu hnh thp hn cc my ch. - Kh khn trong vic bo tr v nng cp h thng: mun bo tr v nng cp h thng phi thay i c pha server ln client. 5.1.2.2 Client/Server ba tng Kin trc client/server ba tng hn ch cc nhc im ca kin trc client/server hai tng bng cch thm mt tng mi tch bit vic x l d liu vi vic cung cp dch v. Trong kin trc ba tng, mt ng dng c chia thnh ba tng tch bit nhau v mt. Tng u tin l tng trnh din thng ch ng vai tr hin th cc thng tin cho ngi s dng. Tng th hai, thc thi cc cng vic x l nghip v. Tng th ba cha d liu cn thit cho ng dng, d liu ny c th bao gm bt k ngun thng tin no (Oracle, SQL Server hoc ti liu XML). V c bn, tng th ba thc hin cc li gi hm/th tc truy xut d liu cn thit. S tch bit gia chc nng x l vi giao din to nn s c lp v linh hot cho vic pht trin cc ng dng. Nhiu giao din ngi dng c xy dng v trin khai m khng lm thay i logic ng dng. 5.1.2.3 Kin trc n- tng Kin trc ba tng c ng dng tng i ph bin, tuy nhin trong mt s tnh hung chng ta c th m rng thnh kin trc n-tng. Vic thm mi tng s phc tp hn trong vn x l, tng gi thnh sn phm phn mm. V c bn vic phn tng phi m bo cc nguyn tc sau: - Tng ng dng: qun l tng tc ca ngi dng vi ng dng. - Tng trnh din: Xc nh cch thc hin th giao din ngi dng v cch qun l cc yu cu ca ngi dng. - Tng nghip v: M hnh ha cc quy tc nghip v. - Tng dch v h tng: Cung cp cc chc nng cn thit phc v cho tng nghip v 5.1.3 M hnh truyn tin socket Hai giao thc TCP v UDP l cc giao thc tng vn ti truyn d liu, mi giao thc c nhng u v nhc im ring. Giao thc TCP l giao thc c lin kt, n c tin cy truyn tin cao nhng tc truyn tin b hn ch do phi c giai on thit lp v gii phng lin kt, khi on tin c li hay b tht lc th giao thc TCP phi thc hin truyn li. Giao thc UDP thuc loi khng lin kt, c tc truyn tin rt nhanh v khng cn phi thit lp v gii phng Bi ging Mng my tnh Ths. Nguyn Xun Anh 100 lin kt. Khi lp trnh cho giao thc TCP th s dng cc socket dng lung, cn i vi giao thc UDP s s dng DatagramSocket v DatagramPacket.
Hnh 5.2 Cc bc c bn ca tin trnh Client/Server
Truyn tin c lin kt ngha l cn phi c giai on thit lp v gii phng lin kt trc v sau khi truyn tin. D liu c truyn trn mng my tnh di dng cc gi tin, mi gi tin cha thng tin iu khin bao gm a ch + cng ngun v ch. Tuy nhin do cc gi tin c chiu di hu hn nn bn gi thng phi phn chia d liu thnh nhiu gi tin v khi phc li d liu ban u t cc gi bn nhn. Trong qu trnh truyn tin c th c th c mt hay nhiu gi b mt hay b hng v cn phi truyn li hoc cc gi tin n khng theo ng trnh t. gii quyt nhng vn ny, bn gi phi chia d liu thnh cc gi v thm thng tin iu khin, bn nhn phi phn tch thng tin iu khin v qun l danh sch cc gi tin nhn c, ... rt nhiu cng vic cn phi thc hin v vic pht trin phn mm mng tr nn phc tp. Tuy nhin, nhng cng vic phc tp c socket x l, chng cho php ngi lp trnh xem mt lin kt mng nh l mt lung m c th c d liu ra hay ghi d liu vo t lung ny. Socket coi tt c cc thao tc gi/nhn tng t nh thao tc c/ghi tp tin trn a my tnh, cc thao tc mc thp hon ton trong sut i vi ngi lp trnh. 6 Socket() Bind() Listen() Accept() Cc chc nng gi v nhn Close() Socket() Bind() Connect() Cc chc nng gi v nhn Close() 1 3 4 5 7 2 Server Client Bi ging Mng my tnh Ths. Nguyn Xun Anh 101 Mt socket c th thc hin by thao tc c bn: - Kt ni vi mt my xa - Gi d liu - Nhn d liu - Ngt lin kt - Gn cng - Nghe d liu n - Chp nhn lin kt t cc my xa trn cng c gn. Mi khi lin kt c thit lp, mt knh truyn logic c hnh thnh gia cc hai tin trnh mng v chng c th trao i thng tin vi nhau theo ch song cng. Khi vic truyn d liu hon thnh, mt hoc c hai tin trnh s gi yu cu ngt lin kt. Vi s pht trin ca cng ngh thng tin, lp trnh vin c nhiu la chn khc pht trin cc ng dng mng nh: gi th tc t xa (Remote Procedure Call - RPC), Java RMI, CORBA, webservice, nhng socket vn tip tc ng vai tr quan trng trong vic duy tr cc lung truyn thng trn mng my tnh. Cc ng dng c lin quan n mng my tnh u vit lp bn trn socket. 5.2 Java sockets Trong Java, th vin Java.net.Socket l lp c dng trong vic to ra cc socket pha client v java.net.ServerSocket c dng cho pht trin ng dng pha server. Vi nhng cng c ny, cc lp trnh vin c th nhanh chng to ra cc socket m khng cn phi vt v trong vic to cc v qun l cc lin kt ti lp vn ti. Lp Socket ca Java c s dng bi c client v server, c cc phng thc tng ng vi bn thao tc u tin. Ba thao tc cui ch cn cho server ch cc client lin kt vi chng v c ci t bi trong lp ServerSocket. 5.2.1 Socket cho pha server Lp ServerSocket trong th vin java.net cung cp cc phng thc vit cc ng dng pha server bng ngn ng Java. N cho php to cc i tng ServerSocket mi, cc phng thc lng nghe cc lin kt trn mt cng xc nh, v cc phng thc tr v mt Socket khi thit lp thnh cng mt lin kt, v sn sng cho vic gi v nhn d liu. Vng i ca mt server bao gm : 1. Mt ServerSocket mi c to ra trn mt cng xc nh bng cch s dng phng thc ServerSocket(s hiu cng), s hiu cng phi tun th cc qui nh ca IANA (Assigned Numbers Authority). Nu s hiu cng bng 0 th h thng t gn cng, nu cng s dng th h phng thc s bo li. 2. ServerSocket lng nghe lin kt n trn cng bng cch s dng phng thc accept(). Phng thc accept() trng thi phong ta cho ti khi mt client gi mt yu cu thit lp lin kt, nu chp Bi ging Mng my tnh Ths. Nguyn Xun Anh 102 nhn n tr v mt i tng Socket cho client thit lp mt lin kt gia client v server. 3. Ty thuc vo kiu server, hoc phng thc getInputStream(), getOutputStream() hoc c hai c gi nhn cc lung vo ra truyn tin vi client. 4. Server v client tng tc theo mt giao thc tha thun sn cho ti khi mt trong hai pha hoc c hai pha gi yu cu hy b lin kt. 5. Server, client hoc c hai gi yu cu hy b lin kt 6. Server tr v bc hai v i yu cu thit lp lin kt tip theo. To socket cho server: V d: to mt server socket cho cng 8080: try { ServerSockethttpd=newServerSocket(8080); } catch(IOExceptione) { System.err.println(e); } Chp nhn v hy lin kt: Mt i tng ServerSocket hot ng trong mt vng lp chp nhn cc lin kt. Mi ln lp n gi phng thc accept(), phng thc ny tr v mt i tng Socket th hin lin kt gia client v server phc v cho vic truyn tin gia client v server. Khi hon thnh mt giao tc, server gi phng thc close() ca i tng socket. Nu client ngt lin kt trong khi server vn ang hot ng, cc lung vo ra kt ni server vi client s a ra ngoi l InterruptedException trong ln lp tip theo. public Socket accept() throws IOException Khi hon thnh thit lp lin kt v sn sng chp nhn cc yu cu lin kt ca pha client th phi gi phng thc accept() ca lp ServerSocket. Phng thc ny trng thi b phong ta, n dng qu trnh x l v i cho ti khi client c kt ni. Khi client thc s kt ni, phng thc accept() tr v i tng Socket. Ta s dng cc phng thc getInputStream() v getOutputStream() truyn tin vi client. V d: try { ServerSockettheServer=newServerSocket(8080); while(true) { Socketcon=theServer.accept(); PrintStreamp=newPrintStream(con.getOutputStream()); p.println(Readyconnected); con.close(); } Bi ging Mng my tnh Ths. Nguyn Xun Anh 103 } catch(IOExceptione) { System.err.println(e); } Khi kt thc lm vic vi mt i tng server socket th cn phi ng li i tng ny, s dng phng thc public void close() throws IOException. V d ci t mt server cung cp thi gian h thng nh sau: importjava.net.*; importjava.io.*; importjava.util.Date; publicclassdaytimeServer { publicfinalstaticintdaytimePort=13; publicstaticvoidmain(String[]args) { ServerSockettheServer; Socketcon; PrintStreamp; Try { theServer=newServerSocket(daytimePort); try { p=newPrintStream(con.getOutputStream()); p.println(newDate()); con.close(); } catch(IOExceptione) { theServer.close(); System.err.println(e); } } catch(IOExceptione) { System.err.println(e); } } } 5.2.2 Socket cho pha Client Hm public Socket(string host,int port) throws UnknownHostException, IOException to mt socket TCP, trong host l a ch hoc tn min (trong trng hp ny phi s dng dch v DNS) v port l s hiu cng cung cp dch v ca server. V d: Try { Sockets=newSocket(www.ptit.edu.vn,80); } catch(UnknownHostExceptione) Bi ging Mng my tnh Ths. Nguyn Xun Anh 104 { System.err.println(e); } catch(IOExceptione) { System.err.println(e); }
Mt s phng thc thng dng:
i tng Socket c mt s trng thng tin ring m ta c th truy nhp ti chng thng qua cc phng thc tr v cc thng tin ny. Phng thc ngha getInetAddress() Tr v a ch ch getPort() Tr v s hiu cng ch getLocalAddress() Tr v a ch ngun getLocalPort() Tr v s hiu cng ngun getInputStream() Tr v mt lung nhp c d liu t mt socket vo chng trnh getOutputStream() Tr v mt lung xut th ghi d liu t ng dng ra u cui ca mt socket
ng Socket: Cc socket c ng mt cch t ng khi mt trong hai lung ng li, hoc khi chng trnh kt thc, hoc khi socket c thu hi. Tuy nhin, lp trnh vin khng nn h thng t ng socket, c bit l khi cc chng trnh chy trong khong thi gian v hn. Mi khi mt Socket b ng li, ta vn c th truy xut ti cc trng thng tin InetAddress, a ch cc b, v s hiu cng cc b thng qua cc phong thc getInetAddress(), getPort(), getLocalHost(), v getLocalPort(). Tuy nhin khi ta gi cc phng thc getInputStream() hoc getOutputStream() c d liu t lung c InputStream hoc ghi d liu OuputStream th xut hin ngoi l IOException. Lp trnh vin c th s dng cc phng thc sau ng kt ni: public void close() throws IOException public void shutdownInput() throws IOException public void shutdownOutput() throws IOException Phng thc close() ng c cc lung nhp v lung xut t socket. Trong mt s trng hp ta ch mun ng mt na kt ni, hoc l lung nhp hoc l lung xut. Bt u t Java 1.3, cc phng thc shutdownInput() v shutdownOutput() cho php ta thc hin iu ny. Bi ging Mng my tnh Ths. Nguyn Xun Anh 105 5.3 My ch a x l Mi ng dng cung cp dch v trn my ch thng phi phc v ng thi yu cu ca nhiu client, nu x l tun t th thi gian ch ca client s ko di v i khi vt qu khong thi gian ch cho php v dn n tnh trng li. gii quyt vn ny, cc ng dng trn server thng c xy dng theo kiu a tin trnh (multiprocessing), mi tin trnh li c xy dng da trn nguyn l x dng a lung (multithread). V bn cht, thread l n v nh nht ca tin trnh c nh thi bi h iu hnh v c bao hm trong cc tin trnh thc thi ca my tnh. Mi thread c mt ngn xp li gi cho cc phng thc, i s v bin cc b ca thread . Vi c ch a lung, cc ng dng c th thc thi ng thi nhiu dng lnh cng lc, n c th lm nhiu cng vic ng. C th hiu mt cch n gin: h iu hnh vi c ch a nhim cho php nhiu ng dng chy cng lc th ng dng vi c ch a lung cho php thc hin nhiu cng vic cung lc. Tuy nhin, lp trnh vin cn lu vic to v qun l cc tin trnh (process ) tn nhiu ti nguyn h thng hn rt nhiu so vi vic to ra mt lung (thread). Do gii php thng c p dng l to ra nhiu lung x l song song. Trong ngn ng lp trnh Java, th vin lp java.lang.Thread cung cp cc lp qun l lung. Mc d cc thread chia s cc ti nguyn ca tin trnh nhng vn c th c thc thi mt cch c lp. Multi-thread hu dng khi dng lp trnh a nhim, khi mt chng trnh hoc tin trnh c s c, ton b h thng s vn an ton. c bit hu dng trong trng hp mt tin trnh duy nht m sinh ra nhiu thread con ca mt h thng a nhim. Cc ng dng Multi-thread chy nhanh hn trn cc my tnh h tr x l a lung. Tuy nhin, vic s dng multithreading khng h n gin. Kh khn trong ln nht l vic qun l ng thi nhiu lung v phi lu vn tng tranh h thng, mt trong nhng nguyn nhn c bn dn n tnh trng kha cng (deadlock). 5.4 Lp trnh socket vi ngn ng C Cc hm phc v cho lp trnh socket vi ngn ng C nm trong th vin socket.h. Ging nh lp trnh socket trong Java, lp trnh vin cn phi xy dng ng dng pha server v pha client. Cc bc to lp mt socket pha server gm: - To mt socket bng cch gi hm socket(). - Nhng socket n a ch ca my ch s dng hm bind(), bao gm a ch my ch v s hiu cng m dch v s cung cp. - Nghe cc yu cu kt ni n t client bng cch s dng hm listen(). - Tip nhn cc kt ni s dng hm accept(). - Trao i thng tin vi client bng cc hm read() v write(). - ng kt ni bng hm close(). Cc bc thit lp mt socket pha client gm: - To mt socket bng hm socket(). Bi ging Mng my tnh Ths. Nguyn Xun Anh 106 - Gi yu cu kt ni n server bng hm connect(). - Trao i thng tin vi server bng cc hm read() v write(). - ng kt ni bng hm close().
Bi ging Mng my tnh Ths. Nguyn Xun Anh 107 CHNG 6: GIAO THC TCP 6.1 Cu trc segment on tin ca giao thc TCP bao gm cc trng thng tin iu khin v d liu ca lp ng dng. Khi cn gi mt tp tin c kch thc ln - v d tp tin hnh nh, n phi chia tp tin thnh cc on c kch thc nh hn hoc bng kch thc ti a ca on d liu (MSS Maximum Segment Size). 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Source Port Destination Port Sequence Number Acknowledgment Number HLEN reserved N S C W R E C N Control Bits Window Checksum Urgent Pointer Options and padding ::: Data :::
Hnh 6.1 Cu trc on d liu ca giao thc TCP
Hnh 4.19 minh ha cu trc ca on tin giao thc TCP, phn thng tin iu khin bao gm: - Source Port, Destination Port: Trng s hiu cng ngun, s hiu cng ch thc hin dch v ghp knh/phn knh d liu cho cc ng dng lp trn. - Sequence Number, Acknowledgment Number: Trng s th t (sequence number) 32 bit v trng s bin nhn (acknowledge number) 32 bit c bn gi v bn nhn s dng trong vic cung cp dch v truyn d liu tin cy. - Trng di tiu (length field) 4 bit xc nh di ca phn thng tin iu khin (n v l 4 bytes), di thay i ph thuc trng option (Nu trng option rng, th chiu di l 5 x 4 bytes =20 bytes). - ECN (Explicit Congestion Notification): S dng trong iu khin tc nghn. - 6 bit iu khin. Bit ACK c s dng ch ra rng gi tr t trong trng bin nhn l ng. Cc bit RST, SYN v FIN c s dng trong vic thit lp hay ng kt ni. Khi bit PSH c bt, th y l du hiu yu cu bn nhn phi chuyn d liu ln tng trn ngay lp tc. Cui cng, bit URG c dng bo hiu d liu trong on tin c thc th tng trn bn gi to ra l khn cp. V tr byte cui cng ca d liu khn cp c xc nh bi con tr d liu khn 16 bit (ptr to urgent data). TCP phi Bi ging Mng my tnh Ths. Nguyn Xun Anh 108 bo cho tng trn bit c d liu khn v t con tr vo cui d liu khn (Trong thc t, PSH, URG v con tr d liu khn khng c s dng). - Window: Trng ln ca s 16 bit c s dng kim sot lu lng, l s lng byte d liu ti a m bn nhn c th chp nhn c. - Checksum: Gi tr kim tra li, c tnh bng phn b ca tng chui 16 bit. - Urgent Pointer: V tr byte cui cng ca d liu khn cp. - Trng option c th thay i tu . Trng ny c s dng bn gi v bn nhn c th thng lng v gi tr MSS hoc gi tr gia tng ca ca s trong mng cao tc, la chn nhn thi gian 1 . 6.2 Truyn d liu tin cy Giao thc IP chuyn cc gi tin khng m bo tnh chnh xc, th t cng nh tnh ton vn d liu. Cc gi tin IP c th b trn ti b m ca thit b nh tuyn v o khng bao gi n c ch, d liu c th n khng ng th t hay cc bit trong gi tin c th b thay i. Cc on d liu ca tng vn ti c t trong gi tin IP truyn qua mng chng hon ton c th b mt hoc b thay i gi tr. Giao thc TCP to ra mt ng truyn d liu tin cy trn nn giao thc IP khng tin cy. Dch v truyn d liu tin cy ca TCP m bo dng d liu ti tin trnh nhn khng c li, lin tc, khng trng gp v ng th t, ngha l dng byte nhn c ging ht dng byte gi i. Giao thc TCP cung cp dch v truyn d liu tin cy bng cch s dng c ch phi hp s tun t, xc nhn s tun t ACK v ng h xc nh thi gian qu hn mi on tin cn phi phn hi. Giao thc TCP bin nhn cho d liu c nhn chnh xc bng cch gi li s tun t nhn ca on tin k tip ang ch nhn (s tun t ca on tin nhn chnh xc cng thm 1). TCP cng thc hin vic gi lin tc (c ch ng ng), cho php bn gi c th gi nhiu on tin m cha cn nhn bin nhn ngay. C ch ny cho php nng cao ng k hiu sut ca ng truyn. s lng ti a cc on tin c gi cha cn bin nhn ngay ph thuc vo c ch kim sot lu lng v kim sot tc nghn ca giao thc TCP. n gin, gi thit kt ni TCP gia hai my A v B chuyn d liu t my A ti my B. Ti pha gi (my A), thc th TCP ly d liu ca tng ng dng, ng gi trong cc on d liu v chuyn cho tng mng. Ngay sau khi chuyn on tin cho tng mng, TCP khi ng ng h thi gian cho on tin . Thi gian i kt thc m vn cha nhn c bin nhn cho on tin gi s sinh ra mt ngt thi gian, khi my A phi x l bng cch truyn li on tin to nn ngt thi gian. Nhn c mt on tin cha gi tr trng bin nhn ACK hp l, thc th TCP pha gi phi quyt nh l ACK ln u tin nhn c (tc l bin nhn cho mt on tin gi nhng cha c bin nhn) hay ch l ACK trng
1 Xem thm RFC 854 v RFC 1323. Bi ging Mng my tnh Ths. Nguyn Xun Anh 109 lp (bin nhn li mt gi tin tng c bin nhn). Trong trng hp l ACK u tin th bn gi s bit rng tt c cc on tin c s th t khng vt gi tr bin nhn va nhn c c nhn ng ti pha bn nhn. Khi , bn gi c th cp nht bin trng thi TCP kim sot s th t ca on tin cui cng m n cho rng c nhn chnh xc v theo ng th t ti pha bn nhn. Cc hnh ng ca bn nhn c tm tt trong bng sau:
S kin Hnh ng bn nhn on tin n c s th t l s th t mong mun. Tt c d liu n s th t mong mun c bin nhn. Khng c khong trng trong d liu nhn c i mt thi gian nht nh (500ms), nu khng c on tin mi th gi ACK vi s tun t bin nhn l s th t ca on tin n trc khi ch +1. on tin n c s th t l s th t mong mun. on tin n trc ang i gi bin nhn. Khng c khong trng trong d liu nhn c Ngay lp tc gi ACK. on tin khng ng th t n, c s th t cao hn s th t mong mun nhn. Pht hin c khong trng d liu. Ngay lp tc gi ACK trng lp v ch ra s th t ca on tin mong mun nhn tip theo. Segment n lp y mt phn hoc ton b trng trong d liu nhn c Ngay lp tc gi i ACK bin nhn cho on d khong liu ng th t lin tc ln nht nhn c
. Khi bn nhn TCP nhn on tin c s th t ln hn s th t ng th t ang c mong i, n pht hin c on trng trong dng d liu - ngha l thiu on tin. Giao thc TCP khng s dng bin nhn ph nh nn n bin nhn li on tin ng th t cui cng m n nhn c (to ra ACK trng lp). Nu bn gi TCP nhn c 3 ACK trng lp cho cng mt on tin, n cho rng on tin ngay sau on tin c bin nhn ba ln b li. Trong trng hp ny, TCP thc hin c ch truyn li nhanh ( [RFC 258]), gi li on tin trc khi ng h thi gian ca ca on tin li thc hin ngt. Bn gi ca TCP /*assumesenderisnotcontrainedbyTCPfloworcongestioncontrol,thatdatafrom aboveislessthanMSSinsize,andthatdatatransferisinonedirectiononly*/ sendbase=initial_sequencenumbernextseqnum=initial_sequencenumber loop(forever){ switch(event) event:datareceivedfromapplicationabove create TCP segment with sequence number nextseqnum start timer for segmentnextseqnum passsegmenttoIP nextseqnum=nextseqnum+length(data) break;/*endofeventdatareceivedfromabove*/ event: timer timeout for segment with sequence number y retransmit segment withsequencenumbery computenewtimeoutintervalforsegmentybreak:/*endoftimeoutevent*/ event:ACKreceivedwithACKfieldvalueofy Bi ging Mng my tnh Ths. Nguyn Xun Anh 110
` `
S e q
1 0 0
t i m e o u t
S e q
9 2
t i m e o u t
if (y > sendbase) { /* cumulative ACKof all data up to y */ cancel all timers forsegmentswithsequencenumbers<ysendbase=y } else{/*aduplicateACKforalreadyACKedsegment*/Incrementnumberof duplicateACKsreceivedfory If(numberofduplicateACKsreceivedfory==3){ /*TCPfastretransmit*/ Resendsegmentwithsequencenumbery Restarttimerforsegmenty } }break;/*endofACKreceivedevent*/ }/*endofloopforever*/
Hnh 6.2 Truyn li v mt ACK
Gi s my A ang ch mt on tin ACK t my B vi gi tr bin nhn 100. on tin gi t my A n my B nhng ACK gi t my B n my A b mt. Trong trng hp ny, khi ht thi gian i, my A truyn li mt on tin c s tun t l 99 cho B. Tt nhin khi nhn c on tin truyn li, my B s pht hin s trng lp nh trng s tun t, v vy thc th TCP trn my B s loi b on tin truyn li ny. My A My B
Bi ging Mng my tnh Ths. Nguyn Xun Anh 111
Hnh 6.3 Khng cn truyn li on tin v ACK n trc thi ht thi gian i
Gi s my A gi hai on tin lin tip, on tin u tin c s th t l 92, segment th hai c s th t l 100. Gi s c hai on tin ny u n my B nguyn vn v my B gi bin nhn ACK ring r cho tng on tin, ACK cho on tin u tin c s bin nhn l 100 v cho segment th hai l 120. Gi thit c hai ACK u khng n c my A trc khi ht thi gian i ca on tin u tin. Khi ht thi gian i, my A gi li on tin u tin c s th t 92. My A ch gi li on tin th hai nu ht thi gian i trc khi ACK c s bin nhn 120 hoc ln hn n. V vy, nh minh ha trn hnh 4.21, nu ACK th hai khng mt v n trc thi hn ca on tin th hai th my A s khng phi gi li on tin th hai. Trng hp nu ACK ca on tin u tin b mt, nhng trc khi ht thi gian i ca on tin u tin, my A nhn c ACK c s bin nhn 120 - do my A hiu rng my B nhn c tt c cc on tin n tn on tin th 119, v vy my A khng phi gi li on tin no trong hai on tin trn. Mc d TCP l giao thc kiu Go- Back-N nhng chng khng ging hon ton. im khc bit ch Go-Back-N truyn tt c cc on tin c s tun t nh hn hoc bng s tun t ca on tin b li trong khi TCP ch truyn li bn tin b li . Gi thit c hai giao thc cng chuyn cc on tin 1N, tt c on tin ny u c nhn ng th t v khng c li. Gi s ACK ca on tin s M<N b mt nhng ACK ca N- 1 segment cn li n bn nhn trc khi ht thi gian i ca tng on tin.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 112
Hnh 6.4 ACK tch ly trnh vic truyn li on tin ng trc
Trong trng hp ny, Go-Back-N s truyn li tt c cc on tin MN trong khi TCP s truyn li nhiu nht l mt on tin c s tun t l th M, thm ch TCP s khng truyn li on tin th M nu ACK cho on tin th M+1 n trc khi ht thi gian i ca on tin th M. RFC 2018 xut m rng c ch bin nhn ca TCP ging kiu giao thc lp c la chn, bn nhn phi cung cp cho bn gi nhng thng tin tng minh v cc on tin no c nhn ng v cc on tin no b li hoc cha nhn c. 6.3 iu khin lung Khi kt ni TCP nhn c cc on d liu, n s t chng vo mt vng nh tm thi gi l m nhn. Mt tin trnh tng ng ca tng ng dng s c d liu t b m ny, sau khi c xong th phi gii phng b m dnh cho cc on tin k tip. V mt l do no , tin trnh c cha c kp d liu trong b m, khi s xy ra tnh trng trn b m. gii quyt vn ny, TCP cung cp dch v kim sot lu lng (flow control), thc cht l qu trnh lm tng thch v tc gi/nhn. kim sot lu lng, TCP bn gi s dng bin receive window. y l gi tr m bn nhn bo cho bn gi bit ln vng m cn ri ca n. Trong kt ni hai hng, mi pha kt ni c gi tr receive window phn bit. Gi tr receive window ng, c ngha l n s thay i trong thi gian kt ni. Gi s my A gi mt tp tin ni my B qua kt ni TCP. My B s khi to b m cho kt ni ny vi ln RcvBuffer. Tin trnh ng dng trn B c d liu t b m.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 113
Hnh 6.5 Ca s v b m nhn
Gi thit: LastByteread = s th t ca byte cui cng trong dng d liu m tin trnh ng dng trong my B c t buffer LastByteRcvd = s byte cui cng trong dng d liu n t mng v c trong receive buffer ca my B V TCP khng c php trn b m nn chng ta phi c: LastByteRcvd - LastByteread < RcvBuffer Receive window l gi tr RcvWindow, l ln vng m ri: RcvWindow = RcvBuffer - [LastByteRcvd - LastByteread] V ln vng m ri thay i theo thi gian nn gi tr RcvWindow ng. kt ni s dng bin RcvWindow cung cp dch v kim sot lu lng nh th no? my B bo cho my A ln vng ri m n c trong b m l bao nhiu bng cch t gi tr RcvWindow hin thi vo trong trng window ca tt c cc segment gi t A. Ban u my B thit lp RcvWindow RcvBuffer. R rng t c iu ny th my B phi kim sot vi bin kt ni. My A cng c hai bin LastByteSent v LastByteAcked. lch gia hai bin ny, LastByteSent - LastByteAcked l s lng d liu cha c bin nhn m A gi qua kt ni. Bng cch khng ch s lng d liu cha c bin nhn nh hn gi tr RcvWindow, A m bo khng lm trn b m ti B. Do vy trong sut thi gian kt ni, A phi m bo: LastByteSent - LastByteAcked <= RcvWindow Mt vn k thut nh ny sinh y. Gi s b m my B y, c ngha l RcvWindow = 0. Sau khi thng bo ti my A l RcvWindow = 0, my B khng c g gi ti my A. Khi tin trnh ng dng my B ly d liu ln Bi ging Mng my tnh Ths. Nguyn Xun Anh 114 lm cho b m rng th TCP khng gi on tin mi cng vi gi tr RcvWindow mi ti my A - TCP ch gi on tin ti A khi c d liu hoc ACK gi. Bi vy my A s khng bao gi c thng bo c thm khong trng trong b m B. My A b kho v khng truyn thm d liu. gii quyt vn ny, c t TCP yu cu my A tip tc gi on tin vi mt byte d liu khi receive window ca my B bng 0. Nhng on tin ny s c B bin nhn. Khi b m bt u c vng rng th trong gi bin nhn s c c gi tr khc khng ca RcvWindow. Khc vi TCP, giao thc UDP khng c c ch kim sot lu lng. UDP t cc datagram vo trong mt hng i c ln hu hn ng vi socket no. Tin trnh c ln lt tng datagram trong hng i. Nu tc c ca tin trnh khng nhanh th hng i s trn v cc datagram n sau s b mt. 6.4 Qun l kt ni Giao thc TCP thuc loi kt ni c hng, do mt kt ni ca n phi c thc hin qua ba giai on: thit lp lin kt, truyn d liu v hy b lin kt. thc hin thit lp lin kt v hy b lin kt, cc tin trnh TCP trn cc thit b u cui ca ngi s dng phi trao i cc on tin c bit (nhng on tin ny s dng cc c trong trng Control Bits). Gi s tin trnh chy trn my my khch mun khi to mt kt ni ti mt tin trnh trn my ch. u tin tin trnh ng dng trn my khch yu cu thc th TCP ca n thit lp mt kt ni ti mt tin trnh trn my ch, sau thc th TCP my khch khi to kt ni TCP ti thc th TCP trn my ch qua ba bc sau: Bc 1: My khch to mt on tin c bit (khng cha d liu ca tng ng dng nhng cha cc thng tin iu khin): c SYN trong Control Bits c t gi tr bng 1, s tun t ban u (client_isn) v chuyn xung lp mng gi ti my ch. Bc 2: Khi nhn c on tin SYN, tin trnh TCP ca my ch s cp pht b m nhn v cc bin TCP phc v kt ni ng thi gi i mt on c bit thng bo chp nhn kt ni t my khch. on tin ny cng khng cha d liu ca tng ng dng m ch thit lp bit SYN v bit ACK (do gi l on tin SYNACK) trong trng Control bits, thit lp s tun t ca mnh (server_isn), s tun t xc nhn bng client_isn+1, thit lp gi tr trng ca s v cc tham s khc. Bc 3: Nhn c on tin SYNACK, tin trnh TCP ca my khch cng khi to b m v cc bin phc v kt ni ng thi gi on tin th ba bin nhn vi cc tham s: Bit ACK c t bng 1, s tun t l client_isn+1, s xc nhn l server_isn + 1.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 115
Hnh 6.6 Ba bc bt tay trong giai on thit lp kt ni ca TCP
Sau khi thc hin 3 bc trn, mt knh truyn logic c thit lp, my khch v my ch c th trao i on d liu ca lp ng dng. Nh vy, thit lp c kt ni hai my phi trao i 3 on t, v vy th tc kt ni c xem l qu trnh bt tay ba bc. Sau khi truyn xong d liu th phi gii phng ti nguyn mng, do my khch v my ch phi chuyn sang giai on th ba l hy b kt ni, vic hy b kt ni khng nht thit phi bt u t my khch. Khi kt ni kt thc th cc ti nguyn (b m v cc bin TCP) trong my c gii phng. V d my khch quyt nh ng kt ni. Tin trnh ng dng my khch s a ra lnh ng. Khi tin trnh TCP ca my khch gi mt on tin c bit n tin trnh my ch: c FIN trong segment ny c t gi tr 1. Nhn c on tin FIN, my ch ln lt gi hai on tin cho my khch: mt on tin ACK bin nhn on tin FIN ca my khch v mt on tin kt thc FIN. Cui cng my khch gi on tin ACK bin nhn on tin FIN t my ch. Sau bn bc trn, tt c nguyn ca hai my phc v cho kt ni u c gii phng. Trong sut thi gian kt ni TCP, giao thc TCP chy trn mi my chuyn qua cc trng thi TCP (TCP state, s dng lnh netstat a kim chng cc trng thi ny). Hnh 4.27 minh ha qu trnh thay i trng thi TCP xy ra bn pha my khch. TCP my khch bt u trng thi ng (CLOSED). ng dng bn pha my khch khi to mt kt ni TCP. iu ny i hi TCP my khch gi on tin SYN ti my ch. Sau khi gi on tin SYN, TCP my khch chuyn sang trng thi SYN_SENT. Trong trng thi SYN_SENT, TCP my khch i on tin SYNACK. Khi nhn c on tin ny, my khch chuyn sang trng thi ESTABLISHED. trng thi ESTABLISHED, my khch c th gi v nhn nhng on tin cha d liu ca tng ng dng.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 116
Hnh 6.7 Kt thc kt ni TCP
Gi s ng dng my khch quyt nh ng kt ni (my ch tng t). Khi TCP my khch gi on tin FIN v chuyn sang trng thi FIN- WAIT_1. Trong trng thi ny, TCP my khch i on tin bin nhn t pha my ch. Sau khi nhn c on tin ny, TCP my khch chuyn sang trng thi FIN_WAIT_2. Trong trng thi FIN_WAIT_2, TCP my khch i FIN on tin t my ch. Sau khi nhn on tin ny, TCP my khch gi on tin ACK bin nhn ti my ch v chuyn sang trng thi TIME_WAIT. Trong trng thi TIME_WAIT, TCP my khch c th gi li bin nhn ACK trong trng hp ACK trc b mt. Thi gian i trng thi TIME_WAIT ph thuc vo phn mm trin khai TCP, nhng thng nhn cc gi tr 30 giy, mt pht, hai pht. Sau khi ht thi gian i, kt ni chnh thc c ng v tt c ti nguyn pha my khch (bao gm c s hiu cng) c gii phng.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 117
Hnh 6.8 Qu trnh bin i trng thi ca Client
Hnh 6.9 Qu trnh bin i trng thi ca Server 6.5 iu khin tc nghn Mt chc nng quan trng khc ca giao thc TCP l c ch kim sot tc nghn. C ch ny ca TCP ch da vo cc thit b u cui ch khng da vo c ch kim sot tc nghn ca tng mng v tng IP khng cung cp cho TCP cc thng tin minh bch khi c tc nghn. Kt ni TCP kim sot tc truyn ca n bng cch gii hn s lng cc on tin gi nhng cha c bin nhn. Gi W l s lng cho php cc on tin cha cn bin nhn, thng coi nh kch thc ca s ca TCP. Trng hp l tng, kt ni TCP cho php Bi ging Mng my tnh Ths. Nguyn Xun Anh 118 truyn vi tc ti a c th (cng nhiu on tin cha c bin nhn) chng no m cha xy ra hin tng mt on tin do b tc nghn. Ni chung kt ni TCP bt u vi gi tr W tng i nh v sau thm d knh truyn cn di hay khng bng cch tng dn gi tr W. Kt ni TCP tip tc c tng W cho n khi xy ra mt d liu (s kin ht thi gian i hay nhn c cc bin nhn trng lp). Khi TCP s gim W ti mt gi tr an ton v sau li bt u thm d knh truyn ri bng cch tng dn gi tr W. Mi kt ni ca TCP c b m gi, b m nhn v mt vi bin (LastByteRead, RcvWin). C ch kim sot tc nghn ca TCP b sung thm hai bin na: ca s tc nghn (congestion window) v ngng (threshold). Ca s tc nghn, k hiu l CongWin biu th s lng d liu ti a m ngi gi c th gi qua kt ni. Nh vy khi lng d liu c gi khng c vt qu CongWin v RcvWin, tc l: LastByteSend - LastByteAcked <= min {CongWin,RcvWin} Ngng k hiu l threshold s nh hng ti qu trnh tng ca CongWin. Gi thit bn gi cn gi mt lng d liu ln v b m bn nhn ln c th cha c lng d liu chuyn n, khi s lng d liu gi cha cn c bin nhn ch b gii hn bi CongWin. Khi kt ni TCP c thit lp gia hai h thng u cui, tin trnh ng dng gi chuyn d liu ti b m gi ca TCP. TCP chia d liu thnh cc khi vi kch thc MSS, t cc khi d liu trong on tin, v chuyn chng ti tng mng. Ca s tc nghn ca TCP iu tit s lng on tin c gi. Ban u, CongWin nhn gi tr 1 MSS, TCP gi on tin u tin v c bin nhn. Nu on tin ny c bin nhn trc khi qu thi gian, pha gi tng CongWin v gi i hai on tin. Nu nhng on tin ny c bin nhn trong thi gian i ca chng, CongWin li c tng thm 1 MMS cho mi on tin c bin nhn. Khi CongWin mi l 4 MMS v pha gi gi i bn on tin. Th tc ny c thc hin lin tc cho ti khi CongWin vt ngng hoc khng nhn c bin nhn trong thi gian ch bin nhn. Trong giai on ny, ca s tc nghn CongWin tng theo hm s m. Ban u n nhn gi tr 1 MSS, sau tng ln 2 MMS, 4 MMS, 8 MMS . . . y l giai on khi u chm v gi tr ca s khi u vi gi tr nh, n s tng kh nhanh theo qui lut ht thc trn bn c chu u. Giai on khi u chm kt thc khi CongWin vt ngng, lc gi tr CongWin s tng tuyn tnh ch khng cn tng theo hm s m. Tc l nu CongWin = W, sau khi nhn c bin nhn cho W on tin, gi tr CongWin s tng thm 1, CongWin = W+1, giai on ny cn gi l trnh tc nghn. Giai on trnh tc nghn tip tc khi vn nhn c bin nhn trong thi gian i. Tuy nhin gi tri ca s cng nh tc gi d liu khng th tng mi. n lc no s xy ra s c mt gi d liu trn mng. iu ny dn n hin tng qu thi gian bn gi. Lc ny gi tr ngng (threshold) nhn gi tr bng mt na CongWin, CongWin c t bng 1 MMS. Bn gi s tip tc tng nhanh gi tr CongWin theo hm s m cho n khi n vt ngng.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 119
Hnh 6.10 Ca s kim sot tc nghn
Tm li: - Khi ca s tc nghn cha vt ngng, ca s s tng theo hm m. Khi ca s tc nghn vt ngi, ca s s tng tuyn tnh. - Khi ht thi gian i, gi tr ngng bng mt na gi tr ca s tc nghn hin thi v ca s tc nghn nhn gi tr 1. Nu b qua giai on khi u chm, TCP tng ln ca s theo cp s cng khi mng cha b tc nghn v gim ln ca s theo cp s nhn (chia 2) ngay khi mng b tc nghn. V vy, TCP c coi l thut ton AIMD (additive-increase, multiplicative-decrease). ln ca s tc nghn ca TCP c minh ha trong hnh 6.10, ngng ban u bng 8 MSS. Ca s tc nghn tng nhanh theo lu tha 2 trong giai on khi u chm v t ngng ti t=3, gi tr ca s tc nghn tng tuyn tnh n khi xut hin mt d liu. Gi s khi d liu b mt, ca s tc nghn c gi tr 12 MMS. Ngng mi c t bng 6 MSS v ca s tc nghn bng 1 MMS, qu trnh li c tip tc. Thut ton ny do V.Jacobson xut, hin nay c nhiu bin th ca thut ton ny. Thut ton Tahoe, Reno v Vegas: Thut ton kim sot tc nghn trn y c gi l Tahoe, tuy nhin n c nhc im khi mt on tin b mt, bn pht c th phi i trong mt khong thi gian di gi li. V vy mt bin th ca thut ton Tahoe gi l Reno c trin khai trong phn ln cc h iu hnh. Ging Tahoe, Reno t ln Bi ging Mng my tnh Ths. Nguyn Xun Anh 120 ca s tc nghn bng 1 khi qu thi gian ca b nh thi. Tuy nhin Reno c c ch truyn li nhanh, bn pht s gi li on tin nhn c bin nhn ba ln ngay c khi cha ht thi gian i ca on tin ny. Reno cng s dng c ch khi phc nhanh, hin nay phn ln thc th TCP s dng thut ton Reno, tuy nhin cng xut hin mt s thut ton ci tin hiu sut ca Reno nh thut ton Vegas.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 121 CHNG 7: TNG MNG V GIAO THC IP 7.1 M hnh dch v tng mng Tng vn ti cung cp dch v truyn thng gia hai tin trnh ang chy trn hai my tnh khc nhau. c th cung cp c dch v ny, tng vn ti phi s dng dch v cung cp ng truyn gia hai my tnh ca tng mng. Ni c th hn, tng mng chuyn on tin ca tng vn ti t my tnh ny n my tnh khc. Ti bn gi, tt c cc on d liu ca tng vn ti c chuyn xung tng mng. Nhim v ca tng mng l chuyn nhng on d liu ny n my tnh ch v t s chuyn ln tng vn ti ca my nhn. Khng ging tng vn ti, tng mng gm nhiu my tnh v cc thit b mng trung gian, v vy giao thc tng mng l mt trong nhng giao thc phc tp nht.
Hnh 7.1 Mng my tnh v cc thit b mng
Hnh 7.1 minh ha mt mng n gin vi hai my tnh H1 v H2 v mt s thit b nh tuyn trn ng truyn gia H1 v H2. Nu H1 gi gi tin n H2 th tng mng trn H1 s truyn gi tin ny n thit b nh tuyn gn nht: R1. Ti my tnh nhn H2, tng mng s nhn gi tin t thit b nh tuyn gn n nht (trong trng hp ny l R2) v chuyn ln cho tng vn ti ti. Vai tr Bi ging Mng my tnh Ths. Nguyn Xun Anh 122 chnh ca thit b nh tuyn l chuyn gi tin t mt cng giao din sang cng giao din khc. Vai tr ca tng mng n gin chi l chuvn gi tin t my tnh gi n my tnh nhn. V th, tng mng c ba chc nng quan trng sau y: Xc nh ng i: Tng mng phi xc nh cc tuyn ng m gi tin c truyn t ngun n ch. Thut ton xc nh tuyn ng nh vy gi l thut ton nh tuyn. Thut ton nh tuyn s quyt nh ng i ca cc gi tin t my tnh nhn n my tnh gi (trong v d l my tnh H1 v my tnh H2). Trng tm ca chng ny l cc thut ton nh tuyn. phc tp ca thut ton nh tuyn tng t l vi s lng thit b nh tuyn trn ng truyn, diu ny dn n vn nh tuyn phn cp. Chuyn mch: Khi gi tin n u vo ca mt thit b nh tuyn, n phi quyt nh gi gi tin n u ra thch hp no. V d, gi tin t my H1 n router R1 s phi c chuyn n router k tip trn ng ti H2. Thit lp ng truyn: Ti tng vn ti, hai thc th truyn thng phi c mt giai on Bt tay trc khi trao i d liu thc s. iu ny cho php bn gi v bn nhn thit lp cc thng tin trng thi cn thit. Mt s kin trc mng khc (v d ATM) i hi cc thit b nh tuyn trn tuyn ng t ngun n ch phi Bt tay nhau trc khi bt u truyn d liu thc s, qu trnh ny c gi l thit lp ng truyn. Tng mng trong m hnh TCP/IP khng i hi cng vic ny. 7.1.1 Nguyn l chuyn mch tng mng Tng mng s dng mch o (Virtual Circuit - VC) truyn cc gi tin, v kha cnh no mch o tng t mng in thoi truyn thng. C ba giai on trong chuyn mch o: - Thit lp mch o: trong c giai on thit lp, ni gi thng bo a ch nhn vi tng mng, yu cu tng mng thit lp mch o. Tng mng xc nh tuyn ng gia bn gi v bn nhn, tc l chui cc cung ng v cc thit b chuyn mch m tt c cc gi d liu s i qua. iu ny yu cu vic cp nht bng nh tuyn v d tr ti nguyn trong mi thit b chuyn mch. - Truyn d liu: Sau khi thit lp c mch o, d liu c th c chuyn trong mch o . - ng mch o: Giai on ny bt u khi pha gi (hoc pha nhn) bo cho tng mng yu cu ng mch o. Tng mng s thng bo cho thit b u cui bn kia cng nh cc thit b chuyn mch trn mch o cp nht li cc bng nh tuyn, gii phng ti nguyn. Mch o tng mng khc vi vic thit lp kt ni tng vn ti. Thit lp kt ni tng vn ti ch lin quan n cc thit b u cui ca ngi s dng. Hai thit b ng thit lp kt ni v tho thun cc thng s ca kt ni (v d s th t khi to, ln ca s kim sot lu lng). Hai thit b u cui ny s nhn bit c v s kt ni tng vn ti, nhng cc thit b chuyn mch gia th khng bit cc thng tin . Tri li trong tng mng ca mng chuyn mch o, tt c cc thit b chuyn mch gia hai thit b u cui u tham gia Bi ging Mng my tnh Ths. Nguyn Xun Anh 123 vo qu trnh thit lp mch o, v do u nhn bit c tt c cc mch o i qua.
Hnh 7.2 M hnh dch v chuyn mch o
Bn tin trao i gia cc thit b u cui yu cu khi to hay kt thc mch o, bn tin trao i gia cc thit b chuyn mch yu cu thit lp mch o (cp nht bng chuyn mch) c gi l bn tin bo hiu. Giao thc c s dng trao i nhng bn tin ny v giao thc bo hiu. Qu trnh thit lp mch o c minh ha trong hnh 5.2. ATM, Frame Relay v X.25 l ba kin trc mng s dng chuyn mch o. Trong mng chuyn mch gi, khi thit b u cui mun gi gi tin, n t vo gi tin a ch thit b nhn v sau chuyn gi tin vo mng. Nh minh ha trong hnh 5.3, khng c giai on thit lp mch o. Nhng thit b trung chuyn trong mng chuyn mch gi (c gi l b nh tuyn - router) khng duy tr bt k trng thi no v mch o. Thit b trung chuvn s nh tuyn gi tin n ch bng cch xc nh a ch ch, tm kim trn bng nh tuyn v chuyn tip gi tin theo hng n ch (ging vic chuyn th bnh thng trong h thng bu in). V bng nh tuyn c th c cp nht lin tc, nn cc gi tin c gi t thit b u cui ny n thit b u cui khc c th i theo nhiu tuyn ng khc nhau v n ch khng theo th t. Mng Internet cng cng ngy nay s dng dch v chuyn mch gi. chuyn on tin ca tng vn ti, tng mng thng a ra dch v chuyn mch o hoc dch v chuyn mch gi nhng khng bao gi cung cp c hai dch v ny. V d, dch v ca mng ATM l mch o trong khi mng Internet cung cp dch v chuyn mch gi. Dch v chuyn mch o c xp vo lp dch v hng ni v phi thit lp v kt thc kt ni cng nh vic duy tr thng tin trng thi ca kt ni ti tt c thit b chuyn mch. Dch v chuyn mch gi c xp vo lp dch v khng hng ni.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 124
Hnh 7.3 M hnh chuyn mch gi
Bng 7.1 tm tt nhng nt chnh ca m hnh dch v Internet v kin trc mng ATM. Kin trc hin nay ca Internet ch cung cp duy nht dch v chuyn mch gi, mt dch v truyn s liu theo kiu ht sc c gng.
Bng 7.1Nhng c im chnh ca m hnh dch v Internet v mng ATM
Mng Loi dch v m bo bng thng m bo khng mt d liu Th t tr Kim sot Tc nghn Internet C gng ti a Khng Khng Khng Khng Khng ATM CBR C C C C Khng tc nghn ATM VBR C C C C Khng tc nghn ATM ABR tc nh nht Khng C C Khng tc nghn ATM UBR Khng Khng C C Khng
Tng mng ca m hnh TCP/IP khng m bo thi gian gi cc gi tin ging nhau, cc gi tin khng c m bo n ch theo ng th t v thm ch khng m bo gi tin n c ch. Kin trc ATM cung cp nhiu kiu dch v khc nhau (ATM c nhiu m hnh dch v). Trong phm vi cng mt mng nhng kt ni khc nhau c th c cung cp nhng lp dch v khc nhau. Dch v truyn vi tc c nh (CBR- Constant Bit Rate): l m hnh dch v ATM u tin c chun ho c th thy c vai tr cc cng ty in thoi ng sau ATM. Dch v mng CBR l s la chn l tng cho vic truyn d liu a phng tin (v d in thoi s) theo thi gian thc vi tc truyn c nh. Mc tiu ca dch v CBR l lm cho kt ni mng trng ging nh mt ng kt ni thc s gia bn gi v bn nhn. Trong dch v CBR cc t bo c truyn qua mng vi mt tr no. Bin thin ca tr, t l cc t bo b mt hay n tr c m bo khng vt qu mt gi tr ngng. Bi ging Mng my tnh Ths. Nguyn Xun Anh 125 Tc truyn ti a ca mi kt ni c xc nh trc v bn gi c th gi d liu vi tc ny. Dch v truyn vi tc khng xc nh (UBR - Unspecified Bit Rate): Khng ging dch v CBR (m bo tc , tr mt mt d liu), UBR khng m bo nhng iu ny ngoi tr vic gi cc cell theo ng th t. Nh vy dch v UBR ging m hnh dch v C gng ti a ca Internet. dch v UBR khng cung cp thng tin phn hi cho bn gi v vic cc t bo c n c ch hay khng. Vi mng UBR, tnh tin cy ca truyn d liu c trin khai trong cc giao thc tng cao hn, dch v UBR ph hp vi nhng ng dng truyn d liu khng cn tc truyn c nh. Dch v truyn vi tc c sn (ABR - Available Bit Rate): tng t nh UBR nhng b xung thm hai tnh nng: - Tc truyn t bo nh nht (MRC) c m bo cho kt ni ABR. Tuy nhin khi ti nguyn ca mng ri, bn gi c th gi vi tc cao hn MCR. - C phn hi v tc nghn t tng mng, mng ATM c th cung cp thng tin phn hi cho bn gi (l bit thng bo tc nghn hay tc gi thp) bn gi iu chnh tc gi. ABR khng m bo mt bng thng ti thiu nhng c gng truyn d liu nhanh nht c th. Nh vy, ABR ph hp vi cc ng dng truyn d liu yu cu tr nh (v d duyt Web). Dch v truyn vi tc bin i (variable bit rate - VBR): Trong dch v VBR thi gian thc, t l mt gi d liu, tr c th chp nhn c tha thun trc ging dch v CBR. Tuy nhin, tc gi thc s c php thay i theo cc tham s do ngi dng a vo. iu ny cho php s dng ti nguyn c hiu qu hn, nhng xt theo cc tiu ch v mt mt d liu, tr th VBR tng t CBR. 7.1.2 Lch s chuyn mch gi v chuyn mch o Lch s pht trin ca m hnh dch v mng Internet v ATM phn nh ngun gc ca chng. Vn hnh da trn mch o v cung cp dch v tc c nh CBR, mng ATM dng nh tha k m hnh mng in thoi cng cng. Mc d sau ny mng ATM ch trng cc dch v truyn s liu, tuy nhin vi phng php s dng mch o v phi h tr truyn d liu theo thi gian thc ng thi vn m bo hiu nng cho tt c cc dch v, tng mng ca ATM phc tp. Ngc li mng Internet (theo kin trc TCP/IP) xut pht t nhu cu kt ni cc my tnh (c xem l thit b thng minh) vi nhau. Vi thit b u cui phc tp, kin trc Internet la chn m hnh dch v mng n gin nht c th v t cc chc nng ph tr (v d nh truyn d liu tin cy), cng nh cc ng dng mng tng cao hn trn cc thit b u cui. M hnh dch v mng ca Internet khng m bo bt k mt dch v no do vy c th d dng kt ni cc mng s dng nhng cng ngh kt ni rt khc nhau (v d v tinh, Ethernet, cp quang, sng v tuyn). Cc cng ngh ny c tc v t l mt Bi ging Mng my tnh Ths. Nguyn Xun Anh 126 mt d liu khc nhau. Nhng ng dng trn mng Internet nh th in t, Web, v thm ch c dch v ca tng mng nh DNS c trin khai trn cc my tnh (v thit b u cui). Cc dch v mi c th nhanh chng c s dng rng ri thng qua cc giao thc tng ng dng. 7.2 Nguyn tc nh tuyn truyn gi d liu t my tnh gi n my tnh nhn, tng mng phi quyt nh ng i hoc cc thit b nh tuyn m gi d liu phi i qua. D mng chuyn mch gi (cc gi tin khc nhau c th i theo cc tuyn ng khc nhau) hay mng mch o (tt c cc gi tin c truyn trn cng mt tuyn ng nh trc) th tng mng u phi xc nh ng i cho gi tin. y l cng vic ca cc giao thc nh tuyn tng mng. chuyn mt gi tin t ngun n ch, trong mi thit b nh tuyn phi tn ti bng nh tuyn. C hai cch xy dng bng nh tuyn, nh tuyn tnh v nh tuyn ng. nh tuyn tnh ch c th p dng cho tuyn ng rt t thay i, trong khi nh tuyn ng ph hp vi cc tuyn ng khi lu lng mng hay kin trc lin kt mng b thay i. Trong nh tuyn ng, mt tin tnh nh k hoc theo s kin lin tc gi bn tin v tnh trng ca cc tuyn mng. Trng tm ca giao thc nh tuyn l thut ton xc nh ng i cho gi tin hay cn gi l thut ton tm ng, thut ton nh tuyn. Mc tiu ca thut ton nh tuyn ht sc n gin: vi mt tp hp thit b nh tuyn cng vi lin kt gia cc thit b nh tuyn, thut ton nh tuyn phi xc nh ng i tt nht t thit b ngun n thit b ch. ng i tt nht c th l ng i c gi nh nht, tuy nhin trong thc t nhiu vn khc lm phc tp ha cc thut ton ny, v d cc vn lin quan n chnh sch, gi c V d: thit b nh tuyn X thuc t chc Y khng c chuyn tip cc gi tin c to ra t mng ca t chc Z. Ngi ta thng s dng l thuyt th p dng cho cc thut ton nh tuyn. Hnh 7.4 biu din v m hnh ha s mng di dng th. y nt ca th th hin thit b nh tuyn, cung trong l thuyt th ni cc nt th hin ng truyn vt l gia cc thit b nh tuyn. Cung c c trng bi i lng gi l chi ph ca vic gi gi tin qua thit b nh tuyn. Gi c th phn nh mc tc nghn trn ng truyn (thi gian tr trung bnh) hoc khong cch vt l gia hai thit b nh tuyn. n gin chng ta coi mi cung trn th c mt gi v khng quan tm n vic xc nh gi bng cch no.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 127
Hnh 7.4 M hnh mng di dng th
Vi m hnh th, vn tm kim tuyn ng t ngun n ch c chi ph thp nht yu cu xc nh chui cc cung sao cho: - Cung u tin trong tuyn ng xut pht t ngun. - ch ca cung cui cng trong tuyn ng l ch. - Vi mi i, cung th i v i-1 cng kt ni vo mt nt. Vi ng i c gi nh nht, tng chi ph ca tt c cc cung trn trn tuyn ng l nh nht. Ch nu tt c cc cung c gi nh nhau th ng i c gi nh nht cng l ng i ngn nht gia ngun v ch. V d nh trong hnh 5.4, ng i c gi nh nht gia nt A (ngun) v nt C (ch) l ng ADEC. tm ng i c gi thp nht t A n F, phn ln mi ngi s ln theo cc thit b nh tuyn t A n F qua nhiu con ng (c tt c 12 tuyn ng khc nhau ni A v F) sau so snh gi ca mi tuyn ng. Qu trnh nh vy ch c th thc hin c khi c y thng tin v tt c cc nt v cc cnh trn th hay thut ton gi l thut ton tm ng tp trung. Thut ton nh tuyn ton cc xc nh ng i vi gi thp nht gia ngun v ch bng cch s dng tt c thng tin v tng th mng. u vo ca thut ton l tt c cc nt, cung v gi ca cc cung. R rng thit b nh tuyn phi bng mt cch no thu c cc thng tin ny trc khi bc vo giai on tnh ton thc s. Thut ton c th c chy ti mt ni (thut ton nh tuyn tp trung) hoc chy ti nhiu ni. Tuy nhin im phn bit chnh yu l thut ton nh tuyn ton cc phi c trc y thng tin v th mng. Trong thc t, thut ton nh vy c gi l thut ton trng thi ng truyn (link state) v thut ton phi bit c gi ca mi lin kt trn mng. Trong thut ton phn tn, xc nh ng i c gi thp nht c thc hin dn dn theo cch thc phn tn. Khng nt no c y thng tin v gi ca tt c cc lin kt trn mng. Ban u mi nt ch bit v gi ca cc cung c ni trc tip vi n. Sau , thng qua cc bc tnh ton v trao i thng tin vi cc nt hng xm (hai nt c gi l hng xm nu gia chng c mt ng kt ni vt l trc tip, trong thut ng th gi l hai nh k nhau), nt dn dn xc nh c ng i c gi nh nht n mt tp hp ch no . Thut Bi ging Mng my tnh Ths. Nguyn Xun Anh 128 ton ny l thut ton vector khong cch (distance vector) v mi nt khng bit c ng i c th n ch m ch bit n nt hng xm trn ng n ch v tng gi ca ng i n ch. 7.2.1 Thut ton nh tuyn theo trng thi ng truyn Trong thut ton trng thi ng truyn, cu trc mng v gi ca tt c cc lin kt u phi c xc nh trc. iu ny c thc hin bng cch mi nt s gi thng bo qung b v nh danh ca mnh v gi cc cung lin kt trc tip n n ti tt c cc thit b khc trn mng. Vic qung b rng ri trng thi ng truyn c th c thc hin ngay khi nt khng bit v y cc nt khc trn mng. Ban u nt ch bit c thng tin v cc hng xm ca mnh cng nh gi cc cung n cc hng xm. Nhng sau n s xc nh c hnh trng ca phn cn li ca mng khi nhn nhng thng bo qung b t cc nt khc. kt qu ca vic qung b trng thi lin kt l tt c cc nt c th y thng tin v tng th mng. Sau mi nt u c th chy thut ton trng thi ng truyn v xc nh ng i c gi thp nht ti mi nt.
Hnh 7.5 Xy dng bng nh tuyn da trn php trng thi ng truyn
Thut ton trng thi ng truyn thng c s dng l thut ton Dijkstra, l thut ton xc nh ng i c gi thp nht t mt nt ngun n tt c cc nt khc trn mng. Thut ton Dijkstra c nhiu bc v sau k bc s xc nh c ng i c gi thp nhp ti t nt ch. Chng ta nh ngha mt s k hiu sau: c(i, j) : gi lin kt t nt i n nt j. Nu nt i v nt j khng c ng kt ni trc tip th c(i, j)=. n gin, chng ta coi c(i, j)= c(j, i). D(v): gi hin ti thp nht ca tuyn ng i t nt ngun n nt v. Bi ging Mng my tnh Ths. Nguyn Xun Anh 129 P(v) : nt pha trc nt v (hng xm ca v) trn tuyn ng hin c gi thp nht t ngun ti nt v. N: tp hp ca cc nt xc nh c ng i ngn nht ti. Thut ton Dijkstra gm c bc khi to cho vng lp, s cc bc bng tng s nt trn mng. Khi kt thc, thut ton s xc nh c ng i ngn nht t nt ngun n tt c cc nt khc trn mng. Thut ton Link state(LS):
Khi to: N={A} For (tt c cc nt v) if v k A th D(V)=c(A,v) else D(v)= Repeat Tm w khng trong N c D(w) nh nht B sung w vo N cp nht D(v) cho tt c v k vi w v khng nm trong N: D(v)=min (D(v), D(w)+c(w,v)) /* gi mi n v khc c gi c n v hoc bit c gi ng i ngn nht n w cng vi gi t w n v */ Until tt c cc nt nm trong N
Bng 7. 2 bng trng thi cc bc cho mng minh ha trn hnh 5.4
Bc
N
D(b), p(B) D(c), p(C) D(D), p(D) D(E), p(E) D(F), p(F) 0 A 2, A 5, A 1, A 1 AD 2, A 4, D 2,D 2 ADE 2, A 3, E 4, E 3 ADEB 3, E 4, E
Xt th mng trong hnh 7.4 v tnh ng i c gi thp nht t A n tt c cc nt khc bng 4.2 cho thy cc kt qu tnh ca thut ton, mi dng trong bng ng vi trng thi ca thut ton sau khi kt thc mt bc. Sau y chng ta s phn tch mt s bc u tin: - Trong bc khi to, gi hin ti thp nht ca ng i t A n cc nt hng xm B, C v D tng ng l 2, 5, v 1. Chng ta c mt ch nh y, gi n C c t l 5 (ngay sau y chng ta s thy y khng phi l ng i tt nht) v y l gi ca ng ni trc tip t A n C. Gi Bi ging Mng my tnh Ths. Nguyn Xun Anh 130 n E v F c t l v cng v gia A v E, F khng c ng kt ni trc tip. - Trong bc u tin chng ta tm kim trn nhng nt cha c a vo tp N v xc nh nt c gi n thp nht. l nt D vi gi l 1 v do D c b sung vo N. Dng 12 ca thut ton LS c thc hin cp nht D(v) cho tt c cc nt v, kt qu nhn c c trnh by trong dng th 2 (bc 1) trong bng 4.2. Gi ca ng i n B khng i. Gi ng i n C (nhn gi tr 5 trong bc khi to trc) qua D c gi tr nh hn l 4. y l ng Tt hn c chn v nt pha trc ca C trn ng i ngn nht t A s l D. tng t vy, gi ng i n E (qua D) c tnh l 2 v bng c cp nht tng ng. - Trong bc th hai, ng i n nt B v E u c gi thp nht v chng ta b sung E vo tp N (By gi N cha A, D v E). Gi n cc nt cha nm trong N (gm B, C v F) c cp nht trong dng 12 ca thut ton LS, kt qu l dng 3 ca bng 4.2.. Khi thut ton LS kt thc, vi mi nt chng ta xc nh c nt ngay trc n trn tuyn ng c gi thp nht xut pht t ngun. vi mi nt pha trc chng ta li c nt pha trc na Cui cng chng ta xc nh c ton b ng i t ngun n tt c cc nt ch. phc tp tnh ton ca thut ton ny bng bao nhiu? vi n nt (khng k nt ngun), tm ng i c gi thp nht t ngun n tt c cc ch, khi lng tnh ton l bao nhiu trong trng hp xu nht? Trong vng lp u tin chng ta cn kim tra qua tt c n nt xc nh nt w c gi nh nht khng nm trong N; trong vng lp th hai, chng ta cn kim tra n - 1 nt xc nh gi thp nht trong vng lp th ba l n - 2 nt tng s cc nt m chng ta cn phi kim tra qua tt c cc bc l n(n+l)/2 v theo chng ta c th ni rng thut ton Link state c phc tp l O(n2). (Thut ton ny c th c ci tin bng cch s dng cu trc d liu HEAP, phc tp ch cn theo hm logarit ca n). Trc khi kt thc v thut ton LS, chng ta hy xt v d minh ha mt cu hnh mng ging nh trn hnh 5.5. Gi ca mi lin kt (cung) bng Ti hin ti trn n (nh th gi s l tr m gi tin phi chu). Trong trng hp ny gi khng c tnh cht i xng, ngha l c(A, B) ch bng c(B, A) nu ti trn c hai hng AB l nh nhau. Gi s hai nt B v D gi mt n v d liu, nt C gi khi lng d liu l e ti A. nh tuyn ban u c minh ha trn hnh 5.5(a), gi ca mi cung ng vi ti trn cung . Trong bc tip theo ca thut ton LS, nt C (vi gi lin kt c bn c xc nh trong hnh 7.6a) nhn thy ng i n A theo chiu kim ng h c gi l 1, trong khi theo chiu ngc li c gi l 1+e. Do , ng i n A c gi thp nht ca C by gi l theo chiu kim ng h. Tng t, B nhn thy ng i n A c gi thp nht mi cng theo chiu kim ng h, kt qu c trnh by trong hnh 7.6b. Trong bc tip theo, nt B, C v D nhn thy ng i n A ngc chiu kim ng h c gi l 0 v tt c cc nt nh li Bi ging Mng my tnh Ths. Nguyn Xun Anh 131 tuyn ng theo ngc chiu kim ng h. Trong bc tip theo B, C v D li thay i vic nh tuyn theo chiu kim ng h.
Hnh 7.6 Xung t nh tuyn
Lm th no c th ngn nga s dao ng nh trn (iu ny lun xut hin vi nhng thut ton chn tc nghn hoc thi gian tr lm gi cho ng truyn). Mt gii php c a ra l nh gi cho ng truyn khng ph thuc vo ti trn ng i, mt gii php kh c kh nng chp nhn v mc tiu ca nh tuyn l trnh nhng ng truyn hay tc nghn (c tr cao). Mt gii php khc l lm th no tt c cc thit b nh tuyn khng chy thut ton LS ti cng mt thi im. Gii php ny dng nh hp l hn v chng ta hy vng rng thm ch nu cc thit b nh tuyn c chy thut ton LS vi cng chu k, th thut ton s a ra nhng kt qu khc nhau trn mi nt. 7.2.2 Thut ton vector khong cch Thut ton vector khong cch (DV) l thut ton lp, khng ng b v phn tn. Thut ton c xem l phn tn v mi nt nhn thng tin t nhng nt hng xm c ng kt ni trc tip n n, thc hin cc bc tnh ton v gi kt qu tnh ton ti tt c cc nt hng xm. Tnh lp c th hin ch qu trnh ny c thc hin lin tc cho n khi khng cn thng tin c trao i gia cc lp hng xm. Thut ton khng i hi cc nt phi dng hot ng trong khi trao i vi nhng nt khc, y chnh l c im khng ng b. Cu trc d liu chnh trong thut ton DV l bng khong cch c t mi nt. Trong bng khong cch, mi hng ng vi mt nt ch trn mng v mi ct ng vi mt nt hng xm c ng kt ni trc tip n. Gi s nt X mun nh tuyn n ch Y qua nt hng xm Z. Trong bng khong cch ca nt X, DX(Y, Z) l tng ca gi ng lin kt trc tip gia X v Z- c(x, Z) vi gi ng i b nht t Z n Y. l: D x (Y, Z) - c(X, Z) + min w {D z (Y,w)} Bi ging Mng my tnh Ths. Nguyn Xun Anh 132
Biu thc min w trong ng thc trn c ly trn tt c cc hng xm ca Z (k c X, nh chng ta s thy di y). ng thc gip chng ta hnh dung tng ca thut ton DV - mi nt phi bit c gi nh nht ca ng i ti tt c cc hng xm ca n n bt k ch no. V khi gi nh nht n ch no thay i, nt phi bo cho tt c cc hng xm bit.
Hnh 7.8 Tnh ton chi ph bng khong cch
Xt kin trc mng v bng khong cch ca nt E trn hnh 7.8, y l bng khong cch ca nt E sau khi thut ton DV hi t. Hy nhn vo dng u tin vi ch n l A. R rng gi ng kt ni trc tip n A t E phi l 1, do D E (A, A) = 1. D E (A, D) l gi ng i t E n A qua D bng tng gi ca ng i t E n D (2) cng vi gi ng i nh nht t D n E. Gi thp nht ca ng i t D n A l 3 (ng i qua E), do vy gi thp Bi ging Mng my tnh Ths. Nguyn Xun Anh 133 nht t E n A qua D l 5. Tng t trng trong bng khong cch vi ng i qua B: D E (A, B) = 14. Cc vng trn trong bng khong cch l gi nh nht ca ng i n cc ch. Ct ng vi vng trn xc nh nt tip theo trn ng i n ch c gi thp nht. t c th d dng xy dng bng nh tuyn cho mi nt.
Thut ton distance vector(DV) ti mi nt X: Khi to: for(ttcccntkviv) D x (*,v)=/*du*lchchottccchng*/ D x (v,v)=c(x,v) for(ttcccchY) giminWD(Y,w)nmihngxm/*wchytrongtpcchngxmcaX*/ loop ichonkhi(thygilinktnhngxmVthayihocnhn cscpnhtcahngxmV) if(c(x,V)thayimtlngd)/*thayigicattcccnginch quavbng,dcthdnghocm*/ for(ttcccchy:DX(y,V)=DX(y,V)+delseif(nhnccpnhttV nY) /*ngingnnhttVnntnoYthayi*/ /*VgigitrmicaminWDW(Y,w)*/ /*gigitrminhnclnewval*/ for(chy):D x y,V)=c(x,V)+newval if(chngtacminWDX(y,w)michochYno)gigitrminWD x (y,w) minttccchngxm. Forever
Mi nt s ch bit thng tin v gi ng lin kt ti nt hng xm cng
nh thng tin n nhn c t nhng hng xm ny. Thut ton DV cn c gi l thut ton Bellman - Ford. N c p dng trong nhiu giao thc nh tuyn trong thc t nh: Internet BGP, ISO IDRP... im c bn l vic cp nht bng khong cch khi nhn c s thay i v gi ca lin kt n hng xm hoc nhn c thng tin cp nht ti hng xm ca n v gi cp nht n tt c cc hng xm nu ng i c gi nh nht n ch no b thay i. Hnh 7.9 minh ha hot ng ca thut ton DV cho mng n gin gm c 3 nt. Hot ng ca thut ton c thc hin mt cch ng b: tt c cc nt ng thi nhn c thng ip t hng xm ca chng, tnh ton bng khong cch mi v bo cho cc hng xm v s thay i gi ng i ngn nht. Cc c khoanh trn mt vng trong hnh v ng vi gi nh nht hin ti n ch no nm trong hng tng ng. Khoanh hai vng trn biu din gi nh nht mi c xc nh, khi cc thng tin cp nht s c gi n cc nt hng xm, ng vi mi tn gia cc ct. Ct ngoi cng bn tri l cc bng khong cch ca nt X, Y v Z sau bc khi to. Xt trng hp nt X tnh li bng khong cch sau khi nhn c thng tin cp nht t nt Y v Z. Bi ging Mng my tnh Ths. Nguyn Xun Anh 134
Hnh 7.9 Hot ng ca thut ton vector khong cch
Khi nhn c cp nht t Y v Z, X thc hin dng 21 ca thut ton DV: D X (Y,X)=c(X,Z)+min W D Z (Y,w) =7+1 =8 D X (Z,Y) =c(X,Y)+min W D Y (Z,w) =2+1 =3 X bit gi tr min w D Z (Y, w) v min w D Y (Z, w) v nt Z v Y gi nhng gi tr ny n X (v X cng nhn c theo dng 10 ca thut ton DV). Vic tnh li bng khong cch ca Y v Z ct gia trong hnh 7.7 c thc hin tng t. Gi tr D X (Z, Y) = 3 c ngha l gi nh nht t X n Z gim t 7 xung 3. Do , X gi cp nht n Y v Z thng bo cho chng gi thp nht mi n Z. Ch X khng cn cp nht cho Y, Z v gi ca n n Y v gi tr ny khng b thay i. Khi Y tnh li bng khong cch khng pht hin Bi ging Mng my tnh Ths. Nguyn Xun Anh 135 ra thay i, o Y khng gi cp nht n X v Z. Qu trnh nhn cp nht t hng xm, tnh li bng khong cch v cp nht cc thay i n hng xm c thc hin cho n khi khng cn bn tin no c trao i. Trong trng hp ny v khng c thng tin cp nht c gi nn cc nt khng phi tnh li bng khong cch v thut ton trng thi khng hot ng: tt c cc nt trng thi i trong dng 9 ca thut ton DV. Thut ton DV s trong trng thi khng hot ng cho n khi gi ca mt nn kt no thay i. 7.3 nh tuyn phn cp Mng bao gm tp hp cc thit b nh tuyn c kt ni vi nhau, s rt n gin nu chng s dng cng mt thut ton nh tuyn xc nh ng i trn ton b h thng mng. Khi s lng cc thit b nh tuyn ln, khi lng thng tin phi tnh ton, lu tr v trao i gia cc bng cha thng tin nh tuyn trn mi thit b nh tuyn tr nn rt ln. Mng Internet ngy nay bao gm hng triu thit b nh tuyn lin kt vi nhau v hng t my tnh. Lu tr thng tin v tt c cc my tnh cng nh cc thit b nh tuyn i hi mt lng b nh khng l. Cc thng tin trao i cp nht gia cc thit b nh tuyn c th s tn ton b bng thng ca ng truyn. Thut ton DV trn hng triu thit b nh tuyn chc chn s khng bao gi hi t. Do cn phi gim phc tp trong vic xc nh ng i trn mt mng ln nh Internet. i vi vn qun tr cng ny sinh nhiu vn kh c th dung ha c, v d khng th n cu trc mng bn trong ca t chc vi bn ngoi. Vn trn c th gii quyt bng cch nhm cc thit b nh tuyn thnh cc vng t qun (AS - Autonomous System). Cc thit b nh tuyn trong mt AS s dng cng mt thut ton nh tuyn (v d nh thut ton LS hay DV). Thut ton nh tuyn chy trong mi vng AS c gi l giao thc nh tuyn ni vng. Nhu cu tt yu cn phi kt ni cc AS vi nhau, do mt s thit b nh tuyn trong AS phi c thm nhim v nh tuyn gi tin ra bn ngoi. Cc thit b nh tuyn nh tuyn gi tin ra pha ngoi nh vy c gi l thit b nh tuyn cu ni (gateway router). nh tuyn gi tin i gia cc AS (c th phi i qua nhiu AS trn ton b tuyn ng cc thit b nh tuyn lin vng phi bit cch xc nh ng i gia cc AS, thut ton nh tuyn c s dng ti cc thit b nh tuyn gi l giao thc nh tuyn lin vng. Trn hnh 7.10 c 3 c ba vng t tr: A, B v C. Vng A c 4 thit b nh tuyn: A.a, A.b, A.c, v A.d, s dng cng mt thut ton intra-AS ca vng A, c bn thit b nh tuyn ny u c y cc thng tin v nhau cng nh cc lin kt trong vng A. Tng t, vng B c 3 thit b nh tuyn v vng C c 2 thit b nh tuyn. Cc thut ton nh tuyn trong cc min A, B, C khng nht thit phi ging nhau. Cc thit b nh tuyn cu ni l A.a, A.c, B.a, v C.b phi chy cc thut ton nh tuyn ni vng trao i vi cc thit b nh tuyn trong min chng cn phi s dng thut ton lin vng nh tuyn gia cc vng t tr. V mt hnh trng, chng s dng giao thc lin vng s dng kt ni vt l thc s (gia A.c v B.a), c th l ng o (v d gia A.c Bi ging Mng my tnh Ths. Nguyn Xun Anh 136 v A.a), A.c s dng c giao thc nh tuyn ni vng nh tuyn vi A.b, A.d v lin vng nh tuyn vi B.a.
Hnh 7.10 nh tuyn lin vng
Gi s my tnh h1 (ni vi thit b nh tuyn A.d) cn gi gi tin ti my tnh h2 trong vng t tr B. Bng nh tuyn ti A.d cho bit, thit b nh tuyn A.e chu trch nhim gi gi tin ra bn ngoi vng t tr. Gi tin t A.d ti thit b nh tuyn A.c s dng giao thc nh tuyn ni vng ca A. Mt im quan trng cn ch l thit b nh tuyn A.d khng cn bit cu trc ni ti trong min B v C v cng nh hnh trng gia ba min A, B v C. Thit b nh tuyn A.c nhn gi tin, xc nh ch ca gi tin nm ngoi min A, bng nh tuyn lin vng s xc nh rng gi ti min B th phi chuyn ti B.a. Khi gi tin ti B.a, giao thc lin vng xc nh rng gi tin ny ti my tnh no trong min B v chuyn cho giao thc ni vng ca B. Cui cng thit b nh tuyn B.a chuyn gi tin ti my tnh ch h2 s dng giao thc ni vng ca B. 7.4 Giao thc IP Tng mng ca Internet s dng dch v chuvn mch gi. Khi nhn c mt on tin t tng vn ti, tng mng t on tin trong gi d liu IP vi cc trng a ch gi, a ch nhn v gi gi tin ny ti thit b nh tuyn u tin trn ng i ti a ch ch. C mt s lin h tng i v cch hot ng ca tng mng vi h thng Bu in: mt ngi vit mt l th, t l th vo phong b ghi a ch ngi nhn v th phong b th vo hp th. Tng mng ca Internet v cng nh bu in u khng c bt k mt s lin h trc no vi bn nhn trc khi chuyn th. Tng mng ca Internet v bu in s u ch cung cp mt dch v kiu C gng ht sc, ngha l khng c bt k m bo no v gi tin s n ch, n trong mt khong thi gian xc nh trc hay ng th t. Bi ging Mng my tnh Ths. Nguyn Xun Anh 137
Hnh 7.11 Tng mng trong Internet
Trong hnh 7.11, tng mng trong kiu mng chuyn mch gi ging nh mng Internet c 3 thnh phn chnh: - Giao thc mng: xc nh a ch tng mng; ngha ca cc trng trong v gi d liu - PDU ca tng mng, cc hnh ng ca cc thit b nh tuyn v thit b u cui khi nhn c cc gi tin. Giao thc mng trong Internet gi l giao thc lin mng hay ngn gn gi l giao thc IP. Hin nay c hai phin bn giao thc IP c s dng: IPV4 v IPV6. - B phn xc nh ng i: xc nh tuyn ng ca gi tin trn ng i ti ch. - Chc nng qun l: Giao thc bn tin iu khin Internet - ICMP. 7.4.1 a ch IPv4 Mt my tnh thng c mt ng kt ni duy nht vo h thng mng, khi thc th IP trong my my tnh mun gi gi tin, n s chuyn qua kt ni ny. Nm gia my tnh v ng kt ni vt l l mt giao din ghp ni. Thit b nh tuyn khc vi my tnh, chc nng ca thit b nh tuyn l chuyn mt gi tin t mng ny sang mng khc (t ng truyn ny sang ng truyn khc, t cng ny sang cng khc). Thit b nh tuyn c th c ni n nhiu knh truyn v b phn nm gia thit b nh tuyn v mt knh truyn cng c gi l giao din. Nh vy thit b nh tuyn c nhiu giao din, mi giao din ng vi mt ng truyn vt l. V tt c cc my tnh v thit b nh tuyn u phi c kh nng gi v nhn gi tin IP nn mi giao din phi c mt a ch, do a ch IP ng vi mt giao din ch khng phi vi my tnh hay thit b nh tuyn. a ch IP c di 32 bit (4 byte) v nh vy khng gian a ch c 2 32
a ch IP. a ch IP c vit theo k php du chm thp phn. Mi byte ca a ch c vit di dng thp phn v phn cch vi cc byte khc bng k Bi ging Mng my tnh Ths. Nguyn Xun Anh 138 t chm (.). Xt a ch IP 193.32.216.9, gi tr 193 l s thp phn ng vi nhm 8 bit u ca a ch, 32 l s thp phn ng vi nhm 8 bit th hai ca a ch, bi vy a ch 193.32.216.9 trong k php nh phn s l 110000001 00100000 11011000 00001001.
Hnh 7.12 Cu trc a ch IP
Mi giao din ghp ni ca my tnh hay thit b nh tuyn trn mng ton cu Internet phi c mt a ch IP xc nh duy nht. Nhng a ch khng th chn mt cch ty m ph thuc vo mng m n kt ni vo. Trong ng cnh ny, thut ng mng khng c l mt cu trc tng th gm cc my tnh, router v cc lin kt gia chng. Hin ti thut ng ny c s dng vi ngha c th hn, c quan h cht ch vi a ch IP.
Hnh 7.13 Thit b nh tuyn v cc giao din
Hnh 7.13 minh ha mt thit b nh tuyn c 3 giao din c s dng kt ni 7 my tnh. Quan st a ch IP ca mi giao din ng vi mi my tnh v thit b nh tuyn. Giao din ca 3 my tnh phn trn bn tri v thit b nh tuyn ni vi chng u c a ch IP l 223.1.1.xxx.: ngha l 24 bit u ca a ch IP ging nhau. Chng cng c kt ni vi nhau bng mt ng kt ni vt l duy nht (trong trng hp ny l mi trng qung b s dng cp Ethernet) m khng cn qua bt k thit b nh tuyn trung gian no. Cc giao din ca nhng my tnh ny v giao din pha trn bn tri ca router to nn mng IP (IP network) hay n gin l mng. 24 bit a ch u ging Bi ging Mng my tnh Ths. Nguyn Xun Anh 139 nhau l phn mng trong cu trc a ch IP, 8 bit cn li l phn my tnh (host) ca a ch IP. Chnh mng ny cng c mt a ch l 22.3.1.1.0/24 trong k hiu /24 l mt n mng (network mask) vi ngha 24 bit u tin ca a ch 32 bit xc nh a ch mng. Nhng bit ny cng c xem l tin t mng (network prefix). mng 22.3.1.1.0/24 gm giao din ca 3 my tnh (223.1.1.1; 223.1.1.2; 223.1.1.3) v mt giao din ca thit b nh tuyn (223.1.1.4). Bt k my tnh no ni vi mng 223.2.2.0/24 u phi c a ch di dng 223.1.1.xxx.
Hnh 7.14 Kt ni lin mng
nh ngha IP v mng khng ch vi phn on mng ni nhiu my tnh vi mt thit b nh tuyn. Trn hnh 7.14 ba thit b nh tuyn i mt ni vi nhau qua cc ng lin kt im ti im (point-to-point). Mi thit b nh tuyn c ba giao din, hai giao din kt ni ti hai thit b nh tuyn kia v mt giao din dnh cho kt ni qung b vi cc my tnh. C bao nhiu mng? Ba mng 223.1.1.0/24, 223.1.2.0/24 v 223.1.3.0/24, mng 223.1.9.0/24 cho hai giao din ni router R1 v R2, mng 223.1.8.0/24 cho hai giao din ni router R2 v R3 v mng 223.1.7.0/24 ng vi hai giao in ni router R3 v R1. Vi mt h thng lin mng gm nhiu thit b nh tuyn v my tnh, chng ta c th s dng mt cng thc xc nh cc mng trong h thng. Chng ta loi b tt c giao din ca cc my tnh v thit b nh tuyn. Khi s to ra cc mng c lp, mi mng c lp c gi l mt mng. p dng cch thc ny trong v d trn hnh 7.14, c 6 mng IP tch bit. Mng Internet gm hng triu h thng mng nh vy, a ch mng c vai tr then cht trong vic nh tuyn trn Intemet. Bi ging Mng my tnh Ths. Nguyn Xun Anh 140 Kin trc a ch Internet u tin a ra 5 lp a ch minh ha trn hnh 7.15. Lp a ch th nm, bt u bng 11110 c d tr cho vic s dng sau ny. Vi lp a ch A, 8 bit u l a ch mng v 24 bit cui l a ch ca my tnh trong mng . Do c 127 mng lp A (bit u tin trong 8 bit a ch mng lun nhn gi tr 0), mi mng lp A li c th c 2 24 a ch. Lp B c 2 14 mng, mi mng li c 2 16 a ch. Lp a ch C dng 24 bit lm a ch mng v ch c 8 bit lm a ch my. Lp D d tr lm a ch nhm v lp E dng nghin cu.
Hnh 7.15 Cc lp a ch IP
Nm lp a ch trnh by trn hin ti khng cn c p dng trong kin trc a ch IP na. iu kin phn mng ca a ch lp c di l mt, hai hoc ba byte khng hp l khi s lng cc t chc vi mng c nh hay trung bnh ngy cng tng. mt mng lp C (/24) ch c th c 2 8 - 2 = 254 my tnh (2 trong s 2 8 a ch c d tr cho mt s mc ch khc) - mt s lng qu nh vi nhiu t chc. Tuy nhin mt mng loi B (/16) c th c ti 65.634 my tnh li l qu ln. mt t chc vi 2000 my tnh phi s dng a ch lp B (/16). vi kiu gn a ch nh vy th khng gian a ch lp B s nhanh chng b cn kit v khng gian a ch khng c s dng hiu qu. V d, t chc s dng a ch lp B cho 2000 my tnh v c khong 63000 a ch cn li b lng ph trong khi c th phn phi cho cc t chc khc. Nm 1993, IETF chun ha nh tuyn lin vng khng phn lp (Classless interdomain routing - CLDR) [RFC1519] . Vi a ch mng khng phn lp, phn mng ca a ch IP c th c di ty khng nht thit phi l 8, 16 hay 24 bit. Khun dng ca mt a ch khng phn lp l a.b.c.d/x, trong x l s lng bit dng lm a ch mng. Trong v d trc, t chc cn khng gian a ch cho 2000 my tnh ch cn mt khng gian 2.048 a ch di dng a.b.c.d/21, cho php khong 63000 a ch cn li c phn phi cho cc t chc khc. Trong trng hp ny, 21 bit u tin xc nh a ch mng ca t chc v tt c a ch lp ca my tnh trong t chc u c a ch mng ging nhau, 11 bit cn li xc nh c th my tnh no trong t chc. Trn thc t, c th tip tc chia 11 bit to ra cc mng con bn trong mng a.b.c.d/21. Bi ging Mng my tnh Ths. Nguyn Xun Anh 141 7.4.1.1 Vn a ch v nh tuyn Mi gi tin IP c c trng a ch gi v trng a ch nhn. My tnh gi s in vo trng a ch gi 32 bit a ch IP ca mnh v in vo trng a ch nhn 32 bit a ch IP ca my tnh nhn (ging nh cc trng FROM v TO trn phong b th). Trng d liu ca gi tin thng l cc on d liu ca tng vn ti. Sau khi my tnh to ra gi tin, tng mng lm th no gi gi tin t my tnh ngun ti my tnh ch? Cu tr li ph thuc vo vic my tnh ngun v my tnh ch c nm trong cng mt mng hay khng. Gi s my tnh A mun gi gi tin IP ti my tnh B nm trong cng mt mng 223.1.1.0/24 vi A. iu ny c thc hin nh sau: u tin thc th IP trong my A d trong bng nh tuyn cc b ca n (xem hnh 7.15) v tm thy hng 223.1.1.0/24 trng vi cc bit u (a ch mng) trong a ch IP ca my B. bng nh tuyn ch ra rng s lng cc thit b trung gian n mng 223.1.1.0 l 1, ngha l B nm trong cng mt mng vi A. Do my A c th gi trc tip n B m khng cn qua cc thit b nh tuyn trung gian. Sau my A chuyn gi d liu IP cho tng lin kt d liu chuyn gi d liu n B.
Hnh 7.16 Bng nh tuyn trn my tnh
Trng hp my A mun gi gi d liu ti mt my nm trong mng khc, chng hn l E. My A d trn bng nh tuyn v tm thy 223.1.1.0/24 c a ch mng trng vi phn mng trong a ch IP ca E. V s lng cc thit b trung gian l 2, nn my A bit my ch nm trn mng khc v do s phi chuyn qua cc thit b nh tuyn trung gian. Ngoi ra bng nh tuyn ti A cng cho bit gi t E, u tin my A phi gi gi d liu ti a ch IP 223.1.1.4 l a ch IP ca giao din thit b nh tuyn kt ni vo cng mt mng vi A. Thc th IP trong my A chuyn gi d liu xung tng lin kt d liu v yu cu chuyn ti a ch IP 223.1.1.4. Mc d gi d liu IP c gi t giao din ca thit b nh tuyn (qua tng lin kt d liu), a ch ch trong gi d liu vn l a ch ch cui cng (a ch ca E) ch khng phi l a ch thit b nh tuyn trung gian. Khi gi d liu ti thit b nh tuyn th cng vic ca n l chuyn gi d liu hng ti ch cui cng. Nh vy gi d liu phi c chuyn n giao din ca thit b nh tuyn c a ch IP l 223.1.2.9. Bi v s lng cc thit b trung gian ti ch l 1, nn router bit rng ch (E) nm trn cng mt Bi ging Mng my tnh Ths. Nguyn Xun Anh 142 mng vi giao din ng vi a ch 223.1.2.9, do router chuyn gi d liu ti giao din (cng) ny, v sau gi d liu c chuyn trc tip ti E.
Hnh 7.17 Bng nh tuyn trn thit b nh tuyn
Trong hnh 7.17, cc hng trong ct next router l rng v cc mng (223.1.1.0/24, 223.1.2.0/24, v 223.1.3.0/24) c kt ni trc tip vi thit b nh tuyn. Trong trng hp ny, chng khng cn phi i qua cc thit b nh tuyn trung gian n ch. Tuy nhin nu my A v my E cch nhau 2 thit b nh tuyn th trong trong bng nh tuyn ca thit b nh tuyn u tin trn tuyn ng t A ti E, dng tng ng vi ch E s ch ra phi qua 2 chng na mi ti c ch v phi ch ra a ch IP ca thit b nh tuyn th hai trn tuyn ng. Thit b nh tuyn u tin s chuyn gi d liu ti thit b nh tuyn th hai nh vo giao thc ca tng lin kt d liu gia chng. Sau thit b nh tuyn th hai s chuyn gi d liu ti my ch nh giao thc tng lin kt d liu gia thit b nh tuyn th hai v my ch. nh tuyn cho gi d liu trn mng Internet cng tng t nh h thng phn pht th ca Bu in, mi l th phi i qua nhiu bu cc mi n c ngi nhn. Bng nh tuyn trong cc thit b nh tuyn ng mt vai tr then cht trong vic nh tuyn gi tin qua mng Internet. 7.4.1.2 Khun dng gi d liu IP Hnh 7.18 minh ha khun dng gi d liu IP, cc trng kho trong gi d liu IPv4 l nh sau: - Phin bn (version): Trng 4 bit ny xc nh phin bn giao thc IP ca gi d liu. Qua trng phin bn, router mi xc nh c ngha cc trng cn li trong gi d liu IP. Cc phin bn IP khc nhau s dng cc khun dng d liu khc nhau. - di tiu (Header length): Gi d liu IPv4 c th c nhiu trng mang tnh la chn (t trong tiu gi d liu IPv4). 4 bit ny c dng xc nh v tr bt u ca d liu thc s trong gi d liu IP. Tuy nhin phn ln gi d liu IP khng cha cc trng La chn nn tiu ca gi d liu thng c nh l 20 byte - Kiu dch v (Type of service - TOS): Trng kiu dch v (TOS) gip phn bit cc kiu khc nhau ca gi d liu IP, t c th x l theo nhng cch khc nhau. V d khi mng qu ti, cn phn bit c gi d liu cha Bi ging Mng my tnh Ths. Nguyn Xun Anh 143 thng tin kim sot mng (ICMP) vi gi d liu thc s (bn tin HTML) hay gia datagram cha d liu thi gian thc (ng dng in thoi qua Internet) vi datagram khng cha d liu thi gian thc (ng dng FTP). gn y Cisco (cng ty chim th phn router ln nht) s dng 3 bit u tin ca trng TOS nh ngha cc mc dch v khc nhau m router c th cung cp. Cc mc dch v c th c ngi qun tr router thit lp theo nhng tiu ch ca t chc.
Version Header Length
Type of Service
Datagram Length (bytes)
16-bit Identifier
Flags
32-bit Fragmentation Offset
Time-to-live Upper Layer Protocol
Header Checksum
32-bit Source IP Address
32-bit Destination IP Address
Option (if any)
Data
32 bits
Hnh 7.18 Khun dng gi d liu IP
- di gi d liu (datagram length): y l tng di tnh theo byte ca gi d liu IP (c phn tiu ln phn d liu). di trng ny l 16 bit nn v l thuyt kch thc ti a ca gi d liu IP l 65.535 byte. Tuy nhin, him khi kch thc gi d liu vt qu 1500 bytes v thng gii hn l 576 bytes. - nh danh, c v v tr phn on (Identifer, Flags, Fragmention Offset): 3 trng ny c s dng khi phn mnh gi IP (fragmentation), phin bn mi ca IP (IPv6) khng cho php phn mnh gi d liu ti cc thit b nh tuyn. - Thi gian tn ti (Time-To-live-TTL): Trng thi gian tn ti (TTL) c s dng bo m gi d liu khng c lu chuyn mi mi (nh tuyn lp theo cc ng vng) trong mng. Mi ln gi tin i qua mt thit b nh tuyn s b gim i mt (- 1). Nu trng TTL bng 0 th thit b nh tuyn s loi b gi tin. - Giao thc (Protocol): Trng ny ch c s dng khi gi d liu IP n c my tnh ch. Gi tr ca trng ny xc nh giao thc tng vn ti my tnh ch s nhn c phn d liu trong gi d liu IP. V d gi tr 6 c ngha phn d liu cn chuyn ti thc th TCP, gi tr 17 c ngha phn d liu phi chuyn n thc th UDP, RFC 1700 lit k cc gi tr ny. Bi ging Mng my tnh Ths. Nguyn Xun Anh 144 Vai tr ca trng giao thc trong gi d liu IP tng t vai tr trng s hiu cng trong on tin ca tng vn ti. Trng giao thc c xem l im ni gia tng mng v tng vn ti cng nh trng s hiu cng l im ni gia tng vn ti vi ng dng c th. - Checksum ca phn thng tin iu khin (Header checksum): Trng checksum gip thit b nh tuyn pht hin li trong phn thng tin iu khin ca gi d liu IP c gi n. Gi tr checksum c tnh bng cch xem phn thng tin iu khin l mt chui cc t 2 bytes, cng cc t ny li v sau ly b mt. Thit b nh tuyn tnh li Internet checksum cho mi gi d liu IP nhn c v c th pht hin ra li nu nh gi tr checksum tnh li xut hin bit 0. Thit b nh tuyn thng loi b nhng gi d liu b li. Ch rng router phi tnh li checksum, trng TTL v c th mt s trng khc. RFC 1071 trnh by phng thc tnh checksum nhanh. - ia ch IP ngun v ch: Nhng trng ny l 32 bit a ch IP ca my tnh gi v my tnh nhn. Tm quan trng ca a ch ch l r rng. a ch IP cng vi s hiu cng to gi l socket. - Ty chn (Option): Cc trng ny cho php m rng tiu IP. Phn la chn trong tiu him khi c s dng, s tn ti ca phn la chn trong tiu lm phc tp vic x l cc gi tin v tiu ca gi d liu c phn la chn khng c di c nh, do khng xc nh c v tr bt u ca d liu thc s. Nh vy thi gian x l gi d liu IP ti mi thit b nh tuyn c th khc nhau. y l nhc im ca cc mng hiu sut cao. V th, IPv6 s loi b cc trng La chn. - D liu (data): Cui cng l trng quan trng nht - trng d liu. Thng thng trng d liu ca gi IP l gi d liu ca tng vn ti (TCP hay UDP) chuyn n ni nhn. Tuy nhin, trng d liu c th l cc kiu d liu khc, v d bn tin ICMP. 7.4.1.3 Phn mnh v hp nht gi tin IP Khng phi tt c cc giao thc ca tng lin kt d liu u c kh nng truyn cc gi tin c cng ln, mt vi giao thc c th gi nhng gi tin ln trong khi mt vi giao thc ch c th gi nhng gi tin nh. V d: mng Ethernet c ln khng qu 1500 bytes, trong khi gi tin trn nhng lin kt mng din rng c ln khng vt qu 576 bytes, s lng d liu ti a ca mt gi tin trn mt ng truyn vt l c nh ngha l MTU (maximum transfer unit). Gi d liu IP c t trong gi d liu ca tng lin kt d liu gia hai thit b nh tuyn k tip nhau trn ng truyn. Do vy gi tr MTU ca giao thc ca tng lin kt d liu gii hn di ca gi tin IP. Gii hn kch thc ca gi tin IP khng phi l vn ln, vn y l cc kt ni gia cc thit b nh tuyn dc theo tuyn ng t ni gi n ni nhn c th s dng cc giao thc lin kt d liu khc nhau vi nhng gi tr MTU khc nhau. Bi ging Mng my tnh Ths. Nguyn Xun Anh 145 Mt thit b nh tuyn kt ni n nhiu ng vt l khc nhau, mi kt ni c mt giao thc lin kt d liu khc nhau vi cc gi tr MTU khc nhau. Gi s khi nhn c mt gi d liu n t mt lin kt no , thit b nh tuyn cn c vo a ch ch kim tra trong bng nh tuyn xc nh cn gi gi tin i ra theo kt ni no. Tuy nhin ng kt ni ra ngoi ny c gi tr MTU nh hn di gi d liu IP, khi thit b nh tuyn phi phn mnh (fragmentation) d liu trong gi d liu IP thnh nhiu gi d liu IP nh hn v sau gi nhng gi d liu nh hn ny trn ng kt ni. Mi gi d liu IP nh ny c coi l mt mnh (fragment).
Hnh 7.19 Phn mnh v hp nht gi tin
Cc mnh tch ri ny cn c rp li trc khi chuyn ln tng vn ti ti my tnh nhn. R rng l c TCP v UDP u mong mun nhn c mt on tin y , khng b phn mnh t tng mng. Vic hp nht cc gi d liu ti cc thit b nh tuyn s lm giao thc phc tp ln nhiu v lm gim hiu sut ca thit b nh tuyn. Gi vng nguyn tc thit k tng mng n gin nht c th, IPv4 quyt nh vic hp nht cc mnh d liu c thc hin ti cc thit b u cui ch khng phi l ti cc thit b nh tuyn. Khi my tnh ch nhn c mt lot cc gi d liu t cng mt ngun, n cn phi xc nh liu y l nhng gi d liu c lp hay l cc mnh ca mt gi d liu ln ban u. Trong trng hp th hai, n phi tip tc xc nh Bi ging Mng my tnh Ths. Nguyn Xun Anh 146
` liu nhn c y cc mnh cha v lm sao rp cc mnh ny ti theo trt t ban u to ra gi d liu nguyn thy. My tnh ch s s dng cc trng identifcation, flag v fragmentation thc hin cng vic hp nht ny. Khi to ra mt gi d liu IP, ngoi a ch gi v a ch nhn, my tnh gi s t vo trng identifcation mt s nh danh. Gi tr ca s nh danh s tng dn. Khi mt thit b nh tuyn cn chia chia nh mt gi d liu, th tt c cc gi d liu con c to ra u c a ch ngun, a ch ch v gi tr trng nh danh ging ht gi d liu ban u. Khi ch nhn c mt lot cc gi d liu t cng mt ni gi n, n c th kim tra gi tr nh danh xc nh liu nhng gi d liu c l cc mnh ca mt gi d liu ln hn hay khng. V dch v IP khng tin cy nn mt s mnh c th khng n c ch. my tnh nhn c th chc chn l nhn c mnh cui cng ca gi d liu ban u, th trng c ca mnh cui cng phi c gi tr 0, trong khi trng c ca cc mnh khc c gi tr l 1. Tng t my nhn xc nh c liu c mt mnh no khng (v ghp cc mnh theo ng th t), trng Offset c s dng xc nh v tr ca mnh trong gi d liu IP ban u. Xt v d trn hnh 7.19, mt gi d liu c ln 4000 bytes n thit b nh tuyn v phi gi qua gi d liu ban u phi c tch ra thnh ba mnh phn bit (mi mnh tr thnh mt gi d liu IP c lp). Gi s gi d liu ban u c trng nh danh nhn gi tr 777. Gi tr cc trng trong ba mnh ny c ch ra trong bng sau:
Fragment Bytes ID Offset Flag 1 1480 byte trong trng d liu identification=777 offset=0 (d liu Bt u t byte th 0) flag=1 (cn mnh na) 2 1480 byte trong trng d liu identification=777 offset=1480 (d liu bt u t byte th 1480) flag=1 (cn mnh na) 3 1020 byte(3980-1480-1480) trong trng d liu identification=777 offset=2960 (d liu bt u t byte th 2960) flag=0 (y l mnh cui cng)
D liu ca gi IP ch c chuyn n tng vn ti ti my tnh nhn khi tng IP ti to hon chnh gi d liu IP ban u. Nu mt s mnh diu b mt khng n c ch, th ton b gi d liu s b loi b v khng c chuyn ln tng vn ti. Nu s dng giao thc TCP tng vn ti, th thc th TCP s khc phc mt mt do bn pht s gi li on tin. Phn on v hp nht t thm cc nhim v cho cc thit b nh tuyn, v vy ngi ta c gng gim thiu vic phn mnh d liu. iu ny thng c thc hin bng cch gii hn ln gi d liu ca tng vn ti (TCP hay UDP segment) bi mt gi tr tng i nh. Khi vic phn mnh tr nn khng cn thit. Phn ln cc giao thc lin kt d liu h tr IP c MTU ti thiu l 536 byte, c th loi b hon ton vic phn mnh nu t gi tr MSS l 536 byte vi 20 byte tiu ca gi TCP v 20 byte tiu ca gi IP. y chnh l l do hu ht cc gi TCP khi truyn khi lng ln d liu (chng hn FTP) c di t 512 n Bi ging Mng my tnh Ths. Nguyn Xun Anh 147 536 byte. Nu on tin TCP c bc trong gi IP v c hai gi TCP v IP u khng c trng ty chn th gi d liu IP s c 40 byte thng tin iu khin, phn cn li l d liu ca tng ng dng. 7.4.2 a ch IP V6 Nhn thy s thiu ht a ch IP trong khi mng Interntet ngy cng m rng, u nhng nm 1990, IETF (Internet Engineering Task Force) bt u lc pht trin giao thc mng thay th IPv4. Nhng ngi thit k IPv6 cng chn lc cc tnh nng, ci tin nhiu c im khc ca IPv4 da trn c s nhng kinh nghim thc t ca IPv4. 7.4.2.1 nh dng gi tin IP V6 Khun dng gi d liu IPv6 c minh ha trn hnh hnh 7.20. im thay i quan trng nht ca IPv6 chnh l khun dng gi tin. - M rng kh nng nh a ch: IP v6 tng kch thc a ch IP t 32 bit ln 128 bit. Vi di 128 bit c th to c 2 128 a ch s m bo kh nng khng b thiu a ch IP. Bn cnh a ch duy nht (unicast) v a ch nhm (multicast), IPv6 cn c mt dng a ch mi gi l anycast, cho php mt gi tin vi a ch ch thuc kiu anycast c th c chuyn t mt nhm cc my tnh (c im ny s c s dng v d khi gi thng ip HTTP GET ti nhiu trang ph (mirror site) cha cng mt ti liu no y). - Phn thng tin iu khin c di c nh 40 byte: mt s trng IP v4 mang tnh cht ty chn, do di ca n c th thay i. di phn thng tin iu khin c nh cho php x l cc gi d liu IP v6 nhanh hn. - Gn nhn lung (flow label) v u tin (priority): IPv6 khng c nh ngha cho lung mt cch r rng. Cc khuyn ngh RFC 1752 v RFC 2460 cho php gn nhn cho cc gi tin thuc v cng mt lung. Cc gi tin ny i hi c x l mt cch c bit, nh cc dch v thi gian thc vi cht lng tt hn. V d, cc d liu a phng tin c th xem nh mt lung lin tc. D liu cc ng dng truyn thng, nh truyn tp tin, th in t khng c xem nh mt lung. C th d liu ca nhng ngi c u tin cao (v d ngi tr ph cao hn) cng c th coi nh mt lung. R rng y nhng ngi thit k IPv6 d on c nhu cu phn bit gia cc lung d liu ngay c khi cha nh ngha chnh xc c lung l g. Thng tin iu khin ca IP v6 cng c trng Traffic Class 8 bit. Trng ny ging trng TOS (Tyte of Service) trong IPv4 c th c s dng cho nhng gi tin c quyn u tin trong mt lung, hoc cho nhng ng dng c u tin cao (v d gi tin ICMP). So snh khun dng gi d liu IP v4 v IP v6 ta thy gi IP V6 c cu trc n gin hn. Sau y l mt s trng trong gi d liu IPV6: - Phin bn (version): Trng 4-bit ny xc nh phin bn IP ca gi d liu. R rng gi IPv6 c gi tr 6 trong trng ny. Ch khng phi t gi tr 4 trong trng ny th gi d liu l IPv4. Bi ging Mng my tnh Ths. Nguyn Xun Anh 148 - Traffc class: Trng 8-bit ny ging trng TOS trong IPv4. - Nhn lung (Flow label): Trng 20 bit ny xc nh mt lung cha gi d liu. - ln d liu (Payload length): ln (tnh theo byte) ca phn d liu khng tnh tiu . - Next header: Trng ny xc nh giao thc tng pha trn s nhn d liu (v d ti TCP hoc UDP). Trng ny ging trng Protocol ca IPv4. - Hop limit: Gi tr ca trng ny s gim i 1 khi i qua mi router. Nu gi tr ny bng 0, gi d liu b loi b. - a ch ngun v ch (source ang destination addresss): Khun dng 128- bit a ch IPv6 c c t trong RFC 2373. - D liu (data): Khi gi tin IPv6 ti ch, cc tiu s b loi b v phn d liu ny s c chuyn n thc th tng pha trn.
Version
Traffic Class
Flow Label
Playload length
Next Hdr
Hop Limit
Source Address (128 bites)
Destination Address (128 bites)
Data
32 bits
Hnh 7.20 Cu trc gi tin IP V6
C mt s trng trong IPv4 khng xut hin trong IPv6 na: - Phn mnh, Hp nht gi tin: IPv6 khng cho php phn mnh v hp nht gi tin ti cc router trung gian. Nu mt gi d liu IPv6 qu ln c th gi i trn mt ng lin kt ra ca router, router s loi b gi tin ny v gi mt thng bo li ICMP Packet Too Big ti bn gi. Sau bn gi gi li d liu, s dng cc gi d liu c kch thc nh hn. Vic phn mnh v hp nht cc gi tin IP chim nhiu thi gian x l ca cc router. Thc hin nhng cng vic ny ti cc thit b u cui s lm tng tc truyn trn mng. - Checksum. Do tng vn ti (v d, TCP v UDP) v cc giao thc lin kt d liu (v d Ethenet) thc hin kim tra li, chc nng ny khng cn thit trong tng mng nn c b i. Gi tr trng TTL trong tiu ca Bi ging Mng my tnh Ths. Nguyn Xun Anh 149 IPv4 gim i mt khi i qua mi thit b nh tuyn, nn gi tr trng checksum trong tiu IPv4 cn phi c tnh ti ti cc thit b nh tuyn. Nh vy, ging nh phn mnh v hp nht, vic ny khin thi gian x l gi tin IPv4 lu hn. 7.4.2.2 ICMP cho IPV6 Giao thc ICMP c s dng thng bo li v cung cp mt s cc thng tin hn ch ti thit b u cui (v d lnh ping). Mt phin bn mi ca ICMP c c t cho IPv6 trong khuyn ngh RFC 2463. Bn cnh cc kiu v m c, ICMPv6 cng a thm vo nhiu kiu v m mi. V d kiu m li Packet Too Big hay Unrecognized IP v6 option. 7.4.3 Chuyn t IPv4 sang I Pv6 Mt vn t ra l cng tc chuyn i a ch IP t phin bn 4 sang phin bn 6, tt nhin cc my tnh v thit b c kh nng tng thch ngc (lm vic vi IP v4) nhng cc h thng c th khng th tng thch vi IP v6. Mt s gii php c xut nh sau: - La chn mt thi im no , tt tt c my nng cp ln IPv6. Ngay c thi im khi Internet cn rt nh v vn cn c qun tr bi mt nhm nh cc chuyn gia, ngi ta cng khng th chn c mt thi im nh vy. Gii php ny ngy nay s i hi s tham gia ca hng trm triu my tnh v hng triu ngi qun tr mng, r rng y l mt iu khng tng. RFC 1933 a ra hai gii php (c th s dng ng thi hay dng ring r) dn dn tch hp cc thit b s dng IPv6 vo th gii IPv4 (d nhin mc tiu di hn vn l chuyn tt c cc thit b s dng IPv4 sang IPv6). - C th gii php n gin nht a vo cc thit b h tr IPv6 l dual- stack. Cc thit b trin khai c IPv4 v IPv6. Thit b IPv6/IPv4 nh vy c c t trong RFC 1933 c kh nng nhn v gi c hai gi d liu IPv4 v IPv6. Khi trao i vi mt nt IPv4, nt IPv6/IPv4 s dng gi d liu IPv4 v khi trao i vi nt IPv6, s s dng gi IPv6. Nt IPv4/IPV6 cn phi c c hai a ch IPv6 v IPv4. Chng cn phi c kh nng xc nh c mt nt c kh nng IPv6 hay ch h tr IPv4. C th gii quyt vn ny nh h thng tn min DNS. 7.5 nh tuyn trn Internet Mng Internet ton cu ngy nay l s kt ni ca nhiu mng bao gm cc ISP khu vc, quc gia v quc t. Cc giao thc nh tuyn c trin khai da trn hai loi giao thc cp trn. Giao thc nh tuyn ni min c s dng cu hnh v duy tr bng nh tuyn trong tt c cc thit b nh tuyn trong mt min. Hin nay c 3 giao thc nh tuyn ni min c s dng rng ri: RIP (Routing lnformation Protocol), OSPF (Open Shortest Path First) v EIGRP (Cisco propriety Enhanced Interior Gateway Routing Protocol). Giao thc nh tuyn lin min thng c s dng l giao thc BGP. Bi ging Mng my tnh Ths. Nguyn Xun Anh 150 7.5.1 Giao thc RI P RIP l mt trong nhng giao thc nh tuyn ni min u tin, n c mt s c im sau: - nh tuyn ni min: Cho php trao i thng tin gia cc thit b nh tuyn trong mt min. - o khong cch bng chng ng i: Gi ng i gia hai thit b u cui c xc nh bng s lng cc thit b nh tuyn trung gian trn ng i . di ti a ca mt tuyn ng l 15, ngha l ng knh ti a ca mt min l 15 thit b nh tuyn. - Truyn thng khng tin cy: RIP s dng UDP chuyn bn tin v cc tuyn ng. - Gi tin dng qung b v nhm: RIP v1 s dng cch truyn qung b khi truyn gia hai thit b nh tuyn, RIP v2 cho php truyn theo ch nhm. - Thut ton vector khong cch: RIP s dng thut ton vector khong cch. Cc thit b nh tuyn hng xm trao i bng nh tuyn cho nhau 90s mt ln (c th thay i chu k ny) trong cc bn tin RIP (RIP response message, RIP advertisement), mi bn tin cha ti a 25 a ch ch. - Cc my tnh c th th ng nhn thng tin t cc thit b nh tuyn: RIP cho php cc thit b u cui (ch yu l my tnh) lng nghe v cp nht bng nh tuyn. iu ny c bit hu dng vi cc mng c nhiu thit b nh tuyn. Khi my tnh trong mng c th d dng xc nh c thit b nh tuyn cn chuyn ti. 0 8 16 24 31
Command(1-5) Version(2) Must be zero Family of Net 1 Route tag for Net 1 IP address of Net 1 Subnet mask for Net 1 Next hop for Net 1 Distance to Net 1 Family of Net 2 Route tag for Net 2 IP address of Net 2 Subnet mask for Net 2 Next hop for Net 2 Distance to Net 2
Hnh 7.21 Khun dng bn tin RIP
Bi ging Mng my tnh Ths. Nguyn Xun Anh 151 Thit b nh tuyn gi mt bn tin RIP lit k cc mng m n c th kt ni vi. Khi nhn c mt qung co nh vy, thc th RIP trn thit b nh tuyn s dng nhng thng tin ny cp nht bng nh tuyn ca n. Mi mt trng trong bn tin qung co l mt cp a ch mng ch n, khong cch r, trong khong cch r l s lng cc thit b nh tuyn trung gian t thit b nh tuyn gi bn tin ti ch c a ch mng l n. Khi nhn c mt bn tin, gi s thit b nh tuyn khng c ng i ti ch c qung co trong bn tin hoc c ng i n ch nhng gi cao hn, thit b nh tuyn s cp nht bng nh tuyn s dng tuyn ng mi (im u tin trn tuyn ng ny chnh l thit b nh tuyn gi qung co). u im chnh ca RIP l tnh n gin, khng i hi cu hnh nhiu. Ngi qun tr ch cn bt my ln, cho php router trao i thng tin vi nhau, sau mt thi gian ngn, thit b nh tuyn s t xy dng c bng nh tuyn ca mnh. Doanh nghip c th la chn mt thit b nh tuyn trong min lm thit b nh tuyn ngm nh, thng l thit b nh tuyn ni vi ISP. Sau RIP s thc hin vic qung co cho thit b nh tuyn ngm nh ny, cc gi tin gi ra pha ngoi s c gi qua thit b nh tuyn ngm nh ti ISP. Hnh 5.9 minh ha khun dng bn tin cp nht RIP. Mi trng trong bn tin ng vi mt a ch ch, mt n mng ca a ch ch (o c th s dng a ch khng phn lp CIDR), khong cch ti ch v nt k tip trn ng ti ch. 7.5.2 Giao thc OSPF Giao thc RIP c mt s nhc im ca thut ton vector khong cch. di ca bn tin c th ln do phi lit k ton b danh sch cc a ch ch v khong cch ti . Khi nhn c bn tin, thit b nh tuyn nhn phi ly ra tm trng, so snh trong bng nh tuyn ca n, nh vy thi gian x l bn tin trong mi thit b nh tuyn ln, gy ra mt tr nht nh. Do vy giao thc RIP ch ph hp vi cc mng c kch c nh. Khi mt t chc mng tng i ln, ngi ta cn phi a ra giao thc ph hp hn. IETF a ra giao thc OSPF vi cc c im sau: - nh tuyn ni min: Cho php trao i thng tin gia cc thit b nh tuyn trong mt min. - H tr CIDR: h tr vic phn mng, to lp mng con. - Trao i cc thng tin c kim chng. Hai thit b nh tuyn trao i bn tin OSPF vi nhau c th tin hnh th tc kim tra xc nh mnh nhn c bn tin t ng i tng, iu ny ngn nga cc cuc tn cng bng phng php gi mo. - S dng thut ton tm ng da trn trng thi knh truyn. - H tr phn cp trong min. u im chnh ca OSPF l cho php tip tc phn mt min thnh nhiu min con. 7.5.3 Giao thc BGP Giao thc BGP (Border Gateway Protocol) c m t trong cc khuyn ngh RFC 1771, 1772, 1773, c xem l mt chun hin nhin trong nh tuyn Bi ging Mng my tnh Ths. Nguyn Xun Anh 152 gia cc vng trn mng Internet. Nhim v ca n l nh tuyn gia cc vng c qun tr c lp vi nhau. BGP c nhng c im sau: - nh tuyn lin vng: BGP cho php cung cp cc thng tin nh tuyn gia cc vng, mi tuyn ng c xem l mt chui cc AS lin tip nhau. - H tr vic thit lp chnh sch: Ngi qun tr c th p dng nhng chnh sch no , v d hn ch vic qung co ra bn ngoi. - Truyn thng tin cy: Hai thc th BGP s dng kt ni TCP trao i bn tin. 7.6 Cc giao thc khc 7.6.1 Giao thc I CMP ICMP c cc thit b u cui, thit b nh tuyn s dng trao i cc thng tin tng mng vi nhau (ch yu cho vic bo li), giao thc ny c c t trong RFC 792. V d khi chy mt phin Telnet, FTP, hoc HTTP, ngi dng c th gp thng bo nh Destination network unreachable (Khng n c mng ch). Nu thit b nh tuyn khng tm c ng dn n my tnh ch, n s to ra v gi thng bo trn ti my tnh ca ngi s dng thng bo li. ICMP thng c coi l mt phn ca IP, nhng v mt kin trc li nm trn IP, bi v thng bo ICMP c t trong gi IP, ging nh d liu ca giao thc TCP hoc UDP nm trong trng d liu ca gi tin IP. Tng t nh giao tip vi tng vn ti, khi nhn c mt gi tin IP vi trng protocol xc nh giao thc ICMP, tng mng ca my tnh nhn s chuyn phn d liu (v thng ip ICMP) ln thc th ICMP, ging nh lm vi TCP hay UDP. Thng bo ICMP c trng kiu (type) v trng m (code) v cha 8 byte u tin ca gi d liu IP gy ra li (nguyn nhn to ra thng bo ICMP). Do bn gi c th xc nh c gi tin no gy ra li. Bng sau lit k mt s m ca bn tin ICMP: Loi ICMP M Ni dung 0 0 echo reply (to ping) 3 0 destination network unreachable 3 1 destination host unreachable 3 2 destination protocol unreachable 3 3 destination port unreachable 3 6 destination network unknown 3 7 destination host unknown 4 0 source quench (congestin control) 8 0 echo request 9 0 route advertisement 10 0 route discovery 11 0 TTL expired 12 0 IP header bad Bi ging Mng my tnh Ths. Nguyn Xun Anh 153
Cu lnh traceroute cho php ngi s dng xc nh tt c cc thit b nh tuyn trn mt tuyn ng gia bt k hai thit b u cui no. Chng trnh traceroute cng s dng cc thng bo ca ICMP xc nh nh tn v a ch ca cc router gia ngun v ch. Chng trnh traceroute trong my tnh ngun s gi i mt lot cc gi d liu IP ti my tnh ch. Gi IP u tin c trng TTL nhn gi tr 1, gi th hai l 2, gi th ba l 3, my tnh ngun t thi gian cho mi gi IP gi i. Khi gi IP th n n thit b nh tuyn th n, n thy trng TTL ca gi d liu nhn gi tr 0, nn theo nguyn tc ca giao thc IP, thit b nh tuyn s loi b gi d liu v gi thng ip cnh bo ICMP (kiu 11 m 0). Trong thng ip cnh bo ny c tn v i ch IP ca thit b nh tuyn. Khi nhn c thng bo ICMP, my tnh ngun xc nh c thi gian kh hi n thit b nh tuyn th n cng nh tn, v a ch IP ca thit b nh tuyn . Ngoi ra, ICMP cn c s dng trong cc dch v nh hng li cng mc nh ca my tnh. 7.6.2 Cp pht a ch IP Mi thit b tham gia vo mng phi c gn a ch v a ch phi duy nht trn mng, c hai cch cch gn a ch IP: - Gn th cng: Ngi qun tr h thng thit lp cu hnh - Gn t ng: dch v cp pht a ch ng, s dng cc giao thc nh RARP, BOOTP hoc DHCP (Dynamic Host Configuration Protocol). DHCP l phin bn m rng ca giao thc BOOTP vi DHCP, khi my ch DHCP trong mng nhn yu cu DHCP t mt my khch, n s cp pht mt a ch IP cho my khch yu cu. DHCP c s dng rng ri trong mng cc b hay truy cp Internet n ISP. 7.6.2.1 Giao thc RARP Giao thc phn gii a ch ngc (RARP- Reverse Address Resolution Protocol) ra i nm 1984 l giao thc dng tm a ch logic (IP) khi bit a ch vt l (MAC). Mi my trm ch cn b x l v b nh m khng cn phi c a cng, khng gian lu tr c dng chung trn my ch. Do khng c tp tin cu hnh nn tin trnh khi ng ca cc my tnh ny thng phi ly thng tin t my ch. Tuy nhin, trc khi c th ni kt n c my ch, cc my trm cn phi bit c a ch IP ca n. Trn my ch phi c mt bng nh x a ch vt l v a ch IP ca cc my trm, bng nh x ny do ngi qun tr mng thit lp th cng. Khi nhn c yu cu RARP, my ch tm trong bng a ch v tr v a ch IP tng ng cho my trm gi yu cu. Giao thc RARP hot ng trn lp lin kt d liu v do ph thuc vo phn cng card mng, y l mt trong nhng hn ch ca giao thc ny. Ngoi ra, giao thc RARP khng cung cp mt s thng tin cn thit khc cho my trm nh cng mc nh, a ch IP ca my ch DNS... Bi ging Mng my tnh Ths. Nguyn Xun Anh 154 7.6.2.2 Giao thc BOOTP Giao thc BOOTP phc v cho vic trong vic cp pht a ch IP ng, ra i vo nm 1985 nhm khc phc mt s hn ch ca ca giao thc RARP. Giao thc BOOTP hot ng lp ng dng v dng giao thc UDP ti lp vn ti, do khng ph thuc vo phn cng card mng. BOOTP cho php mt my trm nhn c cc thng s cu hnh cn thit bao gm a ch IP, mt n mng con, cng ra mc nh v a ch my ch. Tuy nhin, ngi qun tr mng vn phi nh x a ch MAC v a ch IP bng phng php th cng. 7.6.2.3 Giao thc DHCP Giao thc DHCP dng gn cc a ch IP ng cho my trm khi tham gia vo mng. My ch DHCP qun l a ch IP theo phng php ng, mi a ch c cp pht trong mt khong thi gian nht nh ( trong h iu hnh windows thi gian thu a ch l 7 ngy), iu gip cho vic s dng cc a ch hiu qu hn. DHCP c c ch t ng gn a ch IP thch hp cho tng mng con. c cp pht a ch IP, my trm v my ch phi thc hin bn bc:
Hnh 7.22 Cc bc cp pht a ch IP bng DHCP
- My trm qung b bn tin DHCP Discover - My ch tr li bng bn tin DHCP Offer - My trm yu cu cp pht a ch IP bng bn tin DHCP Request - My ch xc nhn yu cu c chp thun bng bn tin DHCP ACK Bi ging Mng my tnh Ths. Nguyn Xun Anh 155 Bc 1: Khi mi khi ng, my trm cha c a ch IP, n to ra mt bn tin DHCP Discover v gi qung b ln mng cho n khi nhn c phn hi t my ch. Bc 2: Tt c cc my trong mng ni b u nhn c bn tin DHCP Discover , ch c my ch DHCP mi x l bn tin ny. Nu my ch c cu hnh hp l cho my trm, n chun b bn tin DHCP Offer cha a ch MAC ca my trm, a ch IP d nh cp, mt n mng, a ch IP ca my ch, cng mc nh, a ch IP ca my ch DNS, thi gian cho thu . My ch DHCP gi qung b bn tin ny ln mng. Bc 3: My trm nhn c bn tin DHCP Offer v chp nhn mt trong cc a ch IP, n chun b bn tin DHCP Request v gi qung b ln mng khng nh chp nhn a ch IP c cp pht t my ch DHCP. Bc 4: Nhn c bn tin bn tin DHCP Request, my ch DHCP s xc nhn ng cp pht bng cch to bn tin DHCP ACK v gi qung b ln mng. 7.7 Chuyn i a ch 7.7.1.1 Giao thc ARP c th trao i thng tin trn mng, mi my tnh cn phi c c a ch vt l v a ch logic. S xy ra tnh hung: khi bit a ch logic cn phi tm a ch vt l tng ng vi a ch logic ti thi im .
Hnh 7.23 Xc nh a ch vt l bng giao thc ARP
Trn cc mng TCP/IP, giao thc ARP c dng tm mt a ch MAC tng ng vi mt a ch IP. Khi mun tm mt a ch MAC tng ng vi a ch IP, my tnh gi qung b bn tin ARP cha a ch IP ca my tnh Bi ging Mng my tnh Ths. Nguyn Xun Anh 156 cn tm. Nhn c bn tin ny, mi trm s so snh a ch IP ca mnh, nu trng nhau n s gi a ch MAC ca n tr li cho trm c yu cu. 7.7.1.2 Chuyn i a ch - NAT NAT (Network Address Translation) l c ch dng chuyn i a ch IP trong mng ni b vi mng bn ngoi. C ch ny c dng ch yu cho hai mc ch: - Gii quyt vn thiu ht a ch IP - Che giu a ch IP trong mng ni b nhm tng cng kh nng bo mt mng. C 2 kiu chuyn i a ch IP c bn NAT (Network Address Translation) v PAT (Port Address Translation). Trong khi c ch NAT (Network Address Translation) ch cho php nh x mc a ch IP th PAT cho php nh x thm ti mc cng, do ti mt thi im s lng lin kt ra mng bn ngoi s nhiu hn. i vi tng c ch li cho php cu hnh tnh hay ng, ty tng tnh hung, ngi qun tr mng c th la chn phng php NAT hay PAT. 7.8 Chia mng Cc nh cung cp dch v Internet c cp pht di a ch tng i ln v s chia s mt phn trong di a ch ny cho t chc hoc thu bao. V d ISP c cp pht di a ch 200.23.16.0/20. n lt mnh ISP chia khng gian a ch ny thnh 8 khng gian a ch nh hn bng nhau v gn 8 khng gian ny cho cc t chc thu. a ch IP c T chc ICANN (The Internet Corporation for Assigned Names ang Numbers) qun l theo cc nguyn tc ch o ghi trong RFC 2050. Vai tr ca t chc phi li nhun ICANN khng ch l phn phi a ch IP m cn qun tr cc DNS my ch gc. N cng cn c nhim v t tn min cng nh gii quyt cc tranh chp v tn min. Hin nay vic phn phi a ch IP c c quan ng k Internet cp vng qun l. Gia nm 2000, c 3 c quan ng k nh vy: American Registry for Internet Number (ARIN) cho chu M v mt s phn ca chu Phi. Reseaux IP Europeans (RIPE) cho chu u v mt s nc chung quanh v Asia Pacific Network lnformation Center (APNIC). Cc my tnh c kh nng di ng (mobile) c th thay i mng theo cch ng (khi di chuyn) hoc tnh (theo thi gian). Khi nh tuyn, phi xc nh mng trc v sau mi ti my tnh trong mng, nn a ch IP ca my tnh di ng s phi thay i khi my tnh thay i mng. Vic phn chia mng con mang li nhng ch li sau: - D qun l hn (v s trm t hn). - Hn ch min qung b, tng hiu qu truyn thng trong mng. V d: mt mng LAN c 10 my, nu dng mng lp C s c min qung b ti 254 host, nu dng subnet mask th min qung b s gim xung, hiu qu mng s tng ln. Tng cng mc bo mt mc thp cho LAN: mi mng c mt danh sch truy cp, theo danh sch ny mng c th cho php hay t chi truy cp vo n. C th bn hoc cho thu cc i ch khng c dng n: cc cng ty c s hu cc mng ln lp A, B c th khng dng ht s a ch ca h, h c th bn hoc cho thu. Bi ging Mng my tnh Ths. Nguyn Xun Anh 157 CHNG 8: TNG LIN KT 8.1 M hnh dch v tng lin kt d liu Giao thc tng lin kt d liu c s dng truyn cc khung d liu trn mt mi trng vt l. Giao thc tng lin kt d liu nh ngha khun dng n v d liu trao i gia cc nt mi u ca ng truyn, cng nh nhng cng vic cc nt thc hin khi nhn v gi nhng n v d liu ny. Chc nng ca giao thc tng lin kt d liu khi gi v nhn khung d liu bao gm: pht hin li truyn li, iu khin lu lng v truy cp ngu nhin. Giao thc tng lin kt d liu rt a dng : Ethernet, token ring, FDDI v PPP, i khi ATM v frame relay c th cng c coi l giao thc thuc tng lin kt d liu. Nu nhim v ca tng mng l chuyn gi d liu ca tng vn ti t my gi t my nhn th giao thc ca tng lin kt d liu c nhim v chuyn gi d liu tng mng gia hai nt k tip trn ng truyn. Mt c im quan trng ca tng lin kt d liu l gi d liu tng mng c th c x l bi nhiu giao thc khc nhau trn ng truyn. V d, gi d liu ny c th c chuyn bi giao thc Ethernet trong mng ni b, sau l cc giao thc PPP, HDLC, frame relay trn cc ng truyn gia cc thit b nh tuyn. Mc d dch v c bn ca bt k tng lin kt d liu no l chuyn gi d liu ca tng mng gia hai nt k tip, song c th dch v ny c thc hin nh th no li ph thuc vo giao thc tng lin kt d liu s dng trn ng truyn . Ni chung giao thc tng lin kt d liu c th cung cp nhng dch v sau: - ng gi d liu (frame) v truy cp ng truyn (link access): Phn ln cc giao thc tng lin kt d liu t gi d liu tng mng vo trong gi d liu tng lin kt d liu (frame) trc khi truyn ln trn ng truyn. Frame gm trng d liu l gi d liu ca tng mng cng vi mt s trng tiu khc. Ch frame c th c c trng tiu u v cui (header v trailer). Giao thc tng lin kt d liu xc nh khun dng ca frame cng nh giao thc truy cp knh truyn (cch thc truyn). vi ng truyn kiu point-to-point c mt pha gi v mt pha nhn th giao thc truy cp ng truyn l n gin (gn nh khng tn ti) - bn gi c th gi frame bt c lc no ng truyn ri. Trng hp phc tp hn xy ra khi nhiu nt cng chia s ng truyn duy nht: y l vn a truy cp. Chng ta s thy cc giao thc lin kt d liu khc nhau s c nhng khun dng d liu khc nhau (ch gi d liu ca tng lin kt d liu c gi l frame). Chng ta s thy rng tiu frame thng cha trng a ch vt l ca nt, (khc a ch mng ca nt). - Dch v truyn tin cy: Nu cung cp dch v truyn tin cy, giao thc tng lin kt d liu bo m chuyn chinh xc gi d liu tng mng trn mt ng truyn. Trong chng 3 chng ta thy rng giao thc tng vn ti (TCP) cng cung cp dch v truyn tin cy. tng t nh trong tng vn ti, truyn tin cy tng lin kt d liu c thc hin qua c ch bo nhn v truyn li. dch v truyn tin cy Bi ging Mng my tnh Ths. Nguyn Xun Anh 158 - Tng lin kt d liu thng c s dng trn ng truyn c t 1 li cao (v d trn ng truyn khng dy). mc ch l sa li ngay trn ng truyn b li ch khng phi truyn li d liu t thit b gi t thit b nhn bi giao thc tng vn ti hoc tng ng dng. Tuy nhin tng lin kt d liu khng cn cung cp dch v truyn tin cy cho cc ng truyn t li (v d cp quang). V vy phn ln cc giao thc tng lin kt d liu ph bin khng cung cp dch v t tin cy. - Kim sot lu lng: Kh nng lu tr tm thi (buffer) cc frame ti cc nt trn mi pha ca ng truyn khng phi l v hn. y s l mt vn khi tc ti ca cc frame nhanh hn tc m nt nhn c th x l c. Nu khng kim sot lu lng, b m pha nhn c th b trn v frame s b mt. Ging nh tng vn ti, tng lin kt d liu cung cp c ch kim sot lu lng ngn chn pha gi gi qu kh nng nhn ca pha nhn. - Pht hin li: Nt nhn c th nhn c bit 0 trong khi pha gi gi bit 1 hay ngc li. Nguyn nhn bit b li c th do tn hiu b suy hao hay nhiu in t. R rng khng cn chuyn i gi d liu c li, nhiu giao thc tng lin kt d liu cung cp c ch pht hin li. iu ny c thc hin thng qua pha gi thit lp mt s bit pht hin li trong frame v pha nhn thc hin vic kim tra li. Pht hin li v mt dch v rt ph bin trong nhiu giao thc tng lin kt d liu. Trong chng 3 v chng 4 chng ta thy rng tng vn ti v tng mng trn Intemet cng c kh nng pht hin li. Tuy nhin pht hin li trong tng lin kt d liu thng phc tp hn rt nhiu v c trin khai bng phn cng. - Sa li: sa li cng tng t pht hin li. Tuy nhin khng ch pht hin c li trong frame nhn c m pha nhn cn c kh nng xc nh chnh xc ni li xut hin trong frame (v do c th sa c nhng li ny. - Bn song cng v song cng (Half duplex, full duplex). Trong ch truyn song cng, hai pha ca ng truyn c th ng thi truyn d liu. Trong ch truyn bn song cng, ti mt thi im thit b khng th cng truyn v nhn. Nhiu dch v ca tng lin kt d liu tng ng vi nhiu dch v ca tng vn ti, v d c hai tng u c dch v truyn tin cy, mc d c ch thc hin dch v truyn tin cy c hai tng l nh nhau, nhng hai dch v truyn tin cy ny khng ging nhau. Giao thc tng vn ti cung cp dch v truyn tin cy gia hai tin trnh trn c s u cui (end-to-end). Giao thc tng lin kt d liu cung cp dch v truyn tin cy gia hai nt c mt kt ni vt l trc tip. tng t vi dch v kim sot lu lng v pht hin li. 8.2 Giao thc a truy nhp C hai loi ng truyn: truyn im-im v truyn qung b. ng truyn im-im ch c mt bn gi v mt bn nhn duy nht hai u ca ng truyn. Nhiu giao thc tng lin kt d liu c thit k cho ng truyn im-im nh HDLC (High Data Link Control) v PPP (point-to-point Bi ging Mng my tnh Ths. Nguyn Xun Anh 159 Protocol). Kiu truyn th hai, kiu qung b cho php c nhiu nt gi v nt nhn cng kt ni n mt knh truyn duy nht. Thut ng qung c s dng y v khi bt k mt nt no truyn i mt khung d liu, knh truyn s qung b khung d liu v tt c cc nt khc u nhn c mt bn sao ca khung d liu. Ethernet l cng ngh qung b c trin khai rng ri nht. Trong phn ny, chng ta s nghin cu mt trong nhng vn quan trng nht ca tng lin kt d liu: lm th no phi hp vic truy cp vo knh truyn chung ca nhiu nt - vn a truy cp. Knh truyn qung b thng c s dng trn mng cc b - l mng gii hn trong mt khu vc a l. Pht thanh, truyn hnh l nhng dch v qung b, nhng ch l qung b mt chiu, trong khi cc nt trn knh truyn qung b trong mng my tnh yu cu va c th v nhn d liu. Mt v d tng t trong x hi loi ngi l ti mt cuc hi tho, mi ngi tp trung trong mt hi trng (khng kh cung cp mi trng qung b). V d th hai l mt lp hc - ni gio vin v sinh vin cng nhau chia s mi trng qung b duy nht. Vn trung tm trong c hai trng hp ny l vic quyt nh ai s l ngi c ni (ngha l c chim c knh truyn). Chng ta c nhng quy tc giao tip theo php lch s chia s knh truyn chung: - Mi ngi u c c hi ni - Im lng cho n khi cha c quyn ni - Khng c php ni lin tc - Gi tay yu cu nu mun ni - ng ngt li khi c ngi ang ni - ng ng khi c ngi ang ni
Hnh 8.1 Chia s knh truyn dng chung
Tng t nh vy, mng my tnh cng c nhng giao thc gi l giao thc a truy cp (multiple access protocol) cho php cc nt iu chnh vic truyn thng ca chng trn knh truyn qung b dng chung. Nh minh ha trn hnh 8.1, giao thc a truy cp rt cn thit trong nhiu kiu mi trng mng: mng khng dy, mng c dy v c mng v tinh. Hnh 6.2 l mt v d v truyn qung b chia s knh truyn dng chung, tt c cc nt u c kh Bi ging Mng my tnh Ths. Nguyn Xun Anh 160 nng truyn khung d liu nn c th xy ra tnh trng ti mt thi im nhiu nt cng truyn c yu cu chim ng truyn. Khi , tt c cc nt cng lc nhn c nhiu khung d liu, hu qu l xy ra xung t ng truyn. Thng thng khi xung t xy ra, khng nt no c th nhn chnh xc d liu v tn hiu trong cc khung an xen vo nhau, do tt c cc khung d liu ang truyn trong thi im xung t u b li, tc l knh truyn dng chung khng c s dng trong khong thi gian xy ra xung t. R rng khi nhiu nt thng xuyn mun truyn d liu, xc sut xy ra xung t s ln v phn ln bng thng ca knh truyn b lng ph. hiu sut ca knh truyn qung b t gi tr ti a khi nhiu nt mun gi d liu cn phi c c ch phi hp gia nhng nt c nhu cu truyn, c ch phi hp ny l trch nhim ca giao thc a truy cp. c nhiu cng trnh nghin cu v vn ny, tuy nhin ngi ta c th phn loi cc giao thc a truy cp vo ba loi: giao thc phn chia knh truyn, giao thc truy cp ngu nhin v giao thc truy cp ln lt.
Hnh 8.2 Mng qung b
Giao thc a truy cp trn knh truyn qung b vi tc R b/s l tng s c nhng c im sau: - Khi ch c mt nt c d liu gi i, nt gi vi thng lng R b/s. - Khi M nt c d liu gi i, mi nt gi vi thng lng R/M b/s. Yu cu ny khng c ngha rng mi nt trong M nt lun lun truyn vi tc tc thi R/M m y ch l tc trung bnh xc nh trong mt khong thi gian. - Giao thc c trin khai phn tn, ngha l khng c mt nt ng vai tr iu phi, nu khng ton b h thng s ngng hot ng nu nt iu phi b hng. - Giao thc phi n gin sao cho vic ci t khng tn km. Bi ging Mng my tnh Ths. Nguyn Xun Anh 161 8.2.1 Giao thc phn chia knh truyn Phn knh theo thi gian (TDM) v theo tn s (FDM) l hai k thut c th c s dng phn chia bng thng ca knh truyn gia tt c cc nt dng chung knh truyn . Gi s knh truyn h tr N nt v tc truyn ca knh l R b/s. TMD chia thi gian thnh cc khong thi gian (c lp vi n v d liu khung tng lin kt d liu) v sau li chia mi khong thi gian thnh N khe thi gian. Mi khe thi gian c gn cho mt trong s N nt, bt k nt no c nhu cu gi d liu, n truyn cc bit d liu ca n vo trong khe thi gian c gn cho n trong mi khong thi gian, thng khong thi gian c chn sao cho mt khung d liu c th truyn trn vn trong mt khe thi gian. Hnh 8.3 minh ha mt v d n gin v k thut TDM cho 4 nt. Trong mt cuc hp, iu ny tng t nh quy nh mi ngi ch c pht biu trong khong thi gian quy nh trc v sau phi dng li ngi khc, nh vy mi thnh vin u c c hi pht biu. K thut TDM loi tr c xung t v hon ton cng bng: mi nt c c tc truyn ring trung bnh R/N b/s. Nu TDM dng chung cc knh truyn qung b theo thi gian th phng php FDM chia knh truyn R b/s thnh cc tn s khc nhau (mi tn s c bng thng R/N) v gn mt tn s cho mi nt. V th, FDM to ra N knh truyn nh R/N b/s t knh truyn ln R b/s. Tuy nhin c hai u c chung nhc im: mi nt b gii hn bi tc trung bnh R/N b/s v phi i n thi gian truyn ca mnh ngay c khi n l nt duy nht c nhu cu gi.
Hnh 8.3 V d v phn chia theo FDM v TDM
Giao thc phn chia knh truyn th ba l chia m (CDMA - Code division multiple access). Nu TDM v FDM gn khong thi gian v tn s cho cc nt th CDMA gn cho mi nt mt m khc nhau. Sau nt s dng m duy nht ny m ho d liu gi i. Chng ta s thy CDMA cho php nhiu nt gi ng thi v cc nt nhn tng ng nhn ng d liu gi cho mnh, min l n bit c m ca nt gi. CDMA tng c s dng trng h thng quc phng nh c tnh chng nhiu v ngy nay ang c p dng ph bin cho mc ch dn s, c bit trong a truy cp knh truyn khng dy. Bi ging Mng my tnh Ths. Nguyn Xun Anh 162 8.2.2 Giao thc a truy cp ngu nhin Trong giao thc truy cp ngu nhin, nt truyn lun lun truyn d liu vi tc cao nht ca knh truyn R b/s. Khi c xung t, nt lin quan n xung t truyn li khung d liu cho n khi khung d liu n ch an ton, vic truyn li khung d liu s c thc hin sau mt khong thi gian ngu nhin no . Mi nt lin quan n xung t chn thi gian i ngu nhin mt cch c lp, v th sau mi xung t xc sut hai nt cng truyn li cng mt lc khng ln. Nhiu giao thc truy cp ngu nhin c nghin cu, trong ti liu ny s ch gii thiu hai loi i din: giao thc ALOHA v giao thc a truy cp cm nhn sng mang (CSMA/CD). 8.2.2.1 Slotted ALOHA Nguyn tc hot ng ca slotted ALOHA nh sau: - Tt c khung d liu c L bit. - Thi gian c chia thnh cc khong L/R s, l khong thi gian truyn mt khung d liu. - Nt bt u truyn khung d liu ti u mi khong thi gian. - Tt c cc nt c ng b ho sao cho mi nt u xc nh c khi no l u ca khong thi gian. - Nu c nhiu khung d liu xung t trong khong thi gian no th tt c cc nt u pht hin s kin xung t ngay trong khong thi gian . Gi p l xc sut (0<=p<=1). Hot ng ca slotted ALOHA trong mi nt nh sau: - Khi nt c khung d liu mi gi i, n s i n thi im u ca khong thi gian k tip v gi ton b frame trong khong thi gian . - Nu khng xy ra xung t, nt truyn thnh cng khung d liu v do khng cn thit phi truyn li (nt c th chun b khung d liu mi truyn, nu c). - Nu c xung t, nt pht hin xung t ngay trong khong thi gian v s truyn li khung d liu trong khong thi gian tip theo vi xc sut p cho n khi truyn thnh cng. Truyn li vi xc sut p ging nh vic tung ng xu: kt qu mt nga ng vi vic truyn li xy ra vi xc sut p, kt qu mt sp ng vi vic b qua khong thi gian ny v tung li ng xu trong khong thi gian k tip xy ra vi xc sut (1- p). Khng ging phn chia knh truyn, slotted ALOHA cho php nt c nhu cu gi c php lin tc gi khung d liu vi tc cao nht ca knh truyn. Slotted ALOHA l mt thut ton phn tn v mi nt khi pht hin ra xung t s quyt nh khi no truyn li mt cch c lp, tuy nhin slotted ALOHA i hi phi c c ch ng b trn tt c cc nt. Khi khng c nt no pht d liu, knh truyn s trng thi trng. Nu nhiu nt cng ng thi pht d liu s dn n tnh trng xung t v cng khng c khung d liu no c chuyn i. Khong thi gian m ch c duy nht mt nt gi d liu gi l khong thi gian thnh cng, hiu sut ca giao Bi ging Mng my tnh Ths. Nguyn Xun Anh 163 thc t l cc khong thi gian truyn thnh cng . Nh vy, nu khng c c ch iu khin truy cp v nt truyn li ngay sau mi ln xung t, hiu sut s bng 0. Gi thit trn mng c N nt, mi nt truyn khung d liu trong mi khong thi gian vi xc sut p (mi nt lun c mt khung d liu gi i v khung d liu ny c gi i vi xc sut p cho d y l khung mi hay khung d liu gi li). Xc sut thnh cng ca mt khong thi gian no l xc sut ch c mt nt duy nht truyn v N-1 nt cn li khng truyn trong khong thi gian . Xc sut mt nt no truyn l p, xc sut m cc nt cn li khng truyn l (1-p) N-1 . Do vy xc sut mt nt no truyn trong khi cc nt khc khng truyn l p (1 -p) N-1 . V c N nt, nn xc sut c khong thi gian thnh cng bng Np(1-p) N-1 , do khi c N nt tch cc, hiu sut ca slotted ALOHA l Np(1-P) N-1 .
Hnh 8.4 Nguyn l hot ng Slotted Aloha
t c hiu sut ln nht, chng ta phi xc nh p* sao cho biu thc ny t gi tr ln nht. V t c hiu sut ln nht khi c nhiu nt tch cc, chng ta phi tnh gii hn ca NP*(1-P*) N-1 khi N tin ti v cng. p dng ton hc, chng ta s xc nh c hiu sut ln nht ca giao thc l 1/e = 0.37. Ngha l, khi nhiu nt cng trng thi tch cc th trong iu kin tt nht ch 37% thi gian ng truyn c s dng c ch. V vy, tc truyn hiu qu ca knh truyn khng phi l R b/s m ch l 0,37R b/s. Phn tch tng t ch ra rng 37% thi gian ng truyn khng c s dng v 26% thi gian xy ra xung t trn ng truyn. Nh vy mt khung d liu no c th c truyn vi tc ti a R nhng v tng th thng lng truyn thnh cng ca ton b knh truyn khng vt qu 0.37R. 8.2.2.2 ALOHA thun ty Giao thc slotted ALOHA) i hi tt c cc nt ng b vic truyn ti u mi khong thi gian. Giao thc ALOHA thun ty khng chia khong thi gian, khi c d liu t lp mng chuyn xung n chun b cc khung d liu v ngay lp tc chuyn khung d liu u tin ln knh truyn qung b. Nu xy ra xung t th ngay sau khi truyn xong khung d liu ny, nt ngay lp tc truyn li khung d liu vi xc sut p. Nu khng c xung t xy ra, nt Bi ging Mng my tnh Ths. Nguyn Xun Anh 164 mng i trong mt khong thi gian bng vi thi gian truyn khung d liu, sau thi gian ny, nt mng truyn khung d liu k tip vi xc sut l p, hoc i mt khong thi gian truyn khung d liu vi xc sut (1-p).
Hnh 8.5 Nhiu truyn dn trong ALOHA thun ty
Gi thit nh trong trng hp slotted ALOHA thi gian truyn khung d liu l mt n v thi gian. Ti bt k thi im no, xc sut nt truyn khung d liu l p. Gi s khung d liu ny bt u truyn ti thi im t 0 nh minh ha trong hnh 8.5, khung d liu ny c truyn thnh cng th truyn trong khong thi gian [t 0 - 1, t 0 ] khng nt no chim ng truyn. Xc sut tt c cc nt khc khng c bt u truyn trong khong thi gian ny l (1-p) N-1 . Tng t, xc xut khng nt no c bt u truyn trong khi nt ang xt ang truyn cng l (1-p) N-1 . V vy xc sut nt no truyn thnh cng l p(1-p ) 2(N-1) . Bng cch ly gii hn nh trong trng hp slotted ALOHA, chng ta thy rng hiu sut ln nht ca giao thc ALOHA l l/(2e) - bng mt na ca slotted ALOHA. 8.2.2.3 a truy cp cm nhn sng mang Trong c hai giao thc ALOHA thun ty v slotted ALOHA, quyt nh truyn ca mt nt mng c a ra c lp vi cc nt khc. C th hn, mt nt khng cn phi kim tra xem ng truyn bn hay ri. Giao thc ALOHA ging nh hnh vi ca ngi bt lch s c thch l ni m khng cn c ai ang ni hay khng. X hi loi ngi c nhng quy tc ng x cho php x s mt cch lch s v lm gim xung t vi nhng ngi khc. c bit, c hai quy tc quan trng cho mt cuc i thoi ca ngi lch s: - Nghe trc khi ni: nu c ai ang ni, hy i n khi h ni xong. Trong mng my tnh, iu ny c gi l cm nhn sng mang (carrier sense) mt nt phi nghe knh truyn trc khi truyn. Nu knh truyn bn th nt s ch mt khong thi gian ngu nhin sau li nghe knh truyn. Sau khong thi gian ch , nu knh truyn ri th nt mng mi bt u truyn khung d liu, nu khng li i mt khong thi gian ngu nhin khc v qu trnh lp li tng t. - Nghe trong khi ni: Nu c ai ang ni m thy ngi khc ni th tm ngng ni ngay lp tc. Trong mng my tnh iu ny c gi l pht hin xung t, nt ang truyn tip tc lng nghe knh truyn trong khi ang Bi ging Mng my tnh Ths. Nguyn Xun Anh 165 truyn. Nu pht hin c nt khc truyn xen vo, nt s dng truyn v s dng giao thc no quyt nh khi no s th truyn tip. Hai quy tc trn l tng ch o ca giao thc CSMA (Carrier Sense Multuple Access) v CSMA/CD (CSMA with Collision Detection). C nhiu bin th ca CDMA v CDMA/CD c a ra vi vic thc hin cc chin lc ch i khc nhau, cng ngh Ethernet s dng giao thc ny. Ngay c khi tt c cc nt thc hin cm nhn sng mang th xung t vn c kh nng xut hin, nguyn nhn l do tr ca tn hiu khi lan truyn trn mng. 8.3 Cc cng ngh kt ni 8.3.1 Cng ngh Ethernet Hin nay Ethernet gn nh thng tr th trng mng cc b. Mi ch u nhng nm 1980 n u nhng nm 1990, Ethernet cn phi i u vi nhiu thch thc t nhng cng ngh LAN khc nh FDDI, token-ring, ATM. Ra i vo gia nhng nm 70, Ethernet lin tc pht trin hon thin v vt xa cc cng ngh LAN khc v trong tng lai gn t c kh nng cng ngh khc thay th c Ethernet. C rt nhiu l do dn n s thnh cng ca Ethernet. Th nht, Ethernet l mng cc b tc cao c trin khai rng ri u tin. c trin khai tng i sm nn cc nh qun tr mng lp tc tr nn quen thuc vi Ethernet nn ngi chuyn sang nhng cng ngh LAN mi. Th hai, so vi cc cng ngh khc nh: token-ring, FDDI, ATM, cng ngh Ethernet tng i d lp t v gi thnh r. Th ba, l do chnh ng nht s dng cc cng ngh LAN khc (FDDI hay ATM) l do cng ngh mi c tc cao hn, tuy nhin Ethernet lin tc nng cp v tc v ng thi m bo tnh tng thch gia cc tc khc nhau.
Hnh 8.6 Bn phc ha mng Ethernet ca Bob Metcalf
Kin trc Ethernet c Bob Metcalf a ra vo khong gia nhng nm 70. Hnh 6.6 l s nguyn gc v tng mng Ethernet, theo : cc my tnh c kt ni vi nhau bng mt knh truyn chung tng t nh h thng ng dn nc sinh hot trong mt khu tp th. Mi my tnh kt ni vo mng Bi ging Mng my tnh Ths. Nguyn Xun Anh 166 phi c b phn tip gip gi l giao din mng (NIC Network Interface Controler). Ethernet c th chy trn hnh trng vt l dng bus hoc dng sao, mi trng truyn dn c th l cp ng hoc cp quang, tc 10 Mbit/s, 100 Mbit/s hay 1 Gbit/s, thm ch ang th nghim trin khai tc 10 Gbit/s. 8.3.1.1 Cu trc khung d liu Ethernet Cc cng ngh Ethernet khc nhau c mt trn th trng hin nay u c chung cu trc khung d liu, cho d l cng ngh Ethernet s dng cp ng trc hay cp quang, chy vi tc 10 Mbps, 100 Mbps hay 1 Gbps.
Hnh 8.7 Khun dng khung d liu Ethernet
Hnh 8.7 th hin cu trc khung d liu Ethernet: - Preamble (mo u, 8 byte): Khung d liu Ethernet bt u bng trng preamble di 8 byte, trong 7 byte u tin c gi tr l 10101010, byte th tm c gi tr 10101011 . By byte u tin ca phn m u lm nhim v nh thc Card mng bn nhn v ng b ho ng h bn gi vi ng h bn nhn. Ti sao cc ng h li khng ng b ho? Ch rng Card mng A truyn frame vi tc 10 MBPS, 100 MBPS hay 1 Gbps ph thuc vo kiu Ethernet. Tuy nhin, bi v khng c g l tuyt i hon ton nn Card mng A cha chc truyn khung d liu vi tc xc nh m vi tc no . Card mng nhn c th cht ng h ca Card mng A bng cch cht tt c cc bit trong 7 byte u tin. Hai bit cui cng trong byte th 8 (hai bit 1 lin tip nhau) bo cho Card mng B bit rng d liu chnh thc chun b n. Khi my tnh B thy hai bit 1 lin tip nhau, n bit rng 6 byte tip theo l a ch ch. Card mng c th pht hin khung d liu c truyn xong khi khng thy dng in. - Destination Address (a ch ch, 6 byte): Trng ny cha a ch vt l ca Card mng nhn, BB-BB- BB-BB-BB-BB. Khi Card mng B nhn bt k khung d liu no, n s kim tra a ch ch ca khung . Nu a ch ch l BB-BB-BB- BB-BB-BB (a ch ca chnh n), hoc a ch qung b LAN (FF- FF-FF-FF-FF-FF) th Card mng mi chuyn gi tin trong trng d liu ca khung ln tng mng. - Source Address (a ch ngun, 6 byte): Trng ny cha a ch vt l ca Card mng gi khung d liu, trong v d ny l AA-AA-AA-AA-AA-AA. - Type (Trng kiu, 2 byte): Trng ny cho php Ethernet h tr nhiu giao thc tng mng khc nhau. Cn ch rng my tnh c th s dng Bi ging Mng my tnh Ths. Nguyn Xun Anh 167 nhiu giao thc tng mng khng ch l IP. Trn thc t, my tnh no c th h tr nhiu giao thc tng mng v s dng cc giao thc khc nhau cho nhng ng dng khc nhau. V th khi nhn c mt khung Ethernet, Card mng B cn xc nh giao thc tng mng no s nhn ni dung ca trng d liu. Nhng giao thc tng mng nh IP, Novell IPX hoc APPLETALK u c mt m nh danh (l mt s) c chun ha. hn na, giao thc ARP cng c mt nh danh. Trng kiu tng t vi trng protocol trong gi d liu IP hay trng s hiu cng trong tng vn ti; mc ch ca tt c cc trng ny l kt hp giao thc tng di vi giao thc tng trn n. - Data (Trng d liu, t 46 n 1500 byte): trng ny cha gi d liu IP, MTU (Maximum Transfer Unit) ca Ethernet l 1500 byte. iu ny c ngha l nu gi d liu IP vt qu 1500 byte th my tnh phi chia nh gi d liu ra. Kch thc ti thiu ca trng ny l 46 byte. iu ny c ngha l nu gi d liu nh hn 46 byte, trng d liu phi c chn thm mt s d liu gi cho 46 byte. Khi bn gi chn thm d liu vo th tng mng bn nhn cng nhn c c gi d liu IP dn d liu c chn thm vo, khi n phi s dng trng di trong gi d liu IP loi b phn thm vo. - CRC (M kim tra d tha vng - Cyclic Redundancy Check, 4 byte): mc ch ca trng CRC l cho php Card mng pht hin li trong khung d liu nhn c. Nguyn nhn li bit l do hin tng suy hao nng lng in t ca tn hiu hay ta nhit trong Card mng Ethernet hay cp mng. Vic pht hin li c thc hin nh sau. Khi to ra khung d liu Ethernet, my tnh A tnh gi tr trng CRC da trn trng d liu thc s Cng vic kim tra ti B xem d liu thc s v CRC c mu thun khng c gi l kim tra CRC. Nu nu gi tr trong CRC khng ph hp vi phn d liu th my tnh B xc nh trong khung d liu nhn c c li xut hin. 8.3.1.2 Dch v truyn s liu khng lin kt Tt c cng ngh Ethernet cung cp cho tng mng dch v khng lin kt. Ngha l khi Card mng A mun gi gi d liu n Card mng B, Card mng A s t gi d liu trong khung d liu v gi ln mng m khng phi bt tay trc vi Card mng B. dch v khng kt ni tng ny tng t vi dch v IP tng Internter v dch v UDP tng vn ti. Cng ngh Ethernet cung cp dch v khng tin cy cho tng mng. C th, khi nhn c khung d liu t Card mng A, Card mng B s khng gi phn hi cho A. Card mng A khng th xc nh liu khung d liu n truyn i c c nhn ng hay khng. Nu pht hin li khi kim tra CRC, Card mng B s loi b khung d liu. Chnh iu ny gip Ethernet n gin v r. Nhng dng d liu chuyn ti tng mng c th b gin on. Nu c s gin on do mt s khung d liu Ethernet b loi b, giao thc tng ng dng ti my B c pht hin c s gin on khng? iu ny ph thuc vic ng dng s dng UDP hay TCP. Nu ng dng dng UDP Bi ging Mng my tnh Ths. Nguyn Xun Anh 168 th giao thc tng ng dng trong my B s khng pht hin c gin on trong d liu. Mt khc, nu ng dng dng TCP th thc th TCP trong my B s khng gi bin nhn cho nhng d liu b loi b, do vy thc th TCP trong my A phi gi li. Khi TCP gi li d liu, th cui cng d liu cng s i qua cc Card mng Ethernet, tc l khung d liu c truyn li nhng Ethernet coi l mt gi d liu mi. 8.3.1.3 Di tn c s v m ho Manchester Ethernet s dng bng tn c s (baseband) ngha l Card mng gi tn hiu s trc tip vo knh truyn dng chung. Card mng khng chuyn tn hiu sang i tn s khc nh trong mt s cng ngh khc. Ethernet s dng m ho Manchester (Hnh 8.8).
Hnh 8.8 M ha Manchester
Trong phng php m ho Manchester, mi bt ng vi mt qu trnh chuyn trng thi xung truyn: bit 1 chuyn t trn xung di, bit 0 chuyn t di ln trn. L do s dng m ho Manchester l ng h ca card mng gi v nhn khng ng b hon ton vi nhau. Khi xut hin s chuyn ngay trong phn gia mi bit, my tnh nhn c th ng b ng h ca n vi ng h ca my tnh gi. Sau khi ng h ca card mng nhn c ng b ho, pha nhn c th thu c tn hiu ca mi bit v xc nh n l 0 hay 1 . M ho Manchester c s dng nhiu trong tng vt l ch khng phi trong tng lin kt d liu. 8.3.1.4 CSMA/CD Cc nt trn mng cc b Ethernet c kt ni qua mt knh truyn qung b dng chung, v vy khi card mng gi i mt khung d liu, tt c cc card mng trn LAN u nhn c khung . Ethernet dng thut ton a truy cp CSMA/CD, n s dng cc c ch sau: - Card mng c th bt u truyn ti bt k thi im no, ngha l khng chia khong thi gian. - Card mng khng bao gi truyn khung d liu khi n nhn thy Card mng khc ang truyn. Bi ging Mng my tnh Ths. Nguyn Xun Anh 169 - Card mng ang truyn s ngng ngay lp tc nu pht hin ra Card mng khc cng ang truyn. - Trc khi c gng th truyn li, Card mng i mt khong thi gian ngu nhin theo thut ton backoff. Nhng c ch ny gip hiu sut ca CSMA/CD c ci thin ng k so vi slotted ALOHA khi vn hnh trong mi trng mng LAN. Trong thc t, nu thi gian tr tn hiu lan truyn gia hai nt l rt nh th hiu sut ca CSMA/CD c th t ti 100%. C ch th hai v th ba k trn yu cu Card mng Ethernet c kh nng cm nhn c khi no th c mt Card mng khc ang truyn v pht hin xung t trong khi truyn. Card mng Ethernet thc hin hai nhim v ny bng vic o mc in p trc v trong khi truyn. Card mng dng giao thc CSMA/CD khng cn kt hp vi Card mng khc trn Ethernet. Trn mt Card mng, giao thc CSMA/CD lm vic nh sau: - Card mng nhn gi tin t tng mng, to ra khung d liu Ethernet v t vo trong b m. - Nu Card mng thy knh truyn ri (khng c tn hiu trn knh truyn cng dng in bng 0) th Card mng bt u truyn. Nu Card mng thy knh truyn bn, n s i cho n khi pht hin thy knh truyn ri. - Trong khi truyn, Card mng kim tra xem c nng lng tn hiu n t Card mng khc hay khng. Nu khng pht hin c nng lng sau khi truyn xong khung d liu th khung d liu c xem l truyn thnh cng. - Nu Card mng pht hin nng lng tn hiu t Card mng khc trong khi ang truyn th lp tc n dng li khng truyn v gi i tn hiu bo nhiu 32 bit (tn hiu JAM). Mc ch ca tn hiu bo nhiu l bo m tt c cc Card mng ang truyn khc u pht hin ra xung t. - Sau khi dng pht v gi tn hiu bo nhiu, Card mng s thc hin thut ton exponential backoff. Khi truyn frame no , nu thy frame b xung t n ln lin tip, Card mng chn mt gi tr ngu nhin K trong khong (0,1,2...2 m -1) vi m = min(n,10) . Sau Card mng s i K*512 trc khi quay li bc 2. Xt v d sau: gi s adapter A bt u truyn i mt khung d liu v ngay trc khi tn hiu t A ti c Card mng B, Card mng B bt u truyn. Do vy B ch truyn c vi bit trc khi dng li khng truyn tip; Vi bit ny s lan ta c n A, nhng chng khng to nng lng A c th pht hin xung t. m bo A pht hin c xung t, B phi truyn thm tn hiu bo nhiu di khong 32 bit. Trong trng hp xy ra xung t, thut ton exponetial backoff s tnh ton thi gian Card mng s phi ch bao lu trc khi nghe ng truyn tip tc pht li. Gi s adapter ln u tin truyn i mt frame v trong khi truyn pht hin c xung t. Sau Card mng s chn K=0 vi xc sut 0,5 v chn K=1 vi xc sut 0,5. Nu Card mng chn K=0 th ngay lp tc n s nhy n bc Bi ging Mng my tnh Ths. Nguyn Xun Anh 170 2 sau khi truyn i tn hiu bo nhiu. Nu Card mng chn K=l th n s i 51,2 microsecond trc khi quay li bc 2. Sau xung t ln th hai, K c chn ngu nhin gia cc gi tr (0,1,2,3) vi xc sut bng nhau, sau ba xung t. K s c chn ngu nhin gia cc gi tr (0, 1, 2, . . . ,7) vi xc sut bng nhau, sau nhiu hn mi xung t K c chn ngu nhin gia cc gi tr (0, 1, 2, . . . , 1023 ) vi xc sut bng nhau.. Nh vy tng s gi tr m K c th la chn tng theo lu tha c s 2 vi s m l s ln xung t cho (cho n khi N=10). Chun Ethernet n nh gii hn khong cch gia hai nt trn mng. Gii hn ny bo m rng nu Card mng A chn gi tr K thp hn gi tr K ca tt c cc Card mng khc lin quan n xng t trong pha trc th A c th truyn i khung d liu m khng b xung t na. Vic sr dng thut ton backoff vi hm s m s to ra nhng khong thi gian ch khng ging nhau. Sau khi Card mng gp xung t ln u tin, n khng hnh dung c c bao nhiu adapter lin quan n xung t . Nu ch c mt s lng nh Card mng th chc chn K s c chn trong mt tp hp hn ch. Ngc li, nu c nhiu Card mng lin quan th K c chn trong mt tp hp ln hn. Bng cch tng kch c ca tp hp sau mi xung t, adapter s thch nghi c vi nhiu hon cnh. Mi ln Card mng chun b khung d liu mi gi i, n s dng thut ton CSMA/CD ni trn, Card mng khng quan tm t bt k xung t no trc , do vy, rt c kh nng Card mng vi khung d liu mi c th truyn xen vo trong khi mt vi Card mng khc ang trong trng thi ch. 8.3.1.5 Hiu sut Ethernet Khi ch c mt nt truyn s liu, nt c th truyn vi tc ti a (10 Mbps, 100Mbps hoc 1 Gbps). Tuy nhin nu nhiu nt cng truyn th tc truyn thnh cng (effective rate) ca knh truyn c th gim i ng k. Hiu sut ca Ethernet l t l thi gian khng c xung t trn knh truyn khi c nhiu nt truyn s liu, mi nt cn truyn nhiu khung d liu trong mt khong thi gian nht nh. xc nh hiu sut gn ng ca Ethernet, gi s t prop l thi gian ln nht nng lng tn hiu lan ta gia hai Card mng. Gi s t trans l thi gian truyn i mt frame Ethernet vi ln cc i (xp x 1,2 ms vi Ethernet 10 Mbps), ta s dng cng thc: Efficiency= 1 1+ t prop /t trans
T cng thc ny chng ta thy nu t prop t ti 0 th hiu sut t ti 1. iu ny cng rt hp l: nu thi gian tr l 0 th cc nt s pht hin ra xung t ngay lp tc v do khng lng ph knh truyn. Khi t trans tr ln rt ln, hiu sut t t 1, iu ny cng hin nhin v khi Card mng c c knh truyn n s chim dng knh truyn trong khong thi gian di, nh vy knh truyn hu nh lc no cng trong trng thi lm vic. Bi ging Mng my tnh Ths. Nguyn Xun Anh 171 8.3.1.6 Cc cng ngh Ethernet Cng ngh Ethernet s dng cp ng trc (coaxial cable) c hnh trng dng bus, tc truyn l 10 Mbps. S dng cp dy xon, hnh trng hnh sao, tc truyn t 10 n 1000Mbps. Gigabyte Ethernet s dng c si quang hay dy ng xon, truyn vi tc 1 Gbps. Nhng cng ngh Ethernet ny c chun ho bi IEEE 802.3. V th LAN Ethernet thng c gi l 802.3 LAN. Tn hiu truyn trn ng dy thng b suy hao theo khong cch, do n mt khong cch no s mt tn hiu, v vy cn phi c thit b ti to li tn hiu trc khi khng nhn ra tn hiu , thit b thc hin chc nng ny gi l b lp (Repeater). B lp l thit b tng vt l x l trn tng bit ring l ch khng phi trn khung d liu. Khi tn hiu (biu din bit 0 hoc 1) n t mt cng, b lp ti to li tn hiu ny bng cch tng cng nng lng ca tn hiu v gi tn hiu qua tt c cc cng cn li. B lp c s dng rng ri trong LAN m rng phm vi mng, b lp khng c kh nng cm nhn sng mang hay thc hin bt k mt chc nng no ca CSMA/CD, n ch ti to v gi tn hiu n t mt cng n tt c cc cng khc, k c trong trng hp cc cng kia cng ang c tn hiu gi n. Ethernet 10BASE2
Hnh 8.9 Ethernet 10Base2
10Base2 l mt cng ngh Ethernet rt ph bin trong nhng nm 90 ca th k trc. S 10 trong 10base2 c ngha l tc truyn ti a l 10 Mbit/s, s 2 c ngha khong cch ti a gia hai trm khng c b lp gia khng vt qu 200m. Hnh 8.9 minh ha mng Ethernet 10BASE2 c hnh trng dng bus, cc Card mng c kt ni trc tip vo mt mi trng dng chung - cp ng trc. Khi Card mng gi i mt khung d liu, khung s c truyn qua u ni ch T, sau s lan ta theo c hai hng ca dy dn. Trn ng i, mi Card mng s thu c cc tn hiu ca khung d liu . Khi n im cui cng ca dy dn, tt c cc tn hiu s b kt cui BNC hp th. Nu khng c b lp, di ti a ca bus l 185m. Nu bus c i ln hn, suy hao tn hiu s lm h thng hot ng khng chnh xc. Ngoi ra nu khng c repeater, s lng nt ti a l 30. Ngi ta s dng b lp ni cc on 10base2 lin tip nhau, mi on c th c 30 my v di khng qu 185m. Bi ging Mng my tnh Ths. Nguyn Xun Anh 172 Ch c th s dng ti a 4 b lp, nu nhiu hn s thng xuyn xy ra xung t. Ethernet 10BaseT v 100BaseT
Hnh 8.10 Hnh trng dng sao 10BaseT v 100 BaseT
10BaseT v 100BaseT l hai cng ngh tng t nhau, im khc bit quan trng nht l tc truyn ca 10BaseT l 10Mbit/s trong khi tc truyn ca Ethernet 100BaseT l 100Mbit/s. 10BaseT v 100BaseT l cng ngh c s dng rt ph bin hin nay, chng c topo dng sao, nh minh ha trn hnh 8.10. Trong topo hnh sao c mt thit b trung tm c gi l hub (i khi gi l b tp trung concentrator), thc cht l b lp nhiu cng. Card mng trn mi nt c kt ni trc tip n hub. Kt ni ny gm hai lp dy ng xon i, mt truyn v mt nhn. Ti mi u ca kt ni c mt b ni theo chun RJ-45 tng t nh u ni chun RJ-11 c s dng cho in thoi thng thng. Ch T trong 10BaseT v 100BaseT l vit tt ca Twisted pair ngha l cp dy xon. i vi 10BaseT v 100BaseT, khong cch ti a gia Card mng v hub l 100m, v vy di ln nht gia hai nt l 200m. Khong cch ny c th c tng nu s dng cc thit b nh hub, bridge, switch. V bn cht, b tp trung v b lp ging nhau v khi nhn c tn hiu t Card mng chng u gi tn hiu n tt c cc Card mng khc. Theo cch ny, mi Card mng c th cm nhn knh truyn xc nh liu knh truyn c ri khng v ng thi pht hin xung t trong khi ang truyn d liu. Nhiu Card mng Ethernet h tr cc tc 10/100 Mbps, tc l chng ta c th s dng c dng c hai kiu Ethernet: 10BaseT v 100BaseT. 10BaseT, c trng ca n l s dng cp xon kiu 5. Khc 10Base2 v 10BaseT, 100BaseT khng s dng phng php m ho Manchester s dng phng php 4B5B c hiu sut cao hn: mi nhm 5 chu k ng h c s Bi ging Mng my tnh Ths. Nguyn Xun Anh 173 dng m ha 4 bit v cung cp thng tin cho php ng b ho ng h. C hai cng ngh 10BaseT v 100BaseT u c th s dng cp quang, tuy gi thnh cao nhng kh nng chng nhiu tt. Gigabit Ethernet Gigabit Ethernet l s m rng ca chun Ethernet 10BaseT v 100BaseT. Vi tc truyn ln ti 1000 Mbit/s, Gigabit Ethernet vn duy tr kh nng tng thch hon ton vi cc thit b Ethernet kiu c. Chun Gigabit Ethernet (IEEE802.3x), thc hin cc cng vic sau: - S dng khun dng khung Ethernet chun, tng thch vi cng ngh 10BaseT v 100BaseT . iu ny cho php d dng tch hp Gigabit Ethernet vo cc c s ci t cc thit b Ethernet. - Cho php ng truyn im-im cng nh knh truyn qung b. ng truyn im-im dng switch trong khi knh truyn qung b s dng hub ging 10BaseT v 100BaseT. - S dng CSMA/CD cho knh truyn qung b dng chung. t c hiu sut mong mun, khong cch ln nht gia cc nt b hn ch cht ch. - Knh truyn im-im c c tnh song cng, mi hng truyn vi tc 1 Gbps. Ging nh 10BaseT v 100BaseT, Ethernet Gigabit c hnh trng dng sao, Gigabit Ethernet thng c s dng trn cc trc chnh kt ni nhiu mng cc b Ethernet 10BaseT v 100BaseT. Gigabit Ethernet c th s dng loi cp 5UTP hoc cp quang. 8.3.2 Kt ni mng din rng 8.3.2.1 Giao thc PPP PPP l giao thc c s dng ch yu khi ngi dng truy cp Internet t nh thng qua ng in thoi quay s, do PPP l mt trong nhng giao thc tng nn kt d liu c s dng nhiu nht nht ngy nay. Giao thc quan trng th hai l HDLC (High Level Data Link Control). Giao thc PPP c trnh by tng i n gin vi mc ch kho st mt s tnh nng quan trng nht ca lp giao thc im ni im tng lin kt d liu. Giao thc PPP l giao thc tng lin kt d liu trn knh truyn ni trc tip gia hai nt - mi nt mt u ca ng truyn. ng truyn PPP c th l ng in thoi quay s (v d kt ni modem 56k), ng truyn SONET, kt ni X.25 hoc mng ISDN. Nh ni trn, PPP ch yu c la chn kt ni my tnh gia nh n ISP thng qua ng dy in thoi. IETF t ra cho mi thit k ca PPP : - ng gi gi tin (Framing): pha gi trong giao thc PPP phi c kh nng ly gi tin tng mng, t n trong khung d liu tng lin kt d liu. Pha nhn xc nh c v tr bt u v kt thc ca frame cng nh v tr gi tin tng mng trong frame. Bi ging Mng my tnh Ths. Nguyn Xun Anh 174 - Tnh trong sut: Giao thc PPP khng c t ra bt k hn ch no trn gi d liu tng mng. Tc l n c kh nng chuyn i bt k gi d liu tng mng no. - H tr nhiu giao thc tng mng: Giao thc PPP phi c kh nng h tr nhiu giao thc tng mng (v d, IP v DECnet) trn cng ng truyn vt l ti cng mt thi im. iu ny cng ging nh giao thc IP c kh nng phn knh cho nhiu giao thc vn ti khc nhau (v d, TCP v UDP). Nh vy PPP cng cn c mt c ch khi nhn c mt frame, thc th PPP pha nhn xc nh c cn chuyn gi d liu cho thc th tng mng no. - H tr nhiu kiu ng truyn: Ngoi kh nng h tr nhiu giao thc tng cao hn, PPP phi c kh nng vn hnh trn nhiu kiu ng truyn khc nhau bao gm ng truyn tun t (truyn ln lt tng bit mt) hoc song song (truyn nhiu bit cng mt ln), ng b (truyn tn hiu ng h cng vi bit d liu) hoc d b, truyn vi tc chm hoc cao, tn hiu in t hoc quang hc. - Pht hin li: PPP pha nhn c kh nng pht hin liu c li bit trong frame nhn c hay khng. - Thi gian kt ni: PPP phi c kh nng pht hin ng truyn b li mc link (v d, khng c kh nng truyn d liu t pha gi sang pha nhn) v phi thng bo tnh trng li ny cho tng mng. - Tho thun a ch tng mng: PPP phi cung cp c ch cho php hai thc th tng mng tham gia truyn thng (IP) c th hc hay t cu hnh a ch tng mng cho nhau. - n gin: Ngi ta i hi PPP p ng nhiu yu cu ngoi nhng yu cu nu trn. mt trong nhng yu cu quan trng nht l tnh n gin. Hin nay hn 50 RFC nh nghi nhng kha cnh n gin ca giao thc ny. Tuy vy cc c t trong thit k PPP khng yu cu: - Sa li: PPP cn pht hin c li bit nhng khng cn phi sa li. - Kim sot lu lng: PPP pha nhn c hy vng c kh nng nhn khung d liu vi tc cao nht ca tng vt l pha di. Nu tng mng khng th nhn vi tc ny th vic loi b gi tin hay yu cu bn kia truyn chm li l trch nhim ca cc tng cao hn. Khi tng cao hn s yu cu thc th tng ng pha bn kia gim tc to ra d liu gi cho PPP. - nh s th t: PPP khng c yu cu chuyn khung d liu n pha nhn theo ng th t gi. - ng truyn a im: PPP vn hnh trn nhng ng truyn vi mt pha gi v mt pha nhn duy nht. mt s giao thc tng lin kt d liu khc (v d, HDLC) cho php nhiu nt nhn trn cng mt ng truyn (ging Ethernet). Khun dng khung d liu Hnh 6.11 minh ha frame d liu PPP ging khung d liu ca HDLC, PPP bao gm nhng trng sau: Bi ging Mng my tnh Ths. Nguyn Xun Anh 175 - Trng c: Mi khung d liu PPP bt u v kt thc bng mt byte c c gi tr 01111110. - Trng a ch: gi tr duy nht ca trng ny l 11111111 - Trng iu khin: gi tr duy nht ca trng ny l 00000011. C hai trng a ch v iu khin u mang nhng gi tr c nh, iu ny gii thch v sao nhng trng ny c nh ngha u tin. Khuyn ngh RFC 1662 ghi r rng nhng gi tr ny c th c nh ngha sau ny. Bi v nhng trng ny mang gi tr c nh, PPP cho php pha gi khng cn gi byte a ch v byte iu khin, do tit kim c hai byte tiu trong khung d liu PPP.
Hnh 8.11 Khun dng khung d liu giao thc PPP
- Trng giao thc (protocol): Trng giao thc cho PPP xc nh giao thc tng trn s nhn d liu trong khung d liu PPP. Khi nhn c khung d liu PPP, bn nhn s kim tra xem khung d liu c li khng v sau chuyn phn d liu trong gi tin cho giao thc thch hp. RFC 1700 nh ngha cc m 16 bit cho cc giao thc c s dng cng vi PPP. Giao thc IP (d liu trong khung d liu PPP l gi d liu IP) ng vi gi tr 21h, giao thc AppleTalk l 29h, DFCnet l 27h, giao thc iu khin ng truyn PPP l C021h v giao thc iu khin IP l 8021. Giao thc IP Control c PPP s dng khi kch hot knh truyn ln u tin cu hnh mc IP gia cc thit b trn hai u knh truyn. - Thng tin: Trng ny cha gi tin c giao thc tng mng gi i trn ng truyn PPP (l gi tin IP). di ln nht ca trng thng tin ny l 1500 byte, mc d gi tr ny c th thay i lc t cu hnh cho ng truyn. - Checksum: Trng checksum c s dng pht hin cc bit b li trong khung d liu nhn c. N l m CRC 2 hoc 4 byte ging nh trong giao thc HDLC. Chn Byte: Mt vn pht sinh khi trong gi d liu ca giao thc tng mng li c mt byte c gi tr ging c nh u im bt u v kt thc ca khung d liu (gi tr 01111110), bn nhn s cho rng y l im kt thc ca khung d liu PPP mc d trn thc t khng phi nh vy. C th cm cc giao thc tng trn gi d liu cha byte c, iu ny vi phm tnh c lp ca cc tng, v vy PPP cng nh nhiu giao thc khc la chn k thut chn Byte (Byte stuff). Bi ging Mng my tnh Ths. Nguyn Xun Anh 176 PPP nh ngha mt byte iu khin c bit, 01111101 lm nhim v nh du. Nu byte c 01111110 - xut hin trong khung d liu (tr v tr m u v kt thc ca khung d liu), PPP t byte nh du trc byte c gi tr ging c. Nh vy n chn thm mt byte iu khin nh du rng byte 01111110 khng phi l c m l d liu thc. Bn nhn thy 01111101 ng trc 01111101 nn bit c 01111101 khng phi l c m l d liu, nn n s t ng loi b byte nh du 01111110 c pha nhn chn vo bn cnh dng d liu thc. Hnh 6.12 minh ha chn byte trong PPP. Tng t nh vy, nu chnh byte nh du cng xut hin trong dng d liu thc s th n cng cn c nh du.
Hnh 8.12 Chn byte
Tm li, PPP l giao thc tng lin kt d liu cho hai thit b hai u ca mt ng truyn kiu im-im, trao i cc khung d liu cha gi d liu ca tng mng. Nhng chc nng ch yu ca PPP l: - ng gi d liu: Phng thc t gi d liu trong khung d liu PPP - Xc nh v tr bt u v kt thc ca khung d liu, pht hin li trong khung . - Giao thc iu khin ng truyn: khi to, duy tr v kt thc ng truyn PPP. 8.3.2.2 Giao thc iu khin ng truyn PPP Giao thc iu khin mng l mt nhm giao thc, mi giao thc ng vi mt giao thc mng tng trn, cho php module tng mng t t cu hnh trc khi gi d liu tng mng bt u chuyn qua ng truyn. Qu trnh khi to, duy tr, bo li v ng ng truyn PPP c thc hin nh giao thc iu khin ng truyn (LCP -Linh Con trol Protocol) v cc giao thc iu khin mng ca PPP. Trc khi trao i bt k d liu no trn ng truyn PPP, hai pha (mi pha mt u ng truyn) phi thc hin nhiu cng vic quan trng t cu hnh cho ng truyn, iu ny cng tng t nh thc th TCP bn Bi ging Mng my tnh Ths. Nguyn Xun Anh 177 gi v bn nhn thc hin bt tay ba bc t cc tham s ca kt ni TCP trc khi trao i TCP segment. Hnh 8.13 minh ha biu chuyn trng thi ca giao thc LCP t cu hnh, duy tr v kt thc ng truyn PPP.
Hnh 8.13 S chuyn trng thi ca giao thc LCP
ng truyn PPP bt u v kt thc trong trng thi ng (dead). Khi pht sinh s kin nh pht hin sng mang hay ngi qun tr mng tc ng ch tng vt l sn sng s dng, PPP bc sang trng thi thit lp ng truyn (link establishment). Trong trng thi ny, mt pha ca ng truyn gi mt s ty chn cu hnh m n mong mun thng qua vic gi khung d liu yu cu cu hnh LCP (khung d liu PPP c gi tr ca trng protocol ng vi giao thc LCP v trng information cha ni dung cu hnh yu cu). Sau pha bn kia tr li vi khung d liu configure-nack (chp nhn tt c cc la chn), khung d liu configure-nak (hiu nhng khng chp nhn cc la chn) hoc khung d liu configure-reject (khng th ghi nhn hoc chp nhn cc la chn m phn). Tu chn cu hnh LCP bao gm kch thc ti a ca khung d liu trn ng truyn, giao thc kim chng c s dng (nu cn) v mt ty chn xc nh c b qua vic s dng trng a ch v trng iu khin trong frame PPP hay khng. Sau khi ng truyn c thit lp, tha thun xong cc tu chn ca ng truyn v kim chng thnh cng, hai pha ca ng truyn PPP s trao i cc gi tin kim sot ca tng mng. Nu IP chy pha trn PPP, giao thc iu khin IP c s dng thit lp cu hnh cho module giao thc IP ti mi u ca ng truyn PPP. Gi tin IPCP c t trong khung d liu PPP. IPCP cho php hai thc th IP thay i hoc t cu hnh a ch IP hay tha thun c nn gi d liu IP Bi ging Mng my tnh Ths. Nguyn Xun Anh 178 khng. Nhng giao thc kim sot mng tng t c a ra cho nhng giao thc tng mng khc nh DECNET [RFC 1762] v AppleTalk [RFC 1378]. Sau khi cu hnh xong tng mng, PPP c th bt u gi gi tin ca tng mng - ng truyn trng thi m v d liu bt u chuyn dc theo ng truyn PPP. Cc khung d liu yu cu phn hi v khung d liu tr li phn hi LCP c th c hai pha ca ng truyn trao i kim tra trng thi ng truyn. ng truyn PPP c duy tr cho n khi gi tin LCP yu cu kt thc c gi i. Nu frame LCP yu cu kt thc (terminate-request) t mt pha ca kt ni c tr li bi frame LCP chp nhn kt thc (terminate-ack) t pha bn kia th ng truyn bc vo trng thi ng. 8.4 Cc thit b mng ni b C quan cc cng ty, trng i hc - c c im gm nhiu b phn, mi b phn c mng cc b ring. Tt nhin, c quan mun kt ni mng cc b ca cc b phn, lm c iu phi s dng cc thit b nh: b lp (repeater), b tp trung (hub), cu ni (bridge) v b chuyn mch (switch). Vi vic xut hin khi nim mng ni b o (VLAN), i khi ngi ta cng xp b nh tuyn thuc nhm thit b trong mng ni b. 8.4.1 B tp trung Cch n gin nht kt ni LAN l s dng b tp trung (Hub). Hub l mt thit b n gin sao chp tn hiu n t mt cng ra tt c cc cng cn li, bn cht ca hub l b lp thao tc trn bit, v th chng l thit b tng vt l. Khi bit i vo mt cng, hub s truyn bit ny qua tt c cc cng khc.
Hnh 8.14 Kt ni mng ni b qua Hub
Hnh 8.14 minh ha kt ni mng LAN ca ba b mn trong khoa Cng ngh thng tin qua hub. Mi b mn c mt mng Ethernet 10BaseT cn b v sinh vin ca b mn s dng. Mi my tnh ca b mn kt ni im-im n hub. Hub th t, c gi l hub xng sng kt ni im-im n cc hub ca tng b mn lin kt LAN ca ba b mn. Thit k nh trong hnh 6.14 l thit k a tng v cc hub c sp xp trong h thng phn cp. C th Bi ging Mng my tnh Ths. Nguyn Xun Anh 179 to thit k nhiu tng, v d mng LAN ca khoa CNTT li kt ni vi cc khoa khc trong Hc vin. Trong thit k a tng, chng ta coi ton b mng lin kt vi nhau l mng cc b LAN v coi mi phn mng ca ca mt b mn l mt phn on trong mng LAN. Tt c cc phn on trong mng LAN trn hnh 6.14 u thuc v cng mt vng xung t, ngha l ch cn 2 my tnh trong mng gi d liu cng mt thi im s xy ra xung t. Vic kt ni cc my tnh bng Hub c n gin, n m rng khong cch ti a gia bt c lp nt no trn ni b. Bng kt ni qua hub, khong cch ti a ny c th c m rng v khong cch gia cc hub kt ni trc tip vi nhau c th l 100m khi s dng cp xon i (v nhiu hn khi dng cp quang). Vic thit k a tng gim nguy c ngng hot ng ca ton b h thng. Gi s nu bt k hub ca b mn no b li, hub trc chnh c th pht hin vn v phong ta kt ni ti hub b mn , nh vy cc b mn cn li vn c th tip tc hot ng v truyn thng trong khi hub b li khng hot ng. Tuy vy hub cng c nhc im. u tin v c l quan trng nht l khi s dng hub trung tm, min xung t ca mng cc b ca tng khoa tr thnh min xung t chung ca ton b h thng. Xt v d minh ha trn hnh 6.14. Trc khi kt ni ba khoa, mng cc b mi khoa c bng thng cc i l 10mbps, v vy thng lng ton b ti a ca 3 LAN l 30mbps. Nhng khi mng LAN ca ba khoa c kt ni vo hub trung tm, tt c my tnh ca ba khoa thuc v cng mt min xung t, v thng lng b gim xung 10Mbps. Hn ch th hai l nu cc khoa khc nhau s dng cc cng ngh Ethernet khc nhau th khng c kh nng kt ni chng vo hub trung tm. V d, nu mt vi khoa s dng 100BaseT, th khng th kt ni chng vi nhau v hub v bn cht l repeater. Hn ch th ba l mi cng ngh Ethernet (10 Base2, 10 BaseT, 100 BaseT, . . . ) c gii hn v s nt, khong cch ti a gia hai my tnh trong min xung t v s tng ti a trong thit k nhiu tng. Nhng hn ch ny hn ch tng s my tnh c th kt ni n mng cc b cng nh phm vi a l ca mng cc b nhiu tng. 8.4.2 Cu ni Khc vi hub (l thit b tng vt l), bridge c th x l trn khung Ethernet, v vy n l thit b tng 2. Thc t, cu ni (Bridge) chnh l thit b chuyn mch thc hin vic chuyn v lc cc khung d liu cn c trn a ch vt l. Khi khung d liu n t mt cng no ca bridge, n khng gi khung n tt c cc cng khc. Bridge s xc nh a ch vt l ch ca khung d liu v chuyn n cng duy nht n v ch. Hnh 8.15 minh ha ba b mn trong v d trc kt ni ti bridge. Ba ch s bn cnh bridge l s th t cc cng ca bridge. Khi cc b mn c kt ni qua bridge vi nhau to thnh mng LAN ca khoa Cng ngh thng tin, mi b mn l mt on trong mng ni b ca khoa. Khc vi vic kt ni bng hub, mi on mng ca tn b mn gi y l mt vng xung t ring bit. Bi ging Mng my tnh Ths. Nguyn Xun Anh 180
Hnh 8.15 Kt ni mng bng cu ni
Bridge c th khc phc nhiu vn ca hub. Bridge cho php truyn thng gia cc b mn trong khi c lp min xung t ca mi b mn, c th kt ni cc cng ngh LAN khc nhau v khng b gii hn v khong cch ti a trong mng cc b khi s dng bridge kt ni cc phn on mng cc b. 8.4.2.1 Nguyn l lc v chuyn tip Lc l kh nng xc nh liu s chuyn tip khung d liu n cng no hay loi b. Chuyn tip l kh nng xc nh cng k tip chuyn khung d liu i. Bridge thc hin hai chc nng ny nh bng chuyn mch. Mi hng trong bng ng vi mt nt ch trn mng LAN. Tuy vy bng chuyn mch khng nht thit phi cha tt c cc hng cho mi nt trong mng. Mi hng trong bng chuyn mch gm a ch vt l ca nt v cng bridge c th dn n nt , thi gian thit lp hng trong bng. V d v bng bridge cho LAN trong hnh 6.15 c minh ha trong hnh 8.16. Mc d qu trnh chuyn khung d liu c v tng t qu trnh chuyn mch gi ca tng mng, nhng chng hon ton khc nhau: a ch bridge s dng l a ch vt l trong khi chuyn mch tng mng s dng a ch a ch logic, bng chuyn mch v bng nh tuyn cng khc rt nhiu.
a ch Giao din Thi gian 62-FE-F7-11-89- A3 1 9:32 7C-BA-B2-B4-91- 10 3 9:36 . .
Hnh 8.16 Cu trc bng chuyn mch
Gi s khung d liu vi a ch ch DD-DD-DD-DD-DD-DD n bridge t cng X. Bridge tm kim trn bng lc hng ng vi a ch vt l DD-DD-DD- DD-DD-DD tm ra cng Y tng ng - l cng s dn n nt c a ch ch Bi ging Mng my tnh Ths. Nguyn Xun Anh 181 DD-DD-DD- DD-DD-DD. Chng ta s thy iu g s xy ra nu khng c giao din y nh th trong bng: - Nu X = Y, th frame n t on cha Card mng c a ch DD-DD-DD- DD-DD-DD. Khng cn chuyn khung d liu n bt k cng no khc, bridge thc hin chc nng lc bng cch loi b khung d liu ny. - Nu X # Y th frame cn c gi n on no qua cng Y, Bridge thc hin chc nng chuyn tip bng cch t khung d liu vo b m ra ca cng Y. Nhng quy tc n gin trn cho php bridge c lp cc min xung t ca cc on mng khc nhau kt ni ti cc cng ca n. Nhng quy tc ny cng cho php thit b trn hai phn on khc nhau truyn ng thi m khng xy ra xung t. Gi s khung d liu vi a ch ch 62-EF-F7-11-89-A3 c gi n bridge qua cng 1. Bridge kim tra bng v thy rng ch nm trn phn on c kt ni n cng 1 (l mng LAN ca b mn Cng ngh), iu ny c ngha l khung d liu thc s c qung b trn phn on ny, do vy bridge loi b khung d liu ny. Gi s khung d liu trn n t cng 2, Bridge kim tra bng v thy rng ch nm trn hng ng vi cng 1, do bridge chuyn khung d liu ra cng 1. R rng rng nu bng bridge y v chnh xc, bridge cho php truyn thng gia cc khoa nhng c lp cc min xung t. Khi c khung d liu gi chuyn tip, hub gi khung d liu ln trn ng truyn m khng quan tm xem c thit b no khc ang chim dng ng truyn khng. Tri li, bridge s s dng thut ton CSMA/CD, n khng truyn ngay nu nh c nt khc trn phn on mng ang truyn. Bridge cng s dng thut ton exponential backoff khi vic truyn ca n b xung t, tc l cng ca bridge hot ng tng t nh Card mng ca mt my tnh. Tuy nhin v mt k thut, bridge khng phi l Card mng v chng khng c a ch vt l. Card mng ca my tnh hoc thit b nh tuyn lun lun chn a ch vt l ca n vo trng a ch ngun trong tt c cc khung d liu n gi i nhng bridge khng thay i a ch ngun ca mi khung d liu. Mt tnh nng quan trng ca bridge l chng c th c dng ni cc phn on mng s dng nhng cng ngh Ethernet khc nhau, Hub khng m bo tnh nng ny. V d nu trong hnh 6.15, b mn Cng ngh s dng Ethernet 10BaseT, b mn Khoa hc my tnh s dng Ethernet 100BaseT v b mn H thng thng tin s dng Ethernet 10BaseT th bridge c th kt ni c 3 on mng trn. Khi s dng bridge lm thit b kt ni, th v l thuyt mng LAN khng b gii hn bi phm vi a l. Trn l thuyt chng ta c th xy dng mng LAN tri rng ton cu bng kt ni cc hub qua cc bridge. Theo thit k ny, mi hub l mt min xung t v do LAN khng b gii hn. Tuy nhin n li to ra vng qung b ln v do ngi ta s kt ni qua thit b nh tuyn, ch khng s dng bridge. Bi ging Mng my tnh Ths. Nguyn Xun Anh 182 8.4.2.2 Xy dng bng chuyn mch Mt c tnh quan trng ca bridge l kh nng t hc. l bng chuyn mch ca bridge c xy dng t ng, kh nng ny c thc hin nh sau: - Bng bridge khi u l rng. - Khi khung d liu n cng no v a ch ch ca khung khng c trong bng, th bridge s chuyn khung d liu n b m ra ca tt c cc cng ngoi tr cng thng tin i n. - Khi nhn c khung d liu, bridge lu tr a ch vt l trong trng a ch ngun ca khung, cng nhn c v thi gian hin hnh. Nh vy bridge ghi nh c v tr phn on mng LAN ca nt gi. Nu nt no trong LAN gi khung d liu n bridge th n s xc nh c cng i n nt . - Khi khung d liu n mt trong cc cng v a ch ch ca khung c trong bng, th bridge chuyn n cng thch hp. - Sau mt khong thi gian nht nh, nu Bridge khng nhn c khung d liu t Card mng c a ch vt l c lu trong bng chuyn mch th Bridge s xo bn ghi . Nh vy, nu mt my tnh c thay th bi my tnh khc (vi Card mng khc) th a ch vt l ca PC trc s b bridge xo. Xt qu trnh t hc ca bridge trong hnh 8.17 v bng bridge tng ng trong hnh 8.16. Gi s rng ti thi im 9:39 bridge nhn c mt khung d liu c a ch gi l 01-12-23-45- 56 n cng 2. Gi s, a ch ny cha c trong bng, bridge s b sung mt hng mi trong bng nh ch ra trn hnh 6.17.
a ch Giao din Thi gian 01-12-23-34-45-65 2 9:39 62-FE-F7-11-89-A3 1 9:32 7C-BA-B2-B4-91-10 3 9:6
Hnh 8.17 Bng chuyn mch ca bridge
Gi thit thi gian sng ca mi hng trong bng l 60 pht v my tnh vi a ch 62-FE-F7-11-89-A3 khng gi i bt k khung d liu no qua bridge trong khong thi gian t 9:32 n 10:32 th lc 10:32, bridge s xa a ch ny khi bng. Bridge l thit b theo kiu plug and lay bi v n khng cn s can thip ca ngi qun tr mng. Ngi qun tr mng ch cn ni u dy mng vo cc cng ca bridge m khng cn thit lp cu hnh cho bng bridge trong thi gian ci t hay khi my tnh tch khi phn on mng. 8.4.2.3 Spanning Tree Nu bridge b hng, th cc phn on mng s khng kt ni c vi nhau, d phng ri ro, ngi ta thng xy dng mng vi nhiu ng ni Bi ging Mng my tnh Ths. Nguyn Xun Anh 183 gia cc phn on mng. Trn hnh 8.18, nhiu ng d tha gia cc phn on mng lm gim kh nng sp ca ton b h thng. Nhng vic c nhiu ng dn gia cc on mng cng s pht sinh ra nhiu vn - mt khung d liu c th di chuyn vng quanh hay c nhn bn ln nhiu ln trong mng cc b. Gi s bng chuyn mch trong hnh 6.18 rng v my tnh ca b mn Khoa hc my tnh gi khung d liu n my tnh trong b mn Cng ngh. Khi khung d liu n hub ca b mn Khoa hc my tnh, hub s sinh ra hai bn sao ca khung v gi mi bn n hai bridge. Khi mi bridge nhn c khung, n s to ra 2 bn sao ca khung, mt bn gi n hub ca b mn Khoa hc my tnh v bn kia n hub ca b mn Cng ngh. V c hai bridge cng lm nh vy, s c 4 khung d liu ging ht nhau trong LAN. Khung d liu c th c nhn bn lin tc nu bridge khng bit nt nhn nm u. Trong trng hp ny, s bn sao ca khung d liu gc tng theo hm s m, hm trn ngp ton b mng.
Hnh 8.18 Spanning tree
ngn nga nhng tnh hung nu trn, bridge s dng giao thc spanning tree. Trong giao thc spanning tree, bridge lin lc vi bridge khc trn mng ni b xc nh tp con ca hnh trng ban u khng c vng lp. Sau khi xc nh c spanning tree, bridge ch kt ni vi cc cng ph hp to spanning tree t hnh trng ban u. V d trong hnh 6.18, spanning tree c to nn nu bridge pha trn phong ta kt ni cng kt ni n b mn Cng ngh v bridge pha di phong ta cng kt ni n b mn H thng thng tin. vi cc cng b phong ta v loi b c cc vng lp, frame s khng lp v nhn bn. Nu khi no mt lin kt trong spanning tree b mi, bridge c th kt ni li giao din b phong ta, kch hot thut ton spanning tree ln na v xc nh spanning tree mi. 8.4.2.4 So snh cu ni v thit b nh tuyn Thit b nh tuyn hot ng theo kiu kiu lu v chuyn, n chuyn tip gi tin da trn a ch tng mng. Mc d cng l thit b chuyn mch kiu lu v chuyn, nhng im khc bit c bn gia bridge v thit b nh tuyn nm vn s dng a ch thc hin nhim v chuyn mch. Nh vy thit b nh tuyn l chuyn mch gi tng mng trong khi bridge l Bi ging Mng my tnh Ths. Nguyn Xun Anh 184 chuyn mch gi tng lin kt d liu. D bridge v thit b nh tuyn khc nhau, song ngi qun tr mng s phi la chn gia chng khi ci t thit b kt ni.V d, vi h thng mng trong hnh 6.19, ngi qun tr mng c th la chn thit b nh tuyn thay v la chn bridge. Thit b nh tuyn cng s c lp ba min xung t trong khi vn cho php truyn thng gia cc khoa. Nh vy c bridge v router u c th lm thit b kt ni. Bridge l thit b kiu cm vo l chy - tnh nng c tt c cc nh qun tr mng a thch. Bridge cng c tc lc v chuyn gi d liu cao - nh minh ha trn hnh 6.19, n ch phi x l gi d liu ca tng lin kt d liu trong khi thit b nh tuyn phi x l gi d liu ca tng mng. mt khc, giao thc spanning tree hn ch topo ca ton b mng. iu ny c ngha l tt c cc khung d liu ch c chuyn trn spanning tree, thm ch khi c nhiu ng dn trc tip nhng b phong ta gia ngun v ch. S hn ch ca spanning tree cng tp trung vo kh nng ti trn ng truyn spanning tree khi n c th c lan truyn n tt c cc ng truyn khc ca mng c. Hn na bridge khng a ra bt c s bo v no chng li s pht ra hng lot - nu my tnh b li v truyn i mt lung d liu lin tc, bridge s chuyn tt c nhng khung d liu ny khin ton b mng b tc nghn.
Hnh 8.19 X l gi d liu trong my tnh, cu ni v thit b nh tuyn
Ni chung a ch mng thng c t chc phn cp, gi d liu chc chn khng vng li qua thit b nh tuyn ngay c khi c nhiu ng i (Thc s gi d liu c th quay vng nu bng nh tuyn ca router b t cu hnh sai, nhng IP s dng trng TTL trong tiu gi d liu loi b cc gi tin loi ny). V vy, gi d liu khng b gii hn chuyn trong spanning tree, n c th s dng ng dn tt nht gia ngun v ch. Mt c tnh quan trng khc ca thit b nh tuyn l khng qung b chng li s pht tn lin tc tng lin kt d liu. Yu im duy nht ca thit b nh tuyn thi gian x l gi tin ca router thng lu hn bridge v chng phi x l cc trng tiu ca tng 3, vic qun tr thit b nh tuyn cng phc tp hn. Thng thng mt mng nh gm vi trm my tnh vi vi on mng th Bridge p ng cho loi mng nh ny m khng yu cu bt k cu Bi ging Mng my tnh Ths. Nguyn Xun Anh 185
` hnh a ch IP. Vi nhng mng ln gm hng nghn my tnh s cn ti nhiu thit b nh tuyn bn trong mng. Nhng thit b nh tuyn ny cung cp kh nng c lp cc vng xung t v cc vng qung b. 8.4.2.5 Kt ni cc on mng qua ng trc Mt thit k khc v mng ca khoa Cng ngh thng tin c minh ha trong hnh 8.20. Thit k ny s dng hai bridge, mi bridge c hai cng. Bridge th nht kt ni hai b mn Cng ngh v Khoa hc my tnh, Bridge kia kt ni b mn Khoa hc my tnh vi b mn H thng thng tin. Mc d bridge hai cng rt ph bin do gi r v n gin, nhng m hnh thit k trong hnh 6.20 khng c a chung. C hai l do, th nht, nu hub ca Computer Science b hng th my tnh hai bn mn cng ngh v H thng thng tin khng th trao i c vi nhau. Th hai truyn thng gia hai b mn phi thng qua b mn Khoa hc my tnh, d gy xung t trong on mng ca bn mn ny.
Hnh 8.20 Kt ni mng khng c ng trc
Mt nguyn tc quan trng nh hng dn vic kt ni cc phn on mng l s dng ng trc chnh, l mt mng c kt ni trc tip n tt c cc on mng khc. Khi c mt trc chnh th hai phn on mng c th truyn tin trc tip cho nhau m khng cn thng qua phn on th ba. 8.4.3 Switch u thp k 90, ba loi thit b kt ni mng cc b c s dng ch yu l hub (repeater), bridge, router. T gia nhng nm 90, mt thit b tr nn rt thng dng l switch (thc cht l bridge nhiu cng. Ging nh bridge, switch chuyn v lc khung d liu da trn a ch vt l ch, t ng xy dng bng chuyn mch khi c mt khung d liu i qua. C th mua switch c cc cng tc khc nhau 10 Mbps, 100 Mbps v 1Gbps. V d, mt ngi c th mua switch c bn cng 100 Mbps, hai mi cng 10 Mbps hoc switch c bn cng 100 Mbps v mt cng 1 Gbps. Nhiu switch vn hnh trong ch song cng, chng c th gi v nhn khung d liu ti cng mt thi im trn cng mt cng. u im ca switch nhiu cng v ch d dng kt ni trc tip gia cc my tnh vi switch. Khi mt my tnh c ng kt ni trc tip song cng vi switch, n c th truyn v nhn d liu tc truyn ti a ca Card mng v Bi ging Mng my tnh Ths. Nguyn Xun Anh 186 khng bao gi xy ra xung t. Khi my tnh c kt ni trc tip n switch th n c xem nh c ng dng ring.
Hnh 8.21 M hnh v d mng ni b c kt ni Internet
Hnh 8.21 minh ha cch t chc mng ni b ca khoa Cng ngh thng tin, mi b mn l mt phn on mng s dng b tp trung tc 10 Mbit/s. V mi b tp trung u kt ni n switch nn cc my tnh ca tt c cc b mn u c kh nng trao i d liu vi nhau. My ch cho dch v Web v th in t u c ng dng ring 100 Mbps n switch. Cui cng thit b nh tuyn s kt ni ton b h thng mng ni b ra ngoi mng Internet. Cc loi chuyn mch: Gi s khung d liu n switch t mt cng no , switch ch cn phi c 6 byte u tin l c th xc nh c cn phi chuyn d liu n cng no. Da trn c im ca khung d liu Ethernet, mt khung hp l ti thiu phi c di 64 Bytes. Nh vy c th thit k ba loi: chuyn mch lu v chyn tip, chuyn mch xuyn sut v chuyn mch Fragment-Free. Vi chuyn mch loi lu v chyn tip, thi gian tr tng i ln v switch phi nhn y d liu ca mt khung sau mi xc nh cn phi chuyn khung d liu i u, nh vy m bo chnh xc v khng chuyn tip nhng khung d liu li. Chuyn mch xuyn sut c tc cao hn, nhng n chuyn tt c cc khung d liu m khng cn bit khung d liu c b li hay khng, iu ny lm tng lu lng mng, nht l trong trng hp xy ra xung t. Loi th ba dung ha hai loi trn, swich ch chuyn tip cc khung d liu sau khi nhn c t nht 64 bytes.. 8.5 Kt ni khng dy Kt ni khng dy l hnh thc kt ni gia cc thnh phn trong mng khng s dng cc loi cp nh mt mng thng thng, mi trng truyn thng ca cc thnh phn trong mng l khng kh. Cc thnh phn trong mng s dng sng in t truyn thng vi nhau. Cng ngh mng khng dy ln u tin xut hin vo cui nm 1990, khi nhng nh sn xut gii thiu nhng Bi ging Mng my tnh Ths. Nguyn Xun Anh 187 sn phm hot ng trong bng tn 900Mhz. Nhng gii php ny cung cp tc truyn d liu 1Mbps, thp hn nhiu so vi tc 10Mbps ca hu ht cc mng Ethernet ti thi im . Nm 1992, nhng nh sn xut bt u bn nhng sn phm phc v cho mng khng dy s dng bng tn 2.4Ghz. Mc d nhng sn phm ny c tc truyn d liu cao hn nhng chng vn l nhng gii php ring ca mi nh sn xut khng c cng b rng ri. S cn thit cho vic hot ng thng nht gia cc thit b nhng dy tn s khc nhau dn n mt s t chc bt u pht trin ra nhng chun mng khng dy chung. Nm 1997, IEEE (Institute of Electrical and Electronics Engineers) a ra chun 802.11, v cng c bit vi tn gi WIFI (Wireless Fidelity) cho cc mng khng dy. Chun 802.11 h tr ba phng php truyn tn hiu, trong c bao gm phng php truyn tn hiu v tuyn tn s 2.4Ghz. Nm 1999, IEEE thng qua hai s b sung cho chun 802.11 l cc chun 802.11a v 802.11b (nh ngha ra nhng phng php truyn tn hiu). Nhng thit b da trn chun 802.11b nhanh chng tr thnh cng ngh khng dy vt tri. Cc thit b WLAN 802.11b truyn pht tn s 2.4Ghz, cung cp tc truyn d liu c th ln ti 11Mbps. IEEE 802.11b c to ra nhm cung cp nhng c im v tnh hiu dng, thng lng v bo mt so snh vi mng c dy. Nm 2003, IEEE cng b thm mt s ci tin l chun 802.11g m c th truyn nhn thng tin c hai dy tn 2.4Ghz v 5Ghz v c th nng tc truyn d liu ln n 54Mbps. Thm vo , nhng sn phm p dng 802.11g cng c th tng thch ngc vi cc thit b chun 802.11b, hin nay chun 802.11g t n tc 108Mbps - 300Mbps. 8.5.1 Cc m hnh kt ni mng khng dy M hnh mng c lp:
Hnh 6.22 Kt ni theo m hnh ngang hng
Cc nt di ng tp trung li trong mt khng gian nh hnh thnh nn kt ni ngang hng, chng c th trao i thng tin trc tip vi nhau. V cc mng ad-hoc ny c th thc hin nhanh v d dng nn chng thng c thit lp m khng cn mt cng c hay k nng c bit no v vy n rt thch Bi ging Mng my tnh Ths. Nguyn Xun Anh 188 hp s dng trong cc hi ngh thng mi hoc trong cc nhm lm vic tm thi. Tuy nhin chng c th c nhng nhc im v vng ph sng b gii hn, mi ngi s dng u phi nghe c ln nhau. M hnh mng c s:
Hnh 8.23 M hnh kt ni mng khng dy c s
Bao gm cc im truy nhp (AP - Access Point) gn vi mng ng trc hu tuyn v giao tip vi cc thit b di ng trong vng ph sng, n ng vai tr chuyn tip cho cc thit b di ng ca ngi s dng. Mt im truy nhp nm trung tm c th iu khin v phn phi truy nhp cho cc nt tranh chp, cung cp truy nhp ph hp vi mng ng trc, n nh cc a ch v cc mc u tin, gim st lu lng mng, qun l chuyn i cc gi v duy tr theo di cu hnh mng. Tuy nhin giao thc a truy nhp tp trung khng cho php cc nt di ng truyn trc tip ti nt khc nm trong cng vng vi im truy nhp nh trong cu hnh mng khng dy c lp. Trong trng hp ny, mi gi tin s phi c pht i 2 ln (t nt pht gc v sau l im truy nhp) trc khi n ti nt ch, qu trnh ny s lm gim hiu qu truyn dn v tng tr truyn dn. M hnh mng m rng: Chun 802.11 m rng phm vi di ng ti mt phm vi bt k thng qua m hnh m rng giao tip gia cc im truy nhp t mng ny sang mng khc. AP thc hin vic giao tip thng qua h thng phn phi, l h thng c tip sng tr li mt ch trong cng mt mng c s, chuyn tip trn h thng phn phi ti mt AP khc, hoc gi ti mt mng c dy ti ch khng nm trong mng m rng. Cc thng tin nhn bi AP t h thng phn phi c truyn ti BSS s c nhn bi trm ch. 8.5.2 u v nhc im ca kt ni khng dy So vi cc hnh thc kt ni hu tuyn, kt ni khng dy c nhng u im sau: - S tin li: Kt ni khng dy cng nh h thng cho php ngi dng truy xut ti nguyn mng bt k ni u trong khu vc c trin khai. - Hiu qu: Ngi dng c th duy tr kt ni mng khi h i t ni ny n ni khc. Bi ging Mng my tnh Ths. Nguyn Xun Anh 189 - Trin khai: Vic thit lp h thng mng khng dy ban u ch cn t nht 1 AP. Vi mng dng cp, phi tn thm chi ph v c th gp kh khn trong vic trin khai h thng cp nhiu ni trong ta nh. - Kh nng m rng: Mng khng dy c th p ng tc th khi gia tng s lng ngi dng. Vi h thng mng dng cp cn phi gn thm cp. Mc d c nhng u im trn, kt ni khng dy c nhng nhc im sau: - Bo mt: Mi trng kt ni khng dy l khng kh nn kh nng b tn cng hoc nh cp thng tin ca ngi dng rt cao. - Phm vi: Mt mng chun 802.11g vi cc thit b chun ch c th hot ng tt trong phm vi vi chc mt. N ph hp trong 1 cn nh, nhngvi mt ta nh ln th khng p ng c nhu cu. - tin cy: V s dng sng v tuyn truyn thng nn vic b nhiu, tn hiu b gim do tc ng ca cc thit b khc. - Tc : Tc ca mng khng dy (1- 300 Mbps) rt chm so vi mng s dng cp (10 Mbps n 10 Gbps), tc ny ph thuc vo khong cc t my tnh ca ngi s dng n AP.
Bi ging Mng my tnh Ths. Nguyn Xun Anh 190 BI TP TNG HP Cho s mng nh sau:
Gi thit: - Ton b mng s dng chung a ch mng 172.18.0.0/16 - My ch Server 1 c cu hnh cp pht a ch IP ng bng giao thc DHCP. Internet R2 R3 R4 R5 Server 1 DHCP Server 2 DNS Server 3 WEB Printer Sw 1 Sw 2 Sw 3 Sw 4 Sw 5 Client 1 Client 2 Client 3 Client 4 S0 S0 S0 E0 E0 E0 E0 E0 S0 S0 R1 Bi ging Mng my tnh Ths. Nguyn Xun Anh 191 - Trang thng tin ni b c t trn my ch Server 3, cng mc nh - My ch Server 2 ci t dch v tn min, cha a ch my ch Server 3. Nhim v 1: Xc nh s lng vng qung b, s lng mng con, s lng bit cn mn v in vo bng sau:
Mn g con a ch mng Phm vi a ch hp l a ch qung b C th s dng? C dng ? #0 #1 #2 #3 #4 #5 #6 #7
Nhim v 2: Gn a ch IP cho cc thit b v in vo bng sau:
Giao din a ch IP Mt n mng Cng mc nh a ch mng Router 1 E0 Router 2 S0 Router 2 E0 Router 3 S0 Router 3 E0 Router 4 S0 Router 4 E0 Router 5 E0 Router 5 S0 Switch 1 Switch 2 Switch 3 Switch 4 Bi ging Mng my tnh Ths. Nguyn Xun Anh 192 Switch 5 Printer Server 1 Server 2 Server 3
Nhim v 3: Phn tch qu trnh cp pht a ch ch IP ng khi my trm Client 1 khi ng. Nhim v 4: Ngay sau khi c cp pht a ch IP, ngi s dng dng trnh duyt truy nhp trang thng tin in t t trn my Server 3, hy phn tch qu thc hin trn cc thit b. Nhim v 5: Thit lp mng trn v thc hin cc cng vic sau: - Thit lp a ch IP cho cc thit b nh chun b nhim v 2. - Cu hnh nh tuyn trn cc Router. - Cu hnh my ch Server 1 cp pht a ch IP ng. - Ci t trang thng tin ni b trn my ch Server 3. - Ci t dch v DNS trn my ch Server 2 v cu hnh tr tn min ca trang thng tin ni b v a ch IP ca my ch Server 3. - Kim th qu trnh cp pht a ch IP ng v qu trnh truy nhp trang thng tin ni b - Trn my trm, thc hnh cc tin ch mng v ghi li v tm hiu ngha cc thng s trong qu trnh thc hin: o Ipconfig, Ipconfig/all, Ipconfig/renew, Ipconfig/release o Route Print, Route Add, Route Delete o Ping, Tracert, Nslookup, Arp
Bi ging Mng my tnh Ths. Nguyn Xun Anh 193 TI LIU THAM KHO [1]. J. F. Kurose and K. W. Ross, Computer Networking: A Top-Down Approach Featuring the Internet (2nd edition), Addison-Wesley, 2002. [2] CNAP: Networking Fundamentals, version 4.0, 2004 [3] Andrew S. Tanenbaum Computer Networks, Prentice Hall, 4th edition, 2003. [4]. Alberto Leon-Garcia and Indra Widjaja, Communication Networks: Fundamental Concepts and Key Architectures, McGraw-Hill, 2000. [5] Larry L. Peterson and Bruce S. Davie Computer Networks: A Systems Approach (2nd ed.), Mogran-Kaufmann, 1999.