User traffic accountability under congestion in flow-based multi-layer switches

US9231876B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9231876-B2
Application numberUS-201114008689-A
CountryUS
Kind codeB2
Filing dateSep 6, 2011
Priority dateMar 29, 2011
Publication dateJan 5, 2016
Grant dateJan 5, 2016

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method of policing network traffic based on congestion on a flow-based programmable switch, such as an OpenFlow switch is provided. The method polices congestion-causing flows in a network by detecting congestion at a flow-based programmable switch on the network. Once congestion has been detected, the method identifies one or more flows that are causing the congestion at the flow-based programmable switch, and penalizes the flows that were identified as causing congestion. A flow-based programmable switch including a data plane having input ports, output ports, and forwarding rules that map packets received on an input port to an output port based on a packet matching a rule in the forwarding rules is also described.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of policing congestion-causing flows in a network, comprising: detecting congestion at a flow-based programmable switch on the network; identifying a flow that is causing congestion at the flow-based programmable switch, wherein said identifying comprises re-routing packets that have been determined to be subject to congestion for further analysis by mirroring the packets that have been determined to be subject to congestion; and penalizing the flow that was identified as causing congestion. 2. The method according to claim 1 , wherein the flow-based programmable switch is configured to use the OpenFlow protocol. 3. The method according to claim 1 , wherein detecting congestion comprises monitoring a statistic of a port of the flow-based programmable switch. 4. The method according to claim 1 , wherein detecting congestion comprises monitoring a statistic of a flow on the flow-based programmable switch. 5. The method according to claim 1 , wherein detecting congestion comprises monitoring a statistic based on a drop count, indicating a number of packets dropped. 6. The method according to claim 1 , wherein detecting congestion comprises monitoring a statistic based on a mark count, related to a packet queue length. 7. The method according to claim 1 , wherein detecting congestion comprises monitoring a statistic based on a count of packets that are marked with a congestion mark, indicating that the packets have been subject to congestion on the network. 8. The method according to claim 5 wherein the statistic is monitored over a period of time. 9. The method according to claim 5 , wherein the statistic based on the drop count and/or the mark count is monitored using a counter added to a flow table entry in the flow-based programmable switch. 10. The method according to claim 9 , wherein the counter is reset to zero for flow table entries that forward traffic to a port on which congestion has been detected. 11. The method according to claim 1 , wherein detecting congestion comprises monitoring a statistic related to a time between handling a packet on the flow-based programmable switch, and handling a return packet associated with the packet on the flow-based programmable switch. 12. The method according to claim 1 , wherein further analysis of the packets that have been determined to be subject to congestion comprises using timing information of the packets to determine which of the flows represented by the packets is causing congestion. 13. The method according to claim 1 , wherein identifying a flow that is causing congestion comprises correlating port statistics and flow statistics. 14. The method according to claim 1 , wherein penalizing the flow that was identified as causing congestion comprises re-routing the flow that was identified as causing congestion, increasing a probability of dropping packets of the flow that was identified as causing congestion, and/or charging a premium tariff to the owner of the flow that was identified as causing congestion. 15. The method according to claim 1 , wherein penalizing the flow that was identified as causing congestion comprises load balancing traffic across multiple flow-based programmable switches. 16. The method according to claim 1 , wherein one or more of detecting congestion, identifying a flow that is causing congestion, and penalizing the flow that was identified as causing congestion is implemented at least in part outside of the flow-based programmable switch. 17. A flow-based programmable switch including a data plane having input ports, output ports, and forwarding rules that map packets received on an input port to an output port based on a packet matching a rule in the forwarding rules, the flow-based programmable switch further comprising: a congestion detection module that receives statistics from the data plane, the congestion detection module configured to detect congestion at the flow-based programmable switch; a traffic/flow extractor module that receives statistics and/or packets from the data plane, the traffic/flow extractor module configured to identify a flow that is causing congestion at the flow-based programmable switch when congestion has been detected by at least re-routing packets that have been determined to be subject to congestion for further analysis by mirroring the packets that have been determined to be subject to congestion; and a policing module that receives information on the flow that is causing congestion from the traffic/flow extractor module, the policing module configured to penalize the flow that has been identified as causing congestion at the flow-based programmable switch. 18. The flow-based programmable switch of claim 17 , wherein the flow-based programmable switch is configured to use the OpenFlow protocol.

Assignees

Inventors

Classifications

  • Avoiding congestion; Recovering from congestion · CPC title

  • the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV · CPC title

  • H04L47/20Primary

    Traffic policing · CPC title

  • in combination with information about buffer occupancy at either end or at transit nodes · CPC title

  • relying on flow classification, e.g. using integrated services [IntServ] · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9231876B2 cover?
A method of policing network traffic based on congestion on a flow-based programmable switch, such as an OpenFlow switch is provided. The method polices congestion-causing flows in a network by detecting congestion at a flow-based programmable switch on the network. Once congestion has been detected, the method identifies one or more flows that are causing the congestion at the flow-based progr…
Who is the assignee on this patent?
Mir Faisal Ghias, Brunner Marcus, Winter Rolf, and 2 more
What technology area does this patent fall under?
Primary CPC classification H04L47/20. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 05 2016 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).