Architettura TCP/IP indice • • • • • • protocollo IP altri protocolli di rete: ICMP, ARP e RARP protocollo TCP altri protocolli di trasporto: UDP il sistema Domain Name Server i protocolli di posta elettronica Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 1 Il protocollo IP • IP è un protocollo datagram (non connesso e non affidabile) che ha il compito di: – ricevere il datagram o il segmento di dati dal livello superiore e incapsularlo in pacchetti IP – instradare i pacchetti attraverso le varie sottoreti – in ricezione riassemblare i vari pacchetti e passare al livello superiore il datagram o il segmento dati, secondo l’ordine d’arrivo Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 2 Obiettivi del protocollo IP • • • • incorpora i datagram (encapsulation datagram) frammenta i datagram (fragmentation datagram) gestisce la vita in rete dei datagram instrada i datagram Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 3 Gestione dei datagram livello superiore accetta in ingresso i datagram provenienti dalla rete o generati dal livello superiore, e li instrada verso la NIC o verso il livello superiore processo IP NIC 1 Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo NIC 2 4 Funzioni svolte dal livello IP • • • • • genera e controlla l’intestazione (header validation) calcola o verifica il checksum determina l’instradamento (next hop) gestisce la redirezione aggiunge i dati del mittente nei datagram prodotti localmente(ICI) • frammenta e ricostruire i datagram • gestisce le comunicazioni broadcast Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 5 Caratteristiche del livello IP unreliable: servizi non garantiti o inaffidabili, i pacchetti possono essere persi, duplicati o consegnati fuori ordine connectionless: servizi non orientati alla connessione, i pacchetti sono tra loro indipendenti best-effort: servizi del tipo trasmetti e spera Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 6 intestazione del pacchetto IP version IHL tipo di servizio DM FF identificatore segmento time to live lunghezza totale protocollo offset del frammento checksum dell’header indirizzo del mittente indirizzo del destinatario campo opzioni 32 bit Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 7 campi dell’intestazione IP versione IHL type of service total length identification DF MF fragmnent offset time to live protocol header check indirizzi options Architettura TCP/IP numero versione del protocollo (4) lunghezza header in multipli di 32 bit (4) affidabilità dei servizi richiesti (8) lunghezza totale del pacchetto (16) etichetta di tutti i frammenti di un dato pacchetto (16) Don't fragment (se a 1)(1) More fragments (se a 1) (1) offset (in byte) del frammento nel pacchetto (13) valore decrementato ad ogni salto o ad ogni secondo (8) cod. del protocollo di trasporto a cui dare il pacchetto (8) ricalcolato ad ogni salto o ogni secondo (16) (32+32) in base al protocollo (N32) Architettura degli elaboratori Modulo B- A.Memo 8 Instradamento IP • il livello Host-To-Network effettua l’instradamento fisico (switching), mentre IP quello logico (routing) • il routing può essere diretto (se mittente e destinatario appartengono alla stessa rete fisica) o indiretto (su reti fisiche distinte) • si decide in base agli indirizzi di mittente e destinatario Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 9 Instradamento diretto/indiretto Host 1 Net 1 Host 1 Host 2 Host 3 instradamento diretto router rete fisica Host 9 Net 1 Host 9 Net 2 Host 1 Net 2 instradamento indiretto Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo Host 2 Net 1 Host 3 Net 1 rete fisica n°1 Host 2 Net 2 Host 3 Net 2 rete fisica n°2 10 Indirizzi IP • un indirizzo IP è costituito da 2 campi, per un totale di 32 bit: – network number (numero di una rete, una LAN o una connessione punto-punto tra due router) – host number (numero caratteristico di ogni stazione o scheda NIC all’interno di una rete) • gli indirizzi IP sono suddivisi in classi, in base alle dimensioni dei due campi Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 11 Classi di indirizzi IP Rete di classe A : 126 reti con 16.777.214 host 0 network host Rete di classe B : 16.382 reti con 65.534 host 1 0 network host Rete di classe C : 2.097.150 reti con 254 host 1 1 0 network 1 1 1 0 1 1 1 1 0 8 bit Architettura TCP/IP host multicast address usi futuri 8 bit 8 bit Architettura degli elaboratori Modulo B- A.Memo 8 bit 12 Subnetting mask Indirizzo di Classe C 1 1 0 network host maschera di sottorete (subnet mask) tutti 1 1 1 0 network tutti 0 subnet host Esempio: IP address = 193.207.121.240 subnet mask = 255.255.255.224 network = 193.207.121. subnet = 7 (o 224) host = 16 (o 240) Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 13 Indirizzi IP particolari 0.0.0.0 0.x.x.x 255.255.255.255 x.255.255.255 127.x.x.x indirizzo dell’host ospite l’host x.x.x della rete ospite broadcast sulla rete ospite broadcast alla rete x loopback Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 14 Routing IP (1) salto locale salto remoto 192.168.11. 192.168.11. 192.168.6. default 1 3 0 0 link link link link 1, 1, 2, 3, 00-80-2A-33-45-21 00-80-2A-33-45-22 00-80-2A-6A-02-B1 00-80-2A-33-4B-32 00-80-2A-33-45-21 192.168.11.3 00-80-2A-33-45-22 link 1 192.168.17.1 192.168.11.254 00-80-2A-33-4B-A0 link 2 00-80-2A-33-4B-A2 192.168.7.2 00-80-2A-33-4B-A1 router 2 192.168.6.12 00-80-2A-66-01-02 192.168.6.13 00-80-2A-66-01-03 link 1 192.168.6.254 00-80-2A-6A-02-B0 Architettura TCP/IP link 2 192.168.7.1 Architettura degli elaboratori Modulo B- A.Memo 00-80-2A-6A-02-B1 15 192.168.17.2 192.168.11.1 link 3 00-80-2A-33-48-32 router 1 verso le altre reti Routing IP (2) • un’entità di livello 4 (TCP o UDP) della stazione 192.168.11.1 vuole inviare un pacchetto all’analoga entità della stazione 192.168.6.12: per far questo passa al livello 3 (IP) il pacchetto e specifica tra l’altro l’indirizzo IP del mittente e quello del destinatario Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 16 Routing IP (3) • l’entità di livello 3 del mittente confronta i campi network dei due indirizzi, e decide se – mittente e destinatario appartengono alla stessa rete (salto locale); – appartengono a reti distinte (salto remoto) • in base a ciò determina l’indirizzo di livello 2 a cui far pervenire il pacchetto, e lo passa al livello sottostante Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 17 Routing IP (4) • nell’esempio il salto è remoto, per cui l’indirizzo di livello 2 da inserire nel pacchetto è quello di default dell’uscita dalla rete fisica (00-80-2A-33-4B-A0) • il pacchetto arriva al livello 3 del router 1 attraverso il suo link1 Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 18 Routing IP (5) • il livello 3 del router controlla la sua tabella di instradamento, riconosce il destinatario come un salto remoto verso il link 2, e quindi rispedisce (relay) il pacchetto con lo stesso indirizzo IP di mittente, ma con l’indirizzo di livello 2 di quel link (00-802A-6A-02-B1) Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 19 Routing IP (6) • il livello 3 del router 2 riceve il pacchetto, riconosce il destinatario come un salto locale verso il proprio link 1, e rispedisce il pacchetto passandolo al livello 2 di quella interfaccia di rete con indirizzo di livello 2 di destinazione 00-80-2A-66-01-02 Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 20 datagram pacchetto trama indirizzo TSAP di livello 4 del destinatario porta 1080 UDP livello 3 segmento transceiver TCP IP livelli 1 e 2 livello 4 indirizzi fisici ed indirizzi IP driver della scheda di rete scheda di rete transceiver indirizzo IP di livello 3 del destinatario 192.168.11.37 indirizzo MAC di livello 2 del prossimo nodo 00-40-8A-91-B2-84 segnali elettrici mezzo fisico Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 21 altri protocolli di rete: ICMP • Internet Control Message Protocol • protocollo utilizzato dai router per scambiarsi informazioni sullo stato della rete destination unreachable time exceeded echo request Architettura TCP/IP si risponde al mittente che il destinatario non è raggiungibile si risponde al mittente che il pacchetto ha esaurito il tempo a disposizione chiede ad una stazione se è viva Architettura degli elaboratori Modulo B- A.Memo 22 altri protocolli di rete: ARP • Address Resolution Protocol • restituisce l’indirizzo di livello 2 di una stazione individuata dal suo indirizzo IP – viene inviata una richiesta broadcast del tipo “chi ha questo indirizzo IP ?” – solo l’host con quell’IP risponde, passandogli il suo indirizzo di livello 2 – se l’host è in un’altra rete, i router intermedi dovranno fungere da tramite nel protocollo Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 23 altri protocolli di rete: RARP • Reverse Address Resolution Protocol • svolge il compito inverso: dato un indirizzo di livello 2 restituisce il relativo indirizzo IP Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 24 il protocollo TCP • Transmission Control Protocol • fornisce un trasferimento full-duplex affidabile orientato alla connessione tra mittente e destinatario, basandosi su una rete non affidabile • mette in comunicazione diretta i due interlocutori finali, e quindi non è presente nei router Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 25 il protocollo TCP: generalità • riceve il messaggio dal livello applicazione • lo suddivide in segmenti (TPDU) che passa al livello rete • ne controlla il regolare trasferimento mediante tecniche analoghe a sliding-windows • riceve dal livello rete i segmenti in arrivo • ricompone il messaggio originale e lo passa alla opportuna applicazione di livello superiore Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 26 il protocollo TCP: il socket • i servizi TCP stabiliscono una connessione tra due punti di accesso detti socket • un socket è caratterizzato dalla coppia IP_address : port_number • vi sono 216 possibili port number: i primi 256 sono pre-assegnati a servizi standard (well-known port) [25=SMTP, 110 =POP3, 80=HTTP,…] Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 27 il protocollo TCP: il flusso dati • una connessione TCP trasferisce un flusso di byte • ogni byte del flusso è caratterizzato da un numero sequenziale a 32 bit • il numero sequenziale di ogni byte viene utilizzato in una tecnica di controllo slidingwindows di tipo go-back-N e time-out per ogni emissione Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 28 intestazione TCP (1) source port destination port sequence number acknowledgement number U A P R S F R C S S Y I G K H T N N TCP header length checksum window size urgent pointer options (0 - N•32bit) data (opzionale) 32 bit Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 29 intestazione TCP (2) source/dest. port sequence numb. ack. number TCP header leng. URG ACK PSH RST SYN FIN window size checksum urgent pointer options Architettura TCP/IP numero della porta di accesso all'applicazione (216) numero sequenziale del primo byte del campo dati (32) numero sequenziale del prossimo byte aspettato (32) lunghezza totale dell'header in gruppi da 32 bit (4) sviluppi futuri (6) Urgent pointer attivato (se a 1)(1) ACK attivato, è anche un riscontro (se a 1) (1) Pushed data, dati da far analizzare subito (se a 1) (1) richiesta di Reset della connessione (se a 1) (1) SYN=1 ACK=0 richiesta di connessione (1) SYN=1 ACK=1 connessione accettata il mittente non ha più dati da trasmettere(se a 1) (1) numero byte che possono essere ancora spediti (16) somma di controllo di validità dei dati trasmessi (16) puntatore ai dati urgenti del campo dati (16) in base al protocollo (N32) Architettura degli elaboratori Modulo B- A.Memo 30 attivazione della connessione • il server lancia una listen() per porsi in ricezione e poi esegue una accept() in attesa di una richiesta di connessione in un dato port • il client lancia una connect(host,port,...) • il server, quando riceve la richiesta, controlla se la porta richiesta è attiva: – in caso affermativo, passa la richiesta all’applicazione relativa, e se accettata, conferma al richiedente la connessione – in caso negativo, la connesione viene rifiutata Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 31 attivazione della connessione client server listen() accept() chiedo una connessione, il mio primo byte avrà numero (x) accetto la connessione mi aspetto di ricevere il byte numero (x+1) ed il mio primo byte avrà numero (y) ti invio i miei dati a partire dal byte (x+1), e mi aspetto di ricevere il byte numero (y+1) Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 32 trasferimento dati • sliding windows di tipo go-back-N, dove le dimensioni delle finestre vengono comunicate esplicitamente: oltre al riscontro positivo viene passato il numero di byte ancora ricevibili • ad ogni trasmissione si fa partire un timer per la ritrasmissione • in caso di errore si riparte dal byte errato Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 33 trasferimento dati (1) mittente destinatario devo trasmettere 5KByte 4 KB buffer vuoto invio i primi 2K, a partire da 0, faccio partire il timer immagazzino 2K nel buffer, comunico che ho ricevuto correttamente i byte 0-2047, aspetto i byte a partire dal 2048, e posso ricevere ancora 2048 byte invio altri 2K, a partire dal byte numero 2048, faccio partire il timer Architettura TCP/IP 2K Architettura degli elaboratori Modulo B- A.Memo 2K 34 trasferimento dati (2) mittente destinatario 2K 2K immagazzino altri 2K nel buffer, comunico che ho ricevuto correttamente i byte 2048-4095, aspetto i byte a partire dal 4096, e posso ricevere ancora 0 byte 4 KB buffer pieno non posso trasmettere altri byte perché il buffer in ricezione è pieno, e quindi aspetto il destinatario legge i primi 2K dal buffer e li passa all’applicazione 2K 2K Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 35 trasferimento dati (3) mittente destinatario 2K invio l’ultimo 1K, a partire dal byte numero 4096, e faccio partire il timer 2K immagazzino 1K nel buffer, comunico che ho ricevuto correttamente i byte 4096-5019, aspetto i byte a partire dal 5020, e posso ricevere ancora 1024 byte 1K 1K 2 K Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 36 trasferimento dati (4) • viene gestita anche una congestion windows per ridurre la possibilità di congestione, e in trasmissione si sceglie il più piccolo tra il suo valore e quello del buffer del ricevitore • la dimensione iniziale della congestion window è pari alla dimensione massima del segmento • il valore di threshold viene fissato inizialmente pari alla dimensione massima del segmento Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 37 trasferimento dati (5) • ad ogni ack ricevuto la congestion window – raddoppia se il suo valore è inferiore al threshold – si allarga di 1 segmento se è superiore • ad ogni time-out – threshold = ½ congestion window – congestion window = max segmento Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 38 rilascio della connessione • per evitare la perdita di dati determinata da una scon-nessione libera da parte di una stazione (rilascio asimmetrico) si adotta il rilascio simmetrico, dove ogni connessione full duplex è vista come una coppia di connessioni simplex • A e B sono due stazioni che sanno comunicando in fullduplex: quando A ha finito invia un FIN a B, il quale accetta il rilascio e la connessione da A a B termina, mentre da B ad A possono ancora essere scambiati dati • quando anche B termina, si avvia lo stesso procedi-mento e l’intera connessione viene chiusa Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 39 rilascio della connessione utente A utente B non ho altri dati da trasmettere, per me la connessione si può rilasciare ora anche io non ho altri dati da trasmettere e possiamo rilasciare la connessione ora rilascio la connessione ... … e ti avviso che mi sono sconnesso ora mi sconnetto anch’io Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 40 altri protocolli di trasporto: UDP • User Data Protocol • offre un servizio di trasporto non connesso e non affidabile • utilizzato per trasferire un basso numero di informazioni, tipo segnali di controllo di pochi byte nei collegamenti client/server Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 41 formato pacchetto UDP source port destination port total length checksum dati 32 bit source/dest. port total length checksum Architettura TCP/IP numero della porta di accesso all'applicazione (216) lunghezza del pacchetto, header + dati (16) somma di controllo di validità dei dati trasmessi (=0 non usato) (16) Architettura degli elaboratori Modulo B- A.Memo 42 il sistema DNS • l’uso diretto degli indirizzi IP (versione numerica) è scomodo e poco mnemonico [193.207.118.131] • ad ogni sistema può essere associato un indirizzo simbolico (versione logica) [www.rai.it] • il sistema Domain Name System mette in relazione indirizzi numerici con indirizzi logici • il DNS consiste di – uno schema gerarchico di attribuzione dei nomi basato sui domini – un database distribuito che implementa questo schema – un protocollo per l’interrogazione e l’aggiornamento dello schema Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 43 DNS: funzionamento • per passare da indirizzo logico a indirizzo numerico un’applicazione invia una richiesta al DNS server locale • se il DNS server locale ha nella sua tabella interna quell’indirizzo, lo restituisce subito • altrimenti inoltra la richiesta ad un DNS server remoto di livello gerarchico superiore, ne aspetta la risposta e poi la passa all’applicazione richiedente Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 44 DNS: organizzazione dei domini subdomain subdomain 2 1 top level domain USA com mil il resto del mondo org edu gov ucis yale mit phil eng cs fr ch jp uk it unimi unipd unive ing math ling host.subdomainN.___.subdomain2.subdomain1.topleveldomain Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 45 DNS: implementazione • ogni dominio ha il compito di fornire e mantenere aggiornato il proprio DNS server (o più d’uno, gerarchicamente organizzati) • per ogni host, il DNS ha il seguente record: domain name time to live class type value Architettura TCP/IP www.unipd.it 50000 IN A 193.200.3.1 nome logico dell'host secondi per cui questi dati possono rimanere in cache classe del record (internet) tipo di record (address) indirizzo IP dell'host Architettura degli elaboratori Modulo B- A.Memo 46 posta elettronica: generalità • un servizio di posta elettronica permette di – – – – – – – comporre un messaggio spedire un messaggio ad un destinatario spedire un messaggio (circolare) a più destinatari ricevere un messaggio leggere i messaggi ricevuti gestire un elenco di indirizzi di posta elettronica gestire l’insieme dei messaggi ricevuti Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 47 posta elettronica: il messaggio • generalmente il messaggio è composto dalle seguenti informazioni (*=obbligatorie): To From Cc Bcc Attach Subject Body Architettura TCP/IP * indirizzo del destinatario (o lista di destinatari) * indirizzo del mittente indirizzo del destinatario della possibile copia palese per conoscenza (o lista dei destinatari) indirizzo del destinatario della possibile copia nascosta per conoscenza (o lista dei destinatari) nome degli eventuali file incorporati nel messaggio oggetto del messaggio testo del messaggio in codice ASCII (a 7 bit) Architettura degli elaboratori Modulo B- A.Memo 48 posta elettronica: MUA • in Internet lo scambio di posta elettronica utilizza due funzioni distinte: MUA ed MTA • MUA (Mail User Agent) è l’interfaccia verso l’utente ed ha principalmente il compito di: – comporre il messaggio da spedire assemblando i vari campi – trasferire il messaggio da spedire all’MTA (del mittente) per la sua trasmissione – ricevere dall’MTA locale (che ora funge da destinatario) e passare all’utente i messaggi pervenuti – gestire la memorizzazione dei messaggi trasferiti Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 49 posta elettronica: MTA • MTA (Mail Transport Agent) è il vero artefice del trasferimento dei messaggi ed ha principalmente il compito di: – trasferire il messaggio pervenuto fino all’MTA di destinazione, che svolge funzioni di cassetta postale – fornire all’MUA di destinazione, su sua esplicita richiesta, i messaggi ad esso indirizzati, verificandone il diritto di prelievo Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 50 posta elettronica: architettura MTA MTA MUA MTA MTA mittente MUA destinatario Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 51 protocollo SMTP (1) • Simple Mail Transfer Protocol è il protocollo che implementa le funzionalità di trasferimento del MUA: – il mittente predispone, con la versione locale del MUA, il messaggio da inviare, e lo spedisce (SEND) – il MUA, tramite DNS operante su spazi di nomi distinti dagli altri servizi, traduce l’indirizzo logico del mittente in indirizzo fisico, coincidente con l’MTA del mittente – il MUA stabilisce una connessione TCP con il suo MTA e tramite protocollo SMTP trasferisce il messaggio dal client SMTP dell’host del mittente al server SMTP dell’MTA del mittente, e poi rilascia la connessione Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 52 protocollo SMTP (2) – il server SMTP dell’MTA del mittente, tramite DNS specifico, traduce l’indirizzo logico del destinatario in indirizzo fisico, coincidente con l’MTA del destinatario – il server SMTP dell’MTA del mittente, ora operante in modalità client, stabilisce una connessione TCP con il server SMTP dell’MTA del destinatario (anche attraversando più server SMTP) e trasferisce il messaggio al server SMTP dell’MTA del destinatario, che lo trascrive nella relativa cassetta postale del destinatario, e poi rilascia la connessione Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 53 protocollo SMTP: esempio yyy.it client SMTP il client instaura una connessione affidabile con il server il client è pronto a trasmettere un messaggio server SMTP xxx.it il server si rende disponibile a ricevere posta il server si identifica il client specifica il mittente il server conferma il mittente il client specifica il destinatario il server conferma il destinatario il client avvisa che è pronto ad inviare i dati il server conferma che è pronto a ricevere i dati segue Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 54 protocollo SMTP: esempio yyy.it client SMTP il client trasmette il messaggio il client non ha altri messaggi e vuole rilasciare la connessione Architettura TCP/IP segue From: [email protected] To: [email protected] MIME-Version: 1.0 Message-Id: <[email protected]> Content-Type:multipart ... Subject: prova Content-Type: text/richtext Ciao, è una prova. . server SMTP xxx.it il server riceve il messaggio una riga alla volta, fino all’ulrima riga contenente solo un “.” il server ha ricevuto tutto il messaggio, e ne da riscontro positivo il server accetta il rilascio della connessione Architettura degli elaboratori Modulo B- A.Memo 55 protocollo POP3 • Post Office Protocol versione 3 è il protocollo che implementa le funzionalità di ricezione dell’MTA: – il destinatario manda in esecuzione la versione locale del MUA, e richiede se gli è arrivata posta – il MUA, tramite DNS operante su spazi di nomi distinti dagli altri servizi, traduce l’indirizzo logico del destinatario in indirizzo fisico, coincidente con l’MTA del destinatario – il MUA stabilisce una connessione TCP con il suo MTA e tramite protocollo POP3 trasferisce i messaggi pervenuti, dal server POP3 dell’MTA del destinatario al client POP3 dell’MUA del destinatario, e poi rilascia la connessione Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 56 standard MIME • Multipurpose Internet Mail Extension, estende le possibilità del formato dei messaggi, offre codici per le lettere accentate, permette di separare nel body parte codificate in ASCII a 7 bit da altre codificate ad 8 bit (file generici, audio, video, grafica, …) con lo standard BASE64, fornisce l’opportunità di attachment Architettura TCP/IP Architettura degli elaboratori Modulo B- A.Memo 57