Network address manager
First Claim
1. A method of managing source addresses in a network device connected to a local area network, the network device including a plurality of ports connected to receive information packets from the local area network, wherein each received information packet includes a source address, the method comprising:
- selecting one of a plurality of learning modes for each of the plurality of ports in the network device;
receiving a packet of information from the local area network through a first port of the network device and determining the source address included in the packet;
determining whether one of a plurality of source address entries in a source address memory of the network device contains said source address, and setting a valid bit for said one of a plurality of source address entries when said one of a plurality of source address entries contains said source address;
storing said source address according to the selecting one of a plurality of learning modes for each of the plurality of ports in the network device as one of the plurality of source address entries in the source address memory when no source address entry contains said source address and the source address memory is not full; and
checking a static bit for at least some of the plurality of source address entries in the source address memory and storing said source address to one of said plurality of source address entries, in place of the oldest source address entry having a dynamic value of the static bit, when no source address entry contains said source address and the source address memory is full.
1 Assignment
0 Petitions
Accused Products
Abstract
A network device includes a content addressable memory (CAM). The CAM may be accessed by a host processor. The host processor stores active device addresses in the CAM. Each device address is associated with one of the network switch ports. If the network switch receives a packet having a source address not presently stored in the CAM, the network switch adds the source address to the CAM. If the CAM is full of source addresses, the new source address replaces a selected one of the old source addresses.
51 Citations
14 Claims
-
1. A method of managing source addresses in a network device connected to a local area network, the network device including a plurality of ports connected to receive information packets from the local area network, wherein each received information packet includes a source address, the method comprising:
-
selecting one of a plurality of learning modes for each of the plurality of ports in the network device;
receiving a packet of information from the local area network through a first port of the network device and determining the source address included in the packet;
determining whether one of a plurality of source address entries in a source address memory of the network device contains said source address, and setting a valid bit for said one of a plurality of source address entries when said one of a plurality of source address entries contains said source address;
storing said source address according to the selecting one of a plurality of learning modes for each of the plurality of ports in the network device as one of the plurality of source address entries in the source address memory when no source address entry contains said source address and the source address memory is not full; and
checking a static bit for at least some of the plurality of source address entries in the source address memory and storing said source address to one of said plurality of source address entries, in place of the oldest source address entry having a dynamic value of the static bit, when no source address entry contains said source address and the source address memory is full. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
using a look-up engine to determine whether a destination address of the packet matches any destinations connected to any of the plurality of ports; and
transmitting the packet through a data exchanger to an appropriate port of the plurality of ports, where the appropriate port is connected to the destination matching the destination address.
-
-
3. A method according to claim 1, further comprising:
moving an overwrite pointer to the oldest dynamic source address entry in the source address memory before receiving the packet of information, such that a source address entry for said source address can quickly be written over the oldest dynamic source address entry.
-
4. A method according to claim 1, further comprising:
-
determining whether said source address is static; and
writing a static bit to the source address entry for said source address in the source address memory.
-
-
5. A method according to claim 1, further comprising:
dividing the received packet of information into cells and passing the cells to a FIFO buffer.
-
6. A method according to claim 1, further comprising:
storing the packet of information in buffer memory until at least one of an End of File (EOF) tag is received and the entire packet is received error free.
-
7. A method according to claim 1, wherein:
the plurality of learning modes contains learning modes selected from the group consisting of;
first-heard mode, last-heard mode, programmed mode, and secure programmed mode.
-
8. A method according to claim 1, further comprising:
storing the packet of information in buffer memory until at least one of the EOF tag is received and the entire packet is received error free.
-
9. A method according to claim 1, further comprising:
-
using a look-up engine to determine whether a destination address of the packet matches any destinations connected to any of the plurality of ports;
transmitting the packet to an appropriate port of the plurality of ports, where the appropriate port is connected to the destination matching the destination address.
-
-
10. A method according to claim 1, wherein:
storing said source address includes storing said source address to an address register when the selected one of the plurality of learning modes is a first-learned mode.
-
11. A method according to claim 1, wherein:
storing said source address includes overwriting the oldest dynamic source address entry in the source address memory when the selected one of the plurality of learning modes is a last-learned mode.
-
12. A method according to claim 11, further comprising:
moving an overwrite pointer to the oldest dynamic source address entry before receiving the packet of information, such that said source address can quickly be written over the oldest dynamic source address entry.
-
13. A method according to claim 11, further comprising:
checking a static bit for at least some of a plurality of existing source address entries in the source address memory in order to determine the oldest dynamic source address entry in the source address memory.
-
14. A method according to claim 1, wherein:
storing said source address includes discarding said source address when the selected one of the plurality of learning modes is one of a programmed mode and a secure programmed mode.
Specification