KR20170008435A - Network function virtual apparatus and method for syncronizing time the same - Google Patents

Network function virtual apparatus and method for syncronizing time the same Download PDF

Info

Publication number
KR20170008435A
KR20170008435A KR1020150099611A KR20150099611A KR20170008435A KR 20170008435 A KR20170008435 A KR 20170008435A KR 1020150099611 A KR1020150099611 A KR 1020150099611A KR 20150099611 A KR20150099611 A KR 20150099611A KR 20170008435 A KR20170008435 A KR 20170008435A
Authority
KR
South Korea
Prior art keywords
time synchronization
ntp
clock information
cpu clock
nic
Prior art date
Application number
KR1020150099611A
Other languages
Korean (ko)
Other versions
KR102500223B1 (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 KR1020150099611A priority Critical patent/KR102500223B1/en
Publication of KR20170008435A publication Critical patent/KR20170008435A/en
Application granted granted Critical
Publication of KR102500223B1 publication Critical patent/KR102500223B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45537Provision of facilities of other operating environments, e.g. WINE
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)

Abstract

A network function virtualization apparatus is disclosed. The network function virtualization apparatus comprises: a first OS; and at least one second OS. And a time synchronization method of the network function virtualization apparatus comprises the following steps: the first OS periodically performs time synchronization with an NTP server; at least one second OS performs time synchronization with the first OS; the at least one second OS receives physical CPU clock information from the first OS; and the at least one second OS modifies a time error by using the received CPU clock information. Accordingly, the efficiency of the apparatus can be improved.

Description

네트워크 기능 가상화 장치 및 그의 타임 동기화 방법{NETWORK FUNCTION VIRTUAL APPARATUS AND METHOD FOR SYNCRONIZING TIME THE SAME}[0001] NETWORK FUNCTION VIRTUAL APPARATUS AND METHOD FOR SYNCRONIZING TIME THE SAME [0002]

본 발명은 네트워크 장치에 관한 것으로써, 보다 상세하게는 NTP(Network Time Protocol) 타임 동기화를 수행하는 네트워크 기능 가상화 장치 및 그의 타임 동기화 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a network device, and more particularly, to a network function virtualization device that performs NTP (Network Time Protocol) time synchronization and a time synchronization method thereof.

최근 정보 통신 기술이 급속도로 발전함에 따라, 정보 통신 기술을 기반으로 하는 유비쿼터스 사회가 이루어지고 있다. 유무선 통신망은 전세계적으로 연결되어 개인, 기업, 국가 등의 다양한 니즈가 해결되고 있다.Recently, as the information and communication technology rapidly develops, a ubiquitous society based on information and communication technology is being made. The wired / wireless communication network is connected globally, and various needs of individuals, companies, and countries are being solved.

점점 네트워크 환경의 규모가 방대해져가고, 네트워크 중심의 IT 시대가 도래함에 따라, 특정 네트워크 장비 벤더(Vendor)에 대한 종속을 탈피하고, 고가의 네트워크 장비에 대한 투자비용과 운용비용을 절감하고자 통신 사업자 주도하에 연구개발이 다양하게 수행되고 있는 실정이다.As the network environment becomes more and more network-centric and the age of IT becomes more and more important, in order to avoid the dependency on specific network equipment vendors and to reduce the investment cost and operation cost of expensive network equipment, R & D is being carried out variously under the leadership.

그 중에서 NFV(Network Functions Virtualization) 이 등장하게 된다. NFV 기술은 통신망 구성과 제어/관리에 필요한 소프트웨어적인 기능들을 가상화하여 이용하는 기술로, 이기종 하드웨어 장비들로 구성된 네트워크 장비가 가진 한계를 서버, 스토리지 및 스위치와 IT 가상화를 이용하여 네트워크 기능을 구현하는 기술이다. Among them, Network Functions Virtualization (NFV) emerges. NFV technology is a technology that virtualizes software functions required for network configuration and control / management. It implements the limitations of network equipment composed of heterogeneous hardware devices to realize network functions using servers, storage and switches and IT virtualization. to be.

도 1에서 NFV에 의한 네트워크는 이더넷 스위치(11), 스토리지(12), 서버(13), 가상화 기반(14), 가상 클라우드(15)을 포함할 수 있고, NFV 장치는 가상 클라우드(15)의 가상 라우터, 가상 SGSN/GGSN/PGW/S-GW, 가상 IMS 등의 자원을 이용할 수 있다. 1, a network by NFV may include an Ethernet switch 11, a storage 12, a server 13, a virtualization infrastructure 14, a virtual cloud 15, and an NFV device may include a virtual cloud 15 A virtual router, a virtual SGSN / GGSN / PGW / S-GW, and a virtual IMS.

또한, NFV 환경에서 성능 및 용량 확장을 위해 가상 머신(VM, Virtual Machine)을 추가 생성하는 경우, 가상 머신 간 트래픽 전송 시 순서 보장을 위해 타임 동기화가 필요하다.In addition, when an additional virtual machine (VM) is created for performance and capacity expansion in an NFV environment, time synchronization is required to ensure ordering of traffic between virtual machines.

종래기술에서는 아래와 같이 타임 동기화가 수행되었다. 구체적으로, VM 각각이 NTP(Network Time Protocol) 서버에 접속하여 타임 동기화를 수행하거나, Master VM 이 NTP 서버와 타임 동기화를 수행한 후, Master VM 이 VM 각각과 타임 동기화를 수행하기도 하였다.In the prior art, time synchronization is performed as follows. Specifically, each VM accesses an NTP (Network Time Protocol) server to perform time synchronization, or after the Master VM performs time synchronization with an NTP server, the Master VM performs time synchronization with each VM.

이런 경우, NTP 서버 및 Master VM 에 큰 부하가 발생되는 문제점이 있었다. 따라서, NFV 환경하에서 보다 개선된 타임 동기화 방법의 대두가 요청된다.In this case, there is a problem that a large load is generated in the NTP server and the master VM. Therefore, the rise of an improved time synchronization method under the NFV environment is required.

본 발명은 상술한 종래 기술의 한계점을 해결하기 위해 고안된 것으로, 본 발명의 목적은 NTP 서버에 부하를 예방하는 네트워크 기능 가상화 장치 및 그의 타임 동기화 방법을 제공함에 있다.It is an object of the present invention to provide a network function virtualization apparatus and a time synchronization method thereof for preventing load on an NTP server.

또한, 본 발명의 다른 목적은 빈번하게 가상 머신(Virtual Machine)이 타임 동기화를 수행 빈도를 줄이는 네트워크 기능 가상화 장치를 제공함에 있다.Another object of the present invention is to provide a network function virtualization apparatus in which a frequency of time synchronization is frequently performed by a virtual machine.

본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention, unless further departing from the spirit and scope of the invention as defined by the appended claims. It will be possible.

본 발명의 다양한 실시예에 따른 네트워크 기능 가상화 장치의 타임 동기화 방법에 있어서, 제1 OS가 주기적으로 NTP(Network Time Protocol) 서버와 타임 동기화를 수행하는 단계; 적어도 하나의 제2 OS가 상기 제1 OS 와 타임 동기화를 수행하는 단계; 상기 적어도 하나의 제2 OS가 상기 제1 OS 로부터 물리적인 CPU 클럭 정보를 수신하는 단계; 및 상기 적어도 하나의 제2 OS 가 수신된 CPU 클럭 정보를 이용하여, 타임 오차를 수정하는 단계;를 포함한다.A time synchronization method of a network function virtualization apparatus according to various embodiments of the present invention includes: performing a time synchronization with a Network Time Protocol (NTP) server periodically by a first OS; At least one second OS performing time synchronization with the first OS; The at least one second OS receiving physical CPU clock information from the first OS; And correcting the time error using the received CPU clock information of the at least one second OS.

상기 제1 OS가 물리적인 CPU 클럭 정보를 저장할 수 있다.The first OS may store physical CPU clock information.

상기 적어도 하나의 제2 OS 가 주기적으로 상기 제1 OS 와 타임 동기화를 수행하는 단계;를 더 포함할 수 있다.And the at least one second OS periodically performs time synchronization with the first OS.

상기 제1 OS가 주기적으로 NTP 서버와 타임 동기화를 수행하는 단계는, 상기 제1 OS에서 구동되는 NTP 클라이언트 프로그램이 NIC(Network Interface Card) 를 통해 상기 NTP 서버와 주기적으로 타임 동기화를 수행할 수 있다.The first OS periodically performs time synchronization with the NTP server, the NTP client program running in the first OS may periodically perform time synchronization with the NTP server through a NIC (Network Interface Card) .

상기 제1 OS 와 타임 동기화를 수행하는 단계는, 상기 적어도 하나의 제2 OS에서 구동되는 NTP 클라이언트 프로그램이 가상 NIC를 통해 상기 제1 OS 에서 구동되는 NTP Daemon 프로그램과 타임 동기화를 수행할 수 있다.The step of performing time synchronization with the first OS may perform time synchronization with an NTP daemon program driven in the first OS through the virtual NIC, wherein the NTP client program running in the at least one second OS is time synchronized with the NTP daemon program running in the first OS.

상기 제1 OS 와 타임 동기화를 수행하는 단계는, 상기 적어도 하나의 제2 OS에서 구동되는 NTP 클라이언트 프로그램이 가상 NIC를 통해, 하이퍼바이저(Hypervisor)의 가상스위치(vSwitch)를 경유하여, 상기 제1 OS 에서 구동되는 NTP Daemon 프로그램과 타임 동기화를 수행할 수 있다.Wherein the step of performing time synchronization with the first OS comprises the steps of: receiving, by the virtual NIC, an NTP client program driven by the at least one second OS via a virtual switch (vSwitch) of a hypervisor; You can perform time synchronization with the NTP daemon program running on the OS.

상기 적어도 하나의 제2 OS가 상기 제1 OS 로부터 물리적인 CPU 클럭 정보를 수신하는 단계는, 상기 적어도 하나의 제2 OS가 하이퍼바이저에 상기 제1 OS의 CPU 클럭 정보를 요청하고, 상기 하이퍼바이저가 상기 제1 OS에 상기 CPU 클럭 정보를 요청함으로써, 상기 CPU 클럭 정보를 수신할 수 있다.Wherein the at least one second OS receives physical CPU clock information from the first OS comprises: the at least one second OS requesting the hypervisor for CPU clock information of the first OS; Can receive the CPU clock information by requesting the CPU OS information to the first OS.

상기 NTP 서버는 상기 가상화 장치 외부에 있을 수 있다.The NTP server may be external to the virtualization device.

상기 제1 OS 는 Host OS 이고, 상기 적어도 하나의 제2 OS는 Guest OS 일 수 있다.The first OS may be a Host OS, and the at least one second OS may be a Guest OS.

또한, 상기 제1 NIC 는 물리적인 NIC 일 수 있다.Also, the first NIC may be a physical NIC.

한편, 본 발명의 일 실시 예에 의한, 네트워크 기능 가상화 장치는 제1 OS;According to an embodiment of the present invention, a network function virtualization apparatus includes a first OS;

적어도 하나의 제2 OS;를 포함하고, 상기 제1 OS는 주기적으로 NTP 서버와 타임 동기화를 수행하고, 상기 적어도 하나의 제2 OS는 상기 제1 OS 와 타임 동기화를 수행하고, 상기 제1 OS 로부터 물리적인 CPU 클럭 정보를 수신하며, 수신된 CPU 클럭 정보를 이용하여, 타임 오차를 수정할 수 있다.Wherein the first OS periodically performs time synchronization with an NTP server, the at least one second OS performs time synchronization with the first OS, and the at least one second OS performs time synchronization with the first OS, And can correct the time error using the received CPU clock information.

상기 제1 OS는 물리적인 CPU 클럭 정보를 저장할 수 있다.The first OS may store physical CPU clock information.

상기 적어도 하나의 제2 OS는 주기적으로 상기 제1 OS 와 타임 동기화를 수행할 수있다.The at least one second OS may periodically perform time synchronization with the first OS.

상기 제1 OS에서 구동되는 NTP 클라이언트 프로그램은, NIC를 통해 상기 NTP 서버와 주기적으로 타임 동기화를 수행할 수 있다.The NTP client program driven by the first OS may periodically perform time synchronization with the NTP server through the NIC.

상기 적어도 하나의 제2 OS에서 구동되는 NTP 클라이언트 프로그램은,Wherein the NTP client program driven by the at least one second OS comprises:

가상 NIC를 통해 상기 제1 OS 에서 구동되는 NTP Daemon 프로그램과 타임 동기화를 수행할 수 있다.And can perform time synchronization with the NTP daemon program driven by the first OS through the virtual NIC.

상기 적어도 하나의 제2 OS에서 구동되는 NTP 클라이언트 프로그램은, 가상 NIC를 통해, 하이퍼바이저(Hypervisor)의 가상스위치(vSwitch)를 경유하여, 상기 제1 OS 에서 구동되는 NTP Daemon 프로그램과 타임 동기화를 수행할 수 있다.The NTP client program running on the at least one second OS performs time synchronization with an NTP daemon program running on the first OS via a virtual switch (vSwitch) of a hypervisor through a virtual NIC can do.

상기 적어도 하나의 제2 OS는 하이퍼바이저에 상기 제1 OS의 CPU 클럭 정보를 요청하고, 상기 하이퍼바이저에 의해 상기 제1 OS에 상기 CPU 클럭 정보가 요청됨으로써, 상기 CPU 클럭 정보를 수신할 수 있다.The at least one second OS requests CPU clock information of the first OS to the hypervisor and the CPU clock information is requested to the first OS by the hypervisor to receive the CPU clock information .

상기 NTP 서버는 상기 가상화 장치 외부에 있을 수 있다.The NTP server may be external to the virtualization device.

상기 제1 OS 는 Host OS 이고, 상기 적어도 하나의 제2 OS는 Guest OS 일 수 있다.The first OS may be a Host OS, and the at least one second OS may be a Guest OS.

상기 제1 NIC 는 물리적인 NIC일 수 있다.The first NIC may be a physical NIC.

한편, 프로세서에 의해 실행되는 것을 통하여 제1항 내지 제10항 중 하나에 기재된 네트워크 기능 가상화 장치의 타임 동기화 방법을 실현하는 것을 특징으로 하는 기록매체에 저장되는 프로그램이 제공될 수 있다.On the other hand, a program stored on a recording medium may be provided, which realizes a time synchronization method of the network function virtualization apparatus according to any one of claims 1 to 10 through being executed by a processor.

또한, 본 프로그램은 기록매체에 저장될 수 있다.In addition, the program can be stored on a recording medium.

상기 본 발명의 양태들은 본 발명의 바람직한 실시예들 중 일부에 불과하며, 본원 발명의 기술적 특징들이 반영된 다양한 실시예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하 상술할 본 발명의 상세한 설명을 기반으로 도출되고 이해될 수 있다.It is to be understood that both the foregoing general description and the following detailed description of the present invention are exemplary and explanatory and are intended to provide further explanation of the invention as claimed. And can be understood and understood.

본 발명의 다양한 실시예에 따라, 아래와 같은 효과가 기대된다. According to various embodiments of the present invention, the following effects are expected.

NTP 서버 또는 Master VM에 부하를 예방하는 네트워크 기능 가상화 장치가 제공됨으로써, 장치 효율성, 네트워크 효율성이 향상될 수 있다.Network capability virtualization devices that prevent load on the NTP server or Master VM are provided, which can improve device efficiency and network efficiency.

가상 머신의 빈번한 타임 동기화 수행 빈도가 줄어듬으로써, 장치 효율성 및 장치 비용성이 향상될 수 있다.By reducing the frequency of frequent time synchronization of virtual machines, device efficiency and device cost can be improved.

본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtained by the present invention are not limited to the above-mentioned effects, and other effects not mentioned can be clearly understood by those skilled in the art from the following description will be.

이하에 첨부되는 도면들은 본 발명에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 본 발명에 대한 실시예들을 제공한다. 다만, 본 발명의 기술적 특징이 특정 도면에 한정되는 것은 아니며, 각 도면에서 개시하는 특징들은 서로 조합되어 새로운 실시예로 구성될 수 있다.
도 1은 네트워크 기능 가상화 장치를 나타내는 도면이다.
도 2는 실시예에 따른 네트워크 기능 가상화 장치의 구조를 나타내는 구성도이다.
도 3은 실시예에 따른 NTP 타임 동기화를 수행하는 방법을 나타내는 흐름도이다.
BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are included to provide a further understanding of the invention and are incorporated in and constitute a part of this specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention. It is to be understood, however, that the technical features of the present invention are not limited to the specific drawings, and the features disclosed in the drawings may be combined with each other to constitute a new embodiment.
1 is a diagram showing a network function virtualization apparatus.
2 is a configuration diagram illustrating a network functional virtualization apparatus according to an embodiment.
3 is a flowchart illustrating a method of performing NTP time synchronization according to an embodiment.

이하, 본 발명의 실시예들이 적용되는 장치 및 다양한 방법들에 대하여 도면을 참조하여 보다 상세하게 설명한다. 이하의 설명에서 사용되는 구성요소에 대한 접미사 "모듈" 및 "부"는 명세서 작성의 용이함만이 고려되어 부여되거나 혼용되는 것으로서, 그 자체로 서로 구별되는 의미 또는 역할을 갖는 것은 아니다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, an apparatus and various methods to which embodiments of the present invention are applied will be described in detail with reference to the drawings. The suffix "module" and " part "for the components used in the following description are given or mixed in consideration of ease of specification, and do not have their own meaning or role.

이상에서, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 캐리어 웨이브 매체 등이 포함될 수 있다.While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiments, it is to be understood that the invention is not limited to the disclosed embodiments. That is, within the scope of the present invention, all of the components may be selectively coupled to one or more of them. In addition, although all of the components may be implemented as one independent hardware, some or all of the components may be selectively combined to perform a part or all of the functions in one or a plurality of hardware. As shown in FIG. The codes and code segments constituting the computer program may be easily deduced by those skilled in the art. Such a computer program can be stored in a computer-readable storage medium, readable and executed by a computer, thereby realizing an embodiment of the present invention. As the storage medium of the computer program, a magnetic recording medium, an optical recording medium, a carrier wave medium, or the like may be included.

실시예의 설명에 있어서, 각 구성 요소의 " 상(위) 또는 하(아래)", "전(앞) 또는 후(뒤)"에 형성되는 것으로 기재되는 경우에 있어, "상(위) 또는 하(아래)" 및"전(앞) 또는 후(뒤)"는 두 개의 구성 요소들이 서로 직접 접촉되거나 하나 이상의 또 다른 구성 요소가 두 개의 구성 요소들 사이에 배치되어 형성되는 것을 모두 포함한다. In the description of the embodiment, in the case of being described as being formed in the "upper or lower", "before" or "after" of each element, (Lower) "and" front or rear "encompass both that the two components are in direct contact with one another or that one or more other components are disposed between the two components.

또한, 이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥 상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.It is also to be understood that the terms such as " comprises, "" comprising," or "having ", as used herein, mean that a component can be implanted unless specifically stated to the contrary. But should be construed as including other elements. All terms, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs, unless otherwise defined. Commonly used terms, such as predefined terms, should be interpreted to be consistent with the contextual meanings of the related art, and are not to be construed as ideal or overly formal, unless expressly defined to the contrary.

또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성 요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성 요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.In describing the components of the present invention, terms such as first, second, A, B, (a), and (b) may be used. These terms are intended to distinguish the constituent elements from other constituent elements, and the terms do not limit the nature, order or order of the constituent elements. When a component is described as being "connected", "coupled", or "connected" to another component, the component may be directly connected to or connected to the other component, It should be understood that an element may be "connected," "coupled," or "connected."

도 2는 실시예에 따른 네트워크 기능 가상화 장치의 구조를 나타내는 구성도이다.2 is a configuration diagram illustrating a network functional virtualization apparatus according to an embodiment.

도 2에 따르면, 네트워크 기능 가상화 장치(100)는 물리적 CPU(110), NIC(120), Host OS(130), Hypervisor(140), 복수의 가상 머신(150, 160)를 포함할 수 있다. 본 명세서에서 설명하지는 않으나, 본 네트워크 기능 가상화 장치(100)는 네트워크 기능 가상화 장치(100)에 필요한 스토리지, 서버 등을 포함한 다양한 구성요소를 포함할 수 있음은 당연하다. 2, the network functional virtualization apparatus 100 may include a physical CPU 110, a NIC 120, a host OS 130, a hypervisor 140, and a plurality of virtual machines 150 and 160. Although not described herein, it should be appreciated that the network functional virtualization apparatus 100 may include various components, including storage, servers, and the like, required for the network functional virtualization apparatus 100.

네트워크 기능 가상화 장치(100)는 외부 NTP 서버(200)와 연결될 수 있다. 외부 NTP(200)서버는 네트워크 타임 프로토콜 서버로, 패킷 교환, 가변 레이턴시(latency) 데이터 네트워크를 통해 컴퓨터 시스템 간 타임 동기화를 위한 네트워크 타임 프로토콜을 지원한다. The network function virtualization apparatus 100 may be connected to an external NTP server 200. [ The external NTP 200 server is a network time protocol server and supports a network time protocol for time synchronization between computer systems over a packet switched, variable latency data network.

네트워크 기능 가상화 장치(100)는 멀티 OS 가 구동될 수 있도록 가상화 기능을 제공할 수 있다. 네트워크 기능 가상화 장치(100)는 장치의 자원(CPU 점유할당량, 메모리 점유할당량 등)을 멀티 OS 가 공유할 수 있도록 가상화 기능을 제공할 수 있다.The network function virtualization apparatus 100 can provide a virtualization function so that the multi OS can be operated. The network function virtualization apparatus 100 can provide the virtualization function so that the resources (the CPU occupation quota, the memory occupation quota, and the like) of the device can be shared by the multi OS.

물리적 CPU(110)는 네트워크 기능 가상화 장치(100)에 포함된 주 제어부이다. 네트워크 기능 가상화 장치(100)에 포함된 구성요소들(가령, 복수의 OS, 하드웨어 장치, 미들웨어, 소프트웨어 등)이 상기 물리적 CPU(110)를 다양한 기법에 의해 점유하고 사용할 수 있다.The physical CPU 110 is a main control unit included in the network function virtualization apparatus 100. (E.g., a plurality of OSs, hardware devices, middleware, software, etc.) included in the network function virtualization apparatus 100 can occupy and use the physical CPU 110 by various techniques.

본 명세서에서 물리적 CPU(110)가 하나인 것으로 설명하나, 복수 개로 구성될 수 있음은 당연하다. 또한, 도 2에서 물리적 CPU(110)가 Host OS(130), NIC(120) 등과 연결된 것으로 도시하였으나, 이에 한정되는 것은 아니다.In this specification, the physical CPU 110 is described as being one, but it is needless to say that the physical CPU 110 may be composed of a plurality of physical CPUs. 2, the physical CPU 110 is connected to the host OS 130, the NIC 120, and the like. However, the present invention is not limited thereto.

NIC(120, Network Interface Card)는 동종 또는 이기종 간의 장치 간에 통신하기 위해 필요한 하드웨어에 해당된다. NIC(120)는 Host OS(130)의 제어에 따라, 외부 NTP 서버(200)와 통신을 수행할 수 있다.A network interface card (NIC) 120 corresponds to the hardware required to communicate between homogeneous or heterogeneous devices. The NIC 120 may communicate with the external NTP server 200 under the control of the host OS 130. [

Host OS(130)는 본 네트워크 기능 가상화 장치(100)를 전체적으로 제어하는 할 수 있다. Host OS(130)는 네트워크 기능 가상화 장치(100)가 가상화 기반을 통해 다양한 네트워크망 구성요소(가령, 가상 라우터, 가상 SGSN/GGSN/PGW/S-GW, 가상 IMS 등)를 이용하도록 제어할 수 있다.The host OS 130 may control the network virtualization apparatus 100 as a whole. The host OS 130 can control the network function virtualization apparatus 100 to use various network network elements (e.g., virtual router, virtual SGSN / GGSN / PGW / S-GW, virtual IMS, etc.) have.

Host OS(130)는 NTP Daemon(132)과 NTP 클라이언트(134) 프로그램을 포함할 수 있다. NTP Daemon(132)은 OS 에서 구동되는 프로그램으로 NTP 을 이용하여 시스템 타임 동기화를 유지(maintenance)할 수 있다. NTP 클라이언트(134)는 NIC(120)를 통해 외부 NTP 서버(200)와 타임 동기화를 수행할 수 있다.The host OS 130 may include an NTP daemon 132 and an NTP client 134 program. The NTP daemon 132 is a program running on the OS and can maintain system time synchronization using NTP. The NTP client 134 may perform time synchronization with the external NTP server 200 via the NIC 120. [

하이퍼바이저(140, Hypervisor)는 한 시스템의 자원(CPU, Memory, Disk 등)을 논리적으로 분배하고 복수개의 논리적 가상머신에 다양한 OS를 상호 연결해 주는 역할을 한다. 가상스위치(145, vSwitch)는 하나의 물리적 NIC를 다수의 가상머신이 가상 NIC를 부여받아 공유해주는 역할을 할 수 있다.The hypervisor (140, Hypervisor) logically distributes resources (CPU, Memory, Disk, etc.) of one system and interconnects various OSs to a plurality of logical virtual machines. The virtual switch 145 (vSwitch) may serve to share one physical NIC with a plurality of virtual machines by receiving a virtual NIC.

이외에도 다른 구성요소가 더 포함될 수 있다. 일 예로, 라이브 마이그레이션(Live Migration)이 더 포함될 수 있고, 상기 라이브 마이그레이션은 물리적 가상화 시스템의 장애 발생, 과부하, 이용률 저조시 중단 없이 서비스를 제공하기 위해 가상머신을 종료하지 않고 다른 물리적 가상화 시스템으로 이동시키는 역할을 할 수 있다.Other components may be further included. For example, a live migration may be included, and the live migration may move to another physical virtualization system without shutting down the virtual machine in order to provide service without disruption, overload, or low usage of the physical virtualization system Can play a role.

복수의 가상 머신(VM, 150, 160)은 컴퓨팅 환경을 소프트웨어로 구현되어, 컴퓨터를 애뮬레이션하는 프로그램이다. 복수의 가상 머신(VM, 150, 160)은 시스템이 허용하는 한 더 구동될 수 있다.A plurality of virtual machines (VMs) 150 and 160 are programs for emulating a computer implemented in software in a computing environment. A plurality of virtual machines (VM, 150, 160) may be driven as long as the system allows.

복수의 가상 머신(VM, 150, 160)은 각각 Guest OS 를 구동시킬 수 있다. Guest OS(152, 162)는 NTP 클라이언트를 구동시킨다.Each of the plurality of virtual machines (VM, 150, 160) can drive the guest OS. The guest OS 152, 162 drives the NTP client.

또한, 복수의 가상 머신(VM, 150, 160)은 가상 CPU(154, 164) 와 가상 NIC(156, 166)을 포함할 수 있다. In addition, the plurality of virtual machines (VM, 150, 160) may include virtual CPUs 154, 164 and virtual NICs 156, 166.

가상 CPU(154, 164)는 물리적 CPU(110)을 기 설정된 기준에 따라 이용할 수 있다. 가상 NIC(156, 164)는 가상 스위치(145)의 제어에 따라 NIC(120)를 공유할 수 있다.The virtual CPUs 154 and 164 can use the physical CPU 110 according to predetermined criteria. The virtual NICs 156 and 164 may share the NIC 120 under the control of the virtual switch 145.

이하에서는, NTP 서버를 이용하여 타임 동기화를 효율적으로 수행하는 방법을 검토하기로 한다.Hereinafter, a method for efficiently performing time synchronization using an NTP server will be described.

도 3은 실시예에 따른 NTP 타임 동기화를 수행하는 방법을 나타내는 흐름도이다. Guest OS(150)는 하나인 것으로 도시되었으나, 복수 개의 Guest OS를 포함할 수 있다.3 is a flowchart illustrating a method of performing NTP time synchronization according to an embodiment. Although the guest OS 150 is shown as one, it may include a plurality of guest OSs.

일단, Host OS(130)가 주기적으로 NTP 서버(200)와 통신도 수행하고, 타임 동기화도 수행하게 된다(S310).The host OS 130 periodically performs communication with the NTP server 200 and performs time synchronization (S310).

Host OS(130)가 네트워크 기능 가상화 장치(100)를 대표하여, NTP 서버(200)와 타임 동기화를 수행하게 된다.The host OS 130 performs time synchronization with the NTP server 200 on behalf of the network function virtualization apparatus 100. [

그러면, Host OS(130)은 하이퍼바이저(140) 및 가상스위치(145)를 통해, 적어도 하나의 Guest OS(150)와 타임 동기화를 수행한다(S320).Then, the host OS 130 performs time synchronization with at least one guest OS 150 through the hypervisor 140 and the virtual switch 145 (S320).

하이퍼바이저(140, Hypervisor) 및 가상 스위치(145)는 한 시스템의 자원(가령, NIC 자원)을 논리적으로 적어도 하나의 Guest OS(150)에 분배할 수 있다.The hypervisor 140 and the virtual switch 145 may logically distribute resources (e.g., NIC resources) of one system to at least one guest OS 150. [

그 다음으로, Host OS(130)는 물리적 CPU 클럭 정보를 적어도 하나의 Guest OS(150)에 전송한다(S330).Next, the host OS 130 transmits the physical CPU clock information to at least one guest OS 150 (S330).

Host OS(130)는 미리 물리적 CPU(110) 클럭 정보를 적절한 저장소에 저장한 후, Guest OS(150)로부터 하이퍼바이저(140)를 통해 해당 CPU 클럭 정보 전송 요청을 받으면, 해당 물리적 CPU(110) 클럭 정보를 수신할 수 있다.The host OS 130 previously stores the physical CPU 110 clock information in the appropriate storage and then receives the CPU clock information transmission request from the guest OS 150 through the hypervisor 140, It is possible to receive clock information.

마지막으로, Guest OS(150)는 수신된 CPU(110) 클럭 정보에 기초하여, 타임 오차를 각 Guest OS 별로 수정할 수 있다.Lastly, the guest OS 150 can correct the time error for each guest OS based on the received CPU 110 clock information.

이에 따라, NTP 서버는 Host OS(130)하고만, 타임 동기화를 수행함으로써, NTP 서버 부하가 예방될 수 있다. 또한, 각 Guest OS(150)도 Host OS(130)와 최초 1회만, 타임 동기화를 수행한 후, CPU(110) 클럭 정보를 이용하여 타임 오차를 수정할 수 있으므로, 종래기술의 기술적 한계를 극복할 수 있다.Accordingly, the NTP server performs the time synchronization only with the Host OS 130, so that the NTP server load can be prevented. Also, since each guest OS 150 can perform time synchronization only once at the first time with the host OS 130 and can correct the time error using the clock information of the CPU 110, it is possible to overcome the technical limit of the prior art .

한편, Guest OS(150) 는 타임 동기화를 수행한 후에도, 수시로 Host OS(130)와 타임 동기화를 수행할 수 있음은 당연하다.It is a matter of course that the guest OS 150 can perform time synchronization with the host OS 130 at any time even after performing the time synchronization.

이하에서는 상술한 각 단계를 보다 상세하게 설명하기로 한다.Hereinafter, each of the above-described steps will be described in detail.

S310 단계(Host OS가 주기적으로 NTP 서버와 타임 동기화를 수행하는 단계)에서, Host OS(130)는 NTP 클라이언트 프로그램이 NIC(120)를 이용하여, NTP 서버(200)와 주기적으로 통신 및 타임 동기화를 수행하도록 제어할 수 있다.The host OS 130 periodically communicates with the NTP server 200 using the NIC 120 in step S310 (step in which the host OS periodically performs time synchronization with the NTP server) As shown in Fig.

또한, S320 단계(적어도 하나의 Guest OS가 Host OS와 타임 동기화를 수행하는 단계)에서, 적어도 하나의 Guest OS(150, 160)는 NTP 클라이언트를 구동시키며, 가상 NIC(156, 166)를 통해, 상기 Host OS(130)에서 구동되는 NTP Daemon(132)과 타임 동기화를 수행한다. 특히, 적어도 하나의 Guest OS(150, 160)는 하이퍼바이저(140)의 가상스위치(145)를 경유하여, 타임 동기화를 수행한다.In step S320 (at least one guest OS performs time synchronization with the host OS), at least one of the guest OSs 150 and 160 drives the NTP client, and through the virtual NICs 156 and 166, And performs time synchronization with the NTP Daemon 132 driven by the Host OS 130. [ In particular, at least one Guest OS 150, 160 performs time synchronization via the virtual switch 145 of the hypervisor 140.

또한, S330 단계(적어도 하나의 Guest OS가 Host OS 로부터 물리적인 CPU 클럭 정보를 수신하는 단계)에서, 적어도 하나의 Guest OS(150, 160)가 하이퍼바이저(140)에 상기 Host OS(130)의 CPU(110) 클럭 정보를 요청하고, 하이퍼바이저(140)가 Host OS(130)에 CPU 클럭 정보를 요청함으로써, 적어도 하나의 Guest OS(150, 160)가 상기 CPU 클럭 정보를 수신할 수 있다.At least one guest OS 150 and 160 are connected to the hypervisor 140 in step S330 (at least one guest OS receives physical CPU clock information from the host OS) At least one of the guest OSs 150 and 160 may receive the CPU clock information by requesting the CPU 110 clock information and the hypervisor 140 requesting the host OS 130 for the CPU clock information.

본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.It will be apparent to those skilled in the art that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. Accordingly, the above description should not be construed in a limiting sense in all respects and should be considered illustrative. The scope of the present invention should be determined by rational interpretation of the appended claims, and all changes within the scope of equivalents of the present invention are included in the scope of the present invention.

상술한 실시예에 따른 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.The method according to the above-described embodiments may be implemented as a program to be executed by a computer and stored in a computer-readable recording medium. Examples of the computer-readable recording medium include a ROM, a RAM, a CD- , A floppy disk, an optical data storage device, and the like, and may also be implemented in the form of a carrier wave (for example, transmission over the Internet).

컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상술한 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 실시예가 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The computer readable recording medium may be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner. And, functional program, code, and code segments for implementing the above-described method can be easily inferred by programmers in the technical field to which the embodiment belongs.

본 발명은 본 발명의 정신 및 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. It will be apparent to those skilled in the art that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof.

따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.Accordingly, the above description should not be construed in a limiting sense in all respects and should be considered illustrative. The scope of the present invention should be determined by rational interpretation of the appended claims, and all changes within the scope of equivalents of the present invention are included in the scope of the present invention.

100 : 네트워크 기능 가상화 장치 100: Network feature virtualization device

Claims (22)

네트워크 기능 가상화 장치의 타임 동기화 방법에 있어서,
제1 OS가 주기적으로 NTP 서버와 타임 동기화를 수행하는 단계;
적어도 하나의 제2 OS가 상기 제1 OS 와 타임 동기화를 수행하는 단계;
상기 적어도 하나의 제2 OS가 상기 제1 OS 로부터 물리적인 CPU 클럭 정보를 수신하는 단계;및
상기 적어도 하나의 제2 OS 가 수신된 CPU 클럭 정보를 이용하여, 타임 오차를 수정하는 단계;를 포함하는, 타임 동기화 방법.
A time synchronization method of a network function virtualization apparatus,
The first OS periodically performing time synchronization with an NTP server;
At least one second OS performing time synchronization with the first OS;
The at least one second OS receiving physical CPU clock information from the first OS;
And modifying the time error using the at least one second OS received CPU clock information.
제1항에 있어서,
상기 제1 OS가 물리적인 CPU 클럭 정보를 저장하는 단계;를 더 포함하는, 타임 동기화 방법.
The method according to claim 1,
And storing the physical CPU clock information in the first OS.
제1항에 있어서,
상기 적어도 하나의 제2 OS 가 주기적으로 상기 제1 OS 와 타임 동기화를 수행하는 단계;를 더 포함하는, 타임 동기화 방법.
The method according to claim 1,
Wherein the at least one second OS periodically performs time synchronization with the first OS.
제1항에 있어서,
상기 NTP 서버와 타임 동기화를 수행하는 단계는,
상기 제1 OS에서 구동되는 NTP 클라이언트 프로그램이 NIC(Network Interface Card) 를 통해 NTP(Network Time Protocol) 서버와 주기적으로 타임 동기화를 수행하는, 타임 동기화 방법.
The method according to claim 1,
Performing time synchronization with the NTP server comprises:
Wherein the NTP client program running in the first OS periodically performs time synchronization with an NTP (Network Time Protocol) server through a NIC (Network Interface Card).
제1항에 있어서,
상기 제1 OS 와 타임 동기화를 수행하는 단계는,
상기 적어도 하나의 제2 OS에서 구동되는 NTP 클라이언트 프로그램이 가상 NIC를 통해 상기 제1 OS 에서 구동되는 NTP Daemon 프로그램과 타임 동기화를 수행하는, 타임 동기화 방법.
The method according to claim 1,
Wherein the step of performing time synchronization with the first OS comprises:
Wherein the NTP client program running in the at least one second OS performs time synchronization with an NTP daemon program running in the first OS through the virtual NIC.
제5항에 있어서,
상기 제1 OS 와 타임 동기화를 수행하는 단계는,
상기 적어도 하나의 제2 OS에서 구동되는 NTP 클라이언트 프로그램이 가상 NIC를 통해, 하이퍼바이저(Hypervisor)의 가상스위치(vSwitch)를 경유하여, 상기 제1 OS 에서 구동되는 NTP Daemon 프로그램과 타임 동기화를 수행하는, 타임 동기화 방법.
6. The method of claim 5,
Wherein the step of performing time synchronization with the first OS comprises:
The NTP client program running on the at least one second OS performs time synchronization with the NTP daemon program running on the first OS via the virtual switch of the hypervisor via the virtual NIC , Time synchronization method.
제1항에 있어서,
상기 물리적인 CPU 클럭 정보를 수신하는 단계는,
상기 적어도 하나의 제2 OS가 하이퍼바이저에 상기 제1 OS의 CPU 클럭 정보를 요청하고, 상기 하이퍼바이저가 상기 제1 OS에 상기 CPU 클럭 정보를 요청함으로써, 상기 CPU 클럭 정보를 수신하는, 타임 동기화 방법.
The method according to claim 1,
Wherein the step of receiving the physical CPU clock information comprises:
Wherein the at least one second OS requests CPU clock information of the first OS to the hypervisor and the hypervisor requests the CPU clock information to the first OS to receive the CPU clock information, Way.
제1항에 있어서,
상기 NTP 서버는 상기 가상화 장치 외부에 있는, 타임 동기화 방법.
The method according to claim 1,
Wherein the NTP server is external to the virtualization device.
제1항에 있어서,
상기 제1 OS 는 Host OS 이고, 상기 적어도 하나의 제2 OS는 Guest OS 인, 타임 동기화 방법.
The method according to claim 1,
Wherein the first OS is a Host OS and the at least one second OS is a Guest OS.
제4항에 있어서,
상기 NIC 는 물리적인 NIC인, 타임 동기화 방법.
5. The method of claim 4,
Wherein the NIC is a physical NIC.
네트워크 기능 가상화 장치에 있어서,
제1 OS;
적어도 하나의 제2 OS;
제1 OS가 주기적으로 NTP 서버와 타임 동기화를 수행하고,
상기 적어도 하나의 제2 OS가 상기 제1 OS 와 타임 동기화를 수행하며,
상기 적어도 하나의 제2 OS가 상기 제1 OS 로부터 물리적인 CPU 클럭 정보를 수신하고,
상기 적어도 하나의 제2 OS 가 수신된 CPU 클럭 정보를 이용하여, 타임 오차를 수정하는, 네트워크 기능 가상화 장치.
In a network function virtualization apparatus,
A first OS;
At least one second OS;
The first OS periodically performs time synchronization with the NTP server,
Wherein the at least one second OS performs time synchronization with the first OS,
Wherein the at least one second OS receives physical CPU clock information from the first OS,
And the at least one second OS corrects the time error using the received CPU clock information.
제11항에 있어서,
상기 제1 OS가 물리적인 CPU 클럭 정보를 저장하는, 네트워크 기능 가상화 장치.
12. The method of claim 11,
Wherein the first OS stores physical CPU clock information.
제11항에 있어서,
상기 적어도 하나의 제2 OS 가 주기적으로 상기 제1 OS 와 타임 동기화를 수행하는, 네트워크 기능 가상화 장치.
12. The method of claim 11,
Wherein the at least one second OS periodically performs time synchronization with the first OS.
제11항에 있어서,
상기 제1 OS에서 구동되는 NTP 클라이언트 프로그램이 NIC(Network Interface Card) 를 통해 NTP(Network Time Protocol) 서버와 주기적으로 타임 동기화를 수행하는, 네트워크 기능 가상화 장치.
12. The method of claim 11,
Wherein the NTP client program running in the first OS periodically performs time synchronization with an NTP (Network Time Protocol) server through a NIC (Network Interface Card).
제11항에 있어서,
상기 적어도 하나의 제2 OS에서 구동되는 NTP 클라이언트 프로그램이 가상 NIC를 통해 상기 제1 OS 에서 구동되는 NTP Daemon 프로그램과 타임 동기화를 수행하는, 네트워크 기능 가상화 장치.
12. The method of claim 11,
Wherein the NTP client program driven by the at least one second OS performs time synchronization with an NTP daemon program driven by the first OS through the virtual NIC.
제15항에 있어서,
상기 적어도 하나의 제2 OS에서 구동되는 NTP 클라이언트 프로그램이 가상 NIC를 통해, 하이퍼바이저(Hypervisor)의 가상스위치(vSwitch)를 경유하여, 상기 제1 OS 에서 구동되는 NTP Daemon 프로그램과 타임 동기화를 수행하는, 네트워크 기능 가상화 장치.
16. The method of claim 15,
The NTP client program running on the at least one second OS performs time synchronization with the NTP daemon program running on the first OS via the virtual switch of the hypervisor via the virtual NIC , Network function virtualization device.
제11항에 있어서,
상기 적어도 하나의 제2 OS가 하이퍼바이저에 상기 제1 OS의 CPU 클럭 정보를 요청하고, 상기 하이퍼바이저가 상기 제1 OS에 상기 CPU 클럭 정보를 요청함으로써, 상기 CPU 클럭 정보를 수신하는, 네트워크 기능 가상화 장치.
12. The method of claim 11,
Wherein the at least one second OS requests CPU clock information of the first OS to the hypervisor and the hypervisor requests the CPU clock information to the first OS, Virtualization device.
제11항에 있어서,
상기 NTP 서버는 상기 가상화 장치 외부에 있는, 네트워크 기능 가상화 장치.
12. The method of claim 11,
Wherein the NTP server is external to the virtualization device.
제11항에 있어서,
상기 제1 OS 는 Host OS 이고, 상기 적어도 하나의 제2 OS는 Guest OS 인, 네트워크 기능 가상화 장치.
12. The method of claim 11,
Wherein the first OS is a Host OS, and the at least one second OS is a Guest OS.
제14항에 있어서,
상기 NIC 는 물리적인 NIC인, 네트워크 기능 가상화 장치.
15. The method of claim 14,
Wherein the NIC is a physical NIC.
프로세서에 의해 실행되는 것을 통하여 제1항 내지 제10항 중 하나에 기재된 네트워크 기능 가상화 장치의 타임 동기화 방법을 실현하는 것을 특징으로 하는 기록매체에 저장되는 프로그램.10. A program stored in a recording medium, characterized by realizing a time synchronization method of a network function virtualization apparatus according to any one of claims 1 to 10 through being executed by a processor. 제21항에 기재된 프로그램이 기록된 기록매체.A recording medium on which the program according to claim 21 is recorded.
KR1020150099611A 2015-07-14 2015-07-14 Network function virtual apparatus and method for syncronizing time the same KR102500223B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020150099611A KR102500223B1 (en) 2015-07-14 2015-07-14 Network function virtual apparatus and method for syncronizing time the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150099611A KR102500223B1 (en) 2015-07-14 2015-07-14 Network function virtual apparatus and method for syncronizing time the same

Publications (2)

Publication Number Publication Date
KR20170008435A true KR20170008435A (en) 2017-01-24
KR102500223B1 KR102500223B1 (en) 2023-02-15

Family

ID=57993138

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150099611A KR102500223B1 (en) 2015-07-14 2015-07-14 Network function virtual apparatus and method for syncronizing time the same

Country Status (1)

Country Link
KR (1) KR102500223B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080022080A (en) * 2005-05-23 2008-03-10 마이크로소프트 코포레이션 Resource management via periodic distributed time
KR20110079872A (en) * 2008-05-02 2011-07-11 노텔 네트웍스 리미티드 Method and apparatus for time and frequency transfer in communication networks
KR20130054457A (en) * 2008-06-17 2013-05-24 퀄컴 인코포레이티드 Self-positioning access points

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20080022080A (en) * 2005-05-23 2008-03-10 마이크로소프트 코포레이션 Resource management via periodic distributed time
KR20110079872A (en) * 2008-05-02 2011-07-11 노텔 네트웍스 리미티드 Method and apparatus for time and frequency transfer in communication networks
KR20130054457A (en) * 2008-06-17 2013-05-24 퀄컴 인코포레이티드 Self-positioning access points

Also Published As

Publication number Publication date
KR102500223B1 (en) 2023-02-15

Similar Documents

Publication Publication Date Title
EP3519933B1 (en) Virtualizing non-volatile storage at a peripheral device
CN107534579B (en) System and method for resource management
US9197489B1 (en) Live migration of virtual machines in a hybrid network environment
US9164795B1 (en) Secure tunnel infrastructure between hosts in a hybrid network environment
US9031081B2 (en) Method and system for switching in a virtualized platform
JP6055310B2 (en) Virtual memory target offload technology
US9268590B2 (en) Provisioning a cluster of distributed computing platform based on placement strategy
US9229759B2 (en) Virtual machine provisioning using replicated containers
US9582221B2 (en) Virtualization-aware data locality in distributed data processing
US9225596B2 (en) Undifferentiated service domains
CN104115121B (en) The system and method that expansible signaling mechanism is provided virtual machine (vm) migration in middleware machine environment
US9176767B2 (en) Network interface card device pass-through with multiple nested hypervisors
US20180210752A1 (en) Accelerator virtualization method and apparatus, and centralized resource manager
US9350682B1 (en) Compute instance migrations across availability zones of a provider network
US9928107B1 (en) Fast IP migration in a hybrid network environment
US12056513B2 (en) Virtual machine migration using multiple, synchronized streams of state data transferring via file descriptors
US20210168092A1 (en) Using edge-optimized compute instances to execute user workloads at provider substrate extensions
JP2019512967A (en) Method and server for controlling relocation of MEC application
US20130086298A1 (en) Live Logical Partition Migration with Stateful Offload Connections Using Context Extraction and Insertion
WO2015062339A1 (en) Method and device for running remote application program
JP2014501977A (en) Asynchronous virtual machine replication
WO2013049991A1 (en) Network adapter hardware state migration discovery in a stateful environment
US11875174B2 (en) Method and apparatus for virtual machine emulator upgrading virtualization emulator
CN106354559A (en) Method and device for processing cloud desktop resources
US9021478B1 (en) Provisioning virtual machines from template by splitting and building index for locating content portions via content-centric network

Legal Events

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