基于TSN的实时通信网络延迟评估技术
论文标题:A TSN-based Technique for Real-Time Latency Evaluation in Communication Networks
作者信息:
- Alberto Morato, Claudio Zunino, Manuel Cheminod, Stefano Vitturi,来自意大利国家研究委员会,CNR-IEIIT。电子邮件: {alberto.morato, claudio.zunino, manuel.cheminod, stefano.vitturi}@ieiit.cnr.it
- Federico Tramarin,来自意大利摩德纳大学“恩佐·费拉里”工程学院。电子邮件: federico.tramarin@unimore.it
论文出处:2024 IEEE International Instrumentation and Measurement Technology Conference (I2MTC)
摘要
实时网络和软件定义网络(SDN)在现代通信系统中扮演着关键角色,支持视频会议、在线游戏、VoIP通话、虚拟现实(VR)系统和工业4.0自动化等应用。这些应用需要低且可预测的延迟来确保实时互动性、响应性和不间断的性能。在动态网络环境中实现低且可预测的延迟是具有挑战性的,因为网络拓扑、流量负载和连接设备的变化等因素都会影响延迟。此外,网络协议和设备(如交换机和路由器)引入了额外的延迟。SDN通过允许基于各种标准的动态控制通信路径,增强了对时间敏感应用的性能。本文提出了一种新的测量方法,通过利用Linux内核中嵌入的时间敏感网络(TSN)特性和工具,轻松评估延迟。我们的方法能够准确捕获网络延迟,无论工作负载、配置和计算能力如何。
关键词
实时网络、软件定义网络(SDN)、低延迟、时间敏感网络(TSN)、动态网络环境、延迟测量方法
第一节 引言
实时网络和SDN已成为现代通信和数据交换系统的关键组成部分,支持多种应用,如视频会议、在线游戏、VoIP通话、虚拟现实(VR)系统和工业4.0自动化。这些应用共同的特点是需要低且可预测的延迟来确保实时互动性、响应性和不间断的性能。然而,确保这一特性并非易事。这些网络可以被描述为动态网络环境,其中网络拓扑、流量负载和连接设备可能会不断变化。在这样的环境中,网络延迟不仅受到通信节点之间物理距离的影响,还受到网络拓扑、流量负载和路由策略的影响。此外,网络协议和网络设备,如交换机和路由器,引入了额外的延迟。幸运的是,现代通信网络,包括实时网络,可以与SDN结合,允许根据各种标准动态控制通信路径,包括延迟。在这种情况下,SDN使得动态网络配置成为可能,并提高了对时间敏感应用的性能。
第二节 问题分析
评估通信网络的真实延迟确实是一个挑战性的任务,因为它受到多个因素的影响。这些因素包括网络拓扑和流量负载,以及用于测量的技术和探针的位置,以测量帧传输和接收之间的经过时间。在没有时间敏感网络(TSN)特性的传统设备中,为了评估网络延迟,可以采用简单的方法来测量两个平台的系统时钟(SYS clock)之间的经过时间。换句话说,在传输帧时,将当前传输时间戳从SYS时钟嵌入到帧中。接收器然后提取这个时间戳,并与其自己的SYS时钟进行比较,以计算延迟。然而,这种简单的技术提出了两个主要问题:时钟同步和软件及硬件延迟。
第三节 实验设置
我们根据图1所示的方案实施了实验设置。实际的实验设置显示在图2中。设置包括两个TNKi5000 Intel NUC,配备了Intel Core i5-1135G7 CPU,运行Ubuntu 22.04,内核版本为6.3。在这个测试平台中,网络黑盒是一个简单的直线连接,意味着两个NUC直接使用大约2米长的以太网电缆连接。使用的以太网NIC是Intel i225,配置为1 Gbps。用于测量延迟的探针帧总长度为298字节。关于同步,NUC 1被指定为Grand Master(GM),负责为作为Follower的NUC 2提供时钟参考。详细来说,SYS Clock Src被选为NUC 1上的参考时钟。然后,使用名为phc2sys的时钟管理工具将PHC clock Src设置为SYS Clock。之后,使用精确时间协议(PTP)将PHC clock Dst(目标)设置为PHC Clock Src。最后,将Sys clock Dst设置为PHC clock Dst。值得注意的是,这个设置中的时钟管理软件没有进行调整。因此,预计两个NUC之间的同步误差应该在17纳秒以内。
第四节 实验结果
在本节中,我们讨论实验结果。对于表I中列出的每个实验,我们进行了两组测量。特别是,我们测量了评估的延迟,测量源PHC时钟和目标SYS时钟之间的时间差,即应用延迟。这些测量包括直到目标设备上协议栈的应用程序的处理时间。这些结果在图3中显示,详细情况报告在表II中。为了表明我们提出的测量技术能够仅捕获由于(黑盒)网络的延迟,我们还测量了源PHC时钟和目标PHC时钟之间的延迟,即网络延迟,使用前面描述的机制检索。结果在图4中报告,并在表III中总结。
第五节 结论
在本文中,我们提出了一种新的方法来评估实时通信网络,该方法能够独立于系统配置评估网络特定的延迟。利用时间敏感网络(TSN)特性以及Linux内核中的SO TIMESTAMPING API,我们的方法能够准确捕获网络引入的延迟,同时将其与其他因素隔离开来。我们已经展示,在理想条件下的部署中,所提出的测量方法将产生接近0纳秒的延迟评估。然而,在其他情况下,例如配置错误或通信网络问题,这些条件预计将通过延迟的增加来检测。未来的工作将集中在引入真实网络到我们的黑盒中,测试我们的方法在更复杂和现实条件下的鲁棒性;将我们的方法扩展到涉及多个源和目的地的场景;采用我们提出的方法到包括无线时间敏感网络(WTSN)设备的网络中。
相关文章:

基于TSN的实时通信网络延迟评估技术
论文标题:A TSN-based Technique for Real-Time Latency Evaluation in Communication Networks 作者信息: Alberto Morato, Claudio Zunino, Manuel Cheminod, Stefano Vitturi,来自意大利国家研究委员会,CNR-IEIIT。电子邮件:…...

初识ZYNQ——FPGA学习笔记15
一、ZYNQ简介 ZYNQ:Zynq-7000 All Programmable SoC(APSoC),赛灵思公司(AMD Xilinx)推出的新一代全可编程片上系统 PS:Processing System,处理系统 PL:Program Logic&…...
理论-链表的头结点
所为头结点,是为了使空链表和非空链表的处理统一而在链表的头部增加的一个节点,这样无论链表是否为空,头指针都指向头结点,头结点中不存数据而只是存放指向第一个节点的指针。没有头结点的链表,头指针就指向第一个节点…...
oracle 分表代码示例
在Oracle数据库中,分表通常指的是将一个大表分解成多个较小的表,以提高管理和查询效率。这通常是通过分区(Partitioning)来实现的,而不是传统意义上的将表拆分成多个独立的表。不过,如果你确实需要将一个大…...
【MySQL】regexp_replace在MySQL以及regexp extract all在MySQL的用法
一、regexp_replace在MySQL的用法 在MySQL中,REGEXP_REPLACE() 函数用于在字符串中搜索正则表达式模式,并用指定的字符串替换该模式的每个匹配项。以下是其基本用法: 语法 REGEXP_REPLACE(expression, pattern, replace_string[, pos[, oc…...
详解 FFmpeg 中的 -map 选项
FFmpeg 是一个强大的多媒体处理工具,可以处理各种音视频转换、编辑任务。-map 选项是 FFmpeg 中非常重要且灵活的一个功能,它允许用户精确控制输入流如何映射到输出文件中。使用 -map,可以指定视频、音频或字幕等特定流进行处理,这…...

学习threejs,绘制二维线
👨⚕️ 主页: gis分享者 👨⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言二、🍀绘制二维线1. ☘️…...

跑lvs出现soft connect怎么处理?
首先,我们先了解一下什么是soft connect。简而言之,就是工具会将所有连接在psub上的信号认作soft connect(也就是short)。如图1所示,VSS和AVSS都接到了p上,它们通过psub便有了soft connect。 如果有soft co…...

实验1 Python语言基础一
目录 实验1 Python语言基础一1、下载安装Python,贴出验证安装成功截图2、建立test.py文件,运行后贴出截图,思考if __name”__main__”的意思和作用3、分别运行下面两种代码,分析运行结果产生的原因。记牢python中重要语法“tab”的作用。6、编…...
多线程相关内容
一、进程与线程 (一)进程的概述 进程是程序的一次执行过程,是系统进行资源分配和调度的一个独立单位。每个进程都有自己独立的内存空间,包括代码、数据和运行时的环境。进程的执行需要系统为其分配各种资源,如 CPU 时间、内存空间、文件描述符…...

mybatis-puls快速入门
1.概述 在真实项目开发中我们的服务模块,一般都要进行数据库操作,并且每个domain都有crud,需多次写重复代码。我们使用MybatisPlus,就不用写重复代码,并且还有模板的功能,可以一键生成daomin,query,mapper…...
Pool 和 PG 架构(二)
Ceph 的存储架构设计旨在提供高可用性和可扩展性。其中,Pool(存储池)和 PG(放置组)是两个核心概念。下面详细介绍 Ceph 的 Pool 和 PG 架构以及它们之间的关系。 1. Pool池 概念: Pool(存储池…...

客户服务升级指南:如何以细节赢得客户忠诚
在当今这个竞争激烈的市场环境中,客户忠诚度已成为企业生存与发展的关键所在。而要想赢得并维持客户的忠诚,仅凭优质的产品或服务已远远不够,更需要企业在客户服务上下足功夫,从每一个细节入手,打造超越客户期待的服务…...

闲盒支持的组网方式和注意事项
1. 直连光猫拨号 通过光猫拨号,设备直连光猫的设备,需要对光猫开启UPNP并关闭DMZ 如果只接一个盒子,建议直接针对盒子IP开dmz。 2. 直连路由器 通过路由器拨号,设备直连路由器的设备,需要对路由器开启UPNP并关闭…...

828华为云征文|华为云Flexus云服务器X实例之openEuler系统下搭建MaxKB开源知识库问答系统
828华为云征文|华为云Flexus云服务器X实例之openEuler系统下搭建MaxKB开源知识库问答系统 前言一、Flexus云服务器X实例介绍1.1 Flexus云服务器X实例简介1.2 Flexus云服务器X实例特点1.3 Flexus云服务器X实例使用场景 二、MaxKB 介绍2.1 MaxKB简介2.2 MaxKB整体架构…...

[Linux]:信号(上)
✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:Linux学习 贝蒂的主页:Betty’s blog 1. 信号的引入 1.1 信号的概念 在Linux系统中,信号(…...

浙大数据结构:05-树9 Huffman Codes
这道题难度挺大,写起来较为费劲,这里我依然使用了STL库,使得代码量大幅减少不过百行,便于大家理解。 机翻: 1、条件准备 数组存储字符对应频率,n,student存储输入多少字符,有多少学生测试。 …...

scrapy爬虫基础
一、初识 创建项目: scrapy startproject my_one_project # 创建项目命令 cd my_one_project # 先进去, 后面在里面运行 运行爬虫命令为:scrapy crawl tk spiders下创建test.py 其中name就是scrapy crawl tk &…...
利用H5无插件播放RTSP流的实现方案
文章目录 0. 引言1. 问题分析1.1 RTSP流与浏览器的兼容性1.2 解决思路 2. 方案设计2.1 总体架构2.2 关键组件 3. 实施步骤3.1 环境准备3.2 安装与配置3.2.1 安装FFmpeg3.2.2 安装OpenResty3.2.3 添加nginx-rtmp-module模块3.2.4 配置OpenResty 3.3 推流操作3.4 前端播放3.4.1 引…...

CSS文本格式化
通过 CSS 中的文本属性您可以像操作 Word 文档那样定义网页中文本的字符间距、对齐方式、缩进等等,CSS 中常用的文本属性如下所示: text-align:设置文本的水平对齐方式;text-decoration:设置文本的装饰;te…...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂
蛋白质结合剂(如抗体、抑制肽)在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上,高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术,但这类方法普遍面临资源消耗巨大、研发周期冗长…...

MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
Matlab | matlab常用命令总结
常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

NFT模式:数字资产确权与链游经济系统构建
NFT模式:数字资产确权与链游经济系统构建 ——从技术架构到可持续生态的范式革命 一、确权技术革新:构建可信数字资产基石 1. 区块链底层架构的进化 跨链互操作协议:基于LayerZero协议实现以太坊、Solana等公链资产互通,通过零知…...

微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据
微软PowerBI考试 PL300-在 Power BI 中清理、转换和加载数据 Power Query 具有大量专门帮助您清理和准备数据以供分析的功能。 您将了解如何简化复杂模型、更改数据类型、重命名对象和透视数据。 您还将了解如何分析列,以便知晓哪些列包含有价值的数据,…...

Python 实现 Web 静态服务器(HTTP 协议)
目录 一、在本地启动 HTTP 服务器1. Windows 下安装 node.js1)下载安装包2)配置环境变量3)安装镜像4)node.js 的常用命令 2. 安装 http-server 服务3. 使用 http-server 开启服务1)使用 http-server2)详解 …...
苹果AI眼镜:从“工具”到“社交姿态”的范式革命——重新定义AI交互入口的未来机会
在2025年的AI硬件浪潮中,苹果AI眼镜(Apple Glasses)正在引发一场关于“人机交互形态”的深度思考。它并非简单地替代AirPods或Apple Watch,而是开辟了一个全新的、日常可接受的AI入口。其核心价值不在于功能的堆叠,而在于如何通过形态设计打破社交壁垒,成为用户“全天佩戴…...

认识CMake并使用CMake构建自己的第一个项目
1.CMake的作用和优势 跨平台支持:CMake支持多种操作系统和编译器,使用同一份构建配置可以在不同的环境中使用 简化配置:通过CMakeLists.txt文件,用户可以定义项目结构、依赖项、编译选项等,无需手动编写复杂的构建脚本…...
MFE(微前端) Module Federation:Webpack.config.js文件中每个属性的含义解释
以Module Federation 插件详为例,Webpack.config.js它可能的配置和含义如下: 前言 Module Federation 的Webpack.config.js核心配置包括: name filename(定义应用标识) remotes(引用远程模块࿰…...

如何把工业通信协议转换成http websocket
1.现状 工业通信协议多数工作在边缘设备上,比如:PLC、IOT盒子等。上层业务系统需要根据不同的工业协议做对应开发,当设备上用的是modbus从站时,采集设备数据需要开发modbus主站;当设备上用的是西门子PN协议时…...