|
Boost Users : |
Subject: Re: [Boost-users] [asio] Sending large packages
From: Oliver Seiler (oseiler_at_[hidden])
Date: 2010-01-04 12:05:18
On Mon, Jan 4, 2010 at 7:30 AM, Jason Felice <jason.m.felice_at_[hidden]> wrote:
> On Mon, Jan 4, 2010 at 5:41 AM, Igor R <boost.lists_at_[hidden]> wrote:
>>> Doesnt anyone have any ideas? Did anyone receive this mail?
>>
>> I guess it's not an asio limitation, but the OS one - you just
>> exceeded the maximum message size for the underlying protocol.
>> On windows you can use SO_MAX_MSG_SIZE socket option to get the maximum size.
>
> [...] All TCP networks
> have an MTU, and packets larger than this will be sliced up for
> delivery (without affecting the data contained within or the
> guaranteed order of delivery).
And herein lies what the original poster is hitting. The MTU is way
smaller than the ~1MB limit the poster sees, so that isn't likely the
problem (and would typically only be an issue if using UDP).
My guess is the TCP read/write buffers have been exceeded. Original
poster should include more information:
- OS that this is on,
- The actual error codes being encountered.
If you're exceeding the TCP buffer sizes and trying to write in one
chunk, you may be hitting an error like ENOBUFS (no_buffer_space in
boost:error_code). Just a guess though.
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net