Architektura počítačových sítí, OSI model, IP, transportní protokoly (TCP, UDP a další), základní služby počítačových sítí, kvalita služeb.
Základní přehled je v otázce ap7 z bakalářských státnic.
IP adresy ve verzi 4 byly původně rozděleny do několika tříd, viz http://www.vlsm-calc.net/ipclasses.php.
zdroj obrázku: http://www.h3c.com/portal/Products___Solutions/Technology/IPv4___IPv6_Services/Technology_Introduction/200701/195568_57_0.htm
Speciální adresy a rozsahy
Abstraktní model určený jako podklad pro standardizaci norem v oblasti sítí a tvorbu síťových protokolů.
Sestává ze sedmi vrstev, každá má definovánu množinu vlastností a funkcí potřebných pro komunikaci. Každá vrstva využívá služeb své sousední nižší vrstvy a poskytuje své služby sousední vyšší vrstvě.
Mnemotechnická pomůcka k pořadí vrstev: Please Do Not Tell Secret Passwords Anytime.
TCP/IP model odděluje funkce sítě do oddělených vrstev. Každá vrstva, obdobně jako v případě modelu ISO/OSI provádí specifické funkce a je transparentní vrstvám nad a pod ní.
TCP/IP model síťe je jiným pohledem na síťovou komunikaci. Protože model byl navržen za účelem popisu protokolů TCP/IP, je bližší fungování Internetu, který TCP/IP používá.
TCP/IP model se skládá ze 4 vrstev:
Aplikační vrstva poskytuje uživatelům komunikační rozhraní, které může být webový prohlížeč, emailový klient, ftp klient atd.
Aplikační vrstva je vrstva, kde obecně běží jakákoliv aplikace používající síťové sockety (IP adresa + port)
Transportní vrstva poskytuje prostředky pro přenos datových segmentů přes Síťovou (IP) vrstvu, stará se o end-to-end komunikaci. V této vrstvě pracují TCP a UDP protokoly.
Tato vrstva poskytuje nespojovanou komunikaci v rámci jedné nebo více sítí, globální adresovací schéma a balení dat do paketů. Tato vrstva se stará o komunikaci mezi sítěmi, adresaci a routování.
Tato vrstva poskytuje přístup k fyzickému médiu různých kategorií (ethernet, optika, bezdrát, token-ring, ATM, …).
zdroj zde
Pěkný obrázek i s protokoly je z http://bit.kuas.edu.tw/~csshieh/teach/np/tcpip/index.html.
3 way handshake je způsob ustavení TCP spojení. Odehrává se třemi packety. Klient pošle SYN packet požadující spojení na cílovém hostiteli na určitém portu, cílový hostitel odpoví buď SYN-ACK pokud spojení povolní, nebo RST pokud ne. Klient pak pošle ACK zpět serveru.
TCP používá řadu mechanismů pro dosažení co nejlepšího využití pásma a zároveň zamezení zahlcení pásma. Aby nebylo nutné potvrzovat v TCP každý packet, používá TCP tzv. sliding window, okno, kdy je potvrzení odesíláno až po přijetí vždy několika packetů == velikost okna packetů.
Pro rychlé zaplnění dostupného pásma používá TCP tzv. slow start, kdy exponenciálně zvyšuje množství odesílaných packetů u kterých nečeká na potvrzení. Teprve když se mu potvrzení přestanou vracet, zpomalí, a přejde na lineární zvyšování odesílaných packetů.
Různé implementace TCP reagují různě na výpadky packetů. Například TCP Reno má vlastnost Fast recovery, kdy po výpadku packetu nezmenšuje velikost vysílacího okna na 1, ale znovu vyšle packety nepotvrzeného okna a čeká na potvrzení, na 1 se vrátí jen pokud nedostane odpověď.
Obecně s TCP je drobný problém v tom, že bylo navrženo spíše pro pomalejší a chybující sítě. V prostředí vysokorychlostních sítí představují případné ztráty packetů a s tím související zpomalování TCP nežádoucí jev. Proto se objevily návrhy High Speed TCP.
Shrnutí
4 základní algoritmy
Nespojovaná, nezajištěná služba (odpovědnost za packety nese aplikace) 4. vrstvy ISO/OSI, určená pro prostý přenos packetů. De facto je to rozšíření IP protokolu o informaci o portech.
UDP funguje podobně jako TCP ve čtvrté vrstvě OSI, na rozdíl od TCP však negarantuje doručení ani pořadí packetů. Typicky se používá pro služby, kde výpadek jednoho nebo několika packetů nevadí (voip, video on demand), a je rozhodující rychlost přenosu před správností.
Vhodný pro soft real time provoz, postavený nad UDP protokolem, nezaručuje kvalitu přenosu, pouze poskytuje prostředky pro zaručení kvality aplikacím – číslování packetů. Určitá náhrada TCP tam, kde striktní požadavky TCP nejsou potřeba – jsou povoleny výpadky, ale nelze tolerovat příliš velké spoždění. Musí být doplněn konkrétní aplikační vrstvou. Určen pro multicast, lze jej využít i v unicastovém prostředí.
ICMP plní signalizační a diagnostickou funkci. Slouží například k předání informace o nedosažitelnosti sítě, cílového počítače nebo portu.
Pomocí ICMP echo request / reply je implementován příkaz ping. Na manipulaci parametrů Time To Live a naslouchání ICMP odpovědím na takové packety je založen příkaz traceroute.
Podrobnější popis všech typů zpráv zde.
Rozšiřuje požadavky na implementaci protokolu IP (IPv4) o podporu IP multicastu. Využívá se pro dynamické přihlašování a odhlašování ze skupiny u multicastového routeru ve své lokální síti.
Používá se k nalezení fyzické mac MAC adresy podle známé IP adresy. Protokol v případě potřeby vyšle datagram s informací o hledané IP adrese a adresuje ho všem stanicím v síti. Uzel s hledanou adresou reaguje odpovědí s vyplněnou svou MAC adresou. Pokud hledaný uzel není ve stejném segmentu, odpoví svou adresou příslušný směrovač.
Příbuzný protokol RARP (Reverse Address Resolution Protocol) má za úkol najít IP adresu na základě fyzické adresy.
ARP tabulku na počítačích s OS Windows lze zobrazit například pomocí příkazu arp -a. Mezipaměť lze vyprázdnit příkazem arp -d.
DHCP protokol a ARP protokol zachycený v programu WireShark.
Slouží k dynamické konfiguraci základních parametrů sítě, pokud není uzel nakonfigurován staticky. (e.g. mobilní zařízení, která nejsou stálou součástí sítě, nebo pro rozsáhlé sítě, kde není efektivní každý uzel konfigurovat staticky) Skrze DHCP je možné každému uzlu dynamicky přidělit IP adresu, výchozí bránu, nameserver apod.
Vyvolat obnovení adresy přes DHCP protokol na počítačích s OS Windows lze například příkazem ipconfig /renew.
Tato základní služba Internetu slouží pro překlad jmen (například senam.cz) na IP adresu (t. č. 77.75.76.3).
Mezipaměť DNS klienta lze na počítačích s OS Windows zobrazit například příkazem ipconfig /displaydns. Mezipaměť lze smazat příkazem ipconfig /flushdns.
Ruční překlad jmen lze na počítačích s OS Windows zjistit například pomocí příkazu nslookup.
Nativní překlad adres, maškaráda, je způsob úpravy síťového provozu přes router přepisem výchozí a/nebo cílové IP adresy, často i změnu čísla TCP/UDP portu u průchozích IP paketů. K tomu patří i změna kontrolního součtu (u IP i TCP/UDP), aby změny byly brány v úvahu. NAT se většinou používá pro přístup více počítačů z lokální sítě na Internet pod jedinou veřejnou adresou (viz gateway). NAT ovšem může způsobit problémy v komunikaci mezi klienty a snížit rychlost přenosu (wiki).
NAT v podstatě umožňuje přistupovat lokálním sítím (privátním rozsahům) do Internetu a naopak, pomohlo zpomalit rychlost vyčerpávání veřejných IPv4 adres.
Příklady:
Typicky chceme rezervovat/upřednostňovat packety s určitým payloadem, například VoIP před www daty.
Parametry sítě dle nároků aplikací:
Propustnost – objem přenesených dat za jednotku času
Zpoždění (latence) – doba mezi požadavkem a odezvou
Rozptyl (jitter) – kolísání zpoždění
Ideální vs. reálná síť
Transparentní struktura s end-to-end vlastnostmi vs. reálná struktura
Neomezená vs. limitovaná propustnost
Nulové zpoždění vs. zpoždění na aktivních prvcích a při přenosu
Nulový vs. vysoký rozptyl
PA159 - Počítačové sítě a jejich aplikace I
PA160 - Počítačové sítě a jejich aplikace II
PV005 - Služby počítačových sítí
Tomáš Hřebíček, 256479
Interaktivni flashova animace pruchodu dat zkrze sit vcetne 3way handshaku: https://sites.google.com/site/tcpipanimation/