12 comments

[ 3.7 ms ] story [ 56.1 ms ] thread
> a network should have logically centralized control, where the control software has network-wide visibility and direct control across the distributed collection of network devices.

Including a backdoor for wiretapping in SDN-enabled routers.

what a wonderful chronicle of how esoteric research became not-esoteric, and truly world-changing, and how the NSF enabled it

pour one out for the NSF folks. RIP </3

I worked with a quite few of the folks mentioned in this article when I was at the Open Networking Foundation, if anyone has questions.
Is this technology used in the Internet core?

Or for de-bundling access networks and Internet service? Where I live, access networks use shared media (broadcast cable or GPON), segregating customers through device and protocol obscurity (no tcpdump) and maybe encryption (but without tcpdump, it is hard to tell). There's not much room for defining anything in software there.

And in data centers, how far does multi-tenancy go in practice? Can tenants push their own P4 programs into hyperscaler infrastructure?

I have no idea on the internet core, but I wouldn't be surprised if SDN capable gear is used there. One major performance benefits of SDN is lowering latency as the processing is happening in the switch silicon instead of a general purpose CPU, which seems very applicable to core switching.

For access networks, it has been used. VOLTHA (PON solution that is in production in various places, see other post) is being used for this, and also there is code for doing PPP encap/decap in P4, which allows access control and lower latency at line rate.

I'm not aware of anyone making the programmability parts of SDN available as a service. Usually most hyperscalers don't allow access to infra components - anything below the kernel or certain specific peripherals - and the underlying network would be one of these areas.

The 10-year research-to-production timeline is the key lesson. Today's funding (VC or government grants) demands results in 2-3 years. We've systematically eliminated the "patient capital" that creates foundational infrastructure imho...
Some problems require time.

It took me 33.5 years to solve a problem that was important to me.

A solution did exist after all. And the conceptual/mathematical walls, mazes, and unexpected territories I was forced to traverse, taught me and gave me knew ways to understand problems.

I also learned the value of luck.

I thought it would take 3-5 months. 3-5 years, at most. (Not as an occupation, but as a side quest.)

Ignorance, incurable optimism, and hope are capricious sirens.

I clearly didn’t understand the problem like I thought. And my “quest” could easily have become a cautionary Don Quixote tale.

That experience gives me great appreciation for the famous organizations and labs that gave many minds the time to pursue, and help each other pursue, hard problems. Whose breakthroughs we still benefit from. Working somewhere like that would be a dream.

> 2003: The goal of the 100×100 project was to create communication architectures that could provide 100Mb/s networking for all 100 million American homes.

Well you failed horribly.

> The project brought together researchers from Carnegie Mellon, Stanford, Berkeley, and AT&T.

I think I see why.

> This research led to the 4D architecture for logically centralized network control of a distributed data plane

What? How was this meant to benefit citizens?

> Datacenter owners grew frustrated with the cost and complexity of the commercially available networking equipment; a typical datacenter switch cost more than $20,000 and a hyperscaler needed about 10,000 switches per site. They decided they could build their own switch box for about $2,000 using off-the-shelf switching chips from companies such as Broadcom and Marvell

What role did the NSF play here? It sounds like basic economics did most of the actual work.

> The start-up company Nicira, which emerged from the NSF-funded Ethane project, developed the Network Virtualization Platform (NVP)26 to meet this need

Which seems to have _zero_ mentions outside of academic papers.

What’s the current state of SDN development these days?

I remember working on related projects about ten years ago in grad school, and even back then it felt like a somewhat naive and overhyped form of “engineering innovation.”

Take OpenFlow, for example — every TCP connection had to go through the controller to set up a per-connection flow match entry for the path. It always struck me as a bit absurd.

At the time, the main push came from Stanford’s “clean slate” networking project led by Prof. Nick McKeown. They spun off things like Open vSwitch, Big Switch Networks, and even open-source router efforts like NetFPGA. Later, the professor went back into industry.

Looking back, the whole movement feels like a startup-driven experiment that got heavily “packaged” but never really solved any fundamental problem. I mean, traditional distributed-routing-based network gear was already working fine — didn’t they already have admin interfaces for configuration anyway (or call that admin interface SDN )? lol ~

Afaik OvS can use pre-programmed flows so doesn't require talking to controller on every new TCP connection - dataplane uses in-kernel conntrack module. Google cloud uses heavily modified OvS for their VM networking (Andromeda) I think some other cloud providers do as well.
(comment deleted)