Kategoria: Podstawy sieci komputerowych

  • (T) Metody projektowania bezpiecznej sieci

    (T) Metody projektowania bezpiecznej sieci

    Metody projektowania bezpiecznej sieci

    Projektowanie bezpiecznej sieci

    • Projektowanie bezpiecznej sieci jest
      zadaniem bardzo trudnym, ponieważ różnorodność współczesnych zagrożeń zwiększa
      się z każdym dniem. Wymuszając na informatykach posiadanie większej wiedzy
      związanej z metodami ochrony informacji oraz infrastruktury sieciowej. W czym
      pomagają im pozarządowe organizacje, pracujące nad badaniem i rozwojem nowych
      zabezpieczeń. Dzięki wydawanym normą kształtują one standardy znacząco
      zwiększające poziom bezpieczeństwa firm, które się do nich stosują. Jedną z
      najważniejszych organizacji jest Międzynarodowa Organizacja Normalizacyjna ISO (z
      ang. International Organization for Standardization) powstała w 1946 roku w
      Londynie. Publikuje ona normy zawierające między innymi standardy projektowania
      oraz wdrażania bezpiecznych sieci.
    • Pojęcie bezpieczeństwa w odniesieniu
      do informatyki istniało już od wielu dziesięcioleci jednak dopiero
      rozpowszechnienie Internetu uczyniło tą kwestie tak ważną jak jest obecnie. W
      przypadku starych niepołączonych ze sobą systemów, istniało bardzo małe
      prawdopodobieństwo zainfekowania wirusem komputerowym, ponieważ dane były
      przenoszone dyskietkami a każda interakcja ze światem zewnętrznym wymagała
      fizycznego kontaktu. Jednak współczesne sieci LAN i WAN pozwalają hackerom na
      łatwe odnajdywanie i zarażanie nowych ofiar, w czym często pomagają sami
      użytkownicy, zaniedbujący poziom bezpieczeństwa swoich urządzeń, w
      szczególności, jeśli należą one do firmy, w której pracują. Dlatego
      administrator projektujący sieć musi skrupulatnie przeanalizować każdy element
      swojego projektu, nieustanie szukając nowych zagrożeń i luk w zabezpieczeniach.
      Etap projektowania testowania i sprawdzania stanu sieci jest cykliczny i
      powinien być powtarzany przez cały okres istnienia sieci. Ponieważ brak
      skrupulatnego sprawdzania może doprowadzić do włamania się osób niepowołanych,
      a tym samym uszkodzenia sieci lub wycieku cennych danych. Dla ułatwienia pracy
      proces projektowania można podzielić na segmenty, z których każdy zajmuje się
      innym aspektem ułatwiając przygotowanie finalnej konfiguracji oraz
      udostępniającym administratorom odpowiednie środki do późniejszego dbania o jej
      stan. Mierzenie poziomu bezpieczeństwa, przeprowadzenie analizy ryzyka czy
      przygotowanie polityki bezpieczeństwa jest częścią procesu zwanego zarządzaniem
      ryzykiem.

    Zarządzanie ryzykiem

    • Proces zarządzania ryzykiem składa się z etapów
      zajmujących się wykrywaniem, monitorowaniem i analizowaniem zagrożeń oraz
      szukaniem metod im przeciwdziałających. Jest to proces powtarzalny, dlatego po
      pierwszym wdrożeniu należy sukcesywnie sprawdzać jego efektywność,
      systematycznie uaktualniając informacje o obecnym stanie infrastruktury
      firmowej. Przede wszystkim należy pamiętać o prostej zasadzie mówiącej, że dla
      informatyka stanie w miejscu jest równoznaczne z cofaniem się, dlatego tak
      ważne jest okresowe badanie wszystkich elementów zabezpieczeń sieciowych oraz
      systematyczne doszkalanie pracowników pod kontem nowych rozwiązań technicznych
      dotyczących bezpieczeństwa.
    • Zarządzanie składa się z etapów, z których
      najważniejszymi są: analiza ryzyka, dobór metody ochrony czy przygotowanie
      polityki bezpieczeństwa, jako końcowego dokumentu zawierającego wszystkie
      procedury firmy, związane z ochroną sieci przed atakami zewnętrznymi jak i
      wewnętrznymi oraz metodami im przeciwdziałającymi. Analiza zagrożeń jest etapem
      tworzenia spisu wszystkich urządzeń i usług sieciowych wraz z przypisanymi do
      nich zagrożeniami, jakie mogą wpłynąć na ich prawidłową prace. Odpowiada na
      pytania co, gdzie, po co oraz dlaczego ma chronić. Dzięki uzyskanym informacją
      jesteśmy w stanie zdecydować jakie kroki należy podjąć w celu eliminacji
      występujących zagrożeń. Następnie w procesie dobierania metody ochrony, zostaje
      wyłoniony jak najbardziej efektywny a jednocześnie oszczędny sposób
      przeciwdziałania zagrożeniom. Przykładowo jednym z rozwiązań może być zakup
      oprogramowania antywirusowego, jeśli zagrożeniem jest połączenie z Internetem.
      W innym przypadku ochroną przed uszkodzeniem fizycznym, może być zastosowanie
      nadmiarowych połączeń lub dodatkowych urządzeń, dzięki czemu uszkodzenie jednego
      z nich nie spowoduje przerwy w łączności z siecią. Ostatnim elementem procesu
      jest końcowe spisanie polityki bezpieczeństwa jako zbioru zasad, reguł oraz
      wytycznych obowiązujących w firmie, zarówno podczas planowania i wdrażania
      infrastruktury sieciowej jak i dalszego jej funkcjonowania. Po zakończeniu
      pracy oczywiści nie można zapomnieć o systematycznej obserwacji zmieniającego
      się środowiska wewnętrznego oraz zewnętrznego. Bowiem administrator nigdy nie
      może uznać swojej sieci za stuprocentowo bezpieczną, zapominając tym samym o
      systematycznym sprawdzaniu poziomu jej zabezpieczeń.
    Zarządzanie ryzykiem

    Analiza ryzyka

    • Analiza ryzyka jest etapem uświadamiania sobie, jakiego rodzaju zagrożenia i w jakim stopniu, mogą wpłynąć na prawidłowe funkcjonowanie sieci. Do pełnego zrozumienia tej koncepcji, należy zapoznać się z znaczeniem podstawowych pojęć funkcjonujących w normie ISO/IEC 27001:2005. Pierwsze pojęcie aktywów dotyczy wszystkich elementów znajdujących się firmie, posiadających wartość materialną lub strategiczną. Drugie zasobów jako miejsca przeznaczonego do przechowywania aktywów, przykładowo różne systemy informatyczne zainstalowane na serwerze będą aktywami natomiast sam serwer będzie zasobem. Ostatnie pojęcie dotyczy bezpieczeństwa informacji, składającego się z trzech cech: poufności, dzięki czemu informacja znana jest jedynie nadawcy i odbiorcy, integralności sprawdzającej czy wiadomość nie była modyfikowana przez osobę do tego nieuprawnioną oraz dostępności dbającej o kontrolowany dostęp do informacji. Proces analizowania ryzyka składa się z pięciu etapów, z których każdy jest konieczny do osiągnięcia skutecznej ochrony.
    • Pierwszy etap identyfikacji, polega na przeprowadzeniu inwentaryzacji wszystkich zasobów sieciowych firmy oraz ocenie ich znaczenia. Ponieważ bez znajomości urządzeń, jakie posiadamy nie jesteśmy w stanie o nie zadbać. Podczas określania wartości poszczególnych zasobów, należy uwzględnić ich wartość strategiczną, jak i rozważyć wpływ, jaki będzie miała ich utrata na funkcjonowanie całej firmy. Im większy wpływ tym większa wartość zasobu, oceniana przeważnie przez pryzmat wartości materialnej (finansowej). Oczywiście istnieją zasoby takie jak wizerunek czy opinia o firmie, których nie da się prosto przeliczyć na pieniądze, dlatego wartość poszczególnych zasobów można oceniać porównując je między sobą zgodnie z następującymi wartościami:
      • Bardzo duża – Utrata lub uszkodzenie zasobu uniemożliwia funkcjonowanie firmy.
      • Znacząca – Utrata lub uszkodzenie zasobu ma wpływ na funkcjonowanie firmy.
      • Średnia – Utrata lub uszkodzenie zasobu powoduje utrudnienia w normalnym funkcjonowaniu firmy.
      • Pomijalna – Utrata lub uszkodzenie zasobu nie ma wpływ na funkcjonowanie firmy.
    Analiza ryzyka
    • Opisując poszczególne zasoby, należy określić, czy należą one do lokalnej infrastruktury, nad którą sprawujemy kontrole, mając dostęp do pełnej konfiguracji, czy jest to element sieci utrzymywany dzięki współpracy z innymi firmami, na zasadzie outsourcingu jak zewnętrze centra danych lub jako ogólnodostępne serwery poczty czy DNS. Inną ważną informacją mogą być dane o już istniejących zabezpieczeniach, jeśli przeprowadzamy proces analizy w funkcjonującej firmie albo wykonujemy go ponownie po przeprowadzeniu dużych zmian w infrastrukturze.
    • Etap drugi identyfikuje jakiego rodzaju niebezpieczeństwa mogą zagrozić poszczególnym zasobom naszej firmy, dzięki czemu w następnym punkcie będziemy mogli określić poziom zagrożenia dla danego zasobu. Należy wziąć pod uwagę możliwość wystąpienia nadzwyczajnych zagrożeń naturalnych (powodzi, trzęsienia ziemi), czynnika ludzkiego w postaci pracowników firmy lub osób zewnętrznych czy uszkodzeń fizycznych wynikających z długotrwałej eksploracji sprzętu sieciowego. Należy również określić przyczyny powstawania powyższych sytuacji (np. zagrożenia spowodowane przez ludzi mogą wynikać z ataku hackerskiego) jak i szkód, jakie mogą wyrządzić (np. sparaliżowanie usług serwera). Inną ważną informacją jaka powinna się znaleźć w tabeli identyfikującej zagrożenia, jest wpływ na utratę poufności, integralności czy dostępności danych. Przykładowo zgubienie przez administratora pamięci USB może wpłynąć na poufność przechowywanych na niej informacji. Istnieję również przypadki, w których zwiększony poziom dostępności jest osiągany kosztem poufności, na przykład ilość zasobów, na których przechowujemy aktywa firmowe, ma znaczący wpływ na poziom ich bezpieczeństwa. Czym większa liczba oddalonych od siebie lokalizacji przetwarzających dane tym większe zagrożenie utraty poufności, wiążącej się z ryzykiem ujawnienia wrażliwych informacji. Z drugiej strony zwiększenie ilości miejsc przechowujących dane, wpływa na podwyższony poziom ich dostępności. W takiej sytuacji należy podjąć decyzje o tym co jest ważniejsze z punktu widzenia firmy, a tym samym czy warto podjąć ryzyko wynikające z możliwych do wystąpienia zagrożeń. Niezależnie od wielkości sieci, którą opisujemy zawsze można skorzystać z dodatkowej pomocy w postaci przykładowych list zawierających najczęściej występujące zagrożenia przyporządkowane do konkretnych zasobów, dzięki czemu nasza analiza wzbogaci się o opcje które sami mogliśmy pominąć bądź niemieliśmy o nich wiedzy. Przede wszystkim należy pamiętać, aby wszystkie przypisane do zasobów zagrożenia były jak najbardziej realnymi scenariuszami, dzięki czemu uzyskamy aktualne i miarodajne wyniki.
    • Po identyfikacji zasobów (etap pierwszy) i przyporządkowaniu do nich możliwych zagrożeń (etap drugi) należy określić jak realne są to niebezpieczeństwa oraz jakie jest prawdopodobieństwo ich wystąpienia. Przykładowo awaria zasilania jest bardziej prawdopodobna niż sunnami czy trzęsienie ziemi w środkowej Polsce. Dodatkową praktyką stosowaną przez wiele firm jest przeprowadzanie testów prewencyjnych, podczas których następuje symulacja ataku na infrastrukturę IT. Dzięki czemu staje się możliwe wykrycie luk w zabezpieczeniach sieci. Tak samo jak w przypadku identyfikacji zasobów, tak i szacowaniu ryzyka możemy określić prawdopodobieństwo wystąpienia zagrożenia przy pomocy określonych wartości wykorzystywanych w metodzie jakościowej lub zastosować wyliczenia oparte na konkretnych liczbach (związanych z wartością finansową zasobu) przy zastosowaniu metody ilościowej.
    • Poziom szacowania zagrożenia metoda jakościową:
      • Wysoki – Występuje często (np. raz w miesiącu), regularnie.
      • Średni – Występuje rzadko (np. raz w roku), nieregularnie.
      • Niski – Nie wystąpiło w przeciągu roku.
    • Po określeniu, co chcemy chronić, dlaczego chcemy to robić i przed czym to robimy, należy ustalić, jakie są słabe punkty zasobów, przez co stają się podatne na ataki czy inne zagrożenia. Przykładowo w sytuacji, gdy firma łączy się pomiędzy swoimi oddziałami za pomocą sieci publicznej, możemy stwierdzić, że przesyłane przez nią wrażliwe informacje (aktywa) mogą zostać odczytane (zagrożone) przez osobę niepowołaną, dlatego należy dodatkowo zabezpieczyć urządzenia (zasoby) uczestniczące w komunikacji. Pamiętając, że na tym etapie określamy jedynie właściwości zasobów, które mogą zostać wykorzystane podczas ataku a nie metody im zapobiegające.
    • Ostatni etap polega na oszacowaniu istniejącego ryzyka dla poszczególnych aktywów, zasobów względem ich wartości strategicznej, na podstawie przeprowadzonej analizy, przed zastosowaniem środków zabezpieczających. W tym celu tworzymy tabelę opartą o dane zabrane w poprzednich punktach, uzyskując tym samym liczbową wartość istniejącego ryzyka, wystąpienia zagrożenia dla rozpatrywanych aktywów lub zasobów. Dodatkową praktyką ułatwiającą późniejsze wprowadzanych zmian w poziomie zabezpieczeń firmy, jest określenie ryzyka akceptowalnego. Stanowi ono poziom określający w jakich przypadkach należy niezwłocznie zająć się istniejącym zagrożeniem a w jakim interwencja nie jest pilna i może być odroczona w czasie. Przykładowo w poniższej tabeli granicą ryzyka akceptowalnego może być poziom pomiędzy numerem drugim a trzecim.
    Szacowanie ryzyka

    Dobór metod ochrony

    • Po przeprowadzeniu procesu analizy ryzyka, należy wdrożyć metody minimalizujące możliwość wystąpienia określonych zagrożeń. Szczególnie w sytuacji, gdy przekraczają one ustaloną wartość ryzyka akceptowalnego. Istnieją cztery wzajemnie wykluczające się podejścia, do sposobu podejmowania decyzji o ich redukcji. Każde należy rozpatrzyć indywidualne wzglądem poszczególnych aktywów lub zasobów:
      • Redukcja ryzyka – Polega na wdrożeniu środków, mających zredukować ryzyko wystąpienia zagrożenia. Przykładowo po ustaleniu, że serwer może być zagrożony atakiem hackerskim i jest to bardzo prawdopodobne, a jednocześnie posiadanie przez firmę serwera konieczne, należy wprowadzić metody zabezpieczające, niezależnie od ich kosztów. Może być to zakup np. zapory ogniowej zapewniającej ochronę przed atakami czy urządzenia IPS przeznaczonego do analizowania ruchu sieciowego.
      • Akceptacja ryzyka – W przypadku, gdy, cena redukcji zagrożenia jest zbyt wysoka a niebezpieczeństwo wystąpienia niskie, można zaakceptować możliwość jego zajścia bez podejmowania kroków mających wyeliminować możliwość jego wystąpienia.
      • Przekazywania ryzyka – Może przybrać formę ubezpieczenia czy „outsourcing-u”[1], przerzucając ryzyko wystąpienia zagrożenia na inną firmę, przeważnie dysponującą kadrą bardziej wykwalifikowanych i doświadczonych informatyków.
      • Uniknięcie ryzyka – W przypadku istnienia zbyt dużego zagrożenia, względem niskich korzyści wynikających z użytkowania danego aktywu, firma może podjąć decyzje o zaprzestaniu dalszego używania danego elementu infrastruktury, w celu całkowitego wykluczenia możliwość wystąpienia zagrożenia.

    Polityka bezpieczeństwa

    • Po wybraniu metod przeciwdziałających
      zagrożeniom, poprzedzonych analizą ryzyka, następuje etap spisania polityki
      bezpieczeństwa. Zbioru zasad, reguł i wytycznych, którymi administrator kieruje
      się przy tworzeniu i rozbudowie sieci. Jego treść będzie pomocna zarówno przy
      konfiguracji i wdrażaniu całej infrastruktury, jak i przez cały czas
      funkcjonowania firmy. Dlatego musi zawierać informacje o zasadach przetwarzania i
      dostępu do danych, codziennych zachowań pracowników pod względem bezpieczeństwa
      oraz procesu przyznawania
      dostępu do zasobów i ochrony przed wyciekiem informacji. Istnieje powiedzenie
      „Człowiek najsłabszym elementem bezpieczeństwa IT”, dlatego należy pamiętać, że
      zbyt rozbudowane środki ostrożności, szczególnie opisane technicznym językiem,
      mogą spowolnić pracę lub wręcz zniechęcić pracowników do ich stosowania.
      Konieczne jest więc, ich uświadamianie poprzez kursy instruktażowe mające na
      celu wyjaśnienie zasad oraz przyczyn istnienia takiej polityki, dobrym
      rozwiązaniem są testy bezpieczeństwa sprawdzające reakcje pracowników na
      nietypowe prośby działu administracji np. z zapytaniem o podanie hasła i loginu
      w celach weryfikacji danych, czego oczywiście nigdy nie powinni robić.

    Pozostałe tematy związane z bezpieczeństwem

    Podstawy sieci komputerowych

    Warstwy modelu OSI

    Bezpieczeństwo sieci

    Troubleshooting


    [1] Outsourcing – Stanowi część struktury organizacyjnej wydzielonej z firmy i przekazanej do wykonania oraz nadzorowania innym podmiotom.

  • (T) Pojęcie bezpieczeństwa

    (T) Pojęcie bezpieczeństwa

    Bezpieczeństwo

    Bezpieczeństwo jest terminem interdyscyplinarnym, badanym i opisywanym przez wiele dziedzin nauki. Należą do nich historia, psychologia, socjologia, nauki prawne, politologia oraz wiele innych. Różnorodność dziedzin, zajmujących się tym zagadnieniem, pokazuje jak złożony i bogaty w definicje jest to termin. W podstawowym znaczeniu etymologicznym z języka łacińskiego, słowo bezpieczeństwo „securitas” składa się z dwóch członów: „sine” (bez) i „cura” (zmartwienie, strach, obawa), rozpatrując bezpieczeństwo, jako stan braku zmartwień, strachu i obaw. Natomiast słownik nauk społecznych UNESCO, autorstwa Daniela Lernera rozpatruje opisywane pojęcie następująco „W najbardziej dosłownym znaczeniu bezpieczeństwo jest właściwie identyczne z pewnością (safety) i oznacza brak zagrożenia (danger) fizycznego albo ochronę przed nim”. Należy zwrócić tu uwagę na nierozłączny element występujący w parze z rozpatrywanym pojęciem, a jest nim niebezpieczeństwo, będące przyczyną występowania stanu zagrożenia. Przed którym chcąc się chronić, dążąc do stanu własnego bezpieczeństwa. Jest to pragnienie zakorzenione w naszej psychice, dlatego jego spełnienie zapewnia nam dużo lepsze samopoczucie, umożliwiając prawidłowe funkcjonowanie w otaczającym nas świecie. Zaspokojenie obaw, co do naszego losu jest jednym z najważniejszych zadań, jakie stawia przed nami życie, dlatego tak ważne abyśmy umieli o nie zadbać. Szczególnie w czasach współczesnych, dynamika zmieniającego się świata wymaga od ludzi szybkiego dostosowania się do panujących zasad i unikania nowych zagrożeń. Dodatkowo rozwój technologii na zawsze zmienił pojęcie bezpieczeństwa dodając do niego wiele nowych zagadnień. Zagrożone obecnie jest nie tylko nasze zdrowie czy życie, ale również dane osobowe, poufne informacje czy pieniądze zmagazynowane w postaci zer i jedynek w każdym zakątku naszego globu. Informacja stała się na tyle znaczącą „walutą”, że wielkie mocarstwa zamiast walki o surowce, coraz częściej zwracają się w stronę informatyków, mogących wykraść dane o technologii przeciwnika baz narażania się na poniesienie straty własnych.

    Pozostałe tematy związane z bezpieczeństwem

    Podstawy sieci komputerowych

    Warstwy modelu OSI

    Bezpieczeństwo sieci

    Troubleshooting

  • (T) Warstwa czwarta modelu OSI**

    (T) Warstwa czwarta modelu OSI**

    Wstęp do warstwy czwartej modelu OSI

    Wstęp do warstwy czwartej modelu OSI

    • Warstwa czwarta nadzorując proces nawiązywania połączenia pomiędzy urządzeniami sieciowymi oraz podział na segmenty, dzięki czemu dane większe od dopuszczalnego rozmiaru jednego segmentu, są dzielone na części, indeksowane a następnie wysyłane do stacji odbiorczej, która przeprowadza odwrotny proces od powyżej opisanego.
    • Do transmisji danych warstwa Transportowa wykorzystuje dwa protokoły:
      • TCP (Transmission Control Protocol) wymusza na odbiorcy wiadomości wysłanie potwierdzenia odebrania danych, ponadto nawiązują oni pomiędzy sobą sesje, a każdy zagubiony w sieci segment zostanie ponownie retransmitowany. Zaletą widoczną dla użytkowników jest gwarancja dotarcia całej transmisji na miejsce przeznaczenia, co jest szczególnie ważne w przypadku przesyłu ważnych plików czy stron internetowych.
      • UDP (User Datagram Protocol) nie wymaga potwierdzenia otrzymana danych przez odbiorcę tym samym nie gwarantując, że dane dotrą na miejsce. Jego zaletą jest szybki czas przesyłu danych poprzez sieć, dzięki czemu nadaje się do transmisji rozmów VoIP czy telekonferencji.

    Protokoły warstwy czwartej

    TCP – Transmission Control Protocol

    Protokół TCP (Transmission Control Protocol) – Został opisany w dokumencie RFC 793.
    Budowa nagłówka protokołu TCP

    Budowa nagłówka protokołu TCP

    • Source Port (16 bitów) – Numer portu źródłowego połączenia TCP.
    • Destination Port (16 bitów) – Numer portu docelowego połączenia TCP.
    • Sequence Number (32 bity) – Numer pakietu, umożliwiający złożenie danych po dostarczeniu ich do urządzenia końcowego, w odpowiedniej kolejności. Problem związany z dostarczaniem pakietów niezgodnie z kolejnością z jaką były wysyłane, nazywa się (Out-of-order Delivery). Ponadto numer sekwencyjny potwierdza odbiór danych zapowiedzianych w poprzednim pakiecie TCP, przez pole (Acknowledgment Number). Początkowa transmisja TCP może być rozpoczęta od dowolnej liczby z zakresu od 0 do 4,294,967,295 (Podczas rozwiązywania problemów związanych z protokołem TCP wykorzystywana jest numeracja od liczby 0).
    • Acknowledgment Number (32 bity) – Numer (Sequence Number) określający następny pakiet sesji TCP.
    • Offset (4 bity) – Określa liczbę bitów 32 bitowych wierszy w nagłówku pakietu TCP.
    • Reserved (3 bity) – obecnie nie używane pole.
    • TCP Flags (9 bity) – Wartości dziewięciu jedno bitowych flag kontrolnych, wraz z określeniem która z nich jest aktywna w danym pakiecie TCP (Poszczególne flagi są następujące NS, CWR, ECE, URG, ACK, PSH, RST, SYN, FIN).
    • Window (16 bitów) – Ilość bitów jaką nadawca wyśle, zanim będzie oczekiwał na potwierdzenie odbioru danych, ACK (W przypadku funkcji TCP Sliding Window, ramka TCP zawiera również ilość przesyłanych segmentów).
    • Checksum (16 bitów) – Pole sumy kontrolnej, służącej do wykrywania błędów występujących w danym segmencie TCP.
    • Urgent Pointer (16 bitów) – Określa liczbę bitów pomiędzy obecnym numerem sekwencji, a ostatnim ważnym bajtem.
    • TCP Options (od 0 do 32 bitów) – Zawiera dane o sesji TCP.

    Cechy protokołu TCP

    • Reliable Transport – Zapewnia przesył danych wolnych od błędów.
    • Connection-Oriented – Przed rozpoczęciem przesyłu danych, protokół TCP wymaga nawiązania sesji (Przy pomocy metody 3-way handshake).
    • Flow Control – Umożliwia regulację przepustowości połączenia (Za pomocą wiadomości Stop oraz Go).
    • Windowing – Aby wiadomość potwierdzająca otrzymanie pakietu (ACK), nie musiała być wysyłana po otrzymaniu każdego nowego pakietu, protokół TCP operuje na zasadzie okien (Window) które określają ilość pakietów jaka ma być przesłana zanim serwer będzie wymagał potwierdzenia odbioru.
    • Acknowledgements – Potwierdza otrzymanie pakietów, umożliwiając ponowne przesłanie tych które nie dotarły.
    • More overhead – Protokół TCP znacząco zwiększa wielkość nagłówka pakietu.

    Pojęcia związane z protokołem TCP

    • Three-Way Handshake – Opisuje wstępny proces nawiązywania sesji TCP pomiędzy urządzeniami sieciowymi.
    • Właściwa wymiana danych za pomocą protokołu TCP, pomiędzy hostami nie jest możliwa bez ukończenia pełnego procesu Three-Way Handshake. A wygląda on następująco:
      • Faza pierwsza: Inicjator sesji wysyła wiadomość synchronizacyjną (SYN) do odbiorcy.
      • Faza druga: Odbiorca potwierdza otrzymanie wiadomości synchronizacyjnej SYN inicjatora, wysyłając wiadomość potwierdzającą (ACK) oraz własną wiadomość synchronizacyjną SYN.
      • Faza trzecia: Inicjator po otrzymaniu wiadomości synchronizacyjnej SYN, wysyła wiadomość potwierdzającą ACK.
    TCP (Three-Way Handshake)
    • TCP Sliding Window – Przesyłanie danych z wykorzystaniem protokołu TCP, jest realizowane przy pomocy tak zwanych okien (Window). Zawierających jeden bądź więcej segmentów protokołu TCP, po przesłaniu których odbiorca musi potwierdzić odebranie danych za pomocą komunikatu ACK (Acknowledged). Proces TCP Sliding Window rozpoczyna się od przesłania jednego segmentu TCP w jednym oknie, a następnie wzrasta do maksymalnej dopuszczalnej ilości segmentów jaką może obsłużyć określona sieć. Ilość ta zależy między innymi od przepustowość łącza. W sytuacji przekroczenia możliwości lokalnej sieci część segmentów może nie dotrzeć przed upływem czasu RTT (Round-trip time) zwanego inaczej real transfer time, a tym samym odbiorca nie potwierdzi otrzymania wszystkich danych za pomocą wiadomości ACK. Sytuacja ta zmusza nadawcę do przywrócenia poprzedniej potwierdzonej ilości segmentów, jaka może zostać użyta w obrębie jednego okna (Dane których odbiór został potwierdzony nie zostaną retransmitowane).
      • Jednym z efektów ubocznych procesu „TCP Sliding Window”, widocznych z punktu widzenia użytkownika, jest zmienny przewidywany czas przesłania danych, który może być niestabilny ulegając ciągłym zmianą.
      • W niektórych przypadkach proces „TCP Sliding Window” może doprowadzić do powstania tak-zwanego głodu sesji TCP (TCP Starvation). Szczególnie narażone są w tym przypadku sieci obarczone dużym ruchem UDP, przy jednoczesnym braku wsparcia ze strony protokołu QoS.
    TCP Sliding Window
    • TCP Window Scaling – Umożliwia przenoszenie 32-bitowej wartości, w 16-bitowym nagłówku protokołu TCP. Jest to funkcja przygotowana do wsparcia sieci LFN (Long Fat Networks), charakteryzującej się wysoką szerokością pasma oraz wysokimi opóźnieniami, co zawdzięcza zwiększonej szerokości okna TCP Sliding Window (Maksymalna wielkość okna (TCP Windows size) jaka może być obsłużona na urządzeniach Cisco wynosi: 1 073 741 823 bajtów).
    • Wartość MSS (Maximum Segment Size) – Określa maksymalną wielkość przesyłanego segmentu TCP, liczonego bez nagłówka, a tym samym wskazuje jak duży pakiet może być przesłany przez sieć bez dodatkowej fragmentacji (Wartość MSS określa dane użyteczne, związku z tym musi być mniejsza do wartości MTU, która oprócz danych użytecznych zawiera wszystkie nagłówki warstwy 4, 3 oraz 2).
    • TCP slow start – Podczas transmisji z wykorzystaniem protokołu TCP, może zdarzyć się sytuacja, w której po stracie pewnej liczby segmentów, nastąpi tak zwany powolny start. Zmniejsza on ilość segmentów nadanych w jednym oknie TCP do jednego, a następnie wykładniczo zwiększa tę liczbę do momentu uzyskania połowy wielkości okna, które wywołało przeciążenie. Po osiągnięciu tego etapu, liczba segmentów w jednym oknie będzie rosnąć liniowo.
      • Sytuacja ta może mieć miejsce w przypadku przepełnienia kolejki (Queue) interfejsu sieciowego, kiedy to może dojść do jednoczesnego porzucanie pakietów wielu niezależnych sesji TCP, a tym samym rozpoczęcia procesu powolnego startu każdej z nich. Zjawisko to znane jest jako globalna synchronizacja (Global Synchronization) tudzież synchronizacja TCP (TCP Synchronization), natomiast sam proces losowego porzucania pakietów nazywany jest (Tail drop).
      • Aby zapobiec powstaniu zjawiska powolnego startu Cisco IOS wykorzystuje technologię zwaną WRED (Weighted Random Early Detection), która to pseudolosowo porzuca pakiety należące do różnych sesji TCP, bazują przy wyborze na istniejących zasadach QoS. Rozwiązanie te opróżnia kolejkę wyjściową rutera zapobiegając globalnej synchronizacji.
      • Porównanie Tail Drop vs WRED:
        • Mechanizm Tail Drop losowo porzuca nadmiarowe pakiety, zapobiegając powstawaniu zatorów (Congestion Avoidance), jednocześnie narażając sieć na powstanie zjawiska globalnej synchronizacji.
        • Mechanizm WRED zapobiega zjawisku globalnej synchronizacji.
    • Out-of-order Delivery – W przypadku zastosowania np. funkcjonalności równomiernego obciążenia, istnieje możliwość, że niektóre segmenty TCP dotrą do odbiorcy w innej kolejności niż zostały wysłane. Aby sytuacja ta nie miała negatywnego skutku na funkcjonowanie sieci, protokół TCP został wyposażony w funkcję automatycznego uporządkowywania nadchodzących segmentów zgodnie z numerem sekwencyjnym.
    • TCP Selective Acknowledgment (SACK) – Domyślnie w przypadku utraty jednego z segmentów TCP podczas transportu, odbiorca zamiast potwierdzenia ACK w postaci zapytania o kolejny segment, prześle zapytanie (ACK) dotyczące jednego z zagubionych segmentów. Jako że zapytanie może dotyczyć jedynie jednego segmentu, nadawca nie ma pewności ile z nich tak naprawdę zostało utraconych podczas transportu, związku z tym wyśle zagubiony segment wraz z wszystkimi następującymi po nim (Z puli poprzednio przesłanych segmentów). W przypadku użycia rozwiązania SACK, odbiorca po wykryciu utraty segmentu wyśle zapytanie ACK dotyczące utraconego segmentu wraz z wiadomościami SACK zawierającymi informację o następujących po zagubionym segmencie, segmentach które zostały dostarczone.
      • TCP Time Stamp – Zwiększa jakość pomiarów [1]czasu „TCP Round-trip time” [ip tcp timestamp].
      • TCP Explicit Congestion Notification – Umożliwia ruterowi poinformowanie urządzeń końcowych o nastąpieniu zmian sieciowych (Congestion), zmniejszając ilość zgubionych segmentów [ip tcp ecn].
      • TCP Keepalive Timer – Wykrywa martwe sesje TCP, wysyłając zapytanie TCP keepalive.
    • Bandwidth Delay Product (BDP) – Określa ilość danych, jakie mogą być przesyłane poprzez sieć. Jest to najważniejsza koncepcja stosowana w protokole TCP, ponieważ przepustowość łącza jest ograniczona między innymi przez zjawisko BDP. Przykładowym problemem jest zwiększony czas oczekiwania na otrzymanie potwierdzenia ACK, występujący w przypadku dużego opóźnienia. Rozwiązaniem nie-mniejszego problemu może być zwiększenie wielkości okna (Window) co umożliwi przesłanie większej ilości danych pomiędzy poszczególnymi potwierdzeniami ACK.
    • TCP Latency – Opóźnienie powstałe podczas przesyłu danych, zachodzące pomiędzy urządzeniami sieciowymi.
    • Round-trip time (RTT) / Round-trip delay time (RTD) – Czas przesyłu danych do odbiorcy wraz czasem otrzymania potwierdzenia ACK przez nadawcę (Wartość ta jest utożsamiana z opóźnieniem i jest wyświetlana przez komendę ping).
    • Protokół TCP realizuje funkcje end-to-end dla protokołu IP warstwy trzeciej modelu OSI.
    • Rodzaje komunikatów TCP: ACK, URG, PSH, RST, SYN, FIN oraz NAK.
    • Proces Four-way seque – Kończy sesję TCP w czterech następujących krokach:
      • Host A wysyła pakiety TCP-ACK, FIN informując o chęci zamknięcia sesji TCP.
      • Host B odsyła pakiety TCP-ACK potwierdzając otrzymanie komunikatu.
      • Host A wysyła pakiety kończące sesje TCP-ACK, FIN.
      • Host B potwierdza otrzymanie komunikatu pakietem TCP-ACK.
    • Explicit Congestion Notification (ECN) – Rozszerzenie protokołu IP oraz protokołu TCP, zdefiniowane przez referencję RFC 3168. Wprowadza mechanizm informujący obydwie strony połączenia o przeciążeniu sieci (Network Congestion), tym samym unikając porzucania pakietów (Aby rozwiązanie to zadziałało poprawnie, musi być wspierane przez urządzenia końcowe jak i infrastrukturę sieciową).
    • Selective Acknowledgment – W przypadku uzyskania ograniczonych informacji na temat zagubionych podczas przesyłu danych pakietów, zawartych w zbiorczym potwierdzeniu ACK (Cumulative Acknowledgments). Agresywny nadawca może przedwcześnie wysłać więcej pakietów, niż w rzeczywistości brakowało odbiorcy. Aby zapobiec takiemu zjawisku, funkcja Selective Acknowledgment, umożliwia odbiorcy nadanie dodatkowych selektywnych wiadomości ACK, mogących powierdzić pakiety odebrane poza kolejnością. Dzięki czemu odbiorca ponowi próbę przesłania jedynie brakujących pakietów.
      • Domyślnie w przypadku utraty pakietu 4 oraz 7 z 8 wysłanych, odbiorca TCP odeśle informację o odebraniu jedynie 1, 2 oraz 3 pakietu. Związku z czym nadawca ponowi próbę przesłania pakietów od 4 do 8. Funkcja Selective Acknowledgment sprawi że odbiorca dodatkowo poinformuje o wszystkich otrzymanych pakietach (1, 2, 3, 5, 6, 8) a tym samym nadawca odeśle jedynie te brakujące.
      • Funkcja Selective Acknowledgment jest kompatybilna z:
        • Explicit Congestion Notification, Time Stamp oraz Keepalive.
    • Time Stamp – Zapewnia ulepszony pomiar czasu TCP (Round-Trip).
    • Keepalive Timer – Mechanizm umożliwiający wykrycie martwego połączenia TCP.

    Konfiguracja protokołu TCP

    (config)# ip tcp window-size 68-1073741823

    Określa wielkość okna TCP (TCP Window Scaling).

    (config)# ip tcp ecn

    Aktywuje funkcję „TCP Explicit Congestion Notification”.

    (config)# ip tcp timestamp

    Aktywuje funkcję „TCP Time Stamp”.

    (config)# ip tcp mss 500-1460(536)

    (config)# ip tcp selective-ack

    Aktywuje funkcję SACK (Selective Acknowledgment).

    (config)# interface interfejs

    Przechodzi do poziomu konfiguracji określonego interfejsu sieciowego.

    (config-if)# ip tcp adjust-mss 500-1460(536)

    UDP – User Datagram Protocol

    Protokół UDP – Został opisany w dokumencie RFC 793.
    Budowa nagłówka protokołu UDP
    • Connectionless – Protokół UDP nie nawiązuje sesji pomiędzy urządzeniami, nie dając tym samym gwarancji dostarczenia danych do odbiorcy, ale zapewniając większą wydajność transmisji.

    Pojęcia związane z protokołem UDP

    • Starvation (TCP-Starvation / UDP-Dominance) – W przypadku łączenia ruchu TCP z ruchem UDP, w jednej klasie QoS. Ruch UDP może zawładnąć całym możliwym do wykorzystania pasmem, Tym samym blokując sesje TCP. Funkcja WRED nie jest w tym przypadku pomocna ponieważ nie wpływa ona na protokół UDP a jedynie protokół TCP, najlepszym rozwiązaniem tego problemu jest rozdzielenie ruchu TCP od UDP w kwasji polis QoS.
    • UDP Latency – Opóźnienie powstałe podczas przesyłu danych. Może być zniwelowane wielkością buforów.

    Pojęcia dotyczące warstwy czwartej

    Pojęcia dotyczące warstwy czwartej

    • Multiplexing using ports (UDP/TCP) – Multiplikacja umożliwia rozdzielenie wielu transmisji TCP nadchodzących do jednego urządzenie docelowego. Dzięki wykorzystaniu portów poszczególne segmenty trafiają do odpowiednich programów (np. port 80 definiuje stronę WWW) oraz do np. odpowiedniej strony w przeglądarce. Multiplikacja wykorzystuje Socket zawierający następujące dane:
      • Adres IP.
      • Protokół warstwy czwartej.
      • Numer portu.
    • Error recovery (TCP) – W przypadku nieotrzymania przez klienta jednego lub większej liczby pakietów, wysyła on wiadomość ACK zawierającą numery sekwencyjne pakietów które nie zostały mu dostarczone.
    • Ordered data transfer and data segmentation (TCP) – Dzięki metodzie oznaczania poszczególnych pakietów numerami sekwencyjnymi. Dane przychodzące niezgodnie z kolejnością, mogą być uporządkowane po stronie klienta.
    • Connection-oriented protocol (TCP) – TCP wymaga nawiązania wstępnej sesji pomiędzy urządzeniami.
    • Connectionless protocol (UDP) – UDP nie wymaga nawiązania wstępnej sesji pomiędzy urządzeniami.
    • URI (Uniform Resource Identifier) (RFC 7595) – Zgodnie z założeniami konsorcjum W3C oraz grupy IETF, URI jest domyślą formą używaną przez adresy WWW.
    • URL (Uniform Resource Locator) – Stanowi starszą formę URI.

    Zalecenia warstwy czwartej

    • Poleca się mieszać ruch sieciowy TCP z ruchem UDP, szczególnie w przypadku streamingu wideo. Łączenie te może jednak doprowadzić do głodu sesji TCP zwanego inaczej (TCP-Starvation / UDP-Dominance), którego objawem jest zmniejszenie przepustowości (Lower Throghput) jak i zwiększenie opóźnień sesji (Latency) TCP względem połączeń UDP (Opisane łączenie ruchu sieciowego dotyczy wspólnych polis protokołu QoS).

    Porty warstwy czwartej

    • Well-Known Ports (0 1023) – Pula portów zarezerwowanych dla dobrze znanych protokołów.
    • Registered Ports (102449151) – Pula portów, z których mogą korzystać wszelkie aplikację oraz protokoły.
    • Dynamic or Private Ports (4915265535) – Pula portów dynamicznie przypisywanych podczas korzystania z np. przeglądarki Internetowej jako porty źródłowe Hostów.
    Skrót Nazwa Port L4 RFC / INNE
    DNS Domain Name Service 53 UDP / TCP
    SNMP Simple Network Management Protocol    
    GREGeneric Routing Encapsulation47IP
    NTPNetwork Time Protocol123UDP
    DHCP Dynamic Host Configuration Protocol    
    RIP Router Information Protocol    
    TFTP Trivial File Transport Protocol    
    FTP data / control File Transport Protocol 20 / 21  
    SSH Secure Shell 22  
    Telnet Telnet 23  
    HTTP Hypertext Transfer Protocol 80 / 8080  
    OSPF Open Shortest Patch First    
    EIGRP Enhanced Interior Gateway Routing Protocol    
    BGP Border Gateway Protocol    
    HTTPS (SSL) Hypertext Transfer Protocol Secure 443  
    SNMP Trap Inform Simple Network Management Protocol 162 UDP
    SNMP Get Response Simple Network Management Protocol 161 UDP
    HSRP (IPv4) Hot Standby Router Protocol 1985 UDP
    HSRP (IPv6) Hot Standby Router Protocol 2029 UDP
    VRRP Virtual Router Redundancy Protocol 112 IP
    GLBP Gateway Load Balancing Protocol 3222 UDP

    Porty warstwy czwartej

    Pozostałe tematy związane z modelem OSI/ISO, TCP/IP

    Podstawy sieci komputerowych

    Warstwy modelu OSI

    Bezpieczeństwo sieci

    Troubleshooting

  • (T) Warstwa trzecia modelu OSI**

    (T) Warstwa trzecia modelu OSI**

    Wstęp do warstwy trzeciej modelu OSI

    Wstęp do warstwy trzeciej modelu OSI

    • Warstwa trzecia nie posiada żadnych wbudowanych mechanizmów korekcji błędów, powierzając to zadanie warstwie czwartej, oraz nie gwarantuje osiągalności, przez co pakiety uszkodzone lub niemogące osiągnąć celu są porzucane.
    • Protokół IPv4 opiera swoje działanie na dwóch zasadach: pierwsza niegwarantowanego połączenia (best-effort) oznacza, że pomimo starań wysłane pakiety mogą nie dotrzeć do miejsca docelowego, przekazując obowiązek zweryfikowania, czy wiadomość dotarła protokołom warstw wyższych. Druga zasada bezpołączeniowego transferu datagramów (connectioness) nie wymaga wcześniejszej negocjacji pomiędzy węzłami sieci (ruterami), przez co poszczególne pakiety interpretowane są osobno nie mając na siebie wpływu. Takie działanie może powodować duplikowanie, zniekształcanie oraz zamianę kolejności nadchodzących datagramów.

    Protokoły warstwy trzeciej

    Protokół ARP

    • Protokół ARP (Address Resolution Protocol) stanowi mechanizm odwzorowania adresów logicznych IP na 48 bitowe adresy fizyczne MAC. Jest to istotny element komunikacji pomiędzy urządzeniami, ponieważ karty sieciowe nie rozumieją adresów IP, pozostawiając ich interpretację w gestii oprogramowania. Inaczej jest z adresami MAC zapisanymi na stałe w pamięci karty, to dzięki nim komputer wie które ramki kierowane są do niego a które należy odrzucić. Host wysyłając pierwszą wiadomość do innego urządzenia zna jedynie jego adres IP oraz swój własny MAC, dlatego przesyła powyższe dane na adres broadcast FF:FF:FF:FF:FF:FF. Tym samym wszystkie urządzenia w obrębie domeny rozgłoszeniowej otrzymają tą wiadomość, dzięki czemu host z odpowiednim adresem IP, będzie mógł odesłać wiadomość ARP wzbogaconą o swój adres MAC.
    • Poszczególne urządzenia uczestniczące w komunikacji takie jak przełączniki, rutery czy hosty zapisują zdobytą wiedzę o adresacji MAC, w pamięci cache na ustalony okres czasu. Ważne jest, aby nie był on zbyt długi, ponieważ adresy IP mogą ulegać zmianie, ani zbyt krótki co znacznie zwiększyłoby niepotrzebny ruch w sieci. Proces ten jest aktywowany automatycznie bez interwencji administratora. W miarę potrzeby dostosowując się do zmiennej sytuacji. Dzięki czemu przepięcie urządzenia do innego portu w przełączniku zostanie szybko wykryte, a odpowiedni wpis w tablicy MAC urządzenia skorygowany.

    Protokół IPv4

    Budowa nagłówka protokołu IPv4
    • Version (4 Bity) – Identyfikuje wykorzystany protokół warstwy trzeciej. Względem protokołu IPv4 wartość ta wynosi (0100).
    • Header Length (4 Bity) – Określa długość nagłówka protokołu IPv4.
    • Type of Service or DiffServ (DSCP) (4 Bity) – Pole przeznaczone do określania priorytetu przesyłanej zawartości.
    • Explicit Congestion Notification – Dodatkowe pole wykorzystywane przez niektóre rutery.
    • Total Length (16 Bitów) – Określa długość całego pakietu z ramką i danymi (Maksymalna wielkość wynosi 65535).
    • Identifier (16 Bitów) – Pole wykorzystywane przy fragmentacji pakietów przekraczających wartość MTU.
    • Flags (3 Bity) – Składa się z trzech bitów: pierwszy bit jest nie używany, drugi określa flagę DF (Don’t Fragment) a trzeci flagę MF (More Fragments) wykorzystywaną w przypadku przesyłania pofragmentowanych danych.
    • Time to Live (8 Bitów) – Określa czas życia przesyłanego pakietu IPv4, tym samym zapobiegając powstawaniu pętli.
    • Protocol (8 Bitów) – Określa jaki protokół jest transportowany przez dany pakiet.
    Protocol Number Host-To-Host Layer Protocol Protocol Number Host-To-Host Layer Protocol
    1 Internet Control Message Protocol (ICMP) 46 Resource Reservation Protocol (RSVP)
    2 Internet Group Management Protocol (IGMP) 47 Generic Routing Encapsulation (GRE)
    4 IP in IP (Encapsulation) 54 NBMA Next Hop Resolution Protocol (NHRP)
    6 Transmission Control Protocol (TCP) 88 Cisco Internet Gateway Routing Protocol(IGMP)
    17 User Datagram Protocol (UDP) 89 Open Shortest Path First (OSPF)
    45 Inter-Domain Routing Protocol (IDRP)    

    Dobrze znane wartości protokołów w polu „Protocol” nagłówka IPv4

    • Header Checksum (16 Bitów) – Zawiera wartość kontrolną generowaną na podstawie zawartości nagłówka IPv4.
    • Source Address – Określa źródłowy adres IPv4.
    • Destination Address – Określa docelowy adres IPv4.
    • Options / Padding – Zawiera dodatkowe opcje protokołu IPv4.

    Protokół IPv6

    Budowa nagłówka protokołu IPv6
    • Version
    • Priority
    • Flow Label* – (* Pole Flow Label nie posiada swojego odpowiednika w nagłówku protokołu IPv4).
    • Payload Length
    • Next Header
    • Hop Limits
    • Source Address
    • Destination Address

    Protokół ICMP

    Budowa nagłówka protokołu ICMP
    • Protokół ICMP (Internet Control Message Protocol) – Jest wykorzystywany między innymi do testowania łączności pomiędzy urządzeniami sieciowymi, przy wykorzystaniu programów oraz protokołów takich jak Ping czy IP SLA. Dzięki wykorzystaniu wiadomości „ICMP Echo Request” oraz „ICMP Echo Reply” umożliwia wymianę prostych komunikatów pomiędzy ruterem a hostem informując drugie urządzenie o np. braku możliwości osiągnięcia sieci docelowej.
    • Budowa nagłówka protokołu ICMP:
      • Type – (1 bit) Wskazuje rodzaj komunikatów ICMP, przykładowo 0 określa widomość „Echo Reply, 3 Destination Unreachable, 5Redirect a typ 8 Echo Request.
      • Code – (1 bit) Wskazuje bardziej szczegółowe dane komunikatu ICMP, przykładowo dla typu trzeciego „Destination Unreachable” istnieje 16 różnych kodów takich jak „destination network is unreachable” czy „destination host is unreachable”.
      • Checksum – (2 bity) Zawiera pole sumy kontrolnej, służącej do wykrywania błędów przy przesyłaniu komunikatów.
      • Rest of Header – (4 bity) Zawiera zawartość zależną od rodzaju komunikatu ICMP.
    • End-to-end delivery
    • Opis przykładowych komunikatów ICMP:
      • Destination Unreachable – Jest wysyłany przez ruter, który nie zna ścieżki prowadzącej do celu.
      • Redirect – Umożliwia ruterom informowanie hostów, że wykorzystywany przez nie adres IP bramy domyślnej nie jest najlepszym adresem i wymaga zmiany.

    Pozostałe tematy związane z modelem OSI/ISO, TCP/IP

    Podstawy sieci komputerowych

    Warstwy modelu OSI

    Bezpieczeństwo sieci

    Troubleshooting

  • (T) Warstwa druga modelu OSI**

    (T) Warstwa druga modelu OSI**

    Wstęp do warstwy drugiej modelu OSI

    Wstęp do warstwy drugiej modelu OSI

    • Najpopularniejszym protokołem warstwy Łącza Danych jest stworzony przez firmę DIX Standard 802.3 zwany Ethernetem II. Wykorzystuje on mechanizm testowania zajętości wspólnego nośnika danych CSMA/CD (Carrier Sense Multiple Access / with Collision Detection) w celu przeciwdziałaniu powstającym w sieci kolizją. Mechanizm ten nasłuchuje czy medium transmisji jest wolne a następnie rozpoczyna transmisje danych. Ze względu na skończoną prędkość rozchodzenia się sygnału w przewodzie i czas transmisji mogło dojść do sytuacji, w której dwa hosty nadały komunikat w tym samym czasie, przez co doszło do kolizji. W takiej sytuacji obydwie stacje odczekają pewien interwał czasowy po czym wznowią transmisje. W przypadku wystąpienia kolejnej kolizji interwał oczekiwania zostanie wydłużony podwójnie, do próby szesnastej, kiedy to wiadomość zostanie porzucona.
    • Ethernet w swojej pierwszej formie obsługiwał prędkość transmisji danych na poziomie 10 Mb/s, co z czasem okazało się to niewystarczające, zmuszając inżynierów do stworzenia nowej wersji 100 mega-bitowego Ethernet-u zwanego szybkim Ethernet-em (Fast Ethernet). Niestety rosnąca prędkość negatywnie odbiła się na wydajności protokołu wielodostęp-owego CSMA/CD, co z czasem doprowadziło do popularyzacji przełączników sieciowych (Switches). Nowe urządzenia zlikwidowały domeny kolizji zastępując je domenami rozgłoszeni-owymi. Zmieniły również sposób przesyłu danych, w którym host mógł jedynie odbierać albo nadawać transmisje w tym samym czasie (Half Duplex) na rozwiązanie, w którym urządzenia jednocześnie prowadzą nasłuch jak i transmisje danych (Full Duplex). Innym powszechnie używanym standardem warstwy Łącza Danych jest bezprzewodowa sieć lokalna WLAN (Wireless LAN) znana pod nazwą „bezprzewodowego Ethernetu” lub Wi-Fi z oznaczeniem 802.11. Dzięki „pokrewieństwu” z swoim kablowym odpowiednikiem, Wi-Fi odziedziczyła większość mechanizmów Ethernetu.
    Nazwa standardu Opis standardu
    802.3 Podstawowa wersja Ethernetu 10 Mb/s.
    802.3u Wersja Ethernetu z zwiększoną przepustowością do 100 Mb/s, zwana Fast Ethernet.
    802.3z Wersja Ethernetu z zwiększoną przepustowością do 1000 Mb/s, zwana Gigabit Ethernet.
    802.3ae Wersja Ethernetu z zwiększoną przepustowością do 10 000 Mb/s, zwana Ten-Gigabit Ethernet.
    802.3ba Wersja Ethernetu z zwiększoną przepustowością do 10 000 Mb/s bądź 100 000 Mb/s , zwana One hundred-Gigabit Ethernet.
    802.11e Adaptacja jakości serwisu QoS w standardzie 802.11.

    Standardy Ethernet-u

    Ramka Ethernet

    Standardowa ramka Ethernet-owa

    Standardowa ramka Ethernet-owa
    • Preambuła (Preamble) – Ciąg bitów tworzący łatwo rozpoznawalny wzorzec naprzemiennych zer i jedynek o długości 7 bajtów. Pomaga wykryć zbliżające się do interfejsu ramki oraz określić przerwy czasowe w nadawaniu sygnału.
    • Start Frame Delimiter (SFD) – Rozpoczyna ramkę Ethernet-ową oddzielając ją od preambuły następującym ciągiem bitów 10101011.
    • Docelowy oraz źródłowy adres MAC (Destination, Source) – Zawiera docelowy DST oraz źródłowy SRC 48-bitowy adres MAC nazywany adresem „Łącza Danych”, „adresem sprzętowym” bądź „fizycznym”.
    • Typ (Type) – Określa dane stanowiące użyteczną część pakietu, identyfikując np. protokół IP wartością 0x0800 czy protokół ARP wartością 0x0806. Pierwotnym zastosowaniem tego pola było zdefiniowanie maksymalnego rozmiaru ramki, co wprowadzić może pewną dwuznaczność w rozumieniu jej wartości. Na szczęście dopuszczalna maksymalna wielkość ramki zgodnie ze standardem 802.3 wynosi 1518 bajtów dzięki temu wiemy, że wartość większa od tej liczby nie oznacza długości ramki a jej typ.
    • Frame Check Sequence (FCS) – Trzydziestodwubitowa suma kontrola, zapisana w postaci cyklicznego kodu nadmiaru CRC (Cyclic Redundancy Check). Zapewnia integralność danych podczas transmisji, dzięki czemu utrata bądź zmiana pojedynczego bitu prowadzi do zmiany wartości kodu CRC wyliczonego przez odbiorcę, oznaczając daną ramkę jako wadliwą, i nie przydatną do dalszej retransmisji, funkcja ta nazywa się Error Detection (Należy przy tym pamiętać, że nie jest to funkcja Error Recovery, która potrafi poinformować nadawcę o potrzebie retransmisji danej ramki).
    • LLC (Logical Link Control) – Umożliwia wymianę danych pomiędzy warstwami wyższymi a niższymi.

    Ramka 802.1Q

    Porównanie standardowej ramki Ethernet-owej do ramki 802.1Q

    Adres MAC (Media Access Control)

    • Adres MAC jest przeważnie nazywany:
      • Adresem fizycznym (Physical Address).
      • Adresem przypisanym (Burned-in Address).
    • Adres MAC składa się z 48 bitów podzielonych na dwie części:
      • OUI (Organizationally unique identifier) (24 bity) – Część adresu przypisana do producenta karty sieciowej.
      • Druga 24bitowa część adresu MAC stanowi unikalny identyfikator urządzenia danego producenta.

    Pozostałe tematy związane z modelem OSI/ISO, TCP/IP

    Podstawy sieci komputerowych

    Warstwy modelu OSI

    Bezpieczeństwo sieci

    Troubleshooting

  • (T) Warstwa pierwsza modelu OSI**

    (T) Warstwa pierwsza modelu OSI**

    Funkcje warstwy pierwszej modelu OSI

    Budowa Warstwy pierwszej

    • Komponenty fizyczne – Uwzględniają wszelkie elektryczne urządzenia niezbędne do nadawania oraz odbierania sygnałów.
    • Kodowanie:
      • Jest formą konwersji strumienia danych w wyjściowy kod, składający się z grupy odpowiednio ułożonych bitów.
      • Zawiera dodatkowy kod identyfikujący początek oraz koniec nadchodzącej wiadomości.
      • Metody kodowania zawierają: Kod Manchaster reprezentujący wartość bitową 1 wysokim poziomem napięcia oraz 0 niskim, oraz zasadę „Non-return to zero” która dopuszcza jedynie dwie wartości „jeden” oraz „zero” nie uwzględniając tym samym stanów przejściowych. 
    • Sposoby nadawania sygnałów:
      • FM (Frequency Modulation) – Metoda transmisji, w której częstotliwość nośna zmienia się zgodnie z sygnałem.
      • AM (Amplitude Modulation) – Technika transmisji, w której amplituda nośnika zmienia się zgodnie z sygnałem.
      • PCM (Pulse-Coded Modulation) – Technika, w której sygnał analogowy, taki jak głos, jest przekształcany w sygnał cyfrowy poprzez próbkowanie amplitudy sygnału, a następnie wyrażanie różnych amplitud w postaci liczby binarnej.

    Ważne pojęcia

    • Goodput – Rzeczywista użyteczna ilość przesyłanych danych, w określonym okresie czasu.
    • Pasmo (Bandwidth) – Ilość danych jaka może być przepuszczana przez połączenie, w określonym okresie czasu.
    • Przepustowość (Throughput) – Rzeczywista szerokość pasma (Bandwidth), zmierzona w określonym okresie czasu (Jest to prędkość pasma pomniejszona o istniejący ruch sieciowy oraz wszelkie opóźnienia).
    • Pasmo & Przepustowość – W sieciach komputerowych, szerokość pasma jest miarą maksymalnej (teoretycznej) ilości danych, które można przesłać przez sieć w jednej jednostce czasu (Zwykle jest to sekunda), natomiast przepustowość oznacza rzeczywistą szerokość pasma mierzoną w danym czasie.
    • EMI (Electromagnetic Interference) – Określa zakłócenia elektromagnetyczne, zakłócające przepływ danych.
    • Przesłuch (Crosstalk) – Określa zakłócenia zachodzące podczas przesyłania danych przez medium transmisyjne.

    Medium transmisji danych

    Okablowanie miedziane UTP, STP, Coaxial

    • Podział na kategorie:
      • Kategoria trzecia (3 UTP) – Przeznaczona do komunikacji głosowej oraz linii telefonicznych.
      • Kategoria Piąta (5 UTP) – Wspiera technologie przesyłu danych 100 Mb/s i 1000 Mb/s, jednak stosowanie drugiego pasma nie jest zalecane.
      • Kategoria Piąta E (5E UTP) – Wspiera technologie przesyłu danych 1000 Mb/s.
      • Kategoria szósta (6 UTP) – Wspiera technologie przesyłu danych 1000 Mb/s oraz 10 000 Mb/s, jednak stosowanie drugiego pasma nie jest zalecane. 
    • Kabel Konsolowy (Rollover) – Kabel konsolowy.
    • STP (Shieldet Twisted Pair) – Wspiera technologie przesyłu danych 10 000 Mb/s (10gb/s).
    • Rodzaje okablowania UDP:
      • Proste (Straight Through) – Składa się z dwóch takich samych zakończeń w wersji T568A lub T568B.
      • Skrosowane (Crossover) – Składa się z dwóch różnych zakończeń, jednego w wersji T568A oraz drugiego T568B.
        • Łączy pin 1 i 2 z jednej strony przewodu do pin-u 3 i 6 strony przeciwnej.
      • T568A || ||  ||  || (Na przemian pół-kolorowe pół-białe oraz w pełni kolorowe).
      • T568B || ||  ||  || (Na przemian pół-kolorowe pół-białe oraz w pełni kolorowe).
    • Najważniejsze cechy połączeń fizycznych:
      • Przepustowość.
      • Maksymalny dystans.
      • Koszt zakupu.
      • Dostępność (Np. portów, materiałów SPF).

    Standardy Ethernet-u

    • TAI (Telecommunications Industry Association) – Organizacja zrzeszającą firmy związane z telekomunikacją, obróbką oraz przesyłem danych. Powstała w 1998 roku skupia się na standardach dotyczących urządzeń telekomunikacyjnych a zwłaszcza normach dotyczących przewodów oraz okablowania teleinformatycznego.
    Pasmo Nazwa Nazwa standardu IEEE Standard IEEE Odległość Okablowanie
    10 Mbps Ethernet 10BASE-T 802.3i Miedź, 100 m CAT3, 2 pary
    100 Mbps Fast Ethernet 100BASE-T 802.3u Miedź, 100 m CAT5, 2 pary
    1000 Mbps Gigabit Ethernet 1000BASE-LX 802.3z Światłowód, 5000 m Multimode fiber
    1000 Mbps Gigabit Ethernet 1000BASE-T 802.3ab Miedź, 100 m CAT5e, 4 pary
    10 Gbps 10 Gig Ethernet 10GBASE-T 802.3ae Światłowód fiber
    10 Gbps 10 Gig Ethernet 10GBASE-T 802.3an Miedź, 100 m CAT6a, 4 pary
    10 Gbps 10 Gig Ethernet 10GBASE-T 802.3an Miedź, 38-55 m CAT6, 4 pary
    40 Gbps 40 Gig Ethernet 40GBASE-T 802.3ba Światłowód fiber
    100 Gbps 100 Gig Ethernet 100GBASE-T 802.3ba Światłowód fiber
    1000 Mbps Gigabit Ethernet 1000BASE-SX 802.3z Światłowód, 550 m Multimode fiber
    1000 Mbps Gigabit Ethernet 1000BASE-LX 802.3z Światłowód, 550 m Multimode fiber
    1000 Mbps Gigabit Ethernet 1000BASE-LX 802.3z Światłowód, 5 Km Single-mode fiber

    Standardy technologii Ethernet-owej

    Transmisja danych

    • Standardy 10 Mb/s oraz 100 Mb/s podczas transmisji danych wykorzystują jedynie dwie pary przewodów, składających się na kabel Ethernet-owy (Są to piny 1, 2 oraz 3, 6.
    • Standard 1000 Mb/s podczas transmisji danych wykorzystuje wszystkie cztery pary przewodów.
    • Podczas transmisji danych poprzez kabel UTP, piny jednej skręconej ze sobą pary przewodów, tworzą elektryczny obwód umożliwiający swobodne przewodzenie prądu elektrycznego. ponadto dzięki skręceniu par ze sobą, niwelowane są zakłócenia elektromagnetyczne EMI.
    • W przypadku transmisji danych pomiędzy komputerem PC a przełącznikiem z wykorzystaniem przewodu UTP w standardzie 10 Mb/s oraz 100 Mb/s, Nadawca (PC…) nadaje na pniach 1,2 a odbiera poprzez piny 3 oraz 6, natomiast przełącznik bądź Hub robi to na odwrót. Poniżej graficzny przykład komunikacji:
    Fizyczna łączność w przewodach UTP 100 Mb/s
    • Auto-MDIX – Funkcja karty sieciowej bądź dowolnego innego urządzenia sieciowego, umożliwiająca automatyczne wykrycie, jakiego rodzaju przewód został podłączony do urządzenie (Prosty (Straight Through) bądź też krosowy (Crossover)). Ponadto Auto-MDIX umożliwia zmianę funkcji poszczególnych pinów, dzięki czemu możliwe staje się połączenie ze sobą np. dwóch ruterów zarówno za pomocą kabla prostego jak i krosowanego.

    Pozostałe tematy związane z modelem OSI/ISO, TCP/IP

    Podstawy sieci komputerowych

    Warstwy modelu OSI

    Bezpieczeństwo sieci

    Troubleshooting

  • (T) Model TCP/IP*

    (T) Model TCP/IP*

    Wstęp do modelu TCP/IP

    • Pierwsze próby stworzenia sieci komputerowej, zostały podjęte przez amerykańskie korporacje, dążące do ułatwienia wymiany danych pomiędzy swoimi pracownikami. Początkowo poszczególne firmy tworzyły swoje własne rozwiązanie techniczne, co uniemożliwiało tworzenie sieci rozległych wychodzących poza przestrzeń lokalną. Dlatego najważniejszym zadaniem stającym przed informatykami było ujednolicenie wykorzystywanych technologii, aby mogły ze sobą współpracować pomimo różnic w budowie fizycznej poszczególnych komponentów. Powstałe dzięki temu protokoły określały poszczególne etapy komunikacji pomiędzy dwiema stronami, w oderwaniu od warstwy fizycznej. A tym samym umożliwiały komunikacje komputerów, których karty sieciowe zostały stworzone przez konkurujących ze sobą producentów. Tworzeniem nowych protokołów np. w postaci dokumentów RFC (Request for Comments) opatrzonych unikalnym numerem, zajmuje się wiele organizacji pozarządowych takich jak IETF (Internet Engineering Task Force). Jest to organizacja zrzeszająca informatyków z całego świata, których wspólna praca napędza rozwój Internetu.
    • W latach siedemdziesiątych Agencja Zaawansowanych Projektów Badawczych Departamentu Obrony Stanów Zjednoczonych DARPA (Defense Advanced Research Projects Agency) stworzyła zestaw protokołów TCP/IP wprowadzający standaryzację, określającą szczegóły komunikacji między komputerami oraz sposoby nawiązywania łączności. Nowo powstały zestaw protokołów opierał się na zasadzie podziału struktury na współpracujące ze sobą warstw (Layers), dzięki czemu poszczególne protokoły mogły być tworzone przez inne niezależne grupy programistów, specjalizujących się w innych częściach sieci. Podstawowymi założeniami nowego standardu było uzyskanie następujących cech:
      • Dobrej odtwarzalność po awarii.
      • Możliwość dodawania nowych sieci bez przerywania pracy istniejących.
      • Wysokiego współczynnika korekcji błędów.
      • Niezależności od platformy.
      • Dużej wydajność.

    Zasada „end-to-end argument” i „fate sharing”

    • Zasada „end-to-end argument” akcentuje niemożliwość osiągnięcia poprawnej komunikacji w oderwaniu od użytkowników, hostów będących dwoma głównymi punktami połączenia. Ponieważ niemożliwe jest przewidzenie wszystkich wymagany w przyszłości funkcjonalności, to główne z nich takie jak kontrola błędów, szyfrowanie lub potwierdzenie dostarczenia danych, powinny być implementowane w wyższych warstwach modelu. Niższe natomiast powinny dostarczać elementy wspomagające, ułatwiające implementacje powyższych funkcji. Konstrukcja ta stworzona jest zgodnie z filozofią „głupiej sieci” w której „inteligentne końcówki” prowadzą komunikację poprzez sieć o prymitywnej funkcjonalności. Druga koncepcja „fate sharing”, stworzona w zgodzie z postanowieniami pierwszej nakazuje, aby hosty posiadały wszystkie niezbędne do utrzymania komunikacji funkcje, dzięki czemu uszkodzenie sieci nie musi oznaczać zerwania transmisji pomiędzy urządzeniami, a jedynie zmianę ścieżki je łączącej.

    Architektura warstwowa

    • Architektura warstwowa dzieli protokoły na grupy należące do różnych warstw, z których każda kontroluje inny aspekt komunikacji. Ułatwia to opracowywanie nowych składników zestawu w sposób niezależny od siebie. Dzięki czemu specjaliści z różnych dziedzin mogą pracować nad zagadnieniami typowymi dla swoich specjalizacji.
    Porównanie modelu TCP/IP z modelem OSI/ISO

    Pozostałe tematy związane z modelem OSI/ISO, TCP/IP

    Podstawy sieci komputerowych

    Warstwy modelu OSI

    Bezpieczeństwo sieci

    Troubleshooting

  • (T) Rodzaje ruchu / topologii sieciowych*

    (T) Rodzaje ruchu / topologii sieciowych*

    Rodzaje ruchu sieciowego

    • Unicast – Ruch kierowany do pojedynczego urządzenia docelowego.
    • Multicast – Ruch kierowany do wielu urządzeń docelowych.
    • Broadcast – Ruch kierowany do wszystkich dostępnych urządzeń, znajdujących się w jednej domenie rozgłoszeni-owej.
      • Local Broadcast – Adres rozgłoszeniowy (255.255.255.255).
      • Subnet Broadcast Address – Adres rozgłoszeniowy sieci bezklasowej (Np. dla sieci 10.1.1.0/24 będzie to adres 10.1.1.255).
      • Network Broadcast Address – Adres rozgłoszeniowy sieci klasowej.
    • Anycast – Ruch kierowany do najbliższego urządzenia, wykorzystywany w adresacji IPv6 umożliwia współdzielenie przez wiele urządzeń jednego tego samego adresu IPv6, dzięki czemu globalne tablicę trasowania będą kierowały nadchodzący pakiety do najbliższego urządzenia o tym samym adresie.
    Adres rozgłoszeniowy „Broadcast” nie jest przepuszczany przez rutery.
    Komenda [no ip directed-broadcast] umożliwia przekazywania ruchu „Subnet Broadcast” przez rutery.

    Rodzaje topologii sieciowych

    Rodzaje topologii sieciowych

    • Rodzaje topologii sieci WAN:
      • Point to point topology
      • Hub and spoke topology
      • Full mesh topology
      • Partial mesh topology
    • Rodzaje topologii sieci LAN:
      • Star topology
      • Extended Star topology or Hybrid
      • Bus topology
      • Ring topology

    Inne rodzaje sieci

    Sieć rozgłoszeni-owa (Broadcast Network) – Stanowi wydzieloną sieć, w której pakiety rozgłoszeni-owe (Broadcast) wysłane z jednego punktu źródłowego, trafią na wszystkie inne urządzenia znajdujące się w sieci lokalnej (rutery bądź sieci wirtualne VLAN blokują rozprzestrzenianie się tego rodzaju wiadomości w Internecie).

    Topologia NBMA (Non Broadcast Multi Access)

    NBMA (Non Broadcast Multi Access) – Sieć, w której nie występuje ruch multicast ani broadcast, a komunikacja jest możliwa jedynie dzięki pakietom kierowanym na adresy unicast. W powyższym przykładzie ruter HQ jest połączony jednym kablem serialowym do dwóch innych ruterów, przy użyciu sieci opartej o technologię Frame Relay lub ATM co uniemożliwia mu nawiązanie relacji sąsiedztwa z innymi urządzeniami w sieci (ATM i Frame Relay nie wspierają komunikacji multicast niezbędnej do nawiązania takiej relacji) w takim przypadku administrator musi ręcznie skonfigurować relację sąsiedztwa lub wykorzystać tunelowanie VPN wspierające wiadomości multicast.

    Innym ważnym aspektem dotyczącym protokołu EIGRP oraz RIP w kontekście sieci NBMA jest funkcjonalność podzielonego horyzontu (Split Horizon), która w powyższym przykładzie uniemożliwia ruterowi HQ przekazanie informacji otrzymanych od rutera BR1 do rutera BR2.

    Rodzaje topologii sieciowych

    Rodzaje modeli sieciowych

    • Proces Same-Layer Interaction – Zachodzi pomiędzy dwoma urządzeniami, wymieniającymi dane na poziomie jednej, tej samej warstwy modelu OSI.
    • Proces Adjacent-Layer Interaction – Zachodzi na jednym urządzeniu pomiędzy różnymi warstwami modelu OSI.
    • Funkcja End-to-end delivery – Jest realizowana w warstwie trzeciej za pomocą warstwy czwartej. Stanowi gwarancje dostarczenia całości przesyłanych danych, od urządzenia źródłowego do docelowego.

    Pozostałe tematy związane z podstawami sieci

    Podstawy sieci komputerowych

    Warstwy modelu OSI

    Bezpieczeństwo sieci

    Troubleshooting