B GIÁO DCăVẨăĐẨOăTO TRNGăĐI HC BÁCH KHOA HÀ NI --------------------- ----------------------- LÊ HNG PHÚ NGHIÊN CU TRUYN VIDEO STREAMING TRÊN HTTP 2.0 Chuyên ngành : K thut Vin thông LUNăVĔNăTHCăSƾăK THUT NGẨNH:ăĐIN T - VIN THÔNG NGIăHNG DN KHOA HC: PGS.TS PHM NGC NAM Hà Ni - Nĕmă2018 I 17057204984941000000 LIăCAMăĐOAN Tôi xin cam đoan những gì viết trong luận văn "NGHIÊN CU TRUYN VIDEO STREAMING TRÊN HTTP 2.0" là do sự tìm tòi, học hỏi ca bản thân và dới sự hớng dẫn ca PGS. PHM NGC NAM. Mọi kết quả nghiên cu cũng nh Ủ tng ca tác giả khác, nếu có đều đợc trích dẫn c thể. Đề tài luận văn này cho đến nay cha đợc bảo vệ tại bất kỳ một hội đồng bảo vệ luận văn thạc sĩ nào và cũng cha hề đợc công bố trên bất kỳ một phơng tiện nào.
Tôi xin chu trách nhiệm về những li cam đoan trên. Hà Nội, Ngày 26 tháng 09 năm 2018 Hc viên Lê Hng Phú II MC LC DANH MC CÁC HÌNH VẼ. VIII DANH MC CÁC BNG BIU. XI DANH MC CÁC KÝ HIU, CH VIT TT.
- 1 - CHNGă1 TNG QUAN V GIAO THC HTTP. Giao thc HTTP 1. Lch s hình thành. Cácăđim chính ca giao thc HTTP 1.
Các phơng pháp yêu cầu ca Client. Giao thc HTTP 2. Gii thiu chung. Dữ liệu truyền tải dạng nh phân.
Nén dữ liệu đợc gửi đi. Giải quyết phản hồi u tiên. Thiết lập kết nối liên tc bằng cách ghép kênh. Gửi trớc dữ liệu Server Push.
Tng kt Chngă1. - 23 - CHNGă2 NGHIÊN CU CÁC TIÊU CHUN STREAMMING. Tiêu chun MPEG-DASH. Gii thiu tng quan.
Tiêu chun và trin khai. Cách thc làm việc. Mô hình dữ liệu DASH. Sự mô tả biểu diễn phơng tiện (MPD).
Bộ thích ng (Adaptation Set). Phân đoạn và thông tin phân đoạn. MPEG-DASH profile. Một số tính năng bổ sung.
Tiêu chun HLS. Gii thiu tng quan. Tiêu chun và trin khai. Kiến trúc HLS.
Sử dng HLS. Bảo vệ nội dung. Các giao thc lu trữ và phân phối. Lựa chọn luồng.
Bảo vệ khi có lỗi (chuyển dự phòng). Tiêu chun HDS. Gii thiu tng quan. Tiêu chun và trin khai.
Khi nào sử dng HDS. Cách thc hoạt động ca HDS. Đóng gói dữ liệu. Publishing và xem lại.
Mã hóa cho Live HDS. Các lựa chọn phân phối nội dung. Công c File Packager. Công c Live Packager.
Module HTTP Origin cho Apache. Framework truyền thông mã nguồn m (OSMF). Cách HDS hoạt động trong OSMF. Bảo vệ nội dung bằng FLASH ACCESS.
Các tùy chọn triển khai cho HDS. Đnh dạng file HDS. Các lợi ích ca đnh dạng dữ liệu F4F. Chi tiết đnh dạng file F4F.
Ghép kênh Rãnh gợi ý (hint track). Thông tin bootstrap. Điểm truy cập ngẫu nhiên. Lợc đồ dẫn xuất URL.
Tiêu chun MSS. Gii thiu tng quan. Tiêu chun và trin khai. Smooth Streaming playback với Silverlight.
Kiến trúc ca Smooth Streaming. Giới thiệu đnh dạng Smooth Streaming. Đnh dạng file đĩa Smooth Streaming. Đnh dạng file dây Smooth streaming.
Các tài sản truyền thông Smooth Streaming. Các file manifest Smooth streaming. Smooth Streaming Playback. Tng ktăChngă2.
MPEG-DASH ca MPEG. - 87 - CHNGă3 NGHIÊN CU VÀ THC NGHIM TRUYN VIDEO STREAMING TRÊN HTTP 2. Các nghiên cu th nghimătrongănc và quc t. Phngăphápăci tin tri nghim Live streaming thích nghi da trên HTTP 2.
Các lỦ do để nghiên cu và đề xuất. HAS thông qua HTTP 2. Các nguyên nhân gốc rễ ca vấn đề QoE ca HAS. Các phơng pháp cải thiện QoE dựa trên HTTP 2.
Kết thúc luồng. Ghép kênh Request/response và sự u tiên luồng. ng dng trong Live Streaming. Gim tr Streaming Video trc tip thông qua HTTP 2.
Vấn đề trễ trong Video stream trực tiếp qua HTTP. ng dng tính năng Server push trong HTTP 2. Thiết lập kiến trúc hệ thống thử nghiệm:. Kết quả thử nghiệm:.
Thc nghim HLS qua giao thc HTTP 2. Mc tiêu thc nghim. Mô hình h thng thc nghim. Giải thích mô hình.
Các thiết lập hệ thống {Tham khảo phụ lục 1,2&3}. Kt qu thc nghimăvƠăđánhăgiá. Kết quả thu đợc tại các client thông qua trình duyệt firefox, chrome, safari 107 3. Kết quả thu đợc thông qua capture bằng wireshack.
Capture tại port ethernet ca Client. Capture tại port ethernet ca server. Kết quả thu đợc qua log access NGINX server. Kt lunăChngă3.
122 CÁC TÀI LIU THAM KHO. 126 Ph lc 1: Thit lp h thng transcoder. 126 VI Ph lcă2:ăCƠiăđặt h thng NGINX server. 132 Ph lc 3 : To file cu hình ca NGINX.
133 VII DANHăMCăCỄCăHÌNHăVẼ Hình 1. Chi tiết bản tin request/response trong trng hợp pipelining. Head-of-Line Blocking trong HTTP 1. Quá trình phát triển, hình thành giao thc HTTP 2.
V trí ca giao thc HTTP2 trong mô hình phân lớp IP. Các luồng trong kết nối ca HTTP 2. Th tự khung trong đa luồng. Th tự khung trong luồng đơn.
Cấu trúc Frame HTTP 2. Dạng dữ liệu trong một request ca HTTP 1. Mô phỏng ghép kênh kết nối trong giao thc HTTP 2. Mô phỏng workflow kết nối giữa client và server trong giao thc HTTP 1.
Lu đồ ca một trao đổi Request/response ca HTTP 2. Biểu đồ ca trao đổi Request/response với điều khiển lu lợng. Mô phỏng kết nối đơn TCP giữa client (web browser) và server với tính năng push ca HTTP 2. Kết quả truyền thông giữa server và client có HTTP 2.0 server push - 20 - Hình 1.
Cơ chế trao đổi giữa client và server. Lu đồ trao đổi yêu cầu/ áp ng trao đổi với server push. Lu đồ khi kết thúc luồng server push. Phơng thc hoạt động pipelining.
Quá trình thực hiện ca phơng pháp MPEG-DASH. Mô tả một ví d đơn giản về Adaptive streaming. Cấu trúc MPD. Mô hình dữ liệu phân cấp MPD.
Mô tả các trng thông tin trong MPD. Mô tả profile Dash container. Cấu trúc tổng quan hệ thống HLS. Nội dung một file “m3u8” đơn giản.
File index ca một phiên Live, đợc cập nhật mỗi khi có segment mới- 52 - VIII Hình 2. Mô tả các luồng dữ liệu trong HLS. Nội dung một file “m3u8” có luồng dự phòng. Quy trình phân phối HDS cho Live và VOD.
Giao diện player mẫu OSMF. Cấu trúc phân đoạn nhỏ và segment trong dữ liệu F4F. Cấu trúc phân đoạn trong dữ liệu F4F. Hộp thông tin Bootstrap.
Đnh dạng file Smooth Streaming. Đnh dạng dây Smooth streaming. Ví d một th mc cha một sự trình bày đợc mã hoá Smooth Streaming. Mô hình triển khai thử nghiệm phơng pháp full push.
Sơ đồ sequence ca HAS khi có và không có phơng pháp full-push dựa trên HTTP 2. Sơ đồ trễ toàn trình trong Video streaming qua HTTP. Độ trễ tại bộ đệm ca Client. Các thành phần tài nguyên khác nhau ca HTTP.
Workflow giữa server và client khi dùng tính năng Push. Sơ đồ mô hình kiến trúc hệ thống thử nghệm. Sơ đồ ng dng thực tế thử nghiệm. Biểu đồ so sánh kết quả độ trễ giữa có và không có server push.
Biểu đồ so sánh kết quả số lợng overhead và request giữa có và không có server push. Mô hình thực nghiệm Video streaming trên HTTP 2. Play video streaming trên HTTP 2.0 thông qua các client khác nhau. Play video streaming trên HTTP 2.0 thông qua firefox trên PC.
Play video streaming trên HTTP 1.1 thông qua firefox trên PC. Play trên một PC bằng hai giao thc HTTP 2. Request/response manifest file hls. Request/response file live3_.
Request/response file live3_. Request/response file live1_. Request/response file live1_.ts kế tiếp. Request/response file live1_.
Thông lợng vào ra trên port mạng ca PC client sau 50s đầu tiên sau khi play. Thông lợng vào ra trên port mạng ca PC client sau 700s. Mô hình thực nghiệm và phân tích giao tiếp ca server bằng Wireshark. Kết quả giám sát server port bằng wireshark với frame th 5502.
Kết quả giám sát server port bằng wireshark với frame th 18522. Kết quả giám sát server port bằng wireshark với frame th 35392. Kết quả giám sát server port bằng wireshark với HTTP 1. Cấu hình nhận luồng input.
Cấu hình tạo Output Group HLS. Cấu hình tạo Out Stream 1 HLS. Cấu hình tạo Out Stream 2 HLS. Cấu hình tạo Out Stream 3 HLS.
Cấu hình thông số nén video H. Cấu hình thông số nén video H. Cấu hình thông số nén video H. Thông tin các module NGINX 1.9 đư đợc cài đặt hỗ trợ HTTP 2.132 X DANHăMCăCỄCăBNGăBIU Bảng 2.
Khuyến ngh cấu hình dạng MIME. Bảng so sánh một số điểm khác nhau giữa HDS và RTMP Dynamic Streaming. Các khuyến ngh khoảng thi gian keyframe. Bảng so sánh tính năng giữa RTMP Dynamic Streaming, HPD và HDS.
Bảng thông tin tổng quan về các công c ca Adobe. Bảng các dch v sẵn sàng hỗ trợ HDS. Bảng thông tin đặc tính đnh dạng file đối với HDS. Bảng tóm tắt các thành phần cấu thành đnh dạng file F4F.
Bảng thông tin các dữ liệu Bootstrap. So sánh các tính năng giữa HLS, MSS,HDS và DASH .