自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 linux内核SMC特性connect流程框架解析

| | | -> smc_ib_map_mr_sg --->>> 使用ib_map_mr_sg注册1个sg到mr中。| | | -> smc_wr_alloc_lgr_mem --->>> 分配wr_rx/tx_buf_v2缓冲区,大小为8192。

2024-07-23 10:11:33 970

原创 SMC的双端能力通知流程(基于最新Linux主干)

-----> tcp_options_write -> smc_options_write -> (*ptr == TCPOLEN_EXP_SMC_BASE...) -----》》》》》发送含有smc信息的syn报文给对端。| -----> tcp_options_write -> smc_options_write -> (*ptr == TCPOLEN_EXP_SMC_BASE...) -----》》》》》发送含有smc信息的syn报文给对端。具体的报文可以看如下。

2024-07-18 18:40:30 493

原创 Linux主线内核SMC-D的loopback lo框架解读

linux内核SMCD框架

2024-07-11 14:14:11 314

原创 SMC-R发送流程解读

-->>>如果用户还有更多数据需要发送,或者SMC可以延迟发送并且可发送的空间大于sendbuf的空间的一半。--->>>如果断开了,并且有已经完成发送的,直接返回完成长度,否则返回错误。--->>>可以发送的数据大小,一个sendbuf中剩余的空间,取最小值。--->>>发送的个数 加上 要发送的数据大小, 如果小于一个desc的大小。--->>>大于一个desc的大小的时候,还能取desc中的空余空间。--->>>如果需要发送的大小大于对端rmbe的大小,则需要设置写阻塞位。

2024-07-04 20:21:35 864

原创 LLC/CDC消息通信机制

-->>>处理一次poll出来的CQ事件,【link->wr_tx_pends[pnd_snd_idx].handler】分别处理CDC/LLC事件,smc_cdc_tx_handler/smc_llc_tx_handler->【wake_up(&link->wr_tx_wait)】。--->>>处理smc_wr_rx_tasklet_fn回调函数,即rx cqe产生的时候,就会处理。--->>>两个地方回用到smc_ib_ready_link,初始化完,进入RTR,会通知接收。/CDC消息通信机制。

2024-06-23 16:48:15 997

原创 SMC建链机制

server端发送SMC_LLC_REQ,等收到SMC_LLC_CONFIRM_LINK后,保存对端rdma信息,回一个SMC_LLC_RESP报文后,激活link,设置lgr为SMC_LGR_SINGLE。如果smc起的内核clc socket监听到有数据(三次握手之后),则会调用smc_clcsock_data_ready接口,因为sk_state为SMC_LISTEN,所以会启动listen中初始化的tcp_listen工作队列,对应的函数是smc_tcp_listen_work。

2024-06-23 14:57:11 361

原创 SMC模块初始化流程

-->>>2.ib_register_client(&smc_ib_client)->add_client_context->[client->add(device)]->smc_ib_add_dev,ib设备(lower)注册成为smc设备(upper),启动端口事件工作队列。--->>>注册netns中的钩子函数,1.smc_sysctl_net_init初始化sysctl中的系统变量,获取到ctl_table_header ,主要是SMC特有的sysctl接口,给用户实时设置。

2024-06-20 18:06:28 442

原创 定个目标,10天解读完基于内核5.10的SMC-R代码框架

测试了一段时间的内核的SMC-R功能,对SMC-R的实现总是模糊不透。看代码之前,需要具备RDMA的基础知识,否则代码读起来会很生涩,很痛苦(虽然现在读起来也有点痛苦^_^)。RDMA基础,我推荐知乎的RDMA杂谈,链接为。这位大神在解读的时候,回复了很多问题,可以带着疑问多读几遍,就可以豁然开朗了。好了,废话不多说,正式进入正文。我想从以下4个方面来介绍SMC框架。可能后续会增加,但是作为小白的我,暂且就定4个方面吧。定个目标,10天解读完基于5.10的SMC-R代码框架。一、SMC模块的加载及卸载。

2024-06-20 17:14:03 425

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除