Protokoły warstwy aplikacji

Za każdym razem, gdy programista tworzy dwie aplikacje komunikujące się przez sieć, musi zastanowić się nad następującymi elementami rozwiązania:
  • Składnia i semantyka wymienianych komunikatów.
  • Czy interakcję inicjuje klient, czy serwer.
  • Działania podejmowane w przypadku wystąpienia błędów
  • Sposób poinformowania obydwu stron o obowiązku zakończenia połączenia.
Definiując szczegóły komunikacji, programista tworzy protokół warstwy aplikacji. Wyróżnia się dwa rodzaje protokołów warstwy aplikacji w zależności od ich przeznaczenia:
  1. Komunikację prywatną. Programista opracowuje dwie aplikacje, które komunikują się za pośrednictwem internetu z założeniem, że powstały system jest przeznaczony do użytku prywatnego. W większości przypadków interakcje między programami nie są szczególnie skomplikowane, dzięki czemu twórcy oprogramowania mogą pisać kod bez formalnej specyfikacji protokołu.
  2. Standardowe usługi. Usługi internetowe są opracowywane w nadziei, że tworzeniem aplikacji udostępniających daną usługę użytkownikom będzie się zajmowało wielu niezależnych programistów. W takich przypadkach protokół warstwy aplikacji musi być udokumentowany i niezależny od implementacji. Dodatkowo specyfikacja musi być dostatecznie przejrzysta i jednoznaczna, aby powstające programy klienckie i serwerowe mogły ze sobą poprawnie współdziałać.
Rozmiar samego dokumentu opisującego protokół zależy od złożoności usługi. Specyfikacje prostych usług zajmują jedną stronę tekstu. Na przykład wśród wielu standardowych usług internetowych znajduje się usługa DAYTIME, która umożliwia klientom pobranie daty i czasu zgodnie z ustawieniami serwera. Protokół komunikacyjny jest w niej wyjątkowo łatwy w implementacji - klient ustanawia połączenie z serwerem, serwer wysyła wartość daty i czasu w formacie ASCII, a następnie kończy połączenie. Odpowiedź serwera może mieć treść:

Sat Sep 9 20 : 18 : 37 2008

Klient pobiera dane aż do napotkania znacznika końca pliku.

Aby umożliwić aplikacjom współdziałanie ze standardowymi aplikacjami, konieczne jest opracowanie standardu protokołu warstwy aplikacji, który jest niezależny od konkretnej implementacji mechanizmu komunikacyjnego.


Źródła i Literatura:
Comer Earl Douglas - "Sieci Komputerowe i intersieci-kompendium wiedzy każdego administratora" Wydanie V, Wydawnictwo Helion 2012, ISBN: 978-83-246-3607-5.
Polish language edition published by HELION S.A. Copyright© 2012
Copyright© 2012 Wydawnictwo HELION S.A
WWW: http:pl/helion.pl (księgarnia internetowa, katalog książek)

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *