Tato vrstva poskytuje takovou reprezentaci informace, kterou aplikační vrstva používá při komunikaci (reprezentaci dat) či se na ni odvolává (reprezentace datových struktur). Cílem je, aby přenášené zprávy byly pro aplikaci prezentovány jednotným způsobem bez ohledu na svou různorodost, vlastnosti svých zdrojů a spotřebičů.

Dá se říci, že zabezpečuje prezentaci a zabezpečení dat. Je to například šifrování, kontrola integrity, digitální popis. Specifikuje způsob, jakým jsou data formátována, prezentována, transformována a kódována. Řeší například háčky a čárky, CRC, kompresi a dekompresi, šifrování dat. Je to softwarová vrstva.

Obavy z různé interpretace přenášených dat nejsou zdaleka bezdůvodné. Stačí si uvědomit, že např. střediskové počítače firmy IBM používají pro kódování znaků kód EBCDIC, zatímco drtivá většina ostatních používá ke stejnému účelu kód ASCII. Ke znázornění celých čísel se znaménkem používá většina počítačů tzv. dvojkový doplňkový kód, ale např. počítače CDC Cyber pracují s tzv. jedničkovým doplňkovým kódem. Mikroprocesory 80x86 firmy Intel číslují jednotlivé byty (ve slovech, dvojslovech atd.) jedním směrem, zatímco například mikroprocesory řady M68000 firmy Motorola číslují jednotlivé byty přesně opačně. Velmi časté jsou pak také odlišnosti například ve formátu čísel v pohyblivé řádové čárce, odlišné rozsahy zobrazitelných celých čísel (dané počtem k tomu vyhrazených bitů) a podobně.

Mají-li si počítače svá data korektním způsobem vzájemně předávat, musí být vhodným způsobem zajištěny jejich nezbytné konverze. A ty má v referenčním modelu ISO/OSI na starosti právě prezentační vrstva. To je například- stará se o celé číslo bez znaménka s hodnotou 234 bylo přijato opět jako celé číslo se znaménkem s hodnotou -22. Jejím úkolem ale není zabývat se tím, co toto číslo znamená.

Pro zajištění konverzí se nabízí 2 základní možnosti. První z nich představuje vzájemné přímé přizpůsobení stylu "každý s každým", při kterém jsou přenášená data konvertována jen jednou - jsou-li ovšem k dispozici nezbytné konverzní rutiny pro libovolnou dvojici komunikujících uzlů. Ve druhém případě jsou přenášená data konvertována dvakrát: ze tvaru, se kterým pracuje odesilatel, jsou nejprve převedena do společného "mezitvaru", a z něj pak do takového tvaru, s jakým pracuje jejich příjemce. Nevýhoda dvojí konverze je zde kompenzována tím, že pro každou konkrétní reprezentaci dat, se kterou pracuje nějaký počítač, stačí jediná konverzní utilita pro jejich převod z/do společného "mezitvaru". Referenční model ISO/OSI předpokládá právě tuto druhou variantu se společným mezitvarem.

Prezentační vrstvy příjemce a odesilatele se nejprve musí shodnout na tom, jaké datové struktury si vlastně budou předávat, a jakou budou pro ně používat přenosovou syntaxi. Proto se musí obě strany na začátku vzájemného spojení (přesněji: při zahajování relace) nejprve dohodnout na jednom nebo několika tzv. kontextech, jak se v terminologii ISO/OSI modelu nazývá přiřazení přenosové syntaxe k syntaxi abstraktní. V průběhu relace se pak mohou mezi těmi kontexty, na kterých se oba dohodli, dokonce přepínat. V současné době je praktické používání jazyka ASN.1 značně usnadněno existencí překladačů z tohoto jazyka do obvyklých vyšších programovacích jazyků, např. do Pascalu či jazyka C. je vstupem tohoto překladače popis datových struktur v jazyku ASN.1, a výstupem jednak ekvivalentní popis v příslušném cílovém jazyku (tedy např. v C či v Pascalu), který pak lze přilinkovat ke zdrojovému tvaru vlastní aplikace, a dále také kódovací a dekódovací rutiny (určené pro potřeby prezentační vrstvy), které převádí datové struktury z příslušného cílového jazyka přímo do jejich přenosové syntaxe resp. obráceně.

Komentáře (0)Add Comment

Napiš komentář
menší | VĚTŠÍ

security code
Opiš zobrazená písmena


busy