KR20210067400A - AS-PATH Verification Method for AS Routing Integrity in NDN - Google Patents
AS-PATH Verification Method for AS Routing Integrity in NDN Download PDFInfo
- Publication number
- KR20210067400A KR20210067400A KR1020190156953A KR20190156953A KR20210067400A KR 20210067400 A KR20210067400 A KR 20210067400A KR 1020190156953 A KR1020190156953 A KR 1020190156953A KR 20190156953 A KR20190156953 A KR 20190156953A KR 20210067400 A KR20210067400 A KR 20210067400A
- Authority
- KR
- South Korea
- Prior art keywords
- ndn
- name
- router
- bgp
- network
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/30—Managing network names, e.g. use of aliases or nicknames
- H04L61/301—Name conversion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
- H04L63/0414—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden during transmission, i.e. party's identity is protected against eavesdropping, e.g. by using temporary identifiers, but is known to the other party or parties involved in the communication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
본 발명은 NDN (Named Data Networking) 기반 네트워크에서 네트워크 보안 기술에 관한 것이다. 보다 상세하게는, 본 발명은 NDN 기반 네트워크에서 라우팅 정보가 교환되는 과정에서 발생될 수 있는 무결성 위반에 대한 검증 방법 및 장치에 관한 것이다. 또한, 본 발명은 NDN 기반 네트워크에서 동작하는 Inter-domain 용 라우팅 프로토콜 기술에 관한 것으로 AS 경로에 포함되는 중간 라우터들을 검증하는 방법에 관한 것이다. The present invention relates to a network security technique in an NDN (Named Data Networking) based network. More particularly, the present invention relates to a method and apparatus for verifying integrity violations that may occur in a process of exchanging routing information in an NDN-based network. In addition, the present invention relates to a routing protocol technology for an inter-domain operating in an NDN-based network, and to a method of verifying intermediate routers included in an AS path.
정보 중심 네트워크(ICN, Information Centric Network)는 사용자가 네트워크를 통해 사용하는 것이 콘텐츠라는 점에 착안하여, 콘텐츠가 가지는 정보 (Information) 에 집중 (Centric) 해서 네트워크 (Network) 를 설계한 것이다. 즉, ICN은, 콘텐츠를 가장 잘 표현하는 콘텐츠 네임(Name)을 정보로 사용하는 방식이다. 예를 들어, 콘텐츠 네임을 데이터의 검색어로 사용하여 콘텐츠를 서로 교환할 수 있는 네트워크 환경을 의미한다. The Information Centric Network (ICN) is a network designed by focusing on the information of the content, paying attention to the fact that the content is what the user uses through the network. That is, ICN is a method of using the content name (Name) that best expresses the content as information. For example, it refers to a network environment in which content can be exchanged with each other by using content names as data search terms.
ICN(Information Centric Network)의 대표적인 연구로써 NDN은, 최근 폭발적으로 급증하는 데이터에 대응하기 위해서 효율적이고 안정적인 네트워크 아키텍처를 제공한다. 도 1은 NDN에서 사용되는 인터레스트 패킷(110, Interest packet)과 데이터 패킷(120, Data packet)을 도시한 것이다. Interest 패킷(110)은 접근하고자 하는 콘텐츠의 네임을 입력하고. Data 패킷(120)은 Interest 패킷의 응답으로 요청된 콘텐츠(122)를 수록하여 전달 된다. 또한, Data 패킷(120)에는 배포자의 Private Key를 사용하여 서명(Signature, 121)을 만든 후 이를 Data 패킷에 포함하며, 상기 Data 패킷(120)을 수신한 사용자는 Data 패킷에 존재하는 Key Locator값을 활용하여 배포자의 Public Key을 가져와 수신된 Data 패킷(120)에 대한 검증을 수행 할 수 있게 된다. As a representative study of ICN (Information Centric Network), NDN provides an efficient and stable network architecture in order to cope with the recently explosively increasing data. 1 shows an interest packet (Interest packet) and a data packet (120, Data packet) used in the NDN. The
관련하여, NDN 기반 네트워크를 통한 데이터 또는 콘텐츠 획득 방법을 보다 구체적으로 설명하면 다음과 같다. In this regard, a method for acquiring data or content through an NDN-based network will be described in more detail as follows.
NDN 사용자가, 예를 들어 '/ndn/AppX/movie' 와 같은 네임을 가진 콘텐츠 요청 Interest 패킷(예, 110)을 네트워크에 전달하면, 우선, 이를 수신한 NDN 노드 (예, NDN 에지 라우터)는 Content Store(CS) Cache에서 상기 사용자가 요청한 콘텐츠가 존재하는 지를 확인한다. 만약 CS에 콘텐츠가 존재하면 전술한 Data 패킷(120)에 담아서 사용자에게 전달한다. 하지만, 만약 요청된 콘텐츠가 존재하지 않으면 해당 Interest 패킷(110)이 수신된 물리적 포트(Face)를 PIT(Pending Interest Table)에 저장하고 FIB (Forwarding Information Base)를 참조하여 Interest 패킷(110)을 포워딩 한다. When an NDN user sends a content request interest packet (eg 110) with a name such as '/ndn/AppX/movie' to the network, first, the NDN node (eg, NDN edge router) that received it It is checked whether the content requested by the user exists in the Content Store (CS) Cache. If there is content in the CS, it is put in the
이 후, Interest 패킷(110)이, 콘텐츠가 존재하는 NDN 노드에 도달하면, Data 패킷(120)에 해당 콘텐츠를 수록한 후 사용자에게 전달하게 된다. 이때, 상기 Data 패킷(120)이 NFD (Named Data Networking Forwarding Daemon) 포워드에 도착하면 PIT 테이블을 참조하여 Interest 패킷이 도착된 동일한 경로로 전달되며, 전달된 패킷에 대한 정보는 PIT 테이블에서 삭제된다. 또한, 전송된 Data 패킷은 CS Cache에 저장되어, 필요시 재전송할 수 있게 된다. After that, when the
여기서, 종래 ICN/NDN은 콘텐츠 보안을 위해 네트워크 수준에서 보안 메커니즘을 지원한다. 예를 들어, 도 1의 Data Packet(120)의 Signature 필드(121)와 같이 개별 단위의 콘텐츠 구성은 정당한 권한을 가진 배포자에 의해서 Private Key를 사용하여 서명(Signature) 처리된다. 상기 서명에는 데이터의 배포자 정보, 출처 등이 기록되며 인증키(Public Key)를 가진 사용자가 해당 콘텐츠에 접근 가능한 지 여부를 수록하고 있어 콘텐츠 접근의 보안을 강화할 수 있게 된다.Here, the conventional ICN/NDN supports a security mechanism at the network level for content security. For example, as in the
하지만, NDN 기반의 BGP(Border Gateway Protocol) 라우팅 기술 (NDN-BGP Routing)은, 라우터 상호간 교환되는 라우팅 정보, 특히 AS (Autonomous System), 경로에 대해 임의로 무단 변경되었는지 확인 할 수 있는 어떠한 방법도 제공하지 못하고 있다. 악의적인 AS에 의해서 라우팅 경로가 변경 되어도 그 변경 사실을 알아낼 메커니즘이 존재하지 않기 때문에 다양한 보안 위협 요소 (특히, 무결성 위반) 에 노출될 수 밖에 없는 실정이다.However, the NDN-based BGP (Border Gateway Protocol) routing technology (NDN-BGP Routing) provides any method to check whether the routing information exchanged between routers, especially the AS (Autonomous System), and routes have been arbitrarily changed. can't do it Even if the routing path is changed by a malicious AS, there is no mechanism to detect the change, so it is inevitably exposed to various security threats (especially integrity violation).
따라서 본 발명의 목적은, 전술한 종래 기술의 문제점을 해결하기 위해, NDN 기반 네트워크에서, AS 경로의 무결성을 검증하는 방법 및 장치를 제공하는 데 있다.Accordingly, an object of the present invention is to provide a method and apparatus for verifying the integrity of an AS path in an NDN-based network in order to solve the problems of the prior art.
또한, 본 발명의 목적은, NDN 기반 네트워크에서 동작하는 Inter-domain 용 라우팅 프로토콜에서, AS 경로에 포함되는 중간 라우터들을 검증하는 방법 및 장치를 제공하는 데 있다. Another object of the present invention is to provide a method and apparatus for verifying intermediate routers included in an AS path in a routing protocol for an inter-domain operating in an NDN-based network.
또한, 본 발명의 목적은, 전술한 종래 기술의 문제점을 해결하기 위해, NDN 기반 네트워크에서, AS 경로의 무결성이 검증된 네트워크 보안 방법을 제공하는 데 있다.Another object of the present invention is to provide a network security method in which the integrity of an AS path is verified in an NDN-based network in order to solve the problems of the prior art.
또한, 본 발명의 목적은, 전술한 종래 기술의 문제점을 해결하기 위해, NDN 기반 네트워크에서, NDN-BGP 간 교환되는 라우팅 정보가 불법적인 방법으로 변경되지 않았는지 확인할 수 있는 방법을 제공하는 데 있다.In addition, an object of the present invention is to provide a method for checking whether routing information exchanged between NDN-BGP in an NDN-based network has not been changed in an illegal way in an NDN-based network in order to solve the problems of the prior art. .
또한, 본 발명의 목적은, 전술한 종래 기술의 문제점을 해결하기 위해, 컴퓨터에서 실행될 수 있는, AS 경로의 무결성을 검증하는 프로그램, 및 상기 프로그램이 저장된 기록매체를 제공하는 데 있다.Another object of the present invention is to provide a program that verifies the integrity of an AS path, which can be executed in a computer, and a recording medium in which the program is stored, in order to solve the problems of the prior art.
본 발명의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있으며, 본 발명의 실시예에 의해 보다 분명하게 알게 될 것이다. 또한, 본 발명의 목적 및 장점들은 특허청구범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.Other objects and advantages of the present invention may be understood by the following description, and will become more clearly understood by the examples of the present invention. Further, it will be readily apparent that the objects and advantages of the present invention can be realized by the means and combinations thereof indicated in the claims.
본 발명에 따른 NDN-BGP 라우터에서, NDN 기반 네트워크의 AS 경로 무결성 검증 방법은, AS 경로 검증 용 인터레스트 패킷을 수신하면, AS 번호와 AS 네트워크 네임을 추출하는 단계, 상기 NDN-BGP 라우터 내에 설정된 AS 번호와 상기 추출된 AS번호를 비교하여, 만약 AS 번호가 상이하면 PIT 테이블에서 관련된 엔트리가 존재하는 지를 확인하는 단계, 상기 확인 결과, PIT 테이블에 관련 엔트리가 존재하지 않으면, AS 네트워크 네임을 검색어로 사용하여 이웃 NDN-BGP 라우터의 넥스트-홉(Next-Hop) AS를 검색하는 단계, 만약 상기 넥스트-홉(Next-Hop) AS가 존재하지 않으면 에러 데이터 패킷 (Error Data packet)을 생성하여 응답하고, 반면 상기 넥스트-홉(Next-Hop) AS가 존재하면, 라우터 네임 및 VERIFICATION 네임을 가진 검증 요청 용 Interest 패킷을 생성하여 상기 넥스트-홉(Next-Hop)이 지정하는 NDN-BGP 라우터로 Interest 패킷을 전송하는 단계를 포함한다. In the NDN-BGP router according to the present invention, the AS path integrity verification method of an NDN-based network includes the steps of: extracting an AS number and an AS network name when receiving an interest packet for AS path verification; Comparing the AS number with the extracted AS number, if the AS number is different, checking whether a related entry exists in the PIT table. As a result of the check, if there is no related entry in the PIT table, the AS network name is searched Searching for a next-hop AS of a neighboring NDN-BGP router using On the other hand, if the Next-Hop AS exists, an Interest packet for verification request having a router name and a VERIFICATION name is generated and the interest is sent to the NDN-BGP router designated by the Next-Hop. sending the packet.
본 발명의 실시예에 따르면, AS 경로의 무결성을 검증함에 따라, 무단으로 변경된 AS 경로를 검출하는 것이 가능하게 된다. According to an embodiment of the present invention, by verifying the integrity of the AS path, it becomes possible to detect an unauthorized AS path.
또한, 본 발명의 실시예에 따르면, NDN 환경 하에서 NDN-BGP 간 교환되는 라우팅 정보가 불법적인 방법으로 변경되지 않았는지 확인할 수 있게 됨에 따라, AS 경로가 NDN-BGP의 Update Message 내에서 변경되지 않고 전달되었음을 보장할 수 있게 된다.In addition, according to an embodiment of the present invention, as it is possible to check whether the routing information exchanged between NDN-BGP in an NDN environment has not been changed in an illegal way, the AS path is not changed in the Update Message of NDN-BGP. can be guaranteed to have been delivered.
또한, 본 발명의 실시예에 따르면, 악의적으로 변경된 AS 경로를 사전에 검증하여 잘못된 라우팅 정보가 네트워크 내에 확산되는 것을 미리 방지할 수 있어 라우터 상호간 경로 정보를 안정적으로 교환 할 수 있는 이점이 있다.In addition, according to the embodiment of the present invention, it is possible to prevent the spread of erroneous routing information in the network in advance by verifying the maliciously changed AS path in advance, so that it is possible to stably exchange path information between routers.
도 1은 본 발명에 적용되는 NDN 네트워크에서의, 인터레스트 패킷 및 데이터 패킷을 도시한 것이다.
도 2는 본 발명에 따른, NDN 네트워크에서의, AS 경로 무결성 검증 방법을 도식적으로 도시한 것이다.
도 3은 본 발명에 따른, NDN 네트워크에서의, 업데이트 메시지 포맷을 예를 들어 도시한 것이다.
도 4는 본 발명에 따른, NDN 네트워크에서의, AS 경로 검증에 대한 응답 메시지 포맷을 예를 들어 도시한 것이다.
도 5는 본 발명에 따른, NDN BGP 노드의 인터레스트 패킷 처리 방법을 예를 들어 도시한 것이다.
도 6은 본 발명에 따른, NDN BGP 노드의 데이터 패킷 처리 방법을 예를 들어 도시한 것이다.
도 7은 본 발명에 따른, NDN 네트워크에서의, AS 경로를 검증하는 예를 도시한 것이다. 1 shows an interest packet and a data packet in an NDN network to which the present invention is applied.
2 schematically shows a method for verifying AS path integrity in an NDN network according to the present invention.
3 illustrates an update message format in an NDN network according to the present invention by way of example.
4 illustrates, for example, a format of a response message for AS path verification in an NDN network according to the present invention.
5 is an example of a method for processing an interest packet of an NDN BGP node according to the present invention.
6 illustrates, for example, a data packet processing method of an NDN BGP node according to the present invention.
7 illustrates an example of verifying an AS path in an NDN network according to the present invention.
이하에서는 첨부한 도면을 참고로 하여 본 발명의 실시 예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시 예에 한정되지 않는다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art to which the present invention pertains can easily implement them. However, the present invention may be embodied in various different forms and is not limited to the embodiments described herein.
본 발명의 실시 예를 설명함에 있어서 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그에 대한 상세한 설명은 생략한다. 그리고, 도면에서 본 발명에 대한 설명과 관계없는 부분은 생략하였으며, 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.In describing an embodiment of the present invention, if it is determined that a detailed description of a well-known configuration or function may obscure the gist of the present invention, a detailed description thereof will be omitted. And, in the drawings, parts not related to the description of the present invention are omitted, and similar reference numerals are attached to similar parts.
본 발명에 있어서, 서로 구별되는 구성요소들은 각각의 특징을 명확하게 설명하기 위함이며, 구성요소들이 반드시 분리되는 것을 의미하지는 않는다. 즉, 복수의 구성요소가 통합되어 하나의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있고, 하나의 구성요소가 분산되어 복수의 하드웨어 또는 소프트웨어 단위로 이루어질 수도 있다. 따라서, 별도로 언급하지 않더라도 이와 같이 통합된 또는 분산된 실시 예도 본 발명의 범위에 포함된다. In the present invention, the components that are distinguished from each other are for clearly explaining their respective characteristics, and do not necessarily mean that the components are separated. That is, a plurality of components may be integrated to form one hardware or software unit, or one component may be distributed to form a plurality of hardware or software units. Accordingly, even if not specifically mentioned, such integrated or dispersed embodiments are also included in the scope of the present invention.
본 발명에 있어서, 다양한 실시예에서 설명하는 구성요소들이 반드시 필수적인 구성요소들을 의미하는 것은 아니며, 일부는 선택적인 구성요소일 수 있다. 따라서, 일 실시 예에서 설명하는 구성요소들의 부분집합으로 구성되는 실시 예도 본 발명의 범위에 포함된다. 또한, 다양한 실시 예에서 설명하는 구성요소들에 추가적으로 다른 구성요소를 포함하는 실시 예도 본 발명의 범위에 포함된다. In the present invention, components described in various embodiments do not necessarily mean essential components, and some may be optional components. Accordingly, an embodiment composed of a subset of components described in one embodiment is also included in the scope of the present invention. In addition, embodiments including other components in addition to the components described in various embodiments are also included in the scope of the present invention.
도 2는 본 발명에 따른, NDN 네트워크에서의, AS 경로 무결성 검증 방법을 도식적으로 도시한 것이다. 2 schematically shows a method for verifying AS path integrity in an NDN network according to the present invention.
우선, 본 발명 에서 'AS (Autonomous System)'는 NDN 기반 네트워크에서, 독립적으로 분리된 네트워크 단위를 의미할 수 있다. 도 2를 참조하면, 독립된 4개의 내트워크 단위 (210, 220, 230, 240)이 각각 AS에 해당될 수 있다. 또한, AS 간의 연결을 담당하는 라우터(예, R1,…,R9)를 특히, 'NDN-BGP 라우터' 또는 'NDN-BGP 노드' 또는 'NDN-BGP' 라고 한다. First, in the present invention, 'AS (Autonomous System)' may mean an independently separated network unit in an NDN-based network. Referring to FIG. 2 , four
관련하여, AS 내부에서 발생한 라우팅 정보는 외부에 영향을 미치지 못하는 것이 일반적이다. 또한, AS 상호 간에 라우팅 정보(예를 들어, NLRI, AS Path 및 각종 Attributes 들)를 교환하는 프로토콜은 일반적으로 BGPv4 (IP기반)가 사용되고 있다. 단, 상기 BGPv4는 AS 간에 인증과 관련된 보안 메커니즘이 충분하지 않기 때문에, 보안 위협 요소, 예를 들어, 무결성 위반, 메시지 재전송, 또는 메시지 삽입 등, 에 많은 문제점들을 가지고 있다. In this regard, it is common that routing information generated inside the AS does not affect the outside. In addition, BGPv4 (IP-based) is generally used as a protocol for exchanging routing information (eg, NLRI, AS Path, and various attributes) between ASs. However, since the security mechanism related to authentication between ASs is insufficient, the BGPv4 has many problems in security threats, for example, integrity violation, message retransmission, or message insertion.
현재, 이들 보안 위협 요소와 관련된 대응 방안으로 많은 연구들이 진행되고 있지만 많은 비용과 새로운 제반 문제점들이 발생하고 있기 때문에 널리 활용되지 못하는 실정이다. 특히, 상기 BGPv4는 라우터간 인증과 같은 근본적인 보안 취약점으로 인하여 많은 보안 위협 요소들을 가질 수 밖에 없는 실정이다.Currently, many studies are being conducted on countermeasures related to these security threats, but they are not widely used because of high costs and new problems. In particular, the BGPv4 has no choice but to have many security threats due to fundamental security vulnerabilities such as authentication between routers.
이때, 본 발명에 따른, NDN 네트워크에서의, AS 경로 무결성 검증 방법은, 다음과 같은 필수 조건을 요구한다.At this time, the AS path integrity verification method in the NDN network according to the present invention requires the following essential conditions.
첫째, 본 발명은 Name based 라우팅 정보를 교환할 수 있는 NDN-BGP(R1,…,R9)를 포함하고, 해당 NDN-BGP(R1,…,R9)는 네트워크 내에서 고유한 라우터 네임을 가진다. 예를 들어, 도 2의 R1 NDN-RGP는 '/AS100-ETRI/Router/NDN-BGP' 로, R9 NDN-RGP는 '/AS500-SKB/Router9/NDN-BGP' 로, 고유한 네임을 가질 수 있다. 여기서, 독립된 AS들은 상호간에 라우팅 정보를 교환해야 하므로, BGP가 지원할 수 없는 Network Name Prefix를 인지할 수 있는 NDN-BGP가 필요하며, 모든 NDN-BGP 라우터들은 NDN 네트워크에서 유일하게 식별할 수 있는 네임을 갖고 있는 것이 바람직하다.First, the present invention includes NDN-BGP (R1, ..., R9) capable of exchanging name-based routing information, and the corresponding NDN-BGP (R1, ..., R9) has a unique router name within the network. For example, R1 NDN-RGP in FIG. 2 is '/AS100-ETRI/Router/NDN-BGP', and R9 NDN-RGP is '/AS500-SKB/Router9/NDN-BGP', which will have a unique name. can Here, since independent ASs need to exchange routing information with each other, an NDN-BGP capable of recognizing a Network Name Prefix that BGP cannot support is required, and all NDN-BGP routers have a uniquely identifiable name in the NDN network. It is preferable to have
둘째, 본 발명이 적용된 NDN 네트워크에 접속하는 모든 NDN-BGP 라우터들은 상호간의 공개 키(Public Key)를 검색할 수 있도록 Key 정보를 PIB(Public Key Information Base)를 통하여 알 수 있어야 한다. 예를 들어, 전술한 바와 같이 NDN 네트워크에서는 Interest/Data 패킷을 사용하여 정보를 교환한다. 따라서, 배포자(Producer)는 AS 경로 검증에 대한 데이터 요청을 받게 되면, AS-PATH Attribute를 Data 패킷에 담아서 되돌려 주며, 이때 데이터 배포자의 개인 키(Private Key)를 이용하여 상기 배포할 데이터를 서명(Signature) 한 후, 대응 Key에 해당하는 Public Key에 대한 위치정보를 Data 패킷에 포함하여 전달할 수 있다. 따라서, Data 패킷을 수신한 사용자(Consumer)는 Data 패킷에 포함된 서명(Signature) 확인에 필요한 Public Key를 검색하기 위해 Key Locator에서 Public Key 위치정보를 확보하여 전술한 PIB에 Public Key를 요청하게 된다. 이후, PIB를 통해 Public Key가 확보되면 이를 이용하여 Data 패킷의 유효성을 검증하게 된다. Second, all NDN-BGP routers accessing the NDN network to which the present invention is applied must be able to know key information through a Public Key Information Base (PIB) so that they can search for a mutual public key. For example, as described above, in an NDN network, information is exchanged using Interest/Data packets. Therefore, when the producer receives a data request for AS path verification, it returns the AS-PATH attribute in a data packet, and at this time, the data to be distributed is signed using the data distributor's private key (Private Key). Signature), the location information on the public key corresponding to the corresponding key can be transmitted by being included in the data packet. Therefore, the user (Consumer) who has received the data packet secures the location information of the public key in the key locator to retrieve the public key required to check the signature included in the data packet and requests the public key from the aforementioned PIB. . Afterwards, when the public key is secured through the PIB, the validity of the data packet is verified using it.
셋째, NDN-BGP 라우터는 단일 AS 또는 서브 넷 (Sub-network)으로 구성된 대규모 AS에서 운용될 수 있다. 예를 들어, NDN-BGP 라우터를 지칭하는 Router Name Prefix는 AS 단위로 부여된 Network Name으로 시작된다. Network Name은 최대 2개의 Name Component (예, 서브 넷이 존재하는 경우)로 구성될 수 있기 때문에 해당 Name Format을 분석할 수 있는 모듈을 지원해야 한다.Third, the NDN-BGP router can be operated in a single AS or a large-scale AS composed of a subnetwork. For example, the Router Name Prefix that refers to the NDN-BGP router starts with a Network Name assigned in units of AS. Since Network Name can be composed of up to 2 Name Component (eg, when subnet exists), it is necessary to support a module that can analyze the corresponding Name Format.
다시 도 2를 참조하면, AS 별로 독립적으로 NDN-BGP가 구동을 시작하면, 운용자에 의해서 등록된 NLRI (Network Name Prefix : 이는 콘텐츠가 위치하는 AS에 할당된 Network Name Prefix를 의미한다), AS-PATH 그리고 Next-hop로 구성된 업데이트 메시지(Update Message)를 Data 패킷에 실어서 이웃 라우터로 전송한다. 여기서, 상기 Data 패킷을 수신한 NDN-BGP는 상기 업데이트 메시지 로부터 라우팅 정보를 검출하여 자신의 라우팅 정보 베이스 (Routing Information Base)를 구축한다. 또한, 수신된 AS-PATH에 자신의 AS번호를 추가하여 새로운 업데이트 메시지를 생성한 후, 이웃 라우터에게 전달한다. 상기 과정을 거치면서 NDN-BGP 라우팅에 참여하는 모든 라우터들은 다른 라우터들의 업데이트 메시지를 교환하는 것이 가능하게 되어, 도 2에서 붉은 색으로 표시한 바와 같은 특정 AS 네트워크로 향하는 AS 경로를 구성할 수 있게 된다. Referring again to FIG. 2, when NDN-BGP starts running independently for each AS, NLRI (Network Name Prefix: This means a Network Name Prefix assigned to the AS where the content is located), AS- An Update Message composed of PATH and Next-hop is loaded into a data packet and transmitted to a neighboring router. Here, the NDN-BGP receiving the data packet detects routing information from the update message and builds its own routing information base. In addition, a new update message is generated by adding its own AS number to the received AS-PATH, and then delivered to the neighboring router. Through the above process, all routers participating in NDN-BGP routing become able to exchange update messages from other routers, so that an AS route to a specific AS network as indicated in red in FIG. 2 can be configured. do.
또한, 도 2를 참조하면, 예를 들어, 콘텐츠 배포자는 자신의 Application Name Prefix (예, '/ndn/appX/movie', 211)를 라우터 R2 ('/AS100-ETRI/Router1/NDN-BGP')에게 등록한 후, 라우터 R2에 등록된 Network Name Prefix(“”을 자신의 Application Name과 함께 NDNS(250, Name Service for NDN)에 등록한다. 이 경우, 사용자(예, R9 라우터에 위치한 Consumer 라고 가정) 가 '/ndn/appX/movie' 네임을 가진 콘텐츠를 요청하기 위해서는 콘텐츠가 위치하는 Network Name을 NDNS(250)를 통하여 획득하고, 해당 콘텐츠('/ndn/appX/movie') 네임과 Network Name을 Interest 패킷에 담아서 R9 라우터에 전달하게 된다. 이후, NDN 네트워크 라우터를 통해, 콘텐츠 요청 Interest 패킷을 AS 경로를 따라 콘텐츠가 위치한 최종 라우터 R2까지 전달할 수 있게 된다.Also, referring to FIG. 2, for example, the content distributor sets its Application Name Prefix (eg, '/ndn/appX/movie', 211) to router R2 ('/AS100-ETRI/Router1/NDN-BGP'). ), then register the Network Name Prefix (“”) registered in router R2 to NDNS (250, Name Service for NDN) along with its own Application Name. In this case, assuming that the user (eg, a Consumer located in the R9 router) ) to request a content with the name '/ndn/appX/movie', obtains the Network Name where the content is located through the
여기서, 만약 NDN-BGP 라우터들이 상기 업데이트 메시지를 통하여 라우팅 정보(특히, AS-PATH)를 교환하는 과정에서 악의적인 라우터가 AS-PATH에 자신의 AS 번호를 추가하지 않고 다른 AS번호를 추가하는 경우, 이후 모든 라우터들은 잘못된 AS PATH를 사용하여 경로 계산을 하게 된다. 반면, 라우터들은 AS-PATH에 존재하는 AS 번호가 중간에 변경된 사실을 알 수 없다. 즉, NDN-BGP는 NDN 일반적인 수준에서 제공하는 상호 인증 메커니즘(예, Signature)을 활용은 하지만, 상기 업데이트 메시지의 AS-PATH가 중간에 악의적으로 변경 되었는 지 여부는 알아낼 수 있는 방법이 없다. Here, if a malicious router adds another AS number without adding its own AS number to the AS-PATH while the NDN-BGP routers exchange routing information (especially AS-PATH) through the update message , then all routers use the wrong AS PATH to calculate the path. On the other hand, routers cannot know that the AS number in the AS-PATH has been changed in the middle. That is, NDN-BGP utilizes the mutual authentication mechanism (eg, Signature) provided at the general level of NDN, but there is no way to find out whether the AS-PATH of the update message has been maliciously changed in the middle.
따라서 본 발명은 NDN-BGP의 AS-PATH 속성값이 불법적으로 변경되지 않았 음을 확인할 수 있는 검증 방법을 제공하고자 한다. Therefore, the present invention aims to provide a verification method that can confirm that the AS-PATH attribute value of NDN-BGP is not illegally changed.
관련하여, 본 발명은 AS-PATH의 불법 변조에 대한 검증을 위해서, NDN 네트워크에서 제공하는 Data-Centric Security 서명(Signature) 기능을 사용한다. 예를 들어, NDN에서, Data 패킷의 콘텐츠는 서명(Signature)을 통하여 패킷 네임과 안정적으로 결합된다. Data 패킷과 콘텐츠의 검증은 서명의 유효 여부에 의존할 수 있다. 즉, 서명된 Data 패킷에 Public key를 사용하여 데이터에 대한 무결성 위반을 확인할 뿐만 아니라 NDN-BGP 라우터 간 상호 인증까지 확인할 수 있다. 특히, 본 발명의 실시예에 의한, NDN-BGP는 'Network Name', 'Router Name', 'Message Type Name', 'Router Process Name', 'Key and Certificate Name'과 같이 새롭게 정의된 네임 정책(Naming Policy)을 사용하여 업데이트 메시지를 교환하게 된다. 관련하여, 본 발명에 적용되는, NDN-BGP에서의 상기 네임 정책(Naming Policy)을 구체적으로 설명하면 다음과 같다. In relation, the present invention uses the Data-Centric Security signature function provided by the NDN network for verification of the illegal alteration of the AS-PATH. For example, in NDN, the contents of a Data packet are reliably combined with a packet name through a signature. Verification of data packets and contents may depend on whether the signature is valid or not. In other words, by using the public key in the signed data packet, not only can the integrity violation of data be checked, but also mutual authentication between NDN-BGP routers can be checked. In particular, according to an embodiment of the present invention, NDN-BGP is a newly defined name policy such as 'Network Name', 'Router Name', 'Message Type Name', 'Router Process Name', 'Key and Certificate Name' ( Naming Policy) is used to exchange update messages. In relation to this, the naming policy in NDN-BGP applied to the present invention will be described in detail as follows.
1. 네트워크 네임 (Network Name)1. Network Name
DCN Routing 프로토콜(Protocol)은 포워딩과 라우팅을 위해 확장성(Scalability)을 고려하여 NDN의 Map-and-Encap 기법을 사용한다. DCN Routing에 사용되는 Network Name은 1~2개의 Name 컴포넌트를 갖는다. 각 AS에 할당되는 Network Name은 단일 컴포넌트로 구성된 네임이 부여되며, 예를 들어, '/AS1324_ETRI', 규모가 큰 AS가 다수개의 IGP region으로 구성될 경우, 각 IGP region에 서브넷(Subnetwork) Name을 부여한다. 이때, 서브넷 Name은 AS에 부여된 Network Name이 함께 들어간 네임으로 구성된다. 예를 들어, 서브넷 Name의 예로는 '/AS1234_ETRI/seoul_lab' 이 될 수 있다. DCN Routing Protocol uses NDN Map-and-Encap technique for forwarding and routing in consideration of scalability. Network Name used for DCN Routing has 1 or 2 Name components. The Network Name assigned to each AS is given a name composed of a single component. For example, '/AS1324_ETRI'. If a large AS consists of multiple IGP regions, assign a subnetwork name to each IGP region. give In this case, the subnet name is composed of a name in which the network name assigned to the AS is included. For example, an example of the subnet name may be '/AS1234_ETRI/seoul_lab'.
[표1]은 상기 네트워크 네임 정책을 예시적으로 개시한 것이다. [Table 1] exemplarily discloses the network name policy.
2. 라우터 네임 (Router name)2. Router name
라우터 네임은 Network의 형태에 따라 네임이 다르게 부여된다. [표2]는 라우터 네임 정책을 예시적으로 개시한 것이다. The router name is assigned differently depending on the network type. [Table 2] exemplarily discloses a router name policy.
3. 메시지 타입 네임 (Message Type Name)3. Message Type Name
NDN-BGP 라우터는 운용과 관련하여 여러 개의 Message 타입을 지원하고 있다. [표3]은 메시지 타입 네임 정책을 예시적으로 개시한 것이다. NDN-BGP router supports several message types in relation to operation. [Table 3] exemplarily discloses a message type name policy.
구체적으로, 메시지 타입(Message type)은 다음과 같은 종류를 포함한다. 예를 들어, 'OPEN' 타입은, 이웃 라우터 들로부터 Interest 패킷을 수신하면, 각 라우터들은 그 이웃 라우터와 논리적으로 연결하기 위해서 사용하는 메시지이다. 'UPDATE' 타입은 라우팅 테이블이 갱신되는 해당 갱신 정보를 광고하기 위해, 전송되는 메시지이다. 'NOTIFICATION' 타입은 라우터의 오동작이 발생하는 경우에, 해당 이벤트를 통보하기 위해서 전송하는 메시지 이다. 'KEEP-ALIVE' 타입은 NDN-BGP 세션 또는 상대 노드의 생존 여부를 확인하는 메커니즘에 사용되는 메시지이다. 또한, 'VERIFICATION' 타입은 수신된 AS-PATH 정보의 검증을 위해서 이전 노드에 검증을 요청하는 메시지이다. Specifically, the message type includes the following types. For example, the 'OPEN' type is a message used by each router to logically connect with the neighboring routers when receiving an Interest packet from the neighboring routers. The 'UPDATE' type is a message transmitted to advertise the corresponding update information that the routing table is updated. The 'NOTIFICATION' type is a message transmitted to notify the event when a router malfunction occurs. The 'KEEP-ALIVE' type is a message used for a mechanism to check whether an NDN-BGP session or a counterpart node survives. In addition, the 'VERIFICATION' type is a message requesting verification to the previous node for verification of the received AS-PATH information.
또한, 'Sequence Number' 는 메시지를 보내는 라우터에서 부여한 번호를 의미한다. 예를 들어, 이전 번호보다 높은 번호를 가진 메시지를 수신한 라우터는 이전 라우팅 정보를 갱신한다. Also, 'Sequence Number' means a number assigned by the router sending the message. For example, a router that receives a message with a higher number than the previous number updates the previous routing information.
4. 라우터 프로세스 네임 (Router Process(NDN-BGP) Name)4. Router Process (NDN-BGP) Name
NDN-BGP의 프로세스 네임은 라우터 네임 컴포넌트에 “NBGP”가 추가되어 만들어 진다. [표4]는 라우터 프로세스 네임 정책을 예시적으로 개시한 것이다. The process name of NDN-BGP is created by adding “NBGP” to the router name component. [Table 4] exemplarily discloses the router process name policy.
5. Key and Certificate Name5. Key and Certificate Name
[표5]는 Key and Certificate 네임 정책을 예시적으로 개시한 것이다. [Table 5] exemplarily discloses the Key and Certificate name policy.
도 3은 본 발명에 따른, NDN 네트워크에서의, 업데이트 메시지 포맷을 예를 들어 도시한 것이다. 도 3에 의하면, AS-PATH Attribute(312)는 업데이트 메시지용 데이터 패킷(300)으로 전달되며 NDN-BGP가 해당 AS 경로에 대한 무결성을 검증하기 위해 사용한다.3 illustrates an update message format in an NDN network according to the present invention by way of example. Referring to FIG. 3 , the AS-
구체적으로, 업데이트 메시지용 데이터 패킷(300)을 수신한 NDN-BGP는 AS 네트워크 네임에 도달할 수 있는 AS 경로 검증을 위해서, Path Attribute 필드(3121)에서 AS 리스트를 추출한다. 이후, 리스트의 엔트리(Entry) 개수만큼 검증 용 Interest 패킷을 이웃 노드(즉, 업데이트 메시지 패킷을 송신한 노드)로 전송한다. 여기서, 상기 검증 용 Interest 패킷의 Name은 BGP Neighbor 세션을 연결할 때 사용한 이웃 라우터 네임 컴포넌트와 'VERIFICATION' 네임 컴포넌트를 붙여 구성한다. 또한, Interest 패킷에는 Application Parameter 필드에 경로 검증을 수행할 AS 번호(이는 NDN-BGP 라우터에 사전 할당 됨)와 AS 네트워크 네임이 함께 포함된다. Specifically, the NDN-BGP that has received the
도 4는 본 발명에 따른, NDN 네트워크에서의, AS 경로 검증에 대한 응답 메시지 포맷을 예를 들어 도시한 것이다. 예를 들어, 검증 용 인터레스트 패킷 ('VERIFICATION' Interest packet)을 수신한 이웃 NDN-BGP는 AS 번호가 자신의 AS번호와 일치하고, AS 네트워크 네임에 대한 AS-PATH가 RIB에 존재하면 도 4와 같은 메시지 형태로 응답 메시지 데이터 패킷을 구성한다. 4 illustrates, for example, a format of a response message for AS path verification in an NDN network according to the present invention. For example, if the neighbor NDN-BGP that has received the 'VERIFICATION' Interest packet for verification has an AS number that matches its own AS number, and the AS-PATH for the AS network name exists in the RIB, FIG. It composes the response message data packet in the same message format.
만약, AS 네트워크 네임(NLRI)에 대한 라우팅 정보가 존재하지 않으면, 도 4의 Total Path Attribute Length(421)를 '0' 으로 설정하여 전달한다. AS 경로 검증 요청을 보낸 NDN-BGP가 AS-PATH 검증 요청에 대한 응답 메시지 패킷을 수신하면, Data 패킷에서 AS-PATH Attributes(420)를 추출하여 AS 경로 무결성을 확인한다.If routing information for the AS network name (NLRI) does not exist, the Total
만약, 경로 검증이 요청된 NLRI 값이 AS 자신에 등록된 Network Name Prefix이면 'Total Path Attribute Length = 1', 'AS-PATH = 자신의 AS번호'를 붙여서 응답한다.If the NLRI value for which path verification is requested is a Network Name Prefix registered in the AS itself, 'Total Path Attribute Length = 1' and 'AS-PATH = own AS number' are appended to respond.
도 5는 본 발명에 따른, NDN BGP 노드의 인터레스트 패킷 처리 방법을 예를 들어 도시한 것이다. 예를 들어, 도 5는 NDN-BGP가 AS 경로 검증 Interest 패킷을 수신했을 때(500)의 이후 처리 절차를 나타낸다. 5 is an example of a method for processing an interest packet of an NDN BGP node according to the present invention. For example, FIG. 5 shows a subsequent processing procedure when the NDN-BGP receives an AS path verification Interest packet ( 500 ).
우선, NDN-BGP가 VERIFICATION 타입의 Interest 패킷을 수신하면 이를 Decode하여 AS 번호와 NLRI(AS 네트워크 네임)를 추출한다. (510). First, when the NDN-BGP receives the VERIFICATION type interest packet, it decodes it and extracts the AS number and NLRI (AS network name). (510).
만약, Data 패킷을 수신한 라우터 자신에 설정된 AS 번호와 추출된 AS번호를 비교하여(520) 같으면 AS 네트워크 네임에 해당된 AS 리스트를 Update Message 내 Path Attribute에 담아서 Data 패킷으로 응답한다. (521) If the AS number set in the router itself that has received the data packet is compared with the extracted AS number (520), and if they are the same, the AS list corresponding to the AS network name is included in the Path Attribute in the Update Message and responded with a data packet. (521)
또한, 만약 AS 번호가 다르면 PIT 테이블에서 [AS번호 + AS 네트워크 네임]에 대한 Entry가 있는지 확인한다 (530). 만약 BGP-PIT에 Entry가 존재하면 해당 요청에 대한 Error Data (Already Exist) 패킷을 만들어 응답한다 (531).Also, if the AS number is different, it is checked whether there is an entry for [AS number + AS network name] in the PIT table (530). If an entry exists in the BGP-PIT, an Error Data (Already Exist) packet is created for the request and responded (531).
또한, 만약 BGP-PIT에 Entry가 존재하지 않으면 AS 네트워크 네임을 검색어로 사용하여 Next-Hop(NDN-BGP Neighbor)을 검색한다 (540).Also, if there is no entry in the BGP-PIT, a Next-Hop (NDN-BGP Neighbor) is searched using the AS network name as a search term (540).
만약 Next-Hop AS가 존재하지 않으면 Error Data 패킷을 만들어 응답한다 (550). 반면 Next-Hop AS가 존재하면, (라우터 네임/VERIFICATION) 네임을 가진 검증 요청 Interest 패킷을 만들어 해당 Next-Hop이 지정하는 NDN-BGP 세션으로 Interest 패킷을 전송한다 (560). If the Next-Hop AS does not exist, it responds by creating an Error Data packet (550). On the other hand, if the Next-Hop AS exists, a verification request interest packet with a name (Router Name/VERIFICATION) is created and the Interest packet is transmitted to the NDN-BGP session designated by the Next-Hop (560).
상기 검증 용 Interest 패킷이 정상적으로 전송되면 본 Interest 패킷 정보를 BGP-PIT 테이블에 추가한다 (570).When the verification interest packet is normally transmitted, this interest packet information is added to the BGP-PIT table (570).
도 6은 본 발명에 따른, NDN BGP 노드의 데이터 패킷 처리 방법을 예를 들어 도시한 것이다. 즉, 도 6은 NDN-BGP에서, 상기 검증 용 Interest 패킷에 대한 응답으로 Data 패킷을 수신했을 때(600)의 이후 처리 절차를 나타낸다. 6 illustrates, for example, a data packet processing method of an NDN BGP node according to the present invention. That is, FIG. 6 shows a subsequent processing procedure when a data packet is received in response to the interest packet for verification in the NDN-BGP (600).
NDN-BGP가 VERIFICATION 타입의 Data 패킷을 수신하면 이를 decode 하여 AS번호, AS 네트워크 네임을 추출 한다 (610). 이후, 추출된 AS번호와 라우터에 등록된 AS번호가 같은 지 비교하고(620), 만약 같으면 수신된 Data 패킷을 폐기한다 (621). 반면, AS 번호가 다르면, (추출된 AS 번호 + AS 네트워크 네임)을 이용하여 BGP-PIT 테이블에서 해당 요청 Interest가 있는지 검색한다 (630). When the NDN-BGP receives the VERIFICATION type data packet, it decodes it and extracts the AS number and AS network name (610). Thereafter, the extracted AS number and the AS number registered in the router are compared (620), and if they are the same, the received data packet is discarded (621). On the other hand, if the AS number is different, it is searched for whether there is a corresponding requested interest in the BGP-PIT table using (extracted AS number + AS network name) (630).
이때, 만약, BGP-PIT에 해당 Entry가 존재하지 않으면 수신된 Data 패킷을 폐기한다 (631) 반면, BGP-PIT에 해당 Entry가 존재하면, Entry에 저장된 Interest Name을 가지고 새로운 Data 패킷을 생성한다 (640). At this time, if the corresponding entry does not exist in the BGP-PIT, the received data packet is discarded (631). On the other hand, if the corresponding entry exists in the BGP-PIT, a new data packet is created with the interest name stored in the entry ( 640).
이후, 새롭게 생성된 Data 패킷에 Path Attribute 값을 복사한 후 Entry의 IncomingFace가 가리키는 방향으로 Data 패킷을 전송한다 (650). 또한 전송이 완료되면 상기 630 단계에서 검색된 Entry를 BGP-PIT 테이블에서 삭제한다 (660).Thereafter, after copying the Path Attribute value to the newly created data packet, the data packet is transmitted in the direction indicated by the IncomingFace of the entry ( 650 ). Also, when the transmission is completed, the entry found in
[표6]은 NDN-BGP에서 관리하는 PIT (Padding Interest Table)을 예를 들어 개시한 것이다. 즉, NDN 포워더 인 NFD에서 운용하고 있는 PIT와 유사한 기능을 하는 NDN-BGP 용 PIT(BGP-PIT)를 새롭게 설계한다. 전술한 바와 같이, 상기 검증 용 Interest 패킷과 관련된 전달 정보를 일정시간 동안 기록하고 있다가 응답 패킷 (즉, AS 경로 검증 Data 패킷)이 도착하면 BGP-PIT를 참조하여 요청된 Interest가 수신된 동일한 경로로 전달하게 된다.[Table 6] discloses the PIT (Padding Interest Table) managed by NDN-BGP as an example. In other words, a PIT for NDN-BGP (BGP-PIT) that performs a function similar to the PIT operated by NFD, which is an NDN forwarder, is newly designed. As described above, when the transmission information related to the verification interest packet is recorded for a certain period of time and a response packet (ie, AS path verification data packet) arrives, it refers to the BGP-PIT on the same path where the requested interest was received. will be transmitted to
[표 6]에서 Entry Number는 상기 BGP-PIT 테이블의 인덱스이며 엔트리가 추가될 때 자동 증가된다. In [Table 6], Entry Number is an index of the BGP-PIT table and is automatically incremented when an entry is added.
또한, [표6] BGP-PIT 테이블에서, 'AS-NLRI' 필드는 Verification Interest의 Application Parameter 필드에 담겨있는 값으로 AS 네트워크 네임(NLRI에 해당 됨)에 대한 경로 검증(FIB 테이블 검색)을 수행할 지 여부를 결정하기 위해서 AS 번호를 사용할 목적으로 정의한다. Also, in [Table 6] BGP-PIT table, the 'AS-NLRI' field is a value contained in the Application Parameter field of Verification Interest, and path verification (FIB table search) is performed for the AS network name (corresponding to NLRI) It is defined for the purpose of using the AS number to determine whether or not to do so.
또한, [표6] BGP-PIT 테이블에서, 'Incoming Face' 필드는 본 검증 용 Interest 패킷이 수신된 Face Id를 지정한다. Also, in [Table 6] BGP-PIT table, the 'Incoming Face' field designates the Face ID from which this verification interest packet was received.
또한, [표6] BGP-PIT 테이블에서, 'Interest Name' 필드는 검증 용 Interest의 Name을 저장하기 위해 정의한 필드이다.Also, in [Table 6] BGP-PIT table, the 'Interest Name' field is a field defined to store the name of the interest for verification.
도 7은 본 발명에 따른, NDN 네트워크에서의, AS 경로를 검증하는 실제 사례를 예를 들어 도시한 것이다. 도 7은 본 발명의 전술한 NDN-BGP가 AS-PATH 검증 동작을 보다 구체적인 사례로 설명하기 위한 NDN 네트워크의 예를 도시한 것이다. 7 illustrates an example of an actual case of verifying an AS path in an NDN network according to the present invention. 7 shows an example of an NDN network for explaining the above-described NDN-BGP AS-PATH verification operation as a more specific example of the present invention.
예를 들어, 도 7의 네트워크에서 원형 노드 (710, 720, 730, 740)는 모두 NDN-BGP 라우터를 의미한다. 이하, '/AS500/RT1/NBGP' 라우터(710)의 입장에서 상세 동작을 설명한다. For example, in the network of FIG. 7 ,
먼저, 라우터(710) 운용자에 의해서 수동으로 이웃 라우터(720)와 Neighbor 관계를 맺는다. 이때, NDN-BGP 세션 연결은 라우터 네임 (예를 들어, /AS400/RT2/NBGP) 을 사용한다. 이때, NDN-BGP 패킷은 NDN의 포워더(NFD)를 통하여 송수신 된다. First, the operator of the
NDN-BGP 세션이 완성되면 KEEP ALIVE 메시지가 주기적으로 상호 라우터 사이에서 교환된다.When the NDN-BGP session is completed, KEEP ALIVE messages are periodically exchanged between mutual routers.
만약, 라우터에 문제가 발생하면 NOTIFICATION 메시지를 이용하여 해당 정보를 통지한다. 또한, 네트워크 운용자에 의해서 AS에 부여된 Network Name Prefix가 등록되면 자동적으로 NDN-BGP 세션을 통해서 해당 Network Name Prefix 정보를 업데이트 메시지 (이는 NLRI 필드에 표현됨)를 통해서 광고한다. If a problem occurs in the router, the corresponding information is notified using the NOTIFICATION message. In addition, when the Network Name Prefix assigned to the AS by the network operator is registered, the corresponding Network Name Prefix information is automatically advertised through an update message (which is expressed in the NLRI field) through the NDN-BGP session.
구체적으로는, 네트워크 전체에서 NDN-BGP의 AS 경로 검증 절차는 다음과 같다. Specifically, the AS path verification procedure of NDN-BGP in the entire network is as follows.
네트워크 운용자는 '/AS200/RT4/' 라우터(740)에 수동으로 Network Name 인 '/AS200_SEOUL'을 등록한다. '/AS200/RT4' 라우터(740)는 등록된 Network Name을 NDN-BGP 라우팅에 참여하는 모든 노드 ('/AS300/RT3', '/AS400/RT2', '/AS500/RT1') 에게 라우팅 정보를 전달한다. 이때, 가장 최종적으로 Data 패킷(업데이트 메시지)을 수신한 '/AS500/RT1' 라우터(710)는 상기 데이터 패킷내 AS-PATH Attribute 에서 AS 리스트를 추출한다. 예를 들어, AS 리스트는 400, 300, 200 값을 가질 것이다. A network operator manually registers a Network Name of '/AS200_SEOUL' in the '/AS200/RT4/'
'/AS500/RT1' 라우터(710)는 추출된 AS 번호를 순차적으로 따라가면서 검증 용 Interest 패킷을 전송하면서 AS-PATH 경로 검증을 수행한다.The '/AS500/RT1'
우선, '/AS500/RT1' 라우터(710)는 interest.VERIFICATION 패킷에 AS400,NLRI(/AS200/RT4)를 추가하여 '/AS400/RT2' 라우터(720)에게 전송한다. 이를 이를 수신한 '/AS400/RT2' 라우터(720)는 '/AS200_SEOUL'에 대한 AS-PATH를 확인하여 Data 패킷으로 응답한다 (711). First, the '/AS500/RT1'
경로 검증 용 Interest 패킷을 수신한 노드가 경로 검증에 해당하지 않는다면 (/AS300/RT3이 AS200을 수신 할 때) /AS200_SEOUL로 향하는 Next-Hop 노드를 검색하여 Interest.VERIFICATION 패킷을 다음 노드로 전달한다. 즉, '/AS500/RT1' 라우터(710)는 AS 번호 400, 300, 200 순으로 /AS200_SEOUL에 대한 경로 검증을 반복적으로 수행한다 (712, 713). If the node that received the interest packet for path verification does not correspond to path verification (when /AS300/RT3 receives AS200), the Next-Hop node directed to /AS200_SEOUL is searched and the Interest.VERIFICATION packet is delivered to the next node. That is, the '/AS500/RT1'
'/AS500/RT1' 라우터(710)는 경로 검증이 정상적으로 완료되면 해당 '/AS200_SEOUL'에 대한 라우팅 정보를 NDN-BGP의 RIB 테이블(714)에 추가하게 된다. When the path verification is normally completed, the '/AS500/RT1'
도 8은 본 발명에 따른, NDN 라우터(1100)의 구성을 예를 들어 도시한 것이다. NDN 라우터는, 메모리(1110), 프로세서(1120), 송수신부(1130) 및 기타 주변장치(1140)를 포함할 수 있다. 또한, 일 예로, NDN 라우터(1100)는 다른 구성을 더 포함할 수 있으며, 상술한 실시예로 한정되지 않는다. 일 예로, NDN 라우터는 NDN-BGP 라우터일 수 있다. 8 shows, for example, the configuration of the
보다 상세하게는, 상기 NDN 라우터(1100)는 NDN 네트워크 노드의 예시적인 하드웨어 또는 소프트웨어 아키텍처일 수 있다. 이때, 일 예로, 메모리(1110)는 비이동식 메모리 또는 이동식 메모리일 수 있다. 또한, 일 예로, 주변 장치(1240)는 디스플레이, GPS 또는 다른 주변기기들을 포함할 수 있으며, 상술한 실시예로 한정되지 않는다. 또한, 일 예로, 상술한 NDN 라우터 (1100)는 송수신부(1130)와 같이 유무선 통신 회로를 포함하거나, 통신 인터페이스를 포함할 수 있으며, 이에 기초하여 외부 디바이스와 통신을 수행할 수 있다. More specifically, the
상기 프로세서(1120)는 전술한 도 5 및 도 6에 AS 경로 검증 프로세스를 수행할 수 있다. 또한, 상기 프로세서(1120)는 전술한 도 7의 사례에 의한 AS 경로 검증 상세 과정을 모두 수행하는 것이 가능하다. The
본 개시의 다양한 실시 예는 모든 가능한 조합을 나열한 것이 아니고 본 개시의 대표적인 양상을 설명하기 위한 것이며, 다양한 실시 예에서 설명하는 사항들은 독립적으로 적용되거나 또는 둘 이상의 조합으로 적용될 수도 있다. Various embodiments of the present disclosure do not list all possible combinations but are intended to describe representative aspects of the present disclosure, and matters described in various embodiments may be applied independently or in combination of two or more.
또한, 본 개시의 다양한 실시 예는 하드웨어, 펌웨어(firmware), 소프트웨어, 또는 그들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 하나 또는 그 이상의 ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 범용 프로세서(general processor), 컨트롤러, 마이크로 컨트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다. 예를 들어,상기 프로세서는 컴퓨터로 판독 가능한 프로그래밍 언어로 작성된 소프트웨어로 구현될 수도 있으며,상기 범용 프로세서를 포함한 다양한 형태를 띨 수도 있다.하나 혹은 그 이상의 결합으로 이루어진 하드웨어로 개시될 수도 있음은 자명하다.In addition, various embodiments of the present disclosure may be implemented by hardware, firmware, software, or a combination thereof. For implementation by hardware, one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), general purpose It may be implemented by a processor (general processor), a controller, a microcontroller, a microprocessor, and the like. For example, the processor may be implemented as software written in a computer-readable programming language, and may take various forms including the general-purpose processor. It is apparent that the processor may be disclosed as hardware composed of one or more combinations. .
본 개시의 범위는 다양한 실시 예의 방법에 따른 동작이 장치 또는 컴퓨터 상에서 실행되도록 하는 소프트웨어 또는 머신-실행 가능한 명령들(예를 들어, 운영체제, 애플리케이션, 펌웨어(firmware), 프로그램 등), 및 이러한 소프트웨어 또는 명령 등이 저장되어 장치 또는 컴퓨터 상에서 실행 가능한 비-일시적 컴퓨터-판독가능 매체(non-transitory computer-readable medium)를 포함한다.The scope of the present disclosure includes software or machine-executable instructions (eg, operating system, application, firmware, program, etc.) that cause an operation according to the method of various embodiments to be executed on a device or computer, and such software or and non-transitory computer-readable media in which instructions and the like are stored and executed on a device or computer.
이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로, 본 발명의 범위는 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.The present invention described above can be various substitutions, modifications and changes within the scope without departing from the technical spirit of the present invention for those of ordinary skill in the art to which the present invention pertains, so the scope of the present invention is not limited to the above. It is not limited by one embodiment and the accompanying drawings.
1100 : NDN 라우터
1100 : 메모리
1200 : 프로세서
1300 : 송수신부
1400 : 주변장치1100 : NDN router
1100 : memory
1200: processor
1300: transceiver
1400 : peripheral device
Claims (1)
AS 경로 검증 용 인터레스트 패킷을 수신하면, AS 번호와 AS 네트워크 네임을 추출하는 단계,
상기 NDN-BGP 라우터 내에 설정된 AS 번호와 상기 추출된 AS번호를 비교하여, 만약 AS 번호가 상이하면 PIT 테이블에서 관련된 엔트리가 존재하는 지를 확인하는 단계,
상기 확인 결과, PIT 테이블에 관련 엔트리가 존재하지 않으면, AS 네트워크 네임을 검색어로 사용하여 이웃 NDN-BGP 라우터의 넥스트-홉(Next-Hop) AS를 검색하는 단계,
만약 상기 넥스트-홉(Next-Hop) AS가 존재하지 않으면 에러 데이터 패킷 (Error Data packet)을 생성하여 응답하고, 반면 상기 넥스트-홉(Next-Hop) AS가 존재하면, 라우터 네임 및 VERIFICATION 네임을 가진 검증 요청 용 Interest 패킷을 생성하여 상기 넥스트-홉(Next-Hop)이 지정하는 NDN-BGP 라우터로 Interest 패킷을 전송하는 단계, 를 포함하는, NDN 기반 네트워크에서의 AS 경로 무결성 검증 방법.In the NDN-BGP router, the method of verifying the AS path integrity of the NDN-based network,
Upon receiving the interest packet for AS path verification, extracting the AS number and AS network name;
Comparing the AS number set in the NDN-BGP router with the extracted AS number, if the AS number is different, checking whether a related entry exists in the PIT table;
As a result of the check, if there is no related entry in the PIT table, searching for a next-hop AS of a neighboring NDN-BGP router using the AS network name as a search term;
If the Next-Hop AS does not exist, it responds by generating an Error Data packet, whereas if the Next-Hop AS exists, the router name and VERIFICATION name are provided. A method for verifying the integrity of an AS path in an NDN-based network, comprising: generating an interest packet for a verification request with an interest packet and transmitting the interest packet to an NDN-BGP router designated by the next-hop.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190156953A KR20210067400A (en) | 2019-11-29 | 2019-11-29 | AS-PATH Verification Method for AS Routing Integrity in NDN |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190156953A KR20210067400A (en) | 2019-11-29 | 2019-11-29 | AS-PATH Verification Method for AS Routing Integrity in NDN |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210067400A true KR20210067400A (en) | 2021-06-08 |
Family
ID=76399302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190156953A KR20210067400A (en) | 2019-11-29 | 2019-11-29 | AS-PATH Verification Method for AS Routing Integrity in NDN |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20210067400A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115442121A (en) * | 2022-08-31 | 2022-12-06 | 济南浪潮数据技术有限公司 | Traffic transmission method, system, device and storage medium |
-
2019
- 2019-11-29 KR KR1020190156953A patent/KR20210067400A/en unknown
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115442121A (en) * | 2022-08-31 | 2022-12-06 | 济南浪潮数据技术有限公司 | Traffic transmission method, system, device and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10958623B2 (en) | Identity and metadata based firewalls in identity enabled networks | |
Coltun | The OSPF opaque LSA option | |
US9009465B2 (en) | Augmenting name/prefix based routing protocols with trust anchor in information-centric networks | |
CN107251509B (en) | Trusted routing between communication network systems | |
US8073936B2 (en) | Providing support for responding to location protocol queries within a network node | |
US9344429B2 (en) | Network apparatus based on content name and method for protecting content | |
US20210160067A1 (en) | Method for bidirectional authorization of blockchain-based resource public key infrastructure | |
US11212139B2 (en) | Border gateway protocol (BGP) hijacks prefix signing using public/private keys | |
JP2019515555A (en) | Anonymous Identification Information and Protocol of Identification Information Oriented Network | |
US7870604B1 (en) | Methods and apparatus to configure network nodes supporting virtual connections | |
US12058258B2 (en) | Crypto tunnelling between two-way trusted network devices in a secure peer-to-peer data network | |
US12126602B2 (en) | Crypto-signed switching between two-way trusted network devices in a secure peer-to-peer data network | |
CN115943603B (en) | Blockchain enhanced routing authorization | |
US20230396624A1 (en) | Extending border gateway protocol (bgp) flowspec origination authorization using path attributes | |
JP2004166002A (en) | Communication device, boundary router device, server device, system and method for communication, routing method, communication program, and routing program | |
US8539100B2 (en) | Method, device, and communications system for managing querying mapping information | |
US11582201B1 (en) | Establishing and maintaining trusted relationship between secure network devices in secure peer-to-peer data network based on obtaining secure device identity containers | |
US20240137338A1 (en) | Border gateway protocol (bgp) flowspec origination authorization using route origin authorization (roa) | |
US12126728B2 (en) | Anti-replay protection based on hashing encrypted temporal key in a secure peer-to-peer data network | |
KR20210067400A (en) | AS-PATH Verification Method for AS Routing Integrity in NDN | |
US8688856B2 (en) | Techniques for managing a network delivery path of content via a key | |
US11196666B2 (en) | Receiver directed anonymization of identifier flows in identity enabled networks | |
JP4080402B2 (en) | Name resolution / authentication method and apparatus | |
US10841283B2 (en) | Smart sender anonymization in identity enabled networks | |
Coltun | rfc2370: The ospf opaque lsa option |