CN103078812B - 数据转发方法和设备 - Google Patents

数据转发方法和设备 Download PDF

Info

Publication number
CN103078812B
CN103078812B CN201310040837.4A CN201310040837A CN103078812B CN 103078812 B CN103078812 B CN 103078812B CN 201310040837 A CN201310040837 A CN 201310040837A CN 103078812 B CN103078812 B CN 103078812B
Authority
CN
China
Prior art keywords
packet
buffering area
forwarded
buffer threshold
store status
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
Application number
CN201310040837.4A
Other languages
English (en)
Other versions
CN103078812A (zh
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.)
Beijing Autelan Technology Co ltd
Beijing Hua Xinaotian Network Technology Co ltd
Original Assignee
Beijing Autelan Technology Co Ltd
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 Beijing Autelan Technology Co Ltd filed Critical Beijing Autelan Technology Co Ltd
Priority to CN201310040837.4A priority Critical patent/CN103078812B/zh
Publication of CN103078812A publication Critical patent/CN103078812A/zh
Application granted granted Critical
Publication of CN103078812B publication Critical patent/CN103078812B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)

Abstract

提供了一种数据转发方法和设备。所述数据转发方法包括:设置与用于存储将被转发的数据包的缓冲区有关的缓冲阈值;检测缓冲区的存储状态,并确定缓冲区的存储状态是否达到或超过所述缓冲阈值;当检测到的缓冲区的存储状态达到或超过所述缓冲阈值时,减小所述将被转发的数据包中的至少一个数据包的前导码的字节长度。通过使用所述数据转发方法,可解决缓冲区的数据包的溢出和缓冲区的数据包等待时间过长的问题。

Description

数据转发方法和设备
技术领域
本发明涉及数据转发方法和设备,更具体地讲,涉及基于变长前导码的数据转发方法和设备。
背景技术
近年来,随着基于以太网的数据流量的增大,对于以太网交换机的要求越来越高。在以太网交换机中,没有采用时钟同步技术,而采用了由本地振荡器产生时钟的异步方式。按照IEEE802.3标准规定,以太网设备允许存在±100PPM频偏。当以太网交换机中出现负偏差(即,接收速率大于发送速率)时,尤其是在以线速转发的情况下,交换机的数据包缓冲区被慢慢占满,最终由于缓冲区溢出而出现丢包现象。
虽然采用高精度的本地振荡器可以尽可能地减小时钟偏差,从而避免丢包现象,但高精度的本地振荡器具有价格高,体积大等缺点。
发明内容
本发明的目的在于提供一种数据转发方法和设备,用于补偿由本地振荡器引起的负偏差。
根据本发明的示例性实施例,提供一种数据转发方法。所述方法包括:设置与用于存储将被转发的数据包的缓冲区有关的缓冲阈值;检测缓冲区的存储状态,并确定缓冲区的存储状态是否达到或超过所述缓冲阈值;当检测到的缓冲区的存储状态达到或超过所述缓冲阈值时,减小所述将被转发的数据包中的至少一个数据包的前导码的字节长度。
所述缓冲阈值可以是关于缓冲区的容量的阈值,缓冲区的存储状态可指示缓冲区中的将被转发的数据包的总大小。
所述缓冲阈值可以是关于缓冲区中的将被转发的数据包的等待时间的阈值,缓冲区的存储状态可指示缓冲区中的将被转发的数据包的等待时间。
所述将被转发的数据包可符合IEEE802.3标准。
减小所述至少一个数据包的前导码的字节长度的步骤可包括:减少所述至少一个数据包的前导码的除最后一个字节以外的任意字节。
减小所述至少一个数据包的前导码的字节长度的步骤可包括:减少所述至少一个数据包的前导码的第一字节。
所述至少一个数据包可以是所述将被转发的数据包中以预设间隔排列的数据包。
所述方法还包括:接收将被转发的数据包,其中,根据所述缓冲阈值和接收将被转发的数据包的速率设置所述预设间隔。
根据本发明的另一示例性实施例,提供一种数据转发设备。所述设备包括:缓冲区,用于存储将被转发的数据包;设置单元,用于设置关于缓冲区的缓冲阈值;检测单元,用于检测缓冲区的存储状态;确定单元,用于确定缓冲区的存储状态是否达到或超过所述缓冲阈值;调整单元,用于在缓冲区的存储状态达到或超过所述缓冲阈值时,减小所述将被转发的数据包中的至少一个数据包的前导码的字节长度。
所述缓冲阈值可以是关于缓冲区的容量的阈值,缓冲区的存储状态可指示缓冲区中的将被转发的数据包的总大小。
所述缓冲阈值可以是关于缓冲区中的将被转发的数据包的等待时间的阈值,缓冲区的存储状态可指示缓冲区中的将被转发的数据包的等待时间。
所述将被转发的数据包可符合IEEE802.3标准。
调整单元可减少所述至少一个数据包的前导码的除最后一个字节以外的任意字节。
调整单元可减少所述至少一个数据包的前导码的第一字节。
所述至少一个数据包可以是所述将被转发的数据包中以预设间隔排列的数据包。
所述数据转发设备还可包括用于接收将被转发的数据包的接收单元,其中,设置单元可根据所述缓冲阈值和接收将被转发的数据包的速率设置所述预设间隔。
如上所述,可通过使用根据本发明的示例性实施例的数据转发方法和设备,解决缓冲区的数据包的溢出和缓冲区的数据包等待时间过长的问题。
附图说明
通过下面结合示例性地示出的附图进行的描述,本发明的上述和其他目的和特点将会变得更加清楚,其中:
图1示出根据本发明实施例的数据转发设备的框图;
图2示出根据本发明示例性实施例的数据转发方法的流程图。
具体实施方式
以下描述的多个实施例仅作为示例性说明,并且不应被解释为限制本公开的范围。以下将参照附图描述本发明的优选实施例。在下面的描述中,由于公知的功能或构造的不必要的细节会使本发明不清楚,因此不详细描述公知的功能或构造。此外,以下描述的考虑本发明中的功能定义的术语可根据用户和操作者的意图或实践而不同。
图1示出根据本发明实施例的数据转发设备100的框图。
如图1中所示,数据转发设备100可包括缓冲区120、调整单元130、检测单元150、确定单元160以及设置单元170。
缓冲区120可存储将被转发的数据包。检测单元150可检测缓冲区的存储状态,并将检测结果发送到确定单元160。设置单元170可设置关于缓冲区的缓冲阈值。
根据示例性实施例,当所述缓冲阈值是关于缓冲区的容量的阈值时,所述存储状态可指示缓冲区中的将被转发的数据包的总大小。根据示例性实施例,当所述缓冲阈值是关于缓冲区中的将被转发的数据包的等待时间的阈值时,缓冲区的存储状态可指示缓冲区中的将被转发的数据包的等待时间。虽然在此仅公开了两种关于缓冲区的缓冲阈值,但本发明不限于此。
根据示例性实施例,可在制造数据转发设备100时设置所述缓冲阈值,或者,可在制造数据转发设备100之后,由用户根据需要通过设置单元170手动设置所述缓冲阈值。
确定单元160可确定缓冲区的存储状态是否达到或超过所述缓冲阈值,并将确定结果发送到调整单元130。调整单元130可在缓冲区的存储状态达到或超过所述缓冲阈值时,减小所述将被转发的数据包中的至少一个数据包的前导码的字节长度。
根据示例性实施例,将被转发的数据包可符合IEEE802.3标准。根据示例性实施例,当缓冲区的存储状态达到或超过所述缓冲阈值时,调整单元130可减少所述至少一个数据包的前导码的除最后一个字节以外的任意字节。根据本发明的另一示例性实施例,当缓冲区的存储状态达到或超过所述缓冲阈值时,调整单元130可减少所述至少一个数据包的前导码的第一字节。
数据转发设备100还可包括接收单元110和发送单元140。接收单元110可从数据发送设备(未示出)接收将被转发的数据包,并向设置单元130提供接收将被转发的数据包的速率。发送单元140可将接收的将被转发的数据包发送到数据接收设备(未示出)。
设置单元170还可根据所述接收将被转发的数据包的速率和所述缓冲阈值设置预设间隔。根据示例性实施例,例如,可将预设间隔设置为7。也就是说,在每七个将被转发的数据包中发送一个数据包的前导码的字节减少的数据包。根据示例性实施例,所述至少一个数据包是所述将被转发的数据包中以预设间隔排列的数据包。
虽然在以上描述中,将整数倍间隔作为示例,描述了本发明,但本发明不限于此。本发明还包括分数倍的间隔(诸如,7/2)。例如,预设间隔为7/2表示在每七个将被转发的数据包中发送两个数据包的前导码的字节减少的数据包。
另外,在此描述的调整单元130、检测单元150、确定单元160以及设置单元170可被集成为一个控制单元。
根据本发明的示例性实施例的数据转发设备100可适用于但不限于以下网络中的任何一种:互联网、局域网(LAN)、无线局域网(LAN)、广域网(WAN)、个人局域网(PAN)。
以下,将参照图2描述根据本发明示例性实施例的数据转发方法。
在步骤201,数据转发设备100可设置与用于存储将被转发的数据包的缓冲区有关的缓冲阈值。
在步骤203,数据转发设备100可检测缓冲区的存储状态。
根据示例性实施例,当所述缓冲阈值是关于缓冲区的容量的阈值时,所述存储状态可指示缓冲区中的将被转发的数据包的总大小。根据示例性实施例,当所述缓冲阈值是关于缓冲区中的将被转发的数据包的等待时间的阈值时,缓冲区的存储状态可指示缓冲区中的将被转发的数据包的等待时间。虽然在此仅公开了两种关于缓冲区的缓冲阈值,但本发明不限于此。
根据示例性实施例,可在制造数据转发设备100时设置所述缓冲阈值,或者,可在制造数据转发设备100之后,由用户根据需要手动设置所述缓冲阈值。
在步骤205,数据转发设备100可确定关于缓冲区的所述存储状态是否达到或超过所述缓冲阈值。当关于缓冲区的所述存储状态达到或超过所述缓冲阈值时,数据转发设备100进行到步骤207。否则,数据转发设备100终止本发明的算法。
在步骤207,数据转发设备100可减小所述将被转发的数据包中的至少一个数据包的前导码的字节长度。根据示例性实施例,所述将被转发的数据包可符合IEEE802.3标准。根据示例性实施例,数据转发设备100可减少所述至少一个数据包的前导码的除最后一个字节以外的任意字节。根据本发明的另一示例性实施例,数据转发设备100可减少所述至少一个数据包的前导码的第一字节。
根据本发明的另一示例性实施例,在步骤201,数据转发设备100可基于所述缓冲阈值和接收数据包的速率设置预设间隔。根据示例性实施例,例如,可将预设间隔设置为7。也就是说,在每七个将被转发的数据包中发送一个数据包的前导码的字节减少的数据包。此外,在步骤207的所述至少一个数据包是所述将被转发的数据包中以预设间隔排列的数据包。
虽然在以上描述中,将整数倍间隔作为示例,描述了本发明,但本发明不限于此。本发明还包括分数倍的间隔(诸如,7/2)。例如,预设间隔为7/2表示在每七个将被转发的数据包中发送两个数据包的前导码的字节减少的数据包。
由于数据包的不传递信息的前导码的字节长度减少了,因此数据转发设备100发送数据包所用的时间相应地减少了(即,发送速率提高了)。因此,通过应用上述步骤可应对时钟负偏差引起的发送速率低于接收速率的情况,从而可避免缓冲区的溢出和缓冲区中的数据包等待时间过长。
例如,根据本发明示例性实施例,在基于标准IEEE802.3的数据转发设备100中,在最大数据包的长度为1518字节的情况下,只要在每7个数据包中发送少了第一字节的一个数据包(即,预设间隔为7),就可补偿93ppm的时钟偏差。如果数据包的长度较小,则数据转发设备100可通过应用上述步骤补偿更大的时钟偏差。根据标准IEEE802.3规定,以太网交换机允许存在±100PPM频偏。因此通过应用上述步骤,可充分补偿以太网交换机的本地振荡器的器件离散性引起的负频偏。
可以以硬件、固件实现根据本发明的上述设备和方法。另外,可在可编程或专用的硬件(诸如,ASIC或FPGA)中实施在此描述的方法。
虽然已经使用特定的术语在上面具体示出和描述了示例性实施例,但示例性实施例和术语仅是说明性的,并不应被解释为限制由权利要求限定的本发明构思的范围。因此,本领域的普通技术人员将理解,在不脱离权利要求限定的本发明构思的精神和范围的情况下,可在其中进行形式和细节上的各种改变。

Claims (12)

1.一种数据转发方法,包括:
接收将被转发的数据包;
设置与用于存储将被转发的数据包的缓冲区有关的缓冲阈值,并基于所述缓冲阈值和接收数据包的速率设置预设间隔;
检测缓冲区的存储状态,并确定缓冲区的存储状态是否达到或超过所述缓冲阈值;
当检测到的缓冲区的存储状态达到或超过所述缓冲阈值时,减小所述将被转发的数据包中的至少一个数据包的前导码的字节长度,其中,所述至少一个数据包是所述将被转发的数据包中以预设间隔排列的数据包。
2.如权利要求1所述的数据转发方法,其中,所述缓冲阈值是关于缓冲区的容量的阈值,缓冲区的存储状态指示缓冲区中的将被转发的数据包的总大小。
3.如权利要求1所述的数据转发方法,其中,所述缓冲阈值是关于缓冲区中的将被转发的数据包的等待时间的阈值,缓冲区的存储状态指示缓冲区中的将被转发的数据包的等待时间。
4.如权利要求1所述的数据转发方法,其中,所述将被转发的数据包符合IEEE 802.3标准。
5.如权利要求4所述的数据转发方法,其中,减小所述至少一个数据包的前导码的字节长度的步骤包括:减少所述至少一个数据包的前导码的除最后一个字节以外的任意字节。
6.如权利要求5所述的数据转发方法,其中,减小所述至少一个数据包的前导码的字节长度的步骤包括:减少所述至少一个数据包的前导码的第一字节。
7.一种数据转发设备,包括:
接收单元,用于接收将被转发的数据包;
缓冲区,用于存储将被转发的数据包;
设置单元,用于设置关于缓冲区的缓冲阈值,并根据所述缓冲阈值和接收将被转发的数据包的速率设置预设间隔;
检测单元,用于检测缓冲区的存储状态;
确定单元,用于确定缓冲区的存储状态是否达到或超过所述缓冲阈值;
调整单元,用于在缓冲区的存储状态达到或超过所述缓冲阈值时,减小所述将被转发的数据包中的至少一个数据包的前导码的字节长度,其中,所述至少一个数据包是所述将被转发的数据包中以预设间隔排列的数据包。
8.如权利要求7所述的数据转发设备,其中,所述缓冲阈值是关于缓冲区的容量的阈值,缓冲区的存储状态指示缓冲区中的将被转发的数据包的总大小。
9.如权利要求7所述的数据转发设备,其中,所述缓冲阈值是关于缓冲区中的将被转发的数据包的等待时间的阈值,缓冲区的存储状态指示缓冲区中的将被转发的数据包的等待时间。
10.如权利要求7所述的数据转发设备,其中,所述将被转发的数据包符合IEEE 802.3标准。
11.如权利要求10所述的数据转发设备,其中,调整单元减少所述至少一个数据包的前导码的除最后一个字节以外的任意字节。
12.如权利要求11所述的数据转发设备,其中,调整单元减少所述至少一个数据包的前导码的第一字节。
CN201310040837.4A 2013-02-01 2013-02-01 数据转发方法和设备 Active CN103078812B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310040837.4A CN103078812B (zh) 2013-02-01 2013-02-01 数据转发方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310040837.4A CN103078812B (zh) 2013-02-01 2013-02-01 数据转发方法和设备

Publications (2)

Publication Number Publication Date
CN103078812A CN103078812A (zh) 2013-05-01
CN103078812B true CN103078812B (zh) 2015-10-21

Family

ID=48155221

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310040837.4A Active CN103078812B (zh) 2013-02-01 2013-02-01 数据转发方法和设备

Country Status (1)

Country Link
CN (1) CN103078812B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107179942B (zh) * 2017-05-16 2020-12-01 中国电子科技集团公司第四十一研究所 一种基于多线程的实时数据分析任务分发处理方法
CN110601790B (zh) * 2018-06-13 2022-05-27 阿里巴巴集团控股有限公司 一种服务器的数据发送方法和装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004006619A1 (de) * 2002-07-02 2004-01-15 Siemens Aktiengesellschaft Early-packet-discard verfahren für asynchron übertragene pakete fester länge
CN101018153A (zh) * 2007-02-26 2007-08-15 华为技术有限公司 消除网络设备中时钟偏差造成的误差积累的方法及其装置
US20080192765A1 (en) * 2007-02-12 2008-08-14 Jong-Sang Oh Apparatus and method for packet buffer management in IP network system
CN101849427A (zh) * 2007-11-06 2010-09-29 高通股份有限公司 用于无线通信网络中的前导码创建和通信的方法和装置
CN102164043A (zh) * 2010-10-27 2011-08-24 青岛海信传媒网络技术有限公司 日志上报方法及终端
CN102571572A (zh) * 2011-12-28 2012-07-11 中国人民解放军国防科学技术大学 基于短报文卫星通信的数据传输方法及装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004006619A1 (de) * 2002-07-02 2004-01-15 Siemens Aktiengesellschaft Early-packet-discard verfahren für asynchron übertragene pakete fester länge
US20080192765A1 (en) * 2007-02-12 2008-08-14 Jong-Sang Oh Apparatus and method for packet buffer management in IP network system
CN101018153A (zh) * 2007-02-26 2007-08-15 华为技术有限公司 消除网络设备中时钟偏差造成的误差积累的方法及其装置
CN101849427A (zh) * 2007-11-06 2010-09-29 高通股份有限公司 用于无线通信网络中的前导码创建和通信的方法和装置
CN102164043A (zh) * 2010-10-27 2011-08-24 青岛海信传媒网络技术有限公司 日志上报方法及终端
CN102571572A (zh) * 2011-12-28 2012-07-11 中国人民解放军国防科学技术大学 基于短报文卫星通信的数据传输方法及装置

Also Published As

Publication number Publication date
CN103078812A (zh) 2013-05-01

Similar Documents

Publication Publication Date Title
US9742514B2 (en) Method, apparatus, and system for generating timestamp
US10623123B2 (en) Virtual HDBaseT link
US9054973B2 (en) Method and system for Ethernet congestion management
US9166853B2 (en) Rate adaptation for data communication
WO2015119895A8 (en) Bandwidth and latency estimation in a communication network
JP4773377B2 (ja) 通信システム、通信装置及びフロー制御方法
JP5402484B2 (ja) 通信装置および通信制御方法
KR102350504B1 (ko) 통신 시스템에서 하향링크 전송률 제어를 위한 장치 및 방법
CN101599965B (zh) 基于测量的自适应高速信息传输方法
WO2018171351A1 (zh) 一种流量控制的方法及节点
CN102123073A (zh) 数据包重排序方法及装置
JP6301505B2 (ja) 伝送バッファサイズを決定する方法及びデバイス
CN103078812B (zh) 数据转发方法和设备
CN111224888A (zh) 发送报文的方法及报文转发设备
US9467243B2 (en) Packet relay device and packet transmission device
US9008159B2 (en) Rate adaptation for data communication
US9769695B2 (en) Adaptive quality of service for wide area network transport
KR20180010531A (ko) 통신 시스템에서 전송 제어 프로토콜의 전송 버퍼 제어 방법 및 장치
US9521054B2 (en) Available bandwidth search range control method and available bandwidth search range control system
WO2014171543A1 (ja) データ送信装置、データ送信方法、及びそのプログラム
JP6018552B2 (ja) 通信方式変換装置
JP2016034065A (ja) 制御装置及びネットワークシステム
CN103441953A (zh) 一种数据流调度方法、设备及系统
US9237061B2 (en) Transmission apparatus and transmission method
WO2013106325A1 (en) Wireless video clock synchronization to enable power saving

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
C41 Transfer of patent application or patent right or utility model
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: 100193, No. 1, building three, zone 9, Zhongguancun Software Park, 8 West Wang Xi Road, Beijing, Haidian District

Patentee after: Beijing AUTELAN Technology Co.,Ltd.

Address before: 100193 Beijing city Haidian District Dongbeiwang West Road No. 8 Zhongguancun Software Park Building 5 Building 2 layer Hanvon Technology

Patentee before: BEIJING AUTELAN TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right

Effective date of registration: 20151123

Address after: 100085 Beijing, East Road, No. 1, building on the north side of the building, room 313, room 3

Patentee after: Beijing Hua Xinaotian network technology Co.,Ltd.

Address before: 100193, No. 1, building three, zone 9, Zhongguancun Software Park, 8 West Wang Xi Road, Beijing, Haidian District

Patentee before: Beijing AUTELAN Technology Co.,Ltd.