[ih] Internet History - from Community to Big Tech?
Karl Auerbach
karl at cavebear.com
Thu Mar 28 15:33:20 PDT 2019
On 3/27/19 7:16 PM, Jack Haverty wrote:
> The "packet driver" standardization may have made it easier for all
> those people to write their TCP stacks -- but there was no such
> standardization at the next level - the APIs that allowed an app to use
> those stacks. So we needed different code for each TCP stack.
The Winsock API evolved on the top side of many of the TCP stacks.
Winsock was a distant relative of the Unix socket API (and when I say
"distant" I mean "they could almost see one another on a clear day with
a good telescope"). If I remember correctly there was a vendor
consortium to work on making sure that Winsock was clear and solid. I
do remember running some Winsock interoperability bake-offs.
> I wonder if that is where the boundary starts between interoperability
> and walled gardens
At the Interop shows, especially in the earlier days, we (the team that
built and ran the show net) really beat up on vendors that were not
interoperable. I remember at least one case where we simply unplugged a
router/switch vendor because they were not playing nice.
We always pre-built and pre-tested the main show network (45.x.x.x/8) in
a warehouse a couple of months before the show. That way we had
everything relatively solid before we loaded up the trucks (and we
filled a lot of trucks - I remember once we filled 43 large semitrailers
- and that was just for our own gear, not the vendors'.)
And wow, did we ever find some pathological non-interoperation. But
sometimes the cause was relatively innocent - as one instance having to
do with a difference of interpretation regarding the forwarding of IP
multicast packets between Cisco and Wellfleet routers that ended up
causing us an infinite ethernet frame loop. And once our FDDI expert -
Merike Kaeo - found a specification flaw in FDDI physical layer stuff:
The various vendors came up with a fix on the spot and were blasting new
firmware into PROMs in their hotel rooms.
- i.e., where people take advantage of the "lower"
> uniformity brought by some standard (whether in spec or in code), but
> fail to coordinate standardization at the level "above" them, where they
> present their services to the next guy up. By maintaining uniqueness,
> they hope their walled garden will be the one to thrive.
I recently had someone confirm a widely held belief that Sun
Microsystems had tuned the CSMA/CD timers on their Ethernet interfaces
to have a winning bias against Ethernet machines that adhered to the
IEEE/DIX ethernet timer values. Those of us who tended to work with
networked PC platforms were well aware of the effect of putting a Sun
onto the same Ethernet: what had worked before stopped working, but the
Suns all chatted among themselves quite happily.
And FTP Software used to put its license key information in the part of
Ethernet frames between the end of an ARP and the end of the data of the
Ethernet frame. That caused a lot of strange side effects. (One can
still send a lot of IP stacks into death spirals by putting an IPv4/v6
packet into an Ethernet frame that is larger than the minimum needed to
hold the IP packet - a lot of deployed code still incorrectly uses the
received frame size to impute the length of the IP packet rather than
looking at the IP header.)
And FTP software also realized that with IP fragmentation the receiver
really does not know how big a buffer will ultimately be required until
the last fragment arrives. So they altered their IP stack to send the
last fragment first. That had the effect of causing all of their
competitor Netmanage stacks to crash when they got a last-fragement-first.
--karl--
More information about the Internet-history
mailing list