Rack-scale Networking
Oxide and Friends28 Helmi 2023

Rack-scale Networking

Bryan and Adam are joined by a number of members of the Oxide networking team to talk about the networking software that drives the Oxide rack. It turns out that rack-scale networking is hard... and has enormous benefits!


We've been hosting a live show weekly on Mondays at 5p for about an hour, and recording them all; here is the recording from February 27th, 2023.

In addition to Bryan Cantrill and Adam Leventhal, speakers included Ryan Goodfellow, Levon Tarver, Ben Naecker, and Arjen Roodselaar.

Links

Here's (much of) the live chat from the show:

  • ahl https://github.com/oxidecomputer/oxide-and-friends/blob/master/2021_11_29.md
  • ahl That's the Sidecar switch episode
  • bcantrill https://p4.org/
  • admchl What does "at line rate" mean?
  • Riking Line rate = As fast as the packets could possibly come. 1Gbit, 10Gbit, 100Gbit, etc
  • admchl Do you need ASICs to hit that speed? I assume x86_64 is not going to be fast enough for these specialised operations?
  • levon Yes, the Tofino 2 is the ASIC
  • bcantrill You need ASICs
  • bnaecker Yes, you really can't do these kinds of operations on a general purpose CPU.
  • rng_drizzt Yeah, you need specialized silicon here.
  • JustinAzoff Right, also often across all ports at the same time in both direction. a 48 port 10gbps switch will have a line rate of 960gbps (10 ** 48 ** 2)
  • duckman So the advantage is being able to offload compute to the switch?
  • bnaecker Yes, and specifically that you can separate the data plane (operations on the packets) from the control plane (decisions about what operations to allow or make).
  • tahnok What's TCAM?
  • levon Ternary Content Addressable Memory
  • bnaecker https://en.wikipedia.org/wiki/Content-addressable_memory#Ternary_CAMs
  • ryaeng Sure beats logging into a number of Cisco switches and making changes at the console.
  • admchl This is my favourite episode in a long time, this is all really fascinating.
  • rng_drizzt the first Sidecar episode was nearly 1.5 years ago ü§Ø , right after we cut the first rev
  • levon That episode blew my mind
  • duckman This sounds like a big deal on the scale of ebpf
  • duckman Or bigger
  • bnaecker It is extremely useful for understanding the processing pipelines. As long as you only run single-packet integration tests üôÇ
  • od0 just want to go out and find things to write P4 code for
  • JustinAzoff <@354365572554948608> yeah one way to think about that sort of thing is that xdp can be used to run little programs on a nic, where p4 is kind of like that, but running on effectively a nic with 48+ ports
  • bcantrill https://github.com/oxidecomputer/p4
  • SyntheticGate sidecar is the "codename" of our switch box
  • SyntheticGate "gimlet" is our server sled
  • bcantrill https://github.com/oxidecomputer/propolis
  • wmf So you have P4 and OPTE in the hypervisor at the same time?
  • bnaecker OPTE is in the host kernel.
  • arjenroodselaar The P4 runtime Ry described only exists in the test bed, where it high level simulates the switches. OPTE is part of the production environment.
  • arjenroodselaar The rough difference between P4 and OPTE is that P4 works on individual packets without much concept of a session (so it can't reason about TCP streams, packet order etc, so no firewall like functionality), while OPTE aims to operate on streams of packets.
  • JustinAzoff So you can run 100 VMs on a test system and wire them up to your virtual switch compiled by x4c?
  • arjenroodselaar Correct.
  • bcantrill OPTE == Oxide Packet Transformation Engine
  • admchl Gimlet?
  • rng_drizzt Compute server
  • rng_drizzt The Sidecar switch is actually just a PCIe peripheral to a Gimlet.
  • bnaecker The Gimlet managing the Sidecar is often called a "Scrimlet" for "Sidecar attached Gimlet"
  • Riking and "how do i reconfigure this giant network without hosing my ability to reconfigure this giant network"
  • ShaunO can identify with that - we seriously struggle to keep our own products inter-operating, let alone anyone else's
  • levon It can feel like a Sisyphean task.
  • a172 Setup a much smaller/simpler network in parallel that is accessible from "not your network" that gets you to the management interface.
  • levon It's a whole new world when you can look at the actual table definitions in P4
  • rng_drizzt Owning all the layers here is immensely beneficial
  • levon Those DTrace probes have been very helpful
  • bnaecker Those probes turned out to be everywhere. They are are in: SQL queries, HTTP queries, log messages, Propolis hypervisor state, virtual storage system, networking protocol messages, the P4 emulator, and probably more that I'm forgetting about.
  • levon For those unfamiliar with the DTrace tool, or the rationale behind leveraging DTrace over other tracing / debugging tools: https://www.cs.princeton.edu/courses/archive/fall05/cos518/papers/dtrace.pdf
  • bcantrill https://github.com/oxidecomputer/progenitor
  • ahl some notes on rust codegen: https://github.com/ahl/codegen-template
  • arjenroodselaar DDM! Bring us home!
  • a172 it astonishes me how many "cloud" type architectures are built on v4 only or v4 first.
  • a172 IPv6 is older than Wi-Fi
  • a172 It solves real problems. PLEASE use it.
  • nyanotech yessss fina...

Tämä jakso on lisätty Podme-palveluun avoimen RSS-syötteen kautta eikä se ole Podmen omaa tuotantoa. Siksi jakso saattaa sisältää mainontaa.

Jaksot(189)

Working on Wicked Problems

Working on Wicked Problems

Wicked problems defy simple solutions. Even as we describe the problem, we may be presupposing particular solutions and narrowing scope. Our greatest, most persistent societal problems fit this model....

16 Loka 1h 26min

For Want of a Resistor

For Want of a Resistor

When the supply chain crunch catches up with you, sometimes a tiny resistor the size of a fleck of pepper is the difference between a world-class computer and... e-waste. Members of the Oxide operatio...

16 Syys 1h 23min

Emulating Oxide: How Faux Can You Go?

Emulating Oxide: How Faux Can You Go?

We've been hosting a live show weekly on Mondays at 5p for about an hour, and recording them all; here is the recording.How do you test configurations you haven't built yet? Steve, Andrew, and Rain jo...

11 Syys 1h 24min

AI Detection with Max Spero

AI Detection with Max Spero

More and more, people are relying on AI to do their writing for them. Is this the new normal, or the intellectual equivalent of claiming take-out is your own home cooking? Max Spero, founder and CEO o...

3 Syys 1h 1min

The Return to the Chamber of Mysteries

The Return to the Chamber of Mysteries

Oxide returns to the chamber... of EMC compliance to earn FCC approval to sell our next generation rack. Did it go smoothly? If it had, would there be a podcast episode? Oxide teammates Robert, Dan, a...

25 Elo 1h 16min

The Open Weight Revolution with Simon Willison

The Open Weight Revolution with Simon Willison

Simon Willison joined Bryan and Adam to discuss a wild couple of weeks in AI. First, we have a high-profile, AI-induced, AI-diagnosed security incident. Next we have the rise of frontier-class open-we...

31 Heinä 1h 24min

The Past, Present, and Future of Digital Storytelling with Ramy Katrib

The Past, Present, and Future of Digital Storytelling with Ramy Katrib

Ramy Katrib has been at the forefront of digital storytelling for over 25 years, with his post-production company, DigitalFilm Tree, earning a reputation as one of Hollywood's most technically adventu...

23 Heinä 1h 4min

The Oxide 3D Explorer

The Oxide 3D Explorer

Recently, Oxide rolled out an eye-popping 3D rack explorer at explorer.oxide.computer. Oxide's designer extraordinaire, Ben Leonard, joined Bryan and Adam to describe the process of turning CAD drawin...

27 Kesä 1h 14min