WO2016177241A1 - 选举候备指定路由器及指定路由器故障处理的方法、设备 - Google Patents
选举候备指定路由器及指定路由器故障处理的方法、设备 Download PDFInfo
- Publication number
- WO2016177241A1 WO2016177241A1 PCT/CN2016/078488 CN2016078488W WO2016177241A1 WO 2016177241 A1 WO2016177241 A1 WO 2016177241A1 CN 2016078488 W CN2016078488 W CN 2016078488W WO 2016177241 A1 WO2016177241 A1 WO 2016177241A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- bdr
- subnet
- pim device
- election
- information
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
- H04L45/026—Details of "hello" or keep-alive messages
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/1863—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
Definitions
- This document relates to, but is not limited to, the network technology, especially the method of the protocol designation router (BDR) based on the protocol independent multicast (PIM) protocol, and the designation of the designated routers (DR). Method and corresponding equipment.
- BDR protocol designation router
- PIM protocol independent multicast
- a PIM device In a shared network such as an Ethernet subnet, a PIM device (also known as a PIM router) elects a DR based on a protocol-independent multicast protocol. Specifically, the PIM device defaults to the DR after the interface UP (a state specified in the protocol), and receives a Hello packet (a type of packet specified in the protocol) to perform DR election again to select a new DR.
- the packets that join or leave the group by the Internet Group Management Protocol (IGMP) or the Multicast Listener Discovery Protocol (MLD) are received by all devices on the network.
- the DR is responsible for the subnet. Users forward multicast traffic.
- IGMP Internet Group Management Protocol
- MLD Multicast Listener Discovery Protocol
- the subnet When the elected DR in the subnet fails, the subnet needs to re-elect the DR to forward traffic to the network.
- the process has the following delays: the time T1 at which the DR fault is detected; the time T2 at which the PIM join is sent to the DR device of the upstream aggregation node (RP, Rendesvous Point) or the directly connected source; and the time T3 at which the traffic is pushed to the new DR device.
- the user will drop the packet within the time delay of (T1+T2+T3) time range without considering the time when the device routing sends the forwarding plane. This delay is more pronounced in complex networking or capacity environments.
- the embodiment of the invention further provides a method for electing a candidate designated router, including:
- the PIM device elects a candidate designated router BDR in the subnet
- the PIM device saves the information of the BDR in the elected subnet.
- the method further includes: determining, by the PIM device, whether it is waiting for an election state Receive a Hello packet carrying the BDR information;
- the PIM device electing the candidate designated router BDR in the subnet includes: the PIM device elects the BDR in the subnet according to the agreed rule.
- the PIM device elects the BDR in the subnet according to the agreed rule.
- the PIM device elects the PIM device in the PIM device other than the designated router DR in the subnet as the BDR in the subnet.
- the Hello packet received and sent by the interface of the PIM device carries the DR priority option.
- the optimal PIM device refers to the only PIM device with the highest priority or the IP address of multiple PIM devices with the highest priority. The largest or smallest PIM device; or
- the at least one Hello packet received and sent by the interface of the PIM device does not carry the DR priority option; the optimal PIM device refers to the PIM device with the largest or smallest IP address.
- the PIM device When the PIM device waits for the election, the PIM device elects the candidate designated router BDR in the subnet, if the Hello message is received through the interface, and the Hello message carries the information of the BDR.
- the PIM device uses the BDR carried in the received Hello packet as the BDR of the election. .
- the interface of the PIM device enters the waiting for election state after being UP in the subnet, and starts a timer waiting for election;
- the device receives the Hello message and the Hello message carries the BDR information, enters the election state, stops the timer, and carries the BDR carried by the Hello packet. As a BDR for your own election.
- it also includes:
- the PIM device After the timer expires, the PIM device enters an election state, and the BDR in the subnet is elected according to the agreed rule.
- the timer time is greater than or equal to the neighbor's default keepalive time.
- the BDR information includes a legal unicast address of the BDR
- the received Hello message carries the BDR information, including: the received Hello message includes a BDR address option, and the value of the BDR address option is a legal unicast address.
- the method further includes:
- the PIM device does not elect a BDR in the waiting for election state, and sends a Hello packet carrying the BDR address option through the interface, and the value of the BDR address option is an agreed invalid value.
- the method further includes: after the PIM device enters an election state,
- the PIM device receives the Hello packet carrying the BDR address option through the interface, and the value of the BDR address option is an invalid value of the agreement, the Hello message carrying the BDR address option is sent through the interface, and the The value of the BDR address option is the legal unicast address of the BDR in the saved subnet.
- it also includes:
- the PIM device After the PIM device detects the BDR fault in the subnet, if the saved BDR information in the subnet is still the faulty BDR information, the BDR in the subnet is re-elected and the saved BDR is updated. Information about the BDR in the subnet.
- it also includes:
- the PIM device After entering the election state, the PIM device receives the Hello message through the interface, and the BDR information carried by the Hello message is different from the saved BDR information in the subnet.
- the BDR carried in the Hello packet is used as the BDR in the subnet that is re-elected, and the saved BDR information in the subnet is updated.
- the PIM device is a BDR in the subnet, re-elect the subnet according to the agreed rule. BDR in, and update the saved BDR information in the subnet.
- it also includes:
- the BDR in the subnet completes the preparation for forwarding the multicast traffic for the user but does not forward the multicast traffic through the interface.
- the DR in the subnet fails, the user forwards the DR. Multicast traffic and switch to DR in the subnet.
- it also includes:
- the PIM device After the PIM device saves the information of the BDR in the subnet or updates the information about the BDR in the subnet, the PIM device sends a Hello message through the interface, and carries the saved BDR in the subnet in the Hello message. Information.
- the PIM device elects the BDR in the subnet according to the agreed rule, including:
- the PIM device in the subnet After the PIM device enters the election state, the PIM device in the subnet, except the BDR, detects the DR failure of the subnet, and elects the BDR in the subnet that has been elected as the subnet. The DR in the middle, and re-elect the BDR in the subnet according to the agreed rule.
- the PIM device elects the BDR in the subnet according to the agreed rule, including:
- the PIM device When the PIM device does not support the BDR address option in the Hello packet and/or the BDR address option is not included in the at least one Hello packet received by the interface, the PIM device elects the DR in the subnet at the same time according to the agreement. The rule elects the BDR in the subnet.
- Embodiments of the present invention also provide a computer readable storage medium storing computer executable instructions for performing any of the methods described above.
- the embodiment of the present invention further provides a protocol-independent multicast PIM device, including:
- the election module is set to the candidate designated router BDR in the election subnet.
- a storage module configured to save information about the BDR in the subnet.
- the election module is set to:
- the child is elected according to the agreed rules. BDR in the network.
- the election module is configured to elect a BDR in a subnet according to the agreed rule in the following manner: electing an optimal PIM device in the PIM device except the designated router DR in the subnet, as the subnet BDR.
- it also includes:
- An interface module configured to receive and send a Hello message; the Hello message received and sent by the interface module carries a DR priority option;
- the election module is configured to: elect the following PIM device as a BDR in the subnet:
- the Hello packets received and sent by the interface module all carry the DR priority option.
- At least one PIM device received or sent by the interface module does not carry a DR priority option; the PIM device with the largest or smallest IP address.
- the election module is further configured to:
- the interface module receives the Hello packet and the Hello packet carries the BDR information, the BDR carried in the Hello packet is used as the BDR of the election.
- the election module is set to:
- the interface module If the interface module receives the Hello message and the Hello message carries the information of the BDR, the interface enters the election state, stops the timer, and uses the BDR as the BDR of the election.
- the election module is configured to implement the election according to the agreed rules in the subnet.
- the Hello packet carrying the BDR information is not received in the election state, and the candidate designated router BDR in the subnet is elected according to the agreed rule.
- the BDR information includes a legal unicast address of the BDR
- the election module is configured to determine that the Hello message received by the interface module carries the BDR information in the following manner: the received Hello message includes a BDR address option, and the value of the BDR address option is a legal unicast address.
- the interface module is configured to send a Hello packet in the following manner: the BDR is not elected, the Hello message carrying the BDR address option is sent, and the value of the BDR address option is an agreed invalid value.
- the interface module is further configured to: after receiving the election status, if the Hello message carrying the BDR address option is received and the value of the BDR address option is an invalid value, the Hello message carrying the BDR address option is sent.
- the value of the BDR address option is a valid unicast address of the BDR in the saved subnet.
- the PIM device further includes: a detecting module, configured to detect a BDR fault in the subnet;
- the election module is further configured to: after the entering the election state, if the detecting module detects the BDR fault in the subnet, and the saved BDR information in the subnet is still the faulty BDR information, Re-electing the BDR in the subnet according to the agreed rule, and notifying the storage module to update the saved information of the BDR in the subnet.
- the election module is further configured to: after the election state is entered, the interface module receives the Hello message, and the information of the BDR carried in the Hello message is different from the BDR in the subnet saved by the storage module. Information:
- the BDR carried in the Hello packet is used as the BDR in the subnet that is re-elected, and the BDR in the subnet saved by the storage module is updated.
- the BDR in the subnet is re-elected according to the agreement rule, and the BDR information in the subnet saved by the storage module is updated.
- the BDR in the subnet completes the preparation for forwarding the multicast traffic for the user but does not forward the multicast traffic through the interface.
- the DR in the subnet fails, the user forwards the DR. Multicast traffic and switch to DR in the subnet.
- the interface module is further configured to: after saving the BDR information in the subnet or updating the saved information of the BDR in the subnet, sending a Hello packet, where the Hello packet is carried in the Hello packet. Information about the BDR in the subnet.
- the election module is further configured to: when the DR fault of the subnet is detected and the PIM device is not the BDR in the subnet, the BDR in the subnet that has been elected is elected as the subnet. DR, and re-elect the BDR in the subnet according to the agreed rules.
- the election module is configured to elect a BDR in the subnet according to the agreed rule in the following manner: the interface module does not support the BDR address option in the Hello message and/or is received by the interface module. When the BDR address option is not included in the Hello packet, the election module elects the DR in the subnet according to the agreed rule while electing the DR in the subnet.
- the election module is also used to:
- the election state is entered, and the BDR in the subnet is elected according to the agreed rules.
- the timing of the timer is greater than or equal to a default keepalive time of the neighbor.
- the above solution can elect a BDR in a subnet to implement a DR group failure in the subnet.
- the fast recovery of the broadcast traffic forwarding, and the BDR information can be carried in the Hello packet, so that the new PIM device does not cause the BDR device to switch, which is beneficial to the performance of the network.
- the embodiment of the invention provides a method for DR fault processing, including:
- the BDR in the subnet completes the preparation for forwarding multicast traffic for the user but does not forward multicast traffic through the interface.
- the BDR When the BDR detects that the subnet has a DR fault, it automatically switches to the DR of the subnet and forwards the multicast traffic to the user through the interface.
- the BDR in the subnet is elected or re-elected by the method of BDR in the election subnet as described below.
- the BDR is completed for the user to forward multicast traffic, including: introducing multicast traffic and establishing a forwarding route to the user.
- Embodiments of the present invention also provide a computer readable storage medium storing computer executable instructions for performing any of the methods described above.
- the embodiment of the invention further provides a candidate designated router, including:
- the preparation module is configured to complete the preparation for forwarding the multicast traffic for the user but not to forward the multicast traffic through the interface when there is a user joining in the subnet;
- the switching module is configured to switch to a designated router of the subnet and forward the multicast traffic to the user through the interface when detecting that the designated router fails in the subnet.
- the candidate designated routers are elected or re-elected according to the method of electing BDRs in the subnet as described below.
- the preparation module is configured to complete the preparation of forwarding multicast traffic for the user in the following manner: introducing multicast traffic and establishing a forwarding route to the user.
- the foregoing solution introduces the user's multicast traffic by selecting the BDR in advance.
- the BDR detects the DR fault and immediately forwards traffic to the users in the subnet. This greatly reduces the network packet loss caused by the DR fault. This is a useful supplement to the standard.
- FIG. 1 is a flowchart of a method for DR fault processing according to Embodiment 1 of the present invention
- FIG. 2 is a block diagram of a BDR according to Embodiment 1 of the present invention.
- FIG. 3 is a flowchart of a method for electing a BDR according to Embodiment 2 of the present invention.
- FIG. 4 is a block diagram of a PIM device according to Embodiment 2 of the present invention.
- FIG. 5 is a structural diagram of a BDR address option of a Hello packet in an application example of the present invention.
- FIG. 6 is a schematic diagram of an application example multicast network topology according to the present invention.
- the BDR is selected in advance and the multicast traffic is forwarded to the BDR.
- the BDR detects the DR fault and immediately forwards the traffic to the users in the subnet, thereby reducing the DR fault. Network packet loss.
- the method for DR fault processing in this embodiment includes:
- Step 110 When a user joins, the BDR in the subnet completes the preparation for forwarding the multicast traffic for the user but does not forward the multicast traffic through the interface.
- the BDR preparation for forwarding the multicast traffic to the user includes: introducing multicast traffic and establishing a forwarding route to the user. Specifically, when the user joins (Local Membership).
- the BDR can complete the preparation for forwarding the multicast traffic for the user according to the DR behavior specified by the protocol (as specified in RFC4601), and direct the multicast traffic and establish a forwarding route to the user in the routing table but not forward the multicast on the interface. Traffic is forwarded immediately after the DR fault is detected.
- Step 120 When the BDR detects that the subnet has a DR fault, it automatically switches to the sub-port. The DR of the network forwards multicast traffic to the user through the interface.
- the BDR of this embodiment is as shown in FIG. 2, and includes:
- the preparation module 10 is configured to complete the preparation for forwarding the multicast traffic for the user but not to forward the multicast traffic through the interface when there is a user joining in the subnet;
- the switching module 20 is configured to automatically switch to the designated router of the subnet and forward the multicast traffic to the user through the interface when detecting that the designated router fails in the subnet.
- the preparation module is configured to complete the preparation of forwarding multicast traffic for the user in the following manner: introducing multicast traffic and establishing a forwarding route to the user. Specifically, the preparation for forwarding the multicast traffic for the user may be completed according to the same behavior as the designated router specified in the protocol.
- the fault recovery method of the first embodiment provides a solution for fast traffic recovery when the DR device fails.
- This embodiment provides a method for electing a BDR in a subnet, which can be used to select a BDR in the subnet of the first embodiment. As shown in FIG. 3, the method includes:
- Step 210 The PIM device elects a BDR in the subnet.
- the method further includes: determining, by the PIM device, whether to receive the Hello message carrying the BDR information while waiting for the election state;
- the PIM device elects the BDR in the subnet according to the agreed rules.
- the agreement rule may be specified in the corresponding protocol/standard.
- the PIM device elects the BDR in the subnet according to the agreed rule, and the PIM device elects the PIM device except the designated router DR in the subnet.
- the optimal PIM device acts as the BDR in the subnet (the BDR is elected at the same time as or after the election of the DR).
- the device in the subnet keeps the PIM interface itself and all the neighbors on the interface, and the hello packets sent carry the DR priority option.
- the optimal PIM device can be the only PIM device with the highest priority or the PIM device with the largest or smallest IP address among the PIM devices with the highest priority. If the at least one Hello packet received and sent by the interface of the PIM device does not carry the DR priority option, the PIM with the largest or smallest IP address may be used. The device acts as the optimal PIM device.
- the embodiment of the present invention is not limited to the above rules, and a rule that can select a single PIM device from multiple PIM devices included in a subnet can be used to elect a BDR.
- the interfaces mentioned in the text refer to the UP interface of the PIM device in the subnet mentioned in the text.
- Step 220 The PIM device saves the information of the BDR in the elected subnet.
- the BDR in the subnet completes the preparation for forwarding the multicast traffic but does not forward the multicast traffic through the interface.
- the DR in the subnet fails, the user immediately becomes the user. Forward multicast traffic and switch to DR in the subnet.
- the BDR elected according to the agreed rules may change, causing the BDR to be switched. This switching increases the network load and adversely affects the performance of the network. Therefore, the PIM device added to the example network learns the BDR by using the information of the BDR carried in the Hello packet sent by the other PIM device. That is, when a PIM device waits for an election (that is, has not elected a BDR), if the device receives the Hello message through the interface and the Hello message carries the BDR information, the BDR is used as the BDR of the election.
- An optional method is: after the interface of the PIM device is UP in the subnet, it enters the waiting for election state, and starts a timer waiting for election; in the waiting for election state, if the Hello packet is received through the interface, The Hello message carries the BDR information, that is, enters the election state, stops the timer, and uses the BDR carried in the Hello packet as the BDR of the election.
- the timing of the timer waiting for the election is, for example, the default keepalive time of the neighbor (see the standard RFC4601 section 4.11 Default_Hello_Holdtime description).
- the default is 105S.
- the invention is not limited thereto, and is also greater than the default keep alive time, or less than the default keep alive time.
- the PIM device If the PIM device does not receive the Hello message carrying the BDR information within the timer, for example, the PIM device is the first PIM device in the subnet, the PIM device enters the election after the timer expires. Status, the BDR in the subnet is elected according to the agreed rules.
- the BDR information includes a legal unicast address (ie, a unicast IP address) of the BDR.
- the BDR information can be carried in the BDR address option added to the Hello packet. If the received Hello packet contains the BDR address option and the value of the BDR address option is a legal unicast address,
- the received Hello message carries the information of the BDR.
- the PIM device can set the value of the BDR address option to the agreed invalid value when the interface sends the Hello message carrying the BDR address option. , such as null or 0 value.
- the PIM device receives the Hello message carrying the BDR address option through the interface, and the value of the BDR address option is an invalid value of the agreement, it is known that the neighbor interface is in the waiting for election state, and may be sent through the interface.
- a Hello packet carrying the BDR address option, and the value of the BDR address option is a legal unicast address of the BDR in the saved subnet.
- An exemplary Hello message BDR option is shown in Figure 5, including:
- Type (Type) This embodiment of the present invention is not limited to this, and may be any one of the types of Hello message options (36-65535);
- BDR Address The unicast address encoding format (Encoded-Unicast format) specified in the standard RFC4601 4.9.1.
- the unicast address encoding format fields include: an address family (Addr Family), an encapsulation type (Encoding Type), and a unicast address (Unicast Address).
- An address family (Addr Family)
- an encapsulation type (Encoding Type)
- a unicast address (Unicast Address).
- the detailed explanation can be seen in the standard RFC4601 4.9.1.
- the value of the BDR address is 0.
- the address family field is filled in the address family.
- the encapsulation type field can be any value.
- the unicast address field is filled with 0.
- the BDR in the subnet that has been elected is elected as the DR in the subnet, and according to the agreed rule. Re-elect the BDR in the subnet.
- the PIM device detects a BDR failure in the subnet (such as a PIM device failure or a related link failure as a BDR)
- the saved BDR information in the subnet is still the faulty BDR information, according to the agreement.
- the rule re-elects the BDR in the subnet and updates the saved information of the BDR in the subnet. If you have learned a new BDR, you don't have to re-elect.
- the method further includes: after the PIM device saves the information of the BDR in the subnet or updates the information of the BDR in the saved subnet, the PIM device sends the Hello packet through the interface, and carries the Hello packet in the Hello packet.
- the information of the BDR in the saved subnet In the case of re-election or other circumstances, the PIM device receives the Hello message through the interface, and the information of the BDR carried in the Hello message is different from the information about the BDR in the subnet stored (referred to as locally saved). , can be handled as follows;
- the BDR carried in the Hello packet is used as the BDR in the subnet that is re-elected by itself, and the saved device is updated.
- the PIM device is a BDR in the subnet
- the BDR in the subnet is re-elected according to the agreed rule, and the saved BDR information in the subnet is updated.
- Embodiments of the present invention also provide a computer readable storage medium storing computer executable instructions for performing any of the methods described above.
- the protocol-independent multicast PIM device provided in this embodiment is as shown in FIG. 4, and includes:
- the election module 60 is configured to elect the BDR in the subnet according to the agreed rules.
- the storage module 70 is configured to save information of the BDR in the subnet.
- the election module is configured to: elect an PIM device that is optimal in the subnet except the designated router DR as a BDR in the subnet.
- it also includes:
- the interface module 50 is configured to receive and send a Hello message.
- the election module is configured to: elect the following PIM device as a BDR in the subnet;
- the Hello packets received and sent by the interface module all carry the DR priority option.
- the only PIM device with the highest priority or multiple PIM devices with the highest priority the only PIM device with the largest or smallest IP address; or
- the at least one PIM device received or sent by the interface module does not carry the DR priority option; among the PIM devices other than the DR in the subnet, the PIM device with the largest or smallest IP address.
- the election module is further configured to:
- the election module waits for the election state, and the interface module receives the Hello message and the If the Hello message carries the information of the BDR, the BDR is used as the BDR of the election.
- the election module is set to:
- the device After the interface module is UP in the subnet, the device enters the waiting for election state, and starts a timer for waiting for election.
- the timer may be greater than or equal to the default keepalive time of the neighbor;
- the interface module If the interface module receives the Hello message and the Hello message carries the information of the BDR, the interface enters the election state, stops the timer, and uses the BDR as the BDR of the election.
- the election module is also used to:
- the election state is entered, and the BDR in the subnet is elected according to the agreed rules.
- the election module is configured to implement the election of the BDR in the subnet according to the agreed rules in the following manner:
- the Hello packet carrying the BDR information is not received in the election state, and the candidate designated router BDR in the subnet is elected according to the agreed rule.
- the BDR information includes a legal unicast address of the BDR
- the election module is configured to determine that the Hello message received by the interface module carries the BDR information in the following manner: the received Hello message includes a BDR address option, and the value of the BDR address option is a legal unicast address.
- the election module of the interface module is configured to send a Hello message in the following manner: the BDR is not elected, the Hello message carrying the BDR address option is sent, and the value of the BDR address option is invalid. value.
- the interface module is further configured to: after receiving the election status, if the Hello message carrying the BDR address option is received and the value of the BDR address option is an invalid value, the Hello message carrying the BDR address option is sent.
- the value of the BDR address option is a valid unicast address of the BDR in the saved subnet.
- the PIM device further includes: a detecting module, configured to detect a BDR fault in the subnet;
- the election module is further configured to: after the entering the election state, if the detecting module detects the BDR fault in the subnet, and the saved BDR information in the subnet is still the faulty BDR information, Re-electing the BDR in the subnet according to the agreed rule, and notifying the storage module to update the saved information of the BDR in the subnet.
- the election module is further configured to: after the election state is entered, the interface module receives the Hello message, and the information of the BDR carried in the Hello message is different from the BDR in the subnet saved by the storage module. information:
- the BDR carried in the Hello packet is used as the BDR in the subnet that is re-elected, and the BDR in the subnet saved by the storage module is updated.
- the BDR in the subnet is re-elected according to the agreement rule, and the BDR information in the subnet saved by the storage module is updated.
- the BDR in the subnet completes the preparation for forwarding the multicast traffic but does not forward the multicast traffic through the interface.
- the DR in the subnet fails, the user immediately becomes the user. Forward multicast traffic and switch to DR in the subnet.
- the election module is further configured to: when the DR fault of the subnet is detected and the PIM device is not the BDR in the subnet, the BDR in the subnet that has been elected is elected as the subnet. DR, and re-elect the BDR in the subnet according to the agreed rules.
- the interface module is further configured to: after saving the BDR information in the subnet or updating the saved information of the BDR in the subnet, sending a Hello packet, where the Hello packet is carried in the Hello packet. Information about the BDR in the subnet.
- the election module is configured to elect a BDR in the subnet according to the agreed rule in the following manner: the interface module does not support the BDR address option in the Hello message and/or is received by the interface module. When the BDR address option is not included in the Hello packet, the election module elects the DR in the subnet according to the agreed rule while electing the DR in the subnet.
- the PIM device may be elected in the subnet.
- the BDR in the subnet is elected according to the agreed rules.
- the method of electing a DR in a subnet may be in accordance with the provisions of the protocol, or may be other methods.
- the multicast network topology of this application example is shown in Figure 6.
- the timing is as follows:
- the timer of the PIM device R1 waiting for election expires.
- the PIM device R1 interface is 1DOWN.
- PIM device R3 is better than PIM device R1;
- PIM device R1 is better than PIM device R2.
- Event E1 Interface UP. This refers to the interface of the PIM device UP and a legal IP address. After the event E1 is triggered, the PIM device enters the waiting for election state (also referred to as "waiting state"), and simultaneously starts a timer for waiting state.
- the waiting for election state also referred to as "waiting state”
- Event E2 The interface receives a Hello packet carrying the BDR address option and the BDR address is 0. After the event E2 is triggered, the original state (waiting for the election state or the election state) is maintained. If the interface is in the election state, the saved BDR address is sent through the Hello packet.
- Event E3 The interface receives a Hello packet carrying the BDR address option and the BDR address is a legal unicast address. After the event is triggered, the event E3 is triggered, and the BDR of the received Hello message is used as the BDR of the election. In the election state, after the event E3 is triggered, if the PIM device is not a BDR, the BDR of the received Hello packet is used as the BDR of the re-election. The saved BDR address is updated to the BDR carried by the received Hello packet. Address; if the PIM device is a BDR, re-elect the BDR in the subnet, and update the saved BDR address if the BDR changes.
- Event E4 The wait state timer of the interface times out. After event E4 is triggered, the interface enters the election state and conducts BDR elections according to the agreed rules.
- Event E5 Interface DOWN. This indicates that the interface IP address is invalid or the interface is Down. After event E5 is triggered, the interface enters the initialization state.
- the Hello packet sent by the PIM device in the waiting state is a Hello packet carrying the BDR address option and the BDR address being 0.
- the Hello packet is a Hello packet carrying the BDR address and the BDR address is a legal unicast address. After the BDR address is saved or the saved BDR address is saved, the Hello packet carrying the BDR address can be sent.
- the PIM device in the subnet elects the DR
- the DR information can be learned by using the Hello message to learn the DR.
- the PIM device can also start a timer waiting for the election DR after the interface is Up.
- the timer for waiting for the election of the BDR and the timer for waiting for the election of the DR may be the same timer or different.
- Step 7.1 The PIM device is connected to the R1 interface, and the event E1 is triggered. The device waits for the election. The timer is enabled and the Hello timer is sent. The Hello packet carries the BDR. Address option and BDR address is 0. At this time, no BDR elections will be held.
- Step 7.2 The PIM device R2 interface 2UP triggers the event E1, which is the same as the action when the PIM device R1 interface 1UP is used in step 7.1.
- Step 7.3 The RIM interface 1 of the PIM device receives the Hello packet from the interface 2 of the PIM device, and finds that the address of the BDR address option is 0 and the device is in the waiting state. The event E2 is triggered. The PIM neighbor relationship is established normally. BDR elections.
- Step 7.4 The timer of the PIM device R1 is timed out, the event E4 is triggered, and the PIM device R1 enters the election state.
- the PIM device R1 is the DR of the LAN1
- the PIM device R2 is the BDR of the LAN1, and then a Hello carrying the R2 address of the PIM device is sent. Message.
- Step 7.5 The RIM interface 2 of the PIM device receives the Hello packet from the interface 1 of the PIM device, triggers the event E3, enters the BDR election state, and uses the BDR carried in the received Hello packet as the BDR of the election and saves the BDR address. That is, the address of the PIM device, and a Hello packet carrying the R2 address of the PIM device.
- Step 7.6 After the BDR is elected, the PIM device R2, which is the BDR, processes the IGMP or MLD user join according to the DR processing method in the RFC4601 protocol, and the traffic is directed to the device and the forwarding route to the user is established, but the interface 2 is not forwarded to the user. Multicast traffic.
- Step 7.7 The PIM device R3 interface 3UP triggers the event E1, and the action is the same as the PIM device R1 interface 1UP in step 7.1.
- Step 7.8 The PIM device R1 interface 1 and the PIM device R2 interface 2 receive the Hello packet from the P3 device R3 interface 3, and the device sends a Hello packet carrying the R2 address of the PIM device.
- Step 7.9 The PIM device R3 interface 3 receives the Hello packet sent by the PIM device R1 interface 1 or the PIM device R2 interface 2, triggering event E3, and the action is the same as step 7.5.
- the BDR in LAN1 is still PIM device R2.
- Step 7.10 The PIM device R1 interface is 1 DOWN, and the PIM device R2 interface 2 is quickly detected by means of detection means such as Bi-directional Forwarding Detection (BFD).
- BFD Bi-directional Forwarding Detection
- the P2 device R2 interface 2 immediately becomes the forwarding state to forward multicast traffic.
- the PIM device R2 that is the BDR is switched to the DR of the LAN1, and the PIM device R3 interface 3 is elected as the BDR.
- the PIM device R3 also elects the PIM device R2 interface 2 as the DR and becomes the BDR itself.
- the network settings and steps 7.1 to 7.9 are the same as the above application examples.
- the flow is as follows:
- Step 7.10 The RIM interface of the PIM device is 2 DOWN, and the event E5 is triggered.
- the Hello message with the keepalive time of 0 is sent according to the PIM protocol.
- Step 7.11 After the PIM device R1 interface 1 and the PIM device R3 interface 3 receive the Hello packet sent by the PIM device R2 interface 2, the device will perform the BDR election again, and the device other than the DR (the PIM device R3) The device is elected as the BDR and sends a Hello packet carrying the R3 address of the PIM device.
- serial numbers of the embodiments of the present invention are merely for the description, and do not represent the advantages and disadvantages of the embodiments.
- the foregoing embodiment method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be through hardware, but in many cases, the former is better.
- the technical solution of the embodiments of the present invention may be embodied in the form of a software product in essence or in the form of a software product stored in a storage medium (such as ROM/RAM, magnetic).
- the disc, the optical disc includes a number of instructions for causing a terminal device (which may be a mobile phone, a computer, a server, or a network device, etc.) to perform the methods described in various embodiments of the present invention.
- each module/unit in the foregoing embodiment may be implemented in the form of hardware, for example, by implementing an integrated circuit to implement its corresponding function, or may be implemented in the form of a software function module, for example, executing a program in a storage and a memory by a processor. / instruction to achieve its corresponding function.
- the invention is not limited to any specific form of combination of hardware and software.
- the above technical solution implements a fast reply of the user multicast traffic forwarding when the DR is faulty in the subnet. Further, when the new PIM device is added, the BDR device does not switch, which is beneficial to the performance of the network.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
一种选举BDR及DR故障处理的方法、设备,子网中的候选指定路由器BDR在有用户加入时,完成为所述用户转发组播流量的准备但不通过接口转发组播流量;所述BDR检测到所述子网发生DR故障时,即切换为所述子网的DR并通过接口为所述用户转发组播流量。
Description
本文涉及但不限于网络技术,尤指一种基于协议无关组播(Protocol Independent Multicast,PIM)协议的选举候选指定路由器(BDR,Backup Designated Routers)的方法、指定路由器(Designated Routers,DR)故障处理的方法及相应的设备。
在一个共享网络如以太网络的子网中,PIM设备(也可称为PIM路由器)基于协议无关组播协议选举出DR。具体地,PIM设备在接口UP(协议中规定的一种状态)后默认自己是DR,收到Hello报文(协议中规定的一种报文)重新进行DR选举,以选出新的DR。因特网组管理协议(IGMP,Internet Group Management Protocol)或组播侦听发现协议(MLD,Multicast Listener Discover)用户加入或离开组的报文会被网络中所有设备都收到,DR负责向子网中的用户转发组播流量。
当子网中当选DR出故障时,子网中需要重新选举DR向网络中转发流量。这个过程有以下延时:检测到DR故障的时间T1;向上游汇聚节点(RP,Rendesvous Point)或直连源的DR设备发送PIM加入的时间T2;流量推送到新的DR设备的时间T3。在不考虑设备路由下发转发面的时间的情况下,用户会在(T1+T2+T3)时间范围内的时延内丢包。在复杂组网或容量环境里,这个时延表现的更为明显。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本发明实施例还提供了一种选举候选指定路由器的方法,包括:
所述PIM设备选举子网中的候选指定路由器BDR;
所述PIM设备保存选举出的所述子网中BDR的信息。
可选的,该方法之前还包括:所述PIM设备在等待选举状态下确定是否
接收到携带BDR的信息的Hello报文;
如果未接收到携带BDR的信息的Hello报文,所述PIM设备选举所述子网中的候选指定路由器BDR包括:所述PIM设备根据约定规则选举所述子网中的BDR。
可选地,
PIM设备根据约定规则选举所述子网中的BDR包括:PIM设备选举所述子网中除指定路由器DR之外的PIM设备中最优的PIM设备,作为所述子网中的BDR。
可选地,
所述PIM设备的接口接收和发送的Hello报文均携带DR优先级选项;所述最优的PIM设备是指优先级最高的唯一一个PIM设备,或优先级最高的多个PIM设备中IP地址最大或最小的PIM设备;或者
所述PIM设备的接口接收和发送的至少一Hello报文不携带DR优先级选项;所述最优的PIM设备是指IP地址最大或最小的PIM设备。
可选地,
所述PIM设备在等待选举状态下,如通过接口接收到Hello报文且所述Hello报文携带BDR的信息,则PIM设备选举所述子网中的候选指定路由器BDR包括:
所述PIM设备将接收到的Hello报文中携带的BDR作为自己选举的BDR。。
可选地,
所述PIM设备的接口在子网中UP之后进入所述等待选举状态,启动一等待选举的定时器;
所述PIM设备在等待选举状态下,如通过所述接口接收到Hello报文且所述Hello报文携带BDR的信息,进入选举状态,停止所述定时器,将所述Hello报文携带的BDR作为自己选举的BDR。
可选的,还包括:
所述PIM设备在所述定时器超时后,进入选举状态,根据约定规则选举所述子网中的BDR。
可选的,定时器的定时时间大于或等于邻居的默认保活时间。
可选地,
所述BDR的信息包括BDR的合法单播地址;
所述接收到的Hello报文携带BDR的信息,包括:接收到的Hello报文中包含BDR地址选项且所述BDR地址选项的值为合法单播地址。
可选地,
所述方法还包括:
所述PIM设备在等待选举状态下还没有选举出BDR,通过所述接口发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值。
可选地,
还包括:所述PIM设备进入选举状态之后,
如果所述PIM设备通过所述接口接收到携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值,则通过所述接口发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为保存的所述子网中BDR的合法单播地址。
可选地,还包括:
所述PIM设备检测到所述子网中的BDR故障后,如保存的所述子网中BDR的信息仍为故障的BDR的信息,则重新选举所述子网中的BDR,并更新保存的所述子网中BDR的信息。
可选地,还包括:
在进入选举状态后,所述PIM设备如通过所述接口接收到Hello报文且所述Hello报文携带的BDR的信息不同于保存的所述子网中BDR的信息;
如PIM设备非所述子网中的BDR,将所述Hello报文携带的BDR作为自己重新选举的所述子网中的BDR,并更新保存的所述子网中BDR的信息;
如PIM设备为所述子网中的BDR,根据所述约定规则重新选举所述子网
中的BDR,并更新保存的所述子网中BDR的信息。
可选地,还包括:
所述子网中的BDR在所述子网中的DR正常时,完成为用户转发组播流量的准备但不通过接口转发组播流量,在所述子网中的DR故障时,为用户转发组播流量,并切换为所述子网中的DR。
可选地,还包括:
所述PIM设备保存所述子网中BDR的信息或更新保存的所述子网中BDR的信息之后,通过接口发送Hello报文,在所述Hello报文中携带保存的所述子网中BDR的信息。
可选地,
所述PIM设备根据约定规则选举所述子网中的BDR,包括:
在所述PIM设备进入选举状态后,所述子网中除BDR之外的PIM设备检测到所述子网的DR故障时,将已选举的所述子网中的BDR选举为所述子网中的DR,并根据所述约定规则重新选举所述子网中的BDR。
可选地,
所述PIM设备根据约定规则选举所述子网中的BDR,包括:
所述PIM设备不支持在Hello报文中携带BDR地址选项和/或通过接口接收到的至少一Hello报文中不包括BDR地址选项时,在选举所述子网中的DR的同时,根据约定规则选举所述子网中的BDR。
本发明实施例还提出了一种计算机可读存储介质,存储有计算机可执行指令,计算机可执行指令用于执行上述描述的任意一个方法。
相应地,本发明实施例还提供了一种协议无关组播PIM设备,包括:
选举模块,设置为选举子网中的候选指定路由器BDR。
存储模块,设置为保存所述子网中BDR的信息。
可选的,选举模块是设置为:
在等待选举状态下确定是否接收到携带BDR的信息的Hello报文;
如果未接收到携带BDR的信息的Hello报文,根据约定规则选举所述子
网中的BDR。
可选地,
所述选举模块是设置为采用以下方式实现根据约定规则选举子网中的BDR:选举所述子网中除指定路由器DR之外的PIM设备中最优的PIM设备,作为所述子网中的BDR。
可选地,还包括:
接口模块,用于接收和发送Hello报文;所述接口模块接收和发送的Hello报文均携带DR优先级选项;
所述选举模块是设置为:选举以下的PIM设备作为子网中的BDR:
所述接口模块接收和发送的Hello报文均携带DR优先级选项;
优先级最高的唯一一个PIM设备,或优先级最高的多个PIM设备中IP地址最大或最小的PIM设备;或者
所述接口模块接收或发送的至少一PIM设备不携带DR优先级选项;IP地址最大或最小的PIM设备。
可选地,
所述选举模块还设置为:
在等待选举状态下,如所述接口模块接收到Hello报文且所述Hello报文携带BDR的信息,则将所述Hello报文携带的BDR作为自己选举的BDR。
可选地,
所述选举模块是设置为:
在所述接口模块在子网中UP之后进入所述等待选举状态,启动一等待选举的定时器;
在等待选举状态下,如所述接口模块接收到Hello报文且所述Hello报文携带BDR的信息,进入选举状态,停止所述定时器,将所述BDR作为自己选举的BDR。
可选地,
所述选举模块是设置为采用以下方式实现根据约定规则选举所述子网中
的BDR:
在等待选举状态下未接收到携带BDR的信息的Hello报文,根据约定规则选举所述子网中的候选指定路由器BDR。
可选地,
所述BDR的信息包括BDR的合法单播地址;
所述选举模块是设置为采用以下方式实现判断所述接口模块接收到的Hello报文携带BDR的信息:接收到的Hello报文中包含BDR地址选项且所述BDR地址选项的值为合法单播地址。
可选地,
所述接口模块是设置为采用以下方式实现发送Hello报文:在等待选举状态下还没有选举出BDR,发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值。
可选地,
所述接口模块还设置为:在进入选举状态之后,如接收到携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值,则发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为保存的所述子网中BDR的合法单播地址。
可选地,
所述PIM设备还包括:检测模块,设置为检测所述子网中的BDR故障;
所述选举模块还设置为:在进入选举状态后,如所述检测模块检测到所述子网中的BDR故障,且保存的所述子网中BDR的信息仍为故障的BDR的信息,则根据约定规则重新选举所述子网中的BDR,并通知存储模块更新保存的所述子网中BDR的信息。
可选地,
所述选举模块还设置为:在进入选举状态后,如所述接口模块接收到Hello报文且所述Hello报文携带的BDR的信息不同于所述存储模块保存的所述子网中BDR的信息:
在本PIM设备非所述子网中的BDR时,将所述Hello报文携带的BDR作为自己重新选举的所述子网中的BDR,并更新所述存储模块保存的所述子网中BDR的信息;
在本PIM设备为所述子网中的BDR时,根据所述约定规则重新选举所述子网中的BDR,并更新所述存储模块保存的所述子网中BDR的信息。
可选地,
所述子网中的BDR在所述子网中的DR正常时,完成为用户转发组播流量的准备但不通过接口转发组播流量,在所述子网中的DR故障时,为用户转发组播流量,并切换为所述子网中的DR。
可选地,
所述接口模块还设置为:在保存所述子网中BDR的信息或更新保存的所述子网中BDR的信息之后,发送Hello报文,在所述Hello报文中携带所述存储模块保存的所述子网中BDR的信息。
可选地,
所述选举模块还设置为:在检测到所述子网的DR故障且本PIM设备非所述子网中的BDR时,将已选举的所述子网中的BDR选举为所述子网中的DR,并根据所述约定规则重新选举所述子网中的BDR。
可选地,
所述选举模块是设置为采用以下方式实现根据约定规则选举所述子网中的BDR:在所述接口模块不支持在Hello报文中携带BDR地址选项和/或通过所述接口模块接收到的Hello报文中不包括BDR地址选项时,所述选举模块在选举所述子网中的DR的同时,根据约定规则选举所述子网中的BDR。
可选的,选举模块还用于:
在所述定时器超时后,进入选举状态,根据约定规则选举所述子网中的BDR。
可选地,所述定时器的定时时间大于或等于邻居的默认保活时间。
上述方案可以选举出子网中的BDR,实现了子网中的DR故障时用户组
播流量转发的快速恢复,并且,还可以通过在Hello报文中携带BDR的信息,使得新加入PIM设备时不会导致BDR设备的切换,有利于网络的性能。
本发明实施例提供了一种DR故障处理的方法,包括:
子网中的BDR在有用户加入时,完成为所述用户转发组播流量的准备但不通过接口转发组播流量;
所述BDR检测到所述子网发生DR故障时,自动切换为所述子网的DR并通过接口为所述用户转发组播流量。
可选地,
所述子网中的BDR是如下文所述的选举子网中BDR的方法选举或重新选举的。
可选地,
所述BDR完成为所述用户转发组播流量的准备,包括:引入组播流量和建立到用户的转发路由。
本发明实施例还提出了一种计算机可读存储介质,存储有计算机可执行指令,计算机可执行指令用于执行上述描述的任意一个方法。
本发明实施例还提供了一种候选指定路由器,包括:
准备模块,设置为在子网中有用户加入时,完成为所述用户转发组播流量的准备但不通过接口转发组播流量;
切换模块,设置为在检测到所述子网发生指定路由器故障时,切换为所述子网的指定路由器并通过接口为所述用户转发组播流量。
可选地,
所述候选指定路由器按照如下文所述的选举子网中BDR的方法选举或重新选举的。
可选地,
所述准备模块是设置为采用以下方式实现完成为所述用户转发组播流量的准备:引入组播流量和建立到用户的转发路由。
与相关技术相比,上述方案通过预先选好BDR,把用户的组播流量引入
BDR,BDR检测到DR故障立即向子网中用户转发流量,从而极大减少了DR故障造成的网络丢包,是对标准的有益补充。
在阅读并理解了附图和详细描述后,可以明白其他方面。
附图概述
图1本发明实施例一DR故障处理的方法的流程图;
图2本发明实施例一BDR的模块图;
图3本发明实施例二选举BDR的方法的流程图;
图4发明实施例二PIM设备的模块图;
图5是本发明应用示例中Hello报文的BDR地址选项的结构图;
图6是本发明应用示例组播网络拓扑示意图。
下面将详述其发明方法,同时结合附图对本发明进行详细描述,没有特别说明的部分和标准RFC4601规定的协议行为一致。
实施例一
为了实现DR故障时快速恢复向用户转发组播流量,本实施例预先选好BDR,并把组播流量引入BDR,BDR检测到DR故障立即向子网中用户转发流量,从而减少DR故障造成的网络丢包。
如图1所示,本实施例DR故障处理的方法包括:
步骤110,子网中的BDR在有用户加入时,完成为所述用户转发组播流量的准备但不通过接口转发组播流量;
本步骤中,BDR完成为所述用户转发组播流量的准备包括:引入组播流量和建立到用户的转发路由。具体地,用户加入(Local Membership)时。BDR可以按照协议规定(如RFC4601的规定)的DR行为,完成为所述用户转发组播流量的准备,把组播流量引下来并在路由表中建立到用户的转发路由但不在接口转发组播流量,待检测到DR故障后立即转发。
步骤120,BDR检测到所述子网发生DR故障时,即自动切换为所述子
网的DR并通过接口为所述用户转发组播流量。
相应地,本实施例的BDR如图2所示,包括:
准备模块10,设置为在子网中有用户加入时,完成为所述用户转发组播流量的准备但不通过接口转发组播流量;
切换模块20,设置为在检测到所述子网发生指定路由器故障时,即自动切换为所述子网的指定路由器并通过接口为所述用户转发组播流量。
可选地,
所述准备模块是设置为采用以下方式实现完成为所述用户转发组播流量的准备:引入组播流量和建立到用户的转发路由。具体地,可以按照与协议规定的指定路由器相同的行为,完成为所述用户转发组播流量的准备。
实施例二
实施例一的故障恢复方法为DR设备故障时流量快速恢复提供了解决方案。本实施例则提出一种选举子网中BDR的方法,可用于选择实施例一子网中的BDR,如图3所示,所述方法包括:
步骤210,PIM设备选举子网中的BDR;
可选的,该方法之前还包括:PIM设备在等待选举状态下确定是否接收到携带BDR的信息的Hello报文;
如果未接收到携带BDR的信息的Hello报文,PIM设备选举子网中的BDR包括:PIM设备根据约定规则选举子网中的BDR。
所述约定规则可以在相应的协议/标准中规定,本实施例中,PIM设备根据约定规则选举子网中的BDR包括:PIM设备选举所述子网中除指定路由器DR之外的PIM设备中最优的PIM设备,作为所述子网中的BDR(选举DR的同时或之后选举BDR)。
按照标准RFC4601中的规定,子网中的设备保活PIM接口自己和此接口所有邻居,发送的hello报文都携带了DR优先级选项。此时,最优的PIM设备可以是指优先级最高的唯一一个PIM设备,或优先级最高的多个PIM设备中IP地址最大或最小的PIM设备。如果所述PIM设备的接口接收和发送的至少一Hello报文不携带DR优先级选项,则可以将IP地址最大或最小的PIM
设备作为最优的PIM设备。
应当说明的是,本发明实施例并不局限于上述规则,可以从子网包括的多个PIM设备中选择出唯一一个PIM设备的规则均可用于选举BDR。
除特别指出外,文中提到的接口均指PIM设备在文中提到的子网中UP的接口。
步骤220,PIM设备保存选举出的所述子网中BDR的信息。
所述子网中的BDR在所述子网中的DR正常时,完成为用户转发组播流量的准备但不通过接口转发组播流量,在所述子网中的DR故障时,立即为用户转发组播流量,并切换为所述子网中的DR。
考虑到子网中加入PIM设备时,根据约定规则选举出来的BDR可能会发生改变,导致BDR的切换,这种切换会增加网络负担,对网络的性能造成不利的影响。因此,本实施例子网新增的PIM设备通过其他PIM设备发送的Hello报文携带的BDR的信息来学习BDR。也即,一个PIM设备在等待选举状态(即还没有选举BDR)下,如通过接口接收到Hello报文且所述Hello报文携带BDR的信息,则将所述BDR作为自己选举的BDR。一种可选的方式是:PIM设备的接口在子网中UP之后即进入等待选举状态,并启动一等待选举的定时器;在等待选举状态下,如通过所述接口接收到Hello报文且所述Hello报文携带BDR的信息,即进入选举状态,停止所述定时器,将所述Hello报文携带的BDR作为自己选举的BDR。
上述等待选举的定时器的定时时间例如为邻居的默认保活时间(详见标准RFC4601 4.11章节Default_Hello_Holdtime描述),默认是105S。然而,本发明对此并不限定,也大于默认保活时间,或小于默认保活时间。
如果PIM设备在定时器定时时间内没有收到携带BDR的信息的Hello报文,例如该PIM设备是子网中首个启动的PIM设备时,所述PIM设备在定时器超时后,即进入选举状态,根据约定规则选举所述子网中的BDR。
所述BDR的信息包括BDR的合法单播地址(即单播IP地址)。可以通过在Hello报文中增加的BDR地址选项来携带BDR的信息,如果接收到的Hello报文中包含BDR地址选项且所述BDR地址选项的值为合法单播地址,
则认为所述接收到的Hello报文携带BDR的信息。PIM设备在等待选举状态下还没有选举出BDR(即进入选举状态之后),通过所述接口发送携带BDR地址选项的Hello报文时,可以将所述BDR地址选项的值置为约定的无效值,如空值或0值。
所述PIM设备如通过所述接口接收到携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值,就知道邻居接口处于等待选举状态,此时可以通过所述接口发送携带BDR地址选项的Hello报文,且所述BDR地址选项的值为保存的所述子网中BDR的合法单播地址。
为了正确解码BDR地址选项,可以在BDR地址选项前增加类型和长度字段。一种示例性的Hello报文的BDR选项如图5所示,包括:
类型(Type):本发明实施例对此并不限定,可以为目前未定义Hello报文选项类型中的任意一种(36-65535);
长度(Length):为变长;
BDR地址(BDR Address):采用标准RFC4601 4.9.1规定的单播地址编码格式(Encoded-Unicast format)。
其中,单播地址编码格式字段有:地址族(Addr Family)、封装类型(Encoding Type)、单播地址(Unicast Address),详细解释可见标准RFC4601 4.9.1。此外,BDR地址的值为0的含义是,地址族字段填合法地址族,封装类型字段可以为任意值,单播地址字段填0。
如果子网中除BDR之外的PIM设备检测到所述子网的DR故障,此时将已选举的所述子网中的BDR选举为所述子网中的DR,并根据所述约定规则重新选举所述子网中的BDR。
如果PIM设备检测到所述子网中的BDR故障(如作为BDR的PIM设备故障或相关链路故障)时,保存的所述子网中BDR的信息仍为故障的BDR的信息,则根据约定规则重新选举所述子网中的BDR,并更新保存的所述子网中BDR的信息。如果已学习到新的BDR,则不必重新选举。
本实施例中,还包括:PIM设备保存子网中BDR的信息或更新保存的子网中BDR的信息之后,通过接口发送Hello报文,在所述Hello报文中携带
保存的所述子网中BDR的信息。在重新选举或其他的情况下,PIM设备如通过所述接口接收到Hello报文且所述Hello报文携带的BDR的信息不同于保存(均指本地保存)的所述子网中BDR的信息,可以按以下方式处理;
如本PIM设备非所述子网中的BDR(指保存的子网中的BDR),将所述Hello报文携带的BDR作为自己重新选举的所述子网中的BDR,并更新保存的所述子网中BDR的信息;
如本PIM设备为所述子网中的BDR,根据所述约定规则重新选举所述子网中的BDR,并更新保存的所述子网中BDR的信息。
本发明实施例还提出了一种计算机可读存储介质,存储有计算机可执行指令,计算机可执行指令用于执行上述描述的任意一个方法。
相应地,本实施例提供的协议无关组播PIM设备如图4所示,包括:
选举模块60,设置为根据约定规则选举所述子网中的BDR。
存储模块70,设置为保存所述子网中BDR的信息。
可选地,
所述选举模块是设置为:选举所述子网中除指定路由器DR之外最优的PIM设备作为所述子网中的BDR。
可选地,还包括:
接口模块50,用于接收和发送Hello报文。
所述选举模块是设置为:选举以下的PIM设备作为子网中的BDR;
所述接口模块接收和发送的Hello报文均携带DR优先级选项;所述子网中除DR之外的PIM设备中,优先级最高的唯一一个PIM设备,或优先级最高的多个PIM设备中IP地址最大或最小的PIM设备;或者
所述接口模块接收或发送的至少一PIM设备不携带DR优先级选项;所述子网中除DR之外的PIM设备中,IP地址最大或最小的PIM设备。
可选地,
所述选举模块还设置为:
所述选举模块在等待选举状态下,如所述接口模块接收到Hello报文且所
述Hello报文携带BDR的信息,则将所述BDR作为自己选举的BDR。
可选地,
所述选举模块是设置为:
在所述接口模块在子网中UP之后即进入所述等待选举状态,启动一等待选举的定时器,所述定时器的定时时间可以大于或等于邻居的默认保活时间;
在等待选举状态下,如所述接口模块接收到Hello报文且所述Hello报文携带BDR的信息,即进入选举状态,停止所述定时器,将所述BDR作为自己选举的BDR。
可选的,选举模块还用于:
在所述定时器超时后,进入选举状态,根据约定规则选举所述子网中的BDR。
可选地,
所述选举模块是设置为采用以下方式实现根据约定规则选举所述子网中的BDR:
在等待选举状态下未接收到携带BDR的信息的Hello报文,根据约定规则选举所述子网中的候选指定路由器BDR。
可选地,
所述BDR的信息包括BDR的合法单播地址;
选举模块是设置为采用以下方式实现判断所述接口模块接收到的Hello报文携带BDR的信息:接收到的Hello报文中包含BDR地址选项且所述BDR地址选项的值为合法单播地址。
可选地,
所述接口模块选举模块是设置为采用以下方式实现发送Hello报文:在等待选举状态下还没有选举出BDR,发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值。
可选地,
所述接口模块还设置为:在进入选举状态之后,如接收到携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值,则发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为保存的所述子网中BDR的合法单播地址。
可选地,
所述PIM设备还包括:检测模块,设置为检测所述子网中的BDR故障;
所述选举模块还设置为:在进入选举状态之后,如所述检测模块检测到所述子网中的BDR故障,且保存的所述子网中BDR的信息仍为故障的BDR的信息,则根据约定规则重新选举所述子网中的BDR,并通知存储模块更新保存的所述子网中BDR的信息。
可选地,
所述选举模块还设置为:在进入选举状态之后,如所述接口模块接收到Hello报文且所述Hello报文携带的BDR的信息不同于所述存储模块保存的所述子网中BDR的信息:
在本PIM设备非所述子网中的BDR时,将所述Hello报文携带的BDR作为自己重新选举的所述子网中的BDR,并更新所述存储模块保存的所述子网中BDR的信息;
在本PIM设备为所述子网中的BDR时,根据所述约定规则重新选举所述子网中的BDR,并更新所述存储模块保存的所述子网中BDR的信息。
可选地,
所述子网中的BDR在所述子网中的DR正常时,完成为用户转发组播流量的准备但不通过接口转发组播流量,在所述子网中的DR故障时,立即为用户转发组播流量,并切换为所述子网中的DR。
可选地,
所述选举模块还设置为:在检测到所述子网的DR故障且本PIM设备非所述子网中的BDR时,将已选举的所述子网中的BDR选举为所述子网中的DR,并根据所述约定规则重新选举所述子网中的BDR。
可选地,
所述接口模块还设置为:在保存所述子网中BDR的信息或更新保存的所述子网中BDR的信息之后,发送Hello报文,在所述Hello报文中携带所述存储模块保存的所述子网中BDR的信息。
可选地,
所述选举模块是设置为采用以下方式实现根据约定规则选举所述子网中的BDR:在所述接口模块不支持在Hello报文中携带BDR地址选项和/或通过所述接口模块接收到的Hello报文中不包括BDR地址选项时,所述选举模块在选举所述子网中的DR的同时,根据约定规则选举所述子网中的BDR。
在另一实施例中,如果PIM设备不支持在Hello报文中携带BDR地址选项和/或通过接口接收到的至少一Hello报文中不包括BDR地址选项,可以在选举所述子网中的DR的同时,根据约定规则选举所述子网中的BDR。选举子网中DR的方法可以依照协议中的规定,也可以是其他方法。按照协议规定选举DR时,如果子网中任意一台PIM设备发送的Hello报文不携带BDR地址选项,则子网中的PIM设备应在新邻居发现后立即按照约定规则选举出子网中的DR和BDR。
下面再用一应用示例进行说明。
本应用示例的组播网络拓扑如图6所示,在三台PIM设备R1~R3和IGMP用户H1相连的共享子网LAN1中,假定时序如下:
PIM设备R1接口1UP;
PIM设备R2接口2UP;
PIM设备R1等待选举的定时器超时;
PIM设备R3接口3UP;
PIM设备R1接口1DOWN。
假定DR优先级为:
PIM设备R3优于PIM设备R1;
PIM设备R1优于PIM设备R2。
此处先用事件的方式描述一下实施例二中PIM设备的处理流程:
事件E1:接口UP。这里指PIM设备的接口UP且存在合法IP地址。事件E1触发后,PIM设备进入等待选举状态(也可称为“等待状态”),同时开启一个等待状态的定时器。
事件E2:接口接收到携带BDR地址选项且BDR地址为0的Hello报文。事件E2触发后,保持原来的状态(等待选举状态或选举状态)。若接口处于选举状态,将保存的BDR的地址通过Hello报文发送出去。
事件E3:接口接收到携带BDR地址选项且BDR地址为合法单播地址的Hello报文。在等待选举状态下,事件E3触发后,进入选举状态,将收到的Hello报文携带的BDR作为自己选举的BDR,并保存Hello报文携带的BDR地址。在选举状态下,事件E3触发后,如果本PIM设备非BDR,将收到的Hello报文携带的BDR作为自己重新选举的BDR,将保存的BDR地址更新为收到的Hello报文携带的BDR地址;如果本PIM设备是BDR,则重新选举子网中的BDR,如BDR变化还要更新保存的BDR地址。
事件E4:接口的等待状态定时器超时。事件E4触发后,接口进入选举状态,按照约定规则进行BDR选举。
事件E5:接口DOWN。这里指接口IP地址失效或接口DOWN。事件E5触发后,接口进入初始化状态。
其中,PIM设备于等待状态下,发送的Hello报文是携带BDR地址选项且BDR地址为0的Hello报文。于选举状态,发送的Hello报文是携带BDR地址选项且BDR地址为合法单播地址的Hello报文。在保存BDR地址或更新保存的BDR地址之后,均可发送携带BDR地址的Hello报文。
另外,子网中PIM设备选举DR时,也可以采用通过Hello报文携带DR信息来学习DR的方式,此方式下,PIM设备也可以在接口UP后启动一个等待选举DR的定时器,此时等待选举BDR的定时器和等待选举DR的定时器可以是同一定时器,也可以不同。
以下是本应用示例的处理过程:
步骤7.1:PIM设备R1接口1UP,触发事件E1,进入等待选举状态,开启一个等待状态的定时器,同时发送Hello报文,该Hello报文携带BDR
地址选项且BDR地址为0。这时不进行BDR选举。
步骤7.2:PIM设备R2接口2UP,触发事件E1,和步骤7.1中PIM设备R1接口1UP时的动作一样。
步骤7.3:PIM设备R1接口1收到PIM设备R2接口2发送的Hello报文,发现BDR地址选项的地址为0且自己处于等待状态,触发事件E2,正常建立PIM邻居,保持等待状态且不进行BDR选举。
步骤7.4:PIM设备R1启动的定时器超时,触发事件E4,PIM设备R1进入选举状态,选举PIM设备R1为LAN1的DR,PIM设备R2为LAN1的BDR,然后发送一个携带PIM设备R2地址的Hello报文。
步骤7.5:PIM设备R2接口2收到PIM设备R1接口1发送的Hello报文,触发事件E3,进入BDR选举状态,用收到的Hello报文携带的BDR作为自己选举的BDR并保存BDR地址(即本PIM设备地址),同时发送一个携带PIM设备R2地址的Hello报文。
步骤7.6:BDR选举出来之后,作为BDR的PIM设备R2按照RFC4601协议中DR的处理方式处理IGMP或MLD用户加入,把流量引到本设备并建立到用户的转发路由,但是接口2不向用户转发组播流量。
步骤7.7:PIM设备R3接口3UP,触发事件E1,和步骤7.1中PIM设备R1接口1UP时的动作一样。
步骤7.8:PIM设备R1接口1和PIM设备R2接口2收到PIM设备R3接口3的Hello报文,发现是新邻居,都会立即发送携带PIM设备R2地址的Hello报文。
步骤7.9:PIM设备R3接口3收到PIM设备R1接口1或PIM设备R2接口2发送的Hello报文,触发事件E3,动作和步骤7.5一样。LAN1中的BDR仍然是PIM设备R2。
步骤7.10:PIM设备R1接口1DOWN,PIM设备R2接口2通过双向转发检测(BFD,Bi-directional Forwarding Detection)等检测手段快速感知,PIM设备R2接口2立即变为转发状态转发组播流量,同时在协议层面,作为BDR的PIM设备R2切换成LAN1的DR,并选举PIM设备R3接口3为BDR。
PIM设备R3同样选举PIM设备R2接口2为DR,自己变为BDR。
在另一应用示例中,网络设定及步骤7.1~7.9均与上述应用示例相同,此后发生BDR故障而不是DR故障,则流程如下:
步骤7.10:PIM设备R2接口2DOWN,触发事件E5,按照PIM协议发送保活时间为0的Hello报文。
步骤7.11:PIM设备R1接口1和PIM设备R3接口3收到PIM设备R2接口2发送的Hello报文后,都会重新进行BDR选举,将除DR之外最优的设备(此时是PIM设备R3)选为BDR,并发送携带PIM设备R3地址的Hello报文。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件(例如处理器)完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,例如通过集成电路来实现其相应功能,也可以采用软件功能模块的形式实现,例如通过处理器执行存储与存储器中的程序/指令来实现其相应功能。本发明不限于任何特定形式的硬件和软件的结合。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
上述技术方案实现了子网中的DR故障时用户组播流量转发的快速回复,进一步地,在新加入PIM设备时不会导致BDR设备的切换,有利于网络的性能。
Claims (39)
- 一种选举候选指定路由器BDR的方法,包括:协议无关组播PIM设备选举子网中的候选指定路由器BDR;所述PIM设备保存选举出的所述子网中BDR的信息。
- 如权利要求1所述的方法,该方法之前还包括:所述PIM设备在等待选举状态下确定是否接收到携带BDR的信息的Hello报文;如果未接收到携带BDR的信息的Hello报文,所述PIM设备选举所述子网中的候选指定路由器BDR包括:所述PIM设备根据约定规则选举所述子网中的BDR。
- 如权利要求2所述的方法,其中,所述PIM设备根据约定规则选举所述子网中的BDR包括:所述PIM设备选举所述子网中除指定路由器DR之外的PIM设备中最优的PIM设备,作为所述子网中的BDR。
- 如权利要求3所述的方法,其中,所述PIM设备的接口接收和发送的Hello报文均携带DR优先级选项;所述最优的PIM设备是指优先级最高的唯一一个PIM设备,或优先级最高的多个PIM设备中互联网协议IP地址最大或最小的PIM设备;或者所述PIM设备的接口接收和发送的至少一Hello报文不携带DR优先级选项;所述最优的PIM设备是指IP地址最大或最小的PIM设备。
- 根据权利要求1所述的方法,如果所述PIM设备在等待选举状态下,通过接口接收到Hello报文且所述Hello报文携带BDR的信息,所述PIM设备选举所述子网中的候选指定路由器BDR包括:所述PIM设备将接收到的Hello报文中携带的BDR作为自己选举的BDR。
- 如权利要求5所述的方法,其中,所述PIM设备的接口在子网中UP之后进入所述等待选举状态,启动一等待选举的定时器;所述PIM设备在等待选举状态下,如果通过所述接口接收到Hello报文且所述Hello报文携带BDR的信息,进入选举状态,停止所述定时器,将所述Hello报文携带的BDR作为自己选举的BDR。
- 根据权利要求6所述的方法,还包括:所述PIM设备在所述定时器超时后,进入选举状态,根据约定规则选举所述子网中的BDR。
- 如权利要求6所述的方法,其中,所述定时器的定时时间大于或等于邻居的默认保活时间。
- 如权利要求5或6所述的方法,其中,所述BDR的信息包括BDR的合法单播地址;所述接收到的Hello报文携带BDR的信息,包括:接收到的Hello报文中包含BDR地址选项且所述BDR地址选项的值为合法单播地址。
- 如权利要求2述的方法,如果所述PIM设备在等待选举状态下没有选举出BDR,所述方法还包括:通过所述接口发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值。
- 如权利要求10所述的方法,所述PIM设备进入选举状态之后,还包括:如果所述PIM设备通过所述接口接收到携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值,则通过所述接口发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为保存的所述子网中BDR的合法单播地址。
- 如权利要求1所述的方法,还包括:所述PIM设备检测到所述子网中的BDR故障后,如果保存的所述子网中BDR的信息仍为故障的BDR的信息,则重新选举所述子网中的BDR,并更新保存的所述子网中BDR的信息。
- 如权利要求1所述的方法,还包括:在进入选举状态后,如果所述PIM设备通过所述接口接收到Hello报文且所述Hello报文携带的BDR的信息不同于保存的所述子网中BDR的信息;如果所述PIM设备非所述子网中的BDR,将所述Hello报文携带的BDR作为自己重新选举的所述子网中的BDR,并更新保存的所述子网中BDR的信息;如果所述PIM设备为所述子网中的BDR,重新选举所述子网中的BDR,并更新保存的所述子网中BDR的信息。
- 如权利要求1所述的方法,还包括:所述子网中的BDR在所述子网中的DR正常时,完成为用户转发组播流量的准备但不通过接口转发组播流量,在所述子网中的DR故障时,为用户转发组播流量,并切换为所述子网中的DR。
- 如权利要求1-13任一项所述的方法,还包括:所述PIM设备保存所述子网中BDR的信息或更新保存的所述子网中BDR的信息之后,通过接口发送Hello报文,在所述Hello报文中携带保存的所述子网中BDR的信息。
- 如权利要求1-13任一项所述的方法,还包括:在所述PIM设备进入选举状态后,所述子网中除BDR之外的PIM设备检测到所述子网的DR故障时,将已选举的所述子网中的BDR选举为所述子网中的DR,并根据所述约定规则重新选举所述子网中的BDR。
- 如权利要求2所述的方法,其中,所述PIM设备根据约定规则选举所述子网中的BDR,包括:所述PIM设备不支持在Hello报文中携带BDR地址选项和/或通过接口接收到的至少一Hello报文中不包括BDR地址选项时,在选举所述子网中的DR的同时,根据约定规则选举所述子网中的BDR。
- 一种指定路由器DR故障处理的方法,包括:子网中的候选指定路由器BDR在有用户加入时,完成为所述用户转发组播流量的准备但不通过接口转发组播流量;所述BDR检测到所述子网发生DR故障时,自动切换为所述子网的DR并通过接口为所述用户转发组播流量。
- 如权利要求18所述的方法,其特征在于:所述子网中的BDR是按照权利要求1-16中任一所述的方法选举或重新选举的。
- 如权利要求18或19所述的方法,其特征在于:所述BDR完成为所述用户转发组播流量的准备,包括:引入组播流量和建立到用户的转发路由。
- 一种协议无关组播PIM设备,其特征在于,包括:选举模块,设置为选举所述子网中的候选指定路由器BDR;存储模块,设置为保存所述子网中BDR的信息。
- 如权利要求21所述的PIM设备,所述选举模块是设置为:在等待选举状态下确定是否接收到携带BDR的信息的Hello报文;如果未接收到携带BDR的信息的Hello报文,根据约定规则选举所述子网中的BDR。
- 如权利要求22所述的PIM设备,其中,所述选举模块是设置为采用以下方式实现根据约定规则选举子网中的BDR:选举所述子网中除指定路由器DR之外的PIM设备中最优的PIM设备,作为所述子网中的BDR。
- 如权利要求22所述的PIM设备,还包括:接口模块,用于接收和发送Hello报文;所述接口模块接收和发送的Hello报文均携带DR优先级选项;所述选举模块是设置为:选举以下的PIM设备作为子网中的BDR:优先级最高的唯一一个PIM设备,或优先级最高的多个PIM设备中互联网协议IP地址最大或最小的PIM设备;或者所述接口模块接收或发送的至少一PIM设备不携带DR优先级选项;IP地址最大或最小的PIM设备。
- 如权利要求22所述的PIM设备,所述选举模块还设置为:在等待选举状态下,如所述接口模块接收到Hello报文且所述Hello报文携带BDR的信息,则将所述Hello报文携带的BDR作为自己选举的BDR。
- 如权利要求25所述的PIM设备,其中,所述选举模块是设置为:在所述接口模块在子网中UP之后即进入所述等待选举状态,启动一等待选举的定时器;在等待选举状态下,如所述接口模块接收到Hello报文且所述Hello报文携带BDR的信息,进入选举状态,停止所述定时器,将所述BDR作为自己选举的BDR。
- 根据权利要求26所述的PIM设备,所述选举模块还用于:在所述定时器超时后,进入选举状态,根据约定规则选举所述子网中的BDR。
- 如权利要求25所述的PIM设备,其中,所述BDR的信息包括BDR的合法单播地址;所述选举模块是设置为采用以下方式实现判断所述接口模块接收到的Hello报文携带BDR的信息:接收到的Hello报文中包含BDR地址选项且所述BDR地址选项的值为合法单播地址。
- 如权利要求28所述的PIM设备,还包括:接口模块,设置为在等待选举状态下还没有选举出BDR,发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值。
- 如权利要求29所述的PIM设备,所述接口模块还设置为:在进入选举状态之后,如接收到携带BDR地址选项的Hello报文且所述BDR地址选项的值为约定的无效值,则发送携带BDR地址选项的Hello报文且所述BDR地址选项的值为保存的所述子网中BDR的合法单播地址。
- 如权利要求21-30所述的PIM设备,所述PIM设备还包括:检测模块,设置为检测所述子网中的BDR故障;所述选举模块还设置为:在进入选举状态后,如所述检测模块检测到所述子网中的BDR故障,且保存的所述子网中BDR的信息仍为故障的BDR的信息,则重新选举所述子网中的BDR,并通知存储模块更新保存的所述子网中BDR的信息。
- 如权利要求31所述的PIM设备,所述选举模块还设置为:在进入选举状态后,如所述接口模块接收到Hello报文且所述Hello报文携带的BDR的信息不同于所述存储模块保存的所述子网中BDR的信息:在所述PIM设备非所述子网中的BDR时,将所述Hello报文携带的BDR作为自己重新选举的所述子网中的BDR,并更新所述存储模块保存的所述子网中BDR的信息;在所述PIM设备为所述子网中的BDR时,重新选举所述子网中的BDR,并更新所述存储模块保存的所述子网中BDR的信息。
- 如权利要求21所述的PIM设备,所述子网中的BDR在所述子网中的DR正常时,完成为用户转发组播流量的准备但不通过接口转发组播流量,在所述子网中的DR故障时,立即为用户转发组播流量,并切换为所述子网中的DR。
- 如权利要求21-33所述的PIM设备,还包括:接口模块,设置为在保存所述子网中BDR的信息或更新保存的所述子网中BDR的信息之后,发送Hello报文,在所述Hello报文中携带所述存储模块保存的所述子网中BDR的信息。
- 如权利要求21-33所述的PIM设备,所述选举模块还设置为:在检测到所述子网的DR故障且本PIM设备非所述子网中的BDR时,将已选举的所述子网中的BDR选举为所述子网中的DR,并根据所述约定规则重新选举所述子网中的BDR。
- 如权利要求22所述的PIM设备,其中,所述选举模块是设置为采用以下方式实现根据约定规则选举所述子网中的BDR:在所述接口模块不支持在Hello报文中携带BDR地址选项和/或通 过所述接口模块接收到的Hello报文中不包括BDR地址选项时,所述选举模块在选举所述子网中的DR的同时,根据约定规则选举所述子网中的BDR。
- 一种候选指定路由器,包括:准备模块,设置为在子网中有用户加入时,完成为所述用户转发组播流量的准备但不通过接口转发组播流量;切换模块,设置为在检测到所述子网发生指定路由器故障时,即自动切换为所述子网的指定路由器并通过接口为所述用户转发组播流量。
- 如权利要求37所述的候选指定路由器,所述候选指定路由器是按照权利要求1-15中任一所述的方法选举或重新选举的。
- 如权利要求37或38所述的候选指定路由器,其中,所述准备模块是设置为采用以下方式实现完成为所述用户转发组播流量的准备:引入组播流量和建立到用户的转发路由。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP16789235.5A EP3322141B1 (en) | 2015-07-07 | 2016-04-05 | Backup designated router election and designated router failure processing method and equipment |
US15/742,617 US10484269B2 (en) | 2015-07-07 | 2016-04-05 | Backup designated router (BDR) election and designated router (DR) failure processing methods and equipment |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510395069.3 | 2015-07-07 | ||
CN201510395069.3A CN106330728B (zh) | 2015-07-07 | 2015-07-07 | 选举候备指定路由器及指定路由器故障处理的方法、设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
WO2016177241A1 true WO2016177241A1 (zh) | 2016-11-10 |
WO2016177241A9 WO2016177241A9 (zh) | 2018-02-15 |
Family
ID=57217551
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2016/078488 WO2016177241A1 (zh) | 2015-07-07 | 2016-04-05 | 选举候备指定路由器及指定路由器故障处理的方法、设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US10484269B2 (zh) |
EP (1) | EP3322141B1 (zh) |
CN (1) | CN106330728B (zh) |
WO (1) | WO2016177241A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10243821B2 (en) * | 2015-12-30 | 2019-03-26 | Juniper Networks, Inc. | OAM mechanisms for EVPN active-active services |
US10728137B1 (en) * | 2018-09-28 | 2020-07-28 | Juniper Networks, Inc. | Protocol independent multicast (“PIM”) fault tolerant designated router (“DR”) election |
US11296899B2 (en) * | 2019-02-28 | 2022-04-05 | Cisco Technology, Inc. | Redundant multicast trees without duplication and with fast recovery |
CN115102839B (zh) * | 2022-06-17 | 2024-02-09 | 济南浪潮数据技术有限公司 | 一种主从节点选举方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1816800A1 (en) * | 2006-02-03 | 2007-08-08 | BRITISH TELECOMMUNICATIONS public limited company | Method of operating a network |
CN101247252A (zh) * | 2008-03-10 | 2008-08-20 | 华为技术有限公司 | 一种组播快速重路由的方法、装置和系统 |
CN102255797A (zh) * | 2011-06-09 | 2011-11-23 | 杭州华三通信技术有限公司 | 一种快速确定ospf接口角色的方法和设备 |
CN102377584A (zh) * | 2010-08-12 | 2012-03-14 | 盛科网络(苏州)有限公司 | Pim-sm中实现对dr冗余保护的方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100677145B1 (ko) * | 2004-10-28 | 2007-02-02 | 삼성전자주식회사 | 네트워크 주소를 자동으로 설정하는 방법 및 장치 |
US7646739B2 (en) * | 2005-04-05 | 2010-01-12 | Cisco Technology, Inc. | Multicast routing over unidirectional links |
CN100433726C (zh) * | 2006-06-21 | 2008-11-12 | 杭州华三通信技术有限公司 | 组播故障恢复方法和组播路由器 |
US8576702B2 (en) * | 2007-02-23 | 2013-11-05 | Alcatel Lucent | Receiving multicast traffic at non-designated routers |
US8442046B2 (en) * | 2007-03-30 | 2013-05-14 | Cisco Technology, Inc. | Sending routing protocol data on a multi-access network segment |
US7860093B2 (en) * | 2007-12-24 | 2010-12-28 | Cisco Technology, Inc. | Fast multicast convergence at secondary designated router or designated forwarder |
US20110267962A1 (en) * | 2010-04-29 | 2011-11-03 | HP Development Company LP | Method and system for predictive designated router handover in a multicast network |
US9071546B2 (en) * | 2011-05-20 | 2015-06-30 | Cisco Technology, Inc. | Protocol independent multicast designated router redundancy |
US9130857B2 (en) * | 2011-06-22 | 2015-09-08 | Futurewei Technologies, Inc. | Protocol independent multicast with quality of service support |
CN103117935B (zh) * | 2013-02-28 | 2016-02-17 | 杭州华三通信技术有限公司 | 应用于多归属组网的组播数据转发方法和装置 |
CN104113483B (zh) * | 2013-04-19 | 2017-06-20 | 华为技术有限公司 | 一种组播通信方法和汇聚交换机 |
US10243754B2 (en) * | 2015-06-30 | 2019-03-26 | Arista Networks, Inc. | Protocol independent multicast designated router notify delay feature |
US9853915B2 (en) * | 2015-11-04 | 2017-12-26 | Cisco Technology, Inc. | Fast fail-over using tunnels |
-
2015
- 2015-07-07 CN CN201510395069.3A patent/CN106330728B/zh active Active
-
2016
- 2016-04-05 WO PCT/CN2016/078488 patent/WO2016177241A1/zh active Application Filing
- 2016-04-05 US US15/742,617 patent/US10484269B2/en active Active
- 2016-04-05 EP EP16789235.5A patent/EP3322141B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1816800A1 (en) * | 2006-02-03 | 2007-08-08 | BRITISH TELECOMMUNICATIONS public limited company | Method of operating a network |
CN101247252A (zh) * | 2008-03-10 | 2008-08-20 | 华为技术有限公司 | 一种组播快速重路由的方法、装置和系统 |
CN102377584A (zh) * | 2010-08-12 | 2012-03-14 | 盛科网络(苏州)有限公司 | Pim-sm中实现对dr冗余保护的方法 |
CN102255797A (zh) * | 2011-06-09 | 2011-11-23 | 杭州华三通信技术有限公司 | 一种快速确定ospf接口角色的方法和设备 |
Non-Patent Citations (2)
Title |
---|
FENNER, B. ET AL.: "Protocol Independent Multicast-Sparse Mode (PIM-SM): Protocol Specification (Revised", NETWORK WORKING GROUP REQUEST FOR COMMENT S, 31 August 2006 (2006-08-31), pages 4601, XP015047366 * |
See also references of EP3322141A4 * |
Also Published As
Publication number | Publication date |
---|---|
US20180205638A1 (en) | 2018-07-19 |
EP3322141B1 (en) | 2020-05-06 |
WO2016177241A9 (zh) | 2018-02-15 |
US10484269B2 (en) | 2019-11-19 |
EP3322141A1 (en) | 2018-05-16 |
CN106330728B (zh) | 2019-09-24 |
CN106330728A (zh) | 2017-01-11 |
EP3322141A4 (en) | 2018-08-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105763359B (zh) | 用于交织结构交换机集群的分布式双向转发检测协议(d-bfd) | |
US10243841B2 (en) | Multicast fast reroute at access devices with controller implemented multicast control plane | |
CN107204867B (zh) | 一种信息传输方法、装置和系统 | |
EP2592793B1 (en) | Method and apparatus for forwarding multicast traffic | |
US8761044B2 (en) | Selection of multicast router interfaces in an L2 switch connecting end hosts and routers, which is running IGMP and PIM snooping | |
EP2676401B1 (en) | Methods for controlling elections in a multicast network | |
US9160616B2 (en) | Multicast packet transmission method, related device and system | |
US11611509B2 (en) | Communication method, communications device, and communications system | |
CN101060485B (zh) | 拓扑改变报文的处理方法和处理装置 | |
WO2016177241A1 (zh) | 选举候备指定路由器及指定路由器故障处理的方法、设备 | |
EP3806404A1 (en) | Communication method, device and system for avoiding loop | |
WO2015123962A1 (zh) | 开放流交换机优雅重启处理方法、装置及开放流控制器 | |
US10439929B2 (en) | Graceful recovery of a multicast-enabled switch | |
EP2936751A1 (en) | System, method and apparatus to resolve rpf-vector attribute conflicts | |
US9497104B2 (en) | Dynamic update of routing metric for use in routing return traffic in FHRP environment | |
US20140269746A1 (en) | Load balancing of logical connections over multi-chassis trunk | |
US20130100854A1 (en) | Vpls over multi-chassis trunk | |
CN107547367B (zh) | 一种组播切换方法、装置和机器可读存储介质 | |
WO2016197999A1 (zh) | 一种bier边界节点标识方法和装置 | |
US8976659B2 (en) | Intelligent layer-2 forwarding | |
CN107800581B (zh) | 一种二层网络及二层网络的环回检测方法 | |
WO2016145782A1 (zh) | 一种减少pim协议dr变化的方法及系统 | |
WO2017054471A1 (zh) | 一种指定路由器的选举方法及装置 | |
US20160315851A1 (en) | System and method for improved switch performance by preventing flooding | |
CN103516548A (zh) | 一种rp设备的管理方法和设备 |
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: 16789235 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 15742617 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2016789235 Country of ref document: EP |