数据访问处理的制作方法

文档序号:7579325阅读:246来源:国知局
专利名称:数据访问处理的制作方法
技术领域
本发明涉及依赖于等待时间的通信量的访问,这些通信量诸如是来自基于因特网的远端服务器和应用的语音和视频会议数据。
背景技术
当前,如果具有高比特率(2Mb/s)ADSL(非对称数字用户环线)连接的用户试图基于因特网来发送或者接收实时数据,则当由于基于共享中间链路的拥塞和与其他用户的容量竞争的原因而可能使数据分组延迟时,结果也许不令人满意。由于这种时延取决于随时存在的其他通信量,所以该时延是可变的。改变基础网络来优化实时通信量是可能的,例如参见国际专利申请WO99/12329,但这需要对核心网际协议(IP)网络的改变。
已经建立了使用多个虚连接和访问连接来支持提高的吞吐量的概念,并且以ATM(IMA)(ATM-Forum AF-PHY-0086.0010)的反向多路复用的形式来实现该原理对于因特网访问来说,最终用户将得到单个IP地址,而访问服务器将数据重新汇编为用于通过因特网进行路由的一个流。应当注意,访问服务器是定向于ATM接入网的连接与IP路由核心之间的网关。因此,如果瓶颈实际上在于访问服务器与通过因特网来访问的应用之间,则可能不存在优势。
大多数接入网能够允许最终用户(如果他这样选择的话)通过使用相同的或不同的因特网服务提供商来同时多次获得访问。用户每次登录都将获得另一IP地址。对于核心IP网来说,这些地址全都看似是单独的用户。当负载较重时,该核心网就在争取访问的地址之间将其带宽划分为接近相等,因此登录三次的用户将获得的带宽是仅登录一次的用户所获得的带宽的三倍。多次登录机制可以是多个异步传输模式(ATM)的永久虚连接或者交换虚连接(PVC或SVC),或者是PPPoE(基于以太网的点对点协议)。从三个单独IP地址接收对特定流的请求的基于Web的服务器或者对等应用期望这些请求来自三个不同的用户,并且相应地采取动作。例如,视频会议网桥将三个新用户添加到所请求的会议,并且将从每一个用户接收的视频/语音数据转发到另外两个用户。应当注意,信号是相互复制的,所以不允许该用户获得额外的带宽来传送任何额外信息,除非采取了额外的措施。(这种额外的措施是申请人在与本申请相同的日期提交的共同未决的国际专利申请的主题,并且要求来自英国专利申请0223536.5的优先权)。尽管各个数据流是相同的,但是可变时延意味着不同的连接在不同的时刻最接近于实时。如果最初的最优连接随后由大量的大分组堵塞(swamp),则在那个流中稍后的分组与在另一个流中的其等价物相比,可能被延迟得更多。

发明内容
根据本发明,对用于基于分布式信息网络从基于Web的服务器或对等应用访问数据的用户终端具有用于生成多个访问请求的装置,这些访问请求用于请求基于多个路由的来自一个源的分组数据的多个复制序列,各个序列包括有序分组集合的各个分组的一个实例(instance);用于接受这些序列中的各个分组的将被接收的第一实例的装置;以及用于将所接受的分组汇编(assemble)为完整序列的装置。
本发明的另一方面提供一种基于分布式信息网络从因特网应用访问数据的方法,其中,生成多个访问请求,这些访问请求用于请求基于多个路由的来自一个源的分组数据的多个复制序列,各个序列包括有序分组集合的各个分组的一个实例,并且其中,接受这些序列中的各个分组的将被接收的第一实例,并且将所接受的分组汇编为完整的序列。
本发明依赖于利用实时数据来进行互相通信的用户终端和源服务器,以便选择路由来发送数据。发送应用同时基于两个或者多个路由来发送实时数据。因为相同的分组通过所有路由都被严重延迟的概率相对较小,因而接收应用在可接受时间内具有接收各个分组的改进机会。
在优选方案中,用户终端具有用于确定基于第一路由的分组时延和变化的装置,如果该分组时延和变化超出在接入网中可接受的限度,则生成一个请求来请求利用一个或者多个其他路由进行访问。这允许最终用户选择一次或多次登录一个或者多个因特网服务提供商。每次登录时都给他另一IP(网际协议)地址。核心IP网进行响应,好像各个地址是单独的用户。
利用微小的改变,大多数接入网络都具有允许最终用户(如果他这样选择的话)利用相同或者不同的因特网服务提供商来同时获得若干次访问。用户每次登录时,他会得到另一IP地址。对于核心IP网来说,这些地址全都看似是单独的用户。
如果用户多次登录相同的因特网服务提供商(ISP),则为该用户会被分配相同的端路由域上的多个地址,所以数据很可能在因特网上采用相同的路由,降低了可能的多样性的优点。然而,如果用户登录三个不同的ISP,则会存在数据采用不同路由通过因特网的更大的可能,因此将经历不同的时延状况。
多次登录的这种机制可以是任何现有的系统,例如多路异步传输模式(ATM)永久或者切换虚连接(PVC或者SVC),或者PPPoE(基于以太网的点对点协议)。
向最终用户发送数据的应用将登记两个或多个向其发送复制数据的地址。将接收应用设置为使用所接收的第一个分组,并且放弃随后接收的复制。应当注意,可以按照与第一个分组的实例到达的顺序不同的顺序来传送来自各个路由的随后分组的实例。因此,一个分组流可以在另一个分组流传送其第一个分组之前传送该流的第一个分组,而该流的第二分组可以被延迟到这样的程度使得该第二个分组在另一个流的(复制)第一个分组和第二个分组被传送之后才到达。对于各个分组来说,汇编到达用户终端的第一实例,以便生成与在其自身上生成的单独流的任何时延和时延变化相比,具有更低的时延和更低的时延变化的集合数据流。
可能的是在一个访问路由上的分组序列传送实质上落后于其它访问路由上的分组序列,使得不使用来自那个路由的分组。在这种情况下,可能需要对那个访问路由上的传送处理进行调整。可以简单地关闭该连接,从而节省带宽,并且如果按已传送分组的时间或数量来付费的话,也节省了成本。作为选择,访问服务器可以被请求来省略特定数量的分组(其已经基于其他复制路由之一被接收)。
在一个或者多个分组流中可能忽略了或者破坏了多个分组。因此,对于分组的第一实例来说,可能在一个路由上不按顺序到达,也就是说,在应该在其之前的基于另一路由的该分组的第一个(未破坏的)实例到达之前。如果准确度很重要,则失序的分组可能被缓存,直到应该在它之前的该分组的第一个实例到达为止,从而可以在输出序列中将其汇编在正确的位置上。然而,在一些实时信令的形式中(例如视频会议),速度要优先于准确度。在这种情况中,失序的分组可以在其基于第一路由到达之后立即被输出,而在应该在该分组之前的该分组的所有实例(包括第一实例)基于另一路由最终到达时将它们忽略。
如果在一个或多个信道上要求额外的带宽,则本发明可以与之前引用的、申请人的共同未决的国际申请结合使用,其要求了英国申请0223536.5的优先权,例如,通过使用六个馈送(feed)(IP地址),将数据流分成两个以使带宽加倍,然后根据本发明将这两部分数据流的每部分复制三次以减少时延。


现在将参照附图、借助于示例来描述本发明的实施例,其中图1是现有技术中的单ISP连接服务的示意图;图2是三个交换式虚连接(SVC)到三个网际协议(IP)地址的连接的示意图;图3是根据本发明的利用复制数据流来操作的系统的示意图;图4是示出了本发明一个实施例的操作方法的流程图;图5是示出了一种输入比特流的汇编方法的流程图;图6是示出了一种另选的输入比特流汇编方法的流程图。
具体实施例方式
在所有这些图中,仅在一个方向上示出了数据。应当理解对于像视频会议这样的应用来说,通常在反方向上存在类似的数据流。
如图1的常规系统中所示,在ADSL用户的用户终端1和访问服务器11之间建立单永久虚电路(PVC)10。该访问服务器11终止PVC 10和在该PVC上封装的点对点协议(PPP)(12)信令。该访问服务器11还给最终用户终端15一个IP地址1X,以使其能够连接到因特网(通常以14示出),并且将数据发送到任何其他的因特网应用,例如视频会议应用17(图3)。
利用交换式虚电路(SVC)ADSL多路复用器(DSLAM)20,最终用户终端15能够同时连接到多个访问服务器21、22、23。图2示出了登录到三个不同的因特网服务提供商的用户。同样通过使用PPP,将用于各个连接的唯一可路由IP地址21X、22Y、23Z供给用户。增加的连接数量边际地增加竞争级别(试图访问数据的个别IP地址的数量),其反过来可以影响忙时在各个信道上的数据速率。
对于实时数据来说,数据通过网络所花费的时间(称为网络的“等待时间”或者“时延”)非常重要。由于数据不得不通过额外的距离,所以卫星系统的等待时间比其他系统明显更差。(到对地静止卫星的往返距离大约是0.25秒)。如果将数据拆分并且基于不同的路由来发送数据的不同部分,则存储重新获得的数据直到接收全部数据为止的过程,将导致由最差的服务提供商所规定的传输等待时间。
图3示出的系统通过若干次请求相同的数据来避免这个问题。而因为数据被复制,所以可能出现资源的低效率使用。然而,本发明仅使用某些有效的性能,这些性使用户能够最小化时延而不是优化某些其他特性(例如画面质量)。
发送该数据(例如视频会议应用17)的因特网应用通过三个不同的路径21、22、23将数据发送出去。由于可变通信量加载的原因,网络的等待时间动态变化。因此,可以以不同的时延来接收序列数据帧,而不总是在最快的任何给定的路径21、22、23。正如现在将参照图4所描述的,接收应用15处理首先接收的序列数据帧(分组),而忽略随后经由其他路由接收的相同的数据帧。图3也示出了根据本发明操作的示例性数据流。
正如图4中所示,用户终端15首先登录至一个或者多个ISP 21、22、23,并且获得用于每个ISP的用户地址X、Y、Z(步骤40)。然后,基于其中一个ISP网络21请求访问因特网应用17(步骤41)。所请求的数据从该因特网应用17返回给用户终端15,并且将这些分组重新汇编为数据流16(步骤43)。然后,用户终端15确定数据到达的速率是否是可接受的(步骤44)。如果是可接受的,则借助于显示屏或其他的人机界面将其提供给用户(步骤47)。如果速率不可接受,则通过使用不同的ISP22来请求访问相同的因特网应用17(步骤45)。(可能在一时刻或与图4所示的第一ISP相同的时刻登录到第二ISP)。所以,现在通过两种不同的路由21、22将相同的数据从因特网应用17发送到用户终端15。继续进行这个循环直到达到可接收的速率(或者用户用完可以使用的ISP)为止。
现在将参照图5和6更加详细地描述汇编步骤43。图5和6中的某些步骤是相同的以相同的两位未位数字来标记其中步骤相同的情况。
数据流的各个分组具有位置值R,其标识了各个分组进入数据流中的位置。在本发明中,传送了多个相同的数据流,从而应当存在具有各个值R的分组的多个实例。用户终端应当识别并使用各个值R的第一实例并且放弃其余实例。该用户终端保持用户终端15期待的位置值R的运行总数N,换句话说,到接收完为止的最大的R值是N-1。如图5和6所示,最初在值1处进行设置(步骤431/631)。
当接收到分组时,(步骤432/632)将位置值R与运行总数N进行比较(步骤433/633)。如果R与N相等,则表示这是到达的那个分组的第一实例,将该分组添加到输出数据流(步骤435/635)并且运行总数加1(步骤436/636)。如果位置值小于运行总数,则表示先前已经接收了具有相同位置值的分组(因此是当前分组的复制),并且可以放弃该分组(步骤439/639)。
在图3示出的示例中,在路径21、22、23中第一分组被延迟了不同的量,并且用户终端15首先在路径21上接收第一分组(分组1),并且将其汇编为输出数据流16的第一信元(element)。稍后在另外两个路径上到达的分组1′、1″是冗余的且不予处理。路径21上的第二和第三分组(分组2、3)也在其他路径22、23上的复制(2′、3′、2″、3″)之前到达。然而,通过路径21的第四分组(4)被延迟了,并且该分组到达的第一实例由路径23上的分组4″代替。然后,分组4″被添加到经汇编的输出流16。类似地,首先看到在路径23上的第五分组(分组5″),并且将其添加到输出流16。当复制分组(4、4′、5、5′)最后到达时,再次不予处理。
在图3的示例中,路径23现在也经历时延,并且路径21尚未从较早的时延中恢复,所以到达的分组6的第一实例是在剩余路径22上(分组6′),并且将其适时地添加到输出流,当分组6、6″到达时不予处理。
因此,最终用户15从三个网络的任何一个中获得可能最低的时延。
应当理解实际的数据流包括数千个单个分组,并且与这里示出的一个或者两个分组相比,在一个路径与另一路径之间的相对时延的变化很可能在更长的时间量程上出现。
由于甚至是基于相同虚连接的交换时延的变化,有时分组会被破坏、会一同丢失或者以错误的顺序到达。这可能导致在该顺序中预期稍后的分组到达,而不是所预期的分组到达。换句话说,位置值R大于运行总数N。图5和6示出了在这种情况下处理这种分组的两种不同的方式。
在图5中,如果分组不按顺序到达,则在校验位置值R′时(步骤433)将会发现该位置值R′大于运行总数N。仍然将其添加到输出流16,并且运行总数N增加为下一个分组(R′+1)的位置值。这意味着所预期的该分组的所有实例(其具有位置值R,(R<R′))将被放弃(步骤439)。该设置确保了被破坏的分组不会延迟输出流,但由于忽略了的分组,所以会损失某种准确度。
在图6的设置中,对于与图4中相同的步骤,将相同的附图标号增加200后给出,如果发现位置值R′大于运行总数N,则将该分组添加到缓存器(步骤634)而不是输出流16。当随后的分组被添加到输出流16(步骤635)并且使运行总数增加时(步骤636),进行校验以发现下一个分组(具有等于已加1的运行总数的位置值R)是否已经在缓存器中存在(步骤637)。如果该下一个分组已经被缓存,则将其添加到输出流(步骤635),而无需等待要传送给该分组的第二个实例。在下一个分组到达之前,可以以这种方式来传送多于一个的被缓存的分组(步骤632)。该设置可以实现比图4的方案更高的准确度,而没有失去图4处理过程所拥有的所有速度优势。
权利要求
1.一种用户终端,用于基于分布式信息网络从因特网应用来访问数据,该用户终端具有用于生成多个访问请求的装置,这些访问请求用于请求基于多个路由的来自一个源的分组数据的多个复制序列,各个序列包括有序分组集合的各个分组的一个实例;用于接受这些序列中的各个分组的将被接收的第一实例的装置;以及,用于将所接受的分组汇编成一完整序列的装置。
2.根据权利要求1所述的终端,包括用于确定基于第一路由的所述分组时延和变化的装置,如果该分组时延和变化超过接入网中的可接受的限度,则生成一个请求来请求利用一个或者更多个其他路由进行访问。
3.据权利要求1或2所述的终端,包括用于标识其上传送的分组序列已经实质上落后于其它分组序列的访问路由的装置;以及,用于请求对该访问路由上的传送处理进行调整的装置。
4.根据前述任一项权利要求所述的终端,包括用于检测失序的分组的第一个实例的到达的装置;以及,用于对所述失序的分组进行缓存的装置,直到在应该它之前的任何分组的第一实例到达为止。
5.据权利要求1至3的任一项所述的终端,包括用于检测分组的第一实例的失序到达的装置;以及,用于对应该在所述失序分组之前的任何分组的所有实例的随后到达不予处理的装置。
6.一种基于分布式信息网络从因特网应用访问数据的方法,其中,生成多个访问请求,这些访问请求用于请求基于多个路由的来自一个源的分组数据的多个复制序列,各个序列包括有序分组集合的各个分组的一个实例,并且其中,接受这些序列中的各个分组的将被接收的第一实例,并且将所接受的分组汇编成一完整序列。
7.一种基于分布式信息网络从因特网应用访问数据的方法,其中,首先对于待基于第一路由接收的数据分组序列发出第一访问请求;对基于该第一路由接收的分组的分组时延和变化进行测量;并且,如果所述分组时延和变化超出了预定限度,则根据权利要求6所述的方法来获得用于复制分组数据序列的一个或者更多个请求。
8.据权利要求6或7所述的方法,其中通过使用不同的访问服务器来获得复制的分组序列。
9.据权利要求6、7或8所述的方法,其中,如果在一个访问路由上的分组序列传送实质上落后于其它访问路由上的分组序列,则对该访问路由上的传送处理进行调整。
10.据权利要求6、7、8或9所述的方法,其中,如果所述分组的第一实例的到达失序,则对所述失序的分组进行缓存,直到接收到应该在它之前的任何分组的第一实例到达为止。
11.据权利要求6、7、8或9中的任一项所述的方法,其中如果所述分组的第一实例的到达失序,则对随后到达但应该在所述失序分组之前的任何分组的所有实例不予处理。
全文摘要
一种用户终端(15),其通过发出多个访问请求来请求来自同一因特网应用(14)的多个复制的分组数据序列(1,2,3,…;1′,2′,3′,…;1″,2″,3″),来基于诸如因特网(17)的分布式信息网络从因特网应用(14)访问数据,各个序列包括有顺分组集合的各个分组的一个实例(1、2、3、4、5、6)。接受序列(1,2,3,4″,5″,6′)中的各个分组的将被接收的第一实例,并且将所接受的分组汇编程成一完整序列(16)。这就确保了在任何一个链路(21、22、23)上的时延不会延迟该消息的接收。
文档编号H04L29/06GK1708954SQ200380102629
公开日2005年12月14日 申请日期2003年10月8日 优先权日2002年10月31日
发明者乔纳森·安德鲁·克拉克 申请人:英国电讯有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1