KR101143648B1 - 가상 네트워크 토폴로지 발생을 위한 방법, 컴퓨터, 및 컴퓨터 판독가능 기록매체 - Google Patents
가상 네트워크 토폴로지 발생을 위한 방법, 컴퓨터, 및 컴퓨터 판독가능 기록매체 Download PDFInfo
- Publication number
- KR101143648B1 KR101143648B1 KR1020040015027A KR20040015027A KR101143648B1 KR 101143648 B1 KR101143648 B1 KR 101143648B1 KR 1020040015027 A KR1020040015027 A KR 1020040015027A KR 20040015027 A KR20040015027 A KR 20040015027A KR 101143648 B1 KR101143648 B1 KR 101143648B1
- Authority
- KR
- South Korea
- Prior art keywords
- vlan
- driver
- computer
- vnic
- network interface
- Prior art date
Links
- 238000000034 method Methods 0.000 claims abstract description 40
- 238000009434 installation Methods 0.000 claims abstract 2
- 238000007726 management method Methods 0.000 description 18
- 238000002955 isolation Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 229940014425 exodus Drugs 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
Images
Classifications
-
- E—FIXED CONSTRUCTIONS
- E05—LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
- E05C—BOLTS OR FASTENING DEVICES FOR WINGS, SPECIALLY FOR DOORS OR WINDOWS
- E05C3/00—Fastening devices with bolts moving pivotally or rotatively
- E05C3/02—Fastening devices with bolts moving pivotally or rotatively without latching action
- E05C3/04—Fastening devices with bolts moving pivotally or rotatively without latching action with operating handle or equivalent member rigid with the bolt
- E05C3/041—Fastening devices with bolts moving pivotally or rotatively without latching action with operating handle or equivalent member rigid with the bolt rotating about an axis perpendicular to the surface on which the fastener is mounted
- E05C3/043—Fastening devices with bolts moving pivotally or rotatively without latching action with operating handle or equivalent member rigid with the bolt rotating about an axis perpendicular to the surface on which the fastener is mounted the pivot being between bolt and handle
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- E—FIXED CONSTRUCTIONS
- E05—LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
- E05B—LOCKS; ACCESSORIES THEREFOR; HANDCUFFS
- E05B1/00—Knobs or handles for wings; Knobs, handles, or press buttons for locks or latches on wings
- E05B1/003—Handles pivoted about an axis perpendicular to the wing
-
- E—FIXED CONSTRUCTIONS
- E05—LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
- E05C—BOLTS OR FASTENING DEVICES FOR WINGS, SPECIALLY FOR DOORS OR WINDOWS
- E05C19/00—Other devices specially designed for securing wings, e.g. with suction cups
- E05C19/08—Hasps; Hasp fastenings; Spring catches therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- E—FIXED CONSTRUCTIONS
- E05—LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
- E05Y—INDEXING SCHEME ASSOCIATED WITH SUBCLASSES E05D AND E05F, RELATING TO CONSTRUCTION ELEMENTS, ELECTRIC CONTROL, POWER SUPPLY, POWER SIGNAL OR TRANSMISSION, USER INTERFACES, MOUNTING OR COUPLING, DETAILS, ACCESSORIES, AUXILIARY OPERATIONS NOT OTHERWISE PROVIDED FOR, APPLICATION THEREOF
- E05Y2900/00—Application of doors, windows, wings or fittings thereof
- E05Y2900/10—Application of doors, windows, wings or fittings thereof for buildings or parts thereof
- E05Y2900/13—Type of wing
- E05Y2900/148—Windows
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/4645—Details on frame tagging
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
- H04L12/467—Arrangements for supporting untagged frames, e.g. port-based VLANs
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mechanical Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
- Multi Processors (AREA)
Abstract
물리적 컴퓨팅 시스템으로부터 임의의 가상 네트워크 토폴로지를 자동 생성하는 아키텍쳐 및 방법이 제공된다. 상기 아키텍쳐 및 방법에 의하면, 컴퓨터들을 물리적으로 접속하고 시스템 내에 배선들을 구성할 필요 없이 동일한 물리적 컴퓨팅 시스템 상에 다수의 분산 어플리케이션을 자동 및 원격으로 설치할 수 있다.
물리적 컴퓨팅 시스템, 가상 네트워크 토폴로지, 분산 어플리케이션
Description
도 1은 종래의 인터넷 데이터 센터(IDC)를 도시한 도면.
도 2는 하나 이상의 분산 어플리케이션들을 지원하도록 자동 구성될 수 있는, 물리적인 컴퓨팅 리소스들을 갖는 분산 컴퓨팅 시스템을 도시한 도면.
도 3은 분산 컴퓨팅 시스템에서의 분산 어플리케이션의 설계, 배치, 및 관리를 자동화하기 위한 플랫폼 아키텍쳐의 층들을 도시한 도면.
도 4는 분산 어플리케이션들을 호스팅하는데 사용될 수 있는 예시적인 물리적 컴퓨팅 리소스들의 물리적 네트워크 토폴로지를 도시한 도면.
도 5는 도 4의 물리적 컴퓨팅 리소스들 상에 호스팅될 수 있는 분산 어플리케이션의 가상 네트워크 토폴로지를 도시한 도면.
도 6은 도 4의 가상 네트워크 토폴로지에서 사용되는 서버, 및 서버 상에서 구현되는 가상 근거리 통신망(VLAN) 드라이버를 도시하며, 가상 네트워크 토폴로지에 따라 분산 어플리케이션에 대해 물리적 리소스들을 배치하는데 사용되는 리소스 관리자를 나타낸 도면.
도 7은 물리적 컴퓨팅 리소스들로부터 가상 네트워크 토폴로지를 발생하는 프로세스를 도시한 도면.
<도면의 주요 부분에 대한 부호의 설명>
100 : 인터넷 데이터 센터
204 : 네트워크 스위치들
206 : 부하 조절 컴퓨터(들)
208 : 방화벽 컴퓨터(들)
210 ; 가상 네트워크 토폴로지 발생 서버(들)
본 특허 출원은 하기의 미국 특허 출원들과 관련되어 있다(이들 모두는 참조로서 포함되어 있다):
ㆍ2000년 10월 24일자로 출원된, "SYSTEM AND METHOD FOR DISTRIBUTED MANAGEMENT OF SHARED COMPUTERS"라는 제목의 미국 특허 출원 제09/695,812호.
ㆍ2000년 10월 24일자로 출원된, "SYSTEM AND METHOD FOR LOGICAL MODELING OF DISTRIBUTED COMPUTER SYSTEMS"라는 제목의 미국 특허 출원 제09/695,813호.
ㆍ2000년 10월 24일자로 출원된, "SYSTEM AND METHOD FOR RESTRICTING DATA TRANSFERS AND MANAGING SOFTWARE COMPONENTS OF DISTRIBUTED COMPUTERS"라는 제목의 미국 특허 출원 제09/695,820호.
ㆍ2000년 10월 24일자로 출원된, "USING PACKET FILTERS AND NETWORK VIRTUALIZATION TO RESTRICT NETWORK COMMUNICATIONS"라는 제목의 미국 특허 출원 제09/695,821.
ㆍ2000년 10월 24일자로 출원된, "SYSTEM AND METHOD FOR DESIGNING A LOGICAL MODEL OF DISTRIBUTED COMPUTER SYSTEM AND DEPLOYING PHYSICAL RESOURCES ACCORDING TO THE LOGICAL MODEL"이라는 제목의 미국 특허 출원 제09/696,707호.
ㆍ2000년 10월 24일자로 출원된, "SYSTEM AND METHOD PROVIDING AUTOMATIC POLICY ENFORCEMENT IN A MULTI-COMPUTER SERVICE APPLICATION"이라는 제목의 미국 특허 출원 제09/696,752호.
본 발명은 분산 컴퓨팅 시스템들 및 분산 컴퓨팅 시스템들에서 실행되는 분산 어플리케이션들에 관한 것이다. 특히, 본 발명은 물리적 분산 컴퓨팅 시스템으로부터 임의의 가상 네트워크 토폴로지들을 자동 생성하여 그 시스템이 다수의 분산 어플리케이션을 호스팅할 수 있도록 하는 기술들에 관한 것이다.
인터넷 사용은 지난 수년간에 걸쳐 급증하였고 계속 성장하고 있다. 전자 메일, 온라인 쇼핑, 뉴스 및 정보 수집, 음악 감상, 비디오 감상, 구직 등의 WWW(World Wide Web) 상에 제공되는 많은 서비스들로 인해 사람들이 매우 편해지게 되었다. 인터넷 기반의 서비스들의 증가 요구에 보조를 맞추기 위해, 웹사이트들을 호스팅하고, 이들 사이트에 백엔드(backend) 서비스들을 제공하며, 그 사이트들과 관련된 데이터를 저장하기 위한 목적의 컴퓨터 시스템들이 엄청나게 증가하고 있다.
분산 컴퓨터 시스템의 한 종류는 IDC(Internet data center)이며, IDC는 인터넷 기반의 서비스들을 호스팅하기 위한 많은 컴퓨터들을 수용하는 특별히 설계된 집합체이다. "웹팜(Webfarms)" 및 "서버 팜(server farms)"이라고도 불리우는 IDC 들은 일반적으로 기후가 통제되고 물리적으로 안전한 빌딩들 내에 수백 내지 수천개의 컴퓨터들을 수용한다. 이 컴퓨터들은 하나 이상의 인터넷 서비스들 또는 웹사이트들을 지원하는 하나 이상의 프로그램들을 운영하도록 내부 접속된다. IDC들은 믿을 수 있는 인터넷 액세스, 믿을 수 있는 전원 공급기들, 및 안전한 동작 환경을 제공한다. 다른 형태의 분산 컴퓨터 시스템은 EDC(enterprise data centers)이다. EDC들은 IDC들과 유사하지만, 기업을 대상으로 하고 있다.
도 1은 인터넷 데이터 센터(100)를 도시한다. 인터넷 데이터 센터는 특별히 구성된 룸 내에 배치된 많은 서버 컴퓨터들(102)을 갖는다. 컴퓨터들은 일반적으로 서버들로서 구성된 범용 컴퓨터들이다. 인터넷 데이터 센터는 단일 엔티티(예를 들면 야후 또는 MSN용의 데이터 센터)에 대하여 단일 사이트를 수용하도록, 또는 다수의 엔티티(예를 들면, 다수의 회사에 대한 사이트들을 호스팅하는 엑소더스(Exodus) 센터)에 대하여 다수의 사이트들을 수용하도록 구성될 수 있다.
IDC(100)는 컴퓨터 리소스들을 공유하는 3개의 엔티티 - 엔티티 A, 엔티티 B, 및 엔티티 C - 로 예시된다. 3개의 엔티티들은 웹 상에 존재하길 원하는 다양한 회사들을 나타낸다. IDC(100)는 교통이 혼잡할 때 엔티티들이 사용할 수 있는 부가적인 컴퓨터들(104)이 대기하고 있다. 예를 들면, 온라인 소매업(retailing)과 관련된 엔티티는 크리스마스 시즌 동안 요구가 상당히 증가하는 것을 경험할 것이다. 추가의 컴퓨터들은 이 요구를 충족시키기 위해 IDC 유연성을 제공한다.
오늘날, 많은 IDC들은 복잡하며 종종 다수의 어플리케이션들을 호스팅하도록 요구된다. 예를 들면, 몇몇 웹사이트들은 수천개의 컴퓨터들을 동작시킬수 있고, 많은 분산 어플리케이션들을 호스팅할 수 있다. 이 분산 어플리케이션들은 종종 복잡한 어플리케이션들을 지원하기 위해 조작자들이 IDC 내에서 배선 구조들을 수동으로 배치할 뿐만 아니라 임의의 네트워크 스위치들에 컴퓨터들을 물리적으로 접속해야 하는 복잡한 네트워크 조건을 갖는다. 결과적으로, 어플리케이션 조건들을 따르기 위해 물리적인 네트워크 토폴로지들을 구축하는 이 작업은 인간이 실수하기 쉬운 난해하고 시간이 많이 걸리는 프로세스이다. 따라서, 물리적 컴퓨팅 시스템 상에 분산 어플리케이션들을 설계하고 배치하는 기술들을 향상시킬 필요성이 존재한다.
물리적 컴퓨팅 시스템으로부터 임의의 가상 네트워크 토폴로지들을 자동 생성하는 아키텍쳐 및 방법이 설명된다. 상기 아키텍쳐 및 방법에 의하면 컴퓨터들을 물리적으로 접속하지 않고 또한 시스템 내에 배선들을 구성할 필요 없이 다수의 분산 어플리케이션들을 동일한 물리적 컴퓨팅 시스템 상에 자동 및 원격 설치시키는 것이 가능하다.
하나의 구현에서, 분산 컴퓨팅 시스템은 네트워크 스위치들(예를 들면, 이더넷 스위치들)를 통해 내부 접속된 많은 컴퓨터들을 포함한다. 컴퓨터들은 어플리케이션(예를 들면, 웹 서버들, 데이터베이스들, 부하 조절, 방화벽들, 벌크 데이터 저장 장치 등)에 의해 요구된 각종 특정 작업들을 수행하도록 프로그램될 수 있다. 상기 방법은 분산 컴퓨팅 시스템 상에서 호스팅되는 각 분산 어플리케이션에 대한 물리적 네트워크의 상부에 하나 이상의 가상 근거리 통신망들(VLAN들)을 생성한다. 분산 어플리케이션들에 사용되는 컴퓨터들은 어플리케이션들과 관련된 각각의 VLAN들에 자동 접속된다. VLAN들은 어플리케이션들이 서로 분리되었을 때 동작하는 것을 보장한다.
컴퓨터들의 자동화 접속은 2가지의 동작들을 포함한다. 제1 동작은 컴퓨터가 접속되는 스위치 포트에 VLAN 멥버십을 할당하는 것이다. 이는 관련된 VLAN 아이덴티티로 태그 지정된 패킷들을 수용하기 위해 스위치 포트를 지정한다. 제2 동작은 각 컴퓨터에서 단일의 물리적 네트워크 인터페이스(NIC)를 통해 가상 네트워크 인터페이스들(VNICs)을 생성하는 것이다. 각 VNIC는 관련된 VLAN를 고유하게 나타낸다. 이에 의하면 단일의 물리적 NIC를 갖는 컴퓨터는 수개의 VLAN들에 참가하게 된다. 특정 VLAN과 관련된 패킷들은 그 VLAN에 대해 대응하는 VNIC를 통해 컴퓨터에 라우팅되고 처리된다.
가상 네트워크 토폴로지들을 생성하는 능력에 의해 어프리케이션 설계자들은 본질적으로 임의 타입의 네트워크 구성을 즉각적으로(on the fly) 자동 생성할 수 있다. 예를 들면, 아키텍쳐는 방화벽 컴퓨터를 VLAN에 원격 할당하고, 스위치들을 지정하고 주어진 영역 내의 VLAN에 서버들을 추가함으로써 분리 영영들(즉, "DMZs")을 형성할 수 있다. 어플리케이션들은, 개별적인 서버들이 다수의 상이한 어플리케이션들을 호스팅하는, 동일한 컴퓨팅 시스템에 걸쳐 배치될 수 있다.
이하의 개시물은 물리적 컴퓨팅 리소스들에 분산 소프트웨어 어플리케이션들을 자동으로 배치하기 위한 가상 네트워크 토폴로지들의 발생에 관하여 설명한다. 물리적 컴퓨팅 시스템으로부터 임의의 가상 네트워크 토폴로지를 발생하는 능력은 동일한 분산 컴퓨팅 시스템 상에 호스팅되는 모든 분산 어프리케이션에 대하여 맞춤(custom) 네트워크 토폴로지들의 생성을 가능하게 한다. 이는 복잡하고, 종종 다수의 어플리케이션들을 호스팅하도록 요구되는 대형의 데이터 센터들에게 특히 도움이 된다. 이러한 데이터 센터들에 설치되는 분산 어플리케이션들은 종종 복잡한 네트워크 조건들을 가지며, 이 조건들에 따르기 위해 물리적 네트워크 토폴로지들을 구축하는 것은, 인간이 실수하기 쉬운 난해하고 시간을 많이 소비하는 프로세스이다. 각각의 배치된 어플리케이션에 대해 컴퓨팅 시스템의 물리적인 재구성(예를 들면, 배선의 재라우팅, 컴퓨터들을 각종 스위치들에 물리적으로 접속하는 것 등)을 요구하지 않는 가상 네트워크 토폴로지의 발생을 가능하게 함으로써, 인간 중심의 동작들에 대한 의존성을 줄이고, 이에 따라 비용 및 사람이 실수할 가능성을 감소시킨다.
분산 컴퓨팅 시스템
도 2는 하나 이상의 분산 어플리케이션들을 지원하는데 필요한 것으로서, 자동 배치될 수 있는 분산 컴퓨팅 시스템(200)을 도시하고 있다. 분산 컴퓨팅 시스템(200)은 네트워크 스위치들(204)를 통해 내부 접속된 많은 서버들 202(1), 202(2), ..., 202(N)의 모놀리식 집합체를 포함한다. 하나의 구현에서, 네트워크 스위치들(204)은 비차단(non-blocking) 이더넷 스위치들이지만, 다른 종류의 스위치들이 사용될 수 있다. 네트워크(204)는 서버들 202(1)-202(N)이 각각 접속되는 다수의 물리적 포트들 P1, P2, ..., PN을 갖도록 도시된다. 분산 컴퓨팅 시스템(200)은 하나 이상의 부하 조절 컴퓨터들(206) 및 하나 이상의 방화벽 컴퓨터들(208)을 더 포함한다. 이 컴퓨터 종류들 각각은 네트워크 스위치들(204)의 물리적 포트들 PN+1 및 PN+2에 접속되도록 도시된다. 부하 조절기들 및 방화벽들에 부가하여, 분산 컴퓨팅 시스템은 웹 캐시들, SSL(secure sockets layer) 가속기들, NAS(network attached storage) 장치들 등과 같은 다른 종류들의 특수 장치들을 더 포함할 수 있다.
분산 컴퓨팅 시스템(200)은 인터넷 기반의 서비스들을 호스팅하는 인터넷 데이터 센터(IDC), 또는 보다 일반적으로 데이터 센터와 같은 대규모 컴퓨팅 시스템 내에 사용되는 물리적 리소스들을 나타낸다. 예시적인 데이터 센터는 근거리 통신망(LAN)에 의해 내부 접속된 수백 내지 수천개의 컴퓨터들을 포함할 수 있다.
분산 컴퓨팅 시스템(200)은 물리적 포트 PN+3을 통해 네트워크 스위치들(204)에 결합된 것으로 도시되어 있는 하나 이상의 가상 네트워크 토폴로지 발생 서버들(210)을 더 포함한다. 이 서버(210)는 설계자가 분산 컴퓨팅 시스템(200)으로부터 가상 네트워크 토폴로지들을 생성할 수 있게 하여, 다수의 분산 어플리케이션들이 동일한 시스템(200) 상에 호스팅될 수 있게 한다. 분산 어플리케이션은 다수의 네트워크화된 컴퓨터들 상에서 구현되고, 다수의 네트워크화된 컴퓨터들에 의해 실행되는 소프트웨어 프로그램이다. 이러한 어플리케이션들의 예들은 이메일 서비스들, 웹사이트들, 컨텐트 데이터베이스들, 온라인 상거래, 저장 장치, 뉴스 및 정보 서비스들, 오락 서비스들 등을 포함한다.
가상 네트워크 토폴로지를 발생하기 위해, 서버(210)는 각 분산 어플리케이션에 대해 적어도 하나의 가상 근거리 통신망(VLAN)을 생성한다. 그리고 서버(210)는 선택된 서버들 및 관련 스위치 포트들을 특정 VLAN과 관련시킨다. 가상 네트워트 토폴로지 발생 서버(210)는 분산 어플리케이션들의 지원시 각각의 VLAN들에 대한 물리적 리소스들의 배치를 용이하게 하는 하나 이상의 리소스 관리자들(212)을 운영한다. 리소스 관리자(들)(212)은 서버들(202), 네트워크 스위치들(204), 부하 조절 컴퓨터(들)(206), 및 방화벽 컴퓨터(들)(208)과 통신하여 각종 VLAN들을 확립함으로써, 관련된 어플리케이션들이 서로 분리되어 있을 때 안전하게 동작할 수 있도록 한다. 리소스 관리자(들)(212)은 VLAN들의 생성 및 할당 뿐만 아니라, 컴퓨터(들)이 VLAN들에 접속되어 있는지를 트래킹한다. 이러한 정보는 가상 네트워크 토폴로지 발생 서버(210)에서 리소스 관리자(들)(212)에 의해 데이터 베이스 내에 유지될 수 있다. 서버(210)는 또한 어플리케이션의 토폴로지를 고객화할 수 있다. 예를 들면, 서버는 어플리케이션 내에서 분리 영역들, 즉 "DMZs"을 생성하여 중요한 컴포넌트들을 분리시킬 수 있다.
가상 네트워크 토폴로지들이 이용될 수 있는 여러가지 방법들이 있다. 가상 토폴로지 발생은 예를 들면 자동화를 용이하게 하기 위해 사용될 수 있다. 네트워크 토폴로지들은 이하에 보다 상세히 기재한 바와 같이, 인간의 간섭 없이 요구에 대하여 발생될 수 있다. 또한 가상 토폴로지 발생은 어플리케이션들이 다른 어플리케이션을 방해하지 않고, 안전하게 다수의 어플리케이션들을 동일한 물리적 네트 워크가 호스팅할 수 있게 한다. 가상 토폴로지 발생은 어플리케이션들의 부분들을 이외의 부분들로부터 분리시키는 별도의 분리 영역들을 어플리케이션 설계자가 형성 및 강화시키도록 한다. 이러한 분리 영역들은 아주 짧은 시간 동안 즉각적으로 작성될 수 있다. 가상 토폴로지 발생의 또 다른 가능한 사용은, 다수의 분산 어플리케이션들 사이에서 전문화된 하드웨어 리소스들의 풀링(pooling)을 가능하게 하는 것이다. 도 2에서, 예를 들면, 물리적 네트워크의 임의 지점에서 부하 조절 컴퓨터(들)의 풀(pool)이 정의되고 접속될 수 있다. 그리고 부하 조절기는 이 풀로부터 할당되고 어플리케이션의 가상 네트워크 내에 배치될 수 있다.
가상 네트워크 토폴로지를 발생시키고 물리적 컴퓨팅 리소스들 상에 어플리케이션을 자동 배치하는 방법에 대해 설명하기 전에, 다음 섹션은 물리적 컴퓨팅 시스템 위에 구축된 플랫폼 아키텍쳐를 다룬다. 아키텍쳐는 각종의 자동화된 배치 및 관리 기능들을 개발할 수 있는 프레임 워크를 제공한다.
플랫폼 아키텍쳐
도 3은 분산 컴퓨팅 시스템(200) 상에서 분산 어플리케이션들의 설계, 배치, 및 관리를 자동화하는 플랫폼 아키텍쳐(300)를 도시한다. 아키텍쳐(300)는 분산 컴퓨팅 시스템(200)의 물리적 컴퓨터 리소스들을 나타내는 베이스층(302) 위에 있는 다수의 층들을 나타낸다. 자동화된 배치 서비스들 층(304)은 기계들을 분산 컴퓨팅 시스템(200)에서 사용되는 서버들로 변환시키는 툴들을 제공한다. 이러한 툴들은 OS(operating system) 화상들의 생성, 편집, 및 배치를 가능하게 한다. 기계의 원격 프로그래밍은, 시스템 및 네트워크 장치들이 구성 및 관리될 수 있게 하 는, Microsoft's Windows 동작 시스템들 내의 프로그래밍 인터페이스 (API)인 WMI(Windows Management Instrumentation)과 같은 완전한 프로그램의 인터페이스들을 사용하여 달성된다.
네트워크 관리층(306)은 자동화 배치 서비스들 층(304) 위에 있다. 네트워크 관리층(306)은 네트워크 관리 및 가상 토폴로지 발생을 가능하게 한다. 분분적으로, 네트워크 관리층은 네트워크 스위치들(204)의 관련 포트에 접속된 단일 물리적 네트워크 인터페이스를 통해 각각의 컴퓨터들이 하나 이상의 VLAN들에 접속되는 것을 용이하게 하는 네트워크 컴퓨터들에 대한 드라이버 모델을 지원한다. 드라이버 모델에 따르면, VLAN 드라이버는 서버에 설치되고, 단일 물리적 네트워크 인터페이스 상에 가상 네트워크 인터페이스들(VNICs)을 생성하는데 사용된다. VLAN 드라이버는 각 VLAN에 대하여 하나의 가상 네트워크 인터페이스(VNIC)를 생성한다. 비록 모든 패킷들이 동일한 물리적 NIC를 통해 물리적으로 이동하더라도, VNIC들은 서버에 있는 IP 스택 내의 네트워크 인터페이스(NIC) 상에만 존재하여, 서버가 하나 이상의 VLAN을 통과한 패킷들을 처리할 수 있도록 한다. 이에 대해서는 도 6을 참조하여 이하에 상세히 설명한다.
드라이버 모델은 스위치 포트들 위에 태그를 지정하는 VLAN의 구성을 가능하게 하여 분산 컴퓨팅 시스템들을 통과한 데이터 패킷들이 그들이 속하는 VLAN의 아이덴티티들로 태그 지정되도록 한다. 네트워크 스위치들(204)은 태그 지정을 강화하고, 스위치들이 속하는 VLAN들을 식별하는 태그들을 가진 패킷들만을 수용한다. 하나의 구현에서, 네트워크 스위치들(204)은 태그 지정된 포트들 및 태그가 지정되 지 않는 포트들 모두를 갖는다. 스위치의 태그 지정된 포트들은 VLAN들 아이덴티티들로 태그 지정되어 다른 스위치들의 태그 지정된 포트들과의 접속에 사용된다. 이에 따라 네트워크 스위치들을 통한 패킷들의 전송이 빨라진다. 스위치의 태그 지정되지 않은 포트들은 서버들(202) 또는 컴퓨터들(206, 208)과의 접속에 사용된다. 패킷들이 그들의 목적지 서버들의 스위치 포트에 도달하면, 서버들이 태그 지정에 대해서 아무것도 알 필요가 없도록, 서버들 상류로 패킷들을 전달하기 전에 VLAN 태그들이 패킷들로부터 제거된다.
물리적 리소스 관리층(308)은 네트워크 관리층(306) 위에 존재한다. 물리적 리소스 관리층(308)은 분산 컴퓨팅 시스템(200)의 물리적 모델을 유지하며, 소유권을 트래킹하고 모든 물리적 컴퓨팅 리소스들의 할당을 조정한다. 물리적 관리층(308)은 배치된(batched) 리소스 할당을 더 지원함으로써 물리적 컴퓨팅 리소스들의 동적 구성 및 관리를 가능하게 한다.
논리적 리소스 관리층(310)은 물리적 리소스 관리층(308) 위에 있다. 논리적 리소스 관리층(310)은 분산 어플리케이션에 의해 요구된 논리적 리소스들의 할당을 용이하게 한다. 예를 들면, 어플리케이션은 데이터베이스들, 부하 조절 서비스들, 방화벽, 웹서비스들 등과 같은 리소스들을 요구할 것이다. 논리적 리소스 관리층(310)은 이러한 논리적 리소스들을 노출시킨다.
다음 층은 분산 어플리케이션 및 그 동작의 트래킹을 설명할 수 있게 하는 모델 및 런타임 층(312)이다. SDM(service definition model)은 동작 프로세스들, 및 어플리케이션 인트로스펙션(introspection) 및 어플리케이션 리소스들의 제어용 API를 설명하기 위한 이름 영역 및 컨텍스트를 제공한다. 또한 SDM은 조작자들 및 개발자들이 공통 어플리케이션 공유할 수 있게 한다.
컴퓨팅 리소스들 층(200) 위의 여섯번째 층은 컴포넌트들 층(314)이다. 이 층은 분산 어플리케이션의 재사용 가능한 빌딩 블록들을 정의할 수 있게 하며, 이 블록들은 컨텍스트, 이름 지정, 및 결합(binding)을 위해 SDM API들을 사용한다. 이 빌딩 블록들은 "컴포넌트들"이라 칭해진다.
최상층은 동작 논리 층(316)으로서 분산 어플리케이션의 동작 특성을 가지고 있다. 동작 논리는 서비스 개시, 서비스의 성장 및 축소, 업그레이드 및 다운그레이드, 결함 검출 및 복구, 및 상태 분할(state partitioning)에 대한 책임이 있다. 동작 논리는 배치들(deployment) 및 어플리케이션들에 걸쳐 입증된 동작 실행들의 재사용을 가능하게 한다. SDM 층의 사용을 통해, 동작 논리는 발생할 수 있는 일들을 더 잘 이해하기 위해 컨텍스트를 갖는다. 예를 들어, 실패가 발생하면, 동작 논리는 실패가 룸의 중간에 있는 몇몇 서버에서보다는 이메일 서비스의 전단에서 발생했다고 결정할 수 있다.
가상 네트워크 토폴로지들
플랫폼 아키텍쳐는 물리적 리소스들의 상부에 가상 네트워크 토폴로지를 발생시키는 프레임 워크를 제공하여 동일한 컴퓨팅 시스템이 다수의 어플리케이션들을 지원할 수 있도록 한다. 가상 LAN(VLAN)은 각 어플리케이션에 대해 생성될 수 있기 때문에, 어플리케이션은 분산 컴퓨팅 시스템 상에서 운영하는 다른 어플리케이션들이 분리되었을 때 실행할 수 있다. 일단 가상 네트워크 토폴로지가 생성되 면, 시스템은 물리적 리소스들의 자동화 배치 및 적절한 VLAN들과의 접속을 용이하게 하여 분산 어플리케이션의 실행을 가능하게 한다.
도 4는 네트워크 스위치(404)를 통해 내부 접속된 5개의 서버들 402(1)-402(5)의 예시적인 구성을 갖는 물리적 네트워크 토폴로지(400)를 도시한다. 각 서버(402)는 네트워크 스위치(404)의 관련 포트 P1-P5에 물리적으로 결합된다. 설명용을 위해, 네트워크 스위치는 하나 이상의 이더넷 스위치로서 구현된다.
가상 네트워크 토폴로지들은 물리적 컴퓨팅 리소스들(400) 상에서 운영하는 분산 어플리케이션들을 나타내도록 생성될 수 있다. 이 예시적인 구현에서, 가상 네트워크 토폴로지들은 이더넷 스위치들, VLAN들, 및 가상 네트워크 인터페이스들(VNICs)을 사용하여 생성된다. 이더넷 네트워크들은 네트워크 분리를 위해 다수의 VLAN들로 분리될 수 있다. VLAN 내의 노드들은 동일한 VLAN 내의 다른 노드와 자유롭게 통신할 수 있지만, VLAN 외부의 노드들과는 직접 통신할 수 없다. VLAN들은 포트 기반의 VLAN들 또는 프로토콜 기반의 VLAN들로서 구현될 수 있다. 포트 기반의 VLAN들은 단일 스위치 내에서 발생하고 프로토콜 기반의 VLAN들은 다수의 스위치들을 연결(span)할 수 있다. 프로토콜 기반의 VLAN들은 IEEE 802.1Q에 따라 표준화되어 있다. IEEE 802.1Q 표준은 패킷들을 표시하는 방법 및 VLAN들을 지원하는 방법에 대해 설명한다. 이 표준은 태그 헤더로서 802.1Q 패킷 연장(extension)을 설명하는데, 그 이유는 태그 헤더를 프레임에 부가함으로써 각 패킷(프레임)이 802.1Q 정보로 표시(태그 지정)되기 때문이다.
VLAN 내에 2개 이상의 컴퓨터들을 배치하는 것은 이 컴퓨터들을 동일한 물리적 네트워크에 접속시키는 것과 물리적으로 동일하다. 이 속성은 물리적 네트워크의 상부에 임의의 가상 토폴로지들을 생성하도록 연장된다. 예를 들어, 어플리케이션이 서버들 402(1), 402(3), 및 402(5)에서 3개의 웹 서버를 요구하고, 및 서버 402(2)에서 하나의 데이터 베이스를 요구한다고 가정한다. 또한, 어플리케이션 설계자는 보안에 신경을 쓰며, 하나의 분리 영역에는 웹 서버들 402(1), 402(3), 및 402(5)을 배치하고 별도의 분리 영역에는 데이터 베이스 서버 402(2)를 배치하고, 방화벽을 통해 2개의 분리 영역들을 연결하고자 한다.
도 5는 어플리케이션들 설계자의 목표를 달성하기 위해 도 4의 물리적 리소스들(400)로부터 형성될 수 있는 가상 네트워크 토폴로지(500)을 도시한다. 가상 네트워크 토폴로지(500)는 2개의 VLAN들: 웹 VLAN(502) 및 데이터베이스(DB) VLAN(504)를 갖는다. 웹 서버들 402(1), 402(3), 및 402(5)는 웹 VLAN(502) 내에 배치되고 데이터베이스 서버 402(2)는 DB VLAN(504) 내에 배치된다. 방화벽은 서버 402(4)로 배치된 후, 웹 VLAN(502) 및 데이터베이스 VLAN(504) 모두에 접속된다. 이 방화벽 402(4)는 DMZWeb(506) 및 DMZDB(508)에 의해 나타낸 바와 같이, 어플리케이션의 2개의 분리 영역들을 생성한다.
이 예에서, 방화벽 서버 402(4)는 2개의 VLAN들의 멤버이다. 그러나, 서버는 네트워크 스위치(404)의 포트 P4와의 접속을 위한 단지 하나의 물리적 인터페이스를 갖는다. 단일 물리적 안터페이스가 2개의 VLAN을 지원할 수 있기 위해, VLAN 드라이버는 2개의 가상 네트워크 인터페이스들(VNICs)을 생성하도록 서버[402(4)] 상에 설치되기 때문에, 물리적 네트워크 인터페이스(NIC)는 양 VLAN들에 접속되는 것으로 보인다. 서버측에서 보면, 각 가상 네트워크 인터페이스는 그것이 별도의 네트워크에 물리적으로 접속된 것처럼 보인다.
도 6은 방화벽 서버 402(4)를 보다 상세히 도시한다. 방화벽 서버는 네트워크 인터페이스(NIC) 드라이버(604)와 IP 드라이버(606) 사이의 프로토콜 스택 내에 설치되는 VLAN 드라이버(602)를 구현한다. 하나의 구현에서, VLAN 드라이버(604)는 리소스 관리자(212)에 의해 다운로드되고 설치된다. NIC 드라이버(604)는 스위치(404)의 포트 P4와의 물리적 접속을 통해 모든 패킷 트래픽을 처리한다. VLAN 드라이버(602)는 물리적 네트워크 인터페이스와 결합하고 각 물리적 네트워크 인터페이스를 통해 하나 이상의 가상 네트워크 인터페이스들(VNICs)을 생성한다. 각 가상 네트워크 인터페이스는 독특한 VLAN 아이덴티티를 나타낸다. 이 예에서, VLAN 드라이버(602)는 2개의 가상 네트워크 인터페이스들: 웹 VLAN(502)에 대한 VNIC VLANWeb(608) 및 DB VLAN(504)에 대한 VNIC VLANDB(610)를 생성한다.
특정 VLAN에 대해 예정된 인출 패킷들은 관련 VNIC에서 대응하는 VLAN 아이덴티티로 태그 지정된다. 어플리케이션은 특정 VNIC 인터페이스에 직접 결합함으로써 적절한 VLAN을 선택한다. 그 후 패킷들은 물리적 인터페이스를 통해 네트워크 스위치로 보내진다. 스위치는 VLAN 태그를 검사하고, 어떤 VLAN으로 패킷이 결합되는지를 확인할 수 있다. 마찬가지로 인입하는 패킷들은 VLAN 아이덴티티로 태 그 지정되어 있다. 관련 VNIC는 패킷들을 수신하고, 태그를 제거하고, 적절한 어플리케이션에서의 사용을 위해 패킷들을 IP 드라이버로 업스트림한다. 이에 의해 단일 물리적 NIC를 갖는 서버는 여러개의 VLAN들에 참가할 수 있다.
가상 네트워크 토폴로지 발생 서버(210)는 스위치(404)에 결합된 것으로 도시된다. 원격 프로그램 가능성 기술들을 이용하여, 이 서버(210)는 (미리 존재하지 않는 경우) 방화벽 서버에 VLAN 드라이버를 다운로드하고 설치한 후 명령어들을 제공하여 가상 네트워크 토폴로지에 대한 VNIC들을 생성하게 한다. 서버가 단지 하나의 VLAN의 멤버(예를 들면, 웹 서버들 402(1), 402(3), 402(5) 및 데이터베이스 서버 402(2))라면, VLAN 드라이버(602)를 설치하거나 VNIC를 생성할 필요가 없음을 주의해야 한다. 네트워크 인터페이스는 스위치 포트와의 적절한 물리적 접속을 지정할 수 있고, 스위치 포트는 적절한 VLAN 멤버십에 의해 구성될 수 있어 서버에 대한 트래픽 모두를 VLAN을 통해 전송한다. 한편, 서버가 단지 하나의 VLAN에 대해 사용된다면 VLAN 드라이버를 설치하고 단일 VNIC를 생성하는 단점이 없다.
특정 전문화된 장치들에 있어서, 리소스 관리자는 이들 장치에 VNIC를 설치할 수 없을 수 있다. 그러나, 이 장치들은 계속 특정 VLAN에 프로그램될 수 있다. 몇몇 장치들은 다수의 물리적 포트들이 구비된다. 이 물리적 포트들 각각은 이들 장치들이 접속되는 스위치 포트들을 프로그래밍함으로써 상이한 VLAN의 멤버가 될 수 있다. 이외의 전문화된 장치에 있어서, 리소스 관리자는 장치 특정 드라이버로 장치들을 프로그래밍하여 특정 VLAN 상에 적절한 포트를 배치한다. 이것은 스위치 포트를 특정 VLAN의 멤버라고 말하는 것과 유사하다.
가상 네트워트 토폴로지들의 발생 단계
도 7은 분산 어프리케이션을 지원하기 위해 가상 네트워크 토폴로지를 발생하고 어플리케이션에 대해 리소스들을 배치하는 프로세스(700)를 도시한다. 이 프로세스(700)는 일련의 블록들로 도시되며, 이 블록들은 컴퓨팅 시스템(200) 내의 각종 컴퓨터들에 의해 수행되는 동작들을 나타낸다. 동작들은 각종 컴퓨터들에서 실행될 수 있는 소프트웨어로 구현된다. 따라서, 블록들은 관련 동작들을 수행하도록 프로세서들에서 실행될 수 있는 컴퓨터 판독가능한 매체에 저장된 명령어들을 나타낸다.
블록 702에서, 어플리케이션 설계자는 분산 컴퓨팅 시스템(200)에 배치될 분산 어플리케이션의 가상 레이아웃을 설계한다. 가상 레이아웃은 어떤 컴포넌트들이 사용되고 이들 컴포넌트들이 어떻게 내부 접속되는지를 명시한다. 예를 들면, 도 5에 도시된 어플리케이션을 설계하기 위해, 설계자는 웹 서버들, 데이터 베이스 서버, 방화벽, 및 이들 컴포넌트들 사이의 접속들을 명시한다.
블록 704에서, 시스템은 분산 어플리케이션의 각종 컴포넌트들을 인스턴스화(instantiate)하기 위해 할당될 물리적 리소스들을 결정한다. 시스템은 예를 들어 어플리케이션을 지원하기 위해 얼마나 많은 서버들이 배치되어야 하는지를 판정한다. 이 결정은 서비스의 사이즈, 예상되는 사용자수 등과 같은 파라미터들을 나타내는, 설계자로부터 받은 입력에 부분적으로 기초한다.
어플리케이션이 설계되고 컴포넌트들에 대한 인스턴스화들이 결정된 후, 가상 네트워크 토폴로지 발생 서버(210)에서 구현된 리소스 관리자(212)는 가상 LAN 들(VLANs) 및 가상 네트워크 인터페이스들(VNICs)을 사용하여 가상 네트워크 토폴로지로부터 물리적 네트워크로의 맵핑을 실현한다. 블록 706에서, 가상 네트워크 토폴로지 발생 서버(210)는 각 어플리케이션에 대해 적어도 하나의 가상 LAN(VLAN)을 생성한다. 도 5에 도시된 가상 네트워크 토폴로지(500)에 대한 경우에서와 같이, 단일 어플리케이션에 대한 가상 네트워크 토폴로지는 하나 이상의 VLAN을 이용하여 다수의 분리 영역들을 확립할 수 있다. 이 예에서, 가상 네트워크 토폴로지 발생 서버(210)는 2개의 VLAN들: 웹 VLAN(502) 및 DB VLAN(504)를 생성한다. 2개의 VLAN들은 웹 서버들 402(1), 402(3), 및 402(5)와 데이터베이스 서버 402(2)를 분리시킴으로써, 2개의 분리 영역 DMZWeb(506) 및 DMZDB(508)를 생성한다.
블록 708에서, 가상 네트워크 토폴로지 발생 서버(210)에 있는 리소스 관리자(212)는 각 VLAN들에 대해 물리적 컴퓨팅 리소스들을 배치한다. 즉, 리소스 관리자(212)는 물리적 네트워크(400)(도 4)로부터 물리적 리소스들을 할당하여 어플리케이션의 가상 네트워크 토폴로지를 지원한다. 이 배치는 도 7의 블록들 708(1) 및 708(2)로 나타낸 2개의 하위 동작들을 포함한다.
블록 708(1)에서, 리소스 관리자(212)는 네트워크 스위치들(404)의 외부 스위치 포트(예를 들면, 서버에 접속된 포트)를 서버가 속하는 지정된 VLAN에 할당한다. 외부 스위치 포트는 하나 이상의 VLAN 멤버십들로 구성될 수 있다.
블록 708(2)에서, 리소스 관리자(212)는 서버에 가상 네트워크 인터페이스(VNIC)를 생성하여 지정된 VLAN을 통해 통신을 가능하게 함으로써 서버 가 VLAN의 멤버가 될 수 있도록 한다. 이 동작은 서버가 단지 하나의 VLAN의 멤버(예를 들면, 웹 서버들 402(1), 402(3), 402(5), 및 데이터베이스 서버 402(2))인 경우에 선택가능함을 주의해야 한다. 이 경우, VLAN 멤버십으로 스위치 포트를 구성하는 것은 서버가 단지 하나의 VLAN을 통해 통신할 것이기 때문에 적절하다. 스위치는 서버로부터의 모든 트래픽이 하나로 구성된 VLAN으로 예정되었다고 가정한다. 서버가 2개 이상의 VLAN들의 멤버(예를 들면, 방화벽 서버 402(4))이면, VLAN 드라이버는 서버에 설치된다. VLAN 드라이버는 물리적 네트워크 인터페이스에 결합되고 그 위에 2개 이상의 가상 네트워크 인터페이스들(VNICs)을 생성한다. 각각의 가상 네트워크 인터페이스는 독특한 VLAN 아이덴티티를 나타낸다. VNIC에서 송신된 패킷들은 VLAN 아이덴티티로 태그 지정된다. 스위치는 VLAN 태그를 검사하고 어떤 VLAN에 패킷이 결합되어 있는지를 확인할 수 있다.
물리적 컴퓨팅 리소스들은 판정 단계 710으로 나타낸 바와 같이, 어플리케이션이 충분히 설치될 때까지 이 2가지 동작 방식으로 계속 배치된다.
물리적 리소스들의 배치를 설명하기 위해, 리소스 관리자(212)는 도 5의 가상 네트워크 토폴로지(500)용 컴퓨터들을 배치하는 방법을 고려한다. 이 프로세스는 도 5 및 도 6을 참조하여 설명될 것이다. 처음에, 2개의 VLAN들 - 웹 VLAN(502) 및 DB VLAN(504) - 은 동작 706에서 생성된다. 다음, 리소스 관리자(212)는 분리 영역 DMZWeb(506)을 정의하기 위해 방화벽 서버 402(4)를 웹 VLAN(502)에 부가하도록 결정한 것으로 가정한다. 리소스 관리자(212)는 "VLANWeb" 아이덴티티를 포트 4에 추가함으로써 도 6에 도시되어 있는, 웹 VLAN(502)를 참조하기 위해 포트 4를 설정하도록 스위치(404)에게 알린다. 이는 프로세스(700)의 동작 708(1)을 나타낸다. 스위치(404)는 현재 그것이 분리 영역 DMZWeb(506)의 일부라고 이해한다. 그 후 리소스 관리자(212)는 방화벽 서버 402(4)에 있는 VLAN 드라이버(602)에게 지시하여 VNIC VLANWeb(608)로서 도 6에 도시되어 있는 웹 VLAN에 대한 VNIC를 생성한다. 이것은 프로세스(700)의 동작 708(2)을 나타낸다. VNIC VLANWeb(608)를 통과한 패킷들은 VLANWeb 아이덴티티로 태그 지정되고 웹 VLAN(502)을 통해 스위치(404)에 의해 정확하게 라우팅된다.
이제, 리소스 관리자(212)는 동일한 방화벽 서버 402(4)를 DB VLAN(504)에 부가하여 다른 분리 영역 DMZDB(508)을 형성한다고 가정하자. 리소스 관리자(212)는 "VLANDB" 아이덴티티를 포트 4에 추가함으로써 도 6에 도시되어 있는 DB VLAN(504)을 추가로 참조하기 위해 포트 4를 설정하도록 스위치(404)에게 알린다. 이는 다시 한번 프로세스(700)의 동작 708(1)을 나타낸다. 스위치(404)는 이제 다시 분리 영역 DMZDB(508)의 일부이며 VLANDB 아이덴티티를 갖는 패킷들을 수용할 것이다. 그 후 리소스 관리자(212)는 방화벽 서버 402(4)에 있는 VLAN 드라이버(602)에게 지시하여, 이번에는 VNIC VLANDB(610)에 의해 도 6에 도시되어 있는 DB VLAN에 대한 제2 VNIC를 생성한다. 이것은 프로세서(700)의 동작 708(2)의 또 다른 표시이다. VNIC VLANDB(610)을 통과한 패킷들은 VLANDB 아이덴티티로 태 그 지정되어 DB VLAN(504)을 통해 스위치(404)에 의해 정확하게 라우팅된다.
각 웹 서버 402(1), 402(3), 및 402(5)를 웹 VLAN(502)에 접속하고, 데이터 베이스 서버를 DB VLAN(504)에 접속하는 프로세스가 반복된다. 상기한 바와 같이, 이들 서버들의 추가는 적절한 VLAN 멤버십으로 해당 스위치 포트들 P1, P2, P3
, 및 P5를 간단히 구성함으로써 실현될 수 있다. 서버들은 단지 하나의 VLAN에 대한 현재의 부분이기 때문에 가상 네트워크 인터페이스들이 서버들에서 생성될 필요는 없다.
예시적인 리소스 관리자 API들
다음 섹션은 스위치들 및 서버들을 원격으로 구성하기 위해 리소스 관리자(RM)(212)에 의해 제공된 어플리케이션 프로그램 인터페이스들(API들)의 예시적인 세트를 제공한다. API들은 VLAN들을 확립하고 스위치들을 적합한 VLAN들에 접속시키고, 서버들에서 VNIC들을 생성하여 관련 VLAN들을 통해 통신을 용이하게 함으로써, 가상 네트워크 토폴로지들을 물리적 네트워크 리소스들에 맵핑할 수 있다. 이 토폴로지 맵핑은 특별히 지정된 대역외(out-of-band) 네트워크를 사용하기보다는, 현존하는 네트워크를 통해 대역내(in-band) 기술들을 사용하여 실현된다. 이에 따라, 디폴트 접속성(default connectivity)으로부터 시작하여, 필요한 경우에 새로운 VLAN들을 구성하기 위한 기반이 제공된다.
가상 토폴로지들의 구성 및 반환(de-allocation)은 RM에 의해 제공된 이하의 코어 웹 방법들에 의해 용이해진다.
이하에 이들 5개의 웹 방법들의 설명을 포함하는, RM에 의해 제공된 예시적인 인터페이스들을 열거한다.
본 발명에 의하면, 물리적 컴퓨팅 시스템으로부터 임의의 가상 네트워크 토폴로지들을 자동 생성하는 아키텍쳐 및 방법이 설명된다. 상기 아키텍쳐 및 방법에 의하면 컴퓨터들을 물리적으로 접속하지 않고 또한 시스템 내에 배선들을 구성할 필요 없이 다수의 분산 어플리케이션들을 동일한 물리적 컴퓨팅 시스템 상에 자동 및 원격 설치시키는 것이 가능하다.
본 발명은 구조적 특징들 및/또는 방법적 처리들에 대해 특유한 언어로 기술되었지만, 첨부된 청구범위에 정의된 발명은 상술된 특유한 특징들 또는 처리들로 한정될 필요는 없다. 오히려, 특유한 특징들 및 처리들은 청구된 발명을 구현하는 예시적인 형태들로서 개시된다. 또한, 이 청구 범위는 단지 가능한 범위 및 내용의 예시일 뿐이고, 본 명세서에 기재된 특징들의 많은 조합들 및 하위 조합들은 가출원으로부터 완전하게 될 많은 특허 출원들에 걸쳐 청구 범위의 주제가 될 것으로 기대된다.
Claims (26)
- 컴퓨팅 장치에 의해, 분산 어플리케이션에 대한 가상 네트워크 토폴로지를 구축하는 단계 - 상기 구축하는 단계는 운영 체제의 프로그래밍 인터페이스를 이용하여 분산 네트워크를 위한 적어도 하나의 가상 근거리 통신망(VLAN; virtual local area system)을 생성하는 단계를 포함함 -; 및상기 컴퓨팅 장치에 의해, 상기 분산 컴퓨팅 시스템의 물리적 접속들을 재구성하지 않고서 상기 가상 네트워크 토폴로지에 따라 복수의 컴퓨터들 및 네트워크 스위치들로 구성된 분산 컴퓨팅 시스템 상에 상기 분산 어플리케이션을 자동 및 원격으로 배치하는 단계를 포함하고,상기 배치하는 단계는,상기 네트워크 스위치들에 있는 스위치 포트들을 상기 적어도 하나의 VLAN에 할당하는 것을 포함하여, 상기 네트워크 스위치들을 상기 적어도 하나의 VLAN에 할당하는 단계 - 상기 네트워크 스위치들 중 하나에 있는 적어도 하나의 스위치 포트는 2 이상의 VLAN에 할당됨 -;상기 분산 어플리케이션을 호스팅하는 데 이용되는 각각의 컴퓨터에서, 제1 가상 네트워크 인터페이스(VNIC; virtual network interface) 및 제2 VNIC를 원격으로 형성하는 단계 - VLAN 드라이버는 (ⅰ) 상기 VLAN 드라이버가 상기 VLAN과 관련되는 각각의 컴퓨터 상에 설치되고, (ⅱ) 상기 VLAN 드라이버가 물리적 네트워크 인터페이스에 바인딩되고, (ⅲ) 상기 VLAN 드라이버가 각각의 물리적 네트워크 인터페이스를 통해, 상기 제1 VNIC 및 상기 제2 VNIC를 포함하여 복수의 VNIC를 생성하고, (ⅳ) 상기 VLAN 드라이버가 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되는 경우, 상기 물리적 네트워크 인터페이스를 통해 상기 제1 VNIC 및 상기 제2 VNIC를 형성함 -; 및상기 제1 VNIC를 제1 VLAN와 관련시키고 상기 제2 VNIC를 제2 VLAN과 관련시키는 단계를 포함하는 방법.
- 제1항에 있어서,상기 배치하는 단계는, 상기 분산 컴퓨팅 시스템의 물리적 리소스들에게 상기 어플리케이션에 대한 상기 VLAN에 접속하라고 원격으로 명령하는 단계를 포함하는 방법.
- 제1항에 따른 단계들을 실행하는 컴퓨터 실행가능 명령어들을 저장한 하나 이상의 컴퓨터 판독가능 기록 매체.
- 컴퓨팅 장치에 의해, 복수의 컴퓨터로 구성된 공통의 분산 컴퓨팅 시스템 상에서 호스팅되는 관련된 분산 어플리케이션들에 대한 복수의 가상 네트워크 토폴로지를 생성하는 단계;상기 컴퓨팅 장치에 의해, 운영 체제의 프로그래밍 인터페이스를 이용하여 각각의 가상 네트워크 토폴로지에 대한 적어도 하나의 VLAN을 생성하는 단계; 및상기 컴퓨팅 장치에 의해, 상기 분산 어플리케이션들이 서로 고립되어 있는 관련된 VLAN들을 경유하여 통신할 수 있게 하는 방식으로 상기 가상 네트워크 토폴로지에 상기 분산 컴퓨팅 시스템의 물리적 자원들을 자동으로 배치하는 단계를 포함하고,상기 배치하는 단계는,상기 네트워크 스위치들에 있는 스위치 포트들을 상기 VLAN에 할당하는 것을 포함하여, 상기 분산 컴퓨팅 시스템의 네트워크 스위치들을 상기 VLAN에 원격으로 할당하는 단계 - 상기 네트워크 스위치들 중 하나에 있는 적어도 하나의 스위치 포트는 2 이상의 VLAN에 할당됨 -; 및복수의 VNIC 중에 물리적 네트워크 인터페이스에 링크되는 VNIC를 생성하고 상기 VNIC를 상기 특정 분산 어플리케이션과 관련된 VLAN과 관련시키도록, 특정 분산 어플리케이션을 호스팅하는 데 이용되는 각각의 컴퓨터에 원격으로 다이렉팅(directing)하는 단계를 포함하고,VLAN 드라이버는 (ⅰ) 상기 VLAN 드라이버가 설치되고, (ⅱ) 상기 VLAN 드라이버가 물리적 네트워크 인터페이스에 바인딩되고, (ⅲ) 상기 VLAN 드라이버가 각각의 물리적 네트워크 인터페이스를 통해 복수의 VNIC를 생성하고, (ⅳ) 상기 VLAN 드라이버가 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되는 경우, 상기 물리적 네트워크 인터페이스를 통해 상기 VNIC를 생성하는 방법.
- 제4항에 따른 단계들을 실행하는 컴퓨터 실행가능 명령어들을 저장한 하나 이상의 컴퓨터 판독가능 기록 매체.
- 스위치들의 네트워크를 경유하여 상호접속된 복수의 컴퓨터를 갖는 분산 컴퓨팅 시스템에서,컴퓨팅 장치에 의해, 운영 체제의 프로그래밍 인터페이스를 이용하여 VLAN 아이덴티티를 갖는 VLAN을 생성하는 단계; 및상기 VLAN과 관련되는 각각의 컴퓨터에 대하여,상기 컴퓨팅 장치에 의해, 상기 컴퓨터가 접속되는 상기 스위치들의 네트워크의 스위치 포트에 상기 VLAN 아이덴티티를 할당하는 단계, 및상기 컴퓨팅 장치에 의해, 상기 컴퓨터에서 복수의 VNIC 중에 VNIC를 생성하고 상기 VNIC를 상기 VLAN과 관련시키는 단계 - 상기 VNIC는 물리적 네트워크 인터페이스에 링크됨 -를 포함하고,VLAN 드라이버는 (ⅰ) 상기 VLAN 드라이버가 상기 VLAN과 관련되는 각각의 컴퓨터 상에 설치되고, (ⅱ) 상기 VLAN 드라이버가 물리적 네트워크 인터페이스에 바인딩되고, (ⅲ) 상기 VLAN 드라이버가 각각의 물리적 네트워크 인터페이스를 통해 복수의 VNIC를 생성하고, (ⅳ) 상기 VLAN 드라이버가 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되는 경우, 상기 물리적 네트워크 인터페이스를 통해 상기 VNIC를 생성하고,상기 VLAN을 포함하여 복수의 VLAN의 복수의 VLAN 아이덴티티가 상기 스위치 포트에 할당되는 방법.
- 제6항에 있어서,상기 VLAN은 제1 VLAN 아이덴티티를 갖는 제1 VLAN을 포함하고,제2 VLAN 아이덴티티를 갖는 제2 VLAN을 생성하는 단계; 및상기 제2 VLAN과 관련되는 각각의 컴퓨터에 대해,상기 컴퓨터가 접속되는 스위치 포트에 상기 제2 VLAN 아이덴티티를 할당하는 단계, 및상기 컴퓨터에서 상기 복수의 VNIC 중에 제2 VNIC를 생성하고 상기 제2 VNIC를 상기 제2 VLAN와 관련시키는 단계를 더 포함하는 방법.
- 제6항에 따른 단계들을 실행하는 컴퓨터 실행가능 명령어들을 저장한 하나 이상의 컴퓨터 판독가능 기록 매체.
- 스위치들의 네트워크를 경유하여 상호접속된 복수의 컴퓨터들을 갖는 분산 컴퓨팅 시스템에서, 상기 분산 컴퓨팅 시스템 상에 제1 VLAN 및 제2 VLAN을 배치하기 위한 방법으로서,상기 분산 컴퓨팅 시스템에 복수의 분산 어플리케이션을 배치하기 위해 상기 제1 VLAN 및 상기 제2 VLAN 둘 다에 접속되는 컴퓨터에 대하여,운영 체제의 프로그래밍 인터페이스를 이용하여 상기 컴퓨터가 접속되어 있는 상기 스위치들의 네트워크의 스위치 포트에 상기 제1 VLAN과 관련된 제1 VLAN 아이덴티티를 할당하는 단계;상기 운영 체제의 상기 프로그래밍 인터페이스를 이용하여 상기 컴퓨터에서 제1 VNIC를 원격으로 생성하고 상기 제1 VNIC를 상기 제1 VLAN과 관련시키는 단계 - 상기 제1 VNIC는 물리적 네트워크 인터페이스에 링크됨 -;상기 운영 체제의 상기 프로그래밍 인터페이스를 이용하여 상기 스위치 포트에 상기 제2 VLAN과 관련된 제2 VLAN 아이덴티티를 할당하는 단계; 및상기 운영 체제의 상기 프로그래밍 인터페이스를 이용하여 상기 컴퓨터에서 제2 VNIC를 원격으로 생성하고 상기 제2 VNIC를 상기 제2 VLAN와 관련시키는 단계 - 상기 제2 VNIC는 상기 물리적 네트워크 인터페이스에 링크됨 -;를 포함하고,VLAN 드라이버는 (ⅰ) 상기 VLAN 드라이버가 설치되고, (ⅱ) 상기 VLAN 드라이버가 물리적 네트워크 인터페이스에 바인딩되고, (ⅲ) 상기 VLAN 드라이버가 각각의 물리적 네트워크 인터페이스를 통해, 상기 제1 VNIC 및 상기 제2 VNIC를 포함하여 복수의 VNIC를 생성하고, (ⅳ) 상기 VLAN 드라이버가 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되는 경우, 상기 물리적 네트워크 인터페이스를 통해 상기 제1 가상 인터페이스 및 상기 제2 가상 인터페이스를 생성하는 방법.
- 제9항에 있어서,상기 제1 VLAN에 대한 데이터 패킷은 상기 스위치 포트를 통해 전달되고 상기 컴퓨터에서 상기 제1 VNIC에 의해 핸들링되며, 상기 제2 VLAN에 대한 데이터 패킷은 상기 스위치 포트를 통해 전달되고 상기 컴퓨터에서 상기 제2 VNIC에 의해 핸들링되는 방법.
- 제9항에 따른 단계들을 실행하는 컴퓨터 실행가능 명령어들을 저장한 하나 이상의 컴퓨터 판독가능 기록 매체.
- 분산 컴퓨팅 시스템 내의 컴퓨터로서,네트워크에의 물리적 접속을 용이하게 하는 네트워크 인터페이스; 및상기 네트워크 인터페이스에 바인딩하는 VLAN 드라이버를 포함하고,상기 VLAN 드라이버는 운영 체제의 프로그래밍 인터페이스를 이용하여 상기 컴퓨터에 제공되는, 상기 네트워크 인터페이스를 통해 복수의 VNIC를 생성하라는 원격 명령들에 응답적이며, 각각의 VNIC는 복수의 분산 어플리케이션이 상기 분산 컴퓨팅 시스템에 배치되는 것을 허용하는 고유의 VLAN과 관련되고, 각각의 가상 네트워크는 물리적 네트워크 인터페이스에 링크되고,상기 VLAN 드라이버는 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되고,상기 컴퓨터는 상기 네트워크를 통해 네트워크 스위치에 있는 스위치 포트에 접속되고, 상기 스위치 포트는 2 이상의 VLAN에 할당되는 컴퓨터.
- 제12항에 있어서,상기 VLAN 드라이버는 관련된 제1 VLAN 및 제2 VLAN에 대한 제1 VNIC 및 제2 VNIC를 생성하고, 상기 제1 VLAN과 관련된 데이터 패킷은 상기 네트워크 인터페이스에서 수신되고 상기 제1 VNIC에 의해 핸들링되며, 상기 제2 VLAN과 관련된 데이터 패킷은 상기 네트워크 인터페이스에서 수신되고 상기 제2 VNIC에 의해 핸들링되는 컴퓨터.
- LAN에 접속된 컴퓨터 상에 설치하기 위해, 상기 컴퓨터에 의해 실행가능한 소프트웨어 드라이버를 기록한 하나 이상의 컴퓨터 판독가능 저장 매체로서,상기 실행가능한 소프트웨어 드라이버는상기 LAN에 의해 지원되는 적어도 하나의 VLAN과 연관되는 복수의 VNIC를 원격으로 생성하기 위한 수단; 및상기 컴퓨터가 물리적 네트워크 인터페이스를 통해 복수의 VLAN에 참가할 수 있도록, VNIC를 통해 상기 물리적 네트워크 인터페이스를 경유하여 상기 LAN으로 가는 데이터 패킷 및 상기 LAN으로부터 수신된 데이터 패킷에 다이렉팅하기 위한 수단을 포함하고,상기 실행가능한 소프트웨어 드라이버는 네트워크 인터페이스 드라이버와 프로토콜 드라이버 사이에 설치되어, 상기 물리적 네트워크 인터페이스와 상기 프로토콜 드라이버 간의 상기 데이터 패킷의 흐름을 용이하게 하고,상기 VNIC를 원격으로 생성하기 위한 수단은, 운영 체제의 프로그래밍 인터페이스를 이용하여 상기 컴퓨터에 제공된 명령들을 수신하는 것에 응답하여 상기 생성하는 것을 수행하고,상기 컴퓨터는 상기 LAN을 경유하여 네트워크 스위치에 있는 스위치 포트에 접속되고, 상기 스위치 포트는 2 이상의 VLAN에 할당되는 하나 이상의 컴퓨터 판독가능 저장 매체.
- 컴퓨터들 및 네트워크 스위치들로 구성된 분산 컴퓨팅 시스템 상에 호스팅되는 분산 어플리케이션들에 대한 가상 네트워크 토폴로지들의 설계를 용이하게 하는 명령;운영 체제의 프로그래밍 인터페이스를 이용하여 상기 분산 어플리케이션들 각각에 대한 적어도 하나의 VLAN을 생성하는 명령;특정 VLAN과 관련되는 각각의 컴퓨터에 대해, 상기 컴퓨터가 접속되는 네트워크 스위치들 중 하나의 네트워크 스위치의 스위치 포트에 상기 특정 VLAN과 관련된 VLAN 아이덴티티를 할당하는 명령; 및복수의 VLAN과 관련되는 각각의 컴퓨터에 대해, 상기 컴퓨터가 상기 분산 어플리케이션들을 호스팅하는 데 이용될 수 있도록, 상기 컴퓨터에서 복수의 VNIC를 원격으로 생성하고 상기 VNIC를 상기 복수의 VLAN 중의 각각의 VLAN과 관련시키는 명령 - 상기 복수의 VNIC 각각은 물리적 네트워크 인터페이스에 링크되고, VLAN 드라이버는 (ⅰ) 상기 VLAN 드라이버가 설치되고, (ⅱ) 상기 VLAN 드라이버가 상기 물리적 네트워크 인터페이스에 바인딩되고, (ⅲ) 상기 VLAN 드라이버가 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되는 경우, 상기 물리적 네트워크 인터페이스를 통해 상기 복수의 VNIC를 생성하고, 복수의 VLAN의 복수의 VLAN 아이덴티티가 상기 스위치 포트에 할당됨 -을 포함하는 명령들을 실행하는 컴퓨터 실행가능 명령어들을 갖는 컴퓨터 판독가능 기록 매체.
- 분산 컴퓨팅 시스템의 일부분인 컴퓨터에 상주하는 드라이버 - 상기 컴퓨터는 네트워크 스위치를 경유하여 상기 분산 컴퓨팅 시스템에 접속됨 -; 및상기 컴퓨터로부터 원격에 위치하여, 상기 네트워크 스위치에 적어도 하나의 VLAN을 할당하고 물리적 네트워크 인터페이스 맨 위에서 복수의 VNIC를 생성하도록 상기 드라이버를 원격으로 다이렉팅하는 리소스 관리자 - 상기 복수의 VNIC는 상기 적어도 하나의 VLAN과 관련되고, 각각의 VNIC는 고유의 VLAN 아이덴티티를 나타냄 -를 포함하고,상기 리소스 관리자는 운영 체제의 어플리케이션 프로그래밍 인터페이스를 이용하여 상기 컴퓨터에 상기 드라이버를 다운로드하여 설치하도록 구성되고, 상기 어플리케이션 프로그래밍 인터페이스는 또한, 상기 적어도 하나의 VLAN 및 상기 복수의 VNIC를 확립하는 데 사용되고,상기 드라이버는 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되고,상기 네트워크 스위치에 있는 적어도 하나의 스위치 포트는 2 이상의 VLAN에 할당되는 시스템.
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
- 삭제
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/382,942 | 2003-03-06 | ||
US10/382,942 US20040210623A1 (en) | 2003-03-06 | 2003-03-06 | Virtual network topology generation |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20040079318A KR20040079318A (ko) | 2004-09-14 |
KR101143648B1 true KR101143648B1 (ko) | 2012-05-09 |
Family
ID=32824791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040015027A KR101143648B1 (ko) | 2003-03-06 | 2004-03-05 | 가상 네트워크 토폴로지 발생을 위한 방법, 컴퓨터, 및 컴퓨터 판독가능 기록매체 |
Country Status (14)
Country | Link |
---|---|
US (1) | US20040210623A1 (ko) |
EP (1) | EP1455483A3 (ko) |
JP (5) | JP4444695B2 (ko) |
KR (1) | KR101143648B1 (ko) |
CN (1) | CN1703016A (ko) |
AU (1) | AU2004200484B2 (ko) |
BR (1) | BRPI0400549A (ko) |
CA (1) | CA2456952A1 (ko) |
MX (1) | MXPA04001431A (ko) |
MY (1) | MY149582A (ko) |
PL (1) | PL365512A1 (ko) |
RU (1) | RU2382398C2 (ko) |
TW (1) | TW200420036A (ko) |
ZA (1) | ZA200400836B (ko) |
Families Citing this family (178)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7693976B2 (en) * | 2000-07-11 | 2010-04-06 | Ciena Corporation | Granular management of network resources |
EP1418501A1 (fr) * | 2002-11-08 | 2004-05-12 | Dunes Technologies S.A. | Méthode d'administration d'applications sur des machines virtuelles |
US7703018B2 (en) * | 2003-05-22 | 2010-04-20 | International Business Machines Corporation | Apparatus and method for automating the diagramming of virtual local area networks |
US20050066036A1 (en) * | 2003-09-19 | 2005-03-24 | Neil Gilmartin | Methods, systems and computer program products for facilitating the design and analysis of virtual networks based on total hub value |
US7640359B1 (en) * | 2003-09-19 | 2009-12-29 | At&T Intellectual Property, I, L.P. | Method, system and computer program product for facilitating the design and assignment of ethernet VLANs |
US7624187B1 (en) * | 2003-09-19 | 2009-11-24 | At&T Intellectual Property, I, L.P. | Method, system and computer program product for providing Ethernet VLAN capacity requirement estimation |
US20050080909A1 (en) * | 2003-10-10 | 2005-04-14 | Anatoliy Panasyuk | Methods and apparatus for scalable secure remote desktop access |
US20060031444A1 (en) * | 2004-05-28 | 2006-02-09 | Drew Julie W | Method for assigning network resources to applications for optimizing performance goals |
US20060013231A1 (en) * | 2004-06-22 | 2006-01-19 | Sbc Knowledge Ventures, Lp | Consolidated ethernet optical network and apparatus |
US9264384B1 (en) | 2004-07-22 | 2016-02-16 | Oracle International Corporation | Resource virtualization mechanism including virtual host bus adapters |
GB2418110B (en) * | 2004-09-14 | 2006-09-06 | 3Com Corp | Method and apparatus for controlling traffic between different entities on a network |
US7958208B2 (en) * | 2004-09-22 | 2011-06-07 | At&T Intellectual Property I, L.P. | System and method for designing a customized switched metro Ethernet data network |
US20060168230A1 (en) * | 2005-01-27 | 2006-07-27 | Caccavale Frank S | Estimating a required number of servers from user classifications |
US7627123B2 (en) | 2005-02-07 | 2009-12-01 | Juniper Networks, Inc. | Wireless network having multiple security interfaces |
US8259593B2 (en) * | 2005-06-29 | 2012-09-04 | Honeywell International Inc. | Apparatus and method for segmenting a communication network |
US9813283B2 (en) | 2005-08-09 | 2017-11-07 | Oracle International Corporation | Efficient data transfer between servers and remote peripherals |
US7733802B2 (en) * | 2005-09-15 | 2010-06-08 | Tp Lab, Inc. | Method to dynamically create a virtual network |
US7584276B2 (en) * | 2005-09-27 | 2009-09-01 | International Business Machines Corporation | Adaptive orchestration of composite services |
US7688818B2 (en) * | 2005-12-20 | 2010-03-30 | Honeywell International Inc. | Apparatus and method for traffic filtering in a communication system |
US8145737B2 (en) * | 2005-12-30 | 2012-03-27 | Microsoft Corporation | Implementing computer application topologies on virtual machines |
US7774446B2 (en) * | 2005-12-30 | 2010-08-10 | Microsoft Corporation | Discovering, defining, and implementing computer application topologies |
US20070174036A1 (en) * | 2006-01-26 | 2007-07-26 | International Business Machines Corporation | Computer-implemented method, system and program product for emulating a topology of web services |
US7675854B2 (en) | 2006-02-21 | 2010-03-09 | A10 Networks, Inc. | System and method for an adaptive TCP SYN cookie with time validation |
JP4715920B2 (ja) * | 2006-03-29 | 2011-07-06 | 富士通株式会社 | 設定方法および管理装置 |
US7512139B2 (en) * | 2006-05-16 | 2009-03-31 | Oracle International Corporation | Methods and systems for enabling remote booting of remote boot clients in a switched network defining a plurality of virtual local area networks (VLANS) |
US7742474B2 (en) * | 2006-06-30 | 2010-06-22 | Oracle America, Inc. | Virtual network interface cards with VLAN functionality |
US7822594B2 (en) * | 2006-08-07 | 2010-10-26 | Voltaire Ltd. | Service-oriented infrastructure management |
US8312507B2 (en) | 2006-10-17 | 2012-11-13 | A10 Networks, Inc. | System and method to apply network traffic policy to an application session |
US8584199B1 (en) | 2006-10-17 | 2013-11-12 | A10 Networks, Inc. | System and method to apply a packet routing policy to an application session |
GB0623101D0 (en) | 2006-11-20 | 2006-12-27 | British Telecomm | Secure network architecture |
US7948874B2 (en) * | 2007-05-24 | 2011-05-24 | World Wide Packets, Inc. | Transitioning a virtual interface from one tunnel to another tunnel |
US7860116B2 (en) * | 2007-05-24 | 2010-12-28 | Worldwide Packets, Inc. | Processing packets of a virtual interface associated with tunnels |
US8060891B2 (en) * | 2007-06-29 | 2011-11-15 | Microsoft Corporation | Management of external hardware appliances in a distributed operating system |
US8898620B2 (en) * | 2007-07-09 | 2014-11-25 | Nolio Ltd. | System and method for application process automation over a computer network |
US10313191B2 (en) * | 2007-08-31 | 2019-06-04 | Level 3 Communications, Llc | System and method for managing virtual local area networks |
US7962587B2 (en) * | 2007-12-10 | 2011-06-14 | Oracle America, Inc. | Method and system for enforcing resource constraints for virtual machines across migration |
US8370530B2 (en) * | 2007-12-10 | 2013-02-05 | Oracle America, Inc. | Method and system for controlling network traffic in a blade chassis |
US7984123B2 (en) * | 2007-12-10 | 2011-07-19 | Oracle America, Inc. | Method and system for reconfiguring a virtual network path |
US7945647B2 (en) * | 2007-12-10 | 2011-05-17 | Oracle America, Inc. | Method and system for creating a virtual network path |
US8095661B2 (en) * | 2007-12-10 | 2012-01-10 | Oracle America, Inc. | Method and system for scaling applications on a blade chassis |
US8086739B2 (en) * | 2007-12-10 | 2011-12-27 | Oracle America, Inc. | Method and system for monitoring virtual wires |
US7929565B2 (en) * | 2007-12-12 | 2011-04-19 | Dell Products L.P. | Ethernet switching of PCI express packets |
US8862706B2 (en) | 2007-12-14 | 2014-10-14 | Nant Holdings Ip, Llc | Hybrid transport—application network fabric apparatus |
US7965714B2 (en) * | 2008-02-29 | 2011-06-21 | Oracle America, Inc. | Method and system for offloading network processing |
US7970951B2 (en) * | 2008-02-29 | 2011-06-28 | Oracle America, Inc. | Method and system for media-based data transfer |
US7958184B2 (en) * | 2008-03-04 | 2011-06-07 | International Business Machines Corporation | Network virtualization in a multi-node system with multiple networks |
US8347307B2 (en) * | 2008-03-12 | 2013-01-01 | International Business Machines Corporation | Method and system for cost avoidance in virtualized computing environments |
US7826359B2 (en) * | 2008-03-24 | 2010-11-02 | Oracle America, Inc. | Method and system for load balancing using queued packet information |
US7944923B2 (en) * | 2008-03-24 | 2011-05-17 | Oracle America, Inc. | Method and system for classifying network traffic |
JP5102689B2 (ja) * | 2008-04-23 | 2012-12-19 | 株式会社エヌ・ティ・ティ・ドコモ | 仮想ネットワークシステム、仮想ネットワーク構築方法 |
US8195774B2 (en) | 2008-05-23 | 2012-06-05 | Vmware, Inc. | Distributed virtual switch for virtualized computer systems |
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 |
US8739179B2 (en) * | 2008-06-30 | 2014-05-27 | Oracle America Inc. | Method and system for low-overhead data transfer |
US7941539B2 (en) * | 2008-06-30 | 2011-05-10 | Oracle America, Inc. | Method and system for creating a virtual router in a blade chassis to maintain connectivity |
JP5364161B2 (ja) * | 2008-07-15 | 2013-12-11 | エルエスアイ コーポレーション | 記憶域ネットワークにおけるコンポーネントの認証中にプロトコル固有のエラーを挿入するためのシステム |
US8868675B2 (en) * | 2008-12-04 | 2014-10-21 | Cisco Technology, Inc. | Network optimization using distributed virtual resources |
US8055770B2 (en) * | 2008-12-15 | 2011-11-08 | At&T Intellectual Property I, L.P. | Method and apparatus for providing network virtualization |
US8201168B2 (en) * | 2008-12-25 | 2012-06-12 | Voltaire Ltd. | Virtual input-output connections for machine virtualization |
FR2948248B1 (fr) * | 2009-07-16 | 2011-08-19 | Univ Paris Curie | Procede et systeme pour deployer a la volee et sur demande au moins un reseau virtuel. |
US9973446B2 (en) | 2009-08-20 | 2018-05-15 | Oracle International Corporation | Remote shared server peripherals over an Ethernet network for resource virtualization |
US8650559B2 (en) * | 2009-08-27 | 2014-02-11 | Red Hat Israel, Ltd. | Automatic remote installation of a virtualization host |
WO2011043416A1 (ja) | 2009-10-07 | 2011-04-14 | 日本電気株式会社 | 情報システム、制御サーバ、仮想ネットワーク管理方法およびプログラム |
US9960967B2 (en) | 2009-10-21 | 2018-05-01 | A10 Networks, Inc. | Determining an application delivery server based on geo-location information |
CN101699403B (zh) * | 2009-10-27 | 2012-07-04 | 北京锐安科技有限公司 | 一种图形化安装分布式系统的方法 |
US8700752B2 (en) * | 2009-11-03 | 2014-04-15 | International Business Machines Corporation | Optimized efficient LPAR capacity consolidation |
KR20110116857A (ko) * | 2010-04-20 | 2011-10-26 | 한국전자통신연구원 | 네트워크를 통하여 가상랜을 제어하기 위한 시스템 |
US9495119B1 (en) | 2010-07-08 | 2016-11-15 | EMC IP Holding Company LLC | Static load balancing for file systems in a multipath I/O environment |
CN103081415B (zh) * | 2010-09-03 | 2016-11-02 | 日本电气株式会社 | 控制装置、通信系统、通信方法和其上记录有通信程序的记录介质 |
US9331963B2 (en) | 2010-09-24 | 2016-05-03 | Oracle International Corporation | Wireless host I/O using virtualized I/O controllers |
US9215275B2 (en) | 2010-09-30 | 2015-12-15 | A10 Networks, Inc. | System and method to balance servers based on server load status |
JP5710928B2 (ja) * | 2010-10-07 | 2015-04-30 | 株式会社日立製作所 | ネットワークシステム、仮想ネットワーク管理方法及びルータ |
US8296267B2 (en) | 2010-10-20 | 2012-10-23 | Microsoft Corporation | Upgrade of highly available farm server groups |
US8386501B2 (en) | 2010-10-20 | 2013-02-26 | Microsoft Corporation | Dynamically splitting multi-tenant databases |
US8417737B2 (en) | 2010-10-20 | 2013-04-09 | Microsoft Corporation | Online database availability during upgrade |
US8799453B2 (en) | 2010-10-20 | 2014-08-05 | Microsoft Corporation | Managing networks and machines for an online service |
US8751656B2 (en) | 2010-10-20 | 2014-06-10 | Microsoft Corporation | Machine manager for deploying and managing machines |
US9075661B2 (en) | 2010-10-20 | 2015-07-07 | Microsoft Technology Licensing, Llc | Placing objects on hosts using hard and soft constraints |
US8966020B2 (en) | 2010-11-02 | 2015-02-24 | International Business Machines Corporation | Integration of heterogeneous computing systems into a hybrid computing system |
US9081613B2 (en) | 2010-11-02 | 2015-07-14 | International Business Machines Corporation | Unified resource manager providing a single point of control |
US8959220B2 (en) | 2010-11-02 | 2015-02-17 | International Business Machines Corporation | Managing a workload of a plurality of virtual servers of a computing environment |
US8984109B2 (en) | 2010-11-02 | 2015-03-17 | International Business Machines Corporation | Ensemble having one or more computing systems and a controller thereof |
US9253016B2 (en) * | 2010-11-02 | 2016-02-02 | International Business Machines Corporation | Management of a data network of a computing environment |
US8850550B2 (en) | 2010-11-23 | 2014-09-30 | Microsoft Corporation | Using cached security tokens in an online service |
CN102006193B (zh) * | 2010-11-29 | 2012-07-04 | 深圳市新格林耐特通信技术有限公司 | 一种snmp网管系统对网络拓扑结构自动布局的方法 |
US9609052B2 (en) | 2010-12-02 | 2017-03-28 | A10 Networks, Inc. | Distributing application traffic to servers based on dynamic service response time |
US20120144364A1 (en) * | 2010-12-03 | 2012-06-07 | Intuit Inc. | Application user interface for networked-computing environments |
US9721030B2 (en) | 2010-12-09 | 2017-08-01 | Microsoft Technology Licensing, Llc | Codeless sharing of spreadsheet objects |
US8634415B2 (en) | 2011-02-16 | 2014-01-21 | Oracle International Corporation | Method and system for routing network traffic for a blade server |
US9858241B2 (en) | 2013-11-05 | 2018-01-02 | Oracle International Corporation | System and method for supporting optimized buffer utilization for packet processing in a networking device |
CN102647288B (zh) * | 2011-02-16 | 2018-02-13 | 中兴通讯股份有限公司 | 一种vm数据访问保护方法及系统 |
US8566847B2 (en) * | 2011-03-11 | 2013-10-22 | Cisco Technology, Inc. | Out-of-band host management via a management controller |
JP2012208896A (ja) * | 2011-03-30 | 2012-10-25 | Nec Corp | ディスクアレイ装置、接続経路制御方法、及び接続経路制御プログラム |
US8788873B2 (en) * | 2011-04-14 | 2014-07-22 | Cisco Technology, Inc. | Server input/output failover device serving highly available virtual devices |
US8990824B2 (en) | 2011-04-28 | 2015-03-24 | Dell Products L.P. | System and method for automated virtual network configuration |
US9246994B2 (en) * | 2011-06-23 | 2016-01-26 | Telefonaktiebolaget L M Ericsson (Publ) | Method and system for distributing a network application among a plurality of network sites on a shared network |
RU2486562C2 (ru) * | 2011-08-26 | 2013-06-27 | Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации (Минпромторг РФ) | Способ построения автоматизированной системы, реализующей принципы виртуализации рабочих мест и изоморфного масштабирования |
RU2486578C2 (ru) * | 2011-09-16 | 2013-06-27 | Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации (Минпромторг России) | Способ построения системы сообщений многоуровневой несимметричной транспортной системы |
RU2486584C2 (ru) * | 2011-09-16 | 2013-06-27 | Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации (Минпромторг РФ) | Способ построения иерархической системы сетевого взаимодействия виртуальных рабочих мест |
CN102377669B (zh) * | 2011-10-18 | 2014-12-10 | 华为技术有限公司 | 发送报文的方法及交换机 |
US8897154B2 (en) | 2011-10-24 | 2014-11-25 | A10 Networks, Inc. | Combining stateless and stateful server load balancing |
WO2013077860A1 (en) * | 2011-11-22 | 2013-05-30 | Intel Corporation | Network device selection |
CN102420762B (zh) * | 2011-12-05 | 2015-04-22 | 北京星网锐捷网络技术有限公司 | 报文转发方法、系统、网络设备和防火墙线卡 |
US9094364B2 (en) | 2011-12-23 | 2015-07-28 | A10 Networks, Inc. | Methods to manage services over a service gateway |
US10044582B2 (en) | 2012-01-28 | 2018-08-07 | A10 Networks, Inc. | Generating secure name records |
US9118618B2 (en) | 2012-03-29 | 2015-08-25 | A10 Networks, Inc. | Hardware-based packet editor |
WO2013183664A1 (ja) | 2012-06-06 | 2013-12-12 | 日本電気株式会社 | スイッチ装置、vlan設定管理方法及びプログラム |
CN102752203A (zh) * | 2012-06-30 | 2012-10-24 | 深圳市同洲电子股份有限公司 | 一种创建多个虚拟网络接口的方法和网络设备 |
US8782221B2 (en) | 2012-07-05 | 2014-07-15 | A10 Networks, Inc. | Method to allocate buffer for TCP proxy session based on dynamic network conditions |
US9612877B1 (en) * | 2012-07-12 | 2017-04-04 | Cisco Technology, Inc. | High performance computing in a virtualized environment |
US9843484B2 (en) | 2012-09-25 | 2017-12-12 | A10 Networks, Inc. | Graceful scaling in software driven networks |
US10021174B2 (en) | 2012-09-25 | 2018-07-10 | A10 Networks, Inc. | Distributing service sessions |
US10002141B2 (en) | 2012-09-25 | 2018-06-19 | A10 Networks, Inc. | Distributed database in software driven networks |
US9705800B2 (en) | 2012-09-25 | 2017-07-11 | A10 Networks, Inc. | Load distribution in data networks |
US9692824B1 (en) * | 2012-09-27 | 2017-06-27 | EMC IP Holding Company LLC | Methods and apparatus for providing isolation zones in a cloud computing environment |
EP2713556A1 (en) * | 2012-09-28 | 2014-04-02 | NTT DoCoMo, Inc. | Mapping a network topology request to a physical network |
US9083550B2 (en) * | 2012-10-29 | 2015-07-14 | Oracle International Corporation | Network virtualization over infiniband |
US9338225B2 (en) * | 2012-12-06 | 2016-05-10 | A10 Networks, Inc. | Forwarding policies on a virtual service network |
US9531846B2 (en) | 2013-01-23 | 2016-12-27 | A10 Networks, Inc. | Reducing buffer usage for TCP proxy session based on delayed acknowledgement |
US9900252B2 (en) | 2013-03-08 | 2018-02-20 | A10 Networks, Inc. | Application delivery controller and global server load balancer |
US9992107B2 (en) | 2013-03-15 | 2018-06-05 | A10 Networks, Inc. | Processing data packets using a policy based network path |
US10027761B2 (en) | 2013-05-03 | 2018-07-17 | A10 Networks, Inc. | Facilitating a secure 3 party network session by a network device |
US10038693B2 (en) | 2013-05-03 | 2018-07-31 | A10 Networks, Inc. | Facilitating secure network traffic by an application delivery controller |
CN104243196B (zh) * | 2013-06-21 | 2019-03-12 | 中兴通讯股份有限公司 | 一种sdn架构下的虚拟网络映射保护方法及系统 |
RU2547627C2 (ru) * | 2013-06-24 | 2015-04-10 | Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) | Способ структурно-функционального синтеза защищенной иерархической сети связи |
US9749148B2 (en) * | 2013-07-31 | 2017-08-29 | Citrix Systems, Inc. | Systems and methods for load balancing non-IP devices |
CN105637807B (zh) * | 2013-10-18 | 2019-06-21 | 华为技术有限公司 | 转发报文的方法、控制器、转发设备和网络系统 |
CN104601346B (zh) * | 2013-10-30 | 2018-09-11 | 联想企业解决方案(新加坡)私人有限公司 | 管理交换机的网络连接的方法和装置 |
US9489327B2 (en) | 2013-11-05 | 2016-11-08 | Oracle International Corporation | System and method for supporting an efficient packet processing model in a network environment |
US10230770B2 (en) | 2013-12-02 | 2019-03-12 | A10 Networks, Inc. | Network proxy layer for policy-based application proxies |
CN103795800A (zh) * | 2014-02-12 | 2014-05-14 | 浪潮集团有限公司 | 一种基于web的远程交换机管理方法 |
US20150244583A1 (en) * | 2014-02-27 | 2015-08-27 | Futurewei Technologies, Inc. | System and Method for Creating Service Chains and Virtual Networks in the Cloud |
CN105359096B (zh) * | 2014-02-28 | 2019-06-28 | 华为技术有限公司 | 用于网络到云的自动虚拟化的设备和方法 |
US9634900B2 (en) * | 2014-02-28 | 2017-04-25 | Futurewei Technologies, Inc. | Declarative approach to virtual network creation and operation |
US9942152B2 (en) | 2014-03-25 | 2018-04-10 | A10 Networks, Inc. | Forwarding data packets using a service-based forwarding policy |
US9942162B2 (en) | 2014-03-31 | 2018-04-10 | A10 Networks, Inc. | Active application response delay time |
US9906422B2 (en) | 2014-05-16 | 2018-02-27 | A10 Networks, Inc. | Distributed system to determine a server's health |
US9992229B2 (en) | 2014-06-03 | 2018-06-05 | A10 Networks, Inc. | Programming a data network device using user defined scripts with licenses |
US10129122B2 (en) | 2014-06-03 | 2018-11-13 | A10 Networks, Inc. | User defined objects for network devices |
US9986061B2 (en) | 2014-06-03 | 2018-05-29 | A10 Networks, Inc. | Programming a data network device using user defined scripts |
US9450916B2 (en) | 2014-08-22 | 2016-09-20 | Honeywell International Inc. | Hardware assist for redundant ethernet network |
US9979602B1 (en) | 2014-08-25 | 2018-05-22 | Cisco Technology, Inc. | Network function virtualization infrastructure pod in a network environment |
US10268467B2 (en) | 2014-11-11 | 2019-04-23 | A10 Networks, Inc. | Policy-driven management of application traffic for providing services to cloud-based applications |
CN104407913B (zh) * | 2014-11-12 | 2017-09-22 | 国云科技股份有限公司 | 一种单网卡虚拟机实现双线接入的方法 |
WO2016127482A1 (zh) | 2015-02-12 | 2016-08-18 | 华为技术有限公司 | 一种告警信息处理方法、相关设备和系统 |
JP5943110B1 (ja) * | 2015-03-12 | 2016-06-29 | 日本電気株式会社 | 情報処理システム、情報処理方法、及び、プログラム |
EP3272081A4 (en) * | 2015-03-19 | 2018-08-22 | ZTE Corporation | Method and system for establishing and managing multi-domain virtual topology (mdvt) |
EP3273647B1 (en) * | 2015-03-20 | 2019-02-06 | NTT DoCoMo, Inc. | Service allocation determination based on the presence of an isolation requirement in the service requirements |
US10263911B2 (en) * | 2015-05-01 | 2019-04-16 | Futurewei Technologies, Inc. | System and method for resource management |
JP6463509B2 (ja) * | 2015-05-07 | 2019-02-06 | ホアウェイ・テクノロジーズ・カンパニー・リミテッド | 動的仮想化ネットワーク機能記述子管理のためのシステムおよび方法 |
US9973447B2 (en) | 2015-07-23 | 2018-05-15 | Honeywell International Inc. | Built-in ethernet switch design for RTU redundant system |
US10581976B2 (en) | 2015-08-12 | 2020-03-03 | A10 Networks, Inc. | Transmission control of protocol state exchange for dynamic stateful service insertion |
US10243791B2 (en) | 2015-08-13 | 2019-03-26 | A10 Networks, Inc. | Automated adjustment of subscriber policies |
CN106470142B (zh) * | 2015-08-14 | 2019-09-06 | 中国电信股份有限公司 | 虚拟网络拓扑自助生成方法和系统 |
US20170289002A1 (en) * | 2016-03-31 | 2017-10-05 | Mrittika Ganguli | Technologies for deploying dynamic underlay networks in cloud computing infrastructures |
US10212182B2 (en) * | 2016-10-14 | 2019-02-19 | Cisco Technology, Inc. | Device profiling for isolation networks |
CN108023837B (zh) * | 2016-10-31 | 2020-11-20 | 鸿富锦精密电子(天津)有限公司 | 虚拟网络交换机系统及其建立方法 |
JP6747579B2 (ja) | 2017-03-31 | 2020-08-26 | 日本電気株式会社 | ネットワーク構築装置、ネットワーク構築方法、及びプログラム |
US10334330B2 (en) * | 2017-08-03 | 2019-06-25 | Facebook, Inc. | Scalable switch |
US11757696B2 (en) | 2017-10-24 | 2023-09-12 | Telefonaktiebolaget Lm Ericsson (Publ) | Methods for defining a network service descriptor (NSD) for a network service (NS), and network functions virtualization (NFV) orchestrator (NFVO) using said NSD |
US10353716B2 (en) | 2017-11-13 | 2019-07-16 | International Business Machines Corporation | Automated deployment and performance evaluation of a virtualized-computing environment |
KR102500137B1 (ko) * | 2018-03-30 | 2023-02-15 | 삼성전자주식회사 | 네트워크 기능 가상화 환경에서 네트워크 자원 관리를 위한 장치 및 방법 |
TWI670608B (zh) * | 2018-06-08 | 2019-09-01 | 林勁璋 | 拓樸圖的產生方法及其產生裝置 |
US11552953B1 (en) | 2018-06-18 | 2023-01-10 | Amazon Technologies, Inc. | Identity-based authentication and access control mechanism |
US10855531B2 (en) | 2018-08-30 | 2020-12-01 | Juniper Networks, Inc. | Multiple networks for virtual execution elements |
US10728145B2 (en) * | 2018-08-30 | 2020-07-28 | Juniper Networks, Inc. | Multiple virtual network interface support for virtual execution elements |
JP6977699B2 (ja) | 2018-10-30 | 2021-12-08 | 日本電信電話株式会社 | 転送装置及びリソース割当方法 |
CN109451047B (zh) * | 2018-12-13 | 2021-05-18 | 深圳前海微众银行股份有限公司 | 监控告警系统的数据传送方法、装置、设备及存储介质 |
US10841226B2 (en) | 2019-03-29 | 2020-11-17 | Juniper Networks, Inc. | Configuring service load balancers with specified backend virtual networks |
US11262990B2 (en) * | 2020-05-26 | 2022-03-01 | International Business Machines Corporation | Application topology discovery |
US11689455B2 (en) | 2020-05-28 | 2023-06-27 | Oracle International Corporation | Loop prevention in virtual layer 2 networks |
CN111654402B (zh) * | 2020-06-23 | 2023-08-01 | 中国平安财产保险股份有限公司 | 网络拓扑创建方法、装置、设备及存储介质 |
JP2023535149A (ja) | 2020-07-14 | 2023-08-16 | オラクル・インターナショナル・コーポレイション | Vlanスイッチングおよびルーティングサービスのためのシステムおよび方法 |
RU2744940C1 (ru) * | 2020-10-21 | 2021-03-17 | Константин Евгеньевич Самуйлов | Способ распределения виртуальных ресурсов оператора связи |
US11909636B2 (en) | 2020-12-30 | 2024-02-20 | Oracle International Corporation | Layer-2 networking using access control lists in a virtualized cloud environment |
US11671355B2 (en) | 2021-02-05 | 2023-06-06 | Oracle International Corporation | Packet flow control in a header of a packet |
US20220253035A1 (en) * | 2021-02-05 | 2022-08-11 | Verizon Patent And Licensing Inc. | Systems and methods for modeling network components in provisioning environment |
US11777897B2 (en) | 2021-02-13 | 2023-10-03 | Oracle International Corporation | Cloud infrastructure resources for connecting a service provider private network to a customer private network |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08297567A (ja) * | 1995-04-26 | 1996-11-12 | Mitsubishi Electric Corp | 分散アプリケーション開発支援装置 |
JP2002084302A (ja) | 2000-09-06 | 2002-03-22 | Nippon Telegr & Teleph Corp <Ntt> | ネットワークによる通信方法及び装置 |
US20020057684A1 (en) * | 2000-11-10 | 2002-05-16 | Carleton Miyamoto | System for dynamic provisioning of secure, scalable, and extensible networked computer environments |
KR20020082459A (ko) * | 1999-10-29 | 2002-10-31 | 텔레라, 인코포레이티드 | 사용자 상호작용 서비스를 위한 가상 지능 네트워크 |
Family Cites Families (105)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4200770A (en) * | 1977-09-06 | 1980-04-29 | Stanford University | Cryptographic apparatus and method |
US4424414A (en) * | 1978-05-01 | 1984-01-03 | Board Of Trustees Of The Leland Stanford Junior University | Exponentiation cryptographic apparatus and method |
EP0272836B1 (en) * | 1986-12-22 | 1994-03-02 | AT&T Corp. | Controlled dynamic load balancing for a multiprocessor system |
US5031089A (en) * | 1988-12-30 | 1991-07-09 | United States Of America As Represented By The Administrator, National Aeronautics And Space Administration | Dynamic resource allocation scheme for distributed heterogeneous computer systems |
JPH0488489A (ja) * | 1990-08-01 | 1992-03-23 | Internatl Business Mach Corp <Ibm> | 一般化ハフ変換を用いた文字認識装置および方法 |
DE69132279T2 (de) * | 1990-09-17 | 2001-01-18 | Cabletron Systems Inc | Verfahren zur Isolierung eines Netzwerkfehlers |
JPH04287290A (ja) * | 1990-11-20 | 1992-10-12 | Imra America Inc | ハフ変換画像処理装置 |
AU1647392A (en) * | 1991-03-18 | 1992-10-21 | Echelon Corporation | Programming language structures for use in a network for communicating, sensing and controlling information |
IL99923A0 (en) * | 1991-10-31 | 1992-08-18 | Ibm Israel | Method of operating a computer in a network |
JPH076026A (ja) * | 1993-05-28 | 1995-01-10 | Xerox Corp | 構成管理及び構成要素の互換性保証方法、ならびに常駐ソフトウェアと移行ソフトウェアの非互換性の排除方法 |
US5509148A (en) * | 1994-05-25 | 1996-04-23 | Steele; David S. | Three-way trap elbow and cleanout system |
WO1996016497A1 (en) * | 1994-11-21 | 1996-05-30 | Oracle Corporation | Transferring binary large objects (blobs) in a network environment |
US5758351A (en) * | 1995-03-01 | 1998-05-26 | Sterling Software, Inc. | System and method for the creation and use of surrogate information system objects |
US5724508A (en) * | 1995-03-09 | 1998-03-03 | Insoft, Inc. | Apparatus for collaborative computing |
US5917730A (en) * | 1995-08-17 | 1999-06-29 | Gse Process Solutions, Inc. | Computer implemented object oriented visualization system and method |
US5872914A (en) * | 1995-08-31 | 1999-02-16 | International Business Machines Corporation | Method and apparatus for an account managed object class model in a distributed computing environment |
US6047323A (en) * | 1995-10-19 | 2000-04-04 | Hewlett-Packard Company | Creation and migration of distributed streams in clusters of networked computers |
US5793763A (en) * | 1995-11-03 | 1998-08-11 | Cisco Technology, Inc. | Security system for network address translation systems |
GB2309558A (en) * | 1996-01-26 | 1997-07-30 | Ibm | Load balancing across the processors of a server computer |
JPH09244940A (ja) * | 1996-03-12 | 1997-09-19 | Hitachi Ltd | 分散計算機資源の管理方法 |
US6085238A (en) * | 1996-04-23 | 2000-07-04 | Matsushita Electric Works, Ltd. | Virtual LAN system |
US5748958A (en) * | 1996-04-30 | 1998-05-05 | International Business Machines Corporation | System for utilizing batch requests to present membership changes to process groups |
DE69738095T2 (de) * | 1996-06-07 | 2008-05-29 | Nippon Telegraph And Telephone Corp. | Verfahren und System zur Steuerung eines VLANs |
KR100204029B1 (ko) * | 1996-06-19 | 1999-06-15 | 이계철 | 비동기전달모드 교환 시스템에서 연결 식별자 할당방법 |
US5796830A (en) * | 1996-07-29 | 1998-08-18 | International Business Machines Corporation | Interoperable cryptographic key recovery system |
US5774660A (en) * | 1996-08-05 | 1998-06-30 | Resonate, Inc. | World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network |
US5918017A (en) * | 1996-08-23 | 1999-06-29 | Internatioinal Business Machines Corp. | System and method for providing dynamically alterable computer clusters for message routing |
US5774889A (en) * | 1996-10-07 | 1998-07-07 | Gochanour; G. Gary | Protective hand covering |
US5784463A (en) * | 1996-12-04 | 1998-07-21 | V-One Corporation | Token distribution, registration, and dynamic configuration of user entitlement for an application level security system and method |
US6065058A (en) * | 1997-05-09 | 2000-05-16 | International Business Machines Corp. | Dynamic push filtering based on information exchanged among nodes in a proxy hierarchy |
US6070243A (en) * | 1997-06-13 | 2000-05-30 | Xylan Corporation | Deterministic user authentication service for communication network |
US6389464B1 (en) * | 1997-06-27 | 2002-05-14 | Cornet Technology, Inc. | Device management system for managing standards-compliant and non-compliant network elements using standard management protocols and a universal site server which is configurable from remote locations via internet browser technology |
US6049528A (en) * | 1997-06-30 | 2000-04-11 | Sun Microsystems, Inc. | Trunking ethernet-compatible networks |
US6185308B1 (en) * | 1997-07-07 | 2001-02-06 | Fujitsu Limited | Key recovery system |
US6041054A (en) * | 1997-09-24 | 2000-03-21 | Telefonaktiebolaget Lm Ericsson | Efficient transport of internet protocol packets using asynchronous transfer mode adaptation layer two |
JP3649367B2 (ja) * | 1997-09-26 | 2005-05-18 | ソニー株式会社 | パケット伝送制御方法および装置 |
EP0907145A3 (en) * | 1997-10-03 | 2003-03-26 | Nippon Telegraph and Telephone Corporation | Method and equipment for extracting image features from image sequence |
US6192401B1 (en) * | 1997-10-21 | 2001-02-20 | Sun Microsystems, Inc. | System and method for determining cluster membership in a heterogeneous distributed system |
US6047325A (en) * | 1997-10-24 | 2000-04-04 | Jain; Lalit | Network device for supporting construction of virtual local area networks on arbitrary local and wide area computer networks |
US6088734A (en) * | 1997-11-12 | 2000-07-11 | International Business Machines Corporation | Systems methods and computer program products for controlling earliest deadline first scheduling at ATM nodes |
US6035405A (en) * | 1997-12-22 | 2000-03-07 | Nortel Networks Corporation | Secure virtual LANs |
US6086618A (en) * | 1998-01-26 | 2000-07-11 | Microsoft Corporation | Method and computer program product for estimating total resource usage requirements of a server application in a hypothetical user configuration |
US6182275B1 (en) * | 1998-01-26 | 2001-01-30 | Dell Usa, L.P. | Generation of a compatible order for a computer system |
US6076108A (en) * | 1998-03-06 | 2000-06-13 | I2 Technologies, Inc. | System and method for maintaining a state for a user session using a web system having a global session server |
US6208649B1 (en) * | 1998-03-11 | 2001-03-27 | Cisco Technology, Inc. | Derived VLAN mapping technique |
JP4243019B2 (ja) * | 1998-04-03 | 2009-03-25 | ヴァーティカル・ネットワークス・インコーポレーテッド | インテリジェント・ブリッジtdmおよびパケット・バスを用いて音声およびデータを伝送するシステムおよび方法 |
US6059842A (en) * | 1998-04-14 | 2000-05-09 | International Business Machines Corp. | System and method for optimizing computer software and hardware |
US6208345B1 (en) * | 1998-04-15 | 2001-03-27 | Adc Telecommunications, Inc. | Visual data integration system and method |
US20020049573A1 (en) * | 1998-05-13 | 2002-04-25 | El Ata Nabil A. Abu | Automated system and method for designing model based architectures of information systems |
FR2779018B1 (fr) * | 1998-05-22 | 2000-08-18 | Activcard | Terminal et systeme pour la mise en oeuvre de transactions electroniques securisees |
US6269076B1 (en) * | 1998-05-28 | 2001-07-31 | 3Com Corporation | Method of resolving split virtual LANs utilizing a network management system |
JP3617770B2 (ja) * | 1998-05-29 | 2005-02-09 | 株式会社日立製作所 | ネットワーク管理システム及びネットワーク管理方式 |
US6259448B1 (en) * | 1998-06-03 | 2001-07-10 | International Business Machines Corporation | Resource model configuration and deployment in a distributed computer network |
US6360265B1 (en) * | 1998-07-08 | 2002-03-19 | Lucent Technologies Inc. | Arrangement of delivering internet protocol datagrams for multimedia services to the same server |
US6266707B1 (en) * | 1998-08-17 | 2001-07-24 | International Business Machines Corporation | System and method for IP network address translation and IP filtering with dynamic address resolution |
US6717949B1 (en) * | 1998-08-31 | 2004-04-06 | International Business Machines Corporation | System and method for IP network address translation using selective masquerade |
US6728885B1 (en) * | 1998-10-09 | 2004-04-27 | Networks Associates Technology, Inc. | System and method for network access control using adaptive proxies |
US6570875B1 (en) * | 1998-10-13 | 2003-05-27 | Intel Corporation | Automatic filtering and creation of virtual LANs among a plurality of switch ports |
US6212559B1 (en) * | 1998-10-28 | 2001-04-03 | Trw Inc. | Automated configuration of internet-like computer networks |
JP3820777B2 (ja) * | 1998-11-12 | 2006-09-13 | 富士ゼロックス株式会社 | 秘密鍵寄託システムおよび方法 |
US6393456B1 (en) * | 1998-11-30 | 2002-05-21 | Microsoft Corporation | System, method, and computer program product for workflow processing using internet interoperable electronic messaging with mime multiple content type |
US6336171B1 (en) * | 1998-12-23 | 2002-01-01 | Ncr Corporation | Resource protection in a cluster environment |
US6393474B1 (en) * | 1998-12-31 | 2002-05-21 | 3Com Corporation | Dynamic policy management apparatus and method using active network devices |
US6691168B1 (en) * | 1998-12-31 | 2004-02-10 | Pmc-Sierra | Method and apparatus for high-speed network rule processing |
US6377996B1 (en) * | 1999-02-18 | 2002-04-23 | International Business Machines Corporation | System for seamless streaming of data stored on a network of distributed primary and target servers using segmentation information exchanged among all servers during streaming |
US6549934B1 (en) * | 1999-03-01 | 2003-04-15 | Microsoft Corporation | Method and system for remote access to computer devices via client managed server buffers exclusively allocated to the client |
US6510509B1 (en) * | 1999-03-29 | 2003-01-21 | Pmc-Sierra Us, Inc. | Method and apparatus for high-speed network rule processing |
US6539494B1 (en) * | 1999-06-17 | 2003-03-25 | Art Technology Group, Inc. | Internet server session backup apparatus |
US6549516B1 (en) * | 1999-07-02 | 2003-04-15 | Cisco Technology, Inc. | Sending instructions from a service manager to forwarding agents on a need to know basis |
US6584499B1 (en) * | 1999-07-09 | 2003-06-24 | Lsi Logic Corporation | Methods and apparatus for performing mass operations on a plurality of managed devices on a network |
US6684335B1 (en) * | 1999-08-19 | 2004-01-27 | Epstein, Iii Edwin A. | Resistance cell architecture |
US7162427B1 (en) * | 1999-08-20 | 2007-01-09 | Electronic Data Systems Corporation | Structure and method of modeling integrated business and information technology frameworks and architecture in support of a business |
US6370573B1 (en) * | 1999-08-31 | 2002-04-09 | Accenture Llp | System, method and article of manufacture for managing an environment of a development architecture framework |
US6738736B1 (en) * | 1999-10-06 | 2004-05-18 | Accenture Llp | Method and estimator for providing capacacity modeling and planning |
US6529953B1 (en) * | 1999-12-17 | 2003-03-04 | Reliable Network Solutions | Scalable computer network resource monitoring and location system |
US6748447B1 (en) * | 2000-04-07 | 2004-06-08 | Network Appliance, Inc. | Method and apparatus for scalable distribution of information in a distributed network |
US6904458B1 (en) * | 2000-04-26 | 2005-06-07 | Microsoft Corporation | System and method for remote management |
US7054943B1 (en) * | 2000-04-28 | 2006-05-30 | International Business Machines Corporation | Method and apparatus for dynamically adjusting resources assigned to plurality of customers, for meeting service level agreements (slas) with minimal resources, and allowing common pools of resources to be used across plural customers on a demand basis |
JP2001313663A (ja) * | 2000-05-01 | 2001-11-09 | Nippon Telegr & Teleph Corp <Ntt> | 排他的論理ネットワークアクセス制御方法及び装置 |
US6675308B1 (en) * | 2000-05-09 | 2004-01-06 | 3Com Corporation | Methods of determining whether a network interface card entry within the system registry pertains to physical hardware or to a virtual device |
JP3457259B2 (ja) * | 2000-05-30 | 2003-10-14 | 日本電信電話株式会社 | プロバイダ切換可能通信方法及びその装置 |
US7418489B2 (en) * | 2000-06-07 | 2008-08-26 | Microsoft Corporation | Method and apparatus for applying policies |
US6718379B1 (en) * | 2000-06-09 | 2004-04-06 | Advanced Micro Devices, Inc. | System and method for network management of local area networks having non-blocking network switches configured for switching data packets between subnetworks based on management policies |
WO2002003220A2 (en) * | 2000-07-05 | 2002-01-10 | Ernst & Young Llp | Method and apparatus for providing computer services |
US20020143960A1 (en) * | 2000-08-02 | 2002-10-03 | Erez Goren | Virtual network generation system and method |
AU2002215311A1 (en) * | 2000-10-05 | 2002-04-15 | Wind River Systems, Inc. | A system and method for implementing multi-level network drivers |
US20040073443A1 (en) * | 2000-11-10 | 2004-04-15 | Gabrick John J. | System for automating and managing an IP environment |
US6856591B1 (en) * | 2000-12-15 | 2005-02-15 | Cisco Technology, Inc. | Method and system for high reliability cluster management |
JP2002354006A (ja) * | 2001-05-24 | 2002-12-06 | Oki Electric Ind Co Ltd | 重複アドレスのネットワークシステム |
US20020118642A1 (en) * | 2001-02-27 | 2002-08-29 | Lee Daniel Joseph | Network topology for use with an open internet protocol services platform |
US20030008712A1 (en) * | 2001-06-04 | 2003-01-09 | Playnet, Inc. | System and method for distributing a multi-client game/application over a communications network |
US20030041139A1 (en) * | 2001-08-14 | 2003-02-27 | Smartpipes, Incorporated | Event management for a remote network policy management system |
US7500069B2 (en) * | 2001-09-17 | 2009-03-03 | Hewlett-Packard Development Company, L.P. | System and method for providing secure access to network logical storage partitions |
US7309498B2 (en) * | 2001-10-10 | 2007-12-18 | Belenkaya Bronislava G | Biodegradable absorbents and methods of preparation |
US7257817B2 (en) * | 2001-10-16 | 2007-08-14 | Microsoft Corporation | Virtual network with adaptive dispatcher |
US7035930B2 (en) * | 2001-10-26 | 2006-04-25 | Hewlett-Packard Development Company, L.P. | Method and framework for generating an optimized deployment of software applications in a distributed computing environment using layered model descriptions of services and servers |
US7024451B2 (en) * | 2001-11-05 | 2006-04-04 | Hewlett-Packard Development Company, L.P. | System and method for maintaining consistent independent server-side state among collaborating servers |
US7188364B2 (en) * | 2001-12-20 | 2007-03-06 | Cranite Systems, Inc. | Personal virtual bridged local area networks |
US6681262B1 (en) * | 2002-05-06 | 2004-01-20 | Infinicon Systems | Network data flow optimization |
JP4118092B2 (ja) * | 2002-06-19 | 2008-07-16 | 株式会社ルネサステクノロジ | 記憶装置および情報処理装置 |
US20040078787A1 (en) * | 2002-07-19 | 2004-04-22 | Michael Borek | System and method for troubleshooting, maintaining and repairing network devices |
US7191344B2 (en) * | 2002-08-08 | 2007-03-13 | Authenex, Inc. | Method and system for controlling access to data stored on a data storage device |
US20040054791A1 (en) * | 2002-09-17 | 2004-03-18 | Krishnendu Chakraborty | System and method for enforcing user policies on a web server |
US7933983B2 (en) * | 2002-12-17 | 2011-04-26 | Hewlett-Packard Development Company, L.P. | Method and system for performing load balancing across control planes in a data center |
JP2006518080A (ja) * | 2003-02-14 | 2006-08-03 | プリベンシス,インコーポレイティド | ネットワーク監査及びポリシー保証システム |
-
2003
- 2003-03-06 US US10/382,942 patent/US20040210623A1/en not_active Abandoned
-
2004
- 2004-01-28 TW TW093101903A patent/TW200420036A/zh unknown
- 2004-01-29 MY MYPI20040262A patent/MY149582A/en unknown
- 2004-02-02 EP EP04002223A patent/EP1455483A3/en not_active Withdrawn
- 2004-02-02 ZA ZA200400836A patent/ZA200400836B/xx unknown
- 2004-02-04 CA CA002456952A patent/CA2456952A1/en not_active Abandoned
- 2004-02-10 AU AU2004200484A patent/AU2004200484B2/en not_active Ceased
- 2004-02-13 MX MXPA04001431A patent/MXPA04001431A/es active IP Right Grant
- 2004-02-16 BR BR0400549-0A patent/BRPI0400549A/pt not_active IP Right Cessation
- 2004-02-23 PL PL36551204A patent/PL365512A1/xx not_active Application Discontinuation
- 2004-03-04 CN CNA2004100286151A patent/CN1703016A/zh active Pending
- 2004-03-04 JP JP2004061396A patent/JP4444695B2/ja not_active Expired - Fee Related
- 2004-03-05 KR KR1020040015027A patent/KR101143648B1/ko not_active IP Right Cessation
- 2004-03-05 RU RU2004106718/09A patent/RU2382398C2/ru not_active IP Right Cessation
-
2009
- 2009-09-29 JP JP2009225576A patent/JP4838342B2/ja not_active Expired - Fee Related
-
2011
- 2011-07-08 JP JP2011151762A patent/JP2011259455A/ja not_active Withdrawn
- 2011-07-08 JP JP2011151764A patent/JP2011217405A/ja not_active Withdrawn
- 2011-07-08 JP JP2011151758A patent/JP2011239452A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08297567A (ja) * | 1995-04-26 | 1996-11-12 | Mitsubishi Electric Corp | 分散アプリケーション開発支援装置 |
KR20020082459A (ko) * | 1999-10-29 | 2002-10-31 | 텔레라, 인코포레이티드 | 사용자 상호작용 서비스를 위한 가상 지능 네트워크 |
JP2002084302A (ja) | 2000-09-06 | 2002-03-22 | Nippon Telegr & Teleph Corp <Ntt> | ネットワークによる通信方法及び装置 |
US20020057684A1 (en) * | 2000-11-10 | 2002-05-16 | Carleton Miyamoto | System for dynamic provisioning of secure, scalable, and extensible networked computer environments |
Also Published As
Publication number | Publication date |
---|---|
JP4444695B2 (ja) | 2010-03-31 |
MXPA04001431A (es) | 2005-06-17 |
JP4838342B2 (ja) | 2011-12-14 |
PL365512A1 (en) | 2004-09-20 |
RU2004106718A (ru) | 2005-08-10 |
JP2009303275A (ja) | 2009-12-24 |
JP2011259455A (ja) | 2011-12-22 |
JP2004272905A (ja) | 2004-09-30 |
AU2004200484B2 (en) | 2010-03-11 |
KR20040079318A (ko) | 2004-09-14 |
EP1455483A2 (en) | 2004-09-08 |
BRPI0400549A (pt) | 2004-12-28 |
CN1703016A (zh) | 2005-11-30 |
MY149582A (en) | 2013-09-13 |
AU2004200484A1 (en) | 2004-09-23 |
US20040210623A1 (en) | 2004-10-21 |
JP2011239452A (ja) | 2011-11-24 |
EP1455483A3 (en) | 2011-01-05 |
RU2382398C2 (ru) | 2010-02-20 |
CA2456952A1 (en) | 2004-09-06 |
TW200420036A (en) | 2004-10-01 |
JP2011217405A (ja) | 2011-10-27 |
ZA200400836B (en) | 2004-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101143648B1 (ko) | 가상 네트워크 토폴로지 발생을 위한 방법, 컴퓨터, 및 컴퓨터 판독가능 기록매체 | |
JP3948957B2 (ja) | 拡張可能なコンピューティング・システム | |
US7027412B2 (en) | System for dynamic provisioning of secure, scalable, and extensible networked computer environments | |
CN107147509B (zh) | 虚拟专用网业务实现方法、装置及通信系统 | |
CN103475722B (zh) | 一种业务协同平台实现系统 | |
EP2774329B1 (en) | Data center network architecture | |
JP4712279B2 (ja) | 拡張可能コンピューティングシステムの制御方法および装置 | |
CN101183978A (zh) | 用于配置网络基础结构的系统和方法 | |
WO2002003203A2 (en) | Method and apparatus for controlling an extensible computing system | |
CN112602292B (zh) | 5g核心网中的片间共享 | |
US10681177B2 (en) | Self-driving content distribution | |
US20080005298A1 (en) | Network clustering technology | |
WO2002069175A1 (en) | Management tool anf graphical interface for control of an open internet protocol services platform | |
CN112671811B (zh) | 一种网络接入方法和设备 | |
CN111147302B (zh) | 一种网络虚拟化实现方法及其系统 | |
Großmann et al. | Cloudless computing-a vision to become reality | |
Sierszeń et al. | Software-Defined Automatization of Virtual Local Area Network Load Balancing in a Virtual Environment | |
Fitria et al. | Software-Defined Networking (Sdn) In Modern Network Management | |
CN115334108A (zh) | 一种金融行业idc的融合部署系统 | |
CN117675559A (zh) | 多数据中心跨域互通多云业务编排方法、装置和设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E90F | Notification of reason for final refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |