How come only the first part of my datagram is getting through?

Answer Posted / chaitanya

This has to do with the maximum size of a datagram on the two machines involved. This depends on the sytems involved, and the MTU (Maximum Transmission Unit). According to "UNIX Network Programming", all TCP/IP implementations must support a minimum IP datagram size of 576 bytes, regardless of the MTU. Assuming a 20 byte IP header and 8 byte UDP header, this leaves 548 bytes as a safe maximum size for UDP messages. The maximum size is 65516 bytes. Some platforms support IP fragmentation which will allow datagrams to be broken up (because of MTU values) and then re-assembled on the other end, but not all implementations support this.

Is This Answer Correct ?    0 Yes 0 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

What is the difference between read() and recv()?

1593


How many socket connections can a server handle?

470


What pieces of information make up a socket?

545


Can multiple clients connect to same socket?

518


What does af mean in sockets?

520






What are the pros/cons of select(), non-blocking I/O and SIGIO?

978


What exactly is a socket?

524


What is a socket api?

531


What is socket address?

570


What is a deep well socket?

519


What is the difference between a socket and a port?

466


What's the difference between a socket and a port?

458


What is af_inet in socket?

475


Why do we need sockets?

483


What is the purpose of socket?

503