Files
knowledge-base/NETWORKING.md
Stanislav Hubacek 95d1839f05 First batch
2026-06-11 15:27:28 +02:00

558 lines
27 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🌐 SĂ­Ć„ovĂĄ architektura
## Referenční model (TCP/IP)
| Vrstva | Protokoly | Zaƙízení |
|--------|-----------|----------|
| Aplikační | HTTP/HTTPS, DNS, SMTP, SSH | — |
| Transportní | TCP, UDP | — |
| SíƄovå | IP, ICMP, BGP | Routery |
| LinkovĂĄ | Ethernet, ARP, VLAN | Switche |
## TCP detail
### 3-way handshake
```
Client Server
| |
| SYN (seq=x) |
|──────────────────────────────>|
| |
| SYN+ACK (seq=y, ack=x+1) |
|<──────────────────────────────|
| |
| ACK (seq=x+1, ack=y+1) |
|──────────────────────────────>|
| |
| << established >> |
```
- **SYN** — client odeơle segment s pƙíznakem SYN (Synchronize Sequence Number)
- **SYN-ACK** — server odpoví vlastním SYN + potvrzením clientova seq čísla
- **ACK** — client potvrdí, spojení je navázáno
- TCP Fast Open (TFO) — data v SYN paketu pro 0-RTT u opakovanĂœch spojenĂ­
### Flow control (sliding window)
- **Receiver Window (rwnd)** — kolik dat je receiver ochoten pƙijmout
- **Sliding window** — sender udrĆŸuje okno nepotvrzenĂœch paketĆŻ
- Window scaling (RFC 1323) — umoĆŸĆˆuje okno aĆŸ 1 GB (mĂ­sto 64 KB)
- Zero Window — receiver oznámí 0, sender zastaví, persist timer periodicky testuje
### Congestion control
| Algoritmus | Popis | Use case |
|-----------|-------|----------|
| **Cubic** | VĂœchozĂ­ v Linuxu (od kernel 2.6.19), kubickĂĄ growth funkce | ObecnĂ© sĂ­tě, vĂœchozĂ­ pro Internet |
| **BBR** (Bottleneck Bandwidth and RTT) | Model-based, měƙí bandwidth a RTT, ne packet loss | Vysokorychlostní sítě, YouTube, Google |
| **Reno** | Classic AIMD (Additive Increase Multiplicative Decrease) | Legacy, reference |
| **CDG** (CAIA Delay Gradient) | Delay-based, detekce congeste podle RTT gradientu | Videostreaming, real-time |
BBRv2 (2024+) — zahrnuje ECN signalizaci, koexistenci s Cubic, lepơí handling pƙi loss.
## DNS (Domain Name System)
- **Record typy**: A, AAAA, CNAME, MX, TXT, NS, SRV, PTR, CAA, DS, DNSKEY, RRSIG, NSEC
- **DNS resolver**: rekurzivní dotaz pƙes hierarchii (root → TLD → authoritative)
- **Anycast DNS** — stejnĂĄ IP z vĂ­ce lokacĂ­, směrovĂĄnĂ­ k nejbliĆŸĆĄĂ­
- **DNS caching** — TTL ƙízení, cache poisoning ochrana (DNSSEC)
- **Cloud DNS** — Route53, Azure DNS, Cloud DNS
### DNS lookup flow (krok za krokem)
```
1. UĆŸivatel zadĂĄ "api.example.com" do prohlĂ­ĆŸeče
2. OS stub resolver zkontroluje lokĂĄlnĂ­ cache (/etc/hosts, systemd-resolved)
3. Pokud není v cache → dotaz na rekurzivní resolver (ISP / 8.8.8.8 / 1.1.1.1)
4. Resolver zkontroluje svou cache
5. Nenalezeno → resolver začne rekurzivní lookup:
a. Dotaz na root nameserver (.) → vrátí NS pro .com
b. Dotaz na .com TLD nameserver → vrátí NS pro example.com
c. Dotaz na autoritativní NS pro example.com → vrátí A záznam (IP)
6. Resolver uloĆŸĂ­ do cache (TTL), vrĂĄtĂ­ IP clientu
7. Client navĂĄĆŸe TCP spojenĂ­ na zĂ­skanou IP
```
CelĂœ proces typicky trvĂĄ 10–200 ms (s cache < 1 ms).
### DNSSEC detail
- **RRSIG** — digitĂĄlnĂ­ podpis pro kaĆŸdĂœ RRset (Resource Record Set)
- **DNSKEY** — veƙejnĂœ klíč zĂłny (ZSK = Zone Signing Key, KSK = Key Signing Key)
- **DS** (Delegation Signer) — hash DNSKEY pƙedĂĄvanĂœ do parent zĂłny (ƙetěz dĆŻvěry)
- **NSEC / NSEC3** — authenticated denial of existence (dĆŻkaz, ĆŸe zĂĄznam neexistuje)
- **Chain of trust**: root → .com → example.com (cesta od trust anchor pƙes DS recordy)
```
Root DS → .com DNSKEY → .com DS → example.com DNSKEY → example.com RRSIG(A)
```
- Validace: resolver zkontroluje podpisy pƙes celĂœ ƙetěz aĆŸ k trust anchor
### DNS-based service discovery
| Mechanismus | Popis | Pƙíklad |
|------------|-------|---------|
| **SRV record** | Service location (priority, weight, port, target) | `_http._tcp.example.com` |
| **Consul DNS** | Service discovery pƙes DNS rozhraní | `web.service.consul` |
| **CoreDNS** | Kubernetes DNS, plugin-based | `my-svc.my-namespace.svc.cluster.local` |
| **Kubernetes DNS** | Service discovery uvnitƙ clusteru (kube-dns / CoreDNS) | `svc.cluster.local` |
| **mDNS** (Multicast DNS) | Zero-config, lokĂĄlnĂ­ sĂ­Ć„ (Bonjour/Avahi) | `myprinter.local` |
## Load Balancing
| Typ | Vrstva (OSI) | Popis |
|-----|-------------|-------|
| L4 (NLB) | 4 | TCP/UDP, rychlĂœ, niĆŸĆĄĂ­ latence |
| L7 (ALB) | 7 | HTTP/HTTPS, path-based routing, sticky sessions |
| Global | DNS | Geo-routing, latency-based, weighted |
### Algoritmy
- Round Robin / Weighted RR
- Least Connections
- IP Hash (session persistence)
- Random
### Health check typy
| Typ | Popis | Vhodné pro |
|-----|-------|-----------|
| **TCP health check** | TCP handshake na cĂ­lovĂœ port | L4 NLB, zĂĄkladnĂ­ check |
| **HTTP health check** | HTTP GET na URL, očekĂĄvĂĄ 200 OK | L7 ALB, webovĂ© sluĆŸby |
| **HTTPS health check** | HTTP + TLS handshake | SluĆŸby s TLS terminacĂ­ |
| **gRPC health check** | gRPC Health/Check RPC (gRPC specific) | Microservices, gRPC sluĆŸby |
| **ICMP ping** | Ping na cĂ­lovou IP | ZĂĄkladnĂ­ konektivita |
### Connection draining
- **Connection draining** (AWS) / **Deregistration delay** — pƙi odebrĂĄnĂ­ targetu z ASG/LB se počkĂĄ, aĆŸ existujĂ­cĂ­ spojenĂ­ skončí (configurable: 1-3600 s)
- **Slow start** — novĂœ target dostĂĄvĂĄ postupně vĂ­ce requestĆŻ (zabrĂĄnĂ­ pƙetĂ­ĆŸenĂ­ cold cache)
### Cross-zone load balancing
- **Enabled**: LB rovnoměrně rozděluje traffic napƙíč vĆĄemi AZ (i nerovnoměrnĂœ počet instancĂ­)
- **Disabled**: traffic rozdělen rovnoměrně mezi AZ, pak v rámci AZ mezi instance
- AWS ALB/NLB: enabled by default (2022+), bez dalĆĄĂ­ch poplatkĆŻ
## Firewally a bezpečnost
- **Stateful firewall** — sleduje stav spojení (AWS Security Groups, Azure NSG)
- **Stateless firewall** — ACL (Network ACLs)
- **NGFW** — aplikační vrstva, IPS/IDS (Palo Alto, Fortinet)
- **WAF** — ochrana web aplikací (Cloudflare, AWS WAF, Azure WAF)
## Network segmentation — Security Groups vs Network ACLs
| Vlastnost | Security Group (SG) | Network ACL (NACL) |
|-----------|-------------------|-------------------|
| **State** | Stateful (automaticky povoluje return traffic) | Stateless (nutnĂ© explicitnĂ­ pravidlo pro oba směry) |
| **Úroveƈ** | Instance / ENI | Subnet |
| **Pravidla** | PovolujĂ­cĂ­ (allow only) | PovolujĂ­cĂ­ i zakazujĂ­cĂ­ (allow + deny) |
| **VyhodnocenĂ­** | VĆĄechna pravidla se vyhodnotĂ­ (OR) | Pravidla od nejniĆŸĆĄĂ­ho čísla (first match) |
| **Default** | All traffic denied (inbound), all traffic allowed (outbound) | All traffic denied (inbound i outbound) |
| **Podpora** | AWS, GCP (firewall rules), Azure (NSG) | AWS (NACL), GCP (firewall rules na subnet), Azure (NSG) |
### Mikrosegmentace
- **Zero Trust networking** — kaĆŸdĂœ workload mĂĄ vlastnĂ­ security group / NGFW policy
- **Service mesh** — Istio, Linkerd, Consul Connect pro L7 mikrosegmentaci (mTLS, authorization policies)
- **Network policies** — Kubernetes NetworkPolicy pro segmentaci pod-to-pod trafficu
- **Tanzu / NSX** — micro-segmentation na hypervisor Ășrovni
## VPN
- **Site-to-Site** — IPSec, trvalĂ© spojenĂ­ mezi lokalitami
- **Client-to-Site** — OpenVPN, WireGuard, AnyConnect
- **Cloud VPN** — AWS VPN, Azure VPN Gateway, GCP Cloud VPN
## CDN (Content Delivery Network)
- Edge lokace pro cachovåní statického obsahu
- DDoS ochrana
- SSL/TLS termination na edge
- Poskytovatelé: CloudFront, Cloudflare, Akamai, Fastly
## BGP a routing
- **BGP** — protokol pro vĂœměnu rout mezi AS (autonomnĂ­mi systĂ©my)
- **ASN** — unikátní identifikátor sítě
- **iBGP** — interní BGP (uvnitƙ AS)
- **eBGP** — externí BGP (mezi AS)
### BGP path selection algoritmus
BGP router vybĂ­rĂĄ jedinou nejlepĆĄĂ­ cestu podle nĂĄsledujĂ­cĂ­ch kritĂ©riĂ­ (v poƙadĂ­ priority):
1. **WEIGHT** (Cisco-specific) — nejvyơơí weight (local to router)
2. **LOCAL_PREF** — nejvyơơí local preference (v rámci AS)
3. **Originate** — preferuje route originovanou lokálním routerem
4. **AS_PATH** — nejkratơí AS_PATH length
5. **ORIGIN** — IGP < EGP < INCOMPLETE
6. **MED** (Multi-Exit Discriminator) — nejniĆŸĆĄĂ­ MED (pƙi stejnĂ©m AS souseda)
7. **eBGP > iBGP** — preferuje externí BGP pƙed interním
8. **Next-hop reachable** — cesta k next-hop musĂ­ bĂœt dosaĆŸitelnĂĄ
9. **Neighbor IP** — preferuje cestu od routeru s nejniĆŸĆĄĂ­ IP
10. **Router ID** — preferuje cestu s nejniĆŸĆĄĂ­m Router ID
### iBGP full mesh vs Route Reflectors
| Aspekt | Full mesh | Route reflectors |
|--------|-----------|-----------------|
| **Počet session** | n(n-1)/2 | n (kaĆŸdĂœ peer k RR) |
| **Pƙi 100 routerech** | 4 950 session | 100 (pƙi 1 RR) |
| **Ơkålovåní** | Ơpatné (kvadratické) | Lineårní |
| **Redundance** | PƙirozenĂĄ | NutnĂ© multi-RR + cluster |
| **Konfigurace** | JednoduchĂĄ logika | RR pravidel (non-transitive) |
BGP nutné znåt pro: Cloud interconnects, MPLS L3VPN, SD-WAN, Data center fabrics (VXLAN + BGP EVPN)
## Architektura VPC / Virtual Network
```
Internet ──┬── Internet Gateway (IGW)
│
┌──────▌──────┐
│ Public Subnet │
│ ┌──────────┐ │
│ │ ALB/NAT │ │
│ └────┬─────┘ │
└───────┌────────┘
│
┌───────▌────────┐
│ Private Subnet │
│ ┌──────────┐ │
│ │ App │ │
│ └────┬─────┘ │
└───────┌─────────┘
│
┌───────▌─────────┐
│ Data Subnet │
│ ┌────────────┐ │
│ │ Database │ │
│ └────────────┘ │
└──────────────────┘
```
### VPC design patterns
**Three-tier architecture**
- Web tier (public subnets) → ALB
- App tier (private subnets) → auto-scaling
- Data tier (private subnets) → RDS / self-managed DB
- NAT Gateway / Instance v public subnet pro outbound traffic z app/data tier
**VPC Peering**
- PƙímĂ© spojenĂ­ mezi dvěma VPC (same nebo cross-account)
- Transitive peering **není** podporován (A→B, B→C neznamená A→C)
- Pƙípady: sharing resources (LDAP, monitoring), service endpoints
**Transit Gateway**
- Hub-and-spoke topologie, transitive routing
- Podporuje: VPC, VPN, Direct Connect, peering mezi TGW
- Route tables per attachment — izolace environmentƯ
- AWS TGW: 50 Gbps per attachment, aĆŸ 5000 attachments
**PrivateLink / VPC Endpoint**
- PrivĂĄtnĂ­ pƙístup k sluĆŸbĂĄm bez IGW, NAT, VPC peering
- **Interface Endpoint** (ENI v subnet) — pro AWS services, SaaS
- **Gateway Endpoint** (S3, DynamoDB) — route table entry, zdarma
- **AWS PrivateLink** — Service Consumer ↔ NLB/ENI ↔ Service Provider
## MTU, jumbo frames, PMTUD
| SĂ­Ć„ | StandardnĂ­ MTU | Jumbo frames |
|-----|---------------|--------------|
| Ethernet | 1500 B | 9001 B (AWS: 9001, Azure: 1400→9000) |
| GRE tunel | 1476 B | — |
| PPPoE | 1492 B | — |
| VLAN (802.1Q) | 1496 B | — |
| VXLAN | N/A (inner 1500 + 50) | 8950 B |
**PMTUD** (Path MTU Discovery)
- Nastaví DF (Don't Fragment) bit v IP hlavičce
- Pokud cesta vyĆŸaduje fragmentaci → ICMP "Fragmentation Needed" (Type 3, Code 4)
- SniĆŸuje MTU, dokud paket neprojde
- ČastĂœ problĂ©m: ICMP blokovanĂœ firewallem → black hole (TCP connection hangs)
- **Workaround**: MSS clamping (TCP MSS = MTU - 40)
**Jumbo frames use cases**
- NFS / SMB (NAS)
- iSCSI / NVMe-oF (SAN)
- HPC / MPI workloads
- Data replication (DB, DRBD)
- Amazon EFS, AWS Managed Streaming pro Kafka
## Anycast vs Unicast vs Multicast
| Typ | Popis | Pƙíklad |
|-----|-------|---------|
| **Unicast** | 1:1 — jeden source, jeden destination | BÄ›ĆŸnĂœ TCP/IP provoz |
| **Multicast** | 1:N — jeden source, skupina receiverƯ | IPTV, mDNS, VXLAN BUM traffic |
| **Anycast** | 1:1 z nejbliĆŸĆĄĂ­ho — stejnĂĄ IP z vĂ­ce lokacĂ­ | DNS (8.8.8.8, 1.1.1.1), Cloudflare |
| **Broadcast** | 1:VĆ ICHNI — vĆĄechna zaƙízenĂ­ v sĂ­ti | ARP, DHCP (omezeno na L2 broadcast domĂ©nu) |
Anycast detail:
- StejnĂĄ IP prefix je anunciovĂĄna z vĂ­ce lokacĂ­ (BGP)
- Traffic jde k topologicky nejbliĆŸĆĄĂ­mu uzlu (BGP path selection)
- **VĂœhody**: jednoduchĂĄ redundance, DDoS absorpce, niĆŸĆĄĂ­ latence
- **VĂœzvy**: connection persistence (TCP), stateful anycast, routing convergence
- **Cloud**: Route53, CloudFront, Cloudflare, Google DNS
## Cloud networking resilience (2026)
Viz takĂ©: [CLOUD.md](CLOUD.md) — cloud architektura, multi-AZ, hybrid cloud konektivita.
### Cell-based architektury
- Izolace fault domain do "cell" (skupina AZ + services)
- KaĆŸdĂĄ cell samostatně deploysovatelnĂĄ, vlastnĂ­ DB, vlastnĂ­ LB
- Limit blast radius: selhåní jedné cell neovlivní ostatní
- Implementace: AWS Cell-based architecture, Azure STAG (Scale Tier Availability Group)
### DNS resilience
- **Anycast DNS** — stejnĂĄ IP z vĂ­ce regionĆŻ, směrovĂĄnĂ­ k nejbliĆŸĆĄĂ­mu
- **DNS failover** — health checky automaticky odstraƈujĂ­ nedostupnĂ© endpointy
- **Multi-DNS provider** — Route53 + Cloudflare + UltraDNS pro eliminaci SPOF
### Traffic engineering
- **BGP optimization** — AS path prepend, MED, local pref pro ƙízenĂ­ vstupnĂ­ho/vĂœstupnĂ­ho trafficu
- **Global Load Balancing** — GSLB na DNS Ășrovni (latency-based, geo-proximity, weighted)
- **AIOps** — ML-based predikce traffic patternĆŻ a automatickĂ© ĆĄkĂĄlovĂĄnĂ­
### Nové trendy
- **Path Aware Networking** — aplikace si vybírá cestu sítí podle aktuálních podmínek
- **Segment Routing (SR-MPLS / SRv6)** — zjednoduĆĄenĂ­ MPLS, programovatelnĂ© cesty
- **Zero Trust Networking** — mikrosegmentace, identity-based access, never trust / always verify
## RozơíƙenĂĄ tĂ©mata podle knih
### TCP/IP Illustrated (Stevens, ISBN 978-0321336316)
KlíčovĂ© architektonickĂ© principy dle knihy:
- **End-to-End Argument** — korektnost a kompletnost komunikace mĆŻĆŸe bĂœt zajiĆĄtěna pouze na Ășrovni aplikace, nikoliv niĆŸĆĄĂ­ch vrstev. SĂ­Ć„ mĂĄ bĂœt "hloupĂĄ", koncovĂ© stanice "chytrĂ©".
- **Fate Sharing** — veĆĄkerĂœ stav nutnĂœ k udrĆŸenĂ­ aktivnĂ­ komunikace musĂ­ bĂœt uloĆŸen na koncovĂœch bodech (endpoints), nikoliv v sĂ­ti.
- **Layering** — hierarchickĂ© vrstvenĂ­ protokolĆŻ dle OSI modelu; kaĆŸdĂĄ vrstva zapouzdƙuje PDU z vyĆĄĆĄĂ­ vrstvy a pƙidĂĄvĂĄ vlastnĂ­ hlavičku.
- **Multiplexing/Demultiplexing** — protokoly na stejnĂ© vrstvě koexistujĂ­ dĂ­ky identifikĂĄtorĆŻm (IP proto, TCP/UDP port).
- **Sliding window** — efektivnĂ­ vyuĆŸitĂ­ linky pƙi vysokĂ© latenci (window size = bandwidth × RTT).
Kniha pokrĂœvĂĄ celĂœ TCP/IP stack od linkovĂ© vrstvy (Ethernet, ARP, PPP) pƙes IP, ICMP, DHCP, NAT, DNS, UDP, TCP (connection management, timeout, retransmission, congestion control, keepalive) aĆŸ po aplikace (SNMP, Telnet, FTP, SMTP, NFS, HTTP).
### AI Data Center Network Design (Subramaniam, ISBN 978-0-13-543628-8)
KomplexnĂ­, vendor-agnostickĂœ prĆŻvodce nĂĄvrhem sĂ­Ć„ovĂ© infrastruktury pro AI clustery.
**KlíčovĂ© koncepty:**
- **Rail-Optimized Design (ROD)** — propojenĂ­ GPU napƙíč racky po "kolejĂ­ch" (rail), kaĆŸdĂĄ kolej tvoƙí nezĂĄvislou sĂ­Ć„ pro all-reduce komunikaci. Minimalizuje latenci pro synchronnĂ­ training.
- **Rail-Unified Design (RUD)** — sdílená network fabric pro vơechny GPU, flexibilnějơí, ale vyơơí nároky na load balancing.
- **RoCEv2 (RDMA over Converged Ethernet)** — primĂĄrnĂ­ transport pro AI clustery: vyĆŸaduje lossless fabric (ECN, PFC, DCQCN, SFC, CSIG).
- **Load balancing pro AI** — ECMP nestačí, nutnĂ© dynamic/global load balancing (DLB/GLB), flowlet-based rebalancing, per-packet spraying.
- **Topologie** — Clos (3-stage/5-stage), Dragonfly, Torus pro ơkálování na desítky tisíc GPU.
- **Ultra Ethernet Consortium (UEC)** — novĂœ standard pro Ethernet v AI clastrech (2025+), ƙeĆĄĂ­ omezenĂ­ RoCEv2.
- **Storage pro AI** — NVMe-oF, GPUDirect Storage, parallel file systems pro checkpointing a dataset loading.
- **KPIs** — Job Completion Time (JCT), tail latency, fabric utilization, PFC storm detection.
### Cloud Networking and Resilience (Critelli, ISBN 979-8868824357)
PraktickĂœ prĆŻvodce budovĂĄnĂ­m resilientnĂ­ch cloudovĂœch sĂ­tĂ­ (Apress, 2026). Autor je EMEA Lead pro Networking & Resilience v AWS.
**VrstvovĂœ pƙístup k resilienci (podle OSI modelu):**
| Vrstva | Opatƙení |
|--------|----------|
| L1 (Fyzická) | Redundantní pƙípojky, diverse fibre paths, DWDM |
| L2 (LinkovĂĄ) | MLAG, LACP, spanning-tree rychlĂĄ konvergence |
| L3 (SíƄovå) | BGP multi-homing, AS path prepend, Anycast |
| L4 (TransportnĂ­) | Connection draining, slow start, health checky |
| L7 (Aplikační) | DNS failover, global load balancing, cell-based architektury |
**RegulatornĂ­ rĂĄmce:** DORA (Digital Operational Resilience Act), NIS2 — vyĆŸadujĂ­ pravidelnĂ© testovĂĄnĂ­ resiliency, chaos engineering, business continuity plĂĄny.
**AIOps v resilienci:** ML-based predikce traffic patternĆŻ, automatickĂ© ĆĄkĂĄlovĂĄnĂ­, proaktivnĂ­ fault detection (pƙechod od reaktivnĂ­ho monitoringu k prediktivnĂ­ prevenci).
### Zero Trust in Resilient Cloud and Network Architectures (Halley et al., ISBN 978-0-13-820460-0)
Cisco Press — praktickĂĄ pƙíručka pro nasazenĂ­ Zero Trust architektur v hybridnĂ­ch a cloudovĂœch prostƙedĂ­ch.
**Implementační rámec:**
- **User and Device Trust** — ověƙenĂ­ identity uĆŸivatele i zaƙízenĂ­ pƙed udělenĂ­m pƙístupu (SSE — Security Service Edge).
- **Application Access Policies** — granulĂĄrnĂ­ pravidla na Ășrovni aplikace, nikoliv IP adresy.
- **Greenfield vs Brownfield** — novĂ© sĂ­tě stavěnĂ© jako Zero Trust od zĂĄkladu vs. migrace existujĂ­cĂ­ infrastruktury.
- **Automation** — Terraform, Ansible pro provisioning; Meraki, EVPN, Pub/Sub telemetrie.
- **Industrial Zero Trust** — rozơíƙení konceptu do OT/ICS prostƙedí.
- **Quantum security** — pƙíprava na post-quantum kryptografii v sĂ­Ć„ovĂœch architekturĂĄch.
### The Segmentation Blueprint (Kulkarni, ISBN 978-0-13-546236-2)
Cisco Press (2026) — pragmatickĂœ prĆŻvodce segmentacĂ­ sĂ­tě od VLAN po nanosegmentaci.
**Evoluce segmentace:**
| Generace | Technologie | Rozsah |
|----------|-------------|--------|
| TradičnĂ­ | VLAN, ACL, firewall | PodsĂ­Ć„ / subnet |
| Mikrosegmentace | Security Groups, Network Policies | Workload / instance |
| Nanosegmentace | Service mesh (Istio, Linkerd), mTLS | Aplikace / API / proces |
**Maturity model segmentace:**
1. **Initial** — flat network, ĆŸĂĄdnĂĄ segmentace
2. **Basic** — VLANy, firewall mezi environmenty
3. **Defined** — Security Groups, service access policies
4. **Managed** — Mikrosegmentace, Network Policies, EVPN
5. **Optimized** — Nanosegmentace, service mesh, Zero Trust, AI-driven policy management
**KlíčovĂĄ metrika:** Blast radius — kolik workloadĆŻ je ohroĆŸeno pƙi kompromitaci jednoho uzlu. CĂ­lem je redukce na minimum.
### Segment Routing for SP and Enterprise Networks (Deragisch, ISBN 978-0-13-823101-9)
Cisco Press (2024) — ucelenĂœ prĆŻvodce Segment Routingem pro MPLS i IPv6 data plane.
**SR-MPLS vs SRv6:**
| Vlastnost | SR-MPLS | SRv6 |
|-----------|---------|------|
| SID délka | 20 bit (MPLS label) | 128 bit (IPv6 address) |
| Data plane | MPLS | IPv6 + SRH (Segment Routing Header) |
| Signalizace | IGP (IS-IS/OSPF) extensions | IGP + BGP extensions |
| Zrání | Mature, ơiroce nasazeno | Emerging, standardizace dokončena |
| Use case | SP sítě, MPLS migration | Cloud, DC, 5G, end-to-end programovatelnost |
**VĂœhody SR oproti klasickĂ©mu MPLS:**
- Eliminace LDP/RSVP-TE (signaling je součástí IGP)
- Traffic engineering state pƙesunutĂœ z uzlĆŻ do packet headerĆŻ (source routing)
- Fast reroute (FRR) bez dodatečnĂœch protokolĆŻ
- Egress Peer Engineering (EPE) — vĂœběr exit pointu AS
- Mikro-loop avoidance pƙi konvergenci
**MigračnĂ­ strategie:** Greenfield (novĂĄ sĂ­Ć„), Brownfield (postupnĂĄ migrace z MPLS), "SR in a box" — kombinace SR a LDP.
### Understanding and Designing Azure Networking (Stuart, Moreno, 2025)
PraktickĂœ prĆŻvodce nĂĄvrhem Azure sĂ­tĂ­ od dvou Microsoft Solution Engineers (bĂœvalĂ­ CCIE).
**KlíčovĂĄ tĂ©mata:**
| Oblast | KlíčovĂ© sluĆŸby a koncepty |
|--------|--------------------------|
| **Topologie** | Hub-and-spoke, Virtual WAN, multi-hub designs, Azure Route Server |
| **HybridnĂ­ konektivita** | ExpressRoute, VPN Gateway, SD-WAN integrace |
| **Multi-cloud** | Azure ↔ AWS/GCP, cross-cloud fabrics |
| **Bezpečnost** | NSG, Azure Firewall, DDoS Protection, WAF, AVNM, ZTNA |
| **DNS & PaaS** | Private Link, Private DNS Zones, Private Resolver, hybrid DNS forwarding |
| **Application delivery** | Azure Load Balancer, App Gateway, Front Door, Traffic Manager |
| **Monitoring** | Network Watcher, Traffic Analytics, Azure Monitor, Policy-as-code |
**Design decision framework:** SbĂ­rej poĆŸadavky → analyzuj constraints → vyber topologii → implementuj → monitoruj.
### Mastering Next-Gen Juniper Data Centers (Chatterjee, ISBN 978-0-13-533636-6)
Addison-Wesley (2026) — hands-on prƯvodce EVPN VXLAN fabrikami na Juniper zaƙízeních.
**KlíčovĂ© architektury:**
- **EVPN VXLAN fabric** — multi-tenant overlay sítě s BGP EVPN control plane a VXLAN data plane.
- **Multivendor interoperability** — detailní postupy pro EVPN napƙíč Juniper, Cisco NX-OS, Arista EOS.
- **Multicast v EVPN VXLAN** — intra-subnet i inter-subnet multicast design (IGMP/MLD proxying, PIM, EVPN Type-6/7 routes).
- **Day-2 operations** — Juniper Apstra pro automatizaci (Terraform provider), telemetrie (gNMI, OpenConfig).
- **Service chaining** — propojení NGFW, load balancerƯ v rámci fabric.
- **DCI s EVPN** — Over-the-Top (OTT) i Integrated Interconnect (VXLAN stitching, MPLS transit).
**Evoluce od pƙedchozĂ­ knihy (Deploying Juniper Data Centers with EVPN VXLAN, 2024):** RozơíƙenĂ­ o pokročilĂĄ tĂ©mata — multicast, interoperability, Apstra Day-2, observability stack.
### Intelligent Cloud Networking: AI-Driven Resource Management (Yadav, ISBN 9364220110)
PrƯnik AI/ML a cloudového network managementu (Addition Publishing, 2026).
**Aplikace AI v síƄovém managementu:**
| Oblast | Technika | Pƙínos |
|--------|----------|--------|
| **Flow prediction** | LSTM, Transformer | Predikce traffic patternĆŻ, proaktivnĂ­ ĆĄkĂĄlovĂĄnĂ­ |
| **Flow classification** | CNN, RL | Identifikace typĆŻ provozu pro QoS |
| **Load balancing** | DRL (Deep RL) | DynamickĂĄ distribuce zĂĄtÄ›ĆŸe, redukce congestion |
| **Resource management** | Q-learning, DQN | Optimalizace alokace CPU/memory/network |
| **Routing optimization** | DRL, GNN | AdaptivnĂ­ routing podle aktuĂĄlnĂ­ch podmĂ­nek |
| **Congestion control** | ML-based CC | Prediktivní ƙízení congeste (místo reakce na loss) |
| **Anomaly detection** | Autoencoders, Isolation Forest | Detekce ĂștokĆŻ a anomĂĄliĂ­ v reĂĄlnĂ©m čase |
| **Blockchain security** | Smart contracts | DecentralizovanĂ© ƙízenĂ­ pƙístupu, audit trail |
**TechnologickĂ© směry:**
- **Ultra Ethernet Consortium (UEC)** — nová generace Ethernetu pro AI, lossless fabric, telemetrie, adaptive routing.
- **Path Aware Networking** — aplikace si vybírá cestu podle aktuálních podmínek (latence, loss, cena).
- **Self-optimizing networks** — uzavƙenĂĄ smyčka: telemetrie → AI analĂœza → automatickĂĄ akce → zpětnĂĄ vazba.
## Best practices
- **Segmentace sítě** — oddělení environmentƯ (dev/staging/prod), vrstev (web/app/db)
- **Least privilege access** — security groups povolujĂ­ jen nutnĂœ provoz
- **Monitoring** — VPC Flow Logs, netflow, sFlow
- **Redundance** — multi-AZ, multi-region pro kritickĂ© sluĆŸby
- **Encryption in transit** — TLS vơude, mTLS pro service-to-service
- **DDoS protection** — AWS Shield, Azure DDoS Protection, Cloudflare
## Zdroje
Odkazy, knihy a standardy: [sources/networking/sources.md](sources/networking/sources.md)
- **MTU alignment** — konzistentní MTU napƙíč celou cestou, kontrola ICMP blokování pro PMTUD
- **IP planning** — RFC 1918 (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16), vyhnout se pƙekryvƯm pro peering
## TLS detail
### TLS 1.3 handshake (1-RTT)
```
Client Server
| |
| ClientHello (key_share, sig_algs) |
|─────────────────────────────────────────>|
| |
| ServerHello + EncryptedExtensions |
| + Certificate + CertificateVerify |
| + Finished |
|<─────────────────────────────────────────|
| |
| Finished |
|─────────────────────────────────────────>|
| |
| << Application Data >> |
```
- **0-RTT** (early data) — client posĂ­lĂĄ data ihned s prvnĂ­ zprĂĄvou (pƙi opakovanĂ©m spojenĂ­ s PSK)
- Riziko 0-RTT: replay attacks (HTTP GET je bezpečnĂœ, POST vyĆŸaduje ochranu)
- Oproti TLS 1.2: odstraněny zastaralĂ© ciphery, AEAD required, faster handshake (2 RTT → 1 RTT)
### Cipher suites
| Suite | Key exchange | Auth | Encryption | MAC | Status |
|-------|-------------|------|-----------|-----|--------|
| `TLS_AES_128_GCM_SHA256` | (EC)DHE | (EC)DHE | AES-128-GCM | AEAD | TLS 1.3 default |
| `TLS_AES_256_GCM_SHA384` | (EC)DHE | (EC)DHE | AES-256-GCM | AEAD | Vyơơí bezpečnost |
| `TLS_CHACHA20_POLY1305_SHA256` | (EC)DHE | (EC)DHE | ChaCha20-Poly1305 | AEAD | MobilnĂ­ / bez AES-NI |
| `ECDHE-ECDSA-AES128-GCM-SHA256` | ECDHE | ECDSA | AES-128-GCM | AEAD | TLS 1.2 (PFS) |
| `ECDHE-RSA-AES128-GCM-SHA256` | ECDHE | RSA | AES-128-GCM | AEAD | TLS 1.2 (PFS) |
PFS (Perfect Forward Secrecy) — pƙi kompromitaci privĂĄtnĂ­ho klíče nelze deĆĄifrovat dƙíve zachycenĂœ provoz (ECDHE + ephemeral klíče).
### Certificate chain validation
```
1. Client obdrĆŸĂ­ certificate chain od serveru
2. Validace:
a. Datum: certifikĂĄt nenĂ­ expirovanĂœ a je platnĂœ (notBefore, notAfter)
b. CRL / OCSP: certifikĂĄt nenĂ­ revokovĂĄn (OCSP stapling pro snĂ­ĆŸenĂ­ latence)
c. Signature chain: podpis kaĆŸdĂ©ho certu v ƙetězu je ověƙen veƙejnĂœm klíčem vydavatele
d. Root CA: poslednĂ­ cert v ƙetězu je dĆŻvěryhodnĂœ (v trust store klienta)
3. CN / SAN: domĂ©novĂ© jmĂ©no v certifikĂĄtu musĂ­ odpovĂ­dat cĂ­lovĂ© domĂ©ně
```
TypickĂœ ƙetěz: `Leaf Cert → Intermediate CA → Root CA` (self-signed, v trust store).
*PoslednĂ­ revize: 2026-06-03*