Wszyscy codziennie używamy Internetu do wszelkiego rodzaju rzeczy, nawet nie myśląc o tym, jak to wszystko działa. Po prostu klikasz przycisk, a poczta jest wysyłana. W ciągu kilku sekund, z drugiej strony, poczta jest odbierana. Wszystko jest takie szybkie i proste. Wszyscy możemy się szybko zgodzić. Ale czy to naprawdę takie proste? Czy zastanawiałeś się kiedyś, co dzieje się za kulisami, które sprawia, że ​​tworzenie sieci są tak płynne i proste? Podstawą sieci jest tak zwany model TCP/IP i to będzie nasz główny temat.

W tym poście wyjaśnimy cel modelu TCP/IP i spróbujemy opisać, jak działa.

Co to jest model TCP/IP?

Sieci działają poprawnie, ponieważ wszystkie urządzenia i oprogramowanie są zgodne z określonym zestawem reguł, w formie standardów i protokołów. Obecnie najczęściej używanym modelem sieci jest TCP/IP. Każde urządzenie, które powinno łączyć się z Internetem, które dziś zawiera obsługę TCP/IP.

Każdy komputer Windows obsługuje protokół TCP/IP (a także każdy komputer macOS, każde urządzenie iOS, każde urządzenie z Androidem, ET.)

TCP/IP to model używany do standaryzacji sieci komputerowych. Określa sposób komunikacji komputerów w sieci. Model TCP/IP składa się z kilku warstw. Każdy kawałek danych wysyłanych z jednego komputera do drugiego musi przejść przez wszystkie te warstwy przed wysłaniem i/lub odebraniem.

Co oznacza TCP w TCP/IP?

TCP jest skrótem protokołu kontroli transmisji. Jest to standard komunikacji, który umożliwia wysyłanie pakietów przez Internet i zapewnia, że ​​pakiety są z powodzeniem odbierane na drugim końcu.

TCP określa sposób wysyłania danych aplikacji z jednego komputera przez Internet na inny komputer lub serwer. TCP dzieli dane na mniejsze bity o nazwie segmenty przed ich wysłaniem. Dla każdego wysłanego segmentu protokół TCP tworzy nagłówek z podstawowymi informacjami o tym segmencie.

Nagłówek zawiera informacje o portach źródłowych i docelowych. Aplikacja używana do komunikacji między urządzeniami określa numer portu. Na przykład, jeśli aplikacja to HTTP (jeśli próbujesz otworzyć witrynę), port docelowy wyniesie 80. Jeśli próbujesz odwiedzić witrynę HTTPS, port docelowy wyniesie 443. Port wyniesie 25. Jeśli próbujesz przesyłać pliki z serwera (protokół FTP), port docelowy w nagłówku będzie wynosił 20 i 21.

Zakładając, że klient komunikuje się z pewnym serwerem, porty źródłowe dla urządzenia są losowo generowane przez TCP. Kiedy odwiedzasz witrynę, klient komunikuje się z serwerem WWW (serwer HTTP lub HTTPS). Tak więc, wpisując adres internetowy i naciśnij Enter, TCP losowo przypisuje jakiś port źródłowy do określonej karty w przeglądarce internetowej. Za pośrednictwem tego portu komputer otrzyma informacje z serwera.

Gdy Twoje żądanie dotrze do serwera WWW, serwer wyśle ​​do Ciebie dane. Dane będą również miały nagłówek TCP z portem źródłowym i docelowym. W takim przypadku port źródłowy wyniesie 80 (strona internetowa HTTP) lub 443 (strona internetowa HTTPS), a port docelowy będzie tym losowo wygenerowanym numerem portu przez TCP na komputerze. W rezultacie zobaczysz zawartość witryny w przeglądarce.

Oprócz portów źródłowych i docelowych nagłówek TCP zawiera wiele innych informacji.

Na przykład TCP przypisuje również numer sekwencji do każdego segmentu danych, aby odbiornik wiedział, czy wszystkie segmenty dotarły do ​​miejsca docelowego i jak złożyć wszystkie segmenty.

Ponadto numery potwierdzeń są przypisywane do każdego segmentu, aby odbiornik mógł powiedzieć nadawcy, który pakiet ma zostać odebrany następny.

Suma kontrolna to kolejna informacja znaleziona w nagłówku TCP. Informacje te są używane do wykrywania błędów. Dla każdego segmentu danych, przed jego wysłaniem, TCP oblicza sumę kontrolną dla tego segmentu. Gdy ten segment dotrze do odbiornika, maszyna odbierająca oblicza również sumę kontrolną. Jeśli wartości są zgodne, dane są odbierane. Jeśli sumy kontrolne nie pasują, odbiornik upuszczy dane.

Nagłówek TCP zawiera jeszcze kilka fragmentów informacji, ale nie komplikuje zbytnio rzeczy. Będzie to więcej niż wystarczające, aby wyjaśnić, jak działa model TCP/IP. Jeśli chcesz dowiedzieć się więcej o nagłówku TCP, obejrzyj wideo poniżej.

Nagłówek TCP wyjaśnił

Celem wszystkich tych informacji w nagłówku TCP jest zapewnienie bezpiecznego i niezawodnego przepływu danych od nadawcy do odbiornika.

TCP nie jest jedynym protokołem używanym do transmisji danych. Drugi wspólny protokół nazywa się protokołem UDP lub User Datagram. Jest podobny do TCP, ale znacznie prostszy. Każdy segment danych wysłany za pomocą UDP ma również nagłówek, ale nagłówek jest znacznie mniejszy. Zawiera tylko porty źródłowe i docelowe, długość i sumę kontrolną. UDP nie jest tak niezawodne i, w zależności od jakości połączenia, możesz stracić wiele pakietów danych. Z drugiej strony TCP zapobiegnie takim zdarzeniu i ponownie wyznaczy każdy utracony pakiet danych. Dlaczego więc używamy UDP, jeśli jest to tak niewiarygodne?

Prawda jest taka - niektóre aplikacje stawiają prędkość i komunikację o niskiej opóźnieniu powyżej niezawodności. Takie aplikacje to połączenia głosowe i wideo, a także gry online . W przypadku takich aplikacji komputer zawsze będzie używał protokołu UDP zamiast TCP. Aplikacje, które nie wymagają niskiego opóźnienia, zawsze używają TCP. Na przykład podczas próby przesłania lub pobrania pliku z serwera komputer będzie używać protokołu TCP, ponieważ jest bardziej niezawodny i chroni integralność danych.

TCP vs. UDP

Co oznacza IP w TCP/IP?

IP oznacza protokół internetowy. Jest to zestaw reguł, który umożliwia komunikację urządzeń w sieci poprzez przypisanie unikalnych adresów (adresów IP) do każdego urządzenia . Therrere dwa protokoły IP - IPv4 i IPv6. IPv4 jest obecnie używany, podczas gdy IPv6 nie jest jeszcze w pełni zaimplementowany.

IPv4 definiuje adres IP jako unikalną sekwencję 32 bitów. Każde urządzenie w sieci musi mieć unikalny adres. W przeciwnym razie nie będzie w stanie komunikować się z innymi .

Wszystkie adresy IPv4 są podzielone na 5 klas (od A do E), na podstawie wielkości sieci, na których są używane. Ponadto są one podzielone na dwie grupy - prywatne i publiczne. Adresy publiczne są używane do komunikacji w Internecie, podczas gdy adresy prywatne są używane do komunikacji z innymi urządzeniami podłączonymi z siecią LAN.

Wszystkie urządzenia w domu mają prywatne adresy IP. Cała sieć domowa (wszystkie urządzenia w domu) ma tylko jeden adres publiczny, który jest przypisany przez twojego dostawcę usług internetowych. Wszystkie urządzenia w domu używają jednego publicznego adresu IP, aby przejść do trybu online, ale używają prywatnych adresów podczas komunikowania się z innymi urządzeniami w sieci domowej.

Wreszcie wszystkie adresy IPv4 mogą być statyczne lub dynamiczne. Adresy statyczne pozostają z jednym urządzeniem (serwer, komputer, drukarka, gier) i nie zmienia się w czasie - jedno urządzenie zawsze będzie miało ten sam adres. Adresy dynamiczne zmieniają się w czasie.

Cel adresów IP w modelu TCP/IP jest dość oczywisty. Bez nich nasze urządzenia nie mogły odbierać ani wysyłać żadnych danych, ponieważ dane nie wiedziałyby, gdzie iść.

Warstwy TCP/IP

Jak wspomniano, model TCP/IP jest zestawem reguł i protokołów, które określają sposób, w jaki dane przemieszczają się z jednego komputera do drugiego. TCP i IP są kręgosłupem tego modelu, ale jest trochę więcej.

Używany dziś model TCP/IP składa się z 5 warstw - aplikacji, transportu, sieci, łącza danych i warstwy fizycznej.

Każda informacja musi przejść przez wszystkie te warstwy przed wysłaniem. Musi także przekazać wszystkie warstwy na końcu odbiorczym przed otrzymaniem.

Oryginalny model składał się z czterech warstw aplikacji, transportu, Internetu i linku. Nowy, zaktualizowany model TCP/IP zmienił nazwę warstwy internetowej na warstwę sieci, podczas gdy warstwa łącza jest podzielona na dwa - łącze danych i warstwę fizyczną. Zamiast 4 oryginalnych warstw, teraz mamy 5 warstw.

Na każdej warstwie mamy różne protokoły i urządzenia. Każda warstwa doda własną informację. Cały proces nazywa się enkapsulacja. Gdy dane dotrą do warstwy fizycznej, dane są przesyłane do urządzenia odbierającego (przez Internet lub w znacznie mniejszej sieci LAN). Urządzenie odbierające następnie zacznie dekapsutować każdy pakiet danych i je zmienić.

Jak działa TCP/IP?

Jak wspomniano, dane muszą przejść przez każdą warstwę przed wysłaniem (enkapsulacja), a następnie muszą przejść przez każdą warstwę na końcu odbiorczym przed otrzymaniem (dekapsulacja). Omówmy te dwa procesy.

Enkapsulacja danych

Najwyższa warstwa nazywa się warstwą aplikacji. Programy (takie jak Twoja przeglądarka, Skype lub gry online) bezpośrednio wchodzą w interakcje z tą warstwą. Wszystko zaczyna się od danych aplikacji utworzonych w tej warstwie. Dane mogą być dowolnym plikiem wysyłanym z komputera na inny komputer. Może to być również Twoja prośba o otwarcie strony internetowej lub polecenia w grze wideo. Ta warstwa składa się z protokołów aplikacji, takich jak HTTP (niezabezpieczone strony internetowe), HTTP (bezpieczne strony internetowe), SMTP (protokół e -mail), FTP (protokół transferu plików), Telnet, SSH itp.

Poniższa warstwa to warstwa transportowa - tam mieszka TCP wraz z UDP. W tym miejscu dane zostają pokrojone w małe fragmenty danych zwanych segmentami. Podział danych, TCP umożliwia znacznie szybszą transmisję i pozwala każdemu pakietowi wybrać najszybszą trasę. Nie mogą dotrzeć do miejsca docelowego w tej samej kolejności, ale dlatego mamy nagłówki TCP. Każdy segment otrzymuje nagłówek TCP, jak omówiono powyżej. Na podstawie aplikacji w poprzedniej warstwie TCP definiuje porty źródłowe i docelowe. Aby upewnić się, że każdy fragment danych dotrze do miejsca docelowego i że wszystkie dane są poprawnie odbierane, TCP doda również wszystkie inne informacje, o których rozmawialiśmy.

Rekomendowane lektury:

Po warstwie transportowej dane przesuwają się w dół do warstwy sieciowej, gdzie odbywa się adresowanie. Tam żyje protokół internetowy. W warstwie sieci każdy pakiet odbiera tak zwany nagłówek IP, który zawiera informacje o źródłowym i docelowym adresie IP. W ten sposób pakiet wie, dokąd zmierza, a skąd pochodzi. Gdy segment z warstwy transportowej dociera do warstwy sieciowej i odbiera nagłówek IP, staje się pakietem. Routery działają również w warstwie sieciowej, ponieważ są odpowiedzialne za adresowanie IP w sieciach LAN

Wreszcie dane dociera do warstwy łącza danych. Tutaj każdy pakiet otrzymuje nie tylko nagłówek, ale także przyczepę. Nagłówek zawiera źródło i docelowe adresy MAC, podczas gdy przyczepa zawiera informacje o sprawdzeniu błędów, które pomagają urządzeniu odbierającym w sprawdzeniu, czy dane zostały poprawnie odebrane. Warstwa łącza danych zawiera Ethernet. Przełączniki Ethernet działają również w tej warstwie. Po przekazaniu warstwy łącza danych pakiet staje się ramka.

Wreszcie jest to warstwa fizyczna, która zawiera wszystko, co można dotknąć (z wyłączeniem routerów i przełączników). Kable i karty sieciowe należą do tej warstwy. Gdy dane dotrą do warstwy fizycznej, zostają fizycznie przesyłane do końca odbierania.

Dekapsulacja danych

Dane są fizycznie przesyłane do miejsca docelowego i tam rozpoczyna się proces dekapsulacji. W warstwie łącza danych maszyna docelowa sprawdza każdą ramkę. Sprawdza adres MAC źródłowego i docelowego. Jeśli docelowy adres MAC pasuje do komputera docelowego, warstwa łącza danych wepchnie ramkę dalej do warstwy sieciowej.

Tutaj maszyna odbierająca sprawdza docelowy adres IP. Jeśli pakiet jest przeznaczony dla tego konkretnego komputera, przejdzie dalej do warstwy transportowej. Nagłówek TCP jest sprawdzany, a jeśli wszystko jest poprawne, dane są wysyłane do warstwy aplikacji, gdzie w końcu zostaną odebrane.

Końcowe przemyślenia

Masz to. Mam nadzieję, że teraz rozumiesz, jaki jest model TCP/IP, do czego jest używany i jak działa. Bądź na bieżąco, aby uzyskać bardziej interesujące artykuły na temat tworzenia sieci!