Warstwa prezentacji

w semantyce warstw usług architektury sieci OSI warstwa prezentacji reaguje na żądania usług z warstwy aplikacji i wysyła żądania usług do warstwy sesji za pośrednictwem unikalnego punktu dostępu do usługi prezentacji (PSAP).

warstwa prezentacji zapewnia, że informacje, które wysyła warstwa aplikacji jednego systemu, są czytelne dla warstwy aplikacji innego systemu. W systemie wysyłania jest odpowiedzialny za konwersję do standardowych, transmitowalnych formatów. W systemie odbiorczym jest odpowiedzialny za tłumaczenie, formatowanie i dostarczanie informacji do przetwarzania lub wyświetlania. Teoretycznie zwalnia protokoły warstwy aplikacji budzące obawy dotyczące różnic składniowych w reprezentacji danych w systemach użytkowników końcowych. Przykładem usługi prezentacji byłaby konwersja rozszerzonego binarnego kodowanego dziesiętnego kodu interchange (EBCDIC-coded) tekstowego pliku komputerowego do pliku ASCII. W razie potrzeby warstwa prezentacji może być w stanie tłumaczyć między wieloma formatami danych przy użyciu wspólnego formatu.

w wielu powszechnie używanych aplikacjach i protokołach nie ma rozróżnienia między warstwą prezentacji a warstwą aplikacji. Na przykład protokół HTTP (HyperText Transfer Protocol), ogólnie uważany za protokół warstwy aplikacji, ma aspekty warstwy prezentacji, takie jak zdolność do identyfikacji kodowania znaków dla właściwej konwersji, która jest następnie wykonywana w warstwie aplikacji.

warstwa prezentacji jest najniższą warstwą, na której programiści aplikacji rozważają strukturę danych i prezentację, zamiast po prostu wysyłać dane w postaci datagramów lub pakietów między hostami. Ta warstwa zajmuje się kwestiami reprezentacji łańcuchów-niezależnie od tego, czy używają metody Pascal (pole o długości całkowitej, po którym następuje określona ilość bajtów), czy metody C/C++ (łańcuchy zakończone null, np. "thisisastring"). Chodzi o to, że warstwa aplikacji powinna być w stanie wskazać dane, które mają być przenoszone, a warstwa prezentacji przełoży to na polecenia, które mogą być zrozumiałe dla innych aplikacji i procesów.

serializacja złożonych struktur danych do płaskich łańcuchów bajtów (przy użyciu mechanizmów takich jak TLV lub XML) może być uważana za kluczową funkcjonalność warstwy prezentacji. Reprezentacja struktury jest zwykle standaryzowana na tym poziomie, często przy użyciu XML. Oprócz prostych fragmentów danych, takich jak ciągi, bardziej skomplikowane rzeczy są standaryzowane w tej warstwie. Dwa typowe przykłady to „obiekty” w programowaniu obiektowym i dokładny sposób przesyłania strumieniowego wideo.

szyfrowanie i deszyfrowanie są zwykle wykonywane również na tym poziomie, chociaż można to zrobić na warstwach aplikacji, sesji, transportu lub sieci, z których każda ma swoje zalety i wady. Na przykład, podczas logowania do stron z kontami bankowymi warstwa prezentacji odszyfruje dane w trakcie ich odbierania.



+