WO2012111745A1 - 通信システム、スイッチングハブ、ルータおよび通信方法 - Google Patents
通信システム、スイッチングハブ、ルータおよび通信方法 Download PDFInfo
- Publication number
- WO2012111745A1 WO2012111745A1 PCT/JP2012/053650 JP2012053650W WO2012111745A1 WO 2012111745 A1 WO2012111745 A1 WO 2012111745A1 JP 2012053650 W JP2012053650 W JP 2012053650W WO 2012111745 A1 WO2012111745 A1 WO 2012111745A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- frame
- router
- switching hub
- identifier
- switching
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/12—Discovery or management of network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/26—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using dedicated tools for LAN [Local Area Network] management
-
- 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/36—Backward learning
Definitions
- This invention relates to a technology for supporting operation management of a LAN (Local Area Network).
- local LANs In recent years, companies have established LANs (hereinafter referred to as local LANs) at each branch office, etc., and connected these local LANs to an IP (Internet Protocol) network such as the Internet via a router. Building is generally done.
- IP Internet Protocol
- a local LAN is often configured by cascading a plurality of switching hubs, and a communication terminal used by each user (for example, a company employee) is connected to any one of those switching hubs.
- the router is a relay device that performs transfer control of packets (data transmission / reception unit in the third layer) according to the communication protocol of the third layer (network layer) in the OSI (Open Systems Interconnection) reference model.
- the switching hub is a relay device that performs transfer control of a frame (data transmission / reception unit in the second layer) according to the communication protocol of the second layer (data link layer) in the OSI reference model, and is also called an L2 switch.
- the MAC address is a hardware identifier that uniquely identifies each communication device in the second layer.
- the MAC address of the own device is added to the payload portion and transferred. Let In this way, the network topology in the LAN is grasped by tracing the array of MAC addresses written in the payload portion of the response frame returned from each switching hub.
- Patent Document 1 In a large-scale LAN including a large number of switching hubs, the number of cascade connection stages is large, and the connection relationship of each switching hub is often complicated. For this reason, the importance of grasping the network topology increases as the LAN becomes larger.
- the technique disclosed in Patent Document 1 has a problem that it is difficult to apply to a large-scale LAN with many cascaded stages. The reason is as follows. In the technique disclosed in Patent Document 1, the data size of the payload portion increases each time a response frame is transferred by the switching hub. For this reason, as the number of stages of cascade connection increases, a response frame having a larger data size in the payload portion is transmitted in the LAN.
- the present invention has been made in view of the above problems, and an object of the present invention is to provide a technique that makes it possible to grasp a network topology in a network under a router without imposing an excessive load on the network.
- an aspect of the present invention provides a communication system including a router and a plurality of switching hubs included in a network under the router, and at least one switching hub of the plurality of switching hubs. If a hardware identifier uniquely identifying the storage unit and the apparatus that transferred the frame is assigned as a transfer source identifier to the received frame, the storage source is used as the connection destination identifier. The transfer source identifier assigned to the frame is rewritten with the hardware identifier of the at least one switching hub, and the transfer according to the destination of the frame is performed on the frame in which the transfer source identifier is rewritten.
- Notification frame transmission means for transmitting a notification frame in which a list of destination identifiers is written in a payload portion to the router, and the router receives the notification frame and receives the notification frame from the payload portion of the notification frame. It has a connection relation specifying means for reading out a list of connection destination identifiers of the switching hub that is the transmission source of the notification frame and generating topology data representing the connection relation between the router and the switching hub based on the list.
- a communication system is provided.
- the memory of each switching hub is stored every time the frame with the transfer source identifier is transferred.
- the transfer source identifier is stored in the means. That is, the adjacent relay device that has transferred the frame to each switching hub is specified.
- each switching hub does not add the hardware identifier of its own device as a new transfer source identifier when transferring a frame to which a transfer source identifier is assigned, Since the identifier is rewritten, the data size of the payload portion of the frame does not increase every time the frame is transferred by the switching hub. For this reason, according to the communication system of the present invention, even if the network under the router becomes large, it is possible to specify the network topology without imposing an excessive load on the network.
- switching hubs included in the network under the router include those that do not have the frame transfer control means and the notification frame transmission means (specifically, conventional switching hubs). Even in such a case, it is possible to specify a rough network topology without the conventional switching hub.
- the notification frame transmission means when the notification frame transmitting means transmits the notification frame to the router, the notification frame transmission means assigns and transmits a hardware identifier of the at least one switching hub as a transfer source identifier.
- the adjacent relay device on the downstream side of each switching hub is specified.
- the router further includes multicast means for multicasting to a network by assigning a hardware identifier uniquely indicating the router to a part of the frame as the transfer source identifier. .
- each switching hub since the router assigns a transfer source identifier to some of the frames to be multicasted toward the subordinate network and performs multicasting, each switching hub transmits the frame.
- a process of receiving, storing the transfer source identifier, and flooding is performed.
- the adjacent relay device on the upstream side (side close to the router) for each switching hub is specified.
- the fact that the adjacent relay device on the upstream side is specified for each switching hub is the fact that the connection relationship between the router and each switching hub is specified.
- the request frame is a request frame for requesting transmission of the notification frame
- the notification frame transmitting means transmits the notification frame when the request frame is received.
- a new communication protocol second layer communication protocol
- various modes can be considered as to when the request frame is transmitted to the router. For example, there are a mode in which transmission is performed when a predetermined type of packet is received from a communication terminal included in the network, a mode in which multicast is periodically performed at a predetermined time interval, and the like.
- the frame transfer control means writes the port identifier of the communication port that has received the frame to which the transfer source identifier is assigned and the transfer source identifier in association with each other and writes them in the storage means.
- the connection relation of the ports to the adjacent relay device that is, which of the plurality of communication ports provided in each switching hub is connected to the adjacent relay device on the upstream side or the downstream side.
- the network topology in the network under the router can be specified.
- an aspect of the present invention provides a switching hub included in a network under a router, wherein the frame is transferred to the switching hub in a storage unit and a received frame.
- a hardware identifier that uniquely indicates the device is assigned as a transfer source identifier
- the transfer source identifier is written in the storage means as a connection destination identifier
- the transfer source identifier assigned to the frame is Frame transfer control means for performing transfer control according to the destination of the frame for the frame that has been rewritten to the hardware identifier of the hub and the transfer source identifier has been rewritten
- the connection destination identifier stored in the storage means Sends a notification frame to the router with a notification frame written in the payload part
- a switching hub characterized in that it comprises a stage, a.
- the communication system of the present invention can be constructed by combining such a switching hub and a router having at least the connection relationship specifying means described above.
- an aspect of providing a communication method having steps corresponding to the frame transfer control means and the notification frame transmission means is also conceivable.
- an aspect of the present invention is a router that connects a subordinate network and another network, and transmits from each of one or a plurality of switching hubs included in the subordinate network.
- a list of connection destination identifiers of the switching hub indicating a list of hardware identifiers of other devices that have forwarded the frame to the switching hub that is the transmission source of the notification frame.
- a topology that represents the connection relationship between the router and the one or more switching hubs, identified from the list of connection destination identifiers of the switching hub for each of the one or more switching hubs
- a connection relation specifying means for generating data To provide the data.
- the router may include a multicast unit that multicasts to a subordinate network by assigning a hardware identifier that uniquely indicates the router as a transfer source identifier that indicates a transfer source of the frame to some frames. Good.
- the communication system of the present invention can be constructed by combining such a router with the switching hub having the frame transfer control means and the notification frame transmission means described above. Further, as another aspect of the present invention, an aspect of providing a communication method having steps corresponding to the above-described multicast means and connection relation specifying means is also conceivable, and a specific example of the provision aspect of such a communication method is as described above. It is.
- FIG. 1 shows the structural example of LAN1A of 1st Embodiment of this invention. It is a figure which shows the structural example of the switching hub 50 contained in LAN1A. 7 is a flowchart showing a flow of frame transfer control processing executed by the switching engine unit 520 of the switching hub 50. It is a figure which shows the data structure of the flame
- 3 is a diagram illustrating an example of a connection relationship among communication ports of a communication terminal 40, a switching hub 50, and a router 60.
- FIG. FIG. 5 is a diagram for explaining operations of a switching hub 50 and a router 60.
- FIG. 5 is a diagram for explaining operations of a switching hub 50 and a router 60. It is a figure which shows the structural example of LAN1B of 2nd Embodiment of this invention. It is a figure for demonstrating the network topology grasped
- FIG. 1 is a diagram illustrating a configuration example of a LAN 1A that is a communication system according to a first embodiment of this invention.
- the LAN 1A is a local LAN laid at a company branch, for example, and is connected to an IP network (not shown) such as the Internet by a router 60.
- the LAN 1A serves as a communication system in the branch, and constitutes an in-company information system in the company together with the LAN in the base laid in another branch. As shown in FIG.
- the LAN 1A includes four switching hubs (switching hubs 50A, 50B, 50C, and 50D), two communication terminals (communication terminals 40A and 40B), and one operation terminal 30. , Including. As shown in FIG. 1, a switching hub 50A and an operation terminal 30 are connected to the router 60, and a switching hub 50B is connected to the switching hub 50A. Switching hubs 50C and 50D are connected to switching hub 50B. Communication terminal 40A is connected to switching hub 50C, and communication terminal 40B is connected to switching hub 50D.
- Each of the operation terminal 30 and the communication terminals 40A and 40B is, for example, a personal computer.
- the operation terminal 30 is used to cause the operation manager of the LAN 1A to perform various operations for operation management of the LAN 1A.
- the communication terminals 40A and 40B are accommodated in the LAN 1A by being connected to any switching hub included in the LAN 1A.
- Each of the communication terminals 40A and 40B accommodated in the LAN 1A is connected to another communication device (for example, another communication terminal accommodated in the LAN 1A, a communication terminal accommodated in another local LAN, or an IP network). Packet communication in accordance with the IP.
- FIG. 1 illustrates the case where two communication terminals 40 are accommodated in the LAN 1A, three or more communication terminals 40 may be accommodated in the LAN 1A, and only one communication terminal 40 is included. Of course, it may be an accommodated form.
- the switching hub 50 is a relay device that relays data communication in a second layer (data link layer) that is a protocol layer lower than IP.
- the router 60 is a relay device that relays data communication in the network layer, and serves as a default gateway of the LAN 1A. That is, if the destination IP address of the packet received from the IP network is one of the communication terminals 40A or 40B, the router 60 transfers the packet to the LAN 1A, and the destination IP address is the communication terminal 40A.
- the router 60 functions as a default gateway of the LAN 1A as described above, the LAN 1A may be hereinafter referred to as a “network under the router 60”.
- each relay device that is, the router 60 and the switching hub 50 included in the LAN 1A is executed in the process of executing data communication (that is, frame transmission / reception and transfer control) according to the communication protocol of the second layer. )
- the adjacent relay device is another relay device that has transferred a frame to the relay device
- the adjacent relay device for the router 60 is the switching hub 50A
- the adjacent relay devices for the switching hub 50A are the router 60 and the switching hub 50B.
- the adjacent relay devices for the switching hub 50B are the switching hubs 50A, 50C and 50D
- the adjacent relay device for the switching hub 50C (or 50D) is the switching hub 50B.
- each switching hub 50 is caused to execute a process of notifying the router 60 of the detection result of the adjacent relay device, while the router 60 automatically performs the process based on the notification result from each switching hub 50.
- a process of generating topology data representing the connection relationship between the device and each switching hub 50 (that is, the network topology of the LAN 1A) is executed.
- the operation manager of the LAN 1A can grasp the network topology of the LAN 1A by referring to the topology data using the operation terminal 30.
- the switching hub 50 and the router 60 that clearly show the features of the present embodiment will be mainly described.
- FIG. 2 is a block diagram showing the configuration of the switching hub 50.
- the switching hub 50 includes a communication interface (hereinafter referred to as I / F) unit 510, a switching engine unit 520, and a storage unit (storage unit) 530.
- I / F communication interface
- switching engine unit 520 switching engine unit
- storage unit storage unit
- the communication I / F unit 510 has a plurality of communication ports. Each of the plurality of communication ports is connected to another communication device (in this embodiment, either the router 60, another switching hub 50, or the communication terminal 40) via a communication cable such as 100BASE-T. Is done. Each of the plurality of communication ports is assigned a unique port identifier (for example, a port number) for each communication port, and each communication port can be uniquely identified using the port identifier.
- the communication I / F unit 510 provides a frame received via each communication port to the switching engine unit 520, and transmits a frame provided from the switching engine unit 520 from a communication port instructed by the switching engine unit 520.
- the storage unit 530 includes, for example, a volatile memory such as a RAM (Random Access Memory) and a non-volatile memory such as an EPROM (Erasable Programmable Read Only Memory) (none of which is shown in FIG. 2).
- a volatile memory such as a RAM (Random Access Memory)
- a non-volatile memory such as an EPROM (Erasable Programmable Read Only Memory) (none of which is shown in FIG. 2).
- firmware program for causing the switching engine unit 520 to execute processing that clearly shows the characteristics of the switching hub of the present invention is stored in advance.
- the volatile memory is used by the switching engine unit 520 as a work area when executing the firmware.
- the volatile memory serves as a buffer for temporarily storing frames received by the communication I / F unit 510, and the volatile memory further includes a MAC address table in FIG. 2 and the adjacent relay apparatus table of FIG. 2 are stored.
- the MAC address table in FIG. 2 is not particularly different from that of a conventional switching hub.
- This MAC address table stores the port identifier of the communication port that received the frame in association with the transmission source MAC address of the frame received by the communication I / F unit 510.
- the writing of the MAC address and the port identifier to the MAC address table is performed along with the frame transfer control.
- the transmission source MAC address (that is, the frame)
- the MAC address of the communication terminal 40) and the port identifier of the receiving port of the frame are associated and written into the MAC address table.
- a process of writing the transmission source MAC address of the frame (that is, the MAC address of the router 60) and the port identifier of the reception port of the frame in association with each other is performed. Is called.
- the stored contents of the MAC address table are used when frame transfer control based on the destination MAC address is performed.
- a connection destination identifier is stored in association with each port identifier of a plurality of communication ports included in the communication I / F unit 510.
- the connection destination identifier indicates whether or not the connection destination of the communication port associated with the connection destination identifier is an adjacent relay device, and when the connection destination is an adjacent relay device, This is information that uniquely indicates an adjacent relay device.
- the adjacent relay device is another relay device (in this embodiment, the router 60 or another switching hub 50) that has transferred a frame to the switching hub 50.
- the port identifier of the communication port connected to the adjacent relay device is associated with the MAC address of the adjacent relay device as a connection destination identifier, and other communication devices other than the adjacent relay device (in this embodiment)
- the communication port to which the communication terminal 40) is connected or the communication port not connected to another communication device is associated with NULL (0x00) as the connection destination identifier.
- This adjacent relay device table is generated in a state where each connection destination identifier is set to NULL when a power source (not shown) of the switching hub 50 is turned on. Then, along with relaying a predetermined specific frame, the stored contents of the table are updated (that is, the connection destination identifier corresponding to the port identifier of the communication port to which the adjacent relay device is connected is set to the adjacent Rewriting to the MAC address of the relay device).
- a network topology specifying frame (a notification frame transmitted from each switching hub 50 to notify the router 60 of the stored contents of the adjacent relay device table)
- Two types of request frames that the router 60 multicasts to the subordinate LAN 1A in order to request the transmission of the notification frame are determined in advance.
- One of the features of this embodiment is that such an adjacent relay device table is stored in each switching hub 50, and the stored contents are updated in accordance with the transfer control of the network topology specifying frame. is there.
- the switching engine unit 520 is, for example, a CPU (Central Processing Unit).
- the switching engine unit 520 functions as a control center of the switching hub 50 by executing the firmware stored in the storage unit 530.
- the switching engine unit 520 operating according to this firmware executes the process shown in the flowchart of FIG. 3 every time a frame is received via any one of the communication ports.
- FIG. 3 there are two processes executed by the switching engine unit 520 in accordance with the firmware: a frame transfer control process and a notification frame transmission process.
- a frame transfer control process Prior to detailed description of the processing contents of these two processes, the data structure of a frame transmitted / received in the LAN 1A will be described.
- FIG. 4A is a diagram showing a data structure of a general frame transmitted / received in the LAN 1A.
- the frame has a header portion and a payload portion.
- the header part stores a transmission destination MAC address, a transmission source MAC address, and a type identifier.
- the multicast address is set as the destination MAC address
- the MAC address of the router 60 is set as the source MAC address. This is because the request frame is multicast from the router 60 toward the subordinate LAN 1A.
- the MAC address of the router 60 is set as the transmission destination MAC address, and the MAC address of the transmission switching hub 50 is set as the transmission source MAC address. This is because the notification frame is unicast from the switching hub 50 to the router 60 as described above.
- the type identifier is an identifier indicating the type of data (packet) stored in the payload portion of the frame. In the case of the request frame and the notification frame described above, a value (0xe812 in this embodiment) for clearly indicating that the network topology specifying data is a network topology specifying frame stored in the payload portion is set in the type identifier.
- FIG. 4B is a diagram illustrating the data structure of the payload portion of the request frame
- FIG. 4C is a diagram illustrating the data structure of the payload portion of the notification frame.
- the data structure of the payload portion of the request frame and the data structure of the payload portion of the notification frame differ only in that the latter includes adjacent relay device information.
- the notification frame is a response that the switching hub 50 returns to the router 60 as a response to the request frame, and the stored contents of the adjacent relay device table of the switching hub 50 at the time when the notification frame is returned (that is, the The MAC address of the adjacent relay device of the switching hub 50 and the port identifier list of the communication port that received the frame transferred from the adjacent relay device) are set as the adjacent relay device information.
- the payload portion of the request frame and the payload portion of the notification frame include a transmission destination MAC address, a transmission source MAC address, and a frame type identifier. (Identifier indicating whether it is a request frame or a notification frame) and a transfer source identifier are written in common.
- the transmission destination MAC address and the transmission source MAC address in FIG. 4B (or FIG. 4C) the same one written in the header part of the request frame (or notification frame) is written. It is.
- the transmission source identifier is set with the MAC address of the transmission source at the time of transmission of the request frame (or notification frame), and the switching performed when the frame is transferred by another switching hub 50.
- the MAC address of the hub 50 is rewritten. The above is the data structure of the frame transmitted / received in the LAN 1A.
- the frame transfer control process includes transfer control (step SA150) based on the destination MAC address.
- the transfer control based on the transmission destination MAC address of the received frame is a unicast address in which the transmission destination MAC address is not a unicast address or the transmission destination MAC address is not stored in the MAC address table.
- the received frame is flooded, while when the destination MAC address is a unicast address stored in the MAC address table, it is stored in the MAC address table in association with the MAC address.
- the received frame is transmitted only from the communication port indicated by the port identifier.
- a MAC address that is not a unicast address includes a multicast address or a broadcast address.
- flooding means sending the received frame from all communication ports other than the communication port that received the received frame.
- the transfer control based on the destination MAC address is not particularly different from that in the conventional switching hub. In other words, in the conventional switching hub, only the transfer control based on the destination MAC address (the process of step SA150) is executed as the frame transfer control process.
- the frame transfer control process of this embodiment includes the processes of steps SA100 to SA120 in addition to the process of step SA150.
- the switching engine unit 520 first determines whether or not the received frame is a network topology specifying frame (that is, a request frame or a notification frame). The determination is made with reference to the type identifier of the header portion of the frame (step SA100). Specifically, when the value of the type identifier of the received frame is 0xe812, the switching engine unit 520 determines that the received frame is a network topology specifying frame. If the determination result in step SA100 is “No”, the switching engine unit 520 executes the process in step SA150 described above to end the frame transfer control process, and conversely, the determination result in step SA100. Is “Yes”, the processing after step SA110 is executed.
- step SA110 executed when the determination result in step SA100 is “Yes”, the switching engine unit 520 stores the network topology specifying frame in the adjacent relay apparatus table in association with the port identifier of the communication port that has received the frame. Is rewritten with the transfer source identifier written in the payload portion of the frame. Then, the switching engine unit 520 rewrites the transfer source identifier of the received network topology specifying frame with the MAC address of its own device (step SA120).
- the network topology specifying frame is received, one of the features of the switching hub 50 of the present embodiment is that the processes of steps SA110 and SA120 are executed. In addition, as shown in FIG.
- the switching engine unit 520 determines whether or not the received frame is a request frame with reference to the frame type identifier of the payload portion of the received frame (step SA130). If the result is Yes, a notification frame transmission process (step SA140) is further executed. In this notification frame transmission process, the switching engine unit 520 writes the adjacent relay device information and the transfer source identifier (MAC address of the own device) according to the stored contents of the adjacent relay device table of the own device in the payload portion. Is transmitted to the router 60 (unicast). The above is the configuration of the switching hub 50.
- FIG. 5 is a block diagram showing a configuration of the router 60.
- the router 60 includes a communication I / F unit 610, a routing engine unit 620, and a storage unit 630.
- the communication I / F unit 610 has a plurality of ports like the communication I / F unit 510 of the switching hub 50, and a unique port identifier is assigned to each port.
- An IP network (not shown in FIG. 1), the switching hub 50A, and the operation terminal 30 are connected to three of the plurality of ports. Similar to communication I / F unit 510, communication I / F unit 610 provides a frame received via each communication port to routing engine unit 620, while a frame provided from routing engine unit 620 is provided by routing engine unit 620. Send out from the specified communication port.
- the storage unit 630 includes a volatile memory such as a RAM and a nonvolatile memory such as an EPROM (not shown).
- Firmware is stored in the nonvolatile memory.
- the volatile memory is used by the routing engine unit 620 as a work area when executing the firmware, and serves as a buffer for temporarily storing received frames (or packets). .
- the volatile memory stores the routing table shown in FIG. 5, the MAC address table for the router 60, and the adjacent relay device table.
- the routing engine unit 620 is a CPU (Central Processing Unit) like the switching engine unit 520 of the switching hub 50.
- the routing engine unit 620 executes firmware stored in the storage unit 630 and functions as a control center of the router 60.
- the routing engine unit 620 executes packet transfer control processing, multicast processing, and connection relationship identification processing according to the firmware.
- the packet transfer control process is a process for transferring the packet based on the destination IP address of the packet received via the communication I / F unit 610 and the stored contents of the routing table. Since this packet transfer control process is not particularly different from that in the conventional router, a detailed description thereof will be omitted, and the following description will focus on the multicast process and the connection relationship specifying process.
- the multicast process is a process of generating the above-described request frame, giving the MAC address of the own apparatus as a transfer source identifier, and multicasting to the subordinate network (ie, LAN 1A).
- this multicast processing is periodically executed every time a predetermined time T (for example, 3 seconds) elapses after the power of the router 60 (not shown) is turned on.
- the routing engine unit 620 is triggered by reception of a notification frame transmitted from each switching hub 50, and is associated with the port identifier of the communication port that has received the notification frame. Is rewritten with the transfer source identifier written in the payload portion of the frame. Then, the routing engine unit 620 represents the topology representing the connection relationship between the router 60 and each switching hub 50 in the LAN 1A from the stored contents of the adjacent relay device table of the own device and the adjacent relay device information notified from each switching hub 50. Generate data.
- the routing engine unit 620 determines the own device and each switching hub 50 based on the stored contents of the adjacent relay device table of the own device and the adjacent relay device information notified from each switching hub 50.
- a first pointer indicating the upstream adjacent relay device for example, data indicating the port identifier of the communication port connected to the upstream adjacent relay device and the MAC address of the upstream adjacent relay device
- the downstream relay Bidirectional list composed of one or a plurality of second pointers indicating devices (for example, data indicating the port identifier of a communication port connected to the downstream adjacent relay device and the MAC address of the downstream adjacent relay device)
- Structure data of a structure is generated, and a set of these structure data is used as the topology data.
- the upstream adjacent relay device is an adjacent relay device on the side close to the router that connects the network to which the device belongs and another network
- the downstream adjacent relay device is an adjacent relay on the side far from the router.
- the upstream adjacent relay device of the switching hub 50A is the router 60
- the downstream adjacent relay device is the switching hub 50B
- the upstream adjacent relay device of the switching hub 50B is the switching hub 50A
- the downstream adjacent relay devices are the switching hubs 50C and 50D.
- NULL may be set in the first pointer.
- NULL may be set in the second pointer in the structure data for a device that does not have a downstream adjacent relay device, such as the switching hub 50C (or 50D) in FIG.
- the switching hub 50B is indicated by the second pointer of the structure data corresponding to the switching hub 50A.
- the switching hub 50A needs to be indicated by the first pointer of the structure data corresponding to the switching hub 50B.
- the routing engine unit 620 generates topology data only to the extent that no contradiction occurs. This is to prevent the network topology in the LAN 1A from being misunderstood by the topology data including the contradiction.
- the above is the configuration of the router 60.
- ⁇ A-2 Operation>
- the operation of this embodiment will be described by taking as an example the case where the router 60 and each switching hub 50 have eight communication ports and are connected to each other as shown in FIG.
- the communication port is indicated by a black circle, and the port number of the communication port is indicated by a number with #.
- the routing engine unit 620 of the router 60 multicasts the request frame at a time T0 when a predetermined time T has elapsed after the power (not shown) of the router 60 is turned on.
- the request frame multicasted from the router 60 in this manner is first received by the switching hub 50A.
- the determination result in step SA100 in FIG. 3 is “Yes”, and since the received frame is the request frame, FIG. This is because the determination result in step SA130 is also “Yes”.
- Step SA140 the notification frame in which the stored contents of the updated adjacent relay device table by the processing in Step SA110 is written as adjacent relay device information is unicast from the switching hub 50A to the router 60.
- step SA150 the request frame in which the transfer source identifier has been rewritten by the processing in step SA120 is flooded. This is because the destination MAC address of the request frame is a multicast address as described above. The request frame flooded in this way is received by the switching hub 50B.
- the transfer source identifier that is, the MAC address of the switching hub 50A
- the switching engine unit 520 of the switching hub 50B performs flooding of a request frame in which the transfer source identifier is rewritten to the MAC address of the switching hub 50B.
- the request frames flooded in this way are received by the switching hubs 50C and 50D, respectively.
- the notification frame which is rewritten by the transfer source identifier (that is, the MAC address of the switching hub 50B) assigned to the requested frame and the stored contents of the rewritten adjacent relay device table as the adjacent relay device information, is unidirectionally stored in the router 60. Cast.
- the switching hubs 50C and 50D also perform a process of flooding a request frame in which the transfer source identifier is rewritten to the MAC address of the own device. However, since the switching hub is not connected to the downstream side of the switching hubs 50C and 50D, the request frame is not transferred thereafter.
- the contents stored in the adjacent relay device tables of the switching hubs 50A, 50B, 50C, and 50D in the process of performing transfer control of the request frame multicast from the router 60 are in the state shown in FIG. A notification frame in which the contents stored in each adjacent relay device table is written as adjacent relay device information is unicast from each switching hub 50 to the router 60.
- FIG. 7 the contents stored in the adjacent relay device table of each switching hub 50 are indicated by balloons (the same applies to FIG. 8).
- the MAC address of the hub 50C is rewritten, and the transfer source identifier of the received frame is rewritten to the MAC address of the switching hub 50B by the process of step SA120.
- the switching engine unit 520 of the switching hub 50B executes the processes of steps SA110, SA120, and SA150 in FIG.
- the switching engine unit 520 of the switching hub 50A When the switching engine unit 520 of the switching hub 50A receives the notification frame transmitted from the switching hub 50B (or the notification frame transferred by the switching hub 50B), the switching engine unit 520 similarly performs steps SA110, SA120, and SA150 of FIG. Execute the process.
- the contents stored in the adjacent relay device tables of the router 60 and the switching hubs 50A and 50B are as shown in FIG.
- the state shown in FIG. 8 is updated to the state shown in FIG.
- the stored contents of these adjacent relay device tables represent the connection relationship between the router 60 and the switching hubs 50 in the LAN 1A without any contradiction.
- the adjacent relay device information written in the notification frame received by the router 60 from each switching hub 50 is stored in the content stored in the adjacent relay device table shown in FIG. Rather, it corresponds to the stored contents of the adjacent relay device table shown in FIG. Only the connection relationship between the router 60 and the switching hub 50A is represented in a consistent manner between the stored contents of the adjacent relay apparatus table of the router 60 shown in FIG. 8 and the stored contents of the adjacent relay apparatus table of each switching hub 50 shown in FIG. ing. For this reason, when the notification frame for the request frame multicasted at time T0 is received, the routing engine unit 620 generates topology data representing only the connection relationship between the router 60 and the switching hub 50A.
- the routing engine unit 620 multicasts the request frame, and each switching hub 50 executes the same processing as described above.
- adjacent relay device information corresponding to the stored contents of the adjacent relay device table shown in FIG. 8 is written. Yes.
- the routing engine unit 620 determines that the own device and the own device Topology data representing the connection relations of all the switching hubs 50 under its control is generated.
- the operation manager of the LAN 1A can grasp the network topology of the LAN 1A by referring to the topology data generated in this way using the operation terminal 30.
- the network topology in the LAN 1A is specified based on the adjacent relay device information returned from each switching hub 50.
- the data size of the adjacent relay device information transmitted from each switching hub 50 is determined according to the number of relay devices connected to the switching hub 50, and the data according to the number of communication ports that the switching hub 50 has. No more than size.
- the data size of the payload portion of the notification frame in this embodiment does not increase without limit as the number increases. For this reason, even if the scale of the LAN 1A is increased, an excessive load is not applied to the LAN 1A for specifying the network topology.
- the operation manager of the LAN 1A grasps the network topology in the LAN 1A while avoiding an excessive load on the LAN 1A.
- the router 60 since the router 60 periodically multicasts the request frame every time the predetermined time T elapses, for example, the network topology is changed such that a switching hub of the present embodiment is newly connected to the switching hub 50D. Even so, topology data that accurately represents the network topology after the change without any contradiction is generated by multicasting the second request frame from the connection of the new switching hub.
- N + 1 A similar omission does not always occur in the second multicast, and not all of the specific network topologies that are periodically performed fail.
- an excessive load is not applied to the LAN 1A for specifying the network topology, so that frame loss is less likely to occur in comparison with the technique disclosed in Patent Document 1.
- FIG. 9 is a block diagram illustrating a configuration example of the LAN 1B according to the second embodiment of this invention.
- the LAN 1B is different from the LAN 1A in that it includes a switching hub 500 instead of the switching hub 50B.
- the switching hub 500 is a general conventional switching hub, and the switching hub 500 executes only frame transfer control based on the destination MAC address of the received frame (that is, processing in step SA150 in FIG. 3). Different from 50.
- the switching hub 500 executes only frame transfer control based on the destination MAC address of the received frame, the transfer source identifier can be rewritten in the request frame transferred from the switching hub 50A to the switching hub 500. Instead, it is transferred to the switching hubs 50C and 50D by the switching hub 500. Therefore, the MAC address of the switching hub 50A is written in the adjacent relay device table of each of the switching hubs 50C and 50D in association with the port identifier of the communication port to which the switching hub 500 is connected.
- each of the switching hubs 50C and 50D unicasts notification frames to the router 60
- these notification frames are transferred to the switching hub 50A by the switching hub 500 without rewriting the transfer source identifier.
- the switching engine 520 of the switching hub 50A receives the notification frame transmitted from each of the switching hubs 50C and 50D via the communication port to which the switching hub 500 is connected, and each time the notification frame is received, the switching relay 520 is adjacently relayed. Update the stored contents of the device table. That is, the contents of the update performed according to the previously received notification frame transmitted from each of the switching hubs 50C and 50D are overwritten by the contents of the update performed according to the later received frame. .
- the router 60 when the former reaches the switching hub 50A first among the notification frames returned by the switching hubs 50C and 50D in response to the request frame multicasted first from the router 60, the second time In the adjacent relay device information included in the notification frame returned by the switching hub 50A according to the request frame multicast, the port identifier of the communication port to which the switching hub 500 is connected is associated with the MAC address of the switching hub 50D. It has been. For this reason, the router 60 generates topology data representing the network topology shown in FIG. 10A when receiving a response frame for the request frame multicasted for the second time.
- the router 60 when the latter of the notification frames returned by each of the switching hubs 50C and 50D in response to the request frame multicasted the second time from the router 60 first reaches the switching hub 50A, the third time In the adjacent relay device information included in the notification frame returned by the switching hub 50A in response to the multicast of the request frame, the port identifier of the communication port to which the switching hub 500 is connected corresponds to the MAC address of the switching hub 50C. It is attached. For this reason, the router 60 generates topology data representing the network topology shown in FIG. 10B when a response frame to the request frame multicasted for the third time is received. As described above, in the LAN 1B shown in FIG.
- topology data representing different network topologies is generated according to the arrival order of the response frames transmitted from the switching hubs 50C and 50D.
- a switching hub 500 appears in the network topology shown in FIG. 10 (A) and FIG. 10 (B). None of them accurately represent the actual network topology in LAN 1B.
- the connection relationship between the conventional switching hub and another device that is, the router 60 or the switching hub 50
- another device that is, the router 60 or the switching hub 50
- it becomes impossible to grasp it is possible to roughly grasp the connection relationship between the router 60 and the switching hub 50.
- one downstream communication port of the switching hub 50A (actually, the communication port to which the switching hub 500 is connected).
- the topology data as if the switching hub 50C and the switching hub 50D are alternately connected to each other is generated. In this way, it is impossible to actually connect the other two switching hubs alternately to one communication port of the switching hub. For this reason, the operation manager of the LAN 1B can infer that there are one or more conventional switching hubs in places where connection relationships that cannot occur in reality appear.
- the network topology in the network cannot be grasped, but according to the present invention, among the plurality of switching hubs constituting the LAN 1B.
- the connection relationship between the router 60 and the switching hub 50 that is, a schematic network topology excluding a general conventional switching hub
- the data size of the payload portion of the notification frame does not endlessly increase as the number of switching hubs 50 included in the LAN 1B increases.
- the operation manager of the LAN 1B grasp the rough network topology of the LAN 1B without imposing an excessive load on the LAN 1B. is there.
- the router 60 periodically executes request frame multicasting at predetermined time intervals, while the switching hub 50 causes the router 60 to return a notification frame when the request frame is received. It was.
- the request frame may be multicast to the router 60 when a predetermined type of packet is received.
- the router 60 is caused to transmit a request frame when receiving an ARP packet for resolving the MAC address of the own device.
- the fact that a new ARP packet has been received means that a new communication terminal has been connected to the network under the router 60, and the network topology may have changed due to the connection of the new communication terminal. If the router 60 is made to transmit a request frame in response to reception of a new ARP packet, the change can be detected quickly without waiting for the elapse of a predetermined time.
- the request frame may be multicast when triggered by reception of a packet requesting IP address assignment from a subordinate communication terminal.
- the router 60 executes the process of periodically multicasting the request frame at a predetermined time interval and the process of multicasting the request frame when a specific packet is received, each time the latter multicast is performed. You may make it measure again progress of the said predetermined time from the time as a starting point. This is to prevent multicasting of request frames continuously at a time interval shorter than the predetermined time.
- the notification frame is transmitted to the switching hub 50 when the request frame is received.
- the notification frame may be transmitted to the switching hub 50 periodically at predetermined time intervals.
- the frame multicast from the router 60 to the subordinate LAN (
- a transfer source identifier may be assigned to a predetermined part of a frame (multicasted according to an existing communication protocol) for multicasting.
- each switching hub 50 stores the MAC address of the upstream adjacent relay device in the adjacent relay device table. According to such an aspect, it becomes possible to specify a network topology using the frame transmitted / received according to the existing communication protocol.
- the router 60 when the response to the request frame multicasted for the first time is received, the router 60 generates topology data representing only the connection relationship between the router 60 and the switching hub 50A immediately below it. However, topology data representing the entire network topology in the LAN 1A may be generated.
- each switching hub 50 is traced from the downstream side (the adjacent relay device on the upstream side of each switching hub 50). This is because if the adjacent relay device on the upstream side of each switching hub 50 is specified, the network topology can be specified. In this manner, in the case of specifying only the adjacent relay device on the upstream side of each switching hub 50, the process of assigning the MAC address of the own device as the transfer source identifier when the notification frame is transmitted may be omitted. good.
- a notification frame in which adjacent relay device information is written in the payload portion is returned to each switching hub 50.
- the request frame received for the (N + 1) th request frame When responding, a notification frame in which data indicating that there is no change in the adjacent relay device information instead of the adjacent relay device information is written in the payload portion may be returned.
- the type identifier of the frame includes the above A value corresponding to an existing communication protocol is set. Therefore, when the network topology is specified using a frame transmitted / received according to the existing communication protocol in the second layer, the frame is used for specifying the network topology even if the type identifier in the header part of the frame is referred to.
- the received frame is for specifying the network topology based on the presence or absence of the transfer source identifier.
- a transfer source identifier or transfer source identifier and adjacent relay device information
- Whether or not the frame is a request frame in the frame transfer control process also depends on whether or not the adjacent relay device information is included in the payload portion of the received frame. Of course, it may be determined.
- the frame transfer control processing and the notification frame transmission processing that clearly show the characteristics of the switching hub of the present invention are realized by software.
- each of the frame transfer control means for executing the frame transfer control process and the notification frame transmission means for executing the notification frame transmission process is configured by hardware such as an electronic circuit, and these means are incorporated in place of the switching engine unit 520.
- the switching hub 50 may be configured.
- the multicast processing and the connection relationship specifying processing may be realized by hardware such as an electronic circuit.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
ルータ配下のネットワークにおけるネットワークトポロジを当該ネットワークに過剰な負荷をかけることなく把握することができるようにする。ルータには、各スイッチングハブに対して隣接中継装置を示す情報の通知を要求する要求フレームに自装置のMACアドレスを転送元識別子として付与してマルチキャストさせる。各スイッチングハブには、転送元識別子を付与されたフレームを受信した場合には当該転送元識別子を記憶し当該転送元識別子を自装置のMACアドレスに書き換えて転送する処理を実行させるとともに、要求フレームを受信した場合には、自装置の隣接中継装置を示す情報を書き込んだフレームを返信する処理を実行させる。そして、上記ルータには、各スイッチングハブから寄せられた情報に基づいて配下のネットワークのネットワークトポロジを特定させる。
Description
この発明は、LAN(Local Area Network)の運用管理を支援する技術に関する。
近年、企業等においては、支店などの各拠点にLAN(以下、拠点内LAN)を敷設し、これら拠点内LANをルータによってインターネットなどのIP(Internet Protocol)網に接続して企業内情報システムを構築することが一般に行われている。このような拠点内LANは複数のスイッチングハブをカスケード接続して構成されることが多く、各ユーザ(例えば、企業の従業者)の使用する通信端末はそれらスイッチングハブの何れかに接続される。ここで、ルータとは、OSI(Open Systems Interconnection)参照モデルにおける第3層(ネットワーク層)の通信プロトコルにしたがってパケット(第3層におけるデータの送受信単位)の転送制御を行う中継装置である。また、スイッチングハブとは、OSI参照モデルにおける第2層(データリンク層)の通信プロトコルにしたがってフレーム(第2層におけるデータの送受信単位)の転送制御を行う中継装置であり、L2スイッチとも呼ばれる。
企業内情報システム(或いは、その構成要素の通信システムである各拠点内LAN)の運用管理や保守を行う際には、ルータとその配下の拠点内LANに含まれる各スイッチングハブとの接続関係(以下、ネットワークトポロジ)を把握しておくことが重要である。このため、LANにおけるネットワークトポロジの把握を可能にするための技術が種々提案されている。例えば、特許文献1に開示された技術においては、ネットワークトポロジの把握対象のLANに管理ノードと呼ばれるコンピュータ装置を接続し、当該管理ノードから所定のフレームをマルチキャスト/ブロードキャストさせる一方、各スイッチングハブには、当該フレームの受信を契機として当該フレームに対する応答フレームのペイロード部に自装置のMAC(Media Access Control)アドレスを書き込んで返信する処理を実行させる。ここで、MACアドレスとは、第2層において各通信装置を一意に識別するハードウェア識別子である。また、特許文献1に開示された技術では、各スイッチングハブに、他のスイッチングハブから送信された応答フレームの転送を行う際に自装置のMACアドレスをペイロード部に追記して転送する処理を実行させる。このようにして各スイッチングハブから返信されてくる応答フレームのペイロード部に書き込まれているMACアドレスの配列を辿ることで、上記LANにおけるネットワークトポロジが把握されるのである。
多数のスイッチングハブを含む大規模なLANでは、カスケード接続の段数が多く、各スイッチングハブの接続関係も複雑であることが多い。このため、大規模なLANほどそのネットワークトポロジを把握することの重要性は高まる。しかし、特許文献1に開示された技術には、カスケード接続の段数が多く大規模なLANに適用し難いといった問題点がある。その理由は以下の通りである。特許文献1に開示された技術では、スイッチングハブによって応答フレームの転送が行われるたびにペイロード部のデータサイズが増加する。このため、カスケード接続の段数が増えるほど、ペイロード部のデータサイズの大きい応答フレームがLAN内を伝送されることになる。つまり、スイッチングハブのカスケード接続の段数が増えるにつれて、ネットワークトポロジの把握のための通信によってLANにかかる負荷が大きくなるのである。ネットワークトポロジの把握のための通信によってLANに過剰な負荷がかかると、当該LANを介して行われる本来のデータ通信(例えば、LANに収容される通信端末間のデータ通信)に悪影響をおよぼす恐れがある。これが、大規模なLANにおけるネットワークトポロジの把握に、特許文献1に開示された技術を適用し難い理由である。また、特許文献1に開示された技術では、全てのスイッチングハブから送信された応答フレームを受信した時点でネットワークトポロジの把握が行われるため、所定のフレームのマルチキャストからネットワークトポロジの把握までに長い時間を要しレスポンスが悪いといった問題がある。さらに、特許文献1に開示された技術では、LANにかかる負荷の増大に連れて応答フレームの欠落が発生し易くなり、応答フレームの欠落が発生した場合にネットワークトポロジを把握できない、といった問題もある。
本発明は上記課題に鑑みて為されたものであり、ルータ配下のネットワークにおけるネットワークトポロジを当該ネットワークに過剰な負荷をかけることなく把握することを可能にする技術を提供することを目的とする。
上記課題を解決するために本発明のある態様は、ルータと、前記ルータの配下のネットワークに含まれる複数のスイッチングハブとを含む通信システムにおいて、前記複数のスイッチングハブのうちの少なくとも1つのスイッチングハブは、記憶手段と、受信したフレームに当該フレームの転送を行った装置を一意に識別するハードウェア識別子が転送元識別子として付与されていた場合には、当該転送元識別子を接続先識別子として前記記憶手段に書き込み、当該フレームに付与されている転送元識別子を前記少なくとも1つのスイッチングハブのハードウェア識別子に書き換え、当該転送元識別子の書換えを行ったフレームに対して、該フレームの宛先に応じた転送制御を行うフレーム転送制御手段と、前記記憶手段に記憶されている接続先識別子のリストをペイロード部に書き込んだ通知フレームを、前記ルータに向けて送信する通知フレーム送信手段と、を有し、前記ルータは、前記通知フレームを受信し、当該通知フレームのペイロード部から当該通知フレームの送信元のスイッチングハブの接続先識別子のリストを読出し、当該リストに基づいて当該ルータと当該スイッチングハブとの接続関係を表すトポロジデータを生成する接続関係特定手段を有することを特徴とする通信システムを提供する。
例えば、ルータ配下のネットワークに含まれるスイッチングハブの全てが上記フレーム転送制御手段と通知フレーム送信手段を有するものであれば、転送元識別子の付与されたフレームの転送を行うたびに各スイッチングハブの記憶手段に当該転送元識別子が蓄積される。つまり、各スイッチングハブに対してフレームの転送を行った隣接中継装置が特定されるのである。
加えて、本態様の通信システムにおいては、各スイッチングハブは転送元識別子の付与されたフレームの転送を行う際に自装置のハードウェア識別子を新たな転送元識別子として追記するのではなく、転送元識別子の書き換えを行うのであるから、スイッチングハブにてフレームの転送が行われるたびに当該フレームのペイロード部のデータサイズが増加することはない。このため、本発明の通信システムによれば、ルータ配下のネットワークが大規模化したとしても、当該ネットワークに過剰な負荷をかけることなく、そのネットワークトポロジを特定することが可能になる。なお、詳細については後述するが、ルータ配下のネットワークに含まれるスイッチングハブのなかに上記フレーム転送制御手段と通知フレーム送信手段を有しないもの(具体的には、従来のスイッチングハブ)が含まれている場合であっても、当該従来のスイッチングハブを省いた大まかなネットワークトポロジを特定することができる。
より好ましい態様においては、前記通知フレーム送信手段は、前記通知フレームを前記ルータに向けて送信する際に、前記少なくとも1つのスイッチングハブのハードウェア識別子を転送元識別子として付与して送信することを特徴とする。このような態様によれば、各スイッチングハブの下流側の隣接中継装置が特定される。
また別の好ましい態様においては、前記ルータはさらに、一部のフレームに当該ルータを一意に示すハードウェア識別子を前記転送元識別子として付与して前記ネットワークへマルチキャストするマルチキャスト手段を有することを特徴とする。このような態様によれば、上記ルータは、配下のネットワークに向けてマルチキャストするフレームのうちの一部のものに転送元識別子を付与してマルチキャストするのであるから、各スイッチングハブでは、当該フレームを受信して転送元識別子を記憶し、フラッディングする処理が行われる。これにより、各スイッチングハブについての上流側(ルータに近い側)の隣接中継装置が特定される。各スイッチングハブについて上流側の隣接中継装置が特定されるということは、上記ルータと各スイッチングハブの接続関係が特定されることに他ならない。
また別の好ましい態様においては、前記ルータはさらに、一部のフレームに当該ルータを一意に示すハードウェア識別子を前記転送元識別子として付与して前記ネットワークへマルチキャストするマルチキャスト手段を有することを特徴とする。このような態様によれば、上記ルータは、配下のネットワークに向けてマルチキャストするフレームのうちの一部のものに転送元識別子を付与してマルチキャストするのであるから、各スイッチングハブでは、当該フレームを受信して転送元識別子を記憶し、フラッディングする処理が行われる。これにより、各スイッチングハブについての上流側(ルータに近い側)の隣接中継装置が特定される。各スイッチングハブについて上流側の隣接中継装置が特定されるということは、上記ルータと各スイッチングハブの接続関係が特定されることに他ならない。
また別の好ましい態様においては、前記通知フレームの送信を要求する旨の要求フレームであり、前記通知フレーム送信手段は当該要求フレームを受信したことを契機として前記通知フレームを送信する。このような態様によれば、例えば第2層における既存の通信プロトコルとは別個に、ネットワークトポロジを特定するための新たな通信プロトコル(第2層の通信プロトコル)を定めることが可能になる。ここで、要求フレームをどのようなタイミングでルータに送信させるのかについては種々の態様が考えられる。例えば、ネットワークに含まれる通信端末から予め定められた種類のパケットを受信したことを契機として送信させる態様や、所定の時間間隔で周期的にマルチキャストさせる態様などである。詳細については後述するが、このような態様によれば、ネットワークトポロジに変化が生じたときに、当該変化後のネットワークトポロジを遅滞なく運用管理者に把握させることができる、と期待される。
また別の好ましい態様においては、前記フレーム転送制御手段は、転送元識別子が付与されているフレームを受信した通信ポートのポート識別子と当該転送元識別子とを対応付けて前記記憶手段に書き込むことを特徴とする。このような態様によれば、隣接中継装置に対するポートの接続関係(すなわち、各スイッチングハブが備える複数の通信ポートのうちの何れが上流側或いは下流側の隣接中継装置に接続されているのか)を含めてルータ配下のネットワークにおけるネットワークトポロジを特定することが可能になる。
上記課題を解決するために、本発明のある態様は、ルータの配下のネットワークに含まれるスイッチングハブであって、記憶手段と、受信したフレームに、前記スイッチングハブに対して当該フレームの転送を行った装置を一意に示すハードウェア識別子が転送元識別子として付与されていた場合には、当該転送元識別子を接続先識別子として前記記憶手段に書き込み、当該フレームに付与されている転送元識別子を前記スイッチングハブのハードウェア識別子に書き換え、当該転送元識別子の書換えを行ったフレームに対して、該フレームの宛先に応じた転送制御を行うフレーム転送制御手段と、前記記憶手段に記憶されている接続先識別子のリストをペイロード部に書き込んだ通知フレームを、前記ルータへ送信する通知フレーム送信手段と、を有することを特徴とするスイッチングハブを提供する。
このようなスイッチングハブと、少なくとも前述した接続関係特定手段を有するルータとを組み合わせることで、本発明の通信システムを構築することができる。また、本発明の別の態様としては、上記フレーム転送制御手段および通知フレーム送信手段に相当する工程を有する通信方法を提供する態様も考えられる。
また、上記課題を解決するために、本発明のある態様は、配下のネットワークと他のネットワークとを接続するルータであって、前記配下のネットワークに含まれる1または複数のスイッチングハブの各々から送信されてくる通知フレームであって、当該通知フレームの送信元のスイッチングハブに対してフレームの転送を行った他の装置のハードウェア識別子のリストを示す当該スイッチングハブの接続先識別子のリストがペイロード部に書き込まれた通知フレームを受信し、前記1または複数のスイッチングハブの各々について当該スイッチングハブの接続先識別子のリストから特定し、前記ルータと前記1または複数のスイッチングハブとの接続関係を表すトポロジデータを生成する接続関係特定手段と、を有することを特徴とするルータを提供する。
また、上記ルータが、一部のフレームに、当該ルータを一意に示すハードウェア識別子を当該フレームの転送元を示す転送元識別子として付与して配下のネットワークへマルチキャストするマルチキャスト手段を有していてもよい。
また、上記ルータが、一部のフレームに、当該ルータを一意に示すハードウェア識別子を当該フレームの転送元を示す転送元識別子として付与して配下のネットワークへマルチキャストするマルチキャスト手段を有していてもよい。
このようなルータと、前述したフレーム転送制御手段および通知フレーム送信手段を有するスイッチングハブとを組み合わせることで、本発明の通信システムを構築することができる。また、本発明の別の態様としては、上記マルチキャスト手段および接続関係特定手段に相当する工程を有する通信方法を提供する態様も考えられ、このような通信方法の提供態様の具体例は前述した通りである。
以下、図面を参照しつつ、この発明の実施形態について説明する。
<A:第1実施形態>
<A-1:構成>
図1は、本発明の第1実施形態の通信システムであるLAN1Aの構成例を示す図である。このLAN1Aは、例えば企業の支店に敷設される拠点内LANであり、ルータ60によってインターネットなどのIP網(図示省略)に接続される。このLAN1Aは、上記支店内における通信システムの役割を果たす一方、他の支店に敷設される拠点内LANとともに上記企業における企業内情報システムを構成する。図1に示すように、LAN1Aは、4台のスイッチングハブ(スイッチングハブ50A、50B、50C、および50D)と、2台の通信端末(通信端末40Aおよび40B)と、1台の操作端末30と、を含んでいる。図1に示すように、ルータ60にはスイッチングハブ50Aと操作端末30とが接続されており、スイッチングハブ50Aにはスイッチングハブ50Bが接続されている。そして、スイッチングハブ50Bにはスイッチングハブ50Cと50Dとが接続されており、スイッチングハブ50Cには通信端末40Aが、スイッチングハブ50Dには通信端末40Bが各々接続されている。
<A:第1実施形態>
<A-1:構成>
図1は、本発明の第1実施形態の通信システムであるLAN1Aの構成例を示す図である。このLAN1Aは、例えば企業の支店に敷設される拠点内LANであり、ルータ60によってインターネットなどのIP網(図示省略)に接続される。このLAN1Aは、上記支店内における通信システムの役割を果たす一方、他の支店に敷設される拠点内LANとともに上記企業における企業内情報システムを構成する。図1に示すように、LAN1Aは、4台のスイッチングハブ(スイッチングハブ50A、50B、50C、および50D)と、2台の通信端末(通信端末40Aおよび40B)と、1台の操作端末30と、を含んでいる。図1に示すように、ルータ60にはスイッチングハブ50Aと操作端末30とが接続されており、スイッチングハブ50Aにはスイッチングハブ50Bが接続されている。そして、スイッチングハブ50Bにはスイッチングハブ50Cと50Dとが接続されており、スイッチングハブ50Cには通信端末40Aが、スイッチングハブ50Dには通信端末40Bが各々接続されている。
操作端末30、通信端末40Aおよび40Bの各々は、例えばパーソナルコンピュータである。操作端末30はLAN1Aの運用管理のための各種操作をLAN1Aの運用管理者に行わせるためのものである。通信端末40Aおよび40Bは、LAN1Aに含まれる何れかのスイッチングハブに接続されることで、当該LAN1Aに収容される。LAN1Aに収容された通信端末40Aおよび40Bの各々は、他の通信装置(例えば、LAN1Aに収容されている他の通信端末や他の拠点内LANに収容されている通信端末、或いはIP網に接続されているWWWサーバなど)との間でIPにしたがったパケット通信を行う。以下、通信端末40Aおよび40Bの各々を区別する必要がない場合には、「通信端末40」と表記する。なお、図1ではLAN1Aに2台の通信端末40が収容される場合について例示されているが、3台以上の通信端末40がLAN1Aに収容されても良く、また、通信端末40が1台だけ収容されている態様であっても勿論良い。
図1のスイッチングハブ50A、50B、50Cおよび50Dの各々は同一の構成を有している。以下では、これら4台のスイッチングハブの各々を区別する必要がない場合には、「スイッチングハブ50」と表記する。スイッチングハブ50は、IPよりも下位のプロトコル階層である第2層(データリンク層)においてデータ通信を中継する中継装置である。ルータ60は、ネットワーク層においてデータ通信を中継する中継装置であり、LAN1Aのデフォルトゲートウェイの役割を果たす。すなわち、ルータ60は、IP網から受信したパケットの送信先IPアドレスが通信端末40Aまたは40Bの何れかのものであれば、そのパケットをLAN1Aへと転送し、その送信先IPアドレスが通信端末40Aまたは40Bの何れのものでもない場合にはルーティングテーブルの格納内容にしたがって他のルータへ転送する。このようにルータ60はLAN1Aのデフォルトゲートウェイとして機能するため、以下ではLAN1Aのことを「ルータ60の配下のネットワーク」と呼ぶ場合がある。
図1に示すLAN1Aにおいては、第2層の通信プロトコルにしたがったデータ通信(すなわち、フレームの送受信および転送制御)の実行過程において、LAN1Aに含まれる各中継装置(すなわち、ルータ60およびスイッチングハブ50)に、隣接中継装置を検出させる。ここで、隣接中継装置とは、当該中継装置に対してフレームの転送を行った他の中継装置のことであり、LAN1Aにおいては当該中継装置に直結されている他の中継装置のことである。例えば、LAN1Aにおいては、ルータ60についての隣接中継装置はスイッチングハブ50Aであり、スイッチングハブ50Aについての隣接中継装置はルータ60およびスイッチングハブ50Bである。また、スイッチングハブ50Bについての隣接中継装置はスイッチングハブ50A、50Cおよび50Dであり、スイッチングハブ50C(或いは50D)についての隣接中継装置はスイッチングハブ50Bである。
そして、図1に示すLAN1Aにおいては、隣接中継装置の検出結果をルータ60へ通知する処理を各スイッチングハブ50に実行させる一方、ルータ60には、各スイッチングハブ50からの通知結果に基づいて自装置と各スイッチングハブ50の接続関係(すなわち、LAN1Aのネットワークトポロジ)を表すトポロジデータを生成する処理を実行させる。LAN1Aの運用管理者は、操作端末30を用いて上記トポロジデータを参照することで、当該LAN1Aのネットワークトポロジを把握することができるのである。以下、本実施形態の特徴を顕著に示すスイッチングハブ50およびルータ60を中心に説明する。
<A-1-1:スイッチングハブ50の構成>
図2は、スイッチングハブ50の構成を示すブロック図である。図2に示すように、スイッチングハブ50は、通信インタフェース(以下、I/F)部510、スイッチングエンジン部520、および記憶部(記憶手段)530を有している。
図2は、スイッチングハブ50の構成を示すブロック図である。図2に示すように、スイッチングハブ50は、通信インタフェース(以下、I/F)部510、スイッチングエンジン部520、および記憶部(記憶手段)530を有している。
通信I/F部510は、複数の通信ポートを有している。これら複数の通信ポートの各々には、例えば100BASE-Tなどの通信ケーブルを介して他の通信装置(本実施形態では、ルータ60や他のスイッチングハブ50、或いは通信端末40の何れか)が接続される。これら複数の通信ポートの各々には、通信ポート毎に固有のポート識別子(例えば、ポート番号)が予め割り当てられており、当該ポート識別子を用いて各通信ポートを一意に識別することができる。通信I/F部510は、各通信ポートを介して受信したフレームをスイッチングエンジン部520に与える一方、スイッチングエンジン部520から与えられるフレームを同スイッチングエンジン部520によって指示された通信ポートから送出する。
記憶部530は、例えばRAM(Random Access Memory)などの揮発性メモリとEPROM(Erasable Programmable Read Only Memory)などの不揮発性メモリとを含んでいる(図2では、何れも図示略)。この不揮発性メモリには、本発明のスイッチングハブの特徴を顕著に示す処理をスイッチングエンジン部520に実行させるためのファームウェア(プログラム)が予め記憶されている。一方、揮発性メモリは、上記ファームウェアを実行する際のワークエリアとしてスイッチングエンジン部520によって利用される。また、上記揮発性メモリは、通信I/F部510によって受信されたフレームを一時的に記憶しておくためのバッファの役割を果たし、さらに、この揮発性メモリには、図2のMACアドレステーブルと同図2の隣接中継装置テーブルとが格納される。
図2のMACアドレステーブルは、従来のスイッチングハブが有するものと特段に変るところはない。このMACアドレステーブルには、通信I/F部510によって受信したフレームの送信元MACアドレスに対応付けて当該フレームを受信した通信ポートのポート識別子が格納される。MACアドレステーブルへのMACアドレスおよびポート識別子の書き込みは、フレーム転送制御に伴って行われる。例えば、ルータ60のMACアドレス解決のために通信端末40から送信されたフレーム(ペイロード部にARP(Address Resolution Protocol)パケットが書き込まれたフレーム)の転送過程では、当該フレームの送信元MACアドレス(すなわち、通信端末40のMACアドレス)と当該フレームの受信ポートのポート識別子とを対応付けてMACアドレステーブルに書き込む処理が行われる。一方、当該フレームに対する応答フレームの転送過程では、当該フレームの送信元MACアドレス(すなわち、ルータ60のMACアドレス)と当該フレームの受信ポートのポート識別子とを対応付けてMACアドレステーブルに書き込む処理が行われる。このMACアドレステーブルの格納内容は、送信先MACアドレスに基づくフレームの転送制御を行う際に利用される。
隣接中継装置テーブルには、通信I/F部510が有する複数の通信ポートの各々のポート識別子に対応付けて接続先識別子が格納される。ここで、接続先識別子とは、当該接続先識別子を対応付けられている通信ポートの接続先が隣接中継装置であるか否かを示すとともに、当該接続先が隣接中継装置である場合には当該隣接中継装置を一意に示す情報である。前述したように隣接中継装置とは、当該スイッチングハブ50に対してフレームの転送を行った他の中継装置(本実施形態では、ルータ60或いは他のスイッチングハブ50)のことである。本実施形態では、隣接中継装置に接続されている通信ポートのポート識別子には接続先識別子として当該隣接中継装置のMACアドレスが対応付けられ、隣接中継装置以外の他の通信装置(本実施形態では、通信端末40)が接続さている通信ポート、或いは他の通信装置に接続されていない通信ポートには接続先識別子としてNULL(0x00)が対応付けられる。
この隣接中継装置テーブルは、スイッチングハブ50の電源(図示略)が投入されたことを契機として、各接続先識別子をNULLとした状態で生成される。そして、予め定められた特定のフレームの中継を行うことに伴って、当該テーブルの格納内容の更新(すなわち、隣接中継装置が接続されている通信ポートのポート識別子に対応する接続先識別子を当該隣接中継装置のMACアドレスに書き換えること)が行われる。詳細については後述するが、本実施形態では、上記特定のフレームとして、ネットワークトポロジ特定用のフレーム(隣接中継装置テーブルの格納内容をルータ60に通知するために各スイッチングハブ50が送信する通知フレームと、当該通知フレームの送信を要求するためにルータ60が配下のLAN1A内にマルチキャストする要求フレームの2種類)が予め定められている。本実施形態の特徴の1つは、このような隣接中継装置テーブルを各スイッチングハブ50に記憶させ、上記ネットワークトポロジ特定用のフレームの転送制御に伴ってその格納内容を更新させるようにしたことにある。
スイッチングエンジン部520は、例えばCPU(Central Processing Unit)である。スイッチングエンジン部520は、記憶部530に記憶されているファームウェアを実行することで、スイッチングハブ50の制御中枢として機能する。このファームウェアにしたがって作動しているスイッチングエンジン部520は、何れかの通信ポートを介してフレームを受信するたびに、図3のフローチャートに示す処理を実行する。図3に示すように、上記ファームウェアにしたがってスイッチングエンジン部520が実行する処理としては、フレーム転送制御処理と通知フレーム送信処理の2つが挙げられる。以下、これら2つの処理の処理内容の詳細な説明に先立って、LAN1Aにおいて送受信されるフレームのデータ構造について説明しておく。
図4(A)は、LAN1Aにおいて送受信される一般的なフレームのデータ構造を示す図である。図4(A)に示すように、フレームは、ヘッダ部と、ペイロード部とを有している。ヘッダ部には、送信先MACアドレス、送信元MACアドレス、種別識別子が格納される。例えば、前述した要求フレームの場合は、送信先MACアドレスにはマルチキャストアドレスがセットされ、送信元MACアドレスにはルータ60のMACアドレスがセットされる。要求フレームはルータ60から配下のLAN1Aに向けてマルチキャストされるからである。また、通知フレームの場合は、送信先MACアドレスにはルータ60のMACアドレスがセットされ、送信元MACアドレスにはその送信元のスイッチングハブ50のMACアドレスがセットされる。前述したように、通知フレームは、スイッチングハブ50からルータ60へユニキャストされるからである。種別識別子とは、フレームのペイロード部に格納されているデータ(パケット)の種類を示す識別子である。前述した要求フレームおよび通知フレームの場合、ネットワークトポロジ特定用データがペイロード部に格納されたネットワークトポロジ特定用フレームであることを明示するための値(本実施形態では、0xe812)が種別識別子にセットされる。
図4(B)は、要求フレームのペイロード部のデータ構造を示す図であり、図4(C)は、通知フレームのペイロード部のデータ構造を示す図である。図4(B)および図4(C)に示すように、要求フレームのペイロード部のデータ構造と通知フレームのペイロード部のデータ構造は、後者が隣接中継装置情報を含む点のみが異なる。前述したように、通知フレームは、要求フレームに対する応答としてスイッチングハブ50がルータ60へ返信するものであり、当該通知フレームの返信時点における当該スイッチングハブ50の隣接中継装置テーブルの格納内容(すなわち、当該スイッチングハブ50の隣接中継装置のMACアドレスと当該隣接中継装置から転送されたフレームを受信した通信ポートのポート識別子のリスト)が上記隣接中継装置情報としてセットされる。
また、図4(B)と図4(C)とを対比すれば明らかなように、要求フレームのペイロード部と通知フレームのペイロード部には、送信先MACアドレス、送信元MACアドレス、フレーム種別識別子(要求フレームであるか、それとも、通知フレームであるかを示す識別子)、転送元識別子が共通して書き込まれる。図4(B)(或いは図4(C))の送信先MACアドレスおよび送信元MACアドレスについては、当該要求フレーム(或いは通知フレーム)のヘッダ部に書き込まれていたものと同一のものが各々書き込まれる。転送元識別子には、要求フレーム(或いは通知フレーム)の送信の際にはその送信元のMACアドレスがセットされ、他のスイッチングハブ50によって当該フレームの転送が行われるたびに当該転送を行ったスイッチングハブ50のMACアドレスに書き換えられる。
以上がLAN1Aにおいて送受信されるフレームのデータ構造である。
以上がLAN1Aにおいて送受信されるフレームのデータ構造である。
次いで、図3を参照しつつ、フレーム転送制御処理、および通知フレーム送信処理の処理内容を説明する。図3に示すように、フレーム転送制御処理は、その送信先MACアドレスに基づく転送制御(ステップSA150)を含んでいる。ここで、受信フレームの送信先MACアドレスに基づく転送制御とは、当該送信先MACアドレスがユニキャストアドレスではない場合、または当該送信先MACアドレスがMACアドレステーブルに格納されていないユニキャストアドレスである場合には、当該受信フレームのフラッディングを行う一方、当該送信先MACアドレスがMACアドレステーブルに格納されたユニキャストアドレスである場合には、当該MACアドレスに対応付けてMACアドレステーブルに格納されているポート識別子の示す通信ポートのみから当該受信フレームを送出することである。ここでユニキャストアドレスではないMACアドレスとしては、マルチキャストアドレスまたはブロードキャストアドレスが挙げられる。また、フラッディングとは、受信フレームを受信した通信ポート以外の全ての通信ポートから当該受信フレームを送出することである。この送信先MACアドレスに基づく転送制御については従来のスイッチングハブにおけるものと特段に変るところはない。換言すれば、従来のスイッチングハブでは、フレーム転送制御処理として上記送信先MACアドレスに基づく転送制御(ステップSA150の処理)のみが実行されるのである。
図3に示すように、本実施形態のフレーム転送制御処理は、ステップSA150の処理の他に、ステップSA100~SA120の処理を含んでいる。図3に示すように、本実施形態のフレーム転送制御処理では、スイッチングエンジン部520は、まず、受信フレームがネットワークトポロジ特定用フレーム(すなわち、要求フレーム或いは通知フレーム)であるか否かを当該受信フレームのヘッダ部の種別識別子を参照して判定する(ステップSA100)。具体的には、スイッチングエンジン部520は、受信フレームの種別識別子の値が0xe812である場合には、当該受信フレームはネットワークトポロジ特定用フレームであると判定する。そして、スイッチングエンジン部520は、ステップSA100の判定結果が“No”である場合には、前述したステップSA150の処理を実行して本フレーム転送制御処理を終了し、逆に、ステップSA100の判定結果が“Yes”である場合には、ステップSA110以降の処理を実行する。
ステップSA100の判定結果が“Yes”である場合に実行されるステップSA110では、スイッチングエンジン部520は、ネットワークトポロジ特定用フレームを受信した通信ポートのポート識別子に対応付けて隣接中継装置テーブルに格納されている接続先識別子を、当該フレームのペイロード部に書き込まれている転送元識別子によって書き換える。そして、スイッチングエンジン部520は、受信したネットワークトポロジ特定用フレームの転送元識別子を自装置のMACアドレスに書き換える(ステップSA120)。このように、ネットワークトポロジ特定用フレームを受信した場合に上記ステップSA110およびSA120の処理を実行する点に本実施形態のスイッチングハブ50の特徴の1つがある。加えて、スイッチングエンジン部520は、図3に示すように、受信フレームが要求フレームであるか否かを当該受信フレームのペイロード部のフレーム種別識別子を参照して判定し(ステップSA130)、その判定結果がYesである場合には、さらに、通知フレーム送信処理(ステップSA140)を実行する。この通知フレーム送信処理では、スイッチングエンジン部520は、自装置の隣接中継装置テーブルの格納内容に応じた隣接中継装置情報と転送元識別子(自装置のMACアドレス)とをペイロード部に書き込んだ通知フレームを生成し、ルータ60に送信(ユニキャスト)する。
以上がスイッチングハブ50の構成である。
以上がスイッチングハブ50の構成である。
<A-1-2:ルータ60の構成>
図5は、ルータ60の構成を示すブロック図である。図5に示すように、ルータ60は、通信I/F部610、ルーティングエンジン部620および記憶部630を有している。通信I/F部610は、スイッチングハブ50の通信I/F部510と同様に複数のポートを有しており、各ポートには固有のポート識別子が割り当てられている。これら複数のポートのうちの3つに、IP網(図1では図示略)、スイッチングハブ50Aおよび操作端末30が各々接続される。通信I/F部610は、通信I/F部510と同様、各通信ポートを介して受信したフレームをルーティングエンジン部620に与える一方、ルーティングエンジン部620から与えられるフレームを同ルーティングエンジン部620によって指示された通信ポートから送出する。
図5は、ルータ60の構成を示すブロック図である。図5に示すように、ルータ60は、通信I/F部610、ルーティングエンジン部620および記憶部630を有している。通信I/F部610は、スイッチングハブ50の通信I/F部510と同様に複数のポートを有しており、各ポートには固有のポート識別子が割り当てられている。これら複数のポートのうちの3つに、IP網(図1では図示略)、スイッチングハブ50Aおよび操作端末30が各々接続される。通信I/F部610は、通信I/F部510と同様、各通信ポートを介して受信したフレームをルーティングエンジン部620に与える一方、ルーティングエンジン部620から与えられるフレームを同ルーティングエンジン部620によって指示された通信ポートから送出する。
記憶部630も、スイッチングハブ50の記憶部530と同様に、RAMなどの揮発性メモリとEPROMなどの不揮発性メモリを含んでいる(図示略)。この不揮発性メモリにはファームウェアが格納されている。本実施形態では、このファームウェアにしたがってルーティングエンジン部620を作動させることによって本実施形態の特徴を顕著に示すルータ60の機能が実現される。一方、揮発性メモリは、上記ファームウェアを実行する際のワークエリアとしてルーティングエンジン部620によって利用されるとともに、受信したフレーム(或いは、パケット)を一時的に蓄積しておくためのバッファの役割を果たす。また、当該揮発性メモリには、図5に示すルーティングテーブル、当該ルータ60についてのMACアドレステーブルおよび隣接中継装置テーブルの各テーブルが格納される。
ルーティングエンジン部620は、スイッチングハブ50のスイッチングエンジン部520と同様、CPU(Central Processing Unit)である。ルーティングエンジン部620は、記憶部630に記憶されているファームウェアを実行し、ルータ60の制御中枢として機能する。ルーティングエンジン部620は上記ファームウェアにしたがって、パケット転送制御処理、マルチキャスト処理、および接続関係特定処理を実行する。パケット転送制御処理は、通信I/F部610を介して受信したパケットの送信先IPアドレスとルーティングテーブルの格納内容とに基づいて当該パケットの転送を行う処理である。このパケット転送制御処理については、従来のルータにおけるものと特段に変るところはないため詳細な説明を省略し、以下では、マルチキャスト処理および接続関係特定処理を中心に説明する。
マルチキャスト処理は、前述した要求フレームを生成し、転送元識別子として自装置のMACアドレスを付与して配下のネットワーク(すなわち、LAN1A)に向けてマルチキャストする処理である。詳細については後述するが、本実施形態では、このマルチキャスト処理はルータ60の電源(図示略)投入後、所定時間T(例えば、3秒)が経過する毎に周期的に実行される。
接続関係特定処理では、ルーティングエンジン部620は、まず、各スイッチングハブ50から送信されてくる通知フレームの受信を契機として、当該通知フレームを受信した通信ポートのポート識別子に対応付けて隣接中継装置テーブルに格納されている接続先識別子を当該フレームのペイロード部に書き込まれている転送元識別子に書き換える。そして、ルーティングエンジン部620は、自装置の隣接中継装置テーブルの格納内容と、各スイッチングハブ50から通知された隣接中継装置情報とから、LAN1Aにおけるルータ60および各スイッチングハブ50の接続関係を表すトポロジデータを生成する。
より詳細に説明すると、ルーティングエンジン部620は、自装置の隣接中継装置テーブルの格納内容と各スイッチングハブ50から通知された隣接中継装置情報とに基づいて、自装置および各スイッチングハブ50の各々について、上流側隣接中継装置を示す第1のポインタ(例えば、上流側隣接中継装置に接続されている通信ポートのポート識別子と当該上流側隣接中継装置のMACアドレスとを示すデータ)と、下流側中継装置を示す1または複数の第2のポインタ(例えば、下流側隣接中継装置に接続されている通信ポートのポート識別子と当該下流側隣接中継装置のMACアドレスとを示すデータ)とからなる双方向リスト構造の構造体データを生成し、これら構造体データの集合を上記トポロジデータとする。ここで、上流側隣接中継装置とは、自装置が属するネットワークと他のネットワークとを接続するルータに近い側の隣接中継装置であり、下流側隣接中継装置とは同ルータから遠い側の隣接中継装置である。例えば、図1に示すLAN1Aにおいて、スイッチングハブ50Aの上流側隣接中継装置はルータ60であり、下流側隣接中継装置はスイッチングハブ50Bである。同様に、スイッチングハブ50Bの上流側隣接中継装置はスイッチングハブ50Aであり、下流側隣接中継装置はスイッチングハブ50Cと50Dである。なお、図1のルータ60のように上流側隣接中継装置を有さない装置についての構造体データにおいては、上記第1のポインタにNULLをセットすれば良い。同様に、図1のスイッチングハブ50C(或いは50D)のように、下流側隣接中継装置を有さない装置についての構造体データにおいては上記第2のポインタにNULLをセットすれば良い。
上記のような双方向リスト構造の構造体データの集合をトポロジデータとして用いる場合、互いに隣接する2つの中継装置を上流側から第2のポインタを用いて辿っても、また下流側から第1のポインタを用いて辿っても矛盾が生じないことが必要となる。例えば、図1に示すルータ60およびスイッチングハブ50の各々について上記構造体データを生成する場合には、スイッチングハブ50Aに対応する構造体データの第2のポインタによってスイッチングハブ50Bが示されており、スイッチングハブ50Bに対応する構造体データの第1のポインタによってスイッチングハブ50Aが示されている必要がある。このため、例えば、スイッチングハブ50Bからは隣接中継装置としてスイッチングハブ50Aを通知されたにもかかわらず、スイッチングハブ50Aからは隣接中継装置としてスイッチングハブ50Bが通知されてこないといった矛盾が生じた場合には、ルーティングエンジン部620は矛盾が生じていない範囲でのみトポロジデータを生成する。矛盾を含むトポロジデータによって、LAN1Aにおけるネットワークトポロジが誤って把握されないようにするためである。
以上がルータ60の構成である。
以上がルータ60の構成である。
<A-2:動作>
以下、ルータ60と各スイッチングハブ50とが8つの通信ポートを有し、図6に示すように相互に接続されている場合を例にとって本実施形態の動作を説明する。図6では、通信ポートを黒塗りの丸印で示し、当該通信ポートのポート番号を#付の数字で表記した。図6に示すように、ルータ60のポート番号=1の通信ポートにはスイッチングハブ50Aが接続されており、スイッチングハブ50Aから見ればルータ60はスイッチングハブ50Aのポート番号=8の通信ポートに接続されている。
以下、ルータ60と各スイッチングハブ50とが8つの通信ポートを有し、図6に示すように相互に接続されている場合を例にとって本実施形態の動作を説明する。図6では、通信ポートを黒塗りの丸印で示し、当該通信ポートのポート番号を#付の数字で表記した。図6に示すように、ルータ60のポート番号=1の通信ポートにはスイッチングハブ50Aが接続されており、スイッチングハブ50Aから見ればルータ60はスイッチングハブ50Aのポート番号=8の通信ポートに接続されている。
図6に示すように、スイッチングハブ50Aのポート番号=7の通信ポートにはスイッチングハブ50Bが接続されており、スイッチングハブ50Bから見ればスイッチングハブ50Aはスイッチングハブ50Bのポート番号=5の通信ポートに接続されている。スイッチングハブ50Bのポート番号=4の通信ポートにはスイッチングハブ50Cが接続されており、同ポート番号=6の通信ポートにはスイッチングハブ50Dが接続されている。スイッチングハブ50Cから見れば、スイッチングハブ50Bはポート番号=3の通信ポートに接続されており、スイッチングハブ50Dから見れば、スイッチングハブ50Bはポート番号=2の通信ポートに接続されている。そして、通信端末40Aはスイッチングハブ50Cのポート番号=7の通信ポートに接続されており、通信端末40Bはスイッチングハブ50Dのポート番号=8の通信ポートに接続されている。また、以下に説明する動作の開始時点では、各スイッチングハブ50の隣接中継装置テーブルの接続先識別子はNULLクリアされている。
ルータ60のルーティングエンジン部620は、ルータ60の電源(図示略)投入後、所定時間Tが経過した時刻T0において要求フレームをマルチキャストする。このようにしてルータ60からマルチキャストされる要求フレームは、まず、スイッチングハブ50Aによって受信される。スイッチングハブ50Aのスイッチングエンジン部520は、ポート番号=8の通信ポートを介して上記要求フレームを受信し、図3のステップSA110、SA120、SA140およびSA150の処理を実行する。前述したように、要求フレームのヘッダ部の種別識別子の値は0xe812であるため、図3のステップSA100の判定結果は“Yes”になり、また、受信フレームが要求フレームであるため、同図3のステップSA130の判定結果も“Yes”になるからである。
ステップSA110の処理が実行されるため、ポート番号=8に対応づけてスイッチングハブ50Aの隣接中継装置テーブルに格納されている接続先識別子は、受信フレームに付与されている転送元識別子(すなわち、ルータ60のMACアドレス)によって書き換えられる。また、当該受信フレームの転送元識別子はステップSA120の処理によってスイッチングハブ50AのMACアドレスに書き換えられる。ステップSA140では、ステップSA110の処理による更新後の隣接中継装置テーブルの格納内容を隣接中継装置情報として書き込んだ通知フレームがスイッチングハブ50Aからルータ60にユニキャストされる。そして、ステップSA150では、ステップSA120の処理によって転送元識別子の書き換えが行われた要求フレームのフラッディングが行われる。前述したように、要求フレームの送信先MACアドレスはマルチキャストアドレスだからである。このようにしてフラッディングされた要求フレームは、スイッチングハブ50Bによって受信される。
スイッチングハブ50Bのスイッチングエンジン部520も同様に、上流側隣接中継装置によって転送された要求フレームを受信すると、図3のステップSA110、SA120、SA140およびSA150の処理を実行する。より詳細に説明すると、スイッチングハブ50Bのスイッチングエンジン部520は、自装置の隣接中継装置テーブルにおいてポート番号=5に対応する接続先識別子を、スイッチングハブ50Aから転送された要求フレームに付与されている転送元識別子(すなわち、スイッチングハブ50AのMACアドレス)によって書き換え、当該書き換え後の隣接中継装置テーブルの格納内容を隣接中継装置情報として書き込んだ通知フレームをルータ60にユニキャストする。加えて、スイッチングハブ50Bのスイッチングエンジン部520は、転送元識別子をスイッチングハブ50BのMACアドレスに書き換えた要求フレームのフラッディングを行う。このようにしてフラッディングされた要求フレームはスイッチングハブ50Cおよび50Dによって各々受信される。
スイッチングハブ50C(或いは50D)のスイッチングエンジン部520も同様に、上流側隣接中継装置によって転送された要求フレームを受信すると、図3のステップSA110、SA120、SA140およびSA150の処理を実行する。より詳細に説明すると、スイッチングハブ50Cは、スイッチングハブ50Bによって転送された要求フレームを受信すると、自装置の隣接中継装置テーブルにおいてポート番号=3に対応する接続先識別子を、スイッチングハブ50Bから転送された要求フレームに付与されている転送元識別子(すなわち、スイッチングハブ50BのMACアドレス)によって書き換え、当該書き換え後の隣接中継装置テーブルの格納内容を隣接中継装置情報として書き込んだ通知フレームをルータ60にユニキャストする。
同様に、スイッチングハブ50Dも、隣接中継装置テーブルにおいてポート番号=2に対応する接続先識別子を、スイッチングハブ50BのMACアドレスによって書き換え、当該書き換え後の隣接中継装置テーブルの格納内容を隣接中継装置情報として書き込んだ通知フレームをルータ60にユニキャストする。なお、スイッチングハブ50Cおよび50Dは、転送元識別子を自装置のMACアドレスに書き換えた要求フレームをフラッディングする処理も行う。しかし、スイッチングハブ50Cおよび50Dよりも下流側にスイッチングハブは接続されていないため、以降、要求フレームの転送が行われることはない。
以上説明したように、ルータ60からマルチキャストされた要求フレームの転送制御を行う過程でスイッチングハブ50A、50B、50C、および50Dの各々の隣接中継装置テーブルの格納内容は図7に示す状態となり、これら各隣接中継装置テーブルの格納内容を隣接中継装置情報として書き込んだ通知フレームが各スイッチングハブ50からルータ60にユニキャストされる。なお、図7では、各スイッチングハブ50の隣接中継装置テーブルの格納内容が吹き出しで示されている(図8についても同様)。
次いで、通知フレームの転送制御に伴って行われる隣接中継装置テーブルの更新について説明する。スイッチングハブ50Bのスイッチングエンジン部520は、スイッチングハブ50Cからルータ60へユニキャストされた通知フレームを、ポート番号=4の通信ポートを介して受信すると、図3のステップSA110、SA120、およびSA150の処理を実行する。通知フレームの種別識別子の値は0xe812であるため、図3のステップSA100の判定結果は“Yes”になり、受信フレームが通知フレームであるため、図3のステップSA130の判定結果は“No”になるからである。
ステップSA110の処理が実行されるため、ポート番号=4に対応付けてスイッチングハブ50Bの隣接中継装置テーブルに格納されている接続先識別子は、受信フレームに付与されている転送元識別子(すなわち、スイッチングハブ50CのMACアドレス)によって書き換えられ、当該受信フレームの転送元識別子はステップSA120の処理によってスイッチングハブ50BのMACアドレスに書き換えられる。そして、ステップSA150では、ステップSA120の処理によって転送元識別子の書き換えが行われた通知フレームがポート番号=5の通信ポートを介して送出される。スイッチングハブ50Dからルータ60へユニキャストされた通知フレームを受信した場合についても同様に、スイッチングハブ50Bのスイッチングエンジン部520は、図3のステップSA110、SA120、およびSA150の処理を実行する。その結果、スイッチングハブ50Bの隣接中継装置テーブルにおいてポート番号=6に対応する接続先識別子は受信フレームに付与されている転送元識別子(すなわち、スイッチングハブ50DのMACアドレス)によって書き換えられ、当該受信フレームは転送元識別子の書き換えを経た後に、ポート番号=5の通信ポートを介して送出される。
スイッチングハブ50Aのスイッチングエンジン部520は、スイッチングハブ50Bから送信された通知フレーム(或いは、スイッチングハブ50Bによって転送された通知フレーム)を受信すると、同様に、図3のステップSA110、SA120、およびSA150の処理を実行する。スイッチングハブ50Aは、隣接中継装置テーブルにおいてポート番号=7に対応する接続先識別子を、スイッチングハブ50Bから受信した通知フレームに付与されている転送元識別子(すなわち、スイッチングハブ50BのMACアドレス)によって書き換え、当該通知フレームの転送元識別子を自装置のMACアドレスに書き換えてルータ60に転送する。ルータ60は、スイッチングハブ50Aから転送された通知フレームをポート番号=1の通信ポートを介して受信すると、自装置の隣接中継装置テーブルにおいて当該ポート番号に対応する接続先識別子を当該フレームに付与されている転送元識別子で書き換える。
以上説明したように、他のスイッチングハブ50からルータ60へユニキャストされた通知フレームの転送制御を行う過程で、ルータ60、スイッチングハブ50Aおよび50Bの各々の隣接中継装置テーブルの格納内容は図7に示す状態から図8に示す状態へと更新される。図8に示す各隣接中継装置テーブルを参照すれば明らかように、これら隣接中継装置テーブルの格納内容はLAN1Aにおけるルータ60および各スイッチングハブ50の接続関係を矛盾なく表している。
ここで注目すべき点は、以上に説明した動作において、ルータ60が各スイッチングハブ50から受信する通知フレームに書き込まれている隣接中継装置情報は、図8に示す隣接中継装置テーブルの格納内容ではなく、図7に示す隣接中継装置テーブルの格納内容に対応しているという点である。図8に示すルータ60の隣接中継装置テーブルの格納内容と図7に示す各スイッチングハブ50の隣接中継装置テーブルの格納内容とでは、ルータ60とスイッチングハブ50Aとの接続関係のみが矛盾なく表されている。このため、時刻T0においてマルチキャストした要求フレームに対する通知フレームを受信した時点では、ルーティングエンジン部620は、ルータ60とスイッチングハブ50Aとの接続関係のみを表すトポロジデータを生成する。
そして、時刻T0からさらに所定時間Tが経過すると、ルーティングエンジン部620は、要求フレームをマルチキャストし、各スイッチングハブ50は上記と同様の処理を実行する。時刻T0+Tにおいてルータ60から送信された要求フレームに対する応答として各スイッチングハブ50が返信する通知フレームの各々には、図8に示す隣接中継装置テーブルの格納内容に対応する隣接中継装置情報が書き込まれている。このため、時刻T0+Tにおいてマルチキャストした要求フレーム(すなわち、時刻T0におけるマルチキャストを1回目とすれば、2回目のマルチキャスト)に対する通知フレームを受信した時点では、ルーティングエンジン部620は、自装置と自装置の配下の全てのスイッチングハブ50の接続関係を表すトポロジデータを生成する。LAN1Aの運用管理者は、このようにして生成されるトポロジデータを操作端末30を用いて参照することで、LAN1Aのネットワークトポロジを把握することができるのである。
以上説明したように、本実施形態によれば、各スイッチングハブ50から返信されてくる隣接中継装置情報に基づいてLAN1Aにおけるネットワークトポロジが特定される。ここで、各スイッチングハブ50から送信されてくる隣接中継装置情報のデータサイズは当該スイッチングハブ50に接続される中継装置の数に応じて定まり、当該スイッチングハブ50が有する通信ポート数に応じたデータサイズ以上になることはない。つまり、本実施形態における通知フレームのペイロード部のデータサイズは、LAN1Aに含まれるスイッチングハブ50の数が増加したとしても、その増加に伴って際限なく大きくなることはないのである。このため、LAN1Aが大規模化したとしても、ネットワークトポロジの特定のために過剰な負荷がLAN1Aにかかることはない。
このように、本実施形態によれば、LAN1Aに過剰な負荷がかかることを回避しつつ、当該LAN1AにおけるネットワークトポロジをLAN1Aの運用管理者に把握させることが可能になる。また、ルータ60は、所定時間Tが経過する毎に周期的に要求フレームのマルチキャストを行うため、例えばスイッチングハブ50Dに新たに本実施形態のスイッチングハブを接続するようなネットワークトポロジの変更が行われたとしても、新たなスイッチングハブの接続から2回目の要求フレームのマルチキャストによって当該変更後のネットワークトポロジを矛盾なく正確に表すトポロジデータが生成される。また、本実施形態では周期的に要求フレームのマルチキャストが行われるため、仮に、N回目のマルチキャストにより送信した要求フレームや当該要求フレームに対する応答フレームの伝送過程でフレームの欠落が発生したとしても、N+1回目のマルチキャストにおいても同様の欠落が発生するとは限らず、周期的に行われる複数回のネットワークトポロジの特定の全てが失敗するとは限らない。加えて、本実施形態によれば、ネットワークトポロジの特定のために過剰な負荷がLAN1Aにかかることはないため、特許文献1に開示された技術に比較してフレームの欠落がそもそも発生し難いといった特徴もある。このように、本実施形態によれば、LAN1Aに過剰な負荷がかかることを回避しつつ、かつ遅滞なくネットワークトポロジの変更を把握することができるのである。
<B:第2実施形態>
図9は、本発明の第2実施形態のLAN1Bの構成例を示すブロック図である。
図9と図1とを対比すれば明らかように、LAN1Bはスイッチングハブ50Bに換えてスイッチングハブ500を有する点がLAN1Aと異なる。このスイッチングハブ500は、一般的な従来のスイッチングハブであって、受信したフレームの送信先MACアドレスに基づくフレームの転送制御(すなわち、図3のステップSA150の処理)のみを実行する点がスイッチングハブ50と異なる。
図9は、本発明の第2実施形態のLAN1Bの構成例を示すブロック図である。
図9と図1とを対比すれば明らかように、LAN1Bはスイッチングハブ50Bに換えてスイッチングハブ500を有する点がLAN1Aと異なる。このスイッチングハブ500は、一般的な従来のスイッチングハブであって、受信したフレームの送信先MACアドレスに基づくフレームの転送制御(すなわち、図3のステップSA150の処理)のみを実行する点がスイッチングハブ50と異なる。
このように、スイッチングハブ500は、受信したフレームの送信先MACアドレスに基づくフレームの転送制御のみを実行するため、スイッチングハブ50Aからスイッチングハブ500に転送された要求フレームは転送元識別子を書き換えられることなく、スイッチングハブ500によってスイッチングハブ50Cおよび50Dに転送される。このため、スイッチングハブ50Cおよび50Dの各々の隣接中継装置テーブルには、スイッチングハブ500が接続されている通信ポートのポート識別子に対応付けて、スイッチングハブ50AのMACアドレスが書き込まれる。
スイッチングハブ50Cおよび50Dの各々が通知フレームをルータ60へユニキャストした場合も同様に、これら通知フレームは転送元識別子を書き換えられることなくスイッチングハブ500によってスイッチングハブ50Aに転送される。スイッチングハブ50Aのスイッチングエンジン520は、スイッチングハブ50Cおよび50Dの各々から送信された通知フレームを、スイッチングハブ500が接続されている通信ポートを介して受信し、これら通知フレームを受信する度に隣接中継装置テーブルの格納内容を更新する。つまり、スイッチングハブ50Cおよび50Dの各々から送信される通知フレームのうち先に受信したものに応じて行われた更新の内容は後から受信したものに応じて行われた更新の内容によって上書きされる。
このため、例えば、ルータ60から1回目にマルチキャストされた要求フレームに応じてスイッチングハブ50Cおよび50Dの各々が返信する通知フレームのうち前者が先にスイッチングハブ50Aに到達する場合には、2回目の要求フレームのマルチキャストに応じてスイッチングハブ50Aが返信する通知フレームに含まれている隣接中継装置情報では、スイッチングハブ500が接続されている通信ポートのポート識別子とスイッチングハブ50DのMACアドレスとが対応付けられている。このため、ルータ60は、上記2回目にマルチキャストした要求フレームに対する応答フレームを受信した時点では、図10(A)に示すネットワークトポロジを現すトポロジデータを生成する。
これに対して、ルータ60から2回目にマルチキャストされた要求フレームに応じてスイッチングハブ50Cおよび50Dの各々が返信する通知フレームのうちの後者が先にスイッチングハブ50Aに到達する場合には、3回目の要求フレームのマルチキャストに応じてスイッチングハブ50Aが返信する通知フレームに含まれている隣接中継装置情報では、スイッチングハブ500が接続されている通信ポートのポート識別子とスイッチングハブ50CのMACアドレスとが対応付けられている。このため、ルータ60は、上記3回目にマルチキャストした要求フレームに対する応答フレームを受信した時点では、図10(B)に示すネットワークトポロジを現すトポロジデータを生成する。このように、図9に示すLAN1Bでは、スイッチングハブ50Cと50Dから送信された各応答フレームの到達順に応じて異なるネットワークトポロジを表すトポロジデータが生成されるのである。図10(A)および図10(B)と、図8とを対比すれば明らかように、図10(A)および図10(B)の各々が示すネットワークトポロジには、スイッチングハブ500が現れておらず、何れもLAN1Bにおける現実のネットワークトポロジを正確には表していない。
このように、ルータ60の配下のネットワークに従来のスイッチングハブが含まれている場合には、当該従来のスイッチングハブと他の装置(すなわち、ルータ60或いはスイッチングハブ50)との接続関係を正確に把握することができなくなるのであるが、ルータ60とスイッチングハブ50との接続関係を大まかに把握することは可能である。また、本実施形態では、図10(A)および図10(B)に示すように、スイッチングハブ50Aの1つの下流側の通信ポート(現実には、スイッチングハブ500が接続されている通信ポート)にスイッチングハブ50Cとスイッチングハブ50Dとが交互に接続されるかのようなトポロジデータが生成される。このようにスイッチングハブの1つの通信ポートに他の2つのスイッチングハブを交互に接続するといったことは現実には起こり得ない。このため、LAN1Bの運用管理者は、現実には発生し得ない接続関係が現れている箇所には1乃至複数台の従来のスイッチングハブが存在していると類推することができるのである。
ルータ60の配下のネットワークに含まれるスイッチングハブの全てが従来のものであれば、当該ネットワークにおけるネットワークトポロジを把握できないことは言うまでもないが、LAN1Bを構成する複数のスイッチングハブのなかに本発明に係るスイッチングハブ50が少なくとも1台含まれていれば、ルータ60と当該スイッチングハブ50との接続関係(すなわち、一般的な従来のスイッチングハブを除いた概略的なネットワークトポロジ)をLAN1Bの運用管理者に把握させ、さらに、現実には発生し得ない不自然な接続関係が現れている場合には、該当箇所に1乃至複数台の従来のスイッチングハブが存在していると類推させることができるのである。なお、本実施形態においても、通知フレームのペイロード部のデータサイズが、LAN1Bに含まれるスイッチングハブ50の数の増加に伴って際限なく大きくなることはない。このため、本実施形態によれば、LAN1Bが大規模化したとしても、LAN1Bに過剰な負荷をかけることなく、当該LAN1Bの運用管理者に当該LAN1Bの大まかなネットワークトポロジを把握させることができるのである。
<C:変形>
以上、本発明の第1および第2実施形態について説明したが、これら各実施形態に以下に述べる変形を加えても勿論良い。
(1)上述した各実施形態では、要求フレームのマルチキャストを所定時間間隔で周期的にルータ60に実行させる一方、スイッチングハブ50には、要求フレームの受信を契機として通知フレームをルータ60に返信させた。しかし、周期的なマルチキャストに加えて(或いは、周期的なマルチキャストに換えて)、予め定められた所定種類のパケットの受信を契機としてルータ60に要求フレームをマルチキャストさせても良い。
以上、本発明の第1および第2実施形態について説明したが、これら各実施形態に以下に述べる変形を加えても勿論良い。
(1)上述した各実施形態では、要求フレームのマルチキャストを所定時間間隔で周期的にルータ60に実行させる一方、スイッチングハブ50には、要求フレームの受信を契機として通知フレームをルータ60に返信させた。しかし、周期的なマルチキャストに加えて(或いは、周期的なマルチキャストに換えて)、予め定められた所定種類のパケットの受信を契機としてルータ60に要求フレームをマルチキャストさせても良い。
例えば、自装置のMACアドレス解決のためのARPパケットを受信したことを契機としてルータ60に要求フレームを送信させるのである。新たにARPパケットを受信したということは、ルータ60の配下のネットワークに新たな通信端末が接続されたことを意味し、新たな通信端末の接続に伴ってネットワークトポロジが変化した可能性がある。新たなARPパケットの受信を契機としてルータ60に要求フレームを送信させるようにすれば、所定時間の経過を待つことなく当該変化をいち早く検出することができる。
なお、ルータ60がDHCPサーバの役割を兼ねている場合には、IPアドレスの割り当てを要求する旨のパケットを配下の通信端末から受信したことを契機として要求フレームをマルチキャストさせても良い。そして、所定時間間隔で周期的に要求フレームをマルチキャストする処理と、特定のパケットの受信を契機として要求フレームをマルチキャストする処理と、をルータ60に実行させる場合には、後者のマルチキャストを行う度にその時点を起算点として上記所定時間の経過を計測し直させるようにしても良い。上記所定時間よりも短い時間間隔で連続して要求フレームのマルチキャストが行われないようにするためである。
(2)上述した各実施形態では、要求フレームの受信を契機としてスイッチングハブ50に通知フレームを送信させた。しかし、所定時間間隔で周期的に通知フレームをスイッチングハブ50に送信させるようにしても良い。このように、通知フレームを周期的にスイッチングハブ50に送信させる態様においては、ルータ60に要求フレームのマルチキャストを周期的に行わせる必要はなく、ルータ60から配下のLANに向けてマルチキャストするフレーム(既存の通信プロトコルにしたがってマルチキャストするフレーム)のうちの予め定められた一部のものに転送元識別子を付与してマルチキャストさせるようにすれば良い。各スイッチングハブ50に上流側の隣接中継装置のMACアドレスを隣接中継装置テーブルに格納させるためである。このような態様によれば、既存の通信プロトコルにしたがって送受信されるフレームを利用してネットワークトポロジを特定することが可能になる。
(3)上述した第1実施形態では、1回目にマルチキャストした要求フレームに対する応答を受信した時点では、ルータ60とその直下のスイッチングハブ50Aとの接続関係のみを表すトポロジデータをルータ60に生成させたが、LAN1Aにおけるネットワークトポロジ全体を現すトポロジデータを生成させても良い。1回目にマルチキャストした要求フレームに対して各スイッチングハブ50から返信されてくる隣接中継装置情報を解析することで、各スイッチングハブ50を下流側から辿る(各スイッチングハブ50の上流側の隣接中継装置を特定する)ことが可能であり、各スイッチングハブ50の上流側の隣接中継装置が特定されれば、ネットワークトポロジを特定することができるからである。このように、各スイッチングハブ50の上流側の隣接中継装置のみを特定する態様の場合には、通知フレームの送信の際に自装置のMACアドレスを転送元識別子として付与する処理を省略しても良い。
(4)上述した各実施形態では、要求フレームを受信するたびに、隣接中継装置情報をペイロード部に書き込んだ通知フレームを各スイッチングハブ50に返信させた。しかし、N(自然数)回目の要求フレームの受信からN+1回目の要求フレームの受信までの間に隣接中継装置テーブルの格納内容に変化がない場合には、当該N+1回目に受信した要求フレームに対して応答する際に、隣接中継装置情報に換えて隣接中継装置情報に変化がないことを示すデータをペイロード部に書き込んだ通知フレームを返信させるようにしても良い。
(5)上述した各実施形態では、フレームのヘッダ部に書き込まれている種別識別子に基づいて、当該フレームがネットワークトポロジ特定用のものであるか否かを判定したが、転送元識別子が付与されているか否かによって当該判定を行っても良い。第2層における既存の通信プロトコルにしたがってルータ60からLAN1Aに向けてマルチキャストされるフレームのうちの予め定められた種類のものに転送元識別子を付与する態様においては、当該フレームの種別識別子には上記既存の通信プロトコルに応じた値がセットされている。したがって、第2層における既存の通信プロトコルにしたがって送受信されるフレームを利用してネットワークトポロジの特定を行う場合には、フレームのヘッダ部の種別識別子を参照しても当該フレームがネットワークトポロジ特定用のものであるか否かの判定を行うことはできないが、転送元識別子の有無によって当該判定を行うことはできるからである。同様に、上記第1および第2実施形態においても、受信フレームがネットワークトポロジ特定用のものであるか否かの判定を転送元識別子の有無に基づいて行うようにしても勿論良い。なお、既存の通信プロトコルにしたがって送受信されるフレームを利用してネットワークトポロジの特定を行う場合には、当該フレームのヘッダの空き領域に転送元識別子(或いは転送元識別子と隣接中継装置情報)を書き込むようにすれば良い。また、フレーム転送制御処理における要求フレームであるか否かの判定(すなわち、図3のステップSA130の判定)についても、受信フレームのペイロード部に隣接中継装置情報が含まれているか否かに応じて判定するようにしても勿論良い。
(6)上述した各実施形態では、本発明のスイッチングハブの特徴を顕著に示すフレーム転送制御処理および通知フレーム送信処理をソフトウェアにより実現した。しかし、フレーム転送制御処理を実行するフレーム転送制御手段および通知フレーム送信処理を実行する通知フレーム送信手段の各々を電子回路などのハードウェアで構成し、スイッチングエンジン部520に換えてこれら各手段を組み込んでスイッチングハブ50を構成しても勿論良い。ルータ60についても、同様に、マルチキャスト処理および接続関係特定処理の各処理を電子回路などのハードウェアによって実現しても勿論良い。
本出願は、2011年2月18日出願の日本特許出願(特願2011-033916)に基づくものであり、その内容はここに参照として取り込まれる。
1A,1B…LAN、30…操作端末、40A,40B…通信端末、50A,50B,50C,50D,500…スイッチングハブ、60…ルータ、510,610…通信I/F部、520…スイッチングエンジン部、530,630…記憶部、620…ルーティングエンジン部
Claims (12)
- ルータと、前記ルータの配下のネットワークに含まれる複数のスイッチングハブとを含む通信システムにおいて、
前記複数のスイッチングハブのうちの少なくとも1つのスイッチングハブは、
記憶手段と、
受信したフレームに当該フレームの転送を行った装置を一意に識別するハードウェア識別子が転送元識別子として付与されていた場合には、当該転送元識別子を接続先識別子として前記記憶手段に書き込み、当該フレームに付与されている転送元識別子を前記少なくとも1つのスイッチングハブのハードウェア識別子に書き換え、当該転送元識別子の書換えを行ったフレームに対して、該フレームの宛先に応じた転送制御を行うフレーム転送制御手段と、
前記記憶手段に記憶されている接続先識別子のリストをペイロード部に書き込んだ通知フレームを、前記ルータに向けて送信する通知フレーム送信手段と、を有し、
前記ルータは、
前記通知フレームを受信し、当該通知フレームのペイロード部から当該通知フレームの送信元のスイッチングハブの接続先識別子のリストを読出し、当該リストに基づいて当該ルータと当該スイッチングハブとの接続関係を表すトポロジデータを生成する接続関係特定手段を有する
ことを特徴とする通信システム。 - 前記通知フレーム送信手段は、前記通知フレームを前記ルータに向けて送信する際に、前記少なくとも1つのスイッチングハブのハードウェア識別子を転送元識別子として付与して送信することを特徴とする請求項1に記載の通信システム。
- 前記ルータはさらに、
一部のフレームに当該ルータを一意に示すハードウェア識別子を前記転送元識別子として付与して前記ネットワークへマルチキャストするマルチキャスト手段を有することを特徴とする請求項1または2に記載の通信システム。 - 前記一部のフレームとは、前記通知フレームの送信を要求する旨の要求フレームであり、前記通知フレーム送信手段は当該要求フレームを受信したことを契機として前記通知フレームを送信することを特徴とする請求項3に記載の通信システム。
- 前記マルチキャスト手段は、前記ネットワークに含まれる通信端末から予め定められた種類のパケットを受信したことを契機として、または周期的に前記要求フレームをマルチキャストすることを特徴とする請求項4に記載の通信システム。
- 前記フレーム転送制御手段は、転送元識別子が付与されているフレームを受信した通信ポートのポート識別子と当該転送元識別子とを対応付けて前記記憶手段に書き込むことを特徴とする請求項1または2に記載の通信システム。
- ルータの配下のネットワークに含まれるスイッチングハブであって、
記憶手段と、
受信したフレームに、前記スイッチングハブに対して当該フレームの転送を行った装置を一意に示すハードウェア識別子が転送元識別子として付与されていた場合には、当該転送元識別子を接続先識別子として前記記憶手段に書き込み、当該フレームに付与されている転送元識別子を前記スイッチングハブのハードウェア識別子に書き換え、当該転送元識別子の書換えを行ったフレームに対して、該フレームの宛先に応じた転送制御を行うフレーム転送制御手段と、
前記記憶手段に記憶されている接続先識別子のリストをペイロード部に書き込んだ通知フレームを、前記ルータへ送信する通知フレーム送信手段と、
を有することを特徴とするスイッチングハブ。 - 配下のネットワークと他のネットワークとを接続するルータであって、
前記配下のネットワークに含まれる1または複数のスイッチングハブの各々から送信されてくる通知フレームであって、当該通知フレームの送信元のスイッチングハブに対してフレームの転送を行った他の装置のハードウェア識別子のリストを示す当該スイッチングハブの接続先識別子のリストがペイロード部に書き込まれた通知フレームを受信し、前記1または複数のスイッチングハブの各々について当該スイッチングハブの接続先識別子のリストから特定し、前記ルータと前記1または複数のスイッチングハブとの接続関係を表すトポロジデータを生成する接続関係特定手段と、
を有することを特徴とするルータ。 - 一部のフレームに、当該ルータを一意に示すハードウェア識別子を当該フレームの転送元を示す転送元識別子として付与して配下のネットワークへマルチキャストするマルチキャスト手段を有することを特徴とする請求項8に記載のルータ。
- ルータの配下のネットワークに含まれるスイッチングハブにおける通信方法であって、
受信したフレームに、当該フレームを当該コンピュータへ転送した装置を一意に示すハードウェア識別子が転送元識別子として付与されていた場合には、当該転送元識別子を接続先識別子として前記スイッチングハブの記憶手段に書き込み、当該フレームに付与されている転送元識別子を前記スイッチングハブのハードウェア識別子に書き換え、当該転送元識別子の書換えを行ったフレームに対して、前記フレームの宛先に応じた転送制御を行うフレーム転送制御ステップと、
前記記憶手段に記憶している前記接続先識別子のリストをペイロード部に書き込んだ通知フレームを、ルータへ送信する通知フレーム送信ステップと、
を有することを特徴とする通信方法。 - 配下のネットワークと他のネットワークとを接続するルータにおける通信方法であって、
前記ネットワークに含まれる1または複数のスイッチングハブの各々から送信されてくる通知フレームであって、当該通知フレームの送信元のスイッチングハブに対してフレームの転送を行った他の装置のハードウェア識別子のリストを示す当該スイッチングハブの接続先識別子のリストがペイロード部に書き込まれた通知フレームを受信し、前記1または複数のスイッチングハブの各々について当該スイッチングハブの接続先識別子のリストから特定し、前記ルータと前記1または複数のスイッチングハブとの接続関係を表すトポロジデータを生成する接続関係特定ステップと、
を有することを特徴とする通信方法。 - ルータと、前記ルータの配下のネットワークに含まれる複数のスイッチングハブとを含む通信システムにおける通信方法において、
前記複数のスイッチングハブのうちの少なくとも1つによってフレームを受信し、受信したフレームに当該フレームの転送を行った装置を一意に識別するハードウェア識別子が転送元識別子として付与されていた場合には、当該転送元識別子を接続先識別子として前記少なくとも1つのスイッチングハブの記憶手段に書き込み、当該フレームに付与されている転送元識別子を前記少なくとも1つのスイッチングハブのハードウェア識別子に書き換えた上で、受信したフレームの宛先に応じて当該フレームの転送制御を行うフレーム転送制御ステップと、
前記記憶手段に記憶されている接続先識別子のリストをペイロード部に書き込んだ通知フレームを、前記ルータを宛先として送信する通知フレーム送信ステップと、
前記ルータによって前記通知フレームを受信し、当該通知フレームのペイロード部から当該通知フレームの送信元のスイッチングハブの接続先識別子のリストを読出し、当該リストに基づいて当該ルータと当該スイッチングハブとの接続関係を表すトポロジデータを生成する接続関係特定ステップと、
を有することを特徴とする通信方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201280009500.0A CN103384988B (zh) | 2011-02-18 | 2012-02-16 | 通信系统、交换式集线器、路由器及通信方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011033916A JP5750933B2 (ja) | 2011-02-18 | 2011-02-18 | 通信システム、スイッチングハブ、ルータおよびプログラム |
JP2011-033916 | 2011-02-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2012111745A1 true WO2012111745A1 (ja) | 2012-08-23 |
Family
ID=46672657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2012/053650 WO2012111745A1 (ja) | 2011-02-18 | 2012-02-16 | 通信システム、スイッチングハブ、ルータおよび通信方法 |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP5750933B2 (ja) |
CN (1) | CN103384988B (ja) |
WO (1) | WO2012111745A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016207576A1 (fr) * | 2015-06-25 | 2016-12-29 | Orange | Procédé de notification relatif à au moins une opération mise en œuvre par un dispositif formant nœud d'un réseau |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IN2013CH05044A (ja) | 2013-11-08 | 2015-05-29 | Huawei Technologies India Pvt Ltd | |
CN109104339A (zh) | 2017-06-21 | 2018-12-28 | 富士通株式会社 | 信息传输方法、装置及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001320393A (ja) * | 2000-05-02 | 2001-11-16 | Melco Inc | 集線装置およびこれを用いたネットワーク管理装置 |
WO2006059787A1 (ja) * | 2004-12-01 | 2006-06-08 | Nec Corporation | オーバーレイリンク計算装置およびその計算方法ならびにプログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007108083A1 (ja) * | 2006-03-20 | 2007-09-27 | Fujitsu Limited | 中継装置、通信システム、通信方法及びコンピュータプログラム |
-
2011
- 2011-02-18 JP JP2011033916A patent/JP5750933B2/ja active Active
-
2012
- 2012-02-16 WO PCT/JP2012/053650 patent/WO2012111745A1/ja active Application Filing
- 2012-02-16 CN CN201280009500.0A patent/CN103384988B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001320393A (ja) * | 2000-05-02 | 2001-11-16 | Melco Inc | 集線装置およびこれを用いたネットワーク管理装置 |
WO2006059787A1 (ja) * | 2004-12-01 | 2006-06-08 | Nec Corporation | オーバーレイリンク計算装置およびその計算方法ならびにプログラム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016207576A1 (fr) * | 2015-06-25 | 2016-12-29 | Orange | Procédé de notification relatif à au moins une opération mise en œuvre par un dispositif formant nœud d'un réseau |
FR3038183A1 (fr) * | 2015-06-25 | 2016-12-30 | Orange | Procede de notification relatif a au moins une operation mise en oeuvre par un dispositif formant noeud d'un reseau |
Also Published As
Publication number | Publication date |
---|---|
JP2012175293A (ja) | 2012-09-10 |
JP5750933B2 (ja) | 2015-07-22 |
CN103384988B (zh) | 2017-04-05 |
CN103384988A (zh) | 2013-11-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2644900C (en) | Connecting multi-hop mesh networks using mac bridge | |
EP3958509A1 (en) | Method, apparatus and system for communication between controllers in tsn | |
JP2013537769A (ja) | 通信システム、制御装置、ノード制御方法およびプログラム | |
CN105227466B (zh) | 通信处理方法和装置 | |
CN105162704A (zh) | Overlay网络中组播复制的方法及装置 | |
CN102273177A (zh) | 邻居发现协议调解 | |
CN104852840A (zh) | 一种控制虚拟机之间互访的方法及装置 | |
JP2010531602A (ja) | リアルタイム通信ネットワークにおける診断データの通信のための方法と装置 | |
JP6561656B2 (ja) | 端末およびマルチキャスト・アドレス配布サーバ | |
CN105516025A (zh) | 端到端的路径控制和数据传输方法、OpenFlow控制器和交换机 | |
JP5640853B2 (ja) | 通信システム、ルータ、スイッチングハブ、およびプログラム | |
WO2012111745A1 (ja) | 通信システム、スイッチングハブ、ルータおよび通信方法 | |
JP2017034365A (ja) | ネットワークシステムおよびパケット転送方法 | |
JP4623317B2 (ja) | 通信装置、ルーティング方法及びプログラム | |
JP2011217342A (ja) | 通信システム、スイッチングハブ、およびルータ | |
CN114697300B (zh) | 一种高时效通信系统的数据组播实现方法 | |
JPWO2006098043A1 (ja) | ネットワークシステム及びネットワーク接続機器 | |
JP5691612B2 (ja) | 通信システム、ルータ、スイッチングハブ、およびプログラム | |
JP2008219400A (ja) | 中継装置およびパケット中継方法 | |
JP5169988B2 (ja) | ネットワーク装置 | |
JP4642649B2 (ja) | 中継装置 | |
JP5640862B2 (ja) | 通信システム、通信装置、およびプログラム | |
WO2015146215A1 (ja) | ネットワークアドレス変換装置、ネットワークアドレス変換システム、ネットワークアドレス変換方法、及びコンピュータ読み取り可能な記録媒体 | |
JP6134571B2 (ja) | 疎通確認装置、ネットワークシステム、疎通確認方法、および疎通確認プログラム | |
JP5962786B2 (ja) | 通信システム、スイッチングハブ、およびルータ |
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: 12747103 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 12747103 Country of ref document: EP Kind code of ref document: A1 |