20-NetAnalysis配置
本章节下载: 20-NetAnalysis配置 (368.37 KB)
目 录
2.4 配置RoCEv2流量NetAnalysis功能的工作模式
2.10 开启VXLAN隧道内RoCEv2流量的NetAnalysis统计功能
2.11 开启全局VXLAN隧道内RoCEv2流量的丢包分析功能
2.13 RoCEv2流量NetAnalysis典型配置举例
2.13.1 RoCEv2流量NetAnalysis统计信息输出配置举例
仅缺省MDC支持配置NetAnalysis功能,非缺省MDC不支持执行NetAnalysis模块的所有命令。关于MDC的详细介绍请参见“虚拟化技术配置指导”中的“MDC”。
NetAnalysis是一种网络流量监控和分析技术,能够深入分析指定的业务流,提供有关丢包率、时延等性能指标数据。同时,NetAnalysis支持将分析结果发送至网络流分析数据处理器进行进一步分析和展示,以方便网络管理员监控网络运行情况并迅速定位网络故障。
一个典型的NetAnalysis系统由三部分组成:NDE(NetAnalysis Data Exporter,网络流数据输出者)、NAP(NetAnalysis Processor,网络流分析处理器)和NDA(NetAnalysis Data Analyzer,网络流数据分析器)。
· NDE:一般由设备的CPU芯片来承担该功能。NDE通过ACL中所定义的规则来筛选出需要进一步分析的特定业务流量。一旦识别出与ACL规则相匹配的数据流,NDE会将这些数据上送至NAP,以便进行进一步的分析和处理。
· NAP:通常为运行于某种操作系统上的一个应用程序,主要负责接收NDE上送的数据流,并对其进行处理与分析。完成分析后,NAP会将结果发送给NDA。
· NDA:为一个具有图形化界面的网络流量分析工具,旨在简化数据的获取、展示和分析过程,以便用户使用。
如图1-1所示,当业务流途径多台设备时,只要往返方向路径相同,途径的每台设备都能够获取到该业务流的双向流量。这使得可以在这些设备上对有关该业务流的丢包、时延等各种指标信息进行分析。
NDE和NAP通常集成在一台设备上。
图1-1 NetAnalysis系统组成
NetAnalysis的具体工作过程如图1-2所示,分为如下三个步骤:
(1) 在NDE中配置目标业务流,利用部署的ACL规则筛选流量,符合条件的流量被复制并上送至NAP。
(2) NAP对收到的流进行处理,如果业务流可以满足建链要求,则建立流表进行分析;如果业务流不满足建链要求,或超过了设备的处理能力,则丢弃该业务流。有关建链的具体过程,请参见“2.1.2 CM建链过程”。
(3) NAP将分析结果封装成报文后,将其转发给NDA,以供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建链方式。
图2-2 CM建链过程
如图2-2所示,CM建链的过程为:
(1) 客户端通过向服务器发送Connet Request报文,发出建立RoCEv2连接请求。
(2) 服务器收到Connet Request报文后,会向客户端回复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”。
RoCEv2流量NetAnalysis统计功能不支持分析IPv6流量。
RoCEv2流量NetAnalysis统计功能仅支持分析流经SF系列接口板的流量。
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”。
本功能仅支持统计同一个数据中心网络内部的VXLAN隧道流量,不支持统计数据中心之间的VXLAN-DCI隧道流量。
(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智能流量分析功能的工作模式配置为双向模式,否则本功能不生效。
本功能仅支持对同一个数据中心网络内部VXLAN隧道的RoCEv2流量进行丢包分析,不支持对数据中心之间VXLAN-DCI隧道的RoCEv2流量进行丢包分析。
(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保留在没有任何通知或提示的情况下对资料内容进行修改的权利!