21-NetAnalysis配置
本章节下载: 21-NetAnalysis配置 (338.47 KB)
目 录
2.4 配置RoCEv2流量NetAnalysis功能的工作模式
2.10 开启VXLAN隧道内RoCEv2流量的NetAnalysis统计功能
2.11 开启全局VXLAN隧道内RoCEv2流量的丢包分析功能
2.13 RoCEv2流量NetAnalysis典型配置举例
2.13.1 RoCEv2流量NetAnalysis统计信息输出配置举例
NetAnalysis技术是一种网络流量监控和分析技术,可以对指定的业务流进行深度分析,得到指定业务流的丢包率、时延等性能指标数据。同时,支持将分析结果上送给网络流分析数据处理器进行分析和展示,从而方便网络管理员监控网络运行情况和快速定位网络故障。
一个典型的NetAnalysis系统由NDE(NetAnalysis Data Exporter,网络流数据输出者)、NAP(NetAnalysis Processor,网络流分析处理器)和NDA(NetAnalysis Data Analyzer,网络流数据分析器)三部分组成。
· NDE:负责配置符合指定规则的待检测业务流,并上送到NAP。
· NAP:对NDE上送的业务流进行处理和分析,并将分析结果输出至NDA。
· NDA:表示一个网络流量分析工具,具有图形化用户界面,使用户可以方便地获取、显示和分析收集到的数据。
NDE和NAP一般集成在一台设备上。如图1-1所示,当一条业务流往返方向路径相同时,途径的每台设备都可以获取该业务流的双向流量,从而可以在这些设备上分析出该业务流的丢包、时延等各种指标。
图1-1 NetAnalysis系统组成
NetAnalysis的具体工作过程如图1-2所示,分为如下三个步骤:
(1) 在NDE上配置待检测的业务流,并通过下发的ACL规则匹配指定的业务流,匹配通过的业务流将会被复制上送到NAP。
(2) NAP对收到的流进行处理,如果是满足要求的流,则建立流表进行分析;如果不满足要求,或者处理性能超过规格,则丢弃。
(3) NAP将分析结果按照指定的目的地址进行封装,将封装后的报文查找路由表进行转发,最终到达NDA进行分析和展示。
图1-2 NetAnalysis工作过程
RDMA(Remote Direct Memory Access,远程直接内存访问)是一种直接内存访问技术,用于IB(InfiniBand,无限带宽)网络,可以解决网络传输中服务器端数据处理的延迟。RDMA通过网络把数据直接传入计算机的存储区,将数据从一个系统快速移动到远程系统存储器中,而不对操作系统造成任何影响,不需要经过处理器耗时的处理,最终可以达到高带宽、低延迟和低资源利用率的效果。
RoCEv2(RDMA over Converged Ethernet)是一种允许通过以太网使用远程直接内存访问的网络协议,是RDMA在以太网上的应用。该协议广泛用于高性能计算、分布式存储、AI人工智能等TCP/IP场景,以降低CPU的处理和延迟,提升应用的性能。但这些场景下,会出现多个节点向一个节点发送报文的情况,容易造成设备内部队列缓存的瞬时突发拥塞基至丢包,造成时延的增加和吞吐的下降。因此需要采用NetAnalysis技术对RoCEv2流量进行智能流量监控和分析,分析RoCEv2流的丢包、时延和吞吐以及路径信息,实时监控RoCEv2网络状态。
RoCEv2是一种网络层协议,可以实现路由功能,允许不同广播域下的主机通过三层访问。RoCEv2是基于UDP协议封装的,报文格式如图2-1所示。
图2-1 RoCEv2报文格式
RoCEv2报文各字段的含义如下:
· Ethernet header:以太报文头,包括源MAC地址和目的MAC地址。
· IP header:IP报文头,包括源IP地址和目的IP地址。
· UDP Header:UDP报文头,包括源端口号和目的端口号,其中目的端口号为4791。
· InfiniBand Base Transport Header:InfiniBand传输层的头部字段。包含进行NetAnalysis的关键字段。
· IB Payload:消息负载。
· ICRC和FCS:分别对应冗余检测和帧校验。
其中InfiniBand Base Transport Header包含各字段的含义如下:
· Opcode:表示RoCEv2的报文类型,指出报文处于什么操作模式,主要包括:
¡ ConnectMsg模式:此时报文用于建立RoCEv2连接,简称CM(Communication Management)建链。建链成功后,本端和远端之间才能传递数据报文。
¡ Send模式:此时报文用于发给远端,发送端不控制接收端在哪存储数据。
¡ Write模式:此时报文用于写入远端,报文中会指定远端要写入数据的地址、key(关键值)和数据长度。
¡ Read模式:此时报文用于远端读取,报文中会指定远端请求读取数据的地址、key和数据长度。检测吞吐时将对Send、Write和Read模式的RoCEv2报文进行分析。
¡ ACK(Acknowledge)模式:此时报文用于接收端反馈应答消息,依据RoCEv2 ACK报文特有的ACK Extended Transport Header的内容,可以将ACK报文分为普通ACK报文(表示信息成功接收的响应信息)和NAK报文(表示出现了丢包)。
· Dest QP:目的QP,用来标识一条RoCEv2流,相当于RoCEv2报文中的目的端口,是NetAnalysis用来建立RoCEv2流表的关键值。
· PSN:表示RoCEv2报文的序列号,可通过检测PSN是否连续来判断是否存在丢失的数据包,若出现了丢包,就会返回NAK报文。
RDMA的建链方式有基于RoCE报文的CM建链和基于TCP报文自定义字段的TCP建链两种方式。
NetAnalysis功能支持对CM建链报文和TCP建链报文进行智能分析。由于TCP建链方式的流分析过程与CM基本一致,且TCP建链属于用户自定义内容,所以本节只介绍CM建链方式。
CM建链的过程如图2-2所示。
图2-2 CM建链过程
ConnectMsg模式的RoCEv2报文有三种类型:
(1) Connect Request:由客户端发送给服务器,请求建立RoCEv2连接。
(2) Connect Reply:服务器收到请求后,返回该报文给客户端,客户端收到后即认为与对端已经建立了连接。
(3) ReadyToUse:客户端认为连接建立后,发送该报文给服务器,服务器收到后,CM建链成功。
设备上开启RoCEv2流量NetAnalysis功能后,NDE会匹配RoCEv2报文中的Opcode字段来获取RoCEv2报文。通过Opcode字段,可以获知报文类型,NAP会依据RoCEv2建链报文中的四元组信息关键值(RoCEv2流的客户端IP地址、RoCEv2流的服务器端IP地址、客户端的QP值、服务器端QP值)形成流表项,从而组成一个RoCEv2流表。
NAP根据NDE后续上送的RoCEv2数据报文,对流表中的一些关键字段进行统计,根据统计结果可以分析出RoCEv2流性能信息(丢包、时延和吞吐以及路径信息等)。流表中的统计内容支持在设备上查看,同时该统计结果会在流老化后输出至NDA,进一步的展示和分析。
RoCEv2流量NetAnalysis流老化是设备向NDA输出流统计信息的一种手段。当设备开启RoCEv2流量NetAnalysis功能后,流统计信息首先会被存储在设备的NetAnalysis缓冲区中。当存储在设备上的NetAnalysis流信息老化后,设备会把缓冲区中的流统计信息输出报文发送给NDA,同时清除缓冲区中的对应信息。
RoCEv2流量NetAnalysis流老化仅支持流的非活跃老化。
由于网络上的流是短时间阵发的,在短时间内就会产生大量的流,而设备的缓存空间容量是一定的,当一条RoCEv2流的非活跃时间(从流最后一个报文流过时间到当前的时间)超过所设置的非活跃老化时间时,设备认为该流处于非活跃状态(流已经断了),这样就需要把当前的流表输出至NDA并从缓存空间中删除,为后面到来的流提供空间,这个过程称为流的非活跃老化。同时删除会话并通知NDA。
RoCEv2流量NetAnalysis统计功能可以与ACL(Access Control List,访问控制列表)配合使用,可以根据ACL规则对经过设备的RoCEv2流量进行匹配,使得RoCEv2流量NetAnalysis功能只统计ACL筛选出的报文。通过这种方式可以使RoCEv2流量NetAnalysis功能只对用户关注的数据进行统计,更能满足用户多样的统计要求。有关ACL的详细介绍,请参见“ACL和QoS配置指导”中的“ACL”。
同时配置NetAnalysis和大小流区分调度,大小流区分调度的优先级更高,NetAnalysis查不到RoCEv2流量会话信息。有关大小流区分调度的详细介绍,请参见ACL和QoS配置指导中的QoS。Netanalysis和如下功能互斥,不能同时配置:
· 引用了采样器的镜像功能
· NetStream、IPv6 NetStream、sFlow、INT、Telemetry Stream、MOD功能。
有关镜像、NetStream、IPv6 NetStream和sFlow的详细配置,请参见“网络管理和监控配置指导”中的“镜像”、“NetStream”、“IPv6 NetStream”和“sFlow”。有关INT、Telemetry Stream和MOD的详细配置,请参见“Telemetry配置指导”中的“INT”、“Telemetry Stream”和“MOD”。
如下功能不能同时配置,仅支持配置其中两个:
· 开启全局RoCEv2流量丢包统计功能。
· 开启VXLAN隧道内RoCEv2流量的NetAnalysis统计功能。
· 开启全局VXLAN隧道内RoCEv2流量的丢包分析功能。
NetAnalysis配置任务如下:
(1) 配置RoCEv2流量NetAnalysis功能的工作模式
(4) (可选)配置RoCEv2流量的AI ECN功能
(5) (可选)配置RoCEv2流统计信息发送给NDA的时间间隔
(6) (可选)配置RoCEv2流的非活跃老化时间
(7) (可选)开启VXLAN隧道内RoCEv2流量的NetAnalysis统计功能
(8) (可选)开启全局VXLAN隧道内RoCEv2流量的丢包分析功能
如图2-3所示,为了保证能够正确分析RoCEv2流量,当同一个RoCEv2客户端和服务器端存在多条路径时,建议在客户端和服务器端接入的节点设备(Device C和Device D)上均配置双向模式,在中间节点设备(Device A和Device B)上均配置单向模式。两种模式的工作特点如下:
· 双向模式:设备可以抓取客户端和服务器端之间的双向流量,根据CM建链报文获取用来表示RoCEv2会话的四元组信息,NetAnalysis基于RoCEv2会话统计报文的相关信息,可以统计基于会话的RTT(Round Trip Time,报文往返时延)和丢包数。
· 单向模式:设备只能抓取客户端到服务器端之间的单向流量,获取建立RoCEv2流表项的三元组信息,只能基于RoCEv2流表项统计报文的吞吐量,无法统计基于会话的RTT和丢包数。
图2-3 RoCEv2流量NetAnalysis功能的工作模式
在配置NetAnalysis其他功能前,请先通过本命令配置RoCEv2流量NetAnalysis功能的工作模式,否则其他功能不生效。
切换RoCEv2流量NetAnalysis功能的工作模式后,原先模式下所有的NetAnalysis功能相关配置及缓存信息均会被清除,请谨慎操作。
(1) 进入系统视图。
system-view
(2) 配置RoCEv2流量NetAnalysis功能的工作模式。
netanalysis rocev2 mode { bidir | single }
缺省情况下,未配置RoCEv2流量NetAnalysis功能的工作模式,RoCEv2流量NetAnalysis功能处于关闭状态
开启本功能后,设备会对指定的RoCEv2流量进行NetAnalysis统计分析,并将分析结果上送NAP。指定的RoCEv2流量通过ACL规则进行匹配,规则中指定的deny或permit动作不生效。目前仅支持如下高级ACL规则,不支持的ACL规则会无法生效,导致NAP收不到匹配通过的业务流:
· rule1:仅配置UDP协议和目的IPv4地址;
· rule2:仅配置UDP协议和源IPv4地址;
· rule3:仅配置UDP协议、源IPv4地址和目的IPv4地址。
有关ACL规则配置的详细说明,请参见“ACL和Qos”配置中的“ACL”。
(1) 进入系统视图。
system-view
(2) 开启RoCEv2流量NetAnalysis统计功能NetAnalysis全局统计功能。
netanalysis rocev2 statistic { global | acl name acl-name }
缺省情况下,RoCEv2流量NetAnalysis统计功能处于关闭状态。
在RoCEv2网络中,最重要的是需要保证网络流量零丢包。开启本功能后,设备会对所有入端口的所有RoCEv2流量进行丢包分析。
在开启本功能前,必须先将NetAnalysis智能流量分析功能的工作模式配置为双向模式,否则本功能不生效。
(1) 进入系统视图。
system-view
(2) 开启全局RoCEv2流量丢包统计功能。
netanalysis rocev2 drop global
配置本功能后,设备会在RoCEv2流量的出接口上基于RoCEv2会话统计报文的相关信息并上送给NDA。NDA根据统计到的RoCEv2流量,智能调整无损队列的ECN(Explicit Congestion Notification,显示拥塞通知)门限,从而保障零丢包下的低时延和高吞吐,让无损业务达到最优性能。有关ECN的详细介绍,请参见“ACL和QoS”中的“QoS”。
(1) 进入系统视图。
system-view
(2) 配置RoCEv2流量的AI ECN功能。
netanalysis rocev2 ai-ecn enable
缺省情况下,RoCEv2流量的AI ECN功能处于关闭状态。
设备开启RoCEv2流量的NetAnalysis统计功能后,还需将包含流统计结果的RoCEv2流量统计信息输出给指定的NDA,才能完成流信息的进一步加工和可视化。用户可以根据需要配置RoCEv2流统计信息发送给NDA的时间间隔。
(1) 进入系统视图。
system-view
(2) 配置RoCEv2流统计信息发送给NDA的时间间隔。
netanalysis rocev2 report-interval interval
缺省情况下,RoCEv2流统计信息发送给NDA的时间间隔为10秒。
RoCEv2流达到非活跃老化时间后,设备会将该流在流缓存区中的统计信息发送给NDA之后,将该流相关的统计信息删除,将该条流的表项进行老化。
(1) 进入系统视图。
system-view
(2) 配置RoCEv2流的非活跃老化时间。
netanalysis rocev2 timeout inactive seconds
当用户需要了解和优化VXLAN组网的网络性能,提升网络的传输速度和可靠性时,可以配置VXLAN隧道内RoCEv2流量的NetAnalysis统计功能。
通过使用该功能,用户可以对VXLAN隧道边缘节点、中间节点的RoCEv2流量进行NetAnalysis统计分析,统计节点上每个流量的数据特征,包括流量量、带宽、延迟等信息,并将这些分析结果上送。
指定的RoCEv2流量通过ACL规则进行匹配,规则中指定的deny或permit动作不生效。目前仅支持如下高级ACL规则,不支持的ACL规则会无法生效,导致NAP收不到匹配通过的业务流:
· rule1:仅配置UDP协议和目的IPv4地址;
· rule2:仅配置UDP协议和源IPv4地址;
· rule3:仅配置UDP协议、源IPv4地址和目的IPv4地址。
有关ACL规则配置的详细说明,请参见“ACL和QoS”配置中的“ACL”。
(1) 进入系统视图。
system-view
(2) 开启VXLAN隧道中间节点RoCEv2流量的NetAnalysis统计功能。
netanalysis rocev2 vxlan statistics { acl name acl-name | global }
缺省情况下,VXLAN隧道中间节点RoCEv2流量的NetAnalysis统计功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 开启VXLAN隧道边缘节点RoCEv2流量的NetAnalysis统计功能。
netanalysis rocev2 vxlan-ip statistics { acl name acl-name | global }
缺省情况下,VXLAN隧道边缘节点RoCEv2流量的NetAnalysis统计功能处于关闭状态。
在VXLAN组网的RoCEv2网络中,最重要的是需要保证网络流量零丢包。用户可以配置本功能对VXLAN隧道内中间节点的RoCEv2流量、边缘节点的RoCEv2流量的解封装报文进行丢包分析。
在开启本功能前,必须先将NetAnalysis智能流量分析功能的工作模式配置为双向模式,否则本功能不生效。
(1) 进入系统视图。
system-view
(2) 开启全局VXLAN隧道中间节点RoCEv2流量的丢包分析功能。
netanalysis rocev2 vxlan drop global
缺省情况下,全局VXLAN隧道中间节点RoCEv2流量丢包分析功能处于关闭状态。
(1) 进入系统视图。
system-view
(2) 开启全局VXLAN隧道边缘节点RoCEv2流量的丢包分析功能。
netanalysis rocev2 vxlan-ip drop global
缺省情况下,全局VXLAN隧道边缘节点RoCEv2流量的丢包分析功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后RoCEv2流量NetAnalysis的运行情况,通过查看显示信息验证配置的效果。
在用户视图下执行reset命令可以清除NetAnalysis的统计信息。
表2-1 RoCEv2流量NetAnalysis显示和维护
操作 |
命令 |
显示RoCEv2流缓存区的配置和状态信息 |
display netanalysis rocev2 cache [ destination destination-ip | dstvxlan-id dstvxlan-id | source source-ip | srcvxlan-id srcxlan-id ]* |
显示RoCEv2流的统计信息 |
display netanalysis rocev2 statistics |
清除RoCEv2流的统计信息 |
reset netanalysis rocev2 statistics |
如图2-4所示,在Device上配置RoCEv2流量NetAnalysis功能,要求对客户端和服务器端之间的往返报文进行智能分析,并将RoCEv2流的统计信息输出到NDA。
图2-4 RoCEv2流量NetAnalysis统计信息输出配置组网图
(1) 配置IP地址
请按照图2-4配置各接口的IP地址和子网掩码,具体配置过程略。
(2) 配置RoCEv2流量NetAnalysis统计功能
# 配置RoCEv2流量NetAnalysis功能的工作模式为双向模式。
<Device> system-view
[Device] netanalysis rocev2 mode bidir
# 开启RoCEv2流量NetAnalysis统计功能。
[Device] netanalysis rocev2 statistics global
设备运行一段时间后,查看RoCEv2流的统计信息。
# 查看RoCEv2流缓存区的配置和状态信息。
[Device] display netanalysis rocev2 cache
NOTE:
S2D: source to destination D2S: destination to source
RTT: round trip time RPT: packet throughput in read mode
WPT: packet throughput in write mode SPT: packet throughput in send mode
I: input O: output L: local R: remote
NetAnalysis cache information:
-----------------------------------------------------------------------------
Flow created at Service type
Src IP Src QP S2D RTT S2D RPT S2D SPT/WPT
S2D NAK Pkts S2D Interface(I) S2D Interface(O)
S2D Src VXLAN ID S2D Dst VXLAN ID
Dst IP Dst QP D2S RTT D2S RPT D2S SPT/WPT
D2S NAK Pkts D2S Interface(I) D2S Interface(O)
D2S Src VXLAN ID D2S Dst VXLAN ID
-----------------------------------------------------------------------------
01/22/2019 09:08:15 RC
11.110.2.2 93309 50 11 11
2 Vlan-int100(L) Vlan-int200(L)
10 10
12.110.2.2 85353 50 11 11
8373 Vlan-int200(L) Vlan-int100(L)
10 10
# 查看NetAnalysis功能中RoCEv2流的统计信息。
[Device] display netanalysis rocev2 statistics
Last statistics resetting time: Never
--------------------------------------------------------------------------------
Received packets: 1833088
--------------------------------------------------------------------------------
Type
Active Aged Created Reported
(Sessions) (Sessions) (Sessions) (Sessions)
--------------------------------------------------------------------------------
RoCEv2
2 0 2 10
--------------------------------------------------------------------------------
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!