KR101501242B1 - Method, device and computer-readable recording medium for aggregating network based on openflow - Google Patents
Method, device and computer-readable recording medium for aggregating network based on openflow Download PDFInfo
- Publication number
- KR101501242B1 KR101501242B1 KR20140063255A KR20140063255A KR101501242B1 KR 101501242 B1 KR101501242 B1 KR 101501242B1 KR 20140063255 A KR20140063255 A KR 20140063255A KR 20140063255 A KR20140063255 A KR 20140063255A KR 101501242 B1 KR101501242 B1 KR 101501242B1
- Authority
- KR
- South Korea
- Prior art keywords
- user terminal
- network
- address
- host
- networks
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/08—Load balancing or load distribution
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 발명의 일 태양에 따르면, 오픈플로우(OpenFlow)에 기반하여 네트워크를 병합하기 위한 방법으로서, (a) 오픈플로우 컨트롤러(Controller)가, 호스트(Host)와 통신하고자 하는 사용자 단말 장치의 가입자 정보를 참조로 하여 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크를 식별하는 단계, 및 (b) 상기 오픈플로우 컨트롤러가, 상기 사용자 단말 장치 및 상기 호스트 사이의 통신 경로 상에 존재하는 적어도 하나의 오픈플로우 스위치(Switch)에 적용되는 플로우 룰(Flow Rule)를 제어함으로써, 상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽(Data Traffic)이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 단계를 포함하는 방법이 제공된다. 본 발명에 의하면, 오픈플로우 컨트롤러가 오픈플로우 스위치에 적용되는 플로우 룰(Flow Rule)을 제어하는 것만으로도 네트워크에 걸리는 트래픽 부하를 감소시키고 통신 속도를 향상시킬 수 있게 되는 효과가 달성된다.According to an aspect of the present invention, there is provided a method for merging a network based on an open flow (OpenFlow), the method comprising the steps of: (a) receiving, by an open flow controller, subscriber information of a user terminal device Identifying a network having a privilege or a function to which the user terminal device can be connected with reference to the network; and (b) The data traffic generated between the user terminal and the host controls a flow rule to be applied to the open flow switch of the user terminal device A network that is distributed over at least two types of networks, The method is provided comprising a. According to the present invention, it is possible to reduce the traffic load on the network and improve the communication speed by merely controlling the flow rule applied to the open flow switch.
Description
본 발명은 오픈플로우(OpenFlow)에 기반하여 네트워크를 병합하기 위한 방법, 장치 및 컴퓨터 판독 가능한 기록 매체에 관한 것으로, 보다 상세하게는, 호스트(Host)와 통신하는 사용자 단말 장치의 가입자 정보를 참조로 하여 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크를 식별하고, 사용자 단말 장치 및 호스트 사이의 통신 경로 상에 존재하는 적어도 하나의 오픈플로우 스위치(Switch)에 적용되는 플로우 룰(Flow Rule)를 제어함으로써 사용자 단말 장치 및 호스트 사이에서 발생하는 데이터 트래픽(Data Traffic)이 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 방법, 장치 및 컴퓨터 판독 가능한 기록 매체에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method, apparatus and computer-readable recording medium for merging networks based on open flow (OpenFlow). More specifically, the present invention relates to a method and apparatus for merging networks by referring to subscriber information of a user terminal device communicating with a host A flow rule which is applied to at least one open flow switch existing on the communication path between the user terminal and the host, A method and apparatus for distributing and transmitting data traffic generated between a user terminal device and a host through at least two kinds of networks among a network having an authority or a function to which a user terminal device can be connected, And a computer readable recording medium.
최근 통신시장의 이슈로 급부상한 소프트웨어 정의 네트워크(SDN: Software Defined Network)는 소프트웨어 프로그래밍을 통해 네트워크 경로 설정 및 제어를 비롯한 복잡한 운용 관리를 편리하게 처리할 수 있는 차세대 네트워킹 기술이다. 이를 위해 SDN에서는 네트워크의 데이터 평면(data plane)과 제어 평면(control plane)을 분리하고 이 사이에 표준화된 인터페이스를 제공하며, 네트워크 운용자가 여러 상황에 맞추어 제어 평면을 프로그래밍함으로써 데이터 평면에서 이루어지는 통신 기능을 다양한 방식으로 제어할 수 있다.Software Defined Network (SDN) is a next-generation networking technology that can easily handle complex operation management including network routing and control through software programming. For this purpose, SDN separates the data plane and control plane of the network and provides a standardized interface between them. By programming the control plane according to various situations, Can be controlled in various ways.
종래의 인터넷 벤더의 라우터(스위치)는 제어 평면, 데이터 평면 및 관리 기능을 비롯한 여타 응용 기능들을 모두 하드웨어 제품 내에 내장하고 있으며, 그 설정 방법도 각 벤더마다 다르게 정의되어 있다. 이러한 라우터에서 사용하는 프로토콜들은 IETF를 비롯한 표준화 단체에 의해 결정되므로 네트워크 운용자가 필요로 하는 특수한 기능을 만들어 넣을 여지가 없다. 또한, 벤더의 프로토타입 구현과 기존의 다양한 장치들과의 호환성 시험을 위해서는 적지 않은 시간과 비용이 소요된다. 이러한 문제들을 해소하기 위한 기술로 연구되어 온 기술이 오픈플로우(OpenFlow)이다.Conventional Internet vendors routers (switches) have built in hardware products, including control plane, data plane, and management functions, and their setting methods are defined differently for each vendor. The protocols used by these routers are determined by the IETF and other standards bodies, so there is no room for special functions required by network operators. In addition, it takes a considerable amount of time and money to implement the prototype of the vendor and to test compatibility with various existing devices. OpenFlow is the technology that has been studied to solve these problems.
오픈플로우 기술을 이용하면, 기존의 네트워크에서 구성할 수 없던 정교하고도 맞춤화된 경로를 구성할 수 있으므로, 트래픽 패턴의 변화에 효과적으로 대처할 수 있고 가상 머신(VM: Virtual Machine)의 생성, 삭제 또는 이동이 빈번해지는 클라우드 환경에서 필요한 가상 네트워크를 빠르게 구성할 수 있다는 장점이 있다. 또한, 오픈플로우 기술을 이용하면, 종래의 벤더 별로 달리 정의된 복잡하고도 다양한 설정에 얽매일 필요 없이 네트워크 하부의 멀티벤더 장치들을 통합적으로 제어할 수 있게 되는 장점이 있다. 나아가, 오픈플로우 기술은 네트워크 운용자가 소프트웨어를 이용하여 네트워크를 제어하는 기술이므로, 오픈플로우 기술을 이용하면 각 네트워크 운용자가 원하는 정교하고도 맞춤화된 정책을 네트워크에 쉽게 반영시킬 수 있게 되는 장점이 있다.With open flow technology, it is possible to construct a sophisticated and customized path that can not be configured in existing networks, so that it can cope with changes in traffic patterns effectively and can create, delete, or move virtual machines (VMs) The advantage of this is that you can quickly configure the virtual networks you need in a cloud environment. In addition, with the use of the open flow technology, it is possible to integrally control the multi-vendor devices under the network without being entangled with the complicated and various settings defined differently from the conventional vendors. Furthermore, since the open flow technology is a technology in which a network operator controls the network using software, the open flow technology has an advantage that it can easily reflect the sophisticated and customized policies desired by each network operator in the network.
이에, 본 발명자는, 오픈플로우를 기반으로 하여 사용자 단말 장치(특히, 모바일 단말 장치)가 연결되는 네트워크를 동적으로 병합할 수 있는 기술을 개발하기에 이르렀다.Accordingly, the present inventor has developed a technique capable of dynamically merging a network to which a user terminal device (particularly, a mobile terminal device) is connected based on an open flow.
본 발명은 상술한 문제점을 모두 해결하는 것을 그 목적으로 한다.It is an object of the present invention to solve all the problems described above.
또한, 본 발명은 호스트(Host)와 통신하는 사용자 단말 장치의 가입자 정보를 참조로 하여 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크를 식별하고, 사용자 단말 장치 및 호스트 사이의 통신 경로 상에 존재하는 적어도 하나의 오픈플로우 스위치(Switch)에 적용되는 플로우 룰(Flow Rule)를 제어함으로써 사용자 단말 장치 및 호스트 사이에서 발생하는 데이터 트래픽(Data Traffic)이 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 함으로써, 사용자 단말 장치가 연결될 수 있는 여러 종류의 복수의 네트워크를 동시에 활용하여 대역폭(Bandwidth)을 실질적으로 확장시키는 것을 다른 목적으로 한다.The present invention also provides a method for identifying a network having a right or a function to which a user terminal can connect by referring to subscriber information of a user terminal device communicating with a host, By controlling a flow rule applied to at least one open flow switch existing in the user terminal device and the host, data traffic generated between the user terminal device and the host is controlled by the authority or function The present invention has another object to substantially extend the bandwidth by simultaneously utilizing a plurality of types of networks to which a user terminal can be connected.
상기 목적을 달성하기 위한 본 발명의 대표적인 구성은 다음과 같다.In order to accomplish the above object, a representative structure of the present invention is as follows.
본 발명의 일 태양에 따르면, 오픈플로우(OpenFlow)에 기반하여 네트워크를 병합하기 위한 방법으로서, (a) 오픈플로우 컨트롤러(Controller)가, 호스트(Host)와 통신하는 사용자 단말 장치의 가입자 정보를 참조로 하여 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크를 식별하는 단계, 및 (b) 상기 오픈플로우 컨트롤러가, 상기 사용자 단말 장치 및 상기 호스트 사이의 통신 경로 상에 존재하는 적어도 하나의 오픈플로우 스위치(Switch)에 적용되는 플로우 룰(Flow Rule)를 제어함으로써, 상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽(Data Traffic)이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 단계를 포함하는 방법이 제공된다.According to an aspect of the present invention, there is provided a method for merging a network based on an open flow (OpenFlow), comprising the steps of: (a) the open flow controller refers to subscriber information of a user terminal device communicating with a host Identifying a network having an authority or function to which the user terminal device can be connected, and (b) the open flow controller is operable to determine at least one By controlling a flow rule applied to an open flow switch, data traffic generated between the user terminal and the host has an authority or function to connect the user terminal A step of distributing and transmitting through at least two types of networks This method is provided.
본 발명의 다른 태양에 따르면, 오픈플로우(OpenFlow)에 기반하여 네트워크를 병합하기 위한 방법으로서, (a) 오픈플로우 스위치(Switch)가, 자신과 연결되어 있는 적어도 하나의 네트워크의 기지국에 사용자 단말 장치가 연결되면, 상기 사용자 단말 장치에 관한 정보를 오픈플로우 컨트롤러(Controller)에게 전송하는 단계, 및 (b) 상기 오픈플로우 스위치가, 상기 오픈플로우 컨트롤러로부터 전송되는 플로우 룰(Flow Rule)에 관한 정보를 참조로 하여 상기 사용자 단말 장치 및 상기 사용자 단말 장치와 통신하는 호스트(Host) 사이에서 발생하는 데이터 트래픽(Data Traffic)이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 단계를 포함하는 방법이 제공된다.According to another aspect of the present invention, there is provided a method for merging networks based on OpenFlow, the method comprising the steps of: (a) providing an open flow switch to a base station of at least one network, (B), the open flow switch transmits information on a flow rule transmitted from the open flow controller to the open flow controller And a network in which data traffic generated between the user terminal and a host communicating with the user terminal includes a right or a function to which the user terminal can be connected, And distributing the data over the network.
본 발명의 또 다른 태양에 따르면, 오픈플로우(OpenFlow)에 기반하여 네트워크를 병합하기 위한 장치로서, 호스트(Host)와 통신하는 사용자 단말 장치의 가입자 정보를 획득하는 단말 정보 수집부, 및 상기 사용자 단말 장치의 가입자 정보를 참조로 하여 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크를 식별하고, 상기 사용자 단말 장치 및 상기 호스트 사이의 통신 경로 상에 존재하는 적어도 하나의 오픈플로우 스위치(Switch)에 적용되는 플로우 룰(Flow Rule)를 제어함으로써, 상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽(Data Traffic)이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 네트워크 제어부를 포함하는 장치가 제공된다.According to another aspect of the present invention, there is provided an apparatus for merging networks based on Open Flow, the apparatus comprising: a terminal information collecting unit for acquiring subscriber information of a user terminal device communicating with a host; The method comprising the steps of: identifying a network having an authority or a function to which the user terminal can be connected with reference to the subscriber information of the apparatus, and identifying at least one open flow switch The data traffic generated between the user terminal device and the host is controlled by a flow rule applied to at least two of the networks having the authority or function to connect the user terminal device Network control that is distributed over a network of types An apparatus is provided.
본 발명의 또 다른 태양에 따르면, 오픈플로우(OpenFlow)에 기반하여 네트워크를 병합하기 위한 장치로서, 자신과 연결되어 있는 적어도 하나의 네트워크의 기지국에 사용자 단말 장치가 연결되면, 상기 사용자 단말 장치에 관한 정보를 오픈플로우 컨트롤러(Controller)에게 전송하는 단말 정보 모니터링부, 및 상기 오픈플로우 컨트롤러로부터 전송되는 플로우 룰(Flow Rule)에 관한 정보를 참조로 하여 상기 사용자 단말 장치 및 상기 사용자 단말 장치와 통신하는 호스트(Host) 사이에서 발생하는 데이터 트래픽(Data Traffic)이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 플로우 처리부를 포함하는 장치가 제공된다.According to another aspect of the present invention, there is provided an apparatus for merging networks based on OpenFlow, wherein when a user terminal device is connected to a base station of at least one network connected to the network, And a flow rule (Flow Rule) transmitted from the open flow controller to the host terminal, and transmits the information to the host terminal And a flow processor for distributing and transmitting data traffic generated between the user terminal and the host through at least two kinds of networks among the networks having the authority or the function to which the user terminal can be connected, do.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 장치 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하기 위한 컴퓨터 판독 가능한 기록 매체가 더 제공된다.In addition, there is further provided a computer readable recording medium for recording a computer program for executing the method and an apparatus and an apparatus for implementing the present invention.
본 발명에 의하면, 네트워크에 걸리는 트래픽(Traffic) 부하를 감소시키고 통신 속도를 향상시킬 수 있게 되는 효과가 달성된다.According to the present invention, it is possible to reduce the traffic load on the network and improve the communication speed.
또한, 본 발명에 의하면, 오픈플로우 컨트롤러(OpenFlow Controller) 및 오픈플로우 스위치(OpenFlow Switch)로 구성되는 오픈플로우 네트워크 기술을 이용하여 사용자 단말 장치 및 해당 사용자 단말 장치와 통신하는 호스트(Host) 사이의 통신 경로를 동적으로 제어할 수 있으므로, 오픈플로우 컨트롤러가 오픈플로우 스위치에 적용되는 플로우 룰(Flow Rule)을 제어하는 것만으로도 여러 종류의 복수의 네트워크를 동시에 활용할 수 있게 되는 효과가 달성된다.According to the present invention, communication between a user terminal device and a host communicating with the user terminal device using an open flow network technology including an open flow controller (OpenFlow Controller) and an open flow switch (OpenFlow Switch) Since the path can be dynamically controlled, the effect that the open flow controller can utilize plural kinds of networks simultaneously by controlling the flow rule applied to the open flow switch is achieved.
도 1은 본 발명에 따라 오픈플로우에 기반하여 네트워크를 병합하기 위한 전체 시스템의 구성을 개략적으로 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 오픈플로우 컨트롤러의 내부 구성을 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따라 오픈플로우 컨트롤러 및 오픈플로우 스위치에 의하여 관리되는 플로우 테이블의 구성을 예시적으로 나타내는 도면이다.
도 4는 본 발명의 일 실시예에 따라 사용자 단말 장치가 연결되는 네트워크를 병합하는 과정을 예시적으로 나타내는 도면이다.1 is a diagram schematically showing a configuration of an overall system for merging networks based on an open flow according to the present invention.
2 is a diagram illustrating an internal configuration of an open flow controller according to an embodiment of the present invention.
3 is a diagram exemplarily showing a configuration of a flow table managed by an open flow controller and an open flow switch according to an embodiment of the present invention.
4 is a diagram illustrating a process of merging a network to which a user terminal is connected according to an embodiment of the present invention.
후술하는 본 발명에 대한 상세한 설명은, 본 발명이 실시될 수 있는 특정 실시예를 예시로서 도시하는 첨부 도면을 참조한다. 이들 실시예는 당업자가 본 발명을 실시할 수 있기에 충분하도록 상세히 설명된다. 본 발명의 다양한 실시예는 서로 다르지만 상호 배타적일 필요는 없음이 이해되어야 한다. 예를 들어, 여기에 기재되어 있는 특정 형상, 구조 및 특성은 일 실시예에 관련하여 본 발명의 정신 및 범위를 벗어나지 않으면서 다른 실시예로 구현될 수 있다. 또한, 각각의 개시된 실시예 내의 개별 구성요소의 위치 또는 배치는 본 발명의 정신 및 범위를 벗어나지 않으면서 변경될 수 있음이 이해되어야 한다. 따라서, 후술하는 상세한 설명은 한정적인 의미로서 취하려는 것이 아니며, 본 발명의 범위는, 적절하게 설명된다면, 그 청구항들이 주장하는 것과 균등한 모든 범위와 더불어 첨부된 청구항에 의해서만 한정된다. 도면에서 유사한 참조부호는 여러 측면에 걸쳐서 동일하거나 유사한 기능을 지칭한다.The following detailed description of the invention refers to the accompanying drawings, which illustrate, by way of illustration, specific embodiments in which the invention may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the invention. It should be understood that the various embodiments of the present invention are different, but need not be mutually exclusive. For example, certain features, structures, and characteristics described herein may be implemented in other embodiments without departing from the spirit and scope of the invention in connection with an embodiment. It is also to be understood that the position or arrangement of the individual components within each disclosed embodiment may be varied without departing from the spirit and scope of the invention. The following detailed description is, therefore, not to be taken in a limiting sense, and the scope of the present invention is to be limited only by the appended claims, along with the full scope of equivalents to which such claims are entitled, if properly explained. In the drawings, like reference numerals refer to the same or similar functions throughout the several views.
이하에서는, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있도록 하기 위하여, 본 발명의 바람직한 실시예들에 관하여 첨부된 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings, so that those skilled in the art can easily carry out the present invention.
전체 시스템의 구성Configuration of the entire system
도 1은 본 발명에 따라 오픈플로우(OpenFlow)에 기반하여 네트워크를 병합하기 위한 전체 시스템의 구성을 개략적으로 나타내는 도면이다.1 is a diagram schematically showing a configuration of an overall system for merging networks based on OpenFlow according to the present invention.
본 명세서에서, 네트워크를 "병합"한다는 것은, 사용자 단말 장치가 접속할 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 활용하여 해당 사용자 단말 장치로부터의/로의 데이터 트래픽을 전송하는 것을 의미하는 것으로서 이해되어야 할 것이다.Herein, "merging" a network means transmitting data traffic to / from a corresponding user terminal by utilizing at least two kinds of networks among the networks having the authority or function to which the user terminal can access It should be understood as doing.
도 1에 도시되어 있는 바와 같이, 본 발명의 전체 시스템은 오픈플로우 컨트롤러(OpenFlow Controller)(100), 오픈플로우 스위치(OpenFlow Switch)(210 내지 260), 각종 네트워크의 기지국(310, 320, 330, 340), 적어도 하나의 사용자 단말 장치(410, 420), 각종 네트워크의 코어 네트워크(Core Network)(510, 520, 530), 공중 데이터 네트워크(600), 인터넷 서비스 제공자(ISP: Internet Service Provider)의 네트워크(700), 가입자 정보 관리 서버(800) 및 적어도 하나의 호스트(Host)(900)를 포함하여 구성될 수 있다.1, the overall system of the present invention includes an
먼저, 본 발명의 일 실시예에 따르면, 오픈플로우 컨트롤러(100)는 호스트(900)와 통신하는 사용자 단말 장치(410, 420)의 가입자 정보를 참조로 하여 사용자 단말 장치(410, 420)가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크를 식별하고, 사용자 단말 장치(410, 420) 및 호스트(900) 사이의 통신 경로 상에 존재하는 적어도 하나의 오픈플로우 스위치(210 내지 260)에 적용되는 플로우 룰(Flow Rule)를 제어함으로써 사용자 단말 장치(410, 420) 및 호스트(900) 사이에서 발생하는 데이터 트래픽(Data Traffic)이 사용자 단말 장치(410, 420)가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 함으로써, 사용자 단말 장치(410, 420)가 연결될 수 있는 여러 종류의 복수의 네트워크를 동시에 활용하여 대역폭(Bandwidth)을 실질적으로 확장시키는 기능을 수행한다.First, in accordance with an embodiment of the present invention, the
다음으로, 본 발명의 일 실시예에 따르면, 오픈플로우 스위치(210 내지 260)는 자신과 연결되어 있는 적어도 하나의 네트워크의 기지국(310 내지 340)에 사용자 단말 장치가 연결되면 해당 사용자 단말 장치(410, 420)에 관한 정보(즉, 해당 사용자 단말 장치(410, 420)의 식별 정보 또는 가입자 정보)를 오픈플로우 컨트롤러(100)에게 전송하고, 오픈플로우 컨트롤러(100)로부터 전송되는 플로우 룰(Flow Rule)에 관한 정보를 참조로 하여 사용자 단말 장치(410, 420) 및 사용자 단말 장치(410, 420)와 통신하는 호스트(900) 사이에서 발생하는 데이터 트래픽이 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 기능을 수행한다. 구체적으로, 본 발명의 일 실시예에 따른 오픈플로우 스위치(210 내지 260)는 위의 언급된 기능을 수행할 수 있는 내부 구성요소로서 단말 정보 모니터링부(미도시됨) 및 플로우 처리부(미도시됨)를 포함할 수 있다. 단말 정보 모니터링부는 자신과 연결되어 있는 적어도 하나의 네트워크의 기지국(310 내지 340)에 사용자 단말 장치(410, 420)가 연결되면 해당 사용자 단말 장치(410, 420)에 관한 정보(즉, 해당 사용자 단말 장치(410, 420)의 식별 정보 또는 가입자 정보)를 오픈플로우 컨트롤러(100)에게 전송하는 기능을 수행하고, 플로우 처리부는 오픈플로우 컨트롤러(100)로부터 전송되는 플로우 룰(Flow Rule)에 관한 정보를 참조로 하여 사용자 단말 장치(410, 420) 및 사용자 단말 장치(410, 420)와 통신하는 호스트(900) 사이에서 발생하는 데이터 트래픽이 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 기능을 수행한다.Next, in accordance with an embodiment of the present invention, when the user terminal device is connected to the
오픈플로우 컨트롤러(100) 및 오픈플로우 스위치(210 내지 260)의 구성에 대한 보다 자세한 설명은 후술하기로 한다.A more detailed description of the configurations of the
다음으로, 본 발명의 일 실시예에 따르면, 각종 네트워크의 기지국(310, 320, 330, 340)은 사용자 단말 장치(410, 420)와 무선으로 연결되어 사용자 단말 장치(410, 420)가 기지국(310, 320, 330, 340)을 통하여 오픈플로우 스위치(210 내지 260), 코어 네트워크(510, 520), 공중 데이터 네트워크(600), ISP 네트워크(700), 호스트(900) 등과 통신할 수 있도록 하는 기능을 수행할 수 있다. 따라서, 사용자 단말 장치(410, 420)를 목적지로 하는 패킷이나 사용자 단말 장치(410, 420)를 출발지로 하는 패킷은 기지국(310, 320, 330, 340)을 거치게 된다. 예를 들면, 본 발명의 일 실시예에 따른 기지국(310, 320, 330, 340)에는 일반적인 기지국이나 HNB(Home Node B), HeNB(Home eNode B)과 같은 펨토셀(Femtocell)이나 Wi-Fi와 같은 무선 액세스 포인트(WAP: Wireless Access Point)가 포함될 수 있으나 반드시 이에 한정되는 것은 아니다.The
다음으로, 본 발명의 일 실시예에 따르면, 사용자 단말 장치(410, 420)는 네트워크에 접속하여 서로 통신할 수 있는 기능을 갖는 기기로서, 개인용 컴퓨터(예를 들어, 데스크탑 컴퓨터, 노트북 컴퓨터 등), 워크스테이션, PDA, 태블릿 컴퓨터, 스마트폰, 이동 전화기, IPTV 수신기 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 기기라면 얼마든지 본 발명에 따른 사용자 단말 장치(410, 420)가 될 수 있다.The
한편, 본 발명의 일 실시예에 따르면, 사용자 단말 장치(410, 420)는 자신이 접속(즉, 연결)될 수 있는 네트워크의 종류마다 서로 다른 실제(Real) IP 주소를 가질 수 있다. 그런데, 본 발명의 일 실시예에 따라 사용자 단말 장치(410, 420)가 연결되는 네트워크를 동적으로 변경(즉, 병합)하기 위해서는, 사용자 단말 장치(410, 420)의 외부에서 보았을 때 해당 사용자 단말 장치(410, 420)의 IP 주소가 하나의 IP 주소로서 특정될 필요가 있다. 따라서, 본 발명의 일 실시예에 따르면, 사용자 단말 장치(410, 420)는 여러 종류의 복수의 네트워크에 각각 대응되는 서로 다른 복수의 실제 IP 주소를 가상화하여 해당 사용자 단말 장치(410, 420)를 대표할 수 있는 하나의 가상(Virtual) IP 주소를 가질 수 있다. 이와 관련하여, 본 발명의 일 실시예에 따르면, 코어 네트워크(510 내지 530) 또는 가입자 정보 관리 서버(800)는 사용자 단말 장치(410, 420)가 가지는 적어도 하나의 실제 IP 주소 및 가상 IP 주소에 관한 정보를 보유하고 있을 수 있다.Meanwhile, according to an embodiment of the present invention, the user
구체적으로, 본 발명의 일 실시예에 따르면, 사용자 단말 장치(410, 420)는 앞서 설명된 하나의 가상 IP 주소에 대응되는 하나의 가상 인터페이스(Virtual Interface)를 통하여 여러 종류의 네트워크를 통해 전송된 패킷을 한꺼번에 수신할 수 있다.In more detail, according to an embodiment of the present invention, the
또한, 본 발명의 일 실시예에 따르면, 사용자 단말 장치(410, 420) 및 해당 사용자 단말 장치(410, 420)와 연결되어 있는 오픈플로우 스위치(210 내지 260)가 오픈플로우 스위치(210 내지 260)와 사용자 단말 장치(410, 420) 사이의 구간에서 전송되는 패킷에 외부 IP 헤더(Outer IP Header)가 부가되도록 할 수 있으며, 이로써 사용자 단말 장치(410, 420)와 오픈플로우 스위치(210 내지 260) 사이의 구간에 해당 사용자 단말 장치(410, 420)의 네트워크별 실제 IP 주소에 대응되는 터널링(tunneling) 구간이 생성될 수 있다. 참고로, 이러한 방법은 사용자 단말 장치(410, 420)가 가상 인터페이스를 지원하지 않는 경우 또는 가상 인터페이스를 사용할 수 없는 경우에 적용될 수 있다.The
사용자 단말 장치(410, 420)가 오픈플로우 스위치(210 내지 260)를 거쳐 호스트(900)에게 패킷을 전송하는 경우를 예로 들어 구체적으로 설명하면 다음과 같다.A case where the
먼저, 사용자 단말 장치(410, 420)는 데스티네이션 IP 주소 및 소스 IP 주소가 각각 호스트(900)의 IP 주소(A1) 및 사용자 단말 장치(410, 420)의 가상 IP 주소(VIP)인 패킷을 전송함에 있어서 해당 패킷에 외부 IP 헤더를 부가할 수 있는데(즉, 인캡슐레이션(Encapsulation)), 이러한 외부 IP 헤더에는 해당 사용자 단말 장치(410, 420)와 연결되어 있는 오픈플로우 스위치(210 내지 260)의 IP 주소(S1) 및 해당 사용자 단말 장치(410, 420)의 네트워크별 실제 IP 주소(N1, N2 등)가 각각 외부 데스티네이션 IP 주소 및 외부 소스 IP 주소로서 포함될 수 있고, 이러한 외부 IP 헤더에 의하여 해당 패킷의 데스티네이션 IP 주소는 해당 사용자 단말 장치(410, 420)와 통신하는 호스트(900)의 IP 주소(A1)가 아닌 해당 사용자 단말 장치(410, 420)와 연결되어 있는 오픈플로우 스위치(210)의 IP 주소(S1)로서 설정될 수 있으며, 이에 따라 해당 패킷은 네트워크별로 정의된 인터페이스를 통하여 해당 사용자 단말 장치(410, 420)와 연결되어 있는 오픈플로우 스위치(210 내지 260)로 전달될 수 있게 된다.First, the
다음으로, 사용자 단말 장치(410, 420)로부터 외부 IP 헤더가 부가된 패킷을 전달 받은 오픈플로우 스위치(210 내지 260)는 해당 패킷에 부가되었던 외부 IP 헤더를 제거함으로써 해당 패킷의 데스티네이션 IP 주소 및 소스 IP 주소가 각각 다시 호스트(900)의 IP 주소(A1) 및 사용자 단말 장치(410, 420)의 가상 IP 주소(VIP)가 되도록 되돌릴 수 있으며(즉, 디캡슐레이션(Decapsulation)), 이에 따라 해당 패킷은 호스트(900)로 정상적으로 전달될 수 있게 된다.Next, the open flow switches 210 to 260 receiving the packets to which the external IP header is added from the
반대로, 호스트(900)가 오픈플로우 스위치(210 내지 260)를 거쳐 사용자 단말 장치(410, 420)에게 패킷을 전송하는 경우에는, 오픈플로우 스위치(210 내지 260)가 앞서 설명된 인캡슐레이션 과정을 수행하고 사용자 단말 장치(410, 420)가 앞서 설명된 디캡슐레이션 과정을 수행할 수 있을 것이다.Conversely, when the
다음으로, 본 발명의 일 실시예에 따르면, 코어 네트워크(510, 520)는 사용자 단말 장치(410, 420)가 가입된 이동통신사에 의하여 운영되는 네트워크를 가리키는 것으로서, 기지국(310, 320)으로부터 전달되는 패킷을 코어 네트워크에 전달하여 주는 역할을 수행하는 백홀(backhaul) 네트워크(미도시됨)를 포함할 수 있다.Next, in accordance with an embodiment of the present invention, the
다음으로, 본 발명의 일 실시예에 따르면, 가입자 정보 관리 서버(800)는 사용자 단말 장치(410, 420)가 가입된 이동통신사에 의하여 관리되는 서버로서, 사용자 단말 장치(410, 420)가 이동통신사의 코어 네트워크(510, 520, 530), 공중 데이터 네트워크 등과 연결되어 통신하는 데에 필요한 정보를 관리하는 기능을 수행할 수 있으며, 특히, 사용자 단말 장치(410, 420)가 3G 네트워크, 4G 네트워크, 5G 네트워크, 공중 데이터 네트워크 등의 각종 네트워크에 연결(즉, 접속)될 수 있는 권한 또는 기능을 가지고 있는지 여부에 관한 정보, 사용자 단말 장치(410, 420)가 연결될 수 있는 각종 네트워크 사이의 우선 순위에 관한 정보, 사용자 단말 장치(410, 420)의 가상 IP 주소에 관한 정보 등을 오픈플로우 컨트롤러(100)에게 제공하는 기능을 수행할 수 있다.According to one embodiment of the present invention, the subscriber
다음으로, 본 발명의 일 실시예에 따르면, 호스트(900)는 사용자 단말 장치(410, 420)와 통신하는 상대방이 되는 클라이언트 또는 서버를 의미하는데, 네트워크에 접속하여 서로 통신할 수 있는 기능을 갖는 기기로서, 각종 서버, 개인용 컴퓨터(예를 들어, 데스크탑 컴퓨터, 노트북 컴퓨터 등), 워크스테이션, PDA, 태블릿 컴퓨터, 스마트폰, 이동 전화기, IPTV 수신기 등과 같이 메모리 수단을 구비하고 마이크로 프로세서를 탑재하여 연산 능력을 갖춘 기기라면 얼마든지 본 발명에 따른 호스트(900)가 될 수 있다. 예를 들면, 본 발명에 따른 호스트(900)는 동영상 서비스를 제공하는 유투브(YouTube)의 서비스 제공 서버를 포함할 수 있으며, 서버가 아닌 다른 사용자 단말 장치를 포함할 수도 있다.Next, in accordance with an embodiment of the present invention, host 900 refers to a client or a server that is an opponent in communication with
오픈플로우 컨트롤러(100) 및 오픈플로우 스위치(210 내지 260)의 구성The configuration of the
이하에서는, 본 발명의 구현을 위하여 중요한 기능을 수행하는 오픈플로우 컨트롤러(100) 및 오픈플로우 스위치(210 내지 260)의 내부 구성 및 구체적인 기능에 대하여 살펴보기로 한다.Hereinafter, an internal configuration and specific functions of the
도 2는 본 발명의 일 실시예에 따른 오픈플로우 컨트롤러(100)의 내부 구성을 나타내는 도면이다.2 is a diagram showing an internal configuration of an
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 오픈플로우 컨트롤러(100)는 단말 정보 수집부(110) 및 네트워크 제어부(120)를 포함할 수 있다. 본 발명의 일 실시예에 따르면, 단말 정보 수집부(110) 및 네트워크 제어부(120)는 그 중 적어도 일부가 외부 시스템과 통신하는 프로그램 모듈들일 수 있다. 이러한 프로그램 모듈들은 운영 시스템, 응용 프로그램 모듈 및 기타 프로그램 모듈의 형태로 오픈플로우 컨트롤러(100)에 포함될 수 있으며, 물리적으로는 여러 가지 공지의 기억 장치 상에 저장될 수 있다. 또한, 이러한 프로그램 모듈 중 적어도 일부는 오픈플로우 컨트롤러(100)와 통신 가능한 원격 기억 장치에 저장될 수도 있다. 한편, 이러한 프로그램 모듈들은 본 발명에 따라 후술할 특정 업무를 수행하거나 특정 추상 데이터 유형을 실행하는 루틴, 서브루틴, 프로그램, 오브젝트, 컴포넌트, 데이터 구조 등을 포괄하지만, 이에 제한되지는 않는다.2, the
먼저, 본 발명의 일 실시예에 따르면, 단말 정보 수집부(110)는 각종 네트워크의 기지국(310, 320, 330, 340)에 연결되어 호스트(900)와 통신하는 사용자 단말 장치(410, 420)에 관한 정보(예를 들면, 사용자 단말 장치(410, 420)의 식별 번호 등)를 획득하는 기능을 수행할 수 있다. 구체적으로, 본 발명의 일 실시예에 따른 단말 정보 수집부(110)는 각종 네트워크 기지국(310, 320, 330, 340)과 연결되어 있는 오픈플로우 스위치(210 내지 260)로부터 사용자 단말 장치(410, 420)에 관한 정보를 제공 받을 수 있다.The terminal
또한, 본 발명의 일 실시예에 따르면, 단말 정보 수집부(110)는 가입자 정보 관리 서버(800)로부터 또는 사용자 단말 장치(410, 420)와 연결되어 있는 오픈플로우 스위치(210 내지 260)로부터 사용자 단말 장치(410, 420)의 가입자 정보를 획득하는 기능을 수행할 수 있다.According to an embodiment of the present invention, the terminal
다음으로, 본 발명의 일 실시예에 따르면, 네트워크 제어부(120)는 사용자 단말 장치(410, 420)의 가입자 정보를 참조로 하여 해당 사용자 단말 장치(410, 420)가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크를 식별하는 기능을 수행할 수 있다. 여기서, 본 발명의 일 실시예에 따르면, 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크에는 3G 네트워크, 4G 네트워크, 5G 네트워크 및 공중 데이터 네트워크(Public Data Network) 중 어느 하나가 포함될 수 있다. 예를 들면, 사용자 단말 장치가 4G 네트워크에 가입되어 있어서 4G 네트워크에 접속(즉, 연결)될 수 있는 권한 또는 기능을 가지고 있고 Wi-Fi를 통해 공중 데이터 네트워크에 접속될 수 있는 기능을 갖추고 있는 경우에, 해당 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크는 4G 네트워크 및 공중 데이터 네트워크일 수 있다.Next, according to one embodiment of the present invention, the
또한, 본 발명의 일 실시예에 따르면, 네트워크 제어부(120)는 사용자 단말 장치(410, 420)가 연결될 수 있는 권한 또는 기능을 가지고 있는 것으로 식별된 네트워크 중 사용자 단말 장치(410, 420)와 호스트(900) 사이의 통신에 활용될 적어도 두 종류의 네트워크를 후술할 바와 같은 기설정된 기준에 따라 결정하는 기능을 수행할 수 있고, 사용자 단말 장치(410, 420) 및 호스트(900) 사이의 통신 경로 상에 존재하는 적어도 하나의 오픈플로우 스위치(210 내지 260)에 적용되는 플로우 룰(Flow Rule)를 제어함으로써 사용자 단말 장치(410, 420) 및 호스트(900) 사이에서 발생하는 데이터 트래픽(Data Traffic)이 사용자 단말 장치(410, 420)가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 기능을 수행할 수 있다.In addition, according to an embodiment of the present invention, the
예를 들면, 본 발명의 일 실시예에 따른 네트워크 제어부(120)는, 사용자 단말 장치(410, 420)가 연결될 수 있는 권한 또는 기능을 가지고 있는 모든 종류의 네트워크를 통해 해당 사용자 단말 장치(410, 420) 및 호스트(900) 사이에서 발생하는 데이터 트래픽이 분산되어 전송되도록 할 수 있으며, 이에 따라 실질적인 대역폭을 최대한 확장시킬 수 있다.For example, the
다른 예를 들면, 본 발명의 일 실시예에 따른 네트워크 제어부(120)는, 사용자 단말 장치(410, 420)가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 혼잡도(Congestion)가 기설정된 임계값을 초과하는 병목 구간이 존재하는 네트워크를 제외한 나머지 네트워크를 통해 해당 사용자 단말 장치(410, 420) 및 호스트(900) 사이에서 발생하는 데이터 트래픽이 분산되어 전송되도록 할 수 있으며, 이에 따라 병목 현상으로 인한 시간 지연이 발생하는 것을 방지할 수 있다.For example, the
또 다른 예를 들면, 본 발명의 일 실시예에 따른 네트워크 제어부(120)는, 특정 네트워크를 통해 호스트(900)와 통신하는 복수의 사용자 단말 장치(410, 420)의 수가 기설정된 임계값을 초과하는 경우에만, 해당 복수의 사용자 단말 장치(410, 420) 각각이 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 해당 복수의 사용자 단말 장치(410, 420) 및 호스트(900) 사이에서 발생하는 데이터 트래픽이 분산되어 전송되도록 할 수 있으며, 이에 따라 데이터 트래픽을 분산하여 전송할 필요가 있는 경우에만 여러 종류의 복수의 네트워크를 동시에 활용하고 그렇지 않은 경우에는 특정 네트워크만을 활용하여 나머지 네트워크에 불필요한 부하가 걸리는 것을 방지할 수 있다.For example, the
한편, 본 발명의 일 실시예에 따른 오픈플로우 컨트롤러(100)와 오픈플로우 스위치(210 내지 260)가 사용자 단말 장치(410, 420)와 호스트(900) 사이의 통신 경로(즉, 패킷 전달 경로)를 제어하는 구성에 관하여 자세히 설명하면 다음과 같다.Meanwhile, the
먼저, 본 발명의 일 실시예에 따르면, 플로우(Flow)란, 특정 시간 동안 네트워크 상의 특정 지점을 지나가는 패킷의 집합을 의미할 수 있다. 여기서, 본 발명에서 말하는 플로우가 반드시 특정 시간에 한정되어 정의되는 것은 아님을 밝혀 둔다.First, according to an embodiment of the present invention, a flow may mean a set of packets passing through a specific point on the network for a specific time. Here, it is to be noted that the flow referred to in the present invention is not necessarily limited to a specific time.
다음으로, 본 발명의 일 실시예에 따르면, 오픈플로우 컨트롤러(100)는 오픈플로우 스위치(210 내지 260)가 유지하는 플로우 테이블(Flow Table)에 적용되는 플로우 룰을 제어함으로써 사용자 단말 장치(410, 420)와 호스트(900) 사이의 통신 경로를 제어할 수 있는데, 이러한 플로우 테이블에는, 사용자 단말 장치의 IP 주소(즉, 가상 IP 주소), 사용자 단말 장치와 무선으로 연결되는 각종 네트워크의 기지국의 IP 주소, 사용자 단말 장치와 통신하는 호스트의 IP 주소와 같은 다양한 네트워크 구성요소의 IP 주소 및 이들 IP 주소와 오픈플로우 스위치(210 내지 260)의 포트 사이의 매칭 관계에 관한 정보가 포함될 수 있다.Next, in accordance with an embodiment of the present invention, the
예를 들면, 본 발명의 일 실시예에 따른 플로우 테이블에는 헤더 필드(Header Fields), 액션(Actions), 카운터(Counters) 등의 구성요소가 포함될 수 있다.For example, the flow table according to an exemplary embodiment of the present invention may include a header field, an action, a counter, and the like.
먼저, 헤더 필드에는 오픈플로우 스위치(210 내지 260)의 포트, 이더넷(ethernet) 및 프로토콜 정보, 소스(즉, 출발지)(source) 사용자 단말 장치 및 데스티네이션(즉, 목적지)(destination) 사용자 단말 장치의 MAC 주소, IP 주소, 포트 및 우선 순위 등의 정보가 저장될 수 있다. 본 발명의 일 실시예에 따르면, 오픈플로우 컨트롤러(100) 또는 오픈플로우 스위치(210 내지 260)는 오픈플로우 스위치(210 내지 260)로 유입되는 패킷의 정보와 플로우 테이블의 헤더 필드의 정보를 비교하여 해당 패킷에 관한 플로우 제어 정보가 플로우 테이블 내에 존재하는지 여부를 판단할 수 있다.First, the header field includes a port of the open flow switches 210 to 260, ethernet and protocol information, a source (i.e., source) user terminal device and a destination (i.e., destination) The MAC address, the IP address, the port, and the priority. According to an embodiment of the present invention, the
다음으로, 액션(actions)은 오픈플로우 스위치(210 내지 260)로 유입되는 패킷의 정보와 플로우 테이블의 헤더 필드의 정보가 매칭될 때 해당 패킷을 어떻게 처리할지에 관한 정보를 포함할 수 있다. 본 발명의 일 실시예에 따르면, 오픈플로우 스위치(210 내지 260)는 플로우 테이블의 액션 부분에 저장된 정보를 참조로 하여 해당 패킷을 정해진 하나의 포트 또는 여러 개의 포트로 전달하거나 해당 패킷을 더 이상 전달하지 않고 차단할 수 있다. 만약, 플로우 테이블의 헤더 필드 내에 오픈플로우 스위치(210 내지 260)로 유입되는 패킷의 정보와 매칭되는 정보가 없는 경우에는, 오픈플로우 컨트롤러(100)가 해당 패킷의 소스 IP 주소, 데스티네이션 IP 주소 등을 참조로 하여 해당 패킷에 대한 플로우 룰을 새로이 생성할 수 있다.Next, actions may include information on how to process the packet when the information of the packet flowing into the open flow switches 210 to 260 and the information of the header field of the flow table are matched. According to an embodiment of the present invention, the open flow switches 210 to 260 transmit the packet to a predetermined port or a plurality of ports with reference to the information stored in the action part of the flow table, Can be blocked. If there is no information in the header field of the flow table that matches the information of the packets flowing into the open flow switches 210 to 260, the
다음으로, 카운터(counters)는 플로우 테이블에 패킷 처리에 관한 제어 정보가 등록된 시점부터 현재 시점까지 경과된 시간에 관한 정보를 포함할 수 있다. 본 발명의 일 실시예에 따르면, 플로우 테이블에 저장된 패킷 처리에 관한 제어 정보는 정해진 시간 동안만 유지되도록 설정될 수 있는데, 이러한 경우에 카운터에 저장된 경과 시간에 관한 정보가 제어 정보의 생명 주기(life cycle) 관리에 사용될 수 있다.Next, the counters may include information on the elapsed time from the time when the control information related to the packet processing is registered to the current time in the flow table. According to an embodiment of the present invention, the control information regarding the packet processing stored in the flow table can be set to be maintained only for a predetermined time. In this case, information on the elapsed time stored in the counter is stored in the life cycle cycle management.
도 3은 본 발명의 일 실시예에 따라 오픈플로우 컨트롤러(100) 및 오픈플로우 스위치(210 내지 260)에 의하여 관리되는 플로우 테이블의 구성을 예시적으로 나타내는 도면이다.3 is a diagram exemplarily showing a configuration of a flow table managed by an
도 3을 참조하면, 소스 IP 주소가 "10.0.0.2"이고 데스티네이션 IP 주소가 "10.0.0.3"인 패킷은 오픈플로우 스위치(210 내지 260)의 포트 "a"로 전달되도록 설정되고, 반대로 소스 IP 주소가 "10.0.0.3"이고 데스티네이션 IP 주소가 "10.0.0.2"인 패킷은 오픈플로우 스위치(210 내지 260)의 "b"로 전달되도록 설정될 수 있다. 또한, 소스 IP 주소가 "10.0.0.4"이고 데스티네이션 IP 주소가 "10.0.0.5"인 패킷은 오픈플로우 스위치(210 내지 260)의 포트 "c"로 전달되도록 설정되고, 반대로 소스 IP 주소가 "10.0.0.5"이고 데스티네이션 IP 주소가 "10.0.0.4"인 패킷은 오픈플로우 스위치(210 내지 260)의 포트 "d"로 전달되도록 설정될 수 있다. 위와 같이 플로우 테이블을 참조로 하여 오픈플로우 스위치(210 내지 260)의 각 포트로 전달된 패킷은 해당 패킷의 데스티네이션 IP 주소가 가리키는 사용자 단말 장치(410, 420)로 전달될 수 있게 된다. 즉, 본 발명의 일 실시예에 따르면, 오픈플로우 컨트롤러(100)가 오픈플로우 스위치(210 내지 260)에서 유지되는 플로우 테이블에 적용되는 플로우 룰을 제어함으로써 오픈플로우 스위치(210 내지 260)를 지나가는 패킷이 특정 네트워크를 거치는 통신 경로를 통하여 전송되도록 할 수 있고, 이로써 호스트(900)와 통신하여 패킷을 주고 받는 사용자 단말 장치(410, 420)가 연결되는 네트워크를 동적으로 선택할 수 있게 된다.3, a packet with a source IP address of "10.0.0.2" and a destination IP address of "10.0.0.3" is set to be delivered to the port "a" of the open flow switches 210 to 260, A packet whose IP address is " 10.0.0.3 "and whose destination IP address is" 10.0.0.2 "may be set to be transmitted to" b " of the open flow switches 210 to 260. In addition, a packet whose source IP address is "10.0.0.4" and whose destination IP address is "10.0.0.5" is set to be delivered to the port "c" of the open flow switches 210 to 260, 10.0.0.5 ", and a packet whose destination IP address is "10.0.0.4" may be set to be transmitted to the port "d" of the open flow switches 210 to 260. [ The packet transmitted to each port of the open flow switches 210 to 260 with reference to the flow table can be transmitted to the
도 4는 본 발명의 일 실시예에 따라 사용자 단말 장치가 연결되는 네트워크를 병합하는 과정을 예시적으로 나타내는 도면이다. 도 4의 실시예에서, 제1 사용자 단말 장치(410)는 3G 네트워크(510), 4G 네트워크(520) 및 5G 네트워크(530)에 접속(즉, 연결)될 수 있는 권한을 모두 가지고 있고, Wi-Fi를 통해 공중 데이터 네트워크에 접속될 수 있는 기능을 갖추고 있는 경우를 가정할 수 있다.4 is a diagram illustrating a process of merging a network to which a user terminal is connected according to an embodiment of the present invention. 4 embodiment, the
도 4를 참조하면, (i) 먼저, 오픈플로우 스위치(210 내지 240)는 각종 네트워크 기지국(310 내지 340)과 연결되어 있는 제1 사용자 단말 장치(410)에 관한 정보(예를 들면, 식별 번호 등)를 오픈플로우 컨트롤러(100)에게 전송할 수 있다.(I) First, the open flow switches 210 to 240 transmit information (for example, an identification number) to the
계속하여, 도 4를 참조하면, (ii) 오픈플로우 스위치(210 내지 240)로부터 제1 사용자 단말 장치(410)에 관한 정보를 전송 받은 오픈플로우 컨트롤러(100)는 가입자 정보 관리 서버(800)로부터 제1 사용자 단말 장치(410)의 가입자 정보를 제공 받아서 제1 사용자 단말 장치(410)가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크를 식별할 수 있고, 이렇게 식별된 네트워크 중 제1 사용자 단말 장치(410)와 호스트(900) 사이에서 발생하는 데이터 트래픽을 분산하여 전송함에 있어서 3G 네트워크(510), 4G 네트워크(520), 5G 네트워크(530) 및 공중 데이터 네트워크(540) 중 적어도 복수 개의 네트워크가 사용되도록 결정할 수 있다.4, (ii) the
계속하여, 도 4를 참조하면, (iii) 오픈플로우 컨트롤러(100)는 자신이 제어할 수 있는 적어도 하나의 오픈플로우 스위치(210 내지 260)가 유지하는 플로우 테이블에 적용되는 플로우 룰을 제어함으로써 제1 사용자 단말 장치(410) 및 호스트(900) 사이에서 발생하는 데이터 트래픽이 3G 네트워크(510), 4G 네트워크(520), 5G 네트워크(530) 및 공중 데이터 네트워크(540)를 통하여 분산되어 전송되도록 할 수 있다(R410 내지 R440).4, (iii) the open-
한편, 도 4의 실시예에서, 오픈플로우 스위치(210 내지 240)는 각종 네트워크 기지국(310 내지 340)과 연결되어 있는 제1 사용자 단말 장치(410)로부터 제1 사용자 단말 장치(410)의 식별 정보뿐만 아니라 가입자 정보까지 획득할 수도 있고 이렇게 획득된 제1 사용자 단말 장치(410)의 식별 정보 또는 가입자 정보를 오픈플로우 컨트롤러(100)에 전송할 수도 있으며, 이러한 경우 오픈플로우 컨트롤러(100)는 가입자 정보 관리 서버(800)로부터 따로 제1 사용자 단말 장치(410)의 가입자 정보를 수집할 필요가 없게 될 수도 있다.4, the open flow switches 210 to 240 receive the identification information of the first
이상 설명된 본 발명에 따른 실시예들은 다양한 컴퓨터 구성요소를 통하여 수행될 수 있는 프로그램 명령어의 형태로 구현되어 컴퓨터 판독 가능한 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능한 기록 매체는 프로그램 명령어, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 컴퓨터 판독 가능한 기록 매체에 기록되는 프로그램 명령어는 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능한 기록 매체의 예에는, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM, DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 ROM, RAM, 플래시 메모리 등과 같은 프로그램 명령어를 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령어의 예에는, 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함된다. 상기 하드웨어 장치는 본 발명에 따른 처리를 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The embodiments of the present invention described above can be implemented in the form of program instructions that can be executed through various computer components and recorded on a computer-readable recording medium. The computer-readable recording medium may include program commands, data files, data structures, and the like, alone or in combination. The program instructions recorded on the computer-readable recording medium may be those specially designed and constructed for the present invention or may be those known and used by those skilled in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks and magnetic tape, optical recording media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, media, and hardware devices specifically configured to store and execute program instructions such as ROM, RAM, flash memory, and the like. Examples of program instructions include machine language code such as those generated by a compiler, as well as high-level language code that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules for performing the processing according to the present invention, and vice versa.
이상에서 본 발명이 구체적인 구성요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명이 상기 실시예들에 한정되는 것은 아니며, 본 발명이 속하는 기술분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형을 꾀할 수 있다.While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed exemplary embodiments, but, on the contrary, Those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from the scope and spirit of the invention as disclosed in the accompanying claims.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be construed as being limited to the above-described embodiments, and all of the equivalents or equivalents of the claims, as well as the following claims, I will say.
100: 오픈플로우 컨트롤러(OpenFlow controller)
110: 단말 정보 수집부
120: 네트워크 제어부
210 내지 260: 오픈플로우 스위치(OpenFlow switch)
310: 3G 네트워크 기지국
320: 4G 네트워크 기지국
330: 5G 네트워크 기지국
340: 무선 액세스 포인트(Wireless Access Point)
410, 420: 사용자 단말 장치
510: 3G 코어 네트워크(Core network)
520: 4G 코어 네트워크
530: 5G 코어 네트워크
600: 공중 데이터 네트워크(PDN: Public Data Network)
700: 인터넷 서비스 제공자(ISP: Internet Service Provider) 네트워크
800: 가입자 정보 관리 서버
900: 호스트(Host)100: OpenFlow controller
110: terminal information collecting unit
120:
210 to 260: OpenFlow switch
310: 3G network base station
320: 4G network base station
330: 5G network base station
340: Wireless Access Point
410, 420: User terminal device
510: 3G core network (Core network)
520: 4G Core Network
530: 5G Core Network
600: public data network (PDN)
700: Internet service provider (ISP) network
800: Subscriber information management server
900: Host
Claims (19)
(b) 상기 오픈플로우 컨트롤러가, 상기 사용자 단말 장치 및 상기 호스트 사이의 통신 경로 상에 존재하는 적어도 하나의 오픈플로우 스위치(Switch)에 적용되는 플로우 룰(Flow Rule)를 제어함으로써, 상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽(Data Traffic)이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 상기 식별된 복수의 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 단계
를 포함하는 방법.(a) An open flow controller receives subscriber information of a user terminal device to communicate with a host from an open flow switch or a subscriber information management server connected to the open flow controller via the network, Identifying a plurality of networks having rights or functions to which the user terminal device can be connected with reference to one subscriber information, and
(b) the open flow controller controls a flow rule applied to at least one open flow switch existing on a communication path between the user terminal and the host, And transmitting data traffic generated between the hosts through at least two types of networks among the plurality of identified networks having a right or a function to which the user terminal can be connected
≪ / RTI >
상기 적어도 두 종류의 네트워크는 제1 네트워크 및 제2 네트워크를 포함하고,
상기 사용자 단말 장치는 상기 제1 네트워크 및 상기 제2 네트워크에 각각 대응되는 제1 실제 IP 주소 및 제2 실제 IP 주소를 가지면서 상기 제1 실제 IP 주소 및 상기 제2 실제 IP 주소를 가상화한 하나의 가상 IP 주소를 가지고,
상기 (b) 단계에서,
상기 사용자 단말 장치 및 상기 호스트 사이에서 전송되는 패킷은 상기 사용자 단말 장치의 상기 가상 IP 주소를 참조로 하여 전송되는 것을 특징으로 하는 방법.The method according to claim 1,
Wherein the at least two types of networks include a first network and a second network,
Wherein the user terminal device has a first real IP address and a second real IP address corresponding to the first network and the second network, respectively, and virtualizes the first real IP address and the second real IP address, With a virtual IP address,
In the step (b)
Wherein a packet transmitted between the user terminal and the host is transmitted with reference to the virtual IP address of the user terminal.
상기 (b) 단계에서,
상기 호스트로부터 상기 사용자 단말 장치에 전송되는 패킷 및 상기 사용자 단말 장치로부터 상기 호스트에 전송되는 패킷은 상기 사용자 단말 장치의 상기 가상 IP 주소에 대응되는 가상 인터페이스를 통하여 전달되는 것을 특징으로 하는 방법.The method of claim 3,
In the step (b)
Wherein a packet transmitted from the host to the user terminal and a packet transmitted from the user terminal to the host are transmitted through a virtual interface corresponding to the virtual IP address of the user terminal.
상기 (b) 단계에서,
상기 제1 네트워크를 통해 상기 호스트로부터 상기 오픈플로우 스위치를 거쳐 상기 사용자 단말 장치에 전송되는 패킷에는, 상기 오픈플로우 스위치 및 상기 사용자 단말 장치 사이의 구간에서, 상기 오픈플로우 스위치의 IP 주소 및 상기 사용자 단말 장치의 제1 실제 IP 주소를 각각 소스 IP 주소 및 데스티네이션 IP 주소로서 설정하는 외부 IP 헤더(Outer IP Header)가 부가되고,
상기 제1 네트워크를 통해 상기 사용자 단말 장치로부터 상기 오픈플로우 스위치를 거쳐 상기 호스트에 전송되는 패킷에는, 상기 사용자 단말 장치 및 상기 오픈플로우 스위치 사이의 구간에서, 상기 사용자 단말 장치의 제1 실제 IP 주소 및 상기 오픈플로우 스위치의 IP 주소를 각각 소스 IP 주소 및 데스티네이션 IP 주소로서 설정하는 외부 IP 헤더가 부가되는 것을 특징으로 하는 방법.The method of claim 3,
In the step (b)
Wherein a packet transmitted from the host through the first network to the user terminal via the open flow switch includes at least one of an IP address of the open flow switch and an IP address of the user terminal, An external IP header (Outer IP Header) for setting the first real IP address of the device as a source IP address and a destination IP address, respectively,
Wherein a packet transmitted from the user terminal apparatus to the host via the first network includes a first real IP address of the user terminal apparatus and a second real IP address of the user terminal apparatus in the interval between the user terminal apparatus and the open- And an external IP header for setting an IP address of the open flow switch as a source IP address and a destination IP address, respectively.
상기 (b) 단계에서,
상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 가능한 모든 종류의 네트워크를 통해 분산되어 전송되도록 하는 것을 특징으로 하는 방법.The method according to claim 1,
In the step (b)
Wherein the data traffic generated between the user terminal and the host is distributed over all possible types of networks among the networks having the authority or function to which the user terminal can be connected.
상기 (b) 단계에서,
상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 혼잡도(Congestion)가 기설정된 임계값을 초과하는 병목 구간이 존재하는 네트워크를 제외한 나머지 네트워크를 통해 분산되어 전송되도록 하는 것을 특징으로 하는 방법.The method according to claim 1,
In the step (b)
Wherein the data traffic generated between the user terminal and the host is a network in which a bottleneck interval in which a congestion of a network having authority or capability to connect the user terminal exceeds a preset threshold is present And distributed over the remaining network.
상기 (b) 단계에서,
특정 네트워크를 통하여 상기 호스트와 통신하는 복수의 사용자 단말 장치의 수가 기설정된 임계값을 초과하는 경우에, 상기 복수의 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽이 상기 복수의 사용자 단말 장치 각각이 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 것을 특징으로 하는 방법.The method according to claim 1,
In the step (b)
Wherein data traffic generated between the plurality of user terminal devices and the host is transmitted to each of the plurality of user terminal devices when a number of the plurality of user terminal devices communicating with the host through a specific network exceeds a preset threshold value And distributing the data through at least two kinds of networks among the networks having the authority or function to be connected.
(a) 오픈플로우 스위치(Switch)가, 자신과 연결되어 있는 적어도 하나의 네트워크의 기지국에, 호스트(Host)와 통신하고자 하는 사용자 단말 장치가 연결되면, 상기 사용자 단말 장치의 가입자 정보를 오픈플로우 컨트롤러(Controller)에게 전송하여 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 복수의 네트워크를 식별할 수 있도록 지원하는 단계, 및
(b) 상기 오픈플로우 스위치가, 상기 오픈플로우 컨트롤러로부터 전송되는 플로우 룰(Flow Rule)에 관한 정보를 참조로 하여 상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽(Data Traffic)이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 상기 식별된 복수의 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 단계
를 포함하는 방법.A method for merging networks based on OpenFlow,
(a) when an open flow switch is connected to a base station of at least one network connected to the open flow switch, the subscriber information of the user terminal device is transmitted to the open flow controller (Controller) so that the user terminal can identify a plurality of networks having an authority or a function to which the user terminal can be connected; and
(b) when the open flow switch determines that data traffic occurring between the user terminal device and the host is generated based on information about a flow rule transmitted from the open flow controller, So that the device is distributed and transmitted through at least two kinds of networks among the plurality of identified networks having the authority or function to be connected
≪ / RTI >
네트워크로 연결되어 있는 오픈플로우 스위치 또는 가입자 정보 관리 서버로부터 호스트(Host)와 통신하고자 하는 사용자 단말 장치의 가입자 정보를 획득하는 단말 정보 수집부, 및
상기 획득한 사용자 단말 장치의 가입자 정보를 참조로 하여 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 복수의 네트워크를 식별하고, 상기 사용자 단말 장치 및 상기 호스트 사이의 통신 경로 상에 존재하는 적어도 하나의 오픈플로우 스위치(Switch)에 적용되는 플로우 룰(Flow Rule)를 제어함으로써, 상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽(Data Traffic)이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 상기 식별된 복수의 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 네트워크 제어부
를 포함하는 장치.An apparatus for merging networks based on OpenFlow,
A terminal information collecting unit for acquiring subscriber information of a user terminal device to communicate with a host from an open flow switch or a subscriber information management server connected via a network,
Identifying a plurality of networks having an authority or function to which the user terminal device can be connected with reference to subscriber information of the acquired user terminal device, The data traffic generated between the user terminal and the host is controlled by a flow rule applied to one open flow switch so that the user terminal can be connected with the authority or function To be distributed through at least two types of networks among the identified plurality of networks having the network
/ RTI >
상기 적어도 두 종류의 네트워크는 제1 네트워크 및 제2 네트워크를 포함하고,
상기 사용자 단말 장치는 상기 제1 네트워크 및 상기 제2 네트워크에 각각 대응되는 제1 실제 IP 주소 및 제2 실제 IP 주소를 가지면서 상기 제1 실제 IP 주소 및 상기 제2 실제 IP 주소를 가상화한 하나의 가상 IP 주소를 가지고,
상기 사용자 단말 장치 및 상기 호스트 사이에서 전송되는 패킷은 상기 사용자 단말 장치의 상기 가상 IP 주소를 참조로 하여 전송되는 것을 특징으로 하는 장치.11. The method of claim 10,
Wherein the at least two types of networks include a first network and a second network,
Wherein the user terminal device has a first real IP address and a second real IP address corresponding to the first network and the second network, respectively, and virtualizes the first real IP address and the second real IP address, With a virtual IP address,
Wherein the packet transmitted between the user terminal and the host is transmitted with reference to the virtual IP address of the user terminal.
상기 호스트로부터 상기 사용자 단말 장치에 전송되는 패킷 및 상기 사용자 단말 장치로부터 상기 호스트에 전송되는 패킷은 상기 사용자 단말 장치의 상기 가상 IP 주소에 대응되는 가상 인터페이스를 통하여 전달되는 것을 특징으로 하는 장치.13. The method of claim 12,
Wherein a packet transmitted from the host to the user terminal and a packet transmitted from the user terminal to the host are transmitted through a virtual interface corresponding to the virtual IP address of the user terminal.
상기 제1 네트워크를 통해 상기 호스트로부터 상기 오픈플로우 스위치를 거쳐 상기 사용자 단말 장치에 전송되는 패킷에는, 상기 오픈플로우 스위치 및 상기 사용자 단말 장치 사이의 구간에서, 상기 오픈플로우 스위치의 IP 주소 및 상기 사용자 단말 장치의 제1 실제 IP 주소를 각각 소스 IP 주소 및 데스티네이션 IP 주소로서 설정하는 외부 IP 헤더(Outer IP Header)가 부가되고,
상기 제1 네트워크를 통해 상기 사용자 단말 장치로부터 상기 오픈플로우 스위치를 거쳐 상기 호스트에 전송되는 패킷에는, 상기 사용자 단말 장치 및 상기 오픈플로우 스위치 사이의 구간에서, 상기 사용자 단말 장치의 제1 실제 IP 주소 및 상기 오픈플로우 스위치의 IP 주소를 각각 소스 IP 주소 및 데스티네이션 IP 주소로서 설정하는 외부 IP 헤더가 부가되는 것을 특징으로 하는 장치.13. The method of claim 12,
Wherein a packet transmitted from the host through the first network to the user terminal via the open flow switch includes at least one of an IP address of the open flow switch and an IP address of the user terminal, An external IP header (Outer IP Header) for setting the first real IP address of the device as a source IP address and a destination IP address, respectively,
Wherein a packet transmitted from the user terminal apparatus to the host via the first network includes a first real IP address of the user terminal apparatus and a second real IP address of the user terminal apparatus in the interval between the user terminal apparatus and the open- Wherein an external IP header for setting an IP address of the open flow switch as a source IP address and a destination IP address, respectively, is added.
상기 네트워크 제어부는, 상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 가능한 모든 종류의 네트워크를 통해 분산되어 전송되도록 하는 것을 특징으로 하는 장치.11. The method of claim 10,
Wherein the network control unit distributes data traffic generated between the user terminal and the host by being dispersed through all possible types of networks among the networks having the authority or function to which the user terminal can be connected, .
상기 네트워크 제어부는, 상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 혼잡도(Congestion)가 기설정된 임계값을 초과하는 병목 구간이 존재하는 네트워크를 제외한 나머지 네트워크를 통해 분산되어 전송되도록 하는 것을 특징으로 하는 장치.11. The method of claim 10,
Wherein the network control unit is configured to control the data traffic generated between the user terminal and the host such that the congestion of the network having the authority or function to connect the user terminal is greater than a preset threshold value To be distributed over the remaining networks except for the existing network.
상기 네트워크 제어부는, 특정 네트워크를 통하여 상기 호스트와 통신하는 복수의 사용자 단말 장치의 수가 기설정된 임계값을 초과하는 경우에, 상기 복수의 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽이 상기 복수의 사용자 단말 장치 각각이 연결될 수 있는 권한 또는 기능을 가지고 있는 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 것을 특징으로 하는 장치.11. The method of claim 10,
Wherein the network control unit is configured to transmit data traffic generated between the plurality of user terminal devices and the host to the plurality of user terminal devices communicating with the host through a specific network when the number of the plurality of user terminal devices exceeds a predetermined threshold value, And the user terminal device is distributed and transmitted through at least two kinds of networks among the networks having the authority or function to be connected to each of the user terminal devices.
자신과 연결되어 있는 적어도 하나의 네트워크의 기지국에, 호스트(Host)와 통신하고자 하는 사용자 단말 장치가 연결되면, 상기 사용자 단말 장치의 가입자 정보를 오픈플로우 컨트롤러(Controller)에게 전송하여 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 복수의 네트워크를 식별할 수 있도록 지원하는 단말 정보 모니터링부, 및
상기 오픈플로우 컨트롤러로부터 전송되는 플로우 룰(Flow Rule)에 관한 정보를 참조로 하여 상기 사용자 단말 장치 및 상기 호스트 사이에서 발생하는 데이터 트래픽(Data Traffic)이 상기 사용자 단말 장치가 연결될 수 있는 권한 또는 기능을 가지고 있는 상기 식별된 복수의 네트워크 중 적어도 두 종류의 네트워크를 통해 분산되어 전송되도록 하는 플로우 처리부
를 포함하는 장치.An apparatus for merging networks based on OpenFlow,
When a user terminal device to communicate with a host is connected to a base station of at least one network connected to the user terminal, the subscriber information of the user terminal device is transmitted to an open flow controller, A terminal information monitoring unit that supports identification of a plurality of networks having an authority or function that can be connected, and
The data traffic generated between the user terminal and the host by referring to the information about the flow rule transmitted from the open flow controller is a function that permits the user terminal to be connected And distributing the data through at least two types of networks among the identified plurality of networks,
/ RTI >
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20140063255A KR101501242B1 (en) | 2014-05-26 | 2014-05-26 | Method, device and computer-readable recording medium for aggregating network based on openflow |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20140063255A KR101501242B1 (en) | 2014-05-26 | 2014-05-26 | Method, device and computer-readable recording medium for aggregating network based on openflow |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101501242B1 true KR101501242B1 (en) | 2015-03-12 |
Family
ID=53027137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20140063255A Active KR101501242B1 (en) | 2014-05-26 | 2014-05-26 | Method, device and computer-readable recording medium for aggregating network based on openflow |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101501242B1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020122424A1 (en) * | 2001-03-05 | 2002-09-05 | Kenichi Kawarai | Input line interface device and packet communication device |
KR20130099199A (en) * | 2010-12-17 | 2013-09-05 | 닛본 덴끼 가부시끼가이샤 | Communication system, node, packet transfer method and program |
-
2014
- 2014-05-26 KR KR20140063255A patent/KR101501242B1/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020122424A1 (en) * | 2001-03-05 | 2002-09-05 | Kenichi Kawarai | Input line interface device and packet communication device |
KR20130099199A (en) * | 2010-12-17 | 2013-09-05 | 닛본 덴끼 가부시끼가이샤 | Communication system, node, packet transfer method and program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10911355B2 (en) | Multi-site telemetry tracking for fabric traffic using in-band telemetry | |
US9654395B2 (en) | SDN-based service chaining system | |
US9948553B2 (en) | System and method for virtual network-based distributed multi-domain routing control | |
US10541920B2 (en) | Communication system, communication device, controller, and method and program for controlling forwarding path of packet flow | |
CN108293009B (en) | A scheduling method for a software-defined data center and a service cluster therein | |
US10243862B2 (en) | Systems and methods for sampling packets in a network flow | |
US20170111227A1 (en) | Method for mounting a device at a server in a network | |
US9497661B2 (en) | Implementing EPC in a cloud computer with openflow data plane | |
KR101900536B1 (en) | Implementing a 3g packet core in a cloud computer with openflow data and control planes | |
US20160301603A1 (en) | Integrated routing method based on software-defined network and system thereof | |
EP3982600B1 (en) | Method and apparatus for configuring a quality of service policy for a service | |
KR101477012B1 (en) | Method, apparatus, system and computer-readable recording medium for sdn switching | |
JPWO2014112616A1 (en) | Control device, communication device, communication system, switch control method and program | |
KR101527377B1 (en) | Service chaining system based on software defined networks | |
US20150229574A1 (en) | Communication system, communication method, information processing apparatus, communication control method, and program | |
KR101746105B1 (en) | Openflow switch capable of service chaining | |
KR101729944B1 (en) | Method for supplying ip address by multi tunant network system based on sdn | |
US8675669B2 (en) | Policy homomorphic network extension | |
CN104412546A (en) | Communication method, communication system, information processing apparatus, communication terminal, and program | |
KR101493936B1 (en) | Method, device and computer-readable recording medium for selecting network based on openflow | |
KR101501892B1 (en) | Method, device and computer-readable recording medium for selecting network suitable for service based on openflow | |
KR101378313B1 (en) | Method, appratus, system and computer-readable recording medium for assisting communication between terminal and local host by using openflow | |
KR101501242B1 (en) | Method, device and computer-readable recording medium for aggregating network based on openflow | |
KR101679224B1 (en) | Network system based on sdn capable traffice distribution | |
JP2017050708A (en) | Communication system, control unit, switch, communication method, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20140526 |
|
PA0201 | Request for examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20140616 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination Patent event date: 20140526 Patent event code: PA03021R01I Comment text: Patent Application |
|
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20140828 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20150203 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20150304 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20150304 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20200304 Year of fee payment: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20200304 Start annual number: 6 End annual number: 6 |
|
PR1001 | Payment of annual fee |
Payment date: 20210304 Start annual number: 7 End annual number: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20230406 Start annual number: 9 End annual number: 9 |
|
PR1001 | Payment of annual fee |
Payment date: 20240304 Start annual number: 10 End annual number: 10 |