专利名称:被损坏包的选择性处理的制作方法
技术领域:
本发明涉及基于包的通信,尤其涉及基于包中所携带内容的类型选择性地转发并处理被损坏的包。
背景技术:
在新兴的基于包的通信世界里,包越来越多地被用于传输许多类型的内容,包括需要实时递送的流媒体。随着如无线局域网(WLAN)及发送路径常被干扰的其它接入技术的新技术变得更加突出,用于处理被损坏包的传统规则可能不适用于特定类型的包内容。
在因特网协议与其它链路级协议中,具有以任意方式指示包被损坏的校验和错误的包立刻就被丢弃了。在无线WLAN环境中,许多被损坏的包可能只有包中相当少量的实际位错误。如果包内容代表数据,如银行余额,则丢弃被损坏的包并请求包的重新发送是必要的,因为包的重新发送是确保数据正确传输的唯一的可行方法。此外,如果对数据传输有任何负面影响,则由于重新发送造成的接收数据的延迟是最小的。
相反,如果被损坏的包是传输应当实时递送的流媒体,如音频、语音或视频,则包中被损坏的位肯定有负面影响,但少量错误位的影响可能不是灾难性的。由于数据被实时使用,因此重新发送相对来说是没有用的,因为包到达的次序及它们各自的延迟在使用和递送内容的过程中是关键的。如此,就需要新技术来处理携带对时间敏感信息的包,其中数据完整性不如及时递送重要。
发明内容
本发明方便了当包携带特定类型的内容如数据完整性不如及时递送重要的流媒体或其它对时间敏感的信息时被损坏包的处理。一旦接收到包,就确定包是否被损坏。如果包被损坏,则尝试确定包所携带内容的类型,然后基于内容的类型和可能还有包的完整性作出是向其目的地转发该包还是丢弃该包的决定。当被损坏的包已转发到或向目的地终端转发时,转发设备或目的地终端将确定包是否被损坏,如果被损坏,则确定包的内容是否是对时间敏感的。如果内容是对时间敏感的,则评估对包的损坏,而且如果可能,尝试修复损坏。修复可以包括校正被损坏的数据或包、由于损坏小则决定使用被损坏的数据或者利用标准化的、内插或外插的数据集合替换被损坏数据的全部或部分。如果修复不可能而且被损坏部分的替换不可用或者不期望,则该包被丢弃。
包转发可以在从方便在接入网上与始发或目的地终端通信的边缘设备到包通过其在耦合接入网的分组网中路由的中间设备的任意多个包转发设备中提供。每个转发设备及目的地终端可以提供用于校正其中被损坏包或数据的包处理。损坏的检测和内容类型的确定可以在同一设备或对于给定包彼此协调动作的不同设备中进行。一旦发现被损坏的包并且决定向目的地终端路由该包,则包可以象没有被损坏一样沿正常路径转发,或者在更适于处理被损坏包的可选路径上发送。当被损坏的包已经经过了尝试修复损坏的处理,则任何校正的、被损坏的或者替换数据将由目的地终端象没有损坏一样使用。在可选实施方式中,包可以修改成包括包被损坏的指示,以帮助设备路由或处理包。
本领域技术人员将意识到本发明的范围并在读以下优选实施方式具体描述及附图之后实现其另外的方面。
结合进本说明书并构成其一部分的
了本发明的几个方面,并与描述一起用来解释本发明的原理。
图1是根据本发明一种实施方式的通信环境的框图表示。
图2是概述根据本发明一种实施方式的用于选择性转发被损坏包的基本处理的流程图。
图3A-3C说明了概述根据本发明一种实施方式的用于尝试修复损坏的选择性处理被损坏包的基本处理的流程图。
图4是根据本发明一种实施方式的转发设备的框图表示。
图5是根据本发明一种实施方式的目的地终端的框图表示。
具体实施例方式
以下阐述的实施方式代表使本领域技术人员能够实践本发明的必要信息并说明了实践本发明的最佳模式。在根据附图读以下描述后,本领域技术人员将理解本发明的概念并将认识到未在此特别指出的这些概念的应用。应当理解,这些概念与应用都属于该公开内容与所附权利要求的范围。
在此假设被损坏包是基于其中所携带内容的类型选择性转发的,随后被接收并处理以修改损坏。在优选实施方式中,携带递送对时间敏感的内容的包尽管内容被损坏,也可以转发,这些内容例如对等待时间、波动、包到达次序敏感的内容或者对流或实时数据重建关键的其它参数,其中内容完整性比递送及时更关键的包被丢弃。该包在目的地的实体或沿路径的一些中间实体将选择通过校正被损坏包或数据来尝试修改损坏、决定使用被损坏包或数据或者替换被损坏包中被损坏数据的全部或部分。
参考图1,说明了通信环境10,其中包可以选择性转发,随后基于包中所携带内容的类型,当内容被损坏时,不是丢弃而是被修复。通信环境10包括分组网络12和多个接入网14,它们合作以允许始发终端16向目的地终端18递送包。分组网络12和接入网14包括或者关联可以包括将接入网14连接到分组网络12的边缘设备20和任意多个中间设备22的任意多个包转发设备,中间设备22有效地通过分组网络12从一个边缘设备20向另一个转发包。分组网络12还可以包括可选处理设备24,当其它包转发设备不能提供这种功能时,该可选处理设备24可以可选地实现成以定义的方式处理或转发被损坏的包。可选处理设备24随后在该描述中描述。
通信环境10可以采取多种形式,其中多种包转发设备可以方便彼此之间及与始发和目的地终端16、18的有线或无线通信。例如,接入网14可以是蜂窝网络或无线局域网。在这种实施方式中,边缘设备20可以是蜂窝网络基站或移动交换中心及无线局域网(WLAN)调制解调器或类似的接入点。此外,边缘设备20可以在多种有线类型的设备中实现,如路由器、防火墙与服务器。本领域技术人员将认识到其相同的无线实现。中间设备22可以采取路由器、交换机或在两个其它包转发设备之间充当转发联络的其它实体的形式。可选处理设备24可以采取类似的形式。
依赖于实施方式,始发终端16与目的地终端18之间传输的包可以包括各种类型的内容,包括数据或流媒体,如音频、视频和语音。尽管本领域技术人员将认识到其它类型的内容,但包的内容通常可以分成两种类型。第一种类型是其完整性不能折衷的数据。如此,内容的完整性优先。如流媒体的第二种类型的内容对其接收的时间和次序比内容本身的完整性更加敏感。尽管内容的完整性很重要,但由于损坏造成的丢失或丢弃的包可能证明比一些被破坏的位更有问题。内容的始发或目的地不限于接入网的边缘,而是可以存在于分组网络中的设备中,如适当地流化或捕捉内容的媒体服务器。
与丢弃任何被损坏包的现有实践相反,包转发设备运行,转发其内容类型为对完整性较不敏感而对及时递送较敏感的被损坏包。当包从始发终端16行进到目的地终端18时,多个包转发设备将配置成确定包是否被损坏或者破坏。不是自动地丢弃包,包转发设备将尝试确定包的类型,然后或者以传统方式丢弃包或者将包转发到目的地终端18。以这种方式,具有选择内容类型的被损坏包可以顺序方式通过分组网络12转发到目的地终端18。在一种实施方式中,特定的包转发设备将系统地分析包的损坏并基于其中的内容确定是否转发包。包可以没有变化地转发或者可以封装到新包中然后转发。依赖于对包的损坏,有可能简单地转发没有变化的包(在这种情况下,包可以具有以第2层形式对损坏的模糊指示,IP和UDP校验和),由此忽略损坏或者将被损坏包作为有效负载封装到新的无损坏包中。可选地,检测损坏的第一包转发设备可以修改包,以包括指示包被损坏的某种类型的明确指示,并将包向目的地终端18转发,其中后续的包转发设备将能够基于损坏指示确定包被损坏但应当转发到目的地终端18。
任何转发设备及目的地终端18可以在知道包被损坏的情况下接收转发的被损坏包,并且当内容是对时间敏感的时候可以尝试修复损坏。修复包可以包括校正被损坏数据、决定使用被损坏数据或者替换被损坏数据的全部或部分。一旦校正了,实现这种修复的转发设备将向目的地终端18转发该包,就象没有被损坏一样。可选地,如果目的地终端18是尝试修复损坏的实体,则从修复尝试得到的数据将象没有被损坏一样使用。因此,依赖于在转发过程中的或者在目的地终端18提供的修复类型,目的地终端18可以使用被损坏数据、校正的数据或替换的数据。
参考图2,说明了根据本发明一种实施方式的用于转发包的示例处理。最初,包转发设备将在到目的地终端18的途中接收包(步骤100)并确定包是否被损坏(步骤102)。对包的损坏可以在头、有效负载中或两者都有。用于确定损坏的一种技术是比较包与包括在包中的一个或多个校验和。值得注意的是,多个校验和可以在包中提供,其中不同的校验和对应于多个协议层。当确定包是否被损坏时,在当前所使用层中的校验和以及在其它层中的校验和可以被检查。本领域技术人员将认识到其中可以对包分析错误的任何技术都可以用于确定包是否被损坏。
如果包被损坏(步骤104)并且在头中有损坏(步骤106),则确定头中的损坏是否可以校正(步骤108)。如果头中的损坏不能校正,则包被丢弃(步骤110)。如果头可以校正,则头被校正(步骤112)。如果头没有损坏(步骤106)或损坏的头已经校正,则下一步依赖于有效负载是否被损坏(步骤114)。如果对包的有效负载没有损坏(步骤114),则包被转发到其目的地(步骤116)。如果有效负载被损坏(步骤114),则对包进行分析,以确定包中所携带内容的类型(步骤118)。
包中所携带内容的类型可以利用多种技术检测。例如,用于传输的协议类型可以确定内容的类型。例如,如果使用实时协议(RTP),则内容的类型很可能是流媒体类型,该类型对及时递送比对数据完整性更加敏感。尽管RTP是第3层协议,但运行以转发第1层或第2层协议级包的包转发设备可以分析当前所使用层之外的其它层,以便检测或确定包中所携带内容的类型。此外,特定协议可以包括指示包头或有效负载中及在任意协议层的内容类型的指示。这样,包转发设备可以配置成分析指示内容类型的包的指示。此外,当头中的信息不足以确定内容类型时,对包中所携带数据配置的分析也可以用于确定内容类型。本领域技术人员将认识到内容类型可以通过分析包的任何部分并查找协议栈中任意层所使用的任何协议类型来确定,以帮助确定内容类型,而不管包当前被处理的层。
如果由于对包的损坏而不能确定内容类型,或者如果内容不是对及时递送敏感或完整性更重要的第一种类型(步骤120),则包被丢弃(步骤110),处理对下一个进入的包重复。如果内容是对及时递送敏感而对完整性较不敏感的类型(步骤120),则包可以可选地被封装或者通过提供指示包被损坏的指示标记为被损坏(步骤122A和122B),然后包被转发到目的地终端18(步骤116)。值得注意的是,标记被损坏包是可选的。当被损坏包未标记时,每个后续的转发设备将单独或与其它设备一起简单地提供以上处理,来确定包是否被损坏和被损坏的包是否应当转发到目的地终端18。如果包被标记了,则后续转发设备将优选地能够检测用于标记的指示并继续转发处理。否则,重复以上处理。如果被损坏包被封装了,则后续转发设备将出错的包看作新包的正确有效负载,而且任何修复都将对封装包中的数据进行。
现在转向图3A-3C,示出了用于处理转发到已知包被损坏的目的地终端18的被损坏包的示例处理。最初,包被接收(步骤200)并被分析,以确定它们是否被破坏(步骤202)。如果包被损坏(步骤204),则以类似于以上所述的方式确定包所携带内容的类型(步骤206)。如果内容不是对及时递送敏感的第一种类型(步骤208),则包被丢弃(步骤210)。如果内容是对及时递送敏感的第一种类型(步骤208),则评估对包的损坏(步骤212),并使用一种或多种修复技术来处理被损坏的包,特别是包所携带的内容。
修复损坏的尝试可以采取以下形式。首先,被损坏的数据可以根据内容的类型进行分析并可以进行校正损坏数据的尝试(步骤214)。第二,被损坏的数据可以被分析,并因为损坏小而确定使用被损坏的数据(步骤216)。这种决定可以基于根据内容知道损坏将不会影响数据的使用或校正损坏的能力不可用。第三,被损坏的数据可以利用标准化数据或从其它接收数据确定的内插(或外插)数据整个或部分替换,已知标准化数据可以最小化丢失或损坏包的影响(步骤218)。如此,替换数据象实际数据一样被目的地终端18使用。例如,如果被损坏的数据是语音内容,则被损坏数据可以由无声或期望的音调替换,这对于向目的地终端18的用户提供是可以接受的。可选地,围绕损坏之前和后续数据的分析可以用于有效地内插新数据,在替换被损坏数据中使用。围绕的数据可以在被损坏包或在其它包中找到。同样,修复与包关联的损坏的处理可以包括一种或多种以上技术及本领域技术人员认为合适的其它技术。
一旦已经提供了修复处理,后续处理就依赖修复处理的位置。如果修复处理在目的地终端18提供(图3B),则目的地终端18可以简单地使用校正的、损坏的或者替换数据,就象它是正确接收的数据(步骤220)。如果修复处理发生在包转发设备(图3C),则被处理的数据带校正的、损坏的或替换数据向目的地终端18转发(步骤222)。在这种情况下,转发的包可以包括或可以不包括指示最初发送的数据被损坏或包修复已经进行或尝试的事实的指示。
当接收未损坏的包时(步骤204),包的处理将同样依赖处理是发生在目的地终端18还是一个转发设备上。如果处理发生在目的地终端18(图3B),则包中的数据简单地根据需要使用(步骤224)。如果处理发生在包转发设备(图3C),则包以一般方式向目的地终端转发(步骤226)。
上述功能性可以分布到多个设备中,其中如中间设备22或边缘设备20的第一包转发设备可以确定包被损坏,然后将包转发到可选处理设备24,以确定被损坏包是应当向目的地终端18转发还是应当丢弃。修复处理可以类似方式分布。除了分布式处理,包转发设备可以使用可选路由来路由即使被损坏也应当转发到目的地终端18的被损坏包。当正常路由可能不包括能够转发被损坏包的包转发设备时,使用可选路由是有利的。如此,可选路由可以是其中包转发设备能够选择性地转发第一种类型被损坏包的那些路由。
现在转到图4,说明了根据本发一种实施方式的包转发或处理设备。包转发设备一般包括具有存储器28的控制系统26,存储器28足以存储配置成提供以上功能性的软件30。依赖于包转发设备的配置及其在通信环境10中的位置,控制系统26还与一个或多个通信接口32关联。例如,如果包转发设备是边缘设备20,则通信接口32可以包括能够通过分组网络12接收并发送包的第一接口及用于方便通过合适的接入网14与始发或目的地终端16、18通信的第二接口。第二通信接口32可以是各种配置的蜂窝接口、WLAN接口或有线接口。配置成中间设备22或可选处理设备24的包转发设备可以具有配置成在其它中间设备22和可选处理设备24及边缘设备20之间来回发送包的一个或多个通信接口32。如前面所描述的,提供用于确定包损坏、确定传输什么内容及修复被损坏包的功能性的软件可以分布到多个合作设备中,它们全部都可以具有图4所说明的基本结构。
参考图5,说明了根据本发明一种实施方式的目的地终端18。目的地终端18一般包括具有足以存储配置成提供上述功能性的软件38的存储器36的控制系统34。依赖于目的地终端18的配置及其在通信环境10中的位置,控制系统34还与一个或多个通信接口40关联。例如,如果目的地终端18如图1所说明的放置,则通信接口40将能够通过接入网14从关联的边缘设备20接收包或向其发送包。通信接口40可以是各种配置的蜂窝接口、WLAN接口或有线接口。目的地终端18还可以包括方便与用户的语音、音频、视频或数据会话的用户接口42。
尽管本公开内容参考特定实施方式进行了描述,但总的来说,通过该公开内容的教义,这些实施方式与方法的关联方法、变化及变更可以变得显而易见。因此,示例实施方式的以上描述不定义或约束本公开内容。在不背离如由以下权利要求所定义的本公开内容主旨与范围的情况下,其它改变、替换、改进、修改及变化都是有可能的。
权利要求
1.一种用于选择性处理被损坏包的方法,包括a)接收从设备转发的被损坏包,该设备确定被损坏包被损坏;b)确定被损坏包是否具有第一种类型的内容;及c)如果被损坏包具有第一种类型的内容,则处理被损坏的包,以便解决与该被损坏包关联的损坏。
2.如权利要求1所述的方法,其中处理被损坏包包括校正与该包关联的损坏的至少一部分。
3.如权利要求1所述的方法,其中处理被损坏包包括确定接受与该包关联的损坏,使得被损坏数据作为实际数据被接受使用。
4.如权利要求1所述的方法,其中处理被损坏包包括替换与该包关联的损坏的至少一部分。
5.如权利要求1所述的方法,其中被损坏包在从始发设备到目的地设备的途中接收,并且还包括在处理被损坏包以解决损坏之后向目的地设备转发该被损坏包。
6.如权利要求1所述的方法,还包括在处理被损坏包以解决损坏之后使用该被损坏包的内容。
7.如权利要求1所述的方法,其中当被损坏包不具有第一种类型的内容时,还包括丢弃该被损坏包。
8.如权利要求1所述的方法,还包括确定被损坏包被损坏。
9.如权利要求8所述的方法,其中确定被损坏包被损坏包括依靠所包括的校验和检查被损坏包的完整性。
10.如权利要求9所述的方法,其中被损坏包在一个协议层上转发,而校验和在一个不同的协议层提供。
11.如权利要求1所述的方法,其中第一种类型的内容是其中递送对时间敏感的内容。
12.如权利要求1所述的方法,其中第一种类型的内容是语音内容。
13.如权利要求1所述的方法,其中第一种类型的内容是视频内容。
14.如权利要求1所述的方法,其中第一种类型的内容是音频内容。
15.如权利要求1所述的方法,其中第一种类型的内容是流媒体。
16.如权利要求1所述的方法,其中确定被损坏包具有第一种类型的内容包括识别用于传输内容的协议作为与第一种类型的内容关联的协议。
17.如权利要求16所述的方法,其中用于传输内容的协议在与被损坏包被转发的层不同的层。
18.一种用于选择性处理被损坏包的系统,包括a)至少一个通信接口;及b)与该至少一个通信接口关联的控制系统,适于i)接收从设备转发的被损坏包,该设备确定被损坏包被损坏;ii)确定被损坏包是否具有第一种类型的内容;及iii)如果被损坏包具有第一种类型的内容,则处理该被损坏包,以解决与该被损坏包关联的损坏。
19.如权利要求18所述的系统,其中为了处理被损坏包,控制系统适于校正与该包关联的损坏的至少一部分。
20.如权利要求18所述的系统,其中为了处理被损坏包,控制系统适于确定接受与该包关联的损坏,使得被损坏数据作为实际数据被接受使用。
21.如权利要求18所述的系统,其中为了处理被损坏包,控制系统适于替换与该包关联的损坏的至少一部分。
22.如权利要求18所述的系统,其中被损坏的包在从始发设备到目的地设备的途中接收,并且控制系统适于在处理被损坏包以解决损坏之后向目的地设备转发该被损坏包。
23.如权利要求18所述的系统,其中控制系统适于在处理被损坏包以解决损坏之后使用该被损坏包的内容。
24.如权利要求18所述的系统,其中当被损坏包不具有第一种类型的内容时,控制系统适于丢弃该被损坏包。
25.如权利要求18所述的系统,其中控制系统适于确定被损坏包被损坏。
26.如权利要求25所述的系统,其中为了确定被损坏包被损坏,控制系统适于依靠所包括的校验和检查被损坏包的完整性。
27.如权利要求26所述的系统,其中被损坏包在一个协议层上转发,而校验和在一个不同的协议层提供。
28.如权利要求18所述的系统,其中第一种类型的内容是其中递送对时间敏感的内容。
29.如权利要求18所述的系统,其中第一种类型的内容是语音内容。
30.如权利要求18所述的系统,其中第一种类型的内容是视频内容。
31.如权利要求18所述的系统,其中第一种类型的内容是音频内容。
32.如权利要求18所述的系统,其中第一种类型的内容是流媒体。
33.如权利要求18所述的系统,其中为了确定被损坏包具有第一种类型的内容,控制系统还适于识别用于传输内容的协议作为与第一种类型的内容关联的协议。
34.如权利要求33所述的系统,其中用于传输内容的协议在与被损坏包被转发的层不同的层。
35.一种用于选择性处理被损坏包的系统,包括a)用于接收从设备转发的被损坏包的装置,该设备确定被损坏包被损坏;b)用于确定被损坏包是否具有第一种类型的内容的装置;及c)用于如果被损坏包具有第一种类型的内容,则处理被损坏的包以解决与该被损坏包关联的损坏的装置。
36.如权利要求35所述的系统,其中用于处理被损坏包的装置包括用于校正与该包关联的损坏的至少一部分的装置。
37.如权利要求35所述的系统,其中用于处理被损坏包的装置包括用于确定接受与该包关联的损坏,使得被损坏数据作为实际数据被接受使用的装置。
38.如权利要求35所述的系统,其中用于处理被损坏包的装置包括用于替换与该包关联的损坏的至少一部分的装置。
全文摘要
当被损坏包已转发到或者向目的地终端转发时,转发设备或目的地终端将确定包是否被损坏,而且如果被损坏,则确定包的内容是否是对时间敏感的。如果内容是对时间敏感的,则评估对包的损坏,而且如果可能,进行修复损坏的尝试。修复可以包括校正被损坏数据或包、由于损坏小而决定使用被损坏的数据或者利用标准化数据集合替换全部或部分被损坏的数据。如果修复不可能并且对损坏部分的替换不可用或者不期望,则包被丢弃。
文档编号H04L29/06GK1894937SQ200480037796
公开日2007年1月10日 申请日期2004年12月2日 优先权日2003年12月19日
发明者约汉·尤阿库姆, 菲利普·埃德霍尔姆, 弗朗索瓦·奥德特 申请人:北电网络有限公司