P
US8908564B2ActiveUtilityPatentIndex 84

Method for Media Access Control address learning and learning rate suppression

Assignee: ASSARPOUR HAMIDPriority: Jun 28, 2010Filed: Nov 4, 2010Granted: Dec 9, 2014
Est. expiryJun 28, 2030(~4 yrs left)· nominal 20-yr term from priority
Inventors:ASSARPOUR HAMID
H04L 45/66G06F 9/32H04L 45/54H04L 12/4625
84
PatentIndex Score
6
Cited by
25
References
16
Claims

Abstract

A method, apparatus and computer program product for Media Access Control (MAC) address learning and learning rate suppression are presented. A Forwarding Data Unit (FDU) maintains two cache tables, each of the cache tables used for harvesting MAC addresses. The FDU uses the cache tables in an alternating manner, wherein when one of the cache tables is used for harvesting MAC addresses the other one of the cache tables has its contents bundled into a packet for forwarding to a control plane of the FDU.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
       1. A computer-implemented method in which a Forwarding Data Unit (FDU) performs operations comprising:
 maintaining, by said FDU, two cache tables, each of said cache tables used for harvesting Media Access Control (MAC) addresses; 
 using said cache tables in an alternating manner, wherein when one of said cache tables is used for harvesting MAC addresses the other one of said cache tables has its contents bundled into a packet for forwarding to a control plane of said FDU, wherein each cache table is used for storing one or more cache table entries, each cache table entry including a valid bit, a key including a source MAC address, and associated data; and 
 prior to switching from harvesting MAC addresses into one of said cache tables to harvesting MAC addresses into the other one of said cache tables, clearing the valid bit for each entry in said other one of said cache tables. 
 
     
     
       2. The method of  claim 1  wherein said using said cache tables in an alternating manner is done according to a software configurable timer. 
     
     
       3. The method of  claim 1  further comprising using a hash function to generate an address of an entry in said cache table. 
     
     
       4. The method of  claim 3  wherein said using a hash function comprises taking a key comprising a source MAC address and other related fields from said packet and producing an index having a size of log 2 (n) where n is the number of entries in the cache table. 
     
     
       5. The method of  claim 1  further comprising:
 receiving a packet at said FDU; 
 checking whether a source MAC address associated with the received packet exists in forwarding table; and 
 when the source MAC address associated with the received packet does not exist in the forwarding table, then using the hash function to generate an index and writing an entry with pertinent information at said index in said cache table currently used to harvest MAC addresses. 
 
     
     
       6. The method of  claim 5  wherein said writing an entry is done regardless of the state of said valid bit for said entry, such that the last packet with a source MAC address as part of the key hashes into a same entry during the period the cache table is used for harvesting source MAC addresses. 
     
     
       7. The method of  claim 6  wherein said writing an entry regardless of a state of said valid bit ensures that all packets with a same source MAC address will hash into a same entry during a same timer period thereby providing MAC address learning rate suppression. 
     
     
       8. A non-transitory computer readable storage medium having computer readable code thereon for Media Access Control (MAC) address learning and learning rate suppression, the medium including instructions in which a Forwarding Data Unit (FDU) performs operations comprising:
 maintaining, by said FDU, two cache tables, each of said cache tables used for harvesting Media Access Control (MAC) addresses; 
 using said cache tables in an alternating manner, wherein when one of said cache tables is used for harvesting MAC addresses the other one of said cache tables has its contents bundled into a packet for forwarding to a control plane of said FDU, wherein each cache table is used for storing one or more cache table entries, each cache table entry including a valid bit, a key including a source MAC address, and associated data; and 
 prior to switching from harvesting MAC addresses into one of said cache tables to harvesting MAC addresses into the other one of said cache tables, clearing the valid bit for each entry in said other one of said cache tables. 
 
     
     
       9. The computer readable storage medium of  claim 8  wherein said using said cache tables in an alternating manner is done according to a software configurable timer. 
     
     
       10. The computer readable storage medium of  claim 8  further comprising using a hash function to generate an address of an entry in said cache table. 
     
     
       11. The computer readable storage medium of  claim 10  wherein said using a hash function comprises taking a key comprising a source MAC address and other related fields from said packet and producing an index having a size of log 2 (n) where n is the number of entries in the cache table. 
     
     
       12. The computer readable storage medium of  claim 8  further comprising:
 receiving a packet at said FDU; 
 checking whether a source MAC address associated with the received packet exists in forwarding table; and 
 when the source MAC address associated with the received packet does not exist in the forwarding table, then using the hash function to generate an index and writing an entry with pertinent information at said index in said cache table currently used to harvest MAC addresses. 
 
     
     
       13. The computer readable storage medium of  claim 12  wherein said writing an entry is done regardless of the state of said valid bit for said entry, such that the last packet with a source MAC address as part of the key hashes into a same entry during the period the cache table is used for harvesting source MAC addresses. 
     
     
       14. The computer readable storage medium of  claim 13  wherein said writing an entry regardless of a state of said valid bit ensures that all packets with a same source MAC address will hash into a same entry during a same timer period thereby providing MAC address learning rate suppression. 
     
     
       15. A Forwarding Data Unit (FDU) comprising:
 a memory; 
 a processor; 
 a communications interface; 
 an interconnection mechanism coupling the memory, the processor and the communications interface; and 
 wherein the memory is encoded with an application providing Media Access Control (MAC) address learning and learning rate suppression, that when performed on the processor, provides a process for processing information, the process causing the FDU to perform the operations of: 
 maintaining, by said FDU, two cache tables, each of said cache tables used for harvesting Media Access Control (MAC) addresses; 
 using said cache tables in an alternating manner, wherein when one of said cache tables is used for harvesting MAC addresses the other one of said cache tables has its contents bundled into a packet for forwarding to a control plane of said FDU; 
 receiving a packet at said FDU; 
 checking whether a source MAC address associated with the received packet exists in forwarding table; 
 when the source MAC address associated with the received packet does not exist in the forwarding table, then using the hash function to generate an index and writing an entry with pertinent information at said index in said cache table currently used to harvest MAC addresses; 
 wherein said writing an entry is done regardless of the state of said valid bit for said entry, such that the last packet with a source MAC address as part of the key hashes into a same entry during the period the cache table is used for harvesting source MAC addresses; and 
 writing an entry regardless of a state of said valid bit ensures that all packets with a same source MAC address will hash into a same entry during a same timer period thereby providing MAC address learning rate suppression. 
 
     
     
       16. The FDU of  claim 15  wherein each cache table is used for storing one or more cache table entries, each cache table entry including a valid bit, a key including a source MAC address, and associated data.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.