Efficient trill forwarding
View Patent ↗One embodiment of the present invention provides a switch. The switch includes a storage and a lookup mechanism. The storage stores a first table that contains an entry corresponding to a media access control (MAC) address of a device and an identifier of a remote switch associated with the device. The storage also stores a second table that contains an entry indicating a local outgoing interface corresponding to the remote switch. The lookup mechanism identifies the local outgoing interface corresponding to the device based on the first table and the second table.
1. A switch, comprising:
a storage device operable to store:
a first table comprising an entry corresponding to a media access control (MAC) address of a device and an identifier of a remote switch associated with the device, wherein the remote switch is a virtual switch comprising a number of physical switches;
a third table comprising one or more entries which map the identifier of the virtual switch to one or more identifiers of the physical switches; and
a second table comprising an entry indicating a local outgoing interface corresponding to the remote switch;
and
a lookup module operable to identify the local outgoing interface corresponding to the device based on the first table, the second table, and the third table.
2. The switch of claim 1 , wherein the entry in the first table further comprises a virtual local area network (VLAN) tag associated with the device.
3. The switch of claim 1 , wherein the identifier to the remote switch is a Transparent Interconnection of Lots of Links (TRILL) routing bridge (RBridge) identifier.
4. The switch of claim 1 , wherein the virtual switch is a virtual RBridge; and
wherein the identifier of the virtual switch is a virtual RBridge identifier.
5. The switch of claim 1 , further comprising an updating module operable to update the entry in the second table in response to a route change to the remote switch.
6. The switch of claim 5 , wherein the updating module, in response to the switch detecting the device to be dual-homed, is further operable to:
add the identifier of the virtual switch and the respective identifiers of the physical switches to respective entries in the third table; and
add the MAC address of the device and the identifier of the virtual switch to an entry in the first table.
7. A switch, comprising:
a storage device operable to store:
a first table comprising an entry corresponding to a media access control (MAC) address of a device and an identifier of a remote switch associated with the device; and
a second table comprising an entry indicating a local outgoing interface corresponding to the remote switch;
a lookup module operable to identify the local outgoing interface corresponding to the device based on the first table and the second table; and
a logical switch management module operable to maintain a membership in a logical switch, wherein the logical switch is operable to accommodate a plurality of switches and operates as a single switch.
8. The switch of claim 7 , wherein the entry in the first table further comprises a virtual local area network (VLAN) tag associated with the device.
9. The switch claim 7 , wherein the identifier to the remote switch is a Transparent Interconnection of Lots of Links (TRILL) routing bridge (RBridge) identifier.
10. A computer-executable method, comprising:
storing, by a computer, in a first table an entry comprising a media access control (MAC) address of a device and an identifier of a remote switch associated with the device, wherein the remote switch is a virtual switch comprising a number of physical switches;
storing in a third table one or more entries which map the identifier of the virtual switch to one or more identifiers of the physical switches;
storing in a second table an entry indicating a local outgoing interface of the computer corresponding to the remote switch; and
identifying the local outgoing interface corresponding to the device based on the first table, the second table, and the third table.
11. The method of claim 10 , wherein the entry in the first table further comprises a virtual local area network (VLAN) tag associated with the device.
12. The method of claim 10 , wherein the identifier to the remote switch is a Transparent Interconnection of Lots of Links (TRILL) routing bridge (RBridge) identifier.
13. The method of claim 10 , wherein the virtual switch is a virtual RBridge; and
wherein the identifier of the virtual switch is a virtual RBridge identifier.
14. The method of claim 10 , further comprising updating the entry in the second table in response to a route change to the remote switch.
15. The method of claim 10 , in response to detecting the device to be dual-homed, the method further comprising:
adding the identifier of the virtual switch and the respective identifiers of the physical switches to respective entries in the third table; and
adding the MAC address of the device and the identifier of the virtual switch to an entry in the first table.
16. A computer-executable method, comprising:
storing, by a computer, in a first table an entry comprising a MAC address of a device and an identifier of a remote switch associated with the device; and
storing in a second table an entry indicating a local outgoing interface corresponding to the remote switch;
identifying the local outgoing interface corresponding to the device based on the first table and the second table; and
maintaining a membership in a logical switch, wherein the logical switch is operable to accommodate a plurality of switches and operates as a single switch.
17. The method of claim 16 , wherein the entry in the first table further comprises a virtual local area network (VLAN) tag associated with the device.
18. The method claim 16 , wherein the identifier to the remote switch is a Transparent Interconnection of Lots of Links (TRILL) routing bridge (RBridge) identifier.
19. A computing system, comprising:
a processor; and
a non-transitory computer-readable storage medium storing instructions which when executed by the processor causes the processor to perform a method, the method comprising:
storing in a first table an entry
comprising a media access control (MAC) address of a device and an identifier of a remote switch associated with the device, wherein the remote switch is a virtual switch comprising a number of physical switches;
storing in a third table one or more entries which map the identifier of the virtual switch to one or more identifiers of the physical switches;
storing in a second table an entry indicating a local outgoing interface corresponding to the remote switch; and
identifying the local outgoing interface corresponding to the device based on the first table, the second table, and the third table.
20. The computing system of claim 19 , wherein the entry in the first table further comprises a virtual local area network (VLAN) tag associated with the device.
21. The computing system of claim 19 , wherein the identifier to the remote switch is a Transparent Interconnection of Lots of Links (TRILL) routing bridge (RBridge) identifier.
22. The computing system of claim 19 , wherein the virtual switch is a virtual RBridge; and
wherein the identifier of the virtual switch is a virtual RBridge identifier.
23. The computing system of claim 19 , wherein method further comprises updating the entry in the second table in response to a route change to the remote switch.
24. The computing system of claim 19 , in response to detecting the device to be dual-homed, the method further comprises:
adding the identifier of the virtual switch and the respective identifiers of the physical switches to respective entries in the third table;
adding the MAC address of the device and the identifier of the virtual switch to an entry in the first table.
25. A computing system, comprising:
a processor; and
a non-transitory computer-readable storage medium storing instructions which when executed by the processor causes the processor to perform a method, the method comprising:
storing in a first table an entry comprising a media access control (MAC) address of a device and an identifier of a remote switch associated with the device, wherein the remote switch is a virtual switch comprising a number of physical switches;
storing in a second table an entry indicating a local outgoing interface corresponding to the remote switch;
identifying the local outgoing interface corresponding to the device based on the first table and the second table; and
maintaining a membership in a logical switch, wherein the logical switch is operable to accommodate a plurality of switches and operates as a single switch.
26. The computing system of claim 25 , wherein the entry in the first table further comprises a virtual local area network (VLAN) tag associated with the device.
27. The computing system of claim 25 , wherein the identifier to the remote switch is a Transparent Interconnection of Lots of Links (TRILL) routing bridge (RBridge) identifier.