Šioje pamokoje aptarsime kompiuterinių tinklų pagrindus. Tinkamų žinių apie tinklų veikimą reikia kiekvienam sistemų administratoriui. Šiandien dauguma kompiuterių sistemų bendrauja tarpusavyje per tinklus, o ne naudojant fizines laikmenas, tokias kaip USB atmintinės. Tinklai apima visą pasaulį, užtikrina duomenų perdavimą, prieigą prie išteklių, nuotolinį valdymą ir šiuolaikinių paslaugų veikimą. Gilus tinklų technologijų supratimas leidžia efektyviai konfigūruoti ir apsaugoti infrastruktūrą, taip pat greitai aptikti ir šalinti galimus nesklandumus.
Šioje dalyje detaliai nagrinėsime tinklų modelio fizinį lygmenį. Fizinis lygmuo atsakingas už duomenų bitų perdavimą per fizines laikmenas — kabelius, šviesolaidį, belaidžius ryšius. Šiame lygmenyje susipažinsite su kabelių tipais (susukta pora, šviesolaidis, koaksialinis kabelis), jungčių tipais (RJ-45, LC, SC), perdavimo standartais (Ethernet, Wi-Fi, Fast Ethernet, Gigabit Ethernet) bei tinklo adapteriais ir įranga, naudojama duomenų perdavimui.
Fizinio lygmens išmanymas būtinas tinkamam įrangos pasirinkimui ir montavimui, tinklo trikdžių diagnostikai bei užtikrinant stabilų ir greitą duomenų perdavimą. Aptarsime ne tik teorinius pagrindus, bet ir šiuolaikinius standartus (pvz., 10G Ethernet, PoE, Wi-Fi 6), kabelių tvarkymo ir serverinių bei darbo vietų organizavimo principus.
Daug dėmesio skirsime tinklų organizavimui ir konfigūravimui Linux operacinėse sistemose. Be praktinių Linux aspektų, kursas apima pagrindines temas, įtrauktas į tarptautinį Cisco CCNA sertifikatą, todėl suteikia tvirtą teorinį pagrindą ir praktinius įgūdžius profesiniam tobulėjimui tinklų srityje. Įgytos žinios bus naudingos ne tik su Linux, bet ir su kitomis operacinėmis sistemomis bei tinklo įranga.
Šio kurso formatas šiek tiek apriboja galimybes iš karto integruoti praktines užduotis į pirmąsias pamokas. Dėl to didelė dalis teorinės medžiagos bus pateikta be tiesioginio praktinio pritaikymo. Rekomenduojama atidžiai susipažinti su teorija, nes ji sudaro pagrindą vėlesniam praktinių įgūdžių įgijimui. Būkite pasirengę tam, kad šioje kurso dalyje daugiausia dėmesio bus skiriama pagrindinėms sąvokoms ir principams.
Antroje tinklų pamokų ciklo dalyje daug dėmesio bus skiriama praktikai: galėsite patys konfigūruoti tinklus, analizuoti srautą, spręsti realias užduotis ir įtvirtinti žinias praktiniais pratimais. Pasiruoškite — jūsų laukia daug laboratorinių ir praktinių užduočių, kurios leis užtikrintai taikyti įgytas teorines žinias realiose situacijose.
Gali kilti klausimas: kodėl iš karto nepradėti nuo praktinių užduočių? Kodėl reikia gilintis į teoriją, jei praktika atrodo daug įdomesnė? Toks požiūris iš pirmo žvilgsnio tikrai atrodo patrauklus.
Tačiau, norint tinkamai konfigūruoti tinklo įrangą, suprasti jos veikimo principus ir efektyviai diagnozuoti problemas, būtinas tvirtas teorinis pagrindas. Teorija padeda suprasti, kodėl vieni ar kiti procesai įgyvendinti būtent taip, kaip tarpusavyje susiję įvairūs tinklo modelio lygmenys ir kokias pasekmes gali turėti netinkama konfigūracija. Turėdami tokias žinias, galėsite greitai ir teisingai spręsti realias tinklo problemas.
Kaip ir daugelyje kompiuterių mokslo sričių, norint suprasti tinklų veikimą, būtina susipažinti su tam tikromis abstrakcijomis. Pagrindinis tinklų abstrakcijų rinkinys — tai OSI (Atvirų sistemų sąveikos) modelis, kuris padeda sisteminti ir struktūruoti duomenų perdavimo procesus tarp įrenginių.
Prieš pereinant prie pačio OSI modelio, svarbu paaiškinti, kas yra „protokolas“. Tinkluose protokolas (tiksliau, duomenų perdavimo protokolas) — tai taisyklių rinkinys, apibrėžiantis, kaip įrenginiai keičiasi informacija ir bendrauja tarpusavyje. Skirtingiems tikslams ir paslaugoms naudojami skirtingi protokolai, taip optimizuojama tinklų veikla ir užtikrinamas įrangos suderinamumas. Su pagrindiniais protokolais susipažinsite kiek vėliau.
Dabar grįžkime prie OSI modelio. Jis susideda iš septynių lygių (sluoksnių), kurių kiekvienas, išskyrus apatinį — fizinį lygį, yra ankstesniojo abstrakcija. Tokia architektūra sukurta siekiant palengvinti tinklo procesų supratimą, programų projektavimą ir derinimą, taip pat įrangos iš skirtingų gamintojų suderinamumo standartizavimą. Iš pradžių trumpai apžvelgsime visus lygius, o vėliau išsamiau aptarsime pagrindinius iš jų.
+------------------+ +------------------+
| Computer 1 | | Computer 2 |
+------------------+ +------------------+
| Application | <-----> | Application |
+------------------+ +------------------+
| Presentation | <-----> | Presentation |
+------------------+ +------------------+
| Session | <-----> | Session |
+------------------+ +------------------+
| Transport | <-----> | Transport |
+------------------+ +------------------+
| Network | <-----> | Network |
+------------------+ +------------------+
| Data Link | <-----> | Data Link |
+------------------+ +------------------+
| Physical | <-----> | Physical |
+------------------+ +------------------+
| |
+-----------+-----------------+
|
Physical Medium
Kiekvienas OSI modelio lygmuo tiesiogiai bendrauja tik su atitinkamu lygmeniu kitame kompiuteryje. Šis principas vadinamas „peer-to-peer communication“ (vienodo lygio sąveika).
„Fizinė terpė“ (Physical Medium) – tai kabelis, šviesolaidis arba belaidis kanalas, kuriuo tarp įrenginių realiai perduodami duomenų bitai.
1. Fizinio lygmens
Tai vienintelis OSI modelio lygmuo, kuris nėra abstrakcija. Čia kalbama apie realius fizinius įrenginius ir perdavimo terpes: varinius ir šviesolaidinius kabelius, tinklo plokštes, antenas belaidžiam ryšiui, optinius siųstuvus ir imtuvus bei kitus fizinės infrastruktūros komponentus.
Fiziniame lygmenyje perduodami elektriniai arba optiniai signalai, kurie koduoja dvejetainius duomenis (vienetus ir nulius), naudojami taktinių impulsų, įvairių moduliacijų tipai ir signalo lygiai. Viskas, kas susiję su duomenų fiziniu atvaizdavimu, priskiriama šiam lygmeniui.
Žinomiausias ir plačiausiai naudojamas fizinio lygmens protokolas yra Ethernet. Taip pat čia patenka Wi-Fi, DSL, šviesolaidžio technologijos ir kt. Tinkamas fizinės įrangos parinkimas ir konfigūravimas yra būtina sąlyga visos tinklo infrastruktūros darbui.
2. Kanalo lygmuo
Kanalo lygmuo užima tarpinę poziciją tarp fizinio įgyvendinimo ir programinės logikos — jis „viena koja“ stovi aparatinėje įrangoje, kita — abstrakcijoje. Skirtingai nuo fizinio lygmens, čia nereikia rūpintis konkrečiais signalų ar kabelių tipais: kanalo lygmenyje dėmesys skiriamas duomenų perdavimo per fizinę terpę organizavimo taisyklėms.
Pagrindinė kanalo lygmens užduotis — užtikrinti patikimą ir tvarkingą duomenų perdavimą tarp įrenginių viename vietiniame tinkle ar tinkle segmento viduje. Šiame lygmenyje nustatoma kadrų (frames) struktūra, tinklo paketų organizacija, naudojami MAC adresai įrenginių identifikacijai, įgyvendinami klaidų kontrolės ir prieigos prie terpės valdymo protokolai (pvz., CSMA/CD Ethernet tinkle).
Kanalo lygmuo atsiriboja nuo fizinių ypatybių ir leidžia kurti standartinius ryšio kanalus, nepriklausomai nuo naudojamos įrangos. Tai užtikrina, kad įrenginiai galėtų patikimai ir prognozuojamai keistis duomenimis, nesvarbu, koks kabelis ar adapteris naudojamas.
3. Tinklo lygmuo
Tinklo (network) lygmenyje atsiranda IP adresavimo sąvoka. Šis lygmuo – tai IP protokolo (Internet Protocol) „valstybė“, atsakinga už adresavimą ir duomenų paketų maršruto parinkimą tarp skirtingų tinklų.
Pagrindinė tinklo lygmens funkcija – nustatyti, kokiu maršrutu perduoti paketus nuo siuntėjo iki gavėjo, net jei įrenginiai yra skirtinguose vietiniuose ar pasauliniuose tinkluose. Čia įgyvendinamas loginis adresavimas (IP adresai), paketų fragmentavimas ir surinkimas, optimalaus maršruto parinkimas, klaidų apdorojimas.
Tinklo paketų (datagrams) perdavimas šiame lygmenyje laikomas savaime suprantamu dalyku, o administratorius gali atsiriboti nuo kanalo lygmens detalių. Tinklo lygmuo rūpinasi tik maršrutizavimu ir loginiu adresavimu, todėl leidžia kurti lanksčius ir lengvai plečiamus tinklus.
Pagrindiniai šio lygmens protokolai: IPv4, IPv6, ICMP, maršrutizatoriai (router) ir dinaminio maršrutizavimo protokolai (pvz., OSPF, BGP).
4. Transporto lygmuo
Transporto lygmenyje maršrutizavimo klausimai nebesvarbūs — pagrindinė užduotis yra patikimas arba efektyvus duomenų perdavimas tarp programų skirtinguose įrenginiuose. Viskas, ką į šį lygmenį perduoda aukštesnio lygio programos, turi būti persiųsta gavėjui pagal pasirinkto protokolo ypatybes.
Yra du pagrindiniai transporto lygmens protokolai: TCP (Transmission Control Protocol) ir UDP (User Datagram Protocol):
Pasirinkimas tarp TCP ir UDP priklauso nuo programos reikalavimų patikimumui ir perdavimo greičiui.
5. Seanso lygmuo
OSI modelio seanso lygmuo atsakingas už seansų (loginių ryšių) tarp programų užmezgimą, valdymą ir nutraukimą. Šiame lygmenyje jau nesvarbu, kaip duomenys perduodami tinkle — svarbiausia organizuoti loginį bendravimą tarp dviejų galinių taškų. Seansas — tai duomenų mainų seka tarp programų ar įrenginių, dažnai apimanti autentifikavimą, būsenos valdymą ir darbo sinchronizavimą.
Seanso lygmuo leidžia palaikyti kelis vienalaikius prisijungimus, atkurti seansus po sutrikimų ir atskirti duomenų srautus, kai veikia kelios programos vienu metu.
Seanso lygmens protokolų pavyzdžiai: L2TP (Layer 2 Tunneling Protocol), PPTP (Point-to-Point Tunneling Protocol), NetBIOS. Šiuolaikinėse sistemose seansų valdymas dažnai realizuojamas transporto ar taikomajame lygmenyje (pavyzdžiui, HTTP/HTTPS seansų palaikymas vyksta aukštesniame lygmenyje), tačiau VPN, tuneliavimo ar kai kuriuose įmonių sprendimuose seanso lygmens funkcijos išlieka svarbios.
6. Pateikimo lygmuo
Pateikimo lygmuo (Presentation Layer) atsako už tai, kokiu formatu ir pavidalu duomenys perduodami tarp įrenginių. Nors šio lygmens funkcijos ne visada tiesiogiai siejamos su tinklais, jis labai svarbus užtikrinant skirtingų programų suderinamumą keistis informacija.
Šiame lygmenyje vyksta duomenų konvertavimas iš vieno formato į kitą, koduočių keitimas, duomenų glaudinimas, taip pat šifravimas ir dešifravimas saugiam perdavimui. Tai leidžia skirtingoms platformoms ir operacinėms sistemoms suprasti viena kitą, nepriklausomai nuo vidinių duomenų saugojimo ar apdorojimo būdų.
Pateikimo lygmens pavyzdžiai: teksto kodavimas (ASCII, Unicode), multimedijos duomenų formatai (JPEG, MPEG), duomenų struktūrų konvertavimas (pvz., serializacija), taip pat šifravimo protokolų ir standartų (TLS/SSL) taikymas.
7. Taikymo lygmuo
Taikymo lygmuo (Application Layer) – tai lygmuo, kuriame vartotojo programos ir paslaugos tiesiogiai sąveikauja su tinklu. Šiame lygmenyje veikia visi žinomi protokolai, užtikrinantys prieigą prie tinklo programų ir paslaugų: el. paštas (SMTP, IMAP, POP3), žiniatinklio protokolai (HTTP, HTTPS), pranešimų mainai (IRC, XMPP), nuotolinis valdymas (TELNET, SSH), telefonija ir vaizdo konferencijos (SIP) ir daugybė kitų.
Taikymo lygmens užduotis – suteikti sąsają tarp vartotojo, programos ir tinklo paslaugų, taip pat tinkamai apdoroti, formuoti ir perduoti duomenis per tinklą, naudojant atitinkamus protokolus. Šiame lygmenyje vyksta autentifikacija, autorizacija, darbas su failais, žinučių siuntimas ir gavimas, žiniatinklio užklausos bei kiti tiesiogiai vartotojui matomi veiksmai.
Šiandien taikymo lygmuo apima platų tinklo paslaugų spektrą – nuo el. pašto ir svetainių iki momentinių žinučių, VoIP, debesų paslaugų ir daugybės kitų interneto programų.
Panagrinėkime, kaip galima išskaidyti el. laiško siuntimo procesą pagal OSI modelio lygius. Tarkime, siunčiate el. laišką draugui:
Realiame gyvenime OSI modelio lygių izoliacija beveik niekada nebūna ideali. Kuriant ir naudojant programas, lygmenys dažnai persidengia – daug šiuolaikinių protokolų apima kelių lygmenų funkcijas, kad duomenų apdorojimas būtų paprastesnis ar spartesnis.
Vis dėlto toks suskaidymas leidžia aiškiai suprasti, kaip vyksta duomenų mainai tinkle. OSI modelis suteikia sisteminį požiūrį į tinklo problemų diagnostiką: jei kyla sutrikimas, svarbu nustatyti, kuriame lygmenyje jis pasireiškia, – taip galima greičiau susiaurinti galimų priežasčių ratą ir greičiau pašalinti nesklandumus.
Kuo tiksliau nustatysite lygmenį, kuriame kilo problema, tuo paprasčiau automatizuoti diagnostiką, sukonfigūruoti stebėseną ar net užkirsti kelią sutrikimams dar iki tol, kol jie paveiks vartotojus ar paslaugas.
Toliau išsamiai aptarsime fizinį lygmenį.