DSOMEIP丢数据问题分析和总结:

news2024/11/17 19:33:37

(1)问题现象

        无论使用arm64硬件、x86 ubuntu电脑、ubuntu docker哪种组合进行DSOMEIP event通信,接收端都会在event payload长度增加到一定程度时udp方式出现丢数据现象。

        总体上arm64硬件略优于x86 ubuntu电脑,x86 ubuntu电脑略优于ubuntu docker。并且用wireshark抓包时每次都可以抓到丢的SOMEIP数据包,并且数据包完整并且TP顺序没有问题。

        如果使用vrte example的默认json配置文件,根据上面通信载体不同丢数据现象会出现在event payload长度为500KB、200KB、或50KB。

(2)问题分析

        问题可能是由于硬件资源和网络环境的限制,造成过大的数据包分成过多的TP(以1个tp长度1400为例,两个tp之间时间间隔大约为0.07-0.08ms),从而使接收端接收不及时tp无法组成完整的SOMEIP数据包。

(3)解决方法

 优化方案应该包含以下方面:

[a] 连续发送多个tp后,发送端等待1个小延时,如1ms。

[b] 默认接收端数据接收buffer是1MB,接收大于1MB的数据需要对应增加buffer长度。

[c] 优化SOMEIP-SD的过程,减少测试过程中SD对通信过程的影响。

发送端json几个重要配置的说明:

"event_burstSize":"20"    // 连续20个tp中间不加时间间隔,这个地方如果不填则默认为0

"event_maximum_segment_length": "0x578" // tp长度为1400

"event_separation_time":"0.001"                                  // 两个burst之间的时间间隔,这个从代码看很有误导性,其实可以填小数,单位是s而不是ms。这块之前我们理解错了,应该是json配置解析时比较隐蔽的乘以了1000,从代码看起来还以为直接填整数ms。

接收端json几个重要配置的说明:

"udp_maximum_receive_buffer_size": "5"  // 接收端buffer为5MB

附件为实验用的一对json文件。

在ubuntu docker环境下测了3000KB-1s和1000KB-350ms 10分钟都没有再出现丢数据

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

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

相关文章

怎么去营造地中海风格?进来来看看吧

什么是地中海风格? 地中海风格是一种受地中海沿岸住宅建筑和美学影响的装饰风格。西班牙、希腊和摩洛哥等国的文化对地中海风格产生了影响。 简约是地中海生活的主要部分。地中海气候宜人,人们的生活态度闲适,这一点在色彩、设计、材料和图案…

使用python的matplotlib 画柱状图

样式一: import numpy as np import matplotlib.pyplot as plt# 设置字体 plt.rcParams[font.sans-serif] [Times New Roman]# Define data and error values precision_data [0.349209635, 0.270397704, 0.297925, 0.4826985, 0.4273875,0.304880102,0.2752492…

【Elsevier旗下】2区CCF推荐,1994年收录,2个月录用!接收人工智能领域

计算机领域 • 好刊速递 出版社:Elsevier(CCF-C类) 影响因子(2022):4.0-5.0 期刊分区:JCR2区,中科院3区 检索数据库:SCIE 在检 版面类别:正刊 数据库检…

PostMan接口测试教程

1、下载和安装 Postman: 前往 Postman 官网 (https://www.postman.com),下载适用于你的操作系统的 Postman 客户端。 执行下载后的安装程序,并按照安装向导的指引完成安装过程。 2、创建一个新的集合: 打开 Postma…

个人废品回收小程序制作步骤详解

在当今的环保时代,个人废品回收小程序的发展显得尤为重要。为了满足这一需求,本文将详细介绍如何制作一个个人废品回收小程序。 第一步,进入乔拓云网后台,点击【轻应用小程序】进入设计小程序页面。在这个页面,你可以看…

Neo4j 与 Cypher 基础

更好的阅读体验 \huge{\color{red}{更好的阅读体验}} 更好的阅读体验 简介 Neo4j 是用 Java 实现的开源 NoSQL 图数据库。从2003年开始开发,2007年正式发布第一版,其源码托管于 GitHub。 与常见的关系型数据库不同,Neo4j 基于图图结构来表示…

数据结构:堆的简单介绍

目录 堆的介绍:(PriorityQueue) 大根堆:根节点比左右孩子节点大 小根堆:根节点比左右孩子节点小 堆的存储结构: 为什么二叉树在逻辑上用满二叉树结构,而不是普通二叉树呢? 因为如果是普通二叉树会造成资源的浪费​编辑 堆的介绍:(PriorityQueue) 堆又称优先级队列,何为优先…

Redis初步学习

简单了解 Redis(Remote Dictionary Server)是一个开源的内存数据库,也被称为数据结构服务器。它以键值对的形式存储数据,并提供了丰富的数据结构,如字符串、列表、集合、有序集合、哈希表等。以下是对Redis的详细介绍…

天府蜂巢成都直播产业基地好不好?全成都做直播的头部企业都在这!

随着直播产业的发展,直播内容的不断丰富,数字科技的兴起为直播行业的沿革提供了技术支撑,网络直播成为新的热门赛道,以及拉动经济的新引擎。成都天府蜂巢直播产业基地位于的成都科学城兴隆湖高新技术服务产业园,不仅是…

活动回顾 | 暴雨也无法阻挡的奔赴,2023 Meet TVM · 深圳站完美收官!

2023 Meet TVM 深圳站于 2023 年 9 月 16 日在腾讯大厦成功举办,百余名参与者亲临现场,聆听讲师们的精彩分享。 作者 | xixi 编辑 | 三羊 本文首发于 HyperAI 超神经微信公众平台~ **由 MLC.AI 社区和 HyperAI超神经主办,Openbayes贝式计算…

网关-开放API接口签名验证方案

接口安全问题 请求身份是否合法?请求参数是否被篡改?请求是否唯一? AppId&AppSecret 请求身份 为开发者分配AppId(开发者标识,确保唯一)和AppSecret(用于接口加密,确保不易被…

加强企业内部数据安全:DataSecurity Plus助您一臂之力

随着数字化时代的到来,企业内部数据安全变得比以往任何时候都更加重要。数据是现代企业的生命线,其中包含了机密客户信息、财务数据、知识产权以及其他敏感信息。因此,保护这些数据免受威胁和泄露是每个企业的首要任务之一。为了助力企业实现…

图片在线制作轻松创作高品质图片,根据自己的需求去绘制编辑适合自己的图片

亲爱的朋友们,你是否曾为了获取一张满足自身要求的图片而烦恼?现在,让我们向你揭秘一种高效绘制图片的神技!无论你是设计师、创作者还是普通用户,都能通过这种方法轻松实现定制化的需求,让你的创意得以完美…

静态时序分析(STA)学习记录

STA学习记录 setup timing check:hold timing check :multiple path:path type:四种Timing Path:Latch Timing check(Time Borrowing):没事看看文档总是可以学到很多新东西,提炼精华,方便复习 Timing Path; setup timing check: 我(edge)没到你(data)得提前到 Slack =…

SpringCloud 学习(一)简介和环境搭建

1. 简介 1.1 SpringCloud SpringCloud 基于 SpringBoot 提供了一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,熔断器等组件,除了 NetFlix 的开源组件做高度抽…

【BUG】Failed_to_execute_goal_org.springframework

uuid: 606989c0-5b73-11ee-b9af-9fe36aef5f9f title: tags: [Spring Boot, Maven, 插件, 报错, 类文件版本, 兼容, 解决方案 ] categories: [ ] date: 2023-09-25 15:15:59 “ 有的时候博客内容会有变动,首发博客是最新的,其他博客地址可能会未同步,认准…

阿里云服务器怎么使用?网站上线全教程参考

阿里云服务器使用教程包括云服务器购买、云服务器配置选择、云服务器开通端口号、搭建网站所需Web环境、安装网站程序、域名解析到云服务器公网IP地址,最后网站上线全流程,阿小云分享阿里云服务器详细使用教程: 目录 阿里云服务器使用教程 …

【ccf-csp题解】第5次csp认证-第三题-模板生成系统-字符串模拟

题目描述 思路分析 这个是一个简单的字符串模拟题,但蕴藏了一些细节值得挖掘,故写于博客之中进行记录。 第一、关于数据的读入 对于前m行,直接使用getline函数进行读入即可,注意在读取完m和n之后,要写一个getchar&a…

德大黄鱼开捕 年产量20万吨 京东超市多举措保障黄鱼品质

作为“中国大黄鱼之都”,宁德大黄鱼占全国大黄鱼总产值产量均在90%以上。有关方面预计,今年全年宁德大黄鱼产量达20万吨,年增产10%,直接经济产值超百亿元。 宁德大黄鱼开捕活动,由宁德市政府、宁德渔业协会、京东超市…

Mooctest

开发者 测试框架junit 1.字符串不能除 2.a给了c 3. 4. 5.输入是否>0 6.注释