La chiocciola (la "a" commerciale) che separa il nome utente dal dominio. |
La posta elettronica (e-mail o email, dall'inglese «electronic mail») è un servizio Internet grazie al quale ogni utente abilitato può inviare e ricevere dei messaggi utilizzando un computer o altro dispositivo elettronico (es. palmare, cellulare ecc.) connesso in rete attraverso un proprio account di posta registrato presso un provider del servizio. È una delle applicazioni Internet più conosciute e utilizzate assieme al web. La sua nascita risale al 1971, quando Ray Tomlinson installò su ARPANET un sistema in grado di scambiare messaggi fra le varie università, ma chi ne ha realmente definito il funzionamento fu Jon Postel.
Rappresenta la controparte digitale ed elettronica della posta ordinaria e cartacea. A differenza di quest'ultima, il ritardo con cui arriva dal mittente al destinatario è normalmente di pochi secondi/minuti, anche se vi sono delle eccezioni che ritardano il servizio fino a qualche ora. Per questo in generale di fatto ha rappresentato una rivoluzione nel modo di inviare e ricevere posta con la possibilità di allegare qualsiasi tipo di documento e immagini digitali entro certi limiti di dimensioni in byte.
Descrizione
Modello di servizio
Scopo del servizio di posta elettronica è il trasferimento di messaggi da un utente ad un altro attraverso un sistema di comunicazione dati che coinvolge i client agli estremi e dei server di posta attivi presso i rispettivi provider del servizio come nodi di raccolta/smistamento dei messaggi interni alla Rete.
Ciascun utente può possedere una o più caselle di posta elettronica, sulle quali riceve messaggi che vengono conservati. Quando lo desidera, l'utente può consultare il contenuto della sua casella, organizzarlo e inviare messaggi a uno o più utenti.
L'accesso alla casella di posta elettronica è normalmente controllato da una password o da altre forme di autenticazione.
La modalità di accesso al servizio è quindi asincrona, ovvero per la trasmissione di un messaggio non è assolutamente indispensabile che mittente e destinatario siano contemporaneamente attivi o collegati.
La consegna al destinatario dei messaggi inviati non è garantita. Nel caso un server SMTP non riesca a consegnare un messaggio ricevuto, tenta normalmente di inviare una notifica al mittente per avvisarlo della mancata consegna, ma anche questa notifica è a sua volta un messaggio di posta elettronica (generato automaticamente dal server), e quindi la sua consegna non è garantita (se il problema è relativo all'apparecchio usato dal mittente non sarà possibile effettuarla).
Il mittente può anche richiedere una conferma di consegna o di lettura dei messaggi inviati, però il destinatario è normalmente in grado di decidere se vuole inviare o meno tale conferma. Il significato della conferma di lettura può essere ambiguo, in quanto aver visualizzato un messaggio per pochi secondi in un client non significa averlo letto, compreso o averne condiviso il contenuto.
Indirizzi di posta elettronica
A ciascuna casella sono associati uno o più indirizzi di posta elettronica necessari per identificare il destinatario. Questi hanno la forma nomeutente@dominio, dove nomeutente è un nome scelto dall'utente o dall'amministratore del server, che identifica in maniera univoca un utente (o un gruppo di utenti), e dominio è un nome DNS.
L'indirizzo di posta elettronica può contenere qualsiasi carattere alfabetico e numerico (escluse le vocali accentate) e alcuni simboli come il trattino basso (_) ed il punto (.). Molto spesso può tornare utile agli utenti usufruire dei servizi di reindirizzamento, utilizzati per inoltrare automaticamente tutti i messaggi che arrivano su una casella di posta elettronica verso un'altra di loro scelta, in modo che al momento della consultazione non si debba accedere a tutte le caselle di posta elettronica di cui si è in possesso ma sia sufficiente controllarne una.
Esempio di indirizzo mail: test@example.com
Architettura del sistema di posta elettronica
I componenti fondamentali del sistema di posta elettronica sono:
- i client (detti in gergo MUA, Mail User Agent), utilizzati per accedere ad una casella di posta elettronica e per inviare messaggi
- i server, che svolgono due funzioni fondamentali:
- immagazzinare i messaggi per uno o più utenti nella rispettiva casella di posta o mailbox (detti in gergo MS, Message Store)
- ricevere i messaggi in arrivo ed in partenza e smistarli (detti in gergo MTA, Mail Transfer Agent).
I protocolli tipicamente impiegati per lo scambio di messaggi di posta elettronica sono il SMTP, usato per l'invio, la ricezione e l'inoltro dei messaggi tra server, il POP e l'IMAP, usati per la ricezione e consultazione dei messaggi da parte degli utenti.
I client richiedono la configurazione dei server da contattare, e sono quindi adatti principalmente a computer usati regolarmente. È anche molto diffusa la possibilità di consultare una casella di posta elettronica attraverso il web (Webmail. Per saperne di più Webmail).
Schema di funzionamento del servizio di posta elettronica |
Messaggi di posta elettronica
Un messaggio di posta elettronica è costituito da:
- una busta (envelope)
- una sezione di intestazioni (header)
- un corpo del messaggio (body)
Gli standard di riferimento sono le RFC RFC 822 e RFC 2822 (quest'ultimo ha reso obsoleto il precedente).
Busta
Per busta si intendono le informazioni a corredo del messaggio che vengono scambiate tra server attraverso il protocollo SMTP, principalmente gli indirizzi di posta elettronica del mittente e dei destinatari. Queste informazioni normalmente corrispondono a quelle che è possibile ritrovare nelle intestazioni, ma possono esserci delle differenze.
Intestazioni
Le intestazioni sono informazioni di servizio che servono a controllare l'invio del messaggio, o a tener traccia delle manipolazioni che subisce. Ciascuna intestazione è costituita da una riga di testo, con un nome seguito dal carattere ':' e dal corrispondente valore.
Alcune di queste vengono definite direttamente dall'utente. Tra le principali si possono citare:
- Subject: (Oggetto:) dovrebbe contenere una breve descrizione dell'oggetto del messaggio. È considerata buona educazione utilizzare questo campo per aiutare il destinatario a capire il contenuto del messaggio.
- From: (Da:) contiene l'indirizzo di posta elettronica del mittente.
- To: (A:) contiene gli indirizzi di posta elettronica dei destinatari principali.
- Cc: contiene gli indirizzi di posta elettronica dei destinatari in copia conoscenza (Carbon Copy).
- Bcc: (Ccn:) contiene gli indirizzi di posta elettronica dei destinatari in copia conoscenza nascosta (Blind Carbon Copy), ovvero destinatari che riceveranno il messaggio ma il cui indirizzo non apparirà tra i destinatari. Questa è in realtà una pseudo-intestazione, in quanto è visibile solo al mittente del messaggio, e per definizione non viene riportata nei messaggi inviati ai destinatari.
- Reply-to: (Rispondi a:) contiene l'indirizzo di posta elettronica al quale devono essere inviate le eventuali risposte al messaggio, se diverso da quello del mittente.
- Date: (Data:) contiene la data e l'ora in cui il messaggio è stato scritto.
Nota: È considerata cattiva educazione anche la pratica di inviare messaggi ad un grande numero di destinatari e, in maniera particolare, se contengono allegati in formato proprietario che non tutti i destinatari potrebbero essere in grado di leggere, come Microsoft Word. Qualora si dovesse inviare mail a un certo numero di destinatari (>=2) dei quali non si è certi che intendano rendere noto agli altri destinatari il proprio indirizzo email (ciò che accade normalmente), è considerato netiquette inviare a sé stessi il messaggio (porre il proprio indirizzo come destinatario) e inserire in bcc (blind carbon copy, ovvero ccn: copia carbone nascosta) gli altri destinatari. Infatti i destinatari-bcc non si vedono reciprocamente.
Intestazioni di servizio
Altre intestazioni vengono aggiunte dai programmi che manipolano il messaggio.
La più importante è Received:, che viene aggiunta da ciascun server SMTP che manipola il messaggio, indicando da quale indirizzo IP il messaggio è stato ricevuto, a che ora, e altre informazioni utili a tracciarne il percorso.
Altre intestazioni segnalano ad esempio che il messaggio è stato valutato da qualche tipo di filtro automatico antivirus o antispam, e la valutazione espressa dal filtro.
Il Message-ID: (Identificativo del messaggio) è un codice costruito dal client su cui il messaggio è stato composto, che dovrebbe permettere di identificare univocamente un messaggio.
Corpo e allegati
Il corpo del messaggio è composto dal contenuto informativo che il mittente vuol comunicare ai destinatari.
Esso era originalmente composto di testo semplice. In seguito è stata introdotta la possibilità di inserire dei file in un messaggio di posta elettronica (allegati), ad esempio per inviare immagini o documenti. Per fare questo il client di posta del mittente utilizza la codifica MIME (o la più desueta uuencode).
Gli allegati vengono utilizzati anche per comporre un messaggio di posta elettronica in formato HTML, generalmente per ottenere una più gradevole visualizzazione dello stesso. Questa pratica non è molto apprezzata dai puristi di Internet, in quanto aumenta notevolmente la dimensione dei messaggi e, inoltre, non tutti i client per la posta elettronica sono in grado di interpretare l'HTML.
Dato che la banda del canale (Internet) e la dimensione della casella di posta elettronica (sul server) non sono illimitate, è considerata cattiva educazione inviare messaggi di grosse dimensioni. Secondo la netiquette un messaggio di posta elettronica dovrebbe rimanere al di sotto di 50-100 kB. Per ridurre le dimensioni di un messaggio contenente allegati di grosse dimensioni, si possono inviare semplicemente gli URI degli allegati, rendendo quest'ultimi reperibili in altro modo, ad esempio via FTP o HTTP. Inoltre, molti server impongono limiti massimi alla dimensione del messaggio da trasmettere, che devono essere presi in considerazione se si inviano messaggi di grosse dimensioni.