Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Informatica pacchetto C, Appunti di Sistemi Informatici

Argomenti trattati nelle slides del pacchetto C

Tipologia: Appunti

2022/2023

Caricato il 12/07/2023

._francesca
._francesca 🇮🇹

4 documenti

1 / 42

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Lezione 10 1
Lezione 10
Inizio blocco C, Reti, applicazioni, Client-Server, Tipi di Network, Tipi di reti in base alla
posizione geografica, VPN, rete wireless.
→Prima i calcolatori erano isolati tra loro, siamo passati dal mainframe (grande
computer autonomo) a vari sistemi di computer autonomi interconnessi.
fault tolerance (resistenza ai guasti): il guasto di una macchina non blocca tutta la
rete, ed è possibile sostituire il computer guasto facilmente;
economicità: hardware e software per computer costano meno di quelli per i
mainframe;
gradualità della crescita e flessibilità (scalabilità): l'aggiunta di nuove potenzialità a
una rete già esistente e la sua espansione sono semplici e poco costose.
Cos’è una rete di calcolatori?
è un insieme di dispositivi hardware e software collegati l'uno con l'altro attraverso
appositi canali di comunicazione, che permettono il passaggio da un utente all'altro
di risorse, informazioni e dati in grado di essere pubblicati e condivisi.
Un esempio di canale di comunicazione può essere internet.
-Applicazione aziendali.
Resource Sharing: un dispositivo nella rete può essere usato da differenti
computer della stessa rete (stampanti, fax, etc.).
Information sharing: uno scambio di informazioni tra persone, organizzazioni e
tecnologie.
Comunicazione: la rete è essenziale per compiere operazioni quali: chatting, video
chatting, emails, etc
E-commerce: le reti di calcolatori sono usate soprattutto da quelle aziende che
offrono servizi di E-commerce, dove gli utenti effettuano pagamenti e transazioni
utilizzando il computer
-Applicazioni Domestiche
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a

Anteprima parziale del testo

Scarica Informatica pacchetto C e più Appunti in PDF di Sistemi Informatici solo su Docsity!

Lezione 10

Inizio blocco C, Reti, applicazioni, Client-Server, Tipi di Network, Tipi di reti in base alla posizione geografica, VPN, rete wireless.

→Prima i calcolatori erano isolati tra loro, siamo passati dal mainframe (grande computer autonomo) a vari sistemi di computer autonomi interconnessi.

fault tolerance (resistenza ai guasti): il guasto di una macchina non blocca tutta la rete, ed è possibile sostituire il computer guasto facilmente; economicità : hardware e software per computer costano meno di quelli per i mainframe; gradualità della crescita e flessibilità ( scalabilità ): l'aggiunta di nuove potenzialità a una rete già esistente e la sua espansione sono semplici e poco costose. Cos’è una rete di calcolatori? è un insieme di dispositivi hardware e software collegati l'uno con l'altro attraverso appositi canali di comunicazione, che permettono il passaggio da un utente all'altro di risorse, informazioni e dati in grado di essere pubblicati e condivisi. Un esempio di canale di comunicazione può essere internet.

  • Applicazione aziendali.

Resource Sharing : un dispositivo nella rete può essere usato da differenti computer della stessa rete (stampanti, fax, etc.). Information sharing : uno scambio di informazioni tra persone, organizzazioni e tecnologie. Comunicazione : la rete è essenziale per compiere operazioni quali: chatting, video chatting, emails, etc E-commerce: le reti di calcolatori sono usate soprattutto da quelle aziende che offrono servizi di E-commerce, dove gli utenti effettuano pagamenti e transazioni utilizzando il computer

  • Applicazioni Domestiche

Accesso ad informazioni remote : le reti di calcolatori permettono agli utenti di accedere ad informazioni di dati presenti in locazioni distanti rispetto la macchina dell’utente. Comunicazione da Persona a Persona: Gli utenti possono usare la rete di calcolatori per comunicare con altre persone comodamente dalla loro casa (videochiamate, chat, messaggi. Etc.) Intrattenimento interattivo : La rete è usata nei videogiochi multiplayer. Oltretutto è usata per accedere ai contenuti dei social network o canali di streaming video. E-commerce: le reti di calcolatori sono usate dagli utenti per effettuare pagamenti e transazioni utilizzando il computer. Esistono varie tipologie: Tipologie di E-Commerce

  1. G2C: governo verso consumatore : Le attività di commercio elettronico svolte tra il governo e i suoi cittadini o consumatori, tra cui il pagamento delle tasse, la registrazione dei veicoli e la fornitura di informazioni. (INPS, bollo della macchina, Poste ID.)
  2. B2C: business to consumer : amazon, booking.
  3. B2B: business to business: aziende comprano cose da altre aziende (Amazon Business).
  4. G2C: Government to consumer : agenzia entrate, poste italiane.
  5. C2C: consumer to consumer: siti che permettono di scambiare o oggetti con persone. (Subito.it, EBay.)
  6. P2P: peer to peer (punto a punto): sistemi che permettono scambio di file (Spotify)
  • Applicazioni Mobile

M-commerce: comprare e vendere beni e servizi attraverso dispositivi mobili wireless come cellulari, laptop o tablet. Sistema di navigazione GPS: applicazioni che usano la connessione ad internet per accedere al sistema di navigazione per guidare vocalmente passo-passo l’utente fino alla destinazione desiderata.

Tipi di Network

Le reti si possono classificare in base a diversi fattori.

I principali sono:

Tecnologia trasmissiva: come vengono inviati i messaggi all’interno della rete.

  1. Point-to-Point: connette individualmente coppie di macchine, composta da link e nodi. I messaggi per giungere alla destinazione possono attraversare uno o più elaboratori (nodi). Un modo può essere un router (collega diverse reti di computer), uno switch (collega i dispositivi su una singola rete di calcolatori) o la macchina di un utente finale (chiamato ) Routing: si cerca il percorso migliore ( che dipende la lunghezza, più nodi meno è piacevole e traffico del collegamento)

Gli algoritmi scelgono il percorso migliore

  1. Broadcast: le reti hanno un solo canale di comunicazione che è condiviso tra tutte le macchine della rete. Abbiamo un’unica connessione a cui gli elaboratori sono connessi, quando bisogna mandare un messaggio si manda a tutti i computer sulla rete. Un campo all’interno del messaggio indirizzo indica la destinazione ( unicasting ). Altre modalità di spedizione del messaggio sono: Broadcasting: invia un pacchetto a tutti gli altri computer utilizzando l'indirizzo appropriato. Multicast: Invia un pacchetto a molti destinatari. Si differenzia dalla trasmissione Broadcasting in quanto l'indirizzo di destinazione designa un sottoinsieme di nodi accessibili dalla rete. Anycast: è possibile inviare un pacchetto a molti computer, ma solo uno è scelto come destinazione. Tale scelta può essere basata su fattori quali, ad esempio, la distanza dal destinatario
  2. Dimension e: in base all’estensione geografica della rete.
  3. Topologia: la configurazione geometrica dei collegamenti tra i vari componenti della rete. Quindi come sono disposti gli elaboratori attorno alla rete, se hanno gli stessi valori o meno. La topologia indica una rappresentazione del modo in cui i vari nodi che la compongono sono collegati sia fisicamente.

Esistono 4 tipologie di topologie di rete:

Bus: la più semplice, un unico cavo a cui tutti i nodi o dispositivi sono legati. I vantaggi sono costi ottimizzati, ha un funzionamento facile, si può utilizzare in reti di piccole dimensioni. Se il cavo si spezza, la rete diventa inutilizzabile, il cavo ha delle limitazioni di lunghezze e in alcuni casi può essere lenta quando ci sono tanti dispositivi. Ring: o ad anello. un cavo di trasmissione dove sono collegati i dispositivi. La differenza con BUS è che si può parlare uno alla volta, tramite il token (o gettone). Es. voglio mandare un messaggio, indico il destinatario che riceve messaggio e token. La trasmissione riguarda un singolo frame, che a volte può non essere abbastanza. La trasmissione della rete non è influenzata dal numero di nodi, ed è economico, ma il guasto del pc disturba la rete o le macchine potrebbero aspettare molto prima di ricevere il token. Mesh: o a maglia. Una rete dove ogni dispositivo è connesso con un cavo a tutti gli altri dispositivi. Tutti i nodi sono connessi a tutti i nodi, e questo garantisce un’ottima gestione del trasporto, garantisce sicurezza e privacy ed è la rete più robusta in assoluto. Tuttavia, configurare e installare la rete è più difficile, ci sono maggiori costi di cablaggio e c’è un accumulo di cablaggio vicino ogni nodo. Stella: è previsto un nodo centrale, di solito più potente rispetto agli altri, e tanti dispositivi connessi a questo nodo, dove passa la comunicazione. I vantaggi di questa rete sono che aggiungere un nodo è facile, i problemi sui nodi esterni non influenzano la rete ed un errore su un cavo non danneggia la rete. Tuttavia, più ampia è la rete più cavi saranno necessari e, caso di malfunzionamento di un cavo, l’unico computer a restare isolato sarà quello connesso al cavo stesso mentre, in caso di malfunzionamento del nodo centrale, l’intera trasmissione di rete cesserà di funzionare. Tree o ad albero: Una rete gestita da un nodo padre che ha dei figli che hanno altri figli e così via. C’è un solo nodo che è solo padre e ci sono nodi che sono sia padri che figli e ho nodi dove ci sono solo figli (chiamati anche foglie.) Risolve il problema del nodo centrale della topologia a stella, aggiungere un nodo è semplice, è facile risalire alla fonte di un problema ed è facile eseguire la manutenzione. Tuttavia, richiede molto cablaggio, quindi è costosa e diventa difficile aggiungere molti nodi alla reta. Se il nodo principale non funziona, l’intera rete smette di trasmettere dati.

La Subnet è generalmente posseduta e gestita da una compagnia telefonica o da un Intenet service provider

VPN

virtual private network, crea una rete dove bisogna accedere tramite credenziale. Si crea un ponte di connessione virtuale punto a punto tra chi si connette e uno dei server dei VPN, che può essere situato ovunque geograficamente, utilizzando metodi di criptaggio dei dati. Es. catalogo Netflix America in Italia.

Reti Wireless

Le reti locali Wireless possono utilizzare come mezzo trasmissivo le onde radio, la luce infrarossa o i sistemi laser. Le onde radio vengono utilizzate dalle reti tipo Wi-Fi cioè reti che devono coprire ambienti eterogenei dove le diverse postazioni da collegare non sono necessariamente visibili, infatti possono essere separate da muri o da intercapedini. Tipologie di reti wireless:

  1. connessioni all'interno di un sistema (es. mouse e tastiera senza fili che si collegano al vostro pc)
  2. LAN wireless (es. computer che si collegano al modem wi-fi all’interno di una stanza o edificio)
  3. WAN wireless (es. i vostri smartphone che navigano attraverso il GSM-UMTS) GSM-UMTS: GSM (Global System for Mobile communication) è un sistema di telefonia mobile che definisce gli standard su come funzionano le telecomunicazioni mobili. UMTS è la terza generazione (3G) della tecnologia delle telecomunicazioni mobili. È l'ultima tecnologia disponibile in commercio che i telefoni cellulari e gli smartphone usano oggi. Con questo sviluppo sono ora possibili l'accesso a Internet (e-mail e navigazione web) e videochiamate, insieme alle attività telefoniche tradizionali. Una collezione di diverse reti (LANs, MAN, or WANs) è chiamata internetworks. Gateway: un collegato speciale tra reti di tipologia diversa (reti incompatibili tra loro)

→La comunicazione tra le varie entità all’interno delle reti è gestita da un protocollo, che interessa il lato software. Per protocollo di rete si intende una definizione formale a priori delle modalità di interazione che due o più apparecchiature elettroniche collegate tra loro devono rispettare per eseguire una comunicazione.

Internetworks o internet: una collezione di reti diverse collegate tramite un gateway

Per ridurre la complessità dei protocolli di rete, generalmente i protocolli sono suddivisi in livelli.

2 tipi di Reti diverse possono differire per:

  • Numero di Livelli
  • Nome dei Livelli
  • Contenuto dei Livelli
  • Funzionalità dei Livelli

Lo scopo di ogni di un livello è offrire alcuni servizi ai livelli più alti, nascondendo a questi livelli come questi servizi sono realmente svolti. Ovvero i livelli più alti vedranno solo i risultati dei livelli più bassi Primitive Sono le operazioni che il livello superiore usa per accedere a dei servizi o delle funzionalità del livello inferiore- Il livello inferiore è il service provider, quello superiore è il service user.

  1. servizi connection-oriented; sono modellati secondo il sistema telefonico, dove per parlare con qualcuno si alza il telefono, si chiama, si parla e poi si riattacca. Ovvero: si stabilisce una connessione; si scambiano informazioni; si rilascia la connessione.

Analogamente, un servizio connection-oriented si sviluppa in 3 fasi:

  1. si stabilisce una connessione, cioé si crea con opportuni mezzi un "canale di comunicazione" fra la sorgente e la destinazione. La relativa attività tipicamente coinvolge un certo numero di elaboratori nel cammino fra sorgente e destinazione;
  2. la connessione, una volta stabilita, agisce come un tubo digitale lungo il quale scorrono tutti i dati trasmessi, che arrivano nello stesso ordine in cui sono partiti;
  3. si rilascia la connessione
  4. servizi connectionless : sono modellati secondo il sistema postale: ogni lettera viaggia indipendentemente dalle altre; arriva quando arriva, e forse non arriva. Inoltre, due lettere con uguale mittente e destinatario possono viaggiare per strade diverse. In un servizio connectionless, i pacchetti (PDU) viaggiano indipendentemente gli uni dagli altri, possono prendere strade diverse ed arrivare in ordine diverso da quello di partenza. La fase è una sola: invio del pacchetto

→ Cos’è un servizio?

Un servizio è generalmente caratterizzato dall'essere o no affidabile, un servizio affidabile non perde mai dati, cioè assicura che tutti i dati spediti verranno consegnati al destinatario. Ciò generalmente richiede che il ricevente invii un acknowledgement (conferma) alla sorgente per ogni pacchetto ricevuto.

Un servizio non affidabile non offre la certezza che i dati spediti arrivino effettivamente a destinazione.

Lezione 12

ACKNOWLEDGEMENT, OSI, MODELLO TCP/IP

→ACKNOWLEDGEMENT:Ogni qual volta uno dei due interlocutori di una connessione spedisce dei dati, questi attende una conferma dell’avvenuta ricezione, se questa arriva entro un tempo stabilito viene spedito il pacchetto successivo, altrimenti l’applicazione rispedisce il precedente.

Tale tempo viene misurato con un timer che parte appena un pacchetto è spedito. Questo meccanismo risolve il problema dei pacchetti persi o danneggiati, ma può crearne un altro, quello della duplicazione dei pacchetti. Questo problema viene risolto facendo numerare sequenzialmente al mittente tutti i pacchetti da spedire e facendo verificare al destinatario la sequenza ricevuta. Questo non vale solo per i messaggi ma anche per le conferme agli stessi, anche una conferma potrebbe essere erroneamente duplicata

→Quando si parla di MODELLO DI RIFERIMENTO parliamo di architettura di rete.

OSI Open system Interconnection, nasce nel 1984 dalla ISO ed ha lo scopo di fornire un modello rispetto a cui confrontare le architetture di rete. Allo stesso tempo, non descrive i protocolli, ma solo la struttura. In questo modello ogni livello deve avere un diverso livello di astrazione, ogni livello deve avere una funzione ben definita. La scelta dei livelli deve minimizzare il passaggio delle informazioni fra livelli ed evitare troppi livelli e troppe funzioni in un livello. Il modello sono 7 livelli, partendo dal più basso (ricordarli in questo ordine)

  1. Il livello FISICO: si occupa dei bit grezzi, trasmette i bit su un dato canale di comunicazione. Verifica anche che sia arrivato il bit corretto (es. se parte un 1, deve arrivare un 1 e non uno zero.)

3.Broadcasting di messaggi a molti destinatari.

  1. Il livello SESSION: Il primo livello della parte astratta. Il compito principale è coordinare il dialogo tra utenti, basandosi sui servizi del trasnport, si occupa di sincronia di invio/recezione di messaggi. Se ci sono errori ripristina la sessione, gestisce le attività. Non ha avuto molto successo all’atto pratico.
  2. Il livello PRESENTATION: È interessato alla sintassi ed alla semantica delle informazioni da trasferire. Converte i dati standard, Offre anche servizi di comunicazione comuni, come la crittografia, la compressione del testo e la riformattazione. Esso consente di gestire la sintassi dell'informazione da trasferire. Anche questo non ha avuto molto successo.
  3. Il livello APPLICATION: ha come scopo quello di interfacciare utente e macchina. Fornisce un insieme di protocolli che operano a stretto contatto con le applicazioni. Potrebbe essere errato identificare un'applicazione utente come parte del livello applicazione.

→I protocolli delle applicazioni tipiche di questo livello realizzano operazioni come ad esempio:

Trasferimento file Terminale virtuale Posta elettronica

→Due stessi livelli comunicano tra di loro ma non direttamente

Il router può essere considerato come un host che ha i primi 3 livelli. La differenza tra uno switch (che si occupa dei primi due livelli) e router (che si occupa dei primi 3).

  • Es. Host 1, parte dal livello più alto facendomi tutti i livelli, arrivando al livello fisico, è quindi possibile inviare il dato che deve passare almeno da un router, dove si fa i 3 livelli perchè le informazioni contenute nei tre livelli gli fanno capire come e a chi mandarlo. Eventualmente se il router non può comunicare con l’host di destinazione, va in un altro router per arrivare a destinazione
  1. Livello transport: è progettato per consentire la conversazione delle peer entity sugli host sorgente e destinazione. Sono definiti due protocoli: TCP (Transmission Control Protocol): è un protocollo connesso ed affidabile (ossia tutti i pacchetti arrivano, e nell'ordine giusto). Frammenta il flusso in arrivo dal livello superiore in messaggi separati che vengono passati al livello Internet. In arrivo, i pacchetti vengono riassemblati per il livello superiore. UDP (User Datagram Protocol): è un protocollo non connesso e non affidabile, i pacchetti possono arrivare in ordine diverso o non arrivare
  2. Livello application: contiene tutti i protocolli di alto livello. Telnet: terminale virtuale; FTP (File Transfer Protocol): file transfer; SMTP (Simple Mail Transfer Protocol) e POP (Post Office Protocol): posta elettronica. Successivamente se ne sono aggiunti altri, fra cui: DNS (Domain Name Service): mapping fra nomi di host e indirizzi IP numerici; NNTP (Network News Transfer Protocol): trasferimento di articoli per i newsgroup; HTTP (HyperText Transfer Protocol): alla base del World Wilde Web.

→Differenze tra le due architetture

Somiglianze: sono entrambi basati sul concetto di pila di protocolli indipendenti, hanno funzionalità simili in entrambi per i vari livello. Differenze : OSI nasce come un modello di riferimento, i protocolli vengono successivamente mentre TCP/IP nasce con i protocolli, il modello di riferimento viene a posteriori.

Conseguenze :

modello OSI nato prima dei relativi protocolli, successe che:

il modello era, ed è tuttora, molto generale (può essere un punto a favore); vi era insufficiente esperienza nella progettazione dei livelli (punto a sfavore). Ad esempio:

❑ il livello data-link (pensato all'origine per linee punto-punto) non forniva riferimenti per gestire reti broadcast;

❑ mancò del tutto l'idea di internetworking: si pensava ad una rete separata, gestita dallo stato, per ogni nazione.

PROBLEMI OSI

I protocolli OSI non sono riusciti ad affermarsi sul mercato per una serie di ragioni:

  1. Infelice scelta di tempo: la definizione dei protocolli è arrivata troppo tardi, i protocolli TCP/IP erano già diffusi.
  2. Infelice scelte tecnologiche: grande complessità e difficoltà di implementazione, inutili i livelli di session e presentation, non ottimali attribuzioni di funzioni ai vari livello.
  3. Infelice implementazione: le prime realizzazioni erano lente ed inefficienti, al contrario di TCP/IP.

PROBLEMI TCP/IP

l'architettura TCP/IP non ha utilità come modello (non serve ad altro che a descrivere se stessa); non c'è una chiara distinzione fra protocolli, servizi e interfacce, il che rende più difficile l'evoluzione dell'architettura; alcune scelte di progetto cominciano a pesare (ad es., non ci sono abbastanza indirizzi IP). è difficile rimpiazzare i protocolli se necessario (punto a sfavore).

CONCLUSIONE:

OSI è ottimo come modello, mentre i suoi protocolli hanno avuto poco successo; TCP/IP è ottima (per ora) come architettura di rete, ma inutile come modello.

Anello: concatenazione di più spezzoni di fibre ottiche creando un anello. Stella passiva: l'impulso, inviato da un trasmettitore, arriva in un cilindro di vetro al quale sono attaccate tutte le fibre ottiche; viene poi distribuito alle fibre ottiche uscenti VANTAGGI RISPETTO AL RAME: A parità di banda è più leggero il cavo Essendo basato sulla luce è insensibile ai disturbi elettromagnetici Difficile spiare il traffico SVANTAGGI: COSTO DELLE GIUNZIONI e comunicazione e unidirezionale (due fibre sono necessarie per una comunicazione two-way)

  • mezzi ottici (LED, laser e fibre ottiche): in essi il fenomeno utilizzato è la luce. Si tratta dei mezzi più̀ recenti, che hanno rivoluzionato il settore Trasmissioni senza fili: Le onde elettromagnetiche, create dal movimento degli elettroni, creano interferenza che potrebbero ridurre l’effetto della velocità della rete. Bisogna stare attenti alle bande che si utilizzano: lo spettro percettivo in alcuni casi è bloccato (utilizzato per altre cose.)

Modello OSI modificato

  1. Livello Data Link : Questo livello ha il compito di offrire una comunicazione affidabile ed efficiente a due macchine adiacenti , cioè́ connesse fisicamente da un canale di comunicazione (tramite cavo). Il suo compito è creare un tubo digitale", cioè́ i bit partono e arrivano nello stesso ordine. Bisogna tenere conto di errori o disturbi occasionali, il canale ha un limite al flusso possibile su di esso, e ci piò essere un ritardo della propagazione. I protocolli devono tener conto di ciò per far giungere all’obiettivo il livello data link, cioè determinare come i bit del livello fisico sono raggruppati in frame ( framing );

Inoltre, questo livello, deve gestire gli errori di trasmissione e regolare il flusso della trasmissione fra sorgente e destinatario. Bisogna utilizzare appositi marcatori designare l’inizio e la fine del frame, tramite:

  1. caratteri di inizio e fine: Ogni frame inizia e finisce con una particolare la sequenza di caratteri ASCII.
  2. Conteggio caratteri : si utilizza un campo particolare dell’header che indica quanti caratteri ci sono del frame.
  3. Bit pattern di inizio e fine : permette di avere un numero qualunque di bit dentro il frame. Ogni frame inizia e finisce con una specifica sequenza di bit.

→La maggior parte dei protocolli prevedono l’uso di un checksum , un bit a 0 a 1 che ti fa il controllo di qualità, presente nell'header, per verificare l'integrità̀ del pacchetto trasmesso.

→Il checksum non garantisce nessun riordinamento del messaggio, e per quanto sia raro, si può verificare su due bit un errore.

  1. SOTTOLIVELLO MAC: Sottolivello del modello data link.

Sottolivello Le reti possono essere suddivise in punto a punto e broadcast. Nelle reti broadcast si deve evitare che molte stazioni trasmettano contemporaneamente perchè finirebbero per disturbarsi a vicenda. I protocolli per decidere a quale utente dare in quale momento la trasmissione sul canale. Ci sono due meccanismi fondamentali per decidere a quale utente allocare il canale di comunicazione: allocazione statica, che viene decisa in anticipo; si verifica uno spreco di banda (quantità di dati informativi che possono essere trasferiti tramite connessione in un determinato periodo di tempo) quando uno o più utenti non trasmettono. allocazione dinamica, che si adatta alle esigenze di ogni momento. Tuttavia, deve tener conto:

  1. dell’ascolto del canale: