CN1705295A - 具有优先级的包传输***及其方法 - Google Patents
具有优先级的包传输***及其方法 Download PDFInfo
- Publication number
- CN1705295A CN1705295A CNA2004100371277A CN200410037127A CN1705295A CN 1705295 A CN1705295 A CN 1705295A CN A2004100371277 A CNA2004100371277 A CN A2004100371277A CN 200410037127 A CN200410037127 A CN 200410037127A CN 1705295 A CN1705295 A CN 1705295A
- Authority
- CN
- China
- Prior art keywords
- bag
- priority
- module
- control word
- current
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Communication Control (AREA)
Abstract
本发明涉及分组交换网络中包的传输技术,公开了一种具有优先级的包传输***及其方法,使得进行点到点包传输时,高优先级的包传输时延更小,实时性更强。这种具有优先级的包传输***及其方法中,发送方每次发送一个最小发送单元(例如一个字节或一个比特),支持抢占机制,允许优先级更高的包打断当前包的传送。
Description
技术领域
本发明涉及分组交换网络中包的传输技术,特别涉及采用不同优先级来传输包的技术。
背景技术
在通信领域,交换技术主要有电路交换、报文交换、分组交换等几种。而随着计算机技术和计算机通信的发展,基于分组交换的通信网络的应用越来越广泛,已经开始提供传统的电路交换网络提供的多种业务。分组交换中的分组通常称为包,分组交换也称包交换。
分组交换将用户传送的数据划分成一定的长度进行传输,每个部分叫做一个包,每个包的前面加上一个包头,用以指明该分组发往何地址,然后由交换机根据每个分组的地址标志,将他们转发至目的地,这一过程称为分组交换。其中,包的大小不固定,例如网间互联协议(Internet Protocol,简称“IP”)包的大小就不固定。其中,在点到点包传输方案中,有两类数据在线路上传送,一类是正常的业务数据,另一类是用于包定界、同步、告警等的控制字。一个完整的包可能全部由控制字组成,也可能由控制字和业务数据混合而成。
分组交换涉及越来越多的不同业务,而通常不同的业务具有不同的传输时延要求和不同的服务质量(Quality of Service,简称“QoS”),现有的技术方案为了满足不同的传输时延要求和不同的QoS,根据业务对传输时延的敏感性为业务设定不同的优先级。当进行点到点传输时,在同一线路上可能会传输多种业务,***根据业务的优先级来决定传输的次序,以保证高优先的数据得到优先的传输。当前数据包发送完成后,***都会检查所有待发数据包的优先级,先发送优先级高的数据包。这样包以不同的优先级发送,就实现了优先级高的包平均时延较小。
在实际应用中,上述方案存在以下问题:现有的技术方案在进行点到点的传输时,有时高优先级的包的时延仍然比较长,不能满足时延的要求,影响了实时性。
造成这种情况的主要原因在于,现有的技术方案中,当高优先级的业务到来时,如果低优先级的包正在传输,高优先级的包必须等待已经在传输的低优先级包全部传完才能传送,而由于包的长度并没有固定的限制,当低优先级的包很长时,高优先级包的延时也就变长了,此时就不能满足高优先级的包的时延的要求,影响了实时性。特别是在应用最广的IP通信中,原则上IP包的长度可以很长,因此可能的延时也会很长。
发明内容
有鉴于此,本发明的主要目的在于提供一种具有优先级的包传输***及其方法,使得进行点到点包传输时,高优先级的包传输时延更小,实时性更强。
为实现上述目的,本发明提供了一种具有优先级的包传输***,包含发送方模块和接收方模块;
所述发送方模块用于在每个发送时刻向所述接收方模块发送当前优先级最高的所述包的一个最小发送单元,并在发送每个所述包的时候发送用于识别所述包的头部的控制字;
所述接收方模块用于接收来自所述发送方模块的所述最小发送单元,还原为所述包,在当前包尚未接收完又收到新包的头部控制字时,保护所述当前包的现场,并在接收完所述新包后恢复现场继续接收所述当前包。
其中,在有线路编码时,选用线路编码中冗余的码字作为所述控制字。
在无线路编码时,使用连续的N个1加一个0作为所述控制字的前导标识,所述控制字的长度固定;所述包中如果已经出现了连续N-1个1,则所述发送方模块在线路上***一个0,所述接收方模块在接收时将该0过滤掉。
在无线路编码时,使用连续的N个0加一个1作为所述控制字的前导标识,所述控制字的长度固定;所述包中如果已经出现了连续N-1个0,则所述发送方模块在线路上***一个1,所述接收方模块在接收时将该1过滤掉。
所述发送方模块和所述接收方模块按照不同的优先级以先进先出的队列形式保存不同优先级的所述包。
所述接收方模块为不同优先级的包准备独立的缓冲区,在当前包尚未接收完又收到新包时在所述缓冲区中保护当前包的现场。
所述最小发送单元可以为一个字节或一个比特或其他长度有限的单元。
本发明还提供了一种具有优先级的包传输方法,包含以下步骤:
A发送方收到优先级更高的包时中断当前包的传送,传送带有控制字的新包,并在新包传送结束后继续传送当前包;
B接收方若在没有收完所述当前包时接收到优先级更高的所述新包的控制字,则保护所述当前包的现场,接收所述新包,并在接收完所述新包后恢复现场,继续接收所述当前包;
其中,所述包均以最小发送单元进行发送和接收。
其中,所述最小发送单元可以为一个字节或一个比特或其他长度有限的单元。
所述控制字是自定义的比特串或线路编码中冗余的码字。
通过比较可以发现,本发明的技术方案与现有技术的区别在于,本发明方案每次发送一个最小发送单元(例如一个字节或一个比特),支持抢占机制,允许优先级更高的包打断当前包的传送。
这种技术方案上的区别,带来了较为明显的有益效果,即由于本发明方案每次发送一个最小发送单元,支持抢占,从而在低优先级的包很长时,也能够及时的发送高优先的包,不会对高优先级包的造成较长的延时,满足了不同优先级的包的时延的要求,保证了高优先级包传输的实时性。
附图说明
图1为根据本发明的一个较佳实施例的具有优先级的包传输的***的示意图;
图2为根据本发明的一个较佳实施例的具有优先级的包传输的方法中,发生抢占时发送方的流程;
图3为根据本发明的一个较佳实施例的具有优先级的包传输的方法中,发生抢占时接收方的流程;
图4为根据本发明的一个较佳实施例的发生连续抢占的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
首先说明一下本发明的基本原理。本发明方案在点到点传输时,发送方给不同优先级的业务准备不同的发送队列,在每一个发送时机到来时,都先从最高优先级的队列中取一个最小发送单元(例如一个字节),如果该队列中无数据,则转向下一优先级的队列,依此类推。当低优先级包正在传输时,高优先级的包可以抢占线路资源,打断正在传输的低优先级包,抢先发送,在高优先级的包发送完成后,低优先级包的传输才能继续,从而最大限度地保证了高优先包的低延时和实时性的要求。同时,在***的高优先级的包完成传输后,原先在传输的低优先级包可以继续传输,而不会丢失。在本方案中,所谓抢占是指高优先级的业务强行占用正在被低优先级业务所使用的资源。
下面结合本发明的一个具体实施例来说明本发明方案。
根据本发明的一个较佳实施例的具有优先级的包传输的***的示意图如图1所示。
具有优先级的包传输的***包含发送方模块10和接收方模块20。发送方模块10通过传输线路和接收方模块20连接。
其中,发送方模块10包含具有按照优先级分类的至少两个先进先出的发送队列;接收方模块20包含具有按照优先级分类的,和发送方模块10的发送队列对应的先进先出的接收队列。在本发明的该较佳实施例中,有三种优先级,发送方模块10的发送队列中,包含优先级最高的发送队列11、优先级次高的发送队列12和优先级最低的发送队列13;接收方模块20的接收队列中,包含和发送队列11对应的接收队列21、和发送队列12对应的接收队列22以及和发送队列13对应的接收队列23。
发送方模块10用于在每个发送时刻到来的时候,从所有发送队列中,选取有包需要发送的队列中优先级最高的队列的一个最小发送单元发送。其中,最小发送单元可以为一个字节、一个比特或其他长度有限的单元。在本发明的一个较佳实施例中,最小发送单元为一个字节。熟悉本领域的技术人员可以理解,每次只发送一个最小发送单元,就可以中断正在发送的优先级低的包,由新到达的优先级高的包抢占传输线路进行发送。例如,在本发明的一个较佳实施例中,当发送队列11和发送队列12全为空时,***发送发送队列13的包,当发送队列13的一个包尚没发送完,而发送方模块19又接收到优先级次高的包,由于是一个一个字节发送,这样在发送下一个字节的时刻,***发现发送队列11为空,而发送队列12不为空,则发送发送队列12中新接收的包的一个字节。需要说明的是,每个包在发送之前,都首先发送包头控制字,接收方模块20可以通过包头控制字来识别包头,确定数据包的发送是否被抢占以及确定接收的数据应当入哪个接收队列。使用最小发送单位进行发送是本发明区别于现有技术的主要特征之一,在现有技术中,以包为单位进行发送。
对于包头控制字的选取,当采用线路编码时,如8B10B或者64B66B编码等,可以在未用的字符集中选取控制字;无线路编码时,可以通过线路插0或插1的方式获得控制字。其中,插0的方式的规则如下:用连续的N个1加一个0紧接着要传送的是控制字,控制字长度固定为M比特;正常数据包中如果已经出现了连续N-1个1,则发送端自动在线路上***一个0,接收端需要把这个0滤掉。插1的方式的规则如下:用连续的N个0加一个1紧接着要传送的是控制字,控制字长度固定为M比特;正常数据包中如果已经出现了连续N-1个0,则发送端自动在线路上***一个1,接收端需要把这个1滤掉。
接收方模块20用于接收发送方模块10发送的数据,根据接收数据中的控制字将接收的最小发送单元存入相应的接收队列,并为每个优先级的业务准备独立的缓冲区在发生抢占的时候保护正在传送的包的现场。例如,在本发明的一个较佳实施例中,当发送队列13的一个包还没有发送完,发送队列12的包抢占了传输线路进行传送时,发送方模块10首先发送了发送队列12的包的控制字,接收方模块20由此判定发生了抢占,接收方模块20保护好未收完的发送队列13的包的现场后,转而接收发送队列12的包并存入接收队列22。
根据本发明的一个较佳实施例的具有优先级的包传输的方法中,发生高优先的包抢占正在传送的低优先的包传输线路时发送方的流程如图2所示。
首先进入步骤110,发送方模块10判断是否收到比当前传送的包优先级更高的包,如果是则进入步骤120,否则进入步骤140。其中,判断的时机是每次发送最小发送单元的时刻,可以根据发送方模块10中的比当前包优先级更高的队列是否为空来判断。在本发明的一个较佳实施例中,最小发送单元为一个字节,每次发送一个字节数据之前都进行步骤110的判断。
在步骤120中,发送方模块10中断当前包的发送。其中,当前包的优先级比抢占传输线路的新接收的包的优先级低。
接着进入步骤130,发送方模块10发送带有包头控制字的新包。其中,新包即为新接收的优先级更高的包。在本发明的一个较佳实施例中,包头控制字用于识别包头以判断包的优先级。
在步骤140中,发送方模块10继续发送当前包。需要说明的是,当前包是在优先级更高的新包发送结束后继续发送。
至此,完成发生高优先的包抢占正在传送的低优先的包传输线路时发送方的流程。
根据本发明的一个较佳实施例的具有优先级的包传输的方法中,发生高优先的包抢占正在传送的低优先的包传输线路时接收方的流程如图3所示。
首先进入步骤210,接收方模块20收到更高优先级的包的包头控制字。其中,收到更高优先级的包的包头控制字后,就可以判断发生了抢占。
接着进入步骤220,接收方模块20保护当前包的现场。熟悉本领域的技术人员可以理解,保护现场的工作很容易实现,在此不详细说明。
接着进入步骤230,接收方模块20接收新包。其中,新包即为比当前包优先级更高,抢占了当前包传输线路的包。需要说明的是,在接收包的时候,不同优先级的包存入不同的接收队列。
接着进入步骤240,新包接收完后,接收方模块20继续接收当前包。在该步骤中,接收方模块20依据步骤220中保护的当前包的现场来继续接收当前包,并将当前包存入依照优先级分类的接收队列。
至此,完成发生高优先的包抢占正在传送的低优先的包传输线路时接收方的流程。
需要说明的是,抢占可以连续的发生,即一个抢占了当前包传送资源的包,其资源可以被比该包优先级更高的包抢占。例如在本发明的一个较佳实施例中,有三种不同优先级的包,发生连续抢占的示意图如图4所示。
在图4的时间点①时,有第三优先级的包需要发送。此时,线路是空闲的,故而发送方马上发送该包,而接收方也马上接收。在图4中的时间点②时,来了第二优先级的包,此时,前面的第三优先级的包还没有传完,但由于新来的包优先级高,故而抢占了资源。发送方中断了第三优先级包的发送,改而发送新来的第二优先级的包。而接收方此时正在接收第三优先级的包,却收到了第二优先包的包头控制字,由此判断出发生了抢占。于是,接收方保护好未收完的第三优先级包的现场后,转而接收第二优先级的包。在图4中的时间点③时,又来了第一优先级的包。发送方中断了第二优先级包的传输,马上***第一优先级的包。接收方通过控制字识别出又发生了抢占,转而接收第一优先级的包。在图4中的时间点④时,第一优先级包的收发完成,收发双方都恢复了第二优先级包的传送。在图4中的时间点⑤时,第二优先级的包传送完成,恢复第三优先级包的传送。在图4中的时间点⑥时,第三优先级的包传送完成。
虽然通过参照本发明的某些优选实施例,已经对本发明进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种各样的改变,而不偏离所附权利要求书所限定的本发明的精神和范围。
Claims (10)
1.一种具有优先级的包传输***,其特征在于,包含发送方模块和接收方模块;
所述发送方模块用于在每个发送时刻向所述接收方模块发送当前优先级最高的所述包的一个最小发送单元,并在发送每个所述包的时候发送用于识别所述包的头部的控制字;
所述接收方模块用于接收来自所述发送方模块的所述最小发送单元,还原为所述包,在当前包尚未接收完又收到新包的头部控制字时,保护所述当前包的现场,并在接收完所述新包后恢复现场继续接收所述当前包。
2.根据权利要求1所述的具有优先级的包传输***,其特征在于,在有线路编码时,选用线路编码中冗余的码字作为所述控制字。
3.根据权利要求1所述的具有优先级的包传输***,其特征在于,在无线路编码时,使用连续的N个1加一个0作为所述控制字的前导标识,所述控制字的长度固定;所述包中如果已经出现了连续N-1个1,则所述发送方模块在线路上***一个0,所述接收方模块在接收时将该0过滤掉。
4.根据权利要求1所述的具有优先级的包传输***,其特征在于,在无线路编码时,使用连续的N个0加一个1作为所述控制字的前导标识,所述控制字的长度固定;所述包中如果已经出现了连续N-1个0,则所述发送方模块在线路上***一个1,所述接收方模块在接收时将该1过滤掉。
5.根据权利要求1所述的具有优先级的包传输***,其特征在于,所述发送方模块和所述接收方模块按照不同的优先级以先进先出的队列形式保存不同优先级的所述包。
6.根据权利要求1所述的具有优先级的包传输***,其特征在于,所述接收方模块为不同优先级的包准备独立的缓冲区,在当前包尚未接收完又收到新包时在所述缓冲区中保护当前包的现场。
7.根据权利要求1所述的具有优先级的包传输***,其特征在于,所述最小发送单元可以为一个字节或一个比特或其他长度有限的单元。
8.一种具有优先级的包传输方法,其特征在于,包含以下步骤:
A发送方收到优先级更高的包时中断当前包的传送,传送带有控制字的新包,并在新包传送结束后继续传送当前包;
B接收方若在没有收完所述当前包时接收到优先级更高的所述新包的控制字,则保护所述当前包的现场,接收所述新包,并在接收完所述新包后恢复现场,继续接收所述当前包;
其中,所述包均以最小发送单元进行发送和接收。
9.根据权利要求8所述的具有优先级的包传输方法,其特征在于,所述最小发送单元可以为一个字节或一个比特或其他长度有限的单元。
10.根据权利要求8所述的具有优先级的包传输方法,其特征在于,所述控制字是自定义的比特串或线路编码中冗余的码字。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2004100371277A CN1705295A (zh) | 2004-05-29 | 2004-05-29 | 具有优先级的包传输***及其方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2004100371277A CN1705295A (zh) | 2004-05-29 | 2004-05-29 | 具有优先级的包传输***及其方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1705295A true CN1705295A (zh) | 2005-12-07 |
Family
ID=35577770
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2004100371277A Pending CN1705295A (zh) | 2004-05-29 | 2004-05-29 | 具有优先级的包传输***及其方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1705295A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007109991A1 (fr) * | 2006-03-24 | 2007-10-04 | Huawei Technologies Co., Ltd. | Procédé, dispositif et système de transmission de paquets de données |
CN102244608A (zh) * | 2011-06-09 | 2011-11-16 | 杭州米加科技有限公司 | 流媒体内容优先级自适应传输的方法 |
US8732374B2 (en) | 2008-05-05 | 2014-05-20 | Robert Bosch Gmbh | Subscriber node of a communication system having a functionally separate transmission event memory |
CN104581839A (zh) * | 2013-10-24 | 2015-04-29 | 展讯通信(上海)有限公司 | 一种信息传输的方法和通信设备 |
CN105450785A (zh) * | 2016-01-26 | 2016-03-30 | 青岛海信电器股份有限公司 | 一种文件传输方法和装置 |
CN107258076A (zh) * | 2015-02-26 | 2017-10-17 | 西门子公司 | 通信网络中的数据传输 |
CN108092745A (zh) * | 2017-12-22 | 2018-05-29 | 北京东土军悦科技有限公司 | 点对点设备的数据传输方法、装置、设备及存储介质 |
CN109818710A (zh) * | 2017-11-21 | 2019-05-28 | 中移(杭州)信息技术有限公司 | 一种数据传输方法及对应装置 |
CN111133708A (zh) * | 2017-09-22 | 2020-05-08 | 诺基亚技术有限公司 | 使能在无线网络中基于数据传输的抢占来在下行链路子帧期间进行上行链路传输 |
-
2004
- 2004-05-29 CN CNA2004100371277A patent/CN1705295A/zh active Pending
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007109991A1 (fr) * | 2006-03-24 | 2007-10-04 | Huawei Technologies Co., Ltd. | Procédé, dispositif et système de transmission de paquets de données |
US8732374B2 (en) | 2008-05-05 | 2014-05-20 | Robert Bosch Gmbh | Subscriber node of a communication system having a functionally separate transmission event memory |
CN102244608A (zh) * | 2011-06-09 | 2011-11-16 | 杭州米加科技有限公司 | 流媒体内容优先级自适应传输的方法 |
CN102244608B (zh) * | 2011-06-09 | 2014-02-19 | 杭州米加科技有限公司 | 流媒体内容优先级自适应传输的方法 |
CN104581839A (zh) * | 2013-10-24 | 2015-04-29 | 展讯通信(上海)有限公司 | 一种信息传输的方法和通信设备 |
CN107258076A (zh) * | 2015-02-26 | 2017-10-17 | 西门子公司 | 通信网络中的数据传输 |
CN107258076B (zh) * | 2015-02-26 | 2020-12-25 | 西门子公司 | 通信网络中的数据传输 |
CN105450785A (zh) * | 2016-01-26 | 2016-03-30 | 青岛海信电器股份有限公司 | 一种文件传输方法和装置 |
CN105450785B (zh) * | 2016-01-26 | 2019-12-06 | 青岛海信电器股份有限公司 | 一种文件传输方法和装置 |
CN111133708A (zh) * | 2017-09-22 | 2020-05-08 | 诺基亚技术有限公司 | 使能在无线网络中基于数据传输的抢占来在下行链路子帧期间进行上行链路传输 |
US11399382B2 (en) | 2017-09-22 | 2022-07-26 | Nokia Technologies Oy | Enabling uplink transmission during downlink subframe based on preemption of data transmission in wireless network |
CN109818710A (zh) * | 2017-11-21 | 2019-05-28 | 中移(杭州)信息技术有限公司 | 一种数据传输方法及对应装置 |
CN108092745A (zh) * | 2017-12-22 | 2018-05-29 | 北京东土军悦科技有限公司 | 点对点设备的数据传输方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1225874C (zh) | 利用时序安排和头压缩降低分组延迟的方法和设备 | |
JP3321043B2 (ja) | Tcpネットワーク内のデータ端末 | |
US9313140B2 (en) | Packet preemption for low latency | |
CN1297118C (zh) | 带宽监控设备 | |
CN101189840B (zh) | 数据单元中继设备和控制该数据单元中继设备的方法 | |
US6907042B1 (en) | Packet processing device | |
CN1913486A (zh) | 一种增强协议报文安全的方法和装置 | |
US8027344B2 (en) | Transmission of data packets of different priority levels using pre-emption | |
US20020136217A1 (en) | Method and apparatus to manage packet fragmentation | |
EP0905950A1 (en) | Communication method and data communications terminal with data communication protocol for inter-layer flow control | |
US20070070901A1 (en) | Method and system for quality of service and congestion management for converged network interface devices | |
CN1541474A (zh) | 路由***中差异排队的***和方法 | |
CN1536820A (zh) | 提高网络拥塞时数据传输性能的方法 | |
CN1717669A (zh) | 用于在交换结构中分发缓冲区状态信息的装置和方法 | |
CN1339749A (zh) | 一种将tcp用于不可靠传输网络的局域重传方法 | |
CN1260915C (zh) | 一种城域网传输设备的流量控制方法 | |
CN101043438A (zh) | 数据包传输***和方法 | |
CN1705295A (zh) | 具有优先级的包传输***及其方法 | |
KR20220006606A (ko) | 메시지 처리 방법 및 관련 장치 | |
CN1152313C (zh) | 一种基于随机早期检测的逐节拥塞控制方法 | |
CN1248465C (zh) | 网络通信中数据发送/接收缓冲区的管理方法 | |
WO2010072122A1 (zh) | 一种传输报文的方法、端口和*** | |
US20080101237A1 (en) | Communication device | |
CN1518298A (zh) | 虚拟输出队列(VoQ)管理方法和装置 | |
CN1929392A (zh) | 捆绑链路状态的管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |