当前位置: 首页 > 专利查询>诺基亚公司专利>正文

使用循环冗余校验散列函数管理网络业务的方法和装置制造方法及图纸

技术编号:3518838 阅读:175 留言:0更新日期:2012-04-11 18:40
使用可变长度的循环冗余校验(CRC)索引来混编地址首标以管理网络业务的方法、装置和系统。本发明专利技术将数据分组的地址首标复制到CRC产生器。部分地基于地址首标确定CRC索引。部分地基于预定的比特掩码从CRC索引中确定比特子集。地址首标和数据负载与从CRC索引中获得的比特子集组合。修改后的数据分组随后在网络上转发。在一个实施例中,本发明专利技术在业务设备中的硬件电路中得以实施。

【技术实现步骤摘要】

本专利技术主要涉及管理网络业务,特别地,涉及通过使用循环冗余校验(CRC)散列函数提高确定数据分组路由的效率。
技术介绍
在网络上移动数据的过程中,需要确定在网络上是否允许该数据,如果允许,则需要确定数据将被传送到哪里。当数据从源端传送到目的端的时候,网络可以确定发送端和接收端是否都是有效的和是否允许使用该网络,以及将如何处理数据。传输控制协议/因特网协议(TCP/IP)数据典型地是以帧的形式传输,所述帧包括至少两个部分,地址首标和数据负载。可以从五元组形式的地址首标中找到通常用于通过网络向目的端传输数据的信息,所述五元组包括下述字段源地址、目的端地址、源端口、目的端口和协议。通常没有这样一种网络编址方案,其支持高达40亿个具有向40亿个目的端中的任何一个发送数据的能力的源端而且每个源端或目的端都能具有高达64000个端口。因此,尝试支持这样一个编址方案会需要一个巨大的查找表,以及具有庞大内存量的业务管理系统。另一方面,在任意给定时刻网络上只有有限数量的业务允许使用一个包含较少信息量的较小的表格。为了达到这个目的,可以在地址首标中的相关信息上使用散列函数来确定一个指向较小表格的索引值。散列函数是一种数学算法,它能够将数值从一个非常大的值域映射到一个较小的值域。一个“好”的散列函数包括,其中该散列函数在大的数值组中的应用导致一个较小的索引值组,所述索引值在一个较小的域内均匀分布。一个“坏”的散列函数是,较大域中数值组内的许多数值被映射到较小值域内的同一个索引值。任何这样的事件通常称为冲突。因为在任何具体索引值处只有一个连接作为入口,所以任何冲突都要求在各个表格的入口中保持附加信息,从而进一步指导网络去哪里查找混编到相同索引值的任何附加连接。这个具有相同的索引值的入口链接需要一个处理引擎来混编到索引值,读取入口,将其与预混编的五元组比较,并且如果没有找到匹配的,则使用入口中的指针读取另一个入口。重复这个过程直到有匹配或者已经达到链接的最后入口,因为对于每个数据分组都重复这样的过程,处理引擎的效率就降低了。因此,工业上需要一种通过使用改进的散列函数来管理网络业务的设备、方法和系统。因此,出于这些考虑和其它因素,产生了本专利技术。
技术实现思路
本专利技术目的在于使用混编地址首标的CRC索引来管理网络业务。为了从数据分组中确定地址首标,本专利技术部分地基于地址首标中的特定字段来确定一个CRC索引。通过使用掩码寄存器从CRC索引中选择出一组预定的比特来形成最后的索引值。最后的索引值在从转发到网络的缓存器中检索出来时被附加在数据分组中。依照本专利技术的一个实施例,一个装置被用来管理网络上的信号。这个装置包括CRC电路、换算电路和重新插入电路。CRC电路用于部分地基于输入信号的一部分来确定CRC索引。换算电路用于从CRC索引中确定至少一个比特。重新插入电路用于把从CRC索引中选取的至少一个比特组合到信号中。依照本专利技术的另一个实施例,一个设备被用来管理网络上的业务。这个设备包括收发器和索引设备。收发器用于确定与数据分组流中数据分组关联的地址首标并将该地址首标转发到索引设备。索引设备用于部分地基于地址首标确定CRC索引,从CRC索引中确定比特子集,并将比特子集组合到数据分组中。依照本专利技术的另一个实施例,一种方法被用来管理网络上的业务。这个方法包括确定与数据分组流中数据分组关联的地址首标、部分地基于地址首标确定CRC索引、从CRC索引中选取至少一个比特,和部分地通过将该选取的至少一个比特组合到数据分组中的方式来修改数据分组。依照本专利技术更进一步的实施例,一个系统被用来管理网络上的业务。这个系统包括第一网络设备和第二网络设备。第一网络设备用于确定与数据分组关联的地址首标,部分地基于地址首标确定CRC索引,从CRC索引中确定至少一个比特,和通过将从CRC索引中选取的至少一个比特组合到数据分组中的方式来确定修改的数据分组。第二网络设备用于从第一网络设备中读取修改的数据分组并部分地基于CRC索引信息路由该修改的数据分组。对本专利技术更完整的理解和其改进可以通过参考附图和下面的本专利技术优选实施例的详细说明以及附带的权利要求来获得,所述附图简要地总结如下。附图说明参照以下附图来描述本专利技术的非限制性和非穷举的实施例。在附图中,除非特别说明,不同的附图中相同的附图标记表示相同的部件。为了更好的理解本专利技术,将参考以下结合附图的优选实施例的详细描述,其中图1示出可以实施本专利技术的一个网络系统的实施例;图2示出用于确定CRC索引的装置的实施例框图;和图3示出按照本专利技术的实施例一般表示确定CRC索引过程的流程图。具体实施例方式本专利技术克服了以上提到的缺点、不足和问题,通过阅读和研究以下的详细说明将更好地理解本专利技术。下面将参考相应的附图来更详尽地描述本专利技术,所述附图作为说明书的一部分,以图例的形式示出了本专利技术得以实施的特殊实施例。然而,本专利技术本可以用多种形式来表现,在这里对实施例的解释不能作为对本专利技术的限制;相反的,提供这些实施例以便本专利技术的公开充分和完整,并且可以更好地向本领域技术人员告知本专利技术的范围。另外,本专利技术可以以方法或设备来实施。因此,本专利技术可以采取完全的硬件实施方式、完全的软件实施方式或者软硬件组合的实施方式。因而以下的具体描述不能理解为对本专利技术的限制。术语“耦合”和“连接”包括相连物体之间的直接连接,或者通过一个或多个无源或有源的中间设备或部件的间接连接。术语“包含”、“包括”、“含有”、“具有”和“其特征在于”包括开放式的或包含性的过渡的结构,并不排除附加的、未提及的元件或方法步骤。例如,一种包含A和B元件的组合物,也可以理解成是一个由A、B和C元件组成的组合物。“一个”、“一种”、“这种”的意思包括复数个。“在......内”的意思包括“在......内”和“在......上”。另外,除非有其它的说明或者与本说明不一致,单个的参考物也包括多个参考物。简明地说,本专利技术目的在于一种确定用于修改数据分组的CRC散列函数的设备和方法。本专利技术进一步的目的是减少冲突的可能性和提高CRC散列函数执行的速度。一个“好”的散列函数可以产生在缩小的域内完全均匀分布的索引。简单的基于对输入的运算值进行加法或乘法运算的散列函数,主要是异或运算,不能实现均匀的分布,因为其中一个输入运算值的单个比特的改变通常导致在产生的索引中有单个比特的改变,而对索引根本没有任何改变。不同于通常使用的基于异或的运算,本专利技术中所采用的CRC函数可以用于达到这个目的。由于CRC函数的连续推导法,CRC函数的单个运算值中单个比特的改变会影响产生的索引的每个比特。下面描述的是应用于IPv4因特网通信所使用的32比特数据分组中的CRC散列函数。用于从32比特数据分组中产生随机索引值的CRC多项式的实施例为X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+5+X4+X2+X+1,其中变量X表示寄存器,变量X的系数表示为CRC选择的比特(例如32比特,26比特,等等)。使用上述的CRC多项式,可以获得为与数据分组相关的32比特地址首标随机产生的32比特索引。索引可以部分地基于预定的比特掩码而进一步减少长度。索引可以与相应的地址首标和数据分组中的数据负载组合,并且重新插入到数据分本文档来自技高网
...

【技术保护点】
一种用于在网络上管理信号的装置,包括:循环冗余校验(CRC)电路,被配置成接收所述信号的至少一部分,并部分地基于所述信号的所述部分而确定CRC索引;换算电路,耦合到所述CRC电路,被配置成根据所述CRC索引中确定至少一个比特 ;重新插入电路,耦合到所述换算电路,被配置成通过将从所述CRC索引中选择的所述至少一个比特与所述信号相组合来确定修改后的信号,其中从所述CRC索引中选择的所述至少一个比特使得所述修改后的信号能够在所述网络上路由。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:小詹姆斯B莱宾
申请(专利权)人:诺基亚公司
类型:发明
国别省市:US[美国]

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

1