![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
To throw in my quick $.02 (and perhaps invite more discussion :) ), I think we absolutely need to migrate both networking APIs and transport layer protocols themselves toward a model where an "endpoint" is an opaque (to the transport/application) variable-length string of some kind, and the transport/application shouldn't even care much if any what exactly the string is. The string could potentially be a DNS name, a dotted IPv4 address, a colonificated IPv6 address, a hex- encoded HIP cryptographic host identifier, a UIA personal name, ... And sure, the semantics of these different kinds of "endpoint strings" will vary depending on what they actually are, and for network management purposes they won't all be equivalent or interchangeable, but for purposes of normal transport and application protocol operation - i.e., "gimme a TCP-like connection to the endpoint named 'X'", why should transports and applications need to care? Just think how much easier the IPv4 to IPv6 transition would have been if nothing above the IP layer cared exactly what an IP address looks like or how big it is.
Cheers, Bryan _______________________________________________ Ietf mailing list Ietf at ietf.org https://www.ietf.org/mailman/listinfo/ietf
Note Well: Messages sent to this mailing list are the opinions of the senders and do not imply endorsement by the IETF.