The present application claims priority from Japanese Patent Application No. 2015-191550 filed on Sep. 29, 2015, the content of which is hereby incorporated by reference into this application.
The present invention relates to a relay device and a relay system, for example, a relay device and a relay system to which a ring network is applied.
For example, Japanese Patent Application Laid-Open Publication No. 2008-136013 (Patent Document 1) describes a method in which a monitoring device is provided in a ring network and the presence or absence of fault in the ring network is monitored by the monitoring device. Specifically, the monitoring device controls open/close of a ring port depending on whether a health check frame transmitted from one ring port can be received at the other, and further transmits a flush request frame of requesting to erase learning information from a ring port at the time of the open/close switching. In addition, Patent Document 1 further describes a monitoring method in the case where two ring networks are connected to two shared devices connected via a shared link.
For example, a ring network using various ring protocols has been widely known as one of network topologies. As described in Patent Document 1 and others, in a ring network, open/close of a predetermined ring port is generally controlled depending on the presence or absence of fault in the ring network, and an FDB (Forwarding DataBase) is flushed (erased) at the time of the open/close switching. The FDB retains a plurality of entries including a correspondence relation between MAC address and port. At the time of FDB flushing, for example, by designating a predetermined ring port as a port, the entries including the ring port are erased.
Here, for example, when two ring networks are connected to a relay device, the two ring networks are generally connected to different ring ports in the relay device, respectively. This is because when two ring networks are connected to one ring port, if a fault occurs in one ring network and FDB flushing is performed with designating the one ring port, the entries in an FDB belonging to the other ring network are also erased. However, when a ring port is provided for each ring network in this way, the number of ports increases and the number of communication lines (for example, the number of optical fibers) increases, which leads to the increase in cost.
The present invention has been made in view of the problems mentioned above, and an object thereof is to provide a relay device and a relay system capable of achieving the cost reduction.
The above and other objects and novel characteristics of the present invention will be apparent from the description of the present specification and the accompanying drawings.
The following is a brief description of an outline of the typical invention disclosed in the present application.
A relay device according to one embodiment includes: a physical port; a logical port table; a table processing unit; an FDB; and an FDB processing unit. The logical port table retains a combination of the physical port and a VLAN identifier in association with a logical port. The FDB retains a correspondence relation between a MAC address and the logical port. When a frame is received at the physical port, the table processing unit acquires the logical port from the physical port which has received the frame and the VLAN identifier contained in the frame based on the logical port table. The FDB processing unit learns a source MAC address contained in the frame in association with the logical port acquired by the table processing unit to the FDB.
The advantages obtained by representative embodiments in the present invention disclosed in the present application will be briefly described as follows. That is, the cost reduction can be achieved in the relay device and the relay system.
In the embodiments described below, the invention will be described in a plurality of sections or embodiments when required as a matter of convenience. However, these sections or embodiments are not irrelevant to each other unless otherwise stated, and the one relates to the entire or a part of the other as a modification example, details, or a supplementary explanation thereof. Also, in the embodiments described below, when referring to the number of elements (including number of pieces, values, amount, range, and the like), the number of the elements is not limited to a specific number unless otherwise stated or except the case where the number is apparently limited to a specific number in principle, and the number larger or smaller than the specified number is also applicable.
Further, in the embodiments described below, it goes without saying that the components (including element steps) are not always indispensable unless otherwise stated or except the case where the components are apparently indispensable in principle. Similarly, in the embodiments described below, when the shape of the components, positional relation thereof, and the like are mentioned, the substantially approximate and similar shapes and the like are included therein unless otherwise stated or except the case where it is conceivable that they are apparently excluded in principle. The same goes for the numerical value and the range described above.
Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings. Note that components having the same function are denoted by the same reference characters throughout the drawings for describing the embodiments, and the repetitive description thereof will be omitted.
First, a relay device SW′ according to the comparative example illustrated in
In this case, as illustrated in
A relay device SW illustrated in
In the example of
The logical port LP1 is a port equivalent to the physical port PP1 of
When a frame is received at the physical port PPh1, the table processing unit 16 acquires the logical port based on the logical port table 18. The FDB processing unit 17 learns a source MAC address contained in the frame in association with the logical port acquired by the table processing unit 16 to the FDB. Specifically, when a frame containing the source MAC address “MA1” and the VLAN identifier “VID1” from the terminal TM1 is received at the physical port PPh1, the table processing unit 16 acquires the port identifier {LP1} from the physical port PPh1 and the VLAN identifier “VID1” based on the logical port table 18. The FDB processing unit 17 learns the source MAC address “MA1” in association with the port identifier {LP1} to the FDB as illustrated in
Similarly, when a frame from the terminal TM2 is received at the physical port PPh1, the table processing unit 16 acquires the port identifier {LP1}. The FDB processing unit 17 learns the source MAC address “MA2” of the frame in association with the port identifier {LP1} to the FDB. Further, when a frame from the terminal TM3 is received at the physical port PPh1, the table processing unit 16 acquires the port identifier {LP2}. The FDB processing unit 17 learns the source MAC address “MA3” of the frame in association with the port identifier {LP2} to the FDB.
Further, when a frame containing the destination MAC address “MA1” is received at, for example, a physical port (not illustrated), the FDB processing unit 17 retrieves the FDB with using “MA1” as a retrieval key, and acquires the port identifier {LP1} to be a destination (referred to as a destination port identifier). When the destination port identifier is the port identifier of the logical port, the table processing unit 16 replaces the destination port identifier {LP1} with the port identifier of the physical port (here, {PPh1}) based on the logical port table 18. The relay processing unit 15 relays the received frame to the physical port PPh1 corresponding to the destination port identifier {PPh1}.
Here, for example, the FDB processing unit 17 learns the MAC address “MA1” in association with the port identifier {LP1} to the FDB in response to the frame from the terminal TM1, but may additionally learn the VLAN identifier “VID1”. In this case, in the destination retrieval described above, the FDB processing unit 17 retrieves the FDB with using “MA1” and “VID1” as retrieval keys.
As described above, the cost reduction or the like can be mainly achieved by use of the relay device according to the first embodiment. Namely, by using the configuration of
When a frame containing the VLAN identifier “VID1” or “VID2” from the relay device SW2 is received, the network NW1 relays the frame to the relay device SW3, and when a frame containing “VID3” is received, the network NW1 relays the frame to the relay device SW5. Also, when a frame containing “VID1” or “VID2” from the relay device SW3 is received or when a frame containing “VID3” from the relay device SW5 is received, the network NW1 relays the frame to the relay device SW2.
When a frame containing the VLAN identifier “VID1” or “VID2” from the relay device SW1 is received, the network NW2 relays the frame to the relay device SW4, and when a frame containing “VID3” is received, the network NW2 relays the frame to the relay device SW6. Also, when a frame containing “VID1” or “VID2” from the relay device SW4 is received or when a frame containing “VID3” from the relay device SW6 is received, the network NW2 relays the frame to the relay device SW1.
Each of the relay devices SW1 and SW2 includes three physical ports PPh1 to PPh3. The physical ports PPh2 of the relay devices SW1 and SW2 are connected via the communication line 10. The physical port PPh1 of the relay device SW1 is connected to the network NW2 via the communication line 10, and the physical port PPh1 of the relay device SW2 is connected to the network NW1 via the communication line 10. Also, the relay device SW3 and the relay device SW4 are connected via a communication line and the relay device SW5 and the relay device SW6 are connected via a communication line outside the networks NW1 and NW2.
With this configuration, as illustrated in
The physical ports PPh1 of the relay devices SW1 and SW2 are both ring ports shared by the ring network A (20a) and the ring network B (20b), and a plurality of (here, two) logical ports LP1_1 and LP1_2 described in the first embodiment are set. Similarly, the physical ports PPh2 of the relay devices SW1 and SW2 are both ring ports shared by the ring network A (20a) and the ring network B (20b), and a plurality of (here, two) logical ports LP2_1 and LP2_2 are set.
In the example of
Here, in the LP table 18 of
Similarly, in the LP table 18, the port identifier {LP2_1} corresponding to the port identifier {PPh2} and “VID1” and “VID2” is set, and the port identifier {LP2_2} corresponding to the port identifier {PPh2} and “VID3” is set. In this manner, the logical port LP2_1 becomes a port equivalent to a physical ring port connected to the ring network A (20a), and the logical port LP2_2 becomes a port equivalent to another physical ring port connected to the ring network B (20b).
With reference to
For example, the ring control unit 33 in the relay device SW2 transmits a fault monitoring control frame from the logical port LP1_1 at regular intervals, and monitors the presence or absence of fault in the ring network A (20a) depending on whether the frame can be received at the logical port LP1_1 in the switching device SW1. When the control frame can be received within a predetermined period of time (in the absence of fault), the ring control unit 33 controls the logical port LP1_1 to the transmission/reception prohibited state BK, and when the frame cannot be received (in the presence of fault), the ring control unit 33 controls the logical port LP1_1 to the transmission/reception permitted state FW. Similarly, the ring control unit 33 in the relay device SW2 transmits a control frame from the logical port LP1_2 at regular intervals, and monitors the presence or absence of fault in the ring network B (20b) depending on whether the frame can be received at the logical port LP1_2 in the switching device SW1.
When no fault is present in the relay system illustrated in
Specifically, each of the relay devices SW′ 1 and SW′ 2 includes physical ports PP1a and PP1b corresponding to the logical ports LP1_1 and LP1_2 of
The switching device SW′ 2 controls both of the physical ports PP1a and PP1b to the transmission/reception prohibited state BK. In this case, the FDB in the relay device SW′1 retains an entry containing “MA1”, “VID1” and the port identifier {PP1a}, an entry containing “MA2”, “VID2” and the port identifier {PP1a}, and an entry containing “MA3”, “VID3” and the port identifier {PP1b} as illustrated in
Also,
When the fault in step S101 does not occur, the FDB in the relay device SW′1 retains the information illustrated in
Meanwhile, when the fault in step S101 occurs, the relay device SW′1 needs to flush the FDB in accordance with the change in the communication path in step S102. At this time, if the flushing is performed with designating the port identifier {PP1}, the relay device SW′1 flushes also the entry (No. 3) with the MAC address “MA3” belonging to the ring network B (20b) in
As a solution to this, a method in which the relay device SW′ 1 performs the flushing with designating the port identifier {PP1} and the VLAN identifiers “VID1” and “VID2” is conceivable. However, when the conditions to be designated increase in this way, a time required for flushing accordingly increases, and a desired required flushing time cannot be satisfied. Although only three VLAN identifiers are used here for convenience of description, more VLAN identifiers are actually used, and thus there is a fear that an enormous time is required for the flushing.
Meanwhile, when the configuration example of
<<Operation in Occurrence of Fault in Relay System>>
When the control frame CF is received at the logical port LP2_1, the ring control unit 33 in the relay device SW1 issues an FDB flush request with designating the logical port {LP1_1} (and {LP2_1}). In other words, when the occurrence of a fault in the ring network A (20a) is detected via the control frame CF, the ring control unit 33 issues an FDB flush request with designating the logical port {LP1_1} (and {LP2_1}) corresponding to the ring network.
At this time, though not particularly limited, the ring control unit 33 in the relay device SW1 retains a correspondence table indicating a correspondence relation between a ring ID identifying the ring network A or B (20a or 20b) and a logical port belonging to each ring ID. Also, the fault notification control frame CF stores a ring ID therein. The ring control unit 33 in the relay device SW1 specifies the logical ports (here, {LP1_1} and {LP2_1}) for which the FDB flush request is to be issued with reference to the correspondence table by use of the ring ID in the received control frame CF. The FDB processing unit 17 of
As described above, by use of the relay system according to the second embodiment, the reduction in FDB flush time can be achieved in addition to the reduction in cost described in the first embodiment. Namely, the problem of the increase in cost in
Each of the high-bandwidth line cards LCh1 to LCh3 includes the physical ports PPh1 to PPh3 and a fabric terminal FP. The physical ports PPh1 to PPh3 are the ports for which a logical port described in the first embodiment and others is to be set. The physical ports PPh1 to PPh3 are connected to, for example, the communication line 10 of 100 Gbps or the like. Meanwhile, the low-bandwidth line card LCl1 includes n physical ports PPl1 to PPln and a fabric terminal FP. The physical ports PPl1 to PPln are the ports for which a logical port is not to be set. Each of the physical ports PPl1 to PPln is connected to, for example, a communication line 26 of 10 Gbps or the like.
The fabric terminal FP is connected to the fabric path unit 25 and is then connected to the fabric terminal FP of another line card via the fabric path unit 25. The fabric path unit 25 may be configured of, for example, a fabric card having a switching function or may be configured of a wiring board (backplane) having a full-mesh wiring. In the former case, the fabric terminal FP is connected to the fabric card, and is then connected to the fabric terminal FP of another line card via the switching of the fabric card. In the latter case, the fabric terminal FP is configured of a plurality of terminals, and the plurality of terminals are connected to the corresponding terminals of another line card via the full-mesh wiring provided on the backplane.
The relay processing unit 15 includes the table processing unit 16, a VID conversion unit 32 and the FDB processing unit 17. The table processing unit 16 includes an ingress LP table 18a and an egress LP table 18b for the LP table 18. When a frame is received at the physical port PPh of its own line card, the table processing unit 16 acquires the port identifier of the logical port from the reception port identifier {PPh} and the VLAN identifier based on the ingress LP table 18a. Meanwhile, when a frame is transmitted from the physical port, the table processing unit 16 acquires the port identifier and the VLAN identifier of the physical port from the destination port identifier (to be the port identifier of the logical port) based on the egress LP table 18b. The table processing unit 16 adds the identifiers acquired in this manner to the frame.
Each of the ingress/egress LP tables 18a and 18b is set by the user in advance, and retains a physical port and a VLAN identifier VID in association with a logical port as illustrated in
The VID conversion unit 32 includes an ingress VID conversion table 34a and an egress VID conversion table 34b. Each of the ingress/egress VID conversion tables 34a and 34b is set by the user in advance, and associates a service VLAN identifier SVID, a backbone VLAN identifier BVID and a service instance identifier ISID with an internal VLAN identifier IVID and retains the correspondence relations as illustrated in
When the physical port PPh of its own line card is connected to the PB network and a frame is received at the physical port, the VID conversion unit 32 converts the service VLAN identifier SVID into the internal VLAN identifier IVID based on the ingress VID conversion table 34a. Meanwhile, when a frame is transmitted from the physical port, the VID conversion unit 32 converts the internal VLAN identifier IVID into the service VLAN identifier SVID based on the egress VID conversion table 34b.
When the physical port PPh of its own line card is connected to the PBB network and a frame is received at the physical port, the VID conversion unit 32 converts the backbone VLAN identifier BVID and the service instance identifier ISID into the internal VLAN identifier IVID based on the ingress VID conversion table 34a. Meanwhile, when a frame is transmitted from the physical port, the VID conversion unit 32 converts the internal VLAN identifier IVID into the backbone VLAN identifier BVID and the service instance identifier ISID based on the egress VID conversion table 34b. The VID conversion unit 32 adds the identifiers converted in this manner to the frame.
When a frame is received at the physical port PPh of its own line card, the FDB processing unit 17 performs the learning of the FDB and the retrieval of the destination of the frame based on the FDB. Specifically, at the time of the learning of the FDB, the FDB processing unit 17 learns a source MAC address contained in the received frame and the internal VLAN identifier IVID converted by the VID conversion unit 32 in association with the port identifier of the logical port acquired by the table processing unit 16 to the FDB as illustrated in
Further, at the time of the retrieval of the destination based on the FDB, the FDB processing unit 17 retrieves the FDB with using the destination MAC address contained in the received frame and the internal VLAN identifier IVID converted by the VID conversion unit as retrieval keys. The FDB processing unit 17 adds the destination port identifier acquired based on the retrieval result to the received frame and then transmits it to the internal interface unit 31. The internal interface unit 31 transmits the frame from the relay processing unit 15 to the fabric terminal FP.
The processor unit CPU includes the ring control unit 33 realized by executing the program stored in a RAM. The ring control unit 33 performs various processes such as transmission/reception of a control frame, issuance of an FDB flush request and control of a block port based on various protocols, thereby controlling the ring network. Note that the external interface unit 30 and the internal interface unit 31 are mounted in, for example, ASIC (Application Specific Integrated Circuit) or the like. In addition, the relay processing unit 15 is mounted in, for example, FPGA (Field Programmable Gate Array) including an integrated RAM or the like, and the FDB is mounted in, for example, CAM (Content Addressable Memory) or the like. A specific mounting form of each unit is not limited thereto, and each unit may be mounted by hardware, software, or the combination thereof as needed.
<<Frame Relay Operation in Relay Device>>
In
The physical port PPh3 of the relay device SW1 is a port connected to the PB network, and the physical port PPh1 is a port connected to the PBB network. A logical port LP3_1 is set for the physical port PPh3 as one of the plurality of logical ports, and the logical port LP3_1 is associated with the physical port PPh3 and the service VLAN identifier “SVID1” in the ingress LP table 18a. In addition, the logical port LP1_1 of the physical port PPh1 is associated with the backbone VLAN identifier “BVID1” in the egress LP table 18b. Further, the service VLAN identifier “SVID1” and the backbone VLAN identifier “BVID1” are associated with the internal VLAN identifier “IVID1”.
An operation example in the case where a frame is transmitted from the terminal TM10 to the terminal TM1 connected to the ring network A (20a) in the configuration described above will be described.
The external interface unit 30 adds the reception port identifier {PPh3} to the received frame and then transmits it to the relay processing unit 15. In the relay processing unit 15, the table processing unit 16 acquires the port identifier {LP3_1} of the logical port LP3_1 from the reception port identifier {PPh3} and the service VLAN identifier “SVID1” based on the ingress LP table 18a, and replaces the reception port identifier with the port identifier {LP3_1}. The VID conversion unit 32 converts the service VLAN identifier “SVID1” into the internal VLAN identifier “IVID1” based on the ingress VID conversion table 34a, and adds the internal VLAN identifier “IVID1” to the frame.
The FDB processing unit 17 learns the source MAC address “MA10” and the internal VLAN identifier “IVID1” of the frame in association with the reception port identifier {LP3_1} to the FDB. Also, the FDB processing unit 17 retrieves the FDB with using the destination MAC address “MA1” and the internal VLAN identifier “IVID1” of the frame as retrieval keys, and acquires and adds the destination port identifier {LP1_1} to the frame. The relay processing unit 15 transmits the frame to the fabric path unit 25 via the internal interface unit 31 and the fabric terminal FP. The fabric path unit 25 relays the frame to the line card LCh1 based on the destination port identifier {LP1_1}.
The line card LCh1 transmits a frame from the line card LCh3 to the relay processing unit 15 via the fabric terminal FP and the internal interface unit 31. The FDB processing unit 17 learns the source information of the frame like in the case of the line card LCh3. The VID conversion unit 32 converts the internal VLAN identifier “IVID1” into the backbone VLAN identifier “BVID1” and the service instance identifier “ISID1” based on the egress VID conversion table 34b.
More specifically, the relay processing unit 15 includes an encapsulation executing unit. The encapsulation executing unit encapsulates the frame with the backbone VLAN identifier “BVID1”, the service instance identifier “ISID1”, the source BMAC address and the destination BMAC address. The source BMAC address is the MAC address of the relay device SW1, and the destination BMAC address is, for example, the MAC address of the relay device SW3.
The table processing unit 16 acquires the port identifier {PPh1} and the backbone VLAN identifier “BVID1” of the physical port PPh1 from the destination port identifier {LP1_1} based on the egress LP table 18b, and replaces the destination port identifier with the port identifier {PPh1}. The relay processing unit 15 transmits the frame (encapsulated frame) to the external interface unit 30.
At this time, if the logical port LP1_1 is controlled to the transmission/reception prohibited state BK by the ring control unit 33, transmission to the external interface unit 30 is not performed and the frame is discarded. The external interface unit 30 deletes unnecessary information added to the frame, and then transmits the frame (encapsulated frame) FR1c from the physical port PPh1 based on the destination port identifier.
Thereafter, the network NW2 of
Although the relay operation from the physical port PPh3 to the physical port PPh1 has been described here, the relay operation in the reverse direction is also performed in the same way. With brief description, the table processing unit 16 in the line card LCh1 acquires the port identifier {LP1_1} from the port identifier {PPh1} and the backbone VLAN identifier “BVID1” and the VID conversion unit 32 converts the backbone VLAN identifier “BVID1” and the service instance identifier “ISID1” into the internal VLAN identifier “IVID1”. The FDB processing unit 17 performs learning and retrieval of the FDB and acquires the destination port identifier {LP3_1}.
The fabric path unit 25 relays the frame to the line card LCh3 based on the destination port identifier {LP3_1}. The FDB processing unit 17 in the line card LCh3 performs the learning of the FDB, the VID conversion unit 32 converts the internal VLAN identifier “IVID1” into the service VLAN identifier “SVID1”, and the table processing unit 16 replaces the destination port identifier {LP3_1} with the port identifier {PPh3}. More specifically, the relay processing unit 15 in the line card LCh3 includes a decapsulation executing unit, and converts an encapsulated frame into a non-encapsulated frame. The relaying in the reverse direction is performed through the process like this.
At the time of learning of the FDB, more specifically, in order to synchronize the contents retained in the FDB in each line card, it is desirable to use a learning frame containing only the header portion of a received frame or the like. In the example of
Also, the low-bandwidth line card LCl1 illustrated in
As described above, by using the relay device and the relay system according to the third embodiment, various advantages described in the first and second embodiments can be obtained in the relay system made up of the PB network and the PBB network.
The physical ports PPl1 and PPl2 of the relay device SW1 are connected to the relay devices SW′3 and SW′ 5, respectively, and the physical ports PPl1 and PPl2 of the relay device SW2 are connected to the relay devices SW′4 and SW′6, respectively. Also, the physical ports PPh1 of the relay devices SW1 and SW2 are connected via the communication line 10, and the logical ports LP1 and LP2 are set to the physical ports PPh1, respectively.
The logical port LP1 is associated with the physical port PPh1 and the VLAN identifiers “VID1” and “VID2” allocated to the ring network C (20c), and the logical port LP2 is associated with the physical port PPh1 and the VLAN identifier “VID3” allocated to the ring network D (20d). Here, the physical ports PP11 and PP12 of the relay device SW1 are controlled to the transmission/reception prohibited state BK. However, the block port is not particularly limited to the positions, and may be set at any ring port on the ring network C (20c) and any ring port on the ring network D (20d).
In this configuration, the physical port PPh1 serves as a physical ring port shared among a plurality of ring networks, and thus problems similar to those of the case of
In the foregoing, the invention made by the inventors of the present invention has been concretely described based on the embodiments. However, it is needless to say that the present invention is not limited to the foregoing embodiments and various modifications and alterations can be made within the scope of the present invention. For example, the embodiments above have been described in detail so as to make the present invention easily understood, and the present invention is not limited to the embodiment having all of the described constituent elements. Also, a part of the configuration of one embodiment may be replaced with the configuration of another embodiment, and the configuration of one embodiment may be added to the configuration of another embodiment. Furthermore, another configuration may be added to a part of the configuration of each embodiment, and a part of the configuration of each embodiment may be eliminated or replaced with another configuration.
For example, the example in which the relay device provided with a logical port setting function is applied to the ring networks has been described here, but the relay device is applicable to various networks other than the ring networks. In addition, although an L2 switch is taken as an example of the relay device here, a layer 3 (L3) switch for performing an L3 processing in addition to the L2 processing of the OSI reference model is also applicable.
Number | Date | Country | Kind |
---|---|---|---|
2015-191550 | Sep 2015 | JP | national |