通过动态设置重组计时器改进网络性能的方法和系统的制作方法

文档序号:7626295阅读:105来源:国知局
专利名称:通过动态设置重组计时器改进网络性能的方法和系统的制作方法
技术领域
本发明一般涉及数据处理网络系统中的数据传输,尤其涉及在因特网和类似网络上的数据块传输。更具体地说,本发明涉及改进的网际协议(IP)网络通信。
背景技术
计算机网络是用于在实体之间传送数据的互连通信媒体的地理上分布的集合。实体可以包括任何在通信媒体上发起(即发送)和/或接收网络报文的设备,诸如主机或终端站。多种类型的计算机网络是可用的,其类型涵盖局域网(LAN)和广域网(WAN)。终端站可以包括个人计算机或工作站,其典型地根据预先定义的协议通过交换诸如帧或分组的数据的离散报文进行通信。在本文中,通信协议栈包括一组定义站如何相互交互的规则。
因特网已成为用于数据(文本、代码、图像、视频、音频或其混合)和软件的传输和分发的重要的计算机网络。因特网通信体系结构协议栈的主要协议是网络层(第3层)的网际协议(IP)和传输层(第4层)的传输控制协议(TCP)。术语TCP/IP通常用于指因特网体系结构,其已成为在因特网和内联网技术中广泛执行的标准通信协议,赋予客户机、服务器和耦合它们的通信系统之间广泛的异构性。IP在网络层提供“数据报”传送服务。TCP构造面向连接的传输层服务,以提供两个IP主机之间数据流的可靠、有序的传送。TCP/IP传输的可靠性通常受到如下三种事件的危害数据丢失、数据损坏和数据重排。
数据丢失在TCP/IP中由超时机制管理。TCP维持计时器(重传计时器)以测量从接收方接收已发送的段的确认(ACK)的时延。当ACK没有在估计的时间间隔内到达时(重传超时(RTO)),相应的段被认为丢失并重传。此外,由于TCP传统上基于分组丢失表明网络拥塞的假设,因此TCP将通过输入“慢速起动”补偿其传输速率,从而极大地减小其对一个段的拥塞窗口。
当段到达接收方时,TCP通过对段执行校验和来管理数据损坏。校验和算法是TCP头和数据中的所有16位字的补码和的16位补码。TCP发送方计算有关分组数据的校验和,并将这2字节的值装载入TCP头。TCP头的校验和字段还包括12字节虚拟头(pseudo header),其包括来自IP头的信息。接收方计算有关所接收的数据(除去TCP头中的2字节校验和字段)的校验和,并验证其是否匹配头中的校验和值。
TCP通过维护将进入的分组进行排队直到这些分组按顺序重排的重组队列,管理数据的重排或段的乱序到达。只有当该队列中的数据按顺序到达时,才被移到可由用户看见的用户的接收缓存器。当接收方观察到所接收的分组的序号中有“空洞”时,就对其接收的每个后续的“乱序”分组生成重复确认(DACK)。直到接收到缺少的分组,具有更高序号的每个所接收的数据分组被认为是“乱序”的,并导致生成DACK。
图7是包括IP头部分110和有效负载/数据部分150的IP分组100的示意性框图。IP头110包括指示IP头的格式的版本字段102、指示因特网头的长度的因特网头长度(IHL)字段104和提供所希望的服务质量的参数的指示的服务类型(TOS)字段106。IP总长度字段108指定包括IP头和有效负载/数据的IP分组的长度,而IP标识字段110指定由发送实体分配的识别值以帮助重组分组的分段。
IP头还包括更多分段(MF)标记112、指定IP分组内分段的位置的IP分段偏移量字段114和指示允许分组停留在网络中的最长时间的生存时间(TTL)字段116。协议字段118指示用在分组的有效负载/数据部分150中的下一层协议,而头校验和字段120提供只有IP头的校验和。IP头还包括包含发送实体的IP源地址的源地址字段122,包含接收实体的IP目的地址的目的地址字段124,以及选项字段126和填充字段128。
如果与源和目的实体相关联的LAN标准不相同(例如以太网和令牌环网),则通常需要IP数据报的分段(以下称为分组)。在这种情况中,网络的路由器和交换机可能需要改变分组的格式,以便分组可以由目的实体接收。例如,如果分组在允许大的分组大小的网络中发起,并经过将分组限制在较小分组大小的一个或多个链路或本地网络,则互连网络的交换机必须对IP分组进行分段。在TCP/IP网络环境中,分段和重组过程是已知的,并在Information Sciences Institute University of SouthernCalifornia(1981)的网际协议,请求注解(RFC)791中进行了详细描述,其公开文件在此并入作为参考。根据RFC 791,IP分段将IP分组分成可后来重组的任意数目的分段。
为了对IP分组进行分段,源或者中间系统(例如交换机)创建两个或多个新的IP分段,并将来自原始分组的一部分IP头字段的内容复制到分段的每个IP头中。分段的接收实体使用IP标识字段110的内容(即分组标识符(ID))确保不会混淆不同分组的分段。即,标识字段110用于区分分组之间的分段。IP分段偏移量字段114通知接收实体有关分段在原始分组中的位置。每个分段的分段偏移量字段和IP总长度字段108的内容确定由分段覆盖的一部分原始分组。MF标记112指示(例如当重置时)最后一个分段。整个IP分组的始发主机将IP标识字段110设置为对于分组在网络中是活动的时间以及源/目的地址对和协议(例如TCP,UDP)是唯一的值。整个分组的始发主机还将MF标记112设置为例如零,将IP分段偏移量字段114设置为零。
IP标识字段110是2字节字段,其必须在达到65535后才绕回(即必须从1重新开始编号)。在每秒生成数千个IP分组的高速网络上,字段110中的IP标识符(IP-ID)可每秒绕回多次。例如,在吉比特以太网上,1秒钟可生成80,000个分组,这意味着IP-ID的绕回可在1秒钟内发生。由于网络会变得甚至更快,因此这种绕回会甚至更频繁地发生。例如,采用10吉比特以太网,绕回可在毫秒级发生。
因此,如果属于被绕回的IP-ID的分段与由最初的IP-ID识别的不同IP分组的分段重组,则IP-ID绕回是网络中数据损坏的原因。由于利用头校验和120以检测损坏的因特网校验和算法不是很强,因此诸如TCP或UDP的上层协议可能不能检测损坏。这个问题在IP中通过使用重组计时器(参见RFC 791)解决。如果在重组计时器期间内还没有接收到所识别的分组的所有分段,则IP分段重组使用重组计时器以丢弃分段。IP分段重组的许多实现通常使用30秒的重组计时器。在非常快速的网络中,IP-ID在该时间间隔内将绕回多次,增加了分段与被绕回的IP-ID的错误分段不匹配的可能性。
对快速网络中IP-ID绕回的解决方案是将重组计时器设置成非常低的值,从而减小重复IP-ID数量突出的情况。然而,由于分段在只有IP分组还没有到达时沿着慢速链路被错误地丢弃,因此这会导致具有快速和慢速网络的不同速度的网络环境的性能下降。丢弃慢速网络连接中的IP分段将导致要求来自上层的不必要的重传。可以看出,希望提供一种解决由在可变速度的网络上的IP-ID绕回引起的数据损坏问题的解决方案,其提供超过已知的解决方案的改进的性能。

发明内容
根据本发明,公开了一种通过数据处理系统网络通信的改进的方法和系统。本发明的一个优选方法包括以下步骤接收方通过网络接收数据分段;根据与包括数据分段的数据分组的发送方之间的接口,动态地设置数据分段的重组时间;以及如果在接收到数据分段后,数据分段保持从数据分组中被分段的时间比重组时间长,则丢弃数据分段。
通过以下详细的描述,本发明的所有目的、特征和优点将变得明显。


参照附图,在以下描述的优选实施例中描述了本发明,在附图中,相似的标号代表相同或类似的单元,如下图1示出了可实现本发明的优选实施例的数据处理系统网络;图2是可用于本发明的优选实施例的服务器-客户机系统的典型软件体系结构的示意图;图3是可用于本发明的优选实施例的网络的4层通信体系结构;图4描述了可用于本发明的优选实施例的诸如因特网的由路由器互连的网络的框图;图5示出了可用于本发明的优选实施例的当数据分组经过TCP/IP协议栈时的数据分组的格式;图6示出了根据本发明的优选实施例的用于设置重组计时器以响应接收IP分段的过程的流程图;图7是包括IP头部分和有效负载/数据部分的IP分组数据格式的示意性框图。
在以下本发明的典型实施例的详细描述中,参考附图,其形成详细描述的一部分,并且通过说明可实行本发明的具体典型实施例进行显示。
具体实施例方式
在以下本发明的典型实施例的详细描述中,充分描述了可实行本发明的特定典型实施例,以使本领域的技术人员能够实现本发明,应当理解,在不背离本发明的精神或范围的情况下,可以使用其它的实施例,可以进行逻辑、体系结构、程序、机械、电子和其它方面的改变。因此,下述详细的描述并不是限制,本发明的范围仅由所附权利要求限制。特别地,虽然下面关于TCP/IP网络环境描述了优选实施例,但应当知道,本发明并不限于TCP/IP实现。
现在参照附图,尤其参照图1,描述了可实现本发明的优选实施例的数据处理系统网络。数据处理系统网络101包括至少一个经由至少一个诸如因特网107的网络耦合到至少一个客户机系统105的服务器系统103。服务器103与客户机105之间的数据传送符合TCP/IP规范以及文件传送协议(FTP)、超文本传送协议(HTTP)或一些类似的通信协议。如将要知道的,虽然仅显示了单个服务器103和单个客户机系统105,但数据处理系统网络101可包括任何数量的由包括因特网107的一个或多个连接和网络互连的服务器和客户机系统(未示出)。为了说明的目的,服务器103和客户机系统105使用TCP/IP通信,虽然本发明并不局限于此,但在可选实施例中,也可以使用其它适合的协议。
图2是可用于本发明的优选实施例的服务器-客户机系统的典型软件体系结构的描述。服务器103和客户机105每一个都用软件体系结构200构造。在最低一层,操作系统205用于向用户和其它软件提供高级功能。这样的操作系统典型地包括BIOS(基本输入输出系统)。通过直接调用操作系统功能或间接地旁路操作系统以访问通过网络通信的硬件,通信软件210通过外部端口经由物理通信链路向诸如因特网的网络提供通信。应用编程接口215允许作为个人或软件例行程序的系统用户使用符合标准的接口调用系统能力,而无需考虑特定的功能如何实现。因特网软件220代表可用于装备计算机的因特网功能的多个标准商用软件包中的任何一个。应用程序软件225代表被设计成通过通信端口响应数据以提供用户想要的希望的功能的任何数量的软件应用程序。该层的应用程序可包括处理可由因特网用户访问的数据、视频、图表、照片或文本所必需的应用程序。
如图3所示,TCP/IP和类似的协议可由包括应用层310、传输层312、网络层314、链路层316和物理层318的4层网络通信体系结构使用。每一层负责处理各种通信任务,如下所述。
物理层318通常将数据转换为比特,用于在网络的各种物理设备之间的通信。物理层中使用的协议的例子可包括但不限于来自诸如以太网卡、令牌环网卡、无线网卡和类似的卡的网络接口卡的协议。电气和电子工程师协会(IEEE)已发布了可用于物理层的多个协议,诸如IEEE 802.3标准(以太网)、IEEE 802.5标准(令牌环网)和IEEE 802.11标准(无线以太网)的协议。
链路层316通常管理通过网络通信的数据。例如,链路层316(也称作数据链路层或网络接口层)通常包括设备驱动器,也可包括诸如媒体访问控制(MAC)的协议。物理层和链路层一起处理与使用的网络媒体物理连接的所有硬件的细节。
网络层314(也称作网际层)处理数据分组围绕网络的移动。例如,网络层处理各种通过网络传送的数据分组的选路。TCP/IP套件中的网络层由几个协议构成,包括IP(网际协议)、ICMP(网际控制报文协议)和IGMP(因特网组管理协议)。
传输层312提供网络层314和应用层310之间的接口,方便了两个主机之间的数据传送。传输层涉及诸如将从应用层传送到它的数据分成用于下面的网络层的合适大小的块、确认所接收的分组、设置超时以确定另一端确认所发送的分组等的事情。在TCP/IP协议套件中,有两个明显不同的传输协议TCP(传输控制协议)和UDP(用户数据报协议)。TCP提供可靠性服务以确保数据在两个主机之间正确地发送,包括丢失检测和重传服务。相反地,UDP通过仅从一个主机向另一个主机发送称作数据报的数据分组向应用层提供更简单的服务,无需提供任何确保数据被正确传送的机制。当使用UDP时,应用层必须执行可靠性功能。
应用层310处理特殊应用的细节。有许多常用的几乎每种实现都提供的TCP/IP应用,包括(1)用于远程登录的Telnet;(2)FTP,文件传送协议;(3)SMTP,用于电子邮件的简单邮件传送协议;(4)SNMP,简单网络管理协议;(5)邮局协议,v3(POP3)。
诸如因特网的网络由多个路由器互连,其中路由器每一个将两个或多个网络连接在一起。典型的路由器包括具有输入和输出连接的专用硬件箱以及专用硬件和/或嵌入式软件,其允许多种不同类型的物理网络连接,诸如以太网、令牌环网、点对点连接等。图4示出了包括由路由器436连接到令牌环网络434的以太网网络432的因特网400。虽然图4仅示出了通信中的两个主机,但以太网上的任何主机都能够与其上的任何主机通信,或与令牌环网络上的任何主机通信,反之亦然。
如图4所示,路由器436包括网络层模块438(在这种情况下为IP模块)和用于连接到主机网络的适当的网络驱动器,即以太网驱动器440和令牌环网驱动器442。在应用层,网络包括FTP客户机420和FTP服务器422;在传输层,网络包括TCP客户机424和TCP服务器426;在网络层,网络包括IP客户机428和IP服务器430。大多数网络应用被设计成使得一端为客户机,另一端为服务器。服务器向多个客户机提供一些类型的服务,在这种情况下,访问服务器主机上的文件。每一层都具有一个或多个用于与同一层的对等实体通信的协议。这些通信协议包括应用层的FTP协议444、传输层的TCP协议446、网络层的IP协议448以及链路层的以太网协议450和令牌环网协议454。应用层通常处理用户过程,而下面三层(传输、网络和链路层)在诸如UNIX和Windows操作系统的操作系统的内核中实现。例如,网络接口层的目的在于处理通信媒体(以太网、令牌环网等)的细节,而应用层的目的在于处理一个特定的用户应用(FTP、Telnet等)。
应用层和传输层使用端到端协议(FTP协议444、TCP协议446)。网络层提供用在两个终端系统和其间的每个中间系统(为简明起见,这里仅示出一个中间系统)上的跳到跳(hop-to-hop)协议。例如,路由器436的IP模块438通过IP协议448连接到两个主机。还有专用于连接到路由器的各种类型的主机网络的链路层协议,以处理链路层的网络与路由器之间的通信。因此,以太网协议450用于处理路由器436中的以太网驱动器440与以太网络432上的主机的以太网驱动器452之间的通信,而令牌环网协议454用于处理路由器436中的令牌环网驱动器440与令牌环网络434上的主机的令牌环网驱动器456之间的通信。
当应用使用TCP/IP发送数据时,数据经过每一层向下发送到协议栈,直到作为比特流穿过网络发送出去。如图5所示,协议栈500中的每一层通过将头(有时增加尾部信息)添加到其接收到的数据上而将信息加到数据上。例如,在应用层,应用头580被添加到用户数据582上以形成应用数据584。在传输层,传输协议头被添加到应用数据上。在图5的情况中,传输层为TCP,因此TCP头586被添加到应用数据584上,从而形成将被发送到网络层IP的TCP帧588。TCP头586包括二十个字节。类似地,在网络层,网络层头被添加到传输层数据上。在TCP/IP的情况下,IP头590被添加到TCP帧588以形成IP数据报592。IP头590也包括二十个字节。最后,在链路层,诸如以太网头594的媒体头(media header)被增加到从网络层接收的数据上,以形成数据帧。在一些情况下,例如当媒体是以太网时,媒体尾部也被添加到数据的末尾。例如,在图5中,以太网尾部96被添加到以太网头594和IP数据报592上,以形成以太网帧598。以太网帧包括对应原始应用报文数据的流经网络的比特流。在头的底部处的数字(14,20,20,4)是以字节为单位的头的典型大小,例如以太网头94包括14字节等。帧的大小受到用于传输数据分组的网络类型的最大传输单元(MTU)的限制。例如,以太网网络的MTU为1500字节。网络层自动执行分段(将数据报拆分成更小的片段),以便每个分段小于网络的MTU。
现在返回参照图1和图4,描述用于异构网络环境中的如本发明的优选实施例提供的动态IP分组重组计时器的操作。网络中的接收主机在其内存中存储第一和第二用户可配置的每个接口重组计时器-第一个设置成快速网络的优化重组计时器,第二个设置成较慢网络的优化重组计时器。在本发明的优选实施例中,用于丢弃IP分段的第一或第二重组计时器被动态地选择用于每个所接收的IP分组。这一实施例在避免由于IP网络系统中IP-ID绕回所产生的数据损坏方面提供了实质的改进。
在接收到IP分段时,接收方基于例如源地址122或其它网络信息确定发送方是否在与接收方相同的子网上。对于从位于相同子网上的发送方接收到的IP分段,接收方将在其重组计时器中使用较快的(第一存储的)重组时间,而对于通过网络上的网关或其它较慢或较长链路发来的IP分段,则在其重组计时器中使用较慢的(第二存储的)重组时间。
这样,连接到网络中的可变速度链路的接收方将基于所接收的IP分段经过的接口的类型或速度,设置不同的重组计时器。例如,从位于相同子网上的发送方接收的IP分组会具有被设置成很短值的重组时间(例如,0.5秒)。经过网关或已知的较长链路接收的IP分段会被设置较长的重组计时器(例如,说明经过网络较慢速度出来的1秒)。如果所接收的分段是IP分组的第一个分段,或者如果所计算的重组计时器被确定成比接收系统中当前使用的计时器长,则所选择的重组计时器通常会由接收方用于属于同一数据分组的所有后续接收到的数据分段。这种设置重组时间的算法可用于IP分组的每个分段,或者仅用于第一个分段,然后根据所希望的粒度,重新用于来自同一数据分组的所有后续的分段。
现在参照图6,其示出了根据本发明的优选实施例的用于设置重组计时器以响应接收IP分段的过程的流程图。过程在步骤602开始,此时IP分段被网络上的客户机接收。该过程继续判断框604,接收客户机确定IP分段的源IP地址和目的IP地址是否指示发送方和接收方在网络的同一子网上。如果是,则如框606所示,接收方将重组计时器设置为存储在接收方处的用于在同一子网上接收的IP分段的值。基于该子网的速度和结构,这个重组计时器值已由用户预先确定或由系统计算,作为丢弃IP分段和需要在子网上重传的最佳时间。如果在框604的判断是发送方和接收方不在同一子网上,则该过程继续到步骤608,接收方将重组计时器设置为存储在接收方处的确定为对于经过网络中的网关或其它较慢的链路接收的IP分段最优的值。这个重组时间通常比在步骤606中设置的时间长,以说明与子网外的网络相关联的较长等待时间。
如可知道的,这个解决方案不需要对通信的发送侧进行任何修改。此外,每个接口重组计时器比当前系统范围的重组计时器值更细。在基于UNIX的系统上,这个解决方案可容易地通过增强“ifconfig”命令实现,以提供接口专用的重组计时器。
本领域的普通技术人员可知道,上述方法通常在一个或多个处理器(未示出)上运行的软件中执行,并且软件可被提供为在诸如磁盘或光盘的任何适合的数据载体(也未示出)上承载的计算机程序单元。传输数据的信道可类似地包括所有描述的存储介质,以及诸如有线或无线信号媒体的信号承载媒体。
因此,本发明可适合地实现为与计算机系统一起使用的计算机程序产品。这样的实现可包括一系列计算机可读指令,其或者固定在诸如计算机可读介质的有形介质上,例如磁盘、CD-ROM、ROM或硬盘,或者经由调制解调器或其它接口设备通过包括但不限于光或模拟通信线路的有形介质或者无形地使用包括但不限于微波、红外或其它传输技术的无线技术传送到计算机系统。这一系列计算机可读指令实现前述的全部或部分功能。
本领域的技术人员可以知道,这种计算机可读指令能够用与多种计算机体系结构或操作系统一起使用的多种编程语言编写。此外,这种指令可以使用当前或未来的包括但不限于半导体、磁或光的任何存储技术存储,或者使用当前或未来的包括但不限于光、红外或微波的任何通信技术传输。可以预见,这种计算机程序产品可以作为具有附带的打印的或电子的文档的可移动介质分发,电子文档例如在系统ROM或硬盘上与计算机系统一起预先装载的例如压缩软件,或者从服务器或电子公告板经过例如因特网或万维网的网络分发。
虽然本发明已参照优选实施例进行了专门的显示和描述,但本领域的技术人员可理解,在不背离本发明精神和范围的情况下,可以进行形式和细节的多种改变。例如,本发明可以使用计算机编程软件、固件或硬件的任何组合实现。作为实施本发明或构成根据本发明的装置的准备步骤,根据本发明的计算机编程代码(不管是软件或固件)通常存储在诸如硬盘驱动器、磁盘、光盘、磁带、诸如ROM、PROM的半导体存储器等的一个或多个机器可读存储介质中,从而制造根据本发明的一项产品。通过直接从存储设备执行代码,或者将代码从存储设备复制到诸如硬盘、RAM等的另一个存储设备,或者通过发送代码用于远程执行,使用包括计算机编程代码的该项产品。通过将包括根据本发明的代码的一个或多个机器可读存储设备与适当的标准计算机硬件相结合以执行其中包含的代码,可以实现本发明的方法形式。用于实现本发明的装置可以是包含或具有网络访问根据本发明编码的计算机程序的一个或多个计算机和存储系统。虽然本发明采用实现本发明的目标的最优方式的形式进行了描述,但本领域的技术人员可知道,根据这些教导,可以实现多种改变,而不脱离本发明的精神或范围。
权利要求
1.一种数据处理系统网络中的方法,包括在接收方通过网络接收数据分段;根据与包括所述数据分段的数据分组的发送方之间的接口的速度,动态地设置所述数据分段的重组时间;以及如果在接收到所述数据分段后,所述数据分段保持是来自所述数据分组的分段的时间比所述重组时间长,则丢弃所述数据分段。
2.根据权利要求1所述的方法,其中,动态地设置重组时间的步骤包括如果包含所述数据分段的数据分组的发送方通过所述网络的已知的快速链路连接到所述接收方,则设置所述重组时间为第一时间;如果所述数据分组的发送方没有通过所述网络的已知的快速链路连接到所述接收方,则设置所述重组时间为第二时间。
3.根据权利要求2所述的方法,其中,所述第一时间比所述第二时间快。
4.根据权利要求2所述的方法,还包括在接收方存储所述第一时间和所述第二时间。
5.根据权利要求2所述的方法,其中,所述发送方通过多条链路连接到所述接收方,其中任何一条链路都是已知的快速链路。
6.根据权利要求2所述的方法,其中,当所述发送方在与所述数据分组的接收方相同的网络子网内时,所述数据分组的发送方通过所述网络的已知的快速链路连接到所述接收方。
7.根据权利要求1所述的方法,其中,所述数据分组是由IP层生成的IP分组。
8.一种数据处理系统,包括用于在接收方通过网络接收数据分段的装置;用于根据与包括所述数据分段的数据分组的发送方之间的接口的速度动态地设置所述数据分段的重组时间的装置;以及用于如果在接收到所述数据分段后,所述数据分段保持是来自所述数据分组的分段的时间比所述重组时间长,则丢弃所述数据分段的装置。
9.根据权利要求8所述的系统,其中,所述用于动态地设置重组时间的装置包括用于在包括所述数据分段的数据分组的发送方通过所述网络的已知的快速链路连接到所述接收方的情况下设置所述重组时间为第一时间的装置;用于在所述数据分组的发送方没有通过所述网络的已知的快速链路连接到所述接收方的情况下设置所述重组时间为第二时间的装置。
10.根据权利要求9所述的系统,其中,所述第一时间比所述第二时间快。
11.根据权利要求9所述的系统,还包括用于在接收方存储所述第一时间和所述第二时间的装置。
12.根据权利要求9所述的系统,其中,所述发送方通过多条链路连接到所述接收方,其中任何一条链路都是已知的快速链路。
13.根据权利要求9所述的系统,其中,当所述发送方在与所述数据分组的接收方相同的网络子网内时,所述数据分组的发送方通过所述网络的已知的快速链路连接到所述接收方。
14.根据权利要求8所述的系统,其中,所述数据分组是由IP层生成的IP分组。
15.一种产品,包括机器可读介质,其包括使数据处理系统中的控制电路执行以下步骤的嵌入式程序逻辑在接收方通过网络接收数据分段;根据与包括所述数据分段的数据分组的发送方之间的接口的速度,动态地设置所述数据分段的重组时间;以及如果在接收到所述数据分段后,所述数据分段保持是来自所述数据分组的分段的时间比所述重组时间长,则丢弃所述数据分段。
16.根据权利要求15所述的产品,其中,所述动态地设置重组时间的步骤包括如果包括所述数据分段的数据分组的发送方通过所述网络的已知的快速链路连接到所述接收方,则设置所述重组时间为第一时间;如果所述数据分组的发送方没有通过所述网络的已知的快速链路连接到所述接收方,则设置所述重组时间为第二时间。
17.根据权利要求16所述的产品,其中,所述第一时间比所述第二时间快。
18.根据权利要求16所述的产品,还包括在接收方存储所述第一时间和所述第二时间。
19.根据权利要求16所述的产品,其中,所述发送方通过多条链路连接到所述接收方,其中任何一条链路都是已知的快速链路。
20.根据权利要求16所述的产品,其中,当所述发送方在与所述数据分组的接收方相同的网络子网内时,所述数据分组的发送方通过所述网络的已知的快速链路连接到所述接收方。
21.根据权利要求15所述的产品,其中,所述数据分组是由IP层生成的IP分组。
全文摘要
在TCP/IP接收方中的重组计时器被动态地设置以避免由IP标识绕回引起的快速网络上的数据损坏。基于接收方和发送方是否在同一子网上,对于快速网络,接收方独立地将重组计时器设置为由用户设置的第一重组时间;或者对于慢速网络,将重组计时器设置为由用户设置的第二重组计时器。
文档编号H04L12/56GK1791063SQ20051011528
公开日2006年6月21日 申请日期2005年11月11日 优先权日2004年12月16日
发明者V·文卡塔苏布拉 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1