<mxfile host="thecodeclouds.com" agent="hand-built" version="24.0.0" type="device">
<diagram id="reference" name="1. Reference architecture"><mxGraphModel dx="1400" dy="900" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1500" pageHeight="900" math="0" shadow="0"><root><mxCell id="0"/><mxCell id="1" parent="0"/><mxCell id="c1" value="AWS + Google Cloud: enterprise hub-and-spoke reference architecture" style="text;html=1;whiteSpace=wrap;align=left;verticalAlign=top;fontSize=18;fontColor=#232F3E;fontStyle=1;spacing=0;" vertex="1" parent="1"><mxGeometry x="20" y="16" width="900" height="24" as="geometry"/></mxCell>
<mxCell id="c2" value="&lt;b&gt;AWS Cloud&lt;/b&gt;" style="points=[];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;container=0;pointerEvents=0;collapsible=0;recursiveResize=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_aws_cloud_alt;strokeColor=#232F3E;fillColor=none;verticalAlign=top;align=left;spacingLeft=30;fontColor=#232F3E;dashed=0;" vertex="1" parent="1"><mxGeometry x="20" y="60" width="600" height="640" as="geometry"/></mxCell>
<mxCell id="c3" value="&lt;b&gt;eu-west-2 (London)&lt;/b&gt;" style="points=[];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;container=0;pointerEvents=0;collapsible=0;recursiveResize=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_region;strokeColor=#00A4A6;fillColor=none;verticalAlign=top;align=left;spacingLeft=30;fontColor=#147EBA;dashed=1;" vertex="1" parent="1"><mxGeometry x="40" y="100" width="560" height="580" as="geometry"/></mxCell>
<mxCell id="av0" value='&lt;b&gt;Prod VPC&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;10.16.0.0/16&lt;/font&gt;' style="points=[];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;container=0;pointerEvents=0;collapsible=0;recursiveResize=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_vpc2;strokeColor=#8C4FFF;fillColor=#FAF7FF;verticalAlign=top;align=left;spacingLeft=30;fontColor=#8C4FFF;dashed=0;" vertex="1" parent="1"><mxGeometry x="60" y="140" width="230" height="105" as="geometry"/></mxCell>
<mxCell id="avi0" value="&lt;b&gt;Amazon EKS&lt;/b&gt;" style="sketch=0;points=[];outlineConnect=0;fontColor=#232F3E;fillColor=#ED7100;strokeColor=#ffffff;dashed=0;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.eks;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="78" y="186" width="44" height="44" as="geometry"/></mxCell>
<mxCell id="av1" value='&lt;b&gt;Non-prod VPC&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;10.17.0.0/16&lt;/font&gt;' style="points=[];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;container=0;pointerEvents=0;collapsible=0;recursiveResize=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_vpc2;strokeColor=#8C4FFF;fillColor=#FAF7FF;verticalAlign=top;align=left;spacingLeft=30;fontColor=#8C4FFF;dashed=0;" vertex="1" parent="1"><mxGeometry x="60" y="270" width="230" height="105" as="geometry"/></mxCell>
<mxCell id="avi1" value="&lt;b&gt;Amazon EC2&lt;/b&gt;" style="sketch=0;points=[];outlineConnect=0;fontColor=#232F3E;fillColor=#ED7100;strokeColor=#ffffff;dashed=0;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.ec2;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="78" y="316" width="44" height="44" as="geometry"/></mxCell>
<mxCell id="av2" value='&lt;b&gt;Shared services VPC&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;10.18.0.0/16&lt;/font&gt;' style="points=[];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;container=0;pointerEvents=0;collapsible=0;recursiveResize=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_vpc2;strokeColor=#8C4FFF;fillColor=#FAF7FF;verticalAlign=top;align=left;spacingLeft=30;fontColor=#8C4FFF;dashed=0;" vertex="1" parent="1"><mxGeometry x="60" y="400" width="230" height="105" as="geometry"/></mxCell>
<mxCell id="avi2" value='&lt;b&gt;Route 53 Resolver&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;endpoints&lt;/font&gt;' style="sketch=0;points=[];outlineConnect=0;fontColor=#232F3E;fillColor=#8C4FFF;strokeColor=#ffffff;dashed=0;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.route_53_resolver;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="78" y="446" width="44" height="44" as="geometry"/></mxCell>
<mxCell id="av3" value='&lt;b&gt;Inspection VPC&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;10.19.0.0/22&lt;/font&gt;' style="points=[];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;container=0;pointerEvents=0;collapsible=0;recursiveResize=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_vpc2;strokeColor=#8C4FFF;fillColor=#FAF7FF;verticalAlign=top;align=left;spacingLeft=30;fontColor=#8C4FFF;dashed=0;" vertex="1" parent="1"><mxGeometry x="60" y="530" width="230" height="105" as="geometry"/></mxCell>
<mxCell id="avi3" value="&lt;b&gt;Network Firewall&lt;/b&gt;" style="sketch=0;points=[];outlineConnect=0;fontColor=#232F3E;fillColor=#DD344C;strokeColor=#ffffff;dashed=0;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.network_firewall;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="78" y="576" width="44" height="44" as="geometry"/></mxCell>
<mxCell id="tgw" value='&lt;b&gt;Transit Gateway&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;route tables per env&lt;/font&gt;' style="sketch=0;points=[];outlineConnect=0;fontColor=#232F3E;fillColor=#8C4FFF;strokeColor=#ffffff;dashed=0;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.transit_gateway;labelPosition=center;verticalLabelPosition=bottom;align=center;verticalAlign=top;" vertex="1" parent="1"><mxGeometry x="380" y="300" width="60" height="60" as="geometry"/></mxCell>
<mxCell id="s2s" value="&lt;b&gt;Site-to-Site VPN&lt;/b&gt;" style="sketch=0;points=[];outlineConnect=0;fontColor=#232F3E;fillColor=#8C4FFF;strokeColor=#ffffff;dashed=0;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.site_to_site_vpn;labelPosition=center;verticalLabelPosition=top;align=center;verticalAlign=bottom;" vertex="1" parent="1"><mxGeometry x="520" y="174" width="52" height="52" as="geometry"/></mxCell>
<mxCell id="dxgw" value='&lt;b&gt;Direct Connect&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;gateway&lt;/font&gt;' style="sketch=0;points=[];outlineConnect=0;fontColor=#232F3E;fillColor=#8C4FFF;strokeColor=#ffffff;dashed=0;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.direct_connect;labelPosition=center;verticalLabelPosition=top;align=center;verticalAlign=bottom;" vertex="1" parent="1"><mxGeometry x="520" y="304" width="52" height="52" as="geometry"/></mxCell>
<mxCell id="c8" style="edgeStyle=none;html=1;rounded=0;strokeColor=#8C4FFF;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="av0" target="tgw"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="c9" style="edgeStyle=none;html=1;rounded=0;strokeColor=#8C4FFF;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="av1" target="tgw"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="c10" style="edgeStyle=none;html=1;rounded=0;strokeColor=#8C4FFF;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="av2" target="tgw"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="c11" style="edgeStyle=none;html=1;rounded=0;strokeColor=#8C4FFF;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="av3" target="tgw"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="c12" style="edgeStyle=none;html=1;rounded=0;strokeColor=#8C4FFF;strokeWidth=2;dashed=0;startArrow=none;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="tgw" target="s2s"><mxGeometry relative="1" as="geometry"><Array as="points"><mxPoint x="410" y="200"/></Array></mxGeometry></mxCell>
<mxCell id="c13" style="edgeStyle=none;html=1;rounded=0;strokeColor=#8C4FFF;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="tgw" target="dxgw"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="c14" value="&lt;b&gt;Google Cloud&lt;/b&gt;" style="rounded=1;absoluteArcSize=1;arcSize=6;html=1;whiteSpace=wrap;strokeColor=#4285F4;fillColor=#FFFFFF;strokeWidth=1.5;dashed=0;fontSize=12;fontStyle=0;fontColor=#3C4043;align=left;verticalAlign=top;spacingLeft=34;spacingTop=-2;" vertex="1" parent="1"><mxGeometry x="880" y="60" width="600" height="640" as="geometry"/></mxCell>
<mxCell id="c15" value="" style="sketch=0;html=1;aspect=fixed;strokeColor=none;fillColor=#4285F4;shape=mxgraph.gcp2.google_cloud_platform;" vertex="1" parent="1"><mxGeometry x="888" y="65" width="22" height="22" as="geometry"/></mxCell>
<mxCell id="c16" value="&lt;b&gt;europe-west2 (London)&lt;/b&gt;" style="rounded=1;absoluteArcSize=1;arcSize=6;html=1;whiteSpace=wrap;strokeColor=#9AA0A6;fillColor=none;strokeWidth=1;dashed=1;fontSize=12;fontStyle=0;fontColor=#3C4043;align=left;verticalAlign=top;spacingLeft=8;spacingTop=-2;" vertex="1" parent="1"><mxGeometry x="900" y="100" width="560" height="580" as="geometry"/></mxCell>
<mxCell id="rvpc" value='&lt;b&gt;Routing VPC&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;10.35.0.0/24&lt;/font&gt;' style="rounded=1;absoluteArcSize=1;arcSize=6;html=1;whiteSpace=wrap;strokeColor=#4285F4;fillColor=#F1F6FE;strokeWidth=1;dashed=0;fontSize=12;fontStyle=0;fontColor=#3C4043;align=left;verticalAlign=top;spacingLeft=34;spacingTop=-2;" vertex="1" parent="1"><mxGeometry x="915" y="140" width="195" height="375" as="geometry"/></mxCell>
<mxCell id="c18" value="" style="sketch=0;html=1;aspect=fixed;strokeColor=none;fillColor=#5184F3;shape=mxgraph.gcp2.virtual_private_cloud;" vertex="1" parent="1"><mxGeometry x="923" y="145" width="22" height="20" as="geometry"/></mxCell>
<mxCell id="havpn" value='&lt;b&gt;HA VPN&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#5F6368"&gt;2 interfaces&lt;/font&gt;' style="sketch=0;html=1;aspect=fixed;strokeColor=none;shadow=0;fillColor=#5184F3;fontSize=12;fontColor=#3C4043;shape=mxgraph.gcp2.cloud_vpn;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="935" y="173.5" width="60" height="53.15" as="geometry"/></mxCell>
<mxCell id="cr" value='&lt;b&gt;Cloud Router&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#5F6368"&gt;BGP, custom adverts&lt;/font&gt;' style="sketch=0;html=1;aspect=fixed;strokeColor=none;shadow=0;fillColor=#5184F3;fontSize=12;fontColor=#3C4043;shape=mxgraph.gcp2.cloud_router;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="935" y="303.5" width="60" height="53.15" as="geometry"/></mxCell>
<mxCell id="vlan" value='&lt;b&gt;Interconnect&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#5F6368"&gt;VLAN attachments&lt;/font&gt;' style="sketch=0;html=1;aspect=fixed;strokeColor=none;shadow=0;fillColor=#5184F3;fontSize=12;fontColor=#3C4043;shape=mxgraph.gcp2.dedicated_interconnect;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="935" y="420" width="60" height="53.15" as="geometry"/></mxCell>
<mxCell id="hub" value='&lt;b&gt;NCC hub&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#5F6368"&gt;VPC + hybrid spokes&lt;/font&gt;' style="sketch=0;html=1;aspect=fixed;strokeColor=none;shadow=0;fillColor=#5184F3;fontSize=12;fontColor=#3C4043;shape=mxgraph.gcp2.cloud_network;labelPosition=center;verticalLabelPosition=bottom;align=center;verticalAlign=top;" vertex="1" parent="1"><mxGeometry x="1150" y="307" width="56" height="49.61" as="geometry"/></mxCell>
<mxCell id="c19" style="edgeStyle=none;html=1;rounded=0;strokeColor=#4285F4;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.506;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="rvpc" target="hub"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="gv0" value='&lt;b&gt;Prod Shared VPC&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;10.32.0.0/16&lt;/font&gt;' style="rounded=1;absoluteArcSize=1;arcSize=6;html=1;whiteSpace=wrap;strokeColor=#4285F4;fillColor=#F1F6FE;strokeWidth=1;dashed=0;fontSize=12;fontStyle=0;fontColor=#3C4043;align=left;verticalAlign=top;spacingLeft=8;spacingTop=-2;" vertex="1" parent="1"><mxGeometry x="1250" y="140" width="195" height="105" as="geometry"/></mxCell>
<mxCell id="gvi0" value="&lt;b&gt;GKE&lt;/b&gt;" style="sketch=0;html=1;aspect=fixed;strokeColor=none;shadow=0;fillColor=#5184F3;fontSize=12;fontColor=#3C4043;shape=mxgraph.gcp2.container_engine;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="1266" y="190" width="46" height="40.75" as="geometry"/></mxCell>
<mxCell id="c21" style="edgeStyle=none;html=1;rounded=0;strokeColor=#4285F4;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="hub" target="gv0"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="gv1" value='&lt;b&gt;Non-prod Shared VPC&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;10.33.0.0/16&lt;/font&gt;' style="rounded=1;absoluteArcSize=1;arcSize=6;html=1;whiteSpace=wrap;strokeColor=#4285F4;fillColor=#F1F6FE;strokeWidth=1;dashed=0;fontSize=12;fontStyle=0;fontColor=#3C4043;align=left;verticalAlign=top;spacingLeft=8;spacingTop=-2;" vertex="1" parent="1"><mxGeometry x="1250" y="270" width="195" height="105" as="geometry"/></mxCell>
<mxCell id="gvi1" value="&lt;b&gt;Compute Engine&lt;/b&gt;" style="sketch=0;html=1;aspect=fixed;strokeColor=none;shadow=0;fillColor=#5184F3;fontSize=12;fontColor=#3C4043;shape=mxgraph.gcp2.compute_engine;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="1266" y="320" width="46" height="40.75" as="geometry"/></mxCell>
<mxCell id="c23" style="edgeStyle=none;html=1;rounded=0;strokeColor=#4285F4;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="hub" target="gv1"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="gv2" value='&lt;b&gt;Shared services VPC&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;10.34.0.0/16&lt;/font&gt;' style="rounded=1;absoluteArcSize=1;arcSize=6;html=1;whiteSpace=wrap;strokeColor=#4285F4;fillColor=#F1F6FE;strokeWidth=1;dashed=0;fontSize=12;fontStyle=0;fontColor=#3C4043;align=left;verticalAlign=top;spacingLeft=8;spacingTop=-2;" vertex="1" parent="1"><mxGeometry x="1250" y="400" width="195" height="105" as="geometry"/></mxCell>
<mxCell id="gvi2" value="&lt;b&gt;Cloud DNS&lt;/b&gt;" style="sketch=0;html=1;aspect=fixed;strokeColor=none;shadow=0;fillColor=#5184F3;fontSize=12;fontColor=#3C4043;shape=mxgraph.gcp2.cloud_dns;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="1266" y="450" width="46" height="40.75" as="geometry"/></mxCell>
<mxCell id="c25" style="edgeStyle=none;html=1;rounded=0;strokeColor=#4285F4;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="hub" target="gv2"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="gsec" value="&lt;b&gt;Org guardrails&lt;/b&gt;" style="rounded=1;absoluteArcSize=1;arcSize=6;html=1;whiteSpace=wrap;strokeColor=#9AA0A6;fillColor=#F8F9FA;strokeWidth=1;dashed=0;fontSize=12;fontStyle=0;fontColor=#3C4043;align=left;verticalAlign=top;spacingLeft=8;spacingTop=-2;" vertex="1" parent="1"><mxGeometry x="1250" y="530" width="195" height="105" as="geometry"/></mxCell>
<mxCell id="fw" value='&lt;b&gt;Hierarchical&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#5F6368"&gt;firewall policies&lt;/font&gt;' style="sketch=0;html=1;aspect=fixed;strokeColor=none;shadow=0;fillColor=#5184F3;fontSize=12;fontColor=#3C4043;shape=mxgraph.gcp2.cloud_firewall_rules;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="1266" y="575" width="46" height="40.75" as="geometry"/></mxCell>
<mxCell id="c27" style="edgeStyle=none;html=1;rounded=0;strokeColor=#1E8E3E;strokeWidth=4;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="dxgw" target="cr"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="c28" value="AWS Interconnect - multicloud" style="text;html=1;whiteSpace=wrap;align=center;verticalAlign=top;fontSize=13;fontColor=#1E8E3E;fontStyle=1;spacing=0;labelBackgroundColor=#FFFFFF;" vertex="1" parent="1"><mxGeometry x="600" y="286" width="320" height="19" as="geometry"/></mxCell>
<mxCell id="c29" value="= Partner Cross-Cloud Interconnect for AWS&lt;br&gt;1 to 100 Gbps · MACsec · 4-way redundant" style="text;html=1;whiteSpace=wrap;align=center;verticalAlign=top;fontSize=11;fontColor=#3C4043;fontStyle=0;spacing=0;labelBackgroundColor=#FFFFFF;" vertex="1" parent="1"><mxGeometry x="600" y="340" width="320" height="32" as="geometry"/></mxCell>
<mxCell id="c30" style="edgeStyle=none;html=1;rounded=0;strokeColor=#E8710A;strokeWidth=2;dashed=1;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="s2s" target="havpn"><mxGeometry relative="1" as="geometry"></mxGeometry></mxCell>
<mxCell id="c31" value="Backup: HA VPN, 4 IPsec tunnels, BGP" style="text;html=1;whiteSpace=wrap;align=center;verticalAlign=top;fontSize=11;fontColor=#E8710A;fontStyle=0;spacing=0;labelBackgroundColor=#FFFFFF;" vertex="1" parent="1"><mxGeometry x="620" y="206" width="280" height="17" as="geometry"/></mxCell>
<mxCell id="dc" value='&lt;b&gt;Corporate data centre&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;10.0.0.0/12&lt;/font&gt;' style="points=[];outlineConnect=0;gradientColor=none;html=1;whiteSpace=wrap;fontSize=12;fontStyle=0;container=0;pointerEvents=0;collapsible=0;recursiveResize=0;shape=mxgraph.aws4.group;grIcon=mxgraph.aws4.group_corporate_data_center;strokeColor=#7D8998;fillColor=#F7F8FA;verticalAlign=top;align=left;spacingLeft=30;fontColor=#5A6C86;dashed=0;" vertex="1" parent="1"><mxGeometry x="600" y="735" width="300" height="135" as="geometry"/></mxCell>
<mxCell id="rtr" value='&lt;b&gt;Edge routers&lt;/b&gt;&lt;br&gt;&lt;font style="font-size:10px" color="#545B64"&gt;2 colocation sites&lt;/font&gt;' style="sketch=0;points=[];outlineConnect=0;fontColor=#232F3E;fillColor=#5A6C86;strokeColor=#ffffff;dashed=0;html=1;fontSize=12;fontStyle=0;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.router;labelPosition=right;verticalLabelPosition=middle;align=left;verticalAlign=middle;spacingLeft=4;" vertex="1" parent="1"><mxGeometry x="690" y="790" width="44" height="44" as="geometry"/></mxCell>
<mxCell id="c33" style="edgeStyle=none;html=1;rounded=0;strokeColor=#5A6C86;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="dxgw" target="dc"><mxGeometry relative="1" as="geometry"><Array as="points"><mxPoint x="546" y="802.5"/></Array></mxGeometry></mxCell>
<mxCell id="c34" value="Direct Connect&lt;br&gt;2 x 10G, 2 locations" style="text;html=1;whiteSpace=wrap;align=right;verticalAlign=top;fontSize=11;fontColor=#5A6C86;fontStyle=0;spacing=0;" vertex="1" parent="1"><mxGeometry x="400" y="718" width="140" height="32" as="geometry"/></mxCell>
<mxCell id="c35" style="edgeStyle=none;html=1;rounded=0;strokeColor=#5A6C86;strokeWidth=2;dashed=0;startArrow=block;startFill=1;endArrow=block;endFill=1;endSize=4;startSize=4;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" edge="1" parent="1" source="vlan" target="dc"><mxGeometry relative="1" as="geometry"><Array as="points"><mxPoint x="965" y="802.5"/></Array></mxGeometry></mxCell>
<mxCell id="c36" value="Dedicated Interconnect&lt;br&gt;2 x 10G, 2 metro zones" style="text;html=1;whiteSpace=wrap;align=left;verticalAlign=top;fontSize=11;fontColor=#5A6C86;fontStyle=0;spacing=0;" vertex="1" parent="1"><mxGeometry x="975" y="718" width="200" height="32" as="geometry"/></mxCell>
<mxCell id="c37" value="&lt;b&gt;Legend&lt;/b&gt;" style="rounded=1;arcSize=8;html=1;whiteSpace=wrap;strokeColor=#9AA0A6;fillColor=#FFFFFF;dashed=0;fontSize=12;fontStyle=0;fontColor=#3C4043;align=left;verticalAlign=top;spacingLeft=8;" vertex="1" parent="1"><mxGeometry x="1200" y="730" width="280" height="135" as="geometry"/></mxCell>
<mxCell id="c38" style="edgeStyle=none;html=1;rounded=0;strokeColor=#1E8E3E;strokeWidth=4;dashed=0;startArrow=none;startFill=1;endArrow=none;endFill=1;endSize=4;startSize=4;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="1214" y="768" as="sourcePoint"/><mxPoint x="1254" y="768" as="targetPoint"/></mxGeometry></mxCell>
<mxCell id="c39" value="Primary cloud-to-cloud link" style="text;html=1;whiteSpace=wrap;align=left;verticalAlign=top;fontSize=11;fontColor=#3C4043;fontStyle=0;spacing=0;" vertex="1" parent="1"><mxGeometry x="1266" y="761" width="204" height="17" as="geometry"/></mxCell>
<mxCell id="c40" style="edgeStyle=none;html=1;rounded=0;strokeColor=#E8710A;strokeWidth=2;dashed=1;startArrow=none;startFill=1;endArrow=none;endFill=1;endSize=4;startSize=4;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="1214" y="789" as="sourcePoint"/><mxPoint x="1254" y="789" as="targetPoint"/></mxGeometry></mxCell>
<mxCell id="c41" value="Encrypted backup path" style="text;html=1;whiteSpace=wrap;align=left;verticalAlign=top;fontSize=11;fontColor=#3C4043;fontStyle=0;spacing=0;" vertex="1" parent="1"><mxGeometry x="1266" y="782" width="204" height="17" as="geometry"/></mxCell>
<mxCell id="c42" style="edgeStyle=none;html=1;rounded=0;strokeColor=#8C4FFF;strokeWidth=2;dashed=0;startArrow=none;startFill=1;endArrow=none;endFill=1;endSize=4;startSize=4;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="1214" y="810" as="sourcePoint"/><mxPoint x="1254" y="810" as="targetPoint"/></mxGeometry></mxCell>
<mxCell id="c43" value="AWS routing domain" style="text;html=1;whiteSpace=wrap;align=left;verticalAlign=top;fontSize=11;fontColor=#3C4043;fontStyle=0;spacing=0;" vertex="1" parent="1"><mxGeometry x="1266" y="803" width="204" height="17" as="geometry"/></mxCell>
<mxCell id="c44" style="edgeStyle=none;html=1;rounded=0;strokeColor=#4285F4;strokeWidth=2;dashed=0;startArrow=none;startFill=1;endArrow=none;endFill=1;endSize=4;startSize=4;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="1214" y="831" as="sourcePoint"/><mxPoint x="1254" y="831" as="targetPoint"/></mxGeometry></mxCell>
<mxCell id="c45" value="Google Cloud routing domain" style="text;html=1;whiteSpace=wrap;align=left;verticalAlign=top;fontSize=11;fontColor=#3C4043;fontStyle=0;spacing=0;" vertex="1" parent="1"><mxGeometry x="1266" y="824" width="204" height="17" as="geometry"/></mxCell>
<mxCell id="c46" style="edgeStyle=none;html=1;rounded=0;strokeColor=#5A6C86;strokeWidth=2;dashed=0;startArrow=none;startFill=1;endArrow=none;endFill=1;endSize=4;startSize=4;" edge="1" parent="1"><mxGeometry relative="1" as="geometry"><mxPoint x="1214" y="852" as="sourcePoint"/><mxPoint x="1254" y="852" as="targetPoint"/></mxGeometry></mxCell>
<mxCell id="c47" value="On-premises links" style="text;html=1;whiteSpace=wrap;align=left;verticalAlign=top;fontSize=11;fontColor=#3C4043;fontStyle=0;spacing=0;" vertex="1" parent="1"><mxGeometry x="1266" y="845" width="204" height="17" as="geometry"/></mxCell></root></mxGraphModel></diagram>
</mxfile>
