A system and method for determining charges for use of network service connections. The network includes nodes which facilitate the transfer of information between source and destination locations. When a connection is established with a node, a billing cell is transmitted to the node over the connection which contains billing and connection information. Data cells are transmitted over the same connection subsequent to the billing cell. A terminate billing cell or conventional means may be used to drop the connection when the connection is no longer needed. The node computes the cost of using the connection based on the billing and connection information copied from the billing cell, and may also consider the connection time and the amount of data transferred over the connection. Upon establishing a subsequent connection with another node, the previous node transmits the billing cell to the new node which copies the billing cell content and, after receiving the data cells over the new connection, performs similar connection usage computations. This process is repeated by each of the nodes involved in the transfer of information between the source and destination. The nodes transmit their respective charging information to a network billing system which generates a final bill that is forwarded to the user. The billing cell may be transmitted from the destination back to the source to verify proper operation of the billing procedure. Fixed rate and variable rate billing schemes may be implemented and augmented as needed by each network operator.
|
1. A method of charging for usage of a network, comprising;
establishing a connection along the network over which data is to be transferred; transmitting a billing message over the connection prior to transferring the data, wherein the billing message comprises connection information indicating a level of service for the connection; copying content of the billing message at a first node defined along the connection; and computing a cost for usage of the connection using the content of the billing message.
16. A system for charging for usage of a network, comprising:
a source unit having access to the network, the source unit transmitting a billing cell along a connection established between the source unit and a node of the network prior to transferring the data, wherein the billing cell comprises connection information indicating a level of service for the connection; a memory provided at the node; and a processor provided at the node that copies content of the billing cell received from the source unit into the memory, and computes a cost for usage of the connection using the content of the billing cell.
22. A method of charging for usage of a network, comprising;
establishing a first connection between a first network access unit and first node of the network; transmitting a billing message over the first connection prior to sending data over the first connection; calculating, at the first node, a cost for usage of the first connection using the billing message; transmitting the billing message over a second connection established between the first node and either a second node of the network or a second network access unit; calculating, at the second node, a cost for usage of the second connection using the billing message; and acquiring, at a common billing system, the cost for usage of the first and second connections respectively from the first node and either the second node or the second network access unit.
2. The method of
3. The method of
4. The method of
5. The method of
transmitting the billing message along a connection established between the first node and a second node of the network; copying content of the billing message at the second node; and computing a cost for usage of the connection between the first and second nodes using the content of the billing message.
6. The method of
7. The method of
8. The method of
9. The method of
10. The method of
12. The method of
13. The method of
14. The method of
transmitting a terminate billing message over the connection, and terminating the connection in response to the terminate billing message being received at the first node.
15. The method of
17. The system of
the content of the billing cell comprises information describing the connection established between the source unit and the node; and the processor uses the connection information to compute the cost for usage of the connection.
18. The system of
the billing cell comprises a header defining identification information; and the processor distinguishes the billing cell from cells received from the source unit other than the billing cell using the header identification information.
19. The system of
20. The system of
21. The system of
the processor comprises a timer that accounts for a connection time during which the connection between the source unit and the node is established; and the processor uses the connection information and the connection time to compute the cost for usage of the connection.
23. The method of
25. The method of
26. The method of
transmitting a terminate billing message to the first node over the first connection; and terminating the first connection in response to the terminate billing message being received at the first node.
27. The method of
transmitting the terminate billing message from the first node to the second node over the second connection; and terminating the second connection in response to the terminate billing message being received at the second node.
28. The method of
29. The method of
determining a first connection time during which the first connection is established; and determining a second connection time during which the second connection is established; wherein calculating the cost for usage of the first and second connections comprises using the billing message and the first and second connection times, respectively.
|
The present invention relates generally to communication systems, and more particularly, to a system and method for determining charges for usage of network resources.
The state of communications technology, particularly that which affects the Internet, is currently in flux and subject to rapid and often uncoordinated growth. The ubiquity and diversity of personal computers and set-top boxes has placed significant pressure on the providers of communications system infrastructure to accommodate the alarming increase in the number of new users that demand immediate access to Internet and other network resources. The rapid development of new and sophisticated software made available to users of such services places additional demands on system infrastructure.
Charging for Internet and other network services is a practice that is gaining acceptance and popularity. By way of example, traditional on-line service., such as those offered by Internet providers, typical charge customers a monthly fee for access to basic services and resources, such as proprietary and public databases of information. Such traditional service providers may also advertise any number of products or services which are purchasable on-line by the user.
Other forms of Internet commercialization currently being considered or implemented include offering of video and audio conferencing services, and a variety of other real-time and non-real-time services. The providers of these services, as well as the providers of communications system infrastructure, are currently facing a number of complex issues, including management of network capacity, load, and traffic to support real-time, non-real-time, and high-bandwidth services, and implementing a viable billing scheme that accounts for the use of such services.
Conventional billing schemes which have been used by the operators of broadband networks typically involve computing connection usage charges based on the bandwidth provided to a customer. Such bulk charging methods fail to accurately distinguish between, and account for, the actual levels of service provided to the customer (e.g., maximum peak rates, acceptable cell loss ratios, real-time versus non-real-time services), and provide only a crude estimate of the actual resources used by the customer. Network operators are currently limited in their ability to asses the real cost of providing various types of network resources and services, which typically results in the overcharging or undercharging of customers Notwithstanding the complexity of conventional network traffic management schemes, such as those applicable to asynchronous transfer mode (ATM) networks, current ATM specifications and recommendations fail to adequately address the need of service providers for a billing methodology that provides for accurate and reliable charging of services utilized by user's of the network.
Accordingly, there is a need in the communications industry for a system and method for implementing a flexible and effective charging capability that accounts for the particular use of a network service connections and other resources by users of a network. The present invention fulfills this and other needs.
The present invention is directed to a system and method for charging for usage of network service connections. The network includes a number of nodes which facilitate the transfer of information from a source location to a destination location. At the time a connection is established with a node, a billing message or cell is transmitted to the node over the connection. The billing cell contains billing and connection information which is copied by the node and used to produce billing information. Information cells are transmitted over the same connection subsequent to the transmission of the billing cell. A terminate billing cell or conventional means may be used to drop the connection when the connection is no longer needed. The node computes the cost of using the connection based on the billing and connection information copied from the billing cell The connection usage computation may also take into account other factors, such as the connection time and the amount of data transferred over the connection.
Upon establishing a subsequent connection with another node, the previous node transmits the billing cell to the new node which copies the billing cell content and, after receiving the information cells over the new connection, perform; similar connection usage computations for use of the new connection. This process is repeated by each of the nodes involved in the transfer of information between the source and destination. The nodes also transmit their respective charging information to a common network billing system which generates-the total charge in a final bill that is forwarded to the user. The billing cell may be transmitted from the destination back to the source to verify proper operation of the billing procedure. Fixed rate and variable rate billing schemes may be implemented and augmented as needed by each network operator.
Other aspects and advantages of the present invention will become apparent upon reading the following detailed description and upon reference to the drawings in which:
In the following description of the various embodiments, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration various embodiments in which the invention may be practiced. It is to be understood that other embodiments may be utilized, and structural and functional modifications may be made without departing from the scope of the present invention.
Various embodiments of the present invention will be described hereinbelow within the context of a broadband network environment which employs a packet switching mode of information transfer. In particular, several embodiments and aspects of the invention will be described within the context of an asynchronous transfer mode (ATM) network environment, and within the context of a novel service model which may be implementable within existing ATM networks. It is to be understood that the various embodiments of the invention described with regard to specific types of network environments are provided for illustrative purposes only, and are not to be construed as limiting the scope of the invention.
In
A system and method directed to charging for network connection usage implemented in accordance with the principles of the present invention permits different network operators 22 to implement charging strategies for determining the cost of using network connections 30 and other resources within their jurisdiction independent from the charging strategies employed by other network operators 22. Such a charging methodology provides network operators 22 the opportunity to develop and implement a charging strategy that takes into consideration a number of service factors which impact the performance of network resources as perceived by the paying user of the network.
A non-exhaustive list of possible factors that may be used as variables within usage charging formulae include service class type, quality of service, any individual or combination of ATM traffic parameters, connection time, and other traffic flow parameters, for example. Those skilled in the art will immediately appreciate the substantial increase in flexibility and credibility provided by a billing scheme which considers such factors when computing the cost of network resource usage, especially when contrasted to the relatively primitive approach of merely accounting for the number of bytes transferred between any two network operators or the amount of bandwidth provided to a customer.
In
By way of example, and with continued reference to
The billing cell 31 includes a header 36 which uniquely identifies this cell as providing billing information, as distinguished from cells of a conventional type. It is noted that the node 24a, which may constitute a standard ATM switch, does not inspect the actual data field of the billing cell 31, and therefore reads the header information as a means of distinguishing between billing cells and non-billing cells. It is further noted that the payload type (PT) field of a standard ATM cell comprises two bits which may be set by the source unit 27 to identify a particular cell as a billing cell 31. Alternatively, Operation and Maintenance (OAM) cells may be used to transfer billing data.
In addition to a header 36, a billing cell 31 carries with it two other types of information, namely, billing address information 25 and connection information 38. The billing address information 25 is used to determine the recipient of the charging information associated with use of a particular connection 33. The node 24a cooperates with a billing unit 34 which processes the billing information transported by the billing cell 31. It is understood that the billing unit 34 may reside within the node 24a or may operate peripherally to the node 24a Further, the functions performed by the billing unit 34 may instead be performed by a processor of the node 24a.
When the billing cell 31 is received by the node 24a, the connection information 38 is copied from the billing cell 31 to the billing unit 34. Cells having conventional payloads are typically received by the node 24a over the connection 33 subsequent to the receipt of the billing cell 31. When the connection 33 is no longer required, a terminate billing message or cell (not shown) may be transmitted by the source 27 to the node 24a Alternatively, the connection 33 may be dropped in accordance with the network's standard procedure for terminating a connection
After receiving the terminate billing cell or dropping the connection 33 in a conventional manner, the billing unit 34 processes the connection information 38 and billing address information 25 provided by the billing cell 31 to compute the cost of using the connection 33. In one embodiment, a timer 39 of the node 24a may be employed to account for the duration of time in which the connection 33 was used. The connection time information may be used by the billing unit 34 in combination with the connection information 38 when computing connection usage charges. In another embodiment, the number of bytes of data transferred during the existence of the connection 33 may also be considered when computing the cost of using the connection 33.
The relevant charging information acquired by the billing unit 34 may then be used to locally compute the cost of connection usage. Alternatively, unprocessed charging information may be transported to an external billing system which may perform the computations necessary to determine the cost of using the connection 33. The external billing system may be used as a common site for acquiring and/or processing charging information received from other nodes of the network 20.
The connection information carried by the billing cell 31 and copied by the node 24a is intended to describe the general level of service expected or required by a network user when using a particular connection, such as by communicating data between the source 27 and node 24a In this regard, various parameters that effect the service that a customer directly perceives, such as maximum peak rate and acceptable cell loss ratio for example, may be included in the connection information 38 of the billing cell 31. In a traditional ATM network environment, for example, the connection information 38 may include the specific class of service implicated (e.g., CBR, VBR, UBR, and ABR, which will be described in detail hereinbelow), or other specific ATM traffic parameters. It is to be understood that other types of information which can be used to characterize the performance of the connection 33 as perceived by a user may constitute or be included with the connection information 38 carried by the billing cell 31.
A significant advantage realized when using a billing cell 31 in a manner described herein concerns the increase in flexibility provided to each independent network operator, such as operators OP-A and OP-B, when implementing a charging scheme that accounts for connection usage associated wills various switches or nodes maintained by such operators. For example, and as previously described, the operator OP-A may compute the cost of using the connection 33 in a desired manner for such usage independent of the charging methodologies employed by other network operators.
By way of example, a connection 35 may be established between the node 24a and a node 24b in an effort to transport data between the source 27 and the destination 29. When establishing the connection 35 with node 24b, node 24a transmits the billing cell 31 to the node 24b followed by the actual data using the connection 35. The node 24b copies the contents of the billing cell 31 and computes charging information for usage of the connection 35 in a manner similarly described hereinabove. The charging information acquired or produced by the billing unit 34b of the node 24b may then be transmitted to a common billing system. It is noted that both operators OP-A and OP-B may compute charging information for a customer's use of the connection 35 established between nodes 24a and 24b. Importantly, the manner by which each network operator computes the relevant connection charge may be determined independent of the charging methodologies adopted by other operators.
Finally, the node 24b establishes a connection 37 with a destination 29, and then transmits the billing cell 31 and data cells over the connection 37. In one embodiment, the destination unit 29 transmits the billing cell 31 back to the source unit 27 as a means of confirming the operability of the billing system. It is noted that information identifying each node that processes the information carried by the billing cell 31 may be encoded in the billing cell 31 as the billing cell 31 travels through the various connections between the source 27 and destination 29. As such, the billing cell 31 may be used as a means of tracking the actual route of the data as it passes through the network 20 from one location to another.
Turning now to
The billing unit 34a generates charging information using the billing cell information received at the node 24a in accordance with a charging strategy determined by the operator 22a. Data cells are then transferred over the connection 32a between the user source 26a and node 24a After termination of the connection 32a, such as by dropping the connection in accordance with a traditional procedure or by transmission of a terminate billing message, the billing unit 34a associated with the node 24a computes the connection charge for use of the connection 32a and transmits the connection cost information to the network billing system 40. As was mentioned previously, the billing unit 34a may alternatively acquire billing information from the node 24a and transmit the unprocessed billing information to the network billing system 40 which, in turn, computes the usage charges associated with the connection 32a.
The billing cell 31 processed by the node 24a is transmitted to the node 24b upon establishing the connection 32b. The billing unit 34b generates billing information based on the billing cell contents and the charging strategy imposed by the operator 22b. Data is transferred between node 24a and 24b and, upon termination of connection 32b, the billing information acquired and/or computed by the billing unit 34b is transmitted to the network billing system 40. Similar operations occur at nodes 24c and 24d, with the billing cell 31 and user 26a data ultimately being received at the destination by the user 26b. The billing cell 31 may then be transmitted back to the source user 26a to verify proper operation of the billing procedure. After acquiring the relevant billing information from each of the billing units 34a-34d associated with each of the nodes 24a-24d defining the connections between the users 26a and 26b, the network billing system 40 computes the total cost for transporting the data between source and destination locations 26a, 26b, and transmits the total computed connection cost as a bill to the user 26a.
Referring to
At some later time, a billing cell 54 associated with a second virtual connection, VC2, is received by the node 24, the contents of which is copied and processed by the billing unit 34. Subsequent data cells 56 transmitted over the virtual connection VC2 are subsequently received by the node 24. A terminate billing cell 58 is eventually received by the node 24 over the connection VC2. The node 24, in response to the terminate billing cell 58, drops the connection VC2. A terminate billing cell 60 is subsequently received by the node 24 after all information cell 52 are transferred through the virtual connection VC1. The node 24, in response to the terminate billing cell 60, drops the connection VC1.
Billing cells 50, 58 and terminate billing cells 54, 60 associated with virtual connections VC1 and VC2, respectively, are transmitted to the network billing system 40 by the node 24. It is noted that the connection cost information computed by the node 24 is included in the billing cells 50, 54 transmitted to the network billing system 40. When the node 24 establishes another set of virtual connections with another node or nodes, billing cells 50, 54 are then transmitted over these connections. Information cells 52, 56 are then transmitted subsequent to the billing cells 50, 54, followed by terminate billing cells 60, 58. Subsequent nodes of the network process the cells 50, 52, 54, 56, 58, 60 in a similar manner.
The billing procedure illustrated in
The node 24 also receives a billing cell 74 and subsequent information cells 76 over a second virtual connection VC2. Upon receiving the last information cell 76, the virtual connection VC2 is dropped using a standard connection termination procedure. The billing unit 34 of the node 24 computes the charges for use of virtual connections VC1 and VC2, this information being communicated to a network billing system 40 using billing cells 70 and 74. Subsequent virtual connections are established with another node or nodes of the network 20, with data flowing over the virtual connections from node 24 in a manner depicted generally in FIG. 5.
Those skilled in the art will appreciate that the above-described charging methodology may be employed in networks having differing architectures, protocols, and transfer modes. The above-described methodology may be particularly advantageous when used to compute connection usage information within an ATM network environment. It is to be understood that the present invention is not limited in application to any particular type of network By way of example, and not of limitation, the charging methodology of the present invention may be implemented within a new network service environment which is described in detail hereinbelow.
The service concept described hereinbelow for illustrative purposes may be viewed as a Simple Integrated Media Access (SIMA) service model. The SIMA service model incorporates the basic properties of ATM with the addition of eight priority levels as defined within the context of a new service concept termed ;a nominal bit rate (NBR) service. In general, the NBR service provides for the simple and efficient division of network capacity amongst different connections and the charging of user fees for the use of such connections.
For purposes of illustrating various advantages associated with a network implemented using the SIMA service model, a brief description of various conventional ATM service models is provided. A conventional ATM service architecture typically provides a number of predefined quality of service classes, often referred to as service categories. Each of the service categories includes a number of quality of service (QoS) parameters which define the nature of the respective service category. In other words, a specified service category provides performance to an ATM virtual connection (VCC or VPC) in a manner specified by a subset of the ATM performance parameters. The service categories defined in the ATM Forum specification referenced hereinbelow include, for example, a constant bit rate (CBR) category, a real-time variable bit rate (rt-VBR) category, a non-real-time variable bit rate (nrt-VBR) category, an unspecified bit rate (UBR) category, and an available bit rate (ABR) category.
The constant bit rate service class is intended to support real-time applications that require a fixed quantity of bandwidth during the existence of the connection. A particular quality of service is negotiated to provide the CBR service, where the QoS parameters include characterization of the peak cell rate (PCR), the cell loss rate (CLR), the cell transfer delay (CTD), and the cell delay variation (CDV). Conventional ATM traffic management schemes guarantee that the user-contracted QoS is maintained in order to support, for example, real-time applications, such as circuit emulation and voice/video applications, which require tightly constrained delay variations.
The non-real-time VBR service class is intended to support non-real-time applications, where the resulting network traffic can be characterized as having, frequent data bursts. Similarly, the real-time variable bit rate service category may be used to support "bursty" network traffic conditions. The rt-VBR service category differs from the nrt-VBR service category in that the former is intended to support real-time applications, such as voice and video applications. Both the real-time and non-real-time VBR service categories are characterized in terms of a peak cell rate (PCR), a sustainable cell rate (SCR), and a maximum burst size (MBS).
The unspecified bit rate (UBR) service category is often regarded as a "best effort service," in that it does not specify traffic-related service guarantees. As such, the UBR service category is intended to support non-real-time applications, including traditional computer communications applications such as file transfers and e-mail.
The available bit rate (ABR) service category provides for the allocation of available bandwidth to users by controlling the rate of traffic through use of a feedback mechanism. The feedback mechanism permits cell transmission rates to be varied in an effort to control or avoid traffic congestion, and to more effectively utilize available bandwidth. A resource management (RM) cell precedes, the transmission of data cells, which is transmitted from source to destination and back to the source, in order to provide traffic information to the source.
Although the current ATM service architecture described above would appear to provide, at least at a conceptual level, viable solutions to the many problems facing the communications industry, ATM, as currently defined, requires implementation of a complex traffic management scheme in order meet the objectives articulated in the various ATM specifications and recommendations currently being considered. In order to effectively manage traffic flow in a network, conventional ATM traffic management schemes must assess a prodigious number of traffic condition indicators, including service class parameters, traffic parameters, quality of service parameters and the like. A non-exhaustive listing of such parameters and other ATM traffic management considerations is provided in ITU-T Recommendation 1.371, entitled Traffic Control and Congestion Control in B-ISDN, and in Traffic Management Specification, version 4.0 (af-tm-0056.000, April 1996), published by the Technical Committee of the ATM Forum.
One significant network traffic consideration is the amount of currently available bandwidth on a particular virtual connection Except for the ABR service category, the existing ATM service classes do not suggest utilizing this network load information. The ABR service category provides for dynamic allocation of available bandwidth in response to network load information returned to the user.
However, the ABR service class provides a complex arrangement of feedback information, including a current cell rate, explicit rate, minimum cell rate, direction indication, congestion indication, as well as others. This complex arrangement increases the complexity of the service class architecture. Also, the feedback mechanism defined for the ABR service class provides for allocation of bandwidth bounded between a defined minimum cell rate and a peak cell rate. Therefore, cell rate guarantees continue to exist which increases the complexity of the traffic management scheme. Furthermore, the conventional ATM service classes, including the ABR service class, do not provide solutions for determining network load conditions, and managing cell transfer rates in accordance with those network load conditions.
In contrast to these conventional ATM service models, the SIMA service model provides for a network arrangement and method that is not conceptually complicated to implement A network implementing a SIMA service model further provides for the effective division of network capacity during bandwidth overload situations, while providing network load information to the user with minimal complexity and negligible delays. A network that embraces a basic version of the SIMA service model does not need to perform many of the traditional and burdensome traffic management functions involving traffic descriptors, quality of service parameters, service classes, connection admission control (CAC), or usage parameter control (UPC).
All of these functions are effectively replaced by functions performed by two autonomous units: a measuring unit, provided at a user/network interface, and a cell scheduling and buffering unit, provided at a network node. The SIMA service concept, from a user's perspective, is simple and understandable, because there are no pre-defined traffic or quality parameters associated with each connection, and charging for connection usage is based solely on the value of NBR and the duration of the connection.
A typical implementation of a SIMA service utilizes two primary components: access nodes and core network nodes, which have fundamentally different functional responsibilities. For example, access nodes, which may be a user/network interface, perform the task of measuring traffic for every connection, whereas at the core network nodes, the traffic control functions do not need to know anything about the properties of individual connections.
The elegant simplicity of the SIMA service model offers obvious advantages to the manufacturers of infrastructure hardware and software. For example, ATM switches or crossconnects can be built using individual cell scheduling and buffering units, switching fabrics, and routing functions. By using ATM virtual paths or IP switching technology, the routing tasks may be reduced in complexity. In addition, packet discarding and priority feedback features may be included in the cell scheduling and buffering units without negatively impacting their automaticity. Also, simple implementation of network nodes may result in the availability of a relatively inexpensive, high capacity network infrastructure.
The more complex unit of the SIMA service infrastructure concerns the access nodes. Such access nodes will typically include a measuring unit to measure the traffic stream of every connection in real-time, and a computation unit for determining a priority to be assigned to every cell. These additional features should be implementable at a level of difficulty no greater than that for effecting UPC in conventional ATM networks.
An embodiment of an NBR system may be advantageously employed to provide priority feedback information, so that cell-sourcing units are able to regulate their cell transfer rates (CTR) and realize acceptable cell loss probabilities. Some information regarding the connection threshold level is periodically updated and fed back to the cell-sending unit. Each ATM node calculates a typical allowable priority level that can be inserted into special status cells used by the source to probe the connection.
In one embodiment, this feedback feature is used to optimize the CTR by maintaining the highest priority possible without exceeding the worst-case allowable priority accepted at the nodes of the virtual connection. This embodiment, therefore, provides priority level feedback (PLfb) which informs the source end-system of a typical priority level that is still accepted by the nodes of a connection.
In order to provide the priority level feedback, the allowable priority level PLa is determined at each node in the connection. A priority level feedback level PLfb records the worst-case PLa from the source to the destination, which is stored as a field of the status cell. An embodiment may be employed to effectively determine the value of the lowest allowable priority (i.e., the highest allowable priority "level", PLfb) currently being accepted on the connection.
Subsequent ATM nodes compare the PLfb in the special status cell to the current priority level PLa that is being accepted at the node (i.e., not discarded at the node). If the status cell includes a PLfb having a larger value than the current allowable priority level at the node, then PLfb in the status cell is replaced with a new, smaller value corresponding to the PLa value at the node. The connection destination will thus receive the smallest PLfb of the connection, indicating what is typically the highest priority level PL (corresponding to the worst priority) that will successfully traverse the connection without cell discarding. The destination unit then sends this network load information back to the cell source, which allows the user to adjust the CTR in order to reduce the likelihood that subsequently issued data cells will be lost through cell discarding at the nodes of the connection.
Referring now to
Depending on a particular application, the user selects 142 a real-time-or a non-real-time network connection. The process of determining the priority level (PL) of each cell, which indicates the importance or criticality of the cell relative to other cells, involves measuring 144 the actual or measured bit rate (R) of the selected real-time or non-real-time connection at the UNI. The priority level of each cell is determined 146 at the UNI using a ratio of MBR and NBR.
After computing the priority level of each cell at the UNI, the cells are transmitted 148 to the network, such as to a node of the network. A network node, upon arrival of a cell transmitted from the UNI, performs a cell filtering process by which the node determines whether to accept or discard a particular cell. The cell filtering process involves determining 150 the state of one or more buffers or memories of the network node to determine a buffer or memory occupancy level. The node accepts or discards 152 a cell based on the priority level of the cell and the state of the node buffer. Cells that meet the filtering criteria determined at the node are accepted, buffered, and eventually transmitted 154 to another node in the network or another network in a manner consistent with the expected quality of service for the connection.
If the user does not require a real-time service connection, the default non-real-time service class condition remains operative. As such, the rt/nrt service class bit of each cell header is set to indicate that the payload of the cell includes non-real-time information 166. It is noted that the NBR service disclosed herein does not utilize the cell loss priority (CLP) scheme used by conventional ATM traffic management approaches. As such, the CLP bit in the cell header may instead be used to discern between real-time and non-real-time payloads.
In the above described embodiment, each cell transmitted over a connection is designated as either a real-time cell or a non-real-time cell, such as by appropriately setting the rt/nrt service class bit of the cell header. In an alternative embodiment, depending on a user's requirements, a connection may be designated as being either a real-time or non-real-time connection, and the cells communicated over such a connection need not be individually assigned a real-time or non-real-time status. Each node for a given connection, for example, may perform a table look up procedure upon arrival of a cell at the node to determine whether the cell is associated with a real-time or a non-real-time connection. Thus, in accordance with this embodiment, a cell header bit need not be reserved for distinguishing between real-time and non-real-time cells.
After the rt/nrt service class header bit has been set in the above-described manner, the actual bit rate of a particular cell to be transmitted between the UNI and the network is measured 174. Since, in practice, the actual bit rate may be subject to significant variability over time, a measuring unit of the UNI employs an averaging measuring principle to determine the actual or instantaneous bit rate,
In general, the UNI measures 174 the actual bit rate of a cell, such as celli, by approximating the actual or instantaneous bit rate of the connection within a measuring period having a duration that is appropriate for the particular connection (e.g., a real-time or non-real-time connection). The instantaneous bit rate, MBRi, may be determined using a known technique.
Having determined 174 the measured bit rate, MBRi, of the i:th cell, the priority level of the i:th cell is computed using the measured bit rate, MBRi, and the nominal bit rate, NBR. In accordance with one embodiment, it is assumed that a cell may be distinguished from other cells using a cell prioritization scheme that employs eight priority levels. In order to indicate which of the eight priority levels is attributed to a particular cell, each cell allocates three bits for this purpose.
In accordance with current ATM specifications, an ATM cell is specified as a unit of transmission having a fixed-size frame consisting of a 5-octet header and a 48-octet payload. It is appreciated that the necessity to allocate three bits in the cell header for the purpose of designating cell priority level may require utilization of currently defined ATM header bits. By way of example, it may be possible to utilize the current Generic Flow Control (GFC) field which constitutes a total of four bits. In this case, three bits may be allocated for designating cell priority level and one bit may be designated as the rt/nrt service class bit. It may be possible, in accordance with another embodiment, to allocate other header bits for the purpose of indicating one of eight priority levels and rt/nrt service class by deviating from the five-octet header ATM specification.
As such, other header bits may be redefined to represent cell priority level and service class designations. Alternatively, one or more bits required to specify cell priority level and/or service class may be situated outside of the currently defined ATM cell header. The need to make a minor modification to the existing ATM cell header definition is significantly offset by the substantial advantages offered by employing the NBR service scheme, such as a significant reduction in network and traffic management overhead and complexity.
It is understood that the number of priority levels may be less than eight or greater than eight. By way of example, if it is assumed that four cell header bits are allocated for purposes of indicating a cell's priority level, as many as 24 (i.e. 2n-bits) or 16 priority levels may be defined. Increasing the number of priority levels within the context of an NBR service permits the network operator to make finer adjustments to the bandwidth of a particular connection when managing network traffic. The price for this finer level of traffic control is the additional cell header bit or bits needed to resolve a greater number of priority levels.
A priority level computing unit determines 176 the priority level of each cell, such as celli, using the computed value of MBRi and the value of NBR. In accordance with one embodiment, and assuming that the measured bit rate is MBRi when the i:th cell is transmitted to the network, the priority level (PLi) of cell; may be calculated using the following equation:
where, └x┘ represents the integer part of x. As will be discussed hereinbelow in accordance with an embodiment in which both NBR and traditional ATM service connections are accommodated, the zero priority level, PL=0, is reserved for those connections that use an ordinary ATM service with guaranteed bandwidth and quality of service. Accordingly, Equation [1] above may be modified so as to produce cell priority levels ranging between PL=1 and PL=7, such that └x┘ represents the integer part of x, if 1<x<7. It is to be understood that the order of priority values can depart from the scheme described herein. Thus, it is possible to define, for example, that the priority value "7" corresponds to the highest priority and that the priority value "0" corresponds to the lowest priority.
It can be seen by application of Equation [1] above that if a connection is exploiting network capacity in excess to the connection's negotiated NBR value, the priority level of cell; is at least 4. It can further be seen that if the momentary bit rate at the UNI is less than the negotiated value of NBR, PL is at most 4. The priority level scheme in accordance with this embodiment thus permits adjustment of the relative capacity used by a connection in steps of 2. From Equation [1] above, it can be seen that for an NBR of 100 kbit/s, an MBR higher than 566 kbit/sec results in a PL of 7, and an MBR lower than 8.8 kbit/s results in a PL of 0.
The three priority level bits allocated in the cell header are set 178 for each ATM cell transferred from the UNI. The ATM cells are then transmitted 180 to targeted network nodesj identified by node addressing information provided in the cell header.
It is noted that if a user is not satisfied with the quality of service of the connection, the user may elect between at least three alternatives. First, the user may elect to keep the average bit rate unchanging, but reduce the variation of traffic process. Second, the user may elect to decrease the average bit rate, or to increase the nominal bit rate. Increasing the NBR will, however, generally result in a concomitant increase in cost for a higher speed connection. Finally, the user may change the network operator.
In
Celli is transmitted from the UNI to a network node and is received at a filter 188 of the node. A memory manager 189 checks the status 181 of the memory 190 in order to determine the occupancy in the memory 190. The memory manager 189 determines 182 the allowable priority level (PLa) based on the occupancy state of the memory 190. In general, the memory manager 189 establishes a high allowable priority which translates to a low allowable priority "level," for example PLa=0 or 2, when the occupancy level of the memory 190 is high (i.e., few available memory locations). When the memory manager 189 determines that the memory 190 has ample capacity for receiving new cells, the memory manager 189 establishes a low allowable priority which translates to a high allowable priority "level," for example PLa=6 or 7. As will be appreciated by those skilled in the art, the calculation of PLa could alternatively be based on unoccupied buffer capacity rather than on buffer occupancy.
If the priority level of cell; is greater than the allowable priority level, PLa, as determined 183 by the memory manager 189, the filter 188 discards 184 celli. If, on the other hand, the priority level of celli is equal to or less than the allowable priority level PLa the filter 188 accepts 185 celli. The memory manager 189 coordinates the transfer 186 of celli to the memory 190 and updates an index table 191 coupled to the memory manager 189 to include a new index table entry for newly accepted celli. In one embodiment, the index table 191 stores the location of the accepted celli in the memory 190, and also stores a cell-type indicator which specifies whether celli is a real-time cell or a non-real-time cell. As such, the memory 190 may store both real-time and non-real-time cells.
The memory manager 189, in cooperation with the index table 191, manages cell transfer operations from the memory 190 to the output of the memory 190 by giving preference to the real-time cells over the non-real-time cells. By way of example, the memory manager 189, upon determining the presence of both rt-cells and nrt-cells stored in the memory 190, transfers all of the rt-cells to the output of the memory 190 prior to transferring out any of the nrt-cells.
In accordance with another embodiment, as is illustrated in
In accordance with another embodiment, the network node may apply a buffer filtering scheme which performs the filtering function based on packets of cells, rather than on individual cells. By way of example, the filtering procedure described hereinabove may be applied to the first cell of each packet. If the first cell is discarded by the node, then all of the cells of the packet following the first cell are discarded as well. If, however, the first cell of a packet is accepted, then the priority of all other cells belonging to that packet may be increased, for example by changing the priority level from PL=5 to PL=3. A gain of even one priority level, such as from PL=4 to PL=3, is believed to be sufficient to ensure that there will only be very few partially transmitted packets.
A cell-type detector 192 receives the accepted cell, celli, from the filter 188 and determines whether cell; is an rt-cell or an nrt-cell. As discussed previously, the header of cell; includes a header bit, such as the CLP bit, which indicates whether or not cell; is an rt-cell or an nrt-cell. The cell-type detector 192, upon determining the service class type of the cell;, transfers the celli to either the rt-buffer 193 or the nrt-buffer 194. In a manner similar to that described previously with respect to
In accordance with another embodiment, it may be desirable, for purposes of enhancing network expansion and traffic control, to request that each user of the network purchase a maximum NBR The maximum NBR value is intended to remain substantially constant In addition, it may be desirable to request that each user select an appropriate instantaneous NBR, which should be no greater that the selected maximum NBR. The selection of an appropriate instantaneous NBR generally involves a compromise between price and quality of service. The service quality detected by a user depends largely on three parameters, namely the NBR, the average bit rate, and the amount of traffic variations. Although a user may change any of these parameters, the only information that the network needs to know at the initiation of cell transmission is the NBR and the service class (real-time or non-real-time) of the connection.
In accordance with another embodiment, a SIMA service model provides for the accommodation of both NBR and traditional ATM service connections. It is appreciated that traditional ATM services which offer guaranteed connections may be desirable for certain applications. It is anticipated, however, that the quality of service offered by the NBR service will meet or exceed a user's expectations for virtually all real-time and non-real-time applications.
A SIMA service which provides for both NBR and traditional ATM services requires that the network operator dedicate a UPC device for each conventional ATM connection, or possibly for each virtual path. All of the cells transmitted using traditional ATM service connections are designated with the highest priority of PL=0 and with a real-time (rt) service class designation. In accordance with this approach, the zero priority level is reserved for those connections that use an ordinary ATM service with guaranteed bandwidth and quality of service. Accordingly, the priority determination Equation [1] above is modified so as to produce cell priority levels ranging between PL=1 and PL=7, such that └x┘ represents the integer part of x, if 1<x<7. It is noted that if the network operator wants to mark excessive cells as CLP=1 cells, those cells may be marked with a lower priority, such as PL=6, for example.
A point of possible incompatibility with traditional ATM technology involves the necessity of three bits for each ATM cell for the determination of cell priority, or two bits if the current cell loss priority, CLP, bit in the cell header is used. In addition, one bit is needed to distinguish between real-time and non-real-time connections. The rt/nrt service bit may be, but is not required to be, included in every cell. It may be possible to utilize the current Generic Flow Control (GFC) field which constitutes a total of four bits. In this case, three bits may be allocated for designating cell priority level and one bit may be designated as the rt/nrt service class bit.
The network 200 includes a source end-system 206 for transmitting digital information to the destination end-system 208. The information transmitted in such a network typically passes through various network nodes, such as nodes 202 and 204, as it advances towards its destination. These nodes represent network data communications elements such as routers, switches or multiplexers. Connecting the end-systems and nodes are circuit connections that provide the means for which the digital information may be passed. Connection links 210, 212 and 214 represent the connections for data sent from the source end-system 206 to the destination 208, while connection links 216, 218 and 220 represent those connections which provide information in return.
In one embodiment, the network load information is provided to the source end-system 206 in the form of special ATM status cells periodically issued from the source end-system 206. The status cells are part of the normal connection cell flow in the sense that they are included in the normal MBR calculation of the connection, and the status cell priority level is calculated in the manner previously described in connection with FIG. 7.
Referring now to
As each node receives the status cell 250, it examines its current load level at the outgoing link of the connection. The load condition at a particular node is denoted PLfb,n, which identifies the highest priority, and therefore the lowest allowable priority level PLa, for the ATM node. The current load condition PLfb,n at the node is compared to the value available in the PLfb,f field 256, where the PLfb,f field 256 reflects the lowest allowable priority level PLa, identified in a node on the connection. Where PLfb,n<PLfb,f, the value in the PLfb,f field 256 is decreased to reflect the lowest allowable priority level identified up to this point in the connection, and is therefore decremented to equal the PLa value of the node. Where PLfb,n>PLfb,f, the node does not change the value in the PLfb,f field 256.
Each network node detects the status cell 250 based on identifying information in the cell header 252. Among the ATM header fields is a 3-bit payload type (PT) field 260 used to discriminate between a cell payload carrying user information from a cell payload carrying management information. The PT field 260 of the header 252 in
After the destination end-system 208 has received the status cell 250, it returns the status cell 250 to the source end-system to allow it to examine the value collected in the PLfb,f field 256. In one embodiment, the value in the PLfb,f field 256 is placed into the backward priority level feedback field shown as PLfb,b 258. This allows the PLfb,f field 256 to gather priority level status information as the status cell 250 travels from the destination end-system 208 to the source end-system 206 in a manner similar to the source-to-destination status collection. Consequently, the destination end-system sets the PLfb,f field 256 to the lowest priority, corresponding to a priority level value of "7", and the status cell 250 is transmitted back into the network to return to the source end-system 206. During the return journey, the PLfb,f field 256 will again gather network load status information, this time for the connection from the destination end-system 208 to the source end-system 206. The previously collected load information stored in the PLfb,b 258 field will remain static for analysis at the source end-system 206.
The source end-system 206 is configured such that the failure to receive the status cell within a predetermined time period will result in an automatic decrease of the cell transfer rate. This is based on the assumption that loss of a status cell indicates that it was discarded in view of the cell transfer rate being too high, and therefore should be lowered.
In another embodiment, several pairs of PLfb,f/PLfb,b fields can be provided in the payload 254. This can provide the user with information regarding the network load conditions with respect to various parameters, such as various time periods. For example, first, second and third pairs of PLfb,f/PLfb,b fields can provide the network load conditions during the last 100 milliseconds, 10 seconds, and 10 minutes respectively.
Referring now to FIG. 11 and Table 1 below, an example of the calculation of the forward priority level feedback PLfb,f 256 and the backwards priority level feedback PLfb,b 258 is described.
TABLE 1 | |||||||
t < 1 | t = 1 | t = 2 | t = 3 | t = 4 | t = 5 | t = 6 | |
PLa(NODE 202) | 5 | 5 | 5 | 4 | 4 | 4 | 4 |
PLa(NODE 204) | -- | -- | -- | 6 | 6 | 6 | 6 |
PLfb,f | 7 | 7 | 5 | 5 | 5 | 5 | 4 |
PLfb,b | -- | -- | -- | -- | 5 | 5 | 5 |
As illustrated in
Between times t=3 and t=4, PLfb,f 256 is placed into the backward priority level feedback field PLfb,b 258. At time t=4, status cell 222d therefore includes a PLfb,b field 258 that stores the value "5" which corresponds to the worst-case allowable priority level of the source-to-destination connection. Because the node 204 still has a PLa value of "6", PLfb,f 256 of status cell 222e remains unchanged at a value of "5" at time t=5. However, at some time between t=2 and t=3, the PLa value at node 202 changed from "5" to "4", causing PLfb,f 256 in cell 222f to also be decreased to a value of "4". As can be seen from Table 1, PLfb,b 258 remains static during the return journey (i.e., t=4 through t=6), so that the source-to-destination PLfb,f can be reported to the source end-system 206.
The ATM node 300 determines 310 whether the cell 306b is a standard data cell or a status cell configured for the NBR methodology. In one embodiment, this is accomplished by comparing a known value to a payload type value in the payload type (PT) field 260 in the header 252. Where the cell 306b is not an NBR status cell, it is a standard ATM information cell which is transferred It the cell scheduling and buffering circuitry 312, generally described in connection with
The various PLa values for each of the links coupled to the ATM node 300 are stored in a storage table 316. The PLfb,f field 256 is set 314 to a value equivalent to the PLa value in table 316 when PLa is less than the value currently residing in the PLfb,f field 256. Otherwise, the PLfb,f field 256 remains unchanged Whether the PLfb,f field 256 is modified or not, the status cell 306d is provided to the cell scheduling and buffering circuitry 312 to be filtered and buffered like any standard ATM cell. Cells output the node 300 at output links 318, where the status cell 306e of this example is shown exiting node 300 via link 320. In one embodiment, a cell scheduling and buffering block 312 is provided for each output of the node, such that each cell scheduling and buffering block 312 operates independently of other cell scheduling and buffering blocks (not shown) at the node.
In
The status cell may encounter more nodes 412 as it progresses towards its destination. Where more intermediary nodes are in the path of the status cell, each of the intermediary nodes must detect 402 the status cell, and the PLfb f field 256 is set accordingly 404, 406, 408, 410. Where no more intermediary nodes are encountered from source to destination, the status cell, and the current load indication PLfb is returned 414 to the source end system. In one embodiment, the value in the PLfb,f field 256 is placed into the backward priority level feedback field PLfb,b 258 prior to the cell's departure from the destination end-system 208. This allows new network load information to be gathered in the PLfb,f field 256 on the return connection without corrupting the network load information gathered on the source-to-destination connection.
When the source end-system 206 receives the returned status information, it can modify its current traffic parameters to optimize cell transmission. Where the returned status indicates that the cell traffic is relatively low 416, the user may decrease 418 the priority of newly issued ATM data cells to reflect a priority level that will likely be accepted at each of the nodes of the connection. Similarly, where the cell traffic appears to be relatively high 420, the user may increase 422 the priority of newly issued data cells. This allows adjustment of the confidence level that data cells will not be discarded at any node along the connection. The returned status is therefore used to allow the user to adjust the cell transfer rate (CTR) of cells exiting the source end-system 206 to the network.
In one embodiment, the period over which the minimum PLa value is monitored is calculated by monitoring the number of cells entering the ATM node, and selecting the minimum PLa from a "window" of ATM cells corresponding to a predetermined number of cells entering the ATM node. The window of cells has a size 10 determined by:
where, c is the rate of cells arriving at the ATM node, and t0 is the observation time period. The smallest accepted priority level PLa value inside this window of size 1 represented by dimension line 500, is compared with the PLfb,f value carried in each cell. In the example of
where i=1, 2, . . . , l0.
The size l0 of the window may be set to any desired value to provide varying degrees of accuracy. Therefore, while 10 may be set as low as one, a particular embodiment sets the window size 10 to approximately correspond to the time delay of a round-trip cell path between the source and the destination. However, the observed time interval to may be set to a much larger time if providing long-term statistical priority feedback information to the source is desired Referring now to
As illustrated in
where, l0 is the number of cells inside the window, and Int represents the nearest integer value of the resulting average.
Referring again to
where, the total sum of weights is
As seen in
For purposes of illustration, and not of limitation, examples are provided below to illustrate the relationship between the quality of service of an NBR or SIMA connection and throughput at different priority levels. The following examples demonstrate, in accordance with one embodiment, the relative differences,; in QoS with respect to adjacent priorities, such as the QoS associated with PL=4 in comparison to that of PL=3. It is noted that a higher cost or fee is typically assessed to users who request a higher priority for cells transmitted from the user's user/network interface. By way of example, the user fee may be doubled if the user wants to obtain one degree of higher priority for every cell without changing the actual bit rate. The resulting QoS of the connection, therefore, should be improved such that at least some users are willing to pay the additional charge.
In accordance with this illustrative example, the following assumptions and consideration are given. It is assumed that there are many identical traffic sources which generate traffic independent of the current or previous load conditions in the network. The following traffic parameters are assumed: the link capacity is C=1, which is useful in the examples as a means of normalization; the peak bit rate MBR=0. 1, which represents 10 percent of the link capacity, C; the ON probability at the burst (or packet) scale=0.2; and the average burst duration=1,000 time slots (i.e., the average packet size=100 cells). In addition, it is assumed that there is an upper ON/OFF layer, and that both the average ON-period and OFF-period of this layer are 100,000 time slots, The real time buffer 93 contains 200 cell locations and the non-real-time buffer 94 contains 5,000 cell locations. It is noted that the upper ON/OFF layer attempts to model the traffic process of connections, in which the determination of the number of connections is understood in the art to constitute a stochastic, random process. For example, if it is assumed that the total number of customers is represented by the variable x, then the average number of connections is x/2. More particularly, the number of connections is understood to be binomially distributed As such, 100,000 time slots represent the average holding time of a connection, and, also, the average idle period realizable by the user. As a consequence, a user is transmitting cells only if a connection is active both at the connection layer and the packet layer. A time scale parameter, a, can be obtained for the real-time and non-real-time connections:
In this example, eight different connection types are assumed: four connections are real-time connections and four are non-real-time connections. Also, four different NBR values, which have been normalized with respect the link capacity of C=1, are assumed as: 0.2, 0.1, 0.05 and 0.025. The priorities corresponding to these NBR values, with MBRMAX=0.1, are 3, 4, 5 and 6, respectively. It should be noted, however, that not all cells are assigned these exact priorities, and that especially with non-real-time connections, many cells obtain better priority values because of the affects of the averaging measuring principle. The distribution of cells having different priority levels, represented as percentages, is presented below in Table 2:
TABLE 2 | ||
REAL (SIMULATED) | ||
PRIORITY | PERCENTAGE OF | PERCENTAGE BASED |
LEVEL | OFFERED CELLS | ON PEAK RATES |
1 | 6.1 | 0 |
2 | 7.9 | 0 |
3 | 24.3 | 25 |
4 | 23.5 | 25 |
5 | 21.5 | 25 |
6 | 16.8 | 25 |
In
Given, for example, a traffic scenario where the operator wants to offer a cell loss ratio of 10-6 to cells with priority 4, the total load can be approximately 0.75. It can be assumed that this average cell loss ratio is sufficient for most video applications. Give the same traffic load conditions, priority level 5 which corresponds to Ploss≈10-4, can meet the requirements of many voice applications, while priority 6, which corresponds to Ploss≈3.10-3, is suitable for a TCP/IP type of file transfer, provided that there is an adequate packet discarding scheme in place.
It should be emphasized, however, that the difference in cell loss ratio between adjacent priorities depends strongly on the offered traffic process and, in particular, the inherent control loops of the NBR or SIMA service. When the user perceives an unsatisfactory QoS, for example, the user can, and should, change either the actual bit rate or the nominal bit rate of the connection. In either case, tie priority distribution changes as well. Nevertheless, if this phenomenon is temporarily ignored, the basic behavior of priority distribution may be flier appreciated by making the following simplifying assumption: If it is assumed that all traffic variations are slow as compared to the measuring period and buffer size, then a well-known, conventional ATM approach to approximating cell loss ratio may be used, with the additional requirement that the eight NBR priority levels are taken into account.
If the loss ratio of cells with priority k is denoted by Ploss,k, and the average loss ratio of cells with a priority of 0 to k is denoted by P*loss,k, then the following equation, which ignores buffering effect, provides that
where, λ*k represents the momentary bit rate level of all cells with a priority of 0 to k, ρ*k represents the average offered load produced by these cells, and c represents the link capacity. The probability Pr{λ*k=λj} can be calculated in a straightforward manner using known convolution techniques.
For purposes of further illustration, a second example is provided which assumes the same sources described in Example #1, except for the long ON and OFF periods. Because of the long periods reflected in Example #1, the peak rate always determines the cell priority. As the buffers are typically not capable of filtering any traffic variations, the allowed load in Example #2 is much lower than that in the original case of Example #1.
In
In a network that embraces the NBR/SIMA service concept, an increase of traffic variations has two main effects if the operator keeps the QoS of priority level 4 unchanged. First, the allowed load level is decreased in the same way as in conventional ATM, and second, the difference in cell loss ratio between adjacent priority level decreases. For purposes of providing a rough estimate of QoS based on
1 Although the above examples provide illustrations of relationships between QoS and priority levels, it may be unfruitful to attempt to exactly determine the allowed load or the cell loss difference between adjacent priority levels until user reactions to different QoS and usage charges are evaluated. In an NBR/SIMA service environment, a schedule of charges based on different QoS levels may be determined, in a certain sense, automatically. For example, if the difference in cell loss ratio between priority levels 4 and 5 is very small, it can be assumed that some of the connections will tend to move from priority level 4 to level 5 because of a lower assessed charge. This change indicates, apparently, that the cell loss ratio of priority level 4 decreases and the cell loss ratio of priority level 5 increases. It can be reasonably assumed that this type of movement continues until the QoS difference corresponds to the average user's expectation of a reasonable charging structure.
Similar concerns are raised with regard to the differences in charging which occur automatically during busy hours in contrast to idle hours. For example, it would appear reasonable to charge higher prices during periods of high load for a certain QoS, and charge lower prices during low load periods. However, it is believed desirable to avoid instigating a charging policy that assesses different fees for a certain NBR during busy and idle periods, which also avoids increasing the complexity of the charging scheme. The naturally occurring "supply and demand" effect may tend to automatically even out the load between busy and idle hours. It is anticipated that, if a user is displeased with the observable difference in QoS during busy and idle periods, the user may be motivated to pay a different rate during such periods.
Another important transmission control aspect is the modification and adjustment of the cell transfer rate, or similarly, the measured bit rate (MBR). It is; possible to provide those sources, which are able to change their bit rate, information about the current load condition on their respective connections. This example provides a performance outlook for these connections.
For the present example, the background traffic process generated lay the sources previously described in Examples #1 and #2 is used It is also assumed that there are 10 connections of each type, thereby providing an average background load of r=0.080. There are also three sources (hereinafter referred to as feedback sources FBS1, FBS2 and FBS3) that adjust their transmission rate according to the feedback information received via the network status cells. All of these feedback sources are assumed to have an NBR of 0.01.
The feedback sources are similar to each other, except for their time periods which are used in determining PLfb information. More specifically, the feedback source time periods are 10,000 time slots for FBS1, 30,000 time slots for FBS2, and 100,000 time slots for FBS3. For comparison purposes to the feedback sources, three constant bit rate connections (source connections C4, C5 and C6) are also discussed, which have the following parameters (link capacity=1):
TABLE 3 | ||||
Bit-rate/NBR | NBR | Priority Level (PL) | ||
C4 | 1.4 | 0.01 | 4 | |
C5 | 2.8 | 0.01 | 5 | |
C6 | 5.5 | 0.01 | 6 | |
The cell sources in Table 3 are set such that they transmit at a rate that is slightly less than the threshold that borders the next higher priority level. For example, using Equation [1] above, a bit rate/NBR ratio equal to 1.5 would result in a cell priority level of 5 (integer portion of 5.08), while a bit rate/NBR ratio of 1.4 yields a cell priority level of 4 (integer portion of 4.98). The feedback sources have been set to the same bit rate values in this example in order to optimally utilize the network capacity.
In
Another aspect to be considered involves the ability of the connections to be adjusted in during periods of sudden capacity changes, as well as how the capacity division between different feedback connections will be managed. Referring now to
As can be seen in
It will, of course, be understood that various modifications and additions can be made to the various embodiments discussed hereinabove without departing from the scope or spirit of the present invention. Accordingly, the scope of the present invention should not be limited by the particular embodiments discussed above, but should be defined only by the claims set forth below and equivalents thereof.
Kilkki, Matti Kalevi, Saari, Jarmo Ilkka, Taskinen, Timo Ilmari
Patent | Priority | Assignee | Title |
10044515, | Dec 17 2010 | Microsoft Technology Licensing, LLC | Operating system supporting cost aware applications |
10075351, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for improving network performance |
10110436, | Dec 08 1998 | NOMADIX, INC. | Systems and methods for providing content and services on a network system |
10178241, | Jan 23 2014 | Level 3 Communications, LLC | Telecommunication price-based routing apparatus, system and method |
10182016, | Apr 05 2013 | KYNDRYL, INC | Virtual quantized congestion notification |
10230788, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for selecting a content delivery network |
10298476, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for tracking application resource usage |
10341243, | Dec 08 1998 | NOMADIX, INC. | Systems and methods for providing content and services on a network system |
10469385, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for improving network performance using a connection admission control engine |
10560494, | Jun 30 2006 | CenturyLink Intellectual Property LLC | Managing voice over internet protocol (VoIP) communications |
10575174, | Dec 16 2010 | Microsoft Technology Licensing, LLC | Secure protocol for peer-to-peer network |
11265264, | Oct 17 2016 | International Business Machines Corporation | Systems and methods for controlling process priority for efficient resource allocation |
6560243, | Apr 30 1999 | Hewlett Packard Enterprise Development LP | System and method for receiver based allocation of network bandwidth |
6580691, | Feb 19 1997 | Corvil Limited | Data networks |
6625266, | Dec 16 1997 | RPX Corporation | Event pre-processing for composing a report |
6728266, | Dec 23 1999 | CIENA LUXEMBOURG S A R L ; Ciena Corporation | Pricing mechanism for resource control in a communications network |
6741685, | Sep 29 2000 | Viavi Solutions Inc | Billing systems and methods for communication networks providing differentiated services |
6757737, | Dec 05 2000 | Korea Telecommunication Authority | Apparatus and method for providing measured rate system in IP network |
6868399, | Oct 22 1999 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for integrating a network gateway device with management systems |
6917610, | Dec 30 1999 | AT&T Corp. | Activity log for improved call efficiency |
6978257, | Jan 31 2000 | International Business Machines Corporation | System and method for measuring and pricing midrange computer server outsourcing services |
7002922, | Mar 31 1999 | Sony Corporation; NTT Communications Corporation | Communication network specific charging method and communication network specific charging apparatus |
7013296, | Jun 08 1999 | The Trustees of Columbia University in the City of New York | Using electronic security value units to control access to a resource |
7020628, | Jan 16 1998 | SBC HOLDINGS PROPERTIES, L P ; AMERITECH PROPERTIES, INC ; SBC PROPERTIES, L P | Method and system for tracking computer system usage through a remote access security device |
7068662, | Jul 02 2001 | Siemens Aktiengesellschaft | Establishing a broadband connection that saves resources and satisfies billing conditions |
7140039, | Jun 08 1999 | TRUSTEES OF COLUMBIA UNIVERISTY IN THE CITY OF NEW YORK, THE | Identification of an attacker in an electronic system |
7159027, | Nov 14 2000 | UNIVERSITY OF TEXAS SYSTEM BOARD OF REGENTS, THE | Method and device for communicating data within a network by combining different communication approaches |
7181421, | Jan 16 1998 | SBC Properties, L.P. | Method and system for tracking computer system usage through a remote access security device |
7222193, | Jun 22 1999 | Computer network payment system | |
7269185, | May 22 2000 | RPX CLEARINGHOUSE LLC | Management and control of multi-layer networks |
7272855, | Jun 08 1999 | TRUSTEES OF COLUMBIA UNIVERSITY IN THE CITY OF NEW YORK, THE | Unified monitoring and detection of intrusion attacks in an electronic system |
7281044, | Jan 10 2002 | Hitachi, Ltd. | SAN infrastructure on demand service system |
7307950, | Nov 10 2000 | Telefonaktiebolaget LM Ericsson | Method in a communication system |
7313230, | May 26 2003 | CHENGDU HUAWEI TECHNOLOGIES CO , LTD | General charging method |
7319673, | Jun 05 1998 | British Telecommunications public limited company | Communications network |
7353212, | May 23 2000 | Microsoft Technology Licensing, LLC | Method and structure for assigning a transaction cost |
7366494, | Aug 01 1998 | Samsung Electronics Co., Ltd | Billing method in electronic switch in a cellular network |
7376729, | Mar 23 2000 | FREEBIT CO , LTD | System for internet connections, method for calculating connection fees for network connection services, billing system for network connection services, and system for network connection management |
7388867, | Feb 19 1997 | Corvil Limited | Data networks |
7426471, | Jun 05 1998 | British Telecommunications public limited company | Communications network |
7436816, | Feb 26 2001 | Google Technology Holdings LLC | Method and system for transmission-based billing of applications |
7466657, | Jun 08 1998 | KONINKLIJKE KPN N V | System for charging the use of a packet-based telecommunication network |
7499968, | Apr 12 2004 | Oracle America, Inc | System and method for application resource utilization metering and cost allocation in a utility computing environment |
7519665, | Mar 30 2000 | Fujitsu Limited | Multi-channel processing control device and multi-channel processing control method |
7535853, | Jun 05 1998 | British Telecommunications public limited company | Communications network |
7590228, | May 26 2003 | CHENGDU HUAWEI TECHNOLOGIES CO , LTD | General charging method |
7623636, | May 26 2004 | NOKIA SOLUTIONS AND NETWORKS GMBH & CO KG | System for generating service-oriented call-charge data in a communication network |
7640348, | Sep 21 2001 | Corel Corporation | System and method of managing access to web services |
7680103, | Mar 09 2004 | NOKIA SOLUTIONS AND NETWORKS OY; HMD Global Oy | Device and method for billing connections that are routed via a packet network |
7689716, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing dynamic network authorization, authentication and accounting |
7739159, | Nov 23 1998 | Cisco Technology, Inc | Aggregation of user usage data for accounting systems in dynamically configured networks |
7747240, | Jun 05 1998 | British Telecommunications public limited company | Method of charging in a communications network |
7752434, | Sep 21 2001 | Corel Corporation | System and method for secure communication |
7843831, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for routing data on a packet network |
7865410, | Nov 23 1998 | Cisco Technology, Inc. | Aggregation of user usage data for accounting systems in dynamically configured networks |
7890082, | Oct 26 2007 | AT&T MOBILITY II LLC | Method and apparatus for billing telecommunications services |
7924740, | Mar 08 2002 | RPX Corporation | Method of configuring at least one user-specific connection between access points to a transmission network which are connectable to user-located network devices, and apparatus therefor |
7937459, | Dec 13 2001 | WSOU Investments, LLC | Method and system for collecting counter data in a network element |
7940735, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for selecting an access point |
7948909, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for resetting counters counting network performance information at network communications devices on a packet network |
8000318, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for call routing based on transmission performance of a packet network |
8015294, | Aug 22 2006 | CenturyLink Intellectual Property LLC | Pin-hole firewall for communicating data packets on a packet network |
8027339, | Mar 12 1997 | GATE WORLDWIDE HOLDINGS LLC | System and method for establishing network connection |
8040811, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for collecting and managing network performance information |
8064391, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring and optimizing network performance to a wireless device |
8068425, | Apr 09 2008 | CenturyLink Intellectual Property LLC | System and method for using network performance information to determine improved measures of path states |
8098579, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for adjusting the window size of a TCP packet through remote network elements |
8102770, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring and optimizing network performance with vector performance tables and engines |
8107366, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for using centralized network performance tables to manage network communications |
8111692, | May 31 2007 | CenturyLink Intellectual Property LLC | System and method for modifying network traffic |
8116205, | Aug 31 2001 | Continental Automotive Systems, Inc. | Vehicle active network |
8125897, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring and optimizing network performance with user datagram protocol network performance information packets |
8130793, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for enabling reciprocal billing for different types of communications over a packet network |
8135636, | Nov 25 2003 | KYNDRYL, INC | System for metering in an on-demand utility environment |
8144586, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for controlling network bandwidth with a connection admission control engine |
8144587, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for load balancing network resources using a connection admission control engine |
8156246, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
8184549, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for selecting network egress |
8189468, | Oct 25 2006 | CenturyLink Intellectual Property LLC | System and method for regulating messages between networks |
8194555, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for using distributed network performance information tables to manage network communications |
8194643, | Oct 19 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring the connection of an end-user to a remote network |
8199653, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for communicating network performance information over a packet network |
8213366, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring and optimizing network performance to a wireless device |
8223654, | Aug 22 2006 | CenturyLink Intellectual Property LLC | Application-specific integrated circuit for monitoring and optimizing interlayer network performance |
8224255, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for managing radio frequency windows |
8228791, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for routing communications between packet networks based on intercarrier agreements |
8238253, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring interlayer devices and optimizing network performance |
8244886, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
8266266, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing dynamic network authorization, authentication and accounting |
8266269, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
8274905, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for displaying a graph representative of network performance over a time period |
8289965, | Oct 19 2006 | CenturyLink Intellectual Property LLC | System and method for establishing a communications session with an end-user based on the state of a network connection |
8302163, | Sep 21 2001 | Corel Corporation | System and method for secure communication |
8307065, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for remotely controlling network operators |
8358580, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for adjusting the window size of a TCP packet through network elements |
8364806, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
8370477, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
8374090, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for routing data on a packet network |
8407765, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for restricting access to network performance information tables |
8472326, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring interlayer devices and optimizing network performance |
8472499, | Dec 18 2007 | Honeywell International Inc. | Adaptive multi-channel integrated wireless network system architecture |
8473376, | Mar 23 2005 | Hewlett Packard Enterprise Development LP | System, method, and computer program product for byte-based utility computing pricing |
8477614, | Jun 30 2006 | EMBARQ HOLDINGS COMPANY LLC, A DELAWARE LIMITED LIABILITY COMPANY | System and method for routing calls if potential call paths are impaired or congested |
8488447, | Jun 30 2006 | EMBARQ HOLDINGS COMPANY LLC, A DELAWARE LIMITED LIABILITY COMPANY | System and method for adjusting code speed in a transmission path during call set-up due to reduced transmission performance |
8488495, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for routing communications between packet networks based on real time pricing |
8509082, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for load balancing network resources using a connection admission control engine |
8520603, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring and optimizing network performance to a wireless device |
8531954, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for handling reservation requests with a connection admission control engine |
8533674, | Sep 12 2000 | CLOUDING CORP | Method, system and apparatus for providing pay-per-use distributed computing resources |
8537695, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for establishing a call being received by a trunk on a packet network |
8549405, | Aug 22 2006 | EMBARQ HOLDINGS COMPANY LLC, A DELAWARE LIMITED LIABILITY COMPANY | System and method for displaying a graphical representation of a network to identify nodes and node segments on the network that are not operating normally |
8570872, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for selecting network ingress and egress |
8576722, | Aug 22 2006 | Embarq Holdings Company, LLC | System and method for modifying connectivity fault management packets |
8594107, | Mar 12 1997 | NOMADIX, INC. | System and method for establishing network connection |
8595478, | Jul 10 2000 | AlterWAN Inc. | Wide area network with high quality of service |
8606917, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
8613053, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | System and method for authorizing a portable communication device |
8615455, | Nov 25 2003 | KYNDRYL, INC | System for metering in an on-demand utility environment |
8619596, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for using centralized network performance tables to manage network communications |
8619600, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for establishing calls over a call path having best path metrics |
8619820, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for enabling communications over a number of packet networks |
8670313, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for adjusting the window size of a TCP packet through network elements |
8687614, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for adjusting radio frequency parameters |
8713641, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for authorizing, authenticating and accounting users having transparent computer access to a network using a gateway device |
8717911, | Jun 30 2006 | Embarq Holdings Company, LLC | System and method for collecting network performance information |
8725888, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
8725899, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
8743700, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for provisioning resources of a packet network based on collected network performance information |
8743703, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for tracking application resource usage |
8750158, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for differentiated billing |
8788690, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
8799480, | Jul 19 2010 | RIBBON COMMUNICATIONS SECURITIES CORP | Content pre-fetching and CDN assist methods in a wireless mobile network |
8811160, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for routing data on a packet network |
8879391, | Apr 09 2008 | CenturyLink Intellectual Property LLC | System and method for using network derivations to determine path states |
8923770, | Dec 09 2010 | Microsoft Technology Licensing, LLC | Cognitive use of multiple regulatory domains |
8948382, | Dec 16 2010 | Microsoft Technology Licensing, LLC | Secure protocol for peer-to-peer network |
8958421, | Apr 27 2006 | WSOU Investments, LLC | Communications in relay networks |
8971841, | Dec 17 2010 | Microsoft Technology Licensing, LLC | Operating system supporting cost aware applications |
8976665, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for re-routing calls |
9008610, | Dec 17 2010 | Microsoft Technology Licensing, LLC | Operating system supporting cost aware applications |
9014204, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for managing network communications |
9015471, | Jul 10 2000 | AlterWAN, Inc. | Inter-autonomous networking involving multiple service providers |
9032056, | Sep 05 2003 | WSOU Investments, LLC | Device for processing the measurements of parameters and/or of traffic streams, for local accounting of the use of resources, for an equipment element in a communication network |
9042370, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for establishing calls over a call path having best path metrics |
9054915, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for adjusting CODEC speed in a transmission path during call set-up due to reduced transmission performance |
9054986, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for enabling communications over a number of packet networks |
9094257, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for selecting a content delivery network |
9094261, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for establishing a call being received by a trunk on a packet network |
9112734, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for generating a graphical user interface representative of network performance |
9118583, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for re-routing calls |
9154634, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for managing network communications |
9160672, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for controlling user perceived connection speed |
9178652, | Dec 09 2010 | Microsoft Technology Licensing, LLC | Cognitive use of multiple regulatory domains |
9225609, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for remotely controlling network operators |
9225646, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for improving network performance using a connection admission control engine |
9240906, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring and altering performance of a packet network |
9241271, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for restricting access to network performance information |
9241277, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring and optimizing network performance to a wireless device |
9253661, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for modifying connectivity fault management packets |
9294545, | Dec 16 2010 | Microsoft Technology Licensing, LLC | Fast join of peer to peer group with power saving mode |
9338309, | Dec 17 2010 | Microsoft Technology Licensing, LLC | Operating system supporting cost aware applications |
9426230, | Sep 08 2005 | Deere & Company | System and method for anticipatory downloading of data |
9450995, | Dec 14 2010 | Microsoft Technology Licensing, LLC | Direct connection with side channel control |
9462479, | Dec 09 2010 | Microsoft Technology Licensing, LLC | Cognitive use of multiple regulatory domains |
9479341, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for initiating diagnostics on a packet network node |
9491308, | Jan 23 2014 | Level 3 Communications, LLC | Telecommunication price-based routing apparatus, system and method |
9491312, | Jan 23 2014 | Level 3 Communications, LLC | Telecommunication price-based routing apparatus, system and method |
9521150, | Apr 27 2012 | CenturyLink Intellectual Property LLC | System and method for automatically regulating messages between networks |
9525620, | Jul 10 2000 | AlterWAN, Inc. | Private tunnel usage to create wide area network backbone over the internet |
9542203, | Dec 06 2010 | Microsoft Technology Licensing, LLC | Universal dock for context sensitive computing device |
9544445, | Jan 23 2014 | Level 3 Communications, LLC | Telecommunication price-based routing apparatus, system and method |
9548935, | Dec 08 1998 | GATE WORLDWIDE HOLDINGS LLC | Systems and methods for providing content and services on a network system |
9549004, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for re-routing calls |
9559938, | Sep 12 2000 | CLOUDING CORP | Method, system and apparatus for providing pay-per-use distributed computing resources |
9596220, | Dec 16 2010 | Microsoft Technology Licensing, LLC | Secure protocol for peer-to-peer network |
9596360, | Jan 23 2014 | Level 3 Communications, LLC | Telecommunication price-based routing apparatus, system and method |
9602265, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for handling communications requests |
9621361, | Aug 22 2006 | CenturyLink Intellectual Property LLC | Pin-hole firewall for communicating data packets on a packet network |
9660917, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for remotely controlling network operators |
9661514, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for adjusting communication parameters |
9667534, | Jul 10 2000 | AlterWAN, Inc. | VPN usage to create wide area network backbone over the internet |
9712445, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for routing data on a packet network |
9749399, | Jun 30 2006 | CenturyLink Intellectual Property LLC | System and method for selecting a content delivery network |
9801074, | Dec 09 2010 | Microsoft Technology Licensing, LLC | Cognitive use of multiple regulatory domains |
9806972, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for monitoring and altering performance of a packet network |
9813320, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for generating a graphical user interface representative of network performance |
9813466, | Dec 14 2010 | Microsoft Technology Licensing, LLC | Direct connection with side channel control |
9832090, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System, method for compiling network performancing information for communications with customer premise equipment |
9838440, | Jun 30 2006 | CenturyLink Intellectual Property LLC | Managing voice over internet protocol (VoIP) communications |
9870028, | Dec 06 2010 | Microsoft Technology Licensing, LLC | Universal dock for context sensitive computing device |
9929923, | Aug 22 2006 | CenturyLink Intellectual Property LLC | System and method for provisioning resources of a packet network based on collected network performance information |
9942416, | Jan 23 2014 | Level Communications, LLC | Telecommunication price-based routing apparatus, system and method |
9985800, | Jul 10 2000 | AlterWAN, Inc. | VPN usage to create wide area network backbone over the internet |
9992348, | Aug 22 2006 | Century Link Intellectual Property LLC | System and method for establishing a call on a packet network |
9998522, | Dec 16 2010 | Microsoft Technology Licensing, LLC | Fast join of peer to peer group with power saving mode |
Patent | Priority | Assignee | Title |
4868758, | Feb 08 1986 | Canon Kabushiki Kaisha | Data communication system |
5430794, | Jun 18 1992 | Kabushiki Kaisha Toshiba | Call charge management device in private branch exchange system |
5444713, | Sep 14 1993 | AVAYA Inc | Telephone information service system using digital and out-of-band signaling |
5481534, | Sep 27 1991 | AT&T IPM Corp | Data packet switch apparatus and method with enhanced charge assessment capability |
5600643, | Sep 23 1993 | Intellectual Ventures II LLC | Broadband intelligent telecommunications network and method providing enhanced capabilities for customer premises equipment |
5623405, | Jul 24 1991 | Fujitsu Limited | Accounting system and method for asynchronous transfer mode network |
5694459, | Oct 02 1995 | Cooper Union for the Advancement of Science and Art | Personalized information service system |
5751799, | Feb 17 1994 | Fujitsu Limited | Method and device for charging during data communication time in a data switching network |
5894475, | Jun 28 1996 | AT&T Corp. | Switched voice and data ATM network with billing system |
5943320, | Dec 16 1995 | Alcatel | Method of charging for the use of a telecommunications service, as well as a switching system, a service control point, and a network management facility |
WO9726739, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Oct 06 1997 | Nokia Telecommunications, Oy | (assignment on the face of the patent) | / | |||
Feb 09 1998 | SAARI, JARMO ILKKA | Nokia Telecommunications, Oy | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009026 | /0927 | |
Feb 09 1998 | TASKINEN, TIMO ILMARI | Nokia Telecommunications, Oy | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009026 | /0927 | |
Feb 13 1998 | KILKKI, MATTI KALEVI | Nokia Telecommunications, Oy | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 009026 | /0927 |
Date | Maintenance Fee Events |
Jun 16 2005 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Jul 12 2007 | RMPN: Payer Number De-assigned. |
Jul 20 2009 | REM: Maintenance Fee Reminder Mailed. |
Jan 08 2010 | EXP: Patent Expired for Failure to Pay Maintenance Fees. |
Date | Maintenance Schedule |
Jan 08 2005 | 4 years fee payment window open |
Jul 08 2005 | 6 months grace period start (w surcharge) |
Jan 08 2006 | patent expiry (for year 4) |
Jan 08 2008 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jan 08 2009 | 8 years fee payment window open |
Jul 08 2009 | 6 months grace period start (w surcharge) |
Jan 08 2010 | patent expiry (for year 8) |
Jan 08 2012 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jan 08 2013 | 12 years fee payment window open |
Jul 08 2013 | 6 months grace period start (w surcharge) |
Jan 08 2014 | patent expiry (for year 12) |
Jan 08 2016 | 2 years to revive unintentionally abandoned end. (for year 12) |