地址解析方法及相应的系统、交换机和服务器技术方案

技术编号:9571644 阅读:95 留言:0更新日期:2014-01-16 04:24
本申请公开一种地址解析方法、相应的通信系统、交换机以及服务器。其中,地址解析方法,包括:交换机接收ARP报文;识别所述ARP报文;当所接收的ARP报文为非地址解析服务器的IP节点发出的广播ARP报文时,单播至地址解析服务器。通过本申请,交换机将非地址解析服务器的IP节点的广播ARP报文由广播变为单播,大幅减少广播域内广播报文数量,减小带宽消耗。

【技术实现步骤摘要】
地址解析方法及相应的系统、交换机和服务器
本申请涉及通信领域,尤其涉及一种地址解析方法以及相应的交换机、地址解析服务器以及通信系统。
技术介绍
在TCP/IP协议当中,每个主机被分配了一个32位的IP地址。IP地址是网络层用于标识主机的逻辑地址,以此来对数据包进行转发和路由。但在二层以太网环境中,数据传输时以太网设备并不识别IP地址,而是根据物理地址来确定目的接口。这一物理地址就是48位的MAC(MediaAccessControl)地址。同一网段或VLAN内的主机向其他主机发送数据时需要知道对端的MAC地址,地址解析协议(ARP,AddressResolutionProtocol)就是用来将IP地址转化成相应MAC地址的方法。ARP报文的格式如图1所示。IP节点(主机或路由器)会在自己的ARP缓冲区(ARPcache)中建立一个ARP表。当主机A需要将一个数据包发送到目的主机B时,会首先检查自己ARP表中是否存在主机B的对应表项。如果有,就直接利用该表项中的MAC地址;如果没有,就向本地网段广播一个ARP请求。此ARP请求报文中的源MAC地址和源IP地址为主机A的MAC地址和IP地址,目标IP地址为主机B的IP地址,目标MAC地址为0。该网段所有主机收到这个ARP请求后,会检查ARP请求报文中的目标IP地址是否和自己的IP地址一致。如果不一致就忽略此数据包;如果一致,即接收者是主机B,则在ARP表中记录或更新主机A的IP地址和MAC地址对应信息,并向主机A发送单播ARP应答。ARP应答报文中的源MAC地址和源IP地址为主机B的MAC地址和IP地址,目标MAC地址和目标IP地址为主机A的MAC地址和IP地址。主机A收到这个ARP响应后,将主机B的MAC地址添加到自己的ARP表中,并封装数据包进行数据传输。当主机新加入一个网络时,会向网络广播ARP免费报文。ARP免费报文可看成是一种特殊的ARP请求报文,其目标IP地址是发送者自身的IP地址。通过发送免费ARP,主机可以向网络通告自身存在,并且还可以进行重复地址检测。现有地址解析机制在发送ARP请求和ARP免费报文时采用广播方式,导致网络中产生大量的广播报文。事实上,在ARP报文交互中,只有请求者和被请求者获得了足够多的信息,网络中其他主机并没有真正参与到这一交互当中,大量的广播报文没有发挥应有的作用,反而浪费网络带宽,加大网络设备负荷,造成数据传输延时过大。随着大型数据中心的兴起以及云计算、虚拟化技术的应用,现有ARP机制效率过低对网络造成的问题日益突出。一个数据中心中有成千上万台服务器,而应用虚拟机(VM,VirtualMachine)技术,在一个物理计算机上可以虚拟出多个虚拟计算机,大量的VM在地址解析过程中会产生大量广播报文,特别是VM在短时间内密集进行地址解析时会出现广播高峰。现有ARP机制的局限性随着VM数量增加而被急剧放大。
技术实现思路
为了减少广播域内广播报文的数量,减小带宽消耗。本申请的一个实施方式公开了一种地址解析方法,包括:交换机接收ARP报文;识别所述ARP报文;当所接收的ARP报文为非地址解析服务器的IP节点发出的广播ARP报文时,单播至地址解析服务器。本申请的另一个实施方式公开了一种通信系统,包括交换机,接收ARP报文,识别所述ARP报文,当所接收的ARP报文为非地址解析服务器的IP节点发出的广播ARP报文时,单播至地址解析服务器;所述地址解析服务器,接收经修改的ARP报文,并向所述交换机返回ARP应答。本申请的另一个实施方式公开了一种交换机,包括:收发模块,接收ARP报文;识别模块,识别所述ARP报文;当所述识别模块识别出所接收的ARP报文为非地址解析服务器的IP节点发出的广播ARP报文时,所述收发模块将其单播至地址解析服务器。本申请的另一个实施方式公开了一种地址解析服务器,包括:收发模块,接收ARP报文;判断及维护模块,维护ARP表,所述ARP表包括ARP条目,所述ARP条目包括IP节点的IP地址、MAC地址和ARP条目类型,所述类型至少包括有效和无效。通过本申请,交换机将非地址解析服务器的IP节点的广播ARP报文由广播变为单播,大幅减少广播域内广播报文数量,减小带宽消耗。附图说明图1是ARP报文格式示意图;图2是根据本申请的一个实施方式的通信系统的示意图;图3是根据本申请的一个实施方式的方法1000;图4是根据本申请的一个实施方式的、地址解析服务器新建或更新ARP条目的方法2000;图5是根据本申请的一个实施方式的方法3000;图6是根据本申请的一个实施方式的方法4000;图7是根据本申请的一个实施方式的方法5000;图8是根据本申请的一个实施方式的地址解析服务器自检方法6000;图9是根据本申请的一个实施方式的交换机的示意图;图10是根据本申请的另一个实施方式的交换机的示意图;图11是根据本申请的一个实施方式的地址解析服务器的示意图。具体实施方式下面结合附图详细描述本申请的实施方式。图2是根据本申请的一个实施方式的通信系统的示意图。其中包括交换机10、地址解析服务器20、主机A和主机B。其中主机A和主机B是系统中除地址解析服务器20和交换机10以外的任何IP节点,例如用户终端、路由器等。图2仅是示意图,本领域技术人员应当理解地址解析服务器20可以与主机B直接相连,也可以通过交换机(群)与主机B相连。图3是根据本申请的一个实施方式的方法示意图1000。下面结合图2所示的通信系统来描述方法1000。在步骤S100中,交换机10接收ARP报文。然后在步骤S110中,交换机10识别该ARP报文。接着在步骤S120中,交换机10将识别出的非地址解析服务器的IP节点发送的广播ARP报文单播至地址解析服务器20。该实施方式中,交换机通过将非地址解析服务器的IP节点发送的广播ARP报文由广播变为单播,大幅减少广播域内广播报文数量,减小带宽消耗。作为一种选择,交换机10可以维护地址解析服务器可用列表(第一列表),用于至少记录能够使用的地址解析服务器的MAC地址。交换机10识别出所接收的ARP报文为广播ARP查询报文或免费报文(例如,操作类型字段为1),并且ARP内容分组中的源MAC地址未记录在第一列表中,则确定所接收的ARP报文为非地址解析服务器的IP节点发送的广播ARP报文。然后,例如,交换机10将识别出的、非地址解析服务器的IP节点发送的、广播ARP报文的、二层的目的地址(目的MAC地址)修改为地址解析服务器20的MAC地址,然后将修改后的ARP报文单播给该地址解析服务器20。作为一种选择,地址解析服务器20维护ARP表,ARP表包括ARP条目。ARP条目可包括MAC地址、IP地址,还可包括接口信息、协议信息、时间信息(包括生存时间、老化时间)以及ARP条目类型等。接口信息表示地址解析服务器20学到该ARP条目的物理端口,协议信息表明网络层协议。地址解析服务器20可以由管理员手动添加或删除ARP条目。每一个ARP条目对应不同的条目类型,例如,手动添加的条目为static类型,通过ARP报文学到的条目为dynamic(动态)类型。Static(静态)类型的ARP条目长期有效;Dynamic类型的条目对应有老化时间和生存时间本文档来自技高网
...
地址解析方法及相应的系统、交换机和服务器

【技术保护点】
一种地址解析方法,包括:交换机接收ARP报文;识别所述ARP报文;当所接收的ARP报文为非地址解析服务器的IP节点发出的广播ARP报文时,单播至地址解析服务器。

【技术特征摘要】
1.一种地址解析方法,包括:交换机接收ARP报文;识别所述ARP报文,所述交换机维护属于自身的第一列表,用于至少记录能够使用的地址解析服务器的MAC地址;当所接收的ARP报文为非地址解析服务器的IP节点发出的广播ARP报文时,单播至地址解析服务器;其中,所述识别所述ARP报文的步骤包括:所述交换机判断出所接收的ARP报文为广播ARP查询报文,且ARP分组内容中的源MAC地址未记录在所述第一列表中,则确定所述ARP报文为非地址解析服务器的IP节点发出的广播ARP查询报文。2.如权利要求1所述的方法,其中,所述单播至地址解析服务器的步骤包括:将所述广播ARP报文中的二层的目的地址修改为所述地址解析服务器的MAC地址。3.如权利要求2所述的方法,其中,所述将所述广播ARP报文中的二层的目的地址修改为所述地址解析服务器的MAC地址的步骤包括:根据所述第一列表将所述广播ARP报文中的二层的目的地址修改为所述地址解析服务器的MAC地址。4.如权利要求1所述的方法,其中,所述地址解析服务器维护ARP表,所述ARP表包括ARP条目,所述ARP条目包括IP节点的IP地址、MAC地址以及ARP条目类型,所述类型至少包括有效和无效;所述方法还包括:所述地址解析服务器判断所接收的ARP查询报文的ARP分组内容中的目标IP地址是否记录在所述ARP表中,以及相应的ARP条目的类型;判断结果为是且类型为有效,则向所述交换机发送ARP应答;判断结果为否或类型为无效,则保留所述ARP查询报文,并向网络中进行广播ARP查询,以获取ARP应答并发送至所述交换机。5.如权利要求3所述的方法,其中,所述识别所述ARP报文的步骤包括:所述交换机判断出所接收的ARP报文为广播ARP免费报文,且ARP分组内容中的源MAC地址未记录在所述第一列表中,则所述ARP报文为非地址解析服务器的IP节点发出的ARP免费报文。6.如权利要求1所述的方法,其中,所述地址解析服务器维护ARP表,所述ARP表包括ARP条目,所述ARP条目包括ARP条目类型和时间信息,所述类型至少包括有效和无效,所述时间信息包括老化时间,所述老化时间是所述ARP条目类型为有效的时间;所述方法还包括:当与所述老化时间对应的、预定的第一时间阈值到达时,向所述ARP条目中的MAC地址单播ARP查询报文,以接收ARP应答。7.如权利要求1所述的方法,其中,所述地址解析服务器维护ARP表,所述ARP表包括ARP条目,所述ARP条目包括ARP条目类型和时间信息,所述类型至少包括有效和无效,所述时间信息包括生存时间,所述生存时间能够记录所述ARP条目在所述ARP表中的时间;所述方法还包括:当与所述生存时间对应的、预定的第二时间阈值到达时,向网络进行广播ARP查询,以接收ARP应答。8.如权利要求1或4-7中任一项所述的方法,其中,所述地址解析服务器维护ARP表,所述ARP表包括ARP条目,所述ARP条目包括IP节点的IP地址、MAC地址、MAC-IP对应关系和ARP条目类型,所述类型至少包括有效和无效;所述方法还包括:每当所述地址解析服务器接收到ARP报文,则根据所接收到的ARP报文的ARP分组内容中的源MAC地址和源IP地址新建或更新ARP条目;其中,所接收到的ARP报文包括所述交换机单播给所述地址解析服务器的ARP报文以及非地址解析服务器的IP节点发出的ARP应答。9.如权利要求8所述的方法,所述新建ARP条目的步骤包括:所述地址解析服务器判断出所述源MAC地址和源IP地址均未记录在所述ARP表中,则新建与所述源MAC地址和源IP地址相应的ARP条目并添加至所述ARP表;判断出所述源MAC地址与源IP地址记录中至少一个在所述ARP表中,且所述源MAC-源IP对应关系与所述ARP表中记录的MAC-IP对应关系不一致,则新建与所述源MAC地址和源IP地址相应的ARP条目,然后添加至所述ARP表,并删除记录在所述ARP表中的与所述源MAC地址或源IP地址对应的原ARP条目。10.如权利要求8所述的方法,所述ARP条目还包括ARP条目的时间信息,所述更新ARP条目的步骤包括:所述地址解析服务器判断出所述源MAC地址或源IP地址记录在所述ARP表中,且所述源MAC-源IP对应关系与所述ARP表中记录的MAC-IP对应关系一致,更新所述ARP表中相应的ARP条目,重置所述时间信息;如果判断出所述ARP条目的类型为无效,则更改为有效。11.如权利要求3所述的方法,所述识别所述ARP报文的步骤包括:所述交换机判断出所接收的ARP报文为广播ARP报文,且ARP分组内容中的源MAC地址与目标MAC地址一致、源IP与目标IP一致,则所接收的ARP报文为所述地址解析服务器或其他地址解析服务器发送的ARP通告报文;则所述方法还包括:更新所维护的所述第一列表。12.如权利要求11所述的方法,所述交换机还维护第二列表,至少记录能够信任的地址解析服务器的MAC地址;所述方法还包括:在识别出所接收的ARP报文为所述ARP通告报文后,判断所述ARP通告报文的ARP分组内容中的源MAC地址是否记录在所述第二列表中;判断结果为是,则更新所维护的第一列表;判断结果为否,则抛弃所述ARP通告报文。13.如权利要求3所述的方法,所述地址解析服务器维护属于自身的所述第一列表,所述方法还包括:所述地址解析服务器判断出所接收的ARP报文为广播ARP报文,且ARP分组内容中的源MAC地址与目标MAC地址一致、源IP与目标IP一致,则所接收的ARP报文为其他地址解析服务器发送的ARP通告报文;更新所维护的第一列表。14.如权利要求13所述的方法,所述地址解析服务器维护属于自身的所述第二列表,至少记录能够信任的地址解析服务器的MAC地址;所述方法还包括:在识别出所接收的ARP报文为所述ARP通告报文后,判断所述ARP通告报文的ARP分组内容中的源MAC地址是否记录在所述第二列表中;判断结果为是,则更新所维护的第一列表;判断结果为否,则抛弃所述ARP通告报文。15.如权利要求9所述的方法,其中,所述地址解析服务器维护属于自身的第一列表,用于至少记录能够使用的地址解析服务器的MAC地址;所述方法还包括:所述地址解析服务器新建ARP条目之后,分别向所述第一列表中记录的MAC地址单播ARP免费报文,以使与记录的MAC地址对应的地址解析服务器了解所述新建ARP条目。16.一种通信系统,包括:交换机,接收ARP报文,识别所述ARP报文,所述交换机维护属于自身的第一列表,用于至少记录能够使用的地址解析服务器的MAC地址,当所接收的ARP报文为非地址解析服务器的IP节点发出的广播ARP报文时,单播至地址解析服务器,其中,所述识别所述ARP报文的步骤包括:所述交换机判断出所接收的ARP报文为广播ARP查询报文,且ARP分组内容中的源MAC地址未记录在所述第一列表中,则确定所述ARP报文为非地址解析服务器的IP节点发出的广播ARP查询报文;所述地址解析服务器,接收经修改的ARP报文,并向所述交换机返回ARP应答,且确定所述ARP报文为非地址解析服务器的IP节点发出的ARP报文。17.如权利要求16所述的系统,其中,所述交换机将识别出的、非地址解析服务器的IP节点发出的广播ARP报文中的二层的目的地址修改为所述地址解析服务器的MAC地址,以将修改后的ARP报文单播至所述地址解析服务器。18.如权利要求17所述的系统,其中,所述交换机根据所述第一列表将识别出的、非地址解析服务器的IP节点发出的广播ARP报文中的二层的目的地址修改为所述地址解析服务器的MAC地址。19.如权利要求17所述的系统,其中,所述地址解析服务器维护ARP表,所述ARP表包括ARP条目,所述ARP条目包括IP节点的IP地址、MAC地址和ARP条目类型,所述类型至少包括有效和无效;所述地址解析服务器判断所接收的ARP查询报文的ARP分组内容中的目标IP地址是否记录在所述ARP表中,以及相应的ARP条目的类型;判断结果为是且类型为有效,则向所述交换机发送ARP应答;判断结果为否或类型为无效,则保留所述ARP查询报文,并向网络中进行广播ARP查询,以获取ARP应答并发送至所述交换机。20.如权利要求18所述的系统,其中,所述交换机判断出所接收的ARP报文为广播ARP免费报文,且ARP分组内容中的源MAC地址未记录在所述第一列表中,则确定所述ARP报文为非地址解析服务器的IP节点发出的ARP免费报文。21.如权利要求16所述的系统,其中,所述地址解析服务器维护ARP表,所述ARP表包括ARP条目,所述ARP条目包括ARP条目类型和时间信息,所述类型至少包括有效和无效,所述时间信息包括老化时间,所述老化时间是所述ARP条目类型为有效的时间;当与所述老化时间对应的、预定的第一时间阈值到达时,所述地址解析服务器向所述ARP条目中的MAC地址单播ARP查询报文,以接收ARP应答。22.如权利要求16所述的系统,其中,所述地址解析服务器维护ARP表,所述ARP表包括ARP条目,所述ARP条目包括ARP条目类型和时间信息,所述类型至少包括有效和无效,所述时间信息包括生存时间,所述生存时间能够记录所述ARP条目在所述ARP表中的时间;当与所述生存时间对应的、预定的第二时间阈值到达时,所述地址解析服务器向网络进行广播ARP查询,以接收ARP应答。23.如权利要求17或19-22中任一项所述的系统,其中,所述地址解析服务器维护ARP表,所述ARP表包括ARP条目,所述ARP条目包括IP节点的IP地址、MAC地址、MAC-IP对应关系和ARP条目类型和时间信息,所...

【专利技术属性】
技术研发人员:樊鹏李连源黄璐李晨
申请(专利权)人:中国移动通信集团公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1