CN111600802B - 一种基于信用量的端系统发送控制方法及系统 - Google Patents

一种基于信用量的端系统发送控制方法及系统 Download PDF

Info

Publication number
CN111600802B
CN111600802B CN202010289810.9A CN202010289810A CN111600802B CN 111600802 B CN111600802 B CN 111600802B CN 202010289810 A CN202010289810 A CN 202010289810A CN 111600802 B CN111600802 B CN 111600802B
Authority
CN
China
Prior art keywords
data
credit
virtual link
end system
host
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
CN202010289810.9A
Other languages
English (en)
Other versions
CN111600802A (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.)
CETC 29 Research Institute
Xian Aeronautics Computing Technique Research Institute of AVIC
Original Assignee
CETC 29 Research Institute
Xian Aeronautics Computing Technique Research Institute of AVIC
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 CETC 29 Research Institute, Xian Aeronautics Computing Technique Research Institute of AVIC filed Critical CETC 29 Research Institute
Priority to CN202010289810.9A priority Critical patent/CN111600802B/zh
Publication of CN111600802A publication Critical patent/CN111600802A/zh
Application granted granted Critical
Publication of CN111600802B publication Critical patent/CN111600802B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/39Credit based

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及网络通信技术领域,公开了一种基于信用量的AFDX端系统发送控制方法。当主机使用通信端口发送数据时,先将端口号、数据长度传输给AFDX端系统,端系统根据数据长度计算出数据消耗信用量,并判断其与对应虚链路信用量的关系,来决定是否接受主机发送请求。当虚链路信用量不低于数据消耗信用量时则接受,主机继续将数据内容传输到端系统,否则拒绝请求。在主机数据发送时,消耗一定信用量,端系统将数据发送到虚链路缓冲区时,恢复一定信用量。上述方案能快速响应主机的发送请求,不同端口通过其共用虚链路的信用量进行流量信息交互,确保端系统接受的主机发送请求在特定时间前完成,减少发生新数据被阻塞或丢弃、旧数据被发送的情况。

Description

一种基于信用量的端系统发送控制方法及系统
技术领域
本发明涉及网络通信技术领域,特别是一种基于信用量的AFDX端系统发送控制方法及系统。
背景技术
在AFDX网络中,定义了虚链路的概念,表示网络中一个端系统到一个或多个端系统的单向逻辑连接。每条虚链路都有两个参数,带宽分配间隙和最大帧长,AFDX端系统按照带宽分配间隙分隔连续两帧数据,因此虚链路的带宽不高于最大帧长除以带宽分配间隙。但是由于在主机和AFDX端系统之间的通信端口上,没有采取流量控制。在端系统的实现中,一般出现虚链路的瞬时流量超出带宽时,可能填满虚链路缓冲区,导致端口缓冲区的出队阻塞,进而填满端口缓冲区,才能在端口发送过程中拒绝主机的数据发送。超流量的数据发送需要较长的时间才能反馈到数据的源端(即主机),其中部分数据的发送请求尽管被端系统接受,但是虚链路的带宽限制造成这些数据真正发送到AFDX网络仍需要很长时间,可能超出数据的有效时间,而且这个问题不被主机所知悉。
发明内容
本发明所要解决的技术问题是:针对上述存在的问题,提供了一种基于信用量的AFDX端系统发送控制方法及系统。
本发明采用的技术方案如下:一种基于信用量的AFDX端系统发送控制方法,包括:
端系统根据待发送数据长度计算出数据消耗信用量,并判断数据消耗信用量与对应虚链路信用量的关系;
当对应虚链路信用量不低于数据消耗信用量时,接受主机的数据发送请求,主机继续将数据内容传输到端系统,否则拒绝主机的数据发送请求;
在数据发送到端系统时,消耗对应虚链路的信用量,端系统将数据发送到虚链路缓冲区时,恢复对应虚链路的信用量。
进一步的,根据待发送数据长度计算数据消耗信用量credit的方法为:数据长度len=[(Lmax-47)&0xFF8]*m+n,其中Lmax表示虚链路的最大帧长,m、n为正整数,n<[(Lmax-47)&0xFF8],则有:当n>7时,credit=m+1;当n≤7时,credit=m。
进一步的,在数据发送到端系统时,消耗对应虚链路的信用量,对应虚链路的信用量更新为:VL_Credit–credit;端系统将数据发送到虚链路缓冲区时,恢复对应虚链路的信用量,对应虚链路的信用量更新为:VL_Credit+1。
进一步的,判断是否接受主机的数据发送请求时,还包括以下过程:
(a)调用主机端口发送功能时,先判断端口缓冲区存储情况,如果端口缓冲区不满,则进行步骤(b)的判断,否则拒绝发送请求;
(b)如果数据消耗信用量不超过对应虚链路的信用量时,接受主机的数据发送请求,将发送数据写入端口缓冲区。
进一步的,所述基于信用量的AFDX端系统发送控制方法还包括各个虚链路缓冲区的轮流检查过程:
如果虚链路缓冲区为空,对应有端口缓冲区不为空,则从端口缓冲区中读取数据进行UDP组包、IP组包或IP分片、MAC组帧,形成一帧完整数据写入虚链路缓冲区,由端系统物理层发送到AFDX网络。
进一步的,拒绝主机的数据发送请求时,由主机决定放弃发送或等待信用量满足要求。
本发明还公开了一种基于信用量的AFDX端系统发送控制系统,包括:
端口发送单元:用于根据待发送数据长度计算出数据消耗信用量,并判断数据消耗信用量与对应虚链路信用量的关系,完成主机和端系统之间的发送请求;
虚链路发送单元:用于从端口缓冲区中读取数据进行UDP组包、IP组包或IP分片、MAC组帧,形成一帧完整数据,并将数据发送到虚链路缓冲区;以及用于管理端口缓冲区;以及用于管理虚链路缓冲区;
信用管理单元:针对每条虚链路维护一个信用量,主机和端系统之间完成发送请求时消耗对应虚链路的信用量,端系统将数据发送到虚链路缓冲区时恢复对应虚链路的信用量;
端口缓冲区:用于存放端口数据的先进先出队列;
虚链路缓冲区:用于存放虚链路数据。
进一步的,所述虚链路缓冲区中,缓冲数量为1。
与现有技术相比,采用上述技术方案的有益效果为:采用本发明的技术方案,每条虚链路维护一个信用量,并根据主机数据长度计算消耗信用量,当主机发送端口对应虚链路的信用量不低于消耗信用量时,接受主机的发送请求,在主机数据发送到端系统时消耗一定信用量,端系统将数据发送到虚链路缓冲区时恢复一定信用量,这样信用量将虚链路缓冲区的拥塞情况直接反馈到端口发送功能,通过信用量和数据长度的关系对比,快速响应主机的发送请求,同时协调共用虚链路的主机端口之间的数据流量,不同端口通过其共用虚链路的信用量进行流量信息交互,确保端系统接受的主机发送请求都能在特定时间前完成,减少发生新数据被阻塞或丢弃、旧数据被发送的情况。
附图说明
图1是基于信用量的端系统发送功能框图。
图2是端系统发送任务处理流程图。
具体实施方式
下面结合附图对本发明做进一步描述。
本实施例中:Port_Send表示端系统的端口发送功能;VL_Send表示虚链路发送功能;Credit_Mgr表示信用量管理功能;Port_Buffer表示端口缓冲区;虚链路缓冲区VL_Buffer。
如图1所示,一种基于信用量的AFDX端系统发送控制方法,包括:
Port_Send过程:
根据待发送数据长度(发送数据对应了发送端口)计算出数据消耗信用量credit,并判断数据消耗信用量credit与对应虚链路(虚链路和发送端口对应)信用量VL_Send的关系;
当对应虚链路信用量VL_Send不低于数据消耗信用量时credit,接受主机的数据发送请求,主机继续将数据内容传输到端系统,否则拒绝主机的数据发送请求(拒绝的情况由主机决定放弃发送或等待信用量满足要求);
VL_Send过程:
如果虚链路缓冲区VL_Buffer为空,对应有端口缓冲区Port_Buffer不为空,则从端口缓冲区Port_Buffer中读取数据进行UDP组包、IP组包或IP分片、MAC组帧,形成一帧完整数据写入虚链路缓冲区VL_Buffer,由端系统物理层发送到AFDX网络。
Port_Send过程和VL_Send过程中:在数据发送到端系统时,消耗对应虚链路的信用量,端系统将数据发送到虚链路缓冲区时,恢复对应虚链路的信用量。
当主机调用Port_Send功能时,端系统对应调用Port_Send,接收从主机传输过来的发送请求,请求内容包含发送端口号和待发送数据的长度。Port_Send功能查询到发送端口号对应的虚链路,从Credit_Mgr功能读取该虚链路的信用量VL_Credit。Port_Send功能使用待发送的数据长度和虚链路配置的最大帧长,计算出数据消耗的信用量credit。
信用量的管理方法如下:
credit计算过程:假设数据长度len=[(Lmax-47)&0xFF8]*m+n,其中Lmax为虚链路最大帧长,m、n为正整数,n<[(Lmax-47)&0xFF8],则有:当n>7时,credit=m+1;当n≤7时,credit=m;
如果Port_Buffer不满,且数据消耗信用量credit不超过虚链路信用量VL_Credit时,端系统接受主机发送请求,Port_Send将发送数据写入Port_Buffer;否则拒绝发送请求。端系统接受主机发送请求时,Credit_Mgr功能将更新虚链路信用量为VL_Credit-credit。
VL_Send功能独立于Port_Send功能运行,轮流检查各虚链路缓冲区。如果VL_Buffer为空,对应有Port_Buffer不为空,则从Port_Buffer中读取全部(或部分)数据进行UDP组包、IP组包(或分片)、MAC组帧,形成一帧完整数据写入VL_Buffer,由端系统物理层发送到AFDX网络。
VL_Send功能发送一帧数据时,Credit_Mgr功能将更新虚链路信用量为VL_Credit+1。
通过VL_Send功能和Port_Send功能对VL_Credit的影响,建立两者数据流量上的联系,使得端系统能够快速响应主机的发送请求,同时协调共用虚链路的主机端口之间的数据流量,确保端系统接受的主机发送请求都能在特定时间前完成。
如图2所示,一种基于信用量的AFDX端系统发送控制系统,包括:
Port_Send单元:用于根据待发送数据长度计算出数据消耗信用量Credit,并判断数据消耗信用量与对应虚链路信用量的关系,进行数据内容的传输和处理,完成主机和端系统之间的发送请求;
VL_Send单元:用于从端口缓冲区中读取数据进行UDP组包、IP组包或IP分片、MAC组帧,形成一帧完整数据,并将数据发送到虚链路缓冲区;以及用于管理端口缓冲区;以及用于管理虚链路缓冲区;
Credit_Mgr单元:针对每条虚链路维护一个信用量,虚链路信用量由端系统维护,Port_Send过程时消耗对应虚链路的信用量,VL_Send时恢复对应虚链路的信用量;
Port_Buffer:用于存放端口数据的先进先出队列,队列长度由配置决定;
VL_Buffer:用于存放虚链路数据,缓冲数量为1。
本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。如果本领域技术人员,在不脱离本发明的精神所做的非实质性改变或改进,都应该属于本发明权利要求保护的范围。

Claims (6)

1.一种基于信用量的AFDX端系统发送控制方法,其特征在于,包括:
端系统根据待发送数据长度计算出数据消耗信用量,并判断数据消耗信用量与对应虚链路信用量的关系;
当对应虚链路信用量不低于数据消耗信用量时,接受主机的数据发送请求,主机继续将数据内容传输到端系统,否则拒绝主机的数据发送请求;
在数据发送到端系统时,消耗对应虚链路的信用量,端系统将数据发送到虚链路缓冲区时,恢复对应虚链路的信用量;
根据待发送数据长度计算数据消耗信用量credit的方法为:数据长度len=[(Lmax-47)&0xFF8]*m+n,其中Lmax表示虚链路的最大帧长,m、n为正整数,n<[(Lmax-47)&0xFF8],则有:当n>7时,credit=m+1;当n≤7时,credit=m;
在数据发送到端系统时,消耗对应虚链路的信用量,对应虚链路的信用量更新为:VL_Credit–credit;端系统将数据发送到虚链路缓冲区时,恢复对应虚链路的信用量,对应虚链路的信用量更新为:VL_Credit+1。
2.如权利要求1所述的基于信用量的AFDX端系统发送控制方法,其特征在于,判断是否接受主机的数据发送请求时,还包括以下过程:
(a)调用主机端口发送功能时,先判断端口缓冲区存储情况,如果端口缓冲区不满,则进行步骤(b)的判断,否则拒绝发送请求;
(b)如果数据消耗信用量不超过对应虚链路的信用量时,接受主机的数据发送请求,将发送数据写入端口缓冲区。
3.如权利要求1所述的基于信用量的AFDX端系统发送控制方法,其特征在于,还包括各个虚链路缓冲区的轮流检查过程:
如果虚链路缓冲区为空,对应有端口缓冲区不为空,则从端口缓冲区中读取数据进行UDP组包、IP组包或IP分片、MAC组帧,形成一帧完整数据写入虚链路缓冲区,由端系统物理层发送到AFDX网络。
4.如权利要求1所述的基于信用量的AFDX端系统发送控制方法,其特征在于,拒绝主机的数据发送请求时,由主机决定放弃发送或等待信用量满足要求。
5.一种基于信用量的AFDX端系统发送控制系统,其特征在于,包括:
端口发送单元:用于根据待发送数据长度计算出数据消耗信用量,并判断数据消耗信用量与对应虚链路信用量的关系,完成主机和端系统之间的发送请求;
虚链路发送单元:用于从端口缓冲区中读取数据进行UDP组包、IP组包或IP分片、MAC组帧,形成一帧完整数据,并将数据发送到虚链路缓冲区;以及用于管理端口缓冲区;以及用于管理虚链路缓冲区;
信用管理单元:针对每条虚链路维护一个信用量,主机和端系统之间完成发送请求时消耗对应虚链路的信用量,端系统将数据发送到虚链路缓冲区时恢复对应虚链路的信用量;
端口缓冲区:用于存放端口数据的先进先出队列;
虚链路缓冲区:用于存放虚链路数据。
6.如权利要求5所述的基于信用量的AFDX端系统发送控制系统,其特征在于,所述虚链路缓冲区中,缓冲数量为1。
CN202010289810.9A 2020-04-14 2020-04-14 一种基于信用量的端系统发送控制方法及系统 Active CN111600802B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010289810.9A CN111600802B (zh) 2020-04-14 2020-04-14 一种基于信用量的端系统发送控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010289810.9A CN111600802B (zh) 2020-04-14 2020-04-14 一种基于信用量的端系统发送控制方法及系统

Publications (2)

Publication Number Publication Date
CN111600802A CN111600802A (zh) 2020-08-28
CN111600802B true CN111600802B (zh) 2022-09-02

Family

ID=72183221

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010289810.9A Active CN111600802B (zh) 2020-04-14 2020-04-14 一种基于信用量的端系统发送控制方法及系统

Country Status (1)

Country Link
CN (1) CN111600802B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1812313A (zh) * 2005-01-26 2006-08-02 华为技术有限公司 无线链路控制层缓冲区溢出的控制方法
CN101115053A (zh) * 2007-08-24 2008-01-30 中国科学院计算技术研究所 一种信誉流量控制方法
CN103647722A (zh) * 2013-11-19 2014-03-19 中国科学院计算技术研究所 一种基于信誉的链路拥塞控制方法
CN103841046A (zh) * 2012-11-19 2014-06-04 美国博通公司 基于信誉的链路级流控制的系统和方法
CN103890750A (zh) * 2011-10-25 2014-06-25 国际商业机器公司 具有持久状态流控制的高性能虚拟融合增强型以太网
CN105530157A (zh) * 2015-12-08 2016-04-27 中国航空工业集团公司西安航空计算技术研究所 Afdx网络交换机多个虚拟链路共享信用的方法
CN110708682A (zh) * 2019-09-12 2020-01-17 中国神华能源股份有限公司神朔铁路分公司 车地数据通信方法及装置、计算机设备和存储介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050063308A1 (en) * 2003-09-24 2005-03-24 Wise Jeffrey L. Method of transmitter oriented link flow control
US9674098B2 (en) * 2013-07-02 2017-06-06 Intel Corporation Credit flow control for ethernet
US9584429B2 (en) * 2014-07-21 2017-02-28 Mellanox Technologies Ltd. Credit based flow control for long-haul links

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1812313A (zh) * 2005-01-26 2006-08-02 华为技术有限公司 无线链路控制层缓冲区溢出的控制方法
CN101115053A (zh) * 2007-08-24 2008-01-30 中国科学院计算技术研究所 一种信誉流量控制方法
CN103890750A (zh) * 2011-10-25 2014-06-25 国际商业机器公司 具有持久状态流控制的高性能虚拟融合增强型以太网
CN103841046A (zh) * 2012-11-19 2014-06-04 美国博通公司 基于信誉的链路级流控制的系统和方法
CN103647722A (zh) * 2013-11-19 2014-03-19 中国科学院计算技术研究所 一种基于信誉的链路拥塞控制方法
CN105530157A (zh) * 2015-12-08 2016-04-27 中国航空工业集团公司西安航空计算技术研究所 Afdx网络交换机多个虚拟链路共享信用的方法
CN110708682A (zh) * 2019-09-12 2020-01-17 中国神华能源股份有限公司神朔铁路分公司 车地数据通信方法及装置、计算机设备和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
New Feasible Grouping Algorithms for Virtual Link in AFDX Networks;YoungJun Cha, JuHo Lim, SunYoung Lee, DongJin Kim et.al;《IEEE》;20150618;1-4 *
基于虚拟链路的航电网络信用量评估模型;谷晓燕,代真,何锋;《计算机工程与设计》;20150430;892-895,905 *

Also Published As

Publication number Publication date
CN111600802A (zh) 2020-08-28

Similar Documents

Publication Publication Date Title
EP0829986B1 (en) System for improving data throughput of a TCP/IP Network connection with slow return channel
CN109120544B (zh) 一种数据中心网络中基于主机端流量调度的传输控制方法
US6600721B2 (en) End node pacing for QOS and bandwidth management
US6922408B2 (en) Packet communication buffering with dynamic flow control
EP0430570B1 (en) Method and apparatus for congestion control in a data network
EP0249035B1 (en) Adaptive session-level pacing
US6907042B1 (en) Packet processing device
US6167452A (en) Joint flow control mechanism in a telecommunications network
JP3419627B2 (ja) ルータ装置
US7613132B2 (en) Method and system for controlling virtual machine bandwidth
US20080019365A1 (en) Host operating system bypass for packets destined for a virtual machine
US20060251120A1 (en) Host ethernet adapter for networking offload in server environment
US7139268B1 (en) Performance of intermediate nodes with flow splicing
CA2642510A1 (en) Systems and methods of improving performance of transport protocols
JPH03188733A (ja) ウィンドウサイズの決定方法とデータセルの輻輳制御方法
JP2001519973A (ja) 共用バッファへの優先度付きアクセス
US7613198B2 (en) Method and apparatus for dynamic assignment of network interface card resources
US8199764B2 (en) Scalable approach to large scale queuing through dynamic resource allocation
US20050190779A1 (en) Scalable approach to large scale queuing through dynamic resource allocation
CN110177051A (zh) 基于流控技术的数据中心拥塞控制方法
CN111600802B (zh) 一种基于信用量的端系统发送控制方法及系统
US6320865B1 (en) Method and apparatus for implementing time-based data flow control and network implementation thereof
CN111416775B (zh) 数据接收和发送方法、装置及系统
CN101053222B (zh) 用于传送以数据分组的形式供使用的数据的方法
WO2007074343A2 (en) Processing received data

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