Internet Message Access Protocol

**Internet Message Access Protocol(IMAP)** е еден од двата најважни стандардни интернет протоколи за преземање на електронска пошта. Другиот од овие два е  Post Office Protocol(POP) кој како и IMAP е поддржан од сите познати e-mail клиенти и опслужувачи за пошта за пренесување на пораки од даден опслужувач.

## E-mail протоколи
Internet Message Access Protocol-от ( кој е познат како IMAP) е Интернет протокол на апликациско ниво кој му дозволува на 
e-mail клиент да пристапи во електронската пошта преку друг опслужувач кој се нарекува mail опслужувач.  Моменталната верзија, IMAP верзија 4 преработка 1 (IMAP4rev1), е дефиниран од страна на RFC 3501. IMAP опслужувачот прислушкува на листа од TCP и UDP порти со одредени броеви  (добро познатата порта 143).

IMAP поддржува и on-line и off-line начини на операција. E-mail клиентите кои користат IMAP обично оставаат пораки на опслужувачот сè додека корисникот не ги избрише. Овие како и многу други одлики на IMAP операциите дозволуваат повеќе клиенти да управуваат со истото сандаче. Повеќето од e-mail *клиентите* поддржуваат IMAP користејќи воедно и POP за преземање на пораки; Сепак, мал број на  *сервиси* поддржуваат IMAP. IMAP нуди пристап кон магацинот за пораки на електронската пошта. Клиентите можат да прават локални копии , но истите се сметаат како привремен кеш.

Новите пораки се праќаат кон e-mail опслужувач кој истите ги складира во сандачето на корисникот којшто треба да ја прими пораката. Примачот ја презема пораката со помош на e-mail клиент кој користи еден од многуте протоколи за преземање на електронска пошта. Некои од клиентите и сервисите користат само протоколи одредени од добавувачи (лиценциран протокол), но повеќето ги поддржуваат и стандардните интернет протоколи, (SMTP) за праќање на електронска пошта и користат POP и IMAP за преземање на истата, овозможувајќи интероперабилност со други сервиси и клиенти. На пример, Outlook клиентот користи лиценциран протокол за да комуницира со таканаречениот Microsoft Exchange Server, опслужувач кој го прави истото како и Notes клиентот на IBM кога комунуцура со Domino опслужувач, но сите овие производи поддржуваат POP, IMAP и SMTP. Поддршката за стандардните интернет протоколи му дозволува на многу e-mail клиенти како Pegasus Mail или Mozilla Thunderbird (споредба на e-mail клиенти) да пристапат до овие опслужувачи и дозволува клиентите да бидат користени од страна на други сервиси.(список на mail опслужувачи).

## Историја
IMAP бил дизајниран од страна на Mark Crispin во 1986 како протокол за управување со сандачиња од далечина (remote mailbox protocol), за разлика од широко користениот POP, протокол за преземање на содржини од сандаче.

IMAP порано бил познат како *Internet Mail Access Protocol*, *Interactive Mail Access Protocol*  (RFC 1064), и *Interim Mail Access Protocol*

### Оригинален IMAP
Првичниот *Interim Mail Access Protocol* бил имплементиран во Xerox Lisp машински клиент и TOPS-20 опслужувач.

Но, не постојат копии од спецификациите на овој пртокол, ниту пак постои софтвер за истиот. Иако некои од командите и одговорите биле слични со некои од командите и одговорите на IMAP2, на interim протоколот му недостигале тагови за команди/одговори и на тој начин неговата синтакса не била компатибилна со останатите верзии на IMAP.

### IMAP2
Interim protocol-от веднаш бил заменет од таканаречениот *Interactive Mail Access Protocol* (IMAP2), дефиниран во RFC 1064 (во 1988) и подоцна ажуриран од страна на RFC 1176 (во 1990). IMAP2 првпат претстави тагови за command/response и беше првата јавно дистрибуирана верзија.

### IMAP3
IMAP3 веќе не постои но е многу ретка верзија IMAP. Издадена е како RFC 1203 во 1991. Оваа верзија била напишана специјално како против предлог на RFC 1176, кој и подоцна самиот објави модификации на IMAP2. IMAP3 никогаш не бил прифатен од пазарот. IESG го прекласифицира RFC1203  "Interactive Mail Access Protocol -  Version 3"  како историски протокол во 1993.IMAP групата искористила RFC1176 (IMAP2) наместо RFC1203 (IMAP3) како почетна точка.

### IMAP2bis
Со пристигањето на MIME, IMAP2 беше изменет така што можеше да поддржува MIME структури и беше додадена функционалност која овозможуваше управување со сандачиња (создавање, бришење, преименување, качување пораки на опслужувач)што дотогаш го немаше во IMAP2. Оваа експериментална преработка се нарече IMAP2bis; нејзината крајна спецификација никогаш не била објавена. Почетна верзија била објавена на интернет, а IMAP2bis бил објавен од страна на IETF IMAP групата во окромври 1993. Оваа верзија се засновала на претходните спецификации: необјавениот *IMAP2bis.TXT* документ, RFC1176, и RFC1064 (IMAP2).*IMAP2bis.TXT* верзијата го документирала проширувањето IMAP2 уште во декември 1992. Првични верзии на Pine биле широко дистрибуирани со IMAP2bis поддршка (Pine 4.00 and later supports IMAP4rev1).

### IMAP4
IMAP групата го формирала таканаречениот (Internet Engineering Task Force|IETF) во раните 1990-ти години и ја презела одговорноста за IMAP2bis дизајнот.IMAP WG одлучиле да го преименуваат IMAP2bis во IMAP4 за да избегнат забуни со конкурентниот IMAP3 предлог од друга група која никогаш не успеала да се пробие на пазарот. Проширувањето на IMAP акронимот било исто така сменето во *Internet Message Access Protocol*.

IMAP4 е објавен како RFC 1730 во декември 1994. Некои дизајнерски мани во оригиналниот IMAP4 кои произлегле кога протоколот се имплементирал довеле до преглед на истиот и набрзо замена со IMAP4rev1 две години подоцна (RFC 2060 е објавен во декември 1996. Имало многу малку IMAP4 клиентски или опслужувачки имплементации засновани на RFC 1730 поради неговата краткотрајност.

## Предности во однос на POP
### Поврзани и неповрзани начини на операција
Кога користат POP, клиентите обично на кратко се поврзуваат со e-mail опслужувачот користејќи го само за да преземат нови пораки. Кога  користи IMAP4, клиентот често останува поврзан само кога корисничкиот интерфејс е активен и е побарана содржината на пораката која тој сака да ја преземе. За корисниците кои имаат големи пораки користењето на IMAP4 може да резултира со поголемо време на одговор.

### Користење на едно сандаче од страна на повеќе клиенти
POP протоколот дозволува само еден клиент да биде поврзан со сандачето и тоа клиентот кој е моментално поврзан. За разлика од POP, IMAP протоколот дозволува паралелно поврзување на повеќе клиенти со едно сандаче и обезбедува механизми за откривање на промени направени во сандачето од друг клиент кој е моментално поврзан.

### Пристап кон MIME делови на порака и делумно преземање
Обично целата електронска пошта се праќа во MIME формат, дозволувајќи пораките да имаат дрво структура каде јазлите-листови се некој дел од типови на содржина, а останатите јазли имаат повеќе поделени типови. IMAP4 протоколот дозволува клиентите одделно да преземаат MIME делови и исто така да преземаат или поединечни делови од пораката или пак целата порака. Овие механизми дозволуваат клиентите да преземаат дел од содржината која се наоѓа во пораката без да преземаат закачени податотеки или да преземаат stream содржина додека се презема истата.

### Информација за состојба на порака
Со користењето на знамецак кои се дефинирани во IMAP4 протоколот, клиентите можат да водат сметка за состојбата на своите пораки без разлика дали пораката била прочитана, одговорена или пак избришана. Овие знаменца се чуваат на опслужувач така што различни клиенти кои можат да пристапат до истото сандаче во различно време имаат можност да откријат промени направени од други клиенти. POP не обезбедува ваков механизам за клиентите така што ако еден корисник пристапи до сандачето со два различни POP клиенти, информацијата за состојбата на пораката без разлика дали била пристапена или не, не може да се синхронизира помеѓу два клиенти. IMAP4 протоколот поддржува преддефинирани системски знаменца и дефинирани клучни зборови. Системските знаменца ја покажуваат состојбата на пораката, односно дали таа е прочитана или не. Клучните зборови, кои не се поддржани од сите IMAP опслужувачи, дозволуваат на пораките да му се додаде еден или повеќе тагови (metadata) чие значење може да го определи клиентот. Додавање на кориснички создадени тагови на пораки е операција поддржана од некои web-засновани email сервиси, како Gmail.

### Повеќе сандачиња на опслужувачот
IMAP4 клиентите можат да создаваат, преименуваат и/или да избришат сандачиња (тие се обично прикажани како податотеки) на опслужувачот и да преместуваат пораки од едно во друго сандаче. Поддршката за повеќе сандачиња исто така дозволува опслужувачите да овозможат пристап и кон јавни податотеки.

### Пребарувања на опслужувачка страна
IMAP4 обезбедува механизам за клиентот да може да му даде задача на опслужувачот да пребарува пораки според некој критериум. Овој механизам избегнува барања за преземање на пораки од страна на клиентите за да може да изврши дадено пребарување.

### Вградени механизми за проширување
IMAP4 користи меганизам кој претставува проширување на самиот протокол за разлика од неговите претходници. Биле предложени многу (IMAP4 проширувања) на основниот протокол, но тие ретко се употребуваат. IMAP2bis немал механизам за проширување и POP има само едно дефинирано од страна на RFC 2449.

## Недостатоци на IMAP
Иако IMAP има многу предности во однос на POP, тој има поголема комплексност. Многу од оваа сложеност (на пример повеќе клиенти пристапуваат кон истото сандаче во исто време) се компензира со позадини на опслужувачка страна како на пример Maildir или пак со бази на податоци.

Клиентот може да зазема големи опслужувачки ресурси кога пребарува големи сандачиња ако пораките не се складираат внимателно и не се направат алгоритми за пребарување.

IMAP4 клиентите треба да одржуваат TCP/IP врска до IMAP опслужувачот за да можат да бидат известени кога ќе има нова порака. Известувањара се прават преку таканаречено in-band сигнализирање, кое придонесува на сложеноста на клиентската страна на IMAP протоколот. Предлог за ова е Push-IMAP кој го проширува IMAP барајќи имплементација на push e-mail на тој начин што се праќа целата порака наместо известување. Но, push IMAP не е добро прифатен и тековната IETF работа го избегнува проблемот користејќи  други начини (Lemonade Profile).

За разлика од некои лиценцирани протоколи кои комбинираат операции за праќање и преземање, праќањето на порака и правење на копија на истата во податотека на опслужувачка страна со основно ниво на IMAP, клиентот прави барање за пренос на пораката двапати едно кон SMTP за доставување и едно кон IMAP за складирање во податотеката за пратени пораки. Овој проблем е решен со помош на множество од проширувања дефинирани од страна на IETF LEMONADE групата за мобилни уреди: URLAUTH (RFC 4467) и CATENATE (RFC 4469) во IMAP и на  BURL (RFC 4468) во SMTP-SUBMISSION. POP опслужувачите не поддржуваат податотеки на опслужувачка страна па клиентите немаат избор освен да  складираат пратени пораки кај нив. Многу IMAP клиенти можат да бидат конфигурирани така што се овозможува складирање на пратени пораки во податотека на клиентска страна или на BCC и да се филтрираат новите пораки наместо да се прават копии во податотеката. Како додаток  LEMONADE "триото", Courier Mail Server нуди нестандардни методи на праќање корисејќи IMAP копирајќи би пораките кои се праќаат во посебна податотека.

Како POP, и IMAP е протокол само за електронска пошта. Како резултат на тоа предмети како контакти, состаноци или задачи не можат да се управуваат или пристапуваат со негово користење.

## Повеќе информации
* Список на сервиси за пораки
* Споредби на e-mail клиенти
* Post Office Protocol (POP)
* Push-IMAP
* Simple Mail Access Protocol
* Webmail
* IMAP IDLE

## Наводи

## Користена литература
* 
* 
* 
* 
* 
* 
* 

## Надворешни врски
* RFC 3501 - specification of IMAP version 4 revision 1
* RFC 2683 - IMAP Implementation Suggestions RFC
* RFC 2177 - IMAP4 IDLE command

Категорија:Internet mail protocols