Protokol (informatika)

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Protokol je v informatice konvence nebo standard, podle kterého probíhá elektronická komunikace a přenos dat mezi dvěma koncovými body (realizované nejčastěji počítači). V nejjednodušší podobě protokol definuje pravidla řídící syntaxi, sémantiku a synchronizaci vzájemné komunikace. Protokoly mohou být realizovány hardwarově, softwarově anebo kombinací obou.

Typické vlastnosti

Protokoly mohou specifikovat mnoho vlastností, například:

* detekce základního fyzického spojení (kabelové, bezdrátové) nebo existence jiných koncových bodů nebo uzlů * handshake (automatický proces vyjednávání, který dynamicky nastavuje parametry komunikačního kanálu mezi dvěma entitami před začátkem klasické komunikace po kanálu) * vyjednávání o různých parametrech spojení * jak začít a ukončit zprávu * jak formátovat zprávy * co dělat s poškozenými nebo nesprávně naformátovanými daty (oprava chyb) * jak detekovat neočekávanou ztrátu spojení a co provést jako další akci * ukončení relace nebo spojení

Význam protokolů

Přesný popis komunikačního protokolu usnadňuje interoperabilitu různých implementací počítačových programů, které se podílejí na vzájemné komunikaci. Otevřený přístup ke specifikaci protokolu urychluje rozvoj a rozšiřování počítačových technologií do nejrůznějších oborů lidské činnosti.

Síťové protokoly

Hlavním pozitivním příkladem užitečnosti otevřeného přístupu k definici a popisu protokolů je prudký rozvoj Internetu v posledních desetiletích. Internetové protokoly jsou publikovány jako veřejně přístupné RFC dokumenty, které jsou zastřešeny sdružením Internet Engineering Task Force (IETF).

Mezi hlavní protokoly Internetu patří rodina protokolů TCP/IP, do které patří Internet Protocol (IP), Transmission Control Protocol (TCP), User Datagram Protocol (UDP) a další protokoly. Kromě rodiny protokolů TCP/IP jsou na Internetu používány i další (aplikační) protokoly jako například: HTTP, DHCP, FTP, Telnet, SSH, POP3, IMAP, SMTP a další.

Objektové programování

Objektově orientované programování rozšířilo použití protokolů umožňujících spojení a komunikaci mezi objekty.

Vztah k referenčnímu modelu ISO/OSI

Referenční model ISO/OSI je mezinárodní standard, který popisuje vrstvový model komunikace v počítačových sítích. Protokol definuje systém komunikace mezi vzájemně odpovídajícími vrstvami. +more Referenční model ISO/OSI je komplikovanější (a má více vrstev) než model použitý v TCP/IP.

V rámci TCP/IP je například definován IP nebo TCP protokol, v rámci DNS je pak definován protokol pro přenos DNS zpráv, E-mail používá pro přenos mailů protokol SMTP a podobně).

Testování protokolů

Testování protokolů probíhá tak, že se zachytávají informace vyměňované mezi testovaným zařízením a porovnávají se se správně fungující komunikací mezi referenčními zařízeními. Někdy se stává, že fungující komunikace se odchyluje od definice protokolu a tvůrce zařízení pak musí implementovat do komunikačního protokolu výjimky , které zajistí kompatibilitu s chybně fungujícím zařízením. +more Při testování koncových zařízení jsou často záměrně zasílány testovanému zařízení nesprávné zprávy, aby byla otestována schopnost zařízení vyrovnat se s mezními nebo nedefinovanými stavy komunikace.

Pokud zařízení testování vyhoví, může získat certifikaci, která potvrzuje, že způsob komunikace odpovídá definici protokolu (např. logo Wi-Fi, HD ready a podobně). +more V rámci Internetu se však spíše spoléhá na to, že implementace nedodržující RFC budou mít problémy při komunikaci s ostatními a jejich tvůrci budou sami usilovat o nápravu problematické odchylky od definovaného protokolu.

Většina protokolů z rodiny TCP/IP používá z důvodu snadnějšího testování protokol v otevřené podobě, kde si komunikující strany vyměňují zprávy a příkazy v podobě prostého textu , protože takový způsob komunikace může člověk sledovat a porozumět mu i bez speciálních nástrojů.

Související články

TCP/IP

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top