Abstract

The video sharing performance is a key factor for scalability and quality of service of P2P VoD systems in wireless mobile networks. There are some impact factors for the video sharing performance, such as available upload bandwidth, resource distribution in overlay networks, and mobility of mobile nodes. In this paper, we firstly model user behaviors: joining, playback, and departure for the content-oriented community-based VoD systems in wireless mobile networks and construct a resource assignment model by the analysis of transition of node state: suspend, wait, and playback. We analyze the influence of the above three factors: upload bandwidth, startup delay, and resource distribution for the sharing performance and QoS of systems. We further propose the improved resource sharing strategies from the perspectives of community architecture, resource distribution, and data transmission for the systems. Extensive tests show how the improved strategies achieve much better performance results in comparison with original strategies.

1. Introduction

The development of mobile networking technologies and the increase of wireless bandwidth provide great convenience for the ubiquitous Internet access of mobile devices to obtain multimedia services [1, 2]. As Figure 1 shows, the mobile users use the smart devices equipped with multiple network interfaces (e.g., smart phones and tablet PC) to watch video content in wireless mobile networks. Video streaming is the most popular multimedia service due to the provision of rich visual content and the contribution of two-thirds of mobile data traffic in the whole world [38]. Video-on-Demand (VoD) supports the interaction between viewers and content; namely, the viewers change the playback point to accessing desired video content. Peer-to-Peer (P2P) technologies are well known for supporting the large-scale deployment of multimedia streaming (e.g., VoD) systems by the compensation of upload bandwidth for the multimedia server with the help of the clients. In particular, Mobile Peer-to-Peer (MP2P) technologies provide the feasible solutions for the deployment in wireless mobile networks, which improves travel of passengers in train or taxi.

The P2P VoD systems in wireless mobile networks focus on quality of service (QoS) and viewers’ quality of experience (QoE) [9]. VCR-like interactive operations lead to the frequent change of playback content, which drives the nodes to seek and match suppliers carrying requested video resources. Due to the delay-sensitivity requirement, the systems need to increase control cost of scheduling resources to minimize the startup delay, which influences system scalability. On the other hand, the variation of played content results in the frequent replacement of cached resources. The dynamic resource distribution not only increases resource management cost in overlay networks but also changes supply capacities of resources. For instance, the total upload bandwidth of a video segment changes with the variation of number of nodes stored the segment. The sufficient/scarce upload bandwidth decreases/increases the startup delay. Moreover, the mobility of mobile nodes also is an important factor for the video delivery performance in wireless mobile networks [10]. The dynamic distance between suppliers and requesters leads to the increase in the risk of link disconnection and packet loss [11]. Obviously, the three factors are very important for the resource sharing performance of systems and viewers’ QoE.

It is difficult to address the problems of the above three factors to ensure system’s QoS and viewers’ QoE for the traditional P2P VoD solutions. The mesh overlay-based solutions employ the “flooding” resource lookup approach to achieve high resource lookup success rate and system scalability, but the large seeking range also results in long startup delay. The tree-based and DHT-based solutions group nodes and manage resources according to predefined relationship between nodes. The systems obtain the gains of resource lookup performance, but the increase in the scale of nodes results in high maintenance cost and low system scalability.

Unlike the traditional solutions, the community-based solutions rely on the discovery of common interest to group nodes into multiple communities with different scale [12]. Because the common interest stabilizes the relationship of supply and demand of resources between members and reduces the lookup distance between requesters and suppliers, the communities have autonomous and flexible structure, high-efficiency content sharing, and low lookup delay. The difference between interests of members enables the communities to have distinct boundary of resource search and management. In terms of community construction methods, the existing community-based VoD systems mainly include two categories: the content-oriented and user behavior-oriented community VoD systems. The former groups nodes into communities based on the consideration that the nodes which request or store the same or similar content may have common interest, such as SURFNet [13] and AMCV [14], which has simply community construction method and complex video sharing algorithms. The latter constructs the communities in terms of the similarity of user behaviors by the investigation of watched, prefetched, and concerned content, such as SocialTube [15] and PMCV [16], which has complex community construction method and simple video sharing strategies.

The content-oriented community VoD systems have convenient and flexible deployment in wireless mobile networks and achieve high scalability and QoS of systems with a low price by improving sharing strategies. In this paper, we focus on the performance evaluation of content-oriented community-based VoD systems. We construct a model for the user behaviors in terms of the process: entering system, playing video, and quitting system and model the resource assignment process in terms of node state variation: suspend, wait, and playback for the resource assignment. By the analysis of the sharing performance influenced by the three factors: available upload bandwidth, resource distribution in overlay networks, and mobility of mobile nodes, we improve the community architecture, which enables the community members to participate in handling request messages and assigning available resources. Moreover, we design a priority-based service strategy of the request nodes to promote the resource distribution optimization by the estimation of contributed upload bandwidth. Extensive tests show how the improved strategies achieve much better performance results in comparison with original strategies.

The traditional P2P VoD solutions in wired networks focus on improving QoS and scalability of systems and supporting the VCR-like operations. For instance, in VMesh [17], the nodes and video resources are mapped into a one-dimensional structure in terms of Distributed Hash Tables (DHT), which achieves fast resource lookup. RINDY in [18] also constructs a ring-assisted overlay network to group nodes and manage resources. The nodes not only maintain the state of near neighbors where the distance between them is less than the power-law radii but also obtain real-time state of remote neighbors which have the more distance than the radii. However, VMesh and RINDY do not address the problems of scalability; namely, the increasing number of nodes in structured overlay networks leads to the high maintenance cost of P2P network.

Some P2P VoD solutions in wireless mobile networks employ the traditional architecture to group nodes and distribute the resources in order to provide the VoD service for the mobile users. For instance, in QUVoD [19], the mobile nodes are grouped into a Chord structure where the nodes which store similar video segments form a node set in order to uniformly distribute resources and reduce the lookup in Chord. However, QUVoD also does not address the problem of system scalability due to the high maintenance cost caused by the increase in the number of nodes. By the estimation of access probabilities between videos in terms of the similarity of video content and user playback behaviors, ESVS clusters videos into a chain-based tree structure and groups mobile nodes into node sets corresponding to the videos in the chain-based tree [20]. ESVS designs a hybrid resource lookup algorithm to fast respond to the user request and push the interested content for the requesters. Although ESVS can improve the sharing efficiency and reduce the consumption of network bandwidth, the increase in the number of video content results in frequent reconstruction of tree.

The user behavior-oriented community-based VoD solutions have complex community construction method and high-efficiency content sharing. For instance, SocialTube built the communities composed of the nodes with similar interests according to the intersection of watched videos between source nodes and followers [15]. The community members employ push and pull to the video content to promote the resource sharing. However, the similarity estimation method based on the number of watched videos difficultly ensures the evaluation accuracy of common interests. This leads to low efficiency of resource push and fragile community structure. PMCV extracts and refines playback patterns from historical playback traces and model mobility to estimate the similarity of movement behaviors of mobile nodes [16]. PMCV groups the mobile nodes into mobile communities in terms of the similarity levels of behaviors of playback and movement, which achieves high stability of community structure and efficient video delivery. The construction methods of communities determine the QoS and scalability of user behavior-oriented community-based VoD systems.

The content-oriented community-based VoD solutions have simple community construction method and low-cost and convenient deployment. For instance, SURFNet in [13] makes use of a hybrid tree structure to reduce the reconstruction of tree-based overlay network, where the nodes in AVL tree have long online time and contact a node community (chain) composed of the nodes which have relatively short online time and similar video segments with the stable nodes. The nodes with similar segments form a holder-chain and are attached to a node in the AVL tree corresponding to the stored content. Although the chain attached in the AVL tree supports the lookup for the near video segments and reduces the maintenance cost of AVL tree, the churn of node state results in the severe influence for the performance of resource lookup and the cost of tree maintenance. In other words, the changes of stable node state (e.g., quitting system or decrease in the online time) lead to the reconstruction of AVL tree, and the nodes in attached chain lose the contact with the AVL tree, which cannot reduce the negative effects caused by the node churn for the tree structure. AMCV in [14] groups the nodes which have the same requested video segments into a community and uses an ant colony optimization-based community communication strategy which dynamically builds the connections between communities in terms of the variation of node interest in order to support fast resource lookup. Making use of the prediction for the resource demand of users to build the connections between communities can reduce the start delay for the resource lookup. The broker nodes in the communities are responsible for maintaining community member state and handling the request messages from internal or external members. The increase in the number of community members leads to the overload of broker nodes, which limits system’s scalability. Although the content-oriented communities have explicit boundary to manage and share resource, the node churn still results in the high maintenance cost for the community structure due to the frequent reconstruction. Moreover, the size of video segments determines the corresponding community scale, so the division of video segments introduces the severe influence for the maintenance cost and content sharing performance.

The performance estimation for the multimedia streaming services is very important in order to improve the system QoS and content sharing performance. Chen et al. build a model and estimate the performance for the P2P living streaming systems under flash crowd [21]. By making use of a fluid model to model the P2P living streaming systems, the authors study the system capacity, peer startup latency, and system recovery time of systems for the control and noncontrol modes and demonstrate that a living streaming system difficultly handles flash crowds due to limited capacity. The authors use the shock level handled by the system to quantify the system capacity, describe that the capacity is independent of system initial state in a power-law relationship, and construct the mathematical relationship of flash crowd size to the worst-case startup latency and system recovery time. The authors prove that the control-based system can recover stability under flash crowds and the worst-case peer startup latency and system recovery time increase logarithmically. The proposed strategies of handling flash crowd reduce startup. Because there are many reasons which lead to the interaction between users and content and the P2P VoD systems have complex architecture, the above method is unsuitable for the performance modelling and evaluation of P2P VoD systems (e.g., the content-oriented community-based VoD systems).

3. Background

3.1. Node State Ring

This paper mainly focuses on the performance evaluation of the content-oriented community-based VoD system, so we consider a state of the art solution AMCV as the object of analysis and estimation of performance. This is because AMCV has similar system architecture and content sharing strategies with other classical content-oriented community-based VoD solutions such as SPOON [22].

3.1.1. Joining System

In AMCV, the mobile nodes need to send the messages containing the information of requested video to the server in order to watch video content. After the server receives the request messages, it assigns the upload bandwidth for the request nodes. The server seeks the appropriate suppliers in overlay networks according to a node list which is stored in the server and includes the information of nodes in overlay networks. The selected suppliers need to have the close playback point with that of request nodes. At the moment, the request nodes wait for receiving the video data. When the new system members receive the video data from the suppliers, their state changes from wait state to playback state and they become system members. If the server cannot find the appropriate candidate suppliers, it directly transmits video data to the request nodes. The detailed process of joining system is described in [14].

3.1.2. Playback

When the system members change the playback point in order to watch new content, they search new suppliers which store requested video by sending the request messages and change state from playback to wait. When these system members receive the requested video data, they also enter to playback state from wait state. When the nodes perform the pause operation, they are the pause state and return the playback state by the execution of playback operation. At the moment, the nodes with pause state break the connection with their suppliers and search for new suppliers when they continue to watch video. Moreover, the iteration in the playback state and the change from playback to quitting system are random in terms of user interests for the watched content, which is the main reason of node churn.

3.1.3. Quitting System

When the system members have watched the whole video or lose interest for the content, they quit current system; namely, their state changes from playback to quitting system. In fact, the members which have quit the system not only stop to receive video data and disconnect with the suppliers but also empty the playback and static buffer and remove the registered information in the system (e.g., node list at the server side and connection with other nodes in overlay networks).

3.2. Influence Factor

There are some influence factors for the performance of P2P VoD systems in wireless mobile networks, as follows.

3.2.1. Resource Distribution in Overlay Networks

The supply of video segments in overlay networks is an important factor for improving system scalability. In the other words, the request nodes search the desired resources from overlay networks, which reduces the load of the server. If there are no available resources in overlay networks, the server has to provide the initial streaming data for the request nodes, which brings severely negative influence for the system scalability and the startup delay. On the other hand, the popular content always attracts the large number of users, so that there is much redundancy cached content in overlay networks, which leads to unbalanced distribution of video segments and wastes storage space of mobile nodes. For instance, a popular video segment is stored in the buffer of many nodes, which results in the supply shortness of other segments due to the limited storage capacity of mobile nodes. The request nodes need to wait for the video data from the server, which brings long startup delay. The uniform distribution of video segments in overlay networks is a very important factor for the system scalability [23]. Further, the appropriate redundancy content in overlay networks helps the systems to address the problems caused by the large-scale access for the same video segment. For instance, the large number of nodes requests the same content during a certain period of time, which requires more available resources to meet the demand of access. Once the access demand is not met, the request nodes need to bear the long startup delay. The redundancy content relieve the burden for the large-scale resource demand.

3.2.2. Available Upload Bandwidth

Making use of residual upload bandwidth of clients to deliver the video segments for other request nodes is the most important factor for supporting the large-scale scalable deployment of P2P VoD systems. The abundant system upload bandwidth can reduce the waiting delay of the request nodes. However, there are some influence factors for the provision of system upload bandwidth. For instance, the limited bandwidth resource of mobile nodes difficultly meets the demand of huge bandwidth. The mobile nodes have lower capacity than that of fixed nodes (e.g., access point, server, and PC), so the limited capacity of mobile nodes cannot support the large-scale resource supply. The high QoE of users such as high-definition video requires more bandwidth to meet the demand for the visual effect, which further increases the load for the provision of system upload bandwidth. In order to improve resource sharing efficiency, the community members need to maintain each other’s state. Although the autonomous maintenance strategies may reduce the maintenance cost, the increase in the number of community members still consumes the large number of upload bandwidths at the mobile node side. Moreover, the change of playback point of community members brings a mass of request messages. The resource search also consumes the bandwidth of relay nodes. The efficient utilization of bandwidth of mobile nodes is an important issue for the system scalability and user QoE.

3.2.3. Mobility of Mobile Nodes

The mobility of mobile nodes is an important factor for the QoS of systems and QoE of users [24]. In fact, the involvement of mobility mainly brings negative influence for the delivery performance of video content [25]. For instance, the streaming data can be offloaded between nodes with near geographical location in wired networks. However, even if the request nodes connect with the assigned suppliers which have near location in wireless mobile networks, the mobility of nodes results in the changes of geographical distance between requesters and suppliers. The variation of communication distance from one-hop to multihops not only brings long transmission delay but also increases the probability of connection break and packet loss and consumes more network bandwidth. Moreover, the fragile connection between requesters and suppliers introduces the new request messages; namely, the request nodes again search new suppliers in order to ensure the playback continuity. The community members preferentially share the content because they cache and request the same or similar content. Although the communities make use of the built logical connection between members to support fast search suppliers, the construction of logical connection in overlay networks does not ensure near geographical location. In other words, the delivery performance of video content between members relies on the real-time awareness of mobility between nodes and the switchover of suppliers, which also consume the large number of bandwidths of mobile nodes due to the exchange of messages containing location information. The low-cost location-aware method is a key issue for the efficiency of bandwidth utilization and QoE of users.

4. System Model

4.1. Model for Playback Behaviors of Node

For convenience, Notations section defines several notations which are used in this section and the following ones. The nodes which want to watch video content need to experience the three states in terms of node state ring. Figure 2(a) illustrates the node state variation in community-based multimedia system; Figure 2(b) shows the variation process of node state based on the playback behaviors. For instance, A member moves to target community from current community with playback state after it experiences the wait state and receives the video data. According to the playback behaviors, the mobile nodes do not request any video content, so they are the suspend state. The desire for the video content drives the mobile users to fetch streaming data from the systems by the exchange of the request/respond messages between requesters and suppliers (e.g., the media server and resource carriers in P2P networks). The mobile nodes firstly send the request messages to the media server in terms of the above analysis of node state. The latter selects the appropriate candidate suppliers from local node list for the former. At the moment, the mobile nodes become new system members and their state changes from suspend state to wait state. When the new system members receive the data and start to watch video content, they have joined the corresponding community and become new community members, and their state changes from wait state to playback state. The old community members have similar state transition process. If the community members want to watch other video segments, they need to send the request messages to the broker nodes in current communities. The latter forwards the request messages to the broker nodes in target communities according to static and dynamic connections between communities. The community members also need to wait for video data, so their state changes from playback to wait. When the community members obtain the video data, their state changes from wait to playback. If the community members perform the pause operation, they enter into the suspend state; if the community members with suspend state continue to play video, they return the playback state from suspend state. Moreover, if the community members lose the interests for the played content and quit system, they become the suspend state.

The nodes with suspend state do not introduce new traffic to increase the load of networks, but they may request video content at any time. The nodes with suspend state form a node set and denotes the number of items in at time . The number of nodes with wait state is an important factor for the measurement of QoS and handling capacity of systems. The more the number of nodes with wait state is, the longer the startup delay of nodes is. This is because the nodes with wait state need to wait for the assignment of suppliers and the reception of video data. is the set of nodes with wait state, namely, the number of nodes which have joined the system and are waiting for the assignment of upload bandwidth to play video. Let be the number of items in at time . is the set of nodes with playback state, namely, the number of nodes which have joined the system and are playing video. denotes the number of items in at time . The nodes which are interested in videos or have quit system or perform pause operation are the items in , so can be defined aswhere denotes the number of nodes whose state changes from wait to suspend at time ; denotes the number of nodes whose state changes from playback to suspend at time ; denotes the number of mobile nodes which do not join the system and are interested in videos at time . Even if the nodes which perform pause operation still are system members, they disconnect with the broker members and suppliers, so that the resources carried by them are unavailable. The increase in the number of nodes which are interested in videos or have quit system reduces the traffic load in networks and also results in the decrease in the number of available resources. We use (2) to describe the process of state change from playback and wait to suspend state:where denotes the departure rate of system; namely, the value of denotes loss rate of available resources (e.g., available video content and upload bandwidth) in system. and are the rate of quitting system for the nodes in and , respectively. The nodes which are interested in videos and the community members which request new video segments are the main source of items in . The number of nodes which change suspend state to wait state in and during a time span denotes the node arrival rate. The higher the arrival rate is, the larger the load of resource request handled by system is. The process of state change from playback and suspend to wait state is described by where and are the arrival rate, namely, the rate that the nodes move from and to . Equation (4) describes the process of state change from wait to playback state:where denotes the startup rate of nodes, namely, the rate that the nodes in move to . Equations (3) and (4) form a model for the P2P VoD system, which describes the variation process of node state among suspend, wait, and playback in the whole system. By the investigation for the model , we observe the evolutionary process of and and analyze the system performance such as startup delay and handling capacity. In fact, , , and are the main influence factors for the system performance. The high values of and mean that the system needs to handle the large number of request messages and assign enough resources to meet the demand of resource access. If the values of and keep always high levels, the system needs to increase the value of to improve the provision of upload bandwidth by speeding up the transformation rate from wait to playback.

4.2. Model for Community Resource Assignment

In order to further analyze the influence factors for the performance and QoS of system, we construct the second model to describe the variation process of resource assignment. In AMCV, the community construction relies on the integration for the nodes which request and play the same video segments. The broker member in any community corresponding to video segment is responsible for the management and assignment of resources and handling the request messages. The mobile nodes and the members in other communities may request . The arrival rate of is defined aswhere is the arrival rate of for ; and are the arrival rate from the mobile nodes and the members in other communities, respectively; is the departure rate for the new members with wait state in . There are some influence factors for . For instance, the higher the popularity of is, the larger the number of requested nodes is (e.g., highlight of video); if the content corresponding to is very important for the comprehension of story of the whole video content, also attracts the large-scale access (e.g., beginning and ending of video). The values of , , and can be obtained by the statistical information, namely, the ratio between number of nodes and time span. On the other hand, the supply rate of is defined aswhere is considered as the lose rate for available resource of and is further defined aswhere denotes the rate of removing for the nodes which store . The mobile nodes need to replace the content stored in buffer due to limited storage space, which results in the condition that the nodes which stay in the system remove and stop the supply of resources for the nodes with wait state. is the departure rate for the nodes which store , which denotes that the nodes which quit the system or perform pause operation change state from playback to suspend. The nodes which quit the system cannot provide the streaming service for the nodes with wait state. is the increase in rate of nodes which store and is further defined aswhere is the startup rate, namely, the conversion rate of node state from wait to playback for ; is supply rate of resources for the nodes which store . The higher the values of are, the more the number of available resources is. When the nodes which only finish startup download , they become supply nodes. The scale of available resource of influences the value of ; namely, the system needs to provide enough resources to improve the startup rate. Equation (6) can be redefined as

Equations (5) and (9) form a model for community resource assignment, which describes the variation process of node state for supply and demand of community resources. describes the relationship and evolution between requesters and suppliers and shows the key influence factors for the resource assignment, QoS, and sharing performance. We further analyze some important parameters in . The high QoS of system requires the minimization of startup delay. The startup delay is defined as where is the resource lookup delay, is the delay of waiting for the assignment of upload bandwidth and is the delay of downloading data to meet the demand of watching video. The topology structure of overlay networks and the resource lookup strategies determine the value of . The communities make use of the connections between broker members to achieve low lookup delay. The total upload bandwidth in communities and the demand of request nodes for the download bandwidth determine the value of . Let and be the total upload bandwidth in a community and the bandwidth demand of request nodes, respectively. If , . Otherwise, if , ; namely, the request nodes need to wait for the enough upload bandwidth to receive data and play video. If a part of request nodes with wait state quickly change to the playback state, they contribute their own upload bandwidth to serve other nodes with wait state. The low startup delay requires the supply rate and arrival rate needed to meet (10) in the condition of limited upload bandwidth:

In fact, the arrival and startup rate denote the increase in rate of demand and supply for the upload bandwidth during a period time. If the arrival rate is lower than the startup delay, the high startup rate can speed up the increase in the provision of upload bandwidth and reduce the wait delay of request nodes. Because the request nodes have been aware of the information of suppliers, the video delivery performance determines the value of . In order to achieve the minimization of startup delay, the transmission delay and packet loss rate (PLR) in the process of delivery should be kept at low levels [26]. Moreover, the performance of video delivery determines the value of and influences the system QoS. The low efficiency of video delivery such as high PLR and long transmission delay increases the startup delay, so the nodes with wait state occupy upload bandwidth of connected suppliers for a long time. The transmission strategies based on the awareness of path quality can efficiently reduce PLR and transmission delay. On the other hand, the mobility leads to the dynamic change of transmission path between suppliers and requesters with the dynamic change of geographical distance between mobile nodes. The dynamic change of transmission path leads to high PLR and link break, which increases the startup delay and reduces the startup rate [27]. We use the following equation to describe the relationship among assigned upload bandwidth, PLR, and startup time:where is the size of ; denotes PLR; is the assigned bandwidth; is the start time of downloading . If is a constant and is equal to the playback rate, the minimization of PLR can ensure high startup rate. The provision of sufficient bandwidth also reduce the startup delay, in particular, the concurrent multipath transmission makes use of the aggregation of bandwidth to achieve fast startup of request nodes. We analyze the influence of parameters in for the system QoS. If the arrival and departure rate meet the Poisson distribution (there is no flash crowd), the delivery performance of video becomes the key factor for decreasing startup delay and increasing upload bandwidth. Moreover, the optimization of resource distribution in overlay networks by cooperative resource caching in other communities also improves the provision of upload bandwidth. The model shows the influence of arrival and startup rate in the system for the system QoS except for the variation of node state. not only analyzes the influence of arrival and startup rate in a community for the system QoS but also shows the influence of resource distribution, upload bandwidth, and mobility for the relationship between arrival and startup rate from the two aspects: the relationship between supply and demand of resources and the system QoS. In fact, in terms of the above analysis results, and demonstrate that the distribution and delivery of resources are key factors for the performance and QoS of system.

According to the original simulation settings of AMCV, we make use of the simulation results of AMCV to analyze the influence factors in and for the system performance. In Figure 3, the AMCV curve corresponding to the number of nodes with wait state fast rises from  s to  s and quickly decreases from  s to  s. In Figure 4, the AMCV curve corresponding to the startup delay decreases from  s to  s, increases from  s to  s, and keeps the fall trend from  s to  s. Initially, after the mobile nodes join the system, they rely on the provision of video data from the server, so that the number of nodes with wait state keeps at low level. However, with increasing number of nodes in P2P networks request, the new system members and community members which change current playback point fetch the video content from the P2P networks. If the startup delay which is defined as the sum of the time of message exchange between requester and supplier and the transmission time of initial video data keeps at high level, the nodes with wait state stay in wait queue for a long time, which leads to the increase in the number of nodes in wait queue. The community members mainly make use of the prefetched content to reduce startup delay. However, the community members only share the resources stored in prefetched and played buffer; namely, the limited resource provision leads to the high startup delay (the out-streaming number at the server side denotes constrained resources). Obviously, the resource sharing performance of AMCV does not achieve the high handling capacity of system for the nodes in wait queue.

4.3. Improved Resource Sharing Strategies

In order to promote the resource sharing performance, we improve the resource sharing strategies in terms of the analysis of and . Figure 5 shows the improved resource sharing modes from the perspectives of both multiple community connections and service priority.

AMCV makes use of the static and dynamic connections to support the fast resource lookup. The broker members in communities bridge the requesters and suppliers. However, the limited capacities (e.g., computation, storage, bandwidth, and energy) of broker members difficultly handle the large-scale request. The high load of handling messages not only influences the system scalability, but also results in long handling delay. In fact, the prefetching is also a special lookup; namely, the nodes with playback state search watched content in the future, in order to ensure smooth playback. The nodes which perform prefetching are aware of the information of suppliers in communities corresponding to prefetched video segments; namely, they help the broker members in current communities to handle the request messages. For instance, is a member in community and connects with the supplier in community , with the help of the broker member in . records the information of content prefetched by . If the members in or other communities and the mobile nodes need to contact with the suppliers in , forwards the request messages to . The latter directly provides the video data for the requesters and helps the requesters to register in by forwarding the information of requesters to . In the other words, a community has multiple interfaces with other communities, which improves the resource lookup efficiency. This is because the broker members do not maintain the connections with all communities, and the connections maintained by the members cover the shortage for the awareness of available resources in other communities. Moreover, the members which act as community interfaces and make use of prefetched content participate in the assignment of resources, which improves the resource utilization (e.g., unoccupied upload bandwidth and prefetched video content). The pseudocode of the process of improved resource lookup is detailed in Algorithm 1.

() /   is broker member in community ; is available resource list in /
() receives request message sent by any node or broker members in other communities for video segment ;
() if   includes
() forwards the request to a member caching ;
() else   forwards request to maintained broker member having shortest distance with target community
() end if
() if  requester is member in
() record information of requester into ;
() end if

On the other hand, the utilization efficiency of upload bandwidth of community members is a key factor for the reduction of number of nodes with wait state. The member selfishness is an important influence factor for the available upload bandwidth except for the resource assignment strategies. Each member has a service priority function and the request message adds a field which contains the total amount of contributed upload bandwidth of requesters. The broker members determine the priority of handling request message according to the upload bandwidth of nodes in the request message queue; namely, . is the number of items in the message queue and is the weighted upload bandwidth of where is a weight value corresponding to video segment and is the real total amount of contributed upload bandwidth corresponding to . In fact, is a variable and is defined as , where and denote the total amount of available and needed upload bandwidth for at time , respectively, and is the number of video segments. denotes that has redundancy upload bandwidth; indicates that is a scarce resource. Obviously, The weight values of scarce resources are more than those of redundancy resources. The definition of contributed upload bandwidth can encourage the members to cache scarce resource, in order to balance supply and demand for the whole resource distribution. The suppliers also make use of to determine the priority of nodes in the wait queue of data transmission. Although the priority-based serving rule leads to the high wait delay for the new members, it promotes the balance between supply and demand for the available upload bandwidth in the whole P2P networks, which improves the handling capacities of system and reduces the average startup delay of all nodes. Further, we use a periodical estimation method of transmission path quality to improve the delivery capacities according to our previous work [20], which also reduces the startup delay and improves the resource sharing performance.

5. Testing and Test Results Analysis

5.1. Testing Topology and Scenarios

We compare the performance of the improved solution (IAMCV) with the original AMCV [14]. Table 1 shows some simulation parameters of the wireless mobile network for IAMCV and AMCV. The number of video segments is 20 and the length of each segment is 30 s. The number of mobile nodes is 400 in the wireless mobile network. We created 200 user viewing logs in terms of the interactive behaviors. The 200 mobile nodes join the system following the Poisson distribution from 0 s to 420 s and play video content following created 200 logs. The mobile nodes move according to randomly assigned location, speed, and moving target. The mobile nodes continue to move according to reassigned target location and speed after they arrive at the originally assigned target. The default distance between server and nodes is set to 6 hops.

5.2. Performance Evaluation

The performance of IAMCV is compared with that of AMCV in terms of average startup delay, number of nodes with wait state, and conversion rate of node state from wait to playback, respectively.

5.2.1. Average Startup Delay

The difference between time of sending request message and receiving first video data is defined as the startup delay. The average value of startup delay of all nodes during a time interval  s and in the process of node joining system denotes the average startup delay.

As Figure 6 shows, the blue curve corresponding to AMCV results fast falls from  s to  s, keeps increasing trend from  s to  s, and continues to decrease from  s to  s with a slight fluctuation. The red curve of IAMCV has similar variation process with AMCV; namely, it fast decreases from  s to  s, increases from  s to  s, and keeps falling from  s to  s. Although the curve of IAMCV is higher than that of AMCV from  s to  s, the results of IAMCV are better than those of AMCV from  s to  s.

Figure 7 shows the variation process of AMCV and IAMCV with increasing number of nodes. AMCV’s blue curve fast decreases with the increase in the number of nodes from 20 to 60 and also experiences a fall trend after rising from 80 to 200. IAMCV’s results have two fluctuations, namely, a rise after fall with the increase in the number of nodes from 20 to 140 and a fall trend from 140 to 200. IAMCV’s curve is lower than that of AMCV.

The startup delay includes the resource lookup delay and the transmission delay of first video data. Initially, the request nodes fetch the video content from the server. The long communication distance between nodes and server leads to high transmission delay of request message and video data. After the construction of communities, the broker members rely on the static connections between communities to forward the request messages, which also brings high lookup delay. Therefore, the curves of AMCV and IAMCV keep high levels in the initial simulation process. With the construction of dynamic connections between communities, the broker members can fast forward the request messages, which reduces the lookup delay. However, the increase in the number of request nodes not only causes high load of handling request messages for the broker members but also leads to high traffic in the network. The high delay of handling messages and network congestion also results in the high levels for the startup delay. Therefore, the curves of AMCV and IAMCV keep a rise trend after fall. With the departure of nodes, the remission of network congestion and the decrease in the number of request messages enable the startup delay of the two solutions to fast decrease. AMCV mainly relies on the static and dynamic connections to achieve fast resource lookup. However, the number of dynamic connections and the capacity of broker members become the bottleneck of performance of resource lookup. Therefore, the increase in the number of request messages and video streaming leads to high startup delay for AMCV. IAMCV allows the community members to act as the interfaces between communities to relieve the load of broker members. In the other words, the broker members make use of the prefetched resources and the awareness results of resource information in other communities to enable the request messages to offload in the local communities. This leads to the reduction of times of forwarding request messages and load of broker members. Therefore, the performance of startup delay of IAMCV is better than that of AMCV.

5.2.2. Number of Nodes with Wait State

We investigate the number of nodes with wait state according to time and number of nodes joining system.

As Figure 8 shows, the curves of AMCV and IAMCV experience the similar variation process, namely, a fall after fast rise from  s to  s. IAMCV’s curve is lower than that of AMCV during the whole simulation time. Figure 9 shows the variation process of curves of two solutions with increasing number of nodes. Although the curves of AMCV and IAMCV also have similar variation, the curve of IAMCV has low levels than that of AMCV and IAMCV has less peak value (the number of nodes with wait state 28 at  s) than that of AMCV.

The efficiency of resource assignment and handling request messages determines the number of nodes with wait state. Initially, the small number of nodes join the system and the server provides the video data. The number of nodes with wait state keeps at low level. The increase in the number of nodes joining system leads to the rise of node arrival rate, so the increase in the load of handling messages and the requirement of upload bandwidth and video resources causes the rise of startup delay. Therefore, the number of nodes with wait state keeps increase trend. The departure of nodes reduces the load of handling message and the requirement for the upload bandwidth and video resources, so the number of nodes with wait state also fast decreases. AMCV makes use of the static and dynamic connections between communities to support efficient resource lookup, but the unbalanced distribution of video resources results in the shortage of available resources. IAMCV not only makes use of the prefetched content to make up for the shortage of available resources but also employs the priority-based resource assignment in terms of the contribution of nodes to achieve the uniform distribution of video resources in the overlay network. Therefore, the performance of IAMCV for the number of nodes with wait state surpasses that of AMCV.

Conversion Rate of Node State from Wait to Playback. The number of nodes which change state from wait to playback during a period time  s is defined as the conversion rate of node state, which indicates the handling capacities of system for the resource request.

As Figure 10 shows, the curves of AMCV and IAMCV for the conversion rate of node state have similar variation process during the whole simulation time, namely, a slow fall after a fast rise. The blue curve corresponding to AMCV’s results fast increases from  s to  s, reaches the peak value (160) at  s, and falls from  s to  s. IAMCV’s curve also experiences the similar change and has higher level and larger peak value (164 at  s) than those of AMCV.

Except for the startup delay, the serving capacity is a key factor for the estimation of system performance. The former mainly reflects the user QoE and the latter denotes the service scale. The main purpose of system is to enable the request nodes to quickly watch video and keep playback continuity by scheduling available resources. Initially, the small number of mobile nodes joins the system and requests video content, which does not bring high load of handling messages and scheduling resources. This is because the server provides the initial video data and the number of request nodes is, respectively, less. The increase in the scale of request nodes brings high load of handling messages and scheduling resources, so that the rise of conversion rate of node state keeps slow process. According to the analysis of and , the conversion of node state from wait to playback relies on multiple factors: resource lookup delay and video transmission delay. The former denotes the time of resource location and is mainly influenced by P2P network architecture and resource distribution. For P2P network architecture, IAMCV allows the community members to participate in handling request messages to enable the request messages to be offloaded in local communities, which reduces the resource lookup delay. For resource distribution, IAMCV encourages the community members to cache the scarce resources by the definition of service priority levels in terms of contributed upload bandwidth, which achieves optimal resource distribution to reduce the wait delay. The latter not only is the time of playback startup but also denotes the time that the request nodes become available resource suppliers, which is influenced by the condition in the transmission path of video data. The geographical location and mobility of requesters and suppliers can result in the change of transmission path, so they are the important influence factors for the transmission performance. AMCV and IAMCV do not consider the mobility of mobile nodes and the awareness of path and regulation of transmission strategies, so IAMCV mainly makes use of the optimization of architecture and resource distribution to obtain better performance than that of AMCV for the conversion rate of node state.

6. Conclusion

In this paper, we construct the two models for the node state variation from the perspectives of both joining and quitting system and resource assignment. Based on the built models, we analyze the influence degree of the three factors: available upload bandwidth, resource distribution in overlay networks, and mobility of mobile nodes for the video sharing performance. We find that the balanced resource distribution can reduce the resource lookup delay; the mobility of mobile nodes can influence the transmission delay of video data; the available upload bandwidth brings severe influence for the delay of video transmission and resource lookup. According to the analysis for the influence factors, we improve the communication between communities by the permission of participation of available resource assignment for the community members and design an incentive mechanism based on the service priority in terms of the contributed upload bandwidth to achieve optimal resource distribution. The simulation results show how the improved method IAMCV has lower average startup delay, less number of nodes with wait state, and higher conversion rate of node state from wait to playback than AMCV.

Notations Used by Models

Number of nodes with suspend state at time
Number of nodes with wait state at time
Number of nodes with playback state at time
Quitting rate of nodes with wait state
Quitting rate of nodes with playback state
Arrival rate of nodes from suspend state to wait rate
Arrival rate of nodes from playback state to wait rate
Startup rate of nodes with wait state
Community corresponding to
Arrival rate of nodes requesting
Arrival rate of mobile nodes requesting
Arrival rate of nodes in other communities requesting
Departure rate of members with wait state in
Resource supply rate of
Increase rate of nodes caching
Resource lose rate of
Rate of nodes removing
Departure rate of nodes caching
Increase rate of nodes whose state changes from wait to playback in
Rate of nodes caching .

Competing Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgments

This work was supported in part by the National Natural Science Foundation of China (NSFC) under Grant nos. 61501216, 61502219, 61572246, and U1404611, the Science and Technology Key Project of Henan province (152102210331 and 152102210332), and the Program for Science & Technology Innovation Talents in the University of Henan under Grant no. 16HASTIT035.