KR20090127490A - 고속의 패킷 라우팅 시스템 장치 및 방법 - Google Patents

고속의 패킷 라우팅 시스템 장치 및 방법 Download PDF

Info

Publication number
KR20090127490A
KR20090127490A KR1020080053500A KR20080053500A KR20090127490A KR 20090127490 A KR20090127490 A KR 20090127490A KR 1020080053500 A KR1020080053500 A KR 1020080053500A KR 20080053500 A KR20080053500 A KR 20080053500A KR 20090127490 A KR20090127490 A KR 20090127490A
Authority
KR
South Korea
Prior art keywords
packet
input
output port
router
port
Prior art date
Application number
KR1020080053500A
Other languages
English (en)
Other versions
KR101495811B1 (ko
Inventor
이승욱
이준환
송용호
조성민
하진석
Original Assignee
삼성전자주식회사
한양대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사, 한양대학교 산학협력단 filed Critical 삼성전자주식회사
Priority to KR20080053500A priority Critical patent/KR101495811B1/ko
Priority to US12/481,406 priority patent/US20090304017A1/en
Publication of KR20090127490A publication Critical patent/KR20090127490A/ko
Application granted granted Critical
Publication of KR101495811B1 publication Critical patent/KR101495811B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/56Routing software
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/60Router architectures
    • 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/3009Header conversion, routing tables or routing tags

Landscapes

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

Abstract

본 발명은 고속의 패킷 라우팅 시스템에서 패킷 라우터 장치 및 방법에 관한 것으로서, 입력포트를 통해 입력된 패킷을 임시 저장한 후 이전 라우터에서 결정된 출력포트로 출력하는 입력부와, 상기 입력된 패킷에 대한 다음 라우터의 출력포트를 결정하는 제어부를 포함하여 가상 채널 할당 및 물리 채널을 할당하는 로직을 간단하게 하여 라우팅 시 발생하는 지연시간을 최소화시킬 수 있으며, 멀티 컴퓨팅 환경에서 고성능의 통신 백본 환경을 구성할 수 있다.
패킷 라우팅, 라우팅 시스템, 라우터, 라우터 구조

Description

고속의 패킷 라우팅 시스템 장치 및 방법{APPARATUS AND METHOD FOR HIGH SPEED PACKET ROUTING SYSTEM}
본 발명은 고속의 패킷 라우팅 시스템에 관한 것으로, 특히, 단일 사이클 내에 패킷 라우팅이 가능한 라우팅 시스템 장치 및 방법에 관한 것이다.
일반적으로, 라우터(router)는 입력 패킷을 처리하고, 패킷의 목적지를 결정하여 전송하는 역할을 수행한다. 상기 라우터는 도 1에 도시된 바와 같이 입력포트를 통해 입력되는 패킷을 임시 저장하는 N개의 입력부(101, 103)와 상기 임시 저장된 패킷을 출력포트로 내보내기 위한 제어 신호를 생성하는 제어부(111)와 상기 제어부의 제어에 따라 상기 입력포트와 출력포트를 연결하는 크로스바(113)로 구성된다.
도 2a 내지 도 2c를 참조하여 상기 라우터의 구조를 상세히 살펴보면, 각 입력부(101, 103)는 도 2a에 도시된 바와 같이 역다중화기(201)를 통해 다수의 FIFO(First Input First Output) 버퍼들(203, 205) 중에서 입력 패킷을 저장할 FIFO 버퍼를 결정한 후 해당 FIFO 버퍼에 입력 패킷을 저장하고, 상기 제어부(111)의 제어에 따라 다중화기(207)를 통해 상기 다수의 FIFO 버퍼들(203, 205) 중 크로스바(113)의 입력으로 사용할 FIFO 버퍼를 결정하여 해당 FIFO 버퍼의 패킷을 크로스바(113)로 출력한다.
또한, 상기 제어부(111)는 도 2b에 도시된 바와 같이 라우팅 모듈(221)을 통해 상기 각 입력부(101, 103)로부터 제공된 패킷을 어느 출력포트로 전송할 것인지 결정하고, 상기 가상 채널 할당기(223)를 통해 상기 패킷을 다음 라우터의 어느 가상 채널 즉, 어느 FIFO 버퍼에 저장할 것인지를 결정한다. 이후, 상기 제어부(111)는 스위치 할당기(225)를 통해 서로 다른 입력포트를 통해 입력된 패킷을 동일한 출력포트로 출력시키려고 하는 경우 어느 패킷을 먼저 출력시킬지 결정한다.
상기 크로스바(113)는 도 2c에 도시된 바와 같이, 모든 입력포트를 입력으로 받는 다중화기(207)를 통해 상기 제어부(111)의 스위치 할당기(225)로부터 제공된 신호에 따라 입력포트와 출력포트를 연결하여 패킷을 출력시킨다.
즉, 상기 라우터는 입력포트를 통해 입력된 패킷을 출력포트로 전달하기까지 총 세 단계의 과정, 즉, 라우팅 계산, 가상 채널 할당 및 스위치 할당과 같은 세 단계의 과정을 수행해야 한다.
도 3은 종래 기술에 따른 라우터의 동작 순서를 도시하고 있다.
상기 도 3을 참조하면, 먼저 라우터는 301단계에서 입력포트에 패킷이 도착되면, 303단계에서 역다중화기를 거쳐 특정 FIFO 버퍼에 상기 패킷을 저장하고, 제어부의 라우팅 모듈을 통해 상기 입력된 패킷의 헤더를 이용하여 라우팅 계산을 수 행함으로써, 출력포트를 결정한다.
이후, 상기 라우터는 305단계에서 상기 결정된 출력포트에 가상 채널을 할당한다. 즉, 어느 FIFO 버퍼의 패킷을 상기 결정된 출력포트로 전송할지 결정한다. 이후, 상기 라우터는 307단계에서 물리채널 즉, 스위치를 할당한 후, 309단계로 진행하여 출력포트를 통해 패킷을 전송하고 본 발명에 따른 알고리즘을 종료한다.
상기와 같이 종래의 라우터는 패킷 라우팅을 위해 라우팅 계산, 가상 채널 할당 및 스위치 할당과 같은 세 단계의 과정을 수행해야 한다. 이때, 상기 가상 채널 할당과 스위치 할당은 높은 복잡도로 인해 동시에 수행하기 어렵게 때문에 각 단계는 최소 1 클럭 사이클을 필요로 하게 된다. 즉, 종래의 라우터는 패킷을 라우팅하는데 있어서 최소 3 클럭 사이클의 지연 시간을 소요하게 됨으로써, 전체 라우터 성능이 저하되는 문제점을 갖게 된다.
이에 따라, 최근에는 종래 기술에 따른 라우터에 비해 좀 더 짧은 시간 내에 패킷을 라우팅하는 라우팅 시스템의 제공이 필요되고 있다.
본 발명은 상술한 바와 같은 문제점을 해결하기 위해 도출된 것으로서, 본 발명의 목적은 단일 사이클 내에 패킷 라우팅이 가능한 고속의 라우팅 시스템 장치 및 방법을 제공함에 있다.
본 발명의 다른 목적은 패킷 라우팅 시스템에서 라우팅시 발생되는 지연시간을 최소화시키기 위한 장치 및 방법을 제공함에 있다.
상술한 목적들을 달성하기 위한 본 발명의 제 1 견지에 따르면, 고속의 패킷 라우팅 시스템에서 패킷 라우터 장치는, 입력포트를 통해 입력된 패킷을 임시 저장한 후 이전 라우터에서 결정된 출력포트로 출력하는 입력부와, 상기 입력된 패킷에 대한 다음 라우터의 출력포트를 결정하는 제어부를 포함하는 것을 특징으로 한다.
상술한 목적들을 달성하기 위한 본 발명의 제 2 견지에 따르면, 고속의 패킷 라우팅 시스템에서 패킷을 라우팅하는 방법은, 입력포트를 통해 입력되는 패킷을 임시 저장하는 과정과, 상기 패킷에 대한 다음 라우터의 출력포트를 결정하는 과정과, 상기 패킷과 상기 결정된 출력포트를 이전 라우터에서 결정된 출력포트로 출력하는 과정을 포함하는 것을 특징으로 한다.
본 발명은 패킷 라우팅 시스템에서 패킷에 대한 다음 라우터의 출력포트를 미리 결정하여 하나의 가상 채널 큐로 입력된 패킷을 해당 가상 채널 큐와 연결된 출력포트로만 출력함으로써, 가상 채널 할당 및 물리 채널을 할당하는 로직을 간단하게 하여 라우팅 시 발생하는 지연시간을 최소화시킬 수 있는 효과가 있으며, 멀티 컴퓨팅 환경에서 고성능의 통신 백본 환경을 구성할 수 있다. 또한, 상기와 같은 본 발명의 라우터를 이용하여 온-칩 라우터 구조를 사용하는 시스템 온-칩을 개발할 수 있는 효과가 있다.
이하 본 발명의 바람직한 실시 예를 첨부된 도면을 참조하여 설명한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.
이하 본 발명에서는 패킷 라우팅 시스템에서 패킷을 입력 큐에 저장하기 이전에 다음 라우터의 출력포트를 미리 결정하여 라우팅시 발생되는 지연시간을 최소화시키기 위한 기술에 관해 설명할 것이다.
도 4는 본 발명에 따른 라우팅 시스템의 블록 구성을 도시하고 있다. 도시된 바와 같이, 상기 라우터는 N개의 입력부(401, 403), 제어부(411), 크로스바(413)를 포함하여 구성된다.
상기 도 4를 참조하면, 상기 N개의 입력부(401, 403)는 이전 라우터로부터 제공되는 패킷 데이터를 임시저장한 후 상기 크로스바(413)로 제공한다. 특히, 본 발명에 따라 상기 입력부(401, 403) 각각은 도 5에 도시된 바와 같이 역다중화기(501)와 N 개의 FIFO 버퍼(503, 505)를 포함함으로써, 이전 라우터에서 결정된 출력포트와 연결되는 FIFO 버퍼에 입력 패킷 데이터를 임시 저장한 후 상기 이전 라우터에서 결정된 출력포트로 출력하는 역할을 수행한다.
즉, 상기 역다중화기(501)는 이전 라우터로부터 입력되는 채널 ID를 이용하여 상기 이전 라우터로부터 입력되는 패킷 데이터를 상기 N 개의 FIFO 버퍼(503, 505) 중 어느 FIFO 버퍼에 저장할 것인지 결정한다. 여기서, 상기 채널 ID는 상기 패킷 데이터의 이전 라우터에서 결정된 현재 라우터의 출력포트를 나타내는 정보로서, 상기 역다중화기(501)는 채널 ID가 나타내는 출력포트와 연결된 FIFO 버퍼에 상기 패킷 데이터를 저장할 것을 결정한다.
또한, 상기 N 개의 FIFO 버퍼(503, 505) 각각은 상기 역다중화기(501)로부터 제공된 패킷 데이터를 임시 저장하며, 특정 출력포트와 연결되어 상기 임시 저장한 패킷 데이터를 상기 연결된 특정 출력포트로만 출력한다. 이때, 상기 각 FIFO 버퍼(503, 505)가 특정 출력포트와 각각 연결됨에 따라 상기 각 FIFO 버퍼(503, 505)로부터 출력되는 패킷 데이터는 다중화기를 거치지 않고 상기 크로스바(413)의 스위치로 제공된다.
상기 제어부(411)는 상기 각 입력부(401, 403)에 임시저장된 패킷 데이터의 출력을 제어한다. 특히, 본 발명에 따라 상기 제어부(411)는 도 6에 도시된 바와 같이 채널 할당기(601), 스위치 할당기(607)를 포함함으로써, 상기 입력부(410, 403)에 임시 저장된 패킷 데이터에 대한 다음 라우터의 출력포트를 결정하고, 상기 입력부(410, 403)에 임시 저장된 패킷 데이터가 상기 크로스바(413)를 통해 해당 출력포트로 출력되도록 제어 및 처리하는 기능을 수행한다.
여기서, 상기 제어부(411)를 자세히 살펴보면, 먼저 상기 채널 할당기(601)는 라우팅 모듈(603)과 버퍼 중개기(605)를 포함하여 구성되며, 본 발명에 따라 상기 라우팅 모듈(601)을 통해 현재 라우터가 아닌 다음 라우터의 출력포트를 결정하고, 상기 버퍼 중개기(605)를 통해 서로 다른 입력포트로 입력된 패킷 데이터가 다음 라우터의 동일한 FIFO 버퍼로 입력되는 것을 방지한다. 이때, 상기 채널 할당기(601)는 상기 결정된 다음 라우터의 출력포트 정보를 상기 크로스바(413)로 제공하여 해당 패킷 데이터와 함께 상기 다음 라우터로 제공되도록 한다. 여기서, 상기 결정된 다음 라우터의 출력포트를 채널 ID라 칭한다.
즉, 상기 라우팅 모듈(601)은 현재 라우터의 패킷 데이터가 다음 라우터로 입력된 후, 어느 출력포트를 통해 출력될 것인지 결정한다. 이는 종래에 라우팅 모듈이 현재 라우터의 출력포트를 결정하는 것과 큰 차이를 갖는다. 상기 라우팅 모듈(601)이 다음 라우터의 출력포트를 결정함에 따라, 상기 입력부(401, 403)의 각 FIFO 버퍼(503, 505)로 입력된 패킷 데이터는 항상 이전 라우터에서 결정된 출력포트로 출력되게 된다. 즉, 현재 라우터에 저장된 패킷의 출력포트는 이전 라우터에서 미리 결정되며, 상기 현재 라우터는 다음 라우터의 출력포트를 결정한다. 이와 같이, 현재 라우터에서 다음 라우터의 출력포트를 미리 결정하게 되면, 상기 다음 라우터의 입력부는 입력 패킷 데이터를 어느 FIFO 버퍼에 저장할 것인지 결정할 수 있다.
또한, 상기 버퍼 중재기(605)는 상기 서로 다른 입력포트의 입력 패킷들이 다음 라우터의 동일한 FIFO 버퍼로 입력되려고 하는 경우 이 패킷들의 입력을 중재하는 역할을 수행한다. 즉, 상기 버퍼 중재기(605)는 상기 라우팅 모듈(601)에서 라우팅을 수행한 결과, 서로 다른 입력포트를 통해 입력된 패킷에 대한 다음 라우터의 출력포트가 동일하게 결정된 경우, 상기 서로 다른 입력포트를 통해 입력된 패킷이 동일한 시점에 다음 라우터의 동일한 FIFO 버퍼로 입력되는 것을 방지한다. 이는, 상기 서로 다른 입력포트를 통해 입력된 패킷들이 다음 라우터로 출력되는 시점을 달리하여 해결할 수도 있으며, 특정 입력포트를 제외한 나머지 입력포트의 입력 패킷들에 대한 출력포트를 변경하여 해결할 수도 있을 것이다.
상기 버퍼 중재기(605)는 본 발명에 따라 도 7에 도시된 바와 같이 구성될 수 있으며, 종래 라우터의 가상 채널 할당기와는 달리 단일 단계로 버퍼 할당을 수행한다. 버퍼 중재기는 p3의 복잡도를 갖는다.
또한, 상기 스위치 할당기(607)는 종래의 라우터에서와 마찬가지로 각 입력포트의 패킷 데이터들을 출력포트로 전송하기 위하여 크로스바 사용 요청을 중재하는 역할을 수행한다. 즉, 상기 스위치 할당기(607)는 각 FIFO 버퍼의 출력을 특정 출력포트로 연결해 줄 것을 요청하는 신호를 생성하여 상기 크로스바(413)로 제공한다. 상기 스위치 할당기(607)는 상기 도 7에 도시된 바와 같이 각 출력포트 당 하나의 스위치 중재기(721, 723)만을 이용한다. 즉, 본 발명에서 각 FIFO 버퍼(503, 505)는 하나의 출력포트에만 연결되기 때문에, 2단계 스위치 중재기를 가지는 종래의 라우터와 달리 단일 단계로 스위치 중재를 수행할 수 있다. 이때, 스위치 할당기는 p2v의 복잡도를 갖는다.
상기 크로스바(413)는 각 FIFO 버퍼의 출력을 특정 출력포트로 연결해주는 역할을 수행하며, 특히, 본 발명에 따라 도 8에 도시된 바와 같이 다수의 다중화기(801, 803)를 포함한다. 즉, 상기 크로스바(413)는 종래의 크로스바와는 달리 각 다중화기에서 모든 입력포트의 출력을 공유하지 않고, 정해진 하나의 FIFO 버퍼로부터의 출력만을 입력으로 사용한다. 이는 각 FIFO 버퍼로 입력된 패킷은 항상 미리 결정된 하나의 출력포트로만 전송되기 때문이다. 이때, 상기 크로스바(413)는 상기 제어부(411)로부터 해당 패킷 데이터의 채널 ID 즉, 해당 패킷 데이터에 대한 다음 라우터의 출력 정보를 제공받아 상기 해당 패킷 데이터와 함께 다음 라우터로 제공한다.
여기서, 상술한 구성을 바탕으로 종래 기술과 본 발명에서 상기 가상 채널 할당 및 스위치 할당에 사용되는 중재기의 수를 비교하여 보면, 실제 입력 및 출력포트가 각각 5개이고 각 입력부의 FIFO 버퍼 수가 각각 5개임을 가정할 경우, 종래의 라우터는 총 60개의 중재기가 필요한 반면, 본 발명에서는 총 30개의 중재기만을 사용하여 라우팅을 수행할 수 있다.
도 9는 본 발명의 실시 예에 따른 라우팅 시스템의 라우팅 절차를 도시하고 있다.
상기 도 9를 참조하면, 본 발명에 따른 라우팅 시스템은 901단계에서 이전 라우터로부터 출력된 패킷이 입력포트에 도착되면, 903단계에서 상기 이전 라우터로부터 제공된 채널 ID를 바탕으로 다중화기를 설정하여 원하는 FIFO 버퍼에 상기 도착된 패킷을 저장한다. 즉, 상기 라우팅 시스템은 채널 ID가 나타내는 출력포트에 해당하는 다중화기를 설정하여 상기 패킷을 상기 출력포트와 연결된 FIFO 버퍼에 저장한다. 또한, 상기 라우팅 시스템은 상기 903단계에서 상기 패킷에 대해 다음 라우터의 출력포트를 결정하고, 상기 출력포트가 결정되면 버퍼 중재와 스위치 할당을 수행한다.
이후, 상기 라우팅 시스템은 905단계에서 해당 출력포트를 통해 패킷을 전송하고, 본 발명에 따른 알고리즘을 종료한다.
상술한 설명에서, 패킷 저장, 다음 라우터의 출력포트 결정, 버퍼 중재 및 스위치 할당 동작은 모두 동일한 단계에서 병렬적으로 수행된다. 이는 본 발명에 따른 제어부의 복잡도가 종래 라우터에서 가장 복잡도가 높은 가상 채널 할당기와 유사하기 때문이다. 즉, 본 발명에서 제안하는 라우팅 시스템에서 제어부의 전체 복잡도는 종래 라우터의 가상 채널 할당기 정도의 복잡도로 예상되기 때문에 충분이 상기와 같은 동작을 단일 단계로 수행할 수 있을 것이다.
도 10은 종래 기술과 본 발명에 따른 라우팅 시스템의 성능을 나타내고 있다. 여기서, 가로축은 네트워크에 입력된 패킷의 량을 나타내고 세로축은 처리 지연시간을 나타낸다.
상기 도 10을 참조하면, 종래의 라우팅 시스템(VC Router)과 본 발명의 라우팅 시스템(Low Latency Router)의 처리 지연 시간을 각각 나타내고 있다. 도시된 바와 같이, 네트워크에 입력된 패킷의 량이 일정량 이하일 경우에는 종래 라우팅 시스템에 비해 본 발명의 라우팅 시스템의 지연시간이 더 낮은 것을 알 수 있다. 이는, 각 FIFO 버퍼를 특정 출력포트와 연결하고 출력포트를 이전 라우터에서 결정함으로써, 제어부의 복잡도를 낮추어 단일 단계로 제어가 가능하기 때문이다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능하다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
도 1은 종래 기술에 따른 라우터의 블록 구성을 도시하는 도면,
도 2a, 2b 및 2c는 종래 기술에 따른 라우터의 상세한 구성을 도시하는 도면,
도 3은 종래 기술에 따른 라우터의 동작 절차를 도시하는 도면,
도 4는 본 발명에 따른 라우팅 시스템의 블록 구성을 도시하는 도면,
도 5는 본 발명에 따른 라우팅 시스템에서 입력부의 상세한 구성을 도시하는 도면,
도 6은 본 발명에 따른 라우팅 시스템에서 제어부의 상세한 구성을 도시하는 도면,
도 7은 본 발명에 따른 라우팅 시스템에서 버퍼 중재기와 스위치 중재기의 구성을 도시하는 도면,
도 8은 본 발명에 따른 라우팅 시스템에서 크로스바의 상세한 구성을 도시하는 도면,
도 9는 본 발명의 실시 예에 따른 라우팅 시스템의 라우팅 절차를 도시하는 도면, 및
도 10은 종래 기술과 본 발명에 따른 라우팅 시스템의 성능을 나타내는 도면.

Claims (9)

  1. 고속의 패킷 라우팅 시스템에서 패킷 라우터 장치에 있어서,
    입력포트를 통해 입력된 패킷을 임시 저장한 후 이전 라우터에서 결정된 출력포트로 출력하는 입력부와,
    상기 입력된 패킷에 대한 다음 라우터의 출력포트를 결정하는 제어부를 포함하는 것을 특징으로 하는 장치.
  2. 제 1항에 있어서,
    상기 입력부는, 입력되는 패킷을 임시 저장하고, 상기 임시 저장한 패킷을 특정 출력포트로 출력하는 소정 수의 FIFO(First Input First Output) 버퍼들과,
    상기 입력포트를 통해 이전 라우터로부터 패킷과 출력포트 정보를 입력받고, 상기 패킷을 상기 소정 수의 FIFO 버퍼들 중에서 상기 출력포트와 연결된 FIFO 버퍼로 출력하는 역다중화기를 포함하는 것을 특징으로 하는 장치.
  3. 제 1항에 있어서,
    상기 제어부는, 상기 입력된 패킷에 대한 다음 라우터의 출력포트를 결정하는 라우팅 모듈과,
    서로 다른 입력포트를 통해 입력된 패킷이 다음 라우터의 동일한 출력포트로 출력되는 것을 중재하는 버퍼 중재기와,
    상기 입력포트와 출력포트의 연결을 제어하는 스위치 할당기를 포함하는 것을 특징으로 하는 장치.
  4. 제 1항에 있어서,
    상기 제어부의 제어에 따라 특정 입력포트와 특정 출력포트를 연결하는 크로스바를 더 포함하는 것을 특징으로 하는 장치.
  5. 제 1항에 있어서,
    상기 입력부에서 입력된 패킷을 임시 저장하는 동작과 상기 제어부에서 상기 입력된 패킷에 대한 다음 라우터의 출력포트를 결정하는 동작은 동일한 시점에 수행되는 것을 특징으로 하는 장치.
  6. 고속의 패킷 라우팅 시스템에서 패킷을 라우팅하는 방법에 있어서,
    입력포트를 통해 입력되는 패킷을 임시 저장하는 과정과,
    상기 패킷에 대한 다음 라우터의 출력포트를 결정하는 과정과,
    상기 패킷과 상기 결정된 출력포트를 이전 라우터에서 결정된 출력포트로 출력하는 과정을 포함하는 것을 특징으로 하는 방법.
  7. 제 6항에 있어서,
    상기 입력포트를 통해 입력되는 패킷을 임시 저장하는 과정은,
    상기 입력포트를 통해 이전 라우터로부터 패킷과 출력포트 정보를 입력받는 과정과,
    상기 패킷을 소정 수의 FIFO(First Input First Output) 버퍼들 중에서 상기 출력포트와 연결된 FIFO 버퍼로 출력하는 과정과,
    상기 출력포트와 연결된 FIFO 버퍼에서 상기 패킷을 임시 저장하는 과정을 포함하는 것을 특징으로 하는 방법.
  8. 제 6항에 있어서,
    상기 이전 라우터에서 결정된 출력포트로 출력하는 과정은,
    서로 다른 입력포트를 통해 입력된 패킷이 다음 라우터의 동일한 출력포트로 출력되는지 감지하여 중재하는 과정을 포함하는 것을 특징으로 하는 방법.
  9. 제 6항에 있어서,
    입력포트를 통해 입력되는 패킷을 임시 저장하는 과정과 상기 패킷에 대한 다음 라우터의 출력포트를 결정하는 과정은 동일한 시점에 수행되는 것을 특징으로 하는 방법.
KR20080053500A 2008-06-09 2008-06-09 고속의 패킷 라우팅 시스템 장치 및 방법 KR101495811B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR20080053500A KR101495811B1 (ko) 2008-06-09 2008-06-09 고속의 패킷 라우팅 시스템 장치 및 방법
US12/481,406 US20090304017A1 (en) 2008-06-09 2009-06-09 Apparatus and method for high-speed packet routing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20080053500A KR101495811B1 (ko) 2008-06-09 2008-06-09 고속의 패킷 라우팅 시스템 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20090127490A true KR20090127490A (ko) 2009-12-14
KR101495811B1 KR101495811B1 (ko) 2015-02-25

Family

ID=41400269

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20080053500A KR101495811B1 (ko) 2008-06-09 2008-06-09 고속의 패킷 라우팅 시스템 장치 및 방법

Country Status (2)

Country Link
US (1) US20090304017A1 (ko)
KR (1) KR101495811B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013126666A2 (en) * 2012-02-24 2013-08-29 Interdigital Patent Holdings, Inc. Architecture of multi-anchor systems
CN102857445B (zh) * 2012-09-10 2014-12-03 西安电子科技大学 片上网络路由器的低开销分配结构及分配方法
US10757039B2 (en) * 2014-12-24 2020-08-25 Intel Corporation Apparatus and method for routing data in a switch
US9658675B1 (en) 2015-02-19 2017-05-23 Amazon Technologies, Inc. Achieving power saving by a circuit including pluralities of processing cores based on status of the buffers used by the processing cores
US9658676B1 (en) * 2015-02-19 2017-05-23 Amazon Technologies, Inc. Sending messages in a network-on-chip and providing a low power state for processing cores
US11502934B2 (en) * 2018-08-21 2022-11-15 The George Washington Univesity EZ-pass: an energy performance-efficient power-gating router architecture for scalable on-chip interconnect architecture

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5721819A (en) * 1995-05-05 1998-02-24 Silicon Graphics Corporation Programmable, distributed network routing
US6285679B1 (en) * 1997-08-22 2001-09-04 Avici Systems, Inc. Methods and apparatus for event-driven routing
US6714537B1 (en) * 1999-10-19 2004-03-30 Ciena Corp. Switch fabric architecture and techniques for implementing rapid hitless switchover
US7123623B2 (en) * 2000-11-29 2006-10-17 Tellabs Operations, Inc. High-speed parallel cross bar switch
US7418536B2 (en) * 2001-07-30 2008-08-26 Cisco Technology, Inc. Processor having systolic array pipeline for processing data packets
US20030072326A1 (en) * 2001-08-14 2003-04-17 Mehdi Alasti Method and apparatus for parallel, weighted arbitration scheduling for a switch fabric
KR20020067469A (ko) * 2002-07-25 2002-08-22 크로스반도체기술 주식회사 Ip 패킷의 목적지 어드레스 룩업 시스템 및 그 방법
US7379424B1 (en) * 2003-08-18 2008-05-27 Cray Inc. Systems and methods for routing packets in multiprocessor computer systems
US8223778B2 (en) * 2003-11-19 2012-07-17 Intel Corporation Routing table architecture
JP4547339B2 (ja) * 2006-01-30 2010-09-22 アラクサラネットワークス株式会社 送信制御機能を備えるパケット中継装置
US20070268825A1 (en) * 2006-05-19 2007-11-22 Michael Corwin Fine-grain fairness in a hierarchical switched system
US8228930B1 (en) * 2006-06-02 2012-07-24 The Board Of Trustees Of The Leland Stanford Junior University Interconnection network router arrangements and methods therefor
JP5055942B2 (ja) * 2006-10-16 2012-10-24 富士通株式会社 計算機クラスタ

Also Published As

Publication number Publication date
KR101495811B1 (ko) 2015-02-25
US20090304017A1 (en) 2009-12-10

Similar Documents

Publication Publication Date Title
US8014288B1 (en) Packet latency based arbitration technique for a packet switch
US8085801B2 (en) Resource arbitration
KR101495811B1 (ko) 고속의 패킷 라우팅 시스템 장치 및 방법
US9582440B2 (en) Credit based low-latency arbitration with data transfer
US20130136129A1 (en) Zero-cycle router for networks on-chip
CN101383712A (zh) 一种片上网络的路由节点微结构
US10237198B2 (en) Shared-credit arbitration circuit
CN114090250B (zh) 一种基于Banyan网络和多FPGA结构的EDA硬件加速方法与系统
US7840737B2 (en) Data processor and semiconductor integrated circuits
KR101609288B1 (ko) 무버퍼 noc 및 noc 전자요소의 데이터 처리 방법
US10944694B2 (en) Predictive arbitration circuit
EP1442376B1 (en) Tagging and arbitration mechanism in an input/output node of a computer system
CN117425884A (zh) 网络接口设备
US8040907B2 (en) Switching method
US6681274B2 (en) Virtual channel buffer bypass for an I/O node of a computer system
US6807599B2 (en) Computer system I/O node for connection serially in a chain to a host
US20040078459A1 (en) Switch operation scheduling mechanism with concurrent connection and queue scheduling
US7039750B1 (en) On-chip switch fabric
Wissem et al. A quality of service network on chip based on a new priority arbitration mechanism
US10002099B2 (en) Arbitrated access to resources among multiple devices
US6839784B1 (en) Control unit of an I/O node for a computer system including a plurality of scheduler units each including a plurality of buffers each corresponding to a respective virtual channel
US20040081158A1 (en) Centralized switching fabric scheduler supporting simultaneous updates
US20030097499A1 (en) Starvation avoidance mechanism for an I/O node of a computer system
US11695709B2 (en) Fair arbitration between multiple sources targeting a destination
US8289989B1 (en) System and method for arbitration using availability signals

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190130

Year of fee payment: 5