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
What does af mean in sockets?
What is the difference between SO_REUSEADDR and SO_REUSEPORT?
What is socket address with example?
Is tcp or unix socket faster?
What pieces of information make up a socket?
How can I force a socket to send the data in its buffer?
Are unix sockets faster than tcp?
What is the function of socket?
What is a socket address?
How can I set the timeout for the connect() system call?
What are the pros/cons of select(), non-blocking I/O and SIGIO?
Why do we need socket programming?
What is socket programming in java?
What is the difference between read() and recv()?
What is a socket set used for?