vuoi
o PayPal
tutte le volte che vuoi
LIVELLO APPLICATIVO
-
Requisiti delle applicazioni:
- Perdita di dati
- Ritardo
- Banda
-
Quale servizio di trasporto scegliere?
- TCP
- Connection oriented
- Trasporto affidabile
- Controllo di flusso
- Controllo di congestione
- Non fornisce garanzie di ritardo e di banda
- UDP
- Trasferimento non affidabile
- Senza connessione
- Controllo su traffico senza garanzie
- Trasferimento veloce
- TCP
-
Architetture applicative
- Client-server (Client esegue richieste, server risponde)
- Peer-to-peer (P2P)
- Ibride
- La comunicazione HTTP: HTTP si appoggia su TCP a livello di trasporto
-
Connessione client-server
- Non persistente
- (1 sessione richiesta-risposta)
- Persistente
- without pipelining (1 richiesta attende inviata la prec.)
- with pipelining (più richieste possono essere inviate in parallelo)
- Non persistente
-
Stima del tempo di trasferimento in HTTP:
- Round trip time (RTT): tempo per trasferire un messaggio
- Tempo di risposta di HTTP:
- 1 RTT per iniziare la connessione TCP
- 1 RTT per inviare il primo byte della richiesta HTTP e ricevere il primo byte di risposta
- tempo di trasmissione dell'oggetto
- Supponendo che la pagina web sia composta da n oggetti e tempo di download dell'intera pagina web:
- Tnon pers.: Σi=0 (2RTT + Ti)
- Tpers.: RTT1 + Σi=1 (RTTi + Ti)
- Metodi HTTP: GET - HEAD - POST - PUT - DELETE
- Status Code HTTP più comuni: 200 OK, 301 Moved Permanently, 400 Bad Request, 404 Not Found, 503 Service Unavailable, 505 HTTP Version not supported
- I PROXY sono degli application gateway, ovvero degli instradatori di messaggi al livello applicativo. (Sono sia client che server)
-
Il servizio di E-mail
- I mail server "parlano" SMTP con altri mail server e con i client d'utente in uplink, POP3/IMAP con i client d'utente in downlink.
- formats delle email (RFC 822)
- Header
- To -
- From
- Subject
- Body: il contenuto
- dell'email deve essere ASCII codificabile
- Header
- MIME: estende il formato dei messaggi email (non ASCII: > 7 bit) per supp. multimediale
- definisce header per specificare il tipo del contenuto
- consente trasferimento di più oggetti come parte dello stesso mex
- protocolli di accesso ai mailbox
- POP3: download dei messaggi
- IMAP: gestisce mailbox sul mail server
- HTTP
- DNS traduce i nomi degli host in indirizzi IP. Servizi aggiuntivi:
- Host aliasing
- Mail server aliasing
- Load distribution
- Caching: un server puó memorizzare solo temporaneamente un'informazione in cui non è authoritative
- se arriva una nuova richiesta su fornisce l'informzione senza ricercarla in un server authoritative
- il Time To Live (TTL) è deciso dai server authoritative
- i LD server siano gerarchicamente memorizzati nei local name server
- i server non-authoritative usano il TTL per decidere il time-out
- Come aggiungere un dominio alla rete DNS: registrare il dominio presso un DNS registrar fornendo nomi simbolici e relativi IP
- P2P: elevata Scalabilitá
- directory centralizzata
- completamente distribuita
- BitTorrent:
- i file sono divisi in chunk di 256 byte
- i peer che entrano in un torrent si registrano presso un tracker per ottenere una lista di peer "attivi"
- il peer entrante stabilisce connessione TCP con "neighborhood peers"
- neighbouring peers inviano a peer entrante la lista dei chunk disponibili
- il peer entrante sceglie quale chunk scaricare e da quale peer
Livello di rete
- Lo strato di rete si incarica di trasferire i dati tra gli host che ospitano i due processi comunicanti
- Funzioni fondamentali:
- Indirizzo/Forwarding
- Instradamento/Routing
- Algoritmi di routing
- Modo di trasferimento:
- Commutazione a circuito: i nodi intermedi non elaborano informazione
- Commutazione a pacchetto: i nodi intermed. eseguono instradamento e inoltro
- Il livello di rete di internet offre... servizi best effort
- Indirizzo IP (IPv4):
- Numero: 32 bit (4 gruppi di 8) - notazione decimale puntata
- Collegato a un’interfaccia
- Ha valenza universale (è univoco)
- Blocco di IP = rete IP
- I primi N bit degli IP del blocco devono essere uguali (prefisso di rete = NETID)
- I rimanenti bit (hostID) sono usati per identificare un host specifico
- Le Ethernet card degli hosts sono identificate da un indirizzo MAC
- La Netmask è un numero binario di 32 bit associato ad una rete IP
- Inizia con N (lunghezza NETID) bit a 1, restanti a 0
- Esempio: indirizzo IP = 193.31.34.15 Netmask: 255.255.255.0 rete: 193.31.34.0
- Inoltro dei pacchetti:
- Diretto: destinazione nella stessa rete IP
- Indiretto: viceversa
- Inoltro nei router:
- Diretto: hanno più di un’interfaccia dove poter effettuare l’inoltro diretto
- Indiretto: si basa su tabelle di routing dove è definita la destinazione della rotta di instradamento
- Tutti gli host che appartengono alla rete di destinazione sono identificati nelle tabelle di routing da una singola entry
- CIDR: 134.76.96.0/19 sono 232-N = 8192 indirizzi IP da 134.76.96.0 a 134.76.127.255
- Requisiti: longest prefix matching nelle tabelle di routing si devono essere le netmask
- Chi assegna gli indirizzi? IANA > li divide in RIR > LIR
- Gli indirizzi IPv4 sono esauriti
- Classi: alternativa alle netmask (slide 42): Class D Multicast
- Indirizzi privati: non sono univoci - non viaggiano nelle rete pubblica
- I messaggi RIP v1 si distinguono in:
- richieste
- risposte
RIP v1 non supporta Netmask
- Tempi di risposta dei messaggi lenta (Slide 18)
RIP Versione 2: senza aggiornare:
- Info sulla connettività
- Autenticazione
- Subnet mask
- Multicasting
Le tabelle di routing sono gestite da un processo a livello applicativo (route-d)
Protocollo OSPF:
- Usa Dijkstra ad ogni nodo
- Supporta routing gerarchico
- Metrica generica
- Utilizza il protocollo Hello per monitorare lo stato di connessione dei vicini
- Viaggia direttamente su IP (deve implementare ACK)
- Supporta autenticazione
Tipi di collegamenti:
- Collegamenti punto-punto
- Reti con singolo router
- Reti con più router
Protocollo BGP:
- È il "collante" di internet
- Usa il path vector (indicando l'intero percorso verso la destinazione in termini di AS)
- Scambio di messaggi su slide 34
- BGP lascia la scelta dell'instradamento a l'amministratore di rete (policy based routing)