KR20170011323A - Source routing method based on id and apparatus using the same - Google Patents

Source routing method based on id and apparatus using the same Download PDF

Info

Publication number
KR20170011323A
KR20170011323A KR1020150103760A KR20150103760A KR20170011323A KR 20170011323 A KR20170011323 A KR 20170011323A KR 1020150103760 A KR1020150103760 A KR 1020150103760A KR 20150103760 A KR20150103760 A KR 20150103760A KR 20170011323 A KR20170011323 A KR 20170011323A
Authority
KR
South Korea
Prior art keywords
router
forwarding table
request message
identifier
routing
Prior art date
Application number
KR1020150103760A
Other languages
Korean (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 KR1020150103760A priority Critical patent/KR20170011323A/en
Publication of KR20170011323A publication Critical patent/KR20170011323A/en

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/34Source 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/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms

Landscapes

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

Abstract

According to an embodiment of the present invention, a source routing method comprises: a step of receiving a path request message including target identifier information and an encrypted sharing key; a step of searching for a forwarding table corresponding to the target identifier; a step of generating the forwarding table through a path setting process if the forwarding table is not searched after search; and a step of transmitting the path request message to the next router according to the information of the forwarding table.

Description

식별자 기반의 소스 라우팅 방법 및 이를 위한 장치{SOURCE ROUTING METHOD BASED ON ID AND APPARATUS USING THE SAME}[0001] The present invention relates to an identifier-based source routing method,

본 발명은 소스 라우팅 방법 및 이를 위한 장치에 관한 것으로서, 보다 상세하게는 재귀적이고 계층적으로 구성된 도메인 구조를 갖는 네트워크 아키텍처에서 식별자 기반의 소스 라우팅 방법 및 이를 위한 장치에 관한 것이다.The present invention relates to a source routing method and an apparatus therefor, and more particularly, to an identifier-based source routing method and apparatus therefor in a network architecture having a recursive hierarchical structure.

현재의 IP 기반 인터넷 환경에서 IP는 호스트의 식별자(ID)와 위치자 (Locator)의 역할을 동시에 가지고 있다. IP가 이와 같은 중복된 역할을 수행하는 경우 이동성(Mobility)이나 멀티호밍(Multihoming) 같은 서비스에서 라우팅 효율이 감소하거나 라우팅 테이블의 크기가 증가될 수 있다. 예를 들어, 사이트 멀티 호밍(Site-multihoming) 같은 경우, IP 는 식별자와 위치자의 역할을 겸하고 있기 때문에, SP(Service Provider)가 자신이 관리하는 주소에 집성(aggregation) 되지 않는 프리 픽스(prefix)를 추가해야 할 경우가 생길 수 있다. In the current IP-based Internet environment, IP has both a host ID and a role as a locator. If IP plays such a redundant role, the routing efficiency may decrease or the size of the routing table may increase in services such as mobility or multi-homing. For example, in the case of site-multihoming, IP serves as both an identifier and a locator. Therefore, a prefix, which is not aggregated to an address managed by a service provider (SP) May need to be added.

이러한 문제를 해결하기 위하여 식별자와 위치자를 분리시키는 솔루션이 제안되었다. 통신 주체에 할당되는 영구적인 식별자와, 통신 주체가 위치한 현재 위치를 나타내는 식별자, 즉 위치자를 분리함으로써 통신 주체가 통신 중 이동을 해도 통신의 연속성이 보장될 수 있으며, 멀티호밍과 같은 새로운 통신 방식에도 효과적인 대응이 가능해졌다. To solve this problem, a solution for separating identifiers and locators has been proposed. The continuity of communication can be ensured even if the communication subject moves during communication by separating the permanent identifier assigned to the communication subject and the identifier indicating the current position at which the communication subject is located, i.e., the location location, and a new communication method such as multi- Effective response has become possible.

식별자와 위치자 분리 환경에서는 식별자와 위치자가 분리됨에 따라서 라우터에서 사용되는 라우팅 테이블과 포워딩 테이블도 분리되게 되었다. 기존 IP 환경의 라우터에서는 IP가 식별자 및 위치자의 역할을 겸했기 때문에 라우팅 테이블과 포워딩 테이블이 사실상 동일했다. 따라서 라우터가 라우팅 프로토콜의 수행 결과로 만들어진 라우팅 테이블을 포워딩 시에도 그대로 이용할 수 있었다. In the identifier-and-location-separation environment, the routing table and the forwarding table used by the router are separated as the identifier and the location are separated. In the routers of the existing IP environment, the routing table and the forwarding table were virtually identical, since IP also played the role of identifier and locator. Therefore, the router could use the routing table created as a result of the routing protocol even when forwarding it.

하지만 식별자와 위치자가 분리되는 환경에서 각 통신 응용 주체들은 식별자만을 인식할 수 있기 때문에 라우터에서 식별자 기반의 패킷을 제대로 포워딩 하려면, 해당 식별자를 가진 통신 주체의 현재 위치자를 알아내고 그 값을 기준으로 라우팅 테이블을 검색하여 다음 홉(hop)에 대한 정보(위치자 정보)를 알아내야 한다. 그런 후 라우터는 다음 홉에 식별자에 알아낸 다음 홉 정보를 맵핑하여 포워딩 테이블을 새롭게 만들어야 한다. 즉, 식별자와 위치자 분리 환경에서는 라우팅 테이블과 포워딩 테이블이 별개로 관리되며, 패킷의 포워딩은 포워딩 테이블에 의지한다. 포워딩 테이블 엔트리는 목적지 식별자, 외부 전송 인터페이스(e.g. eth0), 다음 홉 도메인 게이트웨이의 프로토콜 종류(e.g. IP), 다음 홉 도메인 게이트웨이의 주소(e.g. IP 주소)와 같은 정보를 포함할 수 있다.However, in an environment where the identifier and the location are separated, each communication application entity can recognize only the identifier. Therefore, in order to properly forward the identifier-based packet in the router, the current location of the communication subject having the identifier is found, The table should be searched to find information about the next hop (locator information). The router then has to create a new forwarding table by mapping the next hop information to the next hop in the identifier. In other words, routing table and forwarding table are separately managed in the identifier and location separation environment, and packet forwarding relies on the forwarding table. The forwarding table entry may include information such as a destination identifier, an external transport interface (e.g., eth0), a protocol type (e.g., IP) of the next hop domain gateway, and an address (e.g., IP address) of the next hop domain gateway.

상술한 바와 같이, 라우터가 식별자 값을 가지고 해당 통신주체가 위치하고 있는 위치 정보, 즉 위치자를 알아내려면, 식별자와 위치자의 맵핑을 관리하고 있는 시스템이 필요하다. 이러한 시스템을 ILMS(Id Locator Mapping System)라고 칭하며, ILMS 망 상에 잘 알려진 위치에 존재하고 있으며 라우터가 식별자 값에 대응하는 위치자를 질의를 하면 그 식별자 값에 맵핑되어 있는 위치자를 알려준다. As described above, there is a need for a system that manages the mapping of identifiers and locators in order to find out the location information, i.e., locator, in which the communication subject is located with the identifier value. This system is called ILMS (Id Locator Mapping System). It exists in a well-known location on the ILMS network. When the router queries the location corresponding to the identifier value, it informs the location mapped to the identifier value.

한편, 소스 라우팅은 패킷을 보내는 송신자가 직접 패킷이 거쳐갈 라우터의 인터페이스에 할당된 주소의 목록을 헤더에 지정하여 전송하는 방식을 의미한다. 이러한 소스 라우팅은 패킷이 해당 목록의 주소에 위치하는 라우터를 거쳐가는 것은 보장되지만 그 위치에 있는 즉, 그 주소를 할당 받은 라우터가 송신자가 처음에 알고 있었던 해당 라우터인지 여부는 확실하게 보장하지 못하는 문제점이 있다. 이는 라우터에 할당된 주소는 단지 라우터의 위치를 식별할 뿐 그 위치에 있는 객체가 어떤 특정한 개체인지는 보장하지 못하기 때문이다. Source routing refers to a method in which a sender that sends a packet directly sends a list of addresses assigned to an interface of a router to which packets are to be transmitted through a header. This source routing guarantees that the packet goes through the router located at the address of the corresponding list, but it does not guarantee that the router at that location, that is, the router to which the address is assigned, . This is because the address assigned to the router only identifies the location of the router and does not guarantee that the object at that location is a specific entity.

본 발명은 재귀적이고 계층적으로 구성된 도메인 구조를 갖는 네트워크 아키텍처에서 주소 기반의 소스 라우팅이 아닌 식별자 기반의 소스 라우팅 방법 및 이를 이용하는 장치를 제공한다. The present invention provides an identifier-based source routing method rather than an address-based source routing in a network architecture having a recursive hierarchical structure.

본 발명은 식별자를 기반으로 하는 소스 라우팅을 통하여 망의 구성이 변하는 환경에서도 사용자가 원하는 라우터를 항상 경유하게 함으로써 보안이 유지되는 라우팅 방법 및 이를 이용하는 장치를 제공한다.The present invention provides a routing method and a device using the routing method, in which a user always passes through a desired router even in an environment where the configuration of the network changes through source routing based on an identifier.

본 발명의 일 실시예인 소스 라우팅 방법은 목적지 식별자 정보 및 암호화된 공유키를 포함하는 경로 요청 메시지를 수신하는 단계와, 상기 목적지 식별자에 대응하는 포워딩 테이블을 검색하는 단계와, 검색 결과, 상기 포워딩 테이블을 찾지 못하면, 경로 설정 과정을 통하여 상기 포워딩 테이블을 생성하는 단계와, 상기 포워딩 테이블의 정보에 따라 상기 경로 요청 메시지를 다음 라우터로 전송하는 단계를 포함할 수 있다. A source routing method according to an embodiment of the present invention includes: receiving a route request message including destination identifier information and an encrypted shared key; searching a forwarding table corresponding to the destination identifier; Generating the forwarding table through a routing process, and transmitting the route request message to the next router according to the information of the forwarding table.

상기 포워딩 테이블을 생성하는 단계는, 자신의 개인키로 상기 공유키를 복호화하는 단계와; 상기 목적지 식별자를 다음 라우터의 목적지 식별자로 변경하는 단계와; 다음 라우터의 목적지 식별자에 대한 위치자 정보를 획득하는 단계와; 상기 위치자 정보에 기초하여 다음 라우터의 정보를 포함하는 새로운 포워딩 테이블을 생성하는 단계와; 상기 다음 라우터의 공용키로 상기 공유키 및 다음 라우터의 위치자 정보를 포함하는 경로 요청 메시지를 암호화하는 단계와; 암호화된 공유키와 포함하는 경로 요청 메시지를 상기 다음 라우터로 전송하는 단계를 포함할 수 있다. Wherein the generating the forwarding table comprises: decrypting the shared key with its own private key; Changing the destination identifier to a destination identifier of the next router; Acquiring location information for a destination identifier of a next router; Generating a new forwarding table including information of a next router based on the positional information; Encrypting a route request message including location information of the next router and the shared key with a public key of the next router; And transmitting the path request message including the encrypted shared key to the next router.

상기 경로 요청 메시지를 수신하면, 식별자 소스 라우팅의 라우터 리스트에 속한 라우터인지 여부를 판단하는 단계를 더 포함할 수 있다. Upon receiving the route request message, it may further include determining whether the router is a router belonging to the router list of the source source routing.

판단 결과, 식별자 소스 라우팅의 라우터 리스트에 속한 라우터가 아니면, 상기 경로 요청 메시지 포함되어 있는 상기 목적지 식별자에 대응하는 새로운 포워딩 테이블을 생성하는 단계를 더 포함할 수 있다. And generating a new forwarding table corresponding to the destination identifier included in the route request message if it is not a router belonging to the router list of the source source routing.

상기 목적지 식별자에 대한 위치자 정보는 ILMS(Id Locator Mapping System)로부터 수신될 수 있다. Locator information for the destination identifier may be received from an IL Locator Mapping System (ILMS).

상기 경로 요청 메시지가 목적지 호스트로 전송된 경우, 상기 목적지 호스트로부터 적어도 하나의 라우터를 거쳐 경로 응답 메시지가 소스 호스트로 전송되는 단계를 더 포함할 수 있다. The path request message may be transmitted from the destination host to the source host via at least one router when the route request message is transmitted to the destination host.

상기 경로 응답 메시지가 수신되면, 상기 공유키로 데이터를 암호화 하는 단계와; 상기 암호화된 데이터가 상기 목적지 호스트로 전송되는 단계를 더 포함할 수 있다. Encrypting the data with the shared key when the path response message is received; And transmitting the encrypted data to the destination host.

본 발명의 다른 실시예에 따른 소스 라우팅을 통한 패킷을 송수신하는 라우팅 장치는 목적지 식별자 정보 및 암호화된 공유키를 포함하는 경로 요청 메시지를 수신하고, 상기 목적지 식별자에 대응하는 포워딩 테이블을 검색하는 포워딩 테이블 관리부와, 검색 결과, 상기 포워딩 테이블을 찾지 못하면, 경로 설정 과정을 통하여 상기 포워딩 테이블을 생성하는 경로 설정부와; 상기 포워딩 테이블의 정보에 따라 상기 경로 요청 메시지를 다음 라우터로 전송하는 패킷 포워더를 포함할 수 있다.The routing device for transmitting and receiving packets through source routing according to another embodiment of the present invention receives a route request message including destination identifier information and an encrypted shared key, and forwards the forwarding table corresponding to the destination identifier A routing unit configured to generate the forwarding table through a routing process when the forwarding table is not found as a result of the search; And a packet forwarder for transmitting the route request message to the next router according to the information of the forwarding table.

본 발명의 일 실시예에 따르면, 망의 구성이 변화하더라도 사용자가 지정하는 특정 라우터(들)를 반드시 거쳐갈 수 있도록 해주는 라우팅 방법 및 이를 이용하는 장치가 제공된다. According to an embodiment of the present invention, there is provided a routing method and a device using the routing method that allow a user to specify a specific router (s) even if the configuration of the network changes.

또한, 본 발명의 일 실시예에 따르면 식별자를 기반으로 하는 소스 라우팅을 통하여 망의 구성이 변하는 환경에서도 사용자가 원하는 라우터를 항상 경유하게 함으로써 보안이 유지되는 라우팅 방법 및 이를 이용하는 장치가 제공된다.According to an embodiment of the present invention, there is provided a routing method and a device using the same, wherein the security is maintained by allowing a user to always go through a desired router even in an environment where the configuration of the network changes through source routing based on an identifier.

도 1은 계층적이고 재귀적으로 구성된 도메인 구조를 도시한 도면이다.
도 2는 게이트웨이에서 수행하는 경로 설정 절차를 도시한 도면이다.
도 3은 식별자기반 소스 라우팅의 일 예를 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 포워딩 테이블의 검색을 설명하기 위한 제어 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 포워딩 테이블 엔트리 생성을 설명하기 위한 제어 흐름도이다.
도 6은 본 발명의 다른 실시예에 따른 포워딩 테이블 엔트리 생성을 설명하기 위한 제어 흐름도이다.
도 7은 본 발명의 일 실시예에 따른 패킷 포워딩을 설명하기 위한 제어 흐름도이다.
도 8은 식별자 소스 라우팅의 전체 동작 구조를 설명하기 위한 도면이다.
Figure 1 is a diagram illustrating a hierarchical and recursively constructed domain structure.
2 is a diagram illustrating a routing procedure performed by the gateway.
3 is a diagram illustrating an example of identifier-based source routing.
4 is a control flowchart for explaining searching of a forwarding table according to an embodiment of the present invention.
5 is a control flowchart for explaining generation of a forwarding table entry according to an embodiment of the present invention.
6 is a control flowchart for explaining generation of a forwarding table entry according to another embodiment of the present invention.
7 is a control flowchart for explaining packet forwarding according to an embodiment of the present invention.
8 is a diagram for explaining the overall operation structure of the identifier source routing.

이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In the following description of the embodiments of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present disclosure rather unclear.

어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있으나, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 아울러, 본 발명에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . In addition, the description of "including" a specific configuration in the present invention does not exclude a configuration other than the configuration, and means that additional configurations can be included in the practice of the present invention or the technical scope of the present invention.

또한 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능들을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 합쳐져 하나의 구성부로 이루어지거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있고 이러한 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리범위에 포함된다.In addition, the components shown in the embodiments of the present invention are shown independently to represent different characteristic functions, which does not mean that each component is composed of separate hardware or software constituent units. That is, each constituent unit is included in each constituent unit for convenience of explanation, and at least two constituent units of the constituent units may be combined to form one constituent unit, or one constituent unit may be divided into a plurality of constituent units to perform a function. The integrated embodiments and separate embodiments of the components are also included within the scope of the present invention, unless they depart from the essence of the present invention.

또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.In addition, some of the components are not essential components to perform essential functions in the present invention, but may be optional components only to improve performance. The present invention can be implemented only with components essential for realizing the essence of the present invention, except for the components used for the performance improvement, and can be implemented by only including the essential components except the optional components used for performance improvement Are also included in the scope of the present invention.

도 1은 계층적이고 재귀적으로 구성된 도메인 구조를 도시한 도면이다. Figure 1 is a diagram illustrating a hierarchical and recursively constructed domain structure.

본 발명의 일 실시예에 따른 식별자와 위치자 분리된 환경은 기본적으로 계층적인 도메인(Domain)으로 망이 구성될 수 있다. 각 도메인은 유사한 특징을 가진 노드들의 모임으로 정의될 수 있다. 한 도메인은 보통 물리적으로 동일한 전송 프로토콜을 사용하고 있는 노드(Node)들로 구성이 된다. [도면에 노드 표시 됨]The environment in which the identifier and the location are separated according to an embodiment of the present invention may be basically composed of a hierarchical domain. Each domain can be defined as a collection of nodes with similar characteristics. One domain usually consists of nodes that are using the same physical transport protocol. [Node displayed in drawing]

또는 도메인은 지역적인 공통점이나 유사한 통신 목적을 갖고 있는 노드들의 모임으로 그 의미가 확장될 수도 있다. 각 도메인에는 도메인의 식별자가 부여될 수 있으며(예를 들어, D1, D2, D3, D4), 이러한 식별자 그 자체로는 아무 의미도 없는 비트스트림 값이지만, 이 도메인 식별자가 연결되면 상대적인 위치 정보를 갖게 된다. 이러한 위치 정보는 특정 도메인에 속한 노드의 위치자의 역할을 할 수 있다. 예를 들어, 도메인 D4에 해당하는 위치자는 <D1:D2:D4>로 식별될 수 있고, 도메인 D3는 <D1:D3>으로 식별될 수 있다.A domain may also extend its meaning to a group of nodes that have local commonalities or similar communication purposes. Each domain may be assigned an identifier of the domain (e.g., D1, D2, D3, D4), and the identifier itself is a bitstream value meaningless. . Such location information can serve as a positioner of a node belonging to a specific domain. For example, a positioner corresponding to the domain D4 may be identified as < D1: D2: D4 >, and a domain D3 may be identified as < D1: D3 >.

본 발명이 적용될 수 있는 식별자와 위치자 분리 환경에서 각 도메인의 경계 라우터들은(도메인 게이트웨이) 도메인간 라우팅 프로토콜 동작 시 상기 위치 정보, 즉, 위치자 값을 사용할 수 있다. 이 위치자 값을 이용하여 도메인 간 라우팅 프로토콜이 동작되면, 각 도메인 라우터들은 도메인간 경로를 찾을 때 사용할 수 있는 위치자 값을 기반으로 한 라우팅 테이블(routing table)을 보유하게 된다.The boundary routers of each domain can use the location information, that is, the location value, in the inter-domain routing protocol operation of the (domain gateway) domain in the identifier and location separator environments to which the present invention can be applied. When the inter-domain routing protocol is operated using this location value, each domain router has a routing table based on the location value that can be used when searching the inter-domain route.

도 2는 게이트웨이에서 수행하는 경로 설정 절차를 도시한 도면이다. 2 is a diagram illustrating a routing procedure performed by the gateway.

식별자와 위치자 분리 환경에서 서로 다른 도메인에 속한 종단 호스트들은 각 도메인 게이트웨이(도메인 라우터) 간의 경로 설정 과정을 수행함으로써 통신한다. 경로 설정 과정은 각 도메인 게이트웨이에 의하여 목적지 식별자에 대한 포워딩 테이블이 만들어지면 가능하게 된다.The end hosts belonging to different domains in the identifier and locator separation environments communicate by performing the routing process between the respective domain gateways (domain routers). The routing process is enabled when a forwarding table for the destination identifier is created by each domain gateway.

경로 설정이 제대로 동작하기 위해서는 각 도메인 게이트웨이는 위치자 기반의 라우팅을 먼저 수행하여, 위치자 기반의 라우팅 테이블(Routing Table)을 가지고 있어야 한다. 게이트웨이는 ILMS를 통하여 위치자와 식별자 간의 매핑 정보(ID: Locator Mapping)를 얻을 수 있고, 이를 이용하여 다음 홉 게이트웨이에 대한 정보를 가지는 포워딩 테이블(Forwarding Table)의 엔트리를 생성할 수 있다. For proper routing, each domain gateway must first perform location-based routing and have a location-based routing table. The gateway can obtain mapping information (ID: Locator Mapping) between the location and the identifier through the ILMS, and can generate an entry of a forwarding table having information on the next hop gateway.

경로 설정 과정은 목적지 식별자로 전송되는 패킷의 트래픽이 발생하면 수행이 되며, 패킷을 수신한 최초의 도메인 게이트웨이로부터 시작하여 최종 목적지 식별자를 가지는 객체가 속한 도메인의 게이트웨이까지 반복되게 된다.The path establishment process is performed when traffic of a packet transmitted as a destination identifier is generated, and is repeated from the first domain gateway receiving the packet to the gateway of the domain to which the object having the final destination identifier belongs.

한편, 상술한 바와 같이, 패킷을 보내는 송신자가 직접 패킷이 거쳐갈 라우터의 인터페이스에 할당된 주소의 목록을 헤더에 지정하여 전송하는 소스 라우팅의 경우, 패킷이 해당 목록의 주소에 위치하는 라우터를 거쳐가는 것은 보장되지만 그 위치에 있는 즉, 그 주소를 할당 받은 라우터가 송신자가 처음에 알고 있었던 해당 라우터인지 여부는 확실하게 보장하지 못하는 문제점이 있다.Meanwhile, as described above, in the case of source routing in which a sender of a packet directs a list of addresses assigned to an interface of a router to which a packet is to be transmitted directly in a header, the packet is transmitted through a router located at the address of the corresponding list But there is a problem that it can not be guaranteed that the router at the location, that is, the router to which the address is allocated, is the first router that the sender first knew.

본 발명의 일 실시예는 라우터의 위치와 무관하게 항상 패킷들이 해당 라우터들로 전송되도록 주소가 표시하는 위치가 아닌 식별자가 식별하는 라우터로 패킷이 전송하는 식별자 기반 소스 라우팅 방법을 제안한다. 이를 통해, 송신자가 신뢰하는 라우터를 지정하고, 그 라우터들의 식별자로 소스 라우팅을 하게 되면, 항상 해당 라우터들을 거쳐가게 만들 수 있으며 추후 망의 토폴로지가 변화하더라도 식별자로 식별한 라우터들을 경유해 가는 것이 보장된다. An embodiment of the present invention proposes an identifier-based source routing method in which a packet is transmitted to a router identified by an identifier rather than a location indicated by the address so that packets are always transmitted to the corresponding routers regardless of the location of the router. In this way, when a sender specifies a trusted router and performs source routing with the identifiers of the routers, it can always be made to pass through the corresponding routers, and even if the topology of the network changes in the future, do.

또한, 본 발명의 다른 실시예는 식별자 기반의 소스 라우팅의 보안 수준을 높이기 위하여 소스 라우팅의 라우터 목록에 명시된 라우터 간의 경로를 암호화할 수 있다. 암호화를 위해서 송신자와 수신자, 및 그 사이의 경유할 도메인 게이트웨이들은 암호화에 필요한 키를 공유해야 한다. 이러한 키 생성 및 분배는 앞에서 언급한 경로 설정 단계에서 이루어질 수 있다. Further, another embodiment of the present invention can encrypt the route between the routers specified in the router list of the source routing in order to increase the security level of the identifier-based source routing. For encryption, the sender and recipient, and the domain gateways between them, must share the key necessary for encryption. Such key generation and distribution can be accomplished in the aforementioned routing step.

도 3은 식별자 기반 소스 라우팅의 일 예를 도시한 도면이다. 3 is a diagram illustrating an example of identifier-based source routing.

소스 호스트(source host)로부터 패킷을 전송 받은 식별자 게이트웨이(ID Gateway)는 크게 세 가지 기능을 수행하게 된다. 식별자 게이트웨이는 식별자 소스 라우팅에 사용될 라우터 목록에 포함된 라우터들 중의 하나일 수도 있고 라우터 목록에 포함되지 않은 라우터 일 수도 있다. 식별자 소스 라우팅에 사용될 라우터 목록에 포함된 라우터들은 Intermediate GW #N 으로 표시될 수 있다. An ID gateway that receives a packet from a source host performs three functions. The identifier gateway may be one of the routers included in the list of routers to be used for identifier source routing or may be a router not included in the list of routers. Routers included in the list of routers to be used for identifier source routing may be indicated as Intermediate GW #N.

상기 세 가지 기능은 [1] 포워딩 테이블 검색(Lookup forwarding cache table), [2] 새로운 포워딩 테이블 엔트리 생성(Build new forwading cache entry), [3] 식별자 패킷 포워딩(Forward ID packets)일 수 있다. The three functions may be [1] a lookup forwarding cache table, [2] a new forwarding cache entry, and [3] forward packet identifiers (Forward ID packets).

식별자 게이트웨이에서 패킷을 보내거나 다른 게이트웨이로부터 온 패킷을 받으면 식별자 게이트웨이는 가장 먼저 자신의 포워딩 테이블을 검색한다. 식별자 게이트웨이는 목적지 식별자를 키로 하여 포워딩 테이블을 검색하고, 매칭되는 엔트리가 검색되면, 그 엔트리의 내용대로 패킷을 다음 홉으로 포워딩할 수 있다. Identifier When a gateway sends a packet or receives a packet from another gateway, the identifier gateway first searches its forwarding table. The identifier gateway searches the forwarding table using the destination identifier as a key, and when a matched entry is found, the packet can be forwarded to the next hop according to the contents of the entry.

포워딩 테이블 검색에서 목적지 식별자에 해당하는 포워딩 테이블 엔트리를 찾지 못하면, 식별자 게이트웨이는 경로 설정 과정을 통하여 새 포워딩 테이블 엔트리를 생성한다. 이러한 경로 설정 과정에서 소스, 목적지, 및 소스 리스트에 속한 intermediate 라우터들 사이에 사용할 키가 분배될 수 있다. If a forwarding table entry corresponding to the destination identifier is not found in the forwarding table search, the identifier gateway generates a new forwarding table entry through the routing process. During this routing process, the keys to be used between the source, destination, and intermediate routers belonging to the source list can be distributed.

이 때, 식별자 게이트웨이는 ILMS를 통하여 식별자에 대한 위치 정보, 즉 위치자와 간의 매핑 정보를 얻을 수 있고(Get locator for an ID), 이를 이용하여 다음 홉 게이트웨이에 대한 정보를 가지는 포워딩 테이블의 엔트리를 생성할 수 있다.In this case, the identifier gateway obtains the location information of the identifier through the ILMS, that is, the mapping information between the location and the destination (Get locator for an ID), and uses the information to identify the entry of the forwarding table having information on the next hop gateway Can be generated.

포워딩 테이블을 검색하든 새로운 포워딩 테이블을 생성하든 목적지 식별자에 해당하는 포워딩 테이블 엔트리가 준비되면, 식별자 게이트웨이는 해당 엔트리에 저장된 정보를 이용하여 패킷을 다음 홉 게이트웨이 또는 Intermediate GW #N로 포워딩한다.Whether the forwarding table or the new forwarding table is created, when the forwarding table entry corresponding to the destination identifier is prepared, the identifier gateway uses the information stored in the corresponding entry to forward the packet to the next hop gateway or the intermediate GW #N.

도 4 내지 도 7은 게이트웨이에서 이루어지는 상기 기능을 세부적으로 설명하기 위한 도면이다. FIGS. 4 to 7 are views for explaining the above function in the gateway in detail.

도 4는 본 발명의 일 실시예에 따른 포워딩 테이블의 검색을 설명하기 위한 제어 흐름도이다.4 is a control flowchart for explaining searching of a forwarding table according to an embodiment of the present invention.

임의의 도메인 라우터, 즉 도메인 게이트웨이가 ID 패킷을 수신하면, 도메인 게이트웨이의 포워딩 테이블을 관리하는 포워딩 테이블 관리부(ForwardingTableManager)에 의하여 포워딩 테이블 검색 과정이 수행된다. When an arbitrary domain router, that is, a domain gateway receives an ID packet, a forwarding table search process is performed by a forwarding table manager (ForwardingTableManager) managing a forwarding table of a domain gateway.

ID 패킷을 수신한(410) 포워딩 테이블 관리부는, 목적지 식별자를 키로 하여 포워딩 테이블을 검색한다(420).Upon receiving the ID packet (410), the forwarding table management unit searches the forwarding table using the destination identifier as a key (420).

검색 결과, 목적지 식별자(destination ID)와 일치되는 또는 매칭되는 엔트리를 갖는 포워딩 테이블이 있으면(430), 도메인 게이트웨이는 해당 포워딩 테이블 엔트리의 포워딩 정보에 따라 ID 패킷을 포워딩한다(440).As a result of the search, if there is a forwarding table having an entry matching or matching the destination ID, the domain gateway forwards the ID packet according to the forwarding information of the corresponding forwarding table entry (440).

반면에, 목적지 식별자와 일치되는 포워딩 테이블 엔트리가 없으면(430), 즉 아직 목적지 식별자와 일치되는 포워딩 테이블 엔트리가 생성되지 않은 경우, 도메인 게이트웨이는 경로 설정 과정(path discovery procedure)을 통하여 포워딩 테이블 엔트리를 생성할 수 있다(450).On the other hand, if there is no forwarding table entry matching the destination identifier (430), that is, if a forwarding table entry that matches the destination identifier has not yet been generated, the domain gateway proceeds to the forwarding table entry through the path discovery procedure (450).

도 5와 도 6은 본 발명의 일 실시예에 따른 포워딩 테이블 엔트리 생성을 설명하기 위한 제어 흐름도이다. 5 and 6 are control flowcharts for explaining generation of a forwarding table entry according to an embodiment of the present invention.

도메인 게이트 웨이가 데이터 패킷을 수신하면 데이터 패킷을 전송하기 위하여 포워딩 테이블을 만드는 경로 설정 절차가 수행될 수 있다. When the domain gateway receives the data packet, a routing procedure may be performed to create a forwarding table to transmit the data packet.

도 5는 수신된 ID 패킷이 일반 데이터 패킷인 경우에 포워딩 테이블 엔트리를 생성하는 것을 설명하는 도면이고, 도 6은 수신된 ID 패킷이 경로 요청 메시지(path request message)인 경우에 포워딩 테이블 엔트리를 생성하는 것을 설명하는 도면이다. FIG. 5 is a diagram for explaining generation of a forwarding table entry when the received ID packet is a general data packet. FIG. 6 is a view for explaining the generation of a forwarding table entry when the received ID packet is a path request message Fig.

식별자 소스 라우팅의 라우터 리스트에 속한 도메인 게이트웨이가 패킷을 받은 경우, ID 패킷이 일반 데이터 패킷이면 도 5의 포워딩 테이블 생성 과정이 수행되고, ID 패킷이 경로 요청 메시지이면 도 6의 포워딩 테이블 생성 과정이 수행된다.When the domain gateway belonging to the router list of the source routing of the identifier receives the packet, the forwarding table creation process of FIG. 5 is performed if the ID packet is a general data packet. If the ID packet is the route request message, do.

포워딩 테이블을 생성하기 위해서는 도 4의 포워딩 테이블 관리부 이외에, 경로 설정 과정(path request message/path response message)을 처리하는 경로 설정부(PathSetup), 식별자 소스 라우팅 과정에서 소스(source), 목적지(destination), 및 intermediate GW 들 사이에 사용할 공유키(shared key)를 생성하거나, 수신한 공유키를 저장하는 공유키 관리부(SharedKeyManager), 위치자 기반의 라우팅 데몬스트레이션이 수행하여 만들어진 라우팅 테이블을 관리하는 라우팅 테이블 관리부(RoutingTableManager) 및 포워딩 테이블에 기반하여 패킷을 포워딩하는 패킷 포워더(PacketForwarder)와 같은 기능 수행 주체가 더 필요할 수 있다. In order to generate the forwarding table, a path setting unit (PathSetup) for processing a path request message / path response message in addition to the forwarding table management unit of FIG. 4, a source, a destination, A shared key manager (SharedKeyManager) for generating a shared key to be used between intermediate GWs, or storing a received shared key, a routing table manager for managing a routing table created by locator-based routing demonstration, (RoutingTableManager) and a packet forwarder (PacketForwarder) for forwarding packets based on the forwarding table.

도 5와 같이, 데이터 패킷이 수신되면, 경로 설정부는 헤더의 목적지 식별자를 라우터 리스트의 첫 번째 intermediate GW #1의 식별자로 변경하고(510), 현재의 intermediate GW를 가리키는 인덱스 값을 1 증가시킨다(520).5, when a data packet is received, the routing unit changes the destination identifier of the header to the identifier of the first intermediate GW # 1 in the router list (510), and increments the index value indicating the current intermediate GW by 1 520).

경로 설정부는 ILMS를 통하여 목적지 식별자에 대한 위치자 값을 획득할 수 있다(530). The routing unit may obtain the location value for the destination identifier through the ILMS (530).

라우팅 테이블 관리부는 위치자 값에 매칭되는 라우팅 테이블 엔트리를 검색하고(540), 검색된 라우팅 테이블 엔트리는 경로 설정부로 전달될 수 있다. The routing table manager retrieves 540 the routing table entry that matches the location value, and the retrieved routing table entry may be passed to the routing unit.

경로 설정부는 목적지 식별자에 대한 위치자 값을 이용하여 새로운 포워딩 테이블 엔트리를 생성할 수 있다(550).The routing unit may generate a new forwarding table entry using the location value for the destination identifier (550).

공유키 관리부는 암호화에 사용될 새로운 공유키를 생성하여(560) 이를 경로 설정부로 전달할 수 있다. The shared key management unit may generate a new shared key to be used for encryption (560) and forward it to the path setting unit.

경로 설정부는 공유키와 위치자를 포함하는 경로 요청 메시지를 생성하고(570), intermediate GW 리스트의 첫 번째 intermediate GW의 공용키로 경로 요청 메시지의 공유키 부분을 암호화 할 수 있다(580).The path setting unit 570 generates a path request message including the shared key and the location key, and may encrypt the shared key portion of the path request message with the public key of the first intermediate GW in the intermediate GW list (580).

경로 설정부는 공유키가 암호화되어 있는 경로 요청 메시지를 다음 intermediate GW #1로 전송할 수 있다(590).The path setting unit may transmit the path request message in which the shared key is encrypted to the next intermediate GW # 1 (590).

다음으로, 수신된 패킷이 경로 요청 메시지인 경우의 포워딩 테이블 생성 절차는 도 6과 같다.Next, a procedure of generating a forwarding table when the received packet is a route request message is shown in FIG.

도 6과 같이, 포워딩 테이블 관리부로 경로 요청 메시지가 수신되면(610), 식별자 소스 라우팅의 라우터 리스트에 속한 도메인 게이트웨이가 패킷을 수신했는지 여부가 판단된다(620).As shown in FIG. 6, when a route request message is received at the forwarding table management unit (610), it is determined whether a domain gateway belonging to the router list of the source routing of the source has received the packet (620).

만약, 식별자 소스 라우팅의 라우터 리스트에 속한 도메인 게이트웨이가 패킷을 수신했다면, 경로 설정부는 현재 게이트웨이의 개인키(private key)로 경로 요청 메시지를 복호화 하여, 공유키를 추출할 수 있다(630). 즉, 경로 설정부는 개인키로 암호화된 공유키를 복호화한다(decrypt).If the domain gateway belonging to the router list of the identifier source routing receives the packet, the routing unit decrypts the route request message with the private key of the current gateway to extract the shared key (630). That is, the path setting unit decrypts the shared key encrypted with the private key.

추출된 공유키는 공유키 관리부에 저장된다(640). 저장된 공유키는 소스 게이트웨이와 intermediate GW들 사이의 통신에 사용되며, 레코드 방식은 예를 들어 {source ID, shared key}일 수 있고, 검색 키는 source ID가 될 수 있다. The extracted shared key is stored in the shared key management unit (640). The stored shared key is used for communication between the source gateway and the intermediate GWs, the record method may be {source ID, shared key}, and the search key may be the source ID.

경로 설정부는 경로 요청 메시지의 헤더에 목적지 식별자를 다음 intermediate GW의 식별자로 변경하고(650). 현재의 intermediate GW를 가리키는 인덱스 값을 1 증가시킨다(660).The route setting unit changes the destination identifier to the identifier of the next intermediate GW in the header of the route request message (650). The index value indicating the current intermediate GW is incremented by one (660).

경로 설정부는 ILMS를 통하여 목적지 식별자에 대한 위치자 값을 획득할 수 있다(670). The routing unit may obtain the location value for the destination identifier through the ILMS (670).

ILMS로부터 목적지 식별자에 대한 위치자 값을 가져온 경로 설정부는 목적지 식별자에 대한 위치자 값을 이용하여 새로운 포워딩 테이블 엔트리를 생성할 수 있다(680). 다음 홉 게이트웨이가 ILMS에 쿼리를 중복으로 날리지 않기 위하여 목적지 식별자에 대한 위치자는 경로 요청 메시지에 포함될 수 있다. The routing unit that obtained the location value for the destination identifier from the ILMS may generate a new forwarding table entry using the location value for the destination identifier (680). The location request for the destination identifier may be included in the route request message so that the next hop gateway does not duplicate the query to the ILMS.

경로 설정부는 다시 라우터 리스트의 다음 intermediate GW의 공용키(public key)로 공유키를 (690).The routing unit 690 returns the shared key to the public key of the next intermediate GW in the router list.

반면, 식별자 소스 라우팅의 라우터 리스트에 속하지 않은 도메인 게이트웨이가 패킷을 수신했다면, 경로 설정부는 경로 요청 메시지에 포함된 위치자를 이용하여 새로운 포워딩 테이블 엔트리를 생성할 수 있다(681).On the other hand, if the domain gateway not belonging to the router list of the identifier source routing receives the packet, the routing unit can generate a new forwarding table entry using the location information included in the route request message (681).

경로 설정부는 암호화 되어 있는 경로 요청 메시지 또는 도메인 게이트웨이로 수신한 경로 요청 메시지를 다음 홉 도메인 게이트웨이로 전송할 수 있다(695).The route setting unit may transmit an encrypted route request message or a route request message received by the domain gateway to the next hop domain gateway (695).

도 7은 본 발명의 일 실시예에 따른 패킷 포워딩을 설명하기 위한 제어 흐름도이다.7 is a control flowchart for explaining packet forwarding according to an embodiment of the present invention.

도메인 게이트웨이가 패킷을 수신하면, 포워딩 테이블 관리부는 우선 목적지 식별자와 일치하는 포워딩 테이블 엔트리를 검색한다(710).When the domain gateway receives the packet, the forwarding table management unit first searches the forwarding table entry matching the destination identifier (710).

그런 후, 도메인 게이트웨이는 현재 수신한 도메인 게이트웨이의 식별자가 패킷 헤더의 목적지 식별자와 일치하는지 여부를 판단한다(720).Then, the domain gateway determines whether the identifier of the currently received domain gateway matches the destination identifier of the packet header (720).

판단 결과, 현재 수신한 도메인 게이트웨이의 식별자가 패킷 헤더의 목적지 식별자와 일치하는 경우 즉, 패킷이 식별자 소스 라우팅의 라우터 목록 중 하나에 도착한 경우, 도메인 게이트웨이는 식별자 소스 라우팅을 이용해서 패킷을 보낼 ? 기밀성을 높이기 위해서 거쳐가는 라우터 목록을 암호화해서 보낼 수 있다.As a result of the determination, if the identifier of the currently received domain gateway matches the destination identifier of the packet header, that is, if the packet arrives at one of the router lists of the identifier source routing, the domain gateway uses the identifier source routing to send the packet. To increase confidentiality, you can send a list of routed routers encrypted.

라우터 목록을 암호화해서 보내는 경우(헤더의 encryption flag == 1), 공유키 관리부는 검색키로써 소스 식별자를 이용하여 공유키를 검색하고(730), 이를 패킷 포워더로 전달할 수 있다.When the router list is encrypted and sent (encryption flag == 1 in the header), the shared key management unit searches the shared key using the source identifier as a search key (730), and can forward the shared key to the packet forwarder.

패킷 포워더는 공유키를 이용하여 데이터, 즉 라우터 목록을 복호화할 수 있다(740).The packet forwarder may decrypt the data, i.e., the router list, using the shared key (740).

패킷 포워더는 이 후 intermediate GW 리스트 내 다음 intermediate GW의 식별자를 목적지 식별자로 설정하고(750), 현재의 intermediate GW를 가리키는 인덱스 값을 1 증가시킨다(760).The packet forwarder then sets the identifier of the next intermediate GW in the intermediate GW list as the destination identifier (750) and increments the index value indicating the current intermediate GW by 1 (760).

그런 후, 패킷 포워더는 intermediate GW 리스트를 포함하는 데이터를 공유키로 암호화한다(770).The packet forwarder then encrypts (770) the data containing the intermediate GW list with the shared key.

암호화된 intermediate GW 리스트 즉, 라우팅 리스트 내 다음 intermediate GW로 전송된다(780).The encrypted intermediate GW list is sent to the next intermediate GW in the routing list (780).

반면, 식별자 소스 라우팅의 라우터 리스트에 속하지 않은 도메인 게이트웨이가 패킷을 수신했다면, 즉, 현재 수신한 도메인 게이트웨이의 식별자가 패킷 헤더의 목적지 식별자와 일치하지 않는 경우라면, 기존 방법대로 일치하는 포워딩 테이블 엔트리를 찾아서, 검색된 포워딩 테이블 엔트리에 따라 패킷이 전송된다(790).On the other hand, if the domain gateway not belonging to the router list of the identifier source routing receives the packet, that is, if the identifier of the currently received domain gateway does not match the destination identifier of the packet header, the matching forwarding table entry And the packet is transmitted according to the forwarding table entry found (790).

도 8은 식별자 소스 라우팅의 전체 동작 구조를 설명하기 위한 도면이다.8 is a diagram for explaining the overall operation structure of the identifier source routing.

소스 호스트(source host)는 목적지 호스트(destination host)에 패킷을 전송하려고 하고, 식별자 소스 라우팅에 사용될 라우터 목록에 포함된 라우터들은 intermediate GW #N으로 표현할 수 있다. The source host tries to send packets to the destination host, and the routers included in the list of routers to be used for source routing of identifiers can be represented as intermediate GW #N.

소스 호스트에서 데이터 패킷을 전송하게 될 경우, 목적지 호스트의 식별자에 대한 포워딩 테이블이 없으면, 소스 호스트는 패킷 전송을 펜딩(pending)시킨다(801). When a source host is to transmit a data packet, if there is no forwarding table for the identifier of the destination host, the source host pings the packet transmission (801).

본 발명의 일 실시예에 따르면 소스 호스트는 위치자가 아닌 식별자 기반의 소스 라우팅을 통해 패킷을 전송하기 때문에 목적지 호스트의 식별자 기반의 포워딩 테이블이 필요하다. According to an embodiment of the present invention, since the source host transmits the packet through the source routing based on the identifier rather than the location, an identifier-based forwarding table of the destination host is required.

소스 호스트는 첫 번째 Intermediate GW #1 으로의 패킷 전송을 위해서 ILMS를 통하여 intermediate GW #1 의 식별자에 매핑되는 위치자에 대한 정보를 얻을 수 있다(802).The source host may obtain 802 information about the locator that is mapped to the identifier of the intermediate GW # 1 through the ILMS for packet transmission to the first intermediate GW # 1.

intermediate GW #1에 대한 위치자 정보를 획득한 소스 호스트는 이 위치자 정보를 이용해서 새로운 포워딩 테이블 엔트리를 생성하고(803), 소스(source), 목적지(destination), 및 intermediate GW 들 사이에 사용할 공유키(shared key)를 생성한다(804).The source host acquiring the location information for intermediate GW # 1 uses the location information to create a new forwarding table entry (803) and use it between the source, destination, and intermediate GWs And generates a shared key (804).

새로운 포워딩 테이블 엔트리는 도 5 또는 도 6를 참고로 설명된 절차에 의하여 생성될 수 있다. A new forwarding table entry may be generated by the procedure described with reference to FIG. 5 or FIG.

그런 후, 소스 호스트는 intermediate GW #1에게 공유키를 전달하기 위해서 intermediate GW #1의 공용키를 이용하여 공유키를 암호화 하고(805), 목적지 식별자를 intermediate GW #1로 변경한다(806).Then, the source host encrypts the shared key using the public key of the intermediate GW # 1 (805) and transfers the destination identifier to the intermediate GW # 1 (806) in order to deliver the shared key to the intermediate GW # 1.

소스 호스트는 암호화 된 공유키와 intermediate GW #1의 위치자가 포함된 경로 요청 메시지를 생성하고 이를 다음 홉 게이트웨이로 전송한다(807)The source host generates a route request message including the encrypted shared key and the location of the intermediate GW # 1 and transmits it to the next hop gateway (807)

소스 호스트로부터 경로 요청 메시지를 수신한 게이트웨이가 식별자 소스 라우팅 목록에 포함되지 않은 일반 도메인 게이트웨이라면, 게이트웨이는 단순히 경로 요청 메시지에 포함된 위치자(intermediate GW #1)를 이용해서 포워딩 테이블 엔트리를 만든 후, 다음 홉으로 경로 요청 메시지를 포워딩 한다(808).If the gateway receiving the route request message from the source host is a general domain gateway not included in the identifier source routing list, the gateway simply creates a forwarding table entry using the intermediate GW # 1 included in the route request message , And forwards the route request message to the next hop (808).

단계 808은 식별자 소스 라우팅 목록에 포함된 게이트웨이가 경로 요청 메시지를 수신할 때까지 반복될 수 있다. Step 808 may be repeated until the gateway included in the identifier source routing list receives the route request message.

식별자 소스 라우팅 목록에 포함된 게이트웨이가 경로 요청 메시지를 수신하면, 즉, 도 8에서 Intermediate GW #1에 경로 요청 메시지가 도착하면, 식별자 소스 라우팅 목록에 포함된 다음 게이트웨이로 경로 요청 메시지를 포워딩 하기 위해서 intermediate GW #1은 intermediate GW #N의 식별자에 매핑되는 위치자에 대한 정보를 ILMS를 통해 획득한다(809).When the gateway included in the identifier source routing list receives the route request message, that is, when the route request message arrives in Intermediate GW # 1 in FIG. 8, the route request message is forwarded to the next gateway included in the identifier source routing list The intermediate GW # 1 acquires information on the locator that is mapped to the identifier of the intermediate GW #N through the ILMS (809).

intermediate GW #1은 intermediate GW #N의 식별자에 매핑되는 위치자에 대한 정보를 이용해서 intermediate GW #N의 식별자에 대한 새로운 포워딩 테이블 엔트리를 생성한다(810). The intermediate GW # 1 generates a new forwarding table entry for the identifier of the intermediate GW #N using the information on the location mapped to the identifier of the intermediate GW #N (810).

또한 intermediate GW #1는 수신한 경로 요청 메시지에 포함된 공유키를 자신의 개인키를 이용해서 복호화하고, 차후 이용을 위해서 공유키를 저장한다(811).The intermediate GW # 1 decrypts the shared key included in the received route request message using its own private key, and stores the shared key for subsequent use (811).

그리고, 공유키는 다음 intermediate GW #N의 공용키로 다시 암호화되고(812), 목적지 식별자는 intermediate GW #N으로 변경된다(813).Then, the shared key is re-encrypted with the public key of the next intermediate GW #N (812), and the destination identifier is changed to the intermediate GW #N (813).

암호화된 공유키와 intermediate GW #N의 위치자 정보를 포함하는 경로 요청 메시지가 생성되고, 경로 요청 메시지는 다음 홉으로 전송된다(814).A route request message including the encrypted shared key and the location information of the intermediate GW #N is generated, and the route request message is transmitted to the next hop (814).

경로 요청 메시지가 목적지 호스트로 도착할 때까지 단계 810 내지 단계 814는 연속적으로 반복될 수 있다. Steps 810 to 814 may be repeated serially until the route request message arrives at the destination host.

위와 같은 과정을 반복하여 경로 요청 메시지가 목적지 호스트에 도착하면, 경로 응답 메시지(path response message)가 intermediate GW #1 내지 intermediate GW #N을 거쳐 소스 호스트로 전송된다(815). When the route request message arrives at the destination host by repeating the above process, a path response message is transmitted to the source host via intermediate GW # 1 through intermediate GW #N (815).

경로 응답 메시지가 소스 호스트 에 도착하면, 그 동안 펜딩 되었던 패킷은 공유키로 암호화되어 목적지 호스트로 포워딩된다(816). 즉, 패킷의 식별자 소스 라우팅 전송이 진행된다.When the path response message arrives at the source host, the pending packet is encrypted with the shared key and forwarded to the destination host (816). That is, the identifier source routing transmission of the packet proceeds.

상술한 바와 같이, 본 발명에 따르면, 재귀적이고 계층적으로 구성된 도메인 구조를 갖는 네트워크 아키텍처에서 주소 기반의 소스 라우팅이 아닌 식별자 기반의 소스 라우팅 방법 및 이를 이용하는 장치가 제공된다.As described above, according to the present invention, in a network architecture having a recursive hierarchically structured domain structure, an identifier-based source routing method other than address-based source routing and an apparatus using the same are provided.

본 발명은 식별자를 기반으로 하는 소스 라우팅을 통하여 망의 구성이 변하는 환경에서도 사용자가 원하는 라우터를 항상 경유하게 함으로써 보안이 유지되는 라우팅 방법 및 이를 이용하는 장치가 제공된다.The present invention provides a routing method in which security is maintained by allowing a user to always go through a desired router even in an environment where network configuration is changed through source routing based on an identifier, and an apparatus using the routing method.

상술한 실시예에서, 방법들은 일련의 단계 또는 블록으로서 순서도를 기초로 설명되고 있으나, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당해 기술 분야에서 통상의 지식을 가진 자라면 순서도에 나타난 단계들이 배타적이지 않고, 다른 단계가 포함되거나, 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.In the above-described embodiments, the methods are described on the basis of a flowchart as a series of steps or blocks, but the present invention is not limited to the order of steps, and some steps may occur in different orders or in a different order than the steps described above have. It will also be understood by those skilled in the art that the steps depicted in the flowchart illustrations are not exclusive and that other steps may be included or that one or more steps in the flowchart may be deleted without affecting the scope of the invention You will understand.

상술한 실시예는 다양한 양태의 예시들을 포함한다. 다양한 양태들을 나타내기 위한 모든 가능한 조합을 기술할 수는 없지만, 해당 기술 분야의 통상의 지식을 가진 자는 다른 조합이 가능함을 인식할 수 있을 것이다. 따라서, 본 발명은 이하의 특허청구범위 내에 속하는 모든 다른 교체, 수정 및 변경을 포함한다고 할 것이다.The above-described embodiments include examples of various aspects. While it is not possible to describe every possible combination for expressing various aspects, one of ordinary skill in the art will recognize that other combinations are possible. Accordingly, it is intended that the invention include all alternatives, modifications and variations that fall within the scope of the following claims.

ILMS: Id Locator Mapping System
포워딩 관리부
경로 설정부
공유키 설정부
라우팅 테이블 관리부
패킷 포워더
ILMS: Id Locator Mapping System
Forwarding management
The path setting unit
The shared key setting unit
Routing table manager
Packet forwarder

Claims (14)

소스 라우팅 방법에 있어서,
목적지 식별자 정보 및 암호화된 공유키를 포함하는 경로 요청 메시지를 수신하는 단계와;
상기 목적지 식별자에 대응하는 포워딩 테이블을 검색하는 단계와;
검색 결과, 상기 포워딩 테이블을 찾지 못하면, 경로 설정 과정을 통하여 상기 포워딩 테이블을 생성하는 단계와;
상기 포워딩 테이블의 정보에 따라 상기 경로 요청 메시지를 다음 라우터로 전송하는 단계를 포함하는 것을 특징으로 하는 방법.
In the source routing method,
Receiving a route request message including destination identifier information and an encrypted shared key;
Retrieving a forwarding table corresponding to the destination identifier;
If the forwarding table is not found, generating the forwarding table through a routing process;
And forwarding the route request message to the next router according to the information of the forwarding table.
제1항에 있어서,
상기 포워딩 테이블을 생성하는 단계는,
자신의 개인키로 상기 공유키를 복호화하는 단계와;
상기 목적지 식별자를 다음 라우터의 목적지 식별자로 변경하는 단계와;
다음 라우터의 목적지 식별자에 대한 위치자 정보를 획득하는 단계와;
상기 위치자 정보에 기초하여 다음 라우터의 정보를 포함하는 새로운 포워딩 테이블을 생성하는 단계와;
상기 다음 라우터의 공용키로 상기 공유키 및 다음 라우터의 위치자 정보를 포함하는 경로 요청 메시지를 암호화하는 단계와;
암호화된 공유키와 포함하는 경로 요청 메시지를 상기 다음 라우터로 전송하는 단계를 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
Wherein the step of generating the forwarding table comprises:
Decrypting the shared key with its own private key;
Changing the destination identifier to a destination identifier of the next router;
Acquiring location information for a destination identifier of a next router;
Generating a new forwarding table including information of a next router based on the positional information;
Encrypting a route request message including location information of the next router and the shared key with a public key of the next router;
And transmitting the path request message including the encrypted shared key to the next router.
제1항에 있어서,
상기 경로 요청 메시지를 수신하면, 식별자 소스 라우팅의 라우터 리스트에 속한 라우터인지 여부를 판단하는 단계를 더 포함하는 것을 특징으로 하는 방법
The method according to claim 1,
Further comprising the step of determining whether the router is a router belonging to a router list of an identifier source routing when receiving the route request message
제3항에 있어서,
판단 결과, 식별자 소스 라우팅의 라우터 리스트에 속한 라우터가 아니면, 상기 경로 요청 메시지 포함되어 있는 상기 목적지 식별자에 대응하는 새로운 포워딩 테이블을 생성하는 단계를 더 포함하는 것을 특징으로 하는 방법.
The method of claim 3,
And generating a new forwarding table corresponding to the destination identifier included in the route request message if it is determined that the router is not a router belonging to the router list of the source source routing.
제1항에 있어서,
상기 목적지 식별자에 대한 위치자 정보는 ILMS(Id Locator Mapping System)로부터 수신되는 것을 특징으로 하는 방법.
The method according to claim 1,
And location information for the destination identifier is received from an IL Locator Mapping System (ILMS).
제1항에 있어서,
상기 경로 요청 메시지가 목적지 호스트로 전송된 경우, 상기 목적지 호스트로부터 적어도 하나의 라우터를 거쳐 경로 응답 메시지가 소스 호스트로 전송되는 단계를 더 포함하는 것을 특징으로 하는 방법.
The method according to claim 1,
Further comprising the step of transmitting a route response message from the destination host to the source host via at least one router when the route request message is transmitted to the destination host.
제6항에 있어서,
상기 경로 응답 메시지가 수신되면, 상기 공유키로 데이터를 암호화 하는 단계와;
상기 암호화된 데이터가 상기 목적지 호스트로 전송되는 단계를 더 포함하는 것을 특징으로 하는 방법.
The method according to claim 6,
Encrypting the data with the shared key when the path response message is received;
And transmitting the encrypted data to the destination host.
소스 라우팅을 통한 패킷을 송수신하는 라우팅 장치에 있어서,
목적지 식별자 정보 및 암호화된 공유키를 포함하는 경로 요청 메시지를 수신하고, 상기 목적지 식별자에 대응하는 포워딩 테이블을 검색하는 포워딩 테이블 관리부와;
검색 결과, 상기 포워딩 테이블을 찾지 못하면, 경로 설정 과정을 통하여 상기 포워딩 테이블을 생성하는 경로 설정부와;
상기 포워딩 테이블의 정보에 따라 상기 경로 요청 메시지를 다음 라우터로 전송하는 패킷 포워더를 포함하는 것을 특징으로 하는 장치.
1. A routing apparatus for transmitting and receiving packets through source routing,
A forwarding table management unit for receiving a route request message including destination identifier information and an encrypted shared key, and searching forwarding tables corresponding to the destination identifiers;
A routing unit configured to generate the forwarding table through routing if the forwarding table is not found;
And a packet forwarder for transmitting the route request message to a next router according to the information of the forwarding table.
제8항에 있어서,
상기 경로 설정부는,
자신의 개인키로 상기 공유키를 복호화하고, 상기 목적지 식별자를 다음 라우터의 목적지 식별자로 변경하고, 다음 라우터의 목적지 식별자에 대한 위치자 정보를 획득하고, 상기 위치자 정보에 기초하여 다음 라우터의 정보를 포함하는 새로운 포워딩 테이블을 생성하고, 상기 다음 라우터의 공용키로 상기 공유키 및 다음 라우터의 위치자 정보를 포함하는 경로 요청 메시지를 암호화하는 것을 특징으로 하는 장치.
9. The method of claim 8,
Wherein the path setting unit comprises:
Decodes the shared key with its own private key, changes the destination identifier to the destination identifier of the next router, acquires the location information of the destination identifier of the next router, and updates the information of the next router based on the location information And encrypts the route request message including the location information of the next router and the shared key with the public key of the next router.
제8항에 있어서,
상기 경로 요청 메시지가 수신되면, 상기 경로 설정부는 식별자 소스 라우팅의 라우터 리스트에 속한 라우터인지 여부를 판단하는 것을 특징으로 하는 방법.
9. The method of claim 8,
Wherein when the route request message is received, the route setting unit determines whether the router is a router belonging to the router list of the source source routing.
10항에 있어서,
상기 경로 설정부는 판단 결과, 식별자 소스 라우팅의 라우터 리스트에 속한 라우터가 아니면, 상기 경로 요청 메시지 포함되어 있는 상기 목적지 식별자에 대응하는 새로운 포워딩 테이블을 생성하는 것을 특징으로 하는 장치.
10. The method of claim 10,
Wherein the route setting unit generates a new forwarding table corresponding to the destination identifier included in the route request message if it is not a router belonging to the router list of the source source routing as a result of the determination.
제8항에 있어서,
상기 목적지 식별자에 대한 위치자 정보는 ILMS(Id Locator Mapping System)로부터 수신되는 것을 특징으로 하는 장치.
9. The method of claim 8,
And location information for the destination identifier is received from an IL Locator Mapping System (ILMS).
제8항에 있어서,
상기 경로 요청 메시지가 목적지 호스트로 전송된 경우, 상기 목적지 호스트로부터 적어도 하나의 라우터를 거쳐 경로 응답 메시지가 소스 호스트로 전송되는 것을 특징으로 하는 장치.
9. The method of claim 8,
Wherein the route request message is transmitted from the destination host to the source host via at least one router when the route request message is transmitted to the destination host.
제13항에 있어서,
상기 경로 응답 메시지가 수신되면, 상기 공유키로 데이터가 암호화되고, 상기 암호화된 데이터가 상기 목적지 호스트로 전송되는 것을 특징으로 하는 장치.
14. The method of claim 13,
Wherein when the path response message is received, data is encrypted with the shared key, and the encrypted data is transmitted to the destination host.
KR1020150103760A 2015-07-22 2015-07-22 Source routing method based on id and apparatus using the same KR20170011323A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150103760A KR20170011323A (en) 2015-07-22 2015-07-22 Source routing method based on id and apparatus using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150103760A KR20170011323A (en) 2015-07-22 2015-07-22 Source routing method based on id and apparatus using the same

Publications (1)

Publication Number Publication Date
KR20170011323A true KR20170011323A (en) 2017-02-02

Family

ID=58151754

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150103760A KR20170011323A (en) 2015-07-22 2015-07-22 Source routing method based on id and apparatus using the same

Country Status (1)

Country Link
KR (1) KR20170011323A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102174097B1 (en) * 2019-05-30 2020-11-05 한국과학기술원 Method and system for message transmission based on identifier

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102174097B1 (en) * 2019-05-30 2020-11-05 한국과학기술원 Method and system for message transmission based on identifier

Similar Documents

Publication Publication Date Title
US11025677B2 (en) Using symmetric and asymmetric flow response paths from an autonomous system
US9281955B2 (en) Interoperability of data plane based overlays and control plane based overlays in a network environment
US8837483B2 (en) Mapping private and public addresses
US10601769B2 (en) Mapping between classical URLs and ICN networks
US9860079B2 (en) Redirecting packets for egress from an autonomous system using tenant specific routing and forwarding tables
Farinacci et al. The locator/ID separation protocol (LISP)
US8898334B2 (en) System for network deployment and method for mapping and data forwarding thereof
CN105847158B (en) Method and system for processing routing data
US20140112349A1 (en) Overlay services in communication networks
US10148572B2 (en) Method and system for interest groups in a content centric network
Farinacci et al. LISP Canonical Address Format (LCAF)
WO2012130128A1 (en) Method, device, and system for implementing network identifier conversion
EP3446460B1 (en) Content routing in an ip network that implements information centric networking
Farinacci et al. Rfc 6830: The locator/id separation protocol (lisp)
TWI493946B (en) Virtual private network communication system, routing device and method thereof
Cabellos et al. An Architectural Introduction to the Locator/ID Separation Protocol (LISP)
WO2019201326A1 (en) Secure and reliable on-demand source routing in an information centric network
US7864770B1 (en) Routing messages in a zero-information nested virtual private network
US20220337519A1 (en) Information centric network routing
KR20170011323A (en) Source routing method based on id and apparatus using the same
US20150098468A1 (en) Method of controlling routing of identifier/locator mapping service
CN109194558B (en) Tunnel message authentication forwarding method and system
Saucez et al. Locator/id separation protocol (lisp) impact
Simsek et al. Blind packet forwarding in a hierarchical architecture with locator/identifier split
Cabellos et al. RFC 9299 An Architectural Introduction to the Locator/ID Separation Protocol (LISP)