• No results found

3.2 Scalable Video Broadcast System

3.2.3 System Model

We consider a wireless sender (e.g., a base station or a wireless access point) that wants to broadcast a set ofN source packets forming a GOP,N ={P1, ..., PN}, to a set ofM devices, M ={U1, ..., UM}. A network coding scheme is applied on the packets of a single GOP as

soon as all the packets are ready, which implies that neither merging of GOPs nor buffering of packets in more than one GOP at the sender is allowed. This significant aspect arises from the minimum delivery delay requirement in real-time video streaming. Time is slotted and the sender can transmit one packet in a time slott. There is a limit on the total number of allowable time slots Θ used to broadcast the N packets to theM devices, as the deadline for the current GOP expires after Θ time slots. Therefore, at any time slot t ∈ [1,2, ...,Θ], the sender can compute the number of remaining transmissions for the current GOP as, Q= Θ−t+ 1.

In the scalable video broadcast system, the sender hasL scalable video layers and each video layer consists of one or more packets. Let set N ={P1

1, P21, ..., Pn11;...;P L

1, P2L, ..., PnLL}

denote all the packets in the Lvideo layers, with nℓ being the number of packets in theℓ-th

video layer. In fact, N = PL

ℓ=1nℓ. Although the number of video layers in a GOP of a

video stream is fixed, depending on the video content, nℓ and N can have different values

for different GOPs. We denote the set that contains all packets in the first ℓ video layers as

In this thesis, we consider that each transmitted packet is subject to an independent Bernoulli erasure at device Ui with probability ǫi. Such independent erasure probability in

the consecutive packet transmissions models the fast fading channel in wireless networks, wherein fading channel gain changes rapidly in an almost uncorrelated manner. Although this channel model does not describe all real-world scenarios, it indeed captures the essence of wireless broadcast and when the packet length is sufficiently long, or when time division duplex (TDM) is used to multiplex packets from different devices, so there is sufficient gap between transmitted packets of a device. On the other hand, the authors in [98] consider packet erasure correlations in designing and analysing network coding solutions. Indeed, such erasure correlations characterize and model physical channel differently, and subsequently trigger changes in coding solutions. Although interesting, such study on correlated channels is beyond the scope of my thesis.

Each device listens to all transmitted packets and feeds back to the sender a positive or negative acknowledgement (ACK or NAK) for each received or lost packet. We assume that the devices send feedback to the sender using dedicated control channels and the feedback is error-free. The sender uses such information to make efficient coding decisions. Here, we consider idealistic zero-delay feedback channels to study IDNC in video streaming ap- plications and, subsequently, examine the benchmark performance of IDNC solutions. Such consideration of zero-delay feedback channels is more sensible for networks with short range communications, dedicated control channels and full duplex communications. However, in many practical networks such as satellite networks, there is unavoidable delay associated with feedback channels, which may impact the performance of IDNC solutions. In fact, a body of works on IDNC [51, 89] show that when the feedback channels are subject to packet losses and several transmissions-delay, the degradation on the performance of IDNC solutions can be as low as 3%−4%.

After each transmission, the sender stores the reception status of all packets at all devices in an M ×N feedback status matrix (FSM) F= [fi,j], ∀Ui ∈ M, Pj ∈ N such that:

fi,j =     

0 if packet Pj is received by device Ui,

1 if packet Pj is missing at device Ui.

(3.1)

Window 1 . . . n1 . . ... ... ... ... n2 nL Window L Window 2

Figure 3.1: Lwindows for an L-layer GOP with nℓ

packets in the ℓ-th layer.

F=   1 0 1 1 1 0 1 1 0 0  . (3.2)

In this example, we assume that packetsP1 andP2belong to the first (i.e., base) layer, packets

P3 and P4 belong to the second layer and packet P5 belongs to the third layer. Therefore, the

set containing all packets in the first two video layers is N1:2 ={P

1, P2, P3, P4}.

Definition 1 (Window). A window over the firstℓ video layers (denoted by ωℓ) includes all the packets in N1:ℓ ={P1

1, P21, ..., Pn11, ..., P ℓ

1, P2ℓ, ..., Pnℓℓ}.

There areL windows for a GOP with L video layers as shown in Figure 3.1. The FSM corresponding to the window ωℓ over the first ℓ video layers is an M ×N1:ℓ matrix F1:ℓ,

which contains the first N1:ℓ columns of the FSM F.

Based on the FSM, the following two sets of packets can be attributed to each device Ui

at any given time slot t:

• TheHas set of device Ui in the firstℓvideo layers (Hi1:ℓ) is defined as the set of packets

that are decoded by device Ui from the firstℓ video layers. In Example 1, the Has set

of device U2 in the first two video layers is H1:22 ={P1, P4}.

• The Wants set of device Ui in the first ℓ video layers (Wi1:ℓ) is defined as the set of

W1:ℓ

i = N1:ℓ \ H1:i ℓ. In Example 1, the Wants set of device U2 in the first two video

layers is W1:2

2 ={P2, P3}.

The set of devices having non-empty Wants sets in the first ℓ video layers is denoted by M1:ℓ

w (i.e., M1:wℓ =

Ui

Wi1:ℓ 6=∅ ). At any given FSM F1:ℓ at time slot t, device Ui

having non-empty Wants set in the first ℓvideo layers (i.e., Ui ∈ M1:wℓ) belongs to one of the

following three sets:

• The critical set of devices for the first ℓ video layers (C1:ℓ) is defined as the set of

devices with the number of missing packets in the first ℓ video layers being equal to the number of remaining Q transmissions (i.e., W1:ℓ

i =Q,∀Ui ∈ C1:ℓ).

• The affected set of devices for the first ℓ video layers (A1:ℓ) is defined as the set of

devices with the number of missing packets in the first ℓ video layers being greater than the number of remaining Q transmissions (i.e., W1:ℓ

i > Q,∀Ui ∈ A1:ℓ).

• The non-critical set of devices for the firstℓ video layers (B1:ℓ) is defined as the set of

devices with the number of missing packets in the first ℓ video layers being less than the number of remaining Q transmissions (i.e., W1:ℓ

i < Q,∀Ui ∈ B1:ℓ).

In fact,C1:ℓ∪ A1:ℓ∪ B1:ℓ =M1:ℓ w .

Definition 2 (Instantly Decodable Packet). A transmitted packet is instantly decodable for device Ui if it contains exactly one source packet fromWi1:L.

Example 2. Given the FSM F in (3.2), assume the base station broadcasts coded packet

P2 ⊕P3. In this case, coded packet P2 ⊕P3 is instantly decodable for device U1 as it can

reXOR this coded packet with previously received packet P2 to decode the new packet P3. On

the other hand, the same coded packet P2⊕P3 is not instantly decodable for device U2 as it

does not possess either of these packets.

Definition 3 (Targeted Device). A device Ui is targeted by packet Pj in a transmission when this device will immediately decode missing packet Pj upon successfully receiving the transmitted packet. In Example 2, with coded packet P2⊕P3 transmission, we say device U1

Definition 4. (Individual Completion Time of a Single Device) At time slot t, individual completion time of deviceUi for the firstℓ video layers (denoted byTW1:ℓ

i ) is the total number

of transmissions required to deliver all the missing packets in W1:ℓ

i to device Ui.

Individual completion time of device Ui for the first ℓ video layers can be TW1:ℓ

i =

W1:ℓ

i , Wi1:ℓ+ 1, ... depending on the number of transmissions that device Ui is targeted with

a new packet and the channel erasures experienced by device Ui in those transmissions.

Example 3. Consider the FSM F in (3.2) and assume erasure-free transmissions. Let us consider the following transmission schedule in the successive four time slots:

1. Packet P1⊕P2 is transmitted in the first time slot.

2. Packet P3 is transmitted in the second time slot.

3. Packet P4 is transmitted in the third time slot.

4. Packet P5 is transmitted in the fourth time slot.

The evolution of the FSM after each time slot is given by:   1 0 1 1 1 0 1 1 0 0   ⇒ t=1   0 0 1 1 1 0 0 1 0 0   ⇒ t=2   0 0 0 1 1 0 0 0 0 0   ⇒ t=3   0 0 0 0 1 0 0 0 0 0   ⇒ t=4   0 0 0 0 0 0 0 0 0 0  . (3.3)

Let us also consider the packets of individual layers in Example 1. With the above FSM evolution, device U2 decodes packets P1 and P2 of the first layer after the first transmission.

Therefore, the individual completion time of device U2 for the first video layer is TW1:1

2 =

1. On the other hand, device U2 decodes all five packets after the first two transmissions.

Therefore, the individual completion time of device U2 for all three video layers is TW1:3

2 = 2.

Definition 5. (Completion Time of all Devices) At time slott, completion time of all devices for the first ℓ video layers (denoted by T1:ℓ) is the total number of transmissions required to deliver all the missing packets from the first ℓ video layers to all devices in M1:ℓ

Example 4. With the FSM evolution in (3.3), both devices decode packetsP1 andP2 of the

first layer after the first transmission. Therefore, the completion time of all devices for the first video layer is T1:1 = 1. On the other hand, both devices decode all five packets after

four transmissions. Therefore, the completion time of all devices for all three video layers is

T1:3 = 4 as the transmission schedule requires four time slots to complete the reception of all

packets by both devices.

Definition 6. (Completion Time of all Non-critical Devices) At time slot t, completion time of all non-critical devices for the first ℓ video layers (denoted by T1:ℓ

B ) is the total number of transmissions required to deliver all the missing packets from the first ℓ video layers to all non-critical devices in B1:ℓ.