2 - Introduzione a Internet (1/2) - 17/18

Post on 23-Jan-2018

440 views 1 download

transcript

Università degli Studi di Milano BicoccaDipartimento di Informatica, Sistemistica e Comunicazione

Corso di Strumenti e applicazioni del Web

2. Introduzione a Internet (I)

Giuseppe Vizzari

Edizione 2017-18

Queste slide

2

Queste slide fanno parte del corso “Strumenti e applicazioni del Web”. Il sito del corso, con il materiale completo, si trova in https://gvizzari.hopto.org/wp/. Data la rapida evoluzione della rete, il corso viene aggiornato ogni anno.

Il presente materiale è pubblicato con licenza Creative Commons “Attribuzione - Non commerciale - Condividi allo stesso modo – 3.0” (http://creativecommons.org/licenses/by-nc-sa/3.0/it/deed.it ):

La licenza non si estende alle immagini provenienti da altre fonti e alle screen shots, i cui diritti restano in capo ai rispettivi proprietari, che, ove possibile, sono stati indicati. L'autore si scusa per eventuali omissioni, e resta a disposizione per correggerle.

Reti di computer

3

HOST

Perché "ospita" le

applicazioni

Reti di computer

4

Le reti possono essere collegate

fra loro

HOST ROUTER Perché "instradano" i messaggi

Internetworking: reti di reti

5

Cresce la dimensione e la complessità: dalle reti locali (local area network

- LAN) a quelle metropolitane

(metropolitan area network - MAN) e

geografiche (wide-area network - WAN)

Internet: un’unica rete virtuale

6

a

b

c

d

e

f

HOST

Internet: un’unica rete virtuale

7

HOST

ROUTER

Protocollo di comunicazione

Insieme di regole (di norma descritte formalmente) definite per permettere la comunicazione tra due o più entità.

8

A B

Esempio:Chiedere a un passante se sa che ora è…

Protocollo di comunicazione

Regole e formati per lo scambio di messaggi fra due entità comunicanti

9

A B

Esempio:Spedire una lettera per posta

Informazioni per il recapito

Lorem ipsum dolor sit amet…

Lettera

Protocollo di comunicazione

Regole e formati per lo scambio di messaggi fra due entità comunicanti

A B

Fra computer: datiIntestazione (header)

Protocollo di comunicazione

Regole e formati per lo scambio di messaggi fra due entità comunicanti

11

A B

Un frame reale (Ethernet):

!!??!!##%%!!??

Due tipi di protocolli

12

Peer-to-peer (P2P):

RichiestaRisposta

Server Client

Richiesta

Risposta

Client-Server:

Ogni interlocutore può svolgere di volta in volta ruoli diversi(con interlocutori diversi)

Esempio

13

a

b

c

d

e

f

Browser (client)

Web server

Due tipi di reti

• Commutazione di circuito (circuit switching)Es. la rete telefonica tradizionale• Commutazione di pacchetto (packet switching)

Es. Internet

14

Commutazione di circuito

15

a

b

c

d

e

f

Es.: 1952

Commutazione di pacchetto

16

a

b

c

d

e

f

• Nessun collegamento dedicato• Il messaggio viene suddiviso in

pacchetti che vengono inoltrati individualmente e possono seguire percorsi diversi

• Naturalmente andranno ri-assemblati correttamente!

Instradamento: esempio

17

BOOM

Ogni pacchetto può seguire un cammino diverso

Resilienza della rete

Trasmissione dei messaggi su Internet

18

• Ogni "data stream" viene spezzettato in pacchetti i ("datagram"), corredati di informazioni per la loro trasmissione, fra cui l'indirizzo di mittente e destinatario

DatagramData stream

Header: destinatario, mittente, ecc.

• Ogni pacchetto viene inviato singolarmente e può seguire strade diverse dagli altri

Internet: filosofia di progettazione

19

Protocolli “layered” (gerarchici, a strati)Le funzioni di trasporto, instradamento e trasmissione sul mezzo “fisico” sono separate, e indipendenti dall'applicazione

Principio di end-to-end Le funzioni applicative vengono svolte ai nodi della rete, e non all'interno della rete stessa

Principio di best-effort delivery La rete tratta i pacchetti nel modo migliore possibile, indipendentemente dal loro contenuto, mittente o destinatario

La "stupidità della rete"

20

Internet

L'intelligenza applicativa sta fuori dalla rete

"Just deliver the bits, stupid!"

David Isenberg, "The rise of the stupid network", 1998

"In a world of dumb terminals and telephones, networks had to be smart. But in a world of smart terminals, networks have to be dumb."

George Gilder, in The Coming of the Fibersphere, 1992

Un'altra rete stupida: la rete elettrica

21

Alla rete non interessa che cosa le collegate e per quale scopo

Il problema della qualità del servizio (QoS)• L'instradamento viene effettuato sulla base di informazioni

locali: il router che trasmette potrebbe non essere a conoscenza di problemi di congestione nel percorso

• Ogni pacchetto ricevuto da un router viene accodato; se la coda è piena (la memoria è sempre finita), viene scartato e deve essere ritrasmesso

• Questo crea problemi nel caso in cui sia necessario garantire un determinato livello di qualità del servizio (es. nella telefonia su internet, che richiede bassa latenza e bassa variabilità dei tempi di arrivo dei pacchetti)

• Varie tecniche permettono un certo controllo della QoS (es.: "Deep Packet Inspection")• Potenziale uso sensato: privilegio la comunicazione voce

scartando “frame” di comunicazione video o pacchetti in un trasferimento di file 22

Il problema “con” qualità del servizio (QoS)• Un potenziale uso discutibile di tecniche di controllo

della QoS è il privilegiare la comunicazione di chi paga un servizio premium • Vedi alla voce Net-Neutrality

• Approfondiremo il tema già nella prossima lezione, ma non solo…

• … ma telegraficamente, anticipiamo qualcosa:• Il traffico prevalente in rete è relativo ai video…

• I proventi di questo genere di traffico vanno ai cosiddetti Content Provider (e.g. YouTube, quindi Google)

• Questo formato è il più oneroso in termini di “banda”…• I costi per consentire una buona fruizione di questi contenuti sono a

carico dei Network Provider

• Gli interessi sono chiaramente contrastanti e la situazione va governata…

23

Internet: la “pila” dei protocolli

24

Applicazione

Trasporto

Internet

Rete Fisica

Internet

Rete Fisica

Internet

Rete Fisica

Applicazione

Trasporto

Internet

Rete Fisica

Protocollo applicativo

TCP: Transmission Control Protocol

IP: Internet Protocol

HOST HOSTROUTER ROUTER

Protocolli di comunicazione: modello ISO/OSILivello Definizione Contesto

7 Applicazione Interfaccia di comunicazione con i programmi (Application program interface).

6 Presentazione Formattazione e trasformazione dei dati a vario titolo, compresa la cifratura e decifratura.

5 Sessione Instaurazione, mantenimento e conclusione delle sessioni di comunicazione.

4 Trasporto Invio e ricezione di dati in modo da controllare e, possibilmente, correggere gli errori.

3 Rete Definizione dei pacchetti, dell'indirizzamento e dell'instradamento in modo astratto rispetto al tipo fisico di comunicazione.

2 Collegamento dati (data link)

Definizione delle trame (frame) e dell'indirizzamento in funzione del tipo fisico di comunicazione.

1 Fisico Trasmissione dei dati lungo il supporto fisico di comunicazione.

IP

TCP

Come è fatto un indirizzo IP

• IPv4 32 bit → 4 byte → 4 interi fra 0 e 28-1 = 255Es.: 192.128.0.205Indirizza 4.294.967.296 (232) nodi: troppo pochi!

26

• IPv6 128 bit → 16 byte → 8 interi fra 0 e 216-1

Es.: ab12:34cf:0000:0000:45ae:1234:def4:0000 indirizza 2128 nodi

La transizione è in corso

Nel 2016 IPv6 ha compiuto 20 anni e raggiunto il 10% di adozione, secondo misure fatte da Googlehttp://arstechnica.com/business/2016/01/ipv6-celebrates-its-20th-birthday-by-reaching-10-percent-deployment/

Assegnazione degli indirizzi IP

• Gli indirizzi IP possono essere assegnati ai nodi in modo statico o dinamico

• L’assegnamento statico richiede un minimo di competenza tecnica sui protocolli di rete e la conoscenza della rete locale alla quale ci si collega

• tipicamente questa modalità non è considerata adeguata a utenti normali, ma è sensata in organizzazioni dotate di personale di supporto tecnico dedicato

• Per un’assegnazione dinamica è necessario che nella rete locale sia disponibile un nodo che ospiti un apposito programma detto server DHCP ("Dynamic Host Configuration Protocol)…

• … che è dotato di una tabella degli indirizzi IP disponibili localmente

• … e che li assegna, in modo temporaneo, a chi ne fa richiesta nella rete locale

• Se avete in casa un router ADSL che vi permette di collegarvi in WiFi avete certamente un server DHCP (nel router stesso)

27

Un servizio utile

PingUna utility che invia un messaggio di controllo a un nodo della rete, chiedendogli di rispondere – poi misura il tempo intercorso dalla richiesta alla risposta

Esempiohttp://www.monitis.com/traceroute/

28

Lavoro individuale

• Visitate http://www.warriorsofthe.net/ (ci sono degli spoiler della seconda lezione su Internet, ma vale la pena di vederlo e già che ci siete vi portate avanti)

• Compilate il form di iscrizione al corso, se non lo avete già fatto!

29