protocolul IMAP4

protocolul IMAP4

IMAR4 protocol (Internet Message Access Protocol, versiunea 4 protocol de acces la Internet de e-mail, versiunea 4) permite clienților să acceseze și să manipuleze mesaje e-mail pe server.

Structura de foldere depinde în mare măsură de tipul de sistem de e-mail, dar orice sistem, clientul are directorul special MESAJE, care listează mesajele primite de client.

Cum funcționează

protocolul IMAP4 rulează pe partea de sus a unui protocol de transport care furnizează canal de transmisie de date sigure și de încredere între client și server de IMAP4. Atunci când se lucrează pe TCP, IMAP4 utilizează portul 143. comenzi IMAP4 și datele sunt transmise prin protocolul de transport în forma în care acestea sunt trimise la server sau de către utilizator.

Principiul de transmisie IMAP4 este același cu cel al altor protocoale similare. În primul rând, client și de server salutări de schimb. Clientul apoi trimite comenzi și date către server. Prin urmare, serverul trimite răspunsul clientului la instrucțiunile de prelucrare și a datelor. După finalizarea canalului de schimb este închis.

Dacă serverul utilizează o conexiune watchdog timer, ar trebui să fie instalat cel puțin o perioadă de 30 de minute de „inactivitate“ a clientului, adică. E. Dacă serverul în decurs de 30 de minute de la primirea cel puțin o singură comandă, cronometrul este resetat.

Toată comunicarea între client și server este organizat ca un șir de caractere terminat printr-o , sau ca o secvență de octeți de lungime predeterminată. Fiecare echipa incepe cu identificatorul de client sau de echipa tag-ul. Tag-ul este de obicei un șir scurt format din litere și numere (de exemplu, A0001, A0002, și așa mai departe. D.). Eticheta este un identificator unic al echipei clientului. răspunsurile serverului, sau următoarele comenzi client se poate referi la această comandă prin tag-ul său.

Fiecare comandă client începe pe o linie nouă. În acele cazuri în care comanda transmite fluxul de date de o lungime predeterminată sau când o comandă necesită un răspuns de la server pentru a continua să funcționeze (de exemplu, autentificare), acesta poate ocupa mai multe linii.

șir de date transmise de la server, ca răspuns la echipa unui client poate să nu conțină tag-ul și să conțină simbolul „*“. Acest lucru înseamnă că acestea sunt

rânduri intermediare de răspuns flux de date și identificatorul lor de comandă conținute în linia de curgere finală. Într-un astfel de flux de date nu poate clin cealalta echipa.

Dacă serverul detectează o eroare în comanda, acesta trimite o notificare către client BAD etichetat greșit echipa. În cazul în care comanda a fost procesată cu succes - returnare OK cu tag-ul de comandă. În cazul în care comanda returnează un rezultat negativ, de exemplu, în caz de eșec de a executa această comandă - returnează nicio notificare etichetat eșec comandă.

O caracteristică importantă a protocolului IMAP este faptul că interacțiunea client-server nu se bazează pe o „provocare-răspuns“, în care fiecare dintre laturile „merge“, la rândul său. Clientul poate trimite o nouă comandă de la server fără a aștepta răspunsul la cea anterioară, desigur, atunci când aceste comenzi nu sunt legate între ele sau un singur răspuns nu va afecta rezultatul celuilalt. Serverul poate gestiona mai multe instrucțiuni simultan și să răspundă la fiecare dintre ele, la capătul său. În acest răspuns la o comandă ulterioară poate veni mai devreme, astfel încât răspunsul serverului conține întotdeauna tag-ul echipei de care aparține.

Pentru a lucra în acest mod, clientul și serverul ar trebui să înregistreze toate datele de trafic, ca server și client în solicitările și răspunsurile lor se pot referi la comenzi și datele introduse în etapele anterioare ale sesiunii de schimb.

Pentru a oferi flexibilitate si versatilitate de mesagerie operații, sistemul de e-mail IMAP atribuie o anumite atribute.

Atributele sistem de mesagerie IMAP

Fiecare mesaj din sistemul de poștă electronică pentru a lucra cu IMAP are un identificator unic, care vă permite să accesați acest post. UID unic de identificare este un număr de 32 de biți care identifică mesajul în dosarul. Fiecare mesaj a primit în dosarul este atribuit numărul maxim de UID-posturi, a pus într-un dosar anterior. Identificatorii de mesaj unici stocate de la o sesiune la alta și pot fi folosite, de exemplu, pentru a sincroniza directoarele utilizatorilor de dispozitive mobile.

Fiecare dosar din sistem are, de asemenea, un act de identitate valabil unic (UIDVALIDITY). Împreună cu acest mesaj UID-pereche formează numărul de 64 de biți care identifică fiecare mesaj. Dacă UID-mesaj rămâne constant, atunci UIDVALIDITY acest dosar în sesiunea curentă ar trebui să fie mai mult decât în ​​sesiunea anterioară.

În plus față de codul unic de identificare, mesajul în sistemul IMAP are un număr de serie, t. E. Toate mesajele din căsuța poștală sunt numerotate în ordine crescătoare. În cazul în care cutia poștală se adaugă la un nou mesaj, acesta este atribuit un număr cu 1 mai mult decât numărul de mesaje în căsuța poștală. Când ștergeți toate mesajele din dosarul numerele de serie ale tuturor mesajelor sunt traduse, astfel încât numărul de secvență mesajului se poate schimba în timpul sesiunii. Cele mai multe comenzi IMAP4 funcționează cu numerele de serie de mesaje și nu cu UID.

În plus față de identificatorii numerice, mesajele sunt atribuite steaguri. Unele steaguri pot fi valabile pentru acest mesaj în mod constant de la o sesiune la alta, altele - numai în această sesiune. Cele mai frecvente dintre ele:

„\ Recente“ - mesajul „doar“ a sosit în cutia poștală, și anume această sesiune - .. Prima, care poate citi acest mesaj.

„\ Recente“ - un exemplu de pavilion, care nu vor fi salvate în sesiunea următoare

comenzile de bază

IMAP4 - caracteristici flexibile și versatile de protocol. Acesta deservește mai mult de 20 de echipe diferite de client în starea de gestionare a acestora de e-mail. Descrierea detaliată a tuturor server de comenzi și răspunsuri IMAR4 puteți găsi în RFC-2060. În continuare va fi descrisă în doar câteva din comenzile clienților, și exemple de prelucrare a acestora este o diagramă generală de interacțiune cu clienții și server IMAP4.

IMAP4 acceptă comenzi text și răspunsurile serverului, t. E. secvența ASCII de caractere. șir de comandă, sau date de secvență este finalizată . date de 8 biți, în conformitate cu specificațiile MIME, nu pot fi transferate pentru IMAP4 sub forma „deschis“. Ca o regulă, punerea în aplicare a IMAP4 înainte de a trimite date binare codificate base64 lor.

La fel ca server de Rohrsen server de 1MAR4 procesează comenzile în funcție de unul dintre cele patru state în care se află:

  1. Statutul este de autentificare, în care clientul trebuie să se înregistreze pentru a începe pe server.
  2. Starea de autentificare, în care clientul poate alege un director pentru a lucra cu rapoarte.
  3. operațiune de stat cu un dosar de e-mail în care clientul realizează cea mai mare parte de lucru cu rapoarte.
  4. de stat neconectat unde serverul completează tranzacția clientului.

În continuare, atunci când descrie comenzi simbolul „S:“ va indica fluxul de date de la serverul IMAP4 și simbolul „C“ - fluxul de date de la client.

comanda LOGIN. După un protocol de transfer (de exemplu, TCP), conexiunea a fost stabilită, iar serverul a venit salut șir de caractere, clientul trebuie să se înregistreze în sistem. Pentru a face acest lucru, comanda LOGIN cel mai frecvent utilizate. Argumentul de comandă este un identificator șir, și parola de client:

S: * OK IMAP4revl Serviciul Gata

De la: aOOl conectare ali sesaro

S: aOOl LOGIN OK completat

comanda LOGIN trimite ID-ul și parola de utilizator al rețelei în clar. În cazul în care utilizatorul este necesară pentru a proteja informațiile de e-mail, acesta poate utiliza comanda autorizăm. Argumentul de comandă este un șir de caractere care specifică mecanismul de autentificare, care vrea să profite de utilizator. În funcție de tipul de autentificare se bazează în continuare de schimb între server și client. De exemplu, folosind mecanismul de criptare KERBEROS, autentificarea este după cum urmează:

S: * OK KerberosV4 IMAP4revl Server

De la: AOOl AUTHENTICATE KERBEROS_V4

S: autentificarea AOOl OK Kerberos V4 de succes

articole similare