- 博客(76)
- 资源 (1)
- 收藏
- 关注
原创 Mellanox网卡qos设置
不设置NCCL TC,RDMA流量使用网卡设置的dscp( /sys/class/infiniband/mlx5_0/tc/1/traffic_class ),如果没有设置则为0;设置了NCCL TC,RDMA流量优先使用网卡设置的dscp,如果没有设置则使用NCCL_IB_TC。(可以看到pri和dscp的关系)
2025-04-22 15:17:16
154
原创 NCCL_IB_SPLIT_DATA_ON_QPS效果分析
DMA Length是61440(0xf000),基本等于NCCL_P2P_NET_CHUNKSIZE=65535可以看出内存中的数据以NCCL_P2P_NET_CHUNKSIZE为单位在QP上轮询发送两块地址分别在两个QP上轮询(NCCL_IB_QPS_PER_CONNECTION=2)
2025-03-27 16:25:44
245
原创 RoCEv2问题总结
中间交换机的mtu没有特别配置,需要将出入接口配置成9000+或者jumboframe enable;中间交换机链路带宽过小(比如接口qos cir 配置成了64k)
2025-03-14 11:12:32
294
原创 Mellanox网卡信息查看
来自https://enterprise-support.nvidia.com/s/article/MLNX2-117-2532kn。1、查看Mellanox网卡的SN(序列号)和PN。2、查看Mellanox网卡驱动、固件版本。
2025-02-06 16:08:09
480
原创 简单prometheus+grafana+pushgateway采集GPU利用率和交换机流量
从https://prometheus.io/download/下载prometheus和pushgateway下载后修改prometheus.yamlpushgateway需要设置honor_labels:true才能保留原来的job、instance等然后启动:./prometheus--config.file=“./prometheus.yml”访问pushgateway:http://x.x.x.x:9091。
2025-01-19 19:44:43
1095
原创 服务器双网卡NCCL通过交换机通信
ens21np0的地址是192.168.2.1,ens16np0的地址是192.168.1.2。RDMA网卡并不会存路由和MAC,(根据源码)MAC和出接口都是驱动下发的,其中192.168.1.1和192.168.2.1是交换机的地址。所以,如果不配置这两条路由,内核查到的是直连路由,出接口是错误的。
2025-01-06 15:09:24
657
原创 linux上抓包RoCEv2
whereis tcpdump 保证使用正确的tcpdump位置和版本。比如华为交换机的capture-packet就是抓不全的,会影响分析。在交换机上抓RoCEv2包会由于交换机抓包速率限制而抓不全。tcpdump help(4.99.4以上)rdma link找到设备名。
2024-12-19 11:13:47
420
原创 ubuntu上通过openvswitch卸载实现roce over vxlan
操作系统:Mellanox网卡:openvswitch:配置SRIOV具体见https://blog.csdn.net/aashuii/article/details/140313972在本例中,为了操作方便启用了1个VF,结果确认:可以看出PF的接口是ens6np0 ,VF的接口是ens6np0v0可以通过apt-get install openvswitch-switch安装,但版本较低(2.9),所以这里选择手动安装。编译安装启动注意1:这种方式启动后的日志默认路径不是/var/
2024-09-04 16:57:01
1006
原创 ovs-vsctl错误
这有可能是ovsdb没启动好,也有可能是db.sock用了其他目录,可以ps -ef | grep ovs确认下:可以手动指定db.sock路径,比如ovs-vsctl --db=/var/run/openvswitch/db.sock show。
2024-09-04 10:00:06
625
原创 k8s RoCE SRIOV环境搭建
确认RoCE能力:lspci -s af:00.0 -vvv | grep Capabilities。有一行包含SR-IOV则表示支持SRIOV,1、查看Roce网卡。
2024-07-10 10:08:40
733
原创 (k8s中)docker netty OOM问题记录
docker top 容器名 -u 查看内存cpu占用率(容器名来自kubectl describe pod xxx中信息)可以看出内存一直增长,作为IO代理这是不正常的。
2024-02-29 11:26:26
712
原创 apipost和curl收不到服务器响应的HTTP/1.1 404 Not Found
这是因为在HTTP/1.1中,链接是复用的,如果没有content-length就无法区分两个HTTP报文的边界(粘包),也就是说HTTP/1.1如果是keep alive(没有connection也默认是keep-live),则content-length和chunk必然是二选一。windows的apipost发送请求后,服务器响应了HTTP/1.1 404 Not Found,但是apipost一直显示发送中。有一些响应码可以没有content-length,但看起来没有包含404.
2024-01-24 14:41:55
1842
1
原创 k8s中netty服务器容器tcp连接数量优化
登录容器,cat /proc/sys/net/core/somaxconn显示128,对于一个服务器来说,这个限制太小了,可以放大。但是k8s把容器的参数分类了,大部分的参数都属于unsafe,不能直接修改。
2024-01-22 13:08:38
1313
原创 netty线程调度定制
线程调度规则封装在MultithreadEventExecutorGroup的next方法中,这个方法又封装了EventExecutorChooserFactory(实现在DefaultEventExecutorChooserFactory)的next方法。其中请求1耗时较长,请求2很快处理完成,我们就希望请求3能由线程2处理,而不是在请求1后面排队。在netty的TCP调度中,线程的调度封装在NioEventLoopGroup中,线程执行则封装在NioEventLoop中。结果就是轮换着用线程。
2023-12-20 15:36:30
627
翻译 确定性网络问题陈述
"确定性网络使用案例"[RFC8578]说明,除了工业自动化和控制系统 (IACS, Industrial Automation and Control Systems) 这一经典案例外,事实上还有多个行业对延迟保证和超低丢包的确定性网络服务有着强烈且相对相似的需求。
2023-11-24 15:51:48
274
翻译 RFC8655确定性网络架构
本文档提供了确定性网络 (DetNet) 的整体架构,该架构提供了以极低的丢包率和有限的端到端延迟来传送数据流的能力。DetNet适用于单一管理控制或封闭管理控制组内的网络;其中包括校园范围的网络和专用广域网(private WAN)。DetNet不适用于互联网等大型域。DetNet在IP层运行,并通过MPLS和IEEE 802.1时间敏感网络 (TSN) 等较低层技术提供服务。
2023-11-24 15:13:05
1160
原创 SecureCRT配置id_rsa和id_rsa格式问题
是不是以-----BEGIN RSA PRIVATE KEY-----开始-----END RSA PRIVATE KEY-----结尾。连接->SSH2->公钥->属性。
2023-07-31 16:49:30
1267
原创 RFC8470在HTTP中使用早期数据
特别是,重放的请求可能会导致不同的响应,即使内容仍然保密,从受保护数据的长度来看,这可能是可以观察到的。425状态码的请求,都是缓解对可能易受重放攻击的请求的重放攻击的良好措施。服务器实例可以实现这些措施中的任何一个,并被视为一致的,即使不同的实例使用不同的方法。否则,接收早期数据中的请求的中介可以响应425(状态码自动重试该请求,但它必须等待TLS握手在其接收到请求的连接上完成。只有当服务器能够依靠其他实例正确处理相同请求的重放时,服务器才可以在握手完成后处理早期数据中接收到的请求。
2023-07-23 13:53:07
721
原创 RFC8446附录
TLS对这种形式的攻击没有提供任何特定的防御,但确实包括一个供应用程序使用的填充机制:受AEAD函数保护的明文由内容加上可变长度的填充组成,这允许应用程序产生任意长度的加密记录以及仅填充覆盖业务以隐藏传输周期和静默周期之间的差异。想要与不支持TLS 1.3的服务器协商的TLS 1.3客户端将发送一个普通的TLS 1.3 ClientHello,该ClientHello.legacy_version中包含0x0303(TLS 1.2),但“supported_versions”扩展中包含正确的版本。
2023-07-22 20:53:59
439
原创 netty http3代码解析(netty quic)
使用时调用netty-incubator-codec-http3,netty-incubator-codec-http3调用netty-incubator-codec-quic,netty-incubator-codec-quic调用netty-incubator-codec-native-quic(在netty quic源码库中codec-native-quic下)。native-quic会生成quiche的相关jar包和so。使用时先下载对应netty quic版本编译出so。
2023-07-10 17:59:08
1766
4
原创 查看windows上的dll内容
2、cmd运行在Visual Studio安装路径下的VC\Auxiliary\Build\vcvars64.bat。1、安装Visual Studio时选择c++桌面开发和通用Windows平台开发。3、在这个窗口中运行dumpbin。
2023-07-03 14:51:04
903
原创 quiche编译
netty http3使用了rust语言的quiche,quiche使用了c++语言的boringssl,网上没有找到编译好的quiche,只能自己搭建rust环境编译。
2023-06-30 11:01:58
1346
8
原创 netty http3功能从零开始
运行main后提示java.lang.NoClassDefFoundError:org/bouncycastle/jce/provider/BouncyCastleProvider。vscode安装extension:Extension Pack for java。配置环境变量JAVA_HOME CLASSPATH MVN_HOME。设置->extension->java 修改setting.json。1、windows安装jdk和mvn。2、vscode环境。
2023-06-13 17:55:11
1783
libquiche.so
2023-07-12
libnetty-quiche-linux-x86-64-0.0.46.Final.so
2023-07-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人