CN102790716A - 使用物理网络交换机保护虚拟化计算环境的方法和装置 - Google Patents
使用物理网络交换机保护虚拟化计算环境的方法和装置 Download PDFInfo
- Publication number
- CN102790716A CN102790716A CN2012101465774A CN201210146577A CN102790716A CN 102790716 A CN102790716 A CN 102790716A CN 2012101465774 A CN2012101465774 A CN 2012101465774A CN 201210146577 A CN201210146577 A CN 201210146577A CN 102790716 A CN102790716 A CN 102790716A
- Authority
- CN
- China
- Prior art keywords
- virtual machine
- port
- network switch
- switch
- identification information
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/1466—Active attacks involving interception, injection, modification, spoofing of data unit addresses, e.g. hijacking, packet injection or TCP sequence number attacks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/60—Software-defined switches
- H04L49/602—Multilayer or multiprotocol switching, e.g. IP switching
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种使用物理网络交换机保护虚拟化计算环境的方法和装置。一种用于保护虚拟化计算环境的技术包括从在网络交换机的物理端口上接收的分组取回标识信息。取回在所接收分组中标识的虚拟机的端口分配数据(由虚拟机监视器和虚拟机监视器管理站之一维护)。将来自所接收分组的所述标识信息与所述端口分配数据相比较以判定所述虚拟机是否被分配到所述端口。响应于判定所述虚拟机被分配到所述端口,将所述分组转发到在所述分组中指定的目的地。响应于判定所述虚拟机未被分配到所述端口,阻止所述分组。
Description
技术领域
本发明一般地涉及物理网络交换机,具体地说,涉及用于使用物理网络交换机保护虚拟化计算环境的技术。
背景技术
术语“效用计算”用于指一种计算模型,其中处理、存储和网络资源、软件以及数据可由客户端计算机系统和其他客户端设备(例如,移动电话或媒体播放器)按需访问,非常像熟悉的诸如水电的住宅公用服务。在某些实施方式中,为了客户端设备访问和使用而分配的特定计算资源(例如,服务器、存储驱动器等)由效用计算提供商及其客户之间的服务协议指定。在其他实施方式中(通常称为“云计算”),底层信息技术(IT)基础架构的详细信息对于效用计算客户来说是透明的。
云计算通过易于访问远程计算网站(例如,通过因特网或专用公司网络)而变得容易,并且经常采取基于Web的资源、工具或应用的形式,云客户可以通过Web浏览器访问和使用这些资源、工具或应用,就好像这些资源、工具或应用是安装在云客户的计算机系统上的本地程序那样。商业云实施方式通常需要满足云客户的服务质量(QoS)要求,该要求可以在服务级别协议(SLA)中指定。在一种典型的云实施方式中,云客户作为服务而消费计算资源并且仅针对使用的资源付费。
虚拟化的广泛使用促进了效用计算的采用,虚拟化是指创建虚拟(而非实际)版本的计算资源(例如,操作系统、服务器、存储设备、网络资源等)。例如,虚拟机(VM)(也称为逻辑分区(LPAR))是像物理机器那样执行指令的物理机器(例如,计算机系统)的软件实施方式。VM可被分类为系统VM或进程VM。系统VM提供完整的系统平台,此平台支持执行诸如Windows、Linux、AIX、Android之类的完整操作系统(OS)及其关联的应用。另一方面,进程VM通常设计为运行单个程序和支持单个进程。在每种情况下,在VM上运行的任何应用软件都受限于此VM提供的资源和抽象。因此,通过部署可能与多个不同效用计算客户关联的多个VM,可以有效地管理和使用公共IT基础架构所提供的实际资源。
通常由称为VM监视器(VMM)或系统管理程序的软件提供实际IT资源的虚拟化和VM的管理。在各种实施方式中,VMM可以在裸机硬件上运行(类型1或本机VMM)或者在操作系统上运行(类型2或托管VMM)。
在典型的虚拟化计算环境中,VM可以使用常规联网协议相互通信以及与效用计算环境的IT基础架构中的物理实体通信。如本领域所公知的,常规联网协议通常基于众所周知的七层开放系统互连(OSI)模型,此模型包括(按升序)物理层、数据链路层、网络层、传输层、会话层、表示层以及应用层。通过使用虚拟网络连接代替常规物理层连接实现VM与其他网络实体通信,就好像VM是物理网络元素那样。
在公知的物理网络交换机上部署的软件被配置为根据与VM关联的介质访问控制(MAC)地址来标识VM。所述软件允许用户通过各种标识符(例如,网际协议(IP)地址、通用唯一标识符(UUID)和名称)创建VM组、将VM添加到组并指定VM。
发明内容
一种用于保护虚拟化计算环境的技术包括从在网络交换机的物理端口上接收的分组取回标识信息。还取回在所接收分组中标识的虚拟机的端口分配数据(由虚拟机监视器和虚拟机监视器管理站之一维护)。将来自所接收分组的所述标识信息与所述端口分配数据相比较以判定所述虚拟机是否被分配到所述端口。响应于判定所述虚拟机被分配到所述端口,将所述分组转发到在所述分组中指定的目的地。响应于判定所述虚拟机未被分配到所述端口,阻止所述分组。
附图说明
图1是根据一个实施例的数据处理环境的高级方块图;
图2示出了根据一个实施例的图1的示例性数据处理环境中的虚拟和物理资源的分层;
图3是根据一个实施例的数据处理系统的高级方块图;
图4是根据一个实施例的在物理网络交换机处实施网络安全性的数据处理环境的相关部分的高级方块图;
图5是根据一个实施例配置的物理网络交换机的相关部分的高级方块图;以及
图6是根据一个实施例的使用物理网络交换机保护数据处理环境的示例性方法的高级逻辑流程图。
具体实施方式
如上所述,公知物理网络交换机的软件将介质访问控制(MAC)地址作为虚拟机(VM)标识符存储在该物理网络交换机的配置和数据结构中,以便于保护关联的虚拟化计算环境。遗憾的是,依赖于MAC地址作为VM标识符具有某些限制。例如,使用MAC地址作为VM标识符可能允许终端站(即,物理机器)的具有根权限的用户欺骗源MAC地址并获得对虚拟局域网(VLAN)的不适当访问。使用MAC地址作为VM标识符的另一个限制是MAC地址除了被分配给原始VM之外,还可能被分配给另一个VM或终端站。使用MAC地址作为VM标识符的又一个限制是原始VM可能被毁坏,并且该原始VM的MAC地址可能被重新分配给新的VM。通常,MAC地址可能被有意地重复(例如,在多租户情况下同时使用MAC地址)或无意地重复(例如,通过软件错误),因此无法唯一或正确地标识VM。
根据本公开的不同方面,可以采用不同的验证模式,具体取决于MAC地址重复或被重新分配的可能性。例如,可以实施执行基本检查以防止MAC地址欺骗的第一验证模式。再如,可以实施第二验证模式以便对MAC地址的地址欺骗、重复和重新分配执行更详尽的检查。通常,第一验证模式比第二验证模式更简单并可能更快,并且可以部署在已知不能发生MAC地址重新分配和重复的环境中。尽管在此的讨论主要涉及特定于VMwareTM的技术,但应理解,所述技术可以扩展到其他虚拟化供应商平台,所述平台提供安全应用编程接口(API)以便于访问由虚拟机监视器(VMM)和/或VMM管理站维护的VM端口分配数据。
第一和第二验证模式均采用向服务器端口公告交换机标识符(例如,网际协议(IP)地址)和交换机端口号(对于物理网络交换机)的定期发现消息。通常,发现消息不能由网络上的任意系统生成,因为按照标准,发现消息不能由物理网络交换机从一个端口转发到另一个端口。这样,保证由VMM接收的发现消息源于直接连接的物理网络交换机。在各种实施例中,物理网络交换机定期在每个服务器端口(例如,刀片式交换机上的内部端口以及架顶式(ToR)交换机上的专门标记的服务器端口)上发送发现消息。例如,物理网络交换机可以发送遵循思科发现协议(CDP)或链路层发现协议(LLDP)的发现消息。
如所公知的,VMwareTMESXTM服务器软件可以被配置为在所有物理网络接口卡(NIC)上“监听”发现消息并收集和存储每个物理NIC的发现消息数据。应该理解,可以由物理网络交换机或其他设备取回(例如,使用VMwareTM虚拟基础架构(VI)API)所存储的发现消息数据。根据本公开的各方面,服务器端口上的发现消息公告以及使用安全API(由物理网络交换机)取回选定端口分配数据的组合可轻松促进VMM服务器所使用的端口的可靠标识(按照所述第一验证模式)以及交叉检查VM MAC地址(和其他信息)到物理网络交换机端口的映射(按照所述第二验证模式),如物理网络交换机维护的那样。
在所述第一验证模式中,仅允许在VMM(例如,ESXTM)端口上配置物理网络交换机软件。通过在VMM处禁止欺骗(即,仅允许VM使用VMM为它们分配的MAC地址),可以安全地认为VMM端口可防止欺骗。在所述第一验证模式中,通过在服务器端口上传输来自物理网络交换机的发现消息并使用安全API(例如,VI API)在清单层次结构(例如,VMwareTMvCenterTM清单层次结构)中扫描针对每个物理NIC存储的发现消息数据,可以标识VMM端口。如果可以在扫描中找到给定物理网络交换机端口,则此交换机端口被视为VMM端口。也就是说,当VMM清单中的某个物理端口与指定的交换机端口具有相同的交换机标识符和交换机端口标识符,则此交换机端口被视为VMM端口。
应该理解,在物理网络交换机端口尚未被标记为VMM端口的若干不同情况下,VMM端口标记/验证可能需要调用。例如,当VM接口被添加到VM组并且此VM的MAC地址已经在物理网络交换机的2级(L2)表中,即MAC地址已经在交换机端口上“活动”时,VMM端口标记/验证将需要调用。再如,当VM接口已经在物理网络交换机的VM组中并且此VM接口的MAC地址在网络交换机的端口上经历“源丢失”(通常称为预供应)时,VMM端口标记/验证将需要调用。
要考虑的另一种情况是端口上的链路启用(link-up)事件。如果标记为VMM端口的端口出现故障,则当此端口随后连接到未由VMM管理的终端站时,应清除此端口的VMM端口属性。在这种情况下,当链路恢复启用时,应该启动VMM端口验证。可以根据“源丢失”情况或通过在VM开始在VMM端口上传输业务之前主动检查VMM端口关联是否保持完整来执行链路验证。“源丢失”情况的验证可以在“带内”执行,因为“源丢失”由来自VM的第一个到达的分组触发。
如果在验证过程中,来自VM的后续分组被丢弃,则可能影响功能性。但是,由于从物理网络交换机端口处的VM到达的第一个分组通常由VMM代理(例如,ESXTM以VM的MAC地址作为源地址发送反向地址解析协议(RARP)分组),并且来自VM的实际分组的到达时间晚得多,因此在大多数情况下,在来自VM的第一个非代理分组之前完成验证(成功或失败)。通常,在VM启动过程中,来自VM的第一个代理分组和第一个实际分组之间的时间通常比在实时VM迁移(例如,VMwareTMVMotionTM)过程中长。如果来自VM的实际分组在验证过程中被丢弃,则对于最高层协议(例如,传输控制协议(TCP)),不希望丢弃影响功能性。尽管由于丢弃的分组可能出现轻微性能降低,但在实时迁移过程中不希望发生丢弃。
在所述第二验证模式中,通常仅在检验给定VM接口的连接性之后,才在物理网络交换机处针对此给定VM接口应用软件配置。在所述第二验证模式中,VM MAC地址与VM的通用唯一标识符(UUID)一起存储以确保明确标识VM接口。当物理网络交换机开始从网络交换机的VM组中的VM接收分组时,交换机进行检查以判定用户指定的VM接口(即,在交换机的配置中)是否是在接收分组的交换机端口上正在进行传输的VM接口。所述第二验证模式使用类似于结合所述第一验证模式描述的技术。也就是说,发现消息与安全API端口分配数据取回(例如,从VMwareTMVirtual CenterTM清单)一起使用。所述第一和第二验证模式之间的一个不同之处在于检查的粒度。所述第二验证模式(在一个或多个实施例中)在网络交换机和VMM清单之间检查四个参数(即,VM MAC地址、VMUUID、交换机端口和交换机ID)的一致性,而不是仅检查VMwareTMVirtual CenterTM清单中的某个物理接口是否连接到交换机端口(如在所述第一验证模式中那样)。
在网络交换机处,当VM活动时,VM的MAC地址和UUID以及交换机ID存储在当前配置文件中,而端口号来自交换机的L2表。VI API客户端(即,物理网络交换机)根据VM的UUID和MAC地址在VMwareTMVirtual CenterTM清单中定位VM接口。VI API客户端然后读取对应物理NIC的端口分配数据(通过将VM接口的端口组映射到其虚拟交换机,然后映射到充当虚拟交换机的上行链路的一个/多个物理NIC)。所述端口分配数据根据所接收的发现消息数据提供交换机ID和端口号。在一个或多个实施例中,仅当四个参数完全匹配时,在交换机端口上出现的MAC地址才被视为通过验证。此检查可防止欺骗MAC地址、重复MAC地址和重用MAC地址。
在一个或多个实施例中,在物理网络交换机上执行的软件定期(例如,每分钟)调用发送例程以传输发现消息。所述发送例程遍历一系列已配置的端口以确定哪些端口需要通过发现消息数据传输公告。应该指出,所有内部端口和服务器端口都被默认配置为发出公告,并且当某些端口被删除时,已删除的端口不会被保存在配置中,因此不会幸存“重置”。如在此所使用,术语“内部端口”指嵌入式物理网络交换机(驻留在刀片服务器内部并具有固定的服务器和非服务器端口),并且术语“服务器端口”指非嵌入式物理网络交换机(具有可以连接到服务器和其他物理网络交换机的端口,因此需要显式指定服务器端口)。在一个或多个实施例中,当在配置为发出发现消息的端口上出现链路时,立即传输发现消息。在各种实施例中,所配置的VM的UUID被保存在配置文件中以便于严格检查。可以在网络交换机处维护一个全局数组以保存端口设置。在一个或多个实施例中,维护所述全局数组的两个副本(即,用于在未应用配置时保存设置的第一副本和对应于当前配置的第二副本)。在各种实施例中,跟踪属于VM组的每个VM以确定该VM的MAC地址何时需要检验。
现在参考附图,具体参考图1,其中示出了根据本公开的一个实施例的示例性数据处理环境100的高级方块图。如所示出的,数据处理环境100(在示出的实施例中是一个云计算环境)包括通常称为云102的计算资源集合。云102中的计算资源被互连以便通信,并且可以在一个或多个网络中以物理或虚拟方式分组(未示出),例如私有云、社区云、公有云或混合云或它们的组合。通过这种方式,数据处理环境100可以提供基础架构、平台和/或软件作为可由客户端设备110访问的服务,客户端设备110的实例包括个人(例如,台式、膝上型、笔记本式、平板式或手持式)计算机110a、智能电话110b、服务器计算机系统110c和客户电子设备110d,例如媒体播放器(例如,机顶盒、数字多功能盘(DVD)播放器或数字视频录像机(DVR))。应该理解,图1中示出的客户端设备110的类型只是示例性的,并且客户端设备110可以是任何类型的能够通过分组网络与计算资源的服务通信并访问计算资源的服务的电子设备。
图2是示出根据一个实施例的驻留在图1的云102中的虚拟和物理资源的层图。应该理解,图2中示出的计算资源、层和功能只是示例性的,并且要求保护的发明的实施例并不限于此。
如所示出的,云102包括物理层200、虚拟化层202、管理层204和工作负载层206。物理层200包括可以用于实例化虚拟实体以供云服务提供商及其客户使用的各种物理硬件和软件组件。例如,硬件组件可以包括大型机(例如, 系统)、精简指令集计算机(RISC)架构服务器(例如,IBM系统)、IBM系统、IBM系统、存储设备(例如,闪存驱动器、磁驱动器、光驱动器、磁带驱动器等)、物理网络以及联网组件(例如,路由器、交换机等)。软件组件可以包括操作系统软件(例如,AIX、Windows、Linux等)、网络应用服务器软件(例如,IBM应用服务器软件,其包括Web服务器软件)以及数据库软件(例如,IBM数据库软件)。IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere和DB2是国际商业机器公司在全世界各地的注册商标。
驻留在云102的物理层200中的计算资源由一个或多个虚拟机监视器(VMM)或系统管理程序进行虚拟化和管理。VMM提供虚拟化层202,其包括虚拟实体(例如,虚拟服务器、虚拟存储、虚拟网络(包括虚拟专用网络))、虚拟应用以及虚拟客户端。如先前所讨论,这些虚拟实体(它们是物理层120中底层资源的抽象)可以由云客户的客户端设备110按需访问。
VMM(多个)还支持针对云102实施各种管理功能的管理层204。这些管理功能可以由VMM(多个)和/或在VMM(多个)上运行的一个或多个管理或服务VM直接实施,并且可以提供诸如资源供应、计量和定价、安全性、用户门户服务、服务级别管理以及SLA规划和履行之类的功能。资源供应功能提供用于在云计算环境中执行任务的计算资源和其它资源的动态获取。计量和定价功能对已使用资源的消耗进行成本跟踪(因为在云计算环境中供应和使用资源)和计费或开具发票。作为一个实例,已使用的资源可以包括软件许可。安全性功能为云客户和任务提供身份检验,以及为数据和其他资源提供保护。用户门户功能为客户和系统管理员提供对云计算环境的访问。服务级别管理功能提供云计算资源分配和管理以便满足所需的服务级别。例如,安全性功能或服务级别管理功能可被配置为将虚拟机(VM)映像的部署/迁移限于被指示为可由云客户接受的地理位置。SLA规划和履行功能为根据SLA预测的对云计算资源未来需求提供预先安排和供应。
工作负载层206(其可以由一个或多个客户VM实施)提供云计算环境可能实现的功能的实例。可以从工作负载层206提供的工作负载和功能的实例包括:地图绘制与导航;软件开发及生命周期管理;虚拟教室的教学提供;数据分析处理;以及交易处理。
现在参考图3,其中示出了可用于在图2的物理层200或图1的客户端设备110中实施物理主机计算平台的示例性数据处理系统300的高级方块图。在示出的示例性实施例中,数据处理系统300包括一个或多个网络接口304,其允许数据处理系统300经由缆线和/或一个或多个有线或无线网络、公用或专用网络、局域网或广域网(包括因特网)与云102中的一个或多个计算资源通信。数据处理系统300另外包括一个或多个处理器302,其处理数据和程序代码以便例如管理、访问和操纵数据处理环境100中的数据或软件。数据处理系统300还包括输入/输出(I/O)设备306(例如端口、显示器和附接设备等),其针对由数据处理系统300和/或数据处理环境100中的其他资源执行的处理接收输入并提供输出。最后,数据处理系统300包括数据存储装置310,其可以包括一个或多个易失性和/或非易失性存储设备,包括存储器、固态驱动器、光或磁盘驱动器、磁带驱动器等。数据存储装置310可以例如存储物理层200中的软件和/或便于访问工作负载层206和/或管理层204的软件(例如Web浏览器)。
现在参考图4,其中示出了根据本公开的一个实施例的采用虚拟联网的数据处理环境400的相关部分的高级方块图。例如,数据处理环境400可以实施图1中示出的云102的一部分。
在示出的实施例中,数据处理环境400包括网际协议(IP)网络402,其包括多个网段404a、404b,每个网段耦合到相应物理网络交换机406a、406b之一。如所示出,每个物理网络交换机406a、406b包括相应的数据结构(例如,相应的转发表(F))407a、407b,物理网络交换机406a、406b例如根据分组中包含的OSI第2层(例如,MAC)地址通过数据结构407a、407b将入站数据分组转发到分组的目的地。物理主机410a、410b耦合到网段404a,并且物理主机410c耦合到网段404b。每个物理主机410a-410c可以例如使用如图3中示出的数据处理系统300实施。
每个物理主机410a-410c执行相应VMM 412a-412c之一,VMM412a-412c例如在人员和/或自动云管理员的指导下,在通过IP网络402耦合到物理主机410a-410c的VMM管理控制台420(可以使用如图3中示出的数据处理系统300实施)处对其相应的物理主机410的资源进行虚拟化和管理。物理主机410a上的VMM 412a支持VM 414a、414b的执行,物理主机410b上的VMM 412b支持VM 414c、414d的执行,物理主机410c上的VMM 412c支持VM 414e、414f的执行。作为一个实例,管理控制台420可被配置为执行VMwareTM vCenter serverTM以管理VMM412a-412c。应该理解,尽管示出在每个物理主机410a-410c上部署两个VM,但在根据本公开配置的物理主机上,可以部署多于或少于两个的VM。在各种实施例中,VM 414a-414f可以包括一个或多个云客户和/或云提供商的VM。在示出的实施例中,每个VM 414具有一个(并且可以包括多个)虚拟网络接口控制器VNIC1-VNIC6,其至少在OSI模型的第2和第3层提供网络连接性。
虚拟交换机432a被配置为使用物理NIC 420a将分别来自/去往VM414a、414b的VNIC1和VNIC2的至少某些通信转发到物理网络交换机406a(通过网段404a)。虚拟交换机432b被配置为使用物理NIC 420b将分别来自/去往VM 414c、414d的VNIC3和VNIC4的至少某些通信转发到物理网络交换机406a(通过网段404a)。类似地,虚拟交换机432c被配置为使用物理NIC 420c将分别来自/去往VM 414e、414f的VNIC5和VNIC6的至少某些通信转发到物理网络交换机406b(通过网段404b)。在各种实施例中,物理交换机406a、406b被配置为与管理控制台420通信(例如,通过安全API)以取回端口分配数据来验证VM 414a-414f的端口分配。在一个或多个实施例中,管理控制台420可以维护VM 414a-414f的端口分配数据,或者可以便于访问分别由VMM 412a-412c维护的VM414a-414f的端口分配数据。
现在参考图5,其中示出了根据本公开的一个实施例的图4的数据处理环境400中的物理网络交换机406的相关部分。如所示出,物理网络交换机406包括四个端口(标记为P1-P4)、纵横式(crossbar)交换机510、处理器502以及数据存储装置(例如,存储器子系统)504。虽然网络交换机406被示为具有四个端口,但是应理解,根据本公开配置的网络交换机可以包括多于或少于四个的端口。处理器502(其耦合到纵横式交换机510)控制纵横式交换机510以在端口P1-P4之间路由业务。数据存储装置504维护L2表506和VM接口数据508。如上所述,活动VM 414的MAC地址和UUID以及物理网络交换机406的交换机ID存储在VM接口数据文件508(即,当前配置文件)中,而活动VM 414的端口号由L2表506提供。物理网络交换机406(也是安全API客户端)根据VM的UUID和MAC地址在(数据存储装置530的)端口分配数据清单532中查找VM接口。数据存储装置530可以由物理主机410上的VMM 412和/或VMM管理控制台420维护。例如,数据存储装置530可以对应于硬盘驱动器(HDD)。
物理网络交换机406(经由安全API从端口分配数据清单532中)读取对应的物理NIC 420的端口分配数据(通过将VM接口的端口组映射到关联的虚拟交换机432,然后映射到充当虚拟交换机432的上行链路的物理NIC 420)。所述端口分配数据根据所接收的发现消息数据而提供交换机ID和端口号。在一个或多个实施例中,仅当所有四个参数(即,VM MAC地址、VM UUID、交换机端口以及交换机ID)完全匹配时,在物理网络交换机406的交换机端口上出现的MAC地址才被视为已通过检验。如上所述,检验所有四个参数完全匹配可有利地防止欺骗MAC地址、重复MAC地址和重用的MAC地址。
现在参考图6,其中示出了根据本公开的一个实施例的保护虚拟化计算环境的示例性方法的高级逻辑流程图。图6的流程图按逻辑顺序而不是严格按时间顺序示出了各步骤。因此,在至少某些实施例中,逻辑流程图的至少某些步骤可以按不同于示出的顺序执行或同时执行。图6中示出的过程可以由图4的数据处理环境400中的每个物理网络交换机406执行。例如,每个物理网络交换机406可以由图3的数据处理系统300实施。
实施所述第二验证模式并被配置为在物理网络交换机406处保护数据处理环境400的过程始于方块600,然后继续到方块602,在方块602,物理网络交换机406从在网络交换机406的物理端口上的VM 414之一接收的分组中取回标识信息。例如,所述标识信息可以包括VM 414a的VMMAC地址和VM UUID。接下来,在方块604,物理网络交换机406取回由VMM 412(和/或管理控制台420)针对在所接收分组中标识的VM(例如,VM 414a)维护的端口分配数据。例如,所述端口分配数据可以包括针对VM 414从VMwareTM清单(经由VI API访问)取回的VM MAC地址、VM UUID、交换机端口和交换机ID。如上所讨论,定期在发现消息中从物理网络交换机406向VMM 412提供交换机端口和交换机ID。然后,在方块606,物理网络交换机406将来自所接收分组的标识信息(以及由物理网络交换机406维护的交换机端口和交换机ID)与由VMM 412(和/或管理控制台420)维护的端口分配数据相比较,以判定由所接收分组的标识信息指示的VM 414是否被分配给所述交换机端口。
在决策方块608,响应于物理网络交换机406判定由所接收分组的标识信息指示的VM 414被分配给接收所述分组的交换机端口,控制转移到方块612。在方块612,物理网络交换机406将所述分组转发到在所述分组中指定的目的地。在方块608,响应于物理网络交换机406判定由所接收分组的标识信息指示的VM 414未被分配给接收所述分组的交换机端口,控制转移到方块610。在方块610,物理网络交换机406阻止所述分组(例如,丢弃所述分组或将所述分组转发到网络安全例程以用于报告用途)。在方块610和612之后,图6中示出的过程在方块614结束。
尽管已参考一个或多个优选实施例具体示出并描述了本发明,但是本领域的技术人员将理解,可以在其中做出各种形式和细节方面的更改而不偏离本发明的精神和范围。例如,应该理解,尽管在此给出的详细描述提供了云计算环境的多个实施例,但是在此披露的教导并不限于云计算环境。相反,可以在现在已知或未来开发的任何其他类型的计算环境(包括客户端-服务器和对等计算环境)中实施各实施例。
此外,尽管针对执行引导在此所述功能的程序代码的计算机系统描述了各方面,但是应理解,各实施例可以备选地实施为包括存储介质的程序产品,所述存储介质(例如,数据存储装置310)存储可以由数据处理系统处理以导致所述数据处理系统执行一个或多个所述功能的程序代码。
Claims (14)
1.一种用于保护虚拟化计算环境的方法,所述方法包括:
使用数据处理系统从在网络交换机的物理端口上接收的分组取回标识信息;
使用所述数据处理系统取回由虚拟机监视器和虚拟机监视器管理站之一针对在所接收分组中标识的虚拟机而维护的端口分配数据;
使用所述数据处理系统将来自所接收分组的所述标识信息与所述端口分配数据相比较以判定所述虚拟机是否被分配到所述端口;
响应于判定所述虚拟机被分配到所述端口,使用所述数据处理系统将所述分组转发到在所述分组中指定的目的地;以及
响应于判定所述虚拟机未被分配到所述端口,使用所述数据处理系统阻止所述分组。
2.如权利要求1中所述的方法,还包括:
使用所述数据处理系统通过发现消息向所述虚拟机监视器公告所述端口。
3.如权利要求2中所述的方法,其中所述发现消息采用链路层发现协议。
4.如权利要求2中所述的方法,其中所述发现消息包括所述网络交换机的所述端口的交换机端口号和所述网络交换机的交换机标识符。
5.如权利要求1中所述的方法,其中所述端口分配数据包括所述虚拟机的介质访问控制地址、所述虚拟机的通用唯一标识符、所述虚拟机的已分配交换机端口号以及所述虚拟机的已分配交换机标识符。
6.如权利要求1中所述的方法,其中所接收分组的所述标识信息包括所述虚拟机的介质访问控制地址和所述虚拟机的通用唯一标识符,并且其中所述网络交换机维护所述网络交换机的所述端口的交换机端口号和所述网络交换机的交换机标识符。
7.如权利要求1中所述的方法,其中所接收分组的所述标识信息包括所述虚拟机的介质访问控制地址和所述虚拟机的通用唯一标识符。
8.一种网络交换机,包括:
配置为从在网络交换机的物理端口上接收的分组取回标识信息的部件;
配置为取回由虚拟机监视器和虚拟机监视器管理站之一针对在所接收分组中标识的虚拟机而维护的端口分配数据的部件;
配置为将来自所接收分组的所述标识信息与所述端口分配数据相比较以判定所述虚拟机是否被分配到所述端口的部件;
配置为响应于判定所述虚拟机被分配到所述端口而将所述分组转发到在所述分组中指定的目的地的部件;以及
配置为响应于判定所述虚拟机未被分配到所述端口而阻止所述分组的部件。
9.如权利要求8中所述的网络交换机,还包括:
配置为使用发现消息向所述虚拟机监视器公告所述端口的部件。
10.如权利要求9中所述的网络交换机,其中所述发现消息采用链路层发现协议。
11.如权利要求9中所述的网络交换机,其中所述发现消息包括所述网络交换机的所述端口的交换机端口号和所述网络交换机的交换机标识符。
12.如权利要求8中所述的网络交换机,其中所述端口分配数据包括所述虚拟机的介质访问控制地址、所述虚拟机的通用唯一标识符、所述虚拟机的已分配交换机端口号以及所述虚拟机的已分配交换机标识符。
13.如权利要求8中所述的网络交换机,其中所接收分组的所述标识信息包括所述虚拟机的介质访问控制地址和所述虚拟机的通用唯一标识符,并且其中所述网络交换机维护所述网络交换机的所述端口的交换机端口号和所述网络交换机的交换机标识符。
14.如权利要求8中所述的网络交换机,其中所接收分组的所述标识信息包括所述虚拟机的介质访问控制地址和所述虚拟机的通用唯一标识符。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/107,397 US20120287931A1 (en) | 2011-05-13 | 2011-05-13 | Techniques for securing a virtualized computing environment using a physical network switch |
US13/107,397 | 2011-05-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102790716A true CN102790716A (zh) | 2012-11-21 |
Family
ID=47141846
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2012101465774A Pending CN102790716A (zh) | 2011-05-13 | 2012-05-11 | 使用物理网络交换机保护虚拟化计算环境的方法和装置 |
Country Status (2)
Country | Link |
---|---|
US (2) | US20120287931A1 (zh) |
CN (1) | CN102790716A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473636A (zh) * | 2013-09-03 | 2013-12-25 | 沈效国 | 一种收集、分析和分发网络商业信息的系统数据组件 |
WO2015067123A1 (en) * | 2013-11-07 | 2015-05-14 | International Business Machines Corporation | Management of addresses in virtual machines |
CN106462457A (zh) * | 2014-02-07 | 2017-02-22 | 瑞典爱立信有限公司 | 虚拟化应用集群 |
CN110875844A (zh) * | 2018-08-30 | 2020-03-10 | 丛林网络公司 | 用于虚拟执行元件的多虚拟网络接口支持 |
US11171830B2 (en) | 2018-08-30 | 2021-11-09 | Juniper Networks, Inc. | Multiple networks for virtual execution elements |
CN113811858A (zh) * | 2019-04-26 | 2021-12-17 | 微软技术许可有限责任公司 | 使用机架顶交换机启用对虚拟网络中的专用资源的访问 |
US11792126B2 (en) | 2019-03-29 | 2023-10-17 | Juniper Networks, Inc. | Configuring service load balancers with specified backend virtual networks |
Families Citing this family (54)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9276953B2 (en) | 2011-05-13 | 2016-03-01 | International Business Machines Corporation | Method and apparatus to detect and block unauthorized MAC address by virtual machine aware network switches |
US9363207B2 (en) * | 2011-06-24 | 2016-06-07 | Cisco Technology, Inc. | Private virtual local area network isolation |
US9191454B2 (en) * | 2011-06-27 | 2015-11-17 | Microsoft Technology Licensing, Llc | Host enabled management channel |
US9332005B2 (en) | 2011-07-11 | 2016-05-03 | Oracle International Corporation | System and method for providing switch based subnet management packet (SMP) traffic protection in a middleware machine environment |
US9215083B2 (en) * | 2011-07-11 | 2015-12-15 | Oracle International Corporation | System and method for supporting direct packet forwarding in a middleware machine environment |
US20130034015A1 (en) * | 2011-08-05 | 2013-02-07 | International Business Machines Corporation | Automated network configuration in a dynamic virtual environment |
US20130138764A1 (en) * | 2011-11-30 | 2013-05-30 | Soumendu S. Satapathy | Method and system for virtual machine data migration |
US10514937B2 (en) * | 2012-01-05 | 2019-12-24 | Vmware, Inc. | Auto-discovery service and method of discovering applications within a virtual network |
US9294552B2 (en) | 2012-01-27 | 2016-03-22 | MicroTechnologies LLC | Cloud computing appliance that accesses a private cloud and a public cloud and an associated method of use |
US9213580B2 (en) | 2012-01-27 | 2015-12-15 | MicroTechnologies LLC | Transportable private cloud computing platform and associated method of use |
US9419941B2 (en) * | 2012-03-22 | 2016-08-16 | Varmour Networks, Inc. | Distributed computer network zone based security architecture |
US9432304B2 (en) | 2012-03-26 | 2016-08-30 | Oracle International Corporation | System and method for supporting live migration of virtual machines based on an extended host channel adaptor (HCA) model |
US9311122B2 (en) | 2012-03-26 | 2016-04-12 | Oracle International Corporation | System and method for providing a scalable signaling mechanism for virtual machine migration in a middleware machine environment |
US9129124B2 (en) * | 2012-04-12 | 2015-09-08 | Hewlett-Packard Development Company, L.P. | Dynamic provisioning of virtual systems |
US9594818B2 (en) | 2012-05-10 | 2017-03-14 | Oracle International Corporation | System and method for supporting dry-run mode in a network environment |
US8958340B2 (en) * | 2012-06-15 | 2015-02-17 | Dell Products L.P. | System and methods for open fabric management |
US9137173B2 (en) | 2012-06-19 | 2015-09-15 | Advanced Micro Devices, Inc. | Devices and methods for interconnecting server nodes |
US8930595B2 (en) | 2012-06-21 | 2015-01-06 | Advanced Micro Devices, Inc. | Memory switch for interconnecting server nodes |
TWI470550B (zh) * | 2012-06-26 | 2015-01-21 | Wistron Corp | 虛擬機器的通信方法以及伺服端系統 |
US20150207793A1 (en) * | 2012-07-31 | 2015-07-23 | Parvez Syed Mohamed | Feature Enablement or Disablement Based on Discovery Message |
US9026625B2 (en) * | 2012-08-06 | 2015-05-05 | American Megatrends, Inc. | System and method of MAC address assignment using dynamic MAC address protocol |
US8792502B2 (en) * | 2012-08-07 | 2014-07-29 | Cisco Technology, Inc. | Duplicate MAC address detection |
US9253287B2 (en) | 2012-08-20 | 2016-02-02 | Advanced Micro Devices, Inc. | Speculation based approach for reliable message communications |
US20140068088A1 (en) * | 2012-09-04 | 2014-03-06 | Advanced Micro Devices, Inc. | Systems and methods for processing media access control (mac) addresses |
US20140074968A1 (en) * | 2012-09-12 | 2014-03-13 | Sap Ag | Managing a server node infrastructure |
US9118707B2 (en) * | 2012-12-14 | 2015-08-25 | Verizon Patent And Licensing Inc. | Methods and systems for mitigating attack traffic directed at a network element |
GB2509977A (en) * | 2013-01-22 | 2014-07-23 | Ibm | Packet pre-processing unit which checks received packet validity and redundancy |
US10230794B2 (en) | 2013-03-15 | 2019-03-12 | Oracle International Corporation | System and method for efficient virtualization in lossless interconnection networks |
US9990221B2 (en) | 2013-03-15 | 2018-06-05 | Oracle International Corporation | System and method for providing an infiniband SR-IOV vSwitch architecture for a high performance cloud computing environment |
WO2014161133A1 (zh) * | 2013-04-01 | 2014-10-09 | 华为技术有限公司 | 虚拟机的数据交换方法、装置和系统 |
JP6036506B2 (ja) * | 2013-04-15 | 2016-11-30 | 富士通株式会社 | 障害影響範囲を特定するためのプログラム及び情報処理装置 |
US9060027B2 (en) * | 2013-07-05 | 2015-06-16 | Cisco Technology, Inc. | Assigning location identifiers to nodes in a distributed computer cluster network environment |
US9342669B2 (en) * | 2013-07-11 | 2016-05-17 | Dialogic, Inc. | Systems and methods of licensing and identification of virtual network appliances |
US9264362B2 (en) * | 2013-10-17 | 2016-02-16 | Cisco Technology, Inc. | Proxy address resolution protocol on a controller device |
EP2879049A4 (en) * | 2013-10-23 | 2015-07-15 | Huawei Tech Co Ltd | METHOD, SYSTEM AND DEVICE FOR PRODUCING A VIRTUAL MACHINE |
US10877951B2 (en) | 2014-01-22 | 2020-12-29 | International Business Machines Corporation | Network control software notification and invalidation of static entries |
US10419267B2 (en) | 2014-01-22 | 2019-09-17 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Network control software notification with advance learning |
US9973472B2 (en) | 2015-04-02 | 2018-05-15 | Varmour Networks, Inc. | Methods and systems for orchestrating physical and virtual switches to enforce security boundaries |
US9560081B1 (en) | 2016-06-24 | 2017-01-31 | Varmour Networks, Inc. | Data network microsegmentation |
US9716618B2 (en) | 2014-04-22 | 2017-07-25 | International Business Machines Corporation | Script termination |
US9417896B2 (en) * | 2014-05-19 | 2016-08-16 | International Business Machines Corporation | Allocating hypervisor resources |
KR101649909B1 (ko) * | 2014-09-25 | 2016-08-22 | 한국전자통신연구원 | 가상 머신 취약점 점검과 복구 방법 및 장치 |
US20160182320A1 (en) * | 2014-12-23 | 2016-06-23 | Intel Corporation | Techniques to generate a graph model for cloud infrastructure elements |
US10178070B2 (en) | 2015-03-13 | 2019-01-08 | Varmour Networks, Inc. | Methods and systems for providing security to distributed microservices |
US9467476B1 (en) | 2015-03-13 | 2016-10-11 | Varmour Networks, Inc. | Context aware microsegmentation |
US9609026B2 (en) | 2015-03-13 | 2017-03-28 | Varmour Networks, Inc. | Segmented networks that implement scanning |
US9438634B1 (en) | 2015-03-13 | 2016-09-06 | Varmour Networks, Inc. | Microsegmented networks that implement vulnerability scanning |
US9525697B2 (en) | 2015-04-02 | 2016-12-20 | Varmour Networks, Inc. | Delivering security functions to distributed networks |
US10305974B2 (en) | 2015-12-23 | 2019-05-28 | Intel Corporation | Ranking system |
US9787639B1 (en) | 2016-06-24 | 2017-10-10 | Varmour Networks, Inc. | Granular segmentation using events |
US10558250B2 (en) * | 2016-12-23 | 2020-02-11 | Oracle International Corporation | System and method for coordinated link up handling following switch reset in a high performance computing network |
US10445120B2 (en) * | 2017-05-03 | 2019-10-15 | Nicira, Inc. | Tiered application discovery |
CN109240799B (zh) * | 2018-09-06 | 2022-04-15 | 福建星瑞格软件有限公司 | 大数据平台集群容灾方法、系统及计算机可读存储介质 |
JP7234905B2 (ja) * | 2019-11-20 | 2023-03-08 | 横河電機株式会社 | 情報処理装置及びアドレス重複管理方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007180769A (ja) * | 2005-12-27 | 2007-07-12 | Hewlett-Packard Development Co Lp | 情報取得装置およびその方法 |
CN101809943A (zh) * | 2007-09-24 | 2010-08-18 | 英特尔公司 | 用于虚拟端口通信的方法和系统 |
WO2010096155A1 (en) * | 2009-02-23 | 2010-08-26 | Cisco Technology, Inc. | Distributed data center access switch |
CN101986666A (zh) * | 2010-11-05 | 2011-03-16 | 清华大学 | 基于虚拟网络接口和反向地址转换的网络数据传输方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011198299A (ja) * | 2010-03-23 | 2011-10-06 | Fujitsu Ltd | プログラム、コンピュータ、通信装置および通信制御システム |
-
2011
- 2011-05-13 US US13/107,397 patent/US20120287931A1/en not_active Abandoned
-
2012
- 2012-05-08 US US13/466,754 patent/US20120291028A1/en not_active Abandoned
- 2012-05-11 CN CN2012101465774A patent/CN102790716A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007180769A (ja) * | 2005-12-27 | 2007-07-12 | Hewlett-Packard Development Co Lp | 情報取得装置およびその方法 |
CN101809943A (zh) * | 2007-09-24 | 2010-08-18 | 英特尔公司 | 用于虚拟端口通信的方法和系统 |
WO2010096155A1 (en) * | 2009-02-23 | 2010-08-26 | Cisco Technology, Inc. | Distributed data center access switch |
CN101986666A (zh) * | 2010-11-05 | 2011-03-16 | 清华大学 | 基于虚拟网络接口和反向地址转换的网络数据传输方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473636A (zh) * | 2013-09-03 | 2013-12-25 | 沈效国 | 一种收集、分析和分发网络商业信息的系统数据组件 |
WO2015067123A1 (en) * | 2013-11-07 | 2015-05-14 | International Business Machines Corporation | Management of addresses in virtual machines |
US9634948B2 (en) | 2013-11-07 | 2017-04-25 | International Business Machines Corporation | Management of addresses in virtual machines |
US9674103B2 (en) | 2013-11-07 | 2017-06-06 | International Business Machines Corporation | Management of addresses in virtual machines |
CN106462457A (zh) * | 2014-02-07 | 2017-02-22 | 瑞典爱立信有限公司 | 虚拟化应用集群 |
CN110875844A (zh) * | 2018-08-30 | 2020-03-10 | 丛林网络公司 | 用于虚拟执行元件的多虚拟网络接口支持 |
US11171830B2 (en) | 2018-08-30 | 2021-11-09 | Juniper Networks, Inc. | Multiple networks for virtual execution elements |
CN110875844B (zh) * | 2018-08-30 | 2022-03-25 | 瞻博网络公司 | 用于虚拟执行元件的多虚拟网络接口支持 |
US11792126B2 (en) | 2019-03-29 | 2023-10-17 | Juniper Networks, Inc. | Configuring service load balancers with specified backend virtual networks |
CN113811858A (zh) * | 2019-04-26 | 2021-12-17 | 微软技术许可有限责任公司 | 使用机架顶交换机启用对虚拟网络中的专用资源的访问 |
Also Published As
Publication number | Publication date |
---|---|
US20120291028A1 (en) | 2012-11-15 |
US20120287931A1 (en) | 2012-11-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102790716A (zh) | 使用物理网络交换机保护虚拟化计算环境的方法和装置 | |
US20220407818A1 (en) | Container-aware application dependency identification | |
CN106489251B (zh) | 应用拓扑关系发现的方法、装置和系统 | |
US9672502B2 (en) | Network-as-a-service product director | |
EP3606008A1 (en) | Method and device for realizing resource scheduling | |
WO2016082501A1 (zh) | 一种云计算系统中云应用攻击行为处理方法、装置及系统 | |
US20160359878A1 (en) | Synthetic data for determining health of a network security system | |
WO2019184164A1 (zh) | 自动部署Kubernetes从节点的方法、装置、终端设备及可读存储介质 | |
US20170279668A1 (en) | Fault detection of service chains in a sdn/nfv network environment | |
CN105684357A (zh) | 虚拟机中地址的管理 | |
WO2016160523A1 (en) | Conditional declarative policies | |
US20140245394A1 (en) | Trust-based computing resource authorization in a networked computing environment | |
US10951646B2 (en) | Biology based techniques for handling information security and privacy | |
CN106599694A (zh) | 安全防护管理方法、计算机系统和计算机可读取存储媒体 | |
US9246774B2 (en) | Sample based determination of network policy violations | |
CN102821021A (zh) | 在虚拟化计算环境下运行虚拟交换机的方法和系统 | |
CN102841810A (zh) | 用于在计算环境中执行线程的方法和系统 | |
CN103685608A (zh) | 一种自动配置安全虚拟机ip地址的方法及装置 | |
CN103595801A (zh) | 一种云计算系统及其虚拟机实时监控方法 | |
US9485215B2 (en) | Multiple inspection avoidance (MIA) using a protection scope | |
US9215129B2 (en) | Automatically constructing protection scope in a virtual infrastructure | |
US20190258497A1 (en) | Template-based software discovery and management in virtual desktop infrastructure (VDI) environments | |
WO2017102035A1 (en) | Trust based computing | |
US20170279844A1 (en) | Identifying and remediating at-risk resources in a computing environment | |
RU2557476C2 (ru) | Аппаратно-вычислительный комплекс с повышенными надежностью и безопасностью в среде облачных вычислений |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20121121 |