The present invention relates to the field of network optimization, and, in particular embodiments, to a system and method for network resource allocation considering user experience, satisfaction and operator interest.
The next generation of networks is expected to be integrated into broadcasting systems, where content producers/services (such as Hulu, Netflix, Skype, interactive gaming, interactive video, interactive remote robotic control, remote-teaching, telemedicine, etc.) and their customers need stringent assured quality of service (QoS). Currently, QoS is implemented primarily via over-provisioning. Operators are interested in maximizing revenue, providing differentiated services to different users based on their willingness to pay, and ensuring fairness when providing services among the users, e.g., who subscribe to same packages or services. Fairness is a factor to ensure user satisfaction, which is important to service operators in the competitive environment. There is a need for an efficient system and scheme for managing services and network resources according to joint objectives or criteria, such QoS requirement, user fairness, and operator revenue.
In accordance with an embodiment, a method by a network component for modeling user satisfaction for network services includes determining quality of service (QoS) requirements for a network service, and measuring QoS elements in network traffic of the network service. The method further includes mapping the measured QoS elements and the QoS requirements to a satisfaction indicator according to a satisfaction model, and determining user satisfaction according to the satisfaction indicator.
In accordance with another embodiment, a network component for modeling user satisfaction for network service includes at least one processor and a non-transitory computer readable storage medium storing programming for execution by the at least one processor. The programming includes instructions to determine QoS requirements for a network service, and measure QoS elements in network traffic of the network service. The programming also includes instructions to map the measured QoS elements and the QoS requirements to a satisfaction measure according to a satisfaction model, and determine user satisfaction according to the satisfaction measure.
In accordance with another embodiment, a method by a network component for allocating network resources includes evaluating, for a user, a QoE for each flow of a plurality of flows in network traffic in according with a QoE model, evaluating, for an operator, a revenue associated with the flows in accordance with a revenue model, and calculating priorities corresponding to the flows in accordance with the QoE for the user and the revenue for the operator. The method further includes identifying a flow of the flows with a highest value of the priorities, and allocating a network resource for the flow.
In accordance with yet another embodiment, a network component for allocating network resources includes at least one processor and a non-transitory computer readable storage medium storing programming for execution by the at least one processor. The programming includes instructions to evaluate, for a user, a QoE for each flow of a plurality of flows in network traffic in according with a QoE model, evaluate, for an operator, a revenue associated with the flows in accordance with a revenue model, and calculate priorities corresponding to the flows in accordance with the QoE for the user and the revenue for the operator. The programming also includes instructions to identify a flow of the flows with a highest value of the priorities, and allocate a network resource for the flow.
The foregoing has outlined rather broadly the features of an embodiment of the present invention in order that the detailed description of the invention that follows may be better understood. Additional features and advantages of embodiments of the invention will be described hereinafter, which form the subject of the claims of the invention. It should be appreciated by those skilled in the art that the conception and specific embodiments disclosed may be readily utilized as a basis for modifying or designing other structures or processes for carrying out the same purposes of the present invention. It should also be realized by those skilled in the art that such equivalent constructions do not depart from the spirit and scope of the invention as set forth in the appended claims.
For a more complete understanding of the present invention, and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawing, in which:
Corresponding numerals and symbols in the different figures generally refer to corresponding parts unless otherwise indicated. The figures are drawn to clearly illustrate the relevant aspects of the embodiments and are not necessarily drawn to scale.
The making and using of the presently preferred embodiments are discussed in detail below. It should be appreciated, however, that the present invention provides many applicable inventive concepts that can be embodied in a wide variety of specific contexts. The specific embodiments discussed are merely illustrative of specific ways to make and use the invention, and do not limit the scope of the invention.
In communications systems, user satisfaction depends on both the quality of service requirements (QoS) of an application and on the user's expectation, subscription level, and/or behavior. Typically, radio resource management (RRM) in wireless networks is implemented to provide QoS requirements for different services and users. Additionally, network operators may monitor or consider user satisfaction for delivered services at higher network layers such as the application layer. This typically comprises focusing on one or individual aspects of user satisfaction, such as throughput and or delay, by assessing each aspect individually. Such approaches for managing network resources to provide services with fairness to different users can be challenging, for example when delivering heterogeneous contents to users (e.g., with different packet delays/arrival times, or bit-rate changes over time) over heterogeneous wireless links. Further, the users' applications and service requirements can change over time. The challenges also include the use of different monetary models for different user subscription levels, priority, and/or willingness to pay.
Embodiments are provided herein for network resource allocation considering user experience, satisfaction, and operator interest. The presented schemes also ensure fairness to users when managing resources to provide network services. The embodiments include using a user satisfaction model, or interchangeably a dissatisfaction model, to calculate a global satisfaction (or dissatisfaction) value for multiple users, services, classes of users or services, or traffic flows. The global value is calculated according to a model that takes into consideration various aspects of user satisfaction (or dissatisfaction), such as throughput and delay. The global value can then be fed as an input into a resource allocation or optimization engine of the network. Multiple models corresponding to different classes of users and behaviors can also be used. The embodiments also include a system framework for allocating or scheduling resources based on the satisfaction (or dissatisfaction) value. The framework also takes into consideration monetary models, QoS requirements, and possibly other fairness criteria employed by the network operators for scheduling the resources. The satisfaction, operator charging, and QoS models are combined and used to optimize resource scheduling, e.g., as part of RRM at the physical (PHY) or media access control (MAC) layer, which can improve the efficiency of resource management in heterogeneous traffic and user class scenarios, for example. The optimization results can also be fed back into the system to adjust the different models, further improving the implementation over time. The system framework and satisfaction modeling can be used to efficiently manage users' satisfaction in various timescales and their satisfaction fairness, in addition to conventional service fairness to ensure customer loyalty. The systems also include revenue-awareness to maximize the operator's profit. The embodiments can be implemented by any suitable network technology, including wireless networks, wireline (or fix wired) networks, and other queue/server based networks.
The system 100 comprises a charging model 110 based on throughput of each service and user subscription level, QoS requirement information 120 for services, a user quality of experience (QoE) model 130 for each service (or each class/type of service) considering user subscription, priority, behavior, or other user relevant classification, and optionally operator specified satisfaction fairness (or dissatisfaction) fairness criteria 140 (e.g., within flow or global). The models or objectives above are fed as input into a scheduler function 150, e.g., at the any queue/server network in general, or at a base station in the case of a wireless network, and used as parameters or values for RRM and PHY/MAC layer optimization, which may be further based on higher layer requirements, e.g., optimize combined revenue and satisfaction. The scheduler function 150 can also use as input additional information such as the amount of traffic for offered services and user priority levels. The output of the optimization by the scheduler function 150 includes revenue and/or user satisfaction indicators, R and D respectively. The output can be in the form of a parameter or a single value for each objective, revenue and user satisfaction (or dissatisfaction) reflecting a level of fairness. The indicators or parameters can also be used to calculate a final utility value, e.g., R−βD where β is a scaling factor. The utility value is a measure of suitability or overall performance and can be compared to target values.
The scheduling algorithm of the scheduler function 150 is revenue aware to maximize operator revenue, and fairness aware, e.g., to guarantee service ubiquity in all locations within a cell. The charging model 110 can provide input to the scheduler function 150 by making the profit value of each flow transparent to the RRM. The concept of fairness herein is linked to user satisfaction (or dissatisfaction). The QoE model 130 evaluates the current total QoE of flows, balances them, and provides the scheduler function 150 with a final global measure of all considered flows of users. The fairness to users can be addressed by ensuring both satisfaction fairness (in comparison to traditional fairness, where one QoS is balanced to get fairness), and intra-class fairness which provides an additional level of fairness within different QoS classes in a heterogeneous manner based on operators and costumers interest. The algorithm is also made channel aware, to improve transmission opportunities (e.g., service ubiquity and link equalization), and QoS aware to guarantee flow requirement and user satisfaction. Improving user satisfaction ensures a degree of fairness and can prevent users from unsubscribing or leaving the system. The scheduling algorithm can also be utilization/congestion aware to improve the load situation.
The function 260 also provides feedback information to the operator to adjust control parameters 210 (A, B, C) for the models/functions 220, 230, and 240. The parameters are used to adjust the respective models to improve revenue, charging scheme, fairness, and user satisfaction. In addition to the feedback information, the parameters can be selected by the operator according to the users' expectations, subscription levels, and/or behaviors. The operator can also use multiple parameters to adjust any one of the models, e.g., to adjust functions in the models. The function 260 can also provide feedback to a QoS performance tracking function 270. The function 270 provides QoS parameters, e.g., per flow, to the QoE model 240. The QoS parameters are used by the QoE model 240 to provide the output per flow to the utility 250. The QoS performance tracking function 270 can also provide historic or previous per flow performance information to the per flow utility calculation function 250. The operator can decide the parameters A, B and C based on an optimization of an internal utility according to inputs such as revenue from each subscription, current resource usage and user experience, the impact of user satisfaction in the long-run, a penalty for not making the expected QoE for the user, and competition and demand for the services. As an example for adjusting the charging scheme, the operator continually monitors the output (consumed) bit-rate and the variation of its server capacity, while serving different QoS classes. The relative price/bit for different QoS classes is then adjusted (feedback loop “A”) based on a relative fraction of these capacities. In this way, the operator can decrease the price/bit sent to the network to reduce the priority for a QoS class at the lower layer, e.g., upon detecting that the relative capacity usage is higher than the relative revenue obtained from that class.
The system 200 allows the operator control of user satisfaction or dissatisfaction level per flow. To schedule resources and services, the system 200 further takes into consideration the fairness of dissatisfaction per same flow class, revenue per flow based on user priority and subscription, channel condition and current buffer size, and past performance and QoS requirements, in addition to intra-class fairness. The framework can also unify real-time (RT) and none real-time packet (RTN) switched connections through different satisfaction functions on different QoS elements, including mean and instantaneous measurements. This unification also enables the system to define handle wider soft differentiated services that are a combination of RT and NRT services.
In an embodiment, the QoE model 240 is a dissatisfaction (or satisfaction) model configured mathematically to calculate fairness in terms of dissatisfaction (or satisfaction), e.g., rather than a raw or single QoS value, in addition to intra-class fairness. The fairness in terms of dissatisfaction can be calculated within the same class of flows. The dissatisfaction functions or equations of the model can also be defined taking into account the importance and priority of each user/flow to achieve satisfaction across different flows/users/services. For example, the dissatisfaction (or can be converted to satisfaction) per flow φ and frame k is calculated using the function
where DφQoS[k] is the QoS dissatisfaction (or satisfaction) value, Dφ∫ is the dissatisfaction (or can be converted to satisfaction) fairness value, and
is the inverse of the number of flows of a particular same class.
Using the calculated dissatisfaction or satisfaction, the scheduler algorithm or function 260 maximizes a revenue per flow function Rφ as follows
where rφ[k] is the bit-rate per flow φ and frame k, QoSφreq is the required QoS per flow, and QoSφmeasur[k] is the measured QoS per flow φ and frame k. Examples of the revenue per flow functions include Rφ(•)=Mφ(rφ[k], QoSφreq)−βDφ(QoSφreq, QoSφmeasur[k]) where Mφ is a price policy function for charging, and
is a defined tolerated dissatisfaction value for the flow. The example above is for defining Rφ, with regards to price policy and dissatisfaction functions. However, the scheme is not limited to this specific definition of Rφ.
The total utility function 360 considers the calculated utilities for all considered flows and selects one or more joint pair of RBs and flows that maximize the overall network utility and satisfy other requirements. The output of the function 360 is then considered to allocate network resources, e.g., data rates and bandwidth. The function 360 also provides feedback information to the operator to adjust control parameters or scaling factors 310 (A, B, C) for the models/functions 320, 330, and 340. The function 360 can also provide feedback to a QoS performance tracking function 370, which provides QoS parameters, e.g., per flow, to modify the QoE model 340. The QoS performance tracking function 370 can also provide historic or previous per flow performance information to the per flow utility calculation function 350. Further, according to the feedback information form the function 360, the operator can use a defined satisfaction fairness, and intra-class fairness model to provide a fairness parameter, e.g., for a higher layer such as the application layer, to the function 360 to evaluate the total utility.
At step 410, the QoS dissatisfaction is quantified according to a dissatisfaction or satisfaction model. For example, a dissatisfaction value is calculated per flow and per frame k. At step 420, for each flow, the fairness dissatisfaction is calculated, e.g., based on the QoS fairness and the function
A final dissatisfaction is then calculated as a function of the fairness and QoS dissatisfaction values, e.g., as a product of the two values. Step 430 allocates flows to resource blocks (RBs) to reduce the dissatisfaction (or increase satisfaction), for instance as an argument to maximize a change in dissatisfaction with respect to change in number of used RBs. At step 440, the time slot for each sub-channel is reduced by one, and a plurality of parameters or variables for calculating the dissatisfaction functions are updated. For example, the values include the measured mean bit-rate
In the model 641, the users (associated with the session) are separated into groups and further subgroups, e.g., according to user subscription classes, user priority, behavior and flow type, and/or operators dynamic requirements. A (dis)satisfaction value can be calculated according to a tailored function for each subgroup. For example, the operator can classify users based on their behavior of dissatisfaction. This may be obtained through their complaints, surveys, or other user feedback. This classification is then used to modify the dissatisfaction functions. Users can also be further classified according to their flow types and subscription classes. For example, some users may be subscribed with a flat rate service in a gold priority class, while other users may be pay-as-go subscribers in gold priority class. These two sets of users can have different (dis)satisfaction functions.
The operator 610 can dynamically change the function parameters in the model 641 to reflect the user subscription classes, user priority, behavior and flow type, and/or operators dynamic requirements. The operator 610 can also provide different parameters for the dissatisfaction/satisfaction functions as apriori information to the RRM network unit or a network scheduler function, which implements the per session utility calculation function 650. When a flow with a given subscription class is considered, the user priority RRM unit changes the function accordingly. Similarly, a suitable model can be used for each session. For example, a second model 642 is used for a second session.
Defined QoS and QoE parameters can be used to calculate the satisfaction/dissatisfaction values. The parameters allow modifying the calculation functions in the model/system with ease of implementation in lower network layers (e.g., without the need to substitute the calculation functions). In an embodiment, for each given QoS/QoE parameter, a user satisfaction function is defined, resulting in a tailored combined dissatisfaction function. For example, considering delay, when the 5% delay is substantially above the delay bound, the dissatisfaction could be zero. However, when the 5% delay is getting closer to the delay bound, the dissatisfaction increases rapidly. If the delay surpasses the expected or determined delay bound, there is additional penalty in dissatisfaction.
As an example, a QoS satisfaction function DφQoS[k] of frame k per flow φ can be defined as a product of four functions of the four elements above as Dφ
In another example, the model can be extended to handle both RT and RNT traffic in a common pool of resources as described below. For RT flows, the gradients of dissatisfaction functions are obtained as
if φεΦRT, where k is the channel-awareness exponent of RT flows, and Fφd
if φεΦNRT, where ξ is a sliding factor between the complete separation of RT and NRT flow and the common pool of resources,
In some scenarios, the QoS of different flows for a service can have different impacts to the overall user satisfaction of that service. This could be integrated by changing the parameters of different flows, for example. Different user subscription classes may also have different dissatisfaction functions for the same service, which allows adjusting resources of different users to match their requirements. This can also include user priority differentiation. Service providers can examine user behaviors and satisfy different users with different level of quality degradation for the same service/flow type by a QoS to QoE mapping. This can be used for example to control video buffering and interruptions. When each flow type has specified QoS requirement, the satisfaction can be mapped as a soft function of the required QoS. The mapping can be further modified for the UBC and/or USC.
The satisfaction modeling can be implemented in other scenarios than the framework described above.
In general, the satisfaction modeling can be extended to any suitable queue/server model scenarios, such as in wireless communications, wireline communications, cloud computing, power grid optimization, or other network services. As such, the definition of QoS elements, flow, and RB depends on the scenario of implementation.
The CPU 1210 may comprise any type of electronic data processor. The memory 1220 may comprise any type of system memory such as static random access memory (SRAM), dynamic random access memory (DRAM), synchronous DRAM (SDRAM), read-only memory (ROM), a combination thereof, or the like. In an embodiment, the memory 1220 may include ROM for use at boot-up, and DRAM for program and data storage for use while executing programs. In embodiments, the memory 1220 is non-transitory. The storage device 1230 may comprise any type of storage device configured to store data, programs, and other information and to make the data, programs, and other information accessible via the bus. The storage device 1230 may comprise, for example, one or more of a solid state drive, hard disk drive, a magnetic disk drive, an optical disk drive, or the like.
The processing unit 1201 also includes one or more network interfaces 1250, which may comprise wired links, such as an Ethernet cable or the like, and/or wireless links to access nodes or one or more networks 1280. The network interface 1250 allows the processing unit 1201 to communicate with remote units via the networks 1280. For example, the network interface 1250 may provide wireless communication via one or more transmitters/transmit antennas and one or more receivers/receive antennas. In an embodiment, the processing unit 1201 is coupled to a local-area network or a wide-area network for data processing and communications with remote devices, such as other processing units, the Internet, remote storage facilities, or the like.
While several embodiments have been provided in the present disclosure, it should be understood that the disclosed systems and methods might be embodied in many other specific forms without departing from the spirit or scope of the present disclosure. The present examples are to be considered as illustrative and not restrictive, and the intention is not to be limited to the details given herein. For example, the various elements or components may be combined or integrated in another system or certain features may be omitted, or not implemented.
In addition, techniques, systems, subsystems, and methods described and illustrated in the various embodiments as discrete or separate may be combined or integrated with other systems, modules, techniques, or methods without departing from the scope of the present disclosure. Other items shown or discussed as coupled or directly coupled or communicating with each other may be indirectly coupled or communicating through some interface, device, or intermediate component whether electrically, mechanically, or otherwise. Other examples of changes, substitutions, and alterations are ascertainable by one skilled in the art and could be made without departing from the spirit and scope disclosed herein.
This application claims the benefit of U.S. Provisional Application No. 61/764,895 filed on Feb. 14, 2013 by Alireza Sharifian et al. and entitled “System and Method for Joint Packet/Service Scheduling,” and U.S. Provisional Application No. 61/764,903 filed on Feb. 14, 2013 by Alireza Sharifian et al. and entitled “System and Method for User Satisfaction Modeling for Radio Resource Management in Wireless Communications,” which are hereby incorporated herein by reference as if reproduced in their entirety.
Number | Date | Country | |
---|---|---|---|
61764895 | Feb 2013 | US | |
61764903 | Feb 2013 | US |