reti di computer - dipartimento di matematica e fisica · università degli studi roma tre -corso...
TRANSCRIPT
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 1
CorsodiLaureainMatematicaDipartimentodiMatematicaeFisica
Sistemiperl’elaborazionedelleinformazioni
4.Retidicomputer
DispensedelcorsoIN530a.a.2016/2017
prof.MarcoLiverani
Retidicomputer
• Leretisonouncomponentefondamentaleperlarealizzazionediunsistemainformativo• Senzalareteicomputernonpossonocomunicarefraloroeleunichemodalitàdi
decentralizzazionedell’elaborazionedell’informazionesonocostituiteda:– collegamentoditerminaliaduncomputercentrale:l’elaborazioneelagestionedeidatisono
concentratesulcomputer,mal’interazionetracomputereutentièdecentralizzatasuiterminali(apocadistanzafisicadalcomputer)
– trasferimentodifiledauncomputerall’altro,medianteconnessionipunto-puntoprivediuneffettivomeccanismodicomunicazionebidirezionale
• Siparladiretedicomputerquandoeffettivamentepiùsistemidielaborazioneautonomi(computer)possonodialogarefraloroscambiandosiinformazioniattraversounmezzofisicodiconnessioneequandotalemeccanismodicomunicazioneediscambioèreplicabilesupiùcomputer,senzadipenderedallaspecificitàdelleduemacchinechecomunicanofraloro
• Èmoltoimportantelapossibilitàoffertadallemodernetecnologiediretediinterconnetterefralororetidiverse,anchemediantemezzitrasmissivieterogenei
• Gliutilizzicheoggifacciamodelleretidicomputer(utilizzateormai,ancheinconsapevolmente,prevalentementedapersoneprivedicompetenzetecnichespecifiche)sononumerosissimi:scambiodiinformazioni(mail,messaggistica,...),accessoabanchedati,accessoaservizion-line,acquistietransazionifinanziarie,giochiedivertimento,ecc.
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 2
Comesirealizzaunaretedicomputer
• Unaretedicomputersirealizzaattraversoleseguenticomponenti– componentifisiche:icomputereinodidellarete(router,gateway,switch,...),maancheimezzi
trasmissivi(cavielettrici,caviinfibraottica,onderadio,...)– componentisoftware:iprogrammi(inparterealizzaticomecomponentideisistemioperativi)che
consentonoaicomputereainodidellaretedieffettuareloscambiodiinformazioni,conparticolareattenzioneall’efficienza,all’affidabilitàe(inparte)allaindipendenzadalmediafisicoconcuisirealizzalaconnessione
Computer1
Sistemaopera/vo
Computer2
Sistemaopera/vo
Programmaapplica/voserver
InterfacciadireteCanaledicomunicazione(rete)
Serviziodirete(so-ware)
Interfacciadirete
Serviziodirete(so-ware)
Programmaapplica/voclient
componentifisiche
compo
nentisoftw
are
Packet switching
• Nelleretiditrasmissionedatil’informazionedainviaredallasorgentealdestinatariovienesuddivisainpacchettitrasmessiseparatamente
• Questatecnicasidefiniscepacket switching (commutazionedipacchetto)epermettediutilizzareilmedesimocanaledicomunicazioneperalternarelatrasmissionedidatidapartedipiùnodidiunastessaretechecondividonoilcanale– Comenellatecnicadelmultitasking,dovevieneripartitoiltempodellaCPUdedicato
all’elaborazionedeidiversiprocessi,nelpacket switching ilcanaledicomunicazionevieneutilizzatointempidiversidadiversinodidellarete,alternandorapidamenteleoperazioniditrasmissionedapartedeidiversinodiinmododadarel’impressionechetuttiinodidellaretestianousandoilcanalecontemporaneamente
• Siccomeilcanaledicomunicazionevieneusatocontemporaneamentedapiùnodi,ipacchettipossonoandareinconflitto fradiloro,corrompendosi:intalcasoènecessariotrasmetterenuovamenteisolipacchetticorrotti– Lasuddivisioneinpacchettipermetteanchedirenderepiùefficientelacorrezionedeglierrori:nel
casoincuisiverifichiunerrorenellatrasmissionediunpacchettononsarànecessarioripeterel’interatrasmissione,mailmittentepotràlimitarsiatrasmetterenuovamentesoloilpacchettochesiècorrotto
• Ipacchettivengonotrasmessisequenzialmente,ma,ancheacausadelleritrasmissioni,possonoarrivareinunordinediversodaquelloconcuisonostatispediti:saràildestinatarioadoccuparsidiricostruirelasequenzacorrettadeipacchettiperrestituirel’integritàall’informazionetrasmessa
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 3
Retibroadcastepunto-punto
• Dalpuntodivistafisicounaretepuòesserebroadcast opunto-punto– Retibroadcast
• Siutilizzalostessocanalefisicoditrasmissione,suddividendolacomunicazioneinpacchetti• Ognipacchettocontienel’identificativodeldestinatario chericeveeleggeilpacchettodidati,glialtrinodi
dellareteloscartano• Èpossibileinviarepacchettidestinatiatutti inodidellarete(broadcast)• Èpossibileinviarepacchettidestinatiadalcuni nodidellarete(multicast)
– Retipunto-punto• Ilcanaletrasmissivoèriservatoallacomunicazionetraduenodidellarete• Perfargiungereadestinazioneundatoilpacchettodevepassareattraversopiùnodiconnessifraloroin
modalità“punto-punto”:vieneutilizzatounalgoritmodirouting perinstradareilpacchettoversoilnododidestinazione
• Tipicamente,maconmolteeccezioni,leretipocoestese(retilocali)sonoditipobroadcast,quellemoltoestese(retigeografiche)sonopuntopunto
Dimensionedellarete
• Leretipossonoessereclassificateinbaseallaloroestensionefisica– Retilocali:colleganofraloronodipocodistanti(es.:entro1Km);tipicamentecolleganocomputer
diunostessoufficiooedificio– Retimetropolitane:colleganoedificidistantisolopochiKml’unodall’altro(es.:laretediunacittào
dellesedidiunastessaaziendanell’ambitodiunacittà)– Retigeografiche:colleganocomputer(ointereretilocaliometropolitane)distantifralorocentinaia
omigliaiadiKm• Ladistanzadeicomputerdacollegareèundatoimportante,perchéperdistanzediversesi
utilizzanotecnologietrasmissivediverse,piùadatteacoprireinmodoefficientebreviolunghedistanze
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 4
RetiLocali(LAN– LocalAreaNetwork)
• Sonodiproprietàdiunastessaorganizzazione(tuttalareteèdiproprietàesottoilcontrollodellamedesimaazienda)
• Siestendononell’ambitodelmedesimoedificioodiun“campus”(insiemediedificiinun’areaprivata):ingeneralenonsipuòutilizzareilsuolopubblicoperstenderecaviditelecomunicazione
• Velocitàditrasmissione:moltoelevata,da10Mbps finoa1Gbps• Topologiadellarete(topologiadelgrafoconcuipuòessererappresentatalarete):
– bus:tuttiinodisiaggancianoadunostessocanaletrasmissivo;sevieneusatocontemporaneamentedapiùnodi,sigeneranodelle“collisioni”cheobbliganoaritrasmettereipacchettidiinformazioni,causandounrallentamentoneltrafficosullarete(es.:retiEthernet)
– ring:laretehalaformadiunanellosucuisiaggancianotuttiinodi;inoditrasmettonounopervolta,aturno(es.:retiIBMToken Ring)
Retigeografiche(WAN– WideAreaNetwork)
• SiestendonoperdiversiKm,anchesull’interopianeta(Internet)• Sonocostituiteda
– end-point:icomputerutilizzatidagliutenti– canalitrasmissivi:mezzieterogeneiimpiegatiperlatrasmissionedeidati– puntiintermedi:router,nodidicommutazione,necessariperveicolareidatitrasmessidaunend-
point adunaltroattraversolarete
• TipicamenteunareteWANèutilizzatapercollegarefraloropiùretiLAN
LAN
LAN
LAN
WAN - Wide Area Network
Router
Router
Router
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 5
Retigeografiche(WAN– WideAreaNetwork)
• Irouter sonogliapparatifondamentaliperlarealizzazionediunaWAN– ricevonoipacchettididati– limemorizzanotemporaneamente– liinvianoversoladestinazionefinaleadunnodovicinoappenailcanaleditrasmissioneè
disponibile– igateway sonorouterchesifannoanchecaricodiproblematichediinterconnessionetrareti
eterogenee(perprotocolloomediafisicotrasmissivo)• LatecnologiatrasmissivaperleretiWANèeterogenea(anchenell’ambitodellastessarete):
– lineededicatepercollegareduenodi(CDN– CircuitoDirettoNumerico)– lineetelefoniche(DSL– DigitaleSubscriber Line;ISDN– Integrated ServicesDigitalNetwork)– pontiradio– canalisatellitari
LAN CDN LANDSL
Ponte radio
CDN
Canale satellitaredownlink: broadcastuplink: punto-punto
Ilsoftwareperlereti
• Nellacomunicazionetracomputersonodueprogrammiadialogaretradiloro• Nell’ambitodeldialogotraidueprogrammispessosidistinguonodueruoli:
– client:ilsoftwarecheiniziaildialogocollegandosiadunserverperaccedereadunserviziooadunarisorsa;
– server:ilsoftwarecheèinattesadellaconnessionedapartediunoopiùclientechefornisceilservizioolarisorsarichiesta.
• Ilmodellodelleretipeer-to-peer (letteralmente:“dapariapari”)ciascunnodo(software)presentenellaretesvolgesimultaneamenteilruolodiserver(offrendoserviziadaltrinodi)odiclient(richiedendoserviziadaltrinodi)
Computer1
Sistemaopera/vo
Computer2
Sistemaopera/vo
Programmaapplica/voserver
InterfacciadireteCanaledicomunicazione(rete)
Serviziodirete(so-ware)
Interfacciadirete
Serviziodirete(so-ware)
Programmaapplica/voclient
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 6
Ilsoftwareperlereti
• Ilsoftwareperlagestionedellecomunicazioniinreteèestremamentestrutturatoesicomponedimodulisuddivisiperlivelli:ognilivellocomunicasoloconillivellosoprastanteeconquellosottostante– Illivellopiùbassoèquellofisico,relativoallagestionedellatrasmissionesuunparticolaremedia– Illivellopiùaltoèquellopiùastratto,relativoallainterazionetradueapplicazionicheoperanosu
dueend-point(duecomputer)distinticollegatiinretefraloro• Unadistinzionetraidiversisoftware/protocollidigestionedelleretisieffettuainbaseal
numerodilivellidicuiècompostoeallafunzioneassegnataaciascunlivello• Loscopodiciascunlivelloèquellodioffriredeiserviziaglistratisovrastanti,nascondendo
lacomplessitàrelativaall’implementazionedelserviziostesso– Inquestomodoècomeseduelivelliparitari,entrambidilivellonsuiduenodidellarete,
parlasserotraloromedianteunprotocollodilivellon– Inrealtàiduecomponentidilivelloncomunicanofraloroattraversoiservizioffertidai
componentidilivellon–1– Ildatovienecostruitodallivellondelprimohost
• Traognicoppiadilivelliadiacenhèdefinitaun’interfaccia,chedefinisce:– leoperazioniprimitivechepossonoessererichiesteallivellosottostante– iservizichepossonoessereoffertiallivellosovrastante
Stratificazionedelsoftwareperlereti
Ilsoftwareperleretièsuddivisoinstrati:ognilayer sioccupadiunaspecificaproblematica:
5.Comefannodueprogrammiacomunicaretraloro?Chidefinisceleregoleconcuiavvienelacomunicazioneequalidatidevonoesseretrasmessi?Qualesignificatohanno?4. Nellacomunicazionetradueprogrammicomesisvolgela“sessionedicomunicazione”?Comesisegmenta ildatodacomunicareecomelosiriassembla quandolosiriceve?Chiaprelacomunicazione,chilatieneattivaechilachiudealterminedellacomunicazione?Comesifaatenereattivesessionidicomunicazionediverseconlostessocomputer?Comesidistinguonotipidicomunicazionedifferenti(es.:pagineweb,postaelettronica,chat,ecc.)?3. Suunarete,nonsuunsingolosegmentodicollegamentotraduecomputer,comesifaafararrivareidatitrasmessidalmittentefinoalgiustodestinatario?Qualepercorsodevecompierelacomunicazione?Qualecamminosulgrafo deveesseresceltoperfarcomunicareduenodi?Comeidentificoinodidellarete?2. Comesiregolailflussodidatisulcanaledicomunicazione?Quantidatidevonoessereinviati(oricevuti)sulcanale?Comecisiaccorgediunerrore ditrasmissioneecomesirimediaaduneventualeerrore?1. Qualemezzoditrasmissionedeveessereutilizzato?Comesirappresentanoidatisulcanaledicomunicazioneanalogico?Comesiattiva esiutilizzafisicamenteilcanale?
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 7
Stratificazionedelsoftwareperlereti
Computer
Sistemaopera-vo
Programmaapplica-vo
Interfacciadirete Aspetti fisici della trasmissione
Connessione tra sorgente e ricevente e correzione errori
Percorso sulla rete dal mittente al destinatario
Segmentazione in pacchetti, e scambio dati
Dialogo tra applicazione client e applicazione server
Serviziodirete(so-ware)
Stratificazionedelsoftwareperlereti
Host 1 Host 2
Livello 5
Livello 4
Livello 3
Livello 2
Livello 1
Mezzo fisico di comunicazione
Livello 5
Livello 4
Livello 3
Livello 2
Livello 1
Interfaccia 4/5
Interfaccia 3/4
Interfaccia 2/3
Interfaccia 1/2
Interfaccia 4/5
Interfaccia 3/4
Interfaccia 2/3
Interfaccia 1/2
Protocollo liv. 5
Protocollo liv. 4
Protocollo liv. 3
Protocollo liv. 2
Protocollo liv. 1
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 8
Stratificazionedelsoftwareperlereti
Metaforicamenteècomeseilsoftwareperleretifunzionassecomenellaseguentefiguraincuiduefilosofistranieridevonocomunicaretradiloro(trattodaG.Bongiovanni):
– Ilfilosofosfruttailservizioditraduzionedell’interpretechetraduceescriveundocumentoininglese
– L’interpretesfruttailserviziodellasegretariaperinviareiltestoviafax– Lasegretariautilizzailfaxcomecanalefisicoditrasmissione
Filosofo indù (parla indostano)
Interprete
Segretaria
Linea telefonica
Stregone africano (parla swahili)
Interprete
Segretaria
Dialogo suimassimi sistemi
Lingua inglese
Uso del fax
Stratificazionedelsoftwareperlereti
• Lacomunicazioneèsegmentatainpacchettiinmodoche– ilcanaletrasmissivononsiaimpegnatocontinuativamentepertempimoltolunghi– incasodierroreditrasmissionedebbaessererispeditosolounpacchettoenonl’interoflussodi
dati• Infaseditrasmissione,ognilivelloaggiungealpacchettoricevutodallostratosovrastanteun
header,formandocosìunpacchettopiùgrande(ilpacchettoviene“imbustato”)• L’header contieneinformazionidiservizioutiliperloscambiodelpacchettodidati
– lunghezzadelpacchetto– numeroprogressivodelpacchettonell’ambitodell’interoflussodicomunicazione– dataedoraincuiilpacchettoèstatoprodotto(timestamp)– ...
• Infasediricezioneognilivelloriceveunpacchetto“imbustato”dallivelloinferiore:illivellonscorporal’header delpacchettodalsegmentocontenenteidativeriepropri(ilpacchettovieneestrattodallabustadilivellon)– illivellon esegueanchedeicontrollidiintegritàdelpacchettosullabasedelleinformazioni
contenutenell’header– ilricevitorericostruisceilflussodicomunicazioneoriginarioconcatenandoipacchettiricevutinon
inbaseall’ordinediricezione,mainbasealnumeroprogressivopresentenell’header delpacchetto
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 9
Modelliearchitetturedellereti
• Esistonomodelliteoriciperladefinizionediun’architetturadiunareteearchitettureeffettivechedifattocostituisconounostandardnelmondodellereti
• ModelloOSI(OpenSystemsInterconnection)– definisceilnumero,lecaratteristicheelerelazionifunzionalitrailivellidiunsoftwaredirete,ma
nonnedefinisceiprotocollieffettivi– consistein7livelli,forseunpo’troppoastrattiedidifficileimplementazione(ricalcaIBMSNA)
• ArchitetturaTCP/IP(Trasmission ControlProtocol /InternetProtocol)– definisce,livelloperlivello,anchei
protocollieffettivi– consistein4livelli(semplificandoil
modelloOSI)Livello 7: Application
Livello 6: Presentation
Livello 5: Session
Livello 4: Transport
Livello 3: Network
Livello 2: Data Link
Livello 1: Fisico
Livello 4: Application
Livello 3: Transport
Livello 2: Internet
Livello 1: Network access
Modello OSI TCP/IP
Lo“stack”TCP/IP
• L’architetturadireteTCP/IPèquindiuninsiemediprotocollicheoperanocoordinatifradiloroavarilivellidiunostack costituitodaquattrolivelli
• Livello1:Networkaccess– protocollifisiciperretiLANeWAN(es.:Ethernet,DSL,ISDN,PPP,ecc.);includeillivelloDataLink
• Livello2:Internet– protocolloIP (InternetProtocol)perl’indirizzamentoeilroutingdeipacchettisulcanalefisicoverso
ladestinazionefinale• Livello3:Transport
– protocolloTCP (Trasmission ControlProtocol):frammentalacomunicazioneinpacchettiinuscitaeriassembla ipacchettiiningressoperricostruireilflussodidatioriginari;garantiscelaconsegnadelpacchetto
– protocolloUDP (UserDatagram Protocol):frammentainpacchetti,manongarantiscel’ordinenélaconsegnadelpacchetto
• Livello4:Application– protocolliapplicativiperlacomunicazionetraunprogrammaclientedunprogrammaserver:FTP
(FileTransferProtocol),Telnet (emulazionediterminaleperconnessioniremote),SMTP (SimpleMailTransferProtocol),POP3 (PostOfficeProtocol v.3),DNS (DomainName Service),HTTP(HyperText TransferProtocol),SOAP (SimpleObjectAccessProtocol),ecc.
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 10
Lo“stack”TCP/IP
• Lostack TCP/IPvieneimplementatoperinteronelsistemaoperativodiuncomputer,sucuigiraanchel’applicazione“end-user”cheèl’elementosorgenteodidestinazionedellacomunicazione
• Suapparatidireteintermedi(router,gateway,...)ilprotocollovieneimplementatoparzialmente,senzaspingersifinoallivelloApplication,chesarebbeinutilepertaliapparati
Livello 4: Application
Livello 3: Transport
Livello 2: Internet
Livello 1: Network access
Livello 2: Internet
Livello 1: Network access
Livello 2: Internet
Livello 1: Network access
Livello 4: Application
Livello 3: Transport
Livello 2: Internet
Livello 1: Network access
Computer sorgente
Router
Computer destinazione
Router
Lostack OSIsemplificato
• PerdescrivereidiversiaspettidelprotocollodireteadottiamoilmodelloOSIsemplificato,ridottoasolicinquelivelli:1. LivelloFisico2. LivelloDataLink3. LivelloNetwork4. LivelloTransport5. LivelloApplication
• NelTCP/IPillivelloNetworkAccessincludesiaillivelloFisico cheilDataLinkdelmodelloOSIsemplificato
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 11
Livello1:Fisico
• Ilcanaledicomunicazionefisicoperlarealizzazionediretidicomputerèuncanaleanalogico,incuiivalorivarianoinmodocontinuo(energiaelettrica,campoelettromagnetico,luce,ecc.)all’internodiundeterminatointervallodettoampiezza
• Ilsegnaletrasmessosuuncanaleanalogicopuòessererappresentatomedianteunafunzionesinusoidalenonperiodicache,conglistrumentidell’analisidiFourier,puòessereinterpretatacomesommadifunzionitrigonometricheconampiezzaeperiodo(efrequenza)diverse
• Unsegnaleèquindicaratterizzatodaunintervallodifrequenzedellefunzionisinusoidalichelocompongono:taleintervallosichiamabandadifrequenzadelsegnale
• Ancheilmezzofisicoditrasportodelsegnaleècaratterizzatodaunintervallodifrequenzedellefunzionichecompongonoilsegnalechepuòesseretrasmessodatalemezzofisico;questointervalloprendeilnomedibandapassante(es.:3KHz:da0a3.000HZ)
A (a
mpi
ezza
)
t (tempo)
Bandapassanteevelocitàditrasmissione
• HarryNyquist (1889-1976)nel1927dimostròcheunsegnaleanalogicodibandah (da0 ahHz)puòesserericostruitomedianteunacampionaturaeseguita2h voltealsecondo
• Unsegnaledibandah consentedirappresentareperognisecondounaquantitàdiinformazioneconunnumerodibitparia2h log2 V,doveV èilnumerodipossibilivaloridelsegnale(possibilivaloridiscretidelsegnale)
• Quindiconunsegnalebinario(V =2)conunabandadi3KHz,ilnumerodibittrasmessialsecondoèparia2× 3000× 1=6.000bitpersecondo (6Kbps)
• Pertrasmettereadunavelocitàsuperiorea6KbpssiescogitanodellecodifichedelsegnalechesfruttanounnumerodivaloridelsegnaleV>2 (nellapraticaV èunvalorepiuttostoelevato)
• ClaudeShannon (1916-2001),padredellaTeoriadell’Informazione,introdusseilconcettodirumore suuncanaledicomunicazioneeformulòuncelebreteorema(SecondoTeoremadiShannon,1948)incuiaffermòchelamassimaquantitàdiinformazionetrasferibileinmodoaffidabilesuuncanaleaffettodarumoreèlimitatodaunacertasogliacheprendeilnomedicapacitàdicanale
• IndicandoconS/N ilrapportotrasegnaleerumore,secondoilTeoremadiShannon lamassimavelocitàtrasmissivadelcanaleconbandapassantedih Hzèdatodah log2 (1+S/N)
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 12
Livello2:DataLink
• IllivelloDataLinkoffreunacomunicazioneaffidabileedefficientetraduenodidirettamenteconnessi dauncanalefisico(uncavoEthernet,unalineatelefonica,ecc.)– offreserviziallivelloNetwork(sovrastante)– determinalasuddivisioneinframe deibitalivellofisico– gestisceglierrori ditrasmissione(verificaintegritàdeipropripacchettispediti,altrimentiliritrasmette,ad
esempiotramitel’algoritmobackoff)– regolailflussodidatitrasorgenteedestinatario
• Questolivellodellostack ètipicamenteimplementatonelfirmware(oneidriver)diunaschedadireteEthernetodiun’interfacciawi-fi;iprotocolliPPP (Point-to-PointProtocol)eSLIP (SerialLineInternetProtocol)sonoprotocollidellivelloDataLinkimplementativiasoftware
• IllivelloDataLinkintrasmissione:– ricevedallivelloNetworkunpacchettodidati(formatobinario)– frammentalasequenzadibitinframe dipendentidalparticolareprotocollofisicoditrasmissione– calcolaunchecksum diciascunframe– passailpacchettoformatodalframe edalchecksum allivelloFisicosottostante,chelospediscecome
sequenzadibit• IllivelloDataLinkinricezione:
– riceveunasequenzadibitdallivellofisico– ricostruisceiframeunodopol’altro– ricalcolailchecksum everificachesiaugualeaquellocontenutonelframe
Livello3:Network/Internet
• IllivelloNetworksioccupaditrasferireilpacchettodidatidallasorgentealladestinazionepassandoattraversounaseriedinodiintermedi(routing,instradamentodeipacchetti)
• IllivelloNetworksioccupadi– conoscerelatopologiadellarete– sceglieredivoltainvoltailcamminomiglioreper“instradare”ipacchetti(routing)– gestireilflussodeidatielacongestionedellarete– gestireproblematicherelativeallainterconnessionediretidiverse
• IllivelloNetworkèparticolarmentesofisticatosugliapparatirouter,proprioperl’implementazionediunalgoritmodiroutingefficiente
• Glialgoritmidiroutingsonospessobasatisuiseguentiprincipi– algoritmidicamminominimo:ilpacchettovieneinstradatoversolaviacherichiedeunnumero
inferioredihop (passaggipernodiintermedi)pergiungerealrouterdidestinazione– algoritmidiflooding:ilpacchettovieneinviatosututtiicamminiuscentidalrouter,trannequello
attraversocuiilpacchettoèarrivatoalrouter– algoritmiflow-based:vienecalcolatoiltrafficosullediverselineeuscentidalrouter,tenendoconto
dellalorocapacitàtrasmissivae,inbaseaquestidati,sistabiliscesuqualelineainviareilpacchetto
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 13
ProtocolloTCP/IPeindirizziIP
• Illivello3“Network/Internet”nelprotocolloTCP/IPèrealizzatomedianteilprotocolloIP(InternetProtocol)chesioccupadi:– Trafficoinuscita:
• ricevereidatidallivello4diTrasportoeincapsularliinpacchettiIP(max 64KByte,tipicamente1.500Byte)• instradareipacchettisullaretemedianteillivelloDataLink
– Trafficoiningresso• riassemblare ipacchettiricevutidallivellisottostanti(possonoessereframmentati• spacchettareilpacchettoIP,verificarloedestrarreidatidellivelloTrasporto• consegnareidatiallivellotrasportonell’ordineincuiquestisonoarrivati(chepuòessereunordinediverso
daquelloconcuisonostatispediti)
• UnpacchettoIPèunasequenzadibytecostituitadaunheader edaunsegmentodidati• Laparteheader contiene:
– laversione delprotocollo– lalunghezza dell’header elalunghezzatotaledelpacchetto– unidentificativodelpacchetto perricostruirloapartiredaframmentipiùpiccolieunprogressivo
delframmentonelcasoilpacchettoIPdebbaesserericostruitoassemblandopiùframmenti– iltimetolive,ossiauncontatorechevienedecrementatodiunoadognipassaggioperunnodo
intermedionellarete:quandoarrivaazeroilpacchettovienescartato– indirizzodelmittente edeldestinatario– altreinformazioniopzionali
IndirizziIP
• UnindirizzoIPècompostoda32bit,suddivisiin4gruppida8bit(4byte)• L’indirizzovieneassegnatoadogniinterfacciadiunnododellareteperidentificarlo
univocamente;contienedueinformazionidistinte:– l’identificativodellarete incuisitroval’host– l’identificativodell’host all’internodellarete
• UnostessohostpuòessereidentificatodapiùindirizziIP• GliindirizzicheidentificanolereticonnessedirettamenteadInternet(retichesonouna
porzionedellareteInternet)vengonoassegnatialleorganizzazionichenefannorichiesta(aziende,entipubblici,associazioni,ecc.)daorganisminazionalidettiNIC (NetworkInformationCenter)
• AlivellomondialeilregistrodiassegnazionedegliindirizziIPvienegestitodaICANN(InternetCorporationforAssigned Names andNumbers)edallasuaorganizzazionecontrollatadenominataIANA (InternetAssigned Numbers Authority)
• InEuropailregistrodegliindirizziIPègestitodaRIPENCC(Réseaux IPEuropéens – NetworkCoordination Centre);inItaliailregistroègestitodaNIC-IT
• SonodisponibiliidentificativiperretiIPprivate,nonconnessedirettamente adInternet:perl’usodiidentificativiriservatialleretiprivatenonènecessarioottenerealcunaautorizzazionedaentidigestione
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 14
IndirizziIP
• L’insiemedei32bitchecostituisconol’indirizzoIPvieneripartitotrabitriservatiall’identificazionedellareteebitriservatiall’identificazionedell’host inbasealnumerodihostchedevonoessereindirizzatiinunastessarete– sedevoassegnareindirizziamoltihost,allorariserveròpiùbitall’identificazionedeglihostemeno
bitall’identificazionedellarete– inquestomodosihannopocheretidistintecontenenticiascunamoltissimiindirizziIPemoltereti
cheinvececontengonounnumeropiuttostolimitatodiindirizzi• Gliindirizzidiretesonodistintiintrediverseclassi,asecondadelnumerodibitriservati
all’identificazionedellareteodeglihost:– 126retidiclasseA,chepossonocontenere16milionidihostciascuna– 16.382retidiclasseB,concirca64.000hostciascuna– 2milionidiretidiclasseC,con254hostciascuna
0 rete (7 bit) host (24 bit)
1 0 rete (14 bit) host (16 bit)
1 0 rete (21 bit) host (8 bit)1
8 bit 8 bit 8 bit 8 bit
Classe A
Classe B
Classe C
Es.: 87.23.134.216 = 01010111.00010111.10000110.11011000
Es.: 157.76.134.216 = 10011101.01001100.10000110.11011000
Es.: 215.138.97.216 = 11010111.10001010.01100001.11011000
192.106.24.0
203.67.242.0
203.67.242.30203.67.242.20203.67.242.10
203.67.242.1
192.106.24.15 192.106.24.20 192.106.24.30
192.106.24.1
193.52.198.1
193.52.198.2193.52.198.0
IndirizziIPesottorete
• Ilsistemaoperativodiognihostèconfiguratoconl’indicazionedi– indirizzoIPdell’host– mascheradisottorete,perricavarel’identificativodellarete– l’indirizzodelgatewaydidefault,acuiinviareipacchettiIPquandoildestinatariononappartiene
allastessaretedell’host• Mascheradisottorete,esempio:255.255.255.0
– eseguendoun’operazionediAND suibitdell’indirizzoIPdelmittenteedeldestinatariosiottienelastessastringabinariasoloseiduehostappartengonoallastessarete
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 15
IndirizziIPesottorete
• Classediindirizzi:
• Mascheradisottorete:
• IndirizzoIPhost 1:
• IndirizzoIPhost 2:
• IndirizzoIPhost 3:
192 106 24 0
255 255 255 240
11111111 11111111 11111111 11110000
192 106 24 5
192 106 24 13
11000000 01101010 00011000 00001101
192 106 24 172
11000000 01101010 00011000 10101100
11000000 01101010 00011000 00000101 192.106.24.0
192.106.24.0
192.106.24.160
Stessa rete!
AND
AND
AND
ClassidiindirizziperretiIPprivate
• Perleretiprivate(nonconnessedirettamenteallareteInternet!)sonoriservateleseguenticlassiIP(RFC1918):– 1classeA:10.0.0.0– 10.255.255.255– 16classiB:172.16.0.0– 172.31.255.255– 256classiC:192.168.0.0– 192.168.255.255
• LeclassiIPprivatepossonoessereutilizzatedachiunquesuunareteprivata,senzadovernerichiederel’autorizzazioneadunorganismodigovernodellarete;duereticheusanolastessaclassediindirizziprivatinonpossonoesserecollegatetraloro
• Vieneriservatoancheunindirizzoriservatoarappresentareinternamentel’host stesso(indirizzodiloopback):127.0.0.1– Èutilepereffettuaredeitestdelfunzionamentodiunsoftwareinrete,senzautilizzarelarete
• PercollegareallaretepubblicaInternetunareteconindirizziIPprivati,ènecessarioutilizzareunapparato(gateway)cheeseguailNAT (networkaddress translation),ossiarimappa gliindirizziIPprivatisuunoopiùindirizziIPpubblici,visibileall’esternodellasottoreteeutilizzabileperilrouting– spessolafunzionediNATvienesvoltadaunapparatofirewall odallostessorouter
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 16
ConnessionediretiIPprivateallaretepubblica
• PerconnettereunareteconindirizzamentoIPprivatoallaretepubblicaènecessarioutilizzareilNAT(networkaddress translation)– inquestomodolereticonindirizziprivatinoncomunicanomaidirettamentefradiloroeconlaretepubblica– quindileclassiIPdiretiprivatepossonoessereusatedapiùorganizzazioniindipendentementel’unadall’altra
(nonserveuncoordinamentoperl’assegnazionediclassiIPprivate)
10.0.0.0
10.0.0.0
10.0.0.3010.0.0.2010.0.0.10
203.67.242.1
10.0.0.15 10.0.0.20 10.0.0.30
192.106.24.1
193.52.198.1
193.52.198.2193.52.198.0
192.106.24.2192.106.24.3
(NAT e port fowarding: 10.0.0.10:80)10.0.0.1
10.0.0.1
203.67.242.2
10.0.0.10
LareteInternet
• LareteInternet èformatadall’interconnessionediretiIP:gliindirizzideglihost(amenodelleretiprivateconnesseattraversomeccanismidiNAT)sonoidentificatiunivocamente daindirizziIP
• Ilgrafohaunatopologiachelocalmenteèquelladiunastella (unalberoconunaradiceetuttelefoglieconnesseallaradice),maglobalmentenonèunalbero,èfortementeconnessa,conlacreazionedinumerosiciclicheoffronorobustezzaeridondanzaalleconnessionidirete– Figura:rappresentazionediLucent
TechnologiesdelleconnessionidellareteInternetnelGiugno1999
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 17
LareteInternet
LastrutturadellaRetepuòesseresemplificataconilgrafoinfigura(rete“piccolomondo”)
LareteInternetconnessioniwired agosto1998
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 18
LareteInternetconnessioniwired gennaio1999
LareteInternetconnessioniwired giugno1999
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 19
LareteInternet:crescitainarrestabile
• Larete(ilnumerodinodiconnessi)continuaacrescereinmodoinarrestabileebenpresto,conla“InternetdelleCose”(IoT – InternetofThings)sarannoconnessiinretesingolioggettidiusocomune(orologi,elettrodomestici,ilcollaredelcane,ecc.)
• Lo“spaziodiindirizzamento”diIPv.4ètroppolimitato,sidovràpassareadunnuovo“spaziodiindirizzamento”,piùesteso,denominatoIPv.6– indirizzidi16byte:2128 indirizziIP(sonotantissimi:lasuperficiedellaTerraèdi510.072.000Km2,
quindiavremoadisposizioneinmedia6,7x1023 indirizziIPperognim2)– semplificazionedell’header:7campi
invecedi13– funzionidiautenticazioneeprivacydei
dati,basatesullacrittografia
Livello4:Transport
• IllivelloTrasportoèun’astrazionedellivelloNetworkeconsentedistabilireconnessionitraprogrammi(clienteserver)eattuareloscambiodidati,senzacurarsidegliaspettifisiciodirouting gestitidailivellisottostanti
• Nell’ambitodell’architetturaTCP/IPsonodefinitidueprotocollidellivello4:– TCP,Transmission ControlProtocol– UDP,UserDatagram Protocol
• UDPèunprotocollosemplicee“nonaffidabile”(nongarantiscelaconsegnadelpacchettodiinformazione)
• TCPoffreunservizio“affidabile”,ossiagarantiscelaconsegnadeldato(mascherandolacomplessitàelareiterazionedioperazionichequestaaffidabilitàcomporta)anchesuunaretenonaffidabile
• IlprotocolloTCPsioccupadi– trasmetteredatiinuscita:
• accettaredatidallivelloApplication• spezzarliinsegmenti (dimensionemassima64KByte,tipicamentecirca1.500Byte)• consegnarliallivelloNetwork,eventualmenteritrasmettendoli
– riceveredatiiningresso:• riceveresegmentidallivelloNetwork• rimetterliinordine,eliminandobuchiedoppioni• consegnareidati,inordine,allivelloApplication
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 20
IlprotocolloTCPeisocket
• LaconnessionecreatadalprotocolloTCPalLivello4dellostack,èdefinitaidentificandoiduepuntidiaccessodettisocket
• Ognisocket haunsocket number checonsistenellacoppia“IPaddress :port number”(es.:193.204.165.101:80)
• Ilport number èunnumeroda16bit(0-65.535);ivaloritra0e255identificanoiportnumber diservizistandard(well-known TCPport)
• IlsistemaoperativooffredelleinterfacceAPIperlechiamatedisistemaperl’aperturadiconnessioniversospecificisocket (indirizziIPeporteTCP)
• Pergarantirel’affidabilitàdellaconnessione,ilprotocollosioccupadellafasediconnessioneconunhandshaking traiduenodi,siainfasediconnessionechedichiusuradellaconnessione
Usodeisocket percomunicazionetraclienteserver
IlsistemaoperativooffreunaAPI(application programminginterface)perl’utilizzodeisocket daprogrammaconunaseriedisystemcalldedicateall’esecuzionedellediverseoperazioni
SERVER CLIENT
socket(…)
bind(…)
listen(…)
accept(…)
… in attesa di connessione …
socket(…)
connect(…)
read(…) write(…)
write(…) read(…)
close(…)read(…)
close(…)
handshake
scambio dati
scambio dati
End Of File
inquestafasel’applicazioneserverèdedicataalla
comunicazioneconunasolaapplicazioneclient
seilserverdevegestirepiùconnessionicontemporanee,
alloraperogniconnessionedapartediunclientdeve
generareunprocessofiglio(fork)
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 21
Livello5:Application
• IllivelloApplication èquelloincuieffettivamentedueapplicazioni(unclient edunserver)cheoperanosuduenodidellarete(oanchesullostessonodo)dialoganoinviandosideidati,sfruttandotuttiilivellisottostantiperrendereeffettivoilprocessodicomunicazione
• Aquestolivellosonodefinitinumerosiprotocolliapplicativi:– protocollidiservizio,utilizzatiperconsentireosemplificareilcorrettofunzionamentodella
comunicazioneinrete(es.:DNS,SNMP,...)– protocollistandardperservizicomuni(es.:emulazionediterminale,postaelettronica,web,...)– protocolliproprietari,definitidachihaprogettatoundeterminatosoftware,perfardialogarela
componenteclientconquellaserver(es.:unprogrammadigestionecontabile,...)• Unprotocolloapplicativoècostituitodauninsiemedicomandi edaunasintassi che
definiscelamodalitàconcuiicomandipossonoesserescambiatitraclienteservereilformatochedevonorispettareidatieiparametrifornitiaicomandi
DNS– DomainName System(TCPport 53)
• L’utilizzodegliindirizziIPdapartedegliutentidiunareteTCP/IPèpiuttostoscomodo,perquestomotivoèstatodefinitounsistemadeinomididominio,peridentificarepiùfacilmenteinodidellarete
• IlsistemaDNSècostituitoda– unoschemagerarchicodidefinizionedeinomi,basatosulconcettodidominio– undatabasedistribuitochememorizzaerendedisponibilel’insiemedeinomi– unprotocollodicomunicazioneperl’interrogazionedeldatabaseel’aggiornamentodeinomi
associatiainodidellarete(chesonocomunqueidentificatidaunindirizzoIP)• Inomiassociatiaglihostsonoutilizzatidagliutentiedalleapplicazioni,manonpossono
sostituirel’indirizzoIPsucuisibasailLivelloNetwork(oInternet);perpassaredalnomeall’indirizzoIPsiseguonoquestipassi:1. l’applicazionechedeveeseguirelaconnessioneversounhostdicuiconosceilnome(es.:
www.google.com)utilizzalafunzioneAPIperlarisoluzionedeinomicheinviaunarichiestaditraduzioneadunDNSserverlocale
2. ilDNSserverlocalesehanelpropriodatabasel’indirizzoIPassociatoaquelnomelorestituiscealclient,altrimentichiedeadunDNSserverdilivellosuperiore
3. l’applicazionericevecomerispostal’indirizzoIPassociatoalnomeelousaperaprirelaconnessioneTCPversotalehost
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 22
DNS– DomainName System(TCPport 53)
• InomihostassociatiadunindirizzoIPhannolaseguentestruttura:hostname.subdomain.domain.top-evel-domain
comeadesempio:ciop.mat.uniroma3.it
• Nell’esempiosiriconosconolecomponentidelnomeseparatedapunti(quindilecomponentidelnomenondevonocontenereilcarattere“.”):– hostname:“ciop”,èilnomecheidentificaunivocamenteilnododireteinundeterminato
sottodominio– subdomain:“mat”,èilsottodominioincuièinseritol’host;nell’esempioèildominioassegnatoal
DipartimentodiMatematicadell’UniversitàRomaTre– domain:“uniroma3”,èildominioacuiappartienel’host;nell’esempioèildominioassegnato
all’UniversitàdegliStudiRomaTre– top-level-domain:“it”,èildominiodiprimolivellocheèassegnatoall’autoritàitalianadigestione
deinomididominioInternet
• Unnomedihostchecomprendatuttelecomponentidalnomehostfinoaltop-level-domainèunFQDN:fully qualified domainname
• AdunostessoFQDNpuòessereassociatounsoloindirizzoIP,mentreunostessoindirizzoIPpuòessereassociatoapiùFQDN:latraduzioneèunivocamentedeterminatasolonelpassaggiodanomedidominioaindirizzoIP(nonilviceversa)
DNS– DomainName System(TCPport 53)
• IldatabasedelDNSèundatabase“gerarchico”:ICANNeIANAgestisconolaradicedell’alberoedemandanoadaltreorganizzazionilagestionedeitop-level-domain:– CountryCodeTLD (ccTLD):“.it”,“.fr”,“.uk”,“.es”,“.de”,“.tv”,...SonoTLDassegnatialleautorità
nazionalidigestionedellareteInternet(NIC-ITinItalia)– Generic TLD (gTLD):“.com”,“.net”,“.org”,“.edu”,“.gov”,“.mil”,...SonoTLDgenerici,non
corrispondenteadunospecificoPaese• Singoleorganizzazioni(enti,aziende,associazioni,singolicittadini)possonorichiedere
l’assegnazionediunnomedidominiodisecondooterzolivelloadunEntediRegistrazioneaccreditatopressol’autoritàchegestisceilTLD
• Pergestireundominio(diprimo,secondo,terzolivello)ènecessariodisporrediunDNSserver,configuratopergestireildatabasedegliindirizziIPassociatiainomihostdeldominiodipropriacompetenza
• Ladefinizioneel’assegnazionedeinomihostallemacchinedelpropriodominio,vienedefinitaautonomamentedall’organizzazioneintestatariadeldominostesso,configurandoopportunamenteipropriserverDNS
Logodell’autoritàitalianadiregistrazionedeidomini
sottoalccTLD “.it”www.nic.it
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 23
DNS– DomainName System(TCPport 53)
• Duesonoitool softwarepiùcomuniperl’interrogazionedeidatabaseDNSedelregistrodeinomididominio:– nslookup:èunsoftwareclientperinterrogareunDNSservererichiederelarisoluzionediun
hostname nell’indirizzoIPcorrispondente– whois:èunclientperinterrogareidatabase“whois”delleautoritàdiregistrazionedeidomini
marco@aquilante ~$ whois uniroma3.it
Domain: uniroma3.itStatus: okCreated: 1996-01-29 00:00:00Last Update: 2015-02-14 00:52:34Expire Date: 2016-01-29
RegistrantOrganization: Universita’ "Roma Tre"Address: Via Ostiense, 159
Roma – 00154 – RM – ITCreated: 2007-03-01 10:54:28Last Update: 2014-10-28 16:54:06
...Nameservers
ns.uniroma3.itdns.uniroma3.it
marco@aquilante ~$ nslookup> server ns.uniroma3.itDefault server: ns.uniroma3.itAddress: 193.204.167.146#53> www.uniroma3.it.Server: ns.uniroma3.itAddress: 193.204.167.146#53
Name: www.uniroma3.itAddress: 193.205.139.223> exit
FTP– FileTransferProtocol (TCPport 21)
• IlprotocolloFTP consentediscambiarefiletraunhostserveredunhostclient• IfilescambiatipossonoesserefileditestoASCIIofilebinari(programmieseguibili,
immagini,fileinformatocompresso,ecc.)• IlserverFTPmetteadisposizionedelclientunfilesystemremoto,strutturatoadalberocon
directoryesottodirectory• Alcunideicomandiimplementatidalprotocollosonoiseguenti:
– user:autenticazione– put:uploadfile(daclientaserver)– get:downloadfile(daserveraclient)– list/dir:elencofileinunadirectory– cd/lcd:cambiodirectorycorrente
(sulserver/sulclient)– bin:switch tratrasferimentofilebinari
otestoASCII– hash:switch perlavisualizzazione
dellaprogressionedeltrasferimentodati
Server FTP Client FTP
User Interface
User Protocol
Interpreter
User Data Transfer Process
Server Data Transfer Process
Server Protocol
Interpreter
File System
File System
Comandi FTPRisposte FTP
TrasferimentoDati
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 24
marco@aquilante ~$ ftpftp> open ftp.freebsd.orgTrying 193.162.146.4...Connected to ftp.geo.freebsd.org.Name (ftp.freebsd.org:marco): anonymous 331 Guest login ok, send your email address as password.Password: *********230 Guest login ok, access restrictions apply.Remote system type is UNIX.Using binary mode to transfer files.ftp> dir150 Opening ASCII mode data connection for '/bin/ls'.total 12drwxr-xr-x 3 1006 1006 512 Nov 27 2012 pubdrwxr-xr-x 3 1006 0 512 Jul 21 2014 www226 Transfer complete.ftp> cd pub/FreeBSD/ports/i386/packages-9-stable/x11-clocks250 CWD command successful.ftp> bin200 Type set to I.ftp> hashHash mark printing on (1024 bytes/hash mark).ftp> get xclock-1.0.7_1.tbzlocal: xclock-1.0.7_1.tbz remote: xclock-1.0.7_1.tbz229 Entering Extended Passive Mode (|||65212|)150 Opening BINARY mode data connection for 'xclock-1.0.7_1.############################226 Transfer complete.29118 bytes received in 00:00 (160.06 KiB/s)ftp> quit221 Goodbye.
FTP– FileTransferProtocol (TCPport 21)
IlprotocolloFTPgestisceilconcettodisessione:
– nell’ambitodiunostessocollegamentodaunclientversounserver,l’utentepuòmodificarelostatodellaconfigurazione(es.:puòmodificareladirectorycorrentesulserverFTP)epuòdialogareconunasuccessionedicomandichetengonocontodell’effettodelcomandoprecedente
Telnet– Emulazionediterminale(TCPport 23)
• Èunprotocollonatoperscopipiuttostogenerali:<<...fornireunsupportoperlecomunicazionisufficientementegeneralizzato,bidirezionaleedorientatoaibyte...>>
• Èutilizzatoperstabilireconnessioniviareteinemulazionediterminale daunhostremotoversounserver(oggièscoraggiatol’usodiTelnet,perchécomunica“inchiaro”)
• Persuastessanatura,tuttavia,puòessereutilizzatoperconnettersiallaportaTCPdiunqualsiasiservizioedutilizzareilclientperscambiaremessaggisualtriprotocolli
marco@aquilante ~$ telnet gondranoTrying 10.211.55.42...Connected to 10.211.55.42.Escape character is '^]'.
FreeBSD/i386 (gondrano.aquilante.net) (pts/0)
User: liveraniPassword: ********Last login: Sun Mar 8 21:51:03 from localhostFreeBSD 10.0-RELEASE (GENERIC) #0 r260789: Fri Jan 17 01:46:25 UTC 2014
liverani@gondrano:~$ logoutConnection closed by foreign host.marco@aquilante ~$
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 25
SMTP– SimpleMailTransferProtocol (TCPport 25)
• ÈilprotocolloutilizzatopertrasmetteremessaggidipostaelettronicadaunMTA (mailtransferagent)adunaltro
• PerognidominioInternetdeveesseredefinito(medianteunoopiùrecordditipoMXsulserverDNS)almenounmailexchanger,ossiaunhostche,medianteunsoftwareMTAcheutilizzailprotocolloSMTP,èingradodiriceverepostaelettronicaperildominiostesso
• L’architetturadelserviziodipostaelettronicapuòessereschematizzatocomeinfigura
MUA (mail user agent)
MTA (mail transfer agent)
MTA (mail transfer agent)
MUA (mail user agent)
Mittente Destinatario
SMTP SMTP POP3
Mailbox
SMTP– SimpleMailTransferProtocol (TCPport 25)
• IlprotocolloSMTPgestisceunasessione dilavorotramitelaqualepossonoessereinviatipiùmessaggidipostaelettronica
marco@aquilante ~$ telnet mail.pippo.com 25220 mail.pippo.com ESMTP PostfixHELO aquilante.net250 Hello aquilante.net, pleased to meet youMAIL FROM: <[email protected]>250 [email protected] ... Sender okRCPT TO: <[email protected]>250 [email protected] ... Recipient OkDATA354 End data with "." on a line by itselfSubject: messaggio di provaFrom: [email protected]: [email protected]
Ciao,questa e’ una prova..250 Ok: queued as 12345QUIT221 Bye
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 26
POP3– PostOfficeProtocol v.3(TCPport 110)
• Èunodeiprotocollicheconsenteadunsoftwareclientdipostaelettronica(MicrosoftOutlook,AppleMail,MozillaThunderbolt,ecc.)diconnettersiadunmailserversucuirisiedonolemailboxdegliutenti,autenticarel’utente,escaricareimessaggidipostaelettronicagiacentisulserverperl’utente
marco@aquilante ~$ telnet mail.aquilante.net 110+OK <[email protected]>USER pippo+OKPASS pluto+OKLIST+OK
1 8172 124.
RETR 1+OK
Return-Path: <[email protected]>Delivered-To: [email protected]: Sat, 22 Oct 2005 13:24:54 +0200From: Maria Rossi <[email protected]>Subject: Cena in pizzeriaContent-Type: text/plain; charset=ISO-8859-1testo messaggio.
DELE 1+OKQUIT+OK
Apparatidirete
• Hub– èunnododiconcentrazioneedismistamentosullaLANdeipacchetti
direte:riceveunpacchettodaunaportaeloinoltraatuttelealtreporte(noneseguealcunaoperazionediroutingodiindirizzamentoselettivodelpacchetto)
– operaalivello“Fisico”:illivello1dellapilaOSIsemplificataodellostack TCP/IP
• Bridge– consenteilcollegamentotradueLANcheoperanoconmezzifisici
differenti,trasportandoalivellofisicoipacchettidaunmediaall’altro– svolgeilruolodi“commutatore”nellosmistamentodeipacchettiche
provengonodaunaportadelbridgeeindirizzandoli(dopoaverneanalizzatol’header)versolaportasucuièpresenteilnododestinatario
– operaalivello“DataLink”:ilLivello2dellapilaOSIsemplificataoLivello1dellostack TCP/IP
• Switch– èunapparatoanalogoalbridge,maoperageneralmentesuuno
stessomedia(es.:reteEthernet)e,alcontrariodiunbridge,èdotatodinumerosissimeporte(decineocentinaia)
– collegainmanieratrasparenteglihostsuunaLANoperandocomeun“commutatore”eriducendolecollisionisuunaretebroadcast
– operaalivello“DataLink”:ilLivello2dellapilaOSIsemplificataoLivello1dellostack TCP/IP
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 27
Apparatidirete
• Router– èunappliance checonsentel’interconnessionetradueopiù
retiesioccupadiinstradareipacchettidaunareteversolaretesucuièpresentel’host didestinazione
– operaallivello“Network”:ilLivello3dellapilaOSIsemplificataoilLivello2dellostack TCP/IP
• Firewall– èunserver ounappliance chesioccupadifiltrare
(interrompendolatrasmissionedeipacchettioinstradandolaversoladestinazione)iltrafficoinentrataoinuscitarispettoadunarete;èutilizzatoperproteggereinodidiunaretedaintrusioniprovenientidall’esternodellaretestessa
– puòaverefunzioniIDS (Intrusion Detection System)cherilevanopossibilitentatividiattaccodall’esternoanalizzandoiltrafficodirete
– puòaverefunzioniIPS (Intrusion Prevention System)cheattuanoblocchideltrafficodiretedadeterminatihost,retiesterneoprotocolli,suindicazionedelsottosistemaIDS
– operaailivelli“Network”e“Transport”:ilivelli3e4dellapilaOSIsemplificataoilivelli2e3dellostack TCP/IP
ApparatidireteeLivellidellostack
PilaOSI Stack TCP/IP Protocolli Apparati direte
Livello1:FisicoLivello1:Networkaccess
BlueTooth,DSL,802.11
HubModem
Livello2:DataLink Ethernet,PPP,wi-fi
BridgeSwitch
Livello 3:Network Livello2:Internet IP RouterFirewall
Livello4:Transport Livello 3:Transport TCP Firewall
Livello5:Application Livello4:ApplicationFTP,SMTP,HTTP,POP3,SSH,Telnet,...
FirewallApplicazioniservereclient
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 28
Dominidicollisioneedibroadcast
• Dominiodicollisione:perimetrodellareteentrocuiipacchettipossonoandareincollisionefradiloro
• Dominiodibroadcast:perimetrodellareteentrocuiipacchettivengonoinviatiinmodalitàbroadcastatuttiinodideldominio
• Hub:consentelacreazionediundominiodicollisioneconpiùdiduenodi
• Switch:chiudeundominiodicollisionecollegandofralorodominidicollisionediversi
• Router:chiudeundominiodibroadcastcollegandofraloropiùdominidibroadcast
Dominiodibroadcast
Dominiodicollisione
Hub
Switch
Altridominidibroadcast
Router
Dominidicollisioneedibroadcast
Dominiodibroadcast
Dominiodibroadcast
Dominiodibroadcast
Dominio di
collisione
Dominio di
collisione
Dominio di
collisione
Dominio di
collisione
Dominio di
collisione
Dominio di
collisione
Dominio di
collisione
Dominio di
collisione
Dominio di
collisione
Switch
Switch
Switch
Router
UniversitàdegliStudiRomaTre- CorsodiLaureainMatematica a.a.2016/2017
M.Liverani- DispensedelcorsoIN530- Sistemiperl'elaborazionedelleinformazioni 29
Bibliografiaessenziale
①CraigHunt,TCP/IPNetworkAdministration,O’Reilly &Associates,1994.②AndrewS.Tanenbaum,DavidJ.Wetherall,Retidicalcolatori,quintaedizione,Pearson,2011.③AlvaroRetana,DonSlice,Russ White,AdvancedIPNetworkDesign,CISCOPress,1999.④RobertWright,IPRoutingPrimer,CISCOPress,1998.
⑤ IETF– InternetEngineer TaskForce,RFC– Request ForComments,https://www.ietf.org/rfc.html
⑥ IANA– InternetAssigned Number Authority,http://www.iana.org⑦NIC-IT– Registro.it,http://www.nic.it
WorkstationgraficaSun3/60SunMicrosystems (oggiincorporatainOracle)èstataunproduttoredimacchineUNIXleaderdimercato,fraleprimeaziendeacrederecheilfuturodell’informaticafossestrettamentelegatoallereti,tantodafarneunfamososloganaziendale:<<thenetworkISthecomputer>>