zoukankan      html  css  js  c++  java
  • 【网络开发】组播问题分析

    1、知识介绍
       根据接收者对组播源处理方式的不同,组播模型分为以下三类:
       1)ASM 模型:Any-Source Multicast,任意信源组播
       2)SFM 模型:Source-Filtered Multicast,信源过滤组播
       3)SSM 模型:Source-Specific Multicast,指定信源组播

       解释:
       IGMPv3主机为接口上的每一个组播都维护一个表现信息:
       格式为:(组播地址,过滤模式,源列表)

       过滤模式包含INCLUDE和EXCLUDE:
       1)INCLUDE模式表示只接收来自源列表中列出的源发送的组播数据包;
       2)EXCLUDE模式表示只接收来自不在源列表中列出的组播源发送的组播数据包。

       源列表包含0个或多个IP单播地址,通常用集合形式来表示。


       可能存在的问题:对于某些交换机,可能对于不在组播组中的数据不进行发送。
       所以,可能需要将组播发送的源也进行组播注册,离开时发送leave。


    2、如何实现主机发送IGMP的报文。
       若进程要加入到一个组播组中,用soket的setsockopt()函数发送该选项。
       该选项类型是ip_mreq结构,它的第一个字段imr_multiaddr指定了组播组的地址,
       第二个字段imr_interface指定了接口的IPv4地址。


       1)通过设置socket属性就可以相应的将IGMP的不同类型报文发送出去。
          对于IGMP的报文,设置的socket的属性有以下几个。下面具体说明。

     

     

    3、如何在交换机上设置组播策略。
       在ASM/SFM/SSM模式中配置。可以不考虑,而只用设置加入源组播地址,从源组播地址中删除操作。
       这样可以测试被删除的地址能否将组播信息发送出来。
      

    4、socket组播属性说明:(struct ip_mreq / struct ip_mreq_source)
     1)IP_ADD_MEMBERSHIP    struct ip_mreq
      若进程要加入到一个组播组中,用soket的setsockopt()函数发送该选项。
        该选项类型是ip_mreq结构,它的第一个字段imr_multiaddr指定了组播组的地址,第二个字段imr_interface指定了接口的IPv4地址。
     2)IP_DROP_MEMBERSHIP
      该选项用来从某个组播组中退出。数据结构ip_mreq的使用方法与上面相同。
     3)IP_MULTICAST_IF
      该选项可以修改网络接口,在结构ip_mreq中定义新的接口。
     4)IP_MULTICAST_TTL
      设置组播报文的数据包的TTL(生存时间)。默认值是1,表示数据包只能在本地的子网中传送。
      5)IP_MULTICAST_LOOP
      组播组中的成员自己也会收到它向本组发送的报文。这个选项用于选择是否激活这种状态。

      6)考虑使用的(struct ip_mreq_source)
       IP_BLOCK_SOURCE   :Removes the given source as a sender to the supplied multicast group and interface.    
       IP_UNBLOCK_SOURCE : 排除方式加入组播组

       IP_ADD_SOURCE_MEMBERSHIP  包含方式加入组播组
       IP_DROP_SOURCE_MEMBERSHIP

     实验:
    分别设置socket属性,看发送的报文是哪些。

  • 相关阅读:
    CF704D Captain America 上下界网络流
    CF241E Flights 差分约束
    CF1063F String Journey DP、SAM、线段树
    AGC028E High Elements 贪心、DP、线段树
    Solution -「CF 623E」Transforming Sequence
    Solution -「十二省联考2019」春节十二响
    最大团-最小度不等式
    「Lagrange 插值」学习笔记
    Solution -「NOI.AC 省选膜你赛」union
    Solution -「NOI.AC 省选膜你赛」T2
  • 原文地址:https://www.cnblogs.com/huty/p/8517217.html
Copyright © 2011-2022 走看看