IMAP - Internet Mail Access Protocol

IMAP ist ein Kommunikationsprotokoll, um E-Mails auf einem entfernten Server ähnlich wie Dateien zu verwalten. Dabei bleiben alle E-Mails auf dem IMAP-Server. Erst wenn eine E-Mail gelesen werden soll, wird sie heruntergeladen.
E-Mail-Kommunikation
IMAP erlaubt den Zugriff auf eine Mailbox, ähnlich wie mit POP. Der entscheidende Unterschied zwischen beiden Protokollen ist der Online-Modus von IMAP, über den der E-Mail-Client ständig in Verbindung mit dem E-Mail-Server steht. Während einer IMAP-Sitzung kann auf einzelne E-Mails zugegriffen werden, die so lange auf dem Server bleiben, bis sie gelöscht werden. Dadurch kann von überall auf dem Server zugegriffen werden. Auch mit einem Endgerät, das nur mit geringer Bandbreite am Netzwerk angeschlossen ist. Die E-Mails werden nur dann heruntergeladen, wenn der Anwender diese Lesen will. E-Mails mit einem großen Dateianhang verstopfen dann nicht mehr ungewollt den Zugang zum Netzwerk.

Wie funktioniert IMAP?

Die Verbindung zwischen E-Mail-Client und Server findet über TCP auf Port 143 statt. Die Kommunikation basiert auf Textmeldungen im ASCII-Format. Im Gegensatz zu SMTP und POP wartet der E-Mail-Client bei IMAP keine Antwort auf gesendete Kommandos ab. Er kann mehrere Befehle hintereinander senden. Um eine eventuell spätere Rückmeldung vom Server identifizieren zu können, schickt der Client eine Kennung mit, die der Server bei seiner Antwort zurück liefert. Mit einem Plus-Zeichen am Anfang der Antwort-Zeile signalisiert der Server, dass er weitere Informationen zum gesendeten Kommando erwartet. Mit einem Sternchen am Anfang der Zeile sendet der Server mehrere Informationen zum Client zurück. In der Antwort ist der Erfolg oder Misserfolg eines Kommandos gekennzeichnet. "OK" deutet auf die erfolgreiche Ausführung des Kommandos hin. Bei "NO" ist ein Fehler aufgetreten und "BAD" informiert über ein unbekanntes Kommando oder einen Syntax-Fehler.

IMAP-Sitzungen

Während einer IMAP-Verbindung werden mehrere Sitzungsstufen durchlaufen. Direkt nach dem Verbindungsaufbau über TCP wird während dem "Non-Authenticated State" der Benutzer vom Server identifiziert. Hat sich der Benutzer erfolgreich identifiziert, kann er sich im nachfolgenden "Authenticated State" eine Mailbox wählen. Im darauffolgenden "Selected State" kann der Benutzer die E-Mails in seiner Mailbox lesen und bearbeiten. Beendet der E-Mail-Client die Verbindung zum Server, wechselt er in den "Logout State" oder "Update State", in dem er noch anstehende Änderungen ausführt.