《基于IPv6的MLD协议的研究与实现(1).pdf》由会员分享,可在线阅读,更多相关《基于IPv6的MLD协议的研究与实现(1).pdf(4页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、有线电徨丝 通信技术及应用 高 国亮 张思东 张宏科 北京交通大学下一代互联网研究中心 摘要:I P组播是一种优化使 用带宽的路 由技术。它允许 I P数据流从 一个源或者 多个源 发送到多个 目的地。使用 组播技术可 以有效地减少网络流量。它可 以利 用最 少的 网络带宽将组播源 的数 据报传送给 多个接 收者。并且不会给接 收者和发送者带来任何额外的负担。随着 多媒体业务的 日益增 长。对带宽的需求越来越大。I P组播技术有了广阔的应用 空 间。在 多媒体服务、软件分发、网络游戏、流媒体等诸 多领域都有着广阔的前景。良好的组播业务的实施需要有完善的 管理机制。ML D协议 就是保障 I P
2、 v 6下组播技术有效进行的管理控制协议。本文介绍了给出了 I i n u x操作 系统下组播 组管理协议的具体 实现。为实现 I P组播提供了有利的支持。关键词:组播 P I M SM ML D I P、,6 1 引 言 随着多媒体业务的 日益增长,对网络带宽的需求 刺激 了 I P组播技术的普及和发展。目前,包括多媒体 服务、软件分配和分布式交互模拟等的许多网络应用 都要求用组播来 向网络上的组接收者分发数据,I P组 播为因特网上的组播提供了一个流行的模型。但是组 播业务的有效实施,需要具有 良好的管理协议 的支 持,ML D协议是针对 I P v 6 3 组播应用的组播组管理协 议,它
3、相 当于组播业务的神经系统,保障 I P组播业务 的正常运行。每个组播组有一个组地址,组成员通过 组播组管理协议来加入 离开一个组播组,目的地址 为组地址 的 I P报文使用组播树 向所有组成员传递,组发送者不需要知道组成员关系。在下一代互连网络 日益 向 I P v 6靠拢 以及组播业务 日渐火热的今天,对 组播组管理协议进行研究,以使其有效的支持组播业 产品和芯片组的出货量将达到 4 5 0 o万个,未来 U wB 无线超带宽技术产品将有广阔的应用前景。不管将来采取哪种标准,由于超宽带技术在无线 通信方面的创新性和利益性,都使得 U WB在商业多 媒体设备和个人网络,特别是信息家电方面具有
4、很大 的市场潜力。不同于蓝牙、8 0 2 1 l b和 8 0 2 1 l a 这类无 线技术使用相对较狭窄的频 宽,U WB使用范 围甚广 的频谱、较低的功率并以脉 冲波传输信息,可提供有 如 固网的信息传输品质,因此适用于需要更高信息传 输速率的家庭消费电子设备。在不久 的将来,它将满 足许 多消费 电子公 司一直 寻求的带 宽和服 务质量(Q o S)。为家庭无线网带来低成本、低功耗、高带宽并且 相对简单的无线通信解决方案。参 考文 献 l 肖征 荣,王东超宽 带通 信技术及其应 用 世 界电信),2 0 0 3年第 l 2期 2 程强家庭网络相关技术(r g信网技术,2 0 0 5年第
5、 6期 3李唐,刘水 生未来无线个 人局域网 中的超宽带技术 现代电信 科技,2 0 0 3年第 6期 4张智 江,张云勇,刘韵洁宽带无线接 入技术 研究,2 0 0 4年第 l O期 5张陆 勇,周 正超宽带通信技术 中国无线通信,2 0 0 3年第 1 2期 A 2 0 0 6年第 4期(总第 1 9 6期)维普资讯 http:/ 垡堡 旦 务 的顺 利进 行具 有重 要 的意义。2 ML D协议简 介 有线电视技术 ML D(Mu h i c a s t L i s t e n e r D i s c o v e r y)是 组 播 侦 听 发现协议的简称。它是在 I G MP v 2【
6、4 基础上改进 以支 持 I P v 6功能 的组 播 组 管理 协议。组播 组 管 理协 议 主 要负责对组播组的成员进行管理。一个组播路 由器建 立路 由并传送其组播组成员关系信息之前,它必须确 定在 本地 网络 上是 否有 接 收 主机加 入 了某 个组 播组。为 此组 播 路 由器 和接 收 主机 必 须 进 行组 成 员 关 系 的 交 互,这 种功 能 是 通 过 ML D(在 I P v 6网 络 上,在 I P v 4 中使用 I G MP协议)来实现的。ML D v 2是一个不对称 的协议,它包括分离的两 部分:针对组播地址监听者部分(监听组播数据包的 主机或者路由器)和组播
7、路由器部分。ML D协议的 目 的是使每一个组播路 由器知道在本地链路上监听者 对哪些组播地址和源地址感兴趣。被 ML D收集到的 信息提供给在路 由器上运行的任何组播路 由协议,来 保证组播数据包被传递到组播组成员。组播路由器 只 需要知道在一个链路上,至少有一个节点正在监听从 一个特定 的源发给一个特定组播地址的数据包,它不 需要知道有多少个这样 的节点。虽然 ML D协议的前身是 I G MP v 2,但是 ML D协 议不使用 I G MP报文格式,而是使用全新的 I C M P v 6 的报文格式(I C MP v 6协议是为 I P v 6网络定 义的一套 控制信息协议)。从某种意
8、义上说,ML D协议就是 I C MP v 6协议的一个子集。ML D消息的 I P v 6头标中的 下一个头标是 5 8。所有的 ML D消息使用链路本地 I P v 6源地址发送,I P v 6跳数限制为 l。ML D消息格式如图 1 所示。O l 2 3 4 类型 编码 校 验和 最大响应延迟 保留 组播地址 图 1 ML D消息格式 ML D消息类型分为三种:(1)组播监听查询(ML D消息类型值 为 1 3 0):包 括一般 查询(g e n e r M q u e r y)和特定 组播地址 查询(m u l t i c a s t-a d d r e s s-s p e c i f
9、i c q u e r y);(2)组播监听报告(ML D消息类型值为 1 3 1);(3)组播监听完成(ML D消息类型值为 1 3 2)。对于运行 ML D协议的路 由器,其接 口要监听由 I P v 6组播 地址 产生 的所 有链路 组播 地址。路 由器 为它 所在 的每一条链路维护一个列表。表项有此链路中存 在 的组 成员 的组 播地 址,以及该 地址 相应 的定 时器。路 由器周期性地发送通用请求(g e n e r a l q u e r y),以查 询该链路上是否存在某组播地址 的组成员。节点收到 路 由器发送的常规请求后,经过随机时延后发出组播 监听报告。这样是为了防止所有的节
10、点都在同一时间 发出报告分组,从而造成 网络的突发性阻塞。当路由 器收到链路上的报告分组 时,如果报告地址不在路由 器 的列 表上,则加 入该 项,否则计 时器 重新 置位。如果 某个 地 址 的计 时器 过期,则 从列 表 中删除。当节点要加入一个组播组时,主动发送组播监听 报告,向路 由器报告组成员的存在。节点退出组播组 时,发送完成分组,删除有关路径。当请求状态的路由 器从链路上接收到一个完成消息,如果消息 中的组播 地址在路由器的列表上,路 由器发送一个特定组播地 址查询。如果一段时延后没有报告分组,则认 为该组 播 地 址在此 链路 上没 有组 成员 了。3 ML D协议的总体 设计
11、框 架 ML D主要分为 ML D初始化、接收 ML D消息和 发送 ML D消息三部分。图 2为 ML D的消息处理流程 图。图 2 MLD消 息 处 理 流 程 3 1 ML D的初 始 化 ML D的初 始化是指完成 ML D套接字 的创 建及 其属性设置,为 ML D消息的收发分配缓冲区并初始 化。创建 ML D套接字后,设置其属性包括:(1)对 I C MP、r 6协 议 的过 滤 设 置,即 只从 内核 接 收 ML D协议包,而过滤掉其他 类型的 I C MP v 6数据 包;2 0 0 6年第 4期(总第 1 9 6期)维普资讯 http:/ 有线 电视技 术 通信技术及应用(
12、2)启动接收包信息外,接收包的跳数限制信息;(3)在 ML D初始化过程中设置了所有节点地址为 ff 0 2:l。所有路 由器组地址为 ff 0 2:2,以及所有支持 ML D v 2的路 由器组 地址 为 f f 0 2:1 6 6 。最后通过调用注册函数将 ML D套接字注册到输 入句柄中,以便在套接 E l 上监听到数据包时 自动调用 相应的接收函数以从套接 口上读取 ML D的消息。3 2接 收 ML D消 息 接收 ML D消息实现的功能是对从套接 口读到的 符合条件的正确 ML D数据包进行处理。接收 ML D消 息分为读 ML D消息和对 ML D消息进行处理两部分。(1)读 M
13、L D消息:m i d 6 一 r e a d 0 此函数主要是从 ML D的套接 口读取数据包并存 放在接收缓存,然后调用 a c c e p t ml d 6函数中对包进 行分析,来实现对不同的 ML D消息类型对包进行不 同的处理。读 ML D消息的实现非常简单,其流程如图 3所 示。图 3 读 ML D消息流程图(2)处理 ML D消息:a c c e p t _ m i d 6 0 该函数主要完成对从 ML D套接口读取的消息包 进 行 处 理,并 针 对 不 同类 型 的包 进 行 不 同 的处 理。ML D有三种消息类型:组播监听查询、组播监听报告 和组播监听完成。针对不同的 M
14、L D消息类型,会调用 不 同的 函数来处 理。若 ML D消息类型字段为 O,表明这是 内部控制 消息(通过 ML D套接字队列传递,但不属于 ML D消 息),转到 内部控制消息处理模块,调用 p r o c e s s _ k e r n e lc a l l 函数处 理。对 于消 息类 型 字段 不 为 O的 消息 报,分别采用不 同的函数进行处理。其处理流程如图 4所 示。3 3发 送 ML D 消息 发送 ML D消息 的流程 如 图 5所 示。开始 验证 ML D消息长度合法性 l 否 通过 A P I 调用提取包中 目的 地址及跳数信息等 璺 竺 竺竺 是 依据不同的 Mi d
15、)消息类 型 作不同的处理 返回 是 否 内部控制消息的处理 图 4处理 Mi d)消息流程 图 构建 Mi d)包 宦 珥;从 Mi d)套接 口发送消息 I 检 查 各 V 状 态 l 括消息类型、编码、校验和、应延时、源地址、目的地址等 图 5 MI D 的发送模块处理流程图 该部分主要完成不同类型数据包的构建,并且通 过调用函数 s e n d ms g()发送各种消息包。4实验结果与分析 实验 用 的拓 扑 图如 图 6所 示。构建上述网络环境对组播组管理协议个性能进 行测试,以此来验证其对组播协议的支持效果,图 中 R o u t e r 1,R o u t e r 2和 R o
16、u t e r 3为三台路 由器,支持 I P v 6协议,在三台路 由器上运行组播协议和 ML D协 议,主机 A为发送源,B、C为组播接收者。在主机 C上运行 自行编写的 I P v 6组播包收发测 试程序,使其作为组成员加入到 I P v 6组播组 ff l e:1 0 2 中,即向 R o u t e r 2发送 ML D m 成员报告消息,并在绑定 的接 收端 13进行 监 听;这 时,在 主机 A 上运 行 发 送组 播包测试程序,让其作为发送源向 ff l e:1 0 2组地址发 送 组播 包。2 0 0 6年第 4期(总第 i 9 6期)维普资讯 http:/ 信技术及应用 有
17、线 电视技 术 图 6 演示测试环境拓 扑 在 主 机 A发 送组 播 包 的 同时,接 收主 机 B、C接 殳 到 了来 自主机 A 向 fi l e:1 0 2组 发送 的组播 数据 包。人 相应的绑定接 口上进行监听可 以捕获的各种 ML D l勺 消息数 据包。在 相 应 的接 口上捕 获 的 ML D消 息类 型 如 图 7(a),(b),(C)所 示。(a)ML D协议 的查询报告消息(b)ML D协议 的侦听完成消息(C)ML D协议 的特定查询消息 图 7 ML D的消息格式 5结束语 通过试验测试结果表 明,我们已经在 L i n u x操作 系统上 实 现 了 ML D协议
18、 的功 能,并且 能 够很好 地 支 寺P I M S M 组播路 由协议,为组播的大规模商业化 应 用提 供 了 良好 的基础。组播技术是一种高效利用带宽的网络技术,经过 了二十多年的发展 已经形成 了比较完整 的体系结构,但是 I P组播广泛采用数据包协议进行信息传送,加 之 I P网络是一种“尽力而为”的网络技术,使得 I P网 络真正商用化还存在一定的困难。传统的 I P组播模 型是开放式的,称为 A S M模型,任意主机都可以创建 组播组,接收和发送组播数据,这就使得 I P组播 网络 在商用化的过程 中遇到了诸多问题:用户管理、业务 管理、计费管理、地址分配、访问控制等。这些问题严
19、 重制约了组播业务在商业化道路上的进展,如何更好 的对组播业务进行管理,提高续播业务 的实时性能 力,加强组播业务的安全性,以及高效可靠 的计费体 系 的研究 将是 目前 以及 下一 步研究 的 重要课 题。参考 文 献 1 S De e r i n g RF C 1 1 1 2 一 Ho s t e x t e n s i o n s f o r I P Mu hi c a s t i n g Au g u s t 1 98 9 2 S De e r i n g W F e n n e B Ha b e r ma n RF C2 7 1 0一Mu h i c a s t L i s t e
20、n e r D i s c o v e r y(ML D)f o r I P v 6 O c t o b e r 1 9 9 9 3 s D e e fi n g,R H i n d e n RF C 2 4 6 0 一 I n t e r n e t P r o t o c o 1 v e r s i o n 6(I P v 6)De c e mb e r 1 9 98 4 W F e n n e r RFC 2 2 36-I n t e r n e t Gr o u p Ma n a g e me n t P r o t o c o l,v e r s i o n 2 No v e mbe
21、 r l 9 9 7 5 ACo n t a S De e fin g RF C2 4 6 3 I n t e r n e t C o n t r o l Me s s ag e P r o t o c o l (I C MP v 6)for t h e I n t e r n e t P rot o c o l V e rs i o n 6(I P v 6)S p e c i fi c a t i o n 1 9 98 6 R Vi d a,LC o s t a RF C2 7 1 0 Mu hi c a s t Li s t e n e r Di s c o v e r y Ve rsi
22、0 n 2 (ML Dv 2)for I P v 6 N o v e m b e r 2 0 0 2 7 D,Es t r i n,D F a r i n a c c i AHe l my RFC2 3 6 2 P r o t o c o l I n d e p e n d e n t Mu h i c a s t-S p a r s e Mo d e (P I M s M):P rot o c o l S p e c i fi c a t i o n J u n e 1 9 98 8 B ria n Ha b e r ma n,Ga r r y Ku mp,Ha l S a n d i c k P rot o c o l I n d e pe n d e n t Mu h i c a s t R o u t i n g i n t h e I n t e r n e t P r o t o c o l V e rsi o n 6 (1 P v 6)d r a f t i e t f-p i m-i p v 6 0 3 t x t,ma r c h 2 0 0 3 9 岩延,郭 江涛等编著 组播路 由协议设计及应用 ,人 民邮电出版 社,2 0 0 2年 l O月A 2 0 0 6年 第 4期(总第 l 9 6期)维普资讯 http:/