DYNAMIC UPDATE SYSTEM FOR A REMOTE PHYSICAL DEVICE
A method for updating an embedded device that includes a processor that receives an image file including at least one of kernel software, hardware configuration data, and application software. The embedded device parses the image file to determine portions of the image file that have been indicated by at least one flag as being modified from that currently being included on the embedded device. The embedded device installing at least portions of the image file on the embedded device and resetting portions of the embedded device based upon the at least one flag.
Latest ARRIS Enterprises LLC Patents:
This application claims the benefit of U.S. Provisional Patent Application Ser. No. 63/195,529 filed Jun. 1, 2021.
BACKGROUNDThe subject matter of this application relates to efficient remote-phy dataplane management for a cable system.
Cable Television (CATV) services provide content to large groups of customers (e.g., subscribers) from a central delivery unit, generally referred to as a “head end,” which distributes channels of content to its customers from this central delivery unit through an access network comprising a hybrid fiber coax (HFC) cable plant, including associated components (nodes, amplifiers and taps). Modern Cable Television (CATV) service networks, however, not only provide media content such as television channels and music channels to a customer, but also provide a host of digital communication services such as Internet Service, Video-on-Demand, telephone service such as VoIP, home automation/security, and so forth. These digital communication services, in turn, require not only communication in a downstream direction from the head end, through the HFC, typically forming a branch network and to a customer, but also require communication in an upstream direction from a customer to the head end typically through the HFC network.
To this end, CATV head ends have historically included a separate Cable Modem Termination System (CMTS), used to provide high speed data services, such as cable Internet, Voice over Internet Protocol, etc. to cable customers and a video headend system, used to provide video services, such as broadcast video and video on demand (VOD). Typically, a CMTS will include both Ethernet interfaces (or other more traditional high-speed data interfaces) as well as radio frequency (RF) interfaces so that traffic coming from the Internet can be routed (or bridged) through the Ethernet interface, through the CMTS, and then onto the RF interfaces that are connected to the cable company's hybrid fiber coax (HFC) system. Downstream traffic is delivered from the CMTS to a cable modem and/or set top box in a customer's home, while upstream traffic is delivered from a cable modem and/or set top box in a customer's home to the CMTS. The Video Headend System similarly provides video to either a set-top, TV with a video decryption card, or other device capable of demodulating and decrypting the incoming encrypted video services. Many modern CATV systems have combined the functionality of the CMTS with the video delivery system (e.g., EdgeQAM—quadrature amplitude modulation) in a single platform generally referred to an Integrated CMTS (e.g., Integrated Converged Cable Access Platform (CCAP))—video services are prepared and provided to the I-CCAP which then QAM modulates the video onto the appropriate frequencies. Still other modern CATV systems generally referred to as distributed CMTS (e.g., distributed Converged Cable Access Platform) may include a Remote PHY (or R-PHY) which relocates the physical layer (PHY) of a traditional Integrated CCAP by pushing it to the network's fiber nodes (R-MAC PHY relocates both the MAC and the PHY to the network's nodes). Thus, while the core in the CCAP performs the higher layer processing, the R-PHY device in the remote node converts the downstream data sent from the core from digital-to-analog to be transmitted on radio frequency to the cable modems and/or set top boxes, and converts the upstream radio frequency data sent from the cable modems and/or set top boxes from analog-to-digital format to be transmitted optically to the core.
For a better understanding of the invention, and to show how the same may be carried into effect, reference will now be made, by way of example, to the accompanying drawings, in which:
Referring to
Referring to
By way of example, the remote PHY device 290 may covert downstream DOCSIS (i.e., Data Over Cable Service Interface Specification) data (e.g., DOCSIS 1.0; 1.1; 2.0; 3.0; 3.1; and 4.0 each of which are incorporated herein by reference in their entirety), video data, out of band signals received from the D-CMTS 230 to analog for transmission over RF or analog optics. By way of example, the remote PHY device 290 may convert upstream DOCSIS, and out of band signals received from an analog medium, such as RF or analog optics, to digital for transmission to the D-CMTS 230. As it may be observed, depending on the particular configuration, the R-PHY may move all or a portion of the DOCSIS MAC and/or PHY layers down to the fiber node.
Referring to
For example, the management plane 300 may be generally considered as the customer interaction or otherwise the general software application being run. The management plane typically configures, monitors, and provides management, monitoring, and configuration served to all layers of the network stack and other portions of the system.
For example, the control plane 310 is a component to a switching function that often includes system configuration, management, and exchange of routing table information and forwarding information. Typically, the exchange of routing table information is performed relatively infrequently. A route controller of the control plane 310 exchanges topology information with other switches and constructs a routing table based upon a routing protocol. The control plane may also create a forwarding table for a forwarding engine. In general, the control plane may be thought of as the layer that makes decisions about where traffic is sent. Since the control functions are not performed on each arriving individual packet, they tend not to have a strict speed constraint.
For example, the data plane 320 parses packet headers for switching, manages quality of service, filtering, medium access control, encapsulations, and/or queuing. As a general matter, the data plane carriers the data traffic, which may be substantial in the case of cable distribution networks. In general, the data plane may be thought of as the layer that primarily forwards traffic to the next hop along the path to the selected destination according to the control plane logic through the switch fabric. The data plane tends to have strict speed constraints since it is performing functions on each arriving individual packet.
The remote physical device 290 needs to support updating the software of the remote physical device. For example, the D-CMTS 230 may command the remote physical device 290 to reset via a ResetCtrl GCP TLV, such as using a command line interface. For example, the remote physical device 290 may initiate a reset on its own in reaction to some internal or external event.
Referring to
The remote physical device 290 may include a soft reset 410 that provides a partial reset of the remote physical device 290. After a soft reset 410, the remote physical device 290 takes steps to hasten the remote physical device 290 initialization process and minimize service interruption. The soft reset 410 resets the remote physical device 290 volatile configuration and operating state, including terminating all connections to all D-CMTSs, releasing IP addresses obtained via DHCP, clearing network authentication information, etc. The remote physical device 290 may reset all software states except that which is needed to maintain IEEE 1588 clock frequency.
The soft reset 410 achieves quicker remote physical device 290 initialization by maintaining the current IEEE 1588 clock frequency without adjustment throughout the soft reset 410 process until it restarts the sync process with the grand master clock (GMC). This allows the remote physical device 290 to provide synchronized operation without having to engage in the time consuming full PTP sync process with the GMC.
Referring to
Referring to
In the case of either the hard reset or the soft reset, the video service, data service, out-of-band data service, etc. are impacted because the reset process kills all applications including the software dataplane. During the reset process the remote physical device 290 re-establishes the GCP (“generic control plane” is a protocol used for configuration of the remote physical device) and the L2TP (layer two tunnelling protocol) connections from scratch. Also during the reset process of the remote physical device 290, the software dataplane is restarted and reprogrammed. Further, the FPGA dataplane modulator is reprogrammed.
When the remote physical device 290 is restarted, either as a result of a hard reset or a soft reset, the processing of video content, data service, and out-of-band data does not restart until after the configuration is processed and the precision timing protocol is established or maintained. Unfortunately, for a hard reset this process typically takes 4-5 minutes to complete. In most cases, resetting the remote physical device, executing the primary boot loader, downloading of the image file (.ITB) file, and booting operating system kernel is not necessary because those portions of the remote physical device 290 remain operational. In most cases, if updating is required only the software stack 650 which includes the software dataplane 652 and the plurality of software applications 654 is modified. After modification of the software stack 650, the remote physical device 290 initializes the hardware 660 and connects with the D-CMTS 230 to be configured 670 and establish the precision timing protocol 680.
Unfortunately, the hard reset process typically requires over 4-5 minutes to complete and the soft reset process typically requires over a minute to complete, during which time services for customers are not available. A modified process is desirable to reduce the impact on the currently active services both from the perspective of the remote physical device and the perspective of the D-CMTS. To achieve a reduction in the unavailability of active services during the reset process, it is desirable to modify the image file that is downloaded to the remote physical device 290 includes multiple different portions therein. Referring to
Referring to
As previously described to reduce the impact on services it was determined that if there is an error in the dataplane, then the software dataplane should be updated (if necessary) and restarted in an effective manner. If there is an error in the software applications, then one or more of the software applications should be updated (if necessary) and restarted in an effective manner.
The soft reset process, the hard reset process, and/or any modified reset processes may be initiated in any suitable manner. For example, initiation may be through a command line interface, a command from the D-CMTS, and/or the remote physical device in the event of a failure such as a software crash, a watchdog timeout, a software upgrade, etc.
As previously noted, the process by which the image files are built may be modified to include the ability to do the comparisons and include the flags therein. The remote physical device parses the image file to determine the appropriate manner of loading the parts of the image file based upon the flags and installing them on the remote physical device.
It is noted that the process by which an image file is flagged or otherwise changes are identified in the image file may be used for other applications, apart from the remote physical device, and apart from the cable networking environment.
Moreover, each functional block or various features in each of the aforementioned embodiments may be implemented or executed by a circuitry, which is typically an integrated circuit or a plurality of integrated circuits. The circuitry designed to execute the functions described in the present specification may comprise a general-purpose processor, a digital signal processor (DSP), an application specific or general application integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gates or transistor logic, or a discrete hardware component, or a combination thereof. The general-purpose processor may be a microprocessor, or alternatively, the processor may be a conventional processor, a controller, a microcontroller or a state machine. The general-purpose processor or each circuit described above may be configured by a digital circuit or may be configured by an analogue circuit. Further, when a technology of making into an integrated circuit superseding integrated circuits at the present time appears due to advancement of a semiconductor technology, the integrated circuit by this technology is also able to be used.
It will be appreciated that the invention is not restricted to the particular embodiment that has been described, and that variations may be made therein without departing from the scope of the invention as defined in the appended claims, as interpreted in accordance with principles of prevailing law, including the doctrine of equivalents or any other principle that enlarges the enforceable scope of a claim beyond its literal scope. Unless the context indicates otherwise, a reference in a claim to the number of instances of an element, be it a reference to one instance or more than one instance, requires at least the stated number of instances of the element but is not intended to exclude from the scope of the claim a structure or method having more instances of that element than stated. The word “comprise” or a derivative thereof, when used in a claim, is used in a nonexclusive sense that is not intended to exclude the presence of other elements or steps in a claimed structure or method.
Claims
1. A cable distribution system that includes a head end connected to a plurality of customer devices through a transmission network that includes a remote fiber node that converts digital data to analog data suitable for said plurality of customer devices, where said remote fiber node includes a processor, comprising the steps of:
- (a) said remote fiber node receiving an image file including at least one of kernel software, hardware configuration data, and application software;
- (b) said remote fiber node parsing said image file to determine portions of said image file that have been indicated by at least one flag as being modified from that currently being included on said remote fiber node;
- (c) said remote fiber node installing at least portions of said image file on said remote fiber node and resetting portions of said remote fiber node based upon said at least one flag.
2. The cable distribution system of claim 1 further comprising said remote fiber node resetting software applications in a control plane.
3. The cable distribution system of claim 2 further comprising modifying at least one of said software applications as a result of resetting said remote fiber node.
4. The cable distribution system of claim 1 further comprising modifying said software dataplane as a result of resetting said remote fiber node.
5. The cable distribution system of claim 1 further comprising said remote fiber node resetting software applications in a software plane.
6. The cable distribution system of claim 1 further comprising a hard reset of said remote fiber node.
7. The cable distribution system of claim 1 further comprising a hard reset of said remote fiber node.
8. The cable distribution system of claim 1 wherein said image file includes kernel software.
9. The cable distribution system of claim 1 wherein said image file includes hardware configuration data.
10. The cable distribution system of claim 1 wherein said image file includes application software.
11. A method for updating an embedded device that includes a processor, comprising the steps of:
- (a) said embedded device receiving an image file including at least one of kernel software, hardware configuration data, and application software;
- (b) said embedded device parsing said image file to determine portions of said image file that have been indicated by at least one flag as being modified from that currently being included on said embedded device;
- (c) said embedded device installing at least portions of said image file on said embedded device and resetting portions of said embedded device based upon said at least one flag.
12. The embedded device of claim 10 further comprising said embedded device resetting software applications in a control plane.
13. The embedded device of claim 12 further comprising modifying at least one of said software applications as a result of resetting said embedded device.
14. The embedded device of claim 11 further comprising modifying said software dataplane as a result of resetting said embedded device.
15. The embedded device of claim 11 further comprising said embedded device resetting software applications in a software plane.
16. The embedded device of claim 11 further comprising a hard reset of said embedded device.
17. The embedded device of claim 11 further comprising a hard reset of said embedded device.
18. The embedded device of claim 11 wherein said image file includes kernel software.
19. The embedded device of claim 11 wherein said image file includes hardware configuration data.
20. The embedded device of claim 11 wherein said image file includes application software.
Type: Application
Filed: Jun 1, 2022
Publication Date: Dec 1, 2022
Applicant: ARRIS Enterprises LLC (Suwanee, GA)
Inventors: John DiNatale (Pembroke, MA), Steve Schroeder (Franklin, MA), Peter Walter (Walpole, MA), Kumara Swamy Tadikavagilu Venkatappa (Bengaluru), Dave Padula (East Walpole, WA)
Application Number: 17/829,948