KR102518390B1 - 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치 및 방법 - Google Patents

소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치 및 방법 Download PDF

Info

Publication number
KR102518390B1
KR102518390B1 KR1020160130796A KR20160130796A KR102518390B1 KR 102518390 B1 KR102518390 B1 KR 102518390B1 KR 1020160130796 A KR1020160130796 A KR 1020160130796A KR 20160130796 A KR20160130796 A KR 20160130796A KR 102518390 B1 KR102518390 B1 KR 102518390B1
Authority
KR
South Korea
Prior art keywords
backup
sfp
flow
service function
transmitted
Prior art date
Application number
KR1020160130796A
Other languages
English (en)
Other versions
KR20180039461A (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 KR1020160130796A priority Critical patent/KR102518390B1/ko
Publication of KR20180039461A publication Critical patent/KR20180039461A/ko
Application granted granted Critical
Publication of KR102518390B1 publication Critical patent/KR102518390B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • H04L41/0853Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information
    • H04L41/0856Retrieval of network configuration; Tracking network configuration history by actively collecting configuration information or by backing up configuration information by backing up or archiving configuration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/036Updating the topology between route computation elements, e.g. between OpenFlow controllers
    • H04L45/037Routes obligatorily traversing service-related nodes
    • H04L45/0377Routes obligatorily traversing service-related nodes for service chaining
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • H04L45/122Shortest path evaluation by minimising distances, e.g. by selecting a route with minimum of number of hops
    • 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/70Admission control; Resource allocation
    • H04L47/72Admission control; Resource allocation using reservation actions during connection setup
    • H04L47/726Reserving resources in multiple paths to be used simultaneously
    • H04L47/728Reserving resources in multiple paths to be used simultaneously for backup paths

Abstract

본 발명은 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 방법으로, 네트워크로 유입된 플로우의 요구 사항이 반영되도록 해당 서비스 기능(Service Function: SF)들을 순서화한 집합인 서비스 기능 체인(Service Function Chain: SFC)을 구성하는 단계와, 상기 SFC에 따라 네트워크에서 실제로 플로우가 전송되는 경로인 서비스 기능 경로(Service Fuction Path: SFP)를 생성하는 단계와, 상기 SFP의 오류에 대비하는 백업 SF를 생성하는 단계와, 상기 SFP나 오류가 발생한 SF의 백업 SF로 대체되어 재구성된 SFP를 통해 플로우가 전송되도록 경로 설정을 제어하는 단계를 포함한다.

Description

소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치 및 방법{Apparatus and Method for Selecting Backup Service Function of Service Function Chain based on Software Defined Network}
본 발명은 소프트웨어 정의 네트워크에 관한 것으로, 보다 상세하게는 소프트웨어 정의 네트워크에서의 서비스 기능 체인(Service Function Chain: SFC)의 고 가용성을 지원하는 장치 및 방법에 관한 것이다.
네트워크가 다양한 서비스를 제공함에 따라 보안 유지, 성능 향상 등을 위해 방화벽, 정밀 패킷 검사(Deep Packet Inspection: DPI), 네트워크 주소 변환(Network Address Translation: NAT) 등과 같은 미들박스(Middlebox), 즉 서비스 기능(Service Function: SF)에 대한 의존성이 높아지고 있다. 특히, 서비스 기능 체이닝(Service Function Chaining: SFC) 기술은 특정 플로우(Flow)의 요구사항에 따라 여러 개의 네트워크 서비스를 하나의 연결로 순서화하는 표준 기술이다. 유럽통신표준기구(ETSI) 산하의 네트워크 기능 가상화(Network Function Virtualization: NFV) 산업표준그룹(Industry Specification Group: ISG)과 국제인터넷표준화기구(IETF) 산하의 SFC 워킹 그룹(Working Group: WG) 국제 표준화 단체를 중심으로 SFC의 표준 개발이 진행 중에 있다.
SFC 기술이 통신 사업자의 목적/정책에 맞추어 올바르게 동작하기 위해서는 네트워크에서 발생하는 다양한 트래픽의 유형을 실시간으로 인지하고 해당 트래픽에 적합한 SFC를 생성/제공할 수 있어야 한다. 그러나 현재 사용되고 있는 많은 SF는 네트워크 변화에 따라 동적으로 정책을 변경하기 어렵다는 문제가 존재한다. 예를 들어, 네트워크가 점점 복잡해짐에 따라 많은 수의 SF를 유연하게 동적으로 관리할 필요성이 증가하고 있지만 기존의 관리 기법들은 관리자가 수동적으로 정책을 SF에 반영하기 때문에 동적인 상황에 대처하기 어려우며, 높은 복잡성과 관리비용을 초래한다는 문제점이 있다.
이러한 관리의 어려움은 소프트웨어 정의 네트워킹(Software Defined Networking: SDN) 기술을 통해 해결할 수 있다. 예를 들어, SDN의 중앙 집중화된 컨트롤러(controller) 구조와 유연한 프로그래밍 능력을 통해 네트워크 상황에 맞춰 동적으로 SF 정책을 적용하는 것이 가능하며, 데이터 평면(data plane)과 제어 평면(control plane)이 분리되어 있으므로 기존 구조는 그대로 유지한 채 새로운 제어 평면을 추가하는 것도 가능하다. 그런데 현재 SDN 기반 컨트롤러의 고 가용성에 관한 연구는 활발하게 진행되고 있지만, SFC의 고 가용성에 대한 연구는 미비하다. 그러나 SFC 기술을 대규모 네트워크 인프라에 실제 적용하기 위해서는 SFC의 고 가용성에 의해 서비스 트래픽의 생존성 및 성능이 보장되어야 한다.
일 실시 예에 따라, SDN 기반 SFC 기술을 데이터 센터, 이동통신망 등의 사업자 망과 같은 대규모의 네트워크 인프라에 적용함에 있어서 폭증하는 트래픽 요청을 안정적으로 처리할 수 있도록, 생존성 및 성능을 보장할 수 있는 고 가용성(High Availability: HA)을 지원하기 위한 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 서비스 기능 선택 장치 및 방법을 제안하고자 한다.
일 실시 예에 따른 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 방법은 네트워크로 유입된 플로우의 요구 사항이 반영되도록 해당 서비스 기능(Service Function: SF)들을 순서화한 집합인 서비스 기능 체인(Service Function Chain: SFC)을 구성하는 단계와, 상기 SFC에 따라 네트워크에서 실제로 플로우가 전송되는 경로인 서비스 기능 경로(Service Fuction Path: SFP)를 생성하는 단계와, 상기 SFP의 오류에 대비하는 백업 SF를 생성하는 단계와, 상기 SFP나 오류가 발생한 SF의 백업 SF로 대체되어 재구성된 SFP를 통해 플로우가 전송되도록 경로 설정을 제어하는 단계를 포함한다.
다른 실시 예에 따른 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치는 네트워크로 유입된 플로우의 요구 사항이 반영되도록 해당 서비스 기능(Service Function: SF)들을 순서화한 집합인 서비스 기능 체인(Service Function Chain: SFC)을 구성하는 SFC 구성부와, 상기 SFC에 따라 네트워크에서 실제로 플로우가 전송되는 경로인 서비스 기능 경로(Service Fuction Path: SFP)를 생성하는 SFP 생성부와, 상기 SFP의 오류에 대비하는 백업 SF를 생성하는 백업 SF 생성부와, 상기 SFP나 오류가 발생한 SF의 백업 SF로 대체되어 재구성된 SFP를 통해 플로우가 전송되도록 경로 설정을 제어하는 플로우 전송 제어부를 포함한다.
발명의 구성에 따르면, SDN 기반 SFC의 성능과 고가용성을 보장할 수 있다.
플로우가 들어오게 되면 플로우가 요구하는 서비스 기능 체인에 따라 Master Service Function Path(SFP)를 구성하고 Master SFP에 오류가 발생했을 때, 이를 대체하기 위한 백업 SFP를 새롭게 구성한다. 이를 이용해 기존의 Master SFP가 문제가 발생하더라도 백업 SFP가 이를 대체하여 지속적으로 서비스를 제공할 수 있다. 따라서 본 발명을 통해 서비스 기능 체인의 고가용성을 보장할 수 있고, 이 기술을 실제 네트워크 사업망에서 사용할 수 있도록 서비스 기능 체인을 안정적으로 제공할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 SDN 기반 서비스 기능 체인의 고가용성을 위한 백업 서비스 기능 선택 방법을 도시한 흐름도이다.
도 2는 본 발명의 일 실시 예에 따른 SDN 기반 SFC를 제공하는 네트워크의 구조도이다.
도 3은 본 발명의 일 실시 예에 따른 도 2의 SFC 지원 네트워크를 표현한 그래프이다.
도 4a 내지 도 4c는 도 2의 SFC 지원 네트워크를 바탕으로, 대체될 각 백업 SF로 인해 새롭게 변경되는 SFP의 경로 증가를 최소화하는 목적함수의 실행을 통해 설정된 백업 SF 및 획득된 SFP를 도시한 도면이다.
도 5는 SF 상태 정보 동기화를 위한 라우팅 경로를 도시한 도면이다.
도 6은 도 2의 SFC 지원 네트워크환경에서 본 발명을 적용하여 각 SF에 대해 백업 SF를 설정한 결과를 도시한 도면이다.
도 7은 본 발명의 일 실시 예에 따른 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치의 구성도이다.
도 8은 본 발명의 일 실시 예에 따른 플로우 전송 제어부의 상세 구성 블록도이다.
도 9는 Stateful VNF를 이용한 SFC 지원 시에 해당 NF의 상태정보 관리를 외부의 가상 디스크를 활용하는 방안을 설명하기 위한 흐름도이다.
도 10은 본 발명의 일 실시 예에 따른 SFP 상의 SF 동작오류에 대비하기 위한 동작을 설명하기 위한 흐름도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
본 발명의 실시 예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이며, 후술되는 용어들은 본 발명의 실시 예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들(실행 엔진)에 의해 수행될 수도 있으며, 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다.
이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다.
그리고 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명되는 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록 또는 각 단계는 특정된 논리적 기능들을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있으며, 몇 가지 대체 실시 예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하며, 또한 그 블록들 또는 단계들이 필요에 따라 해당하는 기능의 역순으로 수행되는 것도 가능하다.
이하, 첨부 도면을 참조하여 본 발명의 실시 예를 상세하게 설명한다. 그러나 다음에 예시하는 본 발명의 실시 예는 여러 가지 다른 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시 예에 한정되는 것은 아니다. 본 발명의 실시 예는 당업계에서 통상의 지식을 가진 자에게 본 발명을 보다 완전하게 설명하기 위하여 제공된다.
본 발명에서는 SFC의 생존성/성능을 보장하기 위해서 SFP를 구성하는 SF에 발생하는 오류에 대비하여, 각 SF를 대체할 백업(Backup) SF를 구성한다.
그런데 본 발명의 실시 예에 따라, 백업 SF를 구성함에 있어 다음의 두 가지를 사항들을 고려해야 한다.
첫 번째로, 어떤 특정 SF가 백업 SF로 대체되었을 경우, 새롭게 구성된 SFP의 길이가 늘어나는 것을 최소로 한다.
다음으로, SFP를 구성하는 SF와 백업 SF 간의 상태 정보 동기화에 필요한 트래픽 양을 관리자가 원하는 수준으로 제어한다.
SFP를 구성하는 SF 중 플로우(Flow)에 대한 상태(State) 정보가 필요한 SF가 있을 수 있다. 기존의 SFP를 구성하는 SF와 문제가 발생했을 때, 이를 대체할 백업 SF 간의 상태 정보에 대한 동기화가 이루어져야, 새로운 SF를 사용하게 되는 경우에도 지속적인 서비스를 제공할 수 있다. 이 경우, 동기화에 사용되는 트래픽으로 인해 전체 네트워크 부하가 증가할 수 있기 때문에, 이러한 점을 고려하여 백업 SF를 구성해야 한다. 이 두 가지의 목적을 만족할 수 있도록 백업 SF를 선택한다.
이하, 전술한 특징을 가진 소프트웨어 정의 네트워크 기반 SFC의 백업 SF 선택 메커니즘을 적용한 SFP 설정 방법의 프로세스에 대해 도 1을 참조로 하여 후술한다.
도 1은 본 발명의 일 실시 예에 따른 SDN 기반 서비스 기능 체인의 고가용성을 위한 백업 서비스 기능 선택 방법을 도시한 흐름도이다.
도 1을 참조하면, SDN 컨트롤러는 새로운 플로우가 유입(S110)되면 플로우의 요구 사항이 반영되도록 SF들을 순서화한 집합인 SFC을 구성한다(S120). 그리고 SFC에 따라 네트워크에서 실제로 플로우가 전송되는 경로인 SFP를 생성한다(S130). SFP를 구성하는 과정은 관련 연구들에 의해 다양하게 정의될 수 있다.
이후, SFP의 오류에 대비하는 백업 SF를 생성한다(S140). 일 실시 예에 따라, 일 실시 예에 따라, 백업 SF는 전술한 SF 간의 상태 정보 동기화에 사용되는 트래픽을 최소화시키고 새롭게 설정되는 SFP의 길이를 최소로 하는 방식으로 구성된다. 이에 대한 상세한 설명은 후술하기로 한다.
이어서, 설정된 SFC의 순서대로 해당 트래픽 플로우가 전송됨(S150)에 따라, 해당 SFP 상에 존재하는 SF들에 해당 플로우에 대한 상태 정보가 생성되고, 해당 정보는 상응하는 백업 SF로 지속적으로 전송된다. 즉, SFP를 구성하는 SF들과 백업 SF들 간의 동기화가 이루어진다. 이때, 상기 SFP 상의 각 SF 및 해당 백업 사이의 상태 정보 동기화에 사용되는 트래픽 양을 소정 값 이하로 제어된다.
만약, 플로우가 전송되는 과정에서 SFP에 문제가 발생(S160)하면, 해당 SF를 대응되는 백업 SF로 교체(S170)하고, 교체된 백업 SF가 포함된 SFP로 플로우가 전송되도록 경로를 변경하여 지속적인 서비스를 제공한다(S180). 즉, 플로우가 유입됨에 따라 플로우가 해당 SFP로 전송되는 도중에, 전송 경로 상에 SF 동작 오류가 발생되는지를 점검하고, 플로우 전송 중 SF 동작 오류가 발생된 SFP가 존재함을 인지하게 되면, 해당 플로우가 전송되는 SFP에서 오류 발생 SF를 백업 SF로 교체하고, 플로우가 백업 SF를 포함한 SFP 상으로 전송되도록 경로를 재구성하고, 해당 백업 SF가 포함되도록 재구성된 SFP 변경에 따른 플로우 포워딩 룰을 설정한다.
한편, 이후에 플로우 사용이 중단(S190)되면 해당 플로우에 대한 SFP 와 백업 SF들이 제거된다(S195).
도 2는 본 발명의 일 실시 예에 따른 SDN 기반 SFC를 제공하는 네트워크의 구조도이다.
도 2를 참조하면, SDN 기반 SFC를 제공하는 네트워크는 물리적인 네트워크 위에서 동작하는 오버레이(Overlay) 네트워크를 가정하며, 입력 노드(Ingress Node)(211), 출력 노드(Egress Node)(212), 서비스 기능 전달자(Service Function Forwarder: SFF)(221, 222, 223, 224, 225, 226), 서비스 노드(Service Node: SN)(231, 232, 233, 234, 235, 236)와 이들을 연결하는 링크로 이루어진다.
입력 노드(211)는 새로운 플로우가 유입되는 노드를 의미하며, 해당 플로우는 요구되는 모든 SF를 거친 후에 출력 노드(212)를 통해 해당 네트워크를 빠져나간다.
SN(231, 232, 233, 234, 235, 236)은 다양한 SF를 가상 머신(Virtual Machine: VM) 상에 구현하는 노드를 나타내며, 하나 이상의 SFF(221, 222, 223, 224, 225, 226)와 연결되어 있다.
SFF(221, 222, 223, 224, 225, 226)는 SFC 기능을 제공하는 플로우들을 포워딩해 줄 수 있는 노드로 하나 이상의 SFF(221, 222, 223, 224, 225, 226)와 상호 간에 연결되어 네트워크를 구성한다. 또한, SFF(221, 222, 223, 224, 225, 226)는 하나 이상의 SN(231, 232, 233, 234, 235, 236)과 연결될 수 있다. 각 노드를 연결하는 링크는 양방향(bidirectional) 통신을 지원한다.
도 3은 본 발명의 일 실시 예에 따른 도 2의 SFC 지원 네트워크를 표현한 그래프이다.
도 3을 참조하면, 도 2에 도시된 전체 네트워크는 그래프 이론을 이용하면, 버텍스(Vertex)과 에지(Edge)로 구성된 그래프
Figure 112016097982972-pat00001
로 표현된다.
노드 집합
Figure 112016097982972-pat00002
는 SN 노드 집합(
Figure 112016097982972-pat00003
), SFF 노드 집합(
Figure 112016097982972-pat00004
), 입력 노드(Ingress Node)(
Figure 112016097982972-pat00005
), 출력 노드(Egress Node)(
Figure 112016097982972-pat00006
)로 구성된다(
Figure 112016097982972-pat00007
).
링크 집합
Figure 112016097982972-pat00008
는 두 노드 사이의 연결을 나타내는 것으로
Figure 112016097982972-pat00009
로 구성된다.
Figure 112016097982972-pat00010
는 두 노드 사이의 링크 유무를 나타내는 값으로 이 값이 1일 경우, 노드
Figure 112016097982972-pat00011
와 노드
Figure 112016097982972-pat00012
가 링크로 연결되어 있음을 뜻한다. 각 링크는
Figure 112016097982972-pat00013
의 대역폭을 가진다.
SN은 하나 이상의 VM을 생성하여 다양한 SF를 소유하고 있으며 SN
Figure 112016097982972-pat00014
에 설치된 SF의 수는
Figure 112016097982972-pat00015
로 정의된다. 그리고 각 SF의 종류를 나타내기 위하여, 이진(binary) 변수인
Figure 112016097982972-pat00016
를 사용한다. 즉,
Figure 112016097982972-pat00017
가 1인 경우, SN i의 SF ht 타입의 SF임을 의미한다. 본 발명에서는 총
Figure 112016097982972-pat00018
종류의 SF가 네트워크에서 사용한다고 가정한다(예, NAT, Firewall, DPI 등). 또한, 각 SF는 한정된 자원을 사용한다.
Figure 112016097982972-pat00019
은 0 이상의 정수로, SN
Figure 112016097982972-pat00020
의 SF
Figure 112016097982972-pat00021
가 가진 자원
Figure 112016097982972-pat00022
의 남은 양을 나타내며, 각 자원의 특성에 맞게 양자화(Quantization)한 값으로 표현된다. 본 발명에서는 총
Figure 112016097982972-pat00023
종류의 자원이 SF 에서 사용된다고 가정한다(예, CPU, Memory, Storage 등).
SFC는 해당 플로우가 처리되어야 하는 SF들을 순서화한 집합을 의미하며, 하나의 SFC는
Figure 112016097982972-pat00024
개의 순서화된 SF로 구성된다.
Figure 112016097982972-pat00025
Figure 112016097982972-pat00026
번째로 사용되는 SF의 종류를 정의하기 위한 이진 변수로,
Figure 112016097982972-pat00027
이 1인 경우, SFC 의
Figure 112016097982972-pat00028
번째 SF의 종류가
Figure 112016097982972-pat00029
타입임을 의미한다.
SFP는 네트워크에서 실제로 플로우가 전송되는 경로를 의미하며, SFP에는 해당 플로우의 패킷들을 실제로 처리하는 VM상의 SF들이 명시된다. 본 발명에서는 하나의 플로우에 대하여 실제 플로우 전송을 담당하는 SFP와 SFP를 구성하는 각 SF에 대한 백업 SF로 구성된다.
먼저,
Figure 112016097982972-pat00030
는 패킷 처리를 담당하는 SF 들을 나타내는 이진 변수로 이 값이 1 일 경우, SF
Figure 112016097982972-pat00031
가 SFP 상에서
Figure 112016097982972-pat00032
번째 SF 로 사용됨을 의미한다.
Figure 112016097982972-pat00033
는 이진 변수로 이 값이 1일 경우, SF
Figure 112016097982972-pat00034
Figure 112016097982972-pat00035
번째 백업 SF로 사용됨을 의미한다.
Figure 112016097982972-pat00036
는 SFP의 패킷 포워딩 경로를 나타내기 위한 이진 변수로 이 값이 1 일 경우,
Figure 112016097982972-pat00037
번째 SF로 패킷을 전달하기 위해 노드
Figure 112016097982972-pat00038
에서 노드
Figure 112016097982972-pat00039
로 패킷을 포워딩 함을 의미한다.
Figure 112016097982972-pat00040
Figure 112016097982972-pat00041
는 SFP에서
Figure 112016097982972-pat00042
번째 백업 SF로의 대체된 패킷 포워딩 경로를 나타내기 위한 이진 변수로
Figure 112016097982972-pat00043
와 동일한 방법으로 사용된다. 즉,
Figure 112016097982972-pat00044
Figure 112016097982972-pat00045
에서
Figure 112016097982972-pat00046
로의 패킷 포워딩 경로를 나타내고,
Figure 112016097982972-pat00047
은 (
Figure 112016097982972-pat00048
에서
Figure 112016097982972-pat00049
로의 패킷 경로를 나타낸다. SFC가
Figure 112016097982972-pat00050
개의 순서화된 SF로 구성될 때,
Figure 112016097982972-pat00051
Figure 112016097982972-pat00052
Figure 112016097982972-pat00053
번째 SF에서 egress node로 패킷을 전송하기 위한 포워딩 경로를 나타내기 위하여 사용된다.
Figure 112016097982972-pat00054
는 SFP를 구성하는
Figure 112016097982972-pat00055
번째 SF와 백업 SF간의 동기화를 위한 패킷 포워딩 경로를 나타내기 위한 이진 변수이다. 네트워크로 유입된 플로우는 그 크기에 따라 필요한 링크 대역폭
Figure 112016097982972-pat00056
를 요구하며,
Figure 112016097982972-pat00057
번째 SF 간의 동기화를 위해 필요한 링크 대역폭은
Figure 112016097982972-pat00058
이다. 또한, 해당 플로우를 처리하기 위하여
Figure 112016097982972-pat00059
번째 SF가 필요로 하는 자원
Figure 112016097982972-pat00060
의 양은
Figure 112016097982972-pat00061
으로 정의된다.
전술한 바와 같이 본 발명에서 사용되는 변수들을 정리하면, 하기의 <표 1>과 같다.
Figure 112016097982972-pat00062
한편, 전술한 바와 같이 Backup SF를 생성함에 있어 다음의 두 가지를 사항들을 고려해야 하는데, 우선, 대체된 백업 SF로 인해 새롭게 사용되는 SFP의 경로 증가를 최소로 할 수 있도록 백업 SF들을 구성하는 것이다. 즉, 이러한 조건을 만족시키는 백업 SF의 패킷 포워딩 경로 정보 (
Figure 112016097982972-pat00063
)를 얻는 것이며, SFP의 패킷 포워딩 경로 정보 (
Figure 112016097982972-pat00064
)는 다른 알고리즘 등을 통하여 이미 주어진 상태라고 가정한다. 먼저,
Figure 112016097982972-pat00065
번째 SF가 백업 SF로 대체됨에 따라 증가하는 SFP의 길이를 최소로 하는 목적 함수는 다음의 <수학식 1>과 같이 정의할 수 있다.
Figure 112016097982972-pat00066
상기 <수학식 1>에서
Figure 112016097982972-pat00067
Figure 112016097982972-pat00068
는 각각 SFP와 백업 SF에서의 링크 사용 여부를 나타내는 이진값이기 때문에, 목적함수는 기존의 SFP를 구성하는 m번째 SF가 백업 SF로 대체되었을 때, 전체 SFP의 늘어나는 길이를 최소화 하는 것으로 정의 되어 있다. 본 발명의 목적함수를 구하는 과정은, 목적 함수 및 제약 조건을 이루는 변수들 (
Figure 112016097982972-pat00069
,
Figure 112016097982972-pat00070
,
Figure 112016097982972-pat00071
)이 모두 이진 변수이므로 정수형 선형 프로그래밍 (ILP: Integer Linear Programming)으로 나타나며, 이러한 문제들은 다양한 ILP Solver (예, IBM Cplex, Matlab, GLPK, LP_Solve 등)를 이용하여 쉽게 풀어낼 수 있다.
도 4a 내지 도 4c는 도 2의 SFC 지원 네트워크를 바탕으로, 대체될 각 백업 SF로 인해 새롭게 변경되는 SFP의 경로 증가를 최소화하는 목적함수의 실행을 통해 설정된 백업 SF 및 획득된 SFP를 도시한 도면이다.
도 4a 내지 도 4c를 참조하면, 입력 노드(Ingress Node)(1)를 통해 유입된 플로우는 FW, NAT와 DPI를 거쳐 출력 노드(Engress Node)(8)로 전달되어야 한다. 기존의 SFP는 SN 1(9)의 FW와 SN 2(10)의 NAT, SN 3(11)의 DPI를 거쳐 출력 노드(Egress Node)(8)로 전송된다. 그리고 이를 구성하는 각 SF에 대한 백업 SF를 구성한다.
기존 SFP의 라우팅 경로를 나타내기 위하여,
Figure 112016097982972-pat00072
로 정의된 것을 알 수 있다.
먼저 도 4a를 참조하면, SFP를 구성하는 SF 중 첫번째 SF인 FW의 백업 SF는 목적함수에 의해 SN 4(5)의 FW로 구성된다. 따라서 FW의 백업 SF까지의 라우팅 경로는
Figure 112016097982972-pat00073
로 정의되었다. 전체 경로에서 SN 4(5)의 FW를 백업 SF로 선택했을 때, 목적함수의 결과값은 1이 된다. 도 4b 및 도 4c를 참조하면, NAT와 DPI의 백업 SF도 같은 방식으로 구성한다.
다음으로, SFP를 구성하는 SF와 백업 SF 사이의 상태 정보 동기화 트래픽 제어를 위한 제약 조건에 대해 살펴보기로 한다.
본 발명에서는 전체 SFP의 늘어나는 길이를 최소화시키는 동시에, 두 SF 사이의 상태 정보 동기화에 사용되는 트래픽 양을 관리자가 원하는 수준으로 제어하는 것을 목적으로 한다. 이는 하기의 <수학식 2>로 표현될 수 있다.
Figure 112016097982972-pat00074
상기 <수학식 2>에서
Figure 112016097982972-pat00075
는 SFP의
Figure 112016097982972-pat00076
번째 SF와 백업 SF간의 동기화를 위한 링크 사용여부를 나타내는 이진 값이고,
Figure 112016097982972-pat00077
Figure 112016097982972-pat00078
번째 SF 간의 동기화를 위해 필요한 대역폭을 나타내기 때문에 위 조건은 전체 네트워크에서 발생하는 동기화 트래픽을
Figure 112016097982972-pat00079
이하로 제어하는 것을 의미한다.
도 5는 SF 상태 정보 동기화를 위한 라우팅 경로를 도시한다.
도 5를 참조하면, SFP의 m번째 SF에서 사용되는 SN 3(11)의 DPI와 DPI의 백업 SF에서 사용되는 SN6(14)의 DPI 간 상태 정보 동기화를 위하여
Figure 112016097982972-pat00080
로 라우팅 경로가 정의됨을 알 수 있다.
그리고, 전술한 조건들 외에 백업 SF 구성을 위한 기타 제약 조건들을 설명한다.
먼저, 먼저, 플로우 보존(flow conservation)을 위하여 다음의 <수학식 3> 내지 <수학식 6>들을 만족해야 한다.
Figure 112016097982972-pat00081
Figure 112016097982972-pat00082
Figure 112016097982972-pat00083
Figure 112016097982972-pat00084
상기 <수학식 3> 내지 <수학식 6>은 차례대로 다음과 같은 의미를 가진다.
<수학식 3>은 어떤 SFF로 유입된 트래픽은 다른 SFF로 빠져나가야 한다는 것을 의미하고, <수학식 4>는 Ingress Node는 새로운 트래픽을 다른 노드로 전달한다는 것을 의미하고, <수학식 5>는 Egress Node로 트래픽이 전송되면 해당 플로우는 종료된다는 것을 의미하고, <수학식 6>은 SFF로부터 SN으로 전달된 트래픽은 요구되는 SF 처리 과정을 거친 후에, 전송받은 SFF로 다시 전송됨으로써 다음 SF로의 전송이 시작된다는 것을 의미한다.
또한, 트래픽 전송에 사용되는 대역폭은 각 링크가 허용하는 대역폭을 초과할 수 없다. 이를 위하여 다음의 <수학식 7>을 만족해야 한다.
Figure 112016097982972-pat00085
또한, 백업 SF를 구성할 때, 같은 서비스 노드의 SF를 선택하게 되면 서비스 노드가 오류가 났을 시 기존의 SF와 백업 SF 모두 영향을 받게 된다. 따라서, 백업 SF를 선택할 때, 다음의 <수학식 8>을 만족하도록 같은 서비스 노드의 SF는 선택하지 않는다.
Figure 112016097982972-pat00086
도 6은 도 2의 SFC 지원 네트워크환경에서 본 발명을 적용하여 각 SF에 대해 백업 SF를 설정한 결과를 도시한 도면이다.
구성 과정을 살펴보면, 먼저 SFP를 구성하는 첫 번째 SF인 FW의 백업 SF를 구성하기 위해, SN 4(224)의 FW와 SN 6(236)의 FW 중 하나를 선택해야 한다. 이때 새롭게 구성되는 SFP의 늘어나는 길이를 최소화시키기 위해 SN 4(224)의 FW가 선택되었다. 또한, 두 번째 SF인 NAT에 대해 백업 SF를 구성하기 위하여 SN 4(234)의 NAT와 SN 5(235)의 NAT 중 하나를 선택해야 한다. 이 경우, SFP의 길이가 늘어나는 것을 최소화하고, 동기화에 요구되는 트래픽을 관리자의 요구사항에 맞추기 위하여 SN 5(135)의 NAT가 선택되었다. 마찬가지로, SFP의 세 번째 SF인 DPI의 백업 SF를 구성할 때도, 전체 SFP의 길이와 동기화에 요구되는 트래픽을 고려하여 SN 5(235)의 DPI와 SN 6(236)의 DPI 중 SN 6의 SPI를 선택한다. 결과적으로, SFP를 구성하는 각 SF에 대해 FW의 백업 SF는 SN 4(234)의 FW로, NAT의 백업 SF는 SN 5(235)의 NAT로, DPI의 백업 SF는 SN 6(236)의 DPI로 구성된다.
도 7은 본 발명의 일 실시 예에 따른 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치의 구성도이고, 도 8은 본 발명의 일 실시 예에 따른 플로우 전송 제어부의 상세 구성 블록도이다. 여기서, 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치는 SDN 컨트롤러 상에 구현될 수 있다.
도 7을 참조하면, 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치는 상세하게는 SFC 구성부(710), SFP 생성부(720), 백업 SF 생성부(730) 및 플로우 전송 제어부(740)를 포함한다. 부가적으로, SF 상태 동기화부(750)를 포함한다.
SFC 구성부(710)는 네트워크로 유입된 새로운 플로우의 요구 사항이 반영되도록 해당 SF들을 순서화한 집합인 SFC를 구성한다.
SFP 생성부(720)는 구성된 SFC에 따라 네트워크에서 실제로 플로우가 전송되는 경로인 SFP를 생성한다.
백업 SF 생성부(730)는 SFP의 오류에 대비하는 백업 SF를 생성한다. 이때, 일 실시 예에 따라, 백업 SF는 전술한 SF 간의 상태 정보 동기화에 사용되는 트래픽을 최소화시키고 새롭게 설정되는 SFP의 길이를 최소로 하는 방식으로 구성된다. 즉, 전술한 목적 함수가 최소값이 되도록 하는 백업 SF를 구성한다.
플로우 전송 제어부(740)는 결정된 SFP를 통해 해당 플로우가 전송되도록 경로설정을 제어한다. 플로우 전송 제어부(740)는 플로우가 전송되는 과정에서 SFP에 문제가 발생될 경우, 해당 SF를 대응되는 백업 SF로 교체하여 교체된 백업 SF가 포함된 SFP로 플로우가 전송되도록 경로를 변경하여 지속적인 서비스를 제공한다. 즉, 이를 위해 상세하게는 플로우 전송 제어부(740)는 SF 오류 인지부(741), SFP 관리부(742), SF 교체 및 관리부(743) 및 플로우 포워딩 룰 제공부(744)를 포함한다.
SF 오류 인지부(741)는 플로우가 유입됨에 따라 플로우가 해당 SFP로 전송되는 도중에, 전송 경로 상에 SF 동작 오류가 발생되는지를 점검한다. SF 오류 인지부(741)는 플로우 전송 중 SF 동작 오류가 발생된 SFP가 존재함을 인지하게 되면, SFP 관리부(742)와 SF 교체 및 관리부(743)에 이를 알린다. 그러면, SF 교체 및 관리부(743)는 해당 플로우가 전송되는 SFP에서 오류 발생 SF를 백업 SF로 교체한다. 그리고, SFP 관리부(742)는 플로우가 백업 SF를 포함한 SFP 상으로 전송되도록 경로를 재구성한다. 또한, 이때, 백업 SF 생성부(720)는 새로운 백업 SF를 재설정한다. 플로우 포워딩 룰 제공부(744)는 해당 백업 SF가 포함되도록 재구성된 SFP 변경에 따른 플로우 포워딩 룰을 설정한다.
또한, SF 상태 동기화부(750)는 플로우가 SFC의 순서로 패킷이 전송됨에 따라 해당 SFP 상에 존재하는 SF들에 해당 플로우에 대한 상태 정보를 생성하게 되고, 해당 정보를 상응하는 백업 SF로 지속적으로 전송하여 동기화시킨다. 이때, SF 상태 동기화부(750)는 SFP 상의 각 SF 및 해당 백업 SF 사이의 상태 정보 동기화에 사용되는 트래픽 양을 소정 값 이하로 제어한다.
SFC 표준 드래프트(draft) 문서에서는 서비스 가용 레벨(Service availability level)에 따른 종단 간 서비스 리커버리 시간(End-to-end service recovery times)의 임계(Threshold)값을 정리하여 서비스 고 가용성(Service High Availability)의 중요성을 제시하고 있는데, 이는 하기의 <표 2>와 같다.
Figure 112016097982972-pat00087
또한, 기존에는 Stateful VNF를 이용한 SFC 지원 시에 해당 NF의 상태정보 관리를 외부의 가상 디스크를 활용하는 방안을 사용하고 있다.
도 9는 Stateful VNF를 이용한 SFC 지원 시에 해당 NF의 상태정보 관리를 외부의 가상 디스크를 활용하는 방안을 설명하기 위한 흐름도이다.
도 9를 참조하면, SF instance(20)는 해당 상태 정보를 주기적으로 외부의 가상 디스크(40)에 저장한다(S910). 그런 후, SF 실패(failure) 상황이 발생되면, SF 인스턴스는 이를 NF(10) 및 SF Manager(30)에 알린다(920-1, 920-2). 그리고, SF 인스턴스(20)와 SF Manager(30) 사이에 재구동을 위한 절차들(S930)을 수행한 후, SF 인스턴스(20)는 failure 직전에 업데이트된 서비스 상태정보를 외부의 가상 디스크(40)로부터 읽어와서(S940, S950), 새로운 SF instance를 구동시켜서 지속적인 서비스를 제공한다(S960).
도 10은 본 발명의 일 실시 예에 따른 SFP 상의 SF 동작오류에 대비하기 위한 동작을 설명하기 위한 흐름도이다.
본 발명은 도 10에 도시된 바와 같이, SFP 상의 SF 동작오류에 대비하기 위해서, 제1 SFP 상의 SF1 instance(21)가 fail(S1010-1, S1010-2)되어도 S1020 내지 S1060 단계를 거쳐, 서비스가 지속적으로 제공되도록, SF2 instance는 경로별 SF 상태 동기화부(750)에 의해 SFC가 제공하는 해당 NF의 업데이트 상태 정보를 SF1 instance로부터 동기화시킨다.
이제까지 본 발명에 대하여 그 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (13)

  1. 소프트웨어 정의 네트워킹(SDN) 컨트롤러에 의하여 서비스 기능 체인의 백업 서비스 기능을 선택하는 방법으로서,
    네트워크로 유입되는 플로우가 요구하는 서비스 기능 체인(Service Function Chain: SFC)에 따라 복수의 서비스 기능(Service Function: SF)들을 포함하는 서비스 기능 경로(Service Fuction Path: SFP)를 생성하는 단계와,
    상기 SFP의 오류에 대비하여 상기 복수의 SF들 중 적어도 일부에 대하여 백업 SF를 생성하는 단계와,
    상기 SFP를 통해 해당 플로우가 전송되도록 경로 설정을 제어하는 단계를 포함하며,
    상기 백업 SF를 생성하는 단계가
    소정의 목적함수를 토대로 상기 백업 SF로 인하여 새롭게 구성되는 상기 SFP의 길이 증가를 최소화되게 하면서, 상기 백업 SF와 그에 상응하는 SF간의 상태 정보 동기화에 필요한 트래픽 양이 소정의 임계치 이하가 되게 하는 방식으로 상기 백업 SF를 생성하는 단계를 포함하는,
    소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 방법.
  2. 제1 항에 있어서, 상기 목적함수가 다음 수학식
    Figure 112022104095243-pat00100

    (여기서,
    Figure 112022104095243-pat00101
    는 상기 SFP에서
    Figure 112022104095243-pat00102
    번째 SF의 백업 SF로 패킷을 전달하기 위해, 노드
    Figure 112022104095243-pat00103
    에서 노드
    Figure 112022104095243-pat00104
    로의 패킷 포워딩 여부를 나타내는 변수,
    Figure 112022104095243-pat00105
    는 상기 SFP에서 상기
    Figure 112022104095243-pat00106
    번째 SF의 백업 SF에서
    Figure 112022104095243-pat00107
    번째 SF로 패킷을 전달하기 위해, 상기 노드
    Figure 112022104095243-pat00108
    에서 상기 노드
    Figure 112022104095243-pat00109
    로의 패킷 포워딩 여부를 나타내는 변수,
    Figure 112022104095243-pat00110
    는 상기 SFP에서 상기
    Figure 112022104095243-pat00111
    번째 SF로 패킷을 전달하기 위해, 상기 노드
    Figure 112022104095243-pat00112
    에서 상기 노드
    Figure 112022104095243-pat00113
    로의 패킷 포워딩 여부를 나타내는 변수를 나타냄)
    에 의해 표현되는, 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 방법.
  3. 제1 항에 있어서,
    플로우가 SFC의 순서로 패킷이 전송됨에 따라 해당 SFP 상에 존재하는 SF들에 해당 플로우에 대한 상태 정보를 생성하고, 해당 정보를 상응하는 백업 SF로 지속적으로 전송하여 동기화시키는 단계를 더 포함함을 특징으로 하는 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 방법.
  4. 제3 항에 있어서, 상기 동기화하는 단계는
    상기 SFP 상의 각 SF 및 해당 백업 사이의 상태 정보 동기화에 사용되는 트래픽 양을 소정 값 이하로 제어하는 단계를 포함함을 특징으로 하는 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 방법.
  5. 제1 항에 있어서, 상기 제어하는 단계는
    플로우가 전송되는 과정에서 상기 SFP에 문제가 발생될 경우, 해당하는 백업 SF로 교체하여 교체된 백업 SF가 포함된 SFP로 플로우가 전송되도록 경로를 변경하여 지속적인 서비스를 제공하는 단계를 포함함을 특징으로 하는 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 방법.
  6. 제5 항에 있어서, 상기 플로우를 전송하는 단계는
    플로우가 유입됨에 따라 플로우가 해당 SFP로 전송되는 도중에, 전송 경로 상에 SF 동작 오류가 발생되는지를 점검하는 단계와,
    플로우 전송 중 SF 동작 오류가 발생된 SFP가 존재함을 인지하게 되면, 해당 플로우가 전송되는 SFP에서 오류 발생 SF를 백업 SF로 교체하고, 플로우가 백업 SF를 포함한 SFP 상으로 전송되도록 경로를 재구성하는 단계와,
    해당 백업 SF가 포함되도록 재구성된 SFP 변경에 따른 플로우 포워딩 룰을 설정하는 단계를 더 포함함을 특징으로 하는 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 방법.
  7. 제1 항에 있어서,
    플로우 사용이 중단되는 경우, 해당 플로우에 대한 SFP와 백업 SF를 제거하는 단계를 더 포함함을 특징으로 하는 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 방법.
  8. 네트워크로 유입되는 플로우의 요구하는 서비스 기능 체인(Service Function Chain: SFC) 에 따라 복수의 서비스 기능(Service Function: SF)들을 포함하는 서비스 기능 경로(Service Fuction Path: SFP)를 생성하는 SFP 생성부와,
    상기 SFP의 오류에 대비하여 상기 복수의 SF들 중 적어도 일부에 대하여 백업 SF 생성부와,
    상기 SFP를 통해 해당 플로우가 전송되도록 경로 설정을 제어하는 플로우 전송 제어부를 포함하며,
    상기 백업 SF 생성부는 소정의 목적함수를 토대로 상기 백업 SF로 인하여 새롭게 구성되는 상기 SFP의 길이 증가를 최소화되게 하면서, 상기 백업 SF와 그에 상응하는 SF간의 상태 정보 동기화에 필요한 트래픽 양이 소정의 임계치 이하가 되게 하는 방식으로 상기 백업 SF를 생성하는,
    소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치.
  9. 제8 항에 있어서, 상기 목적함수가 다음 수학식
    Figure 112022104095243-pat00114

    (여기서,
    Figure 112022104095243-pat00115
    는 상기 SFP에서
    Figure 112022104095243-pat00116
    번째 SF의 백업 SF로 패킷을 전달하기 위해, 노드
    Figure 112022104095243-pat00117
    에서 노드
    Figure 112022104095243-pat00118
    로의 패킷 포워딩 여부를 나타내는 변수,
    Figure 112022104095243-pat00119
    는 상기 SFP에서 상기
    Figure 112022104095243-pat00120
    번째 SF의 백업 SF에서
    Figure 112022104095243-pat00121
    번째 SF로 패킷을 전달하기 위해, 상기 노드
    Figure 112022104095243-pat00122
    에서 상기 노드
    Figure 112022104095243-pat00123
    로의 패킷 포워딩 여부를 나타내는 변수,
    Figure 112022104095243-pat00124
    는 상기 SFP에서 상기
    Figure 112022104095243-pat00125
    번째 SF로 패킷을 전달하기 위해, 상기 노드
    Figure 112022104095243-pat00126
    에서 상기 노드
    Figure 112022104095243-pat00127
    로의 패킷 포워딩 여부를 나타내는 변수를 나타냄)
    에 의해 표현되는, 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치.
  10. 제8 항에 있어서,
    플로우가 SFC의 순서로 패킷이 전송됨에 따라 해당 SFP 상에 존재하는 SF들에 해당 플로우에 대한 상태 정보를 생성하고, 해당 정보를 상응하는 백업 SF로 지속적으로 전송하여 동기화시키는 SF 상태 동기화부를 더 포함함을 특징으로 하는 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치.
  11. 제10 항에 있어서, 상기 SF 상태 동기화부는
    상기 SFP 상의 각 SF 및 해당 백업 사이의 상태 정보 동기화에 사용되는 트래픽 양을 소정 값 이하로 제어함을 특징으로 하는 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치.
  12. 제8 항에 있어서, 상기 플로우 전송 제어부는
    플로우가 전송되는 과정에서 상기 SFP에 문제가 발생될 경우, 해당하는 백업 SF로 교체하여 교체된 백업 SF가 포함된 SFP로 플로우가 전송되도록 경로를 변경하여 지속적인 서비스를 제공함을 특징으로 하는 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치.
  13. 제8 항에 있어서, 상기 플로우 전송 제어부는
    플로우가 유입됨에 따라 플로우가 해당 SFP로 전송되는 도중에, 전송 경로 상에 SF 동작 오류가 발생되는지를 점검하고, 플로우 전송 중 SF 동작 오류가 발생된 SFP가 존재함을 인지하게 되면, SFP 관리부와 SF 교체 및 관리부에 이를 알리는 SF 오류 인지부와,
    해당 플로우가 전송되는 SFP에서 오류 발생 SF를 백업 SF로 교체하는 SF 교체 및 관리부와,
    플로우가 백업 SF를 포함한 SFP 상으로 전송되도록 경로를 재구성하는 SFP 관리부와,
    해당 백업 SF가 포함되도록 재구성된 SFP 변경에 따른 플로우 포워딩 룰을 설정하는 플로우 포워딩 룰 제공부를 포함함을 특징으로 하는 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치.
KR1020160130796A 2016-10-10 2016-10-10 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치 및 방법 KR102518390B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160130796A KR102518390B1 (ko) 2016-10-10 2016-10-10 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160130796A KR102518390B1 (ko) 2016-10-10 2016-10-10 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20180039461A KR20180039461A (ko) 2018-04-18
KR102518390B1 true KR102518390B1 (ko) 2023-04-05

Family

ID=62082689

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160130796A KR102518390B1 (ko) 2016-10-10 2016-10-10 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102518390B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111901170B (zh) * 2020-07-29 2022-12-13 中国人民解放军空军工程大学 可靠性感知的服务功能链备份保护方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100298319B1 (ko) * 1998-12-31 2001-08-07 윤종용 통신시스템에서의 이중화 장치_
KR101788402B1 (ko) * 2014-10-23 2017-10-19 주식회사 케이티 Sfc 수행 방법 및 시스템

Also Published As

Publication number Publication date
KR20180039461A (ko) 2018-04-18

Similar Documents

Publication Publication Date Title
KR102576869B1 (ko) 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 서비스 기능 경로 설정 장치 및 방법
US10644952B2 (en) VNF failover method and apparatus
US10678746B2 (en) Virtual network optimizing a physical network
CN105976031B (zh) 多个语义推理引擎对数据的并行处理
US10355940B2 (en) Compiler for and method of software defined networking, storage and compute performing operations
US10095370B2 (en) Network configuration and operation visualizing apparatus
US10033623B2 (en) Multithreaded system and method for establishing network connections
EP3016316B1 (en) Network control method and apparatus
CN111165019B (zh) 接入网中的控制器
US11442791B2 (en) Multiple server-architecture cluster for providing a virtual network function
US20140226975A1 (en) Method and apparatus for boosting data intensive processing through optical circuit switching
Tse et al. Real-time traffic management in AT&T’s SDN-enabled core IP/optical network
EP3716543B1 (en) Controlling paths in a network via a centralized controller or network devices
CN108965147B (zh) 网络控制方法、装置及网络设备
Gavrilut et al. Fault-tolerant topology selection for TTEthernet networks
Patil et al. Bootstrapping software defined network for flexible and dynamic control plane management
KR102518390B1 (ko) 소프트웨어 정의 네트워크 기반 서비스 기능 체인의 백업 서비스 기능 선택 장치 및 방법
EP3439249B1 (en) Network system, management method and device for same, and server
Martinez et al. Next generation networks under the SDN and OpenFlow protocol architecture
JP5063726B2 (ja) 仮想ノード装置のコンフィグ制御方法
Taher Testing of floodlight controller with mininet in sdn topology
JP6315467B2 (ja) ネットワーク復旧システムおよびプログラム
CN110956864A (zh) 一种网络安全训练场景模拟系统及方法
US20230118989A1 (en) Collection of segment routing ipv6 (srv6) network telemetry information
ENAN FAILURE RECOVERY IN SDN: A SEGMENT ROUTING BASED LINK PROTECTION APPROACH

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