RDMA设计15:连接管理模块设计2

本博文主要交流设计思路,在本博客已给出相关博文140多篇,希望对初学者有用。注意这里只是抛砖引玉,切莫认为参考这就可以完成商用IP设计。若有NVME或RDMA 产品及项目需求,请看B站视频后联系。

(1) 建立连接流程

在 CONNECT 状态下,读取一条连接信息缓存中的指令信息,同时判断指令信息中的会话 ID 是否在会话管理池中存在。如会话 ID 不存在,则继续进行建立连接流程,并组装 CM 连接请求包,跳转至 CON_SEND_REQ 状态;如果会话 ID 已存在,则状态跳转至 IDLE 并返回错误信息。在 CON_SEND_REQ 状态下,组装好的 CM 连接请求包将被逐帧发送至 RoCEv2 发送模块,在其发送完毕后状态跳转至 CON_WAIT_REP 状态。

在 CON_WAIT_REP 状态下,状态机等待来自远程主机的连接回复包,当收到回复包后,解析该回复包。如果远程主机同意连接,则跳转至 CON_SEND_RTU 状态;如果远程主机拒绝连接或等待超时,则跳转至 IDLE 状态并返回错误信息。在 CON_SEND_RTU 状态下,状态机组装并逐帧发送 CM 就绪使用包(Ready toUse)至 RoCE v2 发送模块,状态跳转至 DONE 状态,建立连接流程结束。

(2)断开连接流程

在 DISCONNECT 状态下,状态机读取一条连接信息缓存中的指令信息,同时判断指令信息中的会话 ID 是否在会话管理池中存在。如会话 ID 已存在,则断开连接流程继续,组装 CM 断链请求包,跳转至 DISCON_SEND_REQ 状态;如果会话 ID 不存在,则状态跳转至 IDLE 并返回错误信息。在 DISCON_SEND_REQ 状态下,状态机组装 CM 断开连接请求包并逐帧发送至RoCE v2 发送模块,而后跳转至 DISCON_WAIT_REP 状态。

在 DISCON_WAIT_REP 状态下,状态机等待来自远程主机的断开连接回复包,当 收 到 回 复 包 后 , 解 析 该 回 复 包 。 如 果 远 程 主 机 同 意 断 开 连 接 , 则 跳 转 至DISCON_WAIT_REQ 状态;如果远程主机拒绝断开连接或等待超时,则跳转至 IDLE状态并返回错误信息。

在 DISCON_WAIT_REQ 状态下,状态机等待来自远程主机的断开连接请求包,当收到请求包后,解析该请求包并跳转至 DISCON_SEND_REP 状态,如果等待超时,则跳转至 IDLE 状态并返回错误信息。

在 DISCON_SEND_REP 状态下,状态机组装 CM 断开连接回复包并逐帧发送至RoCE v2 发送模块,而后跳转至 DONE 状态,断开连接流程结束。会话管理池在系统复位时被清空,在建立连接结束后写入会话 ID,在断开连接结束后清除对应的会话 ID。由于实际应用中,交换机接口数量有限,故将会话管理池深度设置为 64,足以满足常见应用场景下的性能要求.

B站已给出相关性能的视频,如想进一步了解,请搜索B站用户:专注与守望

https://www.bilibili.com/video/BV1mPV5eCE8z/?spm_id_from=333.337.search-card.all.click\&vd_source=c355545d27a44fe96188b7caefeda6e7

相关推荐
酉鬼女又兒5 小时前
零基础入门计算机网络:网络层核心任务、三大关键问题、两种服务类型与 TCP/IP 网际层协议体系全解析
服务器·网络·网络协议·tcp/ip·计算机网络·php·求职招聘
2601_961845425 小时前
2027考研数学大纲|数一数二数三
考研·fpga开发·ar·vr·mr·oneflow
代码中介商6 小时前
HTTPS加密原理:图解安全传输全流程
网络协议·http·https
“初生”6 小时前
Codex 桌面端新会话 5 次 Reconnecting 怎么办?HTTP/SSE 完美修复方案(2026最新)
网络·网络协议·http
夜悊6 小时前
网络编程代码实例:IO复用版
网络协议
北京耐用通信8 小时前
耐达讯自动化工业网关:极简组态实现 Modbus 转 PROFINET 稳定通讯
人工智能·物联网·网络协议·自动化·信息与通信
X_xcccc8 小时前
2026年嵌入式智能核心,从异构计算到敏捷开发的硬核指南
fpga开发·敏捷流程·zynq-7000·fpga板卡定制
刘哥测评技术zcwz6269 小时前
海外动态IP和静态IP需要怎么选择
网络·网络协议·tcp/ip
春风得意之时9 小时前
前端安装项目出现代理问题和ssl认证问题
前端·网络协议·ssl
MIXLLRED10 小时前
随笔——从“IP与网关不在同一网段”说起:网络连接故障的通用排查指南
网络·网络协议·tcp/ip