What is the difference between the packet size command on Huawei and Cisco routers?

Publication Date:  2016-07-26 Views:  4243 Downloads:  49
Issue Description

When you are facing a problem regarding IP MTU on the Huawei AR2220E or any Huawei AR router and there is no problem on another type/model of router (ie. Cisco) you need to know that there are some differences in the packet size commands used on both sides.


Below you find an explanation of the "sympthoms". 

NOTE!!! The actual value of the MTU is 1500, but in this case the MTU it cannot exceed the 1472 value, as a result some applications were not working, like e-mails with attachments etc.

The router is used as the Internet gateway and the Internet feed (Ethernet) is plugged on it.

If I try with a Cisco router the ping works with 1500 MTU size, so the circuit/provider allows until 1500 size (to assure the integrity of the internet line).


Please see below an example of the ICMP requests performed on the Huawei router:


[HUAWEI-AR]ping -s 1472 8.8.8.8                              

  PING 8.8.8.8: 1472  data bytes, press CTRL_C to break      

    Reply from 8.8.8.8: bytes=64 Sequence=1 ttl=44 time=63 ms

    Reply from 8.8.8.8: bytes=64 Sequence=2 ttl=44 time=66 ms

    Reply from 8.8.8.8: bytes=64 Sequence=3 ttl=44 time=52 ms

    Reply from 8.8.8.8: bytes=64 Sequence=4 ttl=44 time=52 ms

    Reply from 8.8.8.8: bytes=64 Sequence=5 ttl=44 time=58 ms

                                                             

  --- 8.8.8.8 ping statistics ---                            

    5 packet(s) transmitted                                  

    5 packet(s) received                                     

    0.00% packet loss                                        

    round-trip min/avg/max = 52/58/66 ms                     

                                                             

[HUAWEI-AR]ping -s 1473 8.8.8.8                              

  PING 8.8.8.8: 1473  data bytes, press CTRL_C to break      

    Request time out                                         

    Request time out                                         

    Request time out                                         

    Request time out                                         

    Request time out                                         

                                                             

  --- 8.8.8.8 ping statistics ---                            

    5 packet(s) transmitted                                  

    0 packet(s) received                                     

    100.00% packet loss                                      

Handling Process

For Huawei router, MTU size it is composed as follows:  "1468 bytes IP data + 20 bytes IP header + 8 bytes ICMP header + 4 bytes VLAN/Subinterface = 1500 bytes”.

In most cases, the 4 bytes for VLAN/Subinterface are free. Therefore they are used for payload. It results 1472 bytes for IP data.

Packets that exceed the value of 1472 will be fragmented.


Please see the attachmet named "packet size explanation" for your clarification with the following statement in my tests.

Considering the explanation attached, let’s try to get a network capture:

 

1.       On the router set this rule:

Acl 3000

Rule 1 permit icmp

 

2.       The command for network capture:

 

capture-packet interface gigabitethernet 0/0/0 acl 3000 destination terminal  packet-len 1518

 

ping -a x.x.x.x  -s 1518 8.8.8.8

 

Please don’t forget the following!


The packet capture configuration is not saved in the configuration file, and becomes invalid when packet capture is complete so, please log the session before running this command.

In fact for this capture you must open two simultaneous sessions, one for packet capture and another one to start ping command.

Root Cause

Please see attachement named with the entire capture analyzed.


The command used on the Cisco device was and the capture resutls: 


Router#ping 8.8.8.8 si 1500                                        


Router#ping 8.8.8.8 si 1518                                        

The below capture revealed the fact that the Cisco device fragments every packets which is above 1500 bytes.


The command used on Huawei AR router was:

[HUAWEI-AR]ping -s 1518 8.8.8.8                                 


The below capture revealed the fact that the AR fragments and sends the packets, but somewhere along the way something unexpected happens and the Huawei AR does not receive back the replay message - (no response found!):



Solution

From the above printout from the capture we can conclude that the problem is not laying in the AR side, there are no faults from the configuration or behavior.


I found out that there is a different result in the commands performed on Cisco and Huawei routers.

On CISCO routers: Parameter size represents datagram-size: This option enables you to specify the total size of the ping packet (including headers) in bytes that will be sent.

On Huawei routers: Parameter “-s packetsize” on ping commandSpecifies the length of an ICMP Echo Request message, excluding the IP header and ICMP header.

END