Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2
Application Layer Throughput Control For Video Streaming over HTTP2

Editor's Notes

  • #2 Hi everyone. Good afternoon. My name is Phan Van Hoa, the graduated student from Hanoi University of Science and Technology. Now I will talk to you about our research topic, that is:
  • #3 This is the outline of my presentation. First, I will introduce about video streaming. Then, the problem description and proposed method will be presented, followed by the evaluation and conclusion.
  • #4 TodayVideo stream is one of the most popular application on the internet, it takes about 67% global traffic in the internet through many popular streaming service like youtube or Netflix
  • #5 And we can classify into 2 main types are Video on deman and live video. Both of the above types use HTTP protocol with specific support features for video transmission (for example: Apdative Stream) And in this topic, we focus on video on đeman
  • #6 We also have 2 popular video types, besides normal video as we often watch, 360-degree video is a new video format that we can change the user’s viewport to see the surrounding content. However, in order to play 360-degree video, the content has to be recorded using 360-degree technology.
  • #7 As mentioned before, most of video transfer methods use HTTP protocol. HTTP 2/0 is a valuable upgrade from http 1.1 Because It supports many advanced features such as Prioritization, Stream termination, Server Push, Multiplex, FlowControl,… et cetera And some of those features are applied (‘d) in video streaming. Flow control is the feature we use in our topic
  • #8 During learning about video treaming, we found a problem, that is, when many clients use the same connection to the server to stream video. For example, we have a home network with clients like PCs, Smartphone, Smart TV and all of them access the internet to stream video over an Access point. In this case, A connection resource disputation will occur and adversely affect the video quality So we need a solution to share the connection resource appropriately depending on user device feature.
  • #9 We desire that when multiple clients stream on the same connection, they will share the throughput at a preset ratio And our solution can be done in 3 steps, include
  • #10 In Our proposed system, we devided it into 2 main part, include Client-Side and Server-Side For server-side, it is simply a server that uses HTTP2 protocol. This mean our proposed system has absolutely no impact on the server For Client-Side, besides the clients, we also have a device named Manager. Main missions of the manager are …
  • #11 First, as usual, the clients request and the Server sends the response with video data Second, the clients maintain presence to the manager by sending a simple packets to manager (ping) Next, The manager estimates throughput of the connection by sending ICMP packets and waiting for the responses Final, The Clients receive flow-control figure from Manager an control their throughput.
  • #12 To estimate throughput, we send pairs of ICMP packet which difference size and wait for response, Then we can calculate throughput by Equaltion …. We also smoothing throughput by second equaltion
  • #13 next, we look to control the throughput for each client By learning about new features of HTTP2, we found that …. So, we can control the client throughput at application layer by using fliw control feature of http2
  • #14 If throughput is greater than preset, we decrease the window size value and increase window size when throughput is lower than preset value We also limit the window size at a maximum value.
  • #15 Configuration of the components in our experiment: both of server and client run on ubuntu 16.04, linux kernel 4.15 and using http2 open source library The manager run on ubuntub16.04, linux kernel 3.18 and running dummynet to simulate network
  • #16 In test-case 1. we start with a simple test case: a fixed throughput at 5Mbps with 2 clients stream at the same time In this test-case, we do experiment 2 times, one used our proposal system and one did not When client 2 start stream using the same connection with client 1, the clients in case using our system maintain a steady throughput at the preset rate (2 for client 1 and 1 for client2) In case without use our system, throughput of the client fluctuates continuously and becomes unstable until one of them terminate tream video on the common connection
  • #17 In Test case 2, we do the experiment with 2 clients and the throughput will vary during clients stream video For throughput, We start with 5Mbps, descrease to 3 Mbps at second 40 and increase to 5Mbps again at second 80 The result of experiment in 2 cases shown the effectiveness of our system. 2 Client still stream with stable throughput and proportional to total throughput
  • #18 Next test-case, we do the experiment similar to previous test case, but this time, we using manager to estimate the total throughput of the connection. We can see a small downside of the manager is that the predicted throughput is slightly lower than the preset throughput. However, the clients was very stable while streaming video
  • #19 In last test case, We use more clients to make sure our system still works well with many clients stream concurrently And you can see, we start 4 clients stream at the same time with shared ratio 1 2 3 4 and all of them keep throughout stable during streaming
  • #20 We provide