KR101155012B1 - Open flow network system and method of controlling the same - Google Patents

Open flow network system and method of controlling the same Download PDF

Info

Publication number
KR101155012B1
KR101155012B1 KR1020100117421A KR20100117421A KR101155012B1 KR 101155012 B1 KR101155012 B1 KR 101155012B1 KR 1020100117421 A KR1020100117421 A KR 1020100117421A KR 20100117421 A KR20100117421 A KR 20100117421A KR 101155012 B1 KR101155012 B1 KR 101155012B1
Authority
KR
South Korea
Prior art keywords
flow
information
switch
qos
path
Prior art date
Application number
KR1020100117421A
Other languages
Korean (ko)
Other versions
KR20120055955A (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 KR1020100117421A priority Critical patent/KR101155012B1/en
Publication of KR20120055955A publication Critical patent/KR20120055955A/en
Application granted granted Critical
Publication of KR101155012B1 publication Critical patent/KR101155012B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • 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

Landscapes

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

Abstract

본 발명은 오픈플로우 네트워크 시스템 및 그 제어방법에 관한 것으로서, 데이터를 송수신하는 복수개의 노드와, 상기 노드 간의 플로우 송수신을 중계하는 오픈플로우 스위치와, 상기 오픈플로우 스위치를 제어하는 플로우 라우팅 컨트롤러를 포함하는 오픈플로우 네트워크 시스템에 있어서, 상기 컨트롤러는 상기 오픈플로우 스위치로부터 수신된 플로우 정보와 사용자의 요구를 반영하여 플로우에 대한 포워딩을 생성하고, 상기 플로우에 대한 포워딩 정보를 플로우 엔트리의 형태로 상기 오픈플로우 스위치에 전송하고; 상기 오픈플로우 스위치는, 상기 컨트롤러로부터 상기 플로우에 대한 포워딩을 플로우 엔트리의 형태로 수신하여 상기 엔트리 안에 포함된 포워딩 규칙에 기반하여 이후의 트래픽을 관리하는 것을 특징으로 한다. 이에 의해, 사용자가 정의하는 서비스 품질 요구사항에 맞추어 동적으로 트래픽 전송경로를 할당하고 네트워크 상황에 따라 플로우를 재정의하여 트래픽을 이동시킴으로써 일정 수준 이상의 네트워크 품질을 유지할 수 있고, 동적 플로우 이동을 통해 유휴 대역을 효율적으로 이용할 수 있는 오픈플로우 네트워크 시스템 및 그 제어방법에 관한 것이다.The present invention relates to an open flow network system and a control method thereof, comprising a plurality of nodes for transmitting and receiving data, an open flow switch for relaying flow transmission and reception between the nodes, and a flow routing controller for controlling the open flow switch. In the openflow network system, the controller generates forwarding for a flow by reflecting flow information received from the openflow switch and a user's request, and forwarding information for the flow in the form of a flow entry in the openflow switch. Transmit to; The open flow switch may receive forwarding of the flow from the controller in the form of a flow entry to manage subsequent traffic based on a forwarding rule included in the entry. As a result, by dynamically assigning traffic transmission paths according to user-defined quality of service requirements and redefining flows according to network conditions, the traffic can be moved to maintain a certain level of network quality. The present invention relates to an open flow network system and a method of controlling the same.

Description

오픈플로우 네트워크 시스템 및 그 제어방법{OPEN FLOW NETWORK SYSTEM AND METHOD OF CONTROLLING THE SAME}Open flow network system and its control method {OPEN FLOW NETWORK SYSTEM AND METHOD OF CONTROLLING THE SAME}

본 발명은 오픈플로우 네트워크 시스템 및 그 제어방법에 관한 것으로서, 보다 상세하게는, 사용자가 정의하는 서비스 품질 요구사항에 맞추어 동적으로 트래픽 전송경로를 할당하고 네트워크 상황에 따라 플로우를 재정의하여 트래픽을 이동시킴으로써 일정 수준 이상의 네트워크 품질을 유지할 수 있고, 동적 플로우 이동을 통해 유휴 대역을 효율적으로 이용할 수 있는 오픈플로우 네트워크 시스템 및 그 제어방법에 관한 것이다.
The present invention relates to an openflow network system and a control method thereof, and more particularly, by dynamically assigning a traffic transmission path according to a service quality requirement defined by a user and redefining the flow according to network conditions to move traffic. The present invention relates to an open flow network system capable of maintaining a certain level of network quality and efficiently using an idle band through dynamic flow movement, and a control method thereof.

오픈플로우(OpenFlow) 기술은 새로운 프로토콜들을 실제 네트워크상에서 시험하는 기술 표준으로써, 오픈플로우 기술을 이용하면 기존의 애플리케이션을 유지한 상태에서 네트워크 프로토콜을 시험할 수 있다.OpenFlow technology is a technical standard for testing new protocols over real networks. OpenFlow technology allows you to test network protocols while maintaining existing applications.

오픈플로우 기술이 적용된 네트워크 시스템은, 플로우 테이블(Flow Table), 제어기(Controller) 및 스위치 간 통신 보안을 제공하는 오픈플로우 프로토콜을 포함한다. The network system to which the open flow technology is applied includes an open flow protocol that provides communication security between a flow table, a controller, and a switch.

플로우 테이블은 스위치에 내장되어, 패킷과 트래픽을 어떻게 처리할지에 대한 룰을 정의한다. 제어기는 오픈플로우 시스템을 제어하는 일종의 지휘 컴퓨터로써, 특별히 정의된 오픈플로우 프로토콜을 이용해 스위치와 통신한다. 이 프로토콜은 SSL(Secure Socket Layer)에 의해 암호화된다.Flow tables are built into the switch and define the rules for how to handle packets and traffic. The controller is a kind of command computer that controls the OpenFlow system and communicates with the switch using a specially defined OpenFlow protocol. This protocol is encrypted by Secure Socket Layer (SSL).

오픈플로우 시스템에서는 스위치나 라우터 또는 네트워크 컨트롤러에 명령을 내릴 수 있는 API를 제공하며, 엔지니어는 이 API를 이용하여 자신만의 프로토콜을 정의할 수 있다. 예를 들면, 단순한 트래픽은 주어진 IP 주소로 정의할 수 있다.OpenFlow systems provide an API for instructing switches, routers, or network controllers, and engineers can use this API to define their own protocols. For example, simple traffic can be defined with a given IP address.

이러한 명령에 따라, 제어기는 네트워크 지식정보를 이용하여 최적화된 네트워크를 통해 경로를 설정할 수 있다. 즉, 종래의 오픈플로우 기술은, 기존의 스위치와 라우터를 이용하여 소프트웨어로 제어되는 전송 정책이 최적의 트래픽 경로를 결정한다. According to this command, the controller can establish a path through the optimized network using network knowledge information. In other words, in the conventional openflow technology, a software-controlled transmission policy determines an optimal traffic path using existing switches and routers.

한편, 화상 회의와 같은 멀티미디어 트래픽의 경우 패킷 로스에 민감하여 항상 일정량의 유휴 대역폭이 존재하여야 좋은 품질의 화상 및 음성 서비스가 가능하다. On the other hand, multimedia traffic such as video conferencing is sensitive to packet loss, so that a certain amount of idle bandwidth must always exist to enable good quality video and voice services.

따라서, 멀티미디어 트래픽을 전송하는 경우 주기적으로 사용하고 있는 네트워크 경로의 상태를 모니터링 하여 필요에 따라 우회 경로를 이용하여 트래픽을 전송하는 방법이 요구되고 있다.
Therefore, when transmitting multimedia traffic, there is a demand for a method of monitoring the state of a network path being used periodically and transmitting traffic using a bypass path as necessary.

본 발명은 상술한 문제점을 해결하기 위하여 안출된 것으로서, 사용자가 정의하는 서비스 품질 요구사항에 맞추어 동적으로 트래픽 전송경로를 할당하고, 네트워크 상황에 따라 플로우를 재정의하여 트래픽을 이동시킴으로써 일정 수준 이상의 네트워크 품질을 유지할 수 있고, 동적 플로우 이동을 통해 유휴 대역을 효율적으로 이용할 수 있는 오픈플로우 네트워크 시스템 및 그 제어방법을 제공하는데 그 기술적 과제가 있다.
SUMMARY OF THE INVENTION The present invention has been made to solve the above-mentioned problems. The present invention provides a network quality over a predetermined level by dynamically assigning traffic transmission paths according to user-defined service quality requirements, and redefining flows according to network conditions. There is a technical problem to provide an open flow network system and a method of controlling the same, which can maintain the network bandwidth and efficiently utilize the idle band through dynamic flow movement.

상술한 목적을 달성하기 위한 본 발명의 오픈플로우 네트워크 시스템은, 데이터를 송수신하는 복수개의 노드와, 상기 노드 간의 플로우 송수신을 중계하는 오픈플로우 스위치와, 상기 오픈플로우 스위치를 제어하는 플로우 라우팅 컨트롤러를 포함하는 오픈플로우 네트워크 시스템에 있어서, 상기 컨트롤러는 상기 오픈플로우 스위치로부터 수신된 플로우 정보와 사용자의 요구를 반영하여 플로우에 대한 포워딩을 생성하고, 상기 플로우에 대한 포워딩 정보를 플로우 엔트리의 형태로 상기 오픈플로우 스위치에 전송하고; 상기 오픈플로우 스위치는, 상기 컨트롤러로부터 상기 플로우에 대한 포워딩을 플로우 엔트리의 형태로 수신하여 상기 엔트리 안에 포함된 포워딩 규칙에 기반하여 이후의 트래픽을 관리하며; 상기 오픈플로우 스위치와 상기 컨트롤러는 TCP 또는 SSL 방식으로 상호 데이터를 송수신하는 것을 특징으로 한다.The openflow network system of the present invention for achieving the above object includes a plurality of nodes for transmitting and receiving data, an openflow switch for relaying flow transmission and reception between the nodes, and a flow routing controller for controlling the openflow switch. In the open flow network system, the controller generates the forwarding for the flow by reflecting the flow information received from the open flow switch and the user's request, the forwarding information for the flow in the form of a flow entry of the open flow Send to the switch; The openflow switch receives forwarding for the flow from the controller in the form of a flow entry to manage subsequent traffic based on forwarding rules included in the entry; The open flow switch and the controller is characterized in that the transmission and reception of data with each other by TCP or SSL.

그리고, 상기 플로우 엔트리는, 플로우의 목적지 및 발신지의 MAC, IP, 서비스 포트 번호를 포함하는 헤더 필드와; 지정된 포트로 포워딩을 수행하는 액션 필드를 포함할 수 있다.The flow entry may include a header field including a MAC, an IP, a service port number of a destination and an origin of the flow; It may include an action field for performing forwarding to a specified port.

삭제delete

또 다른 측면에서 볼 때, 상술한 목적을 달성하기 위한 본 발명의 오픈플로우 네트워크 시스템은, 데이터를 송수신하는 복수개의 노드와, 상기 노드 간의 플로우 송수신을 중계하는 오픈플로우 스위치를 포함하는 오픈플로우 네트워크 시스템에 있어서, 관리자로부터 입력받은 QoS 정책과 네트워크 연결 상태를 유지하는 네트워크 구성 정보가 저장된 데이터베이스를 포함하는 QoS 및 구성정보 관리기; 상기 오픈플로우 스위치와 호스트의 정보를 주기적으로 모니터링 하여 등록 및 관리하고, 수신된 이벤트 및 메시지의 종류에 따라, 수신된 패킷에 대해 선언된 QoS 프로파일에 기반하여 라우팅 경로를 설정하고 상기 설정된 경로에 포함된 오픈플로우 스위치의 플로우 엔트리를 생성하는 포워딩 및 스위치 통신기; 및 수신된 플로우에 따라 상기 QoS 라우팅 토폴로지와 일반 라우팅 토폴로지 중 어느 하나를 생성하고, 생성된 각 토폴로지에 기초하여 최단 경로를 산출하여 네트워크 구성정보 데이터베이스에 반영을 요청하는 라우팅 처리기를 포함하는 것을 특징으로 한다.In another aspect, the openflow network system of the present invention for achieving the above object, an openflow network system including a plurality of nodes for transmitting and receiving data, and an openflow switch for relaying flow transmission and reception between the nodes. A QoS and configuration information manager comprising: a database storing a QoS policy received from an administrator and network configuration information maintaining a network connection state; Periodically monitors and registers and manages information of the OpenFlow switch and the host, and sets a routing path based on the QoS profile declared for the received packet according to the received event and message type and includes the routing path in the set path. A forwarding and switch communicator for generating a flow entry of an open flow switch; And a routing processor for generating any one of the QoS routing topology and the general routing topology according to the received flow, calculating a shortest path based on each generated topology, and requesting reflection in a network configuration information database. do.

여기서, 상기 QoS 및 구성정보 관리기는, 상기 데이터베이스의 테이블을 생성하고 상기 테이블에 상기 QoS 관련 정보 및 네트워크 정보를 저장하여 관리 및 업데이트하는 QoS 적용대상 입력부; 상기 호스트와 오픈플로우 스위치 정보를 등록 및 관리하는 호스트/스위치 정보 처리부; 및 상기 플로우의 경로정보를 저장 및 관리하는 경로정보 처리부를 포함할 수 있다.The QoS and configuration information manager may include: a QoS application target input unit configured to generate a table of the database and store and manage and update the QoS related information and network information in the table; A host / switch information processor for registering and managing the host and the open flow switch information; And a route information processor configured to store and manage route information of the flow.

그리고, 상기 포워딩 및 스위치 통신기는, 오픈플로우 메시지 및 이벤트 처리부; 데이터 경로 이벤트에 기반하여 컨트롤러에 감지된 오픈플로우 스위치와 호스트를 등록하는 호스트 및 스위치 등록부; LLDP 패킷을 기반으로 물리 토폴로지를 인식하는 물리 토폴로지 획득부; 포트 상태정보를 이용하여 노드 간의 대역을 얻어오는 대역폭 측정부; 일반 플로우의 송수신을 위한 스위칭을 수행하는 L2 스위칭 처리부; 수신된 패킷에 대해 선언된 QoS 프로파일에 기반하여 라우팅 결정을 내리는 라우팅 선택부; 및 설정된 경로에 따라 포함되는 오픈플로우 스위치로 플로우 엔트리를 생성하여 전송하는 포워딩 처리부를 포함할 수 있다.The forwarding and switch communicator may include an open flow message and event processor; A host and switch register configured to register an openflow switch and a host detected by the controller based on the data path event; A physical topology acquiring unit recognizing a physical topology based on the LLDP packet; A bandwidth measuring unit for obtaining a band between nodes using port state information; An L2 switching processor configured to perform switching for transmission and reception of a general flow; A routing selector for making a routing decision based on the QoS profile declared for the received packet; And a forwarding processor configured to generate and transmit a flow entry to an open flow switch included according to a set path.

또한, 상기 라우팅 처리기는, 사용자의 네트워크 요구 사항을 반영하는 플로우를 처리하는 QoS 라우팅 토폴로지 생성부; 일반 플로우 처리를 담당하는 일반 라우팅 토폴로지 생성부; 상기 각 토폴로지에 기초하여 최단 경로를 산출하는 최단 경로 계산 처리부를 포함할 수 있다.The routing processor may further include: a QoS routing topology generator configured to process a flow reflecting a user's network requirements; A general routing topology generation unit in charge of general flow processing; It may include a shortest path calculation processing unit for calculating the shortest path based on each of the topologies.

그리고, 상기 데이터베이스에는, 최단경로(Dijkstra Path) 정보, 호스트 정보, 오픈플로우 스위치 연결정보, 오픈플로우 스위치 리스트 정보, QoS 정책정보, QoS 경로정보 및 실패한 패킷 정보중 적어도 하나 이상의 데이터가 저장될 수 있다.The database may store at least one or more of dijkstra path information, host information, open flow switch connection information, open flow switch list information, QoS policy information, QoS path information, and failed packet information. .

또한, 상기 최단경로(Dijkstra Path) 정보, QoS 정책정보, QoS 경로정보 및 실패한 패킷 정보는, 송수신 측의 MAC 주소, 송수신 측의 IP 주소, 송수신 측의 서비스 포트 번호, 데이터링크 계층에서의 타입 및 네트워크 프로토콜 번호를 포함하며, 각 정보의 속성에 따른 부가정보를 더 포함할 수 있다.In addition, the Dijkstra Path information, QoS policy information, QoS path information, and failed packet information may include the MAC address of the transmitting and receiving side, the IP address of the transmitting and receiving side, the service port number of the transmitting and receiving side, the type in the data link layer, and It includes a network protocol number, and may further include additional information according to the attribute of each information.

그리고, 상기 호스트 정보는, 상기 오픈플로우 망에 가입된 호스트의 주소정보 및 접속정보와, 수신측 및 송신측 대역폭 정보와, 호스트가 연결된 시간 및 경로 설정 시 사용 여부 정보를 포함할 수 있다.The host information may include address information and access information of a host subscribed to the open flow network, bandwidth information of a receiving side and a transmitting side, and information on whether a host is connected and whether to use it when setting a path.

또한, 상기 오픈플로우 스위치 연결정보는, 상기 오픈플로우 스위치의 주소정보 및 접속정보와, 수신측 및 송신측 대역폭 정보와, 마지막으로 패킷을 받은 시간 정보를 포함할 수 있다.In addition, the open flow switch connection information may include address information and access information of the open flow switch, reception side and transmission side bandwidth information, and last received packet information.

상술한 목적을 달성하기 위한 본 발명의 오픈플로우 네트워크 시스템의 제어방법은, 오픈프로우 네트워크 시스템의 제어방법에 있어서, 수신된 패킷의 플로우가 일반 플로우인지 QoS 플로우인지를 판단하는 단계; 상기 QoS 플로우인 경우 QoS 라우팅 토폴로지를 생성하는 단계; 상기 생성된 각 토폴로지에 기초하여 최단 경로를 설정하는 단계; 상기 최단 경로에 기초하여 플로우 엔트리를 생성하는 단계; 상기 플로우 엔트리를 오픈플로우 스위치에 전송하는 단계; 및 상기 오픈플로우 스위치에서 상기 플로우 엔트리에 포함된 포워딩 규칙에 기반하여 이후의 트래픽을 관리하는 단계를 포함한다.According to another aspect of the present invention, there is provided a method of controlling an open flow network system, the method comprising: determining whether a flow of a received packet is a general flow or a QoS flow; Creating a QoS routing topology if the QoS flow; Setting a shortest path based on each generated topology; Generating a flow entry based on the shortest path; Sending the flow entry to an openflow switch; And managing, by the open flow switch, subsequent traffic based on a forwarding rule included in the flow entry.

여기서, 상기 수신된 플로우가 일반 플로우인 경우 최단경로(Dijkstra) 라우팅 토폴로지를 생성하는 단계; 상기 생성된 각 토폴로지에 기초하여 최단 경로를 설정하는 단계; 및 상기 경로에 따라 L2 스위치를 제어하여 트래픽을 전송하는 단계를 포함할 수 있다.Here, when the received flow is a general flow, generating a shortest path (Dijkstra) routing topology; Setting a shortest path based on each generated topology; And transmitting traffic by controlling the L2 switch according to the path.

한편, 상기 오픈플로우 스위치의 포트 별 통계 자료를 주기적으로 수신하는 단계; 상기 포트별 통계 정보를 이용하여 링크 간의 대역폭을 계산하는 단계; 상기 대역폭에 따라 라우팅 플래그를 셋팅하는 단계; 기 저장된 호스트정보 및 오픈플로우 스위치의 연결정보에 포함된 상기 대역폭정보를 업데이트 하는 단계를 더 포함할 수 있다.On the other hand, periodically receiving port-specific statistical data of the open flow switch; Calculating bandwidth between links using the port-specific statistical information; Setting a routing flag according to the bandwidth; The method may further include updating the bandwidth information included in pre-stored host information and connection information of the open flow switch.

또한, 데이터 패스(datapath) 이벤트가 발생한 경우, 해당 호스트 및 오픈플로우 스위치의 연결정보를 추가 혹은 삭제하는 단계를 더 포함할 수 있다.
In addition, when a data path event occurs, the method may further include adding or deleting connection information of the corresponding host and the open flow switch.

상술한 바와 같이 본 발명의 오픈플로우 네트워크 시스템 및 그 제어방법은, 사용자가 정의하는 서비스 품질 요구사항에 맞추어 동적으로 트래픽 전송경로를 할당하고 네트워크 상황에 따라 플로우를 재정의하여 트래픽을 이동시킴으로써 일정 수준 이상의 네트워크 품질을 유지할 수 있고, 동적 플로우 이동을 통해 유휴 대역을 효율적으로 이용할 수 있다.
As described above, the open flow network system and its control method of the present invention dynamically allocate traffic transmission paths according to user-defined quality of service requirements, redefine the flow according to network conditions, and move the traffic above a certain level. Network quality can be maintained and dynamic flow movements can efficiently utilize idle bands.

도 1은 본 발명의 실시예에 따른 오픈플로우 네트워크 시스템의 구성도,
도 2는 본 발명의 실시예에 따른 오픈플로우 네트워크 시스템의 제어블럭도,
도 3은 본 발명의 실시예에 따른 오픈플로우 네트워크 시스템의 데이터베이스의 스키마 구조도,
도 4는 본 발명의 제1실시예에 따른 오픈플로우 네트워크 시스템의 제어 흐름도,
도 5는 본 발명의 제2실시예에 따른 오픈플로우 네트워크 시스템의 제어 흐름도이다.
1 is a block diagram of an openflow network system according to an embodiment of the present invention;
2 is a control block diagram of an openflow network system according to an embodiment of the present invention;
3 is a schema structure diagram of a database of an openflow network system according to an embodiment of the present invention;
4 is a control flowchart of an openflow network system according to a first embodiment of the present invention;
5 is a control flowchart of an openflow network system according to a second embodiment of the present invention.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 보다 상세히 설명하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시예에 따른 오픈플로우 네트워크 시스템의 구성도이다.1 is a block diagram of an openflow network system according to an embodiment of the present invention.

오픈플로우 네트워크 시스템은, 데이터를 송수신하는 복수개의 노드(10)와 각 노드(10) 간의 플로우 송수신을 중계하는 오픈플로우 스위치(20)와, 오픈플로우 스위치(20)로부터 플로우 정보를 수신하여 플로우의 라우팅을 제어하는 플로우 라우팅 컨트롤러(100)를 포함한다. 여기서, 오픈플로우 스위치(20)와 플로우 라우팅 컨트롤러(100)는 TCP 또는 SSL과 같은 통신방법을 통해 정보를 교환할 수 있다.The open flow network system includes a plurality of nodes 10 for transmitting and receiving data, an open flow switch 20 for relaying flow transmission and reception between each node 10, and flow information from the open flow switch 20 to receive flow information. It includes a flow routing controller 100 for controlling the routing. Here, the open flow switch 20 and the flow routing controller 100 may exchange information through a communication method such as TCP or SSL.

노드(10) 간 통신 시, 송신측 노드(10)는 오픈플로우 스위치(20) 측에 연결하고자 하는 수신측 노드(10)로 통신을 요청한다.In the communication between the nodes 10, the transmitting node 10 requests a communication to the receiving node 10 to be connected to the open flow switch 20 side.

오픈플로우 스위치(20)는 송신측 노드(10)로부터 받은 데이터를 버퍼에 저장한 후, 오픈플로우 라우팅 컨트롤러(100) 측에 요청된 플로우에 대한 정보를 전송한다. 이때, 플로우에 대한 정보 교환은 오픈플로우 프로토콜을 이용하여 이루어진다. The open flow switch 20 stores the data received from the transmitting node 10 in a buffer and transmits information on the requested flow to the open flow routing controller 100. At this time, the exchange of information on the flow is performed using an open flow protocol.

컨트롤러(100)는 오픈플로우 스위치(20)로부터 수신된 플로우 정보와 사용자의 요청을 반영하여 플로우에 대한 포워딩 경로를 생성한다. 오픈플로우 라우팅 컨트롤러(100)는 생성된 포워딩 경로를 오픈플로우 스위치(20)에 플로우 엔트리의 형태로 전송한다. The controller 100 generates a forwarding path for the flow by reflecting the flow information received from the open flow switch 20 and the user's request. The open flow routing controller 100 transmits the generated forwarding path to the open flow switch 20 in the form of a flow entry.

플로우 엔트리를 수신한 오픈플로우 스위치(20)는 엔트리 안에 포함된 포워딩 규칙에 기반하여 이 후의 트래픽을 관리한다. 플로우 엔트리는 목적지/발신지 MAC, IP, 서비스 포트 번호 등을 포함하는 헤더 필드와 지정된 포트로 포워딩을 수행하는 액션 필드 등으로 구성된다.Receiving the flow entry, the open flow switch 20 manages subsequent traffic based on forwarding rules contained in the entry. The flow entry includes a header field including a destination / source MAC, an IP, a service port number, and the like, and an action field for forwarding to a designated port.

본 발명에서는 이와 같은 오픈플로우 네트워크 시스템에서 일반 플로우와 망 정책 관리자(110)에 의해 정의되어 차별화된 요구 사항을 보장하는 QoS 플로우를 구별하여 플로우 라우팅을 할 수 있는 시스템을 제안하고 있다. The present invention proposes a system capable of flow routing by distinguishing between a general flow and a QoS flow defined by the network policy manager 110 to ensure differentiated requirements in such an open flow network system.

도 2는 본 발명의 실시예에 따른 오픈플로우 네트워크 시스템의 제어블럭도로서, 트래픽 부하를 고려한 동적 플로우 라우팅 기능을 수행하기 위한 제어 구성을 도시한 것이다.2 is a control block diagram of an open flow network system according to an embodiment of the present invention, and shows a control configuration for performing a dynamic flow routing function in consideration of traffic load.

오픈플로우 네트워크 시스템은 QoS 및 구성정보 관리기(200), 라우팅 처리기(300), 포워딩 및 스위치 통신기(400)를 포함한다.The open flow network system includes a QoS and configuration information manager 200, a routing processor 300, a forwarding and switch communicator 400.

QoS 및 구성정보 관리기(200)는 오픈플로우 네트워크 정책 관리자(110)로부터 입력받은 QoS 정책과 네트워크 연결 상태를 유지하는 네트워크 구성 정보가 저장되는 QoS 프로파일 및 구성 정보 데이터베이스(220)를 포함한다. The QoS and configuration information manager 200 includes a QoS profile and configuration information database 220 in which the QoS policy received from the openflow network policy manager 110 and network configuration information for maintaining a network connection state are stored.

QoS 및 구성정보 관리기(200)는 데이터베이스(220)의 테이블을 생성하고 테이블에 저장된 정보를 관리 및 업데이트하기 위해, QoS 적용대상 입력부(210), 호스트/스위치 정보 처리부(240), 경로정보 처리부(230)를 포함할 수 있다. 여기서, 데이터베이스(220)의 스키마 구조 및 필드에 대한 설명은 후술할 도 3에 대한 설명에서 상세히 서술하기로 한다.The QoS and configuration information manager 200 generates a table in the database 220 and manages and updates the information stored in the table. The QoS application target input unit 210, the host / switch information processing unit 240, and the path information processing unit ( 230). Here, a description of the schema structure and fields of the database 220 will be described in detail with reference to FIG. 3 to be described later.

포워딩 및 스위치 통신기(400)는 오픈플로우 메시지 및 이벤트 처리부(410), 호스트 및 스위치 등록부(420), 물리 토폴로지 획득부(430), 대역폭 측정부(440), L2 스위칭 처리부(450), 라우팅 선택부(470), 포워딩 처리부(460)를 포함한다.The forwarding and switch communicator 400 includes an openflow message and event processor 410, a host and switch register 420, a physical topology acquirer 430, a bandwidth measurer 440, an L2 switching processor 450, and routing selection. The unit 470 includes a forwarding processor 460.

오픈플로우 메시지 및 이벤트 처리부(410)는 오픈플로우 프로토콜에 대한 처리 및 대응 기능을 수행한다.The open flow message and event processor 410 processes and responds to the open flow protocol.

호스트 및 스위치 등록부(420)는 데이터 패스(datapath) 이벤트에 기반하여 컨트롤러(100)에 감지된 오픈플로우 스위치(20)와 호스트를 등록한다.The host and switch registration unit 420 registers the open flow switch 20 and the host detected by the controller 100 based on the datapath event.

물리 토폴로지 획득부(430)는 LLDP 패킷을 기반으로 물리 토폴로지를 인식한다. The physical topology acquisition unit 430 recognizes the physical topology based on the LLDP packet.

대역폭 측정부(440)는 포트 상태(port_stats)를 이용하여 노드(10) 간의 대역정보를 획득한다.The bandwidth measuring unit 440 obtains band information between the nodes 10 by using port states (port_stats).

L2 스위칭 처리부(450)는 기존의 L2 스위칭 역할을 수행한다.The L2 switching processor 450 performs a conventional L2 switching role.

라우팅 선택부(470)는 3 계층 이상의 패킷에 대해 선언된 QoS 프로파일에 기반하여 라우팅 경로를 설정한다.The routing selector 470 sets a routing path based on the QoS profile declared for the packets of three or more layers.

포워딩 처리부(460)는 라우팅 선택부(470)에서 설정된 경로에 따라, 경로에 포함된 오픈플로우 스위치(20) 측에 플로우 엔트리를 생성하여 전송한다.The forwarding processor 460 generates and transmits a flow entry to the open flow switch 20 included in the path according to the path set by the routing selector 470.

라우팅 처리기(300)는 QoS 라우팅 토폴로지 생성부(310), 일반 라우팅 토폴로지 생성부(320), 최단경로 계산 처리부(330)를 포함한다.The routing processor 300 includes a QoS routing topology generator 310, a general routing topology generator 320, and a shortest path calculation processor 330.

QoS 라우팅 토폴로지 생성부(310)는 사용자의 네트워크 요구 사항을 반영하는 플로우를 처리한다. The QoS routing topology generator 310 processes a flow that reflects a user's network requirements.

일반 라우팅 토폴로지 생성부(320)는 QoS 라우팅이 아닌, 일반적인 플로우를 처리한다. 일반 라우팅 토폴로지 생성부(320)는 최단 거리를 검색하는 데이크스트라(Dijkstra) 알고리즘을 이용하여 일반적인 플로우를 처리할 수 있다.The general routing topology generation unit 320 processes general flows, not QoS routing. The general routing topology generator 320 may process a general flow by using a Dijkstra algorithm for searching the shortest distance.

최단경로 계산 처리부(330)는 각각 생성된 토폴로지에 기초하여 최단경로를 검색하고, 네트워크 구성정보 데이터베이스(220)에 검색된 최단경로의 반영을 요청한다.The shortest path calculation processor 330 searches for the shortest path based on the generated topology, and requests the network configuration information database 220 to reflect the searched shortest path.

도 3은 본 발명의 실시예에 따른 오픈플로우 네트워크 시스템의 데이터베이스(220)의 스키마 구조도이다.3 is a schema structure diagram of a database 220 of an openflow network system according to an embodiment of the present invention.

도 3에서 (a)는 최단경로(Dijkstra Path) 정보, (b)는 호스트 정보, (c)는 오픈플로우 스위치 연결정보, (d)는 오픈플로우 스위치 리스트 정보, (e)는 QoS 정책정보, (f)는 QoS 경로정보, (g)는 실패한 패킷 정보를 도시한 것이다.In FIG. 3, (a) shows Dijkstra Path information, (b) shows host information, (c) shows open flow switch connection information, (d) shows open flow switch list information, and (e) shows QoS policy information. (f) shows QoS path information and (g) shows failed packet information.

최단경로(Dijkstra Path) 정보(a)는 QoS 보장을 필요로 하지 않는 일반 플로우의 경로정보를 저장하는 용도로 사용된다. SM, DM은 각각 송수신 측의 MAC 주소, SP, DP는 각각 송수신 측의 IP 주소, Sp, Dp는 각각 송수신 측의 서비스 포트 번호, DLT는 데이터링크 계층에서의 타입, NWP는 네트워크 프로토콜 번호를 나타낸다. PTH는 해당 플로우가 거쳐 가야 하는 스위치(20)들의 ID를 순차적으로 포함한다. USE는 해당 경로의 사용 여부를 나타내고, EXP는 해당 경로가 마지막으로 사용된 시간을 기록한다.Dijkstra Path information (a) is used for storing path information of a general flow that does not require QoS guarantee. SM and DM are the MAC addresses of the transmitting and receiving sides, SP and DP are the IP addresses of the transmitting and receiving sides, respectively, Sp and Dp are the service port numbers of the transmitting and receiving sides, DLT is the type at the data link layer, and NWP is the network protocol number. . The PTH sequentially includes the IDs of the switches 20 that the flow must go through. USE indicates whether the route is used or not, and EXP records the last time the route was used.

호스트 정보(b)는 오픈플로우 망에 가입된 호스트의 정보를 저장하는 용도이다. MAC는 연결된 호스트의 MAC 주소, IP는 IP주소, COF는 해당 호스트가 연결된 오픈플로우 스위치(20)의 ID, CPT는 연결된 스위치(20)의 포트번호, RBW는 수신측 대역폭, TBW는 송신측 대역폭, CRT는 호스트가 연결된 시간, USE는 경로 설정 시 사용 여부를 나타낸다.The host information (b) is for storing information of hosts subscribed to the open flow network. MAC is the MAC address of the connected host, IP is the IP address, COF is the ID of the OpenFlow switch 20 to which the host is connected, CPT is the port number of the connected switch 20, RBW is the receiving bandwidth, TBW is the sending bandwidth , CRT indicates when the host is connected, and USE indicates whether to use it for routing.

오픈플로우 스위치 연결정보(c)는 오픈플로우 스위치가 다른 오픈플로우 스위치와 연결된 상태 정보를 나타내고, 오픈플로우 스위치(20)마다 하나의 테이블을 갖게 된다. The open flow switch connection information (c) indicates the state information in which the open flow switch is connected to another open flow switch, and has one table for each open flow switch 20.

오픈플로우 스위치 연결정보(c)에서 PT는 해당 스위치가 다른 스위치와 붙은 포트번호, COF는 해당 스위치가 연결된 다른 오픈플로우 스위치의 ID, RBW는 수신측 대역폭, TBW는 송신측 대역폭, CRT는 마지막으로 LLDP 패킷을 받은 시간으로 연결 상태를 주기적으로 확인하기 위함이다. CST는 링크의cost로 기본 값은 1이다. In OpenFlow switch connection information (c), PT is the port number to which the switch is attached to another switch, COF is the ID of the other Openflow switch to which the switch is connected, RBW is the receiving bandwidth, TBW is the sending bandwidth, and CRT is the last. This is to check the connection status periodically by the time when LLDP packet is received. CST is the cost of the link. The default value is 1.

오픈플로우 스위치 리스트 정보(d)는 오픈플로우 망에 가입된 스위치(20)의 ID를 저장한다.The open flow switch list information d stores the ID of the switch 20 subscribed to the open flow network.

QoS 정책정보(e)는 오픈플로우 망 정책 관리자(110)로부터 입력받은 QoS 적용 관련 정보를 저장하는 용도로 사용되고, 와일드 카드(*)를 지원한다. SM, DM은 각각 송수신 측의 MAC 주소, SP, DP는 각각 송수신 측의 IP 주소, Sp, Dp는 각각 송수신 측의 서비스 포트 번호, DLT는 데이터링크 계층에서의 타입, NWP는 네트워크 프로토콜 번호, PRT는 우선순위, TYP는 QoS 플로우 경로 설정 시 사용되는 라우팅 프로토콜 옵션으로 본 발명에서는 CSPF를 이용한다. CT는 제약조건의 만족시키고자 하는 임계치 값으로 주로 대역폭 정보를 이용한다. DRT는 QoS 플로우의 단/양방향 여부, STE는 해당 엔트리의 사용 상태를 나타낸다.The QoS policy information (e) is used for storing QoS application related information received from the open flow network policy manager 110 and supports wildcard (*). SM and DM are MAC addresses of the transmitting and receiving sides, SP and DP are IP addresses of the transmitting and receiving sides, respectively, Sp and Dp are service port numbers of the transmitting and receiving sides, DLT is the type at the data link layer, NWP is the network protocol number, and PRT. Is priority, and TYP is a routing protocol option used when establishing a QoS flow path. In the present invention, CSPF is used. The CT mainly uses bandwidth information as a threshold value to satisfy the constraint. The DRT indicates whether the QoS flow is unidirectional or bidirectional, and the STE indicates the state of use of the entry.

QoS 경로정보(f)는 QoS 플로우의 경로에 대한 정보를 저장하는 용도로 사용되며, 최단경로(Dijkstra Path) 정보(a)의 스키마와 상당 부분 유사하다. SM, DM은 각각 송수신 측의 MAC 주소, SP, DP는 각각 송수신 측의 IP 주소, Sp, Dp는 각각 송수신 측의 서비스 포트 번호, DLT는 데이터링크 계층에서의 타입, NWP는 네트워크 프로토콜 번호, PRT는 우선순위, TYP는 QoS 플로우 경로 설정 시 사용되는 라우팅 프로토콜 옵션으로 본 발명에서는 CSPF를 이용한다. CT는 제약조건의 만족시키고자 하는 임계치 값으로 주로 대역폭 정보를 이용한다. QoS path information (f) is used for storing information on the path of the QoS flow, and is substantially similar to the schema of Dijkstra Path information (a). SM and DM are MAC addresses of the transmitting and receiving sides, SP and DP are IP addresses of the transmitting and receiving sides, respectively, Sp and Dp are service port numbers of the transmitting and receiving sides, DLT is the type at the data link layer, NWP is the network protocol number, and PRT. Is priority, and TYP is a routing protocol option used when establishing a QoS flow path. In the present invention, CSPF is used. The CT mainly uses bandwidth information as a threshold value to satisfy the constraint.

PTH는 해당 플로우가 거쳐 가야 하는 스위치(20)들의 ID를 순차적으로 포함한다. DRT는 QoS 플로우의 단/양방향 여부, USE는 경로 설정 시 사용 여부, EXP는 해당 경로가 마지막으로 사용된 시간을 기록한다. ABW는 이 경로의 가용 대역폭을 나타내고, CPT는 경로를 구성하는 홉 간의 링크들의 측정 여부를 리스트 형태로 나타낸다. CBW는 여러 링크들 중에 가장 작은 가용 대역폭을 임시로 저장하는 용도이며, CAY는 해당 경로가 다른 경로에 의해 침범 당했는지를 나타낸다.The PTH sequentially includes the IDs of the switches 20 that the flow must go through. The DRT records whether the QoS flow is unidirectional or bidirectional, the USE is used to set the path, and the EXP records the last time the path was used. The ABW indicates the available bandwidth of this path, and the CPT indicates whether the links between the hops constituting the path are measured in list form. CBW is used to temporarily store the smallest available bandwidth among several links, and CAY indicates whether the path was invaded by another path.

실패한 패킷 정보(g)는 경로 설정 실패 시에 실패한 패킷에 대한 정보를 저장하는 용도로 사용된다. 실패한 패킷 정보(g)는 QoS 경로정보(f) 스키마의 구조와 유사하며, CRT 값으로 경로 설정 실패 시의 시간을 기록한다.The failed packet information g is used for storing information about the failed packet when the path establishment fails. The failed packet information (g) is similar to the structure of the QoS path information (f) schema, and records the time when the path establishment fails with a CRT value.

도 4는 본 발명의 제1실시예에 따른 오픈플로우 네트워크 시스템의 제어 흐름도로써, 본 시스템에서 관장하는 오픈플로우 스위치(20)로부터 메시지 또는 이벤트가 발생할 경우 처리 단계를 보여준다. 4 is a control flowchart of the openflow network system according to the first embodiment of the present invention, and shows a processing step when a message or event occurs from the openflow switch 20 managed in the present system.

오픈플로우 메시지 또는 이벤트가 발생하면 이벤트 또는 메시지의 타입에 따라 대응하게 된다(S410). When an open flow message or event occurs, it corresponds to the type of event or message (S410).

이러한 대응은 오픈플로우 메시지 및 이벤트 처리부(410)를 호출하여 수행되고(S412), 오픈플로우 메시지 및 이벤트 처리부(410)는 오픈플로우 프로토콜에서 정의된 여러 종류의 메시지 및 타입을 판별한다(S414). 이에, 이벤트 및 메시지는, 본 시스템에서는 스위치(20)의 가입/탈퇴를 알리는 데이터 패스(datapath) 이벤트, 스위치(20)에서 컨트롤러(100)로 전송되는 패킷 입력(Packet-in) 메시지, 스위치(20)의 관리 정보 요구를 위한 Stats-request에 대한 Stats-reply 메시지를 정의하며, 오픈플로우 메시지 및 이벤트 처리부(410)는 발생된 메시지 또는 이벤트의 종류를 판별한다.This correspondence is performed by calling the open flow message and event processing unit 410 (S412), and the open flow message and event processing unit 410 determines various types of messages and types defined in the OpenFlow protocol (S414). Accordingly, the event and the message, in the present system is a datapath event (signal-in) message to the controller 100 from the switch 20 informing the join / leave of the switch 20, the switch ( A Stats-reply message for Stats-request for management information request of 20) is defined, and the OpenFlow message and event processing unit 410 determines the type of generated message or event.

데이터 패스(datapath) 이벤트의 발생은 오픈플로우 스위치(20)가 컨트롤러(100)의 영역에 가입/탈퇴를 한다는 것을 의미한다. 이에, 호스트 및 스위치 등록부(420)를 호출한다(S420). The occurrence of a datapath event means that the open flow switch 20 joins / leaves the area of the controller 100. Thus, the host and switch registration unit 420 is called (S420).

호스트 및 스위치 등록부(420)는 발생된 이벤트를 처리하여 오픈플로우 스위치(20)를 컨트롤러(100)의 영역에 가입 혹은 탈퇴 처리한다(S422). 여기서, 호스트 및 스위치 등록부(420)는 오픈플로우 스위치 리스트 데이터베이스(220)에 엔트리를 추가/삭제하고, 해당 스위치(20)를 위한 오픈플로우 스위치 연결정보 테이블을 생성하며 각 포트별로 엔트리를 생성 및 추가/삭제한다. The host and switch registration unit 420 processes the generated event to join or leave the open flow switch 20 to the area of the controller 100 (S422). Here, the host and switch registration unit 420 adds / deletes an entry to the open flow switch list database 220, generates an open flow switch connection information table for the corresponding switch 20, and creates and adds an entry for each port. / Delete

패킷 입력(Packet-in) 메시지의 경우에는 여러 종류의 메시지가 캡슐화 되어 컨트롤러(100)로 전달되게 되는데, 크게 나누어 2 계층 이하의 패킷과 3 계층 이상의 정보를 포함하는 패킷으로 나누어 처리한다(S430, S450). In the case of a packet-in message, various types of messages are encapsulated and delivered to the controller 100. The packet-in message is divided into two layers or less and a packet including three or more layers of information (S430). S450).

3계층 이상의 패킷인 경우 라우팅 선택부(470)를 호출하여 처리한다(S450).If the packet is three or more layers, the routing selector 470 is called and processed (S450).

2계층 이하의 패킷인 경우 LLDP 패킷인지 여부를 판단한다(S430).If the packet is less than two layers, it is determined whether the packet is an LLDP packet (S430).

LLDP 패킷이 아니면서 호스트정보를 포함하고 있는 경우(S432), 해당 호스트 및 스위치 등록부(420)를 호출한다(S420). 호스트 및 스위치 등록부(420)는 오픈플로우 스위치 리스트 데이터베이스(220)에 엔트리를 추가하고, 해당 스위치(20)를 위한 오픈플로우 스위치 연결정보 테이블을 생성하며 각 포트별로 엔트리를 생성 및 추가한다. If it is not an LLDP packet and contains host information (S432), the host and switch registration unit 420 is called (S420). The host and switch registration unit 420 adds an entry to the open flow switch list database 220, generates an open flow switch connection information table for the corresponding switch 20, and creates and adds an entry for each port.

LLDP 패킷이 아니면서 호스트정보를 포함하고 있지 아니한 경우, ARP와 같은 목적지 주소를 모르는 패킷, ICMP 등의 패킷들은 범용적으로 사용되는 스위치와 같은 방식으로 동작을 하게 된다. 이에, 일반 L2 스위칭 처리부(450)를 호출하고(S434), ARP/ICMP 등의 패킷 처리 방식으로 처리한다(S436).If it is not an LLDP packet and does not include host information, packets of unknown destination address such as ARP, and packets such as ICMP operate in the same manner as switches used in general use. Thus, the general L2 switching processing unit 450 is called (S434), and processed in a packet processing scheme such as ARP / ICMP (S436).

LLDP 패킷을 수신하는 경우에는 물리 토폴로지 획득부(430)를 호출하여(S440), 스위치들 간의 연결 정보를 획득한다(S442).When receiving the LLDP packet, the physical topology acquisition unit 430 is called (S440) to obtain connection information between the switches (S442).

LLDP 패킷의 chassid와 portid는 최초 LLDP 패킷을 받은 스위치의 정보를 나타내며 dpid와 inport는 최초 스위치에서 보낸 LLDP 패킷을 받은 스위치의 정보를 나타내므로, 이러한 정보를 오픈플로우 스위치 연결정보 테이블에 저장하고 경로 설정 시 다시 불러와 사용한다. 추가적으로 호스트의 정보를 얻기 위해 호스트가 어느 스위치의 몇 번 포트에 연결되어 있는지 감지하여 호스트 정보 테이블에 저장하고 변동 시 데이터베이스(220)를 업데이트 한다(S444).The chassid and portid of the LLDP packet represent the information of the switch that received the first LLDP packet, and the dpid and inport represent the information of the switch that received the LLDP packet from the original switch. Reload the poem and use it. In addition, in order to obtain the host information, the host detects how many ports are connected to which switch, stores the host information table, and updates the database 220 when the change occurs (S444).

Stats-reply 메시지는 스위치의 포트 별 통계 자료를 수집하기 위해 주기적으로 수신한다. 메시지 수신 시 포함된 포트별 통계 정보를 이용하여 링크 간의 대역폭을 계산한다. 대역폭 계산 방법은 이전에 보고받은 누적 바이트 수와 시간을 각각 현재 보고받은 누적 바이트 수와 시간의 차를 계산한 후 바이트 차이를 시간 차이로 나눈다. 이 값은 오픈플로우 스위치 연결정보 테이블 및 호스트 정보 테이블의 RBW, TBW에 저장되며 이 값은 각 링크의 사용 대역폭이 된다. Stats-reply messages are received periodically to collect switch-specific statistics. The bandwidth between links is calculated using statistical information for each port included in the message reception. The bandwidth calculation method calculates the difference between the cumulative number of bytes and the time reported previously, and divides the byte difference by the time difference. This value is stored in RBW and TBW of OpenFlow switch connection information table and host information table, and this value is used bandwidth of each link.

QoS 경로 상 홉 간의 가용 대역폭 계산을 위해서는 최대 지원 대역폭을 사용 대역폭으로 빼주어 계산한다. 그러나 이 값은 경로 상의 여러 링크 중 하나의 값이므로 그 경로의 가용 대역폭이라 할 수 없다. 경로의 가용 대역폭은 관련 링크들 중 최소 가용 대역폭이 되어야 하기 때문이다. 따라서 각 링크의 가용 대역폭을 전부 체크한 후 그 중 최소 가용 대역폭을 도출해야 한다. To calculate the available bandwidth between hops on the QoS path, the maximum supported bandwidth is subtracted from the used bandwidth. However, since this value is the value of one of the links on the path, it is not the available bandwidth of the path. This is because the available bandwidth of the path should be the minimum available bandwidth of the related links. Therefore, after checking all available bandwidths of each link, the minimum available bandwidth must be derived.

QoS 경로정보 테이블의 CBW는 현재까지 체크한 링크들의 가용 대역폭 중 가장 최소값을 임시로 저장하고 있다. CPT는 경로에 포함된 각 링크의 가용 대역폭 체크상태를 나타낸다. 경로에 포함된 링크가 5개이면 ‘11111’이 체크되어야 하고 2개이면 ‘11’이 된다. 링크의 순서에 따라 '1'이 체크되며 5개 링크 중 첫 번째와 세 번째 링크가 체크되었으면 ’10100‘이 된다. 포함된 모든 링크의 가용 대역폭이 체크 완료되면(즉, 모두 1) 그때 CBW는 ABW로 저장된다.The CBW of the QoS route information table temporarily stores the minimum value of the available bandwidths of the checked links. The CPT represents the available bandwidth check state of each link included in the path. If there are five links included in the path, '11111' should be checked. '1' is checked according to the link order. If the first and third of the five links are checked, it is '10100'. If the available bandwidth of all included links is checked (ie all 1s) then the CBW is stored as an ABW.

도 5는 본 발명의 제2실시예에 따른 오픈플로우 네트워크 시스템의 제어 흐름도로써, 라우팅 처리기(300)에서의 플로우 처리 방법을 예시한 것이다.5 is a control flowchart of an openflow network system according to a second embodiment of the present invention, and illustrates a flow processing method in the routing processor 300.

3 계층 이상의 정보를 포함하는 패킷 입력(Packet-in) 메시지가 수신되었거나, 혹은, 재라우팅이 요구되는 경우(S512), 라우팅 선택부(470)가 호출된다(S512).  If a packet-in message including information of three layers or more is received, or if rerouting is required (S512), the routing selector 470 is called (S512).

수신된 패킷의 플로우가 일반 플로우인지 QoS 플로우인지를 판단한다(S514). It is determined whether the flow of the received packet is a general flow or a QoS flow (S514).

QoS 플로우인 경우 CSPF QoS 라우팅 토폴로지 생성부(310)를 호출하고(S520), 오픈플로우 스위치 연결 정보 테이블로부터 제약사항(CT)을 만족시키지 못하는 링크는 제거한다(S522).In the case of the QoS flow, the CSPF QoS routing topology generator 310 is called (S520), and the link that does not satisfy the constraint CT is removed from the openflow switch connection information table (S522).

이 후, 새로운 토폴로지를 생성하고 최단경로 설정을 통해 경로를 생성한다(S524).Thereafter, a new topology is generated and a path is generated by setting the shortest path (S524).

여기서, 경로 설정에 성공하였는지 여부를 확인하고(S526), 경로설정에 성공한 경우 QoS 경로정보 테이블의 PTH 필드에 해당 경로를 리스트 형태로 저장한다(S528). 이에, 오픈플로우의 패킷 출력(Packet-out) 메시지를 이용하여 포워딩함으로써 경로 상의 스위치(20)마다 필요한 포워딩을 수행할 수 있게 된다(S540).Here, it is checked whether the path setting is successful (S526). If the path setting is successful, the corresponding path is stored in the PTH field of the QoS path information table in the form of a list (S528). Accordingly, forwarding is required for each switch 20 on the path by forwarding using a packet-out message of open flow (S540).

반면, 경로설정에 실패한 경우, 실패 패킷(Fail packet)정보 데이터베이스(220)에 관련 정보를 저장한다(S538).On the other hand, if the path setting fails, the relevant information is stored in the fail packet information database 220 (S538).

한편, 수신된 패킷의 플로우가 일반 플로우인 것으로 판단된 경우에는, 최단경로(Dijkstra Path) 기술을 이용한 일반 라우팅 토폴로지 생성부(320)를 호출한다(S530).On the other hand, if it is determined that the flow of the received packet is a general flow, the general routing topology generation unit 320 using the Dijkstra Path technology is called (S530).

일반 라우팅 토폴로지 생성부(320)는 단순하게 토폴로지를 생성한 후 최단경로를 생성한다(S532).The general routing topology generator 320 simply generates the topology and then generates the shortest path (S532).

여기서, 최단경로 설정에 성공하면 최단경로(Dijkstra Path) 정보 데이터베이스(220)의 PTH 필드에 해당 경로를 리스트 형태로 저장한다(S536). If the shortest path is successfully set, the path is stored in the PTH field of the Dijkstra Path information database 220 in the form of a list (S536).

반면, 경로설정에 실패한 경우, 실패 패킷(Fail packet)정보 데이터베이스(220)에 관련 정보를 저장한다(S538).On the other hand, if the path setting fails, the relevant information is stored in the fail packet information database 220 (S538).

이상 설명한 바와 같이, 본 발명은 사용자가 정의하는 서비스 품질 요구사항에 맞추어 동적으로 트래픽 전송경로를 할당하고, 네트워크 상황에 따라 플로우의 재 정의를 통해 트래픽을 이동시키는 방식으로 사용자 트래픽을 관리 및 제어할 수 있다. 또한, 플로우를 구성하는 속성들, 예컨대, MAC 주소, IP 주소, 서비스 포트 번호 등을 더욱 자세히 정의 및 조합시킬 수 있는 특징이 있다. As described above, the present invention manages and controls user traffic by dynamically assigning traffic transmission paths according to user-defined quality of service requirements and moving traffic through redefinition of flows according to network conditions. Can be. In addition, there is a feature that can further define and combine attributes constituting the flow, for example, MAC address, IP address, service port number, and the like.

이에 따라, 망의 정책 관리자는 일정 수준 이상의 네트워크 품질을 요구하는 네트워크 응용을 지원하기가 수월해질 수 있으며, 동적 플로우 이동을 통해 유휴 대역을 효율적으로 이용할 수 있으므로 망 이용의 효율성을 높이는 효과를 기대할 수 있다.As a result, network policy managers can easily support network applications that require more than a certain level of network quality, and can use the idle bandwidth efficiently through dynamic flow movement, which can increase the efficiency of network utilization. have.

이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
As such, those skilled in the art will appreciate that the present invention can be implemented in other specific forms without changing the technical spirit or essential features thereof. Therefore, the above-described embodiments are to be understood as illustrative in all respects and not as restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

본 발명은 사용자가 정의하는 서비스 품질 요구사항에 맞추어 동적으로 트래픽 전송경로를 할당하고 네트워크 상황에 따라 플로우를 재정의하여 트래픽을 이동시킴으로써 일정 수준 이상의 네트워크 품질을 유지할 수 있고, 동적 플로우 이동을 통해 유휴 대역을 효율적으로 이용할 수 있는 오픈플로우 네트워크 운영에 이용할 수 있다.The present invention can maintain the network quality more than a certain level by dynamically allocating traffic transmission paths according to user-defined service quality requirements and redefining flows according to network conditions to move traffic, and moving idle bandwidth through dynamic flow movement. It can be used for open flow network operation that can be used efficiently.

10 : 노드 20 : 오픈플로우 스위치
100 : 플로우 라우팅 컨트롤러 110 : 관리자
200 : QoS 및 구성정보 관리기 210 : QoS 적용대상 입력부
220 : 데이터베이스 230 : 경로정보 처리부
240 : 호스트/스위치 정보처리부 300 : 라우팅 처리기
310 : QoS 라우팅 토폴로지 생성부
320 : 일반 라우팅 토폴리지 생성부
330 : 최단경로 계산 처리부
400 : 포워딩 및 스위치 통신기
410 : 오플 플로우 메시지 및 이벤트 처리부
420 : 호스트 및 스위치 등록부 430 : 물리 토폴로지 획득부
440 : 대역폭 측정부 450 : L2 스위칭 처리부
460 : 포워딩 처리부 470 : 라우팅 선택부
10: node 20: openflow switch
100: flow routing controller 110: manager
200: QoS and configuration information manager 210: QoS application target input unit
220: database 230: route information processing unit
240: host / switch information processing unit 300: routing processor
310: QoS routing topology generation unit
320: general routing topology generation unit
330: shortest path calculation processing unit
400: Forwarding and Switch Communicator
410: overflow message and event processing unit
420: host and switch register 430: physical topology acquisition
440: bandwidth measurement unit 450: L2 switching processing unit
460: forwarding processing unit 470: routing selection unit

Claims (15)

데이터를 송수신하는 복수개의 노드와, 상기 노드 간의 플로우 송수신을 중계하는 오픈플로우 스위치와, 상기 오픈플로우 스위치를 제어하는 플로우 라우팅 컨트롤러를 포함하는 오픈플로우 네트워크 시스템에 있어서,
상기 컨트롤러는 상기 오픈플로우 스위치로부터 수신된 플로우 정보와 사용자의 요구를 반영하여 플로우에 대한 포워딩을 생성하고, 상기 플로우에 대한 포워딩 정보를 플로우 엔트리의 형태로 상기 오픈플로우 스위치에 전송하고;
상기 오픈플로우 스위치는, 상기 컨트롤러로부터 상기 플로우에 대한 포워딩을 플로우 엔트리의 형태로 수신하여 상기 엔트리 안에 포함된 포워딩 규칙에 기반하여 이후의 트래픽을 관리하며;
상기 오픈플로우 스위치와 상기 컨트롤러는 TCP 또는 SSL 방식으로 상호 데이터를 송수신하는 것을 특징으로 하는 오픈프로우 네트워크 시스템.
An open flow network system including a plurality of nodes for transmitting and receiving data, an open flow switch for relaying flow transmission and reception between the nodes, and a flow routing controller for controlling the open flow switch,
The controller generates forwarding for the flow by reflecting the flow information received from the openflow switch and the user's request, and sends the forwarding information for the flow to the openflow switch in the form of a flow entry;
The openflow switch receives forwarding for the flow from the controller in the form of a flow entry to manage subsequent traffic based on forwarding rules included in the entry;
The open flow switch and the controller is an open flow network system, characterized in that for transmitting and receiving data to each other in a TCP or SSL manner.
삭제delete 제1항에 있어서,
상기 플로우 엔트리는,
플로우의 목적지 및 발신지의 MAC, IP, 서비스 포트 번호를 포함하는 헤더 필드와;
지정된 포트로 포워딩을 수행하는 액션 필드를 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템.
The method of claim 1,
The flow entry,
A header field containing a MAC, IP, service port number of a destination and an origin of the flow;
An open PRO network system comprising an action field for performing forwarding to a designated port.
데이터를 송수신하는 복수개의 노드와, 상기 노드 간의 플로우 송수신을 중계하는 오픈플로우 스위치를 포함하는 오픈플로우 네트워크 시스템에 있어서,
관리자로부터 입력받은 QoS 정책과 네트워크 연결 상태를 유지하는 네트워크 구성 정보가 저장된 데이터베이스를 포함하는 QoS 및 구성정보 관리기;
상기 오픈플로우 스위치와 호스트의 정보를 주기적으로 모니터링 하여 등록 및 관리하고, 수신된 이벤트 및 메시지의 종류에 따라, 수신된 패킷에 대해 선언된 QoS 프로파일에 기반하여 라우팅 경로를 설정하고 상기 설정된 경로에 포함된 오픈플로우 스위치의 플로우 엔트리를 생성하는 포워딩 및 스위치 통신기; 및
수신된 플로우에 따라 상기 QoS 라우팅 토폴로지와 일반 라우팅 토폴로지 중 어느 하나를 생성하고, 생성된 각 토폴로지에 기초하여 최단 경로를 산출하여 네트워크 구성정보 데이터베이스에 반영을 요청하는 라우팅 처리기를 포함하며;
상기 QoS 및 구성정보 관리기는, 상기 데이터베이스의 테이블을 생성하고 상기 테이블에 상기 QoS 관련 정보 및 네트워크 정보를 저장하여 관리 및 업데이트하는 QoS 적용대상 입력부; 상기 호스트와 오픈플로우 스위치 정보를 등록 및 관리하는 호스트/스위치 정보 처리부; 및 상기 플로우의 경로정보를 저장 및 관리하는 경로정보 처리부를 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템.
An open flow network system comprising a plurality of nodes for transmitting and receiving data, and an open flow switch for relaying flow transmission and reception between the nodes,
A QoS and configuration information manager including a database storing a QoS policy received from an administrator and network configuration information maintaining a network connection state;
Periodically monitors and registers and manages information of the OpenFlow switch and the host, and sets a routing path based on the QoS profile declared for the received packet according to the received event and message type and includes the routing path in the set path. A forwarding and switch communicator for generating a flow entry of an open flow switch; And
A routing processor for generating any one of the QoS routing topology and the general routing topology according to the received flow, calculating a shortest path based on each generated topology, and requesting the network configuration information database to be reflected;
The QoS and configuration information manager may include: a QoS application object input unit which generates a table of the database, stores, manages, and updates the QoS related information and network information in the table; A host / switch information processor for registering and managing the host and the open flow switch information; And a route information processor for storing and managing route information of the flow.
삭제delete 제4항에 있어서,
상기 포워딩 및 스위치 통신기는,
오픈플로우 메시지 및 이벤트 처리부;
데이터 경로 이벤트에 기반하여 컨트롤러에 감지된 오픈플로우 스위치와 호스트를 등록하는 호스트 및 스위치 등록부;
LLDP 패킷을 기반으로 물리 토폴로지를 인식하는 물리 토폴로지 획득부;
포트 상태정보를 이용하여 노드 간의 대역을 얻어오는 대역폭 측정부;
일반 플로우의 송수신을 위한 스위칭을 수행하는 L2 스위칭 처리부;
수신된 패킷에 대해 선언된 QoS 프로파일에 기반하여 라우팅 결정을 내리는 라우팅 선택부;
설정된 경로에 따라 포함되는 오픈플로우 스위치로 플로우 엔트리를 생성하여 전송하는 포워딩 처리부를 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템.
The method of claim 4, wherein
The forwarding and switch communicator,
An open flow message and event processor;
A host and switch register configured to register an openflow switch and a host detected by the controller based on the data path event;
A physical topology acquiring unit recognizing a physical topology based on the LLDP packet;
A bandwidth measuring unit for obtaining a band between nodes using port state information;
An L2 switching processor configured to perform switching for transmission and reception of a general flow;
A routing selector for making a routing decision based on the QoS profile declared for the received packet;
An open flow network system comprising a forwarding processing unit for generating and transmitting a flow entry to an open flow switch included according to a set path.
제4항에 있어서,
상기 라우팅 처리기는,
사용자의 네트워크 요구 사항을 반영하는 플로우를 처리하는 QoS 라우팅 토폴로지 생성부;
일반 플로우 처리를 담당하는 일반 라우팅 토폴로지 생성부;
상기 각 토폴로지에 기초하여 최단 경로를 산출하는 최단 경로 계산 처리부를 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템.
The method of claim 4, wherein
The routing processor,
QoS routing topology generation unit for processing a flow reflecting a user's network requirements;
A general routing topology generation unit in charge of general flow processing;
And a shortest path calculation processor configured to calculate the shortest path based on each of the topologies.
제4항에 있어서,
상기 데이터베이스에는,
최단경로(Dijkstra Path) 정보, 호스트 정보, 오픈플로우 스위치 연결정보, 오픈플로우 스위치 리스트 정보, QoS 정책정보, QoS 경로정보 및 실패한 패킷 정보중 적어도 하나 이상의 데이터가 저장되는 것을 특징으로 하는 오픈프로우 네트워크 시스템.
The method of claim 4, wherein
In the database,
Open PRO network, characterized in that at least one or more of the Dijkstra Path information, host information, open flow switch connection information, open flow switch list information, QoS policy information, QoS path information and failed packet information is stored system.
제8항에 있어서,
상기 최단경로(Dijkstra Path) 정보, QoS 정책정보, QoS 경로정보 및 실패한 패킷 정보는,
송수신 측의 MAC 주소, 송수신 측의 IP 주소, 송수신 측의 서비스 포트 번호, 데이터링크 계층에서의 타입 및 네트워크 프로토콜 번호를 포함하며, 각 정보의 속성에 따른 부가정보를 더 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템.
The method of claim 8,
The shortest path (Dijkstra Path) information, QoS policy information, QoS path information and failed packet information,
Open including the MAC address of the transmitting and receiving side, the IP address of the transmitting and receiving side, the service port number of the transmitting and receiving side, the type and network protocol number in the data link layer, and further comprises additional information according to the attribute of each information. Prow network system.
제8항에 있어서,
상기 호스트 정보는,
상기 오픈플로우 망에 가입된 호스트의 주소정보 및 접속정보와, 수신측 및 송신측 대역폭 정보와, 호스트가 연결된 시간 및 경로 설정 시 사용 여부 정보를 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템.
The method of claim 8,
The host information is,
The open flow network system, comprising: address information and access information of a host subscribed to the open flow network, bandwidth information of a receiving side and a transmitting side, and information on whether a host is connected and whether to use it when setting a path.
제8항에 있어서,
상기 오픈플로우 스위치 연결정보는,
상기 오픈플로우 스위치의 주소정보 및 접속정보와, 수신측 및 송신측 대역폭 정보와, 마지막으로 패킷을 받은 시간 정보를 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템.
The method of claim 8,
The open flow switch connection information,
And the address information and access information of the open flow switch, the reception side and the transmission side bandwidth information, and time information of the last received packet.
오픈프로우 네트워크 시스템의 제어방법에 있어서,
수신된 패킷의 플로우가 일반 플로우인지 QoS 플로우인지를 판단하는 단계;
상기 QoS 플로우인 경우 QoS 라우팅 토폴로지를 생성하는 단계;
상기 생성된 각 토폴로지에 기초하여 최단 경로를 설정하는 단계;
상기 최단 경로에 기초하여 플로우 엔트리를 생성하는 단계;
상기 플로우 엔트리를 오픈플로우 스위치에 전송하는 단계;
상기 오픈플로우 스위치에서 상기 플로우 엔트리에 포함된 포워딩 규칙에 기반하여 이후의 트래픽을 관리하는 단계; 및
데이터 패스(datapath) 이벤트가 발생한 경우, 해당 호스트 및 오픈플로우 스위치의 연결정보를 추가 혹은 삭제하는 단계를 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템의 제어방법.
In the control method of the open PRO network system,
Determining whether the flow of the received packet is a general flow or a QoS flow;
Creating a QoS routing topology if the QoS flow;
Setting a shortest path based on each generated topology;
Generating a flow entry based on the shortest path;
Sending the flow entry to an openflow switch;
Managing subsequent traffic at the openflow switch based on a forwarding rule included in the flow entry; And
And adding or deleting connection information of a corresponding host and an open flow switch when a data path event occurs.
제12항에 있어서,
상기 수신된 플로우가 일반 플로우인 경우 최단경로(Dijkstra) 라우팅 토폴로지를 생성하는 단계;
상기 생성된 각 토폴로지에 기초하여 최단 경로를 설정하는 단계; 및
상기 경로에 따라 L2 스위치를 제어하여 트래픽을 전송하는 단계를 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템의 제어방법.
The method of claim 12,
Generating a Dijkstra routing topology when the received flow is a general flow;
Setting a shortest path based on each generated topology; And
And controlling the L2 switch according to the path to transmit the traffic.
제12항에 있어서
상기 오픈플로우 스위치의 포트 별 통계 자료를 주기적으로 수신하는 단계;
상기 포트별 통계 정보를 이용하여 링크 간의 대역폭을 계산하는 단계;
상기 대역폭에 따라 라우팅 플래그를 셋팅하는 단계;
기 저장된 호스트정보 및 오픈플로우 스위치의 연결정보를 업데이트 하는 단계를 더 포함하는 것을 특징으로 하는 오픈프로우 네트워크 시스템의 제어방법.
The method of claim 12,
Periodically receiving port-specific statistical data of the open flow switch;
Calculating bandwidth between links using the port-specific statistical information;
Setting a routing flag according to the bandwidth;
The method of claim 1, further comprising updating previously stored host information and connection information of the open flow switch.
삭제delete
KR1020100117421A 2010-11-24 2010-11-24 Open flow network system and method of controlling the same KR101155012B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020100117421A KR101155012B1 (en) 2010-11-24 2010-11-24 Open flow network system and method of controlling the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100117421A KR101155012B1 (en) 2010-11-24 2010-11-24 Open flow network system and method of controlling the same

Publications (2)

Publication Number Publication Date
KR20120055955A KR20120055955A (en) 2012-06-01
KR101155012B1 true KR101155012B1 (en) 2012-06-14

Family

ID=46607390

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100117421A KR101155012B1 (en) 2010-11-24 2010-11-24 Open flow network system and method of controlling the same

Country Status (1)

Country Link
KR (1) KR101155012B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150033498A (en) * 2013-09-23 2015-04-01 주식회사 케이티 Method for providing end-to-end path on mixed networks comprising circuit and packet networks, and unified software defined network controller
KR20170014853A (en) * 2015-07-31 2017-02-08 에스케이텔레콤 주식회사 Method for processing traffic based on sdn
KR101953824B1 (en) * 2017-10-27 2019-03-05 아토리서치(주) Apparatus for network function virtualization using software defined networking and operation method thereof

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6163204B2 (en) * 2012-06-14 2017-07-12 テケレック・インコーポレイテッドTekelec, Inc. Method, system, and computer-readable medium for providing an integrated OpenFlow controller for a policy and charging rules function (PCRF)
EP2850791B1 (en) * 2012-10-05 2017-11-15 Nec Corporation Network management
US9197568B2 (en) 2012-10-22 2015-11-24 Electronics And Telecommunications Research Institute Method for providing quality of service in software-defined networking based network and apparatus using the same
US9537904B2 (en) 2013-01-24 2017-01-03 Tekelec, Inc. Methods, systems, and computer readable media for using policy knowledge of or obtained by a policy and charging rules function (PCRF) for needs based forwarding of bearer session traffic to network nodes
KR102087226B1 (en) * 2013-02-14 2020-03-10 삼성전자주식회사 Method for sharing network based on software defined network to support multiple operator
CN105052080B (en) 2013-02-18 2019-05-03 泰科来股份有限公司 For providing method, system and the computer-readable medium of thinking diameter network framework
WO2014127347A1 (en) 2013-02-18 2014-08-21 Tekelec, Inc. Methods, systems, and computer readable media for providing a virtualized diameter network architecture and for routing traffic to dynamically instantiated diameter resource instances
KR102158863B1 (en) * 2013-02-20 2020-09-24 주식회사 케이티 Method for Managed QoS of M2M System
CN105210329B (en) 2013-03-15 2019-06-04 慧与发展有限责任合伙企业 Loop free hybrid network
KR101404491B1 (en) * 2013-06-05 2014-06-10 한국과학기술정보연구원 System and Method for dynamic bandwidth setting of subnet based on OpenFlow network
KR101363338B1 (en) * 2013-08-05 2014-02-14 주식회사 파이오링크 Method, appratus, system and computer-readable recording medium for assisting communication between terminal by using openflow
KR101378313B1 (en) * 2013-09-12 2014-03-27 주식회사 파이오링크 Method, appratus, system and computer-readable recording medium for assisting communication between terminal and local host by using openflow
KR101877595B1 (en) * 2013-10-28 2018-07-12 주식회사 케이티 METHOD FOR CONTROLLING QoS USING TRAFFIC PROCESSING BASED ON SERVICE
US9577924B2 (en) 2013-11-14 2017-02-21 Electronics And Telecommunications Research Institute SDN-based network device with extended function and method of processing packet in the same device
US9838483B2 (en) 2013-11-21 2017-12-05 Oracle International Corporation Methods, systems, and computer readable media for a network function virtualization information concentrator
US11388082B2 (en) 2013-11-27 2022-07-12 Oracle International Corporation Methods, systems, and computer readable media for diameter routing using software defined network (SDN) functionality
KR101491948B1 (en) * 2014-01-22 2015-02-09 고려대학교 산학협력단 Method and apparatus for distributed mobility management
KR101629089B1 (en) * 2014-09-24 2016-06-22 (주)유비쿼스 Hybrid openFlow method for combining legacy switch protocol function and SDN function
KR101598775B1 (en) 2015-01-26 2016-03-02 아토리서치(주) Method, apparatus and computer program for controlling multi-path transmission of packet in software defined network
KR101660849B1 (en) * 2015-03-06 2016-09-28 성균관대학교산학협력단 Autonomous control method in software defined network
US9917729B2 (en) 2015-04-21 2018-03-13 Oracle International Corporation Methods, systems, and computer readable media for multi-layer orchestration in software defined networks (SDNs)
US10148509B2 (en) 2015-05-13 2018-12-04 Oracle International Corporation Methods, systems, and computer readable media for session based software defined networking (SDN) management
KR102165197B1 (en) * 2015-07-31 2020-10-13 에스케이텔레콤 주식회사 Apparatus and method for processing traffic based on sdn

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100429904B1 (en) * 2002-05-18 2004-05-03 한국전자통신연구원 Router providing differentiated quality-of-service and fast internet protocol packet classification method for the same
KR100503419B1 (en) * 2002-12-23 2005-07-22 한국전자통신연구원 Appratus for allocation resources based on path color for providing differentiated service and method thereof

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100429904B1 (en) * 2002-05-18 2004-05-03 한국전자통신연구원 Router providing differentiated quality-of-service and fast internet protocol packet classification method for the same
KR100503419B1 (en) * 2002-12-23 2005-07-22 한국전자통신연구원 Appratus for allocation resources based on path color for providing differentiated service and method thereof

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150033498A (en) * 2013-09-23 2015-04-01 주식회사 케이티 Method for providing end-to-end path on mixed networks comprising circuit and packet networks, and unified software defined network controller
KR102087670B1 (en) * 2013-09-23 2020-04-14 주식회사 케이티 Method for providing end-to-end path on mixed networks comprising circuit and packet networks, and unified software defined network controller
KR20170014853A (en) * 2015-07-31 2017-02-08 에스케이텔레콤 주식회사 Method for processing traffic based on sdn
KR102219270B1 (en) * 2015-07-31 2021-02-23 에스케이텔레콤 주식회사 Method for processing traffic based on sdn
KR101953824B1 (en) * 2017-10-27 2019-03-05 아토리서치(주) Apparatus for network function virtualization using software defined networking and operation method thereof

Also Published As

Publication number Publication date
KR20120055955A (en) 2012-06-01

Similar Documents

Publication Publication Date Title
KR101155012B1 (en) Open flow network system and method of controlling the same
US10673741B2 (en) Control device discovery in networks having separate control and forwarding devices
US9253042B2 (en) Network management
EP2737671B1 (en) Method and apparatus for resilient routing of control traffic in a split-architecture system
US5687168A (en) Link state routing device in ATM communication system
US9769054B2 (en) Network topology discovery method and system
US6594268B1 (en) Adaptive routing system and method for QOS packet networks
EP3384640B1 (en) Communication among network controllers
JP5850068B2 (en) Control device, communication system, communication method, and program
JP5488979B2 (en) Computer system, controller, switch, and communication method
WO2012081145A1 (en) Communication path control system, path control device, communication path control method, and path control program
CN108173766B (en) Multi-service hierarchical topological routing method based on differentiated QoS
JP2014516215A (en) Communication system, control device, processing rule setting method and program
JP2016519911A (en) Computer-implemented method, computer program product and computer
US20150381775A1 (en) Communication system, communication method, control apparatus, control apparatus control method, and program
TWI556599B (en) Network controlling method and network controller
JP2015173378A (en) Management system, management server and management method
JP2006174156A (en) Network congestion scale determining method and system
WO2023131307A1 (en) Microwave network root node query method and apparatus, microwave system, and storage medium
WO2014038143A1 (en) Flow information collecting system, method and program
KR100748097B1 (en) Route configuration method and apparatus for security of qos(quality of service)
Han et al. Management information model and high-speed resource control mechanism for next generation network

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150520

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160406

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170327

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee