Both SIP and XMPP are application-layer protocols that are used primarily to send voice and instant messaging over the Internet im,rfc3521 defines the sip,rfc3920 definition of XMPP. XMPP comes from instant messaging systems, SIP-like voice and video communications.
XMPP protocol is mainly responsible for the exchange of data, SIP is mainly responsible for end-to-end link establishment, maintenance, termination, 2 is not a concept
Subsequently, after the XMPP protocol was added to the jingle protocol, support for voice, video and SIP protocol after the simple Protocol was added to support data exchange
SIP protocol, has the SIP message format header and Content 2 parts, is based on text format, very flat, parsing is not easy to inherit, and XMPP is the use of XML to transfer data
The connection establishment channel of the SIP is separate from the data transfer channel, and the connection is established between the SIP client and the server, and the data transfer channel is between the client---client, which is suitable for the video and audio file transfer business.
The connection of the XMPP protocol is integrated with the data delivery channel, and the client is only connected to the server, and the client is not connected to the client. The channel that is transmitted between the client is CLIENT1---server1------server2------clent2. This approach seems to be poor scalability, server pressure is great, but can achieve very good business functions, such as message, broadcast, group chat, status updates, blogs, Weibo and so on.
XMPP Server comparison: http://hi.baidu.com/chs_garea/item/74468028891943c5dcf69a3b
Personally think: OpenFire can be the advantage is written in Java. The disadvantage is that cluster functionality is not supported
Ejabberd: The main disadvantage is the development of Erlang, which is developed by the Russians, few people understand, support the cluster
Jabberd: is developed in C language
Enterprise on-Premises im using wildfire + Spark is the best combination
Public Address: http://blog.csdn.net/learnios/article/details/23334597
SIP vs XMPP