Khóa luận Đảm bảo chất lượng dịch vụ cho việc truyền video streaming trong mạng không dây 802.11

Ngày nay, với sựphát triển của Internet các dịch vụtruyền thông ña phương tiện ngày càng phát triển và ñóng vai trò quan trọng trong nhiều mặt của ñời sống. Video streaming là một trong sốnhững dịch vụnhưthế. Trong video streaming, dữliệu ñược truyền trực tiếp từnguồn phát và hiển thịtrực tiếp tại bên nhận trong khi truyền mà không cần phải ñợi cho việc truyền dữliệu kết thúc. Với ñặc ñiểm nhưvậy dịch vụ video streaming có những ràng buộc khá cao vềbăng thông cao, ñộtrễthấp, tỷlệmất gói tin thấp. Video streaming ngày càng ñược sửdung nhiều trong mạng không dây nhưmạng LAN không dây theo quy chuẩn IEEE 802.11. Bằng chứng là sựra ñời và phát triển của các ứng dụng nhưmobile tv, video call Những ứng dụng này ñã và ñang ñược nghiên cứu cải tiến với mục tiêu cứu chủyếu là làm sao ñểkhắc phục các nhược ñiểm cốhữu của mạng không dây cũng như ñáp ứng tốt các ràng buộc của video streaming. Tuy nhiên, vấn ñề ñảm bảo chất lượng dịch vụcủa các dịch vụvideo streaming vẫn cần có sựhỗtrợcủa mạng không dây. IEEE 802.11e nhằm ñáp ứng yêu cầu ñó.

pdf63 trang | Chia sẻ: lvbuiluyen | Lượt xem: 2171 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Khóa luận Đảm bảo chất lượng dịch vụ cho việc truyền video streaming trong mạng không dây 802.11, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Nguyễn Đình Hòa ĐẢM BẢO CHẤT LƯỢNG DỊCH VỤ CHO VIỆC TRUYỀN VIDEO STREAMING TRONG MẠNG KHÔNG DÂY 802.11 KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin HÀ NỘI - 2010 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Nguyễn Đình Hòa ĐẢM BẢO CHẤT LƯỢNG DỊCH VỤ CHO VIỆC TRUYỀN VIDEO STREAMING TRONG MẠNG KHÔNG DÂY 802.11 KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY Ngành: Công nghệ thông tin Cán bộ hướng dẫn: TS. Nguyễn Hoài Sơn HÀ NỘI - 2010 Lời cảm ơn Em xin chân thành cảm ơn các thầy cô trong trường Đại học Công Nghệ - ĐHQG Hà Nội ñã tận tình giúp ñỡ truyền ñạt kiến thức cho em trong suốt 4 năm học qua ñể em có ñủ kiến thức hoàn thành khóa luận này Đặc biệt, em xin gửi lời cảm ơn sâu sắc tới thầy Nguyễn Hoài Sơn. Người ñã nhiện tình ñộng viên hướng dẫn và giúp ñỡ em trong suốt quá trình thực hiện khóa luận này. Em xin cảm ơn sự nhiệt tình chia sẻ kinh nghiệm, ñóng góp ý kiến của nhóm nghiên cứu do thầy Nguyễn Hoài Sơn hướng dẫn. Xin gửi lời cảm ơn tha thiết nhất tới bố mẹ và những người thân khác trong gia ñình ñã ñộng viên giúp ñỡ con/cháu rất nhiều trong suốt quá trình học tập cũng như hoàn thành khóa luận này. Mặc dù ñã rất cố gắng hoàn thành khóa luận này với tất cả nỗ lực của bản thân, xong khóa luận sẽ khó tránh khỏi những thiếu sót, kính mong quý thầy cô tận tình chỉ bảo cho em những sai lầm cần khắc phục của mình. Một lần nữa em xin gửi tới tất cả mọi người lời cảm ơn chân thành nhất. Hà nội, tháng 05 năm 2010 Sinh viên : Nguyễn Đình Hòa Tóm tắt Ngày nay, với sự phát triển của Internet các dịch vụ truyền thông ña phương tiện ngày càng phát triển và ñóng vai trò quan trọng trong nhiều mặt của ñời sống. Video streaming là một trong số những dịch vụ như thế. Trong video streaming, dữ liệu ñược truyền trực tiếp từ nguồn phát và hiển thị trực tiếp tại bên nhận trong khi truyền mà không cần phải ñợi cho việc truyền dữ liệu kết thúc. Với ñặc ñiểm như vậy dịch vụ video streaming có những ràng buộc khá cao về băng thông cao, ñộ trễ thấp, tỷ lệ mất gói tin thấp... Video streaming ngày càng ñược sử dung nhiều trong mạng không dây như mạng LAN không dây theo quy chuẩn IEEE 802.11. Bằng chứng là sự ra ñời và phát triển của các ứng dụng như mobile tv, video call… Những ứng dụng này ñã và ñang ñược nghiên cứu cải tiến với mục tiêu cứu chủ yếu là làm sao ñể khắc phục các nhược ñiểm cố hữu của mạng không dây cũng như ñáp ứng tốt các ràng buộc của video streaming. Tuy nhiên, vấn ñề ñảm bảo chất lượng dịch vụ của các dịch vụ video streaming vẫn cần có sự hỗ trợ của mạng không dây. IEEE 802.11e nhằm ñáp ứng yêu cầu ñó. IEEE 802.11e là một biến thể của chuẩn IEEE 802.11. Nó ñịnh nghĩa tập các cải tiến về ñảm bảo chất lượng dịch vụ dành cho mạng WLAN thông qua các sửa ñổi ở tầng MAC. Trong việc truyền video streaming chuẩn IEEE 802.11e ñã có nhiều cải tiến mang tính tích cực. IEEE 802.11e cho phép phân cấp các dịch vụ bằng cách gán cho luồng dữ liệu của chúng tương ứng với các ñộ ưu tiên khác nhau. Các gói tin của dịch vụ có ñộ ưu tiên cao hơn có thể dành ñược cơ hội truyền tốt hơn các gói tin của dịch vụ có ñộ ưu tiên thấp hơn. Tuy nhiên việc ñảm bảo chất lượng truyền video streaming trong mạng không dây sử dụng chuẩn IEEE 802.11e vẫn tồn tại những ñiểm bất cập. Ví dụ, việc phân tầng trong video streaming sẽ cho kết quả là một video sẽ ñược truyền dưới dạng các luồng khác nhau ñể ñáp ứng những nhu cầu và tình trạng mạng khác nhau. Nhưng với IEEE 802.11e các luồng này sẽ ñược xếp vào cùng một ñộ ưu tiên việc này sẽ làm cho chất lượng dịch vụ kém ñi khi tình trạng mạng tắc nghẽn. Khóa luận sẽ trình bày giải pháp ñể hỗ trợ tốt hợn việc ñảm bảo chất lượng của việc truyền video streaming trong mạng không dây. Đó là giải pháp gán ñộ ưu tiên ñộng cho các luồng dữ liệu tương ứng với các tầng của video streaming. Việc truyền video streaming có thể ñạt ñược sự linh ñộng hơn vì các luồng dữ liệu sẽ có khả năng thay ñổi ñược ñộ ưu tiên trong quá trình truyền. Giải pháp này sẽ ñảm bảo duy trì dịch vụ cũng như ñảm bảo chất lượng dịch vụ của video streaming một cách tốt hơn. Mục lục Chương 1. Tổng quan về video streaming .................................................................... 1 1.1. Giới thiệu về video streaming ............................................................................... 1 1.1.1. Nén dữ liệu ......................................................................................................... 2 1.1.2. Điều khiển chất lượng dịch vụ tầng ứng dụng ................................................... 3 1.1.2.1. Điều khiển tắc nghẽn ...................................................................................... 4 1.1.2.2. Điều khiển lỗi .................................................................................................. 7 1.1.2.3. Che dấu lỗi ...................................................................................................... 9 1.1.3. Dịch vụ phân phối phương tiện truyền thông liên tục ....................................... 9 1.1.4. Máy chủ (streaming server) ............................................................................. 12 1.1.5. Các giao thức video streaming ......................................................................... 12 1.1.6. Cơ chế ñồng bộ video streaming...................................................................... 13 1.2. Kỹ thuật phân tầng trong video streaming .......................................................... 13 1.3. Đảm bảo chất lượng dịch vụ truyền video streaming. ........................................ 15 Chương 2. Chuẩn IEEE 802.11e về ñảm bảo chất lượng dịch vụ trong mạng không dây ................................................................................................................... 17 2.1. Tổng quan về IEEE 802.11 MAC ....................................................................... 17 2.1.1. Các khoảng liên khung (Inter-frame space) ..................................................... 17 2.1.2. Chức năng phối hợp phân tán (Distributed Coordination Function - DCF) .... 19 2.1.2.1. Thủ tục quay lui ngẫu nhiên (random backoff) ............................................ 19 2.1.2.2. Thủ tục xác nhận ACK .................................................................................. 20 2.1.3. Chức năng phối hợp ñiểm (Point Coordination Function - PCF) .................... 21 2.1.3.1. Chu kỳ không tranh chấp .............................................................................. 21 2.1.3.2. Thủ tục truy cập PCF ................................................................................... 22 2.2. Chuẩn IEEE 802.11e ........................................................................................... 23 2.2.1. Chức năng phối hợp lai (Hybrid Coordination Function - HCF) .................... 23 2.2.1.1. EDCF (Enhanced Distributed Coordinated Function) ................................ 24 2.2.1.2. HCCA(HCF controlled channel access) ...................................................... 27 2.3. Truyền video streaming trong mạng không dây IEEE 802.11e .......................... 28 Chương 3. Giải pháp gán ñộ ưu tiên ñộng cho các luồng video streaming trong mạng IEEE 802.11e ................................................................................................................. 30 3.1. Vấn ñề nghiên cứu ............................................................................................... 30 3.2. Giải pháp gán ñộ ưu tiên ñộng cho các luồng video streaming .......................... 37 3.2.1. Các tham số ñánh giá môi trường truyền. ........................................................ 38 3.2.2. Mô tả giải pháp. ............................................................................................... 39 3.3. Phân tích ñánh giá ............................................................................................... 41 Chương 4. Đánh giá giải pháp ñộ ưu tiên ñộng cho các luồng video streaming trong mạng IEEE 802.11e ....................................................................................................... 43 4.1. Môi trường mô phỏng ......................................................................................... 43 4.1.1. Xây dựng chương trình mô phỏng. .................................................................. 43 4.1.2. Kịch bản mô phỏng .......................................................................................... 45 4.1.2.1. Các tham số môi trường ............................................................................... 45 4.1.2.2. Thông số tại các trạm ................................................................................... 46 4.2. Kết quả mô phỏng ............................................................................................... 47 4.2.1. Đánh giá về thông lượng .................................................................................. 47 4.2.2. Đánh giá về ñộ trễ ............................................................................................ 49 Chương 5. Kết luận ..................................................................................................... 52 5.1. Kết luận ............................................................................................................... 52 5.2. Hướng phát triển tiếp theo ................................................................................... 52 Tài liệu tham khảo ......................................................................................................... 53 Mở ñầu Trong những năm gần ñây với sự phát triển mạnh của công nghệ mạng nói chung và công nghệ mạng không dây nói riêng. Ngày càng có nhiều ứng dụng ra ñời, một trong số ñó là các ứng dụng video streaming với ñiển hình như là video call, mobile tv… Những ứng dụng này, ñang ngày càng ñược phát triển và hoàn thiện dần. Tuy nhiên, ñể duy trì và ñảm bảo chất lượng cho các ứng dụng này không phải là việc ñơn giản. Các ứng dụng video streaming luôn luôn gắn liền với những ràng buộc về ñộ trễ, thông lượng cũng như tỷ lệ mất gói tin nhất ñịnh. Mạng không dây lại là môi trường không ñược ổn ñịnh như mạng có dây. Trong mạng không dây việc kiểm soát băng thông và ñộ trễ cũng như tỷ lệ mất gói tin là rất khó. Mặc dù, việc hỗ trợ ñảm bảo chất lượng dịch vụ ñã ñược hỗ trợ trong mạng không dây với việc áp dụng chuẩn IEEE 802.11e, tuy nhiên chuẩn này chỉ dừng lại ở mức cung cấp việc cho phép các ứng dụng ñược gán ñộ ưu tiên khác nhau từ ñó cơ hội truyền dữ liệu của các luồng dữ liệu tương ứng với dịch vụ sẽ khác nhau. Tuy nhiên, bản thân dịch vụ video streaming lại là việc truyền một tập hợp các luồng dữ liệu tương ứng với các tầng trong cơ chế phân tầng của nó. Theo chuẩn 802.11e thì các luồng này vẫn sẽ có cùng ñộ ưu tiên và sẽ có cơ hội truyền ngang nhau. Mặt khác, các tầng của video streaming là không tương ñương nhau, mỗi tầng lại có mức ñộ quan trọng khác nhau. Nếu ñể ñảm bảo chất lượng dịch vụ cho video streaming một cách hiệu quả thì các luồng này phải ñược phân biệt với nhau ở tầng MAC ñể có cơ chế phân phối cơ hội truyền phù hợp. Chuẩn 802.11e không làm ñược việc này. Vậy phải có một giải pháp nào ñó ñể có thể hỗ trợ việc ñảm bảo chất lượng dịch vụ phù hợp với cơ chế phân tầng của video streaming sao cho hiệu suất việc truyền video streaming ñạt hiệu quả cao hơn. Khóa luận sẽ ñề xuất giải pháp gán ñộ ưu tiên ñộng cho các luồng dữ liệu tương ứng với các tầng của video streaming. Trong video streaming các tầng video ñược phân cấp ñộ quan trọng theo thứ tự giảm dần như sau : tầng cơ bản, tầng mở rộng 1, tầng mở rộng 2… Với trường hợp mạng rảnh rỗi, việc các luồng dữ liệu của các tầng này ñều nhận giá trị ñộ ưu tiên cao như trong chuẩn IEEE 802.11e mô tả là hợp lý, ñể tận dụng băng thông của môi trường truyền cũng như giảm thiểu ñộ trễ của gói tin. Nhưng, với trường hợp mạng bận việc phân bổ ñộ ưu tiên như vậy là không hợp lý bởi vì nó sẽ làm hiệu quả truyền của tất cả các luồng cùng giảm xuống. Do ñó tùy theo mức ñộ bận của môi trường truyền, các luồng dữ liệu sẽ ñược gán lại ñộ ưu tiên một cách hợp lý, sao cho ñảm bảo rằng việc truyền của luồng dữ liệu quan trọng phải có hiệu quả cao, và cố gắng truyền dữ liệu của luồng có ñộ quan trọng nhỏ hơn một mức có thể. Khóa luận chia thành năm chương. Chương 1. Giới thiệu tổng quan về dịch vụ video streaming, cơ chế phân tầng trong video streaming và ñảm bảo chất lượng dịch vụ truyền video streaming. Chương 2. Mô tả tổng quan về 802.11 MAC và chuẩn 802.11e ñồng thời giới thiệu và nhận xét về việc truyền video streaming trong 802.11e Chương 3. Đi sâu phân tích và chứng minh sự cần thiết của việc gán ñộ ưu tiên ñộng cho các luồng video streaming. Sau ñó sẽ trình bày giải pháp ñưa ra và nhận xét về giải pháp Chương 4. Tiến hành ñánh giá giải pháp gán ñộ ưu tiên ñộng cho các luồng video streaming với chuẩn ieee 802.11e bằng cách xây dựng thí nghiệm mô phỏng trên bộ công cụ mô phỏng ns2. Chương 5. Kế luận và nêu hướng nghiên cứu tiếp theo. 1 Chương 1. Tổng quan về video streaming 1.1. Giới thiệu về video streaming Video streaming là phương thức chuyển giao dữ liệu video ở dạng nén trên Internet một cách ñều ñặn và liên tục, sao cho người dùng không cần ñợi tới khi có toàn bộ tập tin mới có thể xem ñược nội dung của nó mà có thể bắt ñầu hiển thị các dữ liệu ña phương tiện khi mà một phần dữ liệu ñã ñược nhận. Người dùng phải dùng một chương trình ñặt biệt nó có thể giải nén dữ liệu và phân phối dữ liệu hình ảnh cho mành hình cũng như âm thanh tới loa. Video streaming ñược phát triển dựa trên hai công nghệ chủ chốt ñó là các công nghệ mã hóa video và các công nghê tăng khả năng mở rộng việc phân phối video. Hình 1.1. Kiến trúc hệ thống video streaming Ban ñầu dữ liệu thô ñược nén lại thông qua bộ nén dữ liệu, và ñược lưu trữ tại thiết bị lưu trữ bên trong server. Sau ñó khi có yêu cầu từ client thì server sẽ lấy các dữ liệu tương ứng ñã ñược nén lại trong thiết bị lưu trữ, và chuyển giao tới cho bộ phận ñiều khiển chất lượng chất lượng dịch vụ tầng ứng dụng. Bộ phận này sẽ tùy vào yêu cầu ứng dụng, tình trạng mạng ñể tạo các dòng lưu lượng hợp lý, sau ñó sẽ ñẩy các luồng dữ liệu xuống cho tầng giao vận (transport layer). Các giao thức tầng giao vận sẽ có trách nhiệm gửi dữ liệu thông qua Internet tới client. Khi các gói tin ñược lưu Raw Video Raw Audio Internet (Continuous media distribution services) Streaming Server Client/Receiver Storage Device Compressed Video Compressed Audio Application-layer QoS Control Video Compression Audio Compression Transport Protocol Video Decoder Audio Decoder Application-layer QoS Control Transport Protocol Media Syschronization 2 chuyển trên mạng, nó có thể bị mất mát hoặc là có ñộ trễ lớn khi mạng bị tắc nghẽn. Để hỗ trợ chất lượng video/audio truyền tải, các dịch vụ hỗ trợ truyền thông ña phương tiện liên tục ñược triển khai (ví dụ như caching …). Khi các gói tin ñến ñược client thành công, nó ñược truyền lên tầng giao vận, rồi tiếp ñó là bộ phận ñiều khiển chất lượng dịch vụ tầng ứng dụng. Sau ñó chúng ñược giải mã ñể cho ra các dữ liệu thô ban ñầu, tiếp theo ñể có thể sử dụng ñược những dữ liệu này, cần phải sử dụng ñến bộ ñồng bộ hóa ña phương tiện ñể ñồng bộ video và audio một cách chuẩn xác. Vậy tức là mỗi một hệ thống video streaming cần thiết phải có sáu thành phần tương ứng với sáu bước thao tác như trên, bây giờ ta sẽ ñi cụ thể từng thành phần ñó. 1.1.1. Nén dữ liệu Các dữ liệu trong streaming server luôn luôn phải ñược nén trước khi truyền ñể giảm thiểu dung lượng truyền trên mạng. Đồng thời, khi dữ liệu ñược nhận ở client cũng phải thực hiện thao tác giải nén ñể thu ñược dữ liệu gốc. Có hai kiểu nén dữ liệu cơ bản là phương pháp nén không mở rộng (non-scalable compress), và phương pháp nén mở rộng (scalable compress). Phương pháp nén không mở rộng : Trong phương pháp nén không mở rộng, dữ liệu thu ñược sau khi nén là một chuỗi bit. Chuỗi bit này ñược gửi tới bên nhận, sau ñó quá trình giải nén ñược thực thi trên chuỗi bit và kết quả thu ñược là dữ liệu tương ứng với dữ liệu gốc ở bên gửi. Raw video DCT Q VLC Compressed Bit-stream Compressed Bit-stream DCT Q VLC Decoded video DCT: Discrete Cosine Transform Q: Quantization VLC: Variable Length Coding VLD: Variable Length Decoding IQ: Inverse Quantization IDCT: Inverse DCT Hình 1.2. (a) nén không mở rộng ; (b) giải nén không mở rộng 3 Phương pháp nén mở rộng : Trong phương pháp nén mở rộng gốc ñược chia thành các luồng con, trong ñó có một luồng ñược gọi là luồng cơ bản, khi thực hiện quá trình giải nén nó không phụ thuộc vào bất kỳ một luồng con nào khác, và cung cấp chất lượng video ở dạng thô. Các luồng con khác gọi là luồng mở rộng, việc giải nén chúng phải phụ thuộc vào luồng cơ bản, và chúng cung cấp chất lượng video tốt hơn. Luồng toàn phần (kết hợp của tất cả các luồng ) sẽ cung cấp chất lượng video tốt nhất. 1.1.2. Điều khiển chất lượng dịch vụ tầng ứng dụng Phần này mô tả các kỹ thuật ñiều khiển tắc nghẽn và ñiều khiển lỗi (chỉ áp dụng ở các hệ thống ñầu cuối và không có bất kỳ yêu cầu nào với mạng) Raw Video DCT Q VLC Base Layer Compressed Bit-stream IQ Q VLC Enhancement Layer Compressed Bit-stream - (a) Base Layer Compressed Bit-stream Enhancement Layer Compressed Bit-stream VLD VLD IQ IQ IDCT IDCT Base Layer Decode Video Enhancement Layer Decode Video (b) Hình 1.3. (a) nén mở rộng ; (b) giải nén không mở 4 1.1.2.1. Điều khiển tắc nghẽn Nội dung chính của ñiều khiển tắc nghẽn là làm giảm ñộ trễ và mất gói tin. Cơ chế của nó dựa trên ñiều khiển tốc ñộ truyền (rate control) và ñịnh hình tỷ lệ (rate shaping). Điều khiển tốc ñộ truyền là kỹ thuật ñể giảm thiểu một cách nhỏ nhất có thể sự tắc nghẽn, bằng cách ñiều chỉnh tốc ñộ truyền video dựa vào tình trạng hiện thời của mạng. Có ba loại ñiều khiển tốc ñộ truyền là : căn cứ vào bên gửi, căn cứ vào bên nhận, và phương pháp kết hợp. a. Phương pháp căn cứ vào bên gửi : Trong phương pháp này, bên gửi chịu trách nhiệm ñiều chỉnh tốc ñộ truyền dữ liệu. Dựa vào thông tin từ các gói tin phản hồi, bên gửi có thể xác ñịnh ñược tình trạng hiện thời của mạng, từ ñó có thể ñiều chỉnh tốc ñộ truyền một cách hợp lý. Kỹ thuật này có thể sử dụng trong cả truyền unicast cũng như multicast. Hình 1.5. (a) Truyền video unicast ; (b) Truyền video multicast Quality of service Congestion control Error control Hình 1.4. mô hình ñiều khiển chất lượng dịch vụ 5 Với truyền video unicast có hai phương thức thực thi việc ñiều chỉnh tốc ñộ truyền bên gửi, ñó là dựa trên cơ sở thăm dò và dựa trên mẫu. • Phương thức dựa trên cơ sở thăm dò (probe-base) : Tư tưởng chính của phương thức này chính là việc duy trì tỷ lệ mất gói ở dưới một ngưỡng nhất ñịnh. Có hai cách ñể thiết lập tốc ñộ truyền một là tăng theo cấp số cộng và giảm theo cấp số nhân, hai là tăng theo cấp số nhân và giảm theo cấp số nhân. • Phương thức dựa trên mẫu (model-base) : Dựa vào mô hình của giao thức TCP, thông lượng của bên gửi sẽ ñược xác ñịnh theo công thức : pRTT MTU × × = 22.1λ Trong ñó : λ: thông lượng. MTU: kích thước gói tin ñược dùng trong kết nối. RTT: round-trip time của một kết nối. p: tỷ lệ mất gói tin của kết nối. Vì lý do dựa trên mô hình của giao thức TCP mà phương thức này còn ñược gọi là phương thức ñiều chỉnh tốc ñộ truyền “TCP-frendly”. Với truyền video multicast, bên gửi sẽ sử dụng một kênh truyền ñơn ñể gửi dữ liệu cho các bên nhận, trong trường hợp multicast thì chỉ có ph