WO2009098820A1 - ネットワークスイッチ、経路設定方法およびプログラム - Google Patents
ネットワークスイッチ、経路設定方法およびプログラム Download PDFInfo
- Publication number
- WO2009098820A1 WO2009098820A1 PCT/JP2008/072511 JP2008072511W WO2009098820A1 WO 2009098820 A1 WO2009098820 A1 WO 2009098820A1 JP 2008072511 W JP2008072511 W JP 2008072511W WO 2009098820 A1 WO2009098820 A1 WO 2009098820A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- multicast
- route setting
- route
- multicast control
- unit
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17356—Indirect interconnection networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/60—Router architectures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/20—Support for services
- H04L49/201—Multicast operation; Broadcast operation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/101—Packet switching elements characterised by the switching fabric construction using crossbar or matrix
Definitions
- the present invention relates to a network switch, a route setting method, and a program constituting an interconnection network that couples a plurality of computers to each other. More specifically, the present invention relates to a route information setting function for suitably routing a packet of multicast communication for simultaneously distributing data to a plurality of designated computers, and multicast based on the set route information. And a function for executing communication.
- a parallel computer system in which a plurality of calculation nodes are connected by an interconnection network is used.
- a target problem is divided and processed by a plurality of calculation nodes.
- a predetermined object can be achieved by transmitting the packet from the transfer source calculation node to each of the different transfer destination calculation nodes.
- the interconnection network has a function of copying a packet to be transferred and transmitting it to a plurality of calculation nodes, the load imposed on the interconnection network by the transfer calculation node is reduced, and the data transfer The data transfer time required for this can be shortened.
- Such a function of transmitting the same data from one computing node to a plurality of computing nodes is called a multicast communication function.
- MPI Message Passing Interface
- MPI Message Passing Interface
- MPI_Bcast defined by MPI is a function for sending data held by a certain process to all processes included in the same communicator. This communicator may specify a set of processes for the entire system, but may also specify a subset of processes. “MPI_Allgather” is a function that sends specified data from any process in the communicator to all processes included in the same communicator.
- functions of functions that perform multicast communication such as “MPI_Bcast” and “MPI_Allgather” can also be realized by executing unicast communication, which is one-to-one communication, multiple times.
- unicast communication which is one-to-one communication, multiple times.
- it is desirable to use the function which an interconnection network has. This is from the viewpoint of shortening the data transfer time and improving the execution performance of the entire program.
- calculation nodes are arranged in the same row or arranged in the same column.
- Class network routing is considered for multicast forwarding of messages to compute nodes.
- a parallel computer is considered in which a plurality of destinations are encoded in individual packets and described in a fixed-length field on the header.
- a plurality of destinations are designated with a small number of destination bits, and a plurality of multicast packets are generated when the data length for designating the destination exceeds the fixed length field.
- a broadcast method is conceivable in which a network switch holds route information and performs multicast transfer according to the route information.
- route information is calculated in advance by an external program, and the calculated route information is set.
- an address register that can be set from a program is provided in the receiving apparatus, and a multicast packet receiving destination (destination processor) uses each header using a packet header.
- An inter-processor communication method is conceivable in which a register is selected and the destination address is written in the register value of the selected address register.
- the destination node of multicast communication is closely related to the physical arrangement of calculation nodes on the interconnection network. For this reason, there is a problem that patterns that can be designated as the destination node may be limited.
- route information for route designation is set in advance by an external program, so when multicast communication is executed from a user program, the route cannot be designated. For this reason, it is necessary to determine on which computing node the process operates before executing multicast communication, and there is a problem that it is difficult to operate a flexible and efficient system.
- An object of the present invention is to provide a network switch, a route setting method, and a program that solve the above-described problems.
- a network switch includes a plurality of input ports and a plurality of output ports respectively associated with the input ports, and outputs a multicast packet from the output port.
- a multicast control information holding unit for designating an output port for outputting the multicast packet from among the plurality of output ports, and a transfer path for the multicast packet with respect to the output port designated by the multicast control information holding unit
- a multicast control unit that performs transfer route setting, an adder that counts the number of route setting completion processes that is the number of processes that the multicast control unit has completed the transfer route setting, and a route setting that is counted by the adder
- the number of processes and the number To determine whether the number of processes to perform the cast communication matches, and having a comparator unit identifies that the transfer path setting of the multicast communication when a matching with the determination is completed.
- a route setting method includes a plurality of input ports and a plurality of output ports respectively associated with the input ports, and outputs a multicast packet from the output ports.
- a multicast control information holding process for designating an output port for outputting the multicast packet from the plurality of output ports, and an output port designated by the multicast control information holding process.
- Multicast control information that is a program to be executed by a computer and that specifies the output port for outputting a multicast packet from among a plurality of output ports respectively associated with a plurality of input ports included in a network switch Holding procedure, a multicast control procedure for setting a forwarding route which is a forwarding route setting of the multicast packet for the output port specified in the multicast control information holding procedure, and the forwarding route setting in the multicast control procedure. It is determined whether or not the addition procedure for counting the number of path setting completion processes, which is the number of processes completed, and the number of the path setting completion processes counted in the addition procedure match the number of processes for executing the multicast communication. And if it matches, To perform a comparison procedure for identifying the computer that the transfer path setting of the multicast communication has been completed when.
- the multicast packet is output from the plurality of output ports.
- the output port for output set the multicast packet forwarding route for the designated output port, count the number of route setup completion processes, which is the number of processes that have completed forwarding route setting, and count the route setting It is determined whether or not the number of completed processes and the number of processes that execute multicast communication match, and when it is determined that they match, it is configured to identify completion of multicast communication transfer path setting. And the transfer route can be set at high speed.
- FIG. 4 is an operation sequence showing a transfer route setting process and a multicast communication process for multicast communication in the present invention.
- It is a flowchart which shows the route setting command reception process shown in FIG. It is a figure which shows an example of the data structure of a path
- the parallel computer system includes a calculation node group 1 and an interconnection network 2.
- the calculation nodes 11-1 to 11-4, 12-1 to 12-4, 13-1 to 13-4, and 14-1 to 14-4 (hereinafter referred to as “calculation node 10”) included in the calculation node group 1 are collectively connected to the interconnection network 2.
- the network form of the interconnection network 2 is not particularly limited. For example, a network such as a multistage connection network may be used. In the following example, a tree-type network will be described as an example.
- the calculation node 10 is an independent computer having an arithmetic unit and a memory.
- the calculation nodes 10 perform data transfer with each other via the interconnection network 2 as necessary, and execute predetermined processing.
- the computing node 10 has a function of executing a “route setting command issuing process” and issuing a “route setting command” to be described later.
- the computing node 10 has a function of issuing a multicast packet transmitted to a plurality of specific destinations by multicast communication.
- the form of the multicast packet is not particularly limited, but the multicast packet of this embodiment includes a “control unit arrival bit” for indicating whether or not the multicast packet has reached a multicast control switch described later.
- the mutual connection network 2 is composed of a plurality of network switches.
- Network switches 22-1 to 22-4 (hereinafter collectively referred to as “network switch 22”) are directly connected to the computation node group 1.
- the network switch 21-1 connects the network switches 22-1 to 22-4 to each other. For example, when data is transferred from the calculation node 11-1 to the calculation node 11-2, the data is transferred via the network switch 22-1. Data transfer from the calculation node 11-1 to the calculation node 13-1 is executed via the network switches 22-1, 21-1, and 22-3 in sequence.
- the number of network switches 21-1 is “1” in the present embodiment, but may be plural. Therefore, hereinafter, network switches provided on the same level as the network switch 21-1 on the interconnection network 2 are collectively referred to as “network switch 21”.
- the configuration of the network switches 21-1 and 22-1 to 22-4 of this embodiment will be described.
- the number of input ports is “5” and the number of output ports is “5” (hereinafter referred to as “5 inputs and 5 outputs”). It is comprised by the crossbar switch which is.
- the number of input ports used is “4” and the number of output ports used is “4” (hereinafter referred to as “4 inputs”). Both the fifth input port and the fifth output port are unused.
- the input ports and output ports of the network switches 21 and 22 are associated with each other on a one-to-one basis.
- the first input port is associated with the first output port.
- the correspondence method between the input port and the output port may be a general correspondence method.
- the number of input ports and the number of output ports of each network switch 21 and 22 are not limited to “5”, and may be any natural numbers.
- the ports 1 to 4 are in the downlink direction (from the network switch 21-1 to each network switch 22 in FIG. -1 to 22-4), and the port 5 is connected to the upstream direction in FIG. 1 (the direction from each network switch 22-1 to 22-4 to the network switch 21-1). It is connected.
- the network switch 21-1 will be described below as an example of the network switch 22-1.
- the network switch 22-1 includes input buffer units 201-1 to 201-5 (hereinafter collectively referred to as “input buffer unit 201”) and output buffer units 202-1 to 202-5 ( (Hereinafter collectively referred to as “output buffer unit 202”), a crossbar switch 203, a crossbar control unit 204, and a multicast control unit 205.
- the input buffer units 201-1 to 201-5 hold, decode, and output packets input to the input ports of the network switch 22-1.
- the input buffer units 201-1 to 201-5 correspond to the input ports 1 to 5, respectively.
- the output buffer units 202-1 to 202-5 hold the packets output from the crossbar switch 203, and the held packets are output to the network switches 21-1, 22-2 to 22-4 via the respective output ports. And output to the computation node group 1.
- the output buffer units 202-1 to 202-5 correspond to the output ports 1 to 5, respectively.
- the crossbar switch 203 transfers the packets output from the input buffer units 201-1 to 201-5 to the output buffer units 202-1 to 202-5 designated by the crossbar control unit 204 under the control of the crossbar control unit 204. Performs transmission (routing).
- the crossbar control unit 204 receives the destination information decoded by the input buffer units 201-1 to 201-5, and controls the routing of the crossbar switch 203 according to the destination information input.
- the multicast control unit 205 When multicast packets are input from the input buffer units 201-1 to 201-5, the multicast control unit 205 generates a copy of the multicast packet and copies the multicast packet to the appropriate output buffer units 202-1 to 202-5. Is output.
- the multicast control unit 205 sets the transfer destination (network switch 21 or 22) of the route setting command as the transfer source of the multicast packet when setting the transfer route.
- the multicast control unit 205 sets the transfer source (calculation node 10) of the route setting command as the transfer destination of the multicast packet.
- This multicast packet is a packet transmitted by multicast communication using the set transfer path.
- the multicast control unit 205 includes a packet input unit 301, a packet output unit 302, a process number holding unit 303, a process number counter unit 304, a multicast control information holding unit 305, an addition A unit 306, a comparison unit 307, a completion notification generation unit 308, and a destination match determination unit 309.
- the packet input unit 301 receives the packet input from the input buffer units 201-1 to 201-5 and outputs the input packet to the packet output unit 302.
- the packet input by the packet input unit 301 is a multicast packet transmitted by multicast communication, a route setting command issued by the calculation node 10, or the like.
- the packet input unit 301 executes a “route setting command reception process” described later and receives the route setting command.
- the packet input unit 301 receives predetermined control information (for example, a multicast ID described later) stored in the received path setting command as a process number holding unit 303, a process number counter unit 304, and a multicast control information holding unit.
- 305 has a notification function.
- the packet output unit 302 receives a packet (route setting command, multicast packet, etc.) from the packet input unit 301 or the completion notification generation unit 308, and the received packet is output to each of the output buffer units 202-1 to 202-5 shown in FIG. Output to. Further, the packet output unit 302 receives “multicast control information 3051”, which is transfer path information for designating the output destination (transfer destination) of the multicast packet, from the multicast control information holding unit 305.
- the process number holding unit 303 is a register group that executes “process number holding processing” and holds “number of group belonging processes”.
- the “number of processes belonging to a group” is the number of processes belonging to each process group on the computing node 10 that executes multicast communication.
- the process group here corresponds to a communicator that is treated as a set of processes performing communication in MPI, for example.
- the process number holding unit 303 receives a multicast ID input from the packet input unit 301 and outputs a register value (the number of group-affiliated processes) specified by the multicast ID to the comparison unit 307.
- the process number counter unit 304 is a register group that executes “process number counting processing” and holds register values related to “forwarding path setting” that is processing for setting a forwarding path for multicast packets in multicast communication. More specifically, the process number counter unit 304 holds the number of transfer path settings completed for the processes on the computing node 10 performing multicast communication (hereinafter referred to as “path setting completion process number”).
- the process number counter unit 304 receives the input of the multicast ID from the packet input unit 301, and outputs a register value (number of path setting completion processes) specified by the multicast ID to the addition unit 306.
- the multicast control information holding unit 305 executes “multicast control information holding processing” and holds “multicast control information 3051” which is information for designating an output port number for outputting a copy of the multicast packet.
- the packet input unit 301 receives one route setting command from one process on the computing node 10
- the multicast control information holding unit 305 executes route setting processing for that process. Therefore, the number of path setting completion processes counted by the process number counter unit 304 is the same as the number of path setting commands received by the network switch 22-1.
- the multicast control information holding unit 305 receives inputs from the packet input units 301-1 to 301-5 and outputs control signals (forwarding path information) to the packet output units 302-1 to 302-5.
- the multicast control information holding unit 305 has a function of identifying a packet input unit to which a packet is input from the input buffer unit 201 (input port) among the packet input units 301-1 to 301-5.
- the addition unit 306 is configured by an adder, executes “addition processing”, and updates the register value held by the process number counter unit 304 so that the multicast control unit 205 completes the packet transfer route setting. Count the number. Note that the addition unit 306 performs addition processing on the “path setting completion process number” held by the process number counter unit 304, and then writes the result after the addition processing back to the register value held by the process number counter unit 304. Further, the adding unit 306 outputs the addition result to the comparing unit 307.
- the comparison unit 307 is configured by a comparator, and receives a value input from the addition unit 306 and the process number holding unit 303 by executing “comparison processing”, and holds the input value and the process number from the addition unit 306. The input value from the unit 303 is compared, and the comparison result is output to the completion notification generation unit 308.
- the comparison unit 307 identifies that the multicast communication path setting is completed when the comparison results match. When it is identified that the route setting is completed, the comparison unit 307 executes “completion notification instruction processing”, and a packet for notifying the completion notification generation unit 308 of the completion of the route setting “route setting completion” Instruct to generate "notification”.
- Completion notification generation unit 308 executes “completion notification generation processing” and generates “route setting completion notification” in accordance with the instruction by “completion notification instruction processing” of comparison unit 307. Further, the completion notification generation unit 308 executes “completion notification transmission processing” and outputs the generated route setting completion notification to the packet output unit 302. As a result, a route setting completion notification is transmitted to the computation node 10.
- the destination match determination unit 309 executes “destination match determination processing” to determine whether or not the final destination of the route setting command indicated by the transfer destination information of the route setting command matches the own network switch. If it is determined, it identifies that its own network switch is the final transfer destination of the packet. Then, the destination match determination unit 309 notifies the process number counter unit 304 of the identification result of “final destination of the route setting command” stored in the route setting command.
- the destination match determination unit 309 has a function of determining whether or not the destination of the multicast packet transmitted from the computation node 10 matches itself during multicast communication. If it is determined that they match with each other, the destination match determination unit 309 rewrites the “control unit arrival bit” in the multicast packet to “1”.
- the process number holding unit 303, the process number counter unit 304, and the multicast control information holding unit 305 have a plurality of sets of information (one group belonging process number in FIG. 3 and one route setting completion process number in FIG. 3). And a single bit string of FIG. 4 to be described later).
- a number for identifying each process group (hereinafter referred to as “multicast ID”) is assigned to the process group on the computing node 10 that executes multicast communication. Accordingly, each process group can select information corresponding to its own process group from a plurality of sets of information based on the multicast ID. This is because multicast communication by a plurality of process groups can be executed simultaneously.
- m bit strings B1 to Bm having a length of “5” are registered.
- the reason why m bit strings B1 to Bm are provided here is to enable setting of a plurality (m) of multicast communication transfer paths.
- the multicast control information holding unit 305 designates a specific bit string from among the bit strings B1 to Bm by the multicast ID included in the route setting command transmitted from the calculation node 10. Five bits included in each of the bit strings B1 to Bm are respectively associated with five output ports (output buffer units 202-1 to 202-5 corresponding to the output ports). As described above, the input ports and output ports of the network switch are associated with each other on a one-to-one basis. Therefore, the multicast control information holding unit 305 identifies the bits in the bit string B1 to Bm corresponding to the output port number corresponding to the input port number for the input port number to which the route setting command is input from the outside. Is possible.
- the multicast control information holding unit 305 sets “1” for the bit corresponding to the output port number for outputting the multicast packet in each of the bit strings B1 to Bm. Also, the multicast control information holding unit 305 sets “0” to the bit corresponding to the output port number that does not output the multicast packet. In the example of the bit string B1 shown in FIG. 4, the output port (output port number “1”) corresponding to the first bit is set for multicast packet transmission.
- the output destination of the multicast packet is indicated by a bit string having the same number of bits as the number of output ports included in the network switches 21 and 22, but the form of the multicast control information 3051 is There is no particular limitation.
- the multicast control information 3051 may be, for example, a list in which output port numbers that are output destinations of multicast packets are registered.
- the computing node 10 performs “preparation processing” in step 11, “route setting command issue processing” in step 12, and “route setting completion notification reception processing in step 13”. And “multicast communication processing” in step 14 is executed.
- the network switch 21 or 22 executes “route setting command reception processing” in step 21 or 31 and “route setting processing” in step 22 or 32. Whether the “route setting command transfer process” in step 23, the “route setting completion notification process” in step 33, and the “route setting completion notification transfer process” in step 24 are final destinations of the route setting command. It is executed according to.
- Preliminary preparation process in step 11 includes information such as “multicast ID” for identifying a process group, the number of processes belonging to each process group, and the like for each process belonging to a process group executing multicast communication in the computing node 10. Done to share in advance.
- the “route setting command issuance process” in step 12 is a “route setting command” for each process in the process group that executes multicast communication to instruct the network switches 21 and 22 to set the transfer route. Done to issue.
- the data structure of the “route setting command” will be described in detail later.
- the “route setting command reception processing” in step 21 or 31 receives the “route setting command” transmitted by the “route setting command issue processing” from each process in the process group of the computing node 10 in the network switches 21 and 22. To be done.
- the “route setting command reception process” in step 21 and the “destination match determination process” in step 212 are executed.
- the “route setting command receiving process” in step 211 is executed by the packet input unit 301 to receive the route setting command.
- the “destination match determination process” in step 212 is executed by the destination match determination unit 309, and whether the final destination of the route setting command indicated by the “multicast control switch number” described later matches with its own network switch. This is done to determine whether or not.
- step 212 in FIG. 6 If No in step 212 in FIG. 6 and the destination match determination unit 309 determines that the own network switch is not the final destination, the “route setting process” in step 22 is executed as shown in FIG. Later, “route setting command transfer processing” in step 23 is executed. Further, when the answer is Yes in step 212 in FIG. 6 and the destination match determination unit 309 determines that the own network switch is the final destination, the “route setting process” in step 32 as shown in FIG. ”Is executed, the“ route setting completion notification process ”in step 33 is executed.
- the “route setting process” in step 22 or 32 shown in FIG. 5 is performed based on the received “route setting command” in the network switches 21 and 22 that have received the “route setting command” by the “route setting command receiving process”. Is called.
- the multicast control unit 205 of each network switch 21 and 22 sets the multicast control information 3051 in accordance with the instruction of the route setting command received from the computation node 10.
- the “route setting command transfer process” in step 23 is a network switch of the final destination (“multicast control switch” described later) of the “route setting command” transmitted from each process in the process group of the computing node 10. Done to send to.
- the “route setting completion notification process” in step 33 indicates that the setting of the path used for multicast communication is completed by the completion of the “route setting process” in the network switch 21 or 22 which is the final destination of the path setting command. This is performed to notify the computation node 10 which is the issuer of the route setting command.
- the network switch on the transfer path from the multicast control switch to the computing node 10 executes the “route setting completion notification transfer process” in step 24.
- the network switch 21 or 22 relays the route setting completion notification transmitted by the multicast control switch and forwards it to the computation node that issued the route setting command.
- Step 13 “Route setting completion notification receiving process” in step 13 is executed in each process in the process group of the computing node 10.
- the process group receives the “route setting completion notification” transmitted from the network switch that is the multicast control switch by the “route setting completion notification process” in step 23.
- each process in the received process group confirms that the multicast communication route setting requested by the transmission of the “route setting command” has been completed on the network switch that is the final destination of the route setting command. recognize. Therefore, a multicast communication command for performing multicast communication can be issued to the process group that has received the “route setting completion notification”.
- each process in the process group that executes multicast communication sets (a) a multicast ID and (b) a network switch that controls multicast communication before setting a route for multicast communication.
- Information indicating the number to be designated hereinafter referred to as “multicast control switch number”
- (c) the number of processes included in the process group hereinafter referred to as “number of processes belonging to the group”.
- Multicast ID is “identification information” indicating a number for identifying each process group operating on the computing node 10. In the following example, it is assumed that the multicast ID is “1”.
- the “multicast control switch number” is information for designating a network switch that controls multicast communication. Further, the network switch designated by the “multicast control switch number” is hereinafter referred to as “multicast control switch”. In a network having a tree structure, it is most efficient to designate the uppermost network switch (network switch 21-1) shown in FIG. Therefore, in this example, “network switch 21-1” is designated by the multicast control switch number.
- the multicast control switch number may be transfer route information for transferring a route setting command to the multicast control switch.
- “Number of processes belonging to group” is the number of processes belonging to the process group to which “multicast ID” is assigned in the computation node 10. Since the “multicast ID” is assigned to a process group that executes multicast communication, the “number of group affiliation processes” is a “number of multicast execution processes” indicating the number of processes that participate in multicast communication and execute multicast communication. is there. In the following example, it is assumed that “number of processes belonging to group” is “5”.
- step 11 the “preparation process” in step 11 is completed.
- each process in the process group that executes multicast communication in the computing node 10 issues a “route setting command”.
- the issued path setting command is transferred to the multicast control unit 205 included in the specific network switches 21 and 22 provided on the interconnection network 2 shown in FIG.
- This “route setting command” is a packet including a command for instructing the multicast control unit 205 included in the network 21 or 22 to set a transfer route for multicast communication.
- the multicast control switch number is “route setting command transfer destination information” which is route information for transferring a route setting command to a multicast control switch that controls multicast communication.
- step 21 by the network switches 21 and 22 receives the route setting command issued by the calculation node by the “route setting command issuing process”.
- the packet input unit 301 of the network switches 21 and 22 receives the path setting command from the calculation node 10 or from another network switch that has transferred the path setting command received from the calculation node 10.
- the network switch 22-1 or 21-1 receives a path setting command issued by the calculation node 11-1 will be described as an example.
- the route setting command issued by the calculation node 11-1 is the route setting command shown in FIG. 7, and “network switch 21-1” is designated as the multicast control switch.
- the operation of the network switch differs depending on whether the network switch is the final destination of the path setting command (whether it is a multi-channel control switch). Therefore, the network switch 22-1 that is not the “multi-channel control switch” will be described first.
- the network switch 22-1 executes “route setting command reception processing” in step 211 shown in FIG. 6 in “route setting command reception processing” in step 21 shown in FIG. Receives the issued route setting command. Thereafter, the input buffer unit 201-1 of the network switch 22-1 decodes the route setting command and supplies it to the multicast control unit 205. The packet input unit 301 included in the multicast control unit 205 extracts the multicast control switch number and the multicast ID from the route setting command supplied from the input buffer unit 201-1.
- the destination match determination unit 309 executes “destination match determination processing” in step 212 shown in FIG. 6 to finally determine the route setting command indicated by the transfer destination information (multicast control switch number) in the route setting command. It is determined whether or not the correct destination matches the own network switch 22-1.
- the multicast control switch number indicates the network switch 21-1, and the network switch 22-1 is not the final transfer destination. Therefore, the destination match determination unit 309 determines that its own network switch is not the final transfer destination. In this case, in the switch 22-1, the multicast control unit 205 executes “route setting command transfer processing” in step 23 after executing “route setting processing” in step 22.
- the “route setting process” in step 22 shown in FIG. 6 is executed by the multicast control information holding unit 305 updating the multicast control information 3051 held by itself.
- the multicast control information holding unit 305 sets the value of the bit corresponding to the input port number that received the route setting command to “1” in the bit string specified by the multicast ID in the route setting command.
- the multicast ID indicates “1”
- the “first bit string B1” shown in FIG. 4 is designated.
- the input port number that has received the route setting command is “1”.
- the multicast control information holding unit 305 sets the value of “bit corresponding to the first output port” corresponding to the input port number “1” to “1” in the bit string B1 specified by the multicast ID. To do.
- bit setting operation such an operation is referred to as a “bit setting operation”.
- the network switch 22-1 executes the “route setting command transfer process” in step 23.
- the packet input unit 301 inputs the path setting command received by the network switch 22-1 to the output buffer unit 202-5 via the packet output unit 302.
- the output buffer unit 202-5 of the network switch 22-1 executes “route setting command transfer processing”, and transfers the route setting command to the network switch 21-1 that is the final destination.
- the switch 21-1 which is the final destination (multicast control switch) of the route setting command”
- the switch 21-1 receives the route setting command transferred from the network switch 22-1 by the “route setting command reception process” in step 31
- the switch 21-1 multicasts the route setting command decoded by the input buffer unit 201-1. This is supplied to the control unit 205.
- the packet input unit 301 of the multicast control unit 205 extracts the multicast control switch number and the multicast ID from the route setting command. Since the destination indicated by the extracted multicast control switch number (transfer destination information) is the switch 21-1, the network switch 21-1 that currently refers to this transfer destination information is issued from the calculation node 11-1. This is the final destination itself of the route setting command.
- the destination match determination unit 309 included in the network switch 21-1 is Yes in the destination match determination process in step 212 illustrated in FIG. 6, and the destination network switch indicated by the transfer destination information is the network switch 21 of its own. It is determined that it matches ⁇ 1, and it identifies that it is the final transfer destination. Therefore, in the network switch 21-1, the “route setting process” in step 32 by the multicast control information holding unit 305 and the “route setting completion notification process” in step 33 by the multicast control information holding unit 305 and the completion notification generating unit 308 are performed. Is executed.
- the operation of the “route setting process” of the network switch 21-1 is the same as the bit setting operation executed by the network switch 22-1 in the “route setting process”. That is, in network switch 21-1, multicast control information holding section 305 identifies “first bit string B1” specified by a multicast ID (“1” in this example) from multicast control information 3051. . Further, the multicast control information holding unit 305 determines the value of the output port number bit (first bit) corresponding to the input port number (for example, “1”) that has received the path setting command in the specified bit string B1. Is set to “1”. By this setting operation, when the network switch 21-1 transfers the multicast packet to the computation node 11-1 that is the source of the path setting command, the output port of the output port number 1 that the network switch 21-1 has Is used.
- the “route setting completion notification process” in step 33 of the network switch 21-1 is performed as follows. First, the packet input unit 301 notifies the process number holding unit 303 of the multicast ID extracted from the route setting command. The process number holding unit 303 outputs the register value (number of group belonging processes) designated by the notified multicast ID to the comparison unit 307.
- the packet input unit 301 notifies the process number counter unit 304 of the multicast ID.
- the process number counter unit 304 executes “process number counting process”, and outputs the value (number of path setting completion processes) stored in the register designated by the notified multicast ID to the adding unit 306.
- the adding unit 306 executes “addition processing” in step 331 every time the multicast control information holding unit 305 sets one bit included in the bit strings B1 to Bn in the multicast control information 3051. To do.
- the addition unit 306 adds 1 to the number of path setting completion processes, which is the value of the register output from the process number counter unit 304. Subsequently, the addition unit 306 writes the result after addition back to the process number counter unit 304 and outputs the result after addition to the comparison unit 307.
- the comparison unit 307 executes “comparison processing” in step 332, and the value input from the process number holding unit 303 (the number of processes belonging to the group of the process group performing multicast communication on the calculation node 10) and the addition unit 306 The input value (the number of path setting completion processes after the addition unit 306 performs addition processing) is compared. If “Yes” is determined in the “comparison process” in step 332 and it is determined that the input values match each other, this corresponds to a case where a route setting command arrives from all the processes included in the process group that executes multicast communication. At this time, the comparison unit 307 identifies that the route setting for multicast communication has been completed and instructs the completion notification generation unit 308 to issue a “route setting completion notification”.
- step 331 if it is No in step 332 and it is determined that the number of group belonging processes and the number of path setting completion processes do not match, the comparing unit 307 identifies that the path setting is not completed, and the adding unit 306 The process of step 331 is executed.
- the network switch 21-1 executes the “route setting process” in step 32 and the route setting command reaches the switch 21-1 from all the processes, the multicast of each network switch 21-1, 22-1 to 2-4
- the first bit string in the control information holding unit 305 is set as B1-1 and B2-1 to B2-4 shown in FIG.
- the comparing unit 307 identifies that the path setting has been completed.
- the comparison unit 307 executes “completion notification instruction processing” and instructs the completion notification generation unit 308 to issue a “route setting completion notification”.
- Completion notification generation unit 308 generates a route setting completion notification by “completion notification generation processing” in step 333, and outputs the generated route setting completion notification to packet output unit 302.
- a route setting completion notification a multicast ID (“1” in this example) for specifying a process group that executes multicast communication is described.
- the packet output unit 302 of the network switch 21-1 receives the route setting completion notification generated by the “completion notification generation process” from the completion notification generation unit 308. Further, the packet output unit 302 receives the route information set by the “route setting process” from the multicast control information holding unit 305. Then, the packet output unit 302 outputs a copy of the route setting completion notification by using the output buffer unit 202 (output port) designated by the route information by “completion notification transmission processing”. Accordingly, a route setting completion notification is transmitted to the computation node 11-1 according to the transfer route. For example, in the example of FIG.
- the packet output unit 302 of the switch 21-1 outputs each output port (output) corresponding to the setting of the “first bit string B1-1” in the multicast control information 3051 specified by the multicast ID.
- a route setting completion notification is output to port numbers 1 to 3). This completes the “route setting completion notification process” in step 33.
- the transfer path for multicast communication is set in the order of the network switch 21-1, the network switch 22-1 and the calculation node 11-1. Therefore, the “route setting completion notification transfer process” in step 24, which is a relay process by the network switch 22-1, is performed.
- the network switch 22-1 Upon receiving the “route setting completion notification” transmitted from the network switch 21-1, the network switch 22-1 inputs the route setting completion notification to the packet input unit 301 of the multicast control unit 205.
- the packet input unit 301 notifies the multicast control information holding unit 305 of the multicast ID (“1” in this example) included in the route setting completion notification. Further, the packet input unit 301 transfers the input route setting completion notification to the packet output unit 302.
- the packet output unit 302 of the network switch 22-1 outputs the packet to the port specified by the bit included in the bit string B2-1 in FIG. 10 in the multicast control information 3051.
- the “route setting completion notification” issued by the network switch 21-1 is transmitted from the network switch 22-1 to each process in the process group operating on the calculation node 11-1.
- a method for notifying each process of the completion of the route setting by the route setting completion command is arbitrary. For example, a general method such as setting a predetermined value in a memory corresponding to a specified address of the calculation node 10 or a specified register of the calculation node 10 and reporting an interrupt to the calculation node 10 may be used.
- the computation node 11-1 that is the destination of the path setting completion notification executes the “path setting completion notification receiving process” in step 13, and receives the path setting completion notification by each process of the process group. This completes the “transfer route setting process”.
- step 14 when the computing node 11-1 performs the multicast communication using the transfer path set by the series of “transfer path setting process” will be described.
- the five processes in the process group that execute “multicast communication processing” have a function of performing multicast communication.
- a case where the computation node 11-1 performs multicast communication using all five processes in the process group will be described as an example.
- the multicast packet transmitted from the computation node 11-1 is transferred to the multicast control switch that controls the multicast communication of the process group.
- the multicast control switch is designated by the “multicast control switch number” set in the “preparation process” in step 11. Therefore, “network switch 21-1” is set as the destination information when the computing node 11-1 issues a multicast packet.
- the “control unit arrival bit” in the multicast packet issued by the computation node 11-1 is “0” to indicate that the multicast packet has not reached the multicast control switch 21-1. Is set to
- the destination match determination unit 309 identifies that the control unit arrival bit in the multicast packet received from the calculation node 11-1 is set to “0”. Thereafter, the packet output unit 302 of the network switch 22-1 transfers the multicast packet to the multicast control switch (network switch 21-1).
- the destination match determination unit 309 When receiving the multicast packet transferred from the network switch 22-1 at the network switch 21-1, which is a “multicast control switch”, the destination match determination unit 309 causes the multicast packet to be sent to its final destination (network switch 21- Identify that 1) has been reached. Therefore, the destination match determination unit 309 rewrites the control unit arrival bit in the multicast packet to “1” and forwards it to the packet input unit 301 of the multicast control unit 205. The packet input unit 301 notifies the multicast ID to the multicast control information holding unit 305 and transfers the multicast packet body to the packet output unit 302.
- a bit string (path) indicating the output port set by the multicast control information holding unit 305 for the process group of the multicast packet issuer (calculation node 11-1) specified by the multicast ID Information), and the read route information is transmitted to the packet output unit 302.
- the packet output unit 302 outputs the multicast packet to the output buffer unit 202 designated according to the route information in order to transmit the multicast packet using the set transfer route.
- the multicast packet transmitted from the computation node 11 is transferred to the network switches 22-1 22-2, and 22-3 via the network switch 21-1 that is a multicast control switch.
- Each network switch 22-1 to 22-3 identifies that the control unit arrival bit in the multicast packet transferred from the network switch 21-1 is set to “1”, and the multicast packet is multicast-controlled. Determine that the switch has been reached. Thereafter, the determined multicast packet is transferred to the packet input unit 301 of the multicast control unit 205. The packet input unit 301 notifies the multicast control information holding unit 305 of the multicast ID and transfers the multicast packet to the packet output unit 302.
- the multicast control information holding unit 305 reads the bit string (route information of the output port) specified by the multicast ID notified from the packet input unit 301 and supplies this route information to the packet output unit 302.
- the packet output unit 302 outputs the multicast packet to any of the output buffer units 202-1 to 202-5 designated by the supplied route information.
- the network switch 22-1 transfers the multicast packet according to the transfer route set by the transfer route setting process described above.
- the multicast packet transfer operation is the same as the operation of transferring the setting completion command using the transfer route set by the transfer route setting process in the “route setting completion notification transfer process” in step 24.
- step S14 the “multicast communication process” in step 14 is completed.
- the network switches 21 and 22 designate at least one output port and transfer a copy of a packet input from the input port to the designated output port. It is determined whether the number of processes for which the route has been set and the setting of the transfer route has been matched with the number of processes for which the multicast communication that is held in advance matches, and the route setting for multicast communication is completed when it is determined that they match. Identify what happened.
- the processing performance of the entire program using the multicast communication function can be improved.
- the completion notification generation unit 308 indicates that the multicast communication route setting by the multicast control unit 205 has been completed. To the calculation node 10. As a result, the issuer of the route setting command can recognize that the multicast communication can be executed.
- the method of performing multicast communication inside the network switch is not limited to this.
- the control information in the packet is input to the multicast control unit 205, and the packet itself is output via the crossbar switch 203 to the output buffer unit 202.
- a plurality of packet copies may be output at the same time.
- the number of processes belonging to the process group is set in the process number holding unit 303 in advance, but each path setting command holds the number of processes, and the output result and command of the adding unit 306 are Completion of path setting may be identified by sequentially comparing the number of processes held.
- the processing in the network switch 21-1 is implemented by a computer that operates the network switch 21-1 as a network switch 21-1 in addition to the above-described dedicated hardware.
- the program may be recorded on a readable recording medium, and the program recorded on the recording medium may be read by the computer and executed.
- the computer-readable recording medium operated as the network switch 21-1 includes a removable recording medium such as a floppy disk (registered trademark), a magneto-optical disk, a DVD, and a CD, and an HDD built in the computer. Etc.
- the program recorded on the recording medium is read by, for example, a processor that operates as the multicast control unit 205 included in the computer that operates as the network switch 21-1, and the same processing as described above is performed under the control of the processor. Done.
- the processor that operates as the multicast control unit 205 executes the program read from the recording medium on which the program is recorded.
- the above-described program can be similarly applied to each of the network switches 22-1 to 22-4.
- the multicast control information holding unit of the network switch is configured to send a multicast packet from a plurality of output ports based on an input port to which a route setting command that is a command for instructing the multicast control unit to set a transfer route is input. You may specify an output port for outputting.
- the multicast control information holding unit of the network switch of the present invention holds multicast control information including a plurality of bits respectively associated with a plurality of output ports, and is updated by updating a value set in the bits.
- the output port corresponding to the bit may be designated as the output port that outputs the multicast packet.
- the multicast control information holding unit of the network switch of the present invention may specify multicast control information including bits to be updated by a multicast ID.
- the network switch of the present invention when a route setting command is input to an input port, whether or not the destination indicated by the transfer destination information of the route setting command matches the network switch to which the route setting command is input. And an adder may count the number of route setting completion processes when it is determined that the destination match determiner matches.
- the network switch of the present invention has a process number holding unit that holds the number of processes for executing the multicast communication included in the route setting command, and the comparison unit includes the number of path setting completion processes counted by the adding unit, It may be determined whether or not the number of processes for executing the multicast communication held by the process number holding unit matches.
- the network switch of the present invention generates a route setting completion notification indicating that the transfer route setting is completed when the comparison unit identifies that the transfer route setting of the multicast communication is completed, and generates the generated route setting completion notification. May be included in a completion notification generation unit that transfers the route setting command input to the input port to the transmission source.
- the completion notification generation unit of the network switch of the present invention may transfer the route setting completion notification by multicast communication performed according to the transfer route set by the multicast control unit.
- the multicast control unit when the multicast control unit sets the transfer route by the route setting command, the multicast packet is transferred on the interconnection network in the direction opposite to the direction in which the route setting command is transferred.
- a transfer route may be set.
- the multicast control information holding processing of the route setting method of the present invention based on the input port to which the route setting command that is a command for instructing transfer route setting in the multicast control processing is input, from among a plurality of output ports.
- An output port for outputting a multicast packet may be designated.
- the multicast control information holding process of the route setting method of the present invention the multicast control information including a plurality of bits respectively associated with the plurality of output ports is held, and updated by updating the value set in the bits.
- the output port corresponding to the selected bit may be designated as the output port that outputs the multicast packet.
- the multicast control information including the bits to be updated may be specified by the multicast ID.
- the route setting method of the present invention when the route setting command is input to the input port, the destination indicated by the transfer destination information of the route setting command matches the network switch to which the route setting command is input. In the addition process, if it is determined that the addresses match in the destination match determination process, the number of route setting completion processes may be counted.
- the route setting method of the present invention has a process number holding process for holding the number of processes for executing the multicast communication included in the route setting command, and in the comparison process, the number of path setting completion processes counted in the addition process It may also be determined whether or not the number of processes for executing multicast communication held in the process number holding process matches.
- the route setting method of the present invention generates a route setting completion notification indicating that the transfer route setting is completed when the comparison processing identifies that the transfer route setting of multicast communication is completed, and the generated route setting You may have the completion notification production
- the route setting completion notification may be transferred by multicast communication performed according to the transfer route set in the multicast control process.
- the multicast packet is transferred on the interconnection network in the direction opposite to the direction in which the route setting command is transferred.
- the transfer path may be set so that
- a multicast packet is selected from a plurality of output ports based on an input port to which a route setting command that is a command for instructing transfer route setting in the multicast control procedure is input. You may specify an output port for outputting.
- the multicast control information holding procedure of the program of the present invention the multicast control information including a plurality of bits respectively associated with the plurality of output ports is held, and the updated bit is updated by updating the value set in the bit. May be designated as an output port that outputs a multicast packet.
- multicast control information including bits to be updated may be specified by a multicast ID.
- the program of the present invention determines whether or not the destination indicated by the transfer destination information of the route setting command matches the network switch to which the route setting command is input when the route setting command is input to the input port.
- the route setting completion process number may be counted when it is determined in the destination match determination procedure that the addresses match.
- the program of the present invention has a process number holding procedure for holding the number of processes for executing the multicast communication included in the route setting command, and in the comparison procedure, the number of path setting completion processes counted in the adding procedure, It may be determined whether or not the number of processes for executing the multicast communication held in the process number holding procedure matches.
- the program of the present invention when the program of the present invention identifies that the transfer route setting of the multicast communication is completed in the comparison procedure, the program of the present invention generates a route setting completion notification indicating that the transfer route setting is completed, and the generated route setting completion notification May be transmitted to the transmission source of the route setting command input to the input port.
- the route setting completion notification may be transferred by multicast communication performed according to the transfer route set in the multicast control procedure.
- the multicast packet is transferred on the interconnection network in the direction opposite to the direction in which the route setting command is transferred.
- a transfer route may be set.
Abstract
Description
Claims (27)
- 複数の入力ポートと該入力ポートにそれぞれ対応付けられた複数の出力ポートとを有し、前記出力ポートからマルチキャストパケットを出力するネットワークスイッチにおいて、
前記複数の出力ポートのうちから前記マルチキャストパケットを出力するための出力ポートを指定するマルチキャスト制御情報保持部と、
前記マルチキャスト制御情報保持部が指定した出力ポートに対して、前記マルチキャストパケットの転送経路を設定する転送経路設定を行うマルチキャスト制御部と、
前記マルチキャスト制御部が前記転送経路設定を完了したプロセス数である経路設定完了プロセス数をカウントする加算部と、
前記加算部がカウントした経路設定完了プロセス数と、前記マルチキャスト通信を実行させるプロセス数とが一致するか否かを判別し、一致すると判別したときにマルチキャスト通信の転送経路設定が完了したことを識別する比較部とを有することを特徴とするネットワークスイッチ。 - 前記マルチキャスト制御情報保持部は、
前記マルチキャスト制御部に転送経路設定を指示するコマンドである経路設定コマンドが入力された入力ポートに基づいて、前記複数の出力ポートのうちから前記マルチキャストパケットを出力するための出力ポートを指定することを特徴とする請求項1に記載のネットワークスイッチ。 - 前記マルチキャスト制御情報保持部は、
前記複数の出力ポートにそれぞれ対応付けられた複数のビットを含むマルチキャスト制御情報を保持し、
前記ビットに設定されている値の更新により、該更新したビットに対応する出力ポートを、前記マルチキャストパケットを出力する出力ポートとして指定することを特徴とする請求項2に記載のネットワークスイッチ。 - 前記マルチキャスト制御情報保持部は、前記更新の対象とするビットを含むマルチキャスト制御情報を、マルチキャストIDによって指定することを特徴とする請求項3に記載のネットワークスイッチ。
- 前記入力ポートに前記経路設定コマンドが入力されたときに、該経路設定コマンドの転送先情報が示す宛先と、該経路設定コマンドが入力されたネットワークスイッチとが一致するか否かを判別する宛先一致判別部、を有し、
前記加算部は、前記宛先一致判別部が一致すると判別した場合、前記経路設定完了プロセス数をカウントすることを特徴とする請求項2に記載のネットワークスイッチ。 - 前記経路設定コマンドに含まれるマルチキャスト通信を実行させるプロセス数を保持するプロセス数保持部、を有し、
前記比較部は、前記加算部がカウントした経路設定完了プロセス数と、前記プロセス数保持部が保持している前記マルチキャスト通信を実行させるプロセス数とが一致するか否かを判別することを特徴とする請求項2に記載のネットワークスイッチ。 - 前記比較部がマルチキャスト通信の転送経路設定が完了したことを識別した場合、該転送経路設定が完了したことを示す経路設定完了通知を生成し、該生成した経路設定完了通知を、前記入力ポートに入力された経路設定コマンドの送信元に転送する完了通知生成部、を有することを特徴とする請求項2に記載のネットワークスイッチ。
- 前記完了通知生成部は、前記マルチキャスト制御部が設定した転送経路に従って行われるマルチキャスト通信により、前記経路設定完了通知を転送することを特徴とする請求項7に記載のネットワークスイッチ。
- 前記経路設定コマンドによって前記マルチキャスト制御部が転送経路を設定する際に、前記マルチキャストパケットは、1つまたは複数のネットワークスイッチで構成される相互結合網上を、前記経路設定コマンドが転送された方向と逆向きに転送されるよう、前記転送経路を設定することを特徴とする請求項2に記載のネットワークスイッチ。
- 複数の入力ポートと該入力ポートにそれぞれ対応付けられた複数の出力ポートとを有し、前記出力ポートからマルチキャストパケットを出力するネットワークスイッチにおける経路設定方法であって、
前記複数の出力ポートのうちから前記マルチキャストパケットを出力するための出力ポートを指定するマルチキャスト制御情報保持処理と、
前記マルチキャスト制御情報保持処理にて指定した出力ポートに対して、前記マルチキャストパケットの転送経路を設定する転送経路設定を行うマルチキャスト制御処理と、
前記マルチキャスト制御処理にて前記転送経路設定を完了したプロセス数である経路設定完了プロセス数をカウントする加算処理と、
前記加算処理にてカウントした経路設定完了プロセス数と、前記マルチキャスト通信を実行させるプロセス数とが一致するか否かを判別し、一致すると判別したときにマルチキャスト通信の転送経路設定が完了したことを識別する比較処理とを有する経路設定方法。 - 前記マルチキャスト制御情報保持処理では、
前記マルチキャスト制御処理にて転送経路設定を指示するコマンドである経路設定コマンドが入力された入力ポートに基づいて、前記複数の出力ポートのうちから前記マルチキャストパケットを出力するための出力ポートを指定することを特徴とする請求項10に記載の経路設定方法。 - 前記マルチキャスト制御情報保持処理では、
前記複数の出力ポートにそれぞれ対応付けられた複数のビットを含むマルチキャスト制御情報を保持し、
前記ビットに設定されている値の更新により、該更新したビットに対応する出力ポートを、前記マルチキャストパケットを出力する出力ポートとして指定することを特徴とする請求項11に記載の経路設定方法。 - 前記マルチキャスト制御情報保持処理では、前記更新の対象とするビットを含むマルチキャスト制御情報を、マルチキャストIDによって指定することを特徴とする請求項12に記載の経路設定方法。
- 前記入力ポートに前記経路設定コマンドが入力されたときに、該経路設定コマンドの転送先情報が示す宛先と、該経路設定コマンドが入力されたネットワークスイッチとが一致するか否かを判別する宛先一致判別処理、を有し、
前記加算処理では、前記宛先一致判別処置にて一致すると判別した場合、前記経路設定完了プロセス数をカウントすることを特徴とする請求項11に記載の経路設定方法。 - 前記経路設定コマンドに含まれるマルチキャスト通信を実行させるプロセス数を保持するプロセス数保持処理、を有し、
前記比較処理では、前記加算処理にてカウントした経路設定完了プロセス数と、前記プロセス数保持処理にて保持している前記マルチキャスト通信を実行させるプロセス数とが一致するか否かを判別することを特徴とする請求項11に記載の経路設定方法。 - 前記比較処理にてマルチキャスト通信の転送経路設定が完了したことを識別した場合、該転送経路設定が完了したことを示す経路設定完了通知を生成し、該生成した経路設定完了通知を、前記入力ポートに入力された経路設定コマンドの送信元に転送する完了通知生成処理、を有することを特徴とする請求項11に記載の経路設定方法。
- 前記完了通知生成処理では、前記マルチキャスト制御処理にて設定した転送経路に従って行われるマルチキャスト通信により、前記経路設定完了通知を転送することを特徴とする請求項16に記載の経路設定方法。
- 前記マルチキャスト制御処理では、前記マルチキャストパケットは、1つまたは複数のネットワークスイッチで構成される相互結合網上を、前記経路設定コマンドが転送された方向と逆向きに転送されるよう、前記転送経路を設定することを特徴とする請求項11に記載の経路設定方法。
- ネットワークスイッチが具備する複数の入力ポートにそれぞれ対応付けられた複数の出力ポートのうちから、マルチキャストパケットを出力するための前記出力ポートを指定するマルチキャスト制御情報保持手順と、
前記マルチキャスト制御情報保持手順にて指定した出力ポートに対して、前記マルチキャストパケットの転送経路の設定である転送経路設定を行うマルチキャスト制御手順と、
前記マルチキャスト制御手順にて前記転送経路設定を完了したプロセス数である経路設定完了プロセス数をカウントする加算手順と、
前記加算手順にてカウントした経路設定完了プロセス数と、前記マルチキャスト通信を実行させるプロセス数とが一致するか否かを判別し、一致すると判別したときにマルチキャスト通信の転送経路設定が完了したことを識別する比較手順とをコンピュータに実行させるプログラム。 - 前記マルチキャスト制御情報保持手順では、
前記マルチキャスト制御手順にて転送経路設定を指示するコマンドである経路設定コマンドが入力された入力ポートに基づいて、前記複数の出力ポートのうちから前記マルチキャストパケットを出力するための出力ポートを指定することを特徴とする請求項19に記載のプログラム。 - 前記マルチキャスト制御情報保持手順では、
前記複数の出力ポートにそれぞれ対応付けられた複数のビットを含むマルチキャスト制御情報を保持し、
前記ビットに設定されている値の更新により、該更新したビットに対応する出力ポートを、前記マルチキャストパケットを出力する出力ポートとして指定することを特徴とする請求項20に記載のプログラム。 - 前記マルチキャスト制御情報保持手順では、前記更新の対象とするビットを含むマルチキャスト制御情報を、マルチキャストIDによって指定することを特徴とする請求項21に記載のプログラム。
- 前記入力ポートに前記経路設定コマンドが入力されたときに、該経路設定コマンドの転送先情報が示す宛先と、該経路設定コマンドが入力されたネットワークスイッチとが一致するか否かを判別する宛先一致判別手順、を有し、
前記加算手順では、前記宛先一致判別手順にて一致すると判別した場合、前記経路設定完了プロセス数をカウントすることを特徴とする請求項20に記載のプログラム。 - 前記経路設定コマンドに含まれるマルチキャスト通信を実行させるプロセス数を保持するプロセス数保持手順、を有し、
前記比較手順では、前記加算手順にてカウントした経路設定完了プロセス数と、前記プロセス数保持手順にて保持している前記マルチキャスト通信を実行させるプロセス数とが一致するか否かを判別することを特徴とする請求項20に記載のプログラム。 - 前記比較手順にてマルチキャスト通信の転送経路設定が完了したことを識別した場合、該転送経路設定が完了したことを示す経路設定完了通知を生成し、該生成した経路設定完了通知を、前記入力ポートに入力された経路設定コマンドの送信元に転送する完了通知生成手順、を有することを特徴とする請求項20に記載のプログラム。
- 前記完了通知生成手順では、前記マルチキャスト制御手順にて設定した転送経路に従って行われるマルチキャスト通信により、前記経路設定完了通知を転送することを特徴とする請求項25に記載のプログラム。
- 前記マルチキャスト制御手順では、前記マルチキャストパケットは、1つまたは複数のネットワークスイッチで構成される相互結合網上を、前記経路設定コマンドが転送されてきた方向と逆向きに転送されるよう、前記転送経路を設定することを特徴とする請求項20に記載のプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009552389A JP5347975B2 (ja) | 2008-02-08 | 2008-12-11 | ネットワークスイッチ、経路設定方法およびプログラム |
US12/864,567 US8416702B2 (en) | 2008-02-08 | 2008-12-11 | Network switch, path setting method, and program |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008028890 | 2008-02-08 | ||
JP2008-028890 | 2008-02-08 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009098820A1 true WO2009098820A1 (ja) | 2009-08-13 |
Family
ID=40951903
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2008/072511 WO2009098820A1 (ja) | 2008-02-08 | 2008-12-11 | ネットワークスイッチ、経路設定方法およびプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US8416702B2 (ja) |
JP (1) | JP5347975B2 (ja) |
WO (1) | WO2009098820A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016510188A (ja) * | 2013-02-19 | 2016-04-04 | アライドテレシスホールディングス株式会社 | ネットワーク通信用の自動化されたコマンドおよび発見プロセス |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9307304B2 (en) * | 2010-05-11 | 2016-04-05 | Comcast Cable Communications, Llc | Dynamic assignment of signals to ports in an access platform |
US11777809B2 (en) | 2010-05-11 | 2023-10-03 | Comcast Cable Communications, Llc | Dynamic assignment of signals to ports in an access platform |
WO2012068171A1 (en) * | 2010-11-15 | 2012-05-24 | Reed Coke S | Parallel information system utilizing flow control and virtual channels |
US8855117B2 (en) * | 2012-08-08 | 2014-10-07 | Cisco Technology, Inc. | Scalable media access control protocol synchronization techniques for fabric extender based emulated switch deployments |
US9712334B2 (en) * | 2013-05-21 | 2017-07-18 | Brocade Communications Systems, Inc. | Efficient multicast topology construction in a routed network |
US10833880B2 (en) * | 2014-08-07 | 2020-11-10 | Nokia Technologies Oy | Controlled switching of multicast traffic between selective and inclusive routes based on number of multicast receivers |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005051548A (ja) * | 2003-07-29 | 2005-02-24 | Furukawa Electric Co Ltd:The | データ中継方法、データ中継装置およびその装置を用いたデータ中継システム |
JP2005136502A (ja) * | 2003-10-28 | 2005-05-26 | Ntt Docomo Inc | 移動通信システム、移動端末、ノード装置、及び移動通信方法 |
JP2006014187A (ja) * | 2004-06-29 | 2006-01-12 | Anritsu Corp | ネットワーク中継装置 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2581286B2 (ja) | 1990-09-07 | 1997-02-12 | 日本電気株式会社 | 網制御方法 |
US5321813A (en) * | 1991-05-01 | 1994-06-14 | Teradata Corporation | Reconfigurable, fault tolerant, multistage interconnect network and protocol |
JP3679813B2 (ja) | 1991-07-22 | 2005-08-03 | 株式会社日立製作所 | 並列計算機 |
JP2780623B2 (ja) | 1993-12-28 | 1998-07-30 | 日本電気株式会社 | 情報処理装置 |
JP2778520B2 (ja) | 1995-04-28 | 1998-07-23 | 日本電気株式会社 | マルチキャスト方法及び交換スイッチ |
JP2830833B2 (ja) | 1996-04-30 | 1998-12-02 | 日本電気株式会社 | プロセッサ間通信方法及びそれに用いるプロセッサ |
JP3408444B2 (ja) | 1999-01-21 | 2003-05-19 | 日本電気株式会社 | 並列計算機、多段結合網並びに交換スイッチ |
JP4478390B2 (ja) | 2001-02-24 | 2010-06-09 | インターナショナル・ビジネス・マシーンズ・コーポレーション | クラス・ネットワーク経路指定 |
-
2008
- 2008-12-11 JP JP2009552389A patent/JP5347975B2/ja active Active
- 2008-12-11 WO PCT/JP2008/072511 patent/WO2009098820A1/ja active Application Filing
- 2008-12-11 US US12/864,567 patent/US8416702B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005051548A (ja) * | 2003-07-29 | 2005-02-24 | Furukawa Electric Co Ltd:The | データ中継方法、データ中継装置およびその装置を用いたデータ中継システム |
JP2005136502A (ja) * | 2003-10-28 | 2005-05-26 | Ntt Docomo Inc | 移動通信システム、移動端末、ノード装置、及び移動通信方法 |
JP2006014187A (ja) * | 2004-06-29 | 2006-01-12 | Anritsu Corp | ネットワーク中継装置 |
Non-Patent Citations (1)
Title |
---|
MINORU NAKAZAWA: "An Implementation and Its Evaluation of Application Layer Multicast Distribution Tree Based on Associatively and Stability", TRANSACTIONS OF INFORMATION PROCESSING SOCIETY OF JAPAN, vol. 47, no. 2, 15 February 2006 (2006-02-15), pages 382 - 391 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016510188A (ja) * | 2013-02-19 | 2016-04-04 | アライドテレシスホールディングス株式会社 | ネットワーク通信用の自動化されたコマンドおよび発見プロセス |
Also Published As
Publication number | Publication date |
---|---|
JP5347975B2 (ja) | 2013-11-20 |
JPWO2009098820A1 (ja) | 2011-05-26 |
US20100302952A1 (en) | 2010-12-02 |
US8416702B2 (en) | 2013-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5347975B2 (ja) | ネットワークスイッチ、経路設定方法およびプログラム | |
US8654798B2 (en) | Barrier synchronization apparatus, barrier synchronization system, and barrier synchronization method | |
US8572615B2 (en) | Parallel computing system, synchronization device, and control method of parallel computing system | |
JP4263147B2 (ja) | コンピュータプロセッサを含む装置、複数の所定のグループのタスクを実行するステップを含む方法、ネットワークデータを処理するステップを含む方法、複数のソフトウェアタスクを実行するための方法およびコンピュータプロセッサを含むネットワーク装置 | |
JP6048505B2 (ja) | 並列計算機、ノード装置、及び並列計算機の制御方法 | |
WO2018198479A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
JPH1049507A (ja) | 並列計算機 | |
CN110995598B (zh) | 一种变长报文数据处理方法和调度装置 | |
US20120159121A1 (en) | Parallel computer system, synchronization apparatus, and control method for the parallel computer system | |
JP5435024B2 (ja) | ネットワークスイッチ、経路設定方法、プログラムおよび並列計算機システム | |
JP4588259B2 (ja) | 通信システム | |
JPWO2010109761A1 (ja) | 並列処理システム、並列処理方法、ネットワークスイッチ装置、及び並列処理プログラム | |
US10616140B2 (en) | Information processing system and information processing method | |
JP4704252B2 (ja) | ネットワークシステムのブロードキャスト処理方法及びネットワークシステム | |
Panda et al. | Fast Broadcast and Multicast in Wormhole Multistage Networks with Multidestination Worms | |
US7486687B2 (en) | Method and allocation device for allocating pending requests for data packet transmission at a number of inputs to a number of outputs of a packet switching device in successive time slots | |
JP2009188623A (ja) | ネットワーク中継装置およびネットワーク中継方法 | |
JP2960454B2 (ja) | 並列プロセッサのプロセッサ間データ転送装置 | |
JP3408444B2 (ja) | 並列計算機、多段結合網並びに交換スイッチ | |
US20240086265A1 (en) | Selective aggregation of messages in collective operations | |
JP7036226B2 (ja) | 演算処理装置及びその制御方法 | |
US11860814B1 (en) | Scalable distributed computing system with deterministic communication | |
JP3703304B2 (ja) | ノード間データ転送方法および計算機間データ転送方法 | |
JPH08305649A (ja) | マルチキャスト方法及び交換スイッチ | |
WO2022220855A1 (en) | Virtual pipeline in programmable switches |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 08872133 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 12864567 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2009552389 Country of ref document: JP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 08872133 Country of ref document: EP Kind code of ref document: A1 |