29. Jak pracuje komunikace v síti

Posílání zpráv v síti není jednoduchým procesem přenášení bitů reprezentujících alfanumerické znaky. Komunikace v síti zahrnuje osobní počítače pod systémem DOS, počítače Macintosh, sálové počítače a minipočítače, z nichž všechny mají své vlastní standardy pro kódování dat a komunikací. Přidejme si k tomu skutečnost, že aplikace na každé platformě mají svoje vlastní standardy pro komunikaci a hned je vidět, že vyslání a přijetí i těch nejjednodušších dat se stává složitým problémem.

Aby se zajistilo, že data se z jednoho uzlu dostanou do dalšího uzlu nebo serveru, kam jsou adresována - a že se tam dostanou neporušena, nezkomolena - je potřeba systém, který je dobře chápán všemi prvky sítě. Jedním takovým systémem je model Open System Interconnection (OSI), na kterém je založeno mnoho sítí osobních počítačů.

Sedmivrstvý model OSI není nějaká zvláštní sestava hardware a software, je to spíše schéma, které lze implementovat různými způsoby. Model je založen na vrstvách: každá součást sítě je určena pro existenci v určité vrstvě systému a přímo může komunikovat pouze s vrstvou bezprostředně nad ní nebo pod ní. Každá vrstva poskytuje služby vrstvě nad sebou a používá služby vrstvy pod sebou.

Komunikace v síti
1. Aplikační vrstva je jedinou částí komunikačního procesu, kterou vidí uživatel: a nejen to, uživatel nevidí většinu práce, kterou aplikační program dělá pro přípravu zprávy k jejímu odeslání přes síť. Vrstva převádí data zprávy z formy čitelné člověkem do bitů a připojuje k ní záhlaví. kde je identifikován vysílací a přijímací počítač.
2. Presentační vrstva zajišťuje, že zpráva bude přenesena v jazyku, který může cílový počítač interpretovat (často je to ASCII). Je-li to zapotřebí, tato vrstva změní jazyk a provede případnou kompresi a zašifrování dat. Přidá další záhlaví, kde je uveden jazyk a schémata pro kompresi a šifrováni.
3. Relační vrstva zahajuje komunikaci a má za úkol udržovat disciplínu při komunikaci mezi všemi uzly v síti. Na začátek a konec zprávy dosadí závorky, které určují, zda se pro odeslání zprávy použije poloviční duplex, kdy každý počítač přepíná vysílání a příjem, nebo plný duplex, kdy oba počítače vysílají a přijímají současně. Detaily tohoto rozhodování jsou umístěny do záhlaví relace.
4. Transportní vrstva chrání odeslaná data. Dělí je do segmentů, vytváří kontrolní součty - matematické součty pořízené z obsahu dat - které mohou být později použity pro určení toho, zda nedošlo ke zkomolení dat. Může také vytvořit záložní kopii dat. Transportní záhlaví identifikuje kontrolní součet každého segmentu a jeho polohu ve zprávě.
5. Síťová vrstva vybírá pro zprávu trasu. Přetváří data do paketů, počítá je a přidává záhlaví obsahující posloupnost paketů a adresu přijímacího počítače.
6. Datová vrstva dohlíží na přenos. Potvrzuje kontrolní součty a pak adresuje a duplikuje pakety. Tato vrstva udržuje kopii každého paketu dokud nedostane potvrzení z vedlejšího uzlu na cestě, že paket v pořádku došel.
7. Fyzická vrstva kóduje pakety na médium, které je bude přenášet - jako je třeba analogový signál, když zpráva prochází telefonním vedením - a pakety po tomto médiu odešle.
Vložený uzel pro každý paket vypočítává a ověřuje kontrolní součet. Může také změnit trasu zprávy, aby se vyhnula vzniklé zácpě v síti.
V přijímacím uzlu se zpracování vrstev, které vedlo k vyslání zprávy na cestu provádí opačně. Fyzická vrstva konvertuje zprávu zpět do bitů. Datová vrstva znovu vypočítá kontrolní součet, potvrdí příjem a nabere pakety. Síťová vrstva přepočítá vstupující pakety z důvodů bezpečnosti a fakturace. Transportní vrstva přepočítá kontrolní součty a sestaví segmenty zprávy. Relační vrstva podrží jednotlivé části zprávy tak dlouho, až je zpráva kompletní a odešle ji další vrstvě. Presentační vrstva dekomprimuje a dešifruje zprávu. Aplikační vrstva převede bity do čitelných znaků a data předá do příslušné aplikace.