Tutorial 7: 21st November 2019 Flashcards
Adaptive streaming for multimedia (esp video)
What is buffer occupancy?
Buffer occupancy is the amount of (video) data stored in a buffer at any given time. It can be thought of the extent to which a buffer is full.
What is buffer-based adaptation?
Adjusting the sending rate (bitrate) of a (video) data stream based upon the buffer occupancy levels throughout the course of the stream. You increase the sending rate when the buffer occupancy is greater: the buffer is more full, so there is more to send.
What are the 3 ways of limiting the size of a buffer?
The number of segments in a buffer;
the sum of the payload data of the segments in a buffer;
the total playback time of video data in a buffer.
What is the throughput model?
When you use the throughput of a flow to estimate the capacity of the link it uses. This is difficult with video streams as they will vary greatly.
What is the buffer occupancy model?
When you use the buffer occupancy of a flow to estimate the capacity of the link it uses. This is difficult with video streams as they will vary greatly.
What is a workload?
The amount of work performed by an entity in a given period of time, or the average amount of work handled by an entity at a particular instant of time.
What is feedback control?
Feedback control involves the measurement of performance and properties of computer networks, and the use of the difference between the measured values and certain predefined desired values to compute system inputs or changes that cause the measured values to move closer to or stay at the desired values.
What is the fast retransmit mechanism?
An extension to TCP improving the speed at which lost data are retransmitted. When a sender gets three ack packets back from the receiver it knows the bytes after (since TCP sequence numbers are per-byte not per-packet) have been dropped. It then retransmits from there rather than waiting for the RTO to expire. The receiver will send acks each time a packet is received and will send duplicate acks if any sequence numbers (bytes) are skipped.
Would a buffer limited by the number of segments or data size count fill more quickly with packets of increasingly high quality videos? Why?
A buffer limited by packet (payload) data size would fill quicker with higher quality segments than a buffer limited by the number of segments.
This is because higher quality = higher bandwidth = more data per packet (segment) and higher rate of data increase
When using a buffer of a fixed data size, what will the number of segments in the buffer depend on?
The video quality (i.e. bandwidth): higher = more data per segment = fewer segments to fill buffer
Why may buffer space be wasted when using buffers limited purely by the number of segments they contain?
With low-bandwidth flows (e.g. low quality video), a buffer of 100 segments will contain a loss less data than 100 segments of a high-bandwidth flow (e.g. a high quality video). This means buffer space is left empty and wasted; this may decrease QoS and QoE since buffer filled more often => delays at receiver.
Are non-real-time video files encoded live as they are retrieved from web servers or are they stored already encoded?
They are stored already encoded. Web servers just serve static files.
When may encoding of video files happen as they are sent to end-users?
During live (real-time) transmissions, e.g. TV stream.
What special considerations should be made with buffering mechanisms for video transmissions?
Think from a user-oriented perspective: what matters to them is the length of video buffered, not the amount of data or number of segments. So think about limiting buffer size by equivalent playback time rather than limiting by data size or num segments and consider under which scenarios different buffering models (e.g. throughput or buffer occupancy) should be used.
How can buffers limited by playback time for video streams be implemented?
As a function of video quality (bandwidth) and an actual data-based limit.