KR20050066866A - 인터넷 프로토콜 패킷 룩업 방법 - Google Patents

인터넷 프로토콜 패킷 룩업 방법 Download PDF

Info

Publication number
KR20050066866A
KR20050066866A KR1020030098350A KR20030098350A KR20050066866A KR 20050066866 A KR20050066866 A KR 20050066866A KR 1020030098350 A KR1020030098350 A KR 1020030098350A KR 20030098350 A KR20030098350 A KR 20030098350A KR 20050066866 A KR20050066866 A KR 20050066866A
Authority
KR
South Korea
Prior art keywords
packet
lookup
bit
cam
information
Prior art date
Application number
KR1020030098350A
Other languages
English (en)
Other versions
KR100572693B1 (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 KR1020030098350A priority Critical patent/KR100572693B1/ko
Publication of KR20050066866A publication Critical patent/KR20050066866A/ko
Application granted granted Critical
Publication of KR100572693B1 publication Critical patent/KR100572693B1/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/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • H04L45/74591Address table lookup; Address filtering using content-addressable memories [CAM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables

Landscapes

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

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은 인터넷 프로토콜 패킷 룩업 방법에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은, IPv6 패킷을 처리하는 노드의 128비트 길이의 로컬 인터페이스 프리픽스 엔트리 정보만을 저장하는 작은 크기의 CAM과 64비트 이하의 네트워크 프리픽스 엔트리 정보를 저장하는 다단계로 구성되는 포워딩 테이블들을 이용하여 IPv6 패킷을 이용하여 통신을 하는 모든 네트워크 상의 노드에서 인입되는 IPv6 패킷을 최소 시간 내에 해당 목적지로 전송하기 위해 필요한 IPv6 인터넷 프로토콜 패킷 룩업 방법을 제공하고자 함.
3. 발명의 해결방법의 요지
본 발명은, 패킷 수신기로부터 패킷을 수신하여 헤더 정보를 추출하고, 추출된 헤더 정보에서 목적지 주소를 추출하여 CAM(Content Addressable Memory)에서 룩업을 수행하는 CAM 룩업단계; 상기 CAM 룩업단계에서 룩업 매칭이 발생하였는지를 확인하는 CAM 룩업 확인단계; 상기 확인단계 결과, 매칭이 된 경우는 중앙 제어기로 패킷을 전달하고, 매칭이 되지 않을 경우는 상기 CAM에 저장된 인덱스를 이용하여 멀티비트-트라이 테이블 위치를 파악하여 멀티비트-트라이 테이블을 이용하여 룩업을 수행하는 멀티비트-트라이 테이블 룩업단계; 상기 멀티비트-트라이 테이블 룩업단계에서 매칭이 발생하는지를 확인하는 멀티비트-트라이 테이블 룩업 확인단계; 및 상기 멀티비트-트라이 테이블 룩업 확인단계에서, 매칭이 발생하면 외부 네트워크로 전송해야할 패킷이므로 패킷 송신기로 패킷을 전달하고, 매칭이 발생하지 않으면 패킷을 폐기하거나 디폴트 루트로 패킷을 전송하는 패킷 처리단계를 포함함.
4. 발명의 중요한 용도
본 발명은, 네트워크 시스템 등에 이용됨.

Description

인터넷 프로토콜 패킷 룩업 방법{Method for Internet Protocol Packet Lookup}
본 발명은 IPv6(Internet Protocol version 6) 패킷을 이용하여 통신을 하는 모든 네트워크 상의 노드에서 인입된 IPv6 패킷을 최소 시간 내에 해당 목적지로 전송하기 위해 필요한 IPv6 인터넷 프로토콜 패킷 룩업 방법에 관한 것으로, 더욱 상세하게는 IPv6 패킷을 처리하는 노드로 인입되는 최대 128비트 가변 길이의 프리픽스를 가지는 IPv6 패킷을 프리픽스가 128비트인 로컬 인터페이스 IPv6 어드레스 CAM(Content Addressable Memory : 이하, "CAM"라 함)에 저장된 포워딩 엔트리와 먼저 비교하여 일치하는 포워딩 엔트리가 존재하면 로컬 어드레스이므로 현재 노드에서 이 패킷을 처리하고, 존재하지 않으면 멀티비트-트라이(Multibit-Trie)를 이용하는 다단계 포워딩 테이블에서 인입된 IPv6 패킷 프리픽스와 일치하는 포워딩 엔트리를 룩업하여 최소의 시간 내에 128비트의 IPv6 프리픽스를 룩업할 수 있는 인터넷 프로토콜 패킷 룩업 방법에 관한 것이다.
현재의 인터넷은 급격한 호스트와 사용자의 증가와 데이터 트래픽의 증가로 인해 보다 빠른 패킷 전송과 패킷을 빨리 처리할 수 있는 대용량의 노드(예를들며, 라우터(Router) 또는 스위치(Switch))가 필요하고 전송 매체상에서의 높은 대역을 요구한다. 보다 빠른 전송 매체는 동선을 광 케이블로 대체하는 것으로 실현할 수 있는데 이 방면의 연구는 인터넷 백본망 상에서 활발히 진행되고 있다.
일반적인 패킷 처리 시스템인 라우터는 주로 네 개의 부분으로 구성되었는데 그것들은 라우팅 컨트롤 프로세서, 입/출력 인터페이스, 스위치 패브릭과 포워딩 엔진(Forwarding Engine)이다.
포워딩 엔진은 패킷의 목적지 주소와 출력 포트 간의 매핑을 포함한 전달 테이블에 근거하여 패킷의 출력 포트를 결정하며 이를 패킷 프리픽스 룩업이라 하며 LPM(Longest Prefix Matching : 이하, "LPM"라 함) 방식으로 프리픽스 룩업을 수행해야 한다. 여기서, LPM 방식이란 인입되는 IP 패킷의 프리픽스를 포워딩 엔트리의 프리픽스와 매칭시킬 때 IP 패킷 프리픽스와 가장 많은 비트가 일치하는 포워딩 엔트리를 찾는 방법을 말한다.
IPv6 프로토콜은 현재 인터넷 망의 기반 프로토콜인 IPv4 프로토콜의 단점을 보완하고 기능을 향상시킨 차세대 프로토콜이므로 대부분의 IPv6 프리픽스 룩업에 관한 방법들이 IPv4 프리픽스 룩업 방법을 기반으로 하고 있기 때문에 현재까지의 IPv4 프리픽스 룩업 방법에 대해 살펴본다.
현재까지 발표된 IPv4 패킷의 프리픽스 룩업 알고리즘은 메모리 접근 횟수, 메모리 사용량, 포워딩 엔트리 갱신 속도에 따라 알고리즘의 장단점 및 성능을 평가하고 있다.
종래에 다양한 IPv4 프리픽스 룩업 알고리즘이 나왔지만 크게 나누면 두가지로 나눌 수 있다.
초기 대표적인 소프트웨어 기반 검색 기법인 "Radix tree"기법과 "PATRICIA tree"기법은 요구되는 메모리 크기가 작지만 포워딩 엔트리 갱신 시간이 많고 메모리 접근 횟수가 많아 고속으로 프리픽스 룩업을 수행할 수 없어 초기 라우터에서 사용되었던 방법이다.
멀티비트-트라이 방식은 기존의 IP 프리픽스를 비교할 때 한번에 한 비트씩 비교하던 방식을 한번에 여러 비트를 비교하여 처리하는 방식이며 요구되는 메모리 크기가 크고 포워딩 엔트리 갱신 시간이 많이 걸리지만 고속으로 프리픽스 룩업을 할 수 있는 방법이다. 또한, 하드웨어로 구현하기 쉽고 고속의 프리픽스 룩업이 가능한 장점이 있다.
도 1 은 일반적인 멀티비트-트라이 포워딩 테이블을 이용한 IPv6 프리픽스 룩업 구조를 나타낸 일실시예 설명도로서, 멀티비트-트라이 룩업 구조를 IPv6 프리픽스 룩업에 적용할 때를 나타낸다.
도면에서, "101"은 패킷 수신기, "102"는 포워딩 정보, "103"은 인덱스, "104"는 포워딩 테이블, 그리고 "105"는 패킷 송신기를 나타낸다.
도 1을 참조해 볼 때 일반적인 멀티비트-트라이 룩업 구조를 IPv6 프리픽스 룩업에 사용할 경우 메모리가 많이 필요하고 메모리 접근 횟수도 상당히 많다는 점을 알 수 있다. 예를들면, 패킷 수신기(101)로부터 인입되는 IPv6 패킷의 프리픽스의 길이가 128비트이므로 이것을 고정길이로 8로 나눌 경우 16개의 포워딩 테이블(104)이 생성된다. 즉, N차 포워딩 테이블(104)이 16차 테이블이 되며 최대 메모리 접근 횟수는 16번이 되며 사용되는 최대 메모리 크기는 정확하게 계산할 수 없는 방법이지만 한 포워딩 엔트리 크기가 32바이트일 경우 최악의 경우는 "1차테이블 크기(28 * 32바이트) * 2차테이블 크기(28 * 32바이트)* ...*16차테이블 크기(28 * 32바이트)"가 되어 거의 무한대의 메모리가 필요하게 된다. 물론 고정길이로 나누는 것을 많이 하면 할수록 메모리 사용량은 줄어들게 된다. 이때, 포워딩 엔트리 구조는 1차 테이블부터 N차 테이블(104)까지 순차적으로 인입된 IPv6 프리픽스를 나누어 비교하여 매칭되면 포워딩정보(102)에 따라 패킷 송신기(105)로 보낸다. 매칭되지 않으면 다음 테이블을 가리키는 인덱스(103)에 따라 다음 비교할 테이블을 찾을 수 있다.
그 밖에 CAM을 사용하여 하드웨어적으로 구현하는 방법이 제시되었지만 비용이 많이 드는 문제점이 있었고, 메모리 엑세스 횟수를 줄이기 위해 파이프라인(Pipeline)식으로 메모리를 엑세스할 수 있는 간접(Indirect) 룩업 알고리즘이 제시되었지만 IPv6 패킷에 적용하기 어려운 문제점이 있었다.
본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로, IPv6 패킷을 처리하는 노드의 128비트 길이의 로컬 인터페이스 프리픽스 엔트리 정보만을 저장하는 작은 크기의 CAM과 64비트 이하의 네트워크 프리픽스 엔트리 정보를 저장하는 다단계로 구성되는 포워딩 테이블들을 이용하여 IPv6 패킷을 이용하여 통신을 하는 모든 네트워크 상의 노드에서 인입되는 IPv6 패킷을 최소 시간 내에 해당 목적지로 전송하기 위해 필요한 IPv6 인터넷 프로토콜 패킷 룩업 방법을 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명의 방법은, 인터넷 프로토콜 패킷 룩업 방법에 있어서, 패킷 수신기로부터 패킷을 수신하여 헤더 정보를 추출하고, 추출된 헤더 정보에서 목적지 주소를 추출하여 CAM(Content Addressable Memory)에서 룩업을 수행하는 CAM 룩업단계; 상기 CAM 룩업단계에서 룩업 매칭이 발생하였는지를 확인하는 CAM 룩업 확인단계; 상기 확인단계 결과, 매칭이 된 경우는 중앙 제어기로 패킷을 전달하고, 매칭이 되지 않을 경우는 상기 CAM에 저장된 인덱스를 이용하여 멀티비트-트라이 테이블 위치를 파악하여 멀티비트-트라이 테이블을 이용하여 룩업을 수행하는 멀티비트-트라이 테이블 룩업단계; 상기 멀티비트-트라이 테이블 룩업단계에서 매칭이 발생하는지를 확인하는 멀티비트-트라이 테이블 룩업 확인단계; 및 상기 멀티비트-트라이 테이블 룩업 확인단계에서, 매칭이 발생하면 외부 네트워크로 전송해야할 패킷이므로 패킷 송신기로 패킷을 전달하고, 매칭이 발생하지 않으면 패킷을 폐기하거나 디폴트 루트로 패킷을 전송하는 패킷 처리단계를 포함하는 것을 특징으로 한다.
또한, 본 발명의 방법은, 중앙 제어기로부터 로컬 인터페이스에 대한 정보를 수신하여 저장하는 정보 수신 및 저장 단계; 상기 정보수신 및 저장 단계에서 수신한 상기 로컬 인터페이스 정보와 매칭될 경우 패킷을 송신할 로컬 제어기나, 매칭되지 않을 경우 룩업을 계속 진행할 멀티비트-트라이 테이블 위치 정보를 가지고 있는 인덱스를 상기 CAM(Content Addressable Memory)에 저장하는 인덱스 저장 단계; 및 포워딩 정보를 상기 멀티비트-트라이 테이블에 저장하는 포워딩 정보 저장 단계를 더 포함하는 것을 특징으로 한다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 2 는 본 발명이 적용되는 포워딩 테이블을 나타낸 일실시예 설명도이다.
도면에서, "201"은 패킷 수신기, "202"는 로컬 인터페이스 정보, "203"은 인덱스, "204"는 포워딩 정보, "205"는 인덱스, "206"은 N차 포워딩 테이블, "207"은 로컬 제어기, 그리고 "208"은 패킷 송신기를 나타낸다.
패킷 수신기(201)로부터 수신한 IPv6 패킷 프리픽스가 로컬 인터페이스 정보(202)인지 확인한다.
로컬 인터페이스 정보이면 프리픽스 길이가 128비트이고 포워딩 되어야 할 패킷의 프리픽스는 64비트이하이므로 분리해서 룩업을 수행하여 메모리 사용량을 줄이고 메모리 접근 횟수도 많이 줄일 수 있다.
CAM에 들어 있는 로컬 인터페이스 정보와 인입된 IPv6 패킷 프리픽스를 비교하여 매칭이 되면 로컬 제어기(207)로 패킷을 전송하고 매칭되지 않으면 인덱스(203)를 이용하여 다음 1차 멀티비트-트라이 테이블을 이용하여 룩업한다. 여기서, N차 테이블(206)은 IPv6 프리픽스를 고정길이로 분할하는 경우에 따라 변경될 수 있다. 만일 16개로 분할하면 N차 테이블은 16차 테이블이 된다.
본 발명의 중요한 점은 멀티비트-트라이 테이블에서 룩업하는 IPv6 프리픽스 길이가 64비트라는 점이다. 고정길이는 사용가능한 메모리에 따라 변경이 될 수 있다.
멀티비트-트라이 테이블의 포워딩 엔트리 구조는 1차 테이블부터 N차 테이블까지 순차적으로 인입된 IPv6 프리픽스를 나누어 비교하여 매칭되면 포워딩정보(204)에 따라 패킷 송신기(208)로 보낸다. 만일 매칭되지 않으면 다음 테이블을 가리키는 인덱스(205)에 따라 다음 비교할 테이블을 찾을 수 있다. 이렇게 할 경우 일반적인 멀티비트-트라이 방식과 비교하면 메모리 사용량과 메모리 접근 횟수가 획기적으로 줄게 된다. 왜냐하면 128비트를 룩업하지 않고 64비트만 룩업하기 때문이다.
즉, IPv6 패킷 프리픽스의 길이는 128비트이기 때문에 LPM을 수행하는 데 있어 많은 메모리와 메모리 접근 횟수가 필요하다. 따라서, 현재까지의 IPv4 프리픽스 룩업 방법을 이용하여 IPv6 프리픽스를 룩업하기는 매우 어렵다. 즉, 고속으로 IPv6 프리픽스를 가지는 패킷을 LPM으로 룩업할 수 있는 IPv6 프리픽스 룩업 방안과 이를 위해 필요한 포워딩 테이블 관리 방안이 필요하며 구축하기 위한 비용도 적어야 한다.
따라서, 본 발명은 IPv6 프리픽스가 LPM을 수행하여 128비트와 매칭이 될 경우 이 IPv6 패킷은 로컬 인터페이스라는 점에 착안하여 먼저 전체 IPv6 프리픽스를 룩업하지 않고 IPv6 패킷을 처리하는 노드의 128비트 길이의 로컬 인터페이스 프리픽스 엔트리 정보만을 저장하는 작은 크기의 CAM을 이용하여 로컬 인터페이스 정보인지를 먼저 룩업한다. 여기에서 사용되는 CAM의 크기는 로컬 인터페이스 개수에 비례한다. 즉, 128비트에 로컬 인터페이스 크기를 곱한 값이 CAM의 크기가 된다. 현재까지 고속으로 IPv6 패킷을 처리하는 노드들의 로컬 인터페이스 수는 많지 않다. 따라서, 메모리 크기가 작은 CAM을 사용할 수 있기 때문에 비록 CAM을 쓰더라도 추가 비용이 적게 들고 룩업 속도는 메모리 접근 횟수 한 번만으로 로컬 인터페이스 프리픽스인지 판단할 수 있다. 또한, 64비트 이하의 외부 네트워크 프리픽스는 고속 룩업이 가능한 다단계 포워딩 테이블들을 이용한 멀티비트-트라이 방식으로 IPv6 프리픽스 룩업을 수행함으로써 이러한 문제를 해결할 수 있다.
도 3 은 본 발명에 따른 인터넷 프로토콜 룩업 방법에 대한 일실시예 흐름도로서, IPv6 프리픽스를 멀티비트-트라이 테이블을 구축하기 위해 고정길이로 분할하는 과정을 나타낸다.
도 3에 도시된 바와 같이, 본 발명에 따른 인터넷 프로토콜 룩업 방법에서 IPv6 프리픽스를 멀티비트-트라이 테이블을 구축하기 위해 고정길이로 분할하는 과정은, 먼저 중앙 제어기로부터 로컬 인터페이스에 대한 정보를 수신하고(301), 수신한 인터페이스 정보와 매칭될 경우 패킷을 송신할 로컬 제어기나 매칭되지 않을 경우 룩업을 계속 진행할 멀티비트-트라이 테이블 위치 정보를 가지고 있는 인덱스를 CAM에 저장한다(302).
다음으로, 로컬 인터페이스가 아닌 포워딩 정보를 멀티비트-트라이 테이블에 저장함으로써 IPv6 패킷 프리픽스 룩업이 가능한 상태가 된다(303).
도 4 는 본 발명에 따른 인터넷 프로토콜 룩업 방법에 대한 다른 실시예 흐름도로서, IPv6 프리픽스를 CAM과 멀티비트-트라이 테이블을 이용하여 룩업하는 전체 진행 과정을 나타낸다.
도 4에 도시된 바와 같이, 본 발명에 따른 인터넷 프로토콜 룩업 방법은, 먼저 패킷 수신기로부터 패킷을 수신하여 헤더 정보를 추출하고(401), 추출된 헤더 정보에서 목적지 주소를 추출하여 CAM에서 룩업을 수행하고(402), 룩업 매칭이 발생하였는지를 확인한다(403).
상기 확인 결과, 매칭이 된 경우는 중앙 제어기로 패킷을 전달하고(405) IPv6 패킷 룩업을 종료한다. 만일 매칭이 되지 않을 경우는 CAM에 저장된 인덱스를 이용하여 멀티비트-트라이 테이블 위치를 파악하고 멀티비트-트라이 테이블을 이용하여 룩업을 계속 진행한다(404).
멀티비트-트라이 테이블은 다단계로 구성될 수 있다. 멀티비트-트라이 테이블을 순차적으로 룩업할 때 매칭이 발생하는지를 확인하여(406), 발생하면 외부 네트워크로 전송해야할 패킷이므로 패킷 송신기로 패킷을 전달한다(408). 발생하지 않으면 CAM에서 로컬 인터페이스 정보와도 불일치하고 멀티비트-트라이 테이블 포워딩 정보와도 불일치하기 때문에 일치하는 포워딩 정보가 없으므로 패킷을 폐기하거나 디폴트 루트로 패킷을 전송한다(407).
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 형태로 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
상기한 바와 같은 본 발명은, 메모리 크기가 작은 CAM을 사용할 수 있기 때문에 비록 CAM을 쓰더라도 추가 비용이 적게 들고 룩업 속도는 메모리 접근 횟수 한 번만으로 로컬 인터페이스 프리픽스인지 판단할 수 있고, 또한 64비트 이하의 외부 네트워크 프리픽스는 고속 룩업이 가능한 다단계 포워딩 테이블들을 이용한 멀티비트-트라이 방식으로 IPv6 프리픽스 룩업을 수행하기 때문에 128비트 길이를 가지는 IPv6 프리픽스 룩업을 고속으로 수행할 수 있어 노드에서의 포워딩 성능이 향상되는 효과가 있다.
도 1 은 일반적인 멀티비트-트라이 포워딩 테이블을 이용한 IPv6 프리픽스 룩업 구조를 나타낸 일실시예 설명도.
도 2 는 본 발명이 적용되는 포워딩 테이블을 나타낸 일실시예 설명도.
도 3 은 본 발명에 따른 인터넷 프로토콜 룩업 방법에 대한 일실시예 흐름도.
도 4 는 본 발명에 따른 인터넷 프로토콜 룩업 방법에 대한 다른 실시예 흐름도.
* 도면의 주요 부분에 대한 부호의 설명
201 : 패킷 수신기 202 : 로컬 인터페이스 정보
203 : 인덱스 204 : 포워딩 정보
205 : 인덱스 206 : N차 포워딩 테이블
207 : 로컬 제어기 208 : 패킷 송신기

Claims (6)

  1. 인터넷 프로토콜 패킷 룩업 방법에 있어서,
    패킷 수신기로부터 패킷을 수신하여 헤더 정보를 추출하고, 추출된 헤더 정보에서 목적지 주소를 추출하여 CAM(Content Addressable Memory)에서 룩업을 수행하는 CAM 룩업단계;
    상기 CAM 룩업단계에서 룩업 매칭이 발생하였는지를 확인하는 CAM 룩업 확인단계;
    상기 확인단계 결과, 매칭이 된 경우는 중앙 제어기로 패킷을 전달하고, 매칭이 되지 않을 경우는 상기 CAM에 저장된 인덱스를 이용하여 멀티비트-트라이 테이블 위치를 파악하여 멀티비트-트라이 테이블을 이용하여 룩업을 수행하는 멀티비트-트라이 테이블 룩업단계;
    상기 멀티비트-트라이 테이블 룩업단계에서 매칭이 발생하는지를 확인하는 멀티비트-트라이 테이블 룩업 확인단계; 및
    상기 멀티비트-트라이 테이블 룩업 확인단계에서, 매칭이 발생하면 외부 네트워크로 전송해야할 패킷이므로 패킷 송신기로 패킷을 전달하고, 매칭이 발생하지 않으면 패킷을 폐기하거나 디폴트 루트로 패킷을 전송하는 패킷 처리단계
    를 포함하는 인터넷 프로토콜 패킷 룩업 방법.
  2. 제 1 항에 있어서,
    중앙 제어기로부터 로컬 인터페이스에 대한 정보를 수신하여 저장하는 정보 수신 및 저장 단계;
    상기 정보수신 및 저장 단계에서 수신한 상기 로컬 인터페이스 정보와 매칭될 경우 패킷을 송신할 로컬 제어기나, 매칭되지 않을 경우 룩업을 계속 진행할 멀티비트-트라이 테이블 위치 정보를 가지고 있는 인덱스를 상기 CAM(Content Addressable Memory)에 저장하는 인덱스 저장 단계; 및
    포워딩 정보를 상기 멀티비트-트라이 테이블에 저장하는 포워딩 정보 저장 단계
    를 더 포함하는 인터넷 프로토콜 패킷 룩업 방법.
  3. 제 1 항 또는 제 2 항에 있어서,
    상기 CAM은,
    룩업 결과에 따라 포워딩 정보를 가지는 영역으로의 인덱스를 포함하는 것을 특징으로 하는 인터넷 프로토콜 패킷 룩업 방법.
  4. 제 3 항에 있어서,
    상기 멀티비트-트라이 테이블은,
    룩업 결과에 따라 포워딩 정보를 가지는 영역으로의 인덱스를 포함하고, 두개 이상의 테이블들로 구성될 수 있는 것을 특징으로 하는 인터넷 프로토콜 패킷 룩업 방법.
  5. 제 4 항에 있어서,
    상기 멀티비트-트라이 테이블은,
    두개이상으로 구성될 경우 각 멀티비트-트라이 테이블들이 룩업 결과에 따라 다음 테이블을 가리킬 수 있는 인덱스를 포함하는 것을 특징으로 하는 인터넷 프로토콜 패킷 룩업 방법.
  6. 제 3 항에 있어서,
    상기 패킷 처리단계는,
    매칭이 발생하지 않으면 상기 CAM에서 로컬 인터페이스 정보와도 불일치하고 상기 멀티비트-트라이 테이블 포워딩 정보와도 불일치하기 때문에 일치하는 포워딩 정보가 없으므로 패킷을 폐기하거나 디폴트 루트로 패킷을 전송하는 것을 특징으로 하는 인터넷 프로토콜 패킷 룩업 방법.
KR1020030098350A 2003-12-27 2003-12-27 인터넷 프로토콜 패킷 룩업 방법 KR100572693B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030098350A KR100572693B1 (ko) 2003-12-27 2003-12-27 인터넷 프로토콜 패킷 룩업 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030098350A KR100572693B1 (ko) 2003-12-27 2003-12-27 인터넷 프로토콜 패킷 룩업 방법

Publications (2)

Publication Number Publication Date
KR20050066866A true KR20050066866A (ko) 2005-06-30
KR100572693B1 KR100572693B1 (ko) 2006-04-19

Family

ID=37257882

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030098350A KR100572693B1 (ko) 2003-12-27 2003-12-27 인터넷 프로토콜 패킷 룩업 방법

Country Status (1)

Country Link
KR (1) KR100572693B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774538B2 (en) 2006-09-29 2010-08-10 Electronics And Telecommunications Research Institute Method for ternary contents address memory table management
WO2016150014A1 (zh) * 2015-03-24 2016-09-29 中兴通讯股份有限公司 一种生成网际协议地址前缀的方法和装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7774538B2 (en) 2006-09-29 2010-08-10 Electronics And Telecommunications Research Institute Method for ternary contents address memory table management
WO2016150014A1 (zh) * 2015-03-24 2016-09-29 中兴通讯股份有限公司 一种生成网际协议地址前缀的方法和装置

Also Published As

Publication number Publication date
KR100572693B1 (ko) 2006-04-19

Similar Documents

Publication Publication Date Title
US7885268B2 (en) Method and system for hash table based routing via table and prefix aggregation
US9819637B2 (en) Efficient longest prefix matching techniques for network devices
US7039018B2 (en) Technique to improve network routing using best-match and exact-match techniques
US7443841B2 (en) Longest prefix matching (LPM) using a fixed comparison hash table
EP1344152B1 (en) Apparatus and method for performing high-speed ip route lookup and managing routing/forwarding tables
US6862281B1 (en) L4 lookup implementation using efficient CAM organization
US6792423B1 (en) Hybrid longest prefix match and fixed match searches
US6581106B1 (en) Fast address lookup in routing tables
JP2000196670A (ja) 高速検索方法及び高速検索装置
JP2006287932A (ja) ネットワーク接続テーブルを提供するための方法および装置
JP3881663B2 (ja) フィールドレベルツリーを用いたパケット分類装置及び方法
US7058725B2 (en) Method and apparatus to perform network routing using multiple length trie blocks
KR100541846B1 (ko) 3 단계 테이블로 구성된 아이피 주소 룩업 시스템 및 그방법
US20050138322A1 (en) System, apparatus, and method for string matching
US20070121616A1 (en) Methods and systems for routing packets with a hardware forwarding engine and a software forwarding engine
US7564841B2 (en) Apparatus and method for performing forwarding table searches using consecutive symbols tables
US20050114393A1 (en) Dynamic forwarding method using binary search
KR100572693B1 (ko) 인터넷 프로토콜 패킷 룩업 방법
US11178054B1 (en) Method and apparatus for longest prefix match search
US20030193956A1 (en) Routing method for a telecommunications network and router for implementing said method
KR100862195B1 (ko) 내용 번지 메모리를 이용한 구간 매칭 검색 방법 및 장치
KR100493099B1 (ko) 고속 인터넷프로토콜 라우터의 라우팅/포워딩 룩업 및라우팅 테이블 관리
KR100920107B1 (ko) Ip 주소의 검색 방법 및 장치
KR100504387B1 (ko) Sram과 해슁을 이용한 ip 어드레스 검색 방법 및하드웨어 구조
Liu et al. Fast IP table lookup and memory reduction

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

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee