Re: identity persistence and comparison issues

Erik Nordmark <[email protected]>
Newsgroups gmane.ietf.multi6
Message-ID <[email protected]>
> Sure it has, the connections just don't last longer than one packet.  
> (-:

Ah - so "connection" survivability for UDP-based apps then becomes quite easy
since the problem doesn't exist :-)

> I haven't written anything that handles incoming UDP packets, so I 
> don't know for sure, but unless I'm very much mistaken applications 
> need to do a bind() call before they can receive UDP packets too.

I don't know what the API standards say, but in many implementations
the app can just do a sendto() which will make UDP pick a port number
for the duration of the lifetime of the socket. Thus the application
will be able to receive packets sent in to that port number.

> > 1. Client connects to the server.
> > 2. Client asks server do perform X.
> > 3. The server might be able to perform X immediately in which case it 
> > returns
> >    the results on the same connection,
> >    or the server says "I'll call you back later".
> >    In the second case we get
> > 	4. Client creates listening socket. Tells the port number to the 
> > server.
> > 	5. Existing socket is closed
> > 	6. Later server calls back the client

> I don't think I see your problem. If the system uses a long-lived 
> identifier at step 4, and the application obtains this identifier from 
> the system, we're in business, I think. The problems start when the app 
> tries to discover the identifier before step 4 and it obtains a 
> short-lived one.

The problem is that the unmodified server extracts the identifier (aka IP
address) in step2 thus you'd need to make the client pick a long-lived
identifier in step1, or make step4 pass the identifier+port to the server.
In either case this implies modifications to the application.

  Erik
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.