KR20160086133A - 온 칩 네트워크에서 데이터를 송수신하는 방법 및 시스템 - Google Patents

온 칩 네트워크에서 데이터를 송수신하는 방법 및 시스템 Download PDF

Info

Publication number
KR20160086133A
KR20160086133A KR1020150003481A KR20150003481A KR20160086133A KR 20160086133 A KR20160086133 A KR 20160086133A KR 1020150003481 A KR1020150003481 A KR 1020150003481A KR 20150003481 A KR20150003481 A KR 20150003481A KR 20160086133 A KR20160086133 A KR 20160086133A
Authority
KR
South Korea
Prior art keywords
router
packet
transmission
network
routers
Prior art date
Application number
KR1020150003481A
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 삼성전자주식회사
Priority to KR1020150003481A priority Critical patent/KR20160086133A/ko
Priority to US14/950,490 priority patent/US20160205042A1/en
Publication of KR20160086133A publication Critical patent/KR20160086133A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/83Admission control; Resource allocation based on usage prediction
    • 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/102Packet switching elements characterised by the switching fabric construction using shared medium, e.g. bus or ring
    • H04L47/823
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • G06F15/7842Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/16Multipoint routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

복수 개의 제 1 라우터들을 포함하는 링 네트워크와, 각각이 복수 개의 제 2 라우터들을 포함하고 링 네트워크에 연결된 하나 이상의 레그 네트워크를 포함하는 온 칩 네트워크에서 복수개의 제 1 라우터들 중 어느 하나인 제 1 라우터에 패킷이 수신되었는지 여부를 판단하여, 제 1 라우터에 수신된 패킷의 전송 목적지를 결정하고, 결정된 전송 목적지가 링 네트워크와 연결된 레그 네트워크 상에 위치하는 경우, 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 어느 하나에 패킷을 전송하는 온 칩 네트워크에서 데이터를 송수신하는 방법이 개시된다.

Description

온 칩 네트워크에서 데이터를 송수신하는 방법 및 시스템 {Method and system for transmitting and receiving data at on chip network}
온 칩 네트워크에서 데이터를 송수신하는 방법 및 온 칩 네트워크에서 데이터를 송수신하는 시스템에 관한 것이다.
메모리 계층 구조는 멀티 코어 시스템의 성능에 큰 영향을 끼친다. 특히 GPU에서의 코어에 연결된 LLC(Last Level Cache)는 메인 메모리에 접근하는 데이터 요청에 직접적인 영향을 주기 때문에 LLC의 용량과 LLC에 연결된 온 칩 네트워크의 구조의 선택이 매우 중요하다.
반도체 집적 기술이 발전됨에 따라 LLC의 용량은 최근 2MB 이상 사용할 수 있게 되었다. 한편, LLC에 연결된 온 칩 네트워크 구조에 관해서는, 종래 기술에서 온 칩 네트워크에서 발생하는 병목 현상을 해결하기 위해 포트 수를 늘리거나 메쉬 네트워크 구조를 사용하는 등의 해결책을 제시하고 있으나, 여전히 데이터 전송 시 발생하는 병목 현상의 해결이 요구되는 상태이다.
온 칩 네트워크를 링 네트워크와 버스 네트워크로 구성하여, 리플라이(reply) 네트워크에서 송수신되는 패킷의 처리량(throughput)을 향상시킬 수 있다.
일 실시예에 따라 복수 개의 제 1 라우터들을 포함하는 링 네트워크와, 각각이 복수 개의 제 2 라우터들을 포함하고 링 네트워크에 연결된 하나 이상의 레그 네트워크를 포함하는 온 칩 네트워크에서 데이터를 송수신하는 방법은, 복수개의 제 1 라우터들 중 어느 하나인 제 1 라우터에 패킷이 수신되었는지 여부를 판단하는 단계; 제 1 라우터에 수신된 패킷의 전송 목적지를 결정하는 단계; 결정된 전송 목적지가 링 네트워크와 연결된 레그 네트워크 상에 위치하는 경우, 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 어느 하나에 패킷을 전송하는 단계를 포함한다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 방법에 있어서, 패킷을 전송하는 단계는, 제 1 라우터가 레그 네트워크와 직접적으로 연결되어 있지 않은 경우, 제 1 라우터와 연결된 다른 제 1 라우터에 패킷을 전송하는 단계를 포함한다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 방법에 있어서, 제 1 라우터는, 제 1 전송 라우터 또는 제 1 바이패스(bypass) 라우터이며, 제 1 라우터가 제 1 전송 라우터인 경우, 제 1 전송 라우터와 연결된 제 2 라우터, 제 1 전송 라우터와 연결된 캐쉬 및 제 1 라우터와 연결된 제 1 라우터 중 적어도 하나로부터 적어도 하나의 패킷을 수신하고, 제 1 라우터가 제 1 바이패스 라우터인 경우, 제 1 바이패스 라우터와 연결된 캐쉬 및 제 1 바이패스 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 적어도 하나의 패킷을 수신하는 단계를 더 포함한다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 방법에 있어서, 패킷을 전송하는 단계는, 제 1 라우터가 제 1 라우터와 연결된 다른 라우터 및 제 1 라우터와 연결된 캐쉬로부터 모두 패킷을 수신한 경우, 다른 라우터로부터 수신한 패킷을 우선적으로 전송한다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 방법은, 패킷을 수신한 제 2 라우터에서 전송 목적지에 따라 패킷을 획득하거나 다른 제 2 라우터로 재전송한다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 방법에 있어서, 링 네트워크 및 레그 네트워크 중 적어도 하나는, 단방향으로 패킷이 전송되는 네트워크이다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 방법에 있어서, 복수개의 제 1 라우터들 및 제 2 라우터들 중 하나 이상은, 복수개의 채널들로 연결된다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 방법에 있어서, 복수개의 제 1 라우터들 및 제 2 라우터들 중 하나 이상은, 제 1 방향으로 패킷을 전송하는 채널과 제 2 방향으로 패킷을 전송하는 채널들을 이용하여 연결된다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 방법에 있어서, 패킷을 전송하는 단계는, 결정된 전송 목적지와 패킷을 전송하는 제 1 라우터 사이의 거리에 기초하여, 제 1 방향으로 패킷을 전송하는 채널과 제 2 방향으로 패킷을 전송하는 채널 중에서 어느 하나를 선택하여 패킷을 전송하는 단계를 포함한다.
일 실시예에 따 라 복수 개의 제 1 라우터들을 포함하는 링 네트워크와, 각각이 복수 개의 제 2 라우터들을 포함하고 링 네트워크에 연결된 하나 이상의 레그 네트워크를 포함하는 온 칩 네트워크에서 데이터를 송수신하는 시스템은 복수개의 제 1 라우터들 중 어느 하나인 제 1 라우터에 패킷이 수신되었는지 여부를 판단하는 판단부; 제 1 라우터에 수신된 패킷의 전송 목적지를 결정하는 전송 목적지 결정부; 결정된 전송 목적지가 링 네트워크와 연결된 레그 네트워크 상에 위치하는 경우, 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 어느 하나에 패킷을 전송하는 패킷 송수신부를 포함한다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 시스템에 있어서, 패킷 송수신부는, 제 1 라우터가 레그 네트워크와 직접적으로 연결되어 있지 않은 경우, 제 1 라우터와 연결된 다른 제 2 라우터에 패킷을 전송한다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 시스템에 있어서, 제 1 라우터는, 제 1 전송 라우터 또는 제 1 바이패스(bypass) 라우터이며, 패킷 송수신부는 제 1 라우터가 제 1 전송 라우터인 경우, 제 1 전송 라우터와 연결된 제 2 라우터, 제 1 전송 라우터와 연결된 캐쉬 및 제 1 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 적어도 하나의 패킷을 수신하고, 제 1 라우터가 제 1 바이패스 라우터인 경우, 제 1 바이패스 라우터와 연결된 캐쉬 및 상기 제 1 바이패스 라우터와 연결된 제 1 라우터 중 적어도 하나로부터 적어도 하나의 패킷을 수신한다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 시스템에 있어서, 패킷 송수신부는, 제 1 라우터가 제 1 라우터와 연결된 다른 라우터 및 제 1 라우터와 연결된 캐쉬로부터 모두 패킷을 수신한 경우, 다른 라우터로부터 수신한 패킷을 우선적으로 전송한다.
일 실시예에 따른 온 칩 네트워크에서 데이터를 송수신하는 시스템은, 패킷을 수신한 제 2 라우터는, 전송 목적지에 따라 패킷을 획득하거나 다른 제 2 라우터로 재전송한다.
일 실시예에 따른 라우팅 시스템은, 복수 개의 허브 라우터들(Hub Routers)로 이루어지는 링 네트워크; 및 복수 개의 리프 라우터들(Leaf Routers)을 이루어지는 레그 네트워크를 포함하는 데이터 라우팅 시스템으로서,
허브 라우터들은 각각이 캐쉬와 연결되어 있으며, 리프 라우터들 중 하나 이상은 허브 라우터들 중 하나 이상과 채널을 통해 연결되어 있다.
일 실시예에 따른 라우팅 시스템에 있어서, 복수개의 허브 라우터들은, 리프 라우터 중 하나와 연결되는 전송 라우터 또는 리프 라우터와 연결되지 않은 제 1 바이패스(bypass) 라우터이다,
일 실시예에 따른 라우팅 시스템은, 복수개의 허브 라우터들 간의 데이터 송수신을 위한 채널들 및 복수개의 리프 라우터들 간의 데이터 송수신을 위한 채널들을 더 포함한다.
일 실시예에 따른 라우팅 시스템에 있어서, 복수개의 리프 라우터들 간의 채널들은 데이터를 어느 하나의 방향으로 전송하는 단방향 채널이다.
일 실시예에 따른 라우팅 시스템에 있어서, 복수개의 허브 라우터들 간의 채널들은 제 1 방향 또는 제 2 방향으로 패킷을 전송 가능한 양방향 채널이다
도 1은 일 실시예에 따라 온 칩 네트워크에서 데이터를 송수신하는 방법을 설명하기 위한 흐름도이다.
도 2는 일 실시예에 따른 온 칩 네트워크에서 데이터를 전송하는 방법을 보다 구체적으로 설명하기 위한 흐름도이다.
도 3은 일 실시예에 따라 링 네트워크에 4개의 레그(Leg) 네트워크들이 연결된 라우팅 시스템을 설명하기 위한 도면이다.
도 4는 일 실시예에 따라 링 네트워크에 2개의 레그 네트워크들이 연결된 라우팅 시스템을 설명하기 위한 도면이다.
도 5는 다른 실시예에 따라 온 칩 네트워크에서 데이터를 송수신하는 방법을 설명하기 위한 흐름도이다.
도 6은 다른 실시예에 따라 링 네트워크에 4개의 레그 네트워크들이 연결된 라우팅 시스템을 설명하기 위한 도면이다.
도 7은 또 다른 실시예에 따라 링 네트워크에 4개의 레그 네트워크들이 연결된 라우팅 시스템을 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 라우팅 시스템을 설명하기 위한 블록도이다
아래에서는 첨부한 도면을 참조하여 개시된 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 개시된 실시예에 대해 상세히 설명한다. 그러나 개시된 사상은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 개시된 실시예들을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
이하 첨부된 도면을 참고하여 개시된 실시예들을 상세히 설명하기로 한다.
도 1은 일 실시예에 따라 온 칩 네트워크에서 데이터를 송수신하는 방법을 설명하기 위한 흐름도이다.
단계 110에서, 온 칩 네트워크에서 데이터를 송수신하는 시스템(이하, 라우팅 시스템)은 글로벌 링 네트워크(global ring network)를 구성하고 있는 복수개의 제 1 라우터들 중 어느 하나인 제 1 라우터에 패킷이 수신되었는지 여부를 판단한다.
링 네트워크는 네트워크 토폴로지(topology)의 한 방법으로서 링 네트워크를 구성하는 각각의 제 1 라우터는 허브 라우터(hub router)로서, 양 옆의 제 1 라우터와 연결하여 전체적으로 고리와 같이 연속된 채널을 통해 통신을 수행할 수 있다. 여기에서, 제 1 라우터와 다른 제 1 라우터 사이의 채널을 통해, 데이터가 이동할 수 있다. 본 명세서에서는 제 1 라우터와 다른 제 1 라우터 사이의 채널을 통해 패킷 단위로 데이터가 이동하는 것으로 설명하도록 한다.
한편, 제 1 라우터는 LLC(Last Level Cache, 이하 캐쉬)와 연결되어 있다. 또한, 캐쉬는 메모리 컨트롤러(Memory controller) 와 연결되어 있다. 제 1 라우터와 다른 제 1 라우터 사이의 채널의 폭(width)은 캐쉬의 캐쉬라인(chcheline) 사이즈와 라우팅 정보의 사이즈를 고려하여, 설정될 수 있다. 구체적으로 캐쉬로부터 읽어들이는 정보와 라우팅 정보로 구성된 패킷이 한 플릿(flit)에 전송될 수 있도록 채널의 폭이 설정될 수 있다. 플릿은 온 칩 네트워크에서 데이터의 송수신이 이루어지는 최소 단위를 나타낸다.
일 실시예에 따른 제 1 라우터는 제 1 전송 라우터 및 제 1 바이패스(bypass) 라우터 중 어느 하나일 수 있다. 제 1 전송 라우터는 후술할 링 네트워크 외의 다른 하나 이상의 버스 네트워크(이하, 레그 네트워크(leg network)라 함)와 직접적으로 연결된 제 1 라우터를 나타낸다. 또한, 제 1 바이패스 라우터는 링 네트워크를 구성하는 제 1 라우터들 중에서, 레그 네트워크와 제 1 전송 라우터를 통해 간접적으로 연결되는 제 1 라우터를 나타낸다. 레그 네트워크는 복수개의 제 2 라우터들(리프 라우터들; leaf routers)로 구성될 수 있다. 레그 네트워크에 대해서는 단계 130에서 구체적으로 후술하도록 한다.
제 1 전송 라우터는 제 1 전송 라우터와 연결된 제 2 라우터, 제 1 전송 라우터와 연결된 캐쉬 및 제 1 전송 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 각각 패킷을 수신할 수 있다. 여기에서, 제 1 전송 라우터와 연결된 다른 제 1 라우터는 링 네트워크에 연결된 레그 네트워크의 구조에 따라 제 1 전송 라우터 일 수도 있고 제 1 바이패스 라우터 일 수도 있다.
제 1 바이패스 라우터는 제 1 바이패스 라우터와 연결된 캐쉬 및 제 1 바이패스 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 각각 패킷을 수신할 수 있다. 여기에서, 제 1 바이패스 라우터와 연결된 다른 제 1 라우터는 링 네트워크에 연결된 레그 네트워크의 구조에 따라 제 1 전송 라우터 일 수도 있고 제 1 바이패스 라우터 일 수도 있다.
단계 120에서, 라우팅 시스템은 제 1 라우터에 수신된 패킷의 전송 목적지를 결정한다.
제 1 라우터는 수신한 패킷에 포함된 라우팅 정보로부터, 패킷의 전송 목적지를 확인할 수 있다. 패킷의 전송 목적지는 제 2 라우터와 연결된 코어에 관한 주소로 표시될 수도 있고, 제 2 라우터에 관한 주소로 표시될 수도 있다.
단계 130에서, 라우팅 시스템은 제 1 라우터와 연결된 레그 네트워크 상에 결정된 전송 목적지가 위치하는 경우, 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 어느 하나에 패킷을 전송한다.
패킷을 수신한 제 1 라우터가 제 1 전송 라우터인 경우, 제 1 전송 라우터는 결정된 전송 목적지가 연결된 레그 네트워크 상에 위치하는 제 2 라우터와 대응되는 것인지 확인할 수 있다. 전송 목적지는 제 2 라우터와 연결된 코어에 관한 주소로 표시될 수도 있고, 제 2 라우터에 관한 주소로 표시될 수도 있다.
제 1 전송 라우터는 전송 목적지가 연결된 레그 네트워크 상에 위치 함에 따라, 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 연결된 제 2 라우터에 패킷을 전송함으로써, 패킷을 전송 목적지에 도달하도록 할 수 있다.
한편, 제 1 전송 라우터는 전송 목적지가 연결된 레그 네트워크 상에 위치하지 않는 경우, 링 네트워크 상의 다른 제 1 라우터로 패킷을 전송할 수 있다. 제 1 전송 라우터는 양 방향으로 각각 1개의 제 1 라우터들과 연결될 수 있다. 제 1 전송 라우터는 링 네트워크에서 미리 결정된 방향에 따라, 양 방향 중 어느 하나의 방향(시계방향 또는 반시계방향)으로 연결된 다른 제 1 라우터에 패킷을 전송할 수 있다.
또한, 패킷을 수신한 제 1 라우터가 제 1 바이패스 라우터인 경우, 링 네트워크에서 미리 결정된 방향에 따라, 양 방향 중 어느 하나의 방향으로 연결된 다른 제 1 라우터에 패킷을 전송할 수 있다.
한편, 레그 네트워크에서 제 2 라우터가 전송한 패킷은 복수의 제 2 라우터들(리프 라우터들)을 연결하는 채널을 따라 이동할 수 있다. 제 2 라우터는 제 2 라우터의 주소 또는 제 2 라우터와 연결된 코어의 주소와 패킷의 전송 목적지가 대응되는 경우, 패킷을 획득할 수 있다. 제 2 라우터는 제 2 라우터의 주소 또는 제 2 라우터와 연결된 코어의 주소와 패킷의 전송 목적지가 대응되지 않는 경우, 채널을 통해, 패킷을 다른 제 2 라우터에 전송할 수 있다.
도 2는 일 실시예에 따른 온 칩 네트워크에서 데이터를 전송하는 방법을 보다 구체적으로 설명하기 위한 흐름도이다.
도 2에 개시된 흐름도는 라우팅 시스템에 포함된 링 네트워크를 구성하는 복수개의 제 1 라우터들 중, 어느 하나인 제 1 라우터의 동작을 설명할 수 있다.
단계 210에서, 제 1 라우터는 제 1 라우터와 연결된 다른 라우터로부터 패킷을 수신하였는지 여부를 판단할 수 있다.
일 실시예에 따른 제 1 라우터는 제 1 전송 라우터 및 제 1 바이패스 라우터 중 어느 하나일 수 있다. 제 1 전송 라우터의 경우, 미리 설정된 링 네트워크의 방향에 따라, 제 1 전송 라우터와 연결된 다른 제 1 라우터로부터 패킷을 수신할 수 있다. 예를 들어, 링 네트워크의 방향이 시계 방향인 경우, 시계 방향을 기준으로, 제 1 전송 라우터의 이전에 연결된 다른 제 1 라우터로부터 패킷을 수신할 수 있다.
또한, 제 1 전송 라우터는 제 1 전송 라우터와 연결된 레그 네트워크를 구성하는 제 2 라우터로부터 패킷을 수신할 수 있다. 레그 네트워크를 구성하는 복수개의 제 2 라우터들은 각각 코어와 연결되어 있다. 제 2 라우터는 코어로부터 획득한 패킷을 레그 네트워크를 통해, 레그 네트워크와 연결된 제 1 라우터에 전송할 수 있다.
한편, 제 1 바이패스 라우터의 경우, 미리 설정된 링 네트워크의 방향에 따라, 제 1 바이패스 라우터와 연결된 다른 제 1 라우터로부터 패킷을 수신할 수 있다. 예를 들어, 링 네트워크의 방향이 시계 방향인 경우, 시계 방향을 기준으로, 제 1 바이패스 라우터의 이전에 연결된 다른 제 1 라우터로부터 패킷을 수신할 수 있다.
제 1 라우터에서 패킷이 수신되지 않은 경우 단계 220으로 진행되고, 패킷이 수신된 경우는 단계 230으로 진행된다.
단계 220에서, 제 1 라우터는 제 1 라우터와 연결된 캐쉬로부터 패킷을 수신하였는지 여부를 판단할 수 있다.
캐쉬는 메모리 컨트롤러와 연결되어 있을 수 있다. 또한, 메모리 컨트롤러는 DRAM과 연결되어 있어, DRAM으로부터 수신한 데이터를 캐쉬에 전송할 수 있다.
제 1 라우터는 캐쉬에 저장된 데이터와 라우팅 정보를 포함한 패킷을 수신할 수 있다.
단계 230에서, 제 1 라우터는 수신한 패킷의 전송 목적지를 결정할 수 있다. 일 실시예에 따른 제 1 라우터는 패킷에 포함된 라우팅 정보로부터 패킷이 전송되어야 하는 전송 목적지에 관한 정보를 추출할 수 있다.
단계 240에서, 제 1 라우터는 패킷의 결정된 전송 목적지가 제 1 라우터와 연결된 레그 네트워크 상에 존재하는지 여부를 판단한다. 제 1 라우터는 레그 네트워크를 구성하는 복수개의 제 2 라우터들의 주소에 관한 정보를 포함할 수 있다. 제 1 라우터는 전송 목적지가 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 어느 하나에 해당하는지 여부를 판단할 수 있다.
제 1 라우터는 단계 240에서 판단한 결과, 패킷의 전송 목적지가 제 1 라우터에 연결된 레그 네트워크 상에 존재하지 않는 경우, 단계 250으로 진행한다. 단계 250에서, 제 1 라우터는 링 네트워크에서 미리 결정된 전송 방향에 따라, 제 1 라우터와 연결된 다른 제 1 라우터에 패킷을 전송할 수 있다. 예를 들어, 미리 결정된 전송 방향이 시계 방향인 경우, 제 1 라우터는 시계 방향에 따라 제 1 라우터와 연결된 다른 제 1 라우터에 패킷을 전송할 수 있다.
한편, 제 1 라우터는 제 1 라우터와 연결된 다른 라우터 및 캐쉬로부터 모두 패킷을 수신할 수 있다. 제 1 라우터가 제 1 라우터와 연결된 다른 라우터 및 캐쉬로부터 모두 패킷을 수신하는 경우, 제 1 라우터와 연결된 다른 라우터로부터 수신된 패킷이 우선적으로 전송될 수 있다.
제 1 라우터는 단계 240에서 판단한 결과, 패킷의 전송 목적지가 제 1 라우터에 연결된 레그 네트워크 상에 존재하는 경우, 단계 260으로 진행한다. 단계 260에서 레그네트워크 상의 복수개의 제 2 라우터들 중에서, 제 1 라우터와 연결된 제 2 라우터에 패킷을 전송할 수 있다.
한편, 제 2 라우터는 제 2 라우터의 주소 또는 제 2 라우터와 연결된 코어의 주소와 패킷의 전송 목적지가 대응되는 경우, 패킷을 획득할 수 있다. 제 2 라우터는 제 2 라우터의 주소 또는 제 2 라우터와 연결된 코어의 주소와 패킷의 전송 목적지가 대응되지 않는 경우, 채널을 통해, 패킷을 다른 제 2 라우터에 전송할 수 있다.
도 3은 일 실시예에 따라 링 네트워크(310)에 4개의 레그 네트워크들(320, 330, 340, 350)이 연결된 라우팅 시스템(300)을 설명하기 위한 도면이다.
링 네트워크(310)는 복수개의 제 1 라우터들(예를 들어, 312, 314, 316, 318)로 구성될 수 있다. 제 1 라우터는 제 1 전송 라우터(314) 및 제 1 바이패스 라우터(312, 316, 318) 중 어느 하나일 수 있으며, 각각의 제 1 라우터는 캐쉬 또는 LLC(Last Level Cache)와 연결된다
한편, 링 네트워크(310)는 패킷을 미리 설정된 어느 하나의 방향으로 전송하는 단방향 네트워크일 수 있다. 도 3에서는 링 네트워크(310)의 전송 방향이 반시계 방향인 것으로 설명하도록 한다.
반시계 방향을 기준으로, 제 1 전송 라우터(314)는 다른 제 1 바이패스 라우터(312)로부터 패킷을 수신할 수 있다. 또한, 제 1 전송 라우터(314)는 제 2 라우터(322)로부터 패킷을 수신할 수 있다. 또한, 제 1 전송 라우터(314)는 제 1 전송 라우터(314)와 연결된 캐쉬(315)로부터 패킷을 수신할 수도 있다.
제 1 전송 라우터(314)에서 패킷을 수신하는 경우, 패킷의 전송 목적지를 결정할 수 있다. 예를 들어, 제 1 전송 라우터(314)는 패킷에 포함된 라우팅 정보를 이용하여, 패킷의 전송 목적지를 결정할 수 있다. 한편, 제 1 전송 라우터(314)에 수신된 패킷이 복수개인 경우, 제 1 전송 라우터(314)는 다른 라우터(312 또는 322)로부터 수신한 패킷을 캐쉬(315)로부터 수신한 패킷 보다 우선적으로 전송할 수 있다. 또한, 제 1 전송 라우터(314)와 연결된 다른 제 1 바이패스 라우터(312) 및 제 2 라우터(322)로부터 모두 패킷을 수신한 경우에는, 랜덤하게 어느 하나를 먼저 전송할 수 있다. 다만, 이는 일 실시예일 뿐, 설정에 따라 제 1 전송 라우터(314)는 다른 제 1 바이패스 라우터(312)로부터 수신한 패킷을 제 2 라우터(322)로부터 수신한 패킷에 비해 우선적으로 전송할 수도 있다. 다른 예에 따라, 제 1 전송 라우터(314)는 제 2 라우터(322)로부터 수신한 패킷을 다른 제 1 바이패스 라우터(312)로부터 수신한 패킷에 비해 우선적으로 전송할 수도 있다.
한편, 제 1 전송 라우터(314)는 패킷의 전송 목적지가 제 1 전송 라우터(314)와 연결된 레그 네트워크(320) 상에 위치하는 경우, 제 1 전송 라우터(314)와 연결된 제 2 라우터(322)에 패킷을 전송할 수 있다. 또한, 제 1 전송 라우터(314)는 패킷의 전송 목적지가 제 1 전송 라우터(314)와 직접적으로 연결되지 않은 레그 네트워크(예를 들어, 330) 상에 위치하는 경우, 제 1 전송 라우터(314)와 연결된 또 다른 제 1 바이패스 라우터(316)에 패킷을 전송할 수 있다.
패킷을 수신한 제 2 라우터(322)는 패킷의 전송 목적지가 제 2 라우터(322)인지 여부를 판단할 수 있다. 제 2 라우터(322)는 패킷의 전송 목적지가 제 2 라우터(322)에 해당하는 경우, 패킷을 획득할 수 있다. 패킷의 전송 목적지가 제 2 라우터(322)에 해당하지 않는 경우, 제 2 라우터(322)와 연결된 다른 제 2 라우터(324)에 패킷을 전송할 수 있다. 패킷은 전송 목적지에 해당하는 제 2 라우터에 도달할 때까지 일방향으로 전달될 수 있다.
제 1 전송 라우터(314)는 패킷의 전송 목적지가 레그 네트워크(320) 상이 아닌 다른 레그 네트워크, 예를 들어 레그 네트워크(330)에 위치하는 경우, 그에 직접적으로 연결된 제 1 전송 라우터(312)에 도달할 때까지 패킷이 다른 제 1 라우터들을 통해 전달된다.
다른 예에 따라 제 1 바이패스 라우터(316)는 제 1 바이패스 라우터(316)와 연결된 캐쉬(317)로부터 패킷을 수신할 수 있다. 또한, 제 1 바이패스 라우터(316)는 제 1 바이패스 라우터(316)와 연결된 제 1 전송 라우터(314)로부터 패킷을 수신할 수도 있다.
제 1 바이패스 라우터(316)는 수신한 패킷에 포함된 라우팅 정보로부터 패킷의 전송 목적지를 결정할 수 있다. 제 1 바이패스 라우터(316)는 링 네트워크에서 미리 설정된 반시계 방향을 기준으로 다른 제 1 바이패스 라우터(318)에 패킷을 전송할 수 있다.
한편, 제 1 바이패스 라우터(316)가 제 1 바이패스 라우터(316)와 연결된 캐쉬(317) 및 제 1 전송 라우터(314)로부터 모두 패킷을 수신한 경우, 제 1 바이패스 라우터(316)는 제 1 전송 라우터(314)로부터 수신한 패킷을 캐쉬(317)로부터 수신한 패킷에 비해 우선적으로 전송할 수 있다.
도 3을 참조하여, 전술한 방법은 도 3의 링 네트워크(310)와 연결된 다른 레그 네트워크들(330, 340, 350) 및 다른 제 1 라우터들에도 동일하게 적용될 수 있다.
도 4는 일 실시예에 따라 링 네트워크(410)에 2개의 레그 네트워크들(420, 430)이 연결된 라우팅 시스템(400)을 설명하기 위한 도면이다.
링 네트워크(410)는 복수개의 제 1 라우터들(예를 들어, 412, 414, 416, 418)로 구성될 수 있다. 제 1 라우터는 제 1 전송 라우터(414) 및 제 1 바이패스 라우터(412, 416, 418) 중 어느 하나일 수 있으며, 각각의 제 1 라우터는 캐쉬 도는 LLC(Last Level Cache)와 연결된다.
한편, 링 네트워크(410)는 패킷을 미리 설정된 어느 하나의 방향으로 전송하는 단방향 네트워크일 수 있다. 도 4에서는 링 네트워크(410)의 전송 방향이 반시계 방향인 것으로 설명하도록 한다.
반시계 방향을 기준으로, 제 1 전송 라우터(414)는 다른 제 1 바이패스 라우터(412)로부터 패킷을 수신할 수 있다. 또한, 제 1 전송 라우터(414)는 제 2 라우터(422)로부터 패킷을 수신할 수 있다. 또한, 제 1 전송 라우터(414)는 제 1 전송 라우터(414)와 연결된 캐쉬(415)로부터 패킷을 수신할 수도 있다.
제 1 전송 라우터(414)에서 패킷을 수신하는 경우, 패킷의 전송 목적지를 결정할 수 있다. 예를 들어, 제 1 전송 라우터(414)는 패킷에 포함된 라우팅 정보를 이용하여, 패킷의 전송 목적지를 결정할 수 있다. 한편, 제 1 전송 라우터(414)에 수신된 패킷이 복수개인 경우, 제 1 전송 라우터(414)는 다른 라우터(412 또는 422)로부터 수신한 패킷을 캐쉬(415)로부터 수신한 패킷 보다 우선적으로 전송할 수 있다. 또한, 제 1 전송 라우터(414)와 연결된 다른 제 1 바이패스 라우터(412) 및 제 2 라우터(422)로부터 모두 패킷을 수신한 경우에는, 랜덤하게 어느 하나를 먼저 전송할 수 있다. 다만, 이는 일 실시예일 뿐, 설정에 따라 제 1 전송 라우터(414)는 다른 제 1 바이패스 라우터(412)로부터 수신한 패킷을 제 2 라우터(422)로부터 수신한 패킷에 비해 우선적으로 전송할 수도 있다. 다른 예에 따라, 제 1 전송 라우터(414)는 제 2 라우터(422)로부터 수신한 패킷을 다른 제 1 바이패스 라우터(412)로부터 수신한 패킷에 비해 우선적으로 전송할 수도 있다.
한편, 제 1 전송 라우터(414)는 패킷의 전송 목적지가 제 1 전송 라우터(414)와 연결된 레그 네트워크(420) 상에 위치하는 경우, 제 1 전송 라우터(414)와 연결된 제 2 라우터(422)에 패킷을 전송할 수 있다. 또한, 제 1 전송 라우터(414)는 패킷의 전송 목적지가 제 1 전송 라우터(414)와 연결되지 않은 레그 네트워크(예를 들어, 430) 상에 위치하는 경우, 제 1 전송 라우터(414)와 연결된 또 다른 제 1 바이패스 라우터(416)에 패킷을 전송할 수 있다.
패킷을 수신한 제 2 라우터(422)는 패킷의 전송 목적지가 제 2 라우터(422)인지 여부를 판단할 수 있다. 제 2 라우터(422)는 패킷의 전송 목적지가 제 2 라우터(422)에 해당하는 경우, 패킷을 획득할 수 있다. 패킷의 전송 목적지가 제 2 라우터(422)에 해당하지 않는 경우, 제 2 라우터(422)와 연결된 다른 제 2 라우터(424)에 패킷을 전송할 수 있다. 패킷은 전송 목적지에 해당하는 제 2 라우터에 도달할 때까지 일방향으로 전달될 수 있다.
제 1 전송 라우터(314)는 패킷의 전송 목적지가 레그 네트워크(420) 상이 아닌 다른 레트워크, 예를 들어 레그 네트워크(430)에 위치하는 경우, 그에 직접적으로 연결된 제 1 전송 라우터(412)에 도달할 때까지 패킷이 다른 제 1 라우터들을 통해 전달된다.
다른 예에 따라 제 1 바이패스 라우터(416)는 제 1 바이패스 라우터(416)와 연결된 캐쉬(417)로부터 패킷을 수신할 수 있다. 또한, 제 1 바이패스 라우터(416)는 제 1 바이패스 라우터(416)와 연결된 제 1 전송 라우터(414)로부터 패킷을 수신할 수도 있다.
제 1 바이패스 라우터(416)는 수신한 패킷에 포함된 라우팅 정보로부터 패킷의 전송 목적지를 결정할 수 있다. 제 1 바이패스 라우터(416)는 링 네트워크에서 미리 설정된 반시계 방향을 기준으로 다른 제 1 바이패스 라우터(418)에 패킷을 전송할 수 있다.
한편, 제 1 바이패스 라우터(416)가 제 1 바이패스 라우터(416)와 연결된 캐쉬(417) 및 제 1 전송 라우터(414)로부터 모두 패킷을 수신한 경우, 제 1 바이패스 라우터(416)는 제 1 전송 라우터(414)로부터 수신한 패킷을 캐쉬(417)로부터 수신한 패킷에 비해 우선적으로 전송할 수 있다.
도 4를 참조하여, 전술한 방법은 도 4의 링 네트워크(410)와 연결된 다른 레그 네트워크(430) 및 다른 제 1 라우터들에도 동일하게 적용될 수 있다.
도 5는 다른 실시예에 따라 온 칩 네트워크에서 데이터를 송수신하는 방법을 설명하기 위한 흐름도이다.
단계 510에서, 라우팅 시스템은 링 네트워크를 구성하고 있는 복수개의 제 1 라우터들 중 어느 하나인 제 1 라우터에 패킷이 수신되었는지 여부를 판단한다.
일 실시예에 따른 제 1 라우터는 제 1 전송 라우터 및 제 1 바이패스(bypass) 라우터 중 어느 하나일 수 있다.
제 1 전송 라우터는 제 1 전송 라우터와 연결된 제 2 라우터, 제 1 전송 라우터와 연결된 캐쉬 및 제 1 전송 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 각각 패킷을 수신할 수 있다. 또한, 제 1 바이패스 라우터는 제 1 바이패스 라우터와 연결된 캐쉬 및 제 1 바이패스 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 각각 패킷을 수신할 수 있다.
한편, 단계 510은 도 1을 참조하여 전술한 단계 110과 대응될 수 있다.
단계 520에서, 라우팅 시스템은 제 1 라우터에 수신된 패킷의 전송 목적지를 결정한다. 제 1 라우터는 수신한 패킷에 포함된 라우팅 정보로부터, 패킷의 전송 목적지를 확인할 수 있다.
한편, 단계 520은 도 1을 참조하여 전술한 단계 120과 대응될 수 있다.
단계 530에서, 라우팅 시스템은 제 1 라우터가 레그 네트워크가 직접적으로 연결되어 있지 않은 경우, 제 1 라우터와 또 다른 제 1 라우터를 연결하는 복수개의 채널들 중 어느 하나를 선택할 수 있다.
일 실시예에 따른 라우팅 시스템에서, 링 네트워크를 구성하는 복수개의 제 1 라우터들은 서로 복수개의 채널들을 통해 연결될 수 있다. 예를 들어, 복수개의 제 1 라우터들은 서로 2개의 채널들을 통해 연결될 수 있다. 여기에서, 복수개의 채널들은 링 네트워크에서 미리 설정된 하나의 방향으로 패킷을 전송할 수 있다. 한편, 다른 실시예에 따라, 복수개의 채널들은 서로 다른 방향으로 패킷을 전송할 수 있다. 예를 들어, 복수개의 채널들에는 제 1 방향(예를 들어, 시계 방향)으로 패킷을 전송하는 채널과 제 2 방향(예를 들어, 반시계 방향)으로 패킷을 전송하는 채널이 모두 포함될 수 있다.
라우팅 시스템은 복수개의 채널들 중 어느 하나를 랜덤하게 선택할 수 있다. 다른 예에 따라, 라우팅 시스템은 복수개의 채널들이 서로 다른 방향으로 패킷을 전송할 수 있는 경우, 결정된 전송 목적지와 패킷을 전송하는 제 1 라우터 사이의 거리에 기초하여, 채널을 선택할 수 있다. 라우팅 시스템은 전송 목적지까지 보다 가까운 거리로 전송할 수 있는 방향의 채널을 선택할 수 있다.
단계 540에서, 라우팅 시스템은 선택된 채널을 통해 다른 제 1 라우터로 패킷을 전송할 수 있다.
예를 들어, 복수개의 채널들이 모두 시계 방향으로 패킷을 전송하는 채널인 경우, 라우팅 시스템은 선택된 채널을 통해서 시계 방향을 기준으로 다음 제 1 라우터에 패킷을 전송할 수 있다. 또한, 복수개의 채널들 중 어느 하나는 시계 방향으로 패킷을 전송하고, 다른 하나는 반시계 방향으로 패킷을 전송하는 경우, 라우팅 시스템은 선택된 채널의 방향을 기준으로 다음 제 1 라우터에 패킷을 전송할 수 있다.
한편, 도 5의 흐름도는 링 네트워크에서 제 1 라우터들간에 패킷이 송수신되는 방법을 설명한 것으로, 제 1 라우터로부터 제 2 라우터로 패킷이 송신되는 방법은 도 1을 참조하여 전술한 방법과 동일하다.
도 6은 다른 실시예에 따라 링 네트워크(610)에 4개의 레그 네트워크들(620, 630, 640, 650)이 연결된 라우팅 시스템(600)을 설명하기 위한 도면이다.
도 6에서는, 제 1 라우터(예를 들어, 614)에 수신된 패킷의 목적지가 제 1 라우터(예를 들어, 614)와 연결되지 않은 레그 네트워크 상에 위치하는 경우에 대해 설명하도록 한다.
링 네트워크(610)는 복수개의 제 1 라우터들(예를 들어, 612, 614, 616, 618)로 구성될 수 있다. 제 1 라우터는 제 1 전송 라우터(614) 및 제 1 바이패스 라우터(612, 616, 618) 중 어느 하나일 수 있으며, 각각의 제 1 라우터는 캐쉬 또는 LLC와 연결된다.
한편, 링 네트워크(610)는 패킷을 미리 설정된 어느 하나의 방향으로 전송하는 단방향 네트워크일 수 있다. 도 6에서는 링 네트워크(610)의 전송 방향이 반시계 방향인 것으로 설명하도록 한다.
반시계 방향을 기준으로, 제 1 전송 라우터(614)는 다른 제 1 바이패스 라우터(612)로부터 패킷을 수신할 수 있다. 또한, 제 1 전송 라우터(614)는 제 2 라우터(622)로부터 패킷을 수신할 수 있다. 또한, 제 1 전송 라우터(614)는 제 1 전송 라우터(614)와 연결된 캐쉬(615)로부터 패킷을 수신할 수도 있다.
제 1 전송 라우터(614)에서 패킷을 수신하는 경우, 패킷의 전송 목적지를 결정할 수 있다. 한편, 제 1 전송 라우터(614)에 수신된 패킷이 복수개인 경우에는 도 3에서 전술한 바와 동일한 방법으로, 다른 라우터(622, 612)로부터 수신한 패킷을 우선적으로 전송할 수 있다.
한편, 제 1 전송 라우터(614)는 패킷의 전송 목적지가 제 1 전송 라우터(614)와 연결되지 않은 레그 네트워크(예를 들어, 630) 상에 위치함에 따라, 제 1 전송 라우터(614)와 연결된 제 1 바이패스 라우터(616)에 패킷을 전송할 수 있다.
제 1 전송 라우터(614)는 제 1 전송 라우터(614)와 제 1 바이패스 라우터(616)를 연결하는 2개의 채널들 중 어느 하나를 선택할 수 있다. 예를 들어, 제 1 전송 라우터(614)는 2개의 채널들 중 어느 하나를 랜덤하게 선택할 수 있다. 다른 예에 따라, 제 1 전송 라우터(614)는 미리 설정된 규칙에 따라 2개의 채널들 중 왼쪽 채널을 선택하여, 패킷을 전송할 수 있다.
다른 예에 따라 제 1 바이패스 라우터(616)는 제 1 바이패스 라우터(616)와 연결된 캐쉬(617)로부터 패킷을 수신할 수 있다. 또한, 제 1 바이패스 라우터(616)는 제 1 바이패스 라우터(616)와 연결된 제 1 전송 라우터(614)로부터 패킷을 수신할 수도 있다.
제 1 바이패스 라우터(616)는 수신한 패킷에 포함된 라우팅 정보로부터 패킷의 전송 목적지를 결정할 수 있다. 제 1 바이패스 라우터(616)는 링 네트워크에서 미리 설정된 반시계 방향을 기준으로 다른 제 1 바이패스 라우터(318)에 패킷을 전송할 수 있다.
한편, 제 1 바이패스 라우터(316)가 제 1 바이패스 라우터(316)와 연결된 캐쉬(317) 및 제 1 전송 라우터(314)로부터 모두 패킷을 수신한 경우에는 도 3에서 전술한 바와 동일한 방법으로, 다른 라우터(614)로부터 수신한 패킷을 우선적으로 전송할 수 있다.
제 1 바이패스 라우터(616)는 제 1 바이패스 라우터(616)와 다른 제 1 바이패스 라우터(618)를 연결하는 2개의 채널들 중 어느 하나를 선택할 수 있다. 예를 들어, 제 1 바이패스 라우터(616)는 2개의 채널들 중 어느 하나를 랜덤하게 선택할 수 있다. 다른 예에 따라, 제 1 바이패스 라우터(616)는 미리 설정된 규칙에 따라 2개의 채널들 중 왼쪽 채널을 선택하여, 패킷을 전송할 수 있다.
도 6을 참조하여, 전술한 방법은 도 6의 링 네트워크(610)와 연결된 다른 레그 네트워크들(630, 640, 650) 및 다른 제 1 라우터들에도 동일하게 적용될 수 있다.
도 7은 또 다른 실시예에 따라 링 네트워크(710)에 4개의 레그 네트워크들(720, 730, 740, 750)이 연결된 라우팅 시스템(700)을 설명하기 위한 도면이다.
도 7에서는, 제 1 라우터(예를 들어, 714)에 수신된 패킷의 목적지가 제 1 라우터(예를 들어, 714)와 연결되지 않은 레그 네트워크 상에 위치하는 경우에 대해 설명하도록 한다.
링 네트워크(710)는 복수개의 제 1 라우터들(예를 들어, 712, 714, 716, 718)로 구성될 수 있다. 제 1 라우터는 제 1 전송 라우터(714) 및 제 1 바이패스 라우터(712, 716, 718) 중 어느 하나일 수 있으며, 각각의 제 1 라우터는 캐쉬 또는 LLC와 연결된다.
한편, 도 7을 참조하면, 링 네트워크(710)를 구성하는 제 1 라우터들(예를 들어, 712, 714, 716, 718)은 서로 다른 방향으로 패킷을 전송하는 복수개의 채널들을 이용하여 연결될 수 있다.
제 1 전송 라우터(714)는 제 1 바이패스 라우터(712)로부터 패킷을 수신할 수 있다. 또한, 제 1 전송 라우터(714)는 제 1 라우터와 연결된 제 2 라우터(722)로부터 패킷을 수신할 수 있다. 또한, 제 1 전송 라우터(714)는 제 1 전송 라우터(714)와 연결된 캐쉬(715)로부터 패킷을 수신할 수도 있다.
제 1 전송 라우터(714)에서 패킷을 수신하는 경우, 패킷의 전송 목적지를 결정할 수 있다. 한편, 제 1 전송 라우터(714)에 수신된 패킷이 복수개인 경우에는 도 3에서 전술한 바와 동일한 방법으로, 다른 라우터(722, 712)로부터 수신한 패킷을 우선적으로 전송할 수 있다.
한편, 제 1 전송 라우터(714)는 패킷의 전송 목적지가 제 1 전송 라우터(714)와 연결되지 않은 레그 네트워크(예를 들어, 730) 상에 위치함에 따라, 제 1 전송 라우터(714)와 연결된 제 1 바이패스 라우터(712) 또는 다른 제 1 바이패스 라우터(716)에 패킷을 전송할 수 있다.
일 실시예에 따른 제 1 전송 라우터(714)는 패킷의 전송 목적지와 제 1 전송 라우터(714) 간의 거리에 기초하여, 복수개의 채널들 중 어느 하나를 선택할 수 있다. 제 1 전송 라우터(714)는 전송 목적지까지 보다 가까운 거리로 전송할 수 있는 방향의 채널을 선택할 수 있다. 예를 들어, 패킷의 전송 목적지가 제 2 레그 네트워크(730)인 경우, 제 1 전송 라우터(714)는 시계 방향으로 패킷을 전송하는 채널을 선택할 수 있다. 다른 예에 따라, 패킷의 전송 목적지가 제 4 레그 네트워크(750)인 경우, 제 1 전송 라우터(714)는 반시계 방향으로 패킷을 전송하는 채널을 선택할 수 있다. 한편, 각각의 방향의 채널을 이용할 경우, 제 1 전송 라우터(714)로부터 전송 목적지까지의 거리가 동일하다면, 복수개의 채널들 중 어느 하나를 랜덤하게 선택할 수 있다.
한편, 전술한 예는 일 실시예일 뿐, 복수개의 채널들이 존재하는 경우, 제 1 전송 라우터(714)는 랜덤하게 어느 하나의 채널을 선택할 수 있다.
도 7을 참조하여, 전술한 방법은 도 7의 링 네트워크(710)와 연결된 다른 레그 네트워크들(730, 740, 750) 및 다른 제 1 라우터들에도 동일하게 적용될 수 있다.
본 발명에 따른 라우팅 시스템은 도 3, 4, 6 및 7에 도시된 예에 한정되는 것은 아니며, 레그 네트워크의 수 또는 채널의 수는 하나 또는 복수개의 범위에서 자유롭게 구성될 수 있다.도 8은 일 실시예에 따른 라우팅 시스템(800)을 설명하기 위한 블록도이다.
도 8에 도시된 라우팅 시스템(800)에는 본 실시예와 관련된 구성요소들만이 도시되어 있다. 따라서, 도 8에 도시된 구성요소들 외에 다른 범용적인 구성요소들이 더 포함될 수 있음을 본 실시예와 관련된 기술분야에서 통상의 지식을 가진 자라면 이해할 수 있다.
한편, 라우팅 시스템(800)은 일 실시예에 따라 제 1 라우터 상에 구현될 수 있다.
판단부(810)는 링 네트워크를 구성하고 있는 복수개의 제 1 라우터들 중 어느 하나인 제 1 라우터에 패킷이 수신되었는지 여부를 판단한다.
일 실시예에 따른 제 1 라우터는 제 1 전송 라우터 및 제 1 바이패스(bypass) 라우터 중 어느 하나일 수 있으며, 각각의 제 1 라우터는 캐쉬 도는 LLC와 연결된다.
제 1 전송 라우터의 경우, 판단부(810)는 패킷 송수신부(830)에 제 1 전송 라우터와 연결된 제 2 라우터, 제 1 전송 라우터와 연결된 캐쉬 및 제 1 전송 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 각각 패킷이 수신되었는지 여부를 판단할 수 있다. 여기에서, 제 1 전송 라우터와 연결된 다른 제 1 라우터는 링 네트워크에 연결된 레그 네트워크의 구조에 따라 제 1 전송 라우터 일 수도 있고 제 1 바이패스 라우터 일 수도 있다.
제 1 바이패스 라우터의 경우, 판단부(810)는 패킷 송수신부(830)에 제 1 바이패스 라우터와 연결된 캐쉬 및 제 1 바이패스 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 각각 패킷이 수신되었는지 여부를 판단할 수 있다. 여기에서, 제 1 바이패스 라우터와 연결된 다른 제 1 라우터는 링 네트워크에 연결된 레그 네트워크의 구조에 따라 제 1 전송 라우터 일 수도 있고 제 1 바이패스 라우터 일 수도 있다.
전송 목적지 결정부(820)는 패킷 송수신부(830)에 수신된 패킷의 전송 목적지를 결정한다.
전송 목적지 결정부(820)는 수신한 패킷에 포함된 라우팅 정보로부터, 패킷의 전송 목적지를 확인할 수 있다. 패킷의 전송 목적지는 제 2 라우터와 연결된 코어에 관한 주소로 표시될 수도 있고, 제 2 라우터에 관한 주소로 표시될 수도 있다.
패킷 송수신부(830)는 제 1 라우터와 연결된 레그 네트워크 상에 결정된 전송 목적지가 위치함에 따라, 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 제 1 라우터와 연결된 제 2 라우터에 패킷을 전송한다.
패킷 송수신부(830)는 결정된 전송 목적지가 연결된 레그 네트워크 상에 위치하는 제 2 라우터와 대응되는 것인지 확인할 수 있다. 전송 목적지는 제 2 라우터와 연결된 코어에 관한 주소로 표시될 수도 있고, 제 2 라우터에 관한 주소로 표시될 수도 있다.
패킷 송수신부(830)는 결정된 전송 목적지가 링 네트워크와 연결된 레그 네트워크 상에 위치하는 경우, 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 연결된 제 2 라우터에 패킷을 전송함으로써, 패킷을 전송 목적지에 도달하도록 할 수 있다.
한편, 패킷 송수신부(830)는 제 1 라우터가 레그 네트워크와 직접적으로 연결되어 있지 않은 경우, 제 1 라우터와 연결된 다른 제 1 라우터에 패킷을 전송할 수 있다. 패킷 송수신부(830)는 양 방향으로 각각 1개의 제 1 라우터들과 연결될 수 있다. 패킷 송수신부(830)는 링 네트워크에서 미리 결정된 방향에 따라, 양 방향 중 어느 하나의 방향으로 연결된 다른 제 1 라우터에 패킷을 전송할 수 있다.
한편 다른 실시예에 따라, 링 네트워크를 구성하는 제 1 라우터들이 복수개의 채널들로 연결된 경우, 패킷 송수신부(830)는 제 1 라우터와 또 다른 제 1 라우터를 연결하는 복수개의 채널들 중 어느 하나를 선택할 수 있다.
예를 들어, 패킷 송수신부(830)는 서로 다른 제 1 라우터를 연결하는 2개의 채널들 중 어느 하나를 랜덤하게 선택할 수 있다. 패킷 송수신부(830)는 선택된 채널을 통해, 패킷을 전송할 수 있다. 여기에서, 복수개의 채널들은 서로 동일한 방향으로 패킷을 전송하는 채널일 수도 있고, 서로 다른 방향으로 패킷을 전송하는 채널일 수도 있다.
한편, 복수개의 채널들이 서로 다른 방향으로 패킷을 전송하는 채널들인 경우, 패킷 송수신부(830)는 결정된 전송 목적지와 패킷을 전송하는 제 1 라우터 사이의 거리에 기초하여, 채널을 선택할 수 있다. 패킷 송수신부(830)는 전송 목적지까지 보다 가까운 거리로 전송할 수 있는 방향의 채널을 선택할 수 있다.
개시된 실시예에 따른 장치는 프로세서, 프로그램 데이터를 저장하고 실행하는 메모리, 디스크 드라이브와 같은 영구 저장부(permanent storage), 외부 장치와 통신하는 통신 포트, 터치 패널, 키(key), 버튼 등과 같은 사용자 인터페이스 장치 등을 포함할 수 있다.  소프트웨어 모듈 또는 알고리즘으로 구현되는 방법들은 상기 프로세서상에서 실행 가능한 컴퓨터가 읽을 수 있는 코드들 또는 프로그램 명령들로서 컴퓨터가 읽을 수 있는 기록 매체 상에 저장될 수 있다.  여기서 컴퓨터가 읽을 수 있는 기록 매체로 마그네틱 저장 매체(예컨대, ROM(read-only memory), RAM(random-access memory), 플로피 디스크, 하드 디스크 등) 및 광학적 판독 매체(예컨대, 시디롬(CD-ROM), 디브이디(DVD: Digital Versatile Disc)) 등이 있다.  컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템들에 분산되어, 분산 방식으로 컴퓨터가 판독 가능한 코드가 저장되고 실행될 수 있다.  매체는 컴퓨터에 의해 판독가능하며, 메모리에 저장되고, 프로세서에서 실행될 수 있다.
개시된 실시예에서 인용하는 공개 문헌, 특허 출원, 특허 등을 포함하는 모든 문헌들은 각 인용 문헌이 개별적으로 및 구체적으로 병합하여 나타내는 것 또는 게시된 실시예에서 전체적으로 병합하여 나타낸 것과 동일하게 개시된 실시예에 병합될 수 있다.
개시된 실시예의 이해를 위하여, 도면에 도시된 바람직한 실시 예들에서 참조 부호를 기재하였으며, 개시된 실시 예들을 설명하기 위하여 특정 용어들을 사용하였으나, 특정 용어에 의해 개시된 실시예가 한정되는 것은 아니며, 개시된 실시예들은 당업자에 있어서 통상적으로 생각할 수 있는 모든 구성 요소들을 포함할 수 있다.
개시된 실시예는 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다.  이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다.  예를 들어, 개시된 실시예는 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다.  개시된 실시예의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 개시된 실시예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다.  기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.  또한, 개시된 실시예는 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다.  “매커니즘”, “요소”, “수단”, “구성”과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다.  상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.
개시된 실시예에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 개시된 실시예의 범위를 한정하는 것은 아니다.  명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다.  또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다.  또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 개시된 실시예의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.
800: 라우팅 시스템
810: 판단부
820: 전송 목적지 결정부
830: 패킷 송수신부

Claims (19)

  1. 복수 개의 제 1 라우터들을 포함하는 링 네트워크와, 각각이 복수 개의 제 2 라우터들을 포함하고 상기 링 네트워크에 연결된 하나 이상의 레그 네트워크를 포함하는 온 칩 네트워크에서 데이터를 송수신하는 방법으로서,
    상기복수개의 제 1 라우터들 중 어느 하나인 제 1 라우터에 패킷이 수신되었는지 여부를 판단하는 단계;
    상기 제 1 라우터에 수신된 패킷의 전송 목적지를 결정하는 단계;
    상기 결정된 전송 목적지가 상기 링 네트워크와 연결된 레그 네트워크 상에 위치하는 경우, 상기 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 어느 하나에 상기 패킷을 전송하는 단계를 포함하는 온 칩 네트워크에서 데이터를 송수신하는 방법.
  2. 제 1항에 있어서, 상기 패킷을 전송하는 단계는,
    상기 제 1 라우터가 상기 레그 네트워크와 직접적으로 연결되어 있지 않은 경우, 상기 제 1 라우터와 연결된 다른 제 1 라우터에 상기 패킷을 전송하는 단계를 포함하는 온 칩 네트워크에서 데이터를 송수신하는 방법.
  3. 제 1항에 있어서, 상기 제 1 라우터는,
    제 1 전송 라우터 또는 제 1 바이패스(bypass) 라우터이며,
    상기 제 1 라우터가 상기 제 1 전송 라우터인 경우, 상기 제 1 전송 라우터와 연결된 제 2 라우터, 상기 제 1 전송 라우터와 연결된 캐쉬 및 상기 제 1 전송 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 적어도 하나의패킷을 수신하고,
    상기 제 1 라우터가 상기 제 1 바이패스 라우터인 경우, 상기 제 1 바이패스 라우터와 연결된 캐쉬 및 상기 제 1 바이패스 라우터와 연결된 제 1 라우터 중 적어도 하나로부터 적어도 하나의 패킷을 수신하는 단계를 더 포함하는 온 칩 네트워크에서 데이터를 송수신하는 방법.
  4. 제 1항에 있어서, 상기 패킷을 전송하는 단계는,
    상기 제 1 라우터가 상기 제 1 라우터와 연결된 다른 라우터 및 상기 제 1 라우터와 연결된 캐쉬로부터 모두 패킷을 수신한 경우, 상기 다른 라우터로부터 수신한 패킷을 우선적으로 전송하는 온 칩 네트워크에서 데이터를 송수신하는 방법.
  5. 제 1항에 있어서,
    상기 패킷을 수신한 제 2 라우터에서 전송 목적지에 따라 상기 패킷을 획득하거나 다른 제 2 라우터로 재전송하는 단계를 더 포함하는 온 칩 네트워크에서 데이터를 송수신하는 방법.
  6. 제 1항에 있어서, 상기 링 네트워크 및 상기 레그 네트워크 중 적어도 하나는,
    단방향으로 패킷이 전송되는 네트워크 인 것인 온 칩 네트워크에서 데이터를 송수신하는 방법.
  7. 제 6항에 있어서, 상기 복수개의 제 1 라우터들 및 제 2 라우터들 중 하나 이상은,
    복수개의 채널들로 연결된 것인 온 칩 네트워크에서 데이터를 송수신하는 방법.
  8. 제 1항에 있어서, 상기 복수개의 제 1 라우터들 및 제 2 라우터들 중 하나 이상은,
    제 1 방향으로 상기 패킷을 전송하는 채널과 제 2 방향으로 상기 패킷을 전송하는 채널들을 이용하여 연결된 것인 온 칩 네트워크에서 데이터를 송수신하는 방법.
  9. 제 8항에 있어서, 상기 패킷을 전송하는 단계는,
    상기 결정된 전송 목적지와 상기 패킷을 전송하는 제 1 라우터 사이의 거리에 기초하여, 상기 제 1 방향으로 상기 패킷을 전송하는 채널과 상기 제 2 방향으로 상기 패킷을 전송하는 채널 중에서 어느 하나를 선택하여 패킷을 전송하는 단계를 포함하는 온 칩 네트워크에서 데이터를 송수신하는 방법.
  10. 복수 개의 제 1 라우터들을 포함하는 링 네트워크와, 각각이 복수 개의 제 2 라우터들을 포함하고, 링 네트워크에 연결된 하나 이상의 레그 네트워크를 포함하는 온 칩 네트워크에서 데이터를 송수신하는 시스템으로서,
    상기 복수개의 제 1 라우터들 중 어느 하나인 제 1 라우터에 패킷이 수신되었는지 여부를 판단하는 판단부;
    상기 제 1 라우터에 수신된 패킷의 전송 목적지를 결정하는 전송 목적지 결정부; 및
    상기 결정된 전송 목적지가 상기 링 네트워크와 연결된 레그 네트워크 상에 위치하는 경우, 상기 레그 네트워크를 구성하는 복수개의 제 2 라우터들 중 어느 하나에 상기 패킷을 전송하는 패킷 송수신부를 포함하는 온 칩 네트워크에서 데이터를 송수신하는 시스템.
  11. 제 10항에 있어서, 상기 패킷 송수신부는,
    상기 제 1 라우터가 상기 레그 네트워크와 직접적으로 연결되어 있지 않은 경우, 상기 제 1 라우터와 연결된 다른 제 1 라우터에 상기 패킷을 전송하는 온 칩 네트워크에서 데이터를 송수신하는 시스템.
  12. 제 10항에 있어서, 상기 제 1 라우터는,
    제 1 전송 라우터 또는 제 1 바이패스(bypass) 라우터이며,
    상기 패킷 송수신부는,
    상기 제 1 라우터가 상기 제 1 전송 라우터인 경우, 상기 제 1 전송 라우터와 연결된 제 2 라우터, 상기 제 1 전송 라우터와 연결된 캐쉬 및 상기 제 1 전송 라우터와 연결된 다른 제 1 라우터 중 적어도 하나로부터 적어도 하나의 패킷을 수신하고,
    상기 제 1 라우터가 상기 제 1 바이패스 라우터인 경우, 상기 제 1 바이패스 라우터와 연결된 캐쉬 및 상기 제 1 바이패스 라우터와 연결된 제 1 라우터 중 적어도 하나로부터 적어도 하나의 패킷을 수신하는 온 칩 네트워크에서 데이터를 송수신하는 시스템.
  13. 제 10항에 있어서, 상기 패킷 송수신부는,
    상기 제 1 라우터가 상기 제 1 라우터와 연결된 다른 라우터 및 상기 제 1 라우터와 연결된 캐쉬로부터 모두 패킷을 수신한 경우, 상기 다른 라우터로부터 수신한 패킷을 우선적으로 전송하는 온 칩 네트워크에서 데이터를 송수신하는 시스템.
  14. 제 10항에 있어서,
    상기 패킷을 수신한 제 2 라우터는, 전송 목적지에 따라 상기 패킷을 획득하거나 다른 제 2 라우터로 재전송하는 온 칩 네트워크에서 데이터를 송수신하는 시스템.
  15. 복수 개의 허브 라우터들(Hub Routers)로 이루어지는 링 네트워크; 및
    복수 개의 리프 라우터들(Leaf Routers)을 이루어지는 레그 네트워크를 포함하는 데이터 라우팅 시스템으로서,
    상기 허브 라우터들은 각각이 캐쉬와 연결되어 있으며,
    상기 리프 라우터들 중 하나 이상은 상기 허브 라우터들 중 하나 이상과 채널을 통해 연결되어 있는 데이터 라우팅 시스템.
  16. 제 15항에 있어서, 상기 복수개의 허브 라우터들은,
    리프 라우터 중 하나와 연결되는 전송 라우터 또는 리프 라우터와 연결되지 않은 제 1 바이패스(bypass) 라우터인 데이터 라우팅 시스템,
  17. 제 15항에 있어서,
    상기 복수개의 허브 라우터들 간의 데이터 송수신을 위한 채널들 및 상기 복수개의 리프 라우터들 간의 데이터 송수신을 위한 채널들을 더 포함하는 데이터 라우팅 시스템.
  18. 제 17항에 있어서,
    상기 복수개의 리프 라우터들 간의 채널들은 데이터를 어느 하나의 방향으로 전송하는 단방향 채널인 것인 데이터 라우팅 시스템.
  19. 제 17항에 있어서,
    상기 복수개의 허브 라우터들 간의 채널들은 제 1 방향 또는 제 2 방향으로 패킷을 전송 가능한 양방향 채널인 것인 데이터 라우팅 시스템.
KR1020150003481A 2015-01-09 2015-01-09 온 칩 네트워크에서 데이터를 송수신하는 방법 및 시스템 KR20160086133A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150003481A KR20160086133A (ko) 2015-01-09 2015-01-09 온 칩 네트워크에서 데이터를 송수신하는 방법 및 시스템
US14/950,490 US20160205042A1 (en) 2015-01-09 2015-11-24 Method and system for transceiving data over on-chip network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150003481A KR20160086133A (ko) 2015-01-09 2015-01-09 온 칩 네트워크에서 데이터를 송수신하는 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR20160086133A true KR20160086133A (ko) 2016-07-19

Family

ID=56368341

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150003481A KR20160086133A (ko) 2015-01-09 2015-01-09 온 칩 네트워크에서 데이터를 송수신하는 방법 및 시스템

Country Status (2)

Country Link
US (1) US20160205042A1 (ko)
KR (1) KR20160086133A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024010142A1 (ko) * 2022-07-05 2024-01-11 김기범 일방향 네트워크 기반 무선 통신 시스템

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5943115B1 (ja) * 2015-03-27 2016-06-29 日本電気株式会社 集積回路、半導体装置、カード及びデータ転送方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050075974A1 (en) * 2003-10-06 2005-04-07 First Data Corporation Methods and systems for transferring funds to direct-deposit accounts
JP4562443B2 (ja) * 2004-07-15 2010-10-13 富士通株式会社 光伝送システム及び光伝送方法
JP4709847B2 (ja) * 2004-11-11 2011-06-29 インターナショナル・ビジネス・マシーンズ・コーポレーション ネットワーク再構成による処理ユニットの並列フラッシング
EP2206293B1 (en) * 2007-10-02 2015-03-04 Microchip Technology Germany GmbH System and method for signal failure detection in a ring bus system
US9112789B2 (en) * 2008-08-15 2015-08-18 Tellabs Operations, Inc. Method and apparatus for simplifying planning and tracking of multiple installation configurations
US20120195321A1 (en) * 2011-02-02 2012-08-02 Futurewei Technologies, Inc. Method and Apparatus for Low-Latency Interconnection Networks Using Hierarchical Rings
US8718085B2 (en) * 2011-03-23 2014-05-06 Verizon Patent And Licensing Inc. Coaxial cable interface to outdoor broadband unit
US9225556B2 (en) * 2013-06-07 2015-12-29 Broadcom Corporation Multiplexed packet local area networking using an Ethernet physical layer device
US9444728B2 (en) * 2013-07-30 2016-09-13 Cisco Technology, Inc. Packet switching device including cascaded aggregation nodes

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024010142A1 (ko) * 2022-07-05 2024-01-11 김기범 일방향 네트워크 기반 무선 통신 시스템

Also Published As

Publication number Publication date
US20160205042A1 (en) 2016-07-14

Similar Documents

Publication Publication Date Title
US11374870B2 (en) Network congestion notification method, agent node, and computer device
US10425194B2 (en) Cross-layer and cross-application acknowledgment for data transmission
US10355971B2 (en) System and method for data path validation and verification
US9749222B2 (en) Parallel computer, node apparatus, and control method for the parallel computer
EP2880550B1 (en) Connection mesh in mirroring asymmetric clustered multiprocessor systems
US20200076724A1 (en) Path management for segment routing based mobile user-plane using seamless bfd
KR20100133205A (ko) 최적의 전송 프로토콜 선택 방법 및 그 장치
CN105052092A (zh) 具有孤立端口的多节点虚拟交换机中的路径优化
KR20160086133A (ko) 온 칩 네트워크에서 데이터를 송수신하는 방법 및 시스템
US11240162B1 (en) Method for remote direct memory access (RDMA) congestion control over an ethernet network
JP6335402B2 (ja) 無線通信装置、無線通信方法及び無線通信プログラム
US20180287850A1 (en) Techniques for network multicasting with buffering
CN116192721A (zh) 路径感知方法、装置及系统
US9455911B1 (en) In-band centralized control with connection-oriented control protocols
JP6507662B2 (ja) 無線通信ネットワークシステム、送信無線端末、受信無線端末、通信方法、および無線センサーネットワークシステム
CN107483334B (zh) 一种报文转发的方法及装置
US10623299B2 (en) Reduced topologies
US9503373B2 (en) Control method by receiving device, receiving device, and communication system
JP6194775B2 (ja) ノード装置、データ中継方法、及び、プログラム
CN115988517B (zh) 一种基于5g通讯的自适应网络构建方法
US20160112318A1 (en) Information processing system, method, and information processing apparatus
US20070104188A1 (en) Determining transmission latency in network devices
CN117997471A (zh) 多通道发送方法、多通道接收方法、发送端及接收端
CN117459460A (zh) 处理网络拥塞的方法、装置、设备、网络系统和存储介质
KR20160019778A (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