[dpdk-dev] [PATCH] app/testpmd: add engine that replies to ARP and ICMP echo requests

Thomas Monjalon thomas.monjalon at 6wind.com
Fri May 16 16:26:15 CEST 2014


> From: Ivan Boule <ivan.boule at 6wind.com>
> 
> Add a new specific packet processing engine in the "testpmd" application
> that only replies to ARP requests and to ICMP echo requests.
> For this purpose, a new "icmpecho" forwarding mode is provided that can be
> dynamically selected with the following testpmd command:
> 
>     set fwd icmpecho
> 
> before starting the receipt of packets on the selected ports.
> 
> Then, the "icmpecho" engine performs the following actions on all received
> packets:
> 
> - replies to a received ARP request by sending back on the RX port a ARP
>   reply with a "sender hardware address" field containing the MAC address
>   of the RX port,
> 
> - replies to a ICMP echo request by sending back on the RX port a ICMP echo
>   reply, swapping the IP source and the IP destination address in the IP
>   header,
> 
> - otherwise, simply drops the received packet.
> 
> When replying to a received packet that was encapsulated into a VLAN tunnel,
> the reply is sent back with the same VLAN identifier.
> By default, the testpmd configures VLAN header stripping RX option on each
> port.
> This option is not managed by the icmpecho engine which won't detect
> packets that were encapsulated into a VLAN.
> To address this issue, the VLAN header stripping option must be previously
> switched off with the following testpmd command:
> 
>     vlan set strip off
> 
> When the "verbose" mode has been set with the testpmd command
> "set verbose 1", the "icmpecho" engine displays informations about each
> received packet.
> 
> The "icmpecho" forwarding engine can also be used to simply check port
> connectivity at the hardware level (check that cables are well-plugged)
> and at the software level (receipt of VLAN packets, for instance).
> 
> Signed-off-by: Ivan Boule <ivan.boule at 6wind.com>

Acked-by: Thomas Monjalon <thomas.monjalon at 6wind.com>

Applied for version 1.7.0.
-- 
Thomas


More information about the dev mailing list