RFC 6120 XMPP学习笔记

XMPP - Extensible Messaging and Presence Protocol

1. 中文版3920 http://wiki.jabbercn.org/RFC3920

2. 大部分客户端通过 TCP 连接直接连到服务器,并通过XMPP获得由服务器以及联合服务器所提供的全部功能。多个不同资源(比如不同的设备和地点)的客户端可以同时登陆并且并发的连接到一个服务器,每个不同资源的客户端通过XMPP地址的资源标识符来区分(比如<[email protected]/home> 和 <[email protected]/work>)

一个 XMPP 实体的地址被称为 JID 。一个合法的 JID 包括一组排列好的元素,包括域名(domain identifier),节点名(node identifier),和资源名(resource identifier)。

其中domain是登陆点。nodeid 可以由第三方平台或登陆服务器自己生成。resource id是随机生成不重复的,以实现多设备同时登陆。

3. 功能

1)XMPP 规范的最重要的一条通信协议就是,如何把消息从一个 JID 发送到另一个 JID (message)。

2)除了点对点消息外,XMPP 定义了消息的组播。也就是一个 JID 可以以自己的名义发布消息 (presence)
3)第三条即是对某个 JID 的状态进行设置和获取 (iq)。于 IM 应用来说,设置签名,昵称,状态等都依赖于它。

时间: 2024-10-19 11:04:12

RFC 6120 XMPP学习笔记的相关文章

RFC 3261 SIP学习笔记

RFC 3261 SIP 1.SDP (rfc 4566) 1)用于交换参数 2)内容分三部分Session description, Time description and Media description (m-line) 3)SDP用于描述会话的媒体属性,通常放在SIP协议的消息体中携带,基于文本的编码方式 format: Session description v=  (protocol version) o=  (originator and session identifier)

RFC 5245 ICE学习笔记

RFC 5245 ICE  1, offer/answer model 2, ICE Step: 1) 产生候选地址(1.公网 2.NAT反射 3.Relay转发地址) Generate candidates 2) 本地对端交换候选地址,完成连接性检查.(用RTP包,一个四次握手的过程,如下图:) 3) 根据优先级进行排序                              Sorting Candidates 4) 冻结候选地址                              

RFC学习笔记 -- 5245 ICE &amp; 3261 SIP

---------------------------------------------------------------------------- RFC list: 3550 (rtp/rtcp)  - 3711(srtp) - 5245 (ice) - 3261(sip) - 4575(sip-conference) - 4566(sdp) 5389 (stun) - 5766(turn) - 6455(websocket) - 6865(fec) - 2616(http) -----

xmpp协议学习笔记

本文是根据xmpp协议视频教程的学习笔记. 每一个客户端使用JID(jabber identifier)来作为身份标识 ,格式为[user"@"]domain["/"resource],其中 domain:服务器域名: user:用户名: resource:属于用户的位置或设备,比如是手机还是电脑     一个用户可以同时以多种资源与统一个XMPP服务器连接,完整的JID例子:[email protected]/iphone6s     stanza的通用属性:fr

XMPP协议学习笔记一

即时通讯技术简介 即时通讯技术(IM)支持用户在线实时交谈.如果要发送一条信息,用户需要打开一个小窗口,以便让用户及其朋友在其中输入信息并让交谈双方都看到交谈的内容.大多数常用的即时通讯发送程序都会提供各种各样的功能: 即时通讯 - 在用户和在线朋友之间来回发送信息 聊天 - 创建用户与朋友或工友的自定义聊天室 网页链接 - 共享用户喜爱的网址 支持图片 - 浏览朋友计算机中的图片 支持声音 - 给朋友播放音乐 支持文件传输 - 直接将文件发送给朋友,以便于共享 交谈 - 使用 Internet

ICMP:Internet控制报文协议实现学习笔记

ICMP是网络层的一个协议,可以看作IP协议的附属协议,因为它主要被IP用来与其他主机或路由器交换错误报文及其他需要注意的信息.当然,更高层协议(tcp/udp)甚至有些用户进程也可能用到ICMP报文 注册ICMP协议和ICMP协议的处理涉及以下文件: net/ipv4/icmp.c ICMP协议处理入口 net/ipv4/af_inet.c 网络层和传输层接口 ICMP报文结构 参见tcp/ip协议学习笔记(5)Internet Control Message Protocol(ICMP) 注

【转】TCP/IP详解学习笔记(二)

TCP/IP详解学习笔记(5)-IP选路,动态选路,和一些细节 1.静态IP选路 1.1.一个简单的路由表 选路是IP层最重要的一个功能之一.前面的部分已经简单的讲过路由器是通过何种规则来根据IP数据包的IP地址来选择路由.这里就不重复了.首先来看看一个简单的系统路由表. Destination     Gateway         Genmask         Flags Metric Ref    Use Iface192.168.11.0    *               255.

python学习笔记[3]-邮件的发送

本文摘抄自:http://www.cnblogs.com/xiaowuyi/archive/2012/03/17/2404015.html 一.相关模块介绍 发送邮件主要用到了smtplib和email两个模块,这里首先就两个模块进行一下简单的介绍:    1.smtplib模块 smtplib.SMTP([host[, port[, local_hostname[, timeout]]]])   SMTP类构造函数,表示与SMTP服务器之间的连接,通过这个连接可以向smtp服务器发送指令,执行

WebRTC学习笔记_Demo收集

1.     WebRTC学习 1.1   WebRTC现状 本人最早接触WebRTC是在2011年底,那时Google已经在Android源代码中添?了webrtc源代码,放在/external/webrtc/,可是Android并没实用到它,更没有被浏览器使用.当时试图在Android 2.3(Gingerbread)高通平台的手机上用H.264 硬件codec替换掉WebRTC缺省使用的VP8软codec,费了不少劲勉强换掉后效果非常差仅仅得放弃. 近期得知Google最新版的Chrome