Protokoly
Z MiS
Obsah |
Síťový protokol
- Jako protokol se v počítačových sítích označují pravidla, popisující chování objektů při vzájemné komunikaci.
- Umožňují, aby spolu komunikovala zařízení a aplikace rozdílných výrobců — za předpokladu, že všichni výrobci dodrží komunikační protokol.
Rodina protokolů
- Problematické může být předávání dat mezi jednotlivými vrstvami síťové architektury.
- V praxi tedy máme skupiny protokolů jednotlivých vrstev, které jsou navrženy tak, aby mohli komunikovat nejen odesilatel s příjemcem, ale aby správně fungovala komunikace mezi jednotlivými vrstvami.
- Takové skupině protokolů se říká rodina protokolů.
- V dnešních sítích používáme nejčastěji protokoly rodiny protokolů TCP/IP.
Stavové a bezestavové protokoly
- Bezestavový protokol
- Server řeší každý požadavek zcela nezávisle.
- Provedení požadavku je zcela nezávislé na tom, jaké další požadavky byly v minulosti provedeny.
- Ihned po provedení požadavku může server zapomenout veškeré informace o požadavku.
- Příklady: HTTP, DNS,...
- Stavový protokol
- Provedení požadavku závisí na tom, jaké požadavky byly v minulosti provedeny.
- Příklad stavového protokolu — FTP
- U FTP běží po celou dobu připojení k serveru řídící spojení. Samostatné datové spojení se navazují pro přenos jednotlivých souborů.
- Pokud požadujeme provedení operace se soubory příkazy
GET
,PUT
,DELETE
či další, výsledek bude závislý na předchozí komunikaci. - Umístění souboru závisí na tom, ve kterém adresáři se právě nacházíme. To jsme nastavili v předchozí komunikaci požadavky s příkazem
CD
. - Museli jsme se nejprve připojit k serveru a přihlásit (příkaz
open
), jinak není možné provádět požadavek na práci se soubory. - Protokol FTP tedy označujeme jako stavový — skutečný efekt příkazu je závislý na předchozích požadavcích.
- Poznámka — Dnešní webové aplikace často realizují stavové chování — to ale není vlastnost protokolu HTTP!
- Pokud aplikace takové chování vyžaduje, musí prohlížeč a server spolupracovat navíc nad rámec běžného protokolu HTTP.
- (Například využít technologie cookies a PHP SESSION, či využít některý framework, který využití těchto technologií zjednodušuje).
- Aplikace tím de-facto linkovou vrstvu, která v architektuře TCP/IP chybí. Protokol HTTP sám toto chování realizovat neumí.
- Příklady stavového chování
- Zobrazení nákupního košíku v e-shopu závisí na tom, jaké zboží jsme předtím do košíku vložili.
- Zobrazení známek v Bakalářích závisí na tom, jaký žák je přihlášení — každý uvidí v reakci na stejný pokyn jiné známky.
Příklady protokolů rodiny TCP/IP
- HTTP, DNS, protokoly elektronické pošty,...
- TCP a UDP
- IP (verze 4 a verze 6), ICMP
- Ethernet
Viz Protokoly aplikační vrstvy, Protokoly rodiny TCP/IP.