KR101371993B1 - 가상화 네트워크 인프라구조를 갖는 투명 클라우드 컴퓨팅을 위한 방법 및 장치 - Google Patents

가상화 네트워크 인프라구조를 갖는 투명 클라우드 컴퓨팅을 위한 방법 및 장치 Download PDF

Info

Publication number
KR101371993B1
KR101371993B1 KR1020127010029A KR20127010029A KR101371993B1 KR 101371993 B1 KR101371993 B1 KR 101371993B1 KR 1020127010029 A KR1020127010029 A KR 1020127010029A KR 20127010029 A KR20127010029 A KR 20127010029A KR 101371993 B1 KR101371993 B1 KR 101371993B1
Authority
KR
South Korea
Prior art keywords
packet
vlan
virtual machine
edge domain
customer
Prior art date
Application number
KR1020127010029A
Other languages
English (en)
Other versions
KR20120056300A (ko
Inventor
팡 하오
티 브이 라크쉬만
사리트 무크헤르지
하오유 송
Original Assignee
알까뗄 루슨트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 알까뗄 루슨트 filed Critical 알까뗄 루슨트
Publication of KR20120056300A publication Critical patent/KR20120056300A/ko
Application granted granted Critical
Publication of KR101371993B1 publication Critical patent/KR101371993B1/ko

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
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Abstract

투명 클라우드 컴퓨팅에 가상화 네트워크 인프라구조를 제공하기 위한 성능이 제공된다. 고객 네트워크의 확장으로서 데이터 센터의 자원의 사용을 가능하게 하는 방법은 포워딩 요소(FE)에서 데이터 센터의 에지 도메인에서 호스팅된 가상 머신을 목적으로 하는 패킷을 수신하는 단계; 에지 도메인 내의 고객 네트워크를 위한 VLAN의 VLAN ID를 결정하는 단계; 에지 도메인 내의 고객 네트워크를 위한 VLAN의 VLAN ID를 포함하도록 패킷을 업데이트하는 단계; FE로부터 가상 머신으로 업데이트된 패킷을 전파하는 단계를 포함한다. 에지 도메인은 복수의 고객 네트워크를 위해 복수의 VLAN들을 각각 지원한다. 패킷은 고객 네트워크의 식별자 및 가상 머신의 MAC 주소를 포함한다. 상기 에지 도메인 내의 고객 네트워크를 위한 VLAN의 VLAN ID는 고객 네트워크의 식별자 및 가상 머신의 MAC 주소를 사용하여 결정된다. FE는 가상 머신이 호스팅된 에지 도메인, 상기 가상 머신이 호스팅된 에지 도메인과 상이한 데이터 센터의 에지 도메인, 또는 고객 네트워크와 관련되어 있을 수 있다. 패킷이 수신된 FE의 위치에 따라, 필요하면 추가적인 프로세싱이 제공될 수도 있다.

Description

가상화 네트워크 인프라구조를 갖는 투명 클라우드 컴퓨팅을 위한 방법 및 장치{METHOD AND APPARATUS FOR TRANSPARENT CLOUD COMPUTING WITH A VIRTUALIZED NETWORK INFRASTRUCTURE}
본 발명은 일반적으로 클라우드 컴퓨팅 분야에 관한 것으로서, 더 구체적으로, 고객 네트워크를 위한 투명 클라우드 컴퓨팅 제공에 관한 것이다.
클라우드 컴퓨팅은 클라우드 서비스 제공자의 클라우드 자원들이 클라우드 클라이언트에 의해 이용될 수도 있는 컴퓨팅의 패러다임으로서, 개별적인 사용자 및 회사를 포함할 수 있다. 클라우드 서비스 제공자의 클라우드 자원들은 클라우드 서비스, 클라우드 애플리케이션, 클라우드 플랫폼, 클라우드 인프라구조 및 이들의 다양한 조합을 포함할 수 있다. 예를 들어, 기존의 클라우드 컴퓨팅 솔루션은 특히 Amazon EC2, Microsoft Azure, 및 Google AppEngine를 포함한다.
클라우드 컴퓨팅 모델은 특히 개인 사용자들 및 대형 회사들 모두에게 유리한 성질을 고려해 볼 때 인터넷 제공 서비스의 환경을 재구성한다. 예를 들어, 특정 애플리케이션을 실행하기 위해 추가적인 서버의 사용을 요구하는 서버를 갖는 홈 네트워크의 가정용 사용자의 경우, 가정용 사용자가 추가적인 서버 구입 비용을 신경 쓸 필요가 없기 때문에, 클라우드 컴퓨팅은 매력적인 옵션이며, 즉, 가정용 사용자는 단지 클라우드 서비스 제공자로부터 가상 서버를 대여하기만 하면 된다. 예를 들어, 자원 수요의 변화를 수용하기 위한 추가적인 자원들을 주기적으로 요구하는 기존의 네트워크 인프라구조를 갖는 회사의 경우, 회사가 하드웨어 구입 비용을 신경 쓸 필요가 없기 때문에, 클라우드 컴퓨팅은 매력적인 옵션이며, 즉, 회사는 단지 클라우드 자원의 실제 사용에 대해 클라우드 서비스 제공자에게 지불하기만 하면 된다.
그러나, 불리하게도, 기존의 클라우드 컴퓨팅 모델은 클라우드 서비스 제공자의 자원들을 고객 네트워크의 기존의 자원들과 효과적으로 통합하기 위한 메커니즘이 부족하다. 오히려, 기존의 클라우드 컴퓨팅 모델에서는 고객 네트워크에 의해 사용된 클라우드 기반 자원들로부터 고객의 네트워크의 경계를 정하는 명확한 경계가 존재한다. 이 경계는 클라우드 내의 장치들 및 고객 네트워크 내의 장치들이 상이한 IP 주소 도메인들 내에 있다는 사실로 인해 주로 유지되며, 이로써 클라우드 서비스 제공자에 의해 채택된 IP 주소 도메인이 고객 네트워크의 IP 주소 도메인과 겹치는 충돌(conflict)이 존재할 수도 있다(특히 고객 애플리케이션들이 고객 서비스 제공자의 고객 네트워크의 자원과 클라우드 서비스 제공자의 자원들의 조합을 이용하는 경우).
이로써, 상이한 고객들을 위해 물리적으로 별도의 네트워크들을 제공하는 것이 IP 주소 도메인들의 격리를 보장할 수 있는 반면에, 이러한 솔루션은 매우 비효율적이며 유연성이 없으며 이로써 고객의 네트워크들의 기존의 자원들과 클라우드 서비스 제공자의 자원들을 효과적으로 통합하기 위한 메커니즘에 관한 필요성이 있다.
종래 기술의 여러 결함들이 가상화 네트워크 인프라구조를 갖는 투명 클라우드 컴퓨팅을 지원하는 실시예들에 의해 다루어지는데, 이는 데이터 센터의 다양한 자원들이 고객 네트워크의 확장으로서 사용될 수 있게 한다. 데이터 센터는 코어 도메인과 복수의 에지 도메인들을 포함한다. 에지 도메인들은 데이터 센터의 자원들을 호스팅한다. 코어 도메인은 데이터 센터 내의 통신을 용이하게 한다. 에지 도메인은 포워딩 요소를 사용하여 코어 도메인과 인터페이스화하며, 이와 유사하게 고객 네트워크들은 포워딩 요소를 사용하여 코어 도메인과 인터페이스화한다. 포워딩 요소들은 데이터 센터의 중앙 제어기를 사용하여 제어된다. 포워딩 요소 및 중앙 제어기는 고객 네트워크들이 효율적이고, 안전하고, 투명한 방식으로 데이터 센터의 자원들을 사용하게 할 수 있는 방식으로 고객 네트워크들과 관련된 포워딩 패킷들을 위한 다양한 성능들을 지원한다.
여기에서의 교시는 첨부 도면과 결합하여 다음의 상세한 설명을 고려함으로써 용이하게 이해될 수 있다.
도 1은 통신 시스템 아키텍처의 하이레벨 블록도를 도시한다.
도 2는 발신지 포워딩 요소(source forwarding element)에서 패킷을 프로세싱하는 방법의 일 실시예를 도시하며, 여기서 패킷은 이와 관련된 수신지 포워딩 요소(destination forwarding element)를 갖는 수신지 에지 도메인(destination edge domain)에서 호스팅된 가상 머신(virtual machine)을 목적으로 한다.
도 3은 패킷이 목적하는 가상 머신을 호스팅하는 에지 도메인과 관련된 포워딩 요소에서 패킷을 프로세싱하는 방법의 일 실시예를 나타내며, 여기서는 포워딩 요소가 항상 에지 도메인 내의 CN의 VLAN의 VLAN ID를 결정한다고 가정한다.
도 4는 패킷이 목적하는 가상 머신을 호스팅하는 에지 도메인과 관련된 포워딩 요소에서 패킷을 프로세싱하는 방법의 일 실시예를 나타내며, 여기서는 포워딩 요소가 항상 에지 도메인 내의 CN의 VLAN의 VLAN ID를 결정하지 않는다고 가정한다.
도 5는 여기에 설명한 기능들을 수행하는데 사용하기에 적합한 범용 컴퓨터의 하이레벨 블록도를 도시한다.
이해를 용이하게 하기 위해, 동일한 참조 부호들이 도면들에 공통적인 동일한 요소들을 지정하는데 사용된다.
여기에서는 iEC2 (integrated Elastic Cloud Computing) 아키텍처가 설명되어 있다. iEC2 아키텍처는 클라우드 컴퓨팅 자원들이 기존의 고객 인프라구조에 대한 투명 확장(transparent extension)일 수 있게 함으로써, 기존의 고객 인프라구조에 대한 임의의 변형 없이 고객 애플리케이션이 끊임없고 유연한 방식으로 고객 컴퓨팅 자원들 및 클라우드 컴퓨팅 자원들 모두를 이용하게 한다. iEC2 아키텍처는 클라우드 내에 고객 네트워크들의 가상 확장을 예시하는데 네트워크 가상화를 사용함으로써 클라우드 컴퓨팅 자원들이 기존의 고객 인프라구조에 대한 투명 확장일 수 있게 한다. iEC2 아키텍처는 기존의 고객 인프라구조의 임의의 변형을 요구하지 않고, 클라우드 컴퓨팅 자원들의 기존의 고객 인프라구조와의 끊임없는 통합을 가능하게 한다. iEC2 아키텍처는 이러한 확장된 고객 네트워크들이 수요에 따라 늘어나거나 줄어들게 할 수 있으며, 이로써 고객이 임시적으로만 필요할 수 있는 네트워크 인프라구조를 배치할 필요성을 제거한다. iEC2 아키텍처는 클라우드 컴퓨팅 자원들이 매우 많은 수의 고객들(예를 들어, 작은 수의 고객들만을 수용할 수 있는 기존의 클라우드 컴퓨팅 아키텍처 대신에 홈 네트워크를 갖는 개인 고객들로부터 예를 들어 회사 네트워크를 갖는 대형 회사 고객까지의 범위의 임의의 타입의 고객들)에 의해 이용될 수 있도록 클라우드 컴퓨팅 자원들이 매우 확장 가능한 방식으로 기존의 고객 인프라구조에 대한 투명 확장일 수 있게 한다. iEC2 아키텍처는 상이한 고객들을 위해 데이터 센터의 동적 커스텀화(dynamic customization)(예를 들어, 데이터 포워딩, 정책 제어 등의 특징들의 동적 커스텀화)를 가능하게 한다.
iEC2 아키텍처는 네트워크 가상화가 제공될 수 있게 한다. 네트워크 가상화는 2가지 타입의 엔티티들, 즉 포워딩 요소들(Forwarding Elements (FE)) 및 중앙 제어기(Central Controller (CC))를 사용하여 제공된다. 일반적으로 FE들은 패킷 처리 기능들(예를 들어, 주소 매핑, 정책 점검 및 시행, 패킷 포워딩 등)을 수행하며, CC는 패킷 처리 기능들을 수행할 때 FE들에 의해 사용하기 위해 채택된 제어 정보(예를 들어, 구성 정보, 주소 매핑, 정책 등)를 유지하고 제공한다. FE들은 이들이 CC에 의해 원격으로 제어될 수 있게 하는 향상된 API를 갖는 이더넷(Ethernet) 스위치들로서 구현될 수 있다. 통상적인 네트워크 가상화 솔루션들과 달리, iEC2 아키텍처는 전체 데이터 센터 네트워크에 걸쳐 특수한 라우터 또는 스위치들의 배치를 요구하지 않고, 오히려 FE들은 가상화 기능들을 제공하기 위해 데이터 센터 네트워크의 일정하게 선택된 지점들에만 위치하지만, 반면에 종래의 이더넷 스위치들은 데이터 센터 네트워크의 대부분에 위치될 수 있다.
iEC2 아키텍처는 데이터 센터 네트워크 내의 계층적 네트워크 구조(hierarchical network structure)를 이용하며, 여기서 다수의 에지 도메인(edge domain)들은 중앙 코어 도메인(central core domain)을 통해 통신한다. 에지 도메인 각각은 하나 이상의 스위치들을 통해 연결된 (에지 도메인 내의 클라우드 컴퓨팅 자원들을 제공하기 위한) 물리적 호스트를 포함한다. 에지 도메인들 각각은 많은 기능들을 제공하는데, 여기에는 (예를 들어 에지 도메인을 분석하기 위한 패킷이 포워딩되어야 하는 계층 2 주소(layer two address)/에지 도메인을 분해하기 위한) 패킷 주소 분해, 에지 도메인 내의 상이한 고객들의 패킷 격리, (예를 들어, 에지 도메인 내에서 로컬로 포워딩할지 또는 다른 에지 도메인으로 포워딩하기 위한 코어 도메인으로 포워딩할지) 목적한 수신지에 기반한 패킷 전송 결정, 정책 점검 및 시행 등이 있다. 에지 도메인들 각각은 하나 이상의 FE들을 통해 코어 도메인과 연결되어 있다(즉, FE들은 에지 도메인과 코어 도메인 사이의 게이트웨이로서 배치되며, CC는 FE를 위한 구성 및 제어 기능들을 제공하기 위한 FE들과 통신할 목적으로 코어 도메인과 연관되어 있다). 고객 네트워크는 에지 도메인들의 특별한 예시로서 취급될 수 있는데, 이 경우 각각의 고객 네트워크가 하나 이상의 FE들을 통해 데이터 센터 네트워크에 접속할 수 있다(여기서, 이러한 FE들은 고객 네트워크를 로컬 LAN으로 보는 고객-응대(customer-facing) FE(CN-응대 FE)라고 지칭된다). FE들은 이들을 트래버싱(traversing)하는 패킷들의 정책 처리를 제공하기 위한 패킷 방화벽, 부하 분산기(load balancer) 등과 같은 관련 프로세싱 장치들을 가질 수 있다. 코어 도메인은 에지 도메인들 사이에서 패킷들을 포워딩하는데 적합한 평면 계층 2 네트워크(flat layer-two network)일 수 있다.
iEC2 아키텍처에서, 고객에게는 다른 고객들의 가상 네트워크로부터 격리된 하나 이상의 가상 네트워크들이 제공된다. 고객의 가상 네트워크는 기본 도메인 구조가 고객으로부터 숨겨진 상태로 하나의 에지 도메인에 제공되거나 다수의 에지 도메인들에 걸쳐 확산되어 있을 수 있다. 각각의 에지 도메인에서, VLAN들은 에지 도메인 내에서 로컬로 이용되어 그 에지 도메인 내의 자원들을 이용 중인 상이한 고객들을 격리하며, 또한 VLAN ID는 에지 도메인들에 걸쳐 재사용됨으로써, 데이터 센터 네트워크에 의해 지원될 수도 있는 고객들의 수의 상당한 증가를 제공한다. 고객 네트워크의 범위가 다수의 에지 도메인에 걸쳐 있는 경우, 고객 네트워크에는 다수의 에지 도메인들 각각에 상이한 VLAN ID들이 할당될 수 있으며, 각 도메인을 통해 포워딩된 패킷들의 경우, 이러한 VLAN ID들이 에지 도메인과 코어 도메인 사이의 게이트웨이(gateway) FE들에 의해 재매핑된다.
여기에서 설명하는 바와 같이, iEC2 아키텍처는 클라우드 컴퓨팅 자원들의 고객 네트워크와의 끊임 없는 통합을 가능하게 하며, 이로써 고객 네트워크의 변형 없이 고객들이 클라우드 컴퓨팅 자원들을 이용하게 할 수 있다. 클라우드 컴퓨팅 자원들의 고객 네트워크와의 끊임없는 통합은 데이터 센터 네트워크 내의 고객 네트워크들을 논리적으로 격리시키기 위한 주소 부여(addressing) 방식을 사용하여 성취될 수 있다. 이러한 주소 부여 방식의 예시적인 실시예의 설명은 다음과 같다.
주소 부여 방식은 상이한 고객들 사이의 구분을 위한 메커니즘을 포함하며, 이로써 각각의 고객 네트워크에는 고유 고객 네트워크 식별자(이하 cnet 식별자라고 지칭됨)가 할당된다. 단일 VLAN을 갖는 고객의 경우, cnet 식별자는 또한 고객을 식별한다. 다수의 VLAN들을 갖는 고객의 경우, 각각의 VLAN을 위한 상이한 cnet 식별자의 사용은 고객의 VLAN 구조가 보존될 수 있다는 것을 보장한다(이는 상이한 정책 제어들이 상이한 VLAN들에 적용 가능한 경우와 같이, 바람직하거나 필수적일 수도 있다). 이 방식에서는, 가상 머신은 (cnet 식별자, IP 주소)의 조합을 사용하여 논리적으로 식별될 수 있다. (cnet 식별자, IP 주소)의 조합은 가상 머신을 위한 고유 계층 2 MAC 주소로 매핑된다. 가상 MAC 주소들의 가상 머신들에 대한 할당을 지원하는 호스트 가상화 플랫폼에서, 다른 가상 머신들이 물리적 서버에서 호스팅될 수 있는 경우에도 가상머신을 위한 고유 계층 2 MAC 주소는 그 가상 머신을 직접 식별한다. 가상 MAC 주소들의 가상 머신들에 대한 할당을 지원하지 않는 호스트 가상화 플랫폼에서, 가상 머신에 할당된 계층 2 MAC 주소는 물리적 서버에 할당된 MAC 주소와 동일하며, 이로써 추가 식별자가 물리적 서버에 있는 가상 머신을 식별하기 위해 요구된다. 이 경우, 추가 식별자는 가상 머신을 위해 생성되는 의사(pseudo) MAC 주소일 수 있으며, 이는 패킷 포워딩 목적이 아니라 가상 머신 식별 목적을 위해 사용된다.
주소 부여 방식은 각각의 에지 도메인 내에서 상이한 고객들을 구별하는 메커니즘을 포함한다. 계층 2 주소 및 계층 3 주소를 사용하는 것에 추가하여, VLAN은 각각의 에지 도메인 내의 상이한 고객들을 구별하는데 사용된다. 각각의 에지 도메인에서, 각각의 고객이 상이한 VLAN에 매핑된다. 고객이 클라우드 컴퓨팅 서비스를 사용하는 다수의 VLAN을 갖는다면, 고객의 내부 VLAN들 각각은 에지 도메인에서 상이한 VLAN으로 매핑된다. 각각의 에지 도메인의 경우, VLAN 구성은 에지 도메인과 관련된 FE(120), 에지 도메인 내에서 패킷을 포워딩하는데 사용하는 이더넷 스위치, 및 에지 도메인 내의 물리적 서버들의 호스트 하이퍼바이저(host hypervisor)들에서 수행된다. 에지 도메인에서의 VLAN 구성들은 가상 머신에서 실행 중인 애플리케이션이 VLAN 구성들을 인식하지 못하도록 가상 머신들에게 투명하다.
주소 부여 방식은 에지 도메인들이 VLAN ID들을 재사용하는 메커니즘을 포함한다. VLAN 태깅(tagging) 범위는 에지 도메인 내로 제한된다. 에지 도메인들이 VLAN ID들을 재사용하게 함으로써, 데이터 센터 네트워크에 의해 수용될 수 있는 고객들의 수에 대한 제한이 제거된다. 이러한 설계는 함축적으로 각각의 에지 도메인에서 지원될 수 있는 가상 머신들의 수에 대한 제한을 부여하지만(예를 들어, 최악의 경우, 각각의 가상 머신이 에지 도메인에서 상이한 고객에게 속하면, 많은 고객들이 다수의 가상 머신들을 사용할 것이기 때문에 일반적으로 각각의 에지 도메인들이 다수의 가상 머신들을 지원할 수 있을 것 같다고 할지라도, 각각의 에지 도메인에는 최대 4000 개의 가상 머신들이 존재할 수 있다), 데이터 센터 내에서 지원될 수 있는 에지 도메인의 수에 대한 제한은 없으며, 이로 인해 지원될 수 있는 고객들의 수에 대한 제한도 없다.
전술한 주소 부여 방식은 고객 네트워크들을 격리함과 동시에 클라우드 컴퓨팅 자원들의 고객 네트워크와의 끊임없는 통합을 가능하게 하며, 각각의 고객의 IP 주소 공간의 보존을 가능하게 한다. 이는 데이터 센터 내의 각각의 고객을 위해 물리적으로 별도의 네트워크의 사용을 요구하는 것 없이, 동일한 IP 주소를 사용하는 경우에도 상이한 고객들의 서버들이 구분될 수 있다는 것을 보장한다.
전술한 주소 부여 방식은, 고객 네트워크의 임의의 변형에 대한 필요성을 방지하는 방식으로 클라우드 컴퓨팅 자원들의 고객 네트워크들과의 끊임없는 통합을 가능하게 하는 iEC2 아키텍처를 계속 제공하는 동안에 변형될 수 있다.
전술한 주소 부여 방식은 도 1에 관해 설명된 예시적인 iEC2 아키텍처에 대한 참조를 통해 더 잘 이해될 수 있다.
iEC2 아키텍처에 대한 앞선 설명은 iEC2 아키텍처를 소개하기 위해 제공되는 단순히 일반적인 설명이었으며, 따라서 iEC2 아키텍처는 이러한 설명의 관점으로 제한되지 않는다. iEC2 아키텍처의 더 상세한 설명 및 그 다양한 관련 실시예들은 다음과 같다.
도 1은 통신 시스템 아키텍처의 높은 레벨의 블록도를 도시한다. 도 1에 도시된 바와 같이, 통신 시스템 아키텍처(100)는 복수의 고객 네트워크(customer network (CN))들(102A 내지 102C)(집합적으로 CN들(102))을 위해 클라우드 컴퓨팅 자원들을 제공하는 데이터 센터(data center (DC))(101)를 포함하는 예시적인 iEC2 아키텍처이다.
데이터 센터(101)는 고객들에 의해 사용하는데 이용될 수 있도록 만들어진 클라우드 컴퓨팅 자원들을 포함한다(예를 들어, 여기서 고객들이 클라우드 컴퓨팅 자원들을 빌리거나 구입할 수 있다). 클라우드 컴퓨팅 자원들은 고객들의 고객 네트워크의 확장으로 간주되도록 고객에게 제공된다. 클라우드 컴퓨팅 자원들은 프로세싱 성능, 메모리 및 이들의 다양한 조합들과 같이 고객에게 이용될 수 있도록 만들어진 임의의 타입의 컴퓨팅 자원들을 포함한다.
데이터 센터(101)는 고객에 의한 클라우드 컴퓨팅 자원들의 사용을 촉진하는데 이용에 적합한 네트워크 인프라구조를 포함한다. DC(101)는 복수의 에지 도메인(ED)(1101 내지 1103)(집합적으로, ED들(110)), 복수의 포워딩 요소(FE)(1201 내지 1204)(집합적으로, FE들(120)), 및 코어 도메인(CD)(130)을 포함한다. DC(101)는 또한 중앙 제어기(CC)(140)를 포함하며, 선택적으로 관리 시스템(MS)(150)을 포함한다. DC(101)의 다양한 요소들은 고객들이 DC(101)로부터 가용 클라우드 컴퓨팅 자원들을 이용하게 할 수 있는 다양한 기능들을 수행하도록 서로 협력한다.
CN들(102)은 CN들(102)의 변형 없이 DC(101)의 클라우드 컴퓨팅 자원들을 이용할 수도 있다. CN들(102)은 예를 들어, 개인 고객들의 홈 네트워크부터 대기업 고객의 기업 네트워크까지 임의의 타입들의 고객 네트워크들을 포함할 수도 있다. 다시 말하면, CN들(101)은 DC(101)의 클라우드 컴퓨팅 자원들을 이용할 수 있는 임의의 고객 네트워크일 수 있다. CN들(102)은 DC(101)의 FE들(120) 중 하나 이상을 사용하여 DC(101)에 접속한다.
이하, CN들(102)이 클라우드 컴퓨팅 자원들에 접속할 수 있게 하는 DC(101)의 다양한 컴포넌트들을 설명할 것이다.
ED들(110)은 DC(101)에 의해 지원될 수 있는 CN들(102)의 개수를 상당히 증가시키게 한다. 여기에서 설명되는 바와 같이, 각각의 ED(110)는 다른 ED들(110) 각각에 독립적인 고객들을 위한 일 세트의 VLAN들을 지원할 수 있다. 이러한 방식으로, DC(101)가 지원될 수 있는 VLAN들의 개수(및 이에 따른 지원될 수 있는 CN들(102)의 개수)에 의해 제약을 받기보다는, 단지 개별적인 ED들(110) 각각이 지원될 수 있는 VLAN들의 개수 및 이에 따른 지원될 수 있는 CN들(102)의 개수에 의해 제약을 받는데, 다만, DC(101)의 관점으로부터, 지원될 수 있는 CN들(102)의 개수에 대한 ED 개별 제한은 임의의 개수의 ED들(110)이 DC(101)에 의해 지원될 수 있다는 점에서 인위적이다.
ED들(110) 각각은 CN들(102)과 관련된 고객들이 사용하기 위한 물리적 서버들(112)을 포함한다(예를 들어, ED(1101)는 2개의 물리적 서버(1121-1 및 1121-2)를 포함하며, ED(1102)는 2개의 물리적 서버(1122-1 및 1122-2), 및 ED(1103)는 2개의 물리적 서버(1123-1 및 1123-2)를 포함하며, 여기서 물리적 서버들은 집합적으로 물리적 서버들(112)이라고 지칭된다). 물리적 서버들(112) 각각은 CN(102)에 의해 이용될 수 있는 클라우드 컴퓨팅 자원들을 호스팅한다. 물리적 서버들(112)은 이러한 클라우드 컴퓨팅 자원들을 지원하는데 적합한 임의의 서버들일 수 있으며, CN들(102)에 의한 사용에 이용될 수 있는 클라우드 컴퓨팅 자원들의 타입에 따라 달라질 수 있다.
PS들(112) 각각은 CN들(102)에 의해 이용될 수 있는 하나 이상의 가상 머신(VM)들(113)을 포함한다. 다수의 VM들(113)을 지원하는 각각의 PS(112)의 경우, PS(112)의 VM들(113)은 물리적 서버(112)에서 상이한 고객 네트워크들을 논리적으로 구별하는데(따라서, 투명하고 안전하며 비용-효과적인 방법으로 동일한 물리적 하드웨어의 상이한 부분들이 상이한 고객들에 의해 사용하는데 이용될 수 있게 하는데) 적합한 임의의 가상화 기법을 사용하여 구현될 수 있다.
VM들(113)은 PS들(112)에 구성된 가상 머신들이다. VM들(113)은 CN들(102)에 의해 사용하기 위한 PS들(112)에 구성될 수 있는 클라우드 컴퓨팅 자원들을 제공한다. 클라우드 컴퓨팅 자원들은 프로세서 자원, 메모리 자원 등과 같은 CN들(102) 및 이들의 조합에 의해 이용될 수 있는 임의의 자원들을 포함한다.
도 1의 예시적인 네트워크에서, 3명의 고객들이 자신들의 CN들(102)에 의한 사용을 위해 DC(101) 내에 프로비저닝된(provisioned) VM들(113)을 갖는다. 제1 CN(102A)은 DC(101) 내에 프로비저닝된 4개의 VM들(113)을 갖는다(즉, ED(1101)의 PS(1121-1)에서의 2 개의 VM들(113), ED(1101)의 PS(1121-2)에서의 1 개의 VM(113), 및 ED(1102)의 PS(1122-1)에서의 1 개의 VM(113)). 제2 CN(102B)은 또한 DC(101) 내에 프로비저닝된 4개의 VM들(113) 또한 갖는다(즉, ED(1101)의 PS(1121-2)에서의 1 개의 VM(113), ED(1102)의 PS(1122-1)에서의 1 개의 VM(113), ED(1102)의 PS(1122-2)에서의 1 개의 VM(113), 및 ED(1103)의 PS(1123-2)에서의 1 개의 VM(113)). 제3 CN(102C)은 DC(101) 내에 프로비저닝된 2개의 VM들(113)을 갖는다(즉, ED(1103)의 PS(1123-1)에서의 2개의 VM들(113)). 이들 예시적인 고객들로부터, VM들(113)이 여러 상이한 구성들로 DC(110) 내에 프로비저닝될 수 있다는 점이 이해될 것이다(예를 들어, 고객은 하나의 물리적 서버, 동일한 에지 도메인 내의 다수의 물리적 서버, 상이한 에지 도메인에 걸친 다수의 물리적 서버들 등을 이용할 수 있으며, 나아가 고객은 임의의 주어진 서버에 있는 하나 이상의 VM들을 이용할 수 있다).
ED들(110) 각각은 ED들(110) 내의 패킷들을 라우팅하기 위한 통신 인프라구조를 포함한다. 일 실시예에서, ED들(110)은 스위치들을 이용하여 ED들(110) 내에서 패킷 포워딩을 수행한다. 예를 들어, ED들(110) 각각은 하나 이상의 이더넷 스위치들을 이용할 수 있다. 일 실시예에서, 각각의 ED(110) 내의 스위치들은 상이한 고객들을 위해 상이한 VLAN들을 다룰 필요가 있기 때문에, 각각의 ED(110) 내의 스위치들은 종래의 트리-기반 토폴로지(tree-based topology)로 구성될 수 있다(예를 들어, ED들(110)과 관련된 각각의 FE(120)들에 루트(root)를 둘 수 있다). ED들(110)은 다른 타입의 네트워크 요소들 및 다른 관련 통신 성능들을 사용하여 구현될 수 있다는 점이 이해될 것이다.
ED들(110) 각각은 관련된 하나 이상의 FE들(120)을 갖는다. FE들(120)은 ED들(110)과 CD(130) 사이의 게이트웨이로서 동작한다. 각각의 ED(110)에 대한 하나의 FE(120)가 DC(101) 내에서 지원될 네트워크 가상화 기능들에 충분하며, 다수의 FE들(120)이 부하 분산(load balancing), 신뢰성 개선 등을 위해 ED들(110)을 CD(130)들과 인터페이스화하는데 사용될 수 있다는 점이 이해될 것이다.
FE들(120)은 패킷 처리 기능들(예를 들어, 주소 검색(address lookup) 및 매핑, 정책 점검 및 시행, 패킷 포워딩 및 터널링 등)을 수행한다. FE들(120)은 CN들(102)과 CD(130) 사이와 ED들(110)과 CD 사이의 게이트웨이들로서 기능한다. FE들(120)은 CN-응대 FE들(예를 들어, CN들(102) 각각에 관한 DC(101)에서의 게이트웨이로서 동작하는 FE(1204)) 및 ED-응대 FE들(예를 들어, ED들(1101, 1102, 및 1103)과 CD(130) 사이의 게이트웨이로서 각각 동작하는 FE들(1201, 1202, 및 1203)을 포함한다. 이하, CN들(102) 및 ED들(110)을 위한 통신을 용이하게 하는 경우 FE들(120)의 동작이 더 상세히 설명되어 있다.
FE들(120)은 주소 검색 및 매핑 기능들을 수행한다. 주소 검색 및 매핑은 FE(120)에 의해 FE(120)의 로컬 저장부에 저장된 매핑 정보를 사용하고/하거나 CC(140)에 요구 매핑 정보를 요청함으로써 수행된다(예를 들어, 여기서 요구 매핑 정보는 FE(120)의 로컬 저장부로부터 이용될 수 없다). 로컬로 저장되고/되거나 CC(140)에 요청될 수 있는 매핑 정보는 (예를 들어, CC(140)에 의해 유지되는 것으로 여기에서 설명한, 가상 머신 MAC <-> (cnet 식별자, IP 주소) 매핑, 가상 머신 MAC <-> 에지 도메인 식별자 매핑, 에지 도메인 식별자 <-> FE MAC 목록 매핑, 및 (cnet 식별자, 에지 도메인 식별자) <-> VLAN 식별자 매핑과 같은) 패킷 처리 기능들을 수행하기 위해 요구되는 임의의 매핑 정보를 포함한다.
FE들(120)은 정책 점검 및 시행 기능들을 수행할 수 있다. 정책들은 데이터 센터 운영자에 의해 시행되는 일반 정책 및/또는 고객을 위해 시행되는 고객 정책이 있을 수 있다. 정책 점검 및 시행 기능들은 정책 정보를 사용하여 제공될 수 있는데, 이는 FE들(120)에 로컬로 저장되고/되거나 FE들(120)에 의해 CC(140)에 요청될 수 있다(예를 들어, 여기서 요구 정책 정보는 FE들(120)에서 로컬로 이용될 수 없다). 예를 들어, FE들(120)은 패킷들을 프로세싱하여 MAC 주소, IP 주소, VLAN ID 등이 패킷의 발신지 및 수신지에 관해 일관성이 있도록 보장할 수 있다. 예를 들어, FE들(120)은 고객 정책들(예를 들어, 전달 전의 방화벽으로의 패킷 포워딩, 부하 분산기 이용 등)을 적용할 수 있다. FE들(120)은 임의의 다른 적합한 데이터 센터 운영자 및/또는 고객 정책들을 점검하고 시행할 수 있다는 점이 이해될 것이다.
FE들(120)은 패킷 포워딩 기능들을 수행한다. 주소 검색 및 매핑 기능들은 패킷 포워딩 기능들과 함께 이용될 수 있다. 예를 들어, FE들(120)은 DC(101) 내에 가상 머신에 의해 프로세싱할 목적으로 CN들(102)에서 비롯된 패킷들을 포워딩할 수 있고, CN들(102)을 목적으로 DC(101) 내의 가상 머신에서 비롯된 패킷들을 포워딩할 수 있고, DC(101) 내의 다른 가상 머신들을 목적으로 DC(101) 내의 가상 머신에서 비롯된 패킷들을 포워딩할 수 있고, DC 내에서 교환되는 (예를 들어, 프로비저닝 정보, 매핑 정보 등을 운반하는 패킷들과 같은) 제어 패킷들을 포워딩할 수 있다.
이들 예시적인 패킷 흐름들로부터 알 수 있는 바와 같이, FE들(120)은 ED들(110)로부터 패킷들을 수신하여 CD(130)를 통해 포워딩하고, CD(130)로부터 패킷들을 수신하고 ED들(110)로 포워딩하고, ED들로부터 패킷들을 수신하여 동일한 ED들(110) 내로 다시 포워딩한다. FE들(120)은 임의의 적합한 패킷 포워딩 성능을 사용하여 이러한 패킷 포워딩을 수행할 수 있다.
일 실시예에서, CN(102) 또는 ED(110)로부터 패킷을 수신하여 CD(130)를 통해 수신지 ED(110)로 포워딩하는 발신지 FE(120)는 터널링을 사용하여 CD(130)를 가로질러 패킷들을 터널링한다. 일 실시예에서, 발신지 FE는 MAC-in-MAC 터널링을 사용하여 패킷을 터널링한다. MAC-in-MAC 터널링에서, 발신지 FE(120)는 외부 MAC 헤더를 이더넷 프레임에 추가하고(이더넷 프레임의 헤더는 내부 헤더임), 변형된 이더넷 프레임은 외부 MAC 헤더를 사용하여 이더넷 스위치들에 의해 라우팅되고, 수신지 FE(120)는 외부 MAC 헤더를 제거한다. 대부분의 이더넷 스위치들은 외부 MAC 헤더의 추가 바이트가 CD(130)에서 임의의 문제를 일으키지 않도록 더 큰 프레임 사이즈가 사용되는 것을 허용한다(특히, CD(130)에서, 대용량 이더넷 스위치들은 ED들(110) 모두의 트래픽 수요들을 충족시키도록 배치될 수 있다). 임의의 다른 적합한 타입의 터널링이 사용될 수 있다는 점이 이해되어야 할 것이다.
일 실시예에서, FE(120)와 관련된 ED(110) 내에서의 (예를 들어, VM(113)으로의) 전달을 위한 패킷을 수신한 FE(120)는 VM(113)의 MAC 주소, VM(113)의 IP 주소, 및 패킷과 관련된 CN(102)의 VLAN ID를 사용하여 ED(110) 내에서 패킷을 포워딩한다. 패킷은 FE(120), 및 ED(110) 내에서 호스팅되는 VM들(113) 사이의 통신을 용이하게 하기 위해 ED(110) 내에서 채택된 하나 이상의 이더넷 스위치들을 통해 ED(110)를 거쳐 라우팅된다. 이러한 타입의 패킷 포워딩은 CD(130)를 통해 FE(120)에서 수신된 패킷들 및 FE(120)가 관련된 ED(110) 내에서 비롯된 패킷들(즉, 인트라-ED 통신)을 위해 수행될 수 있다는 점이 이해되어야 한다.
FE들(120)은 이러한 기능들을 수행하는데 적합한 임의의 정보를 사용하여 이러한 기능들을 수행한다. 전술한 바와 같이, FE들(120)은 임의의 적합한 방법으로 이러한 정보에 접속할 수 있다. 예를 들어, FE들(120)은 이러한 정보(예를 들어, 패킷 포워딩 엔트리들, 고객 정책 규칙 등)를 로컬에 저장하고/하거나, (예를 들어, 다른 FE들(120)과의 시그널링, CC(140)에 대한 요청 등을 통해) 이러한 정보의 하나 이상의 발신지로부터 이러한 정보를 수신할 수 있다.
FE들(120)은 주소 검색 및 매핑 기능, 정책 점검 및 시행 기능, 패킷 포워딩 기능들뿐 아니라 다양한 다른 성능들을 지원할 수 있다.
FE들(120)은 임의의 적합한 방법으로 구현될 수 있다. 일 실시예에서, FE들(120)은 스위치로 구현될 수 있다. 일 실시예에서, 예를 들어, FE들(120)은 이러한 성능들을 지원하는 대용량 이더넷 스위치로 구현될 수 있다. FE들(120)은 FE들(120)이 CC(140)에 의해 원격으로 제어될 수 있게 하는데 적응된 고급 API들을 지원한다.
일 실시예에서, FE들(120) 중 하나 이상은 다양한 패킷 프로세싱 기능들(예를 들어, 방화벽, 부하 분산기 등)을 수행하는데 사용하기 위한 하나 이상의 관련된 네트워크 요소들을 가질 수 있다. 예를 들어, FE(1201)는 패킷들을 프로세싱하는데(예를 들어, DC(101) 내의 패킷들의 라우팅 전에 CN들(102)로부터 수신된 패킷들을 프로세싱하는데) 사용하기 위한 방화벽 및 이와 관련된 부하 분산기를 가지며, FE(1204)는 패킷들을 프로세싱하는데(예를 들어, ED(1101) 내의 패킷들의 라우팅 전에 CN들(102)로부터 FE(1201)에서 수신된 패킷들 및/또는 CD(120)를 향한 패킷들의 라우팅 전에 ED(1101)로부터 FE(1201)에서 수신된 패킷들을 프로세싱하는데) 사용하기 위한 방화벽 및 이와 관련된 부하 분산기를 갖는다.
CD(130)는 DC(101) 내의 통신을 용이하게 한다. CD(130)는 FE들(120)과 관련된 통신을 용이하게 한다. 예를 들어, CD(130)는 CN들(102)과 ED들(110) 사이, ED들(110) 사이, FE들(120) 사이, FE들(120)과 데이터 센터 제어기들 사이(예를 들어, FE들(120)과 CC(140) 사이 및 FE들(120)과 MS(150) 사이), 또는 이들의 조합들 간의 통신을 용이하게 한다. CD(130)는 CC(140)와 DC(101)의 다른 컴포넌트들(예를 들어, FE들(120), VM들(113) 등) 사이 및 선택적으로 MS(150)와 DC(101)의 다른 컴포넌트들(예를 들어, FE들(120), VM들(113) 등) 사이의 통신을 또한 용이하게 한다.
CD(130)는 CD(130) 내의 패킷들을 라우팅하기 위한 통신 인프라구조를 포함한다. CD(130)는 임의의 적합한 방법으로 구현될 수 있다. 일 실시예에서, CD(130)는 스위치들을 이용하여 CD(130) 내의 패킷 포워딩을 수행할 수 있다. 일 실시예에서, 예를 들어, CD(130)는 하나 이상의 이더넷 스위치들을 이용할 수 있다. CD(130) 내의 스위치들은 주로 패킷 포워딩에 사용되기 때문에, CD(130)의 스위칭 패브릭(switching fabric)의 설계는 임의의 정책에 의해 제한되지 않는다. 일 실시예에서, 더 우수한 자원 사용을 보장하기 위해, 최단 경로 프레임 라우팅, 또는 다중경로의 사용을 허용하는 다른 적합한 방식들이 CD(130) 내에서 구현될 수 있다. CD(130)가 임의의 다른 적합한 타입의 네트워크 요소들 및 관련 통신 성능들을 사용하여 구현될 수 있다는 점이 이해될 것이다.
CC(140)는 FE들(120)과 협력하여 FE들(120)이 DC(101)를 위한 패킷 포워딩 기능들을 제공하게 할 수 있다. CC(140)는 FE들(120)을 프로비저닝하는데 사용하기 위한 프로비저닝 정보를 결정하여 DC(101)의 자원들을 계산하기 위한 고객 요청을 지원할 수 있으며, 이러한 프로비저닝 정보를 FE들(120)에 제공할 수 있다. CC(140)는 DC(101)를 위해 패킷들을 전송하는데 FE들(120)에 의해 사용하기에 적당한 매핑 정보를 유지할 수 있고, 이러한 매핑 정보를 FE들(120)에 제공할 수 있다. CC(140)는 DC(101)를 위해 패킷들을 전송하면서 고객 정책을 시행하는데 FE들(120)에 의해 사용하기에 적당한 정책 정보를 유지할 수 있고, 이러한 정책 정보를 FE들(120)에 제공할 수 있다.
일 실시예에서, CC(140)는 DC(101)를 위해 패킷들을 포워딩하는데 FE들(120)에 의해 사용하기에 적당한 다음의 매핑 정보를 유지한다.
(1) 가상 머신 MAC <-> (cnet 식별자, IP 주소) 매핑: 이 매핑은 VM(113)의 MAC 주소를 VM(113)이 프로비저닝된 고객의 고객 네트워크 식별자(cnet 식별자)와 VM(113)의 IP 주소의 조합으로 매핑한다. 여기서, 각각의 고객은 자신의 독립적인 IP 공간을 가지며, (cnet 식별자, IP 주소)는 또한 VM(113)을 고유하게 식별한다.
(2) 가상 머신 MAC <-> 에지 도메인 식별자 매핑: 이 매핑은 VM(113)의 MAC 주소를 VM(113)이 호스팅된 ED(110)의 식별자로 매핑한다. 전술한 바와 같이, CN들(102)은 특별한 에지 도메인들로 간주될 수 있으며, 이로서 각각의 CN(102)은 또한 에지 도메인 식별자를 할당 받는다.
(3) 에지 도메인 식별자 <-> FE MAC 목록 매핑: 이 매핑은 ED(110)가 연결된 FE(120)의 MAC 주소 사이의 관련성을 유지한다. 전술한 바와 같이, 예를 들어, 부하 분산, 신뢰성 등의 이유로 ED(110)가 다수의 FE들(120)을 갖는 것이 가능하다.
(4) (cnet 식별자, 에지 도메인 식별자) <-> VLAN 식별자 매핑: 이 매핑은 (고객이 다수의 ED들(110)에서 VM들(113)에 접속할 수 있기 때문에) 고객 네트워크 식별자와 에지 도메인 식별자의 조합을 고객을 위한 VLAN 식별자로 매핑한다. 다시 말하면, 각각의 CN(102)은 고객의 하나 이상의 VM들(113)을 갖는 각각의 ED(110)에서 VLAN 식별자를 할당 받으며, 여기서 소정의 CN(102)을 위한 VLAN 식별자들은 상이한 ED들(110)에서 상이할 수 있다. DC(101)에서 VLAN 식별자들은 CC(140)(또는 이러한 할당을 수행하기에 적합한 임의의 다른 요소)에 의해 할당될 수 있다. CN들(102)에 사용되는 VLAN 식별자들은 각각의 고객들에 의해 할당된다.
일 실시예에서, CC(140)에 의해 유지되는 이러한 매핑 정보의 적어도 일부는 FE들(120)이 이러한 매핑 정보에 관해 계속적으로 CC(140)에 질의해야 하기보다는 FE들(120)이 패킷 포워딩을 수행하기 위해 이러한 매핑 정보를 로컬로 이용할 수 있도록 FE들(120)의 각각에 저장될 수도 있다.
일 실시예에서, CC(140)는 DC(101)를 위해 패킷들을 포워딩하면서 고객 정책들을 시행하는데 FE들(120)에 의해 사용하기에 적당한 정책 정보를 유지한다. 정책들은 임의의 적합한 정책 규칙들을 포함할 수 있다. 예를 들어, 고객을 위한 정책 규칙은 모든 패킷들은 수신지로 포워딩되기 전에 관련 CN-응대 FE(120)로부터 방화벽으로 우선 포워딩되어야 한다. 이 경우에, 이러한 정책을 시행하는 발신지 FE(120)는 패킷들이 수신지 FE(120)로 최종적으로 포워딩되기 전에 이 패킷들을 방화벽으로 터널링할 것이다.
CC(140)는 임의의 적합한 방법(예를 들어, 하나 이상의 데이터베이스를 사용하여 정보를 유지하고, 임의의 적합한 포맷으로 정보를 저장할 뿐 아니라 이들의 다양한 조합)으로 정보를 유지할 수 있다. CC(140)는 임의의 적합한 방법으로, 예를 들어, 주기적으로 FE(120) 및 이들의 조합으로부터의 질의에 응답하여 FE들(120)에 정보를 제공할 수 있다.
DC(101) 내의 단일 CC(140)의 사용에 관해 여기에서 주로 설명하였지만, 표준적이고 신뢰할 수 있으며 확장 가능한 기법들이 DC(101) 내에 CC(140)의 기능을 제공하는데 사용될 수 있다는 점이 이해되어야 한다. CC(140)의 기능성은 임의의 적합한 방법으로 분산될 수 있다. 일 실시예에서, 예를 들어, 상이한 ED들(110)은 상이한 CC에 의해 관리될 수 있다. 일 실시예에서, 예를 들어, 상이한 고객들이 (예를 들어, 분산 해시 테이블(Distributed Hash Table (DHT))을 사용하여) 상이한 CC들에 할당될 수 있다. 관리 및 정책 제어가 상이한 고객 네트워크들에 관해 상대적으로 독립적이기 때문에, CC(140)의 기능성의 이러한 분할은 CC(140)의 기능성에 영향을 미치지 않는다는 점이 이해되어야 한다.
일 실시예에서, FE들(120) 및 CC(140)는 분산 라우터로서 서로 협력하며, 여기서 간략화된 패킷 포워딩 요소들이며, CC(140)는 FE들(120)의 중앙 집중화된 제어를 제공한다. 이러한 분산 라우터 아키텍처의 사용은 DC(101)에 다양한 이점을 제공함으로써, DC(101) 내의 자원들 및 정책들의 관리를 간편하게 한다. 일 실시예에서, 여기에 전체적으로 참조로서 통합되어 있고 2009년 6월 22일에 출원된 발명의 명칭이 “"PROVIDING CLOUD-BASED SERVICES USING DYNAMIC NETWORK VIRTUALIZATION”인 미국 특허출원 제12/489,187호에 설명된 바와 같이, FE들(120) 및 CC(140)는 함께 VICTOR를 형성한다.
MS(150)는 고객들이 DC(101)의 컴퓨팅 자원들을 요청할 수 있는 고객 프론트 엔드를 제공한다. 예를 들어, 고객은 DC(101)의 컴퓨팅 자원들이 그 고객의 CN(102)에 의해 사용하는데 이용될 수 있게 하라고 요청하기 위해 MS(150)에 원격으로 접속할 수 있다. 고객은 자원들의 타입, 자원들의 양, 자원 사용/이용성의 지속시간 등 및 이들의 조합과 같은 컴퓨팅 자원들의 요청과 관련된 다양한 파라미터들을 특정할 수 있다. 컴퓨팅 자원들에 대한 요청에 기반한 MS(150)는 FE들(120) 중 하나 이상에 시그널링하여 FE(120)를 프로비저닝함으로써 컴퓨팅 자원들에 대한 요청을 지원하거나, CC(140)에 시그널링하고 FE들(120) 중 하나 이상에 시그널링하여 FE(120)를 프로비저닝함으로써 컴퓨팅 자원들에 대한 요청을 지원한다. 프로비저닝은 즉시 수행될 수 있고(예를 들어, 그 요청이 컴퓨팅 자원들이 즉시 사용될 수 있다고 나타내는 경우), 나중에 수행되도록 스케줄링될 수도 있다(예를 들어, 그 요청이 컴퓨팅 자원들이 나중에 사용될 수 있다고 나타내는 경우). MS(150)는 DC(101) 내의 다양한 네트워크 관리 기능들을 제공할 수도 있다.
비록 네트워크 요소들의 타입, 개수, 배열들이 특정되어 있는 데이터 센터에 관해 주로 설명하였지만, 데이터 센터는 상이한 타입, 개수, 및/또는 배열의 네트워크 요소들을 사용하여 구현될 수 있다는 점이 이해될 것이다. 예를 들어, ED(110)를 CD(130)에 연결시키기 위해 단일 FE(120)를 사용하는 것에 관해 주로 설명하였지만, (예를 들어, 부하 분산, 신뢰성 등을 위해) 하나 이상의 ED들(110)이 다수의 FE들(120)을 통해 CD(130)에 연결될 수 있다는 점이 이해될 것이다. 예를 들어, 비록 단일 CC(140)를 사용하는 것에 관해 주로 설명하였지만, CC(140)의 기능성은 다수의 CC들(140)에 걸쳐 확산될 수 있다. 다양한 다른 변형예들이 구성될 수 있다는 점이 이해될 것이다.
여기에 설명한 바와 같이, DC(101)는 CN들(102)이 CN들(102)의 변형 없이 DC(101)의 클라우드 컴퓨팅 자원들을 이용할 수 있게 한다.
CN들(102)은 예를 들어, 개인 고객들의 홈 네트워크부터 대기업 고객의 기업 네트워크까지 임의의 타입들의 고객 네트워크들을 포함할 수도 있다. 다시 말하면, CN들(102)은 DC(101)의 클라우드 컴퓨팅 자원들을 이용할 수 있는 임의의 고객 네트워크일 수 있다.
CN들(102)은 임의의 적당한 통신 수단들(예를 들어, 가상 사설 LAN 서비스(Virtual Private LAN Services (VPLS), 다중-프로토콜 레이블 스위칭(Multi-Protocol Label Switching (MPLS)) 등)을 이용하여 DC(101)와 통신할 수 있다.
일 실시예에서, DC(101) 및 CN(102)은 VPLS를 사용하여 통신한다. 인터넷 서비스 제공자(Internet Service Provider (ISP))의 제공자 에지(provider edge (PE)) 라우터들을 통하는 VPLS를 사용하여 DC(101)와 통신하는 일 실시예에서, CN(102) 내의 고객 에지(customer edge (CE)) 장치는 ISP의 제1 VPLS PE 라우터에 연결되고, CN(102)과 관련된 DC(101)의 CD-역할 FE(120)는 ISP의 제2 VPLS PE 라우터에 연결된다. 엔드들에 있는 CE 장치들의 경우, 관련 PE 라우터는 로컬 이더넷 스위치처럼 보인다. 다른 일 실시예에서, (PE들 및 CE-역할 FE들에 의해 지원될 수 있는 전체 수의 고객들이 포트들의 수로 제한되도록, 상이한 포트들이 상이한 고객들을 위한 CE 장치 인터페이스 및 PE 라우터 인터페이스 모두에 할당될 필요가 있기 때문에) 일어날 수 있는 확장성 이슈를 회피하기 위해, QinQ 캡슐화는 CE-역할 FE와 PE 라우터들 사이에 사용되어, 각각의 포트가 최대 4000명의 고객들을 지원하게 함으로써, 지원될 수 있는 고객들의 수를 상당히 증가시킨다. VPLS는 임의의 다른 적합한 방법으로 DC(101)와 CN들(102) 사이의 통신을 지원하는데 이용될 수 있다는 점이 이해될 것이다.
일 실시예에서, DC(101) 및 CN(102)은 MPLS를 사용하여 통신한다. DC(101)와 CN(102) 모두는 동일한 인터넷 서비스 제공자(ISP)로부터의 네트워크 연결을 얻는 일 실시예에서, MPLS는 기본 전송으로서 사용될 수 있으며, 대역폭은 더 나은 서비스 품질을 위해 프로비저닝될 수 있다. DC(100)와 CN(102)이 상이한 인터넷 서비스 제공자(ISP)들로부터 네트워크 접속을 얻는 다른 실시예에서, 하나 이상의 다른 캡슐화 프로토콜들은 (예를 들어, 일반 라우팅 캡슐화(Generic Routing Encapsulation (GRE)) 또는 계층 3 네트워크들을 트래버싱하는데 적합한 다른 캡슐화 프로토콜들을 사용하는 것과 같이) 계층 3 네트워크들을 트래버싱하는데 이용될 수 있다. MPLS는 임의의 다른 적합한 방법으로 DC(101)와 CN들(102) 사이의 통신을 지원하는데 이용될 수 있다는 점이 이해될 것이다.
일 실시예에서, 개인 사용자 또는 작업 기업체의 경우, 계층 2 터널링 프로토콜(Layer 2 Tunneling Protocol (L2TP))/인터넷 프로토콜 보안(Internet Protocol Security (IPSec))은 네트워크 서비스 제공자로부터의 도움 없이 기본 연결 및 보안을 제공하기 위해 DC(101)와 CN(102) 사이에 사용될 수 있다.
DC(101)와 CN들(102) 사이의 통신은 임의의 다음 적합한 타입의 통신 성능들을 사용하여 구현될 수 있다는 점이 이해될 것이다.
여기에서 설명하는 바와 같이, iEC2 아키텍처는 클라우드 컴퓨팅 자원들의 고객 네트워크와의 통합을 가능하게 하며, 이로써 고객 네트워크의 변형 없이 고객들이 클라우드 컴퓨팅 자원들을 이용하게 할 수 있다. 고객 네트워크들에 의한 데이터 센터의 클라우드 컴퓨팅 자원들의 이용은 데이터 센터 내의 패킷들의 교환뿐 아니라 데이터 센터와 고객 네트워크 사이의 패킷들의 교환을 요구한다. 이하, iEC2 아키텍처에서 클라우드 컴퓨팅 서비스들을 제공하는데 이용될 수 있는 상이한 데이터 포워딩 경로들에 대해 설명한다.
클라우드 컴퓨팅 서비스를 이용하는 경우, CN(102) 내의 장치는 DC(101) 내의 VM(113)으로 패킷을 전송할 수 있다. 데이터 흐름을 간략히 설명하기 위해, 이 예시에서는 패킷이 CN(102A) 내의 장치로부터, CN(102A)에 관한 ED(1101) 내의 PS(1121-1)에서 호스팅된 VM(113)으로 전송된다고 가정한다. 패킷은 CN(102A)으로부터 CN(102A)과 관련된 CN-응대 FE(1204)로 포워딩된다. 패킷은 CN(102A)과 관련된 CN-응대 FE(1204)에서 수신된다. CN-응대 FE(1204)에서 수신된 패킷은 목적 VM(113)의 MAC 주소 및 IP 주소를 포함한다. CN-응대 FE(1204)는 패킷에 포함되는 목적 VM(113)의 MAC 주소가 가상 머신 MAC <-> (cnet 식별자, IP 주소) 매핑을 사용하는 (et id, IP 주소)의 조합에 부합하는 것을 보장한다. CN-응대 FE(1204)는 패킷으로부터의 MAC 주소를 사용하여 가상 머신 MAC <-> 에지 도메인 식별자 매핑에 접속함으로써 패킷들이 목적하는 VM(113)을 호스팅하는 ED(110)(이 예시에서는 CN(102A)에 관한 목적 VM(113)을 호스팅하는 ED(1101))를 결정한다. CN-응대 FE(1204)는 결정된 에지 도메인 식별자를 사용하여 에지 도메인 식별자 <-> FE MAC 목록 매핑에 접속함으로써, 패킷이 목적하는 VM(113)을 호스팅하는 식별된 ED(110)중 하나)(이 예시에서는 ED(1101)를 서빙하는 FE(1201))의 MAC 주소를 결정한다. CN-응대 FE(1204)는 패킷이 목적하는 VM(113)을 호스팅하는 ED(110)의 FE들(120) 중 하나의 결정된 MAC 주소(이 예시에서는 ED(1101)를 서빙하는 FE(1201)의 MAC 주소)를 포함하도록 수신된 패킷을 변형한다. 예를 들어, CN-응대 FE(1204)는 수신 패킷의 외부 헤더로서 FE(1011)의 결정된 MAC 주소를 첨부하여 변형 패킷을 형성할 수 있다. CN-응대 FE(1204)는 변형 패킷들을 포워딩하기 전에 및/또는 변형 패킷을 포워딩하는 것의 일부로서 적절히(예를 들어, FE(1104)와 관련된 방화벽을 통해 FE(1101)로 패킷을 포워딩하거나 임의의 적용 가능 정책 규칙들을 인가하는 것), 선택적으로 고객을 위한 정책 정보에 접속하고 정책 정보를 인가할 수도 있다. CN-응대 FE(1204)는 CD(130)를 통해 FE(1101)를 향해 변형 패킷을 포워딩한다. CD(130)는 변형 패킷의 외부 헤더로서 사용되는 FE(1101)의 MAC 주소에 기초하여 변형 패킷을 전파시킨다(즉, 변형 패킷은 MCA-in-MAC 터널링을 사용하여 FE(1104)로부터 CD(130)를 통해 FE(1101)로 터널링된다). FE(1101)는 CD(130)를 통해 변형 패킷을 수신한다. FE(1101)는 변형 패킷의 외부 헤더를 제거하여 패킷을 획득한다. FE(1101)는 ED(1101)를 통해 패킷이 목적하는 VM(113)으로 패킷을 전파한다. FE(1101) 및 ED(1101)는 (a) ED(1101) 내의 CN(102A)의 VLAN ID 및 (b) 패킷이 목적하는 VM(113)의 MAC 주소를 사용하여 패킷을 전파한다. 패킷이 목적하는 VM(113)은 패킷을 수신한다. VM(113)은 CN(102A)에 관한 수신 패킷을 프로세싱한다. 이러한 데이터 포워딩 흐름에서, 패킷이 목적하는 VM(113)을 호스팅하는 ED(1101) 내의 패킷의 전파는 ED(1101) 내의 CN(102A)의 VLAN ID를 사용하여 수행된다. 이처럼, ED(1101) 내의 CN(102A)의 VLAN ID는 DC(101) 내에서 결정되어야 하며, 패킷은 ED(1101) 내의 CN(102A)의 결정된 VLAN ID를 포함하도록 변형되어야 한다. VLAN ID는 (cnet 식별자, 에지 도메인 식별자) <-> VLAN 식별자 매핑을 사용하여, 발신지 FE(이 예시에서는 FE(1204)) 또는 수신지 FE(이 예시에서는 FE(1201))에 의해 결정되어 패킷으로 삽입될 수 있는데, 그 이유는 발신지 FE와 수신지 FE는 패킷이 목적하는 VM(113)을 호스팅하는 ED(1101)의 에지 도메인 식별자 및 CN(102A)의 cnet 식별자를 알고 있기 때문이다. VLAN ID를 결정하는 것과 관련하여, 다음의 구성들이 사용될 수 있다. (a) 수신지 FE를 대신하여 발신지 FE가 VLAN ID를 결정하고 삽입하는데 항상 책임이 있도록 DC(101)가 구성된다면, 수신지 FE는 항상 CD(130)를 통해 수신된 패킷이 관련 ED 내의 패킷의 전달에 요구되는 VLAN ID를 포함한다고 항상 가정할 수 있고, (b) 수신지 FE를 대신하여 발신지 FE가 VLAN ID를 결정하고 삽입하는데 항상 책임이 있도록 DC(101)가 구성되지 않는다면, 수신지 FE는 CD(130)를 통해 패킷을 수신할 때 수신 패킷이 VLAN ID를 포함할지 여부를 결정하는데, (b1) 수신 패킷이 VLAN ID를 포함하지 않는다면, 수신지 FE는 (cnet 식별자, 에지 도메인 식별자) <-> VLAN 식별자 매핑을 사용하여 VLAN ID를 결정하고, 결정된 VLAN ID를 패킷에 삽입할 것이며, (b2) 수신 패킷이 VLAN ID를 포함한다면, 수신지 FE는 VLAN ID가 유효하다고 가정하거나, (cnet 식별자, 에지 도메인 식별자) <-> VLAN 식별자 매핑을 사용하여 VLAN ID를 결정하고, 이를 수신 패킷 내에 포함된 VLAN ID와 비교하여, 비교된 VLAN ID들이 일치하지 않는다면 패킷 내의 VLAN ID가 결정된 VLAN ID로 대체된다.
클라우드 컴퓨팅 서비스를 이용하는 경우, DC(101) 내의 VM(113)은 CN(102) 내의 장치로 패킷을 전송할 수 있다. 이 경우의 데이터 포워딩 흐름은 CN(102)이 DC(101) 내의 VM(113)으로 패킷을 전송하는 전술한 경우의 데이터 포워딩 흐름과 매우 유사한데, 이는 각각의 CN(102)이 필수적으로 특별한 에지 도메인이기 때문이다.
클라우드 컴퓨팅 서비스를 이용하는 경우, DC(101) 내의 제1 VM(113)은 DC(101) 내의 제2 VM으로 패킷을 전송할 수 있다. 제1 VM(113) 및 제2 VM(113)이 상이한 ED들(110) 내에 있다면, 이 경우의 데이터 포워딩 흐름은 CN(102)이 DC(101) 내의 VM(113)으로 패킷을 전송하는 전술한 경우의 데이터 포워딩 흐름과 매우 유사하다. 제1 VM(113)과 제2 VM(113)이 동일한 ED(110) 내에 있지만 상이한 VLAN들과 관련되어 있다면, ED(110)와 관련된 FE들(120) 중 하나가 VLAN ID를 번역하여 선택적으로 정책 점검 및 시행을 수행할 수 있도록 ED(110)와 관련된 FE들(120) 중 하나를 통해 패킷이 전달되어야 한다. 제1 VM(113) 및 제2 VM(113)이 동일한 ED(110) 내에 있고 동일한 VLAN과 관련된다면, 발신지 VM(113)으로부터의 패킷은 수신지 VM(113)으로 직접(즉, 패킷이 FE(120)를 트래버싱하라는 요구 없이) 전달될 수 있는데, 그 이유는 주소 검색 및 매핑과, 정책 점검 및 시행이 요구되지 않기 때문이다.
전술한 데이터 포워딩 흐름들 중 하나 이상에서, ARP 프로세스는 MAC 주소들을 학습하기 위해 채택될 수 있다. 이는 전술한 데이터 포워딩 흐름들에서 패킷들의 발신지 장치들이, 패킷들이 목적하는 수신지 장치의 MAC 주소를 알 수 있게 한다.
이러한 실시예에서, ARP 프로세스는 제1 패킷이 엔드 포인트로부터(예를 들어, CN(102) 내의 장치로부터 또는 VM(113)으로부터) 발신지 FE(120)에서 수신되기 전에 또는 엔드 포인트로부터(예를 들어, CN(102) 내의 장치로부터 또는 VM(113)으로부터) 발신지 FE(120)에서 수신된 제1 패킷에 응답하여 적용될 수 있다.
이러한 실시예에서, ARP 흐름은 전술한 데이터 포워딩 흐름과 유사하다. ARP 흐름을 설명할 때의 명확성을 위해, (비록 ARP 프로세스가 다른 타입의 데이터 포워딩흐름들에 적용될 수 있다는 점이 이해될 것임에도 불구하고) ARP 흐름은 CN(102) 내의 장치가 DC(101) 내의 VM(113)으로 패킷을 전송하고 싶어하는 데이터 포워딩 흐름에 따라 설명된다. ARP 흐름을 설명할 때의 명확성을 위해, 이 예시의 경우, CN(102A) 내의 장치가 CN(102A)에 관한 ED(1101) 내의 PS(1121-2)에서 호스팅된 VM(113)으로 패킷을 전송하기를 원하지만, CN(102A)에 관한 ED(1101) 내의 PS(1121-2)에서 호스팅된 VM(113)의 MAC 주소를 알지 못한다고 가정한다. 이 경우, MAC 주소를 학습하기 위해, CN(102A) 내의 장치는 ARP 요청 패킷을 개시한다. ARP 요청 패킷은 CN(102A)으로부터 CN(102A)과 관련된 CN-응대 FE(1204)로 포워딩된다. ARP 요청 패킷은 CN(102A)과 관련된 CN-응대 FE(1204)에서 수신된다. CN-응대 FE(1204)에서 수신된 ARP 요청 패킷은 CN(102A)의 cnet id 및 목적 VM(113)의 IP 주소를 포함하지만, 목적 VM(113)의 MAC 주소를 포함하지는 않는다. CN-응대 FE(1204)는 가상 머신 MAC <-> (cnet 식별자, IP 주소) 매핑을 사용하여 목적 VM(113)의 MAC 주소를 결정한다. 이 경우, CN-응대 FE(1204)가 ARP 요청에 응답하기에 충분한 정보를 가지지만(그래서, 그렇게 할 수 있지만), 스위치들은 통상적으로 ARP 메시지들에 응답하지 않는다는 것(오히려, 이들이 엔드 장치들에 의한 프로세싱을 위해 ARP 메시지들을 간단히 포워딩한다는 것)이 이해될 것이다. 이에 따라, CN-응대 FE(1204)는 VM(113)의 MAC 주소를 사용하여 가상 머신 MAC <-> 에지 도메인 식별자 매핑에 접속함으로써 패킷들이 목적하는 VM(113)을 호스팅하는 ED(110)(이 예시에서는 CN(102A)에 관한 목적 VM(113)을 호스팅하는 ED(1101))를 결정한다. CN-응대 FE(1204)는 결정된 에지 도메인 식별자를 사용하여 에지 도메인 식별자 <-> FE MAC 목록 매핑에 접속함으로써, 패킷이 목적하는 VM(113)을 호스팅하는 식별된 ED(110)중 하나)(이 예시에서는 ED(1101)를 서빙하는 FE(1201))의 MAC 주소를 결정한다. CN-응대 FE(1204)는 패킷이 목적하는 VM(113)을 호스팅하는 ED(110)의 FE들(120) 중 하나의 결정된 MAC 주소(이 예시에서는 ED(1101)를 서빙하는 FE(1201)의 MAC 주소)를 포함하도록 수신된 ARP 요청 패킷을 변형한다. 예를 들어, CN-응대 FE(1204)는 ARP 요청 패킷의 외부 헤더로서 FE(1011)의 결정된 MAC 주소를 첨부하여 변형 ARP 요청 패킷을 형성할 수 있다. CN-응대 FE(1204)는 CD(130)를 통해 FE(1101)를 향해 변형 ARP 요청 패킷을 포워딩한다. CD(130)는 변형 ARP 요청 패킷의 외부 헤더로서 사용되는 FE(1101)의 MAC 주소에 기초하여 변형 ARP 요청 패킷을 전파시킨다(즉, 변형 ARP 요청 패킷은 MCA-in-MAC 터널링을 사용하여 FE(1104)로부터 CD(130)를 통해 FE(1101)로 터널링된다). FE(1101)는 CD(130)를 통해 변형 ARP 요청 패킷을 수신한다. FE(1101)는 변형 ARP 요청 패킷의 외부 헤더를 제거하여 ARP 요청 패킷을 획득한다. FE(1101)는 CN(102A)을 위한 ED(1101) 내에 존재하는 VLAN 내의 ARP 요청 패킷을 방송한다. VLAN ID는 CN-응대 FE(1204) 또는 FE(1101)에 의해 결정될 수 있다. ARP 요청 패킷이 목적하는 VM(113)(즉, ARP 요청 패킷에 포함된 IP 주소와 일치하는 IP 주소를 갖는 VM(113))은 MAC 주소를 포함하는 ARP 응답 패킷을 생성한다. VM(113)은 ED(1101)를 통해 FE(1101)로 ARP 응답 패킷을 전파시킨다. FE(1101)는 CN(102A)과 관련된 CN-응대 FE(1204)로 ARP 응답 패킷을 되돌려 터널링한다. CN(102A)과 관련된 CN-응대 FE(1204)는 ARP 요청 패킷을 개시한 CN(102A) 내의 장치로 ARP 요청 패킷을 되돌려 터널링한다. ARP 응답 패킷은 데이터 포워딩 흐름에 관해 전술한 바와 같이, 패킷들은 VM(113)으로 전송하는데 사용될 수 있는 CN(102A) 내의 장치인 VM(113)의 MAC 주소를 포함한다. 전술한 ARP 흐름은 전술한 데이터 포워딩 흐름과 유사하다는 점이 이해될 것이다.
전술한 바와 같이, 상이한 많은 데이터 포워딩 흐름들은 데이터 센터에 의해 지원될 수 있다. 따라서, FE들(120) 각각은 패킷들을 포워딩할 목적으로 다양한 단계들을 갖는 상이한 많은 방법들을 수행할 수 있다는 점이 이해될 것이다. 3가지 예시적인 방법들이 도 2, 도 3, 및 도 4에 관해 설명된다; 다만, 이러한 단계들의 상이한 조합들을 포함하는 다양한 다른 방법들이 지원될 수 있다는 점이 이해될 것이다.
도 2는 발신지 포워딩 요소(source forwarding element)에서 패킷을 프로세싱하는 방법의 일 실시예를 도시하며, 여기서 패킷은 이와 관련된 수신지 포워딩 요소(destination forwarding element)를 갖는 수신지 에지 도메인(destination edge domain)에서 호스팅된 가상 머신(virtual machine)을 목적으로 한다.
방법(200)은 단계(202)에서 시작한다.
단계(204)에서, 패킷이 발신지 FE에서 수신되는데, 이는 CN 또는 발신지 ED와 관련되어 있다. 패킷은 이와 관련된 수신지 FE를 갖는 수신지 ED 내에 VM을 목적으로 한다. 패킷은 cnet id, VM의 IP 주소, 및 VM의 MAC 주소를 포함한다.
단계(206)에서, 수신지 ED와 관련된 수신지 FE의 MAC 주소가 결정된다. 수신지 FE의 MAC 주소는 가상 머신 MAC <-> 에지 도메인 식별자 매핑 및 에지 도메인 식별자 <-> FE MAC 목록 매핑을 사용하여 결정된다. 가상 머신 MAC <-> 에지 도메인 식별자는 수신지 ED의 ED 식별자를 결정하는데 사용되며, 그 다음 에지 도메인 식별자 <-> FE MAC 목록 매핑에 접속하여 수신지 FE의 MAC 주소를 결정하는데 사용된다.
단계(207)에서(선택적으로, 예를 들어, 여기에 수신지 ED 내의 CN에 관한 VLAN의 VLAN ID가 CD를 통해 패킷을 포워딩하기 전에 패킷에 추가된다), 수신지 ED 내의 CN에 관한 VLAN의 VLAN ID가 결정되며, 패킷이 수신지 ED 내의 CN을 위한 VLAN의 결정된 VLAN ID를 포함하도록 업데이트된다.
단계(208)에서, 패킷(즉, 단계(207)가 수행되는지 여부에 따라 원 패킷(original packet) 또는 업데이트된 패킷)은 수신지 FE의 MAC 주소를 사용하여(예를 들어, MAC-in-MAC 터널링을 사용하여) 발신지 FE로부터 수신지 FE를 향해 전파된다.
방법(200)은 단계(210)에서 종료한다.
도 3은 패킷이 목적하는 가상 머신을 호스팅하는 에지 도메인과 관련된 포워딩 요소에서 패킷을 프로세싱하는 방법의 일 실시예를 나타내며, 여기서 포워딩 요소가 항상 에지 도메인 내의 CN의 VLAN의 VLAN ID를 결정한다고 가정한다. 이러한 가정은 데이터 센터가 구현되고/되거나 구성되는 방식에 기초할 수 있다.
방법(302)은 단계(300)에서 시작한다.
단계(304)에서, 패킷이 목적하는 VM을 호스팅하는 ED와 관련된 FE에서 패킷이 수신된다. 패킷은 cnet id, VM의 IP 주소, 및 VM의 MAC 주소를 포함한다. 패킷은 VLAN ID를 선택적으로 포함하는데, ED 내의 CN의 VLAN에 대한 정확한 VLAN ID일 수도 있고 아닐 수도 있다(즉, 발신지 ED들 및/또는 CN들과 관련된 FE들이 패킷을 CD를 통해 포워딩하기 전에 패킷에 관한 VLAN ID를 판단하도록 구성되는지 여부에 달려 있다).
단계(306)에서, ED 내의 CN에 관한 VLAN의 VLAN ID가 판단된다. VLAN ID는 (cnet 식별자, 에지 도메인 식별자) <-> VLAN 식별자 매핑을 사용하여 판단되며, 여기사 cnet 식별자는 패킷으로부터 판단되며, 에지 도메인 식별자는 임의의 적합한 방법으로 판단될 수 있다.
단계(308)에서, 패킷은 판단된 VLAN ID를 포함하도록 프로세싱된다.
일 실시예에서, 수신 패킷은 VLAN ID들을 포함하지 않는 경우, 프로세싱은 패킷 내의 결정된 VLAN ID를 삽입하는 단계를 포함할 수도 있다.
일 실시예에서, 각각의 수신 패킷이 이미 VLAN ID를 포함하는 경우, 프로세싱은 패킷 내의 VLAN ID가 판단된 VLAN ID와 일치하는지 여부를 판단하여, 일치하면 패킷의 VLAN ID를 변경하지 않은 채로 두고, 일치하지 않으면 패킷의 VLAN ID를 판단된 VLAN ID로 대체하는 단계를 포함할 수 있다.
일 실시예에서, 수신 패킷이 VLAN ID를 포함하거나 포함하지 않는 경우(그리고, VLAN ID를 포함하는 임의의 수신 패킷이 ED 내의 CN에 관한 정확한 VALN ID를 포함한다고 가정하는 경우), 프로세싱은 수신 패킷이 VLAN을 포함하는지 여부를 판단하여, 수신 패킷이 VLAN ID를 포함하면 패킷의 VLAN ID를 변경하지 않은 채로 두고, 수신 패킷이 VLAN ID를 포함하지 않으면 패킷의 VLAN ID를 판단된 VLAN ID로 대체하는 단계를 포함할 수 있다.
일 실시예에서, 수신 패킷이 VLAN ID를 포함하거나 포함하지 않는 경우(그리고, VLAN ID를 포함하는 임의의 수신 패킷이 ED 내의 CN에 관한 정확한 VALN ID를 포함한다고 가정하는 경우), 프로세싱은 패킷의 VLAN ID를 변경하지 않고 두는 단계, 패킷의 VLAN ID를 판단된 VLAN ID로 대체하는 단계, 또는 판단된 VLAN ID를 패킷으로 적절히 삽입하는 단계뿐 아니라 수신 패킷이 VLAN을 포함하는지 여부를 판단하는 단계, 및 포함한다면, 패킷 내의 VLAN ID가 ED 내의 정확한 VLAN ID인지 여부를 판단하는 단계의 조합을 포함할 수 있다.
임의의 이벤트에서, 프로세싱이 구현되는 방식과 상관없이, 수신 패킷은 정확한 VLAN ID를 포함하는 것을 보장하도록 최종적으로 프로세싱된다.
단계(310)에서, 패킷은 VM의 MAC 주소 및 VLAN ID를 사용하여 FE로부터 VM으로 전파된다.
방법(300)은 단계(312)에서 종료한다.
도 4는 패킷이 목적하는 가상 머신을 호스팅하는 에지 도메인과 관련된 포워딩 요소에서 패킷을 프로세싱하는 방법의 일 실시예를 나타내며, 여기서 포워딩 요소가 항상 에지 도메인 내의 CN의 VLAN의 VLAN ID를 결정하지 않는다고 가정한다. 이러한 가정은 데이터 센터가 구현되고/되거나 구성되는 방식에 기초할 수 있다.
방법(402)은 단계(400)에서 시작한다.
단계(404)에서, 패킷이 목적하는 VM을 호스팅하는 ED와 관련된 FE에서 패킷이 수신된다. 패킷은 et id, VM의 IP 주소, 및 VM의 MAC 주소를 포함한다. 패킷은 VLAN ID를 선택적으로 포함하는데, ED 내의 CN의 VLAN에 대한 정확한 VLAN ID일 수도 있고 아닐 수도 있다(즉, 발신지 ED들 및/또는 CN들과 관련된 FE들이 패킷을 CD를 통해 포워딩하기 전에 패킷에 관한 VLAN ID를 판단하도록 구성되는지 여부에 달려 있다).
단계(406)에서, 패킷이 VLAN ID를 포함하는지 여부에 관해 판단한다.
패킷이 VLAN ID를 포함하지 않는다면, 방법(400)은 단계(408) 및 단계(410)로 연속하여 진행한다. 단계 408에서, ED 내의 CN에 관한 VLAN의 VLAN ID가 판단된다. VLAN ID는 (cnet 식별자, 에지 도메인 식별자) <-> VLAN 식별자 매핑을 사용하여 판단되며, 여기서 cnet 식별자는 패킷으로부터 판단되며, 에지 도메인 식별자는 임의의 적합한 방법으로 판단될 수 있다. 단계 410에서, 패킷은 판단된 VLAN ID를 포함하도록 업데이트된다. 단계(410)로부터, 방법(400)은 단계(412)로 진행된다.
패킷이 VLAN ID를 포함한다면, 방법(400)은 단계들(411) 중 하나 이상으로 선택적으로 진행하거나(이 경우 패킷 내의 VLAN ID가 유효하지 않다고 가정하는 경우), 그렇지 않으면 단계 412로 직접 진행한다(패킷 내의 VLAN ID가 유효하다고 가정하는 경우). 선택적인 단계(411A)에서, (예를 들어, 패킷으로부터의 정보 및 하나 이상의 매핑법을 사용하여 ED 내의 CN에 관한 VLAN의 VLAN ID를 판단하고, 판단된 VLAN ID를 패킷에 포함된 VLAN ID를 비교함으로써) 패킷 내의 VLAN ID가 유효한지 여부 대해 판단한다. 패킷 내의 VLAN ID가 유효하면, 방법(400)은 단계(411A)로부터 단계(412)로 진행한다. 패킷 내의 VLAN ID가 유효하지 않으면, 방법(400)은 단계(411B)로 진행하며, 여기서 패킷 내의 VLAN ID는 판단해 VLAN ID로 대체되고, 방법(400)은 단계(412)로 진행한다.
단계(412)에서, 패킷은 VM의 MAC 주소 및 VLAN ID를 사용하여 FE로부터 VM으로 전파된다.
방법(400)은 단계(414)에서 종료한다.
순차적으로 수행되는 것으로 주로 설명되어 있지만, 전술한 방법들(200, 300, 및 400) 중 하나 이상의 적어도 일부는 각각 도 2, 도 3, 및 도 4에 관한 설명과 달리 동시에 또는 상이한 순서로 수행될 수 있다.
여기에 설명되어 있는 바와 같이, 소지자들은 데이터 센터 자원을 이용하여 고객 네트워크에 확장을 투명하게 제공할 수 있다. iEC2 아키텍처는 소비자들이 계층 2 및/또는 계층 3 네트워크 확장을 획득하게 할 수 있다.
계층 2 네트워크 확장에서, 데이터 센터 내의 가상 서버들은 고객 네트워크 내의 고객 서버들과 동일한 LAN에 논리적으로 존재한다. 이점은 이익이 되는데, 그 이유는 일정한 애플리케이션들은 애플리케이션을 실행하고 있는 서버들이 동일한 LAN의 일부일 것을 요구할 수도 있기 때문이다. 이는 또한 이익이 되는데, 그 이유는 가상 서버들을 동일한 LAN 내로 이동시키는 것이 용이하기 때문이다. 일반적으로, 계층 2 확장은 통상적으로 계층 3 확장보다 통상적으로 더 유연하다.
계층 3 네트워크 확장에서, 데이터 센터 내의 가상 서버들은 고객 네트워크와 동일한 서브넷(subnet)에 존재하지 않는다. 소비자는 데이터 센터 내에 하나 이상의 서브넷을 가질 수 있다. 일반적으로, 계층 3 네트워크는 정책상 이유 등으로 더 많은 서버를 갖기 위해 필요할 수 있다.
일 실시예에서, 고객을 위해 계층 3 확장을 지원하기 위해, FE들(120) 및 CC(140)가 추가적인 라우터 기능들을 지원할 수 있다. 계층 3 확장이 지원되는 소비자마다, 추가적인 라우터 기능들은 적어도 하나의 라우터가 소비자에게 할당되게 할 수 있으며, 여기서 가상 라우터는 고객 네트워크의 외부와 피어링(peer)한다. 이러한 배치에서. 데이터는 FE들(120)에 의해 포워딩되고, 라우팅 프로토콜이 CC(140)에서 실행된다.
상이한 타입의 확장을 제공하는 경우, 가상 서버들이 위치 독립적으로 만들기 때문에(즉, 가상 서버들이 임의의 물리적 호스트로 실행될 수 있기 때문에) 데이터 센터 내의 이동은 네트워크 계층과 독립적이며, 반면에 상이한 서브넷들에 걸친 데이터 센터와 고객 네트워크들 사이의 이동은 더 도전적이라는 점이 이해되어야 한다. 일 실시예에서, 상이한 서브넷을 통한 고객 네트워크와 데이터 센터 사이의 이동은 가상 서버의 위치를 등록하고 데이터 센터 내의 FE들로/로부터 패킷들을 터널링하는데 적응된 FE를 고객 네트워크의 에지에 배치함으로써 수행된다.
전술한 바와 같이, iEC2 아키텍처는 기존의 클라우드 기반 컴퓨팅 아키텍처에 비해 많은 이점들을 제공한다.
iEC2 아키텍처는 상이한 고객 네트워크 사이에 효과적인 격리를 제공한다. 이는 고객의 IP 주소 공간을 지원하고, 고객의 트래픽을 격리하고, 동일한 격리 기능을 제공하는 것을 포함한다. 이는 또한, 어떠한 고객도 제어되지 않은 방식으로 임의의 다른 고객의 자원 사용에 영향을 미칠 수 없도록 자원 할당을 수행하는 것을 포함할 수 있다.
iEC2 아키텍처는 데이터 센터의 기본 인프라구조가 고객에게 투명하도록 고객에게 투명성을 제공한다. 이 방식에서, 각각의 고객은 데이터 센터의 실제 구현과 독립된, 데이터 센터 내의 클라우드 컴퓨팅 자원을 포함하는 자신의 네트워크의 논리적 관점을 갖는다. 이는 고객들을 위한 운영관리의 간략화, 고객을 위한 개선된 보안 등 수많은 이점들을 제공한다.
iEC2 아키텍처는 고객에게 독립적인 위치를 제공한다. 고객들을 위한 가상 서버들 및 네트워크들은 데이터 센터 내의 임의의 장소에 물리적으로 위치할 수 있다. 이는 자원 이용의 개선, 프로비저닝의 간략화 등을 포함하는 수많은 이점들을 제공한다.
iEC2 아키텍처는 용이한 고객 정책 제어를 제공하여, 고객이 즉시 정책 설정을 구성하고, 네트워크에서 정책 설정을 시행하게 할 수 있다. 이는 특히 각각의 고객이 자신의 정책 및 보안 요구사항을 가질 수 있기 때문에 유리하다(예를 들어, 개인 고객은 단지 기본적인 방화벽 보호가 필요할 수 있는 반면에, 기업 고객은 상이한 접속 제어를 갖는 다수의 보안 존들이 필요할 수 있다).
iEC2 아키텍처는 매우 확장성이 높다. 지원될 수 있는 고객의 수는 VLAN 확장성 이슈들과 같은 디자인 아티팩트(design artifact)들 의해서가 아니라 단지 데이터 센터 내의 가용 자원에 의해서만 제한된다.
iEC2 아키텍처는 비용이 낮다. iEC2 아키텍처는 클라우드 서비스 제공자를 위한 새로운 투자가 감소될 수 있도록 클라우드 서비스 제공자가 대부분의 장치들에 대해 기존의 장치들에 의존하게 할 수 있게 한다. iEC2 아키텍처는 클라우드 서비스 제공자들이 이들의 자원을 상이한 고객들과 공유할 수 있게 하는데, 그 이유는 상이한 고객들을 위해 물리적으로 별도의 네트워크들 및 자원들을 할당하는 것이 지나치게 비싸기 때문이다.
여기에 설명된 iEC2 아키텍처의 기능들을 제공하기 위한 이더넷의 사용(및 이에 따른 MAC주소의 사용)에 대해 주로 설명되어 있지만, 여기에 설명된 iEC2 아키텍처의 기능들은 임의의 다른 적합한 프로토콜 및 관련 주소를 사용하여 제공될 수 있다는 점이 이해되어야 할 것이다.
여기에 설명된 iEC2 아키텍처의 기능들을 제공하기 위한 특정한 매핑의 사용에 대해 주로 설명되어 있지만, 여기에 설명된 iEC2 아키텍처의 기능들은 상이한 매핑 뿐 아니라 적당한 매핑들을 사용하여 제공될 수 있다는 점이 이해되어야 할 것이다. 하나 이상의 다른 적합한 프로토콜들이 여기에 설명된 iEC2 아키텍처의 기능들을 제공하기 위해 사용되는 경우, 이에 따라 여기에 설명된 매핑이 변형될 수 있다는 것이 더 이해되어야 할 것이다.
도 5는 여기에 설명한 기능들을 수행하는데 사용하기에 적합한 범용 컴퓨터의 높은 수준의 블록도를 도시한다. 도 5에 도시된 바와 같이, 컴퓨터(500)는 프로세서 요소(502)(예를 들어, 중앙 처리 장치(CPU) 및/또는 다른 적합한 프로세서), 메모리(504)(예를 들어, RAM(random access memory), ROM(read only memory) 등), 클라우드 컴퓨팅 모듈(505), 다양한 입출력 장치들(506)(예를 들어, (키보드, 키패드, 마우스 등과 같은) 사용자 입력 장치, (디스플레이, 스피커 등과 같은) 사용자 출력 장치 등), 입력 포트, 출력 포트, 수신기, 송신기, 및 저장 장치(예를 들어, 테이프 드라이브, 플로피 드라이브, 하드 디스크 드라이브, 콤팩트 디스크 드라이브 등)를 포함한다.
여기에 설명된 기능들은 소프트웨어로 구현되고/되거나, 범용 컴퓨터, 하나 이상의 ASIC(application specific integrated circuit)들, 및/또는 임의의 다른 하드웨어 균등물을 이용하여 소프트웨어 및 하드웨어의 조합으로 구현될 수 있다. 일 실시예에서, 클라우드 컴퓨팅 프로세스(505)는 메모리(504)에 로딩되고 프로세서(502)에 의해 실행되어 전술한 기능들을 구현할 수 있다. 따라서, (관련 데이터 구조들을 포함하는) 클라우드 컴퓨팅 프로세스(505)는 컴퓨터 판독가능 저장 매체, 예를 들어, RAM 메모리, 자기 또는 광 드라이브 또는 디스켓 등에 저장될 수 있다.
여기에 소프트웨어 방법으로 설명된 단계들의 일부는 하드웨어 내에 예를 들어, 프로세서와 협력하여 다양한 방법 단계들을 수행하는 회로로서 구현될 수 있다는 것이 고려된다. 여기에 설명된 기능들/요소들의 일부는 컴퓨터 프로그램 제품으로 구현될 수 있는데, 컴퓨터에 의해 프로세싱되는 경우, 컴퓨터 명령어들은 여기에 설명된 방법들 및/또는 기법들이 호출되거나 그렇지 않으면 제공되도록 컴퓨터의 동작을 적응시킨다. 본 발명의 방법을 호출하기 위한 명령어들은 고정되거나 착탈가능한 매체에 저장되고, 방송 또는 다른 신호 베어링 매체(signal bearing medium)로 데이터 스트림을 통해 송신되고, 및/또는 명령어에 따른 동작하는 컴퓨터 장치 내의 메모리에 저장될 수 있다.
여기에는 본 발명의 교시를 통합하는 다양한 실시예들이 상세히 도시되고 설명되어 있지만, 당업자는 이들 교시를 여전히 통합하는 다른 많은 다양한 실시예들을 용이하게 고안할 수 있다.

Claims (10)

  1. 고객의 고객 네트워크의 확장으로서 데이터 센터의 자원의 사용을 가능하게 하는 방법으로서,
    포워딩 요소(forwarding element; FE)에서, 데이터 센터의 에지 도메인에서 호스팅되는 가상 머신을 목적지로 하는 패킷을 수신하는 단계 - 상기 에지 도메인은 복수의 고객 네트워크의 각각을 위한 복수의 VLAN을 지원하고, 상기 패킷은 상기 고객 네트워크의 식별자 및 상기 가상 머신의 MAC 주소를 포함함 - 와,
    상기 고객 네트워크의 식별자 및 상기 가상 머신의 MAC 주소를 사용하여 상기 에지 도메인에서의 상기 고객 네트워크를 위한 VLAN의 VLAN ID를 결정하는 단계와,
    상기 에지 도메인에서의 상기 고객 네트워크를 위한 상기 VLAN의 VLAN ID를 포함하도록 상기 패킷을 업데이트하는 단계와,
    상기 FE로부터 상기 가상 머신으로 상기 업데이트된 패킷을 전파하는 단계를 포함하는
    방법.
  2. 제 1 항에 있어서,
    상기 에지 도메인에서의 상기 고객 네트워크를 위한 상기 VLAN의 VLAN ID를 결정하는 단계는,
    상기 가상 머신의 MAC 주소를 사용하여 상기 에지 도메인의 식별자를 결정하는 단계와,
    상기 고객 네트워크의 식별자 및 상기 에지 도메인의 식별자를 사용하여 상기 에지 도메인에서의 상기 고객 네트워크를 위한 상기 VLAN의 VLAN ID를 결정하는 단계를 포함하는
    방법.
  3. 제 1 항에 있어서,
    상기 FE는 상기 가상 머신이 호스팅되는 상기 데이터 센터의 상기 에지 도메인과 관련되어 있으며,
    상기 에지 도메인에서의 상기 고객 네트워크를 위한 상기 VLAN의 VLAN ID를 포함하도록 상기 패킷을 업데이트하는 단계는,
    상기 수신된 패킷이 기존의 VLAN ID를 포함하면 상기 기존의 VLAN ID를 상기 결정된 VLAN ID로 대체하는 단계, 또는
    상기 수신된 패킷이 기존의 VLAN ID를 포함하지 않으면 상기 결정된 VLAN ID를 상기 수신된 패킷에 삽입하는 단계를 포함하는
    방법.
  4. 제 1 항에 있어서,
    상기 FE는 상기 가상 머신이 호스팅되는 상기 데이터 센터의 상기 에지 도메인과 관련되어 있으며,
    상기 FE로부터 상기 가상 머신으로 상기 업데이트된 패킷을 전파하는 단계는 상기 업데이트된 패킷에 포함된 상기 VLAN ID 및 상기 가상 머신의 MAC 주소를 사용하여 상기 가상 머신으로 상기 업데이트된 패킷을 전파하는 단계를 포함하는
    방법.
  5. 제 1 항에 있어서,
    상기 FE는 상기 데이터 센터의 제1 에지 도메인과 관련된 제1 FE이고, 상기 가상 머신이 호스팅되는 상기 에지 도메인은 관련된 제2 FE를 갖는 상기 데이터 센터의 제2 에지 도메인이며,
    상기 방법은, 상기 패킷을 수신하는 단계 이후에,
    상기 가상 머신의 MAC 주소를 사용하여 상기 제2 에지 도메인의 식별자를 결정하고 상기 제2 에지 도메인의 식별자를 사용하여 상기 제2 FE의 MAC 주소를 결정함으로써, 상기 가상 머신의 MAC 주소를 사용하여 상기 제2 FE의 MAC 주소를 결정하는 단계를 더 포함하는
    방법.
  6. 제 5 항에 있어서,
    상기 제1 FE로부터 상기 가상 머신으로 상기 업데이트된 패킷을 전파하는 단계는, 상기 제2 FE의 MAC 주소를 사용하여 상기 제1 FE로부터 상기 제2 FE로 상기 업데이트된 패킷을 전파하는 단계를 포함하는
    방법.
  7. 제 1 항에 있어서,
    상기 FE는 상기 고객 네트워크와 관련된 제1 FE이고, 상기 가상 머신이 호스팅되는 상기 에지 도메인은 관련된 제2 FE를 가지며,
    상기 방법은, 상기 패킷을 수신하는 단계 이후에,
    상기 가상 머신의 MAC 주소를 사용하여 상기 에지 도메인의 식별자를 결정하고 상기 에지 도메인의 식별자를 사용하여 상기 제2 FE의 MAC 주소를 결정함으로써, 상기 제2 FE의 MAC 주소를 결정하는 단계를 더 포함하는
    방법.
  8. 제 7 항에 있어서,
    상기 제1 FE로부터 상기 가상 머신으로 상기 업데이트된 패킷을 전파하는 단계는, 상기 제2 FE의 MAC 주소를 사용하여 상기 제1 FE로부터 상기 제2 FE로 상기 업데이트된 패킷을 전파하는 단계를 포함하는
    방법.
  9. 고객의 고객 네트워크의 확장으로서 데이터 센터의 자원의 사용을 가능하게 하는 장치로서,
    포워딩 요소(FE)에서, 데이터 센터의 에지 도메인에서 호스팅되는 가상 머신을 목적지로 하는 패킷을 수신하는 수단 - 상기 에지 도메인은 복수의 고객 네트워크의 각각을 위한 복수의 VLAN을 지원하고, 상기 패킷은 상기 고객 네트워크의 식별자 및 상기 가상 머신의 MAC 주소를 포함함 - 과,
    상기 고객 네트워크의 식별자 및 상기 가상 머신의 MAC 주소를 사용하여 상기 에지 도메인에서의 상기 고객 네트워크를 위한 VLAN의 VLAN ID를 결정하는 수단과,
    상기 에지 도메인에서의 상기 고객 네트워크를 위한 상기 VLAN의 VLAN ID를 포함하도록 상기 패킷을 업데이트하는 수단과,
    상기 FE로부터 상기 가상 머신으로 상기 업데이트된 패킷을 전파하는 수단을 포함하는
    장치.
  10. 고객의 고객 네트워크의 확장으로서 데이터 센터의 자원의 사용을 가능하게 하는 네트워크로서,
    데이터 센터의 복수의 에지 도메인 - 각각의 에지 도메인은 적어도 하나의 고객에 의한 사용을 위해 적어도 하나의 가상 머신을 호스팅하도록 구성된 적어도 하나의 물리적 서버를 포함하며, 프로비저닝된 가상 머신을 갖는 각각의 고객 네트워크를 위한 VLAN을 지원하도록 구성됨 - 과,
    복수의 포워딩 요소 - 각각의 포워딩 요소는 적어도 하나의 에지 도메인 또는 적어도 하나의 고객 네트워크 중 적어도 하나를 위한 패킷 포워딩 기능을 지원하도록 구성되고, 상기 적어도 하나의 에지 도메인 중 하나를 위한 패킷 포워딩 기능을 지원하도록 구성된 각 포워딩 요소는, 상기 에지 도메인에서 호스팅되는 적어도 하나의 가상 머신과 관련하여 각각의 고객 네트워크를 위해 VLAN ID와 상기 고객 네트워크를 관련시키도록 구성됨 - 와,
    상기 데이터 센터의 코어 도메인 - 상기 코어 도메인은 상기 복수의 포워딩 요소 사이에서 패킷들을 포워딩하도록 구성된 복수의 스위치들을 포함함 - 을 포함하는
    네트워크.
KR1020127010029A 2009-10-21 2010-10-06 가상화 네트워크 인프라구조를 갖는 투명 클라우드 컴퓨팅을 위한 방법 및 장치 KR101371993B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/582,939 2009-10-21
US12/582,939 US8369333B2 (en) 2009-10-21 2009-10-21 Method and apparatus for transparent cloud computing with a virtualized network infrastructure
PCT/US2010/051570 WO2011049742A2 (en) 2009-10-21 2010-10-06 Method and apparatus for transparent cloud computing with a virtualized network infrastructure

Publications (2)

Publication Number Publication Date
KR20120056300A KR20120056300A (ko) 2012-06-01
KR101371993B1 true KR101371993B1 (ko) 2014-03-07

Family

ID=43797040

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127010029A KR101371993B1 (ko) 2009-10-21 2010-10-06 가상화 네트워크 인프라구조를 갖는 투명 클라우드 컴퓨팅을 위한 방법 및 장치

Country Status (6)

Country Link
US (1) US8369333B2 (ko)
EP (1) EP2491684B1 (ko)
JP (1) JP5763081B2 (ko)
KR (1) KR101371993B1 (ko)
CN (1) CN102577256B (ko)
WO (1) WO2011049742A2 (ko)

Families Citing this family (187)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0863452A (ja) * 1994-08-26 1996-03-08 Nec Corp Simdプロセッサ
US8281377B1 (en) 2008-04-15 2012-10-02 Desktone, Inc. Remote access manager for virtual computing services
US9069599B2 (en) * 2008-06-19 2015-06-30 Servicemesh, Inc. System and method for a cloud computing abstraction layer with security zone facilities
US9489647B2 (en) 2008-06-19 2016-11-08 Csc Agility Platform, Inc. System and method for a cloud computing abstraction with self-service portal for publishing resources
EP2316071A4 (en) 2008-06-19 2011-08-17 Servicemesh Inc CLOUD DATA PROCESSING GATEWAY, CLOUD DATA PROCESSING HYPERVISOR, AND METHOD FOR IMPLEMENTING THEM
US10411975B2 (en) 2013-03-15 2019-09-10 Csc Agility Platform, Inc. System and method for a cloud computing abstraction with multi-tier deployment policy
US8619779B2 (en) * 2009-09-30 2013-12-31 Alcatel Lucent Scalable architecture for enterprise extension in a cloud topology
US8532108B2 (en) * 2009-09-30 2013-09-10 Alcatel Lucent Layer 2 seamless site extension of enterprises in cloud computing
US9274848B2 (en) * 2009-12-03 2016-03-01 International Business Machines Corporation Optimizing cloud service delivery within a cloud computing environment
US9104438B2 (en) * 2009-12-03 2015-08-11 International Business Machines Corporation Mapping computer desktop objects to cloud services within a cloud computing environment
US8498301B2 (en) * 2010-03-31 2013-07-30 Brocade Communications Systems, Inc. Switch with packet services processing
US8345692B2 (en) * 2010-04-27 2013-01-01 Cisco Technology, Inc. Virtual switching overlay for cloud computing
US8891543B1 (en) * 2011-05-23 2014-11-18 Pluribus Networks Inc. Method and system for processing packets in a network device
US20110299533A1 (en) * 2010-06-08 2011-12-08 Brocade Communications Systems, Inc. Internal virtual network identifier and internal policy identifier
WO2012023050A2 (en) 2010-08-20 2012-02-23 Overtis Group Limited Secure cloud computing system and method
TW201210245A (en) * 2010-08-27 2012-03-01 Atop Technologies Inc Network service providing system with high reliability
US20120054626A1 (en) * 2010-08-30 2012-03-01 Jens Odenheimer Service level agreements-based cloud provisioning
US9342368B2 (en) * 2010-08-31 2016-05-17 International Business Machines Corporation Modular cloud computing system
US20120059932A1 (en) * 2010-09-02 2012-03-08 Samsung Electronics Co., Ltd. Applying home network technologies to a wide area network
RU2562438C2 (ru) * 2010-09-09 2015-09-10 Нек Корпорейшн Сетевая система и способ управления сетью
US9183046B2 (en) * 2010-10-27 2015-11-10 Red Hat Israel, Ltd. Network address retrieval for live migration of a guest system in a virtual machine system
US8699499B2 (en) 2010-12-08 2014-04-15 At&T Intellectual Property I, L.P. Methods and apparatus to provision cloud computing network elements
US8891406B1 (en) * 2010-12-22 2014-11-18 Juniper Networks, Inc. Methods and apparatus for tunnel management within a data center
CN105262683B (zh) 2011-01-13 2021-03-30 日本电气株式会社 网络系统和路由控制方法
US8462666B2 (en) 2011-02-05 2013-06-11 Force10 Networks, Inc. Method and apparatus for provisioning a network switch port
US9288117B1 (en) * 2011-02-08 2016-03-15 Gogrid, LLC System and method for managing virtual and dedicated servers
US9191327B2 (en) 2011-02-10 2015-11-17 Varmour Networks, Inc. Distributed service processing of network gateways using virtual machines
US8751691B1 (en) * 2011-03-23 2014-06-10 Amazon Technologies, Inc. Methods and apparatus for remapping public network addresses on a network to an external network via an intermediate network
US9628294B1 (en) 2011-03-23 2017-04-18 Amazon Technologies, Inc. Methods and apparatus for remapping public network addresses on a network to an external network via a private communications channel
US8462780B2 (en) 2011-03-30 2013-06-11 Amazon Technologies, Inc. Offload device-based stateless packet processing
US8774213B2 (en) 2011-03-30 2014-07-08 Amazon Technologies, Inc. Frameworks and interfaces for offload device-based packet processing
US8555388B1 (en) 2011-05-24 2013-10-08 Palo Alto Networks, Inc. Heuristic botnet detection
JP5736971B2 (ja) * 2011-05-30 2015-06-17 富士通株式会社 通信制御方法および管理装置
WO2012166139A1 (en) 2011-06-02 2012-12-06 Hewlett-Packard Development Company, L.P. Network virtualization
CN107071087B (zh) 2011-08-17 2021-01-26 Nicira股份有限公司 逻辑l3路由
US8867403B2 (en) 2011-08-18 2014-10-21 International Business Machines Corporation Virtual network overlays
KR101355461B1 (ko) * 2011-08-24 2014-01-24 주식회사 케이티 가상화 라우터를 구현하는 물리서버 및 그 방법
US8856518B2 (en) 2011-09-07 2014-10-07 Microsoft Corporation Secure and efficient offloading of network policies to network interface cards
WO2013049480A2 (en) 2011-09-30 2013-04-04 Zte Corporation System and method for cloud-based implementation of control of focused overload of network element (cofo-ne)
JP2014534789A (ja) * 2011-11-29 2014-12-18 アマゾン・テクノロジーズ・インコーポレーテッド 直接ネットワークピアリングを管理するためのインターフェース
US8724642B2 (en) 2011-11-29 2014-05-13 Amazon Technologies, Inc. Interfaces to manage direct network peerings
US10015083B2 (en) 2011-12-22 2018-07-03 Amazon Technologies, Inc. Interfaces to manage inter-region connectivity for direct network peerings
US9106469B1 (en) 2011-11-29 2015-08-11 Amazon Technologies, Inc. Interfaces to manage last-mile connectivity for direct network peerings
US8738756B2 (en) 2011-12-01 2014-05-27 International Business Machines Corporation Enabling co-existence of hosts or virtual machines with identical addresses
US20130142201A1 (en) * 2011-12-02 2013-06-06 Microsoft Corporation Connecting on-premise networks with public clouds
US9571301B2 (en) * 2012-01-23 2017-02-14 The Faction Group, LLC System and method for a multi-tenant datacenter with layer 2 cloud interconnection
US10560283B2 (en) * 2012-01-23 2020-02-11 The Faction Group Llc System and method for a multi-tenant datacenter with layer 2 interconnection and cloud storage
US8990371B2 (en) * 2012-01-31 2015-03-24 International Business Machines Corporation Interconnecting data centers for migration of virtual machines
US9036636B1 (en) * 2012-02-06 2015-05-19 Big Switch Networks, Inc. System and methods for managing network packet broadcasting
JP5682932B2 (ja) * 2012-02-29 2015-03-11 日本電信電話株式会社 制御サーバ、制御方法及び制御プログラム
US9264295B1 (en) 2012-03-02 2016-02-16 Big Switch Networks, Inc. Systems and methods for forwarding broadcast network packets with a controller
US9467305B2 (en) 2012-03-07 2016-10-11 Vmware, Inc. Multitenant access to multiple desktops on host machine partitions in a service provider network
CN102594711B (zh) * 2012-03-28 2014-11-26 杭州华三通信技术有限公司 一种在边缘设备上的报文转发方法和边缘设备
US9201704B2 (en) * 2012-04-05 2015-12-01 Cisco Technology, Inc. System and method for migrating application virtual machines in a network environment
US10333827B2 (en) * 2012-04-11 2019-06-25 Varmour Networks, Inc. Adaptive session forwarding following virtual machine migration detection
US9027024B2 (en) * 2012-05-09 2015-05-05 Rackspace Us, Inc. Market-based virtual machine allocation
US9898317B2 (en) 2012-06-06 2018-02-20 Juniper Networks, Inc. Physical path determination for virtual network packet flows
US9304801B2 (en) 2012-06-12 2016-04-05 TELEFONAKTIEBOLAGET L M ERRICSSON (publ) Elastic enforcement layer for cloud security using SDN
US9292351B2 (en) * 2012-06-15 2016-03-22 Verizon Patent And Licensing Inc. Distributed fabric architecture in a cloud computing environment
US8775599B2 (en) 2012-06-19 2014-07-08 Microsoft Corporation Multi-tenant middleware cloud service technology
JP6218819B2 (ja) * 2012-06-20 2017-10-25 フュージョンレイヤー・オサケユキテュア オーケストレートされたコンピューティング環境における、ipのコミッショニングおよびデコミッショニングのための方法および装置
US10129096B2 (en) 2012-06-20 2018-11-13 Fusionlayer Oy Commissioning/decommissioning networks in orchestrated or software-defined computing environments
JP5881064B2 (ja) 2012-07-05 2016-03-09 株式会社日立製作所 通信装置、通信システム、通信方法、及び、プログラム
CN102801599B (zh) * 2012-07-26 2015-09-30 华为技术有限公司 一种通信方法和系统
US9258266B2 (en) * 2012-08-30 2016-02-09 Cisco Technology, Inc. Host detection by top of rack switch devices in data center environments
US9215239B1 (en) 2012-09-28 2015-12-15 Palo Alto Networks, Inc. Malware detection based on traffic analysis
US9104870B1 (en) * 2012-09-28 2015-08-11 Palo Alto Networks, Inc. Detecting malware
US8953618B2 (en) * 2012-10-10 2015-02-10 Telefonaktiebolaget L M Ericsson (Publ) IP multicast service leave process for MPLS-based virtual private cloud networking
KR20140052397A (ko) * 2012-10-24 2014-05-07 삼성전자주식회사 이동 통신 시스템에서 가상 머신 관리 장치 및 방법
IN2015DN03095A (ko) * 2012-11-27 2015-10-02 Ericsson Telefon Ab L M
US9350558B2 (en) 2013-01-09 2016-05-24 Dell Products L.P. Systems and methods for providing multicast routing in an overlay network
JP6024474B2 (ja) * 2013-01-23 2016-11-16 富士通株式会社 マルチテナントシステム、管理装置、管理プログラム、およびマルチテナントシステムの制御方法
CN103973578B (zh) * 2013-01-31 2018-06-19 新华三技术有限公司 一种虚拟机流量重定向的方法及装置
US9794107B2 (en) * 2013-02-06 2017-10-17 Alcatel Lucent Method and apparatus for providing migration of cloud components across address domains
US9699034B2 (en) 2013-02-26 2017-07-04 Zentera Systems, Inc. Secure cloud fabric to connect subnets in different network domains
US10382401B1 (en) 2013-02-26 2019-08-13 Zentera Systems, Inc. Cloud over IP for enterprise hybrid cloud network and security
US9525564B2 (en) * 2013-02-26 2016-12-20 Zentera Systems, Inc. Secure virtual network platform for enterprise hybrid cloud computing environments
US10348767B1 (en) 2013-02-26 2019-07-09 Zentera Systems, Inc. Cloud over IP session layer network
US10484334B1 (en) 2013-02-26 2019-11-19 Zentera Systems, Inc. Distributed firewall security system that extends across different cloud computing networks
US9130901B2 (en) 2013-02-26 2015-09-08 Zentera Systems, Inc. Peripheral firewall system for application protection in cloud computing environments
CN103138990A (zh) * 2013-03-12 2013-06-05 无锡城市云计算中心有限公司 云计算网络下的虚拟机管理方法和云计算网络管理装置
KR101429434B1 (ko) * 2013-03-13 2014-08-12 한국과학기술원 클라우드 컴퓨팅 환경에서 사용자 가상 머신 실행환경의 신뢰성 향상 장치 및 방법
US9027087B2 (en) * 2013-03-14 2015-05-05 Rackspace Us, Inc. Method and system for identity-based authentication of virtual machines
US9325610B2 (en) * 2013-03-15 2016-04-26 Cisco Technology, Inc. Extended tag networking
CN104113459A (zh) * 2013-04-16 2014-10-22 杭州华三通信技术有限公司 一种evi网络中虚拟机平滑迁移方法和装置
CN103257683A (zh) * 2013-05-07 2013-08-21 华为技术有限公司 一种云计算业务伸缩的方法和装置
JP6236221B2 (ja) * 2013-05-22 2017-11-22 富士通株式会社 管理プログラム、管理装置、およびネットワークシステム
US9344516B2 (en) 2013-05-30 2016-05-17 Zentera Systems, Inc. Interlocking applications and files
US9135042B2 (en) * 2013-06-13 2015-09-15 International Business Machines Corporation Provisioning a secure customer domain in a virtualized multi-tenant environment
US9521065B1 (en) * 2013-06-20 2016-12-13 EMC IP Holding Company LLC Enhanced VLAN naming
US20150006571A1 (en) * 2013-06-28 2015-01-01 LGS Innovations LLC Method And Apparatus For Enabling Queries In An Information-Centric Network
US9130775B2 (en) * 2013-07-10 2015-09-08 Cisco Technology, Inc. Support for virtual extensible local area network segments across multiple data center sites
US9912729B2 (en) * 2013-07-22 2018-03-06 Verizon Patent And Licensing Inc. Encapsulation scheme for cloud computing environment
US9613210B1 (en) 2013-07-30 2017-04-04 Palo Alto Networks, Inc. Evaluating malware in a virtual machine using dynamic patching
US10019575B1 (en) 2013-07-30 2018-07-10 Palo Alto Networks, Inc. Evaluating malware in a virtual machine using copy-on-write
US9811665B1 (en) 2013-07-30 2017-11-07 Palo Alto Networks, Inc. Static and dynamic security analysis of apps for mobile devices
US9253158B2 (en) 2013-08-23 2016-02-02 Vmware, Inc. Remote access manager for virtual computing services
US9924455B2 (en) * 2013-09-12 2018-03-20 Huawei Technologies Co., Ltd. System and method for virtual user-specific service gateways
US20150100560A1 (en) 2013-10-04 2015-04-09 Nicira, Inc. Network Controller for Managing Software and Hardware Forwarding Elements
US9124536B2 (en) * 2013-12-12 2015-09-01 International Business Machines Corporation Managing data flows in overlay networks
US10264025B2 (en) 2016-06-24 2019-04-16 Varmour Networks, Inc. Security policy generation for virtualization, bare-metal server, and cloud computing environments
US10091238B2 (en) 2014-02-11 2018-10-02 Varmour Networks, Inc. Deception using distributed threat detection
US9973472B2 (en) 2015-04-02 2018-05-15 Varmour Networks, Inc. Methods and systems for orchestrating physical and virtual switches to enforce security boundaries
US10217145B1 (en) 2014-02-18 2019-02-26 Amazon Technologies, Inc. Partitioned private interconnects to provider networks
JP6337551B2 (ja) * 2014-03-24 2018-06-06 日本電気株式会社 ネットワークシステム、制御装置、ネットワーク制御方法およびプログラム
JP6076937B2 (ja) * 2014-03-28 2017-02-08 株式会社日立製作所 パケット伝送システムおよびネットワークコントローラ
US9485191B2 (en) 2014-03-31 2016-11-01 Juniper Networks, Inc. Flow-control within a high-performance, scalable and drop-free data center switch fabric
US9479457B2 (en) 2014-03-31 2016-10-25 Juniper Networks, Inc. High-performance, scalable and drop-free data center switch fabric
US9294304B2 (en) * 2014-03-31 2016-03-22 Juniper Networks, Inc. Host network accelerator for data center overlay network
US9703743B2 (en) 2014-03-31 2017-07-11 Juniper Networks, Inc. PCIe-based host network accelerators (HNAS) for data center overlay network
US9807004B2 (en) * 2014-04-01 2017-10-31 Google Inc. System and method for software defined routing of traffic within and between autonomous systems with enhanced flow routing, scalability and security
US10305726B2 (en) * 2014-06-22 2019-05-28 Cisco Technology, Inc. Cloud framework for multi-cloud extension
US10019278B2 (en) 2014-06-22 2018-07-10 Cisco Technology, Inc. Framework for network technology agnostic multi-cloud elastic extension and isolation
EP3160092B1 (en) * 2014-06-28 2019-02-27 Huawei Technologies Co., Ltd. Method and device for network resource balancing
US9489516B1 (en) 2014-07-14 2016-11-08 Palo Alto Networks, Inc. Detection of malware using an instrumented virtual machine environment
US9787499B2 (en) 2014-09-19 2017-10-10 Amazon Technologies, Inc. Private alias endpoints for isolated virtual networks
CN105591865A (zh) * 2014-10-21 2016-05-18 中兴通讯股份有限公司 虚拟网络实现的方法、nve、nva装置及系统
US9521053B1 (en) 2014-10-28 2016-12-13 Amazon Technologies, Inc. Providing diagnostic metrics for virtual connections over physical connections into a provider network
US9542554B1 (en) 2014-12-18 2017-01-10 Palo Alto Networks, Inc. Deduplicating malware
US9805193B1 (en) 2014-12-18 2017-10-31 Palo Alto Networks, Inc. Collecting algorithmically generated domains
US9798570B2 (en) 2015-02-27 2017-10-24 The Faction Group Llc System and method for nested hypervisors and layer 2 interconnection
US10193929B2 (en) 2015-03-13 2019-01-29 Varmour Networks, Inc. Methods and systems for improving analytics in distributed networks
US9294442B1 (en) 2015-03-30 2016-03-22 Varmour Networks, Inc. System and method for threat-driven security policy controls
US10228978B2 (en) * 2015-03-19 2019-03-12 International Business Machines Corporation Dynamic management of computing platform resources
US10243873B2 (en) 2015-03-19 2019-03-26 International Business Machines Corporation Dynamic management of computing platform resources
US10176019B2 (en) 2015-03-19 2019-01-08 International Business Machines Corporation Dynamic management of computing platform resources
US9380027B1 (en) 2015-03-30 2016-06-28 Varmour Networks, Inc. Conditional declarative policies
US10009381B2 (en) 2015-03-30 2018-06-26 Varmour Networks, Inc. System and method for threat-driven security policy controls
US9525697B2 (en) 2015-04-02 2016-12-20 Varmour Networks, Inc. Delivering security functions to distributed networks
US9942058B2 (en) 2015-04-17 2018-04-10 Nicira, Inc. Managing tunnel endpoints for facilitating creation of logical networks
TWI543566B (zh) * 2015-05-12 2016-07-21 財團法人工業技術研究院 基於軟體定義網路的資料中心網路系統及其封包傳送方法、位址解析方法與路由控制器
US9628379B2 (en) 2015-06-01 2017-04-18 Cisco Technology, Inc. Large scale residential cloud based application centric infrastructures
US9986019B2 (en) 2015-06-24 2018-05-29 At&T Intellectual Property I, L.P. Intelligent route management for diverse ecosystems
US10554484B2 (en) 2015-06-26 2020-02-04 Nicira, Inc. Control plane integration with hardware switches
US9847938B2 (en) 2015-07-31 2017-12-19 Nicira, Inc. Configuring logical routers on hardware switches
US9819581B2 (en) 2015-07-31 2017-11-14 Nicira, Inc. Configuring a hardware switch as an edge node for a logical router
US9967182B2 (en) 2015-07-31 2018-05-08 Nicira, Inc. Enabling hardware switches to perform logical routing functionalities
US9948556B2 (en) * 2015-08-25 2018-04-17 Google Llc Systems and methods for externalizing network functions via packet trunking
US10313186B2 (en) 2015-08-31 2019-06-04 Nicira, Inc. Scalable controller for hardware VTEPS
US9612872B2 (en) * 2015-09-02 2017-04-04 Ciena Corporation Data plane resource allocation
US10263828B2 (en) 2015-09-30 2019-04-16 Nicira, Inc. Preventing concurrent distribution of network data to a hardware switch by multiple controllers
US9948577B2 (en) 2015-09-30 2018-04-17 Nicira, Inc. IP aliases in logical networks with hardware switches
US9998324B2 (en) 2015-09-30 2018-06-12 Nicira, Inc. Logical L3 processing for L2 hardware switches
US10230576B2 (en) 2015-09-30 2019-03-12 Nicira, Inc. Managing administrative statuses of hardware VTEPs
US10075304B2 (en) 2015-10-30 2018-09-11 Microsoft Technology Licensing, Llc Multiple gateway operation on single operating system
US10250553B2 (en) 2015-11-03 2019-04-02 Nicira, Inc. ARP offloading for managed hardware forwarding elements
US10191758B2 (en) 2015-12-09 2019-01-29 Varmour Networks, Inc. Directing data traffic between intra-server virtual machines
US11070395B2 (en) * 2015-12-09 2021-07-20 Nokia Of America Corporation Customer premises LAN expansion
US9992112B2 (en) 2015-12-15 2018-06-05 Nicira, Inc. Transactional controls for supplying control plane data to managed hardware forwarding elements
US9917799B2 (en) * 2015-12-15 2018-03-13 Nicira, Inc. Transactional controls for supplying control plane data to managed hardware forwarding elements
US9998375B2 (en) 2015-12-15 2018-06-12 Nicira, Inc. Transactional controls for supplying control plane data to managed hardware forwarding elements
US9762599B2 (en) 2016-01-29 2017-09-12 Varmour Networks, Inc. Multi-node affinity-based examination for computer network security remediation
US9680852B1 (en) 2016-01-29 2017-06-13 Varmour Networks, Inc. Recursive multi-layer examination for computer network security remediation
FI3860050T3 (fi) * 2016-02-18 2023-08-02 Fusionlayer Oy Verkkojen aktivointi/deaktivointi ohjelmiston määrittelemissä tietojenkäsittely-ympäristöissä
US10404648B2 (en) * 2016-02-26 2019-09-03 Nokia Of America Corporation Addressing for customer premises LAN expansion
US9521115B1 (en) 2016-03-24 2016-12-13 Varmour Networks, Inc. Security policy generation using container metadata
US10182035B2 (en) 2016-06-29 2019-01-15 Nicira, Inc. Implementing logical network security on a hardware switch
US10755334B2 (en) 2016-06-30 2020-08-25 Varmour Networks, Inc. Systems and methods for continually scoring and segmenting open opportunities using client data and product predictors
US10756928B2 (en) 2016-07-29 2020-08-25 At&T Intellectual Property I, L.P. Interconnection between enterprise network customers and network-based cloud service providers
TWI636679B (zh) 2017-02-07 2018-09-21 財團法人工業技術研究院 虛擬區域網路配置系統與方法及其電腦程式產品
US10243840B2 (en) 2017-03-01 2019-03-26 Juniper Networks, Inc. Network interface card switching for virtual networks
KR102008918B1 (ko) * 2017-10-13 2019-08-08 엔에이치엔 주식회사 클라우드 네트워크 구성
US11233856B2 (en) 2017-12-15 2022-01-25 Hewlett Packard Enterprise Development Lp Selecting an address of a device
US11153920B2 (en) 2017-12-15 2021-10-19 Hewlett Packard Enterprise Development Lp Establishing a GTP session
US11025541B2 (en) * 2017-12-15 2021-06-01 Hewlett Packard Enterprises Development LP Transporting a GTP message to a termination device
US10652121B2 (en) * 2018-02-26 2020-05-12 Genband Us Llc Toggling enhanced mode for a codec
KR102492788B1 (ko) * 2018-03-12 2023-01-30 주식회사 케이티 소프트웨어 정의 센터에서 그룹 네트워크 구축 장치 및 방법
US10819576B2 (en) 2018-03-23 2020-10-27 Juniper Networks, Inc. Enforcing policies in cloud domains with different application nomenclatures
US11010474B2 (en) 2018-06-29 2021-05-18 Palo Alto Networks, Inc. Dynamic analysis techniques for applications
US10956573B2 (en) 2018-06-29 2021-03-23 Palo Alto Networks, Inc. Dynamic analysis techniques for applications
US20200137021A1 (en) * 2018-10-31 2020-04-30 Hewlett Packard Enterprise Development Lp Using intent to access in discovery protocols in a network for analytics
US10833992B1 (en) 2018-12-14 2020-11-10 Amazon Technologies, Inc. Associating route tables with ingress traffic to logically isolated networks
CN109617735B (zh) 2018-12-26 2021-04-09 华为技术有限公司 云计算数据中心系统、网关、服务器及报文处理方法
US10880368B2 (en) 2019-01-29 2020-12-29 Cisco Technology, Inc. Identifying edge clouds within networks
US11575563B2 (en) 2019-05-31 2023-02-07 Varmour Networks, Inc. Cloud security management
US11310284B2 (en) 2019-05-31 2022-04-19 Varmour Networks, Inc. Validation of cloud security policies
US11711374B2 (en) 2019-05-31 2023-07-25 Varmour Networks, Inc. Systems and methods for understanding identity and organizational access to applications within an enterprise environment
US11290493B2 (en) 2019-05-31 2022-03-29 Varmour Networks, Inc. Template-driven intent-based security
US11290494B2 (en) 2019-05-31 2022-03-29 Varmour Networks, Inc. Reliability prediction for cloud security policies
US11863580B2 (en) 2019-05-31 2024-01-02 Varmour Networks, Inc. Modeling application dependencies to identify operational risk
US11196765B2 (en) 2019-09-13 2021-12-07 Palo Alto Networks, Inc. Simulating user interactions for malware analysis
US11445421B2 (en) 2020-08-21 2022-09-13 Sprint Communications Company L.P. Load balancing wireless access node usage based on active users
US11876817B2 (en) 2020-12-23 2024-01-16 Varmour Networks, Inc. Modeling queue-based message-oriented middleware relationships in a security system
US11818152B2 (en) 2020-12-23 2023-11-14 Varmour Networks, Inc. Modeling topic-based message-oriented middleware within a security system
US11777978B2 (en) 2021-01-29 2023-10-03 Varmour Networks, Inc. Methods and systems for accurately assessing application access risk
US11734316B2 (en) 2021-07-08 2023-08-22 Varmour Networks, Inc. Relationship-based search in a computing environment
US11533362B1 (en) 2021-12-01 2022-12-20 International Business Machines Corporation Network interface controller aware placement of virtualized workloads

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070035815A (ko) * 2005-09-28 2007-04-02 삼성전자주식회사 가상 랜 네트워크 및 그 서비스 제공 방법
KR20070039136A (ko) * 2004-08-19 2007-04-11 지멘스 악티엔게젤샤프트 액세스 네트워크에 의한 클라이언트 네트워크들과 ip제공자 네트워크들 사이의 ip 패킷들을 스위칭하기 위한방법

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7085827B2 (en) * 2001-09-20 2006-08-01 Hitachi, Ltd. Integrated service management system for remote customer support
JP3791621B2 (ja) * 2003-01-21 2006-06-28 富士通株式会社 バーチャルネットワークシステムのキャリアネットワークおよび該キャリアネットワークの通信ノード
US8923292B2 (en) * 2004-04-06 2014-12-30 Rockstar Consortium Us Lp Differential forwarding in address-based carrier networks
JP4622835B2 (ja) 2005-12-07 2011-02-02 株式会社日立製作所 仮想計算機システム及びそのネットワーク通信方法
US8223668B2 (en) * 2006-12-14 2012-07-17 Rockstar Bidco Lp Method and apparatus for exchanging routing information and the establishment of connectivity across multiple network areas
US8055789B2 (en) * 2007-03-27 2011-11-08 Amazon Technologies, Inc. Configuring intercommunications between computing nodes
JP4980200B2 (ja) * 2007-11-06 2012-07-18 アラクサラネットワークス株式会社 データ通信システムおよび転送フレーム
US8005081B2 (en) * 2007-12-21 2011-08-23 Nortel Networks Limited Evolution of ethernet networks
US20090168780A1 (en) * 2007-12-31 2009-07-02 Nortel Networks Limited MPLS P node replacement using a link state protocol controlled ethernet network
GB2458154B (en) 2008-03-07 2012-06-27 Hewlett Packard Development Co Routing across a virtual network
US7865586B2 (en) * 2008-03-31 2011-01-04 Amazon Technologies, Inc. Configuring communications between computing nodes
US8175103B2 (en) * 2008-06-26 2012-05-08 Rockstar Bidco, LP Dynamic networking of virtual machines
CN101459618B (zh) * 2009-01-06 2011-01-19 北京航空航天大学 虚拟机网络的数据包转发方法和装置
CN101540764B (zh) * 2009-04-27 2013-02-06 曙光信息产业(北京)有限公司 一种基于fpga的面向虚拟机的数据传输和路由方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070039136A (ko) * 2004-08-19 2007-04-11 지멘스 악티엔게젤샤프트 액세스 네트워크에 의한 클라이언트 네트워크들과 ip제공자 네트워크들 사이의 ip 패킷들을 스위칭하기 위한방법
KR20070035815A (ko) * 2005-09-28 2007-04-02 삼성전자주식회사 가상 랜 네트워크 및 그 서비스 제공 방법

Also Published As

Publication number Publication date
EP2491684B1 (en) 2015-09-02
CN102577256A (zh) 2012-07-11
WO2011049742A3 (en) 2011-07-07
JP2013509090A (ja) 2013-03-07
JP5763081B2 (ja) 2015-08-12
US20110090911A1 (en) 2011-04-21
US8369333B2 (en) 2013-02-05
EP2491684A2 (en) 2012-08-29
KR20120056300A (ko) 2012-06-01
CN102577256B (zh) 2015-08-05
WO2011049742A2 (en) 2011-04-28

Similar Documents

Publication Publication Date Title
KR101371993B1 (ko) 가상화 네트워크 인프라구조를 갖는 투명 클라우드 컴퓨팅을 위한 방법 및 장치
US11095557B2 (en) L3 underlay routing in a cloud environment using hybrid distributed logical router
EP4183120B1 (en) Interface-based acls in an layer-2 network
US9042384B2 (en) Distributed routing domains in multi-tenant datacenter virtual networks
CN109937401B (zh) 经由业务旁路进行的负载均衡虚拟机的实时迁移
US20150124823A1 (en) Tenant dhcp in an overlay network
US11652743B2 (en) Internet group management protocol (IGMP) of a layer-2 network in a virtualized cloud environment
US20180006969A1 (en) Technique for gleaning mac and ip address bindings
US11206212B2 (en) Disambiguating traffic in networking environments with multiple virtual routing and forwarding (VRF) logical routers
US20220263793A1 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
US20240031282A1 (en) Layer-2 networking span port in a virtualized cloud environment
US20230370421A1 (en) Scaling ip addresses in overlay networks
WO2022146585A1 (en) Layer-2 networking using access control lists in a virtualized cloud environment
US11736558B2 (en) Transparent mounting of external endpoints between private networks
WO2022146587A1 (en) Internet group management protocol (igmp) of a layer 2 network in a virtualized cloud environment
WO2022173552A1 (en) Cloud infrastructure resources for connecting a service provider private network to a customer private network
EP4272383A1 (en) Layer-2 networking information in a virtualized cloud environment
WO2022146588A1 (en) Layer-2 networking storm control in a virtualized cloud environment

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
FPAY Annual fee payment

Payment date: 20170224

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180223

Year of fee payment: 5