分配地址的方法和网络设备的制造方法
【技术领域】
[0001]本发明实施例涉及信息技术领域,并且更具体地,涉及分配地址的方法和网络设备。
【背景技术】
[0002]随着网络规模的不断扩大和网络复杂度的提高,计算机的数量经常超过可供分配的互联网协议(英文:Internet Protocol,简称:IP)地址的数量。同时,随着可以接入互联网的移动设备(例如,可以接入互联网的手机、平板电脑、笔记本电脑等)以及无线网络的广泛应用,可以接入互联网的设备的位置也经常发生变化。在此情况下,这些设备的IP地址需要经常更新,这就导致了网络配置越来越复杂。为了解决网络配置复杂的问题,业界提出了动态主机配置协议(英文:Dynamic Host Configurat1n Protocol,简称:DHCP)。DHCP的主要功能就是为网络中的网络设备分配相应的IP地址、子网掩码、网关等信息。
[0003]在使用DHCP的网络中,必须存在至少一个集中式的DHCP服务器。当DHCP网络中的新加入的网络设备会通过发送广播消息的方式来发现该DHCP服务器。该至少一个DHCP服务器在接收到该新加入的网络设备发送的该广播消息后,会根据IP地址分配的优先次序选择一个IP地址,并将该IP地址以及其他参数通过DHCP-OFFER报文发送给该新加入的网络设备。当该DHCP的网络中存在多个DHCP服务器时,该新加入的网络设备可以接收到多个DHCP服务器发送的DHCP-OFFER报文。该新加入的网络设备只接受第一个收到DHCP-OFFER报文。该新加入的网络设备在收到DHCP-OFFER报文后,会通过广播的方式发送DHCP-REQUEST报文,该DHCP-REQUEST报文中包括DHCP服务器在DHCP-OFFER中分配的IP地址。发送该DHCP-OFFER的报文的DHCP服务器如果确认将该IP地址分配给该新加入的网络设备,则向该新加入的网络设备返回DHCP-ACK报文。发送该DHCP-OFFER的报文的DHCP服务器如果确认不将该IP地址分配给该新加入的网络设备,则向该新加入的网络设备返回DHCP-NACK报文。
[0004]由于DHCP技术是通过集中式的DHCP服务器分配IP地址的,当网络规模较大时,集中式的DHCP服务器分配地址的压力较大。同时,DHCP服务器在分配地址时,无法按照网络设备的具体位置来安排。
【发明内容】
[0005]本发明实施例提供分配地址的方法和网络设备,能够可以避免当网络规模较大时,集中式DHCP服务器分配地址的压力较大的问题。
[0006]第一方面,本发明实施例提供一种分配地址的方法,该方法应用于N维的圆环面Torus网络,N为正整数,该方法包括:第一网络设备接收至少一个第二网络设备发送的位置信息;该第一网络设备根据该至少一个第二网络设备发送的位置信息,确定该第一网络设备的位置信息;该第一网络设备根据该第一网络设备的位置信息,确定该第一网络设备的互联网协议IP地址。
[0007]结合第一方面,在第一方面的第一种可能的实现方式中,该第一网络设备接收至少一个第二网络设备发送的位置信息,包括:该第一网络设备接收到一个第二网络设备发送的位置信息;该第一网络设备根据该至少一个第二网络设备发送的位置信息,确定该第一网络设备的位置信息,包括:该第一网络设备确定该第二网络设备发送的位置信息对应的N维坐标仅存在一维坐标与原点的坐标不同的情况下,确定该第一网络设备的位置信息为该第二网络设备发送的位置信息。
[0008]结合第一方面,在第一方面的第二种可能的实现方式中,该第一网络设备接收至少一个第二网络设备发送的位置信息,包括:该第一网络设备接收到M个第二网络设备发送的位置信息,其中M为小于或等于N且大于或等于2的正整数;该第一网络设备根据该至少一个第二网络设备发送的位置信息,确定该第一网络设备的位置信息,包括:该第一网络设备在确定该M个第二网络设备中的每个第二网络设备发送的位置信息对应的N维坐标相同的情况下,确定该第一网络设备的位置信息为接收到的该M个第二网络设备发送的位置信息。
[0009]结合第一方面,在第一方面的第三种可能的实现方式中,在该第一网络设备接收至少一个第二网络设备发送的位置信息之前,该方法还包括:该第一网络设备接收K个第三网络设备发送的位置信息,其中K为大于或等于2的正整数;该第一网络设备确定该K个第三网络设备发送的位置信息中存在至少两个不同的位置信息的情况下,向位于该原点的网络设备发送第一错误报告,该第一错误报告包括该第一网络设备的接收的位置信息、接收到位置信息的端口号。
[0010]结合第一方面或第一方面的上述任一种可能的实现方式,在第一方面的第四种可能的实现方式中,该方法还包括:该第一网络设备向该至少一个第二网络设备中的每个第二网络设备发送确认消息,其中,向每个第二网络设备发送的确认消息用于指示该第一网络设备成功接收该每个第二网络设备发送的位置信息。
[0011]结合第一方面或第一方面的上述任一种可能的实现方式,在第一方面的第五种可能的实现方式中,该方法还包括:该第一网络设备根据该第一网络设备的位置信息,确定至少一个第四网络设备中的每个第四网络设备的位置信息;该第一网络设备向该至少一个第四网络设备中的每个第四网络设备发送该每个第四网络设备的位置信息。
[0012]结合第一方面的第五种可能的实现方式,在第一方面的第六种可能的实现方式中,该方法还包括:该第一网络设备在预定时间内未接收到该至少一个第四网络设备中的一个第四网络设备发送的确认消息时,向位于原点的网络设备发送第二错误报告,该第二错误报告包括该第一网络设备的位置信息以及未收到确认消息的第四网络设备的位置信息。
[0013]第二方面,本发明实施例提供一种第一网络设备,该第一网络设备N维的圆环面Torus网络中的一个网络设备,N为正整数,该第一网络设备包括:接收单元,用于接收至少一个第二网络设备发送的位置信息;确定单元,用于根据该至少一个第二网络设备发送的位置信息,确定该第一网络设备的位置信息;该确定单元,还用于根据该第一网络设备的位置信息,确定该第一网络设备的互联网协议IP地址。
[0014]结合第二方面,在第二方面的第一种可能的实现方式中,该接收单元,具体用于接收到一个第二网络设备发送的位置信息;该确定单元,具体用于在确定该第二网络设备发送的位置信息对应的N维坐标仅存在一维坐标与原点的坐标不同的情况下,确定该第一网络设备的位置信息为该第二网络设备发送的位置信息。
[0015]结合第二方面,在第二方面的第二种可能的实现方式中,该接收单元,具体用于接收到M个第二网络设备发送的位置信息,其中M为小于或等于N且大于或等于2的正整数;该确定单元,具体用于在确定该M个第二网络设备中的每个第二网络设备发送的位置信息对应的N维坐标相同的情况下,确定该第一网络设备的位置信息为接收到的该M个第二网络设备发送的位置信息。
[0016]结合第二方面,在第二方面的第三种可能的实现方式中,该接收单元,还用于接收K个第三网络设备发送的位置信息,其中K为大于或等于2的正整数;该第一网络设备还包括:发送单元,用于在该确定单元确定该K个第三网络设备发送的位置信息中存在至少两个不同的位置信息的情况下,向位于该原点的网络设备发送第一错误报告,该第一错误报告包括该第一网络设备的接收的位置信息、接收到位置信息的端口号。
[0017]结合第二方面,在第二方面的第四种可能的实现方式中,该第一网络设备还包括:发送单元,用于向该至少一个第二网络设备中的每个第二网络设备发送确认消息,其中,向每个第二网络设备发送的确认消息用于指示该第一网络设备成功接收该每个第二网络设备发送的位置信息。
[0018]结合第二方面,在第二方面的第五种可能的实现方式中,该确定单元,还用于根据该第一网络设备的位置信息,确定至少一个第四网络设备中的每个第四网络设备的位置信息;该第一网络设备还包括:发送单元,用于向该至少一个第四网络设备中的每个第四网络设备发送该每个第四网络设备的位置信息。
[0019]结合第二方面,在第二方面的第六种可能的实现方式中,该发送单元,还用于在该接收单元在预定时间内未接收到该至少一个第四网络设备中的一个第四网络设备发送的确认消息时,向位于原点的网络设备发送第二错误报告,该第二错误报告包括该第一网络设备的位置信息以及未收到确认消息的第四网络设备的位置信息。
[0020]上述技术方案中,Torus网络中的第一网络设备可以接收该Torus网络中的第二网络设备发送的位置信息。这样,由于Torus网络中网络设备所在的位置具有唯一性,因此Torus网络中的每个网络设备在确定了自身的位置信息后,可以根据自身的位置信息确定出唯一的IP地址(例如通过特定的IP地址分配策略,该特定的IP地址分配策略与网络设备的位置信息相关)。这样,该Torus网络中的网络设备无需通过一个统一的DHCP服务器获取IP地址。因此,可以避免当网络规模较大时,集中式DHCP服务器分配地址的压力较大的问题。同时,转发策略会根据坐标进行路由,但是业务遵守的仍是IP地址。这样,可以兼容业务使用并保留用户习惯,对上层软件不
感知。此外,还可以方便对Torus网络的管理。
【附图说明】
[0021]为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]图1是一个一维Torus网络的示意图。
[0023]图2是一个二维Torus网络示意图。
[0024]图3是一个三维Torus网络示意图。
[0025]图4是根据本发明实施例提供的一种分配地址的方法。
[0026]图5是根据本发明实施例提供的第一网络设备的结构框图。
【具体实施方式】
[0027]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。圆环面(英文=Torus)网络拓扑结构是在超级计算机和数据中心中常用的网络互联结构。Torus拓扑结构可以有不同的维度。例如,图1是一个一维Torus网络的示意图。如图1所示的一维Torus网络中包括3个网络设备。图2是一个二维Torus网络示意图。如图2所示的二维Torus网络中包括9个网络设备。图2所示的二维Torus可以看作是将如图1所示的一维Torus网络复制三份后,连接相应的网络设备后形成的。图3是一个三维Torus网络示意图。图3所示的Torus网络中包括27个网络设备,即3x3x3个网络设备。为了清楚期间,图3中仅示出了立方体表面的连线。图3所示的三维Torus网络可以看作是将图2所示的二维Torus网络复制三份后连接相应的节点形成的。以此类推,可以将任意一个η-1维的Torus网络扩展到η维Torus网络。Torus网络中的每个网络设备可以同时收发数据,并且都具有存储转发能力。
[0028]本说明书中所称的Torus网络中的两个网络设备可以直接通信,是指Torus网络中的网络设备不通过该Torus网络中的其他类型相同的网络设备进行通信,而并非是指两个网络设备不通过任何的路由设备或网关设备等不同类型的网络设备进行通信。例如,坐标为(1,1)的网络设备可以直接同坐标(1,2)的网络设备进行通信,而无需经过其他坐标的网络设备。当然,坐标为(1,1)的网络设备在同坐标(1,2)的网络设备进行通信时可能会经过一些其他种类的网络设备(例如网关等)。
[0029]图4是根据本发明实施例提供的一种分配地址的方法。图4所示的方法可以应用于N维的Torus网络中,N为正整数。
[0030]401,第一网络设备接收至少一个第二网络设备发送的位置信息。
[0031]402,该第一网络设备根据该至少一个第二网络设备发送的位置信息,确定该第一网络设备的位置信息。
[0032]403,该第一网络设备根据该第一网络设备的位置信息,确定该第一网络设备的互联网协议(英文:Internet Protoco,简称:IP)地址。
[0033]根据图4所示的方法,Torus网络中的第一网络设备可以接收该Torus网络中的第二网络设备发送的位置信息。这样,由于Torus网络中网络设备所在的位置具有唯一性,因此Torus网络中的每个网络设备在确定了自身的位置信息后,可以根据自身的位置信息确定出唯一的IP地址(例如通过特定的IP地址分配策略,该特定的IP地址分配策略与网络设备的位置信息相关)。这样,该Torus网络中的网络设备无需通过一个统一的DHCP服务器获取IP地址。因此,可以避免当网络规模较大时,集中式DHCP服务器分配地址的压力较大的问题。同时,转发策略会根据坐标进行路由,但是业务遵守的仍是IP地址。这样,可以兼容业务使用并保留用户习惯,对上层软件不感知。此外,还可以方便对Torus网络的管理。
[0034]可选的,作为一个实施例,该第一网络设备接收至少一个第二网络设备发送的位置信息,包括:该第一网络设备接收到一个第二网络设备发送的位置信息;该第一网络设备根据该至少一个第二网络设备发送的位置信息,确定该第一网络设备的位置信息,包括:该第一网络设备确定该第二网络设备发送的位置信息对应的N维坐标仅存在一维坐标与原点的坐标不同的情况下,确定该第一网络设备的位置信息为该第二网络设备发送的位置信息。
[0035]可选的,作为另一个实施例,该第一网络设备接收至少一个第二网络设备发送的位置信息,包括:该第一网络设备接收到M个第二网络设备发送的位置信息,其中M为小于或等于N且大于或等于2的正整数;该第一网络设备根据该至少一个第二网络设备发送的位置信息,确定该第一网络设备的位置信息,包括:该第一网络设备在确定该M个第二网络设备中的每个第二网络设备发送的位置信息对应的N维坐标相同的情况下,确定该第一网络设备的位置信息为接收到的该M个第二网络设备发送的位置信息。
[0036]可选的,作为另一个实施例,在该第一网络设备接收至少一个第二网络设备发送的位置信息之前,该方法还包括:该第一网络设备接收K个第三网络设备发送的位置信息,其中K为大于或等于2的正整数;该第一网络设备确定该K个第三网络设备发送的位置信息中存在至少两个不同的位置信息的情况下,向位于该原点的网络设备发送第一错误报告,该第一错误报告包括该第一网络设备的接收的位置信息、接收到位置信息的端口号。
[0037]进一步,该方法还包括:该第一网络设备向该至少一个第二网络设备中的每个第二网络设备发送确认消息,其中,向每个第二网络设备发送的确认消息用于指示该第一网络设备成功接收该每个第二网络设备发送的位置信息。
[0038]进一步,该方法还包括:该第一网络设备根据该第一网络设备的位置信息,确定至少一个第四网络设备中的每个第四网络设备的位置信息;该第一网络设备向该至少一个第四网络设备中的每个第四网络设备发送该每个第四网络设备的位置信息。
[0039]进一步,该方法还包括:该第一网络设备在预定时间内未接收到该至少一个第四网络设备中的一个第四网络设备发送的确认消息时,向位于原点的网络设备发送第二错误报告,该第二错误报告包括该第一网络设备的位置信息以及未收到确认消息的第四网络设备的位置信息。
[0040]可以理解,该第一网络设备、第二网络设备、第三网络设备和第四网络设备均是该Torus网络中的网络设备。
[0041 ] 为了帮助本领域技术人员更好地理解本发明的技术方案,下面将结合具体实施例对本发明的技术方案进行进一步描述。可以理解的是,该实施例仅是为了帮助更好地理解本发明,而并非是对本发明的技术方案的限制。
[0042]该具体实施例以如图2所示的二维Torus网络为例。由于Torus网络的特殊性,Torus网络的拓扑结构中任一个网络设备与其他的网络设备都是等价的。因此,可以通过旋转网络,将任一个网络设备旋转到左上角的原点位置。在实际网络部署中,为了方便管理,一般会认为规定一个原点的网络设备。在本实施例中,可以规定坐标为(0,0)的网络设备为原点。图2中的除位于原点的网络设备以外的每个网络设备都可以是图4所示的方法中的第一网络设备。
[0043]为了方便描述,以Dx,y表示坐标为(x,y)的网络设备。例如,D α^表示坐标为(0,O)的网络设备(及位于原点的网络设备),Dm表示坐标为(1,1)的网络设备。
[0044]位于原点的网络设备Dciitl可以确定自身的位置信息。D μ在确定自身的位置信息为原点的情况下,无需等待接收其他网络设备发送的位置信息,可以根据自身的位置信息,确定自身的IP地址。DtlC1在确定了自身的IP地址后,可以确定与D aC1相邻的至少一个第一相邻网络设备中的每个第一相邻网络设备的位置信息。每个第一相邻网络设备与Dciitl的距离均为I。也就是说,在图2所示的Torus网络中,Dtltl所对应的至少一个第一相邻网络设备包括=DcuJ1,P本领域技术人员可以理解,Torus网络是一个环状的网络,也就是说,可以不通过该Torus网络中的其他网络设备直接与D2,jP D㈡通信。因此,D 2;(|和D㈡与D α(ι的距离也为I。综上所述,Dtltl所对应的至少一个第一相邻网络设备包括=Dcu' D1,ο,化。和D0,2ο可以看出,在图2所示的Torus网络中,该至少一个第一相邻网络设备是位于Dtltl的正方向和负方向,且每个第一相邻网络设备不需要经过该Torus网络中的其他网络设备即可与Dciitl通信。在确定了第一相邻网络设备的位置信息后,Dtltl可以将该每个第一相邻网络设备的位置信息发送给该每个第一相邻网络设备。Dcu' D1,0, D2,jP D α2在接收到了 D 0’0发送的各自的位置信息后,可以根据各自的位置信息和IP地址分配策略,确定各自的IP地址,并继续确定各自的每个相邻网络设备的位置信息,并经每个相邻的网络设备的位置信息发送给对应的每个相邻网络设备。进一步,DcuA1,Dy和D μ在接收到了 D μ发送的各自的位置信息后,会向D。,。发
送确认消息。D Q,Q在接收到D CuJ1^D2,。和D。,2发送的确认消息后,确定Dcu' Dy、Dy和D μ成功接收到各自的位置信息。
[0045]假设Dai为该第一网络设备。Dcu首先确定自身的位置信息。Dcu可以接收相邻网络设备发送的位置信息。具体地,Dcu接收第二相邻网络设备发送的Dcu的位置信息。该第二相邻网络设备位于Dcu的X轴负方向,且与Dcu的距离为I。该第二相邻网络设备可以不通过该Torus网络中的其他网络设备直接与Dcu通信。在本实施例中,该第二相邻网络设备为Dcu在接收到D μ发送的位置信息并且确定仅接收到D μ发送的位置信息后,可以根据该位置信息确定Dcu的IP地址。进一步,Dcu还可以向D μ发送确认消息,以便确定Dcu成功接收到位置信息。D Μ确定与D Cu的相邻至少一个第一相邻网络设备的位置信息。与第一网络设备为Dciitl的情况类似,与Dcu相邻的至少一个第一网络设备中的每个第一网络设备可以位于Dcu的正方向和负方向。具体地,与Dcu相邻的至少一个第一网络设备位于Dcu的X轴正方向,y轴的正方向和负方向。同样的,该至少一个第一网络设备中的每个第一网络设备可以不通过该Torus网络中的其他网络设备直接与该第一网络设备通信。可以看出,与Dcu相邻的至少一个第一相邻网络设备包括和D 2;1。Dcu可以确定每个第一相邻网络设备的位置信息,并向确定的每个第一相邻网络设备发送该每个第一相邻网络设备的位置信息。并且,Dcu还可以接收D U、Dm和Dy发送的确认消息,并在接收到D0j2, Dm和D 2;1发送的确认消息后,确定成功为D 0;2, Dm和D 2Λ发送相应的位置信息。
[0046]假设Dm为该第一网络设备。D u首先确定自身的位置信息。Dm可以接收相邻网络设备发送的位置信息。具体地,Dm接收到两个第二相邻网络设备发送的D u的位置信息,并且这两个第二相邻网络设备Dm发送的位置信息相同。每个第二相邻网络设备位于Dm的X轴负方向或者y轴负方向,且与D u的距离为I。该第二相邻网络设备可以不通过该Torus网络中的其他网络设备直接与Dm通信。在本实施例中,该第二相邻网络设备包括Dtl, JPD i,。。Dlil在接收到Dtl, JPD i,。发送的相同的位置信息后,根据接收到的位置信息确定自身的IP地址。之后,Dm可以分别向D ^和D ^发送确认消息,以便D ?^和D Cu确定成功为Dm发送位置信息。与Du相邻的至少一个第一网络设备中的每个第一网络设备可以位于Dm的正方向。具体地,与D u相邻的至少一个第一网络设备位于D u的X轴正方向,y轴的正方向。该至少一个第一网络设备中的每个第一网络设备可以不通过该Torus网络中的其他网络设备直接与该第一网络设备通信。可以看出,与Dm相邻的至少一个第一相邻网络设备包括=D1^D2Y Dm确定每个第一相邻网络设备的位置信息,并向确定的每个第一相邻网络设备发送该每个第一相邻网络设备的位置信息。并且,Dm还可以接收D1^D2il发送的确认消息,并在接收到D1^D2il发送的确认消息后,确定成功为D u'Dy发送相应的位置信息。
[0047]由于配置网络设备阶段的人为错误,可能导致Torus网络中两个设备的连接错误。例如,D1>2可能会与D 2Λ连接,D u可能会与D 2,2连接。在此情况下,D2;1接收到是D !和Dy各自的第一相邻网络设备的位置信息,而非D ”和D u发送的各自的第一相邻网络设备的位置信息。从图2中可以看出D2,@ D 发送的针第一相邻网络设备的位置信息的坐标应当为(2,I),而Dy发送的第一相邻网络设备的位置信息的坐标为(2,2)。可以看出,Dy和Dy发送的坐标不同。因此,当D u接收到两个网络设备发送的不同的位置信息的情况下,可以确定发生连接错误问题。在此情况下,Dy会通过D w或D u向位于原点的网络设备发送第一错误报告,该第一错误报告包括该第一网络设备接收的位置信息和接收到位置信息的端口号。这样,可以通过位于原点的网络设备查看发生连接错误的端口,从而将连接错误的端口更正。这样,该第一网络设备就可以接收到正确的位置信息,并根据正确的位置信息确定该第一网络设备的IP地址。本领域技术人员可以理解,Dy和D u之所以可以向Dy发送位置信息,则表示D u各个维度上在其之前的节点都已经是配置成功的。因此,D w和Dy可以将该第一错误报告发送给D
[0048]在IP地址配置过程中,由于网络错误(例如,链路错误、端口错误或者由于网络设备本身的错误),Torus网络中的第一网络设备可能并未接收到第一相邻网络设备发送的确认消息。在此情况下,该第一网络设备可以向位于原点的网络设备发送第二错误报告,该第二错误报告可以包括该第一网络设备的位置信息以及未受到确认消息的第一相邻网络设备的位置信息。具体实现时,该第一网络设备可以设置一个定时器,并在向第一相邻网络设备发送IP地址后开始计时。在该定时器的预设时间内没有接收到该第一相邻网络设备发送的确认消息的情况下,该第一网络设备可以确定向位于原点的网络设备发送该第二错误报告。举例来说,假设该第一网络设备为Dy。Dm分别向Dy和Dy发送位置信息。在预设时间内,Dm接收到了 D u发送的确认消息,且没有接收到D u发送的确认消息。在此情况下,Dm可以向位于原点的网络设备Dciitl发送第二错误报告,该第二错误报告可以包括Dm的位置信息和Dy的位置信息。这样,可以通过位于原点的网络设备D μ确定D u和D u之间的链路发生错误。D1;1可以通过维序路由(英文:Dimens1n-Order Routing,简称:DOR)的方式将该第二错误报告发送至本领域技术人员可以理解,Dm之所以可以向D u发送位置信息,则表示Dm各个维度上在其之前的节点都已经是配置成功的。因此,Dm可以将该第二错误报告发送给
[0049]图5是根据本发明实施例提供的第一网络设备的结构框图。图5所示的网络设备能够执行图4所示的分配地址的方法的各个步骤。第一网络设备500为N维圆环面Torus网络中的一个网络设备。如图5所示,第一网络设备500包括接收单元501和确定单元502。
[0050]接收单元501,用于接收至少一个第二网络设备发送的位置信息。
[0051]确定单元502,用于根据该至少一个第二网络设备发送的位置信息,确定该第一网络设备的位置信息。
[0052]确定单元502,还用于根据该第一网络设备的位置信息,确定该第一网络设备的互联网协议IP地址。
[0053]根据图5所示的Torus网络中的第一网络设备500可以接收该Torus网络中的第二网络设备发送的位置信息。这样,由于Torus网络中网络设备所在的位置具有唯一性,因此Torus网络中的每个网络设备在确定了自身的位置信息后,可以根据自身的位置信息确定出唯一的IP地址(例如通过特定的IP地址分配策略,该特定的IP地址分配策略与网络设备的位置信息相关)。这样,该Torus网络中的网络设备无需通过一个统一的DHCP服务器获取IP地址。因此,可以避免当网络规模较大时,集中式DHCP服务器分配地址的压力较大的问题。同时,转发策略会根据坐标进行路由,但是业务遵守的仍是IP地址。这样,可以兼容业务使用并保留用户习惯,对上层软件不感知。此外,还可以方便对Torus网络的管理。可选的,作为一个实施例,接收单元501,具体用于接收到一个第二网络设备发送的位置信息;确定单元502,具体用于在确定该第二网络设备发送的位置信息对应的N维坐标仅存在一维坐标与原点的坐标不同的情况下,确定该第一网络设备的位置信息为该第二网络设备发送的位置信息。
[0054]可选的,作为另一实施例,接收单元501,具体用于接收到M个第二网络设备发送的位置信息,其中M为小于或等于N且大于或等于2的正整数;确定单元502,具体用于在确定该M个第二网络设备中的每个第二网络设备发送的位置信息对应的N维坐标相同的情况下,确定该第一网络设备的位置信息为接收到的该M个第二网络设备发送的位置信息。
[0055]进一步,接收单元501,还用于接收K个第三网络设备发送的位置信息,其中K为大于或等于2的正整数;第一网络设备500还可以包括发送单元503,用于在确定单元502确定该K个第三网络设备发送的位置信息中存在至少两个不同的位置信息的情况下,向位于该原点的网络设备发送第一错误报告,该第一错误报告包括该第一网络设备的接收的位置信息、接收到位置信息的端口号。
[0056]进一步,发送单元503,用于向该至少一个第二网络设备中的每个第二网络设备发送确认消息,其中,向每个第二网络设备发送的确认消息用于指示该第一网络设备成功接收该每个第二网络设备发送的位置信息。
[0057]进一步,确定单元502,还用于根据该第一网络设备的位置信息,确定至少一个第四网络设备中的每个第四网络设备的位置信息;发送单元503,用于向该至少一个第四网络设备中的每个第四网络设备发送该每个第四网络设备的位置信息。
[0058]进一步,发送单元503,还用于在接收单元501在预定时间内未接收到该至少一个第四网络设备中的一个第四网络设备发送的确认消息时,向位于原点的网络设备发送第二错误报告,该第二错误报告包括该第一网
络设备的位置信息以及未收到确认消息的第四网络设备的位置信息。
[0059]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能宄竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
[0060]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0061]在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0062]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0063]另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0064]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0065]以上所述,仅为本发明的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内,因此本发明的保护范围应以权利要求的保护范围为准。
【主权项】
1.一种分配地址的方法,其特征在于,所述方法应用于N维的圆环面Torus网络,N为正整数,所述方法包括: 第一网络设备接收至少一个第二网络设备发送的位置信息; 所述第一网络设备根据所述至少一个第二网络设备发送的位置信息,确定所述第一网络设备的位置信息; 所述第一网络设备根据所述第一网络设备的位置信息,确定所述第一网络设备的互联网协议IP地址。2.如权利要求1所述的方法,其特征在于,所述第一网络设备接收至少一个第二网络设备发送的位置信息,包括: 所述第一网络设备接收到一个第二网络设备发送的位置信息; 所述第一网络设备根据所述至少一个第二网络设备发送的位置信息,确定所述第一网络设备的位置信息,包括: 所述第一网络设备确定所述第二网络设备发送的位置信息对应的N维坐标仅存在一维坐标与原点的坐标不同的情况下,确定所述第一网络设备的位置信息为所述第二网络设备发送的位置信息。3.如权利要求1所述的方法,其特征在于,所述第一网络设备接收至少一个第二网络设备发送的位置信息,包括: 所述第一网络设备接收到M个第二网络设备发送的位置信息,其中M为小于或等于N且大于或等于2的正整数; 所述第一网络设备根据所述至少一个第二网络设备发送的位置信息,确定所述第一网络设备的位置信息,包括: 所述第一网络设备在确定所述M个第二网络设备中的每个第二网络设备发送的位置信息对应的N维坐标相同的情况下,确定所述第一网络设备的位置信息为接收到的所述M个第二网络设备发送的位置信息。4.如权利要求1所述的方法,其特征在于,在所述第一网络设备接收至少一个第二网络设备发送的位置信息之前,所述方法还包括: 所述第一网络设备接收K个第三网络设备发送的位置信息,其中K为大于或等于2的正整数; 所述第一网络设备确定所述K个第三网络设备发送的位置信息中存在至少两个不同的位置信息的情况下,向位于所述原点的网络设备发送第一错误报告,所述第一错误报告包括所述第一网络设备的接收的位置信息、接收到位置信息的端口号。5.如权利要求1至4中任一项所述的方法,其特征在于,所述方法还包括: 所述第一网络设备向所述至少一个第二网络设备中的每个第二网络设备发送确认消息,其中,向每个第二网络设备发送的确认消息用于指示所述第一网络设备成功接收所述每个第二网络设备发送的位置信息。6.如权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括: 所述第一网络设备根据所述第一网络设备的位置信息,确定至少一个第四网络设备中的每个第四网络设备的位置信息; 所述第一网络设备向所述至少一个第四网络设备中的每个第四网络设备发送所述每个第四网络设备的位置信息。7.如权利要求6所述的方法,其特征在于,所述方法还包括:所述第一网络设备在预定时间内未接收到所述至少一个第四网络设备中的一个第四网络设备发送的确认消息时,向位于原点的网络设备发送第二错误报告,所述第二错误报告包括所述第一网络设备的位置信息以及未收到确认消息的第四网络设备的位置信息。8.一种第一网络设备,其特征在于,所述第一网络设备N维的圆环面Torus网络中的一个网络设备,N为正整数,所述第一网络设备包括: 接收单元,用于接收至少一个第二网络设备发送的位置信息; 确定单元,用于根据所述至少一个第二网络设备发送的位置信息,确定所述第一网络设备的位置信息; 所述确定单元,还用于根据所述第一网络设备的位置信息,确定所述第一网络设备的互联网协议IP地址。9.如权利要求7所述的设备,其特征在于,所述接收单元,具体用于接收到一个第二网络设备发送的位置信息; 所述确定单元,具体用于在确定所述第二网络设备发送的位置信息对应的N维坐标仅存在一维坐标与原点的坐标不同的情况下,确定所述第一网络设备的位置信息为所述第二网络设备发送的位置信息。10.如权利要求7所述的设备,其特征在于,所述接收单元,具体用于接收到M个第二网络设备发送的位置信息,其中M为小于或等于N且大于或等于2的正整数; 所述确定单元,具体用于在确定所述M个第二网络设备中的每个第二网络设备发送的位置信息对应的N维坐标相同的情况下,确定所述第一网络设备的位置信息为接收到的所述M个第二网络设备发送的位置信息。11.如权利要求7所述的设备,其特征在于,所述接收单元,还用于接收K个第三网络设备发送的位置信息,其中K为大于或等于2的正整数; 所述第一网络设备还包括: 发送单元,用于在所述确定单元确定所述K个第三网络设备发送的位置信息中存在至少两个不同的位置信息的情况下,向位于所述原点的网络设备发送第一错误报告,所述第一错误报告包括所述第一网络设备的接收的位置信息、接收到位置信息的端口号。12.如权利要求7所述的设备,其特征在于,所述第一网络设备还包括: 发送单元,用于向所述至少一个第二网络设备中的每个第二网络设备发送确认消息,其中,向每个第二网络设备发送的确认消息用于指示所述第一网络设备成功接收所述每个第二网络设备发送的位置信息。13.如权利要求7所述的设备,其特征在于,所述确定单元,还用于根据所述第一网络设备的位置信息,确定至少一个第四网络设备中的每个第四网络设备的位置信息; 所述第一网络设备还包括:发送单元,用于向所述至少一个第四网络设备中的每个第四网络设备发送所述每个第四网络设备的位置信息。14.如权利要求13所述的设备,其特征在于,所述发送单元,还用于在所述接收单元在预定时间内未接收到所述至少一个第四网络设备中的一个第四网络设备发送的确认消息时,向位于原点的网络设备发送第二错误报告,所述第二错误报告包括所述第一网络设备的位置信息以及未收到确认消息的第四网络设备的位置信息。
【专利摘要】本发明实施例提供分配地址的方法和网络设备,该方法应用于N维的圆环面Torus网络,N为正整数,该方法包括:第一网络设备接收至少一个第二网络设备发送的位置信息;该第一网络设备根据该至少一个第二网络设备发送的位置信息,确定该第一网络设备的位置信息;该第一网络设备根据该第一网络设备的位置信息,确定该第一网络设备的互联网协议IP地址。能够可以避免当网络规模较大时,集中式DHCP服务器分配地址的压力较大的问题。
【IPC分类】H04L29/12
【公开号】CN104883409
【申请号】CN201510246142
【发明人】夏羽, 韩隶, 崔雷
【申请人】华为技术有限公司
【公开日】2015年9月2日
【申请日】2015年5月14日
转载请注明原文地址:https://www.famiwei.com/read-8136168.html