♊︎ Digital reverse engineering in networking: netlab 🖧 🅲🅻🅾🅽🅴 🖧
In Greek mythology, the twins Castor and Pollux were fathered by the gods (although pater semper incertus est). They became famous to the point that the Romans named stars after them, the most prominent members of the Gemini constellation (consisting of 85 naked eye visible stars in total).
Although Pollux is the brighter one, the astronomical equivalent of a fat finger typo caused Castor to end up as “alpha”. In Homer’s Odyssey, the twins are described as being alive or dead on alternating days, sharing their father’s immortality — which provides us with a natural bridge to networking.
Digital twins in networking
Much like the mythical twins, “Digital Twin” technology is heavily overhyped.
Be that as it may, the idea of creating a digital functional copy of a (subsection of) a physical network can serve multiple purposes:
✅ Visualize/document the physical network topology and configuration
✅ Replicate issues and experiment with changes without affecting users
✅ Test/validate upgrade scenarios and migration/scale-out strategies
✅ Share (anonymized) topology/config details with experts
✅ Evaluate alternative vendor solutions
Making it happen
Here’s a minimal Proof-of-Concept using SR Linux and SROS to auto-discover a network topology using gNMI port scanning, and generate a corresponding Containerlab topology based on LLDP analysis.
After finalizing support for SR Linux and SROS in Netsim-Tools, adding a ‘netlab clone’ command could be a next step. I’m thinking it would read an Ansible inventory containing IP addresses and security credentials, discover the type of device for each of those, and then run a vendor specific ‘discover and clone’ playbook to generate a ‘cloned_topology-[date].yml’ file.
Good idea? Interested in feedback from the community