[jdev] XMPP vs IMAP
Dave Cridland
dave at cridland.net
Fri Nov 5 06:40:36 CST 2010
On Fri Nov 5 07:54:03 2010, Softish soft wrote:
> Apart that IMAP doesn't handle communication in near real-time.
> What other differences are there between XMPP and IMAP
> Meaning, why can't you just use IMAP/SMTP as a communication IM
> protocol?
IMAP/SMTP is/are a store-and-forward protocol. It can be quite quick,
but it's not designed to be - it does, however, have higher
reliability requirements implied. So it's not really sensible to say
"apart that IMAP doesn't handle communication in near real-time",
because IMAP and SMTP combined simply are not designed with near
real-time as a design basis, simply quick.
It doesn't have any form of presence, server-side storage of
arbitrary data is painful in IMAP (although you could resurrect ACAP
for this nicely), and due to the massively increased latencies, any
end-to-end RTT communication (like feature discovery and negotiation)
would be hugely impaired. You *could* build all the functionality on
top of mail primitives, but the roster equivalent would have to be
client-maintained, etc. (I suppose for extra points you could send a
presence email to your own address and have a SIEVE script perform
the fan-out using external lists stored in LDAP or even ACAP, but
don't expect me to take it seriously). In any case, the resultant
service would be largely unusable as a traditional mail address.
On the other hand, SMTP/IMAP *do* provide for a highly reliable
communications mechanism with in-built archival over potentially very
low bandwidth (for *really* low, you actually need to gateway through
to X.400, but even that's covered by MIXER), and lend themselves well
to much larger messages in a conversation spanning a much longer time.
Like the one we're having.
Dave.
--
Dave Cridland - mailto:dave at cridland.net - xmpp:dwd at dave.cridland.net
- acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
- http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade
More information about the JDev
mailing list