KR102286466B1 - Method and system for providing function-based routing - Google Patents
Method and system for providing function-based routing Download PDFInfo
- Publication number
- KR102286466B1 KR102286466B1 KR1020150053010A KR20150053010A KR102286466B1 KR 102286466 B1 KR102286466 B1 KR 102286466B1 KR 1020150053010 A KR1020150053010 A KR 1020150053010A KR 20150053010 A KR20150053010 A KR 20150053010A KR 102286466 B1 KR102286466 B1 KR 102286466B1
- Authority
- KR
- South Korea
- Prior art keywords
- function
- node
- packet
- fid
- input packet
- Prior art date
Links
Images
Classifications
-
- 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/54—Organization of routing tables
-
- 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/12—Shortest path evaluation
-
- 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/30—Routing of multiclass traffic
Abstract
본 발명의 일 실시예에 따르는 기능 기반 라우팅 시스템은 에지노드에서 입력 패킷의 기능을 추출하고 그 기능에 부합하는 FID(Function Identifier) 레이블을 삽입함으로써, 각 노드가 FID 레이블을 매개로 입력 패킷에 필요한 기능을 수행하고 순차적으로 필요한 노드를 찾아 입력 패킷이 포워딩되도록 함으로써, 각 패킷별 기능을 기준으로 네트워크 내에서 최적의 처리가 수행되도록 할 수 있다. 이는 IP 주소나 정책에 따라 패킷 처리가 결정되는 기존의 네트워크와는 다른 기능 분산 네트워크에 매우 적합하고 효율적인 방법이라 할 수 있다. A function-based routing system according to an embodiment of the present invention extracts a function of an input packet from an edge node and inserts a FID (Function Identifier) label that matches the function, so that each node needs the input packet through the FID label. By performing the function and sequentially finding the necessary nodes and allowing the input packets to be forwarded, optimal processing can be performed in the network based on the function of each packet. This can be said to be a very suitable and efficient method for a functional distributed network that is different from the existing network where packet processing is determined according to IP addresses or policies.
Description
본 발명은 기능 기반 라우팅 방법 및 시스템에 관한 것으로서, 보다 상세하게는, 기능 분산 네트워크에 있어서 임의의 패킷에 대한 기능 기반 패킷 라우팅을 구현하기 위한 기능 기반 라우팅 방법 및 시스템에 관한 것이다.The present invention relates to a function-based routing method and system, and more particularly, to a function-based routing method and system for implementing function-based packet routing for an arbitrary packet in a functional distributed network.
기존 네트워크는 패킷을 최종 목적지로 전송하기 위하여 각 노드가 패킷의 주소를 기반으로 목적지를 결정하여 패킷을 전송하도록 한다. 예를 들어 IP(Internet Protocol)의 경우, 네트워크 노드에서 동작하는 다양한 라우팅 프로토콜을 이용하여 IP주소를 기반으로 목적지를 찾아갈 수 있도록 만들어진 포워딩 테이블이 존재하는데, 이때 입력 패킷이 IP 목적지 주소를 이용하여 포워딩 테이블로부터 다음 노드에 대한 정보를 얻게 된다. 이러한 기존 네트워크 시스템은 모든 네트워크 노드가 동일한 기능을 수행하며 패킷의 네트워크 노드의 경유는 일반적으로 최소 비용이 드는 경로로 선택이 된다. In the existing network, in order to transmit a packet to its final destination, each node determines a destination based on the packet's address and transmits the packet. For example, in the case of IP (Internet Protocol), there is a forwarding table made to find a destination based on the IP address using various routing protocols operating in the network node. Information on the next node is obtained from the forwarding table. In such an existing network system, all network nodes perform the same function, and the route of packets passing through the network nodes is generally selected as the path with the least cost.
한편, NFV (Network Function Virtualization ) 기술 도입과 더불어 네트워크 노드 기능이 프로그래밍 가능한 형태로 발전되고 있다. NFV의 구현 형태는 클라우드에 네트워크 기능을 구현하는 형태로 진행될 수 있으나, 네트워크 노드 자체에 기능이 구현되는 형태로도 진행될 수 있으며, 이러한 경우, 하나의 네트워크 노드는 패킷 처리를 위해 필요한 모든 기능을 갖지 않고 일부 기능만 가질 수도 있다. 즉, 이와 같이, 서로 다른 기능을 지원하는 네트워크 노드가 분산되어 있고 각 네트워크 노드의 기능이 동적으로 변경되는 네트워크를 기능 분산 네트워크(Function Distributed Network)라고 한다.On the other hand, NFV ( Network Function With the introduction of Virtualization ) technology, network node functions are being developed in a programmable form. The implementation form of NFV may proceed in the form of implementing network functions in the cloud, but may also proceed in the form in which the functions are implemented in the network node itself. In this case, one network node does not have all the necessary functions for packet processing. and may have only some functions. That is, as described above, a network in which network nodes supporting different functions are distributed and the function of each network node is dynamically changed is called a function distributed network.
따라서, 기존 네트워크 시스템과 달리 기능 분산 네트워크의 경우, 각 노드에서 패킷에 대하여 처리 해야 하는 기능이 서로 달라지게 되므로, 주소를 기반으로 하는 라우팅은 적합하지 않다. 그러므로, 이러한 경우, 각 패킷별 필요한 기능 집합을 구분하고 패킷 라우팅이 이루어지도록 하는 기술의 도입이 요구되고 있다.Therefore, unlike the existing network system, in the case of a functional distributed network, the functions to be processed for packets in each node are different from each other, so address-based routing is not suitable. Therefore, in this case, it is required to introduce a technique for classifying a necessary set of functions for each packet and performing packet routing.
본 발명의 일 실시예는 기능 분산 네트워크에 있어서 입력 패킷이 네트워크에 진입하여 네트워크를 빠져나갈 때까지, 서로 다른 기능을 갖는 노드를 적절히 거쳐 입력 패킷에 필요한 처리가 이루어지도록 하는 기능 기반 라우팅(Function-based Routing) 방법을 제공하는 것을 목적으로 한다.An embodiment of the present invention provides a function-based routing (Function-based Routing) that allows an input packet to undergo appropriate processing through nodes having different functions until it enters the network and exits the network in a distributed functional network. based Routing) method.
본 발명의 일 실시예에 따르는, 적어도 하나 이상의 기능을 갖는 복수의 노드를 포함하는 기능 분산 네트워크를 통한 기능 기반 라우팅 방법은, (a) 상기 기능 분산 네트워크에 포함된 에지노드가 입력 패킷을 수신하는 경우, 입력 패킷으로부터 상기 입력 패킷의 기능에 대한 식별정보인 FID(Function ID)를 포함하는 패킷에 대한 기능 리스트를 획득하는 단계; (b) 상기 에지노드가 상기 FID를 레이블 형태로 표현하여, 적어도 하나의 FID 레이블로 구성된 FID 레이블 스택을 상기 입력 패킷에 삽입하는 단계; (c) 상기 에지노드가 각 노드의 기능에 대한 정보가 포함된 라우팅 테이블과 상기 FID 레이블 스택을 참고하여 상기 입력 패킷을 포워딩 할 중간노드를 결정하고 상기 중간노드로 포워딩하는 단계; 및 (d) 상기 중간노드가 상기 입력 패킷의 FID 레이블 스택 중 어느 하나의 FID 레이블과 부합하는 상기 중간노드의 기능을 수행하고, 상기 라우팅 테이블과 상기 FID 레이블 스택을 참고하여, 타 노드로 상기 입력 패킷을 포워딩하는 단계;를 포함하는 것을 특징으로 한다. According to an embodiment of the present invention, a function-based routing method through a functional distributed network including a plurality of nodes having at least one or more functions, (a) an edge node included in the functional distributed network receives an input packet case, obtaining a function list for a packet including a function ID (FID), which is identification information for a function of the input packet, from the input packet; (b) the edge node expressing the FID in the form of a label and inserting, by the edge node, an FID label stack composed of at least one FID label into the input packet; (c) determining, by the edge node, an intermediate node to which the input packet is to be forwarded by referring to the FID label stack and a routing table containing information on the function of each node, and forwarding the input packet to the intermediate node; and (d) the intermediate node performs the function of the intermediate node matching any one of the FID label stacks of the FID label stack of the input packet, and referring to the routing table and the FID label stack, the input to another node and forwarding the packet.
또한, 상기 기능 분산 네트워크의 각 노드에 포함된 적어도 하나의 기능에 대한 집합은 타 노드에 포함된 기능에 대한 집합과 다르게 구성되는 것을 특징으로 한다. In addition, the set of at least one function included in each node of the functional distributed network is configured differently from the set of functions included in other nodes.
또한, 상기 기능 기반 라우팅 방법은, (e) 상기 (a) 단계 전, 각 노드가 자신의 기능을 타 노드와 공유함에 따라, 각 노드에서 상기 라우팅 테이블을 구축하는 단계를 더 포함하는 것을 특징으로 한다. In addition, the function-based routing method, (e) before the step (a), as each node shares its function with other nodes, it further comprises the step of constructing the routing table at each node. do.
또한, 상기 (e) 단계는, (e-1) 각 노드가 자신의 기능에 대한 정보를 포함한 LSA(Link State Advertisement) 메시지를 타 노드로 전송하는 단계; (e-2) 상기 LSA 메시지를 수신한 노드는 상기 LSA 메시지에 포함된 각 노드의 기능을 바탕으로 기능 기반 라우팅 데이터베이스를 구축하고, 상기 LSA 메시지를 타 노드로 플러딩하는 단계; 및 (e-3) 상기 기능 기반 라우팅 데이터베이스에 저장된 각 노드의 기능에 대한 정보를 기능별 최단경로 알고리즘에 적용하여, 각 기능 별 라우팅 경로가 저장된 라우팅 테이블을 구축하는 단계;를 포함하는 것을 특징으로 한다. In addition, the step (e) includes: (e-1) each node transmitting a Link State Advertisement (LSA) message including information on its own function to another node; (e-2) the node receiving the LSA message constructing a function-based routing database based on the function of each node included in the LSA message, and flooding the LSA message to other nodes; and (e-3) applying the information on the function of each node stored in the function-based routing database to the shortest path algorithm for each function, and constructing a routing table in which the routing path for each function is stored. .
또한, 상기 (a) 단계는, 상기 에지노드가 상기 입력 패킷의 헤더의 다중 필드를 기반으로 트래픽 분류를 수행하여 상기 패킷기능리스트를 획득하는 단계를 포함하는 것을 특징으로 한다. In addition, the step (a) is characterized in that the edge node obtains the packet function list by performing traffic classification based on multiple fields of the header of the input packet.
또한, 상기 기능 기반 라우팅 방법은, (f) 상기 (a) 단계 후, 상기 패킷기능리스트에 상기 에지노드의 기능 중 적어도 하나의 기능이 포함되어 있는 경우, 상기 에지노드가 상기 패킷기능리스트에 포함된 상기 적어도 하나의 기능을 수행하는 단계를 더 포함하는 것을 특징으로 한다. In addition, in the function-based routing method, (f) after step (a), when at least one function among the functions of the edge node is included in the packet function list, the edge node is included in the packet function list It characterized in that it further comprises the step of performing the at least one function.
또한, 상기 FID 레이블은 상기 FID 레이블이 상기 FID 레이블 스택 내에서 배치되는 위치에 관한 정보를 포함하는 것을 특징으로 한다. In addition, the FID label is characterized in that it includes information on a position in which the FID label is arranged in the FID label stack.
또한, 상기 (b) 단계는, 상기 에지노드가 상기 패킷기능리스트에 포함된 기능들 중 우선순위가 높은 기능의 FID 레이블이 최상위에 배치되도록 상기 FID 레이블 스택을 우선순위에 따라 형성하여 상기 입력 패킷에 삽입하는 단계를 포함하는 것을 특징으로 한다. Also, in the step (b), the edge node forms the FID label stack according to the priority so that the FID label of the function having a higher priority among the functions included in the packet function list is placed at the top of the input packet. It characterized in that it comprises the step of inserting into the.
또한, 상기 (c) 단계는, 상기 에지노드가 상기 FID 레이블 스택 중 최상위에 배치된 FID 레이블을 기반으로, 상기 최상위에 배치된 FID 레이블에 대응하는 기능을 수행하기 위한 중간노드를 상기 라우팅 테이블을 참고하여 검색하는 단계를 포함하는 것을 특징으로 한다. In addition, in step (c), the edge node assigns an intermediate node for performing a function corresponding to the topmost FID label in the routing table based on the FID label disposed at the top of the FID label stack. It is characterized in that it includes the step of searching for reference.
또한, 상기 (d) 단계는, 상기 중간노드가 상기 입력 패킷의 최상위에 배치된 FID 레이블에 대응하는 상기 중간노드의 기능을 수행하고, 상기 최상위에 배치된 FID 레이블을 상기 FID 레이블 스택으로부터 삭제하는 단계; 및 상기 FID 레이블 스택 내에 다른 FID 레이블이 존재하는 경우, 다른 FID 레이블 중 최상위에 배치된 FID 레이블에 대응하는 기능을 수행하기 위한 타 노드를 상기 라우팅 테이블을 통해 검색하여, 검색된 타 노드로 상기 입력 패킷을 전송하는 단계;를 포함하는 것을 특징으로 한다. In addition, in the step (d), the intermediate node performs the function of the intermediate node corresponding to the FID label disposed at the top of the input packet, and deletes the FID label disposed at the top from the FID label stack. step; and when another FID label exists in the FID label stack, another node for performing a function corresponding to the highest FID label among other FID labels is searched through the routing table, and the input packet is sent to the searched other node. It is characterized in that it comprises;
한편, 본 발명의 다른 실시예에 따르는, 서로 통신이 연결되며 적어도 하나 이상의 기능을 갖는 복수의 노드를 포함하는 기능 기반 라우팅 시스템에 있어서, 각 노드는, 입력 패킷을 수신하는 경우, 입력 패킷으로부터 상기 입력 패킷의 기능에 대한 식별정보인 FID(Function ID)를 포함하는 패킷기능리스트를 획득하는 패킷기능리스트 획득부; 상기 FID를 레이블 형태로 표현하여, 적어도 하나의 FID 레이블로 구성된 FID 레이블 스택을 상기 입력 패킷에 삽입하는 FID 레이블 삽입부; 및 각 노드의 기능에 대한 정보가 포함된 라우팅 테이블과 상기 FID 레이블 스택을 참고하여 상기 입력 패킷을 포워딩 할 타 노드를 결정하고 상기 타 노드로 포워딩하는 패킷 포워딩부;를 포함하는 것을 특징으로 한다. On the other hand, according to another embodiment of the present invention, in the function-based routing system including a plurality of nodes that are connected to each other and have at least one function, when each node receives an input packet, the a packet function list obtaining unit which obtains a packet function list including FID (Function ID), which is identification information on a function of an input packet; an FID label inserter for expressing the FID in a label form and inserting an FID label stack composed of at least one FID label into the input packet; and a packet forwarding unit that determines another node to which the input packet is to be forwarded by referring to a routing table including information on the function of each node and the FID label stack and forwards the input packet to the other node.
또한, 상기 기능 기반 라우팅 시스템의 각 노드에 포함된 적어도 하나의 기능에 대한 집합은 타 노드에 포함된 기능에 대한 집합과 다르게 구성되는 것을 특징으로 한다. In addition, the set of at least one function included in each node of the function-based routing system is configured differently from the set of functions included in other nodes.
또한, 상기 각 노드는, 타 노드와 기능을 공유함에 따라, 상기 라우팅 테이블을 구축하는 라우팅 테이블 구축부를 더 포함하는 것을 특징으로 한다. In addition, each node, as it shares a function with other nodes, characterized in that it further comprises a routing table construction unit for building the routing table.
또한, 상기 라우팅 테이블 구축부는, 자신의 노드의 기능에 대한 정보를 포함한 LSA(Link State Advertisement) 메시지를 타 노드로 전송하는 노드기능정보 전송부; 타 노드로부터 상기 LSA 메시지를 수신한 경우, 상기 LSA 메시지에 포함된 각 노드의 기능을 바탕으로 기능 기반 라우팅 데이터베이스를 구축하고, 상기 LSA 메시지를 타 노드로 플러딩하는 노드기능정보 수신처리부; 및 상기 기능 기반 라우팅 데이터베이스에 저장된 각 노드의 기능에 대한 정보를 기능별 최단경로 알고리즘에 적용하여, 각 기능 별 라우팅 경로가 저장된 라우팅 테이블을 구축하는 라우팅 테이블 생성부;를 포함하는 것을 특징으로 한다. In addition, the routing table construction unit, the node function information transmitting unit for transmitting the LSA (Link State Advertisement) message including information on the function of the node to another node; a node function information reception processing unit that, when receiving the LSA message from another node, builds a function-based routing database based on the function of each node included in the LSA message, and floods the LSA message to another node; and a routing table generator configured to construct a routing table in which routing paths for each function are stored by applying the information on the function of each node stored in the function-based routing database to the shortest path algorithm for each function.
또한, 상기 패킷기능리스트 획득부는, 상기 에지노드가 상기 입력 패킷의 헤더의 다중 필드를 기반으로 트래픽 분류를 수행하여 상기 패킷기능리스트를 획득하는 것을 특징으로 한다. In addition, the packet function list obtaining unit is characterized in that the edge node obtains the packet function list by performing traffic classification based on multiple fields of the header of the input packet.
또한, 상기 기능 기반 라우팅 시스템은, 상기 패킷기능리스트가 획득된 후, 상기 패킷기능리스트에 상기 에지노드의 기능 중 적어도 하나의 기능이 포함되어 있는 경우, 상기 에지노드가 상기 패킷기능리스트에 포함된 상기 적어도 하나의 기능을 수행하는 노드기능 수행부를 더 포함하는 것을 특징으로 한다. Further, in the function-based routing system, after the packet function list is obtained, when at least one function among the functions of the edge node is included in the packet function list, the edge node is included in the packet function list. It characterized in that it further comprises a node function performing unit for performing the at least one function.
또한, 상기 FID 레이블은 상기 FID 레이블이 상기 FID 레이블 스택 내에서 배치되는 위치에 관한 정보를 포함하는 것을 특징으로 한다. In addition, the FID label is characterized in that it includes information on a position in which the FID label is arranged in the FID label stack.
또한, 상기 FID 레이블 삽입부는, 상기 에지노드가 상기 패킷기능리스트에 포함된 기능들 중 우선순위가 높은 기능의 FID 레이블이 최상위에 배치되도록 상기 FID 레이블 스택을 우선순위에 따라 형성하여 상기 입력 패킷에 삽입하는 것을 특징으로 한다. In addition, the FID label insertion unit is configured to form the FID label stack according to the priority so that the FID label of a function having a higher priority among functions included in the packet function list is placed at the top of the packet function list by the edge node. characterized in that it is inserted.
또한, 상기 패킷 포워딩부는, 상기 에지노드가 상기 FID 레이블 스택 중 최상위에 배치된 FID 레이블을 기반으로, 상기 최상위에 배치된 FID 레이블에 대응하는 기능을 수행하기 위한 중간노드를 상기 라우팅 테이블을 참고하여 검색하는 것을 특징으로 한다. In addition, the packet forwarding unit, the edge node based on the FID label disposed at the top of the FID label stack, selects an intermediate node for performing a function corresponding to the FID label disposed at the top by referring to the routing table. It is characterized by searching.
또한, 상기 노드기능 수행부는, 상기 FID 레이블 스택을 포함하는 입력 패킷을 수신한 경우, 상기 FID 레이블 스택의 최상위에 배치된 FID 레이블에 대응하는 노드의 기능을 수행하고, 상기 최상위에 배치된 FID 레이블을 상기 FID 레이블 스택으로부터 삭제하며, 상기 패킷 포워딩부는, 상기 FID 레이블 스택 내에 다른 FID 레이블이 존재하는 경우, 다른 FID 레이블 중 최상위에 배치된 FID 레이블에 대응하는 기능을 수행하기 위한 타 노드를 상기 라우팅 테이블을 통해 검색하여, 검색된 타 노드로 상기 입력 패킷을 전송하는 것을 특징으로 한다.In addition, the node function performing unit, upon receiving the input packet including the FID label stack, performs a function of a node corresponding to the FID label disposed at the top of the FID label stack, and the FID label disposed at the top deletes from the FID label stack, and the packet forwarding unit, when another FID label exists in the FID label stack, routes another node for performing a function corresponding to the FID label disposed at the top of the other FID labels. It is characterized in that the input packet is transmitted to the searched other node by searching through the table.
본 발명의 일 실시예에 따르는 기능 기반 라우팅 시스템은 에지노드에서 입력 패킷의 기능을 추출하고 그 기능에 부합하는 FID(Function Identifier) 레이블을 삽입함으로써, 각 노드가 FID 레이블을 매개로 입력 패킷에 필요한 기능을 수행하고 순차적으로 필요한 노드를 찾아 입력 패킷이 포워딩되도록 할 수 있다. 이러한 과정을 통해 본 발명의 일 실시예는 각 패킷별 기능을 기준으로 네트워크 내에서 최적의 처리가 수행되도록 할 수 있다. 이는 IP 주소나 정책에 따라 패킷 처리가 결정되는 기존의 네트워크와는 다른 기능 분산 네트워크에 매우 적합하고 효율적인 방법이라 할 수 있다.A function-based routing system according to an embodiment of the present invention extracts a function of an input packet from an edge node and inserts a FID (Function Identifier) label that matches the function, so that each node needs the input packet through the FID label. It can perform the function and sequentially find the required node so that the input packet is forwarded. Through this process, an embodiment of the present invention can allow optimal processing to be performed in the network based on the function of each packet. This can be said to be a very suitable and efficient method for a functional distributed network that is different from the existing network where packet processing is determined according to IP addresses or policies.
도 1은 본 발명의 일 실시예에 따르는 기능 기반 라우팅 시스템의 구조도이다.
도 2는 본 발명의 일 실시예에 따르는 기능 기반 라우팅 시스템에 속하는 각 노드의 구조에 대한 블록도이다.
도 3은 본 발명의 일 실시예에 따르는 라우팅 테이블 구축부의 구조를 나타내는 블록도이다.
도 4는 본 발명의 일 실시예에 따라 라우팅 테이블 구축시 노드에서 전송되는 LSA(Link State Advertisement) 메시지의 구조를 나타내는 구조도이다.
도 5는 본 발명의 일 실시예에 따라 각 노드 별로 기능별 라우팅 데이터베이스를 구축하는 예를 나타내는 개념도이다.
도 6은 본 발명의 일 실시예에 따라 입력 패킷에 삽입되는 FID(Function IDentifier) 레이블의 일 예를 나타내는 구조도이다.
도 7은 본 발명의 일 실시예에 따라 에지노드에서 중간노드로 입력 패킷이 전달되는 과정을 개념적으로 나타낸 개념도이다.
도 8은 본 발명의 일 실시예에 따르는 기능 기반 라우팅 방법에 있어서 에지노드의 패킷 처리 과정을 설명하기 위한 개념도이다.
도 9는 본 발명의 일 실시예에 따르는 기능 기반 라우팅 방법에 있어서 중간노드의 패킷 처리 과정을 설명하기 위한 개념도이다.1 is a structural diagram of a function-based routing system according to an embodiment of the present invention.
2 is a block diagram of the structure of each node belonging to a function-based routing system according to an embodiment of the present invention.
3 is a block diagram showing the structure of a routing table construction unit according to an embodiment of the present invention.
4 is a structural diagram illustrating the structure of a Link State Advertisement (LSA) message transmitted from a node when a routing table is established according to an embodiment of the present invention.
5 is a conceptual diagram illustrating an example of constructing a routing database for each function for each node according to an embodiment of the present invention.
6 is a structural diagram illustrating an example of a function identifier (FID) label inserted into an input packet according to an embodiment of the present invention.
7 is a conceptual diagram conceptually illustrating a process of transferring an input packet from an edge node to an intermediate node according to an embodiment of the present invention.
8 is a conceptual diagram illustrating a packet processing process of an edge node in a function-based routing method according to an embodiment of the present invention.
9 is a conceptual diagram for explaining a packet processing process of an intermediate node in a function-based routing method according to an embodiment of the present invention.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 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 can easily implement them. However, the present invention may be embodied in many different forms and is not limited to the embodiments described herein. And in order to clearly explain the present invention in the drawings, parts irrelevant to the description are omitted, and similar reference numerals are attached to similar parts throughout the specification.
명세서 전체에서, 또한 어떤 부분이 어떤 구성요소를 “포함”한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated.
이하, 도면을 참고하여 본 발명의 일 실시예에 따르는 기능 기반 라우팅 시스템에 대하여 구체적으로 설명한다. Hereinafter, a function-based routing system according to an embodiment of the present invention will be described in detail with reference to the drawings.
도 1을 참조하면, 본 발명의 일 실시예에 따르는 시스템(10)은 복수의 노드(100)를 포함한다. 각 노드(100)들은 네트워크망(미도시)을 통하여 필요한 정보 또는 패킷을 주고 받으며, 이러한 네트워크망은 유선 또는 무선 네트워크망으로 구성될 수 있다. Referring to FIG. 1 , a
또한, 본 발명의 일 실시예의 시스템(10)은 기능 분산 네트워크(Function Distributed Network)를 기반으로 하는 것으로서, 기능 분산 네트워크에서 각 노드(100)는 적어도 하나 이상의 기능으로 구성된 기능 집합을 가지되, 타 노드의 기능 집합과 다른 기능 집합을 포함하도록 구성될 수 있으며, 각 노드(100)의 기능 집합은 동적으로 변경될 수 있다. 그러므로, 기능 분산 네트워크 내에서 하나의 패킷을 처리하기 위하여 복수의 기능이 수행되어야 하는 경우, 해당 패킷은 필요한 노드(100)를 거쳐 필요한 기능 처리가 모두 이루어지도록 해야 한다.In addition, the
예를 들면, 도 1에서, A 노드(100a)는 제1기능, 제2기능을 지원하며, B 노드(100b)는 제3기능, 제4기능을 지원하고, C 노드(100c)는 제6기능을 지원하고, D 노드(100d)는 제5기능을 지원하도록 구성되는 경우를 가정한다. 이때, 패킷 X를 처리하기 위해서는 제1기능, 제5기능, 제6기능이 요구되는데, 패킷 X가 최초에 A 노드(100a)로 수신되었다면, 실선 화살표 방향과 같이, A 노드(100a), C 노드(100c), D 노드(100d)를 거치며 차례대로 제1기능, 제5기능, 제6기능이 네트워크 내에서 실행될 수 있다. 또한, 패킷 Y를 처리하기 위해서는, 제2기능, 제3기능, 제5기능, 제6기능이 요구되는데, 패킷 Y가 최초에 A 노드(100a)로 수신되었다면, 점선 화살표 방향과 같이, A 노드(100a), B 노드(100b), C 노드(100c), D 노드(100d)를 차례대로 거치며 제2기능, 제3기능, 제5기능, 제6기능이 네트워크 내에서 실행될 수 있다. For example, in FIG. 1 , a
이와 같이, 입력 패킷에 필요한 기능을 지원하는 노드(100)에 순차적으로 입력 패킷이 전달되어 처리되도록 하기 위해서는, 입력 패킷에 대하여 요구되는 기능을 추출하고, 타 노드가 어떤 기능을 지원하는지 파악하여 입력 패킷을 적절한 다른 노드에 전송할 수 있어야 한다. In this way, in order to sequentially transfer and process input packets to the
이하, 도 2 및 도 3을 참조하여, 각 노드(100)의 구성요소를 구체적으로 설명하여 기능 기반 라우팅이 이루어지는 원리에 대하여 알아보도록 한다. Hereinafter, with reference to FIGS. 2 and 3 , the components of each
각 노드(100)는 라우팅 테이블 구축부(110), 패킷기능리스트 획득부(120), 노드기능 수행부(130), FID 레이블 삽입부(140), 패킷 포워딩부(150)를 포함한다. Each
라우팅 테이블 구축부(110)는 각 노드(100)의 기능을 공유하여, 임의의 노드(100)에 입력된 입력 패킷이 전달될 타 노드(즉, 넥스트 홉(nexthop))에 대한 정보를 제공하는 라우팅 테이블을 구축한다. 구체적으로, 라우팅 테이블은 각 노드(100)가 갖는 기능에 대한 식별정보인 FID(Function IDentifier)와 각 노드(100)에 대한 IP 정보 및 각 기능 별로 최소 비용이 드는 라우팅 경로 등으로 구성된다. 그에 따라, 라우팅 테이블에 FID가 키 값을 입력될 경우, 넥스트 홉에 대한 정보가 결과값으로 출력될 수 있다. The routing
여기서 FID(Function IDentifier)는 노드(100) 뿐만 아니라 패킷에 대한 기능의 식별정보를 지칭할 수도 있다. FID는 기능에 대한 이름(문자) 또는 숫자 형태로서 표현될 수 있으나, 그 밖의 다양한 형태로도 표현될 수 있다. 다만, 바람직하게, 일반적으로 이더넷의 경우 IP는 0x0800, ARP는 0x0806 등의 숫자로 표시하는 것처럼 숫자 형태가 구현 관점에서 용이할 수 있다.Here, the FID (Function IDentifier) may refer not only to the
도 3을 참조하면, 라우팅 테이블 구축부(110)는 라우팅 테이블을 구축하기 위하여 노드기능정보 전송부(111), 노드기능정보 수신처리부(112), 라우팅 테이블 생성부(113)를 포함한다. Referring to FIG. 3 , the routing
노드기능정보 전송부(111)는 자신의 노드(100)의 기능에 대한 정보를 인접한 타 노드로 전송한다. 구체적으로, 노드기능정보 전송부(111)는 노드 기능에 대한 정보를 LSA(Link State Advertisement) 메시지(즉, OSPF(Open Shortest Path First)의 LSA와 같은 형태의 메시지)로 전송할 수 있다. 도 4는 LSA메시지의 일 실시 예를 나타내는 것으로서, OSPF와 LSA에 각 노드(100)가 갖는 기능에 대한 정보인 FID 리스트를 추가하는 형태로 구현 가능하다. The node function
노드기능정보 수신처리부(112)는 타 노드로부터 타 노드의 기능에 대한 정보를 수신하였을 경우, 시스템(10) 내의 모든 노드(100)들의 기능에 대한 정보를 집합시킨 기능 기반 라우팅 데이터베이스를 구축하기 위해 적절한 처리를 수행한다. 구체적으로, 타 노드로부터 LSA 메시지를 수신한 경우, LSA 메시지에 포함된 타 노드의 기능을 추출하고, 추출한 정보들을 수집하여 기능 기반 라우팅 데이터베이스를 구축한다. 그리고 노드기능정보 수신처리부(112)는 LSA 메시지를 인접한 타 노드로 플러딩한다. When the node function information
라우팅 테이블 생성부(113)는 기능 기반 라우팅 데이터베이스에 저장된 각 노드(100)의 기능에 대한 정보를 기능별 최단경로 알고리즘에 적용하여, 각 기능 별 라우팅 경로가 설정된 라우팅 테이블을 생성한다. The
즉, 라우팅 테이블을 구축하는 과정을 쉽게 설명하면, 도 5와 같이, 각 노드(100)들은 자신의 기능에 대한 정보를 타 노드와 교환/공유하여, 모든 노드(100)들의 기능 목록에 대한 데이터베이스를 동기화한다. 이어서, 각 기능 별로 최소 비용에 따른 넥스트 홉이 지정되도록 라우팅 테이블을 구축한다. 이에 따라, 각 노드(100)에서는 입력 패킷에 대하여 요구되는 기능을 키 값으로 라우팅 테이블에 입력하기만 하면 라우팅 테이블은 결과 값으로 최소 비용에 따른 넥스트 홉을 결과값으로 출력할 수 있게 된다. That is, to easily explain the process of building the routing table, as shown in FIG. 5 , each
다시, 도 2를 참조하면, 패킷기능리스트 획득부(120)는 노드(100)로 유입된 입력 패킷이 시스템(10) 상에 최초로 유입되어 해당 노드(100)가 에지노드(100e) 역할을 수행하는 경우 동작하는 것으로서, 입력 패킷에 대하여 패킷기능리스트를 획득한다. 여기서 패킷기능리스트란 패킷이 처리되기 위하여 요구되는 기능(즉, FID)들의 목록을 의미한다. 구체적으로, 패킷기능리스트 획득부(120)는 입력 패킷의 헤더의 다중 필드(예, IP SRC, IP DST, Protocol, TCP/UDP port numbers)를 기반으로 트래픽 분류 테이블을 검색하여 패킷기능리스트를 획득할 수 있다. Again, referring to FIG. 2 , in the packet function
노드기능 수행부(130)는 획득된 패킷기능리스트 중 자체적으로 처리할 수 있는 기능이 포함되어 있는 경우, 해당 기능을 수행한다. The node
FID 레이블 삽입부(140)는 패킷기능리스트에 포함되어 있는 기능(즉, FID)을 레이블 형태로 입력 패킷에 삽입한다. 각각의 기능은 레이블 형태로 입력 패킷에 삽입될 수 있다. 이때, 하나의 기능에 대한 레이블을 FID 레이블이라고 지칭하고, 패킷기능리스트에 포함된 복수의 기능에 대한 레이블들은 FID 레이블 스택이라고 지칭한다. 도 6은 일 실시 예에 따른 FID 레이블의 형태를 나타내는 도면이다. FID 레이블은 Function ID, Reserved, S, TTL(Time To Live) 항목으로 구성되며, S는 해당 FID 레이블이 FID 레이블 스택 내에서 차지하는 위치를 나타내는 정보로서, 일반적으로 FID 레이블 스택 내의 마지막 레이블인지 여부를 나타낸다. 이와 같이, 전반적으로 FID 레이블은 MPLS(Multiprotocol Label Switching) 레이블과 유사한 형태를 가질 수 있다. The FID
또한, FID 레이블 삽입부(140)는 패킷기능리스트에 포함된 기능들 중 가장 먼저 처리되어야 할 FID 레이블이 최상위에 배치되고, 다음에 처리할 기능이 후순위로 배치되도록 각 기능에 대한 우선순위에 따라 FID 레이블이 순차적으로 배치되도록 FID 레이블 스택을 형성하여 입력 패킷에 삽입할 수 있다. 한편, FID 레이블 삽입시 해당 노드(100)에서 이미 실행된 기능에 대한 FID 레이블 삽입은 생략될 수도 있다. In addition, the FID
패킷 포워딩부(150)는 FID 레이블을 기반으로 라우팅 테이블을 룩업하여 패킷이 전송될 넥스트 홉을 파악하고, 넥스트 홉으로 패킷을 포워딩한다. 구체적으로, 패킷 포워딩부(150)는 FID 레이블 스택 중 최상위에 배치된 FID 레이블에 대응하는 기능을 갖는 넥스트 홉을 라우팅 테이블 룩업을 통해 파악하여, 포워딩할 수 있다. FID 레이블 스택 중 최상위에 배치된 FID 레이블은 입력 패킷이 입력된 노드(100)에서 실행되지 않은 기능들 중 최우선적으로 수행되어야 할 기능이기 때문에 최상위에 배치된 FID 레이블이 넥스트 홉 결정시 고려 대상이 될 수 있다. 한편, 라우팅 테이블은 FID 뿐만 아니라 IP 포워딩 테이블과 결합된 형태의 테이블로 구성될 수 있으며, 이러한 경우, 패킷 포워딩부(150)는 FID 레이블 스택 중 첫 번째 FID 레이블과 IP 목적지 주소를 기반으로 포워딩할 노드(100)를 결정할 수 있다. The
즉, 도 7과 같이, 본 발명의 일 실시예의 기능 기반 라우팅 시스템은 에지노드(100e)(A 노드(100a))에서 입력 패킷(패킷 X)의 처리에 필요한 패킷기능리스트를 획득하고, 이를 바탕으로 FID 레이블이 삽입된 입력 패킷(패킷 X’)을 중간노드(100m)(C 노드(100c)) 로 전달함에 따라, 입력 패킷은 자신이 처리되기 위하여 필요한 기능을 갖는 노드(100)를 찾아 순차적으로 적절하게 전송될 수 있다. That is, as shown in Fig. 7, the function-based routing system of an embodiment of the present invention obtains a list of packet functions required for processing an input packet (packet X) in the edge node 100e (
한편, 각 노드(100)가 도 2의 구성을 모두 포함하는 것으로 설명하였으나, 각 노드(100)가 에지노드(100e)나 중간노드(100m)가 되느냐에 따라 다른 기능을 수행하는 바, 본 발명의 일 실시예에 따르는 기능 기반 라우팅 방법에 있어서, 에지노드(100e)와 중간노드(100m)에서의 패킷 처리 과정에 대하여 도 8과 도 9를 참조하여 구체적으로 설명한다. On the other hand, although each
먼저, 도 8을 참조하여 에지노드(100e)에서의 패킷 처리 과정을 설명하면, 에지노드(100e)의 패킷기능리스트 획득부(120)는 트래픽 분류 테이블을 이용하여 입력 패킷의 헤더를 기반으로 패킷기능리스트를 획득한다. 이때, 에지노드(100e)의 노드기능 수행부(130)는 패킷기능리스트 중 지원가능한 기능이 있는 경우 곧바로 실행할 수 있다. 이어서, 에지노드(100e)의 FID 레이블 삽입부(140)는 이를 바탕으로, FID 레이블을 생성하고 입력 패킷에 삽입한다. 그리고, 에지노드(100e)의 패킷 포워딩부(150)는 라우팅 테이블을 참조하여, 최상위 FID 레이블에 대응하는 기능을 갖는 중간노드(100m)를 검색하여, 검색된 중간노드(100m)로 FID 레이블이 삽입된 입력 패킷을 포워딩한다. First, a packet processing process in the edge node 100e will be described with reference to FIG. 8 . The packet function
도 9를 참조하면, 중간노드(100m)는 FID 레이블이 삽입된 입력 패킷을 수신하며, 중간노드(100m)의 노드기능 수행부(130)는 최상위 FID 레이블이 자신의 노드(100)에서 지원가능한 기능인지 판단한 후, 자신의 노드(100)의 기능과 대응하는 경우, 해당 기능을 수행하고, 최상위에 배치된 FID 레이블을 FID 레이블 스택으로부터 삭제한다.(POP 동작) 이어서, 중간노드(100m)의 패킷 포워딩부(150)는 FID 레이블 스택 내에 다른 FID 레이블이 존재하는 경우, 다른 FID 레이블 중 최상위에 배치된 FID 레이블에 대응하는 기능을 수행하기 위한 타 노드를 라우팅 테이블을 통해 검색하고, 검색된 타 노드로 입력 패킷을 전송한다. 한편, FID 레이블에 대한 POP 동작 후, 또 다른 FID 레이블이 존재하지 않는 경우, 라우팅 테이블 내에 IP주소만으로 이루어진 IP 포워딩 테이블을 룩업하여 입력 패킷을 전송할 수 있다. Referring to FIG. 9 , the
이와 같이, 본 발명의 일 실시예에 따르는 기능 기반 라우팅 시스템은 에지노드에서 입력 패킷의 기능을 추출하고 그 기능에 부합하는 FID(Function Identifier) 레이블을 삽입함으로써, 각 노드가 FID 레이블을 매개로 입력 패킷에 필요한 기능을 수행하고 순차적으로 필요한 노드를 찾아 입력 패킷이 포워딩되도록 함으로써, 각 패킷별 기능을 기준으로 네트워크 내에서 최적의 처리가 수행되도록 할 수 있다. 이는 IP 주소나 정책에 따라 패킷 처리가 결정되는 기존의 네트워크와는 다른 기능 분산 네트워크에 매우 적합하고 효율적인 방법이라 할 수 있다. In this way, the function-based routing system according to an embodiment of the present invention extracts the function of the input packet from the edge node and inserts a FID (Function Identifier) label that matches the function, so that each node inputs the FID label as a medium. By performing a function required for a packet and sequentially finding a necessary node to forward an input packet, it is possible to perform optimal processing within the network based on the function of each packet. This can be said to be a very suitable and efficient method for a functional distributed network that is different from the existing network where packet processing is determined according to IP addresses or policies.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative and not restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.
10 : 기능 기반 라우팅 시스템
100 : 노드
110 : 라우팅 테이블 구축부
120 : 패킷기능리스트 획득부
130 : 노드기능 수행부
140 : FID 레이블 삽입부
150 : 패킷 포워딩부10: Function-based routing system
100 : node
110: routing table construction unit
120: packet function list acquisition unit
130: node function execution unit
140: FID label insertion part
150: packet forwarding unit
Claims (20)
(a) 상기 기능 분산 네트워크에 포함된 에지노드가 입력 패킷을 수신하는 경우, 상기 입력 패킷으로부터 상기 입력 패킷의 기능에 대한 식별정보인 FID(Function ID)를 포함하는 패킷기능리스트를 획득하는 단계;
(b) 상기 에지노드가 상기 FID를 레이블 형태로 표현하여, 적어도 하나의 FID 레이블로 구성된 FID 레이블 스택을 상기 입력 패킷에 삽입하는 단계;
(c) 상기 에지노드가 각 노드의 기능에 대한 정보가 포함된 라우팅 테이블과 상기 FID 레이블 스택을 참고하여 상기 입력 패킷을 포워딩할 중간노드를 결정하고 상기 중간노드로 포워딩하는 단계; 및
(d) 상기 중간노드가 상기 입력 패킷의 FID 레이블 스택 중 어느 하나의 FID 레이블과 부합하는 상기 중간노드의 기능을 수행하고, 상기 라우팅 테이블과 상기 FID 레이블 스택을 참고하여, 타 노드로 상기 입력 패킷을 포워딩하는 단계;
를 포함하는 기능 기반 라우팅 방법.In the function-based routing method through a functional distributed network including a plurality of nodes having at least one function,
(a) when an edge node included in the distributed function network receives an input packet, obtaining a packet function list including FID (Function ID), which is identification information for a function of the input packet, from the input packet;
(b) inserting, by the edge node, an FID label stack composed of at least one FID label into the input packet by expressing the FID in the form of a label;
(c) determining, by the edge node, an intermediate node to which the input packet is to be forwarded by referring to the FID label stack and a routing table containing information on the function of each node, and forwarding the input packet to the intermediate node; and
(d) the intermediate node performs the function of the intermediate node matching any one of the FID label stacks of the FID label stack of the input packet, and refers to the routing table and the FID label stack, and sends the input packet to another node forwarding;
A feature-based routing method comprising
상기 기능 분산 네트워크의 각 노드에 포함된 적어도 하나의 기능에 대한 집합은 타 노드에 포함된 기능에 대한 집합과 다르게 구성되는, 기능 기반 라우팅 방법.The method of claim 1,
A function-based routing method, wherein a set of at least one function included in each node of the distributed function network is configured differently from a set of functions included in other nodes.
상기 기능 기반 라우팅 방법은,
(e) 상기 (a) 단계 전, 각 노드가 자신의 기능을 타 노드와 공유함에 따라, 각 노드에서 상기 라우팅 테이블을 구축하는 단계를 더 포함하는, 기능 기반 라우팅 방법. The method of claim 1,
The function-based routing method comprises:
(e) before step (a), as each node shares its function with other nodes, the method further comprising the step of building the routing table at each node.
상기 (e) 단계는,
(e-1) 각 노드가 자신의 기능에 대한 정보를 포함한 LSA(Link State Advertisement) 메시지를 타 노드로 전송하는 단계;
(e-2) 상기 LSA 메시지를 수신한 노드는 상기 LSA 메시지에 포함된 각 노드의 기능을 바탕으로 기능 기반 라우팅 데이터베이스를 구축하고, 상기 LSA 메시지를 타 노드로 플러딩하는 단계; 및
(e-3) 상기 기능 기반 라우팅 데이터베이스에 저장된 각 노드의 기능에 대한 정보를 기능별 최단경로 알고리즘에 적용하여, 각 기능 별 라우팅 경로가 저장된 라우팅 테이블을 구축하는 단계;
를 포함하는, 기능 기반 라우팅 방법.4. The method of claim 3,
Step (e) is,
(e-1) each node transmitting a Link State Advertisement (LSA) message including information on its function to another node;
(e-2) the node receiving the LSA message constructing a function-based routing database based on the function of each node included in the LSA message, and flooding the LSA message to other nodes; and
(e-3) applying the information on the function of each node stored in the function-based routing database to a shortest path algorithm for each function to construct a routing table in which routing paths for each function are stored;
Including, a function-based routing method.
상기 (a) 단계는,
상기 에지노드가 상기 입력 패킷의 헤더의 다중 필드를 기반으로 트래픽 분류를 수행하여 상기 패킷기능리스트를 획득하는 단계를 포함하는, 기능 기반 라우팅 방법. The method of claim 1,
The step (a) is,
and obtaining, by the edge node, the packet function list by performing traffic classification based on multiple fields of a header of the input packet.
상기 기능 기반 라우팅 방법은,
(f) 상기 (a) 단계 후, 상기 패킷기능리스트에 상기 에지노드의 기능 중 적어도 하나의 기능이 포함되어 있는 경우, 상기 에지노드가 상기 패킷기능리스트에 포함된 상기 적어도 하나의 기능을 수행하는 단계를 더 포함하는, 기능 기반 라우팅 방법. The method of claim 1,
The function-based routing method comprises:
(f) after step (a), when at least one function among the functions of the edge node is included in the packet function list, the edge node performs the at least one function included in the packet function list A function-based routing method, further comprising the step.
상기 (b) 단계는,
상기 에지노드가 상기 패킷기능리스트에 포함된 기능들 중 우선순위가 높은 기능의 FID 레이블이 최상위에 배치되도록 상기 FID 레이블 스택을 우선순위에 따라 형성하여 상기 입력 패킷에 삽입하는 단계를 포함하는, 기능 기반 라우팅 방법.The method of claim 1,
Step (b) is,
and inserting, by the edge node, the FID label stack according to the priority so that the FID label of the function having a higher priority among the functions included in the packet function list is placed at the top of the input packet. based routing method.
상기 (c) 단계는,
상기 에지노드가 상기 FID 레이블 스택 중 최상위에 배치된 FID 레이블을 기반으로, 상기 최상위에 배치된 FID 레이블에 대응하는 기능을 수행하기 위한 중간노드를 상기 라우팅 테이블을 참고하여 검색하는 단계를 포함하는, 기능 기반 라우팅 방법.9. The method of claim 8,
The step (c) is,
Based on the FID label disposed at the top of the FID label stack, the edge node searches for an intermediate node for performing a function corresponding to the FID label disposed at the top with reference to the routing table. A feature-based routing method.
각 노드는,
입력 패킷을 수신하는 경우, 상기 입력 패킷으로부터 상기 입력 패킷의 기능에 대한 식별정보인 FID(Function ID)를 포함하는 패킷기능리스트를 획득하는 패킷기능리스트 획득부;
상기 FID를 레이블 형태로 표현하여, 적어도 하나의 FID 레이블로 구성된 FID 레이블 스택을 상기 입력 패킷에 삽입하는 FID 레이블 삽입부; 및
상기 각 노드의 기능에 대한 정보가 포함된 라우팅 테이블과 상기 FID 레이블 스택을 참고하여 상기 입력 패킷을 포워딩 할 타 노드를 결정하고 상기 타 노드로 포워딩하는 패킷 포워딩부;
를 포함하는, 기능 기반 라우팅 시스템.In the function-based routing system comprising a plurality of nodes that are connected to each other and have at least one function,
Each node is
a packet function list obtaining unit which, when receiving an input packet, obtains a packet function list including a function ID (FID), which is identification information for a function of the input packet, from the input packet;
an FID label inserter for expressing the FID in a label form and inserting an FID label stack composed of at least one FID label into the input packet; and
a packet forwarding unit that determines another node to which the input packet is to be forwarded by referring to the FID label stack and a routing table including information on the function of each node, and forwards the input packet to the other node;
Including, a function-based routing system.
각 노드는, 입력 패킷을 수신하는 경우, 상기 입력 패킷으로부터 상기 입력 패킷의 기능에 대한 식별정보인 FID(Fuction ID)를 포함하는 패킷기능리스트를 획득하는 단계;
상기 FID를 레이블 형태로 표현하여, 적어도 하나의 FID 레이블로 구성된 FID 레이블 스택을 상기 입력 패킷에 삽입하는 단계; 및
상기 각 노드의 기능에 대한 정보가 포함된 라우팅 테이블과 상기 FID 레이블 스택을 참고하여 상기 입력 패킷을 포워딩 할 타 노드를 결정하고 상기 타 노드로 포워딩하는 단계;
를 포함하는 기능 기반 라우팅 방법.In the function-based routing method comprising a plurality of nodes that are connected to each other and have at least one function,
obtaining, by each node, a packet function list including a function ID (FID), which is identification information for a function of the input packet, from the input packet when receiving an input packet;
expressing the FID in a label form and inserting an FID label stack composed of at least one FID label into the input packet; and
determining another node to which the input packet is to be forwarded by referring to a routing table including information on the function of each node and the FID label stack, and forwarding the input packet to the other node;
A feature-based routing method comprising
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150053010A KR102286466B1 (en) | 2015-04-15 | 2015-04-15 | Method and system for providing function-based routing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150053010A KR102286466B1 (en) | 2015-04-15 | 2015-04-15 | Method and system for providing function-based routing |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160123024A KR20160123024A (en) | 2016-10-25 |
KR102286466B1 true KR102286466B1 (en) | 2021-08-05 |
Family
ID=57446429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150053010A KR102286466B1 (en) | 2015-04-15 | 2015-04-15 | Method and system for providing function-based routing |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102286466B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101867880B1 (en) * | 2016-11-22 | 2018-06-18 | 아토리서치(주) | Method, apparatus and computer program for service fuction chainnig |
CN114374649A (en) * | 2020-10-15 | 2022-04-19 | ***通信有限公司研究院 | Hybrid routing method, device and network equipment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100473805B1 (en) | 2002-09-23 | 2005-03-10 | 한국전자통신연구원 | Method of path setup for network security service of multi-level |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100755706B1 (en) * | 2006-01-17 | 2007-09-05 | 삼성전자주식회사 | Method and apparatus for providing distributed service composition model for ad hoc networks |
-
2015
- 2015-04-15 KR KR1020150053010A patent/KR102286466B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100473805B1 (en) | 2002-09-23 | 2005-03-10 | 한국전자통신연구원 | Method of path setup for network security service of multi-level |
Also Published As
Publication number | Publication date |
---|---|
KR20160123024A (en) | 2016-10-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2544417B1 (en) | Communication system, path control apparatus, packet forwarding apparatus and path control method | |
US9832031B2 (en) | Bit index explicit replication forwarding using replication cache | |
US8194664B2 (en) | Two-level load-balancing of network traffic over an MPLS network | |
KR100971050B1 (en) | Label switching in fibre channel networks | |
US8599721B2 (en) | Composite next hops for forwarding data in a network switching device | |
CN108259341B (en) | Prefix label distribution method and SDN controller | |
US20150103824A1 (en) | Communication system, control apparatus, communication method and program | |
JP6872647B2 (en) | Systems and methods for processing packets in computer networks | |
US9306835B2 (en) | Scalable forwarding table with overflow address learning | |
CN106603413B (en) | Method and device for transmitting flow through designated path | |
WO2014133015A1 (en) | Control apparatus, communication system, switch control method and program | |
US10069648B2 (en) | Communication system, control apparatus, communication control method and program | |
JP2015159486A (en) | relay node and route control method | |
CN102946349A (en) | OSPF (open shortest path first) protocol-based Ethernet E-Line service link discovery method and device | |
KR20090110916A (en) | Method, bridge and computer network for calculating a spanning tree based on link state advertisementlsa | |
JP5644948B2 (en) | Packet transfer system, control device, packet transfer method and program | |
JP6311611B2 (en) | CONTROL DEVICE, COMMUNICATION SYSTEM, CONTROL INFORMATION CREATION METHOD, AND PROGRAM | |
JP6064989B2 (en) | Control device, communication system, node control method, and program | |
KR102286466B1 (en) | Method and system for providing function-based routing | |
CN108965122B (en) | Routing method, device and computer readable storage medium | |
CN109861912B (en) | Optimizing fabric path forwarding for virtual nodes within an electronic device | |
EP3104562B1 (en) | Method of aggregation of flows in ict networks | |
KR100552518B1 (en) | The apparatus for implementation of ECMP in Network Processor | |
US20230216785A1 (en) | Source routing apparatus and method in icn | |
Ibanez et al. | Path-moose: a scalable all-path bridging protocol |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |