《IGMP Snooping组播协议开发-毕业论文》由会员分享,可在线阅读,更多相关《IGMP Snooping组播协议开发-毕业论文(47页珍藏版)》请在金锄头文库上搜索。
1、1 IGMPIGMP SnoopingSnooping 组播协议开发组播协议开发 摘摘 要要 随着网络技术的发展,传统的 Internet 点对点传输的单播方式面对大量的信息交互传输 已经显得力不从心。组播技术则正是为解决此类问题应运而生的。目前以太网交换机等二层 网络设备在构建网络时己得到越来越广泛的应用,在以太网二层上实现组播已显得十分必要。 本文主要探讨在以太网二层上的一种组播协议:组播侦听协议1。 本文首先分析了组播技术和以太网设备的发展形势和用户需求,介绍了国内外几种组播 技术的特点,强调在以太网二层上实现组播技术的必要性;然后,详细讨论了二层设备上组播 侦听协议的实现技术,并对所实
2、现的组播控制功能提出了自己的测试方法,给出了几种测试 实例;最后,通过阐述当前以太网二层的组播技术实现的方法和动向,为今后在以太网二层 上组播技术的进一步完善和发展给与启示。 本文设计实现的组播侦听协议代码量很小,与底层协议平台的结合度也非常小,此外还 具有很强的可伸缩性,并提供了方便的配置接口。因此,本实现不仅适用于而二层网络设备, 而且可以非常轻易的移植到其它更高级的网络设备如三层交换机。测试的结果证明了软件实 现的正确性和完整性。 关键词:关键词:因特网组管理协议 因特网组管理协议监听 组播; 2 3 Abstract With the development of Network te
3、chnology, Conventional unicast of point to point on internet has not enough capability to support the exchange of information. The technology multicast just can resolve these problems. Ethernet switches have been used widely in constructing networks now. And it is very necessary to realize multicast
4、 on Ethernet 2 layer. In this paper, the multicast protocol (IGMP Snooping) on Ethernet 2 layer is discussed. The paper firstly describes the development position and the users requirement of the multicast and the Ethernet devices, introduces several foreign multicast technologies, and emphasizes th
5、e necessity of Implementing the multicast to the Ethernet 2 layer. Secondly, it discusses how to carry out IGMP Snooping on the layer 2 devices in detail. And gives the testing method and several examples. Finally, Through deep analysis, it can gasp the current methods and directions of realization
6、multicast on Ethernet 2 layer devices,and give some inspire for more consummation for technology of multicast on Ethernet 2 layer. The IGMP Snooping of this design,its code size is little, and also has the features of little coupling with the lower protocol flat, good scalability,and convenient conf
7、iguration interface. So, it applies not only the 2 layer network devices, but also can be porting to other network devices,eg.Layer3 switch easily. The result of the testing proves its correctness and integrity. Key words: Internet Group Management Protocol IGMP Snooping Multicast 4 5 目录目录 第一章 引论10
8、1.1 网络组播技术的需求与发展.10 1.2 国内外同类产品综述11 1.3 本文的主要工作12 第二章 IP 组播技术.13 2.1 组播概述.13 2.2 组播地址.13 2.2.1 IP D 类地址13 2.2.2 组播地址分配14 2.3.3 组播 MAC 地址14 2.3 IGMP 协议简介14 2.3.1 IGMP 报文14 2.3.2 IGMPv3 的源过滤机制16 2.4 IGMP Snooping 简介.16 2.4.1 IGMP Snooping 的含义16 2.4.2 IGMP Snooping 的作用17 第三章 IGMP Snooping 的总体设计描述.19 3.
9、1 开发环境说明.19 3.2 IGMP Snooping 在网络协议栈中的位置.19 3.3 IGMP Snooping 的实现原理.19 3.4 IGMP Snooping 的总体模块设计.20 3.5 接口说明20 3.5.1 用户接口.20 3.5.2 外部接口.20 3.6 模块的运行视图20 3.6.1 数据报判断和处理模块流程21 3.6.2 数据转发模块和数据结构操作模块流程21 3.7 IGMP 报文和 IGMP 定时器设计.21 3.7.1 IGMP 报文22 6 3.7.2 IGMP 定时器22 第四章 IGMP Snooping 的详细设计描述23 4.1 组播转发链表
10、的实现.23 4.2 IGMP Snooping 处理数据包的流程.24 4.3 对 IGMP 报文的处理.25 4.3.1 对 IGMP 组成员关系查询报文的处理25 4.3.2 对 IGMP 组成员离开报告的处理25 4.3.3 对 IGMP 第一版本成员关系报告的处理25 4.3.4 对 IGMP 第二版本成员关系报告的处理25 4.3.5 对 IGMP 第三版本成员关系报告的处理25 4.4 对组播转发链表的操作27 4.4.1 查找一个组播转发项27 4.4.2 更新转发项的时间戳28 4.4.3 增加一个组播转发项28 4.4.4 删除一个组播转发项28 4.5 定时器的实现.28
11、 4.6 各模块中接口函数的实现.29 4.6.1 网桥转发数据包模块详细设计说明29 4.6.2 网桥组播转发链表操作详细设计说明32 4.6.3 数据报判断和处理详细设计说明36 第五章 功能测试的方法38 5.1 测试目的.38 5.2 测试环境和测试拓扑图.38 5.3 测试过程及结果.38 5.3.1 报文处理和组播数据转发功能的测试38 5.3.2 定时器功能的测试40 5.4 测试小结.40 第六章 结论42 致谢语43 参考文献44 附 录45 7 Contents Chapter 1 Model-based Diagnosis.9 1.1 Multicast network
12、technology needs and development.9 1.2 Summary of similar products at home and abroad 10 1.3 The main work of this paper11 Chapter 2 IP Mutilcast Technology.12 2.1 Multicast summarize12 2.2 Multicast Address 12 2.2.1 IP Address of kind D12 2.2.2 Multicast Address Distribution13 2.3.3 Multicast MAC A
13、ddress 13 2.3 IGMP Introduction.13 2.3.1 IGMP Report13 2.3.2 IGMPv3 source filtering mechanisms15 2.4 IGMP Snooping Introduction 15 2.4.1 The meaning of IGMP Snooping.15 2.4.2 The effect of IGMP Snooping16 Chapter 3 Describes the overall design IGMP Snooping 18 3.1 Development environment Note18 3.2
14、 IGMP Snooping in the network protocol stack in the position18 3.3 IGMP Snooping the principle of achieving.18 3.4 IGMP Snooping the overall modular design .19 3.5 interface Note.19 3.5.1 user interface19 3.5.2 external interfaces 19 3.6 The operation of Module view.19 3.6.1 data reported judgement
15、and processing module processes.20 3.6.2 modules and data transmitted data structure operation module processes.20 3.7 IGMP Report Design and IGMP timer20 8 3.7.1 IGMP Report21 3.7.2 IGMP timer 21 Chapter 4 IGMP Snooping describe the detailed design.22 4.1 Multicast forwarding the chain to achieve.2
16、2 4.2 The data process of IGMP Snooping.23 4.3 IGMP report processing.24 4.3.1 the handling of IGMP_HOST_MEMBERSHIP_QUERY 24 4.3.2 the handling of IGMP_HOST_LEAVE_MESSAGE 24 4.3.3 the handling of IGMPV1_HOST_MEMBERSHIP_REPORT24 4.3.4 the handling of IGMPV2_HOST_MEMBERSHIP_REPORT24 4.3.5 the handling of IGMPV3_HOST_MEMBERSHIP_REPORT24 4.4 Multicast forwarding chain operations 26 4.4.1 find a multicast forwarding entry.26 4.4.2 update forward entry of the timestamp 27 4.4.3 add a multicast forwa