Hacker News new | ask | show | jobs
by aidenn0 708 days ago
Packet switching won over circuit switching because the cost-per-capacity was so much lower; if you have to end up over-provision/under-utilize links anyways, why not use circuit switching?
2 comments

Because the cost is a lot lower. Paying a few percent of overcapacity doesn’t change that.
TFA suggest a 900% overcapacity, not a few percent. I just skimmed GP's article but it seems to suggest a ~100% overcapacity for streaming-video specifically.
"100% overcapacity" is also known as "50% load factor".

It's common knowledge to run your API nodes at 20%-60% CPU load, no more, exactly to curb tail latency.

just think about your competitive edge if you could manage to cramp more load w/o affecting latency
Depends on what you have to pay (and not just in money) to get there.
A physical circuit costs a lot, so much more that it's not even funny.

You can deploy a 24-fiber optical cable and allow many thousand virtual circuits to run on it in parallel using packet switching. Usually orders of magnitude more when they share bandwidth opportunistically, because the streams of packets are not constant intensity.

Running thousands of separate fibers / wires would be much more expensive, and having thousands of narrow-band splitters / transcievers, also massively expensive. Phone networks have tried that all, and gladly jumped off the physical circuits ship as soon as they could.

These days I think circuit switching means virtual circuits with guaranteed bandwidth at each hop. Even the phone network used FDM/TDM for circuits, not separate wires. Anyway, circuits are more expensive than just running a packet-switched network lightly loaded. See http://www.stuartcheshire.org/rants/Networkdynamics.html and https://www-users.cse.umn.edu/~odlyzko/doc/network.utilizati...
> Anyway, circuits are more expensive than just running a packet-switched network lightly loaded.

This was undoubtedly true (and not even close) 20 years ago. As technology changes, it can be worth revisiting some of these axioms to see if they still hold. Since virtual circuits require smart switches for the entire shared path, there are literal network effects making it hard to adopt.

The old and new standard ways to do virtual circuit switching are ATM (heavily optimized for low latency voice - 53 byte packets!) and MPLS (seems to be a sort of flow labeling extension to "host" protocols such as IP - clever!).

Both are technologies that one rarely has any contact with as an end user.

Sources: Things I've read a long time ago + Wikipedia for ATM, Wikipedia for MPLS.