US2020099629A1PendingUtilityA1

Parameterized quality of service in a network

Assignee: ENTROPIC COMMUNICATIONS LLCPriority: Feb 14, 2007Filed: Nov 12, 2019Published: Mar 26, 2020
Est. expiryFeb 14, 2027(~0.6 yrs left)· nominal 20-yr term from priority
H04L 47/801H04L 47/805H04L 47/826H04L 47/806H04L 47/788H04L 47/762H04L 47/824H04L 47/724H04L 47/822H04L 47/15H04L 47/80H04L 12/28
61
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method for managing data transmission comprising making a bandwidth on a network resource available to at least one requestor for transmitting or receiving data according to a first request of a first type, the first type have a prescribed quality of service guarantee; transmitting first data in accordance with the first type to or from the at least one requestor on the network resource using a first portion of the bandwidth, if the first data are available to be transferred to or from the at least one requestor; transmitting second data according to a second request of a second type on the network resource to or from the at least one requestor or a second requestor, the second data transmitted without a quality of service guarantee using a second portion of the bandwidth, if the first portion of the prescribed bandwidth is less than the entire bandwidth.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for managing data transmission, comprising the steps of:
 (a) making a prescribed bandwidth on a network resource available to at least one requestor for transmitting or receiving data according to a first request of a first request type, the first request type have a prescribed quality of service guarantee;   (b) transmitting first data in accordance with the first request to or from the at least one requestor on the network resource, such transmission using a first portion of the prescribed bandwidth, if the first data are available to be transferred to or from the at least one requestor;   (c) transmitting second data according to a second request of a second request type on the network resource to or from the at least one requestor or a second requestor, the second data transmitted without a quality of service guarantee, the transmission using a second portion of the prescribed bandwidth, if the first portion of the prescribed bandwidth is less than the entire prescribed bandwidth.   
     
     
         2 . The method of  claim 1 , wherein:
 the prescribed bandwidth is less than an entire bandwidth of the network resource; and   the method further comprises transmitting the second data on the network resource to or from the at least one requestor or the second requestor in accordance with the second request, the second data transmitted without a quality of service guarantee using a remaining portion of the entire bandwidth of the network resource, if the prescribed bandwidth is not sufficient to transmit both the first data and the second data.   
     
     
         3 . The method of  claim 2 , wherein the prescribed bandwidth includes from about 60% to about 80% of the entire bandwidth of the network resource. 
     
     
         4 . The method of  claim 1 , wherein:
 during step (b), the at least one requestor transmits or receives a variable bit rate data flow subject to a peak bandwidth on the network resource; and   the second portion of the prescribed bandwidth includes an unused portion of the peak bandwidth of the first requestor.   
     
     
         5 . The method of  claim 1 , wherein:
 the at least one requestor includes a plurality of requestors transmitting or receiving variable bit rate data flows; and   each request of the first request type has a respective peak bandwidth on the network resource; and   the second portion of the prescribed bandwidth includes unused portions of the respective peak bandwidth of one or more of the requests of the first request type.   
     
     
         6 . The method of  claim 5 , wherein:
 a first requestor requests transmission of an amount of data exceeding the peak bandwidth of the first request during a transmission cycle; and   a second requestor has an amount of data available for transmission that is less than the peak bandwidth of the second request during the same transmission cycle, and   the first data transmitting step includes transmitting the amount of data exceeding the peak bandwidth of the first request during the transmission cycle on behalf of the first requestor.   
     
     
         7 . The method of  claim 1 , further comprising:
 assigning time slots within a cycle having a predetermined cycle duration to one or more of the group consisting of requests of the first request type and requests of the second request type, such that any request of the first request type, for which respective first data are available to be transferred, is assigned at least one of the time slots within the cycle; and   assigning a time slot corresponding to any request of the first request type, for which respective first data are not available to be transferred, to at least one request of the second type within the cycle,   wherein the first data transmitting step and second data transmitting step transmit data to or from each of the requestors that submits a request of the first and second request types to which at least one time slot in the cycle is assigned.   
     
     
         8 . The method of  claim 7 , wherein each request of the first request type has a respective peak number of time slots per cycle, and the time slot assigning step includes assigning to each respective request of the first request type the respective peak number of time slots corresponding to that request, if data corresponding to that request are available for transfer within the cycle. 
     
     
         9 . The method of  claim 7 , further comprising assigning any remaining time slots within the cycle to the at least one request of the second request type. 
     
     
         10 . The method of  claim 9 , wherein:
 the at least one request of the second request type includes a plurality of requests of the second request type,   each request of the second request type has a respective priority, and   any time slot within the cycle that is not assigned to a request of the first request type is assigned to a request of the second request type having the highest priority among the plurality of requests of the second request type with data available to be transmitted during the cycle.   
     
     
         11 . The method of  claim 10 , wherein the priorities of the plurality of requests of the second type include:
 a first priority level assigned to control traffic flows;   a second priority level assigned to asynchronous streaming data flows; and   a third priority level assigned to asynchronous data other than streaming data flows.   
     
     
         12 . The method of  claim 1 , wherein the requestor that submits a request of the first request type transmits or receives a variable bit rate data flow, and the requestor that submits a request of the second request type transmits or receives an asynchronous data flow. 
     
     
         13 . The method of  claim 1 , wherein the requestor that submits a request of the first request type transmits or receives a parameterized data flow, and the requestor that submits a request of the second request type transmits or receives a prioritized data flow. 
     
     
         14 . The method of  claim 1 , wherein the first data transmission step and second data transmission step are performed over a coaxial network. 
     
     
         15 . A method of reporting a change in a network, comprising the steps of:
 determining a change in a network;   generating a first Layer 2 message in response to the change, the Layer 2 message indicating a change has occurred in the network; and   transmitting the first Layer 2 message to a node connected to the network, wherein upon receiving the first Layer 2 message the node transmits a notification to an upper layer application.   
     
     
         16 . The method of  claim 15 , wherein the step of determining a change in a coordinated network includes the steps of:
 receiving a second Layer 2 message from one or more network nodes;   comparing a value in the second Layer 2 message to a stored value; and   determining that a network change has occurred, if the value in the second Layer 2 message does not equal the stored value.   
     
     
         17 . The method of  claim 15 , wherein the change in the coordinated network is a loss of one of the network nodes. 
     
     
         18 . The method of  claim 15 , wherein the change in the coordinated network is a decrease in a bandwidth of a resource in the network. 
     
     
         19 . The method of  claim 15 , further including the step of:
 receiving a second Layer 2 message in response to the first Layer 2 message, the second Layer 2 message requesting data concerning the first Layer 2 message.   
     
     
         20 . A method for managing data transmission in a shared network, comprising the steps of:
 making a prescribed bandwidth on a shared network resource available to at least one requestor with a prescribed quality of service guarantee for a first time interval;   transmitting data to or from the at least one requestor on the shared network resource during the first time interval; and   releasing the shared network resource associated with the prescribed bandwidth at the expiration of the first time interval, if a request to make the prescribed bandwidth available for a second time interval is not received from the at least one requestor.   
     
     
         21 . The method of  claim 20 , further including the step of:
 continuing to make the prescribed bandwidth on the shared network resource available to the at least one requestor during the second time interval, if a request for a second time interval is received from the at least one requestor.   
     
     
         22 . The method of  claim 21 , wherein the first time interval is different from the second time interval. 
     
     
         23 . The method of  claim 22 , wherein the first time interval is approximately equal to the second time interval. 
     
     
         24 . The method of  claim 21 , further comprising the step of:
 releasing the network resource associated with the prescribed bandwidth, if a flow is not active for a predetermined third time interval.   
     
     
         25 . The method of  claim 20 , wherein the shared network resource is a coaxial cable transmission network. 
     
     
         26 . The method of  claim 20 , further comprising transmitting data to or from a second requestor on the shared network resource during the second time interval. 
     
     
         27 . A method of performing a network transaction at Layer 2 comprising the steps of:
 receiving at a network coordinator a Layer 2 request to perform a network transaction from a first node;   transmitting a first Layer 2 message from the network coordinator to at least one node connected to the network in response to the request;   receiving, at the network coordinator, a response to the first Layer 2 message from at least one node connected to the network, the response including network resource allocation data;   determining the capabilities of the network at the network coordinator based on the received response to the first Layer 2 message; and   allocating network resources to perform the network transaction if the network coordinator determines there are sufficient network resources to perform the transaction.   
     
     
         28 . The method of  claim 27 , wherein the first node transmits the request to perform a network transaction as a consequence of receiving a message from an upper-layer application. 
     
     
         29 . The method of  claim 27 , wherein the first node transmits the request to perform a network transaction as a consequence of receiving a message from a second node. 
     
     
         30 . The method of  claim 29 , wherein the second node is only connected to the first node through an upper layer application. 
     
     
         31 . The method of  claim 29 , wherein the second node is bridged to the first node with a Layer-2 bridging technique. 
     
     
         32 . The method of  claim 27 , wherein the determining step includes calculating the available bandwidth in the network. 
     
     
         33 . The method of  claim 27 , wherein the determining step further includes calculating the amount of bandwidth required to perform the transaction. 
     
     
         34 . The method of  claim 32 , wherein the total bandwidth on the network is divided into a first portion for data transmission having a quality of service guarantee and a second portion for data transmission without a quality of service guarantee. 
     
     
         35 . The method of  claim 34 , wherein the first portion of bandwidth comprises about 60 to 80 percent of the total network bandwidth. 
     
     
         36 . The method of  claim 34 , wherein the data transmitted on the second portion of the bandwidth includes at least one priority level. 
     
     
         37 . The method of  claim 27 , wherein the allocating step includes transmitting a second message to at least one network node, the second message instructing the at least one node to allocate resources. 
     
     
         38 . The method of  claim 27 , wherein the first node is any node connected to the network. 
     
     
         39 . The method of  claim 27 , wherein the at least one node is an ingress node. 
     
     
         40 . The method of  claim 39 , further comprising the step of:
 determining the capabilities of the ingress node at the ingress node.   
     
     
         41 . The method of  claim 27 , wherein the network transaction is creating a pQoS flow in the network, the method further comprising:
 assigning the pQoS flow a unique flow identifier.   
     
     
         42 . The method of  claim 41 , wherein the unique flow identifier is based in part on a destination address of the flow. 
     
     
         43 . The method of  claim 42 , wherein the unique flow identifier is based in part on a priority value of the flow. 
     
     
         44 . A method comprising the steps of:
 (a) providing a priority value and a destination Media Access Control (MAC) address of a network flow;   (b) assigning an Organizationally Unique Identifier to a set of most significant bytes of a Flow Handle of a flow, the Flow Handle being in the form of a MAC address and used to identify a flow between a sending node and a receiving node at a network level;   (c) assigning a number of the least significant bytes of a unicast IP address of the receiving node as the least significant bits of the Flow Handle;   (d) creating a flow identifier at the network level by combining the priority value, the destination MAC address, and the Flow Handle; and   (e) transmitting at least one network management message to a network node, wherein the network management message includes the Flow Handle.   
     
     
         45 . The method of  claim 44 , further comprising the steps of:
 (f) incrementing the Flow Handle by a predetermined value if the flow identifier is already used in the network; and   (g) repeating step (f) until the flow identifier is unique in the network.   
     
     
         46 . A machine readable storage medium encoded with program code, wherein when the program code is executed by a processor, the processor performs a method comprising the steps of:
 (a) making a prescribed bandwidth on a network resource available to at least one requestor for transmitting or receiving data according to a first request of a first request type, the first request type have a prescribed quality of service guarantee;   (b) transmitting first data in accordance with the first request to or from the at least one requestor on the network resource, such transmission using a first portion of the prescribed bandwidth, if the first data are available to be transferred to or from the at least one requestor;   (c) transmitting second data according to a second request of a second request type on the network resource to or from the at least one requestor or a second requestor, the second data transmitted without a quality of service guarantee, the transmission using a second portion of the prescribed bandwidth, if the first portion of the prescribed bandwidth is less than the entire prescribed bandwidth.   
     
     
         47 . The machine readable storage medium of  claim 46 , wherein:
 the prescribed bandwidth is less than an entire bandwidth of the network resource; and   the method further comprises transmitting the second data on the network resource to or from the at least one requestor or the second requestor in accordance with the second request, the second data transmitted without a quality of service guarantee using a remaining portion of the entire bandwidth of the network resource, if the prescribed bandwidth is not sufficient to transmit both the first data and the second data.   
     
     
         48 . The machine readable storage medium of  claim 47 , wherein the prescribed bandwidth includes from about 60% to about 80% of the entire bandwidth of the network resource. 
     
     
         49 . The machine readable storage medium of  claim 46 , wherein:
 during step (b), the at least one requestor transmits or receives a variable bit rate data flow subject to a peak bandwidth on the network resource; and   the second portion of the prescribed bandwidth includes an unused portion of the peak bandwidth of the first requestor.   
     
     
         50 . A machine readable storage medium encoded with program code, wherein when the program code is executed by a processor, the processor performs a method comprising the steps of:
 determining a change in a network;   generating a first Layer 2 message in response to the change, the Layer 2 message indicating a change has occurred in the network; and   transmitting the first Layer 2 message to a node connected to the network, wherein upon receiving the first Layer 2 message the node transmits a notification to an upper layer application.   
     
     
         51 . The machine readable storage medium of  claim 50 , wherein the step of determining a change in a coordinated network includes the steps of:
 receiving a second Layer 2 message from one or more network nodes;   comparing a value in the second Layer 2 message to a stored value; and   determining that a network change has occurred, if the value in the second Layer 2 message does not equal the stored value.   
     
     
         52 . The machine readable storage medium of  claim 50 , wherein the change in the coordinated network is a loss of one of the network nodes. 
     
     
         53 . The machine readable storage medium of  claim 50 , wherein the change in the coordinated network is a decrease in a bandwidth of a resource in the network. 
     
     
         54 . A machine readable storage medium encoded with program code, wherein when the program code is executed by a processor, the processor performs a method comprising the steps of:
 making a prescribed bandwidth on a shared network resource available to at least one requestor with a prescribed quality of service guarantee for a first time interval;   transmitting data to or from the at least one requestor on the shared network resource during the first time interval; and   releasing the shared network resource associated with the prescribed bandwidth at the expiration of the first time interval, if a request to make the prescribed bandwidth available for a second time interval is not received from the at least one requestor.   
     
     
         55 . The machine readable storage medium of  claim 54 , further comprising the step of:
 continuing to make the prescribed bandwidth on the network resource available to the at least one requestor during the second time interval, if a request for a second time interval is received from the at least one requestor.   
     
     
         56 . The machine readable storage medium of  claim 55 , wherein the first time interval is different from the second time interval. 
     
     
         57 . The machine readable storage medium of  claim 55  further comprising the step of:
 releasing the network resource associated with the prescribed bandwidth, if a flow is not active for a predetermined third time interval. 
 
     
     
         58 . A machine readable storage medium encoded with program code, wherein when the program code is executed by a processor, the processor performs a method comprising the steps of:
 receiving at a network coordinator a Layer 2 request to perform a network transaction from a first node;   transmitting a first Layer 2 message from the network coordinator to at least one node connected to the network in response to the request;   receiving, at the network coordinator, a response to the first Layer 2 message from at least one node connected to the network, the response including network resource allocation data;   determining the capabilities of the network at the network coordinator based on the received response to the first Layer 2 message; and   allocating network resources to perform the network transaction if the network coordinator determines there are sufficient network resources to perform the transaction.   
     
     
         59 . The machine readable storage medium of  claim 58 , wherein the first node transmits the request to perform a network transaction as a consequence of receiving a message from an upper-layer application. 
     
     
         60 . The machine readable storage medium of  claim 58 , wherein the first node transmits the request to perform a network transaction as a consequence of receiving a message from a second node. 
     
     
         61 . The machine readable storage medium of  claim 60 , wherein the second node is only connected to the first node through an upper layer application. 
     
     
         62 . A machine readable storage medium encoded with program code, wherein when the program code is executed by a processor, the processor performs a method comprising the steps of:
 (a) providing a priority value and a destination Media Access Control (MAC) address of a network flow;   (b) assigning an Organizationally Unique Identifier to a set of most significant bytes of a Flow Handle, the Flow Handle being in the form of a MAC address and used to identify a flow between a sending node and a receiving node at the network level;   (c) assigning a number of the least significant bytes of a unicast IP address of the receiving node as the least significant bits of the Flow Handle;   (d) creating a flow identifier at the network level by combining the priority value, the destination MAC address, and the Flow Handle; and   (e) transmitting at least one network management message to a network node, wherein the network management message includes the Flow Handle.   
     
     
         63 . The machine readable storage medium of  claim 62 , further comprising the steps of:
 (f) incrementing the Flow Handle by a predetermined value if the flow identifier is already used in the network; and   (g) repeating step (f) until the flow identifier is unique in the network.   
     
     
         64 . A system comprising:
 a Network Coordinator node connected to a network, the Network Coordinator configured to make a prescribed bandwidth on a network resource available to at least one node for transmitting or receiving data according to a first request of a first request type, the first request type having a prescribed quality of service guarantee;   the Network Coordinator being configured for connection to a first node via the network, such that the first node is configured to transmit or receive data in accordance with the first request, the transmission of data using a first portion of the prescribed bandwidth, if the first data are available to be transmitted to or from the first node, and   the Network Coordinator is configured to make the network resource available to the first node to transfer or receive second data according to a second request of a second request type, the second data transmitted without a quality of service guarantee, the transmission of the second data using a second portion of the prescribed bandwidth, if the first portion of the prescribed bandwidth is less than the entire prescribed bandwidth.   
     
     
         65 . The system of  claim 64 , wherein the prescribed bandwidth is from about 60% to about 80% of the entire bandwidth of the network resource. 
     
     
         66 . The system of  claim 64 , wherein the first node is configured to transmit or receive a variable bit rate data flow. 
     
     
         67 . The system of  claim 64 , wherein the Network Coordinator makes a prescribed bandwidth available to at least one node in response to receiving a Layer 2 message from a second network node, the second network node not transmitting or receiving the data. 
     
     
         68 . An apparatus comprising:
 a first node including:
 a physical interface for connection to a network, the physical interface configured to transmit and receive Layer 2 messages through the network, and 
 a Layer 2 interface configured to detect a change in the network, 
   wherein the first node is configured for generating and transmitting a Layer 2 message to a second node as a consequence of detecting a change in the network.   
     
     
         69 . The apparatus of  claim 68 , wherein the first node is further configured to transmit a message to an upper layer application upon detecting a change in the network. 
     
     
         70 . A system comprising:
 a Network Coordinator connected to a network, the Network Coordinator configured to make a prescribed bandwidth on a shared network resource available to at least one node with a prescribed quality of service guarantee for a first time interval;   a first network node configured to transmit or receive data on the shared network resource during the first time interval;   wherein the Network Coordinator is further configured to release the shared network resource associated with the prescribed bandwidth at the expiration of the first time interval, if a request to make the prescribed bandwidth available for a second time interval is not received from the first network node.   
     
     
         71 . The system of  claim 70 , wherein the Network Coordinator is further configured to make the prescribed bandwidth on the shared network resource available to the first network node during the second time interval is received from the first network node. 
     
     
         72 . The system of  claim 71 , wherein the first time interval is different from the second time interval. 
     
     
         73 . A system comprising:
 one or more nodes connected to a network, the one or more nodes configured to transmit and receive messages through the network; and   a Network Coordinator connected to the network, the Network Coordinator configured to determine the capabilities of the network including the capabilities of each of the one or more nodes in the network through Layer 2 messaging, the Network Coordinator further configured to allocate network resources to the one or more nodes to perform network transactions, if the Network Coordinator determines there are sufficient network resources through Layer 2 messaging.   
     
     
         74 . The system of  claim 73 , wherein the Network Coordinator allocates resources for a data flow from a first network node to a second network node. 
     
     
         75 . The system of  claim 74 , wherein the Network Coordinator allocates the resources for the data flow in response to receiving a Layer 2 message from a third network node. 
     
     
         76 . An apparatus comprising:
 a physical interface for connection to a network, the physical interface configured to transmit and data flows through the network; and   a Layer 2 interface configured to generate a flow identifier that is unique in the network, the flow identifier including a destination address of a destination node of the flow, a priority value of the flow, and a FlowHandle, wherein the FlowHandle is in the form of a Media Access Control address and is based in part on a unicast address of the destination node of the flow.   
     
     
         77 . The apparatus of  claim 76 , wherein the Layer-2 interface is further configured to increment the FlowHandle by a predetermined value if the flow identifier is not unique in the network.

Join the waitlist — get patent alerts

Track US2020099629A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.