一种基于SpaceFibre即插即用星载网络管理方法与流程

文档序号:15818361发布日期:2018-11-02 22:51阅读:276来源:国知局
一种基于SpaceFibre即插即用星载网络管理方法与流程

本发明属于星载航天总线应用领域,具体是一种基于spacefibre即插即用星载网络管理方法。

背景技术

spacefibre是一种高速且全双工工作的航天串行总线。在航天恶劣环境下,具有高可靠性、高稳定性和自我诊断、恢复能力。

即插即用,最早源于计算机领域,如usb设备,几乎可以与所有的计算机相连,而且只要在几秒钟之内,用户便可使用该设备;即插即用指当设备插入计算机系统,无需人工安装驱动设备便能投入工作。在spacefibre母体协议的基础上,设计即插即用协议,采用相同的协议包格式实现通信;在即插即用标准中,提出网络发现、网络配置、服务发现、服务配置概念,在此基础上实现网络管理,方便快捷。

在星载网络中,spacefibre节点设备通过即插即用接口接入到总线网络,spacefibre节点设备均连接在路由器端口上,网络管理器的协议包经路由转发机制到达各终端设备,网络管理器通过调用cypress库中的api函数与spacefibre节点板卡建立通信,底层链路在spacewire总线ip核的调度下实现握手和通信。

网络管理主要包括管理网络、管理进程、管理终端设备,网络管理最初是实现网络的可用性,然后对网络的性能分析,将网络管理器作为主节点管理网络的优点是设计灵活、操作简单,对终端设备的可控性高。



技术实现要素:

本发明为了解决因总线网络设备量增加导致的带宽利用率低的问题,在spacefibre即插即用协议基础上,设计一个网络管理器,将即插即用协议应用在spacefibre总线网络中,对spacefibre总线网络节点设备在线实时监测和管控,具体是一种基于spacefibre即插即用星载网络管理方法。

具体步骤如下:

步骤一、构建包括路由器模块和节点模块的spacefibre总线网络;

路由器模块包括至少两个互连的路由器;每个路由器均采用四端口;路由器分为一阶路由,二阶路由,……,一阶路由器通过一个端口连接二阶路由器,以此类推。

节点模块包括若干终端设备和一个网络管理器,网络管理器通过spacefibre节点板卡连接到一阶路由器的某端口;每个终端设备各自通过一个spacefibre节点板卡分别连接到路由器各端口;

网络管理器是spacefibre总线网络的核心,通过usb与spacefibre节点板卡通信,该spacefibre节点板卡只负责转发网络管理器的扫描包。

每个终端设备只向各自对应的spacefibre节点板卡上行发送真实数据,与各终端设备连接的各spacefibre节点板卡负责接收并解析来自网络管理器的扫描包,上行发送响应包和转发来自终端设备的真实数据包。

步骤二、设计spacefibre总线网络的spacefibre即插即用通信协议;

协议包设计的主要部分在于包内容,包内容设计的重点是网络寻址和对象区分。

网络寻址包括寻址到网络管理器和寻址到终端设备。

扫描包寻址到终端设备,在扫描协议包中包含源地址和目的地址;其中源地址是确定网络管理器在网络中的位置,便于终端设备寻址到网络管理器;目的地址使得终端设备清楚自身在网络中的位置;另外加入目的地址长度区分终端设备在哪一阶路由器上。

设备响应包寻址到网络管理器,在响应包中加入源地址,源地址便于网络管理器清楚终端设备的位置。

对象区分,即协议包中加入过程标识符,区分接收的包是扫描包还是控制包,在协议包中加入不同设备id标识确定设备接收的包是否与该终端设备匹配。

步骤三、网络管理器发出设备静态端口扫描包给路由器,根据即插即用通信协议确定网络管理器的物理地址,路由器与路由器的连接关系。

网络管理器向一阶路由器的某端口a发送四个端口扫描包,扫描包中加入四个端口地址,若包头地址与一阶路由器的该端口a一致,则一阶路由器删除包头并将包返回给网络管理器,根据该一阶路由器的唯一一个返回包确定网络管理器的物理地址;

同样,网络管理器向与一阶路由器级联的二阶路由器的某端口b分别发送四个端口扫描包,扫描包中加入寻址到二阶路由器该端口b的地址路径,若包头地址与二阶路由器端口b一致,二阶路由器删除包头并将包返回给网络管理器,根据二阶路由器的唯一返回包确定一阶路由器与二阶路由器连接的端口地址,网络管理器记录网络拓扑连接关系。

步骤四、各阶路由器将静态扫描包转发给各终端设备进行解析并回应,网络管理器接收到回应包后确定各终端设备的物理地址,完成静态网络扫描。

当设备数量增加时,通过设计统一解析模块,即所有spacefibre节点板卡中的解析模块程序一致,在每个节点设备扫描包中设定该设备id,当收到扫描包后若扫描包设定的设备id与设备进程中id号映射成功,统一解析模块回应与该id号一致的终端设备信息;

各终端设备判断扫描包过程标识,如果是扫描过程,根据扫描包中管理器的物理地址寻址到网络管理器,解析扫描包中的设备地址回应终端设备的物理地址和设备id,网络管理器收到设备响应包后存储下设备信息和拓扑连接关系,到此完成静态网络扫描。否则,标识不是扫描过程,不作处理。

步骤五、网络管理器实时监控spacefibre总线网络并发起动态网络扫描,自动识别路由器的数目、路由器两两之间的连接情况;并在设备插入或拔出后,更新网络拓扑结构图。

动态网络扫描,指当有新设备插入或拔出时,网络管理器能实时监测。

当spacefibre节点设备插入或拔出总线网络时,利用定时器定时监测api函数通道,api函数通道定位到某一终端设备的端口,通过比较该端口的终端设备定时前后两个状态连接情况,监测终端设备是否插入或断开,并更新网络拓扑结构图;

当随机数n个路由接入网络中,采用定时开启静态网络扫描,接收路由器和终端设备的返回包,判断新插入路由和终端设备的连接端口,读取存储路由器各端口连接关系和设备基本信息,实现动态扫描网络拓扑结构。

插入或拔出的指示信息包括路由器级别号、设备所连接的路由器端口和设备信息等;

步骤六、网络管理器控制spacefibre节点设备实现信息交互,控制终端设备向网络管理器发送数据包。

终端设备实现数据传输的形式有三种:

第一种是spacefibre节点设备向网络管理器发送信息,由网络管理器显示设备基本信息。第二种是spacefibre节点设备向另一spacefibre次节点设备发送信息,由次节点设备显示信息。第三种是控制spacefibre节点设备完成某一动作。

对于大型网络,当设备数量增大导致带宽不足时,网络管理器向终端设备发送停止发数命令包,灵活控制设备数据通道的开启与断开,提高spacefibre总线网络的带宽利用率。

本发明的优点和积极效果在于:

(1)、一种基于spacefibre即插即用星载网络管理方法,在设计的即插即用协议基础上,设计网络扫描算法完成对终端设备的静态和动态扫描,得到网络拓扑信息并描绘拓扑结构图,网络寻址简单、便捷。

(2)、一种基于spacefibre即插即用星载网络管理方法,动态扫描实现了当连入总线网络的路由器为变量n时,网络管理器能动态识别,同时对路由器所连设备完成动态扫描。

(3)、一种基于spacefibre即插即用星载网络管理方法,在spacefibre节点设备中设计统一解析模块,节省对系统空间资源的占用,提高系统的性能,避免因spacefibre节点设备过多导致不必要的工作量。

附图说明

图1为本发明基于spacefibre即插即用星载网络管理方法的原理图;

图2为本发明基于spacefibre即插即用星载网络管理方法的流程图;

图3为本发明构建的包括路由器模块和节点模块的spacefibre总线网络框图;

图4为本发明网络管理器与终端设备的信息交互过程;

图5为本发明即插即用协议包的格式示意图。

具体实施方式

下面结合附图对本发明的具体实施方法进行详细说明。

一种基于spacefibre即插即用星载网络管理方法,如图1所示,首先,设计spacefibre总线网络的即插即用通信协议;然后,网络管理器发出静态网络扫描包,发现网络管理器的物理地址和确定路由器与路由器的连接关系,并等待设备响应后发现终端设备的物理地址。

设备响应是在网络管理器发出设备静态扫描包后,终端设备解析扫描包并根据地址向网络管理器回应设备信息。

然后,设计spacefibre节点统一解析模块,并嵌入在节点板卡fpga芯片中,对协议包先分拣,当协议包与终端设备匹配后,统一解析模块收下协议包并由终端设备作进一步解析。

网络管理器实时监控网络并发起动态网络扫描,动态发现是否有新的路由或中断设备插入或拔出。最后,控制终端设备实现数据传输。

如图2所示,具体步骤如下:

步骤一、构建包括路由器模块和节点模块的spacefibre总线网络;

如图3所示,从网络连接结构介绍spacefibre总线网络中的网络管理器、路由器和spacefibre终端设备;依据通信链路将网络划分为两个模块:路由器模块和节点模块。节点模块通过光口模块连接到路由器模块,经过路由器转发的消息都通过光口模块传输到节点模块上。路由表是路由器的消息处理机制,是路由器的核心,本方法中涉及到的协议包都经路由表转发至节点模块。

本实施例中,网络管理器和五个终端设备分别与spacefibre节点板卡连接构成节点模块,连接方式是采用光口接口连接。

路由器模块包括两个互连的路由器r1和r2;每个路由器均采用四端口;电源配置为12vdc,1.0a。路由器r1为一阶路由,路由器r2为二阶路由。

节点模块包括五个终端设备和网络管理器;

网络管理器通过spacefibre节点板卡连接到路由器r1的端口1;终端设备t1和终端设备t2各通过spacefibre节点板卡分别连接到路由器r1的端口2和端口4;路由器r1的端口3连接路由器r2的端口5;路由器r2的剩余三个端口分别各自通过spacefibre节点板卡连接剩余的三个终端设备,需要说明的是,此处以图3作一特例分析,路由器各端口与网络管理器、终端设备连接方式不固定。

网络管理器即插即用,通过spacefibre即插即用协议完成对网络拓扑结构扫描和设备管理,其中网络管理器是spacefibre总线网络的核心,借助usb2.0和底层链路板卡传输数据,usb数据传输线也作为spacefibre节点板卡的供电线路,供电电压为5v。网络管理器通过usb与spacefibre节点板卡通信,该spacefibre节点板卡只负责转发网络管理器的扫描包。

终端设备当收到执行命令后,执行相关动作。每个终端设备只向各自对应的spacefibre节点板卡上行发送真实数据,与各终端设备连接的各spacefibre节点板卡负责接收并解析来自网络管理器的扫描包,上行发送响应包和转发来自终端设备的真实数据包。

通过spacefibre节点板卡,上位机和终端设备建立与底层链路的通信,spacefibre节点板卡的核心是cycloneiii系列的fpga芯片,该芯片里固化的程序应用spacefibre母体协议,实现spacefibre节点板卡之间的握手等底层协议功能。

步骤二、设计spacefibre总线网络的spacefibre即插即用通信协议;

协议包设计的主要部分在于包内容,包内容设计的重点是网络寻址和对象区分。

网络寻址包括寻址到网络管理器和寻址到终端设备。

扫描包寻址到终端设备,在扫描协议包中包含源地址和目的地址;其中源地址是确定网络管理器在网络中的位置,便于终端设备寻址到网络管理器;目的地址使得终端设备清楚自身在网络中的位置;另外加入目的地址长度区分终端设备在哪一阶路由器上。

设备响应包寻址到网络管理器,在响应包中加入源地址,源地址便于网络管理器清楚终端设备的位置。

对象区分,即协议包中加入过程标识符,区分接收的包是扫描包还是控制包,在协议包中加入不同设备id标识确定设备接收的包是否与该终端设备匹配。

完成spacefibre总线网络管理功能的常用协议包,如图5所示,协议包格式以两个字节表示最小信息单元,如协议包标识符以16位二进制存储单元来存放。其中,网络管理器地址确定协议包1是确定网络管理器连接在路由器上的端口1。路由器r1与路由器r2之间连接的端口确定协议包2,用来确定路由器1和路由器2之间的连接端口为端口3和端口5。终端设备发现协议包3是使spacefibre节点设备知道网络管理器在网络中的物理地址以及spacefibre节点设备自身的物理地址。终端设备响应协议包4是spacefibre节点设备在收到协议包3后解析发出的回应包,协议包4主要是让网络管理器获取spacefibre节点设备的物理地址和设备信息。终端设备动作控制协议包5是当网络管理器获取终端设备的物理地址和设备信息以后,使能spacefibre节点设备完成各自动作。协议包设计主要依据这四个过程,具体到每个设备的协议包则以过程标识符、设备id区分。

步骤三、网络管理器发出设备静态端口扫描包给两个路由器,根据即插即用通信协议确定网络管理器的物理地址,路由器与路由器的连接关系。

静态发现网络管理器指确定网络管理器的物理地址。以一阶路由器r1为例,协议包1中目的地址是路由器r1的四个物理端口的地址,分别为端口1,2,3,4,协议包1中网络管理器地址也分别设为1,2,3,4。具体确定网络管理器地址过程为:首先网络管理器向路由器r1分别发送四个协议包1,目的地址分别为1,2,3,4,此时网络管理器连接在路由器r1的端口1,路由器r1会对连接的网络管理器作出响应,路由器具体操作是将协议包1头地址删除并返回网络管理器。网络管理器对收到的包作解析,由协议标识符判断为网络管理器地址确定过程,由返回协议包中的网络管理器地址确定网络管理器的地址端口1。

在静态发现终端设备之前,还需确定一阶路由器r1与级联的二阶路由器r2之间连接的两个端口3、5。协议包2的目的地址是路由器r1的2,3,4端口号寻址到路由器r2,这三个端口号根据路由器r2的回包情况确定,在目的地址中再加上1,2,3,4端口号分别以四个包发给路由器r2的四个端口,以网络管理器的物理地址作为协议包2从路由器r2到网络管理器的返回地址。若网络管理器收到来自路由器r2的回应包,即可稍作判断确定路由器r1端与路由器r2的连接端口3,在协议包2中标识符后加上1,2,3,4四个端口地址,即可确定路由器r2端与路由器r1的连接端口5,具体过程为:由网络管理器向路由器r1的另外三个端口发送r1、r2端口确定包,当路由器r2收到包后依据返回地址返回给网络管理器,后者由标识符判断过程,解析并确定r1与r2之间连接的端口3和端口5,更新网络拓扑结构图,确定路由器r1与路由器r2的拓扑连接关系。

步骤四、路由器r1和r2将静态扫描包转发给各终端设备进行解析并回应,网络管理器接收到回应包后确定各终端设备的物理地址,完成静态网络扫描。

静态发现终端设备,是发现spacefibre节点设备的物理地址和基本信息。终端设备发现协议包3中,目的地址为图2中的端口2,3,4,标识符为终端设备发现标识符,路由器级别号区分设备挂在路由器r1上还是路由器r2上,网络管理器地址便于终端设备寻址网络管理器,设备地址方便终端设备熟悉自身物理地址。以一阶路由r1为例,具体过程为:当网络管理器向路由器r1的端口2,3,4发出终端设备扫描包后,若扫描包与终端设备匹配,spacefibre节点设备根据协议包3中的网络管理器地址寻址网络管理器,此时网络管理器成功发现终端设备,在设备返回给网络管理器的协议包中,还包含了spacefibre节点设备的基本信息如设备id、设备类型等,最后更新总线网络拓扑连接图。

静态发现二阶路由r2上的终端设备,只需将协议包中的目的地址、返回地址稍作更改。在发现二阶路由r2终端设备的协议包中,以端口3寻址到路由器r2,在端口5确定的前提下对路由器r2的另外三个端口发送终端设备扫描包,若设备扫描包标识符与终端设备匹配,终端设备接收该扫描包并根据返回地址向网络管理器作出回应,网络管理器对设备返回包解析后,会给spacefibre节点设备发送确认包,通知终端设备网络管理器收到了设备响应包。若spacefibre节点设备没有收到网络管理器的确认包,终端设备将一直给网络管理器发送设备响应包,并更新网络拓扑结构图。

网络管理器与终端设备的信息交互过程,如图4所示,网络管理器分别向两个路由器未确定的端口发送设备端口扫描请求,其中各个端口扫描包中设定接收节点端口的端口号和网络管理器的物理地址,根据前者及路由器之间的连接关系确定网络管理器到终端设备的寻址,后者描述网络管理器在网络中的位置;各终端设备响应设备扫描应答,然后网络管理器发送设备控制请求,后终端设备回应设备传输数据包。

然而当设备数量增加时,响应模块设计工作量大,设计spacefibre节点统一解析模块,所谓统一,即所有spacefibre节点板卡中的解析模块程序一致,当设备数量增加时统一解析模块的可复制性强。在每个终端设备解析模块进程中,需映射到终端设备的一个特殊标识即设备id,此id号只能从另一个进程中调用,此设备进程不包含在统一解析模块中,且因设备而异。而在每个节点设备扫描包中设定该设备id,当收到扫描包后若扫描包设定的设备id与设备进程中id号映射成功,统一解析模块回应与该id号一致的终端设备信息,此解析模块设计只针对该spacefibre总线网络。

spacefibre节点统一解析模块嵌入在节点板卡fpga芯片中,在vhdl文件中在top文件中作解析,在各个终端设备对协议包作解析前,写在top文件中的统一解析模块先对协议包做分拣,当协议包与终端设备匹配后,统一解析模块收下协议包并由终端设备作进一步解析。统一解析模块分拣过程为:网络管理器的协议包主要包括扫描包、确认包和设备动作控制包,首先解析模块判断协议包标识符,是否为扫描包、确认包和设备动作控制包中,若为其中之一,进一步判断协议包中的设备id,若该id号和预设的设备id号一致,终端设备收下该协议包并根据相应命令对作出响应。若标识符不是三个包中的一种或者id号和预设的设备id号不一致,统一解析模块则将协议包数据流上传至其他层次解析模块。

步骤五、网络管理器实时监控spacefibre总线网络并发起动态网络扫描,自动识别路由器的数目、路由器两两之间的连接情况;并在设备插入或拔出后,更新网络拓扑结构图。

动态识别网络拓扑结构指能识别随机n个路由器网络,可应用于一般路由器网络,采用静态扫描方法,可识别一般路由网络中路由器的连接关系。

动态发现路由,是指随机路由数n连入spacefibre总线网络中,网络管理器能自动识别路由器的数目、路由器两两之间的连接情况。

具体过程为:以图3为例,在端口1,3,5确定后,在图3的基础上再加入第三个路由器r3时,此时目的地址在之前寻址到路由器r2的基础上,经路由器r2的另外三个端口6,7,8发出协议包,每个协议包同样加上1,2,3,4,分别以四个协议包向路由器r3发出,以端口5,1作为返回地址,和静态发现路由一样,若网络管理器收到路由器r3的回应包,即可确定路由器r2与r3的连接端口关系,在路由器端口确定后,网络管理器按同样的设备扫描方法发现终端设备。同理,当路由器扩展至n时,网络管理器按同样的协议包寻址方法动态发现路由器,网络管理器动态识别路由,实时更新网络拓扑结构图。

动态发现终端设备,指网络管理器实时监测spacefibre总线网络,当spacefibre节点设备插入或拔出总线网络时,网络管理器能发现终端设备的插入或拔出状态。具体过程为:利用定时器定时监测api函数通道,在之前终端设备所连路由器的物理端口确定基础上,api函数通道定位到某一终端设备端口,通过比较该端口定时前后两次执行的端口状态信息,状态信息以true、false来表示连接、端开,确定终端设备的插入。

监测终端设备的拔出,和监测终端设备插入的方法不同,利用定时器定时监测api函数通道,同样比较某一端口前后两次端口状态信息,假如上一次有n个终端设备为连接状态,在通道上加一个300ms的等待延时,在等待延时时间之外,若下一次有n-1个终端设备的连接状态为连接状态,则其中一个终端设备处于断开状态,以此类推。

插入或拔出的信息包括路由器号、路由器所连端口、设备信息等,网络管理器在监测到设备的插入、拔出后,更新网络拓扑结构图。

步骤六、网络管理器控制spacefibre节点设备实现信息交互,控制终端设备向网络管理器发送数据包。

网络管理器由已知的网络拓扑结构和设备信息,根据spacefibre节点设备的物理地址、设备信息,命令终端设备执行相关动作;终端设备实现数据传输的形式有三种:

第一种是spacefibre节点设备向网络管理器发送信息,由网络管理器显示设备基本信息。第二种是spacefibre节点设备向另一spacefibre次节点设备发送信息,由次节点设备显示信息。第三种是控制spacefibre节点设备完成某一动作如实现舵机转动。

对于大型网络,当设备数量增大导致带宽不足时,网络管理器向终端设备发送停止发数命令包,灵活控制设备数据通道的开启与断开,提高spacefibre总线网络的带宽利用率。

本发明网络拓扑结构扫描的第一步是静态网络扫描,由网络管理器发起。首先网络管理器分别向一阶路由的四个端口发生扫描包,扫描包中包含了管理器物理地址,根据路由器返回包确定网络管理器的物理地址,同样向二阶路由器发送四个端口扫描包,不同之处是需要添加一阶路由上与二阶路由连接的端口地址,此端口地址根据二阶路由包返回情况确定,由此管理器根据二阶路由的返回包确定一阶路由器和二阶路由器连接的两个端口号,网络管理器记录拓扑连接关系。其次,网络管理器分别向两个路由器未确定的端口发送设备端口扫描包,其中各个端口扫描包中设定该端口的端口号和网络管理器的物理地址,终端设备收到扫描包后启用设备响应。

将设备响应模块嵌入spacefibreip核中,终端设备接收并解析设备端口扫描包,若扫描包信息和设备信息一致,根据包中管理器的物理地址向网络管理器回应设备的物理地址等基本信息,网络管理器收到设备响应包后存储下设备信息和拓扑连接关系,到此完成静态网络扫描。设备数量增加时,响应模块设计工作量大,设计统一解析模块,节点模块解析设备扫描包,若扫描包和设备信息匹配则将数据流上行发送给终端设备,否则不做响应。

网络状态实时监控是由网络管理器动态扫描网络,采用定时器定时操作,定时静态扫描终端设备和路由器各端口,通过比较某一端口的终端设备前后两个状态连接情况,监测终端设备是否插入或断开,更新拓扑连接关系。当随机数n个路由接入网络中,采用定时开启静态网络扫描,接收路由器和终端设备的返回包,判断新插入路由和终端设备的连接端口,读取存储路由器各端口连接关系和设备基本信息,实现动态扫描网络拓扑结构。

网络管理器获取的设备信息有设备id、设备类型,端口连接主要是终端设备的物理地址,网络管理器调用存储的设备信息和端口连接关系,命令终端设备执行具体操作。

为了解决因总线网络设备量增加导致的带宽利用率低的问题,采用分时开启设备方法,控制终端设备的开与断。

尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1