跳到主要内容
xray.top
知识小组同库第 13

第五章 新型网络应用

发布 2021/01/05 05:11更新 2025/10/03 10:1371880 阅读

1. 即时通信( IM) 系统

Ÿ  1996 年 11 月,以色列 Mirabils 公司推出了世界上第一款即时通信软件 ICQ(I Seek You,网络寻呼机), 宣告了“即时通信(Instant Messaging, IM)”这一概念的诞生。

Ÿ 即时通信系统是一种基于 Internet 的通信服务, 可提供近实时的信息交换和用户状态跟踪。

Ÿ  2000 年,IMPP 工作小组提交的关于即时通信系统的 RFC 草案, 获得了 IETF 的批准, 成为正式的

RFC 文件。

Ÿ  IETF 批准的 RFC2778 给出了一个抽象的呈现与即时消息系统模型,描述了即时通信系统的功能, 勾勒出了即时通信系统的模型框架。

Ÿ 一个即时通信系统通常包括两种服务

①  一种是呈现服务(Pesence srvice), 用户之间相互订阅并获取彼此的状态变更信息;

②  另一种是即时消息服务( istant message srvice), 用于用户之间相互收发短消息。

Ÿ 即时通信系统一般釆用两种通信模式

① 用户/服务器模式,在用户/服务器模式中,消息的发送和接收需要通过服务器中转,主流的即时通信软件的文本消息大多使用用户/服务器模式。

② 用户/用户模式。消息的发送和接收采用直接的点对点的通信方式,文件传送等大数据量业务通常使用用户/用户模式。

2. 即时通信协议

l  微软 MSN釆用 MSNP协议;

Ÿ  AOL 采用 OSCAR 协议;

Ÿ  QQ 采用自己设计的私有协议

Ÿ 由于各厂商自己定义的协议互不开放,因此造成彼此间互不兼容,无法互联互通。

Ÿ 即时通信开放的协议主要代表有两个

① 一个是基于 SIP 协议框架的 SIMPLE 协议簇

② 一个是基于 JABBER 协议框架的 XMPP 协议簇。

③  SIMPLE 协议是对 SIP 协议的扩展, 以使其更好地支持即时消息服务。

④  XMPP 协议簇是基于 XML 语言定义的即时消息协议。

3. SIP(会话初始化协议)

Ÿ  SIP 是 IETF 于 1999 年提出的一个信令控制协议, 主要内容在 RFC3261 中进行定义;

Ÿ  SIP 协议位于应用层, 目标是方便地创建、管理和终止用户之间的会话。

Ÿ  SIP 协议主要是为 IP 网络设计的,可以运行于 TCP、UDP、SCTP 等各种传输层协议之上。但是,SIP 协议本身并不关心承载网络,因此 SIP 协议也可工作在 ATM、帧中继等承载网中。

4.SIP 系统

1)   SIP 用户的地址以“SIP”开始, 后面类似于 E-mail 地址。

2)  例如可以使用 sip:miyname@my-company.com 表示一个 SIP 用户, 该用户处于 mycompany.com 域中, 在 mycompany.com 域中的名字为 myname。

3)   SIP 地址是一个全局性的地址, SIP 系统通过这种统一名字标识符定位和查询 SIP 用户。

4)  按逻辑功能区分,SIP 系统由 4 种元素组成,它们是用户代理(user agent,UA)、代理服务(proxy server)、重定向服务器(redirect server)和注册服务器( registrar)。

Ÿ 用户代理:

① 用户代理由两个部分组成:一部分是用户代理客户机(User Agent Client,UAC),另一部分是用户代理服务器( User Agent Server UAS)。

② UAC 负责发起呼叫, UAS 负责接收呼叫并作出响应。

③ UAC 和 UAS 共同组成 UA,存在于用户终端之中。

④ 用户通过 SIP 用户代与 SIP 系统交互,其存在的形式多种多样,如计算机上的即时通信软件、专用的软电话( phone)等。

Ÿ 代理服务器:

① 代理服务器负责接收用户代理发来的请求,根据网络策略将请求发给相的服务器,并根据收到的应答对用户作出响应。

② 代理服务器是一个中间元素, 既有客户机的性质又有服务器的性质, 同时还具有名字解析能力。

③ 代理服务器分为有状态代理服务器和无状态代理服务器。

④ 有状态代理服务器需要存储接收到的请求、回送的响应和它转发的请求,而无状态代理服务器一旦转发请求和响应后就忘记所有的信息。


Ÿ 重定向服务器:重定向服务器是一个规划 SIP 呼叫路径的服务器。

Ÿ 注册服务器:用于接收和处理用户端的注册请求, 完成用户地址的注册。

5.SIP 消息

1)   SIP 消息组成

l  由一个起始行(start-line)、消息头(message-header)、一个标志消息头结束的空行 CRLF)和可选的消息体(messagebody)组成。

Ÿ 其中,消息头由一个或多个宇段组成。

2)   SIP 消息包括两种类型:

Ÿ 从客户机到服务器的请求消息( request)

① 在请求消息中,起始行为请求行。

② 请求行中一般包括请求方法、请求的 SIP 用户地址和 SIP 的协议版本。

③ 在 SIP 协议中有 6 种请求方法, 它们是 INVITE、ACK、OPTIONS、BYE、CANCEL 和 REGISTER。

请求方法

功能

INVITE

邀请用户或服务器参加一个会话

ACK

UA 向服务器证实它已经收到了对 INVITE 请求的最终响应。ACK 只和 INVITE 一起使用

OPTIONS

请求关于服务器能力的信息。如果服务器认为它能与用户联系,则可用一个能力集晌应

BYE

用户终止一次会话,既可由主叫 UA 发送,也可由被叫 UA 发送

CANCEL

取消一个挂起的呼叫

REGISTER

向定位服务器注册 UA 的相关信息

Ÿ 从服务器到客户机的响应消息( response)

① 响应消息中,起始行为状态行。

② 状态行中一般包括 SIP 的版本号、状态码和一句对该状态的文本描述信息。

6.SIMPLE 协议

Ÿ  SIMPLE 协议是一组能够提供即时消息服务的通信协议。

Ÿ 它由 IETF 的 SIMPLE 工作组制定, 基本上与 RFC2778 定义的即时消息系统模型保持一致。

Ÿ  SIMPLE 协议通过对 SIP 协议进行扩展,使其支持即时消息服务。

Ÿ  SIMPLE 增加了 NOTIFY、SUBSCRIBE 和 MESSAGE 方法支持即时通信。

①  MESSAGE:用来发送一次性的短消息, 即寻呼机模式的即时消息。

②  SUBSCRIBE:用于观察者( watcher)向服务器订阅其他用户的呈现信息。

③  NOTIFY:在用户的呈现信息发生改变时,服务器使用 NOTIFY 方法向该用户的订阅用户发送呈现信息。

7.XMPP 系统

Ÿ XMPP 协议是一种基于 XML 的即时通信协议;

Ÿ XMPP 协议的系统架构沿袭了 E-mail 系统的架构;

Ÿ XMPP 系统架构主要由 3 种实体组成: XMPP 客户、XMPP 服务器和 XMPP 网关:

① XMPP 服务器间相互通信, 形成一个由 XMPP 服务器组成的分布式网络;

② XMPP 网关负责 XMPP 与非 XMPP 系统之间的互联, 可以使 XMPP 客户和非 XMPP 客户进行通信;

③ XMPP 客户通过 Internet 接入 XMPP 系统, 可以通过 XMPP 系统与其他客户进行通信( 如果存在

XMPP 网关, XMPP 客户也可以和非 XMPP 客户进行通信)。

8. XMPP 系统特点

① 用户/服务器中转模式:XMPP 使用用户/服务器通信模式, 而不是有些即时消息系统采用的用户/ 用户模式。从一个用户客户机端发给另一个用户客户机端的 XMPP 即时消息都必须通过服务器中转。

② 分布式网络系统:XMPP 的网络体系结构与 E-mail 系统类似, XMPP 客户和服务器组成一个分布式的网络处理系统,即时消息和呈现信息在这些 XMPP 客户和服务器之间传输。XMPP 地址和 E-mail 地址形式一样(如 stpeter®jabber,org), 因此,从一个用户地址即可得知该用户所属的 XMPP 服务器。

③ 简单客户机端:XMPP 的目标之一是必须支持简单客户机端,将复杂性从用户端转移到服务器端。

XMPP 系统架构要求用户端必须支持的功能:通过 TCP 套接字与 XMPP 服务器进行通信、解析组织好的

XML 信息包、理解消息数据类型。(目前 Google 的 Google Talk 和 Jive Message 都采用 XMPP 协议)。

④ XML 数据格式:XML 是 XMPP 系统的核心, 几乎能表述任何一种结构化数据。

9.XMPP 协议

Ÿ 寻址方案


① XMPP 通信系统具有统一的寻址方案, XMPP 用户地址的格式必须符合 RFC2396 统一资源标识符的语法规定。

② 由于历史原因, XMPP 地址也被称为 JID(JabberID7Jab-ber 标识)。

③ JID 用于标识即时消息用户和用户连接的资源,它由域标识符、结点标识符、资源标识 3 部分组成,形如 node@domaia/resource。其中,域标识符是唯一必需的,通常表不 XMPP 服务器或 XMPP 网关,必须是一个合法的 DNS 域名; 结点标识符是一个可选项, 以“@” 符号分割放在域标识符之前。结点标识符通常是一个使用 XMPP 服务的一个用户; 资源标识符也是一个可选的标识符, 表示具体的资源。资源标识符放在域标识符之后,并以“/”分隔。

Ÿ  XML 流与 XML 节(Stanza)

①  XMPP 是一套基于 XML 流的协议;

②  XMPP 流中的“节”有 3 种类型,它们是消息(message)、呈现(presence)和查询( 1/Q,Info/Query)。

③ 消息节表示传输的消息,其中消息的接收方、发送方可以使用 to、from 等关键字表明;

④ 呈现节用来表明用户的状态(如在线、离线等)。当用户的状态改变时,用户端就会在用户到服务器的流中插入一个呈现节,用于表明自身的状态;

⑤ 查询节是一种请求/响应机制。一个实体发送请求, 另外一个实体接收请求并进行响应。

10.即时通信实例

Ÿ 腾讯 QQ、网易泡泡、新浪 UC、微软 MSN 和雅虎 Messenger 等都曾经是非常流行的即吋通信软件。

Ÿ 除了实时消息交换和状态跟踪之外,即时消息系统一般还提供一些附加功能,如音频/视频聊天、应用共享、文件传输、文件共享、游戏邀请、远程助理、白板等。

11.QQ 用户登录过程

①  客户端每次登陆时会访问记录上次登陆服务器的地址的记录文件,如果成功则不会重发 DNS 请求。

②  在 QQ 通信中,用户必须先登录后才可以进行互相发送信息等操作。

③  QQ 聊天通信信息是加密的,每次登陆时 QQ 客户机会向服务器获取一个会话密钥。

④  客户端会从服务器端获得好友列表,以建立点对点的联系。

⑤  QQ 采用的通信协议以 UDP 为主,辅以 TCP 协议。

12.P2P 文件共享

Ÿ 文件共享是指用户主动地在网络上分享自己主机中的文件或者目录。

Ÿ  P2P 文件共享起源于 1999 年的音乐分享网站 Napster。Napster 釆用的是集中式的对等网络结构。

Ÿ  eDonkey2000 继承了前者共享文件系统的优点,并为文件增加了哈希( Hash)信息。

Ÿ 最初的 BT 系统需要中心服务器存放用户的信息, 该服务器被称为 Tracker 服务器。

Ÿ  BT 系统要求文件的发布者制作一个被称为“种子” 文件的.torrent 文件,该文件包含了 Tracker

服务器的相关信息和发布者共享文件的信息。

Ÿ 下载者通过发布者提供的种子文件连接到 Tracker 服务器, 并通过 Tracker 服务器获取其他下载者(包括发布者)的 IP 地址和端口号。

l  下载的人越多, BT 系统提供的带宽越大,下载速度也就越快。在后续的版本中,BT系统加入了 DHT的支持,以实现无 Tracker服务器的文件传输。

Ÿ 在 20 世纪 60 年代, 美国著名社会心理学家米尔格伦( Stanley Milgram)提出了“六度分隔(Six Degrees of Separation)”理论。这就是著名的“小世界假设” 。六度分隔理论为 P2P 文件共享系统中的结点的快速发现和资源快速发现提供了理论基础。

13. 文件共享实现方式

Ÿ 如 FTP 文件共享、NFS 网络文件系统共享、Windows 共享文件夹以及正在流行的 P2P 文件共享等。

Ÿ 在 FTP 文件共享中, 用户将需要共享的文件传送到 FTP 服务器,其他用户使用该文件时需要通过

FTP 服务器进行下载;

Ÿ 在 NFS 网络文件系统中, 用户可以将自己主机上的文件或目录共享出来, 其他用户需要使用时, 只需将该文件或目录挂接在自己的文件系统下,像使用本地文件一样使用远程主机上的文件;

Ÿ  Windows 共享文件夹是微软针对 Windows 系统开发的文件共享机制,它通常使用 NetBIOS 和 NetBEUI

协议将文件夹共享给其他用户使用。

Ÿ  NetBIOS 是由微软公司开发,工作于网络层驱动接口和传输层驱动接口之间,支持 254 个并发通信话路, 名字服务可以采用 UDP 协议。

14.Maze 系统

Ÿ  Maze 系统是一个功能非常强大的 P2P 文件共享系统, 属于混合式的 P2P 网络系统。

Ÿ  Maze 系统参考了 Kerberos 协议, 采用了分布式认证机制。

l  为了促使用户更多地共享资源, Maze系统采用了 Maze 积点和 Maze星级技术。


Ÿ 该系统采用了以六度分隔理论为基础的网络链接关系, 能够支持在线资源搜索和文件目录视图, 可以进行多点下载和断点续传,支持跨防火墙的文件共享与下载。

Ÿ  Maze 系统中的用户被称为 Peer,每个 Peer 相当于一个传统 FTP 服务器与一个 FTP 客户端的结合体。整个系统除了多个 Peer 外,还包括集中式的用户管理服务器、文件目录服务器、索引和检索服务器、心跳服务器。

① 用户管理服务器实现用户注册与身份认证;

② 文件目录服务器负责收集每个 Peer 共享的目录列表并将它们存入集中式的目录数据库;

③ 索引和检索服务器读取目录数据库中的数据,为所有共享文件目录建立索引并提供 XML 方式的检索接口;

④ 心跳服务器负责维护在线用户的列表。

15.互联网协议电视(IPTV)

Ÿ 用户可以采用两种方式使用 IPTV 服务,一种是计算机方式,另一种是网络机顶盒加普通电视机方式。

Ÿ 电视类服务是与电视业务相关的服务,如视频点播、直播电视和时移电视等;

Ÿ 通信类服务是指基于 IP 的语音服务、即时通信服务和电视短信服务等;

Ÿ 增值服务是指电视购物、互动广告和在线游戏等增值类服务。

16.视频点播(Video on Demand,VOD)

Ÿ 视频点播(Video on Demand, VOD)也被称为交互式电视点播系统。

Ÿ 本质上讲,VOD 是一种基于 IP 网络的利用机顶盒作为接收终端,电视机作为显示设备的视频点播系统。

17.VOD 的服务类型

VOD 的服务类型分为 3种:

1)  就近式点播电视 NVOD:在支持就近式点播电视系统中,每个视频流间隔一定的时间就发送同样的内容,用户选择距最近的某个时间起点进行收看。

2)   真实点播电视 TV0D:真实点播电视支持即点即放,每个视频流只为一个特定的用户服务。

3)  交互式点播电视 IVOD:交互式点播电视不仅可以支持即点即放,而且还可以让用户对视频流进行交互式的控制。

18.媒体内容分发技术

Ÿ 媒体内容分发网络(Media Content Delivery Network,MCDN)技术是 IPTV 大规模应用的重要技术保障。

Ÿ  MCDN 关键技术包含以下几个方面。

① 内容发布:借助于索引、缓存、流分裂和组播等技术,将内容发布或投递到距离用户最近的远程服务点处。

② 内容路由:是整体性的网络负载均衡技术。内容路由技术通过内容路由器中的重定向以及媒体位置注册机制,在多个远程服务点上均衡用户的请求,保证用户请求得到最近内容源的响应。

③ 内容交换:根据内容的可用性、服务器的可用性以及用户的背景,利用应用层交换、流分裂、重定向及宽带媒体分发策略等技术,智能地平衡负载流量。

④ 性能管理:通过内部和外部监控系统,获取网络部件的状态信息。同时,性能管理还测量内容发布的端到端性能(如包丢失率、延时时间、平均带宽、启动时间和帧速率等),保证网络处于最佳的运行状态。

⑤ IP 承载网:MCDN 充分利用高速交换、汇聚层路由转发、接入层带宽保障、组播路由及服务质量等

IP 网络技术,为 IPTV 应用提供可靠 IP 网络平台。

19.VOIP 可以实现的通信方式

Ÿ  VoIP(VoiceoverIP)也称为 IP电话,是利用 IP网络实现语音通信的一种通信手段,是基于IP网络的语音传输技术。

Ÿ  VoIP 系统可以将源用户的电话语音数字化,通过压缩、打包后利用 IP 网络传输给目的用户。

Ÿ 目的用户收到数据包后,将数据解压并还原成声音。

Ÿ  利用VOIP可以实现的通信方式包括:PC-to-PC,PC-to-Phone,Phone-to-Phone,PC-to-Pad,Pad-to-Phone,

PC到IP网关,IP网关到 IP网关。20.VoIP 系统组成

VoIP 系统有 4 个基本组件,它们是终端设备(Terminal)、IP 电话网关(Gateway)、网守(Gatekeeper)和多点控制单元(MultipointControlUnit,MCU)

1)  终端设备


Ÿ 终端设备是直接和用户接触的设备。VoIP 中的终端设备有多种类型,其中包括传统的语音电话终端、ISDN 终端、多媒体 PC 等。

2)   IP 电话网关

Ÿ  IP 电话网关是 VoIP 系统的关键设备, 是 IP 网络和电话网络之间的桥粱。

IP 电话网关的基本功能如下:

① 号码查询

② 建立通信连接

③ 信号调制

④ 信号压缩和解压

⑤ 路由寻址

3)  网守

Ÿ 网守是一个中央控制实体,在 VoIP 系统中起管理作用。

Ÿ 网守是 VoIP 系统中的消息控制中心,可以进行呼叫控制、地址解析、呼叫授权、身份验证、集中账务和计费管理、存留呼叫详细记录等操作。

l  同时,网守还可以像实时网管一样监控网络、平衡负载、管理带宽以及提供与现有系统的接口。

4)  多点控制单元

Ÿ 多点控制单元 MCU 的功能在于利用 IP 网络实现多点通信, 使得 VoIP 系统能够支持 3 个或 3 个以上端点参与的多点会议。

Ÿ  MCU 通常由两部分组成,分别是多点控制器( Multipoint Controller,MC)和多点处理器(Multipoint Processor,MP)。

Ÿ  MC 主要负责呼叫信令的处理和会议的控制;

Ÿ  MP 则提供多点会议中媒体流的集中处理, 主要负责混音、交换等处理工作。

21.          RTCP 报文

根据所携带的控制信息不同, RTCP 报文分为 5 种类型,分别是 SR、RR、SEDS、BYE 和 APP。

Ÿ  SR(sender report,发送者报告): 该类型报文中含有活动端的发送和接收统计信息。

Ÿ  RR(receiver report, 接收者报告): 该类型报文中含有非活动端的接收统计信息。

Ÿ SDES( source description items,源描述项):该类型报文中含有对数据源的描述信息。例如,数据源的 CNAME 和 SSRC 的映射关系等。

Ÿ  BYE(goodbye,离开报告): 参与者结束通信时使用该类型报文通知其他参与者。

Ÿ APP( application-specificfunctions, 特定应用): 用于特定应用功能的一类 RTCP 报文。

22.          Skype

Ÿ  Skype 融合了当前热门的两大技术——VoIP 技术和 P2P 技术,主要提供 IP 网络电话、即时消息、文件传输、用户搜寻等功能。

Ÿ  Skype 还能有效地突破防火墙的限制。

① SkypeClient: SkypeClient 是 Skype 系统的客户机端, 简称为 SC。

② SuperNode:SkypeNode 是 Skype 系统中的超级结点, 简称为 SN。在 Skype 系统中,Super-Nodc 是动态生成的,其作用就像 Internet 中的核心路由器。

③ LoginServer:LoginServer 是 Skype 系统中的登录服务器,简称为 LSQLS 登录服务器存储着用户的用户名和密码,负责用户登录时的合法性认证。同时,它还要负责用户名的全局唯一性管理。

④ HostCache 简称为 HC, 是一个 SN 的 IP 地址和端口对的列表。它由 SC 建立, 并会经常更新。

⑤ BaddyList:BaddyList 是一个用户的好友列表。

⑥ Encryption:加密处理。Skype 釆用了 256 位的 AES 加密算法。同时, Skype 采用 1536〜2048 位的 RSA 算法对 AES 使用的对称密钥进行协商。

⑦ Codecs:编码方式。Skype 米用了 GloballPSounci 公司的宽带编码技术 iLBC 和 iSAC。这两种编码技术允许频率在 50~8000Hz 的语音通过。

⑧ Port:Skype 系统采用的端口。SC 可以使用 TCP 和 UDP 进行端口监听,这些端口值在 SC 的连接对话框设置。在安装客户机端软件时, SC 会随机选择一个端口号。除此之外, SC 也可以在 HTTP 的 80 端口和HTTPS 的 443 端口进行监听。

⑨ NAT/FirewalhSC 釆用各种 STUN 和 TURN 技术来判定它在哪种类型的 NAT 和防火墙之后, 以便进行

NAT 或防火墙穿越。


23.          Skype 的特点

1)  高清晰音质:从理论上说, 使用 Skype 可以听到人类可以听到的所有声音频率,而普通电话只能听到 300~3000Hz 以内的声音。较宽的频率范围保证了高保真度的声音品质。

2)  高度保密性:Skype 终端之间传送的声音和消息都是经过加密处理的。Skype 采用 AES 加密算法, 密钥长度为 256 位,是 AES 可选密钥长度里最长的(因此也是最安全)。AES 的会话密钥利用 2048 位的RSA 算法生成, 可以确保密钥的安全性。同时, 用户登录时, 系统会利用用户的私钥进行身份验证。

3)   免费多方通话:Skype 支持最多 5 人的多方会议呼叫,而且所有的通话都釆用端到端加密。因此,

Skype 比较适宜于商务会谈和其他会谈。

4)   跨平台: Skype 提供不同操作系统下的发行版本, 包括 Windows、Linux 以及 MacOS 等。

24.            搜索引擎组成

搜索引擎构成一般都由 4 个部分组成,即搜索器、索引器、检索器和用户接口。

l  搜索器

搜索器通过逐个访问 Internet中的 Web站点来采集 Web网页信息,并建立该站点的关键字列表。人们常把搜索器建立关键字列表的过程称为网络爬行。

Ÿ 索引器

索引器的功能是理解搜索器所搜索的信息,从中抽取出索引项,用于表示文档以及生成文档库的索引表。

Ÿ 检索器

检索器的功能是根据用户的查询要求在索引库中快速检出文档,进行文档与査询的相关度评价,对将要输出的结果进行排序。同时,检索器还应具有某种用户相关性反馈机制。

Ÿ 用户接口

① 用户接口的作用是输入用户查询、显示查询结果、提供用户相关性反馈机制。

② 用户输入接口可以分为简单接口和复杂接口两种:

③ 简单接口只提供用户输入查询词的文本框;

④ 复杂接口可让用户对查询进行限制,如逻辑运算(与、或、非等)、相近关系(相邻、NEAR等域名范围( .edu.com等)、出现位置(标题、内容等)、信息时间、长度等。

25.          LAMP 网站架构

Ÿ  LAMP 网站架构是目前国际流行的 Web 框架,该框架包括:Linux 操作系统,Apache 网络服务器,MySQL 数据库,Perl、PHP 或者 Python 编程语言,所有组成产品均是开源软件,是国际上成熟的架构框架。

Ÿ  该架构起源于Linux 平台,由于是开源软件,建设成本很低。

26.          IPSec

Ÿ  IPSec 是为网络层提供安全的一组协议。

Ÿ  在 IPSec 协议族中有两个主要的协议:身份认证头(AH)协议和封装安全负载(ESP)协议。

Ÿ  SA(安全协定)定义的逻辑连接是一个单工连接,也就是说,连接是单向的。SA 是由一个 3 元组确定的。

Ÿ  ESP 头部采用 32 位顺序号字段组成。

更新 2025/10/03 10:13
更新 2025/10/03 10:13