Co to jest interfejs sieciowy ?
-
Najogólniej interfejsem sieciowym w systemach linux nazywamy
urządzenia logiczne pozwalające na nawiązywanie połączeń różnego
typu.
-
Należy jednak pamiętać iż mówiąc interfejs sieciowy nie mamy
zawsze na myśli karty sieciowej. Interfejsem sieciowym jest np.
pętla zwrotna (lo). Mogą nim być też tunele VPN lub inne
programy i urządzenia pozwalające na komunikację z lokalnym lub
zdalnym hostem.
-
Tak więc interfejs często jest reprezentacją sterownika karty
sieciowej w systemie ale może też być urządzeniem "wirtualnym"
które realizuje programowo pewne zadania.
Intranet - sieć komputerowa ograniczająca się do komputerów w np. firmie lub organizacji. Po zamontowaniu serwera, umożliwiającego korzystanie w obrębie sieci LAN z usług takich, jak strony WWW, poczta elektroniczna itp., czyli usług typowo internetowych, można mówić o intranecie. Do intranetu dostęp mają zazwyczaj tylko pracownicy danej firmy.
Intranet przypomina Internet, z tym jednak zastrzeżeniem, że jest ograniczony do wąskiej grupy osób (np. pracowników firmy).
Kiedyś intranety działały tylko w zamkniętych sieciach wewnętrznych firm. W obecnych czasach intranet wychodzi poza firmę (można się zalogować do zasobów firmy z Internetu np. poprzez login i hasło lub bardziej zaawansowane zabezpieczenia).
Przykładem intranetu jest północnokoreański Kwangmyong - sieć przeznaczona dla mieszkańców tego kraju, którzy poza nielicznymi wyjątkami nie mają dostępu do ogólnoświatowego Internetu.
Funkcje intranetu
W początkowej fazie rozwoju intranety były biuletynami informacyjnymi (niektóre firmy mogły zrezygnować z dotychczasowego biuletynu wydawanego w formie drukowanej). Obecnie intranet może pełnić więcej funkcji, na przykład umożliwiać dostęp do innych systemów firmy.
Intranet umożliwia rozproszone korzystanie z następujących elementów:
systemu wymiany danych dla działów firmy (księgowości, działu kadr, magazynu itp.)
systemu pracy grupowej
systemu obsługi klienta i CRM
biuletynu informacyjneg
Pakiet internetowy - pakiet powiązanych programów komputerowych służących do korzystania z usług internetowych.
Składniki
Nieodzownym składnikiem pakietu internetowego jest przeglądarka stron WWW. Pozostałe składniki poszczególnych pakietów internetowych są zróżnicowane. Najczęściej występującymi dodatkowymi składnikami pakietów internetowych są: klient poczty elektronicznej (wraz z czytnikiem kanałów oraz książką adresową), klient Usenetu, klient IRC, menedżer pobierania plików.
Dodatkowymi składnikami mogą być również: edytor HTML, komunikator internetowy, klient BitTorrent, środowisko dla widżetów, notes elektroniczny, czy zewnętrzna aplikacja do słuchania radia przez Internet.
Przykłady
Transmission Control Protocol
Transmission Control Protocol (TCP) - połączeniowy, niezawodny, strumieniowy protokół komunikacyjny wykorzystywany do przesyłania danych pomiędzy procesami uruchomionymi na różnych maszynach, będący częścią szeroko wykorzystywanego obecnie stosu TCP/IP - korzysta z usług protokołu IP do wysyłania i odbierania danych oraz ich fragmentacji wtedy, gdy jest to konieczne[1]. Protokół TCP operuje w warstwie transportowej modelu OSI. Został opracowany bazując na badaniach Vintona Cerfa oraz Roberta Kahna[1][2] i jest opisany w dokumencie RFC793.
Charakterystyka protokołu
TCP jest protokołem działającym w trybie klient-serwer. Serwer oczekuje na nawiązanie połączenia na określonym porcie. Klient inicjuje połączenie do serwera.
W przeciwieństwie do UDP, TCP gwarantuje wyższym warstwom komunikacyjnym dostarczenie wszystkich pakietów w całości, z zachowaniem kolejności i bez duplikatów. Zapewnia to wiarygodne połączenie kosztem większego narzutu w postaci nagłówka i większej liczby przesyłanych pakietów. Chociaż protokół definiuje pakiet TCP, to z punktu widzenia wyższej warstwy oprogramowania, dane płynące połączeniem TCP należy traktować jako ciąg oktetów. W szczególności - jednemu wywołaniu funkcji API (np. send()) nie musi odpowiadać wysłanie jednego pakietu. Dane z jednego wywołania mogą zostać podzielone na kilka pakietów lub odwrotnie - dane z kilku wywołań mogą zostać połączone i wysłane jako jeden pakiet (dzięki użyciu algorytmu Nagle'a). Również funkcje odbierające dane (recv()) w praktyce odbierają nie konkretne pakiety, ale zawartość bufora stosu TCP/IP, wypełnianego sukcesywnie danymi z przychodzących pakietów.
Nawiązywanie połączenia
three-way handshake
W protokole TCP do nawiązania połączenia pomiędzy dwoma hostami wykorzystywana jest procedura nazwana three-way handshake. W sytuacji normalnej jest ona rozpoczynana, gdy host A chce nawiązać połączenie z hostem B, procedura wygląda następująco[1]:
host A wysyła do hosta B segment SYN wraz z informacją o dolnej wartości numerów sekwencyjnych używanych do numerowania segmentów wysyłanych przez host A (np. 100) a następnie przechodzi w stan SYN-SENT,
host B, po otrzymaniu segmentu SYN, przechodzi w stan SYN-RECEIVED i, jeżeli również chce nawiązać połączenie, wysyła hostowi A segment SYN z informacją o dolnej wartości numerów sekwencyjnych używanych do numerowania segmentów wysyłanych przez host B (np. 300) oraz segment ACK z polem numeru sekwencji ustawionym na wartość o jeden większą niż wartość pola sekwencji pierwszego segmentu SYN hosta A, czyli 101.
host A, po odebraniu segmentów SYN i ACK od hosta B przechodzi w stan ESTABLISHED i wysyła do niego segment ACK potwierdzający odebranie segmentu SYN (numer sekwencji ustawiony na 301)
host B odbiera segment ACK i przechodzi w stan ESTABLISHED
host A może teraz rozpocząć przesyłanie danych
Jeśli host odbierający połączenie nie chce lub nie może odebrać połączenia, powinien odpowiedzieć pakietem z ustawioną flagą RST (reset).
Transmisja danych
W celu weryfikacji wysyłki i odbioru TCP wykorzystuje sumy kontrolne i numery sekwencyjne pakietów. Odbiorca potwierdza otrzymanie pakietów o określonych numerach sekwencyjnych ustawiając flagę ACK. Brakujące pakiety są retransmitowane. Host odbierający pakiety TCP defragmentuje je i porządkuje je według numerów sekwencyjnych tak, by przekazać wyższym warstwom modelu OSI pełen złożony segment.