# Social-Aware Edge Caching Strategy of Video Resources in 5G Ultra-Dense Network

Authors: Shijie Jia; Zhen Zhou; WeiLing Li; Youzhong Ma; Ruiling Zhang; Tianyin Wang
Journal: Mobile Information Systems
 (2021)

---

## Abstract

The video traffic offloading in edge networks is an effective method for remission of congestion of backward paths in 5G networks by continual optimization of video distribution to promote scale and efficiency of video delivery in edge networks (e.g., D2D-based near-end sharing). Because the video resources are dispersedly cached in local buffer of mobile devices of video users, the management of local video resources of video users in edge networks (e.g., caching and removing of local videos) causes dynamic variation of video distribution in networks. The real-time adjustment of local resources of users in terms of the influence levels (e.g., promotion and recession) of video sharing performance is significant for the continual distribution optimization. In this paper, we propose a novel Social-aware Edge Caching Strategy of Video Resources in 5G Ultra-Dense Network (SECS). SECS designs an estimation method of interest domain of users, which employs the Spectral Clustering to generate initial video clusters and makes use of the Fuzzy C-Means (FCM) to refine the initial video clusters. A user clustering method is proposed, which enables the users with common and similar interests to be clustered into the same groups by estimating similarity levels of interest domain between users. SECS designs a performance-aware video caching strategy, which enables the users intelligently implement management (caching and removing) of local video resources in terms of influence for the intragroup sharing performance. Extensive tests show how SECS achieves much better performance results in comparison with the state-of-the-art solutions.


---

## Body

## 1. Introduction

The video services (e.g., video-on-demand and living video streaming) provide rich viewing content for video users by making use of mobile smart devices to ubiquitous access to the Internet [1–5]. The smooth and high-definition watching quality enables the video users obtain great experience, which requires higher bandwidth and lower delay to support video data delivery from video providers to video requesters [6–8]. The new generation of communication technology 5G relies on bandwidth expansion and transmission acceleration to provide support in capacity and velocity for smooth and high-definition experience [9–11]. Moreover, the 5G makes use of the ultra-dense deployment to promote network coverage and access capability, which supports more video users to ubiquitously fetch video content via the 5G networks.The excellent experience and convenient access of video services not only attract the large-scale video users but also speed up the increase of user scale. Obviously, the fast expansion and desired high-quality experience of user scale trigger huge bandwidth consumption, so that the unbalance between supply and demand of bandwidth results in the severe network congestion. In particular, the backhaul paths in the 5G networks inevitably are subjected by the network congestion because of dense access. The high startup delay and unbearable packet loss caused by the network congestion lead to unsmooth playback and video picture distortion, which brings severe negative influence for user quality of experience (QoE). Therefore, offloading video traffic in edge networks without intervention of 5G nodes is significant for relieving congestion levels of backhaul networks.D2D communications enable mobile devices implement data transmission without intervention of 5G nodes, which become the important method for traffic offloading in underlaying networks [12–14]. As Figure 1 shows, the video users not only make use of the 5G networks accessing to the Internet to watch video content but also employ the D2D communications to fetch the video resources from other mobile devices carrying the corresponding videos. The successful traffic offloading based on the D2D communications relies on the two perspectives: (1) search of D2D matching objects which cache video resources requested by the video request nodes; (2) delivery of video data using D2D communications between request and supply nodes of video resources. The successful search of D2D matching objects which cache video resources is the important precondition for the successful delivery of video data using D2D communications. On the other hand, the fast search of D2D matching objects can efficiently reduce startup delay of video request nodes, which becomes the key factor for ensuring high QoE in terms of delay-sensitive property of video services. The successful and fast search of video providers in the range of D2D communications is vital for the offloading video traffic in the 5G networks.Figure 1
Video streaming services in 5G networks.The video resources are carried by the mobile devices and are distributed in networks. The users cache and remove video resources in terms of the interests, so that the dynamic distribution of videos in networks brings severely negative influence for the success ratio and time of searching video providers. On the other hand, the video resources move with the movement of mobile devices, which are dynamically distributed in geographic area of the edge networks. Therefore, the geographical movement and local replacement of video resources are main reasons of dynamic change of video resource distribution: (1) the replacement based on the self-interest change results in the increase in the risk of video search failure (the search failure increases the startup delay of video request users); (2) the geographical movement of video resources results in the decrease in the probability of D2D pairing success with one-hop neighbor relationship (the D2D pairing failure means that the video request users only make use of the multi-hops transmission to fetch video data instead of D2D communications with one-hop transmission). The numerous researchers always focus on making use of resource distribution optimization based on caching management to promote efficiency of resource sharing. For instance, Mehrabi Liu et al. propose a joint QoE-traffic optimization with collaborative edge caching by investigation of impact of collaborative mobile edge caching for both QoE and backhaul data traffic [15], which implements self-tuned bitrate selection to make the decision efficient cache replacement strategy. Thar et al. propose a deep learning-based prediction scheme, which achieves intelligent management of resource leasing and caching [16], which can make the prediction for resource leasing and caching using the Keras and Tensorflow libraries. Jiang et al. propose a cooperative content caching policy based on multiagent reinforcement learning for the architecture without preference and historical content demands of users by designing a cooperative content caching scheme to solve the cooperative content caching problem [17]. However, the most of existing methods neglect the association relationship between interests and behaviors (requesting and caching) of edge users, which results in severe turbulence of resource distribution by the arbitrary replacement of local cached resources. The sharing performance suffers severe negative influence and the traffic load of 5G network cannot be effectively relieved. Therefore, the real-time adjustment of video distribution in terms of variation of video sharing performance is very significant for effect of D2D-based traffic offloading and user QoE.In this paper, we propose a novel Social-aware Edge Caching Strategy of Video Resources in 5G Ultra-Dense Network (SECS). SECS designs an estimation method of interest domain of users: (1) SECS employs the Spectral Clustering method to generate initial video clusters in terms of similarity between videos by investigating video content and access behaviors of users; (2) SECS makes use of the Fuzzy C-Means (FCM) to refine the video clusters by redefining the distance between videos. The refined video clusters can be considered as the interest domain of users. A group construction method of clustering users is proposed, which relies on estimation results of similarity levels of interest domain to aggregate users, which enables users with common and similar interests to be clustered the same groups. A performance-aware video caching strategy is proposed, which implements intelligent management of local cached videos by estimating influence for the sharing performance in user groups from the three perspectives: promotion of video sharing scale, reduction of response delay, and motivation of near-end sharing. Extensive tests show how SECS achieves better results in comparison with other state-of-the-art solutions in terms of caching hit ratio, caching cost, response delay, and control overhead.


## 2. Related Work

The numerous researchers have focused on content edge caching methods in recent years. Qiao et al. propose a joint optimization method for the content placement and content delivery in the vehicular edge networks by making use of the trilateral cooperation communications among macrocell station, roadside units, and smart vehicles [18]. The joint optimization problem is formulated as a double time-scale Markov decision process. On the large time-scale, the content placement relies on content popularity, vehicle driving paths, and resource availability; on the small time-scale, a scheme based on vehicle scheduling and bandwidth allocation is designed, which decreases the content delivery delay. A deep deterministic policy gradient framework is proposed, which obtains a suboptimal solution corresponding to the long-term mixed integer linear programming problem. However, the formulated optimization problem relies on the precondition that the time-scale of content timeliness changes less frequently during the content delivery process. Kwak et al. propose a hybrid content caching method without the knowledge of content popularity [19]. The content caching location algorithm is designed, which supports average requested content data rates following finite service latency. By employing the Lyapunov optimization approach, a caching control problem with tight coupling between CU caching and BS caching is formulated and solved. By employing the submodularity property of the sum-weight objective function, the practical and heuristic CU/BS caching algorithms are proposed, which deals with a general caching scenario. Liang et al. focus on solving utility-oriented service entity caching problem in edge networks [20]. The positive impact brought by clients from caching a service entity in an edge server is defined as the utility in terms of variation in changed specific scenarios. A utility-based service entity caching problem is formulated, which is extended to other problems via redefinition of utility. The utility problem is proved as a NP-complete problem and is solved by a designed approximation algorithm. Zhang et al. propose an edge caching framework in integrated content-centric mobile 5G networks, which makes use of content-centric networking to achieve efficient management of content-oriented information and promotion of content delivery efficiency [21]. The content caching architecture is consisted of function entities, protocol stack, content retrieval, and edge caching approaches; the edge caching performance also is demonstrated by the authors. Saputra et al. make use of the deep learning to design proactive cooperative caching approaches, which can predict content demand of users in a mobile edge caching network [22]. The content server in edge network is responsible for collecting information of mobile edge nodes and performs the deep learning algorithm to predict content demand of whole network. A framework based on the distributed deep learning is proposed, which allows the mobile edge nodes collaborate and exchange information. The framework can decrease prediction error for content demand and does not need revealing private information of users.Zhang et al. propose a caching placement method with the multi-winner auction in D2D-enabled caching cellular networks by investigating edge caching incentive and content caching redundancy [23]. A multiwinner edge caching auction is modeled; an optimization problem of content caching revenue maximization is formulated. A semidefinite programming is designed, which obtains an approximate optimal caching placement to reduce the content caching redundancy in a UT movement scenario. A payment strategy with Nash bargaining game based on personal profit fairness is designed and a multiwinner repeated auction based caching placement algorithm is proposed, which reduces the complexity with tiny performance loss. Zhang et al. propose a cooperative caching strategy by construction of a two-tier heterogeneous network consisted of edge servers and caching helpers, which promotes utilization ratio of storage space and caching hit probability [24]. By making use of stochastic geometry and optimizing the caching probabilities of contents, a cooperative caching strategy is designed, which can maximize the hit probability and promotes the utilization ratio of local storage space. Zhang et al. propose a delay-optimal cooperative edge caching in wireless networks, which can optimize content placement and cluster size according to stochastic information of comprehensive measurement of network topology, traffic distribution, channel quality and file popularity [25]. The authors proposes a greedy content placement algorithm using bandwidth allocation optimization and a condition constraining the maximal cluster size based on tradeoff between caching diversity and spectrum efficiency. Liu et al. investigate heterogeneous context without preferences of user to implement management of content caching [26]. An online Bayesian clustering caching algorithm is designed, which maintains sustainable scalability by learning interactive cache hit data between users. The latent number of user groups is explained by a Dirichlet multinomial mixture model based on Bayesian generative framework (users with the same preference). Then, a dynamic clustering policy is proposed, which can obtain preferences of clusters by making use of a collapsed Gibbs sampling algorithm. A cache bandit algorithm is designed, which can support the formulation of cache decisions. Guan et al. propose an edge caching admission strategy of video content based on preference learning [27]. An information collector is designed, which collects the preference-related information without any modification of clients and video providers. A tree-structure model is designed, which learn and compress preferences of users. An explore-and-exploit method is proposed, which makes the decision of video caching. Xu et al. propose a secure edge caching scheme in mobile sensor networks [28]. A secure edge caching framework is designed, which is consisted of content provider, multiple edge caching devices, and some mobile users. An interaction model based on Stackelberg game between the content provider and edge caching devices is designed, where content provider (game-leader) determines payment strategy of secure caching service, and each edge caching device (game-follower) makes the decision for the quality of secure caching service. A zero-payment mechanism is designed, which deals with selfish behaviors of edge caching devices to stimulate content caching.


## 3. SECS Detailed Design

### 3.1. Interest Domain of Video Users

The interest for the video content is main reason to drive the video users requesting video resources. The various interests for the different video content make the video users dedicate fetching the desired video resources. However, the user interests for video content are dynamically variational. When the video content is in the range of desired video kind for the video users, the users send the video request to fetch and store the video resources; when the users have watched the video content, the user interest levels for the watched videos fast weaken, so that the watched videos may be removed in the local buffer. The variation of user interests determines the change of requested and cached videos, which brings the severe negative influence for the video distribution. This is as the video system dispatches the video resources to respond the video request of users and efficiently makes use of the buffer space (e.g., removing unpopular videos and caching popular videos) to support the large-scale access. Obviously, the interest analysis is important for understanding and predicting behaviors (e.g. request, caching and replacement of video resources) of video users, which supports beforehand or real-time adjustment of video resource distribution to balance supply and demand and promote video sharing efficiency. Table1 lists the definition of symbols in the whole paper.Table 1
Notations used by the paper.
ParametersDefinitionaAttribute of videosaSimilarity of access relation between videosfNumber of request association relationsviVector of video similarity valuesdidegree value of any videoviλCharacteristic value ofLUn×k matrix Of characteristic vectorsCVSet of video clustersMi,jMembership ofvi belonging to cjIjviInterest level ofuj for viT¯kdAverage wait delayliViewing log of useruiPj,hpProbability of pushing video with encounterfj,hFrequency of video sharing between usersT¯kdAverage wait delayPj,hrProbability of requesting video with encounterλiRate of request and handlingδj,hAcceptation probabilityscContent similarity between videosSVideo similaritynTotal number of video logsℝm×m matrix Of video vectorsLStandardized laplacian matrixℂSet of characteristic values ofLcVideo clusterdi,jDistance betweenvi and vjmi,kMembership of video to cluster centricPj,hviAcceptance probability ofuj for viIDiInterest domain of useruiIjviInterest level ofuj for viT¯ksAverage serving capacity of usergNumber of request messagesPj,heProbability of users becoming neighborsPj,hpProbability of pushing video with encounterμiRate of request and handlingP (r)Probability of r-th requested videoMeasurement of user interests relies on the videos which have been watched by the users. However, the single video does not reflect the real interest of users. A watched video only denotes the user has interest for the video, which does not help the video system understand the intention that the user watches the video and predicts the video requested by the user in the future. If the watched videos are aggregated, the clustered video sets not only denote interest kind for the video content but also describe the boundary of interested video resources. Further, the interest domain can be used to estimate the request probability of video users for any video, predict the requested video resources in the future, and cluster the video users with the same or similar interest. The traditional video clustering methods make use of the structured video information to measure the similarity values between videos. For instance, a videovi can be denoted as vi=a1,a2,…,ak, where a is any attribute of vi (e.g., title, actor and abstract of video). If vi=a1,a2,…,ak can be considered a vector, the similarity value between vi and vj can be defined as the angle cosine between two vectors vi and vj. However, the measurement of similarity between videos only investigates the relation levels between video content and does not involve the influence factors from the request behaviors of video users. For instance, the continuous two videos in a TV play series may have the similar actor, but the plot may be different for the two videos. The single measurement based on the content similarity cannot find the two videos belong to the same TV play series. The relation from the request behaviors of video users should be considered as the measurement parameter for estimation of video similarity. Therefore, the merged similarity based on content and request relation can be defined as(1)Si,j=sci,j×sai,j,sci,j∈0,1,i≠j,where sci,j is the content similarity between vi and vj; sai,j is the similarity of user access relation between vi and vj. In terms of the abovementioned traditional measurement method of video similarity, vi and vj can be the two vectors which include the same attributes, respectively. The angle cosine between the two vectors corresponding to vi and vj can be considered as the content similarity sci,j between vi and vj. The measurement method of value of sai,j needs to investigate the association relationship between vi and vj in the request behaviors of video users. Let log=l1,l2,…,ln denote the all logs of video request where any item li in log is the video access log of a user i in the video system. If a log li includes vi and vj and the location of vi and vj in li is adjacent, vi and vj have a request association relation in li. The value of sai,j can be defined as(2)sai,j=fi,jn,sai,j∈0,1,where fi,j is the number of request association relation of vi and vj and n is the total number of all logs in log. If the number of request association relation of vi and vj is 0, fi,j=0 and sai,j=0. The similarity values among vi and all videos form a vector svi=Si,1,Si,2,…,Si,m according to equation (1) where Si,i=0 and m is the total of all videos. All vectors corresponding to the videos can form an m×m matrix ℝ. Because Si,j=0andi=j, the values of similarity in the diagonal line of ℝ are 0. We employ the Spectral Clustering method to cluster videos in terms of the matrix ℝ of video similarity [29–31]. Because the Spectral Clustering method is well known, we briefly introduce the process of clustering video. The degree value of any video vi can be defined as the total sum of similarity values among vi and other videos, as follows:(3)di=∑j=1mSi,j,where m is the total number of all videos. In fact, di is the sum of all items in ith line of ℝ. The degree matrix of similar matrix ℝ can be built and be denoted as D. The standardized Laplacian matrix L can be calculated according to L=D−1/2D−ℝD−1/2. The m characteristic values of L can be further obtained and are sorted according to ascending sequence of values of all items in ℂ, namely, ℂ=λ1,λ2,…,λm. Any item λi in ℂ is equal or greater than 0. The subset λ1,λ2,…,λk in ℂ is extracted. The characteristic vectors u1,u2,…,uk are calculated corresponding to λ1,λ2,…,λk, where the dimension of any vector is n. The characteristic vectors u1,u2,…,uk form a n×k matrix U, where n is the number of videos and k is the purposed number of video clusters. The most of Spectral Clustering methods employ the k-means method to divide the n videos into k clusters based on the n×k matrix U. However, the clustering exactitude level of Spectral Clustering method relies on the estimation accuracy of similarity between samples and the clustering performance of k-means method depends on the selection of center samples of clusters [32–34]. Therefore, after using the k-means method, the k video clusters can be obtained and be defined as CV=c1,c2,…,ck. Each item ci in CV is denoted as civk=va,vb,…,vh, where vk is the centric item of ci.The accuracy of video clustering is very important for generation of interest domain of users and estimation of video request probability of users. If the accuracy of video clustering is low, the video clusters include videos which are dissimilar with each other, so that the interests of users are not definitely obtained and the probabilities of video request of users are not precisely estimated. This leads to guideless caching and replacement of video resources bring severely negative influence for video sharing performance and user QoE. Therefore, the video clusters based on the Spectral Clustering are considered as the initial clusters and should be refined to promote the accuracy of video clusters (e.g., high cohesion between videos and low coupling between clusters). We employ the Fuzzy C-Means (FCM) method to refine the initial video clusters [35]. The objective function of FCM can be defined as(4)J=∑i=1V∑j=1CVMi,jdi,j,∑j=1ciMi,j=1,where di,j is the distance between two videos vi and vj and di,j=Si,j; V is the total number of video resources and CV returns the total of all items in video cluster set CV; and Mi,j is the membership of vi belonging to cj and can be defined as(5)Mi,j=∑c=1CVmi,kmi,c2/m−1,where mi,k is the membership between vi and centric item of ck and can be defined as(6)mi,k=Si,k×wi,j,wi,j=fi,kck,where Si,k is the content similarity between vi and centric item vk of ck, wi,j is a weight value, and fi,k is the number of ck’s items which have the co-occurrence relationship with vi. For instance, if vi and any item vj in ck jointly are included in any log, vi and vj have the co-occurrence relationship. In fact, fi,k is the number of items in ck which jointly are included with vi in logs. Obviously, fi,k≤ck and wi,j∈0,1. sa reflects the continuity between videos for the request behaviors of users; w investigates range that a video has the association relationship with the items in a video cluster for the requested content of users. Because the FCM makes use of recalculating membership values of between each item and all clusters to promote intracluster cohesion and reduce intercluster coupling after adjustment of centric item of cluster, the FCM has multiple refinement round and intraround recalculation. In order to clearly describe the refinement process based on the FCM, Jgh denotes value of objective function in equation (4), where g is the number of refinement round and h is the number of recalculation in the current round. The following process shows refinement of clusters in CV:Step 1: checks whether all items inCV are marked or not. If all items in CV have been marked as “refined”, implements Step 7; Otherwise, if all items in CV are not marked, extract a cluster c which is not refined in the current refinement round from CV.Step 2: the objective function value ofhth calculation of gth round is defined as Jgh. The item which has the minimum distance with centric node of c is removed from S.Step 3: the centric node ofS should be reselected because of removing an item in c. After reselection of centric item of c, the value J of objective function needs to be recalculated and is marked as Jgh+1.Step 4: ifJgh+1>Jgh, the removed item from c can be considered as a noise item and is added into a noise set SR; c is marked and the mark status is “refined”; otherwise, if Jgh+1≤Jgh, the removed item from S cannot be a noise item and is re-added into c; The original centric item of c still is centric item of c; c is marked and the mark status is “unrefined”.Step 5: IfCV still includes “unmarked” items, returns Step 1; otherwise, implements Step 6.Step 6: if all items inCV are marked as “refined” or “unrefined” and the number of “refined” items is equal or greater than 1, the items in CV still need to be refined. The number of refinement round is g+1. All items in CV are redefined as “unmarked” and returns to Step 1; otherwise, if all items in CV are marked and the number of “refined” items is 0, implements Step 7.Step 7: the current refinement iteration is terminated, and all items inCV are considered as “refined.”Because there is only one nested iteration process of membership calculation based on matching video similarity in the above refinement process, the complexity of the above refinement process isOn2. The initial video clusters in CV are refined in terms of the above refinement process, and the set consisted of refined clusters still is defined as CV. If the viewing log li of a video user ui is defined as li=va,vb,…,vk and the items in li, respectively, belong to video clusters ca,cb,…,ck, the interest domain of ui is considered as IDi=ca,cb,…,ck. When a new video vk is added into V, vk is considered as a member in the cluster ci where the centric item of ci has the largest similarity value with vk among all clusters. In order to avoid the negative influence for the accuracy of clustering videos from the new videos, after vk is added into ci, the centric item of ci should be reselected. m¯ and m¯′ can be calculated, where m¯ and m¯′ are the average membership between all items and centric item before and after vk joining into ci, respectively. If m¯′>m¯, vk is added into ci and the reselected centric item becomes the new centric item of ci; otherwise, vk forms a new cluster and the original centric item still act as the centric item of ci.


### 3.2. User Group with Common Interest Domain

The interest domain of video users not only denotes range of requested videos but also can be used to measure and predict video sharing among users. For instance, if the two users have the same interest domain, they may supply desired videos with each other by pull and push; otherwise, if the two users have the different interest domain, the video providers cannot supply the requested videos for the video requesters and the video requesters cannot receive the pushed videos from the video providers. Video sharing between users with common interest range not only promotes QoS of video system and QoE of users but also increases utilization of cached resources and energy-efficiency levels of mobile devices. Classifying users with common interests into the same groups is very important for the promotion of video sharing performance.LetUS=us1,us2,…,usm. Each user has the definite interest domain and the interest domain directly shows content and range of representational preference of users. The set consisted of centric items corresponding to interest domain of users can be represented as the interest domain of users. The users which have the same or similar interest domain can be allocated into the same user groups, as follows.Step 1: ifUS=∅, implements Step 5; otherwise, if US includes the items which have the same interest domain, implements Step 2; otherwise, if the items in US do not have the same interest domain, implements Step 3.Step 2: extracting an item subsetuss from US where the uss includes the most items among all the item subsets with the same interest domain. uss can be considered as a user category and an item is selected as centric item of uss. US=US−uss, where US−uss denotes the difference set between US and uss, which means that the classified items are removed from US. uss is added into the set USS; return Step 1.Step 3: ifUSS=∅ (all items in US do not have the same interest domain), implement Step 4; otherwise, an item us in US is selected and the similarity values of interest domain of us and all subsets in uss are calculated according to the equation IRS=IDi∩IDj/IDi∪IDj. IDi and IDj are the interest domain of usi and ussj, respectively; IDi∩IDj and IDi∪IDj return the number of intersection and union of interest domain of usi and ussj, respectively. us joins into the subset which has the largest similarity value with us among all subsets in USS. us is removed from US and returns Step 1.Step 4: each item inUS is considered as a subset, is added into USS, and is removed from US; returns Step 1.Step 5: the current iteration of user classification is terminated.The above aggregation process can be described in Algorithm1. Because there are the one nested iteration process of similarity calculation based on matching interest domain in Algorithm 1, the complexity of Algorithm 1 is On2. The users with common interest domain can be aggregated in terms of the above process and form a user group set USS=uss1,uss2,…,ussm. The users in each item of USS have the same or similar interests for video content. The union set of all users of each item in USS is considered as the interest domain of current user group.Algorithm 1:Aggregation Process of users.
1: /∗US is user set; USS is set of user groups;2:TS1 and TS2 are empty sets∗/;3:for (i=0; i¡US;i++)4:USi is added into TS1;5:for (j=0; j¡|US|;j++)6:ifUSi has same domain with USj7:USj is added into TS1;8:end if9:end for10:ifTS1<211:USi is removed from US and is added into TS2;12:else items in TS1 are removed from US;13:TS1 is added into USS;14:end if15:TS1 is set to empty set;16:end for17: all items inTS2 are added into US;18:ifUS is not ∅19:ifUSS is ∅20:for (i=0; i¡|US|;i++)21:USi is a group and is added into USS;22:end for23:else for (i=0; i¡|US|;i++)24:    computes similarity values betweenUSi and all centric items in USS;25:if centric item of subset ussk has the largest similarity with USi26:USi is added into ussk;27:end if28:end for29:end if30:end if


## 3.1. Interest Domain of Video Users

The interest for the video content is main reason to drive the video users requesting video resources. The various interests for the different video content make the video users dedicate fetching the desired video resources. However, the user interests for video content are dynamically variational. When the video content is in the range of desired video kind for the video users, the users send the video request to fetch and store the video resources; when the users have watched the video content, the user interest levels for the watched videos fast weaken, so that the watched videos may be removed in the local buffer. The variation of user interests determines the change of requested and cached videos, which brings the severe negative influence for the video distribution. This is as the video system dispatches the video resources to respond the video request of users and efficiently makes use of the buffer space (e.g., removing unpopular videos and caching popular videos) to support the large-scale access. Obviously, the interest analysis is important for understanding and predicting behaviors (e.g. request, caching and replacement of video resources) of video users, which supports beforehand or real-time adjustment of video resource distribution to balance supply and demand and promote video sharing efficiency. Table1 lists the definition of symbols in the whole paper.Table 1
Notations used by the paper.
ParametersDefinitionaAttribute of videosaSimilarity of access relation between videosfNumber of request association relationsviVector of video similarity valuesdidegree value of any videoviλCharacteristic value ofLUn×k matrix Of characteristic vectorsCVSet of video clustersMi,jMembership ofvi belonging to cjIjviInterest level ofuj for viT¯kdAverage wait delayliViewing log of useruiPj,hpProbability of pushing video with encounterfj,hFrequency of video sharing between usersT¯kdAverage wait delayPj,hrProbability of requesting video with encounterλiRate of request and handlingδj,hAcceptation probabilityscContent similarity between videosSVideo similaritynTotal number of video logsℝm×m matrix Of video vectorsLStandardized laplacian matrixℂSet of characteristic values ofLcVideo clusterdi,jDistance betweenvi and vjmi,kMembership of video to cluster centricPj,hviAcceptance probability ofuj for viIDiInterest domain of useruiIjviInterest level ofuj for viT¯ksAverage serving capacity of usergNumber of request messagesPj,heProbability of users becoming neighborsPj,hpProbability of pushing video with encounterμiRate of request and handlingP (r)Probability of r-th requested videoMeasurement of user interests relies on the videos which have been watched by the users. However, the single video does not reflect the real interest of users. A watched video only denotes the user has interest for the video, which does not help the video system understand the intention that the user watches the video and predicts the video requested by the user in the future. If the watched videos are aggregated, the clustered video sets not only denote interest kind for the video content but also describe the boundary of interested video resources. Further, the interest domain can be used to estimate the request probability of video users for any video, predict the requested video resources in the future, and cluster the video users with the same or similar interest. The traditional video clustering methods make use of the structured video information to measure the similarity values between videos. For instance, a videovi can be denoted as vi=a1,a2,…,ak, where a is any attribute of vi (e.g., title, actor and abstract of video). If vi=a1,a2,…,ak can be considered a vector, the similarity value between vi and vj can be defined as the angle cosine between two vectors vi and vj. However, the measurement of similarity between videos only investigates the relation levels between video content and does not involve the influence factors from the request behaviors of video users. For instance, the continuous two videos in a TV play series may have the similar actor, but the plot may be different for the two videos. The single measurement based on the content similarity cannot find the two videos belong to the same TV play series. The relation from the request behaviors of video users should be considered as the measurement parameter for estimation of video similarity. Therefore, the merged similarity based on content and request relation can be defined as(1)Si,j=sci,j×sai,j,sci,j∈0,1,i≠j,where sci,j is the content similarity between vi and vj; sai,j is the similarity of user access relation between vi and vj. In terms of the abovementioned traditional measurement method of video similarity, vi and vj can be the two vectors which include the same attributes, respectively. The angle cosine between the two vectors corresponding to vi and vj can be considered as the content similarity sci,j between vi and vj. The measurement method of value of sai,j needs to investigate the association relationship between vi and vj in the request behaviors of video users. Let log=l1,l2,…,ln denote the all logs of video request where any item li in log is the video access log of a user i in the video system. If a log li includes vi and vj and the location of vi and vj in li is adjacent, vi and vj have a request association relation in li. The value of sai,j can be defined as(2)sai,j=fi,jn,sai,j∈0,1,where fi,j is the number of request association relation of vi and vj and n is the total number of all logs in log. If the number of request association relation of vi and vj is 0, fi,j=0 and sai,j=0. The similarity values among vi and all videos form a vector svi=Si,1,Si,2,…,Si,m according to equation (1) where Si,i=0 and m is the total of all videos. All vectors corresponding to the videos can form an m×m matrix ℝ. Because Si,j=0andi=j, the values of similarity in the diagonal line of ℝ are 0. We employ the Spectral Clustering method to cluster videos in terms of the matrix ℝ of video similarity [29–31]. Because the Spectral Clustering method is well known, we briefly introduce the process of clustering video. The degree value of any video vi can be defined as the total sum of similarity values among vi and other videos, as follows:(3)di=∑j=1mSi,j,where m is the total number of all videos. In fact, di is the sum of all items in ith line of ℝ. The degree matrix of similar matrix ℝ can be built and be denoted as D. The standardized Laplacian matrix L can be calculated according to L=D−1/2D−ℝD−1/2. The m characteristic values of L can be further obtained and are sorted according to ascending sequence of values of all items in ℂ, namely, ℂ=λ1,λ2,…,λm. Any item λi in ℂ is equal or greater than 0. The subset λ1,λ2,…,λk in ℂ is extracted. The characteristic vectors u1,u2,…,uk are calculated corresponding to λ1,λ2,…,λk, where the dimension of any vector is n. The characteristic vectors u1,u2,…,uk form a n×k matrix U, where n is the number of videos and k is the purposed number of video clusters. The most of Spectral Clustering methods employ the k-means method to divide the n videos into k clusters based on the n×k matrix U. However, the clustering exactitude level of Spectral Clustering method relies on the estimation accuracy of similarity between samples and the clustering performance of k-means method depends on the selection of center samples of clusters [32–34]. Therefore, after using the k-means method, the k video clusters can be obtained and be defined as CV=c1,c2,…,ck. Each item ci in CV is denoted as civk=va,vb,…,vh, where vk is the centric item of ci.The accuracy of video clustering is very important for generation of interest domain of users and estimation of video request probability of users. If the accuracy of video clustering is low, the video clusters include videos which are dissimilar with each other, so that the interests of users are not definitely obtained and the probabilities of video request of users are not precisely estimated. This leads to guideless caching and replacement of video resources bring severely negative influence for video sharing performance and user QoE. Therefore, the video clusters based on the Spectral Clustering are considered as the initial clusters and should be refined to promote the accuracy of video clusters (e.g., high cohesion between videos and low coupling between clusters). We employ the Fuzzy C-Means (FCM) method to refine the initial video clusters [35]. The objective function of FCM can be defined as(4)J=∑i=1V∑j=1CVMi,jdi,j,∑j=1ciMi,j=1,where di,j is the distance between two videos vi and vj and di,j=Si,j; V is the total number of video resources and CV returns the total of all items in video cluster set CV; and Mi,j is the membership of vi belonging to cj and can be defined as(5)Mi,j=∑c=1CVmi,kmi,c2/m−1,where mi,k is the membership between vi and centric item of ck and can be defined as(6)mi,k=Si,k×wi,j,wi,j=fi,kck,where Si,k is the content similarity between vi and centric item vk of ck, wi,j is a weight value, and fi,k is the number of ck’s items which have the co-occurrence relationship with vi. For instance, if vi and any item vj in ck jointly are included in any log, vi and vj have the co-occurrence relationship. In fact, fi,k is the number of items in ck which jointly are included with vi in logs. Obviously, fi,k≤ck and wi,j∈0,1. sa reflects the continuity between videos for the request behaviors of users; w investigates range that a video has the association relationship with the items in a video cluster for the requested content of users. Because the FCM makes use of recalculating membership values of between each item and all clusters to promote intracluster cohesion and reduce intercluster coupling after adjustment of centric item of cluster, the FCM has multiple refinement round and intraround recalculation. In order to clearly describe the refinement process based on the FCM, Jgh denotes value of objective function in equation (4), where g is the number of refinement round and h is the number of recalculation in the current round. The following process shows refinement of clusters in CV:Step 1: checks whether all items inCV are marked or not. If all items in CV have been marked as “refined”, implements Step 7; Otherwise, if all items in CV are not marked, extract a cluster c which is not refined in the current refinement round from CV.Step 2: the objective function value ofhth calculation of gth round is defined as Jgh. The item which has the minimum distance with centric node of c is removed from S.Step 3: the centric node ofS should be reselected because of removing an item in c. After reselection of centric item of c, the value J of objective function needs to be recalculated and is marked as Jgh+1.Step 4: ifJgh+1>Jgh, the removed item from c can be considered as a noise item and is added into a noise set SR; c is marked and the mark status is “refined”; otherwise, if Jgh+1≤Jgh, the removed item from S cannot be a noise item and is re-added into c; The original centric item of c still is centric item of c; c is marked and the mark status is “unrefined”.Step 5: IfCV still includes “unmarked” items, returns Step 1; otherwise, implements Step 6.Step 6: if all items inCV are marked as “refined” or “unrefined” and the number of “refined” items is equal or greater than 1, the items in CV still need to be refined. The number of refinement round is g+1. All items in CV are redefined as “unmarked” and returns to Step 1; otherwise, if all items in CV are marked and the number of “refined” items is 0, implements Step 7.Step 7: the current refinement iteration is terminated, and all items inCV are considered as “refined.”Because there is only one nested iteration process of membership calculation based on matching video similarity in the above refinement process, the complexity of the above refinement process isOn2. The initial video clusters in CV are refined in terms of the above refinement process, and the set consisted of refined clusters still is defined as CV. If the viewing log li of a video user ui is defined as li=va,vb,…,vk and the items in li, respectively, belong to video clusters ca,cb,…,ck, the interest domain of ui is considered as IDi=ca,cb,…,ck. When a new video vk is added into V, vk is considered as a member in the cluster ci where the centric item of ci has the largest similarity value with vk among all clusters. In order to avoid the negative influence for the accuracy of clustering videos from the new videos, after vk is added into ci, the centric item of ci should be reselected. m¯ and m¯′ can be calculated, where m¯ and m¯′ are the average membership between all items and centric item before and after vk joining into ci, respectively. If m¯′>m¯, vk is added into ci and the reselected centric item becomes the new centric item of ci; otherwise, vk forms a new cluster and the original centric item still act as the centric item of ci.


## 3.2. User Group with Common Interest Domain

The interest domain of video users not only denotes range of requested videos but also can be used to measure and predict video sharing among users. For instance, if the two users have the same interest domain, they may supply desired videos with each other by pull and push; otherwise, if the two users have the different interest domain, the video providers cannot supply the requested videos for the video requesters and the video requesters cannot receive the pushed videos from the video providers. Video sharing between users with common interest range not only promotes QoS of video system and QoE of users but also increases utilization of cached resources and energy-efficiency levels of mobile devices. Classifying users with common interests into the same groups is very important for the promotion of video sharing performance.LetUS=us1,us2,…,usm. Each user has the definite interest domain and the interest domain directly shows content and range of representational preference of users. The set consisted of centric items corresponding to interest domain of users can be represented as the interest domain of users. The users which have the same or similar interest domain can be allocated into the same user groups, as follows.Step 1: ifUS=∅, implements Step 5; otherwise, if US includes the items which have the same interest domain, implements Step 2; otherwise, if the items in US do not have the same interest domain, implements Step 3.Step 2: extracting an item subsetuss from US where the uss includes the most items among all the item subsets with the same interest domain. uss can be considered as a user category and an item is selected as centric item of uss. US=US−uss, where US−uss denotes the difference set between US and uss, which means that the classified items are removed from US. uss is added into the set USS; return Step 1.Step 3: ifUSS=∅ (all items in US do not have the same interest domain), implement Step 4; otherwise, an item us in US is selected and the similarity values of interest domain of us and all subsets in uss are calculated according to the equation IRS=IDi∩IDj/IDi∪IDj. IDi and IDj are the interest domain of usi and ussj, respectively; IDi∩IDj and IDi∪IDj return the number of intersection and union of interest domain of usi and ussj, respectively. us joins into the subset which has the largest similarity value with us among all subsets in USS. us is removed from US and returns Step 1.Step 4: each item inUS is considered as a subset, is added into USS, and is removed from US; returns Step 1.Step 5: the current iteration of user classification is terminated.The above aggregation process can be described in Algorithm1. Because there are the one nested iteration process of similarity calculation based on matching interest domain in Algorithm 1, the complexity of Algorithm 1 is On2. The users with common interest domain can be aggregated in terms of the above process and form a user group set USS=uss1,uss2,…,ussm. The users in each item of USS have the same or similar interests for video content. The union set of all users of each item in USS is considered as the interest domain of current user group.Algorithm 1:Aggregation Process of users.
1: /∗US is user set; USS is set of user groups;2:TS1 and TS2 are empty sets∗/;3:for (i=0; i¡US;i++)4:USi is added into TS1;5:for (j=0; j¡|US|;j++)6:ifUSi has same domain with USj7:USj is added into TS1;8:end if9:end for10:ifTS1<211:USi is removed from US and is added into TS2;12:else items in TS1 are removed from US;13:TS1 is added into USS;14:end if15:TS1 is set to empty set;16:end for17: all items inTS2 are added into US;18:ifUS is not ∅19:ifUSS is ∅20:for (i=0; i¡|US|;i++)21:USi is a group and is added into USS;22:end for23:else for (i=0; i¡|US|;i++)24:    computes similarity values betweenUSi and all centric items in USS;25:if centric item of subset ussk has the largest similarity with USi26:USi is added into ussk;27:end if28:end for29:end if30:end if


## 4. Video Caching Management Based on Sharing Performance Awareness

The current mobile devices in edge networks have relatively high performance (e.g., fast computation and large storage). However, the development of video quality (e.g., blu-ray video) brings the fast increase of video size, so that the storage capacities of mobile devices become the relatively finitude. When the local videos occupy the large number of storage resources, the users have to remove some local videos in order to store new videos in the future. However, the caching and removing of local videos bring the immeasurable influence for the video resource distribution in the edge networks. For instance, when a user stores a video into local buffer, the supply capacity corresponding to the cached video is enhanced in the edge networks. The user not only makes use of the cached video to promote the supply capacity of upload bandwidth in the same user group, but also provides video data for users in edge networks. The sufficient supply of video resources can reduce the queued response delay of video request and promote the probability of near-end video sharing (e.g. D2D communications). However, when the popularity of a video decreases, the superfluous supply also wastes the local storage resources of mobile devices. On the other hand, when a user removes a video from local buffer, the video supply decreases regardless of user group or edge networks. The lacking supply of videos can increase the queued response delay of request and reduce the probability of near-end video sharing. However, when the popularity of a video decreases, the removing for the superfluous video caching can promote the use efficiency of local buffer. Therefore, the influence for the video sharing performance should be estimated before the caching or removing of local videos. We investigate the video sharing performance in terms of the three perspectives of promotion of video sharing scale, reduction of response delay and motivation of near-end sharing.


### 4.1. Promotion of Video Sharing Scale

The videos rely on visible content to attract accessing of users. If the videos have irresistible content, the positive request of users promotes popularity of videos and diffusion of video copies in edge networks. After the information of videos (e.g., title and abstract of videos) is obtained by the users, the users which are interested in the videos want to fetch the video resources by sending request messages; instead of the positive request, when the users may receive the pushed messages of video information from other users, they make the decision of receiving the pushed videos.The interest levels are main driving factors of users requesting video resources. When a videovi starts to disseminate in networks, the interest level of a user uj for vi can be defined as(7)Ijvi=Si,kNkNj,where Si,k denotes the similarity value between vi; vk and vk is the centric item of video cluster ck; Nk is the number of videos which belongs to ck and has been watched by uj; Nj is the total number of videos which have been watched by uj; and Nk/Nj denotes the interest level of uj for the interest subdomain ck. The higher the value of Nk/Nj is, the stronger the intentions of uj for requesting videos in ck is. If Si,k is high, the membership level between vi and ck is strong; If Si,k is low, vi has the weak similarity relationship with the most of items in ck. In fact, Si,k can be considered as a weight of Nk/Nj. The larger the value of Ijvi is, the higher the probability of uj requesting vi is. On the other hand, when uj receives a push message about vi, uj not only investigates the interest level for vi but also considers the social relationship. The acceptance probability of uj for a pushed vi can be defined as(8)Pj,hvi=Sj¯fj,hkfj,h,Sj¯=∑c=1mSi,cm,where m is the number of videos which are successfully pushed by ui in the video cluster corresponding to vi; Sj¯ is the mean value of similarity between vi and videos which are successfully pushed by ui in the video cluster corresponding to vi; fj,hk is the sharing frequency of videos in ck between uj and uh; and fj,h is the frequency of video sharing between uj and uh. The larger the value of fj,hk/fj,h is, the closer the social relationship between uj and uh is.


### 4.2. Reduction of Response Delay

The users make use of the request and push to disseminate a new videovi. If vi has high popularity, the large number of users may request vi or accept the push of vi. In the process of users requesting vi, the supply users which have cached vi in local buffer receive the request messages and send video data to the request users. The request users receive video data, watch the video content and store the video into local buffer. At the moment, the video copies are generated by the sharing (diffusion) between users. When the number of request users fast increases, the video system needs to make use of the upload bandwidth of users which have cached the copies in networks to provide the video resources for the request users.Letλa and μa be the rate of request and handling, respectively. λa=Nr/Ta, where Nr is the number of generated request messages during the time span Ta; μa=Nh/Ta, where Nh is the number of handled request messages during the time span Ta. λa>μa during the same time span Ta means that the request of users cannot be met due to the deficient supply of requested videos. Because the supply users with limited handling capacities (e.g., low bandwidth, storage, and computation) cannot fast deal with the mass request messages in terms of “early come early service” principle, a large number of request users need to wait for handling request messages. Obviously, the deficient supply leads to the long wait delay. λa≤μa during the same time span Ta means that the request of users can be met due to the sufficient supply of requested videos. The supply users have low handling capacities, but the sufficient number of supply users enables the request messages be uniformly distributed to the supply users. The request messages can be handled in time, and the wait delay of request users can be reduced.If a useruj∈ussk has cached and watched a video vi, uj has lost the interest for vi. In order to save the storage space and promote the utilization of storage resources, uj replaces videos in local buffer. Before uj removes videos in local buffer, uj needs to estimate the influence for intra-ussk supply capacity of vi. We assume that the request messages generated by users of ussk arriving intra-ussk providers of vi meet the M/G/1 queuing model. The serving capacity Tuj of uj can be obtained in terms of our previous work [36]. In fact, Tuj denotes that the sum of time of handling request message and time of delivering video data. The average serving capacity of users in ussk can be defined as(9)T¯ks=∑i=1mTuim,where m is the number of users which have cached vi in ussk. Let g be the number of request messages generated by intra-ussk users during a future time span ta. The value of g can be calculated according to the following equation:(10)g=ussk−Nkl−Nku,where ussk is the number of all users in ussk; Nkl is the number of users which have watched vi and lose the interest for vi; Nku is the total number of users which are uninterested in vi and users which have the low interest (Ivi<IT), where IT is the threshold value of interest; Ivi≥IT denotes that users are interested in vi; and Ivi<IT denotes that users are uninterested in vi. Let h be the number of users which have cached vi during ta. g≤h denotes that the supply of vi in ussk meets the demand for request of vi, so that the wait delay is 0; if g>h, the average wait delay can be defined as(11)T¯kd=g−hh×T¯ks.When the supply ofvi in ussk cannot meet the demand for request of vi, uj makes the decision of replacement of vi according to the relationship between request and supply of vi after the generation of new copies of vi.


### 4.3. Motivation of Near-End Sharing

The delivery quality of video data relies on transmission path of video data. As we know, the transmission delay is the sum of forwarding delay of relay nodes. If the transmission path has the large number of relay nodes, the transmission delay may be high; if the number of relay nodes in transmission path is less or is 0 (the relationship between requesters and providers of videos is one-hop neighbor), the transmission delay is low or is 0. Moreover, if the transmission path has multiple relay nodes which have high mobility, the dynamic change of geographic location of relay nodes leads to the dynamic variation of transmission path. The variation of transmission path further results in the increase of packet loss and rise of forwarding delay.In order to promote the transmission performance of video data and user quality of experience, the data transmission between one-hop neighbor nodes should be accelerated. Letg denote the number of users which have the interest for vi in ussk (Ivi≥IT) during a future time span ta. The probability of uj and uh becoming one-hop neighbors in g users during ta is defined as(12)Pj,he=fj,hfj,where fj,h is encounter frequency between uj and uh during ta and fj is the total encounter frequency between uj and other users in ussk during ta. If uj has cached vi, the probability of uh requesting vi to uj during the encounter period time of uj and uh is defined as(13)Pj,hr=Pj,he×Ihvi.The probability ofuj pushing vi to uh during the encounter period time of uj and uh is defined as(14)Pj,hp=Pj,he×Pj,hvi.


### 4.4. Video Caching Management Strategy

The video sharing in edge networks can offload the traffic to reduce the load of core networks, which reduces the risk of network congestion. By optimizing distribution of video resources, the video resources can be efficiently allocated in edge networks and promote the utilization efficiency of storage resources. The adjustment of video distribution relies on the demand of video requesters. The performance of video sharing directly reflects the game relationship between supply and demand. The management of video caching is the main tool of adjustment of video distribution. The management of cached videos in local buffer has the important influence for the user quality of experience in terms of the three perspectives of promotion of video sharing scale, reduction of response delay, and motivation of near-end sharing. The management of cached videos based on the performance awareness of video sharing is an efficient method for the effort of distribution optimization and video sharing. We design a video caching management strategy based on the performance awareness of video sharing for a useruj in ussk.uj has watched vi and has cached vi in local buffer. Let λi and μi be rate of request and handling in ussk, respectively. λik>μik denotes that the number of users which store vi is less than the number of requesting vi in ussk, so that uj does not remove vi in local buffer. At the moment, uj estimates the dissemination scale of vi in ussk to make the decision of video pushing. uj can be aware of the users in ussk which are interested in vi according to equation (10). uj divides the g users into the two subsets: sg1=ua,ub,…,up, where each item uc in sg1 has Icvi>Pj,cvi and has more willing to make an active request than accepting pushing of vi from uj; sg2=ud,uf,…,uq, where each item uh in sg2 has Pj,hvi>Ihvi and has higher probabilities of accepting pushing of vi from uj than those of active request. uj preferentially pushes vi to items in sg2, which can promote supply capacities in ussk by pushing vi with high acceptation probability. uj needs to select a user in sg2 which has high acceptation probability and low delivery delay according to the following equation:(15)δj,h=Pj,hp×T¯kdTj,h,where Tj,h is the predicted delivery time based on pushing from uj to uh. The parameters in Tj,h (e.g., packet loss rate and transmission delay) can be obtained by sending detection messages to estimate communication quality of transmission path during a small time slot. A user ub has the largest value of δ among all items in sg2; a user uc has the largest value of χj,c=Pj,hvi×T¯kd/Tj,c among all items in sg2. If δj,h>χj,c, uj sends data of vi to ub in order to generate copies; otherwise, if δj,h≤χj,c, uj sends data of vi to uc. After uj has delivered vi, uj makes the decision of caching vi in terms of the relationship between λik and μik.Ifλik≤μik, ussk has enough supply capacity relative to request scale. Let g denote the number of users which are interested in vi; let q denote the number of users in ussk which store vi. If g≤q, uj can remove vi in local buffer after uj informs users which store vi by sending messages; if g>q, uj estimates the number of users whose state transition from “interested” to “requested” by the following equation:(16)θki=∑c=1tskNcr/Ncitsk,where tsk is a set of time slots; tsk is the number of time slots in tsk; Ncr and Nci are the number of users which request vi and are interested in vi during each time slot tc in tsk, respectively; Ncr/Nci denotes the transition ratio from “interested” to “requested;” and θki denotes the average value of transition ratio from “interested” to “requested” during tsk. If θki×g>q, uj needs to continuously store vi in local buffer; if θki×g≤q, uj can remove vi in local buffer.


## 4.1. Promotion of Video Sharing Scale

The videos rely on visible content to attract accessing of users. If the videos have irresistible content, the positive request of users promotes popularity of videos and diffusion of video copies in edge networks. After the information of videos (e.g., title and abstract of videos) is obtained by the users, the users which are interested in the videos want to fetch the video resources by sending request messages; instead of the positive request, when the users may receive the pushed messages of video information from other users, they make the decision of receiving the pushed videos.The interest levels are main driving factors of users requesting video resources. When a videovi starts to disseminate in networks, the interest level of a user uj for vi can be defined as(7)Ijvi=Si,kNkNj,where Si,k denotes the similarity value between vi; vk and vk is the centric item of video cluster ck; Nk is the number of videos which belongs to ck and has been watched by uj; Nj is the total number of videos which have been watched by uj; and Nk/Nj denotes the interest level of uj for the interest subdomain ck. The higher the value of Nk/Nj is, the stronger the intentions of uj for requesting videos in ck is. If Si,k is high, the membership level between vi and ck is strong; If Si,k is low, vi has the weak similarity relationship with the most of items in ck. In fact, Si,k can be considered as a weight of Nk/Nj. The larger the value of Ijvi is, the higher the probability of uj requesting vi is. On the other hand, when uj receives a push message about vi, uj not only investigates the interest level for vi but also considers the social relationship. The acceptance probability of uj for a pushed vi can be defined as(8)Pj,hvi=Sj¯fj,hkfj,h,Sj¯=∑c=1mSi,cm,where m is the number of videos which are successfully pushed by ui in the video cluster corresponding to vi; Sj¯ is the mean value of similarity between vi and videos which are successfully pushed by ui in the video cluster corresponding to vi; fj,hk is the sharing frequency of videos in ck between uj and uh; and fj,h is the frequency of video sharing between uj and uh. The larger the value of fj,hk/fj,h is, the closer the social relationship between uj and uh is.


## 4.2. Reduction of Response Delay

The users make use of the request and push to disseminate a new videovi. If vi has high popularity, the large number of users may request vi or accept the push of vi. In the process of users requesting vi, the supply users which have cached vi in local buffer receive the request messages and send video data to the request users. The request users receive video data, watch the video content and store the video into local buffer. At the moment, the video copies are generated by the sharing (diffusion) between users. When the number of request users fast increases, the video system needs to make use of the upload bandwidth of users which have cached the copies in networks to provide the video resources for the request users.Letλa and μa be the rate of request and handling, respectively. λa=Nr/Ta, where Nr is the number of generated request messages during the time span Ta; μa=Nh/Ta, where Nh is the number of handled request messages during the time span Ta. λa>μa during the same time span Ta means that the request of users cannot be met due to the deficient supply of requested videos. Because the supply users with limited handling capacities (e.g., low bandwidth, storage, and computation) cannot fast deal with the mass request messages in terms of “early come early service” principle, a large number of request users need to wait for handling request messages. Obviously, the deficient supply leads to the long wait delay. λa≤μa during the same time span Ta means that the request of users can be met due to the sufficient supply of requested videos. The supply users have low handling capacities, but the sufficient number of supply users enables the request messages be uniformly distributed to the supply users. The request messages can be handled in time, and the wait delay of request users can be reduced.If a useruj∈ussk has cached and watched a video vi, uj has lost the interest for vi. In order to save the storage space and promote the utilization of storage resources, uj replaces videos in local buffer. Before uj removes videos in local buffer, uj needs to estimate the influence for intra-ussk supply capacity of vi. We assume that the request messages generated by users of ussk arriving intra-ussk providers of vi meet the M/G/1 queuing model. The serving capacity Tuj of uj can be obtained in terms of our previous work [36]. In fact, Tuj denotes that the sum of time of handling request message and time of delivering video data. The average serving capacity of users in ussk can be defined as(9)T¯ks=∑i=1mTuim,where m is the number of users which have cached vi in ussk. Let g be the number of request messages generated by intra-ussk users during a future time span ta. The value of g can be calculated according to the following equation:(10)g=ussk−Nkl−Nku,where ussk is the number of all users in ussk; Nkl is the number of users which have watched vi and lose the interest for vi; Nku is the total number of users which are uninterested in vi and users which have the low interest (Ivi<IT), where IT is the threshold value of interest; Ivi≥IT denotes that users are interested in vi; and Ivi<IT denotes that users are uninterested in vi. Let h be the number of users which have cached vi during ta. g≤h denotes that the supply of vi in ussk meets the demand for request of vi, so that the wait delay is 0; if g>h, the average wait delay can be defined as(11)T¯kd=g−hh×T¯ks.When the supply ofvi in ussk cannot meet the demand for request of vi, uj makes the decision of replacement of vi according to the relationship between request and supply of vi after the generation of new copies of vi.


## 4.3. Motivation of Near-End Sharing

The delivery quality of video data relies on transmission path of video data. As we know, the transmission delay is the sum of forwarding delay of relay nodes. If the transmission path has the large number of relay nodes, the transmission delay may be high; if the number of relay nodes in transmission path is less or is 0 (the relationship between requesters and providers of videos is one-hop neighbor), the transmission delay is low or is 0. Moreover, if the transmission path has multiple relay nodes which have high mobility, the dynamic change of geographic location of relay nodes leads to the dynamic variation of transmission path. The variation of transmission path further results in the increase of packet loss and rise of forwarding delay.In order to promote the transmission performance of video data and user quality of experience, the data transmission between one-hop neighbor nodes should be accelerated. Letg denote the number of users which have the interest for vi in ussk (Ivi≥IT) during a future time span ta. The probability of uj and uh becoming one-hop neighbors in g users during ta is defined as(12)Pj,he=fj,hfj,where fj,h is encounter frequency between uj and uh during ta and fj is the total encounter frequency between uj and other users in ussk during ta. If uj has cached vi, the probability of uh requesting vi to uj during the encounter period time of uj and uh is defined as(13)Pj,hr=Pj,he×Ihvi.The probability ofuj pushing vi to uh during the encounter period time of uj and uh is defined as(14)Pj,hp=Pj,he×Pj,hvi.


## 4.4. Video Caching Management Strategy

The video sharing in edge networks can offload the traffic to reduce the load of core networks, which reduces the risk of network congestion. By optimizing distribution of video resources, the video resources can be efficiently allocated in edge networks and promote the utilization efficiency of storage resources. The adjustment of video distribution relies on the demand of video requesters. The performance of video sharing directly reflects the game relationship between supply and demand. The management of video caching is the main tool of adjustment of video distribution. The management of cached videos in local buffer has the important influence for the user quality of experience in terms of the three perspectives of promotion of video sharing scale, reduction of response delay, and motivation of near-end sharing. The management of cached videos based on the performance awareness of video sharing is an efficient method for the effort of distribution optimization and video sharing. We design a video caching management strategy based on the performance awareness of video sharing for a useruj in ussk.uj has watched vi and has cached vi in local buffer. Let λi and μi be rate of request and handling in ussk, respectively. λik>μik denotes that the number of users which store vi is less than the number of requesting vi in ussk, so that uj does not remove vi in local buffer. At the moment, uj estimates the dissemination scale of vi in ussk to make the decision of video pushing. uj can be aware of the users in ussk which are interested in vi according to equation (10). uj divides the g users into the two subsets: sg1=ua,ub,…,up, where each item uc in sg1 has Icvi>Pj,cvi and has more willing to make an active request than accepting pushing of vi from uj; sg2=ud,uf,…,uq, where each item uh in sg2 has Pj,hvi>Ihvi and has higher probabilities of accepting pushing of vi from uj than those of active request. uj preferentially pushes vi to items in sg2, which can promote supply capacities in ussk by pushing vi with high acceptation probability. uj needs to select a user in sg2 which has high acceptation probability and low delivery delay according to the following equation:(15)δj,h=Pj,hp×T¯kdTj,h,where Tj,h is the predicted delivery time based on pushing from uj to uh. The parameters in Tj,h (e.g., packet loss rate and transmission delay) can be obtained by sending detection messages to estimate communication quality of transmission path during a small time slot. A user ub has the largest value of δ among all items in sg2; a user uc has the largest value of χj,c=Pj,hvi×T¯kd/Tj,c among all items in sg2. If δj,h>χj,c, uj sends data of vi to ub in order to generate copies; otherwise, if δj,h≤χj,c, uj sends data of vi to uc. After uj has delivered vi, uj makes the decision of caching vi in terms of the relationship between λik and μik.Ifλik≤μik, ussk has enough supply capacity relative to request scale. Let g denote the number of users which are interested in vi; let q denote the number of users in ussk which store vi. If g≤q, uj can remove vi in local buffer after uj informs users which store vi by sending messages; if g>q, uj estimates the number of users whose state transition from “interested” to “requested” by the following equation:(16)θki=∑c=1tskNcr/Ncitsk,where tsk is a set of time slots; tsk is the number of time slots in tsk; Ncr and Nci are the number of users which request vi and are interested in vi during each time slot tc in tsk, respectively; Ncr/Nci denotes the transition ratio from “interested” to “requested;” and θki denotes the average value of transition ratio from “interested” to “requested” during tsk. If θki×g>q, uj needs to continuously store vi in local buffer; if θki×g≤q, uj can remove vi in local buffer.


## 5. Testing and Test Result Analysis

### 5.1. Testing Topology and Scenarios

We conduct numerous simulation tests to compare the performance of SECS with current widely used caching policy random caching (with probability equal to 0.5) and state-of-the-art solution OCP [37], based on NS-3. The parameter settings are given as follows: a square scenario with 6000×6000m2 area is implemented, and 500 mobile nodes move in the scenario according to the random way point model. In this model, mobile node first randomly selects a point as the destination by uniform distribution and then determines a velocity and begins to move to the chosen point. After reaching this point, the node repeats the above destination and velocity selection process and begins to move again. The velocity of mobile nodes ranges from 10 m/s to 40 m/s. We reset the physical and MAC layer and modulation schemes of network units according to the 5G industrial standardization.For evaluating the caching performance, we consider the videos as the transmission data. This is because video service is the driven force behind the current rapid growth of network traffic and the key applications of edge caching. In our simulation, 40 different videos are introduced and shared among the mobile users. The playback bitrate of the video is 2000kbps and time length of a video is 120 s. We further divide each video into 60 small chunks which is 2 s long and with the size of 500 KB. The size of caching space at each mobile node is set 20 to 40 chunks. We further describe the distribution of request behaviors of mobile users at video-level by Zipf distribution [38]. Namely, given a video set of N videos, the probability of the r-th most popular video being requested by users can be given by [39, 40](17)Pr=∑k=1N1/kα−1rα,where α is the Zipf parameter and set to 0.8. For the chunk-level request behaviors, after determining the video to watch, the user sequentially request the chunks of this video for the continuous playback. To implement the OCP caching policy, we uniformly deploy 25 base stations as the coordinators and source video suppliers in OCP.


### 5.2. Performance Evaluation

We compare the performance of SECS with OCP and random cache in terms of the caching hit ratio, caching cost, response delay, and control overhead, respectively.Caching hit ratio (CHR): in edge caching, if one node receives a video request whose corresponding chunk is in local cache, then we consider it is a cache hit event; otherwise, it is a cache miss. We define the cache hit ratio as the average ratio between the number of the cache hit events and total number of issued requests (the sum of cache hit and miss events). A higher caching hit ratio indicates that more requests are satisfied by the nearby mobile nodes, namely, a better edge caching utilization and shorter transmission distance. In contrast, a lower caching hit ratio means the edge caching is not fully utilized and mobile users may still have to access the video from far end. Figures2 and 3 show the CHR of the three solutions with the varying of simulation time, when the size of caching space is 20 and 40 chunks, respectively. We observe that SECS achieves the highest CHR among three solutions. In both figures, we observe that the SECS and OCP first experience an increasing trend and then enter a stable phase when 200 s. The random cache first reaches the highest CHR before 100 s and then slightly decreases. The reason for random cache’s decreasing is large number of requests also results in a frequent cache miss and caching replacement, which significantly decrease the caching utilization. After entering the stable phase, the CHR of SECS is about 8% (5%) and (61%) higher than that of OCP and random cache when caching space is 20 (40), respectively.Figure 2
Caching hit ratio against simulation time when caching space is 20.Figure 3
Caching hit ratio against simulation time when caching space is 40.OCP and SECS having better performance than random cache is mainly because these two solutions investigate the users’ demand and supplies to achieve higher caching utilization; yet, random cache only simply sets a probability to cache the content which cannot maintain the balance between video demand and supply. Instead of setting a same caching time threshold for all mobile nodes as in OCP, SECS considers the sharing capacity of each mobile users to achieve the flexible management on caching space. With such design, SECS can provide more accurate cache placement and thereby a higher CHR. Besides, SECS also replace the content in cache according to the sharing capacity which further improves the cache utilization.Caching cost (CC): we define the total number of caching events during the simulation as CC. Figures4 and 5 show the CC of three solutions with the caching space 20 and 40, respectively. Higher CC means that the caching strategies may consume more storage or energy resource on performing the caching operation, which may harm the system sustainability. In figures, all curves reveal a linear increase trend due to the continuous caching operations during the simulation. Comparing the two figures, we observe that all solutions with caching space 40 has lower CC when comparing with caching space 20. This is because a larger caching space can avoid the unnecessary caching replacement, which in turns reduces the caching cost. In both figures, SECS achieves the lowest CC among three solutions. For example, when caching space is 20, SECS is 8% and 17% lower than OCP and random cache when 400 s, respectively. SECS’s advantage is expended when caching space reaches 40, which is 13% and 19% lower than OCP and SEC when 400 s, respectively.Figure 4
Caching cost against simulation time when caching space is 20.Figure 5
Caching cost against simulation time when caching space is 40.SECS has the lowest CC mainly because the caching decision making based on sharing capacity provides more accurate caching placement, which avoid frequent caching eviction and replacement. Hence, SECS can significantly reduce the CC. OCP formulates the caching optimization problem by jointly considering the caching cost and system load, which reduces the unnecessary caching operations and thereby achieves lower CC than that of random cache. However, OCP overlooks the caching replacement and simple uses the LRU caching replacement policy, which yields to a higher CC than SECS.Response delay (RD): we define the response delay as the latency between mobile users sending out request and receiving the first packet of requested content. Low RD indicates that mobile users can access video content from nearby users and also a higher QoE due to the low start up delay on video playback. Figures6 and 7 show the response delay of three solutions when the caching space is 20 and 40, respectively. In both figures, the curves corresponding to all solutions first reveals a fast growing trend before 300 s and then maintains relatively stable. This is because, with more and more users beginning to request video, one mobile node may need to simultaneously serve several users which increases the response delay. After 300 s, due to the number of users that joining equals the number of users quitting the system, the system load and response delay remain stable. Comparing the two figures, we also find that higher caching space can provide better response delay, since larger caching space achieves a higher cache hit ratio, which thereby increases the probability of accessing content from a nearby mobile node. When in stable phase, SECS achieves the lowest RD among three solutions both in the condition of caching spaces 20 and 40. Especially, when caching space is 40, SECS is 11% and 24% lower than OCP and random cache, respectively.Figure 6
Response delay against simulation time when caching space is 20.Figure 7
Response delay against simulation time when caching space is 40.According to Figures2 and 3, SECS has the highest caching hit ratio, namely, most of video requests can be responded by the mobile nodes nearby the users and hence reduces the response delay. Similarly, OCP achieves the lower RD than random cache because of the similar reason. Random cache policy randomly decide the caching content according to a pregiven fixed probability, whose caching hit ratio can be not guaranteed. Frequent caching miss not only forces the users to access content from distance but also results frequent caching replacement, which further reduce the cache hit ratio. Therefore, random cache performs the worst in terms of the response delay.Control overhead (CO): in the simulation, we calculate the CO by the averaged bandwidth occupied by delivering the control message of making caching decision. In our SECS, the CO is mainly generated by the information about sharing capacity and interest domain. In OCP, the CO mainly relies on the exchange frequency of mobile node state list and caching decision broadcasting message. In random cache, because each mobile node performs the caching operation based on a fixed probability, there is no control message to exchange. In Figure8, the curve corresponding to SECS is relatively lower than that of OCP. The main reason is the OCP requires exchange state list which is large in size and more frequent message exchange for accurate predicting the demand variation of the whole system. Although random cache has no CO, this comes at the cost in terms of sacrificing the caching performance including caching hit ratio, caching cost, and response delay.Figure 8
Control overhead against simulation time.


## 5.1. Testing Topology and Scenarios

We conduct numerous simulation tests to compare the performance of SECS with current widely used caching policy random caching (with probability equal to 0.5) and state-of-the-art solution OCP [37], based on NS-3. The parameter settings are given as follows: a square scenario with 6000×6000m2 area is implemented, and 500 mobile nodes move in the scenario according to the random way point model. In this model, mobile node first randomly selects a point as the destination by uniform distribution and then determines a velocity and begins to move to the chosen point. After reaching this point, the node repeats the above destination and velocity selection process and begins to move again. The velocity of mobile nodes ranges from 10 m/s to 40 m/s. We reset the physical and MAC layer and modulation schemes of network units according to the 5G industrial standardization.For evaluating the caching performance, we consider the videos as the transmission data. This is because video service is the driven force behind the current rapid growth of network traffic and the key applications of edge caching. In our simulation, 40 different videos are introduced and shared among the mobile users. The playback bitrate of the video is 2000kbps and time length of a video is 120 s. We further divide each video into 60 small chunks which is 2 s long and with the size of 500 KB. The size of caching space at each mobile node is set 20 to 40 chunks. We further describe the distribution of request behaviors of mobile users at video-level by Zipf distribution [38]. Namely, given a video set of N videos, the probability of the r-th most popular video being requested by users can be given by [39, 40](17)Pr=∑k=1N1/kα−1rα,where α is the Zipf parameter and set to 0.8. For the chunk-level request behaviors, after determining the video to watch, the user sequentially request the chunks of this video for the continuous playback. To implement the OCP caching policy, we uniformly deploy 25 base stations as the coordinators and source video suppliers in OCP.


## 5.2. Performance Evaluation

We compare the performance of SECS with OCP and random cache in terms of the caching hit ratio, caching cost, response delay, and control overhead, respectively.Caching hit ratio (CHR): in edge caching, if one node receives a video request whose corresponding chunk is in local cache, then we consider it is a cache hit event; otherwise, it is a cache miss. We define the cache hit ratio as the average ratio between the number of the cache hit events and total number of issued requests (the sum of cache hit and miss events). A higher caching hit ratio indicates that more requests are satisfied by the nearby mobile nodes, namely, a better edge caching utilization and shorter transmission distance. In contrast, a lower caching hit ratio means the edge caching is not fully utilized and mobile users may still have to access the video from far end. Figures2 and 3 show the CHR of the three solutions with the varying of simulation time, when the size of caching space is 20 and 40 chunks, respectively. We observe that SECS achieves the highest CHR among three solutions. In both figures, we observe that the SECS and OCP first experience an increasing trend and then enter a stable phase when 200 s. The random cache first reaches the highest CHR before 100 s and then slightly decreases. The reason for random cache’s decreasing is large number of requests also results in a frequent cache miss and caching replacement, which significantly decrease the caching utilization. After entering the stable phase, the CHR of SECS is about 8% (5%) and (61%) higher than that of OCP and random cache when caching space is 20 (40), respectively.Figure 2
Caching hit ratio against simulation time when caching space is 20.Figure 3
Caching hit ratio against simulation time when caching space is 40.OCP and SECS having better performance than random cache is mainly because these two solutions investigate the users’ demand and supplies to achieve higher caching utilization; yet, random cache only simply sets a probability to cache the content which cannot maintain the balance between video demand and supply. Instead of setting a same caching time threshold for all mobile nodes as in OCP, SECS considers the sharing capacity of each mobile users to achieve the flexible management on caching space. With such design, SECS can provide more accurate cache placement and thereby a higher CHR. Besides, SECS also replace the content in cache according to the sharing capacity which further improves the cache utilization.Caching cost (CC): we define the total number of caching events during the simulation as CC. Figures4 and 5 show the CC of three solutions with the caching space 20 and 40, respectively. Higher CC means that the caching strategies may consume more storage or energy resource on performing the caching operation, which may harm the system sustainability. In figures, all curves reveal a linear increase trend due to the continuous caching operations during the simulation. Comparing the two figures, we observe that all solutions with caching space 40 has lower CC when comparing with caching space 20. This is because a larger caching space can avoid the unnecessary caching replacement, which in turns reduces the caching cost. In both figures, SECS achieves the lowest CC among three solutions. For example, when caching space is 20, SECS is 8% and 17% lower than OCP and random cache when 400 s, respectively. SECS’s advantage is expended when caching space reaches 40, which is 13% and 19% lower than OCP and SEC when 400 s, respectively.Figure 4
Caching cost against simulation time when caching space is 20.Figure 5
Caching cost against simulation time when caching space is 40.SECS has the lowest CC mainly because the caching decision making based on sharing capacity provides more accurate caching placement, which avoid frequent caching eviction and replacement. Hence, SECS can significantly reduce the CC. OCP formulates the caching optimization problem by jointly considering the caching cost and system load, which reduces the unnecessary caching operations and thereby achieves lower CC than that of random cache. However, OCP overlooks the caching replacement and simple uses the LRU caching replacement policy, which yields to a higher CC than SECS.Response delay (RD): we define the response delay as the latency between mobile users sending out request and receiving the first packet of requested content. Low RD indicates that mobile users can access video content from nearby users and also a higher QoE due to the low start up delay on video playback. Figures6 and 7 show the response delay of three solutions when the caching space is 20 and 40, respectively. In both figures, the curves corresponding to all solutions first reveals a fast growing trend before 300 s and then maintains relatively stable. This is because, with more and more users beginning to request video, one mobile node may need to simultaneously serve several users which increases the response delay. After 300 s, due to the number of users that joining equals the number of users quitting the system, the system load and response delay remain stable. Comparing the two figures, we also find that higher caching space can provide better response delay, since larger caching space achieves a higher cache hit ratio, which thereby increases the probability of accessing content from a nearby mobile node. When in stable phase, SECS achieves the lowest RD among three solutions both in the condition of caching spaces 20 and 40. Especially, when caching space is 40, SECS is 11% and 24% lower than OCP and random cache, respectively.Figure 6
Response delay against simulation time when caching space is 20.Figure 7
Response delay against simulation time when caching space is 40.According to Figures2 and 3, SECS has the highest caching hit ratio, namely, most of video requests can be responded by the mobile nodes nearby the users and hence reduces the response delay. Similarly, OCP achieves the lower RD than random cache because of the similar reason. Random cache policy randomly decide the caching content according to a pregiven fixed probability, whose caching hit ratio can be not guaranteed. Frequent caching miss not only forces the users to access content from distance but also results frequent caching replacement, which further reduce the cache hit ratio. Therefore, random cache performs the worst in terms of the response delay.Control overhead (CO): in the simulation, we calculate the CO by the averaged bandwidth occupied by delivering the control message of making caching decision. In our SECS, the CO is mainly generated by the information about sharing capacity and interest domain. In OCP, the CO mainly relies on the exchange frequency of mobile node state list and caching decision broadcasting message. In random cache, because each mobile node performs the caching operation based on a fixed probability, there is no control message to exchange. In Figure8, the curve corresponding to SECS is relatively lower than that of OCP. The main reason is the OCP requires exchange state list which is large in size and more frequent message exchange for accurate predicting the demand variation of the whole system. Although random cache has no CO, this comes at the cost in terms of sacrificing the caching performance including caching hit ratio, caching cost, and response delay.Figure 8
Control overhead against simulation time.


## 6. Conclusion

In this paper, we propose a novel Social-aware Edge Caching Strategy of Video Resources in 5G Ultra-Dense Network (SECS). SECS employs the Spectral Clustering to generate initial video clusters and makes use of the Fuzzy C-Means (FCM) to refine the initial video clusters. The refined video clusters are denoted as the interest domain of users. SECS further makes use of estimating similarity levels of interest domain to cluster the users with common and similar interests into the same groups. By estimating influence for the intragroup sharing performance, SECS designs a performance-aware video caching strategy, which enables the users intelligently implements caching and removing of local video resources to continually optimize video distribution and effectively supports video traffic edge offloading. Extensive tests show how SECS achieves better results in comparison with other state-of-the-art solution OCP in terms of caching hit ratio, caching cost, response delay, and control overhead.



---

*Source: 6625629-2021-04-02.xml*