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.
63 trang |
Chia sẻ: lylyngoc | Lượt xem: 2805 | Lượt tải: 2
Bạn đang xem trước 20 trang tài liệu 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, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
à 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