rfc 2710 中文版
### RFC 2710:多播听众发现 (MLD) for IPv6 #### 概述 RFC 2710 描述了多播听众发现(Multicast Listener Discovery,简称 MLD)机制,该机制是为 IPv6 设计的,用于在直接连接的链路上发现多播听众的存在。MLD 的设计目的是为了支持IPv6多播,通过路由器来发现其直接相连链路中的多播听众,从而提高多播数据传输的效率。本文将详细介绍 MLD 的工作原理、消息类型以及其与IPv4下的 IGMPv2 的关系。 #### MLD 和 ICMPv6 的关系 MLD 是基于 ICMPv6 协议的一个扩展功能。在IPv6中,MLD 用作路由器和主机之间多播听众发现的协议。MLD 类似于IPv4下的IGMPv2,但它是专门为IPv6设计的,并且作为 ICMPv6 (Internet Control Message Protocol for IPv6) 的一部分。ICMPv6 在IPv6协议栈中的位置与ICMP在IPv4中的位置相当。 #### MLD 工作原理 MLD 主要完成两个任务: 1. **发现多播听众**:路由器能够发现其直接连接链路中是否存在多播听众。 2. **确定多播兴趣地址**:路由器能够确定哪些多播地址被其直接连接链路中的节点所感兴趣。 为了实现上述功能,MLD 使用以下几种消息类型: - **MLD Query (多播听众查询)**:由路由器发送给主机,用来询问链路上是否有主机对某个或多播地址感兴趣。MLD Query 可分为两种类型:General Query(一般查询)和 Multicast Address-Specific Query(特定多播地址查询)。 - **MLD Report (多播听众报告)**:由主机发送给路由器,用来表明主机对某个多播地址感兴趣。 - **MLD Done (多播听众结束)**:由主机发送给路由器,表明主机不再对该多播地址感兴趣。 #### MLD 消息格式 MLD 消息格式如下所示: - **Type (类型)**:标识消息的类型,例如 `MLD Listener Query` 的类型值为 130。 - **Code (代码)**:进一步指定消息的具体类型或含义。 - **Checksum (校验和)**:用于验证消息的完整性。 - **Maximum Response Delay (最大响应延迟)**:表示接收者应在多长时间内做出响应。 - **Reserved (保留字段)**:未使用的字段,应设置为零。 - **Multicast Address (多播地址)**:具体感兴趣的多播地址。 #### MLD 报文细节 - **MLD Query (多播听众查询)**: - **General Query (一般查询)**:路由器发送此报文来询问链路上是否有任何多播听众。 - **Multicast-Address-Specific Query (特定多播地址查询)**:路由器发送此报文来询问链路上是否有主机对某个特定的多播地址感兴趣。 - **MLD Report (多播听众报告)**:主机向路由器发送此报文以表明它对一个或多播地址感兴趣。 - **MLD Done (多播听众结束)**:主机向路由器发送此报文以表明它不再对某个多播地址感兴趣。 #### 其他重要字段 - **Other fields (其他字段)**:MLD 报文可能还包括 IPv6 负载和其他 IPv6 头部。 - **MLD Checksum (MLD 校验和)**:计算整个 MLD 报文的校验和。 - **MLD 的作用域**:MLD 通常限于链路本地范围,这意味着它只能在直接连接的链路上广播。 #### 总结 MLD 作为一种多播听众发现协议,在 IPv6 环境中扮演着重要角色。它通过路由器和主机之间的通信来发现多播听众的存在并确定它们对多播地址的兴趣。通过使用 MLD,IPv6 网络可以更有效地管理和传输多播数据,减少不必要的网络流量,提高网络的整体性能和效率。
多播聽眾發掘(MLD)
摘要
描述一個IPv6路由器:
1.在直接附加鏈結上發現多播聽眾(接收多播封包的節點)存在
2.發現鄰近節點感興趣的的多播地址
MLD源自IPv4的IGMPv2
MLD使用ICMPv6(IP協議58)非IGMP(IP協議2)
介紹
MLD目的是讓IPv6路由器發現
1.在直接附加鏈結上發現多播聽眾(接收多播封包的節點)存在
2.發現鄰近節點感興趣的的多播地址
這些訊息將提供給在使用多播路由協議的IPv6路由器
以確保多播封包被傳遞到所有期望接收者的鏈結
MLD是非對稱的協議,用於指定不同行為給多播聽眾和路由器
對路由器本身在監聽的多播地址 路由器執行協議的兩個部分:包括回應自身訊息
若路由器有多介面連到同鏈結,它只對一個介面執行路由器部分MLD
但聽眾須對所有介面執行監聽部分MLD(監聽來自應用程式或上層協議要求接收的多播封包)
訊息格式
MLD是一個ICMPv6的子協議,即MLD訊息類型是ICMPv6訊息的子集
MLD訊息的辨別: IPv6封包的Next Header值=58
MLD訊息來自link-local型Source Address,Hop Limit=1,Hop-by-Hop Options標題中的路由器警報選項[RTR-ALERT]
(路由器警報選項使路由器檢查送給多播地址但是路由器本身不處理的MLD訊息)
MLD訊息格式如下
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Maximum Response Delay | Reserved |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ +
| |
+ Multicast Address +
| |
+ +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Type
三類型的MLD
Multicast Listener Query (類型=130)多播聽眾查詢
"General Query" 一般查詢 檢查附加鏈結上哪個多播地址有聽眾
"Multicast-Address-Specific Query" 多播地址特定查詢 檢查附加鏈結上某個多播地址有無聽眾
Multicast Listener Report(類型=131)多播聽眾回報
Multicast Listener Done (類型=132)多播聽眾完成
簡稱Query,Report和Done
Code
sender端初始成零; receivers端忽略
Checksum
標準的ICMPv6檢查碼, 含完整的MLD及IPv6 header欄位[ICMPv6,IPv6]虛擬header
Maximum Response Delay
最大回應延遲欄單位毫秒,只在"查詢訊息並指定允許發送回報的最大延遲"時有意義
其他的則被sender端初始成零; receivers端忽略
路由器藉由調整此值來最佳化"leave latency" -
從"鏈結上最後一節點停止傾聽某多播地址"到"路由協議指出這一多播地址已無傾聽節點"
它允許調整鏈結上MLD的流量突發
剩余12页未读,继续阅读
- xiaoyaosun192011-11-07里面为什么是乱码啊、看不了啊~
- wtaosdnu2013-01-03乱码啊,不要下啦
- geforce4tishow2013-06-18可以看的,用支持繁体的文本编辑器打开就行,微软的word,wps都可以。不过就是排版比较乱,没有章节标识
- bamboo2792012-04-16可以看啊,不过是繁体字的
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助