WO2010017720A1 - 实现组播负载分担的方法及装置 - Google Patents

实现组播负载分担的方法及装置 Download PDF

Info

Publication number
WO2010017720A1
WO2010017720A1 PCT/CN2009/072145 CN2009072145W WO2010017720A1 WO 2010017720 A1 WO2010017720 A1 WO 2010017720A1 CN 2009072145 W CN2009072145 W CN 2009072145W WO 2010017720 A1 WO2010017720 A1 WO 2010017720A1
Authority
WO
WIPO (PCT)
Prior art keywords
router
multicast
multicast group
address
matching
Prior art date
Application number
PCT/CN2009/072145
Other languages
English (en)
French (fr)
Inventor
段少雄
梁铷
苏海洋
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2010017720A1 publication Critical patent/WO2010017720A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/15Flow control; Congestion control in relation to multipoint traffic

Definitions

  • the present invention relates to the field of communications technologies, and in particular, to a method and apparatus for implementing multicast load sharing in the field of multicast technologies.
  • IP multicast refers to sending a packet to a certain subset of nodes in the network in the form of best-effort in the IP network. This subset is called a multicast group.
  • the basic idea of IP multicast is that the source host sends only one data.
  • the destination address in this data is the multicast group address. All receivers in the multicast group can receive the same data copy, and only multicast.
  • the host (target host) in the group can receive the data, and other hosts in the network cannot receive it.
  • PIM-SM Protocol Independent Multicast-Parse Mode
  • SSM Source-Specific Multicast
  • DR Designated Router
  • RP Rendezvous Point
  • RPT RP tree
  • SPT Shortest-Path Tree
  • the DR can be elected for the shared network (such as Ethernet).
  • the routers on the shared network send Hello packets carrying the DR priority option.
  • the router with the highest DR priority will be elected. It is the DR in this network. If the priority is the same or at least one router on the network does not support the priority of the Hello packet, the router with the largest IP address is elected as the DR.
  • the Hello packet will be timed out and a new DR election process will be triggered between the neighboring routers.
  • Router_A is elected as the DR of the multicast source.
  • the other routers connected to the multicast source are the standby DRs (BDRs).
  • Router_B is elected as the DR of the receiver.
  • the other routers connected to the receivers are BDRs.
  • DR will serve as this website The only forwarder of the multicast information in the -2- segment. Whether it is the network connected to the multicast source S or the network connected to the receiver, the DR needs to be elected as the shared medium, and the receiving end DR sends the join message (Join message) to the RP.
  • the RP sends a registration message (Register message).
  • the DR is of great significance to the PIM-SM network. It acts as the only data forwarder of the network segment and mainly acts as the Internet Group Management Protocol Internet (IGMP) querier. If the router interface does not support PIM-SM or PIM-SSM, an querier can be elected through the IGMP mechanism. The querier is responsible for forwarding data to this network segment.
  • IGMP Internet Group Management Protocol
  • the current scheme is to use a single DR as the only forwarder of a certain network segment.
  • the inventor of the present application found that, in the case of a large number of entries, the DR burden sends a registration of all entries to the RP. Packets or join packets. This is a great test for the performance requirements of the DR.
  • Router_A acting as the DR sends a large number of Register messages to the RP. That is, the current A single DR mechanism is too stressful for DR.
  • the embodiment of the invention provides a method and a device for implementing multicast load sharing to solve the problem that the DR or the interrogator pressure is too large.
  • a method for implementing multicast load balancing includes: determining a correspondence between a router and a multicast group set, where the multicast group set includes at least one multicast group; and selecting a corresponding group of the multicast group according to the corresponding relationship
  • the router acts as a designated router, and the designated router processes the multicast service of the multicast group set.
  • An apparatus for implementing multicast sharing comprising: a correspondence determining unit, configured to determine a correspondence between each router and a multicast group set, the multicast group set includes at least one multicast group; and a designated router execution unit is configured to: The designated router that is the multicast group set corresponding to the device processes the multicast service of the multicast group set.
  • An apparatus for implementing multicast sharing comprising: a determining unit, configured to determine a correspondence between each router and a multicast group set, the multicast group set includes at least one multicast group; and the selecting unit is configured to determine according to the determining unit Correspondence relationship, select the router corresponding to the multicast group set as the designated router.
  • the designated routers are determined for each multicast group. For example, for some multicast groups, one router is a DR/querier, and for other multicast groups, another packet is another. twenty two
  • a router is a DR/querier, which implements load sharing and reduces the pressure on the original single DR/querier.
  • the solution of the embodiment of the present invention provides a DR/querier-based load sharing solution for the routers at the receiving end and the multicast source, balancing the load among multiple standby routers, and avoiding the DR/querier.
  • the problem of overloading is a DR/querier-based load sharing solution for the routers at the receiving end and the multicast source, balancing the load among multiple standby routers, and avoiding the DR/querier.
  • FIG. 1 is a schematic diagram of a prior art DR election
  • FIG. 2 is a flowchart of a method for implementing a multicast load burden according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram of a multicast group address option in an extended PIM hello message according to an embodiment of the present invention
  • FIG. 4 is a schematic structural diagram of a DR handover message according to an embodiment of the present invention.
  • FIG. 5 is a schematic diagram of another embodiment of a method for implementing a multicast load according to an embodiment of the present invention
  • FIG. 6 is a schematic structural diagram of an apparatus according to an embodiment of the present invention
  • FIG. 7 is a schematic structural diagram of another apparatus according to an embodiment of the present invention.
  • FIG. 8 is a schematic structural diagram of another apparatus according to an embodiment of the present invention.
  • FIG. 9 is a schematic structural diagram of still another apparatus according to an embodiment of the present invention.
  • FIG. 10 is a schematic structural diagram of still another apparatus according to an embodiment of the present invention.
  • FIG. 2 is a flowchart of a method for implementing a multicast load burden according to an embodiment of the present invention, where the process includes:
  • S201 Determine a correspondence between each router and a multicast group set, where the multicast group set includes at least one multicast group
  • the router corresponding to the multicast group set is selected as the designated router, and the designated router processes the multicast service of the multicast group set.
  • the correspondence between the foregoing routers and the multicast group set may be statically configured or dynamically configured.
  • FIG. 1 is still taking FIG. 1 as an example to analyze the difference between the existing solution and the embodiment of the present invention.
  • Router_A is a DR, and the other two routers are BDRs. Only when the Router_A is faulty, the BDR is started to be DR. This overloads the Router_A. It can be seen that the DR in the PIM protocol in the prior art is interface-level, that is, irrelevant to the entry, no matter how many entries, only the unique DR is responsible for forwarding data of a certain network segment or sending a registration message.
  • the corresponding relationship between each router and the multicast group set is selected.
  • the multicast group configured by the current multicast system is ⁇ 1 , 2, 3 , 4, 5 , 6 ⁇ , where the first router corresponds to the multicast group set ⁇ 1 , 2 ⁇ , and the second router and group The broadcast group corresponds to ⁇ 3, 4, 5 ⁇ , and the third router corresponds to the multicast group set ⁇ 6 ⁇ .
  • These correspondences may be statically configured or dynamically configured. After determining the correspondence between each router and the multicast group set, you can select the DR based on the corresponding relationship.
  • the DR of the multicast group set ⁇ 6 ⁇ , the DR processes the multicast service of the corresponding multicast group set.
  • the load balancing of the DR is performed in the embodiment of the present invention, and the concept of an entry-level DR is added, that is, there is no DR at the interface level, but some of the multicast groups are The entry is a DR, and the remaining entries are BDRs. That is, load balancing is performed between the DR and the BDR.
  • the mapping between the routers and the multicast group can be configured through static configuration or dynamic configuration.
  • the static configuration mode is easy to understand and will not be described.
  • the dynamic configuration mode the corresponding relationship between each router and the multicast group set can be configured through the real-time parsed multicast protocol packet. For example, the following process can be performed:
  • Each router sends an extended PIM Hello message to each other, and the extended PIM Hello message carries the multicast group address served by the sender router;
  • the router establishes a mapping table containing the multicast group address and the router interface address;
  • the router When receiving the multicast protocol packet carrying the multicast group address, the router searches the mapping table and uses the multicast group address in the multicast protocol to match the mapping table;
  • the correspondence between the router and the multicast group set can be determined, and the DR can be selected by the corresponding relationship, and the DR is responsible for forwarding the multicast protocol packet.
  • each router serves all multicast group addresses in the multicast group. twenty two
  • the multicast protocol packet may be an IGMP REPORT packet in the IPv4, and may be a Multicast Listener Discovery (MLD) REPORT packet in the IPv6.
  • MLD Multicast Listener Discovery
  • each router serves all multicast group addresses.
  • the existing PIM Hello message is extended.
  • An option is added to the extended PIM Hello message.
  • the new options include Type, Length, and multicast group address.
  • the (Encoded Group Address) field where the Encoded Group Address field can be defined in the existing PIM protocol.
  • the router sends an extended PIM Hello message to the neighboring router.
  • the extended PIM Hello message carries the multicast group address it serves.
  • the router also collects extended PIM Hello messages sent by neighboring routers and generates a ⁇ Group, 0> mapping table.
  • the multicast group address in the IGMP join information matches the ⁇ 01"0 ⁇ , 0> mapping table according to the longest match principle.
  • the DR entity level DR
  • the default router is elected as the DR.
  • the interface-level DR in the existing scheme is used as the DR, or Router service priority, select the router with the highest priority as the DR;
  • the parameters in ⁇ Multicast Group Address, Router Interface Address, Router Service Priority, Source/RP Address> are twenty two
  • the router in each matching entry calculates a match value, and the router with the largest match value is the DR.
  • router service priority and "source/RP address” in the above parameters are optional.
  • a unique DR can be determined by comparing the router interface addresses similar to the prior art, and no further details are provided.
  • the method for implementing the multicast load balancing provided by the embodiment of the present invention is used to dynamically select an entry for each multicast group in the embodiment of the present invention.
  • Level DR that is, for some packets, a certain router A is a DR.
  • the router B is a DR. Therefore, load balancing is implemented, and the pressure of the original single DR is reduced.
  • the method for implementing the multicast load burden provided by the embodiment of the present invention may further include:
  • the DR sends a service cancel message (DR Cancel/Restore message) to the neighboring router when it determines that the multicast source, the receiver, or the RP is unreachable.
  • DR Cancel/Restore message a service cancel message
  • the first DR sends a DR Cancel/Restore message to the BDR, and the BDR receives the DR Cancel/Restore.
  • the interface is changed to the second DR, and the protocol-independent multicast is added to the upstream device to join the PIM Join message.
  • the data is obtained and forwarded in the shared network segment of the multicast group where the second DR resides.
  • the DR Cancel/Restore packet For the structure of the DR Cancel/Restore packet, see Figure 4, which mainly carries the unicast address (Encoded-Source Address) of the multicast source, the receiver, or the RP. In addition, it also includes the PIM version (PIM version) and the broadcast address. Fields such as ( Num Unicast Address ), Checksum (Checksum), and Reserved (Reserved).
  • the Encoded-Source Address field can be in the format defined in the PIM protocol.
  • the embodiment of the present invention can be applied to a multicast system configured with PIM-SM/SSM, and if 22 If the interface is not configured with PIM-SM/SSM, the IGMP querier and non-querier replace the DR and BDR to complete the functions.
  • the routers of the Sender communication include the routers RTA and RTB, and the routers RTD and RTE are communicated with the terminals HostA, HostB and HostC in the receiving network segment.
  • Scenario 1 Source DR load sharing
  • the multicast server sends three multicast data sources, namely Gl, G2, and G3.
  • the RTA is configured as the G1 service, and the RTB is the G2 and G3 services.
  • the RTA After receiving the data of the group, the RTA selects the RTA as the DR of the G1 according to the method described in the foregoing embodiment of the present invention, and therefore sends the registration message to the corresponding RP for the G1.
  • RTB sends G2, G3 to its corresponding RP to send registration messages.
  • the multicast server sends three multicast data sources, and configures the RTA and RTB to serve all groups.
  • the RTA After receiving the data of the group, the RTA selects the RTA to be the DR of the two groups according to the method described in the foregoing embodiment of the present invention, and therefore sends the registration message to the corresponding RP for the two groups.
  • RTB sends registrations to the corresponding RPs for the remaining groups.
  • HostA, HostB, and HostC send IGMP V2 REPORT messages to different groups Gl, G2, and G3. Configure RTD to serve G1 and RTE as G2 and G3.
  • the RTD receives the IGMP V2 REPORT message, and according to the method described in the embodiment of the present invention, selects the RTD to be the DR of the G1, and sends the (*, G) join message to the corresponding RP of the G1 to obtain the data. And forward to the receiving end.
  • the RTE sends the (*, G) join message to the corresponding RP for the group G2 and G3, obtains the data, and forwards the data to the receiving end.
  • HostA sends an IGMP V2 REPORT message to 226.0.0.1.
  • the RTD and RTE receive the message and match it in the respective ⁇ 01 01 ⁇ , 01 > mapping table. There is only one match: ⁇ 226.0.0.0/ 16. 10.1.1.1>; Determine the correspondence between the router RTE and 226.0.0.1, according to the correspondence, select the DR whose RTE becomes 226.0.0.1, and send the PIM JOIN report upstream by the intfl of the RTE (the IP address is 10.1.1.1). Text.
  • HostB sends an IGMP V2 REPORT message to 228.0.0.1.
  • the RTD and RTE receive the message and match them in the ⁇ 01 01 ⁇ , 01 > mapping table. If no match is found, the interface level DR RTD is selected. For the DR, the PIM JOIN message is sent upstream by the RTD intf2 (IP address 10.1.1.2).
  • HostC sends an IGMP V2 REPORT message to 225.0.0.1.
  • the RTD and RTE receive the message and match them in the respective ⁇ 01 01 ⁇ , 01 > mapping table to find two matches: ⁇ 225.1.0.0/16 10.1.1.2>, ⁇ 225.1.0.0/16, 10.1.1.1>; Determine the correspondence between the routers RTD, RTE and 225.0.0.1. According to the correspondence, the DR can be selected in the manner described in the above 3.
  • HostA, HostB, and HostC send IGMP V2 REPORT messages to different groups G1 and G2.
  • the RTD receives these IGMP V2 REPORT messages, according to the method described in the foregoing embodiment of the present invention, selects the RTD to be the DR of the two groups, and sends the two groups to their corresponding RPs (*, G). Join the message, get the data and forward it to the receiver.
  • the RTE sends a (*, G) join message to the corresponding RP for the remaining group to obtain data and forward it to the receiving end.
  • PIM SSM is configured on all interfaces, and the interface connected to the receiver is configured with IGMP.
  • the RTD is the interface-level DR of the network segment where the RTD is located.
  • SSM For SSM, it is forwarded directly through SPT, and no RP is required.
  • HostA, HostB, and HostC send IGMP V3 REPORT messages to different source groups (S1, G1), (S1, G2), (S1, G3). Configure RTD to serve G1 and RTE as G2 and G3.
  • the RTD receives the IGMP V3 REPORT message, and according to the method described in the foregoing embodiment of the present invention, the RTD is selected as the DR of the group G1, and the G1 sends the (S, G) join message to the corresponding source, and obtains the message. The data is forwarded to the receiving end.
  • the RTE sends the (S, G) join message to the corresponding source G2, G3, and obtains the data and forwards it to the receiver.
  • HostA, HostB, and HostC send IGMP V3 REPORT messages to different source groups.
  • the RTD receives these IGMP V3 REPORT messages, and according to the method described in the foregoing embodiment of the present invention, selects the RTD to become the DR of the two groups, and sends the two groups to their corresponding sources (S, G). Join the message, get the data and forward it to the receiver. twenty two
  • the RTE sends (S, G) join messages to the corresponding source for the remaining groups, obtains the data, and forwards the data to the receiving end.
  • the interface connected to the receiving end of the RTD/RTE is configured with only IGMP. All other interfaces are configured with PIM-SM/SSM.
  • the RTD is the IGMP querier in the network segment where the RTD is located.
  • Scenario 1 Queryer load sharing one
  • HostA, HostB, and HostC send IGMP V2/V3 REPORT messages to different groups G1, G2, and G3. Configure RTD to serve G1 and RTE as G2 and G3.
  • the RTD receives the IGMP V2/V3 REPORT message, and according to the method described in the embodiment of the present invention, the RTD is selected as the IGMP querier of the group G1, and the G1 sends the (*, G) join message to the corresponding RP.
  • the text or (S, G) join message is sent to its corresponding source, and the data is obtained and forwarded to the receiving end.
  • the RTE sends the (*, G) join message to the corresponding RP of the group G2 and G3 or sends a (S, G) join message to the corresponding source to obtain the data and forward it to the receiving end.
  • HostA, HostB, and HostC send IGMP V2/V3 REPORT messages to different groups G1.
  • the RTD receives the IGMP V2/V3 REPORT message, and according to the method described in the foregoing embodiment of the present invention, the RTD is selected as the IGMP querier of the two groups, and the two groups are sent to their corresponding RPs (*, G) Join the message or send (S, G) join message to its corresponding source, obtain the data and forward it to the receiving end.
  • the RTE sends a (*, G) join message to the RP corresponding to the remaining group or sends a (S, G) join message to its corresponding source to obtain the data and forward it to the receiver.
  • IPV6 the Multicast Listener Discovery
  • MLD Multicast Listener Discovery
  • a router for the receiving end and the multicast source is provided. twenty two
  • the embodiment of the invention further provides an apparatus for implementing multicast load sharing, which can be implemented by software, hardware or combination of software and hardware.
  • the device refers to the DR or BDR of the multicast source in the PIM-SM, or the device refers to the DR or BDR of the receiver in the PIM-SM, or the device refers to the DR of the receiver in the PIM-SSM or BDR, or, the device refers to the querier of the receiving end of the Internet Group Management Protocol IGMP.
  • the apparatus includes a correspondence determining unit 601 and a designated router executing unit 602,
  • the correspondence determining unit 601 is configured to determine a correspondence between each router and a multicast group set, where the multicast group set includes at least one multicast group;
  • the designated router execution unit 602 is configured to process the services of the multicast group as a designated router of the multicast group set corresponding to the device.
  • the above-mentioned correspondence may be configured through static configuration or through multicast protocol packets parsed in real time.
  • the apparatus further includes:
  • the multicast protocol packet receiving and parsing unit 606 is configured to receive the multicast protocol packet, and parse the multicast protocol packet to obtain the multicast group address therein;
  • mapping table matching unit 607 configured to perform matching by using the multicast group address and a preset mapping table, where the mapping table includes a correspondence between a multicast group address and a router interface address;
  • the designated router determining unit 608 is configured to determine, according to the matching entry, a router corresponding to the multicast group set corresponding to the multicast protocol packet as the designated router.
  • the designated router determining unit 608 is configured to: when there is no matching entry, select a default router as the designated router; when the matching entry is only one, select the router in the unique matching entry. twenty two
  • - 12- is the designated router; when there are at least two matching entries, at least the designated router is selected by using the multicast group address and the router interface address in each matching entry.
  • the device further includes:
  • the service cancellation message sending unit 603 is configured to send a service cancellation message to the remaining routers when the device is the designated router and determines that the multicast source, the receiving end, or the aggregation point is unreachable;
  • the service cancellation message receiving unit 604 is configured to receive a service cancellation message sent by the current designated router.
  • the designated router reselecting unit 605 is configured to start the device as a designated router when the service canceling message receiving unit receives the service canceling message.
  • the embodiment of the invention further provides another device for implementing multicast load sharing, which can be implemented by software, hardware or combination of software and hardware.
  • the device refers to the DR or BDR of the multicast source in the PIM-SM, or the device refers to the DR or BDR of the receiver in the PIM-SM, or the device refers to the DR of the receiver in the PIM-SSM or BDR, or, the device refers to the querier of the receiving end of the Internet Group Management Protocol IGMP.
  • the device includes:
  • a determining unit 901 configured to determine a correspondence between each router and a multicast group set, where the multicast group set includes at least one multicast group;
  • the selecting unit 902 is configured to select, according to the correspondence determined by the determining unit 901, a router corresponding to the multicast group set as the designated router.
  • the foregoing correspondence may be statically configured or dynamically configured.
  • the apparatus may further include: a receiving unit 903, configured to receive a multicast protocol packet, and parse the multicast protocol packet to obtain the multicast protocol packet.
  • the matching unit 904 is configured to match the multicast group address obtained by the receiving unit 903 and the mapping table, where the mapping table includes a correspondence between the multicast group address and the router interface address.
  • the determining unit 901 is configured to determine the correspondence obtained by the matching unit 904.
  • the embodiment of the present invention dynamically selects the entry-level DR for each multicast group, that is, for some multicast groups, the router A is selected as the DR, and for the other multicast groups, the router B is selected as the DR, thereby twenty two
  • a DR-based load segmentation solution is provided for the routers of the receiving end and the multicast source end, and the load is balanced among the multiple standby routers to avoid overloading the DR load.
  • embodiments of the present invention can be applied to both IPV4 and IPV6 application scenarios.
  • the above storage medium may be, for example, a ROM/RAM, a magnetic disk, an optical disk, or the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

实现组播负载分担的方法及装置
本申请要求于 2008 年 08 月 14 日提交中国专利局、 申请号为 200810146259.1、 发明名称为"实现组播负载分担的方法及装置"的中国专利申 请的优先权, 其全部内容通过引用结合在本申请中。
技术领域
本发明涉及通信技术领域,尤其涉及组播技术领域中实现组播负载分担的 方法及装置。
背景技术
IP组播是指在 IP网络中将数据包以尽力传送(best-effort ) 的形式发送到 网络中的某个确定节点子集, 这个子集称为组播组(multicast group ) 。 IP组 播的基本思路是, 源主机只发送一份数据, 这份数据中的目的地址为组播组地 址, 组播组中的所有接收者都可以接收到同样的数据拷贝, 并且只有组播组内 的主机(目标主机)可以接收该数据, 网络中其他主机不能收到。
稀 ¾ 模式十办议无关组播 ( Protocol Independent Multicast-Parse Mode , PIM-SM )和特定源组播 ( Source-Specific Multicast, SSM )是两种常用的域内 组播模式。 对于 PIM-SM , 其工作过程可以概括为: 邻居发现、 指定路由器 ( Designated Router, DR )选举、 汇聚点 ( Rendezvous Point, RP )发现、 RP 树(RPT )生成、 组播源注册, 以及, RPT向最短路径树 ( Shortest-Path Tree, SPT )切换。 对于 PIM-SSM, 直接通过 SPT进行转发, 不需要 RP。
下面着重对 DR选举进行介绍。
借助握手报文(Hello报文)可以为共享网络(如 Ethernet )选举 DR, 共 享网络上的各路由器相互之间发送携带 DR优先级选项的 Hello报文, 拥有最 高 DR优先级的路由器将被选举为本网络中的 DR。 假如优先级相同或网络中 至少一台路由器不支持在 Hello报文中携带优先级,则拥有最大 IP地址的路由 器被选举为 DR。 当 DR出现故障时, 接收 Hello报文将会超时, 邻居路由器 之间会触发新的 DR选举过程。
参见图 1 , 为 DR选举示意图。 假设通过选举, Router_A 选举为组播源 侧的 DR,其余与组播源相连的路由器为备用 DR( Backup DR, BDR ), Router_B 被选举为接收端的 DR, 其余与接收端相连的路由器为 BDR。 DR将作为本网 -2- 段中组播信息的唯一转发者。无论是和组播源 S连接的网络,还是和接收者连 接的网络, 只要网络为共享媒介则需要选举 DR, 接收端 DR向 RP发送加入 报文( Join报文 ) , 组播源侧 DR向 RP发送注册报文( Register报文 )。 可见, DR对于 PIM-SM网络意义重大, 它作为本网段的唯一数据转发者, 主要充当 因特网组管理协议 ( Internet Group Management Protocol Internet, IGMP )查询 器的角色。 如果路由器接口不支持 PIM-SM、 PIM-SSM的情况, 可通过 IGMP 机制选举出一个查询器, 由该查询器负责向此网段转发数据。
通过上述介绍可知, 目前方案是采用单一 DR作为某网段的唯一转发者, 本申请的发明人在研究过程中发现, 在表项较多的情况下, DR负担向 RP发 送所有表项的注册报文或加入报文, 这对 DR的性能要求是一个极大考验, 以 图 1为例,在组播源侧,仅依赖作为 DR的 Router_A向 RP发送大量的 Register 消息, 也就是说, 目前单一的 DR机制对于 DR压力过大。
发明内容
本发明实施例提供一种实现组播负载分担的方法及装置,以解决 DR或查 询器压力过大的问题。
为此, 本发明实施例采用如下技术方案:
一种实现组播负载分担的方法, 包括: 确定路由器和组播组集合的对应关 系, 该组播组集合包括至少一个组播组; 才艮据该对应关系, 选择该组播组集合 对应的路由器作为指定路由器, 由该指定路由器处理该组播组集合的组播业 务。
一种实现组播负责分担的装置, 包括: 对应关系确定单元, 用于确定各路 由器与组播组集合的对应关系, 该组播组集合包括至少一个组播组; 指定路由 器执行单元,用于作为该装置对应的组播组集合的指定路由器处理该组播组集 合的组播业务。
一种实现组播负责分担的装置, 包括: 确定单元, 用于确定各路由器与组 播组集合的对应关系, 该组播组集合包括至少一个组播组; 选择单元, 用于根 据确定单元确定的对应关系, 选择组播组集合对应的路由器作为指定路由器。
可见, 本发明实施例针对各组播组, 确定与其对应的指定路由器, 例如, 对于某些组播组, 某个路由器为 DR/查询器, 对于其余组播组的报文, 则是另 22
-3- 一个路由器为 DR/查询器, 由此, 实现了负载分担, 减轻了原有单一 DR/查询 器的压力。
可见, 采用本发明实施例的方案, 为接收端和组播源端的路由器提供了一 种基于 DR/查询器的负载分担解决方案, 在多个备用路由器之间均衡负载, 避 免了 DR/查询器负载过重的问题。
附图说明
图 1为现有技术 DR选举示意图;
图 2为本发明实施例提供的一个实现组播负载负担的方法流程图; 图 3为本发明实施例提供的扩展 PIM Hello报文中组播组地址选项示意 图;
图 4为本发明实施例提供的 DR切换报文结构示意图;
图 5 为本发明实施例提供的又一个实现组播负载负担的方法实施例示意 图 6为本发明实施例提供的一个装置结构示意图;
图 7为本发明实施例提供的另一个装置结构示意图
图 8为本发明实施例提供的另一个装置结构示意图
图 9为本发明实施例提供的又一个装置结构示意图
图 10为本发明实施例提供的又一个装置结构示意图。
具体实施方式
参见图 2, 为本发明实施例提供的实现组播负载负担的方法流程图, 该流 程包括:
S201 : 确定各路由器和组播组集合的对应关系,该组播组集合包括至少一 个组播组
S202 根据上述对应关系,选择组播组集合对应的路由器作为指定路由器, 由该指定路由器处理该组播组集合的组播业务。
其中, 上述各路由器和组播组集合的对应关系可以是静态配置的,或者是 动态配置的。
下面仍以图 1为例, 分析现有方案和本发明实施例方案的区别。
在现有方案中, 在组播源端虽然有三台路由器, 但是对于所有组播组, 22
-4-
Router_A都为 DR,其余两台路由器为 BDR,只有在 Router_A故障等情况下, 才启动 BDR为 DR, 这样对 Router_A负载过重。 可见, 现有技术中的 PIM协 议中的 DR是接口级的, 即与表项无关, 无论有多少表项, 仅依靠唯一的 DR 负责转发某网段的数据或发送注册报文。
而采用本发明实施例后, 则是根据各路由器与组播组集合的对应关系, 选 贝' J DR。 例如, 目前组播系统配置的组播组为 { 1 , 2, 3 , 4, 5 , 6} , 其中, 第 一个路由器与组播组集合 { 1 , 2}对应, 第二个路由器与组播组集合 {3 , 4, 5 } 对应, 第三个路由器与组播组集合 {6}对应, 这些对应关系可以是静态配置的, 也可以是动态配置的。确定各路由器和组播组集合的对应关系后, 就可以根据 该对应关系, 选择 DR。 如在本例中, 选择第一个路由器作为组播组集合 { 1 , 2}的 DR, 选择第二个路由器作为组播组集合 {3 , 4, 5 }的 DR, 选择第三个路 由器作为组播组集合 { 6 }的 DR , 由的 DR处理对应的组播组集合的组播业务。
可见, 为了改变现有方案负载不均衡的状况, 本发明实施例对 DR进行负 载分担, 增加一个表项级 DR的概念, 即, 不存在接口级的 DR, 而是对组播 组的某些表项是 DR, 对其余表项是 BDR, 也就是说, 在 DR和 BDR之间进 行负载分担。
上述已提到, 可通过静态配置或动态配置方式, 配置各路由器和组播组集 合的对应关系, 其中, 静态配置方式比较容易理解, 不多作赘述。 对于动态配 置方式,可以是通过实时解析的组播协议报文配置各路由器和组播组集合的对 应关系, 例如, 可以是如下过程:
[1] : 各个路由器互相发送扩展 PIM Hello报文, 扩展 PIM Hello报文携带 发送方路由器所服务的组播组地址;
[2]: 路由器建立包含组播组地址和路由器接口地址的映射表;
[3] : 当接收到携带有组播组地址的组播协议报文, 路由器查找该映射表 并利用该组播协议 4艮文中的组播组地址和该映射表进行匹配;
[4] : 根据匹配结果, 就可以确定路由器与组播组集合的对应关系, 由该 对应关系, 就能够选择 DR, 并由 DR负责转发该组播协议报文。
需要说明的是, 上述 [1]是可选的。 在不执行 [1]时, 可预先设置各路由器 所服务的组播组地址, 例如, 默认各路由器为组播组内所有组播组地址服务。 22
-5- 其中的组播协议报文, 可选地, 在 IPv4中可以是 IGMP REPORT报文, 在 IPv6中可以是组播监听者发现协议(Multicast Listener Discovery, MLD ) REPORT报文。
下面进一步详细介绍本发明实施例提供的实现组播负载分担的方法。
当收到 IGMP REPORT报文或者组播源的数据, 需要向上游发送( *,G ) /
( S,G )加入(join )报文或者发送注册报文, 并可通过以下方式实现组播负载 分担:
1、 配置路由器服务的组播组地址范围, 缺省情况下各个路由器为所有组 播组地址服务, 可选地, 还可以配置路由器的路由器服务优先级。
2、 扩展现有的 PIM Hello报文, 扩展 PIM Hello报文中新增了一个选项, 格式参见图 3 , 其中, 该新增的选项包括类型(Type )、 长度(Length )和组播 组地址 ( Encoded Group Address )字段, 其中的 Encoded Group Address字段可 采用现有 PIM协议中的定义。
3、路由器向邻居路由器发送扩展 PIM Hello报文, 该扩展 PIM Hello报文 中携带其所服务的组播组地址。
4、 该路由器还收集邻居路由器发送的扩展 PIM Hello报文, 并生成一个 <Group, 0 >映射表。
5、当收到 IGMP加入信息(组播协议报文),按照最长匹配原则,通过 IGMP 加入信息中的组播组地址匹配<01"0叩, 0 >映射表。
上述过程之后, 就可以确定路由器与组播组集合的对应关系,根据上述对 应关系, 可以通过如下方式选择 DR (表项级 DR ):
①如果组播组地址没有匹配到<01"0叩, 01 >映射表中的表项, 则选择默认 的路由器为 DR, 例如, 直接采用现有方案中的接口级 DR作为 DR, 或者, 通过路由器服务优先级, 选择优先级最高的路由器作为 DR;
②如果组播组地址匹配到 <Group, DR>映射表中唯一的表项, 则选择此匹 配表项中的路由器作为 DR;
③如果组播组地址匹配到 <Group, DR>映射表中至少两个表项, 则以〈组 播组地址、 路由器接口地址、 路由器服务优先级、 源 /RP地址 >中的参数, 为 22
-6- 各匹配表项中的路由器计算出一个匹配项值, 选择匹配项值最大的路由器为 DR。
需要说明的是,上述参数中"路由器服务优先级,,和"源 /RP地址,,为可选的。 另外, 当多个匹配项值相同时, 可通过与现有技术类似的比较路由器接口地址 的方式来确定唯一的 DR, 对此不多赘述。
采用本发明实施例提供的实现组播负载分担的方法,与现有方案采用固定 的接口级 DR负责某网段的所有报文相比, 本发明实施例针对各组播组, 动态 选取表项级 DR, 即, 对于某些报文, 某个路由器 A为 DR, 对于其余报文, 则可能是路由器 B为 DR, 由此, 实现了负载分担, 减轻了原有单一 DR的压 力。
另外, 为了增强可靠性, 本发明实施例提供的实现组播负载负担方法还可 以包括:
[1] 该 DR在确定组播源端、 接收端或 RP不可达时, 向邻居路由器发送 服务取消报文( DR Cancel/Restore报文 );
[2] 如果仅一个路由器接收到该服务取消报文, 则将该接收到服务取消报 文的路由器设置为新的 DR;
[3] 如果至少两个路由器接收到该服务取消报文, 则按照上述③介绍的方 法选择出一个路由器作为新的 DR。
例如, 对于某个表项对应的第一 DR, 如果检测到组播源端、接收端或 RP 不可达时, 第一 DR给 BDR发送 DR Cancel/Restore报文, BDR收到此 DR Cancel/Restore报文后,将收到报文的接口状态变为第二 DR, 并向上游发送协 议无关组播加入 PIM Join报文,获取数据并在第二 DR所在组播组的共享网段 中转发。
其中, DR Cancel/Restore报文结构示意图参见图 4 ,它主要携带组播源端、 接收端或 RP的单播地址( Encoded-Source Address ), 另外, 还包括 PIM版本 ( PIM version )、 广播地址 ( Num Unicast Address )、 校验和 ( Checksum )和保 留位(Reserved )等字段。 其中, Encoded-Source Address字段可采用 PIM协 议中定义的格式。
本发明实施例可应用到配置了 PIM-SM/SSM的组播系统中, 另外, 如果 22 接口不配置 PIM-SM/SSM , 则由 IGMP查询器和非查询器取代 DR和 BDR来 完成各功能。
为了对本发明实施例有一个更直观的理解,下面以各种网络场景为例具体 介绍本发明实施例的应用。
参见图 5 , 为较常见的组播系统示意图。 其中, 源端网段内与组播服务器
Sender通信的路由器包括路由器 RTA和 RTB , 接收端网段内与终端 HostA、 HostB和 HostC通信的包括路由器 RTD和 RTE。
下面介绍实施例一: PIM-SM DR负载分担
假设在图 5中, 所有接口均配置 PIM SM , RTD/RTE和接收者相连的接口 配置 IGMP, RTB和 RTD分别为其所在网段的接口级 DR。
场景一: 源端 DR负载分担一
1.组播服务器发送 3个组播数据源, 分别为 Gl、 G2和 G3 , 配置 RTA为 G1 服务, RTB为 G2、 G3服务。
2. RTA收到这些组的数据后, 根据上述本发明实施例介绍的方法, 选择 RTA为 G1的 DR, 因此为 G1向其对应的 RP发送注册报文。
3.类似的, RTB为 G2、 G3向其对应的 RP发送注册报文。
场景二: 源端 DR负载分担二
1.组播服务器发送 3个组播数据源, 配置 RTA、 RTB为所有组服务。
2. RTA收到这些组的数据后, 根据上述本发明实施例介绍的方法, 选择 RTA成为其中 2个组的 DR, 因此为这两个组向其对应的 RP发送注册报文。
3.类似的, RTB为剩下的组向其对应的 RP发送注册 ^艮文。
场景三: 接收端 DR负载分担一
1. HostA, HostB、 HostC发送 IGMP V2 REPORT报文加入不同的组 Gl , G2, G3。 配置 RTD为 Gl服务, RTE为 G2、 G3服务。
2.RTD收到这些 IGMP V2 REPORT报文, 才艮据上述本发明实施例介绍的方 法, 选择 RTD成为 G1的 DR, 为 G1向其对应的 RP发送 (*,G)加入报文, 获取数 据并向接收端进行转发。
3.类似的, RTE为组 G2、 G3向其对应的 RP发送 (*,G)加入报文, 获取数据 并向接收端进行转发。 22
-8- 下面就场景三举一个更加具体的实例:
1 ) 配置 RTD的 intf2 ( IP地址为 10.1.1.2 )为 225.1.0.0/16服务, RTE的 intfl ( IP地址为 10.1.1.1 )为 226.0.0.0/16和 225.1.0.0/16服务, 优先级不配置。
2 ) RTD和 RTE通过扩展 HELLO报文交换邻居信息, 形成如下 <01 01^,01 >映射表:
〈225.1.0.0/16, 10.1.1.2>、 〈226.0.0.0/16, 10.1.1.1>、 < 225.1.0.0/16, 10.1.1.1>
3 ) HostA发送 IGMP V2 REPORT报文加入 226.0.0.1 , RTD和 RTE收到此报 文, 在各自的<01 01^,01 >映射表进行匹配, 有且只有一个匹配项: <226.0.0.0/16, 10.1.1.1>; 确定路由器 RTE和 226.0.0.1的对应关系, 根据该对应 关系, 选择 RTE成为 226.0.0.1的 DR, 由 RTE的 intfl ( IP地址为 10.1.1.1 )向上游 发送 PIM JOIN报文。
4 ) HostB发送 IGMP V2 REPORT报文加入 228.0.0.1 , RTD和 RTE收到此报 文, 在各自的<01 01^,01 >映射表进行匹配, 没有找到匹配项, 则选择接口 级 DR RTD故为 DR, 由 RTD的 intf2 ( IP地址为 10.1.1.2 ) 向上游发送 PIM JOIN 报文。
5 ) HostC发送 IGMP V2 REPORT报文加入 225.0.0.1 , RTD和 RTE收到此报 文,在各自的<01 01^,01 >映射表进行匹配,找到两个匹配项: <225.1.0.0/16, 10.1.1.2>、 < 225.1.0.0/16, 10.1.1.1>; 确定路由器 RTD、 RTE和 225.0.0.1的对应 关系, 根据该对应关系, 可以按照上述③中介绍的方式选择 DR。
例如, 可以通过如下的方式计算这两个匹配项的值:
Value(225.1.0.1, 10.1.1.1) = ((1103515245) * (((1103515245) * ( (Oxe 100000)) + (12345UL) ) Λ (0x0a00000)) + (12345UL)) % ((0x80000000UL));
Value(225.1.0.1, 10.1.1.2) = ((1103515245) * (((1103515245) * ( (Oxe 1000001)) + (12345UL) ) Λ (0x0a00000)) + (12345UL)) % ((0x80000000UL));
其中, Λ表示异或, %表示取模, *表示相乘。
如果 Value(225.1.0.1, 10.1.1.1)大于 Value(225.1.0.1, 10.1.1.2), 则选择 RTE成 为 225.0.0.1的 DR, 由 RTE的 intfl ( IP地址为 10.1.1.1 ) 向上游发送 PIM JOIN^ 文。 22
-9- 如果 Value(225.1.0.1, 10.1.1.1)等于 Value(225.1.0.1, 10.1.1.2), 则选择 RTD成 为 225.0.0.1的 DR, 由 RTD的 intf2 ( IP地址为 10.1.1.2 ) 向上游发送 PIM JOIN^ 文。
场景四: 接收端 DR负载分担二
l.HostA、 HostB、 HostC发送 IGMP V2 REPORT报文加入不同的组 Gl , G2,
G3。 配置 RTD、 RTE为所有组服务。
2.RTD收到这些 IGMP V2 REPORT报文,才艮据上述本发明实施例介绍的方 法, 选择 RTD成为其中两个组的 DR, 为这两个组向其对应的 RP发送 (*,G)加入 报文, 获取数据并向接收端进行转发。
3.类似的, RTE为剩下的组向其对应的 RP发送 (*,G)加入报文, 获取数据并 向接收端进行转发。
下面介绍实施例二: PIM-SSM DR负载分担
假设在图 5中, 所有接口均配置 PIM SSM , RTD/RTE和接收者相连的接口 配置 IGMP, RTD为其所在网段的接口级 DR。
对于 SSM, 直接通过 SPT进行转发, 不需要 RP。
场景一: 接收端 DR负载分担一
1. HostA , HostB、 HostC发送 IGMP V3 REPORT报文加入不同的源组 (S1,G1), (S1,G2), (S1,G3)。 配置 RTD为 Gl服务, RTE为 G2、 G3服务。
2. RTD收到这些 IGMP V3 REPORT报文,才艮据上述本发明实施例介绍的方 法, 选择 RTD成为组 G1的 DR, 为 G1向其对应的源发送 (S,G)加入报文, 获取数 据并向接收端进行转发。
3.类似的, RTE为组 G2、 G3向其对应的源发送 (S,G)加入报文, 获取数据 并向接收端进行转发。
场景二: 接收端 DR负载分担二
l.HostA , HostB、 HostC发送 IGMP V3 REPORT报文加入不同的源组
(S1,G1), (S1,G2), (S1,G3)。 配置 RTD、 RTE为所有组服务。
2.RTD收到这些 IGMP V3 REPORT报文,才艮据上述本发明实施例介绍的方 法, 选择 RTD成为其中两个组的 DR, 为这两个组向其对应的源发送 (S,G)加入 报文, 获取数据并向接收端进行转发。 22
- 10-
3.类似的, RTE为剩下的组向其对应的源发送 (S,G)加入报文, 获取数据并 向接收端进行转发。
下面介绍实施例三: IGMP查询器负载分担
假设在图 5中, RTD/RTE和接收端相连的接口只配置 IGMP, 其他所有接 口均配置 PIM-SM/SSM, RTD为其所在网段内的 IGMP查询器。
当然, 如果接口没有配置 PIM-SM/SSM , 则可以由共享网段上的路由器选 择一个 IGMP查询器来负责此网段的数据转发。
场景一: 查询器负载分担一
1. HostA, HostB、 HostC发送 IGMP V2/V3 REPORT报文加入不同的组 G1 , G2, G3。 配置 RTD为 G1服务, RTE为 G2、 G3服务。
2. RTD收到这些 IGMP V2/V3 REPORT报文, 根据上述本发明实施例介绍 的方法,选择 RTD成为其中组 G1的 IGMP查询器,为 G1向其对应的 RP发送 (*,G) 加入报文或者向其对应的源发送 (S,G)加入报文, 获取数据并向接收端进行转 发。
3.类似的, RTE为组 G2、 G3向其对应的 RP发送 (*,G)加入报文或者向其对 应的源发送 (S,G)加入报文, 获取数据并向接收端进行转发。
场景二: 查询器负载分担二
l.HostA, HostB、 HostC发送 IGMP V2/V3 REPORT报文加入不同的组 G1 ,
G2, G3。 配置 RTD、 RTE为所有组服务。
2.RTD收到这些 IGMP V2/V3 REPORT报文, 根据上述本发明实施例介绍 的方法, 选择 RTD成为其中两个组的 IGMP查询器, 为这两个组向其对应的 RP 发送 (*,G)加入报文或者向其对应的源发送 (S,G)加入报文, 获取数据并向接收 端进行转发。
3.类似的, RTE为剩下的组对应的 RP发送 (*,G)加入报文或者向其对应的源 发送 (S,G)加入报文, 获取数据并向接收端进行转发。
需要说明的是, 上述实施例仅是以 IPV4进行说明, 实际上, 本发明实施例 的方案同样可适用于 IPV6中, 在 IPv6中, 可以通过组播监听者发现协议 ( Multicast Listener Discovery, MLD ) 实施。
可见, 采用本发明实施例的方案, 为接收端和组播源端的路由器提供了一 22
- 11 - 种基于 DR的负载分担解决方案, 在多个备用路由器之间均衡负载, 避免 DR负 载过重。
本发明实施例还提供一种实现组播负载分担的装置, 该装置可通过软件、 硬件或软硬件结合实现。 可选地, 该装置是指 PIM-SM 中组播源端的 DR或 BDR, 或者, 该装置是指 PIM-SM中接收端的 DR或 BDR, 或者, 该装置是 指 PIM-SSM 中接收端的 DR或 BDR, 或者, 该装置是指因特网组管理协议 IGMP中接收端的查询器。
参见图 6, 为该装置结构示意图。 该装置包括对应关系确定单元 601和指 定路由器执行单元 602,
其中:
对应关系确定单元 601 , 用于确定各路由器与组播组集合的对应关系, 该 组播组集合包括至少一个组播组;
指定路由器执行单元 602, 用于作为该装置对应的组播组集合的指定路由 器处理该组播组的业务。
其中,
上述对应关系可以是通过静态配置的 ,也可以是通过实时解析的组播协议 报文配置的。
可选的, 在上述对应关系是通过实时解析的组播协议报文配置时, 如图 7 所示, 该装置进一步包括:
组播协议报文接收解析单元 606, 用于接收组播协议报文, 并解析该组播 协议报文获取其中的组播组地址;
映射表匹配单元 607 , 用于利用该组播组地址和预置的映射表进行匹配, 该映射表包含组播组地址和路由器接口地址的对应关系;
指定路由器确定单元 608, 用于根据匹配表项情况确定与组播协议报文所 属组播组集合对应的路由器为指定路由器。
其中,
该指定路由器确定单元 608 , 用于当没有匹配表项时, 选择默认的路由器 作为指定路由器; 当匹配表项仅为一条时,选择该唯一的匹配表项中的路由器 22
- 12- 为指定路由器; 当匹配表项为至少两条时, 至少利用各匹配表项中的组播组地 址和路由器接口地址, 选择指定路由器。
可选地, 如图 8所示, 该装置还包括:
服务取消报文发送单元 603 , 用于在该装置作为指定路由器并确定组播源 端、 接收端或汇聚点不可达时, 向其余路由器发送服务取消报文;
服务取消报文接收单元 604, 用于接收当前指定路由器发送的服务取消报 文;
指定路由器重选单元 605 , 用于在该服务取消报文接收单元接收到服务取 消报文时, 启动该装置为指定路由器。
本发明实施例还提供了又一种实现组播负载分担的装置,该装置可通过软 件、 硬件或软硬件结合实现。 可选地, 该装置是指 PIM-SM中组播源端的 DR 或 BDR, 或者, 该装置是指 PIM-SM中接收端的 DR或 BDR, 或者, 该装置 是指 PIM-SSM中接收端的 DR或 BDR, 或者, 该装置是指因特网组管理协议 IGMP中接收端的查询器。
参见图 9, 该装置包括:
确定单元 901 , 用于确定各路由器与组播组集合的对应关系, 该组播组集 合包括至少一个组播组;
选择单元 902, 用于根据确定单元 901确定的对应关系, 选择组播组集合 对应的路由器作为指定路由器。
可选的, 在本实施例中, 上述对应关系可以是静态配置的, 或者是动态配 置的。
当上述对应关系是动态配置时, 如图 10所示, 该装置还可以包括: 接收单元 903 , 用于接收组播协议报文, 并解析该组播协议报文获取该组 播协议报文中携带的组播组地址;
匹配单元 904 , 用于根据接收单元 903获取的组播组地址和映射表进行匹 配, 该映射表包含组播组地址和路由器接口地址的对应关系;
此时, 确定单元 901 , 用于确定匹配单元 904得到的对应关系。
本发明实施例针对各组播组, 动态选择表项级 DR, 即, 对于某些组播组, 选择路由器 A为 DR, 对于其余组播组, 则另外选择路由器 B为 DR, 由此, 实 22
- 13- 现了负载分担, 减轻了原有某个路由器作为所有组播组的单一 DR的压力。
可见, 采用本发明实施例的方案, 为接收端和组播源端的路由器提供了一 种基于 DR的负载分段解决方案, 在多个备用路由器之间均衡负载, 避免 DR负 载过重。
而且, 本发明实施例可同时适用于 IPV4和 IPV6的应用场景。
本领域普通技术人员可以理解,实现上述实施例的方法的过程可以通过程 序指令相关的硬件来完成, 上述的程序可以存储于可读取存储介质中, 该程序 在执行时执行上述方法中的对应步骤。 上述的存储介质可以如: ROM/RAM、 磁碟、 光盘等。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通 技术人员来说, 在不脱离本发明原理的前提下, 还可以做出若干改进和润饰, 这些改进和润饰也应视为本发明的保护范围。

Claims

OP081022 - 14- 权 利 要 求
1、 一种实现组播负载分担的方法, 其特征在于, 包括:
确定路由器和组播组集合的对应关系 ,所述组播组集合包括至少一个组播 组;
5 根据所述对应关系, 选择所述组播组集合对应的路由器作为指定路由器, 由所述指定路由器处理所述组播组集合的组播业务。
2、 根据权利要求 1所述方法, 其特征在于, 所述路由器和组播组集合的 对应关系是通过静态配置, 或者, 通过实时解析的组播协议报文, 配置路由器 和组播组集合的对应关系。
10 3、 根据权利要求 2所述方法, 其特征在于, 当所述路由器和组播组集合 的对应关系是通过实时解析的组播协议报文配置时,在所述确定路由器和组播 组集合的对应关系之前, 所述方法还包括:
接收组播协议报文, 所述组播协议报文携带有组播组地址;
利用所述组播组地址和映射表进行匹配 ,所述映射表包含组播组地址和路 15 由器接口地址的对应关系。
4、 根据权利要求 3所述方法, 其特征在于, 所述映射表还包括以下信息 中的至少一个: 路由器服务优先级、 源 /汇聚点 RP地址。
5、 根据权利要求 3或 4所述方法, 其特征在于, 所述根据所述对应关系, 选择所述组播组集合对应的路由器作为指定路由器具体为:
20 若利用所述组播组地址和映射表进行匹配, 没有匹配表项, 选择默认的路 由器作为所述指定路由器;
若利用所述组播组地址和映射表进行匹配,有一条匹配表项,选择所述匹 配表项中的路由器为所述指定路由器;
若利用所述组播组地址和映射表进行匹配,有至少两条匹配表项, 至少根 25 据所述匹配表项中的组播组地址和路由器接口地址, 选择所述指定路由器。
6、 根据权利要求 5所述方法, 其特征在于, 所述至少根据所述匹配表项 中的组播组地址和路由器接口地址, 选择所述指定路由器, 具体为:
至少根据所述匹配表项中的组播组地址和路由器接口地址计算出匹配项 值; OP081022
- 15- 选择匹配项值最大的匹配表项中的路由器作为所述指定路由器。
7、 根据权利要求 3所述方法, 其特征在于, 所述映射表是预先设置的, 或者,
接收路由器发送的扩展协议无关组播握手 PIM Hello报文, 所述扩展 PIM 5 Hello报文携带发送方路由器所服务的组播组地址;
利用所述扩展 PIM Hello报文中的组播组地址以及发送方路由器接口地址 建立所述映射表。
8、 根据权利要求 1所述方法, 其特征在于, 还包括:
所述指定路由器在确定组播源端、接收端或汇聚点不可达时, 向邻居路由 10 器发送服务取消报文;
如果仅一个路由器接收到所述服务取消报文,则将该路由器设置为新的指 定路由器;
如果至少两个路由器接收到所述服务取消报文,则从所述至少两个路由器 中选取出一个路由器作为新的指定路由器。
15 9、 一种实现组播负载分担的装置, 其特征在于, 包括:
对应关系确定单元, 用于确定各路由器与组播组集合的对应关系, 所述组 播组集合包括至少一个组播组;
指定路由器执行单元,用于作为所述装置对应的组播组集合的指定路由器 处理所述组播组集合的组播业务。
20 10、 根据权利要求 9所述装置, 其特征在于, 当所述对应关系是通过实时 解析的组播协议报文配置时, 所述装置还包括:
组播协议报文接收解析单元, 用于接收组播协议报文, 并获取所述组播协 议 4艮文中携带的组播组地址;
映射表匹配单元, 用于利用所述组播组地址和预置的映射表进行匹配, 所 25 述映射表包含组播组地址和路由器接口地址的对应关系;
指定路由器确定单元,用于根据匹配结果确定与所述组播协议报文所属的 所述组播组集合对应的路由器为所述指定路由器。 OP081022
- 16-
11、 根据权利要求 10所述装置, 其特征在于, 所述指定路由器确定单元, 用于根据匹配结果确定与所述组播协议报文所属的所述组播组集合对应的路 由器为所述指定路由器, 具体包括:
没有匹配表项时, 选择默认的路由器作为所述指定路由器;
5 有一条匹配表项时, 选择所述匹配表项中的路由器作为所述指定路由器; 有至少两条匹配表项时,至少根据所述匹配表项中的组播组地址和路由器 接口地址, 选择所述指定路由器。
12、 根据权利要求 9-11中任一项所述装置, 其特征在于, 还包括: 服务取消报文发送单元, 用于在所述装置作为指定路由器并确定组播源
10 端、 接收端或汇聚点不可达时, 向邻居路由器发送服务取消报文;
服务取消报文接收单元, 用于接收当前指定路由器发送的服务取消报文; 指定路由器重选单元,用于在所述服务取消报文接收单元接收到服务取消 报文时, 启动所述装置为指定路由器。
13、 一种实现组播负载分担的装置, 其特征在于, 包括:
15 确定单元, 用于确定各路由器与组播组集合的对应关系, 所述组播组集合 包括至少一个组播组;
选择单元, 用于根据所述确定单元确定的对应关系,选择组播组集合对应 的路由器作为指定路由器。
14、 根据权利要求 13所述的装置, 其特征在于, 所述装置还包括:
20 接收单元, 用于接收组播协议报文, 并解析所述组播协议报文获取所述组 播协议报文中携带的组播组地址;
匹配单元,用于根据所述接收单元获取的所述组播组地址和映射表进行匹 配, 所述映射表包含组播组地址和路由器接口地址的对应关系;
此时, 所述确定单元, 用于确定所述匹配单元得到的对应关系。
PCT/CN2009/072145 2008-08-14 2009-06-05 实现组播负载分担的方法及装置 WO2010017720A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN200810146259.1 2008-08-14
CN200810146259A CN101651609A (zh) 2008-08-14 2008-08-14 实现组播负载分担的方法及装置

Publications (1)

Publication Number Publication Date
WO2010017720A1 true WO2010017720A1 (zh) 2010-02-18

Family

ID=41668672

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2009/072145 WO2010017720A1 (zh) 2008-08-14 2009-06-05 实现组播负载分担的方法及装置

Country Status (2)

Country Link
CN (1) CN101651609A (zh)
WO (1) WO2010017720A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101841485B (zh) * 2010-05-28 2013-04-24 华为技术有限公司 组播流量分担的方法及相关装置
CN103117935B (zh) * 2013-02-28 2016-02-17 杭州华三通信技术有限公司 应用于多归属组网的组播数据转发方法和装置
CN103354524B (zh) * 2013-07-03 2016-08-10 杭州华三通信技术有限公司 一种基于pim-ssm的实现三层组播按需选路的方法和设备
CN103501272B (zh) * 2013-09-18 2017-06-23 新华三技术有限公司 一种组播流量转发方法及设备
CN104468147B (zh) * 2014-12-11 2018-05-18 北京华为数字技术有限公司 一种负载均衡方法及装置
CN106034078B (zh) 2015-03-19 2020-05-05 中兴通讯股份有限公司 一种减少pim协议dr变化的方法及系统
WO2017201750A1 (zh) * 2016-05-27 2017-11-30 华为技术有限公司 组播数据处理方法、装置及系统
WO2018103073A1 (en) * 2016-12-09 2018-06-14 Telefonaktiebolaget Lm Ericsson (Publ) Method for electing dr from pim-sm routers and pim-sm router
CN109067647B (zh) * 2018-08-29 2021-03-02 新华三技术有限公司合肥分公司 路由信息维护方法及装置
CN110708230A (zh) * 2019-09-16 2020-01-17 中国联合网络通信集团有限公司 一种指定转发者选举方法和装置
CN112968836B (zh) * 2021-01-31 2022-05-27 新华三信息安全技术有限公司 跨设备聚合链路配置方法、装置、设备及可读存储介质
CN114827677B (zh) * 2022-03-08 2024-02-09 浙江微能科技有限公司 一种人工智能分析负载均衡方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1848807A (zh) * 2005-11-29 2006-10-18 华为技术有限公司 一种组播业务实现方法
CN1852249A (zh) * 2005-12-01 2006-10-25 华为技术有限公司 一种实现组播业务的方法
US20060268869A1 (en) * 2005-05-31 2006-11-30 Arjen Boers Designated router assginment per multicast group address/range
CN101035009A (zh) * 2007-03-31 2007-09-12 华为技术有限公司 一种组播流量冗余保护的方法及设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060268869A1 (en) * 2005-05-31 2006-11-30 Arjen Boers Designated router assginment per multicast group address/range
CN1848807A (zh) * 2005-11-29 2006-10-18 华为技术有限公司 一种组播业务实现方法
CN1852249A (zh) * 2005-12-01 2006-10-25 华为技术有限公司 一种实现组播业务的方法
CN101035009A (zh) * 2007-03-31 2007-09-12 华为技术有限公司 一种组播流量冗余保护的方法及设备

Also Published As

Publication number Publication date
CN101651609A (zh) 2010-02-17

Similar Documents

Publication Publication Date Title
WO2010017720A1 (zh) 实现组播负载分担的方法及装置
US10305696B2 (en) Group bundling priority dissemination through link-state routing protocol in a network environment
JP5581441B2 (ja) Bgpmac−vpnのmplsラベル割振りのための方法および装置
WO2018205982A1 (zh) 软件定义网络中广播、组播实现方法、装置及存储介质
US9160616B2 (en) Multicast packet transmission method, related device and system
WO2018214809A1 (zh) 消息发送方法及装置、存储介质
US11381883B2 (en) Dynamic designated forwarder election per multicast stream for EVPN all-active homing
US11509572B2 (en) Optimizing IP multicast delivery with use of local source nodes and the propagation of advertisements therefor
WO2021031648A1 (zh) Evpn和vpls共存双活的方法、设备及系统
WO2013076638A1 (en) Improved replication management for remote multicast replication network
WO2010075771A1 (zh) 一种组播虚拟私有网络的外联网组网方法、系统和装置
WO2008141555A1 (fr) Procédé, système et routeur pour sélection de route
WO2013107245A1 (zh) 在透明多链路互联(trill)网络中实现组播的方法、装置及系统
US11997004B2 (en) Reverse path forwarding RPF check method and apparatus
US11546267B2 (en) Method for determining designated forwarder (DF) of multicast flow, device, and system
WO2018014767A1 (zh) 一种信息确定方法、装置及存储介质
WO2020173340A1 (zh) 基于bier的双向转发检测会话创建方法及bfir、bfer、系统和存储介质
US20220272028A1 (en) Packet Forwarding Method, First Network Device, and First Device Group
WO2017201750A1 (zh) 组播数据处理方法、装置及系统
WO2012068854A1 (zh) 一种mac地址更新方法及装置
WO2022017432A1 (zh) 组播报文的发送方法、装置和系统
WO2014169856A1 (zh) 一种组播通信方法和汇聚交换机
WO2021184862A1 (zh) 一种报文发送方法、第一网络设备及网络系统
WO2010069174A1 (zh) 一种数据的传输方法、系统及装置
WO2012103748A1 (zh) 一种组播控制方法、路由设备及组播系统

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09806323

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09806323

Country of ref document: EP

Kind code of ref document: A1