sctp心搏的超时以及重传控制

satanaelzhou 2010-09-27 05:52:33
问题:1. 开启了sctp的心搏机制,在偶联对端B意外关闭,并且没有向本端A发送shutdown消息,属于意外的非法关闭。现在A会一直向B发送心跳。A收到的包是ICMP目标不可达。心跳会一直发送5次。

我使用了struct sctp_paddrparams pathmaxrxt;中的spp_pathmaxrxt来设置为1。
以及struct sctp_assocparams assocmaxrxt;sasoc_asocmaxrxt来设置为1。

但是这两个地方好像都没起作用:
这是一个示例:
struct sctp_assocparams assocmaxrxt;
memset(&assocmaxrxt,0,sizeof(assocmaxrxt));
assocmaxrxt.sasoc_asocmaxrxt = 2;
setsockopt(sockfd, IPPROTO_SCTP, SCTP_ASSOCINFO, &assocmaxrxt,sizeof(assocmaxrxt));//sockfd有效。

2. 在发送完5次的心跳的时候,触发事件 address 不可达。我在这里close了socket,但是sctp会继续发送shutdown 5次才关闭。这是为什么

感谢大家踊跃顶贴
...全文
749 4 打赏 收藏 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
satanaelzhou 2010-09-28
  • 打赏
  • 举报
回复
咋没人回哪~~~ 难道真的要我研究sctp源码~~~~大侠们 现身吧
satanaelzhou 2010-09-28
  • 打赏
  • 举报
回复
不能沉啊~~~
satanaelzhou 2010-09-28
  • 打赏
  • 举报
回复
问题解决~ 答案参见lksctp的内核实现~~~先get并完整的给结构体赋值,再set自己想要改变的地方~~
哎 落寞的帖子啊~~~~
内容概要:本文聚焦于氢燃料电池极化曲线参数的辨识与性能评估,采用人工蜂群算法(ABC)结合Matlab编程实现。研究基于Amphlett半经验模型构建质子交换膜燃料电池(PEMFC)的极化特性模型,通过优化算法对模型中的高维非线性参数进行全局辨识,旨在精确还原燃料电池的实际输出电压-电流关系。文中系统分析了人工蜂群算法在参数反演过程中的收敛性、敏感性与可辨识性,验证了其在多参数耦合、强非线性系统建模中的优越性能。同时,通过对辨识后的模型进行多维度性能评估,如残差分析、拟合优度检验与工况适应性测试,全面衡量模型精度与实用性,为燃料电池系统的设计、控制与优化提供可靠的理论依据与数据支撑。; 适合人群:具备一定Matlab编程基础,从事新能源、燃料电池、系统建模或智能优化算法研究的研究生、科研人员及工程技术人员。; 使用场景及目标:① 掌握基于智能优化算法的复杂电化学系统参数辨识方法;② 学习利用Amphlett等半经验模型进行PEMFC建模与仿真;③ 理解人工蜂群算法在解决高维非线性优化问题中的应用技巧与性能分析方法;④ 实现燃料电池性能的精确评估与预测。; 阅读建议:本资源以Matlab代码实现为核心,强调算法应用与实践操作。学习者应在掌握基本电化学原理和优化算法概念的基础上,结合提供的代码进行调试与仿真,重点关注目标函数的构建、参数初始化范围的设定以及算法收敛过程的可视化分析,以深入理解参数辨识的内在机理。

23,224

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧