I begyndelsen af måneden blev der aktivt diskuteret på Hacker News der udvikles under IETFs ledelse. Hvad er galt med IMAP
/ / PD
IMAP
Protokol — denne funktionalitet bruges næsten ikke i moderne e-mailklienter. Et andet problem er relateret til trafikforbruget. I tilfælde af IMAP gemmes e-mails på serveren og synkroniseres periodisk med lokale klienter. Hvis en eller anden grund ødelægger kopien på brugerens enhed, skal hele mailen synkroniseres igen. I den moderne verden, hvor tusinder af mobile enheder kan være tilsluttet serveren, fører denne tilgang til forhøjet trafikforbrug og øgede beregningsressourcer.
Problemer opstår ikke kun med selve protokollen, men også med de e-mailklienter, der arbejder med den. Siden IMAP blev skabt, har det gennemgået mange revisioner — den aktuelle version i dag er IMAP4. Derudover findes der mange valgfri udvidelser til det — der er
nitten RFC'er med tillæg. En af de nyeste er RFC8514 Samtidig tilbyder mange virksomheder deres egne proprietære løsninger, der skal forenkle arbejdet med IMAP eller helt erstatte det:
Gmail , , „Desuden skal en moderne e-mailklient ikke blot kunne sende meddelelser, men også være i stand til at arbejde med kontakter og synkronisere med kalenderen,” siger Sergey Belkin, leder af udviklingsafdelingen hos IaaS-udbyderen
1cloud.ru . „I dag anvendes tredjepartsprotokoller som , og . Denne tilgang komplicerer opsætningen af firewalls i virksomheders netværk og åbner nye vektorer for cyberangreb.”
JMAP er designet til at løse de nævnte problemer. Det udvikles af specialister fra FastMail under vejledning af Internet Engineering Task Force (IETF). Protokollen arbejder ovenpå HTTPS, bruger JSON (af denne grund er den egnet ikke kun til e-mailudveksling, men også til en række opgaver i skyen) og forenkler arbejdet med e-mail på mobile enheder. Ud over behandling af e-mails giver JMAP også mulighed for at tilslutte udvidelser til arbejde med kontakter og kalender-planlægningsprogrammer.
Funktioner i den nye protokol
JMAP er og kræver ikke en konstant forbindelse til mailserveren. Denne funktion forenkler arbejdet i ustabile mobile netværk og sparer batteristrøm.
En e-mail i JMAP præsenteres i JSON-struktur. Den indeholder al information fra meddelelsen (Internet Message Format), som kan være nødvendig for mailapplikationer. Ifølge udviklerne skal denne tilgang forenkle oprettelsen af klienter, da serveren vil tage sig af løsningen af potentielle problemer (relateret til , læsning af overskrifter og kodning).
Til kommunikation med serveren bruger klienten et API. For dette danner den en autentificeret POST-anmodning, hvis egenskaber er beskrevet i JMAP-sessionobjektet. Anmodningen har formatet application/json og består af ét JSON-anmodningsobjekt. Serveren genererer også ét svarobjekt.
I (punkt 3) forfatterne giver følgende eksempel på en anmodning:
{
"using": [ "urn:ietf:params:jmap:core", "urn:ietf:params:jmap:mail" ],
"methodCalls": [
[ "method1", {
"arg1": "arg1data",
"arg2": "arg2data"
}, "c1" ],
[ "method2", {
"arg1": "arg1data"
}, "c2" ],
[ "method3", {}, "c3" ]
]
}
Nedenfor er et eksempel på et svar, som serveren vil generere:
{
"methodResponses": [
[ "method1", {
"arg1": 3,
"arg2": "foo"
}, "c1" ],
[ "method2", {
"isBlah": true
}, "c2" ],
[ "anotherResponseFromMethod2", {
"data": 10,
"yetmoredata": "Hello"
}, "c2"],
[ "error", {
"type":"unknownMethod"
}, "c3" ]
],
"sessionState": "75128aab4b1b"
}
Den fulde specifikation af JMAP med implementeringseksempler kan findes på projektet. Her har forfatterne også offentliggjort specifikationerne for og — de er rettet mod arbejde med kalendere og kontaktlister. Ifølge forfatterne er Contacts og Calendars blevet adskilt i separate dokumenter, så de kan udvikles og standardiseres uafhængigt af "kernen". Kildekoderne til JMAP findes på .

/ / PD
Udsigter
Selv om arbejdet med standarden officielt endnu ikke er afsluttet, implementeres den allerede i produktionsmiljøer. For eksempel har skaberne af den åbne mailserver implementeret deres JMAP-version. Udviklerne fra FastMail serverframework for den nye protokol i Perl, og forfatterne af JMAP præsenterede .
Man kan forvente, at der i fremtiden vil komme flere projekter baseret på JMAP. For eksempel er der en vis sandsynlighed for, at udviklerne fra Open-Xchange, som skaber IMAP-servere til Linux-systemer, vil overgå til den nye protokol. Deltagerne i fællesskabet beder dem meget , et fællesskab der er dannet omkring virksomhedens værktøjer.
Udviklerne fra IETF og FastMail siger, at flere og flere brugere ser behovet for en ny åben standard for beskedudveksling. Forfatterne af JMAP håber, at flere virksomheder i fremtiden vil implementere denne protokol.
Vore ekstra ressourcer og kilder:
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Kilde: habr.com
