# US 8,542,679 B2 · Method of controlling data propagation within a network

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 8,542,679 B2
- Document ID: US8542679B2
- Status: Granted
- Kind: B2
- Application number: 13/003,177
- Filed: 2009-07-08
- Published: 2011-06-23
- Granted: 2013-09-24
- Earliest claimed: 2008-07-08
- Assignees: Gnodal Limited
- Applicants: Jon Beecroft; Edward James Turner; Anthony Michael Ford; David Charles Hewson
- Inventors: Jon Beecroft; Edward James Turner; Anthony Michael Ford; David Charles Hewson
- Web page: https://patentgrep.com/patent/US8542679B2

## CPC

- H04L 49/351: for local area network [LAN], e.g. Ethernet switches
- H04L 45/20: {Hop count for routing purposes, e.g. TTL}
- H04L 49/3009: {Header conversion, routing tables or routing tags}
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The present invention provides a method of limiting the frequency of floods within a data network, the floods arising as a data frame is routed to an unknown destination, the method comprising the steps of: receiving on an ingress port a data frame intended for a destination station and containing a MAC address of that station; checking the destination MAC address with the contents of a MAC table; and thereby determining whether the data frame is to be routed, discarded or flooded to all ports except the ingress port; and respectively routing, discarding or flooding the data frame to all ports except the ingress port. The present invention further provides a method of populating a MAC table within an Ethernet network with entries relating a MAC station address to a port to which it is connected, the method comprising the steps of: receiving on an ingress port a data frame intended for a destination station and containing a MAC address of that station; checking the destination MAC address with the contents of a MAC table; and thereby determining whether the destination MAC address and ingress port are to be written to the MAC table and, if so writing the destination MAC address and ingress port to the MAC table; and flooding the data frame to all ports except the ingress port.

## Claims

### Claim 1

A method of limiting the frequency of floods within a data network, the floods arising as a data frame is routed to an unknown destination, the method comprising the steps of:
(a) receiving on an ingress port a data frame intended for a destination station and containing a Medium Access Control (MAC) address of that station;
(b) checking the destination MAC address with the contents of a MAC table; and thereby
(c) determining whether the data frame is to be routed, discarded (60, 66) or flooded (52, 64) to all ports except the ingress port; and
(d) respectively routing, discarding or flooding the data frame to all ports except the ingress port, as determined in Step (c), wherein the MAC table contains data in which a MAC address is mapped to a port number and to a flag value, the flag value being set to provide an indication to data frames that contain the MAC address as destination that the port number does not indicate an egress port to that destination.

### Claim 2 (depends on 1)

The method according to claim 1 wherein in the event that the destination MAC address is not found in the MAC table at Step (b), then the method comprises the steps of:
(a) writing the MAC address and ingress port to the MAC table; (b) setting the flag value; and
(c) flooding the data frame to all ports, except the ingress port.

### Claim 3 (depends on 1, 2)

The method according to claim 1 wherein in the event that the destination MAC address is found in the MAC table at claim 2, Step (b), then the method further comprises determining whether the flag value is set.

### Claim 4 (depends on 3)

The method according to claim 3 wherein if the flag value is not set, the data frame is routed to the port number indicated in the MAC table.

### Claim 5 (depends on 3)

The method according to claim 3 wherein if the flag value is set, the method further comprises determining whether the mapped port number found in the MAC table matches that of the ingress port.

### Claim 6 (depends on 3)

The method according to claim 3 wherein if the mapped port number does not match that of the ingress port, the frame is discarded.

### Claim 7 (depends on 6)

The method according to claim 6 wherein if the mapped port number matches that of the ingress port then the frame is discarded unless a count value is greater than zero.

### Claim 8 (depends on 7)

The method according to claim 7 wherein if the count value is greater than zero, the count value is decreased by one and the data frame is flooded to all ports, except the ingress port.

### Claim 9 (depends on 1)

The method according to claim 1 wherein the data frame originates from a source whose MAC address is also contained within the frame, the method comprising the steps of:
(a) checking the source MAC address with the contents of the MAC table; and, if the source address is absent or if the flag value is set,
(b) writing the source MAC address and ingress port to the MAC table; and
(c) clearing the flag value.

### Claim 10 (depends on 1)

The method according to claim 1 wherein, at periodic intervals, where the flag value is set, a MAC table entry is cleared or otherwise indicated to be considered as clear.

### Claim 11 (depends on 10)

The method according to claim 10 wherein each entry within the MAC table contains an Aging Value and the entry is cleared whenever the Aging Value reaches a predetermined value.

### Claim 12 (depends on 10)

The method according to claim 10 wherein each entry within the MAC table contains a second flag, which is set at periodic intervals in order to indicate that the entry is to be considered as clear.

### Claim 13 (depends on 1)

The method according to claim 1 wherein a MAC address is mapped to at least two port numbers.

### Claim 14 (depends on 1)

The method according to claim 1 wherein the data network comprises at least two Ethernet bridges.

### Claim 15 (depends on 1)

The method according to claim 1 wherein the data network comprises an Ethernet bridge with more than 32 ports.

### Claim 16 (depends on 15)

The method according to claim 15 wherein the Ethernet bridge is implemented on multiple chips.

### Claim 17 (depends on 1)

An Ethernet bridge wherein data propagation through the bridge is limited by a method in accordance with claim 1.

### Claim 18

A method of populating a MAC table within an Ethernet network with entries relating a MAC station address to a port to which it is connected, the method comprising the steps of:
(a) receiving on an ingress port a data frame intended for a destination station and containing a MAC address of that station;
(b) checking the destination MAC address with the contents of a MAC table; and thereby
(c) determining whether the destination MAC address and ingress port are to be written to the MAC table and, if so
(d) writing the destination MAC address and ingress port to the MAC table; and
(e) flooding the data frame to all ports except the ingress port, wherein each entry in the MAC table contains a flag value, the flag value being set as the destination MAC address is written to the table.

### Claim 19 (depends on 18)

The method according to claim 18 wherein the destination MAC address and ingress port are not written to the MAC table if an entry for that address is found and the flag value is not set.

### Claim 20 (depends on 19)

The method according to claim 19 wherein the data frame originates from a source whose MAC address is also contained within the frame, the method comprising the steps of: (a) checking the source MAC address with the contents of the MAC table; and, if the source address is absent or if the flag value is set,
(b) writing the source MAC address and ingress port to the MAC table; and
(c) clearing the flag value.

### Claim 21

A device containing a rewritable MAC table for use by an Ethernet bridge, the MAC table containing entries in which a MAC address of a network station is mapped to a bridge port number and a flag value, each MAC address being mapped to a port number corresponding to an ingress port on which a data frame reaches the bridge and characterised in that the flag value is set to indicate whether the mapping was created as a result of a source address lookup or destination address lookup.

### Claim 22 (depends on 21)

The device according to claim 21 wherein the flag value is set if the entry is created as a result of a destination MAC address lookup and cleared if the entry is created as a result of a source MAC address lookup.

### Claim 23 (depends on 22)

The device according to claim 22 wherein each MAC entry additionally contains a count value which is set to decrement each time the MAC entry is accessed as a result of a frame arriving on an ingress port of the bridge that corresponds to the port number of that entry and which contains the MAC address as destination, until the count reaches zero.
