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



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

Answer / 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

More Unix Socket Programming Interview Questions

Can multiple clients connect to same socket?

0 Answers  


Why do we need sockets?

0 Answers  


How do I send [this] over a socket?

1 Answers  


How would I put my socket in non-blocking mode?

1 Answers  


What is a deep well socket?

0 Answers  






What is the purpose of socket?

0 Answers  


Why does it take so long to detect that the peer died?

0 Answers  


What is a sae socket?

0 Answers  


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

0 Answers  


What exactly does SO_LINGER do?

1 Answers  


Why do I get EPROTO from read()?

0 Answers  


How does unix socket work?

0 Answers  


Categories