Warstwowy model architektury internetowej, cz. I
część I
część II
część III
część IV
Warstwowy
model architektury internetowej
Andrzej Sopala
Czym jest Internet nie trzeba wyjaśniać osobom, które tu
zajrzały. Czym innym jednak jest wiedza na temat zastosowań
Internetu i umiejętność sprawnego korzystania ze wszystkich jego
możliwości, a czym innym wiedza o architekturze Internetu, budowie
oprogramowania sieciowego, wykorzystywanych protokołach i innych
szczegółach.
Opiszemy tu działanie Internetu. Nie będą to bardzo szczegółowe
i teoretyczne rozważania. Będą to podane w skrótowej formie
informacje, terminy i zasady - niezbędne minimum, z którym powinien
się zapoznać Czytelnik, chcący nauczyć się pisania programów
Internetowych.
Najpierw krótko omówimy najważniejsze pojęcia związane z
Internetem, powiemy czym on jest od strony technicznej. Później
przyjrzymy się warstwowej budowie oprogramowania Internetowego.
Poznamy funkcje każdej z warstw i ich współpracę ze sobą.
Artykuł jest
fragmentem z książki Pisanie programów
internetowych publikowanym za uprzejmą zgodą autora
i Wydawnictwa MIKOM.
Księgarnia
internetowaWydawnictwa MIKOM Zamów książkę przez
Internet
1.
Intersieć
Siecią komputerową nazywamy zbiór komputerów i innych urządzeń
połączonych ze sobą przy pomocy pewnego medium, które umożliwia im
komunikowanie się ze sobą. Fizyczna sieć komputerowa to taka, której
składniki połączone są fizycznie i komunikują się przy pomocy tego samego
medium i zestawu protokołów niskiego poziomu np. Ethernet.
Ze względu na zajmowany obszar, sieci komputerowe dzielimy na:
LAN - sieci lokalne; rozpiętość do kilkuset metrów, najczęściej
umiejscowione na terenie jednego budynku;
MAN - sieci metropolitalne; rozpiętość do kilkunastu kilometrów,
najczęściej umiejscowione na terenie miasta, łączy budynki;
WAN - sieci rozległe; bez granicy rozpiętości; może łączyć nawet
kontynenty.
Internet nie jest siecią fizyczną. Realizuje on koncepcję tzw.
intersieci (ang. internet), czyli sieci łączącej sieci (fizyczne)
wszystkich powyższych typów. Opracowano specjalny protokół IP (Internet
Protocol), którego głównym zadaniem jest przekazywanie danych (pakietów
IP) pomiędzy sieciami i kierowanie ich do właściwej sieci i komputera.
Wykonują to komputery zwane routerami, z których każdy należy do kilku
(przynajmniej dwóch) sieci fizycznych. Komunikacja w Internecie oparta
jest więc na technice komutacji pakietów - oznacza to, że pomiędzy dwoma
komputerami nie jest zestawiane fizyczne połączenie (komutacja kanałów -
jak w telefonii klasycznej), ale połączenie jest symulowane poprzez
wymianę pakietów.
2.
Warstwowy model architektury internetowej
W teorii sieci komputerowych bardzo ważne miejsce zajmuje tzw.
warstwowy model sieci. Najczęściej opisuje się go korzystając z - mającej
raczej teoretyczne znaczenie - architektury ISO-OSI, która wyróżnia 7
warstw. Warstwy są to oddzielne części oprogramowania sieciowego
(realizującego funkcje komunikacyjne, organizującego sieć). Jedna warstwa
odpowiada za pewną część funkcji i "kompetencji". Dostarcza usług warstwie
wyższej i korzysta z usług warstwy niższej. Taki modułowy podział
oprogramowania sprzyja większej elastyczności konkretnych rozwiązań.
Łatwiej jest wymienić jeden moduł niż konstruować od początku całe
oprogramowanie sieci.
Ten nieco abstrakcyjny wstęp wyjaśni się już za chwilę, kiedy opiszemy
model warstwowy oprogramowania Internetowego.
Internet korzysta z protokołu TCP/IP. Budowę oprogramowania
realizującego ten protokół można podzielić na cztery warstwy (od
najniższej):
warstwa dostępu do sieci,
warstwa internet (nazywana inaczej sieciową, międzysieciową lub
warstwą IP),
warstwa transportowa,
warstwa zastosowań (nazywana inaczej warstwą aplikacji).
Warstwa zastosowań (aplikacji)HTTP, FTP, SMTP
Warstwa transportowaTCP UPD
Warstwa Internet (międzysieciowa)IP, ICMP
Warstwa dostępu do sieciEthernet, PPP, SLIPRysunek
1. Architektura TCP/IP
Warstwa dostępu do sieci odpowiada za dostarczanie danych do
innych urządzeń bezpośrednio dołączonych do sieci. Współpracuje ona
bezpośrednio ze sprzętem i sterownikami odpowiedzialnymi za współpracę z
siecią. W sieci lokalnej mogą to być Ethernet lub Token-Ring (różne
rozwiązania sieci lokalnych). W przypadku innych sieci mogą to być
protokoły PPP, SLIP lub inne. Warstwa ta współpracuje więc z interfejsem
sieciowym (kartą sieciową), modemem lub innym urządzeniem pozwalającym na
bezpośrednie połączenie dwóch lub więcej komputerów i separuje resztę
warstw od zastosowanych rozwiązań fizycznych (niskopoziomowych). Świadczy
ona usługę warstwie wyższej polegającą na wysyłaniu i odbieraniu porcji
danych (zwanych ramkami) z komputerów w danej sieci fizycznej. Nie
będziemy się więcej zajmować tą warstwą.
Warstwa internet (IP) odpowiada za dostarczanie danych do
urządzeń nie tylko w danej sieci fizycznej. Organizuje ona ruch tzw.
pakietów IP między poszczególnymi sieciami fizycznymi połączonymi w
intersieć. Korzysta z usług warstwy dostępu do sieci, sama zaś świadczy
usługi dostarczania pakietu do dowolnego komputera w Internecie. Napiszemy
o niej więcej w kolejnym podrozdziale.
Warstwa transportowa odpowiedzialna jest za niezawodną wymianę
danych z dowolnym komputerem w Internecie. Organizuje też i utrzymuje tzw.
sesje, czyli wirtualne połączenia między komputerami. Korzysta z warstwy
IP, sama zaś dostarcza usług niezawodnego transportu danych. Tę warstwę
opiszemy dalej.
Warstwa zastosowań jest najwyżej położona. Tej warstwie
odpowiadają wszelkie programy (aplikacje) Internetowe korzystające z
warstwy transportowej. Tu znajdują się wszelkie konkretne zastosowania
Internetu - przesyłanie plików (FTP), poczty (SMTP) i inne. Najwięcej
napiszemy o tej właśnie warstwie - w tym i kilku następnych rozdziałach.
Rysunek 2. Współpraca międzywarstwowa w TCP/IP
Jak już wspomnieliśmy współpraca między warstwami polega na
świadczeniu usług przez warstwy niższe warstwom wyższym. Związane to jest
także z przepływem danych w dół sterty warstw (przy wysyłaniu danych) i w
górę (przy odbieraniu). Moduł warstwy zastosowań (najczęściej program
użytkownika) wysyła dane do warstwy transportowej. Ta odpowiednio
formatuje je (dzieli lub łączy, dodaje nagłówek) i wysyła do warstwy IP.
Ta z kolei dodaje swój nagłówek i wysyła do warstwy dostępu do sieci. Jak
już się domyślamy i ta warstwa dołącza swój nagłówek (związany ze
sprzętowym rozwiązaniem komunikacji, np. tzw. nagłówek MAC) i wysyła
pakiet fizycznie do sieci. Podobna droga, ale w drugą stronę, czeka dane w
komputerze je odbierającym. Pakiet wędruje ku górze i jest pozbawiany
odpowiednich nagłówków, by wreszcie dotrzeć do warstwy zastosowań w formie
identycznej porcji danych jaką wysłała warstwa zastosowań w komputerze
wysyłającym.
Przedstawiony wyżej opis jest faktycznym obiegiem danych. W koncepcji
warstw istnieje jeszcze coś takiego jak wirtualny (logiczny) obieg danych.
Występuje on pomiędzy odpowiadającymi sobie warstwami w odległych
systemach. Warstwy dostępu do sieci wymieniają między sobą ramki - tu
jeszcze wspomniana wirtualność jest mało widoczna. Warstwy IP wysyłają do
siebie pakiety IP - choć w rzeczywistości muszą się ze sobą komunikować
poprzez swoje niższe warstwy, to z logicznego punktu widzenia istnieje
między nimi wirtualne połączenie, które pozwala na wymianę pakietów.
Podobnie jest z warstwami transportowymi, które wysyłają między sobą
poprzez swój wirtualny kanał pakiety danych (segmenty TCP) i inne
komunikaty zapewniające utrzymanie sesji i niezawodne dostarczenia danych
(potwierdzanie). Najciekawszym dla nas jest fakt istnienia wirtualnego
połączenia między warstwami zastosowań. Między nimi istnieje kanał
pozwalający na wysyłanie strumienia danych w obie strony. Tę warstwę
stanowią najczęściej programy Internetowe i z ich punktu widzenia istnieje
bezpośrednie połączenie strumieniowe z innym programem działającym na
komputerze odległym. Dzięki temu programista nie musi znać budowy i zasady
działania warstw niższych - musi jedynie poznać usługi świadczone przez
warstwę transportową. Mimo to pokrótce omówimy dwie środkowe warstwy.
część II
Andrzej Sopala jest studentem Informatyki na Wydziale
Elektroniki, Telekomunikacji i Informatyki Politechniki Gdańskiej o
specjalności Przetwarzanie Równoległe i Rozproszone.
http://www.e-marketing.pl/
Justyna Szumacher (justsz@webmaster.pl)
Wyszukiwarka
Podobne podstrony:
Warstwowy model architektury internetowej, cz IVWarstwowy model architektury internetowej, cz IIIWarstwowy model architektury internetowej, cz IIWarstwowy model architektury internetowej, cz IIWarstwowy model architektury internetowejWarstwowy model architektury internetowejZabawa w detektywa Jak zidentyfikować kogoś w internecie cz 1Ślusarczyk Cz Rola Internetu w edukacji osób niepełnosprawnych2 Model warstwowy szacowaniepoziom rozszerzony cz 1 model odpowiedziF 1 Tranzystor IGBT model warstwowyModel Warstwowy OSIF 8 Model warstwowy tranzystora MOSInternet Archive Search subject ?coration and ornament, Architectural05 GIMP od podstaw, cz 2 Warstwywięcej podobnych podstron