You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+90-3Lines changed: 90 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -632,6 +632,14 @@ From [University of Washington - The Cybersecurity Implications of Chinese Under
632
632
633
633
From [The incredible story of the underwater internet](https://www.techradar.com/news/internet/the-incredible-story-of-the-underwater-internet-1291295)
From [General schematic diagram of a multi-layer space information network](https://www.researchgate.net/figure/General-schematic-diagram-of-a-multi-layer-space-information-network_fig1_356546892)
From [Telecommunications Networks](https://www.pinterest.com/pin/gprs-network-scheme-in-telecommunications-networks--996843698745182256/)
642
+
635
643
</details>
636
644
637
645
### Cloud Computing Era (1990s-2010)
@@ -666,30 +674,110 @@ From [The incredible story of the underwater internet](https://www.techradar.com
666
674
<details>
667
675
<summary><b>AWS EC2/S3 (2006)</b></summary>
668
676
677
+
> `Infrastructure as API`: declare topology (instances, networks, volumes, buckets) and desired counts; the control plane validates and places; the data plane carries packets/IO. This blueprint is echoed across all major clouds.
678
+
669
679
-**Key people**: Andy Jassy (AWS CEO), Werner Vogels (CTO)
670
680
-**Technical innovations**: API-driven infrastructure, pay-per-use model
671
681
-**Architecture**: Multi-tenant infrastructure, virtualization at scale
672
682
-**Impact**: Fundamentally changed IT procurement and operations models
683
+
- Control vs data planes:
684
+
- Control plane (APIs): instance/volume/image lifecycle, placement, health, and inventory; account‑scoped policy and quotas; idempotent create/update with request tokens.
685
+
- Data plane (packet/IO paths): hypervisor isolation + virtual NIC/block devices move bytes; separate from control to keep runtime traffic flowing during control-plane events.
686
+
- Compute isolation and lifecycle:
687
+
- Early EC2 ran Xen (paravirt → HVM); later generations use Nitro (dedicated hardware cards offloading network/storage and minimizing host attack surface) on KVM.
688
+
- CPU/mem isolation via VT‑x/AMD‑V + IOMMU; per‑tenant vNIC/vBlock devices; DMA guarded by IOMMU.
689
+
- Instance states: pending → running → {stopping|stopped} → {shutting‑down|terminated}; API idempotency and eventual consistency on reads.
690
+
- Boot/user‑data: 169.254.169.254 metadata; user‑data passed to cloud‑init for early config.
- EBS (network block storage): attach/detach over network; snapshots are incremental, copy‑on‑write; volume types trade latency vs IOPS throughput.
694
+
- Instance store: ephemeral NVMe/SATA directly on host, very fast but non‑persistent.
695
+
- Networking primitives:
696
+
- EC2‑Classic (initial) then VPC (virtual private clouds) with subnets, route tables, NAT, NACLs; security groups are stateful firewalls at the instance ENI.
697
+
- Elastic IPs, ENIs (multi‑NIC), Placement Groups (latency/bandwidth aware), and later SR‑IOV/ENA for high PPS/low jitter.
698
+
- Elastic primitives (autoscale/load):
699
+
- Auto Scaling Groups (ASG): desired/min/max size; policies based on CloudWatch (CPU, RPS, Q length); launch templates/configs define AMI + instance type.
700
+
- Elastic Load Balancing (ELB/ALB/NLB): spreads traffic across instances/AZs; health checks drive replace/heal loops.
701
+
- S3 object storage model:
702
+
- Buckets (per region) with a flat key namespace; `folders` are prefix conventions.
703
+
- Objects are immutable; writes create new versions if versioning is enabled; range GETs and multipart upload for large objects.
704
+
- Consistency: originally eventual for overwrite/list; later strong read‑after‑write (not in the 2006 launch).
705
+
- Durability/availability: multi‑AZ replication in a region targeting `11 nines` durability; storage classes + lifecycle policies for cost/latency trade‑offs.
706
+
- Access: signed REST/HTTP APIs, pre‑signed URLs, bucket policies/IAM; optional server‑side encryption and KMS integration.
707
+
- Reliability and economics:
708
+
- Regions → Availability Zones (independent power/network); fault domains constrain placement and replication.
709
+
- Pay‑as‑you‑go; later options add Reserved/Spot/ Savings instruments; right‑size and autoscale to cut idle cost.
> Mental model: Provide code + config; the platform provisions sandboxes, scales instances on demand, and wires managed services (Datastore, Memcache, Task Queues) without VM management.
716
+
678
717
-**Technical approach**: Platform-as-a-Service (PaaS) model
679
718
-**Developer experience**: Focus on application code, not infrastructure
- Blobstore (early) for large objects; later Cloud Storage integration. Strong vs eventual consistency trade-offs documented.
734
+
- Logs and metrics surfaced via Admin Console; per-app quotas and budgets to avoid noisy-neighbor and runaway costs.
735
+
- Networking and security:
736
+
- Outbound HTTP(S) via URLFetch proxy; inbound is HTTP(S) via Google frontends with load balancing and SSL termination.
737
+
- App identity/service accounts for calling Google APIs; access control via project IAM as the platform evolved.
738
+
- Developer workflow: Declarative configs + gcloud tooling; zero-manage infra (no servers to patch). Vendor lock-in mitigated over time with portable APIs and later 2nd-gen runtimes.
739
+
- Lasting impact: Popularized autoscale, managed services, traffic-splitting, and minimal ops for web apps—precursors to modern serverless patterns.
740
+
683
741
</details>
684
742
685
743
<details>
686
744
<summary><b>Microsoft Azure (2010)</b></summary>
687
745
746
+
> `Templates as contracts`: ARM/Bicep describe desired state; resource providers validate, place, and reconcile; policy enforces guardrails; identity authenticates every control-plane call.
747
+
688
748
-**Initial focus**: Platform-as-a-Service with .NET integration
689
749
-**Evolution**: Expanded to full IaaS/PaaS/SaaS portfolio
690
750
-**Technical innovations**: Resource Manager model, integrated identity with Azure AD
0 commit comments