KR20040062343A - 분산형 라우터 및 그 분산형 라우터의 에이알피 패킷 처리방법 - Google Patents

분산형 라우터 및 그 분산형 라우터의 에이알피 패킷 처리방법 Download PDF

Info

Publication number
KR20040062343A
KR20040062343A KR1020030000152A KR20030000152A KR20040062343A KR 20040062343 A KR20040062343 A KR 20040062343A KR 1020030000152 A KR1020030000152 A KR 1020030000152A KR 20030000152 A KR20030000152 A KR 20030000152A KR 20040062343 A KR20040062343 A KR 20040062343A
Authority
KR
South Korea
Prior art keywords
arp
packet
forwarding
forwarding table
host processor
Prior art date
Application number
KR1020030000152A
Other languages
English (en)
Other versions
KR100475436B1 (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 KR10-2003-0000152A priority Critical patent/KR100475436B1/ko
Publication of KR20040062343A publication Critical patent/KR20040062343A/ko
Application granted granted Critical
Publication of KR100475436B1 publication Critical patent/KR100475436B1/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/44Distributed 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/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses

Landscapes

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

Abstract

본 발명에 따른 ARP 패킷 처리 분산형 라우터는, 포워딩 테이블 및 ARP 테이블을 구비하고, 임의의 이더넷 인터페이스에 연결되어, 임의의 ARP 패킷이 수신되는 경우, 포워딩 테이블 및 ARP 테이블을 참조하여 해당 목적지 주소로 해당 패킷을 포워딩하는 네트워크 프로세서와, 네트워크 프로세서와 통신을 수행하여 라우팅 기능을 수행하는 호스트 프로세서를 포함하여 구성하되, 네트워크 프로세서는, 임의의 ARP 패킷이 수신되면, 포워딩 테이블 및 ARP 테이블을 검색하여 해당 ARP 패킷에 대한 정보가 존재하지 않는 경우, 해당 ARP 패킷에 포함된 정보로 포워팅 테이블 및 ARP 테이블을 업데이트시키고, 해당 ARP 패킷이 ARP 응답 패킷인 경우에만, 해당 ARP 패킷을 호스트 프로세서로 전송하여 호스트 프로세서의 라우팅 정보를 업데이트시킴으로써, 종래의 라우터 구조에서 ARP 패킷들과 룩업 페일드 패킷들이 호스트 프로세서에게 전달됨으로 인해 네크워크 프로세서와 호스트 프로세서 사이의 인터페이스에서 발생되는 오버헤드를 최소화시킬 수 있는 장점이 있다.

Description

분산형 라우터 및 그 분산형 라우터의 에이알피 패킷 처리 방법{distributed router and ARP packet processing method thereof}
본 발명은 분산형 라우터 및 그 분산형 라우터의 주소 결정 프로토콜 패킷 처리 방법에 관한 것이다.
일반적으로, 인터넷을 이용하여 임의의 데이터 패킷을 목적지 망까지 전달하는 인터넷 서비스를 제공하기 위해서는 망의 토폴로지와 망 상황에 대한 정보 즉, 라우팅 정보가 필요한데, 이러한 라우팅 정보는 라우팅 프로토콜에 의해 제공된다.
라우팅 프로토콜의 종류를 살펴보면, IP 네트웍 상에서 IP 주소를 물리적 네트웍 주소로 대응시키기 위해 사용되는 주소 결정 프로토콜(Address Resolution Protocol: 이하, ARP라 함)과, 인접하고 있는 라우터와 라우팅 정보를 주기적으로 교환하여 라우팅하며, 거리값 테이블(Distance vector table)을 이용해 최적의 경로를 결정하고 매 30초마다 라우팅 정보를 갱신하는 RIP(Routing Information Protocol) 프로토콜과, 실제 라우팅 정보의 변경이 있을 때에만 해당되는 라우팅 정보를 갱신하는 OSPF(Open Shortest Path First) 프로토콜 등이 있다.
한편, 분산 라우터 구조는 기능적으로 독립된 복수개의 라우터들이 하나의 통합된 IP 라우터 시스템을 형성하는 구조로서, 중앙 집중형 라우터 구조에 비하여 확장성이 뛰어난 구조이다.
이와 같은 구조의 시스템에서는 각 내부 라우터(internal router)들 내에 네트워크 프로세서(network processor)와 호스트 프로세서(host processor)를 함께 구현함으로써 라우팅 프로토콜 기능과 IP 포워딩(forwarding) 기능을 분리시키고있다.
이러한 구조의 시스템이 이더넷(ethernet interface)에 연결되어 있는 경우, 네트워크 프로세서가 패킷 포워딩을 위해 목적지 맥 어드레스(destination MAC address)를 알아야 하며, 이러한 용도로 MAC 어드레스들을 관리하기 위하여 ARP가 사용된다.
ARP는 IP 네트웍 상에서 IP 주소를 물리적 네트웍 주소로 대응시키기 위해 사용되는 프로토콜이다. 여기서 물리적 네트웍 주소라 함은 이더넷 또는 토큰링의 48 bits 네트웍 카드 주소를 의미한다.
예를 들어, IP 호스트 A가 IP 호스트 B에게 IP 패킷을 전송고자 할 때 IP 호스트 B의 물리적 네트웍 주소를 모르는 경우, ARP 프로토콜을 사용하여 목적지 IP 주소 B와 브로드 캐스팅 물리적 네트웍 주소 FFFFFFFFFFFF를 가지는 ARP 패킷을 네트웍 상에 전송한다. IP호스트 B는 자신의 IP 주소가 목적지에 있는 ARP 패킷을 수신하면 자신의 물리적 네트웍 주소를 A에게 응답한다.
이와 같은 방식으로 수집된 IP 주소와 이에 해당하는 물리적 네트웍 주소 정보는 각 IP 호스트의 ARP 캐시라 불리는 메모리에 테이블 형태로 저장된 후 다음 패킷 전송시에 다시 사용된다. ARP와는 역으로, IP 호스트가 자신의 물리 네트웍 주소는 알지만 IP 주소를 모르는 경우, 서버로부터 IP주소를 요청하기 위해서는 RARP(ReverseARP)를 사용한다.
도 1은 종래의 분산 라우터 구조 시스템에서 내부 라우터의 구성 블록도이다. 도 1을 참조하면, 종래의 라우터(10)에서는 마이크로 엔진(12b)으로 들어온 모든 ARP 패킷들이 호스트 프로세서(11)내의 ARP 운용 모듈(operating module)(11b)에 전달되어, 그 내부의 ARP 스택에 의해 처리가 된다. 이때, 포워딩 테이블(12c)에 MAC 어드레스들을 적절하게 업데이트하기 위해서 네트워크 프로세서(12)내의 네트워크 프로세서 어플리케이션 모듈(12a)에서 통과하는 ARP 패킷들의 정보를 참조해서 적절하게 포워딩 테이블(12c)을 업데이트한다.
ARP 패킷들이 호스트 프로세서(11)에 전달되어야 하는 이유는 호스트 프로세서(11)내에서 동작하고 있는 라우팅 프로토콜 데몬 모듈(Routing protocol daemon module)(11a)들이 이더넷으로 연결되어 있는 다른 라우터내의 라우팅 프로토콜 데몬들과 라우팅 정보를 주고 받아야 할 경우에 사용이 되기 때문이다.
한편, 이러한 종래의 분산 라우터 시스템에서는 룩업 페일드 패킷(lookup failed packet)의 처리를 호스트 프로세서(11)의 ARP 운용 모듈(11b)에서 담당한다.
룩업 페일드 패킷은 마이크로 엔진(12b)이 입력된 IP 패킷을 포워딩하기 위해서 포워딩 테이블(12c)을 검색한 결과, 출력 포트를 찾는데 실패하였거나, 해당 목적지(destination)의 MAC 어드레스를 찾는데 실패한 패킷을 말한다.
즉, 룩업 페일드 패킷을 호스트 프로세서(11)에 전달하게 되면 호스트 프로세서(11)내의 IP 스택에서 이 패킷을 포워딩하기 위해서 다시 라우팅 테이블을 검색하게 된다.
그러나, 호스트 프로세서(11)내의 라우팅 테이블과 네트워크 프로세서(12)내의 포워딩 테이블(12c)은 항상 동일한 정보를 유지하고 있음에 따라, 이때도 룩업에 실패하게 됨으로 적절한 ICMP(Internet Control Message Protocol) 에러 패킷을 생성하여 이 패킷을 보낸 호스트나 라우터에게 전달하게 된다.
상술한 바와 같은 종래의 분산 라우터 구조의 시스템에서는 입력되는 모든 ARP 패킷들과 룩업 페일드 패킷들이 호스트 프로세서(11)에게 전달이 되므로 네트워크 프로세서(12)와 호스트 프로세서(11)사이의 인터페이스의 성능이 떨어지게 된다.
따라서 호스트 프로세서(11)가 네트워크 프로세서(12)의 포워딩 테이블(12c)을 업데이트하는 효율이 나빠지게 됨으로, 이러한 경우, 마이크로 엔진(12b)이 IP 패킷들을 정상적으로 포워딩하지 못하게 되는 문제점이 있다.
본 발명은 이러한 종래의 문제점을 해결하기 위하여 안출된 것으로, 분산 라우터 구조 시스템에서 효율적으로 ARP 패킷들을 처리하고, IP 포워딩에 실패한 패킷들에 대하여 정상적으로 IP 패킷 포워딩을 할 수 있도록 하는 분산형 라우터 및 그 분산형 라우터의 ARP 패킷 처리 방법을 제공하는데 그 목적이 있다.
도 1은 종래의 분산 라우터 시스템의 내부 라우터 구성 블록도.
도 2는 본 발명에 따른 분산 라우터 시스템의 내부 라우터 구성 블록도.
도 3은 본 발명에 따른 분산 라우터에서 ARP 패킷들을 처리하는 과정을 보여주는 흐름도.
도 4는 본 발명에 따른 분산 라우터에서 룩업 페일드 패킷을 처리하는 과정을 나타내는 흐름도.
<도면의 주요부분에 대한 부호의 설명>
100 : 분산형 라우터 110 : 호스트 프로세서
111 : 라우팅 프로토콜 데몬 모듈 112 : ARP 운용모듈
120 : 네트워크 프로세서 121 : 마이크로 엔진
122 : 룩업 페일드 패킷 관리자 123 : ARP 테이블 관리자
124 : 포워딩 테이블 관리자 125 : 포워딩 테이블
이러한 목적을 달성하기 위한 본 발명의 일측면에 따르면, 포워딩 테이블 및 ARP 테이블을 구비하고, 임의의 이더넷 인터페이스에 연결되어, 임의의 ARP 패킷이 수신되는 경우, 포워딩 테이블 및 ARP 테이블을 참조하여 해당 목적지 주소로 해당패킷을 포워딩하는 네트워크 프로세서와, 네트워크 프로세서와 통신을 수행하여 라우팅 기능을 수행하는 호스트 프로세서를 포함하여 구성하되, 네트워크 프로세서는, 임의의 ARP 패킷이 수신되면, 포워딩 테이블 및 ARP 테이블을 검색하여 해당 ARP 패킷에 대한 정보가 존재하지 않는 경우, 해당 ARP 패킷에 포함된 정보로 포워팅 테이블 및 ARP 테이블을 업데이트시키고, 해당 ARP 패킷이 ARP 응답 패킷인 경우에만, 해당 ARP 패킷을 호스트 프로세서로 전송하여 호스트 프로세서의 라우팅 정보를 업데이트시키는 ARP 패킷 처리 분산형 라우터를 제공한다.
또한, 본 발명의 다른 측면에 따르면, 포워딩 테이블 및 ARP 테이블을 구비하고, 임의의 이더넷 인터페이스에 연결되어, 임의의 ARP 패킷이 수신되는 경우, 포워딩 테이블 및 ARP 테이블을 참조하여 해당 목적지 주소로 해당 패킷을 포워딩하는 네트워크 프로세서와, 네트워크 프로세서와 통신을 수행하여 라우팅 기능을 수행하는 호스트 프로세서를 포함하여 구성되는 분산형 라우터에서 임의의 ARP 패킷을 처리하는 방법에 있어서, 네트워크 프로세서에 임의의 ARP 패킷이 수신되면, 포워딩 테이블 및 ARP 테이블을 검색하는 단계와, 검색결과, 포워딩 테이블 및 ARP 테이블에 해당 ARP 패킷에 대한 정보가 존재하지 않는 경우, 해당 ARP 패킷에 포함된 정보로 포워팅 테이블 및 ARP 테이블을 업데이트시키는 단계와, 해당 ARP 패킷이 ARP 응답 패킷인지 여부를 판단하여, ARP 응답 패킷인 경우, 해당 ARP 패킷을 호스트 프로세서로 전송하여 호스트 프로세서의 라우팅 정보를 업데이트시키는 단계를 수행하는 분산형 라우터의 ARP 패킷 처리 방법을 제공한다.
이하, 첨부된 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.
도 2는 본 발명의 일실시예에 따른 분산형 라우터의 구성블록도이다.
도 2를 참조하면, 본 발명에 따른 분산형 라우터는 크게 포워딩 테이블(125) 및 ARP 테이블(126)을 구비하고, 임의의 이더넷 인터페이스에 연결되어, 임의의 ARP 패킷이 수신되는 경우, 포워딩 테이블(125) 및 ARP 테이블(126)을 참조하여 해당 목적지 주소로 해당 패킷을 포워딩하는 네트워크 프로세서(120)와, 네트워크 프로세서(120)와 통신을 수행하여 라우팅 기능을 수행하는 호스트 프로세서(110)를 포함하여 이루어진다.
네트워크 프로세서(120)는, 임의의 ARP 패킷이 수신되면, 포워딩 테이블(125) 및 ARP 테이블(126)을 검색하여 해당 ARP 패킷에 대한 정보가 존재하지 않는 경우, 해당 ARP 패킷에 포함된 정보로 포워팅 테이블(125) 및 ARP 테이블(126)을 업데이트시키고, 해당 ARP 패킷이 ARP 응답 패킷인 경우에만, 해당 ARP 패킷을 호스트 프로세서(110)로 전송하여 호스트 프로세서(110)의 라우팅 정보를 업데이트시킨다.
본 발명에 의한 네트워크 프로세서(120)는 마이크로 엔진(121)과, 룩업 페일드 패킷 관리자(122)와, ARP 테이블 관리자(123)와, 포워딩 테이블 관리자(124)를 포함하여 구성되며, 포워딩 테이블(125)과 ARP 테이블(126)을 구비한다.
마이크로 엔진(121)은, 임의의 ARP 패킷이 수신되는 경우, 포워딩 테이블(125) 및 ARP 테이블(126)을 참조하여 포워딩을 수행하고, 룩업 페일 패킷이 발생하는 경우, 해당 패킷에 룩업 페일이 발생한 이유를 표시하여 룩업 페일드 패킷 관리자(122)에 전송한다.
룩업 페일드 패킷 관리자(122)는 마이크로 엔진(121)에 의해 표시된 룩업 페일이 발생된 이유에 상응한 ICMP 에러 메시지를 생성하여 마이크로 엔진(121)에 전송한다.
즉, 마이크로 엔진(121)로부터 전달되는 룩업 페일드 패킷정보에는 이 패킷이 룩업에 실패한 이유가 표시되어 전달된다. 이에 따라 룩업 페일드 패킷 관리자(122)는 마이크로 엔진(121)이 표시한 내용에 따라 적절한 ICMP 에러 패킷들을 생성하여 마이크로 엔진(121)에 전달한다. 아울러, 룩업 페일드 패킷의 경우, 호스트 프로세서(110)에 전달하지 않는다. 이에 따라, 종래의 경우, 룩업 페일드 패킷을 호스트 프로세서에 전송함으로 인해 발생되던 프로세싱의 효율이 떨어지는 것을 해결할 수 있게 된다.
ARP 테이블 관리자(123)는 마이크로 엔진(121)을 통해 입력된 패킷에 따라 ARP 테이블(126)을 관리한다. 이때, ARP 테이블(126)에 저장되는 정보는, IP 주소, MAC 주소, 시간 관련정보들이 포함된다.
즉, 마이크로 엔진(121)을 통해 입력되는 ARP 패킷들이 ARP 테이블 관리자(123)에 전달되면, ARP 테이블 관리부(123)는 입력된 패킷(ARP request/reply)내의 소스 IP 어드레스(source IP address)와 MAC 어드레스 정보를 ARP 테이블(126)에 저장을 한다. 아울러, ARP 테이블 관리자(123)는 일반적인 ARP 처리 기능(RFC 826)을 수행하게 된다. 이에 따라, 마이크로 엔진(121)은 패킷을 포워딩할 때에 포워딩 테이블(125)과 함께 이 ARP 테이블도 참조를 하게 된다.
아울러, ARP 테이블 관리자(123)는 입력된 패킷이 ARP 응답 패킷인지 여부를판단하여 ARP 패킷인 경우에만, 해당 패킷을 호스트 프로세서(110)에 이 패킷을 전달한다. ARP 응답 패킷인 경우에 호스트 프로세서(110)에 해당 패킷을 전달하는 것은, 해당 패킷이 호스트 프로세서(110)가 보낸 ARP 요청 패킷에 대한 ARP 응답 패킷일 수도 있기 때문이다.
포워딩 테이블 관리자(124)는 마이크로 엔진(121)을 통해 입력된 패킷에서 해당 해당 패킷의 목적지 IP 주소, IP 서브넷 마스크 주소, 다음 홉 IP 주소(next hope IP address), 출력 포트정보들을 저장시키고, 새로운 패킷이 수신될 때마다 그에 따라 포워딩 테이블(125)을 업데이트시킨다.
포워딩 테이블(125)은 포워딩 테이블 관리자(124)의 제어를 받아 임의의 패킷에 대하여 해당 패킷의 목적지 IP 주소, IP 서브넷 마스크 주소, 다음 홉 IP 주소, 출력 포트정보들을 저장하게 된다. 포워딩 테이블(125)에 저장된 이러한 정보들은 마이크로 엔진(121)에서 패킷의 포워딩을 위해 참조용으로 사용된다.
ARP 테이블(126)은 ARP 테이블 관리자(123)의 제어를 받아 임의의 패킷에 대하여 IP 주소, MAC 주소, 시간 관련정보들을 저장하게 된다. ARP 테이블(126)에 저장된 이러한 정보들은 마이크로 엔진(121)에서 ARP 패킷의 처리를 위해 사용된다.
도 3은 본 발명에 따른 분산 라우터에서 ARP 패킷들을 처리하는 과정을 보여주는 흐름도이다.
도 3을 참조하면, 마이크로 엔진(121)에 임의의 ARP 패킷들이 수신되면, 마이크로 엔진(121)은 수신된 패킷을 ARP 테이블 관리자(123)와 포워딩 테이블 관리자(124)에게 전송하여 해당 패킷을 포워딩 테이블(125) 및 ARP 테이블(126)에서 검색한다(S1). 검색결과 포워딩 테이블(125) 및 ARP 테이블(126)에 관련 정보가 있는 경우에는 마이크로 엔진(121)은 포워딩 테이블(125) 및 ARP 테이블(126)의 정보를 참조하여 포워딩을 수행한다(S12).
한편, 포워딩 테이블(125) 및 ARP 테이블(126)에 해당 패킷에 대한 관련정보가 없는 경우, 포워딩 테이블 관리자(124)는 해당 패킷에 포함된 정보로 포워딩 테이블(125)을 업데이트하고, ARP 테이블 관리자(123)는 ARP 테이블(126)을 업데이트한다(S4).
즉, ARP 테이블 관리부(123)는 입력된 패킷(ARP request/reply)내의 소스 IP 어드레스(source IP address)와 MAC 어드레스 정보를 ARP 테이블(126)에 저장을 한다. 포워딩 테이블 관리자(124)는 해당 패킷의 목적지 IP 주소, IP 서브넷 마스크 주소, 다음 홉 IP 주소, 출력 포트정보들을 포워딩 테이블(125)에 저장한다.
다음으로, ARP 테이블 관리자(123)에서는 입력된 패킷이 ARP 응답 패킷인지 여부를 판단한다(S5). 만일, 수신된 패킷이 ARP 패킷이 ARP 응답 패킷인 경우에는 해당 패킷을 호스트 프로세서(110)에 패킷을 전송하고(S6), ARP 응답 패킷이 아닌 경우에는 호스트 프로세서(110)에 전달하지 않는다.
도 4는 본 발명에 따른 분산 라우터에서 룩업 페일드 패킷을 처리하는 과정을 나타내는 흐름도이다.
도 4를 참조하면, 마이크로 엔진(121)에서는 룩업 페일드 패킷이 발생했는지 여부를 판단하여(S11) 임의의 룩업 페일드 패킷이 발생한 경우에는 룩업에 실패한이유를 해당 패킷에 표시하여 룩업 페일드 패킷 관리자(122)에 전송한다(S12).
룩업 페일드 패킷 관리자(122)에서는 마이크로 엔진(121)에 의해 패킷에 표시된 룩업에 실패한 이유에 상응하는 ICMP 에러 메시지 패킷을 생성하여 마이크로 엔진(121)에 전송하여 룩업 페일드 패킷에 대한 처리를 호스트 프로세서(110)에 전송하지 않고 네트워크 프로세서(120)내에서 처리될 수 있도록 한다.
본 발명에 의하면, 종래의 라우터 구조에서 ARP 패킷들과 룩업 페일드 패킷들이 호스트 프로세서에게 전달됨으로 인해 네크워크 프로세서와 호스트 프로세서 사이의 인터페이스에서 발생되던 오버헤드(overhead)의 문제점을 최소화할 수 있다.
즉, 네트워크 프로세서가 호스트 프로세서에 모든 ARP 패킷을 전송하는 것이 아니라, ARP 응답 패킷의 경우에만 호스트 프로세서에 전송하고, 기타 다른 패킷에 대하여는 네트워크 프로세서 내에서 처리되도록 함으로써, 호스트 프로세서와 네트워크 프로세서간의 인터페이스에 걸리는 로드가 줄어듦에 따라 라우터에 구현된 네크워크 프로세서내의 포워딩 테이블 업데이트 속도를 높일 수 있다.

Claims (6)

  1. 포워딩 테이블 및 ARP 테이블을 구비하고, 임의의 이더넷 인터페이스에 연결되어, 임의의 ARP 패킷이 수신되는 경우, 상기 포워딩 테이블 및 ARP 테이블을 참조하여 해당 목적지 주소로 해당 패킷을 포워딩하는 네트워크 프로세서와,
    상기 네트워크 프로세서와 통신을 수행하여 라우팅 기능을 수행하는 호스트 프로세서를 포함하여 구성하되,
    상기 네트워크 프로세서는, 임의의 ARP 패킷이 수신되면, 상기 포워딩 테이블 및 ARP 테이블을 검색하여 해당 ARP 패킷에 대한 정보가 존재하지 않는 경우, 해당 ARP 패킷에 포함된 정보로 상기 포워팅 테이블 및 ARP 테이블을 업데이트시키고, 해당 ARP 패킷이 ARP 응답 패킷인 경우에만, 해당 ARP 패킷을 상기 호스트 프로세서로 전송하여 상기 호스트 프로세서의 라우팅 정보를 업데이트시키는 ARP 패킷 처리 분산형 라우터.
  2. 제 1항에 있어서, 상기 네트워크 프로세서는,
    임의의 ARP 패킷이 수신되는 경우, 상기 포워딩 테이블 및 ARP 테이블을 참조하여 포워딩을 수행하고, 룩업 페일 패킷이 발생하는 경우, 해당 패킷에 룩업 페일이 발생한 이유를 표시하는 마이크로 엔진과,
    상기 마이크로 엔진을 통해 입력된 패킷에 따라 상기 포워딩 테이블 정보를관리하는 포워딩 테이블 관리자와,
    상기 마이크로 엔진을 통해 입력된 패킷에 따라 상기 ARP 테이블 정보를 관리하고, 입력된 패킷이 ARP 응답 패킷인 경우에만, 해당 패킷을 상기 호스트 프로세서에 전송하는 ARP 테이블 관리자와,
    상기 마이크로 엔진에 의해 표시된 룩업 페일이 발생된 이유에 상응한 ICMP 에러 메시지를 생성하여 상기 ARP 테이블에 저장하는 룩업 페일드 패킷 관리자를 포함하는 ARP 패킷 처리 분산형 라우터.
  3. 제 2항에 있어서, 상기 포워딩 테이블은,
    목적지 IP 주소, IP 서브넷 마스크 주소, 다음 홉 IP 주소, 출력 포트정보를 포함하는 ARP 패킷 처리 분산형 라우터.
  4. 제 2항에 있어서, 상기 ARP 테이블은,
    IP 주소, MAC 주소, 시간 관련정보를 저장하는 ARP 패킷 처리 분산형 라우터.
  5. 포워딩 테이블 및 ARP 테이블을 구비하고, 임의의 이더넷 인터페이스에 연결되어, 임의의 ARP 패킷이 수신되는 경우, 상기 포워딩 테이블 및 ARP 테이블을 참조하여 해당 목적지 주소로 해당 패킷을 포워딩하는 네트워크 프로세서와, 상기 네트워크 프로세서와 통신을 수행하여 라우팅 기능을 수행하는 호스트 프로세서를 포함하여 구성되는 분산형 라우터에서 임의의 ARP 패킷을 처리하는 방법에 있어서,
    상기 네트워크 프로세서에 임의의 ARP 패킷이 수신되면, 상기 포워딩 테이블 및 ARP 테이블을 검색하는 단계와,
    검색결과, 포워딩 테이블 및 ARP 테이블에 해당 ARP 패킷에 대한 정보가 존재하지 않는 경우, 해당 ARP 패킷에 포함된 정보로 상기 포워팅 테이블 및 ARP 테이블을 업데이트시키는 단계와,
    해당 ARP 패킷이 ARP 응답 패킷인지 여부를 판단하여, ARP 응답 패킷인 경우, 해당 ARP 패킷을 상기 호스트 프로세서로 전송하여 상기 호스트 프로세서의 라우팅 정보를 업데이트시키는 단계를 수행하는 분산형 라우터의 ARP 패킷 처리 방법.
  6. 제 5항에 있어서, 상기 네트워크 프로세서에서 룩업 페일 패킷이 발생하는 경우, 해당 패킷에 룩업 페일이 발생한 이유를 표시하고, 그에 따라 ICMP 에러 패킷을 생성하는 단계를 더 수행하는 것을 특징으로 하는 분산형 라우터의 ARP 패킷 처리 방법.
KR10-2003-0000152A 2003-01-02 2003-01-02 분산형 라우터 및 그 분산형 라우터의 에이알피 패킷 처리방법 KR100475436B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2003-0000152A KR100475436B1 (ko) 2003-01-02 2003-01-02 분산형 라우터 및 그 분산형 라우터의 에이알피 패킷 처리방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2003-0000152A KR100475436B1 (ko) 2003-01-02 2003-01-02 분산형 라우터 및 그 분산형 라우터의 에이알피 패킷 처리방법

Publications (2)

Publication Number Publication Date
KR20040062343A true KR20040062343A (ko) 2004-07-07
KR100475436B1 KR100475436B1 (ko) 2005-03-10

Family

ID=37353746

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2003-0000152A KR100475436B1 (ko) 2003-01-02 2003-01-02 분산형 라우터 및 그 분산형 라우터의 에이알피 패킷 처리방법

Country Status (1)

Country Link
KR (1) KR100475436B1 (ko)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100550012B1 (ko) * 2003-11-28 2006-02-08 한국전자통신연구원 고속의 패킷 포워딩을 위한 주소 번역 프로토콜 테이블관리방법 및 관리장치
KR100705565B1 (ko) * 2004-12-22 2007-04-10 삼성전자주식회사 패킷 포워딩을 위한 mac 주소 관리 장치 및 그 방법
KR100823135B1 (ko) * 2007-03-13 2008-04-21 삼성전자주식회사 효율적 arp 요청을 수행하는 라우팅 제어 장치 및 그방법
KR100827143B1 (ko) * 2007-01-16 2008-05-06 삼성전자주식회사 패킷 스위치 장비 및 그 방법
KR100938003B1 (ko) * 2003-03-19 2010-01-21 삼성전자주식회사 다중 프로토콜 레이블 스위칭 라우터의 라우팅 정보 관리방법 및 그 장치
US7729362B2 (en) 2005-12-07 2010-06-01 Electronics And Telecommunications Research Institute Method and apparatus for processing packet in high speed router
CN102081603A (zh) * 2009-11-27 2011-06-01 上海博达数据通信有限公司 一种在多核环境下的arp查询优化的方法
US9432213B2 (en) 2007-12-31 2016-08-30 Rpx Clearinghouse Llc IP forwarding across a link state protocol controlled ethernet network

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100938003B1 (ko) * 2003-03-19 2010-01-21 삼성전자주식회사 다중 프로토콜 레이블 스위칭 라우터의 라우팅 정보 관리방법 및 그 장치
KR100550012B1 (ko) * 2003-11-28 2006-02-08 한국전자통신연구원 고속의 패킷 포워딩을 위한 주소 번역 프로토콜 테이블관리방법 및 관리장치
KR100705565B1 (ko) * 2004-12-22 2007-04-10 삼성전자주식회사 패킷 포워딩을 위한 mac 주소 관리 장치 및 그 방법
US7729362B2 (en) 2005-12-07 2010-06-01 Electronics And Telecommunications Research Institute Method and apparatus for processing packet in high speed router
KR100827143B1 (ko) * 2007-01-16 2008-05-06 삼성전자주식회사 패킷 스위치 장비 및 그 방법
KR100823135B1 (ko) * 2007-03-13 2008-04-21 삼성전자주식회사 효율적 arp 요청을 수행하는 라우팅 제어 장치 및 그방법
US9432213B2 (en) 2007-12-31 2016-08-30 Rpx Clearinghouse Llc IP forwarding across a link state protocol controlled ethernet network
CN102081603A (zh) * 2009-11-27 2011-06-01 上海博达数据通信有限公司 一种在多核环境下的arp查询优化的方法

Also Published As

Publication number Publication date
KR100475436B1 (ko) 2005-03-10

Similar Documents

Publication Publication Date Title
US10833986B2 (en) Service function chaining SFC-based packet forwarding method, apparatus, and system
US7817637B2 (en) Network switching system
US7852774B2 (en) User datagram protocol traceroute probe extension
US9923812B2 (en) Triple-tier anycast addressing
US7894456B2 (en) Routing data packets from a multihomed host
EP2514152B1 (en) Distributed routing architecture
JP5416596B2 (ja) ネットワーク中継装置、ネットワークシステム、それらの制御方法
US9054956B2 (en) Routing protocols for accommodating nodes with redundant routing facilities
US7260096B2 (en) Method and router for forwarding internet data packets
US8155131B2 (en) Method, system and router for communication between IP devices
EP2127277B1 (en) Methods, systems, and computer program products for source-aware ip routing at a media gateway
US9178818B2 (en) Communication apparatus
EP3094052B1 (en) Method and device for forwarding information
US20020023152A1 (en) Communication data relay system
US10382329B1 (en) Source MAC access controls in a virtual redundant router protocol environment
WO2012090351A1 (en) Mapping server, network system, packet forwarding method and program
JP2000295291A (ja) データ伝送システム
US8811158B1 (en) Fast reroute for common network routes
KR100475436B1 (ko) 분산형 라우터 및 그 분산형 라우터의 에이알피 패킷 처리방법
US10887227B2 (en) Methods and apparatuses for routing data packets in a network topology
US11924103B2 (en) Traffic processing method, apparatus, and network device
Cisco Novell IPX Commands
WO2000044139A1 (en) Booster for rapid network acceleration
KR100560753B1 (ko) 분산 구조 라우터의 라우터 정보 관리 방법 및 그 장치
US10715440B1 (en) Distributed next hop resolution

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: 9

FPAY Annual fee payment

Payment date: 20140128

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20150129

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20160128

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee