Comment by petra

20 hours ago

I think Cisco is an interesting use case for AI, because it's code, probably:

-Works according to a defined specification

-Within the bounds of that specification, has a lot of code written to optimize speed, cost, latency, etc - all measureable goals

-Written in c, with all it's weakness

-Given limitless engineering work, some could be ported to better hardware

-the new system could be automatically compared to the old system for functional correctness

All those factors fit well with agent based development.

Btw, many of them are true in general to embedded systems.

It's way more complicated than that. Bear in mind many of the network protocols in use today are decades old and have been constantly evolving, but there has generally been a consideration to maintain interoperability.

Then consider that not all vendors implement the standards identically, because the standards can be a bit woolly and in some cases followed rather than lead live implementations.

There will be a bunch of code that looks useless, but is actually there because of specific interoperability scenarios.

  • That's a good point.

    I wonder whether AI is any good at looking at that code,running the system, and documenting those edge cases?

    • I'm probably not describing the scale of the issue adequately. Lots of these bugs only show up when you have a specific bit of hardware on a specific version of code, and it's connected to another specific bit of hardware running another specific version of code.

      Lots of this stuff should work in theory, you only find out that it doesn't in practice when you try it on real hardware. And there are thousands of bits of hardware.

  • Indeed. Making a perfect clone of such software is I suspect provably impossible because you have no way to assemble all the test cases. There might be some peer box out in the wild somewhere that is the only thing that will exercise some code path. You have no idea what that box is or what it does.

you assume their code is well written, while in reality the history of weird quirks and thousands upon thousands of CVE doesn't make the code underneath look well designed and written.

But yes, fact it uses a bunch of very well documented standards with multiple implementations gonna help massively

I worked at Cisco on one of the IOS-XR teams. It’s way more complex than you think it is.

This whole thing sounds like a deluded vanity project birthed in an ivory tower.

Manufacturers can’t even maintain OIDs between releases. I hope the AI will help. Ciena isn’t any better than Cisco, they broke their OIDS for the switches we use and we have to wait until mid 2027.

  • to be fair SNMP is just bad. Only redeeming feature of it is "takes little RAM to run it" (which was important when average networking device might've had only 2MB of RAM, not so in last 30 years).

    The whole design where you need to get a magical list of IDs to decode the metrics and the list is not even shipped with device is entirely asinine

The first and last bullets are extremely optimistic. How do you possibly simulate all the weird interdependent behavior in real world networks?

  • Given that a Cisco switch can be replaced with some other company's switch(at least in theory, idk), without weird unknown cases interfering, why would this be a problem ?

    • Not that straightforward. Similar to CPUs and other HW, there are errata and interop quirks between devices.

      There are also tight time budgets (basically SLAs) that must be met along with memory considerations (both in SW and on the NPU/HBM), not to mention how the device needs to respond to load and various failure scenarios.