Class DesignGraphBuilder

java.lang.Object
com.eqixiac.equinix.design.resilience.DesignGraphBuilder

public final class DesignGraphBuilder extends Object
Builds the DesignGraph of a spec on a portfolio. Pure: the same spec, portfolio, placement, context and options give the same graph.

What the graph holds and what is assumed

  • One metro node per portfolio metro, with the catalogue's region and geo zones.
  • One Cloud Router per metro when the design has cloud connections or more than one metro (the Layer-3 hub for cloud and inter-metro traffic, as the Deployment Wizard plans it), attached to its metro. Inter-metro backbone edges join every pair of routers with Fabric's round trip (measured where Fabric publishes it, estimated otherwise); their capacity is not provisioned by the spec and is left unknown, so it never constrains the simulation.
  • One on-ramp per (cloud, metro) cloud leg of the PlacementPlan, a cloud connection from the metro's router to it, and a provider link on to the cloud node. A connection's capacity is the bandwidth of the sized workloads it carries as primary plus standbyCapacityFraction of those it carries as standby; unknown when it carries only unsized workloads. Its role is primary when it carries any workload as primary.
  • Each site has access circuits into its accessHoming nearest portfolio metros by known round trip (the nearest is primary). Access capacity is unknown (the spec states none). A site with no known latency to any portfolio metro has no access edge and is reported as unknown.
  • Each workload has a hosting edge to its primary metro and, when it has one, its standby metro.
  • Optional peer nodes, from peering data, joined to the portfolio metros where the peer is present.