can anybody explain why not router fragment the OSPF packet in ingress interface when the size of packet is larger than interface MTU ?
MTU (1500) MTU (1450)
I could see that IP header of OSPF packet's DF bit is not set.
why router discard the OSPF packet, when it receives size larger than MTU instead of fragmenting that ?
Also please tell me what does router do when it receives a Larger size EIGRP packet than MTU ?
Thanks in advance
Before CSCse01519, OSPF in IOS would build OSPF packets up to a maximum of 1500 bytes. This is a regardless of the interface MTU. So, if the interface MTU is bigger than 1500 bytes, OSPF would still pack only up to 1500 bytes into an OSPF packet. This is somewhat inefficient because OSPF could send bigger packets on the link and achieve a greater throughput. There is one exception to this: if the LSA is so big that one LSA holds more than 1500 bytes, then OSPF builds that packet, no matter what the size (OSPF cannot fragment one LSA). The IP stack of the router then fragments it to fit the MTU of the outgoing interface. This typically occurs when an OSPF router has many links and hence the router LSA because bigger than the link MTU.
Equally so, if the MTU of the outgoing interface is smaller than 1500 bytes, then the OSPF process would still build or pack OSPF packets up 1500 bytes and the IP stack of the router would fragment this into smaller IP packets in order to fit the MTU of the outgoing link. One example where this typically occurs, is an IPSec tunnel between 2 routers running OSPF. The added overhead of the encapsulation bytes of the tunnel leads to an MTU which is lower than 1500 bytes. OSPF builds OSPF packets up to 1500 bytes and they then get fragmented before the router transmits them. This is another inefficiency.
After CSCse01519, OSPF in IOS can pack OSPF packets to be greater than 1500 bytes. This occurs if the MTU of the outgoing interface is greater than 1500 bytes. This will make the transmissions more efficient as more information can be packed into one larger packet. For example, if one OSPF router needs to transmit a lot of external LSAs to an OSPF neighbor, it can pack more external LSAs into one LS Update packet, if that router runs IOS with CSCse01519 implemented.
CSCse01519 also allows OSPF to build packets lower than 1500 bytes. In some scenarios, the MTU between 2 OSPF neighbors is lower than 1500 bytes. See the example above with an IPSec tunnel. In that case, OSPF transmits OSPF packets which are smaller than 1500 bytes, avoiding IP fragmentation, except in the case of one large LSA, bigger than the interface MTU
look it for more information: https://community.cisco.com/t5/service-providers-documents/ospf-and-mtu/ta-p/3118885
I read that string, from that I could understood router cannot fragment OSPF packet at the receiving interface, but it can do fragment while send ,
After CSCse01519 router create the OSPF packet depend up on the MTU size of outgoing interface,
so in this implementation fragments are not allowed while send and receive, am i right ?
likewise how eigrp packets handled while receiving? if the interface MTU smaller, will packet be fragmented at the receiving end ?
@sivam siva hello,
What version of your router?
This bug above was fixed, look this link to check if your current IOS was covered: https://bst.cloudapps.cisco.com/bugsearch/bug/CSCse01519/?rfs=qvred
I dont think i have understood the concept or not.
Let me explain my understanding
*Router creates OSPF packets depend on the IP MTU , and it does fragment the packet if the size exceeds the MTU with some extra header information like GRE header, which can be arranged on the other end.
* And router cannot do fragment for OSPF packet in ingress interface.
is that correct ?
Also please tell me how larger size EIGRP packets are handled in ingress interface of router ?
Thanks in advance.