CN103201988B - 用于在网络中进行通信的系统和方法 - Google Patents

用于在网络中进行通信的系统和方法 Download PDF

Info

Publication number
CN103201988B
CN103201988B CN201180052908.1A CN201180052908A CN103201988B CN 103201988 B CN103201988 B CN 103201988B CN 201180052908 A CN201180052908 A CN 201180052908A CN 103201988 B CN103201988 B CN 103201988B
Authority
CN
China
Prior art keywords
stream
adfluxion
equipment
bandwidth
unit
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.)
Active
Application number
CN201180052908.1A
Other languages
English (en)
Other versions
CN103201988A (zh
Inventor
J·K·孙达拉拉詹
D·F·卡萨
G·贾雷塔
D·W·克雷格
J·H·拉加尼耶
G·B·霍恩
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.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
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 Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN103201988A publication Critical patent/CN103201988A/zh
Application granted granted Critical
Publication of CN103201988B publication Critical patent/CN103201988B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/19Flow control; Congestion control at layers above the network layer
    • H04L47/193Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • H04L47/283Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/27Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets

Abstract

本申请描述了用于为用于网络中的通信设备的传输控制协议(TCP)流排列优先顺序的系统和方法。本申请的系统和方法还可以基于流的优先级为这些流分配带宽。另外,本申请的系统和方法还允许设备确定特定流是否共享限制这些流的总体可用带宽的业务流约束或瓶颈。因此,如果流共享业务流约束,则可以基于对一个流的带宽分配来调整针对另一个流的带宽分配。另外,本申请的系统和方法还允许基于共享的业务流约束来为这些流确定目标数据速率。

Description

用于在网络中进行通信的系统和方法
相关申请的交叉引用
依据35U.S.C.§119要求优先权
本专利申请要求于2010年11月2日提交的、题目为“SYSTEMS AND METHODS FORCOMMUNICATING IN A NETWORK”的美国临时专利申请No.61/409,474的优先权,上述申请的完整内容以引用方式明确地并入本申请。
技术领域
概括地说,本申请涉及通信技术,具体地说,本申请涉及为用于网络中的通信设备的传输控制协议(TCP)流排列优先顺序。
背景技术
通信系统被广泛地部署以提供通信设备(例如,移动手持设备、PDA(个人数字助理)、个人计算机、智能电话、服务器或能够经由网络进行通信的任何其它电子设备)之间的各种类型的通信(例如,语音、数据、多媒体服务等)。这些设备可以经由互连设备的网络在相互之间发送/接收数据。所述数据可以作为不同的数据集合(其称为流)被发送。例如,一个设备与另一个设备之间的第一视频流的传输可以称为第一流,并且一个设备与另一个设备之间的用于网页的数据分组的传输可以称为第二流。这些数据流可以各自与在通信设备上运行的特定应用相关联。
另外,这些设备通过有线连接或无线连接互连。这些设备可以经由一个或多个网络接口接入这些连接中的一个或多个连接。这些连接和/或网络接口可以具有它们所能够处理的有限量的带宽。因此,可能存在有限量的可用带宽供设备用来进行通信。相应地,当多个流请求使用可用带宽时,可以在流之间分配带宽。网络中的数据流的传输和对这些流的带宽分配部分地由传输控制协议(TCP)来处理。
一般情况下,TCP在流之间均匀地分配可用带宽。然而,不同的流可能具有不同的最小吞吐量要求和不同的最大期望吞吐量,以便使应用良好地工作。例如,视频流可能会要求最小带宽,以便使该视频在应用中流畅且准确地回放。仅仅在流之间均匀分配可用带宽无法确保为该视频流分配所要求的最小带宽。即使当不同的流的最小吞吐量要求和最大吞吐量要求是相等的或未知的时,用户也可能会对一个流具有特别的兴趣。例如,当一个流在前台时,用户可能会注意相应的应用,因此可能期望优先考虑该流。更普遍的情况是,不同的流可能具有不同的要求,例如,基于每个流的属性的固有要求,或者与使用设备的场景有关的固有要求。因此,需要用于流之间的带宽的增强的系统和方法。
发明内容
本发明的系统、方法和设备各自具有若干方面,这些方面中没有哪个单一方面单独地负责其期望的属性。现在在不限制如所附权利要求书所表达的本发明的保护范围的情况下,对某些特征进行简要地论述。在考虑该论述之后,特别是在阅读标题为“具体实施方式”的部分之后,人们将理解本发明的特征是如何提供包括为用于网络中的通信设备的传输控制协议(TCP)流排列优先顺序的优势的。
本申请公开内容的一个实施例提供了一种在通信网络中操作的设备。该设备包括处理器。该处理器被配置为基于共享的业务流约束来从多个流中识别流集合。所述流集合包括第一流和第二流。所述处理器还被配置为基于所述业务流约束和与所述业务流约束相关联的可用带宽来为所述流集合中的每个流分配带宽。
本申请公开内容的另一个实施例提供了一种在通信网络中操作的设备中操作的方法。该方法包括:基于共享的业务流约束来从多个流中识别流集合。所述流集合包括第一流和第二流。该方法还包括:基于所述业务流约束和与所述业务流约束相关联的可用带宽来为所述流集合中的每个流分配带宽。
本申请公开内容的另一个实施例提供了一种在通信网络中操作的设备。该设备包括用于基于共享的业务流约束来从多个流中识别流集合的单元。所述流集合包括第一流和第二流。所述设备还包括:用于基于所述业务流约束和与所述业务流约束相关联的可用带宽来为所述流集合中的每个流分配带宽的单元。
本申请公开内容的另一个实施例提供了一种包括非临时计算机可读介质的计算机程序产品。该计算机可读介质包括:用于使计算机基于共享的业务流约束来从多个流中识别流集合的代码。所述流集合包括第一流和第二流。所述计算机可读介质还包括:用于使计算机基于所述业务流约束和与所述业务流约束相关联的可用带宽来为所述流集合中的每个流分配带宽的代码。
附图说明
图1示出了示例性通信网络。
图2是示出了用于在发射机侧为流排列优先顺序的示例性过程的流程图。
图3是示出了用于在接收机侧为流排列优先顺序的示例性过程的流程图。
图4是可以用在图1的通信网络中的第一示例性设备和第二示例性设备的功能框图。
图5是可以用在图1的通信网络中的另一个示例性无线设备的功能框图。
具体实施方式
在本申请中,“示例性”一词用来表示“用作例子、例证或说明”。本申请中被描述为“示例性”的任何实施例不一定被解释为比其它实施例更优选或更具优势。为了使本领域任何技术人员能够实现和使用本发明,给出了以下描述。在以下描述中,为了解释的目的而列出了细节。应当明白的是,本领域普通技术人员可以认识到,在不使用这些特定细节的情况下也可以实现本发明。在其它实例中,不会对公知的结构和过程进行详细阐述,以避免不必要的细节使本发明的描述变得晦涩。因此,本发明并非旨在限于所示的实施例,而是与符合本申请所公开的原理和特征的最广范围相一致。
本申请描述的技术可以用于各种通信网络,例如码分多址(CDMA)网络、时分多址(TDMA)网络、频分多址(FDMA)网络、正交FDMA(OFDMA)网络、单载波FDMA(SD-FDMA)网络、局域网(LAN)、个域网(PAN)、广域网(WAN)、有线网络等等。术语“网络”和“系统”经常可互换地使用。CDMA网络可以实现诸如通用陆地无线接入(UTRA)、cdma2000等等之类的无线技术。UTRA包括宽带CDMA(W-CDMA)和低码片速率(LCR)。cdma2000涵盖IS-2000、IS-95和IS-856标准。TDMA网络可以实现诸如全球移动通信系统(GSM)之类的无线技术。OFDMA网络可以实现诸如演进型UTRA(E-UTRA)、IEEE802.9、IEEE802.16、IEEE802.20、Flash-OFDM”等等之类的无线技术。UTRA、E-UTRA和GSM是通用移动通信系统(UMTS)的一部分。长期演进(LTE)是使用E-UTRA的UMTS的即将发行版。在来自名为“第三代合作伙伴计划”(3GPP)的组织的文档中描述了UTRA、E-UTRA、GSM、UMTS和LTE。在来自名为“第三代合作伙伴计划2”(3GPP2)的组织的文档中描述了cdma2000。这些各种无线技术和标准都为本领域所公知。
单载波频分多址(SC-FDMA)使用单载波调制和频域均衡。SC-FDMA与OFDMA系统具有相似的性能和基本相似的整体复杂度。SC-FDMA信号由于其固有的单载波结构而具有较低的峰均功率比(PAPR)。SC-FDMA尤其在上行链路通信中已引起强烈的关注,其中在上行链路通信中,较低的PAPR使移动终端在发射功率效率方面极大地受益。SC-FDMA是当前针对3GPP长期演进(LTE)或演进型UTRA(E-UTRA)中的上行链路多址方案的工作设想。
本申请描述了允许为用于网络中的设备的流排列优先顺序的系统和方法。本申请所描述的系统和方法涉及为输出流(经由网络从该设备向另一个设备发送的业务的流)排列优选顺序,并且还涉及为输入流(由该设备经由网络从另一个设备接收的业务的流)排列优先顺序。相应地,可以对不同的流进行节流,或者可以响应于分组丢失,为不同的流提供更积极的足以允许该设备上的依赖数据流的应用适当工作的带宽参数。
流是指由在设备上运行的应用发送或接收的数据集合或分组集合。尽管可以在本申请中参照TCP连接对流进行描述,但是流并非限于此。在各个实施例中,流可以包括任何传输协议或套接字类型,例如,TCP、SCTP、UDP、原始IP等等。此外,流可以与应用相关联。例如,流可以指通过在运行于设备102上的发送应用与接收应用之间形成的TCP连接所发送的数据。到达的TCP数据分组通过该TCP数据分组的套接字(即,源主机地址、源端口、目的地主机地址和目的地端口的组合)被识别为属于特定TCP连接。每个设备可以向发送/接收数据流所通过的TCP连接指派TCP端口。相应地,可以通过调整与流中的每个流的TCP连接相关联的参数来为这些流分配不同的带宽。
一个设备上的一个或多个应用可以各自与一个或多个其它设备上的一个或多个另外的应用中的每一个应用形成一个或多个TCP连接。相应地,应用可以具有一个或多个输出流和一个或多个输入流,这些流中的每一个流指代不同的数据集合并且与不同的TCP连接相关联。例如,由第一设备向第二设备进行的第一视频流的发送可以称为第一设备的第一输出流。另外,由第二设备从第一设备进行的第一视频流的接收可以称为第二设备的第一输入流。另外,从第一设备向第二设备进行的用于网页的数据分组的发送可以称为第一设备的第二输出流。由第二设备从第一设备进行的用于网页的数据分组的接收可以称为第二设备的第二输入流。
本申请所描述的系统和方法涉及:基于设备可用的带宽来计算针对与该设备相关联的不同流的目标速率。本申请所描述的系统和方法还涉及:识别共享资源的流,以确定一个流对带宽的使用是否影响了针对另一个流的可用带宽。本申请所描述的系统和方法还涉及:基于调整TCP参数来实施(enforce)对流的带宽分配的优先级。应当注意到,尽管本申请中的某些示例仅论述了两个流,但是本领域技术人员将认识到,针对两个流所描述的原理同样适用于具有多个流(N个)的实施例,其中N是任意正整数。
图1示出了示例性通信网络100。该通信网络100(例如,互联网、LAN、PAN、WAN等)被配置为支持多个通信设备102a-102g(例如,移动手持设备、PDA(个人数字助理)、个人计算机、智能电话、服务器或能够经由网络进行通信的任何其它电子设备)之间的通信。通信设备102a-102g可以通过一个或多个有线或无线通信链路104a-104h互连。通信链路104a-104h可以包括下列类型的通信链路中的一种或多种:GSM(全球移动通信系统)、UMTS(通用移动通信系统)、UMTS-TDD(UMTS时分双工)、CDMA(码分多址)、CDMA2000、WCDMA(宽带CDMA)、TDMA(时分多址)、FDMA(频分多址)、1xEV-DO(演进数据优化)、Wi-Fi、Wi-Max、蓝牙、或者IEEE802.11、电话(例如,POTS)、线缆、以太网、PLC(电力线通信)、或者光纤链路、或者允许设备之间连接的任何其它链路。应当注意到,网络100可以包括更多或更少的通信设备102,并且这些通信设备102之间可以具有不同的链路104布置。
通信设备102a-102g中的每个通信设备可以经由链路104a-104h中的一个或多个链路与其它设备通信。例如,通信设备102a可以经由链路104a和/或经由通信链路104b与104c的组合与通信设备102d通信。例如,设备102a可以运行向设备102d发送数据(例如,用于web浏览会话的数据分组、用于基于IP的语音(VoIP)呼叫的数据分组、用于视频流的数据分组或者其它数据或媒体内容)并且/或者从设备102d接收数据的应用(例如,web浏览器、视频播放器、电子邮件客户端或者另一个其它应用)。设备102a还可以运行另外的应用,并向设备102d和/或其它设备102发送数据,并且/或者从设备102d和/或其它设备102接收数据。
每个设备102a-102g可能在其可以在一个或多个链路上发送和/或接收的数据的量方面受到约束。该约束可能是由设备的物理约束(例如,设备的网络接口的约束)和/或链路的物理约束或者某些其它约束造成的。相应地,针对每个设备102a-102g,存在有限量的带宽可用来发送和/或接收数据。在某些实施例中,用于发送数据的可用带宽与用于接收数据的可用带宽相关。在其它实施例中,用于发送数据的可用带宽与用于接收数据的可用带宽无关。相应地,当设备发送/接收多个流时,需要在这多个流之间分配可用带宽。
不同的流基于与该流相关联的应用,可以具有不同的最小吞吐量要求和不同的最大期望吞吐量。例如,视频流可能要求最小带宽以便使该视频在应用中流畅且正确地回放,因为数据需要顺序地且在某个时间段内被接收以便实况回放。另一方面,包含用于网页的数据分组的流可能不要求最小带宽,因为只要所有的分组都被接收时就可以交付网页。相应地,应当基于每个设备102a-102g的流的要求为该流分配带宽。
另外,不同的流可以具有不同的优先级。例如,一个流可以与重要应用相关联,应当在为另一个流分配带宽任何带宽之前为该流分配最小要求带宽,或者一个流可以与位于图形用户界面中的前台中的应用相关联,因此该流很可能被用户视为高优先级。可以通过很多不同的方法为流排列优先顺序。优先级水平可以是绝对优先级水平,其中每个流被给予特定优先级值(例如,1,2,3等)。或者,优先级水平可以是相对的,其中一个流的优先级水平是相对于另一个流来进行定义的(例如,流1的优先级高于流2的优先级并且/或者低于流3的优先级)。另外,可以通过很多不同的方法来为流指派优先级水平。例如,使用流的应用可以例如通过使用应用编程接口(API),来从设备的控制流的操作系统或管理器应用请求针对该流的特定优先级水平。或者,可以由设备基于诸如应用类型之类的某个参数来为该流自动指派特定流(例如,为web浏览器指派比视频播放器低的优先级)。在另一个实施例中,设备的用户可以为流设置优先级水平。
在一个实施例中,设备102a-102g中的每个设备可以使用TCP来执行拥塞控制,并且因此为不同的流间接指派资源。在发送方设备侧,TCP利用窗口缩放来控制为用于发送/接收数据的流分配的带宽。针对给定流,通过设置拥塞窗口尺寸(该窗口尺寸是在发射机没有从接收机接收到确认的情况下,可以从该发射机向该接收机发送的分组的数量)来使窗口缩放工作。从发射机向接收机发送数据分组和由发射机从接收机接收确认所花费的时间称为往返时间(RTT)。增加针对流的拥塞窗口尺寸通过允许在每个RTT发送更多的数据而增加了该流可用的带宽。
在一个实施例中,TCP为流设置达到特定带宽的初始拥塞窗口尺寸。随后,TCP按照如下方式基于数据分组的丢失来缩放拥塞窗口尺寸。如果流的数据分组由发射机成功发送到接收机,并且发射机接收到确认,则将拥塞窗口尺寸增加量α(增加参数),该量α被加到当前拥塞窗口尺寸上。如果流的一个或多个数据分组未被发射机成功发送到接收机,并且发射机接收到请求相同的未被成功发送的数据分组的多个确认(即,重复确认),则通过因子β(减小参数)减小拥塞窗口尺寸,其中β是0与1之间的值,并且β与当前拥塞窗口尺寸相乘。如下面所论述的,发射机使用值α和β来调整拥塞窗口尺寸。
在一个实施例中,TCP通过针对设备102中的每个流将拥塞窗口尺寸设置为相等的默认值,来为每个流初始地分配相等量的带宽。然而,为了将一个流的优选顺序排列到另一个流之前,并为给定流分配较大的带宽,可以针对不同的流不同地调整用于控制拥塞窗口尺寸改变的参数α和β。相应地,针对不同的流的拥塞窗口尺寸将以不同的比率改变,从而导致针对不同流的不同拥塞窗口尺寸。
如本申请所述,带宽分配可以包括直接带宽分配(例如通过QoS机制进行的带宽分配)和间接带宽分配。作为间接带宽分配的一个示例,UDP流和TCP流可以使网络连接饱和。通过对TCP流进行节流,可以间接为UDP流分配较多的带宽。通过为TCP流提供积极的带宽参数(如以下更详细地描述的),可以间接为UDP流分配较少的带宽。因此,分配带宽可以包括:调整网络参数(例如,本申请所描述的TCP参数),使得一个或多个流被节流,被给予积极参数,被排列优先顺序并且/或者被重新排列优选顺序,从而向一个或多个其它流提供不同量的带宽。
例如,一种为高优先级流分配较多带宽的方法包括:增加针对高优先级流的参数α并且/或者减小针对低优先级流的参数α。正常情况下,α等于1。增加参数α(例如,增加到大于1的值)导致针对高优先级流的拥塞窗口尺寸比具有较小的参数α的流增加得更快。另外,减小参数α(例如,减小到小于1的值)导致针对低优先级流的拥塞窗口尺寸比具有较高的参数α的流增加得更慢。针对高优先级流和低优先级流两者的拥塞窗口尺寸将增加到分组开始丢失为止。然而,由于α的值不同,高优先级流的拥塞窗口尺寸将比低优先级流的拥塞窗口尺寸增加得更快,因此随着拥塞窗口尺寸增加,高优先级流将具有较大的拥塞窗口尺寸。相应地,高优先级流被分配较高的带宽。
在一个实施例中,增加与高优先级流相关联的α并且减小与低优先级流相关联的α。在另一个实施例中,仅增加与高优先级流相关联的α。在又一个实施例中,仅减小与低优先级流相关联的α。
仅减小低优先级流的α至少具有一个优势:不会由于α参数的改变而不公平地给予第三方流以较少的带宽。具体来说,在增加与较高优先级流相关联的α的情况下,不仅相对于已知的低优先级流,而且相对于可能未被顾及到并且具有α=1的正常值的其它第三方流,拥塞窗口尺寸增加得更快。因此,这些未被顾及到的流可能会比较高优先级流接收更少的带宽(尽管并非期望如此)。通过仅减小针对较低优先级流的α,避免了这种情况,原因在于没有流的优选顺序被排列到具有α=1的正常值的流之前。
另一种为高优先级流分配带宽的方法包括:增加针对高优先级流的参数β并且/或者减小针对低优先级流的参数β。正常情况下,β等于0.5。增加参数β(例如,增加到大于0.5的值)导致针对高优先级流的拥塞窗口尺寸比具有较小的参数β的流减小得更少。另外,减小参数β(例如,减小到小于0.5的值)导致针对低优先级流的拥塞窗口尺寸比具有较高的参数β的流减小得更多。当分组开始丢失时,针对高优先级流和低优先级流两者的拥塞窗口尺寸都将减小。然而,由于β的值不同,高优先级流的拥塞窗口尺寸将比低优先级流的拥塞窗口尺寸减小得更少,因此随着拥塞窗口尺寸减小,高优先级流将具有较大的拥塞窗口尺寸。相应地,高优先级流被分配较高的带宽。
在一个实施例中,增加与高优先级流相关联的β,并且减小与低优先级流相关联的β。在另一个实施例中,仅增加与高优先级流相关联的β。在又一个实施例中,仅减小与低优先级流相关联的β。
仅减小低优先级流的β至少具有一个优势:不会由于β参数的改变而不公平地给予第三方流以较少的带宽。具体来说,在增加与较高优先级流相关联的β的情况下,不仅相对于已知的低优先级流,而且相对于可能未被顾及到并且具有β=0.5的正常值的其它第三方流,拥塞窗口尺寸减小得更少。因此,这些未被顾及到的流可能会比较高优先级流接收更少的带宽(尽管并非期望如此)。通过仅减小针对较低优先级流的β,避免了这种情况,原因在于没有流的优选顺序被排列到具有β=0.5的正常值的流之前。
应当注意到,如何调整α和β的值可以是基于不同的方法来进行的。在一个实施例中,可以基于试探(heuristic)来调整α和β的值。例如,可以基于流的当前速率、针对流的目标期望速率、最小速率约束和最大速率约束和/或容量约束,来调整α和β的值。
在一个示例中,根据如下的式1和/或2,基于针对设备的流的目标期望速率来调整α和/或β。
α j = R j Σ i N R i ( Σ i N 1 RTT i × 1.0 ) RTT j ≈ R j Σ i N R i ( N × 1.0 ) - - - ( 1 )
β j = R j Σ i N R i ( Σ i N 1 RTT i × 1 2 ) RTT j ≈ R j Σ i N R i ( N × 1 2 ) - - - ( 2 )
其中:
N=流1到j的数量;
Rj=针对流j的目标数据速率;并且
RTTj=针对流j的往返时间。
在一个实施例中,针对流j的目标速率Rj可以是基于以下各项的:流j的优先级、针对流j的最小要求吞吐量针对流j的最大期望吞吐量和/或针对流的估计可用带宽C。应当注意到,也可以使用其它方法来为不同的流设置目标速率。在一个实施例中,按照流的优先级的递减顺序,确定最小要求吞吐量可以由C容纳的流的最大数量Np。随后,可以通过如下的式3计算Rj
R j = R j min + R j max - R j min Σ i N ( R i max - R i min ) ( C - Σ i N p R i min ) - - - ( 3 )
相应地,为每个流指派该流的最小速率约束与该流的最大速率约束之间的目标速率。
在接收机侧,可以调整与α和β不同的参数来为流排列优先顺序。例如,在接收机侧,可以针对不同的流调整接收窗口参数。接收窗口尺寸是对于给定的流,接收机可以在没有对发射机的确认的情况下接受的数据的量(字节的数量)。例如,可以将较高优先级流设置为具有较大的接收窗口尺寸,并且/或者将较低优先级流设置为具有较小的接收窗口尺寸。较大的接收窗口允许接收较多的数据,因此分配较多的带宽,而较小的接收窗口允许接收较少的数据,因此分配较少的带宽。在另一个示例中,对于较低优先级流,可以延迟对确认消息的发送,从而增加RTT,并且因此减小所分配的带宽。在又一个示例中,可以在针对较低优先级流的输入TCP分组被TCP栈接收之前,由设备更低层将这些TCP分组丢弃,从而触发TCP重传,并且因此限制该流所使用的速率和带宽。可以基于某些试探(例如,基于流的当前速率、针对流的目标期望速率、最小速率约束和最大速率约束和/或容量约束)来调整接收窗口尺寸和确认消息的延迟。
还应当注意到,可以适应性地或者反应性地调整所分配的带宽。适应性分配是指通过将以上论述的参数或其它参数设置为与流的优先级水平相关联的特定值来设置带宽。例如,流可以总是具有基于该流的属性被设置为特定值的参数α、β、接收窗口尺寸和/或确认延迟。例如,针对流的不同优先级水平可以映射到一个或多个特定值。另外,具有特定要求的流(例如,针对流的特定带宽、要求特定延时的流、要求特定比特速率的视频流等等)可以映射到一个或多个特定值。反应性分配是指在特定应用或流没有正在如预期地执行时,通过将以上论述的参数或其它参数调整为提高或降低的值来调整带宽(例如,视频不流畅,因此分配更多的带宽)。另外,可以基于所描述的技术来周期性地(例如,在一个或多个往返时间之后)调整参数。
如以上所论述的,可以针对不同的流调整不同的参数,以便为这些流分配更多或更少的带宽。另外,参数的调整可以导致流之间的带宽分配的相对改变。然而,应当注意到,当对共享同一限制性因素(例如,流可用的总体带宽的上限)的流作出调整时,参数的调整可能只改变流之间所分配的带宽。该限制性因素(其可以称为瓶颈或业务流约束)是限制流可用的总体带宽的单个成分或资源。
例如,流可以使用诸如链路、套接字、硬件资源等等之类的若干资源,这些资源中的每一个与某个吞吐量或带宽相关联。在该流所使用的所有资源中,业务流约束是具有最低总体带宽或吞吐量的资源。相应地,在某些实施例中,一个或多个设备102可以确定流是否共享同一业务流约束。如果流共享同一业务流约束,则两个流本质上共享同一总体带宽上限,并且因此改变对一个流的带宽分配会影响另一个流。然而,如果流不共享同一业务流约束,则这些流不共享同一带宽上限,因此改变对一个流的带宽分配不一定会影响另一个流。因此,当流不共享同一业务流约束时,降低一个流可用的带宽可能无助于另一个流,而同时会对其带宽被降低的流产生不利影响。相应地,在某些实施例中,对共享业务流约束的流集合执行如上所述的设置目标速率和/或(例如,通过调整TCP参数)为流集合排列优先顺序。
在一个实施例中,一个或多个设备102可以通过确定流是否以同步的方式经历拥塞事件来检测针对流的共享业务流约束。在发射机侧,发射机可以确定流是否在近似相同的时间经历以下拥塞事件:丢失分组(例如,没有接收到确认(ACK)或者接收到重复ACK),RTT增加,发送速率降低,或者在近似相同的时间经历某种其它拥塞事件。在某些实施例中,只有在这些改变满足最小阈值(例如,速率下降了阈值量;丢失了阈值量的分组;RTT增加了阈值量以上等等)的情况下,这些改变才可以算作拥塞事件。例如,发射机可以确定在第一流经历这种拥塞事件之后,第二流是否在阈值时间段内也经历了该拥塞事件。如果第二流在阈值时间段内经历了该拥塞事件,则可以假定这些流共享同一业务流约束。应当注意到,发射机也可以针对另外的流作出确定。
类似地,在接收机侧,接收机可以确定流是否在近似相同的时间经历以下拥塞事件:丢失分组(例如,通过具有某些序列号的分组的丢失确定的分组丢失),(例如,利用时间戳计算得出的)RTT增加,瞬时吞吐量降低,或者在近似相同的时间经历某种其它拥塞事件。在某些实施例中,只有在这些改变满足最小阈值(例如,速率下降了阈值量、丢失了阈值量的分组、RTT增加了阈值量以上等等)的情况下,这些改变才可以算作拥塞事件。如果流在彼此的阈值时间段内经历了拥塞事件,则假定这些流共享同一业务流约束。
用于在发射机侧和/或接收机侧检测流是否共享业务流约束的另外或替代方法是:确定一个或多个流是否在给定时刻被分配近似预期量的带宽。例如,如果两个流具有相同的优先级水平,则可以确定这两个流是否各自被分配公平份额的带宽,或者如果这两个流具有不同的优先级水平,则可以确定这两个流是否各自被分配它们预期份额的带宽。实现该目的的一种方法是确定每个流的实际带宽是否在针对该流的预期带宽的阈值量(+/-)之内。针对该流的预期带宽可以等于例如由以上的式3确定的针对该流的目标速率。如果这些流各自具有预期带宽,则可以假定这些流共享同一业务流约束。应当注意到,发射机和/或接收机也可以针对另外的流作出确定。
例如,可以在发射机侧,通过确定在针对多个流的分组丢失时针对这些流的拥塞窗口是否在预期拥塞窗口值的阈值量之内来检测带宽分配。分组被丢失的时间是所有的带宽都已被分配时。用于当所有的流共享同一优先级时,使用拥塞窗口将流j分配到共享业务流约束的同一集合的一个式子是:如果Wj [C]>=Wj [sh]–公差,则将流j加到集合中;
其中:
Wj [C]=βxWj [LI]=分组丢失之后的拥塞窗口;
Wj [LI]=当出现分组丢失时的拥塞窗口;
Wj [sh]=C/NxRTTj=公平份额拥塞窗口;
C=针对所有流(N个流)的估计可用带宽;
N=流1到j的数量;并且
RTTj=针对流j的往返时间。
在接收机侧,可以在接收机侧通过确定针对多个流的当前接收数据速率是否在针对每个流的预期当前速率的阈值量之内来检测带宽分配。用于当所有的流共享同一优先级时,使用当前速率将流j分配到共享业务流约束的同一集合的一个式子是:如果rj [C]>=rj [sh]–公差,则将流j加到集合中;
其中,
rj [C]=流j的当前速率(通过对每单位时间所接收的字节的数量进行计数来获取);并且
rj [sh]=流j的公平份额速率(作为容量与流的数量之比来获取).
在某些实施例中,一个或多个设备102可以测试拥塞事件和带宽分配两者。只有在这两项测试都显示流共享业务流约束的情况下,设备102才可以确定流共享业务流约束。这种冗余可以减少检测共享业务流约束时的错误肯定的数量。该方案也可能会增加错误否定的数量。相应地,在某些实施例中,可以只执行这些测试中的一项测试。
在某些实施例中,周期性地(例如,每隔一个或多个RTT)执行针对流之间的共享业务流约束的测试。由于流可能会随着时间的推移改变所使用的资源,或者某些资源的吞吐量可能会随着时间的推移而改变,因此这种周期性测试可能是有用的。因此,流的业务流约束可能随着时间的推移而改变。
图2是示出了用于在发射机侧为流排列优选顺序的示例性过程200的流程图。开始于框205,发射机从多个流中识别共享业务流约束的流集合。发射机可以基于上述方法中的任一种方法来识别该流集合。在一个实施例中,如以上所论述的,共享的业务流约束可能是瓶颈。在框210处继续,发射机确定针对该流集合中的每个流的目标速率。可以按照本申请所论述的方式确定目标速率。另外,在框215,发射机基于该业务流约束来为该流集合中的每个流分配带宽。在一个实施例中,在相应的应用与流集合中的每个流相关联的场景下,发射机可以基于业务流约束来为每个流分配带宽。在一个实施例中,发射机可以进一步基于与业务流约束相关联的可用带宽来分配带宽。在一个实施例中,发射机可以通过基于流集合中的每个流的优先级调整针对该流的参数,来分配带宽。例如,利用上述方法,可以为不同的流分配不同量的带宽。接下来,在框220,发射机等待一时间段,例如一个或多个RTT。随后,过程200返回到框205。
图3是示出了用于在接收机侧为流排列优选顺序的示例性过程300的流程图。开始于框305,接收机从多个流中识别共享业务流约束的流集合。接收机可以基于上述方法中的任一种方法来识别该流集合。在一个实施例中,如以上所论述的,共享的业务流约束可能是瓶颈。在框310处继续,接收机确定针对该流集合中的每个流的目标速率。可以按照本申请所论述的方式确定目标速率。另外,在框315,接收机基于该业务流约束来为该流集合中的每个流分配带宽。在一个实施例中,接收机可以进一步基于与业务流约束相关联的可用带宽来分配带宽。在一个实施例中,接收机可以通过基于流集合中的每个流的优先级调整针对该流的参数,来分配带宽。例如,利用上述方法,可以为不同的流分配不同量的带宽。接下来,在框320,接收机等待一时间段,例如一个或多个RTT。随后,过程300返回到框305。
本领域技术人员应当认识到,可以在过程200和300中增加或省略不同的步骤。另外,可以按照与上述不同的顺序执行过程200和300的各个步骤。
图4是图1的通信网络100中的第一示例性设备102a和第二示例性设备102b的功能框图。如图所示,多输入多输出(MIMO)系统400包括第一设备102a和第二设备102b。MIMO系统采用多付(NT付)发射天线和多付(NR付)接收天线进行数据传输。由NT付发射天线和NR付接收天线形成的MIMO信道可以包括NS个独立信道,其中这些独立信道又称为空间信道,其中NS≤min{NT,NR}。NS个独立信道中的每个独立信道对应于一个维度。如果利用由多付发射和接收天线创建的附加维度,则MIMO系统可以提供改善的性能(例如,更高的吞吐量和/或更高的可靠性)。
MIMO系统可以支持时分双工(“TDD”)和频分双工(“FDD”)。在TDD系统中,前向链路传输和反向链路传输在同一频域中进行,因此互易原理允许根据反向链路信道估计前向链路信道。这使得当设备处有多付天线可用时,该设备能够在前向链路上提取发射波束成形增益。
在设备102a处,可以从数据源412向发射(“TX”)数据处理器414提供多个数据流的业务数据。
在一个实施例中,每个数据流在相应的发射天线上被发送。TX数据处理器414基于为每个数据流所选择的特定编码方案,对该数据流的业务数据进行格式化、编码和交织以提供编码数据。
可以使用OFDM技术将每个数据流的编码数据与导频数据进行复用。一般情况下,导频数据是以已知方式处理的已知数据模式,并且导频数据可以在接收机系统处被用来估计信道响应。随后,基于为每个数据流所选择的特定调制方案(例如,BPSK、QPSK、M-PSK或M-QAM等等),对该数据流的复用后的导频和编码数据进行调制(即,符号映射),以提供调制符号。可以通过由处理器430执行的指令来确定每个数据流的数据速率、编码和调制。数据存储器432可以存储由处理器430或设备102a的其它组件使用的程序代码、数据及其它信息。另外,处理器430可以执行本申请所述的与为流排列优先顺序相关的方法。
随后,可以向TX MIMO处理器420提供所有数据流的调制符号,TX MIMO处理器420可以进一步处理这些调制符号(例如,用于OFDM)。随后,TX MIMO处理器420向NT个收发机(“XCVR”)422A至422T提供NT个调制符号流。在某些方面,TX MIMO处理器420向这些数据流的符号和正在发送该符号的天线应用波束成形权重。
收发机422A至422T中的每个收发机接收和处理相应的符号流,以便提供一个或多个模拟信号,并进一步调节(例如,放大、滤波和上变频等)这些模拟信号以便提供适合于在MIMO信道上传输的调制信号。随后,分别从NT付天线424A至424T发射来自收发机422A至422T的NT个调制信号。
在设备102b处,由NR付天线452A至452R接收所发射的调制信号,并且从天线452A至452R中的每付天线接收的信号被提供给各自的收发机(“XCVR”)454A至454R。收发机454A至454R中的每个收发机调节(例如,滤波、放大和下变频等)各自所接收的信号,对调节后的信号进行数字化以便提供采样,并进一步处理这些采样以便提供相应的“接收的”符号流。
随后,接收(“RX”)数据处理器460从NR个收发机454A至454R接收NR个接收的符号流,并基于特定的接收机处理技术对这些接收的符号流进行处理,以便提供NT个“检测的”符号流。随后,RX数据处理器460对每个检测的符号流进行解调、解交织和解码,以便恢复出该数据流的业务数据。RX数据处理器460所执行的处理与设备102a处的TX MIMO处理器420和TX数据处理器414所执行的处理是互补的。
处理器470周期性地确定要使用哪个预编码矩阵(如以下所论述的)。处理器470制定包括矩阵索引部分和秩值部分的反向链路消息。数据存储器472可以存储由处理器470或设备102b的其它组件使用的程序代码、数据及其它信息。另外,处理器470可以执行本申请所述的与为流排列优先顺序相关的方法。
反向链路消息可以包括关于通信链路和/或所接收的数据流的各种类型信息。随后,反向链路消息可以由TX数据处理器438进行处理。TX数据处理器438还从数据源436接收多个数据流的业务数据。调制器480对数据流进行调制。另外,收发机454A至454R对数据流进行调节,并且将数据流发送回设备102a。
在设备102a处,来自设备102b的调制信号由天线424A至424T进行接收。另外,收发机422A至422T对调制信号进行调节。解调器(“DEMOD”)440对调制信号进行解调。RX数据处理器442对解调后的信号进行处理,并且提取出由设备102b发送的反向链路消息。随后,处理器430确定使用哪个预编码矩阵来确定波束成形权重。另外,处理器430处理所提取的消息。
另外,设备102a和/或设备102b可以包括执行本申请所教导的干扰控制操作的一个或多个组件。例如,如本申请所教导的,干扰(“INTER”)控制组件490可以与处理器430和/或设备102a的其它组件协作,以向另一个设备(例如,设备102b)发送信号/从另一个设备接收信号。类似地,干扰控制组件492可以与处理器470和/或设备102b的其它组件协作,以向另一个设备(例如,设备102a)发送信号/从另一个设备接收信号。应当认识到,对于每个设备102a和450,可以由单个组件提供所描述的组件中两个或更多个组件的功能。例如,单个处理组件可以提供干扰控制组件490和处理器430的功能。另外,单个处理组件可以提供干扰控制组件492和处理器470的功能。
应当理解,图4仅仅是设备102的一个示例。设备102还可以包括如以上所论述的任何适当的通信设备,并且设备102还可以包括用于存储数据和/或指令的存储器、用于执行指令并且执行本申请所述的方法的处理器以及用于传送数据的收发机(或者接收机和发射机)和/或某些其它通信接口。
图5是可以用在图1的通信网络100中的另一个示例性无线设备500的功能框图。设备500包括识别模块505、确定模块510、分配模块515以及等待模块520。在各个实施例中,设备500可以是以上参照图1和图4所论述的设备102中的任一个设备。例如,设备500可以是发射机102a和/或接收机102b。本领域技术人员将认识到,所示的设备500的各个实施例可以包括未示出的另外的组件,并且可以省略所示的一个或多个组件。
在所示的实施例中,识别模块505可以被配置为执行以上参照框205(图2)和/或框305(图3)所论述的功能中的一个或多个功能。识别模块505可以对应于以上参照图4所论述的处理器430、处理器470、存储器432、存储器472、TX数据处理器413、TX数据处理器438、RX数据处理器442和RX数据处理器460中的一个或多个。
仍参照图5,确定模块510可以被配置为执行以上参照框210(图2)和/或框310(图3)所论述的功能中的一个或多个功能。确定模块510可以对应于以上参照图4所论述的处理器430、处理器470、存储器432和存储器472中的一个或多个。分配模块515可以被配置为执行以上参照框210(图2)和/或框310(图3)所论述的功能中的一个或多个功能。分配模块515505可以对应于以上参照图4所论述的处理器430、处理器470、存储器432、存储器472、TX数据处理器413、TX数据处理器438、RX数据处理器442、RX数据处理器460、XCVR422和XCVR454中的一个或多个。
应当理解,本申请使用诸如“第一”、“第二”等等之类的名称对元素的任何提及通常并不限制这些元素的量或顺序。相反,本申请将这些名称作为一种区分两个或更多个元素或者元素实例的简便方法来使用。因此,对第一元素和第二元素的提及并不意味着只可以使用两个元素或者第一元素必须以某种方式先于第二元素。另外,除非另有说明,否则一组元素可以包括一个或多个元素。另外,说明书或权利要求书中所使用的“A、B或C中的至少一个”形式的术语意指“A或B或C或这些元素的任意组合”。
本领域技术人员将理解,信息和信号可以使用多种不同的技术和方法中的任一种来表示。例如,在贯穿上面的描述中提及的数据、指令、命令、信息、信号、比特、符号和码片可以用电压、电流、电磁波、磁场或磁性粒子、光场或光粒子或者其任意组合来表示。
本领域技术人员还将明白,结合本申请所公开的示例而描述的各个说明性的逻辑框、模块、电路、方法和算法均可以实现成电子硬件,计算机软件,或者这两者的组合。为了清楚地说明硬件和软件之间的这种可互换性,上面对各个说明性的组件、框、模块、电路、方法和算法均围绕其功能进行了总体描述。至于这种功能是实现成硬件还是实现成软件,取决于特定的应用和对整个系统所施加的设计约束。本领域技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是,这种实现决策不应解释为脱离本发明的保护范围。
可以利用被设计为执行本申请所描述的功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件或者上述的任意组合,来实现或执行结合本申请公开的示例所描述的各个说明性的逻辑框、模块和电路。通用处理器可以是微处理器,或者,该处理器也可以是任何常规的处理器、控制器、微控制器或者状态机。处理器也可以实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器与DSP通信的结合,或者任何其它此种结构。
结合本申请所公开的方面所描述的方法或者算法的步骤可以直接实现在硬件中、由处理器执行的软件模块中或者这两者的组合中。软件模块(例如,其包括可执行指令和相关数据)和其它数据可以位于数据存储器(例如,RAM存储器、闪存、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、移动磁盘、CD-ROM或本领域已知的任何其它形式的计算机可读存储介质)中。一种示例性的存储介质可以耦合到机器,例如计算机/处理器(其在这里为了方便起见可以称为“处理器”),使得处理器能够从该存储介质读取信息(例如,代码),并可向该存储介质写入信息。示例性存储介质可以是处理器的组成部分。处理器和存储介质可以位于ASIC中。该ASIC可以位于用户设备中。或者,处理器和存储介质可以作为分立组件位于用户设备中。另外,在某些方面,任何适当的计算机程序产品可以包括计算机可读介质,该计算机可读介质包括与本申请公开内容的方面中的一个或多个方面相关的(例如,可由至少一个计算机执行的)代码。在某些方面,计算机程序产品可以包括封装材料。
在一个或多个示例性实施例中,所描述的功能可以在硬件、软件、固件或者上述的任意组合中实现。如果在软件中实现,则这些功能可以作为一个或多个指令或者代码在计算机可读介质上存储或者发送。计算机可读介质包括计算机存储介质和通信介质两者,其中通信介质包括有助于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够访问的任何可用介质。举例而非限制地来说,这种计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储器、磁盘存储器或其它磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机进行访问的任何其它介质。此外,可以将任何连接恰当地称作计算机可读介质。举例而言,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或其它远程源发送的,那么所述同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线电和微波之类的无线技术包括在所述介质的定义中。本申请所使用的磁盘(disk)和光盘(disc)包括压缩光盘(CD)、激光盘、光盘、数字通用光盘(DVD)、软盘和蓝光光盘,其中磁盘通常以磁的方式再现数据,而光盘则利用激光以光的方式再现数据。因此,在某些方面,计算机可读介质可以包括非临时性计算机可读介质(例如,有形介质)。另外,在某些方面,计算机可读介质可以包括临时性计算机可读介质(例如,信号)。上述的组合也应当包括在计算机可读介质的范围之内。
为使本领域任何技术人员能够实现或者使用本发明,上面提供了对所公开的示例的描述。对于本领域技术人员来说,对这些示例的各种修改都是显而易见的,并且,本申请定义的一般原理也可以在不脱离本发明的精神或保护范围的基础上应用于其它示例。因此,本发明并非旨在限于本申请所示的示例,而是与符合本申请公开的原理和新颖特征的最广范围相一致。

Claims (26)

1.一种在通信网络中操作的设备中操作的方法,该方法包括:
基于共享的业务流约束来从与在所述设备上运行的应用相关联的多个流中识别流集合,其中所述流集合包括第一流和第二流;
确定针对所述第一流的第一目标数据速率和针对所述第二流的第二目标数据速率;以及
基于所述业务流约束、与所述业务流约束相关联的可用带宽、所述第一目标数据速率以及所述第二目标数据速率来为所述流集合中的每个流分配带宽,其中,所述分配是通过针对不同的流调整不同的参数来执行的。
2.如权利要求1所述的方法,其中,所述调整所述参数使得所述流集合中的至少一个流被节流、被给予积极参数、被排列优先顺序和/或被重新排列优先顺序。
3.如权利要求1所述的方法,其中,识别所述流集合包括:确定所述第一流是否在所述第二流经历拥塞事件的阈值时间段内经历所述拥塞事件。
4.如权利要求3所述的方法,其中,所述拥塞事件包括下列中的至少一个:丢失的分组、增加的往返时间、发送速率降低、瞬时吞吐量降低。
5.如权利要求1所述的方法,其中,识别所述流集合包括:确定所述第一流是否被分配第一预期带宽以及所述第二流是否被分配第二预期带宽。
6.如权利要求1所述的方法,其中,识别所述流集合包括:确定所述第一流是否被分配第一预期接收数据速率以及所述第二流是否被分配第二预期接收数据速率。
7.如权利要求1所述的方法,其中,识别所述流集合包括:确定所述第一流是否被分配第一预期拥塞窗口尺寸以及所述第二流是否被分配第二预期拥塞窗口尺寸。
8.如权利要求1所述的方法,其中,所述第一目标数据速率和所述第二目标数据速率是基于与所述业务流约束相关联的可用带宽来确定的。
9.如权利要求1所述的方法,其中,为所述流集合中的每个流分配带宽包括:调整与所述流集合中的至少一个流相关联的减小参数。
10.如权利要求1所述的方法,其中,为所述流集合中的每个流分配带宽包括:调整与所述流集合中的至少一个流相关联的增加参数。
11.如权利要求1所述的方法,其中,为所述流集合中的每个流分配带宽包括:调整与所述流集合中的至少一个流相关联的拥塞窗口尺寸。
12.如权利要求1所述的方法,其中,为所述流集合中的每个流分配带宽包括:调整与所述流集合中的至少一个流相关联的接收窗口尺寸。
13.如权利要求1所述的方法,其中,为所述流集合中的每个流分配带宽包括:调整与所述流集合中的至少一个流相关联的确认延迟时间。
14.一种在通信网络中操作的设备,所述设备包括:
用于基于共享的业务流约束来从与在所述设备上运行的应用相关联的多个流中识别流集合的单元,其中,所述流集合包括第一流和第二流;
用于确定针对所述第一流的第一目标数据速率和针对所述第二流的第二目标数据速率的单元;以及
用于基于所述业务流约束、与所述业务流约束相关联的可用带宽、所述第一目标数据速率以及所述第二目标数据速率来为所述流集合中的每个流分配带宽的单元,其中,所述分配是通过针对不同的流调整不同的参数来执行的。
15.如权利要求14所述的设备,其中,所述调整所述参数使得所述流集合中的至少一个流被节流、被给予积极参数、被排列优先顺序和/或被重新排列优先顺序。
16.如权利要求14所述的设备,其中,所述用于识别所述流集合的单元包括:用于确定所述第一流是否在所述第二流经历拥塞事件的阈值时间段内经历所述拥塞事件的单元。
17.如权利要求16所述的设备,其中,所述拥塞事件包括下列中的至少一个:丢失的分组、增加的往返时间、发送速率降低、瞬时吞吐量降低。
18.如权利要求14所述的设备,其中,所述用于识别所述流集合的单元包括:用于确定所述第一流是否被分配第一预期带宽以及所述第二流是否被分配第二预期带宽的单元。
19.如权利要求14所述的设备,其中,所述用于识别所述流集合的单元包括:用于确定所述第一流是否被分配第一预期接收数据速率以及所述第二流是否被分配第二预期接收数据速率的单元。
20.如权利要求14所述的设备,其中,所述用于识别所述流集合的单元包括:用于确定所述第一流是否被分配第一预期拥塞窗口尺寸以及所述第二流是否被分配第二预期拥塞窗口尺寸的单元。
21.如权利要求14所述的设备,其中,所述第一目标数据速率和所述第二目标数据速率是基于与所述业务流约束相关联的可用带宽来确定的。
22.如权利要求14所述的设备,其中,所述用于为所述流集合中的每个流分配带宽的单元包括:用于调整与所述流集合中的至少一个流相关联的减小参数的单元。
23.如权利要求14所述的设备,其中,所述用于为所述流集合中的每个流分配带宽的单元包括:用于调整与所述流集合中的至少一个流相关联的增加参数的单元。
24.如权利要求14所述的设备,其中,所述用于为所述流集合中的每个流分配带宽的单元包括:用于调整与所述流集合中的至少一个流相关联的拥塞窗口尺寸的单元。
25.如权利要求14所述的设备,其中,所述用于为所述流集合中的每个流分配带宽的单元包括:用于调整与所述流集合中的至少一个流相关联的接收窗口尺寸的单元。
26.如权利要求14所述的设备,其中,所述用于为所述流集合中的每个流分配带宽的单元包括:用于调整与所述流集合中的至少一个流相关联的确认延迟时间的单元。
CN201180052908.1A 2010-11-02 2011-11-02 用于在网络中进行通信的系统和方法 Active CN103201988B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US40947410P 2010-11-02 2010-11-02
US61/409,474 2010-11-02
US13/286,541 2011-11-01
US13/286,541 US9094326B2 (en) 2010-11-02 2011-11-01 Systems and methods for communicating in a network
PCT/US2011/059022 WO2012061533A1 (en) 2010-11-02 2011-11-02 Systems and methods for communicating in a network

Publications (2)

Publication Number Publication Date
CN103201988A CN103201988A (zh) 2013-07-10
CN103201988B true CN103201988B (zh) 2016-09-21

Family

ID=45996670

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180052908.1A Active CN103201988B (zh) 2010-11-02 2011-11-02 用于在网络中进行通信的系统和方法

Country Status (7)

Country Link
US (1) US9094326B2 (zh)
EP (1) EP2636193B1 (zh)
JP (2) JP2014502446A (zh)
KR (1) KR101470406B1 (zh)
CN (1) CN103201988B (zh)
TW (1) TW201225610A (zh)
WO (1) WO2012061533A1 (zh)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8881038B1 (en) 2007-11-19 2014-11-04 Brian Palmer Method of rendering dynamic vehicle telemetry on a graphical display
US8532866B1 (en) * 2011-05-20 2013-09-10 Brian Palmer Concurrent vehicle data port communication system
US8897952B1 (en) 2011-05-20 2014-11-25 Brian Palmer Vehicle diagnostic communications system and application
US8884749B1 (en) 2012-10-23 2014-11-11 Brian Palmer Driver information and alerting system
US9349223B1 (en) 2013-04-10 2016-05-24 Brian Palmer System for advertising vehicle information wirelessly
US9112751B1 (en) 2010-02-02 2015-08-18 Qualcomm Incorporated Distributed bandwidth control in a communication network
US8681614B1 (en) * 2011-03-29 2014-03-25 Riverbed Technology, Inc. Quality of service for inbound network traffic flows
US9900799B2 (en) * 2011-08-16 2018-02-20 Qualcomm Incorporated Reverse link control to reduce forward link latency
WO2013052649A1 (en) * 2011-10-05 2013-04-11 Telcordia Technologies, Inc. Method and system for distributed, prioritized bandwidth allocation in networks
US9591098B2 (en) 2012-02-01 2017-03-07 Cisco Technology, Inc. System and method to reduce stream start-up delay for adaptive streaming
US9013995B2 (en) * 2012-05-04 2015-04-21 Telefonaktiebolaget L M Ericsson (Publ) Congestion control in packet data networking
US9413672B2 (en) * 2012-06-06 2016-08-09 Apple Inc. Flow control for network packets from applications in electronic devices
US9288719B2 (en) * 2012-09-28 2016-03-15 Optis Cellular Technology, Llc Link adaptation for a multi-hop route in a wireless mesh network
US10033587B2 (en) 2012-11-09 2018-07-24 At&T Intellectual Property I, L.P. Controlling network traffic using acceleration policies
TWI470974B (zh) 2013-01-10 2015-01-21 Univ Nat Taiwan 多媒體資料傳輸速率調節方法及網路電話語音資料傳輸速率調節方法
US20140281018A1 (en) * 2013-03-13 2014-09-18 Futurewei Technologies, Inc. Dynamic Optimization of TCP Connections
US9148386B2 (en) * 2013-04-30 2015-09-29 Cisco Technology, Inc. Managing bandwidth allocation among flows through assignment of drop priority
EP3028407B1 (en) * 2013-07-31 2021-09-08 Assia Spe, Llc Method and apparatus for continuous access network monitoring and packet loss estimation
KR102139721B1 (ko) * 2013-08-29 2020-07-30 삼성전자주식회사 다중 경로 프로토콜에서 이중으로 네트워크 코딩을 적용하는 방법 및 그 장치
US9923945B2 (en) 2013-10-10 2018-03-20 Cisco Technology, Inc. Virtual assets for on-demand content generation
CN103795643B (zh) * 2014-01-28 2017-02-15 广西大学 数据中心网络中处理同步优先级突发流的方法
US9674099B2 (en) * 2014-09-25 2017-06-06 Microsoft Technology Licensing, Llc Network classification for applications
CN105592487B (zh) * 2014-10-22 2020-04-03 中兴通讯股份有限公司 一种lte网络业务流量评估方法及装置
US9929956B2 (en) * 2015-02-26 2018-03-27 Citrix Systems, Inc. System for bandwidth optimization with initial congestion window determination
US9826066B2 (en) 2015-02-26 2017-11-21 Citrix Systems, Inc. System for dynamic selection and application of TCP congestion avoidance flavors
US9985898B2 (en) * 2015-02-26 2018-05-29 Citrix Systems, Inc. System for bandwidth optimization with traffic priority determination
WO2016136215A1 (ja) * 2015-02-27 2016-09-01 日本電気株式会社 制御装置およびトラフィック制御方法、並びにコンピュータ・プログラムを記録する記録媒体
US11430336B2 (en) 2015-03-20 2022-08-30 Ken Smith Vehicle monitoring systems and methods
US10109201B2 (en) * 2015-03-20 2018-10-23 Automap, Llc Vehicle monitoring devices, vehicle monitoring management devices, and vehicle monitoring systems
EP3073702B1 (en) * 2015-03-27 2017-09-06 Axis AB Method and devices for negotiating bandwidth in a peer-to-peer network
US9582342B2 (en) 2015-04-23 2017-02-28 National Instruments Corporation API constraint language for a communication device
US10158575B2 (en) * 2015-06-17 2018-12-18 Citrix Systems, Inc. System for bandwidth optimization with high priority traffic awareness and control
CN105159781B (zh) * 2015-08-25 2018-11-27 广东欧珀移动通信有限公司 调节智能终端应用网速的方法、装置和智能终端
US10091124B2 (en) * 2015-09-04 2018-10-02 Citrix Systems, Inc. System for early system resource constraint detection and recovery
US10313194B2 (en) * 2015-09-28 2019-06-04 International Business Machines Corporation Flexibly deployable network analyzer
WO2018114519A1 (en) * 2016-12-21 2018-06-28 British Telecommunications Public Limited Company Managing congestion response during content delivery
US10362166B2 (en) 2017-03-01 2019-07-23 At&T Intellectual Property I, L.P. Facilitating software downloads to internet of things devices via a constrained network
US10476673B2 (en) 2017-03-22 2019-11-12 Extrahop Networks, Inc. Managing session secrets for continuous packet capture systems
US11063879B2 (en) * 2017-04-12 2021-07-13 New York University Determining a receive window of a receiving device that reduces bufferbloat in a wireless communications system, such as that caused by TCP dynamics over millimeter wave links
CN109257304A (zh) * 2017-07-12 2019-01-22 中兴通讯股份有限公司 一种带宽调整方法、装置、存储介质和网络设备
CN107707382B (zh) * 2017-08-15 2018-10-23 贵州白山云科技有限公司 一种智能调度方法和装置
US9967292B1 (en) 2017-10-25 2018-05-08 Extrahop Networks, Inc. Inline secret sharing
US11470569B2 (en) * 2017-11-21 2022-10-11 Qualcomm Incorporated Uplink transmissions without uplink timing control and measurement
US10389574B1 (en) 2018-02-07 2019-08-20 Extrahop Networks, Inc. Ranking alerts based on network monitoring
US10270794B1 (en) 2018-02-09 2019-04-23 Extrahop Networks, Inc. Detection of denial of service attacks
US10411978B1 (en) 2018-08-09 2019-09-10 Extrahop Networks, Inc. Correlating causes and effects associated with network activity
US10965702B2 (en) 2019-05-28 2021-03-30 Extrahop Networks, Inc. Detecting injection attacks using passive network monitoring
US11388072B2 (en) 2019-08-05 2022-07-12 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US10742530B1 (en) * 2019-08-05 2020-08-11 Extrahop Networks, Inc. Correlating network traffic that crosses opaque endpoints
US11140086B2 (en) * 2019-08-15 2021-10-05 At&T Intellectual Property I, L.P. Management of background data traffic for 5G or other next generations wireless network
US10742677B1 (en) 2019-09-04 2020-08-11 Extrahop Networks, Inc. Automatic determination of user roles and asset types based on network monitoring
US11895039B2 (en) * 2019-09-12 2024-02-06 Nec Corporation Scalable data flows in a communication network
JP2021176222A (ja) * 2020-05-01 2021-11-04 住友電気工業株式会社 車載通信装置とこの装置が実行する帯域抑制方法
US11310256B2 (en) 2020-09-23 2022-04-19 Extrahop Networks, Inc. Monitoring encrypted network traffic
US11463466B2 (en) 2020-09-23 2022-10-04 Extrahop Networks, Inc. Monitoring encrypted network traffic
US11349861B1 (en) 2021-06-18 2022-05-31 Extrahop Networks, Inc. Identifying network entities based on beaconing activity
US11296967B1 (en) 2021-09-23 2022-04-05 Extrahop Networks, Inc. Combining passive network analysis and active probing
US11843606B2 (en) 2022-03-30 2023-12-12 Extrahop Networks, Inc. Detecting abnormal data access based on data similarity

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1672142A (zh) * 2002-08-12 2005-09-21 松下电器产业株式会社 网络网关中的服务质量管理
CN101849393A (zh) * 2007-11-05 2010-09-29 高通股份有限公司 调度尽力交付(be)流和延迟qos流的混合流
CN101849396A (zh) * 2007-11-05 2010-09-29 高通股份有限公司 在宽带无线通信系统中调度qos流

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3558044B2 (ja) 2001-02-09 2004-08-25 日本電気株式会社 パケット転送レート監視制御装置、方法、及びプログラム
US7042848B2 (en) * 2001-05-04 2006-05-09 Slt Logic Llc System and method for hierarchical policing of flows and subflows of a data stream
JP3904922B2 (ja) 2001-12-28 2007-04-11 株式会社日立製作所 トラヒックシェーパーおよび集線装置
JP4042696B2 (ja) * 2004-01-08 2008-02-06 日本電気株式会社 通信システム、通信端末及び通信プログラム
US7426181B1 (en) * 2004-03-26 2008-09-16 Packeteer, Inc. Slow-start adaptive mechanisms to improve efficiency of bandwidth allocation
KR20060025921A (ko) * 2004-09-18 2006-03-22 김민식 인터넷 경로들 간의 공유 혼잡 탐지 방법
KR100762650B1 (ko) 2005-03-10 2007-10-01 삼성전자주식회사 비대칭 대역폭 링크를 갖는 가입자 망에서 전송제어프로토콜의 양방향 동시전송을 위한 전송 제어 방법 및장치
JP2006311475A (ja) 2005-03-31 2006-11-09 Ntt Docomo Inc 制御装置、移動局および移動通信システム並びに制御方法
JP2007013449A (ja) 2005-06-29 2007-01-18 Nec Commun Syst Ltd シェーパー制御方法、データ通信システム、ネットワークインタフェース装置及びネットワーク中継装置
US7395361B2 (en) 2005-08-19 2008-07-01 Qualcomm Incorporated Apparatus and methods for weighted bus arbitration among a plurality of master devices based on transfer direction and/or consumed bandwidth
EP2074769A2 (en) 2006-10-06 2009-07-01 ViaSat, Inc. Dynamic feedback for outbound link rate adjustment in multi-rate downstream
US7760642B2 (en) 2007-03-12 2010-07-20 Citrix Systems, Inc. Systems and methods for providing quality of service precedence in TCP congestion control
US20090073968A1 (en) * 2007-09-17 2009-03-19 Integrated Device Technology, Inc. Device with modified round robin arbitration scheme and method for transferring data
US7787379B2 (en) * 2008-06-03 2010-08-31 Cisco Technology, Inc. Integrated flow control
US7860004B2 (en) * 2008-07-25 2010-12-28 At&T Intellectual Property I, Lp Systems and methods for proactive surge protection
JP5659791B2 (ja) 2008-10-09 2015-01-28 日本電気株式会社 コンテンツ配信システム、コンテンツ配信方法及びプログラム
WO2010073671A1 (ja) 2008-12-25 2010-07-01 パナソニック株式会社 Tcp送信制御装置及びtcp送信制御方法
JP2010213098A (ja) * 2009-03-11 2010-09-24 Mitsubishi Electric Corp 優先制御装置および優先制御方法
JP2010226455A (ja) 2009-03-24 2010-10-07 Sony Corp ネットワーク通信装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1672142A (zh) * 2002-08-12 2005-09-21 松下电器产业株式会社 网络网关中的服务质量管理
CN101849393A (zh) * 2007-11-05 2010-09-29 高通股份有限公司 调度尽力交付(be)流和延迟qos流的混合流
CN101849396A (zh) * 2007-11-05 2010-09-29 高通股份有限公司 在宽带无线通信系统中调度qos流

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Stateless Proportional Bandwidth Allocation;Prasanna K. Jaganathan et al;;《SPIE》;20020701;第25-36页 *

Also Published As

Publication number Publication date
JP6077047B2 (ja) 2017-02-08
US9094326B2 (en) 2015-07-28
KR101470406B1 (ko) 2014-12-08
TW201225610A (en) 2012-06-16
KR20130085053A (ko) 2013-07-26
JP2014502446A (ja) 2014-01-30
EP2636193B1 (en) 2021-06-23
CN103201988A (zh) 2013-07-10
JP2015181248A (ja) 2015-10-15
US20120106342A1 (en) 2012-05-03
WO2012061533A1 (en) 2012-05-10
EP2636193A1 (en) 2013-09-11

Similar Documents

Publication Publication Date Title
CN103201988B (zh) 用于在网络中进行通信的系统和方法
RU2409898C2 (ru) Гибкая схема сегментации для систем связи
CN106254202B (zh) 一种基于喷泉码的多路并行传输方法以及装置
Mittal et al. Recursively cautious congestion control
CN102823202B (zh) 用于通信网络中的拥塞处理的方法和网络组件
HUE030044T2 (en) Applying equipment, process, and computer program product to increase data rate based on the ability to send at least one additional selected data unit
CN110999362B (zh) 使用半静态配置的harq-ack码本中的冗余比特的方法和设备
CN109327303B (zh) 一种控制信道资源分配方法及装置
TW201136398A (en) Power allocation in multi-carrier enhanced uplink
CN108631958A (zh) 一种确定混合自动重传请求harq进程的方法和装置
CN109644467A (zh) 传输上行控制信息的方法和设备
CN109152009A (zh) 通信方法、终端设备和网络设备
CN105392157B (zh) 一种拥塞窗口的调整方法、相关装置和系统
Rinne et al. A performance summary of the evolved 3G (E-UTRA) for voice over internet and best effort traffic
EP2095594B1 (en) A method and device for transmitting tcp data over asymmetric links
CN104618075A (zh) Tti集束的传输处理方法及装置、网络侧设备、ue
CN108400806A (zh) 信道传输方法及装置,终端
CN109560898A (zh) 重传请求反馈消息传输方法、ue及通信系统
CN109842907A (zh) 传输数据的方法和装置
CN105472655B (zh) 一种拥塞窗口的调整方法、相关装置和系统
CN105659543A (zh) 下行链路流管理
CN109348513A (zh) 一种数据包传输方法、终端及计算机存储介质
CN109982376B (zh) 一种适用于无线系统的多路径强实时传输方法
CN108347322A (zh) 一种用于上行链路传输的方法及装置
US20090257377A1 (en) Reducing buffer size for repeat transmission protocols

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