CN1906914A - 通信方法 - Google Patents

通信方法 Download PDF

Info

Publication number
CN1906914A
CN1906914A CN 200580001934 CN200580001934A CN1906914A CN 1906914 A CN1906914 A CN 1906914A CN 200580001934 CN200580001934 CN 200580001934 CN 200580001934 A CN200580001934 A CN 200580001934A CN 1906914 A CN1906914 A CN 1906914A
Authority
CN
China
Prior art keywords
node
grouping
path
stream
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 200580001934
Other languages
English (en)
Other versions
CN100579128C (zh
Inventor
中田恒夫
小野真裕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Publication of CN1906914A publication Critical patent/CN1906914A/zh
Application granted granted Critical
Publication of CN100579128C publication Critical patent/CN100579128C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

通过添加如下内容发送分组:第一标识符,唯一地表示与顺序控制有关的属于第一流组的各个流;在第一流组的各个流中唯一的第一序号;第二标识符,唯一地表示与重传控制有关的流;以及第二序号,用于在属于第二流组的各个流中的唯一表示。接收节点根据第二标识符和第二序号请求重传,并且发送节点重传分组。此外,在分组顺序控制中,接收节点根据第一标识符和第一序号执行分组顺序控制。

Description

通信方法
工业中的适用领域
本发明涉及其中存在流的两个节点之间的分组通信,并且更具体地说,涉及重传控制。
背景技术
在其中两个节点经因特网进行分组通信的情况下,出现分组丢失和分组顺序错误。作为处理分组丢失的方法,已经提议分组的重传方法的技术(例如专利文件1)。在专利文件1的技术中,流控制和传输分组的排序在发送节点和接收节点之间进行;但是,在由于分组丢失导致在接收节点等待序列出现的情况下,如果作为序列等待目标的分组没有在固定时间内接收到,则向发送节点报告请求重传作为序列等待目标的这个分组。
此外,在两个节点之间存在多个流的情况下,通过采用例如TCP(“传输控制协议”,rfc793)等对被假定为单元的各个流进行分组的重传和排序。
下面通过利用图19来解释根据先有技术的通过检测分组丢失完成排序和重传控制。图19显示在从流1、流2和流3三个流经一个路径发送分组的情况下分组丢失的检测。
根据图19,分别从流1接收分组1-1、分组1-2、分组1-3,从流2接收分组2-1、分组2-2、分组2-3、从流3接收分组3-1、分组3-2、分组3-3。另外,表示流的识别信息和各个流的分组的顺序(序号)附着到各个分组。例如,分组2-2表示它位于流2的第二顺序。
在将接收的分组发送到一个路径4时,从各个流一个接一个顺序地选择分组,并将其发送到路径4。也就是说,分组按分组1-1、分组2-1、分组3-1.....分组1-3、分组2-3、分组3-3的次序被传送到路径。在接收侧上,根据分组的识别信息,将从路径4接收的分组再按照一个流一个流的次序进行排序,并且检测丢失的分组,由此请求重传(再生控制)。
专利文件1:JP-P1997-46375A
发明内容
本发明要解决的问题
但是,先有技术具有这样的问题,分组丢失的检测被延迟,因为分组丢失的检测在进行排序的同时进行,而不是许多分组的传输/接收之时。
例如,在图19所示的先有技术中,在认为路径4上出现的分组2-2丢失时,它按照接收侧以分组1-1、分组2-1、分组3-1、...、分组1-3、分组2-3、分组3-3的次序接收分组,因为它以发送顺序接收分组。丢失的分组是分组2-2,因此紧挨着分组1-2接收的分组是分组3-2。
在这时,不可能检测分组2-2丢失,并且只是在属于与丢失的分组2-2同一个流的下一个分组2-3被收到并且排序以检测分组2-1和分组2-3之后,才能检测分组2-2的丢失。也就是说,在图19的实例中,分组2-2的丢失只是在等待作为丢失分组2-2后面三个分组的分组2-3的接收和排序以后才能够检测到。
因此,本发明在考虑到以上问题的情况下实现,并且本发明的目的是解决上述问题并且提供一种技术,用于允许丢失分组在与传统的按流的重传控制相比较早的阶段被检测。
此外,本发明的目的是解决上述问题并且提供一种技术,用于允许丢失分组在与传统的分组丢失检测相比较早的阶段被检测。
此外,本发明的目的是提供一种技术,用于通过除了用于排序的识别信息,还向分组附加用于分组的丢失检测和再生控制的识别信息,从而允许分组在较早的阶段被检测用于控制重传,由此独立地实现排序、分组丢失的检测以及再生控制。
解决问题的方式
用于解决以上问题的第一发明是在发送节点和接收节点之间的通信方法,其特征在于:
发送节点根据与排序有关的第一准则提供具有一个流或者更多流的第一流组,并且根据与重传控制有关的第二准则提供具有一个流或者更多流的第二流组,为属于所述第一流组的各个流指定第一标识符,所述第一标识符是唯一的,并且为属于所述第二流组的各个流指定第二标识符,所述第二标识符是唯一的;以及
发送节点将输入的分组根据所述第一准则分类为属于所述第一流组的一个流或更多流,又根据所述第二准则将它们分类为属于所述第二流组的一个流或更多流,向所述分组附加所述第一标识符、第一序号,所述第一序号在用所述第一标识符指定的流中是唯一的,向所述分组附加所述第二标识符、第二序号,所述第二序号在用所述第二标识符指定的流中是唯一的,并且发送它们;
接收节点根据所述第二标识符对所有收到的分组进行分类,检查各个第二流中没有收到的具有所述第二序号的分组,并且请求发送节点重传;
发送节点重传接收节点请求的第二流中具有第二序号的分组;以及
接收节点根据所述第一标识符对所有收到的分组进行分类,根据所述第一序号对各个第一流中的分组排序,并且以排序顺序对排序后的分组执行接收处理。
用于解决上述问题的第二发明的特征在于,在上述第一发明中,发送节点和接收节点经一个通信路径连接,发送节点的第二流组配置为单个流,并且通过利用单个通信路径发送分组。
用于解决上述问题的第三发明的特征在于,在上述第一发明中,在存在多个用于发送分组的通信路径的情况下,发送节点根据与分组传输的调度有关的第三准则选择用于发送分组的通信路径。
用于解决上述问题的第四发明的特征在于,在上述第三发明中,发送节点和接收节点经多个通信路径连接,并且发送节点将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题的第五发明的特征在于,在上述第三发明中,发送节点和接收节点经多个通信路径连接,并且发送节点将分组分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题第六发明的特征在于,在上述第一发明到第三发明之一中,发送节点是用于传送其它通信节点发送的分组的发送侧传送节点,并且接收节点是用于传送其它通信节点接收的分组的接收侧传送节点。
用于解决上述问题的第七发明的特征在于,在上述第六发明中,发送节点和接收节点经一个通信路径连接,发送节点的第二流组配置为单个流,并且分组通过利用单个通信路径发送。
用于解决上述问题的第八发明的特征在于,在上述第六发明中,发送节点和接收节点经多个通信路径连接,并且发送节点将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题的第九发明的特征在于,在上述第六发明中,发送节点和接收节点经多个通信路径连接,并且发送节点将分组分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题的第十发明的特征在于,在上述第三发明中,根据各个路径的可选择路径状态信息,所述路径状态信息变成可用的时间或者已发送分组的识别信息,以及自所述路径状态信息变成可用之时以来的传输历史或者自用已发送分组的识别信息指定的分组的传输以来的传输历史,路径的选择或者路径的选择优先权的决策对输入的各个分组在发送节点做出,作为发送节点的第三准则。
用于解决上述问题第十一发明的特征在于,在上述第十发明中,所述路径状态信息包括路径的延迟。
用于解决上述问题的第十二发明的特征在于,在上述第十发明到第十一发明之一中,所述路径状态信息包括路径的通信速度。
用于解决上述问题的第十三发明的特征在于,在上述第十发明到第十二发明之一中,所述路径状态信息包括路径的负荷。
用于解决上述问题的第十四发明的特征在于,在上述第十发明到第十三发明之一中,在选择路径或者更新选择优先权中,在更新各个路径的路径状态信息后,对与在更新之前发送的分组有关的传输成本的计算结果进行修改。
用于解决上述问题的第十五发明的特征在于,在上述第十发明到第十四发明之一中,在修改各个路径的传输成本的计算结果中,销毁在最近的路径状态信息变成可用的第一已经发送分组之前的历史。
用于解决上述问题的第十六发明的特征在于,在上述第十发明到第十五发明之一中,其在接收侧节点中接收完成时间的推论值为最早的路径被选为用于发送分组的路径。
用于解决上述问题的第十七发明的特征在于,在上述第十发明到第十六发明之一中,接收侧节点中直到一个特定时间能够完成接收的数据量的的推论值为最大的路径被选为用于发送分组的路径。
用于解决上述问题的第十八发明的特征在于,在上述第十发明到第十七发明之一中,响应于为各个路径推论的当前路径状态,中断数据传输。
用于解决上述问题的第十九发明的特征在于,在上述第十八发明中,中断所述数据传输的准则是推论的接收完成时间是特定值或者大于特定值。
用于解决上述问题的第二十发明的特征在于,在上述第十发明到第十九发明之一中,根据在传输数据的各个属性都不同的策略进行路径选择或者传输中断的判断。
用于解决上述问题的第二十一发明是一种节点,所述节点配置了发送部分,用于发送分组;以及接收部分,用于接收分组,并且独立地进行分组的重传控制和排序,其特征在于:
所述发送部分包括:
用于向传输分组附加第一标识符和第一序号、以及第二标识符和第二序号并且发送所述分组的部件,所述第一标识符根据与排序有关的第一准则以一对一的方式指定给第一流组的各个流,所述第一序号在属于所述第一流组的各个流中是唯一的,所述第二标识符根据与重传控制有关的第二准则以一对一的方式指定给第二流组的各个流,所述第二序号在属于所述第二流组的各个流中是唯一的;以及
用于根据所述第二标识符和第二序号指定由接收了分组的节点请求重传的分组以便重传它的分组的部件;而且
所述接收部分包括:
用于根据所述第二标识符对所有收到的分组进行分类的部件,以对各个第二流检查没有收到的具有第二序号的分组,以便将它的第二标识符和第二序号重传到发送了所述分组的节点,并且请求重传该分组;以及
用于根据所述第一标识符对所有收到的分组进行分类的部件,以便根据所述第一序号对各个第一流中的分组排序,从而以排序顺序对排序后的分组执行接收处理。
用于解决上述问题的第二十二发明的特征在于,在上述第二十一发明中,各个节点经一个通信路径连接到其它节点,所述第二流组配置为单个流,并且通过利用单个通信路径发送所述分组。
用于解决上述问题的第二十三发明的特征在于,在上述第二十一发明中,在存在多个用于发送分组的通信路径的情况下,包括用于根据与分组传输的调度有关的第三准则选择用于发送分组的通信路径的部件。
用于解决上述问题的第二十四发明的特征在于,在上述第二十三发明中,每一节点经多个通信路径连接到其它节点,并且将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题的第二十五发明的特征在于,在上述第二十三发明中,每一节点经多个通信路径连接到其它节点,并且分组被分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题第二十六发明的特征在于,在上述第二十一发明到第二十三发明之一中,所述节点的发送部分是用于传送其它通信节点发送的分组的发送侧传送节点,并且所述节点的接收部分是用于传送其它通信节点接收的分组的接收侧传送节点。
用于解决上述问题的第二十七发明的特征在于,在上述第二十六发明中,各个节点经一个通信路径连接到其它节点,所述第二流组配置为单个流,并且通过利用单个通信路径发送分组。
用于解决上述问题的第二十八发明的特征在于,在上述第二十六发明中,每一节点经多个通信路径连接到其它节点,并且将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题的第二十九发明的特征在于,在上述第二十六发明中,每一节点经多个通信路径连接到其它节点,并且分组被分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题的第三十发明的特征在于,在上述第二十三发明中,所述用于选择通信路径的部件根据各个路径的可选择的路径状态信息、所述路径状态信息变成可用的时间或者已发送分组的识别信息、以及自所述路径状态信息变成可用之时以来的传输历史或者自用已发送分组的识别信息指定的分组的传输以来的传输历史,对要输入的各个分组在节点进行路径的选择或者选择优先权的决策,作为第三准则。
用于解决上述问题的第三十一发明的特征在于,在上述第三十发明中,所述路径状态信息包括路径的延迟。
用于解决上述问题的第三十二发明的特征在于,在上述第三十一发明中,所述路径状态信息包括路径的通信速度。
用于解决上述问题的第三十三发明的特征在于,在上述第三十发明到上述第三十二发明之一中,所述路径状态信息包括路径的负荷。
用于解决上述问题的第三十四发明的特征在于,在上述第三十发明到第三十三发明之一中,在选择路径或者更新选择优先权中,在更新各个路径的路径状态信息后,所述用于选择通信路径的部件对与在更新之前发送的分组有关的传输成本的计算结果进行修改。
用于解决上述问题的第三十五发明的特征在于,在上述第三十发明到第三十四发明之一中,在修改各个路径的传输成本的计算结果中,所述用于选择通信路径的部件销毁在最近的路径状态信息变成可用的第一已发送分组之前的历史。
用于解决上述的问题的第三十六发明的特征在于,在上述的第三十发明到第三十五发明之一中,所述用于选择通信路径的部件选择在接收侧节点中接收完成时间的推论值为最早的路径作为用于发送分组的路径。
用于解决上述的问题的第三十七发明的特征在于,在上述的第三十发明到第三十六发明之一中,所述用于选择通信路径的部件选择在接收侧节点中到一个特定时间能够完成的接收的数据量的推论值为最大的路径作为用于发送分组的路径。
用于解决上述问题的第三十八发明的特征在于,在上述第三十发明到第三十七发明之一中,所述用于选择通信路径的部件响应于为各个路径推论的当前路径状态而中断数据传输。
用于解决上述问题的第三十九发明的特征在于,在上述第三十八发明中,中断所述数据传输的准则是推论的接收完成时间是特定值或者大于特定值。
用于解决上述问题的第四十发明的特征在于,在上述第三十发明到第三十九发明之一中,所述用于选择通信路径的部件根据对传输数据的各个属性都不同的策略,进行路径选择或者传输中断的判断。
用于解决上述的问题的第四十一发明是一种用于节点的控制程序,所述节点独立地进行分组的重传控制和排序,其特征在于,所述控制程序使所述节点具有如下功能:
用于向传输分组附加第一标识符和第一序号以及第二标识符和第二序号并且发送所述分组的部件,所述第一标识符根据与排序有关的第一准则以一对一的方式指定给第一流组的各个流,所述第一序号在属于所述第一流组的各个流中是唯一的,所述第二标识符根据与重传控制有关的第二准则以一对一的方式指定给第二流组的各个流,所述第二序号在属于所述第二流组的各个流中是唯一的;
用于根据所述第二标识符和第二序号指定由接收了所述分组的节点请求重传的分组以便重传它的分组的部件;
用于根据所述第二标识符对所有收到的分组进行分类的部件,以对各个第二流检查没有收到的具有第二序号的分组,以便将它的第二标识符和第二序号发送到发送了所述分组的节点,并且请求重传该分组;以及
用于根据所述第一标识符对所有收到的分组进行分类的部件,以便根据所述第一序号对各个第一流中的分组排序,从而以排序顺序对排序后的分组执行接收处理。
用于解决上述问题的第四十二发明的特征在于,在上述第四十一发明中,各个节点经一个通信路径连接到其它节点,所述第二流组配置为单个流,并且通过利用单个通信路径发送分组。
用于解决上述的问题的第四十三发明的特征在于,在上述的第四十一发明中,在存在多个用于发送分组的通信路径的情况下,所述控制程序使所述节点用作根据与分组传输的调度有关的第三准则选择用于发送分组的通信路径的部件。
用于解决上述问题的第四十四发明的特征在于,在上述的第四十三发明中,每一节点经多个通信路径连接到其它节点,并且将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题的第四十五发明的特征在于,在上述第四十三发明中,每一节点经多个通信路径连接到其它节点,并且分组被分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述的问题的第四十六发明的特征在于,在上述的四十一发明和四十三发明之一中,所述节点的发送部分是用于传送其它通信节点发送的分组的发送侧传送节点,开且所述节点的接收部分是用于传送其它通信节点接收的分组的接收侧传送节点。
用于解决上述问题的第四十七发明的特征在于,在上述第四十六发明中,各个节点经一个通信路径连接到其它节点,所述第二流组配置为单个流,并且通过利用单个通信路径发送分组。
用于解决上述问题的第四十八发明的特征在于,在上述的第四十六发明中,每一节点经多个通信路径连接到其它节点,并且将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题的第四十九发明的特征在于,在上述第四十六发明中,每一节点经多个通信路径连接到其它节点,并且分组被分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
用于解决上述问题的五十发明的特征在于,在上述第四十三发明中,所述控制程序使所述用于选择通信路径的部件根据各个路径的可选择路径状态信息、所述路径状态信息变成可用的时间或者已发送分组的识别信息、以及自所述路径状态信息变成可用之时以来的传输历史或者自用已发送分组的识别信息指定的分组的传输以来的传输历史,对要输入的各个分组在节点进行路径的选择或者选择优先权的决策。
用于解决上述问题的五十一发明的特征在于,在上述第五十发明中,所述路径状态信息包括路径的延迟。
用于解决上述的问题的第五十二发明的特征在于,在上述的第五十发明到第五十一发明之一中,所述路径状态信息包括路径的通信速度。
用于解决上述问题的第五十三发明的特征在于,在上述第五十发明到第五十二发明之一中,所述路径状态信息包括路径的负荷。
用于解决上述问题的第五十四发明的特征在于,在上述第五十发明到第五十三发明之一中,在选择路径或者更新选择优先权中,在更新各个路径的路径状态信息后,所述控制程序使所述用于选择通信路径的部件用于对与在更新之前发送的分组有关的传输成本的计算结果进行修改。
用于解决上述问题的第五十五发明的特征在于,在上述第五十四发明中,所述控制程序使所述用于选择通信路径的部件用于在修改各个路径的传输成本的计算结果中,销毁在最近的路径状态信息变成可用的第一已发送分组之前的历史。
用于解决上述的问题的第五十六发明的特征在于,在上述的第五十发明到第五十五发明之一中,所述控制程序使所述用于选择通信路径的部件用于选择在接收侧节点中接收完成时间的推论值为最早的路径作为用于发送分组的路径。
用于解决上述的问题的第五十七发明的特征在于,在上述的第五十发明到第五十六发明之一中,所述控制程序使所述用于选择通信路径的部件用于选择在接收侧节点中到一个特定时间能够完成的接收的数据量的推论值为最大的路径作为用于发送分组的路径。
用于解决上述问题的第五十八发明的特征在于,在上述第五十发明到第五十七发明之一中,所述控制程序使所述用于选择通信路径的部件用于响应于推论的当前路径状态而中断数据传输。
用于解决上述问题的第五十九发明的特征在于,在上述第五十八发明中,中断所述数据传输的准则是推论的接收完成时间是特定值或者大于特定值。
用于解决上述问题的第六十发明的特征在于,在上述第五十发明到第五十九发明之一中,所述控制程序使所述用于选择通信路径的部件用于根据对传输数据的各个属性都不同的策略,进行路径选择或者传输中断的判断。
用于解决上述问题的第六十一发明是一种通信方法,其特征在于,除了用于排序的信息之外,还向传输分组附加用于识别传输流的标识符和所述传输流中的序号,从而根据所述标识符和所述序号在接收侧上逐个传输流地进行重传控制。
用于解决上述问题的第六十二发明是一种通信方法,其特征在于,除了用于排序的信息之外,还向传输分组附加用于识别传输流的标识符和所述传输流中的序号,从而根据所述标识符和所述序号在接收侧上逐个传输流地检测分组的丢失。
用于解决上述问题的六十三发明是一种节点,其特征在于,包括:
用于向分组附加第一标识符和第一序号、以及第二标识符和第二序号并且发送所述分组的部件,所述第一标识符根据与排序有关的第一准则以一对一的方式指定给第一流组的各个流,所述第一序号在属于所述第一流组的各个流中是唯一的,所述第二标识符根据与重传控制有关的第二准则以一对一的方式指定给第二流组的各个流,所述第二序号在属于所述第二流组的各个流中是唯一的;以及
用于根据所述第二标识符和第二序号重传逐个传输流地检测的丢失分组的部件。
用于解决上述问题的六十四发明是一种节点的控制程序,其特征在于,所述控制程序使所述节点用作:
用于向分组附加第一标识符和第一序号、以及第二标识符和第二序号并且发送所述分组的部件,所述第一标识符根据与排序有关的第一准则以一对一的方式指定给第一流组的各个流,所述第一序号在属于所述第一流组的各个流中是唯一的,所述第二标识符根据与重传控制有关的第二准则以一对一的方式指定给第二流组的各个流,所述第二序号在属于所述第二流组的各个流中是唯一的;以及
用于根据所述第二标识符和第二序号重传逐个传输流地检测的丢失分组的部件。
在本发明中,除了用于排序的标识符之外,还将用于重传控制的标识符附加到要发送的分组,根据用于排序的标识符进行排序,并且根据用于重传控制的标识符进行分组丢失的检测和再生控制。用于重传控制的标识符配置了按重传的流的标识符,并且还提供了诸如用于允许分组在它的流中以一对一的方式指定的序号的识别信息。通常,流的重传和进行接收/发送的路径之间的关系是一对一的;但是,并不必限于此。
将利用图15解释上述本发明的概况。
在图15中,给出了在发送侧和接收侧之间经一个路径a发送/接收分组的实例。
用于识别流的排序的第一标识符以及在各个流中是唯一的第一序号在发送侧上附加到各个流的分组上。例如,对于流1的第二分组,向其附加“1-2”。
此外,在本发明中,除了这个用于排序的标识符,还附加用于识别流的重传控制的第二标识符以及在各个流中是唯一的第二序号。在此处,发送流和路径之间的关系是一对一的,借此用于识别重传流的标识符假定为“a”,并且将序号附加到分组以便它能够以一对一的方式在用此″a″识别的流(路径a)中被指定。因此,用于用“a”识别的流(路径a)中第一分组的重传控制的标识符是“a-1”。
发送侧将上述标识符附加到分组,并从各个流一个接一个地顺序地选择分组,并且将它们发送到路径a。也就是说,分组按分组(1-1,a-1)、分组(2-1,a-2),...,分组(3-3,a-9)(用于排序的标识符、用于重传控制的标识符)的次序发送。另一方面,发送分组作为重传队列保持。
在此处,假定分组(2-2,a-5)的丢失出现在路径a上。
在接收侧上,以发送顺序接收分组,因此它们按分组(1-1,a-1)、分组(2-1,a-2),...,分组(1-2,a-4)、分组(3-2,a-6),...,以及分组(3-3,a-9)的顺序接收。
在此处,在本发明中,分组丢失的检测以及重传控制根据用于重传控制的标识符进行。在此实例中,确认用于从路径a接收的分组的重传控制的标识符证明它们是“a-4”、“a-6”、...、和“a-9”,借此知道“a-5”在接收分组(3-2,a-6)的时间点丢失。因此,了解具有用于重传控制的“a5”标识符的分组(2-2,a-5)丢失,并且向发送侧请求重传此分组(2-2,a-5)。在发送侧上,在接收到重传具有用于重传控制的标识符“a-5”的分组的请求之后,它重传保持在重传队列中的具有用于重传控制的标识符″a-5″的分组。
另一方面,独立于上述分组丢失和重传控制,根据排序标识符进行排序,并且不请求由于分组丢失的重传。
用这种方式,本发明有可能在接收分组(3-2,a-6)的时间点检测分组(2-2,a-5)的丢失,以在与先有技术相比较较早的阶段检测分组丢失,并且因为同时独立地进行重传控制,因此进一步防止伴随分组丢失排序的延迟。
另外,对于重传控制的分组丢失的检测,除了其中如上所述在接收侧上进行分组丢失的检测的情况之外,例如,可接受的是接收侧向发送侧发送已经到达的分组的信息,并且发送侧根据此信息检测分组丢失。
发明效果
在本发明中,独立地进行排序和重传控制并且为单元分配重传ID,用于允许分组丢失在较早的阶段被检测,在分组通信中,与按流进行的伴随传统排序的重传控制相比,有可能在较早的阶段检测所述分组。
此外,根据本发明,同样在按流的排序中,获得了如下效果,没有由于其它流的分组丢失导致某一流的分组浪费的等待时间,由此允许传送分组。
同样,在本发明中,用于发送和重传控制的路径彼此独立,因此,没有作为整体系统同样在其中某一路径通信失败的情况下出现的问题。
附图说明
[图1]图1是说明在发送节点和接收节点之间的路径数量为1的情况下通信网络配置的简图。
[图2]图2是说明发送节点或接收节点的配置的简图。
[图3]图3是说明分组配置的简图。
[图4]图4是说明第一实施例中存储器部分保存的信息的简图。
[图5]图5是说明在发送节点和接收节点之间的路径数量为N的情况下通信网络配置的简图。
[图6]图6是说明发送节点或接收节点的配置的简图。
[图7]图7是说明第二实施例中存储器部分保存的信息的简图。
[图8]图8是判定重传ID的相同的通信接口/组的算法流程图。
[图9]图9是说明第三实施例中存储器部分保存的信息的简图。
[图10]图10是说明在发送侧传送节点和接收侧传送节点之间的路径数量为M的情况下通信网络配置的简图。
[图11]图11是说明调度器的操作实例1中,在发送侧节点和接收侧节点中分组处理定时的简图。
[图12]图12是调度器的操作实例1中,调度部分的操作流程图。
[图13]图13是说明调度器的操作实例2中,在发送侧节点和接收侧节点中分组处理定时的简图。
[图14]图14是调度器的操作实例2中调度部分的操作流程图。
[图15]图15是用于解释本发明的简图。
[图16]图16是用于解释本发明的实施例1的操作的简图。
[图17]图17是用于解释本发明的实施例1的特定操作的简图。
[图18]图18是说明在调度器的操作实例1中,发送侧节点和接收侧节点的分组处理定时的特定实例的简图。
[图19]图19是用于解释先有技术的简图。
附图标记的描述
101发送节点
102接收节点
110路径
201套接口
202输入/输出部分
211和222流识别部分
212和224按流队列
213调度器
214重传控制部分
215重传队列
216存储器部分
221重传ID序列检验部分
223流序列检验部分
301发送节点
302接收节点
312-1到M路径
401套接口
402-1到M输入/输出部分
411和422流识别部分
412和424按流队列
413调度器
414重传控制部分
415重传队列
416存储器部分
421重传ID序列检验部分
423流序列检验部分
501-1到L发送节点
502发送侧传送节点
503接收侧传送节点
504-1到N接收节点
511-1到L路径
512-1到M路径
513-1到N路径
600-1,2,3数据分组
实现本发明的最佳模式
本发明的特征在于,在分组通信中独立地进行排序和重传控制。
对此,发送节点根据与排序有关的第一准则提供具有一个流或者更多流的第一流组,以及根据与重传控制有关的第二准则提供具有一个流或者更多流的第二流组,并且为属于第一流组的各个流指定唯一的第一标识符,以及为属于第二流组的各个流指定唯一的第二标识符。并且,发送节点根据第一准则将要发送的分组分类为属于第一流组的一个流或更多流,又根据第二准则将它们分类为属于第二流组的一个流或更多流,向传输分组附加第一标识符、第一序号、第二标识符和第二序号,其中第一序号在属于第一流组的各个流中是唯一的,并且第二序号在属于第二流组的各个流中是唯一的,并且发送分组。
接收节点根据所述第二标识符对所有收到的分组进行分类,检查各个第二流中没有收到的具有第二序号的分组,并且响应于第二序号请求重传没有收到的分组。并且,发送节点响应于第二流的第二序号重传接收节点请求的分组,并且由此进行重传控制。
此外,接收节点根据所述第一标识符对所有收到的分组进行分类,并且根据第一序号对各个第一流的分组排序,并且以排序顺序对排序后的分组执行接收处理,由此进行分组排序。
在下文中,将对特定实施例进行解释。
实施例1
下面将解释本发明的实施例1。
在实施例1中,将解释其中发送节点和接收节点经一个路径连接的情况。
参考图1,本发明的实施例1由发送节点101、接收节点102以及用于在节点之间连接的路径110组成。路径110是诸如因特网的分组通信网络。另外,能够考虑从发送节点101到接收节点102的通信以及从接收节点102到发送节点101的通信。为便利说明,节点分别命名为发送/接收节点;但是它们的功能相同。
下面,将解释发送节点101的配置。
图2是说明发送节点101的配置的简图。
参考图2,发送节点101由作为具有应用的API(应用编程接口)的套接口201、输入/接收部分202、用于根据将使用的端口号和向它们分配相应队列的目的地的地址/端口号而识别流的流识别部分211、用于根据向它们分配相应队列的流ID而识别流的流识别部分222、用于按识别的流保持分组的按流队列212和224、用于从按流队列212的分组选择要发送的分组来发送的调度器213、用于在发送分组时向分组附加重传ID并且用于使重传队列215按重传ID保持以准备重传的重传控制部分214、用于按重传ID保持分组的重传队列215、具有按路径的诸如延迟的信息或者按流或者按记录的重传ID的延迟偏移和序号信息的存储器部分216、用于在接收分组时检验分组的重传ID以便检验分组是否以预期顺序到达的重传ID序列检验部分221、以及用于检验按流的队列224以便传送按流的队列224的分组中的排序分组的流序列检验部分223。
另外,接收节点102的配置与发送节点101的配置一样。
在下文中,将解释从发送节点101发送分组到接收节点102的情况下的操作实例。
发送节点以任意数量的应用产生运用任意数量的TCP和UDP的通信。在此处,所谓的第一准则是与分组的排序有关的准则,并且TCP和UDP的各个通信相当于第一流。
当套接口201从应用接收传递给流识别部分211的分组时,流识别部分211根据它自己的节点和分组的目的地地址/端口号识别它的流。识别的分组按流保存在按流队列212中。
在图2中,显示了具有七十个流的按流队列的实例;但是不局限这个数量并且多或少都没有关系。在丢失分组时由调度器213和重传控制部分214对按流队列212中保存的分组进行重传所需的处理之后,这些分组经输入/输出部分202传送到接收节点102,并且还保持在重传队列215中用于处理分组丢失。
接下来,将解释调度器213和重传控制部分214的操作。
调度器213设置要发送分组的发送时间,从按流队列212决定在发送定时时,将分组发送到接收节点102的队列,并且从相应队列提取分组。提取的分组被传递给重传控制部分214以便处理重传所需的处理。
重传控制部分214利用不同于第一准则的第二准则进行重传控制,第一准则是与上述分组传输有关的准则。在本文中,所谓的第二准则是与分组的重传有关的准则。具体地说,重传控制部分214通过参考存储器部分216判定要附加到传输分组的重传ID和重传序号,并且将分组编入重传队列215的预定队列中。第二流相当于此重传ID假定为单元的一个分组组。此外,在本文中,第二流一对一地对应于路径。
重传控制部分214向调度器213通知判定的重传ID和重传序号,并且调度器213附加通知的重传ID和重传序号(用于重传控制的第二标识符、以及第二序号)、从存储器部分216获取的按流以一对一的方式分配的流ID、以及在流中是唯一的流序号(用于排序的第一标识符和第一序号)作为原始标题,并且通过利用输入/输出部分202发送分组到接收节点102。
为了执行以上操作,存储器部分216保存信息,例如如图4所示。在图4中,描述了其中已传送分组的流ID(用于排序的第一标识符)和最大流序号(第一序号)、用于重传控制的重传ID(第二标识符)以及已到达分组的重传序号(第二序号)作为用于传输的信息保存的情况。例如,对于流ID“1”,已传送的分组的最大流顺序是“25”。此外,还图示了对于重传ID“1”,已到达分组的重传序号是“1到200和203”。此外,在已到达分组的重传序号中,没有图示的序号“201和202”是没有确认的分组的序号。
以上描述是调度器213和重传控制部分214的操作。这时的传输分组格式如图3所示。
下面将解释接收节点102。在以下的说明中,将解释这样一种情况,其中接收节点102接收从发送节点101的输入/输出部分202经输入/输出部分202发送的分组。另外,本发明适用于其中它是数据接收侧上判定出现分组丢失的节点的情况,或者其中它是数据发送侧上判定出现分组丢失的节点的情况;但是,在本文中给出的情况是,数据接收侧仅仅发送ACK用于传达到达确认并且发送侧用任意的准则确定发生分组丢失。此外,在本发明中,发送节点101和接收节点102具有相同的配置,因此将利用图2解释接收节点102的操作实例。
从输入输出部分202接收的分组输入到重传ID序列检验部分221中。
当重传ID序列检验部分221确认它是数据分组时,它从分组获取重传ID和重传序号,并且传递由接收分组的重传ID和接收分组的重传序号组成的ACK信息到调度器213。
接收到ACK信息的调度器213经输入/输出部分202发送包括传递的ACK信息的ACK分组,以便通知发送节点101收到了分组。在其中在发送ACK分组时存在其它传输数据分组的情况下,调度器213还可以附加信息到数据分组的标题部分,并不产生独立ACK分组。
此外,重传ID序列检验部分221通知存储器部分216接收分组的重传ID的重传序号信息,更新保存在存储器部分216中的重传序号信息,并且由此完成重传控制过程。在完成重传控制过程之后,重传ID序列检验部分221向流识别部分222提供接收的分组,并且由此执行排序过程。
在排序过程中,流识别部分222从重传ID序列检验部分221提供的分组获取流ID,并且根据流ID发送分组到按流队列224的对应队列。在图2中,给出具有100个不同的流的按流队列的配置实例。
此外,同时地,流识别部分连同流ID一起,通知流序列检验部分223重新接收到分组。流序列检验部分223从存储器部分216获取具有对应流ID的已发送的最大流序号。
接下来,流序列检验部分223响应于输入的流ID检验队列。作为检验结果,如果连续分组的最大流序号存在于已传送分组的最大流序号中,则流序列检验部分223提取此连续分组,删除图3所示的帧格式中的流ID、流序号、重传ID以及重传序号,并且经套接部分201将它们传递到应用。另一方面,如果连续分组的最大流序号不存在于已传送分组的最大流序号中,则流序列检验部分223结束操作。
随后的操作类似于上述发送节点的操作。
下面将解释从接收节点接收到ACK信息的发送节点。
当发送节点101从输入/输出部分202接收来自接收节点102的包括ACK信息的分组时,它提取重传ID序列检验部分221中的ACK信息。接下来,它从ACK信息获取接收节点102收到的重传ID和重传序号,在存储器部分216中存储此重传ID和重传序号作为已确认到达的分组,并且从按重传ID队列215删除对应于它的重传ID和重传序号的分组。
此外,发送节点101定期地检验存储的已到达的重传ID和重传序号,并且检测遗漏的重传序号。并且,它将对应于遗漏重传ID和重传序号的分组视为丢失分组,从重传ID队列215提取对应于遗漏重传ID和重传序号的分组,将分组传递到调度器213、并且通知它需要重传。调度器213重传传递的分组。此外,这时,它向重传分组附加与附加到之前发送的分组的重传ID和重传序号一致的重传ID和重传序号,并且重传该分组。
接下来,将通过参考附图解释以上操作的特定实例。
图16是用于解释发送节点101和接收节点102之间特定操作的简图。此外,在以下说明中,为了给出特定操作实例,利用图2所示配置以及图4所示用于重传的信息进行说明。
首先,发送节点101的调度器213从按流队列212的70个流一个接一个地提取分组,并且重传控制部分214通过参考存储器部分216向传输分组附加重传ID和重传序号。例如,如果重传ID是“1”并且重传序号是“200”,则传输分组附加上例如“1-200”的编号。并且,附加上此重传ID和重传序号的分组经输入/输出部分202发送到接收节点102,并且还保持在重传队列215中用于处理分组丢失。
在图16的实例中,流ID和流序号附加到一个分组的前半部分,并且重传ID和重传序号附加到该分组的后半部分。在图16中,分组在路径上发送的顺序为,分组(11-54,1-200)、分组(12-87,1-201)、分组(13-7,1-202)、分组(14-24,1-203),...。此外,对于分组(m-n,x-y),m表示流ID,n表示流序号,x表示重传ID,以及y表示重传序号。
现在考虑其中分组(12-87,1-201)和分组(13-7,1-202)在这种情况下丢失的情况。
在接收节点侧上,分组(11-54,1-200)、分组(14-24,1-203),...从输入/输出部分202接收,并且输入到重传ID序列检验部分221中。当重传ID序列检验部分221确认它是数据分组时,它分别以“1-200”和“1-203”的方式获取重传ID和重传序号,并且传递由所接收分组的此重传ID和重传序号组成的ACK信息到调度器213。
为了通知发送节点101分组已收到,接收到ACK信息的调度器213经输入/输出部分202发送包括传递的ACK信息的ACK分组。
此外,重传ID序列检验部分221通知存储器部分216接收分组的重传ID的重传序号,并且更新保存在存储器部分216中的已接收分组的重传序号,并且由此完成重传控制过程。在完成重传控制过程之后,重传ID序列检验部分221向流识别部分222提供接收的分组,并且由此执行排序过程。
在排序过程中,流识别部分222从重传ID序列检验部分221提供的分组获取流ID“11”,...,流ID“14”、流ID“1”,并且根据流ID发送分组到按流队列224的对应队列。在图16中,显示的情况为,接收分组(14-24)被传送到流14,分组(11-54)被传送到流11并且分组(1-23)被传送到流1。
另一方面,当发送节点101从输入/输出部分202接收来自接收节点102的包括ACK信息的分组时,它在重传ID序列检验部分221提取ACK信息。
接下来,发送节点101从ACK信息获取接收节点102收到的重传ID和重传序号,在存储器部分216中存储此重传ID和重传序号作为已确认到达的分组,并且从按重传ID队列215删除对应于它的重传ID和重传序号的分组。
例如,在其中发送节点101获取确认信息“1-200”和“1-203”的情况下,它在用于发送的信息的重传ID“1”中添加“200”和“203”到已到达分组的重传序号,并且从按重传ID队列215删除重传序号是“200”和“203”的分组。
此外,重传控制部分214在每个恒定间隔检验已到达的重传ID和重传序号,并且检测遗漏的重传序号。在图16的实例中,重传序号“201”和“202”丢失。因此,重传控制部分214将对应于遗漏重传序号“201”和“202”分别视为丢失分组,从重传ID队列215提取对应于遗漏重传序号“201”和“202”的分组,将分组传递到调度器213、并且通知它需要重传。调度器213重传传递的分组。此外,这时,它向传输分组附加在之前发送分组上附加的重传ID和重传序号,即“1-201”和“1-202”,并且重传它们。
以上操作允许在初期阶段找出丢失的分组,由此有可能在较短的时间在接收节点102和发送节点101之间进行数据发送/接收。
接下来,将描述在接收侧节点102中检测分组丢失的情况。
图17是用于解释在接收侧节点102中检测分组丢失的情况的简图。此外,图4所示的接收信息用作用于在接收侧节点102中检测分组丢失的信息。并且,在分组从发送侧节点到达接收侧节点的时间期间执行的操作类似于上述操作,因此具体说明从略。
在图17中,分组在路径上发送的顺序为,分组(11-54,1-100)、分组(12-87,1-101)、分组(13-7,1-102)、分组(14-24,1103),...。在本文中,考虑其中分组(12-87,1-101)丢失的情况。
在接收节点侧上,分组(11-54,1-100)、分组(13-7,1-102)、分组(14-24,1-103)、...从输入/输出部分202接收,并且输入到重传ID序列检验部分221中。当重传ID序列检验部分221确认它们中的每一个是数据分组时,它以“1-100”和“1-102”的方式从分组获取重传ID和重传序号,并且通过对此重传ID和重传序号与保存在存储器部分216的用于接收的信息中的已接收分组的重传ID和重传序号,确定预期要收到的分组是否已经收到。
作为判断结果,在其中它是预期分组的情况下,重传ID序列检验部分221传递由接收分组的重传ID和接收分组的重传序号组成的ACK信息到调度器213。另一方面,在其中它不是预期分组的情况下,重传ID序列检验部分221向调度器213传递由接收分组的重传ID和从接收分组的重传ID开始连续接收的分组的重传序号中的最大重传序号组成的ACK信息。
在本文中,接收分组(11-54,1-100)是期望分组,由此,它向调度器213传递由接收分组的重传ID和接收分组的重传序号组成的ACK信息,即“1-100”。并且,它通知存储器部分216“1-100”,作为接收分组的重传ID和重传序号信息,并且更新保存在存储器部分216中的重传序号信息,由此完成重传控制过程。
接下来,接收分组(13-7,1-102)原来应当是重传序号为101的分组(12-87,1-101)。因此,它向调度器213传递从接收分组的重传ID开始连续接收的分组的重传序号中最大的重传序号,即“1-100”。并且,它将“1-102”通知存储器部分216,作为接收分组的重传ID和重传序号信息,并且更新保存在存储器部分216中的重传序号信息,由此完成重传控制过程。
接下来,接收分组(1-23,1-103)是期望分组,由此,它向调度器213传递由接收分组的重传ID和接收分组的重传序号组成的ACK信息,即“1-103”。并且,它将“1-103”通知存储器部分216,作为接收分组的重传ID和重传序号信息,并且更新保存在存储器部分216中的重传序号信息,由此完成重传控制过程。
为了通知发送节点101分组已收到,接收到ACK信息的调度器213经输入/输出部分202发送包括传递的ACK信息的ACK分组。
完成重传控制过程之后的排序过程与上述一致的操作,因此说明从略。
下面将解释从接收节点接收ACK信息的发送节点。
当发送节点101从输入/输出部分202接收来自接收节点102的包括ACK信息的分组时,它提取重传ID序列检验部分221中的ACK信息。接下来,它从ACK信息获取接收节点102收到的重传ID和重传序号,在存储器部分216中存储此重传ID和重传序号,作为已确认到达的分组,并且从按重传ID队列215删除对应于它的重传ID和重传序号的分组。
在本文中,首先,发送节点101接收“1-100”、“1-101”以及“1-103”,作为ACK信息的信息。首先,对于“1-100”,发送节点101将其存储在存储器部分216中,作为已确认达到的分组,并且从按重传ID队列215删除对应于它的重传ID和重传序号的分组。接下来,在发送节点101接收具有相同内容的“1-100”的情况下,它将对应于作为紧挨着它的重传序号的编号的“1-101”的分组视为丢失分组,并且进行它的重传。也就是说,在具有相同编号的发送序号到达两个连续的次数的情况下,它将对应于紧挨着它的重传序号的分组视为丢失分组,并且进行它的重传。此外,它向重传分组附加与附加到之前发送的分组的重传ID和重传序号一致的重传ID和重传序号,并且重传该分组。
以上解释了在发送侧上检测分组丢失以及在接收侧上检测分组丢失的实例;但是,本发明并不限于此。例如,作为另一个实例考虑一种方法,其中,除非接收节点收到重传序号连续的分组,否则它仅仅向发送节点发送它的遗漏重传序号作为重传请求信息,并且发送节点响应于此遗漏重传序号发送分组。
实施例2
下面将解释本发明的实施例2。
在实施例2中,将解释其中存在多个用于连接发送节点和发送节点的路径的情况。
图5是说明其中存在多个用于连接发送节点和接收节点的路径的情况的配置图。
参考图5,实施例2由发送节点301、接收节点102以及用于在节点之间连接的M个路径312-1到312-M组成。各条路径312-1到312-M是诸如因特网的分组通信网络。所谓的其中存在多个路径、即N个路径的情况是其中发送节点301和接收节点302两者或者发送节点301和接收节点302其中之一保持多个通信接口的情况。例如,它是其中发送节点301或者接收节点302具有N个通信接口的情况,或者是其中发送节点301或者接收节点302分别具有S个通信接口和t个通信接口并且M=s×t的情况。
假定从发送节点301到接收节点302进行通信,但是确认(ACK)消息从接收节点302发送到发送节点301。用这种方式,在此实施例中,将解释从发送节点301到接收节点302的通信;但是一般说来,为了进行双向通信,需要发送节点301和接收节点302具有相同的功能。
下面,将解释发送节点301的配置。
参考图6,发送节点101由作为具有应用的API的套接口401、输入/接收部分402-1到402-M、用于根据将使用的端口号和向它们分配相应队列的目的地的地址/端口号而识别流的流识别部分411、用于根据向它们分配相应队列的流ID而识别流的流识别部分422、用于按识别的流保持分组的按流队列412和424、用于从按流队列的分组选择要发送的分组来发送的调度器413、用于在发送分组时向分组附加重传ID并且用于在重传队列中按重传ID保持以准备重传分组的重传控制部分414、用于按重传ID保持分组的重传队列215、具有诸如按路径延迟以及按流或者按记录的重传ID的延迟偏移和序号信息的信息的存储器部分416、用于在接收分组时检验分组的重传ID以便检验分组是否以预期顺序到达的重传ID序列检验部分421、以及用于检验按流队列以便传送按流的队列的分组中的排序分组的流序列检验部分423。
另外,各个输入/接收部分402-1到402-M是对应于各个路径312-1到312-M的逻辑部件,并且发送节点301具有的物理通信接口的数量并不总是M。并且,接收节点302与发送节点301相同。
下面将解释上述配置中实施例2的操作。
实质上与实施例1相同的实施例2的操作在调度器和重传控制部分的过程上不同,因为存在多个路径。下面将解释它不同部分的操作。
调度器413设置要发送分组的发送时间,从按流队列412决定在发送时间时,将分组发送到接收节点302的队列,并且从相应队列提取分组。并且,调度器413根据与路径选择有关的第三准则,判定在路径312-1到312-M中应该利用哪个路径。
为了执行重传所需的过程,调度器413将提取的分组和要利用的路径信息一起传递到重传控制部分414。重传控制部分414通过参考存储器部分416判定要附加到传输分组的重传ID和重传序号,并且将分组编入重传队列415的预定队列中。存储器部分416中用于判定传输分组的重传ID的信息是例如显示在图7的路径的表部分和重传ID中的那样。重传ID的数量等于M,是输入/输出部分的数量,并且前者以一对一的方式对应于后者。第二流表示此重传ID假定为单元的分组组。重传控制部分414向调度器413通知判定的重传ID和重传序号,并且调度器413附加通知的重传ID和重传序号、从存储器部分416获取的按流以一对一的方式分配的流ID、以及在流中是唯一的流序号,作为原始标题,并且通过利用输入/输出部分402-1到402-M 202中的任何一个根据以上选择发送分组到接收节点302。这个时候传输分组的格式例如如图3所示。
接收节点302在接收分组时的操作仅仅在发送ACK时的操作不同。下面将解释它的操作。
调度器413发送包括重传ID和重传序号的ACK信息到发送节点301。在其中在发送ACK分组时存在发送数据分组的情况下,它还可以向数据分组的标题部分附加信息,并不产生单独的ACK分组。根据用于选择通信路径的第三准则,它在适当的时间利用输入/输出部分402-1到402-M中的任何一个,由此发送分组到发送节点301。作为第三准则,存在例如根据各个路径的负荷情况选择负荷最小的路径的准则。
收到ACK时发送节点301操作也在调度器413的操作方面不同。下面对其进行解释。
调度器413从输入/输出部分402-1到402-M中的任何一个在任意的时间重传传递的分组。在这时候,调度器413可以根据第三准则独立于先前发送相同分组的路径而选择发送路径。
以上操作允许在初期阶段找出丢失的分组,由此有可能在较短的时间在接收节点302和发送节点301之间进行数据发送/接收。
另外,在图5和图6的配置中,属于一个流的多个分组一般地通过发送节点的调度器413分配到不同的路径。在其中各个路径的延迟或者速率独立地波动的情况下,由调度器对路径之间的延迟差的偏移存在限制,并且在包括具有低稳定性的无线链路的情况下,路径之间的抖动难以完全地抵消。
因此,在注意力集中到流时,不保证接收节点中分组的到达顺序反映发送节点中的发送顺序。例如,假定属于某一流的分组A从路径312-1发送,并且此后属于同一个流的序号大于分组A的序号的分组B从路径312-2发送。此外,这时假定路径A的延迟比调度器期望的延迟大并且在接收节点中B在A之前接收到。
在这时候,如果接收节点根据按流的排序的序号进行丢失检测,则它检测分组A丢失,因为具有较小序号的分组A在收到分组B时还没有被接收到。但事实上,分组A实际上没有丢失,因为它通过具有大延迟的路径312-1在接收B之后接收到,因此分组A的丢失检测是错误检测。
在不是按照流的排序而是按路径进行重传控制的实施例中,只要不出现各个路径的时序颠倒,接收节点中用于重传的序号的不连续性必定反映分组丢失,借此避免了如上所述的错误检测。此外,如果各个路径的时序颠倒概率比由于路径之间的抖动导致的流中的时序颠倒的概率低,则根据本发明的错误检测的降低是可以预期的。
实施例3
下面将解释本发明的实施例3。
实施例3在节点的配置以及节点的功能结构方面与实施例2完全一致;但是只有在发送节点中判定用于发送分组的重传ID的过程是不同的,因此下面对其进行解释。
在实施例3中,可以自由地改变并非一对一地对应的路径和重传ID。通常,其中多个路径集中到具有一个重传ID的集合中的情况下,存在在接收节点接收分组时分组的到达排序明显无序的可能性,取决于属于它的重传ID的各个路径的延迟或者延迟偏移。对此,将对用于判定属于一个重传ID的多个路径,从而使得属于一个重传ID的分组的到达顺序没有校正的概率变成固定值或者小于该固定值的算法进行解释。
对于发送节点301和接收节点302之间的各个路径312-1到312-M,在任何时间测量单向或者往返延迟时间以及延迟偏移,以在任意的时间进行路径和重传ID的映射。时间是例如固定时间间隔的时间、更新路径信息的时间等等。映射的方法是例如借助于图8所示算法,对路径312-1到312-M进行重传ID的映射的方法。
参考图8,路径312-1到312-M按照当时的延迟时间的下降值的次序重新排序,并且设置为主要变量i=1(步骤A001)。接下来,检查是否i==M(步骤A002)。首先,没有获得i==M,因此操作继续到步骤A003并且设置临时变量j=1。接下来,获取路径(i+j)的延迟和延迟偏移以及路径i的延迟偏移(步骤A004)。
在其中发送侧利用它的到达时间的判断来发送分组以便分组在接收侧上能够以预期的顺序接收的情况下,检查路径(i+j)的任意数量的分组在应该首先到达的路径i的分组之前到达的概率是否抑制在某一固定水平(步骤A005)。图8的实例基于路径(i+j)的三个分组在路径i的分组之前到达的概率等于或者小于1.5%。如果条件满足,则j加1,检查是否i+j==M,并且检查所有路径的过程是否完成(步骤A006)。除非所有路径的过程完成,否则操作回到(步骤A004),并且接下来还类似地检查具有大延迟的路径。
在步骤A006中,在i+j==M的情况下,操作继续到(步骤A007)。如果不满足(步骤A005)条件的路径在重复(步骤A004)和(步骤A005)的时候出现,则操作继续到(步骤A007)。在(步骤A007)中,范围在路径i到路径(i+j-1)之间的路径的重传ID设置为相同的一个,并且操作回到(A002)。
在重复上述过程以结束所有路径的重传ID的设置时,那就是说,在步骤A002中产生i==M,操作结束,并且它休眠直到下一个映射过程开始。
以上过程允许完成表部分以便进行路径和重传ID的映射,如图9的表所示,据此,调度器判定重传ID。
此外,还考虑以固定方式进行流和重传ID映射的方法、进行按路径的一个重传ID不相关地映射到诸如延迟和延迟偏移的信息的方法。
实施例4
上述实施例1、实施例2和实施例3的前题是在发送和接收节点之间进行端到端通信;但是本发明还适用于其中许多种端到端通信必定经过两个节点的情况。
参考图10,实施例4由任意数量的发送节点501-1到501-L、发送侧传送节点502、接收侧传送节点503、任意数量的接收节点504-1到504-N组成,并且它们链接如下。各个发送节点分别经路径511-1到511-L连接到发送侧传送节点。发送侧传送节点和接收侧传送节点经多个路径即任意数量的(一个或多个)路径512-1到512-N连接。各个接收节点分别经路径513-1到513-N连接到接收侧传送节点。
例如,在其中发送侧传送节点和接收侧传送节点之间的路径数量、即N是1的情况下,实施例4类似于实施例1。
此外,在其中发送侧传送节点和接收侧传送节点之间的路径数量、即N是2或者更多的情况下,实施例4类似于实施例2和实施例3。
但是,上述情况下,实施例1、实施例2以及实施例3中的发送节点变成发送侧传送节点,并且同样地,接收节点变成接收侧传送节点。此外,发送侧传送节点的配置中套接口变成从发送节点接收分组的输入部分,并且接收侧传送节点的配置中套接口变成发送到接收节点的分组的输出部分。
此外,在这种情况下,第一流表示借助于各个发送节点501-1到501-L和各个接收节点504-1到504-N之间通信的地址/发送源的端口号/通信目的地,以一对一的方式判定的分组组。
以上操作允许在初期阶段找出丢失的分组,由此有可能在较短的时间在各个发送节点501-1到501-L和各个接收节点504-1到504-N之间进行数据发送/接收。
实施例5
下面将解释本发明的实施例5。
实施例5涉及其中实施例2、实施例3以及实施例4中示出的调度器213和413根据第三准则执行路径选择性操作的情况,如下所述。此操作允许由时序错误所引起重传频率减少,因为在发送节点和接收节点之间存在多个路径的情况下,在接收节点中以发送节点期望的预期顺序接收分组的概率变高。此外,具体地说,对配置应用实施例5,其中节点之间经多个路径连接,如实施例3或者实施例4的情况,作为它的应用,允许上述的重传控制以被假定为重传单元的更大量的通信路径应用,借此可以预期通信性能的改进。
在本文中,所谓的第三准则是根据数据的预测到达时间或者接收完成时间而选择最适当路径的准则,例如到达时间预计最早的路径。
例如,在发送数据(分组)时保存发送数据(分组)的传输历史。用于识别发送数据(分组)的标识符、发送开始时间等等在此传输历史中进行描述。另一方面,接收侧发送通过其传送数据(分组)到发送侧的路径的状态信息(例如速度或者分组延迟)。用于识别应用路径状态信息的最新数据(分组)的信息,像上述数据(分组)的标识符被包含于此路径状态信息。发送侧接收路径的状态信息,并且从传输历史借助于用于识别包括在此路径状态中的数据(分组)的信息(例如标识符)获得此路径状态变成可用的已发送数据(分组)。并且,它将路径的接收状态应用于获得数据(分组)之后的数据,由此预测接收完成时间等等,并且还根据此预测以及路径的接收状态信息,预测今后将发送到各个路径数据的到达时间或者接收完成时间。
在路径选择中,根据数据的预测到达时间和接收完成时间来选择最适当的路径,例如预测到达时间为最早的路径。
在本文中,所谓的路径状态信息一般指的是成为通信性能的指标的信息。在此实施例中,在各种信息中,采用路径的速度和分组延迟。此外,在路径状态信息变成可用的所谓的时间,并不表示发送节点侧上路径状态信息的更新时间,而是在产生由路径状态信息表示的路径状态时的时间,该时间用在它的路径状态中发送的分组等指定。因此,所谓的自路径状态信息变成可用的时间以来的传输历史表示自路径状态信息变成可用的时间以来发送的分组的传输历史等。另外,此时间从变成它的测量基础的分组信息(用于识别分组的标识符)、从接收节点侧发送的分组的接收时间等获得;但是少许改变无关紧要。此外,为了获得路径状态信息,关于由接收节点测量速度或者延迟的方法,已经提供了各种的类型;但是,下面将描述目前考虑的方法。
发送节点用于将标识符和传输时间插入到到接收节点的各个分组中,并传送各个分组。接收节点对由发送节点插入的发送时间与在接收节点本身接收分组的时间进行比较,由此测量分组延迟。此外,发送节点定期地发送用于测量的分组行,以及接收节点能够根据它的到达时间的偏移推论速度。在例如文件Dovrolis,Ramanathan以及Moore的“what Do Packet Dispersion Techniques Measure?”,IEEEINFOCOM 2001中介绍了做出推论的方法的细节。在上述Dovrolis等人的文件中,发送侧节点同时发送两个分组,并且发送侧根据这两个分组之间到达时间的差推论链路速度。是发送延迟扩大了分组的到达间隔,并且发送延迟与链路速度有一个关系,因此该速度能够从到达间隔推论。
接收节点定期地向发送节点发送这个测量值或者推论值,作为路径状态信息。此外,它同时发送直到这时候最新接收的标识符,作为发送的状态信息变成可用的分组的识别信息。这些类型的信息作为发送节点中的报告接收。另外,以上方法技术仅仅是一个实例,并且关于本发明是否实现的可能性不取决于判定和传送路径状态信息以及路径状态信息变成可用的分组的方法。
在下文中,将对特定操作进行解释。
调度器213或者413参考迄今诸如按发送路径接收的路径信息的报告,以及应该传送的分组的自其信息变成可用的分组发送以来的传输历史,由此预测接收侧节点中的到达延迟。传输历史保存在存储器部分216或者416中。调度器213或者413选择预测到达延迟变得最小的路径作为应该在下一个传送的分组的发送路径,传送分组到选择的路径,并且此后将它的传送时间添加到存储器部分216或者416的传输历史。
作为推论按在调度器213或者413中操作的路径的到达延迟的方法的一个实例,图11中显示了调度器的操作实例。
图11的600-1、600-2和600-3各自是数据分组,它的发送侧节点中的传输历史和预测以及接收侧节点中的接收历史和预测显示在时间轴上。例如,数据分组600-1的发送在发送侧节点中从时间T1开始,并且发送在时间T2完成。此外,同一分组600-1的接收在接收侧节点中从时间T3开始,并且接收在时间T4完成。在本文中,T1和T3之间的差I1是发送延迟。此外,T4和T2之间的差I2是通过将发送延迟I1加到由于发送接口和传送路径之间的速度差产生的分组偏移而获得的总延迟。
在本文中,在时间轴上的当前时间TP处,假定将发送分组600-3。并且,假定对于这个路径,发送侧节点具有的路径状态信息通过T5和TP之间接收报告结果通知而更新,而且这个路径状态信息对分组600-1以及随后的分组变成可用。因此,根据路径状态信息变成可用的分组600-1和600-2的传输历史,推论出考虑了分组600-1和600-2的分组600-3的接收完成时间。
因此,接收侧节点中在分组600-1之后发送的分组600-2的接收开始时间和完成时间能够根据包括在当前接收的路径状态信息中的速度和传输延迟进行推论。在图11中,推论的接收开始时间是T5并且接收完成时间是T7。在本文中,没有做出这个推论,而是假定路径状态信息表示的传输延迟等于I1,并且发送在TP开始的分组600-3的接收应当在时间T6开始。但是在T6,现在在接收侧节点中,推论分组600-2的接收没有完成,因此分组600-3的接收时间被认为在推论分组600-2的接收完成时的T7以及T7之后开始,并且推论的分组600-3的接收完成时间是T8,T8通过加上根据包括在当前接收的路径状态信息中的路径速度推论的分组偏移而获得。同样地,为各个路径推论分组600-3的接收完成时间,并且将分组600-3发送到接收完成时间最早的路径上去。
另外,在图11中,用于推论在TP时间点接收侧上的到达时间的路径状态信息是通过T5和TP之间报告结果通知的接收而更新的信息。因此,由此可见根据比在TP的路径状态信息更老的路径状态信息,推论在发送分组600-2时的到达时间。分别假定这个老的状态信息是信息A并且在T5和TP之间更新的新信息是信息B,则如果包括在信息A和信息B中的延迟和路径速度由于链路状态的波动而不同,则根据A的到达时间预测应当不同于根据B的到达时间预测,如图11所示。因此,为了进行更准确的推论,图11中给出的分组600-1和600-2的到达时间预测反映了作为获得信息B的结果的修改。一旦更新路径状态信息,则不必要参考在它的更新变成可用的分组之前的传输历史,因此删除该传输历史。
此外,将参考图18具体解释在应用本发明的情况下的分组到达时间推论和传统的分组到达时间推论之间的差、以及在应用本发明的情况下的接收完成时间和传统的接收完成时间之间的差。
图18的500-1、500-2和500-3分别是要发送出去的数据分组,并且它的发送侧节点中分组的传输历史(实线)以及接收侧节点中分组的实际接收历史(实线)分别显示在时间轴上。此外,分组的到达时间的预测(点线)以及接收完成时间分别显示在时间轴上。此外,图18的上部描述的曲线用于显示发送路径的速度变化。图18显示传输速度随着时间的流逝变慢的效果。
首先,谈到分组的实际发送/接收,数据分组500-1的发送在发送侧节点从时间T1开始,并且发送在时间T2完成。并且,在接收侧节点中,数据分组500-1的接收在时间T3开始,并且接收在时间T5完成。
此后,数据分组500-2的发送在发送侧节点从时间T4开始,并且发送在时间T8完成。并且,在接收侧节点中,数据分组500-2的接收由于通信速度的降低在时间T7开始,并且接收在时间T13完成。
此外,数据分组500-3的发送在发送侧节点从时间T9开始,并且发送在时间T10完成。并且,在接收侧节点中,数据分组500-3的接收在时间T14开始,并且接收在时间T16完成。
接下来,在如上所述分组的实际发送/接收中,将解释应用本发明的情况下分组的到达时间和接收完成时间的预测。
如上所述,数据分组500-1连同数据分组500-1的发送时间以及分组标识符的信息一起从时间T1开始在发送侧节点中发送,并且发送在时间T2完成。这时,在发送侧节点中,数据分组500-1的发送时间和分组标识符已经存储为传输历史。
接下来,数据分组500-2连同数据分组500-2的发送时间以及分组标识符的信息一起从时间T4开始在发送侧节点中发送,并且发送在时间T8完成。这时,在发送侧节点中,与以上所述类似,数据分组500-2的发送时间和分组标识符已经存储为传输历史。
在接收侧节点中,数据分组500-1的接收在时间T3开始,并且接收在时间T5完成。这时,接收侧节点向发送节点发送作为报告的诸如数据分组500-1的标识符、接收完成时间以及通信速度的信息。
在发送节点侧上,假定在时间TX从接收节点接收该报告。并且,根据包括在报告中的数据分组500-1的标识符,判定在报告的路径状态信息变成可用时的时间是数据分组500-1的发送时间T1。
因此,发送节点根据自时间T1以来的传输历史,预测数据分组500-3的到达时间和接收完成时间。自时间T1以来的传输历史表示它是变成目标的数据分组500-1和数据分组500-1。从报告可以看出,数据分组500-1的接收完成时间是时间T5。为了预测数据分组500-2的到达时间和接收完成时间,采用报告的数据分组500-1的通信速度和接收完成时间,并且根据各种信息得到分组的传输延迟和总延迟时间。另外,传输延迟是T1和T3之间的差I1。此外,作为通过向传输延迟I1添加由于发送接口和传送路径之间的速度差产生的分组偏移而获得的时间的分组总延迟是T5和T2之间的差。从传输延迟I1获得的数据分组500-2的到达时间预测为通过向传输延迟I1添加数据分组500-2的发送时间T4而获得的时间T6。此外,可以预测,数据分组500-2的接收完成时间是时间T12,因为分组延迟能够用报告的通信速度获得。因此,对于这个路径,那个预测数据分组500-3到接收节点的到达时间在时间T12以及T12之后开始。此外,通过预测上述分组偏移能够预测,在接收在这个时间T12开始的情况下,接收完成时间是时间T15。这样的预测结果证明差是数据分组500-3的预测到达时间T12和数据分组500-3的实际到达时间T14之间的时间ID1。
另一方面,利用先有技术预测分组的到达时间和接收完成时间中,在从接收节点获得的报告的到达时间之时,显示在报告中的路径状态假定为可用,并且在数据分组500-3的预测中,显示在报告中的路径状态按照实际情况应用。也就是说,在数据分组500-3的到达时间的预测中,预测它的到达时间是时间T11,时间T11通过将传输延迟I1添加到数据分组500-3的发送时间T9而获得。这样的预测结果证明差是数据分组500-3的预测到达时间T11和数据分组500-3的实际到达时间T14之间的时间ID2。
因此,对于与实际到达时间的误差时间ID1和误差时间ID2,从附图显而易见,通过根据本发明的预测的误差时间ID1小于误差时间1D2。
接下来,调度器包括上述到达时间推论的路径选择过程显示在图12中。
首先,通过排队部分312接收分组(步骤100)。
接下来,对于任何路径,确定在上一分组从它的路径发送之后,路径状态信息是否被更新(步骤101)。在更新了路径状态信息的情况下,对于所有更新路径,删除在路径状态信息变成可用之时的时间之前的传输历史(步骤102)。
接下来,对于各个路径,根据路径状态信息和传输历史,预测(推论)分组的到达时间(步骤103)。并且,分组被发送到预测(推论)到达时间最早的路径(步骤104)。
最后,更新用于分组传输的路径的传输历史(步骤105)。
如上述,在更新路径状态信息中,对更新之前已发送分组的到达时间的预测进行修改,此修改在发送后续分组之时的判断中反映,借此有可能对过去的发送记录进行补偿。这个补偿的效果在各个路径的往返延迟大并且在路径状态波动期间不能忽略的情况下变得显著。下面描述它的理由。
在路径的状态波动出现在往返延迟之类的时间期间的情况下,在发送侧节点获取一些状态信息的时间点,以上路径的状态也许已改变,因此它的信息是不能信赖的。因此,在发送分组的时间点不可能进行最适当的路径选择以及时间设置,并且由此可见分组一般在不适当的路径并且在不适当的时间发送。在更新状态信息中修改到达时间预测等同于在经过了相当于更新状态信息的间隔的时间之后对已做出的不适当发送的冲突做出推论。例如,在先前分组以过高速率发送的情况下,已发送分组的到达预测时间由于更新状态信息而延长,并且其路径的传输成本提高。
过去的传输分组的到达时间预测通过如上所述更新状态信息进行的修改,对路径选择的最佳化有效果,并且除了路径选择,将到达时间预测的修改反馈回到发送时间还控制允许长期对各个路径的拥塞控制最佳化。
下面将解释用于实现所述发明的另一实施例。
在以下实施例中,对其中安装简单的定时控制的情况的操作进行解释。
在接下来给出的另一个实施例中,类似于上述实施例,按路径推论传输分组的接收完成时间,并且选择评估值为最高的路由;但是,可以按路径重新定义容许的推论延迟,以引入简单的定时控制,使得发送侧节点控制发送时间以便推论的延迟不超过它的允许值。将利用图13解释这个实施例的操作。
在图13中,假定容许的推论延迟是TM。这意味着在时间点TP发送分组必然推论它的分组的接收将至TM+TP完成。但事实上,用类似于上述实施例的部件推论分组400-3的接收完成时间显示它是T8,并且这是相对于TM+TP的一个未来时间。因此,直到产生推论的接收完成时间TM+TP,发送节点100无法从这个路径发送分组400-3。在这种情况下,发送侧节点100保存分组400-3直到任何路径产生推论的接收完成时间TM+TP或者小于该时间,并且从预留显然最早的路径发送这个分组。上述实施例中的调度安排操作显示在图14中。
首先,通过排队部分312接收分组(步骤200)。
接下来,对于任何路径,判定在上一分组从它的路径发送之后,路径状态信息是否被更新(步骤201)。在更新了路径状态信息的情况下,对于所有更新路径,删除在路径状态信息变成可用之时的时间之前的传输历史(步骤202)。
接下来,对于各个路径,根据路径状态信息和传输历史,预测(推论)分组的到达时间(步骤203)。并且,通过采用预测(推论)到达时间,对于所有路径,判定是否(预测(推论)到达时间)>(当前时间+容许的推论延迟)(步骤204),并且对于任何路径,在(预测(推论)到达时间)≤(当前时间+容许的推论延迟)的情况下,分组被传送到这些路径中预测(推论)到达时间最早的路径(步骤205)。
另一方面,对于所有路径,在(预测(推论)到达时间)>(当前时间+容许的推论延迟)的情况下,操作观察并等待,直到任何路径的当前时间变成(预测到达时间容许的推论延迟),并且在任何路径符合条件的情况下,操作进行到步骤205(步骤206)。
最后,更新用于分组传输的路径的传输历史(步骤207)。
另外,容许的延迟TN的值可以独立地按路径设置。例如,在其中各个路径的延迟、经过路径的服务器缓冲量等等很不同的情况下,特别在高负荷的情况下,认为通过设置使各个路径的TM设置值与其它路径的设置值不同,可有效地实现各个路径的频带的实际应用。
此外,关于路径选择的判断,除了推论的接收完成时间,例如分组丢失比率、电路费用等,可以在优先权的基础上进行评估,只要它们能够被监视。此外,如何判断可能不同,取决于发送数据的属性。例如,对于音频数据,选择着重于延迟,并且对于不急迫的文件传输数据,选择着重于电路费用。本发明的特征在于,在任何情况下,当发送节点更新路径状态信息时,它同时获取其更新变成可用的传输分组,或者更新时的时间,根据自更新变成可用的分组或者更新时的时间以来的传输历史推论对传输成本的影响,并且发送下一个分组到成本最小的路径。因此,同样在其中延迟大的情况下,即延迟太大以致与路径的状态波动的时间恒定值相比不能忽略的情况下,反映对已由过去的不适当传输给出的成本准则的影响到对随后的发送时间的调整允许补偿它的冲突,这样对路径的利用效率改进具有效果。
另外,在上述实施例1、实施例2、实施例3、实施例4以及实施例5中,节点的流识别部分211加222、调度器213、重传控制部分214、重传ID序列检验部分221、流序列检验部分223等分别配置为独立的部分;但是,它的整体或者一个部分可以用在控制程序下操作的CPU等配置。

Claims (64)

1.一种在发送节点和接收节点之间的通信方法,其特征在于:
所述发送节点根据与排序有关的第一准则提供具有一个流或者更多流的第一流组,并且根据与重传控制有关的第二准则提供具有一个流或者更多流的第二流组,为属于所述第一流组的各个流指定第一标识符,所述第一标识符是唯一的,并且为属于所述第二流组的各个流指定第二标识符,所述第二标识符是唯一的;以及
所述发送节点将输入的分组根据所述第一准则分类为属于所述第一流组的一个流或更多流,又根据所述第二准则将它们分类为属于所述第二流组的一个流或更多流,向所述分组附加所述第一标识符、第一序号,所述第一序号在用所述第一标识符指定的流中是唯一的,向所述分组附加所述第二标识符、第二序号,所述第二序号在用所述第二标识符指定的流中是唯一的,并且发送所述分组;
所述接收节点根据所述第二标识符对所有收到的分组分类,并且对各个第二流检查没有收到的具有所述第二序号的分组,并且请求所述发送节点对其进行重传;
所述发送节点重传所述接收节点请求的第二流中具有第二序号的分组;以及
所述接收节点根据所述第一标识符对所有收到的分组进行分类,根据所述第一序号对各个第一流中的分组排序,并且以排序顺序对排序后的分组执行接收处理。
2.如权利要求1所述的通信方法,其特征在于,所述发送节点和接收节点经一个通信路径连接,所述发送节点的第二流组配置为单个流,并且通过利用单个通信路径发送所述分组。
3.如权利要求1所述的通信方法,其特征在于,在存在多个用于发送分组的通信路径的情况下,所述发送节点根据与分组传输调度有关的第三准则选择用于发送分组的通信路径。
4.如权利要求3所述的通信方法,其特征在于,所述发送节点和接收节点经多个通信路径连接,并且所述发送节点将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择重传所述分组的通信路径,作为第三准则。
5.如权利要求3所述的通信方法,其特征在于,所述发送节点和接收节点经多个通信路径连接,并且所述发送节点将分组分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传所述分组的通信路径,作为第三准则。
6.如权利要求1所述的通信方法,其特征在于,所述发送节点是用于传送其它通信节点发送的分组的发送侧传送节点,并且所述接收节点是用于传送其它通信节点接收的分组的接收侧传送节点。
7.如权利要求6所述的通信方法,其特征在于,所述发送节点和接收节点经一个通信路径连接,所述发送节点的第二流组配置为单个流,并且通过利用单个通信路径发送所述分组。
8.如权利要求6所述的通信方法,其特征在于,所述发送节点和接收节点经多个通信路径连接,并且所述发送节点将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择重传所述分组的通信路径,作为第三准则。
9.如权利要求6所述的通信方法,其特征在于,所述发送节点和接收节点经多个通信路径连接,并且所述发送节点将分组分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传所述分组的通信路径,作为第三准则。
10.如权利要求3所述的通信方法,其特征在于,根据各个路径的可选择路径状态信息、所述路径状态信息变成可用的时间或者已发送分组的识别信息、以及自所述路径状态信息变成可用之时以来的传输历史或者自用已发送分组的识别信息指定的分组的传输以来的传输历史,路径的选择或者路径的选择优先权的决策对输入的各个分组在发送节点做出,作为发送节点的第三准则。
11.如权利要求10所述的通信方法,其特征在于,所述路径状态信息包括所述路径的延迟。
12.如权利要求10所述的通信方法,其特征在于,所述路径状态信息包括所述路径的通信速度。
13.如权利要求10所述的通信方法,其特征在于,所述路径状态信息包括所述路径的负荷。
14.如权利要求10所述的通信方法,其特征在于,在选择路径或者在更新选择优先权中,在更新各个路径的路径状态信息后,对与在更新之前发送的分组有关的传输成本的计算结果进行修改。
15.如权利要求14所述的通信方法,其特征在于,在修改各个路径的传输成本的计算结果中,销毁在最近的路径状态信息变成可用的第一已发送分组之前的历史。
16.如权利要求10所述的通信方法,其特征在于,其在接收侧节点中的接收完成时间推论值为最早的路径被选为用于发送分组的路径。
17.如权利要求10所述的通信方法,其特征在于,所述接收侧节点中到一个特定时间为止能够完成的接收数据量的推论值为最大的路径被选为用于发送分组的路径。
18.如权利要求10所述的通信方法,其特征在于,响应于对于各个路径推论的当前路径状态,中断数据传输。
19.如权利要求18所述的通信方法,其特征在于,中断所述数据传输的准则是推论的接收完成时间是特定值或者大于特定值。
20.如权利要求10所述的通信方法,其特征在于,根据在传输数据的各个属性都不同的策略进行路径选择或者传输中断的判断。
21.一种节点,所述节点配置了发送部分,用于发送分组;以及接收部分,用于接收分组,并且独立地进行分组的重传控制和排序,其特征在于:
所述发送部分包括:
用于向传输分组附加第一标识符和第一序号、以及第二标识符和第二序号并且发送所述分组的部件,所述第一标识符根据与排序有关的第一准则以一对一的方式指定给第一流组的各个流,所述第一序号在属于所述第一流组的各个流中是唯一的,所述第二标识符根据与重传控制有关的第二准则以一对一的方式指定给第二流组的各个流,所述第二序号在属于所述第二流组的各个流中是唯一的;以及
用于根据所述第二标识符和第二序号指定由接收了分组的节点请求重传的分组,以便重传它的分组的部件;而且
所述接收部分包括:
用于根据所述第二标识符对所有收到的分组进行分类的部件,以对各个第二流检查没有收到的具有第二序号的分组,以便将它的第二标识符和第二序号重传到发送了所述分组的节点,并且请求重传该分组;以及
用于根据所述第一标识符对所有收到的分组进行分类的部件,以便根据所述第一序号对各个第一流中的分组排序,从而以排序顺序对排序后的分组执行接收处理。
22.如权利要求21所述的节点,其特征在于,各个节点经一个通信路径连接到其它节点,所述第二流组配置为单个流,并且通过利用单个通信路径发送所述分组。
23.如权利要求21所述的节点,其特征在于,在存在多个用于发送分组的通信路径的情况下,包括用于根据与分组传输的调度有关的第三准则选择用于发送分组的通信路径的部件。
24.如权利要求23所述的节点,其特征在于,每一节点经多个通信路径连接到其它节点,并且将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
25.如权利要求23所述的节点,其特征在于,每一节点经多个通信路径连接到其它节点,并且分组被分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
26.如权利要求21所述的节点,其特征在于,所述节点的发送部分是用于传送其它通信节点发送的分组的发送侧传送节点,并且所述节点的接收部分是用于传送其它通信节点接收的分组的接收侧传送节点。
27.如权利要求26所述的节点,其特征在于,各个节点经一个通信路径连接到其它节点,所述第二流组配置为单个流,并且通过利用单个通信路径发送分组。
28.如权利要求26所述的节点,其特征在于,每一节点经多个通信路径连接到其它节点,并且将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
29.如权利要求26所述的节点,其特征在于,每一节点经多个通信路径连接到其它节点,并且分组被分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
30.如权利要求23所述的节点,其特征在于,所述用于选择通信路径的部件根据各个路径的可选择的路径状态信息、所述路径状态信息变成可用的时间或者已发送分组的识别信息、以及自所述路径状态信息变成可用之时以来的传输历史或者自用已发送分组的识别信息指定的分组的传输以来的传输历史,在所述节点对要输入的各个分组进行路径的选择或者选择优先权的决策,作为第三准则。
31.如权利要求30所述的节点,其特征在于,所述路径状态信息包括路径的延迟。
32.如权利要求30所述的节点,其特征在于,所述路径状态信息包括路径的通信速度。
33.如权利要求30所述的节点,其特征在于,所述路径状态信息包括路径的负荷。
34.如权利要求30所述的节点,其特征在于,在选择路径或者在更新选择优先权中,在更新各个路径的路径状态信息后,所述用于选择通信路径的部件对与在更新之前发送的分组有关的传输成本的计算结果进行修改。
35.如权利要求34所述的节点,其特征在于,在修改各个路径的传输成本的计算结果中,所述用于选择通信路径的部件销毁在最近的路径状态信息变成可用的第一已发送分组之前的历史。
36.如权利要求30所述的节点,其特征在于,所述用于选择通信路径的部件选择在接收侧节点中接收完成时间的推论值为最早的路径作为用于发送分组的路径。
37.如权利要求30所述的节点,其特征在于,所述用于选择通信路径的部件选择在接收侧节点中到一个特定时间能够完成的接收的数据量的推论值为最大的路径作为用于发送分组的路径。
38.如权利要求30所述的节点,其特征在于,所述用于选择通信路径的部件响应于为各个路径推论的当前路径状态而中断数据传输。
39.如权利要求38所述的节点,其特征在于,中断所述数据传输的准则是推论的接收完成时间是特定值或者大于特定值。
40.如权利要求30所述的节点,其特征在于,所述用于选择通信路径的部件根据对传输数据的各个属性都不同的策略,进行路径选择或者传输中断的判断。
41.一种用于节点的控制程序,所述节点独立地进行分组的重传控制和排序,其特征在于,所述控制程序使所述节点用作:
用于向传输分组附加第一标识符和第一序号以及第二标识符和第二序号并且发送所述分组的部件,所述第一标识符根据与排序有关的第一准则以一对一的方式指定给第一流组的各个流,所述第一序号在属于所述第一流组的各个流中是唯一的,所述第二标识符根据与重传控制有关的第二准则以一对一的方式指定给第二流组的各个流,所述第二序号在属于所述第二流组的各个流中是唯一的;
用于根据所述第二标识符和第二序号指定由接收了所述分组的节点请求重传的分组以便重传其分组的部件;
用于根据所述第二标识符对所有收到的分组进行分类的部件,以对各个第二流检查没有收到的具有第二序号的分组,以便将它的第二标识符和第二序号发送到发送了所述分组的节点,并且请求重传该分组;以及
用于根据所述第一标识符对所有收到的分组进行分类的部件,以便根据所述第一序号对各个第一流中的分组排序,从而以排序顺序对排序后的分组执行接收处理。
42.如权利要求41所述的用于节点的控制程序,其特征在于,各个节点经一个通信路径连接到其它节点,所述第二流组配置为单个流,并且通过利用单个通信路径发送所述分组。
43.如权利要求41所述的用于节点的控制程序,其特征在于,在存在多个用于发送分组的通信路径的情况下,使所述节点用作根据与分组传输的调度有关的第三准则选择用于发送分组的通信路径的部件。
44.如权利要求43所述的用于节点的控制程序,其特征在于,每一节点经多个通信路径连接到其它节点,并且将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
45.如权利要求43所述的用于节点的控制程序,其特征在于,每一节点经多个通信路径连接到其它节点,并且分组被分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
46.如权利要求41所述的用于节点的控制程序,其特征在于,所述节点的发送部分是用于传送其它通信节点发送的分组的发送侧传送节点,并且所述节点的接收部分是用于传送其它通信节点接收的分组的接收侧传送节点。
47.如权利要求46所述的用于节点的控制程序,其特征在于,各个节点经一个通信路径连接到其它节点,所述第二流组配置为单个流,并且通过利用单个通信路径发送分组。
48.如权利要求46所述的用于节点的控制程序,其特征在于,每一节点经多个通信路径连接到其它节点,并且将分组分类为对应于发送分组的通信路径的多个唯一流,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
49.如权利要求46所述的用于节点的控制程序,其特征在于,每一节点经多个通信路径连接到其它节点,并且分组被分类为多个流,所述多个流的数量小于发送分组的通信路径的数量,作为第二准则,并且独立于在第一传输时的通信路径而选择用于重传分组的通信路径,作为第三准则。
50.如权利要求43所述的用于节点的控制程序,其特征在于,使所述用于选择通信路径的部件根据各个路径的可选择路径状态信息、所述路径状态信息变成可用的时间或者已发送分组的识别信息、以及自所述路径状态信息变成可用之时以来的传输历史或者自用已发送分组的识别信息指定的分组的传输以来的传输历史,在所述节点对要输入的各个分组进行路径的选择或者选择优先权的决策。
51.如权利要求50所述的用于节点的控制程序,其特征在于,所述路径状态信息包括路径的延迟。
52.如权利要求50所述的用于节点的控制程序,其特征在于,所述路径状态信息包括路径的通信速度。
53.如权利要求50所述的用于节点的控制程序,其特征在于,所述路径状态信息包括路径的负荷。
54.如权利要求50所述的用于节点的控制程序,其特征在于,在选择路径或者更新选择优先权中,在更新各个路径的路径状态信息后,使所述用于选择通信路径的部件用于对与在更新之前发送的分组有关的传输成本的计算结果进行修改。
55.如权利要求54所述的用于节点的控制程序,其特征在于,使所述用于选择通信路径的部件用于在修改各个路径的传输成本的计算结果中,销毁在最近的路径状态信息变成可用的第一已发送分组之前的历史。
56.如权利要求50所述的用于节点的控制程序,其特征在于,使所述用于选择通信路径的部件用于选择在接收侧节点中接收完成时间的推论值为最早的路径作为用于发送分组的路径。
57.如权利要求50所述的用于节点的控制程序,其特征在于,使所述用于选择通信路径的部件用于选择在接收侧节点中到一个特定时间能够完成的接收的数据量的推论值为最大的路径作为用于发送分组的路径。
58.如权利要求50所述的用于节点的控制程序,其特征在于,使所述用于选择通信路径的部件用于响应于推论的当前路径状态而中断数据传输。
59.如权利要求58所述的用于节点的控制程序,其特征在于,中断所述数据传输的准则是推论的接收完成时间是特定值或者大于特定值。
60.如权利要求50所述的用于节点的控制程序,其特征在于,使所述用于选择通信路径的部件用于根据对传输数据的各个属性都不同的策略,进行路径选择或者传输中断的判断。
61.一种通信方法,其特征在于,除了用于排序的信息之外,还向通信分组附加用于识别传输流的标识符和所述传输流中的序号,从而根据所述标识符和所述序号在接收侧上逐个传输流地进行重传控制。
62.一种通信方法,其特征在于,除了用于排序的信息之外,还向通信分组附加用于识别传输流的标识符和所述传输流中的序号,从而根据所述标识符和所述序号在接收侧上逐个传输流地检测分组的丢失。
63.一种节点,其特征在于,包括:
用于向分组附加第一标识符和第一序号、以及第二标识符和第二序号并且发送所述分组的部件,所述第一标识符根据与排序有关的第一准则以一对一的方式指定给第一流组的各个流,所述第一序号在属于所述第一流组的各个流中是唯一的,所述第二标识符根据与重传控制有关的第二准则以一对一的方式指定给第二流组的各个流,所述第二序号在属于所述第二流组的各个流中是唯一的;以及
用于根据所述第二标识符和第二序号重传逐个传输流地检测的丢失分组的部件。
64.一种节点的控制程序,其特征在于,使所述节点用作:
用于向分组附加第一标识符和第一序号、以及第二标识符和第二序号并且发送所述分组的部件,所述第一标识符根据与排序有关的第一准则以一对一的方式指定给第一流组的各个流,所述第一序号在属于所述第一流组的各个流中是唯一的,所述第二标识符根据与重传控制有关的第二准则以一对一的方式指定给第二流组的各个流,所述第二序号在属于所述第二流组的各个流中是唯一的;以及
用于根据所述第二标识符和第二序号重传逐个传输流地检测的丢失分组的部件。
CN200580001934A 2004-01-09 2005-01-07 通信方法、节点以及节点的控制装置 Expired - Fee Related CN100579128C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP004795/2004 2004-01-09
JP2004004795 2004-01-09
JP260332/2004 2004-09-07

Publications (2)

Publication Number Publication Date
CN1906914A true CN1906914A (zh) 2007-01-31
CN100579128C CN100579128C (zh) 2010-01-06

Family

ID=37675046

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200580001934A Expired - Fee Related CN100579128C (zh) 2004-01-09 2005-01-07 通信方法、节点以及节点的控制装置

Country Status (1)

Country Link
CN (1) CN100579128C (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232452B (zh) * 2008-01-25 2011-02-09 华中科技大学 工业无线传感器网络的广播信道数据传输方法
CN108431774A (zh) * 2015-06-09 2018-08-21 乌尔特拉塔有限责任公司 无限存储器结构流和api
CN113037440A (zh) * 2021-05-25 2021-06-25 腾讯科技(深圳)有限公司 数据重传处理方法、装置、计算机设备和存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101232452B (zh) * 2008-01-25 2011-02-09 华中科技大学 工业无线传感器网络的广播信道数据传输方法
CN108431774A (zh) * 2015-06-09 2018-08-21 乌尔特拉塔有限责任公司 无限存储器结构流和api
CN108431774B (zh) * 2015-06-09 2022-04-12 乌尔特拉塔有限责任公司 无限存储器结构流和api
CN113037440A (zh) * 2021-05-25 2021-06-25 腾讯科技(深圳)有限公司 数据重传处理方法、装置、计算机设备和存储介质
CN113037440B (zh) * 2021-05-25 2021-08-06 腾讯科技(深圳)有限公司 数据重传处理方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN100579128C (zh) 2010-01-06

Similar Documents

Publication Publication Date Title
CN1531282A (zh) 分组中继装置
CN1383337A (zh) 数据链路传输控制方法、移动通信系统、数据链路传输控制装置、基站、移动台、移动台控制程序以及可机读的记录媒体
CN1108678C (zh) 在atm交换系统中的反馈控制方法和装置
CN1679285A (zh) 执行媒体专用以确保穿越无线网络传送实时数据的服务质量的方法
CN1265674C (zh) 用于在数据通信系统内选择服务扇区的方法和装置
CN1282096C (zh) 网络通信装置、通信装置、以及数据发送接收处理方法
CN1874321A (zh) 传送装置和传送方法
CN1241380C (zh) 传输装置和传输控制方法、接收装置和接收控制方法
CN1416227A (zh) 移动通信系统、移动通信方法、基站、移动台和信号发送方法
CN1849782A (zh) 传送层中继方法、传送层中继设备、及其程序
CN1412973A (zh) 虚拟个人网络服务管理系统及其服务管理器和服务代理器
CN1498483A (zh) 无线通信系统和无线通信控制方法,无线通信设备和无线通信方法,以及计算机程序
CN1906904A (zh) 路由器装置、通信装置、路由方法、路由程序及记录了路由程序的计算机可读取的记录媒体
CN1914861A (zh) 基于群集的网络供应
CN1894921A (zh) 发送台、接收台、通信方法、通信程序和记录了通信程序的计算机可读记录介质
CN1617540A (zh) 压缩数据分组中头域的技术
CN101056262A (zh) 应用系统业务数据和网络数据的连接与交换方法
CN1522009A (zh) 用于通信的网络资源优化装置与方法
CN1405986A (zh) 第2层虚拟专用网络中继系统
CN100344134C (zh) 通信业务控制交换设备
CN1255967C (zh) 频带保证系统、中继装置及网络管理服务器
CN1930486A (zh) 定位系统
CN1780260A (zh) Atm装置间通信支持系统、数据发送方法及其支持装置
CN1640095A (zh) 数据发送装置以及数据发送方法
CN1637714A (zh) 远程复制网络

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100106

Termination date: 20160107