CN101212417A - A Time Granularity-Based Internet Service Quality Assurance Method - Google Patents

A Time Granularity-Based Internet Service Quality Assurance Method Download PDF

Info

Publication number
CN101212417A
CN101212417A CNA2007103040814A CN200710304081A CN101212417A CN 101212417 A CN101212417 A CN 101212417A CN A2007103040814 A CNA2007103040814 A CN A2007103040814A CN 200710304081 A CN200710304081 A CN 200710304081A CN 101212417 A CN101212417 A CN 101212417A
Authority
CN
China
Prior art keywords
data packet
time
real
queue
router
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
Application number
CNA2007103040814A
Other languages
Chinese (zh)
Other versions
CN101212417B (en
Inventor
石志强
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.)
Institute of Software of CAS
Original Assignee
Institute of Software of CAS
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 Institute of Software of CAS filed Critical Institute of Software of CAS
Priority to CN2007103040814A priority Critical patent/CN101212417B/en
Publication of CN101212417A publication Critical patent/CN101212417A/en
Application granted granted Critical
Publication of CN101212417B publication Critical patent/CN101212417B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于时间粒度的互联网服务质量保证方法,其通过在实时业务数据包的包头中增加一个用于记录数据包状态信息的延迟控制扩展头,边缘路由器根据当前令牌数量设置实时业务数据包中的相对时限标识,核心路由器根据收到数据包的相对时限值,把数据包分配到不同粒度的延迟队列中,依次发送这些队列中的数据包;边缘路由器通过发送实时业务测试数据包的方法,测量网络的拥塞程度,从而作出是否接受新呼叫的决定。本发明既能较好地保障数据包的端到端延迟,又在核心路由器具有很低的计算复杂度,在提高服务质量的同时具有很强的扩展性。

The invention discloses a method for guaranteeing Internet service quality based on time granularity. By adding a delay control extension header for recording the state information of the data packet in the header of the real-time service data packet, the edge router sets the real-time The relative time limit identifier in the service data packet, the core router assigns the data packet to delay queues of different granularities according to the relative time limit value of the received data packet, and sends the data packets in these queues sequentially; the edge router sends the real-time service test The data packet method measures the congestion level of the network to make a decision on whether to accept a new call. The invention can not only better guarantee the end-to-end delay of the data packet, but also has very low computational complexity in the core router, and has strong expansibility while improving the service quality.

Description

一种基于时间粒度的互联网服务质量保证方法 A Time Granularity-Based Internet Service Quality Assurance Method

技术领域technical field

本发明涉及一种分组交换网络的服务质量保证方法,具体涉及一种基于时间粒度的互联网服务质量保证方法,属于数据通信领域。The invention relates to a method for guaranteeing service quality of a packet switching network, in particular to a method for guaranteeing Internet service quality based on time granularity, and belongs to the field of data communication.

背景技术Background technique

目前互联网开始提供视频电话、视频会议和IPTV等实时多媒体业务,这些业务要求较低的网络延迟,但互联网目前还缺乏一种行之有效的服务质量保证方案。互联网最早试图采用集成服务的方法为实时业务提供服务质量保证,它以资源预留协议(ResourceReSerVation Protocol,RSVP,参考:R.Braden,Resource ReSerVation Protocol(RSVP),RFC 2205,September 1997)为作为呼叫信令,以加权公平队列(Weighted Fair Queuing,WFQ,参考:Abhay K.Patekh,“A Generalized Processor Sharing ApproachFlow Control in Integrated Services Networks:The Single-Node Case”,IEEE/ACM Trans.on Network,Vol 1,No.3,June 1993.)等队列调度算法作为数据平面的控制手段,为每个会话流提供不低于预约水平的服务质量。由于RSVP采用软状态的呼叫系统,需要定时更新和维护状态信息,使得其能保持的呼叫数量受到较大的限制。WFQ队列调度算法的计算复杂度为0(N),其中N是当前呼叫数量。虽然平滑轮循(Smoothed Round Robin,SRR,参考:Chuanxiong Guo,SRR:An 0(1)Time ComplexityPacket Scheduler for Flows in Multi-Service Packet Networks,IEEE/ACMTransactions on Networking,Volume:12,Issue:6 On page(s):1144-1155,Dec.2004)的计算复杂度为0(1),但该方法仍需要对每个会话流过滤,并保存每个会话流的状态。为了克服集成服务的扩展性问题,目前大量采用区分服务的方法。区分服务的思路是建立一个区分服务的实施域,在该实施域的边界把数据流分为有限的几种类型,在区分服务的核心路由器上只需要根据数据包的类型为之提供相应的服务即可。这种方法不需要在区分服务的核心路由器上维护每个会话流的状态,因此处理效率较高,计算复杂度较低。区分服务虽然有一些基于带宽代理(Bandwidth Broker,BB,参考:K.Nichols,A Two-bitDifferentiated Services Architecture for the Internet,RFC2638,July 1999)的呼叫控制方法,但尚无标准化的呼叫控制协议。在数据平面上,区分服务虽然计算复杂度低,提供比尽力服务较好的服务质量,但仍无法为实时业务提供服务质量保证。全局最早时限优先(Global Earliest Deadline First,GEDF,参考:Matthew Andrews,LisaZhang,Minimizing End-to-End Delay in High-Speed Networks with a SimpleCoordinated Schedule,IEEE INFOCOM 1999)和核心抖动虚拟时钟(Core-Jitter VirtualClock,CJVC,参考:Ion Stoica,Hui Zhang,PProviding,Guaranteed Services WithoutPer Flow Management,ACM SIGCOMM 1999)等调度算法把每个数据包的延迟特性编码到数据包的包头中,核心路由器不再保留每个会话的状态信息,而是根据每个数据包的延迟特性,顺序发送,这类算法的计算复杂度为0(logN),其中N是队列中的数据包数量。At present, the Internet begins to provide real-time multimedia services such as video telephony, video conferencing, and IPTV. These services require low network delay, but the Internet still lacks an effective service quality assurance solution. The Internet first attempted to adopt the integrated service method to provide service quality assurance for real-time services. It used the Resource Reservation Protocol (ResourceReSerVation Protocol, RSVP, reference: R. Braden, Resource ReSerVation Protocol (RSVP), RFC 2205, September 1997) as the call Signaling, weighted fair queuing (Weighted Fair Queuing, WFQ, reference: Abhay K. Patekh, "A Generalized Processor Sharing ApproachFlow Control in Integrated Services Networks: The Single-Node Case", IEEE/ACM Trans.on Network, Vol 1 , No.3, June 1993.) and other queue scheduling algorithms are used as the control means of the data plane to provide each session flow with a quality of service not lower than the reserved level. Since RSVP adopts a soft-state call system, it needs to update and maintain state information regularly, which limits the number of calls it can hold. The computational complexity of the WFQ queue scheduling algorithm is 0(N), where N is the number of current calls. Although Smoothed Round Robin (SRR, reference: Chuanxiong Guo, SRR: An 0(1) Time Complexity Packet Scheduler for Flows in Multi-Service Packet Networks, IEEE/ACMTransactions on Networking, Volume: 12, Issue: 6 On page (s): 1144-1155, Dec.2004) has a computational complexity of 0(1), but this method still needs to filter each session flow and save the state of each session flow. In order to overcome the scalability problem of integrated services, the method of differentiating services is widely used at present. The idea of differentiated services is to establish a differentiated services implementation domain, divide the data flow into several limited types at the boundary of the implementation domain, and only need to provide corresponding services according to the type of data packets on the core router of differentiated services That's it. This method does not need to maintain the state of each session flow on the DiffServ core router, so the processing efficiency is high and the computational complexity is low. Differentiated Services Although there are some call control methods based on bandwidth brokers (Bandwidth Broker, BB, reference: K. Nichols, A Two-bit Differentiated Services Architecture for the Internet, RFC2638, July 1999), there is no standardized call control protocol. On the data plane, although DiffServ has low computational complexity and provides better service quality than best-effort service, it still cannot provide service quality guarantee for real-time services. Global Earliest Deadline First (GEDF, reference: Matthew Andrews, Lisa Zhang, Minimizing End-to-End Delay in High-Speed Networks with a SimpleCoordinated Schedule, IEEE INFOCOM 1999) and core jitter virtual clock (Core-Jitter VirtualClock , CJVC, reference: Ion Stoica, Hui Zhang, PProviding, Guaranteed Services Without Per Flow Management, ACM SIGCOMM 1999) and other scheduling algorithms encode the delay characteristics of each data packet into the packet header, and the core router no longer keeps each session The state information of each data packet is sent sequentially according to the delay characteristics of each data packet. The computational complexity of this type of algorithm is 0(logN), where N is the number of data packets in the queue.

发明内容Contents of the invention

有鉴于此,本发明致力于提供一种基于时间粒度的互联网服务质量保证方法。In view of this, the present invention is committed to providing a method for guaranteeing Internet service quality based on time granularity.

本方法采用区分服务的基本思路,把本域内的路由器分为边缘路由器和核心路由器,在边缘路由器为每个实时业务数据包贴上相对延迟标记,核心路由器根据收到实时业务数据包的相对延迟标记,控制该数据包的排队延迟,从而保障实时业务的端到端时延。This method adopts the basic idea of differentiated services, divides the routers in this domain into edge routers and core routers, pastes a relative delay mark for each real-time service data packet on the edge router, and the core router mark, to control the queuing delay of the data packet, so as to ensure the end-to-end delay of real-time services.

边缘路由器保存每个实时业务的会话信息,采用令牌控制器控制实时业务的流量,并根据当前剩余令牌数量设置实时业务数据包中的相对时限标识,两者的关系是当前剩余令牌数量越多,相对时限的值就越小。路由器收到数据包的相对时限值为正,表示该数据包提前到达该路由器,反之,则表示该数据包延迟到达了。数据包的相对时限值越大,在其后的转发过程中,可以忍受的排队延迟也越大。数据包经过一个路由器后,其相对时限会发生改变。数据包从核心路由器输出时,相对时限需要减去其排队时延,再加上转发延迟常量。The edge router saves the session information of each real-time service, uses the token controller to control the flow of the real-time service, and sets the relative time limit identifier in the real-time service data packet according to the current remaining token quantity. The relationship between the two is the current remaining token quantity The more, the smaller the value of the relative time limit. If the relative time limit value of the router receiving the data packet is positive, it means that the data packet arrives at the router ahead of time, otherwise, it means that the data packet arrives late. The greater the relative time limit of the data packet, the greater the tolerable queuing delay in the subsequent forwarding process. After a packet passes through a router, its relative timing changes. When the data packet is output from the core router, the relative time limit needs to subtract its queuing delay, plus the forwarding delay constant.

核心路由器以比转发延迟常量更小的时长作为基本延迟单位,以基本延迟单位或其整数倍作为等待队列的时限跨度,根据进入核心路由器的数据包的相对时限,可以计算得到该数据包的路由时限;核心路由器根据数据包的路由时限分派数据包,将其插入到相应队列的队尾。发送时,路由时限低的队列优先发送,在每个队列内部,按照数据包到达路由器的先后顺序发送。在核心路由器建立的等待队列分为两种不同的时间粒度,N个细粒度的队列以基本延迟单位作为其时限跨度,M个粗粒度的队列以N倍基本延迟单位作为其时限跨度。N个细粒度的队列接收相对时限从0到N个基本延迟单位的数据包,其中队列R(n)用于接收路由时限属于[(n-1)×u,n×u)的数据包;M个时间粗粒度的数据包等待队列T(m),用于接收路由时限大于U的普通实时业务数据包,其中队列T(m)用于接收路由时限属于[m×U,(m+1)×U)的数据包。当核心路由器进入拥塞状态,就丢弃后继的测试数据包,直到拥塞状态解除。每经过n倍基本延迟单位的时长,就把第一个粗粒度队列中的数据包分配到细粒度队列中,其余的粗粒度队列依次向前晋升。The core router takes the time shorter than the forwarding delay constant as the basic delay unit, and takes the basic delay unit or its integer multiple as the time limit span of the waiting queue. According to the relative time limit of the data packet entering the core router, the route of the data packet can be calculated Time limit: The core router distributes data packets according to the routing time limit of the data packets, and inserts them into the tail of the corresponding queue. When sending, the queue with the lowest routing time limit is sent first, and within each queue, the data packets are sent in the order in which they arrive at the router. The waiting queues established in the core router are divided into two different time granularities. N fine-grained queues use the basic delay unit as their time limit span, and M coarse-grained queues use N times the basic delay unit as their time limit span. N fine-grained queues receive data packets whose relative time limit ranges from 0 to N basic delay units, wherein queue R(n) is used to receive data packets whose routing time limit belongs to [(n-1)×u, n×u); M time-coarse-grained data packet waiting queues T(m) are used to receive ordinary real-time service data packets whose routing time limit is greater than U, and the queue T(m) is used to receive routing time limit belonging to [m×U, (m+1 )×U) packets. When the core router enters the congested state, it discards subsequent test data packets until the congested state is lifted. Every time n times the length of the basic delay unit, the data packets in the first coarse-grained queue are allocated to the fine-grained queue, and the rest of the coarse-grained queues are promoted in turn.

在呼叫控制方面,在每个路由器的输出接口,分配一定的带宽预留给实时业务,并为该部分业务提供较高的调度优先级。在发送实时业务数据前,发送端的边缘路由器向接收端的边缘路由器发送实时业务测试数据包;接收端的边缘路由器检查收到实时业务数据包时,若发现了实时业务测试失败数据包,就拒绝该呼叫;否则,建立该实时业务。In terms of call control, at the output interface of each router, a certain bandwidth is allocated for real-time services, and a higher scheduling priority is provided for this part of the services. Before sending real-time service data, the edge router at the sending end sends a real-time service test packet to the edge router at the receiving end; when the edge router at the receiving end checks the received real-time service data packet, if it finds a real-time service test failure packet, it rejects the call ; Otherwise, establish the real-time service.

本发明是通过如下的技术方案予以实现的:The present invention is achieved through the following technical solutions:

一种基于时间粒度的互联网服务质量保证方法,包括:A method for guaranteeing Internet service quality based on time granularity, comprising:

1)在实时业务数据包的包头中增加一个用于记录数据包状态信息的延迟控制扩展头;1) Add a delay control extension header for recording packet status information in the header of the real-time service data packet;

2)边缘路由器转发收到的普通实时业务数据包,并设置该数据包的相对时限;2) The edge router forwards the received common real-time service data packet, and sets the relative time limit of the data packet;

3)核心路由器根据普通实时业务数据包的相对时限,计算得到该数据包的路由时限;3) The core router calculates the routing time limit of the data packet according to the relative time limit of the common real-time service data packet;

4)核心路由器根据每个普通实时业务数据包的路由时限建立数据包等待队列;4) The core router sets up a data packet waiting queue according to the routing time limit of each common real-time service data packet;

5)核心路由器发送普通实时业务数据包并更新该数据包的相对时限。5) The core router sends a common real-time service data packet and updates the relative time limit of the data packet.

所述延迟控制扩展头的数据结构为:下一个包头的类型、扩展头的长度、扩展头的版本、测试标志、业务等级、相对时限。The data structure of the delay control extension header is: the type of the next packet header, the length of the extension header, the version of the extension header, the test flag, the service level, and the relative time limit.

所述的方法中边缘路由器转发收到的普通实时业务数据包并设置每个数据包的相对时限的方法为:In the described method, the method that the edge router forwards the received common real-time service data packet and sets the relative time limit of each data packet is:

1)边缘路由器为每个实时业务分配一个令牌控制器,配置其最大令牌深度Δ和令牌到达速度α,所述最大令牌深度大于最大数据包的长度;1) The edge router allocates a token controller for each real-time service, configures its maximum token depth Δ and token arrival speed α, and the maximum token depth is greater than the length of the largest data packet;

2)长度为L的普通实时业务数据包到达边缘路由器时,如果当前剩余令牌数量δ大于L时,则发送该数据包,设置其相对时限为β=(Δ-δ)/α,并且将当前剩余令牌数量减少L;否则等待当前剩余令牌数量δ大于L后,再发送该数据包。2) When an ordinary real-time service data packet with a length of L arrives at the edge router, if the current remaining token quantity δ is greater than L, then send the data packet, set its relative time limit as β=(Δ-δ)/α, and set The current remaining number of tokens is reduced by L; otherwise, the data packet is sent after the current remaining number of tokens δ is greater than L.

所述的方法中核心路由器根据每个普通实时业务数据包的路由时限r建立数据包等待队列的方法为:In the described method, the method that the core router sets up a data packet waiting queue according to the routing time limit r of each common real-time service data packet is:

1)在核心路由器中设置两种时间粒度,细粒度为基本延迟单位u,粗粒度U的长度为N个细粒度,即U=N×u;1) Two kinds of time granularities are set in the core router, the fine-grained is the basic delay unit u, and the length of the coarse-grained U is N fine-grained, that is, U=N×u;

2)将忙期分为K个更新时段,每段的时间长度为U,记录每个时段的起点时刻B(k);2) Divide the busy period into K update periods, the length of each period is U, and record the starting time B(k) of each period;

3)计算在第k个更新时段内到达的普通实时业务数据包的路由时限r,r=t-B(k)+β+σ,其中t为当前时刻,β为该数据包进入该核心路由器时的相对时限,σ为转发延迟常量;3) Calculate the routing time limit r of the common real-time service data packet arriving in the k update period, r=t-B(k)+β+σ, wherein t is the current moment, and β is the time when the data packet enters the core router Relative time limit, σ is forwarding delay constant;

4)在核心路由器中建立N个时间细粒度的数据包等待队列R(n),用于接收路由时限属于[0,N×u)的普通实时业务数据包,其中队列R(n)用于接收路由时限属于[(n-1)×u,n×u)的数据包;所述时间细粒度的数据包等待队列的路由时限跨度为基本延迟单位u;4) Establish N time-fine-grained data packet waiting queues R(n) in the core router for receiving ordinary real-time service data packets whose routing time limit belongs to [0, N×u), wherein the queues R(n) are used for Receiving a data packet whose routing time limit belongs to [(n-1)×u, n×u); the routing time limit span of the time fine-grained data packet waiting queue is the basic delay unit u;

5)在核心路由器中建立M个时间粗粒度的数据包等待队列T(m),用于接收路由时限属于[U,(M+1)×U)的普通实时业务数据包,其中队列T(m)用于接收路由时限属于[m×U,(m+1)×U)的数据包,所述时间粗粒度的数据包等待队列的相对时限跨度为U;5) Set up M time-coarse-grained data packet waiting queues T(m) in the core router, for receiving common real-time service data packets whose routing time limit belongs to [U, (M+1)×U), wherein the queue T( m) for receiving a data packet whose routing time limit belongs to [m×U, (m+1)×U), and the relative time limit span of the time coarse-grained data packet waiting queue is U;

6)建立首队列F和尾队列Z,首队列F用于接收路由时限小于零的数据包,尾队列Z用于接收路由时限大于(M+1)×U的数据包;6) Establish a first queue F and a tail queue Z, the first queue F is used to receive packets whose routing time limit is less than zero, and the tail queue Z is used to receive packets whose routing time limit is greater than (M+1)×U;

7)发送队列的建立顺序依次为队列F、N个时间细粒度的数据包等待队列R(n)、M个时间粗粒度的数据包等待队列T(m)、尾队列Z。7) The establishment sequence of the sending queue is queue F, N time-fine-grained data packet waiting queues R(n), M time-coarse-grained data packet waiting queues T(m), and tail queue Z.

所述基本延迟单位u小于所述转发延迟常量σ。The basic delay unit u is smaller than the forwarding delay constant σ.

所述的方法中核心路由器发送普通实时业务数据包的方法为:In the described method, the method that the core router sends the common real-time service data packet is:

1)依次发送队列F、N个时间细粒度的数据包等待队列R(n)、M个时间粗粒度的数据包等待队列T(m)、尾队列Z中的数据包;发送完毕后恢复状态变量初始值;1) Send queue F, N time-fine-grained data packets waiting in queue R(n), M time-coarse-grained data packets in waiting queue T(m), and data packets in tail queue Z; restore the state after sending variable initial value;

2)更新时刻B(k)到达时,对于时间细粒度队列R(n)中未发送的数据包依照发送顺序依次加入到队列F的尾部;2) When the update time B(k) arrives, the unsent data packets in the time fine-grained queue R(n) are sequentially added to the tail of the queue F according to the sending order;

3)更新时刻B(k)到达时,还需将第一个粗粒度队列T(1)中的数据包分配到细粒度队列中,其余的粗粒度队列依次向前晋升,并把队列Z中符合条件的数据包加入到队列T(M)。3) When the update time B(k) arrives, the data packets in the first coarse-grained queue T(1) need to be allocated to the fine-grained queue, and the rest of the coarse-grained queues are promoted in turn, and the data packets in the queue Z Qualified data packets are added to the queue T(M).

所述的方法中核心路由器更新普通实时业务数据包相对时限的方法为:In the described method, the method that the core router updates the relative time limit of the common real-time service data packet is:

1)核心路由器记录数据包到达时间t_arv,和数据包的发送时间t_snd;1) The core router records the arrival time t_arv of the data packet, and the sending time t_snd of the data packet;

2)核心路由器发送该数据包时更新其相对时限为β+σ-(t_snd-t_arv),其中β为该数据包进入该核心路由器时的相对时限。2) When the core router sends the data packet, the relative time limit is updated as β+σ-(t_snd-t_arv), where β is the relative time limit when the data packet enters the core router.

所述实时业务数据包包括普通实时业务数据包、实时业务测试数据包和实时业务测试失败数据包;在非拥塞状态,实时业务测试数据包与普通实时业务数据包在核心路由器中的处理过程是相同的,但在拥塞状态下,核心路由器把实时业务测试数据包变更为实时业务测试失败数据包,并放置到尽力服务队列的尾部;核心路由器通过尽力服务队列来转发实时业务测试失败数据包。Described real-time service data packet comprises common real-time service data packet, real-time service test data packet and real-time service test failure data packet; In non-congested state, the process of real-time service test data packet and common real-time service data packet in core router is Same, but in the congestion state, the core router changes the real-time service test data packet into the real-time service test failure data packet, and places it at the end of the best-effort service queue; the core router forwards the real-time service test failure data packet by the best-effort service queue.

所述实时业务的建立方法为:The establishment method of the real-time service is:

1)在每个路由器的输出接口,分配一定的带宽预留给实时业务,并为该部分业务设定发送优先级;1) On the output interface of each router, allocate a certain bandwidth to reserve for real-time business, and set the sending priority for this part of the business;

2)在发送实时业务数据前,发送端的边缘路由器向接收端的边缘路由器发送实时业务测试数据包;2) Before sending real-time service data, the edge router at the sending end sends a real-time service test data packet to the edge router at the receiving end;

3)接收端的边缘路由器检查收到的实时业务数据包时,若发现了实时业务测试失败数据包,就拒绝该呼叫;否则,建立该实时业务。3) When the edge router at the receiving end checks the received real-time service data packet, if it finds a real-time service test failure data packet, it rejects the call; otherwise, it establishes the real-time service.

所述实时业务的路由建立方法为:在路由器的路由表中添加一个新建标志字段,当路由器的路由项发生变化时,路由器设置该路由项的新建标志有效,等待新建标志有效时长τ后,路由器就更新该路由项的新建标志为无效;路由器输出普通实时业务数据包时,若对应的路由项的新建标志为有效,则路由器设置该数据包为实时业务测试数据包。The route establishment method of described real-time service is: add a newly-built flag field in the routing table of router, when the routing entry of router changes, router sets the newly-built flag of this routing entry to be valid, after waiting for newly-built flag to be effective for long time τ, router It is invalid to update the newly-built sign of this route item; When the router outputs the common real-time service data packet, if the newly-created sign of the corresponding route item is valid, then the router sets the data packet as the real-time service test data packet.

本发明具有如下技术效果:The present invention has following technical effect:

1、在本发明提出的队列调度算法在核心路由器的计算复杂度低。在核心路由器中,根据数据包的相对时限值进行分组为若干个有限的队列,在这些队列间,顺序发送,计算复杂度仅为0(1)。1. The calculation complexity of the queue scheduling algorithm proposed in the present invention is low in the core router. In the core router, data packets are grouped into several limited queues according to the relative time limit value, among these queues, they are sent sequentially, and the computational complexity is only 0(1).

2、在本发明提出的队列调度算法在边缘路由器的计算复杂度也较低,只需根据令牌控制器中的令牌深度设置标记相对时限即可。该方法较核心抖动虚拟时钟方法简单,不需要边缘路由器计算每条路径的松弛变量。2. The calculation complexity of the queue scheduling algorithm proposed in the present invention is also low in the edge router, and it only needs to set the relative time limit of marking according to the token depth in the token controller. This method is simpler than the core dithering virtual clock method, and does not require edge routers to calculate the slack variables of each path.

3、本发明提出的队列调度算法可以控制每个数据包在路由器的排队延迟,从而保证端到端的传输延迟。3. The queue scheduling algorithm proposed by the present invention can control the queuing delay of each data packet in the router, thereby ensuring end-to-end transmission delay.

4、本发明提出的队列调度算法比简单的FIFO队列调度算法带宽利用效率更高,可以在同样的网络环境下为实时业务提供更大的保证带宽。4. The queue scheduling algorithm proposed by the present invention has higher bandwidth utilization efficiency than the simple FIFO queue scheduling algorithm, and can provide larger guaranteed bandwidth for real-time services under the same network environment.

5、本发明提出的基于测量的接入控制技术,可以保证粗粒度的队列调度的端到端时延。5. The measurement-based access control technology proposed by the present invention can ensure the end-to-end delay of coarse-grained queue scheduling.

6、本发明提出的基于测量的接入控制技术,不需要在核心路由器上维护每个会话的状态信息,具有较强的可扩展性。6. The measurement-based access control technology proposed by the present invention does not need to maintain the state information of each session on the core router, and has strong scalability.

7、本发明在网络路由发生变化时,可以较好地保护实时业务的服务质量;当网络资源充足时,可以为传输路径变化的实时业务提供很好的服务质量;当网络资源不足时,可以自动中止传输路径变化的实时业务,从而保证其它实时业务的服务质量。7. The present invention can better protect the service quality of real-time services when the network route changes; when the network resources are sufficient, it can provide good service quality for the real-time services whose transmission path changes; when the network resources are insufficient, it can Automatically suspend the real-time business whose transmission path changes, thereby ensuring the service quality of other real-time businesses.

附图说明Description of drawings

图1为本发明中数据包的延迟控制扩展头的内部结构图;Fig. 1 is the internal structural diagram of the delay control extension header of data packet among the present invention;

图2为本发明的网络设备连接关系图;Fig. 2 is a network device connection diagram of the present invention;

图3为本发明的边缘设备内部结构图;Fig. 3 is an internal structural diagram of the edge device of the present invention;

图4为本发明的核心设备内部队列调度结构图;Fig. 4 is the internal queue scheduling structural diagram of the core equipment of the present invention;

图5为本发明的呼叫控制过程图;Fig. 5 is a call control process diagram of the present invention;

图6为本发明的方法流程图。Fig. 6 is a flow chart of the method of the present invention.

具体实施方式Detailed ways

下面结合附图和具体实施例对本发明进行详细说明。The present invention will be described in detail below in conjunction with the accompanying drawings and specific embodiments.

本发明的方法流程图如图6所示,本实施例是在以IPv6网络环境为基础,来实现本服务质量保证系统。The method flow chart of the present invention is shown in FIG. 6 , and this embodiment is based on the IPv6 network environment to realize the service quality assurance system.

协议扩展protocol extension

为了满足服务质量保证的要求,需要扩展现有IPv6标准,在IP包头中增加一个延迟控制扩展头,其值暂定为102,对应的关键字为DLCT。边缘路由器收到用户的实时业务数据包后,在数据包头中增加延迟控制扩展头;当实时业务数据包到达通信对端的边缘路由器后,边缘路由器删除延迟控制扩展头,再转发给通信对端的用户。如图1所示,该扩展头的格式如下:In order to meet the requirements of service quality assurance, it is necessary to extend the existing IPv6 standard and add a delay control extension header to the IP packet header. Its value is tentatively set to 102, and the corresponding keyword is DLCT. After the edge router receives the user's real-time service data packet, it adds a delay control extension header to the packet header; when the real-time service data packet reaches the edge router at the peer end, the edge router deletes the delay control extension header and forwards it to the user at the peer end . As shown in Figure 1, the format of the extension header is as follows:

第一个八比特组为下一个包头的类型;The first octet is the type of the next header;

第二个八比特组为扩展头的长度,指明令牌级扩展头的长度,以八比特组的数量来表示,并且不包括最开始的8个八比特组;其值为0;The second octet is the length of the extension header, indicating the length of the token-level extension header, expressed in the number of octets, and does not include the first 8 octets; its value is 0;

第三个八比特组为扩展头的版本(Message Version),其值为1,表明当前版本为1,其它值保留;The third octet is the version of the extension header (Message Version), its value is 1, indicating that the current version is 1, and other values are reserved;

第四个八比特组的前四个比特是测试标志,0B1000为实时业务测试数据包,0B1100为实时业务测试失败数据包,0B0000为普通实时业务数据包;后四个比特是业务等级(Service Level),其值为正整数,表明实时业务的等级;The first four bits of the fourth octet are test marks, 0B1000 is a real-time service test data packet, 0B1100 is a real-time service test failure data packet, and 0B0000 is a common real-time service data packet; the last four bits are service level (Service Level) ), whose value is a positive integer, indicating the level of real-time services;

第五、六、七和八个八比特组为相对时限(Relative Deadline),取值范围为整数,单位为100微秒。The 5th, 6th, 7th and 8th octets are relative deadlines (Relative Deadline), the value range is an integer, and the unit is 100 microseconds.

图2为IPv6网络环境的结构,服务质量保证系统分布在边缘路由器和核心路由器上。本系统限定每个核心路由器的基本延迟单位u为800微秒,转发延迟常量σ为3毫秒,限定端到端的转发跳数小于16,这样端到端的排队延迟就保证在48毫秒内。Fig. 2 is the structure of IPv6 network environment, the quality of service assurance system is distributed on edge routers and core routers. The system limits the basic delay unit u of each core router to 800 microseconds, the forwarding delay constant σ to 3 milliseconds, and limits the number of end-to-end forwarding hops to less than 16, so that the end-to-end queuing delay is guaranteed to be within 48 milliseconds.

队列调度queue scheduling

本专利提出的服务质量保证方法采用区分服务的思路,把区域内的路由器分为边缘路由器和核心路由器,边缘路由器保存每个数据流的状态信息,并把相对时限信息编码到数据包的延迟控制扩展头中,核心路由器无需维护每个会话的状态信息,只需要根据数据包头中的相对时限信息处理数据包即可。The service quality assurance method proposed in this patent adopts the idea of differentiating services, and divides the routers in the area into edge routers and core routers. The edge routers save the state information of each data flow, and encode the relative time limit information into the delay control of data packets. In the extension header, the core router does not need to maintain the state information of each session, but only needs to process the data packet according to the relative time limit information in the data packet header.

该方法不考虑线路传输延迟和数据传输路径的跳数,这些问题都由网络规划和终端系统负责。本方法通过限定实时业务数据包在核心路由器中的排队延迟,使之小于转发延迟常量σ,来保证数据包的端到端传输延迟。This method does not consider the line transmission delay and the number of hops in the data transmission path, these issues are the responsibility of the network planning and end systems. The method guarantees the end-to-end transmission delay of the data packet by limiting the queuing delay of the real-time service data packet in the core router to be smaller than the forwarding delay constant σ.

由于网络负载的变化,数据包可能提前或延后到达下一跳路由器,本文把这个时间差值β称为相对时限。相对时限为正,表示提前到达;相对时限为负,表示延迟到达。对于提前到达的数据包,其在队列中等待的时间可以大于转发延迟常量,但应当小于转发延迟常量与相对时限之和。核心路由器通过让提前到达的数据包在队列中等待更长的时间,让其它相对时限更小的数据包先发送,从而提高网络系统的整体延迟性能。Due to the change of network load, the data packet may reach the next-hop router earlier or later, and this time difference β is called the relative time limit in this paper. A positive relative time limit means early arrival; a negative relative time limit means late arrival. For the data packets arriving earlier, the waiting time in the queue can be longer than the forwarding delay constant, but should be less than the sum of the forwarding delay constant and the relative time limit. The core router can improve the overall delay performance of the network system by allowing the data packets arriving earlier to wait in the queue for a longer time and allowing other data packets with a relatively shorter time limit to be sent first.

在边缘路由器为每个实时业务分配一个令牌控制器,如图3所示,配置其最大令牌深度Δ,令牌到达速度α,其中最大令牌深度Δ必须大于最大数据包的长度。Assign a token controller to each real-time service at the edge router, as shown in Figure 3, configure its maximum token depth Δ, token arrival speed α, where the maximum token depth Δ must be greater than the length of the largest data packet.

当长度为L的普通实时业务数据包到达边缘路由器时,若令牌控制器的当前剩余令牌数量δ大于当前数据包的长度L就发送该数据包,标识该数据包的相对时限β为(Δ-δ)/α,并把当前剩余令牌数量减少L。否则,等待令牌控制器的当前剩余令牌数量大于数据包长度后,再发送该数据包,标识该数据包的相对时限β为(Δ-δ)/α,并把当前剩余令牌数量减少L。When an ordinary real-time service data packet with a length of L arrives at the edge router, if the current remaining token quantity δ of the token controller is greater than the length L of the current data packet, the data packet is sent, and the relative time limit β for identifying the data packet is ( Δ-δ)/α, and reduce the current number of remaining tokens by L. Otherwise, wait for the current remaining token quantity of the token controller to be greater than the data packet length, and then send the data packet, identify the relative time limit β of the data packet as (Δ-δ)/α, and reduce the current remaining token quantity L.

当数据包到达核心路由器时,核心路由器记录该数据包的达到时间t_arv,和数据包的发送时间t_snd,并在发送时更新该数据包的相对时限为β+σ-(t_snd-t_arv),其中β为该数据包进入该核心路由器时的相对时限;When the data packet arrives at the core router, the core router records the arrival time t_arv of the data packet and the sending time t_snd of the data packet, and updates the relative time limit of the data packet when sending to beta+σ-(t_snd-t_arv), where β is the relative time limit when the data packet enters the core router;

如图4所示,在核心路由器的输出接口,建立34个队列,分别为F、R(1)、R(2)、...、R(16)、T(1)、T(2)、...、T(16)、Z。指针PR取值为1、2、...、16时,指示的当前发送队列分别为R(1)、R(2)、...、R(16),取值为0,表示该指针无效,指针PR的初始值为0。指针PT取值为1、2、...、16时,指示的当前发送队列分别为T(1)、T(2)、...、T(16),取值为0,表示该指针无效,指针PT的初始值为0。As shown in Figure 4, 34 queues are established on the output interface of the core router, respectively F, R(1), R(2), ..., R(16), T(1), T(2) ,..., T(16), Z. When the value of the pointer PR is 1, 2, ..., 16, the current sending queue indicated is R(1), R(2), ..., R(16), and the value is 0, indicating that the pointer Invalid, the initial value of the pointer PR is 0. When the value of the pointer PT is 1, 2, ..., 16, the current sending queue indicated is T(1), T(2), ..., T(16), and the value is 0, indicating that the pointer Invalid, the initial value of the pointer PT is 0.

初始化时,核心路由器输出接口上的34个队列全部为空,其忙期开始的时间为0,忙期结束的时间为E,将该忙期分为长度为U(12.8毫秒)的K个更新时段,K个时段的起点时刻为0、B(1)、B(2)、...、B(K-1)。At the time of initialization, all 34 queues on the output interface of the core router are empty, the start time of the busy period is 0, and the end time of the busy period is E. The busy period is divided into K updates with a length of U (12.8 milliseconds) Time period, the starting time of K time periods is 0, B(1), B(2), ..., B(K-1).

当普通实时业务数据包p在路由器的第k个更新时段内到达,该数据包的路由器时限r为当前时刻t减去第k个更新时段的开始时刻B(k),加上该数据包进入核心路由器时的相对时限,再加上转发延迟常量σ。When the ordinary real-time service data packet p arrives in the kth update period of the router, the router time limit r of the data packet is the current time t minus the start time B(k) of the kth update period, plus the data packet entering The relative timing of the core router time, plus the forwarding delay constant σ.

若该路由器时限r小于零,则该数据包放入队列F中,If the router time limit r is less than zero, the data packet is put into the queue F,

若该路由器时限r小于n×800微秒,大于等于(n-1)×800微秒,则该数据包放入队列R(n)中;若当前指针PR为零,则更新指针PR为n;若当前指针PR取值不为零,并且n小于指针PR,则PR的值更改为n;If the router time limit r is less than n×800 microseconds and greater than or equal to (n-1)×800 microseconds, then the data packet is put into the queue R(n); if the current pointer PR is zero, the update pointer PR is n ; If the value of the current pointer PR is not zero, and n is smaller than the pointer PR, then the value of PR is changed to n;

若该路由器时限r小于(m+1)×12800微秒,大于等于m×12800微秒,则该数据包放入队列T(m)中;若当前指针PT为零,则更新指针PT为m;若当前指针PT取值不为零,并且m小于指针PT,则PT的值更改为m;If the router time limit r is less than (m+1)×12800 microseconds and greater than or equal to m×12800 microseconds, then the data packet is put into the queue T(m); if the current pointer PT is zero, update the pointer PT to m ; If the value of the current pointer PT is not zero, and m is smaller than the pointer PT, then the value of PT is changed to m;

否则,则该数据包放入队列Z中;Otherwise, the packet is placed in queue Z;

在发送时,接口从这34个队列中选择数据包来发送,其选择方法是这样的。When sending, the interface selects data packets from these 34 queues to send, and the selection method is as follows.

若队列F不空,则发送队列F的队头数据包;If the queue F is not empty, send the head data packet of the queue F;

若队列F为空且指针PR不等于零,就检查队列R(PR)是否为空。若队列R(PR)不空,则发送队列R(PR)的队头数据包;否则,指针PR加一,再次测试R(PR)是否为空;若直到R(16)都为空,则置指针PR为零;If the queue F is empty and the pointer PR is not equal to zero, check whether the queue R(PR) is empty. If the queue R (PR) is not empty, then send the head packet of the queue R (PR); otherwise, add one to the pointer PR, and test whether R (PR) is empty again; if it is empty until R (16), then Set the pointer PR to zero;

当队列F为空,指针PR为零且指针PT不等于零时,就检查队列T(PT)。若队列T(PT)不空时,就发送队列T(PT)的数据包;若队列T(PT)为空时,指针PT加一,再检查队列T(PT)是否为空。若直到T(16)都为空,则置指针PT为零;When the queue F is empty, the pointer PR is zero and the pointer PT is not equal to zero, the queue T(PT) is checked. If the queue T(PT) is not empty, send the data packet of the queue T(PT); if the queue T(PT) is empty, add one to the pointer PT, and then check whether the queue T(PT) is empty. If it is empty until T(16), set the pointer PT to be zero;

当队列F为空,指针PR为零且指针PT也为零时,就检查队列Z是否为空。若队列Z不为空则发送队列Z的队头数据包;否则,路由器就结束了这个忙期,PT和PR都变为初始值零。When the queue F is empty, the pointer PR is zero and the pointer PT is also zero, check whether the queue Z is empty. If the queue Z is not empty, send the queue head data packet of queue Z; otherwise, the router ends the busy period, and both PT and PR become the initial value zero.

在更新时刻B(k)到达时,若队列R(1)、R(2)、...、R(16)中仍有数据包未能发送,就把这些数据包依照发送顺序依次加入到队列F的尾部。然后把队列T(1)中的数据包按照其路由器时限,分配到16个时间细粒度队列R(1)、R(2)、...、R(16)中。并将队列T(2)、T(3)、...、T(16)更新为队列T(1)、T(2)、...、T(15),最后把队列Z中的属于T(16)的部分数据包移动到队列T(16)中,并把PT和PR都变为初始值零。When the update time B(k) arrives, if there are still data packets in the queues R(1), R(2), ..., R(16) that cannot be sent, these data packets are added to the The tail of queue F. Then, the data packets in the queue T(1) are allocated to 16 time fine-grained queues R(1), R(2), . . . , R(16) according to the router time limit. And update the queues T(2), T(3),..., T(16) to queues T(1), T(2),..., T(15), and finally put the queues in the queue Z that belong to Some data packets of T(16) are moved to queue T(16), and both PT and PR are changed to initial value zero.

在发送过程,队列R(1)、R(2)、...、R(16)的限定时刻D(1)、D(2)、...、D(16)分别为800、1600、...、12800微秒,若D(i)时刻到达了,但R(1)、R(2)、...、R(i)这i个队列中还有未发送完的数据包,则核心路由器进入拥塞状态。核心路由器进入拥塞状态后,当D(j)时刻到达了,队列R(1)、R(2)、...、R(j)这j个队列均无等待发送的数据包,则核心路由器进入非拥塞状态。在拥塞状态下,核心路由器把实时业务测试数据包包头中的测试标志更改为0B1100,从而把该数据包变更为实时业务测试失败数据包,并放置到尽力服务队列的尾部;核心路由器通过尽力服务队列来转发实时业务测试失败数据包。在非拥塞状态,核心路由器采用与普通实时业务数据包相同的处理方法,处理实时业务测试数据包。核心路由器采用与尽力服务的方法处理实时业务测试失败数据包。During the sending process, the limited time D(1), D(2), ..., D(16) of the queues R(1), R(2), ..., R(16) are 800, 1600, ..., 12800 microseconds, if D(i) time arrives, but R(1), R(2), ..., R(i) i queues still have unsent data packets, Then the core router enters the congestion state. After the core router enters the congestion state, when the time D(j) arrives, and the j queues R(1), R(2), ..., R(j) have no data packets waiting to be sent, the core router Enter the non-congested state. In the congestion state, the core router changes the test flag in the header of the real-time service test data packet to 0B1100, thereby changing the data packet into a real-time service test failure data packet and placing it at the end of the best-effort service queue; the core router passes the best-effort service Queues to forward real-time service test failure packets. In the non-congested state, the core router uses the same processing method as the common real-time service data packet to process the real-time service test data packet. The core router adopts the method of best-effort service to process the failed data packets of the real-time service test.

呼叫控制call control

在每个路由器的输出接口,分配一定的带宽预留给实时业务,并为该部分业务提供较高的调度优先级。本方法采用RSVP协议作为终端和边缘路由器之间的呼叫信令。如图5所示,在发送实时业务数据前,发送方先发送Path消息到边缘路由器,并在边缘路由器建立相关的状态信息。发送端的边缘路由器再转发Path消息到接收端的边缘路由器,并在其后1秒种时间内,根据Path要求的资源特性向接收端的边缘路由器发送顺序编号的实时业务测试数据包。On the output interface of each router, a certain amount of bandwidth is allocated for real-time services, and a higher scheduling priority is provided for this part of the services. The method adopts the RSVP protocol as the call signaling between the terminal and the edge router. As shown in Figure 5, before sending real-time service data, the sender first sends a Path message to the edge router, and establishes relevant state information at the edge router. The edge router at the sending end forwards the Path message to the edge router at the receiving end, and within 1 second thereafter, sends sequentially numbered real-time service test data packets to the edge router at the receiving end according to the resource characteristics required by Path.

接收端的边缘路由器检查收到的实时业务数据包,若发现了实时业务测试失败数据包就拒绝这个呼叫,否则,转发Path消息到接收端。接收端的边缘路由器收到终端返回的Resv消息,再转发给发送端的边缘路由器,并转发给发送端。发送端最后发出确认消息ResvConf给接收端,这样呼叫就建立了。The edge router at the receiving end checks the received real-time service data packet, and rejects the call if it finds a real-time service test failure data packet, otherwise, forwards the Path message to the receiving end. The edge router at the receiving end receives the Resv message returned by the terminal, and forwards it to the edge router at the sending end, and forwards it to the sending end. The sending end finally sends a confirmation message ResvConf to the receiving end, so that the call is established.

待会话结束后,终端发送PathTear或ResvTear,释放在边缘路由器预留的资源。After the session ends, the terminal sends PathTear or ResvTear to release the resources reserved in the edge router.

路由变更route change

在路由器的路由项中增加新建标志字段,当增加或更改路由项时,设置该路由项的新建标志为有效,并启动新建标志有效定时器,新建标志有效定时器的长度为1秒种,新建标志有效定时器超时后,设置新建标志为无效。路由器输出普通实时业务数据包时,若对应的路由项的新建标志为有效,则路由器设置该数据包为实时业务测试数据包。在实时业务的正常运行过程中,若收到实时业务测试失败数据包,就中止本次实时通信业务。Add a new flag field in the routing item of the router. When adding or changing the routing item, set the new flag of the routing item as valid, and start the new flag valid timer. The length of the new flag valid timer is 1 second. After the flag valid timer expires, set the new flag to be invalid. When the router outputs a common real-time service data packet, if the new flag of the corresponding routing item is valid, the router sets the data packet as a real-time service test data packet. During the normal operation of the real-time service, if the real-time service test failure data packet is received, the real-time communication service will be terminated.

Claims (10)

1.一种基于时间粒度的互联网服务质量保证方法,其步骤为:1. A method for guaranteeing Internet service quality based on time granularity, the steps of which are: 1)在实时业务数据包的包头中增加一个用于记录数据包状态信息的延迟控制扩展头;1) Add a delay control extension header for recording packet status information in the header of the real-time service data packet; 2)边缘路由器转发收到的普通实时业务数据包,并设置该数据包的相对时限;2) The edge router forwards the received common real-time service data packet, and sets the relative time limit of the data packet; 3)核心路由器根据普通实时业务数据包的相对时限,计算得到该数据包的路由时限;3) The core router calculates the routing time limit of the data packet according to the relative time limit of the common real-time service data packet; 4)核心路由器根据每个普通实时业务数据包的路由时限建立数据包等待队列;4) The core router sets up a data packet waiting queue according to the routing time limit of each common real-time service data packet; 5)核心路由器发送普通实时业务数据包并更新该数据包的相对时限。5) The core router sends a common real-time service data packet and updates the relative time limit of the data packet. 2.如权利要求1所述的方法,其特征在于所述延迟控制扩展头的数据结构为:下一个包头的类型、扩展头的长度、扩展头的版本、测试标志、业务等级、相对时限。2. The method according to claim 1, wherein the data structure of the delay control extension header is: the type of the next packet header, the length of the extension header, the version of the extension header, the test flag, the service level, and the relative time limit. 3.如权利要求2所述的方法,其特征在于边缘路由器转发收到的普通实时业务数据包并设置每个数据包的相对时限的方法为:3. method as claimed in claim 2, it is characterized in that the common real-time business data packet that edge router forwards receives and the method that the relative time limit of each data packet is set is: 1)边缘路由器为每个实时业务分配一个令牌控制器,配置其最大令牌深度Δ和令牌到达速度α,所述最大令牌深度大于最大数据包的长度;1) The edge router allocates a token controller for each real-time service, configures its maximum token depth Δ and token arrival speed α, and the maximum token depth is greater than the length of the largest data packet; 2)长度为L的普通实时业务数据包到达边缘路由器时,如果当前剩余令牌数量δ大于L时,则发送该数据包,设置其相对时限为β=(Δ-δ)/α,并且将当前剩余令牌数量减少L;否则等待当前剩余令牌数量δ大于L后,再发送该数据包。2) When an ordinary real-time service data packet with a length of L arrives at the edge router, if the current remaining token quantity δ is greater than L, then send the data packet, set its relative time limit as β=(Δ-δ)/α, and set The current remaining number of tokens is reduced by L; otherwise, the data packet is sent after the current remaining number of tokens δ is greater than L. 4.如权利要求3所述的方法,其特征在于核心路由器根据每个普通实时业务数据包的路由时限建立数据包等待队列的方法为:4. method as claimed in claim 3, it is characterized in that core router sets up the method for packet waiting queue according to the routing time limit of each common real-time service packet: 1)在核心路由器中设置两种时间粒度,细粒度为基本延迟单位u,粗粒度U的长度为N个细粒度,即U=N×u;1) Two kinds of time granularities are set in the core router, the fine-grained is the basic delay unit u, and the length of the coarse-grained U is N fine-grained, that is, U=N×u; 2)将忙期分为K个更新时段,每段的时间长度为U,记录每个时段的起点时刻B(k);2) Divide the busy period into K update periods, the length of each period is U, and record the starting time B(k) of each period; 3)计算在第k个更新时段内到达的普通实时业务数据包的路由时限r,r=t-B(k)+β+σ,其中t为当前时刻,β为该数据包进入该核心路由器时的相对时限,σ为转发延迟常量;3) Calculate the routing time limit r of the common real-time service data packet arriving in the k update period, r=t-B(k)+β+σ, wherein t is the current moment, and β is the time when the data packet enters the core router Relative time limit, σ is forwarding delay constant; 4)在核心路由器中建立N个时间细粒度的数据包等待队列R(n),用于接收路由时限属于[0,N×u)的普通实时业务数据包,其中队列R(n)用于接收路由时限属于[(n-1)×u,n×u)的数据包;所述时间细粒度的数据包等待队列的路由时限跨度为基本延迟单位u;4) Establish N time-fine-grained data packet waiting queues R(n) in the core router for receiving ordinary real-time service data packets whose routing time limit belongs to [0, N×u), wherein the queues R(n) are used for Receiving a data packet whose routing time limit belongs to [(n-1)×u, n×u); the routing time limit span of the time fine-grained data packet waiting queue is the basic delay unit u; 5)在核心路由器中建立M个时间粗粒度的数据包等待队列T(m),用于接收路由时限属于[U,(M+1)×U)的普通实时业务数据包,其中队列T(m)用于接收路由时限属于[m×U,(m+1)×U)的数据包,所述时间粗粒度的数据包等待队列的相对时限跨度为U;5) Set up M time-coarse-grained data packet waiting queues T(m) in the core router, for receiving common real-time service data packets whose routing time limit belongs to [U, (M+1)×U), wherein the queue T( m) for receiving a data packet whose routing time limit belongs to [m×U, (m+1)×U), and the relative time limit span of the time coarse-grained data packet waiting queue is U; 6)建立首队列F和尾队列Z,首队列F用于接收路由时限小于零的数据包,尾队列Z用于接收路由时限大于(M+1)×U的数据包;6) Establish a first queue F and a tail queue Z, the first queue F is used to receive packets whose routing time limit is less than zero, and the tail queue Z is used to receive packets whose routing time limit is greater than (M+1)×U; 7)发送队列的建立顺序依次为队列F、N个时间细粒度的数据包等待队列R(n)、M个时间粗粒度的数据包等待队列T(m)、尾队列Z。7) The establishment sequence of the sending queue is queue F, N time-fine-grained data packet waiting queues R(n), M time-coarse-grained data packet waiting queues T(m), and tail queue Z. 5.如权利要求4所述的方法,其特征在于所述基本延迟单位u小于所述转发延迟常量σ。5. The method according to claim 4, characterized in that said basic delay unit u is smaller than said forwarding delay constant σ. 6.如权利要求5所述的方法,其特征在于核心路由器发送普通实时业务数据包的方法为:6. method as claimed in claim 5, it is characterized in that the method that core router sends common real-time service data packet is: 1)依次发送队列F、N个时间细粒度的数据包等待队列R(n)、M个时间粗粒度的数据包等待队列T(m)、尾队列Z中的数据包;发送完毕后恢复状态变量初始值;1) Send queue F, N time-fine-grained data packets waiting in queue R(n), M time-coarse-grained data packets in waiting queue T(m), and data packets in tail queue Z; restore the state after sending variable initial value; 2)更新时刻B(k)到达时,对于时间细粒度队列R(n)中未发送的数据包依照发送顺序依次加入到队列F的尾部;2) When the update time B(k) arrives, the unsent data packets in the time fine-grained queue R(n) are sequentially added to the tail of the queue F according to the sending order; 3)更新时刻B(k)到达时,还需将第一个粗粒度队列T(1)中的数据包分配到细粒度队列中,其余的粗粒度队列依次向前晋升,并把队列Z中符合条件的数据包加入到队列T(M)。3) When the update time B(k) arrives, the data packets in the first coarse-grained queue T(1) need to be allocated to the fine-grained queue, and the rest of the coarse-grained queues are promoted in turn, and the data packets in the queue Z Qualified data packets are added to the queue T(M). 7.如权利要求4所述的方法,其特征在于核心路由器更新普通实时业务数据包相对时限的方法为:7. method as claimed in claim 4, it is characterized in that the method that core router updates common real-time service data packet relative time limit is: 1)核心路由器记录数据包到达时间t_arv,和数据包的发送时间t_snd;1) The core router records the arrival time t_arv of the data packet, and the sending time t_snd of the data packet; 2)核心路由器发送该数据包时更新其相对时限为β+σ-(t_snd-t_arv),其中β为该数据包进入该核心路由器时的相对时限。2) When the core router sends the data packet, the relative time limit is updated as β+σ-(t_snd-t_arv), where β is the relative time limit when the data packet enters the core router. 8.如权利要求6和7所述的方法,其特征在于所述实时业务数据包包括普通实时业务数据包、实时业务测试数据包和实时业务测试失败数据包;在非拥塞状态,实时业务测试数据包与普通实时业务数据包在核心路由器中的处理过程是相同的,但在拥塞状态下,核心路由器把实时业务测试数据包变更为实时业务测试失败数据包,并放置到尽力服务队列的尾部;核心路由器通过尽力服务队列来转发实时业务测试失败数据包。8. method as claimed in claim 6 and 7, it is characterized in that described real-time service data packet comprises common real-time service data packet, real-time service test data packet and real-time service test failure data packet; In non-congested state, real-time service test The data packet is processed in the core router in the same way as the normal real-time service data packet, but in the congested state, the core router changes the real-time service test data packet into a real-time service test failure data packet, and puts it at the end of the best-effort service queue ; The core router forwards the real-time service test failure data packet through the best-effort service queue. 9.如权利要求2所述的方法,其特征在于所述实时业务的建立方法为:9. The method according to claim 2, characterized in that the method for establishing the real-time service is: 1)在每个路由器的输出接口,分配一定的带宽预留给实时业务,并为该部分业务设定发送优先级;1) On the output interface of each router, allocate a certain bandwidth to reserve for real-time business, and set the sending priority for this part of the business; 2)在发送实时业务数据前,发送端的边缘路由器向接收端的边缘路由器发送实时业务测试数据包;2) Before sending real-time service data, the edge router at the sending end sends a real-time service test data packet to the edge router at the receiving end; 3)接收端的边缘路由器检查收到的实时业务数据包时,若发现了实时业务测试失败数据包,就拒绝该呼叫;否则,建立该实时业务。3) When the edge router at the receiving end checks the received real-time service data packet, if it finds a real-time service test failure data packet, it rejects the call; otherwise, it establishes the real-time service. 10.如权利要求2所述的方法,其特征在于所述实时业务的路由建立方法为:在路由器的路由表中添加一个新建标志字段,当路由器的路由项发生变化时,路由器设置该路由项的新建标志有效,等待新建标志有效时长τ后,路由器就更新该路由项的新建标志为无效;路由器输出普通实时业务数据包时,若对应的路由项的新建标志为有效,则路由器设置该数据包为实时业务测试数据包。10. The method according to claim 2, wherein the routing establishment method of the real-time service is as follows: a newly-built flag field is added in the routing table of the router, and when the routing item of the router changes, the routing item is set by the router The new flag of the new flag is valid, and after waiting for the new flag to be valid for τ, the router will update the new flag of the routing item to be invalid; when the router outputs ordinary real-time service data packets, if the new flag of the corresponding routing item is valid, the router will set the data The package is a real-time service test data package.
CN2007103040814A 2007-12-25 2007-12-25 A Time Granularity-Based Internet Service Quality Assurance Method Expired - Fee Related CN101212417B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2007103040814A CN101212417B (en) 2007-12-25 2007-12-25 A Time Granularity-Based Internet Service Quality Assurance Method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2007103040814A CN101212417B (en) 2007-12-25 2007-12-25 A Time Granularity-Based Internet Service Quality Assurance Method

Publications (2)

Publication Number Publication Date
CN101212417A true CN101212417A (en) 2008-07-02
CN101212417B CN101212417B (en) 2010-04-21

Family

ID=39612102

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007103040814A Expired - Fee Related CN101212417B (en) 2007-12-25 2007-12-25 A Time Granularity-Based Internet Service Quality Assurance Method

Country Status (1)

Country Link
CN (1) CN101212417B (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104009935A (en) * 2013-02-22 2014-08-27 中兴通讯股份有限公司 Priority scheduling method and device
CN104734991A (en) * 2013-12-19 2015-06-24 中国科学院沈阳自动化研究所 End-to-end time delay guarantee transmission scheduling method oriented to industrial backhaul network
CN107526643A (en) * 2017-07-20 2017-12-29 郑州云海信息技术有限公司 The method and system that a kind of message delay is sent
CN107637052A (en) * 2017-08-02 2018-01-26 福建联迪商用设备有限公司 A kind of business data processing method, client, service end and system
CN107979535A (en) * 2017-10-31 2018-05-01 新华三技术有限公司 Message forwarding method and device
CN114051715A (en) * 2019-07-22 2022-02-15 华为技术有限公司 Control device, switching device and method

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW480858B (en) * 2000-06-15 2002-03-21 Nat Science Council Expandability design of QoS route and transfer
CN1881899A (en) * 2006-04-30 2006-12-20 国家数字交换系统工程技术研究中心 Network flow monitoring system and method
CN101075968A (en) * 2007-07-23 2007-11-21 中兴通讯股份有限公司 Method and apparatus for providing region-classifying service

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104009935A (en) * 2013-02-22 2014-08-27 中兴通讯股份有限公司 Priority scheduling method and device
CN104009935B (en) * 2013-02-22 2018-01-09 中兴通讯股份有限公司 A kind of priority dispatching method and device
CN104734991A (en) * 2013-12-19 2015-06-24 中国科学院沈阳自动化研究所 End-to-end time delay guarantee transmission scheduling method oriented to industrial backhaul network
CN104734991B (en) * 2013-12-19 2017-09-15 中国科学院沈阳自动化研究所 A kind of end-to-end time delay towards industrial backhaul network ensures transmission dispatching method
CN107526643A (en) * 2017-07-20 2017-12-29 郑州云海信息技术有限公司 The method and system that a kind of message delay is sent
CN107637052A (en) * 2017-08-02 2018-01-26 福建联迪商用设备有限公司 A kind of business data processing method, client, service end and system
CN107979535A (en) * 2017-10-31 2018-05-01 新华三技术有限公司 Message forwarding method and device
CN107979535B (en) * 2017-10-31 2021-03-02 新华三技术有限公司 Message forwarding method and device
CN114051715A (en) * 2019-07-22 2022-02-15 华为技术有限公司 Control device, switching device and method

Also Published As

Publication number Publication date
CN101212417B (en) 2010-04-21

Similar Documents

Publication Publication Date Title
CA2302218C (en) Packet network
CN101471854A (en) Method and device for forwarding message
CN101212417B (en) A Time Granularity-Based Internet Service Quality Assurance Method
CN101369962A (en) Method and network device for forwarding message
WO2004045167A1 (en) Method for selecting a logical link for a packet in a router
Ramabhadran et al. The stratified round robin scheduler: design, analysis and implementation
CN100466593C (en) A Realization Method of Integrated Queue Scheduling Supporting Multiple Services
CN102413051B (en) Method and device for scheduling quality of service (QOS)
JP3623420B2 (en) Traffic control method
Schulzrinne et al. An evaluation of scheduling mechanisms for providing best-effort real-time communications in wide-area networks
Kaur et al. Core-stateless guaranteed throughput networks
Sun et al. End-to-end delay bounds for traffic aggregates under guaranteed-rate scheduling algorithms
CN102404225B (en) Method for rapid enqueue of packet for differential queue service system
WO2005002154A1 (en) Hierarchy tree-based quality of service classification for packet processing
JP4087279B2 (en) BAND CONTROL METHOD AND BAND CONTROL DEVICE THEREOF
CN100399745C (en) System and method for communication device scheduling data traffic flow
Chaudhuri et al. Validation of a DiffServ based QoS model implementation for real-time traffic in a test bed
Prakash Using the 20 bit flow label field in the IPv6 header to indicate desirable quality of service on the internet
Mohanty et al. On fair scheduling in heterogeneous link aggregated services
Domżał et al. Efficient congestion control mechanism for flow‐aware networks
Cobb Scalable quality of service across multiple domains
CN117240795A (en) Scheduling method and system supporting multi-mode processing logic
Fidler On the impacts of traffic shaping on end-to-end delay bounds in aggregate scheduling networks
Cobb Work-conserving fair-aggregation with rate-independent delay
Graffi et al. Taxonomy of message scheduling strategies in context of peer-to-peer scenarios

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100421

Termination date: 20121225