首页 / 一种光纤网络的数据交换与监听方法

一种光纤网络的数据交换与监听方法实质审查 发明

技术领域

[0001] 本发明属于计算机通信领域,尤其涉及一种光纤网络的数据交换与监听方法。

相关背景技术

[0002] 数据总线技术是军用武器系统电子综合化的关键技术,它为电子系统之间的信息交换提供实时、高可靠性的通信链路。目前,总线技术的研究领域已经拓展到车载、机载、星载、舰载、火箭、导弹等各种平台上,其本质是一种实时网络传输技术。
[0003] 在数据总线传输的拓扑架构中,常用的架构有点对点架构,仲裁环结构和交换式结构三种。其中交换网络是通过判断源N端口发送消息的目的N端口地址,把消息路由传输到目的N端口。交换网络能在N端口之间建立多个连接,因此数据通信可选择多条路径,无需仲裁,可靠性较高;通过交换机级联最多可连接1600万个设备,充分满足弹/箭载系统大规模互连的要求;具有热插拔特性,可实现设备的即插即用,保证了比仲裁环更高的确定性。
[0004] 随着航空航天电子系统的不断发展,交换网络系统中的交换需求也不断增长。不断增多的设备数量、带宽、数据吞吐量和传输速率使得对端口数据流的监听提出了更高更全面的要求。在传统交换机结构中,在交换机的输出端口对于交换数据和监听数据的存储转发多数是同一性质的存储转发,没有做出区别调度,由此造成监听业务对交换机正常通信业务性能的影响,影响交换机的性能;并且每级交换机的监听端口只可监听本级交换机连接的设备数据流。然而在如今日益复杂的弹/箭载系统应用上,往往建立使用多级交换机进行整个控制系统的网络连接,需要提升网络状态的可控性和通信效率,并且,各级交换中的设备都可能存在需要对整个交换网络中连接的任一个设备进行监听,即全网监听。

具体实施方式

[0041] 下面结合附图来具体描述本发明的优选实施例,其中,附图构成本申请一部分,并与本发明的实施例一起用于阐释本发明的原理,并非用于限定本发明的范围。
[0042] 方法实施例
[0043] 实施例1
[0044] 本发明的一个具体实施例,公开了一种光纤网络的数据交换与监听方法,所述光纤网络包括级联的多级交换机;所述数据交换与监听方法,包括如下步骤:
[0045] 步骤S01、各级交换机提供级联端口,所有相邻上、下级交换机通过相应的级联端口进行级联。
[0046] 可选的,相邻上、下级交换机可以通过单独的交换级联端口和单独的监听级联端口两种端口进行级联,也可以通过交换和监听混合级联端口进行级联。
[0047] 步骤S02、每级交换机,分别对监听和交换数据进行缓存管理,并通过本级监听端口实现本级监听,通过级联端口跨级传输监听数据,实现全网监听。
[0048] 具体的,所述分别对监听和交换数据进行缓存管理包括:
[0049] 在交换机的输入端设置共享缓存用于存储所有输入端口对应的交换数据和监听数据;在交换机输出端的每个输出端口设置队列用于存储对应相应输出端口的交换数据的和监听数据的管理信息;
[0050] 基于所述共享缓存和所述队列,每个所述输出端口对相应的交换数据和监听数据采取不同的管理机制进行发送。
[0051] 具体的,在交换机的输入端设置共享缓存用于存储所有输入端口对应的交换数据和监听数据包括:
[0052] 基于crossbar架构,在交换机的输入端设置所有输入端口共用的共享缓存ram,用于存储所有输入端口对应的的交换数据和监听数据。其中,所述监听数据指交换机的监听功能将交换数据复制后得到的监听数据。
[0053] 可选的,共享缓存的大小基于各输入端口的信用值、单针负载量的最大值以及端口数确定。
[0054] 优选的,交换机每个输入端口的信用值是一样时,共享缓存的大小设置为:不小于(输入端口的信用值*单帧负载量的最大值*端口数——;其中,所述单帧指单条交换数据或监听数据。
[0055] 可选的,交换机每个输入端口的信用值不同时,共享缓存的大小设置为:∑每个端口的信用值*单针负载最大值。
[0056] 具体的,在交换机输出端的每个输出端口设置队列用于存储对应相应输出端口的交换数据的和监听数据的管理信息包括:
[0057] 在交换机的每个输出端口,设置交换管理队列和监听管理队列,分别用于存储对应所述输出端口的交换数据的管理信息和监听数据的管理信息。
[0058] 具体的,交换数据的管理信息包括交换数据的ram存储地址信息、交换数据的目标输出端口信息和交换数据的优先级;监听数据的管理信息包括监听数的ram存储地址信息和监听数据的目标输出端口信息。
[0059] 可选的,交换机的每个输出端口可分别设置为单独的监听端口、单独的交换接口或交换监听混合端口。在每个输出端口,都设置队列分别存储交换数据的管理信息和监听数据的管理信息。
[0060] 具体的,每个队列都具有对所述共享缓存的平等使用权。
[0061] 具体的,基于所述共享缓存和所述队列,每个所述输出端口对相应的交换数据和监听数据采取不同的管理机制进行发送,包括:
[0062] 将进入交换机输入端口的交换数据存储到共享缓存并将相应的管理信息存入目标输出端口所对应的交换管理队列中;同时,将交换数据复制一份转换为监听数据存入共享缓存并将其相应的管理信息存入监听数据目标输出端口所对应的监听管理队列中。
[0063] 具体的,将监听数据存入共享缓存并将其相应的管理信息存入监听数据目标输出端口的监听管理队列中包括:基于预先设定确定目标输出端口,将监听数据的ram存储地址信息和目标输出端口信息存入目标输出端口对应的监听管理队列中;其中,监听管理队列为FIFO队列。
[0064] 优选的,监听数据的目标输出端口为专用的监听端口,每个所述监听端口分发监听数据采用先入先出,基于该监听端口的监听管理队列的顺序找到对应的监听数据的ram存储地址获取监听数据并顺序发送。
[0065] 具体的,将进入交换机输入端口的交换数据存储到共享缓存并将相应的管理信息存入目标输出端口所对应的交换管理队列中包括:查找路由表确定交换数据的目标输出端口,将交换数据的ram存储地址信息、目标输出端口信息和优先级存入目标输出端口对应的交换管理队列中;其中,交换管理队列为FIFO队列。
[0066] 优选的,交换数据的目标输出端口为单独的交换端口。可选的,每个目标输出端口使用带反馈机制的光纤网络通信控制方法判断交换数据的转发排序,基于交换管理队列中对应的交换数据的ram存储地址获取交换数据并发送,最大程度保障正常通信的高速运行。
[0067] 具体的,使用带反馈机制的光纤网络通信控制方法判断交换数据的转发排序包括:
[0068] 基于负载大小确定帧的负载优先级;基于应用层指定的优先级确定帧的应用优先级;其中的帧指交换数据。
[0069] 基于待发送帧的负载优先级级别数、负载优先级的级别和应用优先级的级别授权待发送帧;
[0070] 基于本地接收原语R_RDY的时间间隔平均值和回复R_RDY时间的上限值判断链路拥堵情况;
[0071] 基于链路拥堵度情况和本地信用值反馈控制链路通信,确定是否发送已被授权的待发送帧。
[0072] 具体的,基于负载大小确定帧的负载优先级;基于应用层指定的优先级确定帧的应用优先级包括:
[0073] 具体的,基于负载大小确定帧的负载优先级包括:负载优先级与负载字节数呈负相关的关系,负载字节数越小负载优先级越高。
[0074] 具体的,负载小的短帧优先级最高,为第一负载优先级,优选的,负载字节数小于等于l1字节的帧的优先级为第一负载优先级;其中l1为预设值,1<l1<32,可选的,使用寄存器存储l1值,根据需求进行修改;优选的,l1=16,此类帧在航天系统为一般指令帧,并且处理响应时间快,可快速处理减少带宽和缓存占用。
[0075] 负载中等的帧优先级次之,负载字节数大于l1字节且小于等于l2字节的帧的优先级为第二负载优先级;其中,l2为预设值,480<l2<1024;可选的,使用寄存器存储l2值;可选的,l2=1024;
[0076] 负载大的帧优先级最低,可选的,负载字节数大于l2字节的帧的优先级为第三负载优先级。
[0077] 具体的,基于应用层指定的优先级确定帧的应用优先级包括:应用层指定的优先级指根据实际应用情况对不同的帧预先设置不同的应用优先级;可选的,可设置为高、中、低、无应用优先级。
[0078] 具体的,基于待发送帧的负载优先级级别数、负载优先级的级别和应用优先级的级别授权待发送帧包括:
[0079] 当仅有第一负载优先级帧发送请求时,授权待发送的第一负载优先级帧;
[0080] 当有2个以上负载优先级级别的帧均有发送请求时,基于历史发送次数和当前本地信用值确定授权此次发送帧的负载优先级的级别并授权待发送帧,包括:
[0081] 原则一、当本地信用值大于等于本地信用值的阈值的w1%,仅授权发送第一负载优先级帧;如果没有第一负载优先级帧,则不授权待发送帧;其中,w1为预设值,70
[0082] 原则二、当本地信用值大于等于阈值的w2%并小于阈值的w1%时,当次发送之前最近i次未连续发送第一负载优先级帧,则此次仍授权第一负载优先级待发送帧,否则授权第二负载优先级待发送帧;一般的,不授权第三负载优先级待发送帧;其中,i为预设值,1
[0083] 原则三、当本地信用值大于等于阈值的w3%并小于阈值的w2%时,当第一负载优先级帧的历史发送次数小于等于j且当次发送前最近i次未连续发送第一负载优先级帧则此次授权发送第一负载优先级待发送帧,否则授权第二负载优先级待发送帧或第三负载优先级待发送帧;其中,当且仅当有第三负载优先级待发送帧等待授权且历史发送次数为0,授权第三负载优先级待发送帧,否则授权第二负载优先级待发送帧;其中,历史发送次数指的是在一段时间内该负载优先级帧一共发送过的次数,所述一段时间指当前次数之前的的k次传输帧的发送处理的时间之和;其中,j、k为预设值,1
[0084] 原则四、当信用值本地小于阈值的w3%时,在按负载优先级高低进行授权的基础上,在满足如下条件时使得各个负载优先级帧穿插发送:第一负载优先级帧不可连续发送超过j次,第二负载优先级帧不可连续发送超过t次,第三负载优先级帧历史发送次数不得少于s次;其中,t、s为预设值,1
[0085] 具体的,在上述分配原则中,对于每一级负载优先级帧授权时,基于其应用优先级进一步排序进行授权;其中应用优先级排序从高到低的顺序为:应用高优先级、应用中优先级、应用低优先级、无应用优先级。
[0086] 可选的,上述本地信用值的阈值为预先设定的常量值;可选的,使用寄存器存储本地信用值的阈值,根据需求进行修改。
[0087] 具体的,基于本地接收原语R_RDY的时间间隔平均值和回复R_RDY时间的上限值判断链路拥堵情况包括:
[0088] 具体的,R_RDY是链路层传输的公用原语信号,属于FC协议规定的信号,用来在传输层做流量控制使用;根据FC_AE协议规定,当本地接收到一个原语R_RDY时恢复一个本地信用;因此接收原语的时间间隔可以直观的反馈目前链路的拥堵情况。
[0089] 具体的,使用本地计时器计算接收原语R_RDY的时间;设置本地列表,采用先进先出的队列结构,记录最近h次每发送一个帧和收到该消息回复的原语R_RDY的时刻以及该时刻与其前一个原语接受时刻的间隔时间;基于所有h个间隔时间,去掉最大值和最小值后计算得到平均值;其中,h为预设值,1
[0090] 具体的,网络正常回复R_RDY的时间不应超过回复R_RDY时间的上限值。
[0091] 具体的,回复R_RDY时间的上限值为预先设定的常量值;可选的,使用寄存器存储回复R_RDY时间的上限值,根据需求进行修改。
[0092] 具体的,基于本地接收原语R_RDY的时间间隔平均值和回复R_RDY时间的上限值判断链路拥堵情况包括:
[0093] 1、计算当前最新一次接收原语R_RDY间隔时间;
[0094] 2、判断链路拥堵情况:
[0095] 若最新间隔时间小于平均值的a倍,则认为目前链路暂无拥堵,通信正常;其中,a为预设值,1
[0096] 若大于等于平均值的a倍且小于上限值,则认为链路拥堵,确定为拥堵1度;
[0097] 若大于等于上限值,则极度拥堵,确定为拥堵2度。
[0098] 具体的,基于链路拥堵度情况和本地信用值反馈控制链路通信,决定是否发送已被授权的待发送帧包括:
[0099] 当本地信用值和链路拥堵度不支持帧发送和信用使用的情况时,跳过本次发送,并保留该状态进行下次发送判决;其中,不支持帧发送和信用使用的情况有:本地信用值满;本地信用值占用不满但大于等于阈值的x1%,且链路拥堵1度或拥堵2度;本地信用值占用在大于等于阈值的x2%且小于阈值的x1%之间,且拥堵2度;其中,x1和x2为预设值,70
[0100] 当本地信用值大于等于阈值的x3%时:如果有已被授权的第一负载优先级的帧,则一直可以发送已被授权的第一负载优先级的帧,直到本地信用值满;如果没有已被授权的第一负载优先级的帧,则跳过本次发送,并保留该状态进行下次发送判决;其中,x3为预设值,70<x3≤99;选的,使用寄存器存储x3值根据需求进行修改;
[0101] 当本地信用值小于阈值的x3%时:允许发送已被授权的各个级别的帧。
[0102] 具体的,通过本级监听端口实现本级监听,通过级联端口跨级传输监听数据,实现全网监听包括:
[0103] 每一级交换机将收到的交换数据复制为监听数据发给本级监听端口和级联端口,本级监听端口将监听数据发送给本级监听设备,级联端口将监听数据发送到上级和下级交换网络。
[0104] 具体的,每一级交换机对其输入端口收到的数据判断来源和数据类型,基于来源和数据类型进行不同的操作:
[0105] 如果输入端口收到的数据为来源于上级或下级交换机的交换数据,优选的,不复制为监听帧,只将交换数据发送到目标输出端口,避免各层重复监听;
[0106] 如果输入端口收到的数据为来源于其他网络设备的交换数据,交换机将收到的交换数据复制为监听数据发给本级监听端口和级联端口,本级监听端口将监听数据发送给本级监听设备,级联端口将监听数据发送到上级和下级交换网络;
[0107] 如果输入端口收到的数据为来源于上级交换机的监听数据,交换机将收到的监听数据发给本机监听端口并通过与下级交换机相连的级联端口发给下级交换机;如果输入端口收到的数据为来源于下级交换机的监听数据,交换机将收到的监听数据发给本机监听端口并通过与上级交换机相连的级联端口发给上级交换机。
[0108] 具体的,每一级交换机对其输入端口收到的数据执行上述操作,则可实现对监听数据和交换数据分别管理和控制发送,避免了监听业务对交换机正常通信业务性能的影响,避免交换数据的网络拥堵;同时,本地交换网络域内将监听数据通过级联端口向箭上、地面两个方向广播,最终实现全交换网络域的无遗漏监听。
[0109] 实施例2
[0110] 本发明的一个具体实施例,公开了一种光纤网络的数据交换与监听方法,所述光纤网络包括级联的多级交换机;所述数据交换与监听方法包括如下步骤:
[0111] 步骤S21、各级交换机提供级联端口,所有相邻上、下级交换机通过相应的级联端口进行级联。
[0112] 如图2为本实施例交换级联拓扑结构,该结构为交换和监听混合级联模式,包括各级交换机和监听设备。其中,监听设备是用于对监听信息进行接收存储分析的设备。
[0113] 具体的,将交换机的各个端口可分别设置为本级交换端口、本级监听端口、交换和监听混合端口以及交换和监听混合的级联端口;相邻的两级交换机通过两级交换机交换和监听混合的级联端口进行连接。
[0114] 具体的,交换端口用于传输交换数据;监听端口用于对本级交换域的数据监听;交换和监听混合端口既可以用于传输交换数据,也可以用于对本机交换域的数据监听。
[0115] 具体的,交换和监听混合的级联端口用于实现跨级交换机的数据转发功能,可以传输交换数据和监听数据;通过级联端口传输监听数据,可以完成不同交换域的监听数据共享,实现整个交换网络每一级的无差别监听。
[0116] 步骤S22、每级交换机,分别对监听和交换数据进行缓存管理,通过本级监听端口实现本级监听,通过级联端口跨级传输监听数据,实现全网监听。
[0117] 如图3为混合级联的模式的全网无遗漏监听数据流向示意图。每级交换机与上下级交换机级联使用端口2和7,端口2和7都配置成交换和监听混合端口。
[0118] 图3所示,每级交换机的0口为监听端口。任意一级的监听端口0可对图示3个交换机组成的网络域中所有交换端口的交换数据即通信帧进行监听。
[0119] 具体的,监听方式为:
[0120] 当被监听的端口接收到交换数据时,将交换数据存储到共享缓存并将相应的管理信息存入目标输出端口所对应的交换管理队列中,由目标输出端口按照实施例1中的所述的对于交换数据的管理机制对交换数据进行管理和发送;
[0121] 同时,将交换数据复制一份转换为监听数据存入共享缓存并将其相应的管理信息存入监听数据的目标输出端口所对应的监听管理队列中;其中,将交换数据复制一份转换为监听数据指将交换数据复制一份后在数据帧头的23位ID号的最高位置1表征此为监听数据,供接收设备识别,此处帧头格式遵循FC‑AE1553协议规定的帧头格式;具体的,监听数据的目标输出端口按照实施例1中所述的对于监听数据的管理机制对监听数据进行管理和发行。
[0122] 示例性的,以图3在交换机1、3的监听端口0监听交换机2端口4收到交换数据说明每级交换机通过级联端口跨级传输监听数据,实现全网监听的过程。
[0123] 具体的,图3中,实线表示交互数据流向,线段虚线表示监听数据流向。
[0124] 具体的,交换数据(即通信帧)从交换机2的4端口进入后:
[0125] 交换机2按照通信帧内容的目标ID信息进行路由转发,发送到交换机2的目标输出端口7端口,通过级联端口转发至交换机1的级联端口2端口,再根据路由信息转发至交换机1的目标输出端口7端口,实现了交换数据的转发;
[0126] 交换机2将4端口收到的该交换数据进行复制转换为监听数据,转发给交换机2本地监听端口0以及交换机2的级联端口2和7:
[0127] 其中,交换机2的级联端口2将收到的监听数据向下发送到连接的下级交换机3的级联端口7,交换机3的级联端口7收到监听数据将监听数据发送至交换机3的监听端口0;
[0128] 交换机2的级联端口7将收到的监听数据向上发送到连接的上级交换机1的级联端口2,交换机1的级联端口2收到监听数据将监听数据发送至交换机1的监听端口0;
[0129] 由此,实现了交换机2通过级联端口跨级传输监听数据,使得交换机1、交换机3的监听端口均可监听到交换机2所有端口输入的交换数据。
[0130] 以此类推,各级交换机的监听端口可监听级联交换机内所有端口的数据帧,从而实现全网无遗漏监听。
[0131] 相比于现有技术,本实施例提供的一种光纤网络的数据交换与监听方法的有益效果与实施例1提供的有益效果基本相同,在此不一一赘述。
[0132] 实施例3
[0133] 本发明的另一个具体实施例,公开了一种光纤网络的数据交换与监听方法,所述光纤网络包括级联的多级交换机;所述数据交换与监听方法具体包括:
[0134] 步骤S31、各级交换机提供级联端口,所有相邻上、下级交换机通过相应的级联端口进行级联。
[0135] 如图4为本实施例交换级联拓扑结构,该结构为交换级联和监听级联分开模式,包括各级交换机和监听设备。其中,监听设备是用于对监听信息进行接收存储分析的设备。
[0136] 具体的,将交换机的各个端口可分别设置为交换端口、监听端口、交换和监听混合端口以及交换级联端口、监听级联端口;相邻的两级交换机通过两级交换机的交换级联端口和监听级联端口进行连接。
[0137] 具体的,交换端口用于传输交换数据;监听端口用于对本级交换域的数据监听;交换和监听混合端口既可以用于传输交换数据,也可以用于对本机交换域的数据监听。
[0138] 具体的,交换级联端口和监听级联端口用于实现跨级交换机的数据转发功能,分别传输交换数据和监听数据;通过监听级联端口传输监听数据,可以完成不同交换域的监听数据共享,实现整个交换网络每一级的无差别监听。
[0139] 步骤S22、每级交换机,分别对监听和交换数据进行缓存管理,并通过本级监听端口实现本级监听,通过级联端口跨级传输监听数据,实现全网监听。
[0140] 如图5为交换级联和监听级联分开模式的全网无遗漏监听数据流向示意图。每级交换机与上下级交换机使用端口3和6级联,以及端口2和7级联;可选的,端口3和6配置为交换级联端口,端口2和7配置为监听级联端口。
[0141] 图5所示,每级交换机的0口为监听端口。任意一级的监听端口0可对图示3个交换机组成的网络域中所有交换端口的交换数据即通信帧进行监听。
[0142] 示例性的,以图5在交换机1、3的监听端口0监听交换机2端口4收到交换数据说明每级交换机通过级联端口跨级传输监听数据,实现全网监听的过程。
[0143] 具体的,图5中,实线表示交互数据流向,线段虚线表示监听数据流向。
[0144] 具体的,交换数据(即通信帧)从交换机2的4端口进入后:
[0145] 交换机2按照通信帧内容的目标ID信息进行路由转发,发送到交换机2的目标输出端口6端口,通过交换级联端口转发至交换机1的交换级联端口3端口,再根据路由信息转发至交换机1的目标输出端口7端口,实现了交换数据的转发;
[0146] 交换机2将4端口收到的该交换数据进行复制转换为监听数据,转发给交换机2本地监听端口0以及交换机2的监听级联端口2和7:
[0147] 其中,交换机2的监听级联端口2将收到的监听数据向下发送到连接的下级交换机3的监听级联端口7,交换机3的监听级联端口7收到监听数据将监听数据发送至交换机3的监听端口0;
[0148] 交换机2的监听级联端口7将收到的监听数据向上发送到连接的上级交换机1的监听级联端口2,交换机1的监听级联端口2收到监听数据将监听数据发送至交换机1的监听端口0;
[0149] 由此,实现了交换机2通过级联端口跨级传输监听数据,使得交换机1、交换机3的监听端口均可监听到交换机2所有端口输入的交换数据。
[0150] 以此类推,各级交换机的监听端口可监听级联交换机内所有端口的数据帧,从而实现全网无遗漏监听。
[0151] 相比于现有技术,本实施例提供的一种光纤网络的数据交换与监听方法的有益效果与实施例1提供的有益效果基本相同,在此不一一赘述。
[0152] 需要说明的是,上述实施例基于相同的发明构思,未重复描述之处,可相互借鉴。
[0153] 以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页 第1页 第2页 第3页