KR20140051093A - Method for managing and sharing symmetric flow and asymmetric flow in duplexed network - Google Patents

Method for managing and sharing symmetric flow and asymmetric flow in duplexed network Download PDF

Info

Publication number
KR20140051093A
KR20140051093A KR1020130125692A KR20130125692A KR20140051093A KR 20140051093 A KR20140051093 A KR 20140051093A KR 1020130125692 A KR1020130125692 A KR 1020130125692A KR 20130125692 A KR20130125692 A KR 20130125692A KR 20140051093 A KR20140051093 A KR 20140051093A
Authority
KR
South Korea
Prior art keywords
flow
network interface
information
interface unit
unit
Prior art date
Application number
KR1020130125692A
Other languages
Korean (ko)
Other versions
KR102088286B1 (en
Inventor
박상길
이준경
강동원
김상완
이왕봉
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to US14/059,617 priority Critical patent/US9240948B2/en
Priority to US14/060,508 priority patent/US9258239B2/en
Publication of KR20140051093A publication Critical patent/KR20140051093A/en
Application granted granted Critical
Publication of KR102088286B1 publication Critical patent/KR102088286B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/16Flow control; Congestion control in connection oriented networks, e.g. frame relay
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows

Abstract

A network dualizing device according to the present invention comprises multiple network interface units which store information on a flow flowing in the network interface units when no information on the flow exists and which provide the information on the flow for a master unit when the flow accords with an asymmetric flow; and the master unit which stores the information on the flow provided by the network interface units and which provides information on an opposite flow for the network interface units when the information on the opposite flow is stored in the master unit. Therefore, the present invention enables integrated management and analysis for the asymmetric flow which has different paths for taking in and discharging packets. [Reference numerals] (210) First network interface unit; (220) Second network interface unit; (230) Third network interface unit; (240) Fourth network interface unit; (250) Master unit

Description

이중화된 네트워크에서의 대칭 플로우 및 비대칭 플로우 관리 및 공유 방법{Method for managing and sharing symmetric flow and asymmetric flow in duplexed network}FIELD OF THE INVENTION [0001] The present invention relates to symmetric flows and asymmetric flows in duplexed networks,

본 발명은 네트워크 이중화(network duplexing)에 관한 것으로, 더욱 상세하게는 네트워크 이중화 장치로의 패킷 유입 경로와 네트워크 이중화 장치로부터의 패킷 유출 경로가 상이하게 구성되는 비대칭 플로우(asymmetric flow)에 대하여, 통합적인 플로우 정보 관리 및 분석을 가능하게 하는 방법 및 장치에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates generally to network duplexing and, more particularly, to an asymmetric flow in which a packet flow path to a network duplication device and a packet flow path from a network duplication device are configured differently, And more particularly to a method and apparatus for enabling flow information management and analysis.

통신사의 PoP(Point of Presence) 지점이나 엔터프라이즈 망(enterprise network)에서 네트워크 이중화가 적용될 경우, 트래픽의 유입 경로 또는 유출 경로가 각각 2개 이상으로 구성될 수 있다. 이러한 경우에 원격지로부터의 접속경로와 관리 네트워크에 해당하는 노드(단말)에서 발생하는 트래픽이 서로 다른 경로를 이용하는 상황이 발생될 수 있다.When a network duplication is applied at a point of presence (PoP) point or an enterprise network of a communication company, a traffic flow path or an outflow path may be composed of two or more, respectively. In this case, a situation may occur in which a connection path from a remote place and a traffic generated from a node (terminal) corresponding to the management network use different paths.

이와 같이 원격지로부터 발생되어 단말로 향하는 트래픽의 플로우와 단말에서 발생되어 원격지로 향하는 트래픽의 플로우가 네트워크 이중화 장치 내에서 서로 다른 경로를 취하는 경우, 이러한 플로우를 비대칭 플로우(asymmetric flow)라 정의할 수 있다. 반면, 원격지로부터 발생되어 단말로 향하는 트래픽의 플로우와 단말에서 발생되어 원격지로 향하는 트래픽의 플로우가 네트워크 이중화 장치 내에서 동일한 경로를 취하는 경우, 이러한 플로우를 대칭 플로우(symmetric flow)라 정의할 수 있다.As described above, when a flow of traffic generated from a remote location to a terminal and a flow of traffic generated at a terminal and directed to a remote location take different paths in the network duplication apparatus, this flow can be defined as an asymmetric flow . On the other hand, when the flow of traffic originating from a remote location to the terminal and the flow of traffic originating from the terminal to the remote location takes the same route in the network duplication apparatus, this flow can be defined as a symmetric flow.

이때, 비대칭 플로우를 구성하는 플로우들은 각각 다른 네트워크 인터페이스 유닛에서 관리되기 때문에, 플로우들에 대한 통일된 관리가 어려운 문제점을 초래하며, 이는 네트워크 이중화 환경에서 서비스 제공이나 QoS(Quality of Service)에 대한 일관적인 관리를 어렵게 만드는 원인이 된다.At this time, since the flows constituting the asymmetric flows are managed in different network interface units, unified management of the flows becomes a difficult problem. This is a problem in the network redundancy environment, This makes the management difficult.

따라서, 여러 인터페이스를 갖는 이중화 된 네트워크에서 이러한 비대칭 플로우에 대한 통일된 정보 관리 방법을 제공한다면, 서비스 제공이나 QoS등의 진일보한 대응이 가능하다. Therefore, if a unified information management method for such an asymmetric flow is provided in a redundant network having a plurality of interfaces, it is possible to provide advanced service such as service provision and QoS.

네트워크 서비스 사업자나, 엔터프라이즈 망의 관리자, Telco 사업자의 경우 모든 인터페이스에 유입되는 패킷에 대해 동일한 조건 하에서 분석할 수 있는 기능을 제시한다면, 확장성(Scalability), 안정성(Auto-Load Balancing), 추가 용량(Additional Capacity), 유연한 배치(Flexible Deployment)등의 다양한 기능을 제공할 수 있을 것이다.In the case of a network service provider, an enterprise network manager, and a telco operator, if a packet can be analyzed under the same conditions for packets entering all interfaces, scalability, stability (auto-load balancing) (Additional Capacity), and flexible deployment (Flexible Deployment).

상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 패킷의 유입 경로와 유출 경로가 상이한 비대칭 플로우(asymmetric flow)에 대하여, 통합적인 분석 및 관리를 가능하게 하는 네트워크 이중화 장치를 제공하는데 있다.SUMMARY OF THE INVENTION It is an object of the present invention to solve the above problems and provide a network duplication apparatus capable of performing an integrated analysis and management of an asymmetric flow in which an inflow path and an outflow path of a packet are different.

상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은, 패킷의 유입 경로와 유출 경로가 상이한 비대칭 플로우(asymmetric flow)에 대하여, 통합적인 분석 및 관리를 가능하게 하는 네트워크 이중화 방법을 제공하는데 있다.Another object of the present invention is to provide a network duplication method capable of performing an integrated analysis and management of an asymmetric flow in which an entry route and an exit route of a packet are different from each other.

상기 목적을 달성하기 위한 본 발명은, 마스터 유닛과 복수의 네트워크 인터페이스 유닛들을 구비한 네트워크 이중화 장치로서, 자신에게 유입된 플로우의 정보가 생성되어 있지 않은 경우 상기 플로우의 정보를 저장하고, 상기 플로우가 비대칭 플로우에 해당하는 경우 상기 플로우의 정보를 상기 마스터 유닛에 제공하고, 상기 플로우에 대한 반대편 플로우의 정보를 상기 마스터 유닛에 요청하여 수신하는, 복수의 네트워크 인터페이스 유닛 및 상기 네트워크 인터페이스 유닛으로부터 제공된 상기 플로우의 정보를 저장하고, 상기 플로우에 대한 반대편 플로우의 정보가 저장되어 있는지를 확인하여 상기 반대편 플로우의 정보가 저장되어 있는 경우 상기 네트워크 인터페이스 유닛에 상기 반대편 플로우의 정보를 제공하는 마스터 유닛을 포함하고, 상기 복수의 네트워크 인터페이스 유닛은 하나의 보드의 슬롯에 장착되는 네트워크 인터페이스 카드들로 구성되며, 상기 마스터 유닛은 CPU(Central Processing Unit)을 포함하여 구성되는 네트워크 이중화 장치를 제공한다.According to an aspect of the present invention, there is provided a network duplication apparatus having a master unit and a plurality of network interface units, the network duplication apparatus comprising: a storage unit configured to store information of the flow, Providing a master unit with information of the flow when it corresponds to an asymmetric flow, requesting and receiving information of the flow opposite to the flow to the master unit, and receiving the flow information from the network interface unit And a master unit for storing information of the opposite flow for the flow and providing the information of the opposite flow to the network interface unit when the information of the opposite flow is stored, The plurality of network interface units are composed of network interface cards mounted in a slot of one board, and the master unit includes a central processing unit (CPU).

여기에서, 상기 네트워크 인터페이스 유닛과 상기 마스터 유닛은 PCI-Express 인터페이스 방식으로 인터페이싱하도록 구성될 수 있다.Here, the network interface unit and the master unit may be configured to interface in a PCI-Express interface manner.

여기에서, 상기 네트워크 이중화 장치는 연결 지향형(connection-oriented) 프로토콜에 기초하여 동작할 수 있다. 이때, 상기 네트워크 인터페이스 유닛은 SYN-ACK 패킷이 유입된 경우, 상기 SYN-ACK 패킷에 대응된 SYN 패킷이 속한 플로우의 정보가 상기 네트워크 인터페이스 유닛에 저장되어 있지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지할 수 있다. 이때, 상기 네트워크 인터페이스 유닛은 SYN-ACK 패킷에 대한 ACK 패킷이 유입된 경우, 상기 SYN-ACK 패킷이 속한 플로우의 정보가 상기 네트워크 인터페이스 유닛에 저장되어 있지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지할 수 있다.Here, the network duplication device may operate based on a connection-oriented protocol. In this case, when the SYN-ACK packet is received, the network interface unit corresponds to the asymmetric flow if the information of the flow to which the SYN packet corresponding to the SYN-ACK packet belongs is not stored in the network interface unit It can be recognized. At this time, when the ACK packet for the SYN-ACK packet is received, the network interface unit determines that the flow is an asymmetric flow if the information of the flow to which the SYN-ACK packet belongs is not stored in the network interface unit can do.

여기에서, 상기 네트워크 이중화 장치는 비-연결 지향형(connectionless) 프로토콜에 기초하여 동작할 수 있다. 이때, 상기 네트워크 인터페이스 유닛은 상기 플로우에 대한 반대편 플로우가 소정의 기간 동안 상기 네트워크 인터페이스 유닛에 유입되지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지할 수 있다.Here, the network duplication device may operate based on a non-connectionless protocol. At this time, the network interface unit can perceive the flow as an asymmetric flow if the flow opposite to the flow does not flow into the network interface unit for a predetermined period.

여기에서, 상기 네트워크 인터페이스 유닛은 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 정보를 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 처리 시점에 또는 소정의 주기로 상기 마스터 유닛에게 제공하고, 상기 마스터 유닛은 상기 네트워크 인터페이스 유닛으로부터 제공된 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 정보를 저장하도록 구성될 수 있다.Wherein the network interface unit provides traffic information of flows corresponding to the asymmetric flow to the master unit at a traffic processing time of flows corresponding to the asymmetric flow or at a predetermined period, And to store traffic information of flows corresponding to the asymmetric flows provided from the asymmetric flows.

여기에서, 상기 네트워크 인터페이스 유닛은 상기 마스터 유닛과 인터페이싱하는 제어 인터페이스부, 상기 플로우를 외부와 송수신하는 네트워크 인터페이스부, 상기 네트워크 인터페이스부에서 처리되는 플로우들에 대한 정보를 저장하는 로컬 플로우 헤더 테이블 저장부, 상기 플로우들의 트래픽 정보를 저장하는 트래픽 정보 저장부 및 상기 네트워크 인터페이스부를 통하여 유입되는 패킷을 분석하여 상기 패킷에 대응된 플로우의 정보가 생성되어 있지 않은 경우 상기 플로우의 정보를 생성하여 상기 로컬 플로우 헤더 테이블 저장부에 저장하고, 상기 플로우가 비대칭 플로우에 해당하는 경우 상기 플로우의 정보를 상기 제어 인터페이스부를 통하여 상기 마스터 유닛에 제공하고 상기 플로우에 대한 반대편 플로우의 정보를 상기 마스터 유닛에 요청하여 수신하며, 상기 플로우의 트래픽 정보를 상기 트래픽 정보 저장부에 저장하는 제어부를 포함하여 구성될 수 있다.Here, the network interface unit may include a control interface unit for interfacing with the master unit, a network interface unit for transmitting / receiving the flow to / from the outside, a local flow header table storage unit for storing information on flows processed by the network interface unit, A traffic information storage unit for storing traffic information of the flows, and a packet analyzing unit for analyzing packets flowing through the network interface unit and generating information of the flow corresponding to the packets, When the flow corresponds to an asymmetric flow, provides the information of the flow to the master unit via the control interface unit and transmits information of the flow opposite to the flow to the master unit And storing the traffic information of the flow in the traffic information storage unit.

여기에서, 상기 마스터 유닛은, 상기 네트워크 인터페이스 유닛과 인터페이싱하는 제어 인터페이스부, 상기 네트워크 인터페이스 유닛으로부터 수신된 비대칭 플로우의 정보를 저장하는 비대칭 플로우 헤더 테이블 저장부, 상기 비대칭 플로우들의 트래픽 정보를 저장하는 트래픽 정보 저장부 및 상기 제어 인터페이스부를 통하여 네트워크 인터페이스 유닛으로부터 수신된 상기 비대칭 플로우의 정보를 참조하여, 상기 플로우에 대한 반대편 플로우의 정보가 저장되어 있는지를 확인하여 상기 반대편 플로우의 정보가 저장되어 있는 경우 상기 네트워크 인터페이스 유닛에 상기 반대편 플로우의 정보를 제공하고, 상기 플로우의 정보를 저장하는 제어부를 포함하여 구성될 수 있다.
Here, the master unit may include a control interface unit for interfacing with the network interface unit, an asymmetric flow header table storage unit for storing information of asymmetric flows received from the network interface unit, a traffic storing traffic information of the asymmetric flows, The information of the opposite flow for the flow is stored by referring to the information of the asymmetric flow received from the network interface unit through the information storage unit and the control interface unit and if the information of the opposite flow is stored, And a control unit for providing the network interface unit with information of the opposite flow and storing the information of the flow.

상기 다른 목적을 달성하기 위한 본 발명은, CPU(Central Processing Unit)를 포함하여 구성된 마스터 유닛과 하나의 보드의 슬롯에 장착되는 네트워크 인터페이스 카드들로 구성된 복수의 네트워크 인터페이스 유닛들을 구비한 네트워크 이중화 장치의 동작 방법으로서, 상기 네트워크 인터페이스 유닛이 상기 네트워크 인터페이스 유닛으로 유입된 플로우를 분석하는 단계, 상기 네트워크 인터페이스 유닛이 상기 유입된 플로우의 정보가 생성되어 있지 않은 경우 상기 플로우의 정보를 저장하는 단계, 상기 네트워크 인터페이스 유닛이 상기 플로우가 비대칭 플로우에 해당하는지를 판단하여 상기 플로우가 비대칭 플로우인 경우 상기 플로우의 정보를 상기 마스터 유닛에 제공하고, 상기 플로우에 대한 반대편 플로우의 정보를 상기 마스터 유닛에 요청하여 수신하는 단계, 상기 마스터 유닛이 상기 네트워크 인터페이스 유닛으로부터 제공된 상기 플로우의 정보를 저장하는 단계 및 상기 마스터 유닛이 상기 플로우에 대한 반대편 플로우의 정보가 저장되어 있는지를 확인하여 상기 반대편 플로우의 정보가 저장되어 있는 경우 상기 네트워크 인터페이스 유닛에 상기 반대편 플로우의 정보를 제공하는 단계를 포함한 네트워크 이중화 방법을 제공한다.According to another aspect of the present invention, there is provided a network duplication apparatus having a plurality of network interface units each including a master unit including a central processing unit (CPU) and network interface cards mounted in a slot of one board The method comprising the steps of: analyzing a flow of the network interface unit into the network interface unit; storing information of the flow when the information of the flow is not generated; The interface unit determines whether the flow corresponds to an asymmetric flow, and provides the information of the flow to the master unit when the flow is an asymmetric flow, and requests information of the flow opposite to the flow to the master unit The master unit stores information of the flow provided from the network interface unit, and the master unit checks whether information of the opposite flow for the flow is stored, so that the information of the opposite flow is stored And providing the information of the opposite flow to the network interface unit, if any.

여기에서, 상기 네트워크 인터페이스 유닛과 상기 마스터 유닛은 PCI-Express 인터페이스 방식으로 인터페이싱하도록 구성될 수 있다.Here, the network interface unit and the master unit may be configured to interface in a PCI-Express interface manner.

여기에서, 상기 플로우는 연결 지향형 프로토콜에 따른 플로우일 수 있다. 이때, 상기 네트워크 인터페이스 유닛은 SYN-ACK 패킷이 유입된 경우, 상기 SYN-ACK 패킷에 대응된 SYN 패킷이 속한 플로우의 정보가 상기 네트워크 인터페이스 유닛에 저장되어 있지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지할 수 있다. 이때, 상기 네트워크 인터페이스 유닛은 SYN-ACK 패킷에 대한 ACK 패킷이 유입된 경우, 상기 SYN-ACK 패킷이 속한 플로우의 정보가 상기 네트워크 인터페이스 유닛에 저장되어 있지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지할 수 있다.Here, the flow may be a flow according to a connection-oriented protocol. In this case, when the SYN-ACK packet is received, the network interface unit corresponds to the asymmetric flow if the information of the flow to which the SYN packet corresponding to the SYN-ACK packet belongs is not stored in the network interface unit It can be recognized. At this time, when the ACK packet for the SYN-ACK packet is received, the network interface unit determines that the flow is an asymmetric flow if the information of the flow to which the SYN-ACK packet belongs is not stored in the network interface unit can do.

여기에서, 상기 플로우는 비-연결 지향형 프로토콜에 따른 플로우일 수 있다. 이때, 상기 네트워크 인터페이스 유닛은 상기 플로우에 대한 반대편 플로우가 소정의 기간 동안 상기 네트워크 인터페이스 유닛에 유입되지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지할 수 있다.Here, the flow may be a flow according to a non-connection-oriented protocol. At this time, the network interface unit can perceive the flow as an asymmetric flow if the flow opposite to the flow does not flow into the network interface unit for a predetermined period.

여기에서, 상기 네트워크 이중화 방법은 상기 네트워크 인터페이스 유닛이 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 정보를 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 처리 시점에 또는 소정의 주기로 상기 마스터 유닛에게 제공하는 단계를 추가로 포함할 수 있다. 이때, 상기 네트워크 이중화 방법은 상기 마스터 유닛이 상기 네트워크 인터페이스 유닛으로부터 제공된 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 정보를 저장하는 단계를 추가로 포함할 수 있다.Here, the network duplication method may further include the step of the network interface unit providing traffic information of flows corresponding to the asymmetric flow to the master unit at a traffic processing time of the flows corresponding to the asymmetric flow or at a predetermined period . In this case, the network duplication method may further include storing the traffic information of the flows corresponding to the asymmetric flow provided from the network interface unit by the master unit.

일반적으로 네트워크 장비는 해당 인터페이스로 유입되는 트래픽에 대해서만, 플로우 테이블의 반영을 통해 유통되는 플로우기반 분석을 수행한다. 이러한 경우 이중화되어 있거나, 다중 경로를 이용하는 네트워크 환경에서는 플로우 기반의 분석을 정확하게 제공할 수 없다. In general, network equipment performs flow-based analysis, which is distributed through reflection of flow table, only for the traffic flowing into the interface. In such a case, it is impossible to accurately provide a flow-based analysis in a redundant or multi-path network environment.

본 발명에서 제안하는 PCIe NIC 카드를 이용한 비대칭 플로우에 대한 클러스터링(clustering) 기법을 적용할 경우, in-out에 연관된 다수의 경로에 대해 비대칭 플로우들을 통합적으로 관리하고 비대칭 플로우들의 트래픽 정보 또한 실시간으로 관리할 수 있게 된다. When the clustering method for asymmetric flows using the PCIe NIC card proposed in the present invention is applied, asymmetric flows are managed integrally for a plurality of paths related to in-out, and traffic information of asymmetric flows is also managed in real time .

따라서, 본 발명을 이용하면, 플로우 기반의 고속 분석(deep packet inspection)과 같은 트래픽 분석(traffic analysis)이 가능해지며, 이를 통하여 플로우 기반 응용 인식 및 제어가 가능해진다.Therefore, using the present invention, it is possible to perform traffic analysis such as flow-based deep packet inspection, thereby enabling flow-based application recognition and control.

도 1은 본 발명에 따른 네트워크 이중화 장치의 개념을 설명하기 위한 개념도이다.
도 2는 본 발명에 따른 네트워크 이중화 장치의 일 실시예 구성을 설명하기 위한 블록도이다.
도 3은 본 발명에 따른 네트워크 이중화 장치의 네트워크 인터페이스 유닛의 구성예를 설명하기 위한 블록도이다.
도 4는 본 발명에 따른 네트워크 이중화 장치의 마스터 유닛의 구성예를 설명하기 위한 블록도이다.
도 5는 본 발명에 따른 네트워크 이중화 장치의 연결 지향형 프로토콜에 대한 동작을 설명하기 위해 TCP 프로토콜에 따른 클라이언트-서버간의 패킷 전달을 예시하는 개념도이다.
도 6은 본 발명에 따른 네트워크 이중화 장치의 구성요소들 간의 연결 지향형 프로토콜에 대한 동작 절차를 예시하기 위한 메시지 순서도이다.
도 7은 본 발명에 따른 네트워크 이중화 장치의 비-연결 지향형 프로토콜에 대한 동작을 설명하기 위해 non-TCP 프로토콜에 따른 클라이언트-서버간의 패킷 전달을 예시하는 개념도이다.
도 8는 본 발명에 따른 네트워크 이중화 장치의 구성요소들 간의 비-연결 지향형 프로토콜에 대한 동작 절차를 예시하기 위한 메시지 순서도이다.
1 is a conceptual diagram for explaining the concept of a network duplication apparatus according to the present invention.
2 is a block diagram for explaining a configuration of an embodiment of a network duplication apparatus according to the present invention.
3 is a block diagram illustrating an exemplary configuration of a network interface unit of a network duplication apparatus according to the present invention.
4 is a block diagram for explaining a configuration example of a master unit of the network duplication apparatus according to the present invention.
5 is a conceptual diagram illustrating packet transfer between a client and a server according to a TCP protocol in order to explain operation of a connection-oriented protocol of the network duplication apparatus according to the present invention.
FIG. 6 is a message flow diagram illustrating an operation procedure for a connection-oriented protocol between elements of a network duplication apparatus according to the present invention.
7 is a conceptual diagram illustrating packet transfer between a client and a server according to a non-TCP protocol in order to explain operation of a non-connection-oriented protocol of the network duplication apparatus according to the present invention.
FIG. 8 is a message flow diagram illustrating an operation procedure for a non-connection-oriented protocol between elements of a network duplication apparatus according to the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다. The terms first, second, A, B, etc. may be used to describe various elements, but the elements should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries are to be interpreted as having a meaning consistent with the contextual meaning of the related art and are to be interpreted as either ideal or overly formal in the sense of the present application Do not.

이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
Hereinafter, preferred embodiments according to the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 따른 네트워크 이중화 장치의 개념을 설명하기 위한 개념도이다.1 is a conceptual diagram for explaining the concept of a network duplication apparatus according to the present invention.

도 1을 참조하면, 네트워크 이중화 장치(110)는 네 개의 노드들(101, 102, 103, 104)을 통하여 유출입되는 패킷들에 대하여 서비스를 제공하게 된다. 이때, 노드들(101, 102)은 IP 백본 망(120)과 연결되는 것으로 이해될 수 있고, 노드들(103, 104)은 가입자 액세스 망(130)에 연결되는 것으로 이해될 수 있다. 또한, 이하의 설명에서는, IP 백본 망에 서버(121)가 위치하며 가입자 액세스 망에 클라이언트(131)가 위치하는 상황을 상정하기로 한다. Referring to FIG. 1, the network duplication apparatus 110 provides services for packets flowing through four nodes 101, 102, 103, and 104. It is to be understood that the nodes 101 and 102 are connected to the IP backbone network 120 and the nodes 103 and 104 are connected to the subscriber access network 130. [ In the following description, it is assumed that the server 121 is located in the IP backbone network and the client 131 is located in the subscriber access network.

각 노드들(101, 102, 103, 104) 간의 인터페이스들(111, 112, 113, 114)은 여러 가닥의 1 기가 회선 또는 10 기가 회선을 포함하여 구성될 수 있으며, 각 노드간의 인터페이스가 네트워크 인터페이스 컨트롤러(NIC; Network Interface Controller)에 대응된다. 즉, 후술될 본 발명에 따른 네트워크 이중화 장치의 네트워크 인터페이스 유닛이 각 노드간의 인터페이스를 담당하는 네트워크 인터페이스 컨트롤러에 대응된다.The interfaces 111, 112, 113 and 114 between the respective nodes 101, 102, 103 and 104 may be configured to include a plurality of strands of one-giga-lines or 10-giga-lines, Controller (NIC). That is, the network interface unit of the network duplication apparatus according to the present invention to be described later corresponds to the network interface controller responsible for the interface between each node.

링크(141)을 통해 연결된 인터넷 회선을 통해 서버(121)로부터 노드(101)로 유입된 트래픽은 대응되는 클라이언트(131)가 위치하는 노드(103) 또는 노드(104)를 이용하여 클라이언트(131)에게 전달된다. The traffic flowing into the node 101 from the server 121 through the Internet line connected through the link 141 is transmitted to the client 131 using the node 103 or the node 104 where the corresponding client 131 is located. Lt; / RTI >

클라이언트(131)의 트래픽이 링크(143)의 연결된 회선를 통해 노드(103)로 유입되었다면, 클라이언트로부터의 트래픽은 세션 인식 기능을 갖는 네트워크 및 프로세싱 장비의 네트워크 상태에 따른 로드밸런싱 등의 기능에 의해 노드(101) 혹은 노드(102)을 통해 서버(121)로 전달된다.If the traffic of the client 131 has flowed into the node 103 through the connected line of the link 143, the traffic from the client is transferred to the node 103 by a function such as load balancing according to the network state of the session recognizing function and the processing equipment, (101) or node (102) to the server (121).

즉, 서버(121)로부터 클라이언트(131)로 전달되는 트래픽은 노드(101)로 유입되어 노드(103)를 통하여 전달된다면, 클라이언트로부터 서버로 전달되는 트래픽은 노드(103)으로 유입되어 노드(101) 또는 노드(102)를 통하여 서버(121)에게 전달될 수 있다. That is, if the traffic transmitted from the server 121 to the client 131 flows into the node 101 and is transmitted through the node 103, the traffic transmitted from the client to the server flows into the node 103, Or may be communicated to the server 121 via the node 102.

만약, 클라이언트로부터 서버로 전달되는 트래픽이 클라이언트로부터 노드 (103)로 유입되어 노드(101)를 통하여 서버로 전달된다면(즉, 클라이언트로부터 서버로의 트래픽과 서버로부터 클라이언트로의 트래픽이 동일한 경로를 취한다면), 클라이언트로부터 서버로의 플로우와 서버로부터 클라이언트로의 플로우는 대칭 플로우(symmetric flow)라 정의될 수 있다.If the traffic from the client to the server flows from the client to the node 103 and is delivered to the server via the node 101 (i.e., the traffic from the client to the server and the traffic from the server to the client take the same path The flow from the client to the server and the flow from the server to the client can be defined as a symmetric flow.

반면, 클라이언트로부터 서버로 전달되는 트래픽이 클라이언트로부터 노드 (103)로 유입되어 노드(102)를 통하여 서버로 전달된다면 클라이언트로부터 서버로의 플로우와 서버로부터 클라이언트로의 플로우는 비대칭 플로우(asymmetric flow)라 정의될 수 있다.On the other hand, if the traffic from the client to the server flows from the client to the node 103 and is delivered to the server via the node 102, the flow from the client to the server and the flow from the server to the client is asymmetric flow Can be defined.

본 발명에 따른 네트워크 이중화 장치는 이러한 이중화 된 네트워크 구조에서 비대칭 플로우에 대한 정보 및 비대칭 플로우의 트래픽 정보를 통합적으로 관리할 수 있도록 하는 것을 특징으로 한다.The network duplication apparatus according to the present invention is capable of integrally managing asymmetric flow information and asymmetric flow traffic information in the duplicated network structure.

이는, 네트워크 서비스 사업자나, 엔터프라이즈 망의 관리자, Telco 사업자에게 비대칭 플로우에 대한 플로우 정보 및 플로우의 트래픽 정보를 통합적으로 관리할 수 있도록 하여, 모든 인터페이스에 유입되는 패킷에 대해 동일한 조건 하에서 분석할 수 있는 기능을 제공할 수 있다.
This enables network service providers, enterprise network managers, and telco operators to integrally manage flow information of flow information and flow information for asymmetric flows, and to analyze packets under the same conditions for packets entering all interfaces Function can be provided.

비대칭 Asymmetry 플로우Flow 관리를 위한 네트워크 이중화 장치의 구성 Configuration of Network Duplication Device for Management

도 2는 본 발명에 따른 네트워크 이중화 장치의 일 실시예 구성을 설명하기 위한 블록도이다.2 is a block diagram for explaining a configuration of an embodiment of a network duplication apparatus according to the present invention.

도 2를 참조하면, 본 발명에 따른 네트워크 이중화 장치(200)는 복수의 네트워크 인터페이스 유닛들(210, 220, 230, 240)과 상기 복수의 네트워크 인터페이스 유닛들과 연결된 적어도 하나의 마스터 유닛(250)을 포함하여 구성될 수 있다. 예컨대, 네트워크 인터페이스 유닛들(210, 220, 230, 240)는 각각 하나의 보드(board)상의 슬롯(slot)에 장착되는 PCI-Express 형태의 네트워크 인터페이스 카드(NIC; Network Interface Controller) 형태로 구성될 수 있으며, 마스터 유닛은 메인 CPU(255; 예컨대, x86 CPU)를 포함하여 구성될 수 있다.2, a network duplication apparatus 200 according to the present invention includes a plurality of network interface units 210, 220, 230, and 240, at least one master unit 250 connected to the plurality of network interface units, As shown in FIG. For example, the network interface units 210, 220, 230, and 240 may be configured in the form of a PCI-Express network interface controller (NIC) mounted in a slot on one board And the master unit may be configured to include a main CPU 255 (e.g., an x86 CPU).

하나의 실시예로서, 본 발명에 따른 네트워크 이중화 장치는 각각 네트워크 인터페이스(예컨대, SFP+ 인터페이스; 10 Gigabit Ethernet; 211, 221, 231, 241)를 가지는 4개의 네트워크 인터페이스 유닛들(210, 220, 230, 240)과 네트워크 인터페이스 유닛들과 연결된 CPU(255)를 포함한 마스터 유닛(250)으로 구성될 수 있다. 마스터 유닛을 별도의 카드 형태로 구현하지 않고, 마스터 유닛(250)의 주요 기능을 메인 CPU(255)를 이용하여 구현할 수 있으므로, 구현에 소요되는 비용이 절감될 수 있다. 따라서, 네트워크 인터페이스 유닛들과 마스터 유닛은 하나의 서버 보드(server board) 상에 구성될 수 있을 것이다.In one embodiment, the network duplication apparatus according to the present invention includes four network interface units 210, 220, 230, and 230 each having a network interface (e.g., SFP + interface: 10 Gigabit Ethernet; 211, 221, 231, And a master unit 250 including a CPU 255 connected to the network interface units. Since the main function of the master unit 250 can be implemented using the main CPU 255 without implementing the master unit in the form of a separate card, the cost required for implementation can be reduced. Thus, the network interface units and the master unit may be configured on one server board.

네트워크 인터페이스 유닛들과 마스터 유닛은 소정의 고속 인터페이스들(261, 262, 263, 264)을 통하여 상호간의 통신을 수행하도록 구성될 수 있다. 이때, 네트워크 인터페이스 유닛들과 마스터 유닛은 상기 유닛들이 장착된 슬롯들의 인터페이스 버스를 통하여 상호간의 통신을 수행할 수도 있다.The network interface units and the master unit may be configured to perform mutual communication via predetermined high-speed interfaces 261, 262, 263, and 264. [ At this time, the network interface units and the master unit may communicate with each other through the interface buses of the slots in which the units are mounted.

본 발명에 따른 네트워크 이중화 장치에서 네트워크 인터페이스 유닛들은 외부와 트래픽 패킷의 송수신을 담당하고, 자신을 통하여 송수신되는 패킷들을 분석하여 자신을 거쳐가는 플로우의 정보와 상기 플로우들의 트래픽 정보들을 저장 및 관리한다. 그러나, 각각의 네트워크 인터페이스 유닛들은 자신을 거쳐가는 플로우가 비대칭 플로우에 해당되는 경우, 비대칭 플로우를 구성하는 반대편 플로우에 대한 정보를 가질 수 없다. 따라서, 비대칭 플로우에 대한 정보는 마스터 유닛에 의하여 통합적으로 관리된다.
In the network duplexer according to the present invention, the network interface units are responsible for transmitting and receiving traffic packets with the outside, analyzing packets transmitted and received through the network interface units, and storing and managing traffic information of the flows and traffic information of the flows. However, each network interface unit can not have information about the opposite flow that constitutes an asymmetric flow if the flow going through it is an asymmetric flow. Thus, the information about the asymmetric flow is managed integrally by the master unit.

도 3은 본 발명에 따른 네트워크 이중화 장치의 네트워크 인터페이스 유닛의 구성예를 설명하기 위한 블록도이다.3 is a block diagram illustrating an exemplary configuration of a network interface unit of a network duplication apparatus according to the present invention.

도 3을 참조하면, 본 발명에 따른 네트워크 이중화 장치의 네트워크 인터페이스 유닛의 일 구성예(300)는 제어 인터페이스부(310), 제어부(320), 로컬 플로우 헤더 테이블(LFHT: Local Flow Header Table) 저장부(330), 플로우 트래픽 정보 저장부(340) 및 네트워크 인터페이스부(350)를 포함하여 구성될 수 있다.3, an exemplary configuration 300 of a network interface unit of a network duplication apparatus according to the present invention includes a control interface unit 310, a control unit 320, a local flow header table (LFHT) (330), a flow traffic information storage unit (340), and a network interface unit (350).

먼저, 제어 인터페이스부(310)는 상술된 마스터 유닛과 인터페이싱하기 위한 구성요소이다. 이때, 제어 인터페이스부(310)는 상기 네트워크 인터페이스 유닛들이 장착된 슬롯들의 인터페이스 버스를 통하여 마스터 유닛과 통신을 수행할 수 있다. 제어 인터페이스부는 일 실시예로서 PCI-Express 인터페이스 방식으로 마스터 유닛과 연결될 수 있다. 마스터 유닛도 제어 인터페이스부(310)에 상응하는 제어 인터페이스부(410)를 구비할 수 있으며 마스터 유닛의 구성에 대해서는 후술된다.First, the control interface unit 310 is a component for interfacing with the master unit described above. At this time, the control interface unit 310 can communicate with the master unit through the interface buses of the slots in which the network interface units are mounted. The control interface unit may be connected to the master unit in a PCI-Express interface manner as an embodiment. The master unit may also include a control interface unit 410 corresponding to the control interface unit 310. The configuration of the master unit will be described later.

네트워크 인터페이스부(350)는 예컨대, SFP+ 인터페이스(10 Gigabit Ethernet) 등의 고속의 네트워크 인터페이스를 처리하는 구성요소로서, 통상적인 NIC의 기능을 수행하기 위한 구성요소이다. The network interface unit 350 is a component for processing a high-speed network interface such as an SFP + interface (10 Gigabit Ethernet), for example, and is a component for performing a function of a conventional NIC.

한편, 제어부(320), 로컬 플로우 헤더 테이블 저장부(330) 및 플로우 트래픽 정보 저장부(340)는 본 발명에 따른 네트워트 이중화 장치의 동작을 수행하기 위한 네트워크 인터페이스 유닛의 핵심 구성요소에 해당된다.The control unit 320, the local flow header table storage unit 330, and the flow traffic information storage unit 340 correspond to the core components of the network interface unit for performing the operation of the network duplication apparatus according to the present invention.

로컬 플로우 헤더 테이블 저장부(330)는 로컬 플로우 헤더 테이블(LFHT)을 저장하는 구성요소로서, 로컬 플로우 헤더 테이블(LFHT)은 각각의 네트워크 인터페이스 유닛을 거쳐가는 플로우에 대한 정보를 기록하고 있는 구성요소이다. 로컬 플로우 헤더 테이블에 그 정보가 기록되는 플로우들은 대칭 플로우를 구성하는 양쪽 플로우들과 비대칭 플로우를 구성하는 한쪽 편 플로우들일 수 있다.The local flow header table storage unit 330 is a component for storing a local flow header table LFHT. The local flow header table LFHT is a component for storing information on a flow going through each network interface unit to be. The flows in which the information is recorded in the local flow header table may be both flows constituting the symmetric flow and one-side flows constituting the asymmetric flow.

플로우 트래픽 정보 저장부(340)는 로컬 플로우 헤더 테이블 저장부에 저장된 플로우들의 트래픽 정보를 저장하는 구성요소이다. 여기서 플로우의 트래픽 정보란 예컨대, 해당 플로우의 패킷수, 데이터 총량, 전달 속도, 홉 수 등을 포함할 수 있다. 실시예에 따라서 플로우 트래픽 정보 저장부(330)와 로컬 플로우 헤더 테이블 저장부(340)는 일체로 구성될 수도 있을 것이다. The flow traffic information storage unit 340 is a component that stores traffic information of flows stored in the local flow header table storage unit. Here, the traffic information of the flow may include, for example, the number of packets of the flow, the total amount of data, the transmission rate, the number of hops, and the like. The flow traffic information storage unit 330 and the local flow header table storage unit 340 may be integrally configured according to the embodiment.

제어부(320)는 상기 네트워크 인터페이스부(350)로 유입된 트래픽 패킷을 분석하여 해당 트래픽 패킷에 대응된 제 1 플로우의 정보가 LFHT에 생성되어 있지 않은 경우, 상기 제 1 플로우의 정보를 생성하여 LFHT에 저장하는 역할을 수행한다.If the first flow information corresponding to the corresponding traffic packet is not generated in the LFHT, the control unit 320 generates the information of the first flow and outputs LFHT As shown in FIG.

또한, 제어부(320)는 상기 제 1 플로우의 반대편 플로우(이하 제 2 플로우)가 자신이 아닌 다른 네트워크 인터페이스 유닛에서 처리된다는 것을 인지하면(즉, 제 1 플로우가 비대칭 플로우에 속하는 것으로 인지한 경우), 상기 제 1 플로우의 정보를 상기 제어 인터페이스부(310)를 통하여 상기 마스터 유닛(250)에 제공한다. 또한, 제어부(320)는 상기 제 1 플로우에 대한 반대편 플로우인 제 2 플로우의 정보를 상기 마스터 유닛에 요청하여 수신할 수 있다.Further, when the controller 320 recognizes that the flow opposite to the first flow (hereinafter referred to as the second flow) is processed in the network interface unit other than itself (i.e., when the first flow is recognized as belonging to the asymmetric flow) And provides the information of the first flow to the master unit 250 through the control interface unit 310. [ In addition, the control unit 320 can request and receive information of the second flow, which is the flow opposite to the first flow, to the master unit.

이때, 제어부가 상기 제 1 플로우의 반대편 플로우(이하 제 2 플로우)가 다른 네트워크 인터페이스 유닛에서 처리되는 것을 인지하는 방법은 연결 지향형 프로토콜에 따른 플로우의 경우와 비-연결 지향형 프로토콜에 따른 플로우의 경우에 다르게 구성될 수 있다.At this time, the method of recognizing that the control unit (the second flow) opposite to the first flow is processed in the other network interface unit may be performed in the case of the flow according to the connection-oriented protocol and the case of the flow according to the non- Can be configured differently.

상술된 제어부(320)의 동작과 로컬 플로우 헤더 테이블 저장부(330) 및 플로우 트래픽 정보 저장부(340)의 역할은 구체적인 동작 사례를 참조하여 후술된다.
The operation of the control unit 320 and the roles of the local flow header table storage unit 330 and the flow traffic information storage unit 340 will be described later with reference to concrete operation examples.

도 4는 본 발명에 따른 네트워크 이중화 장치의 마스터 유닛의 구성예를 설명하기 위한 블록도이다.4 is a block diagram for explaining a configuration example of a master unit of the network duplication apparatus according to the present invention.

도 4를 참조하면, 본 발명에 따른 네트워크 이중화 장치의 마스터 유닛의 일 구성예(400)는 제어 인터페이스부(410), CPU(420), 비대칭 플로우 헤더 테이블(AFHT: Asymmetric Flow Header Table) 저장부(430) 및 비대칭 플로우 트래픽 정보 저장부(440)를 포함하여 구성될 수 있다.4, an exemplary configuration 400 of a master unit of a network duplication apparatus according to the present invention includes a control interface unit 410, a CPU 420, an asymmetric flow header table (AFHT) An asymmetric flow traffic information storage unit 440, and an asymmetric flow traffic information storage unit 440. [

먼저, 제어 인터페이스부(410)는 상술된 네트워크 인터페이스 유닛들과 인터페이싱하기 위한 구성요소이다. 이때, 제어 인터페이스부(410)는 상기 네트워크 인터페이스 유닛들이 장착된 슬롯들의 인터페이스 버스를 통하여 상기 네트워크 인터페이스 유닛들과 통신을 수행할 수 있다. 제어 인터페이스부는 일 실시예로서 PCI-Express 인터페이스 방식으로 상술된 네트워크 인터페이스 유닛들과 연결될 수 있다. First, the control interface unit 410 is a component for interfacing with the above-described network interface units. At this time, the control interface unit 410 may communicate with the network interface units through the interface buses of the slots in which the network interface units are mounted. The control interface unit may be connected to the network interface units described above in a PCI-Express interface manner as an embodiment.

한편, CPU(420), 비대칭 플로우 헤더 테이블 저장부(430) 및 비대칭 플로우 트래픽 정보 저장부(440)는 본 발명에 따른 네트워트 이중화 장치의 동작을 수행하기 위한 마스터 유닛의 핵심 구성요소에 해당된다.Meanwhile, the CPU 420, the asymmetric flow header table storage unit 430, and the asymmetric flow traffic information storage unit 440 correspond to the core components of the master unit for performing the operation of the network duplication apparatus according to the present invention.

비대칭 플로우 헤더 테이블 저장부(430)는 비대칭 플로우 헤더 테이블(AFHT)을 저장하는 구성요소로서, 비대칭 플로우 헤더 테이블(AFHT)은 비대칭 플로우들의 정보를 저장하게 된다. 즉, 네트워크 인터페이스 유닛들의 로컬 플로우 헤더 테이블에는 해당 네트워크 인터페이스 유닛들에 속한 대칭 플로우들과, 해당 네트워크 인터페이스 유닛들을 거쳐가는 비대칭 플로우의 한쪽 편 플로우들이 기록되는 반면, 비대칭 플로우 헤더 테이블에는 네트워크 인터페이스 유닛들이 처리하는 모든 비대칭 플로우에 대한 정보들이 통합적으로 기록된다.The asymmetric flow header table storage unit 430 is an element for storing the asymmetric flow header table AFHT, and the asymmetric flow header table AFHT stores information of asymmetric flows. That is, in the local flow header table of the network interface units, the symmetric flows belonging to the corresponding network interface units and the one-side flows of the asymmetric flows going through the corresponding network interface units are recorded, while the asynchronous flow header table Information about all asymmetric flows that are processed is integrated.

비대칭 플로우 트래픽 정보 저장부(440)는 비대칭 플로우 헤더 테이블 저장부에 저장된 비대칭 플로우들의 트래픽 정보를 저장하는 구성요소이다. 여기서 비대칭 플로우의 트래픽 정보란 예컨대, 해당 비대칭 플로우의 패킷수, 데이터 총량, 전달 속도, 홉 수 등을 포함할 수 있다. 비대칭 플로우의 트래픽 정보는 해당 비대칭 플로우를 구성하는 한쪽 편 플로우를 처리하는 네트워크 인터페이스 유닛들로부터 수집된다.The asymmetric flow traffic information storage unit 440 is a component for storing traffic information of asymmetric flows stored in the asymmetric flow header table storage unit. Here, the traffic information of the asymmetric flow may include, for example, the number of packets of the corresponding asymmetric flow, the total amount of data, the transmission rate, the number of hops, and the like. The traffic information of the asymmetric flow is collected from the network interface units that process the one-way flow constituting the asymmetric flow.

실시예에 따라서 비대칭 플로우 트래픽 정보 저장부(440)와 비대칭 플로우 헤더 테이블 저장부(430)는 일체로 구성될 수도 있을 것이다. 비대칭 플로우 트래픽 정보 저장부(440)와 비대칭 플로우 헤더 테이블 저장부(430)는 휘발성 메모리(volatile memory; 예컨대, RAM 등), 비휘발성 메모리(non-volatile memory; 예컨대, FLASH 메모리 등) 또는 하드 디스크 드라이브와 같은 다양한 저장장치에 위치할 수 있다. The asymmetric flow traffic information storage unit 440 and the asymmetric flow header table storage unit 430 may be integrally configured according to the embodiment. The asymmetric flow traffic information storage unit 440 and the asymmetric flow header table storage unit 430 may be stored in a nonvolatile memory such as a FLASH memory or a volatile memory such as a RAM. Lt; RTI ID = 0.0 > a < / RTI > drive.

CPU(420)는 네트워크 인터페이스 유닛으로부터 비대칭 플로우에 대한 정보를 수신하여 비대칭 플로우 헤더 테이블에 저장하고, 네트워크 인터페이스 유닛으로부터 수신한 비대칭 플로우에 속한 한쪽 편 플로우의 반대편 플로우의 정보가 이미 비대칭 플로우 헤더 테이블에 저장되어 있는 경우, 이를 네트워크 인터페이스 유닛에게 되돌려주는 제어 역할을 수행한다. 즉, CPU(420)는 상술된 동작을 수행하기 위한 프로그램 코드를 실행시키게 된다.The CPU 420 receives the information about the asymmetric flow from the network interface unit and stores it in the asymmetric flow header table, and the information of the flow opposite to the one-side flow belonging to the asymmetric flow received from the network interface unit is already stored in the asymmetric flow header table If it is stored, it performs a control role of returning it to the network interface unit. That is, the CPU 420 executes the program code for performing the above-described operation.

상술된 CPU(420)의 동작과 비대칭 플로우 헤더 테이블 저장부(430) 및 비대칭 플로우 트래픽 정보 저장부(440)의 역할은 구체적인 동작 사례를 참조하여 후술된다.
The operations of the CPU 420 and the roles of the asymmetric flow header table storage unit 430 and the asymmetric flow traffic information storage unit 440 will be described later with reference to concrete operation examples.

비대칭 Asymmetry 플로우Flow 관리를 위한 네트워크 이중화 방법 Network redundancy method for management

이하에서는, 본 발명에 따른 네트워크 이중화 장치의 동작을 연결 지향형(connection-oriented) 프로토콜의 경우와 비-연결 지향형(connectionless) 프로토콜의 경우 각각에 대해서 설명하도록 한다. 연결 지향형 프로토콜은 예컨대 TCP(Transfer Control Protocol)를 포함할 수 있으며, 비-연결 지향형 프로토콜은 non-TCP 프로토콜로서, 예컨대 UDP(User Datagram Protocol) 또는 ICMP(Internet Control Message Protocol) 등을 포함할 수 있다.
Hereinafter, the operation of the network duplication apparatus according to the present invention will be described with respect to connection-oriented protocol and non-connectionless protocol, respectively. The connection-oriented protocol may include, for example, a Transfer Control Protocol (TCP), and the non-connection-oriented protocol may be a non-TCP protocol such as User Datagram Protocol (UDP) or Internet Control Message Protocol (ICMP) .

1)연결 지향형 프로토콜에 대응된 동작 방법1) Operation method corresponding to connection-oriented protocol

도 5는 본 발명에 따른 네트워크 이중화 장치의 연결 지향형 프로토콜에 대한 동작을 설명하기 위해 TCP 프로토콜에 따른 클라이언트-서버간의 패킷 전달을 예시하는 개념도이며, 도 6은 본 발명에 따른 네트워크 이중화 장치의 구성요소들 간의 연결 지향형 프로토콜에 대한 동작 절차를 예시하기 위한 메시지 순서도이다.FIG. 5 is a conceptual diagram illustrating packet transfer between a client and a server according to a TCP protocol in order to explain operation of a connection-oriented protocol of the network duplication apparatus according to the present invention. FIG. Lt; / RTI > is a message flow diagram for illustrating an operational procedure for a connection-oriented protocol between a plurality of networks.

먼저, 도 5를 참조하면, 클라이언트(510)측에서 SYN(Synchronization) 패킷(CP1)을 서버(520)측으로 전송하여 TCP 플로우의 생성을 요청하고, 서버(520)가 TCP 플로우 생성에 응답하는 상황이 예시된다. 물론, 서버측에서 클라이언트 측으로 SYN 패킷을 전송하여 TCP 플로우의 생성을 요청하는 상황도 가능하다.5, the client 510 transmits a SYN (Synchronization) packet CP1 to the server 520 to request the generation of a TCP flow, and when the server 520 responds to the TCP flow generation . Of course, it is also possible to send a SYN packet from the server side to the client side to request the generation of the TCP flow.

TCP 프로토콜에서는, 일 측(예컨대, 클라이언트)이 보낸 SYN 패킷에 대하여 상대 측(예컨대, 서버)이 SYN-ACK 패킷을 전송하고, 다시 SYN 패킷을 보낸 일 측이 SYN-ACK 패킷에 대한 ACK 패킷을 보내는 것에 의해서 클라이언트에서 서버로의 플로우와 서버에서 클라이언트로의 플로우, 2개의 플로우가 생성될 수 있다.In the TCP protocol, a party side (e.g., a server) transmits a SYN-ACK packet to a SYN packet sent from one side (e.g., a client), and an ACK packet for a SYN- By sending, a flow from the client to the server and a flow from the server to the client, two flows can be created.

이하의 설명에서, 클라이언트 측에서 서버 측으로 전송하는 패킷은 CP#n으로 표시되며, 서버측에서 클라이언트 측으로 전송하는 패킷은 SP#n으로 표시된다. 여기서, #n은 패킷의 순서를 지정하기 위한 표현에 해당된다.In the following description, packets transmitted from the client side to the server side are denoted by CP # n, and packets transmitted from the server side to the client side are denoted by SP # n. Here, #n corresponds to a representation for designating the order of packets.

이때, '클라이언트'와 '서버' 는 패킷 송수신의 주체를 구별하기 위해 예시적으로 편의상 사용되는 용어일뿐, 엄밀한 의미에서 클라이언트와 서버의 역할을 정의하는 것이 아니며, 후술되는 동작의 역할들이 클라이언트와 서버에 한정되어 규정되는 것은 아님에 유의하여야 한다. 예컨대, 이하의 설명에서 클라이언트와 서버는 각각 제 1 장치(단말)와 제 2 장치(단말)로 명명될 수도 있다. In this case, 'client' and 'server' are terms used for convenience only in order to distinguish the subject of packet transmission and reception. In the strict sense, the roles of client and server are not defined. It should be noted that the present invention is not limited thereto. For example, in the following description, the client and the server may be referred to as a first device (terminal) and a second device (terminal), respectively.

이하에서는, 도 5와 도 6을 병행 참조하여, 본 발명에 따른 네트워크 이중화 장치의 동작 절차를 설명한다.Hereinafter, the operational procedures of the network duplication apparatus according to the present invention will be described with reference to FIGS. 5 and 6. FIG.

이하의 예시에서, 클라이언트에서 서버로의 플로우(이하에서, 클라이언트 플로우 또는 "C->S" 플로우로 명칭)는 제 1 네트워크 인터페이스 유닛을 통하여 처리되지만, 서버에서 클라이언트로의 플로우(이하에서, 서버 플로우 또는 "S->C" 플로우로 명칭)는 제 3 네트워크 인터페이스 유닛을 통하여 처리되는 상황-즉, 비대칭 플로우가 발생된 상황-을 가정하여 설명된다.
In the following example, the flow from the client to the server (hereinafter referred to as the client flow or the "C->S" flow) is processed through the first network interface unit, but the flow from the server to the client Flow or "S- >C" flow) is processed through the third network interface unit, that is, a situation where an asymmetric flow is generated.

CP1(Client Packet 1)이 제 1 네트워크 인터페이스 유닛(210)에 처음 도착하면(601), 제 1 네트워크 인터페이스 유닛(210)에서는 자신의 내부 LFHT(Symmetric Flow Header Table)를 검색하고, CP1에 대응된 플로우가 아직 생성되지 않은 것을 확인한 다음 클라이언트 플로우(Client Flow; 602)를 LFHT에 새롭게 추가한다. 즉, 이때 제 1 네트워크 인터페이스 유닛의 LFHT에 클라이언트에서 서버로 전달되는 플로우가 제 1 네트워크 인터페이스 유닛을 통하여 처리된다는 정보가 저장된다. 예시적으로, LFHT에는 "C->S"와 같은 표기방식으로 플로우의 정보가 저장되는 것으로 표현된다(도 6에서, LFHT의 음영은 LFHT상에서 현재 처리되는 항목을 지시하기 위한 것임).When the CP1 (Client Packet 1) first arrives at the first network interface unit 210 (601), the first network interface unit 210 searches its internal LFHT (Symmetric Flow Header Table) After confirming that the flow has not yet been created, a new client flow (Client Flow) 602 is added to the LFHT. That is, at this time, the LFHT of the first network interface unit stores information that the flow from the client to the server is processed through the first network interface unit. Illustratively, LFHT is represented as storing flow information in a notation such as "C- > S" (in FIG. 6, the shade of LFHT is to indicate the item currently being processed on LFHT).

이때, CP1이 SYN 패킷이므로, 제 1 네트워크 인터페이스 유닛은 아직 SYN패킷에 대응된 SYN-ACK 패킷(즉, 서버에서 클라이언트로의 트래픽; 후술될 SP1)이 제 1 네트워크 인터페이스 유닛을 통해서 전달될 것인지, 자신이 아닌 다른 네트워크 인터페이스 유닛을 통해서 전달될지를 아직 인지할 수 없는 상태이다. 따라서, 제 1 네트워크 인터페이스 유닛은 자신의 LFHT에 CP1에 대응된 플로우만을 생성하고 마스터 유닛(210)에 별도의 요청을 하지 않는다.
At this time, since CP1 is a SYN packet, the first network interface unit determines whether SYN-ACK packet (i.e., traffic from the server to the client; SP1 to be described later) corresponding to the SYN packet is still transmitted through the first network interface unit, It is not yet known whether it will be transmitted through a network interface unit other than itself. Therefore, the first network interface unit only generates a flow corresponding to CP1 in its LFHT and does not make a separate request to the master unit 210. [

다음으로, SP1(Server Packet)이 제 3 네트워크 인터페이스 유닛(230)에 처음 도착하면(603), 제 3 네트워크 인터페이스 유닛(230)에서는 자신의 내부 LFHT를 검색하고, SP1에 대응된 플로우가 아직 생성되지 않은 것을 확인한 다음 서버 플로우(Server Flow; 604)를LFHT에 새롭게 추가한다. 즉, 이때 제 3 네트워크 인터페이스 유닛의LFHT에 서버에서 클라이언트로 전달되는 플로우가 제 3 네트워크 인터페이스 유닛을 통하여 처리된다는 정보가 저장된다. 예시적으로, LFHT에는 "S->C"와 같은 표기방식으로 플로우의 정보가 저장되는 것으로 표현된다.Next, when the server packet (SP1) first arrives at the third network interface unit 230 (603), the third network interface unit 230 searches its internal LFHT, and the flow corresponding to SP1 is still generated And adds a new server flow (server flow) 604 to the LFHT. That is, at this time, the information that the flow transmitted from the server to the client to the LFHT of the third network interface unit is processed through the third network interface unit is stored. Illustratively, LFHT is represented as storing flow information in a notation such as "S-> C ".

이때, 제 3 인터페이스 유닛의 제어부는 제어 인터페이스부를 통하여 마스터 유닛에게 "S->C" 플로우를 비대칭 플로우로서 등록할 것을 요청한다. 제 3 네트워크 인터페이스 유닛은 SP1이 SYN-ACK 패킷임을 인지하였으나(패킷 헤더의 인디케이터를 확인), SYN-ACK 패킷에 대응된 SYN 패킷은 제 3 네트워크 인터페이스 유닛에서 처리된 적이 없음을 알고 있으므로(LFHT 상에 "C->S" 플로우의 정보가 없으므로), SP1 패킷이 비대칭 플로우에 해당함을 인지할 수 있기 때문이다.At this time, the control unit of the third interface unit requests the master unit to register the "S- > C" flow as an asymmetric flow through the control interface unit. The third network interface unit recognizes that SP1 is a SYN-ACK packet (confirms the indicator of the packet header), but recognizes that the SYN packet corresponding to the SYN-ACK packet has not been processed by the third network interface unit Since there is no information of the "C-> S" flow), it is possible to recognize that the SP1 packet corresponds to an asymmetric flow.

마스터 유닛(210)은 제 3 네트워크 인터페이스 유닛(230)으로부터 전달받은 서버 플로우("S->C") 정보를 AFHT에 추가하고(606), 제 3 네트워크 인터페이스 유닛(230)의 제어부에게 결과를 응답한다. 이때, 마스터 유닛은 해당 플로우("S->C")가 제 3 네트워크 인터페이스 유닛에서 처리되고 있다는 정보를 함께 AFHT에 저장하게 된다. 예컨대, 마스터 유닛의 AFHT에는 서버에서 클라이언트로의 플로우("S->C")가 제 3 네트워크 인터페이스 유닛(NIU3)에서 처리된다는 사실이 기록된다(도 6에서, AFHT의 음영은 AFHT상에서 현재 처리되는 항목을 지시하기 위한 것임).The master unit 210 adds the server flow ("S-> C") information received from the third network interface unit 230 to the AFHT 606 and sends the result to the control unit of the third network interface unit 230 Reply. At this time, the master unit stores together information indicating that the flow ("S- > C") is being processed in the third network interface unit in the AFHT. For example, in the AFHT of the master unit, it is recorded that the flow from the server to the client ("S-> C") is processed in the third network interface unit NIU3 (in FIG. 6, To indicate which item is being used).

이때, 마스터 유닛은 AFHT에 이미 반대편 플로우("C->S")에 대한 기록이 존재한다면, 반대편 플로우가 이미 마스터 유닛의 AFHT에 저장되어 있다는 사실을 제 3 네트워크 인터페이스 유닛에게 통보할 수 있다. 도 5 및 도 6의 예시에서는 이 시점에서 마스터 유닛의 AFHT에 아직 반대편 플로우("C->S")가 생성되어 있지 않으므로 마스터 유닛은 반대편 플로우가 마스터 유닛에 저장되어 있지 않다는 사실을 통지하게 된다. 한편, 마스터 유닛은 제 3 네트워크 인터페이스 유닛의 반대편 플로우("C->S")에 대한 기록이 AFHT에 존재하는지 여부에 대한 질의에 대하여 명시적인 응답을 하지 않는 것에 의해서 암시적으로 반대편 플로우("C->S")에 대한 기록이 AFHT에 존재하지 않음을 제 3 네트워크 인터페이스 유닛에게 알려주도록 구성될 수도 있을 것이다.
At this time, if there is a record for the opposite flow ("C- >S") already in the AFHT, the master unit can notify the third network interface unit that the opposite flow is already stored in the AFHT of the master unit. In the example of Fig. 5 and Fig. 6, at this point, since the opposite flow ("C- >S") has not yet been generated in the AFHT of the master unit, the master unit notifies that the opposite flow is not stored in the master unit . On the other hand, the master unit implicitly refers to the opposite flow ("C- >S") by not explicitly responding to a query as to whether a record for the opposite flow C- > S ") is not present in the AFHT.

다음으로, 제 1 네트워크 인터페이스 유닛(210)의 제어부는 CP2가 도착하면(607) 자신의 LFHT를 검색하여 반대편 플로우("S->C")가 없는지를 확인해서, 클라이언트->서버 플로우(클라이언트 플로우)가 비대칭 플로우임을 인지하고, 제어 인터페이스부를 통하여 마스터 유닛(210)에게 자신의 클라이언트 플로우 정보를 전달하고, 반대편 플로우("S->C") 정보를 요청한다(608). 이때, 제 1 네트워크 인터페이스 유닛은 이전 패킷(CP1)이 SYN 패킷이었음을 알고 있으므로, 반대편 플로우("S->C")가 자신의 LFHT에 생성되어 있지 않다는 사실만으로 "C->S" 플로우가 비대칭 플로우임을 인지할 수 있다.When the CP2 arrives (607), the control unit of the first network interface unit 210 searches the LFHT of its LFHT to confirm that there is no opposite flow ("S-> C"), Flow) is an asymmetric flow, transmits its client flow information to the master unit 210 via the control interface unit, and requests 608 the opposite flow ("S-> C") information. At this time, since the first network interface unit knows that the previous packet CP1 is a SYN packet, the fact that the opposite flow ("S- > C") is not generated in its LFHT causes the flow & Asymmetric flow.

제 1네트워크 인터페이스 유닛으로부터 제 1 네트워크 인터페이스 유닛의 클라이언트 플로우("C->S") 정보와 반대편 플로우의 검색 요청을 전달받은 마스터 유닛은 요청된 클라이언트 플로우 정보를 AFHT에 추가하고(609), 반대편 SF가 있으면 해당 AFA(221)에게 그 결과를 응답한다. 이때, 마스터 유닛은 제 1 네트워크 인터페이스 유닛이 클라이언트 플로우("C->S")를 처리한다는 사실을 AFHT에 기록한다(609).
The master unit receiving the client flow ("C- >S") information of the first network interface unit and the search request of the opposite flow from the first network interface unit adds the requested client flow information to the AFHT (609) If there is an SF, it returns the result to the corresponding AFA 221. At this time, the master unit records 609 the fact that the first network interface unit processes the client flow ("C->S") in the AFHT.

상술된 절차들을 거치면, 제 1 네트워크 인터페이스 유닛은 자신이 처리 중인 클라이언트 플로우("C->S")가 비대칭 플로우에 해당함을 인지하게 되고, 제 3 네트워크 인터페이스 유닛 또한 자신이 처리 중인 서버 플로우("S->C")가 비대칭 플로우에 해당함을 인지하게 된다. After the above-described procedures, the first network interface unit recognizes that the client flow ("C-> S") that it is processing corresponds to the asymmetric flow, and the third network interface unit also recognizes that the server flow S- > C ") corresponds to an asymmetric flow.

따라서, 이후의 절차들에서 제 1 네트워크 인터페이스 유닛은 자신의 플로우("C->S")의 트래픽 정보들(예컨대, 패킷수, 데이터 총량, 전달 속도, 홉 수 등)을 지속적으로 갱신하여 저장하며, 제 3 네트워크 인터페이스 유닛은 자신의 플로우("S->C")의 트래픽 정보들을 지속적으로 갱신하여 저장하게 된다.Therefore, in subsequent procedures, the first network interface unit continuously updates the traffic information (e.g., the number of packets, the total amount of data, the delivery rate, the number of hops, etc.) of its flow ("C-> S" , And the third network interface unit continuously updates and stores traffic information of its flow ("S- > C").

또한, 제 1, 3 네트워크 인터페이스 유닛들은 각각의 플로우에 속한 패킷들이 송수신되는 시점에서 갱신된 트래픽 정보들을 마스터 유닛에 전송할 수 있다. 또는, 제 1, 3 네트워크 인터페이스 유닛들은 각각의 플로우의 트래픽 정보들을 소정의 주기로 마스터 유닛에 전송할 수 있다. 마스터 유닛은 각각의 네트워크 인터페이스 유닛들로부터 수신된 비대칭 플로우의 트래픽 정보들을 비대칭 플로우 트래픽 정보 저장부(440)에 저장한다.In addition, the first and third network interface units can transmit updated traffic information to the master unit at the time when packets belonging to each flow are transmitted and received. Alternatively, the first and third network interface units may transmit the traffic information of each flow to the master unit at predetermined intervals. The master unit stores the asymmetric flow traffic information received from each network interface unit in the asymmetric flow traffic information storage unit 440.

이때 소정의 주기는 미리 정해진 시간 간격일 수도 있다. 또는, 미리 정해진 이벤트 조건을 충족하는 시점에서 제 1, 3 네트워크 인터페이스 유닛들은 각각의 플로우의 트래픽 정보들을 마스터 유닛에 전송하도록 구성될 수도 있다.The predetermined period may be a predetermined time interval. Alternatively, the first and third network interface units may be configured to transmit traffic information of each flow to the master unit at a time when a predetermined event condition is met.

이때, 제 1, 3 네트워크 인터페이스 유닛들은 비대칭 플로우가 아닌 플로우들에 대한 트래픽 정보들은 자체적으로만 유지하며 마스터 유닛에게 제공하지 않도록 구성될 수 있다. 상술된 방법에 의하여 제 1, 3 네트워크 인터페이스 유닛들은 자신을 거쳐가는 플로우가 대칭 플로우인지 비대칭 플로우에 속한 플로우인지를 구분할 수 있으므로, 대칭 플로우에 대한 트래픽 정보들은 자체적으로만 보관하며, 마스터 유닛에게 제공하지 않을 수 있다.At this time, the first and third network interface units may be configured so that traffic information for flows other than an asymmetric flow is maintained only by itself and not provided to the master unit. By the above-described method, the first and third network interface units can distinguish whether the flow going through them is a symmetric flow or a flow belonging to an asymmetric flow, so that traffic information for the symmetric flow is kept only by itself, I can not.

이는, 마스터 유닛과 네트워크 인터페이스 유닛들간의 통신 대역폭 부담을 줄이는 효과를 가져올 수 있다. 한편, 마스터 유닛은 자신이 속한 네트워크 이중화 장치의 비대칭 플로우들에 대한 정보들을 통합적으로 관리하고 있게 된다. 마스터 유닛은 외부(사용자/관리자)의 요청에 의해서 관리하고 있는 비대칭 플로우 정보를 제공하여 통합적인 관리가 가능하도록 할 수 있다.
This can reduce the communication bandwidth burden between the master unit and the network interface units. Meanwhile, the master unit integrally manages information on asymmetric flows of the network duplication apparatus to which the master unit belongs. The master unit can provide asymmetric flow information managed by an external (user / manager) request to enable integrated management.

한편, 이하에서는 본 발명에 따른 네트워크 이중화 장치에서 플로우 종료를 처리하는 절차를 설명한다.Hereinafter, a procedure for processing flow termination in the network duplication apparatus according to the present invention will be described.

제 3 네트워크 인터페이스 유닛에서는 SPn(Fin 패킷)이 도착하면(610), 자신의 LFHT에서 서버 플로우("S->C")를 삭제하고(611), 마스터 유닛에게도 서버 플로우의 종료를 요청하게 된다(612). 마스터 유닛은 제 3 네트워크 인터페이스 유닛으로부터 서버 플로우의 종료 요청을 수신하면, AFHT에서 서버 플로우를 삭제하고(613) 그 결과를 제 3 네트워크 인터페이스 유닛으로 반환한다.When the SPn (Fin packet) arrives (610), the third network interface unit deletes the server flow (S-> C) from its LFHT (611) and requests the master unit to terminate the server flow (612). When the master unit receives the termination request of the server flow from the third network interface unit, it deletes the server flow from the AFHT (613) and returns the result to the third network interface unit.

제 1 네트워크 인터페이스 유닛에서는 CPn(Fin 패킷)이 도착하면(614), 자신의 LFHT에서 클라이언트 플로우("C->S")를 삭제하고(615), 마스터 유닛에게도 클라이언트 플로우의 종료를 요청하게 된다(616). 마스터 유닛은 제 1 네트워크 인터페이스 유닛으로부터 클라이언트 플로우의 종료 요청을 수신하면, AFHT에서 클라이언트 플로우를 삭제하고(617) 그 결과를 제 1 네트워크 인터페이스 유닛으로 반환한다.When the CPn (Fin packet) arrives at the first network interface unit (614), the client flow ("C-> S") is deleted from its LFHT (615) and the master unit is also requested to terminate the client flow (616). Upon receiving the termination request of the client flow from the first network interface unit, the master unit deletes the client flow from the AFHT (617) and returns the result to the first network interface unit.

결과적으로, 제 1 네트워크 인터페이스 유닛과 제 3 네트워크 인터페이스 유닛의 요청에 의해서 마스터 유닛의 AFHT에서는 비대칭 플로우에 대한 정보가 모두 삭제되게 된다.
As a result, at the request of the first network interface unit and the third network interface unit, the information about the asymmetric flow is deleted in the AFHT of the master unit.

2)비-연결 지향형 프로토콜에 대응된 동작 방법2) Operation method corresponding to non-connection-oriented protocol

도 7은 본 발명에 따른 네트워크 이중화 장치의 비-연결 지향형 프로토콜에 대한 동작을 설명하기 위해 non-TCP 프로토콜에 따른 클라이언트-서버간의 패킷 전달을 예시하는 개념도이며, 도 8는 본 발명에 따른 네트워크 이중화 장치의 구성요소들 간의 비-연결 지향형 프로토콜에 대한 동작 절차를 예시하기 위한 메시지 순서도이다.FIG. 7 is a conceptual diagram illustrating packet transfer between a client and a server according to a non-TCP protocol in order to explain the operation of the non-connection-oriented protocol of the network duplication apparatus according to the present invention. Is a message flow diagram for illustrating operational procedures for a non-connection oriented protocol between components of a device.

먼저, 도 7을 참조하면, 클라이언트(710)와 서버(720)가 비-연결 지향형 프로토콜에 따라서 상호간에 데이터를 주고 받는 상황이 예시된다. 7, the client 710 and the server 720 exchange data with each other according to a non-connection-oriented protocol.

앞서 설명된 연결 지향형 프로토콜의 경우(예컨대, TCP 프로토콜)에서는, 일 측과 상대측간에 SYN, SYN-ACK, ACK 패킷을 주고 받는 것에 의한 명시적인 플로우 생성 절차가 존재하지만, 비-연결 지향형 프로토콜에서는 이러한 과정이 없이 데이터 패킷을 주고 받는 것에 의해서 플로우가 암시적으로 생성되며, 소정의 기간 동안 데이터 패킷의 교환이 없으면 플로우가 암시적으로 해제된다.In the case of the connection-oriented protocol described above (for example, the TCP protocol), there is an explicit flow generation procedure by exchanging SYN, SYN-ACK, and ACK packets between one party and the other party. A flow is implicitly generated by sending and receiving data packets without a process, and the flow is implicitly released if there is no exchange of data packets for a predetermined period of time.

이하의 설명에서도, 앞선 연결 지향형의 실시예와 마찬가지로, 클라이언트 측에서 서버 측으로 전송하는 패킷은 CP#n으로 표시되며, 서버측에서 클라이언트 측으로 전송하는 패킷은 SP#n으로 표시된다. 여기서, #n은 패킷의 순서를 지정하기 위한 표현에 해당된다. In the following description, a packet transmitted from the client side to the server side is represented by CP # n, and a packet transmitted from the server side to the client side is indicated by SP # n, as in the connection-oriented embodiment described above. Here, #n corresponds to a representation for designating the order of packets.

이하에서는, 상기 도 7과 도 8을 병행 참조하여, 본 발명에 따른 네트워크 이중화 장치의 동작 절차를 설명한다.
Hereinafter, with reference to FIGs. 7 and 8, operation procedures of the network duplication apparatus according to the present invention will be described.

이하의 예시에서, 클라이언트에서 서버로의 플로우(이하에서, 클라이언트 플로우 또는 "C->S"플로우로 명칭)는 제 1 네트워크 인터페이스 유닛을 통하여 처리되지만, 서버에서 클라이언트로의 플로우(이하에서, 서버 플로우 또는 "S->C" 플로우로 명칭)는 제 3 네트워크 인터페이스 유닛을 통하여 처리되는 상황-즉, 비대칭 플로우가 발생된 상황-을 가정하여 설명된다.
In the following example, the flow from the client to the server (hereinafter referred to as the client flow or the "C->S" flow) is processed through the first network interface unit, but the flow from the server to the client Flow or "S- >C" flow) is processed through the third network interface unit, that is, a situation where an asymmetric flow is generated.

제 1 네트워크 인터페이스 유닛에 CP1(Client Packet)이 처음 도착하면(801), 제 1 네트워크 인터페이스 유닛은 자신의 LFHT를 검색하여 CP1에 대응된 플로우 정보가 생성되어 있지 않은 것을 확인하고 LFHT에 클라이언트 플로우("C->S") 를 새롭게 추가한다(802). 이 경우, 제 1 네트워크 인터페이스 유닛은 CP1에 대응된 플로우(클라이언트 플로우)의 반대편 플로우(즉, 서버 플로우)가 제 1 네트워크 인터페이스 유닛으로 유입될지 알 수 없으므로 일단 자신의 LFHT에 클라이언트 플로우만을 추가한다.
When CP1 (Client Packet) first arrives at the first network interface unit (801), the first network interface unit searches its LFHT to confirm that no flow information corresponding to CP1 is generated, and transmits a client flow "C->S") is newly added (802). In this case, the first network interface unit adds only the client flow to its LFHT once since it can not know whether the flow opposite to the flow (client flow) corresponding to CP1 (i.e., the server flow) will be introduced into the first network interface unit.

제 3 네트워크 인터페이스 유닛에 SP1(Server Packet)이 처음 도착하면(803), 제 3 인터페이스 유닛도 자신의 LFHT를 검색하여 SP1에 대응된 플로우 정보가 생성되어 있지 않은 것을 확인하고 LFHT에 서버 플로우("S->C")를 새롭게 추가한다(804). 이 경우, 제 3 네트워크 인터페이스 유닛은 SP1에 대응된 플로우(서버 플로우)의 반대편 플로우(즉 클라이언트 플로우)가 제 1 네트워크 인터페이스 유닛을 거친 사실을 아직 확인할 수 없기 때문에 일단 자신의 LFHT에 서버 플로우 만을 추가한다.When the first server unit (SP1) first arrives at the third network interface unit (803), the third interface unit also searches its own LFHT to confirm that no flow information corresponding to SP1 has been generated and adds a server flow (" S- > C ") is newly added (804). In this case, since the third network interface unit can not yet confirm that the flow (server flow) opposite to the flow corresponding to SP1 (i.e., the client flow) has gone through the first network interface unit, do.

앞선 연결 지향형 프로토콜의 경우와는 달리 비-연결 지향형 프로토콜의 경우에는SYN 패킷 또는 SYN-ACK 패킷과 같이 패킷 교환 절차를 규정하는 패킷 인디케이터(indicator)가 존재하지 않으므로 제 3 네트워크 인터페이스 유닛의 경우도 SP1이 자신에게 온 사실만으로는 서버 플로우가 비대칭 플로우에 해당하는지 아닌지를 판단할 수 없다.
In the case of the non-connection-oriented protocol, unlike the case of the connection-oriented protocol of the prior art, there is no packet indicator such as a SYN packet or a SYN-ACK packet, It is impossible to judge whether or not the server flow corresponds to the asymmetric flow only by the fact that it has come to itself.

따라서, 제 1 네트워크 인터페이스 유닛에서는 CP1 패킷 이후에 소정의 최소 패킷 개수(예컨대, 기본 3)의 패킷이 제 1 네트워크 인터페이스 유닛을 통하여 송수신되는 기간 동안이나 소정의 타임아웃(예컨대, 기본 1초) 시간 동안에도 반대편 플로우(즉, 서버 플로우)에 속한 트래픽 패킷이 제 1 네트워크 인터페이스 유닛에게 유입되지 않으면(805), 마스터 유닛에게 클라이언트 플로우를 비대칭 플로우로서 AFHT에 등록해줄 것을 요청하고 반대편 플로우(서버 플로우)에 대한 정보를 요청한다(806).Accordingly, in the first network interface unit, a period of time during which a packet of a predetermined minimum number of packets (for example, basic 3) is transmitted / received via the first network interface unit after the CP1 packet or a predetermined timeout (805), the master unit is requested to register the client flow as an asymmetric flow in the AFHT and the opposite flow (server flow) is requested to the master unit, (806).

마스터 유닛은 제 1 네트워크 인터페이스 유닛으로부터 전달받은 클라이언트 플로우 정보를 AFHT에 추가하고(807) 제 1 네트워크 인터페이스 유닛의 제어부에게 결과를 응답한다. 이때 마스터 유닛은 반대편 플로우(서버 플로우)의 정보가 이미 AFHT에 존재하면 반대편 플로우의 정보를 제 1 네트워크 인터페이스 유닛에게 반환한다. The master unit adds the client flow information received from the first network interface unit to the AFHT (807) and returns the result to the controller of the first network interface unit. At this time, if the information of the opposite flow (server flow) already exists in the AFHT, the master unit returns information of the opposite flow to the first network interface unit.

만약, 반대편 플로우가 이미 존재하는 경우, 마스터 유닛이 반대편 플로우가 존재한다는 사실을 제 1 네트워크 인터페이스 유닛에 통보하면 제 1 네트워크 인터페이스 유닛은 클라이언트 플로우가 비대칭 플로우에 해당하는 플로우임을 명확하게 인지하게 된다. 다만, 도 8의 예에서는 아직 서버 플로우가 AFHT에 기록되어 있지 않으므로 마스터 유닛은 제 1 네트워크 인터페이스 유닛에게 반대편 플로우(서버 플로우)가 AFHT에 아직 기록되어 있지 않음을 명시적으로 통지하거나, 별도의 응답을 하지 않는 것에 의하여 암시적으로 반대편 플로우(서버 플로우)가 AFHT에 아직 기록되어 있지 않음을 제 1 네트워크 인터페이스 유닛에게 알리게 된다.If the opposite flow already exists, if the master unit notifies the first network interface unit of the fact that the opposite flow exists, the first network interface unit is clearly aware that the client flow is a flow corresponding to an asymmetric flow. However, in the example of Fig. 8, since the server flow is not yet recorded in the AFHT, the master unit explicitly notifies the first network interface unit that the opposite flow (server flow) has not yet been recorded in the AFHT, It notifies the first network interface unit that the opposite flow (server flow) has not yet been recorded in the AFHT.

또한, 제 3 네트워크 인터페이스 유닛에서는 SP1 패킷 이후에 소정의 최소 패킷 개수(예컨대, 기본 3)의 패킷이 제 3 인터페이스 유닛을 통하여 송수신되는 기간 동안에 또는 소정의 타임아웃(예컨대, 기본 1초) 시간 동안에도 반대편 플로우(즉, 클라이언트 플로우)에 속한 패킷이 제 3 네트워크 인터페이스 유닛으로 유입되지 않으면(808), 마스터 유닛에게 AFHT에 서버 플로우("S->C")의 등록을 요청하고(809), 반대편 플로우("C->S")에 대한 정보를 요청한다(809).In addition, in the third network interface unit, a packet of a predetermined minimum number of packets (for example, basic 3) after the SP1 packet is transmitted or received via the third interface unit or during a predetermined timeout (809) a request to register the server flow ("S- > C") to the AFHT to the master unit if a packet belonging to the opposite flow (i.e., client flow) And requests information about the opposite flow ("C-> S") (809).

마스터 유닛은 제 3 네트워크 인터페이스 유닛으로부터 전달받은 서버 플로우 정보를 AFHT에 추가하고(810) 제 3 네트워크 인터페이스 유닛의 제어부에게 결과를 응답한다. 이때 마스터 유닛은 반대편 플로우(클라이언트 플로우)의 정보가 이미 AFHT에 존재하면 반대편 플로우의 정보를 제 3 네트워크 인터페이스 유닛에게 반환한다. The master unit adds the server flow information received from the third network interface unit to the AFHT (810) and returns the result to the controller of the third network interface unit. At this time, if the information of the opposite flow (client flow) already exists in the AFHT, the master unit returns information of the opposite flow to the third network interface unit.

만약, 반대편 플로우가 이미 존재하는 경우, 마스터 유닛이 반대편 플로우가 존재한다는 사실을 제 3 네트워크 인터페이스 유닛에 통보하면 제 3 네트워크 인터페이스 유닛은 서버 플로우가 비대칭 플로우에 해당하는 플로우임을 명확하게 인지하게 된다. 도 8의 예에서는 이 시점에 클라이언트 플로우("C->S")가 AFHT에 기록되어 있으므로 마스터 유닛은 제 3 네트워크 인터페이스 유닛에게 반대편 플로우(클라이언트 플로우)가 AFHT에 기록되어 있음을 명시적으로 통지할 수 있다. 따라서, 제 3 네트워크 인터페이스 유닛은 자신의 서버 플로우가 비대칭 플로우에 해당되는 플로우임을 명시적으로 인지할 수 있게 된다.
If the opposite flow already exists, if the master unit notifies the third network interface unit that there is an opposite flow, the third network interface unit is clearly aware that the server flow is a flow corresponding to an asymmetric flow. 8, since the client flow ("C- >S") is recorded in the AFHT, the master unit notifies the third network interface unit explicitly that the opposite flow (client flow) can do. Thus, the third network interface unit can explicitly recognize that its server flow is a flow corresponding to an asymmetric flow.

제 1 네트워크 인터페이스 유닛의 제어부는 이후에도 계속 반대편 플로우(서버 플로우)가 자신에게 유입되지 않는 경우에는 최대 패킷 개수(예컨대, 기본=100)가 될 동안 일정한 수의 패킷(예컨대, 기본=10)이 처리될 때마다 마스터 유닛의 제어부에게 플로우의 갱신된 트래픽 정보를 전송하고(예컨대, 811) 반대편 플로우 정보에 대한 요청 메시지를 보낸다. 마스터 유닛은 제 1 네트워크 인터페이스 유닛으로부터 전달받은 클라이언트 플로우 트래픽 정보를 비대칭 플로우 트래픽 정보 저장부에 추가하고 제 1 네트워크 인터페이스 유닛의 제어부에게 결과를 응답한다. 이때 반대편 플로우가 존재하면 반대편 플로우에 대한 정보를 함께 반환한다.The control unit of the first network interface unit may process a certain number of packets (e.g., basic = 10) while the maximum number of packets (for example, basic = 100) is processed in the case where the opposite flow (server flow) Transmits the updated traffic information of the flow to the control unit of the master unit (e. G., 811) and sends a request message for the opposite flow information. The master unit adds the client flow traffic information received from the first network interface unit to the asymmetric flow traffic information storage unit and replies the result to the control unit of the first network interface unit. At this time, if there is an opposite flow, information about the opposite flow is returned together.

마찬가지로, 제 3 인터페이스 유닛의 제어부는 이후에도 계속 반대편 플로우(클라이언트 플로우)가 자신에게 유입되지 않는 경우에는 최대 패킷 개수(예컨대, 기본=100)가 될 동안 일정한 수의 패킷(예컨대, 기본=10)이 처리될 때마다 마스터 유닛에게 플로우의 갱신된 트래픽 정보를 전송하고(예컨대, 812) 반대편 플로우에 대한 요청 메시지를 보낸다. 마스터 유닛은 제 3 네트워크 인터페이스 유닛으로부터 전달받은 서버 플로우 트래픽 정보를 비대칭 플로우 트래픽 정보 저장부에 추가하고 제 3 네트워크 인터페이스 유닛의 제어부에게 결과를 응답한다. 이때 반대편 플로우가 존재하면 반대편 플로우에 대한 정보를 함께 반환한다.Likewise, the control unit of the third interface unit may continue to transmit a certain number of packets (e.g., basic = 10) while the maximum number of packets (e.g., basic = 100) Each time it is processed, it sends the flow of updated traffic information to the master unit (e.g., 812) and sends a request message for the opposite flow. The master unit adds the server flow traffic information received from the third network interface unit to the asymmetric flow traffic information storage unit and replies the result to the control unit of the third network interface unit. At this time, if there is an opposite flow, information about the opposite flow is returned together.

즉, 제 1 인터페이스 유닛과 제 3 인터페이스 유닛은 이미 파악된 플로우의 반대편 플로우가 자신에게 나타나지 않을 경우, 해당 플로우가 비대칭 플로우인 것으로 간주하고 소정의 주기로 플로우의 트래픽 정보를 마스터 유닛으로 전송한다. 또한, 제 1 인터페이스 유닛과 제 3 인터페이스 유닛은 마스터 유닛으로부터 반대편 플로우에 대한 정보를 언제라도 수신할 수 있으며, 반대편 플로우가 자신이 아닌 다른 인터페이스 유닛에 존재하는 경우, 명시적으로 자신의 플로우가 비대칭 플로우에 속함을 인지할 수 있다.
That is, the first interface unit and the third interface unit transmit traffic information of the flow to the master unit at a predetermined cycle, assuming that the flow is an asymmetric flow when the flow opposite to the flow already identified is not shown to the flow. In addition, the first interface unit and the third interface unit can receive information on the opposite flow at any time from the master unit, and when the opposite flow exists in another interface unit other than itself, It can be recognized that it belongs to the flow.

한편, 비-연결 지향형 프로토콜의 경우 플로우의 종료는 연결 지향형 프로토콜의 경우와는 달리, 각각의 네트워크 인터페이스 유닛이 자신이 처리 중인 플로우에 속한 패킷이 소정 시간 동안 유입되지 않는 것에 의해서 암시적으로 판단된다. 예컨대, 제 1 네트워크 인터페이스 유닛은 자신의 플로우(클라이언트 플로우)에 속한 패킷이 소정 시간 동안 유입되지 않을 경우, 클라이언트 플로우가 종료된 것으로 판단한다. 마찬가지로, 제 3 네트워크 인터페이스 유닛도 자신의 플로우(서버 플로우)에 속한 패킷이 소정 시간 동안 유입되지 않을 경우, 서버 플로우가 종료된 것으로 판단된다. 이하에서는, 제 1 네트워크 인터페이스 유닛과 제 3 네트워크 인터페이스 유닛이 각각 자신의 플로우가 종료된 것으로 판단한 경우의 절차를 설명한다.
On the other hand, in the case of the non-connection-oriented protocol, the end of the flow is implicitly judged by the fact that, unlike the case of the connection-oriented protocol, each network interface unit does not allow packets belonging to the flow it is processing to flow for a predetermined time . For example, the first network interface unit judges that the client flow has ended when a packet belonging to its own flow (client flow) is not received for a predetermined time. Likewise, when the packet belonging to the flow (server flow) of the third network interface unit is not received for a predetermined time, it is judged that the server flow has ended. Hereinafter, a procedure in the case where the first network interface unit and the third network interface unit determine that their flows have ended, respectively will be described.

먼저, 제 1 네트워크 인터페이스 유닛은 클라이언트 플로우가 종료된 것을 인지하면(813), 자신의 LFHT에서 클라이언트 플로우 정보를 삭제하고(814), 마스터 유닛에게 클라이언트 플로우가 종료되었음을 알리게 된다(815). 마스터 유닛은 제 1 네트워크 인터페이스 유닛으로부터 클라이언트 플로우의 종료를 통보 받으면, AFHT에서 클라이언트 플로우의 정보를 삭제하고(816) 그 결과를 반환한다. First, if the first network interface unit recognizes that the client flow has ended (813), it deletes (814) the client flow information in its LFHT and informs the master unit that the client flow has ended (815). When the master unit is notified of the end of the client flow from the first network interface unit, it deletes the information of the client flow from the AFHT (816) and returns the result.

동일한 절차로서, 제 3 네트워크 인터페이스 유닛은 서버 플로우가 종료된 것을 인지하면(817), 자신의 LFHT에서 서버 플로우 정보를 삭제하고(818), 마스터 유닛에게 서버 플로우가 종료되었음을 알리게 된다(819). 마스터 유닛은 제 3 네트워크 인터페이스 유닛으로부터 서버 플로우의 종료를 통보 받으면, AFHT에서 서버 플로우의 정보를 삭제하고(820) 그 결과를 반환한다.In the same procedure, if the third network interface unit recognizes that the server flow has ended (817), it deletes (818) the server flow information in its LFHT and informs the master unit that the server flow has ended (819). When the master unit is informed of the end of the server flow from the third network interface unit, the master unit deletes the information of the server flow in the AFHT (820) and returns the result.

결과적으로, 제 1 네트워크 인터페이스 유닛과 제 3 네트워크 인터페이스 유닛의 요청에 의해서 마스터 유닛의 AFHT에서는 비대칭 플로우에 대한 정보가 모두 삭제되게 된다.
As a result, at the request of the first network interface unit and the third network interface unit, the information about the asymmetric flow is deleted in the AFHT of the master unit.

연결 지향형과 비-연결 지향형 실시예를 비교하면, 연결 지향형 실시예의 경우는 SYN/SYN-ACK/ACK 메시지에 의한 명시적인 플로우 생성 절차가 존재하므로, 네트워크 인터페이스 유닛들은 상대적으로 조기에 자신이 처리하는 플로우가 비대칭 플로우인지 대칭 플로우인지를 확인할 수가 있다. 또한, 연결 지향형 실시예의 경우는 FIN 메시지에 의한 명시적인 플로우 해제 절차가 존재하므로, 네트워크 인터페이스 유닛들은 상대적으로 조기에 자신이 처리하는 플로우의 해제 여부를 확인하여 마스터 유닛에 통보가 가능하다. Comparing the connection-oriented and non-connection-oriented embodiments, in the case of the connection-oriented embodiment, there is an explicit flow generation procedure by the SYN / SYN-ACK / ACK message so that the network interface units are relatively early It can be confirmed whether the flow is an asymmetric flow or a symmetric flow. Also, in the case of the connection-oriented embodiment, since there is an explicit flow releasing procedure by the FIN message, the network interface units can notify the master unit by confirming whether or not the flow that it processes is relatively early.

반면, 비-연결 지향형 실시예의 경우는 명시적인 플로우 생성 절차가 없으므로 각 네트워크 인터페이스 유닛들은 미리 정해진 패킷수가 처리될 때까지 또는 미리 정해진 타이머값이 완료될 때까지 반대편 플로우가 자신에게 유입되지 않을 경우 해당 플로우를 비대칭 플로우를 판단하게 된다. On the other hand, in the case of the non-connection-oriented embodiment, there is no explicit flow generation procedure, so that each network interface unit can send a packet to the corresponding network interface unit when the predetermined number of packets is processed or until the predetermined timer value is completed, The asymmetric flow is determined.

그러나, 비-연결 지향형 프로토콜의 경우에도, 연결 지향형 프로토콜의 경우와 마찬가지로, NIC1과 NIC3는 비대칭 플로우가 아닌 플로우들에 대한 트래픽 정보들은 자체적으로만 유지하며 마스터 유닛에게 제공하지 않도록 구성될 수 있다. 상술된 방법에 의하여 NIC1과 NIC3는 자신을 거쳐가는 플로우가 대칭 플로우인지 비대칭 플로우에 속한 플로우인지를 구분할 수 있으므로, 대칭 플로우에 대한 트래픽 정보들은 자체적으로만 보관하며, 마스터 유닛에게 제공하지 않을 수 있다. 이는, 마스터 유닛과 네트워크 인터페이스 유닛들간의 통신 대역폭 부담을 줄이는 효과를 가져올 수 있다. 한편, 마스터 유닛은 자신이 속한 네트워크 이중화 장치의 비대칭 플로우들에 대한 정보들을 통합적으로 관리하고 있게 된다. 마스터 유닛은 외부(사용자/관리자)의 요청에 의해서 관리하고 있는 비대칭 플로우 정보를 제공하여 통합적인 관리가 가능하도록 할 수 있다.
However, in the case of a non-connection-oriented protocol, as in the case of the connection-oriented protocol, the NIC1 and the NIC3 can be configured such that traffic information for flows other than asymmetric flows are maintained only by itself and not provided to the master unit. By the above-described method, the NIC 1 and the NIC 3 can distinguish whether the flow going through them is a symmetric flow or a flow belonging to an asymmetric flow, so that the traffic information for the symmetric flow is kept only by itself and may not be provided to the master unit . This can reduce the communication bandwidth burden between the master unit and the network interface units. Meanwhile, the master unit integrally manages information on asymmetric flows of the network duplication apparatus to which the master unit belongs. The master unit can provide asymmetric flow information managed by an external (user / manager) request to enable integrated management.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.It will be apparent to those skilled in the art that various modifications and variations can be made in the present invention without departing from the spirit or scope of the present invention as defined by the following claims It can be understood that

200: 네트워크 이중화 장치
210, 220, 230, 240: 네트워크 인터페이스 유닛
250: 마스터 유닛
300: 네트워크 인터페이스 유닛
310: 제어 인터페이스부 320: 제어부
330: LFHT 저장부 340: 플로우 트래픽 정보 저장부
350: 네트워크 인터페이스부
400: 마스터 유닛
410: 제어 인터페이스부 420: CPU
430: AFHT 저장부
440: 비대칭 플로우 트래픽 정보 저장부
200: Network duplication device
210, 220, 230, 240: Network interface unit
250: Master unit
300: Network interface unit
310: control interface unit 320:
330: LFHT storage unit 340: Flow traffic information storage unit
350: Network interface unit
400: master unit
410: control interface unit 420: CPU
430: AFHT storage unit
440: Asymmetric flow traffic information storage unit

Claims (18)

마스터 유닛과 복수의 네트워크 인터페이스 유닛들을 구비한 네트워크 이중화 장치로서,
자신에게 유입된 플로우의 정보가 생성되어 있지 않은 경우 상기 플로우의 정보를 저장하고, 상기 플로우가 비대칭 플로우(asymmetric flow)에 해당하는 경우 상기 플로우의 정보를 상기 마스터 유닛에 제공하고, 상기 플로우에 대한 반대편 플로우의 정보를 상기 마스터 유닛에 요청하여 수신하는, 복수의 네트워크 인터페이스 유닛; 및
상기 네트워크 인터페이스 유닛으로부터 제공된 상기 플로우의 정보를 저장하고, 상기 플로우에 대한 반대편 플로우의 정보가 저장되어 있는지를 확인하여 상기 반대편 플로우의 정보가 저장되어 있는 경우 상기 네트워크 인터페이스 유닛에 상기 반대편 플로우의 정보를 제공하는 마스터 유닛을 포함하며,
상기 복수의 네트워크 인터페이스 유닛은 하나의 보드의 슬롯에 장착되는 네트워크 인터페이스 카드들로 구성되며, 상기 마스터 유닛은 CPU(Central Processing Unit)을 포함하여 구성되는 것을 특징으로 하는 네트워크 이중화 장치.
A network duplication apparatus having a master unit and a plurality of network interface units,
Storing information of the flow when the information of the flow introduced thereto is not generated and providing the information of the flow to the master unit when the flow corresponds to an asymmetric flow, A plurality of network interface units for requesting and receiving information of an opposite flow to the master unit; And
Storing information of the flow provided from the network interface unit and confirming whether information of the opposite flow for the flow is stored and storing information of the opposite flow in the network interface unit when the information of the opposite flow is stored Wherein the master unit comprises:
Wherein the plurality of network interface units comprise network interface cards mounted in a slot of one board, and the master unit comprises a central processing unit (CPU).
청구항 1에 있어서,
상기 네트워크 이중화 장치는 연결 지향형 프로토콜에 기초하여 동작하는 네트워크 이중화 장치.
The method according to claim 1,
Wherein the network duplication device operates based on a connection-oriented protocol.
청구항 2에 있어서,
상기 네트워크 인터페이스 유닛은 SYN-ACK 패킷이 유입된 경우, 상기 SYN-ACK 패킷에 대응된 SYN 패킷이 속한 플로우의 정보가 상기 네트워크 인터페이스 유닛에 저장되어 있지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지하는 네트워크 이중화 장치.
The method of claim 2,
When the SYN-ACK packet is received, the network interface unit recognizes that the flow corresponds to the asymmetric flow if the information of the flow to which the SYN packet corresponding to the SYN-ACK packet belongs is not stored in the network interface unit Network duplication device.
청구항 2에 있어서,
상기 네트워크 인터페이스 유닛은 SYN-ACK 패킷에 대한 ACK 패킷이 유입된 경우, 상기 SYN-ACK 패킷이 속한 플로우의 정보가 상기 네트워크 인터페이스 유닛에 저장되어 있지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지하는 네트워크 이중화 장치.
The method of claim 2,
Wherein the network interface unit recognizes that the flow corresponds to an asymmetric flow when an ACK packet for a SYN-ACK packet is received, and if information of a flow to which the SYN-ACK packet belongs is not stored in the network interface unit, Duplication device.
청구항 1에 있어서,
상기 네트워크 이중화 장치는 비-연결 지향형 프로토콜에 기초하여 동작하는 네트워크 이중화 장치.
The method according to claim 1,
Wherein the network duplication device operates based on a non-connection-oriented protocol.
청구항 5에 있어서,
상기 네트워크 인터페이스 유닛은 상기 플로우에 대한 반대편 플로우가 소정의 기간 동안 상기 네트워크 인터페이스 유닛에 유입되지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지하는 네트워크 이중화 장치.
The method of claim 5,
Wherein the network interface unit recognizes that the flow corresponds to an asymmetric flow if an opposite flow to the flow is not introduced to the network interface unit for a predetermined period.
청구항 1에 있어서,
상기 네트워크 인터페이스 유닛은
상기 비대칭 플로우에 해당하는 플로우들의 트래픽 정보를 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 처리 시점에 또는 소정의 주기로 상기 마스터 유닛에게 제공하는 네트워크 이중화 장치.
The method according to claim 1,
The network interface unit
And provides traffic information of flows corresponding to the asymmetric flow to the master unit at a traffic processing time of the flows corresponding to the asymmetric flow or at predetermined intervals.
청구항 1에 있어서,
상기 네트워크 인터페이스 유닛은
상기 비대칭 플로우에 해당하는 플로우들의 트래픽 정보를 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 처리 시점에 또는 소정의 주기로 상기 마스터 유닛에게 제공하는 네트워크 이중화 장치.
The method according to claim 1,
The network interface unit
And provides traffic information of flows corresponding to the asymmetric flow to the master unit at a traffic processing time of the flows corresponding to the asymmetric flow or at predetermined intervals.
청구항 1에 있어서,
상기 네트워크 인터페이스 유닛은
상기 마스터 유닛과 인터페이싱하는 제어 인터페이스부;
상기 플로우를 외부와 송수신하는 네트워크 인터페이스부;
상기 네트워크 인터페이스부에서 처리되는 플로우들에 대한 정보를 저장하는 로컬 플로우 헤더 테이블 저장부;
상기 플로우들의 트래픽 정보를 저장하는 트래픽 정보 저장부; 및
상기 네트워크 인터페이스부를 통하여 유입되는 패킷을 분석하여 상기 패킷에 대응된 플로우의 정보가 생성되어 있지 않은 경우 상기 플로우의 정보를 생성하여 상기 로컬 플로우 헤더 테이블 저장부에 저장하고, 상기 플로우가 비대칭 플로우에 해당하는 경우 상기 플로우의 정보를 상기 제어 인터페이스부를 통하여 상기 마스터 유닛에 제공하고 상기 플로우에 대한 반대편 플로우의 정보를 상기 마스터 유닛에 요청하여 수신하며, 상기 플로우의 트래픽 정보를 상기 트래픽 정보 저장부에 저장하는 제어부를 포함한 네트워크 이중화 장치.
The method according to claim 1,
The network interface unit
A control interface unit for interfacing with the master unit;
A network interface unit for transmitting / receiving the flow to / from the outside;
A local flow header table storage unit for storing information on flows processed by the network interface unit;
A traffic information storage unit for storing traffic information of the flows; And
Analyzing a packet flowing through the network interface unit to generate information of the flow corresponding to the packet and storing the information in the local flow header table storage unit; The information of the flow is provided to the master unit through the control interface unit, the information of the flow opposite to the flow is requested to the master unit and received, and the traffic information of the flow is stored in the traffic information storage unit A network duplication device including a control unit.
청구항 1에 있어서,
상기 마스터 유닛은
상기 네트워크 인터페이스 유닛과 인터페이싱하는 제어 인터페이스부;
상기 네트워크 인터페이스 유닛으로부터 수신된 비대칭 플로우의 정보를 저장하는 비대칭 플로우 헤더 테이블 저장부;
상기 비대칭 플로우들의 트래픽 정보를 저장하는 트래픽 정보 저장부; 및
상기 제어 인터페이스부를 통하여 네트워크 인터페이스 유닛으로부터 수신된 상기 비대칭 플로우의 정보를 참조하여, 상기 플로우에 대한 반대편 플로우의 정보가 저장되어 있는지를 확인하여 상기 반대편 플로우의 정보가 저장되어 있는 경우 상기 네트워크 인터페이스 유닛에 상기 반대편 플로우의 정보를 제공하고, 상기 플로우의 정보를 저장하는 기능을 수행하는 프로그램을 실행시키는CPU를 포함한 네트워크 이중화 장치.
The method according to claim 1,
The master unit
A control interface unit for interfacing with the network interface unit;
An asymmetric flow header table storage unit for storing asymmetric flow information received from the network interface unit;
A traffic information storage unit for storing traffic information of the asymmetric flows; And
Wherein the network interface unit checks the information of the opposite flow for the flow by referring to the information of the asymmetric flow received from the network interface unit through the control interface unit and if the information of the opposite flow is stored, And a CPU for executing a program that provides information of the opposite flow and stores the information of the flow.
CPU(Central Processing Unit)를 포함하여 구성된 마스터 유닛과 하나의 보드의 슬롯에 장착되는 네트워크 인터페이스 카드들로 구성된 복수의 네트워크 인터페이스 유닛들을 구비한 네트워크 이중화 장치의 동작 방법으로서,
상기 네트워크 인터페이스 유닛이 상기 네트워크 인터페이스 유닛으로 유입된 플로우를 분석하는 단계;
상기 네트워크 인터페이스 유닛이 상기 유입된 플로우의 정보가 생성되어 있지 않은 경우 상기 플로우의 정보를 저장하는 단계;
상기 네트워크 인터페이스 유닛이 상기 플로우가 비대칭 플로우에 해당하는지를 판단하여 상기 플로우가 비대칭 플로우인 경우 상기 플로우의 정보를 상기 마스터 유닛에 제공하고, 상기 플로우에 대한 반대편 플로우의 정보를 상기 마스터 유닛에 요청하여 수신하는 단계;
상기 마스터 유닛이 상기 네트워크 인터페이스 유닛으로부터 제공된 상기 플로우의 정보를 저장하는 단계; 및
상기 마스터 유닛이 상기 플로우에 대한 반대편 플로우의 정보가 저장되어 있는지를 확인하여 상기 반대편 플로우의 정보가 저장되어 있는 경우 상기 네트워크 인터페이스 유닛에 상기 반대편 플로우의 정보를 제공하는 단계를 포함한 네트워크 이중화 방법.
1. A method for operating a network duplicating apparatus having a plurality of network interface units each consisting of a master unit including a central processing unit (CPU) and network interface cards mounted in a slot of one board,
Analyzing the flow of the network interface unit into the network interface unit;
Storing information of the flow when the information of the flow is not generated by the network interface unit;
The network interface unit determines whether the flow corresponds to an asymmetric flow, and provides the information of the flow to the master unit when the flow is an asymmetric flow, requests information of the opposite flow for the flow to the master unit, ;
The master unit storing information of the flow provided from the network interface unit; And
Checking whether information of the opposite flow to the flow is stored in the master unit, and providing the information of the opposite flow to the network interface unit when the information of the opposite flow is stored.
청구항 11에 있어서,
상기 플로우는 연결 지향형 프로토콜에 따른 플로우인 네트워크 이중화 방법.
The method of claim 11,
Wherein the flow is a flow according to a connection-oriented protocol.
청구항 12에 있어서,
상기 네트워크 인터페이스 유닛은 SYN-ACK 패킷이 유입된 경우, 상기 SYN-ACK 패킷에 대응된 SYN 패킷이 속한 플로우의 정보가 상기 네트워크 인터페이스 유닛에 저장되어 있지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지하는 네트워크 이중화 방법.
The method of claim 12,
When the SYN-ACK packet is received, the network interface unit recognizes that the flow corresponds to the asymmetric flow if the information of the flow to which the SYN packet corresponding to the SYN-ACK packet belongs is not stored in the network interface unit Network redundancy method.
청구항 12에 있어서,
상기 네트워크 인터페이스 유닛은 SYN-ACK 패킷에 대한 ACK 패킷이 유입된 경우, 상기 SYN-ACK 패킷이 속한 플로우의 정보가 상기 네트워크 인터페이스 유닛에 저장되어 있지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지하는 네트워크 이중화 방법.
The method of claim 12,
Wherein the network interface unit recognizes that the flow corresponds to an asymmetric flow when an ACK packet for a SYN-ACK packet is received, and if information of a flow to which the SYN-ACK packet belongs is not stored in the network interface unit, Duplication method.
청구항 11에 있어서,
상기 플로우는 비-연결 지향형 프로토콜에 따른 플로우인 네트워크 이중화 방법.
The method of claim 11,
Wherein the flow is a flow according to a non-connection-oriented protocol.
청구항 15에 있어서,
상기 네트워크 인터페이스 유닛은 상기 플로우에 대한 반대편 플로우가 소정의 기간 동안 상기 네트워크 인터페이스 유닛에 유입되지 않으면 상기 플로우를 비대칭 플로우에 해당하는 것으로 인지하는 네트워크 이중화 방법.
16. The method of claim 15,
Wherein the network interface unit recognizes that the flow corresponds to an asymmetric flow if an opposite flow to the flow is not introduced to the network interface unit for a predetermined period of time.
청구항 11에 있어서,
상기 네트워크 인터페이스 유닛이 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 정보를 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 처리 시점에 또는 소정의 주기로 상기 마스터 유닛에게 제공하는 단계를 추가로 포함하는 네트워크 이중화 방법.
The method of claim 11,
Further comprising the step of the network interface unit providing traffic information of flows corresponding to the asymmetric flow to the master unit at a traffic processing time of the flows corresponding to the asymmetric flow or at a predetermined period.
청구항 17에 있어서,
상기 마스터 유닛이 상기 네트워크 인터페이스 유닛으로부터 제공된 상기 비대칭 플로우에 해당하는 플로우들의 트래픽 정보를 저장하는 단계를 추가로 포함하는 네트워크 이중화 방법.
18. The method of claim 17,
Further comprising the step of the master unit storing traffic information of flows corresponding to the asymmetric flow provided from the network interface unit.
KR1020130125692A 2012-10-22 2013-10-22 Method for managing and sharing symmetric flow and asymmetric flow in duplexed network KR102088286B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US14/059,617 US9240948B2 (en) 2012-10-22 2013-10-22 Method for managing and sharing symmetric flow and asymmetric flow in duplexed network
US14/060,508 US9258239B2 (en) 2012-10-22 2013-10-22 Method for managing and sharing symmetric flow and asymmetric flow in duplexed network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020120117236 2012-10-22
KR20120117236 2012-10-22

Publications (2)

Publication Number Publication Date
KR20140051093A true KR20140051093A (en) 2014-04-30
KR102088286B1 KR102088286B1 (en) 2020-03-12

Family

ID=50655935

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020130072073A KR102053120B1 (en) 2012-10-22 2013-06-24 Method for managing and sharing symmetric flow and asymmetric flow in duplexed network
KR1020130125692A KR102088286B1 (en) 2012-10-22 2013-10-22 Method for managing and sharing symmetric flow and asymmetric flow in duplexed network

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020130072073A KR102053120B1 (en) 2012-10-22 2013-06-24 Method for managing and sharing symmetric flow and asymmetric flow in duplexed network

Country Status (1)

Country Link
KR (2) KR102053120B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060268932A1 (en) * 2005-05-23 2006-11-30 Juniper Networks, Inc. Processing communication flows in asymmetrically routed networks
US20110255537A1 (en) * 2010-04-16 2011-10-20 Cisco Technology, Inc. Controlling Directional Asymmetricity in Wide Area Networks

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3836671B2 (en) 2000-11-20 2006-10-25 株式会社山武 Network duplexing apparatus and method
KR20030041279A (en) * 2001-11-19 2003-05-27 엘지전자 주식회사 Redundancy network system and method
KR20100109713A (en) * 2009-04-01 2010-10-11 제희석 Network dual apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060268932A1 (en) * 2005-05-23 2006-11-30 Juniper Networks, Inc. Processing communication flows in asymmetrically routed networks
US20110255537A1 (en) * 2010-04-16 2011-10-20 Cisco Technology, Inc. Controlling Directional Asymmetricity in Wide Area Networks

Also Published As

Publication number Publication date
KR102088286B1 (en) 2020-03-12
KR102053120B1 (en) 2019-12-06
KR20140051047A (en) 2014-04-30

Similar Documents

Publication Publication Date Title
US20210328889A1 (en) In-line performance monitoring
US20130304937A1 (en) Information centric network system including network path computation device, content request node, and relay node and method of computing network path using information centric network
RU2608879C2 (en) Driven by oam controller for openflow
EP2055052B1 (en) Triggering bandwidth reservation and priority remarking
US20160205008A1 (en) Diagnosis and throughput measurement of fibre channel ports in a storage area network environment
CN116208524A (en) Method, equipment and system for detecting data message
EP2837147A1 (en) Methods, systems, and computer readable media for performing diameter overload control
JP2003258903A (en) Communication line monitor system
US11102273B2 (en) Uplink performance management
US10411911B2 (en) Network as service service cross-domain orchestration method, orchestration device, and control device
US10623278B2 (en) Reactive mechanism for in-situ operation, administration, and maintenance traffic
CN113411834A (en) Message processing method, device, equipment and storage medium
JP2013507023A (en) Method and system for managing connections in a connection-oriented forward delivery environment
US8593997B2 (en) Full duplex/half duplex mismatch detecting method and full duplex/half duplex mismatch detecting apparatus applicable with the method
CN110601989A (en) Network traffic balancing method and device
KR20140051093A (en) Method for managing and sharing symmetric flow and asymmetric flow in duplexed network
US9258239B2 (en) Method for managing and sharing symmetric flow and asymmetric flow in duplexed network
JP2004343462A (en) Network measurement control system
JP4242262B2 (en) Communication system and terminal
Nikitinskiy et al. Analyzing the possibility of applying asymmetric transport protocols in terms of software defined networks
JP6446494B2 (en) Edge node device, resource control method, and program
CN104539451B (en) A kind of MEP ID acquisition methods and device
JP6117512B2 (en) Edge node device, resource control method, and program

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