
技术摘要:
本发明涉及网络通信技术领域,公开了一种基于信用量的AFDX端系统发送控制方法。当主机使用通信端口发送数据时,先将端口号、数据长度传输给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)如果数据消耗信用量不超过对应虚链路的信用量时,接受主机的数据发送请 求,将发送数据写入端口缓冲区。 4 CN 111600802 A 说 明 书 2/4 页 进一步的,所述基于信用量的AFDX端系统发送控制方法还包括各个虚链路缓冲区 的轮流检查过程: 如果虚链路缓冲区为空,对应有端口缓冲区不为空,则从端口缓冲区中读取数据 进行UDP组包、IP组包或IP分片、MAC组帧,形成一帧完整数据写入虚链路缓冲区,由端系统 物理层发送到AFDX网络。 进一步的,拒绝主机的数据发送请求时,由主机决定放弃发送或等待信用量满足 要求。 本发明还公开了一种基于信用量的AFDX端系统发送控制系统,包括: 端口发送单元:用于根据待发送数据长度计算出数据消耗信用量,并判断数据消 耗信用量与对应虚链路信用量的关系,完成主机和端系统之间的发送请求; 虚链路发送单元:用于从端口缓冲区中读取数据进行UDP组包、IP组包或IP分片、 MAC组帧,形成一帧完整数据,并将数据发送到虚链路缓冲区;以及用于管理端口缓冲区;以 及用于管理虚链路缓冲区; 信用管理单元:针对每条虚链路维护一个信用量,主机和端系统之间完成发送请 求时消耗对应虚链路的信用量,端系统将数据发送到虚链路缓冲区时恢复对应虚链路的信 用量; 端口缓冲区:用于存放端口数据的先进先出队列; 虚链路缓冲区:用于存放虚链路数据。 进一步的,所述虚链路缓冲区中,缓冲数量为1。 与现有技术相比,采用上述技术方案的有益效果为:采用本发明的技术方案,每条 虚链路维护一个信用量,并根据主机数据长度计算消耗信用量,当主机发送端口对应虚链 路的信用量不低于消耗信用量时,接受主机的发送请求,在主机数据发送到端系统时消耗 一定信用量,端系统将数据发送到虚链路缓冲区时恢复一定信用量,这样信用量将虚链路 缓冲区的拥塞情况直接反馈到端口发送功能,通过信用量和数据长度的关系对比,快速响 应主机的发送请求,同时协调共用虚链路的主机端口之间的数据流量,不同端口通过其共 用虚链路的信用量进行流量信息交互,确保端系统接受的主机发送请求都能在特定时间前 完成,减少发生新数据被阻塞或丢弃、旧数据被发送的情况。 附图说明 图1是基于信用量的端系统发送功能框图。 图2是端系统发送任务处理流程图。