US9270616B1 - Low-latency quality of service - Google Patents
Low-latency quality of service Download PDFInfo
- Publication number
- US9270616B1 US9270616B1 US13/772,486 US201313772486A US9270616B1 US 9270616 B1 US9270616 B1 US 9270616B1 US 201313772486 A US201313772486 A US 201313772486A US 9270616 B1 US9270616 B1 US 9270616B1
- Authority
- US
- United States
- Prior art keywords
- flow
- sub
- data packets
- data
- latency
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active, expires
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/821—Prioritising resource allocation or reservation requests
Definitions
- This disclosure relates to quality of service associated with low-latency packet flows.
- DOCSIS Data-Over-Cable Service Interface Specification
- CATV community antenna television
- MSO multiple services operators
- CATV network infrastructure for carrying voice, video on demand (VoD) and video conferencing traffic signals, among other types.
- IP internet protocol
- a transmission medium e.g., cable, wireless router, EPON, etc.
- the resources associated with the transmission medium e.g., maximum bitrate
- the need for low-latency packet flows varies with the type of application requesting a packet flow from a MSO.
- online gaming generally requires a low-latency packet flow
- data transmissions via file transfer protocol (FTP) can be effectively completed through a normal or high-latency packet flow.
- FTP file transfer protocol
- a transmission medium becomes congested with a plurality of data flows
- the available resources of the transmission medium are allocated between the data flows, thus the bitrate available for each flow to utilize is typically reduced.
- data packets are generally either dropped from the data flow or are buffered, thus increasing the latency of the data flow.
- a general prioritization of data requests from applications needing low-latency data flows can lead to an unfair disparity between the bitrate available to heavy users of low-latency data flows and the bitrate available to light users of low-latency data flows. Broad use of such a general prioritization over a transmission medium allows a subscriber's use of low-latency data flow to negatively impact the bitrate available to other subscribers accessing the same transmission medium. Thus, there is a need for improved quality of service for low-latency data flows.
- FIG. 1 is a block diagram illustrating a network environment operable to apportion available resources on a transmission medium between subscribers and to allocate apportioned resources between multiple sub-flows.
- FIG. 2 is a block diagram illustrating an example cable modem termination system operable to apportion available resources for a transmission medium between subscribers and to allocate apportioned resources between multiple sub-flows.
- FIG. 3 is a flowchart illustrating a process operable to assign a data packet to one of a plurality of data sub-flows.
- FIG. 4 is a flowchart illustrating a process operable to apportion available resources for a transmission medium between subscribers and to allocate apportioned resources between a plurality of data sub-flows.
- FIG. 5 is block diagram of a hardware configuration operable to apportion available resources for a transmission medium between subscribers and to allocate apportioned resources between multiple sub-flows.
- systems, methods, and computer readable media can operate to apportion available resources on a transmission medium between subscribers and to allocate the apportioned resources between various sub-flows.
- a transmission medium becomes congested, some data packets requested by subscribers are buffered or dropped rather than being transmitted in due course to the subscribers. Latency, or delay, created by the buffering of data packets can impede the use of applications that depend on low-latency packet flows (e.g., online gaming, video, voice, etc.), while other applications (e.g., FTP data transmissions) can run effectively with a buffered data flow.
- queuing all packets directly to sub-flows, without dropping or delaying any packets can solve the problem of dropping or delaying low-latency packets that exists in typical priority schedulers.
- a division of bandwidth between subscriber-flows can be accomplished by pulling packets from the subscriber-flows at an allowed rate (e.g., by pulling packets for each subscriber-flow from a low-latency queue first and a normal latency queue afterwards).
- IP data packets transmitted over the Internet can be encoded using a variety of signaling and transmission formats.
- IP internet protocol
- TCP transmission control protocol
- IP/IP transmission control protocol
- Routers typically play a significant role in receiving TCP/IP data packets and directing individual data packets to their appropriate destinations based on information carried in the header portion of each data packet. The information in the header portion can be used by routers not only for routing data packets but can also be used for enforcement of a desired quality of service (QoS).
- QoS quality of service
- header byte can be used for identifying various types of QoS services.
- This header byte has been defined and refined under different versions of the Internet Engineering Task Force (IETF) standards. Specifically, when used in IP version 4 (IPv4) applications, this header byte is often referred to as a type of service (TOS) packet header. When used in IP version 6 (IPv6) applications, the header byte may be referred to as a traffic class (TC) packet header.
- TLS traffic class
- the individual bits contained in the header byte are used in the same way in both IPv4 and IPv6.
- bits 0 - 5 six of the high-order bits (bits 0 - 5 ) are referred to as the differentiated services code point (DSCP) field, while the remaining two low-order bits (bits 5 and 6 ) are either left unused or sometimes used for explicit congestion notification (ECN) purposes.
- DSCP differentiated services code point
- ECN explicit congestion notification
- the DSCP field can be used for conveying QoS related information to one or more routers for purposes of carrying out tasks such as managing traffic congestion queues.
- a router can use the DSCP field to identify and provide precedence to certain types of data packets while dropping certain other types of data packets.
- a DSCP field can identify a data packet as either a low-latency packet or a normal-latency packet, and low-latency packets can be given priority over normal-latency packets during data transmission.
- FIG. 1 is a block diagram illustrating a network environment 100 operable to apportion a transmission medium's available resources between multiple subscribers and to allocate a subscriber's apportioned resources between a plurality of sub-flows.
- a headend 105 can provide video, data and/or voice service(s) to customer premise equipment (CPE) devices 110 a - d in one or more subscriber groups (e.g., service group(s)).
- the CPE devices can include, for example, a cable modem 110 a , a set top box 110 b , a wireless router including an embedded cable modem 110 c , or a media terminal adapter (MTA) 110 d , among others.
- MTA media terminal adapter
- a cable modem 110 a can facilitate communications between the headend 105 and a computer and/or a gaming console 115 a .
- a set top box 110 b can facilitate communications between the headend 105 and a television or a digital video recorder 115 b .
- a wireless router 110 c can facilitate wireless communications between a headend 105 and a computer and/or a gaming console 115 c .
- An MTA 110 d can facilitate communications between a headend 105 and a telephone 115 d.
- the CPE devices 110 a - d can communicate with the headend 105 via a hybrid fiber-coax (HFC) network 120 or any shared access broadband network.
- the headend 105 can include devices such as a cable modem termination system (CMTS) 125 and/or an edge quadrature amplitude modulation (EQAM) device (not shown), or a combined or converged device (not shown) including multiple edge and/or video or data processing functionalities.
- Headend devices can operate to facilitate communications between a network 130 and the CPE devices 110 a - d .
- the network 130 can include one or more networks internal to the headend and/or one or more networks external to the headend (e.g., one or more extranets, the Internet, etc.).
- Data services can be handled by the headend 105 through a CMTS 125 .
- the CMTS 125 can receive data signals from external device(s) or nodes through network(s) 130 .
- the network(s) 130 can operate using internet protocol (IP), sending data packets to and receiving data packets from the headend 105 .
- IP internet protocol
- the CMTS 125 can perform packet conversion and packet addressing functions. For example, the CMTS 125 can identify the destination of a data packet (e.g., the subscriber addressed by the data packet) and can direct the data packet to an appropriate data flow (e.g., the data flow destined for the subscriber addressed by the data packet). In various implementations, the CMTS can identify the level of QoS treatment to be received by a data packet and the CMTS can flag the data packet accordingly. For example, using differentiated services code point (DSCP), the CMTS can classify each received data packet as a packet to receive low-latency treatment or a packet to receive best-effort treatment. The CMTS can, for example, classify a received data packet by changing a specific header bit in the data packet.
- DSCP differentiated services code point
- the CMTS 125 can perform packet latency functions (e.g., buffering or dropping packets). For example, when a transmission medium becomes congested to the point that it is incapable of transmitting a downstream data flow at a rate equal to or greater than the rate at which the data flow is arriving at the CMTS, the CMTS can delay the transmission of data packets in the data flow. In various implementations, the CMTS can apportion the resources of a transmission medium between subscribers accessing data via the transmission medium.
- packet latency functions e.g., buffering or dropping packets
- the CMTS can apportion the resources of a transmission medium into equal shares based on the number of subscribers using the medium or can apportion the resources according to one or more service levels purchased by subscribers (e.g., one level of subscribers can pay more to receive data at a rate of 10 megabits per second (Mbps) while another level of subscribers can pay less to receive data at a rate of 7 Mbps, etc.).
- the CMTS can select data packets to delay based on the level of QoS associated with the data packets.
- the CMTS can delay the transmission of data packets that are to receive normal-latency treatment (e.g., low QoS treatment) rather than delay the transmission of data packets that are to receive low-latency treatment (e.g., higher QoS treatment).
- normal-latency treatment e.g., low QoS treatment
- low-latency treatment e.g., higher QoS treatment
- the CMTS 125 can determine how much bandwidth each downstream subscriber flow (e.g., subscriber, customer, etc.) is entitled to during periods in which the transmission medium becomes congested. In various implementations, the amount of bandwidth each downstream subscriber flow is entitled to can vary according to the demands from each of the subscriber flows. In some implementations, the allowed bitrate can be reduced to a percentage of the configured DOCSIS maximum-sustained-rate so that the total bandwidth stays within the capacity of the channel(s).
- the CMTS allows each subscriber flow 50% of its configured maximum-sustained-rate and if a particular subscriber flow has a configured maximum-sustained-rate of 6 megabits per second (Mbps), the particular subscriber flow will be allowed to transmit data at 3 Mbps based on the current level of congestion on the channel(s).
- the gaming traffic can be sent first so that the gaming traffic experiences no latency, and the video traffic experiences the full latency. Supposing that the channel congestion worsens and that the CMTS reduces the allowed bitrate of each subscriber flow further to 30% of the maximum-sustained-rate of each flow, then the particular subscriber flow will be allowed only 1.8 Mbps with which to transmit data packets in a downstream subscriber flow.
- latency the excess of the 2 Mbps requested for gaming over the 1.8 Mbps allowed
- the video flow will stop functioning because the gaming flow is using up all of the available bitrate for the particular subscriber.
- subscriber flows other than this particular subscriber flow will not be impacted because the prioritization of a low-latency data flow is only applicable up to the bitrate allowed to the particular subscriber flow, based on the current level of congestion on the transmission medium.
- FIG. 2 is a block diagram illustrating an example cable modem termination system 125 operable to apportion a transmission medium's available resources between multiple subscribers and to allocate a subscriber's apportioned resources between a plurality of sub-flows.
- the CMTS 125 can include a packet network interface 210 , an HFC network interface 220 , subscriber allocation logic 230 , sub-flow allocation logic 240 , a low-latency queue 250 , a normal-latency queue 260 , and queue selection logic 270 .
- the packet network interface 210 can be operable, for example, to receive IP packets from an IP network (e.g., the internet). The received packets can be transmitted to an entity (e.g., CPE device) connected to an HFC network (e.g., HFC network 120 of FIG. 1 ) or to the CMTS 125 itself.
- an entity e.g., CPE device
- HFC network e.g., HFC network 120 of FIG.
- the HFC network interface 220 can be operable to receive and transmit data over an HFC network.
- An HFC network typically operates by communicating DOCSIS packets from the CMTS to CPE devices using radio frequency (RF) signals.
- the HFC interface 220 can include components operable to encapsulate IP packets to produce DOCSIS packets.
- the HFC interface 220 can also operate to modulate the DOCSIS packets associated with one or more flows onto a RF channel and to multiplex or combine multiple RF channels for transmission over the HFC network.
- the HFC interface 220 can also operate to demodulate RF channels in order to recover DOCSIS packets received from subscriber devices (e.g., CPE devices 110 a - d ).
- the modulation and demodulation functions can be performed by an external device (e.g., a quadrature amplitude modulator (QAM) device).
- QAM quadrature amplitude modulator
- Subscriber allocation logic 230 can be operable to assign a data packet to a specific data flow. For example, subscriber allocation logic can identify the destination (e.g., the subscriber or CPE device) associated with a data packet and can place the data packet into a data flow having the same destination as the data packet. In some implementations, subscriber allocation logic can determine whether the data flow can be apportioned into sub-flows. For example, some types of data packets can be subject to apportionment (e.g., data packets associated with online gaming, browser downloads/applications, etc.) while other types of data packets can be subject to transmission via a primary data flow rather than one of a plurality of sub-flows (e.g., VoIP, IPTV, etc.).
- a primary data flow rather than one of a plurality of sub-flows (e.g., VoIP, IPTV, etc.).
- the service of assigning data packets to one or more of a plurality of sub-flows associated with a data flow destined for a subscriber can be offered to the subscriber at a premium.
- the data packet can be sent from the subscriber allocation logic 230 to sub-flow allocation logic 240 .
- the data packet can be transmitted to the subscriber in a primary data flow via the HFC interface 220 .
- Subscriber allocation logic 230 can, in some implementations, process data requests from one or more subscribers and allocate available resources on a transmission medium between the data requests. For example, subscriber allocation logic can establish a data flow associated with each of the subscribers and can apportion available resources associated with a transmission medium between the data flows based on the number of subscribers accessing the medium (e.g., for a transmission medium capable of transmitting data at a rate of 100 Mbps that is servicing 10 subscribers, subscriber allocation logic can establish a data flow capable of transmitting data at a rate of 10 Mbps for each subscriber accessing the medium).
- Sub-flow allocation logic 240 can be operable to assign a data packet to a specific data sub-flow.
- sub-flow allocation logic can receive a primary data flow from subscriber allocation logic 230 , and the sub-flow allocation logic can apportion the primary data flow into a plurality of sub-flows.
- sub-flow allocation logic can split a primary data flow into a sub-flow containing low-latency data packets and another sub-flow containing normal-latency data packets.
- sub-flow allocation logic 240 can be operable to classify and/or flag a data packet based on the latency that is to be received by the data packet (e.g., classified or flagged as a low-latency packet or a normal-latency packet). For example, sub-flow allocation logic can identify the type of application requesting the data packet (e.g., online game, file download, etc.), determine whether the identified type is dependent on receiving a data flow with minimal delays, and can classify and/or flag the data packet appropriately.
- the type of application requesting the data packet e.g., online game, file download, etc.
- the determination whether a type of application is dependent on receiving a data flow with minimal delays can be based on a variety of factors and/or parameters including whether the application involves interactions between multiple locations or users, a threshold rate at which data needs to be received to support the application, or a level of priority given to the type of application, as well as others.
- a data flow can be classified as low-latency or normal-latency based upon the type of application requesting the data flow and/or the type of device requesting the data flow.
- data flows can be dynamically classified and reclassified in and out of a low-latency or normal-latency classification based on a change in the device requesting the data flow or a change in the application requesting the data flow.
- a data flow can be statically assigned to be a low-latency or normal-latency flow.
- Sub-flow allocation logic 240 can also be operable to send a data packet to an appropriate queue based on a data sub-flow assigned to the data packet and/or latency classification.
- sub-flow allocation logic can direct separate sub-flows into separate queues. For example, sub-flow allocation logic can direct a sub-flow containing low-latency data packets into a low-latency queue 250 and can direct a sub-flow containing normal-latency data packets into a normal-latency queue 260 .
- CMTS 125 can include a multitude of various levels of queues that are associated with a variety of data packet classifications (e.g., latency, bitrate, etc.).
- Queue selection logic 270 can include a packet transmission scheduling algorithm, and can be operable to select data packets from one or more queues and to transmit selected data packets downstream to a subscriber.
- queue selection logic can prioritize the one or more queues and can select and transmit data packets in a higher priority queue before selecting and transmitting data packets in a lower priority queue.
- queue selection logic can prioritize the low-latency queue 250 over the normal-latency queue 260 and can accordingly select and transmit data packets from the low-latency queue before selecting and transmitting data packets from the normal-latency queue.
- queue selection logic 270 can apportion a subscriber's allocated resources (e.g., resources allocated to the subscriber by subscriber allocation logic 230 ) between sub-flows containing data packets addressed to that subscriber. For example, when data addressed to a subscriber arrives at a rate greater than the bitrate that is allocated to the subscriber, the queue selection logic can use the subscriber's allowed bitrate to transmit data packets from the low-latency queue and can delay the transmission of data packets in the normal-latency queue where the subscriber's remaining bitrate, if any, is less than the rate at which normal-latency data packets are arriving for the subscriber.
- resources e.g., resources allocated to the subscriber by subscriber allocation logic 230
- the queue selection logic can use the subscriber's allowed bitrate to transmit data packets from the low-latency queue and can delay the transmission of data packets in the normal-latency queue where the subscriber's remaining bitrate, if any, is less than the rate at which normal-latency data packet
- queue selection logic 270 can cap the bitrate available to transmit data packets in the low-latency queue 250 .
- queue selection logic can cap the apportionment to the low-latency queue at a percentage of the total bitrate allocated to a subscriber.
- the cap implemented by the queue selection logic can be based on predetermined or variable factors or parameters.
- FIG. 3 is a flowchart illustrating a process 300 operable to assign a data packet to one of a plurality of data sub-flows.
- the process 300 can start at stage 305 when data packets addressed to a certain subscriber are received by a CMTS (e.g., CMTS 125 of FIG. 1 ).
- CMTS e.g., CMTS 125 of FIG. 1
- the data packets addressed to a certain subscriber can be data packets that are requested by the subscriber.
- the data packets addressed to a certain subscriber can be generated and addressed to the subscriber without being requested by the subscriber (e.g., multicast data packets).
- the process 300 proceeds to stage 310 .
- the data packets are assigned to a subscriber flow.
- the data packets can be assigned to a subscriber flow, for example, by subscriber allocation logic (e.g., subscriber allocation logic 230 of FIG. 2 ).
- the data packets can be received from a network (e.g., IP network) via a packet network interface (e.g., packet network interface 210 of FIG. 2 ).
- subscriber allocation logic can identify or otherwise direct the received data packets to the appropriate subscriber.
- stage 315 a determination is made whether the subscriber flow can be apportioned into sub-flows. This determination can be made, for example, by subscriber allocation logic (e.g., subscriber allocation logic 230 of FIG. 2 ). In some implementations, the determination whether a subscriber flow can be apportioned into sub-flows can be based on the type of application generating the data packets, the type of device to which the data packets are destined, the particular subscriber addressed by the data packets, and/or other factors or parameters.
- subscriber allocation logic e.g., subscriber allocation logic 230 of FIG. 2
- the determination whether a subscriber flow can be apportioned into sub-flows can be based on the type of application generating the data packets, the type of device to which the data packets are destined, the particular subscriber addressed by the data packets, and/or other factors or parameters.
- the service of prioritizing low-latency data flows for a subscriber can be offered by an MSO to subscribers who pay a premium for the service.
- the service of prioritizing low-latency data flows can be offered by an MSO for certain applications or devices. If a determination is made that the subscriber flow cannot be apportioned, the process 300 proceeds to stage 320 .
- the data packets in the subscriber flow are queued in a non-apportioned data flow (e.g., a single data flow comprising all of the data packets addressed to a subscriber, regardless of differences between the latency treatment associated with each data packet).
- the process 300 can end at stage 335 .
- each data packet in the subscriber flow is assigned to one of a plurality of data sub-flows.
- each data packet can be flagged or classified as either a low-latency or normal-latency data packet.
- Data packets can be flagged or classified as either low-latency or normal-latency, for example, by sub-flow allocation logic (e.g., sub-flow allocation logic 240 of FIG. 2 ).
- sub-flow allocation logic can be operable to classify data packets into a variety of classifications other than low-latency or normal-latency.
- data packets can be classified based on the QoS to be given to the data packets, the bitrate associated with the request for the data packets, as well as other classifications associated with data packets.
- data packets can be classified into three or more levels of priority, such that the highest priority receives low-latency treatment during extreme congestion of the transmission medium.
- each data packet is sent to an appropriate queue.
- Each data packet can be sent to a queue, for example, by sub-flow allocation logic (e.g., sub-flow allocation logic 240 of FIG. 2 ).
- sub-flow allocation logic can send data packets of the same type (e.g., low-latency or normal-latency) to the same queue.
- sub-flow allocation logic can send data packets classified as low-latency data packets to a low-latency queue (e.g., low-latency queue 250 of FIG.
- normal-latency queue 260 of FIG. 2 can send data packets classified as normal-latency data packets to a normal-latency queue (e.g., normal-latency queue 260 of FIG. 2 ).
- data packets can be sent to a variety of queues and can be classified based on a variety of factors or parameters (e.g., narrowed latency priority levels, QoS treatment, requested bitrate, etc.).
- separate queues can be established for each subscriber flow (e.g., each subscriber flow can have a low-latency and a normal-latency queue). After each data packet is sent to the appropriate queue, the process 300 ends at stage 335 .
- FIG. 4 is a flowchart illustrating a process 400 operable to apportion available resources for a transmission medium between subscribers and to allocate apportioned resources between a plurality of data sub-flows.
- the process 400 can start at stage 405 when a channel from which to transmit one or more data packets is selected.
- a channel from which to transmit one or more data packets can be selected, for example, by a CMTS (e.g., CMTS 125 of FIG. 1 ).
- a subscriber flow is selected for use in transmitting one or more data packets.
- a subscriber flow can be selected, for example, by queue selection logic (e.g., queue selection logic 270 of FIG. 2 ).
- the subscriber flow can be selected based on the bitrate allowed for the subscriber flow and the current level of congestion of the transmission medium servicing the subscriber flow.
- stage 415 a determination is made whether a low-latency packet is present in the low-latency queue. This determination can be made, for example, by queue selection logic (e.g., queue selection logic 270 of FIG. 2 ). If there is a low-latency packet in the low-latency queue, the process 400 proceeds to stage 420 .
- the low-latency packet is sent downstream to the appropriate subscriber. The low-latency packet can be sent downstream, for example, by queue selection logic via an interface (e.g., HFC interface 220 of FIG. 2 ). After the low-latency packet is sent downstream, the process 400 ends at stage 430 .
- stage 415 a determination is made that there is not a low-latency packet in the low-latency queue
- the process 400 proceeds to stage 425 .
- stage 425 a determination is made whether a normal-latency packet is present in the normal-latency queue. The determination whether a normal-latency packet is present in the normal-latency queue can be made, for example, by queue selection logic (e.g., queue selection logic 270 of FIG. 2 ). If there is a normal-latency packet in the normal-latency queue, the process 400 proceeds to stage 420 .
- the normal-latency packet is sent downstream to the appropriate subscriber. The normal-latency packet can be sent downstream, for example, by queue selection logic via an interface (e.g., HFC interface 220 of FIG. 2 ). After the normal-latency packet is sent downstream, the process 400 ends at stage 430 .
- stage 425 If at stage 425 , a determination is made that there is not a normal-latency packet in the normal-latency queue, the process 400 ends at stage 430 . It should be understood that this is a simplification of the packet flow classification assignment and apportionment process for illustrative purposes. In normal operation, packets are being regularly received for multiple flows concurrently, and the process typically continues to receive new packets for classification and assignment.
- process 400 can include the additional stages of identifying one or more other queues, prioritizing the other queues, determining whether data packets are present in the other queues, and/or transmitting data packets from the other queues downstream.
- FIG. 5 is a block diagram of a hardware configuration 500 operable to apportion a transmission medium's available resources between multiple subscribers and to allocate a subscriber's apportioned resources between a plurality of sub-flows. While a CMTS is shown, it should be understood that other kinds of devices can be operable to facilitate apportioning a transmission medium's available resources between multiple subscribers and allocating a subscriber's apportioned resources between a plurality of sub-flows.
- the hardware configuration 500 can include a processor 510 , memory 520 , a data storage unit 530 , and an input/output device 540 .
- Each of the components 510 , 520 , 530 , and 540 can, for example, be interconnected using a system bus 550 .
- the processor 510 can be capable of processing instructions for execution within the hardware configuration 500 .
- the processor 510 can be a single-threaded processor.
- the processor 510 can be a multi-threaded processor.
- the processor 510 can be capable of processing instructions stored in the memory 520 or on the data storage unit 530 .
- the memory 520 can store information within the hardware configuration 500 .
- the memory 520 can be a computer-readable medium.
- the memory 520 can be a volatile memory unit.
- the memory 520 can be a non-volatile memory unit.
- the memory can be used to store computer program instructions and logic (e.g., subscriber allocation logic 230 of FIG. 2 , sub-flow allocation logic 240 , queue selection logic 270 , etc.).
- the storage unit 530 can be capable of providing mass storage for the hardware configuration 500 .
- the storage unit 530 can be a computer-readable medium.
- the storage unit 530 can, for example, include a hard disk device, an optical disk device, flash memory or some other large capacity storage device.
- the storage unit 530 can be a device external to the hardware configuration 500 .
- the input/output device 540 can provide input/output operations for the hardware configuration 500 .
- the input/output device 540 can include one or more of a network interface device (e.g., an Ethernet card), a serial communication device (e.g., an RS-232 port), one or more universal serial bus (USB) interfaces (e.g., a USB 2.0 port) and/or a wireless interface device (e.g., an 802.11 card).
- the input/output device can include an interface device operable to communicate with CPE devices through a content delivery network (e.g., HFC network 120 ).
- the input/output device can include driver devices configured to request and to receive data from one or more networks 130 .
- Such instructions can, for example, comprise interpreted instructions, such as script instructions, e.g., JavaScript or ECMAScript instructions, or executable code, or other instructions stored in a computer readable medium.
- Implementations of the subject matter and the functional operations described in this specification can be provided in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them.
- Embodiments of the subject matter described in this specification can be implemented as one or more computer program products, i.e., one or more modules of computer program instructions encoded on a tangible program carrier for execution by, or to control the operation of, data processing apparatus.
- the tangible program carrier can be a propagated signal or a computer readable medium.
- the propagated signal is an artificially generated signal (e.g., a machine generated electrical, optical, or electromagnetic signal) that is generated to encode information for transmission to suitable receiver apparatus for execution by a computer.
- the computer readable medium can be a machine readable storage device, a machine readable storage substrate, a memory device, a composition of matter effecting a machine readable propagated signal, or a combination of one or more of them.
- system processor encompasses all apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, or multiple processors or computers.
- the system processor can include, in addition to hardware, code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of them.
- a computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.
- a computer program does not necessarily correspond to a file in a file system.
- a program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub programs, or portions of code).
- a computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
- the processes and logic flows described in this specification are performed by one or more programmable processors executing one or more computer programs to perform functions by operating on input data and generating output thereby tying the process to a particular machine (e.g., a machine programmed to perform the processes described herein).
- the processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application specific integrated circuit).
- processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer.
- a processor will receive instructions and data from a read only memory or a random access memory or both.
- the elements of a computer typically include a processor for performing instructions and one or more memory devices for storing instructions and data.
- a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto optical disks, or optical disks.
- mass storage devices for storing data, e.g., magnetic, magneto optical disks, or optical disks.
- a computer need not have such devices.
- a computer can be embedded in another device, e.g., a mobile communications device, a telephone, a cable modem, a set-top box, a mobile audio or video player, or a game console, to name just a few
- Computer readable media suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices (e.g., EPROM, EEPROM, and flash memory devices); magnetic disks (e.g., internal hard disks or removable disks); magneto optical disks; and CD ROM and DVD ROM disks.
- semiconductor memory devices e.g., EPROM, EEPROM, and flash memory devices
- magnetic disks e.g., internal hard disks or removable disks
- magneto optical disks e.g., CD ROM and DVD ROM disks.
- the processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims (16)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/772,486 US9270616B1 (en) | 2013-02-21 | 2013-02-21 | Low-latency quality of service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/772,486 US9270616B1 (en) | 2013-02-21 | 2013-02-21 | Low-latency quality of service |
Publications (1)
Publication Number | Publication Date |
---|---|
US9270616B1 true US9270616B1 (en) | 2016-02-23 |
Family
ID=55314796
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/772,486 Active 2033-07-14 US9270616B1 (en) | 2013-02-21 | 2013-02-21 | Low-latency quality of service |
Country Status (1)
Country | Link |
---|---|
US (1) | US9270616B1 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150110132A1 (en) * | 2013-10-21 | 2015-04-23 | Broadcom Corporation | Dynamically tunable heterogeneous latencies in switch or router chips |
WO2017196362A1 (en) * | 2016-05-13 | 2017-11-16 | Nokia Technologies Oy | Mmwave 5g air-interface radio resource control states |
WO2021066282A1 (en) * | 2019-10-02 | 2021-04-08 | 엘지전자 주식회사 | Buffer report for low latency |
US12081459B2 (en) | 2019-10-17 | 2024-09-03 | Charter Communications Operating, Llc | Method and apparatus for transporting data traffic using classifications |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010040697A1 (en) * | 2000-03-06 | 2001-11-15 | Wu Chun-Chu Archie | Hierarchical fax-through data network and remote access network appliance control apparatus and method |
US20020186661A1 (en) * | 2001-05-04 | 2002-12-12 | Terago Communications, Inc. | System and method for hierarchical policing of flows and subflows of a data stream |
US20030161303A1 (en) * | 2002-02-22 | 2003-08-28 | Nortel Networks Limited | Traffic switching using multi-dimensional packet classification |
US20050100022A1 (en) * | 2003-11-12 | 2005-05-12 | Ramprashad Sean A. | Media delivery using quality of service differentiation within a media stream |
US20050249114A1 (en) * | 2004-01-30 | 2005-11-10 | Mitsubishi Denki Kabushiki Kaisha | Method and device of dynamic resource allocation in a wireless network |
US20070058677A1 (en) * | 2005-09-14 | 2007-03-15 | Electronics And Telecommunications Research Institute | Service providing method based on service subscriber level on cable network |
US20080056125A1 (en) * | 2006-09-06 | 2008-03-06 | Nokia Corporation | Congestion control in a wireless network |
US20090028151A1 (en) * | 2007-07-27 | 2009-01-29 | Schmidt Brian K | Packet level prioritization in interconnection networks |
US7558247B2 (en) * | 2004-01-09 | 2009-07-07 | Lg Electronics Inc. | Optimized radio bearer configuration for voice over IP |
US20090323525A1 (en) * | 2008-06-27 | 2009-12-31 | Charles Chen | Priority aware policer and method of priority aware policing |
US7948883B1 (en) * | 2007-07-12 | 2011-05-24 | Cisco Technology, Inc. | Applying router quality of service on a cable modem interface on a per-service-flow basis |
US8045561B1 (en) * | 2008-04-30 | 2011-10-25 | Clear Wireless Llc | Two stage traffic scheduling |
US20130003545A1 (en) * | 2011-06-30 | 2013-01-03 | Broadcom Corporation | Providing quality of service for sub-flows in a multiple grants per interval service flow |
US20130066674A1 (en) * | 2011-09-12 | 2013-03-14 | Microsoft Corporation | Marketplace for timely event data distribution |
US20130077486A1 (en) * | 2011-06-27 | 2013-03-28 | Seth Keith | Prioritizing classes of network traffic to provide a predetermined quality of service |
US20130128735A1 (en) * | 2010-12-17 | 2013-05-23 | Microsoft Corporation | Universal rate control mechanism with parameter adaptation for real-time communication applications |
US20130182573A1 (en) * | 2010-09-28 | 2013-07-18 | British Telecommunications Public Limited Company | Multi-class data transport |
US20150009826A1 (en) * | 2012-02-17 | 2015-01-08 | Vid Scale, Inc | Hierarchical traffic differentiation to handle congestion and/or manage user quality of experience |
-
2013
- 2013-02-21 US US13/772,486 patent/US9270616B1/en active Active
Patent Citations (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010040697A1 (en) * | 2000-03-06 | 2001-11-15 | Wu Chun-Chu Archie | Hierarchical fax-through data network and remote access network appliance control apparatus and method |
US20020186661A1 (en) * | 2001-05-04 | 2002-12-12 | Terago Communications, Inc. | System and method for hierarchical policing of flows and subflows of a data stream |
US7688853B2 (en) * | 2001-05-04 | 2010-03-30 | Slt Logic, Llc | System and method for hierarchical policing of flows and subflows of a data stream |
US20060087969A1 (en) * | 2001-05-04 | 2006-04-27 | Slt Logic Llc | System and method for hierarchical policing of flows and subflows of a data stream |
US20030161303A1 (en) * | 2002-02-22 | 2003-08-28 | Nortel Networks Limited | Traffic switching using multi-dimensional packet classification |
US20050100022A1 (en) * | 2003-11-12 | 2005-05-12 | Ramprashad Sean A. | Media delivery using quality of service differentiation within a media stream |
US7558247B2 (en) * | 2004-01-09 | 2009-07-07 | Lg Electronics Inc. | Optimized radio bearer configuration for voice over IP |
US20050249114A1 (en) * | 2004-01-30 | 2005-11-10 | Mitsubishi Denki Kabushiki Kaisha | Method and device of dynamic resource allocation in a wireless network |
US20070058677A1 (en) * | 2005-09-14 | 2007-03-15 | Electronics And Telecommunications Research Institute | Service providing method based on service subscriber level on cable network |
US20080056125A1 (en) * | 2006-09-06 | 2008-03-06 | Nokia Corporation | Congestion control in a wireless network |
US20110194411A1 (en) * | 2007-07-12 | 2011-08-11 | Cisco Technology, Inc. | Applying router quality of service on a cable modem interface on a per-service-flow basis |
US7948883B1 (en) * | 2007-07-12 | 2011-05-24 | Cisco Technology, Inc. | Applying router quality of service on a cable modem interface on a per-service-flow basis |
US20090028151A1 (en) * | 2007-07-27 | 2009-01-29 | Schmidt Brian K | Packet level prioritization in interconnection networks |
US7911956B2 (en) * | 2007-07-27 | 2011-03-22 | Silicon Image, Inc. | Packet level prioritization in interconnection networks |
US8045561B1 (en) * | 2008-04-30 | 2011-10-25 | Clear Wireless Llc | Two stage traffic scheduling |
US20090323525A1 (en) * | 2008-06-27 | 2009-12-31 | Charles Chen | Priority aware policer and method of priority aware policing |
US20130182573A1 (en) * | 2010-09-28 | 2013-07-18 | British Telecommunications Public Limited Company | Multi-class data transport |
US20130128735A1 (en) * | 2010-12-17 | 2013-05-23 | Microsoft Corporation | Universal rate control mechanism with parameter adaptation for real-time communication applications |
US20130077486A1 (en) * | 2011-06-27 | 2013-03-28 | Seth Keith | Prioritizing classes of network traffic to provide a predetermined quality of service |
US20130003545A1 (en) * | 2011-06-30 | 2013-01-03 | Broadcom Corporation | Providing quality of service for sub-flows in a multiple grants per interval service flow |
US20130066674A1 (en) * | 2011-09-12 | 2013-03-14 | Microsoft Corporation | Marketplace for timely event data distribution |
US20150009826A1 (en) * | 2012-02-17 | 2015-01-08 | Vid Scale, Inc | Hierarchical traffic differentiation to handle congestion and/or manage user quality of experience |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150110132A1 (en) * | 2013-10-21 | 2015-04-23 | Broadcom Corporation | Dynamically tunable heterogeneous latencies in switch or router chips |
US9722954B2 (en) * | 2013-10-21 | 2017-08-01 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Dynamically tunable heterogeneous latencies in switch or router chips |
WO2017196362A1 (en) * | 2016-05-13 | 2017-11-16 | Nokia Technologies Oy | Mmwave 5g air-interface radio resource control states |
WO2021066282A1 (en) * | 2019-10-02 | 2021-04-08 | 엘지전자 주식회사 | Buffer report for low latency |
US12081459B2 (en) | 2019-10-17 | 2024-09-03 | Charter Communications Operating, Llc | Method and apparatus for transporting data traffic using classifications |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8971184B2 (en) | Latency based random early discard for network packets | |
JP5659125B2 (en) | Relay device and relay method | |
US8908522B2 (en) | Transmission rate control | |
US9185004B2 (en) | Quality of service for distribution of content to network devices | |
US8923131B2 (en) | Traffic management in a multi-channel system | |
US10187711B2 (en) | Time allocation for network transmission | |
Zinner et al. | Dynamic application-aware resource management using software-defined networking: Implementation prospects and challenges | |
US9917779B2 (en) | Alleviating congestion in a cable modem | |
US8547846B1 (en) | Method and apparatus providing precedence drop quality of service (PDQoS) with class-based latency differentiation | |
KR102107514B1 (en) | Method and apparatus for managing dynamic que in broadcasting system | |
US20120176903A1 (en) | Non-uniform per-packet priority marker for use with adaptive protocols | |
US9270616B1 (en) | Low-latency quality of service | |
CN1452403A (en) | Data packet-oriented data network process and controller for transmission of data in changeable time slot | |
US20240430833A1 (en) | Time allocation for network transmission | |
EP2773053A1 (en) | Hybrid cable-wireless system | |
Eckert et al. | Quality of service (QoS) | |
US9363202B1 (en) | Low-latency cost-effective upstream scheduler | |
US11889134B2 (en) | System for queuing flows to channels | |
US8908518B1 (en) | Service class ID for multimedia streams over IP networks | |
EP2991295A1 (en) | System and method for handling data flows in an access network | |
US20120201129A1 (en) | Stateless admission control | |
US20240259289A1 (en) | Provisioning low latency services in cable television (catv) networks compliant with low latency docsis (lld) | |
US20250007847A1 (en) | Automatically provisioning low latency services in cable television (catv) networks compliant with low latency docsis (lld) | |
US11038811B2 (en) | Waterfall granting | |
Chu et al. | A novel mechanism for providing service differentiation over CATV network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ARRIS GROUP, INC., GEORGIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:COTTER, ANTHONY JOHN;REEL/FRAME:029856/0238 Effective date: 20130222 |
|
AS | Assignment |
Owner name: ARRIS ENTERPRISES, INC., GEORGIA Free format text: MERGER;ASSIGNOR:ARRIS GROUP, INC.;REEL/FRAME:030228/0388 Effective date: 20130416 |
|
AS | Assignment |
Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, ILLINOIS Free format text: SECURITY AGREEMENT;ASSIGNORS:ARRIS GROUP, INC.;ARRIS ENTERPRISES, INC.;ARRIS SOLUTIONS, INC.;AND OTHERS;REEL/FRAME:030498/0023 Effective date: 20130417 Owner name: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT, IL Free format text: SECURITY AGREEMENT;ASSIGNORS:ARRIS GROUP, INC.;ARRIS ENTERPRISES, INC.;ARRIS SOLUTIONS, INC.;AND OTHERS;REEL/FRAME:030498/0023 Effective date: 20130417 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: ARRIS ENTERPRISES LLC, PENNSYLVANIA Free format text: CHANGE OF NAME;ASSIGNOR:ARRIS ENTERPRISES INC;REEL/FRAME:041995/0031 Effective date: 20151231 |
|
AS | Assignment |
Owner name: ACADIA AIC, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: BROADBUS TECHNOLOGIES, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: QUANTUM BRIDGE COMMUNICATIONS, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: GENERAL INSTRUMENT CORPORATION, PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: MODULUS VIDEO, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: POWER GUARD, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: SETJAM, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: LEAPSTONE SYSTEMS, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: NETOPIA, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: ARRIS GROUP, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: AEROCAST, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: ARRIS KOREA, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: IMEDIA CORPORATION, PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: ARRIS ENTERPRISES, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: 4HOME, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: ARRIS HOLDINGS CORP. OF ILLINOIS, INC., PENNSYLVAN Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: BIG BAND NETWORKS, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: GIC INTERNATIONAL CAPITAL LLC, PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: GENERAL INSTRUMENT AUTHORIZATION SERVICES, INC., P Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: MOTOROLA WIRELINE NETWORKS, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: TEXSCAN CORPORATION, PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: THE GI REALTY TRUST 1996, PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: SUNUP DESIGN SYSTEMS, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: GENERAL INSTRUMENT INTERNATIONAL HOLDINGS, INC., P Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: ARRIS SOLUTIONS, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: CCE SOFTWARE LLC, PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: NEXTLEVEL SYSTEMS (PUERTO RICO), INC., PENNSYLVANI Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: UCENTRIC SYSTEMS, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: JERROLD DC RADIO, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: GIC INTERNATIONAL HOLDCO LLC, PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: ARRIS HOLDINGS CORP. OF ILLINOIS, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: GENERAL INSTRUMENT AUTHORIZATION SERVICES, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: GENERAL INSTRUMENT INTERNATIONAL HOLDINGS, INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 Owner name: NEXTLEVEL SYSTEMS (PUERTO RICO), INC., PENNSYLVANIA Free format text: TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS;ASSIGNOR:BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT;REEL/FRAME:048825/0294 Effective date: 20190404 |
|
AS | Assignment |
Owner name: ARRIS ENTERPRISES LLC, GEORGIA Free format text: CHANGE OF NAME;ASSIGNOR:ARRIS ENTERPRISES, INC.;REEL/FRAME:049586/0470 Effective date: 20151231 |
|
AS | Assignment |
Owner name: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATE Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:ARRIS ENTERPRISES LLC;REEL/FRAME:049820/0495 Effective date: 20190404 Owner name: JPMORGAN CHASE BANK, N.A., NEW YORK Free format text: ABL SECURITY AGREEMENT;ASSIGNORS:COMMSCOPE, INC. OF NORTH CAROLINA;COMMSCOPE TECHNOLOGIES LLC;ARRIS ENTERPRISES LLC;AND OTHERS;REEL/FRAME:049892/0396 Effective date: 20190404 Owner name: JPMORGAN CHASE BANK, N.A., NEW YORK Free format text: TERM LOAN SECURITY AGREEMENT;ASSIGNORS:COMMSCOPE, INC. OF NORTH CAROLINA;COMMSCOPE TECHNOLOGIES LLC;ARRIS ENTERPRISES LLC;AND OTHERS;REEL/FRAME:049905/0504 Effective date: 20190404 Owner name: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT, CONNECTICUT Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:ARRIS ENTERPRISES LLC;REEL/FRAME:049820/0495 Effective date: 20190404 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |
|
AS | Assignment |
Owner name: WILMINGTON TRUST, DELAWARE Free format text: SECURITY INTEREST;ASSIGNORS:ARRIS SOLUTIONS, INC.;ARRIS ENTERPRISES LLC;COMMSCOPE TECHNOLOGIES LLC;AND OTHERS;REEL/FRAME:060752/0001 Effective date: 20211115 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |
|
AS | Assignment |
Owner name: APOLLO ADMINISTRATIVE AGENCY LLC, NEW YORK Free format text: SECURITY INTEREST;ASSIGNORS:ARRIS ENTERPRISES LLC;COMMSCOPE TECHNOLOGIES LLC;COMMSCOPE INC., OF NORTH CAROLINA;AND OTHERS;REEL/FRAME:069889/0114 Effective date: 20241217 |