APPARATUS AND METHOD FOR TRANSLATING QoS PARAMETERS FOR PER-SERVICE CATEGORY AGGREGATION

Abstract: An apparatus (1410) and method (300) for aggregating ATM virtual channels (1420) into virtual paths in order to gain bandwidth efficiency in the ATM network (1470). Virtual channels (1420) are aggregated into virtual paths (1430) according to ATM Service Category and further by ATM Traffic Descriptors (1440) and QoS Parameters (1450). An efficient set of QoS requirements (1450) for the virtual path are determined by the QoS requirements of the constituent virtual channels (1460).

Description: Apparatus and Method for Translating QoS Parameters for Per-Service Category Aggregation Cross-Reference to Related Applications This application is related to the following U.S. application, which is owned by the same assignee as the assignee of this application and which is incorporated by reference herein in its entirety: System, Device, and Method for Aggregating Users in a Shared-Medium Network (applicant docket number CX096051), to Whay Chiou Lee and Krishnan Ramakrishnan, filed on even date herewith. Background 1 . Field of the Invention The invention relates generally to communication systems and, more particularly, to aggregating ATM virtual channels to allow for efficient allocation and utilization of available network bandwidth. 2. Discussion of Related Art In today's information age, there is an increasing need for high speed communications that provides guaranteed quality of service (QoS) for an ever-increasing number of communications consumers. To that end, communications networks and technologies are evolving to meet current and future demands. Specifically, new networks are being deployed which reach a larger number of end users, and protocols are being developed to utilize the added bandwidth of these networks efficiently. One technology that will be employed increasingly in future communications networks is Asynchronous Transfer Mode (ATM). ATM is a communications protocol that uses fixed-size cells to carry information from a number of applications across the communications network. ATM was designed to meet the needs of advanced high-speed communications networks. Specifically, the use of fixed-size cells facilitates the routing function of intermediate switches within the communications network so that the switches do not become "bottlenecks" in the network. The use of fixed-size cells also facilitates implementation of QoS objectives within the communications network. An ATM network consists of a number of interconnected ATM switches which route ATM cells from a source ATM User to a destination ATM User. Each ATM User interfaces to the ATM network by means of an ATM Network Interface Unit (NIU). A unidirectional connection from the source ATM User (via a source NIU) to the destination ATM User (via a destination NIU) across the ATM network is called a Virtual Channel Connection (VCC). Each VCC has specific QoS requirements which can be characterized generally in terms of one of five ATM service categories, specifically Constant Bit Rate (CBR), Real-Time Variable Bit Rate (RT-VBR), Non-Real-Time Variable Bit Rate (NRT- VBR), Available Bit Rate (ABR), and Unspecified Bit Rate (UBR). In turn, each ATM service category is further characterized. Specifically, two sets of parameters are defined, one for specifying the type of traffic generated by the ATM User (ATM Traffic Descriptors), and the other for specifying the network services required by the ATM User (QoS Parameters). In order to establish a VCC, a signaling protocol is used by which a request for establishment of a VCC is made to the network. The QoS requirements of the VCC (i.e. ATM Service Category, ATM Traffic Descriptors, and QoS Parameters) are specified in the signaling protocol. A Connection Admission Control (CAC) function in the ATM network decides whether or not the request can be accepted based on the attributes of the requested connection and of the existing connections. If the network is unable to provide sufficient resources to meet the specified QoS requirements, then the network rejects the request, and no VCC is established. However, if the network is able to provide sufficient network resources to meet the specified QoS requirements, then the network accepts the request, and the VCC is established. In order to carry information from the source ATM User to the destination ATM User, the VCC traverses a number of ATM switches. The VCC is carried from one ATM switch to an adjacent ATM switch over a Virtual Channel Link (VCL). Each switch that connects VCLs is called a Virtual Channel Switch (VCS). A VCC can be thought of as a concatenation of a number of VCLs which together form an end-to-end connection from a source NIU to a destination NIU. Each VCL has a Virtual Channel Identifier (VCI). A concatenation of VCLs having the same VCI is called an ATM Virtual Channel (VC). A VC provides sequential unidirectional transport of ATM cells from a source ATM switch to a destination ATM switch which may or may not be an adjacent ATM switch. All cells carried by the VC enter at the source ATM switch and egress at the destination ATM switch, crossing all VCLs that make up the VC. Thus, a VCC can also be thought of as a concatenation of a number of VCs, where each VC represents a number of VCLs traversed by the VCC. ATM networks also support virtual connections at a level of Virtual Paths (VPs), where a VP is a unidirectional logical association or bundle of VCs having the same pair of end points in the network. A Virtual Path Terminator (VPT) is used to unbundle the VCs of a VP for independent processing of each VC. An ATM User who requests a VP service from the network may allocate individual VCs within a Virtual Path Connection (VPC) as long as none of the VCs is required to have a higher QoS than the VPC. Like VCCs, VPCs are established by means of a signaling protocol, and CAC is also used by the network to determine whether or not a VPC will be accepted or rejected. VPCs are very useful for traffic control and resource management in ATM networks. By reserving capacity on VPCs, the processing required to establish individual VCCs can be reduced. For example, CAC for individual VCCs can be significantly simplified. VPCs can also be used to segregate VCCs for policy reasons. However, improvements in traffic control and resource management can be realized at the expense of bandwidth efficiency. For example, where the constituent VCs have a wide range of QoS requirements, perhaps having different ATM Service Categories with varying ATM Traffic Descriptors and QoS Parameters, bandwidth is allocated to the VP to cover worst-case traffic requirements. As a result, the aggregate VP utilizes bandwidth inefficiently Thus, there is a need in the ATM network for an apparatus and method for simplifying CAC and connection management and for utilizing network resources efficiently in order to support additional VCs. Brief Description of the Drawing In the Drawing, FIG. 1 shows an exemplary embodiment of an ATM communications system for supporting individual Virtual Channels; FIG. 2 shows an exemplary embodiment of an ATM communications system for aggregating ATM Virtual Channels into Virtual Paths according to the end points of the Virtual Channels; FIG. 3 is a flow diagram for aggregating Virtual Channels into Virtual Paths; FIG. 4 shows an exemplary embodiment of a Virtual Channel Switch as is known in the prior art; FIG. 5 shows an exemplary embodiment of a Virtual Channel Switch in which Virtual Channels are aggregated according to their ATM Service Categories; FIG. 6 shows an exemplary embodiment of a Virtual Channel Switch in which Virtual Channels are aggregated by ATM Service Category at one level, and by ATM Traffic Descriptors and QoS Parameters at another level; FIG. 7 shows an exemplary embodiment of a Virtual Channel Switch in which a VBR connection is aggregated together with CBR connections; FIG. 8 is a flow diagram for determining the QoS requirements for an aggregate of CBR and CBR-like connections; FIG. 9 is a flow diagram for determining the QoS requirements for an aggregate of CBR-like RT-VBR connections; FIG. 10 is a flow diagram for determining the QoS requirements for an aggregate of "bursty" RT-VBR connections; FIG. 1 1 is a flow diagram for determining the QoS requirements for an aggregate of NRT-VBR connections; FIG. 12 is a flow diagram for determining the QoS requirements for an aggregate of ABR connections; FIG. 13 is a flow diagram for determining the QoS requirements for an aggregate of UBR connections; FIG. 14 is a block diagram of an apparatus for aggregating Virtual Channels into Virtual Paths according to the QoS requirements of the Virtual Channels; FIG. 15A is a block diagram showing aggregation of CBR and CBR-like connections; FIG. 15B is a block diagram showing aggregation of CBR-like RT-VBR connections; FIG. 15C is a block diagram showing aggregation of "bursty" RT-VBR connections; FIG. 15D is a block diagram showing aggregation of NRT-VBR connections; FIG. 15E is a block diagram showing aggregation of ABR connections; and FIG. 15F is a block diagram showing aggregation of UBR connections. Detailed Description As discussed above, there is a need in the ATM network for an apparatus and method for simplifying CAC and connection management and for utilizing network resources efficiently in order to support additional VCs. This invention simplifies CAC and connection management and utilizes network resources efficiently by aggregating VCs according to their QoS requirements in addition to their end points in the network. Specifically, a number of VCs having the same or similar QoS requirements are aggregated into a VP, and the VP is allocated sufficient network resources to allow the QoS objectives of each of its constituent VCs to be met. This type of aggregation allows the QoS requirements of the VP to be accurately determined, which allows the VP to be bandwidth efficient. Furthermore, such an aggregate VP simplifies management of the VP, since the aggregate bandwidth can be easily distributed to the constituent VCs. An exemplary embodiment of an ATM communications system 100 for supporting individual virtual channels is shown in FIG. 1. In this example, ATM network 140 supports six virtual channels by way of three VCSs, identified as VCSs 110, 120, and 130. Virtual channels identified as VC and VC 12 are supported by VCSs 110 and 120. Virtual channels identified as VC 21 and VC 22 are supported by VCSs 110 and 130. Virtual channels identified as VC 31 and VC 32 are supported by VCSs 120 and 130. In this example, ATM network 140 supports the virtual channels individually. An exemplary embodiment of an ATM communications system 200 for aggregating VCs into VPs according to the end points of the VCs is shown in FIG. 2. In this example, as in the example system 100, the ATM network 140 supports six VCs by way of three VCSs. However, in system 200, VCs having the same end points are aggregated into VPs. Thus, virtual channels VC and VC 12 are aggregated into virtual path VP 1 ( virtual channels VC 21 and VC 22 are aggregated into virtual path VP 2 , and virtual channels VC 31 and VC 32 are aggregated into virtual path VP 3 . As discussed above, aggregating VCs into VPs according to end points can be useful for traffic control and resource management in the ATM network. FIG. 3 is a flow diagram for aggregating VCs into VPs in accordance with the present invention. The method begins in step 310, and proceeds to step 320, where the method forms a VP from a number of VCs having similar QoS requirements. The method then determines the QoS requirements of the VP from the QoS requirements of the number of VCs, in step 330, and terminates in step 399. FIGS. 4 - 7 show a number of exemplary embodiments of a VCS 410 for aggregating VCs into VPs. In these examples, VCS 410 supports six VCs 420, through 420 6 , collectively referred to as VCs 420. Of the six VCs 420, two VCs (420, and 420 2 ) are CBR connections and four VCs (420 3 - 420 6 ) are RT-VBR connections. The VBR connections 420 3 - 420 6 are distinguished by their specific ATM Traffic Descriptors and QoS Parameters. Specifically, VBR connection 420 3 has PCR equal to 100, SCR equal to 75, and CDV equal to 10 microseconds; VBR connection 420 4 has PCR equal to 100, SCR equal to 50, and CDV equal to 20 microseconds; VBR connection 420 5 has PCR equal to 100, SCR equal to 25, and CDV equal to 20 milliseconds; and VBR connection 420 6 has PCR equal to 100, SCR equal to 10, and CDV equal to 15 milliseconds. FIG. 4 shows an exemplary embodiment of VCS 405 as is known in the prior art. In this example, the six VCs 420 are aggregated into a single VP 430. By aggregating VCs in this way, VP 430 must be allocated bandwidth to cover the worst-case traffic requirements of the VCs 420, which have widely varying QoS requirements. Thus, in this example, VP 430 will be extremely inefficient and difficult to manage. In one embodiment of the present invention, VCs are aggregated according to their ATM Service Categories. FIG. 5 shows an exemplary embodiment of VCS 505 in which the six VCs 420 are aggregated according to their ATM Service Categories. In this example, the two CBR connections 420, and 420 2 are aggregated into a first VP 510, and the four VBR connections 420 3 - 420 6 are aggregated into a second VP 520. By aggregating VCs in this way, VP 510 can be optimized for CBR connections, while VP 520 can be optimized for VBR connections. In another embodiment of the present invention, VCs are aggregated at a finer level according to their ATM Traffic Descriptors and QoS Parameters, in addition to their ATM Service Categories. FIG. 6 shows an exemplary embodiment of VCS 605 in which the six VCs 420 are aggregated by ATM Service Category at one level, and by ATM Traffic Descriptors and QoS Parameters at another level. In this example, the two CBR connections 420, and 420 2 are again aggregated into VP 510. However, the four VBR connections 420 3 - 420 6 are aggregated into two VPs 610 and 620 by bundling VBR VCs having similar QoS Parameters, in this case the Cell Delay Variation (CDV). The two VBR VCs having microsecond-level CDV requirements (VCs 420 3 and 420 4 ) are aggregated together into VP 610, and the two VBR VCs having millisecond-level CDV requirements (VCs 420 5 and 420 6 ) are aggregated together into VP 620. By aggregating VCs in this way, VP 610 can be optimized for providing CDV in the microsecond range, while VP 620 can be optimized for providing CDV in the millisecond range. In another embodiment of the present invention, certain VBR connections are aggregated together with CBR connections. As will be described below, RT-VBR connections having a ratio of SCR to PCR greater than 0.5 (referred to as CBR-like connections below) can be treated like CBR connections with little loss of efficiency. FIG. 7 shows an exemplary embodiment of VCS 705 in which a VBR connection is aggregated with CBR connections. In this example, the two CBR connections 420, and 420 2 are aggregated together with VBR connection 420 3 , which has a ratio of SCR to PCR greater than 0.5, to form VP 710. The remaining VBR connections 420 4 - 420 6 , all of which have a ratio of SCR to PCR less than or equal to 0.5, are aggregated into VP 720. As discussed above, each VP is allocated sufficient network resources so as to allow the VP to meet the QoS requirements of its constituent VCs. In other words, each VP has its own specific QoS requirements which are derived from the QoS requirements of its constituent VCs. The QoS requirements for a VP are based on, but are generally not identical to, the QoS requirements of each of the constituent VCs individually. In order to gain bandwidth efficiency through aggregation of VCs, the QoS requirements of a VP must be determined in such a way as to make the VP more efficient than the case of each VC acting individually. However, the prior art provides, at best, only broad guidelines for determining conservative (i.e. typically worst- case) QoS requirements of a VP given the QoS requirements of its constituent VCs. Thus, another aspect of the present invention involves determining the QoS requirements for a VP from the QoS requirements of its constituent VCs. Although any VCs having the same end points can be aggregated into a VP, the VP is preferrably an aggregate of VCs having the same or similar QoS requirements. Thus, the VP will typically be composed of VCs from the same ATM Service Category. Therefore, it is convenient to examine the translation of QoS requirements for per-service category aggregates. Note that, in the following discussion of QoS requirement translation, values specified as being the "lowest" of a group of values indicates a selection of the most stringent value from the group. CBR connections are characterized by the transmission of a constant stream of bits at a fixed bit rate. The ATM Traffic Descriptor for CBR connections is the Peak Cell Rate (PCR). The QoS parameters for the CBR service category are the Maximum Cell Transfer Delay (MaxCTD), Cell Delay Variation (CDV), and Cell Loss Ratio (CLR). The MaxCTD includes the access delay and propagation delay of the underlying communications network. In one embodiment, a number of CBR (or CBR-like) connections are aggregated into an aggregate CBR connection (CBR- like connections are discussed below). The PCR for the aggregate (PCR agg ) is set equal to the sum of the PCRs of all constituent VCs, the MaxCTD for the aggregate (MaxCTD agg ) is set equal to the MaxCTD of the constituent connection having the lowest MaxCTD, the CDV for the aggregate (CDV agg ) is set equal to the CDV of the constituent connection having the lowest CDV, and the CLR for the aggregate (CLR agg ) is set equal to the CLR of the constituent connection having the lowest CLR. FIG. 8 is a flow diagram 800 for determining the QoS requirements for an aggregate of CBR and CBR-like connections. The method begins in step 810, and proceeds to step 820, where the method sets the PCR for the VP equal to the sum of the PCRs of all constituent VCs. The method then proceeds to step 830, where the method sets the MaxCTD for the VP equal to the MaxCTD of the constituent connection having the lowest MaxCTD. The method then proceeds to step 840, where the method sets the CDV for the VP equal to the CDV of the constituent connection having the lowest CDV. The method then proceeds to step 850, where the method sets the CLR for the VP equal to the CLR of the constituent connection having the lowest CLR. Finally, the method terminates in step 899. RT-VBR connections are characterized by traffic having a variable bit rate and requiring real-time delivery of cells. The ATM Traffic Descriptors for RT-VBR connections are the Peak Cell Rate (PCR), Sustainable Cell Rate (SCR), and Maximum Burst Size (MBS). SCR represents the long-term average rate of the connection, while MBS is the maximum size of any burst (in cells) generated during the connection. The QoS parameters for RT-VBR connections are the same as those for CBR connections, namely MaxCTD, CDV, and CLR. In a typical RT-VBR connection, the traffic over the connection will have periods where cells are generated in bursts at the PCR and periods of silence where no cells are generated (voice and real-time video are good examples of RT-VBR traffic). In order to aggregate RT-VBR connections, it is convenient to further classify each connection according to the ratio of SCR to PCR for the connection. As the SCR approaches the PCR, the connection acts more and more like a CBR connection. If the ratio of SCR to PCR exceeds a predetermined value, for example 0.5, then the connection is considered to be a CBR-like connection that can be treated like a CBR connection with little loss of bandwidth efficiency. In one embodiment, a number of CBR-like connections are aggregated into an aggregate connection. The PCR for the aggregate (PCR agg ) is set equal to the sum of the PCRs of all constituent VCs, the SCR for the aggregate (SCR agg ) is set equal to the sum of the SCRs of all constituent VCs, and the MBS for the aggregate (MBS agg ) is set equal to the sum of the MBSs of all constituent VCs. In another embodiment, a number of CBR-like connections are aggregated together with CBR connections, as discussed above. However, if the ratio of SCR to PCR is less than or equal to the predetermined value, then the connection is considered to be a "bursty" connection. In this case, it would be inefficient to treat the "bursty" connection like a CBR connection, since the network would be reserving bandwidth which is only used 50% of the time or less. Instead, it is more efficient to aggregate these "bursty" connections separately from CBR-like connections. Thus, in one embodiment, a number of "bursty" connections are aggregated into an aggregate connection. The SCR for the aggregate (SCR agg ) is set equal to the sum of the SCRs of all constituent VCs and the MBS for the aggregate (MBS agg ) is set equal to the sum of the MBSs of all constituent VCs. The PCR for the aggregate (PCR agg ) is set equal to a weighted sum of the PCRs of all constituent VCs, such that the PCR agg is greater than the SCR agg but less than the sum of the PCRs of all constituent VCs. In one embodiment, the PCR agg is set equal to the average of two values, specifically SCR agg and the sum of the PCRs of all constituent VCs. This choice of PCR agg is sufficient for a large number of "bursty" RT-VBR aggregates. However, if MBS agg is large, then PCR agg must be set higher in order to compensate for large bursts. Therefore, in another embodiment, the PCR agg is a function of the MBS agg . In all RT-VBR aggregates, the MaxCTD for the aggregate (MaxCTD agg ) is set equal to the MaxCTD of the connection having the lowest MaxCTD, the CDV for the aggregate (CDV agg ) is set equal to the CDV of the connection having the lowest CDV, and the CLR for the aggregate (CLR agg ) is set equal to the CLR of the connection having the lowest CLR. FIG. 9 is a flow diagram 900 for determining the QoS requirements for an aggregate of CBR-like RT-VBR connections. The method begins in step 910, and proceeds to step 920, where the method sets the PCR for the VP equal to the sum of the PCRs of all constituent VCs. The method then proceeds to step 930, where the method sets the SCR for the VP equal to the sum of the SCRs of all constituent VCs. The method then proceeds to step 940, where the method sets the MBS for the VP equal to the sum of the MBSs of all constituent VCs. The method then proceeds to step 950, where the method sets the MaxCTD for the VP equal to the MaxCTD of the constituent connection having the lowest MaxCTD. The method then proceeds to step 960, where the method sets the CDV for the VP equal to the CDV of the constituent connection having the lowest CDV. The method then proceeds to step 970, where the method sets the CLR for the VP equal to the CLR of the constituent connection having the lowest CLR. Finally, the method terminates in step 999. FIG. 10 is a flow diagram 1000 for determining the QoS requirements for an aggregate of "bursty" RT-VBR connections. The method begins in step 1010, and proceeds to step 1020, where the method sets the SCR for the VP equal to the sum of the SCRs of all constituent VCs. The method then proceeds to step 1030, where the method sets the MBS for the VP equal to the sum of the MBSs of all constituent VCs. The method then proceeds to step 1040, where the method sets the PCR for the VP equal to a weighted sum of the PCRs of all constituent VCs. The method then proceeds to step 1050, where the method sets the MaxCTD for the VP equal to the MaxCTD of the constituent connection having the lowest MaxCTD. The method then proceeds to step 1060, where the method sets the CDV for the VP equal to the CDV of the constituent connection having the lowest CDV. The method then proceeds to step 1070, where the method sets the CLR for the VP equal to the CLR of the constituent connection having the lowest CLR. Finally, the method terminates in step 1099. NRT-VBR connections are similar to RT-VBR connections, except that real-time delivery of cells is not required. An efficient way to handle NRT-VBR connections is to provide sufficient bandwidth to meet the SCR requirements, while buffering bursts received at the PCR until they can be serviced at the SCR. In one embodiment, a number of NRT-VBR connections are aggregated into an aggregate NRT-VBR connection. The SCR for the aggregate (SCR agg ) is set equal to the sum of the SCRs of all constituent connections and the MBS for the aggregate (MBS agg ) is set equal to the sum of the MBSs of all constituent connections. The PCR for the aggregate (PCR agg ) is set equal to the larger of SCR agg and the PCR of the constituent connection having the highest PCR. The CLR for the aggregate (CLR agg ) is set equal to the CLR of the connection having the lowest CLR. FIG. 11 is a flow diagram 1100 for determining the QoS requirements for an aggregate of NRT-VBR connections. The method begins in step 1110, and proceeds to step 1120, where the method sets the SCR for the VP equal to the sum of the SCRs of all constituent VCs. The method then proceeds to step 1130, where the method sets the MBS for the VP equal to the sum of the MBSs of all constituent VCs. The method then proceeds to step 1140, where the method sets the PCR for the VP equal to the larger of the SCR for the VP and the PCR of the constituent connection having the highest PCR. The method then proceeds to step 1150, where the method sets the CLR for the VP equal to the CLR of the constituent connection having the lowest CLR. Finally, the method terminates in step 1199. ABR connections are characterized by traffic requiring a minimum cell rate, but willing to accept additional bandwidth if and when such additional bandwidth becomes available. The ATM Traffic Descriptors for ABR connections are the Minimum Cell Rate (MCR) and Peak Cell Rate (PCR), where MCR is the minimum guaranteed cell rate required by the connection and PCR is the maximum cell rate at which the connection can transmit if allowed by the network. Consequently, the transmission rate of the ABR connection lies somewhere between the MCR and the PCR. No QoS Parameters are defined for the ABR service category. In one embodiment, a number of ABR connections are aggregated into an aggregate ABR connection. The MCR for the aggregate (MCR agg ) is set equal to the sum of the MCRs of all constituent connections and the PCR for the aggregate (PCR agg ) is set equal to the sum of the PCRs of all constituent connections, but not exceeding the available channel bandwidth supporting the VP. FIG. 12 is a flow diagram 1200 for determining the QoS requirements for an aggregate of ABR connections. The method begins in step 1210, and proceeds to step 1220, where the method sets the MCR for the VP equal to the sum of the MCRs of all constituent VCs. The method then proceeds to step 1230, where the method sets the PCR for the VP equal to the lesser of the available channel bandwidth and the sum of the PCRs of all constituent VCs. Finally, the method terminates in step 1299. UBR connections are not guaranteed any bandwidth and have no QoS requirements. The ATM Traffic Descriptor for UBR connections is the Peak Cell Rate (PCR), which is the maximum cell rate at which the connection can transmit if allowed by the network. In one embodiment, a number of UBR connections are aggregated into an aggregate UBR connection. The PCR for the aggregate (PCR agg ) is set equal to the sum of the PCRs of all constituent connections, but not exceeding the available channel bandwidth supporting the VP. FIG. 13 is a flow diagram 1300 for determining the QoS requirements for an aggregate of UBR connections. The method begins in step 1310, and proceeds to step 1320, where the method sets the PCR for the VP equal to the lesser of the available channel bandwidth and the sum of the PCRs of all constituent VCs. Finally, the method terminates in step 1299. An apparatus 1410 for aggregating VCs into VPs according to QoS requirements is shown in FIG. 14. Apparatus 1410 includes VC Interface Logic 1430 for supporting a number of ATM VCs 1420. Aggregating Logic 1440 accesses VCs by means of VC Interface Logic 1430 and aggregates VCs having similar QoS requirements into VPs. As discussed above, Aggregating Logic 1440 can select VCs for aggregation based on any or all of the ATM Service Categories, ATM Traffic Descriptors, and QoS Parameters of the VCs 1420. QoS Logic 1450 determines a set of QoS requirements for the VP based on the QoS requirements of the constituent VCs. The apparatus 1410 also includes ATM Interface Logic 1460 for interfacing VCs and VPs with an ATM network 1470. ATM Interface Logic 1460 accesses VPs formed by Aggregating Logic 1440 and obtains a set of QoS requirements for each VP from QoS Logic 1450. When Aggregating Logic 1440 aggregates CBR and CBR-like connections, QoS Logic 1450 implements the methodology as depicted and described in flow diagram 800 to determine the set of QoS requirements for the VP. An exemplary embodiment is shown in FIG. 15A. In this example, two CBR (or CBR-like) VCs 1510 and 1511 are aggregated into a VP 1512 having the CBR service category. For illustrative purposes, VC 1510 has a PCR of 100, a MaxCTD of 50, a CDV of 10, and a CLR of 20, while VC 151 1 has a PCR of 200, a MaxCTD of 40, a CDV of 125, and a CLR of 30. Using the method 800, QoS Logic 1450 translates the QoS requirements of VCs 1510 and 1511 into QoS requirements for VP 1512. The resulting QoS requirements for the VP are as follows. The PCR for VP 1512 is set equal to the sum of the PCRs of VCs 1510 and 1511. Thus, the PCR for VP 1512 is set equal to 300. The MaxCTD for VP 1512 is set equal to the MaxCTD of the constituent connection having the lowest MaxCTD. Thus, the MaxCTD for VP 1512 is set equal to the MaxCTD of VC 1511 which equals 40. The CDV for VP 1512 is set equal to the CDV of the constituent connection having the lowest CDV. Thus, the CDV for VP 1512 is set equal to the CDV of VC 1510 which equals 10. Finally, the CLR for VP 1512 is set equal to the CLR of the constituent connection having the lowest CLR. Thus, the CLR for VP 1512 is set equal to the CLR of VC 1510 which equals 20. When Aggregating Logic 1440 aggregates CBR-like RT-VBR connections, QoS Logic 1450 implements the methodology as depicted and described in flow diagram 900 to determine the set of QoS requirements for the VP. An exemplary embodiment is shown in FIG. 15B. In this example, two CBR-like RT-VBR VCs 1520 and 1521 are aggregated into a VP 1522 having the RT-VBR service category. For illustrative purposes, VC 1520 has a PCR of 100, a SCR of 60, a MBS of 10, a MaxCTD of 50, a CDV of 10, and a CLR of 20, while VC 1521 has a PCR of 200, a SCR of 150, a MBS of 20, a MaxCTD of 40, a CDV of 125, and a CLR of 30. Using the method 900, QoS Logic 1450 translates the QoS requirements of VCs 1520 and 1521 into QoS requirements for VP 1522. The resulting QoS requirements for the VP are as follows. The PCR for VP 1522 is set equal to the sum of the PCRs of VCs 1520 and 1521. Thus, the PCR for VP 1522 is set equal to 300. The SCR for VP 1522 is set equal to the sum of the SCRs of VCs 1520 and 1521. Thus, the SCR for VP 1522 is set equal to 210. The MBS for VP 1522 is set equal to the sum of the MBSs of VCs 1520 and 1521. Thus, the MBS for VP 1522 is set equal to 30. The MaxCTD for VP 1522 is set equal to the MaxCTD of the constituent connection having the lowest MaxCTD. Thus, the MaxCTD for VP 1522 is set equal to the MaxCTD of VC 1521 which equals 40. The CDV for VP 1522 is set equal to the CDV of the constituent connection having the lowest CDV. Thus, the CDV for VP 1522 is set equal to the CDV of VC 1520 which equals 10. Finally, the CLR for VP 1522 is set equal to the CLR of the constituent connection having the lowest CLR. Thus, the CLR for VP 1522 is set equal to the CLR of VC 1520 which equals 20. When Aggregating Logic 1440 aggregates "bursty" RT-VBR connections, QoS Logic 1450 implements the methodology as depicted and described in flow diagram 1000 to determine the set of QoS requirements for the VP. An exemplary embodiment is shown in FIG. 15C. In this example, two "bursty" RT-VBR VCs 1530 and 1531 are aggregated into a VP 1532 having the RT-VBR service category. For illustrative purposes, VC 1530 has a PCR of 100, a SCR of 40, a MBS of 10, a MaxCTD of 50, a CDV of 10, and a CLR of 20, while VC 1531 has a PCR of 200, a SCR of 80, a MBS of 20, a MaxCTD of 40, a CDV of 125, and a CLR of 30. Using the method 1000, QoS Logic 1450 translates the QoS requirements of VCs 1530 and 1531 into QoS requirements for VP 1532. The resulting QoS requirements for the VP are as follows. The PCR for VP 1532 is set equal to a weighted sum of the PCRs of VCs 1530 and 1531. Thus, using a weighting factor of 0.5, the PCR for VP 1532 is set equal to 150. The SCR for VP 1532 is set equal to the sum of the SCRs of VCs 1530 and 1531. Thus, the SCR for VP 1532 is set equal to 120. The MBS for VP 1532 is set equal to the sum of the MBSs of VCs 1530 and 1531. Thus, the MBS for VP 1532 is set equal to 30. The MaxCTD for VP 1532 is set equal to the MaxCTD of the constituent connection having the lowest MaxCTD. Thus, the MaxCTD for VP 1532 is set equal to the MaxCTD of VC 1531 which equals 40. The CDV for VP 1532 is set equal to the CDV of the constituent connection having the lowest CDV. Thus, the CDV for VP 1532 is set equal to the CDV of VC 1530 which equals 10. Finally, the CLR for VP 1532 is set equal to the CLR of the constituent connection having the lowest CLR. Thus, the CLR for VP 1532 is set equal to the CLR of VC 1530 which equals 20. When Aggregating Logic 1440 aggregates NRT-VBR VCs, QoS Logic 1450 implements the methodology as depicted and described in flow diagram 1100 to determine the set of QoS requirements for the VP. An exemplary embodiment is shown in FIG. 15D. In this example, two NRT-VBR VCs 1540 and 1541 are aggregated into a VP 1542 having the NRT-VBR service category. For illustrative purposes, VC 1540 has a SCR of 40, a MBS of 10, a PCR of 100, and a CLR of 20, while VC 1541 has a SCR of 80, a MBS of 20, a PCR of 200, and a CLR of 30. Using the method 1100, QoS Logic 1450 translates the QoS requirements of VCs 1540 and 1541 into QoS requirements for VP 1542. The resulting QoS requirements for the VP are as follows. The SCR for VP 1542 is set equal to the sum of the SCRs of VCs 1540 and 1541. Thus, the SCR for VP 1542 is set equal to 120. The MBS for VP 1542 is set equal to the sum of the MBSs of VCs 1540 and 1541. Thus, the MBS for VP 1542 is set equal to 30. The PCR for VP 1542 is set equal to the larger of the SCR for the VP and the PCR of the constituent connection having the highest PCR. Thus, the PCR for VP 1542 is set equal to the PCR of VC 1541 which equals 200. Finally, the CLR for VP 1542 is set equal to the CLR of the constituent connection having the lowest CLR. Thus, the CLR for VP 1542 is set equal to the CLR of VC 1540 which equals 20. When Aggregating Logic 1440 aggregates ABR VCs, QoS Logic 1450 implements the methodology as depicted and described in flow diagram 1200 to determine the set of QoS requirements for the VP. An exemplary embodiment is shown in FIG. 15E. In this example, two ABR VCs 1550 and 1551 are aggregated into a VP 1552 having the ABR service category. For illustrative purposes, VC 1550 has a MCR of 40 and a PCR of 100, while VC 1551 has a MCR of 80 and a PCR of 200. Using the method 1200, QoS Logic 1450 translates the QoS requirements of VCs 1550 and 1551 into QoS requirements for VP 1552. The resulting QoS requirements for the VP are as follows. The MCR for VP 1552 is set equal to the sum of the MCRs of VCs 1550 and 1551. Thus, the MCR for VP 1552 is set equal to 120. The PCR for VP 1552 is set equal to the lesser of the available channel bandwidth and the sum of the PCRs of all constituent VCs. Thus, the PCR for VP 1552 is set equal to 300, assuming that the available channel bandwidth is sufficient to support a PCR of 300. When Aggregating Logic 1440 aggregates UBR VCs, QoS Logic 1450 implements the methodology as depicted and described in flow diagram 1300 to determine the set of QoS requirements for the VP. An exemplary embodiment is shown in FIG. 15F. In this example, two UBR VCs 1560 and 1561 are aggregated into a VP 1562 having the UBR service category. For illustrative purposes, VC 1560 has a PCR of 100, while VC 1561 has a PCR of 200. Using the method 1300, QoS Logic 1450 translates the QoS requirements of VCs 1560 and 1561 into QoS requirements for VP 1562. The resulting QoS requirements for the VP are as follows. The PCR for VP 1562 is set equal to the lesser of the available channel bandwidth and the sum of the PCRs of all constituent VCs. Thus, the PCR for VP 1562 is set equal to 300, assuming that the available channel bandwidth is sufficient to support a PCR of 300. As discussed above, the purpose of aggregating ATM VCs into VPs is to improve bandwidth utilization in the ATM network by creating an aggregate which is more efficient than the case of each VC acting individually. When ATM VCs are carried over a shared medium network, ATM aggregation can be used in combination with MAC User aggregation, as described in U.S. Patent Application entitled System, Device, and Method for Aggregating Users in a Shared-Medium Network, referred to and incorporated by reference above, to also realize improved scaleability and efficiency of the MAC protocol. For example, a VP may be treated as a single MAC User, such that the VP is an Aggregate MAC User (AMU) in and of itself. However, it is important to note that VC aggregation and MAC User aggregation are applied differently and for different purposes, and it is possible that an aggregate that improves efficiency of the ATM bandwidth utilization may actually reduce the scalability and efficiency of the MAC protocol, and vice versa. Thus, the applicability of each type of aggregation must be determined by the objectives of the system. The present invention may be embodied in other specific forms without departing from the spirit or essential characteristics. The described embodiments are to be considered in all respects only as illustrative and not restrictive. What is claimed is:

Claims: 1 ) A method of efficiently utilizing network resources comprising the steps of: aggregating a number of virtual channels having similar quality of service requirements into a virtual path; and determining from the quality of service requirements of the number of virtual channels a set of quality of service requirements for the virtual path. 2) The method of claim 1 wherein the aggregating step aggregates virtual channels having the same ATM service category. 3) The method of claim 1 wherein the aggregating step aggregates virtual channels having the same ATM service category and having similar ATM traffic descriptors and quality of service parameters within said ATM service category. 4) The method of claim 1 wherein the virtual channels are one of: constant bit rate virtual channels; real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate greater than a predetermined value; real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate less than or equal to the predetermined value; non-real-time variable bit rate virtual channels; available bit rate virtual channels; and unspecified bit rate virtual channels; and wherein: for constant bit rate virtual channels, the determining step creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to the sum of the peak cell rates of the number of virtual channels; a maximum cell transfer delay equal to the lowest maximum cell transfer delay from the number of virtual channels; a cell delay variation equal to the lowest cell delay variation from the number of virtual channels; and a cell loss ratio equal to the lowest cell loss ratio from the number of virtual channels; and for real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate greater than the predetermined value, the determining step creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to the sum of the peak cell rates of the number of virtual channels; a sustainable cell rate equal to the sum of the sustainable cell rates of the number of virtual channels; a maximum burst size equal to the sum of the maximum burst sizes of the number of virtual channels; a maximum cell transfer delay equal to the lowest maximum cell transfer delay from the number of virtual channels; a cell delay variation equal to the lowest cell delay variation from the number of virtual channels; and a cell loss ratio equal to the lowest cell loss ratio from the number of virtual channels; and for real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate less than or equal to the predetermined value, the determining step creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to a weighted sum of the peak cell rates of the number of virtual channels; a sustainable cell rate equal to the sum of the sustainable cell rates of the number of virtual channels; a maximum burst size equal to the sum of the maximum burst sizes of the number of virtual channels; a maximum cell transfer delay equal to the lowest maximum cell transfer delay from the number of virtual channels; a cell delay variation equal to the lowest cell delay variation from the number of virtual channels; and a cell loss ratio equal to the lowest cell loss ratio from the number of virtual channels; and for non-real-time variable bit rate virtual channels, the determining step creates a set of quality of service requirements for the virtual path comprising: a sustainable cell rate equal to the sum of the sustainable cell rates of the number of virtual connections; a maximum burst size equal to the sum of the maximum burst sizes of the number of virtual connections; and a peak cell rate equal to the greater of: the sustainable cell rate; and the maximum peak cell rate of the number of virtual channels; and for available bit rate virtual channels, the determining step creates a set of quality of service requirements for the virtual path comprising: a minimum cell rate equal to the sum of the minimum cell rates of the number of virtual channels; and a peak cell rate equal to the lesser of: the sum of the peak cell rates of the number of virtual channels; and the available channel bandwidth supporting the virtual path; and for unspecified bit rate virtual channels, the determining step creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to the lesser of: the sum of the peak cell rates of the number of virtual channels; and the available channel bandwidth supporting the virtual path. 5) The method of claim 1 wherein the virtual channels include a first number of constant bit rate virtual channels and a second number of real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate greater than a predetermined value, and wherein the determining step creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to the sum of the peak cell rates of the number of virtual channels; a maximum cell transfer delay equal to the lowest maximum cell transfer delay from the number of virtual channels; a cell delay variation equal to the lowest cell delay variation from the number of virtual channels; and a cell loss ratio equal to the lowest cell loss ratio from the number of virtual channels. 6) An apparatus for efficiently utilizing network resources comprising: aggregating logic for aggregating a number of virtual channels having similar QoS requirements to form a virtual path; and quality of service logic for determining, from the quality of service requirements of the number of virtual channels, a set of quality of service requirements for the virtual path. 7) The apparatus of claim 6 further comprising: ATM interface logic operably coupled to the aggregating logic for accessing the virtual path and to the quality of service logic for obtaining the quality of service requirements for the virtual path. 8) The apparatus of claim 6 wherein the virtual channels are one of: constant bit rate virtual channels; real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate greater than a predetermined value; real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate less than or equal to the predetermined value; non-real-time variable bit rate virtual channels; available bit rate virtual channels; and unspecified bit rate virtual channels; and wherein: for constant bit rate virtual channels, the quality of service logic creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to the sum of the peak cell rates of the number of virtual channels; a maximum cell transfer delay equal to the lowest maximum cell transfer delay from the number of virtual channels; a cell delay variation equal to the lowest cell delay variation from the number of virtual channels; and a cell loss ratio equal to the lowest cell loss ratio from the number of virtual channels; and for real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate greater than the predetermined value, the quality of service logic creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to the sum of the peak cell rates of the number of virtual channels; a sustainable cell rate equal to the sum of the sustainable cell rates of the number of virtual channels; a maximum burst size equal to the sum of the maximum burst sizes of the number of virtual channels; a maximum cell transfer delay equal to the lowest maximum cell transfer delay from the number of virtual channels; a cell delay variation equal to the lowest cell delay variation from the number of virtual channels; and a cell loss ratio equal to the lowest cell loss ratio from the number of virtual channels; and for real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate less than or equal to the predetermined value, the quality of service logic creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to a weighted sum of the peak cell rates of the number of virtual channels; a sustainable cell rate equal to the sum of the sustainable cell rates of the number of virtual channels; a maximum burst size equal to the sum of the maximum burst sizes of the number of virtual channels; a maximum cell transfer delay equal to the lowest maximum cell transfer delay from the number of virtual channels; a cell delay variation equal to the lowest cell delay variation from the number of virtual channels; and a cell loss ratio equal to the lowest cell loss ratio from the number of virtual channels; and for non-real-time variable bit rate virtual channels, the quality of service logic creates a set of quality of service requirements for the virtual path comprising: a sustainable cell rate equal to the sum of the sustainable cell rates of the number of virtual connections; a maximum burst size equal to the sum of the maximum burst sizes of the number of virtual connections; and a peak cell rate equal to the greater of: the sustainable cell rate; and the maximum peak cell rate of the number of virtual channels; and for available bit rate virtual channels, the quality of service logic creates a set of quality of service requirements for the virtual path comprising: a minimum cell rate equal to the sum of the minimum cell rates of the number of virtual channels; and a peak cell rate equal to the lesser of: the sum of the peak cell rates of the number of virtual channels; and the available channel bandwidth supporting the virtual path; and for unspecified bit rate virtual channels, the quality of service logic creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to the lesser of: the sum of the peak cell rates of the number of virtual channels; and the available channel bandwidth supporting the virtual path. 9) The method of claim 1 wherein the virtual channels include a first number of constant bit rate virtual channels and a second number of real-time variable bit rate virtual channels having a ratio of sustainable cell rate to peak cell rate greater than a predetermined value, and wherein the quality of service logic creates a set of quality of service requirements for the virtual path comprising: a peak cell rate equal to the sum of the peak cell rates of the number of virtual channels; a maximum cell transfer delay equal to the lowest maximum cell transfer delay from the number of virtual channels; a cell delay variation equal to the lowest cell delay variation from the number of virtual channels; and a cell loss ratio equal to the lowest cell loss ratio from the number of virtual channels.

Inventors: LEE WHAY CHIOU, RAMAKRISHNAN KRISHNAN, LEE, WHAY, CHIOU, RAMAKRISHNAN, KRISHNAN
Applicants: MOTOROLA INC, MOTOROLA INC.
Application year: 1997
Main classification: H04L12
IPC codes: H04L12, H04Q11