首页> 中国专利> 用于使用分层传动装置来分析和管理公共网络上的移动设备的服务传输的实时网络质量的方法和装置

用于使用分层传动装置来分析和管理公共网络上的移动设备的服务传输的实时网络质量的方法和装置

摘要

用于提供分层传动机构以分析网络损失和等待时间情况的方法和装置包括:在源处将数据打包为不同深度的数据分组,其中每一深度的数据分组属于特定的数据类型。不同深度的数据分组在网络上被分层地传输到目的地。随着所述数据沿着网络前进,针对每一层的所传输的数据分组的信息被不断地收集并被分析,以识别对应的网络传输特性。基于所述网络传输特性,调整所述层中的任一个的后续数据分组的传输。所述调整基于所传输的数据分组的所分析的信息而被重复一次或多次。每一层的转移度量被用于跨越所述层对传输度量的相对分析以设置所述调整。

著录项

  • 公开/公告号CN103875204A

    专利类型发明专利

  • 公开/公告日2014-06-18

    原文格式PDF

  • 申请/专利权人 弗雷姆霍克公司;

    申请/专利号CN201280034078.4

  • 申请日2012-06-08

  • 分类号H04L1/00;

  • 代理机构中国专利代理(香港)有限公司;

  • 代理人马红梅

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-17 00:45:42

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-05-10

    授权

    授权

  • 2014-07-16

    实质审查的生效 IPC(主分类):H04L1/00 申请日:20120608

    实质审查的生效

  • 2014-06-18

    公开

    公开

说明书

技术领域

本发明涉及网络上的数据通信,并且更具体地涉及用来统计地分析UDP网 络损失和等待时间情况的传动机构。

背景技术

由于合成链路的可变性质,跨越公共因特网的通信已变得具有挑战性。蜂 窝网络加剧了下述问题:由于物理传输特性而引起的损失以及来自大量的手持 计算设备(例如智能电话和平板)的表现的拥塞。

传统通信严重依赖于针对所保证的传输的传输控制协议基于因特网协议 (TCP基于IP)。在TCP协议中,计及并跟踪所传输的每个分组直到完成。由 于应用已变得对延迟和超时敏感,因此TCP/IP已成为难以依赖的网络层。这是 由于下述事实:在数据传输期间遇到的任何损失和延迟情况导致由于在可使用 之前分组的重传和重排序的等待时间而引起的有效事务处理速率中的过度延 迟。

此外,在更远的距离处,TCP定时窗口的问题变得夸张。远距离处的大多 数应用遭受较差的用户体验,大多数涉及点击响应。其原因在于:对丢失或延 迟的分组做出反应的能力受限于知道那些分组丢失或延迟。对于丢失或延迟的 分组,可以通过多个行程来加重为了建立传输状态而对往返通信的依赖。

可替换的协议(例如用户数据报协议(UDP))由于缺少验证而针对其在可 靠网络中的速度和低开销是优选的。然而,随着网络变得不可靠并且集线器成 为组网传动的主要动力,其中所有端口看到相同的广播业务,UDP协议变得不 那么期望。尽管UDP具有低开销,但是因为随意、随机损失和拥塞造成了延迟、 抖动、无序的分组和损失,所以在公共因特网和蜂窝网络上使用该协议是困难 的。

虽然有许多需要绝对事务保真度的应用,但是还有很多其他应用,其中定 时和完整性并非高优先级。离散的和连续的数据集(例如图像传输、视频、音 频等)二者可以具有这样放松的要求。

因此,存在对于下述设计的需要:该设计利用UDP设计针对速度的优点, 并将其与利用某种统计建模以建立比往返更快的响应的良好的传输服务质量 (QoS)管理相结合。

正是在该背景下,本发明的实施例出现。

发明内容

本发明的实施例包括用于提供分层传动机构以分析网络损失和等待时间情 况而不必等待和计及每个所传输的分组的方法和装置。所述传动机构产生统计 模型,该统计模型识别损失、等待时间和网络统计的系统状态,使得可以采取 适当的步骤以基本上实时地对网络传输进行调整,从而改进更好性能的可能性。 通过利用相同传动装置的多个深度处对数据的差别分析并构建围绕正常行为系 统的假设,来构建统计模型。将所述差别分析与分组往返完成的实际测量相结 合,从而优化网络上的数据传输。实时地测量每一层的定时的节奏和变化量, 并将其与跨越各个层对系统的相对差别的分析相结合,以提供对系统行为的深 度理解。这种分析提供了系统作为整体的状态的实时映射,并比系统的任何个 体分组的往返行程更快地提供了统计上相关的数据。

所述机构还考虑了对于被包括在传输中的一些数据的数据抽象的级别,并 提供了下述能力:忽略这种数据的重传,如果这种忽略在减小拥塞和损失贡献 方面提供了优势的话。所述机构不仅提供了在传动装置的接收端处有效地测量 数据的能力,而且识别了数据流的源侧上的问题(例如,松弛),这使得比往返 的完成更快的传输问题(例如由于拥塞、数据丢失、等待时间等而引起的延迟) 的检测成为可能。已经示出,利用当前的传动机构,传输时间可以被减小到往 返时间的至少一半,如果不是更好的话。

若干不同实施例在本文中作为示例而提出。

在一个实施例中,公开了一种用于提供分层传动机构来分析网络损失和等 待时间情况的处理器实现方法。该方法包括:在源处将数据打包为不同深度的 数据分组。每一深度的数据分组属于特定数据类型。在网络上将不同深度的数 据分组分层地传输到目的地。将所传输的数据分组的每一层与特定深度相关联。 随着数据沿着网络前进,收集每一层的所传输的数据分组的信息。对于每一层 的数据分组,分析所收集的信息,以识别每一层的网络传输特性。所述网络传 输特性标识了每一层的传输度量。基于所述网络传输特性,调整所述层中的任 一个的后续数据分组的传输。所述调整基于所传输的数据分组的所分析的信息 而被重复一次或多次。每一层的转移度量被用于跨越所述层对传输度量的相对 分析以设置所述调整。

在另一个实施例中,公开了一种具有能够由计算系统的处理器执行的程序 指令的非瞬变计算机可读介质。所述计算机可读介质包括用于在源处将数据打 包为不同深度的数据分组的程序指令。每一深度的数据分组属于特定类型。所 述计算机可读介质还包括用于在网络上将不同深度的数据分组分层地传输到目 的地的程序指令。数据分组的每一层对应于每一深度。所述计算机可读介质进 一步包括下述程序指令:其用于随着所述数据分组沿着网络前进而收集每一层 的所传输的数据分组的信息并对于每一层的数据分组分析所收集的信息以识别 每一层的网络传输特性。所述网络传输特性标识了每一层的任何传输度量。所 述计算机可读介质包括用于基于所述网络传输特性调整所述层中的任一个的后 续数据分组的传输的程序指令。用于调整的程序指令包括用于基于所传输的数 据分组的所分析的信息调整所述传输一次或多次的程序逻辑。每一层的传输度 量被用于跨越所述层对传输度量的相对分析以设置所述调整。

通过结合附图和权利要求作出的以下详细描述,将容易地理解本发明。

附图说明

通过结合附图的以下详细描述,将容易地理解本发明。

图1图示了在本发明的一个实施例中,用于提供分层传动机构以分析网络 损失和等待时间情况的标识各个模块的系统和该系统中的各个模块之间的交互 的简化框图。

图1a图示了图1的系统的逻辑表示,其标识了在网络上的数据分组的传输 期间所使用的模块。

图2图示了在本发明的一个实施例中,用于数据传输和用于分析网络损失 和等待时间情况的传动机构的实施方式。

图2a图示了在本发明的一个实施例中,针对网络上的传输而识别的不同数 据类型。

图3图示了在本发明的一个实施例中,基于所传输的数据分组的分析,随 时间针对不同数据类型而收集的传输度量的表示。

图4图示了在本发明的一个实施例中,在用于封装不同类型的数据的顺从 规则内可用的不同数据封装秘方。

图5图示了在本发明的一个实施例中,由传动机构的调整器和/或打包模块 执行的校准和随时间的数据使用历史的图形表示。

图6图示了在本发明的一个实施例中,提供分层传动以分析网络损失和等 待时间情况所涉及的各个步骤的处理流程图。

具体实施方式

现在将描述用于提供分层传动机构以分析网络损失和等待时间情况(特别 是使用协议,例如UDP协议)的若干示例性实施例。对于本领域技术人员来说 将显而易见的是,可以在没有这里阐述的一些或全部具体细节时实施本发明。 尽管实施例是参考特定协议来全面描述的,但是本发明的教导可以扩展到遭受 类似缺点的其他协议。

本发明定义了用于提供分层传动机构以基本上实时地分析网络损失和等待 时间情况并补偿损失和等待时间的方法和系统。图1图示了在本发明的一个实 施例中,提供分层传动的系统的简化框图。所述系统包括在服务器100上提供 的传动机构110。传动机构110可以被体现为硬件组件、软件模块或硬件组件和 软件模块的组合。为了讨论源和目的地之间的通信的数字过程的目的,参考模 拟传动装置。应当理解的是,由硬件和/或软件执行的数字处理不是机械传动装 置或模拟传动装置。相反地,其被用来描述数字处理,该数字处理模仿或类似 于由软件和硬件进行的处理,具有将可能发生在物理传动机构中的对应功能。 传动机构110包括多个模块,每一模块具有用于提供用来在网络140上从源到 目的地150分层地传输数据且分析从目的地150接收回的信息的分层传动的不 同功能。在一个实施例中,所述源是传动机构110被设置在其上的服务器100, 并且目的地150是移动设备中的任何一个,包括但不限于智能电话、蜂窝设备、 平板等。传动机构110内的功能模块包括打包模块115、传输模块120、分析模 块125和调整器模块130。各功能模块彼此交互以及与目的地设备进行交互,以 提供分层传动并分析在使用分层传动的数据传输期间经历的网络损失和等待时 间情况。

现在参考图1a,打包模块115被配置为以不同深度封装数据以用于在网络 140上传输。在一个实施例中,网络140是移动设备(例如智能电话、移动电话 等)在其上交换数据的蜂窝网络。在一个实施例中,打包模块115与存储在数 据库112中的数据交互以识别要被传输的数据,并与规则数据库115-a交互以识 别在将数据打包为数据分组期间需要遵守以使数据分组能够在网络上传输的一 个或多个顺从规则。例如,该规则可包括协议和网络相关顺从规则,例如针对 在传输中使用的网络的最大流传输容限。其他规则可包括所允许的数据类型、 每一数据类型的每一分组中的数据深度(也被称为有效载荷内的数据的宽度或 量,即,大/小中的任一个)、分组的格式(即,首部的格式),仅举几例。在一 个实施例中,不同的数据类型可以被分配有不同的深度。在一个实施例中,深 度可以是对于每一数据类型而预定义的,并且对应的规则将提供该信息给打包 模块。上面提及的规则是示例性的,且不应被认为是穷尽的。因此,可以定义 用于打包不同类型的数据的附加规则。

传动机构内的打包模块115识别针对传输而调度的不同数据类型,并从规 则模块检索对应规则。打包模块115使用所述规则来封装不同类型的数据以产 生不同深度的数据分组,使得以具体深度封装每个数据类型。应当指出的是, 分组的深度与数据分组的有效载荷部分内的数据的宽度或量相关。根据用于在 网络上通信的协议,数据分组可以包括有效载荷数据和总务(housekeeping)数 据。总务数据可包括能够指定数据的源和目的地等的首部数据。此外,总务数 据可以包括循环冗余码(CRC)等。有效载荷内的数据的量可以在针对用于通 信的特定协议而指定的界限内变化。在一个实施例中,以不同深度封装不同层 中的数据分组,其中,每一层中的有效载荷部分内的数据处于作为预定义最小 宽度的片段组合的特定深度或宽度。根据规则而打包的数据分组被转移到传输 模块220以用于使用网络协议在网络上传输。

如图1a中所图示的,传输模块120接收所述数据分组并将不同深度的数据 分组分层,以使得每一深度的数据分组被放置在特定层中。所述传输模块以一 致的方式将网络上的分层数据分组放置到网络栈中。根据网络通信协议将所述 数据分组传输到目的地设备150,并且,目的地设备在与该数据分组被接收到时 相同的深度和层处以相同的一致方式将响应数据分组中的响应放置回到网络 上。例如,如果在目的地处接收到的每个数据分组的深度(即宽度)是A,则 针对对应数据分组来自目的地的返回数据分组也具有宽度A。然而,应当指出 的是,从源(即服务器)发送到目的地(即移动设备)的数据分组的内容与从 目的地回到源的响应中返回的数据分组的内容不同。从源发送到目的地的数据 分组包括有效载荷数据和总务数据,其中所述总务数据提供关于有效载荷数据 的信息,包括数据类型、源信息、目的地信息等,并且,从目的地回到源的响 应中返回的数据分组可以仅包括总务数据。此外,来自目的地的响应包括返回 数据分组,该数据分组是以从源接收它们的相同节奏发送的。在一个实施例中, 所述传动机构可以选取数据分组的小窗口以通过网络来跟踪,并提供传输信息。

基本上实时地,在传输模块120处收集返回的数据分组以及与网络传输相 关的其他信息并将其转发到分析模块125以用于进一步分析,以便确定网络传 输特性。在一个实施例中,信息的收集需要收集与网络传输特性相关的数据, 随着每一层中的数据分组沿着网络前进,该数据确定在每一层中对数据分组的 网络行为。这并不要求在数据分组行经网络时收集实际数据分组。在另一个实 施例中,信息的收集可能需要一个或多个数据分组的收集,以用于进一步检查 和分析。在一个实施例中,不断地实时进行信息收集,并且在任何潜在问题能 够在网络上爆发而可能导致数据损失/等待时间之前,基本上实时地分析和主动 调整所收集的信息。在可替换实施例中,周期性地、偶发地、即时地等等进行 信息收集、分析和调整。收集与数据分组相关的信息、分析和调整的频率由提 供平滑数据流和最大化网络资源的需要来驱动。

除了节奏信息,传输模块还跟踪从源发送和在来自目的地的响应中接收回 的数据分组的计数。对于在每一层中发送的每一数据类型,分析模块125基本 上实时地收集每一层的包括与从源发送和在源处接收的数据分组相关联的输入 节奏和输出节奏、输入计数/输出计数等的所有信息。分析模块125分析每一层 的所收集的信息,以确定每一层处的网络传输特性。如图1a中所图示的,所述 网络传输特性标识每一层的传输度量(TM1、TM2、TM3等),例如,在数据 流在网络上行进时标识“松弛”和“紧张”/“压力”的各种数据类型的变化量。 传输度量强调了影响系统中的通信的网络情况,例如拥塞。分析模块125观察 各种数据类型以及针对每一层和跨越不同层的对应变化量,以识别每一层中的 网络传输特性,例如驻波传播模式、一致性的损失特性、尖峰容限的损失特性、 振荡模式的损失和等待时间特性、各种尺寸损失孔的统计可能性、损失/等待时 间的衰退和流动模式等。上面列举的网络传输特性是示例性的,且不应被认为 是穷尽的。基于分析和观察,可以识别出其他特性。可以组合这些环境特性以 阐明定义传输度量的一些感兴趣的物理系统特性,例如随机损失模式、确定性 损失模式、每分组大小/数据类型的损失的统计可能性、拥塞的模式、对某些类 型/大小的网络行为的相关刺激/响应等。

通过观察每一传输层中和跨越不同传输层的对应数据类型的数据和变化 量,可以使用确定性损失作为上界来建立最大吞吐量。由于数据是通过该系统 而发送的,因此确定性边界可以由传输链的各个层不断评估,而不公然地威胁 总体传输链。可以基于不断的评估来实现最大吞吐量。

来自分析模块125的结果被转发给传动机构内的调整器模块130,以针对层 中的任一个调整后续数据分组的传输,从而实现最大吞吐量。在一个实施例中, 基于分析,调整器模块130可以与传输模块交互,以调整后续数据分组的传输。 调整器模块130查看由网络传输特性内的传输度量定义的每一层中的各种数据 传输模式,并在控制每一层中的传输的总体质量的多个区域中做出决定。例如, 调整器模块130可以通过下述操作来选择基于分析来主动地传输特定层的一些 数据分组:调整该特定层中的后续数据分组的传输以包括该特定层的附加数据 分组,使得在网络上传输的后续数据分组可以改进网络上的传输的质量。可替 换地,基于从目的地接收到的指示这些数据分组在传输中确实丢失的响应,调 整器模块130可以选择以回应性的方式传输数据分组中的一些以调整网络传输 特性。

此外,基于所收集的数据和网络传输特性,调整器模块调整要传输的数据 分组的大小和量以及要传输的数据分组的格式。基于传输附加数据分组的需要, 可以识别和打包附加数据分组以用于以增加向目的地的成功传输的可能性的方 式传输。分析模块可以与传输模块和打包模块交互,以便以符合针对特定层的 顺从规则且与网络的传输协议相一致的方式识别附加数据分组并封装附加数据 分组。

调整器模块可以分析在不同时间收集的转移度量,以确定可在目的地处产 生最优结果的传输模式。图3图示了随着数据分组在网络上前进,根据数据分 组的周期性分析随时间从分析模块获取的转移度量网络传输特性。基于所述周 期性分析,传动机构可以识别提供在图3的时间t1中的椭圆框中突出显示的传 输度量的传输模式,从而得到最优的传输效果。

传动机构也可以使用调整器模块来确定在每一层中提供的每一数据类型的 最优深度。打包模块可以被用来基于顺从规则、以不同的深度封装具有不同数 据类型的数据。顺从规则可以针对每一数据类型提供不同的秘方,并且打包模 块可以在不同时间上使用测试所述秘方中的每一个以确定哪个秘方在目的地处 提供了最优结果。图4图示了定义针对在顺从规则中可用的不同数据类型的深 度的各种组合的不同秘方。在传输的初始化设置期间或者周期性地在传输期间, 打包模块可以使用各种秘方来在每一层中封装每一数据类型以产生数据分组。 所述数据分组由传输模块放置在各个层中,并且随着数据分组通过网络前进, 网络响应被周期性地监测。从所述监测收集的信息被馈送给分析模块,该分析 模块确定用于封装不同数据类型的数据到对应数据分组中的最优方法。基于由 分析模块提供的分析,调整器模块对数据分组做出调整。

图5图示了调整器模块对数据分组执行调整以用于在网络上传输以在目的 地处获取最优结果的各个时间的图形表示。图5的顶部曲线图随时间捕获数据 使用历史。基于所述数据使用,分析模块可以确定标识在每一层中从源传输的 每一数据类型的不同传输度量的网络传输特性。调整器模块可以基于所述传输 度量来周期性地调整数据分组的传输,以便充分利用网络带宽而没有数据丢失 的可能性。如图5中所示,基于在时间t0、t1、t2、t3等处的数据使用,调整器 模块可以基于传输度量来调整数据分组的打包和传输,以优化高效地使用网络 资源实现恰当QoS效果的结果。

还可以做出附加的调整以适应由许多网络系统展示的附加系统特性,其中, 网络系统允许基于所建立的流传输容限和在所建立的流传输容限上的传输的短 突发。基于传输的需要和网络系统特性,可以尝试利用一些主动技术(例如, 使字节流平滑、冗余传输或这里没有讨论的任何其他技术)忽略突发或处理确 定性损失的可能性。

因此,在不同时间收集的每一层的定时系统的节奏和变化量与跨越具有相 对差别的层的节奏和变化量的分析相结合可以提供系统行为的网状物,其提供 了网络系统作为整体的状态的实时映射,并在目的地处比网络系统的任何个体 分组的往返行程更快地提供了网络状态的统计上相关的数据。在网络上的数据 传输的过程期间以连续的方式收集和分析每一层的和跨越不同层的节奏和变化 量,连续地更新网络系统状态的实时映射,以便允许对数据传输的实时调整以 便使网络传输优化成为可能。

图2图示了在本发明的一个实施例中,上面描述的用于数据传输和用于分 析网络损失和等待时间情况的传动机构的实施方式。数据传输和分析的过程开 始在源(例如服务器2.1)处,其中,识别用于传输给目的地设备的数据。所述 数据可以具有不同的类型,例如新闻文章、RSS馈送、视频馈送、音频馈送、 图像等,并且,响应于目的地设备处的点击,可以识别多于一种类型的数据以 用于传输。图2a图示了在被选择以传送到目的地的数据内可识别出的不同数据 类型。在图2a中图示的一个实施例中,数据包括数据类型,例如视频、音频和 文本。图2a中图示的数据类型是说明性的,且不应被认为是限制性的。可以识 别附加的数据类型,只要该数据类型能够根据顺从规则而打包和在网络上传输。 每一数据类型被封装为特定深度的各个数据分组。在图2中图示的一个实施例 中,在深度“A”处封装属于第一数据类型的数据,在深度“B”处封装第二数 据类型的数据,以及在深度“C”处封装第三数据类型的数据。不同数据类型由 传动系统以一致的方式使用特定宽度的片段线性组合来打包/封装。图2中图示 的各种数据类型的数目和深度是示例性的,且不应被认为是限制性的。根据针 对传输而识别的数据,可以将附加的数据类型包括在不同深度处。例如,如果 针对传输而识别的数据包括文本数据、视频数据和音频数据,则可以在深度“A” 处封装文本数据,在深度“B”处封装视频数据,并且在深度“C”处封装音频 数据,其中,深度B和C是宽度A的片段组合,使得深度A<B<C,如图2 中所图示。深度可以根据网络的顺从规则、针对不同数据类型中的每一个而预 定义并被存储在数据库(例如服务器处的规则数据库)中。服务器处的传动机 构在打包不同类型的数据以用于传输时查阅规则数据库中的规则。所述传动机 构识别针对不同功能传输不同信号的需要,并使用相同技术、以不同方式将表 示不同类型的数据的不同数据信号打包为不同深度处的数据分组的对应集合。 因此,安全地说,特定深度处的数据分组的每一不同集合属于特定数据类型。 一旦数据被以不同方式打包为数据分组的对应集合,则通过将每一深度的数据 分组分配到作为网络栈的特定层,所述传动机构在对应的深度处以一致的方式 传输该数据分组。

在另一个实施例中,可以在相同的特定深度处封装一个或多个数据类型, 而在不同深度处封装其他数据类型。使用文本数据、视频数据和音频数据的上 述示例,在深度“A”处封装文本和音频数据,并且在深度“B”处封装视频数 据。在这个实施例中,传动机构可以在相同深度处封装两种不同类型的数据, 但在不同的层中传输所述不同数据类型,以确定网络如何处理相同深度的两种 不同数据类型。在这个实施例中,不同类型的数据由传动机构在作为网络栈的 不同层中传输。

在另一个实施例中,可以在不同的深度处封装特定的数据类型,以得到对 网络如何处理不同深度处的特定数据类型的感知。例如,可以在不同深度“A”、 “B”和“C”处封装视频数据,并且可以由传动机构的传输模块在网络上的不 同层中传输视频数据。在这个实施例中,不同类型的数据由传动机构在作为网 络栈的不同层中传输。作为特定数据类型的数据分组在不同深度处的分析的结 果而被周期性地接收到的网络传输特性可以提供有用的信息以确定提供最优结 果的特定数据类型的适当深度。具体地,由网络传输特性定义的传输度量可以 被用来针对数据类型校准数据分组,以提供最优的传输结果。如从不同实施例 中可以看出的那样,可以以不同的方式封装不同类型的数据,并且顺从规则针 对每一数据类型提供不同的秘方。在一个实施例中,传动机构允许打包模块在 顺从规则内针对每一数据类型周期性地循环通过不同秘方,以校准每一层中的 数据分组的深度。在另一个实施例中,与打包模块协作,调整器模块可以基于 传输度量来校准每一层中的数据分组的量和数据分组的深度,以便在目的地处 产生最优传输结果,以便提供最大限度的用户体验。

在从源[2.1]传输的分组到达目的地[2.2]时,目的地系统[2.2]将响应数据分组 放置回到网络上以向源[2.3]通知数据分组成功到达目的地。返回到源的响应数 据分组具有与原始数据分组相同的深度。因此,例如,根据在捆包中提供的数 据的类型的数目,针对数据类型1的返回响应数据分组将具有深度“A”,针对 数据类型2的返回响应数据分组将具有深度“B”,针对数据类型3的返回响应 数据分组将具有深度“C”等等。此外,从目的地返回的数据分组具有与打包的 数据分组相同的形式,但在内容上不相同。这是由于下述事实:被传输到目的 地的数据分组包括有效载荷数据和描述该有效载荷数据的总务数据,而从目的 地返回到源的数据分组在分组穿过目的地时被剥夺了有效载荷数据,而仅包括 总务数据。

传动机构监测数据分组在网络上的进展。当返回分组被接收到时,针对完 整性而对其进行调整。这通过保持离开源的数据分组的计数(即,输入计数) 和在响应中返回到源的数据分组的计数(即,输出计数)来完成。确定输入计 数和输出计数之间的差值。在没有任何问题的全功能网络中,该差值应该是0 ——这意味着所有数据分组都被计及。然而,在有传输问题(例如损失或等待 时间)的网络中,该差值可能大于0,指示网络中的压力或松弛。除了跟踪输入 和输出计数,在一个实施例中,传动机构还监测离开源的每一层中的数据分组 的节奏(即输入节奏)和从目的地返回的每一层中的数据分组的节奏(输出节 奏)。在没有任何问题的理想网络中,对于层中的每一个中的数据类型中的每一 个,输入节奏将等于输出节奏。然而,如在输入计数和输出计数中那样,离开 源和从目的地返回到达的每一层的数据分组的输入和输出节奏可能是不同的。 每个相应层处的输入节奏和输出节奏之间的差值被记录为在传输的相应侧上引 起松弛和压力的网络系统加速度。例如,如图2中图示的,数据类型1的传出 数据分组在源处具有输入节奏A,并且对应的传入数据分组具有输出节奏A’。 类似地,对于数据类型2的数据分组,输入节奏是B并且输出节奏是B’;对于 数据类型3的数据分组,输入节奏是C并且输出节奏是C’;等等。对针对相应 原始传输A、B和C的返回分组A’、B’和C’进行评估以确定节奏中的相应变化 量在一个实施例中,该评估不仅在传输的端点处进行,还在数据分组离开源 的时间直至对应的响应返回到源的时间之间的每个时间点处进行。通过在每个 时间点处评估节奏(A-A')、(B-B’)和(C-C’),传动机构可以以精细粒度级别 推断在网络的不同区域中任何基本损失的存在、在该时间段上这种损失中的变 化,以推断在正向和反向二者上驻波效应传播模式的存在以及任何其他环境特 性,该任何其他环境特性可以识别在导致在传输期间网络上的传输问题时起作 用的物理系统特性。

为了使用节奏变化量来评估数据分组差别,在一个实施例中,传动机构识 别分层数据分组的片段线性组合,并随着分层数据分组的片段组合沿网络前进 而跟踪数据和变化量,以随时间确定差别数据。随着数据分组的片段线性组合 在网络上前进,传动机构在各个时间点处跟踪分层数据分组的片段线性组合的 不同层的深度处的输入和输出节奏、输入和输出计数。对来自每一层的各个时 间处的数据和变化量进行评估,并且在相应时间段上收集与这种数据和变化量 相关的信息并将其反馈给传动机构。传动机构针对每一层以及跨越数据分组的 片段线性组合的所有层随时间分析数据和变化量的所收集的信息,以确定网络 的环境特性。在一个实施例中,使用分析信息来产生统计模型。所述统计模型 在不同时间段处表示系统作为整体的状态的实时映射,并比针对系统的个体分 组的往返行程所耗费的时间更快地提供了统计上相关的数据。

例如,使用统计模型,传动结构可以确定小数据分组比大数据分组更多地 被丢失,或者反之亦然。这意味着:在网络中的一些地方,小数据分组由于比 其他数据分组更高阶处的损失或延迟且比其他数据分组更一致地经历等待时 间。传动机构可以通过分析统计模型以识别网络传输特性中的模式来得出这样 的结论,并且基于分析,传动机构可以声明存在与以小深度传输数据分组的特 定层相关联的确定性模式。在这种情况下,基于网络传输特性,传动机构可以 在特定层中调整后续数据分组的传输,并且基于针对所传输的数据分组而分析 的信息,这样的调整可以被重复一次或多次。

还可以分析统计模型以使用确定性损失作为上界来确定和建立最大吞吐 量。在通过系统发送数据时,确定性边界可以由传动装置的各个层不断地测试 并被更新。一旦建立了确定性边界,传动机构就可以通过减小每秒发送的数据 量来调整传输,使得可以实现最大吞吐量。例如,如果网络容量是3兆比特/秒 (Mbps),则应当注意,以4Mbps容量打包并在网络上传输特定层中的数据分 组的部分,其始终被丢失。在这种情况下,运行各种测试以分析统计模型和识 别定义传输度量的网络传输特性。在一个实施例中,该网络传输特性内的图案 被发现为是确定性图案。一旦该模式被确认为确定性图案,则传动机构迭代地 将正被传输的特定层的数据分组的大小减小到处于或低于由确定性边界建立的 丢失阈值。在另一个示例中,传动机构可以确定网络传输特性中的模式,其中, 层1中的类型1的每第5个数据分组被丢失,或者层2中的类型2的每第3个 数据分组被丢失或延迟等。在这种情况下,在数据仍通过网络前进时,传动机 构可以实时地查看该模式,并确立该网络模式是确定性模式。由此,传动机构 可以基本上实时地主动调整后续数据分组的传输以包括特定层的附加数据分 组,以便补偿调整定义网络的传输度量的网络传输特性。在上面的示例中,某 层的附加数据分组的后续传输将确保数据分组中的至少一个将成功到达目的 地,从而最小化任何传输丢失。

在另一个示例中,分析统计模型可以针对数据分组的特定层识别网络传输 特性中的随机模式,将该模式确立为在性质上随机。在这种情况下,传动机构 可以进行两个操作之一。它可以忽略结果,并在不调整传输的情况下继续发送 特定层的数据分组。这种忽略动作可以基于特定层中的特定数据类型。例如, 对于某些数据类型(例如视频),忽略该结果可能预示着良好。在视频的情况下, 如果网络问题导致一些数据的随机丢失,则传动机构可以忽略该丢失并继续发 送数据分组。忽略丢失的数据分组不会损害目的地处的视频的总体质量,这是 因为后续数据分组将替换在传输中丢失或延迟的数据分组。可替换地,对于其 他数据类型,传动机构可以尝试和确定传输阈值(即,数据流传输容限阈值或 丢失阈值),并将数据分组重新配置为符合传输阈值,以便最小化传输中的丢失。 这种重新配置可适用于的数据类型包括诸如文本、图像等的数据类型,其中, 丢失可能留下可损害质量的相当大的孔。在这种情况下,特定层的数据分组可 以被调整为处于或低于传输阈值并更少地依赖于网络上的尖峰行为,或者可以 在系统可容忍和填充以保持所采用的网络的水平处重新构建针对特定层的数据 流。

在一个实施例中,可以做出附加的调整以适应许多网络系统所展现的某些 特性,例如允许远高于由网络建立的确定性边界的传输的短突发。例如,如果 网络容量是3Mbps,则该网络系统不时地可以允许具有5Mbps容量的数据突 发。为了适应这些数据突发,传动机构必须首先需要确定实际传输阈值,并确 保数据突发的允许并不指示由网络建立的上确定性边界中的变化。这能够由传 动机构通过下述操作来容易地实现:产生不同深度处的伪数据分组的集合,将 伪数据分组与适当深度处的数据分组进行组合,并将组合的数据分组作为脉冲 进行传输。然后,传动机构可以监测网络上对于具有伪数据分组的所传输的脉 冲的反应,以确定用于传输的确定性边界是否已随时间变化或者所传输的脉冲 的阈值是否是网络以任意方式允许的尖峰阈值。在监测期间,如果确定了脉冲 流在没有任何问题的情况下经过,那么与被放置在不同层中的不同深度处的数 据分组一起产生在数据分组中提供的比正常数据流更大的后续数据流,并传输 该后续数据流。该后续数据流是使用伪数据来产生的,伪数据的丢失不会导致 目的地处的任何问题或难题。如果伪数据分组遇到问题,那么传动机构可以声 明允许突发与尖峰阈值相关联。一旦其被确定为尖峰阈值,则传动机构可以尝 试忽略这样的突发。如果其未被确定为尖峰阈值,则在确定了已存在传输阈值 中的向上移动的情况下,传动机构可以向上调整确定性边界。可替换地,传动 机构可以提供用于利用一些主动技术处理确定性损失的可能性的方式,例如使 字节流平滑、冗余传输或者未在此讨论的任何其他技术。

随着数据流在网络上前进,传动机构使用不同类型的层在不同时间处的不 同网络传输特性,来确定定义每一层的网络行为的每一层的传输度量,以便在 每一层中在随机模式和确定性模式之间区分。传动机构主动地自动调整数据流 的任何一层中的后续数据分组,以减小目的地处的传输抖动和优化网络使用。 传动机构不仅查看与个体分组相关的信息,还查看与同其他类型的分组相比特 定类型的分组相关的信息,以确定标识每一层的传输度量的总体网络传输特性。 统计模型中不同类型的分组所遇到的个体分组以及分组差别的数据和变化量模 式由于网络特性随时间的变化而变化,并不断被更新。通过使用在数据传输期 间来自统计模型的更新的信息,传动机构可以感知发生在网络传输中的任何变 化,并主动地调整后续数据分组的传输以适应该变化。通过在数据仍被传输时 主动地行动,可以以快速且及时的方式校正在数据传输期间的任何损失、延迟 和等待时间,以便优化目的地端处的结果。

在网络的不同特性的分析期间获取的各种统计(在该分析涉及不同深度处 的不同类型的数据时)可以被传动机构用于确定与重传、格式化、特定类型的 数据分组的大小和/或量相关的选择。例如,传动机构可以使用该统计来做出主 动的或回应性的传输选择。在主动的防范中,可以远在基于通过分析而获取的 统计将分组报告为“丢失”之前,以改进的精度发送后续分组。在回应性的传 输中,可以针对被报告为丢失的分组做出选择,并且基于丢失模式和数据类型, 系统报告降低分组穿过的几率的丢失特性,以便要么发送可被识别的模式中的 副本分组以增加成功传输的可能性,要么忽略丢失。基于在分析中收集的数据, 传动机构可以选择要被传输的分组的格式、要传输的分组的大小和/或量。如前 面提及的,基于传输的需要,传动机构可以采用不同的选择,例如忽略结果和 发送有规律的数据分组、平滑掉尖峰行为和发送低于针对网络而建立的丢失阈 值、或者在系统能够容忍和填充以保持网络被采用的水平处创建数据流。

通过直接与数据流交互,将会出现海森堡(Heisenburg)情形,其与网络上 数据分组的位置和将提供一些手段来实现目的地处的期望最优效果的对应的网 络特性相关。同时,如果数据分组中正在传输的有效载荷具有针对缺陷的抽象 和容忍的水平,则“飞行中的”数据流分析可以得到下述能力:忽略重传,如 果这种忽略在减小对网络上的拥塞和损失的贡献方面提供了优势的话。这在前 面已经参照视频数据加以解释,其中通过刷新丢失数据分组而不提供在总体服 务质量中的任何可见区别的数据分组后续传输,克服了数据传输中的丢失。

传动系统不仅提供了传动装置的接收端处的有效测量,还使对数据的解释 能够识别可表示状况(例如拥塞)的事情,例如,数据流的源侧上的松弛。通 过利用相同传动装置的多个深度处的差别分析以及围绕正常行为系统构建假 设,传动机构实现了这一点。这与往返行程的分组完成的实际测量相结合,以 提供下述机构:该机构不仅预测可发生网络传输问题的可能性,还主动地解决 这种问题,以便以大量的成本和时间节约提供了对总体网络的QoS影响。

传动机构还解决了对特定类型或大小的网络行为的相关刺激/响应。在一个 实施例中,传动机构可以尝试通过发送特定大小或类型的数据来戳进系统,并 确定来自网络的对戳的响应。基于该响应,传动机构可以弄清特定类型或大小 的数据的容限水平是什么,而不用公然地挑战限制或威胁总体链,并且传动机 构可以实时地操纵数据流的后续传输,以实现恰当的服务质量(QoS)影响。

利用各个实施例的以上详细描述,现在将参考图6描述一种方法。现在参 考图6,提供分层传动机构以分析网络损失和等待时间的过程开始于操作610, 其中,在源处将数据打包为不同深度的数据分组。可以基于从目的地设备(例 如移动设备)接收到的点击或请求,针对网络上的传输来识别数据。所识别的 数据可以具有不同类型。每一深度的数据分组属于特定数据类型。传动机构依 赖于针对网络上的不同类型的数据的传输而建立的顺从规则,并将数据打包为 数据分组,以符合这些规则。接着,如操作620中图示的,在网络上将不同深 度的数据分组分层地传输到目的地。数据分组的每一层具有特定深度。

然后,如操作630中图示的,随着数据分组沿着网络前进,传动机构周期 性地针对每一层收集与网络上的数据分组传输相关的信息。由传动机构收集的 信息识别每一层处的数据分组的数据和变化量,并通过在不同时间内跟踪每一 层的数据分组的节奏和计数而被收集。如操作640中图示的,针对数据分组的 每一层分析所收集的信息,以识别每一层的网络传输特性。网络传输特性标识 每一层的传输度量。该分析不仅查看与数据分组的特定层相关的信息,还查看 在与在网络上正在传输的数据分组中包括的其他类型的数据相比时特定类型的 数据的信息,以确定针对不同数据类型的系统行为的网状物,以便提供系统作 为整体的状态的实时映射。所述分析被用于基于网络传输特性针对任何一层调 整数据分组的后续传输。如操作650中图示的,针对跨越所述层对传输度量的 相对分析利用针对每一层的传输度量,以便设置对网络上的传输的调整。以进 行中的方式执行对后续传输的调整,同时在网络上的数据分组传输期间继续收 集和分析信息。

本文描述的各个实施例教导了一种技术,该技术使用传动机构来提供数据 的分层模拟传动以及分析与在网络上传输的数据分组相关的网络损失和等待时 间情况。传动机构放大数据流信号以得到对在网络中正在发生什么的感知,以 便对仍处于网络内的数据分组主动地做出实时变化,以便优化目的地处的传输 结果。在数据分组正在被放置在网络上时,传动机构监测网络上的数据分组以 确定网络是否变得饱和。基于所述监测,传动机构开始自动地调整后续数据分 组传输,以确保分组传输不超出可能导致传输损失且最终导致目的地处的服务 质量降级的流传输容限。该主动方法将用于数据分组传输的时间减小了个体数 据分组在网络上完成行程所耗费的往返时间的至少一半,如果不是更好的话。

考虑到上述实施例,应当理解的是,本发明可以采用涉及在计算机系统中 存储的数据的各种计算机实现操作。这些操作是需要物理量的物理操纵的那些 操作。通常,但不必须,这些量采取能够被存储、传输、组合、比较以及以其 他方式操纵的电或磁信号的形式。进一步地,所执行的操纵通常被称为诸如产 生、识别、确定或比较之类的术语。

此处描述的形成本发明的一部分的任何操作都是有用的机器操作。本发明 还涉及用于执行这些操作的装置或设备。该设备可以是为了需要的目的而特别 构造的,或者其可以是由存储在计算机中的计算机程序选择性激活或配置的通 用计算机。特别地,各种通用机器可以与根据此处的教导而编写的计算机程序 一起使用,或者,构造更专门的设备以执行所需的操作可以是更方便的。

本发明还可以被体现为计算机可读介质上的计算机可读代码。计算机可读 介质是能够存储数据的任何数据存储装置,该数据随后可以被计算机系统读取。 计算机可读介质的示例包括硬盘驱动器、网络附着存储器(NAS)、只读存储器、 随机存取存储器、CD-ROM、CD-R、CD-RW、磁带以及其他光学和非光学数 据存储装置。计算机可读介质还可以分布在网络耦合计算机系统上,使得计算 机可读代码以分布式的方式被存储和执行。

然而,对于本领域技术人员来说将显而易见的是,可以在没有这些特定细 节中的一些或全部的情况下实践本发明。在其他的实例中,没有详细地描述公 知的处理操作,以免不必要地混淆本发明。

尽管为了理解清楚的目的已经相当详细地描述了前述发明,但是将显而易 见的是,可以在本发明的范围内实践特定的改变和修改。相应地,目前的实施 例应被认为是说明性的而不是限制性的,且本发明不限于此处给出的细节,但 是可以在本发明的范围内加以修改。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号