Christmas Offer - Every Learner Must Check Out - Flat 88% OFF on All Access Pass
00
days
:
00
hours
:
00
minutes
:
00
seconds
PyNet Labs- Network Automation Specialists

Difference between MTU and MSS

Author : PyNet Labs
Last Modified: October 27, 2023 
Difference between MTU and MSS Featured Image

Introduction

If you are interested in computer networking, you might have heard of MTU and MSS. But what they really are and why one should study these concepts in detail. MTU and MSS are important concepts as they help determine the size of each packet sent across the network without getting into the fragmentation phase.

Understanding the difference between MTU and MSS not only enables you to optimize the network performance but also assists in avoiding unnecessary data loss. In this blog, we will look into MSS vs MTU, and we will also explain both in detail.

Before getting into the MTU vs MSS, let’s first understand what MTU and MSS really are.

What is MTU in Networking?

MTU, or maximum transmission unit, is the largest frame or packet size that can be sent as a single entity from the source to the destination in a network at a given point in time. The underlying network technology determines the MTU; some of these are Ethernet, ATM, or PPP.

When we talk about MTU value, it’s the maximum size under which a packet can be sent. For example, when we talk about Ethernet, it is 1500, and for PPP, it is 1492. Most of the time, the sender node sets the MTU value. Value is set in a way that can match the capacity of the host node in the network to send or receive single packets at a given time. The optimal value of MTU depends on various factors, some of which are bandwidth, reliability, and the error rate of the network link.

Now, the question arises: what will happen if the packet exceeds the MTU value?

In such a case, the packet is broken into smaller pieces, also known as fragments, either by the sender or any intermediate device. Each fragment has its own header that contains information about the original packet. The fragments are then reassembled at the receiver end. For better understanding, we have shown the image below.

MTU Working

There are some drawbacks to breaking down the packet into small fragments. One of many is it can reduce network efficiency. It can also cause errors or loss of data if, by chance, the fragments get lost or corrupted during the transmission process.

The formula for calculating MTU is MTU = MSS + 40 (IP header + TCP header)

Let’s understand MSS in detail.

What is MSS in Networking?

MSS, or maximum segment size, is the largest amount of data or packet that can be sent from source to destination in a single TCP segment. It is one of the important factors that can impact the TCP performance. A TCP segment is nothing but a unit of data that is being transmitted over a TCP connection. It consists of two parts, namely, header and payload. The header contains information about the source and destination port numbers, ack numbers, and many other crucial information. At the same time, the payload contains the actual data that is to be transmitted.

MSS can be negotiated while TCP handshake. In this process, each host sends its own MSS value with a SYN message in an option field. Here, the MSS value represents the maximum size of data that the host can accept in a single TCP segment. It does not include a TCP header. The final MSS value is decided based on the minimum two values exchanged by the hosts.

In a case where the TCP segment is higher than the MSS value, it cannot be transmitted. It will be discarded, and requests for the retrains mission of the data with a smaller size. As a result, this will reduce the efficiency of data transmission.

The optimal value of MSS depends on several factors, such as the MTU of the network path, the TCP options used, and the application requirements.

The formula for calculating MSS is: MSS = MTU – 40 (IP header + TCP header)

Let’s move on to understanding the difference between MTU and MSS.

Difference between MTU and MSS

Below we have explained the basic difference between MSS and MTU in a tabular form.

FactorsMTUMSS
DefinitionMTU stands for Maximum Transmission Unit. It is the maximum size of an IP packet that can be sent over a link.MSS stands for Maximum Segment Size. It is the maximum amount of data that can be sent in a single TCP segment.
ProtocolMTU is a link layer parameter that is dependent on both the network layer protocol and the physical media. It contains both the TCP and IP headers.A TCP option called MSS is negotiated as part of the handshake. The IP header and the TCP header are not included.
FragmentationFragmentation is allowed by MTU. If a packet is larger than the MTU, it is split up into smaller parts.MSS prohibits fragmentation. A packet is discarded and not delivered if it exceeds the MSS.
FormulaMTU = MSS + 40 (IP header + TCP header)MSS = MTU – 40 (IP header + TCP header)
ValueThe common value of MTU on the internet is 1500 bytes.The common value of MSS on the internet is 1460 bytes.
DependencyMTU size does not rely on the value of MSS.MSS size totally depends on the value of the underlying MTU.

Now, we have compared MTU vs MSS to explain the differences between the two.

Frequently Asked Questions

Q1 – Is MTU the same as MSS?

MTU is the maximum size of a packet, including headers. MSS is the maximum size of the data part only. They are related but not the same.

Q2 – Can MSS be greater than MTU?

MSS is less than MTU as it does not include TCP/IP header data.

Q3 – What is the TCP MSS for 1500 MTU?

TCP MSS for 1500 MTU is 1460 bytes, as the TCP header and IP header are 20 bytes each.

Q4 – How do you calculate MSS from MTU?

You can use the formula for calculating the MSS from MTU, i.e., MSS = MTU – 40 (IP header + TCP header)

Conclusion

MTT and MSS are crucial networking concepts that help determine the size of data packets that can be sent over a network. In this blog, we have explained the basic difference between the two and described the MTT and MSS in detail.

Recent Blog Post

Leave a Reply

Your email address will not be published. Required fields are marked *

linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram