解决网际互联协议上数据报损坏的方法

文档序号:7677035阅读:196来源:国知局
专利名称:解决网际互联协议上数据报损坏的方法
技术领域
本发明涉及通过网际互联协议可靠地传输数据报。
背景技术
在2006年4月4日,发表了一个公告,该公告涉及互联网工程任务 组(IETF)维护的RFC 791中定义的标准网际互联协议IPv4中存在的问 题。J.Heffner , M.Mathis 和 B. Chandler 起草的该文献 (http://www.psc. edu/ jheffner/drafts/draft-heffner-frag-harmf ul-XX. html,此处以引证的方式将其全部内容结合于此)描述了通过IPv4 传输的数据报怎样由于与IPv4报头中的数据报标识字段相关的问题而遭 受数据损坏。数据报损坏源于数据报的寿命期间有限数量的可用数据报 标识符。作者没有提供该问题的解决方案。
IPv4可以传输大小高达65,535 (2iS)字节的数据报。包括IPv4的 协议栈的网际互联协议(工P)层可以给数据报指派16位的标识符,这暗 示着存在65,535种可能的数据报标识符。典型地,将IP数据报标识符 实现为每次使用数据报标识符时递增的计数器。对于16位计数器,当计 数器到达最大值65, 535时,其值归零。IP将大的数据报分割成较小的块 以通过媒介例如以太网发送片段。如果以太网支持1500字节的帧,则IP 层可以生成高达44帧,其中每个帧具有相同的数据报标识符且具有相对 于数据报的偏移。远程主机使用数据报标识符和偏移信息在把数据报传 递到通信栈的上层之前重组数据报。对于高速媒介,主机将在极短的时
4间内发送多于65, 535个数据报,导致主机使数据报标识符计数器的值复 位。例如,如果使用lGb每秒(Gbps)的以太网,则对于较小的数据报, 数据报标识符计数器会在不到1秒内复位。大多数通信栈保持数据报30 秒至120秒以用于重组。因此,如果具有特定数据报标识符的数据报被 存储在存储器中以用于重组且其片段之一丢失,则具有相同标识符的后 续的不同数据报片段将导致第一数据报中的损坏。因为接收主机将来自 第二数据报的片段解释为属于第一数据报,因为它具有相同的数据报标 识符和偏移,损坏就会发生。该问题也存在于通过IP传输的TCP、 UDP、 工CMP或其他数据。问题特点在于由使用数据报标识符池引起,其中当数 据报在系统中存活时,该池中只有有限数量的可用数据报标识符。
有趣的是,在发表该问题报告的同时,网络存储技术生产商Zetera 公司遇到并解决了数据报损坏问题。Zetera在1Gbps的以太网系统上通 过UDP/工P运行它自己的存储协议一Z-SANTM协议时发现该问题。Zetera 提出了一种解决方案,该方案解决了 2006年4月10日提交的、转让给 Zetera的美国临时专利申请60/791, 051中描述的问题,以引证的方式将 该申请的全部内容结合于此。
关于数据报损坏问题的其他研究表明,该问题早在1987年当Sun网 络文件系统(NFS)实施的客户遭受数据损坏时就显现。NFS使用会由于 上述原因而损坏的8KBUPD数据报。NFS的实施通过縮短NFS在应用层等 待响应的时间或通过数据报上的大的校验和值(32位校验和或更大)解 决该问题。这种解决方案减轻了丢失的风险,但是并没有解决该问题。 另外,较短的超时降低了系统的效率,因为系统必须执行额外的重试。
题为"Prevention and detection of IP identification wraparound errors"的美国专利6, 894, 976教导了通过使用超时与校验和减小与IP 数据报标识符复位的问题相关的风险的方法。然而,该文献并没有提出 适于所有基于IP的应用的问题的可行解决方案。
所述问题是标准化IP的固有部分,并且如果不改变标准,则不能普 遍解决。然而,希望有一种能够以适用于网络存储、其他网络设备或网 络应用的方式解决该问题的实际解决方案。可以预期,实际解决方案将
5被这些标准采用。所需的解决方案将具有下述特性
*该解决方案应当在IP层操作,使得应用不需要改变。
*该解决方案应当具有后向兼容性,使得如果在标准中需要任何改
变,则通信栈的新版本可以与现有的栈一起工作。 *该解决方案应当只需要对现有栈作最小的变化。
*相对于数据传输的不断增长的速度(10Gpbs, 100Gpbs等),该
解决方案应当经得起未来的考验。 *该解决方案应当将数据报标识符与数据报寿命结合以帮助控制
数据报标识符的使用。 很明显,对于数据报损坏问题的解决方案仍存在长期需求。优选地, 解决方案完全解决问题而不是仅减小问题发生的风险。

发明内容
本发明包括用于解决由于使用具有有限供给的标识符池的数据报标 识符引起的数据报损坏问题的方法。该方法包括提供不同于第一池的标 识符池且向数据报指派从第二池提取的数据报标识符。而且,控制数据 报标识符以防止在数据报的寿命期间被再次使用以确保不出现损坏问 题。在一些实施方式中,第二数据报标识符池包括更大数量的数据报标 识符,而在其他实施方式中,该第二池包括更小数量的数据报标识符。 在可用数据报标识符数量增加的优选实施方式中,数量增大的标识符的 耗尽时间大于由于数据报传输速率而可能发生数据报损坏问题的时间。 在可用数据报标识符数量减小,尤其是减小到一个标识符的其他优选实 施方式中,控制该标识符以防止被后续数据报再次使用。
尤其优选的实施方式包括使用所公开的该方法的存储协议。使用存 储协议,通过所构想的数据报与存储设备交换数据。存储协议包括专有
的存储协议或标准存储协议。标准存储协议的示例包括iSCSI、 FCIP或 iFCP。
在一些实施方式中,第一主机跟踪当前使用哪个数据报标识符。第 一主机向第二主机通报允许的数据报标识符;然后第二主机将该数据报
6标识符用于发送回第一主机的数据报。第二主机将不再使用该数据报标 识符,除非第一主机指示它可以再次使用。第一主机通过列表跟踪使用 过的数据报标识符。数据报标识符以通信协议栈能够照常重组分段数据 报的方式与数据报相关联。控制最近使用的数据报标识符以防止被再次 使用,以确保后续的数据报不破坏当前数据报的重组。
使用网际互联协议的网络应用的开发人员可以有利地采用此处的教 导来解决能够导致数据损坏的数据报损坏。可以结合TCP或UDP传输或 影响发送数据报的工P的其他协议使用所提出的方法。所述方法尤其对客 户可访问的网络设备中的部署(包括高度关注数据完整性的数据存储应 用)有用。
下面的描述涉及本文献中使用的术语。提供术语以确保在没有暗含 限制地讨论本发明的各个方面时的清晰性,并减小文献主体中的重复。
术语"数据报"表示通过通信链路发送的数据块,其中所述块可以
被分割成小片以便于发送。典型地,数据报与包括IPv4或IPv6在内的 网际互联协议(工P)相关联。另外,通过数据报标识符识别数据报以帮 助片段的重组。
本发明的各个目标、特征、方面和优点将从下面本发明的优选实施 方式的详细描述以及附图更加显现,附图中相同的数字代表相同的组件。


图1A显示了现有技术IPv4报头; 图1B显示了现有技术IPv6报头;
图2示出了多字段数据报标识符的一个可能实施方式,其中数据报 标识符的值是重复的;
图3示出了多字段数据报标识符的一个可能实施方式,其中数据报 标识符在不同字段中包括多个值;
图4A示出了用于IPv4的多字段数据报标识符的一个可能实施方式,
术语表其中数据报标识符包括工P选项的使用;
图4B示出了用于IPv6的多字段数据报标识符的一个可能实施方式, 其中数据报标识符包括使用多个片段报头的IPv6报头中的多个字段; 图5示出了存储数据报标识符列表的存储器的一个实施方式; 图6呈现了用于控制从具有更少数量的可用数据报标识符的数据报 标识符池中提取的数据报标识符的再使用的方法的一个示例性实施方 式;
图7示出了方法的示例性实施方式,其中创建数据报标识符池以确 保不发生数据报损坏。
具体实施例方式
下面的描述给出了几个示例来阐明本发明的概念。尽管使用示例, 它们决不是要限制发明本质的范围。应当从其最广义范围理解所给出的 实施方式。
概述
描述了用于解决与高速网络上不可靠的IP分段相关的问题的解决 方案。IP分段涉及通信栈的执行数据报的分段的IP层,该数据报可能传 递包括TCP、 UDP、工CMP、 IGMP的协议或其他协议,并且使得数据报与物 理介质的最大传输单元(MTU)匹配。假设IP使用虚拟地址处理通信且 该IP需要使数据报传输与一般具有固定的最大尺寸的实际物理介质匹 配,则分段是必须的。数据报可以具有高达65, 535字节的长度,其中802. 3 以太网物理层典型地具有1500字节的最大尺寸。IP既在发送操作过程中 执行数据报的分段又在接收时执行数据报的重组。例如,执行重组的处 理通过包括源IP地址(32位)、数据报标识字段(16位)、标志(3位) 和片段偏移字段(13位)的工Pv4报头中的字段的关联来完成。
通过在IPv4中具有16位长度的数据报标识符来识别传输中的多个 数据报。典型地,通信栈中的IP层使用计数器,每次使用数据报标识符 时,该计数器加l。计数器的值代表了数据报标识符。数据报损坏问题在 重组中出现;IP层将保留数据报的片段高达120秒以用于重组。具体而言,百1^0\^ 使用60秒的窗口,而Linux使用30秒的窗口。可以构建 最差情况的情形来说明该问题。
假设这样的分段数据,其中一个片段没有被收到,使得接收缓冲器 在接下来的120秒中试图进行重组。然后使用也具有多个片段的附加IP 数据报继续进行通信。在支持l Gbps的网络上,数据报标识符将会在约 30秒内复位。具体而言,使用512字节的有效载荷大小的协议将会在约 270毫秒内遇到复位。考虑IP层等待高达120秒,片段与原始数据报错 误关联的可能性很大;由此,导致损坏的数据。有效载荷校验和可用于 试图避免这种情况;然而,在16位的校验和字段并使用随机数据的情况 下,在这些最差情况下每4.8小时就可能发生数据损坏。若是10Gbps则 遇到问题的速度要快10倍。
很明显,需要解决这种问题。通过向数据报的工P报头添加附加可选 字段可以解决这种问题。在一些实施方式中,可选字段包括扩展数据报 标识信息,该信息可以被主机用来增大可用数据报标识符池。如果池具 有相对于网络速度和数据报发送速率足够的尺寸,则增大的可用数据报 标识符池将具有足够的分辨率来确保数据报损坏不发生。控制可用数据 报标识符以防止仅通过它们的号码再次使用这些标识符。
在用于各命令具有不同响应的协议的替代实施方式中,包括命令的 数据报将也在有效载荷中包括数据报标识符。则响应数据报将在有效载 荷和工P层报头中都使用其响应中的标识符。主机则可以使用排除表或列 表来避免数据报寿命期间的数据报标识符的再次使用。然后可以基于存 活时间大于超时时段的条目来清理排除表,这将确保没有不匹配的关联。 如果排除列表变满,则认为网络"太脏"。因此,该解决方案是创建一个 具有可由一个主机控制的更少数量的可用数据报的数据报标识符池。
用于网际互联协议的数据报标识
网际互联协议(IP)可以包括标准化的IP,例如,IPv4或IPv6。 即使IPv4和IPv6是标准化的,由于它们识别数据报以进行重组的方式, 它们也具有上述问题。图1A显示了现有技术IPv4报头。在RFC 791中详细描述了 IPv4报 头,以引证的方式将其全部内容结合于此。报头100包括大量的标准化 字段,包括如下字段-
*版本103: IP协议的版本。IPv4使用的值为4。
* IP报头长度105: IPv4报头中32位字的数量,最小值为5。
*服务类型(ToS) 107:提供服务质量的指示。
*数据报长度109:数据报的长度(以八位组(字节)为单位)。
*标识110:在分段或重组中使用的对于源和目的地使数据报彼此
区分的16位标识符。
争标志1U:控制分段的标志。
*片段偏移113:以八个字节递增的当前片段的偏移(以八位组为 单位)。
*寿命(TTL) 115:在数据报被丢弃之前允许的跳数。 *协议117:与数据报的传输相关的协议号。协议包括ICMP、 TCP、 UDP或其他。
*报头校验和119:仅用于IPv4报头的校验和。 *源地址121:数据报的源的IPv4地址。 *目的地地址123:数据报的目的地的IPv4地址。 *选项120A至120N:可以扩展工Pv4报头的选项。 IPv4标准在RFC 791中规定了标识110 "对于该源-目的地对及协议 在互联网系统上数据报有效的时间中必须是唯一的"。尽管存在很多方法 来获取标识110的值,在该标准中没有提供确保标识110在数据报的寿 命期间是唯一的指导。典型地,IPv4的实施使用计数器,该计数器在每 次使用数据报时加l。很明显,在数据报的寿命超过了发生复位条件所需 要的时间时,大多数IPv4实现方式实现的标识110没有遵循该标准。在 标识110中简单地置入16位信息代表不足以在数据报寿命期间保持唯一 性的数据报标识符池。
图1B显示了现有技术IPv6报头。在RFC 2460中描述了 IPv6标准, 以引证的方式将其全部内容结合于此。RFC 2460提供了 IPv6报头150的详细描述。相对于分段,IPv6报头150通过"下一报头"字段而不是在 其主报头中处理分段信息。而且,工Pv6期望源来分割数据报而不是像IPv4
中那样相反地由中间设备分割数据报。工Pv6报头包括以下字段
*版本153: IP协议的版本。工Pv6使用的值为6。
*业务类型155:用于对不同类型的业务区分优先次序。 *业务标签157:指示服务质量。
*有效载荷长度159:数据报中除主报头之外且包括任何后续报头
字段在内的数据长度。
*后续报头161:指示后续报头的类型的值,该值被适当定义。见
IETF维护的RFC 1700。
*跳限制163:允许数据报经过的跳数。
*源地址165:数据报的源的IPv6地址。 *目的地地址167:数据报的目的地的IPv6地址。 上述字段包括IPv6报头150的强制组件。通过对后续报头161设置 合适的值而允许附加报头。例如,如果后续报头161的值为6,则后续报 头将是TCP报头;如果后续报头161的值为17,则后续报头将是UDP报 头;或如果后续报头161的值为44,则后续报头将是片段报头。片段报 头180包括用于分段的下述字段
*后续报头171:指向数据报中的使用与后续报头161相同的编号
方案的后续报头。 *字段173和177:为未来使用而预留。
拳片段偏移175:以八字节为增量的当前片段的偏移(八位组)。
*更多片段179:指示更多片段存在的位值。
*标识170: 32位标识符,用于对于源和目的地使数据报彼此区分。 和用于IPv4的RFC 791 —样,RFC 2460规定了标识170应当具有 "必须不同于使用相同源地址和目的地地址最近发送的任何其他分段分 组的值"的值。RFC 2460提议为每一对使用多个计数器;然而,它没有 建议或启发为数据报标识符使用多个字段。尽管标识170包括32位值, 可以预期,当网络速度增加时,IPv6将经历与IPv4在较低的速度时相同
ii的数据损坏问题。例如,假设最小分段的IPv6数据报,如果线路速度是 100 Gbps,则用于标识170的232个值的池将在不到180秒(约3分钟) 内耗尽,接近网络上数据报的寿命。如果线路速度是1000 Gbps,则用于 标识符170的2 32个值的池将在不到18秒内消耗,远低于数据报30至120
秒的寿命。
在前面的示例中选择了 512字节的数据报,因为块级网络存储典型 地以512字节的块工作,尽管多个块可以连接成单个数据报以由存储介 质进行读或写。而且,所设想的通信速度并不是不切实际的,因为有可 能利用IP作为内部通信总线,其中距离短,数据速率可以很高。
数据报标识符
在优选实施方式中,与仅表示工P数据报报头字段中的标识字段(标 识110和170)相比,数据报标识符代表更广泛的概念。数据报标识符包 括一个或多个值,这些值共同使得在数据报的寿命期间在源和目的地之 间能够唯一地识别数据报。数据报标识符的"唯一性"不必是永恒的。 换句话说,当超出数据报的寿命之后,数据报标识符可以被再次使用以 识别任意后续发送的数据报。
多字段数据报标识符
数据报标识符包括单字段标识符或多字段标识符。单字段标识符是 具有指派给数据报以识别数据报的单各值的那些标识符并且存储在单个 字段中。单字段标识符的示例包括ip"报头中的16位标识符110或IPv6
报头中的32位标识符170。多字段数据报标识符代表其中两个或更多的 字段组合以形成数据报标识符的标识符。例如,标识110可以与报头中 的另一字段组合或可能与有效载荷组合以形成数据报标识符。或者,用 于数据报标识符的单值可以在数据报中重复多次。例如,如稍后部分中 讨论的,单数据报标识符值可以存储在IPv4分组的报头中作为标识110, 并且在数据报本身的有效载荷内重复。可以在数据报中使用的其他字段 包括标识符GUID、校验和或其它可以在数据报的寿命期间提高数据报标识符的"唯一性"的值。
多字段数据报标识符单值化
图2示出了多字段数据报标识符的一个可能实施方式,其中数据报 标识符的值被重复。在一个优选实施方式中,数据报标识符被放置在工P 报头的标识字段中,且还放置在数据报的有效载荷中。数据报200代表
具有报头220和可能的有效载荷230的典型的IP数据报。在该实施方式 中,数据报标识符210在报头220和有效载荷230中重复。对于IPv4数 据报,报头220中的数据报标识符210至少部分地存储在图1A的标识110 中。对于工Pv6数据报,报头220中的数据报标识符210至少部分地存储 在图1B的片段报头中的标识170中。可以预期数据报标识符将可以是任 意尺寸,包括16位、32位、48位、64位或更大。
在有效载荷230中重复数据报标识符210提供了若干优点。 一个优 点涉及不可能改变IP模块的内部工作的应用。在有效载荷230中放置数 据报标识符210提供了对数据报标识符210的应用控制。另一优点包括 不必修改标准数据报报头结构就解决了数据报损坏问题。下面的部分将 进一步阐明在有效载荷中放置数据报标识符210怎样提供对数据报标识 符的"唯一性"的更强控制。可以预期,当需要、有用或必要时,数据 报标识符的值被重复任意次。
多字段数据报标识符多值化
图3示出了多字段数据报标识符的一个可能实施方式,其中数据报 标识符包括不同字段中的多个值。数据报300包括报头320和有效载荷 330。在该实施方式中,通过在数据报标识符310A至310D代表的两个或 更多字段之间分割的数据报标识符识别数据报300。字段按照需要在报头 320或有效载荷330之间扩展。附加的字段使得能够通过增加池中的可用 数据报标识符的数量而扩展数据报标识符的分辨率。
多值字段的优选实施方式位于IP数据报的报头内的可选字段中。因 为这些字段是可选的,使用可选报头字段对现有IP模块的改变减小到最
13小。当改进的IP模块与现有的IP模块交换具有可选报头字段的数据报 时,现有的IP模块应当忽略任何未知选项,由此实现现有的行为。当改 进的工P模块与理解可选报头字段的另一改进的IP模块交换数据报时, 较高分辨率的数据报标识符解决了数据报损坏问题。
多字段数据报标识符多值化的IPV4数据报标识符 图4A示出了用于IPv4的多字段数据报标识符的一个可能实施方
式,其中数据报标识符包括IP选项的使用。IPv4报头选项结构在RFC 791 中定义。选项400包括三个字段,包括类型401、长度407和选项数据 409。长度407代表包括类型401、长度407和选项数据409的选项中的 总字节数。选项数据409包括与选项相关的信息且可以包括零或更多个 字节的信息。类型401还分成三个字段,这也在RFC 791中定义。复制 402表示选项401是否被复制到所有数据报片段。类型403表示选项400 是否是用于控制(值为0X0时)或用于测量(值为0x3时)。数字404代 表表示该选项实际代表什么的0至32范围的值。国际赋号授权组织 (Internet Assigned Numbers Authority: IANA) 旨 底了这些《直。在!異写本说 明书时,值0至21以及23至24已经被指派(参见 http://iana. org/assignments/ip-paraineters last updated 18-OCT-2005)。
在一个优选实施方式中,如IPv4报头420所例示,附加数据报头选 项定义了扩展数据报标识符。报头长度405具有大于5的值以表示在报 头中存在超过最小值5的另外的32位字。例如,如选项430B和430C所 示,可以向报头420添加一个或多个数据报片段标识选项。标识410A存 储数据报标识符的至少一部分。另外,标识410B和410C扩展了数据报 标识符的分辨率。可以预期类型401B或401C将具有0xlA (复制(Copy) =0x0,类(Class) 二OxO,号(Number) =26(0xlA))的值以表示选项 是扩展数据报片段标识符选项。长度407B或407C将具有4的值以表示 总选项尺寸为4字节。在本实施方式中,标识410B或410C向数据报标 识符提供额外的16位。如果需要更大的分辨率,可以添加额外的选项。 本示例性实施方式示出了具有48位的数据报标识符,包括标识410A、410B和410C。尽管该示例示出了用于扩展可用数据报标识符池的一个实施方 式,本领域技术人员将意识到也存在增大可用标识符池的其他可能实现 方法。例如,不是重复所有的选项信息,可以增加单个选项的长度以包 括来自后续32位字的字节;因此,长度字段将具有8个字节的值,其中
两个字节来自于报头标识字段,6个字节来自于数据报片段标识选项字 段。因此,选项将包括高达48位的附加分辨率,生成64位的数据报标 识符。通过改变选项长度值,数据报标识符分辨率将一次增加8位。
多字段数据报标识符多值化的IPv6数据报标识符
图4B示出了用于工Pv6的多字段数据报标识符的一个可能实施方式, 其中,在使用多片段报头选项的工Pv6中,数据报标识符包括多个字段。 IPv6报头450包括标准字段以及如片段报头480A和480B所示的两个或 更多的片段报头。后续报头461存储指示下一报头是片段报头的值44。 片段报头480A包括指示下一字段也是片段报头的后续报头471A。整个数 据报中可以包括零或更多的片段报头。在该示例性实施方式中,片段报 头480B通过存储在后续报头471B中的值6表示后续报头是TCP。用于该 数据报的数据报报头包括两个或更多的标识字段,如标识470A和470B 所示。包括多个片段报头使得IPv6数据报具有以32位块扩展的报头标 识符。可以预期,当网络上的条件改变时,对于IPv6片段报头的改变将 更有利于使得IPv6模块能够按需要改变片段报头。使用多片段报头允许 增加池中可用数据报标识符的数据;因此,池的大小超出了系统在数据 报寿命内耗尽所有数据报标识符的能力。
利用多值数据报标识符的优选实施方式使用现有报头标识符字段作 为数据报标识符的最低有效位(LSB, Least Significant Bit)。通过在 现有字段中放置LSB,可以维持与现有IP模块的互操作性。还可以预期, 可以定义新的可选报头字段以取代标识字段。因此,数据报标识符将仅 被存储在新的可选字段中作为单字段标识符。
先前的实施方式提供了数据报损坏的解决方案,该解决方案涉及通 过增加能够指派给数据报的可用数据报数量来提供数据报标识符池。以这种方式控制数据报标识符解决了数据报损坏问题。在优选实施方式中, 这种方法被有利地应用于网络通信桟的工P层而不影响应用。然而,因为 字段中配置的IP模块的总数必须更新,使用这种方案可能是不实际的。
可以预期,包括Windows或Linux的通信栈将迅速更新到某一程度;然
而,存在成百万的具有将保留的现有栈的设备,包括路由器、网关、打 印机或具有遗留栈的其他设备。在这种情况下,涉及具有单值的多字段 数据报标识符的设备制造商可以釆取应用级方法。创建可用数据报标识 符数量减小的数据报标识符池,且其中在数据报的寿命期间控制数据报
标识符。
缩减的数据报标识符池
优选地,当更加以应用为中心的解决方案有用时,通过两个主机之 间就允许使用的数据报标识符达成的一致来控制数据报标识符。在优选 实施方式中,第一主机通过确保使用中的任意数据报标识符在指派了该 数据报标识符的数据报的寿命期间不再使用来创建或控制数据报标识符 池。因为当前可能正在使用某些标识符,所述池具有数量减小的可用数 据报标识符。第一主机向第二主机发送从该池提取的建议数据报标识符。 第二主机在发送回第一主机的响应数据报中使用该建议数据报标识符。 第二主机在响应数据报的报头和有效载荷中编码该建议数据报标识符。 第一主机正常接收响应数据报。 一旦数据报被重组,第一主机从响应数 据报的有效载荷读取建议数据报标识符且将它放回池中以便再次使用。
縮减的数据报标识符池允许的和排除的数据报标识符的列表
图5示出了存储数据报标识符的列表的存储器的一个实施方式。存 储器540与创建或控制具有数量减小的可用数据报标识符的数据报标识 符池的主机相关联。允许列表530代表允许被指派给数据报的数据报标 识符的列表。列表530包括如ID 535A至535N所示的零个或更多个数据 报标识符。列表中的各个元素都包括实际标识符或标识符的直接引用。 优选地,该列表实现为链接列表,因为由于不同数据报具有不同寿命,
16标识符的顺序会改变。另外,优选的列表以这样的方式排序最老的标 识符接近表头而最近使用的标识符列在表尾。以这种方式排列列表530 确保被指派了列表中的标识符的数据报具有不在使用中或超出原先使用 的数据报标识符的寿命的标识符。
在一个优选实施方式中,使用列表550代表当前正被使用的那些标
识符;因此,代表不能使用的标识符。在这种意义上,列表550包括排 除列表。在一个优选实施方式中,列表550包括如标识符555A至555M 所示的以超时排序的零个或更多个标识符。预期会首先超时的这些标识 符比置于表尾的最近使用的那些标识符更接近表头。类似于列表530,列 表550可以通过链接列表实现。
在一个实施方式中,当需要数据报标识符时,从列表530的头部提 取标识符且放置到如标识符535A所示的列表550的末尾。 一旦从允许列 表530移除,该数据报标识符被控制以防止被再次使用,直到超出其指 派的数据报的寿命为止。在一个优选实施方式中,存在能够将列表550 中的标识符移除并放回列表530中的两种条件。第一条件是该标识符所 指派的数据报已经被接收且正确重组。当重组时,针对该标识符检查数 据报的有效载荷并从列表550移除该标识符并放置在列表530的末尾, 如标识符555B所示。第二条件是超过了数据报的寿命。在这些条件下, 从列表555A移除标识符且将其放置在列表530的末尾,如标识符555A 所示。可以以很多方式判断用于控制列表550的数据报寿命;优选地, 它仅仅是大于IP模块内的重组时间。
例如,考虑使用工Pv4在IP上传输数据报的一个实施方式。因为如 前所述IPv4报头仅支持16位标识字段,起初列表530包括最多65, 535 个数据报标识符。当使用数据报标识符时,列表变乱;不过,这没有关 系,因为只要标识符在数据报的寿命中持续有效,标识符的值并不重要。 对于具有充足的存储器的计算机工作站而言,存储65, 535个标识符的列 表不是问题。通过使用这些技术,主机创建具有数量减小的允许被指派 给数据报的可用数据报标识符的数据报标识符池;由此,解决了数据损 坏问题。所得到的池不同于初始的可用数据报标识符池,因为存在不同数量的实际可用的数据报标识符且这些标识符被控制。
尽管工作站典型地具有充足的存储器用来存储链接列表中65, 535
个标识符,但其他系统不具有这种能力。嵌入式设备具有较小的存储器, 应当利用空间节省技术来节约存储器。某些实施方式使用在必要时可以
扩展的简化标识符集。例如,不是控制所有的65,535个标识符,设备可 能仅使用标号为1至1024的1024个标识符。如果该池不充足,可以通 过允许标识符1至2048来进行扩展,或者如果传输速率下降它可以按需 要压缩。以这种方式控制较小的列表或循环利用可用标识符为不可能存 储所有可能的232个数据报标识符的IPv6实现方式提供了益处。
可以预期,简化池可以具有其他特性。例如,应当注意,通过使第 一主机向第二主机建议单个数据报标识符,得到的可用数据报标识符数 实际上为l。另外,大多数设备具有一种以上类型的相关的业务。因此, 可以将允许的数据报标识符列表縮减为仅具有特定位模式的那些标识 符,例如,将列表限制为具有最高有效位(MSB)组的标识符。仅使用LSB 的标识符可以用于正常业务。应当注意,还可以向第二主机建议代表多 个可用数据报标识符的标识符块。
为进一步说明示例性实施方式,在IPv4中,标识字段是16位。允 许列表530可以仅包括具有两个最高有效位组的那些标识符,这产生了 49, 152 (2"-2")个可用标识符的池,留下不受控制且可用于其他业务的 16,384 (2")个标识符。优选地,所述池具有作为2的幂的函数的减少 的可用数据报标识符数,例如2M-^,其中M是以位为单位的标识符字段 的大小,且N具有小于32的整数值。当N接近M时,可用数将减小到很 小的数量,l或甚至是O。
存储器540代表与计算系统相关联的存储器。在一个优选实施方式 中,作为客户端工作的计算机或设备包括存储器540且使用这些列表来 访问远程设备。示例性远程设备包括网络存储设备、打印机、传真机、 扫描仪或使用IP通信的其他设备。存储器540的实施方式包括使用RAM、 闪存、硬盘驱动器或通过网络上的计算设备可访问的其他数据存储器。简化数据报标识符池控制标识符的示例方法
图6给出了控制从具有数量减小的可用数据报标识符的数据报标识 符池提取的数据报标识符的方法的一个示例性实施方式。图6中的示例 使用与具有单值的多字段数据报标识符结合的先前描述的列表。在该示 例中,主机A代表希望访问主机B的通信链路上的设备,主机B也可以
通过通信链路访问。如有必要,通信链路使用IP以支持分段的方式从主
机A向主机B传输数据报或者相反。例如,主机A可代表客户端计算机 且主机B代表网络存储服务器。在一些实施方式中,客户使用UDP数据 报在存储服务器上存取数据。
在步骤605,主机A希望利用数据报与主机B交换消息。在该示例 中,主机A期望对其请求的响应。因此,主机A从代表可以使用的那些 数据报的数据报标识符的允许列表中提取数据报标识符。该标识符被放 置在使用列表中,使得在该标识符所指派的数据报的寿命期间不能使用 该标识符,以免被再次使用。同时,在步骤605,主机B等待来自于主机 A的消息。
在步骤610,主机A准备用于主机B的消息。优选地,该消息包括 请求主机B采取某些行为(包括对主机A的消息作出响应)的请求。主 机A将标识符放置在发给主机B的消息中。可以预期,该标识符被放置 在数据报的有效载荷中。应当注意,在该示例性实施方式中,标识符没 有指派给主机A的数据报,而是对包括主机B的响应的数据报有意义的 建议。
在步骤615,主机A通过通信链路向主机B发送消息。例如,主机A 调用BSD套接字s朋c^呼叫以通过IP网络发送消息。在步骤655,主机 B从主机A接收数据报。优选地,来自于主机A的消息足够小使得它不会 被分段,例如,对于IPv4,如果总数据报大小小于576字节,该数据报 将不被分段。主机A期望来自于主机B的响应,所以在步骤620,主机A 等待响应。网络应用技术领域的技术人员将意识到该方法类似于客户端-服务器交换。
在步骤660,主机B对于主机A的消息形成响应。在该步骤中,主
19机B读取主机A的消息或检查消息的数据报以发现建议的标识符。在一 些实施方式中,标识符与消息请求命令相结合而编码,使得两者可以被 容易地发现和关联。在一些实施方式中,数据报标识符还可以用作事务
ID。在步骤665,主机B使用该标识符作为包括其响应消息的数据报的数 据报标识符。在IPv4的情况下,主机B将该标识符放置在IPv4报头的 标识字段中,或者在工Pv6的情况下,主机B将该标识符放置在片段报头 的标识字段中。另外,主机B将标识符编码于数据报的有效载荷中。细 心的读者将注意到,在本实施方式中,主机B具有被配置为允许进行这 种数据报标识符操作的IP模块。
在步骤670,主机B将包括响应消息的数据报发回到主机A。在步骤 625,主机A接收数据报。此时,可以对该数据报进行分段并且该数据报 可能经过一定时段到达。主机A试图根据该标识符重组包括响应消息的 数据报。在主机A控制标识符的使用的情况下,没有数据报损坏的风险。 而且,因为数据报表现为正常数据报,主机A正常地在IP层运行,不需 要对主机A的工P模块进行修改。
在一个优选实施方式中,需要结合从主机B接收的响应数据报考虑 两种情形恰当地重组了数据报,或没有重组数据报。数据报可能没有 被重组,因为可能丢失了一个或多个片段。如果恰当地重组了数据报, 则主机A可以处理响应。当主机A处理该响应时,它读取响应数据报的 有效载荷中编码的数据报标识符。主机A现在知道该标识符可以被再次 使用,因为数据报已经安全到达并且数据报的寿命已过;接着在步骤630, 主机A从使用列表中移除该标识符且将它放置在允许列表的末尾。如果 由于片段丢失而没有适当重组数据报,该数据报将被存储在可能位于主 机A的IP模块中的通信桟中,直到发生超时为止,典型地为30至120 秒的数量级,在此之后,丢弃该数据报。此时,主机A还必须处理丢弃 的数据报的标识符。优选地,主机A具有超时相关的使用数据报标识符。 当超出超时时间时,表示数据报的寿命结束,主机A从使用列表中移除 该标识符且将该标识符放置在允许列表的末尾。
标识符的使用列表超时优选地比与重组数据报相关的超时时间长,
20可能为300秒。尤其优选的实施方式将使用列表的超时与通信链路上的 条件结合起来。某些条件具有包括往返时间、吞吐量、拥塞、误码率等 的测量值或其他可测量条件。可以不必测量而是根据策略来设置其他条 件。例如,超时时间可以通过管理员基于网络速度来设置。
读者应当注意到,前面的方法具有确保数据报标识符在相关数据报 的寿命期间不被再次使用的优点。 一个主机使用应用级编码来管理标识 符列表,而不必改变主机中现有的通信栈。这对于具有在不可能对IP模
块做出改变的确立的操作系统(包括Window或Linux)上运行的软件应 用的实现是有利的。大多数应用开发人员不能访问通信桟内部。另外, 该方法对于嵌入式设备的厂商是有利的,厂商可以访问其设备的通信栈 的源码。厂商可以修改设备的IP模块以进行所述操作。例如,生成网络 存储产品的公司可以修改它们的产品以具有所述特性。而且,通过在消 息中编码标识符信息,不需要附加消息来确立数据报标识符的唯一属性。 另外,所述方法确保了遵循需要数据报标识符在数据报的寿命中是唯一 的IP标准。
尤其优选的实施方式将所述技术用于包括存储协议的命令响应协 议。存储协议包括专有的协议(包括Zetera的Z-SAN协议)或标准协议。 标准存储协议包括iSCSI、 FCIP或iFCP。该技术可应用于使用UDP或TCP 作为传输层的那些协议。例如,可以修改iSCCI的实现来交换建议的数 据报标识符以确保在保持iSCSI标准的一致性的同时TCP数据报不遭受 数据报损坏。
提供数据报标识符池
图7示出了创建数据报标识符池以确保不发生数据报损坏的方法的 一个示例性实施方式。本示例采用了许多前述概念。
在步骤700,建立第一数据报标识符池。在一个优选实施方式中, 第一池代表响应于根据IP标准工作进行操作而可用的池。在IPv4中, 由于IPv4报头中的16位标识字段,第一池包括216个可用标识符。在IPv6 中,第一池包括232个可用标识符。在两种情况下,典型地,第一池通过递增计数器实现。与标准的情况相反,当数据报处于足够快的通信链路 上时,这些池不能在相关数据报的寿命中提供唯一的标识符。提供具有 更强唯一特性的可用数据报标识符的第二池解决了该问题。
为了保持与现有IP模块的后向兼容性, 一个优选实施方式具有阈值
函数判断第二数据报标识符池是否有用。在一个实施方式中,阈值函数 监视通信链路上第一主机和第二主机之间的通信条件以判断是否应该控 制数据报标识符。 一个优选实施方式使用与数据报的寿命相关的函数来 使寿命与数据报标识符的使用更加紧密地结合。
优选的阈值函数实施方式根据超时时间或数据报在通信链路上的传 输速率来工作。尤其优选的实施方式使用超时时间和速率这两者。例如, 阈值函数可以包括计算对于给定的数据率是否会在数据报标识字段中出 现复位条件。如果数据报传输速率与数据报重组超时的乘积超过可用数 据报标识符的数量,则标识字段中的复位将导致数据报损坏。在这种条 件下,阈值函数指示第二数据报标识符池是有利的。可以预期,阈值函 数可以根据包括拥塞在内的其他值而不是速率或超时时间来工作。因此, 可以想到所有的阈值函数。还可以预期第二池可以在必要时打开或关闭 以适应现有IP模块。例如,当使用现有IP模块工作以确保不浪费CPU 周期时,不使用第二池可能是有利的。
另外,在阈值函数中使用的值可以是测量的或者预定的。测量值可 以实时地获取或在系统操作时随时间获取。例如,可以通过计算消息在 两个主机之间的往返时间测量速率,或可以在整个通信链路上测量速率。
预定值包括网络带宽,例如以太网的1Gbps或10Gbps速率。
在步骤705,作出关于使用第二数据报标识符的决定。如果第二池 是没用的,则在步骤790,从第一数据报标识符池获取数据报标识符,且 以常规方式继续处理。如果如阈值函数所示,第二池是有用的,则可以
启用第二池。
在步骤710,创建第二数据报标识符池。提供第二标识符池代表确 立一组条件,其中,以确保相对于第一数据报标识符池数据报标识符在 数据报的寿命期间是唯一的方式控制第二池中的数据报标识符。因此,第二池不同于第一池,因为可用数据报标识符的数量不同或对数据报标 识符的控制更大。提供第二池包括预先在运行时间之前修改IP模块或在 运行时或期间更改工P层的行为。第二池的创建还包括以克服导致数据报 损坏问题的第一池中可用的受限供应的方式增加可用数据报标识符的数 量。如上所述,通过使用包括扩展数据报标识符信息的附加报头选项可 以实现增加可用数据报标识符的数量。第二池的生成还包括减小用于数 据报的可用数据报标识符的数量。减小数量包括保持允许数据报标识符 列表或建议单个的数据报标识符或标识符块。在增加或减小可用数据报 标识符数量的两种情况下,控制数据报标识符以防止提取导致数据报寿 命内数据报损坏问题的值。由于各种原因可以生成多于一个的第二池。
多个第二池允许对各个主机对、协议指派(TCP、 UDP、 ICMP、 IGMP等)、 甚至对各个传输协议端口建立池。例如端口 80上的所有HTTP业务可以 具有一个池,而端口 21上的FTP业务可以具有不同的池。具有多于一个 的第二池还确保IP标准所要求的数据报标识符唯一性。
一旦建立了第二数据报标识符池,在步骤720,从第二池提取数据 报标识符。提取数据报标识符包括使用列表中的下一标识符或接收数据 报标识符的建议进行使用。在使用列表的情况下,从允许标识符列表获 取标识符,或者在具有大池的情况下,类似于现有留工P模块中所做的那 样,通过递增计数器产生标识符。
在步骤730,控制数据报标识符以防止被再次使用。在优选实施方 式中,通过确保第二池具有足够数量的可用数据报标识符(在与数据报 寿命相关的规定超时时间中不会使用标识符不能),来控制标识符以防止 在数据报的寿命期间被再次使用。在其他优选实施方式中,可以通过跟 踪第二池已经使用的标识符来控制数据报标识符。
在步骤740,数据报标识符被指派给数据报。在优选实施方式中, 所述指派包括在工P报头的识别字段中放置至少一部分数据报标识符。在 其他实施方式中,将标识符的一部分放置在可选报头字段中。在其他实 施方式中,将标识符的一部分放置在数据报的有效载荷中。 一旦形成了 数据报且数据报标识符被放置在数据报中,在步骤750,将数据报发送到
23远程主机。网络应用领域的技术人员将意识到可以以很多方式实现发送
数据报,包括使用ICMP、 IGMP、 UDP、 TCP、在IP层上构建原始数据报或
形成数据报的任意其他类的型协议。
在步骤755,对是否接收到数据报进行检查。从数据报的发送到接 收的任何时间,可以对数据报进行分段。在IPv4网络中,通过包括路由 器在内的中间设备在网络上进行分段。在IPv6中,数据报源可以对数据 报进行分段。如果已经接收到数据报的一个或多个片段,在步骤760,使 用数据报标识符或在重组过程中对标识数据报片段有用的其他信息重组 数据报。其他有用的信息包括IP地址、协议号、端口指派或其他数据报 信息。在步骤765,对是否完全重组了数据报进行检查。
如果数据报的片段仍未到达,在步骤775,对于数据报的寿命进行 判定。在一些实施方式中,在主机等待响应消息的应用层进行该检查。 如果没有超出数据报寿命,则通过返回步骤755,系统继续等待数据报。 等待数据报一直进行,直到数据报完成重组或超出了寿命。
在步骤785,执行检査以判断是否对与数据报相关的标识符进行了 控制。在优选实施方式中,当数据报的有效载荷包括标识符或者当使用 了可选报头字段时,对数据报标识符进行了控制。如果没有,则按照现 有IP模块的方式对数据报进行正常处理。否则,在步骤780,允许数据 报标识符再次使用。在一些实施方式中,把标识符从使用或排除列表移 动到允许列表。在其他实施方式中,第二池足够大,使得基于大计数器 的数据报标识符将不会复位,而允许在超过数据报寿命之后再次使用标 识符。
优点
当解决数据报损坏问题时,采用本公开技术提供了很多优点。在一 个实施方式中,解决方案在应用层之下的IP层操作。IP层解决方案确保 不必修改应用就可以很好地工作。另外,通过使用可选IP报头字段,对 于运行现有IP模块的老设备具有最小的影响。现有IP模块可以通过忽 略不熟悉的可选报头而正常工作。而且,通过使用多个可选报头或创建具有扩展信息的可选报头,系统经得住未来的考验。当数据率提高导致 可用数据报标识符池变得不充足时,通过在有用时跟踪一个或多个可选 数据报标识符字段可以扩展数据报标识符。在IP报头标识符字段中放置 数据报标识符的LSB部分确保后向兼容性和对于现有行为的回退。不再 必须使用校验和来解决标识符冲突,因为解决了数据报损坏问题;因此, 类似于NFS的应用不必消耗CPU周期(消耗CPU周期会导致吞吐量的降 低)。
对于不可能对一组主机的IP模块做出修改的情况,开发网络应用或 设备的厂商也可以采用本公开技术。控制可用或使用中的数据报标识符 确保了数据报标识符被控制以防止其不再使用,否则会导致数据报损坏。 厂商可以修改他们产品的IP模块以保护数据报且在访问控制该数据报标 识符的产品的系统上具有相应软件模块。用于网络设备的示例性软件模 块包括设备驱动器。
更紧密地将数据报寿命与数据报标识符结合起来提供了对标识符唯 一性的更强控制。因此,开发人员可以确保与现有标准的一致性并且经 得起未来其它数据报损坏问题的考验。
其他考虑
网络协议领域技术人员将意识到,存在落在本发明的范围内的其他
构思。这些构思包括以下各项,但不限于以下各项
* ICMP提供为处理IP通信问题设计的控制机制。也可以修改ICMP
模块以通过附加的ICMP消息或扩展先前定义的ICMP消息来辅助
解决数据报损坏问题。 *本公开方法对于面向事务的协议也非常有效。另外,所述方法还
可用于包括TCP在内的流协议。 *本方法可以对称使用,其中两个通信主机都采用所述方法,或可
以非对称使用,其中仅一个主机采用本方法而另一个以现有模式工作。
*第三主机可以控制数据报标识符以确保系统作为整体使用唯一的数据报标识符。当主机通信时,它们可以获取一个或多个允许
的数据报标识符;优选地,大块的允许标识符。例如,DHCP服
务器可以分发可用数据报标识符块。
尽管标准规定了数据报寿命中的唯一性,包括全球唯一标识符
(GU工D, Globally Unique Identifier)在内的标识符也可用于 确保数据报总是唯一的,与数据报的寿命无关。 *甚至对于有限时间段是唯一的数据报标识符也可以用作用于基 于事务的系统的事务标识符。例如,期望多个响应的网络存储客 户端可以使用事务标识符来帮助区分来自多个存储设备的多个 响应。
*在从IPv4架构向IPv6架构的过渡期间,可以采用一个或多个本 发明的技术来解决数据报损坏问题。例如,如果使IPv6取道于 IPv4,则IPv4方法可用于保护IPv6数据报。然后IPv6方法可 用于保护应用数据。 尽管引用网络存储设备作为示例,应当意识到同一技术同样可以很 好地应用于任意网络设备。网络设备包括可以使用数据报在通信链路上 访问的任意设备。网络设备的示例包括打印机、数字视频记录、媒体播 放器、传真机、扫描仪、复印机、VoIP电话或其他设备。
硬件
其他方面涉及与本发明相关的硬件。可以预期,能够开发与本发明 的实体方面相关的用于存储、原型制作(pr6totyping)、制造、操作、 管理、封装、测试、物理控制或支持、或用于其他行为的硬件。因此, 本发明包括用于开发、生产、制造或运行硬件的系统、方法或装置。在 这种意义上,该硬件落入本发明的范围内。
软件
在另一方面,可以预期,可以编写能够配置、模拟或管理本发明的 各个方面以及其相关架构的软件。从这个角度看,本发明包括编写这种软件、在机器可读形式上记录该软件、授权、销售、发行、安装或在合 适的硬件上操作这种软件的方法。而且,软件本质上被认为落入本发明 的范围内。
因而,已经公开了使用网际互联协议解决数据报损坏问题的特定组 合和方法。然而,对于本领域技术人员而言,很明显,可以在己经描述 的方法上做出更多的修改而不偏离本发明这里的概念。因此,除了本公 开的精神,不是要限制本发明。而且,在解释本公开时,所有的术语应 当以与语境一致的最广义的方式理解。具体而言,术语"包括"应当解 释为以非排他方式引用元件、组件或步骤,表示所引用的元件、组件或 步骤可以存在或被利用,或与没有明确引用的其他元件、组件或歩骤组
权利要求
1. 一种解决数据报损坏问题的方法,该数据报损坏问题由具有有限数量的可用数据报标识符的第一数据报标识符池所导致,该方法包括以下步骤(a)提供不同于所述第一数据报标识符池的第二数据报标识符池;(b)向数据报指派从所述第二数据报标识符池提取的数据报标识符;其中使用所述第二池确保所述数据报标识符在与所述数据报相关的寿命期间不被再次使用。
2. 根据权利要求l所述的方法,其中提供所述第二数据报标识符池 的步骤包括使可用数据报标识符的数量增加到高于所述的有限数量。
3. 根据权利要求2所述的方法,其中所述第二数据报标识符池与主 机对相关联。
4. 根据权利要求3所述的方法,其中所述第二数据报标识符与关联 到所述主机对的协议端口相关联。
5. 根据权利要求l所述的方法,其中提供所述第二数据报标识符池 的步骤包括使可用数据报标识符的数量减小到低于所述的有限数量。
6. 根据权利要求5所述的方法,其中所述可用数据报标识符的数量 是2"的函数,其中N是小于32的整数值。
7. 根据权利要求6所述的方法,其中,所述可用数据报标识符的数 量小于2。
8. 根据权利要求l所述的方法,其中,提供所述第二数据报标识符 池的步骤响应于与所述寿命相关的阈值函数。
9. 根据权利要求8所述的方法,其中,所述阈值函数是超时时间的函数。
10. 根据权利要求8所述的方法,其中,所述阈值函数是数据报传 输速率的函数。
11. 根据权利要求1所述的方法,其中,所述数据报与网际互联协议相关。
12. 根据权利要求ll所述的方法,其中,所述网际互联协议包括下述协议中的至少一个IPv4和IPv6。
13. 根据权利要求ll所述的方法,该方法还包括向所述数据报中的报头添加可选报头字段,其中所述报头与所述网际互联协议相关联,并 且所述可选报头存储所述数据报标识符的至少一部分。
14. 根据权利要求13所述的方法,其中,所述数据报标识符包括至 少32位。
15. 根据权利要求14所述的方法,其中,所述数据报标识符包括至 少48位。
16. 根据权利要求1所述的方法,该方法还包括在网络上从第一主 机向第二主机发送所述数据报。
17. 根据权利要求16所述的方法,该方法还包括所述第二主机向所 述第一主机建议所述数据报标识符。
18. —种存储协议,该存储协议采用根据权利要求16所述的方法通 过所述数据报与存储设备交换数据。
19. 根据权利要求18所述的存储协议,该存储协议包括下述协议中 的至少一种iSCSI、 FCIP和iFCP。
20. —种计算机可读存储器,该存储器存储有在处理单元上执行的 指令,其中所述指令根据权利要求1所述的方法操作。
21. —种网络上的计算设备,该计算设备包括根据权利要求20所述 的存储器。
全文摘要
本系统和方法考虑到与网际互联协议使用从第一数据报标识符池提取的数据报标识符相关的问题,确保数据报保持完整性。所述方法涉及控制数据报标识符的使用以确保仅允许使用某些标识符。创建不同于所述第一池的第二数据报标识符池。从所述第二池提取数据报标识符并指派给数据报,使得控制数据报标识符而防止其在所述数据报的寿命期间被再次使用。在替代实施方式中可用数据报的数量可以通过可选报头字段增加或通过跟踪允许的数据报标识符减小。第一主机向第二主机通报允许的标识符。所述第二主机将允许的标识符用作数据报标识符。
文档编号H04L12/28GK101449519SQ200780018187
公开日2009年6月3日 申请日期2007年4月10日 优先权日2006年4月10日
发明者塞缪尔·K·鲍曼, 尼古拉斯·维切, 托马斯·厄尔·路德维格, 查尔斯·威廉·弗兰克, 理查德·W·赫尔, 罗查克·夏尔马, 阿德南·可汗, 马克·亚当斯 申请人:雷特泽远程管理有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1