CN101924707A - 地址解析协议报文的处理方法和设备 - Google Patents
地址解析协议报文的处理方法和设备 Download PDFInfo
- Publication number
- CN101924707A CN101924707A CN2010102920753A CN201010292075A CN101924707A CN 101924707 A CN101924707 A CN 101924707A CN 2010102920753 A CN2010102920753 A CN 2010102920753A CN 201010292075 A CN201010292075 A CN 201010292075A CN 101924707 A CN101924707 A CN 101924707A
- Authority
- CN
- China
- Prior art keywords
- function module
- virtual machine
- agent function
- address
- request message
- 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
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明公开了一种地址解析协议报文的处理方法和设备,该方法包括:当接收到ARP请求报文时,代理功能模块根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否与所述代理功能模块对应;如果判断结果为是,所述代理功能模块向所述ARP请求报文的源设备发送ARP响应报文,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址;如果判断结果为否、且所述源设备与所述代理功能模块对应,所述代理功能模块向所述代理功能模块对应的虚拟机之外发送所述ARP请求报文;如果判断结果为否、且所述源设备不与所述代理功能模块对应,所述代理功能模块丢弃所述ARP请求报文。本发明降低了虚拟机环境下的ARP报文数量,有益于提高网络的整体性能。
Description
技术领域
本发明涉及通信领域,尤其涉及一种地址解析协议报文的处理方法和设备。
背景技术
通过虚拟机软件可以在一台物理计算机上模拟出一台或多台虚拟的计算机(虚拟机),这些虚拟机可以像真实的物理计算机一样进行工作,例如可以安装操作系统、安装应用程序、访问网络资源等,给我们的工作和生产带来了极大的便利。
现有技术中,同一网段内的每个虚拟机在向其他虚拟机发送数据时需要使用该其他虚拟机的MAC(Media Access Control,介质访问控制)地址封装数据包。如果自身没有该MAC地址则通过广播ARP(Address Resolution Protocol,地址解析协议)请求报文获取对应虚拟机的MAC地址。如图1所示,假设虚拟机A和B(即图1中的主机A和主机B)在同一个网段,主机A向主机B发送消息的过程包括:
(1)主机A首先查看自己的ARP表,确定其中是否包含有主机B对应的ARP表项。如果找到了对应的MAC地址,则主机A直接利用ARP表中的MAC地址,对IP数据包进行帧封装,并将数据包发送给主机B;
(2)如果主机A在ARP表中找不到对应的MAC地址,则缓存该数据报文,然后以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP地址和发送端MAC地址为主机A的IP地址和MAC地址,目标IP地址和目标MAC地址为主机B的IP地址和全0的MAC地址。由于ARP请求报文以广播方式发送,该网段上的所有主机都可以接收到该请求。
(3)收到ARP请求的主机比较自己的IP地址和ARP请求报文中的目标IP地址,当两者相同时(如主机B)进行如下处理:将ARP请求报文中的发送端(即主机A)的IP地址和MAC地址存入自己的ARP表中,之后以单播方式发送ARP响应报文给主机A,其中包含了自己的MAC地址。
(4)主机A收到ARP响应报文后,将主机B的MAC地址加入到自己的ARP表中以用于后续报文的转发,同时将IP数据包进行封装后发送出去。
上述过程会导致网络中的ARP报文大幅增加,如图2所示,假设该网段内有三台物理计算机,每个物理主机上均安装了VMware ESX Server软件,并分别虚拟了20、30和40台主机。假设每个主机间进行了一次通信,那么在采用虚拟技术前后的ARP报文的统计信息如表1所示:
表1
因此,当一网段内的虚拟机增多时,该网段内的ARP报文将会大量增多,影响网络的整体性能。
发明内容
本发明提供了一种地址解析协议报文的处理方法和设备,降低了虚拟机环境下的ARP报文数量,有益于提高网络的整体性能。
本发明提供了一种地址解析协议报文的处理方法,应用于设置有虚拟机的设备,虚拟机通过其所在设备上对应的代理功能模块收发报文,该方法进一步包括:
当接收到地址解析协议ARP请求报文时,所述代理功能模块根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否与所述代理功能模块对应;
如果判断结果为是,所述代理功能模块向所述ARP请求报文的源设备发送ARP响应报文,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址;
如果判断结果为否、且所述源设备与所述代理功能模块对应,所述代理功能模块向所述代理功能模块对应的虚拟机之外发送所述ARP请求报文;
如果判断结果为否、且所述源设备不与所述代理功能模块对应,所述代理功能模块丢弃所述ARP请求报文。
所述代理功能模块根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否与所述代理功能模块对应包括:所述代理功能模块在虚拟机的IP地址与MAC地址的对应关系中,查找与所述ARP请求报文的目的IP地址对应的MAC地址,如果查找成功,则判断所述目的虚拟机与所述代理功能模块对应,否则判断所述目的虚拟机不与所述代理功能模块对应。
所述ARP响应报文内携带与所述目的IP地址对应的MAC地址具体为携带所述目的虚拟机的MAC地址;所述代理功能模块在向所述代理功能模块对应的虚拟机之外发送的所述ARP请求报文内携带所述源设备的IP地址。
所述代理功能模块向所述ARP请求报文的源设备发送ARP响应报文,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址包括:
当所述源设备与所述代理功能模块对应时,所述ARP响应报文内携带所述目的虚拟机的MAC地址;
当所述源设备不与所述代理功能模块对应时,所述ARP响应报文内携带所述代理功能模块的MAC地址。
所述代理功能模块向所述代理功能模块对应的虚拟机之外发送所述ARP请求报文包括:
所述代理功能模块将所述ARP请求报文的源MAC地址修改为自身MAC地址并向所述代理功能模块之外发送。
所述代理功能模块具体为设备内核,与所述代理功能模块对应的虚拟机具体为所述设备内核所属设备上的虚拟机。
所述代理功能模块具体为所述设备上的虚拟交换机,所述设备上包括一个或多个虚拟交换机,不同虚拟交换机对应不同的虚拟机。
一种地址解析协议报文的处理设备,该设备上设置有虚拟机,设备上还包括代理功能模块,虚拟机通过对应的代理功能模块收发报文,该代理功能模块包括:
接收单元,用于接收地址解析协议ARP请求报文;
判断单元,与所述接收单元连接,用于根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否与所述代理功能模块对应;
发送单元,与所述判断单元连接,用于当所述判断单元的判断结果为是时,向所述ARP请求报文的源设备发送ARP响应报文,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址;当所述判断单元的判断结果为否、且所述源设备与所述代理功能模块对应时,向所述代理功能模块对应的虚拟机之外发送所述ARP请求报文;
丢弃单元,与所述判断单元连接,用于当所述判断单元的判断结果为否、且所述源设备不与所述代理功能模块对应时,丢弃所述ARP请求报文。
所述判断单元包括:
查找子单元,用于在虚拟机的IP地址与MAC地址的对应关系中,查找与所述ARP请求报文的目的IP地址对应的MAC地址;
判断子单元,与所述查找子单元连接,用于所述查找子单元查找成功时,判断所述目的虚拟机与所述代理功能模块对应,否则判断所述目的虚拟机不与所述代理功能模块对应。
所述发送单元在所述ARP响应报文内携带与所述目的IP地址对应的MAC地址具体为携带所述目的虚拟机的MAC地址,所述发送单元还用于在向所述代理功能模块对应的虚拟机之外发送的所述ARP请求报文内携带所述源设备的IP地址。
所述发送单元还用于:当所述判断单元的判断结果为是、且所述源设备与所述代理功能模块对应时,在所述ARP响应报文内携带所述目的虚拟机的MAC地址;当所述判断单元的判断结果为是、且所述源设备不与所述代理功能模块对应时,在所述ARP响应报文内携带所述代理功能模块的MAC地址。
所述发送单元还用于:当所述判断单元的判断结果为否、且所述源设备不与所述代理功能模块对应时,将所述ARP请求报文的源MAC地址修改为自身MAC地址并向所述代理功能模块之外发送。
所述代理功能模块具体为设备内核,与所述代理功能模块对应的虚拟机具体为所述设备内核所属设备上的虚拟机。
所述代理功能模块具体为所述设备上的虚拟交换机,所述设备上包括一个或多个虚拟交换机,不同虚拟交换机对应不同的虚拟机。
与现有技术相比,本发明至少具有以下优点:
本发明中,代理功能模块在接收到虚拟机发送的ARP请求报文时,判断ARP请求报文的目的虚拟机是否与代理功能模块对应,根据判断结果进行ARP报文处理,由于虚拟机之间的ARP报文通信是通过代理功能模块实现的,通过代理功能模块对接收到的ARP请求报文进行处理,控制ARP报文的发送,降低了虚拟机环境下的ARP报文数量,有益于提高网络的整体性能。
附图说明
图1是现有技术中虚拟机A和B之间ARP报文交互示意图;
图2是现有技术中虚拟环境下组网示意图;
图3是本发明提供的地址解析协议报文的处理方法的流程示意图;
图4是本发明提供的虚拟环境下组网示意图;
图5是图4所示组网中地址解析过程示意图;
图6-7是本发明提供的地址解析协议报文的处理设备的结构示意图。
具体实施方式
本发明提供一种地址解析协议报文的处理方法,应用于设置有虚拟机的设备,虚拟机通过其所在设备上对应的代理功能模块收发报文。具体的,当接收到地址解析协议ARP请求报文时,所述代理功能模块根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否与所述代理功能模块对应。如果判断结果为是,所述代理功能模块向所述ARP请求报文的源设备发送ARP响应报文,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址;如果判断结果为否、且所述源设备与所述代理功能模块对应,所述代理功能模块向所述代理功能模块对应的虚拟机之外发送所述ARP请求报文;如果判断结果为否、且所述源设备不与所述代理功能模块对应,所述代理功能模块丢弃所述ARP请求报文。
其中,代理功能模块可以为设备的内核,此时,源设备与所述代理功能模块对应指的是源设备在设备上。
当设备上配置有虚拟交换机时,一个虚拟交换机可以对应一个或多个虚拟机,不同虚拟交换机对应不同的虚拟机,该代理功能模块此时可以为虚拟交换机,源设备与所述代理功能模块对应指的是源设备与该虚拟交换机对应。
其中的源设备为虚拟机或者独立的物理设备等。
下面针对代理功能模块为设备的内核和虚拟交换机分别介绍本发明提供的地址解析协议报文的处理方法,其中的源设备以虚拟机为例进行介绍。
本发明提供一种地址解析协议报文的处理方法,应用于设置有虚拟机的设备,虚拟机通过其所在设备的内核kernal与其他虚拟机通信,如图3所示,包括:
步骤301,当接收到地址解析协议ARP请求报文时,所述设备的内核根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否为本设备上的虚拟机;如果判断结果为是,执行步骤302;如果判断结果为否,执行步骤303。
设备的内核存储设备上的虚拟机的IP地址与MAC地址的对应关系,例如虚拟机IP地址与MAC地址的映射表。设备的内核在接收到ARP请求报文后,在该映射表内查找与ARP请求报文的目的IP地址对应的MAC地址,如果查找成功,则判断目的虚拟机在本设备上,否则判断目的虚拟机不在本设备上。该判断方式仅为一种具体实现方式,本领域技术人员容易想到其他判断方式,例如设备的内核还可以仅查找是否该设备上是否存储有ARP请求报文的目的IP地址,如果已经存储,则判断目的虚拟机在本设备上,否则判断目的虚拟机不在本设备上。上述以映射表方式存储虚拟机IP地址与MAC地址的对应关系仅为一种具体实现方式,设备上还可以以其他方式记录虚拟机IP地址与MAC地址的对应关系,例如不以表格方式存储,而是直接存储IP地址和MAC地址,例如,循环存储IP地址和MAC地址,每一IP地址与其后紧挨的MAC地址具有对应关系。
步骤302,所述设备的内核将所述目的虚拟机的MAC地址向所述ARP请求报文的源虚拟机发送。
设备的内核获取目的虚拟机的MAC地址向源虚拟机发送之后,设备的内核不发送该ARP请求报文,包括源虚拟机在该设备上或者不在该设备上的两种情况。具体的,如果源虚拟机在该设备上,设备的内核不需要向其他虚拟机请求MAC地址,因而不向本设备内以及本设备外的虚拟机发送ARP请求报文;如果源虚拟机不在该设备上,设备的内核已经发送了目的虚拟机的MAC地址,也不在需要发送ARP请求报文。需要说明的是,此时设备的内涵可以向目的虚拟机发送包括源虚拟机的IP地址和MAC地址的消息,由目的虚拟机更新其ARP表。
步骤303,若所述源虚拟机在本设备上,所述设备的内核向所述设备之外的虚拟机发送所述ARP请求报文;若所述源虚拟机不在本设备上,所述设备的内核丢弃所述ARP请求报文。
此处需要说明的是,如果判断结果为否、且源虚拟机在本设备上,设备的内核不向本设备上的虚拟机发送ARP请求报文。
另外,设备的内核可以根据ARP请求报文的源IP地址和/或源MAC地址判断所述源虚拟机是否在本设备上。当然,设备的内核也可以不通过上述方式判断源虚拟机是否在本设备上,而是根据报文的入方向判断报文发送方是否为本设备上的虚拟机,从而获知源虚拟机是否在本设备上。
下面结合一具体应用场景介绍本发明提供的地址解析协议报文的处理方法。
如图4所示,假设虚拟机A和虚拟机B属于同一个网段但分属不同的ESX服务器,虚拟机A要向虚拟机B发送信息,虚拟机A首先查看自己的ARP表,确定其中是否包含有虚拟机B对应的ARP表项;如果找到了对应的MAC地址,则虚拟机A直接利用ARP表中的MAC地址对IP数据包进行帧封装,并将数据包发送给虚拟机B;如果虚拟机A在ARP表中找不到虚拟机B对应的MAC地址,则将缓存该数据报文,然后以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP地址和发送端MAC地址为虚拟机A的IP地址和MAC地址,目标IP地址和目标MAC地址为虚拟机B的IP地址和全0的MAC地址。该地址解析过程如图5所示,包括:
步骤501,ESX服务器A内核接收到虚拟机A发送的ARP请求报文,查找其上的虚拟机IP地址和MAC地址映射表,如果查找到虚拟机B的MAC地址,则执行步骤502,否则执行步骤503。
步骤502,ESX服务器A内核向虚拟机A发送ARP响应报文,同时不再将ARP请求报文向外广播(包括服务器上的其他虚拟虚拟机和服务器外的其他虚拟机)。
步骤503,ESX服务器A内核向外广播ARP请求报文,但不再向本服务器上的虚拟虚拟机发送ARP请求报文。
步骤504,ESX服务器B内核收到ARP请求报文,查找其上的虚拟机IP地址和MAC地址映射表,如果没有查找到虚拟机B的MAC地址,执行步骤505;如果查找到虚拟机B的MAC地址,执行步骤506。
步骤505,ESX服务器B内核丢弃ARP请求报文,不再将该广播报文向内部的虚拟虚拟机广播。
步骤506,ESX服务器B内核构造一个ARP响应报文,该ARP响应报文的源MAC地址为虚拟机B的MAC地址,源IP地址为虚拟机B的IP地址,并将该报文以单播方式发送给虚拟机A,同时不再将该广播报文向内部的虚拟虚拟机广播。
此时,ESX服务器B内核还可以向虚拟机B发送一条消息,让虚拟机B更新自己的ARP表,即将虚拟机A的IP地址和MAC地址存入虚拟机B的ARP表中。
步骤507,ESX服务器A内核收到以虚拟机A的MAC地址为目的MAC地址的报文时,直接将该报文转发给虚拟机A。
步骤508,虚拟机A收到ARP响应报文后,将虚拟机B的MAC地址加入到自己的ARP表中以用于后续报文的转发,同时将IP数据包进行封装后发送。
仍以图2的例子为例,假设每个主机间至少进行了一次通信,那么在虚拟环境下采用本发明提供的地址解析协议报文的处理方法前后的统计信息如表2所示:
表2
由表2可以清楚获知,本发明提供的方法将会使网络中的ARP报文特别是广播报文数大幅降低。通过采用本发明提供的方法,设备的内核在接收到虚拟机发送的ARP请求报文时,判断ARP请求报文的目的虚拟机是否为本设备上的虚拟机,根据判断结果进行ARP报文处理,由于虚拟机之间的ARP报文通信是通过设备的内核实现的,通过设备的内核对接收到的ARP请求报文进行处理,控制ARP报文的发送,降低了虚拟机环境下的ARP报文数量,有益于提高网络的整体性能。
本发明提供的上述地址解析协议报文的处理方法中,还可以采用其他实现方式。具体的,在上述步骤302中,设备的内核首先判断本设备是否为源虚拟机所属设备,如果是,则将目的虚拟机的MAC地址向源虚拟机发送;如果不是,设备的内核将自身MAC地址向源虚拟机发送。在步骤303中,若源虚拟机在本设备上,设备的内核将ARP请求报文内携带的源MAC地址修改为自身MAC地址再向设备之外的虚拟机发送。采用这种方式时,虚拟机之间的数据交互需要经过设备的内核处理,对设备的内核的处理能力要求较高,但同样可以解决现有技术中ARP报文数量多的问题。
本发明还提供一种地址解析协议报文的处理方法,应用于设置有虚拟机的设备,该设备内还设置一个或多个虚拟交换机,不同虚拟交换机对应不同的虚拟机,通过其对应的虚拟交换机与其他虚拟机、虚拟交换机或设备通信,如图4所示,包括:
步骤401,当接收到地址解析协议ARP请求报文时,虚拟交换机根据ARP请求报文的目的IP地址判断ARP请求报文的目的虚拟机是否与本虚拟交换机对应;如果判断结果为是,执行步骤402;如果判断结果为否,执行步骤403。
虚拟交换机查找虚拟机的IP地址与MAC地址的对应关系,例如虚拟机IP地址与MAC地址的映射表,该映射表可以存储于虚拟交换机、或者设备上某个配置的存储位置。
步骤402,虚拟交换机将目的虚拟机的MAC地址向ARP请求报文的源虚拟机发送。
虚拟交换机获取目的虚拟机的MAC地址向源虚拟机发送之后,虚拟交换机不发送ARP请求报文,包括源虚拟机与虚拟交换机对应或者不对应两种情况。具体的,如果源虚拟机与虚拟交换机对应,虚拟交换机不需要向其他虚拟机请求MAC地址,不向本虚拟交换机以及其他虚拟交换机对应的虚拟机发送ARP请求报文;如果源虚拟机与虚拟交换机不对应,虚拟交换机已经发送了目的虚拟机的MAC地址,也不再需要发送ARP请求报文。需要说明的是,此时虚拟交换机可以向目的虚拟机发送包括源虚拟机的IP地址和MAC地址的消息,由目的虚拟机更新其ARP表。
步骤403,若源虚拟机与虚拟交换机对应,虚拟交换机向本虚拟交换机之外发送ARP请求报文;若源虚拟机不与虚拟交换机对应,虚拟交换机丢弃ARP请求报文。
另外,虚拟交换机可以根据ARP请求报文的源IP地址和/或源MAC地址判断所述源虚拟机是否在本设备上。当然,虚拟交换机也可以不通过上述方式判断源虚拟机是否在本设备上,而是根据报文的入方向判断报文发送方是否为本设备上的虚拟机,从而获知源虚拟机是否在本设备上。
本发明提供的上述地址解析协议报文的处理方法中,还可以采用其他实现方式。具体的,在上述步骤402中,虚拟交换机首先判断源虚拟机是否与本虚拟交换机对应,如果是,将目的虚拟机的MAC地址向源虚拟机发送;如果不是,虚拟交换机在ARP响应报文内将自身MAC地址向源虚拟机发送。在步骤403中,若源虚拟机与本虚拟交换机对应,虚拟交换机将ARP请求报文内携带的源MAC地址修改为自身MAC地址再向设备之外发送。采用这种方式时,虚拟机之间的数据交互需要经过虚拟交换机处理,对虚拟交换机的处理能力要求较高,但同样可以解决现有技术中ARP报文数量多的问题。
本发明提供的一种地址解析协议报文的处理设备,该设备上设置有虚拟机,设备上还包括代理功能模块,虚拟机通过对应的代理功能模块收发报文,如图6所示,该代理功能模块包括:
接收单元11,用于接收地址解析协议ARP请求报文;
判断单元12,与所述接收单元11连接,用于根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否与所述代理功能模块对应;
发送单元13,与所述判断单元12连接,用于当所述判断单元的判断结果为是时,向所述ARP请求报文的源设备发送ARP响应报文,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址;当所述判断单元的判断结果为否、且所述源设备与所述代理功能模块对应时,向所述代理功能模块对应的虚拟机之外发送所述ARP请求报文;
丢弃单元14,与所述判断单元12连接,用于当所述判断单元的判断结果为否、且所述源设备不与所述代理功能模块对应时,丢弃所述ARP请求报文。
如图7所示,所述判断单元12包括:
查找子单元121,用于在虚拟机的IP地址与MAC地址的对应关系中,查找与所述ARP请求报文的目的IP地址对应的MAC地址;
判断子单元122,与所述查找子单元121连接,用于所述查找子单元查找成功时,判断所述目的虚拟机与所述代理功能模块对应,否则判断所述目的虚拟机不与所述代理功能模块对应。
所述发送单元13在所述ARP响应报文内携带与所述目的IP地址对应的MAC地址具体为携带所述目的虚拟机的MAC地址,所述发送单元还用于在向所述代理功能模块对应的虚拟机之外发送的所述ARP请求报文内携带所述源设备的IP地址。
所述发送单元13还用于:当所述判断单元的判断结果为是、且所述源设备与所述代理功能模块对应时,在所述ARP响应报文内携带所述目的虚拟机的MAC地址;当所述判断单元的判断结果为是、且所述源设备不与所述代理功能模块对应时,在所述ARP响应报文内携带所述代理功能模块的MAC地址。
所述发送单元13还用于:当所述判断单元的判断结果为否、且所述源设备不与所述代理功能模块对应时,将所述ARP请求报文的源MAC地址修改为自身MAC地址并向所述代理功能模块之外发送。
所述代理功能模块具体为设备内核,与所述代理功能模块对应的虚拟机具体为所述设备内核所属设备上的虚拟机。
所述代理功能模块具体为所述设备上的虚拟交换机,所述设备上包括一个或多个虚拟交换机,不同虚拟交换机对应不同的虚拟机。
本发明中,代理功能模块在接收到虚拟机发送的ARP请求报文时,判断ARP请求报文的目的虚拟机是否与代理功能模块对应,根据判断结果进行ARP报文处理,由于虚拟机之间的ARP报文通信是通过代理功能模块实现的,通过代理功能模块对接收到的ARP请求报文进行处理,控制ARP报文的发送,降低了虚拟机环境下的ARP报文数量,有益于提高网络的整体性能。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (14)
1.一种地址解析协议报文的处理方法,应用于设置有虚拟机的设备,其特征在于,虚拟机通过其所在设备上对应的代理功能模块收发报文,该方法进一步包括:
当接收到地址解析协议ARP请求报文时,所述代理功能模块根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否与所述代理功能模块对应;
如果判断结果为是,所述代理功能模块向所述ARP请求报文的源设备发送ARP响应报文,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址;
如果判断结果为否、且所述源设备与所述代理功能模块对应,所述代理功能模块向所述代理功能模块对应的虚拟机之外发送所述ARP请求报文;如果判断结果为否、且所述源设备不与所述代理功能模块对应,所述代理功能模块丢弃所述ARP请求报文。
2.如权利要求1所述的方法,其特征在于,所述代理功能模块根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否与所述代理功能模块对应包括:所述代理功能模块在虚拟机的IP地址与MAC地址的对应关系中,查找与所述ARP请求报文的目的IP地址对应的MAC地址,如果查找成功,则判断所述目的虚拟机与所述代理功能模块对应,否则判断所述目的虚拟机不与所述代理功能模块对应。
3.如权利要求1或2所述的方法,其特征在于,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址具体为携带所述目的虚拟机的MAC地址;所述代理功能模块在向所述代理功能模块对应的虚拟机之外发送的所述ARP请求报文内携带所述源设备的IP地址。
4.如权利要求1或2所述的方法,其特征在于,所述代理功能模块向所述ARP请求报文的源设备发送ARP响应报文,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址包括:
当所述源设备与所述代理功能模块对应时,所述ARP响应报文内携带所述目的虚拟机的MAC地址;
当所述源设备不与所述代理功能模块对应时,所述ARP响应报文内携带所述代理功能模块的MAC地址。
5.如权利要求4所述的方法,其特征在于,所述代理功能模块向所述代理功能模块对应的虚拟机之外发送所述ARP请求报文包括:
所述代理功能模块将所述ARP请求报文的源MAC地址修改为自身MAC地址并向所述代理功能模块之外发送。
6.如权利要求1或2所述的方法,其特征在于,所述代理功能模块具体为设备内核,与所述代理功能模块对应的虚拟机具体为所述设备内核所属设备上的虚拟机。
7.如权利要求1或2所述的方法,其特征在于,所述代理功能模块具体为所述设备上的虚拟交换机,所述设备上包括一个或多个虚拟交换机,不同虚拟交换机对应不同的虚拟机。
8.一种地址解析协议报文的处理设备,该设备上设置有虚拟机,其特征在于,设备上还包括代理功能模块,虚拟机通过对应的代理功能模块收发报文,该代理功能模块包括:
接收单元,用于接收地址解析协议ARP请求报文;
判断单元,与所述接收单元连接,用于根据所述ARP请求报文的目的IP地址判断所述ARP请求报文的目的虚拟机是否与所述代理功能模块对应;
发送单元,与所述判断单元连接,用于当所述判断单元的判断结果为是时,向所述ARP请求报文的源设备发送ARP响应报文,所述ARP响应报文内携带与所述目的IP地址对应的MAC地址;当所述判断单元的判断结果为否、且所述源设备与所述代理功能模块对应时,向所述代理功能模块对应的虚拟机之外发送所述ARP请求报文;
丢弃单元,与所述判断单元连接,用于当所述判断单元的判断结果为否、且所述源设备不与所述代理功能模块对应时,丢弃所述ARP请求报文。
9.如权利要求8所述的设备,其特征在于,所述判断单元包括:
查找子单元,用于在虚拟机的IP地址与MAC地址的对应关系中,查找与所述ARP请求报文的目的IP地址对应的MAC地址;
判断子单元,与所述查找子单元连接,用于所述查找子单元查找成功时,判断所述目的虚拟机与所述代理功能模块对应,否则判断所述目的虚拟机不与所述代理功能模块对应。
10.如权利要求8或9所述的设备,其特征在于,所述发送单元在所述ARP响应报文内携带与所述目的IP地址对应的MAC地址具体为携带所述目的虚拟机的MAC地址,所述发送单元还用于在向所述代理功能模块对应的虚拟机之外发送的所述ARP请求报文内携带所述源设备的IP地址。
11.如权利要求8或9所述的设备,其特征在于,所述发送单元还用于:当所述判断单元的判断结果为是、且所述源设备与所述代理功能模块对应时,在所述ARP响应报文内携带所述目的虚拟机的MAC地址;当所述判断单元的判断结果为是、且所述源设备不与所述代理功能模块对应时,在所述ARP响应报文内携带所述代理功能模块的MAC地址。
12.如权利要求11所述的设备,其特征在于,所述发送单元还用于:当所述判断单元的判断结果为否、且所述源设备不与所述代理功能模块对应时,将所述ARP请求报文的源MAC地址修改为自身MAC地址并向所述代理功能模块之外发送。
13.如权利要求8或9所述的设备,其特征在于,所述代理功能模块具体为设备内核,与所述代理功能模块对应的虚拟机具体为所述设备内核所属设备上的虚拟机。
14.如权利要求8或9所述的设备,其特征在于,所述代理功能模块具体为所述设备上的虚拟交换机,所述设备上包括一个或多个虚拟交换机,不同虚拟交换机对应不同的虚拟机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102920753A CN101924707A (zh) | 2010-09-27 | 2010-09-27 | 地址解析协议报文的处理方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102920753A CN101924707A (zh) | 2010-09-27 | 2010-09-27 | 地址解析协议报文的处理方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101924707A true CN101924707A (zh) | 2010-12-22 |
Family
ID=43339362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102920753A Pending CN101924707A (zh) | 2010-09-27 | 2010-09-27 | 地址解析协议报文的处理方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101924707A (zh) |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012166751A2 (en) | 2011-06-01 | 2012-12-06 | Intel Corporation | Circuitry to maintain correlation between sets of addresses |
WO2013152716A1 (en) * | 2012-04-09 | 2013-10-17 | Huawei Technologies Co., Ltd. | L3 gateway for vxlan |
CN103647853A (zh) * | 2013-12-04 | 2014-03-19 | 华为技术有限公司 | 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器 |
WO2014079005A1 (zh) * | 2012-11-21 | 2014-05-30 | 华为技术有限公司 | Mac地址强制转发装置及方法 |
CN103905283A (zh) * | 2012-12-25 | 2014-07-02 | 华为技术有限公司 | 基于可扩展虚拟局域网的通信方法及装置 |
CN104038422A (zh) * | 2013-03-08 | 2014-09-10 | 华为技术有限公司 | 报文转发方法和网关 |
CN104301446A (zh) * | 2014-08-08 | 2015-01-21 | 杭州华三通信技术有限公司 | 一种报文处理方法、交换机设备及系统 |
WO2015024373A1 (zh) * | 2013-08-19 | 2015-02-26 | 华为技术有限公司 | 一种虚拟机通信方法及装置 |
CN104734960A (zh) * | 2013-12-20 | 2015-06-24 | 中国移动通信集团公司 | 一种报文处理方法及控制器设备 |
WO2015106461A1 (zh) * | 2014-01-20 | 2015-07-23 | 华为技术有限公司 | 地址获取方法及网络虚拟化边缘设备 |
CN105376345A (zh) * | 2015-11-27 | 2016-03-02 | 曙光信息产业(北京)有限公司 | 一种云平台安全处理方法、控制器和云计算系统 |
CN106878320A (zh) * | 2017-03-09 | 2017-06-20 | 郑州云海信息技术有限公司 | 一种防止ip地址欺骗的方法和装置 |
CN106878075A (zh) * | 2017-02-17 | 2017-06-20 | 新华三技术有限公司 | 一种报文处理方法和装置 |
WO2017107871A1 (zh) * | 2015-12-25 | 2017-06-29 | 华为技术有限公司 | 访问控制方法和网络设备 |
CN107342956A (zh) * | 2017-07-14 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种实现广播处理的方法及装置 |
CN107846290A (zh) * | 2016-09-18 | 2018-03-27 | 中兴通讯股份有限公司 | 一种拓补关系管理方法和管理设备 |
CN110266589A (zh) * | 2019-06-24 | 2019-09-20 | 深信服科技股份有限公司 | 一种数据通信方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1411210A (zh) * | 2002-03-08 | 2003-04-16 | 华为技术有限公司 | 以太网接入应用中代理地址解析协议的方法 |
WO2007143833A1 (en) * | 2006-06-12 | 2007-12-21 | Research In Motion Limited | System and method for handling address resolution protocol requests |
CN101123614A (zh) * | 2007-09-04 | 2008-02-13 | 中兴通讯股份有限公司 | 一种处理地址解析协议报文的方法及通信装置 |
CN101170555A (zh) * | 2006-10-25 | 2008-04-30 | 联发科技股份有限公司 | 地址解析协议高速缓存管理方法以及相关通信装置 |
-
2010
- 2010-09-27 CN CN2010102920753A patent/CN101924707A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1411210A (zh) * | 2002-03-08 | 2003-04-16 | 华为技术有限公司 | 以太网接入应用中代理地址解析协议的方法 |
WO2007143833A1 (en) * | 2006-06-12 | 2007-12-21 | Research In Motion Limited | System and method for handling address resolution protocol requests |
CN101170555A (zh) * | 2006-10-25 | 2008-04-30 | 联发科技股份有限公司 | 地址解析协议高速缓存管理方法以及相关通信装置 |
CN101123614A (zh) * | 2007-09-04 | 2008-02-13 | 中兴通讯股份有限公司 | 一种处理地址解析协议报文的方法及通信装置 |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103563333A (zh) * | 2011-06-01 | 2014-02-05 | 英特尔公司 | 维持在地址集合之间的相关性的电路 |
EP2716013A4 (en) * | 2011-06-01 | 2015-08-19 | Intel Corp | CIRCUITRY FOR MAINTAINING CORRELATION BETWEEN ADDRESS SETS |
WO2012166751A2 (en) | 2011-06-01 | 2012-12-06 | Intel Corporation | Circuitry to maintain correlation between sets of addresses |
US8923155B2 (en) | 2012-04-09 | 2014-12-30 | Futurewei Technologies, Inc. | L3 gateway for VXLAN |
WO2013152716A1 (en) * | 2012-04-09 | 2013-10-17 | Huawei Technologies Co., Ltd. | L3 gateway for vxlan |
US8923149B2 (en) | 2012-04-09 | 2014-12-30 | Futurewei Technologies, Inc. | L3 gateway for VXLAN |
WO2014079005A1 (zh) * | 2012-11-21 | 2014-05-30 | 华为技术有限公司 | Mac地址强制转发装置及方法 |
CN103905283B (zh) * | 2012-12-25 | 2017-12-15 | 华为技术有限公司 | 基于可扩展虚拟局域网的通信方法及装置 |
CN103905283A (zh) * | 2012-12-25 | 2014-07-02 | 华为技术有限公司 | 基于可扩展虚拟局域网的通信方法及装置 |
WO2014135024A1 (zh) * | 2013-03-08 | 2014-09-12 | 华为技术有限公司 | 报文转发方法和网关 |
CN104038422A (zh) * | 2013-03-08 | 2014-09-10 | 华为技术有限公司 | 报文转发方法和网关 |
CN104038422B (zh) * | 2013-03-08 | 2017-11-17 | 华为技术有限公司 | 报文转发方法和网关 |
CN107920020B (zh) * | 2013-03-08 | 2021-01-15 | 华为技术有限公司 | 报文处理方法和网关 |
CN107920020A (zh) * | 2013-03-08 | 2018-04-17 | 华为技术有限公司 | 报文处理方法和网关 |
CN104426816A (zh) * | 2013-08-19 | 2015-03-18 | 华为技术有限公司 | 一种虚拟机通信方法及装置 |
WO2015024373A1 (zh) * | 2013-08-19 | 2015-02-26 | 华为技术有限公司 | 一种虚拟机通信方法及装置 |
CN104426816B (zh) * | 2013-08-19 | 2018-08-21 | 华为技术有限公司 | 一种虚拟机通信方法及装置 |
CN103647853B (zh) * | 2013-12-04 | 2018-07-03 | 华为技术有限公司 | 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器 |
CN103647853A (zh) * | 2013-12-04 | 2014-03-19 | 华为技术有限公司 | 一种在VxLAN中发送ARP报文发送方法、VTEP及VxLAN控制器 |
CN104734960A (zh) * | 2013-12-20 | 2015-06-24 | 中国移动通信集团公司 | 一种报文处理方法及控制器设备 |
CN104734960B (zh) * | 2013-12-20 | 2018-02-23 | 中国移动通信集团公司 | 一种报文处理方法及控制器设备 |
WO2015106461A1 (zh) * | 2014-01-20 | 2015-07-23 | 华为技术有限公司 | 地址获取方法及网络虚拟化边缘设备 |
US9985926B2 (en) | 2014-01-20 | 2018-05-29 | Huawei Technologies Co., Ltd. | Address acquiring method and network virtualization edge device |
CN104301446B (zh) * | 2014-08-08 | 2019-04-09 | 新华三技术有限公司 | 一种报文处理方法、交换机设备及系统 |
CN104301446A (zh) * | 2014-08-08 | 2015-01-21 | 杭州华三通信技术有限公司 | 一种报文处理方法、交换机设备及系统 |
CN105376345A (zh) * | 2015-11-27 | 2016-03-02 | 曙光信息产业(北京)有限公司 | 一种云平台安全处理方法、控制器和云计算系统 |
CN105376345B (zh) * | 2015-11-27 | 2019-01-25 | 曙光信息产业(北京)有限公司 | 一种云平台安全处理方法、控制器和云计算系统 |
WO2017107871A1 (zh) * | 2015-12-25 | 2017-06-29 | 华为技术有限公司 | 访问控制方法和网络设备 |
CN107846290A (zh) * | 2016-09-18 | 2018-03-27 | 中兴通讯股份有限公司 | 一种拓补关系管理方法和管理设备 |
CN106878075A (zh) * | 2017-02-17 | 2017-06-20 | 新华三技术有限公司 | 一种报文处理方法和装置 |
CN106878075B (zh) * | 2017-02-17 | 2019-08-06 | 新华三技术有限公司 | 一种报文处理方法和装置 |
CN106878320A (zh) * | 2017-03-09 | 2017-06-20 | 郑州云海信息技术有限公司 | 一种防止ip地址欺骗的方法和装置 |
CN107342956A (zh) * | 2017-07-14 | 2017-11-10 | 郑州云海信息技术有限公司 | 一种实现广播处理的方法及装置 |
CN110266589A (zh) * | 2019-06-24 | 2019-09-20 | 深信服科技股份有限公司 | 一种数据通信方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101924707A (zh) | 地址解析协议报文的处理方法和设备 | |
CN108449282B (zh) | 一种负载均衡方法及其装置 | |
CN101207604B (zh) | 一种虚拟机系统及其通信处理方法 | |
EP2769307B1 (en) | Answer augmentation system for authoritative dns servers | |
CN108924274B (zh) | 域名系统dns处理方法、装置、存储介质及电子设备 | |
CN109088799B (zh) | 一种客户端接入方法、装置、终端以及存储介质 | |
CN109617816B (zh) | 一种数据报文的传输方法和装置 | |
CN101635731B (zh) | 一种抵御mac地址欺骗攻击的方法及设备 | |
CN103229489B (zh) | 虚拟机控制策略的配置方法和交换机 | |
CN110012118B (zh) | 一种提供网络地址转换nat服务的方法及控制器 | |
CN103338152A (zh) | 一种组播报文转发方法和主控板 | |
CN102970387A (zh) | 一种域名解析方法、装置及系统 | |
CN112968965A (zh) | Nfv网络节点的元数据服务方法、服务器及存储介质 | |
CN102572012B (zh) | 一种消息处理方法、交换机及系统 | |
CN101980488B (zh) | Arp表项的管理方法和三层交换机 | |
CN114338832B (zh) | 一种容器云平台的网络协议转换方法及系统 | |
CN104995610A (zh) | 平台内的联网 | |
CN104426816B (zh) | 一种虚拟机通信方法及装置 | |
US12003417B2 (en) | Communication method and apparatus | |
CN111294316B (zh) | 基于用户态协议栈虚拟路由器的网络隔离方法和装置 | |
CN105025042B (zh) | 一种确定数据信息的方法及系统、代理服务器 | |
US20100238930A1 (en) | Router and method of forwarding ipv6 packets | |
CN114679370B (zh) | 一种服务器托管方法、装置、系统及存储介质 | |
CN104717216A (zh) | 一种网络接入控制方法、装置及核心设备 | |
CN104969533A (zh) | 一种数据包处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20101222 |