<mxfile host="app.diagrams.net">
  <diagram name="Page-1" id="m6lb-74cCAojVJ4xnoOC">
    <mxGraphModel grid="1" page="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
      <root>
        <mxCell id="0" />
        <mxCell id="1" parent="0" />
        <mxCell id="wdswVsyetmIhFotaYBlL-10" parent="1" style="rounded=0;whiteSpace=wrap;html=1;dashed=1;dashPattern=8 4;strokeColor=#7c3aed;strokeWidth=2;fillColor=none;fontColor=light-dark(#7E7E7E,#7E7E7E);fontStyle=1;fontSize=13;verticalAlign=top;align=left;spacingLeft=12;spacingTop=8;startSize=30;container=0;collapsible=0;" value="Egress" vertex="1">
          <mxGeometry height="200" width="620" x="104" y="305" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-1" parent="1" style="text;html=1;align=center;verticalAlign=middle;fontSize=18;fontStyle=1;fontColor=light-dark(#7E7E7E,#7E7E7E);" value="Internet Connectivity Stack" vertex="1">
          <mxGeometry height="30" width="620" x="104" y="40" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-3" parent="1" style="rounded=0;whiteSpace=wrap;html=1;dashed=1;dashPattern=8 4;strokeColor=#2563eb;strokeWidth=2;fillColor=none;fontColor=light-dark(#7E7E7E,#7E7E7E);fontStyle=1;fontSize=13;verticalAlign=top;align=left;spacingLeft=12;spacingTop=8;startSize=30;container=1;collapsible=0;" value="Ingress (preferred: decentralized)" vertex="1">
          <mxGeometry height="200" width="620" x="104" y="85" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-4" parent="wdswVsyetmIhFotaYBlL-3" style="sketch=0;points=[];outlineConnect=0;fontColor=light-dark(#7E7E7E,#7E7E7E);fillColor=#8C4FFF;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.cloudfront;" value="" vertex="1">
          <mxGeometry height="56" width="56" x="55" y="50" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-5" parent="wdswVsyetmIhFotaYBlL-3" style="text;html=1;align=center;verticalAlign=top;fontSize=11;fontColor=light-dark(#7E7E7E,#7E7E7E);whiteSpace=wrap;" value="&lt;b&gt;&lt;font style=&quot;font-size: 12px;&quot;&gt;Edge layer&lt;/font&gt;&lt;/b&gt;&lt;br&gt;Amazon CloudFront, AWS WAF,&lt;br&gt;AWS Global Accelerator" vertex="1">
          <mxGeometry height="60" width="160" x="20" y="112" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-6" parent="wdswVsyetmIhFotaYBlL-3" style="outlineConnect=0;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;shape=mxgraph.aws3.application_load_balancer;fillColor=#F58534;gradientColor=none;fontColor=light-dark(#7E7E7E,#7E7E7E);" value="" vertex="1">
          <mxGeometry height="60" width="58" x="278" y="48" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-7" parent="wdswVsyetmIhFotaYBlL-3" style="text;html=1;align=center;verticalAlign=top;fontSize=11;fontColor=light-dark(#7E7E7E,#7E7E7E);whiteSpace=wrap;" value="&lt;font style=&quot;font-size: 12px;&quot;&gt;&lt;b&gt;Per-VPC entry point&lt;/b&gt;&lt;/font&gt;&lt;br&gt;ALB / NLB / API Gateway&lt;br&gt;CloudFront VPC Origins" vertex="1">
          <mxGeometry height="60" width="160" x="227" y="112" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-8" parent="wdswVsyetmIhFotaYBlL-3" style="sketch=0;points=[];outlineConnect=0;fontColor=light-dark(#7E7E7E,#7E7E7E);fillColor=#DD344C;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.network_firewall;" value="" vertex="1">
          <mxGeometry height="56" width="56" x="505" y="50" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-9" parent="wdswVsyetmIhFotaYBlL-3" style="text;html=1;align=center;verticalAlign=top;fontSize=11;fontColor=light-dark(#7E7E7E,#7E7E7E);whiteSpace=wrap;" value="&lt;b&gt;&lt;font style=&quot;font-size: 12px;&quot;&gt;Per-VPC L4 inspection&lt;br&gt;&lt;/font&gt;&lt;/b&gt;AWS Network Firewall or&lt;br&gt;GWLB + 3rd-party firewall" vertex="1">
          <mxGeometry height="60" width="160" x="453" y="112" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-17" parent="1" style="rounded=0;whiteSpace=wrap;html=1;dashed=1;dashPattern=8 4;strokeColor=#059669;strokeWidth=2;fillColor=none;fontColor=light-dark(#7E7E7E,#7E7E7E);fontStyle=1;fontSize=13;verticalAlign=top;align=left;spacingLeft=12;spacingTop=8;startSize=30;container=1;collapsible=0;" value="Filtering layer (both directions)" vertex="1">
          <mxGeometry height="200" width="620" x="104" y="525" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-18" parent="wdswVsyetmIhFotaYBlL-17" style="sketch=0;points=[];outlineConnect=0;fontColor=light-dark(#7E7E7E,#7E7E7E);fillColor=#DD344C;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.firewall_manager;" value="" vertex="1">
          <mxGeometry height="56" width="56" x="135" y="50" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-19" parent="wdswVsyetmIhFotaYBlL-17" style="text;html=1;align=center;verticalAlign=top;fontSize=11;fontColor=light-dark(#7E7E7E,#7E7E7E);whiteSpace=wrap;" value="&lt;b&gt;&lt;font style=&quot;font-size: 12px;&quot;&gt;Centrally managed&lt;br&gt;&lt;/font&gt;&lt;/b&gt;AWS Firewall Manager,&lt;br&gt;Route 53 DNS Firewall" vertex="1">
          <mxGeometry height="60" width="160" x="83" y="112" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-20" parent="wdswVsyetmIhFotaYBlL-17" style="sketch=0;points=[];outlineConnect=0;fontColor=light-dark(#7E7E7E,#7E7E7E);fillColor=#DD344C;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.network_firewall;" value="" vertex="1">
          <mxGeometry height="56" width="56" x="425" y="50" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-21" parent="wdswVsyetmIhFotaYBlL-17" style="text;html=1;align=center;verticalAlign=top;fontSize=11;fontColor=light-dark(#7E7E7E,#7E7E7E);whiteSpace=wrap;" value="&lt;b&gt;&lt;font style=&quot;font-size: 12px;&quot;&gt;Data-plane options&lt;br&gt;&lt;/font&gt;&lt;/b&gt;AWS Network Firewall,&lt;br&gt;GWLB + 3rd-party firewall" vertex="1">
          <mxGeometry height="60" width="160" x="373" y="112" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-11" parent="1" style="sketch=0;outlineConnect=0;fontColor=light-dark(#7E7E7E,#7E7E7E);gradientColor=none;fillColor=light-dark(#7E7E7E,#7E7E7E);strokeColor=none;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;aspect=fixed;shape=mxgraph.aws4.internet_alt2;" value="" vertex="1">
          <mxGeometry height="56" width="56" x="182" y="355" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-12" parent="1" style="text;html=1;align=center;verticalAlign=top;fontSize=11;fontColor=light-dark(#7E7E7E,#7E7E7E);whiteSpace=wrap;" value="&lt;b&gt;&lt;font style=&quot;font-size: 12px;&quot;&gt;IPv6 (decentralized by design)&lt;br&gt;&lt;/font&gt;&lt;/b&gt;Egress-only IGW per VPC&lt;br&gt;No managed NAT66" vertex="1">
          <mxGeometry height="60" width="180" x="120" y="417" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-13" parent="1" style="sketch=0;outlineConnect=0;fontColor=light-dark(#7E7E7E,#7E7E7E);gradientColor=none;fillColor=#8C4FFF;strokeColor=none;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;aspect=fixed;shape=mxgraph.aws4.nat_gateway;" value="" vertex="1">
          <mxGeometry height="56" width="56" x="381" y="355" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-14" parent="1" style="text;html=1;align=center;verticalAlign=top;fontSize=11;fontColor=light-dark(#7E7E7E,#7E7E7E);whiteSpace=wrap;" value="&lt;b&gt;&lt;font style=&quot;font-size: 12px;&quot;&gt;IPv4 (choose pattern)&lt;br&gt;&lt;/font&gt;&lt;/b&gt;Decentralized vs centralized&lt;br&gt;by cost, ownership,&lt;br&gt;inspection-point placement" vertex="1">
          <mxGeometry height="70" width="160" x="331" y="417" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-15" parent="1" style="sketch=0;points=[];outlineConnect=0;fontColor=light-dark(#7E7E7E,#7E7E7E);fillColor=#8C4FFF;strokeColor=#ffffff;dashed=0;verticalLabelPosition=bottom;verticalAlign=top;align=center;html=1;fontSize=12;aspect=fixed;shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.vpc_privatelink;" value="" vertex="1">
          <mxGeometry height="56" width="56" x="580" y="355" as="geometry" />
        </mxCell>
        <mxCell id="wdswVsyetmIhFotaYBlL-16" parent="1" style="text;html=1;align=center;verticalAlign=top;fontSize=11;fontColor=light-dark(#7E7E7E,#7E7E7E);whiteSpace=wrap;" value="&lt;b&gt;&lt;font style=&quot;font-size: 12px;&quot;&gt;Reduce volume first&lt;br&gt;&lt;/font&gt;&lt;/b&gt;Gateway + interface VPC endpoints" vertex="1">
          <mxGeometry height="60" width="160" x="528" y="417" as="geometry" />
        </mxCell>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
