[Common-dev] SOD: Socket write buffer rework
Tom Marshall tmarshall at helixcommunity.orgOn Fri, Sep 24, 2004 at 04:41:58PM -0700, Liam Murray wrote: > Is HX_IOV_MAX a compile time constant or can you alter it via a socket > option? This isn't really a concern for the client. I'm just curious. It's compile time. > I agree with your other email. I don't really see a use/need for buffering > UDP since it is unreliable. > > "If writes are not currently blocked,an immediate write will be performed > when either the current write array has HX_MAX_IOV elements filled or the > current write array contains at least MSS > bytes." > > What if the user stops (or pauses) writing before this condition is met? Is > it possible this will lead to a case where data might end up being held > indefinitely? (I believe nagle for example will send once all outstanding > data is acknowledged if there data in the outgoing buffer does not exceed > the MSS.) Yes, it is possible. The socket user is responsible for ensuring that data continues to flow when aggregation is enabled. I belive the old IHXBufferedSocket also behaved this way. It's an efficiency optimization so adding a timeout would be counterproductive. I think this was a server specific interface. -- Logic is a systematic method of coming to the wrong conclusion with confidence. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: Digital signature Url : http://lists.helixcommunity.org/pipermail/common-dev/attachments/20040924/2d8b443d/attachment.bin