Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What a great story. The spanning tree algo is under appreciated: this allowed people who didn’t understand networking to plug networks together the way you would plug extension power cables together,* making networking simple ( or alternatively insanely broken, when people had 400 computers on a single LAN with a rat’s nest of bridges and hubs…but unlike the extension cord case, nothing would catch literal fire).

* don’t try this at home or work!



Occasionally people don't understand how to plug extension power cables together, either, especially during times of high stress and low sleep.

Once upon a time, when I was in IT support, I got a call from someone in a satellite office across town saying that their computer wouldn't turn on. A new production had begun and everyone was a bit frantic, so this was an urgent request. After asking them to hold the power switch in for a few seconds and try to turn it on again, I asked them to make sure the power cable was secure and that the computer was plugged in. It was, of course, but the computer still wouldn't turn on, so it was time to jump on the bicycle and ride across town with a new power supply in tow, figuring it would be a quick fix.

When I arrive, I see that, indeed, the computer was plugged in to a power strip. And that power strip was plugged in to itself. From then on, I always made sure to ask, "Is the computer plugged into the wall?" Saved myself a few bicycle trips that way.


My Audio Video buddy has a very similar story. A school called because their newish PA system wasn’t working. Turns out the usual lady was out. The usual lady would rip the cord out of the wall every evening instead of pressing the power button. The stand in announcer was just trying to press the on off button like most normal people.

They ended up having to replace expensive equipment because the person wouldn’t stop ripping the cord out of the wall to turn it of.


I think American houses don't have a power switch per outlet like the rest of the world. The only way some (most?) devices can be turned off is by pulling the cord.


Not it’s not at all. Do you turn a computer or tv off by pulling the cord? No, you turn it off by a switch/button or in the GUI if it has one. I’m from the US.

If you had a stero system at your house you would not pull the cord to turn it off. Wow.


Some places/people have a concern (complex?) about standby or parasitic power draw.


European power outlets don't have switches either.


I was really hoping for some never before known knowledge of how to connect Extension Cables and Power Boards together!

But no, turns out someone didnt even manage the basics! LOL

There's a reason the IT Crowd have the running joke of 'have you tried turning it off and on again...'! :-)


In all fairness, the person had obviously been awake for over 24 hours and was on their 1,001st cup of coffee. And since earlier in the summer I had crashed the entire ticket scanner network the night before the opening of the weekend festival we had put on by creating a network loop between a couple of non-spanning-tree-speaking network devices, I didn't feel I was in a place to be snarky about it!


> was on their 1,001st cup of coffee

9 cups is a lot but shouldn't cause cognitive disorder.


There are 10 types of people


heh, with power strips that have very long cables, I've seen them plugged into themselves a few times as well.


Like tying a shoelace: the long grey cord goes around the backside of the desk, turns and comes around the front, and back into its own powerstrip.

..Wait why won't it turn on?


> people who didn’t understand networking

A couple of decades ago I witnessed a classic demonstration of Weinberg's Corollary¹ when a spanning tree misconfiguration on a freshly-installed BlackDiamond disabled LINX for hours, throwing half of Britain's ISP peering into chaos. The switch in question was evidently cursed: it'd been dropped on my foot earlier that week, thus disabling me for hours, and everyone else involved in that project was dead within two years.

__

[1] "an expert is a person who avoids the small errors while sweeping on to the grand fallacy"


everyone else involved in that project was dead within two years.

That's ... quite a legacy.


The error of a wise man is equal to the combined blunders of a thousand fools.


That's why the new Ethernet protocol 802.11aq is recommending Shortest Path Bridging (SPB) as a robust alternative to Spanning Tree Protocol (STP). Not only it's more robust, but it is more secure with extra resilience against broadcast storm. It also can support multi-cast function more easily and intuitively at data-link layer [1],[2]. Compared to the new SPB, STP looks like an immature hacks and why it took so long to be replaced is beyond me.

[1]IEEE 802.1aq:

https://en.m.wikipedia.org/wiki/IEEE_802.1aq

[2] 802.1aq Shortest Path Bridging Design and Evolution: The Architect's Perspective:

https://ieeexplore.ieee.org/book/6381532


> That's why the new Ethernet protocol 802.11aq is recommending Shortest Path Bridging (SPB) as a robust alternative to Spanning Tree Protocol (STP).

This is a dead letter standard: most folks who would 'need' SPB are probably using BGP EVPN to reduce the Layer 2 'blast radius'.

It should also be noted that the IEEE was dragged kicking and screaming towards SPB: originally TRILL was proposed, but the IEEE rejected it, and so the IETF published:

* https://en.wikipedia.org/wiki/TRILL_(computing)

IEEE realized their mistake and published SPB, so now there are two L2 standards.

Not many folks who either though, with anyone really needing 'large scale' stuff moving towards L3 solutions.


> but unlike the extension cord case, nothing would catch literal fire

Somewhere, out there, is a story of an overburdened network setup literally catching fire, and it’s hopefully making its way to us.


I saw one sorta catch fire.

But it wasn't over burdened.

It was in the kitchen, cause that was also where the utility closet is. and our 100+ year old building has crappy/dirty power, frequent brown-outs.

So, a few weeks of splashing coffee, tea and other crap around, and our crap power the thing started humming (60Hz). Then one day POP! Cap blew out and there was a little smoke.


Seen more than my fair share of magic smoke from lightning or near lightning strikes.

Also fried more than a few ports on devices when passive POE used to be more prevalent :p


C'mon HN, I'm counting on you...


Not recommended but these bad boys make a lot of things work, and cause a lot of damage! https://m.media-amazon.com/images/I/61A5WvzcgsL._AC_UL960_QL...


Too late: Tried this at work; Did a marvelous job sharing satellite internet with the whole barracks.


Sounds like things worked out, even if all you shared was your porn.


> but unlike the extension cord case, nothing would catch literal fire

I might be taking this too literally (I fell down the Kunsberg Bridge rabbithole recently), but with only one input on nearly all extension cords, I don't see how you'd get into a position of "fire" rather than "nothing happening".

Even if you did have two ways of putting power into your extension lead, it wouldn't necessarily lead to fire; household "ring" circuits (still very common in UK houses) are by definition a loop.


STP is basically magic - and being able to reliably optimize it to reduce reconvergence time makes you a magician.


I feel like STP is basically magic when you first learn it in a course (usually sponsored by Cisco) but the illusion is broken when you learn computer science principles like a graph data structure and how to build an acyclic graph.

STP handles this through sending little messages with every node receiving the message appending themselves after whoever sent it. Then a node just checks if it sees itself in the message. If I DO see myself in the chain, I know now I need to not send information to the previous node that sent me the message.

The message just needs to be something that'll never succeed but flow through the network. If I have three nodes labeled "A", "B", and "C" then I could send a message intended for "D" (which does not exist in my network). A has a path to B and A has a path to C. B has a path to C and vice versa. Each node can talk to another.

A send to B. B checks if its in the chain and if not, it appends itself in the chain. A -> B. B knows it received the message from A so it will ignore this connection and send the message to all of its neighbors. C receives the message from B. C checks if its in the chain and if not, it appends itself in the chain. A > B -> C. C got the message from B so it ignores this path and sends the message to all of its other neighbors (in this case, A).

A receives the message and checks if its in the chain (it is). A knows it received the message from C. A now knows that a cycle has been detected, so A disables its connection to C.

Congrats! You've designed a tree! Its a graph that contains no cycles. All we had to do was send a message and check if we see ourselves in the chain. If we do, we disable our path to the last node that sent us a message.

Of course STP gets more complicated from here as we factor in path costs as weights to measure the decision to axe a connection. Maybe A -> B is a 1G connection and A -> C is a 10G connection, in this case A may disable the path to B.

I do agree that reducing reconvergence time is magic. I don't understand that one.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: