- Table of Contents
-
- 14-Network Management and Monitoring Command Reference
- 00-Preface
- 01-System maintenance and debugging commands
- 02-NQA commands
- 03-iNQA commands
- 04-iFIT commands
- 05-SRPM commands
- 06-NTP commands
- 07-PTP commands
- 08-Network synchronization commands
- 09-SNMP commands
- 10-RMON commands
- 11-NETCONF commands
- 12-CWMP commands
- 13-EAA commands
- 14-Process monitoring and maintenance commands
- 15-Sampler commands
- 16-Mirroring commands
- 17-NetStream commands
- 18-IPv6 NetStream commands
- 19-TCP connection trace commands
- 20-Performance management commands
- 21-Flow log commands
- 22-Information center commands
- 23-Packet capture commands
- 24-Flow monitor commands
- Related Documents
-
Title | Size | Download |
---|---|---|
04-iFIT commands | 158.49 KB |
iFIT commands
bind interface
Use bind interface to bind an interface to an instance.
Use undo bind interface to unbind an interface from an instance.
Syntax
bind interface interface-type interface-number
undo bind interface [ interface-type interface-number ]
Default
An instance is not bound to any interfaces.
Views
iFIT instance view
Predefined user roles
network-admin
Parameters
interface-type interface-number: Specifies an interface by its type and number. If you do not specify this argument, the default setting will be restored. Currently, you can only bind a Layer 3 physical interface to an interface.
Usage guidelines
Before enabling iFIT measurement on the ingress point of an instance, execute this command to bind an interface to the instance. After you bind an interface to an instance, iFIT parses the packets passing through the interface to identify the target packets and add an iFIT header to each target packets. Meanwhile, iFIT will count the number of target packets, and send the packet count and timestamp to the analyzer at intervals through gRPC.
You can repeat this command to bind multiple interfaces to an instance. You can configure only one set of flow match criteria for an instance. Each bound interface matches target flows based on the same set of criteria and assigns different flow IDs to the target flows. iFIT measures the delay and packet loss of the target flows on a per-interface basis.
Examples
# Bind interface Ten-GigabitEthernet 3/0/1 to instance abc.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] bind interface ten-gigabitethernet 3/0/1
delay-measure disable
Use delay-measure disable to disable packet delay measurement.
Use undo delay-measure disable to enable packet delay measurement.
Syntax
delay-measure disable
undo delay-measure disable
Default
Packet delay measurement is enabled.
Views
iFIT instance view
Predefined user roles
network-admin
Usage guidelines
By default, packet delay measurement is enabled. You can execute this command to disable packet delay measurement as required.
Examples
# Disable packet delay measurement.
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] delay-measure disable
delete dynamic-flow
Use delete dynamic-flow to delete iFIT dynamic flows.
Syntax
delete dynamic-flow { all | device-id device-id flow-id flow-id }
Views
iFIT view
Predefined user roles
network-admin
Parameters
all: Specifies all dynamic flows.
device-id device-id: Specifies an iFIT device by its ID in the range of 1 to 1048575.
flow-id flow-id: Specifies an iFIT flow by its ID in the range of 1 to 1048575.
Usage guidelines
A flow ID is generated on the ingress point and passed to the transmit points and egress point. A flow ID and a device ID uniquely identify a flow and you can execute the display ifit flow static command to view the flow ID.
Examples
# Delete the dynamic flow with device ID 2 and flow ID 4098.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] delete dynamic-flow device-id 2 flow-id 4098
Related commands
display ifit flow static
device-id
Use device-id to specify a device ID.
Use undo device-id to restore the default.
Syntax
device-id device-id
undo device-id
Default
No device ID is specified.
Views
iFIT view
Predefined user roles
network-admin
Parameters
device-id: Specifies a device ID in the range of 1 to 1048575.
Usage guidelines
A device ID uniquely identifies a device in an iFIT network. To make iFIT function correctly, specify a device ID and make sure the specified device ID is unique.
Examples
# Specify 100 as the device ID.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] device-id 100
display ifit flow dynamic
Use display ifit flow dynamic to display dynamic flow information.
Syntax
display ifit flow dynamic [ device-id device-id flow-id flow-id ]
Views
Any view
Predefined user roles
network-admin
network-operator
Parameters
device-id device-id: Specifies an iFIT device by its ID in the range of 1 to 1048575.
flow-id flow-id: Display information about a dynamic flow by its ID. The value range for the flow-id argument is 1 to 1048575.
Usage guidelines
A static flow is a service flow that matches a set of criteria configured on the ingress point. The ingress point generates a static flow after you enable iFIT measurement and execute the flow command to configure iFIT flow match criteria. The static flow is uniquely identified by a device ID and a flow ID. The device ID is configured by the device-id command and the flow ID is a number that is generated on the ingress point in the range of 1 to 1048575. The device ID and flow ID are encapsulated in an iFIT header and passed to the transmit points and egress point.
To view the device ID and flow ID of a static flow, execute the display ifit flow static command on the ingress point.
A dynamic flow is a service flow that the device dynamically learns. For the ingress point, if the device receives a packet that matches static flow settings, a dynamic flow with the same flow ID as the static flow is generated. For a transmit point and the egress point, they parse the received packets and generate dynamic flows by dynamically learning from the iFIT headers of the packets.
Examples
# Display dynamic flow information.
<Sysname> display ifit flow dynamic
Device ID : 1
Flow ID : 4099
Flow type : Dynamic
Flow direction : Unidirection
Period : 10 sec
Actual aging-time : 300 sec
Aging threshold : 90%
Interface information
Name Direction
Ten-GigabitEthernet3/0/1 TransitInput
Ten-GigabitEthernet3/0/1 TransitOutput
Table 1 Command output
Field |
Description |
Device ID |
iFIT device ID. |
Flow ID |
Flow ID of a dynamic flow. |
Flow type |
Flow type: · Static. · Dynamic. |
Flow direction |
Flow direction. If the field value is Unidirection, the flow is a unidirectional flow. |
Period |
Measurement period in seconds. |
Actual aging-time |
Actual time when the dynamic flow is aged out. |
Aging threshold |
Aging threshold of dynamic flows in percentage, that is, the percentage of the number of dynamic flows to the total number of dynamic flows supported on the device. |
Interface information |
Information about the interfaces that receive the dynamic flow. |
Name |
Interface name. |
Direction |
Flow direction for the interface: · Ingress—The target flow enters the transit network from this interface. · TransitInput—The target flow enters the node from this interface. · TransitOutput—The target flow leaves the node from this interface. · Egress—The target flow leaves the transit network from this interface. |
Related commands
display ifit flow static
flow
display ifit flow static
Use display ifit flow static to display static flow information for the most recent 10 measurement periods.
Syntax
display ifit flow static [ flow-id flow-id ]
Views
Any view
Predefined user roles
network-admin
network-operator
Parameters
flow-id flow-id: Display information about a static flow by its ID. The value range for the flow-id argument is 1 to 1048575.
Usage guidelines
A static flow is a service flow that matches a set of criteria configured on the ingress point. The ingress point generates a static flow after you enable iFIT measurement and execute the flow command to configure iFIT flow match criteria.
The static flow is uniquely identified by a device ID and a flow ID. The device ID is configured by the device-id command and the flow ID is a number that is randomly generated on the ingress point in the range of 1 to 1048575. The device ID and flow ID are encapsulated in an iFIT header and passed to the transmit points and egress point.
To view the device ID and flow ID of a static flow, execute the display ifit flow static command on the ingress point.
Examples
# Display the configuration of the static flow with flow ID 4097. (The static flow is measured based on 5-tuple granularity in public network IPv4 over SRv6.)
<Sysname> display ifit flow static flow-id 4097
Instance name : 1
Device ID : 1
Flow ID : 4097
Flow information:
Flow type : Static
Flow direction : Unidirection
Source IP/mask length : 1.1.1.1/24
Destination IP/mask length : 2.2.2.2/32
Protocol : TCP
Source port : Any
Destination port : Any
DSCP : 23
VPN instance name : --
Measurement information:
Period : 10 sec
Measurement mode : e2e
Loss measurement : Enabled
Delay measurement : Enabled
Measurement configuration : Enabled
Measurement status : Active
Bound interface:
Ten-GigabitEthernet3/0/1
# Display the configuration of the static flow with flow ID 4099. (The static flow is measured based on 5-tuple granularity in MPLS/SR-MPLS private network IPv6.)
<Sysname> display ifit flow static flow-id 4099
Instance name : 3
Device ID : 1
Flow ID : 4099
Flow information:
Flow type : Static
Flow direction : Unidirection
Source IPv6/prefix length : 1::1/68
Destination IPv6/prefix length : 2::2/128
Protocol : UDP
Source port : 8080
Destination port : 2308
DSCP : --
VPN instance name : vpn3
Measurement information:
Period : 30 sec
Measurement mode : e2e
Loss measurement : Enabled
Delay measurement : Enabled
Measurement configuration : Enabled
Measurement status : Active
Bound interface:
Ten-GigabitEthernet3/0/1
# # Display the configuration of the static flow with flow ID 4100. (The static flow is measured based on the PeerLocator granularity in an L3VPN over SRv6 network.)
<Sysname> display ifit flow static flow-id 4100
Instance name : 4
Device ID : 1
Flow ID : 4100
Flow information:
Flow type : Static
Flow direction : Unidirection
Source IPv6 : Any
Destination IPv6 : Any
VPN instance name : 1
Measurement information:
Period : 30 sec
Measurement mode : e2e
Loss measurement : Enabled
Delay measurement : Enabled
Measurement configuration : Enabled
Measurement status : Active
Bound interface:
Ten-GigabitEthernet3/0/1
Table 2 Command output
Field |
Description |
Instance Name |
Name of the iFIT instance. |
Device ID |
ID of the device that generates the iFIT target flow. |
Flow ID |
Flow ID of the target flow. |
Flow information |
Information about the target flow. |
Flow type |
Flow type: · Static. · Dynamic. |
Flow direction |
Flow direction. If the field value is Unidirection, the flow is a unidirectional flow. |
Source IP/maskLength |
Source IP address and mask length. |
Destination IP/maskLength |
Destination IP address and mask length. |
Source IPv6/prefix length |
Source IPv6 address and prefix length. |
Destination IPv6/prefix length |
Destination IPv6 address and prefix length. |
Protocol |
Protocol: · Any. · UDP. · TCP. · SCTP. |
Source port |
Source port number. |
Destination port |
Destination port number. |
DSCP |
DSCP value of the target flow. |
VPN-instance name |
Name of the VPN instance bound to the target flow. |
VSI name |
Name of the VSI bound to the iFIT flow. |
Xconnect-group |
Name of the cross-connect group bound to the iFIT flow. |
Connection |
Cross-connect bound to the iFIT flow. |
Measurement information |
Information about iFIT measurement. |
Period |
Measurement period. |
Measurement mode |
Measurement mode: · trace—Hop-by-hop measurement. · e2e—End-to-end measurement. |
Next hop configuration |
Next hop of the target flow. This setting has been replaced by other configuration methods. For compatibility with history versions, you can configure this setting, but this setting does not take effect. |
Peer locator |
Remote locator of the iFIT flow. |
Loss measurement |
Delay measurement state: · Enabled. · Disabled. |
Delay measurement |
Loss measurement state: · Enabled. · Disabled. |
Measurement configuration |
Configured measurement state: · Enabled. · Disabled. |
Measurement status |
Actual measurement state: · Active—iFIT measurement is in progress. · Inactive—iFIT measurement has not started. |
Bound interface |
Interface bound with the target flow. |
Related commands
display ifit flow dynamic
flow
display ifit global-information
Use display ifit global-information to display global iFIT flow information.
Syntax
display ifit global-information
Views
Any view
Predefined user roles
network-admin
network-operator
Examples
# In an MPLS network, display global iFIT flow information.
<Sysname> display ifit global-information
Current instance count : 2
Enabled instance count : 1
Current static flow count : 1
Current dynamic flow count : 1
Global next hop configuration : 1.1.1.1
2.2.2.2
3::3
# In an SRv6 network, display global iFIT flow information.
Current instance count : 2
Enabled instance count : 1
Current static flow count : 1
Current dynamic flow count : 1
Global next hop configuration : --
Table 3 Command output
Field |
Description |
Current instance count |
Number of configured iFIT instances. |
Enabled instance count |
Number of instances enabled with iFIT. |
Current static flow count |
Number of static flows. |
Current dynamic flow count |
Number of dynamic flows. |
Global next hop configuration |
Globally configured next hops. In an MPLS/SR-MPLS network, you must specify a next-hop globally to determine a peer PE for iFIT encapsulation. The device performs iFIT encapsulation only for service flows sent to the peer PE. In an SRv6, G-SRv6, or G-BIER network, you do not need to configure this setting, and this setting does not take effect even if you configured it. |
display ifit instance
Use display ifit instance to display iFIT instance information.
Syntax
display ifit instance [ instance-name ]
Views
Any view
Predefined user roles
network-admin
network-operator
Parameters
instance-name: Specifies an iFIT instance by its name, a case-sensitive string of 1 to 31 characters.
Examples
# Display information about iFIT instance 1.
<Sysname> display ifit instance 1
Instance name : 1
Device ID : 1
Flow information:
Flow type : Static
Flow direction : Unidirection
Source IP/mask length : 1.1.1.1/24
Destination IP/mask length : 2.2.2.2/32
Protocol : TCP
Source port : Any
Destination port : Any
DSCP : 23
VPN instance name : --
Measurement information:
Period : 10 sec
Measurement mode : e2e
Loss measurement : Enabled
Delay measurement : Enabled
Measurement configuration : Disabled
Measurement status : Inactive
Flow items:
Flow ID Interface
-- --
# Display information about iFIT instance 2.
<Sysname> display ifit instance 2
Instance name : 2
Device ID : 1
Flow information:
Flow type : Static
Flow direction : Unidirection
Source IP : Any
Destination IP : Any
DSCP : --
VPN instance name : 1
Peer locator : 1::1/32
Measurement information:
Period : 30 sec
Measurement mode : e2e
Loss measurement : Enabled
Delay measurement : Enabled
Measurement configuration : Enabled
Measurement status : Active
Flow items:
Flow ID Interface
2 Ten-GigabitEthernet3/0/1
# Display information about iFIT instance 3.
<Sysname> display ifit instance 3
Instance name : 3
Device ID : 1
Flow information:
Flow type : Static
Flow direction : Unidirection
Source IPv6/prefix length : 1::1/68
Destination IPv6/prefix length : 2::2/128
Protocol : UDP
Source port : 8080
Destination port : 2308
DSCP : --
VPN instance name : vpn3
Measurement information:
Period : 30 sec
Measurement mode : e2e
Loss measurement : Enabled
Delay measurement : Enabled
Measurement configuration : Enabled
Measurement status : Active
Flow items:
Flow ID Interface
11 GigabitEthernet1/0/1
12 GigabitEthernet1/0/2
# Display information about iFIT instance 4.
<Sysname> display ifit instance 4
Instance name : 4
Device ID : 1
Flow information:
Flow type : Static
Flow direction : Unidirection
Source IPv6 : Any
Destination IPv6 : Any
DSCP : --
VPN instance name : 1
Peer locator : 1::1/32
Measurement information:
Period : 30 sec
Measurement mode : e2e
Loss measurement : Enabled
Delay measurement : Enabled
Measurement configuration : Enabled
Measurement status : Active
Flow items:
Flow ID Interface
11 Ten-GigabitEthernet3/0/1
12 Ten-GigabitEthernet3/0/2
Table 4 Command output
Field |
Description |
Instance Name |
iFIT instance name. |
Device ID |
iFIT device ID. |
Flow information |
iFIT target flow information. |
Flow type |
iFIT flow type: · Static. · Dynamic. |
Flow direction |
iFIT flow direction. |
Source IP/maskLength |
Source IP address and mask length of the target flow. |
Destination IP/maskLength |
Destination IP address and mask length of the target flow. |
Source IPv6/prefix length |
Source IPv6 address and prefix length of the target flow. |
Destination IPv6/prefix length |
Destination IPv6 address and prefix length of the target flow. |
Protocol |
Target flow protocol: · any. · udp. · tcp. · sctp. |
Source port |
Source port number of the target flow. |
Destination port |
Destination port number of the target flow. |
DSCP |
DSCP value of the target flow. |
VPN-instance name |
Name of the VPN instance bound to the iFIT flow. |
VSI name |
Name of the VSI bound to the iFIT flow. |
Xconnect-group |
Name of the cross-connect group bound to the iFIT flow. |
Connection |
Cross-connect bound to the iFIT flow. |
Measurement information |
Measurement information. |
Period |
Measurement period. |
Measurement mode |
Measurement mode: · e2e—End to end measurement. · trace—Hop by hop measurement. |
Next hop configuration |
Next hop of the target flow. This setting has been replaced by other configuration methods. For compatibility with history versions, you can configure this setting, but this setting does not take effect. |
Peer locator |
Destination locator of the iFIT flow. |
Loss measurement |
Whether packet loss measurement is enabled: · Enabled. · Disabled. |
Delay measurement |
Whether delay measurement is enabled: · Enabled. · Disabled. |
Measurement configuration |
Whether measurement is enabled: · Enabled. · Disabled. |
Measurement status |
Actual measurement state: · Active—iFIT measurement is in progress. · Inactive—iFIT measurement has not started. |
Flow items |
iFIT target flow. Flow information is displayed only when the measure enable command is executed. |
Flow ID |
iFIT target flow ID. -- indicates that the flow has not been assigned with an ID. |
Interface |
Interface bound to the iFIT target flow. |
display ifit statistic
Use display ifit statistic to display statistics about an iFIT dynamic flow for the most recent 10 measurement periods.
Syntax
display ifit statistic device-id device-id flow-id flow-id [ verbose ]
Views
Any view
Predefined user roles
network-admin
network-operator
Parameters
flow-id flow-id: Displays statistics about an iFIT dynamic flow by its flow ID. The value range for the flow-id argument is 1 to 1048575.
verbose: Displays detailed statistics about an iFIT flow. If you do not specify this keyword, this command displays brief statistics about an iFIT flow.
Usage guidelines
A static flow is a set of flow match criteria that are configured. A dynamic flow is actually a service flow, and the device collects statistics only for dynamic flows. It takes time for the device to learn and generate dynamic flows. Therefore, for the dynamic flows that are newly generated, the accuracy of statistics from the first two measurement periods is not reliable and trustable. As a best practice, do not use the statistics on new dynamic flows in the first two measurement periods.
A flow ID is generated on the ingress point and passed to the transmit points and egress point. A flow ID and device ID uniquely identify a flow in an iFIT measurement network and you can execute the display ifit flow static command to view the flow ID.
Examples
# Display brief measurement information about the flow with device ID 1 and flow ID 123.
<Sysname> display ifit statistic device-id 1 flow-id 123
Period ID Direction Interface PktCount Timestamp (sec, nsec)
159627365 TransitIn XGE3/0/1 1500 1596273655,349433112
# Display detailed measurement information about the flow with device ID 1 and flow ID 123.
<Sysname> display ifit statistic device-id 1 flow-id 123 verbose
Period ID : 159627365
Period started at : 2020-08-01 17:20:55
Direction : TransitInput
Interface : Ten-GigabitEthernet3/0/1
PktCount : 1500
ByteCount : 1295489456450
Timestamp (sec, nsec): 2020-08-01 17:20:55.349433112 (1619278726, 349433112)
TTL : 189
Trust flag : Trusted
Table 5 Command output
Field |
Description |
PeriodID |
Measurement period number. |
Period started at |
Start time of the measurement period. |
Direction |
Flow direction of the interface: · Ingress—The target flow enters the transit network from this interface. · TransitIn—The target flow enters the node from this interface. You can view this value only in the simplified iFIT flow statistics. · TransitInput—The target flow enters the node from this interface. You can view this value only in the detailed iFIT flow statistics. · TransitOut—The target flow leaves the node from this interface. You can view this value only in the simplified iFIT flow statistics. · TransitOutput—The target flow leaves the node from this interface. You can view this value only in the detailed iFIT flow statistics. · Egress—The target flow leaves the transit network from this interface. |
Interface |
Interface name. |
PktCount |
Number of packets measured in the period. |
ByteCount |
Number of bytes detected in the period. |
Timestamp (sec, nsec) |
Timestamp value for the delay measurement. In the detailed information, this field is displayed in the YY-MM-DD HH:MM:SS.nanosecond format. |
TTL |
TTL value of the packet. |
Trust flag |
Whether statistics reported in this period can be trusted: · Trusted. · Untrusted—The statistics are not trustable. For the dynamic flows that are newly generated, the accuracy of statistics from the first two measurement periods is not reliable and trustable. As a best practice, do not use the statistics on new dynamic flows in the first two measurement periods. |
Related commands
display ifit flow static
dynamic-flow aging-time
Use dynamic-flow aging-time to specify the aging parameters for dynamic flows.
Use undo dynamic-flow aging-time to restore the default.
Syntax
dynamic-flow aging-time multi-value [ threshold-percent threshold-percent ]
undo dynamic-flow aging-time
Default
The aging time for dynamic flows is 10 times the measurement period and it cannot be less than 5 minutes.
Views
iFIT view
Predefined user roles
network-admin
Parameters
multi-value: Specifies a multiplier value. The aging time for dynamic flows is equal to the measurement period multiplied by the multiplier value. The value range is 2 to 100.
threshold-percent threshold-percent: Specifies an aging threshold in percentage, in the range of 0 to 100. The default is 30.
Usage guidelines
The device sets an aging timer for a dynamic flow upon the generation of the dynamic flow. The aging timer is reset each time the device receives a packet of the dynamic flow. If no packets of the dynamic flow are received before the aging timer expires, the device considers the dynamic flow to be inactive.
Meanwhile, the device also counts the number of the existing dynamic flows at intervals. If the number of the existing dynamic flows exceeds the aging threshold (maximum number of dynamic flows supported × aging threshold in percentage), the device ages out inactive dynamic flows. That is, the device will remove inactive dynamic flows to prevent system resources from being occupied by inactive flows.
The aging time for dynamic flows must be equal to or greater than 5 minutes. If the configured aging time is less than 5 minutes, the actual aging time will be 5 minutes.
Examples
# Configure the aging time for dynamic flows to be 20 times the measurement period.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] dynamic-flow aging-time 20
encapsulation
Use encapsulation to specify a next hop for iFIT encapsulation.
Use undo encapsulation to delete iFIT encapsulation configuration for a next hop.
Syntax
encapsulation { nexthop ip-address | nexthop-ipv6 ipv6-address }
undo encapsulation [ nexthop ip-address | nexthop-ipv6 ipv6-address ]
Default
No next hop is specified for iFIT encapsulation.
Views
iFIT view
Predefined user roles
network-admin
Parameters
nexthop ip-address: Specifies the IPv4 address of the peer PE in the MPLS or SR-MPLS network.
nexthop-ipv6 ip-address: This option has been replaced by other configuration methods. For compatibility with history versions, you can specify this option, but it does not take effect.
Usage guidelines
In an MPLS or SR-MPLS network, you must execute this command to specify a peer PE as the next hop for iFIT encapsulation after you execute the flow command. The device performs iFIT encapsulation only for service flows sent to the specified peer PE. For matched packets, the device will add iFIT headers to the packets, count the number of matched packets, attach timestamps to the packets, and report the iFIT data to the analyzer.
In an SRv6, G-SRv6, or G-BIER network, iFIT encapsulation takes effect on all next hops, and the configuration by this command does not take effect.
Examples
# Encapsulate the packets send to 1.1.0.1.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] encapsulation nexthop 1.1.0.1
Related commands
flow
flow
Use flow to specify a static flow to be monitored by an iFIT instance.
Use undo flow to remove the static flow settings.
Syntax
· In an MPLS/SR-MPLS public network, iFIT measurement based on 5-tuple granularity:
¡ IPv4 service flow:
flow unidirection source-ip src-ip-address [ src-mask-length ] destination-ip dest-ip-address [ dest-mask-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ]
undo flow
¡ IPv6 service flow:
IPv6 service flows are not supported in the current software version.
· In an MPLS/SR-MPLS public network, iFIT measurement based on the 5-tuple granularity:
¡ IPv4 service flow:
flow unidirection source-ip src-ip-address [ src-mask-length ] destination-ip dest-ip-address [ dest-mask-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] vpn-instance vpn-instance-name
undo flow
¡ IPv6 service flow:
flow unidirection source-ipv6 src-ipv6-address [ src-prefix-length ] destination-ipv6 dest-ipv6-address [ dest-prefix-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] vpn-instance vpn-instance-name
undo flow
· In an EVPN VPLS over MPLS/SR-MPLS network, iFIT measurement based on the 5-tuple granularity:
¡ IPv4 service flow:
flow unidirection source-ip src-ip-address [ src-mask-length ] destination-ip dest-ip-address [ dest-mask-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] vsi vsi-name
undo flow
¡ IPv6 service flow:
flow unidirection source-ipv6 src-ipv6-address [ src-prefix-length ] destination-ipv6 dest-ipv6-address [ dest-prefix-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] vsi vsi-name
undo flow
· In an EVPN VPWS over MPLS/SR-MPLS network, iFIT measurement based on the 5-tuple granularity:
¡ IPv4 service flow:
flow unidirection source-ip src-ip-address [ src-mask-length ] destination-ip dest-ip-address [ dest-mask-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] xconnect-group group-name connection connection-name
undo flow
¡ IPv6 service flow:
flow unidirection source-ipv6 src-ipv6-address [ src-prefix-length ] destination-ipv6 dest-ipv6-address [ dest-prefix-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] xconnect-group group-name connection connection-name
undo flow
· In an EVPN VPWS over MPLS/SR-MPLS network:
¡ iFIT measurement based on the 5-tuple granularity:
- IPv4 service flow:
flow unidirection source-ip src-ip-address [ src-mask-length ] destination-ip dest-ip-address [ dest-mask-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ]
undo flow
- IPv6 service flow:
flow unidirection source-ipv6 src-ipv6-address [ src-prefix-length ] destination-ipv6 dest-ipv6-address [ dest-prefix-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ]
undo flow
¡ iFIT measurement based on the PeerLocator granularity:
flow unidirection xconnect-group group-name connection connection-name peer-locator ipv6-address prefix-length
undo flow
· In a G-BIER network:
flow unidirection source-ipv6 src-ipv6-address [ src-prefix-length ] destination-ipv6 dest-ipv6-address [ dest-prefix-length ] [ protocol { { sctp | tcp | udp } [ source-port src-port-number ] [ destination-port dest-port-number ] | protocol-number } ] [ dscp dscp-value ] [ vpn-instance vpn-instance-name ]
undo flow
Default
No static flow is specified for an iFIT instance.
Views
iFIT instance view
Predefined user roles
network-admin
Parameters
unidirection: Specifies the unidirectional flows.
source-ip src-ip-address: Specifies a source IPv4 address of the flow, in dotted decimal format.
src-mask-length: Specifies a mask length for the source IPv4 address. The value range is 1 to 32. If you do not specify this argument, the exact match of the source IPv4 address is used.
destination-ip dest-ip-address: Specifies a destination IPv4 address of the flow, in dotted decimal format.
dest-mask-length: Specifies a mask length for the destination IPv4 address. The value range is 1 to 32. If you do not specify this argument, the exact match of the source IPv4 address is used.
source-ipv6 src-ipv6-address: Specifies a source IPv6 address of the flow.
src-prefix-length: Specifies a prefix length for the source IPv6 address. The value range is 1 to 128. If you do not specify this argument, the exact match of the source IPv6 address is used.
destination-ipv6 dest-ipv6-address: Specifies a destination IPv6 address of the flow.
dest-prefix-length: Specifies a prefix length for the destination IPv6 address. The value range is 1 to 128. If you do not specify this argument, the exact match of the destination IPv6 address is used.
protocol: Specifies a protocol type of the flow. If you do not specify this keyword, the flow can use any protocol.
· { sctp | tcp | udp }: Specifies the SCTP, TCP, or UDP protocol.
· destination-port dest-port-number: Specifies a destination port number. The value range is 0 to 65535. If you do not specify this option, the flow can use any port number as the destination port number.
· source-port src-port-number: Specifies a source port number. The value range is 0 to 65535. If you do not specify this option, the flow can use any port number as the source port number.
· protocol-number: Specifies the number of the protocol type. The value range is 0 to 255, excluding 132 (SCTP protocol number), 6 (TCP protocol number), and 17 (UDP protocol number).
dscp dscp-value: Specifies a DSCP value of the flow, in the range of 0 to 63.
vpn-instance vpn-instance-name: Specifies an MPLS L3VPN instance by its name, a case-sensitive string of 1 to 31 characters. To specify a flow on the public network, do not specify this option.
vsi vsi-name: Specifies the VSI to which the static flow belongs. The VSI name is a case-sensitive string of 1 to 31 characters. For more information about VSIs, see EVPN VPLS over SRv6 configuration in Segment Routing Configuration Guide.
xconnect-group group-name: Specifies the cross-connect group to which the static flow belongs. The group name is a case-sensitive string of 1 to 31 characters that cannot contain hyphens (-). For more information about cross-connect groups, see EVPN VPWS over SRv6 configuration in Segment Routing Configuration Guide.
connection connection-name: Specifies the cross-connect to which the static flow belongs. The cross-connect name is a case-sensitive string of 1 to 20 characters that cannot contain hyphens (-). For more information about cross-connects, see EVPN VPWS over SRv6 configuration in Segment Routing Configuration Guide.
source-ip any: Specifies any source IPv4 address.
destination-ip any: Specifies any destination IPv4 address.
source-ipv6 any: Specifies any source IPv6 address.
destination-ipv6 any: Specifies any destination IPv6 address.
nexthop ip-address: This option has been replaced by other configuration methods. For compatibility with history versions, you can specify this option, but it does not take effect.
nexthop-ipv6 ip-address: This option has been replaced by other configuration methods. For compatibility with history versions, you can specify this option, but it does not take effect.
peer-locator ipv6-address prefix-length: Specifies the locator to which the flow belongs. The ipv6-address argument represents the IPv6 address prefix. The prefix-length argument represents the prefix length, in the range of 32 to 120. The IPv6 address prefix cannot be an IPv4-compatible IPv6 address.
Usage guidelines
The target flows are key elements for iFIT measurement. Before starting an iFIT measurement, you must execute this command to specify a flow to be measured on the ingress point. You do not need to specify a flow on the transmit points and egress point because the device can automatically learn the target flow through the iFIT header of the packets.
The device can perform iFIT measurement based on the following granularities in different scenarios:
· 5-tuple granularity—Used for measuring communication quality of the specified service flow. You can use 5-tuple to match service flows. This granularity is available for all networks supported by iFIT.
· PeerLocator granularity—Used for measuring end-to-end communication quality on the entire network. In an IPv6 network, the peer-locator keyword can specify a tunnel. The device performs iFIT measurement on any service flows through the tunnel. This granularity is available only for SRv6 and G-SRv6 networks.
An iFIT instance can be configured with only one static flow.
An iFIT instance can be configured with only one static flow. If you execute this command multiple times for the same iFIT instance, the most recent configuration takes effect.
For the flows to be monitored by different instances, the flow attributes must not be identical.
In a non-G-BIER network, the source and destination IP addresses must be legal unicast IP addresses. In a G-BIER network, the destination IP address can be a legal unicast or multicast address.
In an MPLS or SR-MPLS network, you must execute the encapsulation command to specify a peer PE for iFIT encapsulation after you execute the flow command. The device performs iFIT encapsulation only for service flows sent to the specified peer PE. For matched packets, the device will add iFIT headers to the packets, count the number of matched packets, attach timestamps to the packets, and report the iFIT data to the analyzer.
In an SRv6, G-SRv6, or G-BIER network, iFIT encapsulation takes effect on all next hops, and the configuration by the encapsulation command does not take effect.
Examples
# In an MPLS or SR-MPLS private network, configure instance abc to monitor IPv4 service flows based on the 5-tuple granularity of unidirectional flow, source IP 1.1.1.1/24, destination IP 2.2.2.2/24, and VPN instance vpn1.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] flow unidirection source-ip 1.1.1.1 24 destination-ip 2.2.2.2 24 vpn-instance vpn1
# In an EVPN VPLS over SRv6 or G-SRv6 network, configure instance abc to monitor IPv4 service flows based on the 5-tuple granularity of unidirectional flow, source IP 1.1.1.1/24, destination IP 2.2.2.2/24, and VSI 1.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] flow unidirection source-ip 1.1.1.1 destination-ip 2.2.2.2 vsi 1
# In an EVPN VPWS over SRv6 or G-SRv6 network, configure instance abc to monitor IPv4 service flows based on the 5-tuple granularity of unidirectional flow, source IP 1.1.1.1/24, destination IP 2.2.2.2/24, cross-connect group 1, and cross-connect 2.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] flow unidirection source-ip 1.1.1.1 destination-ip 2.2.2.2 xconnect-group 1 connection 2
# In an EVPN VPLS over SRv6 or G-SRv6 network, configure instance abc to monitor service flows based on the PeerLocator granularity of unidirectional flow, VSI 1, and PeerLocator 2001::1.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] flow unidirection vsi 1 peer-locator 2001::1 64
# In an EVPN VPWS over SRv6 or G-SRv6 network, configure instance abc to monitor service flows based on the PeerLocator granularity of unidirectional flow, cross-connect group 1, cross-connect 2, and PeerLocator 2001::1.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] flow unidirection xconnect-group 1 connection 2 peer-locator 2001::1 64
# In an L3VPN/EVPN L3VPN over SRv6 or G-SRv6 network, configure instance abc to monitor service flows based on the PeerLocator granularity of unidirectional flow and PeerLocator 2001::1.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] flow unidirection source-ip any destination-ip any peer-locator 2001::1 64
# In an L3VPN/EVPN L3VPN over SRv6 or G-SRv6 network, configure instance abc to monitor IPv6 service flows based on the PeerLocator granularity of unidirectional flow and PeerLocator 2001::1.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] flow unidirection source-ipv6 any destination-ipv6 any peer-locator 2001::1 64
Related commands
encapsulation
ifit enable
Use ifit enable to enable the iFIT functionality globally and enter its view, or enter the existing iFIT view.
Use undo ifit enable to disable the iFIT functionality globally.
Syntax
ifit enable
undo ifit enable
Default
The iFIT functionality is disabled.
Views
System view
Predefined user roles
network-admin
Usage guidelines
To measure the packet loss and packet delay of the network in real time, you can enable iFIT measurement.
To start iFIT measurement, perform the following tasks:
· On the ingress point, enable the iFIT functionality, configure iFIT device ID, create an instance, and configure a flow to be monitored by the instance. The configured flow is a static flow. The ingress point automatically uses the device ID to generates a flow ID, and encapsulates the flow ID and local iFIT device ID in the iFIT header of packets transmitted to the transmit points and egress point. The flow ID uniquely identifies a flow.
· On the transmit points and egress point, enable the iFIT functionality. If the received packet carries an iFIT header, a transmit point or the egress point will perform iFIT measurement according to the flow ID, measurement period number, timestamp in the iFIT header.
Examples
# Enable iFIT and enter its view.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit]
instance
Use instance to create an iFIT instance and enter its view, or enter the view of an existing iFIT instance.
Use undo instance to delete an iFIT instance.
Syntax
instance instance-name
undo instance instance-name
Default
No iFIT instance exists.
Views
iFIT view
Predefined user roles
network-admin
Parameters
instance-name: Specifies an iFIT instance by its name. The instance name is a case-sensitive string of 1 to 31 characters.
Usage guidelines
You must configure an iFIT instance on the ingress point. You can configure only one set of flow match criteria for an instance. An instance can be bound to multiple interfaces. Each bound interface matches target flows based on the same set of criteria and assigns different flow IDs to the target flows. iFIT measures the delay and packet loss of the target flows on a per-interface basis.
To perform iFIT measurement on the transmit points and egress point, you only need to enable iFIT. After you enable iFIT on a transmit point or the egress point, the point automatically identifies the flows according to the iFIT header, and perform iFIT measurement on the target flows. The flows identified automatically is dynamic flows.
Examples
# Create iFIT instance abc and enter its view.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-abc]
measure enable
Use measure enable to enable iFIT measurement for an iFIT instance.
Use undo measure enable to disable iFIT measurement for an iFIT instance.
Syntax
measure enable
undo measure enable
Default
iFIT measurement for an iFIT instance is disabled.
Views
iFIT instance view
Predefined user roles
network-admin
Usage guidelines
You can execute this command to start iFIT measurement for an iFIT instance to monitor the packet delay and packet loss of the flow.
Before starting iFIT measurement, configure a device ID, create an iFIT instance, configure a flow.
To modify the configuration for the device-id command or an iFIT enabled instance, disable iFIT measurement for the instance firstly.
Examples
# Enable iFIT measurement for iFIT instance abc.
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] measure enable
measure mode
Use measure mode to specify an iFIT measurement mode.
Use undo measure mode to restore the default.
Syntax
measure mode { e2e | trace }
undo measure mode
Default
End-to-end measurement is used.
Views
iFIT instance view
Predefined user roles
network-admin
Parameters
e2e: Specifies end-to-end measurement. In this mode, only the ingress point and egress point report the measurement data.
trace: Specifies hop-by-hop measurement. In this mode, all points that are enabled with iFIT and receive the flow packets will report the measurement data.
Usage guidelines
iFIT measurement helps you to measure the network performance, troubleshoot the network faults, and measure the service quality.
To measure the packet loss and packet delay of the whole network, you can use end-to-end measurement. To accurately locate the packet loss and packet delay of each network node, you can use the hop-by-hop measurement.
Examples
# Specify hop-by-hop measurement as the measurement mode.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] measure mode trace
period
Use period to specify the measurement period for an iFIT instance.
Use undo period to restore the default.
Syntax
period period
undo period
Default
The measurement period for an iFIT instance is 30 seconds.
Views
iFIT instance view
Predefined user roles
network-admin
Parameters
period: Specifies the measurement period in seconds. Valid values include 1, 10, 30, 60, and 300.
Usage guidelines
iFIT collects performance statistics based on the measurement period.
· The sender records the sending time of the first iFIT packet in each sending interval, and counts the number of the iFIT packets sent from an interface in each sending interval. Sending interval = iFIT measurement period.
· The receiver records the receiving time of the first iFIT packet in each receiving interval, and counts the number of the iFIT packets received by an interface in each receiving interval. To reduce the impact of network delay and disorder on statistics, the receiving interval equals to (1+1/3) measurement period.
If network delay between the ingress and egress points is greater than 1/3 measurement period, the accuracy of iFIT packet loss statistics might be affected. This is because iFIT considers packets received beyond the receiving interval as packet loss. For example, the measurement period is 1 second and the network delay is greater than 1/3 seconds (333 milliseconds). In this case, set the measurement period to a greater value.
Examples
# Specify 60 seconds as the measurement period for an iFIT instance.
<Sysname> system-view
[Sysname] ifit enable
[Sysname-ifit] instance abc
[Sysname-ifit-instance-abc] period 60
reset ifit statistic
Use reset ifit statistic to clear iFIT statistics of dynamic flows for the most recent 10 measurement periods.
Syntax
reset ifit statistic [ device-id device-id flow-id flow-id | instance instance-name ]
Views
Any view
Predefined user roles
network-admin
Parameters
device-id device-id: Specifies an iFIT device by its ID in the range of 1 to 1048575.
flow-id flow-id: Clears statistics about an iFIT flow by its flow ID. The value range for the flow-id argument is 1 to 1048575.
instance instance-name: Clears statistics about an iFIT flow by its instance name. The instance name is a case-sensitive string of 1 to 31 characters. Only the ingress point supports instances. The transmit points and egress point do not support instances.
Usage guidelines
A flow ID is generated on the ingress point and passed to the transmit points and egress point. A flow ID and device ID uniquely identify a flow and you can execute the display ifit flow static command to view the flow ID.
Examples
# Clear iFIT statistics generated in the most recent 10 measurement periods for the flow with device ID 1 and flow ID 40962.
<Sysname> reset ifit statistic device-id 1 flow-id 40962
Related commands
display ifit flow static
display ifit statistic