Khóa luận Xây dựng ứng dụng video streamming dựa trên mạng ngang hàng Chord

TRƯỜNG ………………….  
KHOA……………………….  
‐‐‐‐‐[\ [\‐‐‐‐‐  
Báo cáo tt nghip  
Đề tài:  
Xây dng ng dng video streamming da  
trên mng ngang hàng Chord  
Tóm tt  
Khóa lun này đưa ra mt phương thc truyn tin multicast trên nn tng mng  
ngang hàng mi nhm khc phc nhng nhược đim ca mt sphương thc truyn tin  
multicast đã tn ti ttrước. Nhng nhược đim đó gm có vic phi phthuc hoàn  
toàn vào khnăng ca router đối vi IP multicast hay vn đề qun lý cây multicast khó  
khăn đối vi mt sgiao thc truyn tin multicast trên tng ng dng khác.  
Khóa lun mô tchi tiết giao thc mng ngang hàng có cu trúc Chord và cách thc  
truyn tin multicast trên nn mng ngang hàng Chord. Trong khóa lun, vn đề truyn  
video streaming cũng được đề cp đến. Từ đó khóa lun đã xây dng nên ng dng  
truyn video streaming multicast trên nn Chord. Vic đánh giá kết quthu được qua quá  
trình xây dng ng dng cho ta thy được nhng ưu đim ca vic trin khai multicast  
trên mng ngang hàng, cũng như nhng nhược đim cn khc phc.  
MC LC  
Mở đầu......................................................................................................................................................... 5  
Chương I: Tng quan vvideo streaming multicast .............................................................................. 7  
1.1. Gii thiu vvideo streaming.................................................................................................7  
1.2. Gii thiu multicast.................................................................................................................9  
1.3. IP multicast ............................................................................................................................10  
1.4. Multicast tng ng dng ( ALM – Application-layer Multicast)......................................12  
1.4.1. Gii thiu...................................................................................................................12  
1.4.2. Mt sgii pháp truyn tin multicast trên tng ng dng...................................13  
Chương II: Truyn tin multicast trên nn mng ngang hàng có cu trúc Chord............................... 16  
2.1. Gii thiu mng ngang hàng ................................................................................................16  
2.2.1. Khái nim..................................................................................................................16  
2.2.2. Ưu thế ca mng ngang hàng..................................................................................16  
2.2.3. Phân loi mng ngang hàng ....................................................................................16  
2.2. Mng ngang hàng có cu trúc Chord ..................................................................................18  
2.2.1. Gii thiu chung .......................................................................................................18  
2.2.2. Finger table ...............................................................................................................20  
2.2.3. Node tham gia/ ri mng và quá trình đồng b( stabilization) ...........................21  
2.3. Thut toán truyn tin multicast da trên nn mng Chord..............................................22  
Chương III: Xây dng ng dng truyn tin video streaming multicast thi gian thc trên nn mng  
ngang hàng có cu trúc Chord................................................................................................................. 26  
3.1. Mc tiêu và yêu cu ca vic xây dng ng dng ..............................................................26  
3.2. Ý tưởng...................................................................................................................................26  
3.3. Thiết kế hthng...................................................................................................................27  
3.3.1. To cây multicast......................................................................................................27  
3.3.1. To dliu thi gian thc........................................................................................28  
3.3.2. Truyn hình nh.......................................................................................................28  
3.3.3. Xlý và hin hình nh.............................................................................................29  
3.4. Thiết kế giao thc..................................................................................................................29  
3.4.1. Giao thc máy ch...................................................................................................29  
3.4.2. Giao thc máy khách ...............................................................................................31  
3.5. Thiết kế chương trình ...........................................................................................................33  
3.5.1. Lp WebcamServer .................................................................................................34  
3.5.2. Lp WebcamClient ..................................................................................................36  
Chương IV: Kết quả đánh giá hthng................................................................................................. 39  
4.1. Kết quthnghim...............................................................................................................39  
4.1.1. Môi trường chy th................................................................................................39  
4.1.2. Kết quả đạt được......................................................................................................39  
4.2. Kết quả đánh giá hiu năng..................................................................................................39  
Chương V: Kết lun.................................................................................................................................. 41  
Tài liu tham kho .................................................................................................................................... 42  
Mở đầu  
Trong nhng ngày đầu phát trin ca ng dng đa phương tin, khong na cui  
thp niên 90, vic xem mt video trên mng gn như điu không th. Ngày nay, cùng  
vi sbùng nca Internet, các ng dng đa phương tin trong đó có video streaming đã  
trthành nhu cu không ththiếu ca nhiu cư dân mng.Theo thng kê, riêng ti Mỹ đã  
có khong 13,5 tvideo được xem trong tháng 10 – 2008 (ngun comScore). Con strên  
đủ cho ta thy được sln mnh không ngng ca các ng dng video streaming.  
Tuy nhiên, để phát trin mt ng dng video streaming tt gp phi nhiu vn đề.  
ng dng video streaming đòi hi nhiu băng thông và yêu cu độ trthp. Chính vì vy  
cn phi có mt phương thc phân phát video trên đường truyn hp lý. IP multicast vi  
khnăng ti ưu hóa đường truyn là mt gii pháp cho vn đề này. Tuy nhiên, vic trin  
khai IP multicast li rt tn kém bi nó đòi hi toàn mng phi có nhng Router đắt tin,  
chuyên dng. Điu này hoàn toàn không khthi trong mt mng din rng như Internet.  
Trin khai multicast trên tng ng dng vi vic không làm thay đổi htng mng phía  
dưới là mt gii pháp thay thế hu hiu cho IP multicast.  
Hin nay, trên thế gii đã và đang phát trin rt nhiu phương pháp truyn tin  
multiast trên tng ng dng khác nhau. Trong đó truyn tin multicast da mng ngang  
hàng ha hn có nhiu ưu đim. Đặc thù ca truyn tin multicast là phi to được mt  
cây multicast ti ưu, có sliên kết cht chgia các node vi nhau, có khnăng phc hi  
li nhanh. Mng ngang hàng có cu trúc hoàn toàn có thể đáp ng được yêu cu đó vi  
vic các node được liên kết vi nhau bng mt thut toán cth.  
Để làm rõ hơn nhng li thế ca mng ngang hàng có cu trúc trong vic truyn tin  
multicast, khóa lun này đã nghiên cu xây dng mt ng dng truyn video streaming  
multicast da trên nn tng mng ngang hàng có cu trúc Chord. Sau đây là tóm tt ni  
dung khóa lun gm 5 chương.  
Chương 1: Tng quan vvideo streaming và multicast  
Gii thiu vvideo streaming và trình bày nhng khái cơ bn vmulticast, so sánh  
vi các phương thc truyn tin khác. IP multicast và multicast tng ng dng được trình  
bày mt cách ngn gn để từ đó có ththy được ưu đim ca multicast tng ng dng so  
vi IP multicast.  
Chương 2: Truyn tin multicast trên nn mng ngang hàng có cu trúc Chord  
Phn này đưa ra cái nhìn tng quan vmng ngang hàng bao gm: khái nim, phân  
loi và ưu đim chung ca mng ngang hàng. Tiếp đó, sgii thiu hot động ca giao  
thc Chord. Đặc bit, vic truyn tin multicast da trên nn mng Chord được đề cp mt  
cách chi tiết.  
Chương 3: Xây dng ng dng truyn multicast video streaming thi gian  
thc trên nn Chord  
Chương 3 đề cp đến nhng yêu cu, mc tiêu ca ng dng và cách thc xây dng  
ng dng sao cho phù hp vi nhng mc tiêu đó. Trong đó, trình bày chi tiết vthiết kế  
hthng, thiết kế giao thc và thiết kế chương trình ca ng dng.  
Chương 4: Kết quả đánh giá hthng  
Sau các nghiên cu các phn trên, chương 4 trình bày vmôi trường chy thử  
chương trình, các kết quđánh giá thu được sau quá trình thnghiêm.  
Chương 5: Kết lun  
Chương I: Tng quan vvideo streaming multicast  
1.1. Gii thiu vvideo streaming  
Video là mt loi dliu đa phương tin quan trng phc vcho truyn thông hoc  
cho nhu cu gii trí ca con người trong nhiu thp niên. Trong thi kỳ đầu video được  
xlý và truyn dưới dng tín hiu tương t(analog). Vi sphát trin không ngng  
ca mch đin tvà máy tính dn đến vic shóa video và mra mt cuc cách mng về  
nén và truyn thông video. Sphát trin và phbiến ca Internet gia nhng năm 90 đã  
định hướng truyn thông video qua mng chuyn mch gói best-effort. Video qua mng  
qua mng Internet gp phi rt nhiu yếu tbt li vbăng thông, độ trvà mt gói tin,  
cùng vi mt svn đề như làm thế nào để chia stài nguyên mng gia các luông hay  
làm thế nào có thtrin khai hiu quphương thc truyn thông mt- nhiu ( truyn dữ  
liu tmt ngun đến nhiu đích cùng mt lúc). Từ đó đã có rt nhiu gii pháp được  
nghiên cu và phát trin nhm khác phc nhng vn đề này.  
Video streaming được định nghĩa là mt “dòng chy” video , nghĩa là dliu video  
được truyn liên tc tmt ngun đến mt đích nào đó. Ý tưởng cơ bn ca video  
streaming đó là chia video thành tng frame, sau đó liên tc truyn nhng phn được chia  
ra và bên nhn có thhin thnhng phn video đã nhn được mà không phi đợi cho  
đến khi toàn bvideo được truyn xong.  
Tuy nhiên có mt vài vn đề ảnh hưởng trc tiếp đến video streaming. Video  
streaming qua mng Internet gp rt nhiu khó khăn bi Internet chcung cp dch vụ  
truyn best-effort (cgng ti đa). Do đó, nó không đảm bo vbăng thông, độ tr,  
jitter hay smt gói tin. Nhng nhân tnày thường không đoán trước được và động.  
Chính vì vy, mc tiêu chính ca vic xây dng mt ng dng video streaming là phi  
thiết kết mt hthng phân phát video cht lượng cao đáng tin cây qua mng Internet.  
Các ng dng video streaming thường được nhiu người dùng cùng mt lúc, tc là  
video phi được truyn cùng lúc ti nhiu người như video conference hay truyn hình  
trc tuyến. Truyn tin multicast là mt gii pháp thích hp cho nhng ng dng đó. Phn  
dưới đây strình bày chi tiết vmulticast.  
Cu thành nên mt hthng video streaming gm có 6 yếu tcơ bn: cơ chế nén  
video, cơ chế điu khin cht lượng dch vtng ng dng, dch vphân phát video, máy  
chstreaming, cơ chế đồng bdliu và giao thc dành cho video streaming [10]. Hình  
1 cho ta thy được mi liên hgia các yếu tnày vi nhau.  
Hình 1: Cu trúc ng dng video streaming  
ƒ Cơ chế nén video. Dliu video nguyên gc cn phi được nén trước khi  
được truyn nhm tiết kim băng thông.  
ƒ Cơ chế điu khin cht lượng dch vtng ng dng. Để đối phó vi sự  
biến thiên ca tài nguyn mng hoc để cung cp cht lượng hình nh thay  
đổi theo tng người dùng, nhiu kthut điu kin cht lượng dch vtng  
ng dng đã được đưa ra. Kthut đó bao gm điu khin tc nghn và điu  
khin li. Điu khin tc nghn được trin khai để ngăn nga vic mt gói tin  
và gim độ tr. Trong khi đó, điu khin li ci thin cht lượng hình nh khi  
có gói tin bmt.  
ƒ Dch vphân phát video trên đường truyn. Được xây dng trên nn ca  
Internet ( giao thc IP), dch vphân phát video trên đường truyn cho phép  
đạt được QoS ( cht lượng dch v) và hiu qucho vic phân phát video qua  
mng Internet.  
ƒ Máy chstreaming. Máy chstreaming đóng vai trò quan trng trong vic  
cung cp dch vstreaming. Máy chstreaming được yêu cu phi xlý các  
dliu video vi srng buc vthi gian, đồng thi htrcác hành động  
tương tác như dng (pause), tua (fast forward). Mt server streaming gm 3  
hthng con: btruyn tin (communicator) ví dnhư giao thc tng giao  
vn, hệ điu hành và hthng lưu tr.  
ƒ Cơ chế đồng bdliu. Vi cơ chế đồng b, ng dng ti bên nhn có thể  
hin thvideo gn ging như khi nó được khi to ti bên gi. Mt ví dca  
cơ chế đồng blà cử động môi ca người nói phi phù hp vi tiếng nói họ  
phát ra.  
ƒ Giao thc dành cho video streaming. Giao thc được thiết kế và chun hóa  
cho truyn thông gia máy khách và máy chstreaming. Giao thc có thể  
được chia làm 3 loi: giao thc tng mng như Internet Protocol (IP), giao  
thc tng giao vn như User Datagram Protocol (UDP) và giao thc điu  
khin phiên như Real-time Streaming Protocol (RTSP).  
1.2.  
Gii thiu multicast  
Trong hthng mng ca chúng ta hin nay có 3 cách truyn tin cơ bn đó là  
unicast, multicast và broadcast (Hình 2).  
Unicast là phương thc truyn tin cơ sca IP network. Vi unicast mt máy  
truyn và chcó mt máy nhn theo kiu point to point. Hin nay hu hết các ng dng  
mng được phát trin và sdng trên nn phương thc unicast như HTTP, Telnet, FTP  
… Nhưng vi nhng ng dng đòi hi phi truyn tin tmt ngun cho mt nhóm người  
dùng như video streaming thì vic triên khai trên unicast là không hiu quvà truyn tin  
multicast là gii pháp thay thế.  
Multicast là cách truyn dliu tmt – nhiu (one-to-many) tc là dliu được  
gi tmt node ngun và mt nhóm node đích snhn được cùng dliu đó. Cách  
truyn này khác vi unicast– gi thông tin trên mng theo cách truyn gói tin mt- mt  
(one – to – one). Nếu multicast có thso sánh vi cuc gi chung cho nhiu người  
(conference call) thì unicast có thso sánh vi cuc gi riêng gia hai người.  
Broadcast được mô tnhư truyn thông tin cho toàn mng, tt ccác đim trong  
mng đều nhn được thông báo này. Trong trường hp này chmt người gi nhưng tt  
cngười trong mng đều nhn được. Broadcast được htrtrong mng LAN (ví dụ  
Ethernet) và được sdng để gi nhng gói tin ging nhau đến các máy trong mng  
LAN (ví dARP được sdng gi địa chỉ đến toàn bmáy trong mng LAN). Network  
protocol (như IP) htrkhuôn dng gói tin để gi đến bt khthng nào trong logical  
network.  
Có thnói, multicast là cách thc hiu qunht để truyn dliu đến mt nhóm  
người trên Internet. Chúng ta cũng có thsdng unicast để truyn tin ln lượt tngun  
đến tng node trong nhóm. Tuy nhiên, vi cách này thì node ngun sphi lp đi lp li  
vic truyn 1 gói tin cho rt nhiu node khác, dn đến vic tiêu tn tài nguyên ca node  
ngun ( CPU, memory …). Đồng thi, scó rt nhiu gói tin không cn thiết được lưu  
thông trên mng, dn đến lãng phí tài nguyên mng.  
Vi multicast, mt cây multicast sẽ được hình thành vi ngun là gc ca cây và  
các thành phn còn li ca cây có thlà node đầu cui ( end – host ) hoc có thlà router  
tùy vào tng công nghmulticast khác nhau. Thay vì vic node ngun nhân bn gói tin  
và gi đến tng node trong nhóm thì nó chtruyn cho 1 hoc vài node nht định và các  
node này có nhim vsao chép và truyn gói tin theo cây multicast.  
Hình 2: Các phương thc truyn tin trên mng  
1.3.  
IP multicast  
IP multicast (Hình 3) là chun mca IETF (Internet Engineering Task Force)[3],  
dùng để truyn dliu ti nhiu người nhn. Trong IP multicast, các router sẽ đóng vai  
trò là node trung gian trong cây multicast và có trách nhim sao chép gói tin ri truyn  
cho các node ng dng - ở đây, các node này sẽ đóng vai trò là ngn ca cây.  
Hình 3: Thành phn ca IP multicast  
Trong IP multicast mi node sgi yêu cu mt router gn vi nó khi mun ra  
nhp hoc ri khi nhóm. Sau đó các router multicast strao đổi các thông tin vvic  
qun lý nhóm thông qua cây multicast. Tt ccác công vic như to nhóm, nhp nhóm,  
ri nhóm đều được thc hin bi giao thc IGMP (Internet Group Membership  
Protocol)(Hình 4)[4].  
IP multicast sdng địa chIP lp D để định danh các nhóm multicast. Đây là dng  
địa chIP đặc bit dành riêng cho multicast. Tt ccác máy ni kết vào Internet phi có  
địa chIP thuc lp A, lp B, hoc lp C. Mt máy có thcó mt hoc nhiu địa chỉ  
multicast lp D tùy thuc vào snhóm multicast mà nó tham gia. Địa chlp D có độ dài  
là 32 bit. 4 bit đầu tiên được dùng để xác định nó thuc lp D, 28 bit còn li được dùng  
để xác định nhóm multicast. Mt địa chlp D có thso sánh vi mt kênh trên tivi. Khi  
bn truy cp mt địa chlp D, bn snhn được tt cthông tin được multicasting đến  
địa chỉ đó.  
Hình 4: Internet Group Management Protocol – Thông đip Query  
IGMP chcó trách nhim qun lý các nhóm multicast và vic phân phát các gói tin  
multicast trouter ni bộ đến các node trong nhóm. Vic gói tin làm thế nào để đi được  
tngun đến các router biên ( các router trc tiếp ni vi node) phthuc vào giao thc  
định tuyến multicast chy trên các router trong mng. Hin nay có mt vài giao thc định  
tuyến được phát trin dành riêng cho IP multicast như DVMRP (Distance Vector  
Multicast Routing Protocol) – giao thc định tuyến multicast đầu tiên hay như PIM  
(Protocol Independent Multicast) – giao thc multicast được dùng phbiến nht hin  
nay.  
Vi các giao thc định tuyến multicast trong IP multicast, slượng gói tin phi sao  
chép nhân bn trên đường truyn được gim thiu so vi các phương thc truyn tin khác  
từ đó tiết kim đáng kbăng thông mng. Tuy nhiên mt nhược đim khiến nó không  
được sdng nhiu và không có khnăng mrng đó là các router trong mng phi hỗ  
trmulticast. Đồng thi, IP multicast chhtrcác ng dng chy trên nn UDP – giao  
thc truyn tin không tin cy. Nhm khc phc nhng nhược đim này, truyn tin  
multicast tng ng đã và đang được nghiên cu, phát trin rt nhiu trong nhng năm gn  
đây. Phn tiếp ca khóa lun strình bày vphương thc truyn tin multicast tng ng  
dng.  
1.4.  
Multicast tng ng dng ( ALM – Application-layer Multicast)  
1.4.1. Gii thiu  
Khái nim multicast tng ng dng chỉ đơn gin là vic thi hành multicasting như  
mt dch vtng ng dng chkhông phi như mt dch vtng mng. Hình 5 mô tả  
vic truyn multicast cho cùng mt nhóm người nhn và người gi ca multicast tng  
ng dng và IP multicast. Ở đây, cây multicast được hình thành tng ng dng. Vi  
vic chsdng phương thc truyn tin unicast ca tng mng, node ngun S gi hai gói  
tin cho D1 và D2; ti D1, D2 gói tin được nhân bn và chuyn tiếp cho D4,D3.  
Hình 5: (a) IP multicast (b) Multicast tng ng dng  
IP multicast được triên khai ti các node mng ( Router) trong khi đó muticast tng  
ng dng được trin khai ti các node ng dng ( end host hoc proxy ). Do các node ng  
dng biết ít thông tin vtng mng hơn là các router nên cây multicast tng ng dng  
thường không có độ ti ưu bng IP multicast.  
Trong multicast tng ng dng, các công vic điu khin như ra nhp nhóm, ri  
nhóm, sao lưu và chuyn tiếp gói tin, định tuyến multicast… đều được thc hin ti đim  
đầu cui (end system hoc proxy) chính vì vy mà không yêu cu cn có nhng router hỗ  
trmulticast mng lõi.  
1.4.2.  
Mt sgii pháp truyn tin multicast trên tng ng dng  
Da vào cu trúc mng hoc cách to cây multicast mà ta có các gii pháp truyn tin  
multicast tng ng dng khác nhau: Proxy-based ALM và end system ALM; mesh first  
và tree first [7]  
ƒ Proxy-based ALM và end system ALM  
Hình 6: (a) Proxy-based ALM  
(b) End-system ALM  
Trong mô hình Proxy-based ALM (Hình 6a), yêu cu trin khai nhiu proxy hoc  
server trên Internet, các proxy hay server này stthành lp mt mng ph(overlay  
network) vi nhau và cũng cp dch vmulticast trong sut cho các người dùng cui  
(end-user). Ngược li, mô hình end-system ALM (Hình 6b) chyêu cu htng mng  
phía dưới cũng cp duy nht dch vtruyn tin unicast, vic truyn multicast sẽ được  
thc hin bi các node đầu cui (end-system).  
Vi mô hình proxy-based ALM thì các ng dng chy trên node đầu cui sít phc  
tp hơn bi vì dch vmulticast trong sut vi chúng. Mt đim mnh na ca mô hình  
này đó là băng thông ti các proxy thường ln hơn ti các node đầu cui chính vì vy mà  
tránh xy ra hin tượng “nút tht cchai” như trong mô hình end-system ALM. Nhược  
đim ca mô hình này là chi phí phi trcho hthng proxy hay server là rt cao.  
ƒ Mesh-fist và tree-first  
Trong mô hình mesh-first, các node mun tham gia vào quá trình truyn hoc nhn  
multicast stham gia vào mt mng phhình thành nên mt tô pô dng lưới liên kết các  
node vi nhau (Hình 7a). Sau khi tô pô mng được hình thành thì node ngun ssdng  
thut toán định tuyến để truyn multicast thông qua mng đó (Hình 7b). Thông thường  
cây multicast to ra tphương thc không được ti u do gp phi vn đề vn đề “nút cổ  
chai” khi mt node có tài nguyên kém mà phi chu ti cao. Hơn na vic duy trì mng  
phcũng đòi hi mt phn băng thông cho các thông tin điu khin mng. Tuy nhiên li  
thế ca mô hình này là khnăng chu li cao bi các node trong cây không chbiết đến  
node cha ca nó mà còn biết thông tin vcác node khác. Mô hình này thường được sử  
dng vi các ng dng đa ngun multicast như video conference.  
Vi mô hình tree-first, cây multicast được hình thành mà không cn các node to  
thành mng phvi nhau. Mt node chn cha ca nó tmt sthành viên đã biết trong  
cây. Mô hình này cn có thut toán phát hin và tránh lp xy ra trong cây multicast. Các  
node trong cây schn được vtrí ti ưu nht tránh hin tượng nút tht cchai. Tuy  
nhiên điu này có thdn đến cây blch. Hơn na khi mt node bli hoc ri mng thì  
vic khôi phc li cây multicast skhó khăn hơn rt nhiu so vi mô hình mesh-first.  
Hình 7: (a) Mng ph7 node  
(b) Cây multicast to tmng phủ  
Chương II: Truyn tin multicast trên nn mng ngang hàng có cu trúc Chord  
2.1. Gii thiu mng ngang hàng  
2.2.1. Khái nim  
Mt mng máy tính ngang hàng (Peer-to-peer hoc P2P) chyếu da trên sc  
mnh tính toán và băng thông ca các máy tham gia trong mng hơn là tp trung vào mt  
slượng nhcác máy ch(server). Mng P2P được sdng đin hình cho vic kết ni  
các node thông qua nhng kết ni ad-hoc ln. Nhng mng như vy có ích cho nhiu  
mc đích sdng. Chia sfile cha audio, video, data hoc mi thứ ở định dng s, các  
dliu thi gian thc, ví dnhư truyn ti ging nói, video streaming đều có ththc  
hin vi công nghP2P.  
Mt mng P2P thun túy skhông có khái nim vkhách (client) và ch(server),  
mà chcó nhng node ngang hang thc hin chai chc năng ca mt máy chvà máy  
khách đối vi nhng node khác trong mng. Mô hình mng này khác vi mô hình mng  
khách-chmà vic giao tiếp thường là vi các máy chtrung tâm. Mt ví dụ đin hình  
cho vic truyn file theo mô hình khách-chlà gia mt FTP Client và mt FTP Server,  
hai chương trình FTP Client và FTP Server có vai trò rt khác nhau, client khi to vic  
download/upload file, còn server thì tiếp nhn và phc vcác yêu cu đó.  
2.2.2.  
Ưu thế ca mng ngang hàng  
Mc đích quan trng ca mng ngang hàng là trong mng tt ccác máy tham gia  
đều đóng góp tài nguyên, bao gm băng thông, lưu tr, và khnăng tính toán. Do đó khi  
càng có nhiu máy tham gia mng thì khnăng tng thca hthng mng càng ln.  
Ngược li, trong mô hình máy khách-ch, nếu slượng máy chlà cố định, thì khi số  
lượng máy khách tăng lên khnăng chuyn dliu tcác máy chcho mi máy khách sẽ  
gim xung.  
Tính cht phân tán ca mng ngang hàng cũng giúp cho mng hot động tt khi mt  
smáy gp sc. Đối vi cu trúc tp trung, chcn máy chgp scthì chthng  
sngưng tr.  
2.2.3.  
Phân loi mng ngang hàng  
Mng ngang hàng P2P được chia làm hai loi chính: mng ngang hàng thun túy và  
mng ngang hàng lai ghép (Hình 8).  
Peer-to-Peer  
Lai ghép  
Thun túy  
Không cu trúc  
Có cu trúc  
Gnutella  
CAN  
Napster  
Chord  
Hinh 8: Phân loi mng ngang hàng  
ƒ Mng ngang hàng thun túy được chia làm 2 loi: mng ngang hàng có cu trúc  
và mng ngang hàng không cu trúc.  
ƒ Mng ngang hàng không cu trúc là khi các liên kết gia các nút mng trong  
mng phủ được thiết lp ngu nhiên (tc là không theo qui lut nào). Nhng mng như  
thế này ddàng được xây dng vì mt máy mi khi mun tham gia mng có thly các  
liên kết có sn ca mt máy khác đang trong mng và sau đó dn dn tbn thân nó sẽ  
thêm vào các liên kết mi ca riêng mình. Khi mt máy mun tìm mt dliu trong  
mng đồng đẳng không cu trúc, yêu cu tìm kiếm sẽ được truyn trên cmng để tìm ra  
càng nhiu máy chia scàng tt. Shiu biết vmng ca các node trong mng không  
cu trúc là rt ít, mi node chnm bt thông tin vnhưng node kết trc tiếp và mt sít  
các node khác, thông tin vnhng node còn li hoàn thông qua broadcast. Chính vì vy  
vi nhng ng dng cn có sliên kết cht chgia các node vi nhau như multicast thì  
mng ngang hàng không cu trúc không phi là sla chn ti ưu.  
ƒ Mng ngang hàng có cu trúc khc phc nhược đim ca mng không cu trúc  
bng cách sdng hthng DHT (Bng Băm Phân Tán, tiếng anh: Distributed Hash  
Table). Hthng này định nghĩa liên kết gia các nút mng trong mng phtheo mt  
thut toán cth, đồng thi xác định cht chmi nút mng schu trách nhim đối vi  
mt phn dliu chia strong mng. Vi cu trúc này, khi mt máy định tuyến thông  
báo, nó chcn áp dng mt giao thc chung để xác định nút cn thông báo và sau đó  
liên lc trc tiếp đến nút mng đó. Bi vy vic tao cây multicast sdin ra rt ddàng  
và vic qun lý cy cũng có nhiu thun li khi các node đều được liên kết cht chvi  
nhau. Mt smng ngang hàng có cu trúc ni tiếng bao gm Chord, CAN, Kademlia,  
Pastry và Tapestry.[5,6,9]  
ƒ Mng ngang hàng lai ghép: Trong mô hình mng ngang hàng li ghép, tn ti  
mt server trung gian có trách nhim điu khin hot động ca mng. Server này lưu dữ  
các chmc bao gm thông tin vcác node nó qun lý và vtrí các cp key-value trên  
mng. Các node trong mng phi to liên kết vi server này. Mt node mun trao đổi  
thông tin vi mt node khác thì nó sphi liên lc trc tiếp vi server, sau đó server sẽ  
tìm kiếm trong cơ sdliu và gi li địa chnode đích. Quá trình trao đổi thông tin sau  
đó được din ra trc tiếp gia 2 node. Vic trin khai truyn tin multicast trên mng  
ngang hàng lai ghép gn ging như mô hình proxy-base ALM. Nhược đim chính ca nó  
vn là chi phí cao cho các server trung gian. ng dng đin hình cho mô hình mng này  
là Napster.  
2.2.  
Mng ngang hàng có cu trúc Chord  
2.2.1. Gii thiu chung  
Giao thc Chord là mt giao thc định tuyến DHT bi mt nhóm sinh viên từ  
trường Đại hc California Berkeley và MIT nhm mc đích phân tán và tìm kiếm dữ  
liu mt cách tt nht vi nhiu đặc trưng như scalability (khnăng mrng), complete  
decentralization (phân tán hoàn toàn), load blancing (cân bng ti), và simplicity (đơn  
gin).  
Chord[6] được mô tdưới dng mt vòng tròn và có không gian định danh cm,  
vi m là sbit định danh ca không gian. Mng Chord scó ti đa 2m định danh. Mt  
Chord node (hay mt phn t- mt máy tính trong mng Chord) có mt định danh id, và  
các id trong mng Chord sp xếp thành vòng tròn và tăng theo chiu kim đồng h. Mi  
node trên vòng tròn sbiết thông tin vnode trước và sau nó trên vòng tròn gi là  
predecessor successor ca node đó. Thêm vào đó, mi node slưu mt bng định  
tuyến gi là bng Finger table, cho phép node đó định tuyến ti các node xa. Mi dòng  
trong bng Finger table slưu thông tin v1 node xa, gi là 1 entry. Không gian định  
danh có bao nhiêu bit thì Finger Table có by nhiêu entry. Ví dtrong hình 9  
predescessor ca node 1 slà node 6 và successor ca nó là node 3.  
Kĩ thut Consistent hashing cp cho mi node và key m-bit định danh da trên cơ  
shàm băm SHA-1[1]. Định danh ca mt node được xác định bng cách băm địa chIP  
node đó, định danh ca mt key xác định bng cách băm key đó (Ở đây chúng ta quy ước  
tkhóa “key” va là key gc va là định danh ca key). Chiu dài ca định danh cn đủ  
ln để khi băm tránh xy ra trường hp 2 key hoc node định danh ging nhau.  
Hình 9: Vòng tròn Chord  
Giao thc Chord htrduy nht mt hot động : đưa ra 1 key, nó sánh xạ  
key đó vào mt node. Tùy thuc vào ng dng sdng Chord ( văn bn, hình  
nh, media..), node đó slưu trmt giá trkết hp vi key. Chord sdng kí  
thut consistent hashing để cp key cho các node. Consistent hashing dùng để  
phân bcác node cũng như các key đều trên vòng tròn từ đó nâng cao khnăng  
cn bng ti, mi node snhn được slượng key gn ngang nhau, đồng thi  
giúp cho vic n định mng khi có node tham gia hay ri khi hthng.  
Trong mng Chord mi node không cn biết thông tin vtt ccác node khác. Mi  
node Chord chcn biết mt lượng nhthông tin định tuyến vcác node khác. Vì nhng  
thông tin này là phân tán, mt node ssdng finger table để giao tiếp vi các node  
khác. Khi mng được thiết lp, mt hthng Chord gm N-node, trong đó mi node cha  
thng tin vO(log N) node xung quanh nó, và tìm kiếm các node khác thông qua O(log  
N) thông đip ti các node đó. Chord cn phi cp nhp li thông tin định tuyến khi các  
node tham gia/ri khi hthng, vi stham gia hay vào mng ca mt node cũng chỉ  
cn không quá O(log2 N) thông đip được gi đi để cp nhp li thông tin định tuyến.  
2.2.2.  
Finger table  
Trong mng Chord, mi node cn mt lượng nhthông tin định tuyến trong 1 môi  
trường phân tán. Chord node chcn biết node successor ca nó trong mng. Các truy  
vn đến mt định danh ( mt key hoc mt node) nào đó được truyn theo vòng tròn  
thông qua các node successor cho đến khi tìm được node biết thông tin về định danh đó.  
Vi vic mi node đều duy trì mt đim successor ca nó cũng đủ đảm bo mi truy vn  
tìm kiếm đều được thc hin chính xác. Tuy nhiên gii pháp này tra không hiu qukhi  
mt truy vn có thphi lan truyn qua toàn bcác node mng để tìm được node ánh xạ  
vi nó. Để đẩy quá trình này, mi node Chord duy trì thêm mt sthông tin định tuyến.  
Vi chiu dài định danh key/node là m bit, mi node n sduy trì mt bng định  
tuyến vi m entry, được gi là bng finger table. Entry thi trong bng finger table cha  
định danh ca node đầu tiên, s, mà tiếp sau n ít nht 2i -1 trên vòng tròn định danh, s =  
successor(n + 2i - 1 ), vi 1 i m. Node s được gi là finger thi ca node n và ký hiu  
n.finger[i].node. Mt entry trong bng finger table còn bao gm địa chIP, định danh,  
cng ca node finger đó. Có thnhn thy rng, entry đầu tiên trong bng finger table  
ca node n chính là successor ca node n.  
Hình 10: Bng Finger table và các key gán cho tng node 0, 1, 3  
Nhìn vào hình 10 ta thy được mi entry trong bng finger table ca node 1 trỏ đến  
successor node ca các định danh (1+20) mod 23 = 2, (1+21) mod 23 = 3, (1+22) mod 23 =  
5. Successor ca định danh 2 là node 3, nó chính là node đầu tiên theo sau 2 trên vòng  
tròn Chord; successor ca định danh 3 chnh là node 3 và successcor ca định danh 5 là  
node 0.  
2.2.3.  
Node tham gia/ ri mng và quá trình đồng b( stabilization)  
Trong mng Chord, mi node schy định kthut toán đồng bmng nhm cp  
nhp bng finger table và các thông tin vsuccessor, predecessor ca nó. Vic này sẽ  
giúp cho mng Chord luôn hot động chính xác kckhi có node mi tham gia/ri mng  
hay mt node bli.  
Khi mt node mi mun tham gia vào mng, nó stri qua các bước sau:  
ƒ
ƒ
ƒ
ƒ
Bước 1: Node mi sdng consistent hashing băm địa chIP ca chính nó để mt  
định danh ID.  
Bước 2: Node mi gi thông đip join vi định danh ID ca nó cho mt node nào  
đó đã tn ti trên mng – gi là bootstrap node  
Bước 3: Bootstrap node sdng bng finger table để tìm kiếm successor ca định  
danh ID successor(ID) và sau đó sgi kết qutìm kiếm cho node mi.  
Bước 4: Sau khi biết được successor ca mình, node mi sgi thông đip cnh  
bo vvic gia nhp mng ca mình cho successor đó. Successor nhn được thông  
đip cnh báo đó nó strỏ đến predecessor mi là node mi gia nhp mng.  
ƒ
Bước 5: Node mi sdng thut toán đồng bộ để cp nhp các thông tin vmng.  
Thut toán đồng bchy định kti mi node Chord. Gisnode A đang định kỳ  
chy thut toán đồng b. A syêu cu successor ca nó gi thông tin vpredecessor (  
predecessor ca successor ca A). Nếu không có node nào join vào gia node A và  
successor ca A thì kết qutrvchính là định danh ca node A. Ngược li nếu có mt  
node mi join vào gia node A và successor ca nó thì kết qutrvsđịnh danh ca  
node mi, từ đó node A có thnhn biết được có node mi tham gia vào mng. Và đến  
ln đồng btiếp theo, node A sgi thông báo đến node mi, node mi scp nhp li  
predecessor ca nó trthành node A.  
Quá trình mt node Chord ri mng din ra đơn gin hơn khi mt node tham gia  
mng. Trước khi ri mng, node sgi toàn bdliu ca nó – các cp (key - value) cho  
successor. Sau đó nó sthông báo cho successor cp nhp li predecessor và thông báo  
cho predecessor cp nhp li successor. Cui cùng node sgii phóng các tài nguyên ca  
nó và thoát khi mng. Trong trường hp, mt node ri mng không đúng theo quy tc (  
node bli) thì toàn bdliu mà node đó nm dsbmt và phi nhờ đến quá trình  
đồng bthì mng mi phát hin và khôi phc được li.  
2.3.  
Thut toán truyn tin multicast da trên nn mng Chord  
Mt trong nhng vn đề quan trng nht ca multicast đó là to nhóm multicast,  
tham gia và ri nhóm. Thay vì liên lc vi Router để tham gia hoc là ri nhóm multicast  
như IP multicast, tt ccác node mun tham gia vào nhóm multicast shình thành mt  
mng ph( overlay network) . Trong trường hp này mng phchính là mng Chord.  
Node ngun khi to mng Chord. Các node trong nhóm multicast tham gia vào  
nhóm bng cách kết ni vào mng Chord mà node ngun va to. Từ đó vic truyn  
multicast trthành vic truyn broadcast trên toàn mng Chord. Phn dưới đây mô tchi  
tiết thut toán truyn broadcast trong mng Chord [8].  
Thut toán truyn tin broadcast trên mng Chord  
Mô hình hthng và ký hiu  
Chúng ta githiết hthng ca chúng ta gm tp hp N node hình thành mt mng  
Chord và bng finger ti mi node đã được cp nhp đầy đủ.  
Thut toán phân tán được chy trên mi node ca ht thng được miêu tdưới dng  
mt “lut” có dng sau:  
receive(Sender: Receiver: Message(arg1….argn))  
action(s)…  
“Lut” này miêu tskin khi mt node nhn được mt thông đip (Message) và  
hành động action(s) sẽ được gi vi skin đó. Node gi sgi lnh send(Sender:  
Receiver: Message(arg1….argn)) để gi mt thông đip cho node nhn.  
Khơi to mt phiên broadcast  
Broadcast có thể được khi to bt knode nào nếu như lp ng dng trên lp đó  
yêu cu. Đó là khi, mt thc thể ứng dng multicast ti node Q có thyêu cu node Q  
mt thông đip InitBroadCast(Info) vi Info là mt phn ca thông tin cn được  
broadcast ví dnhư mt phn ca hình nh cn được gi đi trong ng dng video  
streaming.  
start int.  
succ.  
1
[1, 2)  
2
2
[2, 4)  
2
4
[4, 8)  
5
8
[8, 16)  
[16, 32)  
11  
16  
16  
…..  
Hình 11: Node Q ng vi định danh 0 khi to broadcast và finger table ca node 0  
Trong hình 11, hành động ca node Q vi định danh là 0, khi nhn được yêu cu  
gi thông đip InitBroadCast(Info) từ ứng dng P:  
receive(P : 0 : InitBroadcast(Info))  
send(0 : 2 : Broadcast(Info, 5))  
send(0 : 5 : Broadcast(Info, 11))  
send(0 : 11 : Broadcast(Info, 16))  
send(0 : 16 : Broadcast(Info, 0))  
Node Q shot động như gc ca mt cây không lp. Như trong hình 11, node Q  
thc hin vic đó bng cách gi mt thông đip broadcast ti tt ccác hàng xóm ca nó  
trong bng finger table.  
Thông đip Broadcast(Info, Limit) cha đựng thông tin Info cn được broadcast và  
mt tham sgii hn Limit. Limit được sdng để hn chế không gian chuyn tiếp gói  
tin ca node nhn được gói tin. Limit ca finger[i] chính là finger[i+1], ( 1 i M - 1)  
vi M là sentry trong bng finger table. Gii hn cho entry cui cùng trong bng finger  
table là mt trường hp đặc bit khi Limit được đặt là định danh ca chính node gi gói  
tin.  
Xlý mt thông đip Broadcast  
Khi node Q nhn được mt thông đip Broadcast(Info, Limit) , node Q phi chu  
trách nhim chuyn tiếp thông đip cho cây con được xác định trong khong (Q, Limit).  
Node Q schuyn tiếp thông đip cho bt cfinger nào mà có định danh đứng trước  
Limit (nhhơn Limit). Hơn na, khi chuyn tiếp cho mi finger, node Q sáp đặt mt  
gii hn mi NewLimit để định nghĩa mt cây con nhhơn cho node nhn tiếp theo.  
NewLimit được xác định trong bng finger table tương tnhư ti node ngun. Chú ý là,  
NewLimit chỉ được xác định khi NewLimit vn còn thuc khong (Q, Limit). Hình sau  
đây mô tlut khi mt node nhn được mt thông đip broadcast  
start int.  
succ.  
6
[6, 7)  
7
7
[7, 9)  
7
9
[9, 13)  
[13, 21)  
[21, 37)  
11  
13  
22  
13  
21  
…..  
(a)  
(b)  
Hình 12: (a)Hành động ca các node khi nhn được gói tin broadcast  
(b)finger table ca node 5  
Trong hình 12, khi node 5 nhn được thông đip Broadcast(Info, 11) tnode 0 thì  
nó sgi chuyn tiếp gói thông đip đó cho node 7 vi gii hn Limit vn là 11.  
receive(0 : 5 : Broadcast(Info,11))  
send(5 : 7 : Broadcast(Info, 11))  
Phn hi (Reply)  
Vic phn hi thông đip broadcast nhn được phthuc vào loi thông tin cha  
đựng trong nó hoc phthuc vào yêu cu ca ng dng. Có 2 cách phn hi đó là: (i)  
Gói tin phn hi sẽ được gi ngược li theo cây broadcast đã được hình thành ttrước  
(ii) Gói tin phn hi được gi trc tiếp đến node ngun ca broadcast.  
Chương III: Xây dng ng dng truyn tin video streaming multicast thi gian  
thc trên nn mng ngang hàng có cu trúc Chord  
3.1.  
Mc tiêu và yêu cu ca vic xây dng ng dng  
Hin nay trên thế gii có rt nhiu ng dng truyn video streaming, hu hết trong  
schúng sdng mô hình khách – ch(client – server) da trên unicast, tc là máy  
khách gi yêu cu đến máy ch, máy chgi dliu cho tng máy khách sdng truyn  
tin unicast; hoc có sít ng dng video streaming sdng truyn tin IP multicast cho  
vic phân phát video cho người dùng ví dnhư Cisco IPTV. Các ng dng trên đều có  
nhược đim ca nó. Đó là, vi mô hình khách – chda trên unicast đơn thun thì máy  
chsbquá ti khi có quá nhiu người dùng, vi IP multicast thì cn có nhng router hỗ  
trmulticast.  
ng dng được xây dng trong khóa lun này phi đáp ng được nhng yêu cu  
sau:  
ƒ Ti ưu hóa băng thông ca máy ch, máy chkhông phi chu ti quá nhiu khi số  
lượng người sdng tăng lên. Các máy khách chia sti cùng máy ch.  
ƒ Xây dng mt phương thc truyn tin multicast tng ng dng theo kiu end-  
system ALM, không cn shtrca router hay proxy chuyên dng. Vic tham gia vào  
cây multicast phi được din ra mt cách nhanh chóng, ddàng. Cây multicast có khả  
năng khôi phc li khi có mt node bli. Thông tin để duy trì và điu khin cây  
multicast càng nhcàng tt.  
ƒ Vi đặc thù là mt ng dng vvideo nên hình nh hin thti máy khách phi  
tương đối rõ ràng không gây khó chu cho người dùng.  
Vi nhng yêu cu trên, mc tiêu ca khóa lun đặt ra là:  
ƒ Đưa ra gii pháp và thiết kế giao thc truyn video streaming.  
ƒ Xây dng chương trình thnghim da trên gii pháp và thiết kế được đưa ra.  
ƒ Cui cùng, đánh giá chương trình đã xây dng để kim tra xem ng dng có đạt  
được nhng yêu cu đặt ra ban đầu hay không.  
3.2.  
Ý tưởng  
Như đã trình bày nhng phn trên, giao thc Chord là mt giao thc mng ngang  
hàng có cu trúc đơn gin và mnh m, lượng thông tin được truyn để duy trì mng là  
thp; Chord có cơ chế phc hi khi mt node hoc nhiu node bli. Thut toán truyn  
multicast trên nn Chord cũng rt đơn gin và hiu qu. Chính vì vy, truyn video  
streaming multicast được xây dng trên nn mng Chord.  
Giao thc UDP được sdng để truyn dliu video. UDP có ưu đim là truyn dữ  
liu nhanh nht có th. Tuy nhiên nhược đim ca nó là không có cơ chế sp xếp li gói  
tin đến không đúng tht. Ý tưởng được đưa ra ở đây là sdng thêm mt sgii pháp  
trong giao thc RTP (Real-time Transport Protocol) – mt giao thc htrtruyn ng  
dng thi gian thc như đánh sthtgói tin [2].  
3.3.  
Thiết kế hthng  
Hình dưới đây mô tcác cha năng ca hthng.  
Hthng truyn video  
streaming thi gian thc  
multicast nn Chord  
To cây  
Xlý và hin  
thhình nh  
To dliu  
Truyn  
multicast  
video thi  
gian thc  
hình nh  
Hình 13: Các chc năng ca hthng  
To cây multicast  
Giao thc Chord được sdng để to nhóm multicast. Qua trình to nhóm mulicast  
gm các bước:  
3.3.1.  
ƒ Node ngun khi to mng Chord.  
ƒ Các node khác tham gia vào mng Chord.  
ƒ Node ngun sdng thut toán truyn broadcast trên mng Chord để to cy  
multicast.  
Như trong ví dHình 12(a) ta thu được cây multicast như hình dưới đây.  
Hình 14: Cây multicast thu được tmng Chord  
Nhìn vào hình 14 ta thy được, cây multicast được xây dng là cây lch phi. Do  
các node cui vòng tròn Chord thường có độ sâu ln hơn nhiu so vi các node ở đầu  
vòng tròn. Chính vì vy, độ trtương đối ca dliu nhn được gia các node là không  
đều nhau. Tuy nhiên, nếu hàm băm được xây dng tt thì có thlàm gim đáng ksự  
chênh lch trên.  
3.3.1.  
To dliu thi gian thc  
Trong ng dng video streaming, video có thlà các bn ghi sn ttrước hoc có  
thể được bt ly trc tiếp theo thi gian thc vi các thiết bthu hình. Hthng đã sử  
dng webcam để to dliu thi gian thc. Hình nh sẽ được bt ly (capture) từ  
webcam theo nhng khong thi gian liên tiếp. Vic tính toán khong thi gian gia 2 ln  
capture phthuc vào nhiu yếu tnhư băng thông mng, khnăng xlý ca máy, cht  
lượng hình nh thu được.  
3.3.2.  
Truyn hình nh  
Truyn hình nh là mt trong nhng bước quan trng nht trong video streaming.  
Kthut truyn không tt sẽ ảnh hưởng trc tiếp đến cht lượng ca hình nh thu được.  
Thc cht vic truyn video stream là vic truyn mt chui liên tiếp các hình nh  
(frame). Mi hình nh nguyên gc thường có dung lượng ln. Nén nh là gii pháp được  
nghĩ ti nhm ti ưu hóa đường truyn, tiết kim băng thông. JPEG là mt chun nén nh  
mà cht lượng ca hình nh không thay đổi nhiu so vi nguyên bn. Vi JPEG hình nh  
thu được có dung lượng gim đáng k.  
Do mi đường truyn mng đều có mt giá trMTU ( Maximum Transmission  
Unit) gii hn kích thước gói tin gi trên đường truyn nên không thgi cframe lên  
đường truyn cùng mt lúc. Cách khc phc duy nht đó là phân mnh frame ra thành  
cách gói tin nhhơn đủ để truyn trên mng. Vic này đòi hi cơ chế đánh sthtcho  
tng gói tin nhàm đảm bo các gi tin sẽ được ghép theo đúng thtti bên nhn.  
3.3.3.  
Xlý và hin hình nh  
Sau khi được phân mnh ti máy gi dliu bt đầu được gi đến máy nhn. Trong  
quá trình gi có thcó smt mát gói tin, hoc các gói tin đến không theo đúng tht.  
Chính vì vy ti máy nhn có cơ chế sp xếp li gi tin đến không đúng thtư, đồng sử  
dng timeout để không phi chquá lâu gói tin bmt. Để hnh nh hin thkhông gây  
khó chu cho người dùng, các hình nh sau khi được ghép li sẽ được lưu trong buffer và  
hin thtrong nhng khong thi gian đều nhau.  
3.4.  
Thiết kế giao thc  
3.4.1. Giao thc máy chủ  
Quy trình hot động ca máy chủ được biu din dưới hình sau:  
To nhóm multicast  
To dliu thi gian thc  
Phân mnh frame  
Hin thhình nh  
Khi to multicast  
ƒ To nhóm multicast  
Máy chsdng hàm create() vi địa chIP và port để khi to mt mng Chord.  
Máy khách sliên lc vi máy chbng địa chIP và port được khai báo trên.  
ƒ To dliu thi gian thc  
Dliu thc được to ra bng cách bt ly (capture) hình nh thu được twebcam  
trong nhng khong thi gian định k. Vi mi ln capture ta thu được mt frame dưới  
dng mt chui byte.  
ƒ Phân mnh hình nh  
Đầu vào ca quá trình phân mnh là hình nh dưới dng mt chui byte. Chui byte  
đó sẽ được chia thành các phân nhhơn để có thgi được trên mng.  
ƒ Khi to multicast  
Sau khi hình nh được phân mnh thành các phn nh, nó sẽ được thêm vào mt số  
trước ri đóng gói trong gói tin UDP và cui cùng sẽ được gi đi đến node phù hp.  
Cu trúc gói tin multicast tng ng dng:  

Tải về để xem bản đầy đủ

pdf 42 trang yennguyen 11/07/2025 390
Bạn đang xem 30 trang mẫu của tài liệu "Khóa luận Xây dựng ứng dụng video streamming dựa trên mạng ngang hàng Chord", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfkhoa_luan_xay_dung_ung_dung_video_streamming_dua_tren_mang_n.pdf