>> This is a good idea and why I believe a hybrid stack is far superior
>> to a pure dual stack implementation. This paradigm is also inline
>> with the IPv6 deployment message which is IPv4/IPv6 Integration not
>> Migration. So I am real happy to hear SCTP is thinking that way
>> too.
>
>Good. I think I now understand your distinction between a hybrid
>stack and a dual stack.
Great. See my last mail to Mauro too just sent I go into more detail on
the principle (or is that principal :----))
>>> Effectively, we can create a passive socket which listens for
>>> connections on both af_inet and af_inet6 ports.
>>
>> Yes.
>>
>>> Jim Bound's comment appears to claim this is a bad idea:
>>>> An af_inet6 socket should not accept a connection for an af_inet socket.
>>
>> If there is a v4 listener and a v6 listener then that is fine.
>...
>> Above what I am saying is if a v4 listener and a v6 listener exist,
>> then af_inet incoming connections should be sent to the v4 listener.
>Is this v4 listener listening on INADDR_ANY and the v6 listener
>listening on in6addr_any for the same port? IMHO this should be
>illegal. The second listener should get an EBUSY when attempting to
>bind.
I think it should be illegal too. Its like running telnetv4 and
telnetv6 on the same node. Pretty stupid IMO. But if we have a socket
level option to not accept v4mapped for af_inet6 it will let it happen
in theory (not that I believe we should).
>> Good catch I made to many assumptions about after the preposition "for"
>> and it was too terse. But that is what I mean't by the prep phase
>> "for an af_inet socket". Meaning let the v4 listner have that
>> connection, not the v6 listener. Sorry.
>
>> There is an issue for the case where an app that is only doing v6
>> listener for both incoming af_inet and af_inet6, where the app may want
>> to not receive any connections from v4. Bill Sommerfield pointed this
>> out to me offline. The issue is that the v6 socket binds before a v4
>> bind and the v6 socket receives the v4 address as v4mapped. What we
>> probably want to do is have a setsockopt in rfc2553bis that says DON"T
>> ACCEPT V4MAPPED connections (there are other ways to do this but the
>> socket level option is the cleanest).
>Blech! In SCTP we need to allow binding on arbitrary subsets of
>addresses. Our solution is to allow multiple calls to bind(). There
>is nothing special about the sets "all IPv4 addresses" and "all IPv6
>addresses" (well, there shouldn't be...).
I agree so an sctp app in this case would not set the socket level
option.
>> But the idea is to not have applications have to run two instances
>> for v4 and v6, but only one instance (e.g. telnet, ftp, NFS, sctp
>> app, oracle app). It also permits ISVs to ship one code base and if
>> the user does not even use IPv6 the app still works, until the user
>> turns on IPv6 ---> Integration.
>This is definately the way to go. I shouldn't even have to "turn on
>IPv6 Integration". If all of my interfaces are ifconfig'd with v4
>addresses, then I don't do IPv6...
I agree. Simple is beautiful to most users.
>> This will come up at ipng meeting via Dave Thaler agenda item.
>
>I'll make a point of attending, thanks.
That would be good as your one of those **real** users of this API we
need to hear from.
/jim
--------------------------------------------------------------------
IETF IPng Working Group Mailing List
IPng Home Page: http://playground.sun.com/ipng
FTP archive: ftp://playground.sun.com/pub/ipng
Direct all administrative requests to [EMAIL PROTECTED]
--------------------------------------------------------------------