如何利用仪表构造InfiniBand流量在数据中心测试中的应用

2024-05-01 18:20

本文主要是介绍如何利用仪表构造InfiniBand流量在数据中心测试中的应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、什么是Infiniband?

在当今数据爆炸的时代,数据中心作为信息处理的中心枢纽,面临着前所未有的挑战。传统的通信方式已经难以满足日益增长的数据传输需求,而InfiniBand技术的出现,为数据中心带来了全新的通信解决方案。
InfiniBand(IB)是一种高性能计算和数据中心网络架构,其设计目标是通过提供低延迟、高带宽以及可扩展性来满足大规模计算和数据传输的需求。让我们深入了解InfiniBand的基本概念。
InfiniBand网络采用点对点的直连架构。每个设备,如服务器、存储设备或其他计算资源,都通过InfiniBand适配器直接连接到网络,形成一个点对点的通信结构。这种设计有助于降低通信的延迟,提高整体性能。

二、Infiniband产生的原因

说到Infiniband网络,我们首先提到传统网络数据传输的架构。在传统的互连结构中,操作系统通常是共享网络资源的唯一所有者,这导致应用程序无法直接访问网络。相反,数据传输通常需要依赖操作系统将数据从应用程序的虚拟缓冲区传输到网络堆栈和线路。在传统网络结构中,应用程序需要通过操作系统来实现数据的传输。
在这里插入图片描述

这个过程包括:

  • 应用程序缓冲区:数据通常存储在应用程序的缓冲区中,等待被传输。
  • 操作系统介入:应用程序通过系统调用等方式请求操作系统将数据传输到网络堆栈中。
  • 网络堆栈传输:操作系统将数据从应用程序缓冲区传输到网络堆栈,其中包括协议栈的处理,例如TCP/IP协议。
  • 网络线路传输:最终,数据通过网络线路传输到目标节点。这种结构下,应用程序无法直接控制网络的数据传输,而是依赖于操作系统进行中介。

InfiniBand技术的突出特点之一是以应用为中心的网络交互方式。这种方式下,应用程序能够直接通过网络进行数据的交换,而无需直接涉及操作系统。
在这里插入图片描述

以下是InfiniBand实现以应用为中心方式的关键机制:

  • 远程直接内存访问(RDMA)
    InfiniBand网络支持远程直接内存访问(RDMA)技术。通过RDMA,应用程序可以在不涉及操作系统的情况下直接访问和交换内存中的数据。这种直接的内存访问方式消除了传统网络结构中的中介步骤,大大降低了数据传输的延迟。

  • 用户空间网络堆栈
    InfiniBand网络允许在用户空间中实现网络堆栈,使得应用程序能够直接处理网络协议。这样一来,应用程序不再需要通过操作系统的内核空间进行数据传输,而是可以直接在用户空间中完成网络操作,提高了效率和灵活性。

  • 零拷贝技术
    InfiniBand还支持零拷贝技术,通过这一技术,应用程序可以直接在内存中操纵数据,而无需将数据复制到中间缓冲区。这降低了数据传输的开销,提高了效率。

三、Infiniband网络架构与TCP/IP

InfiniBand架构与传统的TCP/IP模型在网络通信中有着显著的差异,尤其在分布式存储和高性能计算领域的应用上。InfiniBand架构分为五层,类似于传统的TCP/IP模型。这五层分别是:

  • 物理层:处理硬件接口、电气和光学传输等底层细节。
  • 数据链路层:负责数据的封装和解封装,错误检测和纠正。
  • 网络层:处理数据的路由和转发,确保数据在不同设备之间的正确传递。
  • 传输层:负责端到端的可靠数据传输,包括流控制和错误恢复。
  • 应用层:提供网络服务给应用程序,如TCP、UDP等。

InfiniBand在分布式存储领域,尤其是在分布式并行计算场景的存储前端网络中得到广泛应用。其强调高性能、低延迟,适用于大规模并行计算机集群和需要高吞吐量的应用场景。
TCP/IP则更为普遍地应用于商业网络和一般互联网通信。它是目前互联网通信的主流协议,用于支持各种应用,包括网页浏览、电子邮件、文件传输等。
InfiniBand架构通过引入远程直接内存访问(RDMA)技术等创新,解决了网络传输过程中服务器端数据处理的延迟问题。RDMA技术允许通过网络接口直接访问内存数据,无需内核干预,从而实现高吞吐量和低延迟的网络通信。
在这里插入图片描述

四、Infiniband网络有哪些优势

通过InfiniBand实现应用为中心的网络交互方式,带来了一系列优势,并与传统网络结构形成了关键区别:
1、低时延
由于应用程序能够直接进行数据交换,而无需经过多层的操作系统介入,因此InfiniBand网络实现了更低的传输延迟。这对于对延迟要求较高的应用场景非常重要。
2、高带宽
InfiniBand的应用为中心方式能够更有效地利用网络资源,提高了整体的带宽利用率。这使得InfiniBand网络在大规模数据传输和高性能计算等方面表现出色。
3、高效能
通过支持RDMA、用户空间网络堆栈和零拷贝技术,InfiniBand实现了更为高效的数据传输方式。这种高效能直接影响到应用程序的性能和响应速度。
4、灵活性
以应用为中心的方式使得应用程序更灵活地控制数据传输和网络操作,无需过多依赖于操作系统的限制。这为应用程序提供了更大的自主性和定制性。

五、如何使用测试仪构造基于UDP的infiniband流量

信而泰L23测试平台Renix支持构造UDP报文头内的各种InfiniBand报文协议栈,通过构造Infinbind流量,模拟CA设备与被测设备之间进行请求(request)或者响应(response)消息的交互,以此来验证被测设备针对Infiniband协议字段的识别和处理能力。
测试拓扑及主要配置步骤如下:
在这里插入图片描述
如图所示,测试仪P1与P2端口与DUT的A、B端口互联,通过在测试仪A端口构造Infiniband流量发送至A端口,应答消息由B端口发送至测试仪B端口,来模拟CA设备之间的消息交互场景。
1、创建流量;
2、添加UDP头部;
在这里插入图片描述

3、在UDP头部前添加Rocev2instance;
在这里插入图片描述

4、编辑协议字段并发送流量;
在这里插入图片描述

创建完成后可以在流模板帧界面可以看到创建的该条流量是基于UDP的infiniband流量,并且每个字段都支持自定义编辑。
被测设备收到测试仪发出的Infiniband消息后会解析其中的消息字段并做出响应,通过这种方式可以测试执行send、recive、write、read、原子操作的场景。报文交互现象如下图所示:
在这里插入图片描述

每个Infiniband报文分为payload、路由报文头(header)、CRC校验等,其中header包含以下内容:
本地路由头部(LRH):包括目标端口本地ID(DLID)和源端口本地ID(SLID)。两者都占据16-bits,前者用来表示报文通过交换机需要到达的子网目的地端口;后者用来表示报文源头的子网ID。
全局路由头部(GRH):包括目标端口全局ID(DGID)和源端口全局ID(SGID)。两者都占据128-bits,高64-bits表示CA端口的子网ID,低64-bits表示端口的全局唯一ID(GUID)。
基础传输头部(BTH):包括Opcode、DestQP和PSN。Opcode表示报文操作类型;DestQP表示对端CA的目标QP(QueuePair,是IB协议中信息传输的重要机制);PSN(PacketSequenceNumber)占24-bits,表示报文序列号,可以用于报文顺序检查和报文重传。

六、信而泰DarYu/BigTao系列网络测试仪

DarYu-X系列高性能网络测试仪是信而泰推出的面向高端路由器、高端交换机、数据中心交换机以及高性能应用层设备的测试产品,具有高性能、高密度、高速率等特点,支持单框运行、多框级联等模式。它采用模块化设计,提供3个或12个插槽,测试接口覆盖以太网1G到400G范围内的所有速率,实现按需扩展,帮助企业用户轻松应对测试业务的快速增长和未来业务发展。
BigTao-V系列网络测试仪可实现针对网络设备和网络系统的流量测试及协议仿真,在功能、性能及安全性方面提供全面测试解决方案,满足研发、实验和质量控制等过程中的测试需求。
在这里插入图片描述
在这里插入图片描述

这篇关于如何利用仪表构造InfiniBand流量在数据中心测试中的应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/952359

相关文章

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

水位雨量在线监测系统概述及应用介绍

在当今社会,随着科技的飞速发展,各种智能监测系统已成为保障公共安全、促进资源管理和环境保护的重要工具。其中,水位雨量在线监测系统作为自然灾害预警、水资源管理及水利工程运行的关键技术,其重要性不言而喻。 一、水位雨量在线监测系统的基本原理 水位雨量在线监测系统主要由数据采集单元、数据传输网络、数据处理中心及用户终端四大部分构成,形成了一个完整的闭环系统。 数据采集单元:这是系统的“眼睛”,

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

csu 1446 Problem J Modified LCS (扩展欧几里得算法的简单应用)

这是一道扩展欧几里得算法的简单应用题,这题是在湖南多校训练赛中队友ac的一道题,在比赛之后请教了队友,然后自己把它a掉 这也是自己独自做扩展欧几里得算法的题目 题意:把题意转变下就变成了:求d1*x - d2*y = f2 - f1的解,很明显用exgcd来解 下面介绍一下exgcd的一些知识点:求ax + by = c的解 一、首先求ax + by = gcd(a,b)的解 这个

hdu1394(线段树点更新的应用)

题意:求一个序列经过一定的操作得到的序列的最小逆序数 这题会用到逆序数的一个性质,在0到n-1这些数字组成的乱序排列,将第一个数字A移到最后一位,得到的逆序数为res-a+(n-a-1) 知道上面的知识点后,可以用暴力来解 代码如下: #include<iostream>#include<algorithm>#include<cstring>#include<stack>#in

zoj3820(树的直径的应用)

题意:在一颗树上找两个点,使得所有点到选择与其更近的一个点的距离的最大值最小。 思路:如果是选择一个点的话,那么点就是直径的中点。现在考虑两个点的情况,先求树的直径,再把直径最中间的边去掉,再求剩下的两个子树中直径的中点。 代码如下: #include <stdio.h>#include <string.h>#include <algorithm>#include <map>#

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测