KR20150006747A - 식별자/위치자 분리 환경에서의 패킷 포워딩 방법 및 장치 - Google Patents

식별자/위치자 분리 환경에서의 패킷 포워딩 방법 및 장치

Info

Publication number
KR20150006747A
KR20150006747A KR20130080592A KR20130080592A KR20150006747A KR 20150006747 A KR20150006747 A KR 20150006747A KR 20130080592 A KR20130080592 A KR 20130080592A KR 20130080592 A KR20130080592 A KR 20130080592A KR 20150006747 A KR20150006747 A KR 20150006747A
Authority
KR
South Korea
Prior art keywords
information
identifier
forwarding
domain
packet
Prior art date
Application number
KR20130080592A
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 KR20130080592A priority Critical patent/KR20150006747A/ko
Priority to US14/302,639 priority patent/US20150016459A1/en
Publication of KR20150006747A publication Critical patent/KR20150006747A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • 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 정보를 획득하는 단계; 상기 제1 정보를 상기 목적지 노드의 식별자와 함께 포워딩 테이블에 저장하는 단계; 상기 목적지 노드의 식별자를 이용하여 상기 포워딩 테이블을 검색함으로써, 다음 홉에 대한 정보인 제2 정보를 획득하는 단계; 및 상기 제2 정보를 이용해 패킷을 포워딩하는 단계를 포함한다.

Description

식별자/위치자 분리 환경에서의 패킷 포워딩 방법 및 장치{METHOD AND APPARATUS FOR FORWARDING PACKET IN ID/LOCATOR SEPARATION ENVIRIONMENT}
본 발명은 식별자/위치자 분리(Identifier/Locator Separation) 환경에서 패킷을 전달하기 위한 패킷 포워딩 방법 및 장치에 관한 것이다.
인터넷에서 네트워크들이 패킷을 처리하는 것을 전달이라 하고, 패킷이 전달될 다음 노드(또는 스테이션)의 위치를 찾아 주는 것을 포워딩(forwarding)이라 하며, 포워딩을 위해 필요한 것이 라우팅(routing)이다. 구체적으로, 라우팅은 소스 노드에서 목적지 노드까지의 패킷 전달 경로를 결정하는 것을 말하고, 포워딩은 라우터(router)의 입력 포트에서 출력 포트로 패킷을 이동시키는 것을 말한다.
네트워크 상에서 주소를 이용하여 목적지 노드까지 메시지(패킷)를 전달하는 방법을 체계적으로 결정하는 것을 경로 선택 과정이라 한다. 경로 선택 과정을 능동적으로 수행하는 장치를 라우터라 하고, 경로 선택을 위한 데이터베이스(목록)를 라우팅 테이블이라고 한다. 라우팅 테이블은 목적지 노드의 네트워크 주소, 라우터의 출구 포트 정보, 최적 경로 산출을 위한 메트릭스(metrics) 등의 정보를 저장한다. 즉, 라우팅이란, 경로 산출에 필요한 라우팅 테이블을 작성(생성)하는 일련의 동작을 모두 포함한다.
현재 인터넷으로 대표되는 네트워크에서 출발지로부터 목적지까지 패킷을 보낼 수 있는 경로는 무수히 많다. 이는 출발지로부터 목적지까지 패킷 전달 시 거쳐서 갈 수 있는 라우터의 개수가 많다는 것을 의미한다. 이렇게 많은 경로 중에서 어느 한 경로를 선택하는 것이 라우팅 알고리즘이다. 일반적으로 라우팅 알고리즘을 통해 비용이 가장 적게 들거나 가장 빨리 전송할 수 있는 경로가 선택된다. 상기 선택된 경로를 저장한 것이 포워딩 테이블이다. 즉, 포워딩 테이블은, 어떤 포트로 패킷을 보냈을 때에 목적지까지 가장 빨리 도달하는 가를 계산하여 관련된 정보를 저장해 둔 테이블이라고 할 수 있다. 라우터는 RIP(Routing Information Protocol), OSPF(Open Shortedst Path First) 등과 같은 라우팅 알고리즘을 수행함으로써 라우팅 테이블을 계산한다. 구체적으로, 라우터가 OSPF 라우팅과 같은 링크 상태(link state) 알고리즘을 사용하는 경우에는 네트워크 토폴로지를 구축하고, 구축된 네트워크 토폴로지를 바탕으로 라우팅 테이블을 계산한다. 한편, 라우터가 RIP 라우팅과 같은 거리/경로 벡터(distance/path vector) 알고리즘을 사용하는 경우에는 네트워크 토폴로지를 구축하지 않고 라우팅 테이블을 계산한다. 한편, 라우팅 테이블은 네트워크 상태변화(예, 연결의 끊김, 특정 경로의 비용/속도 변화 등)에 따라 갱신되어야 한다.
한편, 현재 인터넷의 폭발적인 확장과 모바일 단말들이 수없이 등장함으로 인해, 네트워크 트래픽이 폭증하고 라우팅 테이블이 증가하여 인터넷의 확장성 및 라우팅 테이블 관리 문제가 야기되고 있다. 또한, 다양한 단말의 출현과 단말 수의 급증으로 인해 네트워크 자체의 복잡도가 커져 가고 있기 때문에 네트워크의 확장성은 가장 기본적인 요구사항이 되고 있다. 그리고 수많은 개인 단말을 통한 컨텐츠 송/수신 및 다양한 종류의 SNS(Social Network Service)를 통한 데이터 송/수신으로 인해 네트워크 트래픽이 폭증하고 있는데, 이를 효과적으로 처리할 수 있는 방법이 필요하다.
또한, 현재 인터넷에서도 백본(backbone)의 라우팅 정보가 급증하는 추세이며, 이를 해결하기 위한 대책이 시급한 상황이다. 라우팅 정보가 급증하는 원인은 컨텐츠에 대한 주소 할당, 컨텐츠 요청, 단말의 이동, 멀티호밍(multi-homing), 그리고 트래픽 엔지니어링(traffic engineering) 등으로 인한 집적화되지 않은 주소 및 컨텐츠들이 인터넷 백본 지역에 유입되기 때문이다. 결과적으로 백본의 라우팅 정보가 급증함으로 인해, 컨텐츠 주소, 이동 단말 주소와 같은 통신을 위한 정보를 관리하기 위한 프로세스들이 불필요하게 발생하고, 단말의 이동 시 해당 주소 블록 또는 컨텐츠 정보가 반영되는 시간이 늘어나는 등의 치명적인 문제점을 야기시킨다.
본 발명이 해결하고자 하는 과제는, 네트워크의 확장성을 지원하고 포워딩 테이블의 증가 문제를 해결할 수 있는 패킷 포워딩 방법 및 장치를 제공하는 것이다.
본 발명의 실시예에 따르면 식별자/위치자 분리 환경에서 노드가 패킷을 포워딩하는 방법이 제공된다. 상기 패킷 포워딩 방법은, 도메인에 대한 정보를 저장하는 라우팅 테이블을 제공하는 단계; 목적지 노드가 속한 도메인의 식별자를 이용하여 상기 라우팅 테이블을 검색함으로써, 다음 홉에 대한 정보인 제1 정보를 획득하는 단계; 상기 제1 정보를 상기 목적지 노드의 식별자와 함께 포워딩 테이블에 저장하는 단계; 상기 목적지 노드의 식별자를 이용하여 상기 포워딩 테이블을 검색함으로써, 다음 홉에 대한 정보인 제2 정보를 획득하는 단계; 및 상기 제2 정보를 이용해 패킷을 포워딩하는 단계를 포함한다.
상기 도메인에 대한 정보는, 도메인을 식별하는 도메인 식별자, 게이트웨이를 식별하는 게이트웨이 식별자, 상기 게이트웨이 식별자에 대응하는 게이트웨이 주소, 프로토콜 정보 및 인터페이스 정보를 포함한다. 상기 게이트웨이 식별자, 상기 게이트웨이 주소, 상기 프로토콜 정보 및 상기 인터페이스 정보 각각은 상기 도메인 식별자에 대응하는 도메인으로 패킷을 포워딩하기 위해 이용된다.
상기 저장하는 단계는, 상기 제1 정보 중 상기 게이트웨이 주소, 상기 프로토콜 정보 및 상기 인터페이스 정보를 상기 목적지 노드의 식별자와 함께 상기 포워딩 테이블에 저장한다.
상기 패킷 포워딩 방법은, 상기 제공하는 단계 이전에, 이전 노드로부터 상기 목적지 노드가 속한 도메인의 식별자를 수신하는 단계를 더 포함할 수 있다.
상기 제1 정보를 획득하는 단계는, 상기 목적지 노드가 속한 도메인의 식별자에 대한 LPM(Longest Prefix Match) 알고리즘을 이용해 상기 라우팅 테이블을 검색하는 단계를 포함한다.
상기 제2 정보를 획득하는 단계는, 상기 목적지 노드의 식별자에 대한 정밀 매칭(exact matching) 알고리즘을 이용해 상기 포워딩 테이블을 검색하는 단계를 포함한다.
또한, 본 발명의 다른 실시예에 따르면 식별자/위치자 분리 환경에서 패킷을 포워딩하는 장치가 제공된다. 상기 포워딩 장치는, 도메인에 대한 정보를 저장하는 라우팅 테이블을 포함하고, 목적지 노드가 속한 도메인의 식별자를 이용해 상기 라우팅 테이블을 검색하고, 검색된 다음 홉에 대한 정보인 제1 정보를 출력하는 라우팅 테이블 관리부; 패킷 전달 경로를 저장하는 포워딩 테이블을 포함하고, 상기 제1 정보를 상기 목적지 노드의 식별자와 함께 상기 포워딩 테이블에 저장하고, 상기 목적지 노드의 식별자를 이용해 상기 포워딩 테이블을 검색하고, 검색된 다음 홉에 대한 정보인 제2 정보를 출력하는 포워딩 테이블 관리부; 및 상기 제2 정보를 이용해 패킷을 포워딩하는 포워딩부를 포함한다.
또한, 본 발명의 또 다른 실시예에 따르면 식별자/위치자 분리 환경에서 제1 노드가 제2 노드로 패킷을 전달하기 위한 패킷 포워딩 방법이 제공된다. 상기 패킷 포워딩 방법은, 상기 제2 노드가 속한 도메인의 식별자인 제1 도메인 식별자를 찾는 단계; 도메인에 대한 정보를 저장하는 라우팅 테이블을 상기 제1 도메인 식별자를 이용해 검색함으로써, 다음 홉에 대한 정보인 제1 정보를 획득하는 단계; 상기 제1 정보를 상기 제2 노드의 식별자인 제1 노드 식별자와 함께 포워딩 테이블에 저장하는 단계; 상기 제1 노드 식별자를 이용하여 상기 포워딩 테이블을 검색함으로써, 다음 홉에 대한 정보인 제2 정보를 획득하는 단계; 및 상기 제2 정보를 이용해 패킷을 포워딩하는 단계를 포함한다.
본 발명의 실시예에 따르면, ID 기반의 통신으로 인해 야기되는 라우팅 테이블 및 포워딩 테이블의 증가 문제를 해결할 수 있다.
또한 본 발명의 실시예에 따르면, 포워딩 테이블의 증가에 따른 시스템의 성능 저하를 방지할 수 있다.
또한 본 발명의 실시예에 따르면, 패킷 전달 경로를 찾기 위해 포워딩 테이블을 검색하는 경우에, 기존 IP 라우팅의 LPM(Longest Prefix Match) 알고리즘이 아닌 정밀 매칭(Exact matching) 알고리즘을 사용함으로써 정밀 매칭의 성능적 장점(예, 검색 시간 단축 등)을 가질 수 있다.
도 1은 본 발명의 실시예에 따른 라우팅 테이블의 일실시예를 나타낸 도면.
도 2는 본 발명의 실시예에 따른 포워딩 테이블의 일실시예를 나타낸 도면.
도 3은 본 발명의 실시예에 따른 패킷 전달 경로를 검색하는 과정을 나타낸 순서도.
도 4는 도 3의 경로 검색 과정을 설명하기 위한 일예를 나타낸 도면.
도 5a는 도 4의 일예에 따르는 경우에 소스 노드가 가지는 라우팅 테이블 및 포워딩 테이블의 일예를 나타낸 도면.
도 5b는 도 4의 일예에 따르는 경우에 라우터가 가지는 라우팅 테이블 및 포워딩 테이블의 일예를 나타낸 도면.
도 5c는 도 4의 일예에 따르는 경우에 목적지 노드가 가지는 라우팅 테이블 및 포워딩 테이블의 일예를 나타낸 도면.
도 6은 본 발명의 실시예에 따른 패킷 포워딩 장치를 나타낸 도면.
아래에서는 첨부한 도면을 참고로 하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
본 발명의 실시예에 따른 포워딩 시스템이 패킷을 포워딩하는 방법은, 식별자/위치자 분리 환경에서 링크 상태 정보에 기반하여 글로벌 토폴로지 데이터베이스를 구축하는 단계, 상기 글로벌 토폴로지 데이터베이스에 기초하여 라우팅 테이블을 구축하는 단계, 상기 라우팅 테이블에 기초하여 포워딩 테이블을 구축하는 단계, 상기 포워딩 테이블에 따라 패킷을 포워딩하는 단계 및 일정 시간 동안 사용하지 않는 포워딩 테이블을 관리하는 단계를 포함한다.
글로벌 토폴로지 데이터베이스를 구축하는 단계는, OSPF(Open Shortest Path First)와 같은 라우팅 프로토콜처럼 링크 상태 정보에 기반하여 네트워크 전체에 대한 글로벌 토폴로지 데이터베이스 구축하는 단계이다. 구체적으로, 상기 글로벌 토폴로지 데이터베이스 구축 시 피시아이 토폴로지 축소(fish-eye topology reduction) 기법이 적용된다. 피시아이 토폴로지 축소 기법을 적용함으로써, 글로벌 토폴로지 그래프의 크기를 대폭 줄일 수 있어 글로벌 토폴로지 데이터베이스의 양을 줄일 수 있다. 이를 통해, 라우팅 프로토콜의 확장성을 지원할 수 있다.
상기 라우팅 테이블을 구축하는 단계에 의한 라우팅 테이블 구축 시에, 특정 목적지 도메인에 대한 주소 정보(위치자 기능을 가지는 Domain ID)가 라우팅 테이블에 저장된다. 여기서 도메인은 적어도 하나의 네트워크 노드로 구성된 영역을 말한다. 라우팅 테이블은 모든 목적지 노드에 대한 라우팅 정보를 저장하지는 않는다. 만약 특정 목적지 노드로의 통신이 발생한 경우에, 포워딩 시스템은 라우팅 테이블 검색을 통해 패킷 전달 경로를 찾고, 검색된 정보를 포워딩 캐쉬(포워딩 테이블)에 저장한다. 따라서, 포워딩 테이블은 특정 목적지 노드와의 통신이 발생한 경우에만 라우팅 테이블을 바탕으로 생성되기 때문에, 불필요한 패킷 전달 경로 정보들을 미리 저장하고 있지 않는다.
도 1은 본 발명의 실시예에 따른 라우팅 테이블의 일실시예를 나타낸 도면이다.
도 1에 도시된 바와 같이, 라우팅 테이블은 특정 목적지 노드에 대한 정보를 관리하지 않고 도메인에 대한 정보만을 가진다. 따라서, 본 발명에서의 라우팅이란, 특정 목적지 노드가 소속되어 있는 도메인의 식별자(Domain ID)를 찾고, 찾은 도메인 식별자(Domain ID)를 바탕으로 라우팅 테이블을 검색하여 목적지 노드까지의 패킷 전달 경로를 설정하는 것이다.
라우팅 테이블은, 도메인 식별자(위치자(Locator) 기능을 가지는 Domain ID)를 테이블 키로 사용하고, 특정 도메인 식별자(Domain ID)에 대응하는 도메인으로 패킷을 전달하기 위한 다음 홉 정보를 저장한다. 구체적으로 다음 홉 정보는, 다음 홉의 게이트웨이 식별자(Next hop Gateway ID), 다음 홉의 게이트웨이 주소(Next hop Gateway address), 다음 홉까지의 구간에 사용되는 프로토콜 정보(Protocol) 및 다음 홉까지 패킷을 전달하기 위한 출력 인터페이스(Egress Interface)를 포함한다. 예를 들어, 노드(예, 라우터)가 도메인(D1)으로 패킷을 전달하기 위해서는, mac1이라는 MAC 주소를 가지는 게이트웨이(GW1)를 이용해야 하고, Iface1 인터페이스와 Ethernet 프로토콜을 사용하여야 한다. 한편, 노드가 도메인(D1@D2) 으로 패킷을 전달하기 위해서는, Iface0 인터페이스와 물리적으로 직접 연결되어 있는 게이트웨이(GW2)를 이용해야 한다. 여기서, 도메인(D1@D2)은 도메인(D1)에 속해있는 도메인(D2)을 의미한다.
라우팅 테이블 검색 시에는 기존 IP 라우팅과 유사하게 위치자(Locator)에 대한 LPM(Longest Prefix Match) 알고리즘이 이용된다. 예를 들어, 검색하고자 하는 위치자(Locator)가 도메인 식별자(D1@D2@D3)인 경우에, 도 1의 라우팅 테이블의 첫번째 항목인 도메인 식별자(D1)에 대한 LPM의 결과는 1이고, 두번째 항목인 도메인 식별자(D1@D2)에 대한 LPM의 결과는 2가 된다. 여기서 LPM의 결과가 가장 큰 도메인 식별자(D1@D2)가 선택된다.
도 2는 본 발명의 실시예에 따른 포워딩 테이블의 일실시예를 나타낸 도면이다.
노드는 도 1의 라우팅 테이블에서 적합한 항목을 검색한 후 검색된 정보를 포워딩 테이블에 저장한다. 포워딩 테이블은 라우팅 테이블과 다르게 목적지 노드의 노드 식별자(Destination node ID)에 대한 정보를 기반으로 하고, 목적지 노드까지 패킷을 전달하기 위한 전달 경로를 저장한다.
포워딩 테이블은 목적지 노드의 노드 식별자(Destination node ID)를 테이블키로 사용하고, 노드 식별자(Destination node ID)에 대응하는 목적지 노드로 패킷을 전달하기 위해서는 어떤 전달 경로를 이용해야 되는지에 관한 정보를 저장한다. 구체적으로 포워딩 테이블에서 상기 전달 경로에 관한 정보는, 다음 홉의 게이트웨이 주소(Next hop Gateway address), 다음 홉까지 패킷을 전달하기 위해 사용되는 프로토콜 정보(Protocol) 및 인터페이스 정보(Interface)로 표현된다. 예를 들어, 노드가 목적지 노드(DN1)로 패킷을 전달하기 위해서는, 다음 홉 게이트웨이와 물리적으로 직접 연결되어 있는 Iface0 인터페이스를 이용하여 패킷을 포워딩해야 한다. 한편, 노드가 목적지 노드(DN2)로 패킷을 전달하기 위해서는, mac1이라는 MAC 주소를 가진 노드에게 Iface1 인터페이스를 통해 패킷을 포워딩해야 한다. 한편, 포워딩 테이블 검색 시에는 라우팅 테이블 검색과 다르게 목적지 노드의 노드 식별자(Destination node ID)에 대한 정밀 매칭(exact matching) 알고리즘이 사용된다. 여기서, 정밀 매칭 알고리즘은 검색하고자 하는 목적지 노드의 노드 식별자와 완전히 동일한 노드 식별자를 포워딩 테이블에서 찾는 알고리즘을 의미한다. 이를 통해, 포워딩 테이블에 대한 검색 속도를 향상시킬 수 있다.
도 3은 본 발명의 실시예에 따른 패킷 전달 경로를 검색하는 과정을 나타낸 순서도이다. ID 기반 통신에 있어서의 경로 검색 절차를 도 3을 참고하여 설명한다. 소스 노드는 S100 단계부터 시작하고, 소스 노드 이후 목적지 노드까지의 노드는 S200 단계부터 시작한다.
노드는 목적지 노드의 위치 정보를 검색한다(S100). 이 위치 정보는 도메인 식별자(Domain ID)이고, 목적지 노드가 어디 있는지를 나타내주는 위치자(Locator) 기능을 가진다. 한편, S100 단계는 소스 노드에 의해 수행된다.
노드는 S100 단계에서 구한 위치 정보를 이용하여 라우팅 테이블을 검색한다(S200). 라우팅 테이블 검색 시에 S100 단계에서 구한 위치 정보와 라우팅 테이블의 테이블 키(즉, Domain ID)를 비교하는 LPM 알고리즘이 이용된다. 노드는 LPM의 결과 값이 가장 큰 도메인 식별자(Domain ID)를 선택한다(S300).
노드는 S300 단계에서 선택된 항목의 정보를 목적지 노드의 노드 식별자(Destination node ID)와 함께 포워딩 캐쉬에 입력한다(S400). 이를 통해, 도 2와 같은 포워딩 테이블이 생성된다.
노드 자신이 패킷의 목적지 노드인지를 판단한다(S500). 만약 노드 자신이 패킷의 목적지 노드인 경우에는 패킷 전달 경로의 설정 절차를 완료한다(S800). 추후 동일한 목적지 노드로 향하는 패킷들은 포워딩 테이블에 생성된 패킷 전달 경로를 통해 전달된다.
한편, 만약 노드 자신이 패킷의 목적지 노드가 아닌 경우에는, 목적지 노드의 노드 식별자(Destination node ID)와 S100 단계에서 구한 위치 정보(Locator)를 다음 홉의 게이트웨이에게 전달한다(S600). 그리고 노드는 다음 홉의 게이트웨이에게 목적지 노드까지의 경로 검색을 요청한다(S700).
다음 홉의 게이트웨이는 S200 단계 내지 S700 단계를 반복한다. 패킷이 목적지 노드에 전달될 때까지 상기의 과정(S200 단계 내지 S700 단계)은 반복된다.
도 4는 도 3의 경로 검색 과정을 설명하기 위한 일예를 나타낸 도면이다. 도 4를 참고하여 도 3의 경로 검색 과정을 다시 한번 설명한다. 도 4에서는 설명의 편의를 위해, 소스 노드가 도메인(D1)에 소속되어 있고, 도메인(D1)은 게이트웨이(GW1)를 포함하고, 도메인(D2)은 게이트웨이(GW2)를 포함하는 경우를 예시하였다. 한편, 노드는 스스로 하나의 도메인을 구성할 수 있고 소속된 도메인의 게이트웨이로 동작할 수 있는데, 도 4에서는 목적지 노드(DN4)가 스스로 하나의 도메인(D3)을 구성하고 도메인(D3)의 게이트웨이로 동작하는 경우를 예시하였다. 한편, 도 4에서의 도메인(D1, D2, D3)은 도 1과 함께 상술한 도메인(D1, D2, D3)과 다른 것이라고 가정한다. 그리고, 도 4에서의 게이트웨이(GW1, GW2)는 도 1에서의 게이트웨이(GW1, GW2)와 다른 것이라고 가정한다. 소스 노드가 목적지 노드(DN4)로 패킷을 전달하는 경우를 예로 들어 설명한다.
소스 노드는 목적지 노드(DN4)의 위치 정보를 검색한다(S100). 설명의 편의를 위해, 검색된 목적지 노드(DN4)의 위치 정보는 도메인 식별자(D1@D2@D3)라고 가정한다.
소스 노드는 S100 단계에서 구한 위치 정보(D1@D2@D3)를 이용하여 라우팅 테이블을 검색한다(S200). 설명의 편의를 위해, 소스 노드가 가지고 있는 라우팅 테이블은 도 5a에 예시된 라우팅 테이블(T110)인 것으로 가정한다. 소스 노드는 LPM 알고리즘을 이용해 S100 단계에서 구한 위치 정보(D1@D2@D3)와 라우팅 테이블(T110)의 도메인 식별자(Domain ID)를 비교한다. 라우팅 테이블(T110)의 첫번째 항목인 도메인 식별자(D1)에 대한 LPM 결과 값은 1이고, 두번째 항목인 도메인 식별자(D1@D2)에 대한 LPM 결과 값은 2이다. 소스 노드는 LPM 결과 값이 가장 큰 도메인 식별자(D1@D2)를 선택한다(S300).
소스 노드는 S300 단계에서 선택된 항목(D1@D2)의 정보 즉, 다음 홉 게이트웨이 주소(mac3), 프로토콜 정보(PT2) 및 인터페이스 정보(IF2)를 목적지 노드의 노드 식별자(DN4)와 함께 포워딩 테이블에 저장한다(S400). 이를 통해, 소스 노드가 가지는 포워딩 테이블은 도 5a에 예시된 포워딩 테이블(T120)일 수 있다.
소스 노드는 패킷의 목적지 노드가 아니므로, 목적지 노드의 노드 식별자(DN4)와 S100 단계에서 구한 위치 정보(D1@D2@D3)를 mac3의 MAC 주소를 가지는 다음 홉의 게이트웨이(GW2)에게 전달한다(S600). 그리고 노드는 다음 홉의 게이트웨이(GW2)에게 목적지 노드(DN4)까지의 경로 검색을 요청한다(S700). 이 때, 소스 노드가 다음 홉의 게이트웨이(GW2)로 패킷을 포워딩하는 경우에 PT2 프로토콜과 IF2 인터페이스를 이용한다.
도메인(D2)에 속한 다음 홉의 게이트웨이(GW2)는 패킷의 목적지 노드가 아니므로 S200 단계 내지 S700 단계를 반복한다.
구체적으로, 게이트웨이(GW2)는 소스 노드로부터 전달받은 목적지 노드의 위치 정보(D1@D2@D3)를 이용하여 라우팅 테이블을 검색한다(S200). 설명의 편의를 위해, 게이트웨이(GW2)가 가지고 있는 라우팅 테이블은 도 5b에 예시된 라우팅 테이블(T210)인 것으로 가정한다. 게이트웨이(GW2)는 LPM 알고리즘을 이용해 위치 정보(D1@D2@D3)와 라우팅 테이블(T210)의 도메인 식별자(Domain ID)를 비교한다. 라우팅 테이블(T210)의 첫번째 항목인 도메인 식별자(D1)에 대한 LPM 결과 값은 1이고, 두번째 항목인 도메인 식별자(D1@D2)에 대한 LPM 결과 값은 2이고, 세번째 항목인 도메인 식별자(D1@D2@D3)에 대한 LPM 결과 값은 3이다. 게이트웨이(GW2)는 LPM 결과 값이 가장 큰 도메인 식별자(D1@D2@D3)를 선택한다(S300).
게이트웨이(GW2)는 S300 단계에서 선택된 항목(D1@D2@D3)의 정보 즉, 다음 홉 게이트웨이 주소(mac5), 프로토콜 정보(PT3) 및 인터페이스 정보(IF3)를 목적지 노드의 노드 식별자(DN4)와 함께 포워딩 테이블에 저장한다(S400). 이를 통해, 게이트웨이(GW2)가 가지는 포워딩 테이블은 도 5b에 예시된 포워딩 테이블(T220)일 수 있다.
게이트웨이(GW2)는 패킷의 목적지 노드가 아니므로, 목적지 노드의 노드 식별자(DN4)와 목적지 노드의 위치 정보(D1@D2@D3)를 mac5의 MAC 주소를 가지는 다음 홉의 게이트웨이(DN4)에게 전달한다(S600). 그리고 게이트웨이(GW2)는 다음 홉의 게이트웨이(DN4)에게 목적지 노드(DN4)까지의 경로 검색을 요청한다(S700). 이 때, 게이트웨이(GW2)가 다음 홉의 게이트웨이(DN4)로 패킷을 포워딩하는 경우에 PT3 프로토콜과 IF3 인터페이스를 이용한다.
게이트웨이(DN4)는 게이트웨이(GW2)로부터 전달받은 목적지 노드의 위치 정보(D1@D2@D3)를 이용하여 라우팅 테이블을 검색한다(S200). 설명의 편의를 위해, 게이트웨이(DN4)가 가지고 있는 라우팅 테이블은 도 5c에 예시된 라우팅 테이블(T310)인 것으로 가정한다. 게이트웨이(DN4)는 LPM 알고리즘을 이용해 위치 정보(D1@D2@D3)와 라우팅 테이블(T310)의 도메인 식별자(Domain ID)를 비교한다. 라우팅 테이블(T310)의 첫번째 항목인 도메인 식별자(D1)에 대한 LPM 결과 값은 1이고, 두번째 항목인 도메인 식별자(D1@D2)에 대한 LPM 결과 값은 2이고, 세번째 항목인 도메인 식별자(D1@D2@D3)에 대한 LPM 결과 값은 3이다. 게이트웨이(DN4)는 LPM 결과 값이 가장 큰 도메인 식별자(D1@D2@D3)를 선택한다(S300).
게이트웨이(DN4)는 S300 단계에서 선택된 항목(D1@D2@D3)의 정보를 목적지 노드의 노드 식별자(DN4)와 함께 포워딩 테이블에 저장한다(S400). 이를 통해, 게이트웨이(DN4)가 가지는 포워딩 테이블은 도 5c에 예시된 포워딩 테이블(T320)일 수 있다.
게이트웨이(DN4)는 패킷의 목적지 노드(DN4)이므로, 패킷 전달 경로의 설정 절차를 완료한다(S800).
추후 동일한 목적지 노드(DN4)로 향하는 패킷들은 포워딩 테이블(T120, T220, T320)에 생성된 패킷 전달 경로를 통해 전달된다. 포워딩 테이블(T120, T220, T320)을 검색하는 경우에 목적지 노드의 노드 식별자(DN4)에 대한 정밀 매칭 알고리즘이 사용된다.
도 6은 본 발명의 실시예에 따른 패킷 포워딩 장치를 나타낸 도면이다.
도 6의 패킷 포워딩 장치는 상술한 식별자/위치자 분리 환경에서의 패킷 포워딩 방법을 수행한다.
패킷 포워딩 장치는 라우팅 테이블 관리부(100), 포워딩 테이블 관리부(200) 및 포워딩부(300)를 포함할 수 있다.
라우팅 테이블 관리부(100)는 도메인에 대한 정보를 저장하는 라우팅 테이블(110)을 포함한다. 라우팅 테이블(110)은 도 1과 함께 상술한 라우팅 테이블과 동일하게 구성될 수 있다. 구체적으로 라우팅 테이블 관리부(100)는 목적지 노드(예, DN4)의 위치 정보(목적지 노드가 속한 도메인의 식별자, 예, D1@D2@D3)로 라우팅 테이블(110)을 검색하여 다음 홉에 대한 정보(예, 다음 홉의 게이트웨이 주소, 프로토콜 정보, 인터페이스 정보 등)를 출력한다. 한편, 라우팅 테이블 관리부(100)는 라우팅 테이블(110) 검색 시에 목적지 노드의 위치 정보에 대한 LPM 알고리즘을 이용한다.
포워딩 테이블 관리부(200)는 패킷 전달 경로를 저장하는 포워딩 테이블(210)을 포함한다. 포워딩 테이블(210)은 도 2와 함께 상술한 포워딩 테이블과 동일하게 구성될 수 있다. 구체적으로 포워딩 테이블 관리부(200)는 라우팅 테이블 관리부(100)로부터 출력된 다음 홉에 대한 정보를 목적지 노드의 식별자(예, DN4)와 함께 포워딩 테이블(210)에 저장한다. 포워딩 테이블 관리부(200)는 목적지 노드의 식별자(예, DN4)로 포워딩 테이블(210)을 검색하여 검색된 다음 홉에 대한 정보(예, 다음 홉의 게이트웨이 주소, 프로토콜 정보, 인터페이스 정보 등)를 출력한다. 한편, 포워딩 테이블 관리부(200)는 포워딩 테이블(210) 검색 시에 목적지 노드의 식별자(예, DN4)에 대한 정밀 매칭(exact matching) 알고리즘을 이용한다.
포워딩부(300)는 포워딩 테이블 관리부(200)로부터 출력된 다음 홉에 대한 정보를 이용해 패킷을 포워딩한다.
이상에서 본 발명의 실시예에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속하는 것이다.

Claims (15)

  1. 식별자/위치자 분리 환경에서 노드가 패킷을 포워딩하는 방법에 있어서,
    도메인에 대한 정보를 저장하는 라우팅 테이블을 제공하는 단계;
    목적지 노드가 속한 도메인의 식별자를 이용하여 상기 라우팅 테이블을 검색함으로써, 다음 홉에 대한 정보인 제1 정보를 획득하는 단계;
    상기 제1 정보를 상기 목적지 노드의 식별자와 함께 포워딩 테이블에 저장하는 단계;
    상기 목적지 노드의 식별자를 이용하여 상기 포워딩 테이블을 검색함으로써, 다음 홉에 대한 정보인 제2 정보를 획득하는 단계; 및
    상기 제2 정보를 이용해 패킷을 포워딩하는 단계
    를 포함하는 패킷 포워딩 방법.
  2. 제1항에 있어서,
    상기 도메인에 대한 정보는,
    도메인을 식별하는 도메인 식별자, 게이트웨이를 식별하는 게이트웨이 식별자, 상기 게이트웨이 식별자에 대응하는 게이트웨이 주소, 프로토콜 정보 및 인터페이스 정보를 포함하고,
    상기 게이트웨이 식별자, 상기 게이트웨이 주소, 상기 프로토콜 정보 및 상기 인터페이스 정보 각각은 상기 도메인 식별자에 대응하는 도메인으로 패킷을 포워딩하기 위해 이용되는
    패킷 포워딩 방법.
  3. 제2항에 있어서,
    상기 저장하는 단계는,
    상기 제1 정보 중 상기 게이트웨이 주소, 상기 프로토콜 정보 및 상기 인터페이스 정보를 상기 목적지 노드의 식별자와 함께 상기 포워딩 테이블에 저장하는
    패킷 포워딩 방법.
  4. 제1항에 있어서,
    상기 제공하는 단계 이전에,
    이전 노드로부터 상기 목적지 노드가 속한 도메인의 식별자를 수신하는 단계
    를 더 포함하는 패킷 포워딩 방법.
  5. 제1항에 있어서,
    상기 제1 정보를 획득하는 단계는,
    상기 목적지 노드가 속한 도메인의 식별자에 대한 LPM(Longest Prefix Match) 알고리즘을 이용해 상기 라우팅 테이블을 검색하는 단계를 포함하는
    패킷 포워딩 방법.
  6. 제1항에 있어서,
    상기 제2 정보를 획득하는 단계는,
    상기 목적지 노드의 식별자에 대한 정밀 매칭(exact matching) 알고리즘을 이용해 상기 포워딩 테이블을 검색하는 단계를 포함하는
    패킷 포워딩 방법.
  7. 식별자/위치자 분리 환경에서 패킷을 포워딩하는 장치에 있어서,
    도메인에 대한 정보를 저장하는 라우팅 테이블을 포함하고, 목적지 노드가 속한 도메인의 식별자를 이용해 상기 라우팅 테이블을 검색하고, 검색된 다음 홉에 대한 정보인 제1 정보를 출력하는 라우팅 테이블 관리부;
    패킷 전달 경로를 저장하는 포워딩 테이블을 포함하고, 상기 제1 정보를 상기 목적지 노드의 식별자와 함께 상기 포워딩 테이블에 저장하고, 상기 목적지 노드의 식별자를 이용해 상기 포워딩 테이블을 검색하고, 검색된 다음 홉에 대한 정보인 제2 정보를 출력하는 포워딩 테이블 관리부; 및
    상기 제2 정보를 이용해 패킷을 포워딩하는 포워딩부
    를 포함하는 포워딩 장치.
  8. 제7항에 있어서,
    상기 라우팅 테이블은
    도메인을 식별하는 도메인 식별자, 게이트웨이를 식별하는 게이트웨이 식별자, 상기 게이트웨이 식별자에 대응하는 게이트웨이 주소, 프로토콜 정보 및 인터페이스 정보를 저장하고,
    상기 게이트웨이 식별자, 상기 게이트웨이 주소, 상기 프로토콜 정보 및 상기 인터페이스 정보 각각은 상기 도메인 식별자에 대응하는 도메인으로 패킷을 포워딩하기 위해 이용되는
    포워딩 장치.
  9. 제8항에 있어서,
    상기 포워딩 테이블 관리부는,
    상기 제1 정보 중 상기 게이트웨이 주소, 상기 프로토콜 정보 및 상기 인터페이스 정보를 상기 목적지 노드의 식별자와 함께 상기 포워딩 테이블에 저장하는
    포워딩 장치.
  10. 제7항에 있어서,
    상기 라우팅 테이블 관리부는,
    상기 라우팅 테이블 검색 시에 상기 목적지 노드가 속한 도메인의 식별자에대한 LPM(Longest Prefix Match) 알고리즘을 이용하는
    포워딩 장치.
  11. 제7항에 있어서,
    상기 포워딩 테이블 관리부는,
    상기 포워딩 테이블 검색 시에 상기 목적지 노드의 식별자에 대한 정밀 매칭(exact matching) 알고리즘을 이용하는
    포워딩 장치.
  12. 제7항에 있어서,
    상기 라우팅 테이블 관리부는,
    상기 목적지 노드가 속한 도메인의 식별자를 이전 노드로부터 수신하는
    포워딩 장치.
  13. 식별자/위치자 분리 환경에서 제1 노드가 제2 노드로 패킷을 전달하기 위한패킷 포워딩 방법은,
    상기 제2 노드가 속한 도메인의 식별자인 제1 도메인 식별자를 찾는 단계;
    도메인에 대한 정보를 저장하는 라우팅 테이블을 상기 제1 도메인 식별자를 이용해 검색함으로써, 다음 홉에 대한 정보인 제1 정보를 획득하는 단계;
    상기 제1 정보를 상기 제2 노드의 식별자인 제1 노드 식별자와 함께 포워딩 테이블에 저장하는 단계;
    상기 제1 노드 식별자를 이용하여 상기 포워딩 테이블을 검색함으로써, 다음 홉에 대한 정보인 제2 정보를 획득하는 단계; 및
    상기 제2 정보를 이용해 패킷을 포워딩하는 단계
    를 포함하는 패킷 포워딩 방법.
  14. 제13항에 있어서,
    상기 제1 정보를 획득하는 단계는,
    상기 제1 도메인 식별자에 대한 LPM(Longest Prefix Match) 알고리즘을 이용해 상기 라우팅 테이블을 검색하는 단계를 포함하는
    패킷 포워딩 방법.
  15. 제13항에 있어서,
    상기 제2 정보를 획득하는 단계는,
    상기 제1 노드 식별자에 대한 정밀 매칭(exact matching) 알고리즘을 이용해 상기 포워딩 테이블을 검색하는 단계를 포함하는
    패킷 포워딩 방법.
KR20130080592A 2013-07-09 2013-07-09 식별자/위치자 분리 환경에서의 패킷 포워딩 방법 및 장치 KR20150006747A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR20130080592A KR20150006747A (ko) 2013-07-09 2013-07-09 식별자/위치자 분리 환경에서의 패킷 포워딩 방법 및 장치
US14/302,639 US20150016459A1 (en) 2013-07-09 2014-06-12 Method and apparatus for forwarding packet in identifier/locator separation environment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR20130080592A KR20150006747A (ko) 2013-07-09 2013-07-09 식별자/위치자 분리 환경에서의 패킷 포워딩 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20150006747A true KR20150006747A (ko) 2015-01-19

Family

ID=52277057

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20130080592A KR20150006747A (ko) 2013-07-09 2013-07-09 식별자/위치자 분리 환경에서의 패킷 포워딩 방법 및 장치

Country Status (2)

Country Link
US (1) US20150016459A1 (ko)
KR (1) KR20150006747A (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102118259B1 (ko) 2018-09-13 2020-06-09 한국과학기술원 이동성 관리 및 프라이버시 보호를 동시에 제공하는 방법 및 장치
CN111614557B (zh) * 2020-04-02 2021-09-24 深圳创维-Rgb电子有限公司 Mesh网络的数据传输方法、装置、网关及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4236364B2 (ja) * 2000-04-04 2009-03-11 富士通株式会社 通信データ中継装置
US7391782B2 (en) * 2001-03-06 2008-06-24 Fujitsu Limited Packet relaying apparatus and relaying method with next relaying address collation
US7512123B1 (en) * 2003-07-16 2009-03-31 Cisco Technology, Inc. Fibre channel fabric and switches with flexible prefix addressing
US7436838B2 (en) * 2004-12-29 2008-10-14 Cisco Technology, Inc. Automatic prioritization of BGP next-hop in IGP
JP4616732B2 (ja) * 2005-09-02 2011-01-19 株式会社日立製作所 パケット転送装置
US9384208B2 (en) * 2013-01-22 2016-07-05 Go Daddy Operating Company, LLC Configuring a cached website file removal using a pulled data list

Also Published As

Publication number Publication date
US20150016459A1 (en) 2015-01-15

Similar Documents

Publication Publication Date Title
KR102033999B1 (ko) 컨텐트 중심 네트워크에서의 통신 방법 및 장치
US8065434B2 (en) Method and device for maintaining routes
EP2760168B1 (en) Method, device and system for forwarding message
JP5377770B2 (ja) ネームアドレスマッピングシステム、データ伝送方法及びネームアドレスマッピングメンテナンス方法
US20080013549A1 (en) Packet switching system, packet switching method, routing apparatus, structure of packet, and packet generating method
EP3148124B1 (en) System and method for eliminating undetected interest looping in information-centric networks
CN105340244A (zh) 基于来自暂态准则的上下文的动态内容分发网络选择
US20130272310A1 (en) Mapping server, network system, packet forwarding method and program
WO2018036254A1 (zh) 报文转发方法及装置
KR101463364B1 (ko) 라우팅 정보의 룩헤드 계산
WO2009036678A1 (fr) Procédé, dispositif et système de réseau pour acheminer un message
KR20130109154A (ko) 라우팅 정보 업데이트의 우선 순위 지정
US20140233577A1 (en) Communication system, control apparatus, and control method thereof
CN105530185A (zh) 覆盖路由网络、基于覆盖路由网络的路由方法及路由器
US10536368B2 (en) Network-aware routing in information centric networking
US20160218958A1 (en) Method and system for forwarding packet in id/locator separation environment
US20140376409A1 (en) Routing method and apparatus
KR20150006747A (ko) 식별자/위치자 분리 환경에서의 패킷 포워딩 방법 및 장치
JP4623317B2 (ja) 通信装置、ルーティング方法及びプログラム
CN108965122B (zh) 路由选路方法、设备及计算机可读存储介质
CN109274781A (zh) Arp表项刷新方法和装置
US20170078196A1 (en) Communication system, control apparatus, and control method
Garcia-Luna-Aceves New directions in content centric networking
WO2009121265A1 (zh) 一种多归属多地址空间网络中实现流量工程的方法和设备
CN105530189B (zh) Trill网络中转发报文的方法和路由桥

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