Communications Scheduler

US2017149679A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017149679-A1
Application numberUS-201715403116-A
CountryUS
Kind codeA1
Filing dateJan 10, 2017
Priority dateAug 2, 2006
Publication dateMay 25, 2017
Grant date

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 system for providing communications over a communications network includes a communications interface and a processor. The communications interface communicates over the communications network. The processor directs a communications scheduler to determine at least one metric for a path within the communications network. The processor also selects a data flow for the path and determines whether to transmit a packet in the selected data flow based on the at least one metric. The processor then directs a communications protocol handler to generate the packet for the selected data flow.

First claim

Opening claim text (preview).

What is claimed is: 1 . A system for providing network communications, the system comprising: a TCP/IP stack module stored in memory and executed by a processor to: receive a plurality of original application data packets from a data flow, inform a communications scheduler module that the data flow has data to be transmitted over a network, and generate at least one data packet for the data flow from the plurality of original application data packets to be transmitted over the network when directed by the communications scheduler module; the communications scheduler module stored in memory and executed by the processor to: determine the capacity of a network path, select a suitable network path, select a data flow for the selected network path, and direct the TCP/IP stack module to generate the at least one data packet for the selected data flow from the application data in the selected data flow for immediate transmission of the selected data flow over the network, overriding standard TCP flow control; and a communications interface module stored in memory and executed by the processor to transmit the at least one data packet for the selected data flow via the selected network path at an optimal transmission rate, regardless of TCP flow control status. 2 . The system of claim 1 , wherein the execution of the communications scheduler module to determine the capacity of the network path includes determining a bandwidth estimate. 3 . The system of claim 1 , wherein the communications interface module transmits the at least one data packet for the data flow via the selected network path at a rate based on a bandwidth estimate for the capacity of the network path. 4 . The system of claim 1 , wherein the communications scheduler module is executable to determine whether a data flow has information to send prior to selecting the data flow for the network path. 5 . The system of claim 1 , wherein the communications scheduler module is executable to determine respective priorities of data flows and select the data flow based on the priorities and the capacity of the network path. 6 . The system of claim 1 , wherein the data flow is selected based on a fairness policy. 7 . The method of claim 1 , wherein the data flow is selected based on at least one of the application that originated the data flow, the user of the application, the number of data flows previously sent from the application or the user, and the number of packets previously sent from that data flow. 8 . A method for providing network communications, the method comprising: receiving at a TCP/IP stack module application data in a plurality of original application data packets from a data flow; informing a communications scheduler module that the data flow has data to be transmitted over a network receiving an instruction at the TCP/IP stack module from the communications scheduler module to send the data to the communications scheduler module; generating by the TCP/IP stack module at least one data packet for the data flow from the plurality of original application data packets to be transmitted over the network; and sending the at least one data packet to the communications scheduler module for transmission over the network, wherein the communications scheduler is configured to: determine the capacity of a network path, select a suitable network path, select a data flow for the selected network path, and direct the TCP/IP stack module to generate the at least one data packet for the selected data flow from the application data in the selected data flow for immediate transmission of the selected data flow over the network, overriding standard TCP flow control; and executing by a processor a communications interface module stored in memory to transmit the at least one data packet for selected data flow via the selected network path at an optimal transmission rate, regardless of TCP flow control status. 9 . The method of claim 8 , wherein determining the capacity of the network path by the communications scheduler module includes determining a bandwidth estimate for the network path. 10 . The method of claim 8 , wherein the at least one data packet for the data flow is transmitted by the communications interface module via the selected network path at a rate based on a bandwidth estimate for the capacity of the network path. 11 . The method of claim 8 , further comprising determining by the communications scheduler module whether a data flow has information to send prior to selecting the data flow for the network path. 12 . The method of claim 8 , further comprising determining respective priorities of data flows by the communications scheduler module, wherein the data flow is selected based on the priorities and the capacity of the network path. 13 . The method of claim 8 , wherein the data flow is selected based on a fairness policy. 14 . The method of claim 8 , wherein the data flow is selected based on at least one of the application that originated the data flow, the user of the application, the number of data flows previously sent from the application or the user, and the number of packets previously sent from that data flow. 15 . A non-transitory computer readable storage medium having a program embodied thereon, the program executable by a processor to perform a method for providing network communications, the method comprising: executing a TCP/IP stack module stored in memory to: receive a plurality of original application data packets from a data flow, inform a communications scheduler module that the data flow has data to be transmitted over a network, and generate at least one data packet for the data flow from the plurality of original application data packets to be transmitted over the network when directed by the communications scheduler module; executing the communications scheduler module stored in memory to: determine the capacity of a network path, select a suitable network path, select a data flow for the selected network path, and direct the TCP/IP stack module to generate the at least one data packet for the selected data flow from the application data in the selected data flow for immediate transmission of the selected data flow over the network, overriding standard TCP flow control; and executing a communications interface module stored in memory to transmit the at least one data packet for selected data flow via the selected network path at an optimal transmission rate, regardless of TCP flow control status. 16 . The computer readable storage medium of claim 15 , wherein executing the communications scheduler module to determine the capacity of the network path includes determining a bandwidth estimate. 17 . The computer readable storage medium of claim 15 , wherein executing the communications interface module transmits the at least one data packet for the data flow via the selected network path at a rate based on a bandwidth estimate for the capacity of the network path. 18 . The computer readable storage medium of claim 15 , wherein the method further comprises executing the communications scheduler module to determine whether a data flow has information to send prior to the selection of the data flow for the network path. 19 . The computer readable storage medium of claim 15 , wherein the method further comprises executing the communications scheduler module to determine respective priorities of data flows, wherein the data flow is selected based on the priorities and the capacity of the network path.

Assignees

Inventors

Classifications

  • Routing or path finding of packets in data switching networks (routing or path finding in wireless networks H04W40/00) · CPC title

  • Packet rate · CPC title

  • Ensuring fair share of resources, e.g. weighted fair queuing [WFQ] · CPC title

  • for supporting traffic characterised by the type of applications · CPC title

  • based on priority · 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 US2017149679A1 cover?
A system for providing communications over a communications network includes a communications interface and a processor. The communications interface communicates over the communications network. The processor directs a communications scheduler to determine at least one metric for a path within the communications network. The processor also selects a data flow for the path and determines whethe…
Who is the assignee on this patent?
Silver Peak Systems Inc
What technology area does this patent fall under?
Primary CPC classification H04L43/0894. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu May 25 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).