News

News

Rezumat tehnic

Imaginea de mai sus probabil vă pare familiară, deoarece ilustrează în linii mari arhitectura sistemelor de email. Comunicaţiile email şi Jabber sunt posibile datorită unei reţele distribuite de servere care folosesc un protocol de comunicaţie comun, servere la care clienţi specializaţi se conectează pentru a primi şi trimite mesaje către utilizatori de pe acelaşi server ori de pe oricare alt server conectat la Internet.

Insă pe când sistemele de email funcţionează pe principiul "stochează şi dă mai departe", Jabber livrează mesajele aproape în timp real deoarece serverul Jabber (şi, dacă există permisiuni, alţi utilizatori Jabber) ştie dacă un anumit utilizator este conectat sau nu. Această cunoaştere a disponibilităţii se numeşte "prezenţă" şi este un element cheie în transmiterea instantanee a mesajelor. Jabber combină aceste caracteristici standard ale sistemelor IM cu alte trei caracteristici suplimentare, care îi conferă unicitate. Prima caracteristică este protocolul complet deschis. A doua caracteristică este faptul că protocolul de comunicaţie Jabber este 100% XML, ceea ce face posibilă o comunicaţie structurată şi inteligentă nu numai între utilizatori umani, dar şi între aplicaţii software. Iar a treia caracteristică este aceea că Jabber foloseşte adrese bazate pe DNS şi scheme URI recunoscute, având ca rezultat adrese de aceeaşi formă ca şi cele folosite pentru email (utilizator@server).

Jabber foloseşte o arhitectură client-server, nu o arhitectură unu-la-unu, aşa cum fac alte sisteme. Asta înseamnă că toate datele Jabber trimise de un client către altul trebuie să treacă prin cel puţin un server Jabber. (De fapt, clienţii Jabber pot negocia şi conexiuni directe, de exemplu pentru a transmite fişiere, însă aceste conexiuni "out-of-band" sunt mai întâi negociate în cadrul contextului client-server.). XML exte parte integrantă a arhitecturii Jabber deoarece este imperativ ca arhitectura să fie extensibilă si să poată exprima aproape orice informaţie structurată. Când un client se conectează la un server, acesta deschide deschide un stream XML cu sens unic de la client la server, iar serverul răspunde cu un stream XML cu sens unic de la server la client. Deci fiecare sesiune implică două stream-uri XML. Toate comunicaţiile dintre client şi server au loc prin aceste stream-uri, sub formă de mici pachete XML, asemenea următorului mesaj de la Julieta pentru Romeo.