← All posts

Infrastructure · June 9, 2026 · intSignal Network Team

Designing Network Resilience: Eliminating Single Points of Failure

Redundancy is not resilience

The two words get used interchangeably, and the confusion is expensive. Redundancy is having a second thing. Resilience is the system continuing to serve users when the first thing fails. You can buy redundancy on a purchase order; you earn resilience through design, testing, and honest measurement. Plenty of networks are full of duplicate hardware and still go dark in an outage — because the second path shared a fate with the first, the failover was never exercised, or nobody noticed the primary had already failed.

A useful test: walk the path real traffic takes, hop by hop, and ask at each one, "what happens if this disappears right now, with no warning?" Every answer that is "the business stops" is a single point of failure. Some are obvious — one firewall, one internet circuit. Others hide: two circuits in the same conduit, two power supplies on the same panel, a DNS zone with one provider, a routing decision that depends on a single BGP session. Resilient design is the discipline of turning each of those answers into "traffic keeps flowing."

Redundancy at every layer, done correctly

Single points of failure exist at every layer of the stack, and eliminating one does no good if the layer beneath it collapses. Work the layers deliberately.

  • Internet access. Two circuits is the baseline, but only if they are genuinely diverse: different carriers, different physical entry points to the building, and ideally different transport technologies (fiber plus fixed wireless or LTE, for example). Two fiber strands from the same provider in the same trench is one circuit wearing a costume — a single backhoe ends both. Insist on diverse path documentation from carriers, and verify it rather than trusting the sales order.
  • Edge and routing. Terminate those circuits on separate edge devices, not one router with two WAN ports. Run BGP or an SD-WAN overlay so traffic shifts automatically when a path degrades, not just when it dies outright. Brownouts — high latency and packet loss without a hard down — are more common than clean failures and are exactly where naive failover logic gets stuck.
  • Core and distribution. Redundant switches with a multi-chassis link aggregation or a validated spanning-tree design, dual uplinks, and no cabling that routes both "redundant" links through the same bundle or patch panel.
  • DNS. DNS is the most overlooked single point of failure on the internet. Use at least two DNS providers on separate infrastructure so that one provider's outage does not make your name unresolvable while your servers sit perfectly healthy. Keep TTLs low enough to fail over, but not so low you hammer resolvers.
  • Power and environment. Dual power supplies fed from independent circuits, a UPS per rack, and a generator for anything that must survive a utility outage. Cooling and physical security belong on the same redundancy budget — a room that overheats takes the whole stack with it.

The through-line is independence. Redundancy only counts when the backup does not share a failure mode with the primary. Two of anything on the same power feed, the same fiber, the same provider, or the same rack is one thing you paid for twice. This layered, path-diverse approach is the foundation of the global networks we design for clients who cannot tolerate a regional carrier problem taking down operations everywhere.

Active-active versus failover

Once you have two paths, you have to decide how they work together. There are two models, and the choice drives cost, complexity, and how much you can trust the backup.

Active-passive (failover). One path carries production; the other stands by and takes over when the primary fails. It is simpler and cheaper, and it is the right model for many workloads. Its weakness is the standby itself: a path that only carries traffic during a disaster is a path whose health you are usually guessing at. Failover also introduces a detection-and-switch delay, and that delay is only as good as your health checks. If the trigger is "circuit fully down," a brownout can leave you limping on a degraded primary while a healthy backup sits idle.

Active-active. Both paths carry production traffic simultaneously and share load. When one fails, the survivors absorb its share. The advantages are real: you are continuously proving both paths work because both are always in use, and there is no cold-start moment. The costs are also real — you must size each path to carry the full load alone (or accept degraded capacity during a failure), and you take on harder problems around session state, asymmetric routing, and consistency. An SD-WAN fabric makes active-active far more practical than it used to be, steering application traffic across multiple links by real-time performance and falling back gracefully when one degrades.

The honest rule: active-active is stronger precisely because it removes the "does the backup actually work?" question — the backup is never idle. Choose it for revenue-critical paths and reserve failover for workloads where a short switch window is acceptable and the cost of full duplicate capacity is not.

A failover you have never triggered is a theory

Redundant hardware that has never carried traffic in anger is a hypothesis, not a safeguard. The recurring failures are depressingly consistent: the backup circuit was misconfigured months ago and nobody knew, the failover script had a stale IP, BGP failed over but an internal firewall rule blocked the new path, or the switch happened but took eight minutes instead of the assumed thirty seconds. Every one of these is invisible until you test.

Borrow chaos engineering from the hyperscalers and make failure a routine, planned event:

  1. Pull real paths on purpose. In a maintenance window, physically or logically disable the primary circuit, a core switch, or a power feed and watch what happens. Announced first, then eventually unannounced.
  2. Test brownouts, not just blackouts. Inject latency and packet loss, not only hard downs. Degraded-but-alive is the failure mode that defeats naive logic.
  3. Time the recovery and measure user impact. Capture how long the switch takes and whether sessions actually survived. A failover that drops every connection is only half a success.
  4. Rotate who runs it. Recovery cannot depend on one engineer who remembers the undocumented step.
  5. Track findings like incidents. Every drill surfaces gaps; close them before the next one.

None of this works blind. You cannot route around a failure you cannot see, so infrastructure monitoring with per-path health, synthetic transactions, and alerting on degradation — not just outage — is the prerequisite for both automatic failover and honest testing.

Measure availability honestly

The last discipline is refusing to lie to yourself with numbers. Vendors quote "five nines" for a single device, but component uptime is not service uptime — the user experiences the whole path end to end, and the path is only as available as its weakest non-redundant link. Measure what the user measures.

  • Count real user impact, not device uptime. Availability is successful transactions from the user's vantage point, measured with synthetic checks from outside your network.
  • Track mean time to recovery, not just mean time between failures. Failures are inevitable; how fast you absorb them is the number that reflects resilience.
  • Include partial degradation. Slow is a form of down. If a page takes twelve seconds during "redundant" operation, your availability math is fiction.
  • Report the bad day. A yearly average of 99.99 percent hides a four-hour outage. Publish incident detail, not just the flattering rollup.

Build for the day something breaks

Anyone can run a network on a good day. The design only proves itself when a circuit drops, a device dies, or demand spikes — and users never notice. That bar is reached by eliminating single points of failure at every layer with genuinely independent redundancy, choosing active-active where it counts, exercising failover until it is boring, and measuring availability the way your users experience it. intSignal designs, builds, and operates resilient networks that meet that standard and proves they hold under real failure. Talk to our network team to map your single points of failure and design them out before your next outage does it for you.