Tài liệu Khóa luận Đảm bảo chất lượng phục vụ cho truyền video streaming trong mạng không dây 802.11: ĐẠ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 ý ...
63 trang |
Chia sẻ: haohao | Lượt xem: 1173 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Khóa luận Đảm bảo chất lượng phục vụ cho truyền video streaming trong mạng không dây 802.11, để tải tài liệu gốc về máy 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
KHỐ 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
KHỐ 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 Hồ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 hồ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 Hồ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 Hồ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ư
hồn thành khĩa luận này.
Mặc dù đã rất cố gắng hồ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à hồ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 số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ĩ
tồ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 tồ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ương thức dựa trên cơ
sở thăm dị được sử dụng (điều chỉnh tỉ lệ truyền sao cho luơn nằm dưới một ngưỡng
nhất định). Phương thức sử dụng kênh chung này rất hiệu quả cho các bên nhận sử
dụng chung 1 kênh. Tuy nhiên, phương pháp này thiếu tính mềm dẻo bởi vì các yêu
cầu từ các bên nhận là khác nhau, băng thơng truy cập kênh chung của các bên cũng
khác nhau.
b. Phương pháp căn cứ vào bên nhận :
Bên nhận kiểm sốt tốc độ nhận dữ liệu bằng cách thêm hoặc bớt các kênh.
Thơng thường, phương pháp này sử dụng trong việc truyền multicast. Tương tự như
trong phương pháp căn cứ vào bên gửi, phương pháp căn cứ vào bên nhận cũng sử
dụng 2 phương thức : phương thức dựa trên cơ sở thăm dị và phương thức dựa trên
mẫu.
6
• Phương thức dựa trên cơ sở thăm dị bao gồm hai phần : Khi khơng phát hiện ra
tắc nghẽn, bên nhận sẽ điều tra mơi trường bằng cách thêm một kênh truyền, nếu như
vẫn khơng phát hiện ra tắc nghẽn thì xem như việc thêm kênh truyền là thành cơng.
Ngược lại nếu sau khi thêm mà phát hiện tắc nghẽn, thì bên nhận phải hủy ngay kênh
truyền vừa thêm vào. Khi phát hiện ra mơi trường đang tắc nghẽn, bên gửi tự động xĩa
một hoặc vài kênh truyền để giảm tốc độ truyền tải.
• Phương thức dựa trên mẫu vẫn sử dụng cơng thức tính thơng lượng như ở
phương pháp căn cứ vào bên gửi, khơng cĩ gì khác biệt
c. Phương pháp kết hợp :
Phương pháp này là sự tổng hợp của cả hai phương pháp căn cứ vào bên gửi và
căn cứ vào bên nhận. Tức là bên nhận vẫn điều chỉnh tốc độ nhận bằng cách thêm bớt
các kênh truyền, đồng thời bên gửi cũng thiết lập tốc độ gửi hợp lý dựa vào các gĩi tin
phản hồi.
Định hình tỷ lệ (rate shaping) :
Mục tiêu của định hình tỷ lệ là cân đối tỷ lệ giữa tốc độ truyền luồng dữ liệu
trước khi nén và tốc độ hiện thời của mạng. Bởi vì, tốc độ video đã lưu ở máy chủ cĩ
thể khơng phù hợp với băng thơng hiện thời của mạng. Bộ đình hình tỷ lệ chỉ được sử
dụng trong trường hợp, phương pháp điều khiển tắc nghẽn là phương pháp căn cứ vào
bên gửi. Cĩ một số phương pháp định hình tỷ lệ như sau :
Lọc mã (Codec filter) : Sử dụng để giải nén và nén video. Thơng thường
phương thức này dùng để chuyển mã giữa các phương thức nén khác nhau. Việc giải
nén và nén lại là khơng hồn tồn (khơng giản nén, nén lại tồn bộ video) mà chỉ thao
tác dựa vào phương thức nén.
Lọc bỏ khung (Frame-dropping filter) : Phân biệt các loại khung và hủy các
khung dựa vào việc phân chia độ quan trọng của chúng (ví dụ thứ tự hạ dần là B-
frame, P-frame, I-frame). Bộ lọc bỏ frame dùng để làm giảm tốc độ truyền video bằng
cách từ chối một số khung và truyền các khung cịn lại ở tốc độ thấp.
Lọc bỏ tầng (Layer-dropping filter) : Phân biệt các tầng và loại bỏ các tầng tùy
theo độ quan trọng của chúng. Việc loại bỏ các tầng theo thứ tự từ các tầng mở rộng
cao nhất tới tầng cơ sở.
Lọc theo tần số (Frequency filter) : thực hiện các thao tác ở tầng nén dữ liệu.
Cơ chế của lọc theo tần số gồm ba thành phần :
7
- Lọc thấp : loại bỏ hệ số DCT ở những tần số cao
- Lọc giảm màu : thực hiện cơng việc giống như ở phần lọc thấp, tuy nhiên nĩ chỉ
thao tác trên thơng tin về độ màu sắc của video.
- Lọc màu thành khối trống : loại bỏ tất cả các thơng tin về màu sắc của video.
Trong MPEG nĩ chỉ đơn giản là thay thế mỗi khối chứa thơng tin màu sắc bởi khối
trống. Khơng giống với lọc bỏ khối, lọc theo tầng sẽ làm giảm bớt băng thơng mà
khơng tác động tới tốc độ truyền khối. Nhưng cái giá phải trả là chất lượng của khối sẽ
bị giảm đi.
Lọc lượng tử hĩa lại (Re-quantization filter) : Thực thi các thao tác ở tầng nén dữ
liệu. Đầu tiên, bộ lọc trích các hệ số DCT từ các dịng video đã được nén thơng qua
các kỹ thuật tương tự như bỏ lượng tử hĩa. Sau đĩ, bộ lọc lượng tửng hĩa lại các hệ số
DCT với các bước lượng tử hĩa lớn hơn, điều đĩ tạo nên hiệu quả là giảm bớt tốc độ.
1.1.2.2. Điều khiển lỗi
Bao gồm bốn cơ chế chính FEC (forward error correction), truyền lại
(retransmission), mã hĩa lỗi đàn hồi (Error-resilient encoding) và che dấu lỗi (Error
concealment.
a. FEC :
Nguyên lý của FEC là thêm thơng tin vào thơng điệp gốc để cĩ thể xây dựng lại
thơng điệp trong trường hợp cĩ mất mát xảy ra. Các loại cơ bản của thơng tin thêm vào
gồm : Mã hĩa kênh (channel coding), Mã hĩa nguồn (source coding-based FEC) và
Mã hĩa kết hợp nguồn/kênh (joint source/channel coding). Ta sẽ tìm hiểu từng loại
thơng tin thêm này.
• Mã hĩa kênh (channel coding) : Trong các ứng dụng Internet, mã hĩa kênh
thơng thường sử dụng với thuật ngữ mã khĩa khối (block codes). Mỗi một video ban
đầu chia ra làm các đoạn (segment). Mỗi một đoạn tương ứng với k gĩi tin. Sau đĩ
ứng với mỗi đoạn, phương pháp mã hĩa khối được áp dụng cho k gĩi tin để tạo ra một
khối n gĩi tin (n>k). Để chuyển đổi tuyệt đối một đoạn, một người dùng chỉ cần bất kỳ
k gĩi tin trong số n gĩi tin kể trên.
• Mã hĩa nguồn (source coding-based FEC - SFEC) : Là phát kiến gần đây nhất
trong số các phương pháp FEC dành cho việc truyền video trên Internet. Giống mã hĩa
kênh, mã hĩa nguồn cũng thêm thơng tin dư thừa để phục hồi. Ví dụ, gĩi tin thứ n sẽ
8
chứa nhĩm khối thứ n (group of blocks) và thơng tin dư thừa của nhĩm khối thứ n-1.
Đĩ là một phiên bản nén của nhĩm khối thứ n-1 với lượng tử lớn hơn.
• Mã hĩa kết hợp nguồn/kênh : là một cách tiếp cận để tối ưu phân bổ tỷ lệ giữa
mã hố nguồn và mã hố kênh.
b. Truyền lại với ràng buộc độ trễ :
Khi bên nhận phát hiện mất gĩi N, nếu (Tc + RTT + Ds < Td(N)) bên nhận sẽ
gửi yêu cầu cho bên gửi để gửi lại gĩi N. Ở đây Tc là thời gian hiện tại, RTT là round
trip time, Ds là một thuật ngữ yếu, Ds cĩ thể bao gồm dung sai của sự ước lượng RTT,
thời gian trả lời của bên gửi, thời gian giải mã, T(N) là thời gian mà N phải hiển thị.
c. Mã hĩa lỗi đàn hồi :
Mục đích là để giảm thiểu lỗi của video đã nén do việc mất gĩi tin. Chuẩn chung
của phương pháp mã hĩa lỗi đàn hồi bao gồm đồng bộ lại nhãn, chia dữ liệu, khơi
phục dữ liệu. Nhưng, những cách thức này lại khơng phù hợp với mơi trường wireless
cũng áp dụng được cho mơi trường internet. Do vậy, chúng ta sẽ khơng xét các cơng
cụ đàn hồi lỗi. Thay vào đĩ chúng ta sẽ trình bày phương thức mã hĩa đa mơ tả
(MDC), phương thức này phù hợp hơn với việc truyền video trên Internet.
Với MDC, một video gốc sẽ được mã hĩa thành nhiều luồng theo cách sau : Mỗi
một sự mơ tả cung cấp chất lượng cĩ thể chấp nhận được, kết hợp nhiều mơ tả lại với
nhau thì thu được chất lượng tốt hơn. Ưu điểm của MCD là :
- Cĩ tính kháng cự tốt với việc mất mát : Nếu một bên nhận nào đĩ chỉ nhận
được một mơ tả, thì nĩ vẫn cĩ thể thu được video với chất lượng chấp nhận được.
- Cĩ tính tăng cường chất lượng : Nếu một bên nhận nào đĩ nhận được nhiều mơ
tả khác nhau của video, thì nĩ cĩ thể xây dựng được video cĩ chất lượng tốt bằng cách
kết hợp các mơ tả lại với nhau (càng nhiều mơ tả thì chất lượng càng tốt).
Tuy nhiên, những ưu điểm đĩ cĩ cái giá của nĩ. Để tạo một mơ tả cung cấp các
chất lượng chấp nhận được, mỗi mơ tả cần phải đưa ra các thơng tin cần thiết về truyền
hình ban đầu. Thêm vào đĩ, mặc dù kết hợp các mơ tả để cung cấp chât lượng tốt hơn,
sự đúng đắn của việc kết hợp các mơ tả cĩ thể làm cho chất lượng nén sau này giảm đi.
9
1.1.2.3. Che dấu lỗi
Mã hĩa lỗi đàn hồi được thực thi bên gửi bằng cách tăng cường khả năng cự với
việc mất mát cho video nén ngay cả khi cĩ thể khơng cĩ sự mất mát gĩi tin. Người ta
cịn gọi đây là phương pháp phịng bị, một cách tiếp cận khác gọi là phương pháp
chống mất mát, được thực thi ở phía nhận khi mà việc mất gĩi tin là thực sự xảy ra
phương pháp này gọi là che dấu lỗi. Về cơ bản, phương pháp này che dấu sự mất mát
dữ liệu bằng cách trình diễn video sao cho khơng làm cho người xem nhận ra.
Cĩ hai phương thức thực thi việc che dấu lỗi, đĩ là nội suy theo khơng gian và
nội suy theo thời gian. Trong phương thức nội suy khơng gian, các dữ liệu tại những
điểm ảnh bị mất cĩ thể được nội suy thơng qua những hàng xĩm của nĩ. Cịn nội suy
thời gian thì sử dụng các dữ liệu của các frame nhận được ngay trước nĩ để xây dựng
lại dữ liệu của frame bị mất.
1.1.3. Dịch vụ phân phối phương tiện truyền thơng liên tục
Sự hỗ trợ từ tầng mạng cĩ thể cải thiện được độ trễ cũng như sự mất mát gĩi tin.
Việc streaming video cũng như audio được xếp vào truyền thơng liên tục bởi vì chúng
bao gồm một hàng đợi phân ngạch truyền thơng. Chúng truyền các thơng tin sao cho
đủ để trình bày theo thời gian. Xây dựng trên cơ sở Internet (giao thức IP), dịch vụ
phân phối phương tiện truyền thơng liên tục hướng tới mục đích là cung cấp chất
lượng dịch vụ, và đạt được hiệu quả trong việc truyền video /audio trên cơ chế cố gắng
tối đa của Internet. Dịch vụ phân phối phương tiện truyền thơng liên tục bao gồm 3 cơ
chế chính là lọc dữ liệu ở tầng mạng, multicast trên tầng ứng dụng và nhân bản nội
dung.
a. Lọc dữ liệu ở tầng mạng
Như kỹ thuật điều khiển tắc nghẽn, lọc dữ liêu ở tầng mạng cố gắng đạt được
chất lượng truyền thơng tối đa trong điều kiện mạng tắc nghẽn. Bộ lọc ở máy chủ
truyền thơng cĩ thể điều chỉnh tỷ lệ truyền video streaming theo tình trạng của mạng.
Tuy nhiên, máy chủ quá bận nên khơng điều khiển được. Do đĩ, các nhà cung cấp dịch
vụ cĩ thể cung cấp các bộ lọc ở mức mạng.
10
Hình 1.6. Bộ lọc được cài đặt ở tầng mạng
Hình 1.6 trên mơ tả một ví dụ về việc đặt bộ lọc ở tầng mạng. Các node được
đánh nhãn “R” thơng báo cho bộ định tuyến rằng khơng cĩ thơng tin về định dạng
video streaming và cĩ thể ngẫu nhiên vứt bỏ gĩi tin. Các Node cĩ nhãn “Fillter” nhận
yêu cầu từ máy khách và điều chỉnh luồng gửi bởi máy chủ tương ứng. Giải pháp này
cho phép các nhà cung cấp dịch vụ cĩ thể thay thế bộ lọc trên mỗi node bằng bộ lọc ở
mạng. Hơn nữa, cĩ thể cung cấp nhiều bộ lọc trên đường từ một máy chủ đến máy
khách.
Hình 1.7. Mơ hình hệ thống của bộ lọc ở tầng mạng.
Để mơ phỏng vận hành của bộ lọc, mơ hình hệ thống được chỉ ra trong Hình 1.7.
Mơ hình bao gồm máy chủ, máy khách và ít nhất một bộ lọc và hai kênh ảo giữa
chúng. Một kênh ảo dùng để điều khiển, kênh khác dùng cho dữ liệu. Các kênh tương
ứng tồn tại thành cặp với các bộ lọc. Kênh điều khiển cĩ hai hướng và cĩ thể là các kết
nối TCP. Mơ hình trên chỉ cho phép máy khách cĩ thể kết nối với chỉ một máy (bộ lọc
cuối cùng), và sẽ hoặc chuyển yêu cầu hoặc thực hiện luơn yêu cầu trên chúng. Sự vận
hành của bộ lọc trên dữ liệu phẳng bao gồm: Nhận video streaming từ máy chủ hoặc
bộ lọc trước, thực hiện các yêu cầu, truyền tiếp các yếu cầu tới bộ lọc trước của nĩ.
Thơng thường, các bộ lọc loại frame được sử dụng trong lọc tầng mạng. Bên
nhận cĩ thể thay đổi băng thơng của video streaming bằng cách gửi yêu cầu tới bộ lọc
để tăng/giảm tỷ lệ loại bỏ frame. Để quyết định xem bộ lọc nên tăng hay giảm băng
11
thơng, bên nhận liên tục đo đạc tỷ lệ mất gĩi tin p. Dựa vào tỷ lệ mất gĩi tin, cơ chế
điều khiển tỷ lệ cĩ thể được thực hiện. Nếu tỷ lệ mất gĩi tin lớn hơn ngưỡng α, máy
khách sẽ yêu cầu bộ lọc tăng tỷ lệ loại frame. Nếu tỷ lệ đĩ thấp hơn ngưỡng khác β (β
< α) thì bên nhận sẽ yêu cầu bộ lọc giảm tỷ lệ loại frame.
Ưu điểm của bộ lọc loại gĩi tin sử dụng trên tầng mạng là:
- Nâng cao chất lượng truyền thơng: Ví dụ, khi một video streaming từ kết nối
luồng trên với băng thơng cịn lại nhiều hơn tới kết nối luồng dưới với băng thơng cịn
lại ít hơn, sử dụng bộ lọc loại frame tại điểm kết nối (giữa kết nối luồng dưới và kết
nối luồng trên) cĩ thể nâng cao chất lượng truyền thơng. Bời vì bộ lọc hiểu rằng định
dạng của video streaming và cĩ thể loại bỏ các gĩi tin theo cách tốt nhất đảm bảo chất
lượng luồng thay vào ngắt luồng.
- Hiệu quả băng thơng: bộ lọc cĩ thể giúp lưu trữ tài nguyên của mạng bằng việc
loại bỏ các frame tới trễ.
b. Multicast tầng ứng dụng
Các thiết kế trước đĩ cho video streaming trên Internet thích hợp với cách truyền
thơng unicast (điểm-điểm) như email, trao đổi file và trình duyệt Web, nhưng khĩ cĩ
thể hỗ trợ hiệu quả với việc truyền nội dung lớn.
Chính vì vậy mà cơ chế truyền multicast đã dần thay thế với những ưu điểm vượt
trội. Nĩ giảm tải cho máy chủ do mỗi node mạng cĩ thể đĩng vai trị nhận dữ liệu và
nguồn để tiếp tục truyền dữ liệu sang các node khác.
c. Nhân bản nội dung
Một kỹ thuật quan trọng cho nâng cao độ mở rộng của các hệ thống truyền thơng
là việc nhân bản nội dung. Nhân bản nội dung cĩ hai loại: lưu trữ và phản chiếu. Cả
hai loại đều tìm một nội dung ở các máy khác gần đĩ và cĩ ưu điểm:
- Giảm sử dụng băng thơng trong kết nối mạng.
- Giảm tải trên các máy chủ truyền thơng.
- Giảm độ trễ của máy khách.
- Tăng độ sẵn cĩ.
12
1.1.4. Máy chủ (streaming server)
Máy chủ luồng đĩng một vai trị quan trọng trong việc cung cấp dịch vụ video
streaming. Để đưa ra những dịch vụ chất lượng cao, máy chủ luồng cần phải xử lý dữ
liệu đa phương tiện với sự ràng buộc về thời gian. Ngồi ra, máy chủ luồng cũng cần
hỗ trợ các hoạt động điều khiển VCR. Hơn nữa, nĩ cũng cần cung cấp chức năng
truyền thơng kiểu đồng bộ.
Để làm được điều đĩ, thơng thường, máy chủ luồng gồm các thành phần sau:
- Cơ cấu truyền: Một cơ cấu truyền tham gia vào tầng ứng dụng và các giao thức
giao vận được thực hiện trong máy chủ. Thơng qua cơ cấu truyền, các máy khách cĩ
thể giao tiếp với một máy chủ và nhận nội dung đa phương tiện một cách liên tục và
đồng bộ.
- Hệ điều hành: Khác với hệ điều hành thơng thường, hệ điều hành cho máy chủ
luồng cần phải cĩ thời gian thực an tồn cho các ứng dụng luồng.
- Hệ lưu trữ: phải hỗ trợ lưu trữ truyền thơng liên tục và cĩ thể truy cập được.
1.1.5. Các giao thức video streaming
Nhiều giao thức đã được thiết kế và chuẩn hố cho giao tiếp giữa máy chủ luồng
và máy khách. Theo tính năng, các giao thức này liên quan trực tiếp đến video
streaming Internet và cĩ thể chia thành ba loại sau:
- Giao thức tầng mạng: Cung cấp dịch vụ mạng cơ bản như đánh địa chỉ mạng.
Giao thức Internet (IP) phục vụ như giao thức tầng mạng cho việc video streaming trên
Internet.
- Giao thức tầng giao vận: Cung cấp các chức năng truyền tải giữa các điểm đầu
cuối trong ứng dụng video streaming. Các giao thức bao giồm UDP, TCP, giao thức
giao vận thời gian thực (RTP), giao thức điều khiển thời gian thực (RTCP). UDP và
TCP là hai giao thức tầng giao vận thấp nhất trong khi RTP và RTCP là các giao thức
tầng giao vận cao hơn.
- Giao thức điều khiển phiên: Định nghĩa thơng điệp và cơ chế để điều hiển dữ
liệu truyền thơng trong một phiên. RTSP và giao thức thiết lập phiên (SIP – session
initiation protocol) là các giao thức tầng giao vận.
13
1.1.6. Cơ chế đồng bộ video streaming
Đồng bộ video streaming chính là việc bảo trì mối quan hệ tạm thời giữa một
luồng dữ liệu với một số luồng truyền thơng khác. Cĩ ba mức của đồng bộ gọi là đồng
bộ trong luồng, đồng bộ luồng và đồng bộ đối tượng.
- Đồng bộ luồng trong luồng: Tầng thấp nhất của truyền thơng liên tục hoặc dữ
liệu thời gian thực là tầng dữ liệu truyền thơng. Đơn vị của tầng truyền thơng là các
khối dữ liệu logic như frame truyền hình/truyền thanh. Đồng bộ ở mức này được gọi là
đồng bộ luồng dư; bảo trì sự liên tục của các đơn vị dữ liệu. Khơng cĩ đồng bộ luồng
dư, trình diễn của luồng cĩ thể bị ngắt bởi việc dừng và sự sai khác.
- Đồng bộ luồng: tầng hai của dữ liệu thời gian thực là tầng luồng. Đơn vị của
tầng luồng chính là một luồng. Đồng bộ ở tầng này chính là đồng bộ luồng, cĩ nhiệm
vụ bảo trì mối quan hệ giữa các truyền thơng liên tục. Khơng cĩ đồng bộ luồng, sự
khơng khớp giữa các luồng cĩ thể gây ra lỗi. Ví dụ, người dùng sẽ thấy khĩ chịu khi
việc di chuyển mơi người nĩi khơng tương ứng với âm thanh.
- Đồng bộ đối tượng: Tầng cao nhất của tài liệu đa phương tiện là tầng đối tượng,
đĩ là sự kết hợp luồng và dữ liệu thời gian thực như chữ và hình ảnh. Đồng bộ ở tầng
này gọi là đồng bộ đối tượng. Mục đích của nĩ là bắt đầu và kết thúc của trình diễn
thời gian thực trong một khoảng thời gian vừa phải, nếu tại các điểm định nghĩa trước
của đối tượng truyền thơng độc lập thời gian cĩ thể đạt được. Khơng cĩ sự đồng bộ
này, người xem của việc trình diễn slide cĩ thể khĩ chịu vì tiếng bình cho một slide thì
slide khác đã hiển thị.
1.2. Kỹ thuật phân tầng trong video streaming
Việc mã hĩa video theo cách thơng thường phải xác định các tham số kích cỡ
khung, tốc độ khung, tốc độ dữ liệu và chất lượng video. Một vấn đề nảy sinh là các
tham số này cố định khi mã hĩa và rất khĩ thay đổi. Giả sử như mã hĩa chuẩn với tốc
độ 6Mb/s sau đĩ lưu trữ video đã nén ở server, khi nĩ được yêu cầu streaming bên
nhận mong muống tốc độ nhận dữ liệu sẽ là 6Mb/s nhưng vì một lý do nào đĩ tốc độ
mà đường truyền cung cấp chỉ tối đa là 4Mb/s. Khi đĩ, server phải thực hiện chuyển
mã để phù hợp với các tham số hiện tại, điều này địi hỏi sự tính tốn rất lớn. Cĩ một
phương pháp cĩ thể giải quyết vấn đề này là tạo ra nhiều bản sao của video trên server
để phục vụ cho yêu cầu khác nhau từ người dùng. Tương tự như vậy, khi người xem
yêu cầu chất lượng video khác nhau. Điều này là rất quan trọng khi thương mại hĩa
bởi vì mỗi lớp người dùng, mỗi lớp khách hàng lại cĩ một độ ưu tiên khác nhau. Từ
14
đĩ, dẫn đến việc cung cấp chất lượng cho các lớp khách hàng là khác nhau. Để giải
quyết những vấn đề này mã hĩa video mở rộng sinh ra, nĩ được sử dụng đầu tiên trong
MPEG-2 và phát triển hồn thiện dần.
Mã hĩa video mở rộng là một kỹ thuật cho phép nén video một lần và cung cấp
việc giải nén video với các thơng số như tốc độ dữ liệu, tốc độ khung, độ phân giải và
chất lượng video khác nhau. Người ta cịn gọi đây là phương pháp mở rộng động bởi
vì các tham số trên cĩ thể thay đổi bất kỳ thời gian nào trong quá trình truyền. Ví dụ,
khi mạng tắc nghẽn thì cĩ thể truyền với tốc độ thấp hơn, và khi mạng rảnh rỗi thì cĩ
thể chuyển sang truyền với tốc độ cao hơn. Dưới đây là mơ hình cấu trúc mã hĩa
video mở rộng.
Hình 1.8. Cấu trúc mã hĩa video mở rộng
Mơ hình mã hĩa video mở rộng dữ liệu video được mã hĩa vào một tầng cơ sở
(base layer) và một hoặc một vài tầng mở rộng (enhancement layer). Tầng cơ sở được
mã hĩa với tốc độ thấp đủ để giải mã dịng video, do vậy, chất lượng video được giải
nén ra ứng với nĩ cĩ chất lượng thấp nhất. Việc giải mã tầng cơ sở là độc lập khơng
phụ thuộc vào bất kỳ một dữ liệu nào khác. Trong khi đĩ tầng mở rộng được mã hĩa
với tốc độ cao hơn, mục đích của nĩ là làm cải thiện chất lượng video ở tầng cơ sở, tuy
nhiên, việc giải mã các tầng mở rộng là phụ thuộc vào tầng cơ bản. Ví dụ, video gốc
mã hĩa sử dụng ba tầng : tầng cơ sở với tốc độ là 64kb/s, tầng mở rộng thứ nhất với
tốc độ là 128kb/s và tầng mở rộng thứ hai với tốc độ là 128kb/s. Ở bên nhận cĩ thể
giải mã ở tốc độ 64kb/s (tức là chỉ sử dụng tầng cơ sở) thì kết quả giải mã cho ra video
cĩ chất lượng thấp nhất. Nếu bên nhận giải mã ở tốc độ 192kb/s (sử dụng tầng cơ sở
và tầng mở rộng thứ nhất) thì kết quả cho ra là video cĩ chất lượng trung bình. Và để
nhận được video cĩ chất lượng cao nhất thì bên nhận phải giải mã ở tốc độ 320kb/s (sử
dụng tầng cơ sở và hai tầng mở rộng).
15
Với phương pháp phân tầng này, việc truyền video streaming khơng cần tới các
phương thức mã hĩa lại để tương thích với điều kiện mơi trường. Một mặt nữa, việc
phân tầng làm cho vấn để cung cấp dịch vụ hướng người dùng trở nên dễ dàng. Với
lớp người dùng mà cĩ nhu cầu cũng như độ ưu tiên cao hơn, server sẽ gửi cho họ
nhiều hơn các tầng mở rộng từ đĩ tăng chất lượng video ở đầu cuối. Với lớp người
dùng cĩ nhu cầu và độ ưu tiên thấp hơn, server vẫn cĩ thể cung cấp cho họ một dịch
vụ video bình thường nhưng với chất lượng thấp hơn bằng cách giảm bớt gửi các
luồng dữ liệu ở các mở rộng.
1.3. Đảm bảo chất lượng dịch vụ truyền video streaming.
Dịch vụ video streaming yêu cầu một số điều kiện kiên quyết sau :
• Bandwidth : Mỗi một ứng dụng video streaming đều cĩ một yêu cầu về băng
thơng nhỏ nhất để duy trì ứng dụng. Tuy nhiên hệ với cơ sở hạ tầng Internet hiện tại,
khơng cĩ bất kỳ cơ chế nào để đáp ứng điều kiện này.
• Delay : Là khái niệm độ trễ của các gĩi tin ở hai đầu cuối, hoặc cũng cĩ thể bao
gồm cả thời gian giải mã và hiển thị video. Nếu gĩi tin khơng đến được đúng thời
điểm thì video cĩ thể bị dừng gây cảm giác khĩ chịu cho người dùng
• Loss : Mất gĩi tin là việc khơng thể tránh khỏi trên mơi trường Internet. Việc
mất gĩi tin cĩ thể gây ra hiện tượng méo mĩ hay mất đi sự liên kết trong việc hiển thị
video.
Trong mơ hình hệ thống video streaming như đã trình bày ở phần trước, hầu như
tất cả các thành phần của hệ thống đều thực thi những thao tác kỹ thuật để thu được
hiệu quả cao trong việc duy trì băng thơng, giảm độ trễ và khắc phục mất gĩi tin. Đây
cũng chính là tư tưởng của việc đảm bảo chất lượng dịch vụ trong video streaming.
Dịch vụ video streaming cĩ tồn tại và hoạt động một cách chất lượng hay khơng tất cả
phụ thuộc vào việc đảm bảo chất lượng dịch vụ.
Tuy nhiên, với những mơi trường mạng khác nhau trong những điều kiện khác
nhau thì cần cĩ thêm những cơ chế bổ sung cho việc này. Ví dụ, trong mạng LAN thì
việc đảm bảo chất lượng dịch vụ cho video streaming cĩ thể đơn giản hơn là trong
mạng WLAN bởi vì bản chất mơi trường truyền của chúng là khác nhau. Do đĩ, các
mơi trường khác nhau cũng sẽ cĩ những phương thức khác nhau để làm sao đảm bảo
chất lượng dịch vụ tốt nhất ở hạ tầng, nhằm mục đích hỗ trợ tốt nhất cho các dịch vụ
sử dụng hạ tầng đĩ.
16
Chương tiếp theo ta sẽ đi nghiên cứu chuẩn IEEE 802.11e là chuẩn về đảm bảo
chất lượng dịch vụ trong mạng WLAN, để tìm hiểu xem phương pháp xây dựng ở hạ
tầng mạng khơng dây ra sao cĩ thể hỗ trợ cho dịch vụ video streaming trong điều kiện
mơi trường cĩ nhiều tác nhân gây ảnh hưởng xấu tới dịch vụ này.
17
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
2.1. Tổng quan về IEEE 802.11 MAC
Cũng giống như những chuẩn 802.x khác, IEEE 802.11 chỉ mơ tả chuẩn giao
thức ở tầng vật lý (PHY) và tầng điều khiển truy cập mơi trường truyền (medium
access control - MAC).
Tầng MAC thực thi khá nhiều nhiệm vụ nhưng nhiệm vụ chính và quan trọng
nhất là truy cập mơi trường truyền. Chuẩn IEEE 802.11 MAC bao gồm hai cơ chế truy
cập mơi trường truyền : thứ nhất là chức năng phối hợp phân tán DCF và thứ hai là
chức năng phối hợp điểm PCF. DCF sử dụng giao thức đa truy cập cảm nhận sĩng
mang tránh tắc nghẽn CSMA/CA (Carrier sense multiple access with conllision
avoidance). PCF sử dụng phương thức thăm dị với sự hỗ trợ của bộ phối hợp điểm
PC. Cả hai phương thức cĩ thể cùng được sử dụng trong một mạng BSS và sẽ được sử
dụng lần lượt xen kẽ nhau. Cơ chế DCF là bắt buộc trong khi PCF là tùy chọn. Vì việc
triển khai PCF phức tạp nên nhiều nhà sản xuất khơng hỗ trợ PCF.
2.1.1. Các khoảng liên khung (Inter-frame space)
Khoảng liên khung là khoảng thời gian giữa hai frame liên tiếp xuất phát từ một
trạm trong mạng khơng dây. Cĩ bốn loại khoảng liên khung tương ứng với bốn mức
độ ưu tiên truy cập kênh truyền khác nhau. Dưới đây là danh sách bốn loại IFS nĩi trên
sắp xếp theo thứ tự từ ngắn đến dài.
- SIFS (short inter-frame space)
- PIFS (PCF inter-frame space)
- DIFS (DCF inter-frame space)
- EIFS (extended inter-frame space)
18
Hình 2.1. Các khoảng liên khung IFS trong 802.11
a. Short Interframe Space (SIFS) :
Là khoảng thời gian nhỏ giữa các frame dữ liệu và ACK của nĩ. Chúng được sử
dụng cho các trạm cĩ độ ưu tiên cao nhất yêu cầu truy cập kênh truyền đầu tiên. Giá trị
này là cố định dựa vào tầng vật lý phía dưới. Thơng thường các dữ liệu được truyền
sau khoảng liên khung này là ACK (acknowledgement), RTS (Request to send) và
CTS (Clear to send) messages.
b. PCF inter-frame space (PCFS) :
PIFS được sử dụng bởi AP hoạt động trong PCF, khi bắt đầu chu kỳ khơng tranh
chấp CFP. Giá trị của PIFS nhỏ hơn DIFS và lớn hơn SIFS (DIFS > PIFS > SIFS), do
đĩ AP cĩ độ ưu tiên cao hơn các trạm khác do nĩ chỉ phải chờ khoảng PIFS ngắn hơn
DIFS.
Giá trị PIFS được tính thơng qua cơng thức : PIFS = SIFS + Slot time [4]
c. DCF inter-frame space (DIFS) :
Là khoảng liên khung sử dụng trong phương pháp truy cập kênh truyền DCF.
Các khung dữ liệu phải đợi một khoảng thời gian là DIFS mới được phép truyền đi.
Giá trị DIFS được tính theo cơng thức : DIFS = SIFS + 2 * Slot time [4]
d. Extended Interframe space (EIFS) :
Nếu frame đến kế trước cĩ lỗi thì trạm phải đợi một khoảng thời gian là EIFS
thay vì DIFS trước khi truyền frame.
EIFS được tính theo cơng thức : EIFS = SIFS + DIFS + ACKTxTime [4]
ACKTxTime là thời gian cần thiết để truyền một frame ACK
19
2.1.2. Chức năng phối hợp phân tán (Distributed Coordination Function - DCF)
Là phương pháp cơ bản sử dụng trong IEEE 802.11 MAC. DCF cịn được biết
đến như là cơ chế cảm nhận sĩng mang đa truy cập mơi trường truyền tránh tắc nghẽn
(CSMA/CA), sử dụng thủ tục quay lui ngẫu nhiên (backoff). Đồng thời, tất cả các gĩi
gửi đi đều được xác nhận bởi frame ACK và bên gửi sẽ gửi lại gĩi tin nếu khơng nhận
được frame ACK xác nhận từ bên nhận.
Khi một trạm muốn truyền dữ liệu, nĩ phải xác định là kênh truyền cĩ rỗi hay
khơng. Nếu rỗi thì nĩ được phép truyền ngay, cịn nếu mơi trường truyền được xác
định là bận thì trạm phải chờ cho đến khi phiên truyền đang tồn tại kết thúc, sau đĩ
trạm phải đợi một khoảng thời gian backoff ngẫu nhiên mới được phép truy cập kênh
truyền.
2.1.2.1. Thủ tục quay lui ngẫu nhiên (random backoff)
Hình 2.2. Thủ tục quay lui ngẫu nhiên trong DFC
Khi một trạm muốn truyền dữ liệu, nĩ sẽ kiểm tra xem trạng thái kênh truyền là
bận hay rỗi bằng các sử dụng các cơ chế cảm nhận sĩng mang (CS mechanism). Nếu
mơi kênh truyền là bận, trạm phải đợi cho tới khi mơi trường rỗi, sau đĩ trạm sẽ đợi
một khoảng thời gian chính bằng giá trị của DIFS trong trường hợp khung dữ liệu đã
truyền trước đĩ được xác định là khơng cĩ lỗi, hoặc nĩ phải đợi một khoảng thời gian
là EIFS nếu như phát hiện ra cĩ lỗi xảy ra khi nhận khung dữ liệu đã truyền trước đĩ.
Sau khoảng liên khung này , các trạm sẽ sinh ra một khoảng thời gian ngẫu nhiên và sẽ
giảm dần biến đếm backoff. Khi biến đếm backoff giảm đến 0, trạm sẽ được phép
truyền. Nếu kênh truyền được xác định là bận trong khoảng thời gian backoff thì thủ
tục backoff sẽ tạm dừng, biến đếm backoff được giữ nguyên giá trị. Khi kênh truyền
rỗi thì thủ tục backoff sẽ được phép bắt đầu lại với giá trị đang tạm dừng lần trước.
20
Việc các trạm chọn các khoảng thời gian ngẫu nhiên khác nhau làm giảm thiểu
khả năng xung đột giữa các trạm mà đã chờ kênh truyền ở cùng một thời điểm.
Giá trị backoff được xác định theo cơng thức :
Backoff Time = Random() x aSlotTime
Trong đĩ :
- aSlotTime : là giá trị tương ứng với đặc điểm của tầng vật lý (PHY).
- Random() : là một giá trị ngẫu nghiên nằm trong khoảng [0,CW], ở đây CW là
cửa sổ tranh chấp, một giá trị số thực nằm trong khoảng giá trị CWMin và CWMax
(hai giá trị này là đặc điểm của tầng vật lý).
CW khởi tạo từ giá trị CWMin và sau mỗi lần khung truyền khơng thành cơng thì
giá trị này lại được tăng gấp đơi, và thủ tục backoff mới lại được bắt đầu, giá trị CW
cứ tăng với cấp số nhân như thế sau mỗi lần truyền dữ liệu khơng thành cơng cho tới
khi nĩ đạt tới ngưỡng CWMax, thì CW sẽ giữ nguyên giá trị đĩ (khơng tăng nữa cho
dù cĩ truyền khơng thành cơng). CW sẽ được thiết lập lại sau khi dữ liệu được truyền
thành cơng.
2.1.2.2. Thủ tục xác nhận ACK
Hình 2.3. Thủ tục xác nhận ACK
Khi một trạm nhận được một khung và xác định rằng nĩ khơng bị lỗi. Trạm sẽ
gửi lại cho bên gửi một khung ACK nhằm mục đích xác nhận rằng nĩ đã nhận được
khung dữ liệu. Khung ACK chỉ sử dụng trong trường hợp nhận được gĩi tin unicast
21
cịn nếu gĩi tin nhận là gĩi tin multicast hoặc broadcast thì khung ACK khơng được sử
dụng. Khung ACK chỉ cần phải đợi một khoảng liên khung là SIFS và khơng phải thực
hiện thao tác backoff trước khi truyền đi, điều này làm cho nĩ cĩ điều kiện được
truyền đi trước nếu như mơi trường cĩ nhiều trạm cĩ yêu cầu truyền. Trạm gửi sẽ chờ
một khoảng thời gian là ACKTimeout, sau khoảng thời gian này nếu nĩ khơng nhận
được khung ACK ứng với khung dữ liệu mà nĩ gửi đi thì nĩ sẽ gửi lại khung dữ liệu
đĩ.
2.1.3. Chức năng phối hợp điểm (Point Coordination Function - PCF)
Một phương pháp truy cập khác trong IEEE 802.11 MAC nữa là phương pháp
chức năng phối hợp điểm (PCF). Điểm khác biệt đầu tiên của phương pháp này với
phương pháp DCF là DCF cĩ thể sử dụng trong cả mạng ad-hoc cũng như hệ thống
mạng khơng dây cĩ cấu trúc BSS. Nhưng phương pháp PCF thì chỉ sử dụng được
trong các hệ thống BSS, bởi vì trong phương pháp này yêu cầu sử dụng bộ phối hợp
điểm (PC) nằm trong AP để xác định trạm nào cĩ yêu cầu truyền. Bộ phối hợp điểm
PC nằm trong AP sẽ điều khiển việc truyền dữ liệu. Bộ phối hợp điểm cài đặt danh
sách thăm dị và tiến hành việc thăm dị các trạm trong mạng.
2.1.3.1. Chu kỳ khơng tranh chấp
Hình 2.4. Chu kỳ tranh chấp và chu kỳ khơng tranh chấp
Trong PCF ta đưa ra khái niệm chu kỳ khơng tranh chấp và chu kỳ tranh chấp.
Chu kỳ tranh chấp (Contention period) sử dụng DCF và chu kỳ khơng tranh chấp
(Contention free period) sử dụng PCF. Hai chu kỳ này là luân phiên thay thế nhau.
Mỗi chu kỳ tranh chấp được bắt đầu bằng việc AP sẽ gửi một khung beacon là một
khung quản lý đặc biệt, trong khung này cĩ chứa giá trị CFP-MaxDuration là khoảng
thời gian tối đa của chu kỳ khơng tranh chấp. Bởi vì việc truyền khung beacon cĩ thể
22
bị trễ do kênh truyền bận (frame trong chu kỳ DCF đang được gửi), cho nên chu kỳ
khơng tranh chấp cĩ thể bị thu ngắn lại.
2.1.3.2. Thủ tục truy cập PCF
Hình 2.5. Thủ tục DCF
Các trạm và PC khơng sử dụng RTS/CTS trong chu kỳ khơng tranh chấp. Ở thời
điểm bắt đầu mỗi CFP, PC sẽ cảm nhận kênh truyền, khi kênh truyền được xác định là
rỗi AP sẽ đợi một khoảng PIFS, sau đĩ PC sẽ truyền khung quản lý Beacon chứa
thơng tin CFPMaxDuration. Các trạm khi nhận được khung Beacon sẽ điều chỉnh giá
trị NAV (network allocation vector) của chúng theo giá trị CFPMaxDuration. Điều
này ngăn cản các trạm chiếm quyền điều khiển kênh truyền trong CFP. Việc thiết lập
NAV cũng làm giảm nguy cơ trạm ẩn.
Sau khi gửi khung beacon, PC sẽ chờ ít nhất một khoảng thời gian SIFS trước khi
nĩ truyền khung thăm dị hoặc dữ liệu đến các trạm. PC sẽ duy trì một danh sách thăm
dị và sẽ thăm dị lần lượt các trạm trong danh sách đĩ.
PC sẽ nhìn vào danh sách thăm dị của nĩ, và nếu nĩ kiểm tra thấy trong bộ đệm
cĩ dữ liệu cần truyền cho trạm mà nĩ định thăm dị, PC sẽ gửi cho trạm đĩ khung:
Data + CF-Poll (khung thăm dị), trong trường hợp PC cĩ dữ liệu cần gửi cho trạm,
ngược lại nếu khơng cĩ dữ liệu thì PC chỉ gửi khung thăm dị CF-Poll. Trạm được
thăm dị sẽ trả lời với khung Data/ACK sau khoảng SIFS đến PC hoặc đến các trạm
khác ở trong mạng. Nếu sau khoảng PIFS mà khơng thấy trả lời, PC sẽ giành quyền
điều khiển và tiến hành thăm dị trạm tiếp theo trong danh sách thăm dị. Đối với trạm
khơng trả lời thì ở lần thăm dị tiếp theo, PC sẽ gửi lại dữ liệu.
23
Đối với các trạm được thăm dị kể trên, nếu cĩ dữ liệu trạm sẽ trả lời với khung
Data + CF-ACK cịn nếu khơng cĩ dữ liệu để gửi thì nĩ sẽ trả lời với khung CF-ACK.
Quá trình thăm dị, gửi dữ liệu và trả lời này sẽ tiếp tục cho đến khi PC khơng cĩ
khung dữ liệu nào để gửi và khơng cĩ trạm nào để thăm dị. Khi đĩ PC sẽ gửi một
khung kết thúc CF-End hoặc CF-End +CF-ACK (nếu cần xác nhận dữ liệu) để thơng
báo kết thúc chu kỳ khơng tranh chấp CFP. Lúc đĩ, tất cả các trạm sẽ xác lập lại giá trị
NAV của chúng và chu kỳ tranh chấp CP sẽ bắt đầu.
2.2. Chuẩn IEEE 802.11e
Chuẩn IEEE 802.11e là một biến thể của chuẩn 802.11. Nĩ định nghĩa một tập
hợp các cải tiến đảm bảo chất lượng chất lượng dịch vụ cho mạng khơng dây WLAN
thơng qua các sửa đổi trong tầng MAC. Chuẩn này cĩ tầm quan trọng và cần thiết cho
các ứng dụng yêu cầu thời gian thực cũng như độ chậm trễ thấp như voice over IP,
streaming multimedia.
IEEE 802.11e đảm bảo chất lượng dịch vụ cơ bản dựa trên phân biệt lưu lượng,
bằng việc bổ sung thêm trường QoS trong cấu trúc khung dữ liệu MAC.
Hình 2.6. Frame IEEE 802.11e
Việc bổ sung thêm trường “QoS Control” trong khung dữ liệu đã giúp cho IEEE
802.11e cĩ thể cung cấp việc đảm bảo chất lượng dịch vụ . IEEE 802.11e cung cấp sự
ưu tiên thơng qua phân biệt định danh của các luồng và chỉ rõ ưu tiên.
2.2.1. Chức năng phối hợp lai (Hybrid Coordination Function - HCF)
Trong IEEE 802.11e cơ chế truy cập kênh truyền được sử dụng là HCF (Hybrid
coordination function). Cơ chế này được gọi là cơ chế lai bởi vì nĩ cĩ cả hai phương
thức truy cập kênh truyền cĩ tranh chấp và khơng tranh chấp. HCF sử dụng phương
thức truy cập kênh truyền dựa trên tranh chấp là EDCF (Enhance distributed channel
access), nĩ là một sự mở rộng của phương thức DCF được áp dụng trong IEEE 802.11
MAC. Hoạt động đồng thời với EDCF là cơ chế truy cập kênh truyền cĩ điều khiển
24
dựa trên kỹ thuật thăm dị HCCA(HCF controlled channel access), cơ chế này cĩ thể
sử dụng trong cả chu kỳ tranh chấp lẫn chu kỳ khơng tranh chấp.
2.2.1.1. EDCF (Enhanced Distributed Coordinated Function)
Trong chuẩn IEEE 802.11e mỗi station sẽ phân loại các dịch vụ thành 4 nhĩm
sự phân chia này dựa trên quyền truy cập đường truyền. Tức là mỗi frame được các
tầng trên gửi xuống tầng MAC sẽ được phân vào một AC (Access categories) tương
ứng với độ ưu tiên của frame đĩ theo bảng dưới đây.
Bảng 2.1. Độ ưu tiên các dịch vụ
Ở đây độ ưu tiên 0 (thấp nhất) nằm giữa độ ưu tiên 2 và 3 là do tuân thủ theo
chuẩn IEEE 802.11d.
Về đơn giản sự khác biệt của các AC này dựa trên các tham số : AIFSD[AC],
CWMin[AC], CWMax[AC] tương ứng với các tham số DIFS, CWMin, Cwmax trong
DCF. Các tham số trên là khác nhau với mỗi AC, từ đĩ mức độ ưu tiên để truy cập
đường truyền của các AC cũng sẽ thay đổi theo giá trị của chúng.
Giá trị của AIFSD[AC] được xác định thơng qua cơng thức :
AIFSD[AC] = SIFS + AIFS[AC] * SlotTime
AIFS[AC] là một số nguyên cĩ giá trị lớn hơn 0. Tức là độ ưu tiên của một AC
sẽ được quy định bởi 3 tham số đĩ là : AIFS[AC], CWMin[AC], CWMax[AC]. Đây
cũng là ba tham số chính trong chuẩn EDCF, chúng được cung cấp cho các trạm từ AP
25
thơng qua khung beacon. AP cĩ thể tự động tính tốn các giá trị này thơng qua việc
xem xét điều kiện của mạng.
Hình 2.7. Bốn Access Categories trong EDCF
Hình trên mơ tả bốn hàng đợi trong tầng MAC thể hiện cho bốn AC, các khung
dữ liệu từ tầng trên gửi đến tùy thuộc vào độ ưu tiên của nĩ sẽ được sắp xếp vào một
hàng đợi tương ứng. Mỗi hàng đợi này được coi như là một trạm ảo, tức là nĩ sẽ cĩ giá
trị AIFS[AC], CWMin[AC], CWMin[AC] riêng và khi muốn truyền dữ liệu chúng
cũng sẽ thực thi các thủ tục backoff dựa vào các tham số này, và nếu như cĩ nhiều hơn
một AC chọn cùng giá trị backoff thì sẽ xảy ra hiện tượng xung đột và người ta gọi
hiện tượng này là hiện tượng xung đột ảo.
Trong chuẩn IEEE 802.11e người ta đưa ra một khái niệm mới đĩ là cơ hội
truyền (XTOP - Transmission Opportunity). XTOP là khoảng thời gian một trạm cĩ
quyền được truyền, nĩ được xác định bởi thời gian bắt đầu và thời gian kết thúc truyền
của trạm đĩ, chính dựa vào điều này mà các trạm khác trong mạng cĩ thể xác định
được một cách chính xác thời gian mà trạm này sử dụng kênh truyền. Nếu trạm đang
được cấp phát XTOP đã thực hiện xong việc truyền, trạm cĩ thể truyền tiếp các khung
tiếp theo, nhưng phải đảm bảo rằng việc truyền các khung cũng như nhận ACK tương
ứng của các khung này là khơng vượt quá thời gian cịn lại.
26
Quá trình thực thi EDCF được mơ tả như sau :
Hình 2.8. Thực thi EDCF
Cách thực thi EDCF cũng giống như thực thi DCF, chỉ cĩ một số khác biệt đĩ là
mỗi trạm bây giờ sẽ tương ứng với 4 trạm ảo, và mỗi trạm này sẽ tự thực thi các cơ chế
backoff, tranh chấp đường truyền một cách độc lập, tuy nhiên khi chọn giá trị random
để tính giá trị backoff thì giá trị random này sẽ là một số nguyên nằm trong khoảng [1,
1+ CW[AC]] (ở DCF là khoảng [0,CWMin]).
Thêm vào đĩ, mỗi khi một khung nào đĩ khơng thành cơng thì thay vì tăng giá trị
của cửa sổ tranh chấp lên gấp đơi thì trong EDCF cĩ thay đổi chút ít. Nếu như giá trị
CW[AC] hiện tại là nhỏ hơn CWMax[AC] thì giá trị CW[AC] sẽ được thay đổi theo
cơng thức :
CW[AC](new) = (CW[AC](old) + PF[AC]) * 2 – 1
Trong đĩ PE[AC] là một nhân tố cố định, trong chuẩn IEEE 802.11 thì PE là cố
định và nhận giá trị là 2, tuy nhiên trong 802.11e giá trị này thơng thường là khác nhau
ở mỗi AC, điều này làm tăng sự khác nhau giữa các giá trị CW của các AC. Nhưng,
nếu giá trị CW[AC] đã đạt ngưỡng CWMax[AC] thì nĩ vẫn giữ nguyên giá trị đĩ
khơng thay đổi cho tới khi khung được truyền đi thành cơng thì mới gán lại giá trị
CW[AC].
Trong trường hợp xảy ra va chạm ảo (các AC truyền khung tại cùng một thời
điểm) thì cơ hội truyền (XTOP) sẽ được cấp phát cho AC cĩ độ ưu tiên cao hơn, và
các AC cịn lại được xem như gặp trường hợp truyền khung khơng thành cơng và phải
chọn lại giá trị CW cũng như lặp lại thủ tục backoff.
27
2.2.1.2. HCCA(HCF controlled channel access)
HCCA làm việc hầu như giống với chức năng điều phối điểm (Point
Coordination Function). Tuy nhiên, trái ngược với PCF, ở đây khoảng cách giữa hai
khung cảnh báo được chia thành hai giai đoạn của CFP và CP, HCCA cho phép CFPs
được khởi động tại gần như bất cứ lúc nào trong một CP. Đây là một loại CFP được
gọi là giai đoạn kiểm sốt truy cập (Coltrolled Access Phase - CAP) trong IEEE
802.11e. Một CAP được khởi tạo bởi các AP, bất cứ khi nào nĩ muốn gửi một frame
đến một trạm, hay nhận được một frame từ một trạm, trong một kiểu cạnh tranh tự do.
Trong thực tế, CFP cũng là một CAP. Trong một CAP, các điều phối Hybrid (HC) -
cũng là AP - kiểm sốt truy cập điểm giữa. Trong CP, tất cả các trạm chức năng bên
trong EDCA. Sự khác biệt với PCF là lớp lưu lượng (TC) và luồng lưu lượng (TS)
được định nghĩa. Điều này cĩ nghĩa là HC khơng giới hạn hàng đợi trên từng trạm và
cĩ thể cung cấp một loại dịch vụ cho mỗi phiên. Ngồi ra, HC cĩ thể phối hợp các
luồng hoặc các phiên với kiểu bất kỳ mà nĩ chọn (khơng chỉ round-robin). Hơn nữa,
các trạm cung cấp thơng tin về độ dài của hàng đợi cho từng lớp lưu lượng (TC). HC
cĩ thể sử dụng thơng tin này ưu tiên cho một trong những trạm phát qua các trạm khác,
hoặc tốt hơn cơ chế điều chỉnh lịch trình của nĩ. Sự khác biệt khác là các trạm đưa ra
một TXOP: chúng cĩ thể gửi nhiều gĩi tin trong một hàng, trong một thời gian nhất
định được lựa chọn bởi các HC. Trong CP, HC cho phép các trạm gửi dữ liệu bởi việc
gửi các khung tin CF-Poll.
HCCA thường được coi là chức năng phối hợp tiên tiến và phức tạp nhất . Với
HCCA, QoS cĩ thể được cấu hình với độ chính xác tuyệt vời. QoS cho phép các trạm
cĩ khả năng truyền tải các thơng số yêu cầu cụ thể (tỷ lệ jitter dữ liệu, vv) mà cĩ thể
cho phép các ứng dụng nâng cao như VoIP và video để làm việc hiệu quả hơn trên một
mạng khơng dây.
Hỗ trợ HCCA khơng bắt buộc cho các điểm truy cập theo chuẩn 802.11e. Thực
tế, cĩ rất ít( thậm chí khơng cĩ) các AP hỗ trợ HCCA. Tuy nhiên, thực hiện HCCA
khơng địi hỏi nhiều các yêu cầu trên, vì về cơ bản sử dụng cơ chế DCF hiện tại cho
truy cập kênh (khơng cĩ thay đổi để DCF hoặc hoạt động EDCA là cần thiết). Đặc
biệt, việc thực hiện phía điểm phát sĩng là rất đơn giản như trạm chỉ cần để cĩ thể trả
lời tin nhắn thăm dị. Về phía AP, lẽ dĩ nhiên, việc lập lịch và sử dụng hàng đợi là cần
thiết. Cĩ ý kiến cho rằng, AP đã được trang bị tốt hơn là một trạm thu phát, điều này
nên là một vấn đề khác.
28
2.3. Truyền video streaming trong mạng khơng dây IEEE 802.11e
Việc truyền video streaming trong mạng khơng dây trước đây gặp nhiều vấn đề
do phải tranh chấp với các luồng dữ liệu khác. Do đĩ việc truyền video rất bị hạn chế
và cho kết quả thấp. Với việc áp dụng chuẩn IEEE 802.11e việc truyền video
streaming trong mạng khơng dây đã cĩ nhiều cải thiện và đạt được hiệu quả cao hơn.
Việc IEEE 802.11e phân biệt các dịch vụ khác nhau ở tầng MAC từ đo phân
chia chúng vào các AC khác nhau cĩ độ ưu tiên khác nhau dẫn tới việc các dịch vụ
truyền video cũng như audio khơng bị tranh chấp bởi các dịch vụ khác như các ứng
dụng web hay là các ứng dụng truyền file…
Chuẩn IEEE 802.11e định nghĩa bốn loại truy cập tương ứng với bốn độ ưu tiên
khác nhau dành cho các nhĩm dịch vụ. Dịch vụ truyền video streaming được xếp vào
nhĩm dịch vụ cĩ độ ưu tiên cao. Tức là các khung dữ liệu của nĩ từ tầng trên đẩy
xuống sẽ được xếp vào hàng đợi tương ứng với AC cĩ độ ưu tiên cao. Từ đĩ dẫn đến
việc xác xuất được truyền đi của các khung này là được tăng lên. Và kết quả là chất
lượng dịch vụ được tăng lên. Bên cạnh đĩ do cĩ tính chất cơ hội truyền (TXOP) nếu
như AC được cấp phát TXOP mà sau khi gửi khung thành cơng AC vẫn cĩ thể truyền
tiếp những khung dữ liệu tiếp theo trong hàng đợi. Điều này giúp cho dịch vụ video
streaming cĩ thể gửi một loạt các gĩi tin liên tiếp nhau. Điều này sẽ làm cho sự duy trì
dịch vụ là được tăng cường.
Tuy nhiên chuẩn IEEE 802.11e lại chỉ hướng vào việc đảm bảo chất lượng dịch
vụ cho nhĩm dịch vụ. Tức là một khung dữ liệu bất kỳ khi cĩ dữ liệu đẩy xuống tầng
MAC thì ứng với dịch vụ của khung đĩ MAC sẽ cấp phát cho nĩ độ ưu tiên cố định và
đẩy nĩ vào hàng đợi tương ứng với độ ưu tiên đĩ. Nhưng với video streaming cơ chế
phân tầng của nĩ sẽ tạo ra nhiều luồng dữ liệu cĩ tốc độ khác nhau cũng như độ quan
trọng khác nhau. Việc giải mã dữ liệu của các tầng mở rộng trong video streaming
phải luơn phụ thuộc và dữ liệu của tầng cơ bản và tầng cơ bản là nhân tố đầu tiên để
dịch vụ video streaming cĩ thể được duy trì vì thế tầng cơ bản luơn luơn phải được ưu
tiên cao nhất sau đĩ thứ tự ưu tiên giảm dần theo thứ tự luồng mở rộng 1, luồng mở
rộng 2… Vì thế đĩ nếu như việc phân phối độ ưu tiên của các luồng này luơn luơn duy
trì bằng nhau như trong chuẩn MAC thì việc phân biệt mức độ quan trọng của các
luồng dữ liệu xem như là khơng được hỗ trợ.
29
Do vậy phải cĩ một cơ chế nào đĩ để giải quyết vấn đề này nhằm hỗ trợ tốt hơn
cho việc đảm bảo chất lượng dịch vụ video streaming. Và đĩ cũng sẽ là nội dung của
chương tiếp theo.
30
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
3.1. Vấn đề nghiên cứu
Việc truyền video streaming trong mạng khơng dây gặp nhiều khĩ khăn, bởi vì
những ràng buộc của video streaming rất khĩ đáp ứng trong điều kiện mạng khơng
dây. Tuy chuẩn IEEE 802.11e đã phần nào khắc phục được một số vấn đề đĩ bằng
cách cho phép các dịch vụ gán độ ưu tiên khác nhau. Tuy nhiên, như thế là chưa đủ để
đảm bảo được chất lượng truyền video, bởi vì với việc phân tầng trong video
streaming, các tầng khác nhau sẽ cĩ độ ưu tiên khác nhau khi truyền.
Trong video streaming tầng cơ sở luơn luơn phải được ưu tiên đầu tiên sau đĩ là
các tầng mở rộng theo thứ tự tăng dần của chúng. Chuẩn IEEE 802.11e chỉ dừng lại ở
mức hỗ trợ chất lượng dịch vụ hướng nhĩm dịch vụ. Tức là, mỗi một dịch vụ nhất định
như video streaming chẳng hạn thì chỉ tương ứng với một mức ưu tiên. Dẫn tới việc,
các tầng khác nhau trong video streaming vẫn sẽ cùng độ ưu tiên, và dĩ nhiên là các
gĩi tin của chúng từ tầng trên gửi xuống sẽ cùng nằm trong một hàng đợi trong số bốn
hàng đợi ở tầng MAC (tương ứng với 4 AC). Điều này sẽ đồng nhất các khung dữ liệu
của tất cả các tầng trong việc phân tầng của video streaming là như nhau khi truyền.
Vấn đề nảy sinh khi tình trạng mạng là bận, khi mạng bận các tầng video với các
luồng dữ liệu tương ứng lại cùng được truyền với độ ưu tiên giống nhau, hậu quả là độ
trễ của dữ liệu từ tác tầng gửi đi sẽ tương đương nhau và dĩ nhiên là độ trễ này sẽ lớn,
đồng thời thơng lượng của tất cả các luồng dữ liệu cũng đều giảm xuống. Điều này đi
ngược với tinh thần của việc phân tầng trong video streaming, việc phân tầng là giúp
cho việc truyền video cĩ thể tương thích với sự thay đổi tình trạng mạng, nhằm cĩ một
hiệu quả truyền tốt nhất trong điều kiện cĩ thể. Tức là nếu tình trạng mạng bận thì việc
truyền dữ liệu của tầng cơ sở phải được đặt lên hàng đầu. Và nhất thiết là phải truyền
dữ liệu này với độ trễ đủ nhỏ và thơng lượng đảm bảo sao cho vẫn duy trì được dịch
vụ. Cịn với các tầng khác thì cĩ thể truyền một cách cố gắng tối đa.
Sau đây ta sẽ đi xét một vài thí nghiệm để kiểm chứng xem sự bất nảy sinh khi
truyền video streaming trong IEEE 802.11e như đã nĩi ở trên.
Mơi trường thực nghiệm ở đây là dựa trên bộ mơ phỏng ns2-2.28 (đã cài thêm
bộ hỗ trợ để cĩ thể sử dụng được chuẩn IEEE 802.11e). Mơ hình mơ phỏng sẽ gồm 3
máy trạm và một AP. Trong 3 trạm này ta sẽ xét 1 trạm để đánh giá cịn hai trạm kia
31
chỉ là hai trạm để làm mơi trường. Trạm được xét là trạm 1, nĩ sẽ bao gồm ba luồng
dữ liệu tương ứng với 3 tầng của dịch vụ video streaming (tầng cơ bản, tầng mở rộng 1
và tầng mở rộng 2). Các luồng này sẽ cĩ tốc độ truyền tương ứng là 128kb/s, 256kb/s
và 512kb/s. Hai trạm cịn lại là trạm 2 và trạm 3 mỗi trạm sẽ bao gồm ba luồng dữ liệu
tương ứng với ba độ ưu tiên nhận giá trị từ 1 tới 3. Sơ đồ thí nghiệm như sau :
Hình 3.1. Mơ hình thí nghiệm
a. Trường hợp mạng bận
Đầu tiên, ta sẽ đi xét trường hợp mạng bận. Để mạng bận thì tổng số tốc độ
truyền phải lớn hơn băng thơng cực đại cĩ thể của kênh truyền (2mb/s), nên ta sẽ cho
các luồng dữ liệu cĩ độ ưu tiên 1, 2, 3 trong trạm 2 và 3 nhận tốc độ truyền bằng nhau
và bằng 400kb/s. Trong trường hợp mạng bận, ta sẽ đi xem xét hai trường hợp con, là
trường hợp ở trạm 1 các luồng video streaming nhận cùng giá trị độ ưu tiên là 1 (tuân
thủ chuẩn IEEE 802.11e), và trường hợp khác là ta sẽ gán các luồng tương ứng với các
độ ưu tiên khác nhau. Luồng cơ bản sẽ nhận độ ưu tiên là 1 luồng mở rộng 1 sẽ là 2 và
luồng mở rộng 2 sẽ là 3. Sau khi chạy chương trình mơ phỏng ta cĩ một số nhận xét
sau.
Thứ nhất về độ trễ. Khi gán độ ưu tiên của các luồng như nhau. Độ trễ trung bình
của các gĩi tin trong các luồng này sẽ nhận được sẽ xấp xỉ nhau và xấp xỉ giá trị
0.778s. Trong khi đĩ, với trường hợp gán độ ưu tiên khác nhau, thì độ trễ trung bình
32
của hai luồng tuy khá cao, nhưng độ trễ trung bình của luồng cơ bản chỉ là 0.04s. Và ta
cũng cĩ đồ thị so sánh độ trễ luồng cơ bản của hai thí nghiệm như sau:
Hình 3.2. Biểu đồ so sánh độ trễ luồng cơ bản khi mạng bận trong hai trường hợp gán độ ưu
tiên bằng nhau và gán độ ưu tiên khác nhau
Ta cĩ thể thấy được rằng trong trường hợp mạng bận nếu giữ nguyên độ ưu tiên
các luồng bằng nhau và ở mức ưu tiên cao thì các luồng sẽ cùng cĩ giá trị độ trễ và giá
trị này là khá lớn. Trong khi đĩ nếu phân phối các luồng ở mức ưu tiên khác nhau thì
độ trễ của luồng cơ bản sẽ được đảm bảo ở mức thấp và giá phải trả là độ trễ ở các
luồng kia phải tăng lên.
Tiếp theo, ta xét đến thơng lượng của các luồng. Với trường hợp độ ưu tiên của
các luồng như nhau số gĩi tin nhận được trên các luồng theo thứ tự luồng cơ bản,
luồng mở rộng 1 và luồng mở rộng 2 là 1110 (packet), 1718(packet), 2876(packet). Và
trong trường hợp độ ưu tiên khác nhau thì kết quả là 1440(packet), 2228(packet),
601(packet). Mà tổng số gĩi tin gửi đi từ trạm 1 tương ứng với các luồng cơ bản, luồng
mở rộng 1, luồng mở rộng 2 lần lượt là 1440(packet), 2880(packet) và 5760(packet).
Nhìn vào số liệu này ta cĩ: với trường hợp độ ưu tiên của các luồng như nhau, số
lượng gĩi tin của từng luồng nhận được tính theo phần trăm thứ tự là 77,1%, 59,65%
và 49,93% tương ứng với luồng cơ bản, luồng mở rộng 1 và luồng mở rộng 2. Với
dịch vụ video streaming độ mất mát này là khĩ cĩ thể chấp nhận được. Cịn trường
hợp độ ưu tiên của các luồng khác nhau, tuy luồng mở rộng 2 chỉ gửi tới đích được
một số ít gĩi tin so với số lượng gĩi tin mà bên nhận gửi. Nhưng bù lại luồng cơ bản
33
nhận được 100% số gĩi tin và luồng mở rộng hai cũng nhận được nhiều gĩi tin hơn
(77,36%). Điều này đủ để đảm bảo duy trì dịch vụ video streaming.
Mặt khác, ta cũng cĩ thơng lượng của các luồng được biểu thị như sau.
(a)
(b)
Hình 3.3. Thơng lượng trong trường hợp mạng bận
(a) Trường hợp độ ưu tiên như nhau ; (b) Trường hợp độ ưu tiên khác nhau
34
Dễ dàng thấy rằng, thơng lượng của luồng cơ bản trong trường hợp độ ưu tiên
của các luồng bằng nhau là khơng ổn định và chủ yếu là nằm dưới 100kb/s. Cịn với
trường hợp độ ưu tiên khác nhau thì thơng lượng luơn duy trì ở mức 128kb/s mặt khác
luồng mở rộng 1 trong trường hợp độ ưu tiên khác nhau cũng cĩ thơng lượng khá cao
(nằm từ khoảng một nửa thời gian duy trì mức lớn hơn 200kb/s và ít khi thơng lượng
tụt xuống dưới ngưỡng 150kb/s).
Thơng qua việc xem xét hai thí nghiệm trên ta cĩ thể thấy được rằng, với
trường hợp mạng bận thì việc gán độ ưu tiên của các luồng khác nhau tùy theo mức độ
quan trọng của nĩ là tốt hơn so với việc gán chung độ ưu tiên cho tất cả các luồng.
Điều này thể hiện rõ trên cả hai phương diện độ trễ cũng như thơng lượng. Vậy trong
trường hợp mạng rỗi thì sao? Ta sẽ đi xem xét thơng qua thí nghiệm các sau.
b. Trường hợp mạng rỗi :
Để mạng rỗi thì ngược lại với trường hợp mạng bận tổng số tốc độ truyền phải
nhỏ hơn băng thơng cực đại cĩ thể của kênh truyền (2mb/s) nên ta sẽ cho các luồng dữ
liệu cĩ độ ưu tiên 1, 2, 3 trong trạm 2 và 3 nhận tốc độ truyền bằng nhau và bằng
100kb/s. Ta cũng sẽ đi xem xét hai trường hợp con như đã xét trong trường hợp mạng
bận
Thứ nhất về độ trễ. Khi gán độ ưu tiên của các luồng như nhau. Độ trễ trung bình
của các gĩi tin trong các luồng này sẽ lần lượt nhận giá trị là 0.00855(s), 0.01233(s) và
0.01554(s). Trong khi đĩ với trường hợp gán độ ưu tiên khác nhau thì độ trễ trung bình
của các luồng là 0.00894(s), 0.01383(s) và 0.02191(s). Độ trễ trung bình của các gĩi
tin của luồng cơ bản ở cả hai trường hợp là tương đương nhau. Nhưng độ trễ các gĩi
tin ở hai luồng mở rộng là cĩ sự khác biệt. Ta cĩ thể nhận thấy rõ hơn thơng qua độ thị
so sánh độ trễ luồng mở rộng 2 trong hai trường hợp như hình dưới đây.
35
Hình 3.4. Biểu đồ so sánh độ trễ luồng mở rộng hai khi mạng bận trong hai trường hợp gán độ
ưu tiên bằng nhau và gán độ ưu tiên khác nhau
Từ biểu đồ trong hình 3.3 ta cĩ thể thấy rằng, độ trễ của các gĩi tin luồng mở
rộng 2 trong trường hợp gán độ ưu tiên các luồng như nhau (màu đỏ) hầu như luơn
nằm dưới ngưỡng 0.02s, và chủ yếu là nhỏ hơn 0.01s. Trong khi đĩ, độ trễ của các gĩi
tin cũng ở luồng mở rộng 2 nhưng với trường hợp gán độ ưu tiên các luồng khác nhau
(màu xanh), phân nửa cĩ giá trị lớn hơn 0.02s và cĩ những lúc vọt lên tới giá trị 0.08s.
Điều này chứng tỏ rằng khi mạng rảnh rỗi nếu xếp độ ưu tiên của các luồng
video streaming là khác nhau, thì độ trễ ở các luồng phía dưới (các luồng mở rộng ở
bậc cao) sẽ bị tăng lên và điều này là hồn tồn khơng hợp lý.
36
(a)
(b)
Hình 3.5. Thơng lượng trong trường hợp mạng rỗi
(a) Trường hợp độ ưu tiên như nhau ; (b) Trường hợp độ ưu tiên khác nhau
Dễ dàng thấy rằng với cả hai trường hợp luồng cơ bản đều cĩ thơng lượng như
nhau. Tuy nhiên với trường hợp độ ưu tiên khác nhau hai luồng mở rộng đều cĩ thơng
lượng là khơng ổn định bằng thơng lượng của chúng ở trong trường hợp độ ưu tiên
giống nhau. Với luồng mở rộng 1 trường hợp độ ưu tiên của các luồng bằng nhau
37
thơng lượng luơn duy trì ở mức 256kb/s, cịn trường hợp độ ưu tiên các luồng khác
nhau, một số thời điểm thơng lượng của luồng này bị thay đổi một ít. Cịn với luồng
mở rộng hai, độ sai lệch lên xuống của thơng lượng trong trường hợp độ ưu tiên các
luồng giống nhau là ít hơn, so với trường hợp độ ưu tiên các luồng khác nhau.
Từ việc xét hai thí nghiệm trong trường hợp mạng rỗi này ta cĩ thể nhận ra
được rằng trong trường hợp mạng rỗi các luồng dữ liệu streaming việc gán cùng độ ưu
tiên ở mức cao để cho kết quả tốt hơn là gán chúng ở các độ ưu tiên khác nhau.
Vậy ta cĩ thể kết luận rằng trong trường hợp mạng bận ta nên gán độ ưu tiên
của 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 video
streaming là khác nhau. Để đảm bảo duy trì được luồng dữ liệu quan trọng hơn từ đĩ
đảm bảo cho việc duy trì dịch vụ. Cịn với trường hợp mạng rỗi nên gán độ ưu tiên của
các luồng này là bằng nhau và ở mức cao để cĩ thể đảm bảo cung cấp được dịch vụ
video streaming với chất lượng tốt hơn.
3.2. Giải pháp gán độ ưu tiên động cho các luồng video streaming
Dịch vụ truyền video streaming luơn luơn bị ảnh hưởng bởi tác động của mơi
trường bên ngồi. Cĩ lúc thì các luồng video tương ứng với các tầng nên cĩ cĩ cùng
độ ưu tiên ở mức cao, cĩ lúc lại nên cĩ độ ưu tiên khác nhau. Mà trong chuẩn IEEE
802.11e khơng hỗ trợ việc thay đổi độ ưu tiên cho các luồng dữ liệu.
Nhu cầu đảm bảo dịch vụ cũng như chất lượng video streaming là rất cần thiết,
do đĩ phải cĩ một giải pháp nào đĩ hỗ trợ sâu hơn cho việc truyền video streaming
trong mạng khơng dây. Trong khĩa luận này tơi muốn tập trung cho việc duy trì sự tồn
tại của dịch vụ, cũng như tăng cường chất lượng dịch vụ cho việc truyền video
streaming trong mạng khơng dây. Và giải pháp tơi đưa ra ở đây là gán độ ưu tiên động
cho các luồng video streaming. Giải pháp này của tơi được hình thành trong quá trình
nghiên cứu, đo đạt và thí nghiệm trên các luồng video streaming trong IEEE 802.11e
mà rút ra.
Trong chuẩn IEEE 802.11e, mỗi luồng dữ liệu luơn duy trì một độ ưu tiên cố
định từ khi bắt đầu khởi tạo cho đến khi kết thúc việc truyền. Giá trị độ ưu tiên này
phụ thuộc vào dịch vụ sử dụng ở tầng ứng dụng. Việc làm này tạo ra được sự phân biệt
giữa các nhĩm dịch vụ với nhau. Với việc áp dụng chuẩn IEEE 802.11e, dịch vụ video
streaming sẽ gán độ ưu tiên của các luồng dữ liệu ở mức cao, từ đĩ cơ hội truyền của
các khung dữ liệu tương ứng với dịch vụ này là cao hơn một số dịch vụ khác như
web,fpt…
38
Tuy nhiên với sự phân tầng trong video streaming, mỗi một video gốc sẽ được
mã hĩa thành nhiều tầng video với tốc độ nén và mức độ quan trọng khác nhau. Với
việc mỗi dịch vụ chỉ cĩ thể tương ứng với một độ ưu tiên, hậu quả là tất cả các luồng
dữ liệu của dịch vụ video streaming ở tất cả các tầng đều cùng cĩ một độ ưu tiên. Việc
này làm giảm đi tính năng mềm dẻo của sự đảm bảo chất lượng dịch vụ, vì mức độ
quan trọng của mỗi tầng trong video streaming là khác nhau. Cùng với đĩ mơi trường
truyền khơng dây luơn ở trạng thái cĩ thể thay đổi bất cứ lúc nào. Phương pháp gán độ
ưu tiên động cho các luồng video streaming đơn giản là kiểm tra giám sát mơi trường
mạng, từ đĩ tính tốn một cách hợp lý để thay đổi giá trị độ ưu tiên của các luồng dữ
liệu tương ứng với các tầng trong video streaming một cách phù hợp với sự thay đổi
của mơi trường truyền.
Như ta đã xét, tác nhân gây ra sự mất ổn định trong việc truyền video streaming
là sự thay đổi của mơi trường truyền. Vậy muốn khắc phục điều này trước hết ta phải
cĩ một cơ chế để kiểm tra mơi trường truyền, từ đĩ cĩ cơ chế thay đổi độ ưu tiên phù
hợp. Vậy việc đầu tiên là làm sao để biết được mơi trường rỗi hay bận, mức độ rỗi, bận
như thế nào. Sau đĩ dựa vào các tham số đĩ tùy chỉnh độ ưu tiên cho các luồng dữ liệu
một cách phù hợp.
3.2.1. Các tham số đánh giá mơi trường truyền.
Trong mơi trường khơng dây các trạm hay nĩi đúng hơn là các AC (chuẩn IEEE
802.11e) đều tranh chấp với nhau để giành được cơ hội truyền. Việc tranh chấp này
dựa vào cách chọn thời gian backoff. AC nào cĩ giá trị backoff giảm tới 0 nhanh nhất
thì được quyền chiếm kênh truyền. Khi mạng rảnh rỗi các AC cĩ thể chỉ backoff một
hay một số nhỏ lần để giành được cơ hội truyền, ngược lại khi mạng bận, một khung
dữ liệu trên một AC cĩ thể phải backoff nhiều lần để cĩ thể truyền đi. Điều này thể
hiện rõ nhất trên các AC cĩ độ ưu tiên thấp. Vậy tham số tổng thời gian backoff trung
bình của một khung dữ liệu ở một AC là một giá trị gián tiếp thể hiện độ nhàn rỗi của
mơi trường.
Một mặt nữa, trong những thí nghiệm ở mục 3.1 ta cĩ thể nhận thấy rằng, trong
khi mơi trường truyền rỗi, thì hầu như tất cả các gĩi tin gửi từ bên gửi đều đến được
bên nhận. Trong khi đĩ với mạng bận thì các gĩi tin gửi đi cĩ thể bị hủy và khơng bao
giờ đến được bên nhận. Điều này là do băng thơng tối đa của mạng khơng đáp ứng đủ
yêu cầu của các trạm nên một số gĩi tin phải bị hủy. Do đĩ, tiêu chí tiếp theo để đánh
giá mơi trường truyền là tỉ lệ gĩi tin bị hủy trong khi truyền.
39
Các thơng số khác như độ trễ gĩi tin và thơng lượng cũng phản ảnh tình trạng
mơi trường truyền nhưng chúng khơng xác định được ở bên gửi cho nên các tham số
này sẽ khơng được đề cập trong phương pháp.
Vậy ta cĩ thể đánh giá mơi trường truyền thơng qua hai tham số là tổng thời gian
backoff của một khung dữ liệu và tỉ lệ mất gĩi tin. Dựa vào chúng ta sẽ nhận ra được
những thay đổi của mơi trường truyền, từ đĩ điều chỉnh việc truyền dữ hợp lý.
3.2.2. Mơ tả giải pháp.
Định nghĩa một số tham số :
- ∆t : khoảng thời gian sử dụng để xem xét đường truyền. Ta sẽ tính các thơng số
về thời gian backoff trung bình, cũng như tỉ lệ gĩi tin bị hủy trong khoảng thời gian
này để đánh giá mơi trường.
- ][ACebackoffTim : Là giá trị trung bình backoff time của mỗi khung tính trong
khoảng thời gian ∆t trên mỗi AC.
- dropRatio[AC] : Là tỷ lệ khung bị hủy trên mỗi AC trong khoảng thời gian ∆t.
- backoffThresholdDown[AC] : là ngưỡng backoff time trên mỗi AC. Nếu giá trị
][ACebackoffTim tăng vượt quá ngưỡng này thì ta phải thực hiện cơ chế chuyển các
luồng dữ liệu video streaming xuống AC cĩ độ ưu tiên thấp hơn AC hiện thời.
- backoffThresholdUp[AC] : Cũng là ngưỡng backoff time trên mỗi AC. Nếu giá
trị ][ACebackoffTim giảm xuống quá ngưỡng này, thì ta sẽ thực hiện cơ chế chuyển các
luồng dữ liệu video streaming từ AC cĩ độ ưu tiên nhỏ hơn lên AC hiện thời.
- dropThresholdDown[AC] : Là ngưỡng của tỷ lệ hủy gĩi tin trên mỗi AC. Nếu
giá trị ratioDrop tăng vượt ngưỡng này, ta phải thực hiện cơ chế chuyển các luồng dữ
liệu video streaming xuống AC cĩ độ ưu tiên thấp hơn AC hiện thời.
- dropThresholdUp[AC] : Cũng là ngưỡng của tỷ lệ hủy gĩi tin trên mỗi AC. Nếu
giá trị ratioDrop giảm xuống quá ngưỡng này, thì ta sẽ thực hiện cơ chế chuyển các
luồng dữ liệu video streaming từ AC cĩ độ ưu tiên nhỏ hơn lên AC hiện thời.
- numberFlow[AC] : là số lượng luồng dữ liệu video streaming đang cĩ độ ưu
tiên tương ứng với AC.
Trong phương pháp này. Ban đầu vẫn giữ nguyên như trong chuẩn IEEE
802.11e, ứng dụng video streaming sẽ gán độ ưu tiên của tất cả các luồng ứng với các
40
tầng của nĩ cùng một giá trị (vì là video streaming nên độ ưu tiên là là ở mức cao
prio=1).
Mỗi một AC ở các trạm, sẽ luơn luơn theo dõi giá trị backoff time trung bình của
các khung dữ liệu và tỷ lệ gĩi tin bị hủy trong một khoảng ∆t và xem xét xem nếu như
giá trị backoff time trung bình vượt quá ngưỡng backoff time cho phép, hoặc tỷ lệ hủy
gĩi tin vượt quá ngưỡng cho phép của AC đĩ, thì sẽ thực hiện cơ chế chuyển độ ưu
tiên của các luồng dữ liệu. Cơ chế đĩ được mơ tả trong giải thuật sau
for (int i = 1; i < 3; i++){
if( ][iebackoffTim > backoffThresholdDown[i] ||
dropRatio[i] < dropThresholdDown[i]) {
if( numberFlow[i] >1 || (numberFlow[i] == 1 && i != 1)){
Chuyển luồng ứng với tầng cĩ mức độ quan trọng nhỏ nhất
đang cịn tồn tại trong AC[i] xuống AC[i+1]
}
}
}
Tức là sau mỗi thời gian ∆t, kiểm tra tất cả các AC xem nếu ở AC đĩ cĩ một
hoặc nhiều hơn một luồng dữ liệu của dịch vụ video streaming chạy, và giá trị backoff
time trung bình của AC vượt ngưỡng backoffThresholdDown[AC] của nĩ, hoặc tỷ lệ
hủy khung dữ liệu vượt quá giá trị dropThresholdDown[AC], thì một luồng trong đĩ
sẽ được chọn để đẩy xuống AC cĩ độ ưu tiên thấp hơn. Tiêu chí để chọn là luồng cĩ
độ quan trọng thấp nhất với dịch vụ video streaming. Độ quan trọng này sắp theo thứ
tự giảm dần theo thứ tự: luồng cơ bản, luồng mở rộng 1, luồng mở rộng 2… Nhưng
nếu AC là AC cĩ độ ưu tiên nhận giá trị là 1 (prio = 1) và nĩ chỉ cĩ một luồng dữ liệu
cịn lại thì khơng được đẩy luồng này xuống vì đĩ là luồng cơ bản(tình trạng này chỉ
gặp khi mạng quá bận, và dịch vụ video streaming khơng thể duy trì được với bất cứ
cách thức nào).
Nhưng nếu chỉ cĩ cơ chế chuyển các luồng xuống các AC cĩ độ ưu tiên thấp hơn
khi mạng được xác định là bận thì chưa đủ. Bởi vì như kết luận ở phần 3.1 ta cĩ: với
trường hợp mạng rỗi nên gán độ ưu tiên của các luồng là bằng nhau và ở mức cao để
cĩ thể đảm bảo cung cấp được dịch vụ video streaming với chất lượng tốt hơn. Như
vậy song song với cơ chế đẩy các luồng xuống các AC cĩ độ ưu tiên thấp khi mạng
41
bận thì phải cĩ cơ chế kéo các luồng lên các AC cĩ độ ưu tiên cao hơn khi tình trạng
mạng là rảnh rỗi hơn. Do đĩ giải thuật trên cần viết lại như sau :
for (int i = 1 ; i < 3; i++){
if( ][iebackoffTim > backoffThresholdDown[i] ||
dropRatio[i] < dropThresholdDown[i]) {
if( numberFlow[i] >1 || (numberFlow[i] == 1 && i != 1)){
Chuyển luồng ứng với tầng cĩ mức độ quan trọng nhỏ nhất
đang cịn tồn tại trong AC[i] xuống AC[i+1]
}
}
if( ][iebackoffTim < backoffThresholdUp[i] ||
dropRatio[i] < dropThresholdUp[i] ){
Chuyển luồng ứng với tầng cĩ mức độ quan trọng cao nhất đang
cịn tồn tại trong AC[i+1] lên AC[i]
}
}
Việc chọn các ngưỡng để chuyển các luồng lên hay xuống các AC cĩ độ ưu tiên
cao hay thấp hơn AC hiện tại là khác nhau thay vì gán chung một ngưỡng để quy định
luồng dữ liệu tụt xuống hay kéo lên giữa các AC. Bởi vì điều này làm giảm thiểu khả
năng một luồng nào đĩ cứ bị chuyển đi chuyển lại liên tục giữa các AC do các thơng
các thơng số đánh giá tăng giảm quanh ngưỡng chung.
Mặt khác khi cĩ thay đổi thể hiện thơng qua tham số đánh giá ta khơng chuyển
một cách đột ngột và ồ ạt các luồng dữ liệu xuống các tầng thấp mà chuyển một cách
từ từ từng luồng một để hợp lý dần sự phân bố các luồng ở các AC sao cho phù hợp
nhất với độ thay đổi của mơi trường truyền.
3.3. Phân tích đánh giá
Giải pháp gán độ ưu tiên động cho các luồng video thực sự cĩ tác dụng trong
mơi trường mạng khơng ổn định như trong mạng khơng dây. Sự biến đổi của của mơi
trường truyền là thường xuyên diễn ra. Do đĩ việc thay đổi linh động độ ưu tiên các
luồng với mục đích đảm bảo duy trì dịch vụ cũng như chất lượng dịch vụ là cần thiết
và cĩ hữu ích.
42
Nếu như mơi trường mạng ban đầu đang rỗi. các luồng dữ liệu của video đều
được truyền ở AC cĩ độ ưu tiên cao, điều này làm cho dịch vụ video streaming cĩ thể
đạt được chất lượng tốt do cĩ sự kết hợp của các luồng mở rộng và luồng cơ bản.
Tuy nhiên nếu như tình trạng mạng chuyển sang bận, lúc này nếu các luồng vẫn
giữ nguyên độ ưu tiên của nĩ. Thì tình trạng tranh chấp sẽ xảy ra thường xuyên đồng
thời là việc tranh chấp giữa các trạm với nhau. Điều đĩ làm cho tất cả các luồng kể cả
luồng cơ bản cũng như các luồng mở rộng đều bị giảm tốc độ truyền cũng như tăng độ
trễ một cách mạnh mẽ. Điều này gây ra việc dịch vụ video streaming sẽ khơng duy trì
được ngay cả với chất lượng thấp.
Việc áp dụng giải pháp gán độ ưu tiên động sẽ giải quyết được trường hợp này
bởi vì khi tình trạng mạng là bận, các luồng mở rộng sẽ bị chuyển dần xuống các AC
cĩ độ ưu tiên thấp hơn. Do đĩ luồng cơ bản và cĩ thể thêm một số luồng mở rộng thấp
(các luồng mở rộng ứng với các tầng ở gần tầng cơ bản nhất) sẽ khơng phải chịu tranh
chấp với các luồng mở rộng cao (các luồng mở rộng ứng với các tầng ở xa so với tầng
cơ bản). Do đĩ chúng cĩ điều kiện truyền tốt hơn. Từ đĩ dịch vụ sẽ được đảm bảo hơn.
43
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
4.1. Mơi trường mơ phỏng
4.1.1. Xây dựng chương trình mơ phỏng.
Mơ phỏng thực hiện trên bộ mơ phỏng NS-2. NS-2 là phần mềm mơ phỏng
mạng điều khiển sự kiện riêng rẽ hướng đối tượng, được phát triển tại UC Berkely,
viết bằng ngơn ngữ C++ và OTcl. NS rất hữu ích cho việc mơ phỏng mạng diện rộng
(WAN) và mạng local (LAN). Bốn lợi ích lớn nhất của NS-2 phải kể đến đầu tiên là:
• Khả năng kiểm tra tính ổn định của các giao thức mạng đang tồn tại
• Khả năng đánh giá các giao thức mạng mới trước khi đưa vào sử dụng
• Khả năng thực thi những mơ hình mạng lớn mà gần như ta khơng thể thực thi
được trong thực tế
• Khả năng mơ phỏng nhiều loại mạng khác nhau
NS-2 (Network Simulator version 2.xx) là một trong các bộ mơ phỏng mạng mã
nguồn mở, tự do, được sử dụng rộng rãi nhất trong các trường đại học (cĩ giảng dạy về
mạng) trên thế giới. NS-2 đặc biệt mạnh trong việc mơ phỏng để nghiên cứu về các
giao thức mạng, từ tầng MAC cho đến tầng Transport. Sử dụng NS-2 cĩ thể mơ phỏng
các mạng cĩ dây (Wired Networks), khơng dây (Wireless Networks), mạng di động
khơng dây đặc biệt - MANET (Mobile Adhoc Networks), hỗn hợp, v.v. Các sự kiện
xảy ra trong mạng mơ phỏng và một số tham số cần nghiên cứu thường được kết xuất
ra “tệp vết” (Trace file) hoặc một số tệp dạng văn bản. Để nhận được các kết quả
mong muốn cần phải xử lý các tệp kết quả này và biểu diễn kết quả thu được, thường
là dưới dạng đồ thị.
NS thực thi các giao thức mạng như Giao thức điều khiển truyền tải (TCP) và
Giao thức gĩi người dùng (UDP); các dịch vụ nguồn lưu lượng như Giao thức truyền
tập tin (FTP), Telnet, Web, Tốc độ bit cố định (CBR) và Tốc độ bit thay đổi (VBR) ;
các kỹ thuật quản lý hàng đợi như Vào trước Ra trước (Drop Tail), Dị sớm ngẫu nhiễn
(RED) và CBQ; các thuật tốn định tuyến như Dijkstra… NS cũng thực thi
multicasting và vài giao thức lớp Điều khiển truy cập đường truyền (MAC) đối với mơ
phỏng LAN.
44
Hình 4.1. Tổng quan về NS dưới gĩc độ người dùng
OTcl Script Kịch bản OTcl
Simulation Program Chương trình Mơ phịng
OTcl Bộ biên dịch Tcl mở rộng hướng đối tượng
NS Simulation Library Thư viện Mơ phỏng NS
Event Scheduler Objects Các đối tượng Bộ lập lịch Sự kiện
Network Component Objects Các đối tượng Thành phần Mạng
Network Setup Helping Modules Các mơ đun Trợ giúp Thiết lập Mạng
Plumbling Modules Các mơ đun Plumbling
Simulation Results Các kết quả Mơ phỏng
Analysis Phân tích
NAM Network Animator Minh họa Mạng NAM
Trong hình trên, NS là Bộ biên dịch Tcl mở rộng hướng đối tượng; bao gồm các
đối tượng Bộ lập lịch Sự kiện, các đối tượng Thành phần Mạng và các mơ đun Trợ
giúp Thiết lập Mạng (hay các mơ đun Plumbing).
Để sử dụng NS-2, người dùng lập trình bằng ngơn ngữ kịch bản OTcl. User cĩ
thể thêm các mã nguồn Otcl vào NS-2 bằng cách viết các lớp đối tượng mới trong
OTcl. Những lớp này khi đĩ sẽ được biên dịch cùng với mã nguồn gốc.
Bộ mơ phỏng NS-2 sử dụng trong khĩa luận là phiên bản ns2-2.28 và được cài
thêm bộ hỗ trợ chuẩn ieee 802.11e. Dựa trên bộ mơ phỏng ns2 này ta sẽ đánh giá độ
45
hiệu quả của giải pháp gán độ ưu tiên động cho các luồng video streaming so với
chuẩn 802.11e. Để làm việc này ta cần phải xây dựng một kịch bản rõ ràng và phù hợp
sao cho việc đánh giá là cơng bằng và cho ra kết quả là chuẩn xác.
4.1.2. Kịch bản mơ phỏng
Mơ hình mơ phỏng sẽ bao gồm 3 máy trạm và một access point sử dụng mạng
khơng dây theo chuẩn ieee 802.11e như hình dưới.
Hình 4.2. Mơ hình thí nghiệm
Với mơ hình mơ phỏng này ta sẽ đi xét những thí nghiệm để so sánh độ hiệu quả
của giải pháp độ ưu tiên động cho các luồng so với chuẩn cũ trong 802.11e. Đầu tiên
ta sẽ quy định một số tham số chung để thực hiện mơ phỏng.
4.1.2.1. Các tham số mơi trường
Dựa trên mơ hình 802.11 MAC, các tham số PHY trong mơ hình mơ phỏng
EDCF được thiết lập như sau:
- SlotTime: 16µs - SIFS: 8µs
- PIFS: 12µs - DIFS: 16µs
Băng thơng chung của mạng là 2Mb/s. kích cỡ của mỗi gĩi tin của tầng ứng dụng
là 1kB.
Tham số về CW, PF, AIFS của IEEE 802.11e chuẩn dùng để mơ phỏng tuân theo
các giá trị ở bảng sau
46
Bảng 4.1. Các tham số mơ phỏng
AC PF AIFS CW_MIN CW_MAX TXOPLimit
0 2 2 7 15 0.003264s
1 2 2 15 31 0.006016s
2 2 3 31 1023 0
3 2 7 31 1023 0
4.1.2.2. Thơng số tại các trạm
Trạm thứ nhất (station 1) sẽ là trạm sử dụng để thực hiện việc streaming video
và cũng là trạm để ta quan sát và đánh giá. Ở trạm này, tầng ứng dụng sẽ sử dụng 3
luồng dữ liệu cbr để gửi dữ liệu cho AP các luồng này tương ứng là luồng cơ bản,
luồng mở rộng 1 và luồng mở rộng 2 được tạo ra do cơ chế phân tầng của dịch vụ
video streaming. Các luồng dữ liệu này tương ứng sẽ cĩ tốc độ là 128kbps, 256kbps và
512kbps.
Trạm thứ hai (station 2) và trạm thứ 3 (station 3) sẽ là hai trạm sử dụng để làm
mơi trường. Hai trạm này sẽ gây ra cho mạng tình trạng nghẽn hay rảnh rỗi bằng cách
thay đổi tốc độ truyền dữ liệu của các luồng cbr của nĩ. Mỗi trạm sẽ cĩ 3 luồng dữ liệu
cbr gửi cho AP các luồng này ban đầu sẽ cĩ tốc độ truyền bằng nhau và nhận giá trị là
100kbps, các luồng dữ liệu này sẽ được xếp vào 3 AC cĩ độ ưu tiên khác nhau với giá
trị là 1,2 và 3.
Trạm 2 và trạm 3 sẽ truyền dữ liệu trong suốt thời gian chạy mơ phỏng sau đĩ 10
giây (giây thứ 10 trong khoảng thời gian mơ phỏng) trạm 1 sẽ bắt đầu truyền dữ liệu.
Đến giây thứ 250 thì trạm 1 dừng việc truyền dữ liệu và mơ phỏng sẽ kết thúc ở giây
thứ 300
Để gây sự mất ổn đinh cho mạng, trong quá trình truyền tốc độ của các luồng dữ
liệu ở trạm 2 và trạm 3 sẽ được thay đổi đồng loạt tại một số thời điểm. Cụ thể là :
- giây thứ 40 : Tăng tốc độ truyền từ 100kbps lên 200kbps
- Giây thứ 70 : Tăng tốc độ truyền từ 200kbps lên 400kbps
- Giây thứ 100 : Tăng tốc độ truyền từ 400kbps lên 600kbps
- Giây thứ 130 : Tăng tốc độ truyền từ 600kbps lên 700kbps
47
- Giây thứ 160 : Giảm tốc độ truyền từ 700kbps xuống 150kbps
- Giây thứ 190 : Giảm tốc độ truyền từ 150kbps xuống 50kbps
- Giây thứ 210 : Tăng tốc độ truyền từ 50kbps lên 650kbps
Bây giờ, dựa trên mơ hình trên ta sẽ thực hiện hai thí nghiệm. Tương ứng với hai
trường hợp : sử dụng cơ chế IEEE 802.11e chuẩn và cơ chế áp dụng giải pháp gán độ
ưu tiên động cho các luồng dữ liệu. Kết quả sẽ được so sánh và phân tích ở trên hai
phương diện chính là băng thơng và độ trễ.
4.2. Kết quả mơ phỏng
4.2.1. Đánh giá về thơng lượng
Sau khi thực hiện hai thí nghiệm với mơ hình như mơ tả ở phần 4.1.2 tương ứng
với hai trường hợp sử dụng cơ chế chuẩn 802.11e và cơ chế áp dụng giải thuật gán độ
ưu tiên động cho các luồng dữ liệu. Ta cĩ đồ thị mơ tả thơng lượng của các luồng dữ
liệu ở station 1 như sau :
(a)
48
(b)
Hình 4.3. Thơng lượng của các luồng dữ liệu video streaming
(a) Sử dụng cơ chế 802.11e chuẩn ; (b) Sử dụng cơ chế gán độ ưu tiên động
Dựa vào hai đồ thị trên ta cĩ dễ dàng thấy rằng. Với phương pháp gán độ ưu tiên
động luồng dữ liệu ứng với tầng cơ bản (luồng cơ bản) luơn luơn duy trì mức thơng
lượng cố định là 128kbps để đảm bảo rằng bên nhận luơn luơn duy trì được dịch vụ
với bất kỳ thay đổi nào của mơi trường truyền.
Trong khi đĩ với trường hợp sử dụng cơ chế 802.11e chuẩn thì thơng lượng của
tất cả các luồng trong đĩ cả luồng cơ bản là khơng ổn định và tăng, giảm phụ thuộc
vào độ rỗi, bận của bận của mơi trường. Việc này gây ra tình trạng dịch vụ video
streaming sẽ khơng ổn định. Do gán cùng độ ưu tiên và cố định chúng trong suốt thời
gian truyền do đĩ kể cả những lúc mạng bận lưu lượng của các luồng mở rộng vẫn lớn
hơn luồng cơ bản (trường hợp cơ chế 802.11e chuẩn) điều này là một lãng phí bởi vì
trong khi luồng cơ bản cĩ thơng lượng nhỏ, việc giải mã các luồng mở rộng lại phụ
thuộc vào luồng cơ bản. Do đĩ thơng lượng của các luồng mở rộng trở nên hoang phí
và khơng cĩ ích gì.
Trong hai đồ thì trên ta cũng cĩ thể nhận thấy rằng trong điều kiện mạng rảnh rỗi
(từ giây thứ 10 đến giây thứ 40 và từ giây thứ 190 đến giây thứ 210) cả hai phương
pháp đều cho kết quả là 3 luồng dữ liệu video đều cĩ thơng lượng đạt mức cao do đĩ
chất lượng video ở bên nhận cĩ được cĩ chất lượng tốt. Song khi mạng bắt đầu trở nên
49
bận ví dụ như khoảng thời gian từ giây thứ 40 đến giây thứ 70 thì ở trường hợp sử
dụng cơ chế 802.11e chuẩn cả ba luồng dữ liệu sẽ đồng loạt giảm thơng lượng, trong
khi đĩ ở trường hợp sử dụng cơ chế độ ưu tiên động. luồng mở rộng 2 sẽ giảm nhanh
thơng lượng trong khi đĩ luồng mở rộng 1 và luồng cơ bản vẫn duy trì được thơng
lượng ở mức cao. Tức là chất lượng video ở bên nhận sẽ vẫn nhận được tín hiệu tốt do
sự kết hợp giữa luồng cơ bản và luồng mở rộng 1.
Ta cũng cĩ biểu đồ cột so sánh tổng số gĩi tin nhận được của mỗi luồng dữ liệu
như sau.
Hình 4.4. Biểu đồ so sánh tổng số gĩi tin
Biểu đồ so sánh tổng số gĩi tin cho ta thấy rằng. với phương thức gán độ ưu tiên
động luồng mở rộng 2 ở bên nhận thu được số lượng gĩi tin ít hơn so với trường hợp
sử dụng cơ chế 802.11e chuẩn. Tuy nhiên bù vào đĩ hai luồng cịn lại (luồng cơ bản và
luồng mở rộng 1) của thí nghiệm trong trường hợp sử dụng độ ưu tiên động lại cĩ kết
quả là số lượng gĩi tin truyền tới đích lớn hơn so với trường hợp sử dụng cơ chế
802.11e chuẩn. Mà trong video streming thì hai luồng này là quan trọng hơn luồng mở
rộng 2 do đĩ cĩ thể nhận thấy việc phương pháp độ ưu tiên động hướng tới việc duy trì
dịch vụ hơn là phương pháp 802.11e chuẩn (tỷ lệ gĩi tin truyền được chỉ tỷ lệ với tốc
độ truyền của luồng dữ liệu mà khơng quan tâm tới việc đảm bảo chất lượng cho các
luồng quan trọng).
4.2.2. Đánh giá về độ trễ
Ta sẽ đi so sánh độ trễ của các gĩi tin trong cả hai trường hợp; sử dụng cơ chế
802.11e chuẩn và cơ chế độ ưu tiên động cho các luồng. Để đánh giá xem phương
pháp độ ưu tiên động cĩ đem lại hiệu quả về độ trễ hay khơng.
50
Độ trễ của các luồng dữ liệu video tương ứng với cả hai trường hợp được thể
hiện bởi hai đồ thị dưới đây.
(a)
(b)
Hình 4.5. Độ trễ của các luồng dữ liệu video streaming
(a) Sử dụng cơ chế 802.11e chuẩn ; (b) Sử dụng cơ chế gán độ ưu tiên động
51
Dựa vào hai biểu đồ độ trễ của các luồng dữ liệu trên ta cĩ thể nhận thấy, với
phương pháp sử dụng độ ưu tiên chuẩn, độ trễ của các gĩi tin tương ứng với 3 luồng
dữ liệu video streaming là đồng đều trong mọi trường hợp khác nhau của mơi trường
mạng. Phần lớn trong số các gĩi tin nhận được ở bên nhận cĩ độ trễ lớn hơn 0.6s và
hơn một nửa cĩ độ trễ lớn hơn 0.8s. Một số dịch vụ video streaming cĩ yêu cầu độ trễ
rất thấp, thì với độ trễ tầm 0.6s hoặc 0.8s trở lên khơng thể đáp ứng được yêu cầu này
do đĩ cĩ thể dịch vụ sẽ bị gián đoạn và khĩ duy trì được trong tình trạng sử dụng cơ
chế này.
Trong khi đĩ ở trường hợp sử dụng cơ chế gán độ ưu tiên động. Giá trị độ trễ của
các gĩi tin ở luồng cơ bản luơn duy trì ở mức 0.015s cho dù cĩ bất kỳ sự thay đổi nào
của mơi trường. Luồng mở rộng 1 cĩ độ trễ khá cao thường thì các gĩi tin của nĩ cĩ độ
trễ vào khoảng 2s đến 3s. Luồng mở rộng 2 cĩ độ trễ thay đổi nhiều và cĩ thể ở mức
rất cao. Tuy là hai luồng mở rộng cĩ độ trễ cao nhưng bù vào đĩ độ trễ luồng cơ bản
luơn luơn ở mức thấp, cho nên bất kỳ dịch vụ video nào cho dù là dịch vụ yêu cầu độ
trễ video ở mức thấp đi nữa. Cơ chế này vẫn đảm bảo duy trì được dịch vụ.
Trong những trường hợp mạng rảnh rỗi, tức là khoảng từ gĩi tin thứ 1 đến gĩi
tin thứ 6000 và khoảng từ gĩi tin thứ 69000 tới gĩi tin thứ 73000 thì cả hai trường hợp
đều duy trì độ trễ của 3 luồng ở mức thấp tức là lúc này dịch vụ video streaming sẽ cho
chất lượng tốt nhất với độ trễ ba luồng hầu như khơng đáng kể. Do đĩ ở khoảng này
dịch vụ video cung cấp sẽ cĩ chất lượng tốt vì video cuối sẽ là sự kết hợp của cả ba
luồng dữ liệu. Nhưng ngồi khoảng thời gian mạng rảnh rỗi này ở hình (b) ta cĩ thể
thấy rằng trong khoảng từ gĩi tin thứ 6000 đến gĩi tin thứ 13000 và khoảng từ gĩi tin
thứ 62500 tới gĩi tin thứ 69000 luồng mở rộng 1 cĩ độ trễ nhỏ do đĩ khoảng thời gian
này dịch vụ video streaming cĩ thể cĩ kết quả là video ở đầu cuối là sự kết hợp của
luồng cơ bản và luồng mở rộng 1.
Qua kết quả của hai thí nghiệm trên ta cĩ thể thấy được rằng. Phương pháp phân
phối độ ưu tiên động cho các luồng là khá linh động và thích hợp hơn với tình trạng
mạng khơng ổn định một thuộc tính cố hữu và cơ bản của mạng khơng dây.
52
Chương 5. Kết luận
5.1. Kết luận
Khĩa luận đưa ra giải pháp gán độ ưu tiên động cho các luồng video streaming
nhằm tăng cường việc đảm bảo chất lượng dịch vụ video streaming trong mạng khơng
dây 802.11. Với việc gán độ ưu tiên cho các luồng tương ứng với các tầng của video
streaming một cách linh động dựa theo tình trạng của mơi trường.
Dựa vào chuẩn 802.11e giải pháp cĩ những sửa đổi để tăng thêm khả năng chống
chịu với sự thay đổi mơi trường truyền. Giải pháp cĩ khá nhiều ưu điểm như là Tận
dụng được băng thơng lúc mạng rảnh rỗi để truyền dữ liệu bằng việc gán độ ưu tiên
của các luồng là bằng nhau và ở mức cao. Nhưng cũng cĩ sự điều chỉnh phù hợp độ ưu
tiên của các luồng khi tình trạng tắc nghẽn xảy ra sao cho trung hịa giữa việc đảm bảo
rằng các luồng dữ liệu quan trong của video streaming được đảm bảo tốt về băng
thơng, độ trễ và tỷ lệ mất gĩi tin ngay cả khi mạng cĩ tình trạng tắc nghẽn cũng như cố
gắng cung cấp chất lượng tốt nhất cĩ thể của video đầu cuối.
5.2. Hướng phát triển tiếp theo
Kết quả mơ phỏng đã làm rõ được những đặc điểm tốt của giải pháp tuy nhiên
việc chọn các giá trị ngưỡng của backoff time cũng như tỷ lệ hủy gĩi tin vẫn chỉ dựa
trên các thí nghiệm mơ phỏng đơn thuần đưa ra. Vậy hướng tiếp theo để phát triển giải
pháp là tìm cách để chọn những giá trị ngưỡng một cách phù hợp nhất để cĩ thể cĩ
những bước chuyển độ ưu tiên cho các luồng một cách hợp lý
Một mặt nữa đĩ là giải pháp mới chỉ được đánh giá bằng cách mơ phỏng trên bộ
mơ phỏng ns-2 chứ chưa cĩ một kết quả thí nghiệm thực tế nào. Nên việc tiếp theo là
nên xây dựng được những thí nghiệm thực tế để đánh giá một cách trực quan từ đĩ cĩ
thể thu được những kết luận chính xác mà bộ mơ phỏng khơng cĩ được.
53
Tài liệu tham khảo
[1] Allen Miu, John G.Apostolopouslos, Wai-tian Tan and Mitchell Trott : “Low-
latency wireless video over 802.11 networks using path diversity”
[2] D. J. Leith, P. Clifford, D. Malone, and A. Ng “TCP fairness in 802.11e
WLANs”
[3] Gilles Berger-Sabbatel, Andrzej Duda, Olivier Gaudoin, Martin Heusse,
Franck Rousseau “Fairness and its impact on delay in 802.11 network”
[4] IEEE Std 802.11e (2007), Part 11: “Wireless LAN medium access control
(MAC) and physical layer (PHY) specifications”
[5] Pierre Ansel, Qiang Ni and Thierry Turletti “FHCF : A simple and eficient
scheduling scheme for IEEE 802.11e wireless LAN”
[6] Stefan Mangold, Sunghyun Choi, Peter May, Ole Klein, Guido Hiertz, Lothar
Stibor : “IEEE 802.11e wireless LAN for quality of service”
[7] Sunghyun Choi, Javier del Prado, Sai Shankar, Stefan Mangold : “IEEE
802.11e contention-base channel access (EDCF) performance evaluation”
[8] Wu Dapeng, Hou Yiwei Thomas, Zhu Wenwu, Zhang Ya-Qin, Peha Jon M.
(2001); “Streaming Video over the Internet: Approaches and Directions”.
[9] Yang Xiao, Haizhon Li, Sunghyun Choi “Protection and guarantee for voice
and video traffic in IEEE 802.11e wireless LANs”
Website:
Các file đính kèm theo tài liệu này:
- LUẬN VĂN-ĐẢM BẢO CHẤT LƯỢNG PHỤC VỤ CHO TRUYỀN VIDEO STREAMING TRONG MẠNG KHÔNG DÂY 802.11.pdf