Newsy z netu

j w Internecie jest podział protokołów z warstwy aplikacyjnej i połączeniowej....Niektóre protokoły z warstwy aplikacji wykorzystują tylko pewne protokoły z warstwy transportowej. Protokoły DNS, NTP wykorzystują tylko protokół UD

Newsy z netu Newsy z netu
Polecam gorąco

Jak dane przepływają w internecie?

Każdy protokół sieciowy można przyporządkować do określonej warstwy modelu TCP/IP. Pewną szczególną cechą rodziny protokołów TCP/IP używanej w Internecie jest podział protokołów z warstwy aplikacyjnej i połączeniowej....Niektóre protokoły z warstwy aplikacji wykorzystują tylko pewne protokoły z warstwy transportowej.

Protokoły DNS, NTP wykorzystują tylko protokół UDP z warstwy transportowej. Protokoły FTP, SMTP, POP3, SSH, IRC posługują się tylko TCP. Natomiast SMB używa obu protokołów.

Protokół SSL ma szczególną rolę. Może zostać umieszczony pomiędzy każdym połączeniowym protokołem warstwy aplikacji a TCP. Dzięki jego wykorzystaniu dane przesyłane przez aplikacje mogą zostać zaszyfrowane.

Niektóre protokoły z warstwy aplikacji, jak np. SMB nie działają zwykle w Internecie. Są wykorzystane w sieciach lokalnych do udostępniania usług, jak np. zdalne drukarki czy dyski.

W systemie Linux oraz innych klonach Uniksa dokładną listę protokołów transportowych można znaleźć w pliku:

/etc/protocols

a listę protokołów z warstwy aplikacji w pliku

/etc/services

W systemach z rodziny Windows NT, odpowiednie pliki znajdują się w katalogu

%WINDIR%\system32\drivers\etc

gdzie %WINDIR% to katalog z systemem, domyślnie C:\WINDOWS.

Od ogólnego modelu TCP/IP są w Internecie wyjątki. Przykładem może być tutaj usługa ping, w której aplikacja wysyła bezpośrednio pakiety ICMP w celu ustalenia jakości połączenia z innym komputerem.

Źródło: https://pl.wikipedia.org/wiki/Model_TCP/IP


CO to jest TCP lub UDP

Protokoły te mają następujące cechy charakterystyczne:

dobrą odtwarzalność po awarii
możliwość dodawania nowych sieci bez przerywania pracy istniejących
wysoki współczynnik korekcji błędów
niezależność od platformy
mały stopień obciążenia danych własnymi strukturami
dużą wydajność

Protokoły TCP i IP łącznie zarządzają przepływem większości danych przez sieć. IP odpowiada za przesyłanie dowolnych danych z punktu do punktu i zawiera w sobie na przykład TCP lub UDP. Zadaniem TCP jest:

uzgadnianie tożsamości (handshake)
zarządzanie pakietami (które mogą docierać do adresata w innej kolejności niż były wysłane)
sterowanie przepływem
wykrywanie i obsługę błędów

Para TCP+IP jest stosowana do tzw. transmisji połączeniowej, gdzie zagwarantowany jest przepływ danych dowolnej długości w obydwie strony, lub zwrotne poinformowanie nadawcy o nieusuwalnym błędzie.

Para protokołów UDP+IP jest najczęściej używanym standardem do tzw. transmisji bezpołączeniowej, czyli przesyłania w jedną stronę, bez potwierdzania odbioru, niewielkich paczek danych zwanych datagramami.

Źródło: https://pl.wikipedia.org/wiki/Model_TCP/IP


niezawodny transfer danych

W warstwie transportowej może istnieć wiele protokołów, które współegzystują w jednej sieci. Ich algorytmy powinny być optymalizowane, aby zapewnić:

niezawodny transfer danych,
dużą przepustowość,
krótki czas reakcji.

Niezawodny transfer danych oznacza zapewnienie, że jeżeli tylko istnieje taka możliwość, każdy komunikat dotrze do odbiorcy. Duża przepustowość określa ilość informacji jaką można przesłać w zadanym czasie. Czas reakcji (ping) musi być jak najmniejszy, co jest niezbędne, aby ograniczyć opóźnienie w komunikacji. W praktyce nie da się pogodzić wszystkich trzech wymogów względem warstwy transportowej. Zwykle poprawa jednego z nich dokonuje się kosztem pozostałych. Aby rozwiązać ten problem w sieciach komputerowych zaprojektowano szereg protokołów warstw transportowych. Projektant tworzący aplikację musi w takiej sytuacji wybrać, który protokół najlepiej sprawdzi się w jego oprogramowaniu oraz sieci.
Niezawodny transfer danych

Niektóre zastosowania, takie jak poczta elektroniczna, przesyłanie wiadomości błyskawicznych, transfer plików, terminale sieciowe, pobieranie stron internetowych i transakcje finansowe wymagają niezawodnego przesyłania danych, czyli bez utraty danych. Utrata danych pliku lub danych transakcji finansowej może mieć przecież fatalne konsekwencje (w drugim przypadku dla banku lub klienta!). Zastosowania tolerujące utratę danych, wśród których najbardziej wyróżniają się media strumieniowe, mogą pozwolić sobie na przepadnięcie określonej ilości danych. W przypadku zastosowań multimedialnych utrata danych może spowodować niewielkie zakłócenia podczas odtwarzania danych obrazu lub dźwięku, które nie wpłyną znacząco na jakość. Wpływ utraty danych na jakość pracy aplikacji i rzeczywista liczba pakietów danych, które mogą przepaść, w dużym stopniu zależy od aplikacji i zastosowanego schematu kodowania.
Przepustowość

Aby efektywnie działać, niektóre aplikacje muszą być w stanie transmitować dane z określoną szybkością. Jeśli na przykład aplikacja telefonii internetowej koduje głos z szybkością 32 kb/s, z taką samą szybkością musi mieć możliwość przesyłania danych w sieci i dostarczania ich do aplikacji odbiorczej. Jeśli wymagana przepustowość nie jest dostępna, aplikacja zależna od przepustowości będzie zmuszona do kodowania z inną szybkością (i uzyskania przepustowości wystarczającej do kontynuowania procesu) lub powinna przerwać operację, ponieważ np. połowa żądanej przepustowości to zdecydowanie za mało dla tego typu aplikacji. Wiele aktualnie istniejących aplikacji multimedialnych jest zależnych od przepustowości. Jednak aplikacje multimedialne, które powstaną w przyszłości, w celu kodowania z szybkością dostosowaną do aktualnie dostępnej przepustowości mogą stosować adaptacyjne metody kodowania. Aplikacje zależne od przepustowości wymagają określonej przepustowości, natomiast aplikacje elastyczne są w stanie skorzystać z takiej przepustowości, jaka w danej chwili będzie dostępna. Przykładami takich aplikacji są programy pocztowe, służące do przesyłania plików i stron internetowych. Oczywiście im większa przepustowość, tym lepiej.
Czas reakcji

Ostatnim z wymagań dotyczących aplikacji jest czas. Aby efektywnie funkcjonować, interaktywne zastosowania czasu rzeczywistego, takie jak telefonia internetowa, wirtualne środowiska, telekonferencje i gry dla wielu osób (np. MMO), żądają dostarczania danych w czasie o niewielkim zakresie tolerancji. Przykładowo, wiele z tych zastosowań wymaga, aby opóźnienia międzywęzłowe miały wartość kilkuset milisekund lub mniejszą. Duże opóźnienia w przypadku telefonii internetowej powodują zwykle nienaturalne przerwy w rozmowie. Znaczne opóźnienie między wykonaną czynnością i uzyskaną odpowiedzią (na przykład od innego gracza znajdującego się na drugim końcu połączenia) występujące w przypadku gier dla wielu osób lub w interaktywnym środowisku wirtualnym sprawiają, że aplikacja wydaje się działać nie do końca w czasie rzeczywistym.

Źródło: https://pl.wikipedia.org/wiki/Model_TCP/IP


Pakiety informacji

Kiedyś dane można było przesłać tylko metodą analogową - na przykład w postaci listu - czyli tekstu zapisanego na kartce. Obecnie dane przesyłane są elektronicznie - w postaci odpowiednio zakodowanych sygnałów elektrycznych.

Jest to bardzo proste i skuteczne rozwiązanie - każdą informację bez względu na to czy jest to tekst, zdjęcie, filmik czy muzyka można zapisać w postaci baaaaardzo długiego ciągu zer i jedynek. A to daje możliwość przesłania takiej informacji na bardzo dużą odległość.

W sieci internet stosowane jest coś takiego jak pakietowanie danych - czyli za jednym razem przesyłany jest ciąg danych o określonej długości - do 1500 Bajtów maksymalnie. Taki ciąg nazywany jest pakietem.