KR20150079391A - Method and apparatus for network virtualization - Google Patents

Method and apparatus for network virtualization Download PDF

Info

Publication number
KR20150079391A
KR20150079391A KR1020140136067A KR20140136067A KR20150079391A KR 20150079391 A KR20150079391 A KR 20150079391A KR 1020140136067 A KR1020140136067 A KR 1020140136067A KR 20140136067 A KR20140136067 A KR 20140136067A KR 20150079391 A KR20150079391 A KR 20150079391A
Authority
KR
South Korea
Prior art keywords
tunnel
packet
domain
end point
virtual
Prior art date
Application number
KR1020140136067A
Other languages
Korean (ko)
Other versions
KR102236195B1 (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 JP2014263468A priority Critical patent/JP2015128295A/en
Priority to US14/583,303 priority patent/US10020961B2/en
Publication of KR20150079391A publication Critical patent/KR20150079391A/en
Application granted granted Critical
Publication of KR102236195B1 publication Critical patent/KR102236195B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling

Landscapes

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

Abstract

Disclosed are a method and an apparatus for virtualizing a network. According to an embodiment of the present invention, the apparatus includes: a tunnel management unit which collects tunnel end point information of a virtual network and connects each tunnel end point with a tunnel based on the collected tunnel end point information; a tunnel packet end unit which receives a tunnel packet, processes the packet to be capable of L2 switching and transmits the packet to virtual switching instance (VSI); a domain VSI which executes the L2 switching on the packet having been processed for the L2 switching and transmits the packet to a tunnel packet generation unit; and the tunnel packet generation unit that generates a new tunnel packet by adding a tunnel header to the packet on which the L2 switching has been executed and transmits the new tunnel packet.

Description

네트워크 가상화 방법 및 장치{METHOD AND APPARATUS FOR NETWORK VIRTUALIZATION}[0001] METHOD AND APPARATUS FOR NETWORK VIRTUALIZATION [0002]

본 발명은 네트워크에 관한 것으로써 보다 상세하게는 멀티 도메인 네트워크 가상화 방법 및 장치에 관한 것이다.The present invention relates to networks, and more particularly, to a method and apparatus for multi-domain network virtualization.

최근 IT(information technology) 추세는 서버 가상화, 가상 머신(virtual machine, VM) 기반의 컴퓨팅, IT 자원의 데이터 센터 집중, 그리고 네트워크의 가상화(network virtualization)이다. 네트워크 가상화는 물리 네트워크 위에 필요에 따라 다수의 가상 네트워크를 생성하고 삭제를 가능하게 하는 기술로써 가상 머신 사이의 네트워크 구성을 위해 주로 활용될 수 있다. 일반적으로 사용되는 오버레이(overlay) 기반 가상 네트워크는 하나의 2 계층 네트워크로써 하부의 3계층 네트워크 위에 오버레이 방식으로 구현될 수 있다. 오버레이 기반의 가상 네트워크에서는 가상 머신에서 주고 받는 2계층 이더넷 프레임에 3계층 IP(internet protocol) 헤더를 붙이는 터널링을 수행할 수 있다.Recent trends in information technology are server virtualization, virtual machine (VM) -based computing, data center concentration of IT resources, and network virtualization. Network virtualization is a technology that enables creation and deletion of multiple virtual networks as needed on a physical network, and can be utilized mainly for network configuration between virtual machines. A commonly used overlay-based virtual network may be implemented as an overlay scheme over a lower three-tier network as a two-tier network. In an overlay-based virtual network, tunneling can be performed by attaching a 3-layer IP (internet protocol) header to a 2-layer Ethernet frame to be exchanged in a virtual machine.

대표적인 오버레이 기반의 네트워크 가상화는 VXLAN(virtual extensible local area network)과 NVGRE(network virtualization using generic routing encapsulation)가 있다. VXLAN과 NVGRE는 서버 간에 터널을 연결해서 가상 2계층 네트워크를 만들 수 있다.이를 위해서는 서버나 게이트웨이에서 구현되는 터널 종단점(TEP:Tunnel End Point) 간에 풀-메쉬(full-mesh) 터널을 설정해야 한다. N개 터널 종단점 사이에 풀-매쉬 터널을 설정한다면 Nx(N-1)개의 터널이 필요하다. 따라서, 확장성에 제약을 받을 수 밖에 없기 때문에 VXLAN이나 NVGRE를 적용할 수 있는 네트워크 크기(네트워크 노드 수)에 제약이 생길 수 있다는 문제점이 있다. Typical overlay-based network virtualization is virtual extensible local area network (VXLAN) and network virtualization using generic routing encapsulation (NVGRE). VXLAN and NVGRE can create a virtual two-tier network by connecting tunnels between servers, which requires a full-mesh tunnel between the tunnel endpoints (TEP) implemented in the server or gateway . If you set up a full-mesh tunnel between N tunnel endpoints, you need Nx (N-1) tunnels. Therefore, there is a problem in that there is a restriction on the network size (number of network nodes) to which VXLAN or NVGRE can be applied because it is restricted by the scalability.

구체적으로, N이 크면 설정의 복잡도가 급격히 증가하고, 터널 종단점에서 설정이 가능한 터널 수의 제약, 하나의 네트워크 가상화 매니저(Network Virtualization Manager)가 관리할 수 있는 터널의 수의 제약 등 때문에 네트워크 가상화 도메인은 적정 규모 이하가 되어야 한다. 이러한 이유로 인해 일반적으로 하나의 네트워크 가상화 도메인은 하나의 IDC(Internet Data Center) 이내에 국한되기 쉽다. 그런데 지리적으로 떨어진 복수개의 IDC에 걸친 가상 네트워크의 필요성이 존재하나, 기존의 네트워크 가상화 방식으로는 확장성이 부족하기 때문에 이러한 요구사항을 지원하기가 쉽지 않다는 문제점이 있다.Specifically, if N is large, the complexity of the setting increases sharply, the number of tunnels that can be set at tunnel end points, the limitation of the number of tunnels that can be managed by one network virtualization manager, Should be below the appropriate scale. For this reason, one network virtualization domain is generally confined within a single Internet Data Center (IDC). However, there is a need for a virtual network over a plurality of geographically separated IDCs. However, there is a problem in that it is not easy to support these requirements because the existing network virtualization method lacks scalability.

본 발명은 오버레이 기반의 가상 네트워크에 대해 확장성을 제공하는 방법 및 장치를 제공하는데 그 목적이 있다. It is an object of the present invention to provide a method and apparatus for providing scalability to an overlay-based virtual network.

본 발명의 일 실시예에 따른 네트워크 가상화 장치는, 가상 네트워크의 터널 종단점 정보를 수집하고, 상기 수집한 터널 종단점 정보를 바탕으로 각 터널 종단점과 터널을 연결하는 터널 관리부, 터널 패킷을 수신하여 L2 스위칭을 할 수 있도록 패킷을 처리하여 도메인 VSI(virtual switching instance)로 전달하는 터널 패킷 종단부, 상기 L2 스위칭을 할 수 있도록 처리된 패킷에 대하여 L2 스위칭을 수행하여 터널 패킷 생성부로 전달하는 도메인 VSI 및 상기 L2 스위칭을 수행한 패킷에 대하여 터널 헤더를 추가하여 새로운 터널 패킷을 생성하고, 상기 새로운 터널 패킷을 전송하는 터널 패킷 생성부를 포함하는 것을 특징으로 한다. A network virtualization apparatus according to an embodiment of the present invention includes a tunnel management unit for collecting tunnel end point information of a virtual network and connecting tunnel end points to each tunnel based on the collected tunnel end point information, A domain VSI for performing L2 switching on a packet processed to be able to perform the L2 switching and delivering it to a tunnel packet generating unit; And a tunnel packet generator for generating a new tunnel packet by adding a tunnel header to the packet that has undergone L2 switching and transmitting the new tunnel packet.

본 발명의 다른 실시예에 따른 네트워크 가상화 장치의 동작 방법은, 가상 네트워크의 터널 종단점 정보를 수집하고, 상기 수집한 터널 종단점 정보를 바탕으로 각 터널 종단점과 터널을 연결하는 단계, 터널 패킷을 수신하여 L2 스위칭을 할 수 있도록 패킷을 처리하는 단계, 상기 L2 스위칭을 할 수 있도록 처리된 패킷에 대하여 L2 스위칭을 수행하는 단계 및 상기 L2 스위칭을 수행한 패킷에 대하여 터널 헤더를 추가하여 새로운 터널 패킷을 생성하고, 상기 새로운 터널 패킷을 전송하는 단계를 수행하는 것을 특징으로 한다. According to another aspect of the present invention, there is provided a method of operating a network virtualization apparatus, the method including collecting tunnel endpoint information of a virtual network, connecting tunnel endpoints to each tunnel endpoint based on the collected tunnel endpoint information, Performing L2 switching on the processed packet so that L2 switching can be performed, and adding a tunnel header to the L2 switched packet to generate a new tunnel packet And transmitting the new tunnel packet.

본 발명의 또다른 실시예에 따른 네트워크 가상화 방법은, 도메인 터널 종단점과 적어도 하나 이상의 에지 터널 종단점으로 구성된 네트워크 가상 도메인을 적어도 두 개 이상 생성하는 단계 및 상기 각 네트워크 가상 도메인의 터널 종단점 간에 L3 터널을 이용하여 풀-메쉬(full-mesh)로 연결하는 단계를 포함하고, 상기 도메인 터널 종단점과 상기 적어도 하나 이상의 에지 터널 종단점은 L3 터널을 기반으로 연결되는 것을 특징으로 한다.According to another aspect of the present invention, there is provided a method for network virtualization, the method comprising: generating at least two network virtual domains each comprising a domain tunnel end point and at least one edge tunnel end point; and creating an L3 tunnel between the tunnel end points of each network virtual domain Wherein the domain tunnel end point and the at least one edge tunnel end point are connected based on an L3 tunnel.

상술한 바와 같이 본 발명의 실시예에 따른 멀티 도메인 네트워크 가상화 방법 및 장치를 사용함으로써 L3 터널로 구성하는 오버레이 기반 가상 네트워크에서 확장성을 제공할 수 있다. 본 발명의 실시예에 따르면, 풀-메쉬(full-mesh) 터널 방식으로 만들 수 있는 적정 규모의 네트워크 가상화 도메인(domain)을 복수 개 만들고, 각 도메인마다 도메인 터널 종단점(Domain Tunnel End Point)을 두고, 도메인 터널 종단점 간의 풀-메쉬 연결을 추가하는 것만으로 다수의 도메인을 통합한 대규모의 하나의 네트워크 가상화 도메인을 만들 수 있다. 이를 통해 네트워크 가상화 도메인에 필요한 터널의 수를 크게 줄여 대규모의 네트워크 가상화 도메인을 구축할 수 있다.As described above, the multi-domain network virtualization method and apparatus according to the embodiment of the present invention can provide scalability in an overlay-based virtual network constituted by an L3 tunnel. According to an embodiment of the present invention, a plurality of network virtualization domains of an appropriate scale that can be created in a full-mesh tunnel manner are created, and a domain tunnel end point is set for each domain , You can create a single large network virtualization domain that consolidates multiple domains by adding a full-mesh connection between domain tunnel endpoints. This can significantly reduce the number of tunnels needed for a network virtualization domain to build a large network virtualization domain.

도 1은 본 발명의 실시예에 따른 네트워크 가상화 방법을 나타낸 개념도이다.
도 2a, 2b 및 2c는 본 발명의 실시예에 따른 패킷을 나타낸 개념도이다.
도 3은 본 발명의 실시예에 따른 도메인 터널 종단점을 나타낸 개념도이다.
도 4는 본 발명의 실시예에 따른 도메인 터널 종단점에서의 패킷 처리 과정을 나타낸 순서도이다.
도 5는 본 발명의 실시예에 따른 도메인 VSI에서 수행되는 L2 스위칭을 나타낸 순서도이다.
도 6a 및 도6b는 본 발명의 실시예에 따른 도메인 VSI에서의 플로딩을 나타낸 개념도이다.
1 is a conceptual diagram illustrating a network virtualization method according to an embodiment of the present invention.
2A, 2B and 2C are conceptual diagrams showing packets according to an embodiment of the present invention.
3 is a conceptual diagram illustrating a domain tunnel end point according to an embodiment of the present invention.
4 is a flowchart illustrating a packet processing process at a domain tunnel end point according to an embodiment of the present invention.
5 is a flowchart illustrating L2 switching performed in a domain VSI according to an embodiment of the present invention.
6A and 6B are conceptual diagrams illustrating flooding in a domain VSI according to an embodiment of the present invention.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. It should be understood, however, that the invention is not intended to be limited to the particular embodiments, but includes all modifications, equivalents, and alternatives falling within the spirit and scope of the invention. Like reference numerals are used for like elements in describing each drawing.

제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another. For example, without departing from the scope of the present invention, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다거나 "직접 접속되어"있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.It is to be understood that when an element is referred to as being "connected" or "connected" to another element, it may be directly connected or connected to the other element, . On the other hand, when an element is referred to as being "directly connected" or "directly connected" to another element, it should be understood that there are no other elements in between.

본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terminology used in this application is used only to describe a specific embodiment and is not intended to limit the invention. The singular expressions include plural expressions unless the context clearly dictates otherwise. In the present application, the terms "comprises" or "having" and the like are used to specify that there is a feature, a number, a step, an operation, an element, a component or a combination thereof described in the specification, But do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, or combinations thereof.

이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하, 도면상의 동일한 구성 요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성 요소에 대해서 중복된 설명은 생략한다.
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. Hereinafter, the same reference numerals will be used for the same constituent elements in the drawings, and redundant explanations for the same constituent elements will be omitted.

도 1은 본 발명의 실시예에 따른 네트워크 가상화 방법을 나타낸 개념도이다. 1 is a conceptual diagram illustrating a network virtualization method according to an embodiment of the present invention.

도 1에서는 오버레이 L3 터널 방식으로 구현이 가능한 적정 규모를 가진 복수개의 네트워크 가상화 도메인(network virtualization domain)(110, 120, 130, 140)을 상호 간에 연결하여 하나의 상위 네트워크 가상화 도메인으로 만드는 방법에 대해 게시한다.FIG. 1 illustrates a method for connecting a plurality of network virtualization domains 110, 120, 130, and 140 having a proper scale that can be implemented by the overlay L3 tunneling method to one upper network virtualization domain Post.

도 1을 참조하면, 복수개의 네트워크 가상화 도메인(110, 120, 130, 140) 상호간에 연결이 될 수 있다. 각각의 네트워크 가상화 도메인(110, 120, 130, 140)은 복수개의 에지 터널 종단점(Edge Tunnel End Point)(113, 123, 133, 143) 및 적어도 하나의 도메인 터널 종단점(Domain Tunnel End Point)(116, 126, 136, 146)을 포함할 수 있다. 네트워크 가상화 관리부(network virtualization manager)(100)는 각각의 네트워크 가상화 도메인에 에지 터널 종단점 및 도메인 터널 종단점을 설정하고 관리하기 위해 구현될 수 있다. 네트워크 관리 가상화 관리부(100)를 기반으로 본 발명의 실시예에 따른 멀티 도메인 네트워크 가상화가 수행될 수 있다. 구체적으로 네트워크 가상화 관리부(또는 네트워크 가상화 장치)는 프로세서를 기반으로 각각의 네트워크 가상화 도메인을 설정하여 멀티 도메인 네트워크의 가상화를 수행할 수 있다.Referring to FIG. 1, a plurality of network virtualization domains 110, 120, 130, and 140 may be connected to each other. Each of the network virtualization domains 110, 120, 130 and 140 includes a plurality of edge tunnel end points 113, 123, 133 and 143 and at least one domain tunnel end point 116 , 126, 136, 146). A network virtualization manager 100 may be implemented to establish and manage edge tunnel endpoints and domain tunnel endpoints in each network virtualization domain. The multi-domain network virtualization according to the embodiment of the present invention can be performed based on the network management virtualization management unit 100. [ Specifically, the network virtualization manager (or the network virtualization apparatus) can perform virtualization of the multi-domain network by setting each network virtualization domain based on the processor.

에지 터널 종단점(113, 123, 133, 143)은 가상 머신을 가진 서버나 레거시 망을 연결해주는 게이트웨이에 해당하며 기존의 오버레이 기반 네트워크 가상화 방식에서의 터널 종단점을 지시할 수 있다. 예를 들어, VXLAN에서는 VTEP(VXLAN Tunnel End Point)이 에지 터널 종단점(113, 123, 133, 143)일 수 있다. 하나의 네트워크 가상화 도메인에서 에지 터널 종단점(113, 123, 133, 143) 간은 풀-메쉬로 유니캐스트 터널을 기반으로 연결될 수 있다.The edge tunnel endpoints 113, 123, 133, and 143 correspond to a server having a virtual machine or a gateway connecting a legacy network, and can indicate a tunnel end point in an existing overlay-based network virtualization method. For example, in VXLAN VTEX (VXLAN Tunnel End Point) may be edge tunnel endpoints 113, 123, 133, 143. In one network virtualization domain, the edge tunnel endpoints 113, 123, 133, and 143 may be connected based on a unicast tunnel to a full-mesh.

본 발명의 실시예에 따르면, 오버레이 L3 터널 방식으로 만들 수 있는 적정 규모의 네트워크 가상화 도메인 각각(110, 120, 130, 140)에 도메인 터널 종단점(116, 126, 136, 146)을 구현하여 네트워크를 가상화할 수 있다. 도메인 터널 종단점(116, 126, 136, 146)은 네트워크 가상화 도메인(110, 120, 130, 140) 내의 모든 에지 터널 종단점(113, 123, 133, 143)과 각각 터널로 연결될 수 있다. 그리고 네트워크 가상화 도메인(110, 120, 130, 140) 각각의 도메인 터널 종단점(116, 126, 136, 146) 간에도 풀-메쉬로 L3 터널이 설정될 수 있다.In accordance with an embodiment of the present invention, domain tunnel endpoints 116, 126, 136, and 146 are implemented in each of the appropriate sized network virtualization domains 110, 120, 130, It can be virtualized. The domain tunnel endpoints 116, 126, 136 and 146 may be tunneled to all edge tunnel endpoints 113, 123, 133 and 143 within the network virtualization domains 110, 120, 130 and 140, respectively. Also, an L3 tunnel can be established between the domain tunnel endpoints 116, 126, 136, and 146 of each of the network virtualization domains 110, 120, 130, and 140 in a full-mesh manner.

각각의 터널은 모두 같은 구조이며, 터널링된 패킷 구조는 에지 터널 종단점에서 에지 터널 종단점으로 전달되는 패킷, 에지 터널 종단점에서 도메인 터널 종단점으로 전달되는 패킷, 도메인 터널 종단점에서 도메인 터널 종단점으로 전달되는 패킷이 존재할 수 있다. 아래의 도 2에서는 각 종단점에서 전달되는 패킷에 대해 게시한다.
Each of the tunnels has the same structure. The tunneled packet structure includes a packet transmitted from the edge tunnel end point to the edge tunnel end point, a packet transmitted from the edge tunnel end point to the domain tunnel end point, a packet transmitted from the domain tunnel end point to the domain tunnel end point Can exist. In Fig. 2 below, the packets transmitted from the respective end points are posted.

도 2a, 2b 및 2c는 본 발명의 실시예에 따른 패킷을 나타낸 개념도이다. 2A, 2B and 2C are conceptual diagrams showing packets according to an embodiment of the present invention.

도 2의 (a)는 에지 터널 종단점에서 다른 에지 터널 종단점으로 전달되는 패킷, 도 2의 (b)는 에지 터널 종단점에서 도메인 터널 종단점으로 전달되는 패킷, 도 2의 (c)는 도메인 터널 종단점에서 다른 도메인 터널 종단점으로 전달되는 패킷을 지시한다.FIG. 2 (a) shows a packet transmitted from an edge tunnel end point to another edge tunnel end point, FIG. 2 (b) shows a packet transmitted from the edge tunnel end point to the domain tunnel end point, Indicates packets to be forwarded to other domain tunnel endpoints.

도 2를 참조하면, 모든 터널 패킷은 오리지널 패킷(original packet)과 터널 헤더(tunnel header)를 포함할 수 있다. 오리지널 패킷은 L2 계층으로 인한 L2 헤더, L3 계층으로 인한 L3 헤더 및 전송되는 데이터가 포함되는 페이로드를 포함할 수 있다.Referring to FIG. 2, all the tunnel packets may include an original packet and a tunnel header. The original packet may include an L2 header due to the L2 layer, an L3 header due to the L3 layer, and a payload including the data to be transmitted.

터널 헤더는 오리지널 패킷에 포함된 L2 헤더의 전단에 패킷이 속한 가상 네트워크를 의미하는 VNID(Virtual Network Identifier)를 담은 VN 헤더를 포함할 수 있다. 터널 헤더는 VN 헤더 앞에 L3 터널 헤더를 포함할 수 있다. L3 터널 헤더는 L3 DA(destination address) 헤더 및 L3 SA(source address) 헤더를 포함할 수 있다.The tunnel header may include a VN header containing a VNID (Virtual Network Identifier) indicating a virtual network to which the packet belongs in the preceding stage of the L2 header included in the original packet. The tunnel header may include an L3 tunnel header before the VN header. The L3 tunnel header may include an L3 DA (destination address) header and an L3 SA (source address) header.

도 2의 (a)를 참조하면, 에지 터널 종단점 간 패킷의 경우, L3 터널 헤더는 L3 SA 헤더는 오리지널 패킷을 송신한 에지 터널 종단점의 L3 주소, L3 DA 헤더는 오리지널 패킷을 수신한 에지 터널 종단점의 L3 주소를 포함할 수 있다. 즉, L3 DA 헤더는 오리지널 패킷의 실제 목적 호스트와 연결된 목적지 에지 터널 종단점의 L3 주소를 포함할 수 있다.Referring to FIG. 2A, in the case of a packet between the edge tunnel end points, the L3 SA header includes the L3 address of the edge tunnel end point that transmitted the original packet, the L3 DA header represents the edge tunnel end point Lt; RTI ID = 0.0 > L3 < / RTI > That is, the L3 DA header may include the L3 address of the destination edge tunnel end point connected to the actual destination host of the original packet.

도 2의 (b)를 참조하면, 에지 터널 종단점에서 도메인 터널 종단점으로 향하는 패킷의 경우, L3 SA 헤더는 패킷을 송신한 에지 터널 종단점의 L3 주소를 포함하고 L3 DA 헤더는 패킷이 전송되는 도메인 터널 종단점의 L3 주소를 포함할 수 있다.Referring to FIG. 2B, in the case of a packet destined for the domain tunnel end point at the edge tunnel end point, the L3 SA header includes the L3 address of the edge tunnel end point that transmitted the packet, and the L3 DA header includes the domain tunnel It may contain the L3 address of the endpoint.

도 2의 (c)를 참조하면, 도메인 터널 종단점 간에 주고 받는 패킷의 경우, 패킷의 L3 SA 헤더는 패킷을 전송하는 도메인 터널 종단점의 L3 주소를 포함하고, L3 DA 헤더는 패킷의 목적지에 대응되는 도메인 터널 종단점의 L3 주소를 포함할 수 있다.Referring to FIG. 2C, in the case of a packet exchanged between the domain tunnel end points, the L3 SA header of the packet includes the L3 address of the domain tunnel end point for transmitting the packet, and the L3 DA header corresponds to the destination of the packet And may include the L3 address of the domain tunnel endpoint.

특정 네트워크 가상 도메인에 포함된 에지 터널 종단점에서 도메인 터널 종단점으로 패킷이 송신되고, 패킷이 다시 다른 가상 네트워크 도메인의 도메인 터널 종단점으로 전송되는 경우를 가정할 수 있다. 이러한 경우, 본 발명의 실시예에 따르면 패킷의 L3 터널 헤더는 도메인 터널 종단점을 거치면서 도 2의 (b)에서 도 2의 (c)로 변경될 수 있다.It can be assumed that a packet is transmitted from an edge tunnel endpoint included in a specific network virtual domain to a domain tunnel endpoint and the packet is forwarded to the domain tunnel endpoint of another virtual network domain. In this case, according to the embodiment of the present invention, the L3 tunnel header of the packet may be changed from FIG. 2 (b) to FIG. 2 (c) while passing through the domain tunnel end point.

본 발명의 실시예에 따르면, 에지 터널 종단점은 다른 도메인에 속한 모든 에지 터널 종단점과 풀-메쉬로 터널을 연결하지 않고 도메인 터널 종단점과 하나의 터널만 만들어서, 논리적으로는 서로 다른 도메인에 속한 모든 에지 터널 종단점 간에 풀-메쉬 터널로 연결된 것 처럼 동작할 수 있다. 즉, 본 발명의 실시예에 따르면, 가상 네트워크 도메인에 포함되는 각 도메인 터널 종단점이 터널을 스위칭해서 다른 모든 에지 터널 종단점과 터널이 연결되도록 할 수 있다.
According to an embodiment of the present invention, an edge tunnel end point may be formed by connecting only one tunnel to a domain tunnel end point and not connecting all edge tunnel end points belonging to different domains to a full-mesh tunnel, It can act as a full-mesh tunnel connection between tunnel endpoints. That is, according to the embodiment of the present invention, each domain tunnel end point included in the virtual network domain may switch the tunnel so that all the other edge end points and the tunnel are connected.

도 3은 본 발명의 실시예에 따른 도메인 터널 종단점을 나타낸 개념도이다. 3 is a conceptual diagram illustrating a domain tunnel end point according to an embodiment of the present invention.

도 3을 참조하면, 도메인 터널 종단점은 터널 관리부(300)와 도메인 VSI(Domain Virtual Switching Instance) 관리부(310), 다수의 도메인 VSI(320, 330), 터널 패킷 종단부(340)와 터널 패킷 생성부(350)를 포함할 수 있다.3, the domain tunnel end point includes a tunnel management unit 300, a domain VSI (Domain Virtual Switching Instance) management unit 310, a plurality of domain VSIs 320 and 330, a tunnel packet termination unit 340, (350). ≪ / RTI >

터널 관리부(300)는 가상 네트워크 도메인 내의 모든 에지 터널 종단점과 도메인 터널 종단점 사이에, 그리고 다른 도메인 터널 종단점과 해당 도메인 터널 종단점 사이에 터널을 연결하고 연결한 터널을 관리하기 위해 구현될 수 있다. 터널 관리부(300)는 운용자의 설정 또는 프로토콜에 의해 전달된 도메인 내의 모든 에지 터널 종단점 정보와 다른 도메인 터널 종단점 정보를 수신할 수 있다.The tunnel management unit 300 may be implemented to manage tunnels connecting and connecting the tunnels between all the edge tunnel end points and the domain tunnel end points in the virtual network domain and between the other domain tunnel end points and the corresponding domain tunnel end points. The tunnel management unit 300 may receive all the edge tunnel end point information in the domain delivered by the operator's configuration or protocol and the different domain tunnel end point information.

또한, 터널 관리부(300)는 수신한 에지 터널 종단점 정보와 도메인 터널 종단점 정보를 기반으로 도메인 내의 각 에지 터널 종단점과 개별 터널을 연결하고, 다른 도메인 터널 종단점과도 풀 메쉬로 터널을 연결할 수 있다. 각 종단점 간의 터널은 다양한 방법으로 구현될 수 있다. 예를 들어, 두 터널 종단점 간에 하나의 터널을 생성하고 모든 VNID에 속한 패킷을 생성된 하나의 터널을 통해 전달할 수도 있다. 또 다른 방법으로 두 터널의 종단점 간에 VNID 별로 터널을 복수개 만들어서 복수개의 터널을 통해 패킷을 전달할 수도 있다.Also, the tunnel management unit 300 may connect each edge tunnel end point in the domain with the individual tunnel based on the received edge tunnel end point information and the domain tunnel end point information, and connect the tunnel to the other domain tunnel end point with the full mesh. Tunnels between each endpoint can be implemented in a variety of ways. For example, one tunnel may be created between two tunnel endpoints, and a packet belonging to all VNIDs may be transmitted through one generated tunnel. Alternatively, a plurality of tunnels may be created for each VNID between the end points of the two tunnels to transmit the packets through the plurality of tunnels.

터널 관리부(300)는 생성한 터널의 종단점이 에지 터널 종단점인 경우, 각 도메인 VSI(320, 330)에 해당 에지 터널 종단점과 연계된 에지 가상 포트(edge virtual port)를 생성할 수 있다. 터널 관리부(300)는 생성한 터널의 종단점이 도메인 터널 종단점인 경우, 각 도메인 VSI(320, 330)에 해당 도메인 터널 종단점과 연계된 도메인 가상 포트(domain virtual port)를 생성할 수 있다. 본 발명의 실시예에 따르면, 가상 포트는 터널의 종단점이 속해있는 각각의 VNID에 대응되는 도메인 VSI(320, 330)에 가상 포트를 생성하거나 또는 관리의 편리성을 위해서 도메인터널 종단점 내의 모든 도메인 VSI(320, 330)에 터널 종단점 별로 가상 포트를 생성할 수 있다.If the end point of the generated tunnel is the edge tunnel end point, the tunnel management unit 300 may generate an edge virtual port associated with the corresponding edge tunnel end point in each of the domain VSIs 320 and 330. The tunnel management unit 300 may generate a domain virtual port associated with the corresponding domain tunnel end point in each of the domain VSIs 320 and 330 when the end point of the generated tunnel is a domain tunnel end point. In accordance with an embodiment of the present invention, a virtual port may be created by creating a virtual port in a domain VSI 320, 330 corresponding to each VNID to which an endpoint of the tunnel belongs, It is possible to create a virtual port for each tunnel end point in the virtual ports 320 and 330.

도메인 VSI 관리부(310)는 외부로부터 전달된 가상 네트워크 식별자를 수신하여 수신한 VNID에 대응되는 도메인 VSI를 생성할 수 있다. 망 전체의 네트워크 가상화를 관리하는 네트워크 가상화 관리부(network virtualization manager)가 가상 네트워크를 생성하게 되면, 네트워크 가상화 관리부는 생성된 가상 네트워크의 식별자인 VNID(virtual network identifier)에 대한 정보를 각 도메인 터널 종단점으로 전송할 수 있다. 본 발명의 일 실시예에 따른 도메인 VSI 관리부(320)는 이러한 VNID를 수신하여 그에 대응되는 도메인 VSI를 생성하는 것이다. The domain VSI management unit 310 may receive a virtual network identifier transmitted from the outside and may generate a domain VSI corresponding to the received VNID. When a network virtualization manager that manages network virtualization of the entire network creates a virtual network, the network virtualization manager transmits information on a virtual network identifier (VNID), which is an identifier of the created virtual network, to each domain tunnel end point Lt; / RTI > The domain VSI management unit 320 according to an embodiment of the present invention receives the VNID and generates the corresponding domain VSI.

도메인 VSI(320, 330)는 VNID 별로 존재할 수 있다. 도메인 VSI(320, 330)는 수신한 패킷의 오리지널 L2 헤더를 기반으로 도메인 VSI(320, 330)에 적용되는 변형된 L2 스위칭 규칙에 따라서 스위칭을 수행하여 패킷을 목적지 터널 종단점과 연계된 목적지 가상 포트로 전달할 수 있다. 즉, 오리지널 목적지 호스트가 다른 네트워크 가상화 도메인에 있는 경우, 도메인 VSI(320, 330)에서는 스위칭을 기반으로 오리지널 목적지 호스트가 있는 네트워크 가상화 도메인의 도메인 터널 종단점과 연계된 가상 포트로 패킷을 출력하여 터널 패킷 생성부(350)로 패킷을 전달할 수 있다. 그리고, 목적지 호스트가 동일 가상화 도메인에 있는 경우, 도메인 VSI(320,330)에서는 L2 스위칭을 수행하여 목적지 호스트가 속한 에지 터널 종단점과 연계된 가상 포트로 패킷을 출력하여 터널 패킷 생성부(350)로 패킷을 전달할 수 있다. The domain VSIs 320 and 330 may exist for each VNID. The domain VSIs 320 and 330 perform switching according to the modified L2 switching rules applied to the domain VSIs 320 and 330 based on the original L2 header of the received packet to transmit the packet to the destination virtual port . That is, when the original destination host is located in another network virtualization domain, the domain VSI 320 or 330 outputs a packet to the virtual port associated with the domain tunnel end point of the network virtualization domain having the original destination host based on the switching, And may transmit the packet to the generation unit 350. [ When the destination host is in the same virtualization domain, the domain VSIs 320 and 330 perform L2 switching to output a packet to the virtual port associated with the edge tunnel end point to which the destination host belongs, and transmit the packet to the tunnel packet generation unit 350 .

터널 패킷 종단부(340)는 입력된 패킷의 터널 헤더로부터 VNID 및 송신 터널 종단점의 L3 주소에 대한 정보를 획득할 수 있다. 터널 패킷 종단부(340)는 패킷의 VNID에 해당하는 도메인 VSI에 패킷을 전달할 수 있다. The tunnel packet terminator 340 can obtain information on the VNID and the L3 address of the transmission tunnel end point from the tunnel header of the input packet. The tunnel packet terminator 340 can forward the packet to the domain VSI corresponding to the VNID of the packet.

터널 패킷 생성부(350)는 수신 패킷의 도메인 VSI 정보에서 VNID를 알아내어 수신 패킷에 VN 헤더를 포함시킬 수 있다. 구체적으로 터널 패킷 생성부(350)는 도메인 VSI 출력 가상 포트 정보로부터 목적지 터널 종단점의 L3 주소를 알아내어 터널 L3 헤더를 생성하고 생성된 헤더를 붙여서 새로운 터널 패킷을 완성시킨 후에 다른 가상 네트워크 도메인으로 전달할 수 있다.
The tunnel packet generation unit 350 can obtain the VNID from the domain VSI information of the received packet and include the VN header in the received packet. Specifically, the tunnel packet generating unit 350 obtains the L3 address of the destination tunnel end point from the domain VSI output virtual port information, generates a tunnel L3 header, attaches the generated header to the new tunnel packet, and transmits the new tunnel packet to another virtual network domain .

도 4는 본 발명의 실시예에 따른 도메인 터널 종단점에서의 패킷 처리 과정을 나타낸 순서도이다.4 is a flowchart illustrating a packet processing process at a domain tunnel end point according to an embodiment of the present invention.

도 4를 참조하면, 터널 패킷 종단부에서 도메인 VSI로 패킷을 전달한다(단계 S400).Referring to FIG. 4, a packet is transmitted from a terminal end of a tunnel packet to a domain VSI (step S400).

터널 패킷 종단부는 외부로부터 수신한 터널 패킷의 터널 헤더로부터 터널 종단점의 L3 주소와 패킷에 대응되는 VNID에 대한 정보를 획득할 수 있다. 터널 패킷 종단부는 도메인 VSI에서 패킷의 L2 헤더를 기반으로 L2 스위칭을 할 수 있도록 패킷을 수정할 수 있다. 터널 패킷 종단부는 수정한 패킷을 VNID와 연계된 도메인 VSI로 전송할 수 있다. 이때, 패킷은 송신 L3 주소와 1:1로 맵핑되어 있는 가상 포트로 입력될 수 있다.The tunnel packet ending part can obtain information on the L3 address of the tunnel end point and the VNID corresponding to the packet from the tunnel header of the tunnel packet received from the outside. The tunnel packet end can modify the packet so that the domain VSI can perform L2 switching based on the L2 header of the packet. The tunnel packet end can send the modified packet to the domain VSI associated with the VNID. At this time, the packet can be input to the virtual port mapped to the transmission L3 address in a 1: 1 ratio.

도메인 VSI가 패킷에 대해 L2 스위칭을 수행한다(단계 S410).The domain VSI performs L2 switching on the packet (step S410).

도메인 VSI는 패킷에 포함된 L2 헤더를 기반으로 변형된 L2 스위칭을 수행할 수 있다. 도메인 VSI에서 L2 스위칭을 기반으로 한 패킷 처리는 패킷의 L2 소스 주소, L2 목적지 주소를 기반으로 수행될 수 있다. 도메인 VSI에서 패킷에 대해 L2 스위칭이 수행되는 방법에 대해서는 구체적으로 후술한다.The domain VSI can perform modified L2 switching based on the L2 header included in the packet. Packet processing based on L2 switching in the domain VSI can be performed based on the L2 source address of the packet and the L2 destination address. The manner in which L2 switching is performed on a packet in the domain VSI will be described later in detail.

도메인 VSI에서 터널 패킷 생성부로 패킷을 전송한다(단계 S420).The domain VSI transmits a packet to the tunnel packet generation unit (step S420).

L2 스위칭을 수행한 패킷은 목적지 가상 포트에 따라 해당 도메인 내의 에지 터널 종단점 또는 다른 가상 네트워크 도메인의 도메인 터널 종단점로 전달되기 위해 터널 패킷 생성부로 전달된다. The L2 switching packet is transmitted to the tunnel packet generating unit to be transmitted to the edge tunnel end point of the corresponding domain or the domain tunnel end point of the other virtual network domain according to the destination virtual port.

터널 패킷 생성부에서 패킷에 터널 헤더를 추가하여 전송한다(단계 S430).The tunnel packet generation unit adds the tunnel header to the packet and transmits the packet (step S430).

도메인 VSI에서 스위칭된 패킷은 터널 패킷 생성부에서 터널 헤더를 붙여서 외부로 전송될 수 있다. 패킷에 추가되는 터널 헤더의 VN 헤더는 패킷을 스위칭한 도메인 VSI의 VNID를 기반으로 생성될 수 있다. 또한, 터널 패킷 생성부에서 생성되는 터널 헤더의 L3 SA 헤더는 현재 도메인 터널 종단점의 주소를 포함하고, 터널 헤더의 L3 DA 헤더는 패킷의 도메인 VSI 출력 가상 포트 정보로부터 획득된 다른 도메인 터널 종단점, 또는 동일 도메인 내의 목적지 에지 터널 종단점의 주소가 포함될 수 있다.
The switched packet in the domain VSI can be transmitted to the outside by attaching a tunnel header in the tunnel packet generating unit. The VN header of the tunnel header added to the packet can be generated based on the VNID of the domain VSI that switched the packet. The L3 SA header of the tunnel header generated by the tunnel packet generator includes the address of the current domain tunnel end point and the L3 DA header of the tunnel header includes another domain tunnel end point obtained from the domain VSI output virtual port information of the packet, The address of the destination edge tunnel endpoint in the same domain may be included.

도 5는 본 발명의 실시예에 따른 도메인 VSI에서 수행되는 L2 스위칭을 나타낸 순서도이다. 5 is a flowchart illustrating L2 switching performed in a domain VSI according to an embodiment of the present invention.

도 5를 참조하면, 도메인 VSI는 입력된 패킷의 L2 SA에 대한 정보를 획득한다(단계 S500).Referring to FIG. 5, the domain VSI obtains information on an L2 SA of an input packet (step S500).

도메인 VSI는 입력된 패킷의 L2 DA가 이미 알고 있는 유니캐스트 주소인지 여부를 판단한다(단계 S510).The domain VSI determines whether the L2 DA of the input packet is a known unicast address (step S510).

L2 DA가 도메인 VSI에 이미 러닝된 유니캐스트 주소인 경우, 도메인 VSI에서 해당 가상 포트를 찾아서 해당 가상 포트로 패킷을 전달할 수 있다(단계 S520).If the L2 DA is a unicast address already run on the domain VSI, the domain VSI can find the corresponding virtual port and forward the packet to the virtual port (step S520).

반대로 목적지 L2 주소가 알 수 없는 유니캐스트 주소이거나, 목적지 L2가 멀티캐스트, 브로드캐스트를 지시하는 경우, 입력 가상 포트 타입에 따라 변형된 플로딩(flooding) 방법을 결정할 수 있다(단계 S530).On the other hand, when the destination L2 address is an unknown unicast address or the destination L2 indicates multicast or broadcast, a modified flooding method may be determined according to the input virtual port type (step S530).

만약, 입력 가상 포트 타입이 에지 가상 포트인 경우, 도메인 VSI 내의 모든 도메인 가상 포트에게만 플로딩을 수행한다(단계 S540).If the input virtual port type is an edge virtual port, only the domain virtual ports in the domain VSI are flooded (step S540).

만약, 입력 가상 포트 타입이 도메인 가상 포트인 경우, 도메인 VSI 내의 모든 에지 가상 포트에게만 플로딩을 수행한다(단계 S550).
If the input virtual port type is a domain virtual port, only all the edge virtual ports in the domain VSI are flooded (step S550).

도 6a 및 도6b는 본 발명의 실시예에 따른 도메인 VSI에서의 플로딩을 나타낸 개념도이다. 6A and 6B are conceptual diagrams illustrating flooding in a domain VSI according to an embodiment of the present invention.

도 6a 및 도6b를 참조하면, 입력 가상 포트 타입이 에지 가상 포트라면 에지 가상 포트로는 플로딩을 수행하지 않고 도메인 가상 포트로만 플로딩을 수행할 수 있다. 반대로 입력 가상 포트 타입이 도메인 가상 포트일 때는 같은 타입인 도메인 가상 포트로는 플로딩하지 않고 에지 가상 포트로만 플로딩할 수 있다. 이러한 변형 플로딩 규칙은 플로딩에 의한 포워딩 루프(forwarding loop) 생성을 방지하기 위해 사용될 수 있다.
Referring to FIGS. 6A and 6B, if the input virtual port type is an edge virtual port, the edge virtual port can be flooded only to the domain virtual port without performing the flooding. Conversely, when the input virtual port type is a domain virtual port, it can be flooded only to the edge virtual port without being flooded to the domain virtual port of the same type. These variant flooding rules can be used to prevent the generation of forwarding loops by flooding.

전술한 바와 같은 본 발명의 실시예에 따른 멀티 도메인 네트워크 가상화 방법을 사용함으로써 L3 터널로 구성하는 오버레이 기반 네트워크 가상화 방법의 확장성을 제공할 수 있다. 즉, 풀-메쉬 L3 오버레이 터널 방식으로 만들 수 있는 적정 규모의 네트워크 가상화 도메인을 복수개 생성하고, 각 도메인마다 도메인 터널 종단점(Domain Tunnel End Point)을 두고, 도메인 터널 종단점간의 풀-메쉬 연결을 수행하는 것 만으로 다수의 도메인을 통합한 대규모의 하나의 네트워크 가상화 도메인을 생성할 수 있다. 이를 통해 네트워크 가상화 도메인에 필요한 터널의 수를 크게 줄여 대규모의 네트워크 가상화 도메인을 구축할 수 있다.
By using the multi-domain network virtualization method according to the embodiment of the present invention as described above, it is possible to provide an extension of the overlay-based network virtualization method constituted by the L3 tunnel. That is, a plurality of network virtualization domains of appropriate sizes that can be created by the full-mesh L3 overlay tunnel method are created, and a domain tunnel end point is set for each domain, and a full-mesh connection between the domain tunnel end points is performed It is possible to create one large-scale network virtualization domain that integrates multiple domains. This can significantly reduce the number of tunnels needed for a network virtualization domain to build a large network virtualization domain.

이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.It will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined in the appended claims. It will be possible.

Claims (14)

네트워크 가상화 장치에 있어서,
가상 네트워크의 터널 종단점 정보를 수집하고, 상기 수집한 터널 종단점 정보를 바탕으로 각 터널 종단점과 터널을 연결하는 터널 관리부;
터널 패킷을 수신하여 L2 스위칭을 할 수 있도록 패킷을 처리하여 도메인 VSI(virtual switching instance)로 전달하는 터널 패킷 종단부;
상기 L2 스위칭을 할 수 있도록 처리된 패킷에 대하여 L2 스위칭을 수행하여 터널 패킷 생성부로 전달하는 도메인 VSI; 및
상기 L2 스위칭을 수행한 패킷에 대하여 터널 헤더를 추가하여 새로운 터널 패킷을 생성하고, 상기 새로운 터널 패킷을 전송하는 터널 패킷 생성부를 포함하는 것을 특징으로 하는 네트워크 가상화 장치.
In a network virtualization apparatus,
A tunnel management unit for collecting tunnel end point information of the virtual network and connecting each tunnel end point and the tunnel based on the collected tunnel end point information;
A tunnel packet termination unit for processing a packet so as to perform L2 switching upon receiving the tunnel packet and delivering the packet to a domain VSI (virtual switching instance);
A domain VSI that performs L2 switching on the packet processed to perform L2 switching and transmits the packet to the tunnel packet generation unit; And
And a tunnel packet generating unit for generating a new tunnel packet by adding a tunnel header to the L2 switched packet and transmitting the new tunnel packet.
제1항에 있어서,
상기 도메인 VSI는, 상기 L2 스위칭 수행 시,
상기 L2 스위칭을 할 수 있도록 처리된 패킷에 대하여 L2 SA(source address) 정보를 획득하고,
상기 L2 스위칭을 할 수 있도록 처리된 패킷의 L2 DA(destination address) 정보가 이미 러닝된 유니캐스트 주소인지 여부를 판단하며,
상기 L2 DA 정보가 이미 러닝된 유니캐스트 주소가 아니거나 멀티캐스트 또는 브로드캐스트를 지시하는 경우, 입력 가상 포트 타입을 기반으로 한 플로딩을 수행하되,
상기 플로딩은 상기 입력 가상 포트 타입이 에지 가상 포트인 경우, 상기 도메인 VSI 내의 모든 도메인 가상 포트에게만 수행되고, 상기 입력 가상 포트 타입이 도메인 가상 포트인 경우, 상기 도메인 VSI 내의 모든 에지 가상 포트에게만 수행되는 것을 특징으로 하는 네트워크 가상화 장치.
The method according to claim 1,
The domain VSI, when performing the L2 switching,
Acquires L2 SA (source address) information for a packet processed for L2 switching,
Determines whether the L2 DA (destination address) information of the processed packet is an already-processed unicast address,
Performing flooding based on an input virtual port type when the L2 DA information is not a unicast address already issued, or indicates multicast or broadcast,
If the input virtual port type is an edge virtual port, the flooding is performed only for all domain virtual ports in the domain VSI. If the input virtual port type is a domain virtual port, the flooding is performed only for all edge virtual ports in the domain VSI Lt; RTI ID = 0.0 > 1, < / RTI >
제2항에 있어서,
상기 도메인 VSI는, 상기 L2 스위칭 수행 시,
상기 L2 DA 정보가 이미 러닝된 유니캐스트 주소인 경우, 상기 유니캐스트 주소에 대응되는 목적지 가상 포트로 상기 L2 스위칭을 할 수 있도록 처리된 패킷을 전달하고, 상기 목적지 가상 포트로부터 상기 패킷의 목적지 터널 종단점의 L3 주소를 획득하는 것을 특징으로 하는 네트워크 가상화 장치.
3. The method of claim 2,
The domain VSI, when performing the L2 switching,
When the L2 DA information is a unicast address already processed, transfers a packet processed for L2 switching to a destination virtual port corresponding to the unicast address, and transmits a packet from the destination virtual port to a destination tunnel end point Lt; RTI ID = 0.0 > L3 < / RTI >
제1항에 있어서,
상기 터널 패킷 종단부는,
수신한 상기 터널 패킷의 터널 헤더로부터 상기 터널 패킷의 VNID 및 송신 터널 종단점의 L3 주소 정보를 획득하고,
상기 터널 패킷을 L2 스위칭을 할 수 있도록 패킷을 처리하며,
상기 송신 터널 종단점과 연계된 가상포트를 통해 상기 VNID에 대응되는 도메인 VSI에 상기 L2 스위칭을 할 수 있도록 처리된 패킷을 전달하는 것을 특징으로 하는 네트워크 가상화 장치.
The method according to claim 1,
Wherein the tunnel packet termination part comprises:
Acquires the VNID of the tunnel packet and the L3 address information of the transmission tunnel end point from the tunnel header of the received tunnel packet,
Processes the packets so that L2 packets can be switched to the tunnel packets,
And transmits the processed packet to the domain VSI corresponding to the VNID through the virtual port associated with the transmission tunnel end point, so as to perform the L2 switching.
제1항에 있어서,
상기 터널 패킷 생성부는,
상기 L2 스위칭을 수행한 패킷에 대해, 상기 도메인 VSI에 대응되는 VNID를 포함하는 VN 헤더(Virtual Network Header)와 상기 L2 스위칭을 수행한 패킷의 목적지 가상 포트로부터 획득한 목적지 터널 종단점 L3 주소를 바탕으로 L3 터널 헤더를 생성하고, 상기 VN 헤더와 상기 L3 터널 헤더를 상기 L2 스위칭을 수행한 패킷에 결합하여 전송하는 것을 특징으로 하는 네트워크 가상화 장치.
The method according to claim 1,
Wherein the tunnel packet generating unit comprises:
Based on the VN header (Virtual Network Header) including the VNID corresponding to the domain VSI and the destination tunnel end point L3 address obtained from the destination virtual port of the L2 switched packet, L3 tunnel header, and combines the VN header and the L3 tunnel header into the L2 switched packet, and transmits the packet.
제1항에 있어서,
망 전체의 네트워크 가상화를 관리하는 네트워크 가상화 관리부(network virtualization manager)로부터 가상 네트워크의 VNID(Virtual Network ID)를 수신하여 그에 대응하는 도메인 VSI(Domain Virtual Switching Instance)를 생성하는 도메인 VSI 관리부를 더 포함하는 것을 특징으로 하는 네트워크 가상화 장치,
The method according to claim 1,
And a domain VSI manager for receiving a VNID (Virtual Network ID) of a virtual network from a network virtualization manager for managing network virtualization of the entire network and generating a corresponding domain VSI (Domain Virtual Switching Instance) A network virtualization apparatus,
네트워크 가상화 장치의 동작 방법에 있어서,
가상 네트워크의 터널 종단점 정보를 수집하고, 상기 수집한 터널 종단점 정보를 바탕으로 각 터널 종단점과 터널을 연결하는 단계;
터널 패킷을 수신하여 L2 스위칭을 할 수 있도록 패킷을 처리하는 단계;
상기 L2 스위칭을 할 수 있도록 처리된 패킷에 대하여 L2 스위칭을 수행하는 단계; 및
상기 L2 스위칭을 수행한 패킷에 대하여 터널 헤더를 추가하여 새로운 터널 패킷을 생성하고, 상기 새로운 터널 패킷을 전송하는 단계를 수행하는 것을 특징으로 하는 네트워크 가상화 장치의 동작 방법.
A method of operating a network virtualization device,
Collecting tunnel end point information of the virtual network, and connecting each tunnel end point and the tunnel based on the collected tunnel end point information;
Receiving a tunnel packet and processing the packet so that L2 switching can be performed;
Performing L2 switching on the packet processed to enable the L2 switching; And
Generating a new tunnel packet by adding a tunnel header to the L2 switched packet, and transmitting the new tunnel packet.
제7항에 있어서,
상기 L2 스위칭 수행하는 단계는,
상기 L2 스위칭을 할 수 있도록 처리된 패킷에 대하여 L2 SA(source address) 정보를 획득하는 단계;
상기 L2 스위칭을 할 수 있도록 처리된 패킷의 L2 DA(destination address) 정보가 이미 러닝된 유니캐스트 주소인지 여부를 판단하는 단계; 및
상기 L2 DA 정보가 이미 러닝된 유니캐스트 주소가 아니거나 멀티캐스트 또는 브로드캐스트를 지시하는 경우, 입력 가상 포트 타입을 기반으로 한 플로딩을 수행하되,
상기 플로딩은 상기 입력 가상 포트 타입이 에지 가상 포트인 경우, 도메인 VSI 내의 모든 도메인 가상 포트에게만 수행되고, 상기 입력 가상 포트 타입이 도메인 가상 포트인 경우, 상기 도메인 VSI 내의 모든 에지 가상 포트에게만 수행되는 단계를 포함하는 것을 특징으로 하는 네트워크 가상화 장치의 동작 방법.
8. The method of claim 7,
Wherein performing the L2 switching comprises:
Obtaining L2 SA (source address) information for the packet processed to perform the L2 switching;
Determining whether the L2 DA (destination address) information of the processed packet is an already-processed unicast address; And
Performing flooding based on an input virtual port type when the L2 DA information is not a unicast address already issued, or indicates multicast or broadcast,
If the input virtual port type is an edge virtual port, the flooding is performed only for all domain virtual ports in the domain VSI, and if the input virtual port type is a domain virtual port, the flooding is performed only for all edge virtual ports in the domain VSI Lt; RTI ID = 0.0 > 1, < / RTI >
제8항에 있어서,
상기 L2 스위칭을 할 수 있도록 처리된 패킷의 상기 L2 DA(destination address) 정보가 이미 러닝된 유니캐스트 주소인지 여부를 판단하는 단계에서,
상기 L2 DA 정보가 이미 러닝된 유니캐스트 주소인 경우, 상기 유니캐스트 주소에 대응되는 목적지 가상 포트로 상기 L2 스위칭을 할 수 있도록 처리된 패킷을 전달하고, 상기 목적지 가상 포트로부터 상기 패킷의 목적지 터널 종단점의 L3 주소를 획득하는 단계를 더 포함하는 것을 특징으로 하는 네트워크 가상화 장치의 동작 방법.
9. The method of claim 8,
In the step of determining whether the L2 DA (destination address) information of the packet processed to perform the L2 switching is a unicast address already run,
When the L2 DA information is a unicast address already processed, transfers a packet processed for L2 switching to a destination virtual port corresponding to the unicast address, and transmits a packet from the destination virtual port to a destination tunnel end point Lt; RTI ID = 0.0 > L3 < / RTI > address of the network virtualization device.
제7항에 있어서,
상기 터널 패킷을 수신하여 L2 스위칭을 할 수 있도록 패킷을 처리하는 단계 는,
수신한 상기 터널 패킷의 터널 헤더로부터 상기 터널 패킷의 VNID 및 송신 터널 종단점의 L3 주소 정보를 획득하는 단계;
상기 터널 패킷을 L2 스위칭을 할 수 있도록 패킷을 처리하는 단계; 및
상기 송신 터널 종단점과 연계된 가상포트를 통해 상기 VNID에 대응되는 도메인 VSI에 상기 L2 스위칭을 할 수 있도록 처리된 패킷을 전달하는 단계를 포함하는 것을 특징으로 하는 네트워크 가상화 장치의 동작 방법.
8. The method of claim 7,
Wherein the step of processing the packet to receive the tunnel packet and perform L2 switching comprises:
Obtaining VNID of the tunnel packet and L3 address information of a transmission tunnel end point from the tunnel header of the received tunnel packet;
Processing a packet so that L2 packets can be switched to the tunnel packet; And
And forwarding the processed packet to the domain VSI corresponding to the VNID through the virtual port associated with the transmission tunnel end point so that the L2 switching can be performed.
제7항에 있어서,
상기 L2 스위칭을 수행한 패킷에 대하여 터널 헤더를 추가하여 새로운 터널 패킷을 생성하고, 상기 새로운 터널 패킷을 전송하는 단계는,
상기 L2 스위칭을 수행한 패킷에 대해, 도메인 VSI에 대응되는 VNID를 포함하는 VN 헤더(Virtual Network Header)와 상기 L2 스위칭을 수행한 패킷의 목적지 가상 포트로부터 획득한 목적지 터널 종단점 L3 주소를 바탕으로 L3 터널 헤더를 생성하는 단계; 및
상기 VN 헤더와 상기 L3 터널 헤더를 상기 L2 스위칭을 수행한 패킷에 결합하여 전송하는 단계를 포함하는 것을 특징으로 하는 네트워크 가상화 장치의 동작 방법.
8. The method of claim 7,
Generating a new tunnel packet by adding a tunnel header to the L2 switched packet, and transmitting the new tunnel packet comprises:
Based on the VN header (Virtual Network Header) including the VNID corresponding to the domain VSI and the destination tunnel end point L3 obtained from the destination virtual port of the L2 switched packet, L3 Generating a tunnel header; And
Combining the VN header and the L3 tunnel header with the L2 switched packet, and transmitting the combined packet.
제7항에 있어서,
가상 네트워크의 터널 종단점 정보를 수집하고, 상기 수집한 터널 종단점 정보를 바탕으로 각 터널 종단점과 터널을 연결하는 단계 전에,
망 전체의 네트워크 가상화를 관리하는 네트워크 가상화 관리부(network virtualization manager)로부터 가상 네트워크의 VNID(Virtual Network ID)를 수신하여 그에 대응하는 도메인 VSI(Domain Virtual Switching Instance)를 생성하는 단계를 더 포함하는 것을 특징으로 하는 네트워크 가상화 장치의 동작 방법.
8. The method of claim 7,
Collecting the tunnel end point information of the virtual network and connecting each tunnel end point and the tunnel based on the collected tunnel end point information,
Receiving virtual network ID (VNID) of a virtual network from a network virtualization manager managing network virtualization of the entire network and generating a corresponding domain VSI (Domain Virtual Switching Instance) Gt; a < / RTI > network virtualization device.
네트워크 가상화 방법에 있어서,
도메인 터널 종단점과 적어도 하나 이상의 에지 터널 종단점으로 구성된 네트워크 가상 도메인을 적어도 두 개 이상 생성하는 단계; 및
상기 각 네트워크 가상 도메인의 도메인 터널 종단점 간에 L3 터널을 이용하여 풀-메쉬(full-mesh)로 연결하는 단계를 포함하고,
상기 도메인 터널 종단점과 상기 적어도 하나 이상의 에지 터널 종단점은 L3 터널을 기반으로 연결되는 것을 특징으로 하는 네트워크 가상화 방법.
In a network virtualization method,
Creating at least two network virtual domains comprising a domain tunnel endpoint and at least one edge tunnel endpoint; And
And full-mesh connection between domain tunnel end points of each network virtual domain using an L3 tunnel,
Wherein the domain tunnel end point and the at least one edge tunnel end point are connected based on an L3 tunnel.
제13항에 있어서,
상기 도메인 터널 종단점은,
에지 터널 종단점 및 다른 도메인 터널 종단점들에서 수신한 패킷의 터널 헤더를 제거하는 단계;
상기 수신한 패킷이 속한 가상 네트워크 별로 생성된 가상 스위치에서 오리지날 패킷의 L2 헤더기반 L2 스위칭을 수행하는 단계; 및
목적지 호스트가 속한 터널 종단점 방향으로 연결된 터널을 찾아 상기 오리지날 패킷을 다시 터널링하여 전송하는 단계를 수행하는 것을 특징으로 하는 네트워크 가상화 방법.
14. The method of claim 13,
The domain tunnel endpoints include:
Removing a tunnel header of a packet received at edge tunnel endpoints and other domain tunnel endpoints;
Performing an L2 header-based L2 switching of an original packet in a virtual switch generated for each virtual network to which the received packet belongs; And
The method comprising: tunnels a tunnel connected to a tunnel end point to which a destination host belongs, and tunneling the original packet to transmit the tunnel.
KR1020140136067A 2013-12-27 2014-10-08 Method and apparatus for network virtualization KR102236195B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014263468A JP2015128295A (en) 2013-12-27 2014-12-25 Network virtualization method and apparatus
US14/583,303 US10020961B2 (en) 2013-12-27 2014-12-26 Method and apparatus for network virtualization

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20130165299 2013-12-27
KR1020130165299 2013-12-27

Publications (2)

Publication Number Publication Date
KR20150079391A true KR20150079391A (en) 2015-07-08
KR102236195B1 KR102236195B1 (en) 2021-04-07

Family

ID=53791751

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140136067A KR102236195B1 (en) 2013-12-27 2014-10-08 Method and apparatus for network virtualization

Country Status (2)

Country Link
JP (1) JP2015128295A (en)
KR (1) KR102236195B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10200253B2 (en) 2016-01-11 2019-02-05 Futurewei Technologies, Inc. Method of establishing relationships between sets of label switched paths and virtual networks
CN107342925B (en) 2016-04-29 2020-03-06 新华三技术有限公司 Message transmission method and device

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110065669A (en) * 2009-12-10 2011-06-16 한국전자통신연구원 Backbone edge switching apparatus, and method for packet processing thereof
KR20130101663A (en) * 2012-02-27 2013-09-16 한국전자통신연구원 Apparatus and method for cloud networking

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110065669A (en) * 2009-12-10 2011-06-16 한국전자통신연구원 Backbone edge switching apparatus, and method for packet processing thereof
KR20130101663A (en) * 2012-02-27 2013-09-16 한국전자통신연구원 Apparatus and method for cloud networking

Also Published As

Publication number Publication date
KR102236195B1 (en) 2021-04-07
JP2015128295A (en) 2015-07-09

Similar Documents

Publication Publication Date Title
US10116559B2 (en) Operations, administration and management (OAM) in overlay data center environments
US10320664B2 (en) Cloud overlay for operations administration and management
US10565001B2 (en) Distributed virtual network controller
US10693766B2 (en) Engines to prune overlay network traffic
CN106936777B (en) Cloud computing distributed network implementation method and system based on OpenFlow
US9596159B2 (en) Finding latency through a physical network in a virtualized network
EP2882151B1 (en) Physical path determination for virtual network packet flows
CN105264493B (en) Dynamic virtual machine migration on information centre's network
KR102054338B1 (en) Routing vlan tagged packets to far end addresses of virtual forwarding instances using separate administrations
EP3069471B1 (en) Optimized multicast routing in a clos-like network
US10999195B1 (en) Multicast VPN support in data centers using edge replication tree
US10379890B1 (en) Synchronized cache of an operational state of distributed software system
CN107306215B (en) Data processing method, system and node
CN116319529A (en) Auxiliary replication in software defined networks
US10020961B2 (en) Method and apparatus for network virtualization
KR102236195B1 (en) Method and apparatus for network virtualization
KR20160024671A (en) Proxy tunnel end point unit, communication system for scalable network virtualization having the same and communication method for scalable network virtualization
CN110601951B (en) Method for realizing VxLAN expandability in super-large-scale data center

Legal Events

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