Giả sử sau khi tải xong phân đoạn Si có chỉ số mức chất lượng là Ii,
máy khách gửi truy vấn để thay đổi mức chất lượng cho các phân đoạn
tiếp theo. Khi đó, máy khách có thể phải nhận thêm k phân đoạn với tốc
độ bit cũ cho đến khi máy chủ nhận được truy vấn của máy khách. Do đó,
máy khách cần quyết định tốc độ bit mới cho các phân đoạn bắt đầu từ
phân đoạn Si+k+1, không phải là phân đoạn kế tiếp Si+1 như các phương
pháp khác đã thực hiện.
Do máy chủ đẩy liên tiếp các phân đoạn sau khi nó nhận được truy vấn
của máy khách, hiện tượng tràn bộ đệm có thể xảy ra nếu tốc độ bit của
các phân đoạn được tải về cao hơn tốc độ hiển thị video. Để tránh tràn
bộ đệm, thông báo steady state được máy khách gửi tới máy chủ khi mức
sử dụng bộ đệm hiện tại lớn hơn Bmax − RT T 2 giây. Khi đó, máy chủ sẽ
định kỳ gửi từng phân đoạn video tới máy khách sau mỗi khoảng thời gian
là độ dài một phân đoạn. Khi mức sử dụng bộ đệm nhỏ hơn hoặc bằng
Bmax − RT T 2 giây, thông báo loading state sẽ được gửi và sau đó máy chủ
đẩy liên tục các phân đoạn video tới máy khách.
33 trang |
Chia sẻ: honganh20 | Ngày: 01/03/2022 | Lượt xem: 328 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Tóm tắt Luận án Một số giải pháp nâng cao chất lượng streaming thích ứng video trên nền giao thức http, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ming dẫn tới máy khách
không thể phản ứng nhanh với sự biến động của mạng.
Để khắc phục vấn đề của chiến lược Push-N, một số giải pháp được
đề xuất nhằm quyết định số lượng phân đoạn được đẩy cho mỗi truy vấn
của máy khách [21, 28]. Tuy nhiên, máy khách phải tải đủ số lượng phân
đoạn video đã được truy vấn trước khi gửi một truy vấn mới. Kết quả là,
máy khách vẫn cần nhiều truy vấn cũng như sẽ phản ứng chậm với sự giảm
thông lượng đột ngột, dẫn đến bộ đệm có nhiều nguy cơ bị rỗng.
Rõ ràng là, nếu máy chủ có thể đẩy liên tiếp nhiều phân đoạn video
cho đến khi nhận được truy vấn yêu cầu thay đổi mức chất lượng từ máy
khách thì máy khách có thể ứng phó tốt hơn với sự biến động của mạng.
1.4. Kết luận chương
Chương này đã trình bày cơ sở lý thuyết nền tảng của công nghệ HAS và
các yếu tố tác động đến QoE trong HAS. Từ đó luận án đi đến kết luận
rằng để tối đa hóa QoE cần loại bỏ sự gián đoạn video, tăng tốc độ bit
trung bình, hạn chế tần suất và biên độ giảm mức chất lượng. Đây cũng
chính là các thông số ảnh hưởng đến QoE, được dùng để đánh giá các giải
pháp đề xuất và các giải pháp đối sánh trong luận án. Ngoài ra, các nghiên
cứu liên quan cũng được khảo sát kỹ lưỡng. Từ đó, luận án kế thừa những
ưu điểm và nghiên cứu, đề xuất các mô hình, thuật toán nhằm cải thiện
QoE được thể hiện trong Chương 2, Chương 3 và Chương 4.
8
Chương 2
CẢI THIỆN QoE TRONG STREAMING THÍCH ỨNG
VIDEO DẠNG VBR QUA HAS SỬ DỤNG SDP
2.1. Giới thiệu chương
Chương này đề xuất giải pháp cải thiện QoE trong streaming thích ứng
video dạng VBR dùng SDP. Cách tiếp cận của tác giả khác so với các giải
pháp đã được nghiên cứu ở một số điểm sau đây. Thứ nhất, giải pháp đề
xuất được đánh giá trên băng thông biến động mạnh theo thời gian. Thứ
hai, nó hỗ trợ hiệu quả cho streaming video VBR có tốc độ bit biến động
rất mạnh. Thứ ba, giải pháp đề xuất các mô hình toán để dự đoán một số
thông số QoE trước khi một phiên streaming thực sự bắt đầu.
2.2. Ý tưởng sử dụng SDP trong streaming thích
ứng
Để áp dụng SDP, ta cần xây dựng các trạng thái của hệ thống. Trạng thái
của hệ thống được đặc trưng bởi giá trị băng thông, mức sử dụng bộ đệm
và mức chất lượng của video tại thời điểm quan sát trạng thái đó. Tổ hợp
các giá trị sau khi được rời rạc hóa băng thông, bộ đệm và các mức chất
lượng video tạo nên tất cả các trạng thái của hệ thống. Khi hệ thống chuyển
từ trạng thái này sang trạng thái khác sẽ sinh ra hàm chi phí. Một vấn đề
phạm vi vô hạn được đề xuất để tìm ra tập chính sách tối ưu cho tất cả các
trạng thái của hệ thống. Vai trò của tập chính sách này là ánh xạ tham số
điều khiển (cụ thể là mức chất lượng video cho phân đoạn kế tiếp) với tất
cả các trạng thái của hệ thống. Dựa trên tập chính sách tìm được và mô
hình hệ thống được xây dựng, các mô hình toán học được phát triển để dự
đoán các thông số ảnh hưởng đến QoE trước mỗi phiên bao gồm mức chất
9
lượng trung bình, mức sử dụng bộ đệm trung bình, biên độ nhảy mức chất
lượng trung bình và xác suất bộ đệm bị rỗng.
2.3. Mô hình hóa hệ thống để áp dụng SDP
2.3.1. Rời rạc hóa băng thông
i,j
Băng thông được rời rạc hóa thành W mức. Sau đó, W trạng thái băng
thông khác nhau BWw (1 ≤ w ≤ W ) được tạo ra từ W mức này. Do băng
thông mạng thường biến động mạnh và ngẫu nhiên, luận án sử dụng mô hình
chuỗi Markov được minh họa trong Hình 2.3. Mỗi trạng thái được đặc trưng
bởi một giá trị băng thông BWw (1 ≤ w ≤ W ). Có một xác suất pij khi băng
thông chuyển từ trạng thái này sang trạng thái khác sau mỗi bước thời gian.
Tổng các xác suất trong mô hình (∑ pij ) bằng 1.
Hình 2.3: Mô hình băng thông Markov-Chain gồm W trạng thái
2.3.2. Rời rạc hóa bộ đệm
Tương tự như băng thông, bộ đệm được rời rạc hóa thành B mức từ 1 đến
Bs tương ứng với số phân đoạn video có trong bộ đệm. Bs là kích thước
bộ đệm.
2.4. Mô tả vấn đề và giải pháp
2.4.1. Trạng thái hệ thống
Hệ thống được đặc trưng bởi biến trạng thái sk(bk, bwk, vk) khi một phân
đoạn video được tải xong tại giai đoạn k. Tại mỗi trạng thái sk, hệ thống
lựa chọn một hành động a tương ứng với mức chất lượng cho phân đoạn
tiếp theo. Hệ thống sau đó ngẫu nhiên nhảy sang trạng thái mới sk+1 tại
giai đoạn tiếp theo, khi đó sinh ra một chi phí C(sk, a).
10
2.4.2. Xác suất chuyển trạng thái
Do hệ thống là ngẫu nhiên, có nghĩa là đầu ra của hệ thống ứng với mỗi
hành động a là bất định, cho nên xác suất chuyển trạng thái phụ thuộc lựa
chọn a cần được xây dựng. Xác suất mà trạng thái sk chuyển đến trạng
thái sk+1, với một lựa chọn a được định nghĩa như sau:
Pr {sk+1|sk, a} =
{
Pr {bwk+1|bwk} , bk+1 = ba, vk+1 = a,
0, bk+1 = ba||vk+1 = a.
(2.7)
2.4.3. Hàm chi phí
Hàm chi phí được định nghĩa để phạt những yếu tố gây ra sự giảm QoE,
đó là: tốc độ bit, sự gián đoạn video và sự biến động mức chất lượng, cụ
thể như sau:
C(sk, a) = α×∆rk + β ×∆bk + γ ×∆qk (2.11)
với ∆rk là sự sai khác giữa băng thông hiện tại và tốc độ bit của phân
đoạn tiếp theo được lựa chọn bởi hành động a (∆rk = |bwk − ra|), ∆bk là
sự chênh lệch của mức sử dụng bộ đệm hiện tại với mức sử dụng bộ đệm
tối ưu (∆bk = |bk − bopt|) và ∆qk là sự sai khác giữa mức chất lượng được
lựa chọn với mức chất lượng trước đó (∆qk = (vk − a)2).
2.4.4. Giải pháp tìm tập chính sách tối ưu
Đối với mỗi trạng thái sk, hành động a hợp lý nhất, được gọi là chính sách
cho trạng thái sk. Tập pi chứa các chính sách cho từng trạng thái sk, là sự
ánh xạ giữa tập trạng thái và tập hành động pi : s −→ a. Luận án sử dụng
thuật toán PI (Policy Iteration) của SDP [42] để tìm ra tập chính sách tối
ưu pi∗ sao cho tối tiểu hóa hàm giá trị của mỗi trạng thái:
pi∗(sk) = argmina
[
C(sk, a) +
∑
sr∈s
P (sr|sk, a)× V (sr)
]
, ∀a ∈ a. (2.13)
Các tập chính sách tìm được giống như một bảng tìm kiếm để ánh xạ mỗi
trạng thái với một mức chất lượng tối ưu cho phân đoạn tiếp theo.
2.5. Dự đoán các thông số ảnh hưởng đến QoE
Để dự đoán các thông số ảnh hưởng đến QoE, điểm mấu chốt là cần xác
định vectơ xác suất p = [p1, p2, ..., pN ] với pn (1 ≤ n ≤ N) là xác suất mà
11
hệ thống ở trạng thái sn trong suốt phiên streaming. Trong phần này, xác
suất trạng thái p được tính như sau:
p =
∑L
i=1 p
ti
L
(2.16)
với L là độ dài video và pti =
[
pti1 , p
ti
2 , ..., p
ti
N
]
(1 ≤ i ≤ L), trong đó ptin
(1 ≤ n ≤ N) là xác suất mà hệ thống ở trạng thái sn tại thời điểm ti.
2.5.1. Dự đoán chất lượng video
Mức chất lượng trung bình Av của video được dự đoán bởi:
Av =
N∑
n=1
vn × pn. (2.17)
2.5.2. Dự đoán sự nhảy mức chất lượng
Biên độ nhảy mức chất lượng trung bình trong một phiên streaming:
Asw =
N∑
n=1
(vn − an)× pn, an ∈ pi∗. (2.19)
2.5.3. Dự đoán mức sử dụng bộ đệm
Mức sử dụng bộ đệm trung bình Ab và xác suất video bị gián đoạn Pund
được thể hiện qua 2.7 và 2.8 dưới đây:
Ab =
N∑
n=1
bn × pn, (2.20)
Pund =
N∑
n=1
bn × pn|bn=1. (2.21)
2.6. Thực nghiệm và đánh giá
2.6.1. Cài đặt thực nghiệm
Test-bed gồm một máy khách chạy Java 8.0 trên máy tính Window 7 để
thực thi thuật toán thích ứng và một máy chủ Apache2 chạy trên Ubuntu
12
12.04LTS để lưu các phân đoạn video. Băng thông kênh được giả lập bằng
Dummynet [33]. RTT được đặt bằng 40ms. Video VBR được sử dụng là
Tokyo Olympic [38] có Vmax = 9. Đoạn video được đánh giá gồm 300 phân
đoạn. Độ dài mỗi phân đoạn video bằng 2 giây. Băng thông được chia thành
10 mức (W = 10). Xác suất ban đầu po là vectơ 1×N với các giá trị được
đặt là 1/N . Kích thước bộ đệm được đặt là 5 phân đoạn. Mức sử dụng bộ
đệm tối ưu được đặt là 4 phân đoạn.
2.6.2. Đánh giá thực nghiệm
1. Đánh giá sự thích ứng. Các giải pháp được đánh giá trên băng thông
được lấy từ một mạng di động thực tế [27]. Video Tokyo Olympic
gồm 9 phiên bản có độ dài L bằng 300 phân đoạn. Sự thích ứng chất
lượng của giải pháp đề xuất, giải pháp SDP và giải pháp BE lần lượt
được thể hiện trong Bảng 2.1 Có thể thấy rằng giải pháp BE ít hiệu
quả hơn so với giải pháp đề xuất về việc cải thiện QoE. Cụ thể, Aq
và Asw của giải pháp BE lần lượt là 7.85 và 0.43 trong khi Aq và
Asw của giải pháp đề xuất lần lượt là 7.88 và 0.18. Đối với giải pháp
thích ứng dựa trên SDP, rõ ràng thông số ảnh hưởng đến QoE của
giải pháp này là xấu nhất với chất lượng trung bình thấp nhất (7.40)
và biên độ nhảy mức chất lượng trung bình cao nhất(0.76).
Bảng 2.1: Thống kê kết quả thích ứng của các giải pháp
Tham số SDP BEĐề xuất
Ab(s) 8.62 8.85 8.52
Aq 7.40 7.85 7.88
Asw 0.76 0.43 0.18
Prund 0.00 0.00 0.00
2. Đánh giá các mô hình dự đoán các tham số ảnh hưởng đến QoE.
Ngữ cảnh dùng một băng thông có sẵn
Lưu lượng được lấy từ mạng di động [27] được dùng làm băng thông
cho mô hình toán trong việc thống kê băng thông đồng thời được
dùng trong mô phỏng. Bảng 2.2 thống kê chi tiết các kết quả thực
nghiệm trong ba trường hợp lựa chọn giá trị cho phiên bản lớn nhất:
Vmax = 7, Vmax = 8 hoặc Vmax = 9. Dễ dàng nhận thấy rằng không
có sự khác nhau nhiều giữa thông số chất lượng được dự đoán và
thông số chất lượng được đo đạc. Đặc biệt, khi phiên bản lớn nhất
(Vmax) càng nhỏ thì hệ thống dự đoán gần như chính xác các thông
số ảnh hưởng đến QoE.
13
Bảng 2.2: Ngữ cảnh dùng một băng thông có sẵn
Tham số Vmax = 9 Vmax = 8 Vmax = 7
Dự Mô Dự Mô Dự Mô
đoánphỏng đoánphỏng đoánphỏng
Ab(s) 9.48 8.52 9.59 8.77 9.8 9.68
Aq 7.64 7.88 7.45 7.73 6.48 6.87
Asw 0.30 0.18 0.14 0.09 0.03 0.02
Prund 0.01 0.00 0.006 0.00 0.00 0.00
Ngữ cảnh dùng các lưu lượng lịch sử
Ngữ cảnh này sử dụng hai băng thông lịch sử được ghi lại từ hai phiên
streaming của máy khách, trong đó một băng thông được dùng cho
mô hình toán và một băng thông dùng cho mô phỏng. Bảng 2.3 thống
kê chi tiết các kết quả thực nghiệm trong ba trường hợp lựa chọn giá
trị cho phiên bản lớn nhất: Vmax = 7, Vmax = 8 hoặc Vmax = 9. Có
thể thấy mô hình toán dự đoán khá chính xác các thông số chất lượng
video so với mô phỏng.
Bảng 2.3: Ngữ cảnh dùng các lưu lượng lịch sử
Tham số Vmax = 9 Vmax = 8 Vmax = 7
Dự Mô Dự Mô Dự Mô
đoánphỏng đoánphỏng đoánphỏng
Ab(s) 9.52 8.44 9.61 8.85 9.69 9.65
Aq 7.48 7.92 7.27 7.71 6.80 6.98
Asw 0.31 0.19 0.18 0.11 0.08 0.05
Prund 0.00 0.00 0.00 0.00 0.00 0.00
2.7. Kết luận chương
Trong chương này, luận án đã đề xuất một giải pháp thích ứng chất lượng
cho streaming video dạng VBR qua HTTP sử dụng lập trình động ngẫu
nhiên (SDP) đồng thời đề xuất các mô hình toán học để dự đoán trước
các thông số ảnh hưởng đến QoE. Thực nghiệm trong hai ngữ cảnh offline
và trực tuyến cho thấy: (i) giải pháp đề xuất thích ứng tốt với với biến
động mạnh của thông lượng mạng và sự biến động của tốc độ bit video,
(ii) thông số ảnh hưởng đến QoE được dự đoán bằng mô hình toán tương
đối khớp với thông số được đo đạc từ mô phỏng.
14
Chương 3
GIẢI PHÁP PHÂN BỔ BĂNG THÔNG VÀ CẢI THIỆN
QoE TRONG STREAMING ĐỒNG THỜI NHIỀU VIDEO
VBR QUA HAS
3.1. Giới thiệu chương
Trong chương này, một mô hình thỏa hiệp giữa chất lượng cảm nhận và độ
trễ ban đầu [29] được sử dụng để tìm ra mức chất lượng thích ứng tốt nhất
cho một video ứng với một mức băng thông được cấp cho video đó. Sau đó,
một thành phần trong mạng đóng vai trò phân bổ băng thông và lựa chọn
mức chất lượng video phù hợp cho từng máy khách nhằm cải thiện QoE.
3.2. Mô hình thỏa hiệp giữa chất lượng video và độ
trễ
Mô hình thỏa hiệp giữa chất lượng cảm nhận và độ trễ đề xuất trong [29]
được thực hiện bằng cách thay thế một số phân đoạn có tốc độ bit cao của
một mức chất lượng bằng các phân đoạn tương ứng ở mức chất lượng thấp
hơn. Mục đích của mô hình là hạ tốc độ bit đại diện và/hoặc giảm độ trễ
ban đầu trong khi chất lượng video tổng thể không bị ảnh hưởng nhiều.
Giả sử video C gồm M mức chất lượng {Vi, 1 ≤ i ≤M}. Mỗi mức
chất lượng Vi có chất lượng QPi và gồm N phân đoạn với tốc độ bit
{Bij , 1 ≤ j ≤ N}. Các tác giả trong [29] đã định nghĩa một hàm p() như
sau. Đặt V ∗ là mức chất lượng thích ứng tương ứng với một hàm p(). Tại
mỗi phân đoạn, nếu tốc độ bit của nó lớn hơn thì phân đoạn đó được thay
thế bởi một phân đoạn tương ứng ở mức chất lượng thấp hơn gần nhất mà
có tốc độ bit nhỏ hơn .
15
Ngưỡng tốc độ bit có thể nhận một số giá trị rời rạc. Với mỗi hàm
p(), ta tìm được một mức chất lượng thích ứng V ∗ có chất lượng Q∗ và độ
trễ ban đầu d0∗, với một tốc độ bit đại diện R bằng mức băng thông được
cấp. Tìm p() sao cho lợi ích U của người dùng là lớn nhất, với giới hạn độ
trễ là DT . Lợi ích U được định nghĩa là hàm bù trừ giữa chất lượng video
và độ trễ ban đầu:
U = f(Q∗, d0∗). (3.2)
Mô hình này tìm ra một phiên bản video thích ứng mang lại giá trị lợi
ích cao nhất cho người dùng, ứng với một mức băng thông được cấp cho
video. Luận án sử dụng mô hình này bối cảnh streaming đồng thời nhiều
video qua đường truyền có băng thông giới hạn.
3.3. Streaming đồng thời nhiều video VBR qua HAS
3.3.1. Mô tả vấn đề
Kiến trúc hệ thống đề xuất được trình bày trong Hình 3.2 với nhiều video
VBR được lưu tại máy chủ. Thông tin về từng video (phiên bản thích ứng,
độ trễ ban đầu, lợi ích của người dùng tương ứng với từng mức băng thông
có thể được cấp cho từng video) được lưu trong tệp MPD. Một thuật toán
tối ưu được đặt tại khối điều khiển với mục đích xác định phiên bản thích
ứng cho từng video sao cho tối đa hóa lợi ích trung bình của người dùng.
Bo�leneckBackbone
Khối điều
Các máy chủ
Các máy khách
Tòa nhà, trường học
khiển
Hình 3.2: Hệ thống streaming nhiều video
Giả sử hệ thống streaming đồng thời H video tới các máy khách. Mỗi
video Vi có thể được cấp Ki mức băng thông khác nhau. Băng thông tại
mỗi mức ki được ký hiệu bởi ri(ki),(ki ∈ [1;Ki]). Tại mỗi mức băng thông
được cấp ri(ki), ta có phiên bản thích ứng tốt nhất V ∗i (ki) mang lại giá trị
lợi ích u∗i (ki) cao nhất, ứng với ngưỡng tốc độ bit ∗i (ki).
Tìm {V ∗i (ki)} cho tất cả các video Vi (ki ∈ [1;Ki] , i ∈ [1;H]) sao cho
tối đa hóa lợi ích trung bình U , cụ thể:
16
U = max(
H∑
i=1
wi × u∗i (ki)), i ∈ [1;H] , ki ∈ [1;Ki], (3.10)
với điều kiện
H∑
i=1
ri(ki) ≤ RT , i ∈ [1;H] , ki ∈ [1;Ki], (3.11)
và
d0∗i (ki) ≤ DT , i ∈ [1;H] , ki ∈ [1;Ki]. (3.12)
3.3.2. Giải pháp phân bổ băng thông và thích ứng chất lượng
1. Xử lý offline tại máy chủ. Trong khâu này, mô hình thỏa hiệp giữa
chất lượng hình ảnh và độ trễ được áp dụng cho tất cả các mức băng
thông khác nhau có thể được cấp cho từng video. Do đó, ta có thể
tạo ra một cơ sở dữ liệu chứa những thông tin của tất cả các phiên
bản thích ứng tốt nhất tương ứng với tất cả các mức băng thông khác
nhau có thể được cấp cho tất cả các video. Cơ sở dữ liệu này được
lưu tại máy chủ, trong tệp MPD của các video và được cung cấp cho
khối điều khiển.
2. Xử lý trực tuyến tại khối điều khiển. Dựa trên tệp MPD của tất cả
các video, thuật toán tại khối điều khiển tìm phiên bản thích ứng
cùng với băng thông được cấp cho từng video sao cho tối đa hóa lợi
ích U trong biểu thức (3.2) thỏa mãn (3.3) và (3.4).
3.3.3. Kết quả thực nghiệm và đánh giá
Trước hết, tác giả so sánh phương pháp đề xuất với phương pháp CSM về
lợi ích trung bình của người dùng khi streaming 5 video. Kết quả thể hiện
trên hình 3.5.
Tiếp theo, tác giả đánh giá sự tối ưu cũng như thời gian chạy của thuật
toán xử lý trực tuyến được đề xuất so với thuật toán Viterbi (Hình 3.7). Cả
hai thuật toán được triển khai trên C++ và thời gian chạy được đo trên
Window 8.1 notebook với CPU Intel i5-1.7GHz và bộ nhớ 6GB. Số luồng
video (H) thay đổi từ 5 đến 15 và được lựa chọn ngẫu nhiên từ 5 video trên.
Giả sử rằng băng thông được cấp là Rc = 800 ∗ H(kbps).
Hình 3.8 thể hiện thời gian chạy của thuật toán đề xuất với các số lượng
video khác nhau. Có thể thấy, thời gian chạy của thuật toán đề xuất chỉ
17
11.5
2
2.5
3
3.5
4
4.5
5
2000 3000 4000 5000 6000 7000 8000 9000 10000
Lợ
i í
ch
(M
O
S)
Băng thông (kbps)
CSM Đề xuất
Hình 3.5: So sánh giá trị lợi ích trung bình của phương pháp đề xuất và phương
pháp CSM.
0.001
0.1
10
1000
100000
3 5 7 9 11 13 15
Th
ờ
i g
ia
n
ch
ạy
(m
s)
Số lượng video
Hình 3.7: Thời gian chạy của thuật toán đề xuất và thuật toán Viterbi
0
20
40
60
80
100
120
140
160
180
200
0 5000 10000 15000 20000 25000 30000 35000
Th
ờ
i g
ia
n
ch
ạy
(m
s)
Số lượng video
Hình 3.8: Thời gian chạy của thuật toán đề xuất
tính bằng đơn vị ms ngay cả khi số lượng luồng video lên đến hàng nghìn.
Do đó, thuật toán đề xuất có thể được dùng trong hệ thống streaming lớn.
3.4. Kết luận chương
Trong chương này, một thuật toán offline thực hiện tại máy chủ để tìm ra
các phiên bản thích ứng tốt nhất tương ứng với các mức băng thông được
cấp cho video. Sau đó, một thuật toán online được thực hiện tại khối điều
khiển trong một thành của mạng để phân bổ băng thông và lựa chọn phiên
bản thích ứng phù hợp nhất cho tất cả máy khách nhằm tối đa hóa QoE.
18
Chương 4
ỨNG DỤNG TÍNH NĂNG SERVER PUSH CỦA HTTP/2
ĐỂ CẢI THIỆN QoE TRONG STREAMING VIDEO
QUA HAS
4.1. Giới thiệu chương
Năm 2015, giao thức HTTP/2 ra đời cung cấp một số tính năng mới trong
đó tính năng Server Push có thể được sử dụng hiệu quả trong streaming
video. Trong chương này, tác giả đề xuất hai phương pháp thích ứng chất
lượng video dùng tính năng Server Push. Thứ nhất, tác giả lần đầu tiên
đề xuất một phương pháp thích ứng chất lượng trong streaming video qua
HTTP/2 với video dạng VBR. Thứ hai, tác giả đề xuất một cách tiếp cận
hiệu quả hơn nữa khi sử dụng tính năng Server Push cho HAS. Phương
pháp này có tên là Full Push, được áp dụng cho video dạng CBR.
4.2. Giải pháp cải thiện QoE trong streaming video
VBR qua HTTP/2
4.2.1. Giải pháp thích ứng chất lượng
Quyết định mức chất lượng
Giả sử rằng, sau khi gửi truy vấn i để yêu cầu Ni phân đoạn video tại
mức chất lượng Ii, máy khách nhận được tất cả Ni phân đoạn video, mỗi
phân đoạn có độ dài τ giây. Mức sử dụng bộ đệm hiện tại là Bi, thông
lượng hiện tại là Ti. Khi đó, máy khách sẽ quyết định mức chất lượng Ii+1
và số lượng phân đoạn Ni+1 cho truy vấn tiếp theo i+ 1.
Để lựa chọn mức chất lượng cho truy vấn tiếp theo, cần thiết phải dự
đoán thông lượng tương lai. Do tốc độ bit của video VBR biến động mạnh
19
nên cần sử dụng phương pháp dự đoán thông lượng đáp ứng nhanh để kịp
thời ứng phó [40]. Theo đó, thông lượng tại thời điểm nhận xong Ni phân
đoạn video của truy vấn hiện tại i được dùng làm thông lượng dự đoán cho
truy vấn kế tiếp.
Do tốc độ bit của video dạng VBR biến động rất mạnh, máy khách chỉ
biết tốc độ bit của các phân đoạn đã được nhận, và chúng thuộc về các
mức chất lượng video khác nhau. Do đó, sau khi nhận được phân đoạn có
chỉ số j, cần dự đoán (i) tốc độ bit của các phân đoạn thuộc các mức chất
lượng khác nhau tại cùng một chỉ số j và (ii) tốc độ bit tại phân đoạn j+1
của tất cả các mức chất lượng. Các công việc này được thực hiện lần lượt
bởi phương pháp dự đoán tốc độ bit nội dòng và phương pháp dự đoán tốc
độ bit liên dòng được đề xuất trong [40].
Sau khi dự đoán thông lượng và tốc độ bit video, mức chất lượng video
được quyết định tăng, giữ ổn định hoặc giảm tương ứng với ba khoảng giá
trị với các ngưỡng [0;Blow], [(Blow;Bhigh] và [Bhigh;Bmax] với Bmax là kích
thước của bộ đệm.
Quyết định số lượng phân đoạn cho mỗi truy vấn
Số lượng phân đoạn Ni+1 được lựa chọn để tối thiểu hóa hàm chi phí
C. Đây là tổng của chi phí liên quan đến truy vấn Crq và chi phí liên quan
đến bộ đệm Cbf .
C = α× Crq + (1− α)× Cbf , (4.4)
với
Crq =
1
Ni+1
, (4.5)
Cbf =
Ni+1 × τ
Bi −Blow , (4.6)
và α, (1− α) lần lượt là trọng số của Crq và Cbf .
4.2.2. Kết quả thực nghiệm và đánh giá
Phương pháp đề xuất được đánh giá và so sánh với hai phương pháp đó
là Push-N được trình bày trong [44] và phương pháp AGG được đề xuất
trong [28]. Trong phương pháp Push-N, số lượng phân đoạn cho mỗi truy
vấn được cố định là N phân đoạn. Trong phương pháp AGG, tốc độ bit
được quyết định là tốc độ bit cao nhất mà nhỏ hơn thông lượng mạng dự
đoán.
20
Bảng 4.2: Thống kê kết quả thích ứng
Tham số Push-N AGGĐề xuất
N=1N=2N=3N=4
Số lượng truy vấn 500 250 167 125 180 173
Mức chất lượng tb 5.62 5.68 5.68 5.70 5.74 5.8
Số lần giảm mức chất lượng 73 48 35 26 35 18
Mức sử dụng bộ đệm nhỏ nhất 12.9 12.6 9.9 4.0 5.7 11
Thống kê về kết quả thích ứng được trình bày trong Bảng 4.1. Thống
kê cho biết số lượng truy vấn, tốc độ bit trung bình, sự giảm mức chất
lượng và mức sử dụng bộ đệm.
Bảng 4.1 cho thấy phương pháp đề xuất vượt trội hơn các phương pháp
khác trong việc cân bằng giữa sự thích ứng chất lượng và overhead liên
quan đến lượng truy vấn.
4.3. Một cách sử dụng hiệu quả tính năng Server
Push
4.3.1. Mô tả chung
RTT
RTT/2
τ
τ
Máy khách Máy chủ Máy khách Máy chủ
RTT
RTT/2
k phân đoạn
Thời gian Thời gian Thời gian Thời gian
Hình 4.7: Cơ chế hoạt động của tính năng Server Push trong giải pháp đề xuất.
Hoạt động của hệ thống đề xuất được thể hiện trong Hình 4.1. Máy
khách gửi truy vấn quyết định mức chất lượng cho các phân đoạn sắp tải
về. Máy chủ đẩy liên tục phân đoạn cho đến khi nhận được truy vấn mới
của máy khách. Cần quyết định bitrate mới tại thời điểm sau khi nhận nốt
21
k phân đoạn của bitrate cũ. Quyết định bitrate dựa vào thông lượng dự
đoán và mức sử dụng bộ đệm.
Giả sử sau khi tải xong phân đoạn Si có chỉ số mức chất lượng là Ii,
máy khách gửi truy vấn để thay đổi mức chất lượng cho các phân đoạn
tiếp theo. Khi đó, máy khách có thể phải nhận thêm k phân đoạn với tốc
độ bit cũ cho đến khi máy chủ nhận được truy vấn của máy khách. Do đó,
máy khách cần quyết định tốc độ bit mới cho các phân đoạn bắt đầu từ
phân đoạn Si+k+1, không phải là phân đoạn kế tiếp Si+1 như các phương
pháp khác đã thực hiện.
Do máy chủ đẩy liên tiếp các phân đoạn sau khi nó nhận được truy vấn
của máy khách, hiện tượng tràn bộ đệm có thể xảy ra nếu tốc độ bit của
các phân đoạn được tải về cao hơn tốc độ hiển thị video. Để tránh tràn
bộ đệm, thông báo steady state được máy khách gửi tới máy chủ khi mức
sử dụng bộ đệm hiện tại lớn hơn Bmax − RTT2 giây. Khi đó, máy chủ sẽ
định kỳ gửi từng phân đoạn video tới máy khách sau mỗi khoảng thời gian
là độ dài một phân đoạn. Khi mức sử dụng bộ đệm nhỏ hơn hoặc bằng
Bmax − RTT2 giây, thông báo loading state sẽ được gửi và sau đó máy chủ
đẩy liên tục các phân đoạn video tới máy khách.
Để dự đoán thông lượng T ei+1, luận án sử dụng phối hợp cả hai cách dự
đoán thông lượng được trình bày trong 1.2.3, đó là thông lượng của phân
đoạn vừa được tải xong Ti và thông lượng trung bình T si+1.
4.3.2. Thuật toán thích ứng chất lượng
Để quyết định mức chất lượng cho mỗi truy vấn, luận án đề xuất bốn trường
hợp, đó là tăng, giữ ổn định, giảm và trường hợp nguy hiểm tương ứng khi
máy khách tăng, duy trì, giảm hoặc lựa chọn mức chất lượng thấp nhất.
Khi đó, bộ đệm được chia thành bốn khoảng giá trị bởi các ngưỡng Bmin,
Blow và Bhigh (Bmin < Blow < Bhigh < Bmax) với Bmax là kích thước bộ
đệm. Khoảng bộ đệm từ Blow đến Bhigh được coi là khoảng an toàn với tốc
độ bit video được duy trì ổn định. Khi mức sử dụng bộ đệm tương lai thấp
hơn hoặc cao hơn khoảng này, tốc độ bit sẽ được giảm hoặc tăng tương
ứng.
4.3.3. Thực nghiệm và đánh giá kết quả
Tất cả các phương pháp được đánh giá khi streaming đoạn video gồm 550
phân đoạn, với RTT bằng 100ms và băng thông được mô tả ở trên. Hình
4.2 thể hiện kết quả thích ứng của các phương pháp. Để rõ ràng, sự so sánh
tốc độ bit của tất cả các phương pháp được thể hiện trong Hình 4.2a, 4.2b,
22
4.2c. Hình 4.2d thể hiện sự thay đổi mức sử dụng bộ đệm của các phương
pháp trong suốt phiên streaming.
0
500
1000
1500
2000
2500
3000
0 50 100 150 200 250 300 350 400 450 500 550
B
it
ra
te
(k
bp
s)
Thời gian (s)
Thông lượng Push 1 Push 8 Đề xuất
(a) Push 1, Push 8 and phương
pháp đề xuất.
0
500
1000
1500
2000
2500
3000
0 50 100 150 200 250 300 350 400 450 500 550
B
it
ra
te
(k
bp
s)
Thời gian (s)
Thông lượng Push 4 Push 12 Đề xuất
(b) Push 4, Push 12 and
phương pháp đề xuất.
0
500
1000
1500
2000
2500
3000
0 50 100 150 200 250 300 350 400 450 500 550
B
it
ra
te
(k
bp
s)
Time (seconds)
Throughput Adapt-N method Proposed method
(c) Phương pháp Adapt-N and
phương pháp đề xuất.
Hình 4.10: Kết quả thích ứng của tất cả các phương pháp.
4.4. Kết luận chương
Trong chương đã trình bày hai đề xuất sử dụng tính năng Server Push của
HTTP/2 trong streaming thích ứng video. Đề xuất thứ nhất được áp dụng
cho streaming video dạng VBR. Trong đề xuất này, máy khách quyết định
mức chất lượng và số lượng phân đoạn cho mỗi truy vấn. Trong đề xuất
thứ hai, một cách tiếp cận mới của tính năng Server Push áp dụng cho
streaming video dạng CBR có tên là Full Push, được triển khai trong đó
máy khách chỉ quyết định mức chất lượng cho mỗi truy vấn. Một thuật
toán thích ứng dựa trên thông lượng và mức sử dụng bộ đệm tương lai
được đề xuất để quyết định mức chất lượng phù hợp với điều kiện mạng.
d
23
KẾT LUẬN
Các kết quả đóng góp của luận án cũng như hướng phát triển tiếp theo của
luận án sẽ được nghiên cứu sinh trình bày dưới đây.
A: Một số kết qu
Các file đính kèm theo tài liệu này:
- tom_tat_luan_an_mot_so_giai_phap_nang_cao_chat_luong_streami.pdf