RU2382398C2 - Генерация топологии виртуальной сети - Google Patents

Генерация топологии виртуальной сети Download PDF

Info

Publication number
RU2382398C2
RU2382398C2 RU2004106718/09A RU2004106718A RU2382398C2 RU 2382398 C2 RU2382398 C2 RU 2382398C2 RU 2004106718/09 A RU2004106718/09 A RU 2004106718/09A RU 2004106718 A RU2004106718 A RU 2004106718A RU 2382398 C2 RU2382398 C2 RU 2382398C2
Authority
RU
Russia
Prior art keywords
vlan
network
computer
driver
distributed
Prior art date
Application number
RU2004106718/09A
Other languages
English (en)
Other versions
RU2004106718A (ru
Inventor
Аамер ХАЙДРИ (US)
Аамер ХАЙДРИ
Кент Д. СЕДОЛА (US)
Кент Д. СЕДОЛА
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 RU2004106718A publication Critical patent/RU2004106718A/ru
Application granted granted Critical
Publication of RU2382398C2 publication Critical patent/RU2382398C2/ru

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • 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
    • 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

Изобретение относится к распределенным вычислительным системам. Техническим результатом является обеспечение формирования виртуальной сетевой топологии для разнообразных распределенных приложений, размещаемых на одной распределенной вычислительной системе, не требуя физической перенастройки распределенной вычислительной системы и конфигурирования проводных соединений внутри системы. На этапе дистанционного развертывания распределенного приложения на распределенной вычислительной системе выполняют: назначение сетевых коммутаторов для по меньшей мере одной виртуальной локальной сети (ВЛС), причем по меньшей мере один порт коммутатора в одном из сетевых коммутаторов назначен для двух или более ВЛС, дистанционное формирование в каждом компьютере первого виртуального сетевого интерфейса (ВСИ) и второго ВСИ, причем драйвер ВЛС формирует первый ВСИ и второй ВСИ поверх физического сетевого интерфейса, когда: (i) драйвер ВЛС установлен на каждом компьютере, который необходимо ассоциировать с ВЛС, (ii) драйвер ВЛС связан с физическим сетевым интерфейсом, (iii) драйвер ВЛС создает множество ВСИ поверх каждого физического сетевого интерфейса и (iv) драйвер ВЛС установлен в стеке протоколов между драйвером сетевого интерфейса и драйвером Интернет-протокола (IP); и связывание первого ВСИ с первой ВЛС и связывание второго ВСИ со второй ВЛС. 2 н. и 1 з.п. ф-лы, 7 ил.

Description

СВЯЗАННЫЕ ЗАЯВКИ
Данная заявка на патент связана со следующими заявками на патенты США (которые включены в данное описание посредством ссылки):
Заявка на патент США №09/695812, поданная 24 октября 2000 г., на “Систему и способ для распределенного управления совместно используемыми компьютерами”.
Заявка на патент США №09/695813, поданная 24 октября 2000 г., на “Систему и способ для логического моделирования распределенных компьютерных систем”.
Заявка на патент США №09/695820, поданная 24 октября 2000 г., на “Систему и способ для ограничения переносов данных и управления компонентами программного обеспечения распределенных компьютеров”.
Заявка на патент США №09/695821, поданная 24 октября 2000 г., на “Использование фильтров пакетов и виртуализации сети для ограничения сетевых коммуникаций”.
Заявка на патент США №09/696707, поданная 24 октября 2000 г., на “Систему и способ для создания логической модели распределенной компьютерной системы и распределение физических ресурсов в соответствии с логической моделью”.
Заявка на патент США №09/696752, поданная 24 октября 2000 г., на “Систему и способ обеспечения автоматической реализации стратегии в приложениях мультикомпьютерных услуг”.
ОБЛАСТЬ ТЕХНИКИ
Изобретение касается распределенных вычислительных систем и распределенных приложений, исполняемых на таких системах. В частности, изобретение касается способов автоматического создания произвольных виртуальных сетевых топологий из физической распределенной вычислительной системы для обеспечения возможности указанной системе использовать множество распределенных приложений.
ПРЕДШЕСТВУЮЩИЙ УРОВЕНЬ ТЕХНИКИ
За последние годы произошел заметный рост использования Интернета, который продолжает расширяться. Множество услуг (сервисов), предоставляемых всемирной паутиной (WWW), как электронная почта, покупки в сети, получение новостей и сбор информации, прослушивание музыки, просмотр видеоклипов, поиск работы и т.д., делают жизнь людей более комфортной. С ростом потребностей сетевых услуг сильно разрослись и компьютерные системы, предназначенные для поддержки (хостинга) сайтов и предоставления вычислительных машин с базами данных для этих сайтов, а также сохранения информации, связанной с этими сайтами.
Один из типов распределенной вычислительной системы - центр данных Интернета (ЦДИ, IDC) - представляет собой комплекс, спроектированный специально для использования множества компьютеров для оказания сетевых услуг. ЦДИ, известные также как “веб-фермы” или “группы серверов”, обычно вмещают от сотен до тысяч компьютеров в физически охраняемых зданиях с регулируемым климатом. Эти компьютеры соединены для выполнения одной и более программ, поддерживающих одну и более сетевых услуг или веб-сайтов. ЦДИ обеспечивает надежный доступ к сети, надежные источники питания и защищенную операционную среду. Другой тип распределенной вычислительной системы - центры данных предприятия (ЦДП, EDC). ЦДП подобны ЦДИ, но предназначены для предприятий.
Фиг.1 показывает ЦДИ 100. Он имеет много серверных компьютеров 102, размещенных в специально созданном помещении. Компьютеры представляют собой компьютеры общего назначения, обычно сконфигурированные как серверы. ЦДИ может быть создан для размещения единственного сайта для отдельного объекта (например, центр данных Yahoo! или MSN) или размещать множество сайтов для множества объектов (например, Exodus центр предоставляет место для сайтов множества компаний).
ЦДИ 100 проиллюстрирован с тремя объектами - объект A, объект B, объект C, которые совместно используют компьютерные ресурсы. Эти объекты представляют различные компании, которые хотят присутствия в сети. ЦДИ 100 имеет пул дополнительных компьютеров 104, который может использоваться объектами во время интенсивного трафика. Например, объект, занятый в сетевой продаже, может испытывать существенное повышение спроса в период рождественских праздников. Дополнительные компьютеры придают ЦДИ гибкость для удовлетворения этого спроса.
Сегодня большие ЦДИ сложны и часто призваны для размещения разнообразных приложений. Например, некоторые сайты могут использовать несколько тысяч компьютеров и принимать множество распределенных приложений. Эти распределенные приложения часто имеют сложные требования по организации сети, из-за которых операторам необходимо физически подключать компьютеры к надежным сетевым коммутаторам, а также вручную укладывать провода внутри ЦДИ для поддержки сложных приложений. В результате эта задача построения физической сетевой топологии, соответствующей прикладным требованиям, может быть длительным и трудоемким процессом, подверженным человеческим ошибкам. Поэтому существует потребность в улучшенных методах проектирования и развертывания распределенных приложений на физической вычислительной системе.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Описывается архитектура и методология для автоматизированного формирования произвольной виртуальной сетевой топологии из физической вычислительной системы. Архитектура и методология обеспечивают автоматизированную и удаленную инсталляцию разнообразных распределенных приложений на одной физической вычислительной системе без необходимости физического подключения компьютеров и конфигурирование проводных соединений внутри системы.
В одном из вариантов (реализаций) распределенная вычислительная система содержит много компьютеров, связанных сетевыми коммутаторами (например, коммутаторами Ethernet). Компьютеры могут быть запрограммированы на выполнение определенных задач, запрашиваемых приложением (например, серверы сети, базы данных, системы выравнивания нагрузки, программы межсетевой защиты, хранилища шифрованных данных и т.д.). Методология создает одну и более виртуальных локальных сетей (VLAN, ВЛС) поверх физической сети для каждого распределенного приложения, которое нужно разместить на распределенной вычислительной системе. Компьютеры, используемые для размещения распределенных приложений, автоматически подсоединяются к соответствующим ВЛС, связанным с приложениями. Таким образом, ВЛС гарантирует работу приложений, изолированных друг от других.
Автоматизированное подсоединение компьютеров включает две операции. Первая операция - назначение принадлежности ВЛС к порту коммутатора, с которым соединен компьютер. Этот определенный порт коммутатора будет принимать пакеты, помеченные как принадлежащие указанной ВЛС. Вторая операция - создание виртуальных сетевых интерфейсов (ВСИ, VNIC) по единственному физическому сетевому интерфейсу (СИ, NIC) в каждом компьютере. Каждый ВСИ уникально представляет связанную с ним ВЛС. Это позволяет компьютеру с одним физическим СИ участвовать в нескольких ВЛС. Пакеты, связанные с конкретной ВЛС, направляются к компьютеру и обрабатываются через соответствующий ВСИ этой ВЛС.
Способность создавать виртуальную сетевую топологию позволяет архитекторам приложений создавать по существу любой тип сетевой конфигурации автоматически “на лету”. Для примера, архитектор может определить изоляционные зоны (т.е. “DMZ”) путем дистанционного назначения системы межсетевой защиты для ВЛС, назначая коммутаторы и добавляя серверы к ВЛС внутри данной зоны. Затем приложения могут быть развернуты на одной и той же вычислительной системе, где отдельные серверы содержат множество различных приложений.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Фиг.1 - традиционный центр данных Интернета (ЦДИ, IDC).
Фиг.2 - распределенная вычислительная система с физическими вычислительными ресурсами, которые могут быть автоматически настроены на поддержку одного и более распределенных приложений.
Фиг.3 - уровни платформенной архитектуры для автоматического проектирования, развертывания и управления распределенным приложением на распределенной вычислительной системе.
Фиг.4 - физическая сетевая топология приведенных для примера физических вычислительных ресурсов, которые могут быть использованы для размещения распределенных приложений.
Фиг.5 - виртуальная сетевая топология распределенного приложения, которое может размещаться на физических вычислительных ресурсах по фиг.4.
Фиг.6 - сервер, используемый в виртуальной сетевой топологии по фиг.4, и драйвер ВЛС, реализованной на сервере. Дополнительно фиг.6 показывает используемый менеджер ресурсов для развертывания физических ресурсов для распределенного приложения согласно виртуальной сетевой топологии.
Фиг.7 - процесс формирования виртуальной сетевой топологии из физических вычислительных ресурсов.
ПОДРОБНОЕ ОПИСАНИЕ
Ниже описано формирование виртуальной сетевой топологии для автоматизированного развертывания распределенного программного приложения на физических вычислительных ресурсах. Способность формирования произвольной виртуальной сетевой топологии из физической вычислительной системы обеспечивает создание заказных сетевых топологий для каждого распределенного приложения, которое размещается на той же самой распределенной вычислительной системе. Это особенно полезно для больших центров обработки данных, которые являются сложными и часто содержат множество приложений. Распределенное приложение, установленное в таких центрах, часто имеет сложные требования к организации сети и формированию физической сетевой топологии. Процесс согласования с этими требованиями может быть очень длительным, тяжелым и подверженным человеческим ошибкам. Возможность формирования виртуальной сетевой топологии, которая не требует физической перенастройки вычислительной системы для каждого развернутого приложения (например, новая укладка проводов, физическое подсоединение компьютеров к различным коммутаторам и т.д.), уменьшает зависимость от человеческих действий, сокращая затраты и вероятность человеческой ошибки.
Распределенная вычислительная система
Фиг.2 показывает распределенную вычислительную систему 200, которая по необходимости может быть автоматически развернута для поддержки одного и более распределенных приложений. Распределенная вычислительная система 200 включает совокупность множества серверов 202(1), 202(2), …, 202(N), связанных сетевыми коммутаторами 204. В одной из реализаций сетевые коммутаторы 204 являются не блокирующими Ethernet коммутаторами, но могут использоваться и другие типы коммутаторов. Сеть 204 проиллюстрирована как имеющая множество физических портов P1, P2, …, PN, к которым соответственно подсоединены серверы 202(1)-202(N). Распределенная вычислительная система 200 содержит компьютеры с системой 206 выравнивания нагрузки и один и более компьютеров 208 с межсетевой защитой. Каждый из этих типов отображен подсоединенным к физическим портам PN+1 и PN+2 сетевых коммутаторов 204. Дополнительно помимо систем выравнивания нагрузки и межсетевой защиты распределенная вычислительная система может включать в себя и другие типы устройств специального назначения как кэш сети, акселераторы протоколов защищенных сокетов (SSL), подсоединенные сетевые хранилища (NAS) и т.д.
Распределенная вычислительная система 200 представляется физическими ресурсами, развернутыми в крупномасштабной вычислительной системе типа ЦДИ, в которых размещаются сетевые службы или, в более общем случае, центры обработки данных. Примерный центр обработки данных может включать от сотен до тысяч компьютеров, связанных локальной сетью.
Распределенная вычислительная система 200 также включает в себя один и более серверов 210 формирования виртуальной сетевой топологии, который показан подсоединенным к сетевому коммутатору 204 через физический порт PN+3. Этот сервер 210 дает возможность прикладному архитектору создавать виртуальную сетевую топологию из распределенной вычислительной системы 200, так что множество распределенных приложений могут находиться на одной и той же системе 200. Распределенное приложение - программа, выполнение которой обеспечивается множеством компьютеров, соединенных сетью. Примерами таких приложений служат почтовые услуги, сайты, содержимое баз данных, сетевая торговля, хранилища, новостные и информационные услуги, услуги развлечения и т.д.
Для формирования виртуальной сетевой топологии сервер 210 создает, по меньшей мере, одну виртуальную локальную сеть (ВЛС) для каждого распределенного приложения. Затем сервер 210 направляет выбранные серверы и ассоциированные порты коммутатора на связь их с отдельной ВЛС. Сервер 210 формирования виртуальной сетевой топологии запускает один и более менеджеров 212 ресурсов, которые облегчают развертывание физического ресурса для соответствующих ВЛС, обслуживающих распределенные приложения. Менеджер(ы) 212 ресурсов взаимодействует(ют) с сервером 202, сетевым коммутатором 204, компьютером(ами) 206 выравнивания нагрузки и компьютером(ами) 208 межсетевой защиты, чтобы установить различные ВЛС так, что ассоциированные приложения могут надежно работать в изоляции друг от друга. Менеджер(ы) 212 ресурсов прослеживает(ют) формирование и выделение ВЛС, а также компьютеров, подсоединенных к этим ВЛС. Эта информация может сохраняться в базе данных, обслуживаемой менеджером(ами) 212 ресурсов в серверах 210 формирования виртуальной сетевой топологии. Сервер 210 также допускает настройку топологии приложений. Например, он может создавать изоляционные зоны (DMZ) в рамках приложения, чтобы изолировать критические компоненты.
Есть несколько путей использования виртуальных сетевых топологий. Например, для облегчения автоматизации. Сетевая топология может быть сформирована по запросу без вмешательства оператора, как описано более подробно ниже. Формирование виртуальной топологии также позволяет одной физической сети безопасно содержать множество приложений без их взаимного вмешательства. Формирование виртуальной топологии позволяет прикладному архитектору определять и предписывать отдельные изоляционные зоны для изоляции различных частей приложения. Такие зоны могут быть созданы оперативно за короткое время. Другое возможное использование формирования виртуальной топологии - объединение специализированных аппаратных ресурсов среди разнообразных распределенных приложений. Например, на фиг.2 пул компьютеров с системой выравнивания нагрузки может быть определен и подсоединен к любой точке физической сети. Затем система выравнивания может быть распределена из этого пула и помещена в виртуальную сеть приложения.
Перед описанием формирования виртуальной топологии и автоматического развертывания приложения на физических вычислительных ресурсах в следующем разделе описано формирование платформенной архитектуры поверх физической вычислительной системы. Архитектура предоставляет структуру, в которой могут быть разработаны различные части по автоматическому развертыванию и функции управления.
Архитектура Платформы
На фиг.3 показана платформенная архитектура 300 для автоматизированного проектирования, развертывания и управления распределенными приложениями на распределенной вычислительной системе 200. Архитектура 300 отображает различные уровни поверх базового уровня 302, представляющего физические вычислительные ресурсы распределенной вычислительной системы 200. Уровень 304 услуг автоматического развертывания обеспечивает инструментальные средства для преобразования машин в серверы, используемых в распределенной вычислительной системе 200. Такие инструментальные средства позволяют создание, редактирование и развертывание образов операционных систем (ОС, OS). Удаленное программирование машины выполняется полностью программируемыми интерфейсами, такими как WMI (Windows Management Instrumentation), являющимися программным интерфейсом в операционных системах MS Windows® и позволяющими настраивать и управлять системой и сетевыми устройствами.
Уровень 306 управления сетью находится выше уровня 304 услуг автоматического развертывания. Частично уровень управления сетью поддерживает модель драйвера для сетевых компьютеров, которая облегчает подсоединение отдельных компьютеров к одной и более ВЛС через единый физический сетевой интерфейс, подключенный к связанному порту сетевого коммутатора 204. Согласно модели драйвера ВЛС драйвер устанавливается на сервере и используется для создания ВСИ для каждой ВЛС. ВСИ всегда находятся выше сетевого интерфейса в IP стеке сервера так, чтобы обрабатываемые сервером пакеты проходили через более чем одну ВЛС даже при том, что все пакеты физически передаются через один физический СИ. Более подробно это описано ниже для фиг.6.
Модель драйвера дает возможность настройки ВЛС, помечая порты коммутатора, что позволяет передавать пакеты данных в распределенной вычислительной системе с маркерами (тегами), идентифицирующими ВЛС, к которым принадлежат коммутаторы. Сетевые коммутаторы 204 обусловливают маркировку и принимают только пакеты с маркерами, идентифицирующими определенные ВЛС, к которым принадлежат коммутаторы. В одном из вариантов сетевые коммутаторы 204 могут иметь маркированные и немаркированные порты. Маркированные порты коммутатора помечаются идентификаторами ВЛС и используются для подключения к маркированным портам других коммутаторов. Это обеспечивает быструю передачу пакетов через сеть коммутаторов. Немаркированные порты коммутатора используются для подключения к серверам 202 или компьютерам 206, 208. Когда пакеты достигают порта коммутатора адресованного сервера, маркеры ВЛС удаляются из пакетов до вхождения в серверы, поэтому серверам нет необходимости знать о маркировке.
Уровень управления физическими ресурсами находится над уровнем 306 управления сетью. Уровень 308 управления физическими ресурсами обслуживает физическую модель распределенной вычислительной системы 200, прослеживая принадлежность и координируя выделение всех физических вычислительных ресурсов. Более того, уровень 308 управления физическими ресурсами обслуживает групповое распределение ресурсов, таким образом допуская динамическую конфигурацию и управление физическими вычислительными ресурсами.
Уровень 310 управления логическими ресурсами расположен над уровнем 308 управления физическими ресурсами. Уровень 310 управления логическими ресурсами облегчает распределение логического ресурса, запрашиваемого распределенным приложением. Например, приложение может запросить такие ресурсы, как базы данных, службы выравнивания нагрузки, межсетевую защиту и другие сетевые службы. Уровень 310 управления логическими ресурсами выставляет такие логические ресурсы.
Следующий уровень - уровень 312 модели определения сервиса и выполнения, который обеспечивает описание распределенного приложения и прослеживание ее операций. Модель определения услуг (SDM) обеспечивает именованное пространство, контекст описания операционных процессов и программный интерфейс (API) для анализа приложения и управления ресурсами приложения. Более того, это дает возможность операторам и разработчикам совместно использовать общие представления о приложениях.
Шестой уровень над уровнем 200 вычислительных ресурсов - уровень 314 компонентов. Этот уровень обеспечивает определение многократно используемых строительных блоков распределенного приложения, которые используют интерфейсы программирования приложений SDM для контекста, именования и связывания. Эти блоки упоминаются как "компоненты".
Наивысший уровень - уровень 316 логики операций, который вмещает операционные аспекты распределенного приложения. Логика операций ответственна за запуск сервиса, расширение и сжатие сервиса, обновление и откат, обнаружение ошибок и восстановление и за состояние разделения. Логика операций допускает повторное использование проверенных операционных методов развертывания и приложений. Через использование уровня SDM логика операций имеет контекст для лучшего понимания проблем, которые могут возникать. Например, когда происходит отказ, логика операций может решить, что отказ произошел во внешнем интерфейсе почтовой службы, а не в каком-то сервере в середине помещения.
Виртуальные сетевые топологии
Платформенная архитектура обеспечивает структуру для формирования виртуальной сетевой топологии поверх физических ресурсов так, чтобы одна вычислительная система могла поддерживать множество приложений. ВЛС может быть создана для каждого приложения, которое может выполняться отдельно от других приложений, выполняющихся на распределенной вычислительной системе. Создав однажды виртуальную сетевую топологию, система облегчает автоматизированное развертывание физических ресурсов и подключение к соответствующей ВЛС, чтобы допустить выполнение распределенного приложения.
Фиг.4 показывает физическую сетевую топологию 400, имеющую типичное расположение пяти серверов 402(1)-402(5), связанных через сетевой коммутатор 404. Каждый сервер 402 физически соединен с соответствующим портом P1-P5 сетевого коммутатора 404. Для целей обсуждения принимается, что сетевой коммутатор реализован как один и более Ethernet коммутаторов.
Виртуальная сетевая топология может быть создана для представления распределенных приложений, выполняющихся на физических вычислительных ресурсах 400. В этом типичном исполнении виртуальная сетевая топология создана с использованием Ethernet коммутаторов, ВЛС и ВСИ. Ethernet сети позволяют сегрегацию во множество ВЛС для сетевой изоляции. Узлы ВЛС могут свободно связываться с другими узлами той же ВЛС, но не могут непосредственно обращаться к узлам вне ее. ВЛС могут быть реализованы как ВЛС на основе портов или как ВЛС на основе протокола. В первом случае ВЛС формируются в пределах одного коммутатора, во втором случае ВЛС может охватывать множество коммутаторов. ВЛС, основанные на протоколах, стандартизированы согласно IEEE 802.1Q. Стандарт IEEE 802.1Q описывает маркирование пакетов и поддержку ВЛС. Этот стандарт описывает расширение пакета 802.1Q через маркирующий заголовок, поскольку каждый пакет (кадр) маркируется информацией 802.1Q путем добавления маркирующего заголовка к кадру.
Размещение двух и более компьютеров в ВЛС является физическим эквивалентом подсоединения этих компьютеров к той же самой физической сети. Это свойство расширено до создания произвольной виртуальной топологии поверх физической сети. Предположим, например, что приложение запрашивает три сетевых сервера 402(1), 402(3) и 402(5) и одну базу данных на сервере 402(2). Кроме того, пусть прикладной архитектор заинтересован в безопасности и хотел бы разместить сетевые серверы 402(1), 402(3) и 402(5) в одной изоляционной зоне, а сервер базы данных 402(2) в другой и соединить обе изоляционные зоны с системой межсетевой защиты.
Фиг.5 показывает виртуальную сетевую топологию 500, которая может быть сформирована из физических ресурсов 400 из фиг.4, для достижения целей прикладных архитекторов. Виртуальная сетевая топология 500 имеет две ВЛС: WEB VLAN (ВЛС глобальной сети) 502 и DB VLAN (ВЛС базы данных) 504. Сетевые серверы 402(1), 402(3) и 402(5) помещены в ВЛС 502, а сервер базы данных 402(2) помещен в ВЛС 504. Система межсетевой защиты развернута на сервере 402(4), который соединен с ВЛС 502 и ВЛС 504. Система межсетевой защиты 402(2) создает две изоляционные зоны для приложений, представленных DMZWeb 506 и DMZDB 508.
В этом примере сервер 402(4) межсетевой защиты является членом двух ВЛС. Однако сервер имеет только один физический интерфейс для подключения к порту P4 сетевого коммутатора 404. Чтобы обеспечить возможность отдельному физическому интерфейсу обслуживать две ВЛС, на сервере 402(4) устанавливается драйвер ВЛС для создания двух ВСИ таким образом, что физический СИ соединяется с двумя ВЛС. С точки зрения сервера, каждый ВСИ проявляется как физическое подсоединение к отдельной сети.
Фиг.6 показывает сервер 402(4) межсетевой защиты более подробно. Он реализует драйвер 602 ВЛС, который установлен в стеке протоколов между драйвером 604 СИ и IP-драйвером 606. В одном из вариантов драйвер 602 ВЛС загружается и устанавливается менеджером 212 ресурсов. Драйвер 604 СИ может обрабатывать весь трафик пакетов через физическое соединение к порту P4 коммутатора 404. Драйвер 602 ВЛС привязывается к физическому сетевому интерфейсу и создает один и более ВСИ над каждым физическим сетевым интерфейсом. Каждый ВСИ уникально идентифицирует ВЛС. В этом примере ВЛС 602 создает два ВСИ: ВСИ ВЛСWeb 608 для Web-ВЛС 502 и ВСИ ВЛСDB 610 для DB ВЛС 504 базы данных.
Выходящие пакеты, предназначенные для конкретной ВЛС, маркированы идентификатором соответствующей ВЛС, связанной с ВСИ. Приложение выбирает соответствующую ВЛС, непосредственно привязываясь к определенному ВСИ. Затем пакеты посылаются по физическому интерфейсу сетевому коммутатору. Коммутатор проверяет маркер ВЛС и устанавливает, с какой ВЛС связан пакет. Аналогично маркированы входящие пакеты. Соответствующий ВСИ получает пакеты, удаляет маркер и пропускает пакеты дальше к IP-драйверу для использования в соответствующем приложении. Это позволяет серверу с одним физическим СИ участвовать в нескольких ВЛС.
Сервер 210 формирования виртуальной сетевой топологии показан подсоединенным к коммутатору 404. Используя методы дистанционного программирования, этот сервер 210 может загрузить и установить драйвер ВЛС на сервере межсетевой защиты (если он еще не существует) и затем выдать команды для создания ВСИ для виртуальной сетевой топологии. Отметим, что если сервер является членом только одной ВЛС (например, сетевые серверы 402(1), 402(3), 402(5) и сервер 402(2) базы данных), то нет никакой потребности устанавливать драйвер 602 ВЛС или создавать ВСИ. Сетевой интерфейс может определять соответствующее физическое подключение к порту коммутатора, и порт коммутатора может быть настроен с соответствующим ВЛС членством, направляя весь трафик к/от сервера через ВЛС. С другой стороны, нет никаких препятствий к установке ВЛС драйвера и создания отдельного ВСИ, даже если сервер используется только для одной ВЛС.
Для некоторых специализированных устройств менеджер ресурсов не способен устанавливать на них ВСИ. Однако эти устройства еще могут быть запрограммированы для конкретной ВЛС. Некоторые устройства оснащены множеством физических портов. Каждый из этих физических портов может быть сделан членом различных ВЛС путем программирования портов коммутатора, с которыми эти устройства связаны. Для других специализированных устройств менеджер ресурсов программирует их через специфические для устройства драйверы для размещения соответствующего порта на конкретной ВЛС. Это похоже на указание порту коммутатора быть членом конкретной ВЛС.
Формирование виртуальных сетевых топологий
Фиг.7 отображает процесс 700 формирования виртуальной сетевой топологии, чтобы обслуживать распределенное приложение и развертывать для него ресурсы. Процесс 700 показан последовательностью блоков, которые представляют операции, выполняемые различными компьютерами в вычислительной системе 200. Операции могут быть реализованы программным обеспечением, которое может выполняться на различных компьютерах. Также блоки представляют команды, сохраненные на читаемых компьютером носителях и которые могут быть выполнены процессором для исполнения связанных операций.
В блоке 702 прикладной архитектор проектирует виртуальное размещение распределенного приложения, которое будет развернуто на распределенной вычислительной системе 200. Виртуальное размещение определяет, какие компоненты используются и как они связаны. Например, чтобы проектировать приложение, иллюстрированное на фиг.5, архитектор должен определить компоненты для сетевых серверов, серверы базы данных, системы межсетевой защиты и связь между этими компонентами.
В блоке 704 система определяет физические ресурсы, которые будут распределены для обработки различных компонентов распределенного приложения. Система решает, например, сколько серверов должно быть развернуто для обслуживания приложения. Это решение частично основано на введенных данных архитектором, указывающим такие параметры, как размер службы, сколько пользователей ожидается и т.д.
После того как архитектура приложения и экземпляры компонентов приложения определены, менеджер 212 ресурсов реализуется на сервере 210 формирования виртуальной сетевой топологии с использованием ВЛС и ВСИ, чтобы реализовать отображение виртуальной сетевой топологии в физическую сеть. В блоке 706 сервер 210 формирования виртуальный сетевой топологии создает, по меньшей мере, одну ВЛС для каждого приложения. Виртуальная сетевая топология одного приложения может использовать более одной ВЛС, чтобы установить несколько изоляционных зон, что приведено для виртуальной сетевой топологии 500 на фиг.5. В этом примере сервер 210 формирования виртуальной сетевой топологии формирует две ВЛС: ВЛС 502 Web и ВЛС 504 базы данных. Сетевые серверы 402(1), 402(3), 402(5) изолированы от сервера 402(2) базы данных путем создания двух изоляционных зон DMZWeb 506 и DMZDB 508.
В блоке 708 менеджер 212 ресурсов на сервере 210 формирования виртуальной сетевой топологии развертывает физический вычислительный ресурс для соответствующих ВЛС. Другими словами, менеджер 212 ресурсов назначает физические ресурсы из физической сети 400 (фиг.4) для обслуживания виртуальной сетевой топологии приложения. Это развертывание включает две подоперации, обозначенные как блоки 708(1) и 708(2) на фиг.7.
В блоке 708(1) менеджер 212 ресурсов назначает внешний порт сетевых коммутаторов 404 (т.е. порт, который подсоединен к серверу) к указанной ВЛС, к которой принадлежит сервер. Настройки внешнего порта коммутатора позволяют ему быть членом более чем одной ВЛС.
В блоке 708(2) менеджер 212 ресурсов создает ВСИ на сервере для обеспечения информационного обмена по указанной ВЛС, так что сервер может стать членом ВЛС. Отметим, что эта операция необязательна, если сервер - член только одной ВЛС (например, сетевые серверы 402(1), 402(3), 402(5) и сервер 402(2) базы данных). В этом случае настройка порта коммутатора с ВЛС членством адекватна, потому что сервер будет осуществлять связь только посредством одной ВЛС. Коммутатор предполагает, что весь трафик от сервера предназначен для одной настроенной ВЛС. Когда сервер является членом двух и более ВЛС (например, сервер 402(4) межсетевой защиты), на сервере устанавливается ВЛС драйвер. ВЛС драйвер связывается с физическим сетевым интерфейсом и создает два и более ВСИ поверх физического. Каждый виртуальный сетевой интерфейс представляет уникальную идентификацию ВЛС. Коммутатор проверяет маркер ВЛС и устанавливает, с какой ВЛС связан пакет.
Физические вычислительные ресурсы продолжают использоваться таким способом с двумя операциями, пока приложение не будет полностью установлено, как представлено блоком 710 решений.
Чтобы проиллюстрировать развертывание физических ресурсов, рассмотрим, как менеджер 212 ресурсов развертывает компьютеры для виртуальной сетевой топологии 500 по фиг.5. Этот процесс будет описан со ссылками на фиг.5 и 6. Первоначально, две ВЛС: ВЛС 502 Web и ВЛС 504 базы данных - формируются операцией 706. Затем, предположим, что менеджер 212 ресурсов решает добавить сервер 402(4) межсетевой защиты к ВЛС 502 Web, чтобы определить изоляционную зону DMZWeb 506. Менеджер 212 ресурсов сообщает коммутатору 404, что нужно установить для порта 4 ссылку на ВЛС 502 Web, как показано на фиг.6, добавлением идентификации "VLANWeb" к порту 4. Это представляется операцией 708(1) в процессе 700. Коммутатор 404 теперь понимает, что это - часть изоляционной зоны DMZWeb 506. Затем менеджер 212 ресурсов направляет драйвер 602 ВЛС на сервер 402(4) межсетевой защиты, чтобы создать ВСИ для ВЛС Web, это показано как ВСИ-ВЛСWeb 604. В процессе 700 это представлено операцией 708(2). Пакеты, пропускаемые через ВСИ-ВЛСWeb 604, отмечены идентификацией VLANWeb и корректно передаются коммутатором 404 по ВЛС 502 Web.
Теперь предположим, что менеджер 212 ресурсов добавляет тот же самый сервер 402(4) межсетевой защиты к ВЛС 504 базы данных, чтобы определить другую изоляционную зону DMZDB 508. Менеджер 212 ресурсов сообщает коммутатору 404, что нужно установить в порт 4 дополнительно ссылку на ВЛС 504 базы данных, что проиллюстрировано на фиг.6 добавлением идентификации "VLANDB" к порту 4. В процессе 700 это опять представляется операцией 708(1). Коммутатор 404 теперь также является частью изоляционной зоны DMZDB 508 и будет принимать пакеты с идентификацией VLANDB. Затем менеджер 212 ресурсов выдает команду драйверу 602 ВЛС в сервере 402(4) межсетевой защиты, чтобы создать второй ВСИ, но на этот раз для ВЛС базы данных, что проиллюстрировано на фиг.6 как ВСИ-ВЛСDB 606. Это другое представление операции 708(2) в процессе 700. Пакеты, пропускаемые через ВСИ-ВЛСDB 606, помечены идентификацией VLANDB и корректно маршрутизируются коммутатором 404 по ВЛС 504 базы данных.
Процесс может быть повторен для соединения каждого сетевого сервера 402(1), 402(3) и 402(5) к ВЛС 502 Web и сервера базы данных к ВЛС 504 базы данных. Как отмечалось выше, добавление этих серверов может быть выполнено простой настройкой соответствующих коммутационных портов P1, P2, P3 и P5 на соответствующее ВЛС членство. Нет нужды создавать ВСИ на серверах, так как серверы в данный момент являются частью одной ВЛС.
Иллюстративные интерфейсы программирования приложений (API) менеджера ресурсов
Следующий раздел предоставляет приведенный для примера набор API, обеспечиваемых менеджером 212 ресурсов (МР, RM) для удаленной настройки коммутаторов и серверов. API используются для установки ВЛС, подключения коммутаторов к соответствующим ВЛС и создания ВСИ на серверах для облегчения информационного обмена по связанным ВЛС, таким образом реализуя отображение топологий виртуальной сети на физические сетевые ресурсы. Отметим, что это отображение топологии выполняется с использованием внутриполосных методов по существующей сети, а не с использованием специализированной внеполосной сети. Соответственно существует возможность соединения по умолчанию, с которого все начинается. Таким образом, обеспечивается основа для настройки новых ВЛС по необходимости.
Формирование и отмена виртуальных топологий облегчается следующими основными сетевыми методами, предоставляемыми МР:
AllocateVlan() ConstructVlan()
AttachCumputerToVlan()
DetachComputerFromVlan()
ReleaseVlan()
Далее перечисляются примерные интерфейсы, предоставляемые МР, включая обсуждение этих пяти сетевых методов:
Register
///<summary>
///Регистрация менеджера ресурсов с последующим выполнением его на машине
///“runtimeAddress”.
///</summary>
///<param name=”runtimeAddress”> IP адрес машины. </param>
///<returns> Возвращает экземпляр компонента этого менеджера ресурсов. </returns>
///<remarks>
///При повторном вызове метода возвращается только экземпляр компонента этого менеджера
///ресурсов.
///</remarks>
[WebMethod(Description=”Регистрирует менеджера ресурсов из рабочего цикла.”)]
public void Unregister(string runtimeAddress)
Unregister
///<summary>
/// Удалить регистрацию этого менеджера ресурсов из рабочего цикла машины “runtimeAddress”.
///</summary>
///<param name=”runtimeAddress”> IP адрес рабочего цикла, регистрация из которого будет ///удалена. </param>
///<remarks>
/// Ничего не делает при повторном вызове.
///</remarks>
[WebMethod(Description=”Удаляет регистрацию менеджера ресурсов из рабочего цикла.”)]
public void Unregister(string runtimeAddress)
RegisterComputer
///<summary>
///Зарегистрировать компьютер и его отношения с сетевыми устройствами (обычно
/// коммутаторы) сетевым менеджером ресурсов.
///</summary>
///<param name="computer”> Информация о регистрируемом компьютере. </param>
/// <remarks>
///Компьютер должен быть зарегистрирован до выполнения любых операций на нем (требующих
///параметр 'computerId').
///
///"Управляемый" компьютер - компьютер, содержащий драйвер маркера VLAN, и
///сетевой менеджер ресурсов (СМР, NRM) имеет разрешение обновлять виртуальный интерфейс
///компьютера и IP адресацию. В противном случае неуправляемый компьютер
///перемещается в указанную VLAN и недоступен (вызывающий должен создать
///надлежащий виртуальный интерфейс на компьютере).
///</remarks>
[WebMethod(Description=”Регистрация компьютера сетевым менеджером ресурсов.”)]
public void RegisterComputer(NrmComputer computer)
RegisterDevice
///<summary>
/// Регистрация сетевого устройства сетевым менеджером ресурсов.
///</summary>
///<param name="device”>Информация о регистрируемом устройстве.</param>
///<remarks>
///Устройство должно быть зарегистрировано до выполнения любых операций на нем. При ///регистрации устройство будет подсоединено, и будет получена информация о
///программных настройках.
</remarks>
[WebMethod(Description=”Регистрация сетевого устройства сетевым менеджером ресурсов.”)]
public void RegisterDevice(NrmDevice device)
UnregisterComputer
///<summary>
///Удаление регистрации компьютера из сетевого менеджера ресурсов.
///</summary>
///<param name="computer”> Идентификатор компьютера, регистрация которого удаляется. </param>
///<param name="force”> Принудительное автоматическое освобождение всех
///содержащихся сетевых ресурсов. </param>
///<remarks>
///Перед этим компьютер должен быть зарегистрированным, а все используемые сетевые
///ресурсы должны быть освобождены перед удалением регистрации.
///Флаг “force” очистит базу данных от всех ссылок на устройство без попытки связи с этим
/// устройством.
///</remarks>
[WebMethod(Description=”Удаление регистрации компьютера из сетевого менеджера ресурсов.”)]
public void UnregisterComputer(long computerId, bool force)
UnregisterDevice
///<summary>
///Удаление регистрации устройства из сетевого менеджера ресурсов.
///</summary>
///<param name="deviceId”> Идентификатор устройства, регистрация которого удаляется. </param>
///<param name="force”> Принудительное автоматическое освобождение всех
///используемых сетевых ресурсов. </param>
///</remarks>
///Устройство должно быть предварительно зарегистрировано и все удерживаемые сетевые ресурсы освобождены перед отменой регистрации
///
///Флаг 'force' очистит базу данных от любых ссылок на устройство без попытки связи с этим
///устройством.
///</remarks>
[WebMethod(Description=”Удаление регистрации сетевого устройства из сетевого менеджера ресурсов.”)]
public void UnregisterDevice(long deviceId, bool force)
AllocateVlan
///<summary>
///Распределяет новую VLAN из базы данных сетевых ресурсов, если она доступна и
///поддерживается этим сетевым окружением. В случае успеха распределенная VLAN
///регистрируется с идентификацией владельца.
///</summary>
///<param name="ownerId”> Идентификация владельца выделенного ресурса. </param>
///<returns> Возвращает VLAN идентификатор новой распределенной VLAN. </returns>
///<remarks>
///Распределение выполняется только в базе данных сетевых ресурсов и не влияет на
///сеть. Необходим вызов 'ConstructVlan' для создания текущей VLAN в сетевом
///окружении.
///</remarks>
[WebMethod(Description=”Распределение VLAN”)]
///<algorithm>
///Предшествующее состояние:
///Число доступных VLAN в пределах сетевой структуры определяется тремя факторами:
///типом и конфигурацией физических коммутаторов, числом зарезервированных VLAN
///для внутреннего использования и предыдущими операциями распределения VLAN. В
///настоящее время текущий теоретический диапазон VLAN от 1 до 4095, фактическое
///число может быть ограничено реализацией VLAN на коммутаторе. Например,
///коммутатор может поддерживать диапазон только от 1 до 1001 с максимальным ///распределением VLAN 256. Информация об архитектуре коммутатора, резервные VLAN
///для внутреннего использования и уже распределенные VLAN прослеживаются в
///постоянной базе данных.
///
///Описание:
/// 1. Проверка правильности параметра. OwnerId должен быть не нулевым.
/// 2. Блокировка базы данных от транзакций.
/// 3. Проверка базы данных на наличие возможности распределения новой VLAN без ///превышения разрешенного максимума текущей сетевой структурой.
/// 4. Если распределение VLAN запрещено, то вызвать исключение и удалить блокировку базы
/// данных.
/// 5. Создать новую строку в базе данных, которая будет представлять запись
///распределенной VLAN. Идентификатор VLAN определяется линейным просмотром записей ///существующих VLAN для нахождения первого доступного (не распределенного) идентификатора.
/// 6. Совершить транзакцию.
/// 7. Возвратить идентификатор распределенной VLAN вызывающему.
///</algorithm>
public int AllocateVlan(long ownerId)
AllocateVlanWithId
///<summary>
///Распределяет конкретную VLAN, запрашиваемую из базы данных сетевых ресурсов,
///если она доступна и поддерживается этим сетевым окружением. В случае успеха
///распределенная VLAN помечается идентификацией владельца.
///</summary>
///<param name="ownerId”>Идентификатор владельца распределенного ресурса.</param>
///<param name="vlanId”>Идентификатор распределяемой VLAN. </param>
///<remarks>
///Распределение выполняется только в базе данных сетевых ресурсов и не влияет на сеть.
///Необходим вызов 'ConstructVlan' для создания текущей VLAN в сетевом
///окружении. Невозможно распределение VLAN по умолчанию.
///</remarks>
[WebMethod(Description=”Распределение конкретной VLAN.”)]
public void AllocateVlanWithId(long ownerId, int vlanId)
ConstructVlan
///<summary>
///Формирует ранее распределенную VLAN путем создания записи новой VLAN в
///сетевой аппаратуре (коммутаторы) и обновления состояния записи сетевой VLAN в
///базе данных.
///</summary>
///<param name="vlanId”>Идентификатор формируемой VLAN. </param>
///<remarks>
///VLAN должна быть успешно создана методом “AllocateVlan”.
///</remarks>
///<devdoc>
[WebMethod(Description=”Формирование предварительно распределенной VLAN”)]
///<algorithm>
///Предшествующее состояние:
///Идентификатор формируемой VLAN был выделен предшествующим вызовом метода
///AllocateVlan (), который резервирует идентификатор VLAN в постоянной базе данных. Все
///сетевые коммутаторы определены в базе данных и доступны для конфигурации.
///
///Описание:
/// 1. Блокировка базы данных от транзакций.
/// 2. vlanId должен существовать в базе данных в состоянии “распределена”.
/// 3. Для каждого коммутатора в базе данных распределить VLAN идентификатор для
///коммутатора с использованием специфического для устройства драйвера для коммутатора.
/// 4. Обновить состояние VLAN на “cформирована” в базе данных.
/// 5. Совершить транзакцию.
///</algorithm>
public void ConstructVlan(int vlanId)
AttachComputerToVlan
///<summary>
///Подсоединяет компьютер к VLAN и обновляет его виртуальный интерфейс и адресацию,
///если управляем.
///</summary>
///<param name="computerId”> Идентификатор подсоединяемого компьютера. </param>
///<param name="vlanId”> VLAN идентификатор для порта подсоединения. </param>
///<param name="tagged”> VLAN является маркированной и требует VLAN
///драйвер. </param>
///<param name="managed”> Целевой компьютер является управляемым. </param>
///<returns>
///Возвращается IP адрес и маска подсети, используемой для доступа к компьютеру в
///указанной VLAN.
///</returns>
///<remarks>
///Подсоединение к VLAN, заданной по умолчанию, невозможно. Отсоединение компьютера
/// от всех VLAN установит его в VLAN, заданную по умолчанию.
///
///Если аргумент " tagged" равен true (“истинно”), то компьютер будет присоединен к
///VLAN, указанной в режиме маркировки. Для этого требуется использование
///компьютером виртуального VLAN драйвера для создания виртуального интерфейса,
///для VLAN, чтобы она имела доступ к сети. Компьютер может существовать во множестве
///маркированных VLAN, и только в одной немаркированной. Невозможно смешивать
///маркированные и немаркированные VLAN.
///
///“Управляемый” компьютер - компьютер, содержащий драйвер маркированной VLAN
///(драйвер маркера VLAN), и сетевой менеджер ресурсов имеет разрешение
///изменять виртуальный интерфейс компьютера и IP адресацию. В противном случае, ///неуправляемый компьютер помещается в указанную VLAN и становится недоступным.
///Если аргумент 'managed' сеть “true”, то и аргумент 'tagged' должен быть “true”. Если
///аргумент “managed” есть “false”, а аргумент “tagged” - “true”, то вызывающий должен
///создать виртуальный интерфейс на компьютере.
///</remarks>
[WebMethod(Description=”Подсоединение компьютера к указанной VLAN.”)]
///<algorithm>
///Предшествующее состояние:
///
///Подсоединяемый компьютер зарегистрирован в СМР для обеспечения данных
/// о проводном соединении между физическими СИ на компьютере и подсоединенным
///портом коммутатора. Указанная VLAN успешно сформирована.
///
/// Описание:
/// 1. Блокировка базы данных от транзакций.
/// 2. computerId должен существовать в базе данных с подробными данными о топологии.
/// 3. vlanId должен существовать в базе данных в состоянии “сформирована”.
/// 4. Добавление нового ВСИ на указанный компьютер для предоставленной VLAN
/// идентификатора, используя удаленный вызов.
/// 5. Для каждого коммутатора в базе данных привязка порта коммутатора, физически
///связанного с компьютером, к VLAN идентификатору, используя специфический для устройства ///драйвер для коммутатора.
/// 6. Добавление новой записи “подсоединен” в базу данных, чтобы указать связь компьютера
///с VLAN.
/// 7. Совершить транзакцию.
///<algorithm>
public string AttachComputerToVlan(long computerId, in vlanId, bool tagged, bool managed)
DetachComputerFromVlan
///<summary>
///Отcоединить компьютер от VLAN.
///</summary>
///<param name="vlanId”> Идентификатор VLAN, от которой отсоединяется компьютер.
///</param>
///<param name="computerId”> Идентификатор отсоединяемого компьютера. </param>
///<param name="managed”> Целевой компьютер - управляемый. </param>
///<remarks>
/// Невозможно отсоединение от VLAN, заданной по умолчанию. Если флаг управляемости
///установлен, то сетевой менеджер ресурсов требует удаленного доступа к драйверу
///маркера VLAN, и ВСИ этой VLAN будет удален с указанного компьютера. Если удаленный
///компьютер потерпел неудачу, установить параметр “managed” как “false”.
///</remarks>
[WebMethod(Description=”Отсоединить компьютер от указанной VLAN.”)]
///<algorithm>
///Предшествующее состояние:
///подсоединенный компьютер зарегистрирован СМР для обеспечения информации о
///проводном соединении между физическим СИ на компьютере и портом коммутатора, к которому
/// он подсоединен. Идентификатор VLAN успешно сформирован. Компьютер
///подсоединен к VLAN предшествующим вызовом метода AttachComputerToVlan.
///
/// Описание:
/// 1. Блокировка базы данных от транзакций.
/// 2. computerId должен существовать в базе данных с детальными данными о топологии.
/// 3. vlanId должен существовать в базе данных в состоянии “сформирована”.
/// 4. Запись “подсоединен” должна существовать в базе данных.
/// 5. Для каждого коммутатора в базе данных отсоединить порт коммутатора, физически
///связанного с компьютером (с идентификатором VLAN), используя специфический для устройства
/// драйвер для коммутатора.
/// 6. Используя удаленный вызов, удалить ВСИ на указанном компьютере для
///предоставленного идентификатора VLAN.
/// 7. Удалить запись “подсоединен” из базы данных, чтобы обозначить, что больше не существует ///связи компьютера с VLAN.
/// 8. Совершить транзакцию.
///<algorithm>
public void DetachComputerFromVlan(long computerId, int vlanId, bool managed)
AttchComputerToExternal
///<summary>
///Подсоединить компьютер к внешней VLAN и обновить его виртуальный интерфейс и
///адресацию, если он управляем.
///</summary>
///<param name="computerId”>Идентификатор подсоединяемого компьютера.</param>
///<param name="tagged”> VLAN маркирована и необходим VLAN драйвер.
///</param>
///<param name="managed”>Целевой компьютер управляемый. </param>
///<returns>
///Возвращает IP адрес и маску подсети, используемые для доступа к компьютеру в
///указанной VLAN.
///</returns>
///<remarks>
///Если аргумент “tagged” есть “true”, то компьютер будет подсоединен к VLAN указанной в
///маркированном режиме. При этом от компьютера требуется использование
///виртуального VLAN драйвера для создания виртуального интерфейса той VLAN для
///доступа к сети. Компьютер может существовать в нескольких маркированных VLAN, но
///только в одной немаркированной VLAN. Невозможно смешивать маркированные и
///немаркированные VLAN.
///
///”Управляемый” компьютер - компьютер, содержащий драйвер маркера VLAN, и сетевой
///менеджер ресурсов имеет разрешение изменять виртуальный интерфейс компьютера
///и IP адресацию. Если компьютер неуправляемый, то он перемещается в указанную
///VLAN и остается недоступным. Если аргумент “managed” есть “true”, то аргумент
/// “tagged” должен быть “true”. Если “managed” есть “false” и “tagged” есть “true”, то
///вызывающий должен создать виртуальный интерфейс на компьютере.
///</remarks>
[WebMethod(Description=”Подсоединение компьютера к внешней VLAN.”)]
public string AttchComputerToExternal(long computerId, bool tagged, bool managed)
DetachComputerFromExternal
///<summary>
///Отсоединение компьютера от внешней VLAN.
///</summary>
///<param name="computerId”>Идентификатор отсоединяемого компьютера. </param>
///<param name="managed”>Целевой компьютер управляем.</param>
///<remarks>
/// Если флаг 'managed' установлен, СМР требует удаленного доступа к драйверу маркера
///VLAN, и виртуальный интерфейс VLAN будет удален с указанного компьютера. Если
///удаленный компьютер потерпел неудачу, установить параметр “managed” в “false”.
///</remarks>
[WebMethod(Description=”Отcоединить компьютер от внешней VLAN.”)]
public void DetachComputerFromExternal(long computerId, bool managed)
ReleaseVlan
///<summary>
///Освободить ранее выделенные созданные ресурсы. Если ресурс VLAN использован при ///формировании, то он удаляется из сетевой структуры.
///</summary>
///<param name="vlanId”> Идентификатор освобождаемой VLAN. </param>
///<remarks>
///VLAN должна быть успешно создана методом “AllocateVlan”.
///</remarks>
///<devdoc>
[WebMethod(Description=” Освободить ранее выделенные/сформированные VLAN.”)]
///<algorithm>
///Предшествующее состояние:
///VLAN идентификатор был успешно сформирован. Ни одна запись
///подсоединенного компьютера не ссылается на этот VLAN идентификатор.
///
/// Описание:
/// 1. Блокировать базу данных от транзакций.
/// 2. vlanId должен существовать в базе данных в состоянии ”cформирован”.
/// 3. Для каждого коммутатора в базе данных удалить VLAN идентификатор,
///используя специфический для устройства драйвер коммутатора.
/// 4. Удалить VLAN запись из базы данных для указания, что идентификатор VLAN
///больше не распределен.
/// 5. Совершить транзакцию.
///</algorithm>
public void ReleaseVlan (int vlanId)
ReleaseComputerToDiscovery
///<summary>
///Освобождает все сетевые ресурсы компьютера и возвращает компьютер
///обратно в “обнаруженную” VLAN. Возвращается IP адрес компьютера.
///</summary>
///<param name="computerId”>Идентификатор компьютера в аппаратном менеджере ресурсов
///(HRM). </param>
///<param name="managed”>Целевой компьютер управляемый.</param>
///<returns>IP адрес компьютера обнаруженной VLAN.
///</returns>
///<remarks>
///Если компьютер имел, по меньшей мере, одну созданную VLAN, то возвращается статический ///IP-адрес, установленный СМР, иначе возвращается исходный IP, предоставляемый аппаратным ///менеджером ресурсов.
///</remarks>
///<devdoc>
/// Этот код был написан для поддержки заводского обслуживания компьютера, для возврата ///компьютера обратно в обнаруженную VLAN, чтобы разрешить удаленную перегрузку компьютера и принудительно
///выполнять PXE (предзагрузочный код).
///</devdoc>
[WebMethod(Description=”Освободить компьютер для обнаруженной сети.”)]
public string ReleaseComputerToDiscovery(long computerId, bool managed)
ReleaseResourcesByOwner
///<summary>
///Освободить все сетевые ресурсы, связанные с указанным владельцем.
///</summary>
///<param name="ownerId”>Объект, представляющий владельца ресурсов. </param>
///<devdoc>
[WebMethod(Description=”Освободить все сетевые ресурсы указанного владельца.”)]
public void ReleaseResourcesByOwner(long ownerId)
ReleaseResourcesByComputer
///<summary>
///Освободить все сетевые ресурсы, связанные с указанным компьютером.
///</summary>
///<param name="computerId”>Идентификатор компьютера.</param>
///<param name="managed”>Целевой компьютер управляемый. </param>
///<remarks>
///Освободить все VLAN, подсоединенные к данному компьютеру. Обычно используется
///логикой очищения для удаления компьютера из сети. Если флаг “managed” установлен,
///СМР требует удаленного доступа к драйверу маркера VLAN, и все созданные
///виртуальные интерфейсы VLAN будут удалены с указанного компьютера. Если
///на удаленном компьютере произошла ошибка, установить параметр “managed” в “false”.
///</remarks>
[WebMethod(Description=” Освободить все сетевые ресурсы указанного владельца.”)]
Public void ReleaseResourcesByComputer(long computerId, bool managed)
QueryConfiguration
///<summary>
///Возвращает информацию о конфигурации СМР.
///</summary>
///<returns>Значение NrmConfiguration.</returns>
[WebMethod(Description=”Запрос параметров настройки.”)]
public NrmConfiguration QueryConfiguration()
QueryComputer
///<summary>
///Возвращает информацию указанного зарегистрированного сетевого компьютера.
///</summary>
///<returns> Значение NrmComputer.</returns>
[WebMethod(Description=”Запрос о зарегистрированном сетевом компьютере.”)]
public NrmComputer QueryComputer()
QueryComputerIpAddress
///<summary>
///Запрос IP адреса компьютера в указанной VLAN.
///</summary>
///<param name="computerId”>Идентификатор запрашиваемого компьютера.</param>
///<param name="vlanId”> VLAN идентификатор для запроса IP адреса. </param>
///<returns>
///Возвращает IP адрес для доступа в указанной VLAN.
///</returns>
///<remarks>
///Для каждой VLAN, компьютер, присоединенный к ней, должен иметь фиксированный
///(статический) IP адрес для удаленного доступа к нему через указанную VLAN.
///</remarks>
[WebMethod(Description=” Запрос IP адреса компьютера в указанной VLAN.”)]
public string QueryComputerIpAddress(long computerId, int vlanId)
QueryComputers
///<summary>
///Возвращает все зарегистрированные сетевые компьютеры базой данных СМР.
///</summary>
///<returns>Массив значений NrmComputer.</returns>
[WebMethod(Description=”Запрос обо всех зарегистрированных сетевых компьютерах.”)]
public NrmComputer[] QueryComputers()
QueryDevice
///<summary>
///Возвращает информацию об указанном зарегистрированном сетевом устройстве.
///</summary>
///<returns> Значение NrmDevice
///</returns>
[WebMethod(Description=”Запрос о зарегистрированном сетевом устройстве.”)]
public NrmDevice QueryDevice(long deviceId)
QueryDevice
///<summary>
///Возвращает все зарегистрированные сетевые устройства в базе данных СМР.
///<summary>
///<returns>Массив значений NrmDevice.</returns>
///<remarks>Типовое использование для диагностики и/или инструментальных средств ///администратора. </remarks>
[WebMethod(Description=”Запрос обо всех зарегистрированных сетевых компьютерах.”)]
public NrmDevice [] QueryDevices()
QueryExternalVlanId
///<summary>
///Возвращает идентификатор внешней VLAN.
///</summary>
///<returns> Возвращает идентификатор внешней VLAN.</returns>
[WebMethod(Description=”Запрос идентификатора внешней VLAN.”)]
public int QueryExternalVlanId()
QueryVlans
///<summary>
///Возвращает статус всех распределенных VLAN.
///</summary>
///<returns> Набор данных строк NetworkVlan.</returns>
///<remarks>Типовое использование для диагностики и/или инструментальных средств ///администратора.
///</remarks>
[WebMethod(Description=”Запрос дескриптора ресурса распределенной VLAN.”)]
public DataSet QueryVlans()
UpdateComputerToStatic
///<summary>
///Изменить виртуальный интерфейс VLAN-0 из DHCP состояния, заданного по
///умолчанию на использование IP адреса. Эта команда очень специфична в
///последовательности настройки сети для нового отображенного “управляемого”
///компьютера, выполняющего виртуальный драйвер VLAN/MUX.
///</summary>
///<param name="computerId”> Идентификатор компьютера для изменения. </param>
///<remarks>
///Для поддержки отображающей среды PXE/ADS новые компьютерные узлы
///выполняют PXE загрузку и отображаются в немаркированную VLAN, используя DHCP
///для получения своего IP адреса. Чтобы обеспечить СМР методом доступа к
///компьютерному узлу в более позднее время (при удалении всех VLAN), DHCP адрес
///изменяется на статический IP адрес в допустимом диапазоне адресов.
///
///Номер VLAN, используемый для генерации IP адреса, соответствует “статической” VLAN и ///определяется в записи настройки глобальной сети в базе данных. Из-за охвата “статической” ///VLAN множества диапазонов адресов используется маска меньшей подсети, которая также ///определяется в записи настройки глобальной сети в базе данных.
///
///Этот вызов не может использовать DHCP адрес для доступа к компьютеру, вместо
///этого должен использоваться созданный ранее ВСИ.
///</remarks>
[WebMethod(Description=”Изменить для компьютера с DHCP на статический IP в VLAN-0.”)]
public void UpdateComputerToStatic(long computerId)
Status
///<summary>
///Используется внешними услугами для получения текущего статуса данной сетевой услуги.
///</summary>
///<returns> 0 для нормального статуса, 1 для незарегистрированного.</returns>
///<remarks>
///Используется службой наблюдения для проверки наличия.
///</remarks>
[WebMethod(Description=”Текущий статус данного сетевого сервиса.”)]
public int Status()
Выводы
Хотя изобретение было описано языком, специфическим для структурных особенностей и/или методологических действий, должно быть понятно, что изобретение, определенное в прилагаемых пунктах формулы изобретения, не обязательно ограничено конкретными признаками или описанными действиями. Напротив, конкретные признаки и действия раскрыты как иллюстративные формы реализации изобретения. Кроме того, эти пункты формулы иллюстрируют возможный объем и сущность изобретения, и множество комбинаций и подкомбинаций описанных признаков станут предметом защиты в формулах изобретения многих патентных заявок, которые будут разработаны на основе этой предварительной заявки.

Claims (3)

1. Способ формирования виртуальной сетевой топологии для распределенных приложений, заключающийся в том, что
с помощью вычислительного устройства создают по меньшей мере одну виртуальную локальную сеть (ВЛС) для распределенной сети с использованием программного интерфейса операционной системы, и
осуществляют с помощью вычислительного устройства автоматизированное дистанционное развертывание распределенного приложения на распределенной вычислительной системе, содержащей множество компьютеров и сетевых коммутаторов согласно виртуальной сетевой топологии, без переконфигурирования физических соединений распределенной вычислительной системы, при этом упомянутое развертывание включает в себя
назначение сетевых коммутаторов для упомянутой по меньшей мере одной ВЛС, включая назначение портов коммутатора в сетевых коммутаторах для по меньшей мере одной ВЛС, причем по меньшей мере один порт коммутатора в одном из сетевых коммутаторов назначен для двух или более ВЛС,
дистанционное формирование в каждом компьютере, используемом для размещения распределенного приложения, первого виртуального сетевого интерфейса (ВСИ) и второго ВСИ, причем драйвер ВЛС формирует первый ВСИ и второй ВСИ поверх физического сетевого интерфейса, когда (i) драйвер ВЛС установлен на каждом компьютере, который необходимо ассоциировать с ВЛС, (ii) драйвер ВЛС связан с физическим сетевым интерфейсом, (iii) драйвер ВЛС создает множество ВСИ, включая первый и второй ВСИ, поверх каждого физического сетевого интерфейса, и (iv) драйвер ВЛС установлен в стеке протоколов между драйвером сетевого интерфейса и драйвером Интернет-протокола (IP); и
связывание первого ВСИ с первой ВЛС и связывание второго ВСИ со второй ВЛС.
2. Способ по п.1, в котором упомянутое развертывание включает в себя дистанционную передачу команд для физических ресурсов распределенной вычислительной системы на подключение к ВЛС для упомянутого приложения.
3. Машиночитаемый носитель для хранения исполняемых компьютером команд, которые при их исполнении выполняют способ по п.1.
RU2004106718/09A 2003-03-06 2004-03-05 Генерация топологии виртуальной сети RU2382398C2 (ru)

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
RU2004106718A RU2004106718A (ru) 2005-08-10
RU2382398C2 true RU2382398C2 (ru) 2010-02-20

Family

ID=32824791

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2004106718/09A RU2382398C2 (ru) 2003-03-06 2004-03-05 Генерация топологии виртуальной сети

Country Status (14)

Country Link
US (1) US20040210623A1 (ru)
EP (1) EP1455483A3 (ru)
JP (5) JP4444695B2 (ru)
KR (1) KR101143648B1 (ru)
CN (1) CN1703016A (ru)
AU (1) AU2004200484B2 (ru)
BR (1) BRPI0400549A (ru)
CA (1) CA2456952A1 (ru)
MX (1) MXPA04001431A (ru)
MY (1) MY149582A (ru)
PL (1) PL365512A1 (ru)
RU (1) RU2382398C2 (ru)
TW (1) TW200420036A (ru)
ZA (1) ZA200400836B (ru)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2486562C2 (ru) * 2011-08-26 2013-06-27 Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации (Минпромторг РФ) Способ построения автоматизированной системы, реализующей принципы виртуализации рабочих мест и изоморфного масштабирования
RU2486578C2 (ru) * 2011-09-16 2013-06-27 Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации (Минпромторг России) Способ построения системы сообщений многоуровневой несимметричной транспортной системы
RU2486584C2 (ru) * 2011-09-16 2013-06-27 Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации (Минпромторг РФ) Способ построения иерархической системы сетевого взаимодействия виртуальных рабочих мест
RU2540820C2 (ru) * 2011-10-18 2015-02-10 Хуавей Текнолоджиз Ко., Лтд. Способ и коммутатор для отправки пакета
RU2547627C2 (ru) * 2013-06-24 2015-04-10 Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) Способ структурно-функционального синтеза защищенной иерархической сети связи
RU2576492C2 (ru) * 2010-09-03 2016-03-10 Нек Корпорейшн Устройство управления, система связи, способ связи и носитель записи с записанной на нем программой связи
US9735982B2 (en) 2012-06-06 2017-08-15 Nec Corporation Switch apparatus, VLAN setting management method, and program
RU2637419C2 (ru) * 2013-06-21 2017-12-04 ЗетТиИ Корпорейшн Способ и система для защиты отображения виртуальной сети, а также компьютерный носитель данных
RU2638733C1 (ru) * 2014-02-27 2017-12-15 Хуавей Текнолоджиз Ко., Лтд. Система и способ создания сервисных цепочек и виртуальных сетей в облаке
RU2679344C1 (ru) * 2015-02-12 2019-02-07 Хуавей Текнолоджиз Ко., Лтд. Способ обработки информации об аварийных сигналах, соответствующее устройство и система
RU2681371C1 (ru) * 2015-05-01 2019-03-06 Хуавей Текнолоджиз Ко., Лтд. Система и способ управления ресурсами
RU2690201C1 (ru) * 2015-05-07 2019-05-31 Хуавэй Текнолоджиз Ко., Лтд. Система и способ для динамического управления дескрипторами функций виртуализированной сети
RU2734023C1 (ru) * 2017-10-24 2020-10-12 Телефонактиеболагет Лм Эрикссон (Пабл) Способы для определения дескриптора (nsd) сетевой службы для сетевой службы (ns) и оркестратор (nfvo) виртуализации сетевых функций (nfv), использующий упомянутый дескриптор nsd
RU2744940C1 (ru) * 2020-10-21 2021-03-17 Константин Евгеньевич Самуйлов Способ распределения виртуальных ресурсов оператора связи

Families Citing this family (164)

* 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
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
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
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
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US8312507B2 (en) 2006-10-17 2012-11-13 A10 Networks, Inc. System and method to apply network traffic policy to an application session
GB0623101D0 (en) 2006-11-20 2006-12-27 British Telecomm Secure network architecture
US7860116B2 (en) * 2007-05-24 2010-12-28 Worldwide Packets, Inc. Processing packets of a virtual interface associated with tunnels
US7948874B2 (en) * 2007-05-24 2011-05-24 World Wide Packets, Inc. Transitioning a virtual interface from one tunnel to another tunnel
US8060891B2 (en) * 2007-06-29 2011-11-15 Microsoft Corporation Management of external hardware appliances in a distributed operating system
WO2009007967A2 (en) 2007-07-09 2009-01-15 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
US8086739B2 (en) * 2007-12-10 2011-12-27 Oracle America, Inc. Method and system for monitoring virtual wires
US8095661B2 (en) * 2007-12-10 2012-01-10 Oracle America, Inc. Method and system for scaling applications on a blade chassis
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
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
WO2010008367A1 (en) * 2008-07-15 2010-01-21 Lsi Corporation System for injecting protocol specific errors during the certification of components in a storage area network
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
EP3720062A1 (en) 2009-10-07 2020-10-07 NEC Corporation Information system, control server, virtual network management method, and program
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
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 株式会社日立製作所 ネットワークシステム、仮想ネットワーク管理方法及びルータ
US9075661B2 (en) 2010-10-20 2015-07-07 Microsoft Technology Licensing, Llc Placing objects on hosts using hard and soft constraints
US8386501B2 (en) 2010-10-20 2013-02-26 Microsoft Corporation Dynamically splitting multi-tenant databases
US8296267B2 (en) 2010-10-20 2012-10-23 Microsoft Corporation Upgrade of highly available farm server groups
US8751656B2 (en) 2010-10-20 2014-06-10 Microsoft Corporation Machine manager for deploying and managing machines
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
US9253016B2 (en) * 2010-11-02 2016-02-02 International Business Machines Corporation Management of a data network of a computing environment
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
US8966020B2 (en) 2010-11-02 2015-02-24 International Business Machines Corporation Integration of heterogeneous computing systems into a hybrid computing system
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
CN102647288B (zh) * 2011-02-16 2018-02-13 中兴通讯股份有限公司 一种vm数据访问保护方法及系统
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
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
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
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
CN108027805B (zh) 2012-09-25 2021-12-21 A10网络股份有限公司 数据网络中的负载分发
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
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
WO2014179753A2 (en) 2013-05-03 2014-11-06 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
US9749148B2 (en) * 2013-07-31 2017-08-29 Citrix Systems, Inc. Systems and methods for load balancing non-IP devices
WO2015054902A1 (zh) * 2013-10-18 2015-04-23 华为技术有限公司 转发报文的方法、控制器、转发设备和网络系统
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的远程交换机管理方法
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
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
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
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 国云科技股份有限公司 一种单网卡虚拟机实现双线接入的方法
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)
US10285063B2 (en) * 2015-03-20 2019-05-07 Ntt Docomo, Inc. Service allocation determination device and service allocation determination method
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 鸿富锦精密电子(天津)有限公司 虚拟网络交换机系统及其建立方法
KR20190116512A (ko) 2017-03-31 2019-10-14 닛본 덴끼 가부시끼가이샤 네트워크 구축 장치, 네트워크 구축 방법, 및 컴퓨터 판독가능 기록 매체에 저장된 프로그램
US10334330B2 (en) * 2017-08-03 2019-06-25 Facebook, Inc. Scalable switch
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 中国平安财产保险股份有限公司 网络拓扑创建方法、装置、设备及存储介质
JP2023535150A (ja) * 2020-07-14 2023-08-16 オラクル・インターナショナル・コーポレイション レイヤ2ネットワーク内のインターフェイスベースのacl
US11765080B2 (en) 2020-12-30 2023-09-19 Oracle International Corporation Layer-2 networking span port 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

Family Cites Families (109)

* 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 ハフ変換画像処理装置
DE69232169T2 (de) * 1991-03-18 2002-07-18 Echelon Corp Programmiersprachestrukturen für ein netzwerk zur übertragung, abtastung und steuerung von informationen
IL99923A0 (en) * 1991-10-31 1992-08-18 Ibm Israel Method of operating a computer in a network
BR9402027A (pt) * 1993-05-28 1994-12-13 Xerox Corp Processo para gerenciar uma configuração e assegurar compatibilidade entre componentes num sistema de computação, e, processo para eliminar incompatibilidades entre software residente e software de migração num sistema de computador automatizado
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
JPH08297567A (ja) * 1995-04-26 1996-11-12 Mitsubishi Electric Corp 分散アプリケーション開発支援装置
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
US6075776A (en) * 1996-06-07 2000-06-13 Nippon Telegraph And Telephone Corporation VLAN control system and method
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
US6182275B1 (en) * 1998-01-26 2001-01-30 Dell Usa, L.P. Generation of a compatible order for a computer system
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
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
WO1999052237A1 (en) * 1998-04-03 1999-10-14 Vertical Networks Inc. System and method for transmitting voice and data using intelligent bridged tdm and packet buses
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
US6691168B1 (en) * 1998-12-31 2004-02-10 Pmc-Sierra Method and apparatus for high-speed network rule processing
US6393474B1 (en) * 1998-12-31 2002-05-21 3Com Corporation Dynamic policy management apparatus and method using active network devices
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
JP2004500754A (ja) * 1999-10-29 2004-01-08 テレーラ・インコーポレーテッド ユーザ対話サービスのための仮想インテリジェントネットワーク
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
ES2249450T3 (es) * 2000-07-05 2006-04-01 ERNST &amp; YOUNG LLP Metodo y aparato para proporcionar servicios informaticos.
US20020143960A1 (en) * 2000-08-02 2002-10-03 Erez Goren Virtual network generation system and method
JP2002084302A (ja) 2000-09-06 2002-03-22 Nippon Telegr & Teleph Corp <Ntt> ネットワークによる通信方法及び装置
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
US7027412B2 (en) * 2000-11-10 2006-04-11 Veritas Operating Corporation System for dynamic provisioning of secure, scalable, and extensible networked computer environments
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
EP1593228B8 (en) * 2003-02-14 2017-09-20 McAfee, LLC Network audit policy assurance system

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
RU2576492C2 (ru) * 2010-09-03 2016-03-10 Нек Корпорейшн Устройство управления, система связи, способ связи и носитель записи с записанной на нем программой связи
RU2486562C2 (ru) * 2011-08-26 2013-06-27 Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации (Минпромторг РФ) Способ построения автоматизированной системы, реализующей принципы виртуализации рабочих мест и изоморфного масштабирования
RU2486578C2 (ru) * 2011-09-16 2013-06-27 Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации (Минпромторг России) Способ построения системы сообщений многоуровневой несимметричной транспортной системы
RU2486584C2 (ru) * 2011-09-16 2013-06-27 Российская Федерация, от имени которой выступает Министерство промышленности и торговли Российской Федерации (Минпромторг РФ) Способ построения иерархической системы сетевого взаимодействия виртуальных рабочих мест
RU2540820C2 (ru) * 2011-10-18 2015-02-10 Хуавей Текнолоджиз Ко., Лтд. Способ и коммутатор для отправки пакета
US9735982B2 (en) 2012-06-06 2017-08-15 Nec Corporation Switch apparatus, VLAN setting management method, and program
US10411949B2 (en) 2013-06-21 2019-09-10 Zte Corporation Method and system for virtual network mapping protection and computer storage medium
RU2637419C2 (ru) * 2013-06-21 2017-12-04 ЗетТиИ Корпорейшн Способ и система для защиты отображения виртуальной сети, а также компьютерный носитель данных
RU2547627C2 (ru) * 2013-06-24 2015-04-10 Государственное казенное образовательное учреждение высшего профессионального образования Академия Федеральной службы охраны Российской Федерации (Академия ФСО России) Способ структурно-функционального синтеза защищенной иерархической сети связи
RU2638733C1 (ru) * 2014-02-27 2017-12-15 Хуавей Текнолоджиз Ко., Лтд. Система и способ создания сервисных цепочек и виртуальных сетей в облаке
US10771323B2 (en) 2015-02-12 2020-09-08 Huawei Technologies Co., Ltd. Alarm information processing method, related device, and system
RU2679344C1 (ru) * 2015-02-12 2019-02-07 Хуавей Текнолоджиз Ко., Лтд. Способ обработки информации об аварийных сигналах, соответствующее устройство и система
US10263911B2 (en) 2015-05-01 2019-04-16 Futurewei Technologies, Inc. System and method for resource management
RU2681371C1 (ru) * 2015-05-01 2019-03-06 Хуавей Текнолоджиз Ко., Лтд. Система и способ управления ресурсами
RU2690201C1 (ru) * 2015-05-07 2019-05-31 Хуавэй Текнолоджиз Ко., Лтд. Система и способ для динамического управления дескрипторами функций виртуализированной сети
US10671420B2 (en) 2015-05-07 2020-06-02 Futurewei Technologies, Inc. System and method for dynamic virtualized network function descriptor management
US11463384B2 (en) 2015-05-07 2022-10-04 Futurewei Technologies, Inc. System and method for dynamic virtualized network function descriptor management
RU2734023C1 (ru) * 2017-10-24 2020-10-12 Телефонактиеболагет Лм Эрикссон (Пабл) Способы для определения дескриптора (nsd) сетевой службы для сетевой службы (ns) и оркестратор (nfvo) виртуализации сетевых функций (nfv), использующий упомянутый дескриптор nsd
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
RU2744940C1 (ru) * 2020-10-21 2021-03-17 Константин Евгеньевич Самуйлов Способ распределения виртуальных ресурсов оператора связи

Also Published As

Publication number Publication date
JP2009303275A (ja) 2009-12-24
KR20040079318A (ko) 2004-09-14
EP1455483A3 (en) 2011-01-05
EP1455483A2 (en) 2004-09-08
JP4838342B2 (ja) 2011-12-14
PL365512A1 (en) 2004-09-20
TW200420036A (en) 2004-10-01
BRPI0400549A (pt) 2004-12-28
CA2456952A1 (en) 2004-09-06
JP2011259455A (ja) 2011-12-22
MY149582A (en) 2013-09-13
JP2011239452A (ja) 2011-11-24
MXPA04001431A (es) 2005-06-17
JP2004272905A (ja) 2004-09-30
AU2004200484A1 (en) 2004-09-23
US20040210623A1 (en) 2004-10-21
CN1703016A (zh) 2005-11-30
JP4444695B2 (ja) 2010-03-31
RU2004106718A (ru) 2005-08-10
AU2004200484B2 (en) 2010-03-11
KR101143648B1 (ko) 2012-05-09
ZA200400836B (en) 2004-08-23
JP2011217405A (ja) 2011-10-27

Similar Documents

Publication Publication Date Title
RU2382398C2 (ru) Генерация топологии виртуальной сети
JP3948957B2 (ja) 拡張可能なコンピューティング・システム
US6597956B1 (en) Method and apparatus for controlling an extensible computing system
CN107911463B (zh) 一种业务跨云架构及其创建方法、管理方法
CN113039520A (zh) 将中心集群成员资格扩展到附加计算资源
US20120294192A1 (en) Method and apparatus of connectivity discovery between network switch and server based on vlan identifiers
JP4712279B2 (ja) 拡張可能コンピューティングシステムの制御方法および装置
US20080005344A1 (en) Method and system for configuring a network device using a template
CN104584484A (zh) 提供基于策略的数据中心网络自动化的系统和方法
US20090049161A1 (en) Server management program in network system
CN101183978A (zh) 用于配置网络基础结构的系统和方法
US20220209991A1 (en) Systems and methods for automated network configurations with a network as a service (naas) system
CN105704042A (zh) 报文处理方法、bng及bng集群系统
US10681177B2 (en) Self-driving content distribution
CN108933702A (zh) 一种提供远程服务的方法
CN117675559A (zh) 多数据中心跨域互通多云业务编排方法、装置和设备

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20130306