Abstract:
A method of converting AAL2 cells that includes an original user data set into AAL5 cells and another method of converting AAL5 cells that includes an original user data set into AAL2 cells are disclosed. In the method of converting AAL2 cells, the length of the data subset included in each AAL5 cell generated is stored in a memory. Therefore, it is not necessary to store all the payloads of generated cells. When a last CPS packet is extracted, a total length of the original user data can be found using a set of lengths stored in the memory. As a result, the present invention requires only a small memory space, and any unnecessary delay problem is eliminated.

Description:
This application claims the benefit of the Korean Application No. P2000-86760 filed on Dec. 30, 2000, which is hereby incorporated by reference. 
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to an Asynchronous Transfer Mode (ATM) network system, and more particularly, to a method of converting one or more ATM cells in an ATM network system. 
     2. Discussion of the Related Art 
     In general, the ATM Adaptation Layer (AAL) provides support for higher-layer services such as signaling, circuit emulation, voice, and video. AALs also support packet-based services, such as IP, LANs, and frame relay. 
     There are four different types of the currently standardized AALs: AAL1, AAL2, AAL3/4, and AAL5. First of all, AAL2 supports ATM transport of connection-oriented Variable Bit Rate (VBR) packetized voice and video. 
     On the other hand, the Common Part (CP) AAL5 supports VBR traffic, both connection-oriented and connectionless. Support for connectionless or connection-oriented service is provided at the Service Specific Convergence Sublayer (SSCS) level. However, despite of the simplicity of AAL5, AAL5 is now coming under criticism for its relatively inefficient operation, especially, for the mix of packet sizes typically used on the Internet. 
       FIG. 1  illustrates an existing ATM network system for converting one or more AAL2 type ATM cells (hereinafter, “AAL2 cells”) to one or more AAL5 type ATM cells (hereinafter, AAL5 cell) or vice versa. 
     The system includes a first ATM cell converter  10  receiving one or more AAL2 cells and converting them into one or more AAL5 cells, and it further includes a second ATM cell converter  12  converting one or more AAL5 cells to one or more AAL2 cells. Lastly, the system includes an ATM switch  11  that switches each ATM cell (AAL5 cell) in an ATM level. 
     When the first ATM cell converter  10  receives one or more AAL2 cells, it extracts one or more Common Part Sublayer packets (CPS-Packets). Then it converts the extracted packets to one or more AAL5 cells and transmits the AAL5 cells to the ATM switch  11  in order switch each AAL5 cell in an ATM level. Next, the ATM switches the AAL5 cell and sends each AAL5 cell to the second ATM cell converter  12 . 
     The ATM network system shown in  FIG. 1  is used for transmitting a call related traffic message or signal control message in an IMT-2000 system including a Base Transceiver Station (BTS), a Radio Network Controller (RNC), and a Core Network (CN). 
     In the IMT-2000 system, BTS is connected to RNC through E 1  (2.048 Mbps) line, and RNC is connected to CN through a Synchronous Transfer Module 1 (STM-1) line (155 Mbps). And a 53 bytes ATM cell transmits through those lines. In order to achieve higher efficiencies of the lines, the standards have decided to send a traffic message with AAL2 cells and a control message with AAL5 cells. 
     Namely, the standards have ruled that the traffic link interface and the signal link interface of the IMT-2000 should be AAL2 and AAL5, respectively. Even though a processor that handles both of the traffic and signal messages should be able to provide both of AAL2 and AAL5 protocols, such processor usually provides only a single AAL protocol. For this reason, some system developers often use a new type of the ATM cell having a system-preferred format. 
     The apparatus and method of converting one or more ATM cells in an ATM network system according to the prior art introduce several disadvantages. For converting N AAL5 cells including a user data set to AAL2 cells, the second ATM cell converter  12  must store all the AAL5 cells in a memory because the length-indicating field is included in the last AAL5 cell. Therefore, it requires a large amount of memory space and an unnecessary delay. 
     For converting AAL2 cells to AAL5 cells, similar problem will occur. When the first ATM cell converter  10  receives more than one AAL2 cells including a user data set, it initially generates more than one CPS packets. Thereafter, the first ATM cell converter  10  must store all the packets generated in order to convert them to AAL5 cells. This also requires a large memory space and an unnecessary delay for processing the cells in the system. 
     SUMMARY OF THE INVENTION 
     Accordingly, the present invention is directed to a method of converting ATM cells in an ATM network system that substantially obviates one or more problems due to limitations and disadvantages of the related art. 
     An object of the present invention is to provide a method of converting one or more AAL2 cells to one or more AAL5 cells in an ATM network system that can increase the cell transmission speed and prevents any unnecessary delays. 
     Another object of the present invention is to provide a method of converting one or more AAL5 cells to one or more AAL2 cells in an ATM network system that does not require a large memory space and prevents any unnecessary delays. 
     Additional advantages, objects, and features of the invention will be set forth in part in the description which follows and in part will become apparent to those having ordinary skill in the art upon examination of the following or may be learned from practice of the invention. The objectives and other advantages of the invention may be realized and attained by the structure particularly pointed out in the written description and claims hereof as well as the appended drawings. 
     To achieve these objects and other advantages and in accordance with the purpose of the invention, as embodied and broadly described herein, a method of converting more than one AAL2 cells in an ATM network system includes the steps of (a) receiving one or more AAL2 cells that include a CPS packet including one of N data subsets of an original user data set; and (b) extracting the CPS packet from the one or more AAL2 cells received in the step (a). 
     The method further includes (c) generating an AAL5 cell by adding an ATM header to the data subset included in the CPS packet; (d) storing intermediate CRC and length values of the data subset included in the AAL5 cell generated in the step (c) in a memory; and (e) repeating the steps (a) to (d) until the CPS packet extracted in the step (b) is a final CPS packet that includes an Nth data subset having its size of n bytes. The method further includes (f) calculating total CRC and length values of the original user data set; (g) generating an Nth AAL5 cell corresponding to the final CPS packet by adding a trailer containing the total values to a payload containing the Nth data subset if 1≦n≦40; (h) generating an Nth AAL5 cell that includes the Nth data subset if 41≦n≦48; and (i) generating an (N+1)th AAL5 cell that includes a trailer containing the total values. 
     In another aspect of the present invention, a method of converting AAL5 cells in an ATM network system includes the steps of (a) receiving a first AAL5 cell that includes a first payload including a first data subset of an original user data set; and (b) storing the first payload in a memory if the first cell is not a final AAL5 cell. 
     The method further includes the steps of (c) receiving a next AAL5 cell that includes a next payload including a next data subset of the original user data set; (d) generating a CPS packet by adding a packet header to the payload stored in the memory if the AAL5 cell received in the step (c) is not the final AAL5 cell; (e) emptying the memory and storing the next payload in the memory; (f) recording the length of the payload included in the generated packet; (g) generating one or more AAL2 cells corresponding to the CPS packet generated; and (h) repeating the steps (c) to (g) until the next AAL5 cell received in the step (c) is the final AAL5 cell that includes a final payload. 
     The method further includes the steps of (i) determining a final length by subtracting each length recorded in the step (f) from a total length of the user data set, the total length being included in the final AAL5 cell; (j) generating a CPS packet by adding a packet header to the payload recently stored in the memory in the step (e) if the final length is greater than 48; (k) extracting a final data subset of the original user data set from the final payload; and (l) generating a final CPS packet by adding a packet header to the extracted final data subset. 
     The method further includes the steps of generating one or more AAL2 cells corresponding to the packet generated in the step (j); and generating one or more AAL2 cells corresponding to the final packet generated in the step (1). 
     It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the invention and together with the description serve to explain the principle of the invention. In the drawings; 
         FIG. 1  illustrates an existing system for converting AAL2 cells to AAL5 cells or vice versa in accordance with the related art; 
         FIG. 2  illustrates an apparatus of converting AAL2 cells to AAL5 cells or vice versa in accordance with the present invention; 
         FIG. 3  illustrates the SRAM  301  of the apparatus shown in  FIG. 2 ; 
         FIG. 4  illustrates the SRAM  201  of the apparatus shown in  FIG. 2 ; 
         FIG. 5  illustrates the structures of the AAL5 cells that the AAL5 transmitter  200  generates; 
         FIG. 6  illustrates a method of converting AAL2 cells to AAL5 cells in accordance with the present invention; 
         FIG. 7  illustrates the structures of the AAL5 cells that the AAL5 receiver  300  receives; and 
         FIG. 8  illustrates a method of converting AAL5 cells to AAL2 cells in accordance with the present invention. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     Reference will now be made in detail to the preferred embodiments of the present invention, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts. 
       FIG. 2  illustrates an apparatus for converting one or more ATM cells in an ATM network system in accordance with the present invention. As shown in the figure, the apparatus includes an AAL2 receiver  100  for receiving one or more AAL2 type ATM cells (hereinafter, “AAL2 cells” and for generating one or more Common Part Sublayer (CPS) packets and an AAL5 transmitter  200  for receiving the AAL2 CPS packets and for generating one or more AAL5 type ATM cells (hereinafter, “AAL5 cells” corresponding to the CPS packets. 
     The system further includes an AAL5 receiver  300  for receiving one or more AAL5 cells and for generating one or more CPA packets and an AAL2 transmitter  400  for generating one or more AAL2 cells with CPS packets generated. 
     As shown in  FIG. 1 , each element included in the apparatus shown in  FIG. 2  is connected to a SRAM and a Content Addressable Memory (CAM), respectively. 
     First, the SRAM  101  and CAM  102  coupled to the AAL2 receiver  100  store the data and the parameters necessary for demultiplexing the AAL2 cells in the AAL2 receiver  100 . 
     Second, the SRAM  201  coupled to the AAL5 transmitter  200  stores a length-indicating field and a CRC field of each CPS packet, but not user data. Similarly, the CAM  202  coupled to the AAL5 transmitter  200  stores the parameters necessary for converting the CPS packets to the AAL5 cells.  FIG. 4  illustrates the SRAM  301  of the apparatus shown in  FIG. 2 . 
     Third, the SRAM  301  coupled to the AAL5 receiver  300  stores the length-indicating information and the most recent data subset of an original user data set if the AAL5 cell that the AAL5 receiver  300  receives does not includes the final data subset of the original user data set.  FIG. 3  illustrates the SRAM  301  of the apparatus shown in  FIG. 2 . 
     And finally, the SRAM  401  coupled to the AAL2 transmitter  400  stores the CPS packets received, and the CAM  402  stores the parameters necessary for converting the CPS packets to the AAL2 cells. 
     Reference to the operational steps of a method of converting AAL2 cells to AA5 cells in an ATM network system will now be made in detail. 
     Initially, when the AAL2 receiver  100  receives the AAL2 cells containing the CPS packets including an original user data set, it extracts each CPS packet by demultiplexing the AAL2 sells, and it sends each CPS packet to the AAL5 transmitter  200 . The SRAM  101  and CAM  102  are used to store the data and parameters necessary for demultiplexing the AAL2 cells. 
     For example, let&#39;s assume that the AAL2 receiver  100  is subject to construct a CPS packet, which is included in more than one AAL2 cells, and VP/VC (Virtual Path/Virtual Channel) of an ith AAL2 cell, that the AAL2 receiver receives, is not identical to that of an (i+1)th AAL2 cell. If the ith AAL2 cell includes the fore part of the CPS packet, the AAL2 receiver  100  stores the fore part in the SRAM  101 . 
     Thereafter, when the AAL2 receiver  100  receives another AAL2 cell that contains the following part of the packet, it completes to construct a complete CPS packet by combining the both parts. Finally, the AAL2 receiver  100  sends the CPS packet to the AAL5 transmitter  200 . 
       FIG. 6  illustrates a method of converting AAL2 cells in an ATM network system according to the present invention. In addition,  FIG. 7  illustrates the AAL5 cells generated by the AAL5 transmitter  200  in accordance with the present invention. 
     Initially, the AAL2 receiver  100  receives one or more AAL2 cells that include a CPS packet including one of N data subsets of an original user data set (S 1 ). 
     Next, the AAL2 receiver  100  extracts the CPS packet from the AAL2 cells received in the step S 1  (S 2 ) and sends the extracted to the packet to the AAL5 transmitter  200 . The CPS packet extracted in the step (S 2 ) includes a CPS packet header including a UUI field set to 26. 
     Then the AAL5 transmitter  200  checks whether the extracted CPS packet is a final CPS packet by checking the UUI field included in the packet (S 3 ). 
     If it is determined from the step S 3  that the packet is “not final” (UUI=27), it generates a corresponding AAL5 cell by adding an ATM header, whose PTI field is set to “000” (not final), to the data subset included in the CPS packet received (S 4 ). 
     Thereafter, the transmitter  300  stores intermediate CRC and length values of the data subset included in the generated AAL5 cell in the SRAM  201  (S 5 ), and it outputs the AAL5 cell generated. 
     The steps S 1  to S 5  are repeated until it is determined in the step S 3  that the CPS packet extracted in the step S 2  is a final CPS packet that includes an Nth data subset having its size of n bytes. 
     After the AAL5 transmitter  200  finally receives the final CPS packet whose UUI field is set to 26 (final), the transmitter  200  calculates the total CRC and length values of the original user data set by adding the sum of the intermediate CRC and length values of the data included in each AAL5 generated in the step S 4  with the last CRC and length values of the Nth data subset (S 6 ). The total length value turns out to be (N−1)*48+n. 
     Next, the transmitter  200  determines whether the size of the Nth data subset is less than 41 (S 7 ). 
     If n&lt;41, the transmitter  200  generates an Nth (last) AAL5 corresponding to the final CPS packet by adding an ATM header whose PTI is set to “001” (final) ad by adding a trailer containing the total CRC and length values to a payload that contains the Nth data subset (S 8 ). The construction of the Nth (last) AAL5 cell generated in the step (S 8 ) is shown in  FIG. 5A . 
     If n&gt;40, the transmitter  200  initially generates an Nth AAL5 cell by adding an ATM header whose PTI field is set to “000” (not final) to a payload that includes the Nth data subset (S 9 ). Next, it generates an (N+1)th (last) AAL5 cell by adding an ATM header whose PTI is set to “001” (final) to a payload that includes 40 zeros a trailer (T) including the total CRC and length values. The construction of the (N+1)th (last) AAL5 cell generated in the step (S 10 ) is shown in  FIG. 5B . 
     Reference to the operational steps of a method of converting AAL5 cells to AA 2  cells in an ATM network system will now be made in detail. 
       FIG. 6A  illustrates an AAL5 cell that includes a user data set having a size n where 1≦n≦40. When the AAL5 receiver  300  receives an AAL5 cell shown in  FIG. 6A , the AAL5 receiver  300  extracts the n bytes user data set by using the length of the data set. The length information is included in the trailer field (T). Thereafter, it generates a CPS packet by adding a CPS packet header to the extracted user data set and sends the packet to the AAL2 transmitter  400 . 
     Let&#39;s consider a second case where the AAL5 receiver  300  receives the AAL5 cells shown in  FIG. 6B . The AAL5 cells include a user data set having a size n where 41≦n≦48. When the AAL5 receiver  300  receives the first AAL5 cell, it checks the PTI field included in the ATM header. Since PTI is set to “000” (not final), the AAL5 receiver  300  stores the 48 bytes payload of the first cell in the SRAM  301  coupled to the AAL5 receiver  300 . 
     After the receiver  300  receives the second AAL5 cell, the receiver is able to extract the user data from the payload stored in the SRAM  301  using the user data length included in the trailer of the second cell. Thereafter, it generates a CPS packet by adding a CPS packet header to the extracted user data set and sends the packet to the AAL2 transmitter  400 . 
     Now, let&#39;s consider a general case where the AAL5 receiver  300  receives N (two or more) AAL5 cells shown in  FIG. 6C  or  FIG. 6D .  FIG. 8  illustrates a method of converting one or more AAL5 cells in an ATM network system according to the present invention. 
     First of all, when the receiver  300  receives a first AAL5 cell that includes a first payload including a first data subset of an original user data set (S 1 ), it checks the PTI field included in the ATM header of the first cell. 
     Since PTI is set to “000” (not final), the receiver  300  stores the payload of the first cell in the SRAM  301  coupled to the receiver  300  (S 12 ). 
     Next, the receiver  300  receives a next AAL5 cell that includes a next payload including a next data subset of the original user data set (S 13 ), and it checks whether the received next AAL5 cell is a final AAL5 cell by checking the PTI of the received cell (S 14 ). 
     If the received cell is not a final cell, the receiver  300  determines that the payload stored in the SRAM  301  is valid. Therefore, it generates a CPS packet by adding a packet header to the payload stored in the SRAM  301  (S 15 ), and it sends the packet to the AAL2 transmitter  400 . Next, the receiver  300  empties the SRAM  301  and stores the next payload included in the next AAL5 received in the step S 13  in the SRAM  301  (S 16 ). 
     Thereafter, the receiver  300  records the length of the payload included in the packet sent to the AAL2 transmitter  400  (S 17 ). 
     When the AAL2 transmitter  400  receives the CPS packet generated in the step S 15 , it generates one or more AAL2 cells corresponding to the CPS packet received (S 18 ). 
     The receiver  300  performs the steps S 13  to S 18  until it is determined in the step (S 14 ) tat the next AAL5 received in the step S 13  is a final AAL5 cell that includes a final payload. 
     When the receiver  300  finally receives a AAL5 cell whose PTI is set to “001” (final), the total length of the original user data set is given. Therefore, the receiver  300  determines a final length, which is the length of the unsent data, by subtracting each length stored in the step S 17  from the total length of the original user data set (S 19 ). 
     Next, the receiver  300  determines whether the final length is greater than 48 (S 20 ). 
     If the final length is greater than 48 bytes as shown in  FIG. 7  (C), the receiver generates a CPS packet by adding a packet header to the payload recently stored in the SRAM  301  in the step S 17  (S 21 ). Thereafter, it extracts a final data subset of the original user data set from the final payload, and it generates a final CPS packet by adding a packet header to the extracted final data subset (S 22 ). The UUI field of the final CPS packet is set to 27. 
     Thereafter, it sends both packets to the AAL2 transmitter  400 . The AAL2 transmitter  400  generates one or more AAL2 cells corresponding to each packet received (S 23 ). 
     If the final length calculated in the step S 19  is less than 49 bytes as shown in  FIG. 7(D) , the receiver  300  extracts a final data subset of the original user data set from the payload recently stored in the SRAM  301 , and it generates a final CPS packet by adding a packet header to the extracted final data subset (S 24 ). Similarly, the UUI field of the final CPS packet is set to 27. Thereafter, it sends the final packet to the AAL2 transmitter  400 . Similarly, the transmitter  400  generates one or more AAL2 cells corresponding to the final CPS packet (S 25 ). 
     It will be apparent to those skilled in the art than various modifications and variations can be made in the present invention. Thus, it is intended that the present invention covers the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents.