Takže na tvoje přání to vezmu polopaticky znovu, pro ty, co neznají rozdíl mezi UDP a TCP:
Spojení UDP ze stroje A na stroj B (za dvojtečkou je port), např. DNS:
1) A:X -> B:53: Pošli záznam AAAA pro domena.cz
2) B:53 -> A:X: IP adresa je ...
Většinou se posílá několik dotazů na několik serverů a co dojde, to se použije. DNS serveru je úplně šumák, jestli to došlo. Kdyžtak se zeptá znovu...
Spojení TCP na příkladu SSH:
1) A:X -> B:22: Prosím o spojení na A:X
2) B:Y -> A:X: Nabízím komunikaci na portu Y
3) A:X -> B:Y: Ok, můžeme komunikovat
A v téhle chvíli máme obousměrný tunel A:X <> B:Y se zaručeným pořadím dat a zaručeným doručením, pokud není přerušená linka.
No a teď něco k DDoS. Princip je zahlcení linky oběti. Pokud má 10Gbps uplink, pošlu jí 30Gbps a není tam kapacita pro zpracování legitimního provozu. Abych poslal 30Gbps, musím mít zdroj dat s minimálně 30Gbps. To má málo kdo, takže se používá zesílení přes některý služby (NTP, DNS, ICMP,...). Probíhá to takhle (C je oběť):
AC:X->B:Y: Pošli odpověď na ... // A změní svou IP adresu v paketu na IP adresu oběti
B:Y->C:X: Odpověď delší než dotaz
Celkem triviální záležitost a stačí, když ISP nekontroluje odchozí IP adresy, že patří do jeho rozsahu.
A teď si představme, že se někdo rozhodne po UDP přenášet balíčky souborů na jednu UDP žádost:
AC:X->B:443: Pošli stránku ..., do potvrzení smí odejít 10MB
B:Y->C:X: Stream až 10MB
Při žádosti velikosti řekněme 5kB včetně klíčů pro šifrování (který si můžu vymyslet, server mě nezná) a podpisu (to samý, ví jenom IP adresu, ale ne veřejný klíč) získám až 10MB z jednoho stroje.
Když bude mít průměrný server k dispozici 20Mbps na odbavení dotazu a dá těch 10MB (cca 80Mb) na jeden dotaz, mám ten tok na 0,4s a na saturování 10Gbps linky stačí 10G/200M = 500 dotazů.
500x5kB dotaz = 2,5MB. Za sekundu to musím udělat 2.5x. To znamená, že na dotazy z toku 6.25MB/s ~ 50Mb/s takhle vyrobím DDoS 10Gb/s. To se opravdu vyplatí vyhodit úvodní handshake, že...
<ironie>Ještě že 50mbps+ uplink nikdo nemá doma, dokonce ani ti s gigovou FTTH. </ironie>