One property of the data link layer is the Maximum Transmission Unit (MTUs).
For example, the maximum length of a traditional Ethernet frame payload is 1500 bytes.
There is a maximum length here because Ethernet any other network technology is a shared mediums, so some sort of limit needs to exist to allow multiple nodes an opportunity to use the medium. Otherwise one host could monopolize the medium by continuously transmitting, or the medium could get deadlocked by all hosts constantly interrupting each other (causing collisions) in order to transmit. Keep in mind that an overarching principle of IP networks is that the lower you get down in the stack (toward layer 1), the "stupider" it should be - because "stupid" is scalable; intelligence is pushed up in the stack (the opposite of a POTS network).
It is true that the higher this limit, the less "protocol overhead" there is and the faster data transmission is - this is why Gigabit Ethernet supports "jumbo frames" of 9000 bytes.
So if a TCP connection's Maximum Segment Size (MSS) harmonizes with the underlying MTU, there will be no fragmentation of TCP segments by lower layers and performance will be increased. Path MTU Discovery is a technique for TCP to find out the proper MSS. If the MTU is less than the MSS, then a lower layer has to fragment the packets into something that can fit the MTU.
Fragmenting consumes resources and adds complexity to software/devices, and devices that are overloaded with too many fragmented packets may drop packets, and cause slowness/timeouts. IPv6 doesn't even support fragmentation, so in this case, the entire packet will be dropped if it doesn't fit in the MTU.
1
Probably because too large segments would cause fragmentation at the IP layer, thus decreasing performance. http://en.wikipedia.org/wiki/IP_fragmentation
– slhck – 2013-01-06T15:00:11.910okay is the size of the segment is large then it is time consuming for the ip layer to fragment it into packets ... ?? – Arpitha – 2013-01-06T15:07:00.307
It's not time consuming per se, but error-prone. IP packets may be lost or arrive late. The more IP packets you need to transmit a TCP segment that in case of error would have to be retransmitted, the worse the performance. – slhck – 2013-01-06T15:09:46.680
okay ... i get it ..one more thing we segment the data in the transport layer and those segemnets are sent to the n/w layer and again it is fragmented into packets ... and sent to the datalink layer whr it gets fragmented and sent to the destination ... but what is meant by lossing a frame ... is it loosing streams of bits associated with that frame ?? and could be found out only when it gets defragmented ? – Arpitha – 2013-01-06T15:17:02.687
A TCP packet contains sequence numbers and a 16-bit checksum field. This allows you to check for header or payload errors. Although a rather weak error detection mechanism, it works quite well. I'd wait for someone more knowledgeable than me in networking to post a real answer though. – slhck – 2013-01-06T15:20:39.653