Re: Single UDP sockets : duplex capable?



On Tue, Nov 28, 2006 at 04:24:08PM -0500, Devon H. O'Dell wrote:
2006/11/28, Garrett Cooper <youshi10@xxxxxxxxxxxxxxxx>:
Hello,

Just wondering, abstractly..

Both sides can read from and write to the socket file descriptor.
You'll need to develop a protocol to determine when either given side
is expecting to receive or to send data (if both sides sit around in
read(2), you're not going to get much done) :)

... and if you want asynchronous conversation, i.e., data coming
anytime, consider using non-blocking sockets with select(2), poll(2),
or kqueue(2). The particular choice depends upon the requirements
on the portability and performance of the application. If you
target at as much systems as possible, using a ready-made wrapper
library such as libevent can be an option.

-------------------------
| A -[socket (UDP)]-> B |
-------------------------

A creates a UDP socket (call it 's1') to talk to B.

Can B use the same socket ('s2') to talk to A using read(2) or
recv(2), or does A have to accept(2) traffic from B using a different
socket?

The programming language I'm using is C (not C++).

--
Yar
_______________________________________________
freebsd-hackers@xxxxxxxxxxx mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
To unsubscribe, send any mail to "freebsd-hackers-unsubscribe@xxxxxxxxxxx"



Relevant Pages

  • HEADS UP: network stack and socket hackery over the next few weeks
    ... Over the next few weeks, I'll be doing a fairly serious workworking of the socket and protocol reference models, in order to clean up a number of long-standing race conditions and provide infrastructure for significant locking optimizations for several protocols (including TCP). ...
    (freebsd-current)
  • Re: socket arguments
    ... a protocol argument of zero means unspecified. ... socket type, protocol) parameters. ... ProviderFlags: MatchesProtoZero ...
    (microsoft.public.win32.programmer.networks)
  • Re: sosend/soreceive consistency improvements
    ... As part of cleanups, locking, and optimization work, I've been looking at ... protocol could provide substitute implementations. ... There's another side to the pluggability, however -- the socket consumers ... New references to sosend() and soreceiveperiodically ...
    (freebsd-arch)
  • Re: CAsyncSocket on vista
    ... The error you are getting is WSAEAFNOSUPPORT - Address Family Not ... Perhaps when you are setting up your socket you are not initialising all ... WSAEAFNOSUPPORT Address family not supported by protocol family. ... Conversation: CAsyncSocket on vista ...
    (microsoft.public.vc.mfc)
  • Re: Historical question
    ... Why was it decided that NICs don't have ... >Another use would be for sniffing traffic by doing cat on the socket. ... for 'protocol' identifier. ... Also, by standard implementation, filesystem resources are 'shared access' ...
    (comp.unix.bsd.freebsd.misc)