虹科技术|如何用TSN流识别技术破解航空电子网络的传输难题?

导读:随着航空航天技术的迅猛发展,航空电子网络面临着诸多挑战,如多网络并行传输、高带宽需求以及确保数据传输的确定性等。为应对这些挑战,航空电子网络急需一个通用的网络架构,满足布线简单、供应商多、组网成本相对较低等要求。而以太网技术,特别是TSN(时间敏感网络)的出现,为航空电子网络带来了新的解决方案。本文将重点介绍TSN流识别技术在航空电子网络中的应用,以及如何通过适应航空电子网络的TSN流识别技术实现高效的航空电子网络传输。

一、航空电子网络面临挑战

航空航天业专用协议包括AFDX、ARINC等,这些协议带宽较低且供应商稀少,而又由于多网络的平行传输,因此没有一个特定的协议能够适用于一架飞机的所有子系统,组网成本高昂,系统布线也很复杂。航空航天网络需要一个通用的网络架构,布线简单、供应商多、组网成本相对较低,同时满足确定性传输、低延时、低抖动、冗余机制和高带宽的要求。

二、现有航空电子网络中的流识别和潜在的TSN用例场景

在航空电子设备当中,通常由旧有应用、以及认证的专用网络栈+端站(硬件-例如arinc664终端系统)组成航电设备,外部通过航空交换机进行数据通信。

应用1:整合TSN交换机与TSN终端

应用1-1:将LRU与TSN交换机做结合,对于航空交换机而言,采用TSN机进行替代。其中TSN交换机使用组播DMAC来执行流量监管和转发,TSN交换机需要具备Null Stream Identification能力。

应用1-2:通过将TSN端点的功能集成到航电设备当中,外部依旧采用旧有航空交换机,终端系统使用组播DMAC执行流量整形和帧复制消除FRER,TSN端点须具备Null Stream Identification能力。

应用2:TSN终端集成进航空电子设备

应用2-1:通过将专用网络协议栈和TSN协议堆栈相结合,在航电设备当中添加TSN终端网卡MAC,实现TSN终端在航电设备中的集成,外部依旧采用航空交换机进行通信。此时交换机使用组播DMAC来执行流量监管和转发,TSN端点需要具备Null Stream Identification能力。

应用2-2:通过操作系统和协议堆栈的方式,进行TSN端系统功能的添加,此时堆栈进行帧的产生。并且L2&L3的报文头遵循寻址约定,以符合集成商网络惯例,对于交换机需要具备Null Stream Identification能力,同时TSN端点需要具备IP + Active MAC Identification的能力。

应用3:将现有应用/操作系统与TSN网络集成

应用3-1:通过操作系统和协议堆栈的方式,进行TSN端系统功能的添加,并且外部采用TSN网络进行传输。此时系统以及堆栈进行帧的产生。L2&L3的报文头遵循寻址约定,以符合集成商网络惯例。堆栈进行帧的产生。L2和L3标头遵循寻址约定,以符合集成商网络惯例。

应用3-2:

  • 网络集成商可能需要一个完全确定的网络回程,但仍然允许尽力而为,COTS以太网参与的设备。
  • TSN可以通过利用TSN桥来形成流、管理并在网络上执行FRR来实现这个新的用例网络的回程
  • TSN桥:Null Stream + IP + Active MAC Identification 
  • TSN IP&硬件HW提供对Null Stream的支持

现代 FPGA 和可重构平台的长期供应、灵活性和集成能力使这些器件成为航空航天和国防市场中新型嵌入式器件的首选技术。其次,在对数据采集单元和COTS子系统的低延迟、高带宽和互操作性的需求的推动下,A&D行业正在以太网上融合。

三、FRER在RELY-TSN交换机中流识别原理

虹科RELY-TSN交换机

1、内涵

在IEEE802.1CB中定义的TSN流识别(Stream Identification)是FRER中的一个关键步骤。它有两个主要目标:

  • 确定传入的帧是否属于TSN流。
  • 为标识流中的数据包分配一个名为stream_handde的本地重要的整数值

2、功能

Switch支持各种流识别功能,包括空流识别、源MAC和VLAN流识别、主动目标MAC和VLAN流识别、掩码和匹配流识别。这些函数决定了哪些参数用于计算流句柄值。

3、主动/被动流识别

流标识可以是主动的,也可以是被动的。在被动模式下,识别参数在出口(输出帧)中保持不变,而在主动模式下,则可以在出口期间覆盖这些参数。SWICTH同时支持这两种识别类型。

4、协同工作

Swicth可以同时实现多个TSN流识别功能,最多4个。该功能允许通过不同的函数来识别不同的数据流。在流由多个函数标识的情况下,与流关联的流句柄由根据GUI中配置的顺序进行优先级的第一个流标识函数确定。

5、计算器监控

该交换机提供了基于每个端口的监控流识别的计数器。

四、RELY-TSN交换机中流识别配置

添加NULL条目

RELY-TSN交换机

虹科RELY-TSN交换机可用于无缝实施确定性以太网,该器件基于SoC-e的TSN技术在最苛刻的行业(铁路、航空航天、汽车、工业自动化等)中使用的可靠且经过现场验证的设计。该设备可用作提供4/12/20个多媒体千兆以太网端口和1个内部端口的TSN Bridge,可与市场上的其他产品互操作。虹科RELY-TSN交换机支持市场上数量最多的TSN标准,这使其适用于任何特定的配置文件。这些关键功能使虹科RELY-TSN交换机成为用于关键环境的最可靠和多功能的网络设备。

结语

通过合理的配置和优化,TSN流识别技术能够为航空电子网络提供高效、可靠的传输服务,满足航空航天领域对于高带宽、低延迟和确定性传输的需求。未来,随着以太网技术的发展和普及,我们期待TSN流识别技术在航空电子网络中发挥更大的作用。

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

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

相关文章

网络文件共享服务

一.存储类型 直连式存储:Direct-Attached Storage,简称DAS 存储区域网络:Storage Area Network,简称SAN(可以使用空间,管理也是你来管理) 网络附加存储:Network-Attached Storage&…

(2023版)斯坦福CS231n学习笔记:DL与CV教程 (2) | 图像分类与损失函数

前言 📚 笔记专栏:斯坦福CS231N:面向视觉识别的卷积神经网络(23)🔗 课程链接:https://www.bilibili.com/video/BV1xV411R7i5💻 CS231n: 深度学习计算机视觉(2017&#xf…

FairyGUI Day 1 导入FairyGUI

FairyGUI Unity3d引擎版本:Uinty3d 20233.2.3f1 1、从资产商店中将FairyGUI购入我的资产中,目前是免费的。 2、从我的资产中将FairyGUI导入到当前项目中。 3、我遇到的问题,我的Assets下有两个文件夹分别是Resources和Scenes,导…

开源对象存储服务器MinIO本地部署并结合内网穿透实现远程访问管理界面

文章目录 前言1. Docker 部署MinIO2. 本地访问MinIO3. Linux安装Cpolar4. 配置MinIO公网地址5. 远程访问MinIO管理界面6. 固定MinIO公网地址 前言 MinIO是一个开源的对象存储服务器,可以在各种环境中运行,例如本地、Docker容器、Kubernetes集群等。它兼…

大量文件重命名数字排序有什么好方法?快来看这里

随着数字时代的到来,我们每天都会处理大量的文件,无论是工作还是生活。为了更好地管理和查找这些文件,我们通常会使用数字排序来对它们进行排列。那么,为什么要给大量文件添加数字排序呢? 首先,数字排序可以…

怎么一行代码都不写,就能给网站加速?

每个开发都会涉及到一个工作,就是网站开发。开发过程势必会涉及到需要对网站加速的部分,很多开发同学对此都很是头疼。 想让网站跑起来飞快,必须用上个网站加速神器,很多人都会推荐CDN。CDN的原理就是把网站文件提前搬到全国各地…

Mr_HJ / form-generator项目学习-增加自定义的超融组件(二)

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码: https://gitee.com/nbacheng/ruoyi-nbcio 演示地址:RuoYi-Nbcio后台管理系统 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码: https://gitee.com/nbacheng/n…

Docker之Dockerfile构建镜像

🎉🎉欢迎来到我的CSDN主页!🎉🎉 🏅我是君易--鑨,一个在CSDN分享笔记的博主。📚📚 🌟推荐给大家我的博客专栏《Docker之Dockerfile构建镜像》。🎯&…

如何使用LightPicture+cpolar搭建个人云图床随时随地公网访问

文章目录 1.前言2. Lightpicture网站搭建2.1. Lightpicture下载和安装2.2. Lightpicture网页测试2.3.cpolar的安装和注册 3.本地网页发布3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1.前言 现在的手机越来越先进,功能也越来越多,而手机…

C语言——小细节和小知识9

一、大小端字节序 1、介绍 在计算机系统中,大小端(Endianness)是指多字节数据的存储和读取顺序。它是数据在内存中如何排列的问题,特别是与字节顺序相关。C语言中的数据存储大小端字节序指的是在内存中存储的多字节数据类型&…

Android aar包集成与报错

Android Studio引用AAR的方式,分为gradle7.0之前与7.0之后 一、集成步骤 方法一: 1.将对应的xxx.aar包复制到项目的libs目录下(xxx代表需要引入的aar包名称) 2.然后在模块的build.gradle文件中配置implementation files(libs/lib…

【题解】—— LeetCode一周小结2

【题解】—— 每日一道题目栏 上接:【题解】—— LeetCode一周小结1 8.回旋镖的数量 题目链接:447. 回旋镖的数量 给定平面上 n 对 互不相同 的点 points ,其中 points[i] [xi, yi] 。回旋镖 是由点 (i, j, k) 表示的元组 ,其…

GO——flag

flag 一个包解析命令行参数参考:https://faberliu.github.io/2014/11/12/Golang-flag%E5%8C%85%E4%BD%BF%E7%94%A8%E8%AF%A6%E8%A7%A3-%E4%B8%80/ flag.StringVar 将flag绑定到string类型的变量上参考:https://books.studygolang.com/The-Golang-Stan…

【C语言基础】01环境安装 Windows下的CLion开发环境的安装

资源:放在评论区中 下载编译器mingw64 把压缩包拖拽到C盘根目录,一键解压压缩包,得到文件夹mingw64 安装CLion开发环境 点击CLion.exe,运行安装程序路径为默认安装,如需更改,注意路径中不要带有中文. Installation Options 全部勾选选择<我想要之后重启电脑>点击CLion…

Yii实现邮件发送

一&#xff1a;yiisoft/yii2-swiftmailer拓展安装 composer require yiisoft/yii2-swiftmailer github地址&#xff1a;https://github.com/yiisoft/yii2-swiftmailer 文档地址&#xff1a;https://www.yiichina.com/doc/guide/2.0/tutorial-mailing 二&#xff1a;开启邮箱…

Elasticsearch--Master选举

角色 主节点&#xff08;active master&#xff09;&#xff1a;一般指的是活跃的主节点&#xff0c;避免负载任务&#xff0c;主节点主要用来管理集群&#xff0c;专用master节点仍将充当协调节点 候选节点&#xff08;master-eligible nodes&#xff09;&#xff1a;默认具备…

2024年第02周农产品价格报告

一、摘要 农产品价格监测主要涉及对畜禽类产品、水产品、蔬菜类产品、水果类产品的价格&#xff0c;以周为单位&#xff0c;进行变化情况的数据监测。其中&#xff0c;蔬菜类产品共18种&#xff0c;分别为大白菜、西红柿、黄瓜、青椒、芹菜、土豆、白萝卜、茄子、豆角、胡萝卜…

HCIP的静态路由复习

VRP设置用户名密码登录 [R1]aaa [R1-aaa]local-user TMG password cipher huawei #创建一个名TMG的用户&#xff0c;密码huawei Info: Add a new user.[R1-aaa]local-user TMG privilege level 15 #设置权限 [R1-aaa]local-user TMG service-type terminal …

华媒舍:高效率的新闻资讯新闻媒体宣发套餐内容推广计划方案

怎样让自己的新闻资讯可以被大众孰知&#xff0c;变成了每一个新闻媒体宣发者一同存在的困难。下面我们就给大家介绍一套高效率的新闻资讯新闻媒体宣发套餐内容推广计划方案&#xff0c;致力于帮助新闻媒体宣发者提升宣发高效率&#xff0c;提高新闻资讯的传播性。 1.新闻媒体宣…

代码随想录 Leetcode1. 两数之和

题目&#xff1a; 代码&#xff08;首刷看解析 2024年1月15日&#xff09;&#xff1a; class Solution { public:vector<int> twoSum(vector<int>& nums, int target) {int another 0;unordered_map<int,int> hash;for(int i 0; i < nums.size();…