1

I understand the below points,please confirm if my understanding is correct.

  1. MTU > MSS

E.g if my MSS is 1460 bytes, then MTU should be at least 1500 bytes(20 bytes for IP header and 20 bytes for TCP header).

I also understand that since the upper layer (MSS) will be finally encapsulated inside lower layer(Ethernet MTU), therefore MTU has to be greater than MSS.

2.I undertstand that CLNS is equivalent to Networking Layer of OSI model that ISO came up with. where does clns mtu operate--at which layer(i know it is not any of the osi layer as ISIS was developed before OSI layer)--so what would be the relation of clns mtu and mtu ? Should it be greater than/less than Ethernet mtu ?

3.In some config snippets, where isis is running, i see the below config

clns mtu 1500

Why do we need the above command ?What if i remove the above command ?

  1. is the following config valid(just want to test/understand in my lab)

    mtu 1400

    clns mtu 1500

Here, i have made mtu smaller than clns mtu. This will fail ?

2 Answers 2

3

That will fail. MTU is setting the L2 MTU while IP MTU is setting the L3 MTU.

The CLNS MTU determines both the maximum size of LSP plus the hello size when padding.

If you tried to send a 2000 byte LSP over a 1500 MTU L2 link, it will get dropped

1

Just to clarify some terms, which may actually muddy the water a bit. @mellowd's answer is a great short answer.

CLNS is the OSI connectionless network service definition: it specifies the interface that the service user (transport layer) uses to communicate with its peer transport layers. CLNP is the OSI protocol that provides that service, and is rarely used any more.

ISIS did not predate CLNS, but that's beside the point because ISIS can be used without CLNS. It is a part of the OSI network layer because it is used to help CLNP (or in our case IP, another network layer protocol) do its job. ISIS does not run over CLNS or CLNP; it runs directly over the link layers. (This is in contrast to OSPF, which runs over IP. ISIS is academically more correct, but OSPF is quicker to get up and running over a new kind of link. Whee.)

The term "clns mtu" is a bit misleading, though for reasonable reasons. Cisco uses "clns" to configure lots of things about the erstwhile OSI network layer, including some aspects of ISIS. So, in the bucket of stuff Cisco bundled together under "clns", they have "mtu" which means something like "Anything in the OSI network layer should assume this is the MSDU (maximum service data unit) of the underlying layer." That would dictate the maximum size of any network layer PDU, not counting the L2 overhead.

So, this "clns mtu" actually operates at the bottom of the OSI network layer, just between it and any link layer it runs over. But it's not an official term; it's just what Cisco calls it (and no doubt now lots of other implementations that use a similar configuration model.)

MSS is the maximum segment size for TCP. Since TCP is rarely run over CLNP (hopefully rfc-1006 and TUBA are dead), we'd never talk about the relationship between MSS and CLNS MTU. If we did, it'd be complicated because the CLNP header size is variable and depends on the address (NSAP) lengths, which can be up to 20 bytes, plus options, to a maximum header of 254 bytes. Let's not go there.

So, what is important? Well the ISIS LSP (link state PDU) size has to be the same thought any L1 or L2 area, so that an LSP issued by any router in the area can flood to all the others over any link. So, find the link with the smallest value for MTU minus L2 overhead, and use that value on all routers.

It's better to be conservative and it's not crucial to squeeze out every byte possible, in most cases. ISIS will segment its LSPs and be relatively efficient at disseminating the link state info. Feel free to leave room for dot1q tags or whatever, in case you'll be using tunnels between ISIS routers.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.