虹科教您 | 可实现带宽计量和延迟计算的时间敏感网络测试工具RELY-TSN-LAB操作指南与基本功能测试

1. RELY-TSN-LAB产品概述

时间敏感网络(TSN)能够合并OT和IT世界,这将是真正确保互操作性和标准化的创新性技术。这项技术的有效开发将显著降低设备成本、维护、先进分析服务的无缝集成以及减少对单个供应商的依赖。为了在这些网络中实现确定性,需要控制连接到网络的设备的延迟和带宽,并预测其在拥堵和错误情况下的行为。RELY-TSN-LAB是一种新概念的测试工具,可以在不同的测试条件下测量设备或TSN网段的延迟和带宽。设备如图1所示。
在这里插入图片描述

图1.RELY-TSN-LAB

2. 网络中的接入方式

开始使用RELY-TSN-LAB的第一步是将设备连接到LAN段或被测设备上。RELY-TSN-LAB对从端口0收到的帧执行所有操作,并将它们转发到端口1,端口2的情况也一样,但帧被转发到端口3。端口1和端口3收到的所有流量都分别传递给端口0和端口2,没有任何变化。在RELY-TSN-LAB中实现的框图如图2所示。

在这里插入图片描述
图2 RELY-TSN-LAB内部结构

PL部分:SoC的可编程逻辑部分,该部分由两个实验工具块组成,执行过滤、错误注入、带宽计量和延迟计量的功能。第一个Labtool通过port-0和port-1向LAN段或被测设备注入流量。第二个Labtool通过port-2和port-3工作,从局域网段或被测设备上获取流量。此外,这两个模块都连接到第三个模块,实现相应的同步,以达到时间标记的目的。

PS部分:SoC 的处理系统部分,该部分通过内部配置接口连接到 PL 部分。它还有一个称为服务端口的外部连接,可用于配置设备和检索存储的 .CSV 文件。 服务端口可以设置在与其他以太网端口不同的网络中。

建议的测试设置如图3所示。流量可以在进入被测网络之前以及在到达目的地之前再次被标记、测量或损坏。
在这里插入图片描述
图3. LAB接入网络方式

REL-TSN-LAB 对所有流量都是透明的(启用错误注入时除外)。仅添加了大约 1us 的延迟。 该延迟在两个方向上是对称的。这允许出于同步目的而在没有不对称的情况下测量路径延迟。

3. RELY-TSN-LAB基本功能测试

(1)网络拓扑模型

如下方的网络拓扑模型(见图4),这里利用流量生成器(GEN)作为数据源进行流量发送,PC作为目的地,中间以一个交换机(BRIDGE)模拟大规模中间节点,设备LAB则用于测量数据源到目的地之间的流量传输带宽以及延迟。
在这里插入图片描述
图4.测试的网络拓扑结构

注意:也可以用GEN剩余端口通过交换机向目的地PC发送多种不同类型的流量,通过配置过滤策略,根据不同的参数(IP 地址、以太网类型、内容等)限制测量不同流量的带宽和传输延迟。

(2)GEN定义传输的流量

使用流量生成器产生流量传输,以便在REC中捕获此流量类别,GEN传输参数设置如图5所示。
dst_MAC_address_lo: 该MAC地址被设备用作生成的任何出站帧的目标地址。这些位对应于MAC地址的低部分(位31至0)。设置为目标PC的0x5B893FBE。
dst_MAC_address_hi: 该MAC地址被设备用作生成的任何出站帧的目标地址。这些位对应于MAC地址的高部分(位47至32)。设置为目标PC的0x80FA。
Frame Size:它指定要传输的帧长。这个大小从60字节增加到1518字节(没有CRC字段)。定义为1500字节大小。
Ethertype: 它指定要传输的帧的以太类型。默认值为0x000088FB。
Percentage: 它以百分比为单位定义了传输速率,它的粒度为一个单位。定义为千兆的百分30,即300兆速率。
Frame_tx_enable:设置为1,以启用数据包传输。
在这里插入图片描述
图5. GEN流量参数设置

(3)LAB设备的带宽测量

图6显示每个TAP端口的状态,勾选“port enabled”对TAP端口进行启用。除此之外,每个端口还显示了PHY的测量速度。
在这里插入图片描述
图6.使能TAP端口

如图7所示,勾选“Bandwidth meter enabed”,开始启用LAB设备的带宽计量功能,能计算经过两个TAP之间的流量带宽大小。
在这里插入图片描述
图7 启用LAB的带宽计量

如图8所示,通过使用过滤器选择要在哪些帧上应用带宽计量功能,最多可以配置 4 个过滤器,每个过滤器都可以通过用户设置的 ID 来识别。 在其 ID 旁边,有一个计数器,用于测量与过滤器集匹配的帧数量。当相应的启用复选框被选中并按下应用更改按钮时,将应用过滤器。
注意:这使用全局过滤器(未进行任何过滤参数设置,只使能过滤器)
在这里插入图片描述
图8.启用LAB的带宽计量过滤器

带宽计量功能以及过滤器参数设置并启动后,如图9所示,在“BANDWIDTH METER”就可以看到TAP0和TAP1端检测出来的流量带宽,都是300M大小,符合流量生成器(GEN)设置的数据传输大小。
在这里插入图片描述

图9. TAP测量得到的带宽大小

设备的每个端口根据不同的标准记录发送和接收的帧。这些计数器是环绕式计数器并具有复位功能。当它们自然环绕、重置或重新启动设备时,它们可以归零。所有统计计数器都是只读的,因此对统计计数器的写入尝试将不成功。

在这里插入图片描述

为了检查目的地PC接收的流量是否有误,在PC端利用wireshark工具捕获传输过来的流量,如图10所示,通过对流量报文的解析以及带宽的I/O统计,对比GEN参数配置,捕获的流量与发送的流量保持一致,证明LAB设备在网络中充当一个透明设备的角色。
在这里插入图片描述
图10 .PC端捕获的传输流量

(4)LAB设备的延迟计算

如图11所示,定义将提取并存储在设备中的时间戳帧的两个段。
偏移量(offset):指定要存储帧字节的字节位置。
字节数(Number of bytes):指定要从指定偏移量存储的帧字节数。
在这里插入图片描述
图11.定义时间帧的提取字段

同理于带宽计量过滤器设置,如图12所示,帧时间戳同样具有过滤器设置,这里直接勾选不做任何过滤参数设置,使能一个全局过滤器。

在这里插入图片描述
图12.启用LAB的帧戳过滤器

如图13所示,勾选“Frame timestamper enabled”,开始启用LAB的延迟计算功能。并分别点击TAP下方的“Download capture life”开始捕获带有时间戳信息的帧,Web网页会下载带有.CSV后缀的文件,此文件用于计算TAP0和TAP1之间的网络拓扑的传输延迟。

在这里插入图片描述
图13.启用LAB的延迟计算功能

如图14所示,TAP0捕获的CSV文件,文件中有之前设置的每个帧的偏移字段,以及在开头当中这个帧捕获时所对应的时间戳信息,同理TAP1捕获的CSV文件也一样,延迟需要进行计算两个文件的信息。

在这里插入图片描述
图14.捕获的帧时间戳CSV文件

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

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

相关文章

Kotlin Android中错误及异常处理最佳实践

Kotlin Android中错误及异常处理最佳实践 Kotlin在Android开发中的错误处理机制以及其优势 Kotlin具有强大的错误处理功能:Kotlin提供了强大的错误处理功能,使处理错误变得简洁而直接。这个特性帮助开发人员快速识别和解决错误,减少了调试代…

12:STM32---RTC实时时钟

目录 一:时间相关 1:Unix时间戳 2: UTC/GMT 3:时间戳转化 二:BKP 1:简历 2:基本结构 三: RTC 1:简历 2: 框图 3:RTC基本结构 4:RTC操作注意 四:案例 A:读写备份寄存器 1:连接图 2: 步骤 3: 代码 B:实时时钟 1:连接图 2:函数介绍 3:代码 一:时间相关 1:Un…

Linux -- 使用多张gpu卡进行深度学习任务(以tensorflow为例)

在linux系统上进行多gpu卡的深度学习任务 确保已安装最新的 TensorFlow GPU 版本。 import tensorflow as tf print("Num GPUs Available: ", len(tf.config.list_physical_devices(GPU)))1、确保你已经正确安装了tensorflow和相关的GPU驱动,这里可以通…

【数据结构练习】链表面试题集锦二

目录 前言: 1.链表分割 2.相交链表 3.环形链表 4.环形链表 II 前言: 数据结构想要学的好,刷题少不了,我们不仅要多刷题,还要刷好题!为此我开启了一个必做好题锦集的系列,每篇大约5题左右。此…

“高级前端开发技术探索路由的使用及Node安装使用“

目录 引言1. Vue路由的使用2. VueNode.js的安装使用总结 引言 在当今互联网时代,前端开发技术日新月异,不断涌现出各种新的框架和工具。作为一名前端开发者,我们需要不断学习和探索新的技术,以提升自己的开发能力。本文将深入探讨…

【C# Programming】值类型、良构类型

值类型 1、值类型 值类型的变量直接包含值。换言之, 变量引用的位置就是值内存中实际存储的位置。 2、引用类型 引用类型的变量存储的是对一个对象实例的引用(通常为内存地址)。 复制引用类型的值时,复制的只是引用。这个引用非常小&#xf…

前后端分离毕设项目之产业园区智慧公寓管理系统设计与实现(内含源码+文档+教程)

博主介绍:✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌ 🍅由于篇幅限制,想要获取完整文章或者源码,或者代做&am…

短视频抖音账号矩阵系统源码开发者自研(四)

抖音是一款备受欢迎的短视频APP,拥有数亿的用户,其中包括了大量的粉丝。为了让更多的人能够发现和观看到你的视频,抖音SEO是必不可少的一环,特别是对于拥有企业或个人品牌的用户来说。在这个过程中,抖音SEO源码的开源部…

SQL注入脚本编写

文章目录 布尔盲注脚本延时注入脚本 安装xampp,在conf目录下修改它的http配置文件,如下,找到配置文件: 修改配置文件中的默认主页,让xampp能访问phpstudy的www目录,因为xampp的响应速度比phpstudy快得多&am…

Linux C 网络基础

为什么需要网络通信? 进程间通信解决的是本机内通信 网络通信解决的是任意不同机器的通信 实现网络通信需要哪些支持 1.通信设备:网卡(PC机自带); 路由器和交换机; 光纤…

在Scrapy框架中使用隧道代理

今天我要和大家分享一些实战经验,教你如何在Scrapy框架中使用隧道代理。如果你是一个热爱网络爬虫的开发者,或者对数据抓取和处理感兴趣,那么这篇文章将帮助你走上更高级的爬虫之路。 首先,让我们简单介绍一下Scrapy框架。Scrapy…

【计算机网络】——应用层

// 图片取自王道 仅做交流学习 一、基本概念 应用层概述 协议是 网络层次模型 中多台主机之间 同层之间进行通信的规则。是一个水平概念 垂直空间上,向下屏蔽下层细节,向上提供服务接入,多台主机之间同层之间形成一条逻辑信道。 应用层的…

编译ctk源码

目录 前景介绍 下载The Common Toolkit (CTK) cmake-gui编译 vs2019生成 debug版本 release版本 前景介绍 CTK(Common Toolkit)是一个用于医学图像处理和可视化应用程序开发的工具集,具有以下特点: 基于开源和跨平台的Qt框…

Spring 6.0 新特性

文章目录 Spring的发展历史AOTGraalVMSpringBoot实战AOTRuntimeHints案例分析RuntimeHintsRegistrar SpringBoot中AOT核心代码 Spring的发展历史 AOT Spring 6.0的新特性Ahead of Time(AOT)编译是一种技术,可以提前将Spring应用程序编译成原…

【SpringCloud】微服务技术栈入门1 - 远程服务调用、Eureka以及Ribbon

目录 远程服务调用RestTemplate Eureka简要概念配置 Eureka 环境设置 Eureka ClientEureka 服务发现 Ribbon工作流程配置与使用 Ribbon饥饿加载 远程服务调用 RestTemplate RestTemplate 可以模拟客户端来向另外一个后端执行请求 黑马给出的微服务项目中,有两个 …

yolov5使用最新MPDIOU损失函数,有效和准确的边界盒回归的损失,优于GIoU/EIoU/CIoU/EIoU(附代码可用)

文章目录 1. 论文1.1. 主要目的1.2. 设计思路2 代码3.总结1. 论文 MPDIoU: A Loss for Efficient and Accurate Bounding Box Regression (一个有效和准确的边界框损失回归函数) 论文地址 1.1. 主要目的 当预测框与边界框具有相同的纵横比,但宽度和高度值完全不同时,大多数…

20230918使用ffmpeg将mka的音频转为AAC编码以便PR2023来识别

20230918使用ffmpeg将mka的音频转为AAC编码以便PR2023来识别 2023/9/18 20:58 ffmpeg -i 1.mka -acodec aac 1.mp4 ffmpeg -i 1.mka -vn -c:a aac 2.aac ffmpeg -i 1.mka -vn -c:a aac 2.MP4 ffmpeg mka 转 aacmp4 https://avmedia.0voice.com/?id42526 用ffmpeg将mka格式转化…

云端IDE的技术选型1

背景 考虑到以下几点,准备给低代码平台开发一套云端的IDE: 桌面端IDE:vs code 或 idea,都有需要开发人员安装ide,以及配置环境很多时候,配置开发环境是个非常曲折过程,经常出现版本不匹配&…

【分布式计算】副本数据Replicated Data

作用:可靠性、高性能、容错性 问题:如何保持一致、如何更新 问题:存在读写/写写冲突 一个简单的方法就是每个操作都保持顺序,但是因为网络延迟会导致问题 Data-centric models: consistency model?? ??? 读取时&#xff0c…

深入理解WPF中MVVM的设计思想

近些年来,随着WPF在生产,制造,工业控制等领域应用越来越广发,很多企业对WPF开发的需求也逐渐增多,使得很多人看到潜在机会,不断从Web,WinForm开发转向了WPF开发,但是WPF开发也有很多…