KR20030074665A - Distribution /combining packet switching apparatus using brief scheduling information - Google Patents
Distribution /combining packet switching apparatus using brief scheduling information Download PDFInfo
- Publication number
- KR20030074665A KR20030074665A KR1020037008179A KR20037008179A KR20030074665A KR 20030074665 A KR20030074665 A KR 20030074665A KR 1020037008179 A KR1020037008179 A KR 1020037008179A KR 20037008179 A KR20037008179 A KR 20037008179A KR 20030074665 A KR20030074665 A KR 20030074665A
- Authority
- KR
- South Korea
- Prior art keywords
- arbitration
- distribution
- packet
- output
- queue
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
- 239000000872 buffer Substances 0.000 claims abstract description 46
- 230000008878 coupling Effects 0.000 claims abstract description 40
- 238000010168 coupling process Methods 0.000 claims abstract description 40
- 238000005859 coupling reaction Methods 0.000 claims abstract description 40
- 230000000903 blocking effect Effects 0.000 claims description 44
- 238000000034 method Methods 0.000 claims description 38
- 239000011159 matrix material Substances 0.000 claims description 27
- 230000001404 mediated effect Effects 0.000 claims description 3
- 230000001360 synchronised effect Effects 0.000 claims 2
- 230000003139 buffering effect Effects 0.000 description 14
- 239000004744 fabric Substances 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 240000003537 Ficus benghalensis Species 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 239000004065 semiconductor Substances 0.000 description 5
- 230000006855 networking Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000002123 temporal effect Effects 0.000 description 3
- 241001522296 Erithacus rubecula Species 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 229920001229 Starlite Polymers 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000000275 quality assurance Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/15—Interconnection of switching modules
- H04L49/1507—Distribute and route fabrics, e.g. sorting-routing or Batcher-Banyan
-
- 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
- H04L49/205—Quality of Service based
-
- 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
- H04L49/252—Store and forward routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Quality & Reliability (AREA)
Abstract
본 발명은 차세대 패킷망에서의 분배결합 패킷 스위칭 장치에 관한 것이다. 상기 차세대 패킷망에서의 분배결합 패킷 스위칭 장치는 각각 제1 소정 개수의 큐(queue)들을 구비한 제2 소정 개수의 단위 스위치 모듈로 구성되어 소정 개수의 패킷을 분배하기 위한 분배수단; 상기 제1 소정 개수의 큐들에 대하여 패킷 입출력을 제어하기 위한 큐 제어수단; 상기 큐 제어수단내의 소정 개수의 큐들에 저장되어 있는 소정 개수의 패킷을 입력으로하여 상기 분배수단의 출력링크에 상기 패킷을 배분하기 위한 분배 중재수단; 상기 분배중재수단에서 분배된 패킷들의 경합을 중재하여 배분하기 위한 결합중재수단; 상기 제2 소정 개수의 단위 스위치 모듈로 구성되어 상기 결합중재수단의 결합 중재정보에 따라 패킷을 분류하여 출력하기 위한 스위칭 수단; 소정 개수의 단위 스위치 모듈로 구성되어 상기 결합 중재 수단에서 출력된 패킷을 목적지 정보에 따라 분류하여 해당되는 버퍼에 큐잉(queuing)한 후, 상기 패킷 데이터가 출력되고자 하는 수단으로 출력하기 위한 결합수단; 및 상기 분배수단과 상기 스위칭수단, 상기 스위칭 수단과 상기 결합수단을 연결하는 연결수단을 포함한다.The present invention relates to a distributed combining packet switching device in a next generation packet network. The distributed combining packet switching device in the next generation packet network includes distribution means for distributing a predetermined number of packets, each consisting of a second predetermined number of unit switch modules each having a first predetermined number of queues; Queue control means for controlling packet input and output with respect to the first predetermined number of queues; Distribution arbitration means for distributing the packet to an output link of the distribution means by inputting a predetermined number of packets stored in a predetermined number of queues in the queue control means; Coupling arbitration means for arbitrating and distributing contention of packets distributed in the distribution mediation means; Switching means configured to constitute the second predetermined number of unit switch modules and to classify and output packets according to the coupling arbitration information of the coupling mediation means; Combining means for constituting a predetermined number of unit switch modules, classifying packets output from the combining arbitration means according to destination information, queuing them in a corresponding buffer, and outputting the packet data to a means for outputting the packet data; And connecting means for connecting the distribution means and the switching means, the switching means and the coupling means.
Description
차세대 통합 통신망은 인터넷 프로토콜(IP : Internet Protocol)화된 비동기전송모드(ATM : Asynchronous Transfer Mode), 즉 ATM의 서비스품질(QoS : Quality of Service) 보장 등 장점을 유지하면서 ATM의 가상경로(Virtual Path)특성에 따른 비연결형 인터넷 서비스 직접 수용이 곤란한 문제점을 해결한 ATM+ 망이 되거나, ATM화된 IP망, 즉 IP망의 서비스품질(QoS) 및 망 안정성 문제점을 해결한 IP+ 망이 되리라 널리 예상되고 있다. 다시 말하면, 차세대 통신망은 패킷 교환망으로 구성된다는 의미이다.Next-generation converged networks maintain the advantages of the Internet Protocol (IP), Asynchronous Transfer Mode (ATM), that is, guaranteeing the quality of service (QoS) of the ATM, while maintaining the ATM virtual path. It is widely expected that this will be an ATM + network that solves the difficulty of directly accommodating connectionless Internet services according to its characteristics, or an IP + network that solves the problems of quality of service (QoS) and network stability of an ATM network. In other words, the next generation communication network is composed of a packet switched network.
그런데, 현존하는 패킷망 중 최근 폭발적으로 가입자가 증가하고 있는 인터넷(internet)의 지연(Delay) 성능은 약 "400 ms 90 percentile delay"를 보이고 있다. 그러나, 종래의 공중전화망(PSTN : Public Switched Telephone Network) 전화의 음성(Voice) 서비스품질과 비슷한 품질 보증을 위해서는, 약 "50 ms 이하 90 percentile delay" 성능이 요구된다.However, the delay performance of the Internet, which has recently increased explosively among existing packet networks, shows about 400 ms 90 percentile delay. However, for quality assurance similar to the voice service quality of conventional public switched telephone network (PSTN) telephones, a performance of about "90 percentile delay of less than 50 ms is required."
이러한 인터넷의 낮은 지연 성능 특성은 현존하는 인터넷의 다단 스위칭(multi-hop switching/routing)구조에 한 원인을 찾을 수 있다. 즉, 대규모 라우팅/스위칭 기능의 효율적인 구현에 어려움이 있는 관계로 기존의 인터넷은 작은 용량의 라우터/스위치를 다수 개 연결하여 망을 구성하고 있다.The low latency performance of the Internet can be attributed to the existing multi-hop switching / routing architecture. In other words, due to the difficulty in the efficient implementation of large-scale routing / switching functions, the existing Internet forms a network by connecting multiple small routers / switches.
이에 따라, 필연적으로 송신자에서 출발한 패킷은 복잡한 다단 경로를 거치게 되며, 많은 스위칭 지연(delay)을 경험한 상태로 수신자에 전달된다.Inevitably, packets originating from the sender are routed through a complex multi-stage path and are delivered to the receiver with a large number of switching delays.
한편, 종래의 패킷 스위치에 대해 보다 상세히 살펴보면 다음과 같다.Meanwhile, the conventional packet switch will be described in more detail as follows.
패킷 스위치는 패킷 버퍼의 위치에 따라 크게 출력 버퍼링(Output Buffering), 공유 버퍼링(Shared Buffering), 입력 버퍼링(Input Buffering), 그리고 입출력 버퍼링(Input and Output Buffering)으로 구분할 수 있다.Packet switches can be classified into output buffering, shared buffering, input buffering, and input and output buffering according to packet buffer positions.
먼저, 출력 버퍼링(Output Buffering) 방식은 스위칭 입력과 출력링크 속도에 비해 N(스위치의 입력단과 출력단의 수)배 빠른 속도로 동작하여 단위 시간 동안에 한 출력단으로 최대 N개의 패킷을 전송할 수 있다. 따라서, 패킷의 버퍼링은 출력단에서만 일어나며, 처리율 및 패킷 지연 시간 측면에서 이상적인 성능을 보인다. 그러나, 출력 버퍼링 방식에서 개별 출력 버퍼는 N+1 배속 동작이 필요하여 구현의 비용이 크며, 대규모 스위치 구현이 어렵다는 문제점이 있다.First, the output buffering method operates at a speed of N times the number of input and output terminals of the switch compared to the switching input and output link speeds, thereby transmitting up to N packets to one output terminal during a unit time. Thus, buffering of packets occurs only at the output and shows ideal performance in terms of throughput and packet latency. However, in the output buffering scheme, the individual output buffers require N + 1 double speed operation, resulting in high implementation cost and difficulty in implementing large switches.
한편, 공유 버퍼링(Shared Buffering) 방식은 입출력링크의 2N배의 대역폭을 갖는 공유 버퍼를 사용함으로써 매 단위 시간당 N번의 쓰기와 N번의 읽기가 가능해출력 버퍼링과 마찬가지로 최적의 처리율 및 패킷 지연시간 특성을 보인다. 또한, N개의 입력단과 N개의 출력단이 하나의 버퍼를 공유하므로 동일량의 버퍼로 최소의 패킷 손실율을 얻을 수 있다. 그러나, 2N배속 버퍼의 구현이 어려운 관계로 고속 대규모 스위치에 적용하는데에는 한계가 있으며, 현재 이용 가능한 0.2 um급 CMOS 반도체 기술을 사용할 시 최대 약 40 Gigabit/sec의 최대 처리율을 갖는 스위치를 제작할 수 있다.On the other hand, the shared buffering method uses a shared buffer that has 2N times the bandwidth of the I / O link, so that N writes and N reads per unit time are possible, which shows optimal throughput and packet delay characteristics as well as output buffering. . In addition, since N inputs and N outputs share a buffer, a minimum packet loss rate can be obtained with the same amount of buffers. However, since it is difficult to implement a 2N double-speed buffer, there is a limit to applying it to a high-speed large-scale switch, and a switch having a maximum throughput of about 40 Gigabit / sec can be manufactured using the currently available 0.2 um CMOS semiconductor technology. .
입력 버퍼링(Input Buffering) 방식에서는 입력 버퍼와 스위칭 패브릭이 링크 속도로 동작한다. 따라서, 한 입력단에서는 하나의 패킷만 출력단으로 전송될 수 있고, 전송 블록킹된 패킷들은 입력 버퍼에서 저장된다. 또한, 입력 버퍼링 방식에서 패킷 저장을 위해 필요한 버퍼 메모리 대역폭은 패킷 입력 속도의 2배로써, 버퍼링 방식중 최소이다.In input buffering, the input buffer and the switching fabric operate at link speed. Therefore, only one packet can be transmitted to an output terminal at one input terminal, and the transport blocked packets are stored in the input buffer. In addition, the buffer memory bandwidth required for packet storage in the input buffering method is twice the packet input rate, which is the minimum of the buffering methods.
그러나, 입력 버퍼링 방식은 상기한 바와 같은 장점을 가지고 있음에도 불구하고, 특정한 입력 버퍼에 저장된 선두 패킷의 목적지 출력단이 다른 입력단의 선두 패킷에 의해 선점되어 블록킹되어 있으면, 선두 이후 패킷들의 목적지 출력단이 유휴 상태인 경우에도 이들 패킷의 전송이 불가능해지는 HOL(Head-of-Line) 블록킹으로 최대 처리율(Maximum throughput)이 58.6%로 제한된다.However, although the input buffering scheme has the advantages described above, if the destination output terminal of the first packet stored in a specific input buffer is preempted and blocked by the first packet of another input terminal, the destination output terminal of the packets after the first idle state. In this case, the maximum throughput is limited to 58.6% due to HOL (Head-of-Line) blocking in which these packets cannot be transmitted.
이는 입력단에 하나의 선입선출(FIFO : First In First Out) 큐를 두고 NxN 스위칭 패브릭을 사용하는 경우에 발생하므로 이 조건을 완화시킴으로써 입력 버퍼링 스위치의 최대 처리율을 향상시키려는 연구들이 광범위하게 수행되었다. 이들 중 최근에 널리 사용되고 있는 기법은 스위칭 패브릭의 능력이 최대한 이용될 수있도록, 개별 입력단 버퍼에 출력단별 큐잉(Virtual output queueing 또는 N FIFO queueing)을 행한 후, 출력단으로 전송할 패킷을 선택할 때 출력단 충돌없이 전송될 수 있는 가능한 최대수의 패킷을 선택하는 방법이다. 즉, NxN 스위치에서 개별 입력단마다 N개의 출력단별 큐가 있어 입력되는 패킷들이 자기 자신의 출력단별 큐로 저장된다. 스위치 전체에는 N2개의 큐가 있으며, 스위치의 입출력 중재 중재기는 이들 N2입력큐에 존재할 수 있는 패킷들을 N개의 출력단으로 공평하며 효율적으로 배정하는 절차를 수행한다.This occurs when an NxN switching fabric is used with one First In First Out (FIFO) queue at the input, so extensive research has been conducted to improve the maximum throughput of the input buffering switch by mitigating this condition. Among these, a widely used technique is to perform output-level queuing (Virtual output queueing or N FIFO queueing) on individual input buffers to make the best use of the switching fabric's capabilities. It is a method of selecting the maximum possible number of packets that can be transmitted. That is, in the NxN switch, there are N output queues for each input, and the input packets are stored in their own output queue. There are N 2 queues throughout the switch, and the I / O arbitration arbiter of the switch performs a procedure for efficiently and efficiently allocating packets that may exist in these N 2 input queues to N outputs.
이들 중재 중재기의 동작 알고리즘들 중 널리 알려진 것은 PIM(T. Anderson, S. Owicki, J. Saxe, and C. Thacker. "High Speed Switch Scheduling for Local Area Networks," ACM Transactions on Computer Systems 11, 4, November 1993.), RRM, iSLIP(Nick McKeown, "iSLIP: A Scheduling Algorithm for InPut-Queued Switches," IEEE Transactions on Networking, April 1999.). 2DRR(R. O. LaMaire et al, "Two-dimensioanl round-robin schedulers for packet switches with multiple input queues." IEEE/ACM Trans. Networking., Vol. 2., No, 5., Oct. 1994), WFA(C. Partridge, et al., "A 50-Gb/s IP router," IEEE/ACM Trans. Networking, vol. 6, pp. 237-248, June 1998), MUCS(H. Duan, A High-performance OC-12/OC-48 Queue Design Prototype for Input-buffered ATM Switches, IEEE Infocom '97, Kobe, Japan, pp20-28, April 7-11, 1997), RRGS(A. Smiljanic, "RRGS"-Round-Robin Greedy Scheduling for Electronic/Optical Terabit Switches,"IEEE GLOBECOM'99, pp 1244~1250,1999), 및 CORP(Cavendish, D., "High Performance Switching and routing," ATM 2000, Proceedings of the IEEE Conference on High Performance Switching and routing, Page(s) : 55-64, 2000)들이 있다.Among the algorithms of operation of these arbitration arbitrators are well known PIM (T. Anderson, S. Owicki, J. Saxe, and C. Thacker. "High Speed Switch Scheduling for Local Area Networks," ACM Transactions on Computer Systems 11, 4 , November 1993.), RRM, iSLIP (Nick McKeown, "iSLIP: A Scheduling Algorithm for InPut-Queued Switches," IEEE Transactions on Networking, April 1999.). 2DRR (RO LaMaire et al, "Two-dimensioanl round-robin schedulers for packet switches with multiple input queues." IEEE / ACM Trans. Networking., Vol. 2., No, 5., Oct. 1994), WFA (C Partridge, et al., "A 50-Gb / s IP router," IEEE / ACM Trans. Networking, vol. 6, pp. 237-248, June 1998), MUCS (H. Duan, A High-performance OC. -12 / OC-48 Queue Design Prototype for Input-buffered ATM Switches, IEEE Infocom '97, Kobe, Japan, pp 20-28, April 7-11, 1997), RRGS (A. Smiljanic, "RRGS"-Round-Robin Greedy Scheduling for Electronic / Optical Terabit Switches, "IEEE GLOBECOM'99, pp 1244-1250,1999), and CORP (Cavendish, D.," High Performance Switching and routing, "ATM 2000, Proceedings of the IEEE Conference on High Performance Switching and routing, Page (s): 55-64, 2000).
이들 중재 제어 알고리즘을 사용하는 스위치는 입력단 패킷이 목적지별로 저장 및 관리되므로 HOL 블록킹 현상이 제거되어 높은 처리율을 얻을 수 있다. 이들중 iSLIP의 개발자인 Mckeown(Nick McKeown, et-al, "Achieving 100% Throughput in an Input-Queued Switch," IEEE Transactions on Communications, Vol. 47, No. 8, August 1999, pp. 1260-1267)은 입력 트래픽이 균일한 경우 최대 크기 정합(Maximum Size Matching) 알고리즘의 경우 100%의 처리율을 얻을 수 있고 최대 가중치 정합(Maximum Weight Matching) 알고리즘은 불균일(non-uniform) 트래픽 환경에서도 100% 처리율을 얻을 수 있는 것을 증명하였다.Switches using these arbitration control algorithms achieve high throughput by eliminating HOL blocking because input packets are stored and managed by destination. Among them, Mckeown, developer of iSLIP (Nick McKeown, et-al, "Achieving 100% Throughput in an Input-Queued Switch," IEEE Transactions on Communications, Vol. 47, No. 8, August 1999, pp. 1260-1267) Can achieve 100% throughput for the Maximum Size Matching algorithm if the input traffic is uniform, and 100% throughput for the non-uniform traffic environment with the Maximum Weight Matching algorithm. Proved to be possible.
그러나, 이들 입력 버퍼 방식의 가상 출력 큐(VOQ : Virtual Output Queueing) 스위치는 N2개의 큐가 필요한 점, 높은 입력 부하 시 스위칭 지연 특성이 N에 비례하여 증가하는 점, 높은 처리율의 경합제어를 위해서는 다수의 반복 경합 제어가 필요하여 경합 제어 장치가 고속으로 동작하여야 하는 점, 현재 이용 가능한 0.2 um급 CMOS 반도체 기술을 사용하는 경우 스위칭 동작이 수행되는 공간 스위치의 현실적인 구현 가능 최대 속도가 약 80 Gigabit/sec에 불과하여 공유 버퍼 방식의 구현 가능 최대 속도인 40 Gigabit/sec에 비교하여 그다지 높지 않은 점, 스위칭 지연 특성이 스위치 입출력단 개수인 N에 비례하여 증가함으로 입출력단 수를 크게 할 수 없는 관계로 적은 수의 입출력단을 가지며 개별 입출력단 링크가 고속으로 동작하는 구조에 적합하여 원 홉 스위칭(one hop switching)을 지향하는 차세대 스위치로는 부적절한 구조인 점, 그리고 고속으로 동작하는 공간 스위치상의 신호 경로가 서로 다른 관계로 출력단에서의 패킷 동기가 곤란하여 실제적으로는 공간 스위치의 출력단에 패킷 버퍼가 필요한 문제점들을 갖는다.However, these input buffer type virtual output queuing (VOQ) switches require N 2 queues, the switching delay characteristics increase in proportion to N at high input loads, and high contention contention control. The contention control device must operate at high speed due to the need for multiple repetitive contention control, and the practical implementation of the space switch in which the switching operation is performed when using the currently available 0.2 um class CMOS semiconductor technology is about 80 Gigabit / It is not very high compared to 40 Gigabit / sec, which is the maximum possible speed of shared buffer method, and the switching delay characteristic increases in proportion to N, the number of switch I / O terminals. One-hop switching (one h) is suitable for the structure that has a small number of I / O stages and the individual I / O link operates at high speed. As next-generation switches aiming for op switching are inadequate structures and different signal paths on high-speed spatial switches, it is difficult to synchronize packets at the output stage, which actually requires a packet buffer at the output stage of the spatial switch. Have problems.
이에 따라, 정합단 갯수인 N이 수천에서 수 만에 이르며, 정보 처리 용량이 수 Terabit/sec ~ 수십 Terabit/sec에 이르는 차 세대 스위치를 위하여 새로운 방법들이 모색되고 있다. 이러한 대형 스위치에 대한 연구 결과들은 일반적으로 입출력단에 패킷 버퍼들을 가지고 있는 경우가 대부분이다. 이는 물리적 한계를 극복하기 위하여, 이들 대용량 스위치 구조가 대부분 작은 스위칭 능력을 가진 단위 스위치들을 여러 개 연결하여 구성되며, 이에 따라 스위치 내부 블록킹(Internal blocking)이 발생하므로 이를 중재 또는 버퍼링하기 위하여 필연적으로 입출력 버퍼들이 필요하다.Accordingly, new methods are being sought for next-generation switches in which the number of matching stages is N to thousands to tens of thousands, and information processing capacity is several Terabit / sec to several tens of Terabit / sec. The results of research on such a large switch generally have packet buffers at the input / output stage. In order to overcome the physical limitations, these large-capacity switch structures are composed of several unit switches having mostly small switching capabilities. Accordingly, internal blocking occurs in the switch, so that input / output is inevitably necessary to arbitrate or buffer them. Buffers are needed.
개발된 대용량 스위치들은 "StarLite", "MoonLite", "SunLite"로 대표되는 "Bell Lab"에서 개발한 1세대 구조들로 이들은 "배치어-밴얀(Batcher-Banyan)스위치" 네트워크의 알고리즘에 따라 동작한다. 이들 구조는 거대한 상호연결망(interconnection network)이 필요한 점, 패킷 손실율이 입력 트래픽 패턴에 연계되어 서비스품질(QoS) 보장이 어려운 점 등의 단점으로 상품화되지는 못하였다.The large-capacity switches developed are first-generation structures developed by "Bell Lab" represented by "StarLite", "MoonLite", and "SunLite", which operate according to the algorithm of "Batcher-Banyan Switch" network. do. These structures have not been commercialized due to the necessity of huge interconnection networks and the difficulty of guaranteeing quality of service (QoS) as packet loss rate is linked to input traffic patterns.
상기한 1세대 구조를 이어 개발된 2세대 계열 대용량 스위치 구조로는, "Tandem Banyan", "ReRouting Banyan", "Knockout switch", "Growable switch", "MSM switch"들이 대표적이다. 이들 구조는 확률적인 내부 블록킹(Internal blocking) 중재 제어를 특징으로 한다. 이들 스위치 구조는 1 세대 구조에 비해서는 감소되었지만, 여전히 큰 상호연결망(Interconnection network)이 필요한 점, 확률적 중재 제어에 따른 서비스품질(QoS) 보장이 곤란한 점 등의 1세대 구조의 단점들을 완전히 극복하지는 못하였다.As the second-generation series high capacity switch structure developed following the first generation structure, "Tandem Banyan", "ReRouting Banyan", "Knockout switch", "Growable switch", and "MSM switch" are representative. These structures feature stochastic internal blocking arbitration control. Although these switch structures are reduced compared to the first generation architecture, they still completely overcome the shortcomings of the first generation architecture such as the need for a large interconnection network and difficulty in guaranteeing quality of service (QoS) due to stochastic arbitration control. I could not.
또 다른 2 세대 방식으로는 "CLOS" 또는 "BENES" 망 구조의 "buffered Banyan" 구조의 스위치들로 내부 블록킹(Internal Blocking)을 "Banyan" 망내의 패킷 버퍼를 이용하여 중재하는 방식으로, 단순한 구조로 구현이 상대적으로 용이하여 상업용 교환기 구조로 널리 사용되었다. "HAN-BISDN"에서 개발한 "ACE"계열 스위치, "Alcatel"사의 ATM 스위치들은 "buffered banyan" 계열 스위치이다.Another second-generation scheme is a simple architecture, in which internal blocking is mediated using packet buffers in a "Banyan" network with switches in the "CLOS" or "BENES" network with "buffered Banyan" architecture. The furnace is relatively easy to implement and has been widely used as a commercial exchanger structure. The "ACE" switches and "Alcatel" ATM switches developed by "HAN-BISDN" are "buffered banyan" switches.
최근 대용량 입출력 버퍼 구조에서 스위치 내부 블록킹(Internal blocking)을 확정적(deterministic)으로 중재 제어하는 방법들이 개발되고 있다. 이들중 "Obara"의 시간예약기법(H. Obara, et al., "Input and output queueing ATM switch architecture with spatial and temporal slot reservation control," Electronics Letters, Vol. 28, No. 1, Jan. 1992)은 각 입력버퍼모듈(input buffer module)에서 중재 중재기로 전송요청(request)을 보내면 중재 중재기에서 각 전송요청(request)에 대한 전송허가시간을 설정해서 입력버퍼모듈로 보내는 구조이다. 여기서, 입출력 포트를 몇 개씩 그룹핑해서 입력포트별 큐의 개수를 줄여서 경합 제어에서 사용되는 전송요청(request)의 개수를 줄였다. 또한, 입력포트 그룹핑에 따른 통계적 다중화 이득(Statistical multiplexing gain)으로 전체적인 스위치의 성능은 향상된다.Recently, methods for arbitration-deterministically controlling internal blocking in a large input / output buffer structure have been developed. Of these, "Obara" time reservation technique (H. Obara, et al., "Input and output queueing ATM switch architecture with spatial and temporal slot reservation control," Electronics Letters, Vol. 28, No. 1, Jan. 1992) Is a structure in which a request is sent from the input buffer module to the arbitration arbiter and the transmission buffer time is set by the arbitration arbiter and sent to the input buffer module. Here, the number of I / O ports is grouped several times to reduce the number of queues for each input port, thereby reducing the number of transmission requests used in contention control. In addition, the statistical multiplexing gain according to the input port grouping improves the overall switch performance.
그런데, 상기 논문은 경합 제어시 시간정보를 사용한다. 따라서, 대용량 스위치의 경우 시간정보의 전송량이 증가하여 고속 동작이 어렵다. 또한, 스위치 패브릭으로 1개의 크로스바 만을 사용하여 입출력포트의 개수가 증가하면 크로스바의 입출력링크의 개수가 증가하므로 대규모 스위치 구현을 어렵게 한다.However, the paper uses time information in contention control. Therefore, in the case of a large-capacity switch, the amount of time information is increased and high speed operation is difficult. In addition, when only one crossbar is used as the switch fabric and the number of input / output ports increases, the number of crossbar input / output links increases, making it difficult to implement a large-scale switch.
상기한 구조에 비하여 "ATLANTA(Fabio M. Chiussi, et-al. "The ATLANTA Architecture and Chipset: A Low-Cost Scalable Solution for ATM Networking," ISS'97, p43-52, 1997)(us5689500, us5689505, us5689506) 스위치"는 공지된 "CLOS" 스위치 패브릭 구조를 갖는다. 공지된 사실로 "CLOS" 스위치 패브릭은 회선 교환 트래픽에 대하여 특정 조건에서 논 블록킹(non-blocking)이다.Compared to the above structure, "ATLANTA (Fabio M. Chiussi, et-al." The ATLANTA Architecture and Chipset: A Low-Cost Scalable Solution for ATM Networking, "ISS'97, p43-52, 1997) (us5689500, us5689505, us5689506) "has a known" CLOS "switch fabric structure. In fact, the "CLOS" switch fabric is non-blocking under certain conditions for circuit switched traffic.
또한, 패킷 교환 트래픽에 대해서는 패킷 단위 경로 제어를 실시할 경우 논 블록킹이 될 수 있다. "CLOS" 또는 "BENES" 스위치 패브릭에 대하여 상기에 언급한 논 블록킹 특성은 최소의 크로스바 투입 자원내에서 얻을 수 있다는 점에서 관심되어 지는 특성이며, 널리 공지된 사실이다(Joseph Y. Hui, "Switching and traffic theory for integrated broadband networks," Kluwer Academic Publishers, 1990). 이에 따라, "ATLANTA" 스위치 구조는 "Obara"의 구조에 비교하여 확장성 측면에서 우수하다.In addition, packet-blocking traffic may be non-blocking when packet path control is performed. The non-blocking properties mentioned above for "CLOS" or "BENES" switch fabrics are of interest and are well known in that they can be obtained within a minimum amount of crossbar input resources (Joseph Y. Hui, "Switching"). and traffic theory for integrated broadband networks, "Kluwer Academic Publishers, 1990). Accordingly, the "ATLANTA" switch structure is superior in scalability compared to the structure of "Obara".
"ATLANTA" 스위치의 내부 블록킹(Internal blocking) 중재 제어 방식은 크로스바 출력단에 대한 출력 경합에서 일차 실패한 패킷이 다음 경합 기회에 재참여 한다는 측면에서 "SLIP"와 유사하다. 개별 입력버퍼 모듈은 출력단 및 서비스 등급별 큐잉을 하는 패킷 버퍼들이 있으며, 이들 버퍼에 저장되어 있는 패킷들에 대하여 입력버퍼 모듈내에 있는 2단의 라운드 로빈(Round Robin) 중재기는 매 패킷 슬롯마다 입력버퍼 모듈과 크로스바를 연결하는 링크 수에 해당하는 패킷들을 선정한다. 선정된 패킷의 최종 출력단 및 서비스 등급에 대한 정보는 해당 링크를 통하여 크로스바내에 있는 중재기로 전송되며, 크로스바내에 중재기는 크로스바 출력별로 한 개의 패킷을 선정하여 선정된 링크에 붙어있는 입력버퍼모듈로 전송 허가 신호를 보낸다. 이때, 크로스바내의 중재기에 의하여 크로스바 출력단 경합에 기인하여 전송이 허가되지 않은 패킷은 다음번 경합 중재에 다시 참여하게 된다. 즉, "SLIP"와 유사한 라운드 로빈(Round Robin) 포인터(pointer) 이동 방식이 사용된다.The internal blocking arbitration control scheme of the " ATLANTA " switch is similar to " SLIP " in that the first failed packet in the contention for the crossbar output is re-engaged in the next contention opportunity. Each input buffer module has packet buffers for queuing by output and class of service. For the packets stored in these buffers, the second round robin arbiter in the input buffer module has an input buffer module for each packet slot. Select packets corresponding to the number of links connecting the crossbar and the crossbar. Information on the final output end of the selected packet and the class of service is transmitted to the arbiter in the crossbar through the link, and the arbiter in the crossbar selects one packet for each crossbar output and sends it to the input buffer module attached to the selected link. Send a signal At this time, the packet that is not allowed to transmit due to the crossbar output end contention by the arbiter in the crossbar rejoins the next contention arbitration. That is, a round robin pointer movement scheme similar to " SLIP " is used.
그러나, "ATLANTA" 스위치의 내부 블록킹(Internal blocking) 중재 제어 방식은 위에서 언급한 것 보다 상세하게 발표되어 있지는 않으며, 위에 기술된 참고 문헌에 따르면 최소한 8/6 배로 내부 링크들을 확장할 경우 논 블록킹 특징을 유지할 수 있다고 발표하고 있다. 이에 따라, "ATLANTA" 스위치의 내부 블록킹(Internal blocking) 중재 제어 방식의 포화 처리율(Saturation Throughput)은 약 75%에 달하리라 예측한다.However, the internal blocking arbitration control scheme of the "ATLANTA" switch is not disclosed in more detail than mentioned above, and according to the above-mentioned reference, the non-blocking feature is extended when the internal links are extended by at least 8/6 times. It is announced that it can maintain. Accordingly, the saturation throughput of the internal blocking arbitration control method of the "ATLANTA" switch is expected to reach about 75%.
"CLOS"형 입출력버퍼 스위치 구조를 위한 또 다른 중재 제어 알고리즘으로 2DRRMS(M. S. Han et al, "Fast scheduling algorithm for input and output buffered ATM switch with multiple switching planes," Electronics Letters,Vol. 35, No. 23, pp. 1999-2000, Nov. 1999)가 있다.Another arbitration control algorithm for the "CLOS" type I / O buffer switch architecture is 2DRRMS (MS Han et al, "Fast scheduling algorithm for input and output buffered ATM switch with multiple switching planes," Electronics Letters, Vol. 35, No. 23 , pp. 1999-2000, Nov. 1999).
2DRRMS는 2DRR과 같이 전송요청행렬과 검색형태행렬(search pattern matrix)을 사용하여 전송요청행렬을 검색형태행렬에 정의된 순서대로 전송요청행렬을 검색하여 전송할 전송요청을 결정한다. 이때, 2DRRMS방법은 HOL(Head Of Line) 패킷에 대해서만 경합 중재 제어를 실시하여, 전송 허가 여부 및 사용하여야 할 크로스바 정보를 입력버퍼모듈에 전송한다. 이에 따라, 다수의 크로스바들이 사용되나, 이들은 스위치 처리율 향상을 위하여 사용되며, 처리 용량 확장에는 직접적으로 사용되지 않는다.Like 2DRR, 2DRRMS uses a transmission request matrix and a search pattern matrix to search the transmission request matrix in the order defined in the search form matrix to determine a transmission request. At this time, the 2DRRMS method performs contention arbitration control only for the head of line (HOL) packet, and transmits whether to allow transmission and crossbar information to be used to the input buffer module. As such, many crossbars are used, but they are used to improve switch throughput and are not used directly for processing capacity expansion.
따라서, 차세대 패킷망에서 한번의 스위칭(one hop switching)으로 정보 교환을 가능하게 할 수 있는 방안이 필수적으로 요구된다.Therefore, a method for enabling information exchange with one hop switching in a next-generation packet network is required.
본 발명은 차세대 패킷망에서 한 번의 스위칭으로 정보 교환(one hop switching)을 가능하게 하는 간결한 중재용 교신 정보를 갖는 분배결합 패킷 스위칭 장치 및 그를 이용한 내부 블록킹 중재 장치에 관한 것이다.The present invention relates to a distributed combined packet switching device having concise arbitration communication information enabling one hop switching in a next generation packet network and an internal blocking arbitration device using the same.
도 1 은 본 발명에 따른 분배결합 패킷 스위칭 장치의 일실시예 구성도.1 is a block diagram of an embodiment of a distribution combining packet switching device according to the present invention;
도 2 는 본 발명에 따른 상기 도 1의 분배결합 패킷 스위칭 장치용 내부 블록킹 중재기의 일실시예 구성도.2 is a block diagram of an internal blocking arbiter for the distributed combining packet switching device of FIG. 1 according to the present invention;
도 3 은 본 발명에 따른 상기 도 2의 내부 블록킹 중재기용 분배 중재기의 일실시예 상세 구성도.3 is a detailed block diagram of an embodiment of a distribution arbiter for the internal blocking arbiter of FIG. 2 according to the present invention;
도 4 는 본 발명에 따른 상기 도 3의 분배 중재기 구성요소 및 동작 방법에 대한 일실시 예시도.4 illustrates one embodiment of the distribution arbiter component and method of operation of FIG. 3 in accordance with the present invention.
도 5 는 본 발명에 따른 상기 도 2의 내부 블록킹 중재기용 결합 중재기의 일실시예 상세 구성도.FIG. 5 is a detailed block diagram of an embodiment of a combined arbitrator for the internal blocking arbitrator of FIG. 2 according to the present invention; FIG.
도 6 은 본 발명에 따른 상기 도 5의 결합 중재기 구성요소 및 동작 방법에 대한 일실시 예시도.FIG. 6 illustrates one embodiment of the combined arbitrator component and method of operation of FIG. 5 in accordance with the present invention. FIG.
도 7 은 본 발명에 따른 분배결합 패킷 스위칭 장치의 스위칭 성능을 나타낸 일실시예 설명도.7 is a diagram illustrating an embodiment of the switching performance of the distributed combining packet switching device according to the present invention.
발명의 실시를 위한 형태Embodiment for Invention
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1 은 본 발명에 따른 분배결합 패킷 스위칭 장치의 일실시예 구성도이다.1 is a block diagram of an embodiment of a distribution combining packet switching device according to the present invention.
도 1에 도시된 바와 같이, 본 발명에 따른 분배결합 패킷 스위칭 장치(1000)는 다음과 같다.As shown in FIG. 1, a distributed combining packet switching apparatus 1000 according to the present invention is as follows.
먼저, 내부 구조는 전통적인 "CLOS" 스위치 패브릭 구조를 가지며, i(단, i는 임의의 자연수임)개의 m1ixn1단위 스위치 모듈(1110,1120,1130)로 구성된 분배단(1100), j(단, j는 임의의 자연수임)개의 m2x n2단위 스위치 모듈(1210,1220,1230)로 구성된 스위칭단(1200), l(단, l은 임의의 자연수임)개의 m3x n3l단위 스위치 모듈(1310,1320,1330)로 구성된 결합단(1300), 그리고 분배단(1100)과 스위칭단(1200), 스위칭단(1200)과 결합단(1300)을 연결하는 연결링크(1510,1610)로 구성된 상호 연결망(Interconnection Network)으로 구성된다.First, the internal structure has a traditional "CLOS" switch fabric structure, where i (where i is any natural number) distribution stage 1100 consisting of m 1i x n 1 unit switch modules 1110, 1120, 1130, j (Where j is an arbitrary natural number) a switching stage 1200 composed of m 2 xn 2 unit switch modules 1210, 1220 and 1230, where l is an arbitrary natural number m 3 xn 3l units Coupling end 1300 composed of switch modules 1310, 1320, and 1330, and connection links 1510 and 1610 connecting the distribution end 1100 and the switching end 1200, the switching end 1200 and the coupling end 1300. It consists of an interconnection network consisting of
또한, 분배단(1110)의 i개 m1ix n1단위 스위치 모듈(1110,1120,1130) 내부에는 결합단(1300)에 있는 1개의 m3x n3l단위 스위치 모듈(1310,1320,1330)의 개수와 동일한 1개의 큐(queue)(1111~1113)를 구비하여, 내부 링크 사용에 큐별로 지정되는 공간 우선 순위에 따라 다양한 속도의 가입자 단말 또는 망 정합 장치들을 직접 수용할 수 있어, 한 번의 스위칭(one hop switching)으로 정보 교환이 가능하다.Further, the distribution end (1110) i dog m 1i xn 1 unit switch modules (1110,1120,1130) inside one m 3 xn 3l unit switch modules (1310,1320,1330) at the coupling end 1300 of the With one queue 1111 to 1113 equal to the number, it is possible to directly accommodate subscriber stations or network matching devices of various speeds according to the space priority designated for each queue for use of the internal link, so that one switching Information exchange is possible through one hop switching.
분배단(1100)과 스위칭단(1200)을 연결하는 상호연결망(interconnectionnetwork)은 다중링크연결요소 k1을 정의하여 도입하면 (k1x j = n1) 및 (k1x i =m2)의 관계식를 갖는 다중연결링크(1510)에 의하여 (n1, m2) 완전 셔플(Full shuffle) 형태로 결합된다.An interconnection network connecting the distribution stage 1100 and the switching stage 1200 defines a multilink connection element k 1 and introduces a relation of (k 1 xj = n 1 ) and (k 1 xi = m 2 ). It is coupled (n 1 , m 2 ) in the form of a full shuffle (Full shuffle) by the multiple connection link 1510 having a.
또한, 동일하게 스위칭단(1200)과 결합단(1300)을 연결하는 상호연결망(interconnection network)은 다중링크연결요소 k2를 정의하여 도입하면 (k2x l = n2) 및 (k2x j = m3)의 관계식를 갖는 다중연결링크(1610)에 의하여 (n2, m3) 완전 셔플(Full shuffle) 형태로 결합된다.In addition, the same interconnection network connecting the switching stage 1200 and the coupling stage 1300 is defined by introducing a multilink connection element k 2 (k 2 xl = n 2 ) and (k 2 xj = m 3) having gwangyesikreul by multiple connecting link (1610) (n 2, m 3 in) is coupled to a full shuffle (full shuffle) form.
이에 따라, 분배결합 패킷 스위칭 장치(1000)의 네트워크 공간구조(topology)는 (m1i, n3l, i, j, l, k1, k2)로 이루어진 변수들로 기술될 수 있다. 따라서, (k1= k2= 1, m1i= m1, n3l= n3)인 경우, 분배결합 스위칭 장치(1000)는 네트워크 공간구조(topology) 측면에서 "CLOS" 스위치 네트워크과 동일하다. 또한, (m1i= m1, n3l= n3)인 경우, 네트워크 공간구조(topology) 요소인 (m1, n3, i, l)를 이용하여 분배결합 패킷 스위칭 장치(1000)의 규모는 (Ni= m1x i), (No= n3x l)로 표시될 수 있다.Accordingly, the network topology of the distributed combining packet switching apparatus 1000 may be described by variables consisting of (m 1i , n 3l , i, j, l, k 1 , k 2 ). Thus, in the case of (k 1 = k 2 = 1, m 1i = m 1 , n 3l = n 3 ), the distributed combining switching device 1000 is the same as the “CLOS” switch network in terms of network topology. In addition, when (m 1i = m 1 , n 3l = n 3 ), the size of the distributed packet switching device 1000 using (m 1 , n 3 , i, l), which is a network topology element. May be represented by (N i = m 1 xi), (N o = n 3 xl).
이하에서는 분배단(1100)에 있는 단위 스위치 모듈(1110,1120,1130)을 분배 스위치(1110,1120,1130)라 한다.Hereinafter, the unit switch modules 1110, 1120, and 1130 in the distribution stage 1100 are referred to as distribution switches 1110, 1120, and 1130.
분배 스위치(1110,1120,1130)는 출력 큐잉(queuing) 방식 스위치이다. 그리고, 분배 스위치(1110,1120,1130) 내부에는 결한단(1300)에 있는 단위 스위치 모들(1310,1320,1330)의 개수와 동일한 1개의 큐(1111~1113)가 구비된다.The distribution switches 1110, 1120, and 1130 are output queuing type switches. The distribution switches 1110, 1120, and 1130 are provided with one queue 1111 to 1113 equal to the number of unit switch modalities 1310, 1320, and 1330 in the defect stage 1300.
분배 스위치(1110,1120,1130)의 m1i개 입력링크(1410)를 통하여 인입되는 패킷은 다중화된 후 패킷의 목적지 정보에 따라 분류되어 그 패킷이 출력되고자 하는 결합단(1300)의 단위 스위치 모듈(1310,1320,1330)과 대응되는 큐(1111~1113)에 인입된다.Packets that are introduced through the m 1i input links 1410 of the distribution switches 1110, 1120, and 1130 are multiplexed and classified according to the destination information of the packets, and then the unit switch module of the combined terminal 1300 to output the packets. The queues 1111 to 1113 correspond to the queues 1310, 1320, and 1330.
분배 스위치(1110,1120,1130) 내부에 있는 n1개 출력단(1510)과 1개 큐(1111~1113)는 n1x l 상호간 매칭 그래프(bipartite matching graph)를 형성한다. 분배 스위치(1110,1120,1130)에 인입되어 큐잉된 패킷들은 본 발명에 따른 내부블록킹 중재기(하기의 도 2)에 의하여 결정되는 출력링크(1510)들을 사용하여 스위칭단(1200)에 있는 단위 스위치 모듈(1210,1220,1230)로 출력된다.The n 1 output terminals 1510 and one queue 1111 to 1113 in the distribution switches 1110, 1120, and 1130 form an n 1 xl bipartite matching graph. Packets entering and queuing at the distribution switches 1110, 1120, and 1130 are units in the switching stage 1200 using output links 1510 determined by an internal blocking arbiter (FIG. 2 below) according to the present invention. Output to the switch module 1210, 1220, 1230.
스위칭단(1200)은 일반적인 출력 버퍼 스위치 또는 크로스바 공간 분할 스위치로 구성된 단위 스위치 모듈(1210,1220,1230)로 구성된다.The switching stage 1200 includes unit switch modules 1210, 1220, and 1230 configured as a general output buffer switch or a crossbar space division switch.
개별 단위 스위치 모듈(1210,1220,1230)은 m2개의 입력링크들을 통하여 인입되는 패킷들을 목적지 정보에 따라 분류하여 그 패킷이 출력되고자 하는 결합단(1300)의 단위 스위치 모듈(1310,1320,1330)에 연결된 n2개의 출력링크(1610)들로 출력한다.The individual unit switch modules 1210, 1220, and 1230 classify incoming packets through m 2 input links according to destination information, and unit switch modules 1310, 1320, and 1330 of the coupling stage 1300 to output the packets. Outputs to n 2 output links 1610 connected to the "
만약, k1=k2=1인 경우, 즉 스위치 패브릭이 단일 링크들로 연결된 경우 스위칭단(1200)의 단위 스위치 모듈(1210~1230)은 단순한 크로스바 공간 분할 스위치 역할을 수행하면 된다.If k 1 = k 2 = 1, that is, when the switch fabrics are connected by single links, the unit switch modules 1210 to 1230 of the switching stage 1200 may serve as simple crossbar space partitioning switches.
그러나, k1=a, k2=b인 경우(여기서 a, b는 1이 아닌 상수), 즉 다중 링크들로 연결된 경우에는 각 출력단 별로 a개의 패킷를 저장할 수 있으며, 개별 출력 버퍼는 b개의 출력링크를 가지고 있는 출력 버퍼 스위치를 사용하여야 한다.However, if k 1 = a, k 2 = b (where a and b are constants other than 1), that is, connected by multiple links, a packet can be stored for each output, and each output buffer can contain b outputs. You must use an output buffer switch with a link.
결합단(1300)은 단위 스위치 모듈인 결합 스위치(1310,1320,1330)로 구성된다.Coupling stage 1300 is composed of a combination switch (1310, 1320, 1330) as a unit switch module.
상기 결합 스위치(1310,1320,1330)는 최소한 출력단별 큐잉을 하는 일반적인 출력 버퍼 스위치 또는 공유 버퍼 스위치들이다.The combination switches 1310, 1320, and 1330 are at least common output buffer switches or shared buffer switches that queue at each output stage.
결합 스위치(1310,1320,1330)는 m3개의 입력링크(1610)들을 통하여 인입되는 패킷을 목적지 정보에 따라 분류하여 해당되는 버퍼(1331,1332)에 큐잉한 후, 그 패킷이 출력되고자 하는 출력단(1710)으로 출력한다.Coupling switches 1310, 1320, and 1330 classify packets coming through m 3 input links 1610 according to destination information, queue them in the corresponding buffers 1331 and 1332, and then output the packets to be output. Output to 1710.
이상에서와 같이, 분배결합 패킷 스위칭 장치(1000)는 다양한 속도(multirate)의 가입자 또는 망 정합 능력을 가지고 있다. 즉, 상대적으로 저속인 단말 가입자(end subscriber)와 대용량 조밀 파장분할 다중화(DWDM : Dense Wavelength Division Multiplexing) 전송 선로를 통하는 초고속 망 정합 장치가 동일한 스위치 패브릭에 직접 접속될 수 있는 구조이다. 이러한 특성은 차세대망에서 요구되는 한 번의 스위칭(one hpp switching)을 위하여 필수적인 기능이다.As described above, the distributed combining packet switching apparatus 1000 has a multirate subscriber or network matching capability. That is, a relatively low speed end subscriber and a high speed network matching device through a large capacity Dense Wavelength Division Multiplexing (DWDM) transmission line can be directly connected to the same switch fabric. This feature is essential for one-hpp switching required in next-generation networks.
분배결합 패킷 스위칭 장치(1000)는 다양한 회선 속도(multirate)를 지원하기 위하여 물리적으로 서로 다른 속도로 동작하는 링크를 이용하거나, 특정한 속도로 동작하는 링크 다수개를 그룹으로 사용하는 그룹 링크 방식이 사용될 수 있다. 이 때, 그룹 링크 방식은 시스템 모듈성 측면에서 우수하나, 투입 자원이 많이 요구되는 단점이 있다.The distributed combining packet switching apparatus 1000 may use a link that operates at different physical speeds or a group link method that uses a plurality of links operating at a specific speed as a group to support various line rates. Can be. At this time, the group link method is excellent in terms of system modularity, but has a disadvantage of requiring a lot of input resources.
분배결합 패킷 스위칭 장치(1000)의 내부 연결은 상대적으로 균등한 구조이다. 즉, 다중연결링크(1510,1610)에 의하여 (n1, m2)또는 (n2, m3)형태의 완전 셔플(Full shuffle)로 결합된다. 이때, 임의의 분배 스위치 입력단 링크(1410) 속도를 vi, 분배단(1100)의 출력단 링크(1510) 속도를 vj, 스위칭단(1200)의 출력링크(1610)속도를 vk라고 가정하면, "m1ix vi≤ n1x vj≤ n2x vk" 인 경우, 분배결합 패킷 스위칭 장치(1000)는 논 블록킹 (non-blocking)이다.The internal connection of the distributed combining packet switching device 1000 is a relatively uniform structure. That is, by the multiple connection link (1510, 1610) (n 1 , m 2 ) or (n 2 , m 3 ) form of a full shuffle (Full shuffle) is coupled. In this case, it is assumed that any distribution switch input stage link 1410 speed is v i , output stage link 1510 speed of the distribution stage 1100 is v j , and output link 1610 speed of the switching stage 1200 is v k . In this case, "m 1i xv i ≤ n 1 xv j ≤ n 2 xv k ", the distributed combining packet switching device 1000 is non-blocking.
도 2 는 본 발명에 따른 상기 도 1의 분배결합 패킷 스위치용 내부 블록킹 중재기의 일실시예 구성도이다.FIG. 2 is a diagram illustrating an embodiment of an internal blocking arbiter for the distributed combining packet switch of FIG. 1 according to the present invention.
도 2에 도시된 바와 같이, 분배결합 패킷 스위치용 내부 블록킹 중재기(2000)는 분배단(1100)에 있는 분배 스위치(1110,1120,1130)가 가지고 있는 1개의 큐(1111~1113)에 대하여 패킷 입출력을 제어하는 i개의 큐 제어기(Queue controller)(2110,2120,2130), 상기 큐 제어기(Queue controller)(2110,2120,2130)에 있는 1개의 큐(1111~1113)에 저장되어 있는 패킷 개수를 입력으로 하여 분배 스위치(1110,1120,1130)의 출력링크(1510) 또는 스위칭단(1200)의 단위 스위치 모듈(1210,1220,1230)에 배분하는 분배중재기(distribution scheduler) (2210,2220,2230), 각각 n2bits 분배정보(22111~22113)를 링크에 할당된 log(1) bits 큐 넘버로 인코딩하는 인코더(22120,22220,22320), 인코딩된 log(1) bits 분배정보를 디코딩하여 n2bits 분배정보로 복원하는 디코더(23120,23220,23320), 분배중재기(2210~2230)에서 분배된 패킷들의 스위칭단(1200) 또는 결합단(1300) 입출력 링크 경합을 중재하는 j개의 결합 중재기(2310,2320,2330)를 포함한다.As shown in FIG. 2, the internal blocking arbiter 2000 for the distributed combining packet switch is configured for one queue 1111 to 1113 included in the distribution switches 1110, 1120, and 1130 in the distribution stage 1100. I queue controllers 2110, 2120, and 2130 that control packet input and output, and packets stored in one queues 1111 to 1113 in the queue controllers 2110, 2120, and 2130. Distribution scheduler 2210 for distributing to the output link 1510 of the distribution switch 1110, 1120, 1130 or the unit switch module 1210, 1220, 1230 of the switching stage 1200 as the number thereof. 2220, 2230, encoders 22120, 22220, and 22320 encoding n 2 bits distribution information (22111 to 22113) into log (1) bits queue numbers allocated to the link, and encoded log (1) bits distribution information, respectively. decoder for decoding the restored to 2 n bits distribution information (23120,23220,23320), recovers only the switching of packets in a distributed (2210-2230) (1200) of the distribution or Hapdan 1300 comprises a combination of arbitration j groups (2310,2320,2330) that mediates the input and output link contention.
분배결합 패킷 스위칭 장치(1000)용 내부 블록킹 중재기(2000)는 i개의 큐 제어기(Queue controller)(2110,2120,2130), i개의 분배중재기(distribution scheduler)(2210,2220,2230), j개의 결합중재기(2310,2320,2330), 그리고 이들을 연결하는 신호 연결선(21111~21131, 21211, 21311 등)으로 구성되어 있다. 여기서, 상기 신호 연결선은 상기 도 1의 상호연결망(interconnection network)과 유사한 구조위상(topology)을 가지며, 신호 방향이 반대인 2개의 망으로 구성되어 있다.The internal blocking arbiter 2000 for the distributed combining packet switching device 1000 includes i queue controllers 2110, 2120, and 2130, i distribution schedulers 2210, 2220, and 2230. j coupling arbitrators 2310, 2320, 2330, and signal connection lines 21111 to 21131, 21211, 21311, and the like. Here, the signal connection line has a topology similar to that of the interconnection network of FIG. 1 and is composed of two networks having opposite signal directions.
큐 제어기(Queue controller)(2110,2120,2130)와 분배중재기(2210,2220,2230)의 동작을 단위 스위치 모듈 크기가 동일하게 3 x 3인 경우를 일예로 들어 보다 상세히 설명하기로 한다.The operation of the queue controllers 2110, 2120, 2130 and the distribution mediators 2210, 2220, 2230 will be described in more detail with an example where the unit switch module size is the same as 3 × 3.
i=j=l=3, k1=k2=1인 경우, 즉 분배단(1100), 스위칭단(1200), 결합단(1300)의 단위 스위치 모듈 크기가 동일하게 3 x 3이며, 이들간을 단일 링크로 연결하는 경우 큐 제어기(2110)는 3개의 결합 스위치(1310,1320,1330)별로 구분된 패킷 큐를 제어한다. 여기서, 큐(21110)에 대한 패킷 출력은 분배 스위치(1110)에 있는 3개의 출력링크(1510)를 통하여 이루어지며, 여기서 이들 3개의 출력링크들을 "0", "1","2"로 인식 번호를 부여한다. 도 2에 도시된 대로, 패킷 출력시 "21110" 큐는 출력링크를 "0->2->1"의 우선 순위, "21120" 큐는 "1->0->2"의 우선순위, 그리고 "21130" 큐는 "2->1->0"의 우선순위로 사용할 수 있다. 다수의 큐들("21110" ~ "21130")이 특정한 출력링크를 서로 사용하기 위하여 경쟁하는 경우에는 해당 출력링크에 대한 사용 우선 순위가 가장 높은 큐가 경합에서 승리한다. 일예로 모든 큐들("21110" ~ "21130")에 큐잉된 패킷들이 있는 경우에는 "0"번 링크는 "21110" 큐; "1"번 링크는 "21120" 큐; "2"번 링크는 "21130" 큐를 할당하여 서빙한다.When i = j = l = 3, k 1 = k 2 = 1, i.e., the unit switch module sizes of the distribution stage 1100, the switching stage 1200, and the coupling stage 1300 are equally 3 x 3, and these In the case of connecting the interconnection through a single link, the queue controller 2110 controls packet queues divided by three coupling switches 1310, 1320, and 1330. Here, the packet output to the queue 21110 is made through three output links 1510 in the distribution switch 1110, where these three output links are recognized as "0", "1", "2". Give a number. As shown in Fig. 2, when outputting a packet, the "21110" queue has an output link priority of "0->2->1", the "21120" queue has a priority of "1->0->2", and The "21130" queue may be used with priority of "2->1->0". When a plurality of queues "21110" to "21130" compete to use a particular output link, the queue having the highest use priority for that output link wins the contention. For example, if there are packets queued in all the queues "21110" to "21130", the link "0" is a "21110"queue; Link "1" is queue "21120"; Link "2" is assigned to serve the "21130" queue.
즉, 분배중재기(22110)는 개별 큐들에서 출력 요구있는 경우 사용할 수 있는 출력링크들을 우선 순위에 따라 사이클릭(cyclic)하게 할당한다. 이 때, 개별 큐당 할당되어 질 수 있는 출력링크의 개수는 단위 패킷 시간에 최대로 분배 스위치(1110)에 인입되어 저장될 수 있는 패킷들을 출력링크 "단위 패킷 출력 시간"에 모두 인출할 수 있는 만큼 또는 전체 링크 숫자가 된다. 여기서 "단위 패킷 출력 시간"은 분배스위치가 출력링크을 사용하여 한 개의 패킷을 출력하는 데 걸리는 시간을 의미한다.That is, the distribution mediator 22110 cyclically allocates the output links that can be used when there is an output request in the individual queues in order of priority. At this time, the number of output links that can be allocated per individual queue is maximum in unit packet time, as much as the packets that can be drawn in and stored in the distribution switch 1110 at the output link "unit packet output time". Or the total link number. Here, "unit packet output time" means the time taken for the distribution switch to output one packet using the output link.
또한, 위에서 언급한 대로 사이클릭(cyclic)하게 출력링크를 큐들에 배분하는 경우, 동일한 우선순위로 서로 다른 큐에 동일한 출력링크가 동일한 패킷 출력 시간에 할당되어서는 안된다.In addition, when distributing an output link to queues cyclically as mentioned above, the same output link should not be assigned to different queues at the same priority at the same packet output time.
즉, 한 개의 큐에 "0->2->1", 다른 큐에 "1->2->0"으로 출력링크를 할당하는 경우 2번 링크가 두 번째 우선순위에서 중복되므로 위에서 전술한 바와 같이 큐에 대한 링크할당 방법에 위배된다.That is, when the output link is allocated to one queue as "0-> 2-> 1" and the other queue as "1-> 2-> 0", link 2 is overlapped at the second priority. Likewise, it violates the link allocation method for queues.
일반적으로, 분배 스위치(1110) 큐의 개수에 비하여 출력링크의 숫자가 적을 경우, 즉 큐는 4개인데 링크는 2개인 경우, 두 개의 링크를 "0"과 "1"로 4개의 큐를 "Q1", "Q2", "Q3", "Q4"로 표시하면, "Q1: 0->1", "Q2: 1->0", "Q3: 0->1", "Q4: 1->0"식으로 우선 순위를 가지며 각각의 큐에 링크들이 할당되어야만 한다. 이에 따라, 위와 같은 할당을 위해서는 두 개의 패킷 인출 사이클("단위 패킷 출력 시간")이 필요하다. 즉, 첫 번째 사이클에서는 (Q1: 0->1, Q2: 1->0), (Q3: 0->1, Q4: 1->0)의 시간 및 공간 우선 순위로 링크를 할당하며, 두 번째 사이클에서는 (Q3: 0->1, Q4: 1->0), (Q1: 0->1, Q2: 1->0)의 시간 및 공간 우선 순위로 링크들을 할당한다. 여기서, 괄호는 동일한 공간 우선 순위임을 의미한다.In general, if there are fewer output links than the number of queues of the distribution switch 1110, that is, if there are four queues but two links, two queues may be set to "0" and "1". Q1 "," Q2 "," Q3 ", and" Q4 "," Q1: 0-> 1 "," Q2: 1-> 0 "," Q3: 0-> 1 "," Q4: 1- Priority> 0 "and links must be assigned to each queue. Accordingly, the above allocation requires two packet fetch cycles ("unit packet output time"). That is, in the first cycle, links are allocated with the temporal and spatial priority of (Q1: 0-> 1, Q2: 1-> 0), (Q3: 0-> 1, Q4: 1-> 0). In the first cycle, links are allocated with the temporal and spatial priority of (Q3: 0-> 1, Q4: 1-> 0) and (Q1: 0-> 1, Q2: 1-> 0). Here, parenthesis means that the same space priority.
서로 다른 큐 제어기(2110,2120,2130)에 소속된 큐들에게는 동일한 결합 스위치(1310)에 해당하는 큐들(21110, 21210, 21310)이 동일한 출력링크를 동일한 우선순위로 동일한 패킷 출력 시간에 할당되지 않도록 사이클릭(cyclic)하게 배정한다. 즉, 1 번째 결합단을 향하는 패킷들을 저장하는 큐들(21110, 21210, 21310)은 도 2에 도시된 바와 같이 "0->2->1", "2->1->0", "1->0->2"의 출력링크 배정 우선 순위를 가질 수 있다.For queues belonging to different queue controllers 2110, 2120, and 2130, the queues 21110, 21210, and 21310 corresponding to the same combined switch 1310 are not allocated the same output link with the same priority at the same packet output time. Assign cyclically. That is, the queues 21110, 21210, and 21310 which store packets destined for the first combining end are “0-> 2-> 1”, “2-> 1-> 0”, and “1” as shown in FIG. 2. Output link allocation priority of-> 0-> 2 ".
이러한 큐별 출력링크 할당은 분배 중재기(distribution scheduler)(2210,2220,2230)가 수행한다. 즉, 큐 제어기(Queue controller)(2110)가 신호선(21111,21121,21131)을 통하여 해당 큐에 저장된 패킷 개수 정보를 분배 중재기(2210)로 보내면 분배 중재기(2210)는 동일한 출력링크가 동일한 인출 사이클에 단 한 개의 큐에 할당되면서 개별 큐별로 위에서 언급한 공간 우선 순위로 출력링크들이 배정되도록 제어한다. 도 2에 도시된 바와 같이 분배 중재기(2210)에는 종축으로 큐가 대응하며, 횡축으로 출력링크가 대응되도록 3등분되어 있는 행렬(22110,22210,22310)이 표시되어 있다. 행렬의 각 요소들은 검은색무늬, 체크무늬, 사선무늬로 구분되어 있으며, 이들은 기술된 순서의 공간 우선순위를 의미한다.This queue-specific output link allocation is performed by a distribution scheduler 2210, 2220, and 2230. That is, when the queue controller 2110 sends the packet number information stored in the corresponding queue through the signal lines 21111, 21121, and 21131 to the distribution arbiter 2210, the distribution arbiter 2210 has the same output link. It is assigned to only one queue during the fetch cycle and controls the output links to be assigned to the above-mentioned space priority for each queue. As shown in FIG. 2, the distribution arbiter 2210 displays matrices 22110, 22210, and 2210 that are divided into three sections so that the cues correspond to the vertical axis and the output links correspond to the horizontal axis. Each element of the matrix is divided into black, checkered, and diagonal lines, which represent spatial priorities in the order described.
분배 중재기(2210,2220,2230)는 개별 큐에 대한 분배단 출력링크들에 대하여 경합 제어를 수행한 후, 경합 제어 결과를 신호선(22111~22113)을 이용하여 인코더(22120)로 출력한다. 이들 분배정보(22111~22113, 22211, 22311)들은 각각 n1bits이며 특정한 분배 스위치 출력링크당 특정한 큐가 할당되어 있음을 표시한다. 이러한 특성을 이용하여 개별 분배 중재기(2210,2220,2230)당 총 l x n1bits인 이들 분배정보(22111~22113)를 출력링크당 할당된 큐 넘버로 인코더(22120,22220,22320)에서 인코딩하여 n1x log(1) bits로 축약한 분배정보(22114~22116)를 결합 중재기(2310,2320,2330)로 출력한다. 따라서, 분배 중재기(2210~2230)에서 출력되는 분배 경합 제어 결과는 n1개의 분배단 출력링크별로 할당된 큐 넘버에 해당하는 log(1) bits이며, 여기에 우선 순위 정보를 나타내기 위한 인출 사이클 식별 정보가 부가될 수 있다.The distribution arbiters 2210, 2220, and 2230 perform contention control on the distribution end output links for the individual queues, and then output the contention control results to the encoder 22120 using the signal lines 22111 to 22113. These distribution information (22111 to 22113, 22211, 22311) are n 1 bits, respectively, and indicate that a specific queue is assigned per specific distribution switch output link. Using these characteristics, the encoders 22120, 22220, and 22320 encode these distribution information 22111 to 22113, which are a total of lxn 1 bits per individual distribution arbiters 2210, 2220, and 2230, to a queue number allocated per output link. Distribution information (22114 to 22116), abbreviated as n 1 x log (1) bits, is output to the combined arbitrators 2310, 2320, and 2330. Accordingly, the distribution contention control result output from the distribution arbiters 2210 to 2230 is log (1) bits corresponding to the queue number allocated to each of the n 1 distribution end output links, and is fetched to indicate priority information. Cycle identification information may be added.
각각의 분배 중재기(2210,2220,2230)에 의하여 분배 스위치의 출력단을 통하여 큐잉된 패킷들이 인출될 수 있도록 경합 제어된 분배 정보들(22111~22113, 22211, 22311)은 동일한 스위칭단(1200) 단위 스위치 모듈(1210,1220,1230)별로 분류되어 결합 중재기(2310~2330)에 의하여 스위칭단(1200) 출력링크들에 대하여 재차 경합 제어된다. 즉, 도 2에서 큐(21110, 21210, 21310)에 대한 분배제어 결과인 신호(22111, 22211, 22311)는 동일한 스위칭단(1200) 단위 스위치 모듈(1210,1220,1230)로 향하는 패킷들에 대한 분배 경합·제어 결과 신호들이므로, 결합 중재기(2310)에 인입되어 스위칭단(1200) 출력링크(1610)에 대한 경합 제어가 수행된다.The contention-controlled distribution information 22111 ˜ 22113, 22211, and 22311 may be fetched by the respective distribution arbiters 2210, 2220, and 2230 so that packets queued through the output terminal of the distribution switch may be fetched. Classified by the unit switch module (1210, 1220, 1230) and the contention control again for the switching stage 1200 output links by the coupling arbitrator (2310 ~ 2330). That is, in FIG. 2, the signals 22111, 22211, and 22311, which are the distribution control results for the queues 21110, 21210, and 21310, correspond to packets destined for the same switching stage 1200 as the switch module 1210, 1220, 1230. As it is the distribution contention / control result signals, the contention control is input to the coupling arbiter 2310 to perform contention control on the output stage 1610 of the switching stage 1200.
결합 중재기(2310,2320,2330)는 결합단(1300) 입력링크(1610) 또는 스위칭단(1200) 출력링크(1610)에서 발생하는 패킷 경합을 제어한다. log(1) bits로 축약되어 전달되는 중재정보(22114~22116, 22214, 22314)를 디코딩한 정보(23111)는 특정 큐 넘버에 해당하는 비트가 논리치 참(true)을 나타내면 분배 스위치의 해당되는 출력링크를 통하여 결합단(1300)으로 패킷이 인출될 수 있음을 의미한다. 서로 다른 분배 스위치에서 동일한 스위칭단 단위 스위치 모듈로 최대 i x k1개의 패킷이 인입될 수 있으며, 이러한 특정 패킷 인입 사이클에서 인입된 패킷은 후속되는 패킷 출력 사이클에 k2개의 출력링크(1610)를 통하여 특정한 결합 스위치(1310)로 입력될 수 있다.Coupling arbiters 2310, 2320, and 2330 control packet contention occurring at the coupling stage 1300, the input link 1610, or the switching stage 1200, the output link 1610. The information 23111 decoded the arbitration information 22114 ˜ 22116, 22214, and 22314, which are abbreviated to log (1) bits, indicates that a bit corresponding to a specific queue number indicates a logical value true. This means that the packet can be drawn out to the coupling end 1300 through the output link. A maximum of ixk 1 packets can be introduced from different distribution switches to the same switching stage unit switch module, and the incoming packets in this particular packet entry cycle are specified via k 2 output links 1610 in subsequent packet output cycles. It may be input to the coupling switch 1310.
결합 중재기(2310,2320,2330)는, 1개의 결합단 당 한 개의 스위칭단(1200)내 단위 스위치 모듈(1210,1220,1230)에 대하여 생성된 i x k1개의 분배중재정보에서 최종적으로 출력 허용될 수 있는 k2개를 선정하는 기능을 스위칭단(1200)의 모든 단위 스위치 모들(1210,1220,1230)에 대하여 수행한다.Coupling the arbiter (2310,2320,2330) is finally allowed output from the ixk one distributing arbitration information generated for the one coupling end, a single switching stage 1200, a unit switch modules (1210,1220,1230) per The function of selecting k 2 which may be performed is performed for all the unit switch modules 1210, 1220, 1230 of the switching stage 1200.
따라서, 결합 중재기(2310,2320,2330)는 분배 중재기(2210,2220,2230)의 출력신호들로 구성된 (i x k1) x l 분배중재 신호 행렬(23110,23210,23310)에서 논리치가 참인 행렬 요소들을 매 1당 k2개 선정하는 작업을 수행한다. 이러한 선정 작업은 상기한 바와 같이 목적지별 큐가 사용될 수 있는 출력링크 선정 우선 순위 절차에 따르는 공간 우선 순위에 따라 진행되며, k1=k2=1인 경우 고정된 우선순위를 갖는 단순한 라운드-로빈 매칭 작업과 동일하다,Accordingly, the combined arbiters 2310, 2320, 2330 are matrixes whose logical values are true in the (ixk 1 ) xl distributed mediation signal matrix 23110, 2210, 2233 composed of the output signals of the distributed arbiters 2210, 2220, 2230. Select k 2 elements per each time. This selection process is performed according to the spatial priority according to the output link selection priority procedure in which the destination-specific queue can be used as described above, and simple round-robin with a fixed priority when k 1 = k 2 = 1. Same as the matching operation,
도2에 도시된 바와 같이 결합 중재기 행렬(23110,23210,23310)은 k1=k2=1인 경우이며, 종축으로 3개의 큐가 대응하며, 횡축으로 3개의 링크가 대응되도록 3등분되어 있는 행렬이 표시되어 있다, 행렬의 각 요소들은 검은색무늬, 체크무늬, 사선무늬로 구분되어 있으며, 이들은 언급한 순서의 공간 우선순위를 갖는다. 여기서, 결합 중재기(2310)는 각 열별로 검은색무늬 행에서 시작하여 체크무늬 행 방향으로 진행하는 공지된 라운드-로빈 매칭 작업에 의하여 결합단 입력링크들에 대한 경합 제어를 수행한다.As shown in Fig. 2, the coupling arbiter matrices 23110,23210,23310 are cases where k 1 = k 2 = 1, and three cues correspond to the vertical axis, and three links correspond to the three axes on the horizontal axis. Each matrix in the matrix is divided into black, checkered, and diagonal lines, each of which has a spatial priority in the order mentioned. Here, the coupling arbiter 2310 performs contention control for the coupling end input links by a known round-robin matching operation starting from a black pattern row for each column and proceeding in a checkered row direction.
결합 중재기(2310,2320,2330)에 의하여 분배단 및 스위칭단 출력링크들에 대한 내부 블록킹 경합 제어가 수행되어 해당 링크를 통하여 분배중재된 목적지별 큐가 패킷을 전송할 수 있는지 여부를 나타내는 행렬(23110,23210,23310)내에 있는 중재결과는 인코더 (23120,23220,23320)에 의하여 인코딩되어 1 bits 결과 정보(23112)로 변환되어 분배 중재기(2210)내 디코더(22120)로 인입되면 디코더(22120)에 의하여 해당 중재 사이클 초기에 입력되어 저장된 결합중재요청신호(22111~22113)와 비교되어 디코딩되어(21112,21122,21132) 큐 제어기(2110,2120,2130)로 목적지 및 큐별로 분배된다. 이때, 큐 제어기(2110,2120,2130)는 이들 중재 결과 정보에 표기된 대로 자기 자신의 큐에 할당된 출력 링크들에 HOL에 저장된 패킷순으로 순차적으로 패킷들을 인출하여 분배단으로 전송하도록 제어한다.An internal blocking contention control is performed on the distribution end and the switching end output links by the joint arbitrators 2310, 2320, and 2330 so that a destination-specific queue distributed through the corresponding link can transmit a packet. The arbitration results in 23110,23210,23310 are encoded by the encoders 23120,23220,23320 and converted into 1 bit result information 23112, which then enters the decoder 22120 in the distribution arbiter 2210. ) Is compared with the combined arbitration request signals 22111 ˜ 22113 inputted at the beginning of the arbitration cycle, decoded (21112, 21122, 21132), and distributed to the queue controllers 2110, 2120, 2130 by destination and queue. At this time, the queue controllers 2110, 2120, and 2130 control to fetch packets sequentially in the order of packets stored in the HOL to output links allocated to their own queues as described in the arbitration result information, and transmit them to the distribution terminal.
이상에서와 같이, 분배결합 패킷 스위치용 내부 블록킹 중재기(2000)는 단위 스위칭 모듈들이 사용할 링크들에 대하여 매 중재 사이클당 고정적인 공간 우선순위를 부여하는 특징을 갖는다. 여기서, 고정적인 링크 공간 우선순위 할당을 매 인출 중재 사이클당으로 한정하는 이유는, 링크 회선별 스위치 성능 공평성을 위하여 매 중재 사이클당 공간 우선순위 할당을 재설정할 수 있다는 의미이며, 이를 위하여 스위치 전체적으로 인출 중재 사이클 정보가 동기되어 공급될 수 있어야 한다. 이러한 특징에 기인하여 단 한번의 인출 중재 사이클, 즉 분배 중재기 및 결합 중재기가 단 한 번의 중재를 실시하여도 모든 스위치 입력 부하 조건에서 90%이상의 처리 효율을 얻을 수 있음을 시뮬레이션으로 얻을 수 있었다.As described above, the internal blocking arbiter 2000 for the distributed combining packet switch has a feature of assigning a fixed spatial priority to every arbitration cycle for the links to be used by the unit switching modules. Here, the reason for limiting the fixed link space priority allocation to each outgoing arbitration cycle is that the space priority allocation for each arbitration cycle can be reset for the fair performance of the switch per link circuit. Arbitration cycle information must be available in synchronization. Due to this feature, we can simulate that only one withdrawal arbitration cycle, that is, distribution arbiter and combined arbiter, can achieve more than 90% of processing efficiency under all switch input load conditions even with one arbitration.
모든 분배스위치(1110~1130)내의 모든 목적지별 큐들이(1111등) 큐잉된 패킷을 가지고 있는 경우, 모든 목적지별 큐들은 링크 할당 공간 우선 순위에 따라 확정적으로 할당되는 전용 패킷 인출 링크들을 k1개 가지게 된다. 이에 따라, 랜덤하고 공평한 패킷 입력 조건에서 이들은 M/D/1 큐로 동작한다. 따라서, 이러한 경우 분배결합 패킷 스위치(1000)의 처리 지연 시간은 이상적인 출력버퍼 스위치의 처리지연 시간을 Do라 하면 (k1+1)Do/k1값을 가지며, k1이 1보다 충분히 큰 경우 이상적인 출력 버퍼 특성에 근접하며, k1이 1인 경제적인 구조에서도 출력버퍼 스위치 성능의 2배에 불과한 우수한 성능을 가지고 있다. 물론, 스위치 포화 처리율은 100%이다. 즉, 엄격하게는 논 블록킹(non-blocking)이다.If all destination queues in all distribution switches 1110 to 1130 have queued packets, then all destination queues have k 1 dedicated packet outgoing links that are definitely allocated according to link allocation space priority. Have. Thus, under random and fair packet input conditions, they operate as M / D / 1 queues. Therefore, in this case, the processing delay time of the distributed combining packet switch 1000 has a value of (k 1 +1) Do / k 1 when Do is the processing delay time of the ideal output buffer switch, and k 1 is sufficiently larger than 1. It is close to the ideal output buffer characteristics, and has an excellent performance of only twice the output buffer switch performance even in an economical structure with k 1 . Of course, the switch saturation throughput is 100%. That is, strictly non-blocking.
이제, 도 3과 도 4를 이용하여 내부 블록킹 중재기용 분배 중재기(2210,2220,2230)의 구성 및 그 동작을 보다 상세하게 설명한다.3 and 4, the configuration and operation of the distribution arbiters 2210, 2220, and 2230 for the internal blocking arbiter will be described in more detail.
도4는 분배 중재기의 구성요소와 그 동작 알고리즘을 보이고 있으며,4 shows the components of the distribution arbiter and its operation algorithm,
도3은 도4의 구성요소를 25개 사용하여 구성한, 5개의 큐와 출력링크가 5개인 분배단 스위치용 분배 중재기를 보여주고 있다.FIG. 3 shows a distribution arbiter for a distribution stage switch with five cues and five output links, constructed using 25 components of FIG.
도 4에 도시된 바와 같이, 분배 중재기의 구성요소(4000)는 동작 초기화 신호(rst), 동작 동기 신호(tck), 큐의 잔여 개수 입력정보(rqn_i), 큐의 잔여 개수 출력정보(rqn_o), 높은 공간 우선 순위를 갖는 다른 구성요소에 의하여 해당되는 링크가 선약되었는지를 나타내는 링크 예약 입력 정보(grh_i), 링크 예약 출력 정보(grh_o), 그리고 해당 구성요소에 대응하는 큐와 링크에 패킷 출력이 예약되었는지를 나타내는 정보(odisel)를 포함하는 입출력 신호를 가지고 있다.As shown in FIG. 4, the component 4000 of the distribution arbiter may include an operation initialization signal rst, an operation synchronization signal tck, remaining number of queue input information rqn_i, and remaining number of queue output information rqn_o. Link reservation input information (grh_i), link reservation output information (grh_o) indicating whether the corresponding link has been selected by another component having a high spatial priority, and outputting packets to queues and links corresponding to the component. It has an input / output signal containing information (odisel) indicating whether this reservation is made.
분배 중재기의 구성요소(4000)는 큐의 잔여 개수 정보인 "rqn_i"와 해당되는 출력링크에 이전 구성요소에 의하여 패킷이 할당되었는가를 나타내는 정보인 "grh_i"를 이용하여 다음과 같은 동작을 수행한다.The component 4000 of the distribution arbiter performs the following operations using "rqn_i", which is information about the remaining number of queues, and "grh_i", which is information indicating whether a packet has been allocated by a previous component in a corresponding output link. do.
만약, 큐의 잔여 개수 정보 "rqn_i"가 "0"이 아니고(즉, 할당할 수 있는 잔여 패킷이 있으면) "grh_i"가 "0"인 경우(즉, 보다 높은 공간 우선 순위를 갖는 이전 구성요소에 의하여 해당되는 출력링크가 선점되지 않은 경우), "rqn_i"에서 "-1"한 값을 "rqn_o"로 할당하며, "grh_o"에는 논리치 "1"을 할당하여 출력한다. 이때, "odisel"은 해당 큐와 해당 출력링크에 패킷이 할당되었음을 의미하는 논리치 "1"을 갖는다.If the remaining number information "rqn_i" of the queue is not "0" (that is, if there are remaining packets that can be allocated) and "grh_i" is "0" (that is, the previous component with a higher space priority) If the corresponding output link is not preempted), the value "-1" in "rqn_i" is assigned to "rqn_o", and the logical value "1" is assigned to "grh_o" and output. At this time, "odisel" has a logical value "1" which means that the packet is allocated to the corresponding queue and the corresponding output link.
그러나, 큐의 잔여 개수 정보 "rqn_i"가 "0"이 아니고(즉, 할당할 수 있는 잔여 패킷이 있으면) "grh_i"가 "0"이 아닌(즉, 보다 높은 공간 우선 순위를 갖는 이전 구성요소에 의하여 해당되는 출력링크가 선점된 경우) 경우, "rqn_o"는 "rqn_i" 입력값, "grh_o"에는 "grh_i" 입력치가 그대로 할당되어 출력된다. 동일한 경우, "odisel"은 해당 큐와 해당 출력링크에 패킷이 할당되지 않았음을 의미하는 논리치 "0"을 갖는다.However, the remaining component information "rqn_i" of the queue is not "0" (that is, if there are remaining packets that can be allocated) and "grh_i" is not "0" (ie, the previous component with higher space priority). In the case where the corresponding output link is preempted, " rqn_o " is inputted with the " rqn_i " input value and " grh_o " In the same case, "odisel" has a logical value of "0" which means that no packet is allocated to the corresponding queue and the corresponding output link.
그리고, 큐의 잔여 개수 정보 "rqn_i"가 "0"인(즉,할당할 수 있는 잔여 패킷이 없으면) 경우에도, 역시 "rqn_o"는 "rqn_i" 입력값, "grh_o"에는 "grh_i" 입력치가 그대로 할당되어 출력된다. 또한, "odisel"은 해당 큐와 해당 출력링크에 패킷이 할당되지 않았음을 의미하는 논리치 "0"을 갖는다.Further, even when the remaining number information "rqn_i" of the queue is "0" (that is, no remaining packets that can be allocated), the "rqn_o" input value "rqn_i", "grh_o" input value "grh_i" It is assigned as is and output. In addition, "odisel" has a logical value "0" which means that no packet is allocated to the corresponding queue and the corresponding output link.
상기한 바와 같은 동작은 도4의 "4100"으로 표기된 구성요소 동작 알고리즘과 동일하다. 도4에 표기된 "rst"와 "tck" 신호는 매 중재 사이클을 제어하는 동기 클럭 및 구성요소 동작 초기화용 신호이다.The operation as described above is the same as the component operation algorithm indicated by "4100" in FIG. The " rst " and " tck " signals shown in Fig. 4 are synchronization clock and component operation initialization signals that control every arbitration cycle.
도3은 구성요소(4000)들로 이루어진 분배 중재기(3000)의 한 구성 예를 보여주고 있다.3 shows an example of a configuration of a distribution arbiter 3000 consisting of components 4000.
분배 중재기(3000)는 공간 스위치(3200), 도4의 구성요소들(3800,3900 등), 이들을 연결하는 연결 신호선(3600,3700), 분배 중재기 입출력 신호단(3100, 3500)으로 구성된다.The distribution arbiter 3000 includes a space switch 3200, components of FIG. 4 (3800, 3900, etc.), connection signal lines 3600 and 3700 connecting them, and distribution arbitrator input and output signal terminals 3100 and 3500. do.
공간 스위치(3200)는 큐(1111~1113)들에 대한 출력링크 공간 우선 순위를 패킷 인출 사이클("단위 패킷 출력 시간") 및 분배 중재기의 스위치내 위치에 따라 가변적으로 할당하는 기능을 수행한다.The spatial switch 3200 variably assigns the output link spatial priority for the queues 1111 to 1113 according to the packet fetch cycle ("unit packet output time") and the position in the switch of the distribution arbiter. .
공간 스위치(3200)의 입력은 큐 제어기(2110,2120,2130)에서 방출되는 큐잉된 패킷 갯수 정보신호(21111~21131)(3100)와 경과된 패킷 인출 사이클 갯수에 분배스위치 위치 정보를 modulo 연산으로 합한 신호인 (3400)이며, "3400"의 신호에 따라 입력신호(3100)들을 cyclic하게 회전하여 출력단(3300)으로 출력한다. 여기서 분배스위치(1110~1130) 위치 정보는 분배스위치모듈의 스위치내 위치 순서를 (1110)위치는 0, (1120)위치는 1식으로 할당한 것을 의미한다. 즉 공간 스위치(3200)은 "3400"신호에 따라 입력신호(3100)들을 회전하여 출력시키는 barrel shifter 동작을 수행한다.The input of the spatial switch 3200 modulates the distribution switch position information to the queued packet number information signal 21111 ˜ 21131 (3100) and the number of elapsed packet fetch cycles emitted by the queue controllers 2110, 2120, and 2130 by modulo operation. The sum signal is 3400, and the input signal 3100 is cyclically rotated and output to the output terminal 3300 according to the signal of "3400". Here, the position information of the distribution switch 1110 to 1130 means that the position order in the switch of the distribution switch module is assigned to the 1110 position and the 1120 position. That is, the space switch 3200 performs a barrel shifter operation of rotating and outputting the input signals 3100 according to the "3400" signal.
도 4의 구성요소들로 사각형 행렬을 이루는 분배 중재기의 핵심 부분은 열축(column)에 큐들이 대응하며, 행축(row)에 분배 스위치의 출력링크가 대응한다. 대각선 축상에 있는 구성요소에 대한 큐의 잔여 개수 입력정보 "rqn_i"는 공간 스위치(3200)에 의하여 결정되는 공간 우선 순위에 따라 입력되는 큐 제어기의 잔여 패킷 정보를 입력받는다. 또한, 대각선 축상에 있는 구성요소에 대한 링크 예약 정보 "grh_i"는 논리치 "0"(3810)으로 고정되어 인입되므로 이들 위치가 분배중재의 시작점이며, 최고 우선 순위를 갖는다. 그리고, 대각선축(diagonal)에 위치한 구성요소들은 하드웨어 구현시 비동기 피드백 루우프를 차단하는 역할도 수행한다.The core part of the distribution arbiter, which forms a rectangular matrix with the components of Fig. 4, the queues correspond to the column axis, and the output link of the distribution switch corresponds to the row axis. Remaining number input information " rqn_i " of the queue for the component on the diagonal axis receives the remaining packet information of the queue controller input according to the spatial priority determined by the spatial switch 3200. In addition, since the link reservation information "grh_i" for the components on the diagonal axis is fixedly drawn into logical value "0" 3810, these positions are the starting point of the distribution arbitration and have the highest priority. In addition, the components located on the diagonal also block the asynchronous feedback loop in the hardware implementation.
도4의 구성요소로 이루어진 행렬에서 행축 신호(grh_i, grh_o)는 신호선 (3600)에 의하여 연결되어 루우프를 형성하며, 이들 행 루우프 신호선들은 대각선 구성요소를 지나면서 루우프가 끊어지게 된다. 또한, 열축 신호(rqn_i, rqn_o)는 신호선(3700)에 의하여 연결되어 루우프를 형성하며, 이들 열 루우프 신호선들은 대각선 구성요소를 지나면서 루우프가 끊어지게 된다.In the matrix of the components of FIG. 4, the row axis signals grh_i and grh_o are connected by signal lines 3600 to form loops, and these row loop signal lines are broken through the diagonal components. In addition, the column axes signals rqn_i and rqn_o are connected by signal lines 3700 to form loops, and the column loop signal lines pass through diagonal components and the loops are broken.
한편, 편의상 구성요소에 공통적으로 인입되는 "rst" "tck" 신호는 도 3에 도시하지 않았다.Meanwhile, for convenience, a signal "rst" and "tck" commonly introduced into the component is not shown in FIG. 3.
도3의 분배 중재기에 큐 잔여 패킷 정보를 입력하면, 분배 중재기는 전술한 큐별 링크 공간 우선 순위에 따라 방출되고자 하는 패킷들을 출력링크에 균등하게 분배하는 기능을 수행한다. 분배된 결과는 큐별로 n2비트의 신호가 되어 출력단(3500)을 통하여 결합 중재기로 인입된다.When queue residual packet information is input to the distribution arbiter of FIG. 3, the distribution arbiter performs a function of equally distributing packets to be output to the output link according to the above-described queue-level link space priority. The distributed result is a signal of n 2 bits per cue and is led to the coupling arbitrator through the output terminal 3500.
분배 중재기를 0.2 um CMOS 반도체 기술을 사용하여 구현시 64 x 64 규모 행렬에서 약 250 kgate 정도의 논리 소자가 요구되고, 최대 동작 속도는 약 37ns임을 확인하였다. 패킷 슬롯 시간이 상기 최대 동작 속도의 4배라고 가정하는 경우, 약 15 Terabit/sec급 분배결합 패킷 스위치용 분배 제어기를 기존의 반도체 기술을 사용하여 구현 가능하다.The implementation of the distribution arbiter using 0.2 um CMOS semiconductor technology required a logic element of about 250 kgates in a 64 x 64 matrix and a maximum operating speed of about 37 ns. Assuming that the packet slot time is four times the maximum operating speed, a distribution controller for about 15 Terabit / sec distribution-coupled packet switches can be implemented using conventional semiconductor technology.
이제, 도5와 도6을 이용하여 내부 블록킹 중재기용 결합 중재기(2310)의 구성 및 동작으로 보다 상세히 살펴보기로 한다.Now, the configuration and operation of the combined arbiter 2310 for the internal blocking arbiter will be described in more detail with reference to FIGS. 5 and 6.
도6은 결합 중재기의 구성요소와 그 동작 알고리즘을 보이고 있으며, 도 5는 도 6의 구성요소를 25개 사용하여 구성한, 5개의 큐를 가지고 있는 분배 스위치와 입력링크가 5개인 결합 스위치를 위한 결합 중재기를 보여주고 있다.FIG. 6 shows the components of the combined arbitrator and its operation algorithm. FIG. 5 shows a distribution switch with five cues and a combined switch with five input links, constructed using 25 components of FIG. Shows a combined mediator.
도6에 도시된 결합 중재기 구성요소(6000)는 동작 초기화 신호(rst), 초기화 시 중재동작의 시작점을 나타내며 구성요소 행렬의 대각선 축(5300)에 위치하고 있는지를 표시하기 위한 정보(init_d), 중재기 동작 동기 신호(tck), 할당되지 않은 결합단 입력링크의 잔여 개수 입력정보(rqn_i), 할당되지 않은 결합단 입력링크의 잔여 개수 출력정보(rqn_o), 높은 공간 우선 순위를 갖는 다른 구성요소에 의하여 해당되는 링크가 선약되었는지를 나타내는 링크 예약 정보(grh_i), 링크 예약 출력 정보(grh_o), 매 중재 사이클마다 중재 동작의 시작점, 즉 가장 높은 우선 순위를 가지고 있는 구성요소를 특정하기 위한 포인터 입력 신호(po_i), 상기한 포인터 출력 신호(po_o), 분배 중재기에서 출력되는 n2bits 입력 신호들 중 해당 구성요소에 대응하는 1 bit 중재 입력 정보(disel), 그리고 해당 구성요소에 대응하는 큐와 링크에 패킷 출력이 결합 중재기에 의하여 예약되었는지를 나타내는 정보(ocsel)들의 입출력 신호들을 가지고 있다. 결합 중재기의 구성요소(6000)는 상기한 입력신호들을 이용하여 다음과 같은 동작을 수행한다.The combined arbiter component 6000 shown in FIG. 6 is an operation initialization signal rst, information (init_d) for indicating whether it is located at the diagonal axis 5300 of the component matrix, indicating the starting point of the arbitration operation upon initialization, Arbiter operation synchronization signal (tck), remaining number of unallocated combined end input links (rqn_i), remaining number of unallocated combined end input links (rqn_o), other components with high spatial priority Link reservation information (grh_i), link reservation output information (grh_o), indicating whether the corresponding link is selected by means of a pointer input for specifying the starting point of the arbitration operation, that is, the component having the highest priority, every arbitration cycle. signal (po_i), the pointer output signal (po_o), 1 bit arbitration type information (disel) corresponding to the component of n 2 bits input signal to be output in a distributed arbiter, and And has the input and output signals of the configuration queue and the packet output is coupled arbitration information groups (ocsel) indicating that the reservation by the link corresponding to the element. The component 6000 of the coupling arbiter performs the following operations using the input signals.
도6에서, 도면부호 "6100"은 구성요소(6000)의 동작 초기화 동작을 기술하고 있다. 즉, "rst"가 참(true)이고, 구성요소행렬의 대각선축에 위치하고 있으면 해당 구성요소가 가장 높은 우선 순위를 가지고 있음을 의미하며, 하드웨어적으로는 중재기(5000)내의 비동기 루우프 신호의 피이드백 차단점 역할을 수행하는 "po_o"를 논리치 "1"로 초기화하여 해당 구성요소가 행렬의 대각선축에 위치함(5300)을 선언한다. 또한, "rst"가 참(true)이면 동작 초기화 단계이므로 중재 결과 신호인 "ocsel"를 "0"으로 하여 중재되지 않은 상태임을 선언한다.In FIG. 6, reference numeral 6100 denotes an operation initialization operation of the component 6000. That is, if "rst" is true and located on the diagonal axis of the component matrix, it means that the component has the highest priority, and in hardware, the asynchronous loop signal in the arbiter 5000 Initializing "po_o", which serves as a feedback cutoff point, to a logical value of "1", declares that the corresponding element is located on the diagonal axis of the matrix (5300). In addition, if "rst" is true, since the operation is initiating, it declares that the arbitration result signal "ocsel" is not arbitrated by setting "ocsel" as "0".
도6에서, 도면부호 "6200"은 구성요소(6000)의 본 동작 상태를 기술하고 있다. 즉, 포인터 출력신호 "po_o"가 참이면 구성요소는 행렬 대각선에 위치하므로, 가장 높은 공간 우선 순위를 가진다. 이에 따라, 해당 큐에 배정될 수 있는 k2개의 결합단 입력링크들이 미 배정 상태임으로 분배중재결과인 1bit 중재 입력 정보 "disel"이 참이면 "rqn_o"는 "k2-1"를 할당받으며, 해당 요소가 중재 예약되었음을 의미하는 "grh_o"와 "ocsel"은 논리치 참으로 할당받는다. 그러나, 1bit 중재 입력 정보 "disel"이 거짓(false)이면 해당 구성요소가 가장 높은 우선순위를 가지나, 분배중재결과가 없으므로 "rqn_o"는 k2를 할당받으며, 해당 요소가 중재 예약되었음을 의미하는 "grh_o"와 "ocsel"은 논리치 거짓으로 할당받는다.In FIG. 6, reference numeral 6200 describes the present operating state of the component 6000. That is, if the pointer output signal "po_o" is true, the component is located diagonally in the matrix, and thus has the highest spatial priority. Accordingly, if k 2 coupling end input links that can be allocated to the corresponding queue are unassigned, if the 1-bit arbitration input information "disel" is true, "rqn_o" is assigned "k 2 -1". "Grh_o" and "ocsel", which mean that the element is reserved for arbitration, are assigned a logical value of true. However, if the 1-bit arbitration input information "disel" is false, the component has the highest priority, but since there is no distribution arbitration result, "rqn_o" is assigned k 2 , meaning that the element is reserved for arbitration. grh_o "and" ocsel "are assigned logical false.
한편, "po_o"가 거짓이면, 즉 구성요소는 행렬 대각선외에 위치하며, "disel"이 참이고 "grh_i"가 거짓이며, 그리고 "rqn_i"가 "0"이 아닌 경우, 즉 분배중재결과, 해당 큐 및 링크로 패킷이 전달될 수 있으며 보다 높은 우선순위 구성요소에 의하여 해당 링크가 선점되지 않았으며 배정될 수 있는 결합단 입력링크가 있는 경우, "rqn_o"는 입력된 "rqn_i"의 값에서 "-1"한 값을 배정받으며, 해당 요소가 중재 예약되었음을 의미하는 "grh_o"와 "ocsel"은 논리치 참으로 할당받는다. 그러나, "disel"이 거짓(false)이거나 "grh_i"가 참이거나 또는 "rqn_i"가 "0"인 경우, 분배중재결과가 없으므로 "rqn_o"는 입력된 "rqn_i"의 값를 할당받으며, 해당 요소가 중재 예약되었음을 의미하는 "grh_o"와 "ocsel"은 논리치 거짓으로 할당받는다.On the other hand, if "po_o" is false, i.e., the component is located outside of the matrix diagonal, "disel" is true and "grh_i" is false, and "rqn_i" is not "0", i.e. If a packet can be forwarded to queues and links, and that link is not preempted by a higher priority component and there is a joint input link that can be allocated, then "rqn_o" is equal to the value of "rqn_i" entered. Is assigned a value of -1 ", and" grh_o "and" ocsel ", which mean that the element is reserved for arbitration, are assigned a logical value of true. However, if "disel" is false, "grh_i" is true, or "rqn_i" is "0", there will be no distribution mediation result, so "rqn_o" is assigned the value of "rqn_i" entered, "Grh_o" and "ocsel", which mean that an arbitration is reserved, are assigned logical false.
도6에서, 도면부호 "6000"에서 초기화 동작 이후 행렬 대각선축에 위치하는 것을 의미하는 포인터 신호(po_o)는 매 중재 사이클 마다 우측(또는 좌측)에 위치하는 구성요소로 그 값이 쉬프트한다.In Fig. 6, the pointer signal po_o, which means to be positioned on the matrix diagonal axis after the initialization operation at "6000", is shifted to a component located on the right side (or left side) every arbitration cycle.
도5에서, 도면부호 "5000"은 결합 중재기이며, 1 x n2bits인 분배중재 결과인 입력신호(5100)를 받아 해당되는 각 구성요소(5300 등)에 분배한 후 상기한 구성요소 동작에 의하여 각각의 행축별로 위치한 구성요소들중 분배중재결과(disel)가 참인 구성요소 k2개를 선정하여 이들에 해당한 패킷들이 내부 블록킹없이 최종 결합 스위치까지 도달될 수 있음을 결합중재결과 출력신호(5200)를 이용하여 큐 제어기에 통보한다. 여기서, 행(row) 루우프 신호선(5600)은 "po_i", "po_o"와 "rqn_i", "rsn_o" 신호들을 연결하는 통로들을 나타내고 있으며, 열(column) 루우프 신호선(5700)은 "grh_o"와 "grh_i" 신호들을 연결하는 통로들을 나타내고 있다.In FIG. 5, reference numeral 5000 denotes a combined arbiter, receives an input signal 5100 that is a distribution mediation result of 1 x n 2 bits, and distributes the same to each of the corresponding components 5300. By selecting two components k of the distribution mediation result (disel) is true among the components located by each row axis, the corresponding packet can be reached to the final coupling switch without internal blocking. 5200 is used to notify the queue controller. Here, the row loop signal line 5600 represents passages connecting the signals "po_i", "po_o", "rqn_i", and "rsn_o", and the column loop signal line 5700 has "grh_o" and The paths connecting the "grh_i" signals are shown.
이제, 도7을 참조하여 본 발명에 따른 분배결합 패킷 스위칭 장치의 성능을 살펴보기로 한다.Now, with reference to FIG. 7, the performance of the distributed combining packet switching device according to the present invention will be described.
분배 스위치, 스위칭단 단위 스위치, 결합 스위치들이 균등하게 64x64이며,이들을 이용하여 단일 링크 연결방식의 "CLOS" 스위치 네트워크 형태로 구성한 4096x4096 분배결합 패킷 스위치에 균등하며 랜덤한 부하를 가하는 경우, 분배결합 스위치의 스위칭 지연 특성 컴퓨터 모의 시험 결과가 도 7에 도시되었다.The distribution switch, the switching stage unit switch, and the combined switches are equally 64x64, and the distributed switch is applied evenly and randomly to the 4096x4096 split-packet packet switch configured in the form of a "CLOS" switch network with a single link connection. The switching delay characteristics of the computer simulation test results are shown in FIG.
도7에서는, 전술한 바와 같이 전체적으로 이상적인 출력 버퍼 스위치 특성의 2배 정도의 지연값을 보이고 있음을 나타내고 있다.As shown in Fig. 7, the delay value is about twice that of the ideal output buffer switch characteristic as a whole.
상기한 바와 같은 본 발명은, 내부 링크 사용에 큐별로 지정되는 공간 우선순위를 사용하여 높은 처리율을 갖는 중재 기법을 이용하여 차세대 패킷망용 대규모 multirate 패킷 스위칭을 가능하게 하는 효과가 있다.As described above, the present invention has an effect of enabling large-scale multirate packet switching for next-generation packet networks by using an arbitration technique having a high throughput by using a spatial priority designated for each queue to use an inner link.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes are possible in the art without departing from the technical spirit of the present invention. It will be clear to those of ordinary knowledge.
본 발명은, 상기한 바와 같은 문제점을 해결하고 요구에 부응하기 위하여 제안된 것으로, 차세대 패킷망에서 한 번의 스위칭(one hop switching)으로 정보 교환을 가능하도록 하기 위한 간결한 중재용 교신 정보를 갖는 분배결합 패킷 스위칭 장치 및 그를 이용한 내부 블록킹 중재 장치를 제공하는데 그 목적이 있다.Disclosure of Invention The present invention has been proposed to solve the above-mentioned problems and meet the demands. The present invention proposes a distributed combining packet having concise arbitration communication information for enabling information exchange with one hop switching in a next-generation packet network. It is an object of the present invention to provide a switching device and an internal blocking arbitration device using the same.
상기 목적을 달성하기 위한 본 발명의 장치는, 차세대 패킷망에서의 분배결합 패킷 스위칭 장치에 있어서, 각각 제1 소정 개수의 큐(queue)들을 구비한 제2 소정 개수의 단위 스위치 모듈로 구성되어 소정 개수의 패킷을 분배하기 위한 분배수단; 상기 제1 소정 개수의 큐들에 대하여 패킷 입출력을 제어하기 위한 큐 제어수단; 상기 큐 제어수단내의 소정 개수의 큐들에 저장되어 있는 소정 개수의 패킷을 입력으로하여 상기 분배수단의 출력링크에 상기 패킷을 배분하기 위한 분배 중재수단; 상기 분배중재수단에서 분배된 패킷들의 경합을 중재하여 배분하기 위한 결합 중재수단; 상기 제2 소정 개수의 단위 스위치 모듈로 구성되어 상기 결합 중재수단의 결합 중재정보에 따라 패킷을 분류하여 출력하기 위한 스위칭 수단; 소정 개수의 단위 스위치 모듈로 구성되어 상기 결합 중재 수단에서 출력된 패킷을 목적지 정보에 따라 분류하여 해당되는 버퍼에 큐잉(queuing)한 후, 상기 패킷 데이터가 출력되고자 하는 수단으로 출력하기 위한 결합수단; 및 상기 분배수단과 상기 스위칭수단, 상기 스위칭 수단과 상기 결합수단을 연결하는 연결수단을 포함하는 것을 특징으로 한다.The apparatus of the present invention for achieving the above object is a distributed combining packet switching device in a next-generation packet network, comprising a second predetermined number of unit switch modules each having a first predetermined number of queues, the predetermined number Distribution means for distributing packets of; Queue control means for controlling packet input and output with respect to the first predetermined number of queues; Distribution arbitration means for distributing the packet to an output link of the distribution means by inputting a predetermined number of packets stored in a predetermined number of queues in the queue control means; Combined arbitration means for mediating and distributing contention of packets distributed by the distribution mediation means; Switching means configured to constitute the second predetermined number of unit switch modules to classify and output packets according to the combined arbitration information of the combined arbitration means; Combining means for constituting a predetermined number of unit switch modules, classifying packets output from the combining arbitration means according to destination information, queuing them in a corresponding buffer, and outputting the packet data to a means for outputting the packet data; And connecting means for connecting the distribution means and the switching means, the switching means and the coupling means.
또한, 본 발명의 다른 장치는, 내부 블록킹 중재 장치에 있어서, 분배결합 패킷 스위칭 장치의 분배 스위치들이 가지고 있는 소정 개수의 큐들에 대하여 패킷 입출력을 제어하는 큐 제어수단; 상기 큐 제어수단에 있는 소정 개수의 큐에 저장되어 있는 패킷 개수를 입력으로 하여 상기 분배 스위치의 출력링크/스위칭 장치내의 스위치들에 배분하는 분배 중재수단; 소정 비트 분배정보를 링크에 할당된 log(1) 비트 큐 넘버로 인코딩하는 인코더; 인코딩된 log(1) 비트 분배정보를 디코딩하여 소정 비트 분배정보로 복원하는 디코더; 및 상기 분배 중재기에서 분배된 패킷들의 상기 스위칭수단/상기 결합수단 입출력 링크 경합을 중재하는 결합 중재수단을 포함하는 것을 특징으로 한다.Another apparatus of the present invention provides an internal blocking arbitration apparatus, comprising: queue control means for controlling packet input / output with respect to a predetermined number of queues of distribution switches of a distributed combining packet switching apparatus; Distribution arbitration means for distributing the number of packets stored in a predetermined number of queues in the queue control means to be distributed to switches in the output link / switching device of the distribution switch; An encoder for encoding predetermined bit distribution information into a log (1) bit queue number assigned to the link; A decoder for decoding the encoded log (1) bit distribution information and restoring the predetermined bit distribution information; And combining arbitration means for arbitrating the switching means / combining means input / output link contention of the packets distributed by the distribution arbiter.
본 발명은 수 Terabit/sec ~ 수십 Terabit/sec의 시스템 정보 처리 용량을 갖는 대형 패킷 스위치에 관한 것으로서, 수천 ~ 수십만에 이를 최종 가입자를 수용할 수 있는 대형 패킷 스위치에 적합한 스위칭 알고리즘 및 구조를 제시한다.The present invention relates to a large packet switch having a system information processing capacity of several Terabit / sec to several tens of Terabit / sec, and proposes a switching algorithm and structure suitable for a large packet switch capable of accommodating end subscribers in thousands to hundreds of thousands. .
또한, 본 발명에서는 수천 ~ 수십만 회선에 이르는 최종 가입자 정합 장치와 수 Gigabit/sec ~ 수십 Gigabit/sec의 망 정합 장치를 동시에 수용할 수 있어, 차 세대 패킷 통신망용 한 번의 스위칭(One hop switching)으로 정보 교환이 가능한 대형 패킷 스위치용 스위칭 알고리즘 및 구조를 제시한다.In addition, in the present invention, it is possible to simultaneously accommodate end subscriber matching devices ranging from tens of thousands to hundreds of thousands of lines and network matching devices ranging from several Gigabit / sec to several tens of Gigabit / sec, thereby enabling one-hop switching for next-generation packet communication networks. We present a switching algorithm and structure for a large packet switch that can exchange information.
또한, 본 발명은 내부 링크 확장이나 스피드업없이 100% 처리율을 가지고 있는 대형 패킷 스위치용 스위칭 알고리즘 및 구조를 제시한다.In addition, the present invention proposes a switching algorithm and structure for a large packet switch having 100% throughput without internal link expansion or speedup.
또한, 본 발명은 스위칭 모들 단위 확장성(Scalability)과 모듈성(Modularity)을 가지므로 가입자 증가에 따른 스위치 용량 증대에 용이하게 대처할 수 있는 대형 패킷 스위치용 스위칭 알고리즘 및 구조를 제시한다.In addition, the present invention proposes a switching algorithm and a structure for a large packet switch that can easily cope with the increase in the switch capacity according to the increase of subscribers because of the scalability and modularity of the switching modules.
본 발명은 차세대 패킷망에서 한 번의 스위칭으로 정보 교환(One hop switching)을 가능하게 하는 대규모 교환 장치(분배결합 패킷 스위칭 장치)로서, 대규모 패킷 교환 장치는 현재의 전화 가입자가 인터넷 xDSL 가입자 또는 IMT-2000 무선 가입자로 되는 망 진화 현실을 감안하여, 현존하는 일반전화교환망(PSTN : Public Switched Telephone Network) 전화국 사내에 물리적으로 수용 가능하여야 한다. 또한, 한 번의 스위칭(one hop switching)을 위해서는 단말 가입자 정합 장치(UNI : User Network Interface)와 망 접속용 정합 장치(NNI : Network to Network Interface)가 한 개의 교환기에 직접 접속될 수 있어야 한다. 보편적적으로, 일반전화교환망(PSTN) 전화국사에서 수용하고 있는 가입자는 약 5만에서 20만 회전에 이르고 있는 점과, xDSL 및 IMT-2000이 제공하는 서비스 정보 속도가 2Mbps ~ 20 Mbps에 이르는 점을 감안하면, 본 발명으로 구현될 수 있는 대규모 패킷 교환 장치는 수 Terabit(1012bit/sec) ~ 수십 Terabit의 스위칭 용량과 약 수 만 회선의 단말 가입자 정합 능력과 수십 Gigabit(109bit/sec)용량의 망 접속용 회선 수백개을 수용할 수 있는 능력을 가지고 있어야 된다.The present invention provides a large-scale switching device (distributed combined packet switching device) that enables one-hop switching in a next-generation packet network. The large-capacity packet switching device includes a current telephone subscriber or an Internet xDSL subscriber or an IMT-2000. Given the reality of network evolution as a wireless subscriber, it must be physically acceptable within an existing public switched telephone network (PSTN) telephone company. In addition, for one hop switching, a terminal subscriber matching device (UNI) and a network access matching device (NNI) must be directly connected to one switch. Typically, subscribers accepted by PSTN telephone companies range from about 50,000 to 200,000 revolutions, and service information rates from xDSL and IMT-2000 range from 2 Mbps to 20 Mbps. In view of the above, a large packet switching apparatus that can be implemented by the present invention has a switching capacity of several Terabit (10 12 bit / sec) to several tens of Terabit, terminal subscriber matching capability of several tens of thousands of lines, and several tens of Gigabit (10 9 bit / sec). It must be capable of accommodating hundreds of lines of capacity for network access.
이를 해결하기 위해, 본 발명의 내부 구조는 전통적인 "CLOS" 스위치 패브릭 구조를 가지며, 분배단, 스위칭단, 결합단, 분배중재기, 결합중재기, 그리고 이들을 연결하는 연결링크들로 구성된다.To solve this, the internal structure of the present invention has a traditional "CLOS" switch fabric structure, consisting of a distribution stage, switching stage, coupling stage, distribution mediator, coupling mediator, and connecting links connecting them.
특히, 본 발명은 내부 블록킹 중재 동작시 링크당 분배 스위치내의 큐 넘버에 해당하는 log(1) 비트, 중재허용 여부를 나타내는 1 비트, 그리고 중재 사이클 동기용 식별 신호만을 교신하므로 효율적으로 내부링크 자원을 사용할 수 있어, 대용량 스위치 구현 구조로 매우 적당하다.In particular, the present invention efficiently communicates the internal link resources because only the log (1) bit corresponding to the queue number in the per-link distribution switch, the 1 bit indicating whether arbitration is allowed, and the identification signal for arbitration cycle synchronization are communicated. Because it can be used, it is very suitable to implement a large capacity switch.
본 발명에 따른 분배결합 패킷 스위칭 장치의 처리 지연 시간은 이상적인 출력버퍼 스위치의 처리 지연 시간을 Do, 내부다중링크 연결수를 k1이라 하면 (k1+1)Do/k1값을 가지며, k1이 1보다 충분히 큰 경우 이상적인 출력 버퍼 특성에 근접하며, k1이 1인 경제적인 구조에서도 출력버퍼 스위치 성능의 2배에 불과한 우수한 성능을 가지고 있다. 스위치 포화 처리율은 100%이다. 즉, 엄밀하게 논 블록킹(non-blocking)이다. 또한, 기존의 0.2 um CMOS 반도체 기술을 사용하여 15 Terabit/sec 처리용량의 분배결합 패킷 스위치 구현이 가능하다.The processing delay time of the distributed combining packet switching device according to the present invention has a value of (k 1 +1) Do / k 1 when the processing delay time of an ideal output buffer switch is Do and the number of internal multilink connections is k 1 . When 1 is greater than 1, it is close to the ideal output buffer characteristics, and the economic structure of k 1 is 1, which is only twice the performance of the output buffer switch. The switch saturation throughput is 100%. In other words, it is strictly non-blocking. In addition, it is possible to implement a distributed-combined packet switch with 15 Terabit / sec throughput using the existing 0.2um CMOS semiconductor technology.
결론적으로, 본 발명은 상기한 차세대 교환기에 대한 요구 사항들을 만족할 수 있어, 차세대 패킷망에서 한 번의 스위칭(one hop switching)으로 정보 교환을 가능하게 한다.In conclusion, the present invention can satisfy the requirements for the next-generation switch, thereby enabling information exchange with one hop switching in the next-generation packet network.
Claims (18)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020000083374 | 2000-12-27 | ||
KR1020000083374A KR20020053664A (en) | 2000-12-27 | 2000-12-27 | Terabit Packet Switching Apparatus with Brief Communicating Information for intermediation |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20030074665A true KR20030074665A (en) | 2003-09-19 |
Family
ID=19703723
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000083374A Pending KR20020053664A (en) | 2000-12-27 | 2000-12-27 | Terabit Packet Switching Apparatus with Brief Communicating Information for intermediation |
KR1020037008179A Ceased KR20030074665A (en) | 2000-12-27 | 2001-12-27 | Distribution /combining packet switching apparatus using brief scheduling information |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020000083374A Pending KR20020053664A (en) | 2000-12-27 | 2000-12-27 | Terabit Packet Switching Apparatus with Brief Communicating Information for intermediation |
Country Status (2)
Country | Link |
---|---|
KR (2) | KR20020053664A (en) |
WO (1) | WO2002052803A1 (en) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100211123B1 (en) * | 1997-05-23 | 1999-07-15 | 윤종용 | Multistage interconnection network for high speed packet switching |
EP0884876B1 (en) * | 1997-05-31 | 2010-02-03 | Texas Instruments Incorporated | Improved packet switching |
US6563837B2 (en) * | 1998-02-10 | 2003-05-13 | Enterasys Networks, Inc. | Method and apparatus for providing work-conserving properties in a non-blocking switch with limited speedup independent of switch size |
US6160812A (en) * | 1998-05-04 | 2000-12-12 | Cabletron Systems, Inc. | Method and apparatus for supplying requests to a scheduler in an input buffered multiport switch |
US6434115B1 (en) * | 1998-07-02 | 2002-08-13 | Pluris, Inc. | System and method for switching packets in a network |
GB9828144D0 (en) * | 1998-12-22 | 1999-02-17 | Power X Limited | Data switching apparatus |
US6597669B1 (en) * | 1999-03-16 | 2003-07-22 | Northrop Grumman Corporation | Queue segmentation and addressing method and apparatus for a cell switch in a processing communications satellite |
-
2000
- 2000-12-27 KR KR1020000083374A patent/KR20020053664A/en active Pending
-
2001
- 2001-12-27 WO PCT/KR2001/002275 patent/WO2002052803A1/en not_active Application Discontinuation
- 2001-12-27 KR KR1020037008179A patent/KR20030074665A/en not_active Ceased
Also Published As
Publication number | Publication date |
---|---|
WO2002052803A1 (en) | 2002-07-04 |
KR20020053664A (en) | 2002-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Ahmadi et al. | A survey of modern high-performance switching techniques | |
US7173931B2 (en) | Scheduling the dispatch of cells in multistage switches | |
US10182021B2 (en) | Crossbar switch and recursive scheduling | |
US5987028A (en) | Multiple channel ATM switch | |
US7023841B2 (en) | Three-stage switch fabric with buffered crossbar devices | |
US5940389A (en) | Enhanced partially self-routing algorithm for controller Benes networks | |
KR100411221B1 (en) | Pipelined scheduling method and scheduler | |
US7161906B2 (en) | Three-stage switch fabric with input device features | |
US7397808B2 (en) | Parallel switching architecture for multiple input/output | |
US5856977A (en) | Distribution network switch for very large gigabit switching architecture | |
US20060285548A1 (en) | Matching process | |
JPH0637797A (en) | Reserved ring mechanism of packet exchange network | |
Chao et al. | Design and implementation of Abacus switch: A scalable multicast ATM switch | |
US6735212B1 (en) | Short and long term fair shuffling for crossbar switch arbiter | |
US6301269B1 (en) | ATM switching system and method with propagation delay compensation | |
US7103056B2 (en) | Scheduling the dispatch of cells in multistage switches using a hierarchical arbitration scheme for matching non-empty virtual output queues of a module with outgoing links of the module | |
Abel et al. | A four-terabit single-stage packet switch with large round-trip time support | |
Elhanany et al. | Packet scheduling in next-generation multiterabit networks | |
Kleban et al. | CRRD-OG: A packet dispatching algorithm with open grants for three-stage buffered Clos-network switches | |
Guo et al. | High-speed multicast scheduling in hybrid optical packet switches with guaranteed latency | |
KR20020054207A (en) | Terabit Packet Switching Apparatus | |
Li et al. | Preservation of conditionally nonblocking switches under two-stage interconnection | |
KR20030074665A (en) | Distribution /combining packet switching apparatus using brief scheduling information | |
Kleban et al. | Packet dispatching algorithms with the static connection patterns scheme for three-stage buffered clos-network switches | |
Engbersen | Prizma switch technology |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0105 | International application |
Patent event date: 20030618 Patent event code: PA01051R01D Comment text: International Patent Application |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20050624 Patent event code: PE09021S01D |
|
E601 | Decision to refuse application | ||
PE0601 | Decision on rejection of patent |
Patent event date: 20050927 Comment text: Decision to Refuse Application Patent event code: PE06012S01D Patent event date: 20050624 Comment text: Notification of reason for refusal Patent event code: PE06011S01I |