If you want a programming language to really dig into parsing and creating packets and binary data, Erlang (and Elixir), while a completely different programming paradigm daunting to novice users, are unmatched (pun intended) in generating and parsing binary packets with a native and flexible binary data type.
If you want to be able to observe, decode, and inspect real packets on your local network, then you need wireshark and/or tcpdump.
If you want a home lab for simulating various networks with various clients, servers, and network devices either XenServer (free) or VMware ESXi (pirated "free" v.7 or maybe v.8) are good options because they simulate dumb virtual switches, virtual networks, and virtual computers (VMs) in another piece of software that replaces a real computer's (usually a server but rarely a desktop or laptop, but also it can run inside a VM on desktop, laptop, or server using what's called a type-2 hypervisor) operating system with its own (type-1 hypervisor). (VMware pre-Broadcom and Citrix engineering cultures had an unspoken, unwritten "gentleman's agreement" that industry-limited pirating was cool so long as it wasn't unreasonable, and product licensing wouldn't break customers' production and would be limited to nags. Comes from the mouth(s) of (a) certain former product manager(s) at one or more of the above entities. Pirating developer use for self-demoing within the industry was a nonzero, unrecognized sales acquisition channel that was probably important in large customer bases but under-appreciated... most engineers/IT people don't want to have to deal with vendor sales/sales engineering meeting free lunches and sit through vendor demos so see if a product trial will work or just to get an installer and a demo license key.)
https://search.worldcat.org/title/1085945855
PS: I'm wondering if there's retro networking/netadmin homelab community that buys 10 Mbps - 1 GbE Cisco gear and goes through CCIE courseware to see all the old protocols and old problems like spanning tree loops, crossover cables pre auto–MDI-X, and duplex flapping with Intel PRO/1000 in generation 8-9 HP and Dell servers.
EVE-NG is an excellent free network simulator.
Nowadays, you will be much better of with Computer Networking: A Top Down Approach by Kurose now in 8th edition:
https://gaia.cs.umass.edu/kurose_ross/index.php
There's also videos by Prof Kurose himself teaching from the book from Youtube, and additionally the ppt slides and exercises are available without registration unlike many textbooks.
I think the book set a very high standard on how textbook should be written and presented (any subject not only computer networking).
Fun facts, the 1st edition already logically and fundamentally separated forwarding and control planes for better understanding even before the modern software-defined networking (SDN) was proposed. The newer editions already have forwarding and control in separate chapters, nice.
I think you're waxing rosy retrospection that might be overly-generous. The OSI model turned out to be an overly-complicated, academic mirage and not a great fit to describe reality that wasn't useful L4+. SDN is mostly just network virtualization / tunneling by encapsulation, which has been rediscovered over and over again since the telegraph, with the exception network gear became more programmatically flexible with the control plane / data plane concepts. With added expense, it's nice to have physically-separated management &| control plane networks from the data plane for security, backup connectivity, and DDoS out-of-band resilience.
Even then, I think the academic networking curriculum missed opportunities to be practical and relevant with general basic network administration principles and high-performance interfacing approaches, such as offloading types, DMA, and zero copy.
C'est la vie. There's EE/CS academia, which does teach general principles and hard fundamental well, but falls short of being practical. It seems like the pragmatic-experimentation side could be improved without sacrificing rigorous theoretical foundations. Because what's the (@!$&% practical point of implementing MICMAC in 44 microinstructions with Huffman-encoded macroinstructions and gradual decoding minimized for microinstructions and for microcycles? Competitive hazing ritual abuse recounting. "Oh yeah, I had to code upside-down, blindfolded, in the snow with only 4 keys made of ivory and we had to hunt the elephants ourselves!"
Recent versions even have SDN builtin
I am rather wary about sharing my Github login/profile with third-party sites -- just keeping a separation between the profile that has links to many other automations and deployments
Someone else may not have a github profile for many reasons