Reguły
Opracowanie: Trzy najbardziej znane topologie sieci komputerowych: linia (łańcuch/szyna), pierścień i gwiazda.
Komputery to logika, a logika to przestrzeganie reguł. Sieci komputerowe są trochę jak wojsko: wszystko w sieci musi być uporządkowane z niemal wojskową precyzją i musi się zachowywać zgodnie z bardzo jasno określonymi zasadami. W sieci LAN, na przykład, nie można połączyć rzeczy ze sobą w dowolny stary sposób: wszystkie węzły (komputery i inne urządzenia) w sieci muszą być połączone w uporządkowany wzór, znany jako topologia sieci. Węzły można połączyć w prostą linię (zwaną również łańcuchem daisy lub magistralą), z których każdy jest połączony z następnym w linii. Można połączyć je w kształt gwiazdy z różnymi urządzeniami wychodzącymi z centralnego kontrolera, znanego jako serwer sieciowy. Można też połączyć je w pętlę (ogólnie znaną jako pierścień). Wszystkie urządzenia w sieci muszą również przestrzegać jasno określonych zasad (zwanych protokołami), kiedy się komunikują, aby zapewnić, że rozumieją się nawzajem – na przykład, aby nie próbowały wysyłać wiadomości dokładnie w tym samym czasie, co powoduje zamieszanie.
Uprawnienia i bezpieczeństwo
Tylko dlatego, że maszyna jest w sieci, nie oznacza to automatycznie, że każda inna maszyna i urządzenie ma do niej dostęp (lub może być przez nią dostępna). Internet jest oczywistym przykładem. Jeśli jesteś w sieci, masz dostęp do miliardów stron internetowych, które są po prostu plikami przechowywanymi na innych maszynach (serwerach) rozsianych po całej sieci. Ale nie możesz uzyskać dostępu do każdego pojedynczego pliku na każdym pojedynczym komputerze podłączonym do Internetu: nie możesz czytać moich osobistych plików, a ja nie mogę czytać twoich, chyba że wespecifically choose for that to happen.
Pozwolenia i bezpieczeństwo są kluczowe dla idei sieci: możesz mieć dostęp do plików i współdzielić zasoby tylko wtedy, gdy ktoś da ci na to pozwolenie.Większość komputerów osobistych, które łączą się z Internetem, pozwala na połączenia wychodzące (więc teoretycznie możesz połączyć się z każdym innym komputerem), ale blokuje większość połączeń przychodzących lub całkowicie ich zabrania.Serwery (maszyny w Internecie, które przechowują i obsługują strony WWW i inne pliki) stosują bardziej zrelaksowaną politykę wobec połączeń przychodzących. Prawdopodobnie słyszałeś o hackingu, który w jednym znaczeniu tego słowa oznacza uzyskanie nieautoryzowanego dostępu do sieci komputerowej poprzez łamanie haseł lub pokonanie innych zabezpieczeń. Aby sieć była bardziej bezpieczna, można dodać zaporę sieciową (fizyczne urządzenie lub oprogramowanie działające na komputerze, lub oba) w miejscu, w którym sieć łączy się z inną siecią lub Internetem, aby monitorować i zapobiegać wszelkim nieautoryzowanym próbom dostępu.
Co tworzy sieć?
Aby stworzyć sieć, potrzebne są węzły i połączenia (czasami nazywane łączami) między nimi.Łączenie węzłów oznacza tworzenie tymczasowych lub stałych połączeń między nimi. W ostatniej dekadzie lub tak, połączenia bezprzewodowe stały się jednym z najbardziej popularnych sposobów, aby to zrobić, zwłaszcza w domach. W biurach, połączenia przewodowe są nadal bardziej powszechne – nie tylko dlatego, że są one ogólnie szybsze i bardziej bezpieczne, ale także dlatego, że wiele nowszych biur ma już okablowanie sieciowe.
Foto: Jeśli Twój laptop nie ma karty sieciowej, możesz po prostu podłączyć adapter PCMCIA, taki jak ten. Adapter ma wbudowaną kartę sieciową.
Oprócz komputerów, urządzeń peryferyjnych i połączeń między nimi, czego jeszcze potrzebujesz? Każdy węzeł w sieci potrzebuje specjalnego układu znanego jako karta sieciowa (lub bardziej formalnie, karta interfejsu sieciowego lub NIC), aby powiedzieć, jak współdziałać z siecią. Większość nowych komputerów ma standardowo wbudowane karty sieciowe. Jeśli masz starszy komputer lub laptop, być może będziesz musiał zamontować oddzielną płytkę drukowaną (lub, w przypadku laptopa, dodać kartę PCMCIA), aby Twój komputer mógł rozmawiać z siecią.Każda karta sieciowa ma swój własny, oddzielny identyfikator numeryczny, znany jako kod MAC (kontrola dostępu do mediów) lub adres LAN MAC. Kod MAC jest trochę jak numer telefonu: każda maszyna w sieci może komunikować się z inną, wysyłając wiadomość zawierającą jej kod MAC. W podobny sposób, kody MAC mogą być używane do kontrolowania, które maszyny w sieci mogą uzyskać dostęp do plików i innych współdzielonych zasobów. Na przykład skonfigurowałem moje bezprzewodowe łącze do Internetu w taki sposób, że tylko dwa kody MAC mogą uzyskać do niego dostęp (ograniczając dostęp do kart sieciowych wbudowanych w moje dwa komputery). To pomaga powstrzymać innych ludzi w pobliskich budynkach (lub na ulicy) przed włamaniem się do mojego połączenia lub użyciem go przez pomyłkę.
Im większa jest sieć, tym więcej dodatkowych części trzeba dodać, aby działała efektywnie. Sygnały mogą podróżować tylko tak daleko po kablach lub łączach bezprzewodowych, więc jeśli chcesz stworzyć dużą sieć, musisz dodać urządzenia zwane repeaterami – efektywnie wzmacniaczami sygnału. Youmightalso need bridges, switches, and routers-device-device that help to linktogether networks (or the parts of networks, which are known assegments), regulate the traffic between them, and forward trafficfrom one part of a network to another part.
Foto: Bezprzewodowy router, taki jak ten, wyprodukowany przez Netgear, jest sercem wielu domowych sieci PAN.
Zrozumienie sieci komputerowych za pomocą warstw
Zdjęcie: Architektura komputera: Możemy myśleć o komputerach w warstwach, od sprzętu i BIOS-u w chwili obecnej do systemu operacyjnego i aplikacji na górze. Niektórzy z nas chcą po prostu wykonywać podstawowe zadania, takie jak edytory tekstu lub rozmowy z przyjaciółmi na Facebooku, i nie obchodzi nas, jak to się dzieje pod przykrywką – ani nawet to, że używamy do tego komputera (jeśli używamy smartfona, prawdopodobnie nawet nie myślimy, że to, co robimy, jest „obliczaniem” – lub że instalowanie nowej aplikacji jest w rzeczywistości programowaniem komputerowym). Na przeciwległym krańcu spektrum niektórzy z nas lubią modyfikować swoje komputery, aby działały szybciej, montując szybsze procesory, więcej pamięci lub cokolwiek innego; dla maniaków grzebanie w komputerach jest celem samym w sobie. Gdzieś pomiędzy tymi skrajnościami znajdują się ludzie średnio obeznani z technologią, którzy używają komputerów do wykonywania codziennych zadań, rozumiejąc zasadę działania swoich maszyn. Ponieważ komputery oznaczają różne rzeczy dla różnych ludzi, w ich zrozumieniu może nam pomóc myślenie o stosie warstw: sprzęt na dole, system operacyjny gdzieś na górze, a następnie aplikacje działające na najwyższym poziomie. Można „zaangażować się” w pracę z komputerem na każdym z tych poziomów, niekoniecznie myśląc o którejkolwiek z pozostałych warstw. Niemniej jednak, każda warstwa jest możliwa dzięki rzeczom dziejącym się na niższych poziomach, niezależnie od tego, czy jesteś tego świadomy, czy nie. Rzeczy, które dzieją się na wyższych poziomach, mogą być realizowane na wiele różnych sposobów na niższych poziomach; na przykład, można używać przeglądarki internetowej takiej jak Firefox (aplikacja) na wielu różnych systemach operacyjnych, a na danym laptopie można uruchomić różne systemy operacyjne, mimo że sprzęt nie zmienia się w ogóle.
Sieci komputerowe są podobne: wszyscy mamy różne pomysły na ich temat i mniej lub bardziej obchodzi nas, co robią i dlaczego. Jeśli pracujesz w małym biurze, gdzie twój komputer jest podłączony do maszyn innych osób i wspólnych drukarek, prawdopodobnie wszystko, na czym ci zależy, to to, że możesz wysyłać e-maile do swoich kolegów i drukować swoje rzeczy; nie interesuje cię, jak to się dzieje w rzeczywistości. Ale jeśli jesteś odpowiedzialny za konfigurację sieci w pierwszej kolejności, musisz rozważyć takie rzeczy, jak to, jak to jest fizycznie połączone razem, jakiego rodzaju kable używasz i jak długie mogą być, jakie są adresy MAC i wszelkiego rodzaju inne drobiazgi. Ponownie, tak jak w przypadku komputerów, możemy myśleć o sieci w kategoriach jej różnych warstw – i istnieją dwa popularne sposoby robienia tego.
Model OSI
Prawdopodobnie najbardziej znanym sposobem jest model OSI (Open Systems Interconnect), oparty na międzynarodowym zestawie standardów opracowanych przez komitet ekspertów komputerowych i po raz pierwszy opublikowany w 1984 roku. Opisuje on sieć komputerową jako stos siedmiu warstw. Niższe warstwy są najbliższe sprzętowi komputerowemu; wyższe warstwy są bliższe ludzkim użytkownikom; a każda warstwa umożliwia rzeczy, które dzieją się w wyższych warstwach:
- Fizyczna: Podstawowy sprzęt sieci, w tym kable i połączenia oraz sposób, w jaki urządzenia są podłączone do określonej topologii sieci (pierścień, magistrala lub cokolwiek innego). Warstwa fizyczna nie jest w żaden sposób dotyczy danych, które sieć przenosi i, o ile większość użytkowników sieci jest zaniepokojony, jest nieinteresujące i nieistotne.
- Łącze danych: Obejmuje to rzeczy, takie jak jak dane są pakowane i jak błędy są wykrywane i korygowane.
- Sieć: Ta warstwa jest zaniepokojony, jak dane są adresowane i kierowane z jednego urządzenia do drugiego.
- Transport: Ta warstwa zarządza sposobem, w jaki dane są skutecznie i niezawodnie przenoszone tam i z powrotem przez sieć, zapewniając, że wszystkie bity danej wiadomości są prawidłowo dostarczane.
- Sesja: To kontroluje, w jaki sposób różne urządzenia w sieci ustanawiają tymczasowe „rozmowy” (sesje), aby mogły wymieniać informacje.
- Prezentacja: To skutecznie tłumaczy dane wytwarzane przez przyjazne dla użytkownika aplikacje na przyjazne dla komputera formaty, które są przesyłane przez sieć. Na przykład, może to obejmować takie rzeczy jak kompresja (w celu zmniejszenia liczby bitów i bajtów, które muszą być przesyłane), szyfrowanie (w celu zapewnienia bezpieczeństwa danych) lub konwersja danych między różnymi zestawami znaków (dzięki czemu można odczytać emotikony („smileyys”) lub emojis w wiadomościach e-mail).
- Aplikacja: Najwyższy poziom modelu i ten, który jest najbliżej użytkownika. Obejmuje rzeczy takie jak programy pocztowe, które używają sieci w sposób, który jest znaczący dla ludzkich użytkowników i rzeczy, które próbują osiągnąć.
OSI został pomyślany jako sposób na sprawienie, by wszystkie rodzaje różnych komputerów i sieci rozmawiały ze sobą, co stanowiło poważny problem w latach 60-tych, 70-tych i 80-tych, gdy praktycznie cały sprzęt komputerowy był zastrzeżony i sprzęt jednego producenta rzadko współpracował z innym.
Model TCP/IP (DARPA)
Jeśli nigdy nie słyszałeś o modelu OSI, to prawdopodobnie dlatego, że inny sposób łączenia komputerów na świecie zatriumfował nad nim, dostarczając niesamowitej sieci komputerowej, z której teraz korzystasz: Internetu. Internet opiera się na dwuczęściowym systemie sieciowym zwanym TCP/IP, w którym komputery łączą się przez sieci (używając czegoś, co nazywa się TCP, Transmission Control Protocol), aby wymieniać informacje w pakietach (używając protokołu internetowego, IP). Możemy zrozumieć TCP/IP za pomocą czterech nieco prostszych warstw, czasami znanych jako model TCP/IP (lub model DARPA, dla Agencji Zaawansowanych Projektów Badawczych Rządu Stanów Zjednoczonych, która sponsorowała jego rozwój):
- Dostęp do sieci (czasami nazywany warstwą interfejsu sieciowego): Reprezentuje podstawowy sprzęt sieciowy i odpowiada warstwom fizycznym i łącza danych w modelu OSI. Twoje połączenie Ethernet lub Wi-Fi do Internetu jest przykładem.
- Internet (czasami nazywany warstwą sieciową): W ten sposób dane są przesyłane przez sieć i jest to odpowiednik warstwy Network w modelu OSI. Przełączanie pakietów IP (Internet Protocol) – dostarczanie rzeczywistych pakietów danych do komputera z Internetu – działa na tym poziomie.
- Transport: Odpowiada to warstwie transportowej w modelu OSI. TCP (Transmission Control Protocol) działa na tym poziomie, zarządzając dostarczaniem danych bez ich faktycznego dostarczania. TCP przekształca przesyłane dane w pakiety (i z powrotem, gdy są odbierane) i zapewnia, że pakiety są niezawodnie dostarczane i ponownie składane w tej samej kolejności, w jakiej zostały wysłane.
- Aplikacja: Odpowiednik warstw sesji, prezentacji i aplikacji w modelu OSI. Na tym poziomie działają dobrze znane protokoły internetowe, takie jak HTTP (ukryta „rozmowa” między przeglądarkami internetowymi a serwerami WWW), FTP (sposób pobierania danych z serwerów i wysyłania ich w przeciwnym kierunku) oraz SMTP (sposób, w jaki Twój program pocztowy wysyła pocztę przez serwer u dostawcy usług internetowych).
Opracowanie: Model TCP/IP jest łatwy do zrozumienia. W tym przykładzie, załóżmy, że wysyłasz do kogoś e-mail przez Internet. Twoje dwa urządzenia są w efekcie połączone jednym długim „kablem” biegnącym między ich kartami sieciowymi. To właśnie reprezentuje zielona warstwa dostępu do sieci na dole. Wiadomość e-mail jest przesyłana w postaci pakietów (pomarańczowe kwadraty) za pomocą protokołu internetowego (IP), przedstawionego na pomarańczowej warstwie Internet. Transmission Control Protocol (TCP) nadzoruje ten proces w niebieskiej warstwie Transport; w efekcie TCP i IP współpracują ze sobą. Na samej górze, w warstwie aplikacji, siedzisz przy komputerze i używasz programu pocztowego (aplikacji), który korzysta ze wszystkich warstw poniżej.
Podczas gdy model OSI jest dość abstrakcyjną i akademicką koncepcją, rzadko spotykaną poza książkami i artykułami o sieciach komputerowych, model TCP/IP jest prostszą, łatwiejszą do zrozumienia i bardziej praktyczną propozycją: jest podstawą Internetu – i właśnie tej technologii używasz, czytając te słowa.
Jak widzieliśmy powyżej, wyższe poziomy podstawowych modeli obliczeniowych są niezależne od niższych: możesz na przykład uruchomić przeglądarkę Firefox na różnych systemach operacyjnych Windows lub Linux. To samo odnosi się do modeli sieciowych. Możesz więc uruchomić wiele aplikacji wykorzystujących przełączanie pakietów w Internecie, od WWW i poczty elektronicznej po Skype (VoIP) i telewizję internetową. Komputer można podłączyć do sieci za pomocą WiFi, przewodowego łącza szerokopasmowego lub dialup przez linię telefoniczną (różne formy dostępu do sieci). Innymi słowy, wyższe poziomy modelu wykonują te same zadania, mimo że niższe poziomy działają inaczej.
Sieci w locie
Jak autostrady lub linie kolejowe łączące miasta, sieci komputerowe są często bardzo rozbudowane, dobrze zaplanowane. W czasach, gdy komputery były wielkimi statycznymi pudełkami, które nigdy nie zmieniały się z centrów danych i komputerów stacjonarnych, sieci komputerowe również miały tendencję do bycia dość statycznymi rzeczami; często nie zmieniały się zbytnio z tygodnia, miesiąca lub roku na rok. Internet, na przykład, opiera się na zestawie dobrze zdefiniowanych połączeń zwanych szkieletem Internetu, w tym ogromnych kabli podmorskich, które oczywiście muszą pozostać w miejscu przez lata. To jest sieć komputerowa na jednym z krańców.
W coraz większym stopniu przechodzimy jednak na urządzenia mobilne, które muszą improwizować sieci w miarę poruszania się po świecie. Wi-Fi (bezprzewodowy Ethernet) jest jednym z przykładów, w jaki sposób smartfony, tablety i inne komputery przenośne mogą dołączać do sieci stałych (opartych na „hotspotach” lub punktach dostępu) i opuszczać je w sposób bardzo doraźny. Bluetooth jest jeszcze bardziej improwizowany: pobliskie urządzenia wykrywają się nawzajem, łączą się ze sobą (jeśli użytkownik wyrazi na to zgodę) i tworzą (zazwyczaj) krótkotrwałą sieć komputerową – po czym rozchodzą się w różne strony. Technologie ad hoc, takie jak te, są nadal oparte na klasycznych koncepcjach sieci komputerowych, ale wiążą się z nimi również nowe problemy. Jak urządzenia mobilne wykrywają się nawzajem? Jak jedno urządzenie (np. router Wi-Fi) wie, kiedy inne nagle dołącza lub opuszcza sieć? Jak może utrzymać wydajność sieci, gdy wiele osób próbuje dołączyć w tym samym czasie? Co, jeśli wszystkie urządzenia sieciowe używają nieco innych wersji Wi-Fi lub Bluetooth; czy nadal będą w stanie się połączyć? Jeśli komunikacja jest całkowicie bezprzewodowa, jak można ją odpowiednio zabezpieczyć? Omawiamy tego rodzaju kwestie bardziej szczegółowo w naszych głównych artykułach na temat Wi-Fi i Bluetooth.