ib_list = [] for key in Result_str: ib_list += [{'{#IBNAME}':key}] print(json.dumps({ 'data':ib_list},sort_keys=True,indent=4,separators=(',',':'))) def net_traffic_List(ib_name): CMD ,/usr/bin/python3 /etc/zabbix/externalscripts/ib_network_discovery.py IB_network_discovery UserParameter =ib_network.get[*],/usr/bin/python3 /etc/zabbix/externalscripts/ib_network_discovery.py net_traffic_total $1 UserParameter=ib_network.rx[*],cat /etc/zabbix/externalscripts/$1 | head -n 1 UserParameter=ib_network.tx
RDMA的内存管理(IB内核管理用户态内存) - ib_umem简介从内核模块暴露IB内存接口: ib_umem_get()/ib_umem_release() ,可让低级驱动程序控制何时调用 ib_umem_get 还将这些函数移至 ib_core 模块而不是 ib_uverbs 中,以便使用它们的驱动程序模块不依赖于 ib_uverbs。 scatterlist *last_sg; unsigned long first_sg_offset; unsigned long last_sg_trim; void *private; u8 region = ib_umem_get -> pin住以及通过DMA映射的用户空间内存, IB/uverbs:将 ib_umem_get()/ib_umem_release() 导出到模块,导出 ib_umem_get 实现私有通道操作,并注册网络通知程序 irdma_hwreg_mr(iwdev, iwmr, access) -> 发送cqp命令进行内存注册 irdma_alloc_and_get_cqp_request
RoCEv1作为链路协议层,要求通信双方位于同一二层网络内。而RoCEv2 则为网络层协议,它采用以太网网络层和 UDP 传输层,取代了 InfiniBand 的网络层,从而提供了更为优秀的可扩展性。 智算网络中的负载均衡与流量控制AI大模型时代下,数据中心与智算网络,如Spine-Leaf架构,拓扑规整,选路简易。 InfiniBand网络的负载均衡和流控机制InfiniBand网络通过多层次技术协同,实现了高效的数据传输与资源管理。 UFM实现零配置(按端口收费)手工配置、或基于开放网络技术实现的 EasyRoCERoCE还是IB? __biz=MzAxNzU3NjcxOA==&mid=2650751430&idx=1&sn=bffa26e57db61c930c8eb2c71b902706&chksm=82a06995994e62a7391df4a0bcf047c0c332c395773964c283a3e9b814db15ced8720f450753
用通俗的话讲,把以太网想象成一个快递包裹分发网络(路由寻址);而IB网络,则可以想象成一个地铁轨道交通网络。 IB网络 IB网络 你可以想象成一个地铁轨道交通网络。这是因为IB的底层是基于VCT(Virtual Cut Through)技术。 IB网络是直接然后再在过每个中转站的时候,车屁股还没进站,车头已经向下一站出发了!所以它的延迟才能做到这么低。 并且,也如同轨道交通网络一样,这些中转站(交换机)之所以能做到这么快的让车辆通过,是因为目的地车站是确定且有限的(IB网络的地址数量,称为LID号,是有限的,地址空间65535个),所有列车怎么走在网络开始运行前都提前决定好了 相比之下,传统以太网应用架构中,应用程序并不直接访问网络。 换句话我们可以讲,从上到下在链路层开始,IB 组网和 IP 组网就不同了。
首先通过 ibstatus 需要找出打印速率不是 200G 的网卡 的参数 default gid 值; 然后需要找到对应的网卡名:ip a | grep aa:e8 -B 1 一般查最后四位即可。 1f:00.0 set LINK_TYPE_P1=2 mstconfig -d 1f:00.0 q 可以查看设备信息,包括设备工作运行的模式(LINK_TYPE_P); 标题:修改服务器IB
按:昨天整理了UALink(vs NVLink)最新进展,作为片上互联技术,其传输效率要求最高;而集群(Pod)间互联技术,同样也存在竞争,即超以太网UE,对标NV的IB网络。 问题意识:AI 与 网络 AI用于网络,还是网络用于AI? • 许多文章/博客讨论了AI如何改变网络基础设施 • ...但你需要什么样的网络基础设施才能拥有足够的AI来改变网络基础设施? 节点间的Scale-Out互联网络,目前有IB/RoCE 方案,超以太网(UE)是基于Ethernet的基础设施; 4. 其他标准网络,如系统中的业务网、存储网、管理网等,通常基于百G内以太网。 网络可视性:通过端到端遥测技术提供增强的网络可视性,有助于更好地监控和管理网络性能。 传统RDMA网络与超以太网比较。 AI基础设施工作负载特征,推导其对高速网络的性能需求。 2. 区分集群网络,划分为:加速计算xPU的Scale-Up网络、节点间的Scale-Out互联网络、其他标准网络,指出每部分网络的特征。
使用 nmcli 重新加载网络配置 nmcli c reload
,然后install 和 update 一下就没事了 原文链接:https://stackoverflow.com/questions/28204108/ib-designables-failed-to-update-auto-layout-status-failed-to-load-designables
此外,网络在功耗和总体 TCO 中的占比持续上升,因此对 UEC 网络技术的不大投资将带来快速的投资回报。 这种细粒度的负载平衡可以提高网络利用率并减少尾部延迟。 拥塞处理:大规模人工智能集群和 HPC 网络具有独特的流量模式,特别是在加速卡的网络速度和带宽不断增加的情况下,需要对传统数据中心网络拥塞处理进行重大改进。 AllReduce 和 All-to-All 等基础集合的网络优化对于减少作业完成时间至关重要。为了给这些集合提供最高的网络性能,基于多路径协调的拥塞控制对于指导数据包喷发至关重要。 有损和无损网络:虽然 UET 在有损网络上提供出色的性能,利用多路径和网络遥测辅助下的改进拥塞控制,它也可设计在无损网络上运行。
接上文: RDMA - IB规范卷1 - 传输层(概述-基本传输头-扩展头-功能-保序-包头校验), https://cloud.tencent.com/developer/article/2513460 C9-61:为了使响应者能够区分重复数据包和无序数据包,给定发送队列在任何给定时间内未完成的 PSN 系列不得超过 8,388,608 个。 因此,发送队列在任何给定时间内未完成的数据包不得超过 8,388,608 个。 例如,在某些拥塞的网络结构情况下,当预期 RDMA READ 或 Atomic 响应时,可能会收到 ACK。即使响应数据包中包含的 PSN 与请求方预期的响应 PSN 匹配,也可能发生这种情况。 未完, 下一篇(9.7.8 可靠数据报): https://cloud.tencent.com/developer/article/2516321 参考 IB Spec1.6 卷1第9章
本文我们将继续分析RoCE和IB在拥塞控制、QoS、ECMP三个关键功能中的性能表现。拥塞控制拥塞控制即用来减少丢包或者拥塞传播,是传输层的主要功能,但需要借助链路层和网络层的帮助。 而PFC允许在一条以太网链路上创建8个虚拟通道,并为每条虚拟通道指定一个优先等级,允许单独暂停和重启其中任意一条虚拟通道,同时允许其它虚拟通道的流量无中断通过。 如图1所示,DeviceA发送接口分成了8个优先级队列,DeviceB接收接口有8个接收缓存(buffer),两者一一对应(报文优先级和接口队列存在着一一对应的映射关系),形成了网络中 8 个虚拟化通道 在网络层,IB的GRH支持8个bit的Traffic Class字段,用于在跨子网的时候提供不同的优先级,但同样无法保证带宽。 InfiniBand的ECMP在控制平面,IB的路由基于子网管理器,在拓扑发现的基础上实现ECMP,但由于集中式的子网管理器与网络设备分离,可能无法及时感知网络拓扑的变化,进而实现动态的负载均衡。
RoCE与IB网络架构概述RoCE和InfiniBand均是InfiniBand Trade Association(IBTA)定义的网络协议栈,其中Infiniband是一种专为RDMA设计的高性能网络 RoCE与IB网络层级对比IB与RoCE协议栈在传输层以上是相同的,在链路层与网络层有所区别:RoCEv1中,以太网替代了IB的链路层(交换机需要支持PFC等流控技术,在物理层保证可靠传输),然而,由于 目前,六进制(PAM6)和八进制(PAM8)调制技术正处于实验和测试阶段,而InfiniBand(IB)也在逐渐从传统的NRZ(非归零)调制技术转型至PAM4,例如,400G光模块现已能够同时支持IB和以太网标准 它是InfiniBand网络协议中L4传输层的基本头部,用于描述数据包传输的控制信息。格式如下,关键信息有:OpCode,操作码。由8个bit组成。 在网络层,RoCE借助IP的成熟的持续发展,更能适应大规模网络。传输层及以上,RoCE和IB使用同样的协议,没有区别。
物理机网络配置: 虚拟机网络连接使用NAT模式,物理机网络连接使用Vmnet8。 虚拟机设置里面——网络适配器,网络连接选择NAT模式。 虚拟机菜单栏—编辑—虚拟网络编辑器,选择Vmnet8 NAT模式, 1.在最下面子网设置ip为192.168.66.0 子网掩码255.255.255.0 2.NAT设置里面网关IP为192.168.66.2 物理机网络连接VMNet8 手动设置ip地址 192.168.66.1 子网掩码255.255.255.0 网关和DNS地址为192.168.66.2(即虚拟机NAT的网关地址) 编辑linux网卡eth0 如果上一步配置了DNS这一步可以不配置,直接重启网络即可 如果ping不通百度,就必须设置下面的DNS配置 设置DNS地址,运行命令#vi /etc/resolv.conf 光标移动到空行,按“O” 重启网络服务 CentOS 7命令 : #service network restart 注意: 1.新安装的系统默认网卡ONBOOT=no,都需要更改 2.重启网卡, centos 8不能使用service
SAP PM 入门系列17 - IB03 显示设备BOM 1,SAP PM模块里的BOM. material can be created for each piece of equipment or for a group of technical objects. 3, 使用事务代码IB03 BOM usage用4(plant maintenance).输入设备号,工厂代码,bom usage,回车, 看这个设备BOM的header数据, 如下方式可以查到BOM的变更记录, 系统切换到IB80
cocoapods-tutorial-swift-getting-started https://github.com/CocoaPods/CocoaPods/issues/5334 keronsen keronsen commented 2018年3月21日 GMT+8 CocoaPods/CocoaPods/issues/5334#issuecomment-255831772 arifken **arifken **commented 2016年10月25日 GMT+8
一、前言 k8s对Pods之间如何进行组网通信提出了要求,k8s对集群的网络有以下要求: 所有的Pods之间可以在不使用NAT网络地址转换的情况下相互通信 所有的Nodes之间可以在不使用NAT网络地址转换的情况下相互通信 每个Pod自己看到的自己的ip和其他Pod看到的一致 k8s网络模型设计基础原则:每个Pod都拥有一个独立的 IP地址,而且 假定所有 Pod 都在一个可以直接连通的、扁平的网络空间中 。 二、容器和容器之间的网络 ? image.png 在k8s中每个Pod中管理着一组Docker容器,这些Docker容器共享同一个网络命名空间。 对于如何来配置网络,k8s在网络这块自身并没有实现网络规划的具体逻辑,而是制定了一套CNI(Container Network Interface)接口规范,开放给社区来实现。 下面我们看看具体是如何做到的 4.1 netfilter 为了实现负载均衡,k8s依赖linux内建的网络框架-netfilter。
网络、host网络、none网络。 K8s网络模型 K8s术语 K8S 是一个用于容器集群的分布式系统架构。 K8s网络 K8s网络包括CNI、Service、Ingress、DNS 在K8s网络模型中,每个节点上的容器都有自己独立的IP段,节点之间的IP段不能重复,而节点也需要具备路由能力,使从本节点Pod里出来的流量可以根据目的 总结来说,K8s的容器网络重点关注两方面,IP地址分配和路由。 K8s主机内网络模型 K8s采用的是veth pair+bridge的模式,veth pair将容器与主机的网络协议栈连接起来,可以使pod之间通信。
/ib_logfile0 can't be opened in read-write mode 背景 昨天重启了macbook之后,今天跑开发, 发现本地mysql连不上, 报错如下 2020-05-10T09 /ib_logfile0 can't be opened in read-write mode. 2020-05-10T09:18:05.510492Z 0 [ERROR] InnoDB: Plugin builtin plugins. 2020-05-10T09:18:05.822627Z 0 [ERROR] Aborting 解决方案 进入/usr/local/var/mysql/ 目录, 删除ib_logfile0 文件, rm -rf /usr/local/var/mysql/ib_logfile0 重启mysqld搞定 原文链接 https://www.wxhmf.com/posts/mysql-failed-to-start-on-mac-due-to-innnodb-libdata1
一、背景介绍: 对于K8S里面容器之间的通讯基本上面可以分为三种类型: 1. POD里面不同容器之间的通讯: 因为同一个Pod里面的不同容器之间是共享同一个POD里面的网络资源,所以POD里容器之间的通讯基本上就是IPC之间的通讯方式,这个比较简单,不做详细介绍。 二、基础知识介绍: 网桥(Bridge): 在 Linux 中,能够起到虚拟交换机作用的网络设备,是一个工作在数据链路层(Data Link)的设备,主要功能是根据 MAC 地址学习来将数据包转发到网桥的不同端口 三、通讯过程介绍: 容器1的IP1访问容器2的IP2的交互过程如下所示: 1.在容器1中的路由规则里面查找IP2的地址,发现是是外部网络就会直接走容器1里面的eth0网卡(备注:走网卡的话,就是二层网路 从设备会被“剥夺”调用网络协议栈处理数据包的资格,从而“降级”成为网桥上的一个端口。
Kubernetes; 网络想做统一管理,k8s集群运行在OpenStack VM下, 如何做到更深层面的网络打通,典型的原因有: 1、 VM防arp欺骗,默认OpenStack虚拟机端口都开启了此功能 ;处于OpenStack VM里的k8s集群私有ip就无法扩节点通信,通过配置neutron port的allow_address_pairs可以放行私有ip; 2、Overlay网络损耗,再加上在虚拟机里部署 k8s集群,又跑了一层overlay网络,网络开销又增大了; 可选方案 k8s网络使用underlay网络 对现有应用需大量改造,应用内部大量使用内部service机制来调用其它服务,不兼容旧模型,pod 使用的是underlay网络,性能卓越; k8s网络使用多种cni k8s node运行ipvlan或macvlan+ptp的cni, node节点同时加载两个cni插件,ptp cni的作用是创建一对 适用于OpenStack和k8s集群是独立的环境,相当于由OpenStack接管service和NetworkPolicy,OpenStack实现变复杂; 最终选择k8s网络使用多种cni方案,基于保留