Pokrok nezastavis. Internet predpokladal pouziti spousty ruznych aplikacnich protokolu, ze kterych si uzivatel vybere, ale od doby, kdy se NCSA Mosaic naucil obrazky a vzapeti se na webech objevily komercni reklamy, se to totalne zvrhlo.
V dnestni dobe je internet uz jen monopolem firmy na reklamy, z http se stava cim dal vic linkova vrstva, a o nejakou bezpecnost jde az na konec, navic je cim dal tezsi obsah prenasene komunikace monitorovat a filtrovat mezi uzivatelem a serverem (role fw/gateway).
Uz zavedeni websockets a chunks v podstate oslepilo vsechny bezpecnostni prvky mezi klient/serverem, a vsechny dalsi navrhy (ktere misto W3C vydava i silou prosazuje Google) to jen zhorsuji. Kompilovane "stranky", certifikaty za kazdou cenu (letsencrypt) a DNS v https maji jediny cil - chranit to nejcennejsi na internetu, to je reklamni bussiness Google. Ten je postaveny na personifikovane reklame, a ta na trackovani a profilovani uzivatel. Tato data musi zustat chranena, o zadna jina nejde.
Nebyt toho, kazda organizace, kazdy ISP by mohli nechtene reklamy eliminovat nebo nahrazovat svymi nevyzadanymi, kazdy ISP by snadno mohl "krast" a prodavat personifikovana data sbirana produkty Google o dalsich zlodejicku (ovsem browserem Google, ktery v ruznych variantach drzi 80% trhu). Proto misto budovani a zlepsovani duvery (trust) se akceptuje "bezpecnost" a'la Letsencrypt (to jest in-transit).
Zavadeni modelu predplatneho pro hry a software to dorazil, pro sw firmy je pak mnohem snazsi a jednodussi prejit na web aplikace, protoze tim ziskaji absolutni kontrolu nad pouzivanim software, navic jako bonus i uzivatelska data, tj penize za jejich uchovavani v cloudu a penize za jejich prodej svym "obchodnim partnerum".
V situaci, kdy se k tomuto tlaku pridaly i governmenty jednotlivych statu, a zacinaji si agresivne vynucovat internet jako jediny pripustny komunikacni kanal mezi statem a obcanem, kdy uz nebrani komerci v plosnem sberu dat o pohybu obyvatel (vynuceni elektronickeho jizdneho) uz nam k zavrseni elektronicke totality zbyva jen ten posledni krok - zruseni fyzickych penez.
kazdy ISP by snadno mohl "krast" a prodavat personifikovana data sbirana
To mala byt vyhoda predchadzajuceho stavu?
jako bonus i uzivatelska data, tj penize za jejich uchovavani v cloudu a penize za jejich prodej svym "obchodnim partnerum".
GDPR?
agresivne vynucovat internet jako jediny pripustny komunikacni kanal mezi statem a obcanem, kdy uz nebrani komerci v plosnem sberu dat o pohybu obyvatel
A to by ako malo prebiehat. Akoze mali sme napady od statnych institucii ktore chceli pridat Google analytics do aplikacie ktora obsahovala osobne udaje a spravovala citlive udaje ale to sa zatial nastastie podarilo zastavit.
Finanční úřad, zcela typicky. Víte, osobní kontakt má tu výhodu, že je to jediný technologicky zcela neutrální způsob komunikace dostupný s drobnými omezeními (nic není dokonalé) všem bez toho, aby museli akceptovat další podmínky.
A z GDPR mají největší vítr hlavně malé střední firmy. Představa, že závěsu GDPR a s daty se přestane obchodovat je zhruba totéž, jako zakázat prodej alkoholu a myslet si, že tím alkohol přestane existovat.
> Finanční úřad, zcela typicky
Co financni urad zcela typicky?
> osobní kontakt má tu výhodu, že je to jediný technologicky zcela neutrální způsob komunikace
Osobny kontakt nie je ziadny neutralny sposob komunikacie. Zacinaju sa tam objavovat prvky empatie, antipatie, natlaku, ...
> s daty se přestane obchodovat
Ak sa s vasimi udajmi obchoduje tak tych ludi udajte. Mate pravo ziadat o vymaz, mate pravo po firme ziadat ake udaje o vas uklada, ... ste vo vyhode. A vietor z toho maju aj velke firmy.
AFAIK nemůžete podávat daňové přiznání na libovolném finančním úřadu, ale na tom, ke kterému na základě trvalého bydliště příslušíte. Minimálně v době, kdy jsem ho ještě podával fyzicky, to tak bylo. A mimo své trvalé bydliště dnes bydlí řada lidí, třeba kvůli práci nebo studiu. A tito lidi to na svůj finanční úřad mají klidně přes celou republiku.
Jinak proti zachování neelektronické podoby odevzdání daňového přiznání nic nemám, ale musí to mít nějaké rácio. IMHO to není lidské právo. Pokud to bude využívat dostatek lidí nebo když to bude naprostá menšina, ale pokryje si zvýšené náklady třeba vyšším poplatkem, nemám s tím problém.
Jasně, četl jsem to zde - https://nowotarski.info/http2-continuation-flood/ - autor zřejmě vycházel z nějakého dalšího zdroje
Od začátku považuju HTTP/2.0 za tak komplexní protokol, že v tom bude hromada zranitelností už na úrovni protokolu. A tyto zranitelnosti je třeba hlídat komplexním kódem, který sám může zanášet další zranitelnosti. A vždycky se člověk ptá... proč?
Protože kdysi někomu přišlo, že uměle udělaný limit 2 SSL spojení na doménu zpomaluje přenos dat?
Tohle ale není žádná zranitelnost na úrovni protokolu, úplně ten samý útok můžete udělat i na HTTP/1.1. Jediný rozdíl je v tom, že parsery HTTP/1.1 protokolu už ta omezení mají, protože se na ten problém už narazilo dříve, zatímco některé parsery HTTP/2 protokolu to nemají, protože se holt někdo nepoučil.
Kód, který má řešit komplexnější problém, se obvykle píše v komponentách nebo vrstvách, a tohle je součást jedné vrstvy, která není o nic složitější, než u HTTP/1.1.
HTTP/2 řeší problémy „ze života“, které s pomocí HTTP/1.1 řešitelné nejsou. Když se narazilo na limity HTTP/1.1, nebyl jiný způsob, jak se posunout dál.
Byla spousta způsobů.
Problém jak to vnímám já je, že internet byl (je) rozdělen na tři tábory
- těm co to nevadilo
- těm co to vadilo, ale nic neudělali
- Google
Ne všechno, co vypadne z Google byl dobrý produkt, a tohle řešení, prostě dobré není.
Pro mě takové potvrzení, že to je slepá cesta je existence HTTP/3.0. (která jede na UDP). I to je podle mne trochu slepá cesta, ale v zásadě to háže celý HTTP/2.0 přes palubu. (Nicméně přechod UDP bych raději označil za zcela jiný protokol a nedával tomu HTTP značku).
Způsobů, jak to řešit, byla spousta – a všechny znamenaly opustit HTTP/1.1 a udělat něco podobného, jako je HTTP/2.
Zapomněl jste na čtvrtý velký tábor – ty, kteří to uvítali.
HTTP/3 vychází z HTTP/2. Kdyby HTTP/2 byla slepá cesta, vychází HTTP/3 z HTTP/1.1, ale tak to není. HTTP/3 se především zbavuje TCP/IP, protože už i to se ukázalo jako příliš omezující.
Že je TCP/IP omezující jsem věděl už když se zaváděl Speedy. Ale to je jedno.
HTTP/3 ukazuje, že je třeba úplně jiný protokol
Jinak já si dost pohrávám s web aplikacemi, které potřebují 1x HTML a všechny ostatní resource stahuje websocketem, včetně grafiky
"Zapomněl jste na čtvrtý velký tábor – ty, kteří to uvítali."
Bavíme se o situaci _před_
Pokud jde o situaci _po_, tak moc lidí, kteří z toho skákali radostí jsem nepotkal. Možná ti, co tomu až tak nerozumí, a nacpou stránku hromadou zbytečných malých souborů, nedokážou optimalizovat stránky pro maximální využití cache, atd.
Ostatním je to spíš jedno.
Já beztak všude používám HTTP/1.1, propojení mezi prohlížečem a nginxem je mi vlastně putna. Jediným požadavkem je, aby to bylo bezpečné.
Že je TCP/IP omezující jsem věděl už když se zaváděl Speedy.
Otázka je, zda by to prošlo. Co řečí bylo už jenom kolem toho, že se z textového protokolu přešlo na binární. A kdyby se ještě z TCP/IP přešlo na UDP s vlastním řízením toku…
HTTP/3 ukazuje, že je třeba úplně jiný protokol
Vždyť se tam používá to samé, co je v HTTP/2.
Bavíme se o situaci _před_
Před čím? Kdy byla nějaká situace, kdy byl samostatný tábor Google?
Možná ti, co tomu až tak nerozumí, a nacpou stránku hromadou zbytečných malých souborů, nedokážou optimalizovat stránky pro maximální využití cache, atd.
Hezky jste se popřel v jedné větě. Tak co chcete – optimalizovat pro využití cache, nebo nechcete malé soubory? Ono se to totiž navzájem vylučuje.
Já beztak všude používám HTTP/1.1, propojení mezi prohlížečem a nginxem je mi vlastně putna. Jediným požadavkem je, aby to bylo bezpečné.
Tak do toho nekecejte těm, kteří chtějí i to, aby to bylo rychlé.
ano HTTP/3.0 je HTTP/2.0 nad UDP - odpadá jen to, že se nemusí parsovat framy a že framy chodí celé, a celá ta logika parsování framů je mnohem jednodušší. Zato složitější je pak potvrzovací schéma. Ale to je jedno, já se nechci pouštět do moc odborné diskuze v tomhle vláknu.
Jen pro srovnání ROOT stránka na H2 protokolu nabíhá (s cache) asi 1.2sekundy. IDNES stránka na HTTP/1.1 nabíhá 300ms. Jestli někdo čekal, že HTTP/2.0 nahradí dobře udělanou optimalizaci stránky, tak se asi šeredně spletl. Ne, nenahradí.
Jinak co je třeba si všimnout, tak hromada stránek se stahuje s mnoha domén, často se stahuje jeden nebo dva requesty. Jsou to různé reklamy, pingy, statistiky, těžko říct, proč na téhle stránce vidím 240 requestů a 225kB necachovatelných dat (celé HTML má jen 157kB). Navazování HTTP/2.0 kvůli dvou requestů rozhodně nebude rychlejší, spíš naopak. Keep Alive nad HTTP/1.1 by tady plně dostačoval
Jestli někdo čekal, že HTTP/2.0 nahradí dobře udělanou optimalizaci stránky, tak se asi šeredně spletl. Ne, nenahradí.
To je ale chybné očekávání. HTTP/2 umožní dál optimalizovat i tam, kde jste s HTTP/1.1 narazil na limity protokolu.
Jinak co je třeba si všimnout, tak hromada stránek se stahuje s mnoha domén, často se stahuje jeden nebo dva requesty.
HTTP/2 ale nemělo vyřešit všechny problémy světa. HTTP/2 řeší situaci, kdy se z jedné domény stahuje hromada souborů (což je dobré kvůli využití cache a zmenšení objemu stahovaných dat). Což také hromada stránek dělá.
5. 4. 2024, 20:48 editováno autorem komentáře
Pridal by som este, ze http/2 riesi aj problem live streamingu, ci asynchronicity. Niekde nie je vhodny websocket a pouzival sa preto napr longpoling... to sa uz daaavno, nahradilo SSE a ak ma clovek na stranke par sse streamov, tak http/2 je vpodstate nutny.
PS: ano, vzdy sa to da spravit inak... ale vzdy sa da web robit aj ako cgi skript v asembleri a z nejakeho dovodu sa to nezvykne...
7. 4. 2024, 07:19 editováno autorem komentáře
No hlavní problém je/byl v tom, že možná je HTTP3 dobrý, ale bohužel v podání Googlu (tak ještě před rokem určitě, prakticky od začátku) klasika be evil, nastavení jejich serverů poněkud neodpovídalo specifikaci, což by mě samo o sobě netrápilo, ale potíž byla v tom, že na pomalejší lince přes wifinu se to "ustálilo" na víc burstech dat plnou rychlostí, které se u providera nevešly do paměti některého routeru kde měl shaping (byly to řádově stovky kB), takže efekt byl ten, že začaly vypadávat pakety a cokoli dalšího na klasickém tcp se prostě zasekávalo, takže udp/443 šlo do dropu a vše, včetně onlinovek, začalo být svižné.
> Jinak já si dost pohrávám s web aplikacemi, které potřebují 1x HTML a všechny ostatní resource stahuje websocketem, včetně grafiky
Takže na ostatní si stěžujete, že vyrobili nový protokol (bohužel občas s chybama v implementacích), zatímco vyrábíte nový protokol nad potenciálně zastaralým protokolem. Jenom se zeptám, jestli jste přemýšlel, zda ten protokol nad websocketem nemá taky nějaké díry? ;-)
> Pokud jde o situaci _po_, tak moc lidí, kteří z toho skákali radostí jsem nepotkal.
HTTP/2 byla prakticky nutnost pro microservices, kde lítají klidně tisíce requestů za vteřinu mezi servery. Ty benefity pro běžnou browser-server komunikaci jsou tam nicméně taky. Stránky by se neměly optimalizovat podle technických omezení, ale podle jejich logické struktury, které vede případně i k přímočarému využití cache.