KR101143648B1 - 가상 네트워크 토폴로지 발생을 위한 방법, 컴퓨터, 및 컴퓨터 판독가능 기록매체 - Google Patents

가상 네트워크 토폴로지 발생을 위한 방법, 컴퓨터, 및 컴퓨터 판독가능 기록매체 Download PDF

Info

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
Application number
KR1020040015027A
Other languages
English (en)
Other versions
KR20040079318A (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 KR20040079318A publication Critical patent/KR20040079318A/ko
Application granted granted Critical
Publication of KR101143648B1 publication Critical patent/KR101143648B1/ko

Links

Images

Classifications

    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05CBOLTS OR FASTENING DEVICES FOR WINGS, SPECIALLY FOR DOORS OR WINDOWS
    • E05C3/00Fastening devices with bolts moving pivotally or rotatively
    • E05C3/02Fastening devices with bolts moving pivotally or rotatively without latching action
    • E05C3/04Fastening devices with bolts moving pivotally or rotatively without latching action with operating handle or equivalent member rigid with the bolt
    • E05C3/041Fastening 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/043Fastening 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
    • 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]
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05BLOCKS; ACCESSORIES THEREFOR; HANDCUFFS
    • E05B1/00Knobs or handles for wings; Knobs, handles, or press buttons for locks or latches on wings
    • E05B1/003Handles pivoted about an axis perpendicular to the wing
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05CBOLTS OR FASTENING DEVICES FOR WINGS, SPECIALLY FOR DOORS OR WINDOWS
    • E05C19/00Other devices specially designed for securing wings, e.g. with suction cups
    • E05C19/08Hasps; Hasp fastenings; Spring catches therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • EFIXED CONSTRUCTIONS
    • E05LOCKS; KEYS; WINDOW OR DOOR FITTINGS; SAFES
    • E05YINDEXING 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/00Application of doors, windows, wings or fittings thereof
    • E05Y2900/10Application of doors, windows, wings or fittings thereof for buildings or parts thereof
    • E05Y2900/13Type of wing
    • E05Y2900/148Windows
    • 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]
    • H04L12/4645Details on frame tagging
    • 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]
    • H04L12/467Arrangements 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

가상 네트워크 토폴로지 발생을 위한 방법, 컴퓨터, 및 컴퓨터 판독가능 기록매체{VIRTUAL NETWORK TOPOLOGY GENERATION}
도 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
Figure 112004009349182-pat00001
동작 시스템들 내의 프로그래밍 인터페이스 (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에 의해 제공된 이하의 코어 웹 방법들에 의해 용이해진다.
Figure 112004009349182-pat00002
이하에 이들 5개의 웹 방법들의 설명을 포함하는, RM에 의해 제공된 예시적인 인터페이스들을 열거한다.
Figure 112004009349182-pat00003
Figure 112004009349182-pat00004
Figure 112004009349182-pat00005
Figure 112004009349182-pat00006
Figure 112004009349182-pat00007
Figure 112004009349182-pat00008
Figure 112004009349182-pat00009
Figure 112004009349182-pat00010
Figure 112004009349182-pat00011
Figure 112004009349182-pat00012
Figure 112004009349182-pat00013
본 발명에 의하면, 물리적 컴퓨팅 시스템으로부터 임의의 가상 네트워크 토폴로지들을 자동 생성하는 아키텍쳐 및 방법이 설명된다. 상기 아키텍쳐 및 방법에 의하면 컴퓨터들을 물리적으로 접속하지 않고 또한 시스템 내에 배선들을 구성할 필요 없이 다수의 분산 어플리케이션들을 동일한 물리적 컴퓨팅 시스템 상에 자동 및 원격 설치시키는 것이 가능하다.
본 발명은 구조적 특징들 및/또는 방법적 처리들에 대해 특유한 언어로 기술되었지만, 첨부된 청구범위에 정의된 발명은 상술된 특유한 특징들 또는 처리들로 한정될 필요는 없다. 오히려, 특유한 특징들 및 처리들은 청구된 발명을 구현하는 예시적인 형태들로서 개시된다. 또한, 이 청구 범위는 단지 가능한 범위 및 내용의 예시일 뿐이고, 본 명세서에 기재된 특징들의 많은 조합들 및 하위 조합들은 가출원으로부터 완전하게 될 많은 특허 출원들에 걸쳐 청구 범위의 주제가 될 것으로 기대된다.

Claims (26)

  1. 컴퓨팅 장치에 의해, 분산 어플리케이션에 대한 가상 네트워크 토폴로지를 구축하는 단계 - 상기 구축하는 단계는 운영 체제의 프로그래밍 인터페이스를 이용하여 분산 네트워크를 위한 적어도 하나의 가상 근거리 통신망(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과 관련시키는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    상기 배치하는 단계는, 상기 분산 컴퓨팅 시스템의 물리적 리소스들에게 상기 어플리케이션에 대한 상기 VLAN에 접속하라고 원격으로 명령하는 단계를 포함하는 방법.
  3. 제1항에 따른 단계들을 실행하는 컴퓨터 실행가능 명령어들을 저장한 하나 이상의 컴퓨터 판독가능 기록 매체.
  4. 컴퓨팅 장치에 의해, 복수의 컴퓨터로 구성된 공통의 분산 컴퓨팅 시스템 상에서 호스팅되는 관련된 분산 어플리케이션들에 대한 복수의 가상 네트워크 토폴로지를 생성하는 단계;
    상기 컴퓨팅 장치에 의해, 운영 체제의 프로그래밍 인터페이스를 이용하여 각각의 가상 네트워크 토폴로지에 대한 적어도 하나의 VLAN을 생성하는 단계; 및
    상기 컴퓨팅 장치에 의해, 상기 분산 어플리케이션들이 서로 고립되어 있는 관련된 VLAN들을 경유하여 통신할 수 있게 하는 방식으로 상기 가상 네트워크 토폴로지에 상기 분산 컴퓨팅 시스템의 물리적 자원들을 자동으로 배치하는 단계
    를 포함하고,
    상기 배치하는 단계는,
    상기 네트워크 스위치들에 있는 스위치 포트들을 상기 VLAN에 할당하는 것을 포함하여, 상기 분산 컴퓨팅 시스템의 네트워크 스위치들을 상기 VLAN에 원격으로 할당하는 단계 - 상기 네트워크 스위치들 중 하나에 있는 적어도 하나의 스위치 포트는 2 이상의 VLAN에 할당됨 -; 및
    복수의 VNIC 중에 물리적 네트워크 인터페이스에 링크되는 VNIC를 생성하고 상기 VNIC를 상기 특정 분산 어플리케이션과 관련된 VLAN과 관련시키도록, 특정 분산 어플리케이션을 호스팅하는 데 이용되는 각각의 컴퓨터에 원격으로 다이렉팅(directing)하는 단계
    를 포함하고,
    VLAN 드라이버는 (ⅰ) 상기 VLAN 드라이버가 설치되고, (ⅱ) 상기 VLAN 드라이버가 물리적 네트워크 인터페이스에 바인딩되고, (ⅲ) 상기 VLAN 드라이버가 각각의 물리적 네트워크 인터페이스를 통해 복수의 VNIC를 생성하고, (ⅳ) 상기 VLAN 드라이버가 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되는 경우, 상기 물리적 네트워크 인터페이스를 통해 상기 VNIC를 생성하는 방법.
  5. 제4항에 따른 단계들을 실행하는 컴퓨터 실행가능 명령어들을 저장한 하나 이상의 컴퓨터 판독가능 기록 매체.
  6. 스위치들의 네트워크를 경유하여 상호접속된 복수의 컴퓨터를 갖는 분산 컴퓨팅 시스템에서,
    컴퓨팅 장치에 의해, 운영 체제의 프로그래밍 인터페이스를 이용하여 VLAN 아이덴티티를 갖는 VLAN을 생성하는 단계; 및
    상기 VLAN과 관련되는 각각의 컴퓨터에 대하여,
    상기 컴퓨팅 장치에 의해, 상기 컴퓨터가 접속되는 상기 스위치들의 네트워크의 스위치 포트에 상기 VLAN 아이덴티티를 할당하는 단계, 및
    상기 컴퓨팅 장치에 의해, 상기 컴퓨터에서 복수의 VNIC 중에 VNIC를 생성하고 상기 VNIC를 상기 VLAN과 관련시키는 단계 - 상기 VNIC는 물리적 네트워크 인터페이스에 링크됨 -
    를 포함하고,
    VLAN 드라이버는 (ⅰ) 상기 VLAN 드라이버가 상기 VLAN과 관련되는 각각의 컴퓨터 상에 설치되고, (ⅱ) 상기 VLAN 드라이버가 물리적 네트워크 인터페이스에 바인딩되고, (ⅲ) 상기 VLAN 드라이버가 각각의 물리적 네트워크 인터페이스를 통해 복수의 VNIC를 생성하고, (ⅳ) 상기 VLAN 드라이버가 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되는 경우, 상기 물리적 네트워크 인터페이스를 통해 상기 VNIC를 생성하고,
    상기 VLAN을 포함하여 복수의 VLAN의 복수의 VLAN 아이덴티티가 상기 스위치 포트에 할당되는 방법.
  7. 제6항에 있어서,
    상기 VLAN은 제1 VLAN 아이덴티티를 갖는 제1 VLAN을 포함하고,
    제2 VLAN 아이덴티티를 갖는 제2 VLAN을 생성하는 단계; 및
    상기 제2 VLAN과 관련되는 각각의 컴퓨터에 대해,
    상기 컴퓨터가 접속되는 스위치 포트에 상기 제2 VLAN 아이덴티티를 할당하는 단계, 및
    상기 컴퓨터에서 상기 복수의 VNIC 중에 제2 VNIC를 생성하고 상기 제2 VNIC를 상기 제2 VLAN와 관련시키는 단계
    를 더 포함하는 방법.
  8. 제6항에 따른 단계들을 실행하는 컴퓨터 실행가능 명령어들을 저장한 하나 이상의 컴퓨터 판독가능 기록 매체.
  9. 스위치들의 네트워크를 경유하여 상호접속된 복수의 컴퓨터들을 갖는 분산 컴퓨팅 시스템에서, 상기 분산 컴퓨팅 시스템 상에 제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 가상 인터페이스를 생성하는 방법.
  10. 제9항에 있어서,
    상기 제1 VLAN에 대한 데이터 패킷은 상기 스위치 포트를 통해 전달되고 상기 컴퓨터에서 상기 제1 VNIC에 의해 핸들링되며, 상기 제2 VLAN에 대한 데이터 패킷은 상기 스위치 포트를 통해 전달되고 상기 컴퓨터에서 상기 제2 VNIC에 의해 핸들링되는 방법.
  11. 제9항에 따른 단계들을 실행하는 컴퓨터 실행가능 명령어들을 저장한 하나 이상의 컴퓨터 판독가능 기록 매체.
  12. 분산 컴퓨팅 시스템 내의 컴퓨터로서,
    네트워크에의 물리적 접속을 용이하게 하는 네트워크 인터페이스; 및
    상기 네트워크 인터페이스에 바인딩하는 VLAN 드라이버
    를 포함하고,
    상기 VLAN 드라이버는 운영 체제의 프로그래밍 인터페이스를 이용하여 상기 컴퓨터에 제공되는, 상기 네트워크 인터페이스를 통해 복수의 VNIC를 생성하라는 원격 명령들에 응답적이며, 각각의 VNIC는 복수의 분산 어플리케이션이 상기 분산 컴퓨팅 시스템에 배치되는 것을 허용하는 고유의 VLAN과 관련되고, 각각의 가상 네트워크는 물리적 네트워크 인터페이스에 링크되고,
    상기 VLAN 드라이버는 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되고,
    상기 컴퓨터는 상기 네트워크를 통해 네트워크 스위치에 있는 스위치 포트에 접속되고, 상기 스위치 포트는 2 이상의 VLAN에 할당되는 컴퓨터.
  13. 제12항에 있어서,
    상기 VLAN 드라이버는 관련된 제1 VLAN 및 제2 VLAN에 대한 제1 VNIC 및 제2 VNIC를 생성하고, 상기 제1 VLAN과 관련된 데이터 패킷은 상기 네트워크 인터페이스에서 수신되고 상기 제1 VNIC에 의해 핸들링되며, 상기 제2 VLAN과 관련된 데이터 패킷은 상기 네트워크 인터페이스에서 수신되고 상기 제2 VNIC에 의해 핸들링되는 컴퓨터.
  14. LAN에 접속된 컴퓨터 상에 설치하기 위해, 상기 컴퓨터에 의해 실행가능한 소프트웨어 드라이버를 기록한 하나 이상의 컴퓨터 판독가능 저장 매체로서,
    상기 실행가능한 소프트웨어 드라이버는
    상기 LAN에 의해 지원되는 적어도 하나의 VLAN과 연관되는 복수의 VNIC를 원격으로 생성하기 위한 수단; 및
    상기 컴퓨터가 물리적 네트워크 인터페이스를 통해 복수의 VLAN에 참가할 수 있도록, VNIC를 통해 상기 물리적 네트워크 인터페이스를 경유하여 상기 LAN으로 가는 데이터 패킷 및 상기 LAN으로부터 수신된 데이터 패킷에 다이렉팅하기 위한 수단
    을 포함하고,
    상기 실행가능한 소프트웨어 드라이버는 네트워크 인터페이스 드라이버와 프로토콜 드라이버 사이에 설치되어, 상기 물리적 네트워크 인터페이스와 상기 프로토콜 드라이버 간의 상기 데이터 패킷의 흐름을 용이하게 하고,
    상기 VNIC를 원격으로 생성하기 위한 수단은, 운영 체제의 프로그래밍 인터페이스를 이용하여 상기 컴퓨터에 제공된 명령들을 수신하는 것에 응답하여 상기 생성하는 것을 수행하고,
    상기 컴퓨터는 상기 LAN을 경유하여 네트워크 스위치에 있는 스위치 포트에 접속되고, 상기 스위치 포트는 2 이상의 VLAN에 할당되는 하나 이상의 컴퓨터 판독가능 저장 매체.
  15. 컴퓨터들 및 네트워크 스위치들로 구성된 분산 컴퓨팅 시스템 상에 호스팅되는 분산 어플리케이션들에 대한 가상 네트워크 토폴로지들의 설계를 용이하게 하는 명령;
    운영 체제의 프로그래밍 인터페이스를 이용하여 상기 분산 어플리케이션들 각각에 대한 적어도 하나의 VLAN을 생성하는 명령;
    특정 VLAN과 관련되는 각각의 컴퓨터에 대해, 상기 컴퓨터가 접속되는 네트워크 스위치들 중 하나의 네트워크 스위치의 스위치 포트에 상기 특정 VLAN과 관련된 VLAN 아이덴티티를 할당하는 명령; 및
    복수의 VLAN과 관련되는 각각의 컴퓨터에 대해, 상기 컴퓨터가 상기 분산 어플리케이션들을 호스팅하는 데 이용될 수 있도록, 상기 컴퓨터에서 복수의 VNIC를 원격으로 생성하고 상기 VNIC를 상기 복수의 VLAN 중의 각각의 VLAN과 관련시키는 명령 - 상기 복수의 VNIC 각각은 물리적 네트워크 인터페이스에 링크되고, VLAN 드라이버는 (ⅰ) 상기 VLAN 드라이버가 설치되고, (ⅱ) 상기 VLAN 드라이버가 상기 물리적 네트워크 인터페이스에 바인딩되고, (ⅲ) 상기 VLAN 드라이버가 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되는 경우, 상기 물리적 네트워크 인터페이스를 통해 상기 복수의 VNIC를 생성하고, 복수의 VLAN의 복수의 VLAN 아이덴티티가 상기 스위치 포트에 할당됨 -
    을 포함하는 명령들을 실행하는 컴퓨터 실행가능 명령어들을 갖는 컴퓨터 판독가능 기록 매체.
  16. 분산 컴퓨팅 시스템의 일부분인 컴퓨터에 상주하는 드라이버 - 상기 컴퓨터는 네트워크 스위치를 경유하여 상기 분산 컴퓨팅 시스템에 접속됨 -; 및
    상기 컴퓨터로부터 원격에 위치하여, 상기 네트워크 스위치에 적어도 하나의 VLAN을 할당하고 물리적 네트워크 인터페이스 맨 위에서 복수의 VNIC를 생성하도록 상기 드라이버를 원격으로 다이렉팅하는 리소스 관리자 - 상기 복수의 VNIC는 상기 적어도 하나의 VLAN과 관련되고, 각각의 VNIC는 고유의 VLAN 아이덴티티를 나타냄 -
    를 포함하고,
    상기 리소스 관리자는 운영 체제의 어플리케이션 프로그래밍 인터페이스를 이용하여 상기 컴퓨터에 상기 드라이버를 다운로드하여 설치하도록 구성되고, 상기 어플리케이션 프로그래밍 인터페이스는 또한, 상기 적어도 하나의 VLAN 및 상기 복수의 VNIC를 확립하는 데 사용되고,
    상기 드라이버는 네트워크 인터페이스 드라이버와 인터넷 프로토콜 드라이버 사이의 프로토콜 스택에 설치되고,
    상기 네트워크 스위치에 있는 적어도 하나의 스위치 포트는 2 이상의 VLAN에 할당되는 시스템.
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
KR1020040015027A 2003-03-06 2004-03-05 가상 네트워크 토폴로지 발생을 위한 방법, 컴퓨터, 및 컴퓨터 판독가능 기록매체 KR101143648B1 (ko)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 プリベンシス,インコーポレイティド ネットワーク監査及びポリシー保証システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
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