Hálózatok

A számítógépek egymással történő összekötésének igénye már szinte a kezdetektől felmerült. Eleinte elsősorban azért volt erre igény, hogy az egyes számítógépeket minél hatékonyabban ki lehessen használni, minél többen fel tudják azokat használni munkájukhoz. Éppen emiatt eleinte a számítógépeket nem is annyira egymással kötötték össze, hanem egyszerű kis gépekkel, amelyek egy billentyűzetből és egy kimeneti egységből (monitorból, vagy nyomtatóból) álltak, és semmi másra nem voltak képesek, mint lehetővé tenni egy felhasználónak, hogy a valahol távolabb levő számítógéppel kommunikálni tudjon. A parancsokat a billentyűzeten lehetett begépelni, amit a hálózaton keresztül a számítógép megkapott; a gép válaszai pedig a kimeneti egységen íródtak ki.

Amíg csak számításokra vagy szöveges információk feldolgozására használták a számítógépeket, addig ezek a terminálok elegendőnek is bizonyultak. Később azonban már a számítógépek közti kommunikáció is felmerült igényként. Ez ugyanis lehetővé tette több számítógép összekapcsolását, hogy ugyanazt a feladatot közösen oldják meg, ami hatékonyabb működést tett lehetővé.

Ezen igények alapján sokféle módszert dolgoztak ki a számítógépek összekapcsolására. Segített ebben, hogy az összekapcsolt gépek többsége a UNIX valamelyik változatával működött, így könnyebben el lehetett érni, hogy a gépek megértsék egymást.

Az 1960-as évek elején azután ARPANET néven kidolgoztak egy hálózati rendszert, amely először az Egyesült Államok hadügyi rendszerének hálózata lett. Ebből azután egy olyan rendszer épült ki, amely az Egyesült Államok egyetemein működő minden gépet összekötött (ezek egy része is hadászati fejlesztéseken dolgozó gép volt). Később katonai jellegét elvesztette a rendszer, és nemzetközivé vált. Mára ezt a rendszert Internet néven ismerjük...

Manapság már nehéz elképzelni a számítástechnikát hálózat alkalmazása nélkül. A továbbiakban a hálózatok általános jellemzése, majd néhány speciális hálózati operációs rendszer, és hálózati szolgáltatás ismertetése következik.

Számítógépek összekapcsolási módjai

Technikailag a számítógépek összekapcsolására számos módszer áll a rendelkezésünkre. Ezek némelyike kábeles kapcsolatot igényel, más változata kábelnélküli kapcsolatot jelent. Lássuk először a legelterjedtebb eszközöket a számítógépek fizikai összekötésére:

Hálózatok csoportosítása méret alapján

A számítógépes hálózatokat a kiterjedésük alapján is csoportosíthatjuk. Ez a csoportosítás tulajdonképpen a hálózat jellegét, kialakítási módját is meghatározza.

  1. LAN Local Area Network: Helyi hálózat, például egy iskola vagy egy cég belső számítógépeit összekötő hálózat. Általában néhány kilométernél nem nagyobb kiterjedésű, egy-két épületben elhelyezett számítógépeket köt össze. Koaxiális vagy UTP kábelt szokás alkalmazni.
  2. MAN Metropolitan Area Network: Legfeljebb egy városnyi méretű számítógépes hálózat, amely több LAN-t köt össze egy egységes hálózattá. A LAN-ok közti kapcsolatban már előfordul az optikai kábel vagy a rádiófrekvenciás kapcsolat alkalmazása. Például egy cégnek a város különböző részein található telephelyeit köti össze, de egy teljes várost behálózó közhasznú hálózat is lehet a MAN.
  3. WAN Wide Area Network: Nagy méretű hálózat. Egy egész országot lefedő, vagy akár nemzetközi méretű hálózat is lehet, amely már műholdas kapcsolatot is igénybe vehet a kapcsolat fentartásához. Ilyen hálózat tulajdonképpen az Internet is, de egyes cégeknek, szervezeteknek az Internettől független saját hálózatuk is létezik, amely szintén a WAN kategóriájába esik.

Hálózati topológiák

A számítógépek közti összekapcsolás logikai szerkezetét nevezzük a hálózat topológiájának. Majdnem azt mondhatjuk, hogy ahány hálózat, annyifajta topológia létezik, azonban van néhány alapvető topológia, amelyekre épülve, azok összekapcsolásával tetszőleges hálózat kialakítható. Ezek az alap topológia-típusok a következők:

Üzenettovábbítási módok

Az előzőekből talán már sejthető, a hálózatok között az üzenettovábbítás módjában is van különbség.

Vannak olyan hálózatok, mint például a gyűrű-topológia esetén az IBM Token-Ring nevű hálózata is, amely előre elkészített csomagokon szállítja az adatokat. Ezt úgy lehet szemléletesen elképzelni, hogy egy teherautó előre meghatározott menetrend szerint végigjárja az állomásokat (ezek a számítógépek), és ha valahol áru (üzenet) van, azt felveszi, és végiglátogatva az állomásokat, megkeresi a címzettet. A címzett leveszi az árut a teherautóról, amely ezzel újabb áru szállítására válik alkalmassá. Ezt a fajta üzenetküldést nevezzük csomagtovábbításnak, vagy tokentovábbításnak.

A másik lehetőség, hogy hagyunk mindenkit egyszerre beszélni, és egyszerre hallgatózni. Ennek általában hatalmas hangzavar szokott az eredménye lenni, azonban, ha egyszerre csak egy feladó van, akkor a sok potenciális címzett közül a megfelelő könnyen megkapja az üzenetet, nem kell kivárnia, amíg a postás mindenkitől megkérdezi, hogy ő-e az. A hangzavar elkerülhető, ha jólnevelt feladókkal dolgozunk: ha éppen küld valaki valamilyen üzenetet, akkor más nem kezd el beszélni. Ekkor már csak egy probléma lehet: ha teljesen egyszerre kezdenek el adni ketten. Ekkor mindkettejük üzenete elvész, és ezért egy véletlenszerű várakozás után meg kell ismételni az adást. (Azért véletlenszerű idő elteltével, mert ha meghatározott várakozást tartanának be, akkor ismét egyszerre kezdenének beszélni.) Ezt a rádiózáshoz hasonló megoldást nevezzük üzenetszórásnak, vagy angolul broadcastingnak.

Mindkét megoldásnak vannak előnyei és hátrányai egyaránt, így nem csoda, hogy mindkettő elterjedt. A csomagtovábbításnak előnye lehet, hogy az adattovábbítás sebessége aránylag független a forgalomtól. Ellenben az üzenetszórás gyorsabb lehet, azonban ha nagy az üzenetforgalom, akkor az egymást gyakran kioltó üzenetek miatt nagyon lelassulhat a hálózati adatátvitel.

Azt, hogy egy hálózaton egy adott idő alatt mekkora adatmennyiséget lehet továbbítani az egyik számítógéptől a másikig, sávszélességnek nevezzük, és a másodpercenként továbbított bitek számával adjuk meg. Ez alapján tehát a csomagtovábbításos rendszerek sávszélessége alacsony de állandó, míg az üzenetszórásos technika kis forgalom esetén nagy sávszélességet, nagy forgalom esetén akár végtelenül kis sávszélességet is produkálhat.

Ott tehát, ahol mindenképpen garantálni kell egy megadott sávszélességet, az előbbi technikát célszerű alkalmazni, míg ha változhat a sávszélesség, de általában mégis szeretnénk gyors hálózatot, akkor érdemes az üzenetszórással próbálkozni.

Hálózati szolgáltatások

A hálózatok sokféle szolgáltatást tudnak nyújtani. Hogy pontosan milyen szolgáltatást nyújt egy adott hálózat, az függ az operációs rendszertől is, amelyek közül a következőkben kettőt kicsit részletesebben is megismerünk majd. Előbb azonban lássuk általában, mire használjuk a hálózatot:

Fontosabb hálózati alkalmazási területek

Szinte a kezdetektől használták a hálózatot távoli gépek elérésére, az azokon elérhető programok felhasználása céljából. Az eredeti nagygép-terminálok megoldás is tulajdonképpen erre szolgált.

Nem sokkal később merült fel az igény, hogy a hálózatokon keresztül a felhasználók is tarthatják egymással a kapcsolatot. Ebből származó szolgáltatás volt eredetileg az elektronikus levelezés, majd az interneten az ezzel rokon valós idejű ,,beszélgetés'', ahol az egyik felhasználó üzenete azonnal megjelenik a másik felhasználónál. Ennek legelterjedtebb fajtáját ismerik az internetezők IRC néven.

További fontos alkalmazása a hálózatoknak a ritkábban használt, vagy drágán üzemeltethető erőforrások megosztása. Ilyen tipikusan a nyomtatás, amiből minden felhasználó számára külön nyomtató beszerzése drága, és sok esetben fölösleges lenne. Ehelyett a hálózat lehetővé teszi, hogy minden felhasználó ugyanazt a nyomtatót, vagy ugyanazokat a nyomtatókat használja. Ilyenkor persze az egyszerre jelentkező nyomtatási igényeket a hálózatot felügyelő programnak megfelelően rangsorolnia kell egy nyomtatási sor segítségével.

Nagyon fontos hálózati alkalmazásnak számít a nagymérerű adatbázisok kezelése. Vannak olyan gépek, amelyek semmi más célt nem szolgálnak, mint adatbázist tárolnak, és más számítógépek számára elérhetővé tesznek. Ugyanakkor az is lehetséges, hogy egy adatbázis különböző részei egymástól távoli gépeken legyenek elhelyezve, a használat során azonban ez az osztott adatbázis mégis egységes egészként álljon a felhasználók rendelkezésére.

Hálózati operációs rendszerek

A hálózati operációs rendszereknek két fajtája van, az egyik egy olyan szoftver, amelynek egyetlen feladata, hogy a hálózat működését felügyelje, irányítsa. Ez a szoftver található a hálózat kiszolgálóján, mint operációs rendszer. Ekkor ezen a gépen más programot tulajdonképpen nem is lehet futtatni, egyedül a rendszergazdának biztosít a gép beleszólást a hálózat működésébe. Ilyen hálózati kiszolgáló rendszerre példa a Novel Netware.

A másik hálózati operációs rendszer tulajdonképpen egy hagyományos értelemben vett operációs rendszer, amely hálózatkezelő funkciókkal is rendelkezik. Ebben az esetben értelemszerűen a számítógépet rendes számítógépként lehet használni, miközben az más számítógépeket is kiszolgál a hálózaton keresztül. Erre az egyik legjobb példa a korábban már említett UNIX operációs rendszer, amely a nagygépek operációs rendszereként már a 60-as évek óta ellát hálózatkezelő funkciókat.

Novel Netware

Elsősorban LAN-ok kiszolgálóihoz készített szoftver, amely lehetővé teszi a munkaállomások számára az állományok megosztását. Ehhez a munkaállomáson kezdetben DOS, később Windows illetve OS/2 fut(ott).

A kiszolgáló az állományok közös elérését hálózati meghajtókon keresztül teszi lehetővé. Ezek a meghajtók a gép saját háttértáraihoz hasonlóan használhatók. Tehát valójában egy központi háttértár szerepét látja el a kiszolgáló. Ezt a funkciót nevezik a Novel-nél file-servernek.

Másik szolgáltatás a hálózati nyomtató, vagyis a print-server. A munkaállomáson kezdeményezett nyomtatás hatására a kinyomtatandó dokumentum a kiszolgáló nyomtató-sorába kerül. Ahonnan a kiszolgáló már a munkaállomástól függetlenül végzi a nyomtatást. A nyomtató csatlakozhat közvetlenül a központi géphez, vagy a hálózathoz egyaránt.

Harmadik szolgáltatása a Novel hálózatoknak a mail-server. Ez egy belső levéltovábbítási rendszer a felhasználók között. Egyszerű szöveges leveleket tud továbbítani a felhasználó azonosítója alapján.

Internetes szolgáltatások

A UNIX szolgáltatásainak ismertetése tulajdonképpen megegyezik az internetes szolgáltatások ismertetésével, hiszen a UNIX operációs rendszer alatt dolgozták ki az internetes szolgáltatásokat. Lássuk a legelterjedtebbeket:

Természetesen egy UNIX rendszer is képes arra, hogy hálózati nyomtatót üzemeltessen a felhasználók számára, azonban az internetről akárki nem veheti ezt igénybe, csak az adott gépre bejelentkezett felhasználók, illetve akik olyan gépre jelentkeztek be, amelyhez az adott nyomtató tartozik.

Hasonló módon lehet bejelentkezett felhasználókra korlátozni az adatbázisok elérését is. Azonban egyre inkább terjed erre a célra a webes felület alkalmazása, vagyis amikor hipertext-dokumentumon keresztül lehet az adatbázisban tárolt információkat lekérdezni. Ilyenre példa a vasúti menetrend is, amelyben adott napra szóló utazás megtervezéséhez is lehet információt találni. Ilyenkor is lehet persze az adatokhoz való hozzáférést jelszóhoz kötni.

Hálózati jogosultságok

Ezzel tulajdonképpen el is érkeztünk a felhasználó azonosításának és jogainak meghatározásához. Két fontos biztonsági kérdésről kell szót ejteni: hogyan biztosítható a felhasználóknak a gép használata, és adataik biztonsága más felhasználókkal szemben; illetve mihez van joga az egyes felhasználóknak?

A felhasználó azonosítása

Először is a felhasználót mielőtt a hálózat szolgáltatásainak használatát lehetővé tesszük, egyértelműen azonosítani kell, és meg kell győződni arról, hogy joga van-e használni a rendszert.

Erre az azonosításra szolgál a felhasználói azonosító és a jelszó. Az azonosító egy nyilvános név, amelyen keresztül az illető felhasználónak a többiek is tudnak üzenetet küldeni. A legtöbb rendszerben a levélcím is az azonosítót tartalmazza. Ugyanakkor a jelszó egy titkos adat, amelyet elvileg csak maga a felhasználó ismer, így az azonosító és a jelszó együttes megadása egyértelmű azonosítást tesz lehetővé, és ugyanakkor garantálja is a felhasználónak, hogy más nem férhet hozzá az ő adataihoz.

UNIX rendszerekben a jelszót úgy tárolják, hogy egy titkos algoritmussal a jelszóból előállítanak egy teljesen új jelsorozatot, és ezt tárolják el. Az algoritmus vissza nem fordítható módon végzi mindezt, így még ha más hozzá is fér a jelszó tárolt alakjához, akkor sem képes a jelszót kideríteni. A bejelentkezésnél a begépelt jelszót ugyanazzal a módszerrel elkódolják, és akkor tekinti a rendszer helyesnek a jelszót, ha a két kódolás eredménye ugyanaz a jelsorozat.

A megfejthetetlenséghez azonban bizonyos szabályokat be kell tartani:

Felhasználói jogosultságok

Miután bejelentkeztünk, a hálózat által számunkra biztosított jogoknak megfelelően tevékenykedhetünk. Hogy milyen jogosultságok léteznek, az hálózati operációs rendszertől is függ. A UNIX rendszereken egységes jogosultsági rendszer használatos, amely három kategóriába osztja a felhasználókat minden egyes állomány esetében:

  1. Az állomány tulajdonosa
  2. Az a csoport, amelyhez az állomány tulajdonosa tartozik (pontosabban amely csoportba ezek közül az állományt a tulajdonosa sorolta)
  3. Mindenki egyéb felhasználó

Ezen három kategórián belül ugyanazok a jogok adhatók, illetve vonhatók meg:

Novel Netware esetén ennél sokkal bonyolultabb, de hasonló logikájú jogosultsági rendszer létezik. Ott például külön létrehozási, törlési illetve módosítási jogok léteznek. Ezenkívül más felhasználónak jogok megadása sokkal körülményesebb lehet.

Ellenőrző kérdések:

  1. Milyen módon lehet számítógépek között kapcsolatot létesíteni fizikailag?
  2. Csoportosítsd a hálózatokat kiderjedtségük szerint!
  3. Milyen topológiák léteznek, és melyiknek mi a jellemzője?
  4. Mi a különbség a csomagtovábbítás és az üzenetszórás között?
  5. Mit nevezünk sávszélességnek?
  6. Milyen szolgáltatásokat nyújt a NOVEL rendszer?
  7. Sorold fel az internetes szolgáltatásokat, és a UNIX által nyújtott hálózati szolgáltatásokat!
  8. Mi a szerepe az azonosítónak és a jelszónak?
  9. Milyen szabályok vonatkoznak a jelszóra?
  10. Milyen típusú felhasználói jogosultságok léteznek?