KR20010002730A - Method and apparatus for ensuring transfer order in a packet-switch with a dual-switching plane000 - Google Patents

Method and apparatus for ensuring transfer order in a packet-switch with a dual-switching plane000 Download PDF

Info

Publication number
KR20010002730A
KR20010002730A KR1019990022673A KR19990022673A KR20010002730A KR 20010002730 A KR20010002730 A KR 20010002730A KR 1019990022673 A KR1019990022673 A KR 1019990022673A KR 19990022673 A KR19990022673 A KR 19990022673A KR 20010002730 A KR20010002730 A KR 20010002730A
Authority
KR
South Korea
Prior art keywords
input
cell
cells
queue
output
Prior art date
Application number
KR1019990022673A
Other languages
Korean (ko)
Other versions
KR100368439B1 (en
Inventor
손장우
Original Assignee
김덕중
사단법인 고등기술연구원 연구조합
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 김덕중, 사단법인 고등기술연구원 연구조합 filed Critical 김덕중
Priority to KR10-1999-0022673A priority Critical patent/KR100368439B1/en
Publication of KR20010002730A publication Critical patent/KR20010002730A/en
Application granted granted Critical
Publication of KR100368439B1 publication Critical patent/KR100368439B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2458Modification of priorities while in transit
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/104Asynchronous transfer mode [ATM] switching fabrics
    • H04L49/105ATM switching elements

Abstract

PURPOSE: A method for securing a transmission sequence in a packet switch having a dual switching plane is provided to offer a cell distribution and arbitration method which secures the transmission sequence in a 2Q2P(dual input queue per input port) and has an excellent queuing delay time under a bust traffic condition at the same time. CONSTITUTION: A cyclic-in-cyclic-out(CICO) system alternately distributes asynchronous transfer mode(ATM) cells transmitted to each inputting port to dual inputting queues. The CICO system endows transmitting chances according to a transmitted order for foremost cells of the multiple inputting queues, and decides whether the foremost cells are available for transmitting to outputting ports. If so, the CICO system transmits the foremost cells to the selected outputting ports through a dual switching plane. The CICO system alternately distributes transmitted cells to two inputting queues when asynchronous transfer mode(ATM) cells are transmitted to an input terminal, and alternately services head cells of the two inputting queues while arbitrating the transmitted cells to prevent a transmission sequence from being turned in the input terminal. The transmission sequence in an exchange is secured by a CICO operation. As the transmitted cells are alternately distributed to the two inputting queues, an output-buffering switch is delayed under a grouped traffic condition. Without using a time stamp and a cell sequence restoring circuit, As operations of a transmitted cell distributor, a transmission arbitrator, and an output terminal controller are simple, the CICO system is suitable for a high-speed exchange design having a link capacity of a gigabit/second level.

Description

이중 스위칭 평면을 갖는 패킷 스위치에서 전송 순서 보장 방법 및 장치 {METHOD AND APPARATUS FOR ENSURING TRANSFER ORDER IN A PACKET-SWITCH WITH A DUAL-SWITCHING PLANE000}Method and apparatus for guaranteeing transmission order in packet switch with dual switching plane {METHOD AND APPARATUS FOR ENSURING TRANSFER ORDER IN A PACKET-SWITCH WITH A DUAL-SWITCHING PLANE000}

본 발명은 비동기전송모드(Asynchronous Transfer Mode: 이하 'ATM'이라 함) 셀 스위칭 방식에 관한 것으로서, 특히 이중 스위칭 평면을 갖는 패킷 스위치에 있어서 전송순서를 보장하여 전송 능력을 향상시키는 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an asynchronous transfer mode (hereinafter referred to as "ATM") cell switching scheme, and more particularly to a method of improving transmission capability by guaranteeing transmission order in a packet switch having a dual switching plane.

최근 근거리통신망(이하 'LAN'이라 함)과 광역통신망(이하 'WAN'이라 함)영역에서 네트워크 링크 용량이 초당 기가비트(Gigabit/sec) 급으로 확장되면서 초고속 링크를 지원하는 데 적합한 크로스바 스위칭 패브릭 기반의 입력 버퍼링 스위치에 대한 관심과 포트 전송율(port-density) 측면에서 확장성있는 스위치 구조에 대한 요구가 증대되고 있다. 즉, 기존의 ATM 스위치는 한 포트당 155Mbps의 전송율을 근간으로 설계되어 졌고 따라서 큐잉지연시간 측면에서 최적의 성능을 주는 출력 버퍼링 방식의 스위치가 주종을 이루었다. 그러나 ATM스위치의 경우 OC-48급 (2.5Gbps)의 링크를 지원하고 LAN스위치나 기가비트 라우터의 경우 1Gbps의 기가비트 이더넷 링크를 지원하기 위해서는 출력 버퍼링 방식에서 요구되는 NV(N: 스위치 사이즈, V: 입출력링크 전송율) 의 동작 속도를 갖는 출력 버퍼 메모리의 구현이 N이 커지면 현재의 기술로 불가능해진다. 따라서 기가급 이상의 포트 전송율을 갖는 패킷 스위치의 설계에 있어서 링크 속도의 버퍼 메모리와 스위칭 패브릭을 요구하는 입력 버퍼링 방식이 현실적인 대안으로 제시되고 있다.Recently, network link capacity has been expanded to gigabits per second (Gigabit / sec) in the local area network (hereinafter referred to as 'LAN') and wide area network (hereinafter referred to as 'WAN'), and is based on a crossbar switching fabric suitable for supporting high speed links. There is an increasing demand for scalable switch architectures in terms of input buffering switches and port-density. In other words, the existing ATM switch is designed based on the transmission rate of 155Mbps per port. Therefore, the main switch is an output buffering switch that provides optimal performance in terms of queuing delay time. However, in order to support OC-48 (2.5Gbps) link for ATM switch and 1Gbps Gigabit Ethernet link for LAN switch or Gigabit router, NV (N: switch size, V: I / O required for output buffering method) The implementation of an output buffer memory with an operating speed of link transfer rate becomes impossible with the current technology as N becomes larger. Therefore, in the design of a packet switch having a gigabit or higher port transfer rate, an input buffering method requiring a link speed buffer memory and a switching fabric has been proposed as a realistic alternative.

그러나 입력 버퍼링 방식은 잘 알려진 선두 (Head-of-Line: 이하 'HOL'이라 함) 차단 현상으로 인해 최대 처리율이 58.6%로 제한된다는 문제를 가지고 있다. 이를 극복하기 위해 입력버퍼를 비선입선출(non-FIFO)큐로 구성하거나 스위칭 패브릭의 스위칭 능력을 향상시키는 방안들이 제시되어 있다.However, the input buffering method has a problem that the maximum throughput is limited to 58.6% due to the well-known blocking of the head-of-line (HOL). In order to overcome this problem, methods for configuring the input buffer as a non-FIFO queue or improving the switching capability of the switching fabric are proposed.

종래의 방안중에 이중 스위칭 평면 (dual-switching plane)을 사용하여 전송 능력을 향상시키는 접근 방안이 있다. 이 방안은 이중 스위칭 평면을 어떻게 사용하느냐에 따라 도 1 또는 도 2에서 보이듯이 두 가지 방식으로 스위치 구성이 가능하다. 두 구조에서 각 입력큐는 선입선출 (First-In-First-Out) 큐로서 한 슬럿에 하나의 셀만 읽기 가능하며 출력큐는 두 배로 스피드업되어 있어 동일 슬럿에 두 개의 셀을 쓰기 가능하다. 도 1은 각 입력포트에 단일 FIFO 입력큐(10)를 두고 이 FIFO 입력큐(10)의 선두셀(HOL셀)이 입력평면선택기(20)를 통해 두 개의 스위칭 평면(30a, 30b)중 어느 하나를 선택하고, 출력단제어기(40)를 통해 출력포트의 FIFO 출력큐(50)로 전송되는 방식에 관한 것으로서, 한 출력포트(50)로 두 개의 셀이 동시에 전송가능하다. 도 2는 각 입력포트에 두 개의 FIFO 입력큐(70)와 이의 선택을 제어하기 위한 입력큐선택기(60)를 두고, 각 FIFO 입력큐(70)는 해당 스위칭 평면(80a, 80b)에 바로 연결되어 있는 구조라는 점에서 도 1의 ATM 스위치 구조와 차이난다. 도 2의 ATM 스위치의 경우 한 입력포트에서 두 개의 셀이 동시에 전송가능하고, 한 출력단으로 동시에 두 개의 셀이 전송 가능하다. 여기서, 도 1의 ATM 스위치를 1Q2P (one input queue per input port, one switching plane) 스위치, 도 2의 ATM 스위치를 2Q2P (dual-input queue per input port, dual-switching plane) 스위치라고 지칭하기로 한다.One conventional approach is to use a dual-switching plane to improve transmission capability. This scheme can be configured in two ways, as shown in Fig. 1 or 2, depending on how the dual switching plane is used. In both schemes, each input queue is a first-in-first-out queue, where only one cell can be read in one slot, and the output queue is doubled up so that two cells can be written in the same slot. 1 shows a single FIFO input queue 10 at each input port, and the head cell (HOL cell) of the FIFO input queue 10 is connected to an input plane selector 20 through which of the two switching planes 30a and 30b. Selected one and transmitted to the FIFO output queue 50 of the output port through the output terminal controller 40, two cells can be simultaneously transmitted to one output port (50). Figure 2 has two FIFO input cues 70 and an input cue selector 60 for controlling their selection at each input port, and each FIFO input cue 70 is directly connected to the corresponding switching planes 80a and 80b. The structure is different from that of the ATM switch of FIG. In the ATM switch of FIG. 2, two cells can be simultaneously transmitted from one input port, and two cells can be simultaneously transmitted to one output terminal. Here, the ATM switch of FIG. 1 will be referred to as a 1Q2P (one input queue per input port, one switching plane) switch, and the ATM switch of FIG. 2 will be referred to as a dual-input queue per input port (dual-switching plane) switch. .

이중 스위칭 평면을 두는 경우 스위치내에 하나의 입출력포트쌍에 두 개의 스위칭 경로가 존재하므로 셀의 전송 순서가 바뀔 수 있으며 이를 고려한 세심한 설계가 필요하다. 도 1의 1Q2P 스위치 구조의 경우 각 입력단에 하나의 FIFO큐(10)만 존재하고 각 FIFO큐의 선두셀 즉, HOL셀만 경합에 참여하므로 셀전송 순서는 보장된다. 그러나 도 1의 1Q2P 스위치는 하나의 출력단으로 두 개의 셀이 동시에 전송 가능하나 하나의 입력단에서 하나의 셀만 전송가능하므로 처리율이 떨어지며 이중 스위칭평면을 충분히 활용하지 못하는 단점이 있다. 실측에 의하면, 1Q2P 스위치는 랜덤 트래픽을 인가할 때 88.6%의 처리율을 보이며, 이 구조에서 스위칭 평면을 3개와 4개로 늘리면 처리율이 각각 97.6%와 99.7%로 높아진다.In the case of a dual switching plane, since two switching paths exist in a single input / output port pair in a switch, a cell's transmission order may be changed, and a careful design is required. In the case of the 1Q2P switch structure of FIG. 1, only one FIFO queue 10 exists at each input, and only the head cell of each FIFO queue, that is, the HOL cell participates in contention, thereby ensuring a cell transmission order. However, in the 1Q2P switch of FIG. 1, two cells can be simultaneously transmitted to one output terminal, but only one cell can be transmitted from one input terminal, resulting in a low throughput and insufficient utilization of the dual switching plane. Actually, the 1Q2P switch shows 88.6% throughput when random traffic is applied. In this structure, increasing the switching planes to three and four increases the throughput to 97.6% and 99.7%, respectively.

도 2의 2Q2P 스위치 구조에서는 하나의 출력단으로 두 개의 셀이 동시에 전송 가능할 뿐 만 아니라 하나의 입력큐(70)에서 두 개의 셀이 동시에 전송 가능하므로 출력단 충돌과 입력단 충돌이 줄어 우수한 성능을 보인다. 최근에 Kolias는 자신의 논문 ("Performance Analysis of Multiplane Nonblocking ATM Switches", IEEE Globecom'98, pp.356-362, 1998)을 통해 랜덤 트래픽 환경에서 각 입력단에 도착하는 셀을 두 입력큐 중 하나에 랜덤하게 분배할 때 2Q2P스위치의 최대 처리율이 100%에 이름을 증명하였다. 즉, 2Q2P 스위치 구조는 단지 순수 입력버퍼링 스위치 구조를 이중화 (입력단당 두 개의 입력큐, 두 개의 스위칭 평면)하고 각 출력단에 속도가 향상된 출력버퍼를 둠으로써, 링크 용량의 N배로 동작하는 스위칭 패브릭과 출력 버퍼 메모리를 요구하는 출력 버퍼링 스위치의 성능을 얻을 수 있다는 장점을 갖는다. 또한 출력버퍼링 방식과 달리 스위치 사이즈 N이 커져도 요구되는 각 입력 버퍼 메모리 속도, 스위칭 평면의 스위칭 속도, 출력 버퍼 메모리 속도는 변화가 없다는 탁월한 확장성을 갖는다. 따라서 포트당 수 '기가비트/초'의 용량을 갖는 초고속 대용량 ATM 교환기 및 인터넷 프로토콜(Internet Protocol) 라우터나 랜(LAN) 스위치를 설계할 때 매우 바람직한 구조라고 볼 수 있다.In the 2Q2P switch structure of FIG. 2, not only two cells can be simultaneously transmitted to one output terminal but also two cells can be simultaneously transmitted in one input queue 70, thereby reducing output collision and input collision. Recently, Kolias, in his paper ("Performance Analysis of Multiplane Nonblocking ATM Switches", IEEE Globecom'98, pp.356-362, 1998), puts cells arriving at each input in a random traffic environment into one of two input queues. The maximum throughput of the 2Q2P switch proved to be 100% when randomly distributed. In other words, the 2Q2P switch structure merely duplicates the pure input buffering switch structure (two input queues per input stage, two switching planes) and has an output buffer with improved speed at each output stage. This has the advantage that the performance of an output buffering switch requiring an output buffer memory can be obtained. In addition, unlike the output buffering method, even if the switch size N is increased, each input buffer memory speed, switching speed of the switching plane, and output buffer memory speed which are required are excellent in scalability. Therefore, it is a very desirable structure when designing a high-capacity high-capacity ATM switch and an Internet Protocol router or a LAN switch having a capacity of 'gigabit / second' per port.

그러나, 2Q2P 스위치 구조는 전송 순서 보장이라는 문제점이 있다. 즉, 각 입력단에 두 개의 입력큐가 존재하므로 각 입력단의 IQS는 셀이 도착하면 이 셀을 분배(저장)할 입력큐를 선택해야 한다. 흔히 두 입력큐중 하나를 랜덤하게 선택하거나 교대로 선택하는 방법이 고려되고 있는 데, 두 입력큐에서 겪는 큐잉 지연이 다르므로 출력단으로 스위칭되어 오는 셀들의 셀순서가 입력단에 도착한 셀순서와 달라져 전송 순서가 뒤바뀌는 경우가 발생할 수 있다. 특히 ATM과 같이 전송 순서가 보장되어야 하는 경우에 순수한 2Q2P 스위치 구조는 사용될 수 없으며 전송 순서를 보장해주기 위한 방안이 부가되어야 한다.However, the 2Q2P switch structure has a problem of transmission order guarantee. That is, since two input queues exist at each input terminal, the IQS of each input terminal must select an input queue to distribute (store) the cell when the cell arrives. Often, a method of randomly selecting or alternately selecting one of two input queues is considered. Since the queuing delay experienced by the two input queues is different, the cell order of cells switched to the output terminal is different from the cell order arriving at the input terminal. The order may be reversed. In particular, when the transmission order must be guaranteed, such as ATM, a pure 2Q2P switch structure cannot be used, and a scheme for guaranteeing the transmission order must be added.

2Q2P스위치와 같이 하나의 입출력단쌍간에 복수개의 스위칭 경로가 존재하는 경우 전송순서를 보장해주기 위해 일반적으로 두 가지 방법이 제시되고 있다. 첫 번째로는, 입력단에서는 랜덤 또는 교대로 선택하고 출력단에서 전송 순서 복원을 위한 셀순서 복원기(Resequencer)를 두는 타임스탬프 방법과, 두 번째로는 가상 채널별로 저장할 입력큐를 호설정시에 명시적으로 지정해주는 고정라우팅 방법(static routing 또는 fixed path routing)이다. 출력단에 셀순서 복원기를 두는 방법은 구현이 매우 복잡하며 셀순서 복원을 위해 추가적인 지연이 발생한다는 문제점을 갖고 있다. 또한 고정라우팅 방법은 가상경로식별자/가상채널식별자(virtual path identifier/ virtual channel identifier) 테이블에 입력큐필드를 추가함으로써 간단하게 전송 순서를 보장해줄 수 있으나 동적인 트래픽 패턴 및 망 부하변화에 관계없이 고정된 입력큐에 도착셀을 저장하므로 스위치내 자원을 효율적으로 사용하지 못하게 되어 입력큐에서 큐잉 지연이 크고 버퍼가 유한한 경우 셀손실이 크다.In the case of multiple switching paths between a pair of input / output terminals such as a 2Q2P switch, two methods are generally proposed to guarantee the transmission order. Firstly, the timestamp method that selects randomly or alternately at the input and puts a cell sequencer for restoring the transmission order at the output, and secondly, specifies the input queue to be stored for each virtual channel. Static routing or fixed path routing. The method of placing the cell order recoverer at the output stage has a problem that the implementation is very complicated and an additional delay occurs to recover the cell order. In addition, the fixed routing method can guarantee the transmission order simply by adding the input queue field to the virtual path identifier / virtual channel identifier table, but it is fixed regardless of the dynamic traffic pattern and network load change. Because the arrival cell is stored in the input queue, the resources in the switch cannot be used efficiently, and the cell loss is large in the case of a large queuing delay in the input queue and a finite buffer.

여기서, 복수개의 스위칭 경로를 갖는 패킷 스위치에서 셀전송 순서를 보장해주는 기존의 방법인 타임스탬프 방법과 고정할당 방법에 관해 보다 구체적으로 살펴보면 다음과 같다.Here, a time stamp method and a fixed allocation method, which are conventional methods for guaranteeing cell transmission order in a packet switch having a plurality of switching paths, will be described in detail.

도 3에는 셀순서 복원기(resequencer)를 이용한 셀순서 복원방법인 타임스탬프 방법이 도시되어 있다. 입력단(110)에 셀이 도착하면 입력단 제어기(112)는 현재 시각 (도착 시각)을 기록한 타임스탬프를 도착셀에 부착하고 두 입력큐(114), 결국 두 스위칭 경로 중 하나에 교대로 또는 랜덤하게 분배한다. 두 입력큐(114)에서 서로 다른 큐잉 지연시간을 겪으므로 출력단(120)에 도착했을 때 도착시간이 다르고 따라서 전송순서가 뒤바뀔 수가 있다. 출력단(120)에 셀이 들어오면 셀순서복원기(122)는 셀에 부착된 타임스탬프를 이용해 도착셀의 나이(age)를 계산하고, 타임스탬프를 제거한 뒤 셀과 그 셀의 나이를 순서복원용 버퍼(resequencing buffer: RSQ_BUFF)(122)에 저장한다. 이 때 나이는 '현재 시각 - 타임스탬프'로 계산되며 결국 입력큐(114)에서의 큐잉지연시간 Din을 의미한다. 순서복원용 버퍼(RSQ_BUFF)(122)에 저장된 셀의 나이는 매 슬럿마다 1씩 증가되며 최대 지연시간 Dmax에 이르면 출력큐(124)로 전달된다. 셀순서복원기(122)는 매 슬럿마다 순서복원용 버퍼(RSQ_BUFF)에 저장된 셀의 나이를 체크해서, (1) 나이값이 가장 크고, (2) 나이가 최대큐잉지연시간 Dmax를 넘은 셀을 출력큐(124)로 전달한다. 이 때, 셀순서복원기(122)는 출력큐(124)가 두 배로 스피드업되어 있으므로 한 슬럿당 두 개의 셀을 출력큐(124)로 전달될 수 있다. 이와 같이 타임스탬프 방법은 출력단에 도착한 셀을 순서복원용 버퍼(RSQ_BUFF)에서 최대지연시간과 큐잉지연시간의 차, 즉 Dmax- Din시간만큼 고의로 지연시킨 후 출력큐(124)로 전달함으로써, 모든 셀들이 입력단에 도착후 출력큐에 도착할 때까지의 소요시간을 Dmax로 동일하게 해주며 이에 의해 전송순서를 유지시켜 준다는 개념이다. 도 3에는 Dmax=12일 때 타임스탬프 방법의 예가 나타나 있다. 첫번째 도착셀이 하위큐에서 Din=9의 큰 큐잉 지연을 겪었지만, 출력단에 먼저 도착한 두번째 셀을 7슬럿(Dmax- Din= 12-5 = 7)동안 고의로 지연시킴으로써 첫번째 셀이 먼저 출력큐(124)로 보내져 입력단에 도착순서대로 출력큐에 저장됨을 볼 수 있다.3 illustrates a timestamp method which is a cell order recovery method using a cell order recoverer. When the cell arrives at the input terminal 110, the input controller 112 attaches a timestamp recording the current time (arrival time) to the arrival cell and alternately or randomly alternates the two input queues 114, one of the two switching paths. To distribute. Since the two input queues 114 experience different queuing delays, when they arrive at the output terminal 120, the arrival times are different and thus the transmission order may be reversed. When the cell enters the output terminal 120, the cell order restorer 122 calculates the age of the arrival cell using the time stamp attached to the cell, removes the time stamp, and restores the cell and the age of the cell. It is stored in a resequencing buffer (RSQ_BUFF) 122. At this time, the age is calculated as 'current time-timestamp', which means the queuing delay time D in the input queue 114. The age of the cells stored in the sequential restoration buffer (RSQ_BUFF) 122 is increased by 1 for every slot and is transmitted to the output queue 124 when the maximum delay time D max is reached. The cell sequence restorer 122 checks the age of the cells stored in the sequence restoration buffer (RSQ_BUFF) for each slot, so that (1) the age value is the largest and (2) the age exceeds the maximum queuing delay time D max . Is transmitted to the output queue 124. In this case, since the output queue 124 is doubled up, the cell sequence restorer 122 may transfer two cells per slot to the output queue 124. As described above, the time stamp method intentionally delays the cell arriving at the output terminal by the difference between the maximum delay time and the queuing delay time in the sequential restoration buffer RSQ_BUFF, that is, D max -D in time, and then transfers the cell to the output queue 124. It is the concept that the time required for all cells to reach the output queue after arriving at the input terminal is equal to D max , thereby maintaining the transmission order. 3 shows an example of a timestamp method when D max = 12. The first arrival cell experienced a large queuing delay of D in = 9 in the lower queue, but the first cell outputs first by deliberately delaying the second cell arriving at the output stage for 7 slots (D max -D in = 12-5 = 7). It can be seen that it is sent to the queue 124 and stored in the output queue in the order of arrival at the input.

도 4에 나타난 고정라우팅 방법은 룩업테이블(150)에 예시된 바와 같이 호설정시에 각 가상 채널에 가상경로식별자(VPI)값 및 가상채널식별자(VCI)값과 더불어 그 가상채널의 셀을 저장할 입력큐를 명시적으로 지정해주는 방법으로 가상채널에 속한 모든 셀들이 스위치내에서 동일 스위칭 경로를 따라 스위칭되므로 전송 순서가 자연스럽게 보장해 준다. 그러나 트래픽의 동적인 상황에 무관하게 고정된 스위칭 경로를 따르므로 스위치내 자원을 효과적으로 사용하지 못하며 입력큐를 효과적으로 공유하지 못한다. 따라서 입력큐에서 큐잉 지연시간이 크며 버퍼가 유한한 경우 셀손실율도 크다.The fixed routing method shown in FIG. 4 stores the cells of the virtual channel along with the virtual path identifier (VPI) value and the virtual channel identifier (VCI) value in each virtual channel at the time of call setup as illustrated in the lookup table 150. By explicitly specifying the input queue, all cells belonging to the virtual channel are switched along the same switching path in the switch, thus ensuring a natural transmission order. However, regardless of the dynamic situation of the traffic, it follows a fixed switching path and thus cannot effectively use resources in the switch and share input queues effectively. Therefore, the queuing delay is large in the input queue, and the cell loss rate is large when the buffer is finite.

그런데, 위의 두 가지 방법은 다음과 같은 문제점을 안고 있다. 먼저, 타임스탬프 방법은 ㄱ) 입력단에서 아무런 제어없이 두 스위칭 경로로 도착셀들을 분산시키고 출력단에서 셀순서복원기가 전송 순서를 복원해주는 방법이므로, 모든 출력단에 셀순서복원기가 필요하다는 문제점과, ㄴ) 입력단에서 도착셀에 긴 타임스탬프를 부착해야 되고 출력단에 두어야 하는 셀순서복원기가 그 구현이 복잡하다는 문제점이 있다. 즉, 셀순서복원기는 매 슬럿마다 순서복원용 버퍼(RSQ_BUFF)내의 모든 셀들의 타임스탬프를 검색하여 가장 큰 큐잉지연시간을 갖는 셀을 찾아야 하므로, 링크 전송율이 초당 기가비트(Gigabit/sec)급으로 확장되고 순서복원용 버퍼(RSQ_BUFF)의 사이즈가 커지면 구현이 어려워진다. 또한, 입력단에 도착한 셀은 출력큐에 도달할 때까지 강제로 Dmax크기의 큐잉지연을 겪게 되므로 스위치 부하가 적은 상황에서도 큰 큐잉지연이 발생한다. 가장 큰 문제는 순서복원용 버퍼(RSQ_BUFF)의 사이즈와 Dmax값에 따라 순서복원용 버퍼(RSQ_BUFF)에서 셀손실이 발생할 수도 있고 셀순서가 뒤바뀔 확률이 여전히 존재한다는 점이다. 따라서 타임스탬프 방법을 실제로 스위치에 적용하기 위해서는 다양한 트래픽 패턴과 부하량에 대해 허용 큐잉 지연시간, 허용 셀손실율과 허용 시퀀스이탈율(out-of-sequence)을 만족시키는 순서복원용 버퍼(RSQ_BUFF) 사이즈와 Dmax값을 설정해줘야 하는 데, 2Q2P스위치 구조에서 타임스탬프 방법을 적용했을 때에 대한 분석이 아직까지는 제시되지 않고 있다.However, the above two methods have the following problems. First, since the timestamp method is a method of distributing the arrival cells in two switching paths without any control at the input terminal and restoring the transmission order of the cell sequence restorer at the output stage, the cell sequence restorer is required at all output terminals. A long time stamp needs to be attached to the arrival cell at the input and the cell sequence restorer has to be placed at the output. That is, the cell order restorer must search the timestamps of all the cells in the order restoration buffer (RSQ_BUFF) every slot to find the cell with the largest queuing delay, so the link transfer rate can be extended to Gigabit / sec. If the size of the sequence restoration buffer RSQ_BUFF is increased, the implementation becomes difficult. In addition, since the cell arriving at the input stage undergoes a queuing delay of the size of D max until the output queue is reached, a large queuing delay occurs even under a small switch load. The biggest problem is that cell loss may occur in the sequence restoration buffer RSQ_BUFF and the probability that the cell order is reversed may depend on the size of the sequence restoration buffer RSQ_BUFF and the D max value. Therefore, to apply the timestamp method to the switch, the size of the sequential restoration buffer (RSQ_BUFF) that satisfies the allowable queuing delay, allowable cell loss rate and allowable out-of-sequence for various traffic patterns and loads The value of D max should be set. However, analysis of the timestamp method in the 2Q2P switch structure has not been presented yet.

고정라우팅 방법은 하나의 가상채널에 속한 모든 셀들이 스위치내에서 동일 스위칭 경로 즉, '상위입력큐(134a)->상위평면(140a)' 또는 '하위입력큐(134b)->하위평면(140b)'과 같은 경로를 따라 스위칭되므로 전송순서는 완전히 보장된다. 그러나, 트래픽의 동적인 상황에 무관하게 고정된 스위칭경로를 따르므로 이중 스위칭평면(140a, 140b)을 효과적으로 사용하지 못하며 두 입력큐(134a, 134b)를 효과적으로 공유하지 못한다. 특히, 트래픽이 연집적인(burst) 경우 하나의 입력단(130)내에는 한 버스트의 셀들이 점유할 확률이 높은 데, 이 버스트를 이루는 셀들이 모두 한 입력큐에 저장되므로 이들중 한 슬럿에 하나의 셀만 출력단으로 전달될 수 있어 입력큐(130)와 스위칭 평면(140a, 140b)을 이중화한 의미를 잃게 한다. 따라서 입력큐에서 큐잉 지연시간이 크며 버퍼가 유한한 경우 셀손실율도 크다.In the fixed routing method, all cells belonging to one virtual channel have the same switching path in the switch, that is, 'high input queue 134a-> high plane 140a' or 'low input queue 134b'-> low plane 140b. The switching order is completely guaranteed since switching is done along the same path as. However, since the switching path is fixed regardless of the dynamic situation of traffic, the dual switching planes 140a and 140b are not effectively used and the two input queues 134a and 134b are not effectively shared. In particular, when traffic is bursted, there is a high probability that cells of one burst occupy within one input terminal 130. Since the cells forming the burst are all stored in one input queue, one slot in one of these slots is used. Only the cells of the can be delivered to the output terminal loses the meaning of the duplication of the input queue 130 and the switching plane (140a, 140b). Therefore, the queuing delay is large in the input queue, and the cell loss rate is large when the buffer is finite.

상설한 종래 기술의 문제점을 해결하기 위해, 본 발명은 2Q2P스위치에서 전송순서를 보장해주면서 버스트 트래픽 환경에서 우수한 큐잉 지연 시간 특성을 갖게 해주는 셀 분배 및 중재 방식을 제공함을 목적으로 한다.In order to solve the above-mentioned problems of the prior art, an object of the present invention is to provide a cell distribution and arbitration scheme that ensures transmission order in a 2Q2P switch and has excellent queuing delay characteristics in a burst traffic environment.

도 1은 입력포트당 하나의 입력큐가 할당되고 이중 스위칭 평면을 갖는 종래의 ATM 스위치(1Q2P 스위치)의 구조를 도시한다.Fig. 1 shows the structure of a conventional ATM switch (1Q2P switch) having one input queue per input port and having a double switching plane.

도 2는 입력포트당 두 개의 입력큐가 할당되고 이중 스위칭 평면을 갖는 종래의 다른 ATM 스위치(2Q2P 스위치)의 구조를 도시한다.Fig. 2 shows the structure of another conventional ATM switch (2Q2P switch) having two input queues per input port and having a double switching plane.

도 3은 종래의 타임스탬프 방법에 따른 셀순서 보장방식을 설명하기 위한 개념도이다.3 is a conceptual diagram illustrating a cell order guarantee method according to a conventional time stamp method.

도 4는 종래의 고정라우팅 방법에 따른 셀순서 보장방식을 설명하기 위한 개념도이다.4 is a conceptual diagram illustrating a cell order guarantee method according to a conventional fixed routing method.

도 5는 본 발명에 따른 입력큐의 분배와 중재에 관한 관리방법을 보여주는 개념도이다.5 is a conceptual diagram illustrating a management method for distribution and arbitration of an input queue according to the present invention.

도 6은 본 발명에 따른 ATM셀의 태그 동작을 설명하기 위한 개념도이다.6 is a conceptual diagram illustrating a tag operation of an ATM cell according to the present invention.

도 7은 본 발명의 성능분석을 위한 시뮬레이션에 사용된 버스트 트래픽 모델을 도시한다.7 shows a burst traffic model used in the simulation for performance analysis of the present invention.

도 8은 1Q2P 스위치에서 입력부하에 따른 큐잉 지연시간 특성을 보여주는 그래프이다.8 is a graph showing a queuing delay time characteristic according to an input load in a 1Q2P switch.

도 9는 2Q2P 스위치에서 타임스탬프 방식을 적용했을 때 입력부하에 따른 큐잉 지연시간 특성을 보여주는 그래프이다.FIG. 9 is a graph showing a queuing delay time characteristic according to an input load when a time stamp method is applied to a 2Q2P switch.

도 10은 타임스탬프 방법에서 입력 부하에 따른 시퀀스이탈율 (out-of-sequence rate) 특성을 보여주는 그래프이다.FIG. 10 is a graph showing an out-of-sequence rate characteristic according to an input load in a time stamp method.

도 11은 2Q2P 스위치에서 고정라우팅(static routing)방식을 적용했을 때 입력부하에 따른 큐잉 지연시간의 특성을 나타내는 그래프이다.FIG. 11 is a graph illustrating a characteristic of a queuing delay time according to an input load when a static routing scheme is applied to a 2Q2P switch.

도 12는 2Q2P 스위치에서 본 발명인 CICO 방법을 적용했을 때 입력부하에 따른 큐잉 지연시간의 특성을 보여주는 그래프이다.12 is a graph showing the characteristics of the queuing delay time according to the input load when the CICO method of the present invention is applied to a 2Q2P switch.

도 13은 입력부하에 따른 입력큐에서 큐잉 지연시간의 비교특성을 나타낸 그래프이다.13 is a graph illustrating a comparison characteristic of a queuing delay time in an input queue according to an input load.

도 14는 입력부하에 따른 총 큐잉 지연시간의 비교특성을 보여주는 그래프이다.14 is a graph showing a comparison characteristic of the total queuing delay time according to the input load.

도 15는 버스트사이즈에 따른 입력단에서 큐잉지연시간의 비교특성을 보여주는 그래프이다.15 is a graph illustrating a comparison characteristic of queuing delay time at an input terminal according to burst size.

도 16은 버스트사이즈에 따른 시스템에서 큐잉지연시간의 비교특성을 보여주는 그래프이다.16 is a graph showing the comparison characteristics of the queuing delay time in the system according to the burst size.

도 17은 입력부하에 따른 본 발명인 CICO 방법과 bi제약이 없는 경우의 큐잉지연 성능차이를 도시한 그래프이다.FIG. 17 is a graph illustrating a difference in queuing delay performance when there is no b i constraint and the CICO method of the present invention according to an input load.

도 18은 버스트사이즈에 대한 본 발명인 CICO 방법과 bi제약이 없는 경우의 큐잉지연 성능차이를 도시한 그래프이다.FIG. 18 is a graph showing a difference in queuing delay performance when there is no b i constraint and the CICO method of the present invention with respect to the burst size.

도 19는 l=8일 때 입력부하에 따른 셀손실율의 비교특성을 보여주는 그래프이다.19 is a graph showing the comparison characteristics of the cell loss rate according to the input load when l = 8.

<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>

200: 입력큐 선택기 210: 이중 입력큐200: input queue selector 210: dual input queue

220: 이중 스위칭평면 230: 출력단 제어기220: dual switching plane 230: output stage controller

240: 출력큐240: output queue

상기의 목적 달성을 위해, 입력단에 도착한 비동기전송모드(ATM)셀의 출력단으로의 전송경로를 제공해주는 스위칭평면이 이중으로 구성되고, 상기 이중 스위칭평면의 입출력단에는 하나이상의 입력포트와 출력포트가 각각 제공되며, 각 입력포트는 상기 이중 스위칭평면 각각과 일 대 일로 연결되는 제1 및 제2 입력큐를 포함하고, 각 출력포트는 단일 출력큐를 포함하는 비동기전송모드(ATM) 스위치에 있어서,In order to achieve the above object, a switching plane that provides a transmission path to the output terminal of the asynchronous transfer mode (ATM) cell that arrived at the input terminal is composed of a double, the input and output ports of the dual switching plane has at least one input port and output port In the asynchronous transfer mode (ATM) switch is provided, each input port includes a first and a second input queue connected one-to-one with each of the dual switching plane, each output port comprises a single output queue,

상기 각 입력포트에 도착한 상기 비동기전송모드(ATM) 셀을 상기 두 입력큐에 교대로 분배하는 제1 단계,A first step of alternately distributing the asynchronous transmission mode (ATM) cells arriving at each input port to the two input queues,

매 전송주기마다, 선택된 입력포트의 두 입력큐의 양 선두셀에 대하여 도착순서에 따라 전송기회를 부여하여 선택된 출력포트로의 전송가능 여부를 판단하는 제2 단계,In each transmission period, a second step of determining whether transmission to the selected output port is possible by granting transmission opportunities to both head cells of the two input queues of the selected input port in the order of arrival;

전송가능으로 판단된 선두셀을 상기 이중 스위칭평면을 통해 상기 선택된 출력포트로 전송하는 제3단계를 구비하여 원래의 셀 전송순서가 그대로 유지되도록 보장해주는 것을 특징으로 하는 이중 스위칭평면을 갖는 비동기전송모드(ATM) 스위치의 입력큐 관리 방법이 제공된다.And a third step of transmitting the first cell determined to be transmittable through the dual switching plane to the selected output port to ensure that the original cell transmission order is maintained. An input queue management method of an (ATM) switch is provided.

상기 제1단계의 두 입력큐에 대한 도착 셀의 교대 분배는, 각 입력포트마다 상기 두 입력큐를 택일적으로 가리키는 제1포인터(ai)를 두고, 상기 제1포인터(ai)의 값을 교호적으로 변경시켜 상기 두 입력큐를 교대로 인에이블시키는 것에 의해 달성될 수 있다.The alternate distribution of arrival cells for the two input queues of the first step includes a first pointer a i that alternatively points to the two input queues for each input port, and the value of the first pointer a i . Can be achieved by alternately enabling the two input queues alternately.

상기 제2단계의 각 입력포트의 두 선두셀에 대한 교호적 전송기회의 부여는, 각 입력포트마다 할당되며 가장 먼저 도착한 셀이 저장되어 있는 입력큐를 가리키는 제2포인터(bi)를 이용하여, 전송선택된 셀이 생길 때마다 상기 제2포인터(bi)의 값을 교호적으로 변경시키므로써 이루어진다.The alternate transmission opportunity is given to the two leading cells of each input port of the second step by using a second pointer b i that is assigned to each input port and indicates an input queue in which the first arrived cell is stored. Whenever a transmission-selected cell is generated, the value of the second pointer b i is alternately changed.

또한, 상기 제3단계는 동일 입력포트에서 동일 전송주기동안에 동일 출력포트로 전송되어야 할 두 셀간의 전송순서를 구분하기 위해 태그값을 이용하고, 상기 태그값은 상기 비동기전송모드셀이 상기 스위칭평면에 도착하기 전단계에서 상기 비동기전송모드셀에 부가되고, 상기 스위칭평면을 떠나서 상기 출력포트에 인가되기 전단계에서 출력단 제어기에 의해 제거된다.Further, the third step uses a tag value to distinguish the transmission order between two cells to be transmitted to the same output port during the same transmission period in the same input port, the tag value is the asynchronous transmission mode cell is the switching plane It is added to the asynchronous transmission mode cell at the stage before it arrives, and is removed by the output stage controller at the stage before it is applied to the output port leaving the switching plane.

한편, 본 발명의 다른 측면으로서, 복수개의 입력큐, 복수개의 출력큐 및 다중의 스위칭 평면이 구비된 스위칭 장치에 있어서, 다중으로 구성되어 상기 다중 스위칭 평면의 각 평면에 일 대 일로 연결된 다중 입력큐; 상기 다중 입력큐의 전단에 연결되며, 상기 다중 입력큐에 도착된 셀을 상기 다중 입력큐의 각 서브 입력큐에 순차적으로 분배하는 입력큐 선택기; 상기 다중입력큐와 상기 다중 스위칭 평면 사이에 연결되고, 1 사이클 이내에 상기 각각의 서브 입력큐를 상기 분배순으로 서비스하여 상기 서브 입력큐의 선두셀이 전송가능할 때 상기 선두셀에 상기 분배순에 대응하는 태그를 부착하는 전송 중재기; 및 상기 다중 스위칭 평면과 상기 출력큐 사이에 연결되고, 상기 출력큐에 도착된 셀이 동일 입력큐로부터 전송되어온 셀일 경우 상기 태그 정보에 따라 정렬하여 상기 출력큐에 저장하는 출력단 제어기를 포함하여 구성된 것을 특징으로 하는 전송 순서가 보장되는 스위칭 장치가 제공된다.On the other hand, as another aspect of the present invention, in the switching device provided with a plurality of input queues, a plurality of output queues and multiple switching planes, multiple input queues configured in multiple and connected one-to-one to each plane of the multiple switching planes ; An input queue selector connected to a front end of the multiple input queue and sequentially distributing cells arriving at the multiple input queue to each sub input queue of the multiple input queue; Connected between the multi-input queue and the multi-switching plane, and each sub-input queue is serviced in the order of distribution within one cycle to correspond to the order of distribution to the head cell when the head cell of the sub-input queue is transmittable. A transmission arbiter attaching a tag; And an output stage controller connected between the multiple switching planes and the output queue and sorting according to the tag information when the cell arrived at the output queue is a cell transmitted from the same input queue. There is provided a switching device in which a transmission sequence characterized by the features is guaranteed.

이상에서 알 수 있듯이, 본 발명이 제안하는 셀 분배 및 중재 방식의 핵심은 각 입력단에 도착한 셀을 두 개의 입력큐에 교대로 저장하고 두 입력단으로부터 교대로 셀을 출력단으로 전달함으로써 입력단에서 전송 순서가 바뀌지 않게 해주는 것이다. 가상채널별로 입력큐를 지정해주지 않고 교대 분배함으로써 동일 목적지를 가진 셀들(동일 가상 채널에 속한 셀도)이 두 큐에 분산되어 입력큐에서 큐잉 지연이 작으며 두 입력큐를 가상적으로는 하나의 선입선출(FIFO)큐처럼 공유하므로 셀손실 특성도 우수하다. 제안된 구조는 각 입력단에 두 개의 포인터와 출력단에 하나의 비교기를 필요로 하는 데 입력단의 포인터는 '0'과 '1'의 상태를 갖고 출력단의 비교기는 '0'과 '1'을 비교하면 되어 구현이 매우 간단하다. 또한, 도착셀을 셀단위로 두 입력큐에 분배하므로 동일 목적지를 가진 셀들이 두 큐에 분산되어 입력단 확장의 효과를 얻을 수 있어 큐잉지연 특성이 출력버퍼링 스위치와 거의 동일하다는 장점을 갖는다.As can be seen from the above, the core of the cell distribution and arbitration scheme proposed by the present invention is to alternately store cells arriving at each input stage in two input queues and transfer the cells alternately from the two input stages to the output stage. It does not change. By alternately distributing input queues for each virtual channel, cells with the same destination (also belonging to the same virtual channel) are distributed to two queues, so that the queuing delay is small in the input queue, and two input queues are virtually preempted. Cell loss is also excellent because it is shared like a FIFO queue. The proposed structure requires two pointers at each input stage and one comparator at the output stage. The pointers at the input stage have states of '0' and '1' and the comparator at the output stage compares '0' and '1'. The implementation is very simple. In addition, since the arrival cells are distributed to two input queues in units of cells, cells having the same destination are distributed to the two queues, so that the effect of input expansion can be obtained, and thus the queuing delay characteristic is almost the same as that of the output buffering switch.

이하, 첨부한 도면을 참조하여, 본 발명의 실시예를 통해 본 발명을 보다 상세하게 설명하고자 한다.Hereinafter, the present invention will be described in more detail with reference to the accompanying drawings.

먼저, 도 5와 6을 참조하면서, 2Q2P스위치 구조에서 셀전송 순서를 보장해 주는 입력큐 관리 방식을 설명한다. 제안된 방식의 핵심은 각 입력단에 도착한 셀을 두 개의 입력큐(210a, 210b)에 교대로 저장하고 두 입력단으로부터 교대로 셀을 출력단(230, 240)으로 전달함으로써 입력단에서 전송 순서가 바뀌지 않게 해주는 것이다. 즉, 두 개의 입력큐는 마치 하나의 FIFO큐로서 동작하게 된다. 여기서는 이 방법을 '순환적 입력 순환적 출력' (Cyclic-In-Cyclic-Out: CICO) 방법이라고 지칭한다.First, referring to FIGS. 5 and 6, an input queue management scheme that guarantees cell transmission order in a 2Q2P switch structure will be described. The core of the proposed scheme is to store the cells arriving at each input in the two input queues 210a and 210b alternately and transfer the cells from the two inputs to the outputs 230 and 240 so that the transmission order is not changed at the input. will be. In other words, the two input queues act as one FIFO queue. This method is referred to herein as the 'cyclic input-cyclic output' (CICO) method.

도 5에 보이듯이 각 입력단에는 두 개의 입력큐(210) 즉, 상위큐(210a)와 하위큐(210b)가 존재하고 각 입력큐는 해당 스위칭 평면(220a, 220b)에 바로 연결된다. 각 입력큐(210a, 210b)는 ai, bi( 단, i는 i=1, ..., N의 값을 갖는 입력단번호임 ) 의 두 개의 포인터로 관리되며 전송 선택된 셀들은 스위칭 평면(220)으로 전달되기 전에 'H' 또는 'L'의 값을 갖는 태그가 부착된다.As shown in FIG. 5, two input cues 210, that is, an upper cue 210a and a lower cue 210b are present at each input terminal, and each input cue is directly connected to the corresponding switching planes 220a and 220b. Each input queue 210a, 210b is managed by two pointers: a i , b i (where i is an input terminal number having the values i = 1, ..., N) and the selected cells are transmitted to the switching plane ( A tag with a value of 'H' or 'L' is attached before being passed to 220).

스위치내에서 전송 순서는 입력큐 선택기(200), 스위칭 평면(220a, 220b)을 포함하는 전송 중재기(비도시) 그리고 출력단 제어기(230)의 동작으로 보장된다. 입력큐 선택기(200)는 포인터 ai를 이용해서 도착셀을 두 입력큐(210a, 210b)에 도 5에 점선으로 나타낸 바와 같이 교대로 저장하고, 전송 중재기는 포인터 bi를 이용해 두 입력큐(210a, 210b)에 저장되어 있는 셀들을 역시 점선의 순서로 서비스한다. 이 두 포인터 ai, bi의 동작으로 입력단에 늦게 도착한 셀이 먼저 출력단으로 전송 선택되는 것을 막아준다. 출력단 제어기(230)는 한 입력단으로부터 동시에 두 개의 셀이 한 출력단으로 전송되어오는 경우 이 두 셀간에 전송 순서를 구분해준다. 알고리즘을 기술하기 전에 먼저 포인터 ai, bi와 태그(tag)를 정의하면 다음과 같다.The order of transmission in the switch is ensured by the operation of the input queue selector 200, the transmission arbiter (not shown) including the switching planes 220a, 220b and the output stage controller 230. An input queue selector 200 pointers a i to store alternately, as indicated by the dotted line the destination cell in the two input queue 5 in (210a, 210b) use, and transmits arbiter using a pointer b i two input queue ( The cells stored in 210a and 210b are also serviced in a dotted line order. The operation of these two pointers a i and b i prevents cells arriving late at the input from being sent to the output first. The output stage controller 230 distinguishes the transmission order between the two cells when two cells are simultaneously transmitted from one input terminal to one output terminal. Before describing the algorithm, first define pointers a i , b i and a tag:

<입력 포인터와 태그의 정의><Definition of Input Pointer and Tag>

ㄱ) ai: 입력단 i에 도착한 셀을 상위 입력큐(210a) 또는 하위 입력큐(210b) 중 어느 입력큐 에 저장할 것인가를 가리키는 포인터.A) a i : A pointer indicating whether to store the cell arriving at the input terminal i in the upper input queue 210a or the lower input queue 210b.

ㄴ) bi: 입력단 i에 저장되어 있는 셀 중 가장 먼저 도착한 셀이 있는 입력큐를 가리키는 포인터.B) b i : Pointer to the input queue with the first cell among the cells stored in input i.

ㄷ) 태그: 한 입력단에서 두 개의 셀이 동시에 동일 출력단으로 전송되는 경우 이 두 셀간에 전송 우선순위를 부여하기 위해 전송 선택된 셀에 부착되는 1 비트 정보.C) Tag: 1-bit information attached to a cell selected for transmission to give priority to transmission between two cells when two cells are simultaneously transmitted to the same output terminal at one input terminal.

여기서 ai, bi는 '0' 또는 '1'의 값을 가지며 이 포인터값이 '0'이면 상위 입력큐(210a)를, '1'이면 하위 입력큐(210b)를 가리킨다. 초기에 모든 포인터 ai, bi는 '0'값을 갖는다. 태그값은 'H'와 'L'의 값을 가지며 예컨대 크로스바 스위치와 같은 스위칭 패브릭(switching fabric) 즉, 스위칭평면(220)으로 전달되기 전에 부착되고 출력단제어기(230)가 이를 제거한다.Here, a i and b i have a value of '0' or '1', and if this pointer value is '0', the upper input queue 210a is indicated, and if the pointer is '1', the lower input queue 210b is indicated. Initially all pointers a i and b i have the value '0'. The tag value has a value of 'H' and 'L' and is attached before being transferred to a switching fabric, eg, a switching plane 220, such as a crossbar switch, and the output stage controller 230 removes it.

제안된 방식의 동작을 입력큐선택기(210), 중재 과정 그리고 출력단제어기(230)의 순으로 자세히 살펴보자.The operation of the proposed method will be described in detail in the order of the input queue selector 210, the arbitration process, and the output stage controller 230.

먼저, 입력단 제어기의 동작을 설명한다. 입력단 제어기는 입력단의 개수에 해당하는 입력큐선택기(200)들로 구성된다. 각 입력단의 입력큐선택기(200)는 도착셀을 두 입력큐 즉, 상위 입력큐(210a) 와 하위 입력큐(210b)에 교대로 분배한다. 각 입력큐선택기(200)는 도착셀을 ai가 가리키는 입력큐에 저장하는데, 예를 들어 ai= 0 이면 상위 입력큐(210a)에 저장하고, ai값을 토글하여 즉, ai= 1 로 하여 다음 도착셀을 다른 입력큐 즉, 하위 입력큐(210b)에 분배하는 것을 하나의 주기로 하여 이를 반복적으로 수행함으로써 입력단 i로의 도착셀들을 도착순서대로 두 큐(210a, 210b)에 교대로 분배할 수 있게 된다.First, the operation of the input terminal controller will be described. The input stage controller is composed of input queue selectors 200 corresponding to the number of input stages. The input queue selector 200 of each input stage alternately distributes the arrival cells to two input queues, that is, the upper input queue 210a and the lower input queue 210b. Each input queue selector 200 is used to store the destination cell in the input queue is a i indicating, for example, by a i = 0 is stored in the upper input queue (210a), and toggle a i value, i.e., a i = By setting it to 1 and distributing the next arrival cell to another input queue, that is, the lower input queue 210b in one cycle, it is repeatedly performed so that the arrival cells to the input terminal i are alternated to the two queues 210a and 210b in the order of arrival. Can be distributed.

다음으로 중재과정을 설명한다. 입력단의 전체 입력포트의 개수를 N개라 할 때, 이들 N개 입력포트에 대한 중재는 라운드-로빈 방식 혹은 랜덤-선택 방식 혹은 그외의 다른 어떤 방법으로도 수행될 수 있다. 입력포트 간의 중재방식은 어떠해도 상관없으며, 입력포트 내부의 상위 입력큐와 하위 입력큐의 선두셀 간의 중재만 제대로 해주면 전송순서의 뒤비뀜은 방지된다. 각 입력포트에 대한 출력단으로의 전송중재는 두 입력큐의 HOL셀에 대해 수행해야 하므로 두 번의 서브라운드에 걸쳐서 이루어진다.Next, the mediation process is explained. When the total number of input ports of the input stage is N, arbitration for these N input ports may be performed by a round-robin method or a random-selection method or any other method. The arbitration method between input ports may be any way. If only proper arbitration is performed between the upper input queue and the lower input queue inside the input port, the transmission sequence is prevented from being mixed. The transmission arbitration to the output stage for each input port is done over two subrounds since it must be performed for the HOL cells of the two input queues.

입력단 i에서 중재 과정은 다음과 같다. 첫번째 서브라운드에서, 포인터 bi가 가리키는 입력큐의 HOL위치에 전송 대기중인 셀이 있고 그 셀의 해당 목적지 출력단이 다른 입력단에 의해 선점되어 있지 않으면 그 셀을 전송 선택한다. 만약 해당 목적지 출력단이 다른 입력단에 의해 선점되어 있으면 그 셀은 전송될 수 없고 따라서 다음 전송중재기회가 주어질 때까지 대기해야 한다. 전송 선택된 셀이 있으면 첫번째 서브라운드의 끝에서 포인터 bi를 토글하고 전송 선택된 셀의 태그값을 'H'로 설정한다. 두번째 서브라운드에서도 동일한 과정이 반복된다. 따라서, 하나의 전송주기 동안에 이루어지는 두 번의 서브라운드를 통하여, 상위 및 하위 입력큐의 선두셀이 모두 출력단으로 전송될 수도 있지만, 출력단의 사정에 따라 한 개의 선두셀만이 전송되거나 혹은 그 어떤 선두셀도 전송되지 못할 수도 있다. 한편, 두 번째 서브라운드와 첫번째 서브라운드와 차이점은 1) 첫번째 서브라운드에서 입력단 i의 셀이 선택된 경우 포인터 bi값이 바뀌어 있다는 점과 2) 전송 선택된 셀의 태그값을 'L'로 셋팅한다는 점이다. 이에 관련된 태그 동작은 후술한다. 포인터 bi가 가리키는 입력큐만 서비스되고 서비스 후 포인터 bi값을 토글하여 다른 입력큐에 전송 기회를 주므로 입력단에 저장되어 있는 셀들은 도착순서대로 서비스된다.The mediation process at input i is In the first subround, if there is a cell waiting to be transmitted at the HOL position of the input queue pointed to by pointer b i and the corresponding destination output of that cell is not preempted by another input, the cell is selected for transmission. If the destination output is preempted by another input, the cell cannot be transmitted and must wait until the next transmission arbitration opportunity is given. If there is a cell selected for transmission, toggle the pointer b i at the end of the first subround and set the tag value of the cell selected for transmission to 'H'. The same process is repeated for the second subround. Accordingly, although the head cells of the upper and lower input queues may both be transmitted to the output terminal through two sub-rounds during one transmission period, only one leading cell may be transmitted or some head cell depending on the circumstances of the output terminal. May not be transmitted. On the other hand, the difference between the second subround and the first subround is that 1) the pointer b i value is changed when the cell of the input i is selected in the first subround, and 2) the tag value of the transmitted selected cell is set to 'L'. Is the point. The tag operation related to this will be described later. Only the input queue pointed to by pointer b i is served, and after service, the pointer b i value is toggled to give another input queue a chance to transmit, so that the cells stored at the input are served in the order of arrival.

끝으로, 출력단 제어기(230)의 동작을 설명한다. 출력단 제어기(230)는 두 스위칭 평면(220a, 220b)으로부터 최대 두 개의 셀이 동시에 들어올 때 두 셀을 출력큐(240)에 저장하는 역할을 한다. 이 때 동시에 전송되어온 두개의 셀이 서로 다른 입력단으로부터 전송되어온 셀들이면 어느 셀을 먼저 출력큐에 넣어도 아무런 문제가 없다. 그러나 동일 입력단으로부터 전송되어온 셀인 경우에는 둘 셀간에 전송 순서를 보장해줘야 한다. 특히, 트래픽이 연집적(burst)인 경우에 동일 입력단의 두 입력큐(210a, 210b)의 HOL셀들의 목적지가 같을 확률이 높다. 이와 같이 두 개의 선두셀 간의 전송순서의 보장이 필요한 이유는, 매 전송주기마다 전송되는 셀의 개수는 0 ~ 2중 어느 하나가 되므로 첫 번째 서브라운드에서 전송선택된 셀이 항상 상위 입력큐에 저장되었던 선두셀이라고 볼 수 없기 때문이다.Finally, the operation of the output stage controller 230 will be described. The output stage controller 230 stores two cells in the output queue 240 when a maximum of two cells enter the two switching planes 220a and 220b at the same time. At this time, if two cells transmitted simultaneously are cells transmitted from different input terminals, there is no problem in putting any cell into the output queue first. However, in the case of a cell transmitted from the same input terminal, it is necessary to guarantee the transmission order between the two cells. In particular, when traffic is burst, there is a high probability that the destinations of the HOL cells of two input queues 210a and 210b of the same input terminal are the same. The reason for the guarantee of the transmission order between the two leading cells is that the number of cells transmitted in each transmission period is any one of 0 to 2, so that the cell selected for transmission in the first subround was always stored in the upper input queue. This is because it cannot be regarded as a leading cell.

도 6에 이에 관한 예가 나타나 있으며, 이 경우 첫번째 서브라운드에서 목적지가 j번째 출력단인 셀 j1이 선택되고 포인터 bi가 '1'로 갱신되므로 두번째 서브라운드에서 j번째 출력단인 셀 j2가 선택되게 된다. 이를 위해 태그 정보가 이용되며, 상설한 입력단 중재동작으로 인해, 동일 슬럿에서 동일 입력단으로부터 전송되어온 두 셀의 태그값은 항상 'H'과 'L'로 설정되어 서로 다르다. 이 경우 태그값이 'H'인 셀은 첫번째 서브라운드에서 선택된 셀이고, 태그값이 'L'인 셀은 두번째 서브라운드에서 선택된 셀이다.An example of this is shown in FIG. 6. In this case, the cell j 1 is selected as the j th output terminal in the first subround and the pointer b i is updated to '1', so the j j output terminal j 2 is selected in the second subround. Will be. Tag information is used for this purpose. Due to the constant input stage arbitration operation, the tag values of two cells transmitted from the same input stage in the same slot are always set to 'H' and 'L' to be different from each other. In this case, the cell with the tag value 'H' is the cell selected in the first subround, and the cell with the tag value 'L' is the cell selected in the second subround.

따라서 출력단 제어기(230)는 태그값을 이용해 두 셀의 순서를 구별할 수 있다. 태그값이 'H'인 셀이 항상 먼저 도착한 셀이 되므로, 출력단 중재기(230)는 이 셀을 출력큐(240)에 먼저 저장한다. 출력단 중재기(230)는 태그값을 이용해 먼저 도착한 셀을 결정하고 난 뒤 셀들을 출력큐(240)에 집어 넣기 전에 태그를 제거한다.Therefore, the output terminal controller 230 may distinguish the order of the two cells by using the tag value. Since the cell with the tag value 'H' always arrives first, the output arbiter 230 first stores the cell in the output queue 240. The output stage arbiter 230 determines the first arrived cell using the tag value, and then removes the tag before inserting the cells into the output queue 240.

이상에서와 같이 입력단에서 전송 순서 보장은 두 개의 포인터 ai와 bi를 이용해서 수행되며 한 입력단에서 동시에 두 개의 셀이 동일 출력단으로 전송될 때 두 셀간의 전송 순서 구분은 태그값을 이용해서 수행된다. 제안된 방식에서는 각 입력단에 두 개의 포인터(각각 1비트정보 저장)가 필요하며 스위칭 평면으로 전송되기 전에 1비트의 태그가 장착된다. 포인터의 동작과 태그의 운용이 매우 단순하므로 고속 스위치 구현에 적합하다.As mentioned above, transmission order guarantee at the input terminal is performed by using two pointers a i and b i . When two cells are simultaneously transmitted to the same output terminal at one input terminal, the transmission order classification between two cells is performed by using the tag value. do. In the proposed method, two pointers (each storing 1 bit of information) are required at each input, and a 1 bit tag is mounted before being transmitted to the switching plane. It is suitable for high speed switch implementation because pointer operation and tag operation are very simple.

지금까지 전송 순서를 보장해주도록 2Q2P스위치를 운용하는 방법으로서, 종래기술의 대표적인 예로서 타임스탬프 방식과 고정라우팅 방식과 본 발명이 제안한 방식인 CICO방식을 살펴보았다. 이하에서는 연집적인 트래픽 환경에서 위 세 방법의 성능을 시뮬레이션을 통해 비교 및 분석한다. 입출력단에서 큐잉 지연 시간과 입력큐에서 셀손실율을 성능 평가 인자로 삼았으며 시뮬레이션에 사용된 가정은 다음과 같다.So far, as a method of operating a 2Q2P switch to guarantee the transmission order, as a representative example of the prior art, the timestamp method, the fixed routing method, and the CICO method proposed by the present invention have been described. In the following, we compare and analyze the performance of the above three methods through the simulation in a clustered traffic environment. The queuing delay time and the cell loss rate in the input queue were used as the performance evaluation factors. The assumptions used in the simulation are as follows.

ㄱ) 가정-1: 스위치 사이즈 N은 16으로 한다.A) Assumption-1: The switch size N shall be 16.

ㄴ) 가정-2: 연집적 트래픽 모델은 도 7에 나타난 균등 기하 버스트 모델을 사용한다.B) Assumption-2: The aggregated traffic model uses the uniform geometric burst model shown in FIG.

ㄷ) 가정-3: 하나의 연집셀그룹에 속한 각 셀들의 목적지 출력단은 동일하다.C) Assumption-3: The destination output of each cell in one contiguous cell group is the same.

ㄹ) 가정-4: 각 연집셀그룹의 목적지는 N개 출력단에 균등히 분포한다.D) Assumption-4: The destinations of each group of distributed cells are evenly distributed across the N outputs.

ㅁ) 가정-5: 고정라우팅 방법의 성능을 실험하기 위해 신호원에서 연집셀그룹을 발생시킬 때 각 연집셀그룹별로 상위 입력큐나 하위 입력큐 중 임의의 입력큐를 할당해준다.ㅁ) Assumption-5: In order to experiment with the performance of the fixed routing method, when generating a group of cell groups from a signal source, an arbitrary input queue of an upper input queue or a lower input queue is allocated to each group of collected cell groups.

위와 같은 가정을 전제로 하여 먼저, 큐잉 지연 시간의 특성을 비교 분석한다.Based on the above assumptions, we first compare and analyze the characteristics of the queuing delay time.

도 8, 9, 11 및 12에는 평균 버스트 사이즈(l)가 8일 때(l=8) 입력부하에 따른 1Q2P스위치의 큐잉 지연과 타임스탬프 방법, 고정라우팅 방법 그리고 본 발명이 제안하는 CICO 방법을 적용한 2Q2P스위치의 큐잉 지연시간의 특성이 그래프로 도시되어 있다. 큐잉 지연 측면에서 이상적인 성능을 보이는 출력 버퍼링 스위치의 큐잉 지연 곡선도 비교를 위해 도시하였다.8, 9, 11, and 12 illustrate a queuing delay, a timestamp method, a fixed routing method, and a CICO method proposed by the present invention when the average burst size l is 8 (l = 8) according to an input load. The characteristics of the queuing delay time of the applied 2Q2P switch are shown in a graph. The queuing delay curve of the output buffering switch showing the ideal performance in terms of queuing delay is also shown for comparison.

도 8에서 1Q2P스위치에서는 입력부하가 0.85를 넘으면 입력큐에서 큐잉 지연시간이 유한한 값으로 한정되지 않는데, 이는 처리율이 제한되기 때문이다.In FIG. 8, when the input load exceeds 0.85, the queuing delay time in the input queue is not limited to a finite value because the 1Q2P switch has a limited throughput.

도 9에는, 셀순서 복원기(122)를 두는 경우, 순서복원용 버퍼(RSQ_BUFF)사이즈가 128이고 Dmax가 40과 60일 때 입력부하에 따른 큐잉 지연시간이 나타나있다. 입력부하가 작은 경우 순서복원용 버퍼(RSQ_BUFF)에서의 지연이 스위치내 큐잉 지연의 대부분을 차지함을 볼 수 있다. 즉, 대부분의 셀이 입력큐에서 거의 바로 출력단으로 전달되나 셀순서 보장을 위해 셀순서 복원기(122)에서 나이가 Dmax에 이를 때까지 기다려야 하기 때문이다. 부하가 증가하면서 출력큐(124)에서 큐잉이 증가하고 총 큐잉 지연은 이 출력큐에서 큐잉 지연 시간이 Dmax만큼 위로 쉬프트된 양상을 보인다. 따라서 총 큐잉 지연 시간은 Dmax가 60인 경우가 40 인 경우보다 20 슬럿정도 증가한다. 즉, Dmax값이 클수록 스위치내의 총큐잉 지연은 그 만큼 증가하게 된다.9 shows the queuing delay time according to the input load when the cell restoration recoverer 122 has the size of the order restoration buffer (RSQ_BUFF) is 128 and D max is 40 and 60. FIG. It can be seen that the delay in the sequential restoration buffer RSQ_BUFF occupies most of the queuing delay in the switch when the input load is small. That is, since most of the cells are delivered from the input queue to the output stage almost immediately, the cell order recoverer 122 has to wait until the age reaches D max in order to guarantee the cell order. As the load increases, the queuing increases in the output queue 124 and the total queuing delay is shifted up by D max in this output queue. Therefore, the total queuing delay time is increased by about 20 slots than the case where D max is 60 is 40. In other words, as the value of D max increases, the total queuing delay in the switch increases by that amount.

따라서 스위치내의 큐잉 지연을 줄이기 위해서 Dmax값을 작게 설정해야 하는 데 Dmax값이 작으면 셀순서 복원기(122)를 두었어도 셀순서가 바뀌는 경우가 발생한다. 도착셀이 입력큐(110)에서 큐잉 지연이 Dmax를 넘으면 이 셀은 이 셀보다 나중에 도착한 셀보다 늦게 출력큐(124)로 전송될 확률이 크다. 즉, 나중에 도착한 셀이 셀순서 복원기(122)에서 나이가 Dmax에 이르면 출력큐(124)로 전달되는 데 먼저 도착한 셀은 이 때까지도 출력단에 도달하지 못했으므로 이 두 셀간에 셀순서가 뒤바뀌게 되는 것이다. 도 10에서 보듯이 Dmax가 40인 경우의 시퀀스이탈률(out-of-sequence rate)이 Dmax가 60인 경우의 그것보다 크다. Dmax가 작으면 입력큐에서 큐잉지연이 Dmax보다 클 확률이 높으므로 셀순서가 뒤바뀔 확률이 더 크기 때문이다. 따라서 시퀀스이탈률을 작게 하기 위해서는 Dmax값이 커야 한다. 즉, Dmax는 스위치내에서 허용 총큐잉 지연시간과 허용 시퀀스이탈률내에서 결정되어야 한다. 타임스탬프를 이용한 셀순서 복원 방법은 완벽하게 셀순서를 보장해주지 못하며 셀순서가 바뀔 확률이 작지만 항상 존재하게 되며 스위치 구조, 규모, 트래픽 패턴에 따른 Dmax값과 순서복원용 버퍼(RSQ_BUFF) 크기를 설정해야 하는 데 아직 이에 대한 명료한 해결책이 제시되고 있지 못하다. 이와 같이 셀순서 복원기를 두는 방법은 구현이 복잡할 뿐만 아니라 안정적인 성능을 얻기 위한 Dmax설정에도 근본적으로 문제를 가지고 있음을 확인할 수 있다.Therefore, in order to reduce the queuing delay in the switch, the D max value should be set small. However, if the D max value is small, the cell order may be changed even if the cell order restorer 122 is provided. If the arrival cell has a queuing delay of more than D max in the input queue 110, it is likely that this cell will be sent to the output queue 124 later than the cell arriving later. In other words, when a cell arrives later, it reaches the output queue 124 when the age reaches D max in the cell order restorer 122, but the cell that arrived first does not reach the output terminal until this time, so that the cell order is reversed between the two cells. Will change. The exit rate sequence (out-of-sequence rate) in the case As shown in Figure 10 the D max of 40 greater than that in the case where the D max of 60. If D max is small, there is a high probability that queuing delay is greater than D max in the input queue, so the cell order is more likely to be reversed. Therefore, in order to reduce the sequence departure rate, the value of D max must be large. That is, D max must be determined within the allowable total queuing delay and the allowable sequence departure rate in the switch. To the mothamyeo cell sequence restoring method using a time stamp is haejuji ensure complete cell sequence probability change the cell order small but always present, and the switch structure, the size, the buffer (RSQ_BUFF) size for the D max value and the order recovery according to traffic patterns There is no clear solution yet. This method of placing a cell order recoverer is not only complicated to implement, but also has a fundamental problem in setting D max to obtain stable performance.

도 11의 고정라우팅 방식의 경우 1Q2P스위치나 타임스탬프 방식보다는 큐잉지연이 적지만 여전히 입력큐에서 상당한 큐잉이 발생하며 이 성분이 총 큐잉지연으로 이어져 출력 버퍼링 방식보다 총 큐잉 지연 시간이 큼을 볼 수 있다. 고정라우팅 방식에서는 하나의 가상 채널의 연집셀그룹(버스트)에 속한 셀들을 하나의 입력큐 즉, 호설정시 지정받은 입력큐에 고정적으로 저장하므로 이 셀들중 HOL셀 하나만 전송 경합에 참여할 수 있게 된다. 즉, 하나의 입력단에 하나의 가상 채널에 속한 버스트의 k개의 셀이 큐잉되어 있는 경우 이 셀들이 모두 서비스되는 데 최소 k슬럿이 소요되게 된다. 따라서 이중 스위칭 경로를 충분히 활용하지 못하게 되어 입력큐에서 큐잉 지연시간이 커진다.In the fixed routing method of FIG. 11, the queuing delay is smaller than that of the 1Q2P switch or the timestamp method, but there is still considerable queuing at the input queue, and this component leads to the total queuing delay. . In the fixed routing method, cells belonging to a contiguous cell group (burst) of one virtual channel are fixedly stored in one input queue, that is, an input queue designated at call setup, so that only one HOL cell among these cells can participate in transmission contention. . That is, when k cells of a burst belonging to one virtual channel are queued at one input terminal, at least k slots are required for all these cells to be serviced. As a result, the dual switching path is not fully utilized, which increases the queuing delay in the input queue.

반면에 본 발명에 따른 CICO방식에서는 하나의 버스트의 셀들이 두 입력큐에 도착순서대로 분배되므로 한 버스트에 속한 두 개의 셀이 전송 경합에 참여할 수 있게 된다. 즉, 위에서 언급한 k개의 셀이 최소 k/2 슬럿에 모두 서비스될 수 있다. 이로 인해 도 12에서 보듯이 입력큐에서 큐잉 지연이 감소하며 따라서 총큐잉지연도 감소한다. 도 13 및 14에서 보듯이 입력부하에 따른 입력큐에서의 큐잉 지연 시간과 입력부하에 따른 총 큐잉 지연 시간은 본 발명에 따른 CICO방법을 적용한 경우가 가장 작으며 특히 총 큐잉 지연시간은 출력 버퍼링 방식과 거의 동일함을 볼 수 있다.On the other hand, in the CICO method according to the present invention, since cells of one burst are distributed to two input queues in the order of arrival, two cells belonging to one burst can participate in transmission contention. That is, the k cells mentioned above can all be serviced at least k / 2 slots. This reduces the queuing delay in the input queue as shown in FIG. 12 and thus also reduces the total queuing delay. As shown in FIGS. 13 and 14, the queuing delay time in the input queue according to the input load and the total queuing delay time according to the input load are the smallest when the CICO method according to the present invention is applied, and in particular, the total queuing delay time is the output buffering scheme. You can see that it is almost the same as.

도 15와 16에는 입력 부하가 0.85일 때 버스트 사이즈 l에 따른 입력단에서의 큐잉 지연과 총큐잉 지연이 나타나 있다. 각 방법 모두 버스트 사이즈가 증가하면 큐잉 지연 특성이 저하된다. 그러나 고정 할당 방식의 경우 버스트 사이즈 l이 1에서 8과 32로 커지면 입력큐에서 큐잉 지연시간이 각각 20.3과 96.0로 급격히 증가하나, CICO방법의 경우 큐잉 지연시간이 4.29와 19.3로 완만하게 증가함을 볼 수 있다. 고정할당 방법의 경우, 트래픽이 연집화될수록, 즉 버스트 사이즈가 커질수록 한 입력단내에 하나의 버스트만 존재할 확률이 커지므로 입력큐에서 큐잉 지연은 더욱 증가하게 된다. 그러나 본 발명에 따른 CICO 방법의 경우 버스트 사이즈가 증가해도 여전히 한 입력큐에서 한 버스트에 속한 두 개의 셀이 동일 슬럿에서 전송가능하므로 입력큐에서 큐잉 지연이 크게 증가하지 않는다. 즉, 본 발명에 따른 CICO 방법이 버스트 트래픽에 대한 대처 능력이 뛰어남을 확인할 수 있다.15 and 16 show the queuing delay and the total queuing delay at the input stage according to the burst size l when the input load is 0.85. In each case, as the burst size increases, the queuing delay characteristic decreases. However, in the case of the fixed allocation method, when the burst size l increases from 1 to 8 and 32, the queuing delay increases rapidly in the input queue to 20.3 and 96.0, respectively, but in the CICO method, the queuing delay increases slowly to 4.29 and 19.3. can see. In the fixed allocation method, as traffic is aggregated, that is, as the burst size increases, the probability that there is only one burst in one input stage increases, so that the queuing delay in the input queue increases. However, the CICO method according to the present invention does not significantly increase the queuing delay in the input queue since two cells belonging to one burst in one input queue can still be transmitted in the same slot even if the burst size is increased. That is, it can be seen that the CICO method according to the present invention is excellent in coping with burst traffic.

다음으로, CICO방법의 가상 HOL차단 현상으로 인한 성능 저하 정도를 분석해 본 결과를 살펴본다.Next, we look at the results of analyzing the performance degradation caused by the virtual HOL blocking phenomenon of the CICO method.

제안된 CICO방법에서 HOL셀의 전송을 막는 원인은 두 가지이다. 첫번째는 출력단 경합에서 진 경우이고, 두 번째는 해당 출력단이 현재 다른 입력단의 선두셀에 의해 선점되어 있지 않아도 포인터 bi가 가리키고 있는 입력큐의 HOL이 전송 차단되어 경합에 참여하지 못하는 경우로 가상 FIFO큐에서 가상 HOL차단(virtual HOL blocking) 현상이 일어나는 경우를 들 수 있다. 여기서, 출력단 경합으로 인한 전송 차단은 CICO 방법과 관계없이 2Q2P스위치에서 피할 수 없는 현상이다. 따라서 가상 HOL차단 현상으로 인한 성능 저하 정도를 알아보기 위해, CICO 방법을 도착셀을 두 입력큐에 교대로 저장하고 전송셀 중재시에 포인터 bi를 고려하지 않고 해당 출력단이 현재 다른 입력단의 선두셀에 의해 선점되어 있지 않으면 전송을 허락해주는 방식과 성능을 비교하였다. 즉, 이 방식은 전송 순서는 보장되지 않으나 출력단 경합으로만 전송 차단되므로 2Q2P스위치의 최적의 성능을 보이는 구조이다.There are two reasons to block transmission of HOL cell in the proposed CICO method. The first is when lost the output contention, and the second is the output current in the case does not have to be occupied by the head cell of the other input terminal is the HOL of the input pointed to by the pointer b i queue block transfer does not participate in the contention virtual FIFO For example, a virtual HOL blocking phenomenon may occur in a queue. Here, transmission blocking due to output contention is an unavoidable phenomenon in the 2Q2P switch regardless of the CICO method. Therefore, to find out the performance degradation caused by the virtual HOL blocking phenomenon, the CICO method stores the arrival cells in two input queues alternately, and does not consider the pointer b i when arbitrating the transmission cell, and the corresponding output stage is the head cell of the other input stage. We compare the performance with the scheme that allows transmission if it is not preempted by. In other words, the transmission order is not guaranteed, but the transmission is blocked only by output contention, so the 2Q2P switch exhibits optimal performance.

도 17과 18에는 2Q2P스위치를 두 방식으로 관리하는 경우 입력 부하에 따른 큐잉 지연시간이 나타나 있다. 도면에서 보이듯이 두 방식의 성능차가 매우 미세하며 이는 본 발명의 CICO 방법에서 포인터 bi의 동작으로 인한 전송 제약이 가져다 주는 2Q2P 스위치의 성능 저하가 거의 없음을 알 수 있다.17 and 18 illustrate the queuing delay time according to the input load when the 2Q2P switch is managed in two ways. As shown in the figure, the performance difference between the two schemes is very small, and it can be seen that there is almost no degradation in performance of the 2Q2P switch due to the transmission constraint due to the operation of the pointer b i in the CICO method of the present invention.

끝으로, 셀손실율을 분석해 보면 다음과 같은 결과를 얻을 수 있다.Finally, analyzing the cell loss rate gives the following results.

도 19에는 버스트 사이즈 l이 8이고 입력버퍼 사이즈 Bin이 10과 20으로 유한한 경우, 1Q2P 스위치와 고정라우팅 방법과 본 발명의 CICO 방법을 적용한 2Q2P스위치의 입력부하에 따른 입력큐에서의 셀손실율이 나타나 있다. 2Q2P 스위치의 경우 입력 버퍼사이즈는 두 입력큐 사이즈의 합이며 출력버퍼는 충분히 크다고 가정하였다. 고정라우팅 방법의 경우 셀손실율이 가장 크며 1Q2P 스위치와 CICO 방법의 2Q2P 스위치의 셀손실율은 입력 부하가 0.8~0.85에 이를 때까지는 1Q2P 스위치가 더 적으나 이를 넘어서면 CICO 방법의 2Q2P스위치의 셀손실율이 더 적음을 볼 수 있다. 고정라우팅 방법의 경우 스위치의 동적인 큐잉 행태에 무관하게 지정된 입력큐에 셀을 분배하므로 두 입력큐를 동적으로 균등히 공유하지 못한 결과이고 CICO 방법의 경우 입력부하가 항상 두 입력큐에 균등히 분배되므로 마치 하나의 FIFO큐를 공유하는 것과 같은 효과를 얻어 셀손실이 작다.FIG. 19 shows the cell loss rate of the input queue according to the input load of the 1Q2P switch, the fixed routing method, and the 2Q2P switch to which the CICO method of the present invention is applied when the burst size l is 8 and the input buffer sizes B in are 10 and 20. Is shown. For the 2Q2P switch, it is assumed that the input buffer size is the sum of the two input queue sizes and the output buffer is large enough. In the fixed routing method, the cell loss rate is the largest, and the cell loss rate of the 1Q2P switch and the CICO method's 2Q2P switch is less than that of the 1Q2P switch until the input load reaches 0.8 to 0.85. You can see less. In the case of the fixed routing method, the cells are distributed to the specified input queue regardless of the dynamic queuing behavior of the switch.The result is that the two input queues cannot be shared dynamically evenly.In the case of the CICO method, the input load is always distributed evenly between the two input queues. It has the same effect as sharing one FIFO queue, so the cell loss is small.

이상에서는 구현이 용이하고 높은 성능을 가져다주는 2Q2P스위치에서 전송 순서 보장 방안을 제안하고 시뮬레이션을 통해 기존의 방안들과 성능을 비교하였다. 본 발명이 제안한 CICO(Cyclic-In-Cyclic-Out)방식은 각 입력단에 도착한 셀을 두 개의 입력큐에 교대로 저장하고 두 입력단으로부터 교대로 셀을 출력단으로 전달함으로써 입력단에서 전송 순서가 바뀌지 않게 해준다. 즉, 두 개의 입력큐는 마치 하나의 FIFO큐로서 동작하게 된다. 또한 동일 입력단에서 동일 목적지를 가진 두 개의 셀이 전송되는 경우 이 두 셀간의 전송 순서를 구별하기 위해 1-비트 태그를 이용하여 출력단에서 전송 순서를 보장해준다.In the above, we proposed the transmission order guarantee scheme in the 2Q2P switch, which is easy to implement and brings high performance, and compared the performance with the existing schemes through simulation. The Cyclic-In-Cyclic-Out (CICO) scheme proposed in the present invention alternately stores cells arriving at each input stage in two input queues, and transfers the cells from the two input stages to the output stage alternately so that the transmission order is not changed at the input stage. . In other words, the two input queues act as one FIFO queue. In addition, when two cells having the same destination are transmitted at the same input terminal, the transmission order is guaranteed at the output terminal by using a 1-bit tag to distinguish the transmission order between the two cells.

제안된 CICO방식은 타임스탬프가 필요 없어 구현이 간단하고 한 버스트에 속한 셀들을 두 입력큐에 교대로 분배하여 두 개의 셀이 동시에 출력단으로 전송 가능하여 입력큐에서 큐잉 지연시간이 감소하고 또한 버퍼 공유 효과가 뛰어나 셀손실율이 작다는 장점을 갖는다.The proposed CICO method is simple to implement because no time stamp is required, and the cells in one burst can be distributed to two input queues alternately so that two cells can be sent to the output stage simultaneously, reducing the queuing delay time in the input queue and also sharing the buffer. It has the advantage of excellent cell loss rate.

CICO방식을 적용한 2Q2P스위치는 높은 성능을 제공함과 동시에 타임스탬프를 사용하지 않고도 전송순서를 보장해주므로 구현이 용이해 포트당 Gbps급의 전송율을 갖는 초고속 ATM 스위치나 IP 라우터의 구현에 적합하다.The 2Q2P switch adopting the CICO method provides high performance and guarantees the transmission order without using a timestamp, making it easy to implement, making it suitable for the implementation of a high-speed ATM switch or IP router with a Gbps transfer rate per port.

또한, 종래의 방식과 본 발명에 따른 방식의 성능을 분석해 본 바에 따르면, 본 발명이 제안한 CICO 방법은 큐잉 지연 특성에서 다른 방법보다 우수한 성능을 보이며 총 큐잉 지연 시간이 출력 버퍼링 스위치와 거의 동일하다. 또한 셀손실율 측면에서도 고정라우팅 방법보다 월등한 성능을 보인다. 즉, 제안된 CICO방법은 앞에서 언급했듯이 구현측면에서도 용이할 뿐만 아니라 큐잉 지연과 셀손실율의 성능 측면에서도 뛰어남을 확인할 수 있다.In addition, according to the analysis of the performance of the conventional method and the method according to the present invention, the proposed CICO method shows better performance than other methods in queuing delay characteristics and the total queuing delay time is almost the same as the output buffering switch. It also outperforms fixed routing in terms of cell loss rate. That is, the proposed CICO method is not only easy in terms of implementation but also excellent in terms of queuing delay and cell loss rate.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to a preferred embodiment of the present invention, those skilled in the art will be variously modified and changed within the scope of the present invention without departing from the spirit and scope of the invention described in the claims below. I can understand that you can.

Claims (5)

입력단에 도착한 비동기전송모드(ATM)셀의 출력단으로의 전송경로를 제공해주는 스위칭평면이 다중으로 구성되고, 상기 다중 스위칭평면의 입출력단에는 하나이상의 입력포트와 출력포트가 각각 제공되며, 각 입력포트는 상기 다중 스위칭평면 각각과 일 대 일로 연결되는 다중 입력큐를 포함하고, 각 출력포트는 단일 출력큐를 포함하는 비동기전송모드(ATM) 스위치에 있어서,A plurality of switching planes providing a transmission path to an output terminal of an asynchronous transfer mode (ATM) cell arriving at an input end are composed of multiple, and at least one input port and an output port are provided at each input / output end of the multiple switching plane, and each input port In the asynchronous transfer mode (ATM) switch includes a multiple input queue connected to each one of the multiple switching planes one to one, each output port includes a single output queue, 상기 각 입력포트에 도착한 상기 비동기전송모드(ATM) 셀을 상기 다중 입력큐에 교대로 분배하는 제1 단계,A first step of alternately distributing the asynchronous transmission mode (ATM) cells arriving at each input port to the multiple input queues, 매 전송주기마다, 선택된 입력포트의 다중 입력큐의 선두셀들에 대하여 도착순서에 따라 전송기회를 부여하여 선택된 출력포트로의 전송가능 여부를 판단하는 제2 단계,In each transmission period, a second step of determining whether transmission to the selected output port is possible by granting transmission opportunities to the head cells of the multiple input queues of the selected input port according to the arrival order; 전송가능으로 판단된 선두셀을 상기 다중 스위칭평면을 통해 상기 선택된 출력포트로 전송하는 제3단계를 구비하여 원래의 셀 전송순서가 그대로 유지되도록 보장해주는 것을 특징으로 하는 다중 스위칭평면을 갖는 비동기전송모드(ATM) 스위치의 입력큐 관리 방법.And a third step of transmitting the first cell determined to be transmittable through the multiple switching planes to the selected output port, thereby ensuring that the original cell transmission order is maintained intact. Input queue management method of (ATM) switch. 제 1항에 있어서, 상기 제1단계의 다중 입력큐에 대한 도착 셀의 교대 분배는, 각 입력포트마다 상기 다중 입력큐를 택일적으로 가리키는 제1포인터(ai)를 두고, 상기 제1포인터(ai)의 값을 교호적으로 변경시켜 상기 다중 입력큐를 교대로 인에이블시키는 것에 의해 달성됨을 특징으로 하는 다중 스위칭평면을 갖는 비동기전송모드(ATM) 스위치의 입력큐 관리 방법.2. The method of claim 1, wherein the alternate distribution of arrival cells to the multiple input queues of the first step comprises a first pointer a i that alternatively points to the multiple input queues for each input port, and the first pointer. and (a i ) alternatingly changing the values of (a i ) to enable the multiple input queues alternately. 제 1항에 있어서, 상기 제2단계의 각 입력포트의 다중 선두셀에 대한 교호적 전송기회의 부여는, 각 입력포트마다 할당되며 가장 먼저 도착한 셀이 저장되어 있는 입력큐를 가리키는 제2포인터(bi)를 이용하여, 전송선택된 셀이 생길 때마다 상기 제2포인터(bi)의 값을 교호적으로 변경시키므로써 이루어지는 것을 특징으로 하는 다중 스위칭평면을 갖는 비동기전송모드(ATM) 스위치의 입력큐 관리 방법.2. The method of claim 1, wherein the granting of an alternative transmission opportunity to the multiple head cells of each input port of the second step comprises: a second pointer indicating an input queue in which the first arrived cell is stored; b i) to the input of the asynchronous transfer mode (ATM) switches whenever the transmission selected cell having a plurality of switching planes for the value of the second pointer (b i) wherein the formed written because changes alternately using How to manage queues. 제 1항에 있어서, 상기 제3단계는 동일 입력포트에서 동일 전송주기동안에 동일 출력포트로 전송되어야 할 선두 셀들간의 전송순서를 구분하기 위해 태그값을 이용하고, 상기 태그값은 상기 비동기전송모드셀이 상기 스위칭평면에 도착하기 전단계에서 상기 비동기전송모드셀에 부가되고, 상기 스위칭평면을 떠나서 상기 출력포트에 인가되기 전단계에서 제거됨을 특징으로 하는 다중 스위칭평면을 갖는 비동기전송모드(ATM) 스위치의 입력큐 관리 방법.The method of claim 1, wherein the third step uses a tag value to distinguish the transmission order between the first cells to be transmitted from the same input port to the same output port during the same transmission period, and the tag value is the asynchronous transmission mode. A cell of the asynchronous transfer mode (ATM) switch having multiple switching planes, wherein the cell is added to the asynchronous transfer mode cell before it reaches the switching plane, and is removed at the stage before leaving the switching plane and being applied to the output port. How to manage input queues. 복수개의 입력큐, 복수개의 출력큐 및 다중의 스위칭 평면이 구비된 스위칭 장치에 있어서,In a switching device having a plurality of input queues, a plurality of output queues and a plurality of switching planes, 다중으로 구성되어 상기 다중 스위칭 평면의 각 평면에 일 대 일로 연결된 다중 입력큐;A plurality of input queues configured to be multiple and connected one-to-one to each plane of the multiple switching planes; 상기 다중 입력큐의 전단에 연결되며, 상기 다중 입력큐에 도착된 셀을 상기 다중 입력큐의 각 서브 입력큐에 순차적으로 분배하는 입력큐 선택기;An input queue selector connected to a front end of the multiple input queue and sequentially distributing cells arriving at the multiple input queue to each sub input queue of the multiple input queue; 상기 다중입력큐와 상기 다중 스위칭 평면 사이에 연결되고, 1 사이클 이내에 상기 각각의 서브 입력큐를 상기 분배순으로 서비스하여 상기 서브 입력큐의 선두셀이 전송가능할 때 상기 선두셀에 상기 분배순에 대응하는 태그를 부착하는 전송 중재기; 및Connected between the multi-input queue and the multi-switching plane, and each sub-input queue is serviced in the order of distribution within one cycle to correspond to the order of distribution to the head cell when the head cell of the sub-input queue is transmittable. A transmission arbiter attaching a tag; And 상기 다중 스위칭 평면과 상기 출력큐 사이에 연결되고, 상기 출력큐에 도착된 셀이 동일 입력큐로부터 전송되어온 셀일 경우 상기 태그 정보에 따라 정렬하여 상기 출력큐에 저장하는 출력단 제어기를 포함하여 구성된 것을 특징으로 하는 전송 순서가 보장되는 스위칭 장치.And an output stage controller connected between the multiple switching planes and the output queue and sorting according to the tag information when the cell arrived at the output queue is a cell transmitted from the same input queue. Switching device with guaranteed transmission order.
KR10-1999-0022673A 1999-06-17 1999-06-17 Method and apparatus for ensuring transfer order in a packet-switch with a dual-switching plane000 KR100368439B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-1999-0022673A KR100368439B1 (en) 1999-06-17 1999-06-17 Method and apparatus for ensuring transfer order in a packet-switch with a dual-switching plane000

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-1999-0022673A KR100368439B1 (en) 1999-06-17 1999-06-17 Method and apparatus for ensuring transfer order in a packet-switch with a dual-switching plane000

Publications (2)

Publication Number Publication Date
KR20010002730A true KR20010002730A (en) 2001-01-15
KR100368439B1 KR100368439B1 (en) 2003-01-24

Family

ID=19593003

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0022673A KR100368439B1 (en) 1999-06-17 1999-06-17 Method and apparatus for ensuring transfer order in a packet-switch with a dual-switching plane000

Country Status (1)

Country Link
KR (1) KR100368439B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100717669B1 (en) * 2005-03-18 2007-05-14 후지쯔 가부시끼가이샤 Cross bar apparatus, method for controlling the same and recording medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100717669B1 (en) * 2005-03-18 2007-05-14 후지쯔 가부시끼가이샤 Cross bar apparatus, method for controlling the same and recording medium

Also Published As

Publication number Publication date
KR100368439B1 (en) 2003-01-24

Similar Documents

Publication Publication Date Title
Iyer et al. Analysis of the parallel packet switch architecture
US7023841B2 (en) Three-stage switch fabric with buffered crossbar devices
US5274642A (en) Output buffered packet switch with a flexible buffer management scheme
US7161906B2 (en) Three-stage switch fabric with input device features
CA2490915C (en) Apparatus and method to switch packets using a switch fabric with memory
US7397808B2 (en) Parallel switching architecture for multiple input/output
US6944170B2 (en) Switching arrangement and method
US7136391B1 (en) ATM switch
JPH09512683A (en) ATM architecture and switching elements
Chrysos et al. Scheduling in Non-Blocking Buffered Three-Stage Switching Fabrics.
Chao et al. An ATM queue manager handling multiple delay and loss priorities
KR100368439B1 (en) Method and apparatus for ensuring transfer order in a packet-switch with a dual-switching plane000
KR100378588B1 (en) Asynchronous transfer mode switch and cell format
Yun A terabit multi-service switch with Quality of Service support
Lee et al. A practical approach for statistical matching of output queueing
Minkenberg et al. A robust switch architecture for bursty traffic
Guo et al. Packet switch with internally buffered crossbars
Yi et al. NETp1-02: Providing QoS Guarantees in Buffered Crossbars with Space-Division Multiplexing Expansion
Ryu et al. A novel address pointer switch architecture for variable length packets
Kannan et al. A fair and efficient multicast ATM switch based on deflection routing
KR20020054207A (en) Terabit Packet Switching Apparatus
Heo et al. A Switch Architecture with Quasi-Shared Buffering for Scalable Multicast ATM Switches
Kleban Packet dispatching schemes for three-stage buffered Clos-network switches
Jaidhar et al. Efficient variable length block switching mechanism
Dong et al. Efficient packet replication and switching of multicast traffic by shared-crosspoint packet switches

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee