Multicast relay device, multicast relay system, and multicast relay method
The multicast relay device dynamically relays multicast data based on external notifications, addressing inefficiencies in existing technologies by reducing unnecessary bandwidth waste and improving flexibility in VLAN management.
Patent Information
- Application Number
- JP2022005961
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-01-18
- Publication Date
- 2025-07-04
- Estimated Expiration
- 2042-01-18
AI Technical Summary
Existing multicast relay technologies using IGMP/MLD snooping struggle to efficiently distribute multicast data to all ports within a VLAN, regardless of join requests, leading to unnecessary bandwidth waste and inflexible management due to static entries and port configuration changes.
A multicast relay device that dynamically identifies and relays multicast data to ports based on external notifications, allowing for dynamic flooding without pre-determined multicast groups, and automatically updates entries when port configurations change.
Enhances flexibility and reduces unnecessary relay entry consumption by dynamically managing multicast data distribution, ensuring efficient use of bandwidth and minimizing management overhead.
Smart Images

Figure 0007702889000001 
Figure 0007702889000002 
Figure 0007702889000003
Abstract
Description
Technical Field
[0001] The present invention relates to multicast relay technology in the Internet, and particularly to multicast data distribution to all ports within a VLAN (Virtual Local Area Network) when using IGMP (Internet Group Management Protocol) / MLD (Multicast Listener Discovery) snooping.
Background Art
[0002] Multicast is a technology in which a multicast relay device accommodating a multicast distribution device and a multicast reception device replicates and outputs multicast data transmitted from the multicast distribution device to a plurality of ports to which the multicast reception device is connected, thereby distributing one received multicast data to a plurality of multicast reception devices simultaneously.
[0003] In multicast, generally, relay processing is performed in units of interfaces assigned with IP addresses. When an interface assigned with an IP address is a VLAN (Virtual LAN) accommodating a plurality of ports, as described above, multicast data is replicated to all ports belonging to the VLAN and relay processing is performed. Therefore, the relay device relays multicast data even to ports to which the multicast reception device has not made a join request. That is, if even one of the plurality of ports belonging to the VLAN makes a join request for multicast data, the relay device replicates and relays the multicast data to all other ports belonging to the VLAN (hereinafter, relaying to all ports other than the receiving ports within the VLAN is referred to as flooding). At this time, the multicast data relayed to ports that have not made a join request is unnecessary traffic, wasting the communication bandwidth.
[0004] As a technology for efficiently relaying multicast data, the IGMP / MLD snooping technology (Non-Patent Document 1) is known. In IGMP / MLD snooping, the content of the join request received at the port belonging to the VLAN is analyzed to obtain the received port information. Based on the obtained port information and the multicast group address, the relay of multicast data is controlled so that the multicast data is relayed only to the port that has made the join request. As a result, multicast relay to ports other than the port that has made the join request is suppressed, and multicast relay can be performed efficiently. When multicast data without a join request is received, it is determined that there is no receiving device for the multicast data, and the multicast data is discarded.
[0005] In a VLAN using IGMP / MLD snooping, when there is a need to multicast-distribute information such as urgent reports and emergency disaster information to all receiving devices regardless of the joining intention of the receiving devices, as described above, multicast data for which no join request has been received is discarded by the IGMP / MLD snooping function, so it cannot be relayed to all receiving devices.
[0006] As a technology that enables flooding within a VLAN regardless of the presence or absence of a join request message when using IGMP / MLD snooping, there is a static entry for IGMP / MLD snooping. Generally, in a static entry, the target VLAN, the multicast group address to be relayed, and the output port number are specified (Non-Patent Document 2). By setting this static entry for all ports within the VLAN, the multicast data can be flooded regardless of the reception of the join request message.
Prior Art Documents
Non-Patent Documents
[0007]
Non-Patent Document 1
[0008] In order to perform efficient multicast relay in a VLAN, IGMP / MLD snooping, which relays multicast data only to the port that has received the join request message, is an essential function. However, in a VLAN using IGMP / MLD snooping, when it is desired to flood multicast data regardless of the presence or absence of multicast receiving devices, due to the use of IGMP / MLD snooping, it is not possible to relay the multicast data to ports that have not received the join request message.
[0009] As described in Non-Patent Document 2 above, by setting up relay for all ports within a VLAN using static entries of IGMP / MLD snooping, multicast data can be flooded regardless of the reception of join request messages. However, for this purpose, it is necessary to pre-register static entries before distributing the multicast data. Therefore, it is necessary to determine the target multicast group in advance, resulting in low flexibility. Furthermore, since static entries need to be set before distributing the multicast data, a memory area for managing the relay destination ports called relay entries is consumed even when the multicast data is not being distributed. Especially when there are a large number of target multicast groups, a large amount of relay entries are wasted by static entries, resulting in a significant impact. Also, since static entries are set on a per-port basis of the VLAN, the output ports of the static entries need to be updated every time the port configuration of the VLAN is changed, increasing the management man-hours.
[0010] An object of the present invention is to provide a network system capable of dynamically making specific multicast data a flooding target regardless of whether a join request message from a receiver is received in a system using IGMP / MLD snooping.
Means for Solving the Problems
[0011] In order to solve at least one of the above problems, the present invention provides a multicast relay device having a plurality of ports for relaying multicast data between the ports, the multicast relay device recognizing a port to which a multicast receiving device is connected, and having a multicast relay control function for relaying the multicast data only to the port to which the multicast receiving device indicating an intention to join a multicast group is connected. The multicast relay control function, in a state where multicast communication is performed only on the port to which the multicast receiving device is connected, identifies a multicast group that requires flooding based on an external notification, and relays the multicast data of the identified multicast group to the plurality of ports regardless of whether the multicast receiving devices connected to the plurality of ports indicate an intention to join the identified multicast group, thereby flooding the multicast data of the identified multicast group.
Effect of the Invention
[0012] According to one aspect of the present invention, in a multicast relay device using IGMP / MLD snooping, when flooding multicast data, there is no need to pre-determine a multicast group, so the degree of freedom is improved, and the consumption of unnecessary relay entries can also be suppressed.
[0013] Problems, configurations, and effects other than those described above will be clarified by the description of the following embodiments.
Brief Description of the Drawings
[0014]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
Figure 13
Figure 14
Figure 15
Figure 16
Figure 17
Figure 18
Figure 19
Figure 20
Figure 21
Figure 22
Figure 23
Figure 24
Mode for Carrying Out the Invention
Examples
[0015] In this example, an example of implementation using IGMP snooping will be described. This example is an example of a technique for dynamically registering multicast data to be flooded based on a notification from a multicast distribution device.
[0016] In this embodiment, the IP address of the multicast distribution device is registered in advance in the multicast relay device, and the multicast distribution device transmits a join request message for a target multicast group. When the multicast relay device receives a join request message, if the IP address of the registered multicast distribution device matches the source address of the received join request message, it determines the multicast group that requires flooding and registers the multicast group as a flooding target. In addition, there are various methods for discriminating a multicast group that requires flooding, and the present invention can be applied without being limited to this method.
[0017] FIG. 1 is a block diagram showing an example of a network configuration using IGMP snooping in Embodiment 1 of the present invention.
[0018] The multicast distribution device 4000 distributes multicast data 100 (Grp_addr1). Since the multicast receiving devices 5000, 5010, and 5020 have no intention of joining Grp_addr1 and have not transmitted a join request message for Grp_addr1, the multicast data 100 (Grp_addr1) is discarded. On the other hand, the multicast data 101 (Grp_addr2) distributed from the multicast distribution device 4000 is relayed only to the multicast receiving device 5010 because the multicast relay device 1000 has received a join request message 200 for Grp_addr2 from the multicast receiving device 5010.
[0019] FIG. 2 is a block diagram showing an example of the internal structure of the multicast relay device 1000 in Embodiment 1 of the present invention.
[0020] The multicast relay device 1000 includes an IGMP snooping processing unit 1100, a device configuration definition unit 1200, and a multicast packet relay processing unit 1300.
[0021] The device configuration definition unit 1200 sets the VLAN information 1210, the IGMP snooping information 1220, and the flooding condition identification information 1230 from the outside. In the VLAN information 1210, the VLAN name set in the multicast relay device 1000, the IP address of the VLAN, and the port information belonging to the VLAN are set. The VLAN name is for identifying the VLAN, and the VLAN number, the name set for the VLAN, etc. are set.
[0022] In the IGMP snooping information 1220, the VLAN name using IGMP snooping, the multicast router port, and the remaining timer are set. The multicast router port is a port generally set in IGMP snooping and is a port to which another multicast relay device is connected. Even when using IGMP snooping, since the multicast relay device needs to relay all multicast packets, when a multicast relay device is connected, the port is set as the multicast router port from the outside. The operation example in a system composed of multiple multicast relay devices will be described later. The remaining timer is used to manage the period (i.e., the lifetime) until the timeout of the entry (details will be described later) that manages the IGMP snooping information registered for the VLAN, and is set for the entry at the time of entry registration. After entry registration, the remaining timer in the entry is subtracted, and when the remaining timer becomes 0, the entry is automatically deleted. Generally, 260 seconds is set in IGMP, but other numbers of seconds can also be set.
[0023] In the flooding condition identification information 1230, the mode for notifying the flooding condition, the VLAN name to which the method of this embodiment is applied, and the identification IP address are set. The identification IP address is information for identifying the multicast group that requires flooding, and in the method of this embodiment, the IP address of the multicast distribution device that distributes the multicast data that requires flooding is set.
[0024] The IGMP snooping processing unit 1100 is a processing unit for realizing the IGMP snooping function, and includes a VLAN management unit 1110, a control packet transmission / reception processing unit 1120, and an entry generation unit 1130 that creates relay control information for IGMP snooping.
[0025] The VLAN management unit 1110 manages a VLAN management table 1111. The VLAN management table 1111 stores the VLAN name using IGMP snooping acquired from the device configuration definition unit 1200, the flooding notification mode, the IP address of the VLAN, the identification IP address, the port information belonging to the VLAN, the multicast router port of the VLAN, and the remaining timer.
[0026] The entry generation unit 1130 includes an entry type determination unit 1131 and manages an entry management table 1132. The entry management table 1132 stores the VLAN name for setting an entry, the multicast group name learned in the VLAN (i.e., specified by the received join request message), the output port information, the remaining timer, and the entry type flag. The entry type flag determines whether each entry is an entry created by receiving a normal join request message (value is normal in this embodiment) or an entry for managing the flooding target created by receiving a join request message from a multicast distribution device indicated by the identification IP address specified by the flooding condition identification information 1230 (value is flooding in this embodiment). Hereinafter, an entry with an entry type flag of flooding is referred to as a flooding entry. The entry type determination unit 1131 is a processing unit that determines whether the received join request message is a join request message that requires flooding and searches for a flooding entry from the registered entries.
[0027] The control packet transmission / reception processing unit 1120 is a processing unit that transmits and receives multicast control packets received in the VLAN.
[0028] The multicast packet relay processing unit 1300 is a processing unit that controls the relay of multicast packets received by the multicast relay device 1000, and manages the VLAN registration table 1310 and the multicast packet relay control table 1320. The VLAN registration table 1310 stores the VLAN names using IGMP snooping, and the multicast packet relay control table 1320 stores the multicast relay entry information (VLAN name, multicast group name, and output port information) learned in the corresponding VLAN.
[0029] Figure 3 is a block diagram showing an example of the internal structure of the multicast distribution device 4000 in Embodiment 1 of the present invention.
[0030] The multicast distribution device 4000 includes a distribution data specifying unit 4100, a control packet transmission / reception processing unit 4200, a multicast data storage unit 4300, and a multicast data distribution unit 4400.
[0031] The distribution data specifying unit 4100 specifies distribution data information 4110 from the outside. The distribution data information 4110 sets the VLAN name to which the multicast distribution device 4000 is connected, the multicast group name that the multicast distribution device 4000 distributes, the source address set in the join request message to be transmitted, and the distribution mode. For the distribution mode, normal is set for multicast data for normal multicast receiving devices, and flooding is set for multicast data that requires flooding.
[0032] The multicast data storage unit 4300 is a data storage unit that stores the multicast data distributed by the multicast distribution device 4000. Note that the multicast data to be distributed may be not only data stored in advance as data, but also data directly distributed by a data generation device such as a camera connected to the multicast distribution device 4000.
[0033] The multicast data distribution unit 4400 is a processing unit that extracts the multicast group specified in the distribution data information 4110 from the multicast data storage unit 4300 and transmits the multicast data to the port 4001.
[0034] The control packet transmission / reception processing unit 4200 is a processing unit that transmits and receives control packets (inquiry messages, join request messages), and includes a flooding necessity determination unit 4210. The flooding necessity determination unit 4210 is a processing unit that determines whether the multicast data to be distributed is multicast data that requires flooding and determines the necessity of transmitting a join request message.
[0035] FIG. 4 is an explanatory diagram showing an example of a network configuration in which a flooding entry is registered in the first embodiment of the present invention.
[0036] In the network configuration shown in FIG. 4, a specific procedure until a flooding entry is registered in a situation where the IGMP snooping function is used will be described.
[0037] The process of enabling the IGMP snooping function in the multicast relay device 1000 in the network configuration of FIG. 4 will be described with reference to FIG. 2. Enabling the IGMP snooping means notifying the IGMP snooping processing unit 1100 of the IGMP control packets (inquiry messages, join request messages, leave request messages) received in the VLAN and suppressing the relay of unlearned multicast data received in the VLAN. Immediately after enabling the IGMP snooping function, since the multicast relay device 1000 has not yet received a join request message, that is, in a state where nothing has been learned, the relay of all multicast data is suppressed.
[0038] In this state, when permitting flooding of multicast data that requires flooding while using IGMP snooping for VLAN500, VLAN information 1210, IGMP snooping information 1220, and flooding condition identification information 1230 are externally set in the device configuration definition unit 1200 of the multicast relay device 1000.
[0039] In the VLAN information 1210, set the VLAN name, IP address, and port information. Specifically, in the network configuration shown in FIG. 4, externally set VLAN500 for the VLAN name, IP_addr for the IP address, and ports 1001, 1002, 1003, and 1004 for the port information.
[0040] In the IGMP snooping information 1220, set the VLAN name, multicast router port, and remaining timer. Specifically, in the network configuration shown in FIG. 4, set VLAN500, which is the VLAN using IGMP snooping, for the VLAN name. On the other hand, since no other multicast relay devices are connected to the multicast relay device 1000, the multicast router port is not set.
[0041] Set 260 seconds, which is a value generally used in IGMP, for the remaining timer. In the flooding condition identification information 1230, set the flooding notification mode, VLAN name, and identification IP address. In this method, since the flooding entry is registered by notification from the multicast distribution device, set distributor for the flooding notification mode externally. Also, externally set VLAN500 for the VLAN name and Src_addr, which is the IP address of the multicast distribution device that distributes the multicast data for flooding, for the identification IP address.
[0042] FIG. 6 is an explanatory diagram showing an example of the device configuration definition information of the multicast relay device 1000 in the first embodiment of the present invention.
[0043] As an example of the VLAN information 1210 of the multicast relay device 1000, the VLAN information 1210-1 of the multicast relay device 1000 in the network configuration of FIG. 4 is shown in FIG. 6(a). In this example, VLAN500 is set for the VLAN name 1211, the IP address of VLAN500, i.e., IP_addr, is set for the IP address 1212, and ports 1001, 1002, 1003, and 1004, which are the ports to which VLAN500 belongs, are set for the port information 1213.
[0044] The IGMP snooping information 1220-1 of the multicast relay device 1000 in the network configuration of FIG. 4 is shown in FIG. 6(b). In this example, VLAN500 is set for the VLAN name 1221. Since no other multicast relay device is connected to the multicast relay device 1000, nothing is set for the multicast router port 1222. The general remaining timer of the IGMP relay entry, i.e., 260 seconds, is set for the remaining timer 1223.
[0045] The flooding condition identification information 1230-1 of the multicast relay device 1000 in the network configuration of FIG. 4 is shown in FIG. 6(c). In this method, since the flooding entry is set by the notification from the multicast distributor, distributor is set for the flooding notification mode 1231. Also, VLAN500 is set for the VLAN name 1232, and Src_addr, which is the IP address of the multicast distribution device 4000, is set for the identification IP address 1233.
[0046] When the above settings are made from the outside, the IGMP snooping processing unit 1100 acquires the VLAN information 1210, the IGMP snooping information 1220, and the flooding condition identification information 1230, and registers in the VLAN management table 1111 in the VLAN management unit 1110 the VLAN name using IGMP snooping, the flooding notification mode, the IP address of its own device, the identification IP address, the port information to which the VLAN belongs, the multicast router port, and the remaining timer.
[0047] FIG. 7 is an explanatory diagram showing an example of the internal information of the multicast relay device 1000 in the first embodiment of the present invention.
[0048] As an example of the VLAN management table 1111 of the multicast relay device 1000, the VLAN management table 1111-1 of the multicast relay device 1000 in the network configuration of FIG. 4 is shown in FIG. 7(a). In the VLAN name 1112, VLAN500 is set; in the flooding notification mode 1113, distributor is set; in the IP address 1114, the IP address of VLAN500, IP_addr, is set; in the identification IP address 1115, the IP address of the multicast distribution device, Src_addr, is set; in the port information 1116, all the ports of VLAN500, ports 1001, 1002, 1003, and 1004, are set; and in the remaining timer 1118, 260 seconds are stored. In the multicast router port 1117, nothing is set because no other multicast relay device is connected to the multicast relay device 1000.
[0049] Next, the IGMP snooping processing unit 1100 notifies the registered VLAN information to the multicast packet relay processing unit 1300 and registers the VLAN name in the VLAN registration table 1310. The multicast packet relay processing unit 1300 analyzes the received IGMP control packet (such as a join request message), obtains the VLAN name of the VLAN that received the message, and notifies the IGMP snooping processing unit 1100 if the obtained VLAN name is registered in the VLAN registration table 1310. Thereby, in the VLAN using IGMP snooping, notification of the received IGMP control packet to the IGMP snooping processing unit 1100 is realized. FIG. 7(c) shows the VLAN registration table 1310-1 in the network configuration of FIG. 4. In the VLAN name 1311, VLAN500 is registered.
[0050] After the VLAN management unit 1110 registers the VLAN information in the VLAN registration table 1310, it registers an unlearned entry in the multicast packet relay control table 1320 without an output port. If a multicast router port is set, the multicast router port is set as the output port. In that case, unlearned multicast data received in the VLAN (multicast data in which there is no multicast receiving device) is relayed only to the multicast router port by matching the unlearned entry. On the other hand, if there is no setting of the multicast router port, it is not relayed anywhere (because there is no output port). Thereby, suppression of relay of multicast data in which there is no multicast receiving device in the VLAN using IGMP snooping is realized. For example, the multicast data 100 in the network configuration of FIG. 1 is not relayed anywhere and is discarded because it matches the unlearned entry.
[0051] Next, the process in which the multicast distribution device 4000 in the network configuration of FIG. 4 distributes multicast data will be described with reference to FIG. 3. When the multicast distribution device 4000 distributes multicast data, distribution data information 4110 is set from the outside. The distribution data information 4110 sets a VLAN name, a multicast group name, a source address, and a distribution mode.
[0052] The VLAN name of the distribution data information 4110 is VLAN500, which is the VLAN name of the network, the multicast group name is Grp_addr3, which is the multicast group to be distributed, the source IP address is Src_addr, which is the address of the multicast distribution device, and the distribution mode is set to flooding because the multicast group is multicast data that requires flooding.
[0053] When the distribution data information 4110 is set, the distribution data specifying unit 4100 notifies the control packet transmission / reception processing unit 4200 of the VLAN name, multicast group name, source address, and distribution mode. The flooding necessity determination unit 4210 of the control packet transmission / reception processing unit 4200 determines the notified distribution mode. When the distribution mode is flooding, it creates a join request message including information specifying the notified VLAN name and multicast group (Grp_addr3), sets the IP address (Src_addr) of its own device notified as the source address, and transmits the join request message to port 4001. Thereby, the transmission of the join request message 201 in the network configuration of FIG. 4 is realized.
[0054] In the processing of the standardized IGMP, usually, a multicast distribution device does not transmit an IGMP join request message. In this embodiment, the join request message transmitted by the multicast distribution device 4000 has a role of instructing the multicast relay device 1000 to perform flooding processing for a specific multicast group. As will be described later, the IP address of the multicast distribution device that may transmit a join request message is set in advance in the multicast relay device 1000, and it is possible to determine whether the received join request message is transmitted from the multicast distribution device 4000 based on that information.
[0055] After notifying the control packet transmission / reception processing unit 4200, the distribution data specifying unit 4100 notifies the multicast data distribution unit 4400 of the multicast group (Grp_addr3). The multicast data distribution unit 4400 searches for and extracts the data of the notified multicast group from the multicast data storage unit 4300, and transmits the multicast data to port 4001. Thereby, the distribution of the multicast data 102 from the multicast distribution device 4000 in the network configuration of FIG. 4 is realized.
[0056] FIG. 5 is an explanatory diagram showing an example of the distribution data information of the multicast distribution apparatus 4000 in the first embodiment of the present invention.
[0057] As an example of the distribution data information 4110 of the multicast distribution apparatus 4000, the distribution data information 4110-1 of the multicast distribution apparatus 4000 in the network configuration of FIG. 4 is shown in FIG. 5(a). In the VLAN name 4111, VLAN500 is set, in the multicast group name 4112, Grp_addr3 which is the multicast group to be distributed is set, and in the source address 4113, Src_addr which is the address of its own apparatus is set. In the distribution mode 4114, since the multicast data is multicast data that requires flooding, flooding is set.
[0058] Next, the procedure for registering the flooding entry will be described. The process of the multicast relay apparatus 1000 receiving the join request message 201 transmitted from the multicast distribution apparatus 4000 in the network configuration shown in FIG. 4 and registering the flooding entry will be described with reference to FIG. 2.
[0059] When the join request message is received at the port 1001 connected to the multicast distribution apparatus 4000, the multicast packet relay processing unit 1300 notifies the IGMP snooping processing unit 1100 of the join request message in accordance with the VLAN registration table 1310. The control packet transmission / reception processing unit 1120 analyzes the notified join request message 201 to obtain the received VLAN name, the received port number, the multicast group, and the source IP address. Next, the control packet transmission / reception processing unit 1120 notifies the entry generation unit 1130 of the obtained VLAN name, received port number, multicast group, and source IP address.
[0060] The entry type determination unit 1131 of the entry generation unit 1130 compares the notified source IP address with the identified IP address registered in the VLAN management table 1111. If they match, it determines that the joining request message requires flooding. When it determines that the joining request message requires flooding, the entry type determination unit 1131 acquires all port information of the VLAN from the VLAN management table 1111 and registers a flooding entry in the entry management table 1132. Since the joining request message is determined to be a multicast group that requires flooding, the notified reception port number is not used (in the case of a normal relay entry, since the joining request message is relayed only to the port that received it, the port number is set in the output port information).
[0061] In this method, since the received joining request message needs to be relayed to the multicast router port, it notifies the control packet transmission / reception processing unit 1120 that it needs to be relayed to the multicast router port. Upon receiving the notification, the control packet transmission / reception processing unit 1120 relays the joining request message to the multicast router port if the multicast router port is set.
[0062] The flooding entry in the network configuration of FIG. 4 is shown in the entry management table 1132-1 of FIG. 7(b). In the VLAN name 1133, VLAN500 is set. In the entry type flag 1134, flooding indicating that the entry is a flooding entry is set. In the multicast group name 1135, Grp_addr3 which is the multicast group is set. In the output port information 1136, ports 1001, 1002, 1003, and 1004 which are all ports of VLAN500 acquired from the VLAN management table are set. In the remaining timer 1137, 260 seconds which is the remaining timer of VLAN500 acquired from the VLAN management table is set.
[0063] The entry management table 1132-2 is an example of an entry registered by the join request message 200 sent by the multicast receiving device 5010 in the network configuration diagram of FIG. 1. In the VLAN name 1133, there is VLAN500. In the entry type flag 1134, there is normal indicating that the entry is a normal entry registered by the join request message from the multicast receiving device. In the multicast group name 1135, there is Grp_addr2 which is the multicast group. In the output port information 1136, there is port 1003 which is the port that received the join request message. In the remaining timer 1137, 260 seconds are set.
[0064] After the IGMP snooping processing unit 1100 registers a flooding entry in the entry management table 1132, it notifies the multicast packet relay processing unit 1300 of the information of the registered flooding entry. Based on the notified information, the multicast packet relay processing unit 1300 registers the entry in the multicast packet relay control table 1320.
[0065] FIG. 7(d) shows the multicast packet relay control table 1320-1 to be registered. The multicast packet relay control table 1320-1 is a multicast packet relay control table registered based on the entry management table 1132-1 (FIG. 7(b)) of the flooding entry. In the VLAN name 1321 of the multicast packet relay control table 1320-1, there is VLAN500. In the multicast group name 1322, there is Grp_addr3. In the output port information, ports 1001, 1002, 1003, and 1004 are set. The multicast packet relay control table 1320-2 is an example of a multicast packet relay control table registered based on the entry management table 1132-2 (FIG. 7(b)) of the normal entry. In the VLAN name 1321, there is VLAN500. In the multicast group name 1322, there is Grp_addr2. In the output port information, port 1003 is set.
[0066] After the multicast distribution device 4000 sends a join request message for the multicast group, the multicast data 102 distributed by the multicast distribution device is shown in FIG. 4. Since the distributed multicast data 102 matches the VLAN name (VLAN500) and the multicast group name (Grp_addr3) in the multicast packet relay control table 1320-1 (FIG. 7(d)), the multicast relay device 1000 floods the multicast data within the VLAN (that is, relays it to ports 1002, 1003, and 1004 other than the received port 1001).
[0067] When multicast data distribution takes a long time, it is necessary to hold the flooding entry for a long time. A method for holding the flooding entry for a long time will be described below with reference to FIG. 3. In a network using IGMP, there is an IGMP querier, and the IGMP querier sends query messages periodically (generally at 125-second intervals). Assume that the multicast relay device 1000 in the network of FIG. 4 is the IGMP querier.
[0068] Since the multicast relay device 1000 (that is, the IGMP querier) sends query messages to all ports within the VLAN, a query message is also sent to the multicast distribution device 4000. When the multicast distribution device 4000 receives the query message, it notifies the received query message to the control packet transmission / reception processing unit 4200.
[0069] When the control packet transmission / reception processing unit 4200 receives a query message, it searches the distribution data information 4110 for a multicast group in which flooding is set in the distribution mode. If there is a multicast group in which flooding is set, the control packet transmission / reception processing unit 4200 creates a join request message in the same manner as the method described above and sends it to port 4001. The join request message 201 transmitted in this way is shown in FIG. 4.
[0070] The processing when the multicast relay device 1000 receives the join request message 201 responded by the multicast distribution device 4000 will be described with reference to FIG. 2. The received join request message 201 is notified to the IGMP snooping processing unit 1100 and analyzed by the control packet transmission / reception processing unit 1120 in the same manner as the method described above. The control packet transmission / reception processing unit 1120 notifies the analyzed content to the entry generation unit 1130 in the same manner as the method described above. If the relay entry of the multicast group is already registered, the entry generation unit 1130 updates the remaining timer 1137 of the relay entry to 260 seconds. As a result, since the remaining timer of the flooding entry registered in the multicast relay device 1000 is updated to 260 seconds, the flooding entry can be continuously held.
[0071] Next, a method for deleting the flooding entry will be described with reference to FIG. 4. After the multicast distribution device 4000 completes the distribution of the multicast data 102, the flooding entry in the multicast relay device 1000 can be deleted by not responding to the join request message in the inquiry message from the multicast relay device 1000 (i.e., the IGMP querier).
[0072] The processing when the multicast distribution device 4000 does not respond to the join request message when receiving the inquiry message will be described with reference to FIG. 3. When the multicast distributor completes the distribution of the multicast data, it deletes the distribution data information 4110 of the multicast group. Also, when changing the distribution of the multicast data from flooding to normal distribution (i.e., distribution only to the multicast receivers that have sent the join request message), the distribution mode of the distribution data information is changed to normal. FIG. 5(b) shows the distribution data information 4110-1 after the change. In this example, the distribution mode is changed to normal.
[0073] When the multicast distribution device 4000 receives the inquiry message, it notifies the control packet transmission / reception processing unit 4200 of the received inquiry message in the same manner as the method described above. When the control packet transmission / reception processing unit 4200 receives the inquiry message, it searches the distribution data information 4110 for a multicast group in which flooding is set in the distribution mode. Since the distribution of multicast data that requires flooding is completed, the multicast group in which flooding is set does not exist as shown in Fig. 5(b). Since the multicast group does not exist, a join request message is not created. As a result, since a join request message is not responded to the inquiry message, the remaining timer of the flooding entry is subtracted to zero in the multicast relay device 1000, and the flooding entry is automatically deleted.
[0074] Next, the output port change process when the VLAN port configuration is changed during the flooding entry registration will be described with reference to Fig. 4. A port 1005 for connecting the multicast receiving device 5030 to the multicast relay device 1000 is added. The internal process when the VLAN port configuration is changed will be described with reference to Fig. 2.
[0075] When changing the port configuration of a VLAN, the VLAN information 1210 in the device configuration definition unit 1200 is changed from the outside. As described above, when the VLAN information 1210 is changed from the outside, the IGMP snooping processing unit 1100 is notified and the VLAN management table 1111 is updated. At this time, the VLAN name and the port information after the change are notified to the entry type determination unit 1131 of the entry generation unit 1130. The entry type determination unit 1131 searches the entry management table 1132 to see if there is no flooding entry registered in the notified VLAN name. At this time, the entry type flag 1134 is used to determine the flooding entry, and an entry with "flooding" set in the entry type flag 1134 is determined as the flooding entry. If the flooding entry of the VLAN exists, the output port information 1136 of the flooding entry is updated to the port information of the notified VLAN. After the update of the output port information 1136 of the flooding entry is completed, the information of the flooding entry is notified to the multicast packet relay processing unit 1300. The multicast packet relay processing unit 1300 updates the output port information 1323 of the entry in the multicast packet relay control table 1320 based on the notified information. Thereby, even when the port configuration of the VLAN is changed during multicast data distribution, the output port information can be automatically updated.
[0076] FIG. 8 is an explanatory diagram showing an example of internal information when changing the port configuration of a VLAN in the multicast relay device 1000 according to Embodiment 1 of the present invention.
[0077] Specifically, FIG. 8 shows an entry management table (FIG. 8(a)) and a multicast relay control table (FIG. 8(b)) when the output port information of the flooding entry is changed during the VLAN port configuration change. From the entry management table 1132, an entry 1132-1 of VLAN 500 with an entry type flag of flooding is searched, and port 1005 is added to the output port information 1136. Port 1005 is added to the output port information 1323 of the corresponding entry 1320-1 in the multicast packet relay control table 1320.
[0078] By the above processing, when port 1005 is added to VLAN 500 during the flooding entry registration, multicast data (for example, multicast data 103 in FIG. 4) is automatically relayed to the multicast receiving device 5030. The same method can be used to handle the case when a port is deleted from the VLAN.
[0079] Next, a control method when there are multiple multicast relay devices in the network will be described with reference to FIG. 9.
[0080] FIG. 9 is a block diagram showing an example of a network configuration including a plurality of multicast relay devices in the first embodiment of the present invention.
[0081] The network configuration shown in FIG. 9 includes a plurality of multicast relay devices 1000, 2000, and 3000, and a multicast distribution device 4000 is connected to the multicast relay device 1000.
[0082] Generally, in IGMP snooping, the ports connecting multicast relay devices are set as multicast router ports. In the configuration of FIG. 9, ports 1005, 2001, 2002, and 3001 are set as multicast router ports. In IGMP snooping, join request messages and multicast data are relayed to the multicast router ports. As a result, the join request messages and multicast data are automatically relayed to all multicast relay devices in the network. Therefore, by applying the above-described flooding entry setting method to each multicast relay device, a flooding entry can be registered in each multicast relay device, and the multicast data can be flooded.
[0083] Also, in order to relay join request messages and multicast data to all multicast relay devices via the multicast router ports, any multicast relay device in the network can be connected to the multicast distribution device. For a multicast relay device that does not want to register a flooding entry, flooding condition identification information may be set in the multicast relay device. In the network of FIG. 9, assume that flooding condition identification information is set in multicast relay devices 1000 and 3000, and flooding condition identification information is not set in multicast relay device 2000.
[0084] FIG. 9 shows a state where, for example, when multicast data 100 is a flooding target, multicast relay devices 1000 and 3000 flood the multicast data, and multicast relay device 2000 does not flood the multicast data.
[0085] Next, a control method when there are multiple multicast distribution devices in the network will be described with reference to FIG. 10.
[0086] FIG. 10 is a block diagram showing an example of a network configuration including a plurality of multicast distribution devices in the first embodiment of the present invention and internal information thereof.
[0087] FIG. 10(a) shows a network configuration in which a multicast distribution device 4010 is further connected to the network configuration shown in FIG. 4. When there are a plurality of multicast distribution devices, a plurality of flooding condition identification information for each multicast relay device is set. As a result, a flooding entry can be registered with the join request messages transmitted by the plurality of multicast distribution devices, so that the multicast data transmitted by the plurality of multicast distribution devices can be flooded within the VLAN.
[0088] FIG. 10(b) shows the flooding condition identification information 1230-1 when the multicast distribution devices 4000 and 4010 are connected. The IP address Src_addr1 of the multicast distribution device 4000 and the IP address Src_addr2 of the multicast distribution device 4010 are set to the identification IP address 1233.
[0089] FIG. 10(c) shows the VLAN management table 1111 when the multicast distribution devices 4000 and 4010 are connected. The IP address Src_addr1 of the multicast distribution device 4000 and the IP address Src_addr2 of the multicast distribution device 4010 are registered in the identification IP address 1115 of the corresponding VLAN management table 1111-1.
[0090] In the above method, each multicast relay device determines a join request message that instructs flooding sent by the multicast distribution device. If it is a join request message from the multicast distribution device, flooding of the multicast data is realized by registering a flooding entry. However, in this method, since all multicast relay devices flood the multicast data distributed by the multicast distribution device, it is not possible to distinguish the multicast data to be flooded for each multicast relay device. Next, a method that enables distinguishing the multicast data to be flooded for each multicast relay device will be further described.
[0091] FIG. 11 is a block diagram showing an example of a network configuration in which flooding is performed by designating a multicast relay device in Embodiment 1 of the present invention.
[0092] A method of designating a multicast relay device and a multicast group in the network diagram of FIG. 11(a) will be described. FIG. 11 shows a configuration of a network including a plurality of multicast relay devices 1000, 2000, and 3000, in which a multicast distribution device 4000 is connected to the multicast relay device 1000. The configuration itself is the same as that of FIG. 9. Since the internal structure of the multicast distribution device 4000 in this method is the same as that of the above-described method, it will be described with reference to FIG. 3. In this method, the IP address of the multicast relay device for setting the flooding entry is set in the source address of the distribution data information 4110.
[0093] In the case of the join request message 200 in the network diagram of Fig. 11(a), set the multicast group name to Grp_addr1, which is the multicast group for the multicast relay device 3000, and set the source address to IP_addr3, which is the IP address of the multicast relay device 3000. In the case of the join request message 201, set the multicast group name to Grp_addr2, which is the multicast group for the multicast relay device 1000, and set the source address to IP_addr1, which is the IP address of the multicast relay device 1000. The VLAN name and the distribution mode are the same as those of the above-described method.
[0094] The distribution data specifying unit 4100 notifies the control packet transmission / reception processing unit 4200 of the VLAN name, the multicast group name, the source address, and the distribution mode. When the notified distribution mode is flooding, the control packet transmission / reception processing unit 4200 creates a join request message with the notified VLAN name and multicast group, sets the notified source address as the source address, and transmits the join request message to port 4001. The method of distributing multicast data after transmitting the join request message is the same as the method described above.
[0095] That is, the example shown in Fig. 11 differs from the examples shown in Figs. 4 and 9 only in the source address set in the join request message. In the cases of the examples shown in Figs. 4 and 9, the source address set in the join request message is the IP address of the multicast distribution device itself, but in the case of the example shown in Fig. 11, the IP address of the multicast relay device for which flooding is desired is set. As a result, the multicast relay device that has received the join request message can determine whether to flood the data of the specified multicast group by checking the source address of the message.
[0096] Fig. 12 is a block diagram showing an example of distribution data information in the case of performing flooding designating the multicast relay device in the first embodiment of the present invention.
[0097] Fig. 12(a) shows the distribution data information 4110-1 and 4110-2 set in the multicast distribution device 4000 to distribute the multicast data 100 in the network diagram of Fig. 11(b).
[0098] In the distribution data information 4110-1, VLAN500 is set for the VLAN name 4111, Grp_addr1 is set for the multicast group name 4112, the IP address IP_addr3 of the multicast relay device 3000, which is the flooding target device, is set for the source address 4113, and flooding is set for the distribution mode 4114.
[0099] In the distribution data information 4110-2, VLAN500 is set for the VLAN name 4111, Grp_addr2 is set for the multicast group name 4112, the IP address IP_addr1 of the multicast relay device 1000, which is the flooding target device, is set for the source address 4113, and flooding is set for the distribution mode 4114.
[0100] The internal processing of the multicast relay device when receiving the join request message in this method will be described with reference to Fig. 2. The received join request message is notified to the IGMP snooping processing unit 1100 in the same way as the above-described method, and the control packet transmission / reception processing unit 1120 analyzes it and obtains the received VLAN name, received port number, multicast group, and source IP address in the same way as the above-described method.
[0101] Next, the control packet transmission / reception processing unit 1120 notifies the entry generation unit 1130 of the acquired VLAN name, the received port number, the multicast group, and the source IP address. The entry type determination unit 1131 compares the source IP address of the notified join request message with the IP address of the own device VLAN set in the VLAN management table 1111. As a result of the comparison, if the IP addresses match, it is determined that the received join request message is a join request message for the own device, and a flooding entry is registered in the multicast group of the notified join request message.
[0102] Since the said join request message is a join request message for the own device, the entry type determination unit 1131 notifies the control packet transmission / reception processing unit 1120 that relaying to the multicast router port is unnecessary. The control packet transmission / reception processing unit 1120 that has received the notification does not relay the join request message to the multicast router port. The method of registering and deleting the flooding entry and the update of the output port of the flooding entry when the port configuration of the VLAN is changed are the same as the above method.
[0103] As a result of the comparison, if the IP addresses do not match, since the received join request message is not a join request message for the own device, the entry type determination unit 1131 notifies the control packet transmission / reception processing unit 1120 that relaying to the multicast router port is necessary. The control packet transmission / reception processing unit 1120 that has received the notification relays the said join request message to the multicast router port if the multicast router port is configured.
[0104] As a result, flooding can be performed for a specific multicast group by a specific multicast relay device in the network. The multicast data distribution after setting the flooding entry in each multicast relay device is shown in Fig. 11(b). Since the flooding entry for Grp_addr2 is set in the multicast relay device 1000 and the flooding entry for Grp_addr1 is set in the multicast relay device 3000, the multicast data 100 (Grp_addr1) distributed from the multicast distribution device 4000 is flooded only by the multicast relay device 3000, and the multicast data 101 (Grp_addr2) is flooded only by the multicast relay device 1000.
[0105] Fig. 13 is a flowchart showing an example of the processing at the time of multicast data distribution of the multicast distribution device in the first embodiment of the present invention.
[0106] The multicast distribution device checks whether the multicast data to be distributed is multicast data that requires flooding (6000). If it is multicast data that requires flooding (6000: Yes), it creates a join request message for the multicast group (6001).
[0107] Next, the multicast distribution device checks whether the multicast data is multicast data that floods by designating a multicast relay device (6002). If it is multicast data that designates a multicast relay device, it sets the IP address of the target device as the source address of the join request message (6003). If the multicast data is not multicast data that designates a multicast relay device, the multicast distribution device sets its own IP address as the source address of the join request message (6004).
[0108] Next, the multicast distribution device transmits the join request message (6005) and starts distributing the multicast data (6006). If the multicast data to be distributed is not multicast data that requires flooding (6000: No), the multicast distribution device starts distributing the multicast data (6006) without executing steps 6001 to 6005.
[0109] FIG. 14 is a flowchart showing an example of the processing of the control packet transmission / reception processing unit 1120 when the multicast relay device in the first embodiment of the present invention receives a join request message.
[0110] The control packet transmission / reception processing unit 1120 checks whether the multicast relay device has received a join request message (6100). If the multicast relay device has received a join request message (6100: Yes), it analyzes the join request message (6101) and notifies the entry type determination unit 1131 of the analyzed information (received VLAN name, received port number, multicast group, source IP address) (6102). Thereafter, based on the response from the entry type determination unit 1131, the control packet transmission / reception processing unit 1120 checks whether the join request message needs to be relayed to the multicast router port (6103). If relaying is required (6103: Yes), it relays the join request message to the multicast router port (6104).
[0111] FIG. 15 is a flowchart showing an example of the processing of the entry type determination unit 1131 when the multicast relay device in the first embodiment of the present invention receives a join request message.
[0112] When information obtained by analyzing the join request message is notified to the entry type determination unit 1131 upon receipt of the join request message (step 6102 in FIG. 14), the entry type determination unit 1131 checks whether the flooding notification mode of the VLAN is distributor (6200). If the flooding notification mode is distributor (6200: Yes), the entry type determination unit 1131 checks whether the relay entry of the multicast group has been registered (6201).
[0113] If the relay entry of the multicast group has not been registered (6201: No), the entry type determination unit 1131 checks whether the source address of the join request message is the IP address of its own device (6202). If the source address of the join request message is the IP address of its own device (6202: Yes), the entry type determination unit 1131 registers a flooding entry in the multicast group (6206) and responds that no relay to the multicast router port is required (6207).
[0114] If the source address of the join request message is not the IP address of its own device (6202: No), the entry type determination unit 1131 checks whether the source address of the join request message is the IP address of the distributor (6203). If the source address of the join request message is the IP address of the distributor (6203: Yes), the entry type determination unit 1131 registers a flooding entry in the multicast group (6204) and responds that relay to the multicast router port is required (6212). If the source address of the join request message is not the IP address of the distributor (6203: No), the entry type determination unit 1131 registers a normal relay entry in the multicast group (6205) and responds that relay to the multicast router port is required (6212).
[0115] When the relay entry of the multicast group has been registered (6201: Yes), the entry type determination unit 1131 updates the remaining timer of the relay entry to 260 seconds (6208) and responds that relay is required for the multicast router port (6212). When the flooding notification mode is not distributor (6200: No), the entry type determination unit 1131 checks whether the relay entry has been registered (6209). When the relay entry has not been registered (6209: No), the entry type determination unit 1131 registers a normal relay entry (6210) and responds that relay is required for the multicast router port (6212). When the relay entry has been registered (6209: Yes), the entry type determination unit 1131 updates the remaining timer of the relay entry to 260 seconds (6211) and responds that relay is required for the multicast router port (6212).
[0116] FIG. 16 is a flowchart showing an example of the processing of the entry type determination unit 1131 when the port configuration of the VLAN is changed during the registration of the flooding entry in the first embodiment of the present invention.
[0117] The entry type determination unit 1131 checks whether the port configuration of the VLAN has been changed (6300). When the port configuration of the VLAN has been changed (6300: Yes), it checks whether a flooding entry has been registered in the VLAN (6301). When a flooding entry has been registered in the VLAN (6301: Yes), the entry type determination unit 1131 updates the output port information of the flooding entry (6302).
[0118] FIG. 17 is a flowchart showing the processing when the multicast distribution device receives an inquiry message in the first embodiment of the present invention.
[0119] The multicast distribution device checks whether it has received an inquiry message (6400). If it has received an inquiry message (6400: Yes), it checks whether it is distributing multicast data that needs to be flooded (6401). If it is distributing multicast data that needs to be flooded (6401: Yes), it checks whether the distributed multicast data is the multicast data specified by the multicast relay device (6402).
[0120] If the distributed multicast data is the multicast data specified by the multicast relay device (6402: Yes), the multicast distribution device sets the IP address of the multicast relay device to the source address of the join request message (6403), and sends a join request message for the multicast group (6405). If the distributed multicast data is not the multicast data specified by the multicast relay device (6402: No), the multicast distribution device sets the IP address of the multicast distribution device to the source address of the join request message (6404), and sends a join request message for the multicast group (6405).
[0121] As an effective utilization example of this embodiment, utilization in a network providing a video distribution service via multicast can be considered. When providing a service that all viewers can watch for free in addition to the video channels for which the multicast receiving device (viewer) has concluded a contract allowing viewing, if the multicast data of the free video channel is distributed by the flooding technique described above, it is possible to flexibly respond to control of the number of channels, distribution time, and multicast relay devices that require / do not require distribution. Also, in a service where a multicast distribution device (where the multicast distributor can view the video on the multicast distribution device) to which a large number of surveillance cameras are connected is installed in a station building, on a highway, in a disaster risk area, etc., and the captured video is distributed via multicast, and a large number of viewers (multicast receivers) randomly monitor the video of the surveillance cameras, when the multicast distributor detects an abnormality from the video of the multicast distribution device and wants to distribute the video to all viewers to notify them of the abnormality, if it is distributed by the flooding technique described above, even if a large number of multicast relay devices and receiving devices are installed in the network, the abnormality can be instantly notified to all viewers.
[0122] In this embodiment, the multicast distribution device notifies the multicast relay device of the multicast group that requires flooding, thereby registering a flooding entry in the multicast relay device and flooding the multicast data. Since the flooding entry is set only during the distribution of the multicast data, no unnecessary entries are consumed. Also, since the flooding entry is registered based on a notification from the multicast distributor, there is no need to pre-determine the multicast group. Even when the port configuration of the VLAN changes during the distribution of the multicast data, the output port of the flooding entry can be automatically updated.
[0123] When it is desired to distinguish the multicast groups to be flooded for each multicast relay device in the network, it can be controlled by designating the target multicast relay device by a notification from the multicast distribution device.
[0124] Although this embodiment has been described with IGMP snooping, MLD snooping can also be implemented with the same processing.
[0125] Also, in this embodiment, as an example of means for the multicast distribution device to notify the multicast relay device of the multicast group that requires flooding, an example of diverting an IGMP packet has been shown, but other examples such as using a message format specially defined for this function may also be used.
Embodiment
[0126] In the above-described Embodiment 1, when the multicast distribution device distributes multicast data that requires flooding, it is a technique for the multicast distribution device to notify the multicast relay device of the multicast group that requires flooding. Since Embodiment 1 is a technique for registering a flooding entry triggered by the multicast distribution device, for example, in a network that distributes a large number of multicast groups, when a multicast receiving device detects a multicast group that requires flooding, it is not possible to register a flooding entry triggered by the multicast receiving device.
[0127] Embodiment 2 is a technique for registering a flooding entry triggered by the multicast receiving device when the multicast receiving device detects a multicast group that requires flooding. Except for the differences described below, each part of the system of Embodiment 2 is equivalent to each part with the same reference numeral in Embodiment 1, so the description is omitted.
[0128] FIG. 18 is a block diagram showing an example of a network configuration using IGMP snooping in Embodiment 2 of the present invention.
[0129] The multicast distribution device 4000 is distributing multicast data 100 (Grp_addr1). Since the multicast receiving device 5020 intends to join Grp_addr1, it sends a join request message 200 and receives the multicast data 100. The multicast receiving devices 5000 and 5010 do not intend to join, so they do not receive the multicast data 100.
[0130] In this state, if the multicast receiving device 5020 determines that it is necessary to distribute the multicast data 100 to all multicast receiving devices while viewing the multicast data 100, an IP address (e.g., 0.0.0.0) indicating that flooding is required is set in the source address of the join request message of the multicast group, and the join request message 201 is sent to the multicast relay device 1000.
[0131] The determination that distribution to all multicast receiving devices is necessary is made, for example, by a viewer using the multicast receiving device through a user interface (not shown) provided in the multicast receiving device and instructing the multicast receiving device by a command or the like. When the multicast relay device 1000 receives a join request message 200 with a source address of 0.0.0.0, it determines that it is a multicast group that requires flooding and registers a flooding entry for the multicast group. As a result, the multicast data 100 is also relayed to the multicast receiving devices 5000 and 5010 (multicast data 101 and 102, respectively).
[0132] When the multicast receiving device 5020 determines that flooding of the multicast data is unnecessary, it transmits a normal (i.e., the source address is the device address (IP_addr52)) join request message 200. The multicast relay device 1000 receives the normal join request message, and if the relay entry of the multicast group is a flooding entry, it changes it to a normal entry. As a result, flooding of the multicast data stops, and the multicast relay device 1000 relays the multicast data only to the port 1004 that received the join request message.
[0133] FIG. 19 is a block diagram showing an example of the internal structure of the multicast receiving device 5000 in the second embodiment of the present invention.
[0134] The multicast receiving device 5000 includes a received data specifying unit 5100, a control packet transmission / reception processing unit 5200, a multicast data display unit 5300, and a multicast data receiving unit 5400.
[0135] Received data information 5110 is externally specified to the received data specifying unit 5100. In the received data information 5110, a VLAN name to which the multicast receiving device is connected, a multicast group name to be received, a reception mode, and a flooding discrimination address are set. For the reception mode, normal is set for multicast data to be received only by the device itself (i.e., the device that transmitted the join request message), and flooding is set for multicast data that needs to be relayed to all multicast receiving devices.
[0136] The multicast data receiving unit 5400 is a processing unit that determines whether the received multicast data needs to be displayed, and if it does, transfers the multicast data to the multicast data display unit 5300. The multicast data display unit 5300 is a processing unit that displays the multicast data transferred from the multicast data receiving unit 5400 to the outside (e.g., a display device). The control packet transmission / reception processing unit 5200 is a processing unit that receives inquiry messages and transmits join request messages.
[0137] Note that since the internal structures of the multicast receiving devices 5010 and 5020 are the same as that of the multicast receiving device 5000, the description thereof is omitted.
[0138] Using FIG. 19, the internal processing of the multicast receiving device 5000 of this embodiment will be described. When the multicast receiving device 5000 designates the multicast data it wants to receive, in the received data information 5110, the VLAN name and the multicast group (Grp_addr1) it wants to receive are set. Since the reception mode requests relay only to its own device, normal is set, and nothing is set for the flooding discrimination address because it is a multicast group that does not require flooding.
[0139] When the received data information 5110 is set, the received data specifying unit 5100 notifies the control packet transmission / reception processing unit 5200 of the VLAN name, the multicast group, the reception mode, and the flooding discrimination address. The control packet transmission / reception processing unit 5200 creates a join request message for the notified multicast group, and when the reception mode is normal, sets its own device address as the transmission source address of the join request message and transmits it to port 5001.
[0140] Next, the received data specifying unit 5100 notifies the specified VLAN name and multicast group to the multicast data receiving unit 5400. The multicast data receiving unit 5400 registers the notified VLAN name and multicast group in the received data determination table 5410.
[0141] Thereafter, the multicast data relayed to port 5001 of the multicast receiving apparatus 5000 is transferred to the multicast data receiving unit 5400 and compared with the multicast data registered in the received data determination table 5410. When the VLAN name and multicast group of the multicast data relayed to port 5001 match the VLAN name and multicast group registered in the received data determination table 5410, the multicast data receiving unit 5400 transfers the multicast data to the multicast data display unit 5300. The multicast data display unit 5300 displays the transferred multicast data on a display device (not shown).
[0142] When the viewer of the multicast receiving apparatus 5000 determines that it is necessary to flood the received multicast data, the reception mode of the corresponding multicast group in the received data information 5110 is changed to flooding, and 0.0.0.0 is set as the flooding discrimination address. When the received data information 5110 is changed, the received data specifying unit 5100 notifies the control packet transmission / reception processing unit 5200 of the VLAN name, the multicast group, the reception mode, and the flooding discrimination address in the same manner as described above. The control packet transmission / reception processing unit 5200 creates a join request message for the notified multicast group, sets 0.0.0.0, which is the flooding discrimination address, as the transmission source address, and transmits the join request message to port 5001.
[0143] FIG. 20 is an explanatory diagram showing an example of the internal information of the multicast receiving apparatus 5000 in the second embodiment of the present invention.
[0144] The received data information 5110-1 shown in Fig. 20(a) is an example of the received data information 5110 before requesting flooding of the multicast receiver 5000 in the network configuration of Fig. 18. The VLAN name 5111 is set to VLAN500, the multicast group name 5112 is set to Grp_addr1 which is the multicast group to join, the reception mode 5113 is set to normal because it is before it is determined that flooding of the multicast data is necessary, and the flooding discrimination address 5114 is not set because it is before it is determined that flooding of the multicast data is necessary.
[0145] The received data information 5110-1 shown in Fig. 20(b) is an example of the received data information 5110 when it is determined that the received multicast data requires flooding. The reception mode 5113 is changed to flooding, and 0.0.0.0 is set in the flooding discrimination address 5114.
[0146] The received data determination table 5410-1 shown in Fig. 20(c) is an example of the received data determination table 5410 of the multicast receiver 5000. The VLAN name 5411 is set to the target VLAN500, and the multicast group name 5412 is set to Grp_addr1 which is the multicast group to be received.
[0147] Since the internal structure of the multicast relay device is the same as that of the first embodiment, the internal processing of the multicast relay device 1000 will be described with reference to FIG. 2. In this embodiment, in order to determine the setting of the flooding entry based on the notification from the multicast receiving device, "receiver" is set in the flooding notification mode 1231 of the flooding condition identification information 1230, and the source address of the join request message that requires flooding is set in the identification IP address 1233. For example, when a join request message with a source address of 0.0.0.0 is regarded as a join request message that requires flooding, 0.0.0.0 is set in the identification IP address 1233. Other setting items are the same as those in the first embodiment. When this embodiment is enabled, the VLAN information 1210, the IGMP snooping information 1220, and the flooding condition identification information 1230 are set from the outside.
[0148] FIG. 21 is an explanatory diagram showing an example of the device configuration definition information of the multicast relay device 1000 in the second embodiment of the present invention.
[0149] As examples of the VLAN information 1210 and the IGMP snooping information 1220, the VLAN information 1210-1 and the IGMP snooping information 1220-1 of the multicast relay device 1000 in the network configuration of FIG. 18 are shown in FIGS. 21(a) and 21(b), respectively. The set content is the same as that in the first embodiment.
[0150] As an example of the flooding condition identification information 1230, the flooding condition identification information 1230-1 of the multicast relay device 1000 in the network configuration of FIG. 18 is shown in FIG. 21(c). In order to register a flooding entry based on the notification from the multicast receiving device, "receiver" is set in the flooding notification mode 1231, "VLAN500" is set in the VLAN name 1232, and 0.0.0.0 is set in the identification IP address 1233 in order to determine that a join request message with a source address of 0.0.0.0 is a join request message that requires flooding.
[0151] The information set in the device configuration definition unit 1200 is notified to the IGMP snooping processing unit 1100 in the same manner as in the first embodiment, and the VLAN management table 1111 is generated based on this information.
[0152] FIG. 22 is an explanatory diagram showing an example of the internal information of the multicast relay device 1000 in the second embodiment of the present invention.
[0153] As an example of the VLAN management table 1111, the VLAN management table 1111-1 of the multicast relay device 1000 in the network configuration of FIG. 18 is shown in FIG. 22(a). In the flooding notification mode 1113, as registered in the flooding condition identification information 1230, in order to register a flooding entry based on a notification from a multicast receiver, "receiver" is set. In the identification IP address 1115, as registered in the flooding condition identification information 1230, in order to target a join request message with a source address of 0.0.0.0 for the flooding entry, 0.0.0.0 is set. Other items are the same as in the first embodiment.
[0154] Next, the IGMP snooping processing unit 1100 notifies the VLAN management table 1111 to the multicast packet relay processing unit 1300, and the multicast packet relay processing unit 1300 registers the VLAN management table 1111 in the VLAN registration table 1310 to enable IGMP snooping in the corresponding VLAN. The method of enabling IGMP snooping is the same as in the first embodiment. The join request message received by the multicast relay device 1000 is notified to the IGMP snooping processing unit 1100 in the same manner as in the first embodiment. The control packet transmission / reception processing unit 1120 acquires the VLAN name of the join request message, the port number on which the join request message was received, the multicast group, and the source address.
[0155] Next, the control packet transmission / reception processing unit 1120 notifies the entry generation unit 1130 of the acquired VLAN name, the port number on which the join request message was received, the multicast group, and the source address. When the entry type determination unit 1131 of the entry generation unit 1130 determines that the notified source address is 0.0.0.0, it searches the VLAN management table 1111 to check whether the flooding notification mode of the VLAN is receiver.
[0156] When the flooding notification mode of the VLAN is receiver, the entry type determination unit 1131 determines that the join request message is a multicast group that requires flooding, and registers a flooding entry for the multicast group. In this embodiment, the received port information 1138 is added to the entry management table 1132. The port number on which the notified join request message was received is registered in the received port information 1138 of the flooding entry. The registration contents of the other flooding entries are the same as those in the first embodiment.
[0157] The entry type determination unit 1131 determines that it is necessary to relay the received join request message to the multicast router port, and notifies the control packet transmission / reception processing unit 1120 that relaying to the multicast router port is necessary. Upon receiving the notification, the control packet transmission / reception processing unit 1120 relays the join request message to the multicast router port.
[0158] Next, the process of stopping the flooding of the multicast data flooded by the registered flooding entry will be described with reference to FIG. 2.
[0159] When receiving a join request message of the multicast group during registration of a flooding entry, in the same manner as the method described above, the multicast packet relay processing unit 1300 notifies the IGMP snooping processing unit 1100, and the control packet transmission / reception processing unit 1120 analyzes the join request message to obtain the VLAN name, the port number on which the join request message is received, the multicast group, and the source address. The control packet transmission / reception processing unit 1120 notifies the obtained information to the entry generation unit 1130 in the same method as the method described above. The entry type determination unit 1131 of the entry generation unit 1130 checks whether there is a relay entry for the notified multicast group.
[0160] If there is a relay entry for the multicast group and the relay entry is a flooding entry, the entry type determination unit 1131 checks whether the notified source address is 0.0.0.0. If the source address is not 0.0.0.0, the entry type determination unit 1131 compares the notified reception port with the reception port information of the flooding entry. If the reception port information matches, the entry type determination unit 1131 determines that the received join request message is a join request message requesting the stop of flooding from the multicast receiving device that requested flooding. In that case, the entry type determination unit 1131 updates the output port information 1136 of the flooding entry to include only the reception port of the notified join request message, and sets the entry type flag 1134 to normal. The entry type determination unit 1131 notifies the multicast packet relay processing unit 1300 of this entry management table 1132 in the same method as the method described above, and updates the multicast packet relay control table 1320. Thereby, the flooding of the multicast data stops, and the multicast data is relayed only to the reception port of the join request message.
[0161] If the received join request message is a join request message that requests the stop of flooding from the multicast receiving device that requested flooding, since it is necessary to notify other multicast relay devices as well, the entry type determination unit 1131 notifies the control packet transmission / reception processing unit 1120 that relay is necessary for the multicast router port. When receiving a notification that relay is necessary for the multicast router port, the control packet transmission / reception processing unit 1120 relays the join request message to the multicast router port.
[0162] On the other hand, as a result of comparing the notified reception port with the reception port information of the flooding entry, if the reception port information does not match, the entry type determination unit 1131 determines that the join request message is a join request message from a multicast receiving device other than the multicast receiving device that requested flooding, and discards the join request message. Since the multicast data is being flooded, there is no problem in discarding the join request message. If the join request message is a join request message from a device other than the multicast receiving device that requested flooding, since it is not necessary to notify other multicast relay devices, the entry type determination unit 1131 notifies the control packet transmission / reception processing unit 1120 that relay is not necessary for the multicast router port.
[0163] When receiving a notification that relay is not necessary for the multicast router port, the control packet transmission / reception processing unit 1120 does not relay the join request message to the multicast router port. By this process, the update of the flooding entry to a normal relay entry can be controlled only by the join request message from the multicast receiving device that requested flooding.
[0164] Figure 22(b) shows the entry management table 1132-1 of the flooding entry in this embodiment. Since the entry is a flooding entry, "flooding" is set in the entry type flag 1134, and ports 1001, 1002, 1003, and 1004, which are all ports of the VLAN, are set in the output port information 1136. Port 1004, which is the port that received the join request message, is set in the received port information 1138.
[0165] Figure 22(c) shows the entry management table 1132-1 when the flooding entry is updated to a normal entry in this embodiment. Since the entry is updated to a normal entry, "normal" is set in the entry type flag 1134, and 1004, which is the port that received the join request message, is set in the output port information.
[0166] The deletion of the flooding entry in this embodiment and the update process of the output port information when the port configuration of the VLAN changes during entry registration are the same as those in Embodiment 1.
[0167] The process when the registration of the flooding entry takes a long time will be described with reference to FIG. 18. When the multicast relay device 1000 is an IGMP querier, the query message from the IGMP querier is sent to all ports within VLAN500. When the multicast receiving device 5020 receives a join request message, if the join request message is responded to with the source address 0.0.0.0, the remaining timer of the flooding entry is updated, so the flooding entry can be retained.
[0168] The process in which the multicast receiver 5000 receives an inquiry message and responds with a join request message will be described with reference to FIG. 19. When the multicast receiver 5000 receives an inquiry message, it notifies the control packet transmission / reception processing unit 5200 of the inquiry message. The control packet transmission / reception processing unit 5200 analyzes the notified inquiry message to obtain the VLAN name, and obtains the VLAN name 5111, multicast group name 5112, reception mode 5113, and flooding discrimination address 5114 set in the received data information 5110. Next, the control packet transmission / reception processing unit 5200 creates a join request message using the obtained group address, and if the reception mode is flooding, sets the flooding discrimination address (0.0.0.0) as the source address of the join request message and transmits it to port 5001. This realizes the response of the join request message that requires flooding to the inquiry message from the IGMP querier.
[0169] Even when there are multiple multicast relay devices in the network, by relaying the join request message to the multicast router port as in the basic operation of IGMP snooping, flooding entries can be registered in all multicast relay devices. A multicast relay device that does not require registration of a flooding entry can suppress the registration of a flooding entry in the multicast relay device by not setting the flooding condition identification information.
[0170] In this embodiment, by setting 0.0.0.0 as the source address of the join request message, it is determined that the join request message requires flooding. However, there are various methods for determining a multicast group that requires flooding, and it is not limited to this method.
[0171] FIG. 23 is a flowchart showing an example of the process at the time of transmitting a join request message of the multicast receiver in the second embodiment of the present invention.
[0172] The joining request message transmission flow when it is determined that the multicast data received by the multicast receiver needs to be distributed to all multicast receivers is shown in Fig. 23(a). The multicast receiver checks whether the received multicast data needs to be distributed to all receivers (6500). If it is determined that the data needs to be distributed to all receivers (6500: Yes), the receiver sends a joining request message for the multicast group with the source address set to 0.0.0.0 (6501).
[0173] Next, the joining request message transmission flow when the multicast receiver receives an inquiry message is shown in Fig. 23(b). When the multicast receiver receives an inquiry message (6600: Yes), it checks whether the received multicast data is multicast data that needs to be distributed to all multicast receivers (6601). If the received multicast data is multicast data that needs to be distributed to all multicast receivers (6601: Yes), the multicast receiver sends a joining request message for the multicast group with the source address set to 0.0.0.0 (6602). If the received multicast data is not multicast data that needs to be distributed to all multicast receivers (6601: No), the receiver sends a joining request message for the multicast group with the source address set to its own IP address (6603).
[0174] The flow when the multicast relay device receives a joining request message is the same as that in the first embodiment (see Fig. 14(a)).
[0175] Fig. 24 is a flowchart showing an example of the processing of the entry type determination unit 1131 when the multicast relay device in the second embodiment of the present invention receives a joining request message.
[0176] The entry type determination unit 1131 checks whether the notified flooding notification mode is "receiver" (6700). If the flooding mode is "receiver" (6700: Yes), it checks whether the source address of the join request message is 0.0.0.0 (6701). If the source address is 0.0.0.0 (6701: Yes), the entry type determination unit 1131 checks whether the relay entry of the multicast group has been registered (6702). If the relay entry of the multicast group has been registered (6702: Yes), the entry type determination unit 1131 checks whether the entry is a flooding entry (6704).
[0177] If the entry is not a flooding entry (6704: No), the entry type determination unit 1131 changes the relay entry to a flooding entry (6705), updates the remaining timer to 260 seconds (6714), and responds that relay is required at the multicast router port (6715). If the entry is a flooding entry (6704: Yes), the entry type determination unit 1131 updates the remaining timer to 260 seconds (6714) and responds that relay is required at the multicast router port (6715).
[0178] If the entry has not been registered (6702: No), the entry type determination unit 1131 registers the flooding entry (6703) and responds that relay is required at the multicast router port (6715).
[0179] If the source address of the join request message is not 0.0.0.0 (6701: No), the entry type determination unit 1131 checks whether the relay entry of the multicast group has been registered (6706). If the relay entry of the multicast group has been registered (6706: Yes), the entry type determination unit 1131 checks whether the entry is a flooding entry (6709).
[0180] When the entry is a flooding entry (6709: Yes), the entry type determination unit 1131 checks whether the port that received the join request message matches the flooding entry join request reception port (6710). If the join request reception ports match (6710: Yes), the entry type determination unit 1131 changes the relay entry to a normal entry (6711), updates the remaining timer to 260 seconds (6714), and responds that relay is required at the multicast router port (6715). If the join request reception ports do not match (6710: No), the entry type determination unit 1131 responds that relay is not required at the multicast router port (6708).
[0181] When the entry is not a flooding entry (6709: No), the entry type determination unit 1131 updates the remaining timer to 260 seconds (6714) and responds that relay is required at the multicast router port (6715).
[0182] When the entry is not registered (6706: No), the entry type determination unit 1131 registers a normal relay entry (6707) and responds that relay is required at the multicast router port (6715).
[0183] When the flooding notification mode is not receiver (6700: No), the entry type determination unit 1131 checks whether the relay entry for the multicast group is registered (6712). When the relay entry for the multicast group is registered (6712: Yes), the entry type determination unit 1131 updates the remaining timer of the entry to 260 seconds (6714) and responds that relay is required at the multicast router port (6715). When the entry is not registered (6712: No), the entry type determination unit 1131 registers a normal relay entry (6713) and responds that relay is required at the multicast router port (6715).
[0184] As an effective utilization example of this embodiment, its utilization in a network that performs video distribution of surveillance cameras via multicast can be considered. This network is a network to which a large number of multicast distribution devices (surveillance cameras) and a large number of multicast receiving devices (viewers) are connected, and it is a service in which viewers randomly check the video (multicast data) of surveillance cameras on a video display device. When a viewer discovers an abnormality on the video display device and wants other viewers to urgently view the video, the viewer who detected the abnormality notifies the multicast relay device of the multicast group using the technology of this embodiment, and if the flooding entry of the multicast group is registered in the multicast relay device, all viewers can view the video immediately. Even when there are a large number of multicast relay devices in the network, by using this technology, the flooding entry can be registered in all multicast relay devices immediately according to an instruction from a certain multicast receiving device, and the multicast data can be distributed to all viewers connected to the large number of multicast relay devices.
[0185] Note that this embodiment can also be realized in MLD snooping, and that when an instruction for flooding specific multicast data is given from a multicast receiving device to a multicast relay device, a specially defined message other than IGMP can also be used, which is the same as in Embodiment 1.
[0186] As described above, in the present invention, the following two means are proposed to solve the problems.
[0187] As the first means (Embodiment 1), before a multicast distribution device distributes multicast data that requires flooding, the multicast group to be distributed now is notified to the multicast relay device in various ways.
[0188] Upon receiving the notification from the multicast distribution device, the multicast relay device determines, in various ways, that the received notification is a notification of a multicast group that requires flooding, and creates a relay entry for flooding (flooding entry). In the flooding entry, the VLAN number, multicast group, and output port are set. The VLAN number is the VLAN number in which the flooding entry is registered, the multicast group is the multicast group obtained from the notification, and the output port is set to all ports of the VLAN obtained from the port information of the VLAN.
[0189] After notifying the multicast relay device of the multicast group, the multicast distribution device starts multicast data distribution for flooding. The distributed multicast data is flooded according to the flooding entry of the multicast relay device.
[0190] The registered flooding entry is automatically deleted in various ways after the completion of multicast data distribution.
[0191] During multicast data distribution, if the port configuration of the VLAN changes, the change is detected in various ways, and the output port information of the flooding entry is automatically updated.
[0192] As a second means (Example 2), when the multicast receiving device detects a multicast group that requires flooding while receiving multicast data, the multicast receiving device notifies the multicast relay device of the multicast group in various ways. Upon receiving the notification from the multicast receiving device, the multicast relay device determines, in various ways, that the received notification is a notification of a multicast group that requires flooding, and creates a relay entry for flooding. As a result, the multicast data is instantly flooded.
[0193] The settings, deletion, and handling when changing the port configuration of the VLAN for the flooding entry are the same as the first means.
[0194] As described above, in a multicast relay device using IGMP / MLD snooping, when flooding multicast data, the multicast distribution device or the multicast receiving device notifies the multicast relay device of the multicast group that requires flooding, and the multicast relay device registers a flooding entry based on the received notification. In this way, the flooding entry can be dynamically registered only for the period when flooding is required. By dynamically setting the flooding entry, it is not necessary to pre-determine the multicast group, and it is not necessary to set an entry for flooding in the multicast relay device. Therefore, the degree of freedom is improved, and the consumption of unnecessary relay entries can also be suppressed. Also, when the port configuration of the VLAN is changed during the registration of the flooding entry, the management man-hours can be reduced by automatically updating the output port of the flooding entry.
[0195] Note that the present invention is not limited to the above-described embodiments and includes various modifications. For example, the above-described embodiments have been described in detail for better understanding of the present invention and are not necessarily limited to those having all the configurations described. Also, a part of the configuration of one embodiment can be replaced with the configuration of another embodiment, and the configuration of another embodiment can be added to the configuration of one embodiment. Also, for a part of the configuration of each embodiment, addition, deletion, or replacement with other configurations is possible.
[0196] Furthermore, each of the above-described configurations, functions, processing units, processing means, etc. may be realized in hardware by designing part or all of them, for example, by means of an integrated circuit. Also, each of the above-described configurations, functions, etc. may be realized in software by a processor interpreting and executing a program for realizing each function. Information such as programs, tables, files, etc. for realizing each function can be stored in a storage device such as a non-volatile semiconductor memory, a hard disk drive, an SSD (Solid State Drive), or a computer-readable non-transitory data storage medium such as an IC card, an SD card, or a DVD.
[0197] Also, the control lines and information lines show those considered necessary for explanation, and not necessarily all control lines and information lines are shown on the product. In reality, it may be considered that almost all configurations are interconnected.
Explanation of Signs
[0198] 100, 101, 102 Multicast data 200, 201 Join request message 500 VLAN name 1000 Multicast relay device 1001, 1002, 1003, 1004, 1005 Ports of multicast relay device 1000 1100 IGMP snooping processing unit of multicast relay device 1000 1110 VLAN management unit of multicast relay device 1000 1120 Control packet transmission / reception processing unit of multicast relay device 1000 1130 Entry generation unit of multicast relay device 1000 1200 Device configuration definition unit of multicast relay device 1000 1210 VLAN information of multicast relay device 1000 1220 IGMP snooping information of multicast relay device 1000 1230 Flooding condition identification information of multicast relay device 1000 Multicast Packet Relay Processing Unit of Multicast Relay Device 1000 with 1300 VLAN Registration Table of Multicast Relay Device 1000 with 1310 Multicast Packet Relay Control Table of Multicast Relay Device 1000 with 1320 Multicast Relay Device 2000 Ports of Multicast Relay Device 2000 with 2001, 2002 Multicast Relay Device 3000 Port of Multicast Relay Device 3000 with 3001 Multicast Distribution Devices 4000, 4010 Port of Multicast Distribution Device 4000 with 4001 Distribution Data Designation Unit of Multicast Distribution Device 4000 with 4100 Control Packet Transmission / Reception Processing Unit of Multicast Distribution Device 4000 with 4200 Multicast Data Storage Unit of Multicast Distribution Device 4000 with 4300 Multicast Data Distribution Unit of Multicast Distribution Device 4000 with 4400 Multicast Receiving Devices 5000, 5010, 5020, 5030, 5040, 5050 Port of Multicast Receiving Device 5000 with 5001 Received Data Designation Unit of Multicast Receiving Device 5000 with 5100 Control Packet Transmission / Reception Processing Unit of Multicast Receiving Device 5000 with 5200 Multicast Data Display Unit of Multicast Receiving Device 5000 with 5300 Multicast Data Reception Unit of Multicast Receiving Device 5000 with 5400
Claims
1. A multicast relay device having a plurality of ports and relaying multicast data between the ports, recognizing a port to which a multicast receiving device is connected, and having a multicast relay control function of relaying the multicast data only to the port to which the multicast receiving device indicating an intention to join a multicast group is connected, wherein the multicast relay control function, in a state where multicast communication is performed only on the port to which the multicast receiving device is connected, identifies a multicast group that requires flooding based on an external notification, and relays the multicast data of the identified multicast group to the plurality of ports regardless of whether the multicast receiving devices connected to the plurality of ports indicate an intention to join the identified multicast group, thereby flooding the multicast data of the identified multicast group. The multicast relay device is characterized by this.
2. The multicast relay device according to claim 1, holding the IP address of the multicast distribution device, holding multicast relay control information including one or more relay entries, wherein the relay entry includes information indicating a VLAN name, a multicast group name, output port information, a remaining time, and a type of the relay entry, and the multicast relay control function, performs multicast communication only on the port to which the multicast receiving device indicating an intention to join a multicast group is connected based on the multicast relay control information, when receiving a join request message, compares the source address of the received join request message with the address of the held multicast distribution device, when the source address of the received join request message matches the address of the held multicast distribution device, identifies the multicast group specified by the join request message as a multicast group that requires flooding, and acquires all port information of the VLAN specified by the join request message. For a multicast group that requires such flooding, all the ports obtained are set as output ports, a relay entry with the type being flooding is registered in the multicast relay control information, and by relaying multicast data according to the relay entry, multicast data of the multicast group is flooded. A multicast relay device characterized by this.
3. The multicast relay device according to claim 2, after registering the relay entry, when information indicating the port configuration of the VLAN is changed, based on the information indicating the port configuration of the VLAN after the change, the output port of the relay entry whose type is flooding is changed. A multicast relay device characterized by this.
4. The multicast relay device according to claim 1, holds multicast relay control information including one or more relay entries, the relay entry includes information indicating a VLAN name, a multicast group name, output port information, a remaining time, and the type of the relay entry, the multicast relay control function, performs multicast communication only on the port connecting a multicast receiving device indicating an intention to join a multicast group based on the multicast relay control information, when receiving a join request message, compares the source address of the received join request message with the address of the multicast relay device, when the source address of the received join request message and the address of the multicast relay device match, identifies the multicast group specified by the join request message as a multicast group that requires flooding by the multicast relay device, obtains all port information of the VLAN specified by the join request message, For a multicast group that requires flooding by the multicast relay device, all the ports obtained are set as output ports, a relay entry with the type being flooding is registered in the multicast relay control information, and by relaying multicast data according to the relay entry, multicast data of the multicast group is flooded. A multicast relay device characterized by this.
5. The multicast relay device according to claim 1, wherein it holds multicast relay control information including one or more relay entries, the relay entry includes information indicating a VLAN name, a multicast group name, output port information, a remaining time, and a type of the relay entry, the multicast relay control function performs multicast communication only on the port connecting a multicast receiving device indicating an intention to join a multicast group based on the multicast relay control information, when receiving a join request message, compares information included in the received join request message with predetermined information registered in advance, when the information included in the received join request message matches the predetermined information registered in advance, identifies the multicast group specified by the join request message as a multicast group that requires flooding by the multicast relay device, acquires all port information of the VLAN specified by the join request message, for a multicast group that requires flooding by the multicast relay device, sets all the acquired ports as output ports, registers a relay entry with the type being flooding in the multicast relay control information, and floods the multicast data of the multicast group by relaying the multicast data according to the relay entry. The multicast relay device is characterized by this.
6. The multicast relay device according to claim 5, wherein the predetermined information registered in advance is a predetermined address, the multicast relay control function is characterized by comparing the source address of the received join request message with the predetermined address. The multicast relay device is characterized by this.
7. The multicast relay device according to claim 5, wherein the multicast relay control function after registering a relay entry with the type being flooding in the multicast relay control information, when receiving a join request message corresponding to the relay entry with the type being flooding, compares information included in the join request message with the predetermined information registered in advance, When the information included in the received join request message does not match the predetermined information registered in advance, compare the port that received the join request message with the port that received the join request message when creating a relay entry with flooding for the type, A multicast relay device characterized in that, when the port that received the join request message matches the port that received the join request message when creating a relay entry with flooding for the type, the type of the relay entry is normally changed, and ports other than the port that received the join request message are deleted from the output port of the relay entry.
8. A multicast relay system, A multicast distribution device that distributes multicast data, A multicast relay device having a plurality of ports and relaying the multicast data between the ports, A receiving device that receives the multicast data, and The multicast relay device recognizes the port to which the multicast receiving device is connected, and relays the multicast data only to the port to which the multicast receiving device indicating the intention to join the multicast group is connected, identifies a multicast group that requires flooding based on an external notification, and floods the multicast data of the identified multicast group by relaying the multicast data of the identified multicast group to the plurality of ports regardless of whether the multicast receiving devices connected to the plurality of ports indicate an intention to join the identified multicast group. A multicast relay system characterized by the above.
9. The multicast relay system according to claim 8, characterized in that the multicast distribution device notifies the multicast relay device of a multicast group that requires flooding.
10. The multicast relay system according to claim 9, characterized in that the multicast distribution device notifies the multicast relay device of a multicast group that requires flooding by transmitting a join request message.
11. The multicast relay system according to claim 10, wherein it holds the IP address of the multicast distribution device, holds multicast relay control information including one or more relay entries, the relay entry includes information indicating a VLAN name, a multicast group name, output port information, a remaining time, and a type of the relay entry, the multicast relay device performs multicast communication only on the port connecting the multicast receiving device indicating an intention to join a multicast group based on the multicast relay control information, when receiving a join request message, compares the source address of the received join request message with the address of the held multicast distribution device, when the source address of the received join request message matches the address of the held multicast distribution device, identifies the multicast group specified by the join request message as a multicast group that requires flooding, acquires all port information of the VLAN specified by the join request message, for the multicast group that requires flooding, sets all the acquired ports as output ports, registers a relay entry with the type being flooding in the multicast relay control information, and relays multicast data according to the relay entry, thereby flooding the multicast data of the multicast group. A multicast relay system characterized by this.
12. The multicast relay system according to claim 11, wherein after registering the relay entry, when the information indicating the port configuration of the VLAN is changed, the multicast relay device changes the output port of the relay entry whose type is flooding based on the information indicating the port configuration of the VLAN after the change. A multicast relay system characterized by this.
13. The multicast relay system according to claim 11, wherein when the multicast distribution device receives an inquiry message before the distribution of multicast data that requires flooding is completed, it responds to the join request message. A multicast relay system characterized by this.
14. The multicast relay system according to claim 8, wherein The multicast relay system is characterized in that the multicast distribution device notifies the multicast relay device of a multicast group that requires flooding by transmitting a join request message including the address of the multicast relay device that requires flooding as a source address.
15. The multicast relay system according to claim 14, wherein the multicast relay device holds multicast relay control information including one or more relay entries, the relay entry includes information indicating a VLAN name, a multicast group name, output port information, a remaining time, and a type of the relay entry, the multicast relay device, performs multicast communication only on the port connecting a multicast receiving device indicating an intention to join a multicast group based on the multicast relay control information, when receiving a join request message, compares the source address of the received join request message with the address of the multicast relay device, when the source address of the received join request message matches the address of the multicast relay device, identifies the multicast group specified by the join request message as a multicast group that requires flooding by the multicast relay device, acquires all port information of the VLAN specified by the join request message, registers, in the multicast relay control information, a relay entry having all the acquired ports as output ports and the type as flooding for the multicast group that requires flooding by the multicast relay device, and floods the multicast data of the multicast group by relaying the multicast data according to the relay entry.
16. The multicast relay system according to claim 8, wherein the multicast receiving device notifies the multicast relay device of the multicast group that requires flooding when determining that it is necessary to flood the received multicast data.
17. The multicast relay system according to claim 16, The multicast relay system is characterized in that the multicast receiving device notifies the multicast relay device of a multicast group that requires flooding by transmitting a join request message including predetermined information for notifying the multicast group that requires flooding.
18. The multicast relay system according to claim 17, holds multicast relay control information including one or more relay entries, wherein the relay entry includes information indicating a VLAN name, a multicast group name, output port information, a remaining time, and a type of the relay entry, the multicast relay device performs multicast communication only on the port connecting the multicast receiving device indicating an intention to join a multicast group based on the multicast relay control information, when receiving a join request message, compares information included in the received join request message with predetermined information for notifying a pre-registered multicast group that requires flooding, when the information included in the received join request message matches the predetermined information for notifying a pre-registered multicast group that requires flooding, identifies the multicast group specified by the join request message as a multicast group that requires flooding by the multicast relay device, acquires all port information of the VLAN specified by the join request message, for a multicast group that requires flooding by the multicast relay device, registers a relay entry with the type as flooding using all the acquired ports as output ports in the multicast relay control information, and relays multicast data according to the relay entry, thereby flooding the multicast data of the multicast group. The multicast relay system is characterized by this.
19. The multicast relay system according to claim 18, wherein the predetermined information for notifying a pre-registered multicast group that requires flooding is a predetermined address. The multicast relay system is characterized in that the multicast relay device compares the source address of the received join request message with the predetermined address.
20. The multicast relay system according to claim 18, wherein the multicast relay device after registering a relay entry with the type being flooding in the multicast relay control information, when receiving a join request message corresponding to the relay entry with the type being flooding, compares the information included in the join request message with the predetermined information registered in advance, when the information included in the received join request message does not match the predetermined information registered in advance, compares the port that received the join request message with the port that received the join request message when creating the relay entry with the type being flooding, if the port that received the join request message matches the port that received the join request message when creating the relay entry with the type being flooding, the type of the relay entry is normally changed, and ports other than the port that received the join request message are deleted from the output ports of the relay entry. The multicast relay system is characterized by this.
21. A multicast relay method executed by a multicast relay device having a plurality of ports and relaying multicast data between the ports, recognizes the port to which the multicast receiving device is connected, and relays the multicast data only to the port to which the multicast receiving device indicating the intention to join the multicast group is connected, in a state where multicast communication is performed only on the port to which the multicast receiving device is connected, identifies a multicast group that requires flooding based on an external notification, and relays the multicast data of the identified multicast group to the plurality of ports regardless of whether the multicast receiving devices connected to the plurality of ports indicate the intention to join the identified multicast group, thereby flooding the multicast data of the identified multicast group. The multicast relay method is characterized by this.
Citation Information
Patent Citations
Multicast processing method in wide area ethernet
JP2011217038A
Communication device and changeover method
JP2020022126A