US20120131466A1 - User-Based Monitoring and Control - Google Patents
User-Based Monitoring and Control Download PDFInfo
- Publication number
- US20120131466A1 US20120131466A1 US13/302,051 US201113302051A US2012131466A1 US 20120131466 A1 US20120131466 A1 US 20120131466A1 US 201113302051 A US201113302051 A US 201113302051A US 2012131466 A1 US2012131466 A1 US 2012131466A1
- Authority
- US
- United States
- Prior art keywords
- customer
- instructions
- network
- service point
- customer service
- 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.)
- Abandoned
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B25/00—Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems
- G08B25/14—Central alarm receiver or annunciator arrangements
-
- G—PHYSICS
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B25/00—Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems
- G08B25/01—Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems characterised by the transmission medium
- G08B25/08—Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems characterised by the transmission medium using communication transmission lines
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/06—Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/53—Network services using third party service providers
Definitions
- the present disclosure may be related to the following commonly assigned applications/patents:
- the present disclosure relates, in general, to computer networks, and more particularly, to tools and techniques for providing customers of an Internet service provider with enhanced monitoring and control over their Internet connections.
- Broadband Internet access has become nearly ubiquitous in most industrialized countries.
- Broadband providers employ a variety of technologies, including without limitation digital subscriber line (“xDSL”) technologies, cable more (e.g., “DOCSIS”) technologies, wireless broadband technologies, and the like.
- xDSL digital subscriber line
- DOCSIS cable more
- wireless broadband technologies and the like.
- broadband access is offered using a tiered structure, in which the subscriber (referred to herein as a “customer”) receives a certain allocated bandwidth in return for a given fee (such as a monthly flat fee).
- VoIP voice over Internet protocol
- video on demand applications and/or network games impose requirements on throughput and/or latency.
- different applications often will impose different requirements for throughput and latency, respectively.
- a video on demand might not require particularly low network latency but might require relatively high throughput.
- a network game might not require particularly high throughput but might require relatively low latency.
- VoIP telephony might require relatively constant (although not particularly high) throughput and relatively low latency.
- QoS quality of service
- One type of QoS feature commonly implemented is the distinction between multiple classes of service to provide traffic prioritization between different types of network traffic received by the access network from a customer premises.
- providers lack adequate facilities to provide customer feedback regarding network performance and utilization, even though the customer might know the capacity it has agreed to purchase from the provider. For example, if a customer purchases generic Internet access for a multiple-computer home network, neither the customer nor any individual computer attached to the home network has any ide of the amount of composite network traffic between the customer's Internet Service and the access network.
- the customer is provided with little (or no) feedback on how those classes of service affect the capacity of the customer's broadband connection.
- IP Internet protocol
- IP protocols are generally designed to share the available bandwidth and ‘adjust” to each other, when a congestion event occurs all the traffic using that same class of service, or a lower class, experiences congestion. In other words, there is no concept of “busy” or in use status when it comes to IP protocols today. The fact that no single customer device sees all the composite traffic flow makes this a very difficult problem for the customer or provider to address.
- Certain embodiments therefore, provide tools and techniques to give a customer greater visibility into network performance and/or utilization, particularly with respect to the customer's broadband connection to a provider's access network (and/or the Internet more generally).
- some embodiments can track the amount of bandwidth (capacity) assigned to each class of service on a customer's broadband connection, and/or the bandwidth available to each of the devices on the customer's premises network. These values can be used as inputs to a state machine that governs the use of the broadband connection.
- embodiments might track the utilized throughput in each class of service (or overall) through the broadband connection and/or to each customer device. Similarly, some embodiments might track the utilized state at a residential gateway and/or various points in the access network and serve as a signaling point for customer applications (or customers themselves) to determine the line state of their connection and/or devices. In some cases, for example, an embodiment might provide an API for applications to access the signaling point. In other cases, an embodiment might employ a user interface to allow the customer himself or herself to view the line state.
- a signaling point might track throughput at either end of the access network, and/or at the residential gateway and one or more customer devices.
- the signaling point might provide alarms for packet loss conditions and/or busy indicators, which can serve as a “busy signal” for the customer and/or any applications, to let the application/customer know whether there is sufficient bandwidth available to start another network session or if the customer's WiFi connection has degraded (or been consumed) to a point where it will experience congestion.
- Customer applications might be configured to communicate with the signaling point to obtain network performance and/or utilization information. This functionality can enable near-real-time utilization and/performance reporting, along with visual feedback, on network conditions (including packet loss conditions) with respect to the customer's broadband connection and/or premises network, either overall or for particular classes of service.
- a signaling point might be implemented at a residential gateway and/or a network interface device.
- Such devices can include, without limitation, broadband modems, interfaces between the customer's premises network and the access network, and/or the like.
- a signaling point might be located in the access network itself, and/or it might be configured to communicate with a customer's residential gateway, network interface device, and/or any customer devices on the customer premises network.
- a method might comprise one or more procedures, any or all of which are executed by a computer system.
- an embodiment might provide a computer system configured with instructions to perform one or more procedures in accordance with methods provided by various other embodiments.
- a computer program might comprise a set of instructions that are executable by a computer system (and/or a processor therein) to perform such operations.
- software programs are encoded on physical, tangible and/or non-transitory computer readable media (such as, to name but a few examples, optical media, magnetic media, and/or the like).
- one set of embodiments provide customer service points that can provide customers with monitoring and control over network settings.
- An exemplary customer service point might comprise a first communication interface, a second communication interface, and/or one or more processors in communication with the first and second communication interfaces.
- the customer service point might further comprise a computer readable medium in communication with the one or more processors.
- the computer readable medium in an aspect, might have encoded thereon a set of instructions executable by the computer system to perform one or more operations.
- the set of instructions might comprise instructions for communicating with the Internet via the first communication interface, and/or instructions for communicating with the customer device via the second communication interface.
- the set of instructions can also include instructions for maintaining a class of service state for a connection between the customer device and the Internet, instructions for receiving, from the customer, configuration information for configuring the class of service state, and/or instructions for modifying the class of service state in response to receiving the configuration information.
- the set of instructions further comprises instructions for determining one or more network performance statistics pertaining to network performance between the customer device and at least one other network point, and/or instructions for providing, to the customer, the one or more network performance statistics.
- a method might comprise maintaining, at a customer service point, a class of service state for a connection between a customer device and the Internet.
- the customer service point might comprise a processor, a first communication interface, and a second communication interface; the customer device might be in communication with the first communication interface and the Internet might be in communication with the second communication interface.
- the method might further comprise receiving, from the customer, configuration information for configuring the class of service state, and/or modifying the class of service state in response to receiving the configuration information.
- An apparatus in accordance with yet another set of embodiments, might comprise a computer readable medium having encoded thereon a set of instructions for causing a customer service point to perform one or more operations.
- the customer service point might comprise a processor, a first communication interface, and/or a second communication interface.
- the customer service point might maintain a class of service state between a connection between a customer device in communication with the first communication interface and the Internet in communication with the second communication interface.
- the set of instructions might be executable by the processor, and/or might comprise instructions for determining one or more network performance statistics pertaining to network performance between the customer device and at least one other network point.
- the set of instructions might further comprise instructions for providing, to the customer, the one or more network performance statistics.
- FIG. 1 is a block diagram illustrating a system for providing user-based monitoring and control of a broadband connection, in accordance with various embodiments.
- FIG. 2 is a process flow diagram illustrating a method of providing user-based monitoring and control of a broadband connection, in accordance with various embodiments.
- FIG. 3 is an exemplary screen display illustrating a user interface for providing user-based monitoring and control of a broadband connection, in accordance with various embodiments.
- FIG. 4 is a generalized schematic diagram illustrating a computer system, in accordance with various embodiments.
- One set of embodiments provides tools and techniques to give a customer greater visibility into network performance and/or utilization, particularly with respect to the customer's broadband connection to a provider's access network (and/or the Internet more generally). Certain of these tools and techniques can allow a user to view statistics (in real-time or near-real-time) about the utilization and/or performance of the customer's broadband connection (which can include, without limitation, the connection between the customer's premises and the providers access network, the access network itself, and/or the connection between the access network and the Internet. In this way, a customer not only can control various aspects of the connection, but can also see where any throughput bottlenecks might be occurring (if, for example, the customer is experiencing subpar download speeds from the Internet).
- utilization changes over a time period therefore some form mathematical utilization state representation is used to characterize the usage, and or usage change of the resource pool. Typically this is accomplished through the use of averaging and sliding window observation method, also assumed are the statistical and mathematical characterizations such as average, maximum, minimum, and change indicators such as the first and second derivate of the measures from period to period.
- the frequency in which utilization is reported is mathematically a function of how long the utilization is observed, and it should also be understood that multiple windows of observation may occur in parallel to provide short duration, and longer duration utilization information in a parallel manner.
- some embodiments allow a customer active control over various aspects of the customer's broadband connection.
- some embodiments can track the amount of bandwidth (capacity) assigned to each class of service on a customer's broadband connection, and/or the bandwidth provided to each of the devices on the customer's premises network. These values can be used as inputs to a state machine that governs the use of the broadband connection.
- such embodiments can allow the customer to adjust these configuration parameters, for example, to change traffic prioritization schemes on an application-by-application basis, a protocol-by-protocol basis, a device-by-device basis, and/or the like. In this manner a customer could provide voice applications such as VonageTM higher priorities and separate capacity resource pools as a lower priority application such as NetflixTM.
- One such example could consist of a “connectivity state machine” program on a residential gateway that tracks the link, provisioned service capacity, individual class of service capacities, and the utilization thereof to provide the use and capacity information feedback to the system, applications and users. It is assumed that user control is coupled to the connectivity state machines via the state machines tracking the shared IP pools of bandwidth in separate classes of service, and or links supporting those classes of service. To this end when a customer has the ability to change link, or class of service capacities, or the class of service used by an application the relevant “shared pool” capacity and utilization framework provides the connection state information back to the system, application and customer.
- some embodiments might track the utilized throughput in each class of service (or overall) through the broadband connection and/or to each customer device.
- some embodiments might track the utilized state at a residential gateway and/or various points in the access network and serve as a signaling point (referred to herein as a “customer service point”) for customer applications (or customers themselves) to determine the line state of their connection and/or devices.
- a signaling point referred to herein as a “customer service point”
- an embodiment might provide an API (or specialized real time protocol such as Diameter) for applications to access the signaling point.
- an embodiment might employ a user interface to allow the customer himself or herself to view the line state in real-time or near real-time.
- the term “line state” connotes any or all of a variety of types of information about the customer's broadband connection; such information can include, without limitation, the allocated capacity (e.g., in bits/second) of the connection generally and/or of any subsets of the connection, such as capacity allocated to a particular application, class of service, protocol, service, or device on the customer's network; the utilized throughput at any given point in time, either for the broadband connection generally, or specifically for any particular application, class of service, protocol, service, or device on the customer's network; the classes of service implemented over the broadband connection, including which services, protocols, applications, or devices are assigned to each class of service; network latency, e.g., between the access network and the customer service point or any device on the customer's network, between the customer service point (or a device on the customer network) and the provider's Internet drain and/or a host the customer is trying to reach; packet loss conditions, and/or the like.
- the allocated capacity e.g., in bits/second
- a customer service point might track throughput at either end of the access network, and/or at the residential gateway and one or more customer devices.
- signaling point might provide alarms to the customer (or the provider) in the event of packet loss conditions or near-congestion conditions. Such alarms can be communicated through the user interface provided by the customer service point and/or can be communicated by other appropriate techniques, such as email, text messages, and/or the like.
- a customer service point can provide busy indicators, which can serve as a “busy signal” for the customer and/or any applications, to let the application/customer know whether there is sufficient bandwidth available to start another network session.
- Customer applications might be configured to communicate with the signaling point to obtain network performance and/or utilization information. This functionality can enable near-real-time utilization and/performance reporting, along with visual feedback, on network conditions (including packet loss conditions) with respect to the customer's broadband connection and/or premises network, either overall or for particular classes of service.
- a customer application might be configured to receive a busy indicator from the customer service point and provide feedback to the customer indicating that the application is unable to begin the requested session due to current network conditions. For example, if two users are watching video on demand over the broadband connection using two different computers, a third user attempting to watch video on demand might be informed by the video player that the broadband connection currently has insufficient available capacity to allow another video on demand stream, instead of merely trying to play the stream with unacceptable performance.
- FIG. 1 illustrates a system 100 that can provide these, and other, user-based monitoring and control features.
- the system 100 includes a customer service point 105 .
- a customer service 105 point can be implemented by a residential gateway 110 .
- a customer service point 105 can implement a connectivity state machine.
- a residential gateway 110 can be any device that provides connectivity between a subscriber and a provider's network. Such devices can include, without limitation, network interface devices (“NID”), broadband modems, voiceband modems, cellular modems, wireless modems and access points, routers, other interfaces between the customer's premises network and the access network, and/or the like. Typically, the residential gateway will be located at the customer's premises, but this is not required in all embodiments.
- the residential gateway 110 provides connectivity between a customer network 115 and an access network 120 operated by an Internet service provider (“ISP”), such as a broadband provider.
- ISP Internet service provider
- the access network 120 provides, inter alia, connectivity between the customer's network 110 and the Internet 125 , as is known in the art.
- the residential gateway 110 will have a first communication interface (e.g., a broadband interface or an uplink interface) that communicates with the access network 120 using whatever broadband technology is employed (e.g., xDSL, DOCSIS, wireless broadband, etc.) and a second (local) communication interface that that provides connectivity with one or more customer devices (e.g., an Ethernet port, 802.11x radio, etc.).
- the residential gateway 110 might include router functionality, such that the local communication interface might provide for communication with a plurality of devices in the customer network 115 via either wired or wireless connection.
- the residential gateway 110 might provide a single local interface, and/or local router functionality might be implemented by a separate device.
- the nature of the customer's network 115 topology are not material to the scope of various embodiments.
- a customer service point 105 might be located at a device (not shown on FIG. 1 ) in the access network 120 itself and/or it might be configured to communicate with the customer's residential gateway 110 or network interface device, and/or any customer devices 130 on the customer premises network.
- the customer service point 105 in different embodiments, can be located at any location (or integrated with any device) that provides the customer service point 105 with visibility into the configuration and/or performance of the network, as described herein, and/or allows for configuration of network parameters, as described herein.
- the customer service point 105 can be in a device separate from the residential gateway 110 and/or access network 120 , so long as it can communicate with appropriate devices in the access network 120 and/or the residential gateway 110 to provide the monitoring and control services described herein.
- the customer devices 130 can include any devices that are capable of network communications (and, in particular aspects, IP communications). Such devices 130 can include, without limitation a laptop 130 a with wireless networking (e.g., IEEE 802.11x) capabilities, a mobile device 130 b (e.g., a mobile phone, tablet computer, personal digital assistant, etc.) with wireless networking capability, a television set top box 130 c, a networked personal computer 130 d and/or laptop 130 e, and the like. In some aspects, some (or all) of the customer devices 130 are programmed with applications 135 that access the Internet 125 (e.g., through the residential gateway 110 and/or the access network 120 .
- applications 135 that access the Internet 125 (e.g., through the residential gateway 110 and/or the access network 120 .
- Such applications can include, without limitation, web browsers 140 , video on demand applications (such as NetflixTM, to name one example), VoIP applications, online games, chat applications (including text chat, voice chat, and/or video chat applications), and any other type of application that requires, or can benefit from, a connection with the Internet.
- video on demand applications such as NetflixTM, to name one example
- VoIP applications such as NetflixTM, to name one example
- chat applications including text chat, voice chat, and/or video chat applications
- any other type of application that requires, or can benefit from, a connection with the Internet.
- one or more of these applications might be configured to access the customer service point at the residential gateway 105 (or elsewhere), e.g., using an API, as described in further detail below.
- a web browser 140 can be considered, in one aspect, to be one of the applications 135 that use the Internet, the web browser 140 can also independently be used to provide a user interface to the customer service point 105 at the residential gateway 110 (or elsewhere), as described in further detail below.
- the customer service point 105 might be programmed with, e.g., a web server, in order to serve web pages to be displayed in a browser 140 of one or more of the devices 130 for providing the user interaction described further herein.
- one or more of the devices 130 might be programmed with a dedicated application that interfaces with the customer service point 105 to provide similar interaction.
- the system 100 might further comprise one or more monitoring points 145 .
- a monitoring point 145 can be any device that is capable of measuring any metric that can be used as a network performance statistic, or that can be used to calculate or derive a network performance statistic.
- a monitoring point 145 might measure throughput of network traffic (e.g., IP packets) associated with (e.g., originating from and/or directed to) a particular residential gateway 110 (and/or any subset of that traffic, such as traffic associated with a particular device 130 on the customer network 115 , traffic within a particular class of service, traffic associated with a particular application 135 , and/or the like).
- network traffic e.g., IP packets
- Such traffic might be upstream traffic (i.e., traffic originating from the customer network 115 or a device 130 therein), downstream traffic (i.e., traffic addressed to the customer network 115 or a device 130 therein), or both.
- a monitoring point 145 might measure other values, such as utilized capacity associated with a particular customer, network latency for a particular customer's traffic (e.g., traffic associated with that customer's residential gateway 110 and/or network 115 ) and/or subset of that traffic, and/or the like.
- a monitoring point 145 might be a dedicated device specifically configured to monitor network traffic. Such monitoring can include, for example, deep packet inspection (“DPI”) and/or various other techniques to identify traffic, associate such traffic with a particular customer (or customer service point 105 ) and/or measure network metrics to compile network performance statistics.
- DPI deep packet inspection
- a monitoring point 145 might be implemented as another device in the network, such as traffic conditioning function, virtual interface, and or other probe function located in a NID, a switch, router, and/or the like, with additional functionality as described herein to perform the functions of a monitoring point 145 .
- the system 100 might include one or more monitoring points 145 at various locations in the network.
- the locations of the monitoring point(s) 145 can be chosen so as to maximize visibility into network performance, and in some cases, the relative values of a particular metric measured at different measuring points 145 can provide insight into any performance issues.
- the residential gateway 110 and/or customer service point 105 itself can serve as a monitoring point 145 a.
- the system 100 also includes a monitoring point 145 d adjacent the Internet drain of the access network 120 (i.e., the point at which the access network 120 interfaces with the Internet 125 ), which might be, for example, an edge router at the ISP's point of presence.
- the Internet drain itself might be a monitoring point. It should be appreciated, of course, that the illustrated locations are exemplary in nature, and any number of monitoring points 145 can be employed throughout the customer network 115 , the access network 120 or the Internet 125 .
- the customer service point 105 is configured to obtain network performance metrics from the monitoring points 145 using any of a variety of techniques and/or communication protocols.
- the customer service point 105 might poll one or more monitoring points 145 for information periodically or upon user request.
- one or more of the monitoring points 145 might be configured to transmit such information to the customer service point 105 on their own initiative.
- the customer service point 105 then can process the information as necessary to derive network performance statistics and/or format such information, and then provide the network performance statistics to the user, as described in further detail below.
- the customer service point 105 can also receive and implement any network control instructions from the user, such as assignment of applications to classes of service, and/or the like.
- the customer service point 105 will communicate with one or more devices in the access network 120 (which might be, but need not necessarily be monitoring points 145 ), such as the residential gateway 110 , a DSLAM, various routers, and/or the like, to implement the control instructions received from the user.
- the customer service point 105 can implement the control instructions without communicating with any other devices.
- FIG. 2 illustrates a method 200 of providing user monitoring and control of a broadband connection, in accordance with a set of embodiments.
- FIG. 2 illustrates a method 200 of providing user monitoring and control of a broadband connection, in accordance with a set of embodiments.
- FIG. 2 illustrates a method 200 of providing user monitoring and control of a broadband connection, in accordance with a set of embodiments.
- system 100 of FIG. 1 can operate according to the method 200 illustrated by FIG. 2 (e.g., by executing instructions embodied on a computer readable medium), the system 100 can also operate according to other modes of operation and/or perform other suitable procedures.
- the method 200 comprises providing a customer service point.
- Providing a customer service point can involve one or more of a variety of operations.
- providing a customer service point might comprise providing the customer with a residential gateway that functions as a customer service point.
- providing a customer service point can comprise operating a customer service point in the access network, or providing communication between the access network and a residential gateway (or other device) to allow the residential gateway (or other device) to act as a customer service point (or an interface thereto).
- the method 200 further comprises communicating with the Internet (block 210 ) and communicating with one or more customer devices (block 215 ).
- a residential gateway (which might incorporate a customer service point) might communicate with both the Internet (e.g., via the ISP access network) and a customer device, to provide connectivity between the customer device and the Internet, thereby serving as the interface between the customer and the customer's broadband connection.
- the residential gateway might have a first communication interface (e.g., an uplink port) that communicates with the Internet and a second communication interface (e.g., a wireless radio, one or more downlink ports, etc.) that communicate with a customer network, and/or one or more customer devices.
- the residential gateway can transmit on one interface the information (e.g., IP packets) received on the other interface.
- the residential gateway acting as the customer service point, can perform any monitoring and/or impose any transmission control, required by the customer service point configuration. (It should be noted, of course, that such monitoring and control can also be performed at other devices, such as a DSLAM and/or a router in the access network.)
- the method comprises maintaining a class of service state.
- the customer service point maintains this class of service state.
- the customer service point can operate as a state machine that tracks and/or controls the line state of the customer's broadband connection.
- the customer service point might maintain information about various classes of service implemented by the customer for traffic traveling over the broadband connection.
- the residential gateway can enforce these classes of service when transmitting data over the broadband connection.
- the class of service state can include any of a variety network configuration parameters and/or network performance statistics.
- the class of service state might include network usage information, such as which customer devices, classes of service, and/or applications are communicating over the broadband connection, and/or how much of the bandwidth is assigned to (i.e., allocated to), and/or used by, each of these customer devices, classes of service, and/or application.
- the class of service state might include class of service associations of one or more of the applications and/or customer devices (i.e., to which class of service a particular application/customer devices is assigned).
- Maintaining the class of service state can comprise a variety of operations.
- the customer service point can operate, in some embodiments, as a state machine, maintaining the class of service state can comprise establishing a current state that reflects the customer's desired class of service configuration (e.g., which applications are assigned to which classes of service, how bandwidth is allocated among classes of service, etc.).
- maintaining the class of service state might comprise storing network configuration parameters and routing traffic to/from the broadband connection in accordance with those configuration parameters.
- the method comprises providing a user interface.
- the user interface can provide for interaction between a user (e.g., a customer, etc.) and a computer system (e.g., a customer service point).
- a user e.g., a customer, etc.
- a computer system e.g., a customer service point
- the user interface can be used to output information for a user, e.g., by displaying the information on a display device, printing information with a printer, playing audio through a speaker, etc.
- the user interface can also function to receive input from a user, e.g., using standard input devices such as mice and other pointing devices, motion capture devices, touchpads and/or touchscreens, keyboards (e.g., numeric and/or alphabetic), microphones, etc.
- providing a user interface can comprise displaying the user interface on a display device controlled by the customer service point; in other cases, however, in which the user interface is displayed on a device remote from the customer service point (such as on a client computer, wireless device, etc.), providing the user interface might comprise formatting data for transmission to such a device and/or transmitting, receiving and/or interpreting data that is used to create the user interface on the remote device.
- the user interface on a client computer might be a web interface, in which the user interface is provided through one or more web pages that are served from the customer service point (and/or a web server in communication with the computer system), and are received and displayed by a web browser on the client computer (or other capable customer device).
- the web pages can display output from the customer service point and receive input from the user (e.g., by using Web-based forms, via hyperlinks, electronic buttons, etc.).
- a variety of techniques can be used to create these Web pages and/or display/receive information, such as JavaScript, Java applications or applets, dynamic HTML and/or AJAX technologies, to name but a few examples.
- providing a user interface will comprise providing one or more display screens (an example of which is described below), each of which includes one or more user interface elements.
- user interface element also described as a “visual object,” “user interface mechanism,” or “user interface device” means any text, image, or device that can be displayed on a display screen for providing information to a user and/or for receiving user input.
- Some such elements are commonly referred to as “widgets,” and can include, without limitation, icons, images, text, text boxes, text fields, tables and/or grids, menus, toolbars, charts, hyperlinks, buttons, lists, combo boxes, checkboxes, radio buttons, and/or the like.
- any illustrated exemplary display screens might employ specific user interface elements appropriate for the type of information to be conveyed/received by computer system in accordance with the described embodiments, it should be appreciated that the choice of user interface elements for a particular purpose is typically implementation-dependent and/or discretionary. Hence, the illustrated user interface elements employed by any display screens described herein should be considered exemplary in nature, and the reader should appreciate that other user interface elements could be substituted within the scope of various embodiments.
- the user interface provides interaction between a user and a computer system, such as the customer service point.
- a computer system such as the customer service point.
- the user interface may be the vehicle for the exchange of such input/output.
- the user interface allows the user (e.g., the customer) to provide configuration or review network performance statistics.
- the method comprises receiving (e.g., at the customer service point) configuration information (e.g., at a customer service point).
- the configuration information can comprise any type of information or instructions that indicate to the customer service point how the broadband connection should be configured.
- configuration information might include instructions from the customer to assign a particular application to a particular class of service, to assign a particular device or service to a particular class of service, and/or the like.
- the configuration information might establish different classes of service themselves, and/or allocate the available bandwidth of the broadband connection across one or more classes of service (e.g., by specifying that a first class of service should be allocated a first portion of the bandwidth, that a second class of service should be allocated a second portion of the bandwidth, that a third class of service should be allocated the remaining bandwidth, etc.).
- Such configuration information can apply to any number of classes of service and/or can allocate the available bandwidth in any manner desired by the customer (subject, perhaps, to constraints or recommendations provided by the ISP to avoid configurations that result in poor network performance).
- FIG. 3 illustrates an exemplary screen display 300 that can be provided as part of a user interface to a customer service point.
- the exemplary screen display includes a configuration panel 305 that includes user interface elements to receive user input that provides configuration information for the customer service point.
- FIG. 3 allows the user to assign applications to various classes of service. (Other panels might be configured to receive other types of configuration information, including, for example allocation of overall bandwidth among classes of service or devices, assignment of devices to classes of service, and/or any other applicable types of network configuration, including without limitation configuration of the network characteristics and parameters described herein).
- the configuration panel includes a plurality of visual objects 315 , each of which corresponds to particular type of network traffic (in this case, traffic associated with different applications on one or more of the customer devices, although other categorizations of the traffic are possible as well, such as by protocol, device, service, etc.).
- one visual object 315 a represents a VoIP application
- other visual object 315 b represents a streaming video application
- a third visual object 315 c represents an online game.
- These three applications are assigned to a high-priority class of service, which is indicated by an individual object 320 .
- Another set of applications including web browsers represented by visual objects 315 d and 315 e, has been assigned to a medium priority class of service represented by visual object 325 , while an e-mail application represented by visual object 315 f and an online chat application represented by visual object 315 g have been assigned to a low priority class of service represented by visual object 330 .
- the configuration panel 305 serves as a graphical representation of the class of service state maintained by the customer service point.
- the configuration panel 305 can serve two purposes.
- the configuration panel can illustrate the current class of service state (and/or various aspects thereof) for the user.
- the current class of service state is illustrated by the configuration panel 305 .
- the configuration panel can provide an interface for the user to modify the class of service date (enter race aspects thereof) e.g., by providing configuration information to the customer service point.
- the customer can manipulate one of the visual objects 315 corresponding to an application into one of the visual objects (e.g., 320 ) representing a class of service.
- the user could select and drag the appropriate icon 315 c into the box 325 representing the medium priority class of service.
- Other types of manipulations are possible as well.
- the configuration information might comprise a request that the customer service point receives from a customer application (block 235 ), e.g., via an API.
- API connotes any type of programmatic interface provided by the customer service point to allow interaction with customer applications, for example, by exposing methods that can be called by such applications to interact with the customer service point in the manner described herein. Examples of such interfaces can include XML interfaces, C interfaces, Java interfaces, and/or the like.
- customer applications such as online video players, VoIP applications, etc.
- customer applications might be configured to request an allocation of bandwidth, either for a particular session, as a general matter, etc.
- the video player might be configured to request an allocation of sufficient bandwidth to allow for acceptable playback of the video (this value, obviously, can vary according to the length and/or bitrate of the video, etc.).
- a variety of application might request either temporary or persistent modifications to a class of service state for a variety of reasons.
- a VoIP application might request a persistent class of service priority upon installation on a customer device or in the network (if the application runs on a dedicated VoIP phone, for example), while a game might request a temporary upgrade while the game is being played.
- Such temporary modifications might be reverted by the customer service point after a particular period of time, after a period of inactivity by the requesting application, or by a request from the application (e.g., upon being closed by the user) to revert the class of service state to a previous state.
- the method comprises modifying the class of service state in response to the configuration information.
- the modifications the class of service state will depend on the configuration instructions received by the customer service point.
- the class of service state might be modified to add that application to a particular class of service (in order to provide the dedicated bandwidth requested), establish a new class of service for that application and/or prioritize the application's current class of service in order to provide the requested bandwidth.
- the class of service state can be modified to effectuate the configuration information; if, for example, the user provided instructions to assign a particular application or device to a particular class of service, the customer service point can transition to a new class of service state that assigns that application or device to that class of service.
- the residential gateway will employ the rules established by the new class of service state in prioritizing traffic, etc.
- the customer service point might communicate with other devices (e.g., the residential gateway, a DSLAM, routers within the access network, etc.) to effectuate the modifications made to the class of service state.
- the method 200 might comprise providing a busy indicator (block 245 ).
- a busy indicator (block 245 ).
- a variety of different types of busy indicators can be used, and the type of busy indicator can depend on the nature of the request itself.
- the busy indicator might be provided to the application via the same API.
- the nature and format of the busy indicator conveyed by the customer service point is not material to the scope of this disclosure, so long as the busy indicator is sufficient to indicate to the application that its request cannot be accommodated.
- the application might inform the user that the requested network action (e.g., continuing from the example above, playing a streaming video file) cannot be performed, optionally with an explanation of the network conditions that prevented the operation.
- Such an explanation (and/or information from which such explanation can be generated) might be provided by the customer service point as part of the busy indicator.
- the customer service point might provide, as part of the busy indicator, information indicating that two other devices already have streaming video sessions open through the residential gateway, and that a third session is not possible due to bandwidth limitations of the broadband connection.
- the busy indicator might also provide information about computing applications or devices, such as an identification of the two devices that currently have streaming video sessions open.
- the busy indicator might be provided through the same user interface.
- the busy indicator might comprise the same or different information as the information that would be provided via the API to an application, although if the same information is provided, the customer service point but format the information for consumption by the user, rather than by an application.
- the method comprises determining one or more network performance statistics.
- a customer service point might receive network performance statistics (or information from which network performance statistics can be derived) from one or more network points (block 255 ), which can be any point in network, including without limitation monitoring points as described above.
- network points can be any network devices within the customer network, the access network, and/or the Internet itself (and/or device located at any interface between these networks).
- the monitoring points can monitor a variety of parameters and can send that information to the customer service point, which can then derive network performance statistics (including without limitation those described above, such as network latency, utilization, throughput, capacity, and/or packet loss) based on the measurements from one or more of the monitoring devices.
- determining network performance statistics can include a variety of operations, including without limitation compiling network performance statistics provided by monitoring devices, calculating network performance statistics from measurements collected by the customer service point itself and/or received from the monitoring devices, and/or the like.
- the method 200 comprises providing the determined network performance statistics to the customer.
- These statistics can be provided in a variety of different ways.
- the network performance statistics may be provided to an application via an API, and the application can use the statistics according to its configuration (e.g., by displaying them to the user, compiling a report, and/or the like).
- the customer service point might provide the statistics to the customer via a user interface.
- the exemplary display screen 300 might include a statistics panel 310 , which can be used to provide the network performance statistics to the user.
- the statistics can be provided in a variety of different forms, including without limitation, as chronological statistics displayed over a period of time (which might be a rolling period), as a static snapshot of statistics at a given point in time, and/or the like.
- the user-interface elements used to display the statistics can vary according to the embodiment and/or according to the customer's preferences.
- the exemplary screen display 300 illustrates a plot 335 showing throughput on the broadband connection over a period of time, and a plot 340 showing network latency between the residential gateway and the Internet drain over the same period of time
- the same or other information could be displayed as a table of numeric statistics, colored icons presenting a qualitative indication of network performance (e.g., a green circle for good performance, and yellow triangle for moderate performance, and a red octagon for poor performance, etc.), and/or using any other display scheme that can effectively convey information about the network performance.
- the customer service point is configured to generate an alarm (block 265 ).
- Alarms can be generated for a wide variety of network conditions, and in some embodiments, the customer can configure customer service point to specify which network conditions should generate an alert.
- an alarm might be generated upon network utilization of the broadband connection exceeding a certain threshold portion of the overall bandwidth.
- an alarm might be generated if insufficient bandwidth is available (either overall or in a particular class of service) to allow an application to open a desired session.
- the customer service point might generate an alarm in the event of a packet loss condition, either between the residential gateway in this access network in the access network itself, between the access network and the Internet drain, and/or the like.
- Alarms can be provided to the customer and/or other entities in a variety of ways.
- an alarm can be displayed for a customer in the user interface, such as on the exemplary screen display 300 described with respect to FIG. 3 , above.
- alarms can be provided using a standard framework such as a simple network management protocol (“SNMP”) trap.
- Alarms can also be provided to the customer (and/or to others such as network administrators at the ISP) using a variety of communication technologies, such as e-mail, text message, and/or the like.
- alarms can be provided to applications (e.g., via an API, as described above), and the applications can process the alarm, notify users, and/or take any other appropriate action according to the configuration of application.
- FIG. 4 provides a schematic illustration of one embodiment of a computer system 400 that can perform the methods provided by various other embodiments, as described herein, and/or can function as a customer service point, residential gateway, monitoring device, customer device, and/or the like. It should be noted that FIG. 4 is meant only to provide a generalized illustration of various components, of which one or more (or none) of each may be utilized as appropriate. FIG. 4 , therefore, broadly illustrates how individual system elements may be implemented in a relatively separated or relatively more integrated manner.
- the computer system 400 is shown comprising hardware elements that can be electrically coupled via a bus 405 (or may otherwise be in communication, as appropriate).
- the hardware elements may include one or more processors 410 , including without limitation one or more general-purpose processors and/or one or more special-purpose processors (such as digital signal processing chips, graphics acceleration processors, and/or the like); one or more input devices 415 , which can include without limitation a mouse, a keyboard and/or the like; and one or more output devices 420 , which can include without limitation a display device, a printer and/or the like.
- the computer system 400 may further include (and/or be in communication with) one or more storage devices 425 , which can comprise, without limitation, local and/or network accessible storage, and/or can include, without limitation, a disk drive, a drive array, an optical storage device, solid-state storage device such as a random access memory (“RAM”) and/or a read-only memory (“ROM”), which can be programmable, flash-updateable and/or the like.
- storage devices 425 can comprise, without limitation, local and/or network accessible storage, and/or can include, without limitation, a disk drive, a drive array, an optical storage device, solid-state storage device such as a random access memory (“RAM”) and/or a read-only memory (“ROM”), which can be programmable, flash-updateable and/or the like.
- RAM random access memory
- ROM read-only memory
- Such storage devices may be configured to implement any appropriate data stores, including without limitation, various file systems, database structures, and/or the like.
- the computer system 400 might also include a communications subsystem 430 , which can include without limitation a modem, a network card (wireless or wired), an infra-red communication device, a wireless communication device and/or chipset (such as a BluetoothTM device, an 802.11 device, a WiFi device, a WiMax device, a WWAN device, cellular communication facilities, etc.), and/or the like.
- the communications subsystem 430 may permit data to be exchanged with a network (such as the network described below, to name one example), with other computer systems, and/or with any other devices described herein.
- the computer system 400 will further comprise a working memory 435 , which can include a RAM or ROM device, as described above.
- the computer system 400 also may comprise software elements, shown as being currently located within the working memory 435 , including an operating system 440 , device drivers, executable libraries, and/or other code, such as one or more application programs 445 , which may comprise computer programs provided by various embodiments, and/or may be designed to implement methods, and/or configure systems, provided by other embodiments, as described herein.
- an operating system 440 operating system 440
- device drivers executable libraries
- application programs 445 which may comprise computer programs provided by various embodiments, and/or may be designed to implement methods, and/or configure systems, provided by other embodiments, as described herein.
- code and/or instructions can be used to configure and/or adapt a general purpose computer (or other device) to perform one or more operations in accordance with the described methods.
- a set of these instructions and/or code might be encoded and/or stored on a non-transitory computer readable storage medium, such as the storage device(s) 425 described above.
- the storage medium might be incorporated within a computer system, such as the system 400 .
- the storage medium might be separate from a computer system (i.e., a removable medium, such as a compact disc, etc.), and/or provided in an installation package, such that the storage medium can be used to program, configure and/or adapt a general purpose computer with the instructions/code stored thereon.
- These instructions might take the form of executable code, which is executable by the computer system 400 and/or might take the form of source and/or installable code, which, upon compilation and/or installation on the computer system 400 (e.g., using any of a variety of generally available compilers, installation programs, compression/decompression utilities, etc.) then takes the form of executable code.
- some embodiments may employ a computer system (such as the computer system 400 ) to perform methods in accordance with various embodiments of the invention.
- some or all of the procedures of such methods are performed by the computer system 400 in response to processor 410 executing one or more sequences of one or more instructions (which might be incorporated into the operating system 440 and/or other code, such as an application program 445 ) contained in the working memory 435 .
- Such instructions may be read into the working memory 435 from another computer readable medium, such as one or more of the storage device(s) 425 .
- execution of the sequences of instructions contained in the working memory 435 might cause the processor(s) 410 to perform one or more procedures of the methods described herein.
- machine readable medium and “computer readable medium,” as used herein, refer to any medium that participates in providing data that causes a machine to operation in a specific fashion.
- various computer readable media might be involved in providing instructions/code to processor(s) 410 for execution and/or might be used to store and/or carry such instructions/code (e.g., as signals).
- a computer readable medium is a non-transitory, physical and/or tangible storage medium.
- Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media.
- Non-volatile media includes, for example, optical and/or magnetic disks, such as the storage device(s) 425 .
- Volatile media includes, without limitation, dynamic memory, such as the working memory 435 .
- Transmission media includes, without limitation, coaxial cables, copper wire and fiber optics, including the wires that comprise the bus 405 , as well as the various components of the communication subsystem 430 (and/or the media by which the communications subsystem 430 provides communication with other devices).
- transmission media can also take the form of waves (including without limitation radio, acoustic and/or light waves, such as those generated during radio-wave and infra-red data communications).
- Common forms of physical and/or tangible computer readable media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read instructions and/or code.
- Various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to the processor(s) 410 for execution.
- the instructions may initially be carried on a magnetic disk and/or optical disc of a remote computer.
- a remote computer might load the instructions into its dynamic memory and send the instructions as signals over a transmission medium to be received and/or executed by the computer system 400 .
- These signals which might be in the form of electromagnetic signals, acoustic signals, optical signals and/or the like, are all examples of carrier waves on which instructions can be encoded, in accordance with various embodiments of the invention.
- the communications subsystem 430 (and/or components thereof) generally will receive the signals, and the bus 405 then might carry the signals (and/or the data, instructions, etc. carried by the signals) to the working memory 435 , from which the processor(s) 405 retrieves and executes the instructions.
- the instructions received by the working memory 435 may optionally be stored on a storage device 425 either before or after execution by the processor(s) 410 .
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Business, Economics & Management (AREA)
- Emergency Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Between Computers (AREA)
- Telephonic Communication Services (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
- The present disclosure may be related to the following commonly assigned applications/patents:
- This application claims the benefit, under 35 U.S.C. §119(e), from the following co-pending applications, the entire disclosure of each of which is hereby incorporated by reference, as if set forth in full in this document, for all purposes: provisional U.S. Patent Application No. 61/416,600, filed Nov. 23, 2010, by Michael K. Bugenhagen and titled “Line Performance Metrics Customer Service Point”; provisional U.S. Patent Application No. 61/429,866 filed Jan. 5, 2011, by Michael K. Bugenhagen and titled “Line Performance Metrics Customer Service Point”; provisional U.S. Patent Application No. 61/435,056 filed Jan. 21, 2011, by Michael K. Bugenhagen and titled “Access Control”; and provisional U.S. Patent Application No. 61/481,282 filed May 2, 2011, by Michael K. Bugenhagen and titled “Communications Path State Machine.”
- The respective disclosures of these applications/patents are incorporated herein by reference in their entirety for all purposes.
- A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever.
- The present disclosure relates, in general, to computer networks, and more particularly, to tools and techniques for providing customers of an Internet service provider with enhanced monitoring and control over their Internet connections.
- Broadband Internet access has become nearly ubiquitous in most industrialized countries. Broadband providers employ a variety of technologies, including without limitation digital subscriber line (“xDSL”) technologies, cable more (e.g., “DOCSIS”) technologies, wireless broadband technologies, and the like. In most cases, broadband access is offered using a tiered structure, in which the subscriber (referred to herein as a “customer”) receives a certain allocated bandwidth in return for a given fee (such as a monthly flat fee).
- As customer applications have grown in both scope and sophistication, the requirements imposed on broadband access have grown. For example, many voice over Internet protocol (“VoIP”) telephony applications requires threshold levels of throughput and/or latency to provide acceptable performance. Similarly, video on demand applications and/or network games impose requirements on throughput and/or latency. Notably, different applications often will impose different requirements for throughput and latency, respectively. For instance, a video on demand might not require particularly low network latency but might require relatively high throughput. Conversely, a network game might not require particularly high throughput but might require relatively low latency. VoIP telephony might require relatively constant (although not particularly high) throughput and relatively low latency.
- To address these different needs, providers, in many cases, have implemented quality of service (“QoS”) features into the broadband access they provide. One type of QoS feature commonly implemented is the distinction between multiple classes of service to provide traffic prioritization between different types of network traffic received by the access network from a customer premises. Currently, however, providers lack adequate facilities to provide customer feedback regarding network performance and utilization, even though the customer might know the capacity it has agreed to purchase from the provider. For example, if a customer purchases generic Internet access for a multiple-computer home network, neither the customer nor any individual computer attached to the home network has any ide of the amount of composite network traffic between the customer's Internet Service and the access network. Moreover, when multiple classes of service are provided to the customer premises, the customer is provided with little (or no) feedback on how those classes of service affect the capacity of the customer's broadband connection.
- Further, most or all of the traffic on customer's broadband connection is typically Internet protocol (“IP”) traffic, and all such traffic shares the customer's purchased bandwidth. Given that IP protocols are generally designed to share the available bandwidth and ‘adjust” to each other, when a congestion event occurs all the traffic using that same class of service, or a lower class, experiences congestion. In other words, there is no concept of “busy” or in use status when it comes to IP protocols today. The fact that no single customer device sees all the composite traffic flow makes this a very difficult problem for the customer or provider to address.
- Thus, there is a need for improved visibility into a customer's utilization of a provider's access network (and the customer's broadband connection thereto).
- Certain embodiments, therefore, provide tools and techniques to give a customer greater visibility into network performance and/or utilization, particularly with respect to the customer's broadband connection to a provider's access network (and/or the Internet more generally). Merely by way of example, some embodiments can track the amount of bandwidth (capacity) assigned to each class of service on a customer's broadband connection, and/or the bandwidth available to each of the devices on the customer's premises network. These values can be used as inputs to a state machine that governs the use of the broadband connection.
- Other embodiments might track the utilized throughput in each class of service (or overall) through the broadband connection and/or to each customer device. Similarly, some embodiments might track the utilized state at a residential gateway and/or various points in the access network and serve as a signaling point for customer applications (or customers themselves) to determine the line state of their connection and/or devices. In some cases, for example, an embodiment might provide an API for applications to access the signaling point. In other cases, an embodiment might employ a user interface to allow the customer himself or herself to view the line state.
- Merely by way of example, a signaling point might track throughput at either end of the access network, and/or at the residential gateway and one or more customer devices. The signaling point might provide alarms for packet loss conditions and/or busy indicators, which can serve as a “busy signal” for the customer and/or any applications, to let the application/customer know whether there is sufficient bandwidth available to start another network session or if the customer's WiFi connection has degraded (or been consumed) to a point where it will experience congestion. Customer applications might be configured to communicate with the signaling point to obtain network performance and/or utilization information. This functionality can enable near-real-time utilization and/performance reporting, along with visual feedback, on network conditions (including packet loss conditions) with respect to the customer's broadband connection and/or premises network, either overall or for particular classes of service.
- In some cases, a signaling point might be implemented at a residential gateway and/or a network interface device. Such devices can include, without limitation, broadband modems, interfaces between the customer's premises network and the access network, and/or the like. In other cases, a signaling point might be located in the access network itself, and/or it might be configured to communicate with a customer's residential gateway, network interface device, and/or any customer devices on the customer premises network.
- The tools provided by various embodiments include, without limitation, methods, systems, and/or software products. Merely by way of example, a method might comprise one or more procedures, any or all of which are executed by a computer system. Correspondingly, an embodiment might provide a computer system configured with instructions to perform one or more procedures in accordance with methods provided by various other embodiments. Similarly, a computer program might comprise a set of instructions that are executable by a computer system (and/or a processor therein) to perform such operations. In many cases, such software programs are encoded on physical, tangible and/or non-transitory computer readable media (such as, to name but a few examples, optical media, magnetic media, and/or the like).
- For example, one set of embodiments provide customer service points that can provide customers with monitoring and control over network settings. An exemplary customer service point might comprise a first communication interface, a second communication interface, and/or one or more processors in communication with the first and second communication interfaces. The customer service point might further comprise a computer readable medium in communication with the one or more processors. The computer readable medium, in an aspect, might have encoded thereon a set of instructions executable by the computer system to perform one or more operations.
- In an exemplary embodiment, the set of instructions might comprise instructions for communicating with the Internet via the first communication interface, and/or instructions for communicating with the customer device via the second communication interface. The set of instructions can also include instructions for maintaining a class of service state for a connection between the customer device and the Internet, instructions for receiving, from the customer, configuration information for configuring the class of service state, and/or instructions for modifying the class of service state in response to receiving the configuration information. In some cases, the set of instructions further comprises instructions for determining one or more network performance statistics pertaining to network performance between the customer device and at least one other network point, and/or instructions for providing, to the customer, the one or more network performance statistics.
- A method, in accordance with another set of embodiments, might comprise maintaining, at a customer service point, a class of service state for a connection between a customer device and the Internet. In some cases, the customer service point might comprise a processor, a first communication interface, and a second communication interface; the customer device might be in communication with the first communication interface and the Internet might be in communication with the second communication interface. The method might further comprise receiving, from the customer, configuration information for configuring the class of service state, and/or modifying the class of service state in response to receiving the configuration information.
- An apparatus, in accordance with yet another set of embodiments, might comprise a computer readable medium having encoded thereon a set of instructions for causing a customer service point to perform one or more operations. In an aspect, the customer service point might comprise a processor, a first communication interface, and/or a second communication interface. The customer service point might maintain a class of service state between a connection between a customer device in communication with the first communication interface and the Internet in communication with the second communication interface. The set of instructions might be executable by the processor, and/or might comprise instructions for determining one or more network performance statistics pertaining to network performance between the customer device and at least one other network point. The set of instructions might further comprise instructions for providing, to the customer, the one or more network performance statistics.
- A further understanding of the nature and advantages of particular embodiments may be realized by reference to the remaining portions of the specification and the drawings, in which like reference numerals are used to refer to similar components. In some instances, a sub-label is associated with a reference numeral to denote one of multiple similar components. When reference is made to a reference numeral without specification to an existing sub-label, it is intended to refer to all such multiple similar components.
-
FIG. 1 is a block diagram illustrating a system for providing user-based monitoring and control of a broadband connection, in accordance with various embodiments. -
FIG. 2 is a process flow diagram illustrating a method of providing user-based monitoring and control of a broadband connection, in accordance with various embodiments. -
FIG. 3 is an exemplary screen display illustrating a user interface for providing user-based monitoring and control of a broadband connection, in accordance with various embodiments. -
FIG. 4 is a generalized schematic diagram illustrating a computer system, in accordance with various embodiments. - While various aspects and features of certain embodiments have been summarized above, the following detailed description illustrates a few exemplary embodiments in further detail to enable one of skill in the art to practice such embodiments. The described examples are provided for illustrative purposes and are not intended to limit the scope of the invention.
- In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the described embodiments. It will be apparent to one skilled in the art, however, that other embodiments of the present may be practiced without some of these specific details. In other instances, certain structures and devices are shown in block diagram form. Several embodiments are described herein, and while various features are ascribed to different embodiments, it should be appreciated that the features described with respect to one embodiment may be incorporated with other embodiments as well. By the same token, however, no single feature or features of any described embodiment should be considered essential to every embodiment of the invention, as other embodiments of the invention may omit such features.
- Unless otherwise indicated, all numbers used herein to express quantities, dimensions, and so forth used should be understood as being modified in all instances by the term “about.” In this application, the use of the singular includes the plural unless specifically stated otherwise, and use of the terms “and” and “or” means “and/or” unless otherwise indicated. Moreover, the use of the term “including,” as well as other forms, such as “includes” and “included,” should be considered non-exclusive. Also, terms such as “element” or “component” encompass both elements and components comprising one unit and elements and components that comprise more than one unit, unless specifically stated otherwise.
- One set of embodiments provides tools and techniques to give a customer greater visibility into network performance and/or utilization, particularly with respect to the customer's broadband connection to a provider's access network (and/or the Internet more generally). Certain of these tools and techniques can allow a user to view statistics (in real-time or near-real-time) about the utilization and/or performance of the customer's broadband connection (which can include, without limitation, the connection between the customer's premises and the providers access network, the access network itself, and/or the connection between the access network and the Internet. In this way, a customer not only can control various aspects of the connection, but can also see where any throughput bottlenecks might be occurring (if, for example, the customer is experiencing subpar download speeds from the Internet).
- It should be understood that utilization changes over a time period, therefore some form mathematical utilization state representation is used to characterize the usage, and or usage change of the resource pool. Typically this is accomplished through the use of averaging and sliding window observation method, also assumed are the statistical and mathematical characterizations such as average, maximum, minimum, and change indicators such as the first and second derivate of the measures from period to period. The frequency in which utilization is reported is mathematically a function of how long the utilization is observed, and it should also be understood that multiple windows of observation may occur in parallel to provide short duration, and longer duration utilization information in a parallel manner.
- In addition to tracking network performance, some embodiments allow a customer active control over various aspects of the customer's broadband connection. Merely by way of example, some embodiments can track the amount of bandwidth (capacity) assigned to each class of service on a customer's broadband connection, and/or the bandwidth provided to each of the devices on the customer's premises network. These values can be used as inputs to a state machine that governs the use of the broadband connection. Additionally and/or alternatively, such embodiments can allow the customer to adjust these configuration parameters, for example, to change traffic prioritization schemes on an application-by-application basis, a protocol-by-protocol basis, a device-by-device basis, and/or the like. In this manner a customer could provide voice applications such as Vonage™ higher priorities and separate capacity resource pools as a lower priority application such as Netflix™.
- One such example could consist of a “connectivity state machine” program on a residential gateway that tracks the link, provisioned service capacity, individual class of service capacities, and the utilization thereof to provide the use and capacity information feedback to the system, applications and users. It is assumed that user control is coupled to the connectivity state machines via the state machines tracking the shared IP pools of bandwidth in separate classes of service, and or links supporting those classes of service. To this end when a customer has the ability to change link, or class of service capacities, or the class of service used by an application the relevant “shared pool” capacity and utilization framework provides the connection state information back to the system, application and customer.
- Similarly, some embodiments might track the utilized throughput in each class of service (or overall) through the broadband connection and/or to each customer device. Alternatively and/or additionally, some embodiments might track the utilized state at a residential gateway and/or various points in the access network and serve as a signaling point (referred to herein as a “customer service point”) for customer applications (or customers themselves) to determine the line state of their connection and/or devices. In some cases, for example, an embodiment might provide an API (or specialized real time protocol such as Diameter) for applications to access the signaling point. In other cases, an embodiment might employ a user interface to allow the customer himself or herself to view the line state in real-time or near real-time. As used herein, the term “line state” connotes any or all of a variety of types of information about the customer's broadband connection; such information can include, without limitation, the allocated capacity (e.g., in bits/second) of the connection generally and/or of any subsets of the connection, such as capacity allocated to a particular application, class of service, protocol, service, or device on the customer's network; the utilized throughput at any given point in time, either for the broadband connection generally, or specifically for any particular application, class of service, protocol, service, or device on the customer's network; the classes of service implemented over the broadband connection, including which services, protocols, applications, or devices are assigned to each class of service; network latency, e.g., between the access network and the customer service point or any device on the customer's network, between the customer service point (or a device on the customer network) and the provider's Internet drain and/or a host the customer is trying to reach; packet loss conditions, and/or the like.
- Merely by way of example, a customer service point might track throughput at either end of the access network, and/or at the residential gateway and one or more customer devices. In some cases, signaling point might provide alarms to the customer (or the provider) in the event of packet loss conditions or near-congestion conditions. Such alarms can be communicated through the user interface provided by the customer service point and/or can be communicated by other appropriate techniques, such as email, text messages, and/or the like. In another set of embodiments, a customer service point can provide busy indicators, which can serve as a “busy signal” for the customer and/or any applications, to let the application/customer know whether there is sufficient bandwidth available to start another network session.
- Customer applications might be configured to communicate with the signaling point to obtain network performance and/or utilization information. This functionality can enable near-real-time utilization and/performance reporting, along with visual feedback, on network conditions (including packet loss conditions) with respect to the customer's broadband connection and/or premises network, either overall or for particular classes of service. As another example, a customer application might be configured to receive a busy indicator from the customer service point and provide feedback to the customer indicating that the application is unable to begin the requested session due to current network conditions. For example, if two users are watching video on demand over the broadband connection using two different computers, a third user attempting to watch video on demand might be informed by the video player that the broadband connection currently has insufficient available capacity to allow another video on demand stream, instead of merely trying to play the stream with unacceptable performance.
-
FIG. 1 illustrates asystem 100 that can provide these, and other, user-based monitoring and control features. Thesystem 100 includes acustomer service point 105. In some cases, as illustrated byFIG. 1 , acustomer service 105 point can be implemented by aresidential gateway 110. In particular embodiments, as noted above, acustomer service point 105 can implement a connectivity state machine. - A
residential gateway 110 can be any device that provides connectivity between a subscriber and a provider's network. Such devices can include, without limitation, network interface devices (“NID”), broadband modems, voiceband modems, cellular modems, wireless modems and access points, routers, other interfaces between the customer's premises network and the access network, and/or the like. Typically, the residential gateway will be located at the customer's premises, but this is not required in all embodiments. Theresidential gateway 110 provides connectivity between acustomer network 115 and anaccess network 120 operated by an Internet service provider (“ISP”), such as a broadband provider. Theaccess network 120 provides, inter alia, connectivity between the customer'snetwork 110 and theInternet 125, as is known in the art. In a typical implementation, theresidential gateway 110 will have a first communication interface (e.g., a broadband interface or an uplink interface) that communicates with theaccess network 120 using whatever broadband technology is employed (e.g., xDSL, DOCSIS, wireless broadband, etc.) and a second (local) communication interface that that provides connectivity with one or more customer devices (e.g., an Ethernet port, 802.11x radio, etc.). In some embodiments, theresidential gateway 110 might include router functionality, such that the local communication interface might provide for communication with a plurality of devices in thecustomer network 115 via either wired or wireless connection. In other embodiments, theresidential gateway 110 might provide a single local interface, and/or local router functionality might be implemented by a separate device. The nature of the customer'snetwork 115 topology are not material to the scope of various embodiments. - In other cases, a
customer service point 105 might be located at a device (not shown onFIG. 1 ) in theaccess network 120 itself and/or it might be configured to communicate with the customer'sresidential gateway 110 or network interface device, and/or any customer devices 130 on the customer premises network. Thecustomer service point 105, in different embodiments, can be located at any location (or integrated with any device) that provides thecustomer service point 105 with visibility into the configuration and/or performance of the network, as described herein, and/or allows for configuration of network parameters, as described herein. Thus, in some cases, thecustomer service point 105 can be in a device separate from theresidential gateway 110 and/oraccess network 120, so long as it can communicate with appropriate devices in theaccess network 120 and/or theresidential gateway 110 to provide the monitoring and control services described herein. - The customer devices 130 can include any devices that are capable of network communications (and, in particular aspects, IP communications). Such devices 130 can include, without limitation a
laptop 130 a with wireless networking (e.g., IEEE 802.11x) capabilities, amobile device 130 b (e.g., a mobile phone, tablet computer, personal digital assistant, etc.) with wireless networking capability, a televisionset top box 130 c, a networkedpersonal computer 130 d and/orlaptop 130 e, and the like. In some aspects, some (or all) of the customer devices 130 are programmed withapplications 135 that access the Internet 125 (e.g., through theresidential gateway 110 and/or theaccess network 120. Such applications can include, without limitation,web browsers 140, video on demand applications (such as Netflix™, to name one example), VoIP applications, online games, chat applications (including text chat, voice chat, and/or video chat applications), and any other type of application that requires, or can benefit from, a connection with the Internet. In some cases, as mentioned above, one or more of these applications might be configured to access the customer service point at the residential gateway 105 (or elsewhere), e.g., using an API, as described in further detail below. - While a
web browser 140 can be considered, in one aspect, to be one of theapplications 135 that use the Internet, theweb browser 140 can also independently be used to provide a user interface to thecustomer service point 105 at the residential gateway 110 (or elsewhere), as described in further detail below. Thus, thecustomer service point 105 might be programmed with, e.g., a web server, in order to serve web pages to be displayed in abrowser 140 of one or more of the devices 130 for providing the user interaction described further herein. (Of course, in some embodiments, one or more of the devices 130 might be programmed with a dedicated application that interfaces with thecustomer service point 105 to provide similar interaction.) - The
system 100 might further comprise one or more monitoring points 145. A monitoring point 145 can be any device that is capable of measuring any metric that can be used as a network performance statistic, or that can be used to calculate or derive a network performance statistic. Merely by way of example, in some cases, a monitoring point 145 might measure throughput of network traffic (e.g., IP packets) associated with (e.g., originating from and/or directed to) a particular residential gateway 110 (and/or any subset of that traffic, such as traffic associated with a particular device 130 on thecustomer network 115, traffic within a particular class of service, traffic associated with aparticular application 135, and/or the like). Such traffic might be upstream traffic (i.e., traffic originating from thecustomer network 115 or a device 130 therein), downstream traffic (i.e., traffic addressed to thecustomer network 115 or a device 130 therein), or both. In other cases, a monitoring point 145 might measure other values, such as utilized capacity associated with a particular customer, network latency for a particular customer's traffic (e.g., traffic associated with that customer'sresidential gateway 110 and/or network 115) and/or subset of that traffic, and/or the like. - In some cases, a monitoring point 145 might be a dedicated device specifically configured to monitor network traffic. Such monitoring can include, for example, deep packet inspection (“DPI”) and/or various other techniques to identify traffic, associate such traffic with a particular customer (or customer service point 105) and/or measure network metrics to compile network performance statistics. Alternatively and/or additionally, a monitoring point 145 might be implemented as another device in the network, such as traffic conditioning function, virtual interface, and or other probe function located in a NID, a switch, router, and/or the like, with additional functionality as described herein to perform the functions of a monitoring point 145.
- In accordance with various embodiments, the
system 100 might include one or more monitoring points 145 at various locations in the network. The locations of the monitoring point(s) 145 can be chosen so as to maximize visibility into network performance, and in some cases, the relative values of a particular metric measured at different measuring points 145 can provide insight into any performance issues. For example, in some cases, theresidential gateway 110 and/orcustomer service point 105 itself can serve as amonitoring point 145 a. Thesystem 100 illustrated byFIG. 1 also includes amonitoring point 145 b at the customer end of the access network 120 (which might, for instance, be an edge router in communication with a DSLAM (not illustrated) that provides connectivity for the residential gateway 110) and amonitoring point 145 c within theaccess network 120 itself, for example at a core router within theaccess network 120. In the illustrated embodiment, thesystem 100 also includes amonitoring point 145 d adjacent the Internet drain of the access network 120 (i.e., the point at which theaccess network 120 interfaces with the Internet 125), which might be, for example, an edge router at the ISP's point of presence. The Internet drain itself might be a monitoring point. It should be appreciated, of course, that the illustrated locations are exemplary in nature, and any number of monitoring points 145 can be employed throughout thecustomer network 115, theaccess network 120 or theInternet 125. - The functionality of the
system 100 is described in further detail below, but as a general matter, thecustomer service point 105 is configured to obtain network performance metrics from the monitoring points 145 using any of a variety of techniques and/or communication protocols. Merely by way of example, in some cases, thecustomer service point 105 might poll one or more monitoring points 145 for information periodically or upon user request. In other cases, one or more of the monitoring points 145 might be configured to transmit such information to thecustomer service point 105 on their own initiative. - The
customer service point 105 then can process the information as necessary to derive network performance statistics and/or format such information, and then provide the network performance statistics to the user, as described in further detail below. Thecustomer service point 105 can also receive and implement any network control instructions from the user, such as assignment of applications to classes of service, and/or the like. In some cases, thecustomer service point 105 will communicate with one or more devices in the access network 120 (which might be, but need not necessarily be monitoring points 145), such as theresidential gateway 110, a DSLAM, various routers, and/or the like, to implement the control instructions received from the user. In other cases, such as when thecustomer service point 105 is incorporated by theresidential gateway 110, thecustomer service point 105 can implement the control instructions without communicating with any other devices. -
FIG. 2 illustrates amethod 200 of providing user monitoring and control of a broadband connection, in accordance with a set of embodiments. It should be noted that, while the techniques and procedures of themethod 200 are depicted and/or described in a certain order for purposes of illustration, it should be appreciated that certain procedures may be reordered and/or omitted within the scope of various embodiments, and/or that operations can be added or substituted into themethod 200 within the scope of various embodiments. Moreover, while (as noted above), the operations illustrated byFIG. 2 can be implemented by (and, in some cases, are described below with respect to) thesystem 100 ofFIG. 1 (or components thereof, such as the customer service point 105), these operations can also be implemented using any suitable hardware implementation. Similarly, while thesystem 100 ofFIG. 1 (and/or components thereof) can operate according to themethod 200 illustrated byFIG. 2 (e.g., by executing instructions embodied on a computer readable medium), thesystem 100 can also operate according to other modes of operation and/or perform other suitable procedures. - At
block 205, themethod 200 comprises providing a customer service point. Providing a customer service point can involve one or more of a variety of operations. Merely by way of example, in some cases, providing a customer service point might comprise providing the customer with a residential gateway that functions as a customer service point. In other cases, providing a customer service point can comprise operating a customer service point in the access network, or providing communication between the access network and a residential gateway (or other device) to allow the residential gateway (or other device) to act as a customer service point (or an interface thereto). - The
method 200 further comprises communicating with the Internet (block 210) and communicating with one or more customer devices (block 215). Merely by way of example, in a particular set of embodiments, a residential gateway (which might incorporate a customer service point) might communicate with both the Internet (e.g., via the ISP access network) and a customer device, to provide connectivity between the customer device and the Internet, thereby serving as the interface between the customer and the customer's broadband connection. In an aspect, the residential gateway might have a first communication interface (e.g., an uplink port) that communicates with the Internet and a second communication interface (e.g., a wireless radio, one or more downlink ports, etc.) that communicate with a customer network, and/or one or more customer devices. The residential gateway, then, can transmit on one interface the information (e.g., IP packets) received on the other interface. In one aspect, as the information passes through the residential gateway, the residential gateway, acting as the customer service point, can perform any monitoring and/or impose any transmission control, required by the customer service point configuration. (It should be noted, of course, that such monitoring and control can also be performed at other devices, such as a DSLAM and/or a router in the access network.) - At
block 220, the method comprises maintaining a class of service state. In a particular embodiment, the customer service point maintains this class of service state. Merely by way of example, as noted above, the customer service point can operate as a state machine that tracks and/or controls the line state of the customer's broadband connection. For instance, the customer service point might maintain information about various classes of service implemented by the customer for traffic traveling over the broadband connection. The residential gateway, in turn, can enforce these classes of service when transmitting data over the broadband connection. - The class of service state can include any of a variety network configuration parameters and/or network performance statistics. Merely by way of example, in some cases, the class of service state might include network usage information, such as which customer devices, classes of service, and/or applications are communicating over the broadband connection, and/or how much of the bandwidth is assigned to (i.e., allocated to), and/or used by, each of these customer devices, classes of service, and/or application. Alternatively and/or additionally, the class of service state might include class of service associations of one or more of the applications and/or customer devices (i.e., to which class of service a particular application/customer devices is assigned).
- Maintaining the class of service state can comprise a variety of operations. Merely by way of example, as noted above, the customer service point can operate, in some embodiments, as a state machine, maintaining the class of service state can comprise establishing a current state that reflects the customer's desired class of service configuration (e.g., which applications are assigned to which classes of service, how bandwidth is allocated among classes of service, etc.). In other embodiments, maintaining the class of service state might comprise storing network configuration parameters and routing traffic to/from the broadband connection in accordance with those configuration parameters.
- At
block 225, the method comprises providing a user interface. The user interface can provide for interaction between a user (e.g., a customer, etc.) and a computer system (e.g., a customer service point). For example, the user interface can be used to output information for a user, e.g., by displaying the information on a display device, printing information with a printer, playing audio through a speaker, etc.; the user interface can also function to receive input from a user, e.g., using standard input devices such as mice and other pointing devices, motion capture devices, touchpads and/or touchscreens, keyboards (e.g., numeric and/or alphabetic), microphones, etc. - The procedures undertaken to provide a user interface, therefore, can vary depending on the nature of the implementation; in some cases, providing a user interface can comprise displaying the user interface on a display device controlled by the customer service point; in other cases, however, in which the user interface is displayed on a device remote from the customer service point (such as on a client computer, wireless device, etc.), providing the user interface might comprise formatting data for transmission to such a device and/or transmitting, receiving and/or interpreting data that is used to create the user interface on the remote device. Alternatively and/or additionally, the user interface on a client computer (or any other appropriate customer device) might be a web interface, in which the user interface is provided through one or more web pages that are served from the customer service point (and/or a web server in communication with the computer system), and are received and displayed by a web browser on the client computer (or other capable customer device). The web pages can display output from the customer service point and receive input from the user (e.g., by using Web-based forms, via hyperlinks, electronic buttons, etc.). A variety of techniques can be used to create these Web pages and/or display/receive information, such as JavaScript, Java applications or applets, dynamic HTML and/or AJAX technologies, to name but a few examples.
- In many cases, providing a user interface will comprise providing one or more display screens (an example of which is described below), each of which includes one or more user interface elements. As used herein, the term “user interface element” (also described as a “visual object,” “user interface mechanism,” or “user interface device”) means any text, image, or device that can be displayed on a display screen for providing information to a user and/or for receiving user input. Some such elements are commonly referred to as “widgets,” and can include, without limitation, icons, images, text, text boxes, text fields, tables and/or grids, menus, toolbars, charts, hyperlinks, buttons, lists, combo boxes, checkboxes, radio buttons, and/or the like. While any illustrated exemplary display screens might employ specific user interface elements appropriate for the type of information to be conveyed/received by computer system in accordance with the described embodiments, it should be appreciated that the choice of user interface elements for a particular purpose is typically implementation-dependent and/or discretionary. Hence, the illustrated user interface elements employed by any display screens described herein should be considered exemplary in nature, and the reader should appreciate that other user interface elements could be substituted within the scope of various embodiments.
- As noted above, in an aspect of certain embodiments, the user interface provides interaction between a user and a computer system, such as the customer service point. Hence, when this document describes procedures for displaying (or otherwise providing) information to a user, or to receiving input from a user, the user interface may be the vehicle for the exchange of such input/output. Merely by way of example, in a set of embodiments, the user interface allows the user (e.g., the customer) to provide configuration or review network performance statistics.
- Thus, for instance, at
block 230, the method comprises receiving (e.g., at the customer service point) configuration information (e.g., at a customer service point). The configuration information can comprise any type of information or instructions that indicate to the customer service point how the broadband connection should be configured. Merely by way of example, in some cases, configuration information might include instructions from the customer to assign a particular application to a particular class of service, to assign a particular device or service to a particular class of service, and/or the like. In other cases, the configuration information might establish different classes of service themselves, and/or allocate the available bandwidth of the broadband connection across one or more classes of service (e.g., by specifying that a first class of service should be allocated a first portion of the bandwidth, that a second class of service should be allocated a second portion of the bandwidth, that a third class of service should be allocated the remaining bandwidth, etc.). Such configuration information can apply to any number of classes of service and/or can allocate the available bandwidth in any manner desired by the customer (subject, perhaps, to constraints or recommendations provided by the ISP to avoid configurations that result in poor network performance). - In an aspect, the configuration information might be received via a user interface, and in particular, via a GUI.
FIG. 3 illustrates anexemplary screen display 300 that can be provided as part of a user interface to a customer service point. The exemplary screen display includes aconfiguration panel 305 that includes user interface elements to receive user input that provides configuration information for the customer service point. Although variety of different types of user interface screens are possible within the scope of various embodiments, the embodiment illustrated byFIG. 3 allows the user to assign applications to various classes of service. (Other panels might be configured to receive other types of configuration information, including, for example allocation of overall bandwidth among classes of service or devices, assignment of devices to classes of service, and/or any other applicable types of network configuration, including without limitation configuration of the network characteristics and parameters described herein). - As illustrated, the configuration panel includes a plurality of visual objects 315, each of which corresponds to particular type of network traffic (in this case, traffic associated with different applications on one or more of the customer devices, although other categorizations of the traffic are possible as well, such as by protocol, device, service, etc.). Merely by way of example, one
visual object 315 a represents a VoIP application, and othervisual object 315 b represents a streaming video application, and a thirdvisual object 315 c represents an online game. These three applications are assigned to a high-priority class of service, which is indicated by anindividual object 320. Another set of applications, including web browsers represented by visual objects 315 d and 315 e, has been assigned to a medium priority class of service represented byvisual object 325, while an e-mail application represented by visual object 315 f and an online chat application represented by visual object 315 g have been assigned to a low priority class of service represented byvisual object 330. Thus, theconfiguration panel 305 serves as a graphical representation of the class of service state maintained by the customer service point. - It is worth noting that the
configuration panel 305 can serve two purposes. First, the configuration panel can illustrate the current class of service state (and/or various aspects thereof) for the user. Thus, as depicted byFIG. 3 , the current class of service state is illustrated by theconfiguration panel 305. Additionally and/or alternatively, the configuration panel can provide an interface for the user to modify the class of service date (enter race aspects thereof) e.g., by providing configuration information to the customer service point. For example, in the illustrated embodiment, the customer can manipulate one of the visual objects 315 corresponding to an application into one of the visual objects (e.g., 320) representing a class of service. Merely by way of example, if the user wanted to move the World of Warcraft™ application traffic to the medium priority class of service, the user could select and drag theappropriate icon 315 c into thebox 325 representing the medium priority class of service. Other types of manipulations are possible as well. - Referring again to
FIG. 2 , in some cases, the configuration information might comprise a request that the customer service point receives from a customer application (block 235), e.g., via an API. As used herein, the term “API” connotes any type of programmatic interface provided by the customer service point to allow interaction with customer applications, for example, by exposing methods that can be called by such applications to interact with the customer service point in the manner described herein. Examples of such interfaces can include XML interfaces, C interfaces, Java interfaces, and/or the like. - As noted above, customer applications (such as online video players, VoIP applications, etc.) might be configured to request an allocation of bandwidth, either for a particular session, as a general matter, etc. Merely by way of example, if a user attempts to play a streaming video with a video player, the video player might be configured to request an allocation of sufficient bandwidth to allow for acceptable playback of the video (this value, obviously, can vary according to the length and/or bitrate of the video, etc.). One skilled in the art can appreciate, based on the disclosure herein, that a variety of application might request either temporary or persistent modifications to a class of service state for a variety of reasons. For example, a VoIP application might request a persistent class of service priority upon installation on a customer device or in the network (if the application runs on a dedicated VoIP phone, for example), while a game might request a temporary upgrade while the game is being played. Such temporary modifications might be reverted by the customer service point after a particular period of time, after a period of inactivity by the requesting application, or by a request from the application (e.g., upon being closed by the user) to revert the class of service state to a previous state.
- At
block 240, the method comprises modifying the class of service state in response to the configuration information. In many cases, the modifications the class of service state will depend on the configuration instructions received by the customer service point. Merely by way of example, if an application requests a certain elevation of dedicated bandwidth, the class of service state might be modified to add that application to a particular class of service (in order to provide the dedicated bandwidth requested), establish a new class of service for that application and/or prioritize the application's current class of service in order to provide the requested bandwidth. As another example, if a user provides configuration information via a user interface (as described above, for example), the class of service state can be modified to effectuate the configuration information; if, for example, the user provided instructions to assign a particular application or device to a particular class of service, the customer service point can transition to a new class of service state that assigns that application or device to that class of service. - From that point forward, when providing communication between the customer device/network in the access network, the residential gateway will employ the rules established by the new class of service state in prioritizing traffic, etc. The customer service point might communicate with other devices (e.g., the residential gateway, a DSLAM, routers within the access network, etc.) to effectuate the modifications made to the class of service state.
- On the other hand, if the customer service point cannot satisfy a request (from a user, an application, etc.), the
method 200 might comprise providing a busy indicator (block 245). A variety of different types of busy indicators can be used, and the type of busy indicator can depend on the nature of the request itself. Merely by way of example, if the request was received from an application via an API, the busy indicator might be provided to the application via the same API. The nature and format of the busy indicator conveyed by the customer service point is not material to the scope of this disclosure, so long as the busy indicator is sufficient to indicate to the application that its request cannot be accommodated. Based on the busy indicator, the application might inform the user that the requested network action (e.g., continuing from the example above, playing a streaming video file) cannot be performed, optionally with an explanation of the network conditions that prevented the operation. Such an explanation (and/or information from which such explanation can be generated) might be provided by the customer service point as part of the busy indicator. Merely by way of example, the customer service point might provide, as part of the busy indicator, information indicating that two other devices already have streaming video sessions open through the residential gateway, and that a third session is not possible due to bandwidth limitations of the broadband connection. The busy indicator might also provide information about computing applications or devices, such as an identification of the two devices that currently have streaming video sessions open. - On the other hand, if the request is received from a user via a user interface, the busy indicator might be provided through the same user interface. In this case, the busy indicator might comprise the same or different information as the information that would be provided via the API to an application, although if the same information is provided, the customer service point but format the information for consumption by the user, rather than by an application.
- At
block 250, the method comprises determining one or more network performance statistics. For example, a customer service point might receive network performance statistics (or information from which network performance statistics can be derived) from one or more network points (block 255), which can be any point in network, including without limitation monitoring points as described above. Such monitoring points, as noted above, can be any network devices within the customer network, the access network, and/or the Internet itself (and/or device located at any interface between these networks). As noted above, the monitoring points can monitor a variety of parameters and can send that information to the customer service point, which can then derive network performance statistics (including without limitation those described above, such as network latency, utilization, throughput, capacity, and/or packet loss) based on the measurements from one or more of the monitoring devices. In some cases, the customer service point itself (and/or a residential gateway, which might incorporate the customer service point) can serve as a monitoring point. Thus, determining network performance statistics can include a variety of operations, including without limitation compiling network performance statistics provided by monitoring devices, calculating network performance statistics from measurements collected by the customer service point itself and/or received from the monitoring devices, and/or the like. - At
block 260, themethod 200 comprises providing the determined network performance statistics to the customer. These statistics can be provided in a variety of different ways. Merely by way of example, in some cases the network performance statistics may be provided to an application via an API, and the application can use the statistics according to its configuration (e.g., by displaying them to the user, compiling a report, and/or the like). In other cases, the customer service point might provide the statistics to the customer via a user interface. - For instance, returning to
FIG. 3 , theexemplary display screen 300 might include astatistics panel 310, which can be used to provide the network performance statistics to the user. The statistics can be provided in a variety of different forms, including without limitation, as chronological statistics displayed over a period of time (which might be a rolling period), as a static snapshot of statistics at a given point in time, and/or the like. Similarly, the user-interface elements used to display the statistics can vary according to the embodiment and/or according to the customer's preferences. For example, while theexemplary screen display 300 illustrates aplot 335 showing throughput on the broadband connection over a period of time, and aplot 340 showing network latency between the residential gateway and the Internet drain over the same period of time, the same or other information could be displayed as a table of numeric statistics, colored icons presenting a qualitative indication of network performance (e.g., a green circle for good performance, and yellow triangle for moderate performance, and a red octagon for poor performance, etc.), and/or using any other display scheme that can effectively convey information about the network performance. - In some cases, the customer service point is configured to generate an alarm (block 265). Alarms can be generated for a wide variety of network conditions, and in some embodiments, the customer can configure customer service point to specify which network conditions should generate an alert. Merely by way of example, in some cases, an alarm might be generated upon network utilization of the broadband connection exceeding a certain threshold portion of the overall bandwidth. In other cases, an alarm might be generated if insufficient bandwidth is available (either overall or in a particular class of service) to allow an application to open a desired session. In a particular embodiment, the customer service point might generate an alarm in the event of a packet loss condition, either between the residential gateway in this access network in the access network itself, between the access network and the Internet drain, and/or the like.
- Alarms can be provided to the customer and/or other entities in a variety of ways. Merely by way of example, an alarm can be displayed for a customer in the user interface, such as on the
exemplary screen display 300 described with respect toFIG. 3 , above. In other cases, alarms can be provided using a standard framework such as a simple network management protocol (“SNMP”) trap. Alarms can also be provided to the customer (and/or to others such as network administrators at the ISP) using a variety of communication technologies, such as e-mail, text message, and/or the like. In some embodiments, alarms can be provided to applications (e.g., via an API, as described above), and the applications can process the alarm, notify users, and/or take any other appropriate action according to the configuration of application. -
FIG. 4 provides a schematic illustration of one embodiment of acomputer system 400 that can perform the methods provided by various other embodiments, as described herein, and/or can function as a customer service point, residential gateway, monitoring device, customer device, and/or the like. It should be noted thatFIG. 4 is meant only to provide a generalized illustration of various components, of which one or more (or none) of each may be utilized as appropriate.FIG. 4 , therefore, broadly illustrates how individual system elements may be implemented in a relatively separated or relatively more integrated manner. - The
computer system 400 is shown comprising hardware elements that can be electrically coupled via a bus 405 (or may otherwise be in communication, as appropriate). The hardware elements may include one ormore processors 410, including without limitation one or more general-purpose processors and/or one or more special-purpose processors (such as digital signal processing chips, graphics acceleration processors, and/or the like); one ormore input devices 415, which can include without limitation a mouse, a keyboard and/or the like; and one ormore output devices 420, which can include without limitation a display device, a printer and/or the like. - The
computer system 400 may further include (and/or be in communication with) one ormore storage devices 425, which can comprise, without limitation, local and/or network accessible storage, and/or can include, without limitation, a disk drive, a drive array, an optical storage device, solid-state storage device such as a random access memory (“RAM”) and/or a read-only memory (“ROM”), which can be programmable, flash-updateable and/or the like. Such storage devices may be configured to implement any appropriate data stores, including without limitation, various file systems, database structures, and/or the like. - The
computer system 400 might also include acommunications subsystem 430, which can include without limitation a modem, a network card (wireless or wired), an infra-red communication device, a wireless communication device and/or chipset (such as a Bluetooth™ device, an 802.11 device, a WiFi device, a WiMax device, a WWAN device, cellular communication facilities, etc.), and/or the like. Thecommunications subsystem 430 may permit data to be exchanged with a network (such as the network described below, to name one example), with other computer systems, and/or with any other devices described herein. In many embodiments, thecomputer system 400 will further comprise a workingmemory 435, which can include a RAM or ROM device, as described above. - The
computer system 400 also may comprise software elements, shown as being currently located within the workingmemory 435, including anoperating system 440, device drivers, executable libraries, and/or other code, such as one ormore application programs 445, which may comprise computer programs provided by various embodiments, and/or may be designed to implement methods, and/or configure systems, provided by other embodiments, as described herein. Merely by way of example, one or more procedures described with respect to the method(s) discussed above might be implemented as code and/or instructions executable by a computer (and/or a processor within a computer); in an aspect, then, such code and/or instructions can be used to configure and/or adapt a general purpose computer (or other device) to perform one or more operations in accordance with the described methods. - A set of these instructions and/or code might be encoded and/or stored on a non-transitory computer readable storage medium, such as the storage device(s) 425 described above. In some cases, the storage medium might be incorporated within a computer system, such as the
system 400. In other embodiments, the storage medium might be separate from a computer system (i.e., a removable medium, such as a compact disc, etc.), and/or provided in an installation package, such that the storage medium can be used to program, configure and/or adapt a general purpose computer with the instructions/code stored thereon. These instructions might take the form of executable code, which is executable by thecomputer system 400 and/or might take the form of source and/or installable code, which, upon compilation and/or installation on the computer system 400 (e.g., using any of a variety of generally available compilers, installation programs, compression/decompression utilities, etc.) then takes the form of executable code. - It will be apparent to those skilled in the art that substantial variations may be made in accordance with specific requirements. For example, customized hardware (such as programmable logic controllers, field-programmable gate arrays, application-specific integrated circuits, and/or the like) might also be used, and/or particular elements might be implemented in hardware, software (including portable software, such as applets, etc.), or both. Further, connection to other computing devices such as network input/output devices may be employed.
- As mentioned above, in one aspect, some embodiments may employ a computer system (such as the computer system 400) to perform methods in accordance with various embodiments of the invention. According to a set of embodiments, some or all of the procedures of such methods are performed by the
computer system 400 in response toprocessor 410 executing one or more sequences of one or more instructions (which might be incorporated into theoperating system 440 and/or other code, such as an application program 445) contained in the workingmemory 435. Such instructions may be read into the workingmemory 435 from another computer readable medium, such as one or more of the storage device(s) 425. Merely by way of example, execution of the sequences of instructions contained in the workingmemory 435 might cause the processor(s) 410 to perform one or more procedures of the methods described herein. - The terms “machine readable medium” and “computer readable medium,” as used herein, refer to any medium that participates in providing data that causes a machine to operation in a specific fashion. In an embodiment implemented using the
computer system 400, various computer readable media might be involved in providing instructions/code to processor(s) 410 for execution and/or might be used to store and/or carry such instructions/code (e.g., as signals). In many implementations, a computer readable medium is a non-transitory, physical and/or tangible storage medium. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, optical and/or magnetic disks, such as the storage device(s) 425. Volatile media includes, without limitation, dynamic memory, such as the workingmemory 435. Transmission media includes, without limitation, coaxial cables, copper wire and fiber optics, including the wires that comprise thebus 405, as well as the various components of the communication subsystem 430 (and/or the media by which thecommunications subsystem 430 provides communication with other devices). Hence, transmission media can also take the form of waves (including without limitation radio, acoustic and/or light waves, such as those generated during radio-wave and infra-red data communications). - Common forms of physical and/or tangible computer readable media include, for example, a floppy disk, a flexible disk, a hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read instructions and/or code.
- Various forms of computer readable media may be involved in carrying one or more sequences of one or more instructions to the processor(s) 410 for execution. Merely by way of example, the instructions may initially be carried on a magnetic disk and/or optical disc of a remote computer. A remote computer might load the instructions into its dynamic memory and send the instructions as signals over a transmission medium to be received and/or executed by the
computer system 400. These signals, which might be in the form of electromagnetic signals, acoustic signals, optical signals and/or the like, are all examples of carrier waves on which instructions can be encoded, in accordance with various embodiments of the invention. - The communications subsystem 430 (and/or components thereof) generally will receive the signals, and the
bus 405 then might carry the signals (and/or the data, instructions, etc. carried by the signals) to the workingmemory 435, from which the processor(s) 405 retrieves and executes the instructions. The instructions received by the workingmemory 435 may optionally be stored on astorage device 425 either before or after execution by the processor(s) 410. - While certain features and aspects have been described with respect to exemplary embodiments, one skilled in the art will recognize that numerous modifications are possible. For example, the methods and processes described herein may be implemented using hardware components, software components, and/or any combination thereof. Further, while various methods and processes described herein may be described with respect to particular structural and/or functional components for ease of description, methods provided by various embodiments are not limited to any particular structural and/or functional architecture but instead can be implemented on any suitable hardware, firmware and/or software configuration. Similarly, while certain functionality is ascribed to certain system components, unless the context dictates otherwise, this functionality can be distributed among various other system components in accordance with the several embodiments.
- Moreover, while the procedures of the methods and processes described herein are described in a particular order for ease of description, unless the context dictates otherwise, various procedures may be reordered, added, and/or omitted in accordance with various embodiments. Moreover, the procedures described with respect to one method or process may be incorporated within other described methods or processes; likewise, system components described according to a particular structural architecture and/or with respect to one system may be organized in alternative structural architectures and/or incorporated within other described systems. Hence, while various embodiments are described with—or without—certain features for ease of description and to illustrate exemplary aspects of those embodiments, the various components and/or features described herein with respect to a particular embodiment can be substituted, added and/or subtracted from among other described embodiments, unless the context dictates otherwise. Consequently, although several exemplary embodiments are described above, it will be appreciated that the invention is intended to cover all modifications and equivalents within the scope of the following claims.
Claims (30)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/302,051 US20120131466A1 (en) | 2010-11-23 | 2011-11-22 | User-Based Monitoring and Control |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US41660010P | 2010-11-23 | 2010-11-23 | |
US201161429866P | 2011-01-05 | 2011-01-05 | |
US201161435056P | 2011-01-21 | 2011-01-21 | |
US201161481282P | 2011-05-02 | 2011-05-02 | |
US13/302,051 US20120131466A1 (en) | 2010-11-23 | 2011-11-22 | User-Based Monitoring and Control |
Publications (1)
Publication Number | Publication Date |
---|---|
US20120131466A1 true US20120131466A1 (en) | 2012-05-24 |
Family
ID=46063837
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/302,055 Active 2032-10-08 US9015343B2 (en) | 2010-11-23 | 2011-11-22 | User control over content delivery |
US13/302,051 Abandoned US20120131466A1 (en) | 2010-11-23 | 2011-11-22 | User-Based Monitoring and Control |
US13/302,053 Active 2033-02-18 US8873717B2 (en) | 2010-11-23 | 2011-11-22 | Emergency alert signaling |
US14/659,316 Active US9300732B2 (en) | 2010-11-23 | 2015-03-16 | User control over content delivery |
US14/996,904 Active US9736230B2 (en) | 2010-11-23 | 2016-01-15 | User control over content delivery |
US15/634,316 Active US10320614B2 (en) | 2010-11-23 | 2017-06-27 | User control over content delivery |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/302,055 Active 2032-10-08 US9015343B2 (en) | 2010-11-23 | 2011-11-22 | User control over content delivery |
Family Applications After (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/302,053 Active 2033-02-18 US8873717B2 (en) | 2010-11-23 | 2011-11-22 | Emergency alert signaling |
US14/659,316 Active US9300732B2 (en) | 2010-11-23 | 2015-03-16 | User control over content delivery |
US14/996,904 Active US9736230B2 (en) | 2010-11-23 | 2016-01-15 | User control over content delivery |
US15/634,316 Active US10320614B2 (en) | 2010-11-23 | 2017-06-27 | User control over content delivery |
Country Status (1)
Country | Link |
---|---|
US (6) | US9015343B2 (en) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130031237A1 (en) * | 2011-07-28 | 2013-01-31 | Michael Talbert | Network component management |
US20140185488A1 (en) * | 2012-12-28 | 2014-07-03 | Futurewei Technologies, Inc. | Methods for Dynamic Service Deployment for Virtual/Physical Multiple Device Integration |
US8873717B2 (en) | 2010-11-23 | 2014-10-28 | Centurylink Intellectual Property Llc | Emergency alert signaling |
US20150019713A1 (en) * | 2013-07-15 | 2015-01-15 | Centurylink Intellectual Property Llc | Control Groups for Network Testing |
US9013996B2 (en) | 2012-05-16 | 2015-04-21 | Centurylink Intellectual Property Llc | Customer configuration of broadband services |
US20150201348A1 (en) * | 2012-07-18 | 2015-07-16 | Commissariat à l'Energie Atomique et aux Energies Alternatives | Method for managing the configuration of a telecommunication network |
WO2018052921A1 (en) * | 2016-09-13 | 2018-03-22 | Gogo Llc | Usage-based bandwidth optimization |
US10456673B1 (en) * | 2017-11-17 | 2019-10-29 | Amazon Technologies, Inc. | Resource selection for hosted game sessions |
US10592377B2 (en) | 2013-07-15 | 2020-03-17 | Centurylink Intellectual Property Llc | Website performance tracking |
CN111371740A (en) * | 2020-02-17 | 2020-07-03 | 华云数据有限公司 | Message flow monitoring method and system and electronic equipment |
US11206665B2 (en) * | 2013-04-05 | 2021-12-21 | Time Warner Cable Enterprises Llc | Resource allocation in a wireless mesh network environment |
EP3387795B1 (en) * | 2015-12-11 | 2022-11-09 | Orange | Router of a domestic network, supervision interface and method for supervising the use of a domestic network |
CN115348208A (en) * | 2021-04-27 | 2022-11-15 | 中移(苏州)软件技术有限公司 | Flow control method and device, electronic equipment and storage medium |
US11792083B2 (en) * | 2014-04-17 | 2023-10-17 | Accedian Networks Inc. | System and method for out-of-line real-time in-service performance measurement |
Families Citing this family (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69930967T2 (en) * | 1998-12-17 | 2006-12-21 | Diversi-Plast Products Inc., Golden Valley | FIRST CAP VENTILATION |
US8494140B2 (en) | 2008-10-30 | 2013-07-23 | Centurylink Intellectual Property Llc | System and method for voice activated provisioning of telecommunication services |
US9628294B1 (en) * | 2011-03-23 | 2017-04-18 | Amazon Technologies, Inc. | Methods and apparatus for remapping public network addresses on a network to an external network via a private communications channel |
US9014023B2 (en) | 2011-09-15 | 2015-04-21 | International Business Machines Corporation | Mobile network services in a mobile data network |
US10021696B2 (en) * | 2011-11-16 | 2018-07-10 | International Business Machines Corporation | Data caching at the edge of a mobile data network |
US8971192B2 (en) | 2011-11-16 | 2015-03-03 | International Business Machines Corporation | Data breakout at the edge of a mobile data network |
US9730101B2 (en) * | 2012-01-31 | 2017-08-08 | Telefonaktiebolaget Lm Ericsson | Server selection in communications network with respect to a mobile user |
US8521153B1 (en) | 2012-06-18 | 2013-08-27 | International Business Machines Corporation | Using the maintenance channel in a mobile data network to provide subscriber data when a cache miss occurs |
US9137563B2 (en) * | 2012-08-24 | 2015-09-15 | Google Technology Holdings LLC | Processing emergency alert system messages |
US9479498B2 (en) * | 2012-09-28 | 2016-10-25 | Intel Corporation | Providing limited access to a service device via an intermediary |
US9384208B2 (en) * | 2013-01-22 | 2016-07-05 | Go Daddy Operating Company, LLC | Configuring a cached website file removal using a pulled data list |
CA2898429A1 (en) * | 2013-02-03 | 2014-08-07 | Lg Electronics Inc. | Apparatus for providing urgent alarm service through broadcast system and method therefor |
US9036635B2 (en) * | 2013-03-12 | 2015-05-19 | Motorola Solutions, Inc. | Method and apparatus for propagating public safety multicast and broadcast services among public safety personnel |
US8844050B1 (en) * | 2013-03-15 | 2014-09-23 | Athoc, Inc. | Personnel crisis communications management and personnel status tracking system |
US9538249B2 (en) | 2013-05-09 | 2017-01-03 | Viasat Inc. | Close fulfillment of content requests |
US10778680B2 (en) * | 2013-08-02 | 2020-09-15 | Alibaba Group Holding Limited | Method and apparatus for accessing website |
EP2835944B1 (en) * | 2013-08-08 | 2017-09-27 | Compal Broadband Networks Inc. | A device having ipv6 firewall functionality and method related thereto |
CN104427005B (en) | 2013-08-20 | 2018-01-02 | 阿里巴巴集团控股有限公司 | The method and system that request is accurately dispatched are realized on CDN |
US9887914B2 (en) | 2014-02-04 | 2018-02-06 | Fastly, Inc. | Communication path selection for content delivery |
US20150269700A1 (en) | 2014-03-24 | 2015-09-24 | Athoc, Inc. | Exchange of crisis-related information amongst multiple individuals and multiple organizations |
US20150371528A1 (en) * | 2014-05-08 | 2015-12-24 | Banksecure Technologies, Llc | Notification apparatus, system, and method |
US9948527B1 (en) * | 2014-06-24 | 2018-04-17 | Google Llc | Synthetic resource records |
US9967635B2 (en) * | 2014-08-19 | 2018-05-08 | Verizon Patent And Licensing Inc. | Delivery confirmation and non-live delivery of emergency alert system messages |
US10015094B1 (en) * | 2015-06-19 | 2018-07-03 | Amazon Technologies, Inc. | Customer-specified routing policies |
EP3226488A1 (en) * | 2016-04-01 | 2017-10-04 | Gemalto M2M GmbH | Method for handling emergency messages |
CN107622650A (en) * | 2016-07-15 | 2018-01-23 | 王勇 | Interactive voice wireless routing robot |
CN107707584B (en) * | 2016-08-08 | 2020-12-29 | 腾讯科技(深圳)有限公司 | Application loading method, terminal and platform server |
US10212023B2 (en) * | 2016-10-05 | 2019-02-19 | Vmware, Inc. | Methods and systems to identify and respond to low-priority event messages |
CA3042100A1 (en) * | 2016-11-07 | 2018-05-11 | Irystec Software Inc. | System and method for age-based gamut mapping |
FR3067198A1 (en) * | 2017-06-02 | 2018-12-07 | Orange | OPTIMIZING THE REFRESH FREQUENCY OF A DNS REGISTRATION |
US11032127B2 (en) * | 2017-06-26 | 2021-06-08 | Verisign, Inc. | Resilient domain name service (DNS) resolution when an authoritative name server is unavailable |
US20220141093A1 (en) * | 2019-02-28 | 2022-05-05 | Newsouth Innovations Pty Limited | Network bandwidth apportioning |
JP2020202468A (en) * | 2019-06-07 | 2020-12-17 | シャープ株式会社 | Electronic apparatus, information providing system, information providing method, and program |
CN110288815A (en) * | 2019-07-19 | 2019-09-27 | 彭志宏 | A kind of center Network Warning alarm system and method based on network communication |
US11763666B1 (en) * | 2021-10-22 | 2023-09-19 | Edge Networks, Inc. | System and method for delivering emergency alerts |
CN114495462B (en) * | 2021-12-28 | 2024-03-22 | 深圳供电局有限公司 | Alarm message processing method, device, computer equipment and storage medium |
Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030020764A1 (en) * | 2001-03-14 | 2003-01-30 | Pierre Germain | Performance and flow analysis method for communication networks |
US20030137938A1 (en) * | 1999-04-16 | 2003-07-24 | At&T Corp. | Method for reducing congestion in packet-switched networks |
US20040088403A1 (en) * | 2002-11-01 | 2004-05-06 | Vikas Aggarwal | System configuration for use with a fault and performance monitoring system using distributed data gathering and storage |
US20040208133A1 (en) * | 2003-04-21 | 2004-10-21 | Dylan Jay | Method and apparatus for predicting the quality of packet data communications |
US7043660B1 (en) * | 2001-10-08 | 2006-05-09 | Agilent Technologies, Inc. | System and method for providing distributed fault management policies in a network management system |
US20060285500A1 (en) * | 2005-06-15 | 2006-12-21 | Booth Earl H Iii | Method and apparatus for packet loss detection |
US20070025237A1 (en) * | 2004-08-20 | 2007-02-01 | Michiyo Goto | Packet communication terminal apparatus and communication system |
US20070064604A1 (en) * | 2005-09-20 | 2007-03-22 | Liren Chen | Adaptive quality of service policy for dynamic networks |
US20080089237A1 (en) * | 2006-10-11 | 2008-04-17 | Ibahn Corporation | System and method for dynamic network traffic prioritization |
US20080279112A1 (en) * | 2007-05-10 | 2008-11-13 | At&T Knowledge Ventures, L.P. | System and method for configuring media network resources |
US20090116379A1 (en) * | 2007-11-02 | 2009-05-07 | At&T Knowledge Ventures, Lp | Insufficient bandwidth notification for transmission of multimedia program |
US20100246436A1 (en) * | 2009-03-26 | 2010-09-30 | At&T Services, Inc. | User-controlled network configuration for handling multiple classes of service |
US20100257264A1 (en) * | 2003-11-20 | 2010-10-07 | Juniper Networks, Inc. | Policy analyzer |
US7903553B2 (en) * | 2004-08-05 | 2011-03-08 | Huawei Technologies Co., Ltd. | Method, apparatus, edge router and system for providing QoS guarantee |
US20110249572A1 (en) * | 2010-04-08 | 2011-10-13 | Singhal Anil K | Real-Time Adaptive Processing of Network Data Packets for Analysis |
Family Cites Families (114)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4456788A (en) | 1982-12-01 | 1984-06-26 | Gte Business Communication Systems Inc. | Telecommunication trunk circuit reporter and advisor |
US4669113A (en) | 1985-04-26 | 1987-05-26 | At&T Company | Integrated network controller for a dynamic nonhierarchical routing switching network |
US4776016A (en) | 1985-11-21 | 1988-10-04 | Position Orientation Systems, Inc. | Voice control system |
US4756019A (en) | 1986-08-27 | 1988-07-05 | Edmund Szybicki | Traffic routing and automatic network management system for telecommunication networks |
US5054096A (en) | 1988-10-24 | 1991-10-01 | Empire Blue Cross/Blue Shield | Method and apparatus for converting documents into electronic data for transaction processing |
IL104871A (en) | 1993-02-26 | 1996-06-18 | Yekutiely Barak | Communication system |
US5774859A (en) | 1995-01-03 | 1998-06-30 | Scientific-Atlanta, Inc. | Information system having a speech interface |
US5696906A (en) | 1995-03-09 | 1997-12-09 | Continental Cablevision, Inc. | Telecommunicaion user account management system and method |
US5687224A (en) | 1995-07-26 | 1997-11-11 | Alley, Jr.; Willard Kent | Telecommunications circuit provisioning and administration system |
US5920846A (en) | 1996-02-27 | 1999-07-06 | Southwestern Bell Telephone Co. | Method and system for processing a service request relating to installation, maintenance or repair of telecommunications services provided to a customer premises |
US6028924A (en) | 1996-06-13 | 2000-02-22 | Northern Telecom Limited | Apparatus and method for controlling processing of a service call |
US6226286B1 (en) | 1996-10-28 | 2001-05-01 | Telefonaktiebolaget Lm Ericsson (Publ) | Apparatus and method for communication between data network and telecommunication network |
US5796393A (en) | 1996-11-08 | 1998-08-18 | Compuserve Incorporated | System for intergrating an on-line service community with a foreign service |
US5915001A (en) | 1996-11-14 | 1999-06-22 | Vois Corporation | System and method for providing and using universally accessible voice and speech data files |
EP0962089B1 (en) | 1997-02-20 | 2003-07-23 | Hewlett-Packard Company, A Delaware Corporation | Node for providing telecommunication services |
US6219648B1 (en) | 1997-03-31 | 2001-04-17 | Sbc Technology Resources, Inc. | Apparatus and method for monitoring progress of customer generated trouble tickets |
US5844823A (en) | 1997-06-20 | 1998-12-01 | Lucent Technologies Inc. | Method for scaling-up a telecommunication system |
US6122632A (en) | 1997-07-21 | 2000-09-19 | Convergys Customer Management Group Inc. | Electronic message management system |
US6285748B1 (en) | 1997-09-25 | 2001-09-04 | At&T Corporation | Network traffic controller |
US5999932A (en) | 1998-01-13 | 1999-12-07 | Bright Light Technologies, Inc. | System and method for filtering unsolicited electronic mail messages using data matching and heuristic processing |
US5945910A (en) | 1998-02-11 | 1999-08-31 | Simoniz Usa, Inc. | Method and apparatus for monitoring and reporting handwashing |
US6104798A (en) | 1998-02-12 | 2000-08-15 | Mci Communications Corporation | Order processing and reporting system for telecommunications carrier services |
US6137873A (en) | 1998-04-06 | 2000-10-24 | Ameritech Corporation | Automatic electronic telecommunications order translation and processing |
US6385609B1 (en) | 1998-04-23 | 2002-05-07 | Lucent Technologies Inc. | System and method for analyzing and displaying telecommunications switch report output |
US6389126B1 (en) | 1998-05-07 | 2002-05-14 | Mci Communications Corporation | Service provisioning system for interactive voice response services |
US6349238B1 (en) | 1998-09-16 | 2002-02-19 | Mci Worldcom, Inc. | System and method for managing the workflow for processing service orders among a variety of organizations within a telecommunications company |
US6937993B1 (en) | 1998-09-16 | 2005-08-30 | Mci, Inc. | System and method for processing and tracking telecommunications service orders |
US7103065B1 (en) | 1998-10-30 | 2006-09-05 | Broadcom Corporation | Data packet fragmentation in a cable modem system |
US6233560B1 (en) | 1998-12-16 | 2001-05-15 | International Business Machines Corporation | Method and apparatus for presenting proximal feedback in voice command systems |
US6636831B1 (en) | 1999-04-09 | 2003-10-21 | Inroad, Inc. | System and process for voice-controlled information retrieval |
US6826146B1 (en) | 1999-06-02 | 2004-11-30 | At&T Corp. | Method for rerouting intra-office digital telecommunications signals |
US7447635B1 (en) | 1999-10-19 | 2008-11-04 | Sony Corporation | Natural language interface control system |
WO2001040954A1 (en) * | 1999-12-06 | 2001-06-07 | Warp Solutions, Inc. | System and method for directing a client to a content source |
US6614903B1 (en) | 1999-12-15 | 2003-09-02 | Avaya Technology Corp. | Methods and apparatus for service state-based processing of communications in a call center |
SE519221C2 (en) | 1999-12-17 | 2003-02-04 | Ericsson Telefon Ab L M | Non-transparent communication where only data frames detected as correct are forwarded by the base station |
US6397186B1 (en) | 1999-12-22 | 2002-05-28 | Ambush Interactive, Inc. | Hands-free, voice-operated remote control transmitter |
US6795537B1 (en) | 1999-12-28 | 2004-09-21 | Bellsouth Intellectual Property Corporation | Method for updating a database using a telephone |
US6650738B1 (en) | 2000-02-07 | 2003-11-18 | Verizon Services Corp. | Methods and apparatus for performing sequential voice dialing operations |
US6415018B1 (en) | 2000-02-08 | 2002-07-02 | Lucent Technologies Inc. | Telecommunication system and method for handling special number calls having geographic sensitivity |
AU2001239880A1 (en) | 2000-02-25 | 2001-09-03 | Pulsar Communications, Inc. | Apparatus and method for providing enhanced telecommunications services |
US6879998B1 (en) * | 2000-06-01 | 2005-04-12 | Aerocast.Com, Inc. | Viewer object proxy |
US20020057297A1 (en) * | 2000-06-12 | 2002-05-16 | Tom Grimes | Personalized content management |
US6937701B1 (en) | 2000-06-16 | 2005-08-30 | Nortel Networks Limited | Telecommunications network having a switch equipped with an IVR provisioning/monitoring system |
US7012997B1 (en) | 2000-10-18 | 2006-03-14 | Foto-Fone, Inc. | Voice prompted user interface for central switch telephone programming |
US6865268B1 (en) | 2001-01-16 | 2005-03-08 | Charles Terence Matthews | Dynamic, real-time call tracking for web-based customer relationship management |
US8364798B2 (en) | 2001-01-23 | 2013-01-29 | Verizon Business Global Llc | Method and system for providing software integration for a telecommunications services on-line procurement system |
US20020111842A1 (en) | 2001-02-09 | 2002-08-15 | Jon Miles | Work order management system |
US6724876B2 (en) | 2001-03-02 | 2004-04-20 | Revd Networks, Inc. | Method and apparatus for effecting telecommunications service features using call control information extracted from a bearer channel in a telecommunications network |
US6891841B2 (en) | 2001-03-12 | 2005-05-10 | Advent Networks, Inc. | Time division multiple access over broadband modulation method and apparatus |
WO2002077975A1 (en) | 2001-03-27 | 2002-10-03 | Koninklijke Philips Electronics N.V. | Method to select and send text messages with a mobile |
US7007089B2 (en) * | 2001-06-06 | 2006-02-28 | Akarnai Technologies, Inc. | Content delivery network map generation using passive measurement data |
US8700781B2 (en) | 2001-06-12 | 2014-04-15 | Verizon Business Global Llc | Automated processing of service requests using structured messaging protocols |
EP1407356B1 (en) | 2001-07-03 | 2016-09-07 | Accenture Global Services Limited | Broadband communications |
US7734958B1 (en) | 2001-07-05 | 2010-06-08 | At&T Intellectual Property Ii, L.P. | Method and apparatus for a programming language having fully undoable, timed reactive instructions |
US7142655B2 (en) | 2001-07-13 | 2006-11-28 | Sbc Properties, L.P. | Platform for rapid development of telecommunications services |
US20030046184A1 (en) | 2001-07-13 | 2003-03-06 | Magnus Bjorklund | Electronic pen catalog ordering system and method of using the catalog to stimulate electronic pen use |
US6778638B1 (en) | 2001-09-04 | 2004-08-17 | Bellsouth Intellectual Property Corporation | Processes and systems for creating maintenance reports for communications systems |
US7289605B1 (en) | 2001-09-04 | 2007-10-30 | At&T Intellectual Property, Inc. | Processes and systems for creating and for managing trouble tickets and work orders |
US7308094B1 (en) | 2001-09-04 | 2007-12-11 | At&T Intellectual Property, Inc. | Processes and systems for screening work orders |
US7436939B1 (en) | 2001-09-26 | 2008-10-14 | Sprint Spectrum L.P. | Method and system for consolidated message notification in a voice command platform |
US7860964B2 (en) | 2001-09-28 | 2010-12-28 | Level 3 Communications, Llc | Policy-based content delivery network selection |
US7233781B2 (en) * | 2001-10-10 | 2007-06-19 | Ochoa Optics Llc | System and method for emergency notification content delivery |
US7203943B2 (en) | 2001-10-31 | 2007-04-10 | Avaya Technology Corp. | Dynamic allocation of processing tasks using variable performance hardware platforms |
US20030130820A1 (en) | 2002-01-07 | 2003-07-10 | Lane George H. | Work order system |
US6889339B1 (en) | 2002-01-30 | 2005-05-03 | Verizon Serivces Corp. | Automated DSL network testing software tool |
US6912581B2 (en) | 2002-02-27 | 2005-06-28 | Motorola, Inc. | System and method for concurrent multimodal communication session persistence |
US7327833B2 (en) | 2002-03-20 | 2008-02-05 | At&T Bls Intellectual Property, Inc. | Voice communications menu |
JP3687001B2 (en) * | 2002-03-28 | 2005-08-24 | 富士通株式会社 | Internet connection device automatic selection method, internet connection device automatic selection device, and internet connection device automatic selection program |
US7471688B2 (en) | 2002-06-18 | 2008-12-30 | Intel Corporation | Scheduling system for transmission of cells to ATM virtual circuits and DSL ports |
US7941514B2 (en) | 2002-07-31 | 2011-05-10 | Level 3 Communications, Llc | Order entry system for telecommunications network service |
US7570943B2 (en) | 2002-08-29 | 2009-08-04 | Nokia Corporation | System and method for providing context sensitive recommendations to digital services |
US20040073466A1 (en) | 2002-10-10 | 2004-04-15 | Qwest Communications International Inc. | Systems and methods for evaluating telecommunications projects |
US20040196842A1 (en) * | 2003-04-04 | 2004-10-07 | Dobbins Kurt A. | Method and system for according preferred transport based on node identification |
US7941333B2 (en) | 2003-06-30 | 2011-05-10 | Embarq Holdings Company, LLP | Method and system for identifying and categorizing past due telecommunication service orders |
US7477603B1 (en) | 2003-07-08 | 2009-01-13 | Cisco Technology, Inc. | Sharing line bandwidth among virtual circuits in an ATM device |
US7221938B2 (en) | 2003-08-20 | 2007-05-22 | Sbc Knowledge Ventures, L.P. | System and method for multi-modal monitoring of a network |
US8311835B2 (en) | 2003-08-29 | 2012-11-13 | Microsoft Corporation | Assisted multi-modal dialogue |
US7221912B2 (en) | 2003-08-29 | 2007-05-22 | Lucent Technologies Inc. | Telecommunications management interface system |
US20070107034A1 (en) | 2003-10-31 | 2007-05-10 | Gotwals Michael D | Combination meter for evaluating video delivered via Internet protocol |
US7660402B1 (en) | 2003-11-18 | 2010-02-09 | Embarq Holdings Company, Llc | System and method for managing telecommunication trunk groups |
DE10360656A1 (en) | 2003-12-23 | 2005-07-21 | Daimlerchrysler Ag | Operating system for a vehicle |
US7433940B2 (en) * | 2004-01-21 | 2008-10-07 | International Business Machines Corporation | Schema management |
US20050238145A1 (en) | 2004-04-22 | 2005-10-27 | Sbc Knowledge Ventures, L.P. | User interface for "how to use" application of automated self service call center |
US7756913B1 (en) | 2004-08-02 | 2010-07-13 | Cisco Technology, Inc. | System and methods for selecting content distribution |
US8640159B2 (en) | 2004-09-17 | 2014-01-28 | At&T Intellectual Property I, L.P. | Methods, systems, and devices for reducing bandwidth consumption in multimedia distribution systems |
US20060074658A1 (en) | 2004-10-01 | 2006-04-06 | Siemens Information And Communication Mobile, Llc | Systems and methods for hands-free voice-activated devices |
US20060245364A1 (en) | 2005-03-29 | 2006-11-02 | Xing Zhu | Bi-directional continuous voice and video quality testing system with TTMF tones |
US7623647B1 (en) | 2005-09-30 | 2009-11-24 | At&T Corp. | Method and apparatus for using voice commands to activate network based service logic |
US20070104227A1 (en) | 2005-11-07 | 2007-05-10 | Norbert Rivera | Distributed digital subscriber line access multiplexers and methods to operate the same |
US7730187B2 (en) * | 2006-10-05 | 2010-06-01 | Limelight Networks, Inc. | Remote domain name service |
US20070136072A1 (en) | 2005-12-14 | 2007-06-14 | Symbol Technologies, Inc. | Interactive voice browsing for mobile devices on wireless networks |
US7421067B2 (en) | 2006-04-19 | 2008-09-02 | Emotive Communications, Inc. | System and methodology for peer-to-peer voice communication employing a pushed interactive multimedia announcement |
KR100916717B1 (en) | 2006-12-11 | 2009-09-09 | 강민수 | Advertisement Providing Method and System for Moving Picture Oriented Contents Which Is Playing |
US8363639B2 (en) | 2006-12-22 | 2013-01-29 | Nokia Corporation | Call initiation control |
US20080220810A1 (en) | 2007-03-07 | 2008-09-11 | Agere Systems, Inc. | Communications server for handling parallel voice and data connections and method of using the same |
US8503665B1 (en) | 2007-04-18 | 2013-08-06 | William S. Meisel | System and method of writing and using scripts in automated, speech-based caller interactions |
US20080275714A1 (en) | 2007-05-01 | 2008-11-06 | David Frederick Martinez | Computerized requirement management system |
US20080295131A1 (en) | 2007-05-23 | 2008-11-27 | At&T Knowledge Ventures, Lp | System and method of delivering media content |
US20090013398A1 (en) | 2007-07-06 | 2009-01-08 | Acterna Llc | Remote Testing Of Firewalled Networks |
US8639214B1 (en) | 2007-10-26 | 2014-01-28 | Iwao Fujisaki | Communication device |
US8230081B2 (en) | 2007-10-31 | 2012-07-24 | Verizon Patent And Licensing Inc. | Feature set based content communications systems and methods |
US8489731B2 (en) * | 2007-12-13 | 2013-07-16 | Highwinds Holdings, Inc. | Content delivery network with customized tracking of delivery data |
US8561122B2 (en) | 2008-08-27 | 2013-10-15 | Verizon Patent And Licensing Inc. | Video test process integrated in a set-top-box |
US8121586B2 (en) | 2008-09-16 | 2012-02-21 | Yellowpages.Com Llc | Systems and methods for voice based search |
US8494140B2 (en) | 2008-10-30 | 2013-07-23 | Centurylink Intellectual Property Llc | System and method for voice activated provisioning of telecommunication services |
US8200821B2 (en) * | 2009-06-19 | 2012-06-12 | Comcast Cable Communications, Llc | System and method for improved in-browser notification |
US20120084423A1 (en) * | 2010-10-04 | 2012-04-05 | Openwave Systems Inc. | Method and system for domain based dynamic traffic steering |
US9015343B2 (en) | 2010-11-23 | 2015-04-21 | Centurylink Intellectual Property Llc | User control over content delivery |
US8804720B1 (en) | 2010-12-22 | 2014-08-12 | Juniper Networks, Inc. | Pass-through multicast admission control signaling |
US20120204201A1 (en) * | 2011-02-03 | 2012-08-09 | Bby Solutions, Inc. | Personalized best channel selection device and method |
WO2012119115A2 (en) | 2011-03-02 | 2012-09-07 | Adtran, Inc. | Systems and methods for adjusting time slots of vectoring streams based on bit loading |
US8719866B2 (en) * | 2011-05-31 | 2014-05-06 | Fanhattan Llc | Episode picker |
US9013996B2 (en) | 2012-05-16 | 2015-04-21 | Centurylink Intellectual Property Llc | Customer configuration of broadband services |
US8896707B2 (en) | 2013-04-05 | 2014-11-25 | Centurylink Intellectual Property Llc | Video qualification device, system, and method |
-
2011
- 2011-11-22 US US13/302,055 patent/US9015343B2/en active Active
- 2011-11-22 US US13/302,051 patent/US20120131466A1/en not_active Abandoned
- 2011-11-22 US US13/302,053 patent/US8873717B2/en active Active
-
2015
- 2015-03-16 US US14/659,316 patent/US9300732B2/en active Active
-
2016
- 2016-01-15 US US14/996,904 patent/US9736230B2/en active Active
-
2017
- 2017-06-27 US US15/634,316 patent/US10320614B2/en active Active
Patent Citations (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030137938A1 (en) * | 1999-04-16 | 2003-07-24 | At&T Corp. | Method for reducing congestion in packet-switched networks |
US20030020764A1 (en) * | 2001-03-14 | 2003-01-30 | Pierre Germain | Performance and flow analysis method for communication networks |
US7043660B1 (en) * | 2001-10-08 | 2006-05-09 | Agilent Technologies, Inc. | System and method for providing distributed fault management policies in a network management system |
US20040088403A1 (en) * | 2002-11-01 | 2004-05-06 | Vikas Aggarwal | System configuration for use with a fault and performance monitoring system using distributed data gathering and storage |
US20040208133A1 (en) * | 2003-04-21 | 2004-10-21 | Dylan Jay | Method and apparatus for predicting the quality of packet data communications |
US20100257264A1 (en) * | 2003-11-20 | 2010-10-07 | Juniper Networks, Inc. | Policy analyzer |
US7903553B2 (en) * | 2004-08-05 | 2011-03-08 | Huawei Technologies Co., Ltd. | Method, apparatus, edge router and system for providing QoS guarantee |
US20070025237A1 (en) * | 2004-08-20 | 2007-02-01 | Michiyo Goto | Packet communication terminal apparatus and communication system |
US20060285500A1 (en) * | 2005-06-15 | 2006-12-21 | Booth Earl H Iii | Method and apparatus for packet loss detection |
US20070064604A1 (en) * | 2005-09-20 | 2007-03-22 | Liren Chen | Adaptive quality of service policy for dynamic networks |
US20080089237A1 (en) * | 2006-10-11 | 2008-04-17 | Ibahn Corporation | System and method for dynamic network traffic prioritization |
US20080279112A1 (en) * | 2007-05-10 | 2008-11-13 | At&T Knowledge Ventures, L.P. | System and method for configuring media network resources |
US20090116379A1 (en) * | 2007-11-02 | 2009-05-07 | At&T Knowledge Ventures, Lp | Insufficient bandwidth notification for transmission of multimedia program |
US20100246436A1 (en) * | 2009-03-26 | 2010-09-30 | At&T Services, Inc. | User-controlled network configuration for handling multiple classes of service |
US20110249572A1 (en) * | 2010-04-08 | 2011-10-13 | Singhal Anil K | Real-Time Adaptive Processing of Network Data Packets for Analysis |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9015343B2 (en) | 2010-11-23 | 2015-04-21 | Centurylink Intellectual Property Llc | User control over content delivery |
US9300732B2 (en) | 2010-11-23 | 2016-03-29 | Centurylink Intellectual Property Llc | User control over content delivery |
US9736230B2 (en) | 2010-11-23 | 2017-08-15 | Centurylink Intellectual Property Llc | User control over content delivery |
US8873717B2 (en) | 2010-11-23 | 2014-10-28 | Centurylink Intellectual Property Llc | Emergency alert signaling |
US10320614B2 (en) | 2010-11-23 | 2019-06-11 | Centurylink Intellectual Property Llc | User control over content delivery |
US8819223B2 (en) * | 2011-07-28 | 2014-08-26 | Verizon Patent And Licensing Inc. | Network component management |
US20130031237A1 (en) * | 2011-07-28 | 2013-01-31 | Michael Talbert | Network component management |
US9013996B2 (en) | 2012-05-16 | 2015-04-21 | Centurylink Intellectual Property Llc | Customer configuration of broadband services |
US10623334B2 (en) | 2012-05-16 | 2020-04-14 | Centurylink Intellectual Property Llc | Customer configuration of broadband services |
US9929975B2 (en) | 2012-05-16 | 2018-03-27 | CentruyLink Intellectual Property LLC | Customer configuration of broadband services |
US20150201348A1 (en) * | 2012-07-18 | 2015-07-16 | Commissariat à l'Energie Atomique et aux Energies Alternatives | Method for managing the configuration of a telecommunication network |
US20140185488A1 (en) * | 2012-12-28 | 2014-07-03 | Futurewei Technologies, Inc. | Methods for Dynamic Service Deployment for Virtual/Physical Multiple Device Integration |
US9762446B2 (en) * | 2012-12-28 | 2017-09-12 | Futurewei Technologies Co., Ltd. | Methods for dynamic service deployment for virtual/physical multiple device integration |
US11206665B2 (en) * | 2013-04-05 | 2021-12-21 | Time Warner Cable Enterprises Llc | Resource allocation in a wireless mesh network environment |
US10592377B2 (en) | 2013-07-15 | 2020-03-17 | Centurylink Intellectual Property Llc | Website performance tracking |
US9571363B2 (en) * | 2013-07-15 | 2017-02-14 | Centurylink Intellectual Property Llc | Control groups for network testing |
US20150019713A1 (en) * | 2013-07-15 | 2015-01-15 | Centurylink Intellectual Property Llc | Control Groups for Network Testing |
US11792083B2 (en) * | 2014-04-17 | 2023-10-17 | Accedian Networks Inc. | System and method for out-of-line real-time in-service performance measurement |
EP3387795B1 (en) * | 2015-12-11 | 2022-11-09 | Orange | Router of a domestic network, supervision interface and method for supervising the use of a domestic network |
US10523524B2 (en) | 2016-09-13 | 2019-12-31 | Gogo Llc | Usage-based bandwidth optimization |
WO2018052921A1 (en) * | 2016-09-13 | 2018-03-22 | Gogo Llc | Usage-based bandwidth optimization |
US10456673B1 (en) * | 2017-11-17 | 2019-10-29 | Amazon Technologies, Inc. | Resource selection for hosted game sessions |
US20200047067A1 (en) * | 2017-11-17 | 2020-02-13 | Amazon Technologies, Inc. | Resource selection for hosted game sessions |
US10953325B2 (en) * | 2017-11-17 | 2021-03-23 | Amazon Technologies, Inc. | Resource selection for hosted game sessions |
CN111371740A (en) * | 2020-02-17 | 2020-07-03 | 华云数据有限公司 | Message flow monitoring method and system and electronic equipment |
CN115348208A (en) * | 2021-04-27 | 2022-11-15 | 中移(苏州)软件技术有限公司 | Flow control method and device, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
US20120131096A1 (en) | 2012-05-24 |
US20150195351A1 (en) | 2015-07-09 |
US20170295064A1 (en) | 2017-10-12 |
US9300732B2 (en) | 2016-03-29 |
US8873717B2 (en) | 2014-10-28 |
US9015343B2 (en) | 2015-04-21 |
US9736230B2 (en) | 2017-08-15 |
US20160134688A1 (en) | 2016-05-12 |
US10320614B2 (en) | 2019-06-11 |
US20120126976A1 (en) | 2012-05-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20120131466A1 (en) | User-Based Monitoring and Control | |
US20240098010A1 (en) | Method and system for using a downloadable agent for a communication system, device, or link | |
US8769349B2 (en) | Managing network devices based on predictions of events | |
Isolani et al. | Interactive monitoring, visualization, and configuration of OpenFlow-based SDN | |
US8355316B1 (en) | End-to-end network monitoring | |
KR101891451B1 (en) | Method and apparatus for providing performance and usage information for a wireless local area network | |
US11283856B2 (en) | Dynamic socket QoS settings for web service connections | |
Saadi et al. | IoT enabled quality of experience measurement for next generation networks in smart cities | |
US8670448B2 (en) | Methods, systems, and computer program products for providing traffic control services | |
Kumar et al. | User control of quality of experience in home networks using SDN | |
US10079734B1 (en) | System, method, and computer program for selecting from among available network access points based on an associated quality of experience for use by a client device to access a network | |
US20130055136A1 (en) | Methods, Systems, and Products for Controlling Quality of Service and Experience | |
US20160242053A1 (en) | Method and system for identifying the cause of network problems in mobile networks and computer program thereof | |
KR20150110665A (en) | Method and apparatus for cloud services for enhancing broadband experience | |
CN115622931A (en) | Adaptive software defined wide area network application specific probing | |
Gharakheili et al. | Personalizing the home network experience using cloud-based SDN | |
Ahmad et al. | Towards information-centric collaborative QoE management using SDN | |
Lyu et al. | Network Anatomy and Real-Time Measurement of Nvidia GeForce NOW Cloud Gaming | |
US10402765B1 (en) | Analysis for network management using customer provided information | |
CN108476427A (en) | Data network management | |
US20090141877A1 (en) | SYSTEM AND APPARATUS FOR PREDICTIVE VOICE OVER INTERNET PROTOCOL (VoIP) INFRASTRUCTURE MONITORING UTILIZING ENHANCED CUSTOMER END-POINT VoIP PHONES | |
Karagiannis et al. | Homemaestro: Order from chaos in home networks | |
Lopes et al. | A multi-layer probing approach for video over 5G in vehicular scenarios | |
US20240314622A1 (en) | Smart network steering of wireless devices | |
GB2494127A (en) | Monitoring latency in a remote access connection using a virtual channel |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: EMBARQ HOLDINGS COMPANY, LLC, COLORADO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:BUGENHAGEN, MICHAEL K.;REEL/FRAME:027331/0966 Effective date: 20111121 |
|
AS | Assignment |
Owner name: CENTURYLINK INTELLECTUAL PROPERTY LLC, COLORADO Free format text: CHANGE OF NAME;ASSIGNOR:EMBARQ HOLDINGS COMPANY, LLC;REEL/FRAME:046705/0958 Effective date: 20120323 |
|
STCV | Information on status: appeal procedure |
Free format text: ON APPEAL -- AWAITING DECISION BY THE BOARD OF APPEALS |
|
STCV | Information on status: appeal procedure |
Free format text: BOARD OF APPEALS DECISION RENDERED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |