CN108111426B - 带有同步串口的通讯装置、同步串口带宽同步系统及方法 - Google Patents
带有同步串口的通讯装置、同步串口带宽同步系统及方法 Download PDFInfo
- Publication number
- CN108111426B CN108111426B CN201711340036.4A CN201711340036A CN108111426B CN 108111426 B CN108111426 B CN 108111426B CN 201711340036 A CN201711340036 A CN 201711340036A CN 108111426 B CN108111426 B CN 108111426B
- Authority
- CN
- China
- Prior art keywords
- serial port
- synchronous serial
- rate
- current
- current synchronous
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- 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/215—Flow control; Congestion control using token-bucket
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/062—Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
- H04J3/0632—Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
-
- 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/13—Flow control; Congestion control in a LAN segment, e.g. ring or bus
-
- 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
- H04L47/225—Determination of shaping rate, e.g. using a moving window
-
- 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/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
Abstract
本发明涉及数据通信技术。本发明解决了现有同步串口速率不对等的问题,提供了一种带有同步串口的通讯装置、同步串口带宽同步系统及方法,其技术方案可概括为:首先判断本机是否为同步串口时钟接收端,若不是则作为同步串口时钟发送端进行处理,若是则实时采样串口时钟,计算出当前同步串口速率且存储,然后定时轮询存储的当前同步串口速率,并根据当前同步串口速率更新配置令牌桶速率为当前同步串口速率值,在通过串口数据发送时,实时根据令牌桶进行数据转发。本发明的有益效果是:流量均匀,最大效率的利用了有限带宽,适用于带有同步串口的通讯装置。
Description
技术领域
本发明涉及数据通信技术,特别涉及同步串口的技术。
背景技术
高速同步串口在广域网路由器中可以支持上层frame-relay(帧中继)、HDLC及PPP等链路层协议,广泛应用于广域网路由器,一般用作远程连接、专网及专线等。
同步串口在V.24电缆连接状态下速率最高仅为128Kbps,在V.35电缆连接状态下最高速率可以达到2Mbps。如图1所示,广域网路由器的同步串行接口只是作为路由器上数据传输的一部分,数据可能通过路由器上的高速以太接口导入,再转给同步串口,以太接口的最低速率为10Mbps,一般由以太接口与串行接口共同组成串口模块。
同步串口的速率由于低于以太接口,当数据从以太接口向串口传输时,存在速率不匹配的问题,从而可能导致网络拥塞。
为了保证整个链路的数据流量能均匀稳定高效的传输,通常都使用令牌桶算法对带宽较大的端口限流,以保证整个链路流量的均匀稳定。令牌桶算法是流量整形和速率限制最常用的算法,用于防止网络数据拥塞,限制网络流量的大小。
配置令牌桶限流需要首先知晓当前需要限流至多少速率。
同步串口通过两端的同步时钟作为发送和接收数据的节拍,是由一端(DCE)产生时钟,另一端(DTE)只接收对端时钟,作为时钟接收端(DTE)并不关注时钟的频率大小,从而对当前串口速率并不了解,如图1中的路由器A并不知晓当前串口速率。
目前共有以下两种主要的解决方法:
现有方法一:为通过判断串行接口的线缆类型,判断出线缆支持的固定最高速率,以下简称为现有方法一,例如V.35最高速率为2Mbps,相应的配置以太口令牌桶限速到2Mbps,虽然较大的降低了以太接口对串口的流量冲击,但是当串口速率配置为低于2Mbps时,DTE端路由器A仍然配置令牌桶限流为2Mbps(因为接收时钟端并不知晓时钟速率),还是存在着带宽不对等的问题。
现有方法二:通过流控报文控制链路速率,如图1所示,由于路由器A并不知晓当前串口速率,所以路由器A不能独立的配置本端以太网口的流量控制,只能通过路由器B向路由器A发送流量控制报文(即流控报文)来控制整体报文的传输速率,但是由于软件实现复杂,且需要以太网口支持流量控制功能,提高了硬件成本且占用传输带宽,在这种原本带宽有限的同步串口链路中并不实用。
速率不对等必然导致报文在串口堆积和延时,造成不必要的带宽损失;现有方法一虽然能缓解一定的带宽差,但是并不能完全消除,用户再配置其他速率时仍然存在报文堆积的问题;而现有方法二占用了有限的传输带宽,且实现复杂,并不实用。
发明内容
本发明的目的就是为了解决目前同步串口速率不对等的问题,提供一种带有同步串口的通讯装置、同步串口带宽同步系统及方法。
本发明解决其技术问题,采用的技术方案是,同步串口带宽同步的方法,其特征在于,包括以下步骤:
步骤1、判断本机是否为同步串口时钟接收端,若是则进入步骤2,否则作为同步串口时钟发送端进行处理;
步骤2、实时采样串口时钟,计算出当前同步串口速率且存储;
步骤3、定时轮询存储的当前同步串口速率,并根据当前同步串口速率更新配置令牌桶速率为当前同步串口速率值;
步骤4、在通过串口数据发送时,实时根据令牌桶进行数据转发。
具体的,步骤2中,所述实时采样串口时钟,具体包括:
通过自带的高频计数器对串口时钟进行采样。
进一步的,步骤2中,所述计算出当前同步串口速率且存储;具体包括:
将计算出的当前同步串口速率存储在自身的寄存器中,且仅保存最新计算出的当前同步串口速率;
步骤3中,所述定时轮询存储的当前同步串口速率,具体包括:
定时轮询FPGA的寄存器,从而获取当前同步串口速率。
具体的,步骤3中,所述定时轮询FPGA的寄存器是指:通过SPI总线定时轮询FPGA的寄存器。
带有同步串口的通讯装置,其特征在于,包括串口模块、FPGA(现场可编程门阵列)模块以及同步驱动模块;
所述FPGA模块,用于判断当前为同步串口时钟接收端时,实时采样串口时钟,计算出当前同步串口速率且存储;
所述同步驱动模块,用于定时轮询FPGA模块所存储的当前同步串口速率,并根据当前同步串口速率更新配置串口模块中的令牌桶速率为当前同步串口速率值;
所述串口模块,用于实时根据令牌桶进行数据转发。
具体的,所述FPGA模块是通过自带的高频计数器对串口时钟进行采样。
进一步的,所述FPGA模块将计算出的当前同步串口速率存储在自身的寄存器中,且仅保存最新计算出的当前同步串口速率,所述同步驱动模块是定时轮询FPGA模块的寄存器,从而获取当前同步串口速率。
具体的,所述同步驱动模块是通过SPI总线定时轮询FPGA模块的寄存器。
同步串口带宽同步系统,包括同步串口时钟发送端及同步串口时钟接收端,其特征在于,所述同步串口时钟接收端为上述带有同步串口的通讯装置。
本发明的有益效果是,通过上述带有同步串口的通讯装置、同步串口带宽同步系统及方法,通过将FPGA采样串口速率和目前成熟的令牌桶算法的结合使用,简单有效的完成对时钟接收端的限流,使同步串口两端的带宽同步,流量均匀,最大效率的利用了有限带宽。
附图说明
图1是目前同步串口通讯系统的系统框图;
图2是本发明实施例中带有同步串口的通讯装置的系统框图;
图3是本发明实施例中同步串口带宽同步系统的系统框图;
图4是本发明实施例中同步串口带宽同步方法的流程图。
具体实施方式
下面结合实施例及附图,详细描述本发明的技术方案。
本发明的同步串口带宽同步方法,具体为:首先判断本机是否为同步串口时钟接收端,若不是则作为同步串口时钟发送端进行处理,若是则实时采样串口时钟,计算出当前同步串口速率且存储,然后定时轮询存储的当前同步串口速率,并根据当前同步串口速率更新配置令牌桶速率为当前同步串口速率值,在通过串口数据发送时,实时根据令牌桶进行数据转发。
本发明的带有同步串口的通讯装置,包括串口模块、FPGA模块及同步驱动模块,其中,FPGA模块用于判断当前为同步串口时钟接收端时,实时采样串口时钟,计算出当前同步串口速率且存储;同步驱动模块用于定时轮询FPGA模块所存储的当前同步串口速率,并根据当前同步串口速率更新配置串口模块中的令牌桶速率为当前同步串口速率值;串口模块用于实时根据令牌桶进行数据转发。
本发明的同步串口带宽同步系统,包括同步串口时钟发送端及同步串口时钟接收端,其中,同步串口时钟接收端为上述带有同步串口的通讯装置。
实施例
本发明实施例中的同步串口带宽同步方法,其流程图参见图2,包括以下具体步骤:
步骤1、判断本机是否为同步串口时钟接收端,若是则进入步骤2,否则作为同步串口时钟发送端进行处理。
步骤2、实时采样串口时钟,计算出当前同步串口速率且存储。
本步骤中,实时采样串口时钟,具体可以为:通过自带的高频计数器对串口时钟进行采样;而计算出当前同步串口速率且存储,具体可以为:将计算出的当前同步串口速率存储在自身的寄存器中,且仅保存最新计算出的当前同步串口速率。
步骤3、定时轮询存储的当前同步串口速率,并根据当前同步串口速率更新配置令牌桶速率为当前同步串口速率值。
本步骤中,当将计算出的当前同步串口速率存储在自身的寄存器中时,定时轮询存储的当前同步串口速率,具体可以为:定时轮询FPGA的寄存器,从而获取当前同步串口速率,可通过SPI总线定时轮询FPGA的寄存器。
步骤4、在通过串口数据发送时,实时根据令牌桶进行数据转发。
本步骤中,实时根据令牌桶进行数据转发并反馈可以为:当上层软件调用串口模块发送数据(均为针对串口模块中的以太发送模块及其对应的以太接口向串行接口转发数据,再通过串行接口将数据发送至对端),则其中的以太发送模块会先从令牌桶获取令牌,若有令牌则发送相应数据,若令牌为空,则可直接返回阻塞给上层软件,上层软件接收到阻塞反馈,则可作出相应的策略调整,例如通过其他备份链路转发或将部分优先级较低报文暂缓发送等。由于根据令牌桶进行数据转发为目前较为成熟的技术,此处不再详述。
本发明实施例中应用上述同步串口带宽同步方法的带有同步串口的通讯装置,其系统框图参见图3,包括串口模块、FPGA模块及同步驱动模块。
其中,FPGA模块,用于判断当前为同步串口时钟接收端时,实时采样串口时钟,计算出当前同步串口速率且存储。这里,FPGA模块可以通过自带的高频计数器对串口时钟进行采样。FPGA模块优选为将计算出的当前同步串口速率存储在自身的寄存器中,且仅保存最新计算出的当前同步串口速率。
同步驱动模块,用于定时轮询FPGA模块所存储的当前同步串口速率,并根据当前同步串口速率更新配置串口模块中的令牌桶速率为当前同步串口速率值。这里,若FPGA模块将计算出的当前同步串口速率存储在自身的寄存器中时,同步驱动模块可定时轮询FPGA模块的寄存器,从而获取当前同步串口速率,同步驱动模块可通过SPI总线定时轮询FPGA模块的寄存器。
串口模块,用于实时根据令牌桶进行数据转发。
这里,实时根据令牌桶进行数据转发可以为:当上层软件调用串口模块发送数据(均为针对串口模块中的以太发送模块及其对应的以太接口向串行接口转发数据,再通过串行接口将数据发送至对端),则其中的以太发送模块会先从令牌桶获取令牌,若有令牌则发送相应数据,若令牌为空,则可直接返回阻塞给上层软件,上层软件接收到阻塞反馈,则可作出相应的策略调整,例如通过其他备份链路转发或将部分优先级较低报文暂缓发送等。由于根据令牌桶进行数据转发为目前较为成熟的技术,此处不再详述。
本发明实施例中同步串口带宽同步系统,其系统框图参见图4,包括同步串口时钟发送端及同步串口时钟接收端,其中,同步串口时钟接收端为上述带有同步串口的通讯装置。
Claims (7)
1.同步串口带宽同步的方法,其特征在于,包括以下步骤:
步骤1、判断本机是否为同步串口时钟接收端,若是则进入步骤2,否则作为同步串口时钟发送端进行处理;
步骤2、实时采样串口时钟,计算出当前同步串口速率且存储,其中,所述实时采样串口时钟,具体包括:
通过自带的高频计数器对串口时钟进行采样;
步骤3、定时轮询存储的当前同步串口速率,并根据当前同步串口速率更新配置令牌桶速率为当前同步串口速率值;
步骤4、在通过串口数据发送时,实时根据令牌桶进行数据转发。
2.如权利要求1所述的同步串口带宽同步的方法,其特征在于,步骤2中,所述计算出当前同步串口速率且存储;具体包括:
将计算出的当前同步串口速率存储在自身的寄存器中,且仅保存最新计算出的当前同步串口速率;
步骤3中,所述定时轮询存储的当前同步串口速率,具体包括:
定时轮询FPGA的寄存器,从而获取当前同步串口速率。
3.如权利要求2所述的同步串口带宽同步的方法,其特征在于,步骤3中,所述定时轮询FPGA的寄存器是指:通过SPI总线定时轮询FPGA的寄存器。
4.带有同步串口的通讯装置,其特征在于,包括串口模块、FPGA模块以及同步驱动模块;
所述FPGA模块,用于判断当前为同步串口时钟接收端时,实时采样串口时钟,计算出当前同步串口速率且存储,所述FPGA模块是通过自带的高频计数器对串口时钟进行采样;
所述同步驱动模块,用于定时轮询FPGA模块所存储的当前同步串口速率,并根据当前同步串口速率更新配置串口模块中的令牌桶速率为当前同步串口速率值;
所述串口模块,用于实时根据令牌桶进行数据转发。
5.如权利要求4所述的带有同步串口的通讯装置,其特征在于,所述FPGA模块将计算出的当前同步串口速率存储在自身的寄存器中,且仅保存最新计算出的当前同步串口速率,所述同步驱动模块是定时轮询FPGA模块的寄存器,从而获取当前同步串口速率。
6.如权利要求5所述的带有同步串口的通讯装置,其特征在于,所述同步驱动模块是通过SPI总线定时轮询FPGA模块的寄存器。
7.同步串口带宽同步系统,包括同步串口时钟发送端及同步串口时钟接收端,其特征在于,所述同步串口时钟接收端为如权利要求4-6任一项所述的带有同步串口的通讯装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711340036.4A CN108111426B (zh) | 2017-12-14 | 2017-12-14 | 带有同步串口的通讯装置、同步串口带宽同步系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711340036.4A CN108111426B (zh) | 2017-12-14 | 2017-12-14 | 带有同步串口的通讯装置、同步串口带宽同步系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108111426A CN108111426A (zh) | 2018-06-01 |
CN108111426B true CN108111426B (zh) | 2021-06-08 |
Family
ID=62216921
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711340036.4A Active CN108111426B (zh) | 2017-12-14 | 2017-12-14 | 带有同步串口的通讯装置、同步串口带宽同步系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108111426B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1848715A (zh) * | 2005-04-05 | 2006-10-18 | 中兴通讯股份有限公司 | 实现同步串行数据在tdm网透传的方法、系统及处理装置 |
CN101009529A (zh) * | 2006-01-24 | 2007-08-01 | 北京畅通达通信技术有限公司 | 基于低速光口到2m传输线路的复用解复用的方法与装置 |
CN101267275A (zh) * | 2008-04-25 | 2008-09-17 | 广东高新兴通信股份有限公司 | 一种2m环下的基于时隙的多路串口复用系统及方法 |
US7590207B1 (en) * | 2005-10-20 | 2009-09-15 | Altera Corporation | Modular serial interface in programmable logic device |
CN101719867A (zh) * | 2009-11-23 | 2010-06-02 | 中兴通讯股份有限公司 | 一种包交换网络中的时钟恢复方法及系统 |
CN101771617A (zh) * | 2010-03-08 | 2010-07-07 | 瑞斯康达科技发展股份有限公司 | 点到点带宽跟随方法及系统、远端设备及本端设备 |
CN102866979A (zh) * | 2012-09-05 | 2013-01-09 | 四川省绵阳西南自动化研究所 | 一种同步串行接口信号传感器数据采集装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102023945B (zh) * | 2009-09-22 | 2012-03-28 | 鸿富锦精密工业(深圳)有限公司 | 基于串行外围设备接口总线的设备及其数据传输方法 |
-
2017
- 2017-12-14 CN CN201711340036.4A patent/CN108111426B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1848715A (zh) * | 2005-04-05 | 2006-10-18 | 中兴通讯股份有限公司 | 实现同步串行数据在tdm网透传的方法、系统及处理装置 |
US7590207B1 (en) * | 2005-10-20 | 2009-09-15 | Altera Corporation | Modular serial interface in programmable logic device |
CN101009529A (zh) * | 2006-01-24 | 2007-08-01 | 北京畅通达通信技术有限公司 | 基于低速光口到2m传输线路的复用解复用的方法与装置 |
CN101267275A (zh) * | 2008-04-25 | 2008-09-17 | 广东高新兴通信股份有限公司 | 一种2m环下的基于时隙的多路串口复用系统及方法 |
CN101719867A (zh) * | 2009-11-23 | 2010-06-02 | 中兴通讯股份有限公司 | 一种包交换网络中的时钟恢复方法及系统 |
CN101771617A (zh) * | 2010-03-08 | 2010-07-07 | 瑞斯康达科技发展股份有限公司 | 点到点带宽跟随方法及系统、远端设备及本端设备 |
CN102866979A (zh) * | 2012-09-05 | 2013-01-09 | 四川省绵阳西南自动化研究所 | 一种同步串行接口信号传感器数据采集装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108111426A (zh) | 2018-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10938937B2 (en) | Multi-datacenter message queue | |
US8115617B2 (en) | Alarm reordering to handle alarm storms in large networks | |
WO2022105611A1 (zh) | 一种心跳超时检测方法、服务器及电子设备 | |
CN101286945B (zh) | 数据分片处理方法及装置 | |
CN112311494B (zh) | 一种报文传输方法、装置及系统 | |
WO2018120914A1 (zh) | Dcn报文处理方法、网络设备和网络系统 | |
EP2479925B1 (en) | Dynamic power management in a communications device | |
EP2477364B1 (en) | Method and system for low-latency networking | |
CN109714267A (zh) | 管理反向队列的传输控制方法及系统 | |
CN109996296B (zh) | 一种进行带宽调整的方法和设备 | |
WO2014101453A1 (zh) | 基于聚合链路实现ptp时间同步的方法及装置 | |
CN111800336A (zh) | 基于多通道网络链路聚合的路由传输实现方法 | |
CN113438182B (zh) | 一种基于信用的流量控制系统和流量控制方法 | |
CN108111426B (zh) | 带有同步串口的通讯装置、同步串口带宽同步系统及方法 | |
CN102347909B (zh) | 实现大量协议报文的发送方法和装置 | |
CN114185582A (zh) | 基于quic协议的汽车软件在线升级系统及方法 | |
US8098688B1 (en) | Methods and apparatus for optimizing network management traffic using dynamic SNMP packet resizing | |
EP2798881B1 (en) | Shaping data packet traffic | |
JP6757736B2 (ja) | パケット送信タイミングの動的調整方法 | |
JP2010130329A (ja) | 通信装置および中継装置 | |
US9143458B2 (en) | Network device, method for controlling the network device, and network system | |
Razdan et al. | Enhancing TCP performance in networks with small buffers | |
US20130346601A1 (en) | Network device, method of controlling the network device, and network system | |
US9294584B2 (en) | Transporting serially over TCP/IP using raw TCP encapsulation | |
US20200145478A1 (en) | Method, electronic device, and computer program product for handling congestion of data transmission |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |