8917741

Method of Data Delivery Across a Network

PublishedDecember 23, 2014
Assigneenot available in USPTO data we have
InventorsJon Beecroft
Technical Abstract

Patent Claims
42 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

1. A method of sorting data packets in a multi-path network having a plurality of ingress ports and a plurality of egress ports: a plurality of network links; and a plurality of network elements, each network element having at least first and second separately addressable buffers in communication with a network link and located in the network element concerned, and the network links interconnecting the network elements and connecting the ingress ports to the egress ports by way of the network elements, the method comprising, at each network element: sorting incoming data packets with respect to their respective egress port or ports; queuing such sorted incoming data packets, such that a first set of data packets having a first egress port of the multi-path network are queued in said first buffer of the network element concerned, and such that at least one other data packet having an egress port of the multi-path network different from the said first egress port of the multi-path network is queued separately in said second buffer of the network element concerned whereby said at least one other data packet is separated from any congestion associated with the first set of data packets.

Plain English Translation

A method for sorting data packets in a network with multiple paths between sender and receiver, containing network elements. Each network element contains at least two separate, addressable buffers. The method involves, at each network element, sorting incoming data packets based on their final destination port. Packets destined for the same egress port are queued in the same, first buffer. Packets for different egress ports are put into a separate, second buffer. This keeps packets destined for different locations separate, avoiding congestion issues that might affect one destination but not others.

Claim 2

Original Legal Text

2. The method of claim 1 , wherein said at least one other data packet is dynamically routed by the network elements.

Plain English Translation

The method described in Claim 1 (sorting packets into separate buffers based on their destination port to reduce congestion), where the packets in the second buffer (those not destined for the first egress port) are dynamically routed by the network elements. This means the path these packets take through the network is determined in real-time based on network conditions, rather than being pre-determined.

Claim 3

Original Legal Text

3. The method of claim 1 , wherein said at least one other data packet is subject to static routing by the network elements.

Plain English Translation

The method described in Claim 1 (sorting packets into separate buffers based on their destination port to reduce congestion), where the packets in the second buffer (those not destined for the first egress port) are statically routed by the network elements. This means the path these packets take through the network is pre-determined and does not change based on real-time network conditions.

Claim 4

Original Legal Text

4. The method of claim 2 , wherein the method includes the steps of: assigning to each data packet a destination address which corresponds to at least part of the address of the egress port or ports of the network required by the data packet; and where said destination address assigned to a new data packet matches the destination address of one or more previous data packets recently transmitted across the network, routing the new data packet on the same network link that transmitted the one or more previous data packets having the same destination address and using the same buffer, irrespective of whether a different network link would be selected were the data packet to be dynamically routed.

Plain English Translation

The method described in Claim 2 (sorting packets by destination and dynamically routing those with different destinations), further including assigning a destination address to each packet that corresponds to the packet's final output port. If a new packet's destination address matches a recently transmitted packet's address, the new packet is routed using the same network link and buffer as the previous packet, regardless of whether dynamic routing would have selected a different path. This prioritizes sticking to previously used paths when available.

Claim 5

Original Legal Text

5. The method of claim 4 , wherein the method further comprises the step of recording in a destination address register associated with the buffer the destination address of the most recent data packet to be queued in said buffer.

Plain English Translation

The method described in Claim 4 (routing new packets along the same path as recent packets with matching destination addresses), further including recording the destination address of the most recent packet queued in each buffer in a destination address register associated with that buffer. This allows the system to easily determine if a new packet's destination matches the last packet sent through that buffer.

Claim 6

Original Legal Text

6. The method of claim 4 , wherein an ultimate destination address is assigned to each data packet, the ultimate destination address including at least the destination address of the data packet and at least part of one or more other criteria used for differentiating the data packets being transmitted and wherein the ultimate destination address of the most recent data packet to be queued in the buffer is recorded in a destination address register associated with the buffer.

Plain English Translation

The method described in Claim 4 (routing new packets along the same path as recent packets with matching destination addresses), where each packet is assigned an "ultimate destination address". This address includes the standard destination address *and* additional criteria used to differentiate packets, and the ultimate destination address of the most recent packet is stored in a register associated with the buffer.

Claim 7

Original Legal Text

7. The method of claim 6 , wherein said other criteria are selected from the group comprising: destination End Station; destination priority; destination application; and/or destination Transmission Control Protocol stream.

Plain English Translation

This invention relates to network traffic management, specifically methods for filtering or prioritizing data packets based on additional criteria beyond traditional parameters like source or destination IP addresses. The problem addressed is the need for more granular control over network traffic, allowing administrators to manage bandwidth, security, or quality of service (QoS) based on specific endpoints, applications, or communication streams. The method involves analyzing data packets to extract and evaluate criteria such as the destination end station (a specific device or endpoint), destination priority (precedence levels assigned to certain traffic), destination application (the software or service generating the traffic), and/or the Transmission Control Protocol (TCP) stream (a specific communication session). These criteria are used to determine whether a packet should be allowed, blocked, or prioritized within the network. The method can be applied in firewalls, routers, or other network devices to enforce policies dynamically. By incorporating these additional criteria, the invention enables more precise traffic management, improving efficiency, security, and performance in network environments. For example, critical applications or high-priority endpoints can be given preferential treatment, while non-essential or malicious traffic can be filtered out. The approach enhances traditional packet filtering by adding context-aware decision-making.

Claim 8

Original Legal Text

8. The method of claim 5 , wherein at least the destination address of a new data packet is compared with at least the destination address stored in the register of each buffer so that when a match is identified the new data packet is assigned to the buffer having a matching destination address stored in its associated register.

Plain English Translation

The method described in Claim 5 (recording destination addresses in registers associated with each buffer), where the destination address of a new packet is compared to the destination address stored in the register of each buffer. If a match is found, the new packet is assigned to the buffer with the matching destination address in its register. This ensures packets with the same destination are grouped together.

Claim 9

Original Legal Text

9. The method of claim 4 , wherein state is associated with said at least first and second buffers in communication with each network link, the state being operable to record the order in which data packets are transmitted to the buffers and wherein when a data packet is to be dynamically routed the method comprises the step of identifying, for each dynamic routing selection of a network link, which buffer is the least recently used.

Plain English Translation

The method described in Claim 4 (routing new packets along the same path as recent packets with matching destination addresses), where each buffer has associated state information that records the order in which packets are transmitted to the buffers. When a packet is to be dynamically routed, the method includes identifying the least recently used buffer for each dynamic routing selection of a network link. This promotes using less busy paths.

Claim 10

Original Legal Text

10. The method of claim 4 , wherein a timer is associated with each buffer and the method further comprises the step of, for each buffer, determining whether the most recent data packet delivered to the buffer was delivered more recently than a timer threshold.

Plain English Translation

The method described in Claim 4 (routing new packets along the same path as recent packets with matching destination addresses), where a timer is associated with each buffer. The method determines, for each buffer, whether the most recent packet delivered to the buffer was delivered more recently than a defined timer threshold.

Claim 11

Original Legal Text

11. The method of claim 10 , further comprising the method step of, where a new data packet has a destination address matching the destination address stored in the register associated with a buffer and the most recent data packet delivered to the buffer was delivered more recently than the timer threshold, allocating the new data packet to the buffer having a matching destination address in its associated register.

Plain English Translation

The method described in Claim 10 (using timers with each buffer), where if a new packet has a destination address matching the address stored in a buffer's register, *and* the most recent packet delivered to that buffer was delivered *more recently* than the timer threshold, then the new packet is assigned to that buffer. This prioritizes routing similar traffic to recently used buffers.

Claim 12

Original Legal Text

12. The method of claim 10 , further comprising the method step of, where a new data packet has a destination address matching the destination address stored in the register associated with a buffer and the most recent data packet delivered to the buffer was delivered beyond the timer threshold, permitting dynamic routing of the new data packet on a network link.

Plain English Translation

The method described in Claim 10 (using timers with each buffer), where if a new packet has a destination address matching the address stored in a buffer's register, *and* the most recent packet delivered to that buffer was delivered *beyond* the timer threshold, then dynamic routing of the new packet is permitted. This allows the system to revert to dynamic routing when a previous path hasn't been used recently.

Claim 13

Original Legal Text

13. The method of claim 10 , wherein, where the most recent data packet delivered to a buffer was delivered beyond the timer threshold, the buffer is freely available to be allocated to future data packets irrespective of destination address.

Plain English Translation

The method described in Claim 10 (using timers with each buffer), where if the most recent packet delivered to a buffer was delivered beyond the timer threshold, the buffer is considered freely available and can be allocated to future packets regardless of their destination address. This prevents a timer expiring from blocking use of an available buffer.

Claim 14

Original Legal Text

14. The method of claim 10 , wherein the method further comprises issuing a congestion token when a buffer is full and increasing the period of time that must elapse before dynamic selection of a network link is permitted for a data packet which has a destination address matching the destination address stored in the register of the full buffer.

Plain English Translation

The method described in Claim 10 (using timers with each buffer), including issuing a "congestion token" when a buffer is full. When a congestion token is issued, the period of time that must elapse before dynamic routing is permitted for a packet with a matching destination address is increased. This penalizes congested paths.

Claim 15

Original Legal Text

15. The method of claim 14 , wherein when a congestion token is issued by a full buffer, the timer associated with the full buffer is reset to zero.

Plain English Translation

The method described in Claim 14 (issuing congestion tokens when buffers are full), where when a congestion token is issued by a full buffer, the timer associated with that buffer is reset to zero. This effectively restarts the timer, further discouraging use of the congested path.

Claim 16

Original Legal Text

16. The method of claim 14 , wherein when a congestion token is issued by a full buffer, the timer threshold is increased.

Plain English Translation

The method described in Claim 14 (issuing congestion tokens when buffers are full), where when a congestion token is issued by a full buffer, the timer threshold is increased. This makes it less likely that future packets will be routed to that congested buffer.

Claim 17

Original Legal Text

17. The method of claim 10 , further comprising the method steps of issuing a rejection token when a buffer is prevented from transmitting a queued data packet on a plurality of successive occasions and increasing the period of time that must elapse before dynamic selection of a network link is permitted for a data packet which has a destination address matching the destination address stored in the register of the rejected buffer.

Plain English Translation

The method described in Claim 10 (using timers with each buffer), further including issuing a "rejection token" when a buffer is prevented from transmitting a queued packet on multiple successive attempts. When a rejection token is issued, the period of time that must elapse before dynamic routing is permitted for a packet with a destination address matching the address stored in the rejected buffer is increased.

Claim 18

Original Legal Text

18. The method of claim 17 , wherein when a rejection token is issued by a rejected buffer, the timer associated with the rejected buffer is reset to zero.

Plain English Translation

The method described in Claim 17 (issuing rejection tokens when buffers fail to transmit), where when a rejection token is issued by a rejected buffer, the timer associated with the rejected buffer is reset to zero.

Claim 19

Original Legal Text

19. The method of claim 17 , wherein when a rejection token is issued by a rejected buffer, the timer threshold is increased.

Plain English Translation

The method described in Claim 17 (issuing rejection tokens when buffers fail to transmit), where when a rejection token is issued by a rejected buffer, the timer threshold is increased.

Claim 20

Original Legal Text

20. The method of claim 1 , wherein the data packets are sorted independently of their source or ingress port.

Plain English Translation

The method described in Claim 1 (sorting packets into separate buffers based on their destination port to reduce congestion), where the data packets are sorted independently of their source or ingress port. The sorting logic only considers the destination.

Claim 21

Original Legal Text

21. A method of data delivery in a multi-path network having a plurality of ports; a plurality of network links; and a plurality of network elements, each network element having at least first and second separately addressable buffers in communication with a network link and the network links interconnecting the network elements and connecting the network elements to the ports, the method comprising the sorting of data packets in the network according to claim 1 .

Plain English Translation

A method of delivering data in a network with multiple paths using the packet sorting method described in Claim 1 (sorting packets into separate buffers based on their destination port to reduce congestion), which sorts incoming data packets with respect to their respective egress port or ports such that a first set of data packets having a first egress port are queued in a first buffer, and at least one other data packet having a different egress port is queued separately in a second buffer, separating the at least one other data packet from congestion associated with the first set of data packets.

Claim 22

Original Legal Text

22. A multi-path network for use in a network apparatus, the multi-path network comprising a plurality of ingress ports, a plurality of egress ports, a plurality of network elements and a plurality of network links interconnecting the network elements and connecting the ingress ports to the egress ports by way of the network elements, each network element having at least first and second separately addressable buffers located therein, each buffer being in communication with a network link, wherein each the network element is operable to sort incoming data packets with respect to their respective egress port or ports of the multi-path network, and to queue such sorted incoming data packets such that a first set of data packets having a first egress port of the multi-path network are queued in said first buffer of the network element concerned and at least one other data packet having an egress port different from the said first egress port of the multi-path network is queued separately in said second buffer of the network element concerned, whereby said at least one other data packet is separated from any congestion associated with the first set of data packets.

Plain English Translation

A network with multiple paths for use in network devices. It includes multiple ingress ports, egress ports, network elements and links connecting the elements and ports. Each network element has at least two separate addressable buffers. Each network element sorts incoming packets by destination port, queuing packets for the same destination in a first buffer, and packets for other destinations in a separate, second buffer. This prevents congestion affecting one destination from impacting traffic to other destinations.

Claim 23

Original Legal Text

23. The multi-path network of claim 22 , wherein the network apparatus comprises one or more of a bridge, switch, router or hub.

Plain English Translation

The multi-path network described in Claim 22 (sorting packets into separate buffers based on their destination port to reduce congestion), where the network apparatus is a bridge, switch, router, or hub.

Claim 24

Original Legal Text

24. The multi-path network of claim 22 , wherein each network element is operable to dynamically route said at least one other data packet.

Plain English Translation

The multi-path network described in Claim 22 (sorting packets into separate buffers based on their destination port to reduce congestion), where each network element is capable of dynamically routing packets destined for the second buffer (different egress port).

Claim 25

Original Legal Text

25. The multi-path network of claim 22 , wherein each network element is operable to perform static routing of data packets.

Plain English Translation

The multi-path network described in Claim 22 (sorting packets into separate buffers based on their destination port to reduce congestion), where each network element performs static routing of data packets.

Claim 26

Original Legal Text

26. The multi-path network of claim 22 , wherein each data packet is assigned a destination address which corresponds to at least part of the address of the egress port or ports of the network required by the data packet; and each network element further includes an address comparator for determining when a new data packet has a destination address matching the destination address of one or more recently transmitted data packets whereby the network element is operable to route the new data packet on the same network link that transmitted the one or more recently transmitted data packets having the same destination address and using the same buffer, irrespective of whether a different network link would be selected were the data packet to be dynamically routed.

Plain English Translation

The multi-path network described in Claim 22 (sorting packets into separate buffers based on their destination port to reduce congestion), where each packet is assigned a destination address corresponding to the desired egress port. Each network element includes an address comparator to determine if a new packet's destination matches a recently transmitted packet's destination. If there's a match, the new packet is routed on the same network link and using the same buffer as the recent packet, even if dynamic routing would have selected a different path.

Claim 27

Original Legal Text

27. The multi-path network of claim 26 , wherein each network element includes a plurality of destination address registers each register being associated with one of the plurality of buffers respectively, the registers being operable to store the destination address of the most recent data packet assigned to its associated buffer.

Plain English Translation

The multi-path network described in Claim 26 (routing new packets along the same path as recent packets with matching destination addresses), where each network element includes multiple destination address registers. Each register is associated with one of the buffers and stores the destination address of the most recent packet assigned to that buffer.

Claim 28

Original Legal Text

28. The multi-path network of claim 27 , wherein the destination address registers are operable to store the ultimate destination address of the most recent data packets to be queued in the buffers associated with the registers, the ultimate destination address including at least the destination address of the data packet and at least part of one or more other criteria used for differentiating the data packets being transmitted.

Plain English Translation

The multi-path network described in Claim 27 (using registers to store destination addresses), where the destination address registers store the *ultimate* destination address of the most recent packets. This ultimate address includes the standard destination address and additional criteria used to differentiate packets during transmission.

Claim 29

Original Legal Text

29. The multi-path network of claim 28 , wherein said other criteria are selected from the group comprising: destination End Station; destination priority; destination application; and/or destination TCP stream.

Plain English Translation

The multi-path network described in Claim 28 (using ultimate destination addresses), where the additional criteria for the ultimate destination address are selected from: destination end station, destination priority, destination application, and/or destination TCP stream.

Claim 30

Original Legal Text

30. The multi-path network of claim 22 , wherein each network element further includes a timer associated with each buffer for monitoring whether the most recent data packet received by a buffer was received more recently than a timer threshold.

Plain English Translation

The multi-path network described in Claim 22 (sorting packets into separate buffers based on their destination port to reduce congestion), where each network element includes a timer associated with each buffer. The timer monitors whether the most recent packet received by a buffer was received more recently than a timer threshold.

Claim 31

Original Legal Text

31. The multi-path network of claim 30 , wherein each network element is operable to restrict new data packets allocated to a buffer to only those data packets having a matching destination address, when the previous most recent data packet was received by the buffer more recently than the timer threshold.

Plain English Translation

The multi-path network described in Claim 30 (using timers with each buffer), where each network element restricts new packets allocated to a buffer to only those packets having a matching destination address when the previous most recent packet was received by the buffer more recently than the timer threshold.

Claim 32

Original Legal Text

32. The multi-path network of claim 30 , wherein each network element is operable to allocate the new data packet to the buffer having a matching destination address in its associated register when the new data packet has a destination address matching the destination address stored in the register associated with a buffer and the most recent data packet delivered to the buffer was delivered more recently than the timer threshold.

Plain English Translation

The multi-path network described in Claim 30 (using timers with each buffer), where each network element allocates a new packet to the buffer with a matching destination address in its register when the new packet has a matching destination address *and* the most recent packet was delivered to that buffer more recently than the timer threshold.

Claim 33

Original Legal Text

33. The multi-path network of claim 30 , wherein each network element is operable to dynamically route a new data packet on a network link when the new data packet has a destination address matching the destination address stored in the register associated with a buffer and the elapse of time since the most recent data packet was delivered to the buffer is longer than the timer threshold.

Plain English Translation

The multi-path network described in Claim 30 (using timers with each buffer), where each network element dynamically routes a new packet on a network link when the new packet has a destination address matching the address in a buffer's register, *and* the time since the most recent packet was delivered to the buffer is longer than the timer threshold.

Claim 34

Original Legal Text

34. The multi-path network of claim 33 , wherein each network element is operable to select a buffer for a new data packet on the basis of the buffer least most recently used when the new data packet is to be dynamically routed on a network link.

Plain English Translation

The multi-path network described in Claim 33 (dynamically routing packets after a timer threshold), where each network element selects a buffer for a new packet based on the buffer least recently used when the new packet is to be dynamically routed on a network link. This balances the load across available paths.

Claim 35

Original Legal Text

35. The multi-path network of claim 30 , wherein each network element is operable to issue a congestion token when a buffer is full and is operable to increase the period of time that must elapse before dynamic selection of a network link is permitted for a data packet which has a destination address matching the destination address stored in the register of the full buffer.

Plain English Translation

The multi-path network described in Claim 30 (using timers with each buffer), where each network element issues a "congestion token" when a buffer is full and increases the period of time that must elapse before dynamic routing is permitted for packets with a matching destination address to that full buffer.

Claim 36

Original Legal Text

36. The multi-path network of claim 35 , wherein each network element is operable to cause the timer to reset to zero when a congestion token is issued.

Plain English Translation

The multi-path network described in Claim 35 (issuing congestion tokens), where each network element resets the timer to zero when a congestion token is issued.

Claim 37

Original Legal Text

37. The multi-path network of claim 35 , wherein each network element is operable to increase the timer threshold when a congestion token is issued.

Plain English Translation

The multi-path network described in Claim 35 (issuing congestion tokens), where each network element increases the timer threshold when a congestion token is issued.

Claim 38

Original Legal Text

38. The multi-path network of claim 30 , wherein each network element is operable to issue a rejection token when a buffer is prevented from transmitting a queued data packet on a plurality of successive occasions and is operable to increase the period of time that must elapse before dynamic selection of a network link is permitted for a data packet which has a destination address matching the destination address stored in the register of the rejected buffer.

Plain English Translation

The multi-path network described in Claim 30 (using timers with each buffer), where each network element issues a "rejection token" when a buffer is prevented from transmitting a queued packet on multiple successive attempts. It also increases the time before dynamic routing is allowed for packets with a matching address to the rejected buffer.

Claim 39

Original Legal Text

39. The multi-path network of claim 38 , wherein each network element is operable to cause the timer to reset to zero when a rejection token is issued.

Plain English Translation

The multi-path network described in Claim 38 (issuing rejection tokens), where each network element resets the timer to zero when a rejection token is issued.

Claim 40

Original Legal Text

40. The multi-path network of claim 38 , wherein each network element is operable to increase the timer threshold when a rejection token is issued.

Plain English Translation

The multi-path network described in Claim 38 (issuing rejection tokens), where each network element increases the timer threshold when a rejection token is issued.

Claim 41

Original Legal Text

41. The multi-path network of claim 22 , wherein the plurality of buffers comprises a plurality of First In, First Outs (FIFOs).

Plain English Translation

The multi-path network described in Claim 22 (sorting packets into separate buffers based on their destination port to reduce congestion), where the buffers are First-In, First-Out (FIFO) queues.

Claim 42

Original Legal Text

42. An Ethernet bridge or router comprising the multi-path network of claim 22 .

Plain English Translation

An Ethernet bridge or router containing the multi-path network described in Claim 22 (sorting packets into separate buffers based on their destination port to reduce congestion, using multiple network elements, each having at least two separate, addressable buffers, where packets for the same destination are queued together).

Patent Metadata

Filing Date

Unknown

Publication Date

December 23, 2014

Inventors

Jon Beecroft

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “METHOD OF DATA DELIVERY ACROSS A NETWORK” (8917741). https://patentable.app/patents/8917741

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/8917741. See llms.txt for full attribution policy.

METHOD OF DATA DELIVERY ACROSS A NETWORK