| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> AFDX(ARINC664)的网络协议——MAC层 -> 正文阅读 |
|
[网络协议]AFDX(ARINC664)的网络协议——MAC层 |
上一篇:AFDX的概述与系统组成_Easy Code的博客-CSDN博客介绍了AFDX系统网络组成,主要包括端系统、AFDX交换机、虚拟链路等。这里重点回顾下端系统: 端系统(End System, ES)的主要功能是提供一些服务,它们保证到某个分区(partition)软件的安全可靠的数据互换。 服务质量(Quality of Service, QoS)提供一种方法进行流量分类,并且确保特定类别的流量将总是以授权给它们的服务等级通过网络,而不用考虑争用的要求。 对于飞机网络(Aircraft Network),不需要区别对待几种类型或流量等级。每个网络传输请求必须得到服务,而不考虑数据类型;最大的网络传输延迟(也被称为“端到端时延”)必须得到保证。因此, 飞机网络所需的仅有的服务等级就是保证服务。 保证服务提供一种稳固的、数学可证明的帧端到端传输延迟的上界。所以,对有界延迟的保证意味着在链路层次保证一定量的带宽。 这样,保证服务提供具有上界的延迟和固定的带宽,在一个发送节点与一个或多个接收节点之间得到一条逻辑上的开放性连接。属于同一个连接的帧定义为一条“流”(flow)。 “虚拟链路”(Virtual Link,VL)一个端系统可以被设计为仅接收VL而不发送VL,或者与之相反(一个ES能够没有发起或接收的VL)。通过VL进行端系统之间以太网帧的互换。 在航空电子网络中任意一个VL都只有唯一的一个源端系统。 在ES支持的虚拟链路中,ES应该利用可用带宽提供逻辑隔离。不论某个分区试图在一条VL上得到 怎样的带宽利用率,其它任何的VL的可用带宽不受影响。 知识点: 虚拟链路的处理是通过一种流量控制机制获得的,这种机制将属于这个ES的不同的数据源的数据流 规进行规整,这种机制在网络层次提供的分区管理(partitioning) 对于每条虚拟链路,不论其他虚拟链路是如何使用带宽的,端系统的通信协议栈应该保证它所分配 的带宽,目的在于在网络层次上保持分区之间的隔离。一条虚拟链路不应被两个或两个以上的源分区所 共享。 流/流量控制在每个端系统的输出端,与某条特定的虚拟链路相关联的帧的流量用两个参数来描述:带宽分配间隔(Bandwidth Allocation Gap,BAG)和抖动(Jitter)。 如果经过调度器的帧没有抖动,BAG反映了在同一个VL中两个相邻的帧的起始二进制位之间的最小时间间隔 VL中最大带宽的数据流的BAG VL中非最大带宽的数据流的BAG 抖动(Jitter)是最大延迟和最小延迟之间的差异,即一帧从VL上的源到目的地所需最长时间与一帧所需的最短时间之间的差异。 为了保证每条VL的BAG,帧的流量被规整。 虚拟链路流的规整 调度在调度器的输出端,对于给定的某个虚拟链路,帧能够在某个有界的时间间隔中出现。这个时间间 隔被定义为最大允许抖动(maximum admissable jitter)。该抖动是由调度算法引起的,而不是由流量本 身造成的 对于最大带宽的数据流的抖动效应 端系统应该以每个VL为基本单元对发送的数据进行规整,流量规整器(流量整形功能)应该对流进行整形,使得在每个BAG间隔中 (以毫秒为单位),发送的帧的数目不会多于一个。 知识点 流量整形功能的目的是通过将帧分隔开,用以限制虚拟链路上瞬时的帧速率。规整器负责按照BAG控制分给虚拟链路的带宽。 端系统在发送和接收端都应该能够容纳直到1518字节的VL帧。 对于每个VL,端系统应该通过端系统配置表获得一个BAG值。 知识点 ES的流量整形功能应该能够在1ms到128ms的范围内控制BAG的值。如果一个分区以低于128ms的频度发出数据,就应该用128作为BAG的值。 MAC寻址虚拟链路应该仅被MAC目的地址识别并且AFDX帧的MAC源地址应该是单播地址,用 来识别物理的以太网接口。在AFDX帧中的MAC目的地址应该是组(Group)地址和本地管理(Locally Administered)地址, 并且应该与下面的格式兼容。 MAC源地址应该是与IEEE 802.3兼容的独立的和本地管理的地址。 固定域被设置为“0000 0010 0000 0000 0000 0000”。 第一个字节的最低二进制位表明这是个体地址(等于0)。 第一个字节的次低二进制位表明这是局部管理地址(等于1)。 User_Defined_ID(用户定义标识符)是一个单独的16-bit域。系统集成者应该合理地使用它,用以 为每个在网络上IP可寻址的主机给定一个独一无二的并且有含义的IP地址。 Interface_ID(接口标识符),表明以太网MAC控制器连接到哪个AFDX的冗余网络。 冗余管理AFDX提供的另一个关键概念或关键特性是冗余的概念,每个终端系统都通过冗余网络进行通信,因此网络中的帧都被复制,您基本上有两个独立的网络,每个端系统同时在两个网络A和网络B上发送数据,并且在接收器处的通信栈(低于IP层)采取“先到有效者胜出”的策略,这意味着从其中一个网络中得到带有下一个有效顺序号的第一个帧将被接受,并向上通过通信栈到达接收分区。而带有这个顺序号的第二个帧被收到时,它将被地丢弃,确保应用程序仅收到每条消息的一个实例。 端系统地完整性检查和冗余管理 RM(Redundancy Management,冗余管理)被置于IC(Integrity Checking, 完整性检查)之后。在网络操作没有故障的情况下,IC仅仅是将它从网络中收到的帧传递到RM。AFDX 冗余管理的功能仅仅是去除那些冗余复制的帧。 在最小和最大长度的帧中序列号的位置 完成重复帧的识别,通过序列号,所以arinc664的另一个特殊功能是对于每条VL,发送端系统都会在发送帧的最后一个字节处加入一个序列号,接收器再次使用它来识别重复的帧。帧顺序号的长度应该是8位比特,取值范围是0到255。 冗余管理举例例1:非正常发送帧 冗余管理结果:网络B发送一个非正常帧,非正常帧不被转发到分区。 例2:一个帧丢失 冗余管理结果:因为网络A中帧“A4”丢失,在网络B中到达的帧被接收。 例3:卡塞帧 冗余管理结果:因为完整性检查,网络B的帧没有被转发到IP层,网络A中到达的帧被接收。 持续分享工业领域相关知识: 易择扣得EasyCode专注于工业领域智能化、自动化研发。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 6:30:41- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |