java - 如何为 SCTP 编写内核补丁以修复已使用的地址
问题描述
一个进程已经持有套接字,因此即使已经杀死端口 3868 上的现有进程,也无法通过 SCTP 连接端口 3868。错误是:“SCTP 应用程序显示“地址已在使用中””
内核版本:2.6.32-696.16.1
我想在内核中解决这个问题,而不是应用程序,因为我已经从应用程序团队更新:
“应用程序使用 java-nio,我们有通道和缓冲区的概念。SO_REUSEADDR 选项不适用于通道,即我们无法在创建套接字时添加给定选项。它可用于 java-nio 的 tcp 连接,而不是 sctp。”
我从其他帖子中了解到:
“最新版本的 Linux 支持 SCTP,使用 libSCTP 访问它,这是对 Linux Kernel SCTP 的用户空间访问。”
我如何/在哪里可以使用它?
java 进程启动 sctp 流量。我需要设置一个解决方法来设置地址重用(SO_REUSEADDR 套接字选项),因为它是 Linux 中 Redhat 6 版本解决此问题的建议。
有人可以在这里帮忙吗?
解决方案
推荐阅读
- spring-boot - 在弹性搜索或弹簧数据弹性搜索中使用源过滤是否会对性能产生影响?
- android - 在三星设备上运行 AOSP
- javascript - 我正在尝试从 2 个数组中检索结果
- google-sheets - 谷歌应用脚本条件格式单元格边框
- linkedin - 如何在不使用 curl 请求的情况下使用 LinkedIn API 上传图像?
- memory-management - 物理内存集 + 偏移量大于页面偏移量
- reactjs - 如何使选中的图标突出显示
- firebase - 在本机反应中,我如何等待 redux 命令更改存储以完成执行,然后再触发 firebase 上的更新
- java - 方法不允许 HTTPS spring
- javascript - 如何编辑和更改/重命名标题(反应)