Extensible Messaging and Presence Protocol
XMPP (Extensible Messaging and Presence Protocol — хабар алмашинуви ва қатнашув ҳақида маълумот узатишнинг кенгаювчан протоколи), бундан аввал Jabber[1] ([ˈʤæbə(r)] номи остида таниш бўлган, жа́ббер — «эзма гап», «бекорчи гап», «сафсата» —XMLда асосланган, очиқ, тезкор хабар алмашиш ва реал вақтга яқин тарзда қатнашув ҳақида маълумот узатиш учун мўлжалланган ва ишлатилиши бепул бўлган протокол. Аввалдан енигил кенгаювчан тартибида лойхалаштирилганлиги сабабли протокол, хабар алмашишдан ташқари, тармоқ орқали овоз, видео ва файлларни узатишни ҳам таъминлайди.
AIM, ICQ, MSN ва Yahoo тезкор хабар алмашиш тижорат тизимларидан фарқли ўлароқ, XMPP марказсизлаштирилган, кенгаювчан ва очиқ тизимдир. Ҳар қайси хохловчи ўзининг тезкор хабар алмашиш серверини очиши, унда фойдаланувчиларни рўйхатдан ўтказиши ва бошқа XMPP серверлари билан ўзаро алоқа боғлаши мумкин. XMPP протоколи асосида, Google Talk, LiveJournal ва Gizmo5ларга ўхшаш, кўплаб шахсий ва корпоратив XMPP серверлар очилган.
Mundarija |
[tahrir] Протокол
XMPP протоколлар ойласи RFC стандарти деб қабул қилинган. XMPP учун стандарт порт — 5222. Ҳамда, агар файрвол билан муаммолар туғилса, 80 ва/ёки 443 портларини ҳам ишлатиш мумкин.
[tahrir] Устунликлар
- Марказсизлаштирилган: XMPP тармоғи архитектураси электрон почтасига ўхшаш; хохлаган одам ўзининг XMPP серверини ишга солиши мумкин ва хеч қанақа марказий сервер бўлмайди.
- Очиқ стандарт: Internet Engineering Task Force (Интернет лойхаларнинг махсус комиссияси) XMPPни тезкор маълумот алмашиш ва қатнашиш технологияси стандарти сифатида XMPP номи билан тавсифлаган. XMPP таснифлари RFC 3920 ва RFC 3921 сифатида тарқатилган. Ушбу таснифларни қўллаб-қувватлашни қўшиш учун хеч қандай имтиёз талаб қилмайди ва уларнинг лойхалаштирилиши қайсидир дастурчига боғланиб қолмайди. Бугунги кунда кўплаб амаллдаги сервер ва клиентлар, ҳамда очиқ кодли библиотекалар мавжуддир.
- Тарихи: XMPP технологияси 1998 йилдан буён ишлатиб келинади. Sun Microsystems, Google ва бошқа йирик компаниялар ёрдамида XMPP стандартларига клиентлар, серверлар, компонентлар ва кодлар библиотекалари учун кўплаб қўшимчалар яратилди.
- Ҳавфсизлик: XMPP серверлари оммавий XMPP тармоқларидан изоляция қилиниши мумкин (масалан, компаниянинг ички тармоғида) ҳамда улар XMPP ядросига қурилган таснифлар ёрдамида яхши ҳимояланган (SASL ва TSL ишлатилиши туфайли). Шунингдек, канални шифралаш таъминотини ишлатиш учун XMPP Standards Foundation (XMPP Стандартлар Фонди) қўшимча Сертификат Марказини (Certification authority) “xmpp.net”да қўллайди, шу билан бир қаторда, StartCom Certification Authority (ҳамма ёрдамчи сертификат сақловчилари орасида энг асосийси хисобланади) ҳамкорлигида XMPP серверлари администраторлари рақамли сертификатлар билан таъминланиб туришади. Амалдаги серверларнинг кўпчилиги клиент ва сервер алмашинуви пайтида SSLни ишлатишади ва протокол ичида PGP/GPG ёрдамида шифрлашни қўллаб-қувватловчи клиенталр ҳам кам эмас.[2][3][4]
- Эгилувчанлик: Созланадиган функционаллик XMPP устидан созланиши мумкин; турли тармоқларнинг ўзаро алоқасини таъминлаш учун стандарт кейнгайтмалар XMPP Software Foundation томонидан қўллабғқувватланади. XMPP дастурлари тармоқ мулоқотининг клиентлари функционаллигига қўшимча сифатида тармоқни маъмурлаш, ресурсларни тақсимлаш, ўзаро ишлар учун утилиталар, файллар алмашинуви, ўйинлар ва узоқлашган тизимларнинг мониторингларини ўз ичига олади.
[tahrir] Ожиз томонлар
- Узатилаётган маълумотнинг кўплиги: Кўп ҳолларда, серверлар ўртасидаги XMPP трафигининг 70 фоиздан кўпини қатнашиш хабарлари ташкил этади, уларнинг 60 фоиздан зиёди ортиқчадир. Бу муаммони ечиш учун янги протоколлар лойхалаштирилмоқда. Шунингдек, ечим сифатида XEP-0138 кенгайтмасини кўриш мумкин — lzw ва zlib алгоритмлари ёрдамида протоколларнинг узатилаётган хабарларнинг сиқилиши, ҳамда TLS RFC 3749 уланишининг шифрланиши доирасида сиқишни ишлатиш, 3-боб.
[tahrir] Адресация
Jabber тармоғидаги хар бир фойдаланувчи ўзининг ноёб идентификаторига эга — Jabber ID (қисқачаси JID). JID адреси электрон манзилга ўхшаш бўлиб, фойдаланувчи номи ва фойдаланувчи рўйхатдан ўтган сервернинг домен номларидан ташкил топган. Улар @ белгиси билан ажратилади. Масалан, user фойдаланувчиси, example.com серверида рўйхатдан ўтган. Шунда у user@example.com манзилига эга бўлади. Фойдаланувчи бир пайтнинг ўзида бир нечта уланишларга эга бўлиши мумкин. Уларни фарқлаш учун, манзилнинг охирига слэш қўшилиб, ресурс деб номланган қўшимча JID-қиймат ишлатилади. Мисол учун, фойдаланувчининг тўлиқ манзили user@example.com/work бўлсин, шунда user@example.com манзилига юборилган хабарлар, ресурс номидан қатъий назар кўрсатилган манзилгача етиб боради, аммо user@example.com/work учун бўлган хабарлар кўрсатилган манзилгача фақат уланган ресурсга мувофиқ етиб боради. JID манзиллари тизим хабарлари ва махсус имкониятларни бошқариш мақсадида фойдаланувчи номисиз ҳам кўрсатилиши мумкин (ресурс номи билан ёки ресурс номисиз).
[tahrir] Бошқа протоколлар билан боғланиш
XMPPнинг фойдали хусусиятлари транспортлардир, ёки шлюзлар. Улар фойдаланувчиларга бошқа протокол ишлатаётган тармоқларга йўл очиб беради. Бу SMS ва электрон почта протоколлари тойифасига кирувчи тезкор хабар алмашиш протоколлар бўлиши мумкин. Мультипротол клиентларидан фарқли ўлароқ, XMPP коммуникация орқали узоқлашган компьютерда бажариладиган махсус сервис-шлюзлар ёрдамида серверлар даражасида йўл очиб бириши мумкин.
Хар қандай фойдаланувчи, тармоққа кириши учун зарур бўлган ўзи ҳақида маълумот бериб, шундай шлюзда рўйхатдан ўтиши мумкин. Шундан сўнг, у тармоқ фойдаланувчилари билан, худди жаббер тармоғи фойдаланувчилар билан, сухбатлаша олади. Бу нанрса шуни билдирадики, XMPPни тўлиқ қўллаб-қувватловчи ҳар қайси клиент клиентдаги турли хил қўшимча кодсиз ва Интернетга тўғридан тўғри кириш заруриятисиз мавжуд шлюзлар билан таъминланган хохлаган тармоққа кириш учун ишлатилиши мумкин. Шлюзларнинг амалга оширилиши аниқ бир XMPP-серверига боғлиқ, ҳамда тижоратли IM-сервисларнинг ёпиқлиги туфайли барқарорликка дуч келади.
[tahrir] Манбалар
[tahrir] Қўшимча маълумотлар
- XMPP Standards Foundation(ingl.)
- Ўзбекистон jabber сервери
- Jabber.org(ingl.)
- XMPP протоколи билан танишув(rus.)
- Россия миллий jabber сервери(rus.)
- Windows учун Jabber клиентлар(rus.)
- Symbian учун Jabber клиентлар(rus.)
- J2MEда Jabber клиентлар(rus.)