EMC Fellow and one of the pioneers of early network design, presented a keynote at QCon London that explored how networking protocols and technologies have evolved to become today’s Internet. In her talk, she answered some common questions (e.g. Why do we need both Ethernet and IP?) and explored how things might have looked if they were designed today.
Perlman began by stating that she doesn’t always agree with the way professionals speak about network protocols, memorising the details of the way everything is deployed, such as:
She believes that standards act more like moving targets than stable reference points. Also, the expert groups working on the standards are, at times, acting more like sports fans rather than professional technologists.
Next, Perlman delved into reviewing network layers. Even though real-world network implementations subdivide into additional layers, combine layers, or perform layer violation when looking at the headers of other layers, she suggested the following classification for the talk:
- Layer 1. Physical layer – where bits are signalled.
- Layer 2. Structures the bits signalled at layer 1 into packets: marks the beginning and end of a packet, maybe a checksum. The packet is sent to a neighbour.
- Layer 3: Switches forward packets from link to link to deliver packets from a source to a destination across a network.
So, layer 2 only talks to neighbours and layer 3 forwards from link to link.
Even if Ethernet was initially designed for multiple machines to communicate over the same wire – layer 2 connectivity – it ended up working at layer 3 as well. At layer 3, Ethernet packets are forwarded having just an extra field – hop count – for keeping track of how many times a packet is forwarded. The initial protocol used was Carrier Sense Multiple Access/Collision Detection (CSMA/CD). In plain words: common sense implemented for networks – don’t speak if somebody else is speaking and if it happens, restart the conversation based on a randomly chosen time. This would work for a network situated within a building but not for the whole internet. Just looking at 60% of the traffic would mean too many collisions.
According to Perlman, the routing algorithms she wrote should work with any underlying protocol, not only IP or DECNet. When Ethernet came into play, she needed to integrate the nodes within a network. if she had considered each node combination in the algorithm, she would have ended up with an n*n combination of nodes, which would’ve increased the size of the lookup database too much. Instead, she considered the “pseudonode” approach, which meant just n+1 nodes, as shown by the diagram below.
