KR101794719B1 - Sdn 기반 네트워크 가상화 플랫폼에서의 ip 주소 가상화 방법 및 시스템 - Google Patents

Sdn 기반 네트워크 가상화 플랫폼에서의 ip 주소 가상화 방법 및 시스템 Download PDF

Info

Publication number
KR101794719B1
KR101794719B1 KR1020160129691A KR20160129691A KR101794719B1 KR 101794719 B1 KR101794719 B1 KR 101794719B1 KR 1020160129691 A KR1020160129691 A KR 1020160129691A KR 20160129691 A KR20160129691 A KR 20160129691A KR 101794719 B1 KR101794719 B1 KR 101794719B1
Authority
KR
South Korea
Prior art keywords
address
packet
switch
network
physical
Prior art date
Application number
KR1020160129691A
Other languages
English (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 KR1020160129691A priority Critical patent/KR101794719B1/ko
Application granted granted Critical
Publication of KR101794719B1 publication Critical patent/KR101794719B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

복수의 호스트, 복수의 스위치, 물리 주소와 가상 주소의 매핑 정보를 포함하는 매핑 테이블을 관리하는 매핑 모듈을 포함하는 네트워크 하이퍼바이저, 및 복수의 가상 네트워크 컨트롤러를 포함하는 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 시스템 및 이를 이용한 IP 주소를 가상화하는 방법이 개시된다. SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법은 복수의 스위치 중 어느 하나의 스위치(이하, '제1 스위치'라 함)가 인접한 호스트(이하, '소스 호스트'라 함)로부터 패킷을 수신하는 단계, 상기 제1 스위치가 상기 패킷을 상기 네트워크 하이퍼바이저에 전송하고 패킷 전송 규칙을 요청하는 단계, 상기 네트워크 하이퍼바이저가 상기 소스 호스트의 가상주소 및 상기 제1 스위치의 물리주소를 매핑하여 매핑 테이블에 기록하는 단계, 상기 네트워크 하이퍼바이저가 상기 가상 네트워크 컨트롤러에 패킷 전송 규칙을 요청하는 단계, 상기 가상 네트워크 컨트롤러가 가상 네트워크 내에서의 패킷 전송 규칙을 생성하여 상기 네트워크 하이퍼바이저에 전달하는 단계, 상기 네트워크 하이퍼바이저가 상기 패킷 전송 규칙에 상기 매핑 테이블을 이용하여 가상 주소에 대응하는 물리 주소를 캡슐화하는 액션을 추가하여 수정된 패킷 전송 규칙을 생성하는 단계, 상기 네트워크 하이퍼바이저가 상기 수정된 패킷 전송 규칙을 상기 제1 스위치에 전송하는 단계, 상기 제1 스위치가 상기 패킷에 물리 주소를 캡슐화하여 캡슐화된 패킷을 생성하는 단계, 상기 제1 스위치가 상기 캡슐화된 패킷을 상기 패킷의 목적지 호스트와 인접한 스위치(이하, '제2 스위치'라 함)에 전달하는 단계, 상기 제2 스위치가 상기 캡슐화된 패킷의 역캡슐화를 수행하는 단계, 및 상기 제2 스위치가 상기 목적지 호스트의 가상 주소를 이용하여 상기 목적지 호스트에 패킷을 전달하는 단계를 포함한다.

Description

SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법 및 시스템{METHOD AND SYSTEM FOR IP ADDRESS VIRTUALIZATION IN SDN-BASED NETWORK VIRTHALIZATION PLATFORM}
본 발명의 개념에 따른 실시 예는 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법 및 시스템에 관한 것으로, 더욱 상세하게는, 네트워크 하이퍼바이저가 가상 네트워크별로 호스트의 가상 주소와 스위치의 물리주소를 N:1로 매핑한 매핑 테이블을 생성하고 관리함으로써, SDN 기반 네트워크 가상화 플랫폼에서 IP 주소의 가상화를 수행하는 방법 및 시스템에관한 것이다.
본 발명은 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 기법에 관한 것이다. 네트워크 가상화를 실현하는 네트워크 하이퍼바이저는 크게 주소, 정책, 토폴로지에 대한 추상화 및 가상화를 제공할 수 있다. 그 중 주소 가상화와 관련하여 기존 연구에서는 VLAN(Virtual Local Area Network)을 이용하여 각 주소가 속하는 가상 네트워크를 식별하거나, 호스트의 IP를 네트워크의 양 끝단(Edge)에 위치한 스위치에서 가상 IP와 물리 IP를 1:1로 대응시켜, 가상 IP를 물리 IP로 바꿔쓰는(IP rewriting) 방식 등을 활용하여 주소 가상화를 실현하였다. 그러나 이러한 주소 가상화 기법은 다음과 같은 문제점을 지니고 있다.
VLAN 기반 가상 네트워크 식별 기법의 경우, VLAN 자체를 활용할 수 없으며, VLAN ID 만큼의 가상 네트워크만 수용하고 식별할 수 있다. 또한, 네트워크 2계층에서 포워딩을 수행하므로, IP에서 연구된 다양한 네트워킹 기술의 활용이 불가능하다. FlowN(Drutskoy, Dmitry, Eric Keller, and Jennifer Rexford. "Scalable network virtualization in software-defined networks.")이 VLAN 기반 가상 네트워크 식별 기법의 대표적인 예아다.
IP 바꿔쓰기(IP rewriting) 기법의 경우, 가상 네트워크의 개수나 가상 네트워크 내부 호스트의 개수에 제약이 있으며, 플로우 테이블의 엔트리 수 증가하는 문제점이 있다. 또한, 가상 호스트 마이그레이션 등 네트워크의 상태 변화 발생 시 플로우 테이블 업데이트 메시지 수가 막대하게 증가한다. OpenVirteX(Al-Shabibi, Ali, et al. "OpenVirteX: Make your virtual SDNs programmable.")가 IP 바꿔쓰기(IP rewriting) 기법의 대표적인 예이다.
가장 최근의 연구이자 대표적인 네트워크 하이퍼바이저인 OpenVirteX는 주소 가상화를 위해 가상 주소 하나당 새로운 물리 주소 하나를 할당한다. 그리고 가상 호스트에 인접한 스위치를 통해 가상 주소를 갖는 패킷이 물리 주소로 변환되도록 설정함으로써, 가상 호스트가 물리 네트워크를 통해 통신할 수 있도록 제어한다. 말단 스위치는 OpenVirteX가 설정한 플로우 룰에 따라 가상 주소를 물리 주소로 변환하는 IP 바꿔쓰기 작업을 수행한다.
도 2는 OpenVirteX를 이용하여 가상화된 네트워크에서 패킷이 전송되는 과정을 도시한다. 가상 네트워크 1에 속한 호스트 A는 가상 주소를 통해 같은 가상 네트워크의 호스트 B로 패킷을 전송하려 한다. 물리 네트워크를 통해 패킷이 전송되기 위해서는 가상 주소가 물리 주소로 변환되어야 한다. 이를 위해 A와 인접한 스위치는 헤더를 수정하여 가상 주소를 물리 주소로 덮어쓰는 작업을 수행한다. 물리 주소를 기반으로 전송된 패킷은 B에 인접한 스위치에 도착하면 가상 주소로 다시 변환된다. 최종적으로 가상 주소를 통해 목적지 호스트 B로 전달된다.
물리 주소를 할당할 때에는 가상 주소를 식별하기 위해 물리 주소를 두 개의 영역으로 나누어 사용한다. 도 2에서 보는 바와 같이 물리 주소의 첫 번째 영역은 가상 네트워크를 구별하기 위한 테넌트 ID로 사용된다. 두 번째 영역은 가상 네트워크 내에서 호스트를 구별하기 위한 ID로 사용된다.
이러한 방식은 물리 주소 공간을 분할하여 사용하기 때문에 가상 네트워크의 개수나 가상 네트워크 내부 호스트의 개수에 제약을 받는다. 또한 각 가상 네트워크의 모든 플로우 룰이 물리 네트워크에 개별적으로 설치된다는 문제가 있다. 이로 인해 플로우 테이블 크기가 증가하며, 단말의 이동 시에는 막대한 플로우 테이블 업데이트 메시지가 발생한다. 이러한 문제들은 네트워크의 크기가 커질수록 더욱 심화되며, IP 바꿔쓰기 방식은 확장성이 떨어지는 문제점이 존재한다.
따라서, 물리 스위치의 플로우 테이블의 크기를 절약하고 네트워크 하이퍼바이저의 확장성을 향상시킬 수 있는 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법이 요구된다.
이와 관련하여, 일본공개특허 제JP2015-204614(A)호(발명의 명칭 : 객체 지향의 네트워크 가상화)는 가상 네트워크 오브젝트를 정의하는 서비스 패턴에 가상 주소 공간과 물리적 주소 공간의 매핑하는 구조에 대하여 개시하고 있다.
또한, 일본공개특허 제JP2016-519487(A)호(발명의 명칭 : 컴파일러와 소프트웨어 정의된 네트워크를 위한 방법)는 가상 네트워크의 할당 결과를 참조하지 않고, 가상 머신의 기동을 기다리지 않고, 가상 인터페이스와 가상 NIC와의 대응 관계를 파악할 수 있는 네트워크 가상화 시스템에 대하여 개시하고 있다.
JP 2015-204614 A JP 2016-519487 A
FlowN(Drutskoy, Dmitry, Eric Keller, and Jennifer Rexford. "Scalable network virtualization in software-defined networks." IEEE Internet Computing 17.2 (2013): 20-27. Al-Shabibi, Ali, et al. "OpenVirteX: Make your virtual SDNs programmable." Proceedings of the third workshop on Hot topics in software defined networking. ACM, 2014.
본 발명이 이루고자 하는 기술적인 과제는 물리 스위치의 플로우 테이블의 크기를 절약하고 네트워크 하이퍼바이저와 스위치 사이의 네트워크 대역폭 절약할 수 있는 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법 및 시스템을 제공하는 것이다.
본 발명이 이루고자 하는 기술적인 과제는 네트워크 하이퍼바이저의 확장성을 향상시킬 수 있는 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법 및 시스템을 제공하는 것이다.
본 발명의 일 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법은 매핑 테이블 생성 단계 및 패킷 전송 단계를 포함하되, 매핑 테이블 생성 단계는 스위치가 스위치와 인접한 적어도 하나 이상의 호스트로부터 가상 주소를 수신하는 단계, 스위치가 적어도 하나 이상의 호스트로부터 수신한 가상 주소를 스위치의 물리주소와 매핑하여 매핑 정보를 생성하는 단계, 및 스위치가 매핑 정보를 매핑 테이블을 관리하는 네트워크 하이퍼바이저에 송신하는 단계를 포함하고, 패킷 전송 단계는 복수의 스위치 중 어느 하나의 스위치(이하, '제1 스위치'라 함)가 인접한 호스트(이하, '소스 호스트'라 함)로부터 패킷을 수신하는 단계, 제1 스위치가 매핑 테이블을 이용하여 패킷에 물리 주소 정보를 캡슐화하여 캡슐화된 패킷을 생성하는 단계, 제1 스위치가 캡슐화된 패킷을 패킷의 목적지 호스트와 인접한 스위치(이하, '제2 스위치'라 함)에 전달하는 단계, 제2 스위치가 캡슐화된 패킷의 역캡슐화를 수행하는 단계, 및 제2 스위치가 목적지 호스트의 가상 주소를 이용하여 목적지 호스트에 패킷을 전달하는 단계를 포함한다.
본 발명의 일 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 시스템은 복수의 호스트, 복수의 말단 스위치, 물리 주소와 가상 주소의 매핑 정보를 포함하는 매핑 테이블을 관리하는 매핑 모듈을 포함하는 네트워크 하이퍼바이저, 및 복수의 가상 네트워크 각각을 관리하는 복수의 가상 네트워크 컨트롤러를 포함하되, 복수의 호스트 중 어느 하나의 호스트는 인접한 말단 스위치에 호스트의 가상 주소를 등록하고, 복수의 호스트 중 어느 하나의 호스트는 인접한 말단 스위치를 통해 다른 호스트와 패킷을 송수신하며, 복수의 말단 스위치 중 어느 하나의 말단 스위치는 말단 스위치와 인접한 적어도 하나 이상의 호스트로부터 가상 주소를 수신하여 말단 스위치의 물리 주소와 매핑하여 매핑 정보를 생성하고, 매핑 정보를 네트워크 하이퍼바이저의 매핑 모듈에 송신하며, 네트워크 하이퍼바이저의 매핑 모듈은 복수의 말단 스위치로부터 수신한 매핑 정보를 이용하여 매핑 테이블을 생성하되, 매핑 정보는 가상 네트워크별 물리 주소와 가상 주소의 매핑 정보를 포함한다.
본 발명의 다른 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법은 복수의 스위치 중 어느 하나의 스위치(이하, '제1 스위치'라 함)가 인접한 호스트(이하, '소스 호스트'라 함)로부터 패킷을 수신하는 단계, 상기 제1 스위치가 상기 패킷을 상기 네트워크 하이퍼바이저에 전송하고 패킷 전송 규칙을 요청하는 단계, 상기 네트워크 하이퍼바이저가 상기 소스 호스트의 가상주소 및 상기 제1 스위치의 물리주소를 매핑하여 매핑 테이블에 기록하는 단계, 상기 네트워크 하이퍼바이저가 상기 가상 네트워크 컨트롤러에 패킷 전송 규칙을 요청하는 단계, 상기 가상 네트워크 컨트롤러가 가상 네트워크 내에서의 패킷 전송 규칙을 생성하여 상기 네트워크 하이퍼바이저에 전달하는 단계, 상기 네트워크 하이퍼바이저가 상기 패킷 전송 규칙에 상기 매핑 테이블을 이용하여 가상 주소에 대응하는 물리 주소를 캡슐화하는 액션을 추가하여 수정된 패킷 전송 규칙을 생성하는 단계, 상기 네트워크 하이퍼바이저가 상기 수정된 패킷 전송 규칙을 상기 제1 스위치에 전송하는 단계, 상기 제1 스위치가 상기 패킷에 물리 주소를 캡슐화하여 캡슐화된 패킷을 생성하는 단계, 상기 제1 스위치가 상기 캡슐화된 패킷을 상기 패킷의 목적지 호스트와 인접한 스위치(이하, '제2 스위치'라 함)에 전달하는 단계, 상기 제2 스위치가 상기 캡슐화된 패킷의 역캡슐화를 수행하는 단계, 및 상기 제2 스위치가 상기 목적지 호스트의 가상 주소를 이용하여 상기 목적지 호스트에 패킷을 전달하는 단계를 포함한다.
본 발명의 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법 및 시스템은 가상 네트워크의 룰을 1:1로 물리 네트워크에 설치하지 아니하며, 개별 가상 네트워크의 동일한 룰이 하나의 플로우 룰로 통합되기 때문에, 플로우 테이블의 크기를 절약할 수 있는 효과가 있다.
또한, 본 발명의 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법 및 시스템은 중복된 플로우 룰을 하나의 물리 플로우 룰로 매핑하기 때문에, 중복된 가상 네트워크 플로우 룰 설치를 위한 네트워크 대역폭 사용을 줄일 수 있으며, 이를 통해 네트워크 하이퍼바이저는 더 많은 수의 스위치를 제어할 수 있다.
또한, 본 발명의 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법 및 시스템은 네트워크 하이퍼바이저에 매핑 테이블(mapping table) 두고, 하나의 물리 주소에 다양한 가상주소를 매핑하여 사용하므로 수용하는 가상 네트워크의 수에 제한이 없게 되어 네트워크 하이퍼바이저의 확장성을 향상시킬 수 있는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 일 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 장치의 기능 블럭도이다.
도 2는 종래 기법에 따른 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법을 설명하는 예시적인 도면이다.
도 3은 SDN 기반 네트워크 가상화 구조를 나타낸다.
도 4는 본 발명의 일 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법을 설명하기 위한 흐름도이다.
도 5는 도 3의 단계 S100을 보다 상세하게 설명하는 예시적인 도면이고, 도 6은는 도 4의 단계 S200을 보다 상세하게 설명하는 예시적인 도면이다.
도 7은 본 발명의 다른 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법을 설명하기 위한 흐름도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
우선, 본 발명에 대한 설명에 앞서, 본 발명의 배경이 되는 기술에 대해 설명하면 다음과 같다.
SDN(Software Defined Networking)은 네트워킹 장비의 전송평면과 제어평면을 분리하고, 제어평면을 중앙집중화하여 전체 네트워크에 대한 단일한 방식의 제어가 가능한 네트워킹 구조로서, 기존 제조사 종속적이고 새로운 연구의 적용이 어려운 네트워크에 유연성과 프로그래밍가능성(programmability)을 부여한다는 장점이 존재한다. 중앙집중화된 스위치의 제어평면은 SDN 컨트롤러라고 하며, 스위치와 SDN 컨트롤러는 SBI(Southbound Interface)를 통해 데이터 전송에 필요한 규칙을 내려보내는 등의 상호 통신을 수행한다. 스위치와 컨트롤러가 통신을 수행하는 채널을 컨트롤 채널이라고 한다. SDN의 초기 연구로서, 사실상의 표준 SBI 프로토콜로 OpenFlow가 주로 사용된다. 본 기술은 기존의 폐쇄된 네트워크 환경에 혁신적인 발전을 가져오는 기술로서, 차세대 네트워킹 기술인 IoT, 5G, NFV Orchestration 등의 기반 기술로서 동작하고 있다.
가상화는 물리 컴퓨팅의 자원을 추상화하여, 보다 효과적인 자원의 운용을 목표로 하는 기술이다. 크게 서버 가상화, 스토리지 가상화, 네트워크 가상화로 나뉘며 서버 가상화와 스토리지 가상화는 상당부분 연구 및 기술의 진보가 이루어져 클라우드와 같은 상용 서비스로도 활용되고 있다. 그러나 네트워크 가상화는 기존 네트워킹의 한계로 인해 큰 발전을 이루지 못했다.
네트워크 가상화는 단일한 물리 네트워크 자원 위에 다수의 가상 네트워크를 생성하고 가상 네트워크 간의 고립(isolation)을 보장하는 기술을 뜻한다. 네트워크 가상화가 그 동안 어려웠던 이유는 네트워크에 추상화 계층이 존재하지 않기 때문이다. 특히 기존의 네트워크에 대한 제어가 분산적으로 이루어졌으므로, 각각의 장비가 스스로의 상태를 관리하고 필요에 따라서 서로의 정보를 교환할 뿐, 전체 네트워크 자원에 대한 글로벌 뷰(Global View)를 갖고 제어하는 계층이 존재할 수 없었다. 반면 SDN(Software-Defined Networking)은 기존 스위치 장비의 제어 기능을 분리하고, 이를 중앙 집중화 된 컨트롤러로 모아서 처리하므로 물리 네트워크에 대한 추상화 계층을 생성하기에 효과적이다. 따라서 이와 같은 SDN 구조를 활용해 네트워크 가상화를 실현하기 위한 연구가 다수 수행되고 있다. 도 3은 SDN 기반 네트워크 가상화 구조를 나타낸다. 가상 네트워크를 사용하는 테넌트(Tenant)는 SDN 컨트롤러를 통해 자신의 가상 네트워크를 제어한다. 이때 각 테넌트는 가상 네트워크에 대한 독립적인 라우팅 권한 및 주소 공간을 갖는다. 네트워크 하이퍼바이저는 가상 네트워크 별로 사용하는 가상 주소를 물리 주소로 변환하여, 실제 물리 네트워크에서 동작하도록 제어하는 기능을 수행하며 이를 주소 가상화라고 한다.
네트워크 가상화 기술은 크게 주소(address) 가상화, 정책(policy) 가상화, 및 토폴로지 가상화 등으로 나뉘며, 주소 가상화란 단일한 IP 또는 MAC 주소 공간에 가상 네트워크 사용자(tenant) 별로 임의의 주소 공간을 제공하고, 라우팅 권한을 부여하는 기술을 말한다. 테넌트(Tenant)는 각 가상 네트워크의 사용자를 의미한다.
네트워크 가상화를 실현하기 위한 소프트웨어 계층인 네트워크 하이퍼바이저(network hypervisor)는 물리 스위치와 SDN 컨트롤러 사이에 존재하며, 각 SDN 컨트롤러에게 논리적인 가상 네트워크 자원을 제공한다. 플로우 룰(Flow rule)은 SDN 컨트롤러가 물리 스위치에 설치하는 네트워크 패킷 전송에 대한 규칙을 의미하며, 패킷의 특정 필드에 대한 일치(매칭) 정보 및 매칭된 패킷에 대해 수행하는 동작(액션)을 담고 있다.
SDN 개념에서는 스위치가 새로운 패킷을 받으면 컨트롤러에 패킷을 처리하기 위한 규칙을 요청하게 된다. 가상화 환경에서는 스위치가 네트워크 하이퍼바이저에게 이를 요청한다. 요청받은 네트워크 하이퍼바이저는 각 가상네트워크를 관장하는 컨트롤러에게 요청을 전달하며, 해당 컨트롤러는 자신의 가상 네트워크 상에서의 포워딩 규칙을 계산하여 네트워크 하이퍼바이저에게 전송한다. 네트워크 하이퍼바이저는 전송받은 규칙이 말단 스위치와 호스트에 대한 것이면, 패킷에 물리 IP를 캡슐화(Encapsulation)하는 명령을 추가하여 플로우 룰을 설치하며, 말단이 아닌 코어 스위치의 경우 컨트롤러가 보낸 규칙에서 네트워크 주소(IP)를 물리 주소로 변경하여 내려보낸다. 본 과정이 수행되어 스위치에 플로우 룰이 설치되고 나면, 각 스위치는 규칙에 따라 패킷을 포워딩하게 된다.
이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다.
먼저, 도 1을 참조하여, 본 발명의 일 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 장치에 대해 상술한다.
도 1은 본 발명의 일 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 시스템의 기능 블럭도이다. 도 1을 참조하면, SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 시스템(10)는 복수의 호스트(100), 복수의 스위치(200), 네트워크 하이퍼바이저(300), 및 복수의 가상 네트워크 콘트롤러(400)를 포함한다.
본 명세서에서 사용되는 '모듈'이라 함은 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 '-모듈'은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나 한 종류의 하드웨어를 의미하는 것은 아니다.
호스트(100)는 해당 단말 호스트(100)와 인접한 말단 스위치(200)에 해당 호스트의 가상 주소를 등록하고, 인접한 말단 스위치(200)를 통해 패킷을 송수신한다.
스위치(200)는 호스트(100)의 가상 주소를 물리 주소로 매핑하여 호스트(100)가 물리 네트워크를 통해 통신할 수 있도록 제어한다. 말단(Edge) 스위치는 호스트(100)와 인접한 스위치를 의미한다. 각각의 말단 스위치(200)는 인접한 호스트(들)(100)로부터 가상 주소를 수신하여 자신의 물리 주소와 매핑하고 매핑 정보를 네트워크 하이퍼바이저에 송신한다.
또한, 말단 스위치(200)는 인접한 호스트(100)로부터 패킷을 수신하는 경우, 네트워크 하이퍼바이저(300)의 매핑 테이블을 이용하여 캡슐화 작업을 수행하고, 목적지 호스트(100)와 인접한 말단 스위치(200)에 캡슐화된 패킷을 전달한다. 또한, 말단 스위치(200)가 다른 말단 스위치(200)로부터 캡슐화된 패킷을 수신하는 경우, 캡슐화된 패킷의 역갭술화 작업을 수행하고, 가상 주소를 이용하여 해당 패킷의 목적지 호스트(100)에 패킷을 전달한다.
네트워크 하이퍼바이저(300)는 각각의 가상 네트워크 별로 사용하는 가상 주소를 물리 주소로 변화하여 실제 물리 네트워크에서 동작하도록 제어하는 기능을 수행한다. 네트워크 하이퍼바이저(300)는 네트워크 가상화를 실현하기 위한 소프트웨어 계층으로 물리 스위치(200)와 가상 네트워크 컨트롤러(400)의 사이에 존재하며, 각각의 가상 네트워크 컨트롤러(400)에 논리적인 가상 네트워크 자원을 제공한다.
네트워크 하이퍼바이저(300)는 매핑 테이블을 관리하는 매핑 모듈(미도시)을 포함한다. 매핑 모듈은 복수의 말단 스위치(200)로부터 매핑 정보를 수신하여 매핑 테이블을 생성하고 이를 관리한다.
각각의 가상 네트워크 컨트롤러(400)는 각각의 테넌트의 가상 네트워크를 제어한다. 가상 네트워크 컨트롤러(400)는 SDN 컨트롤러일 수 있다.
이하, 도 4 내지 도 6을 참조하여, 본 발명의 일 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법에 대하여 자세히 살펴보도록 한다.
도 4는 도 1에 도시한 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 장치를 이용한 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법을 설명하기 위한 흐름도이다.
도 5는 도 4의 매핑 테이블 생성 단계를 보다 상세하게 설명하는 예시적인 도면이고, 도 5는 도 4의 패킷 전달 단계를 보다 상세하게 설명하는 예시적인 도면이다.
도 4를 참조하면, SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 장치를 이용한 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법은 매핑 테이블 생성 단계(S100) 및 패킷 전송 단계(S200)를 포함한다.
본 발명에서는 가상 네트워크의 주소 공간과 물리 네트워크에서의 주소 공간을 분리하고, 각 공간 사이의 매핑을 네트워크 하이퍼바이저에 관리하여 다수의 가상 주소 공간이 단일의 물리 주소 공간에서 동작할 수 있는 기법을 제안한다.
먼저, 각각의 단말 호스트는 자신의 가상 주소를 그대로 사용하며, 자신과 인접한 말단(Edge) 스위치에 자신의 가상 주소를 등록한다(S110). 예를 들어, 단말 호스트는 가상 주소를 그대로 사용하며, 자신과 인접한 터널링 라우터에 자신의 가상 주소를 등록한다. 말단(Edge) 스위치는 네트워크의 말단에서 단말(호스트)과 직접 연결된 스위치를 의미하며, 가상화된 환경에서 내부 네트워크의 통신을 수행하기 위한 터널링 등의 연산을 수행할 수도 있다.
다음, 말단(Edge) 스위치는 자신에게 할당된 물리 주소와 등록된 가상 주소를 매핑하고(S120), 말단(Edge) 스위치는 매핑 정보를 하이퍼바이저의 매핑 모듈에 전달한다(S130). 하이퍼바이저는 내부적으로 가상-물리 주소 매핑 모듈을 가지며, 이 매핑 모듈 상에 가상 네트워크별 매핑 테이블을 생성함으로써 각 테넌트를 구별한다. 하이퍼바이저는 매핑 정보를 바탕으로 물리 주소를 통해 패킷이 전달될 수 있도록 스위치들을 제어한다.
이때, 종래의 기법과 달리 본 발명은 가상 네트워크의 룰을 1:1로 물리 네트워크에 설치하지 않는다. 기존의 IP 바꿔쓰기 등의 주소 가상화 방식은 가상 네트워크가 생성한 플로우 룰이 개별적으로 물리 네트워크에 설치되어 플로우 테이블의 크기가 매우 커진다. 제안하는 기법은 개별 가상 네트워크의 동일한 룰이 하나의 플로우 룰로 통합되기 때문에, 플로우 테이블의 크기를 절약할 수 있는 효과가 있다. SDN 스위치는 플로우 테이블을 주로 TCAM(Ternary Content Addressable Memory)를 사용하여 구성하는데, TCAM은 크기 면에서 제약이 있으며 고가이므로 플로우 테이블의 크기에 대한 최적화는 SDN 기술의 상용화에 있어서 중요한 사항이다.
또한, 본 발명은 중복된 플로우 룰을 하나의 물리 플로우 룰로 매핑하기 때문에, 네트워크 하이퍼바이저와 스위치 사이의 네트워크 대역폭을 절약할 수 있다.또한, 네트워크 대역폭 사용량 감소를 통해 네트워크 하이퍼바이저는 더 많은 수의 스위치에 대한 제어가 가능하다.
종래의 기법에 의하면 네트워크 내의 단말(호스트)이 이동할 경우, 네트워크 내의 플로우 룰에 대한 업데이트가 필요하다. 그러나 본 발명은 말단 스위치에서 내부 네트워크 통신을 위한 터널링에 관한 룰만 수정하면 정상적인 동작이 가능하다. 따라서 네트워크 상태가 변화하는 경우에 물리 네트워크에 존재하는 플로우 룰을 업데이트하기 위한 컨트롤 채널 통신을 감소시킬 수 있으며, 따라서, 네트워크 하이퍼바이저와 스위치 사이의 네트워크 대역폭을 절약할 수 있다.
이하, 송신(소스) 호스트가 가상 주소를 통해 수신(목적지) 호스트에게 패킷을 전송하는 단계(S200)를 상세히 설명한다.
먼저, 송신(소스) 호스트는 인접한 말단(Edge) 스위치에 패킷을 전달한다(S210).
다음, 송신(소스) 호스트와 인접한 말단 스위치는 터널링(Tunneling) 작업을 수행하여 수신(목적지) 호스트와 인접한 말단 스위치에 패킷을 전송한다. 터널링(Tunneling)이란, 한 네트워크에서 다른 종류의 네트워크를 거쳐 데이터를 보낼 수 있도록 하는 기술이다. 주로 말단 스위치에서 패킷의 앞에 다른 종류의 네트워크에서 사용되는 프로토콜 헤더를 캡슐화(encapsulation)하고, 전송 이후 상대방 말단 스위치에서 캡슐화된 프로토콜 헤더를 역캡슐화(decapsulation)하는 방식으로 구현된다.
송신(소스) 호스트와 인접한 말단 스위치는 도착한 패킷의 가상 주소에 매핑된 물리 주소를 찾아 캡슐화(encapsulation) 작업을 수행한다(S220). 구체적으로, 송신(소스) 호스트와 인접한 말단 스위치가 패킷을 수신하면 네트워크 하이퍼바이저에 패킷을 전송하기 위한 규칙을 요청한다. 요청받은 네트워크 하이퍼바이저는 해당 가상 네트워크를 제어하는 가상 네트워크 컨트롤러에게 요청을 전달하고, 해당 가상 네트워크 컨트롤러는 포워딩 규칙을 계산하여 네트워크 하이퍼바이저에게 전송한다. 네트워크 하이퍼바이저는 패킷에 물리 IP를 캡슐화(encapsulation)하는 명령을 추가하여 송신(소스) 호스트와 인접한 말단 스위치에 플로우 룰을 설치한다.
다음 송신(소스) 호스트와 인접한 말단(Edge) 스위치는 물리 주소를 통해 수신(목적지) 호스트와 인접한 말단(Edge) 스위치에 캡슐화된 패킷을 전달한다(S230).
수신(목적지) 호스트와 인접한 말단(Edge) 스위치는 물리 주소를 통해 목적지 말단(Edge) 스위치에 도착한 패킷을 역 캡슐화(decapsulation)하는 작업을 수행한다(S240).
다음, 수신 호스트와 인접한 말단(Edge) 스위치는 가상 주소를 통해 수신(목적지) 호스트에 역 캡술화된 패킷을 전달한다(S250).
본 발명에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법은 물리 주소의 영역을 다수의 가상 네트워크가 나누어서 사용하기 때문에 수용할 수 있는 가상 네트워크의 수가 제한적인 종래의 기법과 달리, 네트워크 하이퍼바이저에 매핑 테이블 두고, 하나의 물리 주소에 다양한 가상주소를 매핑하여 사용하므로 수용하는 가상 네트워크의 수에 제한이 없다.
도 5는 본 발명에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법에 있어서 실제 매핑 테이블 생성 방법의 예시이다. 호스트 A는 호스트 A와 인접한 말단(Edge) 스위치에 가상 주소를 등록하고, 호스트 A와 인접한 말단(Edge) 스위치는 호스트 A의 가상 주소를 자신의 물리주소와 매핑하여 네트워크 하이퍼바이저에 전달한다. 네트워크 하이퍼바이저는 네트워크에 속한 모든 스위치로부터 스위치와 인접한 호스트(단말)와의 가상주소-물리주소 매핑정보를 수신하여 매핑테이블을 생성하고 관리한다.
도 6은 본 발명에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법 실제 패킷 전달 방법의 예시이다. 호스트 A는 가상 주소를 통해 호스트 B에게 패킷을 전송한다. 패킷은 우선 말단(Edge) 스위치로 전달된다. 말단(Edge) 스위치는 도착한 패킷의 가상 주소에 매핑된 물리 주소를 찾아 프로토콜 헤더를 캡슐화(encapsulation)하는 작업을 수행한다. 물리 주소를 통해 목적지 말단(Edge) 스위치에 도착한 패킷은 캡슐화된 프로토콜 헤더를 역 캡슐화(decapsulation)를 거친 후, 가상 주소를 통해 최종 목적지까지 전달된다.
예를 들어, 네트워크의 패킷의 앞에 'MAC Header - IP Header - UDP Header'를 부착하고 IP Header의 Source IP, Destination IP에 물리 IP주소를 세팅하고, UDP 헤더의 포트 필드에 Tenant ID를 주어 물리 네트워크에서의 전송이 이루어지게 구현할 수 있다. 기존 TCP/IP의 일반적인 프로토콜 스택을 따르므로, 스위치가 새로운 프로토콜을 지원하지 않아도 본 기법을 활용할 수 있으며, IP의 QoS 등 기존 네트워크에서 사용되는 서비스를 그대로 유지하면서 주소 가상화를 실현할 수 있다.
또는, LISP를 이용하여 구현하는 것도 가능하다. LISP 프로토콜은 패킷 당 IP를 크게 두 개 할당하는 터널링 프로토콜의 일종으로, 단말의 위치를 나타내는 IP와 단말을 식별하는 IP 두 가지를 할당하는데, 이를 위해 LISP 프로토콜을 통해 전송되는 패킷은 기존 패킷에 LISP 헤더를 추가하여 전송된다. 즉, LISP을 통해 전달되는 패킷은 'MAC - IP - UDP - LISP - 기존 패킷'의 터널링 구조를 가지게 된다.
바람직하게는 터널링 오버헤드를 줄이기 위하여 LISP 헤더를 제하고, 최소한의 TCP/IP 네트워킹에 필요한 MAC-IP-UDP 헤더로만 터널링을 수행한다.
이하, 도 7을 참조하여, 본 발명의 다른 실시 예에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법에 대하여 자세히 살펴보도록 한다.
도 7은 도 1에 도시한 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 장치를 이용한 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법을 설명하기 위한 흐름도이다. 도 4에 따른 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법과 중복되는 설명은 생략한다.
먼저, 송신(소스) 호스트는 인접한 말단(Edge) 스위치에 패킷을 전달한다(S310).
다음, 해당 패킷을 목적지 호스트에 전달하기 위한 플로우 룰 설치 단계(S320)를 수행한다. 각각의 스위치에 플로우 룰을 설치하는 단계는 아래와 같다.
먼저, 소스 호스트 인접 말단 스위치는 해당 패킷을 하이퍼바이저에 전달한다(S321).
하이퍼바이저는 소스 호스트의 가상주소 및 소스 호스트 인접 말단 스위치의 물리주소를 매핑하여 매핑 테이블에 기록하고, 가상 네트워크 컨트롤러에 패킷인 메시지를 전달하며 패킷 전송 규칙을 요청한다(S323). 구체적으로, 패킷인(PacketIn) 메시지를 보낸 소스 호스트 인접 말단 스위치의 IP와 패킷인(PacketIn) 메시지 내의 패킷에 포함된 소스 호스트의 IP를 매핑하여 매핑 테이블을 업데이트하고, 패킷인 메시지를 가상 네트워크 컨트롤러에 전달하여 메시지를 전송하기 위한 규칙을 요청한다.
다음, 가상 네트워크 컨트롤러는 메시지 포워딩 규칙(패킷 전송 규칙, 플로우 룰)을 생성하여 네트워크 하이퍼바이저에 전달한다(S325). 예를 들어, OpenFlow 프로토콜의 FlowMod 메시지를 사용할 수 있다.
다음, 하이퍼바이저는 패킷 전송 규칙을 전송할 스위치(하이퍼바이저에 패킷 전송 규칙을 요청한 스위치)의 메시지 전달 경로 상 위치에 따라 패킷 전송 규칙을 수정하고, 수정된 패킷 전송 규칙을 해당 스위치에 전송한다(S327).
구체적으로, 하이퍼바이저로부터 플로우 룰을 전송받는 스위치가 메시지 전달 경로의 첫번째 스위치(Ingress 스위치)인 경우, 플로우 룰에 매핑 테이블을 이용하여 가상 주소에 대응하는 물리 주소를 캡슐화하는 캡슐화 액션을 추가하여 수정된 플로우 룰을 생성하고, 하이퍼바이저로부터 플로우 룰을 전송받는 스위치가 메시지 전달 경로의 마지막 스위치(Egress 스위치)인 경우, 플로우 룰에 역캡슐화 액션을 추가하여 수정된 플로우 룰을 생성한다. 또한, 하이퍼바이저로부터 플로우 룰을 전송받는 스위치가 메시지 전달 경로의 중간에 위치한 스위치(말단 스위치가 아닌 스위치)인 경우, 매칭 필드(Matching Field)를 변경하여 수정된 플로우 룰을 생성한다. 매칭 필드는 플로우 룰에서 패킷 헤더를 매치하는 값으로, 가상 네트워크 컨트롤러에서 만들어진 플로우 룰은 가상 IP로 패킷을 매칭하도록 구성되어져 있으므로, 가상 IP를 물리 IP로 변경하여 캡슐화된 패킷의 전송을 수행할 수 있도록 한다.
다음, 소스 호스트 인접 말단 스위치는 하이퍼바이저로부터 수신한 수정된 플로우 룰을 설치한다(S329). 메시지 전달 경로 상에 위치한 스위치에 대하여 상기 플로우 룰 설치 단계(S320)를 반복한다.
다음, 소스 호스트와 인접한 말단 스위치는 도착한 패킷의 가상 주소에 매핑된 물리 주소를 찾아 캡슐화(encapsulation) 작업을 수행한다(S330).
다음, 소스 호스트와 인접한 말단(Edge) 스위치는 물리 주소를 통해 목적지 호스트와 인접한 말단(Edge) 스위치에 캡슐화된 패킷을 전달한다(S340).
목적지 호스트와 인접한 말단(Edge) 스위치는 물리 주소를 통해 목적지 말단(Edge) 스위치에 도착한 패킷을 역 캡슐화(decapsulation)하는 작업을 수행한다(S350).
다음, 목적지 호스트와 인접한 말단(Edge) 스위치는 가상 주소를 통해 목적지 호스트에 역 캡술화된 패킷을 전달한다(S360).
본 발명은 물리 주소와 가상 주소를 1:N으로 매핑하고, 동일한 경로의 플로우 룰을 하나로 통합하기 때문에 IP rewriting 기법처럼 라우팅 테이블의 크기가 커지는 문제가 발생하지 않는다. 또한, 호스트가 이동하는 경우에도 매핑 정보만 수정하면 되므로 컨트롤 메시지가 적게 발생한다는 장점이 있다.
또한, 물리 주소를 나누어서 가상 네트워크를 구별하는 방식이 아니라 매핑 테이블을 통해 하나의 물리 주소를 공유할 수 있으므로 더 많은 가상 네트워크를 구성할 수 있다. 제안하는 기법은 각각의 가상 네트워크가 모든 가상 주소 공간을 활용할 수 있다는 점에서 완전한 주소 가상화를 제공한다고 할 수 있다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
10 : 네트워크 가상화 플랫폼에서의 IP 주소 가상화 시스템
100 : 호스트(단말) 200 : 스위치
300 : 네트워크 하이퍼바이저 400 : 가상 네트워크 컨트롤러

Claims (9)

  1. 복수의 호스트, 복수의 스위치, 물리 IP(internet protocol) 주소와 가상 IP 주소가 1:N(N은 2 이상의 자연수)으로 매핑되는 매핑 정보를 포함하는 매핑 테이블을 관리하는 매핑 모듈을 포함하는 네트워크 하이퍼바이저, 및 복수의 가상 네트워크 컨트롤러를 포함하는 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 시스템에서의 IP 주소 가상화 방법에 있어서,
    복수의 스위치 중 제1 스위치가 인접한 소스 호스트로부터 패킷을 수신하는 단계;
    상기 제1 스위치가 상기 패킷을 상기 네트워크 하이퍼바이저로 전송하고 패킷 전송 규칙을 요청하는 단계;
    상기 네트워크 하이퍼바이저가 상기 소스 호스트의 가상 IP 주소와 상기 제1 스위치의 물리 IP 주소를 매핑하여 매핑 테이블에 기록하는 단계;
    상기 네트워크 하이퍼바이저가 상기 복수의 가상 네트워크 컨트롤러 중 상기 소스 호스트가 포함되는 가상 네트워크의 가상 네트워크 컨트롤러에 패킷 전송 규칙을 요청하는 단계;
    상기 가상 네트워크 컨트롤러가 상기 가상 네트워크 내에서의 패킷 전송 규칙을 생성하여 상기 네트워크 하이퍼바이저에 전달하는 단계;
    상기 네트워크 하이퍼바이저가 상기 패킷 전송 규칙에 상기 매핑 테이블을 이용하여 상기 소스 호스트의 가상 IP 주소에 대응하는 상기 제1 스위치의 물리 IP 주소를 캡슐화하는 액션을 추가하여 수정된 패킷 전송 규칙을 생성하는 단계;
    상기 네트워크 하이퍼바이저가 상기 수정된 패킷 전송 규칙을 상기 제1 스위치에 전송하는 단계;
    상기 제1 스위치가 상기 패킷에 상기 제1 스위치의 물리 IP 주소를 캡슐화하여 캡슐화된 패킷을 생성하는 단계;
    상기 제1 스위치가 상기 캡슐화된 패킷을 상기 복수의 스위치 중 상기 패킷의 목적지 호스트와 인접한 제2 스위치에 전달하는 단계;
    상기 제2 스위치가 상기 캡슐화된 패킷의 역캡슐화를 수행하는 단계; 및
    상기 제2 스위치가 상기 목적지 호스트의 가상 IP 주소를 이용하여 상기 목적지 호스트에 패킷을 전달하는 단계를 포함하고,
    상기 캡슐화된 패킷을 생성하는 단계는, 상기 패킷에 상기 제1 스위치의 물리 IP 주소, 상기 제2 스위치의 물리 IP 주소 및 상기 가상 네트워크를 식별하기 위한 아이디를 상기 패킷에 추가하여 상기 캡슐화된 패킷을 생성하고,
    상기 제1 스위치의 물리 IP 주소는 상기 패킷의 소스 물리 IP 주소이고,
    상기 제2 스위치의 물리 IP 주소는 상기 패킷의 목적지 물리 IP 주소인,
    SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법.
  2. 삭제
  3. 복수의 호스트, 복수의 스위치, 물리 IP 주소와 가상 IP 주소가 1:N(N은 2 이상의 자연수)으로 매핑되는 매핑 정보를 포함하는 매핑 테이블을 관리하는 매핑 모듈을 포함하는 네트워크 하이퍼바이저, 및 복수의 가상 네트워크 컨트롤러를 포함하는 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 시스템에서 IP 주소를 가상화하는 방법에 있어서,
    매핑 테이블 생성 단계; 및 패킷 전송 단계;를 포함하되,
    상기 매핑 테이블 생성 단계는
    스위치가 상기 스위치와 인접한 적어도 하나 이상의 호스트로부터 가상 IP 주소를 수신하는 단계;
    상기 스위치가 적어도 하나 이상의 호스트로부터 수신한 가상 IP 주소를 상기 스위치의 물리 IP 주소와 매핑하여 매핑 정보를 생성하는 단계; 및
    상기 스위치가 상기 매핑 정보를 매핑 테이블을 관리하는 네트워크 하이퍼바이저에 송신하는 단계;를 포함하고,
    상기 패킷 전송 단계는
    복수의 스위치 중 제1 스위치가 인접한 소스 호스트로부터 패킷을 수신하는 단계;
    상기 제1 스위치가 상기 매핑 테이블을 이용하여 상기 패킷에 물리 IP 주소 정보를 캡슐화하여 캡슐화된 패킷을 생성하는 단계;
    상기 제1 스위치가 상기 캡슐화된 패킷을 상기 패킷의 목적지 호스트와 인접한 제2 스위치에 전달하는 단계;
    상기 제2 스위치가 상기 캡슐화된 패킷의 역캡슐화를 수행하는 단계; 및
    상기 제2 스위치가 상기 목적지 호스트의 가상 IP 주소를 이용하여 상기 목적지 호스트에 패킷을 전달하는 단계를 포함하고,
    상기 캡슐화된 패킷을 생성하는 단계는, 상기 패킷에 상기 제1 스위치의 물리 IP 주소, 상기 제2 스위치의 물리 IP 주소 및 상기 소스 호스트가 속하는 가상 네트워크를 식별하기 위한 아이디를 상기 패킷에 추가하여 상기 캡슐화된 패킷을 생성하고,
    상기 제1 스위치의 물리 IP 주소는 상기 패킷의 소스 물리 IP 주소이고,
    상기 제2 스위치의 물리 IP 주소는 상기 패킷의 목적지 물리 IP 주소인,
    SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법.
  4. 삭제
  5. 제3항에 있어서,
    상기 제1 스위치가 상기 소스 호스트로부터 패킷을 수신하면, 상기 네트워크 하이퍼바이저에 패킷 전송 규칙을 요청하는 단계;
    상기 네트워크 하이퍼바이저가 상기 소스 호스트가 포함된 가상 네트워크를 제어하는 가상 네트워크 컨트롤러에 요청을 전달하고, 상기 가상 네트워크 컨트롤러로부터 패킷 전송 규칙을 수신하는 단계; 및
    상기 네트워크 하이퍼바이저가 상기 가상 네트워크 컨트롤러로부터 수신한 패킷 전송 규칙에 물리 IP 주소를 캡슐화하는 명령을 추가한 패킷 전송 규칙을 상기 제1 스위치에 송신하는 단계;를 더 포함하고,
    상기 제1 스위치는 물리 IP 주소를 캡슐화하는 명령을 추가한 패킷 전송 규칙을 이용하여 상기 패킷의 캡슐화를 수행하고 캡슐화된 패킷을 생성하는,
    SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법.
  6. 제3항에 있어서,
    상기 캡슐화된 패킷을 생성하는 단계 및 상기 캡슐화된 패킷을 상기 제2 스위치에 전달하는 단계는,
    상기 제1 스위치가 상기 패킷 앞에 'MAC 헤더 - IP 헤더 - UDP 헤더'를 부착하고 상기 IP 헤더의 소스 IP 및 목적지 IP에 물리 IP 주소를 세팅하고, 상기 UDP 헤더의 포트 필드에 테넌트 ID(Tenant ID)를 세팅하여, 물리 네트워크에서 상기 캡슐화된 패킷을 전송하는,
    SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 방법.
  7. 복수의 호스트, 복수의 말단 스위치, 물리 IP 주소와 가상 IP 주소가 1:N(N은 2 이상의 자연수)으로 매핑되는 매핑 정보를 포함하는 매핑 테이블을 관리하는 매핑 모듈을 포함하는 네트워크 하이퍼바이저, 및 복수의 가상 네트워크 각각을 관리하는 복수의 가상 네트워크 컨트롤러를 포함하는 SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 시스템에 있어서,
    상기 복수의 호스트 중 어느 하나의 호스트는 인접한 말단 스위치에 상기 호스트의 가상 IP 주소를 등록하고, 상기 복수의 호스트 중 어느 하나의 호스트는 상기 인접한 말단 스위치를 통해 다른 호스트와 패킷을 송수신하며,
    상기 복수의 말단 스위치 중 어느 하나의 말단 스위치는 상기 말단 스위치와 인접한 적어도 하나 이상의 호스트로부터 가상 IP 주소를 수신하여 상기 말단 스위치의 물리 IP 주소와 매핑하여 매핑 정보를 생성하고, 상기 매핑 정보를 상기 네트워크 하이퍼바이저의 상기 매핑 모듈에 송신하며,
    상기 네트워크 하이퍼바이저의 상기 매핑 모듈은 상기 복수의 말단 스위치로부터 수신한 매핑 정보를 이용하여 매핑 테이블을 생성하되, 상기 매핑 정보는 가상 네트워크별 물리 IP 주소와 가상 IP 주소의 매핑 정보를 포함하고,
    상기 복수의 호스트는 패킷을 전송하는 소스 호스트 및 패킷을 수신하는 목적지 호스트를 포함하고,
    상기 복수의 말단 스위치는 상기 소스 호스트와 인접한 말단 스위치 및 상기 목적지 호스트와 인접한 말단 스위치를 포함하되,
    상기 소스 호스트와 인접한 말단 스위치는 상기 소스 호스트로부터 상기 패킷을 수신하고, 상기 패킷에 상기 소스 호스트와 인접한 말단 스위치 및 상기 목적지 호스트와 인접한 말단 스위치의 물리 IP 주소 정보 및 상기 소스 호스트가 포함되는 가상 네트워크의 식별 정보를 캡슐화하여 캡슐화된 패킷을 생성하여 상기 목적지 호스트와 인접한 말단 스위치에 전송하고,
    상기 목적지 호스트와 인접한 말단 스위치는 상기 캡슐화된 패킷을 역캡슐화하여 상기 목적지 호스트에 전송하고,
    상기 소스 호스트와 인접한 말단 스위치가 상기 소스 호스트로부터 상기 패킷을 수신하면, 상기 네트워크 하이퍼바이저에 패킷 전송 규칙을 요청하고,
    상기 네트워크 하이퍼바이저가 상기 소스 호스트가 포함된 가상 네트워크를 제어하는 가상 네트워크 컨트롤러에 요청을 전달하여 상기 가상 네트워크 컨트롤러로부터 패킷 전송 규칙을 수신하고, 상기 가상 네트워크 컨트롤러로부터 수신한 패킷 전송 규칙에 물리 IP 주소를 캡슐화하는 명령을 추가한 패킷 전송 규칙을 상기 소스 호스트와 인접한 말단 스위치에 전송하고,
    상기 소스 호스트와 인접한 말단 스위치는 물리 IP 주소를 캡슐화하는 명령을 추가한 패킷 전송 규칙을 이용하여 상기 패킷의 캡슐화를 수행하고 캡슐화된 패킷을 생성하는,
    SDN 기반 네트워크 가상화 플랫폼에서의 IP 주소 가상화 시스템.
  8. 삭제
  9. 삭제
KR1020160129691A 2016-10-07 2016-10-07 Sdn 기반 네트워크 가상화 플랫폼에서의 ip 주소 가상화 방법 및 시스템 KR101794719B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160129691A KR101794719B1 (ko) 2016-10-07 2016-10-07 Sdn 기반 네트워크 가상화 플랫폼에서의 ip 주소 가상화 방법 및 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160129691A KR101794719B1 (ko) 2016-10-07 2016-10-07 Sdn 기반 네트워크 가상화 플랫폼에서의 ip 주소 가상화 방법 및 시스템

Publications (1)

Publication Number Publication Date
KR101794719B1 true KR101794719B1 (ko) 2017-11-08

Family

ID=60385388

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160129691A KR101794719B1 (ko) 2016-10-07 2016-10-07 Sdn 기반 네트워크 가상화 플랫폼에서의 ip 주소 가상화 방법 및 시스템

Country Status (1)

Country Link
KR (1) KR101794719B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101863050B1 (ko) 2017-12-29 2018-06-29 주식회사 위더스플래닛 Sdn 기반 중앙 집중식 네트워크의 컨트롤러 인식 및 자동 등록 방법
KR101982230B1 (ko) 2018-07-06 2019-08-28 고려대학교 산학협력단 프로그래밍 가능한 네트워크 가상화에서의 플로우 룰 가상화 장치 및 그 방법
WO2023287002A1 (ko) * 2021-07-14 2023-01-19 숭실대학교산학협력단 Lisp 기반 분산 컨테이너 가상화 환경에서의 어플리케이션에 대한 주소 관리 방법 및 시스템

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Andreas Blenk et al., "Survey on Network Virtualization Hypervisors for Software Defined Networking", IEEE Communications Surveys & Tutorials, Firstquarter 2016 (Date of Publication: 09 October 2015)*

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101863050B1 (ko) 2017-12-29 2018-06-29 주식회사 위더스플래닛 Sdn 기반 중앙 집중식 네트워크의 컨트롤러 인식 및 자동 등록 방법
KR101982230B1 (ko) 2018-07-06 2019-08-28 고려대학교 산학협력단 프로그래밍 가능한 네트워크 가상화에서의 플로우 룰 가상화 장치 및 그 방법
US10686700B2 (en) 2018-07-06 2020-06-16 Korea University Research And Business Foundation Flow rule virtualization apparatus and method thereof in programmable network virtualization
WO2023287002A1 (ko) * 2021-07-14 2023-01-19 숭실대학교산학협력단 Lisp 기반 분산 컨테이너 가상화 환경에서의 어플리케이션에 대한 주소 관리 방법 및 시스템

Similar Documents

Publication Publication Date Title
US11283707B2 (en) Segment routing with fast reroute for container networking
CN109716717B (zh) 从软件定义的网络控制器管理虚拟端口信道交换机对等体
CN106789667B (zh) 一种数据转发方法、相关设备及系统
CA2810660C (en) Computer system and communication method in computer system
CN106936777B (zh) 基于OpenFlow的云计算分布式网络实现方法、系统
US10063470B2 (en) Data center network system based on software-defined network and packet forwarding method, address resolution method, routing controller thereof
JP5991424B2 (ja) パケット書換装置、制御装置、通信システム、パケット送信方法及びプログラム
CN108111383B (zh) 一种基于sdn的跨域容器虚拟网络组建方法
JP5440712B2 (ja) 通信システム、通信装置、制御装置、パケットフローの転送経路の制御方法及びプログラム
US8571408B2 (en) Hardware accelerated data frame forwarding
EP3327994B1 (en) Virtual network management
WO2018019092A1 (zh) 一种网络中vlan id分配的方法及控制器
CN103748558A (zh) 虚拟网络覆盖
WO2017032300A1 (zh) 一种数据传输方法、虚拟网络管理装置及数据传输系统
KR20170125790A (ko) 고성능 클라우드 컴퓨팅 환경을 위한 인피니밴드 SR-IOV vSWITCH 아키텍쳐를 제공하는 시스템 및 방법
US20210320865A1 (en) Flow-based local egress in a multisite datacenter
EP2584742B1 (en) Method and switch for sending packet
TWI759571B (zh) 基於流表的資料傳送方法
EP3913870A1 (en) Packet forwarding method and network device
JP2018515051A (ja) マルチキャストデータパケット転送
KR101794719B1 (ko) Sdn 기반 네트워크 가상화 플랫폼에서의 ip 주소 가상화 방법 및 시스템
US20190356632A1 (en) Method and system for network traffic steering towards a service device
CN112822104A (zh) 一种数据报文的处理方法、设备、存储介质及系统
EP3086512B1 (en) Implementation method and apparatus for vlan to access vf network and fcf
WO2021077995A1 (zh) 网络切片共享上联口的方法、装置及存储介质

Legal Events

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