KR20050075232A - 네트워크 프로세서에서의 ecmp 구현장치 - Google Patents

네트워크 프로세서에서의 ecmp 구현장치 Download PDF

Info

Publication number
KR20050075232A
KR20050075232A KR1020040003448A KR20040003448A KR20050075232A KR 20050075232 A KR20050075232 A KR 20050075232A KR 1020040003448 A KR1020040003448 A KR 1020040003448A KR 20040003448 A KR20040003448 A KR 20040003448A KR 20050075232 A KR20050075232 A KR 20050075232A
Authority
KR
South Korea
Prior art keywords
packet
information
output port
buffer
port
Prior art date
Application number
KR1020040003448A
Other languages
English (en)
Other versions
KR100552518B1 (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 KR1020040003448A priority Critical patent/KR100552518B1/ko
Publication of KR20050075232A publication Critical patent/KR20050075232A/ko
Application granted granted Critical
Publication of KR100552518B1 publication Critical patent/KR100552518B1/ko

Links

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/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/50Overload detection or protection within a single switching element

Landscapes

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

Abstract

본 발명은 네트워크 프로세서(Network Processor)에서의 IP(Internet Protocol) 패킷의 ECMP(Equal Cost Multipath Protocol)구현장치에 관한 것으로, 특히 라우터로부터 데이터를 전송하는 경우 출력포트의 장애발생에 따른 데이터 유실을 방지하기 위한 ECMP(Equal Cost Multipath Protocol)구현 장치에 관한 것이다. 본 발명은 다수의 노드로부터 수신한 각각의 데이터가 다수의 출력포트로 균등 분배될 수 있게 함으로써, 단일포트로의 과부하를 방지하여 데이터 손실 발생빈도를 현저히 줄이고, 특정 데이터에 대한 출력포트가 절체되거나 단선된 경우 포워딩 라우트 트리 엔트리 내 출력포트 목록에서 대체 출력포트를 얻어 송신함으로써 데이터 유실을 방지할 수 있도록 하였다.

Description

네트워크 프로세서에서의 ECMP 구현장치{The apparatus for implementation of ECMP in Network Processor}
본 발명은 네트워크 프로세서(Network Processor)에서의 IP(Internet Protocol) 패킷의 ECMP(Equal Cost Multipath Protocol)구현장치에 관한 것으로, 특히 라우터로부터 데이터를 전송하는 경우 출력포트의 장애발생에 따른 데이터 유실을 방지하기 위한 ECMP(Equal Cost Multipath Protocol)구현장치에 관한 것이다.
전통적인 IP 네트워크에서 다중 경로를 사용하는 방안으로 제시된 것에는 ECMP(Equal Cost Multi-path), OSPF-OMP(Optimized Multi-Path) 등이 있으며, ECMP는 토폴로지에 동일한 비용을 갖는 경로들이 존재하는 경우, 그 경로들에 동일한 양의 트래픽을 분배하는 방법을 말한다.
즉, ECMP 는 동일한 비용이 소요되는 여러 경로에 대하여 패킷을 할당하기 위한 라우팅 기법으로서, 패킷 전송 시스템은 패킷이 전달되는 개개의 경로에 있어서 매번 다음 경유지(next-hop)를 확인함으로써 최종 목적지를 찾아가게 된다. 따라서 라우터는 패킷을 전송하는 경우 어느 경유지(next-hop)를 사용할 것인지 여부를 결정해야만 한다. ECMP는 각 경로의 부하를 고려하지 않고 트래픽을 일정한 비율로 분산시키므로 균등한 부하 분배를 이루는데 효율적이지 못하다는 단점이 있다.
본 발명은 데이터 전송 시 유니캐스트 방식을 염두에 두고 있으나, 멀티캐스트 방식에 있어서도 동일한 방법이 적용될 수 있음에 유의하여야 한다.
인터넷의 전송 방식은 전송에 참여하는 송신자와 수신자 관점에서 나누어 유니캐스트, 브로드캐스트, 멀티캐스트로 구분할 수 있다.
유니캐스트 전송 방식은 하나의 송신자가 다른 하나의 수신자로 데이터를 전송하는 방식으로 일반적인 인터넷 응용프로그램이 모두 유니캐스트 방식을 사용하고 있다. 브로드캐스트 전송방식은 하나의 송신자가 같은 서브네트웍 상의 모든 수신자에게 데이터를 전송하는 방식이다. 반면 멀티캐스트 전송방식은 하나 이상의 송신자들이 특정한 하나 이상의 수신자들에게 데이터를 전송하는 방식으로 인터넷 화상 회의 등의 응용에서 사용한다.
전술한 바와 같이 유니캐스트는 네트웍상에서 단일 송신자와 단일 수신자간의 통신으로서, 종래의 점대점(point-to-point) 통신 개념이 유니캐스트와 의미상으로 유사하다고 할 수 있다.
한편 전술한 바와 같이 ECMP 는 패킷 할당을 위한 라우팅 기법의 하나이다. 라우팅(routing)이라 함은 패킷(packet)을 목적지에 전달하기 위해 경로정보를 어느 노드(node)에 전달할지를 각 노드가 판단할 수 있게 하고 그 정보에 따라 패킷을 전달하는 기능을 말한다. 라우팅을 담당하는 네트웍 프로세서로 구성된 라우터는 라우팅 프로토콜을 통하여 라우팅을 수행하게 된다.
라우터(router)는 동일한 전송 프로토콜을 사용하는 분리된 네트웍을 연결하는 장치로 네트웍 계층간을 서로 연결한다. 라우터와 유사한 기능을 수행하는 장치로는 동일한 프로토콜을 사용하여 랜을 확장할 수 있도록 하는 장치인 브리지가 있으나, 라우터는 브리지가 가지는 기능에 추가하여 경로 배정표를 가진다. 라우터는 경로 배정표에 따라 다른 네트웍 또는 자신의 네트웍 내의 노드를 결정한 다음 여러 경로 중 가장 효율적인 경로를 선택하여 패킷을 보낸다.
라우터는 흐름제어를 수행하며, 인터네트웍 내부에서 여러 서브네트웍을 구성하고 다양한 네트웍 관리 기능을 수행한다. 브리지와 라우터의 차이점을 간단히 살펴보면, 라우터는 네트웍 계층까지의 기능을 담당하면서 경로 설정을 해주는 반면, 브리지는 데이터링크 계층까지의 기능만으로 목적지 주소에 따른 선별 및 간단한 경로 결정을 한다.
라우터로 하여금 라우팅 수행을 가능하게 하는 통신규약을 라우팅 프로토콜이라 한다. 라우팅 프로토콜이란 라우터들이 패킷을 목적지까지 전달하기 위해 인접한 라우터 사이에서 경로정보를 주고받는 경우 상기 경로정보를 작성하고 제어하는 프로토콜을 말한다. 라우팅 프로토콜은 IGP(Internal Gateway Protocol)와 EGP(External Gateway Protocol)로 크게 구분할 수 있다.
IGP 라 함은 여러 네트워크 그룹 중 같은 그룹 내에서 경로 정보를 교환하여 통신을 하는 라우팅 프로토콜을 말하며 기업의 근거리통신망과 같은 자율 네트웍 내의 게이트웨이들 간에 라우팅 정보를 주고받는데 사용되는 프로토콜이다.
IGP 에 있어서 라우팅 정보는 전송내용을 어떤 경로로 보내야 하는지를 기술하기 위해, IP 또는 그 밖의 다른 네트웍 프로토콜이 사용될 수 있으며 RIP (Routing Information Protocol; 이하 RIP), OSPF(Open Shortest Path First; 이하 OSPF)등이 이에 해당한다. RIP 는 기업의 근거리통신망, 또는 그러한 랜들이 서로 연결된 그룹과 같은 독립적인 네트웍 내에서 라우팅 정보 관리를 위해 광범위하게 사용되는 프로토콜이다. RIP를 사용하면, 라우터 내의 게이트웨이 호스트는 전체 라우팅 테이블을 가장 가까운 인근 호스트에 매 30 초마다 보낸다. 인접한 호스트는 자신의 차례가 되면 그 정보를 그 다음 인접한 호스트로 넘기는데, 이러한 전달은 그 네트웍 내의 모든 호스트들이 같은 라우팅 경로 정보를 가질 때까지 계속된다. RIP는 네트웍 거리를 결정하는 방법으로 홉(hop)의 총계를 사용하는 반면에 다른 프로토콜들은 타이밍까지를 포함하는 보다 정교한 알고리즘을 사용한다. 네트웍 내에 라우터를 갖고 있는 각 호스트는 패킷을 전달할 다음 호스트를 결정하기 위해 라우팅 테이블 정보를 사용한다. RIP는 소규모 동종의 네트웍에서는 유효한 방안이라고 간주될 수 있으나, 보다 복잡하고 규모가 큰 네트웍에서는 RIP가 전체의 라우팅 테이블을 매 30초마다 전송하는 것은 네트웍 내에 많은 부담을 주게 된다.
OSPF 즉, 최단 경로 우선 프로토콜은 대규모 자율 네트웍에서, RIP 에 우선하여 사용되는 라우팅 프로토콜이다. RIP 과 마찬가지로, IETF (Internet Engineering Task Force)에 의해 OSPF 는 여러 개의 IGP 중 하나로 지정되었다. OSPF 는 링크 상태(link-State) 프로토콜을 사용하는 SPF(Shortest Path First) 라는 알고리즘을 사용한다. SPF 알고리즘에서는 모든 라우터가 토폴로지에 관한 모든 정보인 네트워크 맵을 가진다. 이 OSPF 라우팅 프로토콜은 초기에 나온 RIP 라우팅 프로토콜을 대체하여 보다 복잡하고 정교한 네트워크에 적용되고 있다. OSPF를 사용하면 라우팅 테이블의 변경 사실이나, 네트웍 내의 어떤 변화를 감지한 호스트는 즉시 그 정보를 네트웍 내의 다른 모든 호스트들에게 알림으로써 모두 같은 라우팅 정보를 가질 수 있도록 한다. 라우팅 테이블 전체를 보내는 RIP 과는 달리, OSPF를 사용하는 호스트는 오직 변경된 부분만을 보낸다. RIP 에서는 매 30초마다 라우팅 테이블을 인접한 호스트에 보내지만, OSPF는 변경이 생겼을 때에만 변경된 정보를 멀티캐스트 한다. 또한 OSPF는 단순히 홉(hop)수를 세는 것보다 추가적인 네트웍 정보를 참작한 링크상태 상에서 그것의 경로 등급을 기반으로 한다. OSPF는 또한 사용자가 자신의 선호도에 따라 몇몇 경로들에 대해 우선권을 부여할 수 있도록, 특정 호스트 라우터를 설정할 수 있게 한다. OSPF는 하나의 네트웍이 다시 세분될 수 있도록, 다양한 네트웍 서브넷 마스크를 지원한다. OSPF 내에서 라우터와 종단국 사이의 통신을 위해 RIP 이 지원된다. 이미 많은 네트웍들이 RIP를 사용하고 있기 때문에, 라우터 제작업체들은 본래 OSPF를 위해 설계된 라우터 내에 RIP의 지원도 함께 포함하는 경향이 있다.
한편, 라우팅 프로토콜중 EGP 는 네트웍이 다른 그룹 사이에서 경로정보를 교환하여 통신을 수행하도록 하는 프로토콜을 말하며, BGP(Border Gateway Protocol) 등이 이에 해당한다.
BGP는 자율 시스템의 네트웍 내에서 게이트웨이 호스트들 간 라우팅 정보를 교환하기 위한 프로토콜이다. BGP는 인터넷상의 게이트웨이 호스트들 간에 흔히 사용된다. 라우팅 테이블에는 이미 알고 있는 라우터들의 목록과, 접근할 수 있는 주소들, 그리고 최적의 경로를 선택하기 위해 각 라우터까지의 경로와 관련된 비용 정보가 담겨있다. BGP를 사용하는 호스트들은 TCP 를 이용하여 통신하며 어떤 호스트에 변경이 감지되었을 때에만 갱신된 라우팅 테이블 정보를 보내는데, 오직 연관된 부분만이 보내어진다. BGP는 IGP와는 잘 동작하지 않기 때문에 IBGP를 이용하여 자율 네트웍과 통신한다. 자율 네트웍 내부에 있는 라우터들은 IGP를 위한 것과 IBGP를 위한 것 등 모두 두 개의 라우팅 테이블을 유지한다.
한편 상기한 바에 따른 라우팅을 수행하기 위한 네트웍 프로세서로 구성된 호스트 즉, 라우터는 통상적으로 pc 등과 같은 단말을 입력 노드로 가진다.
도 1은 종래 기술에 따른 유니캐스트 라우팅을 나타낸 도면이다. 다수의 노드(101)로부터 데이터를 수신한 호스트(102)는 목적지 주소를 바탕으로 하여 통상적으로 유니캐스트(Unicast) 라우팅을 수행한다.
라우팅 수행에 따른 데이터 송출 시, 호스트(102)는 하나의 특정 출력포트 (103)를 선정하여 다수의 노드(101)로부터 수신한 모든 데이터를 하나의 특정 출력포트(103)로 송신하였다. 이때 특정 출력포트(103)에는 데이터가 전송되는 동안 부하가 걸리게 되고, 만일 특정 출력포트(103)에 장애가 발생하게 되는 경우 데이터는 유실될 수 밖에 없게 된다.
예를 들면, 도 1 에서 도시된 바와 같이 노드 1 을 비롯한 다수의 노드(101) 로부터 동일한 목적지 주소를 가진 데이터를 수신한 호스트(102)는 각각의 데이터를 유니 캐스트 라우팅하여 다수의 출력 포트(103)중 하나의 특정 출력포트 가령, 출력포트 3 을 선정한 다음 데이터를 송신하게 된다.
이 경우 출력포트 3 에는 데이터가 전송되는 동안 부하가 걸리게 된다. 만약 출력포트 3 이 임의로 절체되거나 단선될 경우 데이터는 목적지 노드로 전송될 수 없게 되며, 미처 전송하지 못한 데이터의 손실이 발생할 수 있다.
이는 결국 고정된 특정 포트에 대해서만 데이터 전송이 가능하도록 설정됨에 따른 것이다. 가령, 유니캐스트 라우팅의 경우는 하나의 단일 포트에 대해서만 데이터 전송이 가능함에 따라 만일 해당 포트에 장애가 발생하는 경우에는 장애 발생 후 전송되는 출력 데이터는 폐기될 수 밖에 없다는 문제점이 있다. 이는 종래 기술의 경우, 포트 장애 발생시 타 포트로의 전환을 위해서는 라우터에 의한 별도의 경로 설정을 요함에 따라 포트 장애 발생시 신속한 포트 전환이 어렵기 때문이다.
도 2 는 종래 기술에 의한 유니캐스트 포워딩 라우트 트리 엔트리를 나타낸 도면이다. 포워딩 라우트 트리 엔트리(200)라 함은 호스트로부터 송출되는 데이터의 전달 경로를 가리키는 것으로, 도시된 바와 같이 유니캐스트 포워딩 라우트 트리 엔트리(200)는 목적지 물리적 주소(201)와 출력포트(202)로 이루어진다.
목적지 물리적 주소(201)라 함은 호스트 즉 라우터와 직접 연결되어 있는 다음 단(next hop)의 물리적 주소를 말하며, 출력포트(202)라 함은 데이터를 송출하는 라우터의 특정포트를 말한다.
라우터는 라우팅 테이블과 라우팅 엔트리를 참조하여 데이터가 최종 목적지까지 전달될 수 있도록 한다. 라우팅 테이블이라 함은 네트웍간에 프로토콜에 의해 제공되는 목적지에 도달하기 위한 게이트웨이에 대한 정보를 모아둔 표를 말한다.
전술한 바와 같이 종래 기술에 의한 유니캐스트 라우팅의 경우 포워딩 라우트 트리 엔트리에 나타나는 출력포트는 하나의 특정 포트로 고정된다. 따라서, 상기 포트에 장애가 발생하는 경우 출력 데이터는 모두 폐기될 수 밖에 없다는 문제점이 있었다. 이러한 경우 서비스 가입자는 서비스 제공자에 대해 신뢰를 갖지 못할 뿐더러 원활한 서비스를 받지 못하는데 대한 서비스 가입자의 불만이 증가하게 되었다.
본 발명은 상기한 종래의 문제점을 해결하기 위한 것으로, 다수의 노드로부터 데이터를 수신한 라우터가 데이터 목적지 주소를 바탕으로 하는 라우팅에 의하여 적어도 하나 이상의 출력포트를 확보함으로써, 출력포트의 부하 분배를 통한 데이터 손실 방지 및 출력포트 장애 발생시 대체 출력포트를 제공하고자 하였다.
이러한 목적을 달성하기 위한 본 발명은, 외부로부터 전송된 데이터를 수집하여 버퍼부 및 처리부에 전송하는 수신부; 상기 수신부 및 버퍼부로부터 얻어진 값에 의한 연산을 수행하여 상기 수신 데이터에 대응하는 출력값을 얻는 처리부; 상기 수신부로부터 전송된 정보 및 상기 출력값에 관한 정보를 저장하고, 출력포트 장애 발생시 대체 출력포트에 관한 정보를 상기 처리부에 제공하는 버퍼부; 상기 처리부에 의하여 얻어진 출력 값으로부터 전송할 데이터를 갱신하고, 상기 데이터를 상기 출력포트를 통하여 송출하는 송신부;를 포함하여 이루어지는 것을 특징으로 한다.
본 발명을 설명함에 있어, 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의 내려진 용어들로서 이는 사용자의 의도 또는 관례 등에 따라 달라질 수 있으므로, 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하, 첨부한 도면을 참조로 본 발명을 상세히 살피기로 한다.
도 3 은 본 발명에서 송수신되는 데이터인 IP 패킷을 나타낸 도면이다. 이때 IP 패킷은 이더넷 프레임(300)의 타입(Type) 중 하나로, 도시된 바와 같이 목적지 물리적 주소(302), 소스 물리적 주소(303)로 이루어지는 이더넷 헤더(301), 타입/길이(304), IP 헤더(305), 페이로드(Payload)(306)로 이루어진다. 이때 IP 헤더(305)는 IP 헤더 버전(Version), 인터넷(Internet) 헤더 길이, 서비스(Service) 타입, IP 헤더와 페이로드(Payload)의 전체 길이, 식별자(Identification), 플래그(Flags), 분할(Fragment) 오프셋(offset), TTL(Time To Live), 프로토콜, IP 헤더 체크섬, 데이터 전송 주소를 나타내는 소스(source) IP 와 최종 목적지 주소를 의미하는 목적지 IP(destination IP) 등의 필드들로 이루어진다.
목적지 물리적 주소(302)는 전술한 바와 같이 다음 경유지(next hop)의 물리적 주소를 말하는 것으로, 특정 호스트와 직접 연결되는 바로 다음 라우터의 주소를 의미하며, 소스 물리적 주소(303)는 데이터를 처리하는 호스트의 물리적 주소를 의미한다. 한편 페이로드(306)는 실제 전송하는 데이터를 나타낸다.
도 4 는 본 발명에 의한 네트워크 프로세서 모듈(400)을 나타낸 도면이다. 본 발명은 출력포트의 장애 발생여부에 관한 데이터를 수집하는 포트정보 버퍼(410); 및 상기 포트정보 버퍼(410)의 데이터를 확인하여 출력포트 장애 발생시 미리 설정된 대체 출력포트를 통하여 데이터를 전송할 수 있도록 하는 포워딩 모듈(404);외에 수신 버퍼(401), 수신 모듈(402), 패킷정보 버퍼(408), 패킷 버퍼 (409), 입력 큐(403) 및 출력 큐(405), 송신 모듈(406), 송신 버퍼(407)를 포함하여 이루어지는 것을 특징으로 한다.
수신 버퍼(401)는 외부에서 입력되는 IP 패킷을 임시 저장하는 역할을 담당한다. 전술한 바와 같이 IP 패킷이라 함은 이더넷 프레임의 타입 중 하나를 말하는 것으로 도 3 에 나타난 바와 같다.
수신 모듈(402)은 수신 버퍼(401)에 임시 저장되어 있는 상기 IP 패킷을 패킷 버퍼(409)에 저장하고, 상기 IP 패킷에 대한 패킷 정보 예를 들면 IP 헤더, 패킷의 타입(Type), 입력포트 등을 추출하여 패킷정보 버퍼(408)에 저장한다. 또한 수신 모듈(402)은 상기 IP 패킷의 또 다른 정보를 하나의 키로 만들어 입력 큐(403)에 저장한다.
상기 IP 패킷의 또 다른 정보에는 상기 IP 패킷의 패킷 버퍼(409) 내의 위치와 상기 IP 패킷 정보의 패킷정보 버퍼(408) 내 위치를 연산을 통해 가리키는 피연산자 및 IP 패킷의 전체 길이 등이 이에 해당한다. 따라서 입력 큐(403)에는 상기 IP 패킷의 또 다른 정보를 가진 키가 임시저장 된다.
포워딩(Forwarding)모듈(404)은 입력 큐에서 키를 추출하여 이를 바탕으로 목적지 주소를 추출한 후 유니캐스트 라우팅을 수행하게 된다. 포워딩(Forwarding)모듈(404)은 종래기술과 같은 특정 단일 포트의 경우에도 적용이 가능하도록 이루어져 있으며, 특히 다수의 출력포트를 가지는 경우 개별 포트별 장애 여부를 확인하여 장애발생에 따른 대체 포트의 제공이 가능하도록 하고있다.
출력 큐(405)에는 유니캐스트 라우팅된 상기 IP 패킷의 정보가 키로 만들어져 임시 저장된다.
송신 모듈(406)은 라운드 로빈 방식으로 다수의 출력 큐(405) 중 하나의 큐에서 키를 추출하고 이를 바탕으로 유니캐스트 라우팅된 상기 IP 패킷의 소스 물리적 주소를 갱신하게 된다. 라운드 로빈 방식이라 함은 그룹 내에 있는 모든 요소들을 합리적인 순서에 입각하여 뽑는 방법으로서, 대개 리스트의 맨 위에서 아래로 가며 하나씩 뽑고, 끝나면 다시 맨 위로 돌아가는 식으로 진행된다.
송신 모듈(406)은 소스 물리적 주소를 갱신한 다음 상기 IP 패킷을 해당 송신 버퍼(407)로 전송하며, 해당 IP 패킷의 패킷정보를 패킷정보 버퍼(408)에서 제거한다.
송신 버퍼(407)는 상기 IP 패킷을 해당 출력포트를 통해 외부로 전송하기 전 임시 저장한다.
포트정보 버퍼(410)는 송신되는 해당 출력포트의 정보 예를 들면 해당 출력포트의 물리적 주소, 해당 출력포트에 할당된 출력 큐의 패킷정보 버퍼(408) 내 주소, 해당 출력포트 상태, 최대 전송 단위(Unit)정보 등을 저장한다.
패킷정보 버퍼(408)는 상기 IP 패킷에 대한 관련 정보를 저장한다. 상기 IP 패킷에 대한 정보라 함은 유니캐스트 라우팅을 위한 IP 헤더, 패킷의 타입, 입력포트 등과 유니캐스트 라우팅에 필요한 정보를 저장한다.
유니캐스트 라우팅에 필요한 정보라 함은 목적지 주소를 바탕으로 유니캐스트 라우팅이 가능하도록 하는 포워딩 표와 포워딩 라우트 트리 엔트리를 가리킨다.
포워딩 라우트 트리 엔트리에는 유니캐스트 라우팅 결과값 즉, 목적지 물리적 주소, 출력포트 수 그리고 출력포트 목록 등을 나타낸다.
패킷 버퍼(409)는 수신한 상기 IP 패킷과 유니캐스트 라우팅 결과가 가리키는 결과값 즉 포워딩 라우트 트리 엔트리를 저장한다.
한편 전술한 바와 같이 본 발명에 있어서 포워딩(Forwarding)모듈은 실질적인 출력포트 분배를 실행하게 된다. 아울러 이에 관한 자세한 설명은 후술하기로 한다.
본 발명에 의한 포워딩(Forwarding)모듈은 입력 큐에서 상기 IP 패킷에 관한 정보를 나타내는 키를 추출하여 이를 바탕으로 목적지 주소를 추출한 후 유니캐스트 라우팅을 수행하게 된다.
이때 출력포트가 하나의 특정 포트로 이루어진 단일 출력포트(Port)인 경우에는 포워딩 라우트 트리 엔트리로부터 얻어진 목적지 물리적 주소로 패킷 버퍼에 저장된 상기 IP 패킷의 기존 물리적 주소를 갱신한다.
이는 패킷 버퍼에 저장되어 있는 IP 패킷의 기존 물리적 주소는 본 발명에 의한 라우터를 나타내기 때문이다. 따라서 데이터 송신을 위해서는 다음 단(next hop) 라우터의 물리적 주소가 패킷 버퍼에 갱신되어 나타나야 한다.
아울러 패킷 버퍼 내 상기 IP 패킷의 IP 헤더 내 TTL 과 IP 체크섬 필드(Checksum Field) 역시 동일하게 새로 갱신되어 일대일 대응되는 해당 출력 큐에 저장된다. 해당 출력 큐에는 상기 IP 패킷 정보의 패킷정보 버퍼(408) 내 위치를 연산을 통해 가리키는 피연산자와 IP 패킷의 전체 길이 등이 하나의 키로 저장된다.
체크섬은 수신자가 같은 수의 비트가 도착했는지를 확인 할 수 있도록 전송단위 내의 비트 수를 세는 것이다. 만약 계산이 맞으면, 에러 없이 원만하게 수신된 것으로 간주된다
본 발명에 있어서 포워딩(Forwarding)모듈은 특히 다수의 출력포트를 가지는 경우 특정포트 장애 발생시 신속한 포트전환이 가능하도록 하고 있다.
포워딩(Forwarding)모듈에서는 포워딩 라우트 트리 엔트리로부터 얻어진 목적지 물리적 주소로 패킷 버퍼에 저장된 상기 IP 패킷의 기존 물리적 주소를 갱신한다.
또한 포워딩(Forwarding)모듈은 패킷 버퍼 내 상기 IP 패킷의 IP 헤더 내 TTL 과 IP 체크섬 필드(Checksum Field)를 동일하게 갱신한 후 균등한 출력포트 분배를 위해 IP 헤더 내의 특정 필드에 의한 연산작업을 수행한다.
예를 들면 IP 헤더 내의 소스 IP 주소와 목적지 주소의 해싱(Hashing) 연산을 통하여 적절한 출력포트를 선정하여 일대일 대응되는 출력 큐에 저장한다.
출력 큐에는 상기 IP 패킷의 패킷 정보의 패킷정보 버퍼(408) 내 위치를 연산을 통해 가리키는 피연산자와 IP 패킷의 전체 길이 등이 하나의 키로 저장된다.
해싱(hashing)이라 함은 하나의 문자열을 원래의 것을 상징하는 더 짧은 길이의 값이나 키로 변환하는 것이다. 짧은 해시 키를 사용하여 항목을 찾으면 원래의 값을 이용하여 찾는 것보다 더 빠르기 때문에, 해싱은 데이터베이스 내의 항목들을 색인하고 검색하는데 사용된다.
또한 해싱에 의해 정렬된 이름들 각각은 데이터베이스 내에서 개인들 데이터의 키가 될 수 있다. 데이터베이스 검색 수법은 일치하는 것이 먼저 발견될 때까지 각 이름들을 글자단위로 확인하기 시작해야만 한다. 그러나, 만약 이름들 각각이 해싱된다면, 각 이름별로 4자리의 고유한 키를 생성하는 것이 가능해 진다.
본 발명에 따른 네트워크 프로세서 모듈(400)에 대하여 좀더 상세히 살피면 다음과 같다.
다수의 노드로부터 송신된 IP 패킷은 본 발명에 의한 라우터의 입력포트로 들어와서 수신 버퍼(401)에 임시 저장된다. 수신 모듈(402)은 수신 버퍼(401)에 임시 저장된 상기 IP 패킷을 패킷 버퍼(409)로 옮겨 저장하고 상기 IP 패킷에 대한 관련 정보 예를 들면 IP 헤더, 패킷의 타입, 입력 포트 등을 추출하여 패킷정보 버퍼(408)에 저장한다.
또한 수신 모듈(402)은 IP 패킷의 일반적인 처리를 수행한다. 예를 들면 수신된 IP 패킷이 유니캐스트 패킷인지, 멀티캐스트 패킷인지 여부, 브로드캐스트(Broadcast) 패킷인지, 이더넷(Ethernet) 패킷 타입인지 여부, 그리고 IP 헤더 내의 각 필드의 값들이 올바르게 채워져 있는지 여부 등을 확인하여 적합하지 않은 형태의 IP 패킷이 수신된 경우에는 이를 폐기한다.
아울러 수신 모듈(402)은 상기 IP 패킷에 대한 관련 정보 예를 들면 상기 IP 패킷의 패킷 버퍼(409) 내의 위치와 상기 IP 패킷 정보의 패킷정보 버퍼(408) 내 위치를 연산을 통해 가리키는 피연산자와 상기 IP 패킷의 전체 길이 등을 하나의 키로 만들어 입력 큐(403)에 저장한다.
포워딩 모듈(404)은 입력 큐(403)에 저장된 키를 추출하여 그 키를 바탕으로 패킷정보 버퍼(408) 내 상기 IP 패킷의 IP 헤더내 목적지 주소를 이용해 패킷정보 버퍼(408) 내 라우팅 표를 참조하여 유니캐스트 라우팅을 실행한다.
포워딩 모듈(404)은 유니캐스트 라우팅을 실행함으로써 목적지 물리적 주소(501)와 출력포트 수(502) 그리고 출력포트 목록(503) 등의 정보를 가진 포워딩 라우트 트리 엔트리(500)를 가리키는 지시자를 도출한다. 포워딩 모듈(404)은 상기 지시자를 연산하여 포워딩 라우트 트리 엔트리(500)로부터 최종적으로 상기 IP 패킷의 출력포트를 추출하게 된다.
종래 기술에서는 도 2 에 나타난 바와 같이, 단일 출력포트(202)인 경우만 존재하게 되어 패킷 버퍼(409)에 저장된 상기 IP 패킷의 기존 물리적 주소를 포워딩 라우트 트리 엔트리(200)로부터 얻어진 목적지 물리적 주소(201)로 갱신하였다. 또한 패킷 버퍼(409) 내 상기 IP 패킷의 IP 헤더 내 TTL 과 IP 체크섬 필드를 동일하게 새로 갱신하였다. 갱신에 따른 새로운 물리적 주소 등과 일대일 대응되는 해당 출력 큐에 상기 IP 패킷 정보의 패킷정보 버퍼(408) 내 위치를 연산을 통해 가리키는 피연산자와 IP 패킷의 전체 길이 등을 하나의 키로 저장하였다.
따라서 다수의 노드로부터 수신한 IP 패킷은 오직 하나의 출력포트로만 전송되게 됨으로써 과부하로 인한 데이터 손실 발생빈도가 높았고 또한 해당 포트가 절체되거나 단선될 경우 데이터는 목적지 노드로 전송되지 못하고 유실될 수밖에 없었다.
도 5 는 본 발명에서의 ECMP 구현을 위한 포워딩 라우트 트리 엔트리(500)를 나타낸 도면이다. 전술한 바와 같이 포워딩 라우트 트리 엔트리(500)라 함은 호스트로부터 송출되는 데이터의 전달 경로를 가리키는 것으로, 본 발명에서의 포워딩 라우트 트리 엔트리(500)는 목적지 물리적 주소(501)와 출력포트 수(502), 출력포트 목록(503)로 이루어진다.
목적지 물리적 주소(501)라 함은 호스트 즉 라우터와 직접 연결되어 있는 다음 단(next hop)의 물리적 주소를 말하며, 출력포트 목록(503)이라 함은 데이터를 송출할 수 있는 라우터의 포트들을 말한다. 출력포트 수(502)는 본 발명에 의하여 이용 가능한 다수의 출력포트 수이다.
본 발명에서는 다수의 출력포트를 확보함으로써 특정 출력포트의 장애 발생시 대체 포트를 통한 데이터 전송이 가능하도록 함을 특징으로 한다.
본 발명에서의 포워딩 모듈(404)은 패킷 버퍼(409)에 저장된 상기 IP 패킷의 기존 물리적 주소를 포워딩 라우트 트리 엔트리(500)에 나타난 목적지 물리적 주소(501)로 갱신한다. 또한 패킷 버퍼(309) 내 상기 IP 패킷의 IP 헤더 내 TTL 과 IP 체크섬 필드를 새로이 갱신한다.
포워딩 모듈(404)은 데이터 출력을 위한 특정 출력포트 선정을 위해 IP 헤더 내의 특정 필드 가령, 소스 IP 주소와 목적지 주소에 대해 XOR 비트(bit) 연산을 수행한다. 포워딩 모듈(404)은 연산 수행 결과 얻어진 값에 의하여 포워딩 라우트 트리 엔트리(500) 내 다수의 출력포트 중에서 적절한 출력포트를 선정할 수 있게 된다.
소스 IP 주소와 목적지 주소에 의한 XOR 비트연산 일 예를 살피기로 한다.
현재 IPv4 룩 업(lookup)은 패킷의 목적지 주소를 바탕으로 이루어지나, 본 발명은 ECMP 구현시 출력포트 선정을 위해 패킷 내 목적지 주소와 소스 IP 주소를 바탕으로 XOR 비트 연산을 수행하여 출력포트를 선정하는 것을 특징으로 한다.
먼저 수신한 패킷이 IP 헤더내 소스 IP 주소 필드에 10.10.10.10 를 가지고, 목적지 주소 필드에는 20.20.20.20 을 가지며 룩업 결과 표 1 과 같은 포워드 라우트 트리 엔트리를 얻었다고 가정한다.
목적지 물리적 주소 0x010203040506
출력포트 수 0x4
출력포트 1 0x3
출력포트 2 0x4
출력포트 3 0x5
출력포트 4 0x6
이때 상기 네 개의 출력포트중 하나를 선정하여 패킷을 내보내게 된다. 이를 위해서는 소스 IP 주소와 목적지 주소를 XOR 연산후 하위 2비트값을 오프 셋(OFFSET)으로 하여 출력포트를 선정하게 된다.
XOR 비트 연산 순서는 다음과 같다. 우선, 소스 IP 주소와 목적지 주소를 2진수로 변환한다.
가령 소스 IP 주소가 10진수로 10.10.10.10 인 경우 이를 16진수인 0x0a0a0a0a 로 변환한 다음, 이를 다시 2진수인 00001010000010100000101000001010 로 변환한다.
또한 목적지 주소가 10진수로 20.20.20.20 인 경우 이를 16진수인 0x14141414로 변환한 다음, 이를 다시 2진수인 00010100000101000001010000010100 로 변환한다.
다음은 변환된 소스 IP 주소와 목적지 주소에 대해 XOR 비트 연산을 수행한다.
즉, 00001010000010100000101000001010 값에 대해 00010100000101000001010000010100 을 XOR 연산하면 00011110000111100001111000011110을 얻는다.
여기에서 하위 2비트 값인 10 즉 10진수로는 2 를 취한다.
오프 셋 값이 2 이므로 포워드 라우트 트리 엔트리로부터 0x5 즉 5번 출력큐로 인큐하여 패킷을 출력포트 5번으로 송신한다.
전술한 바와 같이 ECMP 처리를 통해 출력포트 5번을 얻은 다음 해당 출력포트의 링크상태를 점검하여 링크가 절체된 경우에는 대체 출력포트를 제공하여야 한다. 따라서 패킷은 출력포트 5번을 제외한 나머지 대체 가능한 출력포트 3번, 4번, 6번중 어느 하나로 나가야 한다.
이를 위한 하나의 방법으로는 단순히 오프셋(offset)을 하나 증가시켜 출력포트 6번을 대체 포트로 선택할 수 있다. 또 다른 방법으로는 목적지 주소와 패킷 내 IP 헤더의 IP 체크섬 필드 또는 다른 특정필드와 XOR 연산을 통해 다수의 출력가능한 포트 중 어느 하나를 다시 선정하여 그 출력포트의 출력큐로 상기 IP 패킷 정보의 패킷정보 버퍼(408) 내 위치를 연산을 통해 가리키는 피연산자와 IP 패킷의 전체 길이 등이 하나의 키로 만들어 저장함으로써 재선정된 출력 포트를 통해 패킷을 내보낼 수 있다.
상기 연산 결과 선정된 출력포트에 일대일 대응하는 출력 큐(405)로 상기 IP 패킷 정보의 패킷정보 버퍼(408) 내 위치를 연산을 통해 가리키는 피연산자와 IP 패킷의 전체 길이 등을 하나의 키로 만들어 저장함으로써 다수의 노드로부터 수신한 각각의 데이터가 다수의 출력포트로 균등 분배될 수 있게 된다.
본 발명은 상기한 바에 따른 ECMP 처리를 통해 선정된 출력포트를 얻은 다음 해당 출력포트의 링크상태를 점검하여 링크가 절체된 경우 대체 출력포트를 제공하는 것을 특징으로 한다. 이때 상기 패킷은 장애 발생 출력포트를 제외한 나머지 대체 가능한 출력포트 중 어느 하나로 나가야 한다.
상기한 바에 따라 본 발명은 단일포트로의 과부하를 방지하여 데이터 손실 발생빈도를 현저히 줄이며, 특정 데이터에 대한 출력포트가 절체되거나 단선된 경우 포워딩 라우트 트리 엔트리 내 출력포트 목록에서 대체 출력포트를 얻어 송신함으로써 데이터 유실을 방지할 수 있게 된다. 본 발명은 단일 출력포트인 경우에도 동일하게 적용가능 함은 전술한 바와 같다.
본 발명에서의 송신 모듈(406)은 라운드 로빈 방식으로 다수의 출력 큐(405) 중 하나의 큐에서 키를 추출한다. 추출된 키를 바탕으로 유니캐스트 라우팅된 상기 IP 패킷의 소스 물리적 주소를 해당 출력포트의 포트정보 버퍼(310) 내에서 추출하여 기존 IP 패킷의 소스 물리적 주소를 갱신한다.
다수의 노드로부터 수신된 IP 패킷은 본 발명에 의한 호스트 즉 라우터를 가리키는 주소인 동일한 목적지 주소를 가지고 있지만, 수신된 IP 패킷은 그 출발지가 다름에 따라 별개의 소스 IP 주소를 가진다.
따라서 포워딩 모듈에서 목적지 주소와 소스 IP 주소에 의하여 실행된 XOR 비트연산은 그 결과 값이 다르게 되며, 따라서 출력포트도 다르게 된다. 그 결과 송신 모듈은 동일한 목적지 주소에 대해 다수의 출력포트 수만큼의 소스 물리적 주소를 가질 수 있게 된다.
한편, 포워딩 라우트 트리 엔트리(500)로부터 갱신된 목적지 물리적 주소, 포트정보 버퍼(410)로부터 갱신된 소스 물리적 주소, 이더넷 타입 필드, TTL 값과 IP 체크 섬 값만 수정된 IP 헤더, 그리고 패킷 버퍼(409) 내 상기 IP 패킷의 페이로드의 순으로 이루어진 IP 패킷을 해당 송신 버퍼(407)에 임시 저장하고 해당 IP 패킷의 패킷 정보를 패킷정보 버퍼에서 제거한다. 이후 IP 패킷(500)은 하드웨어적으로 해당 출력포트로 전송되어 외부로 전송된다.
이상에서 본 발명에 대한 기술사상을 첨부도면과 함께 서술하였지만 이는 본 발명의 바람직한 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술분야의 통상의 지식을 가진 자라면 누구나 본 발명의 기술사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.
본 발명에 의하면, 다수의 노드로부터 데이터를 수신한 라우터가 수신 데이터를 다수의 출력포트로 균등 분배될 수 있게 함으로써, 단일포트로의 데이터 집중에 따른 과부하를 방지하여 데이터 손실 발생빈도를 현저히 줄이고, 특정 데이터에 대한 출력포트가 절체되거나 단선된 경우 포워딩 라우트 트리 엔트리 내 출력포트 목록에서 대체 출력포트를 얻어 송신할 수 있도록 함으로써 데이터 유실의 방지가 가능하게 되었다.
도 1은 종래 기술에 따른 유니캐스트 라우팅을 나타낸 도면
도 2 는 종래 기술에 의한 유니캐스트 포워딩 라우트 트리 엔트리를 나타낸 도면
도 3 은 본 발명에서 송수신되는 데이터인 IP 패킷을 나타낸 도면
도 4 는 본 발명에 의한 네트워크 프로세서 모듈을 나타낸 도면
도 5 는 본 발명에서의 ECMP 구현을 위한 포워딩 라우트 트리 엔트리를 나타낸 도면
********* 도면 주요 부분에 대한 부호의 설명 *********
101: 노드 102: 호스트
103: 출력포트 200: 포워딩 라우트 트리 엔트리
201: 목적지 물리적 주소 202: 출력포트
300: 이더넷 프레임 301: 이더넷 헤더
302: 목적지 물리적 주소 303: 소스 물리적 주소
304: 타입/길이 305: IP 헤더
306: 페이로드 400: 네트워크 프로세서 모듈
401: 수신 버퍼 402: 수신 모듈
403: 입력 큐 404: 포워딩 모듈
405: 출력 큐 406: 송신 모듈
407: 송신 버퍼 408: 패킷정보 버퍼
409: 패킷 버퍼 410: 포트정보 버퍼
500: 포워딩 라우트 트리 엔트리 501: 목적지 물리적 주소
502: 출력포트 수 503: 출력포트 목록

Claims (12)

  1. 라우터 출력포트의 장애발생에 따른 데이터 유실 방지를 위한 ECMP(Equal Cost Multipath Protocol)구현 장치에 있어서,
    외부로부터 전송된 IP 패킷을 수집하는 수신부;
    상기 IP 패킷의 IP 헤더내 특정 필드에 대해 XOR 연산을 수행하여 출력포트를 선정하는 처리부;
    상기 IP 패킷 관련 정보를 저장하는 버퍼부;
    상기 처리부에 의하여 선정된 출력포트를 통하여 상기 IP 패킷을 송출하는 송신부;
    를 포함하는 것을 특징으로 하는 ECMP구현 장치.
  2. 제 1항에 있어서, 수신부는
    외부에서 수신된 IP 패킷을 임시 저장하는 수신 버퍼;
    상기 수신 버퍼의 IP 패킷 에러여부를 확인한 다음 상기 IP 패킷 및 상기 IP 패킷 정보를 상기 버퍼부에 저장하고, 상기 IP 패킷의 또 다른 정보를 하나의 키 값으로 형성하는 수신 모듈;
    을 포함하는 것을 특징으로 하는 ECMP구현 장치.
  3. 제 1항에 있어서, 처리부는
    상기 IP 패킷의 또다른 정보에 의하여 형성된 키 값을 저장하는 입력 큐;
    상기 키 값 및 상기 버퍼부로부터 상기 IP 헤더내 특정 필드를 추출하여 XOR 연산을 수행하는 포워딩 모듈;
    상기 포워딩 모듈에 의하여 선정된 출력포트를 일대일로 대응하는 출력큐;
    를 포함하는 것을 특징으로 하는 ECMP 구현 장치.
  4. 제 1항에 있어서, 버퍼부는
    상기 IP 패킷이 송신되는 출력포트의 정보를 저장하는 포트정보 버퍼;
    상기 IP 패킷 정보를 저장하는 패킷정보 버퍼;
    수신받은 IP 패킷과 유니캐스트 라우팅 결과에 의한 포워딩 라우트 트리 엔트리를 저장하는 패킷 버퍼;
    를 포함하는 것을 특징으로 하는 ECMP구현 장치.
  5. 제 1항에 있어서, 송신부는
    라운드 로빈 방식으로 다수의 출력 큐 중 하나의 큐에서 키를 추출하고 이를 바탕으로 유니캐스트 라우팅된 상기 IP 패킷의 소스 물리적 주소를 갱신한 후 상기 IP 패킷을 해당 송신 버퍼로 전송하며, 해당 IP 패킷의 패킷정보를 패킷정보 버퍼에서 제거하는 송신 모듈;
    상기 IP 패킷을 해당 출력포트를 통해 외부로 전송하기 전 임시 저장하는 송신 버퍼;
    를 포함하는 것을 특징으로 하는 ECMP구현 장치.
  6. 제 2 항에 있어서, IP 패킷에 대한 패킷 정보는 IP 헤더, 패킷의 타입, 입력포트, 유니캐스트 라우팅에 필요한 정보를 포함하는 것을 특징으로 하는 ECMP구현 장치.
  7. 제 2 항에 있어서, IP 패킷의 또 다른 정보는 상기 IP 패킷의 패킷 버퍼내의 위치, 상기 IP 패킷 정보의 패킷정보 버퍼내 위치를 연산을 통해 가리키는 피연산자, IP 패킷의 전체 길이를 포함하는 것을 특징으로 하는 ECMP구현 장치.
  8. 제 3 항에 있어서, IP 헤더내 특정 필드는 소스 IP 주소와 목적지 주소인 것을 특징으로 하는 ECMP구현 장치.
  9. 제 3 항에 있어서, 포워딩 모듈은 출력포트 장애 발생시 상기 XOR 연산을 수행하여 대체 출력포트를 선정하는 것을 특징으로 하는 ECMP구현 장치.
  10. 제 4 항에 있어서, 포트정보 버퍼는 송신되는 출력포트의 물리적 주소, 해당 출력포트에 할당된 출력 큐의 패킷정보 버퍼 내 주소, 해당 출력포트 상태, 최대 전송 단위정보 등을 해당 출력포트의 정보로 가지는 것을 특징으로 하는 ECMP구현 장치.
  11. 제 6 항에 있어서, 유니캐스트 라우팅에 필요한 정보는 포워딩 표와 포워딩 라우트 트리 엔트리인 것을 특징으로 하는 ECMP구현 장치.
  12. 제 11 항에 있어서, 포워딩 라우트 트리 엔트리는 유니캐스트 라우팅 결과값인 목적지 물리적 주소, 출력포트 수 그리고 출력포트 목록을 포함하는 것을 특징으로 하는 ECMP구현 장치.
KR1020040003448A 2004-01-16 2004-01-16 네트워크 프로세서에서의 ecmp 구현장치 KR100552518B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040003448A KR100552518B1 (ko) 2004-01-16 2004-01-16 네트워크 프로세서에서의 ecmp 구현장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040003448A KR100552518B1 (ko) 2004-01-16 2004-01-16 네트워크 프로세서에서의 ecmp 구현장치

Publications (2)

Publication Number Publication Date
KR20050075232A true KR20050075232A (ko) 2005-07-20
KR100552518B1 KR100552518B1 (ko) 2006-02-14

Family

ID=37263555

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040003448A KR100552518B1 (ko) 2004-01-16 2004-01-16 네트워크 프로세서에서의 ecmp 구현장치

Country Status (1)

Country Link
KR (1) KR100552518B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100748090B1 (ko) * 2005-12-07 2007-08-09 한국전자통신연구원 고속 라우터에서의 패킷 처리 장치 및 그 방법
US7729362B2 (en) 2005-12-07 2010-06-01 Electronics And Telecommunications Research Institute Method and apparatus for processing packet in high speed router
CN102035747A (zh) * 2010-12-27 2011-04-27 杭州华三通信技术有限公司 报文转发的方法及设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3805880B2 (ja) * 1997-12-25 2006-08-09 株式会社東芝 Atm中継装置
US6909713B2 (en) * 2001-09-05 2005-06-21 Intel Corporation Hash-based data frame distribution for web switches
KR100428767B1 (ko) * 2002-01-11 2004-04-28 삼성전자주식회사 트래픽 정보를 이용한 가입자 라우팅 설정 방법 및 이를위한 기록매체
JP2003338835A (ja) * 2002-05-20 2003-11-28 Fujitsu Ltd パケットスイッチ及び方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100748090B1 (ko) * 2005-12-07 2007-08-09 한국전자통신연구원 고속 라우터에서의 패킷 처리 장치 및 그 방법
US7729362B2 (en) 2005-12-07 2010-06-01 Electronics And Telecommunications Research Institute Method and apparatus for processing packet in high speed router
CN102035747A (zh) * 2010-12-27 2011-04-27 杭州华三通信技术有限公司 报文转发的方法及设备

Also Published As

Publication number Publication date
KR100552518B1 (ko) 2006-02-14

Similar Documents

Publication Publication Date Title
US5361256A (en) Inter-domain multicast routing
US7660314B2 (en) Apparatus and method for multi-protocol route redistribution in a massively parallel router
US8824334B2 (en) Dynamic shared risk node group (SRNG) membership discovery
US9043487B2 (en) Dynamically configuring and verifying routing information of broadcast networks using link state protocols in a computer network
US8879569B2 (en) Virtual network connection method, network system, and network device
US20120163164A1 (en) Method and system for remote load balancing in high-availability networks
US20070008949A1 (en) Method for automatic route aggregation in a communication system
US7535914B2 (en) Communications network
JP6954295B2 (ja) 通信システム、エッジノード、通信方法及びプログラム
KR100552518B1 (ko) 네트워크 프로세서에서의 ecmp 구현장치
EP2517422A1 (en) Grid routing apparatus and method
Cisco IP Routing Protocols Commands
Cisco IP Routing Protocols Commands
Cisco IP Routing Protocols Commands
Cisco IP Routing Protocols Commands
Cisco IP Routing Protocols Commands
Cisco IP Routing Protocols Commands
Cisco IP Routing Commands
Cisco Configuring Networking Protocols
Cisco IP Routing Protocols Commands
Cisco IP Routing Protocols Commands
Cisco IP Routing Protocols Commands
Cisco IP Routing Protocols Commands
Cisco IP Routing Protocols Commands
Cisco Configuring Networking Protocols

Legal Events

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

Payment date: 20130130

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140128

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee