WO1999033313A1 - Cell handling unit and method for atm node - Google Patents
Cell handling unit and method for atm node Download PDFInfo
- Publication number
- WO1999033313A1 WO1999033313A1 PCT/SE1998/002245 SE9802245W WO9933313A1 WO 1999033313 A1 WO1999033313 A1 WO 1999033313A1 SE 9802245 W SE9802245 W SE 9802245W WO 9933313 A1 WO9933313 A1 WO 9933313A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- cell
- atm
- function
- aal2
- atm cell
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/10—Routing in connection-oriented networks, e.g. X.25 or ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3081—ATM peripheral units, e.g. policing, insertion or extraction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q11/00—Selecting arrangements for multiplex systems
- H04Q11/04—Selecting arrangements for multiplex systems for time-division multiplexing
- H04Q11/0428—Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
- H04Q11/0478—Provisions for broadband connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5603—Access techniques
- H04L2012/5604—Medium of transmission, e.g. fibre, cable, radio
- H04L2012/5607—Radio
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5629—Admission control
- H04L2012/5631—Resource management and allocation
- H04L2012/5632—Bandwidth allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5649—Cell delay or jitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5651—Priority, marking, classes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5638—Services, e.g. multimedia, GOS, QOS
- H04L2012/5646—Cell characteristics, e.g. loss, delay, jitter, sequence integrity
- H04L2012/5652—Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly
- H04L2012/5653—Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly using the ATM adaptation layer [AAL]
- H04L2012/5656—Cell construction, e.g. including header, packetisation, depacketisation, assembly, reassembly using the ATM adaptation layer [AAL] using the AAL2
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5672—Multiplexing, e.g. coding, scrambling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5679—Arbitration or scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
- H04L2012/5678—Traffic aspects, e.g. arbitration, load balancing, smoothing, buffer management
- H04L2012/5681—Buffer or queue management
- H04L2012/5682—Threshold; Watermark
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/50—Overload detection or protection within a single switching element
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
Definitions
- Patent Application Serial No. 60/071,063 (attorney docket 2380-24), entitled “Asynchronous Transfer Mode System", filed December 19, 1997, which is incorporated herein by reference, and is related to the following simultaneously filed United States Patent Applications, all of which are incorporated herein by reference:
- the present invention pertains to communications systems, and particularly to communications systems which employ ATM technology.
- ATM Asynchronous Transfer Mode
- Packets are called cells and have a fixed size.
- an ATM cell consists of 53 octets, five of which form a header and forty eight of which constitute a
- the header of the ATM cell includes two quantities which are used to identify a connection in an ATM network over which the cell is to travel, particularly the VPI (Virtual Path Identifier) and VCI (Virtual Channel Identifier).
- VPI Virtual Path Identifier
- VCI Virtual Channel Identifier
- the virtual path is a principal path defined between two switching nodes of the network; the virtual channel is one specific connection on the respective principal path.
- a plurality of nodes are typically situated, such as switching nodes having ports which are connected together by physical transmission paths or links.
- the switching nodes each typically have several functional parts, a primary of which is a switch core.
- the switch core essentially functions like a cross-connect between ports of the switch. Paths internal to the switch core are selectively controlled so that particular ports of the switch are connected together to allow a cells ultimately to travel from an ingress side of the switch to an egress side of the switch.
- a protocol reference model has been developed for illustrating layering of ATM.
- the protocol reference model layers include (from lower to higher layers) a physical layer (including both a physical medium sublayer and a transmission convergence sublayer), an ATM layer, and an ATM adaptation layer (AAL), and higher layers.
- the basic purpose of the AAL layer is to isolate the higher layers from specific characteristics of the ATM layer by mapping the higher-layer protocol data units (PDU) into the information field of the ATM cell and vise versa.
- PDU protocol data units
- AAL2 is a standard defined by ITU recommendation
- An AAL2 packet is shown in Fig. 2 as comprising a three octet packet header, as well as a packet payload.
- the AAL2 packet header includes an eight bit channel identifier (CID), a six bit length indicator (LI), a five bit User-to-User indicator (UUI), and five bits of header error control (HEC).
- CID channel identifier
- LI six bit length indicator
- UUI User-to-User indicator
- HEC header error control
- the AAL2 packet payload which carries user data, can vary from one to forty-five octets
- Fig. 3 shows how plural AAL2 packets can be inserted into a standard ATM cell.
- Fig. 3 shows a first ATM cell 20 ⁇ and a second ATM cell 20 2 .
- Each ATM cell 20 has a header 22 (e.g., cell 20] has header 22 ! and cell 20 2 has header 22 2 ).
- the payload of the ATM cells 20 begin with a start field 24 (e.g., cell 20j has start field 24] and cell 20 2 has start field 24 2 ).
- the ATM cell payload contains AAL2 packets.
- the payload of ATM cell 20 j contains AAL2 packets 26 j and 26 2 in their entirety, as well as a portion of AAL2 packet 26 3 .
- the payload of cell 20 2 contains the rest of AAL2 packet 26 3 , and AAL2 packets 26 4 and 26 5 in their entirety.
- the payload of cell 20 2 has padding 28.
- the start field 24, shown in Fig. 3A facilitates one AAL2 packet bridging two ATM cells.
- Start field 24 includes a six bit offset field (OSF), a one bit sequence number (SN), and one parity bit (P).
- the six bit offset field (OSF) contains a value, represented by offset displacement 29 in Fig. 3, indicative of the octet in the payload whereat the first full AAL2 packet begins.
- the value of the offset field (OSF) is one, since AAL2 packet starts just after start field 24j .
- the value of the offset field (OSF) is the sum of one (in view of start field 24 ! ) and the number of octets of AAL2 packet 26 3 protruding into cell 22 2 .
- AAL2 advantageously allows multiplexing of data from many users within a single ATM VCC.
- each user's data is carried in a separate AAL2 packet, but AAL2 packets of differing users are carried in the same ATM cells or cells borne on the same ATM VC.
- CID channel identifier
- a problem with using AAL2 arises when terminating AAL2 channels at different nodes or different addresses in the same node. Since the individual AAL2 channels may be multiplexed into one ATM-VCC, it is not possible to direct the individual AAL2 channels (e.g., the AAL2 packets on which the channel data is carried) to different destinations using conventional ATM switches.
- a cell handling unit receives incoming ATM cells from an ATM switch and provides outgoing ATM cells back to the ATM switch.
- the cell handling unit (CHU) includes a cell router which determines a type of an incoming ATM cell. On the basis of the type of the incoming ATM cell the cell router routes at least a portion of a payload of the incoming ATM cell to one of plural cell handling functional units.
- the plural cell handling functional units include a demultiplexer function; a queuing resource (which contains an optional multiplexer function); and a top priority function.
- the demultiplexer function obtains a packet from the payload of the incoming ATM cell having a first type AAL protocol and uses the packet to prepare an outgoing ATM cell having a second type AAL protocol.
- the queuing resource selectively receives from the cell router a package derived from the payload of the incoming ATM cell and queues the package in a queuing system in anticipation of the package being used to form an outgoing ATM cell.
- the queued package is an ATM cell payload
- the queued payload is utilized as the payload of the outgoing cell.
- the queue resource works in conjunction with a multiplexer function.
- the multiplexer function obtains a packet from the payload of the incoming ATM cell and uses the packet to prepare an outgoing ATM cell having the first type AAL protocol.
- the top priority function selectively receives from the cell router, in accordance with the type of the incoming ATM cell, the payload of the incoming ATM cell and forms an outgoing ATM cell from the incoming ATM cell payload without the payload of the incoming cell being routed to the queuing resource.
- the first type AAL protocol is AAL2 and the second type AAL protocol is AAL2 prime.
- AAL2 prime protocol requires that AAL2 packets carried in the ATM cell payload be whole packets and that the ATM payload not have an AAL2-type start field.
- AAL2 prime protocol only one whole AAL2 packet is carried per ATM cell payload.
- Fig. 1 is a diagrammatic view showing the format of an ATM cell.
- Fig. 2 is a diagrammatic view showing the format of an AAL2 packet.
- Fig. 3 is a diagrammatic view showing plural AAL2 packets in ATM cells.
- Fig. 3 A is a diagrammatic view showing the format of a start field of an AAL2 packet.
- Fig. 4 is a diagrammatic view showing showing demuliplexing of an ATM cell having AAL2 protocol into an ATM cell having AAL2 prime protocol.
- Fig. 5 is a schematic view of a communications network according to an embodiment of the invention.
- Fig. 6A is a diagrammatic view showing employment of an AAL2 prime protocol according to a first protocol mode of the invention.
- Fig. 6B is a diagrammatic view showing employment of an AAL2 prime protocol according to a second protocol mode of the invention.
- Fig. 7A is a schematic view showing portions of the network of Fig. 5 and particularly illustrating multiplexing of many AAL2 prime connections onto a single ATM-VCC.
- Fig. 7B is a schematic view showing portions of a modification of the network of Fig. 5 wherein the base station controller has plural diversity handover units, also particularly illustrating multiplexing of many AAL2 prime connections onto a single ATM- VCC.
- Fig. 8 is a diagrammatic view showing AAL2 link termination in context of layers and is keyed to components of the network of Fig. 5.
- Fig. 9 is a schematic view of a portion of the network of Fig. 5, and particularly showing multiplexing of a number of ATM- VCC
- Fig. 9A is a schematic view of a portion of a modification of the network of Fig. 5 wherein two cell handling units are provided, and particularly showing multiplexing of a number of ATM-VCC.
- Fig. 9B is a schematic view of a portion of a modification of the network of Fig. 5 wherein two diversity handover (DHO) units are provided, and particularly showing multiplexing of a number of ATM-VCC.
- DHO diversity handover
- Fig. 10A is a schematic drawing depicting a portion of the network of Fig. 5 and utilization of ATM AAL2 prime protocol over a link between a base station controller and a node superior.
- Fig. 1 OB is a schematic drawing depicting a portion of the network of Fig. 5 and utilization of ATM AAL2 protocol over a link between a base station controller and a node superior.
- Fig. IOC is a schematic drawing depicting a portion of the network of Fig. 5 with distributed cell handling units and utilization of ATM AAL2 protocol over a link between a base station and a node superior
- Fig. 11 is a schematic view of a cell handling unit utilized in the network of Fig. 5.
- Fig. 12 is a schematic view of a link multiplexer included in a queue server of the cell handling unit of Fig. 11.
- Fig. 13 is a flowchart showing general steps performed by a cell router of the cell handling unit of Fig. 11 in connection with a router scheduler function.
- Fig. 13 A is a flowchart showing general steps performed by a cell router of the cell handling unit of Fig. 11 in connection with a transfer cell function.
- Fig. 13B is a flowchart showing general steps performed by a cell router of the cell handling unit of Fig. 11 in connection with an ATM Demultiplexing function.
- Fig. 13C is a flowchart showing general steps performed by a cell router of the cell handling unit of Fig. 11 in connection with an AAL2' mapping function.
- Fig. 13D is a flowchart showing general steps performed by a cell router of the cell handling unit of Fig. 11 in connection with an ATM mapping function.
- Fig. 13E is a flowchart showing general steps performed by a cell router of the cell handling unit of Fig. 11 in connection with a top priority function.
- Fig. 13F is a flowchart showing general steps performed by a cell router of the cell handling unit of Fig. 11 in connection with an AAL2 demultiplexing function.
- Fig. 13G is a flowchart showing general steps performed by a Start Field Handling function of the cell handling unit of Fig. 11.
- Fig. 13H is a flowchart showing general steps performed by a Overlap Handling function of the cell handling unit of Fig. 11.
- Fig. 131 is a flowchart showing general steps performed by a Read AAL2 Packet function of the cell handling unit of Fig. 11.
- Fig. 13 J is a flowchart showing general steps performed by a Create AAL2' Cell function of the cell handling unit of Fig. 11.
- Fig. 13K is a flowchart showing general steps performed by a Remove ATM Cell function of the cell handling unit of Fig. 11.
- Fig. 13L is a flowchart showing general steps performed by a Remove AAL2 Packet function of the cell handling unit of Fig. 11.
- Fig. 14 is a flowchart showing general steps performed by a Queue Server Scheduler function of the queue server of Fig. 11.
- Fig. 14A is a flowchart showing general steps performed by a Queue Cell/Packet function of the queue server of Fig. 11.
- Fig. 14B is a flowchart showing general steps performed by a Multiplexing function of the queue server of Fig. 11.
- Fig. 14C is a flowchart showing general steps performed by a ATM Multiplexing function of the queue server of Fig. 11.
- Fig. 14D is a flowchart showing general steps performed by a AAL2 Multiplexing function of the queue server of Fig. 11.
- Fig. 14E is a flowchart showing general steps performed by a Create ATM Header and Start Field function of the queue server of Fig. 11.
- Fig. 14F is a flowchart showing general steps performed by a Select AAL2 Packet function of the queue server of Fig. 11.
- Fig. 14G is a flowchart showing general steps performed by a AAL2 Prime Payload Preparation function of the queue server of Fig. 11.
- Fig. 14H is a flowchart showing general steps performed by a AAL2 Overlap Payload Preparation function of the queue server of Fig. 11.
- Fig. 141 is a flowchart showing general steps performed by a Discard ATM Cell function of the queue server of Fig. 11.
- Fig. 14J is a flowchart showing general steps performed by a Discard AAL2 Packet function of the queue server of Fig. 11.
- Fig. 14K is a flowchart showing general steps performed by a Dequeue ATM Cell function of the queue server of Fig. 11.
- Fig. 14L is a flowchart showing general steps performed by a Dequeue AAL2 Packet function of the queue server of Fig. 11.
- Fig. 15A is a diagrammatic view of an example ATM unload table.
- Fig. 16 A, Fig. 16B, Fig. 17A, and Fig. 17B are schematic views of a cell routing scenarios of the invention.
- Fig. 18 is a diagrammatic view of a combined VCI/CID table according to an embodiment of the invention.
- Fig. 19A is a flowchart showing basic steps for utilizing the combined VCI/CID table of Fig. 18 in connection with a demultiplexing operation.
- Fig. 19B is a flowchart showing basic steps for utilizing the combined VCI/CID table of Fig. 18 in connection with a multiplexing operation.
- Fig. 20A is a flowchart showing basic steps for moving an ATM package into a queue with timestamping.
- Fig. 20B is a flowchart showing basic steps for dequing an ATM package from a queue with timestamping.
- Fig. 20C is a flowchart showing basic steps for monitoring queue fill using timestamping.
- Fig. 21 is a flowchart showing basic steps of a Link Rate Counter function.
- Fig. 22 is a diagrammatic view of a Link Rate Counter
- NETWORK OVERVIEW Fig. 5 shows a communications network 40 which comprises a set 42 of nodes 42j through 42 n (including node 42 x) , node 44; and node 46.
- network 40 has a hierarchical structure, the nodes 42j through 42 n of set 42 being lower order nodes, node 44 being an intermediate node, and node 46 being a higher order node, e.g., node 46 is superior to node 44.
- network 40 takes the form of a mobile telecommunications network wherein nodes 42i through 42 n are base stations (BS), node 44 is a base station controller node, and node 46 is a mobile switching center.
- BS base stations
- node 44 is a base station controller node
- node 46 is a mobile switching center.
- Base station controller 44 is sometimes referred to in the art as a mobile control center (MCC) or a radio network controller (RNC).
- MCC mobile control center
- RNC radio network controller
- a mobile station 48 (such as mobile telephone, for example) communicates over the air interface
- Base stations 42 ! through 42 n are connected by landlines 52] through 52 n to base station controller node 44.
- An interface known as the "super-A” interface exists between base stations 42 j through 42 n and base station controller 44 as depicted by broken line 54.
- Base station controller 44 is connected by landline 56 to mobile switching center (MSC) 46.
- An interface known as the "A” interface exists between base station controller 44 and mobile switching center (MSC) 46 as depicted by broken line 58.
- Mobile switching center (MSC) 46 is usually connected, e.g., via a gateway, to other telecommunication networks, such as the public switched telephone network.
- the example illustrated network 40 is included in a code division multiple access (CDMA) mobile telecommunications system.
- CDMA code division multiple access
- the information transmitted between each base station 42j through 42 n and mobile station 48 is modulated by a different mathematical code (such as a spreading code) to distinguish it from information for other mobile stations which are utilizing the same radio frequency.
- a different mathematical code such as a spreading code
- the individual radio links are discriminated on the basis of codes.
- Various aspects of CDMA are set forth in Garg, Vijay K. et al., Applications of CDMA in Wireless/Personal Communications, Prentice Hall (1997).
- the same baseband signal with suitable spreading is sent from several base stations (e.g., base stations 42 ! through 42 n ) with overlapping coverage.
- Mobile terminal 48 can thus receive and use signals from several base stations simultaneously.
- a mobile station since the radio environment changes rapidly, a mobile station likely has radio channels to several base stations at the same moment, e.g., so that the mobile station can select the best channel and, if necessary, use signals directed to the mobile from various base stations in order to keep radio interference low and capacity high. This utilization of radio channels from multiple base stations by a mobile station in a CDMA scheme is termed "soft handover."
- frames with the same user data are sent from different base stations 42. through 42 n simultaneously on the downlink to the mobile station 48.
- user data sent in frames from mobile station 48 for the mobile connection is received in multiple base stations 42] through 42 n , and at base station controller 44 the frames are combined/selected using a "best quality" technique employed at a diversity handover unit (DHO).
- DHO diversity handover unit
- each base station 42 is simultaneously serving plural mobile stations, and that each mobile station is served simultaneously by plural base stations.
- each mobile station such as mobile station 48
- at least one connection is set up between the mobile station through mobile switching center (MSC) 46 to another party.
- the connection with mobile station 48 thus has parallel legs handled by each base station participating in the connection (e.g., the x l of the parallel legs being over the air interface as denoted by symbol 50 x and over landline 52 x ), with the connection also extending through base station controller 44 and over landline 46 to mobile switching center (MSC) 46.
- Each connection is assigned a channel on the link 52 connecting each base station 42 and base station controller 44.
- the information for each connection is transmitted as frames, with the frames being carried on a channel assigned to the connection.
- AAL2 is employed, so that each frame of a connection is carried in an AAL2 packet in the channel assigned to the connection.
- base stations 42, base station controller 44, and mobile switching center (MSC) 46 are each ATM-based nodes. As such, each of these nodes has an ATM switch generically represented by reference numeral 30.
- base station 42 has an ATM switch 42-30
- base station controller 44 has an ATM switch 44-30
- mobile switching center (MSC) 46 has an ATM switch 46-30.
- Base station controller 44 has a diversity handover unit 60 which performs the diversity and soft handover operations above described. For example, in a selection/combining operation, diversity handover unit 60 compares like frames of user data received on the parallel legs of the connection between mobile station 48 and base station controller 44, and based on the comparison chooses frames (e.g., a best frame of frames on differing legs with the same user data) for forwarding to mobile switching center (MSC) 46.
- the frames are received at base station controller 44 in AAL2 packets which share an ATM cell with AAL2 packets of other connections (e.g., channels). But diversity handover unit 60 cannot handle cells having AAL2 packets for multiple connections.
- each node 42, 44, and 46 has a cell handling unit 32, e.g., each base station 42 has cell handling unit 42-32; base station controller 44 has cell handling unit 44- 32; and mobile switching center (MSC) 46 has cell handling unit 46-32.
- CDC mobile switching center
- generic reference to a cell handling unit 32 is to be understood as being applicable to any one of the cell handling units 42- 32, 44-32, or 46-32.
- the cell handling units 32 are described in greater detail in connection with subsequently described drawings, such as Fig. 15 and Fig. 16, for example.
- AAL2 PRIME PROTOCOL As described in more detail hereinafter, cell handling unit
- cell handling unit 32 uses ATM cells having the AAL2 packets to form ATM cells having a different type AAL protocol.
- the different type AAL protocol is a modified AAL2 protocol, referenced herein as AAL2 prime.
- AAL2 prime protocol the payloads of ATM cells have AAL2 packets belonging to the same channel, all the AAL2 packets in the payload being whole packets, with the payload not having the start field described with reference to Fig. 3 and Fig. 3A.
- ATM cells having AAL2 packets are prepared, e.g., from ATM cells having the different type AAL protocol (e.g., the AAL2 prime protocol).
- Fig. 6A shows employment of the AAL2 prime protocol according to a first protocol mode of the invention.
- Fig. 6 A shows an ATM cell 120 A which has a five octet header 122 and a forty eight octet payload 123 A.
- Payload 123A of cell 120A contains only one AAL2 packet, particularly packet 126.
- AAL2 packet 126 is an entire AAL2 packet.
- Payload 123 A does not contain a start field.
- Remaining octets of payload 123A not utilized by AAL2 packet 126 contain padding 128. No partial AAL2 packets are included in payload 123 A of ATM cell 120A.
- Fig. 6B shows employment of the AAL2 prime protocol according to a second protocol mode of the invention.
- Fig. 6B shows an ATM cell 120B which also has a five octet header 122 and a forty eight octet payload 123B.
- Payload 123B of cell 120B contains more than one AAL2 packet, particularly packets 126B(1) and 126B(2).
- AAL2 packets 126B(1) and 126B(2) are entire AAL2 packets.
- payload 123B does not contain a start field or a partial AAL2 packet.
- Remaining octets of payload 123B not utilized by AAL2 packet 126 contain padding 128. Therefore, the protocol mode of Fig. 6B differs from the protocol mode of Fig. 6A in that, in the mode of Fig. 6B, plural entire AAL2 packets can be encapsulated into an ATM cell having the AAL2 prime protocol.
- Fig. 4 shows how an ATM cell with AAL2 (i.e., cell 20 4-1 ) is demultiplexed into ATM cells with AAL2' protocol (i.e., cells 20' 4-1 , 20' 4-2 , and 20' 4-3 ).
- ATM cell 20 4-1 has header 22 4 and a payload that consists of Start Field 24, AAL2 packets 26 4-1 through 26 4-3 , and padding 28 4 .
- the CID field (see Fig. 2) of the ATM cell with AAL2 protocol designates specific VCC on the node internal connections. In accordance with the mode of the AAL2 prime protocol above discussed with reference to Fig.
- each of the AAL2 packets 26 4-1 through 26 4-3 resides in a separate ATM cell having the AAL2 prime protocol, i.e., cells 20' 4-1 , 20' 4-2 , and 20' 4-3 .
- the ATM AAL2 prime protocol cells 20' 4-1 , 20' 4-2 , and 20' 4-3 have respective headers 22' 4-1 , 22' -2 , and 22' 4-3 , which are followed by the respective AAL2 packets 26 - ⁇ through 26 4-3 , with each cell being concluded with padding fields 28' 4-1 through 28' 4-3 .
- the demultiplexing of the present invention is subsequently described in more detail, e.g., in connection with the cell handling unit of the present invention.
- base station 42 is illustrated in Fig. 5, particularly base station 42 x , which genetically represents other base stations and, as such, is representatively referced to merely as base station 42.
- base station 42 has a controller 42-33; plural extension terminals (only one of which, extension terminal 42-34, is illustrated); and plural transmitter/receiver boards (only one of which, particularly transmitter/receiver board 42-35, is shown).
- each of the devices 42-33 through 42-35, as well as cell handling unit 42-32, resides on respective circuit boards which are connected to ports of ATM switch 42-30.
- An extension terminal 42-34 is implemented for each landline connection of base station 42 to another node of network 40.
- Each transmitter/receiver board 42-35 is connected between ATM switch 42-30 and an antenna broadcasting/reception site, such as site 62 shown for each base station 42.
- Each of the potential plural transmitter/receiver boards can be linked to a separate conesponding antenna broadcasting/reception site.
- base station 42 has been shown in simplified form but in a manner sufficient to illustrate principles of the invention. It should be understood that other base stations have similar constituent boards, although the number of such boards (e.g., extension terminals and transmitter/receiver boards) may vary from base station to base station. The number of base stations employed in network 40 is not critical to the present invention.
- base station controller 44 has ATM switch 44-30, cell handling unit 44-32, and diversity handover (DHO) unit 60.
- base station controller 44 likewise has plural extension terminals, shown as extension terminals 44-34(0) through 44- 34(n) in Fig. 5.
- Extension terminal 44-34(0) is connected between ATM switch 44-30 and link 56 leading to mobile switching center (MSC) 46.
- Extension terminals 44-34(1) through 44-34(n) are connected between ATM switch 44-30 and links 52] - 52 n , respectively, with the links 52] - 52 n leading to base stations 42j through 42 n , respectively.
- base station controller 44 has a main processor board 44-33 upon which a main processor for base station controller 44 resides.
- Each of ATM switch 44-30, cell handling unit 44- 32, diversity handover (DHO) unit 60, extension terminals 44-34(0) through 44-34(n), and main processor 44-33 reside on respective boards which are connected to corresponding ports of ATM switch 44-30.
- Mobile switching center (MSC) 46 similarly has boards connected to its ATM switch 46-30, including boards for extension terminals 46-34(0) and 46-34(1); for cell handling unit 46-32; and for controller 46-33.
- extension terminal 46- 34(0) connects mobile switching center (MSC) 46 to a gateway node
- extension terminal 46-34(1) connects mobile switching center (MSC) 46 to link 56 leading to base station controller 44.
- mobile switching center (MSC) 46 likely is connected to many other base stations in addition to base station controller 44, and that for each such connection a corresponding extension terminal would be supplied.
- mobile switching center (MSC) 46 is likely connected to other mobile switching centers, and that for such connections corresponding extension terminals would also be supplied.
- AAL2 TERMINATION As used herein, an AAL2 link is synonymous with an
- the cell handling units 32 of the present invention make it possible to terminate the AAL2 link and also make use of a conventional ATM switch. For this reason, the cell handling unit 32 is also referced to as an AAL2 link termination unit, or ALT unit for short. As described above, the cell handling unit 32 terminates a multitude of ATM-VCC carrying AAL2 channels.
- the cell handling unit 32 converts each AAL2 channel to an AAL2 prime channel.
- the AAL2 prime protocol makes it possible to carry each individual AAL2 channel in an ATM-VCC inside the conventional ATM switch. That is, the cell handling unit 32 facilitates distribution of the individual AAL2 connections by means of standard ATM switch equipment.
- Fig. 7A shows a distributed system and how many AAL2 prime connections are multiplexed on a single ATM-VCC by the cell handling unit 32.
- Fig. 7A particularly shows that base station 42 has two transmitter/receiver boards 42-35(1) and 42-35(2).
- DHO diversity handover
- a bidirectional AAL2 prime connection is established, as indicated by the broken line in Fig. 7A.
- the bidirectional AAL2 prime connection uses a physical path which involves the following components: diversity handover (DHO) unit 60, cell handling unit 44-32, extension terminal 44-34, link 52, extension terminal 42-34, cell handling unit 42- 32, ATM switch 42-30, and transmitter/receiver board 42-35(1).
- cell handling unit 42-32 of base station 42 several AAL2 prime channels, each on an individual ATM-VCC, are multiplexed into one ATM-VCC utilizing the standard AAL2 protocol.
- cell handling unit 44-32 of base station controller 44 the ATM cells carrying the AAL2 packets have their payloads demultiplexed so that ATM cells carrying payloads having the AAL2 prime protocol are routed to diversity handover (DHO) unit 60.
- DHO diversity handover
- Fig. 7B shows a variation of Fig. 7A wherein base station controller 44 employs plural diversity handover (DHO) units 60(1) through 60(n).
- DHO diversity handover
- DHO diversity handover
- Fig. 8 shows AAL2 link termination in context of a layer diagram and keyed to components of network 40 as illustrated in Fig. 5.
- the LI layer represents the spatial switching of ATM cells in the ATM switches 30 of network 40.
- the two concatenated ATM-VCL links on each side of extension terminal 42-34 represent the ATM-VCC carrying AAL2.
- Extension terminal 42-34 performs concatenation by changing the VCI field in the ATM header according to a translation table that is defined at establishment of the ATM-VCC in accordance with prior art techniques.
- an AAL2 prime connection is an end- to-end network connection carried on an AAL2 channel between the nodes and on an AAL2 prime channel within the node.
- an AAL2 prime connection is carried end-to-end between devices internally in a node on an AAL2 prime channel and between nodes on an AAL2 channel or in the AAL2 prime format in an ATM-VCC when no multiplexing is performed.
- each AAL2 channel is mapped to its specific AAL2 prime channel.
- Each AAL2 prime channel is then mapped to its ATM-VCC that takes the AAL2 prime connection to its final destination.
- Fig. 9 thus shows that a number of ATM-VCC are multiplexed onto one extension terminal (ET) link, each carrying AAL2 prime connections, which are concentrated to one cell handling unit 44- 32. If it turns out that the ET-link has such high capacity and carries so many ATM-VCC that one cell handling unit 44-32 cannot handle the traffic, then base station controller 44 can be equipped with plural cell handling units, such as cell handling unit 44-32(1) and cell handling unit 44-32(2) as shown in Fig. 9A. Regardless of the number of cell handling units 44-32, a cell handling unit 44-32 must be able to handle the load of the AAL2 prime connections carried in the same ATM-VCC.
- Fig. 9B further shows the use of two diversity handover (DHO) units 60(1) and 60(2) employed in base station controller 44.
- DHO diversity handover
- PROTOCOL ON THE "A" INTERFACE The foregoing describes the transmission of ATM cells with AAL2 packets over interface 54 and, within base station controller 44, the multiplexing and demultiplexing between ATM cells with an AAL2 protocol and ATM cells with an AAL2 prime protocol by cell handling unit 44-32.
- the cell handling unit performs queuing of ATM cells which are outbound from the node.
- the protocol on interface 58 between base station controller 44 and mobile switching center (MSC) 46 is also noteworthy. Either of two protocols can be employed on interface 58, either selectively or interchangeably.
- ATM cells having the AAL2 prime protocol can be transmitted from base station controller 44 to other nodes, e.g., mobile switching center (MSC) 46.
- Fig. 10A shows flow of ATM cells on an uplink from interface 54 to mobile switching center (MSC) 46.
- ATM cells with ALL2 packets received over interface 54 are transmitted through extension terminal 44-34(n) and through ATM switch 44-30 to cell handling unit 44-32, all as indicated by cell switching line lOA-1.
- cell handling unit 44-32 the ATM cells with AAL2 packets are demultiplexed into the AAL2 prime protocol, as indicated by functional block 10A-2.
- the ATM cells employing AAL2 prime protocol are switched through ATM switch 44-30 to diversity handover (DHO) unit 60, as indicated by cell switching line 10A-3.
- DHO diversity handover
- a diversity selection function is performed.
- the cells with the selected frames are applied directly (i.e., not switched through ATM switch 44-30) to extension terminal 44-34(0) as indicated by line 10A-4.
- the ATM cells with AAL2 prime protocol are carried over link 56 (e.g., across interface 58) to mobile switching center (MSC) 46.
- MSC mobile switching center
- the ATM cells with AAL2 prime protocol are received at extension terminal 46-34(1), and then routed through ATM switch 46-30 in route to their destination.
- the ATM cells transferred over link 56 (e.g., interface 58) from base station controller 44 to mobile switching center (MSC) 46 have the AAL2 protocol. Therefore, in the mode of Fig. 10B a cell handling procedure different from that of Fig. 10A is employed.
- the cell switching procedures indicated by cell switching lines lOB-1 through 10B-4 are essentially identical to those of cell switching lines lOA-1 through 10A-4 of Fig. 10A.
- DHO diversity handover
- cell handling unit 44-32 performs both a multiplexing operation and a queuing operation.
- the multiplexing operating involves multiplexing from the AAL2 prime protocol (i.e., the protocol of the cells received from diversity handover (DHO) unit 60) to the AAL2 protocol.
- AAL2 prime protocol i.e., the protocol of the cells received from diversity handover (DHO) unit 60
- DHO diversity handover
- ATM cells with AAL2 protocol leave cell handling unit 44-32 for routing through ATM switch 44-30 to extension terminal 44-34(0), as indicated by cell switching line 10B-6.
- the ATM cells with AAL2 protocol are carried over link 56 (e.g., interface 58) to mobile switching center (MSC) 46.
- link 56 e.g., interface 58
- the ATM cells with AAL2 protocol are received at extension terminal 46-34(1), and then routed through ATM switch 46-30 to cell handling unit 46-32 where the AAL2 connection is terminated.
- the ATM cells with AAL2 packets are (like at CHU 44-32) demultiplexed into the AAL2 prime protocol, as indicated by functional block 10B-7.
- the ATM cells employing the AAL2 prime protocol are switched through ATM switch 46-30 as shown by arrow 10B-8 to, e.g., an AAL2 prime termination device, such as a transcoder.
- the AAL2 prime termination converts the ATM cells having AAL2 prime protocol to another protocol, such as, e.g., AAL1, after which such cells are switched (as shown by arrow 10B-9) to another device of node 46 (such as extension terminal 46-34(o) which can transmit the cells out of node 46).
- AAL1 prime protocol such as, e.g., AAL1
- another device of node 46 such as extension terminal 46-34(o) which can transmit the cells out of node 46.
- the ATM cells will be routed out of mobile switching center (MSC) 46.
- MSC mobile switching center
- Fig. IOC differs from Fig. 10B in that base station controller 44 of Fig. IOC employs two cell handling units ⁇ cell handling unit 44-32(1) and cell handling unit 44-32(2).
- the demultiplexing of ATM cells with AAL2 protocol to ATM cells with AAL2 protocol is performed by cell handling unit 44-32(1) [as indicated by process 10C-2].
- the ATM cells with AAL2 prime protocol are sent to cell handling unit 44-32(2), as indicated by cell switching line 10C-4.
- the second cell handling unit 44-32(2) performs the multiplexing and queuing operations, as indicated by functional operation 10C-5.
- the ATM cells with AAL2 protocol leave cell handling unit 44-32(2) and are routed by ATM switch 44-30 to extension terminal 44-34(0) as indicated by cell switching line 10C-6.
- the ATM cells with AAL2 protocol are carried over link 56 (e.g., interface 58) to mobile switching center (MSC) 46 in like manner as with the mode of Fig. 10B.
- MSC mobile switching center
- Fig. 10C differs from that of Fig. 10B in that the functions of cell handling unit 44-32 of Fig. 10B are, in Fig. 10C, divided among the cell handling units 44-32(1) and 44-32(2).
- cell handling unit 44-32(1) performs the multiplexing of ATM cells with AAL2 protocol into ATM cells with AAL2 prime protocol
- cell handling unit 44-32(2) performs the converse demultiplexing and queuing.
- these functions can be distributed in other manners, if desired. For example, both multiplexing and demultiplexing of cells can be performed by one cell handling unit while queuing can be performed by a second cell handling unit.
- one cell handling unit of the node can serve some links while another cell handling unit of the node can handle other links
- a greater number of cell handling units can be used, such as a first cell handling unit for multiplexing, a second cell handling unit for demultiplexing, and a third cell handling unit for queuing.
- Fig. 10A - Fig. IOC discussed above, the arrows have been shown unidirectionally for sake of simplicity. It should be understood in this regard that the AAL2 prime connection between a cell handling unit (CHU) and other devices in the node are, in fact, bidirectional. In this regard, and with respect to the cell handling unit(s) of a node, the multiplexing functions are performed for different links than the links for which the demultiplexing functions are performed.
- CHU cell handling unit
- Fig. 10A The mode of Fig. 10A is likely more appealing when interface 58 between base station controller 44 and mobile switching center (MSC) 46 is not very delay sensitive. However, in the event that interface 58 is delay sensitive, the mode of Fig. 10B (or of Fig. IOC) may be preferable. Moreover, as indicated above, the provision of cell handling units affords the ability to interchangeably use either AAL2 protocol or AAL2 prime protocol over interface 58. In this regard, when cell handling unit 44-32 of base station controller 44 detects that its queues are becoming filled past a predetermined threshold (e.g., indicative of delay), the operator can set the multiplexing mode by macro or configuration.
- a predetermined threshold e.g., indicative of delay
- CELL HANDLING UNIT CHU: STRUCTURAL OVERVIEW
- the effects and benefits of the functions of the cell handling units 32 have been described above ⁇ e.g., the demultiplexing of ATM cells with AAL2 protocol into ATM cells with AAL2 prime protocol, the multiplexing of ATM cells with AAL2 prime protocol into ATM cells with AAL2 protocol, and the queuing of cells prior to transmission. How these operations are performed is understood with reference to the ensuing discussion of the structure of a representative cell handling unit 32 as shown in Fig. 11.
- Fig. 11 shows a representative cell handling unit 32.
- Cell handling unit 32 comprises a board processor (BP) 200; a switch port interface circuit (SPIC) 210; a cell router digitial signal processor (R- DSP) 220; and a queuing resource known as queue server 230.
- BP board processor
- SPIC switch port interface circuit
- R- DSP cell router digitial signal processor
- Queue server 230 preferably comprises one or more digital signal processors (DSPs).
- a processor bus 240 connects each of board processor (BP) 200, cell router 220, and each DSP of queue server 230.
- Two dual port memories are accessible both by cell router 220 and queue server 230, particularly an in-buffer memory 242 and an out-buffer memory 244.
- queue server 230 comprises plural DSPs
- a pair of dual port memories can be provided for each DSP.
- the switch port interface circuit (SPIC) 210 is the part of cell handling unit 32 that is connected to the ATM switch 30.
- switch port interface circuit (SPIC) 210 comprises an incoming cell buffer or FIFO 250 and an outgoing cell buffer or FIFO 252.
- switch port interface circuit (SPIC) 210 comprises an incoming cell multiplexer 254 and an outgoing cell multiplexer 256.
- Incoming cell multiplexer 254 routes cells either to cell router 220 or to board processor (BP) 200; outgoing cell multiplexer 256 selects either cells from cell router 220 or board processor (BP) 200 to route to the ATM switch 30.
- BP board processor
- cell router 220 includes Router Scheduler function 258; ATM demultiplexing function 260 (which interfaces with each of an AAL2' mapping function 262; an ATM mapping function 264; a top priority function 266; an AAL2 Demultiplexing function 268); and transfer cell lunction 270.
- cell router 220 includes a combined VCI/CID table 272.
- VCI/CID table 272 is discussed in more detail below in connection with Fig. 18 and Fig. 19A - Fig. 19B.
- ATM cells incoming to cell handling unit 32 and queued in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210 have a SPIC tag used to direct the ATM cell through the ATM switch 30 to cell handling unit 32.
- the incoming ATM cells have a VCI value in their header. If the incoming ATM cells have an AAL2 protocol, each AAL2 packet has the eight bit channel identifier (CID) in its packet header [see Fig. 2].
- CID channel identifier
- the VCI of the incoming ATM cell is used as an index in combined VCI/CID table 272 to obtain various quantities.
- the quantities obtained from combined VCI/CID table 272 can include a new VCI to be assigned to an outgoing ATM cell, a new SPIC tag value indicative of the next port of the ATM switch 30 to which the cell is destined, and an internal interface header (IIH) to be used for routing information from cell router 220 to queue server 230.
- IIH internal interface header
- the VCI value of the incoming ATM cell header and the CID value in the header of the AAL2 packet stored in the incoming ATM cell are used to index the combined VCI/CID table 272 in order to obtain a new VCI value and SPIC tag to be applied to the ATM AAL2 prime cell being created.
- the cell router 220 sends internal interface packages 246 to queue server 230 via in-buffer memory 242.
- AAL2' mapping function 262 sends AAL2 packets to queue server 230 via in-buffer memory 242.
- ATM mapping function 264 sends ATM cells to queue server 230 via in-buffer memory 242.
- the ATM cells and AAL2 packets sent to queue server 230 via in-buffer memory 242 from cell router 220 each have an internal interface header (HH) applied thereto by cell router 220. Accordingly, as shown in Fig. 11, each package 246 sent from cell router 220 to queue server 230 via in- buffer memory 242 has the internal interface header IIH.
- Top priority function 266 sends a top priority indication to queue server 230 (as indicated by the broken line in Fig. 11), and outgoing cells directly to FIFO 252.
- AAL2 Demultiplexing function 268 sends ATM cells having the AAL2 prime protocol to outgoing cell FIFO 252.
- Transfer cell function 270 receives ATM cells (of either AAL2 protocol or straight ATM protocol) from queue server 230 via out-buffer memory 244 and sends the ATM cells to outgoing cell FIFO 252.
- Transfer cell function 270 is described subsequently in more detail in connection with Fig. 13 A.
- AAL2 Demultiplexing function 268 is described subsequently in more detail in connection with Fig. 13B.
- AAL2' mapping function 262 is described subsequently in more detail in connection with Fig. 13C;
- ATM mapping function 264 is described subsequently in more detail in connection with Fig. 13D;
- top priority function 266 is described subsequently in more detail in connection with Fig. 13E;
- ATM demultiplexing function 260 is described subsequently in more detail in connection with Fig. 13F.
- Some of the functions of cell router 220 send (via in- buffer memory 242) internal interface packages 246 to queue server 230 for multiplexing and/or queuing.
- Queue server 230 which comprises one or more digital signal processors, is shown in Fig. 11 as performing various functions, including the function of link multiplexers.
- queue server 230 has a link multiplexer 280 for each extension terminal (ET) link or ET ATM port of the node.
- the queuing and multiplexing operations of queue server 230 are essentially performed in the link multiplexers 280.
- Fig. 11 illustrates that the number of link multiplexers 280 is dynamically changeable in accordance with the number of ET ATM ports with CHU support which are active at the node at any instance.
- the internal interface packages 246 (containing either ATM cells or AAL2 packets) are extracted from in-buffer memory 242 by the link multiplexers 280.
- a link multiplexer 280 knows what internal interface package 246 is directed to it by the internal interface header IIH stored with the internal interface package 246.
- cells multiplexed or queued by queue server 230 are stored in out-buffer memory 244.
- queue server 230 has other functions, some of which are indicated in block 230 of Fig. 11. Among these functions are the Queue Server Scheduler function 283 (described in more detail in conjunction with Fig. 14), which calls both Queue Cell/Packet function 284 (see Fig. 14A) and Multiplexing function 286 (see Fig. 14B). The Multiplexing function 286 calls ATM Multiplexing function 288 (see Fig. 14C), which in turn can call AAL2 Multiplexing function 290 (see Fig. 14D). Other functions of queue server 230 are not shown in Fig. 11 but are hereinafter described.
- the queue server 230 comprises eight digital signal processors, two of which are used by the cell handling unit.
- LINK MULTIPLEXER Functions of a link multiplexer 280 are illustrated in Fig. 12. Each link multiplexer 280 has both an AAL2 aspect and an ATM aspect. In Fig. 12, line 300 symbolically divides AAL2 aspect 302 from ATM aspect 304.
- the ATM aspect 304 is also referred to as the first stage of the link multiplexer 280, whereas the AAL2 aspect 302 is also referced to as the second stage of the link multiplexer 280.
- AAL2 aspect 302 primarily comprises an AAL2 queuing unit for each of four VCIs, e.g., AAL2 VCI queuing units 310i through 310 4 .
- a greater or lesser number of AAL2 VCI queuing units 310 can be employed in other embodiments.
- Each AAL2 VCI queuing unit 310 comprises plural input buffers or FIFOs 312 which receive internal interface packages 246, each internal interface package 246 containing an AAL2 packet.
- the internal interface packages 246 fed to the AAL2 VCI queuing units 310 from in-buffer memory 242 are the internal interface packages 246 forwarded from AAL2' mapping function 262 of cell router 220 (see Fig. 11).
- each AAL2 VCI queuing unit 310 a separate input FIFO 312 can be assigned to each different service class (e.g., quality of service type, QoS) handled by the respective VCI.
- service class e.g., quality of service type, QoS
- four input FIFOs 312 are provided for each AAL2 VCI queuing units 310, a first input FIFO 312 for handling quality class 1, a second input FIFO 312 for handling quality class 2, and so forth to quality class 4.
- a greater or lesser number of input FIFOs 312 can be provided for each AAL2 VCI queuing unit 310.
- the input FIFOs 312 can be used for classifications other than quality of service type.
- the outputs of each of the input buffers or FIFOs 312 within a AAL2 VCI queuing unit 310 are all connected to input ports of an AAL2 VCI multiplexer 314 of that AAL2 VCI queuing unit 310.
- the AAL2 VCI multiplexer 314 of each AAL2 VCI queuing unit 310 selects first-in internal interface packages 246 from the input FIFOs 312 of the AAL2 VCI queuing unit 310 in accordance with an order established in a corresponding AAL2 VCI multiplexer unload table 316, and forwards the selected cell to ATM aspect 304 of link multiplexer 280.
- An example of an AAL2 VCI multiplexer unload table 316 is shown in Fig. 15B.
- ATM aspect 304 of link multiplexer 280 comprises four ATM cell input buffers or FIFOs 320 ⁇ through 320 4 .
- Each of the ATM cell input FIFOs 320 can be for a different quality class, e.g., ATM cell input FIFO 320j being for quality class 1, ATM cell input FIFO 320 2 being for quality class 2, and so forth up to quality class 4.
- Each ATM cell input FIFO 320 receives ATM cells via in-buffer memory 242 as a result of operation ATM mapping function 264 of cell router 220 (see Fig. 11).
- Fig. 12 shows a top priority indication obtained from in-buffer memory 242 being represented as 322.
- Each of the inputs to ATM multiplexer 330 are labeled for sake of illustration to be compatible with example unload tables described with reference to Fig. 15A and Fig. 15B.
- the input from top priority indication 322 is labeled as "T”.
- the inputs from ATM cell input FIFOs 320j through ATM cell input FIFO 320 4 are respectively labeled as inputs "A" through "D".
- the inputs from the AAL2 VCI multiplexers 314 of the AAL2 VCI queuing units 310j through 310 4 are labeled as inputs "E" through "H", respectively.
- another input to ATM multiplexer 330 is fed from an ATM cell header formatter 332.
- the ATM cell header formatter 332 is used in the AAL2 aspect of the link multiplexer 280. In this regard, when AAL2 packets have been multiplexed into one ATM cell, this function forms the ATM header of the ATM cell to be sent.
- ATM multiplexer 330 selects from its various inputs in accordance with a predetermined order stored in ATM multiplexer unload table 336.
- An example of ATM multiplexer unload table 336 is shown in Fig. 15A.
- ATM multiplexer 330 outputs an ATM cell to out- buffer memory 244 (see Fig. 11).
- the out-buffer memory 244 is conceptualized as having a FIFO register for each link multiplexer 280, as depicted by FIFO 340 in Fig. 12. Cells stored in the FIFO 340 of out-buffer memory 244 for the link multiplexer 280 are extracted by Transfer cell function 270 of cell router 220 for sending to outgoing cell FIFO 252 (see Fig. 1 1).
- Fig. 15A shows an example unload table 336 for the ATM aspect 304 of a representative link multiplexer 280
- Fig. 15B shows an example unload table 316 for the AAL2 aspect 302 of the same link multiplexer 280.
- each row of the unload table 336 and each row of unload table 316 correspond to a priority level. For example, the top row of each table shows the highest priority level.
- a column of the unload table is traversed in search for a cell to send. In each column, the highest indicated priority input to the multiplexer is checked first. If that priority cannot produce a cell, then the next highest priority is checked, and so forth.
- a pointer is used to keep track of the columns pointed to for a next transmission opportunity.
- Fig. 13 together with Fig. 13A - Fig. 13F, describe various functions performed by cell router 220 of cell handling unit 32.
- Fig. 13 particularly shows general steps performed by the Router Scheduler function 258 of cell router 220.
- a boot, load and initialize operation is performed (step 13-2).
- cell router 220 executes a loop which begins with step 13-3.
- step 13-3 cell router 220 determines whether there is a cell in out-buffer memory 244 of queue server 230 which should be transferred out of cell handling unit 32. If such a cell exists for transfer, the Transfer cell function 270 is performed as indicated by step 13-4.
- General steps involved in Transfer cell function 270 are illustrated and discussed hereafter with reference to Fig. 13 A.
- cell router 220 determines whether there is a cell in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210 which awaits processing. If such a cell awaits, the ATM demultiplexing function 260 is performed as indicated by at step 13-6 . General steps involved in ATM demultiplexing function 260 are illustrated and discussed hereafter with reference to Fig. 13B. If no such cell exists in incoming cell FIFO 250, at step 13-7 the cell router 220 executes a slice of the background. The background of which a slice is executed at step 1307 includes such things as delivering signals from board processor (BP) 200 to either cell router 220 or queue server 230.
- BP board processor
- Such signals include transmission order tables (e.g., values to be stored in the unload tables 316 and 336 of the link multiplexers 280, for example [see Fig. 12]), control information, and the like.
- transmission order tables e.g., values to be stored in the unload tables 316 and 336 of the link multiplexers 280, for example [see Fig. 12]
- control information e.g., control information, and the like.
- TRANSFER CELL FUNCTION Transfer cell function 270 initiated by cell router 220 at step 13-4 of the Router Scheduler function 258 (see Fig. 13), has general steps which are depicted in Fig. 13 A. The beginning of Transfer cell function 270 is depicted by symbol 13A-1.
- one of the link multiplexers 280 is selected to have its outgoing ATM cell FIFO 340 (included in out-buffer memory 244) tapped for transmitting a cell to cell router 220.
- Transfer cell function 270 can select the link multiplexers 280 for cell output on any predetermined basis, e.g., in round-robin fashion.
- step 13A-3 the selected cell is moved to outgoing cell FIFO 252 of switch port interface circuit (SPIC) 210. After a cell is so transferred, transfer cell function 270 is terminated (as indicated by step 13A-4) until again called.
- SPIC switch port interface circuit
- ATM demultiplexing function 260 serves basically to read cells from incoming cell FIFO 250 of switch port interface circuit (SPIC) 210; check that a connection is established; and separate ATM cells received from incoming cell FIFO 250 according to the four handled cell formats (AAL2 prime; AAL5; top priority, and AAL2).
- ATM demultiplexing function 260 initiated by cell router 220 at step 13-6 of the Router Scheduler function 258 (see Fig. 13), has general steps which are depicted in Fig. 13B. The beginning of ATM demultiplexing function 260 is depicted by symbol 13B-1. At step 13B- 2, a check is made whether a cell awaits in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210. If no cell awaits, ATM demultiplexing function 260 is terminated as indicated by symbol 13B- 3. If a cell does reside in incoming cell FIFO 250, the remainder of ATM demultiplexing function 260 is performed beginning with step 13B-4.
- ATM demultiplexing function 260 reads the header of the awaiting cell from incoming cell FIFO 250 of switch port interface circuit (SPIC) 210. Once the cell header has been read, ATM demultiplexing function 260 looks up the VCI of the incoming cell using combined VCI/CID table 272 (see also Fig. 18 and Fig. 19A - Fig. 19B). At step 13B-6 a validity check is performed relative to the VCI of the incoming cell. If the VCI of the incoming cell is invalid (e.g., out of range or no connection established), at step 13B-7 the incoming cell is discarded using a Remove ATM Cell function. The Remove ATM Cell function is described subsequently in more detail in connection with Fig. 13F-5. Upon completion of the Remove ATM Cell function, ATM demultiplexing function 260 is terminated (step 13B-8).
- step 13B-9 If the VCI of the incoming cell is valid, the type of the cell is checked at step 13B-9. In this regard, valid VCIs lie in four separate ranges for each of four different cell formats. Therefore, at step 13B-9, the received VCI is compared against these ranges to determine to which of the four formats the cell belongs.
- one of the four following functions is selected for a macro call: AAL2' mapping function 262 (see Fig. 13C) [step 13B-10]; ATM mapping function 264 (see Fig. 13D) [step 13B-11]; top priority function 266 (see Fig. 13E) [step 13B-12]; and AAL2 Demultiplexing function 268 top priority function 266 (see Fig. 13F) [step 13B-13]. After execution of the appropriate one of these functions, ATM demultiplexing function 260 terminates as indicated by symbol 13B-14.
- AAL2' mapping function 262 serves basically to peel off the ATM format from an ATM cell with the AAL2 prime protocol; add the internal interface header IIH that routes the AAL2 packet included in the incoming cell to the queue server 230 (e.g., the correct DSP in queue server 230) and the corcect AAL2 quality of class queue (e.g., one of input FIFOs 312 for the correct AAL2 VCI queuing unit 310); and to write the AAL2 packet to the correct input FIFO 312 of queue server 230.
- the queue server 230 e.g., the correct DSP in queue server 230
- the corcect AAL2 quality of class queue e.g., one of input FIFOs 312 for the correct AAL2 VCI queuing unit 310
- AAL2' mapping function 262 initiated by cell router 220 at step 13B-10 of ATM demultiplexing function 260 (see Fig. 13B), has general steps which are depicted in Fig. 13C The beginning of AAL2' mapping function 262 is depicted by symbol 13C-1.
- AAL2' mapping function 262 obtains an internal interface header from combined VCI/CID table 272.
- This internal interface header IIH is used, along with the AAL2 packet, to form the internal interface package 246.
- the internal interface header (IIH) is also used to store the internal interface package 246 in a proper address in in-buffer memory 242 so that the appropriate one of the link multiplexers 280 in queue server 230 can obtain the internal interface package 246.
- this internal interface header IIH is used to route the internal interface package 246 to the correct DSP in queue server 230 and, moreover, to the corcect AAL2 quality of class queue (e.g., one of input FIFOs 312) for the correct AAL2 VCI queuing unit 310 of the correct link multiplexer 280 [see Fig. 12].
- Step 13C-4 involves AAL2' mapping function 262 obtaining the AAL2 packet from the incoming cell in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210. After the AAL2 packet has been obtained at step 13C-4, the internal interface header IIH procured at step 13C-3 is added thereto at step 13C-5 to form the internal AAL2 interface package 246 (see Fig.
- step 13C-6 the internal AAL2 interface package 246 formed at step 13C-5 is moved to in-buffer memory 242 so that it can be obtained by the particular input FIFO 312 of queue server 230 which is addressed by the internal interface header. With the internal interface package 246 thus transferred to in-buffer memory 242, at step 13C-7 the remainder of the awaiting cell in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210 is cleared. Symbol 13C-8 shows AAL2' mapping function 262 then being exited.
- SPIC switch port interface circuit
- ATM mapping function 264 serves to perform a switching operation with respect to the VCI and SPIC tag in the header of an ATM cell; to add an internal interface header IIH to the ATM cell; and to write the internal interface package 246 containing the ATM cell and internal interface header IIH into in-buffer memory 242 so that the appropriate link multiplexer 280 can obtain the same.
- ATM mapping function 264 initiated by cell router 220 at step 13B-11 of ATM demultiplexing function 260 (see Fig. 13B), has general steps which are depicted in Fig. 13D.
- the beginning of ATM mapping function 264 is depicted by symbol 13D-1.
- ATM mapping function 264 obtains the VCI value in the header of the next awaiting cell in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210.
- SPIC switch port interface circuit
- ATM mapping function 264 uses the VCI value from the header as an index to obtain, from combined VCI/CID table 272, a new VCI, a new SPIC tag, and an internal interface header IIH.
- ATM mapping function 264 creates a new ATM header for an outgoing ATM cell.
- Step 13D-4 shows ATM mapping function 264 obtaining from incoming cell FIFO 250 the ATM payload of the next awaiting ATM cell whose header was read at step 13D-2.
- ATM mapping function 264 adds the SPIC tag and the new ATM header obtained at step 13D-4 to the internal interface header IIH fetched at step 13D-2 to form the internal interface package 246 (see Fig. 11).
- step 13D-6 the internal interface package 246 is moved to a location in the in-buffer memory 242 specified by the internal interface header, so that the internal interface package 246 can be extracted by the proper ATM cell input FIFO 320 of the correct link multiplexer 280 in queue server 230 (see Fig. 12).
- Symbol 13D-7 depicts exiting of ATM mapping function 264.
- Top priority function 266 serves to switch VCI and SPIC tag values, and to move a top priority cell to outgoing cell FIFO 252.
- top priority function 266 provides an indication to the link multiplexer 280 for the ET link to which the top priority cell is applied that a top priority cell has been processed. This indication is used to control flow of cells on that ET link.
- the beginning of top priority function 266 is depicted by symbol 13E-1.
- the top priority function 266 obtains the VCI of the next awaiting cell in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210.
- SPIC switch port interface circuit
- top priority function 266 uses the VCI value from the header as an index to obtain, from combined VCI/CID table 272, a new VCI, a new SPIC tag, and the internal interface header IIH.
- top priority function 266 obtains the ATM payload from the next awaiting cell in incoming cell FIFO 250.
- Step 13E-4 shows top priority function 266 adding the ATM payload obtained at step 13E-3 to the VCI and SPIC tag fetched at step 13E-2 to form a top priority ATM cell package.
- the top priority ATM cell is moved to outgoing cell FIFO 252.
- a top priority indicator is set relative to the ET link upon which the top priority ATM cell is discharged (as shown by the broken line in Fig. 11 and top priority indicator 322 in Fig. 12).
- Symbol 13E-7 shows exiting of top priority function 266.
- AAL2 Demultiplexing function 268 serves essentially to demultiplex AAL2 packets in ATM cells bearing AAL2 packets into ATM cells having the AAL2 prime protocol.
- Step 13F-2 involves calling the Start Field Handling function.
- the Start Field Handling function of step 13F-2 is discussed subsequently in connection with Fig. 13G.
- the Start Field Handling function is used to extract and handle the start field 24 of the ATM cell having AAL2 packets (see Fig. 3 and Fig. 3 A).
- step 13F-4 and step 13F-5 are performed prior to exiting AAL2 Demultiplexing function 268 (as indicated by symbol 13F-6).
- step 13F-4 the Remove ATM Cell function is performed [see Fig. 13K] to remove the next awaiting cell in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210.
- Step 13F-5 causes reset of an error indication.
- step 13F-7 a Overlap Handling function is called.
- the Overlap Handling function is discussed in more detail in connection with Fig. 13H. After exiting of the Overlap Handling function, a loop commencing with step 13F-8 is next performed.
- the loop commencing at step 13F-8 serves to read the remainder of the payload of the next awaiting ATM cell in incoming cell FIFO 250 (the start field having already been processed at step 13F- 2).
- the next byte of the payload is read.
- Step 13F-9 involves determining whether an AAL2 packet is still left in the payload. If it turns out that the remainder of the payload is padding (see Fig. 3), at step 13F-10 the remainder of the cell is cleared from incoming cell FIFO 250 and AAL2 Demultiplexing function 268 is exited (as indicated by symbol 13F-11).
- the next AAL2 packet of that cell is read using the Read AAL2 Packet function at step 13F-12.
- the Read AAL2 Packet function is described in more detail in connection with Fig. 131.
- step 13F- 13 If it is determined at step 13F- 13 that the next AAL2 packet read at step 13F-12 overlaps to a following ATM cell in incoming cell FIFO 250, an overlap indication is set at step 13F-14 prior to exiting AAL2 Demultiplexing function 268 (depicted by symbol 13F- 15). Otherwise, at step 13F-16 a Create AAL2' Cell function is called. The Create AAL2' Cell function is described in greater detail with respect to Fig. 13J. After the ATM cell with AAL2 protocol is created at step 13F-16, a determination is made at step 13F-17 whether the end of the next awaiting cell in incoming cell FIFO 250 has been encountered.
- AAL2 Demultiplexing function 268 is exited as indicated by symbol 13F-18. Otherwise, AAL2 Demultiplexing function 268 loops back to step 13F-8 for the reading of the next byte of the next awaiting cell in incoming cell FIFO 250.
- the Start Field Handling function serves to check the start offset (see Fig. 3 and Fig. 3 A) of an ATM cell having AAL2 packets.
- the Start Field Handling function is called at step 13F-2 of AAL2 Demultiplexing function 268 (see Fig. 13F).
- the Start Field Handling function has general steps which are depicted in Fig. 13G.
- Step 13G-2 involves reading the start field 24 from the next awaiting cell in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210.
- step 13G-3 the parity of the start field is checked. If the parity of the start field is not corcect, an ercor indication is set as shown at step 13G-4. If the parity is correct, at step 13G-5 a check is made to determine that the offset value is less than forty eight. If the offset value is not less than forty eight, the ercor indication is set at step 13G-4. If the offset value is less than forty eight, a last check is made at step 13G-6 whether the sequence number is corcect. If the sequence number is corcect, the Start Field Handling function exits as depicted by symbol 13G-7.
- Start Field Handling function determines that the sequence number is not corcect, inquiry is made at step 13G-8 whether the overlap indication has been set.
- the overlap indication could have been set by a previous execution of step 13F-14 (see Fig. 13F). If there is no overlap indication set, Start Field Handling function exits as indicated by symbol 13G-9. If the overlap indication has been set, step 13G-10 involves resetting the overlap indication. Then, at step 13G-11, the stored part of the AAL2 packet is discarded before existing from the Start Field Handling function (step 13G-12).
- AAL2 Demultiplexing function 268 (see Fig. 13F), has general steps which are depicted in Fig. 13H.
- the beginning of the Overlap Handling function is depicted by symbol 13H-1.
- inquiry is made at step 13G-8 whether the overlap indication has been set.
- the overlap indication could have been set by a previous execution of step 13F-14 (see Fig. 13F).
- step 13H-3 of the Overlap Handling function is performed.
- step 13H-3 it is determined whether the start field of the next awaiting cell in incoming cell FIFO 250 of switch port interface circuit (SPIC) 210 is greater than zero. If the start field is determined at step 13H-3 to be greater than zero, step 13H-4 through step 13H-7 are performed prior to the Overlap Handling function being exited (as indicated by symbol 13H-8).
- step 13H-4 the overlapping part of the AAL2 packet is read from incoming cell FIFO 250. Then, at step 13H-5, the AAL2 packet is assembled.
- Step 13H-6 involves resetting the overlap indication. Then, at step 13H- 7, the Create AAL2' Cell function is called.
- the Create AAL2' Cell function is described in more detail subsequently in connection with Fig. 13J.
- the Overlap Handling function is exited (symbol 13H-8).
- step 13H-9 is performed.
- step 13H-9 the stored part of the AAL2 packet is discarded.
- the overlap indication is reset, and an ercor indication is set at step 13H-11 prior to exiting of the Overlap Handling function as depicted by symbol 13H-12.
- the Overlap Handling function determines that the overlap indication has not been set, a check is made at step 13H-13 whether the start field is greater than zero. If the start field is not greater than zero, the Overlap Handling function is exited as depicted by symbol 13H-14. Otherwise, at step 13H-15, the overlapping part of the packet is cleared from incoming cell FIFO 250 and an ercor indication set at step 13H-16 prior to exiting of the Overlap Handling function (as indicated by symbol 13H-7).
- the Read AAL2 Packet function called at step 13F-12 of AAL2 Demultiplexing function 268 (see Fig. 13F), has general steps which are depicted in Fig. 131.
- the beginning of the Read AAL2 Packet function is depicted by symbol 131-1.
- Step 131-2 it is determined whether the AAL2 packet header is greater than the remainder of the ATM cell. If the determination of step 131-2 is affirmative, the rest of the cell is read from incoming cell FIFO 250 at step 131-3 and stored (in an allocated memory space [of 47 octet length] for overlapping AAL2 packets) prior to exiting of the Read AAL2 Packet function as shown by symbol 131-4.
- the overlap indicator is set in a data structure holding an instance of the demultiplexing object. If it is determined at step 131-5 that an AAL2 packet overlap exists, the rest of the cell is read from incoming cell FIFO 250 at step 131-6 so that the AAL2 packet can be reassembled and sent in a cell with the AAL2 prime format prior to exiting of the Read AAL2 Packet function as shown by symbol 131-7.
- the Create AAL2 Cell function is called at step F 13- 16 of AAL2 Demultiplexing function 268 (see Fig. 13F) and at step 13H-7 of Overlap Handling function [see Fig. 13H].
- the Create AAL2 Cell function has general steps which are depicted in Fig. 13J.
- Step 13J-2 the Create AAL2' Cell function obtains the new VCI and new SPIC tag from the CID table.
- the CID table is indexed by both VCI and CID. If the CID is not valid (determined at step 13J-3), the Remove AAL2 Packet function is invoked prior to exiting from the Create AAL2' Cell function (as indicated by step 13J-5). If the CID is valid, at step 13J-6 the AAL2 packet is added to the new SPIC tag and new VCI to form a new ATM cell.
- the new ATM cell formed by the Create AAL2' Cell function has the AAL2 prime protocol, the remainder of the payload is padded with zeroes at step 13J-7. Then, at step 13J-8, the newly created AAL2 prime cell is moved to outgoing cell FIFO 252 prior to exiting from the Create AAL2' Cell function as indicated by step 13J-9.
- the Remove ATM Cell function basically serves to remove the next awaiting ATM cell in incoming cell FIFO 250 if that cell has an invalid VCI or the connection is not established.
- the Remove ATM Cell function is called at step 13B-7 of ATM demultiplexing function 260 (see Fig. 13B) and step 13F-4 of AAL2 Demultiplexing function 268 (see Fig. 13F).
- the Remove ATM Cell function has general steps which are depicted in Fig. 13K.
- Step 13K-2 involves discarding the header of the next awaiting ATM cell in incoming cell FIFO 250. Then, at step 13K-3, the payload of the next awaiting ATM cell is removed from incoming cell FIFO 250. An ercor indication is set (step 13K-4) before the Remove ATM Cell function is exited (as depicted by step 13K-5).
- the Remove AAL2 Packet function basically serves to remove an AAL2 packet in the next awaiting ATM cell in incoming cell FIFO 250 if that cell has an invalid VCI, or if the packet has an invalid CID, or if the connection is not established.
- the Remove AAL2 Packet function called at step 13J-4 of Create AAL2' Cell function [see Fig. 13J], has general steps which are depicted in Fig. 13L. The beginning of the Remove AAL2 Packet function is depicted by symbol 13L-1.
- Step 13L-2 involves Remove AAL2 Packet function discarding the header of the AAL2 packet of the next awaiting ATM cell in incoming cell FIFO 250.
- the payload of the AAL2 packet of the next awaiting cell is discarded.
- an ercor indication is set at step 13L-4 prior to the Remove AAL2 Packet function being exited as indicated by step 13L-5.
- QUEUE SERVER OPERATION SCHEDULER FUNCTION Various functions of cell router 220 have been described above. Next described are functions performed by queue server 230.
- the Queue Server Scheduler function 283 of queue server 230 has basic steps illustrated in Fig. 14. After a reset (indicated by step 14-1) and booting, loading, and initializing (reflected by step 14-2), a loop beginning with step 14-3 is repetitively executed.
- Queue Server Scheduler function 283 of queue server 230 determines whether it is time to transmit a cell via out- buffer memory 244 to cell router 220. In particular, at step 14-3 the Queue Server Scheduler function 283 checks whether the cell transmission rate on any of the physical links now permits discharge of an ATM cell from in-buffer memory 242 destined for that physical link. If it is not time to transmit a cell, at step 14-4 the Queue Cell/Packet function 284 is invoked to read an internal interface packet 246 (e.g., an ATM cell or AAL2 packet) from in-buffer memory 242, and e.g., to move the internal interface packet 246 into an appropriate one of the FIFOs 312 or 320. The appropriate one of the FIFOs 312 or 320 is specified in the internal interface header IIH accompanying that internal interface packet 246 (described in more detail in connection with Fig. 14A).
- an internal interface packet 246 e.g., an ATM cell or AAL2 packet
- Step 14-3 checking of the cell transmission rate and determining whether to permit discharge of an ATM cell from in-buffer memory 242 is described in more detail subsequently in connection with a Link Rate Counter function. If it is determined at step 14-3 that it is time for a particular physical link (via its extension terminal ET) to accept an ATM cell, the Queue Server Scheduler function 283 obtains at step 14-5 an indication of particular one of the link multiplexers 280 corresponding to the time-eligible extension terminal ET. Then, the link multiplexer 280 for time-eligible ET link is checked at step 14-6 to ascertain whether its queues (e.g., input FIFOs 312 and ATM cell input FIFOs 320) are loaded in order to form a cell.
- queues e.g., input FIFOs 312 and ATM cell input FIFOs 320
- the Multiplexing function 286 is invoked at step 14-7. Invocation of the Multiplexing function 286, which calls other functions, ultimately results in preparation of an ATM cell from the link multiplexer 280 corresponding to the time-eligible extension terminal ET link, and discharge of that ATM cell from out-buffer memory 244.
- step 14-6 If it is determined at step 14-6 that the queues of the selected link multiplexer 280 are not ready, a slice of the background is executed (as indicated by step 14-8) prior to looping back to step 14-3.
- Queue Server Scheduler function 283 serves to supervise the queuing of cells within the link multiplexers 280. In connection with the queuing supervision, Queue Server Scheduler function 283 calls upon the Queue Cell/Packet function 284. In connection with the governing of cell transmission to cell router 220, the Queue Cell/Packet function 284 calls upon the Multiplexing function 286.
- QUEUE SERVER OPERATION QUEUE CELL/PACKET
- Symbol 14A-1 reflects initiation of the Queue Cell/Packet function 284.
- Step 14A-2 shows Queue Cell/Packet function 284 inquiring whether an internal interface package 246 (e.g., an internal interface header IIH with either an ATM cell or an AAL2 packet) is available from in-buffer memory 242 (see Fig. 11). If no internal interface package 246 is available, Queue Cell/Packet function 284 exits as indicated by symbol 14A-3.
- an internal interface package 246 e.g., an internal interface header IIH with either an ATM cell or an AAL2 packet
- step 14A-4 a determination is made whether to place the internal interface package 246 in one of the queues or FIFOs 312 or 320 (see Fig. 12). If the internal interface package 246 is not to be inserted into a queue or FIFO, an appropriate discard function is invoked at step 14A-5, i.e., either the Queue Discard ATM cell function (see Fig. 141) or the Discard ATM AAL2 packet function (see Fig. 14J). Upon completion of the appropriate discard function, Queue Cell/Packet function 284 is exited as reflected by step 14A-6.
- the internal interface header IIH which was included in the internal interface package 246 is replaced with a time stamp (TS) [see Fig. 12].
- TS time stamp
- the internal interface package 246 (including either a cell or packet) is moved to the appropriate one of the FIFOs, e.g., one of the input FIFOs 312 for an AAL2 packet or one of the ATM cell input FIFOs 320 for an ATM cell, as specified in the internal interface header of the appropriate one of the link multiplexers 280.
- step 14A-7 of a time stamp (TS) for the internal interface header IIH the input FIFO 312 for service class 1 of the AAL2 VCI queuing unit 310.
- Fig. 12 shows that an internal interface package 246 containing an AAL2 packet has its internal interface header IIH replaced with time stamp TS and stored at the head of that input FIFO 312.
- the Queue Cell/Packet function 284 is also known as the Time Stamping function.
- each of the internal interface packages 246 may have numerous internal interface packages 246 stored therein, with each of the internal interface packages 246 having a corresponding time stamp TS as the one indicated in Fig. 12. It should further be understood that the time stamp TS can be added to or concatenated with the internal interface package 246, and need not necessarily replace the internal interface header (IIH).
- QI queue indication
- Each of FIFOs 312 and 320 in Fig. 12 are provided with a queue indication (QI), which is a bit corresponding to the associated FIFO stored in a memory.
- the queue indication (QI) is set as long as the appropriate FIFO has at least one entry (e.g., a cell or packet, as the case may be). If the queue indication (QI) has not been set, the queue indication (QI) is set at step 14A-10 prior to exiting of Queue Cell/Packet function 284 (reflected by step 14A-1 1). If the queue indication (QI) has been set, the Queue Cell/Packet function 284 is simply exited at step 14A-12.
- Multiplexing function 286 is invoked by Queue Server Scheduler function 283 at step 14-7.
- Basic steps performed by Multiplexing function 286 are shown in Fig. 14B.
- Symbol 14B-1 reflects initiation of the Multiplexing function 286.
- Step 14B-2 inquires whether a top priority indication has been set (see top priority indication 322 in Fig. 12). A top priority indication for an ATM cell would have been indicated in in-buffer memory 242 at step 13E-6 of the top priority function 266 of cell router 220 (see Fig. 13E). If the top priority indication 322 has not been set, ATM Multiplexing function 288 is invoked at step 14B-3.
- ATM Multiplexing function 288 multiplexes ATM cells belonging to different quality classes on the ATM aspect 304, and calls the AAL2 Multiplexing function 290 for forming ATM cells with multiplexed AAL2 packets (the AAL2 aspect 302).
- ATM Multiplexing function 288 Upon completion of ATM Multiplexing function 288, Multiplexing function 286 is exited as indicated by step 14B-4. If the top priority indication 322 has been set, at step 14B-5 the top priority indication 322 is reset prior to exiting from Multiplexing function 286 (as indicated by step 14B-6).
- ATM Multiplexing function 288 is called by Multiplexing function 286 (see step 14B-3 of Fig. 14B). At the time that ATM Multiplexing function 288 has been invoked, Multiplexing function 286 has selected the particular link multiplexer 280 (serving a corresponding ET link) from which a cell is to be multiplexed out. Basic steps performed by ATM Multiplexing function 288 are shown in Fig. 14C. Symbol 14C-1 reflects initiation of the ATM Multiplexing function 288. Step 14C-2 is the beginning of a potential loop. At step 14C-2, ATM Multiplexing function 288 consults the unload table 336 for the link multiplexer 280 (see Fig. 12), and particularly to the column thereof pointed to for this cell sending opportunity.
- ATM Multiplexing function 288 checks for the highest priority level for the pointed-to column of the unload table 336 to determine if the FIFO thereof has a cell to unload. If a cell does not exist in the highest ranking FIFO of the highest priority level, other FIFOs of descending priority in the same column are checked for presence of a cell (with reference to the queue indication (QI)s for the FIFOs). For example, with reference to ATM multiplexer unload table 336 of Fig. 15 A, if no internal interface package 246 is available in the input FIFO 312 for service class 1 of AAL2 VCI queuing unit 310 ⁇ (corresponding to input "E" to ATM multiplexer 330 in Fig. 12), then a FIFO 312 corresponding to input "F” is checked until a FIFO with a set queue indication (QI) is found.
- QI queue indication
- ATM Multiplexing function 288 devolves to the next lower priority level of the same column as indicated by step 14C-6 and again consults ATM multiplexer unload table 336 (step 14C-2) to access the next lower priority level of the same column.
- ATM Multiplexer unload table 336 step 14C-2
- the FIFOs for service class 2 of the link multiplexer 280 of the pointed-to column is checked (shown in the second row of the unload table 336) for a loaded FIFO.
- the steps 14C-3 through step 14C-6 are repeated for the next lower priority level, looking for a FIFO with an internal interface package 246.
- ATM Multiplexing function 288 is exited as indicated by step 14C-5. However, if an internal interface package 246 is found in a FIFO in accordance with this strategy, step 14C-7 is performed.
- step 14C-7 it is determined whether the queue for which an internal interface package 246 was found to exist at step 14C-3 was a queue in AAL2 aspect 302 of queue server 230, i.e., one of the FIFOs 312 (see Fig. 12). If the ready queue is indeed one of the FIFOs 312 which handles AAL2 packets, the AAL2 Multiplexing function 290 is called (as indicated by step 14C-8) to form an ATM cell having multiple AAL2 packets.
- the ATM Multiplexing function 288 is discussed in further detail below in connection with Fig. 14D.
- ATM Multiplexing function 288 goes to the next column in unload table 336 (see Fig. 15 A). Thus, a pointer set for the next call to this table, with processing resuming at this pointer for the next call of ATM multiplexing function 288. Thereafter, ATM Multiplexing function 288 exits as indicated by step 14C-10.
- step 14C-11 is next performed.
- the time stamp TS of the next awaiting cell in the available queue e.g., FIFO 320
- the time stamp TS provides an indication of the age of the content of cell in the queue next awaiting readout.
- the time stamp TS of the selected queue is compared with a value indicative of the curcent time. If the time stamp TS is older than the curcent time value by a predetermined amount, AAL2 Multiplexing function 290 realizes at step 14C-14 that the delay in the queue is greater than a predetermined maximum permissible delay.
- step 14C-13 the Discard ATM Cell function is invoked to delete the aged ATM cell.
- the Discard ATM Cell function is described with reference to Fig. 141. If an aged cell is discarded by Discard ATM Cell function at step 14C-13, AAL2 Multiplexing function 290 loops back to step 14C-3 to see if another (hopefully more recent) cell exists in the same queue.
- step 14C-12 If it is determined at step 14C-12 that the cell in the selected queue is not excessively aged, the cell is dequeued at step 14C-14 by invocation of the Dequeue ATM Cell function (described in Fig. 14K). Dequeuing of the cell effectively moves the cell into outgoing ATM cell FIFO 340 (see Fig. 12). After dequeuing of the cell, AAL2 Multiplexing function 290 proceeds to the next column in unload table 316 (see Fig. 15B) prior to exiting (the exiting indicated by step 14C- 16).
- Step 14D-1 reflects initiation of AAL2 Multiplexing function 290.
- AAL2 Multiplexing function 290 basically serves to multiplex AAL2 packets stored in the FIFOs 312 and belonging to different quality classes into ATM cells (see Fig. 12) having the AAL2 protocol. The multiplexing is performed according to unload table 316 (see Fig. 15B for an example).
- AAL2 Multiplexing function 290 prepares an ATM cell having the AAL2 protocol, an ATM header and start field for the forming cell must be generated. To this end, at step 14D-2 the AAL2 Multiplexing function 290 calls the Create ATM-Header and Start Field function. Various details of the Create ATM-Header and Start Field function are shown in Fig. 14E and discussed hereinafter.
- AAL2 Multiplexing function 290 inquires whether there is an overlap indication. An overlap indication exists when part of an AAL2 packet is stored in memory (there being a potential of one overlap indication per VCI). If an overlap indication exists, two actions are taken: (1) at step 14D-4 the stored part of the AAL2 packet is added to the ATM header created at step 14D-2; (2) at step 14D-5 the overlap indication is reset prior to performing step 14D-6.
- step 14D-6 an advancement is made to the next column in unload table 316 (see Fig. 15B). Then, for the purposes of obtaining an AAL2 packet, at step 14D-7 the Select AAL2 Packet function is executed.
- the Select AAL2 Packet function is described subsequently in more detail in conjunction with Fig. 14F.
- AAL2 Multiplexing function 290 determines whether calling of the Select AAL2 Packet function at step 14D-7 resulted in any AAL2 packet being selected (e.g., whether an AAL2 packet existed in any of the FIFOs
- step 14D-9 the rest of the ATM cell being formed is padded (e.g., filled with zeroes) prior to exiting of AAL2 Multiplexing function 290 (as indicated by step 14D-10).
- step 14D-11 a determination is made as to what type of format system is in effect. If the AAL2 prime format is in effect, i.e., if ATM cells with AAL2 prime protocol are being formed, at step 14D-12 the AAL2' Payload Preparation function is called prior to exiting of AAL2 Multiplexing function 290 (step 14D-13).
- the AAL2' Payload Preparation function described in more detail in connection with Fig. 14G, essentially forms an ATM cell with the AAL2 prime protocol by moving an AAL2 packet from one of the FIFOs 312 to outgoing ATM cell FIFO 340 and padding the remainder of the cell with zeroes.
- step 14D-14 a check is made whether there is a place in the ATM cell being formed for an AAL2 packet. If there is room for an AAL2 packet in the forming ATM cell, at step 14D-15 the Dequeue AAL2 Packet function is called prior to returning returning to step 14D- 6 for moving to the next column in unload table 316. The Dequeue AAL2 Packet function is discussed in more detail in connection with Fig. 14L.
- step 14D-16 the AAL2 Overlap Format function is called prior to exiting from AAL2 Multiplexing function 290 (the exiting indicated by step 14D-17).
- the AAL2 Overlap Format function is described in more detail below with reference to Fig. 14H.
- QUEUE SERVER OPERATION CREATE ATM HEADER AND START FIELD FUNCTION Basic steps involved with the Create ATM-Header and Start Field function are described in Fig. 14E.
- the Create ATM-Header and Start Field function is called by the AAL2 Multiplexing function 290 as shown by step 14D-2 of Fig. 14D.
- Initiation of the Create ATM-Header and Start Field function is reflected by symbol 14E-1.
- the Create ATM-Header and Start Field function moves a preconfigured ATM header (with VPI and VCI) and SPAS tag through multiplexer 330 to outgoing ATM cell FIFO 340 (see Fig. 12).
- the ATM header and SPAS flag are preconfigured when the connection is established, e.g., the connection between cell handling unit 44-32 and extension terminal 44-34.
- a check is made whether the overlap indication is set. If the overlap indication is set, at step 14E-4 an offset value (OSF) [see Fig. 3 A] is set to be equal to the length of the stored part of the AAL2 packet. If the overlap indication is not set, it is reset at step 14E-5. After either step 14E-4 or step 14E-5, the cell sequence number (SN) and parity (P) [see Fig. 3 A] are generated at step 14E-6.
- OSF offset value
- step 14E-7 the entire start field ⁇ the offset value (OSF), the sequence number (SN), and parity (P) ⁇ are moved to outgoing ATM cell FIFO 340.
- QUEUE SERVER OPERATION SELECT AAL2 PACKET
- Fig. 14F The Select AAL2 Packet function is called by AAL2 Multiplexing function 290 at step 14D-7 (see Fig. 14D). Operations performed by the Select AAL2 Packet function include (1) selecting from which quality class the next AAL2 packet should be extracted; and (2) checking the time stamp associated with the selected AAL2 packet to ensure that it is not too old. Initiation of the Select AAL2 Packet function is indicated by symbol 14F-1.
- Step 14F-2 of the Select AAL2 Packet function involves consulting the unload table 316 (see Fig. 12 and Fig. 15B) to determine the next queue (e.g., one of the FIFOs 312) from which an AAL2 packet should be extracted in accordance with the strategy stored in the unload table 316. If it is determined at step 14F-3 that an AAL2 packet does not exist in the queue indicated by unload table 316, the queue of the next highest priority level (identified per unload table 316) is checked for a ready AAL2 packet.
- the next queue e.g., one of the FIFOs 312 from which an AAL2 packet should be extracted in accordance with the strategy stored in the unload table 316. If it is determined at step 14F-3 that an AAL2 packet does not exist in the queue indicated by unload table 316, the queue of the next highest priority level (identified per unload table 316) is checked for a ready AAL2 packet.
- step 14F-5 If the queue of the next highest priority level does not have a ready AAL2 packet, a devolution occurs to the next lower priority level (step 14F-5), and the loop commencing with step 14F-2 is again executed but with respect to the next lower priority level. If all queues of the pointed-to column are without an available AAL2 packet (determined at step 14F-4), the Select AAL2 Packet function is exited (indicated by step 14F-6).
- step 14F-3 the time stamp associated with the available AAL2 packet is examined at step 14F-7. If the time stamp indicates that the AAL2 packet is too old (step 14F-8), the Discard AAL2 Packet function is called at step 14F-9 for the purpose of discarding the excessively aged AAL2 packet.
- the Select AAL2 Packet function loops back to step 14F-3 to determine if another AAL2 packet is available in the same queue (FIFO 312). If the AAL2 packet residing in the queue determined at step 14F-3 is not too old, the Select AAL2 Packet function exits as indicated by step 14F-10.
- Fig. 14G Basic steps involved in the AAL2' Payload Preparation function are illustrated in Fig. 14G.
- the AAL2' Payload Preparation function is called at step 14D-12 of the AAL2 Multiplexing function 290 (see Fig. 14D).
- the AAL2' Payload Preparation function serves essentially to move an AAL2 packet from the selected one of the FIFOs 312 to outgoing ATM cell FIFO 340, and to pad the remainder of the ATM cell with zeroes.
- Initiation of the AAL2' Payload Preparation function is depicted by symbol 14G-1.
- Step 14G-2 involves calling the Dequeue AAL2 Packet function (which is described in more detail in connection with Fig. 14L.
- the Dequeue AAL2 Packet function serves to unload the AAL2 packet from the appropriate input FIFO 312 and move the unloaded AAL2 packet into outgoing ATM cell FIFO 340.
- the remainder of the ATM cell being formed in outgoing ATM cell FIFO 340 is padded (e.g., with zeroes) as indicated by step 14G-3.
- the AAL2' Payload Preparation function is exited.
- AAL2 Overlap Format function has basic steps shown in Fig. 14H.
- the AAL2 Overlap Format function serves to split an AAL2 packet, putting the beginning of the AAL2 packet in an end of the ATM cell being formed in outgoing ATM cell FIFO 340 and storing the remainder of the AAL2 packet (the portion that would not fit in the ATM cell being formed) in a partial packet or overlap packet holding location in memory discussed above.
- Symbol 14H-1 reflects initiation of the AAL2 Overlap Format function.
- step 14H-2 as much of the AAL2 packet as will fit at the end of the ATM cell being formed in outgoing ATM cell FIFO 340 is moved to outgoing ATM cell FIFO 340. Then, at step 14H-3, the remainder of the AAL2 packet (i.e., the part that would not fit in outgoing ATM cell FIFO 340), is stored in the partial packet holding location. Since an AAL2 packet is being split or overlapped into two cells, the overlap indication is set at step 14H-4 prior to exiting of the AAL2 Overlap Format function (as indicated by step 14H-5).
- QUEUE SERVER OPERATION DISCARD ATM CELL FUNCTION
- the Discard ATM Cell function has basic steps described in Fig.
- the Discard ATM Cell function is called either from step 14A-5 of the Queue ATM Cell/AAL2 Packet Function 284 (see Fig. 14A) or step 14C-13 of the ATM Multiplexing function 288 (see Fig. 14C).
- the Discard ATM Cell function serves to discard an ATM cell due to excessive delay or overflow in the particular queue (e.g., one of the FIFOs 320) for which the Discard ATM Cell function was called. Initiation of the Discard ATM Cell function is depicted by symbol 141- 1.
- the Discard ATM Cell function removes the time stamp and next awaiting cell from the particular queue 320 for which the Discard ATM Cell function is called.
- step 141- 3 If it is determined at step 141- 3 that the discarded cell was the last in that FIFO 320, the queue indication (QI) for that FIFO is reset at step 141-4. Then, at step 141-5, an ercor counter is incremented for the queue (e.g., FIFO 320) for which an ATM cell was discarded. The Discard ATM Cell function is then exited as indicated by step 141-6.
- QUEUE SERVER OPERATION DISCARD AAL2 PACKET FUNCTION
- the basic steps of Discard AAL2 Packet function are shown in Fig. 14J.
- the Discard AAL2 Packet function is called either at step 14A-5 of Queue ATM CelI/AAL2 Packet Function 284 (see Fig. 14A) or step 14F-9 of the Select AAL2 Packet function (see Fig. 14F).
- the Discard AAL2 Packet function serves to discard an AAL2 packet due to excessive delay or overflow in the particular queue (e.g., one of the FIFOs 312) for which the Discard ATM Cell function was called.
- Steps 14J-1 through 14J-6 of the Discard AAL2 Packet function are analogous to steps 141-1 through 141-6, respectively, of the Discard ATM Cell function of Fig. 14J, it being understood that the Discard AAL2 Packet function pertains to AAL2 packets in FIFOs 312 rather than to ATM cells in FIFOs 320.
- Fig. 14K The basic steps of Dequeue ATM Cell function are shown in Fig. 14K.
- the Dequeue ATM Cell function is called at step 14C-14 of the ATM Multiplexing function 280 (see Fig. 14). Initiation of the Dequeue ATM Cell function is depicted by step 14K-1.
- the time stamp is cleared for the queue (e.g., FIFO 320) selected at step 14C-3.
- the ATM cell from the selected queue e.g., FIFO 320
- the ATM cell from the selected queue e.g., FIFO 320
- multiplexer 330 e.g., FIFO 320
- the queue indication (QI) for that queue is reset (step 14K- 5) prior to exiting from Dequeue ATM Cell function (depicted by step 14K-6). If the queue which contained the ATM cell moved to outgoing ATM cell FIFO 340 has further cells, the queue indication (QI) need not be reset, so exiting of the Dequeue ATM Cell function occurs as indicated by step 14K-7.
- Dequeue AAL2 Packet function The basic steps of Dequeue AAL2 Packet function are shown in Fig. 14L.
- the Dequeue AAL2 Packet function is called either at step 14D-15 of the AAL2 Multiplexing function 290 (see Fig. 14D) or step 14G-2 of the AAL2' Payload Preparation function (see Fig. 14G).
- Steps 14L-1 through 14L-7 of the Dequeue AAL2 Packet function are analogous to steps 14K-1 through 14K-7 of the Dequeue ATM Cell function of Fig. 14K, it being understood that the Dequeue AAL2 Packet function is called from different locations and involves AAL2 packets being moved out of FIFOs 312 rather than ATM cells being moved out of FIFOs 320.
- the cell handling unit 32 thus performs many operations, including: (1) demultiplexing of incoming ATM cells having the AAL2 protocol (e.g., variable number of AAL2 packets in the ATM cell payload) into ATM cells having the AAL2 prime protocol; (2) queuing and multiplexing of ATM cells having the AAL2 prime protocol into ATM cells having the AAL2 protocol; (3) queuing of ATM cells; and (4) handling of top priority ATM cells.
- AAL2 protocol e.g., variable number of AAL2 packets in the ATM cell payload
- the demultiplexing of incoming ATM cells having the AAL2 protocol can occur, for example, when ATM cells with the AAL2 protocol are received at base station controller 44 from base station 42 over the super A interface 54 (see Fig. 5).
- the AAL2 packets need to be extracted into a cell format which can be switched through the ATM switch 44-30 to other units which do not handle ATM cells with multiple AAL2 packets (such as, for example, diversity handover (DHO) unit 60).
- the ATM demultiplexing function 260 is called (step 13-6).
- the AAL2 Demultiplexing function 268 is called at step 13B-13.
- the AAL2 Demultiplexing function 268 (see Fig.
- the AAL2 Demultiplexing function 268 processes one or more whole AAL2 packets residing in the payload of the incoming ATM cell. Each whole AAL2 packet is processed by a loop of operations commencing at step 13F-8.
- the AAL2 Demultiplexing function 268 reads the AAL2 packet by calling the Read AAL2 Packet function (see Fig. 131).
- the Create AAL2' Cell function is then called (step 13F-16) to form an AAL2 prime protocol payload using the AAL2 packet read at step 13F-12.
- the Create AAL2' Cell function serves to get a new VCI and SPIC tag for the ATM cell being formed by consulting combined VCI/CID table 272 (see step 13J-2, and also Fig. 18, Fig. 19 A, and Fig. 19B) using the CID value in the AAL2 packet header.
- the Create AAL2' Cell function adds the AAL2 packet obtained at step 13F-12 to the new VCI and SPIC tag to form an AAL2 prime payload, and at step 13J-7 pads the remainder of the payload.
- the ATM cell with the thusly-constructed AAL2 prime protocol payload is then moved to outgoing cell FIFO 252 (step 13J-8).
- step 13F-17 The procedure of processing AAL2 packets residing in the incoming ATM cell continues to the end of the incoming cell (as determined at step 13F-17), creating a new ATM cell with AAL2 prime protocol for each AAL2 packet. However, if the incoming ATM cell with AAL2 protocol ends with an incomplete AAL2 packet, an overlap indication is set (step 13F-14). Setting of the overlap indication sets up a situation in which the incomplete AAL2 packet can be completed and reassembled by the Overlap Handling function upon receipt of a subsequent ATM cell with AAL2 protocol.
- the Overlap Handling function (Fig. 13H) performs various operations. Among these operations are: (1) reading (at step 13H-4) the overlapping part of the AAL2 packet from incoming cell FIFO 250; (2) assembling (at step 13H-5) the AAL2 packet using the part read at step 13H-4 and a part stored from a previous ATM cell; and (3) calling (at step 13H-7) the Create AAL2' Cell function.
- the Create AAL2' Cell function performs in similar manner as with whole packets, it being understood that the ATM payload built at step 13J-6 thereof involves adding the new VCI and SPIC tag obtained at step 13H-2 to a payload formed from the portion of the AAL2 packet left over from the previous ATM cell and the portion of the AAL2 packet obtained at the beginning of the ATM cell awaiting in FIFO 250.
- the ATM demultiplexing function 260 is called (step 13-6). After checking the validity of the incoming cell (at step 13B-6), and (at step 13B-9) determining that the incoming cell has the AAL2 prime protocol with an AAL2 packet in need of multiplexing, the AAL2' Mapping function is invoked at step 13B-10.
- AAL2' mapping function 262 (see Fig. 13C) essentially creates an internal interface package 246 (which includes the AAL2 packet which needs to be multiplexed) for transmission to queue server 230.
- AAL2' mapping function 262 obtains an internal interface header (IIH) from combined VCI/CID table 272, using the VCI of the incoming ATM cell as an index (step 13C-3).
- the internal interface header (IIH) and the AAL2 packet from the AAL2 prime protocol cell are assembled to form the internal interface package 246, which is written to in-buffer memory 242 (step 13C-6) so that it can be available to queue server 230.
- Queue server 230 functions to multiplex the AAL2 packet stored in the internal interface package 246 in-buffer memory 242 into an ATM cell with AAL2 format, and to provide the ATM cell with AAL2 format with a header that will direct the ATM cell to a specified ET link (see Fig. 5).
- the ATM cell is formed in outgoing ATM cell FIFO 340 of the link multiplexer 280 corresponding to the specified ET link, the outgoing ATM cell FIFO 340 being included in out-buffer memory 244.
- the Queue ATM Cell/AAL2 Packet function is invoked (see Fig. 14A).
- the internal interface package 246 is directed to one of the AAL2 VCI queuing units 310.
- the internal interface package 246 is stored in a class-specific one of the input FIFOs 312 in the AAL2 VCI queuing unit 310 to which it is directed (see Fig. 12).
- a curcent time stamp (TS) value replaces the internal interface header (IIH).
- the Queue Server Scheduler calls the Multiplexing function at step 14-7, which in turn calls the ATM Multiplexing function of Fig. 14C
- the ATM Multiplexing function checks the unload table 336 to determine when the particular AAL2 VCI queuing unit 310 in which the internal interface package 246 has been stored is to be tapped for unloading (see step 14C-7).
- the AAL2 Multiplexing function is invoked at step 14C-8.
- the AAL2 Multiplexing function (see Fig.
- step 14D proceeds to form an ATM header for the newly forming cell by calling the Create ATM Header and Start Field function (see Fig. 14E).
- the unload table 316 is then consulted for determining the particular input FIFO 312 next to be unloaded for the tapped AAL2 VCI queuing unit 310. It is assumed at this juncture that an internal interface package 246 does reside in the selected input FIFO 312 (based on the queue indication [QI]), and that the internal interface package 246 is not excessively aged (see step 14F- 8).
- the AAL2 Multiplexing function determines (step 14D- 4) whether the cell being formed has enough room in its payload to accommodate the AAL2 packet of the internal interface package 246. When room does exist, the AAL2 packet of the internal interface package 246 is unloaded from the input FIFO 312 (by calling the Dequeue AAL2 Packet function [see Fig. 14L]). Unloading of the
- AAL2 packet involves moving the AAL2 packet into outgoing ATM cell FIFO 340 where the cell is being formed, clearing the time stamp (TS) associated with the internal interface package 246, and determining whether the queue indication need be set for the FIFO 312 from which the AAL2 packet was unloaded (see Fig. 14L).
- the AAL2 Multiplexing function then continues to fill the payload of the cell being formed until the AAL2 packet of the next internal interface package 246 will not entirely fit within the ATM cell being formed.
- AAL2 Multiplexing function calls the AAL2 Overlap Format function at step 14D-16.
- the AAL2 Overlap Format function (see Fig. 14H) moves the part of the AAL2 packet which will fit into the payload into the payload, and stores the remainder for use with a subsequent ATM cell.
- queue server 230 forms, in outgoing ATM cell FIFO 340 of the link multiplexer 280 corresponding to the selected ET link, an outgoing ATM cell having AAL2 protocol, the outgoing ATM cell being formed from AAL2 packets received in incoming ATM cells having the AAL2 prime protocol.
- the thusly-formed ATM cell, stored in outgoing ATM cell FIFO 340, is taken out of outgoing ATM cell FIFO 340 when the Router Scheduler function determines (at step 13-3) that such ATM cell is to be transmitted to it from queue server 230. To do so, the Router Scheduler function calls the Transfer Cell function (see Fig. 13 A), which selects the particular link multiplexer 280 from which an ATM cell is to be extracted and moves such ATM cell to outgoing cell FIFO 252.
- cell router 220 provides an internal interface package 246 to queue server 230 is understood from the multiplexing discussion provided above, it being understood that the internal interface package 246 provided includes [along with the internal interface header (IIH)] an ATM cell rather than an AAL2 packet.
- the Router Scheduler function calls the ATM Demultiplexing function (see Fig. 13B), which at step 13B-11 calls the ATM Mapping function at step 13B-11.
- the ATM Mapping function (see Fig.
- step 13D creates the internal interface header (IIH), creates an new ATM header for the outgoing ATM cell (step 13D-3), and forms the internal interface package 246 using the payload of the incoming ATM cell, the new ATM header, and the internal interface header (IIH).
- the ATM Mapping function then moves the internal interface package 246 to in-buffer memory 242.
- Queue server 230 functions to distribute the ATM cells stored in the internal interface package 246 in-buffer memory 242 into the queuing system shown in Fig. 12 for the appropriate one of the link multiplexers 280. As in the case of multiplexing, the ATM cell eventually resides in the outgoing ATM cell FIFO 340 for the appropriate link multiplexer 280.
- the Queue ATM Cell/AAL2 Packet function is invoked (see Fig. 14A).
- the internal interface package 246 is directed to one of the ATM cell input FIFOs 320 in accordance with the service class indicated in the new ATM header (see Fig. 12).
- a curcent time stamp (TS) value replaces the internal interface header (IIH).
- the Queue Server Scheduler calls the Multiplexing function at step 14-7, which in turn calls the ATM Multiplexing function of Fig. 14C
- the ATM Multiplexing function checks the unload table 336 to determine when the particular ATM cell input FIFO 320 in which the internal interface package 246 has been stored is to be tapped for unloading (see step 14C-7). It is assumed at this juncture that an internal interface package 246 does reside in the selected input FIFO 320 (based on the queue indication [QI]), and that the internal interface package 246 is not excessively aged (see step 14C-12).
- the ATM Multiplexing function unloads the ATM cell from the internal interface package 246 from the ATM cell input FIFO 320 (by calling the Dequeue ATM Packet function [see Fig. 14K]). Unloading of the ATM cell involves moving the ATM cell into outgoing ATM cell FIFO 340 where the cell is being formed, clearing the time stamp (TS) associated with the internal interface package 246, and determining whether the queue indication need be reset for the FIFO 320 from which the ATM cell was unloaded (see Fig. 14K). Thus, queue server 230 eventually routes the newly formed ATM cell to the outgoing ATM cell FIFO 340 of the link multiplexer 280 corresponding to the selected ET link.
- TS time stamp
- the thusly- formed ATM cell, stored in outgoing ATM cell FIFO 340, is taken out of outgoing ATM cell FIFO 340 when the Router Scheduler function determines (at step 13-3) that such ATM cell is to be transmitted to it from queue server 230. To do so, the Router Scheduler function calls the Transfer Cell function (see Fig. 13 A), which selects the particular link multiplexer 280 from which an ATM cell is to be extracted and moves such ATM cell to outgoing cell FIFO 252.
- top priority ATM cells should instead avoid queue server 230 of cell handling unit 32.
- cell router 220 of cell handling unit 32 is provided with top priority function 266. Operation of top priority function 266 in context of cell router 220 is now explained.
- Receipt of a top priority ATM cell at cell handling unit 32 is initially handled in the same manner as other ATM cells aforedescribed.
- the ATM demultiplexing function 260 is called (step 13-6).
- the top priority function 266 is invoked at step 13B-12.
- the top priority function 266 obtains a new VCI and SPIC tag for the outgoing top priority ATM cell from combined VCI/CID table 272 (step 13E-2), along with an internal interface header (IIH). Although the top priority function 266 does not send a payload to queue server 230, the top priority function 266 nevertheless does obtain an internal interface package 246 for transmission to queue server 230 via in-buffer memory 242 to be used for the setting of the top priority indication 322 (see Fig. 12).
- top priority function 266 obtains the payload from the incoming ATM cell, adds thereto the new VCI and SPIC tag (see step 13E-4), and moves the thusly reconstructed ATM cell to outgoing cell FIFO 252 (step 13E-5). Such a top priority cell therefore need not be queued in the queuing scheme of queue server 230.
- cell handling unit 32 includes queue server 230.
- Queue server 230 provides a centralized or pooled resource for queuing of outgoing ATM cells.
- queue server 230 includes plural link multiplexers 280, each link multiplexer 280 having the queuing scheme shown in Fig. 12.
- a link multiplexer 280 with its associated queuing scheme can be allocated to each outgoing ET link that requires queue administration.
- Fig. 16A shows potential routings of ATM cells through an ATM switching node 1640 whereat a cell handling unit 32 resides.
- ATM switching node 1640 can be, for example, any of the nodes discussed previously, including base station 42, base station controller 44, or mobile switching center (MSC) 46 of Fig. 5, and represents (albeit in simplified manner) the structures and operations previously described.
- the cell handling unit 32 of Fig. 16A is connected to a port of the ATM switch 1630.
- Extension terminals (ET) 1634(1) through 1634(5) are shown as connecting input links to node 1640 to the ATM switch 1630.
- Extension terminals (ET) 1634(6) and 1634(7) are shown as connecting node 1640 to output links.
- extension terminals have both input and output links connected thereto, but for sake of simplification in the present discussion the input links handled by extension terminals (ET) 1634(1) through 1634(5) and output links handled by extension terminals (ET) 1634(6) and 1634(7) are emphasized. Moreover, it should be understood that each of the input or output links can handle a number of ATM-VCCs.
- extension terminal (ET) 1634(7) does not require advanced queuing.
- extension terminal (ET) 1634(6) does require advanced queuing.
- extension terminal (ET) 1634(6) does require extension terminal (ET) 1634(7).
- extension terminal (ET) 1634(6) nor extension terminal (ET) 1634(7) has on-board provision for advanced queuing management. Since the physical output link handled by extension terminal (ET) 1634(6) requires queuing, all ATM VCCs destined to extension terminal (ET) 1634(6) are routed through the ATM switch 1630 to the centralized queue server 230 provided in cell handling unit 32, as indicated by switching lines 16A-1 in Fig. 16A.
- outbound ATM cells destined for extension terminal (ET) 1634(6) are routed through the ATM switch 1630 to extension terminal (ET) 1634(6), as indicated by switching line 16A-3.
- the ATM VCCs destined to extension terminal (ET) 1634(7) which does not require queuing management are routed through the ATM switch 1630 directly to extension terminal (ET) 1634(7), as indicated by switching lines 16A-2.
- queue server 230 provides a centralized advanced queue management resource which can be utilized for output links requiring such management, but bypassed by ATM cells destined for output links not requiring such management.
- the embodiment of Fig. 16B has essentially the same nodal structure as the embodiment of Fig. 16A, but employs a slightly different approach in cell routing.
- the embodiment of Fig. 16B features the top priority function 266 previously described e.g., with reference to Fig. 11 and Fig. 13E.
- essentially all incoming ATM cells are routed through the ATM switch 1630 to cell handling unit 32.
- top priority ATM cells which are denoted as being of "top priority” are not forwarded to queue server 230, but instead are provided with expedited handling by virtue of the top priority function 266.
- the top priority function 266 essentially provides the top priority ATM cells with the new VCI and SPIC tag for reaching the queue-unnecessary destination [e.g., extension terminal (ET) 1634(7)], and forward such cells to outgoing cell FIFO 252 (see Fig. 11) without routing through the queuing scheme of queue server 230.
- a top priority indication 322 is provided to queue server 230 so that queue server 230 can compensate in the coordination of output of further ATM cells.
- Fig. 17A shows an ATM switching node 1740 A which utilizes a point-to-multipoint capability in conjunction with routing of top priority cells.
- point-to-multipoint processing a copy of a incoming ATM cell is provided to more than one ATM-VCC.
- the ATM switch 1730 A serves as the copy agent.
- ATM cells inbound from extension terminal (ET) 1734(1) are copied by the ATM switch 1730 and routed through the ATM switch 1730 to each of extension terminal (ET) 1734(2) and cell handling unit 32.
- the received copy of the ATM cell is not stored in any of the queues of queue server 230, but instead is used to provide an indication of queue server 230 that a high priority ATM cell from the specified ATM-VCC has been directly routed to extension terminal (ET) 1734(2).
- Fig. 17B shows a variation of the embodiment of Fig. 17A in a case in which the ATM switch 173 OB does not have multipoint copying capability.
- the incoming top priority ATM cell is routed to cell handling unit 32.
- a top priority monitor TPM monitors the headers of each incoming ATM cell to determine if it belongs to the top priority VCC.
- a top priority multiplexer 32M routes such cells directly to the output of the cell handling unit 32.
- Queue server 230 is advised that a top priority cell has short circuited queue server 230.
- the centralized, pooled advanced queuing management provided by queue server 230 of cell handling unit 32 thus advantageously avoids requiring advanced queuing management at each output link (e.g., at each extension terminal ET).
- FIG. 18 An example of the combined VCI/CID table 272 illustrated as included in cell router 220 is shown in Fig. 18.
- combined VCI/CID table 272 is conceptualized as having ten columns, referenced as columns (1) through (10).
- Column (1) contains CID values (see Fig. 2);
- column (2) contains incoming VCI values;
- column (3) contains a connection type indicator;
- column (4) contains an ET-link value;
- column (5) contains an AAL2-link value;
- column (6) contains a table offset value;
- column (7) contains an outgoing VPI value;
- column (8) contains an outgoing VCI value;
- column (9) contains an outgoing (SPIC) tag value; and
- column (10) contains an internal interface header (IIH).
- the combined VCI/CID table 272 is also conceptualized as having rows, with the rows grouped into table portions or intervals, particularly table portion 1802 0 and table intervals 1802 A through 1802 H . Each row of an interval is deemed a subinterval of that interval.
- the combined VCI/CID table 272 of Fig. 18 does not necessarily show values in all columns. Values are provided only in columns useful for illustrating the principles of the invention.
- the VCI values utilized in combined VCI/CID table 272 are node-internal VCI values. For a cell incoming to a node, the VCI values of the incoming cell are changed at the extension terminal, for example, into internal VCI values for use within the node.
- the internal VCI value enables routing of the cell through the ATM switch 30 to cell handling unit 32.
- the cell handling unit 32 using combined VCI/CID table 272, assigns an new internal VCI which enables the cell to be routed out of cell handling unit 32 and through the ATM switch 30 to another board of the node. Prior to exiting from the node, the last-utilized internal VCI value is changed to an external VCI value which enables routing of the cell to another node of the ATM network.
- Fig. 19A shows steps utilized for obtaining VPI/VCI information when an ATM cell having AAL2 protocol is demultiplexed into one or more ATM cells having AAL2 prime protocol (e.g., in the manner above illustrated by Fig. 4).
- the AAL2 portion of combined VCI/CID table 272 is initially consulted.
- the internal VCI value of the incoming cell is used to locate a suitable row in the AAL2 table portion 1802 0 .
- the incoming VCI value is "32”
- the first row of combined VCI/CID table 272 is indicated.
- cell router 220 determines a table offset [from column (6)] from the indicated row. In the example of an incoming VCI of "32”, the table offset obtained from column (6) is "A".
- the table offset "A" signifies that cell router 220 is to check interval 1802 A of combined VCI/CID table 272, which is pointed to by offset
- the cell router 220 uses the CID of the first AAL2 packet of the incoming ATM cell in order to locate the specific row within the proper table interval. With the specific row of the proper table interval having been found, at step 19A-4 the cell router 220 obtains the necessary information, e.g., the new internal VPI value and new VCI value from column (7) and column (8), respectively. For example, if the CID of the first AAL2 packet were "8", then at step 19A-4 the VPI value found at the intersection of the row in portion 1802 A having CID of 8 and column (7) would be the returned VPI value; and the VCI found at the intersection of the same row and column (8) would be the returned VCI value.
- the CID of the first AAL2 packet were "8”
- the VPI value found at the intersection of the row in portion 1802 A having CID of 8 and column (7) would be the returned VPI value
- the VCI found at the intersection of the same row and column (8) would be the returned VCI value.
- step 19A-3 and step 19A-4 of Fig. 19A are performed for each AAL2 packet in the ATM cell which is to be demultiplexed.
- the operations of step 19A-3 and step 19A-4 would be performed three times ⁇ once each for AAL2 packets 26 4-1 through 26 4- for the formation of cells 20' 4-1 through 20' 4-3 , respectively.
- Fig. 19B shows steps involved in multiplexing AAL2 packets into an ATM cell having potentially plural AAL2 packets.
- the VCI value of the incoming ATM cell is used to locate the corcect row in the combined VCI/CID table 272. For example, if the incoming VCI were "49", the second row of table interval 1802 A would be signified.
- the ET-link value and AAL2-link value from the row located at step 19B-1 are obtained. In the example in which the incoming VCI was "49", the ET-link value would be "0" and the AAL2-link value would be "0".
- step 19B-3 a row in the AAL2 portion of combined VCI/CID table 272, e.g., table portion 1802 0 , having the ET-link and AAL2-link values found at step 19B-2 is found.
- the first row of table portion 1802 0 is found.
- step 19B-4 the VPI and VCI values from the row found at step 19B-3 are utilized for the ATM header of the cell being multiplexed.
- QUEUING WITH TIMESTAMPING It has been described above how, for some incoming ATM cells, cell router 220 prepares an internal interface package 246 for transmission through in-buffer memory 242 to queue server 230.
- the internal interface package 246 includes an internal interface header (IIH) and one of (1) the payload of the incoming ATM cell; or (2) an AAL2 packet from the incoming ATM cell. Steps involved in preparing an internal interface package 246 using an ATM cell are shown in ATM mapping function 264 (see Fig. 13D); steps involved in preparing an internal interface package 246 using an AAL2 packet are shown in AAL2' mapping function 262 (see Fig. 13C).
- IIH internal interface header
- Fig. 20A shows, in more simplified form than the Queue Cell/Packet function 284 of Fig. 14 A, basic steps for moving an ATM package into a queue of queue server 230.
- the internal interface package 246 is obtained from in-buffer memory 242.
- the internal interface header (IIH) of the internal interface package 246 is replaced with a time stamp TS.
- the time stamp TS is related to the time at which the internal interface package 246 is being stored in a queue of queue server 230.
- Step 20B-3 shows the internal interface package 246 with time stamp TS being stored in an appropriate queue of queue server 230.
- the internal interface package 246 contains an AAL2 packet
- the internal interface package 246 with time stamp TS is stored in one of the input FIFOs 312 of one of the AAL2 VCI queuing units 310. Into which queuing unit 310 the package is stored depends on the VCI; into which FIFO 312 of that queuing unit 310 depends on the service class.
- the internal interface package 246 contains an ATM cell payload
- the internal interface package 246 with time stamp is stored in one of the ATM cell input FIFOs 320 (which FIFO 320 depending on service class).
- Fig. 20B is a flowchart showing in more simplified form the basic steps for dequing an ATM package from a queue insofar as the timestamping feature of the invention is concerned. Step 20B-1 shows the next package in a queue being referenced.
- the next package of step 20B-1 could be either an AAL2 packet in the case of the queue being an input FIFO 312, or an ATM payload in the case of the queue being an ATM cell input FIFO 320.
- the time stamp TS of the next package referenced at step 20B-1 is obtained and checked.
- the time stamp TS obtained at step 20B-2 is compared with a current time value, and a difference determined. The difference is indicative of a delay between storage and readout of the package.
- the delay determined at step 20B-3 is compared with a maximum permissible delay. If the delay determined at step 20B-3 exceeds the maximum permissible delay, the package is discarded as indicated by step 20B-5. Otherwise, the package is utilized for cell formation, e.g., dequeued, as indicated by step 20B-6.
- Fig. 20B provides one illustration of using time stamped queuing to determine whether the tenure of a package in a queue is longer than permissible. Another illustration occurs in the context of potential remedying of possible buffer congestion problems.
- Fig. 20C is a flowchart showing basic steps of a Queue Monitoring function executable by queue server 230 for monitoring queue fill using time stamped queuing.
- the Queue Momtoring function of Fig. 20C can be executed separately for each of the queues of queue server 230, e.g., input FIFOs 312 and ATM cell input FIFOs 320.
- Step 20C-1 shows the Queue Monitoring function waiting for invocation. Invocation of the Queue Monitoring function can occur periodically or upon occurrence of a triggering event.
- the Queue Monitoring function determines whether the queue fill level for a certain queue exceeds a permissible threshold. In this regard, each a fill level is maintained for each queue, the fill level indicating the degree of utilization of the queue.
- the permissible threshold can be a fixed percentage of the capacity of the queue. If the permissible threshold of the queue is not exceeded, the Queue Monitoring function returns to the wait state of step 20C- 1. If the permissible threshold is exceeded, at step 20C-3 the Queue
- Step 20C-4 the time stamp TS is compared with a reference (e.g., the curcent time) to determine if the next package in the queue is too old. If the awaiting package is not too old, the Queue Monitoring function returns to the wait state of step 20C-1. If the awaiting package is too old, at step 20C- 5 the package is discarded.
- Package discard involves invoking various discard functions previously described.
- cell router 220 of cell handling unit 32 of Fig. 11 applies ATM cells via switch port interface circuit (SPIC) 210 to the ATM switch 30.
- SPIC switch port interface circuit
- Some of the ATM cells applied by cell router 220 to the ATM switch 30 are obtained from queue server 230, which outputs the ATM cells which its link multiplexers 280 form in out-buffer memory 244.
- the cells formed and stored in queue server 230 are destined for an inter-node link.
- ATM cells formed and stored in queue server 230 can be routed through the ATM switch 44-30 to extension terminal 44-34(0) for application on physical link 56 to mobile switching center (MSC) 46.
- MSC mobile switching center
- queue server 230 can form, and cell handling unit 32 can output, ATM cells destined to a particular physical link (e.g., physical link 56) at a rate faster than the transmission rate of cells on that particular physical link. That is, the processing capacity of link multiplexer 280 may be greater than that of the physical link to that link multiplexer 280 server.
- the queue server 230 of the present invention discharges ATM cells from its link multiplexers 280 at rates which are coordinated with the transmission rates of the corresponding physical links.
- the transmission rates of differing physical links can differ, with the result that queue server 230 allows for differing cell discharge rates from differing link multiplexers 280.
- the Queue Server Scheduler function 283 (see Fig. 14) checks at step 14-3 whether it is timely to discharge an ATM cell from queue server 230 to cell router 220 (and ultimately to the ATM switch 30).
- the timeliness of discharge is determined by a Link Rate Counter function residing in queue server 230. Operation of the Link Rate Counter function in conjunction with a Link Rate Counter Table is described below.
- the cell handling unit 32 (which includes queue server 230) is connected to the ATM switch 30 of a node, such as base station controller 44 (see Fig. 5).
- the node also has a node controller or main controller, such as main processor board 44-33, connected to its ATM switch 30.
- the main processor board 44-33 has stored in a memory thereof a Link Rate Counter Table such as that shown in Fig. 22.
- the Link Rate Counter Table has a set of entries for each physical link of the node, the set of entries including: (1) an address (CHU#) of the particular cell handling unit 32 which handles the physical link (since plural cell handling units 32 can be provided); (2) an identification of the particular digital signal processor (DSP#) of the queue server 230 of the addressed cell handling unit 32 which handles the physical link (since the queue server 230 can comprise plural processors); (3) an identification of the particular link multiplexer 280 in the addressed queue server 230 which handles the physical link; and (4) timing characteristics (e.g., transmission rate) of the physical link.
- Fig. 22 particularly shows an entry for physical link 56 of Fig.
- the information contained in the Link Rate Counter Table of Table 22 is transmitted from the node controller, e.g., main processor 44-33 in Fig. 5, through the ATM switch 30 to cell handling unit 32.
- the information of Link Rate Counter Table is transmitted through incoming cell multiplexer 254 to board processor 200.
- Board processor 200 transmits the information of Link Rate Counter Table over processor bus 240 to queue server 230, which queue server 230 obtains and stores as it processes a slice of its background (see step 14-8 of Fig. 14).
- Basic operations of the Link Rate Counter function are shown in Fig. 21 for one of the link multiplexers 280 maintained by queue server 230, i.e., link multiplexer 280 corresponding to physical link q. It should be understood that the Link Rate Counter function is performed for each of the link multiplexers 280 maintained by queue server 230, e.g., in a multitasking context.
- the Link Rate Counter function sets a downcounter for link q.
- the value to be loaded into the downcounter for link q is obtained or determined in relation to the TIMING CHARACTERISTIC value load in the Link Rate Counter Table for link q.
- decrementation of the downcounter is enabled at step 21-2. Decrementation occurs in timed relation to a clock signal input to the downcounter.
- a signal or interrupt is sent to the Queue Server Scheduler function 283 that the link multiplexer 280 for link q is ready to transmit a cell. This signal or interrupt serves to result in an affirmative result at step 14-3.
- the signal or interrupt at step 21-3 contains an indication of the identity of the link multiplexer 280 for link q, which is utilized by the Queue Server Scheduler function 283 at step 14-5 for selecting the proper link multiplexer 280 for which the Multiplexing function is to be called (see Fig. 14).
- the Link Rate Counter function checks the Link Rate Counter Table in order to obtain therefrom an appropriate value to load into the downcounter at step 21-1.
- the loop formed by steps 21-1 through 21-4 continues, providing queue server 230 with a signal or interrupt in timed relation with the ability of the physical link to accept an ATM cell.
- the signal or interrupt generated at step 21-3 causes the Queue Server Scheduler function 283 to invoke the Multiplexing function at step 14-7, ultimately resulting in the link multiplexer 280 for the physical link providing an ATM cell for routing to the physical link.
- the Link Rate Counter function thus assures that for any particular physical link the cell handling unit 32 does not transmit ATM cells at a rate greater than which the physical link can transmit the cells to another node.
- the present invention can be utilized in conjunction with the
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
AU19881/99A AU751538B2 (en) | 1997-12-19 | 1998-12-08 | Cell handling unit and method for ATM node |
EP98964587A EP1040717A1 (en) | 1997-12-19 | 1998-12-08 | Cell handling unit and method for atm node |
CA002315120A CA2315120A1 (en) | 1997-12-19 | 1998-12-08 | Cell handling unit and method for atm node |
KR1020007006836A KR20010033369A (en) | 1997-12-19 | 1998-12-08 | Cell handling unit and method for atm node |
JP2000526091A JP2001527362A (en) | 1997-12-19 | 1998-12-08 | Cell processing unit and method for ATM node |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US7106397P | 1997-12-19 | 1997-12-19 | |
US60/071,063 | 1997-12-19 | ||
US18834098A | 1998-11-09 | 1998-11-09 | |
US09/188,340 | 1998-11-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1999033313A1 true WO1999033313A1 (en) | 1999-07-01 |
Family
ID=26751791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/SE1998/002245 WO1999033313A1 (en) | 1997-12-19 | 1998-12-08 | Cell handling unit and method for atm node |
Country Status (9)
Country | Link |
---|---|
EP (1) | EP1040717A1 (en) |
JP (1) | JP2001527362A (en) |
KR (1) | KR20010033369A (en) |
CN (1) | CN1285130A (en) |
AR (1) | AR017912A1 (en) |
AU (1) | AU751538B2 (en) |
CA (1) | CA2315120A1 (en) |
TW (1) | TW494658B (en) |
WO (1) | WO1999033313A1 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0975189A2 (en) * | 1998-07-23 | 2000-01-26 | Nec Corporation | AAL Receiving circuit and method of processing ATM cells |
FR2825867A1 (en) * | 2001-06-12 | 2002-12-13 | France Telecom | Packet switching unit uses intermediate layer packets with termination modules |
US6879569B2 (en) | 2000-02-22 | 2005-04-12 | Utstarcom Korea Limited | System for controlling international mobile telecommunications—2000 (IMT-2000) base station |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5623493A (en) * | 1994-04-21 | 1997-04-22 | Mitsubishi Denki Kabushiki Kaisha | Multiplexer demultiplexer switching device and network adapter |
-
1998
- 1998-12-08 EP EP98964587A patent/EP1040717A1/en not_active Withdrawn
- 1998-12-08 CN CN98813734A patent/CN1285130A/en active Pending
- 1998-12-08 WO PCT/SE1998/002245 patent/WO1999033313A1/en not_active Application Discontinuation
- 1998-12-08 KR KR1020007006836A patent/KR20010033369A/en not_active Application Discontinuation
- 1998-12-08 JP JP2000526091A patent/JP2001527362A/en not_active Withdrawn
- 1998-12-08 AU AU19881/99A patent/AU751538B2/en not_active Ceased
- 1998-12-08 CA CA002315120A patent/CA2315120A1/en not_active Abandoned
- 1998-12-15 TW TW087120836A patent/TW494658B/en not_active IP Right Cessation
- 1998-12-18 AR ARP980106502A patent/AR017912A1/en not_active Application Discontinuation
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5623493A (en) * | 1994-04-21 | 1997-04-22 | Mitsubishi Denki Kabushiki Kaisha | Multiplexer demultiplexer switching device and network adapter |
Non-Patent Citations (1)
Title |
---|
MAUGER R ET AL: "ATM ADAPTATION LAYER SWITCHING", ISS '97. WORLD TELECOMMUNICATIONS CONGRESS. (INTERNATIONAL SWITCHIN SYMPOSIUM), GLOBAL NETWORK EVOLUTION: CONVERGENCE OR COLLISION? TORONTO, SEPT. 21 - 26, 1997, vol. 1, 21 September 1997 (1997-09-21), ABE S ET AL, pages 207 - 214, XP000720525 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0975189A2 (en) * | 1998-07-23 | 2000-01-26 | Nec Corporation | AAL Receiving circuit and method of processing ATM cells |
EP0975189A3 (en) * | 1998-07-23 | 2003-08-06 | Nec Corporation | AAL Receiving circuit and method of processing ATM cells |
US6639916B1 (en) | 1998-07-23 | 2003-10-28 | Nec Corporation | AAL receiving circuit and method of processing ATM cells |
US6879569B2 (en) | 2000-02-22 | 2005-04-12 | Utstarcom Korea Limited | System for controlling international mobile telecommunications—2000 (IMT-2000) base station |
FR2825867A1 (en) * | 2001-06-12 | 2002-12-13 | France Telecom | Packet switching unit uses intermediate layer packets with termination modules |
EP1274205A1 (en) * | 2001-06-12 | 2003-01-08 | France Telecom Sa | Switching unit of a packet transmission network |
Also Published As
Publication number | Publication date |
---|---|
CA2315120A1 (en) | 1999-07-01 |
AR017912A1 (en) | 2001-10-24 |
CN1285130A (en) | 2001-02-21 |
AU751538B2 (en) | 2002-08-22 |
TW494658B (en) | 2002-07-11 |
JP2001527362A (en) | 2001-12-25 |
KR20010033369A (en) | 2001-04-25 |
EP1040717A1 (en) | 2000-10-04 |
AU1988199A (en) | 1999-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU754160B2 (en) | Centralized queuing for ATM node | |
AU752793B2 (en) | Table for handling various AAL protocols in an ATM-mode | |
US6738381B1 (en) | ATM time stamped queuing | |
AU752991B2 (en) | Asynchronous transfer mode system handling differing AAL protocols | |
EP0891114A1 (en) | Method and system for performing an optimised hand over | |
AU752920B2 (en) | Coordinated cell discharge from ATM queue | |
AU751538B2 (en) | Cell handling unit and method for ATM node |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 98813734.8 Country of ref document: CN |
|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AL AM AT AU AZ BA BB BG BR BY CA CH CN CU CZ DE DK EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MD MG MK MN MW MX NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT UA UG UZ VN YU ZW |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): GH GM KE LS MW SD SZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG |
|
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
WWE | Wipo information: entry into national phase |
Ref document number: 1998964587 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2315120 Country of ref document: CA Ref document number: 2315120 Country of ref document: CA Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020007006836 Country of ref document: KR Ref document number: 19881/99 Country of ref document: AU |
|
WWP | Wipo information: published in national office |
Ref document number: 1998964587 Country of ref document: EP |
|
REG | Reference to national code |
Ref country code: DE Ref legal event code: 8642 |
|
WWP | Wipo information: published in national office |
Ref document number: 1020007006836 Country of ref document: KR |
|
WWG | Wipo information: grant in national office |
Ref document number: 19881/99 Country of ref document: AU |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 1998964587 Country of ref document: EP |
|
WWW | Wipo information: withdrawn in national office |
Ref document number: 1020007006836 Country of ref document: KR |