1. Trang chủ
  2. » Luận Văn - Báo Cáo

Nghiên ứu truyền video streaming trên http 2 0

151 2 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Nghiên Cứu Truyền Video Streaming Trên HTTP 2.0
Tác giả Lê Hồng Phú
Người hướng dẫn PGS.TS. Phạm Ngọc Nam
Trường học Đại Học Bách Khoa Hà Nội
Chuyên ngành Kỹ Thuật Viễn Thông
Thể loại luận văn thạc sĩ
Năm xuất bản 2018
Thành phố Hà Nội
Định dạng
Số trang 151
Dung lượng 22,31 MB

Nội dung

Giới thiệu đnh d ng Smooth Streaming .... Các file manifest Smooth streaming .... ng d ng trong Live Streaming .... Mô phỏng kết nối đơn TCP giữa client web browser và server v i tính ớn

B GIÁO DCăVẨăĐẨOăTO TRNGăĐI HC BÁCH KHOA HÀ NI -   - LÊ HNG PHÚ NGHIÊN CU TRUYN VIDEO STREAMING TRÊN HTTP 2.0 Chuyên ngành : K thut Vin thơng LUNăVĔNăTHCăSƾăK THUT NGẨNH:ăĐIN T - VIN THƠNG NGIăHNG DN KHOA HC: PGS.TS PHM NGC NAM Hà Ni - Nĕmă2018 I Tai ngay!!! Ban co the xoa dong chu nay!!! 17057204984941000000 LIăCAMăĐOAN Tơi xin cam đoan viết luận văn "NGHIÊN CU TRUYN VIDEO STREAMING TRÊN HTTP 2.0" tìm tịi, học hỏi ca thân dới hớng dẫn ca PGS.TS PHM NGC NAM Mọi kết nghiên cu nh Ủ tng ca tác giả khác, có đợc trích dẫn c thể Đề tài luận văn cha đợc bảo vệ hội đồng bảo vệ luận văn thạc sĩ cha đợc công bố phơng tiện Tôi xin chu trách nhiệm li cam đoan Hà Nội, Ngày 26 tháng 09 năm 2018 Hc viên Lê Hng Phú II MC LC DANH MC CÁC HÌNH VẼ VIII DANH MC CÁC BNG BIU XI DANH MC CÁC KÝ HIU, CH VIT TT XII M ĐU - CHNGă1 TNG QUAN V GIAO THC HTTP - 1.1 Giao thc HTTP 1.1 - 1.1.1 Lch s hình thành - 1.1.2 Cácăđim ca giao thc HTTP 1.1 - 1.1.2.1 Phiên HTTP - 1.1.2.2 Xác thực HTTP - 1.1.2.3 Các phơng pháp yêu cầu ca Client - 1.2 Giao thc HTTP 2.0 - 11 1.2.1 Gii thiu chung - 11 1.2.2 Cácăđặcăđim ca HTTP 2.0 - 15 1.2.2.1 Dữ liệu truyền tải dạng nh phân - 15 1.2.2.2 Nén liệu đợc gửi - 15 1.2.2.3 Giải phản hồi u tiên - 16 1.2.2.4 Thiết lập kết nối liên tc cách ghép kênh - 16 1.2.2.5 Gửi trớc liệu Server Push - 18 1.3 Tng kt Chngă1 - 23 CHNGă2 NGHIÊN CU CÁC TIÊU CHUN STREAMMING - 25 2.1 Tiêu chun MPEG-DASH - 25 2.1.1 Gii thiu tng quan - 25 2.1.2 Tiêu chun trin khai - 27 2.1.2.1 Cách thc làm việc - 27 2.1.2.2 Mơ hình liệu DASH - 29 2.1.2.2.1 Sự mô tả biểu diễn phơng tiện (MPD) - 30 2.1.2.2.2 Giai đoạn (Period) - 33 2.1.2.2.3 Bộ thích ng (Adaptation Set) - 35 2.1.2.2.4 Phân đoạn thông tin phân đoạn - 35 III 2.1.2.2.5 DRM - 42 2.1.2.2.6 MPEG-DASH profile - 42 2.1.2.2.7 Một số tính bổ sung - 44 2.2 Tiêu chun HLS - 46 2.2.1 Gii thiu tng quan - 46 2.2.2 Tiêu chun trin khai - 47 2.2.2.1 Kiến trúc HLS - 47 2.2.2.2 Sử dng HLS - 52 2.2.2.2.1 Các loại phiên - 52 2.2.2.2.2 Bảo vệ nội dung - 53 2.2.2.2.3 Các giao thc lu trữ phân phối - 54 2.2.2.2.4 Lựa chọn luồng - 54 2.2.2.2.5 Bảo vệ có lỗi (chuyển dự phòng) - 55 2.3 Tiêu chun HDS - 57 2.3.1 Gii thiu tng quan - 57 2.3.2 Tiêu chun trin khai - 59 2.3.2.1 Khi sử dng HDS - 59 2.3.2.2 Cách thc hoạt động ca HDS - 60 2.3.2.2.1 Đóng gói liệu - 61 2.3.2.2.2 Publishing xem lại - 61 2.3.2.2.3 Flash Player 10.1 ActionScript 3.0 API - 62 2.3.2.2.4 Mã hóa cho HDS - 62 2.3.2.2.5 Mã hóa cho Live HDS - 63 2.3.2.2.6 Các lựa chọn phân phối nội dung - 64 2.3.2.3 Các công c HDS - 65 2.3.2.3.1 Công c File Packager - 66 2.3.2.3.2 Công c Live Packager - 66 2.3.2.3.3 Module HTTP Origin cho Apache - 66 2.3.2.3.4 Framework truyền thông mã nguồn m (OSMF) - 67 2.3.2.3.5 Cách HDS hoạt động OSMF - 67 2.3.2.3.6 Bảo vệ nội dung FLASH ACCESS - 68 2.3.2.4 Các tùy chọn triển khai cho HDS - 69 IV 2.3.2.4.1 Đnh dạng file HDS - 69 2.3.2.4.2 Các lợi ích ca đnh dạng liệu F4F - 70 2.3.2.4.3 Chi tiết đnh dạng file F4F - 71 2.3.2.4.4 Phân mảnh - 72 2.3.2.4.5 Ghép kênh Rãnh gợi ý (hint track) - 72 2.3.2.4.6 Phân đoạn - 73 2.3.2.4.7 Thông tin bootstrap - 73 2.3.2.4.8 Điểm truy cập ngẫu nhiên - 75 2.3.2.4.9 Lợc đồ dẫn xuất URL - 75 2.4 Tiêu chun MSS - 76 2.4.1 Gii thiu tng quan - 76 2.4.2 Tiêu chun trin khai - 77 2.4.2.1 Smooth Streaming playback với Silverlight - 77 2.4.2.2 Kiến trúc ca Smooth Streaming - 78 2.4.2.2.1 Giới thiệu đnh dạng Smooth Streaming - 78 2.4.2.2.2 Đnh dạng file đĩa Smooth Streaming - 78 2.4.2.2.3 Đnh dạng file dây Smooth streaming - 80 2.4.2.2.4 Các tài sản truyền thông Smooth Streaming - 80 2.4.2.2.5 Các file manifest Smooth streaming - 82 2.4.2.2.6 Smooth Streaming Playback - 82 2.4.3 Tngălc v MSS - 84 2.5 Tng ktăChngă2 - 84 2.5.1 HLS ca Apple - 84 2.5.2 MSS ca Microsoft - 85 2.5.3 HDS ca Adobe - 85 2.5.4 MPEG-DASH ca MPEG - 86 2.5.5 Kt lun - 87 CHNGă3 NGHIÊN CU VÀ THC NGHIM TRUYN VIDEO STREAMING TRÊN HTTP 2.0 - 88 3.1 Các nghiên cu th nghimătrongănc quc t - 88 3.1.1 Phngăphápăci tin tri nghim Live streaming thích nghi da HTTP 2.0 (nhóm nghiên cu ti Bỉ) [13] - 88 V 3.1.1.1 Các lỦ để nghiên cu đề xuất - 88 3.1.1.2 HAS thông qua HTTP 2.0 - 89 3.1.1.3 Các nguyên nhân gốc rễ ca vấn đề QoE ca HAS - 90 3.1.1.4 Các phơng pháp cải thiện QoE dựa HTTP 2.0 - 91 3.1.1.4.1 Kết thúc luồng - 91 3.1.1.4.2 Ghép kênh Request/response u tiên luồng - 92 3.1.1.4.3 Server Push - 93 3.1.1.4.4 ng dng Live Streaming - 98 3.1.2 Gim tr Streaming Video trc tip thông qua HTTP 2.0 (nhóm nghiên cu ca hãng Adobe) [5] - 100 3.1.2.1 Vấn đề trễ Video stream trực tiếp qua HTTP - 100 3.1.2.2 ng dng tính Server push HTTP 2.0 - 101 3.1.2.3 Thiết lập kiến trúc hệ thống thử nghiệm: - 102 3.1.2.4 Kết thử nghiệm: - 103 3.2 Thc nghim HLS qua giao thc HTTP 2.0 - 104 3.2.1 Mc tiêu thc nghim - 104 3.2.2 Mơ hình h thng thc nghim - 105 3.2.2.1 Mơ hình - 105 3.2.2.2 Giải thích mơ hình - 105 3.2.2.3 Các thiết lập hệ thống {Tham khảo phụ lục 1,2&3} - 106 3.2.3 Kt qu thc nghimăvƠăđánhăgiá 107 3.2.3.1 Kết thu đợc client thơng qua trình duyệt firefox, chrome, safari 107 3.2.3.2 Kết thu đợc thông qua capture wireshack 113 3.2.3.2.1 Capture port ethernet ca Client 113 3.2.3.2.2 Capture port ethernet ca server 114 3.2.3.3 Kết thu đợc qua log access NGINX server 118 3.3 Kt lunăChngă3 121 KT LUN 122 CÁC TÀI LIU THAM KHO 124 CÁC PH LC 126 Ph lc 1: Thit lp h thng transcoder 126 VI Ph lcă2:ăCƠiăđặt h thng NGINX server 132 Ph lc : To file cu hình ca NGINX 133 VII DANHăMCăCỄCăHÌNHăVẼ Hình 1.1 Chi tiết tin request/response trng hợp pipelining - Hình 1.2 Head-of-Line Blocking HTTP 1.1 - Hình 1.3 Quá trình phát triển, hình thành giao thc HTTP 2.0 - 12 Hình 1.4 V trí ca giao thc HTTP2 mơ hình phân lớp IP - 13 Hình 1.5 Các luồng kết nối ca HTTP 2.0 - 13 Hình 1.6 Th tự khung đa luồng - 13 Hình 1.7 Th tự khung luồng đơn - 13 Hình 1.8 Cấu trúc Frame HTTP 2.0 - 14 Hình 1.9 Dạng liệu request ca HTTP 1.1 HTTP 2.0 - 15 Hình 1.10 Mơ ghép kênh kết nối giao thc HTTP 2.0 - 16 Hình 1.11 Mơ workflow kết nối client server giao thc HTTP 1.1 HTTP 2.0 - 17 Hình 1.12 Lu đồ ca trao đổi Request/response ca HTTP 2.0 - 18 Hình 1.13 Biểu đồ ca trao đổi Request/response với điều khiển lu lợng - 19 Hình 1.14 Mơ kết nối đơn TCP client (web browser) server với tính push ca HTTP 2.0 - 20 Hình 1.15 Kết truyền thơng server client có HTTP 2.0 server push - 20 Hình 1.16 Cơ chế trao đổi client server - 21 Hình 1.17 Lu đồ trao đổi yêu cầu/ áp ng trao đổi với server push - 22 Hình 1.18 Lu đồ kết thúc luồng server push - 23 Hình 1.19 Phơng thc hoạt động pipelining - 23 Hình 2.1 Quá trình thực ca phơng pháp MPEG-DASH - 27 Hình 2.2 Mơ tả ví d đơn giản Adaptive streaming - 28 Hình 2.3 Cấu trúc MPD .- 30 Hình 2.4 Mơ hình liệu phân cấp MPD - 31 Hình 2.5 Mô tả trng thông tin MPD - 32 Hình 2.6 Mơ tả profile Dash container - 43 Hình 2.7 Cấu trúc tổng quan hệ thống HLS - 48 Hình 2.8 Nội dung file “m3u8” đơn giản - 50 Hình 2.9 File index ca phiên Live, đợc cập nhật có segment mới- 52 VIII Hình 2.10 Mơ tả luồng liệu HLS - 55 Hình 2.11 Nội dung file “m3u8” có luồng dự phịng - 56 Hình 2.12 Quy trình phân phối HDS cho Live VOD - 60 Hình 2.13 Giao diện player mẫu OSMF - 67 Hình 2.14 Cấu trúc phân đoạn nhỏ segment liệu F4F - 71 Hình 2.15 Cấu trúc phân đoạn liệu F4F - 72 Hình 2.16 Hộp thơng tin Bootstrap - 74 Hình 2.17 Đnh dạng file Smooth Streaming - 79 Hình 2.18 Đnh dạng dây Smooth streaming - 80 Hình 2.19 Ví d th mc cha trình bày đợc mã hố Smooth Streaming .- 81 Hình 3.1 Mơ hình triển khai thử nghiệm phơng pháp full push .- 93 Hình 3.2 Sơ đồ sequence ca HAS có khơng có phơng pháp full-push dựa HTTP 2.0 - 97 Hình 3.3 Sơ đồ trễ tồn trình Video streaming qua HTTP - 100 Hình 3.4 Độ trễ đệm ca Client - 100 Hình 3.5 Các thành phần tài nguyên khác ca HTTP - 101 Hình 3.6 Workflow server client dùng tính Push - 101 Hình 3.7 Sơ đồ mơ hình kiến trúc hệ thống thử nghệm - 102 Hình 3.8 Sơ đồ ng dng thực tế thử nghiệm - 103 Hình 3.9 Biểu đồ so sánh kết độ trễ có khơng có server push .- 103 Hình 3.10 Biểu đồ so sánh kết số lợng overhead request có khơng có server push - 104 Hình 3.11 Mơ hình thực nghiệm Video streaming HTTP 2.0 - 105 Hình 3.12 Play video streaming HTTP 2.0 thơng qua client khác 107 Hình 3.13 Play video streaming HTTP 2.0 thông qua firefox PC 107 Hình 3.14 Play video streaming HTTP 1.1 thơng qua firefox PC 108 Hình 3.15 Play PC hai giao thc HTTP 2.0 (trái) HTTP 1.1 (phải) 108 Hình 3.16 Request/response manifest file hls.m3u8 109 Hình 3.17 Request/response file live3_.m3u8 .110 Hình 3.18 Request/response file live3_.ts 110 IX Hình 3.19 Request/response file live1_.m3u8 .111 Hình 3.20 Request/response file live1_.ts 111 Hình 3.21 Request/response file live1_.m3u8 112 Hình 3.22 Thơng lợng vào port mạng ca PC client sau 50s sau play 113 Hình 3.23 Thơng lợng vào port mạng ca PC client sau 700s .114 Hình 3.24 Mơ hình thực nghiệm phân tích giao tiếp ca server Wireshark 115 Hình 3.25 Kết giám sát server port wireshark với frame th 5502 115 Hình 3.26 Kết giám sát server port wireshark với frame th 18522 116 Hình 3.27 Kết giám sát server port wireshark với frame th 35392 116 Hình 3.28 Kết giám sát server port wireshark với HTTP 1.1 117 Hình 3.29 Cấu hình nhận luồng input 126 Hình 3.30 Cấu hình tạo Output Group HLS 126 Hình 3.31 Cấu hình tạo Out Stream HLS 127 Hình 3.32 Cấu hình tạo Out Stream HLS 127 Hình 3.33 Cấu hình tạo Out Stream HLS 128 Hình 3.34 Cấu hình thơng số nén video H.264 cho stream 129 Hình 3.35 Cấu hình thơng số nén video H.264 cho stream 130 Hình 3.36 Cấu hình thơng số nén video H.264 cho stream 131 Hình 3.37 Thơng tin module NGINX 1.13.9 đư đợc cài đặt hỗ trợ HTTP 2.0 132 X

Ngày đăng: 22/01/2024, 17:02

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN