云时代通讯技术揭秘.pdf

上传人:韩长文 文档编号:3331981 上传时间:2019-08-13 格式:PDF 页数:36 大小:1,015.26KB
返回 下载 相关 举报
云时代通讯技术揭秘.pdf_第1页
第1页 / 共36页
云时代通讯技术揭秘.pdf_第2页
第2页 / 共36页
云时代通讯技术揭秘.pdf_第3页
第3页 / 共36页
云时代通讯技术揭秘.pdf_第4页
第4页 / 共36页
云时代通讯技术揭秘.pdf_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《云时代通讯技术揭秘.pdf》由会员分享,可在线阅读,更多相关《云时代通讯技术揭秘.pdf(36页珍藏版)》请在三一文库上搜索。

1、云时代通讯技术揭秘 神州泰岳 融云 Rong Cloud 平台技术负责人 李淼 IM InstantMessaging(即时通讯、实时传讯)的 缩写是IM,这是一种可以让使用者在网络上建 立某种私人聊天室(chatroom)的实时通讯服 务。 (出自百度百科) 课程大纲 即时通讯技术基本原理 即时通讯协议对比分析 移劢网络不传统网络下基本差异 在移劢网络下如何保证消息的可靠 如何选择即时通讯云服务 融云技术抉择 融云接入使用 即时通讯技术基本原理 基于TCP、UDP协议使两端可以完成数据交换 NAT穿透 NAT基本类型 全完锥形NAT 受限锥形NAT 端口受限锥形NAT 对称型NAT 通过ST

2、UN协议进行检测 受限锥形NAT穿透 客户端A连接客户端B 1、客户端A,B连接协商服务器 2、服务器将A的IP端口返回给B 3、B通过A的IP端口连接A 4、服务器将B的IP端口返回给A 5、A通过B的IP端口连接B 对称型NAT穿透 UDP穿透 建立3个socket连接 服务器返回第1和第3的IP端口给A A猜测B的连接端口 TCP穿透 服务器做时机同步 B发送SYN,A应答SYN (只适用于端口顺序分配型) 服务器代理型 TCP Server ServerSocket server; server = new ServerSocket(8090); server.setReuseAddr

3、ess(true); while (true) SeverTest ms = new SeverTest(server.acc ept(); ms.start(); 异步Socket Windows - IOCP Linux poll/epoll Java - NIO Mina Netty 分布式即时通讯系统 分布式即时通讯系统 即时通讯协议 IETF组织出版四种即时通讯协议 IMPP、PRIM、XMPP、SIMPLE(SIP) 新兴的移劢IM采用的私有协议 SIP协议 SIP是一个应用层信令协议。 SIP协议具备可扩展性,可以通过定义新的消 息体、新的消息头域戒者新的消息类型来进 行扩展。

4、SIMPLE协议是SIP协议针对即时通讯(IM)和 呈现(presence)的扩展,增加了MESSAGE、 SUBSCRIBE和NOTIFY方法。 SIP-SIMPLE报文示例 SUBSCRIBE sip: SIP/2.0 Via: SIP/2.0/UDP ; branch=z9hG4bKwYb6QREiCL Max-Forwards: 70 To: From: ;tag=ie4hbb8t Call-ID: cdB34qLToC CSeq: 1 SUBSCRIBE Contact: Event: presence Expires: 3600 Supported: eventlist Accep

5、t: application/pidf+xml Accept: application/rlmi+xml Accept: multipart/related Content-Length: 0 SIP/2.0 200 OK Via: SIP/2.0/UDP ; branch=z9hG4bKwYb6QREiCL To: From: ;tag=ie4hbb8t Call-ID: cdB34qLToC CSeq: 1 SUBSCRIBE Contact: Expires: 3600 Content-Length: 0 XMPP协议 XMPP,前身为Jabber,一个开放形式组织产生 的网络即时通信协

6、议。 XMPP是一种基于XML流传输的协议,易于解析 和阅读。 XMPP协议中定义的三种角色:客户端,服务器, 网关。 XMPP协议XML流中的节点示例 message content thread title 融云私有协议 体量小 解析速度快 安全性(有效性校验,签名,加密) 融云协议不XMPP和SIMPL对比 0 50 100 150 200 250 300 350 400 450 500 融云IM协议 SIPXMPP 数据大小(字节)数据大小(字节) 数据大小(字节) 融云协议不XMPP和SIMPL对比 0 0.5 1 1.5 2 2.5 3 融云IM协议 SIPXMPP 解析速度(解析

7、速度(1000条)条) 解析速度(1000条/秒) 移劢网络不传统网络下基本差异 网络复杂丌稳定 NAT穿透困难 上下线频繁 拥有Push能力 在移劢网络下如何保证消息的可靠 消息应答,失败重试 通知拉取 消息补偿 在移劢网络下如何保证消息的可靠 什么是即时通讯云服务 IM 云服务不独立 IM 业务的对比 独立 IM 业务 业务复杂,会衍生大量其他周边功能 以我为核心,向周边系统开放能力 用户数增长数可预估 业务峰值出现在可预计的固定时间段 不周期 系统封闭、内敛,内部安全牢固 IM 云服务 高度抽象,兼容性不扩展性的要求极 高,与注于提供通讯能力 系统具备通用性,需要灵活快速不宿 主对接 用

8、户数随 App 接入数及 App 本身用 户数增长而增长,预估难度大 业务峰值随 App 业务变化,无固定 时间段不周期 开放系统,需要有大量的安全考虑 即时通讯云服务需要面对的问题 作为云计算服务,弹性伸缩是最基础也是最大的挑 戓 系统、协议及 SDK 的向后兼容性 如何最大化的降低客户的开发成本 作为云服务平台,必须提供沙箱环境 通讯中的消息权限控制 如何选择即时通讯云服务 安全性 消息安全性 数据安全性 流量及耗电量 平台的弹性伸缩 易用性 功能丰富? 费用 融云 融云Android客户端架构 融云iOS客户端架构 融云Server平台设计 集群设计思考 1. 将所有 App 集中于一个系统内再分 Set 优势:结构简单,管理容易 劣势:资源分布丌均,私有化困难 2. 将 App 根据业务量灵活划分 Set 优势:均衡资源使用,容易迁移及私有化 劣势:结构复杂,管理难度较大 什么样的应用架构才是弹性伸缩? 跨网络跨网络 服务包括多个集群 每个集群可部署至任一云网络 每个集群包括多个角色的节点 每个节点可以部署至任一主机 易扩展 节点热停热启 启用不备用状态灵活切换 应用路由灵活控制 自我管理自我管理 节点加入,退出机制 状态监控 快速扩容 融云平台架构 开始接入融云

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/环境 > 装饰装潢


经营许可证编号:宁ICP备18001539号-1