一种串口带宽同步方法及装置转让专利

申请号 : CN201810344468.0

文献号 : CN108667545B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杜维

申请人 : 迈普通信技术股份有限公司

摘要 :

数据终端设备获取数据通信设备发送的携带有时钟频率信息的交互报文;所述数据终端设备根据所述时钟频率信息,获取所述数据通信设备的当前时钟频率;所述数据终端设备根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步。由于协商报文存在于链路建立阶段;交互报文存在于数据终端设备与数据通信设备的通信协议中,且交互报文为定期发送,因此通过协商报文和交互报文来获取时钟频率既可以做到及时获取当前时钟频率以及后续的变化,又不增加带宽的占用。

权利要求 :

1.一种串口带宽同步方法,其特征在于,所述方法包括:数据终端设备获取数据通信设备发送的携带有时钟频率信息的交互报文;

所述数据终端设备根据所述时钟频率信息,获取所述数据通信设备的当前时钟频率;

所述数据终端设备根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步,其中,所述预设算法为令牌桶算法。

2.根据权利要求1所述的方法,其特征在于,

所述数据终端设备根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步,包括:所述数据终端设备获取所述当前时钟频率,并将所述当前时钟频率作为新的令牌传递频率;

所述数据终端设备接收所述数据通信设备发送的预设字节数量的通信信息;

所述数据终端设备获取令牌接收模块中的令牌个数,并判断所述预设字节数量是否大于所述令牌个数;

若所述预设字节数量不大于所述令牌个数,则数据终端设备从所述令牌接收模块中删除所述预设字节数量的令牌数,并完成所述通信信息的传递。

3.根据权利要求2所述的方法,其特征在于,在判断所述预设字节数量是否大于所述令牌个数之后,所述方法还包括:若所述预设字节数量大于所述令牌个数,则停止所述通信信息的传递。

4.一种串口带宽同步方法,其特征在于,所述方法包括:当数据通信设备与数据终端设备建立连接时,所述数据通信设备发送携带有当前时钟频率信息的交互报文至所述数据终端设备,以使数据终端设备根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步,其中,所述预设算法为令牌桶算法。

5.根据权利要求4所述的方法,其特征在于,所述方法还包括:所述数据通信设备判断自身的时钟频率是否发生变化;

若所述数据通信设备的时钟频率发生变化,则所述数据通信设备发送携带有第二时钟频率信息的交互报文至所述数据终端设备。

6.根据权利要求5所述的方法,其特征在于,在所述数据通信设备判断自身的时钟频率是否发生变化之后,所述方法还包括:若所述数据通信设备的时钟频率未发生变化,则所述数据通信设备发送不携带有时钟频率信息的交互报文至所述数据终端设备。

7.一种串口带宽同步装置,其特征在于,应用于数据终端设备中,所述装置包括:交互报文获取模块,用于获取数据通信设备发送的携带有时钟频率信息的交互报文;

时钟频率获取模块,用于根据所述时钟频率信息,获取所述数据通信设备的当前时钟频率;

带宽同步模块,用于根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步,其中,所述预设算法为令牌桶算法。

8.根据权利要求7所述的装置,其特征在于,所述带宽同步模块包括:传递频率更新子模块,用于获取所述当前时钟频率,并将所述当前时钟频率作为新的令牌传递频率;

通信信息接收子模块,用于接收所述数据通信设备发送的预设字节数量的通信信息;

字节数量判断子模块,用于获取令牌接收模块中的令牌个数,并判断所述预设字节数量是否大于所述令牌个数;

通信完成子模块,用于若所述预设字节数量不大于所述令牌个数,则数据终端设备从所述令牌接收模块中删除所述预设字节数量的令牌数,并完成所述通信信息的传递。

9.根据权利要求8所述的装置,其特征在于,所述带宽同步模块还包括:通信停止子模块,用于若所述预设字节数量大于所述令牌个数,则停止所述通信信息的传递。

10.一种串口带宽同步装置,其特征在于,应用于数据通信设备中,所述装置包括:第一携带发送模块,用于当数据通信设备与数据终端设备建立连接时,发送携带有当前时钟频率信息的交互报文至所述数据终端设备,以使数据终端设备根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步,其中,所述预设算法为令牌桶算法。

说明书 :

一种串口带宽同步方法及装置

技术领域

[0001] 本申请涉及通信技术领域,具体而言,涉及一种串口带宽同步方法及装置。

背景技术

[0002] 同步串口在广域网路由器中可以支持点对点协议(Point to Point Protocol,简称PPP)、高级数据链路控制(High-Level Data Link Control,简称HDLC)、帧中续(Frame-relay)等链路层协议。同步串口在远程连接、专网、专线中应用广泛。
[0003] 现有技术中,数据通信设备如路由器通常是通过同步串口的线缆类型来决定传输速率,然而这种获取传输速率的方式不能及时更新,即使传输速率改变了,路由器还是将之前通过线缆类型获取到的传输速率错认为当前的传输速率。路由器也可以通过接收另一路由器发送的流控报文的方式来获得传输速率的更新,然而流控报文是实时发送,资源消耗率较高,并且流控报文本身还会占用部分带宽,影响传输速率。

发明内容

[0004] 有鉴于此,本申请实施例提供了一种串口带宽同步方法及装置。
[0005] 第一方面,本申请实施例提供了一种串口带宽同步方法,所述方法包括:数据终端设备获取数据通信设备发送的携带有时钟频率信息的交互报文;所述数据终端设备根据所述时钟频率信息,获取所述数据通信设备的当前时钟频率;所述数据终端设备根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步。
[0006] 数据终端设备获取交互报文,该交互报文中携带有时钟频率信息,数据终端设备根据时钟频率信息来获取数据通信设备的当前时钟频率,数据终端设备将时钟频率与预设算法相结合,从而将数据终端设备的串口的带宽与数据通信设备的串口的带宽调整同步。交互报文包括包括链路建立时的协商报文和链路建立好以后的保活报文,由于协商报文存在于链路建立阶段;保活报文存在于数据终端设备与数据通信设备的通信协议中,且交互报文为定期发送,因此通过交互报文来获取时钟频率既可以做到及时获取当前时钟频率的改变,又可以不增加带宽的占用。
[0007] 在一个可能的设计中,所述数据终端设备包括令牌发送模块以及令牌接收模块,所述令牌发送模块按照令牌传递速率向所述令牌接收模块发送令牌;所述数据终端设备根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步,包括:所述数据终端设备获取所述当前时钟频率,并将所述当前时钟频率作为新的所述令牌传递频率;所述数据终端设备接收所述数据通信设备发送的预设字节数量的通信信息;所述数据终端设备获取令牌接收模块中的令牌个数,并判断所述预设字节数量是否大于所述令牌个数;若所述预设字节数量不大于所述令牌个数,则数据终端设备从所述令牌接收模块中删除所述预设字节数量的令牌数,并完成所述通信信息的传递。
[0008] 数据终端设备根据令牌接收模块中的令牌个数与欲传输的通信信息的字节数量,决定是否完成通信信息的传递,因此当改变令牌传递频率时,意味着改变了传递通信信息的传输频率,将当前时钟频率作为新的令牌传递频率,进而实现通信信息的传输频率的改变。
[0009] 在一个可能的设计中,在判断所述预设字节数量是否大于所述令牌个数之后,所述方法还包括:若所述预设字节数量大于所述令牌个数,则停止所述通信信息的传递。
[0010] 当预设字节数量大于令牌个数时,停止该通信信息的传递,从而避免通信信息的拥塞。
[0011] 第二方面,本申请实施例提供了一种串口带宽同步方法,所述方法包括:当数据通信设备与数据终端设备建立连接时,所述数据通信设备发送携带有时钟频率信息的交互报文至所述数据终端设备,以使数据终端设备根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步。
[0012] 当数据通信设备与数据终端设备建立连接时,数据通信设备可以将携带有时钟频率的交互报文发送给数据终端设备,在数据通信设备与数据终端设备连接完成后,数据终端设备便可以根据数据通信设备发送的时钟频率来作为令牌传递速率来接收通信信息。此时,数据通信设备发送给数据终端设备的交互报文中可以不再携带时钟频率信息,从而可以避免过多信息造成对通信带宽的影响。
[0013] 在一个可能的设计中,所述方法还包括:所述数据通信设备判断自身的时钟频率是否发生变化;若所述数据通信设备的时钟频率发生变化,则所述数据通信设备发送携带有时钟频率信息的交互报文至所述数据终端设备。
[0014] 数据通信设备还可以检测自身的时钟频率是否发生变化,若发生变化,则数据通信设备在下一次向数据终端设备发送交互报文时,携带有时钟频率,以便数据终端设备及时实现与数据通信设备的带宽的同步,避免信息拥塞现象的发生。
[0015] 在一个可能的设计中,在所述数据通信设备判断自身的时钟频率是否发生变化之后,所述方法还包括:若所述数据通信设备的时钟频率未发生变化,则所述数据通信设备发送不携带有时钟频率信息的交互报文至所述数据终端设备。
[0016] 若数据通信设备的时钟频率未发生变化,则数据通信设备发送给数据终端设备的交互报文中不需要携带时钟频率信息,从而避免过多信息影响通信带宽。
[0017] 第三方面,本申请实施例提供了一种串口带宽同步装置,应用于数据终端设备中,所述装置包括:交互报文获取模块,用于获取数据通信设备发送的携带有时钟频率信息的交互报文;时钟频率获取模块,用于根据所述时钟频率信息,获取所述数据通信设备的当前时钟频率;带宽同步模块,用于根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步。
[0018] 数据终端设备获取交互报文,该交互报文中携带有时钟频率信息,数据终端设备根据时钟频率信息来获取数据通信设备的当前时钟频率,数据终端设备将时钟频率与预设算法相结合,从而将数据终端设备的串口的带宽与数据通信设备的串口的带宽调整同步。由于交互报文存在于数据终端设备与数据通信设备的通信协议中,且交互报文为定期发送,因此通过交互报文来获取时钟频率既可以做到及时获取时钟频率的改变,又可以减少带宽的占用。
[0019] 在一个可能的设计中,所述带宽同步模块包括:传递频率更新子模块,用于获取所述当前时钟频率,并将所述当前时钟频率作为新的所述令牌传递频率;通信信息接收子模块,用于接收所述数据通信设备发送的预设字节数量的通信信息;字节数量判断子模块,用于获取令牌接收模块中的令牌个数,并判断所述预设字节数量是否大于所述令牌个数;通信完成子模块,用于若所述预设字节数量不大于所述令牌个数,则数据终端设备从所述令牌接收模块中删除所述预设字节数量的令牌数,并完成所述通信信息的传递。
[0020] 数据终端设备根据令牌接收模块中的令牌个数与欲传输的通信信息的字节数量,决定是否完成通信信息的传递,因此当改变令牌传递频率时,意味着改变了传递通信信息的传输频率,将当前时钟频率作为新的令牌传递频率,进而实现通信信息的传输频率的改变。
[0021] 在一个可能的设计中,所述带宽同步模块还包括:通信停止子模块,用于若所述预设字节数量大于所述令牌个数,则停止所述通信信息的传递。
[0022] 当预设字节数量大于令牌个数时,停止该通信信息的传递,从而避免通信信息的拥塞。
[0023] 第四方面,本申请实施例提供了一种串口带宽同步装置,应用于数据通信设备中,所述装置包括:第一携带发送模块,用于当数据通信设备与数据终端设备建立连接时,发送携带有时钟频率信息的交互报文至所述数据终端设备。
[0024] 当数据通信设备与数据终端设备建立连接时,数据通信设备可以将携带有时钟频率的交互报文发送给数据终端设备,在数据通信设备与数据终端设备连接完成后,数据终端设备便可以根据数据通信设备发送的时钟频率来作为令牌传递速率来接收通信信息。此时,数据通信设备发送给数据终端设备的交互报文中可以不再携带时钟频率信息,从而可以避免过多信息造成对通信带宽的影响。
[0025] 为使本申请实施例所要实现的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

[0026] 为了更清楚的说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0027] 图1是本申请第一实施例提供的串口带宽同步方法的流程图;
[0028] 图2是图1中步骤S130的具体步骤示意图;
[0029] 图3是本申请第一实施例的一种具体实施方式提供的串口带宽同步方法的流程图;
[0030] 图4是本申请第二实施例提供的串口带宽同步装置的结构框图。

具体实施方式

[0031] 在现有技术中,同步串口在不同的线缆类型下传输速率不同,同步串口在V.24电缆连接下速率最高为128Kbps,在V.35电缆连接状态下速率最高为2Mbps。然而在常用广域网路由器中,同步串口只是路由器进行数据传输的一部分。数据一般会通过以太链路口导入,再转给同步串口,其中,以太接口的最低速率为10Mbps。由于同步串口的速率远低于以太链路口的传输速率,因此数据从以太链路口向同步串口传输时,可能会出现速率不匹配导致网络拥塞的情况。
[0032] 现有技术中,一路由器往往通过判断串行接口的线缆类型来判断出线缆支持的固定最高速率,例如,若线缆类型为V.24,则路由器相应将传输速率限制到128Kbps,然而当线缆被更换为V.35电缆时,由于该路由器的传输速率未被调整,依然以128Kbps进行数据传输,就会造成数据的拥塞。另一种方式是该路由器对端的路由器发送流控报文给该路由器,以控制整体报文的传输速率,但由于流控报文往往是实时传递,效率较低,且流控报文需要以太网口支持流控功能,提高了硬件成本且占用了较多的传输带宽。
[0033] 现有技术中存在的上述缺陷,本申请人认为均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本发明实施例针对上述问题所提出的解决方案,都应该是发明人在本发明过程中对本发明做出的贡献。
[0034] 为解决上述技术问题,本申请实施例提供了如下的串口带宽同步方法及装置,下面将结合附图,对本申请实施例中的串口带宽同步方法及装置进行详细介绍。
[0035] 第一实施例
[0036] 请参见图1,图1示出了本申请第一实施例提供的串口带宽同步方法的流程示意图,具体包括如下步骤:
[0037] 步骤S110,数据终端设备获取数据通信设备发送的携带有时钟频率信息的交互报文。
[0038] 交互报文是数据通信设备在链路层协议中携带的报文,数据通信设备(Data Communications Equipment,简称DCE)可以在交互报文中携带时钟频率信息,并将携带有时钟频率信息的交互报文发送给数据终端设备。链路层协议包括点对点协议(Point to Point Protocol,简称PPP)、高级数据链路控制(High-Level Data Link Control,简称HDLC)、帧中续(Frame-relay)等。交互报文包括链路建立时的协商报文和链路建立好以后的保活报文。
[0039] 对于点对点协议,可以复用链路控制协议(Link Control Protocol,简称LCP),将时钟频率信息由数据通信设备发送给数据终端设备(Data Terminal Equipment,简称DTE)。
[0040] 具体地,可以通过如下三种方式来实现:
[0041] 第一种,在LCP Configure-Request配置请求报文中的option字段新增一种未使用的option id对应的数据内容(option字段包括6个字段,其中1字节的option id,1字节的字段长度,4字节的数据内容),用来填充相关的时钟频率信息。例如,定义option id为0x1F,由于option字段的长度为6字节(字段长度对应0x06),option数据内容中用4字节填充时钟频率信息,取值范围是[1000,2000000]。数据终端设备收到数据通信设备发送的Configure-Request并解析其中携带的时钟频率信息,然后数据终端设备发送Configure-Ack配置应答报文至数据通信设备。例如,若数据通信设备的时钟频率为1000,则Configure-Request新增的option字段6字节的内容为1F 06 00 00 03 E8。即option内容:
1F 06 00 00 03 E8对应的时钟频率为1000。LCP Configure-Request配置请求报文可归入链路协商报文。
[0042] 第二种,数据通信设备可以使用LCP协议的保留协议,使保留协议中包含时钟频率信息;也可以新定义一种协议类型,使新定义的协议中包含时钟频率信息。
[0043] 例如,对于保留协议,时钟频率为1000对应的保留协议的协议内容为:0C xx(identifier)08 00 00 03 E8 xx xx xx xx(magic number),即数据终端设备接收到协议内容为:0C xx(identifier)08 00 00 03 E8 xx xx xx xx(magic number)的保留协议报文,便可以根据该保留协议报文获取相应的时钟频率信息。保留协议可归入链路协商报文。
[0044] 对于新定义的协议报文,时钟频率为1000对应的新定义的协议的协议内容为:1F xx(identifier)08 00 00 03 E8 xx xx xx xx(magic number),即数据终端设备接收到协议内容为:1F xx(identifier)08 00 00 03E8 xx xx xx xx(magic number)的新定义的协议,便可以根据该新定义的协议报文获取相应的时钟频率信息。
[0045] 第三种,数据通信设备在LCP Echo-Request回答请求报文中包含时钟频率信息,回答请求报文具体可以包括1字节的长度信息和4字节的时钟频率信息的取值范围[1000,2000000]。数据终端设备收到数据通信设备发送的Echo-Request回答请求报文后,发送Echo-Reply回答应答报文。回答请求报文可归入链路保活报文。
[0046] 例如,数据通信设备的时钟频率配置为1000时,LCP Echo-Request协议内容为:09xx(identifier)00 0D xx xx xx xx(magic number)04 00 00 03E8。即LCP Echo-Request协议内容为:09 xx(identifier)00 0D xx xx xx xx(magic number)04 00 00 03 E8对应的数据通信设备的时钟频率为1000。
[0047] 第一种、第二种可以应用于点对点协议(Point to Point Protocol,简称PPP)的链路初始化过程中的协商报文的交互中,第三种可以应用于点对点协议已经建立成功后保活报文的交互中,数据通信设备重新配置时钟频率。
[0048] 对于HDLC来说,控制报文(保活报文0x8035),其协议字段后面的4个字节用来标识控制报文的类型,例如现有的报文类型包括交互报文(0x0002)、地址请求报文(0x0001)、地址应答报文(0x0000)三种类型。本申请实施例可以新增一种时钟同步报文,其中包含相关的时钟频率信息,例如时钟同步报文的类型为0x001F,若数据通信设备的时钟频率为1000,则时钟同步报文的内容为:80 35 00 1F 04 00 00 03 E8。即内容为:80 35 00 1F 04 00 00 03 E8的时钟同步报文对应的数据通信设备的时钟频率为1000。数据通信设备可以发送时钟同步报文:80 35 00 1F 04 00 00 03 E8至数据终端设备,以使数据终端设备获取时钟频率信息。
[0049] 对于Frame-relay来说,本申请使用特定网络层协议ID(NLPID),值为0x80,可以新增一种未使用过的SNAP时钟同步协议类型来携带时钟频率信息,例如组织唯一标识符(OUI)为0x00 00 00,协议ID(PID)为0x00 1F,协议数据包含1字节的长度信息和4字节的时钟频率信息,时钟频率信息的取值范围为[1000,2000000]。若时钟频率为1000,Frame-relay新增SNAP协议类型内容为:
[0050] 03 00 80 00 00 00 00 1F 04 00 00 03 E8
[0051] 即数据通信设备发送内容为:03 00 80 00 00 00 00 1F 04 00 00 03 E8的Frame-relay SNAP报文至数据终端设备,数据终端设备对03 00 80 00 00 00 00 1F 04 00 00 03 E8进行解析,从而获得数据通信设备的时钟频率信息。
[0052] 本申请实施例可以在现有的PPP,HDLC,Frame-relay等链路协议报文中携带时钟频率信息,以便数据终端设备可以及时获知数据通信设备的时钟频率,相对其他方案而言,占用资源较少,带宽控制准确率高。
[0053] 步骤S120,所述数据终端设备根据所述时钟频率信息,获取所述数据通信设备的当前时钟频率。
[0054] 时钟频率信息具体可以为当前时钟的频率,例如当前时钟的频率可以设置为1000,也可以设置为其他的数值,当前时钟的频率的具体数值不应该理解为是对本申请的限制。
[0055] 数据终端设备通过获取到数据通信设备的当前时钟频率之后,才可以依据数据通信设备的当前时钟频率调整数据通信设备与数据终端设备的带宽同步。
[0056] 步骤S130,所述数据终端设备根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步。
[0057] 预设算法具体可以为令牌桶算法,数据终端设备包括令牌发送模块以及令牌接收模块,令牌发送模块按照令牌传递速率向令牌接收模块发送令牌。
[0058] 例如若令牌传递速率为500,即1秒内令牌发送模块会发送500个令牌至令牌接收模块,数据终端设备在接收到数据通信设备发送过来的通信信息时,会先获得该通信信息的字节数量,并将字节数量与令牌接收模块中的令牌个数做比较。若该通信信息的字节数量小于或等于令牌接收模块中的令牌个数,则从令牌接收模块中删除与字节数量相同个数的令牌并同时完成该通信信息的传递。
[0059] 具体例如,若通信信息的字节数量为15个字节,令牌接收模块中的令牌个数为20个,则删除令牌接收模块中的15个令牌,并完成字节数量为15个字节的通信信息的传递。
[0060] 若一通信信息的字节数量大于令牌接收模块中的令牌个数,则停止该通信信息的传递。具体例如,若通信信息的字节数量为7个字节,令牌接收模块中的令牌个数为5个,则停止字节数量为7个字节的通信信息的传递。
[0061] 对于由于字节数量大于令牌个数而被停止传递的通信信息,可以通过以下方式处理:
[0062] 可以被丢弃;
[0063] 可以排放在队列中以便令牌接收模块累计了足够多的令牌时再传输;
[0064] 可以继续被发送,但需要做特殊标记,网络过载时,将具有特殊标记的包丢弃。
[0065] 数据终端设备获取交互报文,该交互报文中携带有时钟频率信息,数据终端设备根据时钟频率信息来获取数据通信设备的当前时钟频率,数据终端设备将时钟频率与预设算法相结合,从而将数据终端设备的串口的带宽与数据通信设备的串口的带宽调整同步。由于交互报文存在于数据终端设备与数据通信设备的通信协议中,且交互报文为定期发送,因此通过交互报文来获取时钟频率既可以做到及时获取时钟频率的改变,又可以减少带宽的占用。
[0066] 请参见图2,图2示出了步骤S130的具体步骤示意图,具体包括如下步骤:
[0067] 步骤S131,所述数据终端设备获取所述当前时钟频率,并将所述当前时钟频率作为新的所述令牌传递频率。
[0068] 数据终端设备在获取到当前时钟频率后,可以将当前时钟频率作为新的令牌传递频率,由上述内容可以数据终端设备在接收到一定字节数量的通信信息后,必须在令牌接收模块中删除相同数量的令牌个数,才完成该一定字节数量的通信信息的传递。故将时钟频率与令牌传递频率同步以后,数据通信设备按照时钟频率发送通信信息到数据终端设备时,同一时间段内,数据终端设备的令牌接收模块中可以接收相同个数的令牌,便可以实现通信信息的无延时传递。
[0069] 步骤S132,所述数据终端设备接收所述数据通信设备发送的预设字节数量的通信信息。
[0070] 数据终端设备接收数据通信设备发送的预设字节数量的通信信息,预设字节数量为一个具体的数量值,例如为7个字节的通信信息或10个字节的通信信息。
[0071] 步骤S133,数据终端设备获取令牌个数,并判断预设字节数量是否大于令牌个数,若是,则执行步骤S135;若否,则执行步骤S134。
[0072] 数据终端设备获取令牌接收模块中的令牌个数,然后进行令牌个数与预设字节数量的大小比较,若预设字节数量大于令牌个数,则执行步骤S135;若预设字节数量不大于令牌个数,则执行步骤S134。
[0073] 步骤S134,数据终端设备从所述令牌接收模块中删除所述预设字节数量的令牌数,并完成所述通信信息的传递。
[0074] 若该通信信息的字节数量小于或等于令牌接收模块中的令牌个数,则从令牌接收模块中删除与字节数量相同个数的令牌并同时完成该通信信息的传递。
[0075] 具体例如,若通信信息的字节数量为15个字节,令牌接收模块中的令牌个数为20个,则删除令牌接收模块中的15个令牌,并完成字节数量为15个字节的通信信息的传递。
[0076] 数据终端设备根据令牌接收模块中的令牌个数与欲传输的通信信息的字节数量,决定是否完成通信信息的传递,因此当改变令牌传递频率时,意味着改变了传递通信信息的传输频率,将当前时钟频率作为新的令牌传递频率,进而实现通信信息的传输频率的改变。
[0077] 步骤S135,停止所述通信信息的传递。
[0078] 若一通信信息的字节数量大于令牌接收模块中的令牌个数,则停止该通信信息的传递。具体例如,若通信信息的字节数量为7个字节,令牌接收模块中的令牌个数为5个,则停止字节数量为7个字节的通信信息的传递。
[0079] 当预设字节数量大于令牌个数时,停止该通信信息的传递,从而避免通信信息的拥塞。
[0080] 请参见图3,图3示出了本申请第一实施例提供的串口带宽同步方法的一种具体实施方式,具体包括如下步骤:
[0081] 步骤S210,当数据通信设备与数据终端设备建立连接时,数据通信设备发送携带有第一时钟频率信息的交互报文至所述数据终端设备。
[0082] 当数据通信设备与数据终端设备建立连接时,数据通信设备可以发送带有时钟频率信息的交互报文至数据终端设备。数据通信设备与数据终端设备建立连接,即为数据通信设备与数据终端设备进行链路协商,此时,将数据终端设备中的令牌传递频率与当前时钟频率进行同步,可以较好地实现串口带宽的同步。
[0083] 以点对点协议为例进行说明,物理层可用时,进行连接建立(Establish)协商阶段。点对点协议链路在Establish阶段进行LCP协商,协商成功后,LCP进入Opened状态,便是底层链路已经建立。
[0084] 在数据通信设备与数据终端设备连接完成后,数据终端设备便可以根据数据通信设备发送的时钟频率来作为令牌传递速率来接收通信信息。此时,数据通信设备发送给数据终端设备的交互报文中可以不再携带时钟频率信息,从而可以避免过多信息造成对通信带宽的影响。
[0085] 步骤S220,数据通信设备判断自身的时钟频率是否发生变化,若是,则执行步骤S240;若否,则执行步骤S230。
[0086] 若数据通信设备自身的时钟频率发生了变化,则为避免时钟频率与令牌传递频率不一致而导致数据拥塞,数据通信设备应采取相应的措施,即执行步骤S240;若数据通信设备自身的时钟频率未发生变化,则执行步骤S230。
[0087] 步骤S230,所述数据通信设备发送不携带有时钟频率信息的交互报文至所述数据终端设备。
[0088] 数据通信设备发送给数据终端设备的交互报文中可以不再携带时钟频率信息,从而可以避免过多信息造成对通信带宽的影响。
[0089] 若数据通信设备的时钟频率未发生变化,则数据通信设备发送给数据终端设备的交互报文中不需要携带时钟频率信息,从而避免过多信息影响通信带宽。
[0090] 步骤S240,所述数据通信设备发送携带有第二时钟频率信息的交互报文至所述数据终端设备。
[0091] 为了避免信息拥塞,数据通信设备将变化后的当前时钟频率发送给数据终端设备,数据终端设备便可以根据数据通信设备发送的时钟频率来作为令牌传递速率来接收通信信息。
[0092] 数据通信设备还可以检测自身的时钟频率是否发生变化,若发生变化,则数据通信设备在下一次向数据终端设备发送交互报文时,携带有时钟频率,以便数据终端设备及时实现与数据通信设备的带宽的同步,避免信息拥塞现象的发生。
[0093] 第二实施例
[0094] 请参见图4,图4示出了本申请第二实施例提供的串口带宽同步装置,该装置300包括:
[0095] 交互报文获取模块310,用于获取数据通信设备发送的携带有时钟频率信息的交互报文。
[0096] 时钟频率获取模块320,用于根据所述时钟频率信息,获取所述数据通信设备的当前时钟频率。
[0097] 带宽同步模块330,用于根据所述当前时钟频率以及预设算法,实现所述数据终端设备的串口的带宽与所述数据通信设备的串口的带宽的同步。
[0098] 所述带宽同步模块包括:传递频率更新子模块,用于获取所述当前时钟频率,并将所述当前时钟频率作为新的所述令牌传递频率。通信信息接收子模块,用于接收所述数据通信设备发送的预设字节数量的通信信息。字节数量判断子模块,用于获取令牌接收模块中的令牌个数,并判断所述预设字节数量是否大于所述令牌个数。通信完成子模块,用于若所述预设字节数量不大于所述令牌个数,则数据终端设备从所述令牌接收模块中删除所述预设字节数量的令牌数,并完成所述通信信息的传递。通信停止子模块,用于若所述预设字节数量大于所述令牌个数,则停止所述通信信息的传递。
[0099] 本申请第二实施例还提供了一种串口带宽同步装置,应用于数据通信设备,该装置包括:第一携带发送模块,用于当数据通信设备与数据终端设备建立连接时,发送携带有时钟频率信息的交互报文至所述数据终端设备。
[0100] 所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法中的对应过程,在此不再过多赘述。
[0101] 数据终端设备获取交互报文,该交互报文中携带有时钟频率信息,数据终端设备根据时钟频率信息来获取数据通信设备的当前时钟频率,数据终端设备将时钟频率与预设算法相结合,从而将数据终端设备的串口的带宽与数据通信设备的串口的带宽调整同步。由于交互报文存在于数据终端设备与数据通信设备的通信协议中,且交互报文为定期发送,因此通过交互报文来获取时钟频率既可以做到及时获取时钟频率的改变,又可以减少带宽的占用。
[0102] 需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0103] 本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0104] 另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0105] 所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0106] 以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。