[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: [dccp] SOCK_DCCP




> -----Original Message-----
> From: dccp-bounces at ietf.org [mailto:dccp-bounces at ietf.org]On Behalf Of
> ext Ian McDonald
> Sent: 08 August, 2005 08:30
> To: Yoshifumi Nishida
> Cc: dccp at ietf.org; acme at ghostprotocols.net
> Subject: Re: [dccp] SOCK_DCCP
> 
> 
> > Hmm, How the programming style would be different in this case?
> > Yes, DCCP has two logical half connections and if this 
> means we have to do
> > listen() and accept() on both sides when data needs to flow 
> both, the programming 
> > style will be very different. However, I don't think we 
> need to do listen() on 
> > both sides. (I wonder why DCCP API doc doesn't exist...)
> 
> I would think we would need to do listen on both sides but 
> have not yet
> tested.
> 
> DCCP API doc - that is easy - because nobody has written yet 
> ;-) (Either
> API or documentation). At present most implementations use sockets
> although people have proposed various other things...
> > 
> > Thanks,
> > --
> > Yoshifumi Nishida
> > nishida at csl.sony.co.jp
> 
> Regards,
> 
> Ian
> 
> 

I am doing an implementation of DCCP as a part of my studies. Its being done as a module for Linux 2.6 and probably for some other OS. So I have spent some time looking at the socket API's. 

For TCP sockets, socket, which is listenning is not the one, which is used to serve the connection. So, when request packet comes in and accept() call is pending, a new socket will be created and connection will be bound to that new socket. 

Is it the same case with DCCP, or  is it so, that listenning socket will start serving the connection with accept() call. On the other hand, it makes whole listen/accept definition relativelly useless because all the advantages of accept queues and backlog value becomes obsolete. We could go around with just connect(), then.

But in any case, I dont see a reason to call listen on both sides. 

B.R.
Vladimir.