当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于多网络分组操作的数据完整性的技术制造技术

技术编号:13297851 阅读:77 留言:0更新日期:2016-07-09 15:57
用于确保多分组操作的数据完整性的技术包括经由网络而通信地耦合的计算设备和远程计算设备。所述计算设备被配置为:对原始网络分组执行分段卸载操作,对所述原始网络分组中的每个经分段的有效载荷的有效载荷计算散列值,以及将所述散列值和指示存储到所述经分段的网络分组中,所述指示用于指示所述散列值被存储在所述经分段的网络分组中。所述远程计算设备被配置为:响应于确定所述指示表明所述散列值被存储在所述经分段的网络分组中,来从接收的网络分组提取所述指示和所述散列值,对接收的网络分组的有效载荷计算散列值,以及基于对所提取的散列值和所计算的散列值的比较,来确定所述有效载荷的完整性。

【技术实现步骤摘要】

技术介绍
现代计算设备已经成为用于个人、商业、和社交用途的普遍存在的工具。因此,许多现代计算设备能够连接到包括互联网和公司内联网的各种数据网络,以通过这样的网络来取回以及发送/接收数据通信。为了促进计算设备之间的通信,网络通常包括一个或多个网络设备(例如,网络交换机、网络路由器、服务器、其它计算和/或存储计算设备等),以将通信(即,网络分组)从源计算设备路由到目的地计算设备。由于网络分组是由其路径(即,网络流)中的每个网络设备来处理的,网络分组变得被损坏的可能性、或者被引入到网络分组中的错误随着处理网络分组的每个网络设备而增加。例如,可以在源计算设备处和/或网络设备中的任何网络设备处执行的硬件卸载操作(例如,分段卸载、校验和(checksum)卸载等)可能引入数据损坏或者其它数据完整性问题。现在的检测网络分组中的错误的方法被设计为在开放式系统互连(OSI)模型的某些层处检测网络分组错误。例如,在发送操作期间,在OSI模型的物理层处执行的循环冗余校验是在硬件卸载操作修改网络分组之后计算的。因此,循环冗余校验将有可能未捕捉到由硬件卸载操作自身引入的错误,这是因为硬件卸载操作是在OSI模型的数据链路层之上的层处执行的。在某些网络拓扑结构中(例如,其中向网络分组的数据完整性给予比与跨越网络处理网络分组相关联的等待时间要高的优先级的那些网络拓扑结构),从硬件卸载操作引入到网络分组中的错误可能特别成问题。附图说明<br>在附图中作为示例并且不作为限制示出了本文所描述的构思。为了说明的简单和清楚,在附图中示出的元件没有必要按比例绘制。在认为合适的情况下,已经在附图之间重复了附图标记,以指示对应的或者类似的元件。图1是用于确保网络通信的数据完整性的系统的至少一个实施例的简化框图;图2是图1的系统的计算设备的至少一个实施例的简化框图;图3是图1的系统的网络设备的至少一个实施例的简化框图;图4是可以由图2的计算设备和图3的远程计算设备建立的环境的至少一个实施例的简化框图;图5是用于将数据完整性检查存储到用于在图1的系统中传输的网络分组中的方法的至少一个实施例的简化流程图,所述方法可以由图2的计算设备或者图3的远程计算设备来执行;以及图6是用于在图1的系统中对接收的网络分组执行数据完整性检查的方法的至少一个实施例的简化流程图,所述方法可以由图2的计算设备和图3的远程计算设备来执行。具体实施方式尽管本公开内容的构思容许各种修改和替代形式,但是其具体的实施例已经在附图中作为示例示出,并将在本文中详细地描述。然而,应当理解的是,不存在将本公开内容的构思限制于所公开的特定形式的意图,而相反,意图是覆盖与本公开内容和所附权利要求书一致的全部修改、等同物和替代方案。虽然本说明书中对“一个实施例”、“实施例”、“说明性的实施例”等的引用表示所描述的实施例可以包括特定的特征、结构或者特性,但是每个实施例可以包括或者可以不必要包括该特定的特征、结构或者特性。此外,这样的短语不必然指相同的实施例。进一步,当结合实施例来描述特定的特征、结构或者特性时,认为结合不论是否被明确地描述的其它实施例来影响这样的特征、结构或者特性是在本领域技术人员的知识之内的。另外,应当领会的是,包括在形式为“A、B和C中的至少一项”的列表中的项目可以表示:(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或者(A、B和C)。类似地,以“A、B或C中的至少一项”的形式列出的项目可以表示:(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或者(A、B和C)。在一些情况下,可以用硬件、固件、软件或者其任意组合来实现所公开的实施例。所公开的实施例还可以被实现为由一个或多个暂时性或者非暂时性机器可读(例如,计算机可读)存储介质携带或者存储在其上的指令,其可以被一个或多个处理器读取和执行。机器可读存储介质可以被体现为用于以由机器可读的形式存储或者发送信息的任何存储设备、机制或者其它物理结构(例如,易失性或者非易失性存储器、介质盘或者其它介质设备)。在附图中,可以以具体的布置和/或次序来示出一些结构或者方法特征。然而,应当领会的是,这样的具体的布置和/或次序可以不是必需的。相反,在一些实施例中,可以以与说明性的附图中所示的不同的方式和/或次序来布置这样的特征。另外,在特定的附图中包括结构或者方法特征不意味着暗示这样的特征在全部实施例中是必需的,并且,在一些实施例中,这样的特征可以不被包括,或者可以与其它特征结合。现在参考图1,在说明性的实施例中,用于确保网络通信的数据完整性(即,保持和确保准确性和一致性)的系统100包括经由一个或多个网络设备106通过网络104相通信的计算设备102和远程计算设备108。网络设备106通过网络104促进计算设备102和远程计算设备108之间的网络通信(即,网络分组)。例如,计算设备102可以通过发送包括请求的网络分组从远程计算设备108请求数据。当然,应当领会的是,可以经由多于一个的网络分组来发送请求。响应于请求,远程计算设备108可以尝试跨越网络104经由一个或多个网络分组向计算设备102发送数据(即,有效载荷)。在一些实施例中,远程计算设备108可以生成包括响应中的全部数据的原始网络分组(即,未经分段的网络分组),这可以使得原始网络分组具有大有效载荷。然而,原始网络分组可以包括如此多的数据,以至于将数据作为单个网络分组来发送可能使负责处理和发送网络分组的网络设备106重负。例如,这样的大有效载荷可以是网络集中的,引起带宽吞吐量的下降和增加的处理器开销。在一些实施例中,可以启用计算设备108的硬件以执行诸如分段卸载之类的硬件卸载。这样,原始网络分组的原始有效载荷被分解为段(即,具有较小有效载荷的经分段的网络分组),所述段应当是针对网络设备处理更加可管理的。然而,这样的硬件卸载(即,网络分组分段)可能将错误引入到经分段的网络分组中的一个或多个网络分组中。在使用时,如下面进一步详细描述的,远程计算设备108的数据完整性模块110计算经分段的网络分组的每个有效载荷的散列值,并且在经由网络104向计算设备102发送网络分组之前,利用散列值更新对应于每个有效载荷的网络分组报头。当然,为了确保对网络分组的额外处理不导致损坏,可以一创建段(例如,在报头被附加到经分段的有效载荷之前)就对有效载荷计算散列值。本文档来自技高网...

【技术保护点】
一种将数据完整性检查存储到网络通信传输中的计算设备,所述计算设备包括:散列生成器模块,其计算网络分组的有效载荷的散列值,其中,所述网络分组的所述有效载荷是分段操作的结果;数据完整性准备模块,其将所述散列值存储在所述网络分组中,以及将指示存储在所述网络分组中,以向所述网络分组的接收者指示所述散列值被存储在所述网络分组中;以及网络通信模块,其向远程计算设备发送所述网络分组。

【技术特征摘要】
2014.12.27 US 14/583,6601.一种将数据完整性检查存储到网络通信传输中的计算设备,所述计
算设备包括:
散列生成器模块,其计算网络分组的有效载荷的散列值,其中,所述
网络分组的所述有效载荷是分段操作的结果;
数据完整性准备模块,其将所述散列值存储在所述网络分组中,以及
将指示存储在所述网络分组中,以向所述网络分组的接收者指示所述散列
值被存储在所述网络分组中;以及
网络通信模块,其向远程计算设备发送所述网络分组。
2.根据权利要求1所述的计算设备,其中,计算所述有效载荷的所述
散列值包括:基于加密散列函数来计算所述有效载荷的加密散列值。
3.根据权利要求1所述的计算设备,其中,将所述散列值存储在所述
网络分组中包括:将所述散列值存储在所述网络分组的报头的字段中。
4.根据权利要求3所述的计算设备,其中,将所述散列值存储在所述
网络分组的所述报头的所述字段中包括:将所述散列值存储在所述网络分
组的TCP报头的选项字段中。
5.根据权利要求1所述的计算设备,其中,存储向所述网络分组的接
收者指示所述散列值被存储在所述网络分组中的所述指示包括:将所述指
示存储在所述网络分组的报头的字段中。
6.根据权利要求5所述的计算设备,其中,将所述指示存储在所述网
络分组的所述报头的所述字段中包括:设置所述网络分组的TCP报头的保
留字段中的对应于所述指示的比特。
7.根据权利要求1所述的计算设备,还包括:数据完整性模块,其中,
所述数据完整性模块包括所述散列生成器模块和所述数据完整性准备模

\t块。
8.一种执行对接收的网络通信的数据完整性检查的计算设备,所述计
算设备包括:
数据完整性验证模块,其响应于确定所述第一散列值被存储在所述网
络分组中,来确定第一散列值是否被存储在从远程计算设备接收的网络分
组中,以及,从所述网络分组提取所述第一散列值,其中,从所述远程计
算设备接收的所述网络分组是从分段操作产生的经分段的网络分组;
散列生成器模块,其计算接收的网络分组的有效载荷的第二散列值;
以及
散列比较器模块,其比较所述第一散列值和所述第二散列值。
9.根据权利要求8所述的计算设备,其中,计算所述网络分组的所述
有效载荷的所述第二散列值包括:基于加密散列函数来计算所述有效载荷
的加密散列值。
10.根据权利要求8所述的计算设备,其中,提取所述网络分组中的
所述第一散列值包括:从所述网络分组的TCP报头的选项字段提取所述第
一散列值。
11.根据权利要求8所述的计算设备,其中,确定所述第一散列值是
否被存储在所述网络分组中包括:从所述网络分组的TCP报头的保留字段
提取对应于所述指示的比特。
12.根据权利要求8所述的计算设备,其中,所述散列比较器模块还
响应于确定所述第一散列值和所述第二散列值不匹配,来向所述远程计算
设备提供关于所述接收的网络分组是被损坏的指示。
13.根据权利要求8所述的计算设备,还包括:数据完整性模块,其
中,所述数据完整性模块包括所述数据完整性验证...

【专利技术属性】
技术研发人员:J·C·布兰德伯格S·P·杜巴尔P·康纳J·R·赫恩
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1