KR20210042713A - Test apparatus to test interoperability of nfv system - Google Patents

Test apparatus to test interoperability of nfv system Download PDF

Info

Publication number
KR20210042713A
KR20210042713A KR1020190125617A KR20190125617A KR20210042713A KR 20210042713 A KR20210042713 A KR 20210042713A KR 1020190125617 A KR1020190125617 A KR 1020190125617A KR 20190125617 A KR20190125617 A KR 20190125617A KR 20210042713 A KR20210042713 A KR 20210042713A
Authority
KR
South Korea
Prior art keywords
test
vnf
futs
agents
interoperability
Prior art date
Application number
KR1020190125617A
Other languages
Korean (ko)
Other versions
KR102262395B1 (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 KR1020190125617A priority Critical patent/KR102262395B1/en
Publication of KR20210042713A publication Critical patent/KR20210042713A/en
Application granted granted Critical
Publication of KR102262395B1 publication Critical patent/KR102262395B1/en

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/50Testing arrangements
    • 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/20Network management software packages

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Disclosed is a test apparatus for testing interoperability of a network function virtualization (NFV) system. According to one embodiment, the test apparatus includes: a test profiler for generating a test case profile for testing interoperability of a plurality of virtual network function (VNF) function-under-tests (FUTs), which are test targets, among a plurality of VNFs constituting a series of service function chains (SFCs); a plurality of test agents installed in the VNF FUTs, respectively, to collect a metric from each of the VNF FUTs, and executing a test command based on the test case profile in each of the VNFs; and a test controller for parsing the test case profile to generate the test command, providing the test command to the test agents, receiving the metric collected from each of the VNF FUTs from the test agents, and analyzing the received metric to generate a test result for the interoperability of the VNF FUTs. Accordingly, interoperability is tested while complying with European Telecommunications Standards Institute (ETSI) standards.

Description

NFV 시스템의 상호 운용성을 테스트하기 위한 테스트 장치{TEST APPARATUS TO TEST INTEROPERABILITY OF NFV SYSTEM}Test device for testing interoperability of NFV system {TEST APPARATUS TO TEST INTEROPERABILITY OF NFV SYSTEM}

아래 실시예들은 NFV 시스템의 상호 운용성을 테스트하기 위한 테스트 장치에 관한 것이다.The following embodiments relate to a test apparatus for testing interoperability of an NFV system.

ETSI(European Telecommunications Standards Institute)는 네트워크 기능 가상화(NFV) 개념을 제안하여 하드웨어 지출과 네트워크 운영 복잡성을 줄였다. NFV에서 네트워크 기능은 전용 하드웨어 대신 VNF로 소프트웨어 형태로 구현되며 일반 하드웨어의 다른 가상 머신 또는 컨테이너에서 별도로 실행된다. 통신 요구 사항을 충족시키기 위해 SFC(service function chain)을 형성하기 위해 상이한 VNF가 규정된 순서로 배열된다. ETSI는 테스트 및 QoE(Quality of Experience) 모니터링을 NFV 환경 구현 시 해결해야할 주요 사용 케이스 및 주제 중 하나로 채택했다. 실시예들은 VNF 테스트에 중점을 둔다. 일부 선행기술에는 VNF 테스트와 관련된 일부 관련 작업이 있지만, ETSI 표준을 준수하지 않고 특정 NFV 플랫폼 또는 공급 업체를 대상으로하며, 상호 운용성 테스트가 부족한 등 몇 가지 문제점이 있다.The European Telecommunications Standards Institute (ETSI) proposed the concept of Network Function Virtualization (NFV) to reduce hardware expenditure and network operation complexity. In NFV, network functions are implemented in software form as VNF instead of dedicated hardware, and are separately executed in other virtual machines or containers on general hardware. Different VNFs are arranged in a prescribed order to form a service function chain (SFC) to meet the communication requirements. ETSI has adopted testing and quality of experience (QoE) monitoring as one of the key use cases and topics to be addressed when implementing an NFV environment. The examples focus on the VNF test. Some prior art has some related work related to VNF testing, but there are several problems, such as non-compliance with ETSI standards, targeting specific NFV platforms or vendors, and lack of interoperability testing.

일 실시예에 따르면, NFV(network function virtualization) 시스템의 상호 운용성을 테스트하기 위한 테스트 장치는 일련의 SFC(service function chain)를 구성하는 복수의 VNF(virtual network function) 중 테스트 대상에 해당하는 복수의 VNF FUT(function under test)의 상호 운용성을 테스트하기 위한 테스트 케이스 프로파일을 생성하는 테스트 프로파일러; 상기 복수의 VNF FUT의 각 VNF FUT에 설치되어, 상기 각 VNF FUT에서 메트릭을 수집하고, 상기 각 VNF 내에서 상기 테스트 케이스 프로파일에 기초한 테스트 명령을 실행하는 복수의 테스트 에이전트들; 및 상기 테스트 케이스 프로파일을 파싱하여 상기 테스트 명령을 생성하고, 상기 복수의 테스트 에이전트들에게 상기 테스트 명령을 제공하고, 상기 복수의 테스트 에이전트들로부터 상기 각 VNF FUT에서 수집된 상기 메트릭을 수신하고, 상기 수신된 상기 메트릭을 분석하여 상기 복수의 VNF FUT의 상기 상호 운용성에 관한 테스트 결과를 생성하는 테스트 컨트롤러를 포함한다.According to an embodiment, a test apparatus for testing interoperability of a network function virtualization (NFV) system includes a plurality of virtual network functions (VNFs) constituting a series of service function chains (SFCs). A test profiler that generates a test case profile for testing the interoperability of VNF function under test (FUT); A plurality of test agents installed in each VNF FUT of the plurality of VNF FUTs, collecting metrics from each of the VNF FUTs, and executing a test command based on the test case profile in each of the VNFs; And parsing the test case profile to generate the test command, providing the test command to the plurality of test agents, receiving the metric collected in each VNF FUT from the plurality of test agents, and the And a test controller that analyzes the received metric and generates a test result regarding the interoperability of the plurality of VNF FUTs.

상기 복수의 테스트 에이전트들은 상기 복수의 VNF FUT를 테스트하기 위해 서로 통신하여 처리량(throughput), 패키지 손실 및 서비스 경로 정확도 중 적어도 하나를 포함하는 테스트 데이터를 교환할 수 있다.The plurality of test agents may communicate with each other to test the plurality of VNF FUTs to exchange test data including at least one of throughput, package loss, and service path accuracy.

상기 복수의 VNF FUT의 상기 상호 운용성에 관한 테스트는 상기 각 VNF의 수명 주기에 관한 테스트, 상기 각 VNF의 종속성에 관한 테스트, 및 상기 SFC의 오케스트레이션에 관한 테스트 중 적어도 하나를 포함할 수 있다.The test for the interoperability of the plurality of VNF FUTs may include at least one of a test for a life cycle of each VNF, a test for a dependency of each VNF, and a test for an orchestration of the SFC.

상기 테스트 컨트롤러는 상기 테스트 프로파일을 오브젝트 및 테스트 메트릭으로 파싱하는 프로파일 파서(parser), 상기 복수의 테스트 에이전트들과 통신하여 상기 테스트 명령을 제공하거나, 상기 메트릭을 수신하는 VNF 테스트 에이전트 드라이버, 상기 복수의 VNF FUT 중 서로 다른 유형의 NFV 시스템에서 구동되는 VNF FUT를 지원하기 위해 상기 복수의 테스트 에이전트들 각각의 드라이버로 상기 복수의 테스트 에이전트들을 상기 각 VNF FUT에 설치하는 관리 드라이버, 및 상기 테스트 케이스를 위한 테스트 절차를 조율하는 컨트롤러 엔진을 포함할 수 있다.The test controller includes a profile parser that parses the test profile into an object and a test metric, a VNF test agent driver that communicates with the plurality of test agents to provide the test command or receives the metric, the plurality of A management driver for installing the plurality of test agents in each VNF FUT with a driver of each of the plurality of test agents to support VNF FUTs driven in different types of NFV systems among VNF FUTs, and for the test case It may include a controller engine to coordinate the test procedure.

상기 테스트 컨트롤러는 상기 테스트 케이스 프로파일에 대응하는 결함을 상기 테스트 에이전트들의 적어도 일부를 통해 상기 테스트 에이전트들의 상기 적어도 일부에 대응하는 상기 복수의 VNF FUT의 적어도 일부에 주입할 수 있다.The test controller may inject a defect corresponding to the test case profile into at least some of the plurality of VNF FUTs corresponding to the at least some of the test agents through at least some of the test agents.

일 실시예에 따르면, NFV(network function virtualization) 시스템의 상호 운용성을 테스트하기 위한 테스트 장치는 프로세서; 및 상기 프로세서에서 실행가능한 명령어들을 포함하는 메모리를 포함하고, 상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는 일련의 SFC(service function chain)를 구성하는 복수의 VNF(virtual network function) 중 테스트 대상에 해당하는 복수의 VNF FUT(function under test)의 상호 운용성을 테스트하기 위한 테스트 케이스 프로파일을 생성하는 테스트 프로파일러, 상기 복수의 VNF FUT의 각 VNF FUT에 설치되어, 상기 각 VNF FUT에서 메트릭을 수집하고, 상기 각 VNF 내에서 상기 테스트 케이스 프로파일에 기초한 테스트 명령을 실행하는 복수의 테스트 에이전트들, 및 상기 테스트 케이스 프로파일을 파싱하여 상기 테스트 명령을 생성하고, 상기 복수의 테스트 에이전트들에게 상기 테스트 명령을 제공하고, 상기 복수의 테스트 에이전트들로부터 상기 각 VNF FUT에서 수집된 상기 메트릭을 수신하고, 상기 수신된 상기 메트릭을 분석하여 상기 복수의 VNF FUT의 상기 상호 운용성에 관한 테스트 결과를 생성하는 테스트 컨트롤러를 구현한다.According to an embodiment, a test apparatus for testing interoperability of a network function virtualization (NFV) system includes a processor; And a memory including instructions executable in the processor, and when the instructions are executed in the processor, the processor is a test object among a plurality of virtual network functions (VNFs) constituting a series of service function chains (SFCs). A test profiler that generates a test case profile for testing the interoperability of a corresponding plurality of VNF FUTs (function under test), installed in each VNF FUT of the plurality of VNF FUTs, and collects metrics from each of the VNF FUTs , A plurality of test agents executing a test command based on the test case profile in each VNF, and generating the test command by parsing the test case profile, and providing the test command to the plurality of test agents And, implement a test controller that receives the metric collected in each VNF FUT from the plurality of test agents, analyzes the received metric, and generates a test result regarding the interoperability of the plurality of VNF FUTs do.

도 1은 일 실시예에 따른 NFV 시스템의 상호 운용성을 테스트하기 위한 테스트 장치의 동작을 나타낸 도면이다.
도 2는 적합성 테스트를 나타낸 도면이고, 도 3은 상호 운용성 테스트를 나타낸 도면이다.
도 4는 일 실시예에 따른 테스트 컨트롤러의 구성을 나타낸 도면이다.
도 5는 일 실시예에 따른 테스트 프로파일러의 구성을 나타낸 도면이다.
도 6은 일 실시예에 따른 VNF FUT들을 포함하는 SFC에 관한 테스트를 나타낸 도면이다.
도 7은 일 실시예에 따른 NFV 시스템의 상호 운용성을 테스트하기 위한 절차를 나타낸 도면이다.
도 8은 일 실시예에 따른 NFV 시스템의 상호 운용성을 테스트하기 위한 테스트 장치를 나타낸 도면이다.
도 9는 일 실시예에 따른 NFV 아키텍처를 나타낸 도면이다.
1 is a diagram illustrating an operation of a test apparatus for testing interoperability of an NFV system according to an embodiment.
2 is a diagram illustrating a conformance test, and FIG. 3 is a diagram illustrating an interoperability test.
4 is a diagram showing the configuration of a test controller according to an embodiment.
5 is a diagram showing the configuration of a test profiler according to an embodiment.
6 is a diagram illustrating a test for an SFC including VNF FUTs according to an embodiment.
7 is a diagram illustrating a procedure for testing interoperability of an NFV system according to an embodiment.
8 is a diagram illustrating a test apparatus for testing interoperability of an NFV system according to an embodiment.
9 is a diagram showing an NFV architecture according to an embodiment.

본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시예들은 다양한 형태로 실시될 수 있으며 본 명세서에 설명된 실시예들에 한정되지 않는다.Specific structural or functional descriptions of embodiments according to the concept of the present invention disclosed in the present specification are exemplified only for the purpose of describing embodiments according to the concept of the present invention, and embodiments according to the concept of the present invention They may be implemented in various forms and are not limited to the embodiments described herein.

본 발명의 개념에 따른 실시예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시예들을 도면에 예시하고 본 명세서에 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시예들을 특정한 개시형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 변경, 균등물, 또는 대체물을 포함한다.Since the embodiments according to the concept of the present invention can apply various changes and have various forms, the embodiments will be illustrated in the drawings and described in detail in the present specification. However, this is not intended to limit the embodiments according to the concept of the present invention to specific disclosed forms, and includes changes, equivalents, or substitutes included in the spirit and scope of the present invention.

제1 또는 제2 등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 본 발명의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various elements, but the elements should not be limited by the terms. The terms are only for the purpose of distinguishing one component from other components, for example, without departing from the scope of the rights according to the concept of the present invention, the first component may be referred to as the second component, Similarly, the second component may also be referred to as a first component.

어떤 구성요소가 다른 구성요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 “직접 연결되어” 있다거나 “직접 접속되어” 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성요소들 간의 관계를 설명하는 표현들, 예를 들어 “~사이에”와 “바로~사이에” 또는 “~에 직접 이웃하는” 등도 마찬가지로 해석되어야 한다.When an element is referred to as being “connected” or “connected” to another element, it is understood that it may be directly connected or connected to the other element, but other elements may exist in the middle. It should be. On the other hand, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there is no other component in the middle. Expressions that describe the relationship between components, for example, “between” and “just between” or “directly adjacent to” should be interpreted as well.

본 명세서에서 사용한 용어는 단지 특정한 실시예들을 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, “포함하다” 또는 “가지다” 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present specification are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present specification, terms such as “comprise” or “have” are intended to designate that the specified features, numbers, steps, actions, components, parts, or combinations thereof exist, but one or more other features or numbers, It is to be understood that the presence or addition of steps, actions, components, parts, or combinations thereof does not preclude the possibility of preliminary exclusion.

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

이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, the scope of the patent application is not limited or limited by these embodiments. The same reference numerals shown in each drawing indicate the same members.

도 1은 일 실시예에 따른 NFV 시스템의 상호 운용성을 테스트하기 위한 테스트 장치의 동작을 나타낸 도면이다.1 is a diagram illustrating an operation of a test apparatus for testing interoperability of an NFV system according to an embodiment.

NFV(Network Function Virtualization)는 고객에게 네트워크 서비스를 제공하는 새로운 방법이다. 전용 하드웨어와 달리 NFV 네트워크의 네트워크 기능은 일반 서버에서 실행되며 SFC(service function chain)는 VNF(virtual network function)를 연결하여 네트워크 서비스를 형성한다. VNF 및 SFC의 안정성과 품질을 보장하려면 실제 시스템에 VNF 및 SFC를 배포하기 전에 VNF 및 SFC의 성능을 평가해야 한다. 종래의 접근법은 VNF의 상호 운용성에 초점을 맞추지 않았다. 따라서 실시예들에 따라 NFV의 VNF 및 SFC에 대한 상호 운용성 테스트 프레임 워크가 제안된다.Network Function Virtualization (NFV) is a new way to provide network services to customers. Unlike dedicated hardware, the network function of the NFV network is executed in a general server, and the service function chain (SFC) connects the virtual network function (VNF) to form a network service. To ensure the stability and quality of VNFs and SFCs, the performance of VNFs and SFCs should be evaluated prior to deployment of VNFs and SFCs in real systems. The conventional approach has not focused on the interoperability of VNFs. Therefore, according to embodiments, a framework for testing interoperability of NFV for VNF and SFC is proposed.

실시예들은 VNF 및 SFC에 대한 테스트 프레임 워크를 연구한다. 프레임 워크의 주요 목표는 VNF 및 SFC에 대한 포괄적인 테스트, 특히 상호 운용성 테스트를 수행하는 것이다.Examples study the test framework for VNF and SFC. The main goal of the framework is to perform comprehensive testing, specifically interoperability testing, for VNFs and SFCs.

NFV를 구축할 때의 문제 중 하나는 장애 예방이다. 장애 예방에는 네트워크 서비스의 안정성을 확인하기 위해 VNF를 테스트해야 한다. NFV의 두 가지 일반적인 테스트 방법은 적합성 테스트(기능 및 비기능 인프라 테스트) 및 상호 운용성 테스트(즉, VNF 수명주기 및 SFC의 오케스트레이션 테스트)이다.One of the problems when building NFV is disability prevention. Failure prevention requires testing of VNFs to verify the stability of network services. The two common testing methods for NFV are conformance testing (functional and non-functional infrastructure testing) and interoperability testing (i.e., VNF lifecycle and orchestration testing of SFCs).

기존에는 VNF 기능 테스트(적합성 테스트) 또는 NFV 인프라(VNF 비 기능 테스트)에만 중점을 두고 SFC, VNF 종속성, 수명주기 관리에 대한 상호 운용성 테스트를 제공하지 않는다. 또한, 특정 NFV 플랫폼/공급 업체에서만 확장 가능하거나 다른 플랫폼/공급 업체에서는 작동하지 않는다.Traditionally, it focuses only on VNF functional testing (conformance testing) or NFV infrastructure (VNF non-functional testing), and does not provide interoperability testing for SFC, VNF dependencies, and lifecycle management. Also, it is only extensible on certain NFV platforms/vendors or does not work on other platforms/vendors.

이러한 상황에서, NFV 시스템을 위한 상호 운용성 테스트 시스템이 설계될 필요가 있다. 새로운 테스트 프레임 워크는 인프라가 아닌 VNF의 상호 운용성, 오케스트레이션 및 종속성 테스트에 중점을 둔다. 대상은 SFC 정확성, VNF 상호 운용성 및 VNF 종속성이다. 프레임 워크는 자동화(automation), 확장성(scalability, extensibility), 다중 테넌시(multi tenancy) 및 다중 클라우드도 지원해야 한다(multi cloud).In this situation, it is necessary to design an interoperability test system for the NFV system. The new test framework focuses on VNF interoperability, orchestration and dependency testing, not infrastructure. Targets are SFC accuracy, VNF interoperability, and VNF dependencies. The framework should also support automation, scalability, extensibility, multi-tenancy and multi-cloud.

제안된 테스트 프레임 워크는 VNF의 상호 운용성(예: VNF의 수명 주기, SFC의 오케스트레이션, VNF의 종속성 등)을 다루고 결함 관리 플랫폼과 통합될 수 있으며 ETSI 표준을 준수해야한다. 도 1은 VNF 테스트 에이전트, 테스트 컨트롤러, 테스트 프로파일러, 테스트 결과 데이터베이스(DB), API 엔진 및 그래픽 사용자 인터페이스(GUI)와 같은 주요 기능 블록을 포함하는 제안된 테스트 프레임 워크의 아키텍처를 보여준다. 각 기능 블록의 세부 내용은 다음과 같다.The proposed test framework covers the interoperability of VNFs (e.g. life cycle of VNFs, orchestration of SFCs, dependencies of VNFs, etc.), can be integrated with the defect management platform, and must comply with ETSI standards. Fig. 1 shows the architecture of the proposed test framework, which includes major functional blocks such as a VNF test agent, test controller, test profiler, test result database (DB), API engine, and graphical user interface (GUI). Details of each function block are as follows.

1) 테스트 에이전트: 테스트 에이전트는 각 VNF FUT(function under test)에 설치된다. SFC는 복수의 VNF들을 포함할 수 있고, 이 중 적어도 일부가 VNF FUT에 해당할 수 있다. SFC의 복수의 VNF들, 혹은 이 중 적어도 일부에 해당하는 VNF FUT들의 시작 및 종료 부분 각각에 서비스 엔드 포인트가 존재할 수 있다.1) Test Agent: A test agent is installed in each VNF function under test (FUT). The SFC may include a plurality of VNFs, and at least some of them may correspond to the VNF FUT. A service end point may exist in each of the start and end portions of a plurality of VNFs of the SFC, or VNF FUTs corresponding to at least some of them.

에이전트는 VNF에서 메트릭을 수집하고 테스트 컨트롤러로 다시 보낼 수 있다. 에이전트는 테스트 컨트롤러의 지시에 따라 VNF FUT 내에서 테스트 명령을 실행한 다음 테스트 컨트롤러의 지침을 실행할 수 있다. 에이전트는 서로 통신하여 SFC 내에서 VNF FUT를 테스트한다. 이 때, 처리량(throughput), 패키지 손실, 서비스 경로 정확성 등에 관한 정보가 교환될 수 있다.The agent can collect metrics from the VNF and send them back to the test controller. The agent can execute the test command within the VNF FUT as directed by the test controller and then execute the test controller's instructions. The agents communicate with each other to test the VNF FUT within the SFC. At this time, information about throughput, package loss, and service path accuracy may be exchanged.

테스트 컨트롤러는 테스트 에이전트에게 테스트 중인 VNF에 결함(로드, 금지된 경로로 이동하는 패키지 등)을 주입하도록 지시할 수 있다. 결함은 테스트 중인 VNF 및 SFC의 성능과 기능을 테스트하도록 설계되어 있을 수 있고, 테스트 케이스에 따라 다르며 테스트 프로필에 정의될 수 있다. 테스트 에이전트는 다른 유형의 NFV(대응하는 VNF, 에이전트 등)을 지원하며, 이를 위해 테스트 컨트롤러에서 해당 에이전트 드라이버가 작성될 수 있다.The test controller can instruct the test agent to inject faults (loads, packages traveling in a forbidden path, etc.) into the VNF under test. Defects may be designed to test the performance and functionality of the VNFs and SFCs under test, depend on the test case, and may be defined in the test profile. Test agents support different types of NFVs (corresponding VNFs, agents, etc.), and corresponding agent drivers can be written in the test controller for this purpose.

2) 테스트 컨트롤러: 테스트 컨트롤러는 모든 테스트 흐름이 조정되는 제안된 VNF 상호 운용성 테스트 시스템의 중심이며, 프로파일 파서(parser), VNF 에이전트 드라이버, 관리 드라이버, 컨트롤러 엔진 및 테스트 결과 DB 드라이버를 포함할 수 있다.2) Test Controller: The test controller is the center of the proposed VNF interoperability test system in which all test flows are coordinated, and can include a profile parser, VNF agent driver, management driver, controller engine and test result DB driver. .

3) 테스트 프로파일러: YAML 언어를 사용하여 대상 플랫폼, 인증, VNF, 테스트 중인 상호 운용성 기능이 포함된 테스트 템플릿을 정의할 수 있다.3) Test Profiler: You can use the YAML language to define test templates that include target platforms, certifications, VNFs, and interoperability features under test.

4) 테스트 결과 DB(database): 테스트 결과를 저장한다.4) Test result DB (database): Saves the test result.

5) API 엔진: 외부 소프트웨어에 테스트 프로파일러, 테스트 컨트롤러 및 테스트 결과 DB에 대한 안전한 읽기/쓰기 액세스를 제공할 수 있다. 다른 유형의 클라이언트(웹, 데스크톱 응용 프로그램 등)에서 사용할 수 있다.5) API Engine: Can provide external software with secure read/write access to test profiler, test controller and test result DB. It can be used with other types of clients (web, desktop applications, etc.).

6) GUI: 사용자가 테스트 프로필을 입력하고 API 호출을 통해 테스트 케이스를 실행할 수 있는 인터페이스이며 그래픽, 웹 또는 명령 행 인터페이스를 통해 사용자가 테스트 프로필을 입력하거나 테스트 결과를 사용자에게 시각화하는데 이용될 수 있다.6) GUI: An interface that allows a user to enter a test profile and execute test cases through API calls, and can be used by the user to enter a test profile or visualize test results to the user through a graphic, web or command line interface. .

도 2는 적합성 테스트를 나타낸 도면이고, 도 3은 상호 운용성 테스트를 나타낸 도면이다. NFV를 테스트하기 위해 적합성 테스트(conformance testing) 및 상호 운용성 테스트(interoperability testing)와 같은 기법들이 존재한다. 적합성 테스트는 기능 및 비 기능(인프라) 테스트를 수행하기 위한 것으로, 본 테스트에서 SUT(예: FUT)는 하나이다. 상호 운용성 테스트는 적합성 테스트와 구분되는 것으로 복수의 FUT 간의 오케스트레이션을 테스트하기 위한 것이다. 이 때, 복수의 FUT는 다른 공급 업체에서 제공된 서로 다른 유형의 것일 수 있다. 실시예들은 이들 중 상호 운용성 테스트에 관한 것이다.2 is a diagram illustrating a conformance test, and FIG. 3 is a diagram illustrating an interoperability test. There are techniques such as conformance testing and interoperability testing to test NFV. The conformance test is for performing functional and non-functional (infrastructure) tests, and in this test, there is one SUT (eg FUT). Interoperability testing is distinct from conformance testing, and is intended to test orchestration between multiple FUTs. In this case, the plurality of FUTs may be of different types provided by different suppliers. The embodiments relate to interoperability testing among them.

도 4는 일 실시예에 따른 테스트 컨트롤러의 구성을 나타낸 도면이다.4 is a diagram showing the configuration of a test controller according to an embodiment.

테스트 컨트롤러는 모든 테스트 흐름이 조정되는 제안된 VNF 상호 운용성 테스트 시스템의 중심이며, 프로파일 파서(parser), VNF 에이전트 드라이버, 관리 드라이버, 컨트롤러 엔진 및 테스트 결과 DB 드라이버를 포함할 수 있다.The test controller is the center of the proposed VNF interoperability test system in which all test flows are coordinated, and may include a profile parser, VNF agent driver, management driver, controller engine and test result DB driver.

프로파일 파서는 테스트 프로파일을 오브젝트 및 테스트 메트릭으로 파싱할 수 있다. VNF 에이전트 드라이버는 VNF 테스트 에이전트 드라이버로 지칭될 수도 있으며, VNF 테스트 에이전트와 통신하여 데이터를 수집하거나 결함을 주입할 수 있고, 수집된 데이터에서 메트릭을 분석한다. VNF 에이전트 드라이버는 다양한 VNF 공급 업체(KVM, VMWare VM, 컨테이너 등)을 지원할 수 있다.The profile parser can parse test profiles into objects and test metrics. The VNF agent driver may also be referred to as a VNF test agent driver, and communicates with the VNF test agent to collect data or inject defects, and analyze metrics from the collected data. The VNF agent driver can support various VNF vendors (KVM, VMWare VM, container, etc.).

관리 드라이버는 테스트를 조정하고 테스트 에이전트를 해당 NFV 시스템 내부에서 실행되는 VNF에 설치하기 위해 다른 NFV 시스템을 지원하는 할 수 있다. 예를 들어, 관리 드라이버는 다른 NFV 시스템을 지원하여 테스트를 조정하고 VNF 테스트 에이전트를 NFV 시스템에서 실행되는 VNF에 설치할 수 있다.Management drivers can coordinate tests and support other NFV systems to install test agents into VNFs running inside that NFV system. For example, a management driver can support other NFV systems to coordinate tests and install VNF test agents into VNFs running on NFV systems.

컨트롤러 엔진은 테스트 절차와 테스트 케이스를 조정할 수 있다. 예를 들어, 컨트롤러 엔진은 프로파일 파서, VNF 에이전트 드라이버, 관리 드라이버 및 테스트 결과 DB 드라이버를 사용하여 테스트 절차 및 테스트 케이스 조정할 수 있고, API 엔진에 함수 인터페이스 노출할 수 있다. 테스트 결과 DB 드라이버는 테스트 결과를 지원 DB에 저장할 수 있고, 다른 테스트 결과 DB를 위한 백엔드를 지원할 수 있다.The controller engine can coordinate test procedures and test cases. For example, the controller engine can use a profile parser, a VNF agent driver, a management driver, and a test result DB driver to adjust test procedures and test cases, and expose a function interface to the API engine. The test result DB driver can store the test result in the support DB, and can support a backend for other test result DB.

도 5는 일 실시예에 따른 테스트 프로파일러의 구성을 나타낸 도면이다.5 is a diagram showing the configuration of a test profiler according to an embodiment.

테스트 프로파일러는 YAML 파서, 프로파일 변환기 및 데이터베이스 드라이버를 포함할 수 있다. 테스트 프로파일러는 이러한 구성을 이용하여 프로필 DB 작업, 테스트 컨트롤러와 통신, API 엔진에 데이터 노출, 테스트 프로파일 검증, 입력 테스트 프로파일 파싱(예: YAML 파서 이용), YAML 데이터를 테스트 메트릭으로 변환(예: 프로파일 변환기 이용)하는 등의 기능을 수행할 수 있다.The test profiler can include a YAML parser, a profile converter, and a database driver. The test profiler uses these configurations to work with the profile DB, communicate with the test controller, expose data to the API engine, validate the test profile, parse the input test profile (e.g., using the YAML parser), and convert YAML data into test metrics (e.g.: It can perform functions such as using a profile converter.

도 6은 일 실시예에 따른 VNF FUT들을 포함하는 SFC에 관한 테스트를 나타낸 도면이다.6 is a diagram illustrating a test for an SFC including VNF FUTs according to an embodiment.

NFV를 통해 네트워크 운영자는 하나 이상의 SFC를 통해 유연하고 사용자 정의 가능한 다양한 방식으로 고객에게 서비스를 배치할 수 있다. SFC의 신뢰성과 품질을 보장하기 위해 앞서 SFC의 상호 운용성에 중점을 둔 SFC를위한 테스트 서비스가 설명되었다. 실시예들은 상술된 모듈식 아키텍처를 기반으로 구현될 수 있다.NFV allows network operators to deploy services to their customers in a variety of flexible and customizable ways through one or more SFCs. In order to ensure the reliability and quality of the SFC, a test service for the SFC was previously described that focuses on the interoperability of the SFC. Embodiments can be implemented based on the modular architecture described above.

상술된 것처럼, NFV 아키텍처 프레임 워크는 ETSI에서 제안되었다. 이는 네트워크 운영자에게 서비스를 유연하고 사용자 정의할 수 있는 방법을 제공한다. 전용 하드 워드 또는 미들 박스를 네트워크 기능으로 사용하는 대신, 소프트웨어가 VNF를 생성하는데 사용된다. VNF는 네트워크 서비스 요구 사항을 달성하기 위해 서비스 체인을 생성하기 위해 미리 정의된 순서로 정렬될 수 있다.As described above, the NFV architecture framework was proposed in ETSI. It provides network operators with a flexible and customizable way of service. Instead of using a dedicated hard word or middle box as a network function, software is used to generate the VNF. VNFs can be arranged in a predefined order to create a service chain to achieve network service requirements.

테스트 및 QoE(Quality of Experience) 시험이 ETSI의 주요 목표 중 하나로 간주되며, 이는 NFV 환경을 구축할 때 해결되어야 한다. 실시예들에서 성능 대신 네트워크 서비스와 SFC의 상호 운용성 테스트 프로세스에 중점을 둔 테스팅 서비스가 제안된다. 제안된 서비스에는 모듈 형 아키텍처가 있어서 구현이 쉬워지고 네트워크 운영자가 NFV 시스템에 적응할 수 있는 더 많은 기회가 열린다. 실시예들은 실행 가능성을 설명하기 위해 예제 테스트 사례와 함께 시행 프로세스에 중점을 둔다.Testing and Quality of Experience (QoE) testing are considered one of the ETSI's primary goals, which must be addressed when building an NFV environment. In embodiments, a testing service is proposed that focuses on the interoperability testing process of network services and SFC instead of performance. The proposed service has a modular architecture, which makes implementation easier and opens more opportunities for network operators to adapt to the NFV system. The examples focus on the implementation process with example test cases to illustrate feasibility.

모듈식 아키텍처에 따라 테스트 서비스를 설계하는 것은 사용자 지정 기능과 확장성을 유지하면서 실시예들의 모듈(구성요소)을 구현, 테스트 및 조정하는 핵심 원칙 중 하나이다. 또한 많은 실제 사용 사례에서 서비스 적응 테스트 가능성을 높이기 위해 다음과 같은 설계 원칙이 제안된다.Designing a test service according to a modular architecture is one of the key principles to implement, test and tune the modules (components) of the embodiments while maintaining custom functionality and extensibility. In addition, the following design principles are proposed to increase the possibility of service adaptation testing in many practical use cases.

테스팅 및 디버깅: 실시예들의 모든 구성요소는 자체 작동하므로 종속성 문제가 최소화될 수 있다. 이를 통해 각 구성 요소가 서로 분리되어 있으므로 쉽고 빠르게 각 구성 요소를 테스트하고 디버깅할 수 있다.Testing and debugging: Since all components of the embodiments operate on their own, dependency problems can be minimized. This keeps each component separate from each other, making it quick and easy to test and debug each component.

확장성: 실시예들의 모든 구성요소는 추상화 계층에 연결하여 특정 사용 사례를 기반으로 새 기능을 프레임 워크에 추가하는데 도움이 될 수 있다. 그런 다음 해당 추상화 계층에 연결하여 새로운 기능을 테스트 서비스에 연결할 수 있다.Extensibility: All components of the embodiments can be linked to an abstraction layer to help add new functionality to the framework based on specific use cases. You can then connect the new functionality to the test service by connecting to that layer of abstraction.

표준화된 통신 메시지 형식: 각 구성 요소의 통신 메시지는 호환성을 위해 표준화될 수 있다. 예를 들어, 실시예들에 따르면 에이전트와 컨트롤러에서 보낸 알림 메시지의 형식은 헤더와 동일하게 설정될 수 있다.Standardized communication message format: Communication messages of each component can be standardized for compatibility. For example, according to embodiments, the format of the notification message sent by the agent and the controller may be set to be the same as the header.

상호 운용성: 실시예들의 모든 구성요소는 자율적이지만 시스템이 몇 가지 일반적인 복원 요구 사항을 충족하도록 설계되었다. 따라서 실시예들에서 구성 요소가 조화롭게 조율될 수 있다.Interoperability: All components of the embodiments are autonomous, but the system is designed to meet some common restoration requirements. Accordingly, components can be harmoniously tuned in the embodiments.

실시예들은 VNF의 상호 운용성, 오케스트레이션 및 종속성 테스트에 중점을 둔다. 테스트 대상은 SFC 정확성, VNF 상호 운용성 및 VNF 종속성을 포함할 수 있다. 프레임 워크는 자동화, 확장성, 확장성, 다중 테넌시 및 다중 클라우드도 지원할 수 있다.Examples focus on VNF interoperability, orchestration and dependency testing. Test targets may include SFC accuracy, VNF interoperability, and VNF dependencies. The framework can also support automation, scalability, scalability, multi-tenancy and multiple clouds.

앞서 논의된 설계 원칙을 바탕으로 테스트 장치가 구현되어, 도 6에 도시된SFC가 테스트될 수 있다.A test apparatus is implemented based on the design principles discussed above, so that the SFC shown in FIG. 6 can be tested.

테스트된 SFC는 하나의 방화벽(VNF1)과 하나의 컨텐츠 필터링(VNF2)을 포함하는 네트워크 서비스일 수 있다. 소스 및 데스티네이션은 HTTP 클라이언트일 수 있다. SFC는 클라이언트에서 서버로 포트 80, 8080으로 가는 트래픽이 VNF1 및 VNF2를 통과하도록 동작할 수 있다. VNF1 및 VNF2의 규칙은 다음과 같을 수 있다.The tested SFC may be a network service including one firewall (VNF1) and one content filtering (VNF2). Source and destination can be HTTP clients. The SFC can operate so that traffic destined for ports 80 and 8080 from the client to the server goes through VNF1 and VNF2. The rules of VNF1 and VNF2 may be as follows.

- 서버의 포트 80으로의 트래픽 허용(VNF1, VNF2)-Allow traffic to port 80 of the server (VNF1, VNF2)

- 서버의 포트 8080에 대한 트래픽 차단(VNF1)-Block traffic to port 8080 of the server (VNF1)

- http: // <HTTP ServerAddr>/restricted에 대한 액세스 차단(VNF2)-Block access to http: // <HTTP ServerAddr>/restricted (VNF2)

이 때, 아래 표 1에 나열된 구성을 통해 구현에 사용될 수 있다.In this case, it can be used for implementation through the configurations listed in Table 1 below.

Figure pat00001
Figure pat00001

이 때, 아래와 같은 전제 조건이 있을 수 있다.In this case, there may be the following prerequisites.

- 모든 VNF, 클라이언트, 서버 및 SFC가 사전에 배포될 것.-All VNFs, clients, servers and SFCs will be deployed in advance.

- VNF1, VNF2, 클라이언트 및 서버에 실시예에 따른 모듈이 사전 설치되어 있을 것.-VNF1, VNF2, client and server must have pre-installed modules according to the embodiment.

- 테스트 컨트롤러가 동일한 Devstack 호스트에서 실행 중일 것.-The test controller must be running on the same Devstack host.

- 클라이언트, 서버, VNF1, VNF2의 관리 IP 주소가 미리 알려질 것.-The management IP address of the client, server, VNF1, and VNF2 must be known in advance.

이 때, 아래와 같이 도 6의 SFC가 제공한 기준이 대상에 해당할 수 잇다.In this case, the criteria provided by the SFC of FIG. 6 may correspond to the target as follows.

- 포트 80 열림. 클라이언트: 서버 포트 80에 요청. VNF1: 패킷 있음. VNF2: 패킷 있음. 서버: 패킷 있음.-Port 80 open. Client: Request on server port 80. VNF1: There is a packet. VNF2: There is a packet. Server: There is a packet.

- 포트 8080 차단됨. 클라이언트: 서버 포트 8080에 요청. VNF1: 패킷 있음. VNF2: 패킷 없음. 서버: 패킷 없음.-Port 8080 blocked. Client: Request on server port 8080. VNF1: There is a packet. VNF2: No packets. Server: No packets.

"/resticted" 액세스 거부됨. 클라이언트: 서버에 대한 HTTP 요청. VNF1: 패킷 있음. VNF2: URL 액세스 거부됨. 서버: 패킷 없음."/resticted" access denied. Client: HTTP request to the server. VNF1: There is a packet. VNF2: URL access denied. Server: No packets.

이 때, 아래 표 2와 같은 결과가 생성될 수 있다.At this time, the results shown in Table 2 below may be generated.

Figure pat00002
Figure pat00002

도 7은 일 실시예에 따른 NFV 시스템의 상호 운용성을 테스트하기 위한 절차를 나타낸 도면이다.7 is a diagram illustrating a procedure for testing interoperability of an NFV system according to an embodiment.

도 7을 참조하면, 단계(710)에서 사용자 인터페이스를 통해 테스트 프로파일의 정의가 수신될 수 있고, 단계(720)에서 테스트 프로파일이 검증 및 저장될 수 있고, 단계(730)에서 테스트 실행 명령이 수신될 수 있고, 단계(740)에서 테스트 프로파일이 파싱된 후, 타겟 플랫폼에 연결될 수 있다. 이 때, 단계(745)에서 대상 NFV에 필요한 관리 드라이버가 이용될 수 있다. 단계(750)에서 테스트 프로파일에 의해 지시되는 테스트가 실행될 수 있다. 이 때, 단계(755)에서 관리 드라이버를 이용하여 VNF FUT에 필요한 에이전트가 VNF FUT에 설치될 수 있다. 이후에, 단계(760)에서 데이터베이스에 테스트 결과가 저장될 수 있고, 단계(770)에서 사용자 인터페이스를 통해 테스트 결과가 출력될 수 있다.Referring to FIG. 7, a definition of a test profile may be received through a user interface in step 710, a test profile may be verified and stored in step 720, and a test execution command is received in step 730. May be, and after the test profile is parsed in step 740, it may be connected to the target platform. At this time, in step 745, a management driver required for the target NFV may be used. In step 750, the test indicated by the test profile may be executed. At this time, in step 755, an agent required for the VNF FUT may be installed in the VNF FUT using a management driver. Thereafter, the test result may be stored in the database in step 760, and the test result may be output through the user interface in step 770.

도 8은 일 실시예에 따른 NFV 시스템의 상호 운용성을 테스트하기 위한 테스트 장치를 나타낸 도면이다.8 is a diagram illustrating a test apparatus for testing interoperability of an NFV system according to an embodiment.

도 8을 참조하면, 테스트 장치(800)는 프로세서(810) 및 메모리(820)를 포함한다.Referring to FIG. 8, the test apparatus 800 includes a processor 810 and a memory 820.

메모리(820)는 프로세서(810)에 연결되고, 프로세서(810)에 의해 실행가능한 명령어들, 프로세서(810)가 연산할 데이터 또는 프로세서(810)에 의해 처리된 데이터를 저장할 수 있다. 메모리(820)는 비일시적인 컴퓨터 판독가능 매체, 예컨대 고속 랜덤 액세스 메모리 및/또는 비휘발성 컴퓨터 판독가능 저장 매체(예컨대, 하나 이상의 디스크 저장 장치, 플래쉬 메모리 장치, 또는 기타 비휘발성 솔리드 스테이트 메모리 장치)를 포함할 수 있다.The memory 820 is connected to the processor 810 and may store instructions executable by the processor 810, data to be calculated by the processor 810, or data processed by the processor 810. The memory 820 includes non-transitory computer-readable media, such as high-speed random access memory and/or non-volatile computer-readable storage media (e.g., one or more disk storage devices, flash memory devices, or other non-volatile solid state memory devices). Can include.

프로세서(810)는 도 1 내지 도 7 및 도 9를 참조하여 설명된 하나 이상의 동작을 실행하기 위한 명령어들을 실행할 수 있다. 예를 들어, 프로세서(810)는 일련의 SFC(service function chain)를 구성하는 복수의 VNF(virtual network function) 중 테스트 대상에 해당하는 복수의 VNF FUT(function under test)의 상호 운용성을 테스트하기 위한 테스트 케이스 프로파일을 생성하는 테스트 프로파일러, 복수의 VNF FUT의 각 VNF FUT에 설치되어, 각 VNF FUT에서 메트릭을 수집하고, 각 VNF 내에서 테스트 케이스 프로파일에 기초한 테스트 명령을 실행하는 복수의 테스트 에이전트들, 테스트 케이스 프로파일을 파싱하여 테스트 명령을 생성하고, 복수의 테스트 에이전트들에게 테스트 명령을 제공하고, 복수의 테스트 에이전트들로부터 각 VNF FUT에서 수집된 메트릭을 수신하고, 수신된 메트릭을 분석하여 복수의 VNF FUT의 상호 운용성에 관한 테스트 결과를 생성하는 테스트 컨트롤러를 구현할 수 있다.The processor 810 may execute instructions for executing one or more operations described with reference to FIGS. 1 to 7 and 9. For example, the processor 810 is for testing interoperability of a plurality of VNF function under test (FUT) corresponding to a test target among a plurality of virtual network functions (VNFs) constituting a series of service function chains (SFCs). A test profiler that creates a test case profile, installed in each VNF FUT of a plurality of VNF FUTs, collects metrics from each VNF FUT, and executes test commands based on the test case profile within each VNF , Parsing the test case profile to generate a test command, providing test commands to a plurality of test agents, receiving metrics collected from each VNF FUT from a plurality of test agents, and analyzing the received metrics It is possible to implement a test controller that generates test results regarding the interoperability of the VNF FUT.

이 때, 복수의 테스트 에이전트들은 복수의 VNF FUT를 테스트하기 위해 서로 통신하여 처리량(throughput), 패키지 손실 및 서비스 경로 정확도 중 적어도 하나를 포함하는 테스트 데이터를 교환할 수 있다. 또한, 복수의 VNF FUT의 상호 운용성에 관한 테스트는 각 VNF의 수명 주기에 관한 테스트, 각 VNF의 종속성에 관한 테스트, 및 SFC의 오케스트레이션에 관한 테스트 중 적어도 하나를 포함할 수 있다.In this case, the plurality of test agents may communicate with each other to test the plurality of VNF FUTs to exchange test data including at least one of throughput, package loss, and service path accuracy. In addition, the test for interoperability of the plurality of VNF FUTs may include at least one of a test for a life cycle of each VNF, a test for a dependency of each VNF, and a test for an orchestration of an SFC.

일 실시예에 따르면, 테스트 컨트롤러는 테스트 프로파일을 오브젝트 및 테스트 메트릭으로 파싱하는 프로파일 파서(parser), 복수의 테스트 에이전트들과 통신하여 테스트 명령을 제공하거나, 메트릭을 수신하는 VNF 테스트 에이전트 드라이버, 복수의 VNF FUT 중 서로 다른 유형의 NFV 시스템에서 구동되는 VNF FUT를 지원하기 위해 복수의 테스트 에이전트들 각각의 드라이버로 복수의 테스트 에이전트들을 각 VNF FUT에 설치하는 관리 드라이버, 및 테스트 케이스를 위한 테스트 절차를 조율하는 컨트롤러 엔진을 포함할 수 있다. 또한, 테스트 컨트롤러는 테스트 케이스 프로파일에 대응하는 결함을 테스트 에이전트들의 적어도 일부를 통해 테스트 에이전트들의 적어도 일부에 대응하는 복수의 VNF FUT의 적어도 일부에 주입할 수 있다.According to an embodiment, the test controller includes a profile parser that parses a test profile into objects and test metrics, a VNF test agent driver that communicates with a plurality of test agents to provide a test command or receives a metric, a plurality of To support VNF FUTs running on different types of NFV systems among VNF FUTs, a management driver that installs multiple test agents into each VNF FUT with each driver of a plurality of test agents, and coordinates the test procedure for test cases It may include a controller engine. In addition, the test controller may inject a defect corresponding to the test case profile into at least some of the plurality of VNF FUTs corresponding to at least some of the test agents through at least some of the test agents.

도 9는 일 실시예에 따른 NFV 아키텍처를 나타낸 도면이다.9 is a diagram showing an NFV architecture according to an embodiment.

NFV(Network Functional Virtualization) 아키텍처는 1) 네트워크 기능의 소프트웨어 구현 버전인 VNF(Virtual Network Function), 2) VNF가 배치되는 하드웨어 및 소프트웨어 구성 요소를 포함하는 NFVI(NFV Infrastructure), 3) NFVO(NFV Orchestrator), VNFM(VNF Manager) 및 VIM(Virtualized Infrastructure Manager)를 포함하고, NFVI 리소스와 VNF의 라이프사이클을 조직 및 관리하는 MANO(NFV Management and Orchestration)를 포함한다.Network Functional Virtualization (NFV) architecture is 1) Virtual Network Function (VNF), which is a software implementation version of the network function, 2) NFV Infrastructure (NFV Infrastructure) including hardware and software components on which the VNF is deployed, 3) NFV Orchestrator (NFVO) ), VNFM (VNF Manager) and VIM (Virtualized Infrastructure Manager), and MANO (NFV Management and Orchestration) that organizes and manages NFVI resources and the lifecycle of VNF.

NFV 아키텍처는 크게 기능 블록과 레퍼런스 포인트로 구분 가능할 수 있다. 먼저 기능 블록은 VNF, EM, NFVI, VIM, NFVO, VNFM, Service, VNF and Infrastructure Description 및 OSS/BSS를 포함하고, 레퍼런스 포인트는 VI-ha, Vn-Nf, Or-Vnfm, Vi-Vnfm, Or-Vi, Nf-Vi, Os-Ma 및 Ve-Vnfm를 포함한다.The NFV architecture can be largely divided into functional blocks and reference points. First, the functional blocks include VNF, EM, NFVI, VIM, NFVO, VNFM, Service, VNF and Infrastructure Description and OSS/BSS, and reference points are VI-ha, Vn-Nf, Or-Vnfm, Vi-Vnfm, Or -Vi, Nf-Vi, Os-Ma and Ve-Vnfm.

EM(Element Management)은 VNF 관련 설정 및 모니터링 기능을 하고 그에 대한 로그를 가지고 있는 엔티티이다. EM을 통해서 VNF의 결함 감지, 보안, 성능 측정, 설정 등이 수행된다. OSS/BSS는 네트워크 사업자의 서비스 운영 및 사업 지원 시스템을 의미한다.EM (Element Management) is an entity that performs VNF-related configuration and monitoring functions and has logs for them. Through EM, defect detection, security, performance measurement, and configuration of VNF are performed. OSS/BSS refers to a network operator's service operation and business support system.

NFVI는 VNF를 배치하는 시점부터 VNF에 대한 관리와 실행을 위한 모든 물리적 논리적 요소를 말한다. 즉 물리적인 요소들을 가지고 가상화 단계를 거쳐 자원을 제공하는 개체를 말하는 것이다. VNF 관점에서는 결국 가상화된 자원을 사용하기 때문에 물리적인 요소와 논리적인 요소를 나눌 필요는 없다.NFVI refers to all physical and logical elements for management and execution of the VNF from the point of deployment of the VNF. In other words, it refers to an entity that provides resources through the virtualization stage with physical elements. From a VNF point of view, it is not necessary to separate physical and logical elements because virtualized resources are used in the end.

NFVI를 구성하는 요소는 크게 두가지이다. 첫 번째는 하드웨어 자원이다. 즉 가상화 계층을 통해서 VNF 가 사용하게 될 실제 물리적 자원을 말한다. 두 번째는 가상화 계층이다. 가상화 계층을 통해 물리 자원을 추상화시켜서 제약없이 자원을 유동적으로 사용할 수 있게 하는 역할을 담당한다.There are two main components of NFVI. The first is hardware resources. That is, it refers to the actual physical resources that the VNF will use through the virtualization layer. The second is the virtualization layer. It abstracts the physical resources through the virtualization layer to enable flexible use of resources without restrictions.

VIM 은 VNF 가 사용하는 물리적 자원인 컴퓨팅, 스토리지, 네트워크 등을 관리하고 제어하는 부분을 의미한다. 물리적 자원을 바탕으로 가상화된 자원들을 배치하고 관리하는 역할을 하며, VIM을 통해 NFVI의 가시화를 통한 관리 기능 및 NFVI로부터의 결함 정보 및 자원 상태 수집을 통한NFVI 오류 감시 및 관리 기능도 수행된다.VIM refers to the part that manages and controls computing, storage, network, etc., which are physical resources used by VNFs. It arranges and manages virtualized resources based on physical resources, and also performs management functions through visualization of NFVI through VIM and NFVI error monitoring and management through collection of defect information and resource status from NFVI.

VNFM은 VNF의 라이프사이클 관리 및 VNF 간 상호 운용을 위한 관리 및 제어 기능을 수행한다. NFVO는 자원과 서비스에 대한 오케스트레이션 기능을 가진다. NFVO는 자원 측면에서는 VNF 관련 자원 사용 정보 수집 등을 관리하며, 서비스 측면에서는 라이프사이클 및 자동화를 관리하는 역할을 한다.VNFM performs management and control functions for lifecycle management of VNFs and interoperation between VNFs. NFVO has an orchestration function for resources and services. NFVO manages the collection of VNF-related resource usage information in terms of resources, and manages lifecycle and automation in terms of services.

NFV 레퍼런스 포인트는 앞서 이야기한 구성 요소들 간의 인터페이스를 의미하며 8개의 인터페이스로 구성되어 있다. Vi-Ha는 가상화 계층과 하드웨어 자원 간의 사용되는 인터페이스로 VNF를 위한 자원을 제공하는 역할을 하며, 하드웨어에 대한 상태 정보를 수집하는 역할을 한다. Vn-Nf는 VNF와 NFVI 사이에서 사용되는 인터페이스로 NFVI 가 VNF에게 자원을 제공하기 위한 용도로 사용된다. Or-Vnfm은 NFVO와 VNF 매니저 간의 사용되는 인터페이스로 VNFM이 NFVO에게 자원에 관련된 요청(사용자 인증, 유효성, 예약, 할당)을 할 때 혹은 NFVO가 VNFM에게 설정 정보를 보낼 때 사용된다. 또한 네트워크 서비스 라이프사이클 관리를 위해서 VNF 정보를 수집할 때도 사용된다.The NFV reference point refers to the interface between the aforementioned components and consists of 8 interfaces. Vi-Ha is an interface used between the virtualization layer and hardware resources. It provides resources for VNFs and collects state information on hardware. Vn-Nf is an interface used between VNF and NFVI, and is used for NFVI to provide resources to VNF. Or-Vnfm is an interface used between NFVO and VNF manager. It is used when VNFM makes resource-related requests (user authentication, validity, reservation, allocation) to NFVO, or when NFVO sends configuration information to VNFM. It is also used when collecting VNF information for network service lifecycle management.

Vi-Vnfm은 VIM과 VNFM간에 사용되는 인터페이스로서, VNFM이 VIM 에게 자원 할당을 요청하거나 가상화된 하드웨어 자원 설정 및 상태 정보 교환 시 사용된다. OR-Vi는 NFVO가 VIM에게 자원 예약을 하거나 자원에 대한 할당을 요청할 때 사용되는 인터페이스이다. 이 인터페이스 역시 가상화된 하드웨어 자원 설정 및 상태 정보를 교환할 때 사용된다. Nf-Vi는 VIM과 NFVI 사이에 연결에 정의된 인터페이스로서 자원 할당 요청에 응답하거나 자원상태 정보를 전달하거나 하드웨어 자원을 설정하는 경우 사용되는 인터페이스이다.Vi-Vnfm is an interface used between VIM and VNFM, and is used when VNFM requests VIM to allocate resources, configures virtualized hardware resources, and exchanges status information. OR-Vi is an interface used when NFVO makes resource reservations or requests allocation of resources to VIM. This interface is also used to exchange virtualized hardware resource configuration and status information. Nf-Vi is an interface defined in the connection between VIM and NFVI, and is used when responding to a resource allocation request, transferring resource status information, or configuring hardware resources.

Ve-Vnfm은 VNF/EM과 VNFM 사이에 정의된 인터페이스로서 VNF 라이프사이클 관리에 관련된 요청이 필요하거나, 설정 및 이벤트 관련 정보를 전달하거나, 네트워크 서비스 라이프사이클 관리를 위한 상태 정보를 교환하는 경우에 사용된다. Os-Ma는 OSS/BSS 와 NFVO 사이에 정의된 인터페이스로서 네트워크 서비스 라이프사이클 관리에 관련된 요청이나 VNF 라이프사이클 관리에 관련된 요청, NFV에 관련된 상태 정보 전달, 관리 정책 전달, 데이터 분석 교환, NFV에 관련된 과금 및 사용량 기록 전달, NFVI 기능 및 재고 관련 정보 교환 등에 사용된다.Ve-Vnfm is an interface defined between VNF/EM and VNFM, and is used when a request related to VNF lifecycle management is required, configuration and event related information is transferred, or status information for network service lifecycle management is exchanged. do. Os-Ma is an interface defined between OSS/BSS and NFVO. Requests related to network service lifecycle management, requests related to VNF lifecycle management, status information related to NFV, management policy delivery, data analysis exchange, NFV related. It is used to communicate billing and usage records, and to exchange information related to NFVI functions and inventory.

본 명세서에서의 모듈(module)은 본 명세서에서 설명되는 각 명칭에 따른 기능과 동작을 수행할 수 있는 하드웨어를 의미할 수도 있고, 특정 기능과 동작을 수행할 수 있는 컴퓨터 프로그램 코드를 의미할 수도 있고, 또는 특정 기능과 동작을 수행시킬 수 있는 컴퓨터 프로그램 코드가 탑재된 전자적 기록 매체, 예를 들어 프로세서 또는 마이크로 프로세서를 의미할 수 있다. 다시 말해, 모듈이란 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및/또는 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적 및/또는 구조적 결합을 의미할 수 있다.A module in the present specification may mean hardware capable of performing functions and operations according to each name described in the present specification, or may mean a computer program code capable of performing a specific function and operation. Or, it may mean an electronic recording medium, for example, a processor or a microprocessor in which a computer program code capable of performing a specific function and operation is mounted. In other words, the module may mean a functional and/or structural combination of hardware for performing the technical idea of the present invention and/or software for driving the hardware.

이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(Arithmetic Logic Unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(Field Programmable Gate Array), PLU(Programmable Logic Unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The apparatus described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the devices and components described in the embodiments are, for example, a processor, a controller, an Arithmetic Logic Unit (ALU), a digital signal processor, a microcomputer, a Field Programmable Gate Array (FPGA). , PLU (Programmable Logic Unit), a microprocessor, or any other device capable of executing and responding to instructions, it may be implemented using one or more general purpose computers or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. Further, the processing device may access, store, manipulate, process, and generate data in response to the execution of software. For the convenience of understanding, although it is sometimes described that one processing device is used, one of ordinary skill in the art, the processing device is a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as a parallel processor.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to operate as desired or processed independently or collectively. You can command the device. Software and/or data may be interpreted by a processing device or, to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodyed in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.

이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by the limited embodiments and drawings, various modifications and variations are possible from the above description to those of ordinary skill in the art. For example, the described techniques are performed in a different order from the described method, and/or components such as systems, structures, devices, circuits, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and those equivalent to the claims also fall within the scope of the claims to be described later.

Claims (10)

NFV(network function virtualization) 시스템의 상호 운용성을 테스트하기 위한 테스트 장치에 있어서,
일련의 SFC(service function chain)를 구성하는 복수의 VNF(virtual network function) 중 테스트 대상에 해당하는 복수의 VNF FUT(function under test)의 상호 운용성을 테스트하기 위한 테스트 케이스 프로파일을 생성하는 테스트 프로파일러;
상기 복수의 VNF FUT의 각 VNF FUT에 설치되어, 상기 각 VNF FUT에서 메트릭을 수집하고, 상기 각 VNF 내에서 상기 테스트 케이스 프로파일에 기초한 테스트 명령을 실행하는 복수의 테스트 에이전트들; 및
상기 테스트 케이스 프로파일을 파싱하여 상기 테스트 명령을 생성하고, 상기 복수의 테스트 에이전트들에게 상기 테스트 명령을 제공하고, 상기 복수의 테스트 에이전트들로부터 상기 각 VNF FUT에서 수집된 상기 메트릭을 수신하고, 상기 수신된 상기 메트릭을 분석하여 상기 복수의 VNF FUT의 상기 상호 운용성에 관한 테스트 결과를 생성하는 테스트 컨트롤러
를 포함하는 테스트 장치.
In a test apparatus for testing interoperability of a network function virtualization (NFV) system,
A test profiler that creates a test case profile to test the interoperability of a plurality of VNF function under tests (FUTs) corresponding to a test target among a plurality of virtual network functions (VNFs) constituting a series of service function chains (SFCs). ;
A plurality of test agents installed in each VNF FUT of the plurality of VNF FUTs, collecting metrics from each of the VNF FUTs, and executing a test command based on the test case profile in each of the VNFs; And
Parsing the test case profile to generate the test command, providing the test command to the plurality of test agents, receiving the metric collected in each VNF FUT from the plurality of test agents, and receiving the A test controller that analyzes the generated metric and generates a test result regarding the interoperability of the plurality of VNF FUTs
Test device comprising a.
제1항에 있어서,
상기 복수의 테스트 에이전트들은 상기 복수의 VNF FUT를 테스트하기 위해 서로 통신하여 처리량(throughput), 패키지 손실 및 서비스 경로 정확도 중 적어도 하나를 포함하는 테스트 데이터를 교환하는,
테스트 장치.
The method of claim 1,
The plurality of test agents communicate with each other to test the plurality of VNF FUTs to exchange test data including at least one of throughput, package loss, and service path accuracy,
Testing device.
제1항에 있어서,
상기 복수의 VNF FUT의 상기 상호 운용성에 관한 테스트는
상기 각 VNF의 수명 주기에 관한 테스트, 상기 각 VNF의 종속성에 관한 테스트, 및 상기 SFC의 오케스트레이션에 관한 테스트 중 적어도 하나를 포함하는,
테스트 장치.
The method of claim 1,
The test for the interoperability of the plurality of VNF FUTs
Including at least one of a test for the life cycle of each VNF, a test for dependency of each VNF, and a test for orchestration of the SFC,
Testing device.
제1항에 있어서,
상기 테스트 컨트롤러는
상기 테스트 프로파일을 오브젝트 및 테스트 메트릭으로 파싱하는 프로파일 파서(parser),
상기 복수의 테스트 에이전트들과 통신하여 상기 테스트 명령을 제공하거나, 상기 메트릭을 수신하는 VNF 테스트 에이전트 드라이버,
상기 복수의 VNF FUT 중 서로 다른 유형의 NFV 시스템에서 구동되는 VNF FUT를 지원하기 위해 상기 복수의 테스트 에이전트들 각각의 드라이버로 상기 복수의 테스트 에이전트들을 상기 각 VNF FUT에 설치하는 관리 드라이버, 및
상기 테스트 케이스를 위한 테스트 절차를 조율하는 컨트롤러 엔진을 포함하는,
테스트 장치.
The method of claim 1,
The test controller
A profile parser that parses the test profile into objects and test metrics,
A VNF test agent driver that communicates with the plurality of test agents to provide the test command or receive the metric,
A management driver for installing the plurality of test agents in each of the VNF FUTs with drivers of each of the plurality of test agents to support VNF FUTs driven in different types of NFV systems among the plurality of VNF FUTs, and
Including a controller engine to orchestrate a test procedure for the test case,
Testing device.
제1항에 있어서,
상기 테스트 컨트롤러는
상기 테스트 케이스 프로파일에 대응하는 결함을 상기 테스트 에이전트들의 적어도 일부를 통해 상기 테스트 에이전트들의 상기 적어도 일부에 대응하는 상기 복수의 VNF FUT의 적어도 일부에 주입하는,
테스트 장치.
The method of claim 1,
The test controller
Injecting a defect corresponding to the test case profile into at least a part of the plurality of VNF FUTs corresponding to the at least part of the test agents through at least a part of the test agents,
Testing device.
NFV(network function virtualization) 시스템의 상호 운용성을 테스트하기 위한 테스트 장치에 있어서,
프로세서; 및
상기 프로세서에서 실행가능한 명령어들을 포함하는 메모리
를 포함하고,
상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는
일련의 SFC(service function chain)를 구성하는 복수의 VNF(virtual network function) 중 테스트 대상에 해당하는 복수의 VNF FUT(function under test)의 상호 운용성을 테스트하기 위한 테스트 케이스 프로파일을 생성하는 테스트 프로파일러,
상기 복수의 VNF FUT의 각 VNF FUT에 설치되어, 상기 각 VNF FUT에서 메트릭을 수집하고, 상기 각 VNF 내에서 상기 테스트 케이스 프로파일에 기초한 테스트 명령을 실행하는 복수의 테스트 에이전트들, 및
상기 테스트 케이스 프로파일을 파싱하여 상기 테스트 명령을 생성하고, 상기 복수의 테스트 에이전트들에게 상기 테스트 명령을 제공하고, 상기 복수의 테스트 에이전트들로부터 상기 각 VNF FUT에서 수집된 상기 메트릭을 수신하고, 상기 수신된 상기 메트릭을 분석하여 상기 복수의 VNF FUT의 상기 상호 운용성에 관한 테스트 결과를 생성하는 테스트 컨트롤러
를 구현하는, 테스트 장치.
In a test apparatus for testing interoperability of a network function virtualization (NFV) system,
Processor; And
A memory containing instructions executable in the processor
Including,
When the instructions are executed in the processor, the processor
A test profiler that creates a test case profile to test the interoperability of a plurality of VNF function under tests (FUTs) corresponding to a test target among a plurality of virtual network functions (VNFs) constituting a series of service function chains (SFCs). ,
A plurality of test agents installed in each VNF FUT of the plurality of VNF FUTs, collecting metrics from each of the VNF FUTs, and executing a test command based on the test case profile in each of the VNFs, and
Parsing the test case profile to generate the test command, providing the test command to the plurality of test agents, receiving the metric collected in each VNF FUT from the plurality of test agents, and receiving the A test controller that analyzes the generated metric and generates a test result regarding the interoperability of the plurality of VNF FUTs
To implement, test device.
제6항에 있어서,
상기 복수의 테스트 에이전트들은 상기 복수의 VNF FUT를 테스트하기 위해 서로 통신하여 처리량(throughput), 패키지 손실 및 서비스 경로 정확도 중 적어도 하나를 포함하는 테스트 데이터를 교환하는,
테스트 장치.
The method of claim 6,
The plurality of test agents communicate with each other to test the plurality of VNF FUTs to exchange test data including at least one of throughput, package loss, and service path accuracy,
Testing device.
제6항에 있어서,
상기 복수의 VNF FUT의 상기 상호 운용성에 관한 테스트는
상기 각 VNF의 수명 주기에 관한 테스트, 상기 각 VNF의 종속성에 관한 테스트, 및 상기 SFC의 오케스트레이션에 관한 테스트 중 적어도 하나를 포함하는,
테스트 장치.
The method of claim 6,
The test for the interoperability of the plurality of VNF FUTs
Including at least one of a test for the life cycle of each VNF, a test for dependency of each VNF, and a test for orchestration of the SFC,
Testing device.
제6항에 있어서,
상기 테스트 컨트롤러는
상기 테스트 프로파일을 오브젝트 및 테스트 메트릭으로 파싱하는 프로파일 파서(parser),
상기 복수의 테스트 에이전트들과 통신하여 상기 테스트 명령을 제공하거나, 상기 메트릭을 수신하는 VNF 테스트 에이전트 드라이버,
상기 복수의 VNF FUT 중 서로 다른 유형의 NFV 시스템에서 구동되는 VNF FUT를 지원하기 위해 상기 복수의 테스트 에이전트들 각각의 드라이버로 상기 복수의 테스트 에이전트들을 상기 각 VNF FUT에 설치하는 관리 드라이버, 및
상기 테스트 케이스를 위한 테스트 절차를 조율하는 컨트롤러 엔진을 포함하는,
테스트 장치.
The method of claim 6,
The test controller
A profile parser that parses the test profile into objects and test metrics,
A VNF test agent driver that communicates with the plurality of test agents to provide the test command or receive the metric,
A management driver for installing the plurality of test agents in each of the VNF FUTs with drivers of each of the plurality of test agents to support VNF FUTs driven in different types of NFV systems among the plurality of VNF FUTs, and
Including a controller engine to orchestrate a test procedure for the test case,
Testing device.
제6항에 있어서,
상기 테스트 컨트롤러는
상기 테스트 케이스 프로파일에 대응하는 결함을 상기 테스트 에이전트들의 적어도 일부를 통해 상기 테스트 에이전트들의 상기 적어도 일부에 대응하는 상기 복수의 VNF FUT의 적어도 일부에 주입하는,
테스트 장치.
The method of claim 6,
The test controller
Injecting a defect corresponding to the test case profile into at least a part of the plurality of VNF FUTs corresponding to the at least part of the test agents through at least a part of the test agents,
Testing device.
KR1020190125617A 2019-10-10 2019-10-10 Test apparatus to test interoperability of nfv system KR102262395B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190125617A KR102262395B1 (en) 2019-10-10 2019-10-10 Test apparatus to test interoperability of nfv system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190125617A KR102262395B1 (en) 2019-10-10 2019-10-10 Test apparatus to test interoperability of nfv system

Publications (2)

Publication Number Publication Date
KR20210042713A true KR20210042713A (en) 2021-04-20
KR102262395B1 KR102262395B1 (en) 2021-06-08

Family

ID=75743321

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190125617A KR102262395B1 (en) 2019-10-10 2019-10-10 Test apparatus to test interoperability of nfv system

Country Status (1)

Country Link
KR (1) KR102262395B1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230081333A1 (en) * 2021-05-28 2023-03-16 T-Mobile Usa, Inc. Unified interface and tracing tool for network function virtualization architecture
US11811844B2 (en) 2021-05-28 2023-11-07 T-Mobile Usa, Inc. Product validation based on simulated enhanced calling or messaging communications services in telecommunications network
US11849492B2 (en) 2021-05-28 2023-12-19 T-Mobile Usa, Inc. Unified query tool for network function virtualization architecture

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230056167A (en) 2021-10-20 2023-04-27 숭실대학교산학협력단 Automated test method and apparatus for container-based network service

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170133781A (en) * 2016-05-26 2017-12-06 한국전자통신연구원 Apparatus and Method for Testing and diagnosing Virtual Infrastructure

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170133781A (en) * 2016-05-26 2017-12-06 한국전자통신연구원 Apparatus and Method for Testing and diagnosing Virtual Infrastructure

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
T. H. Nguyen and M. Yoo, "A VNF descriptor generator for tacker-based NFV management and orchestration", 2018 International Conference on Information and Communication Technology Convergence (ICTC), I *
U. Acar et al., "Programming tools for rapid NFV-based media application development in 5G networks", 2018 IEEE Conference on Network Function Virtualization and Software Defined Networks (NFV-SDN), p* *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230081333A1 (en) * 2021-05-28 2023-03-16 T-Mobile Usa, Inc. Unified interface and tracing tool for network function virtualization architecture
US11770323B2 (en) * 2021-05-28 2023-09-26 T-Mobile Usa, Inc. Unified interface and tracing tool for network function virtualization architecture
US11811844B2 (en) 2021-05-28 2023-11-07 T-Mobile Usa, Inc. Product validation based on simulated enhanced calling or messaging communications services in telecommunications network
US11849492B2 (en) 2021-05-28 2023-12-19 T-Mobile Usa, Inc. Unified query tool for network function virtualization architecture

Also Published As

Publication number Publication date
KR102262395B1 (en) 2021-06-08

Similar Documents

Publication Publication Date Title
US11630646B2 (en) Software defined network controller
KR102262395B1 (en) Test apparatus to test interoperability of nfv system
US9842045B2 (en) Failure recovery testing framework for microservice-based applications
CN107534571B (en) Method, system and computer readable medium for managing virtual network functions
US8819638B2 (en) Application protoyping suite
US6983400B2 (en) Distributed test harness model
US10430321B1 (en) White box code concurrency testing for transaction processing
US10936476B2 (en) Regression testing of new software version and deployment
US9727365B2 (en) End-to-end validation of virtual machines
US10339039B2 (en) Virtual service interface
US20170123863A1 (en) Recursive Modularization of Service Provider Components to Reduce Service Delivery Time and Cost
CN107241315B (en) Access method and device of bank gateway interface and computer readable storage medium
GB2504491A (en) Remote debug service in a cloud environment
US11449414B2 (en) Mapping test parameter data elements during heterogeneous component-based testing in a portable automation framework in both API mode and UI mode
US8826243B2 (en) System, method, and computer program product for error code injection
Kehrer et al. Container-based module isolation for cloud services
Osiński et al. DPPx: A P4-based Data Plane Programmability and Exposure framework to enhance NFV services
Chen et al. MORE: A model-driven operation service for cloud-based IT systems
Shen et al. Network-centric distributed tracing with DeepFlow: Troubleshooting your microservices in zero code
US11269712B1 (en) Customized categorial error handling framework for heterogeneous component-based testing in a portable automation framework
US20220066915A1 (en) Controlling heterogeneous component-based testing in a portable automation framework with test scripts in both api mode and ui mode
Meirosu et al. DevOps for software-defined telecom infrastructures
Makaya et al. Automated virtual network functions onboarding
US11734134B2 (en) Automatically locating resources using alternative locator expressions during heterogeneous component-based testing in a portable automation framework
US20240143468A1 (en) System and methods for testing microservices

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant