1. KT sąvokos, tinklų skirstymas pagal perdavimo technologiją (broadcast, point-to-point, jų topologijos), pagal mastelį. 2. KT architektūros pagrindinės sąvokos, jų tarpusavio sąryšis (lygiai, protokolai, servisai, interfeisai). 3. Paslaugų (services) tipai, primityvai, partnerių sąveikos modelis. Servisų ir protokolų sąryšis. 4. OSI sluoksninis modelis. Sluoksnių funkcijos ir charakteristika. 5. TCP/IP modelis, jo sluoksniai. 6. TCP/IP ir OSI modelių palyginimas, OSI kritika, TCP/IP kritika. 8. Adresų rezoliucijos problema, ARP protokolas. 9. RARP protokolas. 10. IP protokolas - pagrindiniai veikimo principai. Datagramų perdavimas, fragmentacija. Datagramos formatas, laukų paaiškinimas. 11. IP datagramų maršrutizavimas. 12. Gaunamų datagramų apdorojimas. 13. ICMP protokolas. 14. IPv6. Naujos versijos tikslai. Adresai. IPv6 datagramų antraščių (headers) principai. Pagrindinės antraštės laukai. 15. Transporto lygis, jo pateikiami servisai. 16. Programų adresavimo problema, portai. 17. UDP protokolas. 18. TCP protokolas. Savybės, patikimo duomenų perdavimo užtikrinimo būdai. Ryšio užmezgimo ir nutraukimo principas. 19. TCP bei UDP duomenų validavimas. 20. Socket'ai. Jų tipai, pagrindinės operacijos. Programų tarpusavio bendravimo per socket'us schema. 21. OSI kanalinis lygis. Projektavimo klausimai. 22.MAC polygis, jo sprendžiamos problemos. FDM, TDM. Protokolai (pure ALOHA, slotted ALOHA, CSMA, CSMA/CD (su collision detection), protokolai be kolizijų, riboto varžymosi protokolai, adaptive tree walk protokolas). 23.MAC polygio protokolai naudojami su bevielėmis komunikacijomis. 24.IEEE standartai 802.3 - CSMA/CD (Ethernet), Mančesterio kodai, 802.4 - token bus, 802.5 - token ring. 25.Binary exponentional backoff algoritmas. 26.Switcho veikimo principas. 27.Tinklų standartų 802.3, 802.4, 802.5 palyginimas – pranašumai, trūkumai. 28.LLC polygis, Bridge’ai. 29. Tinklo lygis. Pagrindinės funkcijos, serviso transporto lygiui pateikimas, vidinės potinklio struktūros variantai. 30. Maršrutizavimo alg. Maršrut. trumpiausiu keliu, užtvindymas, nuotolių lentelės metodas, hierarchinis maršrutizavimas. 32. Persipildymo (congestion) valdymas. leaky bucket, token bucket, load shedding, choke paketai, RSVP. 33. Internetworking. Tunneling, paketų fragmentacija. 1 Kompiuterių tinklas – tarpusavyje sujungtų savarankiškų kompiuterių aibė. Kompiuteriai tarpusavyje sujungti, jei jie gali keistis informacija. Mainframe su terminalais nėra kompiuterių tinklas. Kompiuterių tinklas nėra paskirstyta sistema. Paskirstyta sistema yra programinė įranga, veikianti naudodama kompiuterių tinklų galimybes. Kompiuterių tinklų taikymai. Tinklai organizacijoms: Resursų dalijimasis, Patikimumas, Pinigų taupymas, Bendravimo priemonė. Tinklai žmonėms: Nutolusios informacijos pasiekimas (Elektroninis banko sąskaitų valdymas, on-line parduotuvės), Bendravimas tarp asmenų (e-mail, “chat”, video konferencijos).Kompiuterių tinklų klasifikacija. Pagal duomenų perdavima: Broadcast tinklai - Turi vieną ryšio kanalą, kurį bendrai naudoja visi kompiuteriai tinkle. Kompiuteriai siunčia trumpus pranešimus, vadinamus paketais (packets). Siunčia vienas, gauna visi. Point-to-point tinklai – Sudaryti iš daugelio sujungimų tarp individualių kompiuterių porų. Paketai nueina adresatui per keletą tarpinių stočių. Pagal dydi: 0.1m ploksteje (Data flow machines), 1m sistemoje (multicomputer), LAN: 10m kambaryje, 100 pastate, 1km kvartale, MAN: 10km mieste, WAN: 100km valstybeje, 1000km kontinente, INTERNET: 10000km planetoje. 2 Tinklų programinė įranga. Tinklai yra organizuoti kaip lygmenų (sluoksnių) serijos. Lygmenų skaičius, pavadinimai, realizacija, funkcijos skirtinguose tinkluose gali skirtis. Tačiau visur kiekvieno lygmens paskirtis yra pateikti tam tikrus servisus aukštesniam lygmeniui, apsaugant jį nuo detalių kaip tie servisai iš tiesų realizuoti. Lygmuo n vienoje mašinoje komunikuoja su lygmeniu n kitoje. Komunikavimui yra naudojamas n lygio protokolas. Protokolas – susitarimų ir taisyklių rinkinys, naudojamas komunikacijai. To paties lygio bendraujančios esybės skirtingose mašinose yra vadinamos peers. Protokolas yra serviso realizacija. Kiekvienas aukštesnis lygmuo naudojasi žemesnio lygmens pateiktu interfeisu, kad pasiekti servisą. Projektuojant kompiuterių tinklus, svarbiausiai yra aiškiai apibrėžti kiekvieno lygio interfeisus.Kompiuterių tinklų architektūra – lygių ir protokolų rinkinys. Protokolų rinkinys konkrečioje sistemoje vadinamas protokolų steku (protocol stack), pvz. TCP/IP protokolų stekas. KT sistemų skirstymo sluoksniais principai: 1) Esybių adresavimas 2) Duomenų perdavimo taisyklės (simplex, half-duplex, full-duplex, loginių kanalų skaičius vienam sąryšiui, jų prioritetai) 3) Klaidų kontrolė 4) Siunčiamų pranešimų tvarka 5) Perdavimo greitis 6) Siunčiamų pranešimų dydis 7) Multiplexing/demultiplexing 8) Pranešimų maršrutizavimas 3 Kontaktiniai (connection-oriented) ir nekontaktiniai (connection-less) servisai. Lygiai aukštesniesiems lygiams gali pasiūlyti dviejų tipų servisus: Kontaktinis (telefono modelis), Nekontaktinis (pašto sistemos modelis).Servisų primityvai. Servisas formaliai nusakomas primityvų (operacijų) aibe, pateikiama vartotojui ar kitai esybei. Primityvai pasako servisui atlikti kokį nors veiksmą, arba informuoja apie partnerio (peer) atliktą veiksmą. Primityvų klasifikacija:Užklausimas (REQUEST) - objektas reikalauja serviso atlikti tam tikram darbui. Požymis (INDICATION) – objektas informuojamas apie įvykį. Atsakymas (RESPONSE) – objektas nori reaguoti į įvykį. Patvirtinimas (CONFIRM) – objektas turi būti informuotas apie paklausimą.Servisų ir protokolų sąryšis.Servisas – primityvų aibė, kurią lygis pateikia aukštesniam lygiui. Servisas apibrėžia kokius veiksmus lygis yra pasiruošęs atlikti vartotojams, bet nieko nenurodo apie realizaciją. Protokolas – taisyklių aibė, reguliuojanti freimų, paketų, pranešimų, kuriais apsikeičia objektai partneriai, formatą ir prasmę. Protokolas yra serviso realizacija. 4 OSI modelis (Open Systems Interconnection)Pasiūlytas ISO 1983 metais kaip pirmas bandymas standartizuoti protokolus kiekviename lygyje. Pats OSI modelis nėra tinklo architektūra, nes: 1) Nespecifikuoja tikslių servisų ir protokolų 2) Specifikuoja tik kiekvieno lygio funkcijas 3) ISO yra išleidę atskirus standartus kiekvienam lygiui Pagrindiniai lygių skirstymo principai:1) Lygis kuriamas tuomet, kai reikalingas naujas abstrakcijos lygmuo 2) Kiekvienas lygis atlieka gerai apibrėžtas funkcijas Kiekvieno lygio funkcijos turi būti parenkamos atsižvelgiant į tarptatuinius protokolų standartus 3) Informacijos srautas tarp skirtingų lygių interfeisų turi būti minimizuotas 4) Lygių turi būti pakankamai, kad skirtingos funkcijos nebūtų suplaktos į vieną ir ne per daug, kad architektūra nepasidarytų nevaldoma.OSI lygių funkcijos:Fizinis lygis (physical layer): 1) Bitų perdavimas komunikacijos kanalu. Kiek voltų yra 0, kiek 1? Kiek mikrosekundžių bitas trunka? Ar galimas dupleksas? Jungčių skaičius ir paskirtis? 2) Perdavimo priemonės, jų fizinės charakteristikos 3) Duomenų kanalo perdavimo greitisKanalinis lygis (data link layer): 1) Švarios ryšio linijos tarp dviejų mazgų pateikimas tinkliniam lygiui, pasinaudojant fiziniu lygiu 2) Informacijos skirstymas “freimais” (frame); Grupavimas, pasiuntimas, patvirtinimas, freimų ribos; Klaidas randantys ir klaidas taisantys kodai 3) Freimų unikalumo ir korektiškumo užtikrinimas 4) Greito siuntėjo ir lėto priėmėjo problema – srauto kontrolė 5) Bendrai naudojamo duomenų perdavimo kanalo kontroliavimas 6) Jei naudojamas dupleksas, patvirtinimai gali susikirsti su duomenimisTinklo lygis (network layer) 1) Darbo potinklyje valdymas 2) Paketų siuntimas iš “source” į “destination” hostus – maršrutizacija 3) Tinklo užsikimšimo valdymas (congestion) 4) Tinklo transporto apskaita 5) Heterogeniškų tinklų apjungimas – internetworking: Adresavimo klausimai; Paketų dydžiai; Protokolų skirtumaiTransporto lygis (transport layer) 1) Jei reikalingas Duomenų padalijimas ir perdavimas tarp programinų esybių galutinėse sistemose (end-point hosts) 2) Kanalo pateikimas kiekvienai aplikacijai, derinimasis prie tinklo lygio ryšio kanalų 3) Unikalumo ir korektiškumo užtikrinimas 4) Serviso kokybės (QoS) valdymas 5) Srauto kontrolė ir buferizavimas Seanso lygis (session layer) 1) Nustatymas seansų tarp aplikacijų. Transporto lygio servisų praplėtimas 2) Dialogo kontrolė 3) Markerio (token) valdymas. Kai kuriuose protokoluose svarbu, kad abi pusės nepradėtų tos pačios operacijos vienu metu. 4) Sinchronizacija (checkpoints). Siuntimo atstatymas jei rysys nutruksta. Seanso lygis turi būdus įterpti kontrolinius taškus, kad būtų galima pradėti darba nuo ten, kur nutraukėDuomenų pavaizdavimo lygis (presentation layer) 1) Susijęs su informacijos sintakse ir semantika 2) Skirtas suvienodinti duomenų formatus 3) Duomenų spaudimas (compression) 4) KodavimasTaikomasis lygis (application layer) Visa tinklų programinė įranga – tinklo virtualūs terminalai, failų perdavimas, e-mail, failų serveriai, DB serveriai, objektų serveriai, transcakcijų serveriai, etc 5 TCP/IP modelis Apibrėžtas 1974 metais. patikimumasTinklo lygis (internet) 1) Nekontaktinis (connection-less) servisas 2) Kiekvienas paketas perduodamas nepriklausomai 3) Paketų tvarkos problema 4) Apibrėžia paketo formatą ir IP protokolą Transporto lygis (transport) 1) TCP – patikimas, pateikia kontaktinį (CO) servisą 2) UDP – nepatikimas, pateikia nekontaktinį (CL) servisą Taikomasis lygis (application) Telnet, FTP, SMTP, DNS, etc TCP/IP lygiai ir protokolai Lygis 1: Fizinis Lygis 2: Kanalinis MAC “freimų” formatas, MAC adresavimas, Interfeisas tarp kompiuterio ir tinklo (NIC – Network Interface Card), Protokolai – ARP, RARP Lygis 3: Internet Galimybės siųsti paketus internete per eilę maršrutizatorių; Protokolai - IP (plius ICMP ir IGMP) Lygis 4: Transporto Transportas iš aplikacijos viename kompiuteryje į aplikaciją kitame Protokolai – TCP, UDP Lygis 5: Taikomasis Visa kita Protokolai: TELNET, FTP, TFTP, DNS, SMTP, POP3, NFS, rlogin, etc. 6 OSI ir TCP/IP palyginimas OSI Konceptualiai apibrėžia: Servisus, Protokolus, Interfeisus. Bendresnis už TCP/IP. Pirmiau atsirado modelis, paskui protokolai, Transporto lygis – kontaktinis servisas. Tinklo lygis – ir CO, ir CL. TCP/IP Nėra tikslaus sąvokų atskyrimo, Tinkamas tik TCP/IP tinklams, Modelis nusako protokolus, Transporto lygis – ir CO, ir CL, Tinklo lygis – nekontaktinis servisas.TCP/IP kritika. Nėra apibrėžtų bendrų sąvokų; Modelis nėra bendras; Host-to-network – labiau interfeisas, o ne lygis; Nėra išskirtų fizinio ir kanalinio lygių; Kai kurie taikomieji protokolai neišbaigtiOSI kritika. Blogai parinktas laikas; Per daug sudėtinga technologija, apibrėžia nereikalingus lygmenis; Prastos realizacijos – sudėtingos, neefektyvios; Prasta politika. 8 ARP – Address Resolution Protocol: Galimi du tipai fizinių adresų, pavyzdžiai yra Ethernet su dideliais ir fiksuotais fiziniais adresais bei proNet su mažais, lengvai konfigūruojamais fiziniais adresais. ProNet’e MAC adresas sukonfigūruojamas taip, kad jis būtų paprasta funkcija nuo IP adreso. Tada kiekvienas gali paprastai paskaičiuoti reikalingą adresą pagall žinomą IP. Kitas paprastas būdas – laikyti visus IP-MAC adresų atitikimus statinėje lentelėje. ARP – adresų rezoliucija per dinaminį surišimą (dynamic binding) Jau žinomi adresai saugomi lentelėje, kurios įrašas yra pora – IP adresas ir MAC adresas. Lentelės saugomos tik lokaliam tinklui. Lentelės generuojamos automatiškai.ARP algoritmas Ieškoti reikalingo IP adreso T ARP lentelėje. Jei nerastas: Nusisti ARP pranešimą adresu T Gauti atsakymą su T MAC adresu Prisidėti įrašą į lentelę; Gražinti reikalingą MAC adresą iš lentelės 9 IP adreso radimas sistemos startavimo metu (RARP) Paprastai IP adresas laikomas kietajame diske, kur operacinė sistema startavimo metu jį suranda. Išimtis: darbo stotys, neturinčios disko. Joms reikia bendrauti su file serveriu naudojant IP adresą. IP adresą reikia gauti prieš startuojant operacinei sistemai. Sprendimas – pasinaudojant tinklo komunikacijomis, reikia sukontaktuoti su serveriu ir gauti savo IP adresą. Paradoksas: kompiuteris komunikuoja su nutolusiu serveriu tam, kad gautų adresą, reikalingą komunikacijoms. Faktoriai, kurie tai padaro įmanomu: Komunikacija vykdoma tik lokaliame fiziniame tinkle, Mašina save gali identifikuuoti unikaliu fiziniu adresu, Serveris gali turėti lenteles su MAC-IP atitikimaisRARP naudoja bediskės darbo stotys; Tik tos mašinos, kurios autorizuotos kaip RARP serveriai gali apdoroti užklausimą ir pasiųsti atsakymą; Tinkle turi būti bent vienas RARP serveris; RARP serveris palaiko IP-MAC adresų atitikimų lenteles; RARP serveriai gali būti primary arba backup. 10 Internet Protocol (IP) :Abstrakcija arba virtualus tinklas; Nekontaktinis, nepatikimo duomenų paketų pristatymo servisas; Internet Protocol prasmė: Apibrėžia bazinį duomenų perdavimo vienetą; IP programinė įranga atlieka maršrutizavimo funkcijas; Nustato taisykles paketų apdorojimui IP semantika IP yra nekontaktinis, Datagrama turi savyje galutinį adresatą, Kiekviena datgrama siunčiama ir apdorojama nepriklausomai Maršrutai gali pasikeisti bet kuriuo metu, IP leidžia datagramoms: Vėluoti, Kartotis, Būti pristatomoms ne ta tvarka, Pasimesti; Todėl IP vadinamas best effort delivery, Motyvacija – apjungti visus įmanomus tinklusIP datagrama: versijos laukas, IHL, paslaugos tipas, bendras ilgis, idetifikacijos laukas, DF, MF, fragmento numeris, gyvavimo trukme, protokolo laukas, antrastes kontroline suma, saltinio ir tikslo adresas, nebutinoji dalis (options): saugos, tikslus kelias nuo saltinio, loose source routing, irasyti kelia, laiko opcija.Datagramų perdavimas. 1) Datagrama siunčiama per fizinius tinklus: Nuo siuntėjo iki maršrutizatoriaus; Tarp tarpinių maršrutizatorių; Nuo galutinio maršrutizatoriaus - adresatui; 2) Tinko įranga neatpažįsta: Datagramos formato; IP adresų 3) Reikalinga enkapsuliacija: Visa datagrama yra laikoma duomenimis – persiunčiama freimo duomenų lauke; Freimo tipas pasako, kad tai IP datagrama; Freimo gavėjo adresas nurodo sekantį žingsnį 4) Datagrama enkapsuliuojama į freimą tam, kad ją perduotų fiziniu tinklu; 5) Freimo gavėjo adresas yra sekančio žingsnio, kur turi būti pasiųsta datagrama, adresas; jis gaunamas verčiant sekančio žingsnio IP adresą atitinkamu fiziniu adresu; 6) Datagrama išlieka visos kelionės per Internetą metu; 7) Freimas gyvena tik vieną žingsnį. 8) Kiekviena tinklo technologija apibrėžia maksimalų freimo dydį Vadinamas Maximum Transmission Unit (MTU. MTU skirtinguose tinkluose skiriasi 9) Internetas – heterogeniška aplinka, apjungia įvairias skirtingas technologijas. Turi pasirūpinti skirtingais MTU.Datagramų fragmentacija 1) Atliekama hostuose ir maršrutizatoriuose 2) Reikalinga tada kai datagrama didesnė, nei tinklo, per kurį siunčiama, MTU 3) Padalina datagramą į dalis, vadinamas fragmentais 4) Kiekvinas fragmentas turi datagramos headeri, beveik identišką originalios datagramos headeriui, išskyrus flagus 5) Fragmentai yra persiunčiami atskirai 6) Galutinis adresatas vėl surenka fragmentus į vientisą datagramą.Fragmentų surinkimas: 1) Identification laukas nurodo datagramą 2) Fragment offset nurodo fragmento duomenų poslinkį originalioje datagramoje 3) Kontroliniai flagai: Do not fragment, More fragments 4) Kad gavėjas nelauktų pamestų fragmentų amžinai, naudojami reassembly timers 5)Vieno fragmento praradimas reiškia visos datagramos praradimą 6) galimi ir fragmentu skaldymas i dar mazesnius fragmentusDatagramos formatas: Time to live field, Protocol field, Header checksum field, Source address, Destination address, IP options field IP Options: COPY flag, Option class, Datagram or network control: Debugging and measurement, Option number: Record route option; Source route option: Strict, Loose; Timestamp option 11 IP datagramų maršrutizavimas: Maršrutizavimas – procesas, kai yra parenkamas kelias, kuriuo siųsti paketus, maršrutizatorius – kompiuteris, kuris tai atlieka. IP maršrutizavimas parenka kelią, kaip pasiųsti datagramą per skirtingus fizinius tinklus. Naudoja IP adresus. Skiriami du pristatymo tipai: Tiesioginis (direct delivery) Netiesioginis (indirect delivery).Datagramos perdavimas lokaliame tinkle. Perduodant lokaliai, maršrutizatoriai nenaudojami. Norėdamas perduoti datagramą, hostas: Enkapsuliuoja datagramą į fizinį freimą, Suranda gavėjo IP adresui atitinkamą fizinį adresą, Nustato jį freimui kaip gavėjo adresą, Naudoją tinklo techninę įrangą pristatyti freimui. Visi į vieną tinklą sujungti kompiuteriai turi vienodą network-prefix IP adrese – taigi reikia ištraukti tinklo dalį iš gavėjo adreso, ir palyginti su savo.Netiesioginis pristatymas – hostas perduoda datagramą maršrutizatoriai, kuris ją perduoda toliau link gavėjo.Maršrutizavimas remiasi lentelėmis (IP routing table), esančiomis kiekvienoje mašinoje, ir saugončiamis informaciją apie galimus adresatus ir kaip juos pasiekti. Tokias lenteles turi tiek hostai, tiek maršrutizatoriai.Adresų rezoliucija: Techinė įranga (hardware) atpažįsta ir naudoja tik MAC adresus; IP ir aukštesni lygiai naudoja tik IP adresus; Pasekmė – reikalinga programinė įranga adresų transliacijai. Tai tinklo interfeiso dalis, zinoma kaip adresų rezoliucija. Kanalinio lygio protokolas. Duota: Lokalus tinklas T; IP adresas K kompiuterio tinkle T; reikia surasti MAC adresas kompui K tam naudojamas: 12 Gaunamu datagramu apdorojimas.Kai hostas gauna IP datagrama, jis tikrina, ar tai jam skirti duomenys. Jei taip – diagrama perduodama aukštesnio lygio protokolams, jei ne – atmetama (discard), hostamsa nepriklauso persiusti datagramu. Maršrutizatoriams priklauso datagramu persiuntimas. Iš pradžiu taip pat pasitikrinama, gal datagrama jau atvyko aps galutini adresata. Jei ne, naudojamas algoritmas bei lentele nustatyti, kur toliau siusti datagrama. Datagramos yra pasiekusios galutini adresata, kai:Adresatas datagramoje atitinka bent viena iš kompiuterio turimu tinklo interfeisu adresu.Jei ta datagrama buvo broadcastinta lokaliame tinkle – adresatas yra broadcas. adresas tam tinklui. Iškyla dar sudetingesni patikrinimai multicastu atveju. Jei datagrama neatitinka ne vieno adreso, IP sumažina time-to-live lauko reikšme, atmeta datagrama, jei jis jau pasieke 0, jei ne – suskaiciuoja nauja checksum, ir išsiuncia datagrama. Priežastys, kodel hostai negali persiuntineti datagramu:Jei hostas gauna datagrama skirta ne jam, reiškia kazkur ivyko klaida, kuria bus sunkiau aptikti, jei pats hostas imsis korekcijos, ja persiusdamas. Papildomas persiuntimas nereikalingai užims tinkla (be to, ir siuntejo CPU laika kitiems vartotojams) . Paprastos klaidos gali sukelti chaosa. Pvz.:, jei datagrama, skirta konkreciam hostui, buvo per klaida broadcastinta, tai jei visi hostai imsis ja persiusti adresatui – užkimš tinkla, ir gaveja. Maršrutizatoriai, skiritngai nei hostai, ne tik persiuncia datagramas. Jie naudoja specialius protokolus raportuoti apie klaidas, palaikyti konsistentiškas lenteles ir pan. Jei hostai tik persiuntinetu datagramas, neatlikdami visu funkciju, kiltu ivairiu anomaliju 13 ICMP – Atskiras protokolas klaidoms ir informacijai, būtina IP dalis. Siunčia klaidas datagramų siuntėjui – pradiniui, o ne tarpiniams. Atraportuoja tik klaidų sąlygas, bet nenurodo, kokie veiksmai turi būti imamiesi jų taisymuiKlaidų nustatymas ir problemų sprendimai: IP: Nepateikia klaidų, Ignoruoja visas klaidas; Galimos klaidos: Neteisingi iškraipyti bitai, Neteisingi adresai, Maršrutizavimo ciklai, Fragmentų praradimas; Atitinkami sprendimai: Header laukų kontrolinė suma, Maršrutizavimo lentelės, Time-To-Live (TTL) laukas, Time-outICMP pranešimų persiuntimas Siunčiama šaltiniui, pranešimai pernešami enkapsuliuoti į IP datagramas. Dviguba enkapsuliacija. apie pačius ICMP klaidų pranešimus – kai nepasiseka perduoti ICMP, nutarta, kad apie ICMP klaidos negeneruojamos. 14 Ipv6 Viena pagrindinų problemų – numatomas adresų trūkumas. Tą sukelia ir skirstymas į adresų klases A, B ir C – žinoma kaip three bears problema. Kita problema – palaikyti maršrutizavimo lenteles, kad neaugtų nevaldomai. Vienas iš tarpinių sprendimų – CIDR – Classless InterDomain Routing. Jei organizacijai reikia pvz. 2000 adresų, jai išskiriami 2048 adresai – 8 C klasės blokai, o ne vienas pilnas B klasės blokas. Taip pat hierarchijoje įvedamas dar vienas lygis, suskirstant tam tikrus adresų rėžius pagal žemynus. Taip pat lentelėse pradedama naudoti ne tik tinklo adresas, bet ir subnet mask – nes skirstant dalimis B klasės adresus, reikalingi potinkliai Ipv6 Pagrindiniai tikslai: Palaikyti daug adresų; Mažinti maršrutizavimo lentelių dydį; Supaprastinti protokolą, kad maršrutizatoriai galėtų greičiau apdoroti paketus; Geresnė apsauga bei autentikacija nei dabartiniam IP; Daugiau dėmesio skiriama serviso tipui, ypač realaus laiko duomenimis; Galimybė mobiliems hostams klajoti nekeičiant savo adreso; Galimybė plėsti protokolą ateityje; Galimybė suderinti senos ir naujos versijos protokolus, kad nereikėtų staigaus perėjimo nuo vieno prie kito IPv6 naujovės ir pataisymai: Ilgesni adresai. Adresui skiriama nebe 32 bitai, kaip IPv4, o 128 bitai; Headerio supaprastinimas. Bazinis headeris turi tik 7 laukus, ir uzima 40 baitų. Galimi Extension headeriai; Extension headeriais palaikomos opcijos; Geresnė apsauga, autentikacijai; Daugiau dėmesio serviso tipui Pagrindinis Ipv6 Header: Priority, Flow label, Payload length, Next header, Hop limit Ipv6 adresai.Kadangi adresui skiriama 128 bitai, iš viso adresu erdve yra 3,4*1038.Be to, dideliems adresams (16 baitu) nebetinka dešimtaine notacija. IPv6 adresams gali buti naudojama ir kita – šešioliktaine notacija, skaiciai skiriaimi “:”. Pvz.:68E6:8C64:FFFF:FFFF:0:1180:96A:FFFF.Nuliai taip pat gali buti suspaudžiami. FF05:0:0:0:0:0:0:B3 FF05::B3. Pagrindinis Ipv6 Header. Priority laukas nusako, ar šias datagramas galima užlaikyti, ar ne, kurios datagramos turi pirmumo teise. Reikšmes nuo 0 iki 7 – užlaikyti galima, nuo 8 iki 15 naudojama realaus laiko duomenims. Standartiniai susitarimai – 1- news, 2 – FTP, 6 – Telnet. Flow label – dar vis eksperimentinis, bet bus naudojamas nustatyti tam tikrus reikalavimus ryšiui ir servisusi tarp siuntejo ir adresato. Payload length – duomenu lauko ilgis. Next header – nusakomas sekancios dalies tipas – jei tai extension header – jo tipas, jei tai duomenis – protokolas, kurio tai duomenis yra (pvz. TCP). Hop limit – pakeite Time-to-Live Fragmentavimas. IPv6 duomenis fragmentuoja tik siuntejas, o susirenka, kaip ir 4 versijoje, galutinis adresatas. Yra sužinoma Path MTU – mažiausias MTU iš visu praeinamu tinklu. Tada datagramos ir formuojamos tokio dydžio. Taciau maršrutai gali bet kada pakisti, ir kartais gali prireikti fragmentavimo tarpiniuose maršrutizatoriuose. Tada fragmentavimas vyksta kiek kitaip, nei IPv4 – visiems fragmentams yra sukuriami nauji baziniai headeriai, o senosios bazibis headeris suskaidomas i fragmentus kartu su duomenimis. IPv4 ir IPv6 sugyvenimas. IPv4 adresai vienareikšmiškai užkoduojami IPv6 adresais. Vien to nepakanka, taigi IPv6, norintis bendrauti su IPv4 iš pradžiu pasiuncia datagrama vertejui, kuris naudoja IPv4 bendrauti su galutiniu adresatu. 15 Transportinis lygis – kertinė protokolų hierarchijos dalis. Pagrindinė užduotis – pateikti patikimą, efektyvų duomenų transportą iš siuntėjo adresatui, nepriklausomai nuo apačioje esančių tinklinių technologijų. Pateikdamas servisą jo vartotojams, transporto lygis naudojasi tinklo lygio servisu. Transporto lygis, kaip ir tinklo lygis, gali pateikti tiek kontaktinį (connection-oriented), tiek nekontaktinį (connection-less) servisą.Keturi apatiniai lygiai (fizinis, kanalinis, tinklo, transporto) gali būti vadinami serviso tiekėjais – transport service provider, o trys viršutiniai (sesijos, vaizdavimo, taikomasis) vartotojais – transport service user. Transporto lygis – pagrindinė riba, skirianti patikimo duomenų serviso tiekėją ir vartotoją. Kita svarbi transporto lygio funkcija – tinklinio lygio pateikiamo serviso kokybės (Quality of Service) kėlimas. Jei tinklo lygis pateikia kokybišką servisą, transporto lygis turi mažai darbo, jei nekokybišką – transporto lygis turi kiek įmanoma sumažinti skirtumą tarp vartotojų poreikių ir pateikiamo serviso. IP protokolas: Pateikia komunikavimą kompiuteris-kompiuteris; Siuntėjo ir gavėjo adresai yra kompiuteriai; Vadinamas machine-to-machineTransporto protokolai: Pateikia komunikavimą programa-programa; Reikalingas praplėstas adresavimo mechanizmas nurodyti aplikacijas; Vadinamas end-to-endTransporto Protokolo Funkcionalumas Adresuoti duomenus siunčiančias ir gaunančias programas Pasirinktinai pateikti: Patikimumą; Srauto kontrolę (Flow control); Užsikimšimo kontrolę (Congestion control)TCP/IP Transporto lygio protokolai: Transmission Control Protocol (TCP); User Datagram Protocol (UDP) 16 Programos adresavimasIP adresas negali buti naudojamas, nes laisvu bitu ten nebera. Taip pat negalima naudoti priklausomu nuo OS dalyku - proceso ID, užduoties numerio, darbo vardo, etc. Tai turi veikti visose kompiuterinese sistemose. Tam ivesta nauja abstrakcija, naudojama tik su TCP/IP, vienareikšmiškai identifikuojanti siunteja ir gaveja. Principas: kiekvienai programai priskiriamas unikalus sveikas skaicius. Vadinamas portu, arba protokolo portu. Portai Serveriams portai paprastai priskiriami pagal standartus, pastoviai naudojamas tas pats porto numeris, naudojami mažesni skaiciai. Klientai gauna nenaudojama, neužimta porta, naudojami didesni skaiciai. Ivairioms programoms ir servisams yra rezervuoti portai iki 1024, didesnius gali rinktis vartotoju aplikacijos. Pavyzdys. Domain name server programai priskirtas portas 53 Programa, kuri nori naudoti DNS gauna porta 28900 UDP datagrama, siunciama iš programos i DNS serveri turi – Source port number 28900 – Destination port number 53 Kai DNS serveis atsako, UDP datagrama turi – Source port number 53 – Destination port number 28900 17 User Datagram Protocol (UDP) Pateikia nepatikimą duomen perdavimą; Reikalauja minimaliai: Apkrovimo, Skaičiavimų, Komunikavimo. 18 Transmission Control Protocol (TCP) Pagrindinis transporto protokolas naudojamas Internet’e. Plačiai paplitęs. Patikimas duomenų perdavimas.TCP Savybės Kontaktinis servisas; Point-to-point; Full-duplex komunikavimas; Stream’o interfeisas; Stream’as sudaromas į segemtnus perdavimui; Kiekvienas segmentas enkapsuliuojamas į IP datagramą; Aplikacijų identifikavimui naudojami portaiTCP pateikia visiškai patikimą (be jokio duomenų pasikartojimo ar praradimo), kontaktinį, full-duplex stream’inį transporto servisą, kuris leidžia dviems pogramoms užmegzti ryšį, siųsti duomenis bet kuria kryptimi, bei terminuoti ryšį.Patikimas duomenų perdavimas: Naudojami patvirtinimai – acknowledgment. Gavėjas grąžina trumpą pranešimą, kai gauna duomenis. Pakartotinas siuntimas – retransmisison. Siuntėjas išsiuntęs duomenis startuoja timerį. Jei laikas pasibaigia, ir negautas patvirtinimas iš gavėjo, duomenys yra pakartojami.TCP Duomenų srauto kontrolė (Flow Control) Gavėjas paskelbia savo turimo buferio dydį – kiek jam galimą siųsti. Vadinamas window. Siuntėjas, gavęs patvirtinimą (ack), gali siųsti ne daugiau kaip window duomenų.Window Advertisement Kiekvienas acknowledgment nurodo naują window informaciją - dydį. Tai vadinama window advertisement. Langas gali būti ir 0 - (vadinamas closed window) Tokiu atveju patvirtinimo interpretacija būtų tokia: aš gavau iki X okteto duomenų, ir galiu priimti dar Y oktetų.Rysio nutraukimas Naudojamas apsikeitimas trimis pradiniais pranešimais - vadinamas 3-way handshake. Tinka tik vienareikšmiškam patikimam ryšio užmezgimui, tiek nutraukimui. SYN naudojamas užmezgimui, FIN – nutraukimui. 19 TCP bei UDP duomenų validavimas – kontrolinės sumos skaičiavimas. TCP Segmento Formatas. Kodiniai bitai – jų reikšmė, jei nustatyti į 1: URG – datagrama turi svarbių duomenų į kurios reikia reaguoti tuoj pat, validus Urgent Pointer laukas, jis nurodo vietą duomenyse, kur baigiasi svarbūs duomenys. ACK – Pasako, kad Acknowledgment laukas validus(nes jame prasmingos reikšmės gali ir nebūti) PSH – reikalauja PUSH – persiųsti visus susikaupusius duomenis, nelaukiant, kol prisipildys pilnas buferis. RST – reset connection (neįprastoms situacijoms – ryšys nutraukiamas iš karto, visi resursai atlaisvinami) SYN – susinchronizuoti segmentų numerius – ryšio užmezgimo metu. FIN – ryšio pabaiga. 20 Bendravimas su prokolų programine įranga. Kliento arba serverio aplikacijos nori naudoti transportinius protokolus. Aplikacijos yra operacinės sistemos (OS) išorėje, protokolinė įranga – OS viduje. Reikalingas mechanizmas susijungti. Vadinama - Application Program Interface (API). Socket’as OS abstrakcija (ne techninės įrangos). Sukuriamas dinamiškai, egzistuoja tol, kol veikia programa. Identifikuojamas deskriptoriumi Deskriptorius Mažas sveikas skaičius, vienas aktyviam socketui, naudojamas visose operacijose identifikuoti tą socket’ą, generuojamas OS, kai socket’as yra kuriamas. Prasmingas tik tai programai, kuri sukūrė socket’ą. 21 OSI kanalinis lygis Projektavimo problemos, kurias reikia spręsti šiame lygyje: Servisas tinklo lygiui, Freimų sudarymas, jų ribų atpažinimas, Klaidų apdorojimas, Freimų srauto kontrolėPateikiami serviso tipai: Nekontaktinis (CL) be patvirtinimo, Nekontaktinis su patvirtinimu, Kontaktinis su patvirtinimuFreimų ribų nustatymas: Simbolių skaičius, Pradžios ir pabaigos simbolių “flags” – DLE, STX, ETX; Pradžios ir pabaigos bitų “flags” – 01111110 Klaidų kontrolė: Patvirtinimai, laiko tarpai laukimui – “time-outs”, Freimų numeravimasSrauto kontrolė Greito siuntėjo, lėto gavėjo problema Klaidų aptikimas ir klaidų taisymas Klaidos linkusios pasirodyti grupėmis, o ne po vieną. Tai turi ir pliusų ir minusų. Klaidoms aptinkti naudojami Haming’o kodai. Apibrėžiamas kodo atstumas – minimalus atstumas tarp dviejų kodo žodžių. Ištaisyti d klaidų reikia 2d+1 kodo. Surasti d klaidų reikia d+1 kodo. Praktikoje dažnai naudojami polinominiai kodai, kitaip žinomi kaip CRC – cyclic redundancy checks 22-23 MAC.Kanalinio (data link) lygio polygis – apatinė dalisSvarbus broadcast tipo tinkluose – LANBroadcast tipo kanalai dar vadinami multiaccess channels arba random access channelsPagrindinė problema – nustatyti, kas gauna kanalo resursą, kai yra kelios esybės, norinčios juo naudotisGalimi statiniai ir dinaminiai kanalo paskirstymo būdaiStatiniai:1.FDM – Frequency division multiplexing – kanalo plotis dalinamas į N lygių dalių2.TDM - Time division multiplexing – kiekvienam vartotojui statiškai skiriama 1/N laiko 3.Abu būdai labai netinkami aplinkoms, kur vartotojų skaičius labai nepastovus, o taip pat perduodamų duomenų kiekis laba netolydus.Sąlygos dinaminiam kanalo paskirstymui:Stoties modelis – egzistuoja N nepriklausomų stočių, kiekviena turi programą(vartotoją), kuri generuoja duomenų (“freimus”). Pasiuntusi informaciją stotis blokuojama iki sėkmingo perdavimo.Ryšio kanalas – egzistuoja vienintelis kanalas. Aparatūriškai visos stotys yra lygiateisės juo naudotis, galimi programiniai prioritetai Susidūrimai (collisions) – jei du iš skirtingų stočių pasiųsti freimai nors truputį persikera kanale, jie abu sugadinami. Kiekviena stotis pati gali aptikti susidūrimus. Sugadintas freimas turi būti pakartotas. Kitokių klaidų nėra.Laikas – 1) tolydus 2) diskretus (slotted) – kiekviekas slotas gali tureti 0, 1, >1 freimus – atitinkamai gali būti tuščias, sėkmingas, arba įvykti susidūrimas.Nustatymas ar kanalas užimtas (Carrier Sense) 1) su nustatymu 2) be nustatymo ALOHA protokolai Švari-pure ALOHAJei aptinkama kolizija – siuntėjas laukia atsitiktinį laiko tarpą, ir siunčia freimą iš naujoKanalo efektyvumas – visų freimų dalis, kuriai pavyksta išvengti kolizijųFreimai generuojami pagal Puasono pasiskirstymo dėsnį su vidurkiu GEfektyvumas būtų S = Ge-2G, maximumas pasiekiamas su G=0.5 ir S=1/2e ~ 0.184Diskreti ALOHA (Slotted)Laikas sudalijamas į intervalusIntervalas lygus freimo perdavimo laikuiGaunamas dvigubai trumpesnis galimo freimo pažeidimo intervalas – todėl dvigubai didesnis efektyvumas - S = Ge-G, maximumas pasiekiamas su G=1 ir S=1/e ~ 0.368 (carier sense multiple access protocols)CSMA – egzistuoja galimybė pasitkrinti ar kanalas yra užimtas, ar laisvas, prieš siunčiant duomenisStotis siunčia duomenis tik tuo atveju, jei aptinka, kad kanalas yra laisvas tuo metu1-persistent protokolas – siunčia iš karto, kai aptinka laisvą kanalą nonpersistent CSMA – jei randa užimtą kanala – prieš tikrindama vėl palaukia atsitiktinį laiko tarpą p-persistent CSMA – jei randa laisvą kanalą – siunčia su tikimybe p, arba laukia kito laiko sloto su tikimybe q=1-p CSMA su susidūrimų atpažinimu (collision detection) Įvedamas patobulinima – nutraukti siuntimą aptikus freimų susidūrimą. Taip sutaupomas kanalo resursas. Nutraukus siuntimą palaukiama atsitikrinį laiko tarpą, tada vel tikrinamas kanalas.Modelis:Kolizija gali būti nustatoma po 2t laiko, kur t – laikas, reikalingas signalui nueiti tarp dviejų toliausių stočių Pvz 1 km koaksialinio kabelio t = 5 milisekundes Protokolai be kolizijų Varžymosi (contention) laikotarpiu išsprendžiama kas toliau naudosis kanalu.Visos stotys sunumeruojamos nuo ) iki N-1.Bazinis bit-map metodas:Pastaba: paprastai stotims su mažesniais numeriais tenka laukti ilgiau. Vidutinis efektyvumas prie mažo apkrovimo – d/(N+d) , kur d – freimo ilgis. Efektyvumas prie didelio apkrovimo - d/(1+d) Binary countdown metodas – stotims priskiriami vienodo ilgio binariniai adresai. Joms varžantis su adresais atliekama OR operacija. Stotis pasitraukia, jei vietoje jos nuliuko įrašomas vienetas.Riboto varžymosi (limited contention) protokolaiDu pagrindiniai kriterijai protokolams yra: užlaikymas esant neapkrautam tinklui, ir efektyvumas, esant apkrautam. Taigi noretųsi naudoti kombinuotą – CSMA/CS kai nedidelis eismas, ir collision-free, kai didelisIdėja – mažinti konkurenciją.Stotys gali būti paskirstomos į grupes, taip kad tik stotys priklausančios 0 grupei varžosi dėl nulinio sloto. Jei kam nors pasiseka – tai freimas perduodamas, jei ne – pereinama prie sekančios grupės.Pagrindinė problema – kaip paskirstyti stotis. Jei jos paskirstomos po vieną į grupę – gaunamas bitmap protokolas, jei visos į vieną grupe – slotted ALOHA Reikalinga dinamika: kai apkrovimas mažaz, tai grupę sudaro daug stočių, ir atvirkščiai. Prisitaikančio medžio algoritmas (Adaptive Tree Walk protocol)Del sloto 0 varžosi visos.Jei pasiseka – OKJei ne, dėl sloto 1 varžosi pomedis 2. Jei pasiseka kam nors perduoti, tai stotys iš pomedžio 3 varžosi dėl 2, jei ne, varžosi pomedis 4.Principas – jei tyla, ar sėkmingas perdavimas – toliau gilyn algoritmas neina – visos norinčios stotys jau ten surastos.Pradinio sloto klausimas – nuo kuio lygio pradėti ieškoti.Protokolai bevielėms komunikacijoms:Portable nėra mobile. Pasiekti mobilumą komunikavimui naudojamos radio ar infraraudonosios bangos.Paprasti CSMA protokolai netinka – yra problemos:Paslėptos stoties (hidden station) problemaIšstatytos stoties (exposed station) problemaJei sistema naudoja trumpąsias bangas, vienu metu gali vykti keli perdavimai, jei jie nėra vienas kito pasiekimo zonoje.Protokolai MACA ir MACAW.MACA (Multiple Access with Collision Avoidance) – 1990 m.Pagrindinė idėja – stimuliuoti gavėją išsiunčiant trumpą freimą, kad tai galėtų pastebėti aplinkui esančios stotys, ir susilaikytų nuo duomenų perdavimo per numatomą ilgo duomenų freimo siuntimą.Apsikeičiama trumpais freimais – RTS (Request To Send) ir CTS (Clear To Send). Jie praneša informaciją duomenų freimo ilgį.Kolizijų vis tiek gali įvykti – pavyzdžiui gali dingti RTS freimai. Tada siuntėjas po atsitiktinio laiko tarpo bando pakartotiMACAW – pagerinta versija 1994 m. (įvedė acknowledgment freimus, kanalo užimtumo nustatymą – carrier sensing, mechanizmą apsikeisti informacijai apie kanalo užsikimšimą tarp stočių, etc.) 24-28 IEEE Standard 802 for LANs and MAN IEEE (Institute of Electrical and Electronics Engineers) yra išleidę standartų rinkinį – IEEE 802. Skirtingi standartai skiriasi fiziniame lygyje bei MAC polygyje, bet yra suderinami kanaliniame lygyje. Priimti ANSI ir ISO. 802.3 - 802.5 padengia fizinį lygį ir MAC polygį.802.1 – Įvadas, interfeisų primityvų aibė802.2 – Aukštesnė kanalinio lygio dalis, LLC (Logical Link Control) protokolas.802.3 - CSMA/CD802.4 - token bus802.5 - token ringIEEE Standard 802.3 ir Ethernet’asIEEE Standard 802.3 – tai 1-persistent CMSA/CD lokalus tinklas(LAN)IstorijaIš pradžių buvo ALOHA paketinė radio sistema – bendravimui tarp išsibarsčiusių sistemų Havajų salose.Paskui buvo pridėtas kanalo tikrinimas, Xerox PARC padarė 2.94 Mbps CSMA/CD sistemą sujungti virš 100 darbo stočių km ilgio kabeliu – 1976 m.Tai buvo sėkmingas bandymas, taigi Xerox, DEC, Intel nustatė standartą 10 Mbps Ethernet. Tai ir yra 802.3 standarto bazė.Ethernet nėra bendras terminas nusakantis visus CSMA/CD protokolus – tai konkretus produktas, realizuojantis 802.3 standartą.Naudojami sujungimo būdai802.3 naudoja Mančesterio kodą. Aukštas įtampos signalas yra +0.85 voltų, žemas - -0.85 voltų. 802.3 MAC polygio protokolasGalimi 6 baitų MAC adresaiMulticast galimybė (aukščiausias bitas - 1)Jei adrese visi bitai yra 1 – tai broadcast, freimas pristatomas visoms tinkle esančioms mašinoms.Globalaus adreso unikalumas(46-as bitas žymi, ar tai lokalus ar globalus adresas) – iš 46 bitų galima sudaryti apie 7x1013 adresų.Ilgis – geri freimai turi būti bent 64 baitų ilgio. Trumpi freimai yra papildomi(padded), kad pasiektų tokį ilgį.Binary exponential backoff algoritmasLaiko randomizavimo algoritmas – nusako, kurį laiką stotis laukia, jei įvyksta kolizija.Po pirmos kolizijos laukiama 0 arba 1 slotą, po antros – 0,1,2,3Po i-tosios laukiama pasirinktą skaičių slotų iš intervalo 0 …2i-1.Po dešimties sustojama ties 1023 maksimumu.Po 16 – pasiduodama, ir klaida perduodama į aukštesnį lygį.Switched 802.3 LANsKanalo pralaidumo didinimas yra brangusSvarbu mažinti besivaržančių stočių skaičių.Switched 802.3 lokalūs tinklai:Switch - didelio greičio Gbps įrenginys su plug-in kortomisKorta pas save viduje tikrina ar freimas turi būti persiunčiamas kitur, ar jo gavėjas yra čia patĮ išorę perduodami tik “svetimi” freimai – skirti kitoje plug-in kortoje esančiam gavėjuiVienas iš optimizavimo būdų – buferizuoti portai IEEE Standard 802.4: Token Bus Nors 802.3 plačiai naudojamas ofisuose, stambių kompanijų atstovai (Pvz., General Motors) suinteresuoti gamyklų automatizavimu jį vertino atsargiai802.3 trūkumai:neturi blogiausio atvejo paketo pristatymo laikui – tai yra, gali susidaryti situacija stočiai laukti be galo ilgai savo eilės siuntimui nepalaiko prioritetų netinkamas realaus laiko sistemoms Paprastas modelis determinuojantis blogiausio laiko atvejį: Yra žiedas, kur stotys perduoda duomenis paeiliui Egzistuoja N stočių, T – perdavimo laikas, taigi daugiausia laukti gali tekti NT, ne daugiau. Idėja gera, bet fizinė realizacija ne, nes nutrūkus žiedui nebeveikia visa sistema. Be to, neatitinka tiesinės konvejerių topologijos.Taigi 802.4 realizuojama yra šitaip:Logiškai stotys sudaro žiedą. Fizinė topologija gali būti tiesinė ar medžio formosKiekviena stotis turi numerįKiekviena stotis žino savo kaimynų numeriusPirmą freimą siunčia aukščiausio numerio stotisJi paskui perduoda leidimą siusti – markerį (token) – kaimynei. Perduoti duomenis gali tik stotis turinti markerį.802.4 palaikomos prioritetų klasės802.4 MAC protokolas yra sudėtingas (turi būti galimybės stotį įtraukti ir išmesti iš žiedo)Fiziniam lygiui 802.4 naudoja koaksialinį kabelį.IEEE Standard 802.5: Token RingŽiediniai tinklaiTiesiog rinkinys nuo-iki (point-to-point) ryšių, kurie sudaro žiedą.Beveik visiškai skaitmeniniaiGarantuotas maksimalus laukimo laikasToken ring tinkle žiedu juda specialus bitų rinkinys – markeris (token)Stotis, norinti perduoti duomenis, pagriebia markerį ir pašalina jį iš žiedoSiųsti duomenis gali tik stotis, pas kurią tuo metu yra markerisLAN’ų palyginimas802.3 pranašumai paplitęs paprastas algoritmas Stotys instaliuojamos nenutraukiant darbo Nėra užlaikymo802.3 trūkumaiAnaloginė komponentė perdavimo technologijoje (Carrier Sense/Collision Detection)Minimalus freimo ilgis 64 baitaiNedeterministinis ir neturi prioritetųKabelis iki 2.5 kmKonfliktai apkrautame tinkle802.4 pranašumaiDeterministinis, nors markerio praradimas gali kenktiPalaiko prioritetusGeras pralaidumas apkrautam tinklePatikimos perdavimo priemonės802.4 trūkumaiAnaloginės sistemos – modemai, stiprintuvaiSudėtingas protokolasDidelis užlaikymas prie mažo apkrovimoNetinkamas optiniams kabeliams802.5 pranašumaiNuo-iki (point-to-point) jungtysSkaitmeninė technikaEfektyvus prie didelio apkrovimoGalimi prioritetaiKintamas freimų dydis (ilgi freimai)Didelis fizinių perdavimo priemonių pasirinkimas802.5 trūkumaiLoginis žiedo palaikymas – centralizuotas monitoriusUžlaikymas prie nedidelio apkrovimoIEEE 802.2 - Logical Link ControlNė vienas iš 802 LAN’ų nepateikia patikimo serviso MAC lygyje – o kanalinis lygis turi pateikti keletą servisų tipųTai daro aukštesnioji kanalinio lygio dalis – LLC. Ji pateikia vienodą interfeisą tinklo lygiui virš visų 802.x LAN’ųTrys serviso tipai:Nepatikimas datagramų servisasPatikimas, su patvirtinimais (acknowledgments) datagramų servisasPatikimas connection-oriented servisasLAN BridgesPriežastys naudoti bridges:Sujungimas keleto LAN’ų dėl jų skirtingumoSujungimas keleto LAN’ų dėl nuotolio tarp jųVieno lokalaus tinklo skaidymas į kelis mažesnius, kad sumažėtų apkrovimasLokalaus tinklo ploto praplėtimasDidinimas lokalaus tinklo patikimumoSaugumo gerinimas 29 Tinklo lygis (network layer) Tinklo lygis rūpinasi paketų persiuntimų iš šaltinio galutiniam adresatui. Siuntimas adresatui gali reikalauti daug žingsnių per tarpinius routerius. Kad įgyvendintų savo tikslus, tinklo lygis turi žinoti potinklio (subnet) topologiją (visų maršrutizatorių aibę) ir parinkti atitinkamus kelius. Taip pat reikia rūpintis tinklo linijų ir maršrutizatorių(routers) apkrovimu. Jei siuntėjas ir gavėjas yra skirtinguose tinkluose, tai tinklo lygis sprendžia su tuo.susijusias problemas.Serviso transporto lygiui pateikimas. Tinklo lygio servisai buvo suprojektuoti siekiant tokių tikslų: Servisai turi būti nepriklausomi nuo potinklio tecnologijos. Transporto lygis neturi rūpintis esančių potinklių skaičiumi, tipais bei topologijomis. Tinklo adresai, kuriais naudojasi transporto lygis turi būti sudaryti pagal vienodą schemą, tiek LANuose, tiek WANuose.Vidinis tinklo lygio organizavimas. Galimi du būdai: Virtualių grandinių (dirba connection-oriented principu) Datagramų – nepriklausomų paketų (dirba connection-less principu) 30 Maršrutizavimas (Routing) Maršrutizavimo algoritmas – tinklo lygio programinės įrangos dalis, atsakinga už įeinančio paketo išsiuntimą tinkama išeinančia linija. Datagramų atveju geriausias maršrutas nustatomas kiekienam paketui iš naujo, virtualių grandinių atvejų – vienai sesijai (session routing).Maršrutizacijos algoritmų pageidautinos savybės: Korektiškumas (correctness), Paprastumas (simplicity), Patikimumas (robustness), Stabilumas (stability), Teisingumas (fairness), Optimalumas (optimality)Algoritmai gali būti neadaptyvūs – statiniai ir adaptyvūs – dinaminiai. Maršrutizavimas trumpiausiu keliu (shortest path routing) Visi maršrutizatoriai sudaro grafą. Briaunos gali turėti svorius – kainas. Ieškomas kelias su mažiausia kaina.Užtvindymas (flooding) Idėja: kiekvienas įeinantis paketas yra išsiunčiamas visom išeinančiom linijom, išskyrus tą, per kurią atėjo. Generuoja daug pasikartojančių paketų. Juos galima apriboti pora būdų: 1) Nustatant paketo gyvavimo laiką. 2) Sekant, kurie paketai jau buvo išsiųsti ir atmetant pasikartojančius. Variacija – selective flooding – paketas siunčiamas tik tomis išeinančiomis linijomis, kurios apytiksliai eina teisinga kryptimi. Taikymai – karinėse aplikacijose, paskisrstytų DB aplikacijose, kur vienu metu reikia informuoti daug vartotojų, taip pat labai svarbų nepamesti paketų.Nuotolių lentelės metodas (Distance vector routing) Idėja – kiekvienas maršrutizatorius palaiko lentelę su atstumais iki kiekvieno kito maršrutizatoriaus, bei kuria linija jį pasiekti. Ši informacija atnaujinama besikeičiant informacija su kaimynais. Skaičiavimo iki begalybės (count-to-infinity) problema Nuotolių metodo problema – geros naujienos plinta greitai, blogos – lėtai. Hierarchinis maršrutizavimas Hierarchiniu atveju maršrutizatoriai suskirstomi į regionus, kur kiekvienas žino regiono struktūrą, bet nežino apie kitus regionus. Bendravimui su kitais regionais paskiriami konkretūs maršrutizatoriai. Galima skirstyti į kiek nori ierarchinių lygių. Tai labai sumažina palaikomas nuotolių lenteles. 32 Persipildymo valdymo (congestion control) algoritmai Principai: Stebėti sistemą ir aptikti, kur ir kada įvyksta užsikimšimas. Perduoti informaciją į vietas, kur gali tuo pasirūpinti. Pritaikyti sistemos veikimą taip, kad problema būtų išspresta. Eismo tinkle reguliavimas (traffic shaping).Persipildymo valdymas virtualių grandinių potinkliuoseKad padėtis įvykus persipildymui neblogėtų, naudojama priėjimo kontrolė (admission control) – nebeužmezganos naujos grandinės.Krūvio numetinėjimas (load shedding) Kai maršrutizatoriai perpildomi paketais, jie kai kuriuos gali tiesiog atmesti. Yra du atmetimo būdai: Wine – kai geriau palaikyti senesnį, nei naujesnį paketą (pvz., failo perdavimas) Milk – kai geriau palaikyti naujesnį, nei senesnį paketą (pvz., audio ar video perdavimas) Kad naudotų teisingą atmetimo poiltiką, turi padėti ir aplikacijos, nurodydamos paketo svarbumą.Užsikimšimo (choke) paketai Maršrutizatorius gali išsiųsti choke paketą, kai nebesusidoroja su ateinančiais duomenimis. Siuntėjas, gavęs choke paketą, privalo sumažinti duomenų srautą tam maršrutizatoriui tam tikru procentu. Po kurio laiko, jei daugiau choke paketų neateina, srautas gali būti didinamas, bet lėčiau.Variacija hop-by-hop choke paketai – kai į choke paketus reaguoja ne tik galutiniai siuntėjai, bet ir visi tarpiniai. Taip greičiau sumažinamas apkrovimas persipildžiusiai mašinai.Persipildymo valdymas multicastinimui RSVP – Resource reSerVation Protocol – resursų rezervavimo protokolas. Vartotojai užsisako kurį nors siuntėją. Siunčiamo rezervavimo metu kiekvienas maršrutizatorius rezervuoja reikalingas linijas. Naudojami spaning tree, sudaromi pagal siuntėjus. Rezervavimo pranešimas siunčiamas atitinikamum medžiu. 33 Internetworking Vieną tinklo lygių sprendžiamų problemų – duomenų perdavimas tarp skirtingų tinklų. Tinklų yra įvairių – TCP/IP, SNA, DECnet, Novell NCP/IPX, AppleTalk, ATM - ir kol kas nesimato, kad jie būtų suvienodinti. Egzistuoja labai daug skirtingų tinklų tarpusavio bendravimo kombinacijų. Skirtinguose lygiuose dirba skirtingi įrenginiai – repeaters, bridges, multiprotocol routers, trasnsport gateways, application gateways. Bendrai jie gali būti vadinami tieisog gateway.Internetworking būdai: Connection-oriented. Galima sujungti virtualią grandinę nuo siuntėjo iki adresato, ir visus paketus siųsti ja. Tinka, kai visi tarpiniai tinklai turi panašias savybes. Connection-less. Datagraminis modelis. Privalumai – nesvarbu ar tarpiniai tinklai palaiko kontaktinį servisą, ar ne. Problemos – paketų formatai, adresavimas.Tunneling - būdas išspręsti paketų nesuderinamumą.Paketų fragmentacija Sprendžia skirtingų paketų ilgių problemas. Skirtingus paketų ilgius gali sąlygoti Techninė įranga, operacinė sistema, protokolai, atitikimas standartams ir t.t. Sprendimas – jei paketas per didelis, išskaidyti jį į dalis, ir siųsti kaip atskirus paketus. Klausimas – kada surinkinėti paketus iš dalių – ar kiekviename tarpiniame routeryje, ar tik galutiniame hoste.Kanalinio lygio protokolaiNesuvaržytas Simplex protokolas: Vienpusis eismas, Abiejų pusių tinkliniai lygiai visada pasiruošę, Laikas ignoruojamas, Buferio dydis neribotas, Švarus ryšio kanalasSimplex Stop & Wait protokolas Baigtinis duomenų priėmimo greitis arba buferio dydisSimplex protoklas triukšmingam kanalui Kanalas pateikia duomenis su klaidomis, Freimai gali būti sugadinti arba visai pamesti, Gavėjas gali aptikti klaidas, Patvirtinimai taip pat gali būti pamesti, Naudojamas freimų numeravimasSlenkančio lango (Sliding Window protokolas) Dvipusio eismo problema, “Piggybacking” – patvirtinimo prikabinimas į sekantį freimą, kiekvienas freimas turi numerį , Kiekvienu momentu siuntėjas palaiko aibę numerių, kuriuos freimus jam leista siųsti - sending window, Gavėjas turi analogišką receiving window 0 – 2n-1 Kanalinis lygis Internete Naudojami point-to-point protokolai: Ryšiui tarp LAN’ų, Ryšiui namų vartotojamsSLIP – Serial Line IP Nepateikia klaidų suradimo ir taisymo, Palaiko tik IP, IP adresai turi būti žinomi iš anksto abiems pusėms – netinka palaikyti namų vartotojams, Nepateikia autentikavimo galimybių, Nepatvirtintas kaip standartas PPP – Point to Point Protocol Pateikia vienareikšmį freiminimo metodą ir klaidų aptikimą, Turi LCP – Link Control Protocol – kanaliniam lygiui, NCP – Network Control Protocol – deryboms dėl tinklo lygio sąlygų PPP tipinis scenarijus: Naminis PC skambina tiekėjo maršrutizatoriui modemu, PC siunčia LCP packetus maršrutizatoriui, Nustatomi PPP parametrai, Siunčiami NCP packetai, Nustatomi IP parametrai – pvz. IP adresas, Naudojama TCP/IP sesija, NCP nutraukia ryšį ir atlaisvina IP adresą, LCP nutraukia kanalinį ryšį, Modemas atsijungia Srautu paremtas maršrutizavimas (flow-based routing) Atsižvelgia ne tik į potinklio topologiją, bet ir į tinklo apkrovimą konkrečiu momentu. Sekami vidutiniai užlaikymai iki kitų maršutizatorių, žinomas linijų pralaidumas – pagal tai galima paskaičiuoti linijos svorį, ir naudojant kokį nors algoritmą, nustatyti geriausius kelius.Dinaminiai algoritmai Ryšio būsenos metodas (link state routing) Susideda iš tokių dalių: Surasti kaimynus ir sužinoti jų adresus, Išmatuoti ryšio linijos kainą iki kiekvieno kaimyno, Sukonstruoti paketą iš sužinotos informacijos, Išsiųsti jį visiems kitiems maršrutizatoriams. Suskaičiuosi trumpiausią kelią iki kiekvieno maršrutizatoriaus.Broadcast maršrutizavimas Būdai: Padauginti paketą ir išsiųsti kiekvienam adresatui atskirai. Bet perdaug apkrautų tinklą. Flooding. Multidestination rooting – kai maršrutizatorius gauna paketą, patikriną visus adresatus, ir nustato, kokios išeinančios linijos reikalingos. Paketas paskirstomas tik reikalingoms linijoms. Spaning tree – grafą padengiančio medžio naudojimas. Jei maršrutizatorius žino, kurios linijos priklauso medžiui, jis paketą kopijuoja į visas tas linijas. Problema – kiekvienas maršrutizatorius turi savyje laikyti medį. Reverse path forvarding – kai paketas atvyksta, patikrinama, ar jis atvyko ta linija, kuri naudojama siųsti paketus šiam šaltiniui. Jei taip – reiškia jis atvyko geriausiu keliu, todėl yra reikalingas, ir persiunčiamas toliau, jei ne – greičiausiai tai jau pasikartojantis pakets, todėl jis atmetamas.Multicast maršrutizavimas Taip pat naudoja spaning tree. Variacija – core-base trees.DNS – Domain Name System. Vardai Internetinėms komunikacijoms naudojami IP adresai, tuo tarpu žmonėms patogiau kompiuterius vadinti vardais. Žinoma kaip Domain Name System (DNS) – hierarchinė vardų sistema. Funkcionalumas: Nurodomas kompiuterio vardas, pagal jį surandamas ir grąžinamas kompiuterio IP adresas. Domain vardų sintaksė Vardas susideda iš kelių segmentų, sudarytų iš skaitmenų bei abėcėles simbolių. Segmentai tarpusavyje skiriami taškais. Organizacija, norinti pasirinkti domeno vardą, turi išsirinkti unikalų vardą, užregistruoti jį centrinėse tam skirtose įstaigose. Domeno vardas turi būti patalpinamas po kuriuo nors aukščiausio lygio domenu. Organizacijos viduje galimi įvairūs tolesni hierarchiniai skirstymai, keli lygiai, tai nėra standartizuota ir yra organizacijos vidinis lokalus reikalas.Aukščiausio lygio domenai (Top Level Domains) (com, net, gov, mil, edu, int), šalies kodas (lt, de, it, ru) - šalisDNS Paieška Programa, DNS klientas, pasiunčia užklausimą lokaliam DNS serveriui Lokalus serveris - jei žino atsakymą, grąžina jį, jei ne, kreipiasi į aukštesnio lygio DNS serverius, ir grąžina atsakymą, kai gauna iš jų. Tai vadinama vardų sprendimu – name resolution.Elektroninis paštas e-paštas – tai žinutė, pasiunčiama į vieną ar daugiau pašto dėžučių. Pašto dėžutė – unikaliai adresuotas žinutės kelionės pabaigos taškas. e-pašto adresas – tekstinė eilutė, nusako pašto paskyrimo vietą. Bendra forma - mailbox@computer. Computer – kompiuterio domeno vardas, mailbox – paskyrimo vieta tame kompiuteryje. E-pašto progaminė įranga pas siuntėją naudoja domeno vardą nustatyti adresatą, e-pašto progaminė įranga pas gavėją – naudoja mailbox parinkti konkretų nurodytą pašto dėžutę. e-pašto žinutė susideda iš: Header – identifikuoja siuntėja, gavėją(-us), turinį. Eilučių formatas - keyword : information. Dauguma headerių eilučių nėra privalomos. Tuščia eilutė. Žinutės pagrindinė dalis – tekstas. Header eilučių pavyzdžiai: From, To, Cc, Date, Subject, ,Reply-To, X-Charset, X-Mailer, X-SenderOriginaliai e-paštu buvo galima siųsti tik paprasta tekstą – ASCII simbolius. Iškilo poreikis siųsti ir įvairius kitokius formatus – image, audio/video klipai, binary programos. Sprendimas tam – MIME (Multi-purpose Internet Mail Extensions). MIME kodavimas: Siuntėjas Įterpia papildomus header laukus. MIME-Version: 1.0, Content-Type: Multipart /Mixed; Boundary=xxxsep Užkoduoja binary duomenis ASCII simboliais Siunčiama kaip paprasta žinutė Gavėjas Interpretuoja headerio eilutes. Išsitraukia ir dekoduoja atskiras dalisPašto perdavimas Pašto perdavimui – siuntimui – naudojamas protokolas Simple Mail Transfer Protocol (SMTP), veikia su TCP. Naudojamas tarp pašto išsiuntimo programos pas siuntėją ir pašto serverio pas gavėją. Specifikuoja kaip klientas bendrauja su serveriu, gavėjų adresus. Protokolas, naudojamas paimti paštą iš nutolusios pašto dėžutės, yra Post Office Protocol (POP). Dabartinė versija – 3, vadinamas POP3.Nutolęs prisijungimas – Remote Login Pateikia interaktyvų priėjimą prie kompiuterio nutolusiu būdu. Stadnartinis protokolas – TELNET. Sistemose 4BSD UNIX yra naudojamas rlogin.Telnet: Tekstinis interfeisas. Vartotojas paleidžia klientinę programą, nurodo kompiuterį, prie kurio jungsis. Klientinė programa užmezga TCP ryšį su serveriu, juo perduodamas visas vartotojo įvedimas (input), išvedimas (output) rodomas ekrane.Failų pasiekimas ir perdavimasOn-line Shared Access on-line access – visi pakeitimai darosi nutolusioje kopijoje. whole-file copying – gaunama lokali kopija, jei ji modifikuojama, musiunčiama atgal serveriui priklausoma nuo nutolusios mašinos ir tinklo darbo stabilumo. Sharing By File Transfer. Gaunama lokali kopija, su kuria dirbama. Klientas ir serveris turi susitarti dėl autorizavimo, duomenų formatų ir t.t.File Transfer Protocol (FTP) TCP/IP interneto standartas, naudoja TCP. Savybės: Interaktyvus priėjimas, Formato specifikavimas (palaiko tekstinį arba binarinį perdavimą), Autentikavimo kontrolė. Iki 1995 metų buvo pagrindinis paketų Internete šaltinisFTP Paradigma Komandinės eilutės interfeisas, Klientas užmezga TCP ryšį su serveriu (control connection), įsilogina, naudojasi komandų aibe keisti direktorijas, žiūrėti jų turinį, persiųsti failus. Serveris užmezga nauja TCP ryšį kiekvienam duomenų perdavimui.TFTP - Trivial File Transfer Protocol Pateikia paprastą, nesudėtingą servisą. Naudoja UDP. TFTP programinė įranga gerokai mažesnė nei FTP – tai gali būti svarbu kai kurioms aplikacijoms (pvz. TFTP gali būti patalpinamas į bediskių mašinų operatyviąją atmintį ROM – read-only memory)NFS - Network File System Pateikią permatomą(nematomą iš vartotojo perspektyvos) integruotą on-line shared priėjimą prie failų. Žinučių transportui naudojamas UDP. Naudoja: Remote Procedure Call (RPC) – bendravimas tarp nutolusių programų. eXternal Data Representation (XDR) – būdas perduoti duomenis tarp heterogeniškų mašinų be konvertavimo į žemesnio lygio formatus.Interneto valdymas - Internet Management Leidžia administatoriui stebėti ir kontroliuoti gateway’us bei host’us, Debug’inti problemas, Kontroliuoti maršrutizavimą, Rasti kompiuterius, kurie pažeidžia protokolų standartus.Naudojami protokolai: Simple Network Management Protocol (SNMP), CMIS/CMIP (Common Management Information Services/Protocol) Over TCP/IP (CMOT)Valdymo informacija Apsibrėžiami tam tikri kintamieji, kurie kontroliuojami, Naudojama Management Information Base (MIB) – kintamųjų aibė, Kintamieji apibrėžiami naudojant ASN.1 (Abstract Syntax Notation 1) – formalią kalbą, Yra pasiūlytą įvairių MIB praplėtimųBOOTstrap Protocol (BOOTP) RARP alternatyva – bet ledžia sužinoti ne tik IP adresą, bet ir daug kitų parametrų – gateway adresą, serverio (failų) adresą, potinklio šabloną (subnet mask). Naudoja UDP – tai leidžia išsiplėsti ir naudoti tai ne tik lokaliame tinkle. Paprastas, nedaug užima, gali būti patalpintas į ROM. Dėl užklausų pakartojimų atsakingas klientasHyperText Transfer Protocol (HTTP) Specifikuoja bendravima su WWW serveriais. WWW serveris pateikia puslapių aibę. WWW klientas - vadinamas naršykle – sukuria TCP ryšį su serveriu, siunčia užklausimus atskiriems resursams, turi interpretatorius, kurie gautus pusplapius parodo vizualiai.LAN Bridges Priežastys naudoti bridges: Sujungimas keleto LAN’ų dėl jų skirtingumo, Sujungimas keleto LAN’ų dėl nuotolio tarp jų, Vieno lokalaus tinklo skaidymas į kelis mažesnius, kad sumažėtų apkrovimas; Lokalaus tinklo ploto praplėtimas; Didinimas lokalaus tinklo patikimumo; Saugumo gerinimas
Šį darbą sudaro 7230 žodžiai, tikrai rasi tai, ko ieškai!
★ Klientai rekomenduoja
Šį rašto darbą rekomenduoja mūsų klientai. Ką tai reiškia?
Mūsų svetainėje pateikiama dešimtys tūkstančių skirtingų rašto darbų, kuriuos įkėlė daugybė moksleivių ir studentų su skirtingais gabumais. Būtent šis rašto darbas yra patikrintas specialistų ir rekomenduojamas kitų klientų, kurie po atsisiuntimo įvertino šį mokslo darbą teigiamai. Todėl galite būti tikri, kad šis pasirinkimas geriausias!
Norint atsisiųsti šį darbą spausk ☞ Peržiūrėti darbą mygtuką!
Mūsų mokslo darbų bazėje yra daugybė įvairių mokslo darbų, todėl tikrai atrasi sau tinkamą!
Panašūs darbai
Atsisiuntei rašto darbą ir neradai jame reikalingos informacijos? Pakeisime jį kitu nemokamai.
Pirkdamas daugiau nei vieną darbą, nuo sekančių darbų gausi 25% nuolaidą.
Išsirink norimus rašto darbus ir gauk juos akimirksniu po sėkmingo apmokėjimo!