Protokol (informatika)

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

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ě a nebo kombinací obou.

Typické vlastnosti[editovat | editovat zdroj]

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 a nebo spojení

Význam protokolů[editovat | editovat zdroj]

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[editovat | editovat zdroj]

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í[editovat | editovat zdroj]

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[editovat | editovat zdroj]

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. 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ů[editovat | editovat zdroj]

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 (anglicky workaround), které zajistí kompatibilitu s chybně fungujícím zařízením. 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ě). 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 (anglicky plain text), 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[editovat | editovat zdroj]