CN1551580A - 用于隐式区分网络中的服务质量的方法和设备 - Google Patents
用于隐式区分网络中的服务质量的方法和设备 Download PDFInfo
- Publication number
- CN1551580A CN1551580A CNA2004100384101A CN200410038410A CN1551580A CN 1551580 A CN1551580 A CN 1551580A CN A2004100384101 A CNA2004100384101 A CN A2004100384101A CN 200410038410 A CN200410038410 A CN 200410038410A CN 1551580 A CN1551580 A CN 1551580A
- Authority
- CN
- China
- Prior art keywords
- stream
- packet
- equipment
- allowance
- tabulation
- 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
Links
- 238000000034 method Methods 0.000 title claims description 38
- 230000015572 biosynthetic process Effects 0.000 claims description 39
- 238000005259 measurement Methods 0.000 claims description 21
- 101001093690 Homo sapiens Protein pitchfork Proteins 0.000 claims description 16
- 102100036065 Protein pitchfork Human genes 0.000 claims description 16
- 230000007246 mechanism Effects 0.000 claims description 12
- 238000004458 analytical method Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 28
- 230000014509 gene expression Effects 0.000 description 14
- 238000007726 management method Methods 0.000 description 10
- 230000006978 adaptation Effects 0.000 description 7
- 230000004069 differentiation Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 229920006395 saturated elastomer Polymers 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 230000006866 deterioration Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000011144 upstream manufacturing Methods 0.000 description 2
- 208000030984 MIRAGE syndrome Diseases 0.000 description 1
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000002650 habitual effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- TVLSRXXIMLFWEO-UHFFFAOYSA-N prochloraz Chemical compound C1=CN=CN1C(=O)N(CCC)CCOC1=C(Cl)C=C(Cl)C=C1Cl TVLSRXXIMLFWEO-UHFFFAOYSA-N 0.000 description 1
- 238000000275 quality assurance Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 125000006850 spacer group Chemical group 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
- H04L12/5601—Transfer mode dependent, e.g. ATM
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/11—Identifying congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/17—Interaction among intermediate nodes, e.g. hop by hop
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/22—Traffic shaping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2416—Real-time traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2483—Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/29—Flow control; Congestion control using a combination of thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/30—Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/74—Admission control; Resource allocation measures in reaction to resource unavailability
- H04L47/745—Reaction in network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/805—QOS or priority aware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/822—Collecting or measuring resource availability data
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
本发明涉及用于处理在网络链路上的流的数据包(20)的设备,该设备包括用于按照具有优先级算法的合理排队,调度在一队列中的数据包的调度装置(28)。
Description
技术领域
本发明涉及数据包交换网络的体系结构以及在该体系结构中的服务质量的管理。
背景技术
互联网是适用于支持广泛的服务和应用的多重服务工具。在互联网上有两类主要的业务(traffic):通常由音频和视频应用产生的实时(流动)业务,和对应于数字文档的传递的数据(弹性)业务。实时业务的服务质量需求对应于保护信号的需要:当信号通过网络传播时,表示由源产生的信号的特征的比特率变化必须被保护。数据业务的服务的质量由文档传递的时间来衡量。这时,或者是与之等同的在转换期间达到的平均比特率,将取决于从源到目的地的整个通信通道。互联网网络的服务目标的质量可能是,其对于数据业务应该是透明的,因为与其它位置(服务器、存取网络、用户设备)所引入的限制相比,其不会引入进一步的比特率降低;意即网络保护数据流的比特率。
互联网是向处于商业关系的用户客户提供传输服务的公共网络。因此收费问题是非常重要的。网络体系结构必须为运营商提供投资回报,并结合以用户所需的服务质量的有竞争力的价格。
不同的网络体系结构的提议构成了对于这些质量和投资回报需求的各种各样的响应。一些体系结构,例如综合业务模型(Intserv)、区分业务模型(Diffserv)和多协议标记交换-TE(MPLS-TE)是标准化的,而其它的则是独有的。
现有的IP网络体系结构,作为尽力而为(best effort)的体系结构提供不了服务质量的保证。性能通过过度规格(overspecification)而达到令人满意,并且取决于用户的配合,而理论上,用户必须按照网络拥塞状态的函数调整他们的应用的比特率(特别是当使用TCP和对TCP友好的协议时)。实时业务和数据业务的数据包按彼此之间并无区别的方式被处理。
IP路由器目前在对于路由一个数据包有两个或更多路径可用时,使用负载分配(load sharing)的原理。对于给定的数据包的选择通常通过向该数据包的原始IP地址应用散列函数(hashing function)来确定:应用该函数的结果是指定考虑中的接口的一个整数。通过这种方式,负载在可用的路径上被分配而所有的相同流的数据包获得相同的路径并因此以正确顺序到达。
对于较小的用户来说费用通常是固定的。与此相比,较大的用户可以按发送或者接收的业务的量的函数来支付运营商。这时,通常有一个协定,规定了关于提供:数据包丢失率、网络交叉延迟、稳定因素的服务特征的质量。
作为上述体系结构的改进,已提出的多数高级别的体系结构使用预留资源的原理。网络和用户建立对于计划的呼叫的业务协定:
-用户通过描述业务的特性宣布(announce)计划的呼叫,
-可能时(许可控制),网络分配必要的资源,
-或者是所发送的业务在入口上被监控以确认其符合预先给出的描述,或者是所分配的资源被WFQ类型调度监控。
根据所建议的体系结构,上述协定涉及微流(microflow)或者流的聚集,点对点呼叫或者多点呼叫。
收费包括在协定中。它们通常取决于用户所提供的业务描述,而业务描述决定资源的分配。
当根据服务类型做出了区分时,网络以具体方式处理相同类型的所有数据包。在用于实时业务和数据业务所分别需要的两种类型的质量之间做出了区分,并且在相同类型内的不同级别的质量之间进行了区别。通常必须遵照用户和运营商关于业务累计的协定的条款,仔细监控数据包向不同类型服务的分配。
收费是协定的一部分,并且通常取决于每一类中所发送的业务量。根据质量等级有必要存在收费差别,因为否则每个用户都会将所有的业务放在最高质量的类型中。
由F.P.Kelly在“用于自管理互联网的模块”(“Models for aself-managed Internet,Philosophical Transactions of he Royal Society”,Vol.A358,第2335-2348页,2000年)中描述的自管理互联网避免了服务的预留和分类。在该体系结构中,如果发生拥塞,网络发送具有单元“成本”的显式拥塞通知(ECN)。用户可以将他们的“帐单”调制为他们对接收到的通知的反应的函数,并且可以因此在他们接受为其呼叫支付更多时,通过对所接收到的通知不做出反应,来忽略拥塞。
在实时业务和数据业务之间区分的必要性从原理上被避免了。要求通过利用占有虚拟队列来决定ECN标志,使数据包延迟变得微不足道。
自管理网络并不使提供专用信号协议成为必须,并且提供与尽力而为的网络一样简单的资源管理。
在例如由J.Roberts等人在“通过关注流的网络的服务质量”(“Quality of service by flow-aware networking,PhilosophicalTransactions of the Royal Society”,Vol.A 358,第2197-2207页,2000年)中所描述的关注流网络体系结构中,每个用户流立即被识别,而业务控制给予这些流。流是在包头的某个固定字段——通常是源和目的地IP地址、传送协议端口数量(IPv4)或者流标志字段(IPv6)——中具有相同值的一组数据包。流可以通过与待用周期(period ofinactivity)结合的超时值(time-out values)来指定。当在该待用周期期间观察不到数据包时流终止。图1示出了这种体系结构的原理和组件。装置4控制实时业务的峰值比特率。数据包被发送至路由判定模块6,而路由判定模块6查阅(consult)被保护的流的列表10。其将被准许的数据包转发至模块8,模块8根据为实时流的数据包给出优先级的优先级队列将它们排列。模块8向模块6发送准许条件数据16。该数据本质上包含实时流的当前累积比特率和对于数据流的可用的带宽测量。
如果链接或者路径在一瞬间内是拥塞的,则应用隐式准许(implicit admission)控制以防止新的流的启动。这一控制保护了已经在进行中的流的服务质量。在文献中已经提出了几种用于实现隐式准许控制的提议,例如A.Kumar等人的论文“用于互联网访问链接的带宽管理的无插入TCP连接准许控制”(“Non-intrusive TCPconnection admission control for bandwidth management of an Internetaccess link”,IEEE Comm.Mag.Vol.39,No.5,第160-167页,2000年)。
在图1的体系结构中,实时业务和数据业务通过它们的服务类型而被区分。但是,准许条件既不取决于流的类型,也不取决于流的特定的业务特性。这避免了流的业务特性的信号的需要。仍然必须在实时流的峰值比特率并未超出预定限制的入口上进行检查。为了确定准许条件,知晓该限制是必须的(参见T.Bonald等人的论文“IP业务和QoS控制:趋向关注流的体系结构”(“IP traffic and QoS control:towards a flow-aware architecture”,Proc.Of World Telecom.Conf.,巴黎2002年))。
在该体系结构中,收费可能仅取决于客户发送或者接收的业务量。任何已经开始的流都是有效的,因为其被保护,而且因此是可以收费的。实时和数据之间的区别并不一定需要不同的收费,因为不会引起替换:实时流经历着可以忽略的丢失和延迟而数据流在比特率方面不受限制。
美国公司Caspian Networks提出了另外一种类型的关注流体系结构(参见例如美国专利公开US-2002/57699,US-2002/57651和US-2002/80786)。数据包在运行中(on the fly)被识别,如上述那样。每一被准许的流结合有服务质量参数和路由。服务质量参数由信息的各种源推导出,包括数据包的报头和由用户的SLA推导出的规格表。路由作为服务质量参数和当前的网络资源的使用的函数被计算,以便符合流的性能需要。服务质量参数规定了保证速率(GR)等。可用速率(AR)在特定的时间周期被分配给流,作为其路由的拥塞状态的函数。该体系结构使用在入口上的调度以确保流的比特率符合分配的速率(GR+AR)。在出口上的调度确保了符合性能需要(特别是每数据包的延迟)。对出口的调度通过利用拒绝过度的数据包来间隔而实现,对出口的调度对每一个流使用WFQ算法。如果可能发现新的引入的流的适合的路由,则必须使用流准许控制。
所有上述体系结构具有以各种方式与质量保证的特性、实现的复杂程度或者网络的投资回报相关的缺点。
尽力而为的体系结构的缺点是广为人知的:
-拥塞时所有呼叫的性能劣化,
-对于和数据业务竞争的实时呼叫的缺少控制的数据包丢失和延迟,
-不合理的带宽分配,特别是在一些用户是恶意的情况下,
-通过过度规格确保服务质量的潜在的搞成本,
-如果用户的业务量非常不稳定,则固定收费难以定义合理的价格以确保好的投资回报率,
-按照业务量的函数进行收费还值得怀疑,因为其对拥塞的敏感性(丢失数据包的更新)和符合质量的最低级别的故障的概率,引起进行中的呼叫被中断。
预留原理具有下列缺点:
-发现在实际中不可能使用可能在入口上被检查的参数来简洁地描述呼叫的业务(通常以高度变化的比特率),
-预留是复杂的,必须有信号协议、利用每一呼叫的参数(“状态”)保持数据库,以及使用调度机制,
-如果呼叫获得的路径不能被确定则预留的概念变得不再确切(在Diffserv体系结构,特别是IP路由不稳定等情况下,用于向不同目的地的一组业务流的预留),
-就资源来说,严格的服务质量保证——例如在Intserv保证服务中——成本很高,
-通常被采用以便补偿用户过高估计他们的业务的事实的过度预留,导致缺乏任何实际的保证,
-收费存在问题:在过度预留时,基于(业务协定的)业务参数的收费并不直接与呼叫的成本相关,而呼叫的成本取决于实际发送的业务量;在严格保证时,与被预留的资源(带宽、存储器)相关的收费冒着被禁止的危险。
通过服务的分类进行区分引入了其它问题:
-对于数据业务缺乏可以计量的和可证实的服务质量保证,
-如果呼叫的路径不固定则不可能保证对于实时业务的服务质量,
-通过类型和通过用户的管理业务单元仍然复杂(SLA管理、策略服务器、业务参数信号等),
-低优先级类型的业务面临着与尽力而为的体系结构中的业务相同的缺点(拥塞时性能崩溃,没有针对恶意用户的保护),
-对服务的不同类型收费存在问题:价格差异是必须的但是如果在质量方面没有明显的差别则可能不为用户所理解,
-在收费和成本之间缺乏直接的联系造成难以定义出提供必要的投资回报的收费结构。
自管理的互联网避免了很多上述问题但是其所基于的收费原理本身也存在问题:
-基于ECN标志的收费是复杂的并且容易发生拥塞,
-如何对向运营商A的网络订购来自属于另一运营商B的下游网络的拥塞标志的用户记费?
-ECN收费的收入并未提供正确规定的网络的投资回报;假定另一收费原理必须提供那样的回报,则ECN收费可能被用户认为是不合理的过高收费。
前文中所引用的出版物中所公开的关注流的体系结构仍然具有下列缺点:
-实时业务和数据业务的显式区别要求必须控制实时流的峰值比特率,
-必须为实时流固定最大峰值比特率而且必须对其进行严格监控,即使在并不拥塞时可能准许以更高比特率流过而不会降低性能,
-性能仍然易受恶意用户的攻击,
-提出的用于拥塞测量(通过利用幻象(phantom)TCP或者由观察到的丢失率来估计可用带宽)的方法可能难以实现。
至于Caspian的关注流的体系结构,注意存在下列问题:
-考虑服务质量和根据流的业务参数导致复杂的实现,这可能引起展开的问题,
-关于该体系结构的可用文献并未规定所使用的用于确保符合流的服务质量的方法;但是,这些方法,特别是准许控制的原理的定义,对于所提出的体系结构的效率是决定性的,
-涉及的调度的形式(在入口上间隔,在出口上根据流WFQ)必须知晓每一流的具体参数(特别是,如果它们是实时流时——GR、MR——或者是数据流时——AR)以便符合它们的服务质量需要,
-未触及收费的问题。
发明内容
本发明的第一个目的是提供一种处理网络链路上的流的数据包的设备和方法,包括调度装置(或者调度步骤),用于根据具有优先级算法的合理排队(fair queuing)来安排队列中的数据包。
具有优先级调度的合理排队为比特率低于动态阈值的流的数据包给出了优先权,其中该动态阈值对应于例如有多个数据包在等待的流当前所使用的比特率——只要它们根据合理排队算法被处理。
上述这种设备或者方法能够无需准许控制装置而工作,特别是在其中拥塞的风险比核心网络中更可控制的接入网的情形下。
根据本发明,用于每一流的准许控制也可以与合理排队调度相关。
这样本发明的另一目的是提供一种用于处理在网络链路上的流的数据包的设备和方法,包括:
-准许控制装置(或者准许控制步骤),用于根据准许标准控制所述流准许进入该设备中,
-调度装置(或者调度步骤),用于根据具有优先级算法的合理分配来调度队列中的数据包。
该调度装置能够向该准许控制装置发送准许条件数据。
该设备和该方法确保服务质量而无需在实时流和数据流之间的显式区分。
这使得到其比特率保持低于由准许条件所确定的阈值的实时流的数据包的延迟被最小化。如果准许控制未被激活,则该阈值转而由业务条件确定。
该准许条件直接由测量数据流所实现的合理比特率以及由优先级数据包所代表的负载的调度装置确定。
准许控制和合理排队调度的结合给出了一定程度的“交叉保护”:
-数据流的比特率由合理排队保护,
-实时流的数据包延迟通过给予它们优先级而被保护,
-合理排队调度的复杂性通过使用准许控制以限制将要考虑的流的数量而被避免,
-准许控制通过被结合进调度装置中的测量而得到推进。
通过将(隐式的)准许控制技术和合理排队调度相结合,本发明确保了“足够的”质量而无需降低业务特性、定义服务类型、信令、或者明确预留资源。
如果准许控制未被激活,则将丢失交叉保护的一些优势,但是只要链接不发生拥塞就可以保持服务质量的隐式区分。低比特率实时流的数据包仅面临较短的等待时间而数据流能够实现由合理排队所确保的比特率。这一结构能够满足接入网的链接的具体情况,其中因为相对较少的被服务的用户数量而降低了拥塞的风险。
所选择的调度的形式使得该体系结构对于可能缺乏用户合作来说不再是脆弱的。该体系结构根据所发送或者接收的业务量提供了简单的收费。保持了自管理网络的用户——运营商关系的简单性,而没有与按照ECN标记的函数收费相关的缺点。这一简单性伴随的是关注流的体系结构的坚固和效率。
那些进入比特率使得其在队列中已经具有至少一个数据包的流在出口上实现了几乎相同的合理比特率。在本发明中,如果实时流的数据包以在一瞬间比合理比特率更高的比特率突然涌入地到达(例如,因为在上游队列中的等待),则调度装置给予第一个数据包优先级,但是通过强加入符合合理比特率的间隔延迟随后的数据包。如果该流的初始比特率比该合理比特率低,则该间隔通过不再引入相对于接收存储器在目的地处所强加入的延迟来说辅助的延迟而使流“平滑”,后者必须以其初始定时速率(timing rate)将数据包发送给最终用户。就这种意义来说,延迟仍然是可以忽略的。相比之下,比特率大于合理比特率的实时流将被劣化并且源通常将被迫采用比特率降低以防止数据丢失。
因此所使用的机制保证了对于峰值比特率——如对于所考虑的网络来说的外部元件所确定的——低于特定阈值的流的可以忽略的延迟和可以忽略的数据包丢失。该阈值是动态的并且对应于由所选择的调度形式实现的是合理的比特率(就最大—最小的意义来说)。于是准许控制实现了保护数据流的比特率和保护实时流的信号的双重目的。
准许控制通过限制要考虑的流的数量,使合理排队调度可扩展。合理排队有助于链接的拥塞状态的测量,该测量被用于确定准许条件。
本发明使用具有优先级调度的合理排队设备和方法以在实时流和数据流之间进行隐式的区分,确保实时流具有低的每数据包的延迟。
对每一流的隐式准许控制和具有优先级调度的合理排队相结合确保了服务质量,而无需在实时流和数据流之间进行显式区分。
因为准许控制通过拒绝第一个接收到的数据包来拒绝那些在链接为拥塞时到达的流,所以可以使用负载分配机制,根据流标识符进行自适应路由选择。如果用户通过发送相同数据包再次进行尝试直到成功发送,则业务不会丢失。如果在每一次尝试中数据包被呈现给能够将其路由至其目的地的另一个链接,则成功的概率更大。
为此目的,由路由器所采用的该负载分配机制可以对流标识符进行操作,其中流标识符包括待由用户自由填写的字段,例如IPv4中的端口号或者IPv6中的流标签。执行该负载分配的散列函数包括该自由字段作为变量,结果是用户通过对每次更新修改所考虑的字段的值,执行了一种自适应路由选择。
本发明使得将了解其流的网络的坚固和自管理互联网的简单结合在一起成为可能。从前者中保留了隐式准许控制,由此避免了用户在实时业务和数据业务之间进行区分的任何需要。网络利用它们的不同的业务特征,使这一区分自动进行。
附图说明
图1为显示关注流的网络体系结构的元件的图,
图2显示了本发明的体系结构的元件,
图3为准许区域图,
图4显示了PIFO(推入先出)队列的原理,
图5和图6显示了对数据包的到达所执行的或者在发送数据包的末端处所执行的算法,以及
图7和图8显示了测量拥塞、优先负载和合理比特率指示符的操作。
具体实施方式
图2显示了第一实施例。
在该图中,参考标号24表示对于进入流的数据包20执行准许控制的路由模块或者路由装置。
流(flow)的定义是,例如,在由Bonald等人的论文“IP业务和QoS控制:对关注流体系结构的需要”(“IP traffic and QoS control:the need for a flow-aware architecture”,World Telecom.Conference,巴黎2002年)中所公开的关注流(flow-aware)的体系结构中的定义。
被给予该模块的数据包20,例如由可能包括通过对流标识符的字段的子集应用散列函数而获得的负载分配的传统路由函数来确定。自适应路由选择的一种形式通过在这一子集中包括将由用户自由填充的报头的字段(传输协议端口号,IPv6的流标签)而获得。
模块24查阅被保护的流的列表30并使其保持最新,其中这些被保护的流实际上是由装置24所准许的流并且是有效的(active)(即,该流的一新的数据包已经在某个时间间隔内被标识)。
参考标号28表示用于根据具有优先级的合理排队方法或者算法,管理数据包的队列的调度模块或者调度装置。
在该算法或者方法中,优先级被分配给比特率并未超出对应于当前合理比特率的阈值的那些流的数据包。这一条件在所采用的合理排队算法的某些参数的值中实现,如下文具体实施方式的上下文中所指明的。那些进入比特率超出该合理比特率的流的数据包被分类为无优先级数据包。
当其比特率过高的进入的流20被调度模块28识别并且被降级或者分类为无优先级流时,这也调整了实时流的峰值比特率。
这样该机制替换了在图1中所见到的用于监控实时流的峰值比特率的模块4,并使其可以被消除。
另外,模块或者装置28为路由模块24提供准许条件数据或者参数36。
最后,参考标号32表示数据包离开而参考标号34和38分别表示由调度模块和由准许控制模块拒绝数据包。
记住在本发明的一种模式的使用中,可以不出现准许控制模块,因此流20被直接给予模块28。
该机制不需要数据包或者流priori识别是实时类型或是弹性类型。
图2的体系结构通常在被编程以实现所需功能的路由器或者处理器或者用于路由器的微处理器中实现或者提供。
下面更详细地描述路由判定模块24的一个实施例。
在传统的IP网络中,流在由目的地IP抵制所确定的单一路径上被 路由,并且独立于该路径的拥塞状态。在本体系结构中,路由判定模块24基于在被保护的流的一个或者多个列表30中所包含的信息,来决定是否对给定流的数据包进行路由。
被保护的流的列表30为表示对于每一个流的最后一个数据包到达时间的流标识符的列表。每一列表与标识符空间的划分相关联。这一划分限制了每一列表的容量并因此保证了可扩展性。
当对于一个流来说,自最后一个数据包被接收已经过去的时间超出阈值或者超时时,该流从列表30中被擦除。超时为系统的参数,并且是例如几秒的数量级。优选地,设定该表的大小以限制饱和、即流应该被准许进入列表但是列表已满的状态的概率。这种饱和的后果将仅仅是在获取被保护流的状态方面流将被延迟。尽管如此,如果拥塞的状态允许,其数据包仍将被正确地路由。通过适当设定大小,可用使饱和的概率足够低。
对任何数据包的到达采用路由判定。模块24基于来自数据包报头的信息连带确定输出接口和适当的列表。如果数据包属于被保护的流,则其直接被路由。最后一个数据包到达的时间在列表中被更新。如果该流尚未被保护,则必须采用路由判定。
如果不满足准许条件,则数据包被拒绝。这些条件的特性将在下文中解释。所应用的条件可以取决于数据包的特定属性,包括业务分类字段的值(IPv6)、ToS字段(IPv4),或者源和目的地IP地址。
准许控制确保被准许的流是透明的:对于实时流保护信号,对于数据流来说保护比特率。事实上,只是对于峰值比特率(如由外部限制所确定的)保持低于某个阈值的那些流提供了这种透明性。实时流的准许的比特率阈值低于数据流,因为在这两种情况下各自的透明保证(即,比特率的保护和信号的保护)意味着不同的时间标度。对于实时流,目标是确保可用的比特率高于较短的时间标度上的峰值比特率,符合可忽略的数据包延迟(几微秒)。对于数据流,目标是逼近在相对较长的时间周期(为几秒的量级)上的某个的平均比特率。
所考虑的两个峰值比特率由准许标准的选择而产生。换句话说,为了确保某个比特率的流的透明,根据合理比特率和优先负载拥塞测量定义适当的准许条件。如果所有的流都是弹性的,则对于合理比特率的适当阈值的选择为按照例如Ben Fredj等人(用于弹性业务的基于测量的准许控制,“Measurement based admission Control for ElasticTraffic”,Teletraffic Engineering in the Internet Era,ITC 17,Elsevier,2001年)所描述的。Let threshold_1(T1)代表所考虑的阈值。如果所有的流为具有有限的峰值比特率的实时类型,则优先负载准许阈值可以借助于Gibbens等人的方法(ATM网络中的呼叫准许的判定理论方法“A decision theoretic approach to Call Admission in ATMNetworks”,IEEE J.on Selected Areas in Communications,Vol.13,No.6,p.1101-1114,1995年)得出。Let threshold_2(T2)代表这一第二阈值。
图3以示例的方式示出了这两个阈值所定义的准许区域。如果合理比特率低于T1(在该图中的区域I)或者如果优先负载在T2之上并且合理比特率低于T2(区域II),则新的流被拒绝。这是因为,如果优先负载超出了阈值T2但是合理比特率高于该阈值,则表明被认为是优先级数据包的数据包并非专门来自具有有限峰值比特率的实时流。这一准许区域的定义可以通过试错法(trial and error)过程来改进。
定义了逻辑函数Admit(合理比特率优先负载),使得如果Admit具有1值则新流可被接受。如果Admit具有0值则新的流必须被拒绝。为给出准许策略的一个简单的例子,所有的流在相同的条件下均被接受或者均被拒绝,由于不可能猜测流的特性为priori。因此应用了最差情形的假设,并且认为新的流可以是最需要的和最可能干扰的。这一策略确保所有的流从阻断的观点看被合理地处理。
根据准许条件,如果数据包不得被拒绝,则其通过对应的链接被路由。于是该流的本体(identity)是列表30中的包含物的候选。可以定义辅助标准以最终授权这一包含。特别是,该判定可能是随机的:流被增加的概率为p,数据包被路由但是流保持不受保护的概率为1-p。概率p可能取决于包括业务分类字段、ToS字段或者IP地址的值的数据包的属性。
如果p较低(例如,0.1)则大多数小的流将不被考虑而大的流将在头几十个数据包一被发送后立即被保护。选择p<1的一个问题是正在进行中的流可能被拒绝:最初的数据包被发送但是准许控制判定在该流实现被保护的流状态之前禁止了它。
前文中提到的准许条件取决于在调度设备或装置28中实现的拥塞测量。例如,可以测量两个指示符,即合理比特率和优先负载:
-合理比特率为总是具有要发送的数据包的数据流将实现的比特率的测量值,
-优先负载为在某时间间隔内所发送的优先数据包的长度的总和除以该间隔的持续时间。
为了估计合理比特率,调度算法可以包括伪数据包的流和在假设其总是具有要发送的数据包的基础上测量的该流被分配的比特率。当然,伪数据包并不真的被发送。有下列两种情况:
-在出现具有多个等待中的数据包的流时,伪流将其数据包循环地插入发送它们之间,允许优先数据包通过,
-当队列为空时(没有真正的数据包在等待),伪流理论上从属于(slave to)链接的比特率;在测量周期的末端处合理比特率的计算考虑这些周期的不活动性(inactivity)。
被监控的链接的负载状态通过执行周期性的测量而被连续计数。测量周期通常对于合理比特率(例如,一百微秒的数量级)和优先负载(例如,十微秒的数量级)是不同的。
例如,用于准许控制的估计可能是每一周期的测量的指数平滑平均值(就是说,估计量←α×估计量+(1-α)×新的测量,对于0<α<1)。
下面更详细地描述调度模块28的一个实施例。
所使用的调度优选地为合理排队类型。
这种被称为SFQ的调度,在例如P.Goyal等人的论文“开始时间合理排队:用于集成服务数据包交换网络的调度算法”(“Start-timeFair Queuing:A scheduling algorithm for integrated services packetswitching networks”,IEEE/ACM Trans.Networking,Vol.5,No.5,第690-704页,1997年)中描述。
这类调度在当前的流之间合理地分配链接的带宽而不参照用户的合作行为。与准许控制相结合,其另外向被准许的流提供得到保证的比特率。
本体系结构通过维持队列的仅在其为有效时的状态避免了与每一流的合理排队相关的可扩展性问题,假定准许控制必然地限制了这样的流的数量。
当流并非“有效”——即,其并未被列于流的列表——时,优先级被给予到达的数据包。这意味着其在队列中尚无数据包并且在某时间周期内也还没有任何数据包(如由SFQ算法的当前参数所确定的)。从原理上说,在一个峰值比特率并不超出合理比特率的流的数据包到达之后,该流将不会是有效的。
因此,这种结合了准许控制的适应,可确保那些比特率不超过某阈值的实时流的劣化是可以忽略的。
由于这一体系结构并不在实时流和数据流之间进行区分,因此该调度设备还将对数据流的某些数据包给予优先级(例如,比特率维持在低于合理比特率的流的所有数据包)。
这一不定性并不构成问题是在于准许控制确保了优先数据包的可以忽略的延迟。
参照路由器的例子举例说明了该调度设备的操作,其中排队只在输出处是可以操作的,这被公知为具有输出排队的路由器。
使用了推进先出(PIFO)排队系统,这允许由时间标记的值所确定的在任何位置的数据包。从队列的报头开始队列总是空的,即,队列报头处的数据包被发送了。
在这个例子中,该设备使用下列数据或者单元:
-数据包以增加时间标记的顺序被存储的PIFO队列;PIFO单元为{packet,time_stamp}集,其中packet表明与数据包相关的信息(流标识符,大小,存储地址)而time_stamp为时间标记(如由后文中描述的SFQ算法所确定的),
-识别PIFO队列的报头处的优先数据包的最后的指针P;如果文件并不包含任何优先数据包,则P=零。
-包含有效流的标识符的flow_list和对应于最后一个数据包的time_stamp值加上其长度的flow_time_stamp(在SFQ中,这是数据包的“结束标签”)。
-用于计算时间标记的virtual_time计数器。
在例如前文已经提及的SFQ算法的情况下,虚拟时间等于将要开始被发送的最后一个数据包的时间标记(“开始标签”)。
拥塞估计量使用下列数据:
-根据本地时钟的local_time,
-在当前测量间隔期间被发送的优先数据包字节数量,priority_bytes,
-表明队列是否为空的逻辑变量silence_flag,
-寂静(silence)周期的累积持续时间silence_time,
-当前寂静周期的开始时间silence_start。
图4用图解的形式示出了PIFO队列50。数据包52被插入其中作为其时间标记的函数。优先数据包56将被插入在队列报头处的数据包中,数据包54为下一个必须被发送的数据包。数据包56作为最后一个优先数据包被插入,而且数据包56是在其插入队列后指针P将要指向的数据包。注意所有的优先数据包继承相同的时间标记,等于virtual_time的当前值。
为了估计优先负载,在优先数据包每一次插入PIFO队列时,需要更新priority_bytes计数器。于是该计数器递增一个表示数据包的字节方面大小的值L。通过以规则的间隔对该计数器进行采样,得出优先负载的估计为测量周期开始和结束处的priority_bytes值之间的差除以其持续时间。令PB(T)表示时间T处的priority_bytes值,(T1,T2)表示测量周期(以秒为单位),而C表示链接的比特率(以比特每秒为单位)。则对于该间隔的优先负载估计量为:
优先负载=(PB(T2)-PB(T1))*8/(T2-T1)/C
假定根据Ben Fredj等人的在上文中引用的论文,这一测量不应以非常高的精度进行评估,则存在各种用于估计合理比特率的方式。一种方法是对有效流的数量(在flow_list列表中的流的数量)进行计数并将链接的比特率除以该数量取作测量的合理比特率。另外一种方案根据前文提及的伪流的概念而被用在后文将要描述的算法中。
假定伪流发送具有一个字节的长度的、以SFQ算法所指定的顺序被插入在实际数据包之间的数据包。伪流在队列总是被占用的周期内将能够发送的字节的数量由virtual_time计数器的进展(evolution)而得出。当队列为空时,伪流将能够以链接的比特率发送。通过将占用和寂静的周期的连续性相结合,可得出下列估计量。令VT(T)表示时间T处的virtual_time值,(T1,T2)表示测量周期(以秒为单位),而S表示该周期期间寂静的总的持续时间。则所选择的估计量为:
合理比特率=max(S*C/(T2-T1),(VT(T2)-VT(T1))*8/(T2-T1))
当链接的负载较低时,第一项通常是占优势的,因为伪流将使用链接的所有的剩余可用容量。第二项在占用的周期内占优势并且近似地测量了由队列中总是具有至少一个数据包的实际流所实现的比特率。
该算法的操作或者对数据包的到达执行或者在发送数据包的结尾处执行,如图5和图6所示。在这两张图中,在虚线框内的操作与拥塞测量相关,随后将对其进行解释。
在图5中,算法的开始对应于数据包的到达(步骤100)。
首先确定PIFO队列是否为拥塞(步骤102)。
如果是,则选定将被拒绝的数据包(如果有的话)(步骤104)。
数据包可能被拒绝(步骤106和108)或者不会被拒绝,在这种情况下(于是另外一个流的数据包将被拒绝),以与步骤102的响应为负时相同的方式执行步骤110的检测。
步骤110检测数据包的标识符是否包括在流的列表中。
如果数据包的流标识符并未包括在流的列表中,则该数据包所属的流不是有效的。如果流的列表(flow_list)不饱和则这种类型的数据包获得优先级。如果发现该列表为饱和(步骤120),则拒绝该数据包(步骤108)。否则,通过增加新的流的标识符来更新flow_list,使得flow_time_stamp等于virtual_time加上该数据包的长度L(步骤124)。该数据包被插入PIFO队列中由指针P所表示的位置,并且更新后者的值(步骤124)。
如果该流已经被列于有效流的列表中(步骤110中为正的响应),则该数据包被插入PIFO队列中,使得时间标记等于flow_time_stamp的当前的值(步骤122)。在flow_list中的该值随后递增数据包的长度L。
然后终止该算法(步骤134)。新的数据包到达将重新启动相同的算法。数据包的准许的结束将启动下一个算法(图6)。
在虚线框内的操作连续不断地测量拥塞合理比特率和优先负载参数。如果PIFO队列为空(步骤210),则观察到寂静周期的结束。更新silence_time计数器并将逻辑指示器silence_flag设置为值FALSE(步骤212)。另外,如果新的流被加入到flow_list中,则priority_bytes的值递增所考虑的数据包的长度(步骤204)。
图6的算法由另一事件启动,即发送数据包的结束(步骤150)。第一步(步骤154)确定PIFO队列是否为空。
如果是,则从flow_list中擦除所有仍为有效的流(步骤156)。指针P被复位。
如果否,则发送下一个数据包,记录其时间标记的值next_time_stamp(步骤160)。如果next_time_stamp不大于virtual_time(因此这些变量具有相同的值),则该算法终止。否则,必须改变virtual_time并从flow_list中擦除已经变为无效的流,它们的flow_time标记小于virtual_time(步骤164)。该算法随后终止。
与拥塞测量相关联的操作被围绕在虚线框中。如果队列为空,则当寂静周期的开始被记录时,silence_flag指示器被设置为值TRUE(步骤220)。
新的数据包的到达启动了前面的算法(图5),发送数据包的结束再次启动了图6的算法。
图7和图8示出了在采样拥塞计数器之后实现的操作。
图7的操作每time_interval_CP秒(根据本地时钟)被执行。计算优先负载(步骤232)并将priority_tytes计数器的当前值存储为用于下一次执行的priority_bytse_old变量。
图8的操作每time_interval_DE秒(根据本地时钟)被执行。计算根据链接寂静(队列为空)与否而有所不同。如果其为寂静,则因为计算的需要中断寂静(步骤248)。在所有情况下获得对应于测量周期期间的可用比特率的合理比特率的估计rate_1(步骤246或者248)。随后利用与步骤250相同的公式计算第二比特率估计rate_2。合理比特率为rate_1和rate_2这两个估计中较大的那个(步骤254,256和258)。最后,存储silence_time和virtual_time的当前值用于下一周期(步骤252)。
另外一个应用根据在每一测量周期结束处输出的值计算滑动(sliding)平均值。所选的平滑权重和测量周期被优化为系统和业务参数的函数。这一应用提供了合理比特率和优先负载的估计并导出了前文提及的Admit函数的值。
在步骤104(图5)处,以确保有效流之间比特率的合理分配的种方式选择将被拒绝的数据包。这通过选择拒绝具有最高的总的等待字节数量的流的数据包来确保。拒绝条件和用于选择将被拒绝的数据包的机制在例如B.Suter等人的论文“利用根据流的排队支持千兆位路由器中的TCP的缓冲管理方法”(“Buffer Management schemes forsupporting TCP in Gigabit Routers with Per-Flow Queuing”,IEEE J.inSelected Areas in Communications,1999年8月)中公开。注意,最终,该数据包拒绝将在某些情况下通过利用IP报头的显式拥塞通知(ECN)位来简单地标记而被取代。
本发明的方法是可以扩展的:其可不考虑负载条件而操作,例如对1Mbit/S、10Mbit/S、1Gbit/S或更高的比特率链接进行操作。
调度机制,特别是SFQ的复杂性对于有效流的数量是线性的。该数量独立于链接C上的比特率被准许控制所限制并且保持相对较低事实确保了可扩展性。、
为了估计该数量,首先假定准许控制完美地操作并确保合理比特率永不下降至目标值θ以下。比特率可能超出θ(因为其不会收到它们的路径上的其他单元的限制)的流的数量必须小于或等于C/θ。选择θ的值使得如果负载并未超过某限制则具有多于C/θ的有效流的概率非常低。对于90%的负载限制,根据Ben Fredj等人的“统计学带宽分配:数据流级的拥塞研究”(“Statistical Bandwidth Sharing:astudy of congestion at flow levels”,Proc.of ACM SIGCOMM 2001年))的分析,流的数量超过100的概率低于1/10000。因此可以设置θ=C/100使得有效流的数量总是少于100而如果负载并未超过90%时阻塞的概率小于10-4。
大量的具有低于θ的其他流可能正在进行之中。但是,这些流中只有少量将在任何时间具有在队列中的数据包。为简化起见,假设所有的流的数据包长度相同。这些流在队列中仅具有一个数据包(因为它们的比特率低于合理比特率)。如果流是独立的,则优先队列中的数据包的数量表现为M/D/1队列。类似的,有效流(被列于合理排队算法的流的列表中)的数量等于在相同队列的占用周期期间参与的客户的数量。只要负载并不超过90%,它小于100的概率就较高。
数据包大小变化的冲击和在上游网络中获得的抖动(jitter)并未改变在正常的负载条件下将要考虑的流的数量保持低于几百(如果上述限制被加到一起则为200)这一事实。在发生过载时,准许控制的任务是精确地限制进行中的流的数量。合理比特率控制自然地限制了有效流的数量。优先负载控制确保由比特率低于合理比特率的流引起的本地负载保持低于固定的限制(例如90%)。
允许准许控制算法缺少精确性的流的最大数量的优化值,可以通过使用上文所述的算法由试错法而确定。
如果在没有准许控制的情况下使用该设备,则将要考虑的流的数量不受限制。这在接入网——其中用户的数量本身受到限制——的情形下可能不是问题。
辨别可能是较理想的,以便在准许控制级上区分服务的类型,因为可以在某个级别的拥塞下拒绝某些类型的流,以便为更高优先级的服务类型的其他保存容量。例如,优先级可能取决于数据包的报头的不同字段的值,包括业务类型(IPv6)、ToS字段(IPv4),或者IP地址。
因此假设有
m个类型的服务,对于i=1,...,m存在一组逻辑函数(合理比特率,优先负载)Admit_i。如果i<j则类型
i具有在类型j之上的优先级。这些函数为,对于相同的变量,Admit_1≥Admit_2。因此如果Admit_i具有值0,则准许策略将拒绝指数类型
i的流并且在Admit_i具有值1时将准许它们。
与在不具有类型的简单的策略中的Admit函数类似,选择Admit_1以便保存峰值比特率低于各个目标比特率的流的透明性。i=2,...,m的其他函数Admit_i对优先类型的可接入性给出了优先权(preference)。
峰值比特率限制并不是“硬性”的,意即如果业务条件允许那么用户可以超过这些限制而不会有问题。这是确定规格和建立精确的准许条件的前提。运营商所公布的保证使用户可以使用非适应性编码用于实时服务,只要峰值比特率低于设定的限制。数据传输的比特率并不受到网络的限制,除非外部限制(接入网、服务器容量等)在目标峰值比特率之上。
和本领域的现有技术的体系结构相比,本发明的体系结构对于部分用户的不合理行为和恶意行为同样不再是脆弱的。但是,为了优化性能,由应用进行的由数据包的丢失构成的隐式信号的适当翻译(interpretation)是优选的。
新的流的最前面的数据包的丢失必须被翻译为流的拒绝。基础的(underlying)应用可能继续发送数据包直到它们中的一个被接受并且流被写入被保护流的列表。这一表达(rendering)与丢失数据包的TCP更新同样不是问题。在上文中提及的自适应路由选择概率允许更智能化的反应。如果第一个数据包丢失,则随后的数据包的流标识符的变化允许检测另一个路径。
实时应用能够发送测试数据包以评估路径的可用性。测试数据包的确认是好的指示,表明流被接受并进入被保护的流的列表。对于测试数据包处理,不再需要额外的专用机制。
对于大多数呼叫来说,建立两个流,每个方向上一个。采用惯例使得标识符的自由部分(IPv6中的标签流或者IPv4中的端口号)在两个方向上相同对于用户来说可能是有利的。这使用户可以识别特定流的确认,特别是在通过扩散(flooding)进行路由的情况下:用户发送具有不同标识符的多个数据包以检测多个路径;呼叫在首先被确认的流上继续。
该体系结构未对拒绝服务(DoS)类型攻击引入新的机会。可以想象两种类型的行为:
-用户以每一数据包改变流标识符:这可能迅速使被保护流的列表饱和;其后果将是某些流不被保护,但是它们将仅在处于攻击下的链接的同时拥塞的情况下面临这一问题;仅以较低的概率p,将流写入列表30,降低这种攻击的冲击;
-用户对多个流保持相同的标识符:如果两个数据包之间的时间保持低于超时,则连续的流并不经受准许控制:并行发送的流不能产生大于合理比特率的当前值的总的比特率;在两种情况下对于其他用户的不便都是最小的。
最后,对于用户来说当然可以建立多个流,来传输相同的应用,在这种情况下获得更高的比特率,只要峰值比特率允许。
为了实现在相等成本的路径上的负载均衡,大多数目前的路由器对源和/或目的地IP地址应用散列函数,以便为给定数据包选择输出接口。因此相同流的所有数据包取得相同的路径。散列函数的自变量可以被扩展至还包括流标识符的自由部分(即,IPv6中的标签流或者IPv4中的端口号)。这样路由的选择取决于由用户指定的值。在路由失败时,用户可自由地改变标识符并再次尝试。在一次或多次尝试之后,可能发现具有足够容量的路由。多个流甚至可能同时被启动并且呼叫在它们中的一个——例如首先接收到其确认的那一个——上继续。
实现本发明的体系结构的网络单元可能例如通过向地址属性应用散列函数来识别流。该散列函数优选地在实施的复杂性和函数返回相同值的两个流之间产生混乱的概率之间实现折衷。这种混乱的效应被限制了:当可应用时,通过准许控制避免阻塞,通过合理排队降低分配给队列的比特率。
在本发明中,使用了负载分配机制以根据流标识符进行自适应路由选择,因为准许控制通过拒绝所接收到的第一个数据包,拒绝了链接拥塞时到达的流。如果用户通过重发相同数据包直到获得成功而再次尝试时,相应的业务不会丢失。如果,对于每一次尝试,数据包被给予能够将其路由至其目的地的另外的链接,则成功的概率更高。这在路由器所采用的负载分配机制对流标识符进行操作并且后者包括一待由用户自由填充的字段(例如,IPv4中的端口号,IPv6中的流标签)时能够实现。实现负载分配的散列函数包括这一自由字段作为自变量,结果是用户通过对每一次更新修改所考虑的该字段的值实现了自适应路由选择的一种形式。
Claims (37)
1.一种用于处理在网络链路上的流的数据包(20)的设备,该设备包括调度装置(28),该调度装置用于基于相对于合理比特率分析这些流的进入比特率,并且按照具有优先级算法的合理排队,调度队列中的数据包作为一优先级的函数。
2.根据权利要求1的设备,还包括准许控制装置(24),该准许控制装置用于按照准许标准,控制所述数据包进入该设备的准许。
3.根据权利要求2的设备,其中该调度装置(28)将准许条件数据(36)发送给该准许控制装置(24)。
4.根据权利要求2或3的设备,其中该准许控制装置包括用于对每一个进入的数据包,询问一被保护的流的列表(30)的装置
5.根据权利要求4的设备,还包括用于从被保护的流的该列表(30)中,擦除从其最后一个数据包被接收起所经历的时间超过一阈值的流的装置。
6.根据权利要求4或5的设备,其中该准许控制装置包括用于在一数据包属于不在该被保护的流的列表中的流时,确定是否满足准许标准的装置。
7.根据权利要求4至6中任何一项的设备,包括用于在满足准许标准时,在该列表(30)中输入一新的流的装置。
8.根据权利要求2至7中任何一项的设备,其中所述准许条件数据包括:
代表由总是具有待发送的数据包的数据流所实现的比特率的合理比特率值,以及
优先负载值,该优先负载值是在某时间周期内所发送的优先数据包的长度总和除以该时间周期的持续时间。
9.根据权利要求1至8中任何一项的设备,其中所述调度装置将不在一有效流的列表中的队列中的流的任何数据包调度为优先数据包,并且将已经在所述列表中的流的任何数据包调度为非优先数据包。
10.根据权利要求1至9中任何一项的设备,其中所述调度装置调度在一PIFO队列中的数据包。
11.根据权利要求10的设备,其中一指针P识别在队列的报头处的最后的优先数据包。
12.根据权利要求11的设备,还适用于采用包含有效流的标识符的有效流的列表,并且其中使用一时间标记用于调度数据包。
13.根据权利要求11的设备,还包括用于作为流的数据包的到达和离开的函数,将流写入有效流的列表以及将流从其擦除的装置。
14.根据权利要求12或13的设备,还包括拥塞测量装置。
15.根据权利要求14的设备,其中拥塞测量作为本地时间、当前测量周期期间发送的优先数据包字节数量,以及在所述当前测量周期内可发送的一伪流的字节数量的函数而被执行。
16.根据权利要求10至15中的任何一项的设备,还包括用于确定PIFO队列是否为空的装置。
17.根据在先权利要求中的任何一项的设备,还包括用于在准许控制级上区分服务的类型的辨别装置。
18.根据在先权利要求中的任何一项的设备,其中通过被施加至地址属性的散列函数来识别这些流。
19.一种用于处理在网络链路上的流的数据包(20)的方法,该方法包括调度步骤,该调度步骤用于基于相对于合理比特率分析这些流的进入比特率,并且按照具有优先级算法的合理排队,调度队列中的数据包作为一优先级的函数。
20.根据权利要求19的方法,还包括准许控制步骤,该准许控制步骤用于按照准许标准,控制所述数据包进入一用于处理所述数据包(20)的设备的准许。
21.根据权利要求20的方法,还包括将准许条件发送给用于控制数据(36)的准许的装置(24)的步骤。
22.根据权利要求21的方法,其中该准许控制步骤包括对每一个进入的数据包询问一被保护的流的列表(30)
23.根据权利要求22的方法,其中从其最后一个数据包被接收起所经历的时间超过一阈值的流,被从被保护的流的该列表(30)中擦除。
24.根据权利要求22或者权利要求23的方法,包括用于在一数据包属于不在该被保护的流的列表中的流时,确定是否满足准许标准的步骤。
25.根据权利要求22至24中任何一项的方法,包括用于在满足准许标准时,在该列表(30)中输入一新的流的步骤。
26.根据权利要求21至25中任何一项的方法,其中所述准许条件数据包括:
代表由总是具有待发送的数据包的数据流所实现的比特率的合理比特率值,以及
优先负载值,该优先负载值是在某时间周期内所发送的优先数据包的长度总和除以该时间周期的持续时间。
27.根据权利要求20至26中任何一项的方法,其中所述调度步骤将不在一有效流的列表中的队列中的流的任何数据包调度为优先数据包,并且将已经在所述列表中的流的任何数据包调度为非优先数据包。
28.根据权利要求20至26中任何一项的方法,其中所述调度步骤调度在一PIFO队列中的数据包。
29.根据权利要求28的方法,其中一指针P识别在队列的报头处的最后的优先数据包。
30.根据权利要求29的方法,还采用包含有效流的标识符的有效流的列表,并且其中使用一时间标记用于调度数据包。
31.根据权利要求30的方法,还包括用于作为流的数据包的到达和离开的函数,将流写入有效流的列表以及将流从其擦除的步骤。
32.根据权利要求30或31的方法,还包括拥塞测量。
33.根据权利要求32的方法,其中拥塞测量作为本地时间、当前测量周期期间发送的优先数据包字节数量,以及在所述当前测量周期内可发送的一伪流的字节数量的函数而被执行。
34.根据权利要求28至33中的任何一项的方法,还包括用于确定PIFO队列是否为空的步骤。
35.根据权利要求19至34中的任何一项的方法,其中关于数据包的丢失的信号被发送给用户。
36.根据权利要求19至34中的任何一项的方法,还包括在准许控制级上辨别服务的类型。
37.根据权利要求19至36中的任何一项的方法,其中借助于包括流标识符的自由部分的地址属性的一函数,来实现多个链路上的流的负载分配。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR0305069 | 2003-04-24 | ||
FR0305069A FR2854296A1 (fr) | 2003-04-24 | 2003-04-24 | Procede et dispositif pour differenciation implicite de la qualite de service dans un reseau |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1551580A true CN1551580A (zh) | 2004-12-01 |
CN100593926C CN100593926C (zh) | 2010-03-10 |
Family
ID=33017152
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200410038410A Expired - Lifetime CN100593926C (zh) | 2003-04-24 | 2004-04-26 | 用于隐式区分网络中的服务质量的方法和设备 |
Country Status (8)
Country | Link |
---|---|
US (1) | US7646715B2 (zh) |
EP (1) | EP1478140B1 (zh) |
JP (1) | JP4474192B2 (zh) |
CN (1) | CN100593926C (zh) |
AT (1) | ATE354903T1 (zh) |
DE (1) | DE602004004831T2 (zh) |
ES (1) | ES2282819T3 (zh) |
FR (1) | FR2854296A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100438501C (zh) * | 2005-03-07 | 2008-11-26 | 明基电通股份有限公司 | 动态信息传送方法及系统 |
CN102845032A (zh) * | 2010-03-31 | 2012-12-26 | 阿尔卡特朗讯公司 | 基于业务组合的实时统计动态调整服务质量配置的系统和方法 |
CN103155665A (zh) * | 2010-10-15 | 2013-06-12 | 瑞典爱立信有限公司 | 隐式拒绝响应 |
CN103164169A (zh) * | 2011-12-19 | 2013-06-19 | 富士通株式会社 | 存储装置及存储装置控制方法 |
WO2018086558A1 (en) * | 2016-11-10 | 2018-05-17 | Huawei Technologies Co., Ltd. | Network latency scheduling |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2878106A1 (fr) | 2004-11-15 | 2006-05-19 | France Telecom | Procede et dispositif d'ordonnancement de paquets pour leur routage dans un reseau avec determination implicite des paquets a traiter en priorite |
CN100370787C (zh) * | 2004-12-29 | 2008-02-20 | 华为技术有限公司 | 一种分组业务中的数据包调度方法 |
FR2885275A1 (fr) | 2005-05-02 | 2006-11-03 | France Telecom | Procede d'ordonnancement de paquets appartenant a des flots et equipement associe |
WO2007006332A1 (en) * | 2005-07-14 | 2007-01-18 | Telefonaktiebolaget L M Ericsson (Publ) | Arrangement and method relating to handling of ip traffic |
JP4506594B2 (ja) * | 2005-07-22 | 2010-07-21 | 日本電気株式会社 | 冗長パス制御方法 |
US7633947B2 (en) * | 2005-11-29 | 2009-12-15 | Alcatel-Lucent Usa Inc. | Method and apparatus for performing active packet bundling in a Voice over-IP communications system based on source location in talk spurts |
EP1985092B1 (en) * | 2005-12-23 | 2011-07-06 | Telefonaktiebolaget LM Ericsson (publ) | Method and apparatus for solving data packet traffic congestion. |
US7876696B2 (en) * | 2006-01-27 | 2011-01-25 | Texas Instruments Incorporated | Adaptive upstream bandwidth estimation and shaping |
JP4877740B2 (ja) * | 2006-02-24 | 2012-02-15 | 三菱電機株式会社 | 通信装置およびコネクション選択方法 |
US7627618B2 (en) | 2007-02-21 | 2009-12-01 | At&T Knowledge Ventures, L.P. | System for managing data collection processes |
US8165033B1 (en) * | 2007-08-30 | 2012-04-24 | Altera Corporation | Method and apparatus for performing generalized processor sharing scheduling |
US8441926B2 (en) * | 2007-11-30 | 2013-05-14 | The Hong Kong University Of Science And Technology | Method and system for a novel flow admission control framework |
US7903562B2 (en) * | 2008-02-05 | 2011-03-08 | Lockheed Martin Corporation | Method and system for congestion control |
EP2107735A1 (en) * | 2008-03-31 | 2009-10-07 | British Telecmmunications public limited campany | Admission control in a packet network |
JP5146548B2 (ja) * | 2009-02-06 | 2013-02-20 | 富士通株式会社 | パケットバッファ装置及びパケット廃棄方法 |
US8693332B2 (en) | 2009-06-30 | 2014-04-08 | New Renaissance Technology And Intellectual Property | Flow state aware management of QoS through dynamic aggregate bandwidth adjustments |
IL201774A0 (en) | 2009-10-27 | 2010-06-16 | Eci Telecom Ltd | Technique of throughput control for packer switches |
US20110206055A1 (en) * | 2010-02-24 | 2011-08-25 | Patrick Pak Tak Leong | Method and packet switch appliance for performing packet deduplication |
US8340126B2 (en) | 2010-06-07 | 2012-12-25 | Lockheed Martin Corporation | Method and apparatus for congestion control |
JP6266982B2 (ja) * | 2011-01-04 | 2018-01-24 | ナパテック アクティーゼルスカブ | データを受信しフォワードするための装置および方法 |
CN102098217B (zh) * | 2011-01-14 | 2013-08-07 | 中国科学技术大学 | 一种基于概率的多优先级队列调度方法 |
WO2012130264A1 (en) * | 2011-03-29 | 2012-10-04 | Nec Europe Ltd. | User traffic accountability under congestion in flow-based multi-layer switches |
US8873557B2 (en) | 2011-04-08 | 2014-10-28 | Gigamon Inc. | Systems and methods for packet de-duplication |
US9674074B2 (en) * | 2011-04-08 | 2017-06-06 | Gigamon Inc. | Systems and methods for stopping and starting a packet processing task |
US8751645B2 (en) * | 2012-07-20 | 2014-06-10 | Telefonaktiebolaget L M Ericsson (Publ) | Lattice based traffic measurement at a switch in a communication network |
EP3136678B1 (en) | 2015-08-27 | 2019-11-27 | Tata Consultancy Services Limited | System and method for real-time transfer of audio and/or video streams through an ethernet avb network |
WO2018082788A1 (en) * | 2016-11-07 | 2018-05-11 | Telefonaktiebolaget Lm Ericsson (Publ) | Efficient handling of loss and/or delay sensitive sporadic data traffic |
CN112911631A (zh) | 2018-05-21 | 2021-06-04 | 华为技术有限公司 | 业务服务质量监测方法、设备及系统 |
US12015531B2 (en) | 2021-12-03 | 2024-06-18 | Guavus, Inc. | Method for generating a quality of experience (QoE) index by way of ensemble of expectation scores |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5633859A (en) * | 1994-09-16 | 1997-05-27 | The Ohio State University | Method and apparatus for congestion management in computer networks using explicit rate indication |
GB2338372B (en) * | 1998-06-12 | 2003-08-27 | Ericsson Telefon Ab L M | Architecture for integrated services packet-switched networks |
JP3556495B2 (ja) * | 1998-12-15 | 2004-08-18 | 株式会社東芝 | パケットスイッチ及びパケット交換方法 |
EP1134941A1 (en) * | 2000-03-15 | 2001-09-19 | TELEFONAKTIEBOLAGET LM ERICSSON (publ) | Method and arrangement for flow control |
US7123622B2 (en) * | 2000-04-13 | 2006-10-17 | International Business Machines Corporation | Method and system for network processor scheduling based on service levels |
US6574195B2 (en) * | 2000-04-19 | 2003-06-03 | Caspian Networks, Inc. | Micro-flow management |
US7002918B1 (en) * | 2000-05-22 | 2006-02-21 | Northrop Grumman Corporation | Method and apparatus for real time scheduling in a satellite communications network |
US7061861B1 (en) * | 2000-07-06 | 2006-06-13 | Broadband Royalty Corporation | Method and system for weighted fair flow control in an asynchronous metro packet transport ring network |
AU2002242067A1 (en) * | 2001-01-30 | 2002-08-12 | Nomadix, Inc. | Methods and systems providing fair queuing and priority scheduling to enhance quality of service in a network |
US20020150047A1 (en) * | 2001-04-17 | 2002-10-17 | Globespanvirata Incorporated | System and method for scheduling transmission of asynchronous transfer mode cells |
US6539300B2 (en) * | 2001-07-10 | 2003-03-25 | Makor Issues And Rights Ltd. | Method for regional system wide optimal signal timing for traffic control based on wireless phone networks |
US7649882B2 (en) * | 2002-07-15 | 2010-01-19 | Alcatel-Lucent Usa Inc. | Multicast scheduling and replication in switches |
US20040151197A1 (en) * | 2002-10-21 | 2004-08-05 | Hui Ronald Chi-Chun | Priority queue architecture for supporting per flow queuing and multiple ports |
US7274666B2 (en) * | 2003-04-01 | 2007-09-25 | International Business Machines Corporation | Method and system for managing traffic within a data communication network |
KR100726042B1 (ko) * | 2006-03-16 | 2007-06-08 | 포스데이타 주식회사 | 휴대 인터넷 서비스의 큐오에스 제공 방법 및 시스템 |
-
2003
- 2003-04-24 FR FR0305069A patent/FR2854296A1/fr active Pending
-
2004
- 2004-04-05 ES ES04290892T patent/ES2282819T3/es not_active Expired - Lifetime
- 2004-04-05 DE DE602004004831T patent/DE602004004831T2/de not_active Expired - Lifetime
- 2004-04-05 EP EP04290892A patent/EP1478140B1/fr not_active Expired - Lifetime
- 2004-04-05 AT AT04290892T patent/ATE354903T1/de not_active IP Right Cessation
- 2004-04-16 US US10/825,756 patent/US7646715B2/en not_active Expired - Fee Related
- 2004-04-26 JP JP2004130090A patent/JP4474192B2/ja not_active Expired - Fee Related
- 2004-04-26 CN CN200410038410A patent/CN100593926C/zh not_active Expired - Lifetime
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100438501C (zh) * | 2005-03-07 | 2008-11-26 | 明基电通股份有限公司 | 动态信息传送方法及系统 |
CN102845032A (zh) * | 2010-03-31 | 2012-12-26 | 阿尔卡特朗讯公司 | 基于业务组合的实时统计动态调整服务质量配置的系统和方法 |
CN103155665A (zh) * | 2010-10-15 | 2013-06-12 | 瑞典爱立信有限公司 | 隐式拒绝响应 |
CN103155665B (zh) * | 2010-10-15 | 2017-04-19 | 瑞典爱立信有限公司 | 隐式拒绝响应 |
CN103164169A (zh) * | 2011-12-19 | 2013-06-19 | 富士通株式会社 | 存储装置及存储装置控制方法 |
WO2018086558A1 (en) * | 2016-11-10 | 2018-05-17 | Huawei Technologies Co., Ltd. | Network latency scheduling |
US10560383B2 (en) | 2016-11-10 | 2020-02-11 | Futurewei Technologies, Inc. | Network latency scheduling |
Also Published As
Publication number | Publication date |
---|---|
US7646715B2 (en) | 2010-01-12 |
CN100593926C (zh) | 2010-03-10 |
EP1478140B1 (fr) | 2007-02-21 |
ES2282819T3 (es) | 2007-10-16 |
JP2004328753A (ja) | 2004-11-18 |
EP1478140A1 (fr) | 2004-11-17 |
JP4474192B2 (ja) | 2010-06-02 |
US20040213265A1 (en) | 2004-10-28 |
DE602004004831D1 (de) | 2007-04-05 |
ATE354903T1 (de) | 2007-03-15 |
FR2854296A1 (fr) | 2004-10-29 |
DE602004004831T2 (de) | 2007-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1551580A (zh) | 用于隐式区分网络中的服务质量的方法和设备 | |
CN1258900C (zh) | 路由设备 | |
CN1226850C (zh) | 网络处理器利用断开/重连流队列调度输出的方法和系统 | |
CN101057481A (zh) | 为在网络中路由而利用要以优先级处理的分组的隐式确定来调度分组的方法和设备 | |
EP1471700B1 (en) | Method and device for assigning packet queue priority | |
US20090059785A1 (en) | Policy-based resource management | |
CN1135789C (zh) | 电信资源协商的方法和系统 | |
CN102917466B (zh) | 通信网络中的优先调度和准入控制 | |
US6934250B1 (en) | Method and apparatus for an output packet organizer | |
CN100348003C (zh) | 用于可编程调度器的设备和系统及用于可编程调度的方法 | |
CN1868181A (zh) | 通信网络中对于不同业务类别的灵活许可控制 | |
US6795870B1 (en) | Method and system for network processor scheduler | |
CN1498372A (zh) | 在数据网络中基于库的资源管理 | |
CN1511279A (zh) | 数据网络中路由器之间每类资源的基于策略的同步 | |
CN1674558A (zh) | 信息中继装置和数据流统计信息收集方法 | |
CN1547814A (zh) | 处理光网络中上行数据包的系统和方法 | |
US11483247B2 (en) | Quality of service management system for a communication network | |
Wójcik et al. | Flow oriented approaches to QoS assurance | |
JP4627461B2 (ja) | 通信サービス制御システムと方法およびプログラム | |
CN101127686A (zh) | 一种网络数据处理方法及设备 | |
US7848239B2 (en) | Network system capable of dynamically controlling data flow and its method | |
CN1336058A (zh) | 在使用一种基于优先权的服务质量的网络服务级别的网络结点上对低优先权包进行预过滤的系统和方法 | |
CN108243506B (zh) | Lte系统中的业务调度方法及装置 | |
CN1890921A (zh) | 用于通信系统中的业务管理方法 | |
CN101188547A (zh) | 结合虚拟监控组和car速率限制提高转发效率的路由器 |
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 | ||
CP01 | Change in the name or title of a patent holder |
Address after: Paris France Patentee after: ORANGE Address before: Paris France Patentee before: Fa Guodianxun |
|
CP01 | Change in the name or title of a patent holder | ||
TR01 | Transfer of patent right |
Effective date of registration: 20180723 Address after: Cayman Islands Patentee after: Yudong Group Co.,Ltd. Address before: Paris France Patentee before: ORANGE |
|
TR01 | Transfer of patent right | ||
CX01 | Expiry of patent term |
Granted publication date: 20100310 |
|
CX01 | Expiry of patent term |