Linux.conf.au – Day 2 Keynote: Radia Perlman

Tuesdays Keynote was by Radia Perlman of Network Protocol Folklore

General protocol about protocol design

  • Need more people in the field that hate computers
  • Autoconfiguration
  • Knobs if you want them
  • Be evolutionary if possible

Networking is taught as if TCP/IP arrived from the sky. As if nothing else ever existed

She teaches by looking at a problem and looking at how different protocols solve it

Comparing technologies

  • Nobody knows both of them
  • Everybody is partisan
  • Both moving targets
  • Hard to compare via benchmarks since people are just comparing implementations rather than actual technology

The Story of Ethernet

  • ISO 7 layer model
  • Ethernet was intended to be layer 2, neighbour to neighbour, was are packets forwarded
  • Ethernet physical was a new type of link, multiple nodes on single link
  • But we haven’t done CSMA/CD networks for years
  • No hopcount field in Ethernet since never occurred to designers that people would be forwarded the packets
  • People started building networks layer-2 only without layer-3
  • Needed to forwarded Ethernet between networks, but had to work with existing ethernet packets -> Bridge
  • Spanning tree reduced created loop-free subset of the topology

Why is wrong with IP as L3 protcol

  • Every link must have own address block
  • Configuration intensive
  • In 1992 Internet could have adopted CLNP but NIH
  • Also advantages not obvious then since things like DHCP, NAT so advantages of CLNP not as obvious

TRILL

  • Switches run routing protocol between themselves
  • Replaces spanning tree (switch by switch basis)
  • Wraps ethernet packets in trill headers, forwards to other trill switch and then unwraps
  • Various ways to link which end devices are behind which trill switch
  • Link state routing between trill switches to create shortest paths
  • Can upgrade switches to trill one by one an “just starts working better”
  • Anything can do the trill encapsulate/decapsulate

Similar to TRILL

  • VXLAND / NVGRE
  • Wrap IP rather than ethernet

Protocol Forklore

  • Version number
    • What is the purpose?
    • What is the new protocol vs the old protocol?
    • Envelope says how to parse the header (how to parse the packet)
    • Need to define what node does when it sees a different version number
  • Parameters
    • minimise these
  • Latency
    • cut-through – forward before you have received the whole thing
    • Destination should be near the start of the header
    • tcp has checksum so need to see the whole header before you forward