
TRƯỜNG………………….
KHOA……………………….
‐‐‐‐‐[\[\‐‐‐‐‐
Báocáotốtnghiệp
Đềtài:
Xây dựng ứng dụng video streamming dựa
trên mạng ngang hàng Chord

Tóm tắt
Khóa luận này đưa ra một phương thức truyền tin multicast trên nền tảng mạng
ngang hàng mới nhằm khắc phục những nhược điểm của một số phương thức truyền tin
multicast đã tồn tại từ trước. Những nhược điểm đó gồm có việc phải phụ thuộc hoàn
toàn vào khả năng của router đối với IP multicast hay vấn đề quản lý cây multicast khó
khăn đối với một số giao thức truyền tin multicast trên tầng ứng dụng khác.
Khóa luận mô tả chi tiết giao thức mạng ngang hàng có cấu trúc Chord và cách thức
truyền tin multicast trên nền mạng ngang hàng Chord. Trong khóa luận, vấn đề truyền
video streaming cũng được đề cập đến. Từ đó khóa luận đã xây dựng nên ứng dụng
truyền video streaming multicast trên nền Chord. Việc đánh giá kết quả thu được qua quá
trình xây dựng ứng dụng cho ta thấy được những ưu điểm của việc triển khai multicast
trên mạng ngang hàng, cũng như những nhược điểm cần khắc phục.

MỤC LỤC
Mở đầu......................................................................................................................................................... 5
Chương I: Tổng quan về video streaming multicast ..............................................................................7
1.1.Giới thiệu về video streaming................................................................................................. 7
1.2.Giới thiệu multicast................................................................................................................. 9
1.3.IP multicast ............................................................................................................................ 10
1.4.Multicast tầng ứng dụng ( ALM – Application-layer Multicast)...................................... 12
1.4.1.Giới thiệu................................................................................................................... 12
1.4.2.Một số giải pháp truyền tin multicast trên tầng ứng dụng................................... 13
Chương II: Truyền tin multicast trên nền mạng ngang hàng có cấu trúc Chord...............................16
2.1.Giới thiệu mạng ngang hàng ................................................................................................ 16
2.2.1.Khái niệm.................................................................................................................. 16
2.2.2.Ưu thế của mạng ngang hàng.................................................................................. 16
2.2.3.Phân loại mạng ngang hàng .................................................................................... 16
2.2.Mạng ngang hàng có cấu trúc Chord .................................................................................. 18
2.2.1.Giới thiệu chung ....................................................................................................... 18
2.2.2.Finger table ............................................................................................................... 20
2.2.3.Node tham gia/ rời mạng và quá trình đồng bộ ( stabilization) ........................... 21
2.3.Thuật toán truyền tin multicast dựa trên nền mạng Chord.............................................. 22
Chương III: Xây dựng ứng dụng truyền tin video streaming multicast thời gian thực trên nền mạng
ngang hàng có cấu trúc Chord................................................................................................................. 26
3.1.Mục tiêu và yêu cầu của việc xây dựng ứng dụng .............................................................. 26
3.2.Ý tưởng................................................................................................................................... 26
3.3.Thiết kế hệ thống ................................................................................................................... 27
3.3.1.Tạo cây multicast...................................................................................................... 27
3.3.1.Tạo dữ liệu thời gian thực........................................................................................ 28
3.3.2.Truyền hình ảnh....................................................................................................... 28
3.3.3.Xử lý và hiển hình ảnh............................................................................................. 29
3.4.Thiết kế giao thức.................................................................................................................. 29

3.4.1.Giao thức máy chủ................................................................................................... 29
3.4.2.Giao thức máy khách ............................................................................................... 31
3.5.Thiết kế chương trình ........................................................................................................... 33
3.5.1.Lớp WebcamServer ................................................................................................. 34
3.5.2.Lớp WebcamClient .................................................................................................. 36
Chương IV: Kết quả đánh giá hệ thống................................................................................................. 39
4.1.Kết quả thử nghiệm............................................................................................................... 39
4.1.1.Môi trường chạy thử................................................................................................ 39
4.1.2.Kết quả đạt được...................................................................................................... 39
4.2.Kết quả đánh giá hiệu năng.................................................................................................. 39
Chương V: Kết luận.................................................................................................................................. 41
Tài liệu tham khảo .................................................................................................................................... 42

Mở đầu
Trong những ngày đầu phát triển của ứng dụng đa phương tiện, khoảng nửa cuối
thập niên 90, việc xem một video trên mạng gần như là điều không thể. Ngày nay, cùng
với sự bùng nổ của Internet, các ứng dụng đa phương tiện trong đó có video streaming đã
trở thành nhu cầu không thể thiếu của nhiều cư dân mạng.Theo thống kê, riêng tại Mỹ đã
có khoảng 13,5 tỉ video được xem trong tháng 10 – 2008 (nguồn comScore). Con số trên
đủ cho ta thấy được sự lớn mạnh không ngừng của các ứng dụng video streaming.
Tuy nhiên, để phát triển một ứng dụng video streaming tốt gặp phải nhiều vấn đề.
Ứng dụng video streaming đòi hỏi nhiều băng thông và yêu cầu độ trễ thấp. Chính vì vậy
cần phải có một phương thức phân phát video trên đường truyền hợp lý. IP multicast với
khả năng tối ưu hóa đường truyền là một giải pháp cho vấn đề này. Tuy nhiên, việc triển
khai IP multicast lại rất tốn kém bởi nó đòi hỏi toàn mạng phải có những Router đắt tiền,
chuyên dụng. Điều này hoàn toàn không khả thi trong một mạng diện rộng như Internet.
Triển khai multicast trên tầng ứng dụng với việc không làm thay đổi hạ tầng mạng phía
dưới là một giải pháp thay thế hữu hiệu cho IP multicast.
Hiện nay, trên thế giới đã và đang phát triển rất nhiều phương pháp truyền tin
multiast trên tầng ứng dụng khác nhau. Trong đó truyền tin multicast dựa mạng ngang
hàng hứa hẹn có nhiều ưu điểm. Đặc thù của truyền tin multicast là phải tạo được một
cây multicast tối ưu, có sự liên kết chặt chẽ giữa các node với nhau, có khả năng phục hồi
lỗi nhanh. Mạng ngang hàng có cấu trúc hoàn toàn có thể đáp ứng được yêu cầu đó với
việc các node được liên kết với nhau bằng một thuật toán cụ thể.
Để làm rõ hơn những lợi thế của mạng ngang hàng có cấu trúc trong việc truyền tin
multicast, khóa luận này đã nghiên cứu xây dựng một ứng dụng truyền video streaming
multicast dựa trên nền tảng mạng ngang hàng có cấu trúc Chord. Sau đây là tóm tắt nội
dung khóa luận gồm 5 chương.
Chương 1: Tổng quan về video streaming và multicast
Giới thiệu về video streaming và trình bày những khái cơ bản về multicast, so sánh
với các phương thức truyền tin khác. IP multicast và multicast tầng ứng dụng được trình
bày một cách ngắn gọn để từ đó có thể thấy được ưu điểm của multicast tầng ứng dụng so
với IP multicast.
Chương 2: Truyền tin multicast trên nền mạng ngang hàng có cấu trúc Chord

