KR101826061B1 - Sdn 상의 네트워크 상태 모니터링 시스템 및 방법 - Google Patents

Sdn 상의 네트워크 상태 모니터링 시스템 및 방법 Download PDF

Info

Publication number
KR101826061B1
KR101826061B1 KR1020160055191A KR20160055191A KR101826061B1 KR 101826061 B1 KR101826061 B1 KR 101826061B1 KR 1020160055191 A KR1020160055191 A KR 1020160055191A KR 20160055191 A KR20160055191 A KR 20160055191A KR 101826061 B1 KR101826061 B1 KR 101826061B1
Authority
KR
South Korea
Prior art keywords
information
status information
value
state information
switch
Prior art date
Application number
KR1020160055191A
Other languages
English (en)
Other versions
KR20170125492A (ko
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 KR1020160055191A priority Critical patent/KR101826061B1/ko
Publication of KR20170125492A publication Critical patent/KR20170125492A/ko
Application granted granted Critical
Publication of KR101826061B1 publication Critical patent/KR101826061B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0805Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
    • H04L43/0817Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0888Throughput

Landscapes

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

Abstract

소프트웨어-정의 네트워크(SDN)에 기반하여 동작하는 컨트롤러를 통한 네트워크 상태 모니터링 시, 기설정된 수집 주기에 따라 SDN 상의 스위치로부터 상태 정보의 실제값을 수집하고, 이전 수집 주기와 다음 수집 주기의 사이에 상태 정보에 대한 예측값을 산출하고, 수집 주기에 수집된 상태 정보 및 산출된 예측값을 기설정된 네트워크 제어를 위한 기준 정보로서 사용하며, 스위치로부터 마지막으로 수신된 상태 정보의 실제값, 마지막 수신 시점에 결정된 실제값의 변화율, 및 마지막 수신 시점으로부터 경과된 시간에 기초하여 예측값을 산출한다.

Description

SDN 상의 네트워크 상태 모니터링 시스템 및 방법{APPARATUS AND METHOD FOR MONITORING OF NETWORK STATEMENT IN SOFTWARE-DEFINED NETWORK}
본 발명은 소프트웨어-정의 네트워크(Software-Defined Network, SDN) 환경에서 네트워크 상태 정보 모니터링 시스템 및 그 방법에 관한 것이다.
기존의 네트워크에서는 제어 기능이 개별 네트워크 장비에 분산되어 있었다. 이에 따라, 네트워크 상의 변화(예를 들어, 토폴로지 변동, 트래픽량 상승 등)를 전체 네트워크에서 인지하기까지 많은 시간이 필요하며, 전체 네트워크에서 상태 변화가 인지된 후에도 네트워크의 동작을 실제로 변경시키기까지 다시 많은 시간이 필요하였다. 또한, 네트워크 운용자가 네트워크의 설정/정책을 변경시키려 하는 경우에도 직접 개별 장비에 접근하여 수정해야 하는 번거로움이 있었다.
이러한 기존 네트워크의 문제점을 해결 및 보완하기 위하여, 소프트웨어-정의 네트워크(Software-Defined Network, SDN)가 제안되었다.
SDN은 네트워크 상의 제어 기능을 논리적으로 중앙 집중화하여 편리하고 효율적인 방식으로 네트워크를 관리할 수 있다. 이러한 SDN에서는 데이터 평면(data plane)과 제어평면(control plane)이 분리되며, 분리된 제어 평면은 별도의 제어 장비(즉, 컨트롤러)로 중앙 집중화된다.
이와 관련하여, 대한민국 공개특허 제 10-2014-0106235 호(발명의 명칭: 오픈플로우 스위치 및 그 패킷 처리 방법)는, 외부로부터 수신되는 패킷을 처리하되, 수신 패킷을 처리하는데 사용되는 제1 테이블, 제1 테이블을 생성하는데 사용되는 제2 테이블, 그리고 상기 제1 테이블 및 상기 제2테이블을 관리하며 상기 패킷을 처리하도록 제어하는 패킷 프로세서를 포함하는 오픈플로우 스위치를 개시하고 있다.
한편, SDN 기반 네트워크 시스템의 컨트롤러는 효율적인 네트워크 관리와 이상 상태 대응 등을 위해, 네트워크 상의 스위치로부터 플로우, 포트, 큐 등의 정보를 수집한다. 이때, 컨트롤러는 정보 수집을 위해 각 스위치에 상태정보 요청 메시지를 보내며, 스위치는 상태정보 요청 메시지가 요구하는 정보를 구성하여 컨트롤러에 응답한다. 그러나 이러한 과정에서 컨트롤러와 스위치 간의 데이터 교환을 위한 메시지 전달 및 처리 비용이 발생하며, 이는 네트워크 상의 링크 및 스위치에 부하를 발생시킨다.
이러한 문제를 해결하기 위하여 종래에는 컨트롤러가 플로우 기반 모니터링 기법 또는 오픈플로우(OpenFlow) 프로토콜 메시지를 이용하여 네트워크 상의 정보를 수집하는 기법 등이 제안되었다.
구체적으로, 플로우 기반 모니터링 기법에서는 스위치와의 메시지 교환의 부담을 줄이기 위해 샘플링을 사용하였다. 그러나, 이러한 기법은 오픈플로우 프로토콜과는 별개로 고유의 장비를 사용해야 하는 등의 단점이 있다. 한편, 오픈플로우 프로토콜 메시지를 사용하는 기법은 컨트롤러 상에서 직접 수집 주기, 범위, 방법 등을 결정할 수 있다. 이러한 오픈플로우 프로토콜 메시지를 사용하는 기법 중 하나로서, 컨트롤러가 개별 플로우 엔트리의 상태 정보를 바탕으로 네트워크 상의 트래픽 매트릭스(Traffic Matrix) 규모를 추정하는 방식이 있다. 이때, 컨트롤러는 개별 플로우 경로 상의 모든 스위치에서 해당 플로우에 대한 중복된 정보를 수집하는 것을 방지하기 위해, 각 플로우의 경로 정보를 파악하고 경로 상의 스위치 중 하나를 선택하여 해당 플로우의 정보를 질의한다. 그러나, 이러한 기법은 측정 지점에 따라 플로우의 정보가 변경될 수 있기 때문에, 선택된 스위치에 따라 정보의 정확도가 달라진다는 문제점이 있었다. 또한, 개별 플로우 엔트리 각각에 대해 서로 다른 상태 정보 요청 메시지를 보내기 때문에, 메시지 교환 과정에서의 오버헤드가 크게 발생할 수 있었다.
또한, SDN 기반 네트워크 시스템에서 컨트롤러가 상태 정보를 수집하는 비용과 상태 정보의 정확도는 서로 트레이드오프(trade-off) 관계이다. 즉, 상태 정보의 수집 주기를 증가시키면 네트워크 부담이 증가되고, 수집 주기를 감소시키는 경우 상대적으로 부정확한 정보를 사용하게 된다.
따라서, 기존의 SDN 기반 네트워크 시스템에서의 네트워크 상태 모니터링 기법에 비해, 네트워크 부담을 크게 줄이면서도 상태 정보의 정확도를 높일 수 있는 상태 모니터링 방법이 필요하다.
본 발명의 일 실시예는 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, SDN 환경에서 네트워크 상태 정보를 수집하는데 소요되는 비용을 감소시킬 수 있으며 상태 정보의 정확도를 보장할 수 있는 네트워크 상태 모니터링 시스템 및 그 방법을 제공하고자 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상기와 같은 기술적 과제를 달성하기 위한 본 발명의 일 측면에 따른 소프트웨어-정의 네트워크(SDN)에 기반하여 동작하는 컨트롤러는, 상기 SDN 상의 적어도 하나의 스위치와 데이터를 송수신하는 통신 모듈; 상기 스위치로부터 기설정된 수집 주기마다 상태 정보를 수집하며, 상기 수집 주기의 사이에 상기 상태 정보에 대한 예측값을 산출하는 상태 정보 모니터링 프로그램이 저장된 메모리; 및 상기 메모리에 저장된 상태 정보 모니터링 프로그램을 실행하는 프로세서를 포함한다. 이때, 상기 프로세서는, 상기 상태 정보 모니터링 프로그램의 실행에 따라, 상기 스위치로부터 마지막으로 수신된 상기 상태 정보의 실제값, 마지막 수신 시점에 결정된 상기 실제값의 변화율, 및 상기 마지막 수신 시점으로부터 경과된 시간에 기초하여 상기 상태 정보에 대한 예측값을 산출하고, 상기 수집 주기에 수신된 상태 정보 및 상기 산출된 예측값을 기설정된 네트워크 제어를 위한 기준 정보로서 사용한다.
또한, 본 발명의 다른 측면에 따른 소프트웨어-정의 네트워크(SDN)에 기반하여 동작하는 컨트롤러를 통한 네트워크 상태 모니터링 방법은, 기설정된 수집 주기에 따라 상기 SDN 상의 스위치로부터 상태 정보의 실제값을 수집하는 단계; 이전 수집 주기와 다음 수집 주기의 사이에 상기 상태 정보에 대한 예측값을 산출하는 단계; 및 상기 수집 주기에 수집된 상태 정보 및 상기 산출된 예측값을 기설정된 네트워크 제어를 위한 기준 정보로서 사용하는 단계를 포함한다. 이때, 상기 예측값을 산출하는 단계는, 상기 스위치로부터 마지막으로 수신된 상태 정보의 실제값, 마지막 수신 시점에 결정된 상기 실제값의 변화율, 및 상기 마지막 수신 시점으로부터 경과된 시간에 기초하여 상기 예측값을 산출한다.
또한, 본 발명의 또 다른 측면에 따른 소프트웨어-정의 네트워크(SDN)에 기반하여 동작하는 스위치는, 상기 SDN 상의 적어도 하나의 컨트롤러와 데이터를 송수신하는 통신 모듈; 기설정된 수집 주기마다 상기 컨트롤러의 요청에 따라 상태 정보를 제공하며, 상기 수집 주기의 사이에 상기 상태 정보에 대한 예측값을 산출하는 상태 정보 제공 프로그램이 저장된 메모리; 및 상기 메모리에 저장된 상태 정보 제공 프로그램을 실행하는 프로세서를 포함한다. 이때, 상기 프로세서는, 상기 상태 정보 제공 프로그램의 실행에 따라, 상기 컨트롤러로 마지막으로 전송한 상기 상태 정보의 실제값, 마지막 전송 시점에 결정된 상기 실제값의 변화율, 및 상기 마지막 전송 시점으로부터 경과된 시간에 기초하여 상기 상태 정보에 대한 예측값을 산출하고, 상기 수집 주기의 사이의 임의의 시점에 산출된 예측값과 실제 측정된 실제값의 차이가 임계값보다 큰 경우 상기 실제 측정된 실제값을 상기 컨트롤러로 보고한다.
또한, 본 발명의 또 다른 측면에 따른 소프트웨어-정의 네트워크(SDN)에 기반하여 동작하는 스위치를 통한 네트워크 상태 모니터링 방법은, 기설정된 수집 주기마다 상기 SDN 상의 컨트롤러의 요청에 따라 상기 컨트롤러로 상태 정보를 제공하는 단계; 이전 수집 주기와 다음 수집 주기의 사이에 상기 상태 정보에 대한 예측값을 산출하는 단계; 및 상기 산출된 예측값과 실제 측정된 실제값과의 차이가 임계값보다 큰 경우 상기 실제 측정된 실제값을 상기 컨트롤러로 보고하는 단계를 포함한다. 이때, 상기 예측값을 산출하는 단계는, 상기 컨트롤러로 마지막으로 전송한 상기 상태 정보의 실제값, 마지막 전송 시점에 결정된 상기 실제값의 변화율, 및 상기 마지막 전송 시점으로부터 경과된 시간에 기초하여 상기 상태 정보에 대한 예측값을 산출한다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, SDN 기반의 네트워크 시스템에서 컨트롤러가 스위치의 상태 정보를 모델링하여 예측값을 사용함으로써, 개별 스위치에 대한 상태 정보 수집 주기를 감소시키면서도 상태 정보의 실제값과 흡사한 정확도가 높은 정보를 이용할 수 있다.
또한, 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 오픈플로우 프로토콜을 적용한 스위치가 컨트롤러의 요청없이도 의미있는 상태 정보 변화량을 직접 검출하여 자동으로 보고함으로써, 상태 정보 관련 메시지의 교환 횟수를 줄일 수 있으며 컨트롤러에서 사용하는 상태 정보의 정확도를 크게 높일 수 있다.
도 1은 본 발명의 일 실시예에 따른 소프트웨어-정의 네트워크에 기반한 네크워크 상태 모니터링 시스템의 구성도이다.
도 2a는 본 발명의 일 실시예에 따른 컨트롤러의 스위치 상태 정보 수집 방식을 설명하기 위한 예시도이다.
도 2b는 본 발명의 일 실시예에 따른 컨트롤러의 스위치 상태 정보 수집 방식을 설명하기 위한 예시도이다.
도 2c는 본 발명의 일 실시예에 따른 컨트롤러의 스위치 상태 정보 수집 방식을 설명하기 위한 예시도이다.
도 3a는 본 발명의 일 실시예에 따른 스위치의 상태 정보 보고 방식을 설명하기 위한 예시도이다.
도 3b는 본 발명의 일 실시예에 따른 스위치의 상태 정보 보고 방식을 설명하기 위한 예시도이다.
도 3c는 본 발명의 일 실시예에 따른 스위치의 상태 정보 보고 방식을 설명하기 위한 예시도이다.
도 4는 본 발명의 일 실시예에 따른 소프트웨어-정의 네트워크에 기반한 네트워크 상태 모니터링 방법을 설명하기 위한 데이터 흐름도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에 있어서 '부(部)' 또는 ‘모듈’이란, 하드웨어 또는 소프트웨어에 의해 실현되는 유닛(unit), 또는 하드웨어와 소프트웨어 양방을 이용하여 실현되는 유닛을 포함하며, 하나의 유닛이 둘 이상의 하드웨어를 이용하여 실현되어도 되고, 둘 이상의 유닛이 하나의 하드웨어에 의해 실현되어도 된다.
도 1은 본 발명의 일 실시예에 따른 네트워크 상태 모니터링 시스템의 구성도이다.
본 발명의 일 실시예에 따른 네트워크 상태 정보 모니터링 시스템(10)은 소프트웨어-정의 네트워크(Software-Defined Network, SDN)에 기반한다.
도 1에 도시한 바와 같이, 네트워크 상태 정보 모니터링 시스템(10)은, SDN 네트워크 상의 장비들을 기설정된 통신 정책에 따라 제어하는 적어도 하나의 컨트롤러(100), 각각 하나 이상의 컨트롤러(100)와 통신하며 패킷 송/수신을 처리하는 복수의 스위치(200)를 포함한다.
이때, 컨트롤러(100)와 스위치(200)는 오픈플로우 프로토콜(OpenFlow protocol)을 사용하여 통신할 수 있다. 즉, 본 발명의 일 실시예에서는 컨트롤러(100)와 스위치(200)가 각각 오픈플로우를 지원하는 컨트롤러(OpenFlow-enabled Controller) 및 오픈플로우를 지원하는 스위치(OpenFlow-enabled Switch)인 것을 설명하도록 한다.
참고로, 오픈플로우(OpenFlow)는 SDN에서의 제어 평면과 데이터 평면을 연결하는 표준 인터페이스로서, 오픈플로우 네트워크에서는 네트워크 장비(라우터 및 스위치 등)에 플로우 테이블(flow table)이 내장된다. 이러한, 플로우 테이블의 각 엔트리에는 트래픽 종류에 따른 처리 방법이 명시되며, 예를 들어 플로우 테이블에는 트래픽의 종류(match fields), 처리 방법(instructions 또는 actions), 각 엔트리의 상태 정보(counters)가 포함될 수 있다.
오픈플로우 네트워크에서 각 스위치(200)는 플로우 테이블의 내용에 따라 패킷을 처리하되, 매치되지 않는 패킷이 발생하는 경우 컨트롤러(100)에 정보를 요청한다. 그리고 컨트롤러(100)는 스위치에서 패킷 처리 방법에 대한 정보를 요청하는 경우 새로운 플로우 엔트리를 추가하여 처리되도록 한다.
컨트롤러(100)는 효율적인 네트워크 관리와 이상 상태 대응 등을 위하여, 적어도 하나의 스위치(200)로부터 기설정된 복수의 종류의 상태 정보를 수집하며, 수집된 상태 정보에 기초하여 기설정된 네트워크 제어를 수행한다. 예를 들어, 컨트롤러(100)는 스위치(200)의 상태 정보에 기초하여 트래픽의 경로를 설정할 수 있다. 스위치(200)가 직접 측정하여 제공하는 상태 정보는, 스위치 별 최대 성능 정보, 각종 설정 정보, 포트 정보, 큐 정보 및 플로우 엔트리 별 처리 패킷량 통계 정보 중 적어도 하나를 포함할 수 있다.
도 1에 도시한 바와 같이, 컨트롤러(100)는 통신모듈(110), 메모리(120) 및 프로세서(130)를 포함한다.
통신 모듈(110)은 SDN 상의 적어도 하나의 스위치(200)와 데이터를 송수신한다. 이때, 통신 모듈(110)은 오픈플로우 프로토콜을 통해 스위치(200)와의 통신을 처리한다.
메모리(120)는 컨트롤러(100)에서 수행되는 상태 정보 모니터링 프로그램이 저장된다.
상태 정보 모니터링 프로그램은, 네트워크 상의 복수의 스위치(200)들을 대상으로하여, 상태 정보를 주기적으로 수집하도록 설정된 정책, 수집 주기의 사이에 기수집된 상태 정보의 실제값에 기초하여 상태 정보의 예측값을 모델링하는 정책, 및 수집된 상태 정보의 실제값과 산출된 상태 정보의 예측값을 네트워크 제어에 사용하도록 설정된 정책 등을 처리하도록 하는 프로그램이다.
메모리(120)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치를 통칭하는 것이다. 또한, 메모리(120)에는 상태 정보 모니터링 프로그램 외에도 다양한 프로그램 및 데이터들이 저장되며, 이는 프로세서(130)에 의하여 처리될 수 있다.
프로세서(130)는 메모리(120)에 저장된 상태 정보 모니터링 프로그램을 실행하며, 그 밖에 컨트롤러(100)의 동작을 위한 다양한 프로세스를 처리한다.
프로세서(130)는 상태 정보 모니터링 프로그램의 실행에 따라, 기설정된 수집 주기마다 스위치(200)로부터 상태 정보를 수집한다. 이때, 프로세서(130)는 통신 모듈(110)을 통해 수집 주기마다 스위치(200)로 상태 정보 요청 메시지를 전송하고, 스위치(200)로부터 상태 정보 요청 메시지에 대응하여 상태 정보 응답 메시지를 수신함으로써 상태 정보를 수집한다. 이때, 스위치(200)로부터 수신된 상태 정보 응답 메시지는 해당 상태 정보의 종류를 식별하기 위한 식별 정보 및 해당 상태 정보의 실제값을 포함한다.
또한, 프로세서(130)는 각 수집 주기의 사이에 상태 정보에 대한 예측값을 산출한다. 이때, 프로세서(130)는 스위치(200)로부터 마지막으로 수신된 상태 정보의 실제값, 마지막 수신 시점에 결정된 실제값의 변화율, 및 마지막 수신 시점으로부터 현재 시점까지 경과된 시간에 기초하여 상태 정보에 대한 예측값을 산출한다.
구체적으로, 프로세서(130)는 하기 수학식 1과 같은 선형 예측 함수를 통해 상태 정보의 예측값을 모델링할 수 있다.
<수학식 1>
Figure 112016043134433-pat00001
이때, t는 마지막으로 상태 정보를 수집한 시각이고, Dt는 t에 측정된 상태 정보의 실제값이고, α는 t로부터 경과된 시간이며, Vt는 t에 결정된 상태 정보의 변동폭(즉, 변화율)이다.
변동폭 Vt는 다음과 같은 수학식 2를 통해 산출할 수 있다.
<수학식 2>
Figure 112016043134433-pat00002
이때, P는 해당 상태 정보의 수집 시점 사이의 시간 간격을 나타낸다.
이상, 프로세서(130)가 상태 정보에 대한 선형적 예측 모델을 모델링하는 기법에 대해서는 아래 도 2 및 도 3을 참조하여 상세히 설명하도록 한다.
프로세서(130)는 스위치(200)로부터 수신된 상태 정보의 실제값 및 상기 산출된 예측값을 기설정된 네트워크 제어를 위한 기준 정보로서 사용한다. 이때, 프로세서(130)는, 각 수집 주기에는 스위치(200)로부터 수신된 상태 정보의 실제값을 사용하고, 수집 주기가 아닌 기간(즉, 수집 주기의 사이) 동안에는 자체적으로 산출한 예측값을 상태 정보의 실제값을 대신하여 사용할 수 있다.
즉, 프로세서(130)는 스위치(200)로부터 직접 측정된 상태 정보의 실제값과 더불어, 자체적으로 모델링한 상태 정보 예측값을 함께 사용한다. 본 발명의 일 실시예에 따르면, 수집 주기가 기존의 SDN에 기반한 컨트롤러가 네트워크 장비의 상태 정보를 수집하는 주기보다 긴 시간 간격을 갖도록 설정된다. 수집 주기는, 상태 정보의 정확도를 일정 수준으로 보장하는데 필요한 최소 시간 간격보다 긴 시간차를 갖도록 설정될 수 있다. 결과적으로, 컨트롤러(100)가 상태 정보 요청 메시지를 스위치(200)로 전송하는 횟수를 크게 감소시켜 네트워크 비용을 효율적으로 낮출 수 있다.
한편, 컨트롤러(100)가 네트워크 상태 정보를 모니터링하는데 있어서, 각 스위치(200)의 상태 정보를 수집하는 횟수를 줄여 네트워크 부담을 줄이는 것과 함께, 네트워크 제어에 사용되는 상태 정보의 정확도를 보장하는 것도 중요하다.
이에 따라, 프로세서(130)는 자체적으로 모델링하는 상태 정보의 예측값의 정확도를 높이기 위하여, 수집 주기 이외의 시점에 스위치(200)로부터 상태 정보 보고 메시지를 수신하여 상태 정보를 실제 측정값으로 업데이트할 수 있다. 이때, 상태 정보 보고 메시지에는 상태 정보의 종류를 식별하기 위한 식별 정보 및 해당 상태 정보의 실제값이 포함되어 있다. 이러한 상태 정보 보고 메시지는, 스위치(200)가 자체적으로 산출한 상태 정보에 대한 예측값과 실제 측정된 실제값의 차이가 기설정된 임계값보다 큰 경우 전송된 것이다.
이에 따라, 프로세서(130)는 스위치(200)로부터 수집 주기마다 수신된 상태 정보의 실제값 및 수집 주기외의 시점에 자동으로 보고된 상태 정보의 실제값을 적용하여, 상태 정보에 대한 선형 예측 함수의 상수값들을 업데이트한다. 즉, 프로세서(130)는 수집 주기뿐만 아니라 그 외의 기간에도 상태 정보의 실제 측정값과 근사치인 예측값을 산출하여 사용하되, 스위치(200)와 동기화되어 변화율, 마지막 수집 주기에 수신된 실제값 및 예측값을 업데이트함으로써 예측값의 정확도를 더욱 높일 수 있다. 이때, 스위치(200)의 상태 정보 보고 메시지는 예측값과 실제 측정값의 차이가 임계값 이상 차이날 경우에 발생되는 이벤트성 메시지로서, 네트워크의 부담 또한 줄일 수 있다.
스위치(200)는 기설정된 수집 주기마다 컨트롤러(100)의 요청에 따라 상태 정보를 제공한다. 스위치(200)는 컨트롤러(100)가 수집 주기마다 상태 정보를 요청할 경우, 변화율 및 수집 주기의 시각을 갱신하고 해당 시점의 상태 정보 값을 포함하는 상태 정보 응답 메시지를 컨트롤러(100)로 전송한다.
스위치(200)는 상태 정보의 예측값과 실제값을 비교하고, 그 차이가 일정 이상인 경우 상태 정보를 업데이트하고 예측 모델을 수정한다. 스위치(200) 상에서 이러한 동작이 구현되기 위해, 본 발명의 일 실시예에 따른 스위치(200)는 기존의 SDN에 기반한 스위치에 비해 별도의 연산 기능이 추가된 오픈플로우 지원 가능(OpenFlow-enabled) 스위치일 수 있다.
구체적으로, 스위치(200)는 측정된 상태 정보에 컨트롤러(100)와 동일한 선형적 예측 모델을 적용하며, 주기적으로 수집되는 상태 정보 값에 따라 선형 예측 함수의 상수 값을 변경한다. 이때, 스위치(200)는 자체적으로 컨트롤러(100)와 동일한 선형적 예측 모델을 통해 상태 정보의 예측값을 모델링하되, 산출된 예측값(즉, 컨트롤러(100)에서 예측될 상태 정보의 예측값)과 실제 스위치(200)가 측정한 상태 정보의 실제값의 차이가 임계값보다 클 경우, 컨트롤러(100)의 별도 요청이 없더라도 상태 정보를 보고한다.
도 1에 도시한 바와 같이, 스위치(200)는 통신모듈(210), 메모리(220) 및 프로세서(230)를 포함한다.
통신 모듈(210)은 SDN 상의 적어도 하나의 컨트롤러(100)와 데이터를 송수신한다. 이때, 통신 모듈(210)은 오픈플로우 프로토콜을 통해 컨트롤러(100)와 통신한다.
메모리(220)는 스위치(200)에서 수행되는 상태 정보 제공 프로그램이 저장된다. 또한, 메모리(220)는 플로우 테이블 및 상태 정보 제공 프로그램을 처리하기 위한 기타 상태 정보들(예를 들어, 포트 정보 및 큐 정보 등)이 저장된다.
상태 정보 제공 프로그램은, 네트워크 상의 컨트롤러(100)들을 대상으로하여, 스위치(200)가 자체적으로 측정한 상태 정보를 상대의 요청에 따라 응답하도록 설정된 정책, 측정된 상태 정보의 실제값에 기초하여 상태 정보의 예측값을 모델링하는 정책, 및 측정된 상태 정보의 실제값과 산출된 상태 정보의 예측값을 비교한 결과에 따라 측정된 실제값을 자동으로 보고하도록 설정된 정책 등을 처리하도록 하는 프로그램이다.
이러한 메모리(220)는 전원이 공급되지 않아도 저장된 정보를 계속 유지하는 비휘발성 저장장치 및 저장된 정보를 유지하기 위하여 전력이 필요한 휘발성 저장장치를 통칭하는 것이다. 또한, 메모리(220)에는 상태 정보 제공 프로그램 외에도 다양한 프로그램 및 데이터들이 저장되며, 이는 프로세서(230)에 의하여 처리될 수 있다.
프로세서(230)는 메모리(220)에 저장된 상태 정보 제공 프로그램을 실행하며, 그 밖에 스위치(200)의 동작을 위한 다양한 프로세스를 처리한다.
프로세서(230)는 기설정된 수집 주기마다 컨트롤러(100)의 요청에 따라 상태 정보를 제공하며, 수집 주기의 사이에 상기 상태 정보에 대한 예측값을 산출한다.
이때, 프로세서(230)는 통신 모듈(210)을 통해 수집 주기마다 컨트롤러(100)로부터 상태 정보 요청 메시지를 수신하고, 이에 대응하여 컨트롤러(100)로 상태 정보 응답 메시지를 전송한다. 상태 정보 응답 메시지는 상태 정보의 종류를 식별하기 위한 식별 정보 및 해당 상태 정보의 실제값을 포함한다.
한편, 프로세서(230)는 마지막 측정 시점에 자체적으로 측정된 상태 정보의 실제값, 마지막 측정 시점에 결정된 실제값의 변화율, 및 마지막 측정 시점으로부터 경과된 시간에 기초하여 상태 정보에 대한 예측값을 산출한다. 그리고 프로세서(230)는 산출된 예측값과 실제 측정된 실제값의 차이가 임계값보다 큰 경우 실제 측정된 실제값을 컨트롤러(100)로 보고하는 상태 정보 보고 메시지를 전송한다.
프로세서(230)가 임의의 시점에 상태 정보에 대한 예측값을 산출하는 방식은 컨트롤러(100)의 선형적 예측 모델과 동일하다.
즉, 프로세서(230)는 마지막 측정 시점으로부터 경과된 시간까지의 시간 차의 값과 변화율을 곱한 값에 마지막 측정 시점에 측정된 상태 정보의 실제값을 합산하여 상기 예측값을 산출한다. 이때, 변화율은 마지막 측정 시점과 그 직전 측정 시점 사이의 실제값의 변동량을 측정 시점 사이의 시간 간격으로 나눈 값이다.
그리고 프로세서(230)는 수집 주기마다 측정된 상태 정보의 실제값, 및 수집 주기외의 시점에 컨트롤러(100)로 보고한 상태 정보의 실제값을 사용하여, 변화율, 마지막 측정 시점에 측정된 실제값 및 산출된 예측값 등을 업데이트한다.
이하, 도 2 및 3을 참조하여 본 발명의 일 실시예에 따른 상태 정보 예측 모델링 방식 및 스위치의 상태 정보 보고 방식을 상세히 설명하도록 한다.
도 2a 내지 도 2c는 본 발명의 일 실시예에 따른 네트워크 상태 정보 수집 방식을 설명하기 위한 예시도이다.
도 2a를 참조하면, 컨트롤러(100)는 프로세서(130)의 제어에 따라 수집 주기마다 스위치(200)로 상태 정보를 요청하며, 수집된 상태 정보에 기초하여 네트워크를 제어한다.
도 2a에서와 같이, 컨트롤러(100)와 스위치(200)에는 각각 상태 정보 별로 다음과 같은 데이터들에 대한 테이블이 메모리 상에 저장될 수 있다. 이러한 데이터 테이블에는 상태 정보를 식별하기 위한 ‘정보 ID’, 마지막으로 측정된 상태 정보의 실제값인 ‘마지막 측정값’, 스위치가 컨트롤러로 마지막 측정값을 보낸 시각인 ‘측정 시각’, 마지막 업데이트 당시에 계산된 측정값의 시간당 변화폭인 ‘변화율’, 및 변화율에 기초하여 예측된 상태 정보에 대한 ‘예측값’이 저장되며, 해당 값들은 수집 주기 및 스위치의 상태 정보 자동 보고 시점에 갱신 저장될 수 있다. 또한, 스위치(200)에는 이상의 데이터들 외에 해당 시점에 실제로 측정된 상태 정보의 ‘실제값’이 더 매칭되어 저장된다.
이때, 컨트롤러(100)는 데이터 테이블에 저장된 마지막 측정값, 측정 시각 및 변화율에 기초하여 상태 정보에 대한 예측값을 산출하여 데이터 테이블에 저장할 수 있다. 예를 들어, 도 2a에 따르면 현재 시각을 20초라고 가정할 경우, 컨트롤러(100)에 저장되어 있는 상태 정보 ‘A’의 마지막 측정값이 ‘50’이고, 측정 시각 ‘10’으로부터 현재 시점까지 경과한 시간은 ‘10’이며, 변화율의 값이 ‘5’이므로, 컨트롤러(100)가 모델링하는 예측값은 ‘100’이 저장된다. 컨트롤러(100)는 다른 상태 정보에 대해서도 동일한 방식으로 예측값을 산출 및 저장할 수 있다.
이때, 컨트롤러(100)는 예측값과 상태 정보의 실제값의 차이가 미세한 수준으로 계속 벌어지는 것을 방지하기 위하여, 주기적으로 상태 정보의 값을 스위치(200)로부터 수신된 값으로 업데이트한다.
구체적으로, 도 2b를 참조하면, 스위치(200)는 컨트롤러(100)의 요청을 받아 상태 정보 응답 메시지를 컨트롤러(100)로 전송한다. 이때, 스위치(200)는 해당 수집 주기에 측정된 상태 정보의 실제값과 해당 상태 정보의 식별정보(즉, 정보 ID)를 포함하는 상태 정보 응답 메시지를 컨트롤러(100)로 전송한다. 이처럼, 스위치(200)가 컨트롤러(100)로 상태 정보의 식별 정보와 실제값만을 응답함으로써 기존의 오픈플로우 프로토콜에 정의된 메시지 형식을 별도로 변환하지 않아 유용하다. 또한, 오픈플로우 프로토콜에 정의된, 정보가 최초 생성된 시간으로부터 현재까지 유지된 시간을 저장한 ‘듀레이션 값’을 이용하여 컨트롤러(100)와 스위치(200) 간의 측정 시각을 동기화할 수 있다.
예를 들어, 도 2b에 따르면, 현재 시각을 20초라고 가정할 경우, 스위치(200)가 측정한 상태 정보 ‘A’의 실제값이 ‘95’이므로, 마지막 측정값이 ‘95’로, 측정 시각이 ‘20’으로, 변화율이 ‘4.5’로 각각 갱신된다. 또한, 스위치(200)가 자체적으로 모델링한 예측값은 ‘95’가 저장된다. 스위치(200)는 다른 상태 정보의 경우에도 동일한 방식으로 스위치(200) 자체의 데이터 테이블을 업데이트할 수 있다. 이처럼, 스위치(200)는 수집 주기마다 측정된 상태 정보의 실제값에 따라 데이터 테이블을 업데이트한다.
또한, 스위치(200)는 컨트롤러(100)로 해당 상태 정보의 식별 정보인 정보 ID 및 실제값을 응답함으로써 컨트롤러(100)의 데이터 테이블이 업데이트되도록 할 수 있다.
즉, 도 2c를 참조하면, 컨트롤러(100)는 스위치(200)로부터 수집된 해당 수집 주기의 상태 정보에 기초하여 데이터 테이블의 각 항목을 업데이트한다. 도 2c에서와 같이, 컨트롤러(100)는 상태 정보 ‘A’에 대한 마지막 측정값을 ‘95’로, 측정 시각을 ‘20’으로, 변화율을 ‘4.5’로, 예측값을 ‘95’로 업데이트한다. 컨트롤러(100)는 다른 상태 정보 ‘B’에 대해서도 동일한 방식으로 데이터 테이블의 각 항목을 업데이트한다.
도 3a 내지 도 3c는 본 발명의 일 실시예에 따른 스위치의 상태 정보 자동 보고 방식을 설명하기 위한 예시도이다.
기설정된 상태 정보 수집 주기가 아닌 임의의 시점에 스위치(200)가 측정한 상태 정보의 실제값이 급격히 변화될 수 있다. 예를 들어, 도 3a에 따르면 현재 시각을 25초라고 가정할 경우, 스위치(200)가 측정한 상태 정보 ‘B’의 실제값이 마지막 측정 시각인 20초에 측정되었던 ‘100’에서 5초만에 ‘300’으로 크게 변경된 것을 알 수 있다. 이때, 스위치(200)는 예측값과 실제값의 차가 기설정된 임계값 이상인 것을 검출하여, 컨트롤러(100)로 해당 상태 정보에 대한 실제값을 포함하는 상태 정보 보고 메시지를 전송한다. 참고로, 임계값은 네트워크의 특성 및 상태에 따라 임의의 값으로 변경될 수 있다.
이처럼, 스위치(200)는 급격한 값의 변화가 발생된 상태 정보에 대해 컨트롤러(100)로 상태 정보를 보고하고, 스위치(200) 또한 자체적으로 데이터 테이블을 업데이트한다.
예를 들어, 도 3b에 따르면 현재 시각 25초로 가정할 경우, 상태 정보 ‘B’에 대해 측정된 실제값이 ‘300’이므로, 마지막 측정값은 ‘100’으로, 측정 시각은 ‘25’로, 변화율은 ‘40’으로, 예측값은 ‘300’으로 각각 갱신된다.
또한, 도 3c를 참조하면, 스위치(200)의 상태 정보 보고에 의해, 컨트롤러(100) 또한 데이터 테이블을 업데이트한다. 이때, 컨트롤러(100)의 데이터 테이블은 스위치(200)의 데이터 테이블과 각 항목의 값이 동일해지도록 갱신된다.
이하, 도 4를 참조하여 본 발명의 일 실시예에 따른 SDN 기반 네트워크 시스템에서의 상태 정보 모니터링 방법에 대해서 상세히 설명하도록 한다.
도 4는 본 발명의 일 실시예에 따른 소프트웨어-정의 네트워크에 기반한 네트워크 상태 모니터링 방법을 설명하기 위한 데이터 흐름도이다.
컨트롤러(100)는 기설정된 수집 주기마다 스위치(200)로 상태 정보를 요청하여 스위치 별 상태 정보를 수집하며, 스위치(200)는 수시로 상태 정보를 측정하는 상태를 가정한다.
컨트롤러(100)는 상기 수집 주기에 따라 제 1 수집 주기에 스위치(200)로 상태 정보 요청 메시지를 전송한다(S401).
이에 대응하여, 스위치(200)는 제 1 수집 주기의 시점에 측정된 상태 정보의 실제값을 포함하는 상태 정보 응답 메시지를 컨트롤러(100)로 전송한다(S402).
이에 따라 컨트롤러(100)는 수신된 상태 정보 응답 메시지에 포함된 상태 정보의 실제값에 기초하여 해당 스위치의 상태 정보를 업데이트하고, 해당 상태 정보에 기초하여 네트워크를 제어한다(S403).
컨트롤러(100)는 제 1 수집 주기와 다음번 수집 주기인 제 2 수집 주기 사이에 스위치(200)의 상태 정보 실제값에 기초한 상태 정보 예측 모델링을 수시로 수행한다(S404).
이때, 컨트롤러(100)는 앞서 도 1에서 설명한 수학식 1 및 2에 기초하여 상태 정보의 예측값을 산출한다. 그리고 컨트롤러(100)는 상태 정보 예측 모델링을 통해 산출된 예측값을 앞서 제 1 수집 주기에 수신된 실제값을 대신하여 네트워크 제어에 사용한다.
한편, 스위치(200)는 상태 정보를 수시로 측정하는 것과 병렬적으로, 컨트롤러(100)로 마지막으로 전송한 상태 정보의 실제값에 기초한 상태 정보 예측 모델링을 수시로 수행한다(S405).
이때, 스위치(200)의 상태 정보 예측 모델링의 방식은 컨트롤러(100)와 동일하며, 이에 따라 스위치(200)는 컨트롤러(100)에서 사용될 상태 정보의 예측값과 동일한 예측값 정보를 확보할 수 있다.
다음으로, 스위치(200)는 상태 정보 예측 모델링 결과에 따라 컨트롤러(100)로 상태 정보의 실제 측정값을 자동 보고해야하는 이벤트 발생을 검출한다(S406).
이때, 스위치(200)는 모델링된 예측값과 해당 시점의 실제 측정값의 차가 기설정된 임계값보다 커지는 경우, 해당 상태 정보의 실제값 자동 보고 이벤트가 발생된 것으로 판단한다.
다음으로, 스위치(200)는 해당 시점에 실제 측정된 상태 정보의 실제값을 포함하는 상태 정보 보고 메시지를 컨트롤러(100)로 전송한다(S407).
이를 수신한 컨트롤러(100)는 자신이 모델링한 예측값을 스위치(200)로부터 보고된 실제값으로 업데이트하고, 업데이트된 예측값을 사용하여 네트워크를 제어한다(S408).
이상의 단계 (S404) 내지 단계 (S407)는, 제 1 수집 주기와 다음번 제 2 수집 주기 사이에 적어도 일회 이상 처리될 수 있다.
다음으로, 제 2 수집 주기가 도래하면, 컨트롤러(100)는 제 2 수집 주기에 스위치(200)로 상태 정보 요청 메시지를 전송한다(S409).
이러한 방식으로, 상기 단계 (S401) 이후의 단계와 대응대는 단계들이 반복하여 처리된다.
이상, 본 발명의 일 실시예에 따른 소프트웨어-정의 네트워크(SDN) 환경에서의 네트워크 상태 정보 모니터링 시스템 및 그 방법은, 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
10: SDN 기반의 네트워크 상태 모니터링 시스템
100: 컨트롤러 110: 통신모듈
120: 메모리 130: 프로세서
200: 스위치 210: 통신모듈
220: 메모리 230: 프로세서

Claims (20)

  1. 소프트웨어-정의 네트워크(Software-Defined Network, SDN)에 기반하여 동작하는 컨트롤러에 있어서,
    상기 SDN 상의 적어도 하나의 스위치와 데이터를 송수신하는 통신 모듈;
    상기 스위치로부터 기설정된 수집 주기마다 상태 정보를 수집하며, 상기 수집 주기의 사이에 상기 상태 정보에 대한 예측값을 산출하는 상태 정보 모니터링 프로그램이 저장된 메모리; 및
    상기 메모리에 저장된 상태 정보 모니터링 프로그램을 실행하는 프로세서를 포함하며,
    상기 프로세서는, 상기 상태 정보 모니터링 프로그램의 실행에 따라, 기설정된 상태 정보 예측 모델을 통해 상기 스위치로부터 마지막으로 수신된 상기 상태 정보의 실제값, 마지막 수신 시점에 결정된 상기 실제값의 변화율, 및 상기 마지막 수신 시점으로부터 경과된 시간에 기초하여 상기 상태 정보에 대한 예측값을 산출하고, 상기 수집 주기에 수신된 상태 정보 및 상기 산출된 예측값을 기설정된 네트워크 제어를 위한 기준 정보로서 사용하되, 상기 수집 주기 이외의 시점에 상기 스위치로부터 상태 정보의 종류를 식별하기 위한 식별 정보 및 해당 상태 정보의 실제값을 포함하는 상태 정보 보고 메시지를 수신하고, 상기 스위치로부터 상기 수집 주기마다 수신된 상태 정보의 실제값 및 상기 수집 주기외의 시점에 보고된 상태 정보의 실제값을 사용하여, 상기 상태 정보 예측 모델 상의 상기 변화율, 상기 마지막으로 수신된 실제값 및 상기 산출된 예측값을 업데이트하며,
    상기 상태 정보 보고 메시지는, 상기 스위치가 상기 상태 정보 예측 모델과 동일한 예측 모델을 통해 자체적으로 산출한 상기 해당 상태 정보에 대한 예측값과 실제 측정된 실제값의 차이가 기설정된 임계값보다 큰 경우 자동으로 전송된 것인, 컨트롤러.
  2. 삭제
  3. 제 1 항에 있어서,
    상기 상태 정보는,
    상기 스위치 별 최대 성능 정보, 설정 정보, 포트 정보, 큐 정보 및 플로우 엔트리 별 처리 패킷량 통계 정보 중 적어도 하나를 포함하는 컨트롤러.
  4. 제 1 항에 있어서,
    상기 프로세서는,
    상기 마지막 수신 시점으로부터 경과된 시간까지의 시간 차의 값과 상기 변화율을 곱한 값에 상기 마지막으로 수신된 상기 상태 정보의 실제값을 합산하여 상기 예측값을 산출하되,
    상기 변화율은,
    상기 마지막 수신 시점과 그 직전 수신 시점 사이의 상기 실제값의 변동량을 상기 수신 시점 간의 시간 간격으로 나눈 것인 컨트롤러.
  5. 제 1 항에 있어서,
    상기 프로세서는,
    상기 통신 모듈을 통해 상기 수집 주기마다 상기 스위치로 상태 정보 요청 메시지를 전송하고, 상기 스위치로부터 상기 상태 정보 요청 메시지에 대응된 상태 정보 응답 메시지를 수신하여 상기 상태 정보를 수집하며,
    상기 상태 정보 응답 메시지는 상기 상태 정보의 종류를 식별하기 위한 식별 정보 및 해당 상태 정보의 실제값을 포함하는 것인 컨트롤러.
  6. 삭제
  7. 제 1 항에 있어서,
    상기 통신 모듈은,
    상기 스위치와 오픈플로우 프로토콜을 통해 통신하는 컨트롤러.
  8. 소프트웨어-정의 네트워크(Software-Defined Network, SDN)에 기반하여 동작하는 컨트롤러를 통한 네트워크 상태 모니터링 방법에 있어서,
    기설정된 수집 주기에 따라 상기 SDN 상의 스위치로부터 상태 정보의 실제값을 수집하는 단계;
    이전 수집 주기와 다음 수집 주기의 사이에 상기 상태 정보에 대한 예측값을 산출하되, 기설정된 상태 정보 예측 모델을 통해 상기 스위치로부터 마지막으로 수신된 상태 정보의 실제값, 마지막 수신 시점에 결정된 상기 실제값의 변화율, 및 상기 마지막 수신 시점으로부터 경과된 시간에 기초하여 상기 예측값을 산출하는 단계; 및
    상기 수집 주기에 수집된 상태 정보 및 상기 산출된 예측값을 기설정된 네트워크 제어를 위한 기준 정보로서 사용하는 단계를 포함하며,
    상기 수집 주기 이외의 시점에 상기 스위치로부터 상태 정보의 종류를 식별하기 위한 식별 정보 및 해당 상태 정보의 실제값을 포함하는 상태 정보 보고 메시지를 수신하는 단계; 및
    상기 스위치로부터 상기 수집 주기마다 수신된 상태 정보의 실제값 및 상기 수집 주기외의 시점에 보고된 상태 정보의 실제값을 사용하여, 상기 상태 정보 예측 모델 상의 상기 변화율, 상기 마지막으로 수신된 실제값 및 상기 산출된 예측값을 업데이트하는 단계를 더 포함하고,
    상기 상태 정보 보고 메시지는, 상기 스위치가 상기 상태 정보 예측 모델과 동일한 예측 모델을 통해 자체적으로 산출한 상기 해당 상태 정보에 대한 예측값과 실제 측정된 실제값의 차이가 기설정된 임계값보다 큰 경우 자동으로 전송된 것인, 컨트롤러를 통한 네트워크 상태 모니터링 방법.
  9. 삭제
  10. 제 8 항에 있어서,
    상기 상태 정보는,
    상기 스위치 별 최대 성능 정보, 설정 정보, 포트 정보, 큐 정보 및 플로우 엔트리 별 처리 패킷량 통계 정보 중 적어도 하나를 포함하는, 컨트롤러를 통한 네트워크 상태 모니터링 방법.
  11. 제 8 항에 있어서,
    상기 예측값은, 상기 마지막 수신 시점으로부터 경과된 시간까지의 시간 차의 값과 상기 변화율을 곱한 값에 상기 마지막으로 수신된 상태 정보의 실제값을 합산한 값이며,
    상기 변화율은, 상기 마지막 수신 시점과 그 직전 수신 시점 사이의 상기 실제값의 변동량을 상기 수신 시점 간의 시간 간격으로 나눈 값인, 컨트롤러를 통한 네트워크 상태 모니터링 방법.
  12. 제 8 항에 있어서,
    상기 스위치로부터 상태 정보의 실제값을 수집하는 단계는,
    상기 수집 주기마다 상기 스위치로 상태 정보 요청 메시지를 전송하고, 상기 스위치로부터 상기 상태 정보 요청 메시지에 대응된 상태 정보 응답 메시지를 수신하여 상기 상태 정보를 수집하며,
    상기 상태 정보 응답 메시지는 상기 상태 정보의 종류를 식별하기 위한 식별 정보 및 해당 상태 정보의 실제값을 포함하는 것인, 컨트롤러를 통한 네트워크 상태 모니터링 방법.
  13. 삭제
  14. 소프트웨어-정의 네트워크(Software-Defined Network, SDN)에 기반하여 동작하는 스위치에 있어서,
    상기 SDN 상의 적어도 하나의 컨트롤러와 데이터를 송수신하는 통신 모듈;
    기설정된 수집 주기마다 상기 컨트롤러의 요청에 따라 상태 정보를 제공하며, 상기 수집 주기의 사이에 상기 상태 정보에 대한 예측값을 산출하는 상태 정보 제공 프로그램이 저장된 메모리; 및
    상기 메모리에 저장된 상태 정보 제공 프로그램을 실행하는 프로세서를 포함하며,
    상기 프로세서는, 상기 상태 정보 제공 프로그램의 실행에 따라, 상기 컨트롤러에서 사용하는 기설정된 상태 정보 예측 모델과 동일한 예측 모델을 통해, 상기 컨트롤러로 마지막으로 전송한 상기 상태 정보의 실제값, 마지막 전송 시점에 결정된 상기 실제값의 변화율, 및 상기 마지막 전송 시점으로부터 경과된 시간에 기초하여 상기 상태 정보에 대한 예측값을 산출하며, 상기 수집 주기의 사이의 임의의 시점에 산출된 예측값과 실제 측정된 실제값의 차이가 임계값보다 큰 경우 상기 실제 측정된 실제값 및 해당 상태 정보의 종류를 식별하기 위한 식별 정보를 포함하는 상태 정보 보고 메시지를 상기 컨트롤러로 자동 보고하되, 상기 수집 주기마다 측정된 상태 정보의 실제값 및 상기 수집 주기 외의 시점에 상기 컨트롤러로 보고한 상태 정보의 실제값을 사용하여, 상기 예측 모델 상의 상기 변화율, 상기 마지막 전송 시점에 측정된 실제값 및 상기 산출된 예측값을 업데이트하며,
    상기 상태 정보 및 상기 산출된 예측값은 상기 컨트롤러에서 기설정된 네트워크 제어를 위한 기준 정보로서 사용되는 것인, 스위치.
  15. 제 14 항에 있어서,
    상기 프로세서는,
    상기 마지막 전송 시점으로부터 경과된 시간까지의 시간 차의 값과 상기 변화율을 곱한 값에 상기 마지막으로 전송한 상기 상태 정보의 실제값을 합산하여 상기 예측값을 산출하되,
    상기 변화율은,
    상기 마지막 전송 시점과 그 직전 전송 시점 사이의 상기 실제값의 변동량을 상기 전송 시점 간의 시간 간격으로 나눈 것인 스위치.
  16. 제 14 항에 있어서,
    상기 프로세서는,
    상기 통신 모듈을 통해 상기 수집 주기마다 상기 컨트롤러로부터 상태 정보 요청 메시지를 수신하고, 상기 컨트롤러로 상기 상태 정보 요청 메시지에 대응된 상태 정보 응답 메시지를 전송하며,
    상기 상태 정보 응답 메시지는 상기 상태 정보의 종류를 식별하기 위한 식별 정보 및 해당 상태 정보의 실제값을 포함하는 것인 스위치.
  17. 삭제
  18. 소프트웨어-정의 네트워크(Software-Defined Network, SDN)에 기반하여 동작하는 스위치를 통한 네트워크 상태 모니터링 방법에 있어서,
    기설정된 수집 주기마다 상기 SDN 상의 컨트롤러의 요청에 따라 상기 컨트롤러로 상태 정보를 제공하는 단계;
    이전 수집 주기와 다음 수집 주기의 사이에 상기 상태 정보에 대한 예측값을 산출하는 단계; 및
    상기 산출된 예측값과 실제 측정된 실제값과의 차이가 임계값보다 큰 경우 상기 실제 측정된 실제값 및 해당 상태 정보의 종류를 식별하기 위한 식별 정보를 포함하는 상태 정보 보고 메시지를 상기 컨트롤러로 자동 보고하는 단계; 및
    상기 수집 주기마다 측정된 상태 정보의 실제값 및 상기 수집 주기 외의 시점에 상기 컨트롤러로 보고한 상태 정보의 실제값을 사용하여, 예측 모델 상의 변화율, 마지막 전송 시점에 측정된 실제값 및 상기 산출된 예측값을 업데이트하는 단계를 포함하며,
    상기 예측값을 산출하는 단계는, 상기 컨트롤러에서 사용하는 기설정된 상태 정보 예측 모델과 동일한 예측 모델을 통해, 상기 컨트롤러로 마지막으로 전송한 상기 상태 정보의 실제값, 마지막 전송 시점에 결정된 상기 실제값의 변화율, 및 상기 마지막 전송 시점으로부터 경과된 시간에 기초하여 상기 상태 정보에 대한 예측값을 산출하고,
    상기 상태 정보 및 상기 산출된 예측값은 상기 컨트롤러에서 기설정된 네트워크 제어를 위한 기준 정보로서 사용되는 것인, 스위치를 통한 네트워크 상태 모니터링 방법.
  19. 삭제
  20. 제 18 항에 있어서,
    상기 예측값은, 상기 마지막 전송 시점으로부터 경과된 시간까지의 시간 차의 값과 상기 변화율을 곱한 값에 상기 마지막으로 전송한 상기 상태 정보의 실제값을 합산한 값이며,
    상기 변화율은, 상기 마지막 전송 시점과 그 직전 전송 시점 사이의 상기 실제값의 변동량을 상기 전송 시점 간의 시간 간격으로 나눈 값인, 스위치를 통한 네트워크 상태 모니터링 방법.
KR1020160055191A 2016-05-04 2016-05-04 Sdn 상의 네트워크 상태 모니터링 시스템 및 방법 KR101826061B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160055191A KR101826061B1 (ko) 2016-05-04 2016-05-04 Sdn 상의 네트워크 상태 모니터링 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160055191A KR101826061B1 (ko) 2016-05-04 2016-05-04 Sdn 상의 네트워크 상태 모니터링 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20170125492A KR20170125492A (ko) 2017-11-15
KR101826061B1 true KR101826061B1 (ko) 2018-03-22

Family

ID=60386877

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160055191A KR101826061B1 (ko) 2016-05-04 2016-05-04 Sdn 상의 네트워크 상태 모니터링 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101826061B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5808510B1 (ja) * 2015-06-02 2015-11-10 ソフトバンク株式会社 予測装置及びプログラム

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5808510B1 (ja) * 2015-06-02 2015-11-10 ソフトバンク株式会社 予測装置及びプログラム

Also Published As

Publication number Publication date
KR20170125492A (ko) 2017-11-15

Similar Documents

Publication Publication Date Title
EP1107509B1 (en) System, apparatus and method for controlling the communication quality of a network
US8184553B2 (en) Method and apparatus for measuring packet transmission quality
US7065573B2 (en) Automatic traffic and quality of service control system for communications networks
US8737235B2 (en) Real-time network analyzer
EP2904491B1 (en) Method, node and computer program for enabling automatic adaptation of resource units
CN103081407B (zh) 故障分析装置、故障分析系统及故障分析方法
US9736041B2 (en) Transparent software-defined network management
US7302362B2 (en) System and method for efficient and collective adjustment of sensor reporting ranges for long-lived queries
US11910228B2 (en) Method of managing traffic by a user plane function, UPF, corresponding UPF, session management function and network data analytics function
US10819637B2 (en) Determination and indication of network traffic congestion
US11252068B1 (en) Clock synchronization in a heterogeneous system
CN107707377A (zh) 一种分析网络节点可用性的方法及系统
CN111200526B (zh) 网络设备的监控系统及方法
US20040083246A1 (en) Method and system for performance management in a computer system
CN112187512B (zh) 一种基于流量监控的端口自动扩容方法、装置和设备
CN109039795B (zh) 一种云服务器资源监控方法和系统
CN103081410A (zh) 通信质量监视系统、通信质量监视方法和记录介质
US7987258B2 (en) Network measurement configuration apparatus
KR101826061B1 (ko) Sdn 상의 네트워크 상태 모니터링 시스템 및 방법
WO2015086070A1 (en) Technique for counting objects in a telecommunications network
CN113114480A (zh) 一种数据的上报方法及相关设备
CN106533730B (zh) Hadoop集群组件指标的采集方法及装置
KR100276884B1 (ko) Snmp를 이용한 데이터 수집 주기 최적화 방법
CN103023701B (zh) 网络管理系统中性能参数的分析方法及装置
KR100373326B1 (ko) 네트워크 성능 측정 시스템과 그를 이용한 네트워크 성능측정방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right