航空电子设备中的TSN通讯架构—直升机
前言
以太网正在迅速取代传统网络,成为航空电子设备和任务系统的核心高速网络。本文提出了以太网时间敏感网络(TSN)在航空电子设备上应用的技术优势问题。在实际应用中,TSN已成为一个具有丰富的机制和协议的工具箱,可满足与时间和可靠性相关的QoS要求,因此TSN是汽车、工业4.0和电信等各应用领域中有线高速通信的重要技术。在此背景下,本案例主要呈现TSN定时QoS机制在直升机航空电子设备和任务系统中的应用。
案例概述
本案例研究是基于空客直升机公司提供的TSN通信架构原型案例。案例的第一部分主要阐述与直升机航空电子设备和任务网络相关的TSN标准,尤其是数据传输的实时性。第二部分是评估在下一代系统子集的现实网络中,TSN定时QoS核心机制如何提高在调度最大流数量过程中的效率。
一、以太网TSN定时QoS机制与标准
具有QoS保证的实时通信对于一些航空航天嵌入式系统(如直升机)来说是必不可少的。IEEE 802.1 TSN TG(时间敏感网络技术小组),开发了与时间和可靠性相关的QoS要求的技术。IEEE 802.1协议簇(WG)为交换以太网制定标准。这些标准中定义的机制和协议依赖于数据链路层提供的服务,如时间同步、网络配置和管理以及QoS等特性。本案例中将主要探讨网络的实时性要求以及分析提供定时QoS的TSN机制。
IEEE802.1Q(TSN)中的定时QoS
实时通信系统中最重要的要求之一是保证延迟有边界。我们将帧从发送方通过网络到接收方所花费的时间称为延迟。在有实时需求的网络中,比如直升机,数据流的延迟通常有一个最大容忍值,也就是说,它们会受到截止时间的限制。
802.1Q中的定时QoS:严格的优先等级
流量优先级映射到流类别(TC)一共有8个等级,然后根据流的类别选择流进行传输。
+充分的优先级分配能保证按时完成任务。
–不能改变流量阻塞的损失。
–延迟可能不够低。
802.1Q中的定时QoS:基于信用的整形器-CBS
基于信用的传输管理:
• 仅当信用值>0时才允许传输。
• 当前正在传输的Traffic Class(TC)的信用值在传输时会减少,其他未传输的Traffic Class(TC)信用值会增加。
+充足的配置能保证按时完成任务。
+防止低优先级流量的阻塞
–延迟可能不够低。
802.1Q中的定时QoS:调度流量
为每个TC分配一个逻辑门。仅当门打开时才允许传输。门的打开和关闭由预先定义的时间表控制。
+充足的调度降低延迟和抖动
–生成正确的调度表可能是一个复杂的算法问题
–带宽可能未得到充分利用
TC#3的帧已准备好传输并且其门已打开,但没有足够的时间来传输完整的消息
802.1Q中的定时QoS:帧抢占
较低优先级的帧可以被较高优先级的帧抢占。
TC#3的帧已准备好传输并且其门已打开,但没有足够的时间来传输完整的消息
+可以改善延迟
+与以下一起使用预定流量优化带宽利用率
–硬件实施并不简单
总结
航空航天TSN配置文件
IEEE802.1和SAE航空电子网络AS-1A2的联合工作。TSN配置文件:选择机制和配置以满足用例要求。目前处于开发的早期阶段。
该标准为确定性IEEE802.3以太网的设计者、实施者、集成商和认证机构指定了配置文件,支持广泛的航空航天机载应用,包括那些需要安全性、高可用性性和可靠性、可维护性和有限延迟的应用。
二、TSN调度机制的效率
本案例下半部分主要与任务方面有关。案例中评估了不同TSN机制在网络负载增长时满足时序约束的相对能力,还量化了不同调度解决方案的内存使用情况,包含1000个流的特定应用程序。所有实验均使用软件RTaW‑Pegase进行。
机载TSN网络模型
该通信体系结构由两个在多个终端系统上相互连接的子网络组成。
上层网络:具有关键流的核心航空电子设备→研究重点
下层网络:主要是任务
定量评估
• 技术:模拟、最坏情况分析、设计空间探索系统、合成数据
• 候选TSN调度解决方案:整形、时间触发传输、抢占、手动(“用户优先级”)和自动流优先级分配(“简明优先事项”)
过载分析:在某些链路出现过载之前有多少个流?
该通信体系结构由两个在多个终端系统上相互连接的子网络组成。
上层网络:具有关键流的核心航空电子设备→研究重点
• 超过7000个流,至少一条链路过载的概率急剧增加 →网络容量上限
• 表明网络容量很重要,截止日期等于周期
拓扑压力测试®(TST):
上图为使用软件RTaW-Pegase执行拓扑压力测试®(TST)获得的数据。在TSN解决方案中成功调度一定数量的流的概率,具有7000个流的系统有89%的概率可通过CP进行调度。
• Concise Priorities(CP)的性能接近最佳,因为它调度了99%的非过载配置
→整形、时间触发传输或帧抢占没有增益
• FIFO调度优于“用户优先级”,后者利用了6个优先级!最大限度内存使用:考虑中等规模的1000个流网络
最大限度内存使用
考虑中等规模的1000个流网络
• 整形(此处由软件实现的预整形)在本案例研究中将平均内存使用量减少了80%
• 每个开关的总内存高达 568KB未整形 168KB带整形
• 优先级的设置不会减少FIFO存储器使用内存
• CBS在记忆性方面也表现得非常好。此处未使用CBS ,因为优先级分配算法未针对CBS进行优化。
结论
• 并非所有系统都涉及到TSN中的所有标准(如本案例研究所示)
• 战略位置好的策略匹配机制能提升成本效益
• TSN策略机制的选择:关键影响因素有哪些?
- 更高优先级的流量→可以选择流量整形
- 较低优先级流量→可以选择由时间触发的流量传输或抢占
- 相同优先级流量→可以设置更多优先级,更好的优先级分配和流量整形
• 在本案例中,优先级是计时所需的唯一QoS机制
• 内存和时间一样都会对流量产生限制,流量整形确实是有效的
• 非纯粹的技术问题,例如重量、成本和认证工作等也要考虑在内
了解相关技术信息及商务服务,请访问http://www.softtest.cn/留言,或按以下方式联系旋极智能:
获取更多资讯▼关注我们
相关文章:

航空电子设备中的TSN通讯架构—直升机
前言 以太网正在迅速取代传统网络,成为航空电子设备和任务系统的核心高速网络。本文提出了以太网时间敏感网络(TSN)在航空电子设备上应用的技术优势问题。在实际应用中,TSN已成为一个具有丰富的机制和协议的工具箱,可满足与时间和可靠性相关…...

elment-ui中使用el-steps案例
el-steps案例 样式 代码 <div class"active-box"><div class"active-title">请完善</div><el-steps :active"active" finish-status"success" align-center><el-step title"第一步" /><…...

FPGA解析串口指令控制spi flash完成连续写、读、擦除数据
前言 最近在收拾抽屉时找到一个某宝的spi flash模块,如下图所示,我就想用能不能串口来读写flash,大致过程就是,串口向fpga发送一条指令,fpga解析出指令控制flah,这个指令协议目前就是: 55 AA …...

msvcp120.dll丢失的解决方法,分享三种快速修复的方法
今天,我将和大家分享一个关于电脑问题的解决方法——msvcp120.dll丢失的解决方法。希望对大家有所帮助。 首先,让我们来了解一下msvcp120.dll文件。msvcp120.dll是Microsoft Visual C 2010 Redistributable Package的一个组件,它包含了一些运…...

mysql 8.0 窗口函数 之 序号函数 与 sql server 序号函数 一样
sql server 序号函数 序号函数 ROW_NUMBER() 顺序排序RANK() 并列排序,会跳过重复的序号,比如序号为1,1,3DENSE_RANK() 并列排序,不会跳过重复的序号,比如 序号为 1,1,2 语法结构…...

fastgpt构建镜像
1.把client目录复制到服务器 .next和node_modules文件夹不用上传到服务器 在服务器目录运行 docker build -t fastgpt:1.0.3 . 构建服务 再运行 docker ps 就可以看到容器了...
Git笔记--分支常用命令
目录 1--git branch -v 2--git branch 3--git checkout 4--git merge 1--git branch -v git branch -v git branch -v 用于查看分支版本; 2--git branch git branch xxxxx # xxxxx表示分支名 git branch 用于创建分支; 3--git checkout git check…...
常见设计模式学习+面试总结
一 设计模式简介 二 面试总结 1 什么是单例模式?都有哪些地方用到单例? 内存中只会创建且仅创建一次对象的设计模式,保证一个类只有一个实例,并且提供一个访问该全局访问点。 应用场景: 网站的计数器,一般…...
sql解决取多个截至每个月的数据
问题:需要查询1月、1-2月、1-3月… 1-12月,分区间的累计数据,在同一个sql语句里面实现。 多个分开查询效率不高,并且数据手动合并麻烦。 with t1 as ( SELECT *,CASE WHEN insutype 390 THEN 居民 ELSE 职工 END 人员类别,SUBST…...

数据采集:selenium 获取 CDN 厂家各省市节点 IP
写在前面 工作需要遇到,简单整理理解不足小伙伴帮忙指正 对每个人而言,真正的职责只有一个:找到自我。然后在心中坚守其一生,全心全意,永不停息。所有其它的路都是不完整的,是人的逃避方式,是对…...

【el-tree】树形组件图标的自定义
饿了么树形组件的图标自定义 默认样式: 可以看到el-tree组件左侧自带展开与收起图标,咱们可以把它隐藏:: .groupList {::v-deep .el-tree-node { .el-icon-caret-right {display: none;} } } 我的全部代码 <div class"groupList"><el…...

UltralSO软碟通制作Linux系统盘
第一步: 下载镜像 阿里云下载地址:https://mirrors.aliyun.com/centos-vault/ 按照需求选择系统版本,我这要求安装CentOS7.5的系统,我以CentOS7.5为例 第二步: 下载UltralSO软件 官网下载地址:https://cn.…...
yolov8训练心得 持续更新
目录 优化器 lion优化器,学习率0.0001,训练效果: 学习率衰减 600个batch衰减0.7,发现效果较好...

超越界限:大模型应用领域扩展,探索文本分类、文本匹配、信息抽取和性格测试等多领域应用
超越界限:大模型应用领域扩展,探索文本分类、文本匹配、信息抽取和性格测试等多领域应用 随着 ChatGPT 和 GPT-4 等强大生成模型出现,自然语言处理任务方式正在逐步发生改变。鉴于大模型强大的任务处理能力,未来我们或将不再为每…...

Compose - 基本使用
一、概念 1.1 Compose优势 由一个个可以组合的Composable函数拼成界面,方便维护和复用。布局模型不允许多次测量,提升了性能。Compose可以和View互操作(相互包含对方)。 1.2 声明式UI APP展示的数据绝大多数不是静态数据而是会…...

Unity3D Pico VR 手势识别
本文章使用的 Unity3D版本: 2021.3.6 , Pico SDK 230 ,Pico OS v.5.7.1 硬件Pico 4 Pico SDK可以去Pico官网下载SDK 导入SDK 第一步:创建Unity3D项目 第二步:导入 PICO Unity Integration SDK 选择 Windows > Package Manager。 在 Packag…...

【docker】运行registry
registry简介 Docker registry是docker镜像仓库的服务,用于存储和分发docker镜像。 Docker registry主要特点和功能: 存储docker镜像:提供持久化存储docker镜像的功能,存储镜像的各个layer。 分发镜像:拉取和推送镜像的去中心化存储和分发服务。 支持版本管理:给镜像打标签…...

java八股文面试[Spring]——如何实现一个IOC容器
什么是IOC容器 IOC不是一种技术,只是一种思想,一个重要的面向对象编程的法则,它能指导我们如何设计出松耦合,更优良的程序。传统应用程序都是由我们在类内部主动创建依赖对象,从而导致类与类之间高耦合,难于…...

Redis 列表 | Navicat
在最近的博客 文章 中,我们已经了解了 Redis 的六种数据类型。其中,Redis 列表(List)包含一组字符串,他们按照被添加的顺序进行排序。本文将就列表数据类型进行展开介绍,并且重点介绍一些主要的命令来管理它…...

【校招VIP】测试专业课之TCP/IP模型
考点介绍: 大厂测试校招面试里经常会出现TCP/IP模型的考察,TCP/IP协议是网络基础知识,但是在校招面试中很多同学在基础回答中不到位,或者倒在引申问题里,就丢分了。 『测试专业课之TCP/IP模型』相关题目及解析内容可点…...

XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...

【Oracle APEX开发小技巧12】
有如下需求: 有一个问题反馈页面,要实现在apex页面展示能直观看到反馈时间超过7天未处理的数据,方便管理员及时处理反馈。 我的方法:直接将逻辑写在SQL中,这样可以直接在页面展示 完整代码: SELECTSF.FE…...

聊聊 Pulsar:Producer 源码解析
一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台,以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中,Producer(生产者) 是连接客户端应用与消息队列的第一步。生产者…...

微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...

视觉slam十四讲实践部分记录——ch2、ch3
ch2 一、使用g++编译.cpp为可执行文件并运行(P30) g++ helloSLAM.cpp ./a.out运行 二、使用cmake编译 mkdir build cd build cmake .. makeCMakeCache.txt 文件仍然指向旧的目录。这表明在源代码目录中可能还存在旧的 CMakeCache.txt 文件,或者在构建过程中仍然引用了旧的路…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析
Linux 内存管理实战精讲:核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用,还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...
Kubernetes 网络模型深度解析:Pod IP 与 Service 的负载均衡机制,Service到底是什么?
Pod IP 的本质与特性 Pod IP 的定位 纯端点地址:Pod IP 是分配给 Pod 网络命名空间的真实 IP 地址(如 10.244.1.2)无特殊名称:在 Kubernetes 中,它通常被称为 “Pod IP” 或 “容器 IP”生命周期:与 Pod …...

论文阅读:LLM4Drive: A Survey of Large Language Models for Autonomous Driving
地址:LLM4Drive: A Survey of Large Language Models for Autonomous Driving 摘要翻译 自动驾驶技术作为推动交通和城市出行变革的催化剂,正从基于规则的系统向数据驱动策略转变。传统的模块化系统受限于级联模块间的累积误差和缺乏灵活性的预设规则。…...
c# 局部函数 定义、功能与示例
C# 局部函数:定义、功能与示例 1. 定义与功能 局部函数(Local Function)是嵌套在另一个方法内部的私有方法,仅在包含它的方法内可见。 • 作用:封装仅用于当前方法的逻辑,避免污染类作用域,提升…...