[189999] in North American Network Operators' Group

home help back first fref pref prev next nref lref last post

Re: Netflix banning HE tunnels

daemon@ATHENA.MIT.EDU (Owen DeLong)
Sun Jun 12 20:13:53 2016

X-Original-To: nanog@nanog.org
From: Owen DeLong <owen@delong.com>
In-Reply-To: <CAPPYGuwa23ddGSn1z3LH7vHoZ9Uwfg2iYDhs0hnQhPmGXSp5Gw@mail.gmail.com>
Date: Sun, 12 Jun 2016 17:13:47 -0700
To: Cryptographrix <cryptographrix@gmail.com>
Cc: nanog@nanog.org
Errors-To: nanog-bounces@nanog.org


> On Jun 10, 2016, at 11:58 , Cryptographrix <cryptographrix@gmail.com> =
wrote:
>=20
> Just to clarify - there's no transition involved - IPv4 to IPv6 is =
like
> going from the VINES protocol to IPv6: IPv6 may as well have been =
called
> "PROTOCOL 493" - it bares very little relation to the original =
protocol
> that brought us the internet as-it-is-today.

Yes and no.

VINES didn=E2=80=99t have TCP/UDP/ICMP. While there are subtle =
differences, the
reality is that 99% of code for IPv4 can be converted to IPv6 =
compatibility
with very little effort. Especially if the IPv4 code was written in the =
last
20 years with any thought of a possible IPv6 future (i.e. uses the =
superior
getaddrinfo() call instead of gethostbyname(), etc.).

Modifying even the simplest of programs from VINES to IPv6 would require
replacing ALL of the networking calls with calls that have radically =
different
semantics.

For IPv4->IPv6, there are a few things that change, but most of it is =
pretty
close to what you=E2=80=99re used to and many calls can be unchanged.

socket() gets some different arguments.
setsockopt() likewise
bind() is essentially unchanged.
send(), recv(), sendto(), recvfrom(), open(), close() all remain the =
same.

This is obviously not an exhaustive list, but I=E2=80=99ve converted =
several applications
in multiple languages and it really isn=E2=80=99t all that difficult. =
Certainly less
difficult than when we went from IPX to IPv4.

Owen


home help back first fref pref prev next nref lref last post