FC网络学习笔记02 -网络配置方法

随着新一代飞机的综合化航电系统对通信需求的不断提高,传统的ARINC429、1553B总线的传输速率分别只有100Kbps和1Mbps,其带宽已远远不 论文联盟 http://Www.LWlm.cOm能满足系统通信的需求,无法为高性能数据处理提供有力的通信支撑。
FC网络是一种高速串行通信技术,速率可以达到1Gbps、2Gbps,甚至到4Gbps以上,同时还具备低延迟、可靠性高、重量轻、体积小,且 应用灵活等特点,是一种新型的高速通信技术。定义了FC-AE以及ARINC818等专门应用于机载 环境的高层通信协议,同时在网络设备设计中,使用专用控制电路,增强了FC通信的可靠性和确定性,可以为机载系统提供一个高速、高可靠性的FC通信网络[1~2]。
本文首先描述FC网络的拓扑结构和通信协议,然后重点介绍一种FC 网络的配置方法,包括对节点机和交换机的配置,最后通过示例分析,验证了FC网络的性能和可靠性。
1 FC网络简介
1.1 FC网络构成
FC网络由FC交换机和FC节点机构成,FC交换机是整个网络的核心部件,具有线速交换的功能,是连接各个节点机的交通枢纽;FC节点机是网络中的重要部件,作为终端可以通过交换机或者直接和节点机通信。
1.2 FC网络拓扑结构
FC网络作为新型的高速串行通信网络,采用分布式架构,支持点到点、交换以及仲裁换三种拓扑连接方式:
1)点到点:该结构使用一个双向的链路将两个N端口连接起来构成通信网络,是FC拓扑结构中最简单的一种。该结构中两个端口独占发送和接收带宽,数据传输延迟低,确定性好。点到点拓扑具有结构简单,可靠性高等优点,但是其缺点也很明显的:支持节点数目太少,没有扩展能力,不能满足多个设备互连通信的需要。
2)仲裁环:仲裁环是将支持仲裁环功能的FC端口即L_Port(或具备L_Port功能的FC端口)连接起来组成的一个环状串行通信网络,并为任意两个端口提供逻辑上的双向点到点通信链路。仲裁环拓扑具有结构简单,组网费用低等优点,不需要使用额外的设备就可以完成多个FC设备的互连。但是,该拓扑结构具有可靠性较低,通信带宽低,数据传输延迟大等缺点。
3)交换结构:交换结构是使用交换机将需要通信的N_Port连接起来构成的通信网络。该拓扑中连接的设备数最多可达1500万个以上,而且允许多个设备在同一时刻进行高速通信。交换结构是FC拓扑结构中功能最具优势的拓扑结构,优点是通信带宽高、可靠性高、数据传输延迟小和扩展性好。但是,其结构复杂,且组网费用较高。其中,交换拓扑结构除了组网费用高外,其它各个方面的特点都更为适合航空电子系统的应用环境。
1.3 FC网络基本通信原理
在FC网络中,应用采用FC-AE-ASM消息进行端到端的通信,节点通过消息进行数据收发,每个节点都有自己的端口ID,发送消息中包含目的节点的端口ID,交换机在接收到消息时根据交换机转 发表查找消息需要转发到的目的端口,接收节点不需要知道消息的源端,不进行应答,在接收到消息后,节点进行解析将消息数据提交给应用。
2 FC网络配置的设计
在机载FC通信网络中,需要进行网络配置,对整个网络统一规划部署,以便完成网络中各节点机之间的高效、高可靠数据通信。
在FC网络中包括FC交换机和节点机两部分,由于在航电系统中,拓扑结构具有确定性,因此配置的思路是采用各个模块静态配置的方式,这样配置的好处是配置的速度快、确定性高,而且能够避免由于某个模块故障导致网络整体配置失败。网络配置前要根据网络拓扑结构规划节点机需要连接的交换机端口和各个节点的通信流向。
2.1 交换机的配置
交换机的主要功能是数据的转发,所以需要对每个连接节点机的端口配置转发表,交换机的转发表是用于加载到交换机中完成网络路由的表,从不同端口输入的消息,根据该消息的目的端口ID,查找转发表的对应信息,从而转发到不同的端口。交换机转发表示例如表1所示。
交换机转发规则示意如上表所示,如果消息数据从1端口进入,并且该消息的目的端口ID为0x10001,则交换机查表将该数据从端口2转发出去,依次类推,实现数据的转发。
2.2 节点机的配置
节点机的配置主要包括收发消息的配置和节点属性的配置,节点属性主要配置节点机的端口类型是ASM或者AV,还有端口ID等属性,收发消息配置主要是根据网络通信规划配置网络中各个节点机间的通信消息,节点间使用消息通信,消息主要通过ID标识,消息ID使用根据协议规定其取值范围为1~232-1;0和0xFFFFFFFF保留,不允许使用,且网络中所使用的消息必须全局唯一,节点间通信的示意图如下:假设两个节点进行通信,至少需配置一条消息,假设消息ID为1,该消息对于节点A是发送消息,对于节点B是接收消息,如果两个节点需要双向通信,则还需要一条从节点B到节点A的消息,如图1所示,具体使用的消息数目和通信流向可根据应用需求进行配置。
2.3 配置表的加载
FC交换机和FC节点机都使用PowerPC处理器,在其上运行程序,将网络拓扑和节点机通信消息都配置好后,交换机的配置可以通过主机配置 管理软件生成,通过嵌入式PowerPC的以太网接口给交换机加载转发表,两者之间的通信通过socket套接字实现,采用client/Server模式使用TCP协议实现可靠的数据传输,其中主机程序为客户端,交换机端的程序为服务器端,交换机在接收到配置数据后对其进行解析,然后配置到交换机的FPGA中的寄存器,由此实现对交换机转发表的配置[3]。
节点机的配置可以通过主机配置管理软件生成指定结构的配置信息,以.c文件的格式输出,主要包括节点的属性信息、发送通信表和接收通信表,发送通信表和接收通信表分别是每个节点机所用到的发送消息列表和接收消息列表。节点机驱动软件将读取该.c文件,并进行解析,将配置信息写到节点机的FPGA中的寄存器,作为节点通信的依据。
3 示例
下面针对某综合处理系统FC交换网络为例,说明网络的配置过程。该系统FC网络由一个交换机和4个节点机组成,分别连接到交换机的1,2,3,4端口,则网络拓扑结构如图2所示,根据该拓扑结构,配置一个简单的环形通信示例,即使用消息0x1从节点机1发到节点机2,节点机2收到后使用消息0x2发数据给节点机3,依次类推,形成1->2->3->4->1的环形通信。
根据上述方法,配置完成后,进行了4个节点之间的通信测试,经过长达4个小时的测试,网络的通信过程中未发生丢包现象,可以稳定可靠的传输。
4 总结
本文介绍了一种FC网络的配置方法,详细介绍了节点机的配置、交换机的配置和配置信息的加载方法;通过示例分析,验证了网络的功能和可靠性。提供了一种FC网络配置的思路和方法,为高性能的FC网络系统设计提供一定的参考。

转载于:https://www.cnblogs.com/pangblog/p/3362212.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/473918.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LeetCode 1599. 经营摩天轮的最大利润(模拟)

文章目录1. 题目2. 解题1. 题目 你正在经营一座摩天轮,该摩天轮共有 4 个座舱 ,每个座舱 最多可以容纳 4 位游客 。你可以 逆时针 轮转座舱,但每次轮转都需要支付一定的运行成本 runningCost 。摩天轮每次轮转都恰好转动 1 / 4 周。 给你一…

1.数据库基本概念知识

数据库 存储数据的仓库 描述一个事物的基本信息 优点: 持久化存储 读写速度极高 保证数据的有效性 RDBMS 当前主要使用两种类型的数据库:关系型数据库、非关系型数据库 所谓的关系型数据库RDBMS,是建立在关系模型基础上的数据库,借助于…

LeetCode 1600. 皇位继承顺序(图的深度优先遍历)

文章目录1. 题目2. 解题1. 题目 一个王国里住着国王、他的孩子们、他的孙子们等等。每一个时间点,这个家庭里有人出生也有人死亡。 这个王国有一个明确规定的皇位继承顺序,第一继承人总是国王自己。我们定义递归函数 Successor(x, curOrder) &#xff…

Java泛型,枚举,注解

Java泛型,枚举,注解 1 泛型 1.1 什么是泛型 泛型:即参数化类型。在不创建新的类型的情况下,通过泛型指定的不同类型来控制形参具体限制的类型。允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值…

2.数据完整性

使用数据类型的原则是:够用就行,尽量使用取值范围小的,而不用大的,这样可以更多的节省存储空间 常用数据类型如下: 整数:int,bit 小数:decimal 字符串:varchar,char 日期…

LeetCode 1601. 最多可达成的换楼请求数目(回溯+剪枝)

文章目录1. 题目2. 解题1. 题目 我们有 n 栋楼,编号从 0 到 n - 1 。每栋楼有若干员工。由于现在是换楼的季节,部分员工想要换一栋楼居住。 给你一个数组 requests ,其中 requests[i] [fromi, toi] ,表示一个员工请求从编号为 …

3.数据库基本操作

数据库操作: 查看所有数据库 show databases; 使用数据库 use 数据库名; 查看当前使用的数据库 select database(); 创建数据库 create database 数据库名charsetutf8; 例:create database python charsetutf8; 删除数据库 drop database 数据库名…

Nginx + PHP(php-fpm)遇到的502 Bad Gateway错误

我一个统计程序估计要跑1分多钟以上 查看了一个php-fpm 配置文件 [13-Oct-2013 12:06:07] WARNING: [pool www] child 7458, script /home/wwwroot/admin/index.php (request: "GET /index.php") execution timed out (101.515909 sec), terminating [13-Oct-2013 12…

4.数据库(增删改查)备份及恢复

查询所有列 select * from 表名; 例:select * from classes; 查询指定列,可以使用as为列或表指定别名 select 列1,列2,...from 表名; 例:select id,name from classes; 增加 全列插入:值的顺序与表中字段的顺序对应 insert in…

LeetCode 767. 重构字符串(堆)

文章目录1. 题目2. 解题1. 题目 给定一个字符串S,检查是否能重新排布其中的字母,使得两相邻的字符不同。 若可行,输出任意可行的结果。若不可行,返回空字符串。 示例 1: 输入: S "aab" 输出: "aba"示例 2…

5.数据库设计

三范式 经过研究和对使用中问题的总结,对于设计数据库提出了一些规范,这些规范被称为范式 数据库设计中一共有6个范式,一般需要遵守3范式即可 第一范式(1NF):数据库表的每一列都是不可分割的原子数据项,…

minix中atoi、atol、atof的实现

在minix2.0源代码中,有将字符串类型转换为int、long、double类型的函数实现,相关的实现函数分别在atoi.c、atol.c、atof.c文件中,我们来逐一学习其中的源码: 1、int atoi(register const char *nptr) :将字符串类型转换…

LeetCode 729. 我的日程安排表 I(set 二分查找)

文章目录1. 题目2. 解题2.1 set 二分查找2.2 差分思想1. 题目 实现一个 MyCalendar 类来存放你的日程安排。如果要添加的时间内没有其他安排,则可以存储这个新的日程安排。 MyCalendar 有一个 book(int start, int end)方法。 它意味着在 start 到 end 时间内增加…

java基础之lambda表达式

java基础之lambda表达式 1 什么是lambda表达式 lambda表达式是一个匿名函数,允许将一个函数作为另外一个函数的参数,将函数作为参数传递(可理解为一段传递的代码)。 2 为什么要用lambda表达式 lambda表达式可以写出更简洁更灵…

6.数据查询(条件

查询所有字段select * from 表名; 例:select * from students; 查询指定字段 在select后面的列名部分,可以使用as为列起别名,这个别名出现在结果集中 select 列1,列2,... from 表名; -- 表名.字段名 select students.id,students.name,su…

开源代码分析技巧之——打印调用逻辑

开源代码分析技巧之——打印调用逻辑 在研究开源代码时,大家或许都有这样的感慨: (1)代码太庞大,少则几万行代码,多则几百万行代码,不知道如何入手; (2)相关的…

LeetCode 731. 我的日程安排表 II(set二分查找 / 差分思想)

文章目录1. 题目2. 解题2.1 set 二分查找2.2 差分思想1. 题目 实现一个 MyCalendar 类来存放你的日程安排。如果要添加的时间内不会导致三重预订时,则可以存储这个新的日程安排。 MyCalendar 有一个 book(int start, int end)方法。 它意味着在 start 到 end 时间…

7.排序、聚合函数、分组查询

排序 语法: select * from 表名 order by 列1 asc|desc,列2 asc|desc,... asc从小到大排列,即升序,也可不写; desc从大到小排序,即降序 例1:查询未删除男生信息,按学号降序 select * from…

JSON数据格式以及与后台交互数据转换实例

/*作者&#xff1a;烟大阳仔时间&#xff1a;20131013介绍:主要了解一下json的格式&#xff0c;看看数据是怎么存储的 */ <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> &…

05.序列模型 W1.循环序列模型

文章目录1. 为什么选择序列模型2. 数学符号3. 循环Recurrent 神经网络模型4. 通过时间的反向传播5. 不同类型的循环神经网络6. 语言模型和序列生成7. 对新序列采样8. 循环神经网络的梯度消失9. Gated Recurrent Unit&#xff08;GRU单元&#xff09;10. LSTM&#xff08;long s…