Social-Aware Cooperative Video Distribution via SVC Streaming Multicast

Scalable Video Coding (SVC) streaming multicast is considered as a promising solution to cope with video traffic overload and multicast channel differences. To solve the challenge of delivering high-definition SVC streaming over burst-loss prone channels, we propose a social-aware cooperative SVC streaming multicast scheme. The proposed scheme is the first attempt to enable D2D cooperation for SVC streaming multicast to conquer the burst-loss, and one salient feature of it is that it takes fully into account the hierarchical encoding structure of SVC in scheduling cooperation. By using our scheme, users form groups to share video packets among each other to restore incomplete enhancement layers. Specifically, a cooperative group formation method is designed to stimulate effective cooperation, based on coalitional game theory; and an optimal D2D links scheduling scheme is devised to maximize the total decoded enhancement layers, based on potential game theory. Extensive simulations using real video traces corroborate that the proposed scheme leads to a significant gain on the received video quality.


Introduction
With the rapid development of mobile intelligent terminals, we have witnessed the explosive growth of users' demands for wireless live video services [1].Such growth in the bandwidth demanding will bring unprecedented challenges to current wireless network in the near future [2,3].As communication technologies designed to cope with video traffic overload, video multicast can exploit the broadcasting nature of wireless communication to transmit video to multiple users simultaneously [4].Due to its effectiveness, video multicast has been applied successfully in many scenarios, e.g., breaking news video, live sport videos, mobile TV programs, and so on.
In mobile video multicast, how to solve varied fading channels from the base station (BS) to multicast users is a key problem.Here, we give an illustrative paragraph.The video transmission rate of a wireless link is determined by the channel quality feedback.For a specific link, high transmission rate with a bad channel quality will render high bit error rate and degrade the goodput.In a multicast scenario, BS can only select one transmission rate while the channel conditions of multicast users vary from each other.When BS multicast video to users according to the user with good channel quality, users with worse channel quality may fail to play back the video smoothly.Typically, BS will choose transmission rate according to the worst channel, and thus each multicast user's received video quality is limited by the worst one.
Since Scalable Video Coding streaming can be hierarchically divided into one base layer and multiple enhancement layers, the SVC based video multicast can flexibly adjust the quality of live video services according to channel feedback [5].Thus, SVC is a suitable video coding strategy to adapt to the diversity of multicast channels [6].One major challenge of employing SVC in video multicast is how to cope with the unavoidable packet loss over the burst-loss prone channels [7], which makes the traditional channel protection method such as FEC insufficient [8].And due to the stringent playback deadline, the retransmission is also 2 Wireless Communications and Mobile Computing not preferred especially in multicast scenarios [9].Although some related works have studied how to reduce the interference and errors in SVC streaming [10][11][12], most of them need heavy modification for video codec or introduce other network components to the cellular system, which is actually impractical.
Since the cooperative local recovery via D2D communication can make up the packet loss without introducing any redundancy or asking the base station to retransmit the lost packets, it is then a good option for SVC streaming multicast countering the burst-loss.There are some works that studied how to utilize D2D communication or other network interfaces (like Wi-Fi) for video recovery [13].However, previous cooperative recovery schemes did not take the hierarchical encoding structure of SVC into account, which may not lead to a significant gain to SVC-based video multicast.In other words, from the perspective of user's Quality-of-Experience (QoE) [14], simply boosting the transmission rate does not necessarily result in improvements in the user perception of the video quality [15].
SVC streaming has a hierarchical encoding structure, which means that each enhancement layer can be decoded only after the correct decoding of lower layers.In such case, either bit error or packet loss would lead to the loss of synchronization information and error propagation.The hierarchical encoding structure indicates that packets belonging to different enhancement layers should have different weight for improving video quality.And the SVC based video distribution scheme should also be structured and dealing with missing packets depends on the actual reception.Existing video distribution schemes often treat all the missing packets equally; hence those distribution schemes can not give a good video quality for SVC streaming multicast.In a word, how to coordinate users' cooperation according to the hierarchical encoding structure of SVC is a critical issue for cooperative SVC streaming multicast.
In this paper, we propose a D2D-based cooperative SVC streaming multicast scheme to improve the received video quality, which is based on the consideration of the hierarchical encoding structure of SVC.More specifically, users in the same cooperative group share enhancement layers using D2D communication under the scheduling of the BS.To stimulate effective cooperation among multicast users, the cooperative groups are constructed by using a coalitional game.And to maximize the total decoded enhancement layers, an optimal D2D links scheduling scheme is devised based on potential game theory.To the best of our knowledge, this paper is the first attempt to enable D2D cooperation for SVC streaming multicast to conquer the burst-loss.The main contributions of this paper are summarized as follows.
(i) We propose a social-aware cooperative SVC streaming multicast scheme to improve received video quality by stimulating users to form cooperative groups and share enhancement layers.In particular, this scheme takes full account of the hierarchical encoding structure of SVC to coordinate cooperation.
(ii) The rest of this paper is organized as follows.Section 2 gives a review of the related works in the field of wireless video multicast and cooperative local recovery.The system model and workflow of the proposed scheme are discussed in Section 3. In Section 4, we study the problems of cooperative group formation and the optimal links scheduling in detail.The extensive numerical results are shown in Section 5 and conclusions are drawn in Section 6.

Related Works
2.1.Wireless Video Multicast.Wireless video multicast has recently become a hot research topic, which is promising to help improve spectrum efficiency.R. Chandra et al. proposed a multicast system DirCast based on Wi-Fi, targeting to minimize the total transmission delay [16].In order to improve the performance of video multicast, a gateway was introduced between the base station and the cloud servers to determine the order of frames [17], and S. Aditya et al. integrated a joint source-channel coding into the MPEG-4 codec [18].Deb et al. proposed a greedy algorithm for resource allocation in SVC streaming multicast scenario via WiMAX [11].S. Jakubczak et al. proposed a crosslayer design for multicasting scalable video, with the goal of improving robustness to wireless interference and errors [12].Some of the above works with nonscalable encoding suffer from "the limit of the worst one" caused by multicast channel differences, as mentioned earlier.To counter wireless interference and errors, the others with scalable encoding introduce heavy redundancy to video codec or add new network interface to the system, but present insufficient for burst-loss.Different from these works, this paper effectively conquers the burst-loss for SVC streaming multicast via D2D cooperation and is compatible with existing cellular networks.

Cooperative Local Recovery.
There have been some works on the cooperative local recovery, i.e., how to enable users to share missing packets or act as relay nodes.Reference [19] proposed a cooperative peer-to-peer recovery scheme optimally scheduling the priority of packets.Reference [9] recovered the video frames by constructing D2D assisted multipath transmission.Reference [20] realized peer-to-peer  repair by combining batch processing and network coding.Reference [21] deployed D2D communication inside the multicast group, and users who successfully decoded the message retransmit it to those in need.Reference [13] stimulated users' cooperation for video multicast by utilizing two types of social ties, social reciprocity and social trust.The above video distribution schemes often treat all the missing packets equally; hence they cannot give a good video quality for SVC streaming multicast.Different from them, we coordinate users' cooperation based on the unique hierarchical encoding structure of SVC.

System Model
3.1.Preliminaries.To facilitate our exposition, it is necessary to first introduce the scalable video encoding structure and live video playback mechanism.
The core idea of SVC is to divide the video streaming into multiple layers according to different requirements.As illustrated in Figure 1, there are one base layer and multiple enhancement layers, each of which is transmitted separately.Devices can reconstruct the basic quality video image as long as it receives the base layer, but the video reconstructed from the base layer is of poor quality.The enhancement layers contain details of the video streaming, which means users can get a better video quality by receiving more enhancement layers within the range of the total video bit rate.In addition, an enhancement layer can be decoded after the correct decoding of the base layer and lower enhancement layers, while the base layer can be decoded separately.
In general, SVC streaming is composed of Group-of-Picture (GoP) sequences, and a GoP consists of a base layer and one or more enhancement layers with RLC encoding.We denote these layers by L = {1, 2, ⋅ ⋅ ⋅ , L}, each encoded layer  ∈ L is processed into   packets, and   is also the decoding threshold for layer .The condition for successfully receiving the layer  can be expressed as However, receiving the full information of the layer  does not mean that layer  can be reconstructed; the condition for successfully decoding the layer  is given by where     denotes the packets which user  received for layer   .Equation ( 2) means that, to restore video quality to layer , not only should the received packets of layer  be more than its threshold, but also the lower layers are decoded correctly.
The live video playback mechanism is illustrated in Figure 2. Unlike data transmissions such as browsing a Web page or downloading a file, live video multicast is a delay sensitive application with real-time requirements.Generally, the smooth video playback is tolerable with a maximum delay according to Persistence of Vision.That is, each GoP has a fixed transmission deadline.Once a packet in the GoP misses this deadline, it will be dropped.For SVC streaming, packets on each layer are transmitted independently.Users reconstruct each video layer with the received packets and the layer which does not receive enough packets before the deadline cannot be reconstructed.

System Model and Workflow.
From the previous discussion, we can see that affected by hierarchical encoding structure of SVC and live video delay constraint, users may not be able to reconstruct a certain layer due to their failure to receive the lower layer correctly.Referring to SVC streaming, once a user receives enough packets for the corresponding layer, it can be reconstructed, regardless of whether the packets are coming from the base station or other users.Due to the diversity of multicast channels, when some users lose a certain layer, other users may receive the layer successfully.First, we propose to enable users to form "cooperative groups" taking into account social attributes, preference similarity, and geographical location, according to the strategy proposed in Section 4.Then, we develop collaboration among users via D2D communication inside each group and missing packets are shared among users under the base station's scheduling to rebuild lost layers.
As shown in Figure 3, one base station and  users are in a cell, and partial users are divided into different multicast groups receiving different videos via the cellular downlink, called multicast users.Others who have no intention of participating in multicast are referred to as ordinary users.Since the ordinary user is not covered by our discussion, we may assume that the  users are all multicast users.And all users are equipped with both D2D and cellular interfaces, so that they can receive packets by D2D communication if necessary.
The workflow of our proposed intragroup recovery is shown in Figure 4; we divide one GoP delivery process into two parts: multicast round and cooperation round.At the beginning of one GoP transmission, each user receives packets from the base station during multicast phase.In process of following cooperation round, users would report to the base station which layers are missing.The D2D link will be established by the unified scheduling of the base station to realize the complementation of the data received among users.If the time slots allocated to cooperation round are sufficient, we can encapsulate the above reporting, scheduling, and sharing processes into a subround, allowing users to switch multiple times to obtain their missing layers.

Cooperative Group Formulation and Optimal Links Scheduling
There are two technical challenges for our proposed scheme: (1) how to effectively screen users into multicast group to stimulate cooperation and (2) how to schedule D2D links to maximize the overall reconstructed SVC layers.Now we will look at these two subproblems.

Cooperative Multicast Group
Formation.Now we formulate the cooperative multicast group formation for SVC streaming recovery as a coalitional game.

Utility Function.
When a user is ready to invite another user to join the multicast group, what are the main considerations?
First, consistency of user preferences within group is a prerequisite for multicast group formation, in order to improve the efficiency of spectrum resources in cellular system.We use collaborative filtering method to obtain the similarity of users' interest.Assume that the number of multicast video types available is ,() = {  1 ,   2 , ⋅ ⋅ ⋅ ,    } denoting user 's interest set, obtained from historical data analysis, where    is a binary variable, which is equal to 1 if user  is interested in video type ; otherwise    = 0.The interest similarity between users  and  can be obtained by the Jaccard coefficient [22], expressed by where 0 ≤ (, ) ≤ 1, the larger the value is, the more likely the users are to choose the same video content.Since social attributes represent long-term contact between users, links maintained with them tend to be stable [23].With the help of social-related parameters to filter users, we can maximize the use of temporary links to achieve QoE promotion.We use (, ) to denote the social affinity of users  and , which can be obtained by analyzing their interactions with social software.Note that 0 ≤ (, ) ≤ 1, the larger the value, the closer the relationship between users.Besides, since the next collaboration will take place with D2D communication, users have to consider location information when inviting other members, lest they become isolated nodes.We characterize this property in terms of the ratio of distance between users to diameter of the cell, expressed by (, ) =  , /, where  denotes the diameter and  , denotes the distance between users  and , 0 < (, ) ≤ 1.
After the above discussion, we can see that there are three main factors that affect the preference of user invitation, and their relationship to utility functions can be expressed as And we will use the method of microeconomics to design utility function to quantify this preference.In microeconomics, utility is the quantitative expression of preference, and utility is divided into ordinal utility and cardinality utility [24].Cardinal utility is measured by absolute value, while ordinal utility is concerned with the relative relationship of utility.Here, the users are concerned only with the relative relationship of the utility brought about by inviting different users; hence we use ordinal utility to quantify preferences.Because there is no alternative or complementary relationship between interest similarity, social attributes, and geographical location, we use Cobb-Douglas preference model to design our utility function, expressed as where , , and  are the corresponding coefficients to adjust the priorities and all positive.Note that the value of ordinal utility itself has no physical meaning; we just use it to quantify preference; the forms of utility function are not unique.Besides, without considering the preference similarity, the proposed scheme can also be used for users in the same MBMS service area [25].Definition 1.The core is the set of ( *  ) ∈N ∈ (N) for which a coalition Δ does not exist and (  ) ∈N ∈ (Δ) such that (  ) ∈N ≻  ( *  ) ∈N .That is, no set of participants will actively take a joint action that is better for all of them to deviate from current coalition, which is in the same spirit as Nash equilibrium in a noncooperative game.By obtaining a core solution of the coalition game, the formation of multicast groups is completed.In fact, a subgame is a subset of the players of the original game.Note that the strategy set to build a top coalition is the core of the subgame made up of members in the top coalition, since the group is collectively best for all its members.Definition 4. The game Ω = {N, Φ N , W, (≻  ) ∈N } owns only one core solution if and only if all its subgames have a top coalition and any player in any subgame cannot belong to more than one top coalition.
Proof.At the initial stage of any subgame, we randomly choose user  1 from the players subset Φ Z , then we can find the second user  2 who can maximize user  1 's utility.Repeat the steps above and we can find a multicast friend cycle.Using proofs by contradiction, if such cycle does not exist, the above-mentioned user sequence will extend infinitely.Since any two users are different and the total number of users in the cell is limited, this assumption is clearly not true.And according to Definition 5, each user takes the decisions that are best for themselves; no participant can take a joint action that is better for all of them to deviate from current coalition.Any multicast friend cycle generated through the above steps is a top coalition.Theorem 7.For game Ω = {N, Φ N , W, (≻  ) ∈N }, the strategy set for generating multicast friend groups is a core solution, and the set of coalitions resulting from a decision initiated by any one of the multicast users is unique if no strategies for one player can bring about the same utility.
Proof.According to Lemma 6, at the beginning of game Ω, we randomly choose a user to invite other users and obtain a top coalition  1 .By Definition 3, players in this top coalition have achieved the maximum utility currently available; these players will not continue to participate in current game.After removing the players mentioned above, the original game becomes its corresponding subgame ℧ = {Z, Φ Z , W, (≻  ) ∈Z }, where Z = N\ 1 .With the generation of one multicast friend cycle after another using Lemma 6, we have Z = N \   for corresponding subgame to each iteration  = 1, ⋅ ⋅ ⋅ , .According to Definition 4, this completes the proof.For the second part of the theorem, using proofs by contradiction, if one player can join two different top coalitions, it must have more than one optimal strategy, which contradicts Definition 5.
Based on Lemma 6 and Theorem 7, we can find the core solution for cooperative group formation.

User Cooperation Scheduling.
As we mentioned earlier, with a view to the hierarchical encoding structure of SVC streaming, the same layer of a GoP has different values according to the actual reception.For example, layer 4 enables better video quality for user who owns layers {1, 2, 3}, but it does not work for user who only has layers {1, 2}.The proposed scheme targets to improve video quality of the multicast group as much as possible in a subphase, which is directly related to layers that can be reconstructed.Considering the upper limit to the perceived video quality of users and marginal utility on the improvement of QoE [26,27], the optimization problem can be formulated as where  is the marginal utility coefficient and   is the number of layers that user  has successfully reconstructed from this collaboration.Now we analyze this problem with an exact potential game.A potential game must have equilibrium with pure strategy and a discrete potential game has finite improvement properties [28].If the objective function is a potential function of a game with discrete strategy space, it must have an optimal solution and can be solved by local search.Now we formulate a potential game Γ as follows: the set of players C is the set of users in a multicast group, player 's available strategy   is to choose which player in the group to request video layer, utility function is   = 1/(1 + exp(−  )), and potential function is H = ∑  =1 1/(1 + exp(−  )) = ∑  =1   .According to [28], we can prove the proposed objective function is a potential function of game Γ.Since the number of members in multicast group is finite, game Γ's strategy space is discrete.The problem (6) can be solved by local search algorithm such as Tabu Search and Simulated Annealing.

Performance Analysis
In this section, we evaluate the performance of the proposed cooperative SVC streaming multicast scheme through simulations by using MATLAB.
Without loss of generality, we suppose that the wireless multicast channel conditions are random but quasi-static and remain unchanged from one GoP that is sent out until the deadline to be dropped.Since channel capacity described by the Shannon equation does not reflect the wireless channel conditions preciously, where the wireless channels are burstloss prone at upper layer, we use the Gilbert-Elliot channel model to capture burst-loss features in the proposed system without handling the details of the datalink layer and physical layer.Gilbert-Elliot model can be denoted by a two-state stationary continuous time Markov chain; there are only two cases per link: Good or Bad.If the state is Bad, one frame will be lost; otherwise, it can be successfully decoded.
For video streaming, we consider H.264/SVC video codec with YUV420; i.e., there are 8 layers per GoP and each layer consists of 16 encoded video frames.We implement the experiments with the real video traces Foreman, where the average PSNR (Peak Signal-to-Noise) of the Foreman is 43.32 dB, the resolution of the Foreman is 352×288, and default video encoding bitrate is 450Kbps.
Besides, in order to measure the performance of the proposed scheme, we consider the following three measurement metrics: Peak Signal-to-Noise: PSNR (Peak Signal-to-Noise) is an objective evaluation of video quality and is a function of the mean square between the original and the received video sequences, which can be formulated as where   is the maximum value of frame pixel and  is the mean square error between the original and the received video sequences.
Valuable Video Frame Ratio: the valuable video frame ratio is defined as the ratio between the number of valuable video frames received by a user and the number of all transmitted frames before playback.
The performance of the proposed scheme is compared with direct multicast in our simulations.According to multicast channel conditions, users with direct SVC multicast discard the enhancement layers that could not be decoded due to burst-loss. users are scattered into a round cell, and the interest similarity and social affinity between each other are also randomly obtained, and coefficients , , ,  are equal to 1.The base station determines the average bit rate that can transmit all layers of one GoP in multicast round, and D2D cooperation round is set to transmit an enhancement layer.
First, we evaluate the performance of our proposed cooperative group formation scheme; the experiences are implemented with different number of multicast users in the cell,  = 100, 200, 300, 400, 500, 600, 700, 800.To ensure the generality of the result, for each given , we average over 1000 runs.Figure 5 shows the average size of cooperative multicast groups.We can see the size of groups has not skyrocketed with the number of users but slows down the growth rate gradually.This is because users select clusters based on the  coalitional game.A player can only select one player as the optimal strategy, and each player can only be selected once, thus limiting the size of cooperative groups.
Next, we employ the above evaluation metrics to compare the received video quality of the proposed scheme and traditional direct multicast.The default multicast group size is set to 10. Figure 6 shows the relationship between the received video quality in terms of PSNR and the probability of burst-loss during one GoP transmission.Obviously, the growing probability of burst-loss signifies worse channel qualities.With the deterioration of channel quality, the gain of the proposed scheme over direct multicast shows a gradual increase and then remains stable.This is because the restoration of video quality in the proposed scheme is based on the complementarity among users.With the degradation of channel conditions, the probability of complementarity between users increases gradually.But when the channel quality deteriorates to a certain extent, most users have only few of enhancement layers, and the possibility of cooperation is reduced.
In Figure 7, curves of valuable video frame ratios with the probability of burst-loss during one GoP transmission are depicted.We can observe that the proposed scheme far outperforms direct multicast, especially when the channel quality is quite poor.The valuable video frame ratio of the proposed scheme is 65.9% higher than direct multicast.This is because users in the direct SVC streaming multicast system have to discard the corresponding enhancement layers, and the system resources are severely wasted.
To better understand the performance of the proposed scheme, Figure 8 shows the experience qualities in terms of MOS under various burst-loss probability and the SVC streaming recovery with the real video traces Foreman is shown in Figure 9.As we can see, the distortion of the video sequences with the proposed scheme is slight.According to Figures 6 and 9, the average PSNR of the proposed scheme is higher than 35dB and users' MOS is "Excellent" or "Good".But the PSNR of direct multicast is between 24dB and 34dB, which signifies the MOS is "Fair".So the scheme proposed in this paper greatly improves the user's experience.

Direct Multicast
The Proposed Scheme

Conclusions
This paper studied a cooperative SVC streaming multicast scheme based on D2D communication to improve the received video quality over burst-loss prone channels.The proposed scheme motivates multicast users to form cooperative groups based on coalitional game theory to share enhancement layers.The proposed optimal D2D links scheduling based on potential game helps to improve the received video quality of multicast users, while taking into account the hierarchical encoding structure of SVC.Moreover, the proposed scheme can make up the burst-loss without introducing heavy redundancy to video codec or add new network interface.Extensive numerical analysis studies with real video traces have corroborated the significant gain using the proposed scheme.

Direct Multicast
The Proposed Scheme  In future, it is of great interest to design a distributed optimal link scheduling algorithm to reduce the burden of centralized scheduling on the BS.

Figure 5 :
Figure 5: Average size of cooperative groups under various number of users.
probability during a GoP transmission

Figure 6 :
Figure 6: Relationship between the video quality and burst-loss probability.

Figure 7 :
Figure 7: Valuable video frame ratio under various burst-loss probability.
probability during a GoP transmission
In detail, user  prefers the group formation strategy (  ) ∈N to (   ) ∈N if and only if user  invites assigned user   in strategy (  ) ∈N to have more utility than inviting assigned user    in strategy (   ) ∈N according to above-mentioned utility function.
.1.2.Coalitional Game Formulation.Then, we cast the multicast group formation as a coalitional game Ω = {N, Φ N , W, (≻  ) ∈N } as follows: (i) The set of players N is the set of multicast users.(ii)The set of cooperation strategies is Φ N = {(  ) ∈N :   ∈ N  , ∀ ∈ N}, which denotes the set of current investible users for all users.(iii)The characteristic function is (Δ) = {(  ) ∈N ∈ Φ N : (  ) ∈Δ = () ∈Δ    = ,  ∈ N \ Δ} for each multicast group Δ ∈ N.There are only two cases for the players, and the condition (  ) ∈Δ = () ∈Δ denotes that user  chooses to invite user  to join a multicast group Δ (a coalition).The condition   = ,  ∈ N \ Δ represents that user  out of the coalition Δ is not in any group.(iv)The preference order (≻  ) ∈N is defined as (  ) ∈N ≻  (   ) ∈N if and only if (,   ) ⩾ (,    ).