以太网收发及TSN概述

一、概述

TSN(Time-Sensitive Networking)时间敏感网络,即在非确定性的以太网中实现确定性的最小时间延时的协议族,是IEEE 802.1工作组中的TSN工作组开发的一套协议标准,定义了以太网数据传输的时间敏感机制,为标准以太网增加了确定性和可靠性,以确保数据实时、确定和可靠地传输。

TSN是符合IEEE802.1Q标准的VLAN,在标准的以太帧中插入4个字节长度的VLAN tag。TSN通过VLAN tag中的PCP(Priority Code Point)和VID(VLAN ID)定义流的不同优先级。

 

TSN VLAN tag各字段的含义如下:

1)Tag Protocol Indentifier:16bit长度,标签协议识别,标识TSN网络,数值为0X8100。

2)Priority Code Point:3bit长度,优先级代码,标识流量优先级,3位PCP定义了8个优先级,传输类型对应关系参见:

表1:TSN优先级与传输类型的对应关系

3)Drop Eligible Indicator:1bit长度,丢弃标识位,对于低QoS要求的数据可置位,网络拥塞时可丢弃,以确保高优先级数据的QoS。

4)VLAN Identifier(VID):12bit长度,VLAN网络的识别号。VID=0用于识别帧优先级,VID=FFF作为预留,其余值用于标识VLAN。

TSN需要硬件的支持配合才能实现,不能单纯在软件中实现,需要硬件来加速。TSN主要用于解决以太网网络的确定性及QoS问题

1.1 TSN的组成

TSN主要由5部分组成:时间同步、延时控制、安全、可靠性、资源管理,其中每个部分所包含的协议组成如下:

 其中已发布的标准如下:

部分继承AVB的标准(Referred to AVB standards)如下:

 以上部分不是所有协议都需要去了解,我们只需要学习一些关键的协议标准:

  • 802.1 AS——时间同步协议

  • 802.1 Qbv——时间感知整形器(Time Aware Shaper)

  • 802.1 Qav——基于信用的整形器(Credit Based Shaper)

其中流量整形(Qbv、Qav)用于控制通信的带宽和延时,Qbv用于塑造每种流量类的时隙,Qav用于限制每种流量类的带宽(解决突发问题)。

那么,在以太网的接受和发送过程中,TSN在其中充当怎样的角色,又是如何工作的呢?下面讲述一下关键协议在收发过程中充当的角色。

1.2 接收过程简述

1.3 发送过程简述

发送过程如下图所示。在单port发送过程中,Tx队列数量=DMA通道数量,因此DMA通道ID与队列ID是一一对应的,DMA0对应的队列0,以此类推。在队列中,通过MTL_Txn_Operation_Mode寄存器将一个队列映射到一个流量类,可以将一个或多个队列映射到一个流量类,8个队列,因此最多对应8个流量类。通过MTL_TCn_Quantum_Weight寄存器来编程每个流量类所需的带宽。

DMA的发送与接收都需要仲裁,根据DMA的通道号不同而确定,执行的是固定优先级仲裁,以下是发送的DMA通道优先级方案。

注:WRR加权循环仲裁针对的是多通道DMA。

可以为所有队列禁用CBS算法,也可以为一部分较低优先级的队列禁用CBS算法(注:要禁用就禁用更低id号的优先级队列,即不能在比禁用的这个优先级队列id更低的id队列中启用的情况),禁用CBS算法的通道默认使用SP算法,通过配置,也可以配置为WRR算法。

1.4 算法类型简述

  • 1)基于信用的整形算法——credit-based shaper algorithm(CBS):Qav中的算法,可用于传输通道

      基于信用的整形算法,传输条件为:队列包含多个数据包、队列的信用是正的。

  • 2)严格的优先级算法——Strict priority algorithm(SP):Qav中的算法,可用于传输通道

  • 3)加权循环仲裁算法—— Weighted Round Robin arbitration(WRR):以太网中的DMA仲裁

未完待续。。。

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

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

相关文章

加量不加价,比亚迪驱逐舰05焕发新生,冠军加新120km豪华版来袭

根据最新消息,比亚迪驱逐舰05冠军版推出了一款崭新的豪华车型,其预售价为11.98万元。该车具备出色的续航性能,最高续航里程可达1200公里,并且支持17千瓦直流快速充电、VTOL移动电站以及NFC全场景数字钥匙。 此外,该车…

Linux 目录结构

初学Linux,首先需要弄清Linux 标准目录结构 / root --- 启动Linux时使用的一些核心文件。如操作系统内核、引导程序Grub等。home --- 存储普通用户的个人文件 ftp --- 用户所有服务httpdsambauser1user2bin --- 系统启动时需要的执行文件(二进制&#x…

8月9日上课内容 nginx负载均衡

负载均衡工作当中用的很多的,也是面试会问的很重要的一个点 负载均衡:通过反向代理来实现(nginx只有反向代理才能做负载均衡) 正向代理的配置方法(用的较少) 反向代理的方式:四层代理与七层代…

解数独(Java)

题目链接: 力扣 题目详情: 37. 解数独t编写一个程序,通过填充空格来解决数独问题。 数独的解法需 遵循如下规则: 数字 1-9 在每一行只能出现一次。数字 1-9 在每一列只能出现一次。数字 1-9 在每一个以粗实线分隔的 3x3 宫内只…

springboot启动忽略某些类

springboot启动忽略某些类 描述解决方案单拉一个提交,把所有的涉及kafka消费的都不注入容器通过配置ComponentScan的excludeFilters配置了不生效后续处理改之前改之后解释 总结 拆分环境 感触解决实现demo参考 描述 目前我这的开发环境和测试环境数据库是两份&#…

Vue 本地应用 记事本 v-on v-model v-for使用

新增功能 vue当中如何生成列表结构?使用的指令是v-for,同时要有一个可以生成列表的数据,常用的是数组。记事本里面的内容并不复杂,所以这里使用字符串数组就行了。 获取用户输入的内容使用绑定v-model,双向数据绑定&a…

【Vue+Element-plus】记录后台首页多echart图静态页面

一、页面效果 二、完整代码 Index.vue <template><div><div><DateTime /><!-- {{username}} --></div><el-row :gutter"20"><el-col :span"8"><div class"grid-content bg-purple"><P…

聚焦智慧医疗-RK3566智能主板助力POCT领域

POCT又称即时检验&#xff0c;是IVD(体外诊断)行业的一个细分领域&#xff0c;是指在采样现场即刻进行的快速诊断&#xff0c;省去了标本在实验室检验的复杂处&#xff0c;利用便携式分析仪器及配套试剂快速得到检测结果的一种检测方式。常见的POCT设备有生化分析仪、免疫分析仪…

MySQL及SQL语句(3)

MySQL及SQL语句(3) 文章目录 MySQL及SQL语句(3)一、多表查询1.1 准备sql1.2 笛卡尔积1.3 多表查询的分类&#xff1a;内连接查询外连接查询子查询多表查询练习 二、事务2.1 事务的基本介绍概念操作实例事务提交的两种方式 2.2 事务的四大特征原子性持久性隔离性一致性 2.3 事务…

什么是Linux,如何在Windows操作系统下搭建Linux环境,远程连接Linux系统

文章目录 什么是LinuxLinux的诞生及发展为什么要学习LinuxLinux内核Linux发行版什么是虚拟机如何在VMware虚拟机中搭建Linux系统环境远程连接 Linux 系统Linux 帮助网站 什么是Linux Linux是一套免费使用和自由传播的类Unix操作系统&#xff0c;是一个基于POSIX和UNIX的多用户…

SpringBoot Web开发静态资源处理

Web开发探究 简介 其实SpringBoot的东西用起来非常简单&#xff0c;因为SpringBoot最大的特点就是自动装配 使用SpringBoot的步骤&#xff1a; 1、创建一个SpringBoot应用&#xff0c;选择我们需要的模块&#xff0c;SpringBoot就会默认将我们的需要的模块自动配置好 2、手动…

爬虫获取电影数据----以沈腾参演电影为例

数据可视化&分析实战 1.1 沈腾参演电影数据获取 文章目录 数据可视化&分析实战前言1. 网页分析2. 构建数据获取函数2.1 网页数据获取函数2.2 网页照片获取函数 3. 获取参演影视作品基本数据4. 电影详细数据获取4.1 导演、演员、描述、类型、投票人数、评分信息、电影海…