KR20030051433A - 스위칭 시스템 - Google Patents

스위칭 시스템 Download PDF

Info

Publication number
KR20030051433A
KR20030051433A KR1020027016679A KR20027016679A KR20030051433A KR 20030051433 A KR20030051433 A KR 20030051433A KR 1020027016679 A KR1020027016679 A KR 1020027016679A KR 20027016679 A KR20027016679 A KR 20027016679A KR 20030051433 A KR20030051433 A KR 20030051433A
Authority
KR
South Korea
Prior art keywords
cell
router
inlet
queue
routers
Prior art date
Application number
KR1020027016679A
Other languages
English (en)
Inventor
이안 데이비드 존슨
마렉 스티븐 파이카스키
마틴 덕스버리
Original Assignee
파워 엑스 리미티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 파워 엑스 리미티드 filed Critical 파워 엑스 리미티드
Publication of KR20030051433A publication Critical patent/KR20030051433A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
    • H04Q3/54541Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme using multi-processor systems
    • H04Q3/5455Multi-processor, parallelism, distributed systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • H04L49/101Packet switching elements characterised by the switching fabric construction using crossbar or matrix
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3027Output queuing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3045Virtual queuing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1302Relay switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/1304Coordinate switches, crossbar, 4/2 with relays, coupling field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/131Register
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13103Memory
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13106Microprocessor, CPU
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q2213/00Indexing scheme relating to selecting arrangements in general and for multiplex systems
    • H04Q2213/13196Connection circuit/link/trunk/junction, bridge, router, gateway

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

데이터 스위칭 장치는 제어기에 의해 제어된 스위칭 매트릭스에 의해 상호접속되는 입구 라우터 및 출구 라우터를 갖는다. 각 입구 라우터는 각 출구 라우터에 대한 하나 이상의 실제 출력 큐를 유지한다. 스위칭 매트릭스는 전송될 셀의 큐 버퍼의 헤드를 유지한다. 이러한 큐 각각은 실제 출력 큐중 하나에 대응하며, 스위칭 매트릭스에 저장된 셀은 각각의 실제 출력 큐에서 큐잉된 셀로부터 복제된다. 그러므로, 스위칭 매트릭스위 제공된 입력 및 출력 사이에서 접속이 행해질지가 결정될때, 그 접속에 따라 전송에 적합한 셀이 이미 스위칭 매트릭스에서 이용 가능하다. 입구 라우터중 하나에 의해 새로운 셀을 수신시, 상기 셀은 그 셀을 위한 출구 라우터에 대응하는 입구 라우터의 실제 출력 큐중 하나에 저장되며, 그 버퍼가 공간을 갖는 경우, 큐 버퍼의 대응 헤드에 또한 기록된다. 만약, 그렇지 않으면, 셀은 그 버퍼가 자신을 위한 공간을 가질때의 큐 버퍼 헤드에 저장되고 기록된다.

Description

스위칭 시스템 {SWITCHING SYSTEM}
처리 강화 컴퓨터 응용에서 항상 팽배한 요구사항은 항상 큰 전력의 시스템을 형성하도록 마켓을 운용하는 것이다. 바람직하지 않게, 비록 발전은 있었지만 프로세서 기술에서 개선점은 이런 요구 모두를 만족시키기에는 불충분하다.
증가된 전력을 가진 시스템을 형성하기 위한 다른 가능성은 협력하여 몇몇 밀접하게 결합된 처리 노드를 동작시키는 것이다. 비록 각각의 노드가 자신의 로컬 메모리 공간에서 동작할지라도, 밀접한 결합은 메모리 공유도를 필요로한다. 이런 공유된 메모리는 단일 중앙 카피 방식로서 구현되거나, 보다 통상적으로 복제되어 노드의 로컬 메모리에 분배된다. 어느쪽이든, 이런 공유 방식은 단일 중앙 카피 방식인 경우 중앙 메모리에 액세스를 제공하여야 하고, 분배 방식의 경우 분배된 카피가 일관되게 유지되는 것을 보장하기 위한 높은 대역폭 상호 노드 통신 시스템에 대한 필요성을 증가시킨다.
이런 통신 시스템을 통한 노드 생성 트래픽은 처리가 계속되기전 요구에 대한 응답을 빈번히 요구할것이다. 따라서, 어느 노드이든 처리를 연기하여야 하거나, 또는 (어느 장소든) 다른 임무로 스위칭되어 시간을 벌수없고 - 어느 선택이나 전체 성능에 비용을 부과할것이다. 그러므로, 상호 노드 통신 시스템에서 작은 대기 시간은 상기 손실을 최소화하기 위한 첫번째 요구사항이다.
데이터 통신 시스템에 있어서, 셀 로스(cell loss)는 프로토콜 스택에서 더 높은 레이어에 의해 처리될 수 있으며, 이로 인해 셀 로스가 허용될 수 있다. 반대로, 프로세서 상호접속 시스템에서의 셀 로스는 일반적으로 스톨 요구 프로세스(stalled requested process)로 인해 허용될 수 없으며, 이러한 시스템은 통상적으로 시스템 대기 시간(latency)을 억제하기 위하여 최소의 프로토콜 레이어에 의해 동작한다. 따라서 물리적 레이어는 하드웨어내에서 신뢰가능한 전달 프로토콜을 구현해야 한다.
여기서 전체 명세서가 포함된 WO 00/38375에서, 자체로 높은 대역폭, 비율(scalability), 낮은 대기 시간, 작은 체적 및 저비용의 특성을 가지는 데이터 스위칭 장치를 제시하였다. 오로지 이러한 기술이 가지는 제한 사항만이 본 출원의 우선일 까지 공개적으로 이용가능하였다. 도 1에 도시되어 있다.
스위칭 시스템은 양방향으로 사용할 수 있는 n+1 개의 라우터를 사용한다. 각각의 라우터의 정보 전송 특징(aspect)은 "입구 라우터(ingress router)"ITM0, ITM1, ... ITMn로서 표현된다. 라우터의 특징을 수신하는 정보는 "출구 라우터(egress router)"ETM0,ETM1, ... ETMn로서 표현된다. 각각의 라우터는 하나이상의 데이터 소스("노드"를 구성하는 프로세서 세트)로부터 정보를 수신한다. 즉 입력 라우터(ITM0)은 m+1 개의 데이터 소스(ILE00, ...ILE0m)로부터 정보를 수신한다. 유사하게, 각각의 출구 라우터는 하나 이상의 데이터 출력에 정보를 전송한다. 즉 출구 라우터(ETM0)은 데이터 소스(ELE00,...ELE0m)까지 정보를 전송한다. 마스터 장치(SC)와 매트릭스 장치(들)(SW)은 중앙 상호 접속 장치(CIF)를 구성한다. 매트릭스(SW)를 통해 전송하기 위한 셀은 동일한 길이를 가지며, 각각의 우선 레벨과 관련한다. 매트릭스 장치(SW)가 입력 라우터를 출구 라우터에 접속할 때, 각각의 입력 라우터는, 각각의 출구 라우터와 각각의 우선 레벨에 대하여, 출구 라우터로 전송하기 위한 우선 레벨 셀의 각각의 "가상 출력 큐(queue)"를 유지한다. 각각의 입력 라우터는 접속 요구를 마스터 장치(SC)에 전송한다. 마스터 장치(SC)는 어떤 입력 라우터와 출구 라우터가 제 1 조정(arbitration) 프로세스에 의해 접속되는지를 검출한다. 어떤 출구 라우터가 연결될지를 알리는 입구 라우터는 마스터로부터 직접 전송된 연결 정보로서 동시에 도착하도록 시리얼 링크를 통해, 어떤 우선 레밸의 셀을 출구 라우터로 전송할지를 결정하며, 우선 레벨을 결정한 입구 라우터는 우선 레벨에 대한 가상 출력 대기 행렬의 헤드 및 출구 라우터를 매트릭스 SW로 전송한다. 실질적으로, 후자는 전자에 비해 현저히 빠르며, 라우터를 통해 경로의 대기 시간에 부합하도록 인위적으로 지연된다. 요악하면, 전술한 시스템은 라우터의 모든 혼잡 버퍼링을 갖는 메모리없는 패브릭을 사용한다.
WO94/17617은 청구항1항의 전제부에 따른 스위치를 개시한다. 스위칭 매트릭스는 단일 스위칭 싸이클 동안 형성될 수 있는 스위칭 매트릭스를 통해 각각의 경로에 대해 하나의 셀을 저장할 수 있는 버퍼를 포함한다. 어떤 셀이 스위치를 통해 전송될 지를 결정한 후, 셀은 입구 라우터를 떠나서 스위칭 매트릭스를 통해 전송된다. 이러한 이송은 셀을 통해 전달되고 한 번에 입구 라우터에 더 이상 저장되지 않을 경우, 버퍼에서 셀의 일시적인 저장소를 포함한다.
본 발명은 데이타 스위칭용 소자 및 장치에 관한 것이다. 본 발명의 용도의 일실시예는 두개 이상의 프로세서가 메모리를 공유하는 시스템내에서 높은 대역폭 상호접속을 제공하는 것이다.
도 1은 GB 9828144.7 및 본 발명의 실시예의 시스템을 도시한 도면.
도 2는 본 발명의 실시예를 도시한 개략도.
도 3은 도 2의 실시예의 프로세싱을 도시한 개략도.
도 4는 도 2의 실시예에서 일련의 링크에 의하여 야기된 지연을 도시한 도면.
도 5는 조정이 요구되지 않는 경우에 본 발명에 따른 프로세싱을 도시한 도면.
도 6은 조정이 요구되는 경우에 본 발명에 따른 프로세싱을 도시한 도면.
도 7은 다른 스위칭 기술과 비교할때 본 발명에 따른 평균 지연시간을 도시한 도면.
도 8은 셀이 정확하게 전송되었다는 것을 확인하는 본 발명에 따른 프로세싱을 도시한 도면.
본 발명이 목적은 새롭고 유용한 데이터 스위칭 장치 및 방법을 제공하는 것이다.
전반적으로, 본 발명은 스위칭 매트릭스 자체가 전송될 셀의 대기 행렬 버퍼의 (예를 들어, 짧은) 헤드를 유지할 것을 제안한다. 이러한 대기 행렬 각각은 입구 라우터에 의해 저장된 가상 출력 대기 행렬 중 하나에 대응하며, 스위칭 매트릭스에 저장된 셀은 각각의 가상 출력 대기 행렬에서 대기되는 첫번째 셀로부터 반복된다. 따라서, 연결이 스위칭 매트릭스의 소정의 입력과 출력 사이에서 행해지는 것이 결정될 경우, 상기 연결을 따라 전송을 위해 적합한 셀은 스위칭 매트릭스에 이미 유용하다. 이는 입구(ingress) 라우터로부터 달성될 필요는 없다. 입구 라우터중 하나에 의해 새로운 셀을 받는대로, 셀은 셀에 대한 출구(egress) 라우터에 해당하는 입구 라우터의 가상 출력 큐(들)중 하나에 저장된다. 각각의 가상 출력 큐(queue) 및 큐 버퍼의 헤드는 선입선출(FIFO; first-in-first-out) 큐일 수 있고, 큐 버퍼의 헤드는 가상 출력 버퍼의 제 1 극소 엔트리를 복제한 것일 수 있다. 이는 예를 들어, 새로운 셀을 수신하고 가상 출력 큐에 저장되고, 또한 버퍼가 공간을 갖는경우, 큐 버퍼의 해당하는 헤드에 기록되는, 입구 라우터에 의해 달성될 수 있다. 그렇지 않다면, 셀은 버퍼가 셀을 위한 공간을 갖는 경우 큐 버퍼의 헤드에 저장되고, 기록될 수 있다. 버퍼가 공간을 갖는지 또는 갖지 않는지의 문제는 각각의 버퍼에 대한 크레디트 카운트 변수를 조사함으로써 해결된다.
따라서, 가상 출력 큐는 2개의 영역으로 분리되며, 제 1 영역은 큐 버퍼의 대응하는 헤드에 복제를 위해 대기하는 셀을 포함하고, 제 2 영역은 큐 버퍼의 헤드에 복제된 셀을 포함한다.
크레디트 카운트가 큐 버퍼의 대응하는 헤드의 자유 셀의 수를 정확히 나타내게 하는 적절한 방법은 다음과 같다. 새로운 셀이 가상 출력 큐에 기록되고, 큐 버퍼의 대응하는 헤드의 크레디트 카운트가 제로가 아닌 경우, 셀의 복제는 큐 버퍼의 헤드로 전송되어, 크레디트 카운트는 1만큼 감소된다. 접속부가 스위칭 매트릭스를 통해 입구 라우터의 셀을 스위치시키도록 야기시키는 제어기에 따라, 접속부 승인 신호가 입구 라우터로 전송되고 신용 카운트가 1만큼 증가된다. 주어진 가상 출력 큐의 제 1 영역에 적어도 하나의 셀이 있고, 큐 버퍼의 대응하는 헤드의 자유 셀의 수가 제로가 아닌 것이 결정됨에 따라, 제 1 영역에서 적어도 하나의 셀의 복제가 큐 버퍼의 헤드로 전송된다.
적정 시간에서, 예를 들면 입구 라우터가 큐(queue) 버퍼의 헤드가 상응하는 가상 출력 큐의 전단을 복제하는 것이 충족될 때, 입구 라우터는 제어기에 접속 요청을 전송한다.
하나 이상의 요청을 수신받으면, 제어기는 만족하는지를 결정한다. 우선,제어기는 수신된 요청중(예를 들면, 큐 버퍼의 헤드중 하나의 전단에서의 셀에 관한 요청들중) 소정의 하나가 다른 수신된 요청들중의 임의의 요청을 만족시키면서 만족될 수 있는 지를 결정한다. 그렇지 않으면(즉, 만약 적어도 2개의 요청이 충돌된다면), 제어기는 예를 들면, 공지된 기술에 따라 만족 여부를 결정하는 중재를 실행한다.
전술한 바와 같이, 입구 및 출구 라우터의 각 쌍을 위한 하나 이상의 가상 출력 큐가 있다. 예를 들면, 셀은 각 타입을 위한 상이한 가상 출력 큐(및 라인 큐의 상이한 헤드)를 갖는, 상이한 "타입" 예를 들면 우선 레벨일 수 있다. 이러한 경우에, 제어기는 접속될 입력 및 출력 포트 쌍과 제휴하여, 그들 사이에 전송될 셀의 우선 레벨을 결정하며, 그리고 정보를 스위칭 메트릭스에 전송하여, 셀이 우선 레벨을 갖는 큐와 상응하는 입력 및 출력 포트 쌍으로부터 전송된다. 전송할 우선 레벨의 결정은 공지된 기술에 따른 중재(예를 들면 미리 결정된 규칙)에 의해 실행된다.
구체적으로, 제 1측면에서 본 발명은 다수의 입구 라우터를 갖는 데이터 스위칭 디바이스, 다수의 출구 라우터, 스위칭 메트릭스 및 접속 제어기를 제공하며,
상기 스위칭 메트릭스는 상기 입구 라우터에 각각 접속되는 입력 포트 및 상기 출구 라우터에 각각 접속되는 출력 포트를 구비하며, 입력 및 출력 포트쌍 사이의 접속을 형성하기 위하여 제어기에 의해 제어되며;
각 출구 라우터에 대한 1 이상의 가상 출력 큐를 포함하는 각 입구 라우터, 여기서 각 가상의 출력 큐는 상기 스위칭 매트릭스 접속에 사용되는 상기 출구 라우터를 형성하는 헤더를 갖는 고정된 길이의 셀을 저장하기 위해 배열되고;
입구 라우터에 의한 새로운 셀의 수용 시에, 상기 셀에 대한 상기 출구 라우터에 대응하는 상기 입구 라우터의 상기 가상의 출력 큐 내에 셀을 저장하기 위해 배열되는 각 입구 라우터;
상기 스위칭 매트릭스의 각 입력 포트는 상기 입력 포트에 연결되는 입구 라우터 내의 각 가상 출력 큐에 대해 각각의 큐 버퍼의 헤드를 포함하고;
상기 스위칭 매트릭스는 상기 큐 버퍼의 헤드 중 대응하는 것으로부터 셀을 출력 포트에 전송하기 위해, 상기 스위칭 매트릭스가 주어진 입력 포트 및 출력 포트 사이에 연결을 형성할 때 배열되며;
각 출구 라우터는 상기 입구 라우터에 수신된 신호를 전송하기 위해, 상기 입구 라우터 중 하나의 가상의 출력 큐 중 하나로부터 셀의 출구 라우터에 의한 에러 없는 수신 시에 배열되고;
각 입구 라우터는 큐 버퍼의 헤드에의 상기 셀의 반향 및 상기 제어기에의 연결 리퀘스트를 전송하기 위해, 큐 버퍼의 대응하는 헤드의 자유 셀들의 숫자의 지표인 크레딧 카운트가 0이 아닐 때 배열되며; 그리고
각 입구 라우터는 상기 대응하는 수신 신호를 수신할 때까지 상기 대응하는 가상의 출력 내에 각 수신된 셀을 보유하기 위해 더 배열되는 것을 특징으로 한다.
제 2 특징에 있어서, 본 발명은 다수의 입구 라우터, 다수의 출구 라우터, 스위칭 매트릭스 및 접속 제어기를 가진 데이터 스위칭 장치를 동작시키기 위한 방법을 제공한다. 스위칭 매트릭스는 각각의 입구 라우터에 접속된 입력포트와 각각의 출구 라우터에 접속된 출력 라우터를 가지며, 입력 및 출력포트간에 접속을 형성하기 위하여 제어기에 의하여 제어된다. 상기 셀에 대한 입구 라우터에 대응하는 입구 라우터의 가상 출력 큐에 셀을 저장하기 위하여 새로운 셀의 수신시에 각각 배열되는 각각의 출구 라우터에 대하여 스위칭 매트릭스 접속에 사용될 입구 라우터를 한정하는 헤더를 가진 고정 길이 셀을 저장하도록 각각 배열되는 하나 이상의 가상 출력 큐를 각각의 입구 라우터에서 유지하는 단계를 포함하는 본 발명의 방법은 입력 포트에 접속된 입구 라우터의 각각의 가상 출력 큐에 대한 스위칭 매트릭스의 각 입력 포트에서 큐 버퍼의 각 헤드를 유지하는 단계를 포함하며, 주어진 입력 포트 및 출력 포트간의 접속을 형성하는 스위칭 매트릭스는 큐 버퍼의 하나 이상의 대응 헤드중 한 헤드로부터의 셀을 입력 포트로부터 출력 포트로 전송하며, 입구 라우터중 한 라우터의 가상 출력 큐중 하나로부터의 셀의 입구 라우터에 의한 에러 없는 수신시 입구 라우터는 수신 신호를 입구 라우터에 전송하며, 입구 라우터중 한 라우터에 의한 새로운 셀의 수신시 큐 버퍼의 대응 헤드의 자유 셀의 수를 나타내는 신뢰성 있는 카운트가 0이 아닌 경우에 입구 라우터는 큐 버퍼의 헤드에 셀의 응답을 전송하고 제어기에 접속 요구를 전송하며, 각각의 입구 라우터는 대응하는 수신 신호를 수신할때까지 각각 수신된 셀을 대응하는 가상 출력 큐에서 유지한다
본 발명의 실시예는 도면을 참조로하여 단지 예로써만 기술될 것이다.
여기에 기술된 본 발명의 실시예는 도 1를 참조로하여 앞서 기술된 시스템의 개발을 기술하며, 또한 대기시간의 축소 및 결함의 허용오차의 개선을 기술한다. 일 실시예가 도 2에 도시되어 있으며, 이 도면은 다수(16까지)의 멀티-처리 노드 1,3,...,31을 갖는 시스템을 도시한다. 각 노드는 라우터 디바이스(33)를 포함한다. 라우터 디바이스는 각각의 처리 노드와 중앙 상호접속 구조(57) 사이의 인터페이스(수신 및 송신 정보)를 제공한다.
이 구조(57)는 개별 전력 및 클록 도메인을 갖는 두개의 독립적인 채널로서 조직화된다. 각각의 채널은 하나의 마스터 및 수개의 매트릭스 디바이스로 구성되며, 매트릭스 디바이스의 개수는 이 구조의 총 대역폭을 결정한다. 멀티프로세서 시스템의 각 노드의 라우터는 캐이블에서 동작하는 고속 시리얼 링크의 어레이를 통하여 이 구조에 접속된다. 도 1과 관련한 공지 시스템과 마찬가지로, 현 실시예는 3타임의 디바이스, 즉 상호접속 및 처리 노드사이의 인터페이스를 제공하는 라우터 디바이스, 이 구조에서 스케쥴링 및 중재 기능을 제공하는 마스터 디바이스(제어기) 및 크로스바 기능을 제공하는 하나 이상의 매트릭스 디바이스를 포함한다. 하나의 채널을 따르는 노드의 송신 및 수신은 도 1에 설명한 구조와 동일하다. 즉, 라우터는 양방향 라우터일 수 있으며, 여기에서 데이터 입력 및 출력 기능은 입력 및 출력 라우터로서 간주 될 수 있고, 마스터(제어기) 및 순환 스위칭 매트릭스를 사용하여 (하나의 채널에서) 통신할 수 있다.
표준의 실패없는 조건에서, 메세지는 트래픽을 균형잡기 위하여 두개의 채널중 하나를 통하여 라우팅된다. 하나의 채널이 실패할 때, 다른 채널이 감소된 전체 대역폭으로 모든 트래픽을 운반할 수 있다. 신뢰할 수 있는 포트대포트 메세지 전달은 노드대노드 ack/nack 프로토콜의 지원에 의하여 보장되며, 이에 따라 상호접속된 모든 메세지 전달은 소스 노드에 다시 보고되고, 임의의 손상된 메세지가 자동으로 재전송된다.
현 실시예는 상술한 GB 9828144.7의 시스템으로부터 다음과 같은 변경부분을 포함한다.
·마스터에는 라우터 중재 기능을 이어받기 위하여 각각의 메세지의 등급 선택의 제어가 주어진다.
·매트릭스는 라우터에 대한 간섭없이 마스터에 의하여 생성된 접속에 대한 즉각적인 재반응을 가능하게 하기 위하여 제한된 메세지를 유지한다. 이것은 메트릭스의 한 세트의 큐 헤드(HOQ) 버퍼를 유지하여 달성되며, 하나의 HOQ는 소스 포트, 목적 포트 및 메세지 등급의 조합을 위한 것이다. 라인 블록킹의 헤드를 삽입하는 이와 같은 추가 저장을 피하기 위하여 라우터 버퍼(VOQ) 및 매트릭스 HOQ 사이의 1:1 대응이 존재한다.
·메세지 버퍼가 비어있는 저부하 상태에서, 최소 가능 대기시간을 달성하기 위하여 바이패스될 수 있다.
상술한 바와 같이, 이러한 개선점에 의하여, 매트릭스는 라우터에 의한 액션을 대기하지 않은채 마스터로부터 수신된 접속에 즉각적으로 대체할 수 있다. 즉, 모든 포스트-마스터-중재 라우터 액션은 중요한 경로로부터 효과적으로 제거되며, 이에 따라 전체 포트대포트 대기시간은 55ns로 낮아진다.
도 3은 한 채널의 입력 및 출력 포트의 동작에 대한 논리도이다. 새로운 메세지가 입력 라우터(60)에 도달하면, 등급 및 목적지가 헤더로부터 추출되고, 메세지는 적당한 VOQ(62)에 부가된다. 이 메세지는 에러없는 수신이 출력 라우터(64)에 의하여 승인될 때까지 VOQ(62)에서 유지된다. 다수의 매트릭스 디바이스는 제어기(마스터;68)에 의하여 제어된 매트릭스(66)를 지원한다. 만일 매트릭스 디바이스의 해당 HOQ(69)가 채워지지 않았다면, VOQ에 기록할 때와 동일한 시간에 메세지 복사본은 매트릭스 디바이스에 포워딩되고, 라우터는 새로운 메세지의 목적지 및 등급을 알리는 마스터(68)에게 접속_요구를 전송한다. 마스터는 아직 충족되지않은 요구의 버퍼를 유지한다.
접속_요구를 수신하면, 마스터(68)는 즉시 HOQ 버퍼가 도달 메시지를 수신하는 매트릭스 장치에 시그널링한다. 이러한 특징은 각 매트릭스 장치가 메시지의 다른 부분을 수신하기 때문에 필요하며(이 실시예에서), 따라서 일반적으로 장치 중 하나만이 상기 메시지 헤더로부터 상기 정보를 디코딩할 수 있을 것이다.
마스터(68)는 그후에 경쟁 요구사이를 조정하며 그후에 매트릭스(66)에 의해 확립되는 한 세트의 접속을 발행하며, 이러한 접속 중 하나는 고려중인 메시지에 대한 것이다. 마스터(68)는 또한 각 메시지를 포함하는 특정 HOQ를 식별하기 위해 각 접속에 대해 전송되는 메시지의 클래스를 매트릭스에 통지한다. 매트릭스(66)는 따라서 접속을 형성할 수 있으며 이러한 정보가 마스터(68)로부터 도달하자마자 메시지를 전달할 수 있다. 출구 라우터(64)는 매트릭스(66)로부터의 메시지 도달을 표시하기 위해 데이터_밸리드(data_valid)가 전송되며 출구 라우터(60)는 메시지가 매트릭스로부터 전송되었음을 표시하기 위해 접속_그랜트(connectin_grant)가 전송된다.
출구 라우터(64)는 메시지를 수신하면 메시지 CRC 필드를 검사하고 발신 출구 라우터에 응답(정확한 수신을 나타내는 애크(ack), 그렇지 않으면 내크(nack))을 전송한다. 출구 라우터(64)는 실패한 메시지를 폐기하고 메시지가 전송된 곳으로부터 노드로의 클래스에 대해 적절한 출구 큐(queue) EQ에 우수한 메시지를 대기시킨다.
도 1과 관련하여 상기에 논의된 공지된 시스템과 비교되는, 지연이 감소되는주요 수단은 상기에 설명된 바와 같이 접속_그랜트 및 출구 라우터 중재를 통해 경로를 제거하는 HOQ 버퍼, 및 마스터에 의한 접속의 중재시에 임계 경로로부터 매트릭스로의 직렬 링크를 포함한다.
메시지가 비어있는 VOQ에 도달하는 낮은 부하 상황에서, 메시지는 HOQ에 전달되고 VOQ에 메시지를 기록하면서 동시에 접속_요구가 발생할 것이다. 이것은 버퍼 기록 및 판독의 오버헤드를 방지한다.
마스터(68)가 접속_요구를 수신할 때, 입구 또는 출구에 대한 경쟁 요구가 없다면, 마스터(68)는 일반 중재 알고리즘을 바이패스시키고 매트릭스(66)로의 즉시 접속을 발생시킬 수 있다. 이것은 HOQ가 도달 메시지를 수신하는 일반 규격을 교체하며, 접속을 형성하고 (비어있는) HOQ에 메시지를 저장하지 않고서 요구된 목적지로 메시지를 전달하는 매트릭스(66)를 발생시킨다.
마지막으로, 우수한 CRC를 갖는 메시지가 비어있는 EQ에 도달하고 노드(즉, 메시지를 수신한 출구 라우터와 관련된 노드)가 메시지를 수용할 수 있다면, 메시지는 또 다른 불필요한 버퍼 판독 및 기록을 피하면서 즉시 전송된다.
입구 라우터(60)로부터 매트릭스(66)로의 메시지의 전달은 크레디트 프로토콜에 의해 제어된다. 이것은 매트릭스(66)가 요구/응답 시스템의 오버헤드 없이 새로운 메시지를 수용할 수 있는지를 입구 라우터(60)가 항상 알 수 있게 한다.
입구 라우터(60)는 각 비어있는 HOQ의 메시지의 용량에 초기화되어 시작하는 각 VOQ/HOQ 쌍에 대한 크레디트 카운터를 유지한다. 메시지가 HOQ로의 전송에 이용가능할 때, 이 카운터의 상태가 검사된다. 이용가능한 크레디트(카운터는 제로가 아님)가 있다면, 메시지는 직렬 인터페이스를 통해 전달되며 크레디트는 하나만큼 감소된다. 이후에 HOQ로부터 메시지가 제거되었음을 표시하는 접속_그랜트가 수신될 때, 크레디트 카운터는 증가된다. 매트릭스에 전송되는 새로운 메시지에 대한 크레디트가 충분하지 않으면, 메시지는 VOQ에 저장되고 이후에 크레디트가 이용가능하게 될때 전송된다.
본 발명의 영역 내에서 이러한 방식의 단순한 확장은 시스템이 상이한 크기의 메세지를 해결할 수 있도록 할 것이다. 단지 모든 메세지를 카운팅하는 크레디트 카운터 대신에, 메세지 워드를 카운트할 수 있다. 카운터는 그후에 첨가되거나 제거된 메세지에 대한 워드의 갯수에 의해 감소되거나 증가될 것이며, 새로운 메세지를 첨가할 수 있는 기준은 카운터가 감소 다음에 네거티브가 되지 않을 것이라는 것이다.
임의의 시간에 사용가능한 크레디트는 매트릭스(66)의 HQQ에서 미결 예비 용량의 입력 라우터(60)의 관점이다.
도 1을 참조로 하여 전술된 시스템에서, 메세지를 매트릭스에 전송할 때, 메세지는 VOQ로부터 소거된다. 그러나 본 발명의 실시예에서, 메세지는 출력 라우터(64)가 신뢰할만한 전달 프로토콜을 지원하기 위해 성공적인 수신을 보고할 때까지 VOQ에 포함된다. 따라서, VOQ의 점유 지역은 개념적으로 3개의 지역(임의의 또는 전체가 비어있을 수 있는)으로 분류된다.
W - 이 지역은 HOQ에 전송하기 위해 대기하는 메세지를 포함한다. 이 지역은 최근에 상응하는 HOQ에서 추가 메세지에 대한 크레디트가 전혀 없을 때만 사용된다.
H - 이 지역은 HOQ에 전송되며 메세지의 목적지로의 전방향 전송을 위해 대기하는 메세지를 표시한다.
A - 이 지역은 HOQ로부터 전송되지만 아직 응답(ack 또는 nack)이 수신되지 않은 메세지를 포함한다.
H 및 A가 VOQ의 개별적인 지역으로 도시되지만 이지역은 개념적으로: 입력 라우터(60)에 관한 한, 지역 H 및 A 는 매트릭스(66)에 이미 전송된 단일 지역을 구성한다. 라우터는 접속_그랜트신호를 통해 이러한 경계를 추적할 수 있지만 이는 전형적으로 불필요하다.
각각의 도착 메세지는 출력 라우터(64)에서 정확한 CRC에 대해 검사되며 ack(양호) 또는 nack(불량) 응답이 생성된다. 메세지 헤더 내의 시퀀스 번호는 손실 메세지를 대비하여 검사되며 만약 최근 메세지의 시퀀스 번호가 이전 메세지와 연속적이지 않다면, 임의의 손실 메세지에 대한 nack 응답이 최근 메세지에 대한 응답 이전에 생성된다. 출력 라우터(64)에 의해 생성된 응답은 발생 입력 라우터(60)에 응답을 다시 라우팅 하는 마스터(68)에 전송진다.
입력 라우터(60)에서, 도착 응답은 항상 적합한 VOQ의 헤더에서 메세지를 참고로 한다(이는 태깅 메세지 및 시퀀스 번호의 응답에 의해 검사된다). 메세지는 VOQ로부터 제거된다: 만약 응답이 ack이면, 메세지는 정확하게 전송되며 유기된다. 응답이 nack이면, 메세지는 VOQ 말단에 리큐잉되며 새로운 메세지가 있었던 것으로 취급된다.
각 HOQ 버퍼의 깊이는 VOQ로부터 채워진 크레디트 프로토콜을 통한 전체 대역폭에서 동작하고 스케쥴링 및 높은 로드 상태에서 효율적으로 진행하기 위한 중재를 허용하도록 충분할 메세지를 제공하기 위해 선택된다.
이전 요구를 위해, 메세지 버퍼가 비어있고, 메세지의 전체 대역폭 스트림이 노드로부터 도착하기 시작하는 시스템을 고려하자. 이러한 메세지 스트림이 VOQ 지역 W에서 큐잉되지 않은 HOQ 외부로 흘러나가도록 하기 위해 새로운 메세지는 0크레디트에 직면해서는 안된다. 노드로부터 도착한 제 1 메세지와 그 메세지에 대한 크레디트의 귀환 사이의 지연을 고려하면:
접속_요구 생성: 5ns
라우터-마스터 직렬 제어 인터페이스 20ns
마스터 중재 10ns
접속_그랜트 발생 5ns
마스터-라우터 직렬 제어 인터페이스 20ns
디코드 및 크레디트 복원 5ns
총 65ns
전체 대역폭에서 매 10ns 마다 이러한 채널에서 전송된 라우터로 메세지들이 도달하면, 이는 HOQ가 이러한 메세지 플로우를 스로틀링하는 크래디트의 부족을 방지하기 위해 최소한 7 메세지들을 보유하여야함을 지시한다. 물론 실질적으로, 마스터 중재는 포트 경쟁으로 인해 10ns 보다 훨씬 긴 시간이 걸릴 수 있다. 여분 HOQ 스페이스는 이러한 상황에서 플로우 스로팅 개시를 연기할 수 있다.
높은 로드 환경에서 스케줄링 및 중재가 효율적으로 진행하도록 충분한 메세지들을 제공하기 위해, HOQ가 채워지고 마스터(68)가 연속적인 일련의 접속들 중재를 시작하는 시스템을 고려한다. VOQ 영역 W에서 메세지 대기의 백로그가 존재한다고 가정하면, HOQ는 반환 크래디트가 VOQ로부터 플로우를 재시작하기 까지 접속들을 만족시키기에 충분한 메세지를 가져야만 한다. 마스터에서의 접속 발생 및 라우터로부터 도달하는 접속_요청 사이의 지연을 고려한다:
접속_그랜트 발생 5ns
마스터-라우터 직렬 제어 인터페이스 20ns
디코드 및 크래디트 복원 5ns
VOQ 영역 W 로부터 메세지 추출 10ns
접속_요청 발생 5ns
라우터-마스터 직렬 제어 인터페이스 20ns
총 65ns
접속들이 매 10ns 마다 발생되면, 이는 HOQ가 라우터로부터 새로운 메세지를 기다리는 동안 접속들에 대한 임의의 방해를 피하기 위해 최소한 7 메세지들을 포함하여야 함을 의미한다.
도4 내지 8은 본 실시예의 컴포넌트들에서 연산 타이밍 및 시퀀스를 보여준다. 본 실시예를 통한 대기시간(latency)은 입구(ingress) 라우터(60)내의 유효 메세지로부터 인출 라우터(64)에서 체크되는 유효 메세지로 정의된다. 직렬 링크들을 통한 대기시간은 도4에 제시된다. 다양한 연산들을 수행하는데 소모되는 시간이 하기에서 상술될 것이다.
1. 고속 메세지 전달
마스터(68)가 접속 요청을 수신하고 그 요청(HOQ 및 중재기 상태)에 관련된 입구 및 인출 포트에 대한 경쟁이 존재하지 않음을 탐지하면, 마스터(68)는 중재단계(경재을 공정하게 해결하기 위해 존재함)를 바이패스하여 즉시 접속을 허가할 수 있다. 이러한 "고속 메세지 전달" 특징은 본 실시예가 낮은 로드 조건상에 있거나 본 실시예가 확률적, 비-경쟁적 플로우들을 지원하는 경우에 메세지 전달 대기시간을 감소시킨다.
고속 메세지 전달에서, 메세지들은 HOQ에 저장될 필요가 없기 때문에 HOQ 라우팅 데이타는 마스터-메트릭스 인터페이스 상에서 메트릭스 장치로 전송되지 않는다.
이러한 연산에 대한 타임스케일이 도5에 제시된다. 목적지 포트들에 대한 경쟁이 존재하지 않는 경우에, 본 실시예는 상기에서 제시된 바와 같이 55ns "고속 메세지 전달" 을 통해 모든 포트들에 대한 풀포트 대역폭을 지원한다. 상기 실시예는 엄격한 비-차단 구조이며, 따라서 입력 또는 내부적인 분쟁이 존재하지 않는다.
2.조정된 메시지 전송
도6은 일정한 분쟁이 구조에 존재하지만, 상기 요구된 메시지는 여분의 대기열 연 없이도 전송되는 "정상(normal)" 타이밍을 도시하고 있다. 출력포트에 대한 분쟁이 발생한 경우에(상기 구조에서 두 개이상의 메시지들이 동일한 출력 노드로향하고 있음), 라우터-노드 인터페이스의 상기 제한된 밴드폭은 상기 HOQ 버퍼들에 대기된 메시지들 중 단지 하나만을 출력되도록 한다. 메시지들 사이의 충돌에 기인한 이러한 대기는 상기 구조상에서 평균 대기지연이 증가한 것으로 보인다. 이러한 증가 크기는 상기 애플리케이션의 전송 패턴(메시지들의 충돌 가능성)에 의존한다.
도7은 동일한 가능성과 랜덤 상호 메시지 갭들에 의해 모든 다른 포트들에 전송되는 16 포트 TSI의 실시예를 통해 상기 평균 메시지 대기시간을 도시하고 있다. 상기 차트는 상기 실시예의 성능이 M/M/1 대기열(즉, 대기열의 표시, 푸아송 분포된 도달 속도와 푸아송 분포된 서비스 속도를 가지고 있는 단일의 서버 Q로 언급되는 용어)의 최상의 작동에 근사하다는 것을, 특히 간단한 FIFO 대기된 구조(VOQ가 없음)에 비교하여, 지시하고 있다.
이러한 차트는 상기 설명된(도5를 참고로) 빠른 메시지 전송의 효과를 설명하고 있지 않으며 오히려, 적은 부하에서 상기 평균 대기시간을 감소시킬 것이다.
또한, 과부하의 상황에서 메시지 대기시간의 상기 증가는 상기 구조의 특징이 아니며, 출력 분쟁에 기인한다는 것을 주의하여야 한다. 즉, 이러한 효과를 완화하기 위해 노드는 각 노드가 메시지들을 발생할 수 있는 것보다 더 빠른 속도(20% 빠른)로 메시지를 수신(및 처리)할 수 있어야 한다. 실제로, 이것은 전체 시스템의 성능을 개선할 필요 없이도 분쟁의 포인트를 더 아래의 데이터흐름으로 이동하도록 작동하게 될 것이다.
라우터 승인/불승인 대기시간은 두 노드 사이에서 완전 밴드폭 흐름을 유지하기 위해 요구되는 상기 VOQs의 최소 깊이를 정의한다. 도8은 정상 승인/불승인 대기시간은 115ns임을 도시하고 있다. 10ns 메시지로, 이것은 는 상기 H&A 지역에 대한 12메시지들의 절대적인 최소 VOQ 깊이를 지시한다. 상기 W의 지역의 사이즈는 상기 노드로부터의 중단된 인터페이스를 다시 시작하는 상기 대기시간에 의해 결정된다.
비록 본 발명이 단일 실시예만으로 상기에서 설명되어 있지만, 많은 수정이 본 발명의 범위에서 가능하다. 예를 들어, 본 발명은 다중-채널 전송으로 제한되지 않는다. 게다가, 본 발명은 데이터 프로세서들 사이의 데이터 전송으로 한정되지 않으며, 다른 디지털 통신 시스템에서 사용될 수 있다.
또한, 비록 본 발명이 상기에서 각 셀들이 단일 노드로 전송되는 셀들에 관해서만 설명되어 있지만, 본 발명은 또한 멀티캐스트 신호들의 경우에도 적용할 수 있다. 예를 들어, 하나 이상의 출구 라우터로 전송되는 셀은 상기 입구 라우터에 의해 복수의 셀들로 나누어 질 수 있으며, 각 셀들은 단일 출구 라우터로 전송된다. 유사하게, 단일 출구 라우터와 관련된 복수의 출력으로 전송되는 셀들은 그들의 헤더에 상기 정보를 포함할 수 있으며, 따라서 상기 출구 라우터는 그들을 상응하게 전송할 수 있다.
유사하게, 비록 본 발명의 셀들이 보통 동일한 길이이더라도 주어진 셀의 상기 필드 중 일정한 필드들은 그들이 유용한 정보를 전달하지 않는다는 점에서 유용하지 않을 수 있다.

Claims (16)

  1. 다수의 입구 라우터(33;60), 다수의 출구 라우터(33;64), 스위칭 매트릭스(57;66) 및 커넥션 컨트롤러(68)를 가지고;
    상기 스위칭 매트릭스(57;66)는 쌍을 이루는 입력 및 출력 포트간의 연결을 형성하기 위한 상기 컨트롤러(68)에 의해 컨트롤되는 각각 상기 입구 라우터(33;64)에 연결된 입력 포트와 각각 상기 입구 라우터(33;64)에 연결된 출력 포트를 가지며;
    각 입구 라우터(33,60)는 각 출구 라우터(33;64)에 대해 하나 이상의 가상 출력 큐(62)를 포함하고, 각 가상 출력 큐(62)는 상기 스위칭 매트릭스(57;66)에서 사용되는 상기 출구 라우터(33;64)를 정의하는 헤더를 가지는 고정된 길이 셀을 저장하기 위해 배치되며;
    각 입구 라우터(33;60)는, 상기 입구 라우터(33,60)에 의해 새로운 셀을 수취할 때, 상기 출구 라우터(33;64)에 상응하는 상기 입구 라우터(33,60)의 상기 가상 출력 큐(62) 내에 셀을 저장하기 위해 배치되는 데이터 스위칭 장치로서,
    상기 스위칭 매트릭스(57;66)의 각 입력 포트는 입력 포트와 연결된 상기 입구 라우터(33,60) 내에서 각 가상 출력 큐(62)에 대한 큐 버퍼(69)의 각 헤드를 포함하며;
    상기 스위칭 매트릭스(57;66)는, 스위칭 매트릭스(57,66)가 부여된 입력 포트 및 출력 포트 사이에 커넥션을 형성할 때, 큐 버퍼(69)의 상응하는 헤더 하나에의해 출력 포트로 하나의 셀을 전송하기 위해 배치되며;
    각 출구 라우터(33;64)는, 상기 입구 라우터(33,60) 중 하나의 가상 출력 큐(62)의 하나에 의한 하나의 셀의 출구 라우터(33;64)에 의해 에러 프리가 수취될 때, 입구 라우터로 수취 신호를 전송하기 위해 배치되며;
    각 입구 라우터(33,60)는, 상기 가상 출력 큐(62) 내에 셀을 저장할 때, 만약 상응하는 큐 버퍼(69)의 헤드의 프리 셀의 수자가 지시하는 크레디트 카운트가 제로가 아니라면, 큐 버퍼(69)의 헤드로 셀의 응답을 전송하고 상기 컨트롤러로 연결 요구를 전송하기 위해 배치되며; 및
    각 입구 라우터(33;60)가 상응하는 수취 신호를 받을 때 까지 상응하는 가상 출력 큐(62) 내에서 각 받아들여진 셀을 보유하기 위해 더 배치되는 것을 특징으로 하는 데이터 스위칭 장치.
  2. 제 1 항에 있어서,
    상기 컨트롤러(68)가 스위칭 매트릭스(57;66)를 통해 입구 라우터(33,60)의 셀을 스위치하기 위한 연결을 발생시킬 때, 연결 승인 신호는 상기 입구 라우터(33,60)에 의해 전송되고, 하나씩 크레디트 카운트가 증가하는 것을 특징으로 하는 데이터 스위칭 장치.
  3. 제 1 또는 제 2 항에 있어서,
    큐 버퍼(69)의 헤드에 대한 셀 응답이 있을 때, 상기 각 크레디트 카운트는하나씩 감소하는 것을 특징으로 하는 데이터 스위칭 장치.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 가상 출력 큐(62)는 두 개의 영역으로 분리되고, 제 1 영역(W)은 상응하는 큐 버퍼(69)의 헤드에 대한 응답을 기다리는 셀을 포함하고, 제 2 영역(H,A)은 큐 버퍼(69)의 헤드에 대해 응답한 셀을 포함하고, 제 1 영역에서 적어도 하나의 셀을 결정하고 상응하는 큐 버퍼(69)의 헤드의 프리 셀의 수가 제로가 아닐 때, 상기 제 1 영역(W)에서 적어도 하나의 셀의 응답은 큐 버퍼(69)의 헤드로 전송되고, 상기 셀은 제 2 영역(H,A)으로 전송되며, 연결 요구는 상기 컨트롤러(68)로 전송되는 것을 특징으로 하는 데이터 스위칭 장치.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    각 셀은 우선권 레벨과 결합하고, 상기 가상 출력 큐(62)는 각 셀의 우선권 레벨에 대한 가상 출력 큐(62)를 포함하고, 상기 컨트롤러(68)는, 연결되어질 입력 및 출력 포트 쌍과 제휴하여, 그들 간에 전송되는 셀의 우선권 레벨을 결정하는 것을 특징으로 하는 데이터 스위칭 장치.
  6. 제 1 항 내지 제 5 항 중 어느 한 항에 있어서,
    상기 컨트롤러(68)는 상기 가상 출력 큐(62) 내의 셀 중 부여된 어느 하나의 셀을 또 다른 입력 및 출력 포트 사이에서 가상 출력 큐(62) 내의 하나의 셀을 전송하는 것을 방지할 필요 없이 적절한 입력 및 출력 포트 쌍 간에 전송될 수 있는 지를 결정하고 결정된다면 부여된 셀을 전송하는 것을 특징으로 하는 데이터 스위칭 장치.
  7. 제 1 항 내지 제 6 항 중 어느 한 항에 있어서,
    각 출구 라우터(33;64)는 상기 스위칭 매트릭스(57;66)에 의해 전송된 셀이 아직 수신되지 않았는 가를 정확하게 검출하기 위해 배치되고, 수신되지 않은 경우 상응하는 입구 라우터(33,60)로 재전송 요구를 전송하는 것을 특징으로 하는 데이터 스위칭 장치.
  8. 제 4 항 및 제 7 항에 있어서,
    상기 재전송 요구를 받을 때, 상기 입구 라우터(33,60)는 상기 제 1 영역(W)으로 상기 제 2 영역(H,A)내의 상응하는 셀을 전송하고, 상기 컨트롤러(68)로 상응하는 연결 요구를 전송하는 것을 특징으로 하는 데이터 스위칭 장치.
  9. 다수의 입구 라우터(33,60), 다수의 출구 라우터(33;64), 스위칭 매트릭스(57;66) 및 커넥션 컨트롤러(68)을 가지며,
    상기 스위칭 매트릭스(57;66)는 입력 및 출력 포트 쌍간의 연결을 형성하기 위한 상기 컨트롤러(68)에 의해 컨트롤되고, 상기 각 입구 라우터(33,60)와 연결된 입력 포트와 상기 각 출구 라우터(33,64)와 연결된 출력 포트를 가지는 데이터 스위칭 장치를 동작시키는 방법으로서,
    각 가상 출력 큐(62)는 상기 스위칭 매트릭스(57;66) 커넥션 내에서 사용될 상기 출구 라우터(33;64)를 정의하는 헤드를 가지는 고정 길이 셀을 저장하기 위해 배치되고, 각 입구 라우터(33,60)는 새로운 셀을 수취할 때 셀로 향하는 상기 출구 라우터(33;64)에 상응하는 상기 입구 라우터(33;60)의 상기 가상 출력 큐(62) 내에서 셀을 저장하기 위해 배치되며, 각 입구 라우터(33,60)에서 각각의 출구 라우터(33;64)에 대해 하나 이상의 가상 출력 큐(62)를 유지하는 단계를 포함하며,
    입력 포트에 연결된 상기 입구 라우터(33,60) 내에서 각 가상 출력 큐(62)에 대하여 상기 스위칭 매트릭스(57;66)의 각 입력 포트에서 큐 버퍼(69)의 각 헤드를 유지하는 단계;
    상기 스위칭 매트릭스(57;66)가 부여된 입력 포트 및 출력 포트간에 연결을 형성할 때, 상기 스위칭 매트릭스(57;66)가 입력 포트로부터 출력 포트로 큐 버퍼(69)의 하나 이상 상응하는 헤드 중 하나에 의한 셀을 전송하는 단계;
    상기 입구 라우터(33,60) 중 하나의 상기 가상 출력 큐(62)의 하나에 의한 셀의 출구 라우터(33;64)에 의해 에러 프리가 수취될 때, 상기 출구 라우터(33;64)가 상기 입구 라우터(33,60)로 수취 신호를 전송하는 단계;
    상기 입구 라우터(33,60)의 하나에 의해 새로운 셀이 수취될 때, 그리고, 만약 큐 버퍼(69)의 상응하는 헤드의 프리 셀의 수를 나타내는 크레디트 카운트가 제로가 아닐 때, 상기 입구 라우터(33;60)가 큐 버퍼(69)의 헤드로 상기 셀의 응답 및 컨트롤러(68)로 연결 요구를 전송하는 단계; 및
    각 입구 라우터(33;60)가 상응하는 상기 수취 신호를 받을 때 까지 상응하는 가상 출력 큐(62) 내에서 받아들여진 각 셀을 보유하는 단계를 더 포함하는 데이터 스위칭 장치를 동작시키는 방법.
  10. 제 9 항에 있어서,
    상기 컨트롤러(68)가 상기 스위칭 매트릭스(57;66)를 통해 입구 라우터(33,60)의 셀을 스위치하기 위해 연결을 발생시킬 때, 연결 승인 신호는 입구 라우터(33,60)으로 전송되고, 하나씩 크레디트 카운트가 증가하는 것을 특징으로 하는 데이터 스위칭 장치를 동작시키는 방법.
  11. 제 9 항 또는 제 10 항에 있어서,
    상기 큐 버퍼(69)의 헤드로 셀의 응답이 있을 때, 상기 각 크레디트 카운트는 하나씩 감소하는 것을 특징으로 하는 데이터 스위칭 장치를 동작시키는 방법.
  12. 제 9 항 내지 제 11 항 중 어느 한 항에 있어서,
    상기 가상 출력 큐(62)는 두 개의 영역으로 분리되고, 제 1 영역(W)은 상응하는 큐 버퍼(69)의 헤드에 대한 응답을 기다리는 셀을 포함하고, 제 2 영역(H,A)은 큐 버퍼(69)의 헤드에 대해 응답한 셀을 포함하고, 제 1 영역에서 적어도 하나의 셀을 결정하고 상응하는 큐 버퍼(69)의 헤드의 프리 셀의 수가 제로가 아닐 때, 상기 제 1 영역(W)에서 적어도 하나의 셀의 응답은 큐 버퍼(69)의 헤드로 전송되고, 상기 셀은 제 2 영역(H,A)으로 전송되며, 연결 요구는 상기 컨트롤러(68)로 전송되는 것을 특징으로 하는 데이터 스위칭 장치를 동작시키는 방법.
  13. 제 9 항 내지 제 12 항 중 어느 한 항에 있어서,
    각 셀은 우선권 레벨과 결합하고, 상기 가상 출력 큐(62)는 각 셀의 우선권 레벨에 대한 가상 출력 큐(62)를 포함하고, 상기 컨트롤러(68)는, 연결되어질 입력 및 출력 포트 쌍과 제휴하여, 그들 간에 전송되는 셀의 우선권 레벨을 결정하는 것을 특징으로 하는 데이터 스위칭 장치를 동작시키는 방법.
  14. 제 9 항 내지 제 13 항 중 어느 한 항에 있어서,
    상기 컨트롤러(68)는 상기 가상 출력 큐(62) 내의 셀 중 부여된 어느 하나의 셀을 또 다른 입력 및 출력 포트 사이에서 가상 출력 큐(62) 내의 하나의 셀을 전송하는 것을 방지할 필요 없이 적절한 입력 및 출력 포트 쌍으로 전송될 수 있는 지를 결정하고, 결정된다면 부여된 셀을 전송하는 것을 특징으로 하는 데이터 스위칭 장치를 동작시키는 방법.
  15. 제 9 항 내지 제 14 항 중 어느 한 항에 있어서,
    각 출구 라우터(33;64)는 상기 스위칭 매트릭스(57;66)에 의해 전송된 셀이 아직 수신되지 않았는 가를 정확하게 검출하기 위해 배치되고, 수신되지 않은 경우 상응하는 입구 라우터(33,60)로 재전송 요구를 전송하는 것을 특징으로 하는 데이터 스위칭 장치를 동작시키는 방법.
  16. 제 12 항 또는 제 15 항에 있어서,
    상기 재전송 요구를 받을 때, 상기 입구 라우터(33,60)는 상기 제 1 영역(W)으로 상기 제 2 영역(H,A)내의 상응하는 셀을 전송하고, 상기 컨트롤러(68)로 상응하는 연결 요구를 전송하는 것을 특징으로 하는 데이터 스위칭하는 장치를 동작시키는 방법.
KR1020027016679A 2000-06-06 2001-06-01 스위칭 시스템 KR20030051433A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0013571.5 2000-06-06
GBGB0013571.5A GB0013571D0 (en) 2000-06-06 2000-06-06 Switching system

Publications (1)

Publication Number Publication Date
KR20030051433A true KR20030051433A (ko) 2003-06-25

Family

ID=9892954

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027016679A KR20030051433A (ko) 2000-06-06 2001-06-01 스위칭 시스템

Country Status (9)

Country Link
US (1) US6876663B2 (ko)
EP (1) EP1287648B1 (ko)
JP (1) JP2003536323A (ko)
KR (1) KR20030051433A (ko)
CN (1) CN1443413A (ko)
AU (1) AU2001262507A1 (ko)
DE (1) DE60126934T2 (ko)
GB (1) GB0013571D0 (ko)
WO (1) WO2001095576A1 (ko)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030084219A1 (en) * 2001-10-26 2003-05-01 Maxxan Systems, Inc. System, apparatus and method for address forwarding for a computer network
US7110360B1 (en) * 2001-11-05 2006-09-19 Juniper Networks, Inc. Credit-based flow control over unreliable links
US7424013B1 (en) * 2001-12-20 2008-09-09 Applied Micro Circuits Corporation System and method for granting arbitrated bids in the switching of information
US7352694B1 (en) * 2001-12-14 2008-04-01 Applied Micro Circuits Corporation System and method for tolerating data link faults in a packet communications switch fabric
US8418129B1 (en) 2001-12-14 2013-04-09 Qualcomm Incorporated Method for automatically generating code to define a system of hardware elements
US7085846B2 (en) * 2001-12-31 2006-08-01 Maxxan Systems, Incorporated Buffer to buffer credit flow control for computer network
US7145914B2 (en) * 2001-12-31 2006-12-05 Maxxan Systems, Incorporated System and method for controlling data paths of a network processor subsystem
US7295561B1 (en) 2002-04-05 2007-11-13 Ciphermax, Inc. Fibre channel implementation using network processors
US7307995B1 (en) 2002-04-05 2007-12-11 Ciphermax, Inc. System and method for linking a plurality of network switches
US7406038B1 (en) 2002-04-05 2008-07-29 Ciphermax, Incorporated System and method for expansion of computer network switching system without disruption thereof
US20030195956A1 (en) * 2002-04-15 2003-10-16 Maxxan Systems, Inc. System and method for allocating unique zone membership
US20030200330A1 (en) * 2002-04-22 2003-10-23 Maxxan Systems, Inc. System and method for load-sharing computer network switch
US20030202510A1 (en) * 2002-04-26 2003-10-30 Maxxan Systems, Inc. System and method for scalable switch fabric for computer network
US7263091B1 (en) * 2002-05-23 2007-08-28 Juniper Networks, Inc. Scalable routing system
US20040030766A1 (en) * 2002-08-12 2004-02-12 Michael Witkowski Method and apparatus for switch fabric configuration
CN101041701B (zh) 2002-09-20 2013-02-27 埃克森美孚化学专利公司 包括丙烯的聚合物及其应用
US20050105538A1 (en) * 2003-10-14 2005-05-19 Ananda Perera Switching system with distributed switching fabric
US7852836B2 (en) * 2003-11-19 2010-12-14 Cray Inc. Reduced arbitration routing system and method
US7688816B2 (en) * 2004-03-15 2010-03-30 Jinsoo Park Maintaining packet sequence using cell flow control
US20060165081A1 (en) * 2005-01-24 2006-07-27 International Business Machines Corporation Deflection-routing and scheduling in a crossbar switch
US8135024B2 (en) * 2005-11-14 2012-03-13 Corning Incorporated Method and system to reduce interconnect latency
US20080151894A1 (en) * 2006-12-22 2008-06-26 Intel Corporation Selectively hybrid input and output queued router
JP5034491B2 (ja) * 2006-12-27 2012-09-26 株式会社日立製作所 スイッチにおける優先度帯域制御方法
US8862706B2 (en) 2007-12-14 2014-10-14 Nant Holdings Ip, Llc Hybrid transport—application network fabric apparatus
US7904602B2 (en) * 2008-02-05 2011-03-08 Raptor Networks Technology, Inc. Distributed computing bus
CN101272348B (zh) * 2008-04-30 2012-07-04 杭州华三通信技术有限公司 一种带宽控制的方法和***
CN101286947B (zh) 2008-05-30 2010-12-01 杭州华三通信技术有限公司 数据输出控制方法和装置
WO2010045732A1 (en) * 2008-10-20 2010-04-29 Tadeusz Szymanski Crossbar switch and recursive scheduling
US8868700B2 (en) 2010-12-28 2014-10-21 Nant Holdings Ip, Llc Distributed network interfaces for application cloaking and spoofing
US10212101B2 (en) 2014-01-14 2019-02-19 Nant Holdings Ip, Llc Low level provisioning of network fabrics
US9917728B2 (en) 2014-01-14 2018-03-13 Nant Holdings Ip, Llc Software-based fabric enablement
KR102269068B1 (ko) * 2017-03-10 2021-06-24 한국전자통신연구원 스위칭을 위한 스케줄링 방법 및 스케줄러
US11165721B1 (en) * 2020-04-09 2021-11-02 Arista Networks, Inc. Reprogramming multicast replication using real-time buffer feedback

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4475192A (en) * 1982-02-16 1984-10-02 At&T Bell Laboratories Data packet flow control scheme for switching networks
JPH01165246A (ja) 1987-12-22 1989-06-29 Oki Electric Ind Co Ltd パケット交換方式
MX9308193A (es) 1993-01-29 1995-01-31 Ericsson Telefon Ab L M Conmutador atm de acceso controlado.
US5515359A (en) * 1994-08-26 1996-05-07 Mitsubishi Electric Research Laboratories, Inc. Credit enhanced proportional rate control system
GB9511844D0 (en) * 1995-06-10 1995-08-09 Plessey Telecomm Atm local access
US5732087A (en) * 1996-05-10 1998-03-24 Mitsubishi Electric Information Technology Center America, Inc. ATM local area network switch with dual queues
US6747954B1 (en) * 1997-12-19 2004-06-08 Telefonaktiebolaget Lm Ericsson (Publ) Asynchronous transfer mode switch providing pollstate status information
US6647019B1 (en) * 1998-04-29 2003-11-11 Pmc-Sierra, Inc. Packet-switch system
US6501731B1 (en) * 1998-06-27 2002-12-31 Intel Corporation CBR/VBR traffic scheduler
GB9828144D0 (en) 1998-12-22 1999-02-17 Power X Limited Data switching apparatus
US6721271B1 (en) 1999-02-04 2004-04-13 Nortel Networks Limited Rate-controlled multi-class high-capacity packet switch

Also Published As

Publication number Publication date
AU2001262507A1 (en) 2001-12-17
DE60126934D1 (de) 2007-04-12
EP1287648A1 (en) 2003-03-05
DE60126934T2 (de) 2007-11-15
WO2001095576A1 (en) 2001-12-13
EP1287648B1 (en) 2007-02-28
JP2003536323A (ja) 2003-12-02
US6876663B2 (en) 2005-04-05
GB0013571D0 (en) 2000-07-26
US20020012344A1 (en) 2002-01-31
CN1443413A (zh) 2003-09-17

Similar Documents

Publication Publication Date Title
US6876663B2 (en) Switching system
US8135024B2 (en) Method and system to reduce interconnect latency
EP1779607B1 (en) Network interconnect crosspoint switching architecture and method
US7724733B2 (en) Interconnecting network for switching data packets and method for switching data packets
US6907041B1 (en) Communications interconnection network with distributed resequencing
US6542502B1 (en) Multicasting using a wormhole routing switching element
US7899927B1 (en) Multiple concurrent arbiters
US7061929B1 (en) Data network with independent transmission channels
US7843816B1 (en) Systems and methods for limiting low priority traffic from blocking high priority traffic
US11799799B2 (en) Use of stashing buffers to improve the efficiency of crossbar switches
US20130182704A1 (en) Prioritization and preemption of data frames over a switching fabric
US20030174721A1 (en) Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
US20020044560A1 (en) Internet switch router
US20030174720A1 (en) Fibre channel arbitrated loop bufferless switch circuitry to increase bandwidth without significant increase in cost
US20010038634A1 (en) Methods and apparatus for event-driven routing
JP2002533994A (ja) データ交換方法およびその装置
US7613849B2 (en) Integrated circuit and method for transaction abortion
KR100307375B1 (ko) 랜스위치구조
US20070110052A1 (en) System and method for the static routing of data packet streams in an interconnect network
US6975626B1 (en) Switched network for low latency communication
US7065580B1 (en) Method and apparatus for a pipelined network
US7391787B1 (en) System and method for opportunistic request-grant switching
US11269557B2 (en) System and method for ensuring command order in a storage controller
WO2021177997A1 (en) System and method for ensuring command order in a storage controller
KR20230002947A (ko) 온칩 라우터

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid