Ip地址管理的制作方法

文档序号:7609489阅读:270来源:国知局
专利名称:Ip地址管理的制作方法
技术领域
本发明涉及网络中的地址管理,在该网络中地址从有限的地址池中动态地进行分配。特别地,本发明涉及在将地址指派给IP网络用户的接入网中管理地址。
背景技术
IP(互联网协议)地址,例如IPv4(IP版本4)地址,是一种有限资源,它必须循环使用当用户丢失一个连接时,该地址将被指派给新用户。在老用户被突然断开连接的情况下,例如在连接丢失而没有机会将与该连接丢失有关的状况通知通信节点的情况下,可以在老用户的所有会话终止前将老用户的地址重新指派给新用户。结果,新用户可能会接收到属于该IPv4地址老用户的分组。例如,这种连接丢失是因老用户移出了覆盖区域或老用户的电池耗尽而造成的。
虽然新用户没有请求这些分组,但是他还是必须为接收它们付出代价。这种发生在例如GPRS(通用分组无线业务)和3G(第三代)网络中的“超额计费”攻击是一种安全事件。
通常,状态FW(防火墙)用于阻止未经请求的分组的进入。然而,在突然断开连接的情况下,FW状态(“针孔”)没有被重置,这是因为没有将与连接丢失有关的状况通知该FW。如果TCP(传输控制协议)和UDP(用户报文协议)分组与老的针孔相匹配,那么它们都能获得通过。
直到一个地址可以被重新指派的等待时间,也即“冷藏”时间各不相同,这是因为TCP重试限制或UDP软状态生存期两者中任何一个都不存在标准值。通常,TCP仅在数分钟的尝试后就会放弃(取决于应用),而UDP软状态存活至少一分钟(取决于FW设置)。如果沿路径上的NAT(网络地址(及端口)转换器)重置了地址-端口绑定,那么会话也可能结束,这是因为它已经有某些预先定义的时间没有使用。可以在P.Srisuresb等人的“Traditional IP Network Address Translator(Traditional NAT)”(网络工作组,RFC3022,2001年1月)中找到有关NAT的详细内容。所有上面的时间可以不相同,并且可以在不同的地点进行配置。
例如,在申请人的WO 01/93540中描述了一种使用IPv6的地址冷藏机制。然而,以前的地址冷藏机制的建议仅使用在一个地址能被重新激活之前的最长可能冷藏周期估计,并且用它来估计所需的冷藏队列的大小。对于IPv4而言这个大小可能不适合地大。
另一个建议是FW应该读取传送给发送者的ICMP(互联网控制报文协议)错误通告,并关闭剩下的针孔以释放地址,就如在申请人的US60/479509中所描述的那样。J.Postel在“Internet Control MessageProtocol”(网络工作组,RFC792,1981年9月)中描述了关于ICMP的更详细的内容。
可选择地,建议使用两个FW,其中一个位于GGSN(GPRS网关服务节点)的Gn侧,其检测PDP(分组数据协议)上下文的终结,而另一个位于Gi侧,其阻止前往第一个FW报告为未被使用的地址的分组。这种解决方法非常昂贵,因为它需要在许多地方安装FW。而且它还受限于GPRS以及3G网络。
此外,如果空闲地址池小,并且新用户恰好激活该老用户已经运行的同一服务,那么这种FW建议可能不会有帮助。在这种情况下,新用户开启了再次让老用户的会话通过的针孔。

发明内容
本发明的一个目的是对用户IP地址的重新指派进行改善,以避免额外传给用户的分组导致例如超额计费攻击。
根据本发明的一个实施例,公开了一种用来管理待指派给IP网络用户的地址的网络设备。该网络设备包括至少一个用于保存已释放地址的队列,并且将该网络设备配置成用于检测分组已去往保存于至少一个队列中的已释放地址以及用于将该分组已经去往的该保存的地址返回到至少一个队列的队尾。
根据本发明的另外一个实施例,公开了一种用于管理待指派给IP网络用户的地址的方法。该方法包括下列步骤检测分组已去往保存于队列中的已释放地址,该队列保存已释放的地址;并且将分组已经去往的该保存的地址返回到该队列的队尾。
根据本发明的另外一个实施例,公开了一种用于转发IP数据分组的网络设备。该网络设备被配置成用于接收去往未被使用的地址的分组以及用于向管理地址的网络节点发送错误通告,该错误通告指示该未被使用的地址。
根据本发明的另一实施例,公开了一种用于管理待指派给IP网络用户的地址的系统。该系统包括用于管理地址的第一网络节点,其中该第一网络节点包括至少一个用于保存已释放地址的队列。第一网络节点被配置成用于检测分组已去往保存在至少一个队列中的已释放地址以及用于将该分组已经去往的该保存的地址返回到至少一个队列的队尾。另外,该系统包括用于转发IP数据分组的第二网络节点,而这第二网络节点被配置成用于接收去往未被使用的地址的分组以及用于向第一种网络节点发送错误通告,该错误通告指示该未被使用的地址。
本发明还可以以一种计算机程序产品的方式提供,该计算机程序产品包括由计算机、微处理器等执行的软件代码部分。
根据本发明,冷藏队列的大小将取决于平均值而不是最大值,因为每个地址的冷藏周期将与老用户的通信节点的堆栈实现相适应。可以多次将与长生存期会话相关联的易出问题的地址发回到该冷藏队列的队尾。使用本发明,可以极大地减少冷藏地址的数目,这是因为空闲地址池仅需要少数迅速升至队列首部的“冷”地址。
此外,根据本发明的该解决方法与FW以及NAT位置和定时器无关。
而且,可将本发明的冷藏方法扩展到DHCP(动态主机配置协议)指派的地址。因此本发明可工作于任何接入网中。
下面,将通过优选实施例的方式描述本发明,其中考虑了附图。


图1示出在检测到分组被发送给已释放的地址的情况下,根据本发明的一种地址管理。
图2示出在检测到地址已被释放的情况下,根据本发明的一种地址管理。
图3示出在已被释放的地址中一个地址将被重新指派的情况下,根据本发明的一种地址管理。
图4示出说明根据本发明的一个实施例的一个地址管理实体的示意框图。
图5示出说明根据本发明的另一个实施例的一个地址管理实体的示意框图。
具体实施例方式
图1、2和3示出一种根据本发明的地址管理方案。这些图中所示的地址管理实体负责将地址指派给IP网络用户并包括一种用于保存诸如已释放Ipv4地址的已释放地址的冷藏队列10。地址释放可能因连接丢失引起,该连接丢失可能是由于用户的突然断开连接造成。
图1中上面的部分示出保存有已释放地址A1至An的冷藏队列10。在地址管理实体检测到分组去往保存在该冷藏队列10中的一个已释放地址,诸如去往已释放地址A4的情况下,将该已释放地址A4移至该冷藏队列10的队尾。图1中下面的部分示出了这个冷藏队列更新的结果。如图1中下面部分所示,已释放地址A5至An已经往该冷藏队列10的队首前移一个位置并且已释放地址A4被放置在该冷藏队列10的队尾。
像图1中上面的部分一样,图2中上面的部分示出保存有已释放地址A1至An的冷藏队列10。在地址管理实体检测到用户的一个地址,诸如地址An+1,已被释放的情况下,将该已释放地址An+1添加至该冷藏队列10的队尾。图2中下面的部分示出了这个冷藏队列更新的结果。
像图1和图2中上面的部分一样,图3中上面的部分示出保存有已释放地址A1至An的冷藏队列10。在例如因为空闲地址池空了,所以保存在该冷藏队列10中的已释放地址中的地址将被重新指派的情况下,将该冷藏队列起始处的地址取出作为待重新指派的地址。根据图3,既然该冷藏队列起始处的地址是A1,那么从该冷藏队列10中取出该地址A1用于重新指派。图3中下面的部分示出了这个重新指派的结果。
如上所述,负责指派地址的地址管理实体或地址管理器(AM)让已释放地址“冷藏”,直到接收不到任何发送给此前具有该已释放地址的老用户的分组。该冷藏机制是自适应的它使用最近使用过的冷藏队列10。已释放地址前往该冷藏队列10的队尾。在例如空闲地址池已空的情况下,该冷藏队列10的第一个地址(根据图3是A1)被指派给下一个新用户。
这种想法是每当已存在于冷藏队列10中的一个地址接收到一个分组,该地址就被返回到该冷藏队列10的队尾。此外,可以将一个错误消息(例如ICMP“不可达到”)返回给该分组的发送者或者源,例如老用户的通信节点,以通知它去往该地址的会话被断开。
在该地址管理实体被放置在像GGSN这样的数据路径上的情况下,它能在内部处理该队列。换句话说,该地址管理实体可通过接收已去往保存在该冷藏队列10中的一个已释放地址的分组,检测分组已去往该已释放地址。此外,该地址管理实体可通过检测释放其地址的连接的丢失来检测用户的地址已被释放。
图4给出本发明的一个实施例,其中地址管理实体或地址管理器在数据路径中,也即该地址管理器和一个AR(接入路由器)如集成在一个GGSN中,该GGSN管理它自己的地址池。在图4中,该集成的地址管理器和接入路由器块30位于例如基于IP的接入网的接入网中,该接入网向用户提供IP网络的接入。块30包括该冷藏队列10。
如图4中所示,在该地址管理实体以及那些接入路由器的功能被合并到一起的情况下,连接的丢失释放它的地址,该被释放的地址被添加到冷藏队列10的队尾,如图2中所示。下一个被释放的地址继续被添加到它的后面,等等。但是每当分组到达保存在该冷藏队列10中的一个冷藏地址,该地址就再次被返回到队尾,如图1中所示,并且可通过集成的块30可以将一个ICMP错误通告发送给该分组的源。
重复返回一个已释放地址,直到绑定在已释放地址上的所有会话都已终止。在那之后该地址能向前移动到该队列的第一的位置,并且然后可以指派给新用户。
在该地址管理实体和该数据路径相互分离的情况下,例如在DHCP(动态主机配置协议)中,沿老用户的数据路径上的一个接入路由器将与连接丢失有关的状况通知该地址管理实体,并且还将错误消息的多份复件发送给该地址管理实体,该错误消息通告分组被发送给未被使用的地址。该冷藏队列位于该地址管理这部分中。要了解关于DHCP更详细的内容,请参考S.Alexander和R.Droms的“DHCP Options and BOOTPVendor Extensions”(网络工作组,RFC2132,1997年3月)。
换句话说,在该地址管理实体没有位于该老用户的数据路径中的情况下,该地址管理实体可以通过接收一个指示未被使用的地址的错误通告来检测一个分组去往保存在该冷藏队列10中的一个已释放的地址。此外,该地址管理实体可以通过接收关于其的通告来检测用户的一个地址已经被释放。
在该数据路径中的接入路由器接收到去往未被使用的地址的分组的情况下,该接入路由器向该地址管理实体发送一个错误通告,该错误通告指示该未被使用的地址。另外,该接入路由器还可向该分组的源发送一个错误通告。而且,在该接入路由器检测到一个释放其地址的连接丢失的情况下,该接入路由器将与该已被释放且目前未被使用的地址有关的通知发送给该地址管理实体。
图5示出分离的接入路由器42和地址管理实体或地址管理器41。该地址管理器41包括冷藏队列10。该接入路由器42位于老用户的数据路径中。
当该接入路由器42丢失连接时,42将与该能被释放的地址有关的状况通知该地址管理器41。该地址管理器41将该地址放进该冷藏队列10,就如结合图2所描述的那样。如果该接入路由器42后来接收到一个发往未被使用的地址也即已被释放了的地址的分组,那么它向该地址管理器41发送一个错误通告,该地址管理器41将该地址推到该冷藏队列10的队尾,如图1中所示。该接入路由器42还可发送一个ICMP错误,就如在上面在集成的情况下它所完成的那样。
用于释放一个地址的来自该接入路由器42发往该地址管理器41的消息可以是RADIUS(远程验证拨入用户服务‘记账停止’)。该接入路由器-地址管理器的错误通告协议可以是ICMP,但也可能是私有协议。关于RADIUS的详细信息可以在C.Rigney等人的“Remote AuthenticationDial In User Service(RADIUS)”(网络工作组,RFC2865,2000年6月)和C.Rigney的“RADIUS Accounting”(网络工作组,RFC2866,2000年6月)中找到。
通过使用每个地址范围单个的LRU(最近被使用过的)冷藏队列10,已经对本发明做了解释。然而,可以将已释放地址分类成至少两个地址组中的一组,其中每个地址组有它自己的保存已释放地址的冷藏队列,并且可以将已释放地址添加到该已分类组的队列的队尾,该队列被赋予一个用于重新指派保存在该队列中的已释放地址的优先顺序。
换句话说,可以按存在“问题”或与例如那些忽略ICMP错误的节点的非正常工作节点相连来分类地址。例如,在不管ICMP错误报告如何持续地对该地址进行传输尝试或者发送往该地址的分组数量超过了可配置的限度的情况下,该地址可以被分类到存在问题的一类。这种分类可以由诸如集成的地址管理器和接入路由器30或者地址管理器41的地址管理实体来执行。可以由地址管理实体将存在问题的地址发送给一个特殊队列,仅当正常队列(也即该冷藏队列10)是空的时候该特殊队列才被用于重新指派。被赋予比用于“问题”地址的特殊队列更高优先级的队列中的地址将通过问题地址。以此方式,可以避免一种情况,这种情况中非冷藏地址得到重新指派,这是因为它已经有一段时间未被访问了,并且在这段时间内它已经到达了该冷藏队列10的前面。
应当理解,上面的描述是本发明的说明性描述,而不应将其理解成对本发明的限制。本领域中的熟练技术人员可以完成各种修改和应用,而不会偏离像所附权利要求书所限定的本发明范围的精髓。
权利要求
1.一种用于管理待指派给IP网络用户的地址的网络设备,所述网络设备包括至少一个用于保存已释放地址的队列;所述网络设备被配置成用来检测分组已去往保存于所述至少一个队列中的已释放地址;以及将所述分组已经去往的所述保存地址返回到所述至少一个队列的队尾。
2.根据权利要求1所述的网络设备,进一步被配置成用来检测用户的地址已经被释放;以及将所述已释放的地址添加到所述至少一个队列的队尾。
3.根据权利要求2所述的网络设备,进一步被配置成用来将所述已释放的地址分类到至少两个地址组中的一组中,所述至少两个地址组中的每个地址组有它自己的用于保存已释放地址的队列;以及将所述已释放的地址添加到所述已分类组的队列的队尾,所述队列被赋予一个用于重新指派保存于所述队列中的所述已释放地址的优先顺序。
4.根据权利要求1所述的网络设备,进一步被配置成用于当检测到一个分组已经去往保存于所述至少一个队列中的所述已释放地址时,向所述分组的源发送错误通告。
5.根据权利要求1所述的网络设备,其中所述网络设备被配置成用于通过接收去往已释放的地址的分组来检测分组已去往保存在所述至少一个队列中的所述已释放地址。
6.根据权利要求2所述的网络设备,其中所述网络设备被配置成通过检测释放其地址的连接丢失,来检测用户的地址已被释放。
7.根据权利要求1所述的网络设备,其中所述网络设备被配置成通过接收指示未被使用的地址的错误通告来检测分组已去往保存于所述至少一个队列中的所述已释放地址。
8.根据权利要求2所述的网络设备,其中所述网络设备被配置成通过接收关于其的通告来检测用户的地址已经被释放。
9.一种用于转发IP数据分组的网络设备,所述网络设备被配置成用于接收去往未被使用的地址的分组;以及向用于管理地址的网络节点发送错误通告,所述错误通告指示了所述未被使用的地址。
10.根据权利要求9所述的网络设备,其中所述错误通告导致将保存于队列中并与所述未被使用的地址相对应的已释放地址返回到所述队列的队尾,所述队列保存了已释放的地址。
11.根据权利要求9所述的网络设备,还被配置成用于检测释放其地址的连接丢失;以及将与所述已释放的地址有关的通告发送给用于管理地址的网络节点。
12.根据权利要求9所述的网络设备,还被配置成用于当接收到去往所述未被使用的地址的分组时,向所述分组的源发送错误通告。
13.一种用于管理待指派给IP网络用户的地址的系统,所述系统包括用于管理地址的第一网络节点,所述第一网络节点包括用于保存已释放地址的至少一个队列;所述第一网络节点被配置成用于检测分组已去往保存于所述至少一个队列中的已释放地址;以及将所述分组已去往的所述保存的地址返回到所述至少一个队列的队尾;和用于转发IP数据分组的第二网络节点,所述第二网络节点被配置成用于接收去往未被使用的地址的分组;以及向所述第一网络节点发送错误通告,所述错误通告指示了所述未被使用的地址。
14.一种管理待指派给IP网络用户的地址的方法,所述方法包括以下步骤检测分组已去往保存于队列中的已释放地址,所述队列保存已释放的地址’以及将所述分组已经去往的所述保存的地址返回到所述队列的队尾。
15.一种用于转发IP数据分组的方法,所述方法包括以下步骤接收去往未被使用的地址的分组;以及向用于管理地址的网络节点发送错误通告,所述错误通告指示所述未被使用的地址。
16.根据权利要求15所述的方法,其中所述发送错误通告的步骤还包括致使将保存于队列中并与所述未被使用的地址相对应的已释放地址返回到所述队列的队尾,所述队列保存已释放的地址。
17.一种包含于计算机可读介质中的计算机程序,该计算机程序包括用于执行下列步骤的软件代码部分检测分组已去往保存于队列中的已释放地址,所述队列保存已释放的地址;以及将所述分组去往的所述保存的地址返回到所述队列的队尾。
18.根据权利要求17所述的计算机程序,还包括一种其上存储有所述软件代码部分的计算机可读介质。
19.根据权利要求17的所述的计算机程序,其中所述计算机程序产品被配置成可以被直接加载到所述计算机的内部存储器中。
全文摘要
本发明描述了针对待指派给IP网络用户的地址所进行的管理,其中检测分组已去往已释放的地址,该已释放的地址保存于用来保存已释放地址的队列中,并且将分组已去往的该保存地址返回到该队列的队尾。
文档编号H04L12/14GK1894935SQ200480037181
公开日2007年1月10日 申请日期2004年11月15日 优先权日2003年12月16日
发明者拉西·伊普佩莱南 申请人:诺基亚公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1