Design of a Mobility-Support Switch

MOBILITY-SUPPORT ATM SWITCH 353 . cells already stored in the switch memory destined for a mobile terminal immediately after it is identified as a COS. This can avoid cell loss during handoff. In addition, a COS is required to guarantee in-sequence cell delivery during handoff.

12.5.1 Design of a Mobility-Support Switch

w x In 33 the authors proposed a mobility-support ATM switch architecture that satisfies all the above requirements. The switch architecture uses a shared memory, which is fully shared by all output ports. Using a shared memory eliminates the need for additional memory for handoff and makes it easy to route cells to the corresponding output port, which can be dynamically changed during the lifetime of a connection due to handoff. Handoff is based on a VC, and by it the route of the VC is changed. That is, the output port address is changed in the middle of a connection. To efficiently manage each VC, whose output port address can be dynamically Ž changed due to handoff, each connection has its own logical queue VC . queue in Fig. 12.7 in the shared memory. A logical queue is used to link all of the backlogged cells of a connection in the order of their arrival times. Cells are stamped with their arrival times when joining their VC queues, and the timestamps are stored together with the cells. Fig. 12.7 Cell routing in a mobility-support ATM switch. WIRELESS ATM SWITCHES 354 There will be one transmission queue per output port. Each transmission queue keeps only the addresses of HOL cells 7 of VCs that are destined for a corresponding output port. When a cell is transmitted, the address of the next cell in the same VC queue is attached to a transmission queue. All cells’ addresses are sorted according to their arrival times in a transmission queue. Figure 12.7 illustrates how to manage VC queues in the shared memory and how to route cells before and after handoff. In this example, it is assumed that a virtual connection between a mobile terminal and its peer party was established through input port 1 and output port 1 of the switch. Ž . All downlink cells shaded cells in the figure of a virtual connection for the mobile terminal joined the same VC queue. The HOL cell’s address of the VC queue is stored in the transmission queue of output port 1 according to its arrival time. When the HOL cell is transmitted, the address of the next Ž . cell in the same VC queue VC queue i in the figure is extracted and joins the transmission queue in the order of arrival time. Now we assume that the mobile terminal moves to a new base station and requests handoff to the ATM network. When a signaling message for handoff arrives at the switch, the HOL cell’s address of the corresponding virtual channel is purged from a transmission queue. A newly arriving cell destined for a mobile terminal will still be attached to the corresponding VC queue i, and all cells of the same VC will not be transmitted, since the HOL cell’s address has been deleted from the transmission queue. By doing so, all cells destined for the mobile terminal are buffered immediately after the switch received a handoff signaling message, even though some of the cells had been queued in the switch memory before the message arrived. After a new Ž subpath is established, that is, after the new output port address output port . j in the figure for the VC is determined, the HOL cell’s address of the same VC is inserted in a corresponding transmission queue. This will restart cell transmission to the mobile terminal through output port j, which is con- nected to the new base station. Storing HOL cells’ addresses in transmission queues can prevent cell loss during handoff by purging only a corresponding HOL cell’s address from the transmission queues. Otherwise, the cells for the mobile terminal that were queued in the switch memory before a handoff signaling message will be Ž transmitted to the old base station and be lost since the mobile has already . left the base station . Each transmission queue requires a sorting and purging function for handoff. This function can be realized by an application specific integrated Ž . w x circuits ASIC , improved from the existing sequencer chip 34 . Figure 12.8 depicts the mobility-support switch architecture with a shared memory. It consists of a cell multiplexer, a demultiplexer, sequencer chips Ž . one for each output port , a mobility controller, an idle-address FIFO, a cell 7 The HOL cell of a backlogged connection is defined as the oldest backlogged cell of the connection. MOBILITY-SUPPORT ATM SWITCH 355 Fig. 12.8 Mobility-support switch architecture with a shared memory. 8 Ž memory, and four other small memories HP memory, TP memory, output . VCI memory, and output port address memory . The VLSI chip called the sequencer chip replaces a transmission queue in Figure 12.7 and is used for transmission. Each module of the sequencer contains two types of information associ- ated with each cell. One is the arrival time, AT, of a cell, with which each cell arriving at the switch is time-stamped. The other is the cell’s physical address, Ž . A. Each sequencer sorts the AT, A pairs associated with HOL cells of VC queues destined for the corresponding output port. Each sequencer arranges Ž . the AT, A pair, based on the cell’s arrival time AT, in such a way that smaller AT appears closer to the head of the sequencer. In other words, cells with smaller ATs are scheduled to depart earlier. 8 The number of entries of these memories is the same as the total number of VCIs. WIRELESS ATM SWITCHES 356 Cells can also be timestamped using a weighted RR or weighted fair queueing algorithm according to the allocation bandwidth to the virtual connections. Thus, it may guarantee the delay bound of each connection Ž . using weighted fair queueing , and it only needs to calculate the timestamps when the HOL cells join the transmission queues, instead of assigning w x time-stamps when they arrive 35 . All arriving cells from N inputs are first time-division multiplexed and written one by one into the cell memory, each with its timestamp at empty cell locations with the addresses obtained from the idle-address FIFO. The FIFO contains the addresses of current vacant cell locations in the cell memory. Every cell that belongs to the same virtual connection is attached to Ž . a logical queue with a forward pointer FP to point to the next linked cell in the same logical queue. Thus, all of the backlogged cells of a connection are linked in a logical queue in the order of the cells’ arrival times. Ž . Each logical queue is confined by two pointers, the head pointer HP and Ž . tail pointer TP , which are stored in the HP memory and the TP memory, respectively. The former, which is also stored in a sequencer according to its output port, points to the first cell of a logical queue. The latter, which is stored in the TP memory according to its VCI, points to the last cell. This constructs a linked list and acts as a logical queue for a connection. Note that the HOL cell’s address is stored in both the transmission queue and the HP memory. Therefore, when the HOL cell’s address is purged from the trans- mission queue due to handoff, it is still kept in the HP memory. Figure 12.9 shows an example of a logical queue where a cell is leaving or arriving. When a cell arrives, it is stored in the cell memory, and the TP of the associated connection is checked. The TP value stored in the TP memory can be accessed through the cell’s VCI. If the TP is null, the newly arriving Ž . cell is a HOL cell, and its AT, A pair is inserted in a sequencer according to its output port address, which can be obtained from the output port address memory through the cell’s VCI. If the TP is not null, the cell pointed w Ž .x to by the TP A in Fig. 12.9 a is accessed, and its FP is changed from null k w Ž .x to the new cell’s address A in Fig. 12.9 b . After that, the TP is replaced by l Ž . Ž . the new cell’s address A . When a cell is transmitted, the cell’s AT, A pair l is evacuated from its sequencer. If it has its successor, that is, if the cell’s FP w Ž .x is not null, a cell to which the FP points A in Fig. 12.9 b becomes a HOL j Ž . cell. The new AT , A pair of the HOL cell is inserted in the sequencer. If j j the departing cell’s FP is null, that is, if the cell is the last cell in a logical queue, the TP of the corresponding entry in the TP memory is updated with a null address. When cells destined for each output port depart from the switch, their addresses are obtained from the rightmost modules of each sequencer, and they are read out from a cell memory one by one for Ž . demultiplexing. As soon as each cell is transmitted, its AT, A pair is purged Ž . from the corresponding sequencer and all other AT, A pairs in the sequencer are shifted to the right by one position. The freed-up locations in the cell memory can be used by future cells, and their addresses are returned to the idle-address FIFO. MOBILITY-SUPPORT ATM SWITCH 357 Fig. 12.9 Adding and deleting a cell in a logical queue. Unlike in a normal ATM switch architecture, in the mobility-support switch architecture a cell’s VPIrVCI update is performed when the cell departs from the switch, since the VPIrVCI and output port address can be changed due to handoff while the cell is in the switch memory. When a signaling message for handoff arrives, the switch stops transmit- ting ATM cells to an associated output port. This is done through the following operation. When the mobility controller receives the signaling message, it checks the HP memory with the associated VCI. If the HP is null, that means the logical queue of the virtual connection is empty. Then, the corresponding output port address is updated with a null address. When a Ž . new cell of the same connection arrives, its AT, A pair is not inserted in a sequencer, since the associated output port address is updated with a null address and this results in stopping transmission of ATM cells for the handoff connection. If the HP is not null, the address exists in the corre- sponding sequencer for transmission. This information should be removed from the sequencer to stop transmission. The way to purge the associated Ž . AT, A pair in a sequencer is to broadcast the cell’s address to all modules. Ž . If the local address matches the broadcast address, its AT, A pair will be purged from the Sequencer. WIRELESS ATM SWITCHES 358 When a signaling message for the completion of the connection setup between the switch and the new base station which a mobile terminal is currently visiting arrives, the handoff controller updates the output port address in the output port address memory and the output VCI in the output VCI memory for the handoff connection. Since the signaling message has information about a new connection subpath for a mobile’s handoff, a COS can resume transmitting ATM cells of a handoff connection with a new allocated output port address and VCI. To resume transmission, the mobility controller accesses the HP memory through the old VCI to find the HOL cell Ž . of the handoff connection. If the HP is not null, its AT, A pair is inserted in a sequencer that is associated with the new output port address. This can resume transmitting cells of the handoff connection through the new output port.

12.5.2 Performance