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

Are sockets files?

0 Answers  


of the socket? Does doing a connect() call affect the receive behaviour?

1 Answers  


Can a single socket port be used for multiple applications?

0 Answers  


How do I get my server to find out the clients address / host- name?

1 Answers  


What is a socket file?

0 Answers  






How can I bind() to a port number < 1024?

1 Answers  


Is there any advantage to handling the signal, rather than just ignoring it and checking for the EPIPE error? Are there any useful parameters passed to the signal catching function?

0 Answers  


What exactly does SO_REUSEADDR do?

1 Answers  


Why does the sockets buffer fill up sooner than expected?

0 Answers  


How can I force a socket to send the data in its buffer?

0 Answers  


What is the difference between close() and shutdown()?

1 Answers  


What is a socket connection?

0 Answers  


Categories