WO2013039973A1 - Generic control protocol - Google Patents
Generic control protocol Download PDFInfo
- Publication number
- WO2013039973A1 WO2013039973A1 PCT/US2012/054760 US2012054760W WO2013039973A1 WO 2013039973 A1 WO2013039973 A1 WO 2013039973A1 US 2012054760 W US2012054760 W US 2012054760W WO 2013039973 A1 WO2013039973 A1 WO 2013039973A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- message
- gcp
- slave device
- control
- register
- Prior art date
Links
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/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2801—Broadband local area networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/2854—Wide area networks, e.g. public data networks
- H04L12/2856—Access arrangements, e.g. Internet access
- H04L12/2863—Arrangements for combining access network resources elements, e.g. channel bonding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/222—Secondary servers, e.g. proxy server, cable television Head-end
- H04N21/2221—Secondary servers, e.g. proxy server, cable television Head-end being a cable television head-end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/25—Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
- H04N21/258—Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
- H04N21/25808—Management of client data
- H04N21/25816—Management of client data involving client authentication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6106—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
- H04N21/6118—Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving cable transmission, e.g. using a cable modem
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/61—Network physical structure; Signal processing
- H04N21/6156—Network physical structure; Signal processing specially adapted to the upstream path of the transmission network
- H04N21/6168—Network physical structure; Signal processing specially adapted to the upstream path of the transmission network involving cable transmission, e.g. using a cable modem
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
- H04N21/64322—IP
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/647—Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
- H04N21/64707—Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless for transferring content from a first network to a second network, e.g. between IP and wireless
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y04—INFORMATION OR COMMUNICATION TECHNOLOGIES HAVING AN IMPACT ON OTHER TECHNOLOGY AREAS
- Y04S—SYSTEMS INTEGRATING TECHNOLOGIES RELATED TO POWER NETWORK OPERATION, COMMUNICATION OR INFORMATION TECHNOLOGIES FOR IMPROVING THE ELECTRICAL POWER GENERATION, TRANSMISSION, DISTRIBUTION, MANAGEMENT OR USAGE, i.e. SMART GRIDS
- Y04S40/00—Systems for electrical power generation, transmission, distribution or end-user application management characterised by the use of communication or information technologies, or communication or information technology specific aspects supporting them
Definitions
- the present disclosure relates to controlling Data-Over-Cable Service Interface Specification (DOCSIS) access point devices.
- DOCSIS Data-Over-Cable Service Interface Specification
- DOCSIS is a protocol that is used to send digital video and data between a hub or headend facility (HEF), and a cable modem (CM), gateway, or a set-top box at a customer premise.
- DOCSIS originates and terminates via a cable modem termination system (CMTS) at one end and a CM at the other end.
- CMTS cable modem termination system
- RF Radio Frequency
- CMTS Modulation
- PHY physical
- CMC coaxial media converter
- CMTS architecture has been specified by the cable industry's governing body, CableLabs® that supports conventional video in addition to
- CCAP Converged Cable Access Platform
- EQAM edge QAM
- downstream PHY device When the QAM is physically removed from an integrated CMTS and placed downstream it is known as an edge QAM (EQAM) or downstream PHY device.
- EQAM edge QAM
- the CCAP architecture allows DOCSIS and existing video distribution to be combined downstream, thereby allowing network component reuse to reduce overall costs.
- downstream physical layer devices While providing a more modular architecture, these downstream physical layer devices have a disadvantage in that they each must be manually configured by a network administrator for many of their operating parameters and are not configured with an integrated upstream equivalent of their downstream capability.
- FIG. 1 is an example block diagram of a cable television distribution system employing control plane pseudowires according to the techniques described herein.
- FIG. 2 is an example block diagram of a CCAP access point housed within the nodes shown in FIG. 1 that is configured to connect to the CMTS via pseudowires.
- FIG. 3 is an example procedural flowchart illustrating the manner in which a CCAP access point configuration process may be implemented according to a first example.
- FIG. 4 is an example procedural flowchart illustrating the manner in which a CCAP access point configuration process may be implemented according to a second example.
- FIG. 5 is an example block diagram of messages that can be exchanged between a master device and a slave device.
- FIG. 6 is an example generic message format for messages that can be exchanged between a master device and a slave device.
- FIG. 7 is an example transport message format for messages that can be transported between a master device and a slave device.
- FIG. 8 is an example block diagram of a pseudowire arrangement between an M- CMTS and a CCAP access point for handling upstream traffic.
- FIG. 9A is an example control plane packet for configuring upstream communication between an M-CMTS and a CCAP access point.
- FIGs. 9B-9e are example upstream communication control plane message formats. DESCRIPTION OF EXAMPLE EMBODIMENTS
- Techniques are provided herein for receiving at a CCAP access point having a network interface and a coaxial interface, control plane information from a CMTS via the network interface, where the control plane information is designed to configure the CCAP access point to enable communication over the network interface and the coaxial interface.
- DOCSIS data plane information and control plane information is received from the CMTS, and the data plane information is transmitted via the coaxial interface to one or more DOCSIS termination devices, e.g., a set-top gateway or CM. Some of the control plane information may also be transmitted to the CM.
- a master device to generate a GCP control message that is configured to manage a slave device, where the control message includes one or more of structured access fields and register access fields, and where the structured access fields include one or more of (i) a device management message configured to provide basic device control and (ii) an exchange data structure message configured with a payload field configured to store a data structure from another protocol, and where the register access fields include one or more of (i) an exchange data registers message configured to read and write to a register in the slave device and (ii) a mask write register message configured to write to individual bits of a register in the slave device.
- the control message is transmitted to the slave device.
- M-CMTS Modular Cable Modem Termination System
- first control messages comprising information to configure one or more pathways with an access point for data plane and control plane communication.
- the one or more first control messages are transmitted to the access point.
- One or more second control messages is received from the access point, where at least one second control message is forwarded from a customer premise equipment (CPE).
- CPE customer premise equipment
- the system 100 includes a headend facility (HEF) 110, a plurality of hubs 120(l)-120(m), a plurality of nodes 130(1)- 130(n), and a plurality of customers 140(1)- 140(p).
- Each of the hubs 120 or HEF 110 may have a cable modem termination system (CMTS) core such as CMTS core 170 shown in hub 120(1).
- CMTS cable modem termination system
- Each of the nodes 130(l)-130(n) has a one or more corresponding access points (APs) 135(l)-135(n), while each of the customers 140(l)-140(p) has a one or more corresponding CMs 150(1)- 150(p).
- the APs 135(l)-135(m) may be considered to be CCAP access points.
- the HEF 110 is coupled to the Internet 180, content providers 160, and Public Switched Telephone Network 190, to provide these services to customers 140(l)-140(p).
- the HEF 110 is connected to various content providers 160 for providing media content (e.g., movies, television channels, etc.).
- the content is further distributed by hubs 120(l)-120(m) to plurality of nodes. In this example, hub 120(1) distributes content to nodes 130(l)-130(n).
- Nodes 130(l)-130(n) distribute content to various customers, e.g., node 130(1) distributes the content to customer 140(1) in the form of conventional digital or Internet Protocol (IP) television.
- IP Internet Protocol
- nodes 130(l)-130(n) communicate via optical fibers with hub 120(1) and via coaxial (coax) cable to customer premises 140(1)- 140(p), and as such, the combination of fiber and coax is known as a hybrid fiber coax (HFC) network (any combination of fiber and coax, may be used anywhere in system 100).
- CMTS core 170 is used to provide high speed data services including cable Internet, voice over IP (VoIP), and IP television services to various subscribers.
- the HEF 110 is coupled to Internet 180 and PSTN 190 for providing Internet and telephony services (e.g., to and from customer 140(l)-140(p)). Media content may also be distributed by content providers 160 via Internet 180. Each of the hubs 120(l)-120(m) may also be coupled to Internet 180 and PSTN 190.
- DOCSIS is used to convey Internet or other packet based networking information, as well as packetized digital video between CMTSs and CMs.
- DOCSIS may be carried between CMTS core 170 and node 130(1) using fiber optic or other medium at the physical layer.
- the physical (PHY) layer may be referred to herein simply as a downstream PHY or PHY layer.
- CCAP AP 135(1) converts the downstream optical PHY to downstream coaxial PHY for transmission to CM 150(1).
- CCAP AP 135(1) converts the upstream coaxial PHY to upstream optical PHY for transmission to CMTS core 170.
- CCAP AP 135(1) may also provide Media Access Control (MAC) protocol layer services.
- MAC Media Access Control
- the CCAP access point may be collocated with the M- CMTS as part of a PHY shelf.
- a downstream PHY e.g., a fiber node, which houses one or more EQAMs to provide radio frequency (RF) modulation for downstream transmission.
- RF radio frequency
- various electrical-to-optical (E/O) and optical-to-electrical (O/E) conversions may take place along the downstream and upstream DOCSIS pathways, with a coaxial PHY ultimately presented at the customer premise, e.g., at CMs 150(l)-150(p).
- the downstream nodes can employ an Internet Protocol (IP) tunnel that encapsulates DOCSIS according to the Downstream External-PHY Interface (DEPI) specification. While DEPI provides some control plane information, this information may be limited to the DOCSIS realm.
- IP Internet Protocol
- DEPI Downstream External-PHY Interface
- the CCAP access point is configured manually, e.g., or whether the EQAM will use QAM-64 or QAM-256 modulation as is known in the art.
- Some downstream parameters may be configured using DEPI.
- the CCAP access point's IP address and station ID are traditionally configured manually.
- a control plane tunnel is added that facilitates configuration of a CCAP access point, the CCAP access point having an architecture that interfaces with the control plane tunnel.
- the control plane tunnel uses a new protocol referred to as Generic Control Protocol (GCP) that will be further described hereinafter.
- GCP Generic Control Protocol
- UEPI upstream External-PHY Interface
- GCP Generic Control Protocol
- UEPI operation is also described hereinafter.
- the GCP, DEPI, and UEPI tunnels may be referred to as pseudowires as indicated by link 195 between CMTS core 170 and node 130(1).
- a pseudowire is a network connection that encapsulates a point-to-point protocol using a packet network protocol, where the encapsulation is transparent to the point-to-point endpoints.
- Many pseudowires carry time sensitive data or protocols that require synchronization and therefore use a timing source.
- the pseudowires may be facilitated, e.g., by Multi-Protocol Label Switching (MPLS) or Layer 2 Tunneling Protocol version 3 (L2TPv3).
- MPLS Multi-Protocol Label Switching
- L2TPv3 Layer 2 Tunneling Protocol version 3
- GCP is not a pseudowire, per se, since it carries control plane information, but for ease of description, GCP may be conceptually thought of as a pseudowire.
- Any node or access point in system 100 may include hardware and software provisioned to implement the techniques described herein may be configured in a manner as described for node 130(1) and/or AP 135(1).
- CCAP AP 135(1) An example block diagram of a CCAP access point, e.g., AP 135(1), housed within the nodes shown in FIG. 1 is illustrated in FIG. 2.
- CCAP AP 135(1) is configured to connect the CMTS core via GCP, DEPI, and UEPI pseudowires and to a plurality of CMs, e.g., CMs 150(1)- 150(p).
- AP 135(1) may contain optional high and low pass filters or diplexers 220(1) and 220(2), as well as optional upstream and downstream amplifiers 280(1) and 280(2) to facilitate one or more downstream and upstream pass through connections.
- a pass through connection may be used for video overlays or other bypass signaling, e.g., for switched digital video (SDV) sent from another device or system.
- SDV switched digital video
- some downstream spectrum can be allocated to headend supplied video, e.g., video on demand (VOD) or switched digital video (SDV), while other spectrum is allocated for DOCSIS.
- the pass through connection may contain an in-line attenuator to match the power of the pass through video with the output power of remote PHY subassembly at combiner 270(1).
- the CCAP AP is an optical node, a CCAP external PHY, or DOCSIS PHY. These devices can be remote to the CMTS or part of a PHY shelf with the CMTS core. Video can be encapsulated in DEPI and controlled by GCP.
- AP 135(1) comprises a remote PHY subassembly 210 for converting, e.g., a downstream incoming PHY layer to a downstream coaxial PHY layer for transmission to a downstream device, e.g., CM 150(1).
- Remote PHY subassembly 210 includes a network interface (I/F) 230, a MAC layer interface 240, a plurality of downstream (DS) PHY transmitters 250, a plurality of upstream (US) PHY receivers 260, a controller 290, and memory 295.
- I/F network interface
- DS downstream
- US upstream
- Combiner 270(1) combines video overlay with DOCSIS from DS PHYs 250 for downstream forwarding and splitter 270(2) splits the DOCSIS upstream to US PHYs 260.
- PHY layer downstream video overlay is received at diplexer 220(1) and forwarded by way of the high pass filter to combiner 270(1) and is further filtered by the high pass side of diplexer 220(2).
- diplexer 220(2) On the upstream side, diplexer 220(2) passes lower frequency RF upstream components, e.g., non-DOCSIS CM upstream signals, and blocks high frequency RF components that may interfere with downstream communication.
- Splitter 270(2) also splits the upstream signal to diplexer 220(1) along an optional (dashed) return path 285.
- Return path 285 is optional because a DOCSIS return path is provided via network interface 230.
- the network interface 230 interfaces the DOCSIS upstream and downstream with an M-CMTS core, e.g., CMTS core 170.
- the network interface 230 may comprise, e.g., one or more of an optical interface, an Ethernet over a passive optical network (EPON) interface, a Gigabit Ethernet over a passive optical network (GPON) interface, an Ethernet interface, and an electrical network interface.
- MAC layer 240 decapsulates the MAC and forwards the frame, and encapsulates the MAC layer for upstream transmission, e.g., UEPI encapsulation. For example, the MAC layer 240 detects incoming packets or frames using start of frame and end of frame delimiters.
- the MAC layer may prepend an internal header onto the frame that provides upstream or downstream flows with details such as ingress port, type of port, ingress Virtual Local Area Network (VLAN), frame quality of service (QoS) markings, and a timestamp indicating when the frame entered the AP.
- the MAC layer 240 may also check that the received downstream frame contains no errors by validating its cyclic redundancy check (CRC).
- CRC cyclic redundancy check
- the MAC layer 240 may provide any formatting necessary, drop outdated frames, and add or remove the appropriate header information.
- DOCSIS streams On the downstream side, DOCSIS streams, by way of MAC, or other information, is forwarded to the plurality of DS PHYs 250 for reception by a plurality of DS devices, e.g., CMs 150(l)-150(p).
- the plurality of DS PHYs will modulate the various DOCSIS downstreams or flows on the appropriate RF channel to CMs 150(l)-150(p).
- the plurality of DS PHYs is combined with video overlays by combiner 270(1).
- DOCSIS streams are divided from bypass streams by splitter 270(2).
- the DOCSIS upstream flows are received by the plurality of upstream PHYs 260, processed by MAC interface 240, and forwarded by network interface 230 to CMTS core 170.
- the MAC interface 240 encapsulates the upstream packets for transmission to CMTS core 170.
- remote PHY subassembly 210 may include a controller 290 and memory 295, or other facilitating hardware, firmware, and software. Controller 290 and/or memory 295 may be connected to any of the components in AP 135(1), e.g., via a circuit board or other interface. By virtue of the techniques described herein, controller 290 and memory 295 may implement parts of a dynamic CCAP access point configuration process described in further detail in connection with FIGs. 3 and 4.
- Memory unit 295 stores data and/or software or processor instructions that are executed to operate the AP 135(1) by controller 290.
- the DEPI and UEPI pseudowires carry DOCSIS data and control plane information, while AP 135(1) configuration information is conveyed via GCP.
- the controller 290 may be a microcontroller, processor, field programmable gate array (FPGA), application specific integrated circuit (ASIC), and the like.
- the controller 290 is programmed to configure the various components in AP 135(1).
- the memory 295 may be provided to facilitate the techniques described herein that is separate or part of the controller 290. Any form of non-transitory tangible or computer readable media may be provided, e.g., random access memory (RAM) or flash memory.
- the interface unit 230 may be equipped with a wireless (e.g., Wi-Fi®/Long Term Evolution (LTE)) or wired network interface (e.g., Ethernet) so that GCP control programming information or packet based information may be exchanged.
- a wireless e.g., Wi-Fi®/Long Term Evolution (LTE)
- wired network interface e.g., Ethernet
- Similar hardware memory, processors, and software elements may be present throughout network 100, e.g., CMTS 170 has such processing capability.
- GCP allows one device to control another device.
- GCP allows the reuse of data bus structures from other protocols, and thus, allows direct read and/or write of hardware, firmware, and/or software configuration parameters to include reads and writes at the hardware register level to include any associated device interrupts and servicing any interrupt service routines (ISRs).
- GCP may include configuration of port, channels, frequencies, modulation schemes, and protocols.
- there may be multiple controllers e.g., a node controller and an ASIC controller.
- a first GCP connection between the M-CMTS core and node controller may use structured access (TLV) messages, while second GCP connection between the node controller and the ASIC controller may carry register access messages between the node controller and the ASIC controller.
- TLV structured access
- FIG. 3 an example procedural flowchart illustrating a specific example in which CCAP access point configuration process 300a may be implemented.
- a generic CCAP AP configuration process variation 300b is described in connection with FIG. 4.
- an access point e.g., AP 135(1)
- AP 135(1) is powered up or otherwise booted (e.g., via a hot, warm, or cold start).
- AP authentication procedure e.g., an IEEE 802. IX or Remote Authentication Dial In User Service (RADIUS) authentication procedure.
- RADIUS Remote Authentication Dial In User Service
- AP After authentication, at 320, it is determined whether or not the AP has an assigned IP address. If the AP is not IP addressed, at 325, a Dynamic Host Configuration Protocol (DHCP) procedure (with any DHCP extensions) is run in order to assign an IP address to the AP.
- DHCP Dynamic Host Configuration Protocol
- the AP is assigned an IP address, it is determined, at 330, whether or not the AP has a current software and/or firmware image.
- an image download procedure is run, e.g., Trivial File Transfer Protocol (TFTP) or FTP.
- TFTP Trivial File Transfer Protocol
- FTP FTP Transfer Protocol
- Configuration of the AP entails an exchange of GCP messages between the configuration source, e.g., a headend facility or a CMTS core, and the AP, in order to set data rates, modulation schemes, frequencies or channels, etc.
- the GCP messages may be exchanged via a GCP tunnel as described above.
- the AP it is determined, at 350, whether or not the AP has clocking or packet transfer timing is established. When clocking is not established, at 355, a clocking procedure is run, e.g., to establish IEEE 1588 timing or DOCSIS timing via a DOCSIS Timing Interface (DTI). In another example, and in certain implementations, DS and US clocking may be managed within the AP itself and an external timing source is unnecessary.
- a clocking procedure is run, e.g., to establish IEEE 1588 timing or DOCSIS timing via a DOCSIS Timing Interface (DTI). In another example, and in certain implementations, DS and US clocking may be managed within the AP itself and an external timing source is unnecessary.
- DEPI and UEPI tunnels it is determined whether or not the AP is connected in the sense that DEPI and UEPI tunnels are established. If not, at 365, the DEPI and UEPI tunnels are established, e.g., using L2TPv3 with the corresponding DEPI and UE
- the CCAP access point is booted, authenticated, configured, and connected; the AP having a network interface and a coaxial interface, as described above.
- the AP may be authenticated with an upstream authentication system.
- the AP receives control plane information from, e.g., a CMTS, via the network interface, e.g., network interface 230 (FIG. 2).
- the CCAP access point is configured to enable communication over the network interface and the coaxial interface using the control plane information.
- the coaxial interface may comprise one or more of a MAC layer and a PHY layer.
- the network interface comprises one or more of an optical interface, an EPON interface, a GPON interface, an Ethernet interface, and an electrical network interface.
- the CCAP access point is configured by running a GCP procedure in order to configure one or more of software and hardware parameters in the CCAP access point for exchanging DOCSIS between the network interface and the coaxial interface.
- the CCAP access point is connected by establishing one or more layer 3 tunnels between the CMTS system and the AP.
- the layer 3 tunnels may be established via one or more of a DEPI, a UEPI, and a GCP pseudowire between the CMTS system and the CCAP access point.
- GCP is a generic control plane protocol that exists between a master entity and a slave entity. Generally, the master entity controls the slave entity. GCP is able to re-use control plane concepts that are derived elsewhere but used in a new context, or control plane concepts otherwise derived anew. In this regard, it is typical for remote devices to require configuration. If the technology that is in a new remote device has been well defined in previous devices, then the previous data structures can be re-used within GCP.
- MULPI Upper Layer Protocols Interface
- GCP also provides for existing state machines and software code to be leveraged. When GCP is used to tunnel the data structures from another protocol, the following
- GCP tag
- TLV type-length-value
- UCD Upstream Channel Descriptor
- GCP can read and write parameters, either directly to and from registers or with higher layer data structures.
- GCP can be used to reset, power up, or power down the device. The device can send the equivalent of a hardware interrupt via the GCP command structure.
- GCP allows chips that were previously embedded to be located across a network interface such as Ethernet.
- a GCP master device 510 is shown along with a GCP slave device 520.
- GCP master 510 sends a request message 530 to slave device 520.
- the GCP slave responds with an optional response message 540.
- the slave 520 can send a notify message 550.
- the notify message 550 may act as a software or hardware interrupt to the master 510 such that the master 510 can service the notify message 550 via an interrupt service routing (ISR).
- ISR interrupt service routing
- GCP also has a peer-to-peer mode that permits both endpoints to simultaneously be both masters and slaves.
- the peer-to-peer mode operates as two independent master-slave modes, in opposite directions, e.g., on the same port number. It is acceptable for systems to implement a subset of the GCP message set. Accordingly, GCP is a framework from which other systems and protocol infrastructures can be built upon and re-used, if possible. GCP can be used in any architecture where devices are connected with a network. In other words, GCP may be used within a chassis or across a continent. GCP uses transport protocol such as Transmission Control Protocol (TCP) TCP/IP as its ultimate transport, so it is independent of both network topology and network technology. When TCP or equivalent reliable transport is used
- TCP Transmission Control Protocol
- Ethernet is often used as the layer 2 framing, any layer 2 framing could be used, or be replaced on a per-hop network basis.
- the Message Identifier is shown as a one -byte value that defines the message type, e.g., the tag as described above, i.e., GCP (tag).
- the most significant bit may be set to a zero in the request message and may be set to a one in the response message.
- a message ID of zero may be defined as not valid.
- the length field is the number of bytes contained in the message starting after the length field and ending at the end of the message.
- the length includes all fixed and variable length fields following the length field. There may then be one or more fixed parameter fields that are unique to each message.
- the fixed length fields of GCP often contain a transaction ID and a mode field.
- the transaction identifier field uniquely identifies each transaction.
- a transaction includes a request and its matching response.
- the number space of the Transaction Identifier is unique within the GCP master and GCP slave but not across the two devices.
- the mode field is used for modifying the action of the message.
- the mode field is unique per message.
- the length of the message is not important for the TCP transport since TCP will segment the message as needed to fit into an IP packet that conforms to the MTU (maximum transmission unit) of the networking interface.
- MTU maximum transmission unit
- UDP User Datagram Protocol
- L2TPv3 Low-power transport protocol
- a maximum length needs to be observed.
- the DOCSIS MULPI specification contains an extensive study on how an upstream burst demodulator works and performs.
- the CMTS has to signal to the CM all the configuration parameters for the burst demodulator. These parameters are contained in a DOCSIS MAC management message called the Upstream Channel Descriptor (UCD).
- UCD Upstream Channel Descriptor
- GCP permits the definition of a higher-level data structure which then can point to a low-level data structure that is contained elsewhere.
- the GCP pointer can be achieved by defining the following variables:
- Structure ID 35 (DOCSIS UCD)
- the vendor ID and structure ID pair can be changed to indicate an allowed set of data structures, as well as the types of register access that may be permitted, e.g., a CableLabs Vendor ID and structure ID pair may specify CCAP component parameters, while a Cisco vendor ID and structure ID pair may specify parameters for configuring a satellite router system, or a
- MicroStrain vendor ID and structure ID pair may specify parameters for configuring a wireless sensor network.
- GCP GCP
- UCD User Datagram Protocol
- a separate specification could be written that would describe GCP (UCD), what data structures are used, and how they are packed into the GCP message payload, all the while maintaining the originally specified UCD data structure.
- GCP can be used for power management in remote sensor networks or routers in a satellite router configuration where a master router forwards layer 2, 3, or, 4 forwarding table information, Quality of Service (QoS) parameters, security configuration, and the like.
- QoS Quality of Service
- Device communication considerations may include device port and channel numbers.
- the slave device that is being addressed may have one or more physical ports. Each port may have one or more channels; the combination of port and channel mnemonics is shown in Table 1 below.
- Several of the GCP messages make use of these fields, e.g., which may be four byte fields.
- the GCP header in the network protocol payload has an additional Unit Identifier (UI) field that is described later.
- UI Unit Identifier
- the port and channel fields contain a direct reference to the area of the device for which the data structure should be applied.
- a wild card may be defined for these fields as OxFFFF, which indicate that the specific port or channel assignment does not apply and that all ports and/or channels should be updated per the GCP request message, i.e., message attributes are to be applied to all Ports and/or Channels.
- the wild card value, "*" as shown in Table 1 allows for the reduction of signaling messages when there is common configuration across many ports and channels.
- the wild card may be used as if the port and/or channel information is embedded in the data structure and these explicit fields are not required for operation. Examples of usages of these values are shown in Table 1 below: Port Channel Mnemonic Comments
- OxFFFF N * N Apply message to channel N of all ports.
- OxFFFF OxFFFF * * Apply message to all channels on all ports.
- the numerical values of the ports and channels are application dependent and not dictated by GCP. For example, a general message could be used to assign specific port and channel numbers. Subsequent messages could then use these assigned port and channel numbers. Applications may also sub-divide the port and/or channel number space anyway applicable to represent different types of ports, and/or groups of channels and sub-channels.
- GCP may be used as a protocol for managing remote devices
- GCP contains some basic functions for managing a particular device. Among these functions are ping, reset, and power management. These modes are coordinated using the Device Management message and the Notify message. The following modes available for device management are shown in Table 2 below:
- a ping can be used as a ping, a keep-alive, or a test function.
- Standby The device should respond and then go to a standby state.
- the device is in a power-reduced state and can come back to operational mode on its own based upon its own criteria. If it transitions to
- the wake-up and power-up messages would typically use the last known slave device IP address. These commands are only effective when there is a valid IP address to communicate with the slave. This implies that in both a slave device's standby and power-down modes, there is at least some circuit that is monitoring the network connection and maintaining network addressing.
- GCP as a protocol can evolve as necessary for master and slave communication. Further, various devices may only need a subset of the GCP messages. When GCP is employed and a message is received that is unknown or unsupported, then a specific null response may be generated using a format shown in Table 3 below:
- Example device response message [0059] Since GCP request and response messages tend to differ at least by the LSB, the GCP master accepts an unsupported message error response with either the same message number or, e.g., the message number with the LSB set (incremented by one).
- all GCP messages are designed to be exchanged in pairs, e.g., a request and response, as mentioned above.
- the request and response form a transaction.
- Each transaction has a transaction ID.
- the transaction ID is unique within a transport session, such as a TCP connection. If a GCP slave has multiple masters, then the transaction IDs will be considered as separate number spaces as they will be associated with different TCP connections.
- the transaction ID may be designed to be unique within a given period of time. The definition of this period of time is application dependent and is not specified by GCP. The period of time should exceed the longest expected outstanding transaction.
- a transaction ID on a per message basis there may be a transaction ID assigned on a per packet basis.
- the transaction ID per message is used when the GCP message are randomly multiplexed into a packet and transported. If the GCP messages are sent as a set, then the packet transaction ID can be used for delineation. A transaction ID of all zeros can be reserved to indicate that the transaction ID should be ignored. The GCP master can choose to ignore the message transaction ID, the packet transaction ID, or both. Since GCP is delivered over a reliable protocol such as TCP, TCP will guarantee delivery of both the request and response message. If there is a network error that prevents delivery of these messages, TCP will indicate that network session has been lost. In the event of a lost TCP session, the GCP master and slave message state machines should close out all pending transactions.
- FIG. 7 An example transport encapsulation for GCP transport is shown in FIG. 7 and in greater detail in FIG. 9A.
- an Ethernet frame 700 is shown with the
- Ethernet, IP, and TCP headers corresponding Ethernet, IP, and TCP headers, as well as an Ethernet Cyclic Redundancy Check (CRC) footer.
- the payload of the Ethernet frame has GCP header and GCP payload for transport.
- GCP Global System for Mobile communications
- UDP may be used. For example, implementations that are agnostic to dropped packets or if the
- L2TPv3 may be used for tunneling over a layer 3 network, as mentioned above.
- GCP header and message information may be carried in fields 920 and 930, as viewed in FIG. 9A.
- Both the GCP master and slave devices can initiate a request message, depending upon the message type. In some implementations, it may be possible for the GCP device to reliably receive a message from TCP and then lose that message internally. If so, the GCP device that initiates a transaction by sending a request message can implement a transaction timer so that it can internally declare a failure when a response message is not received. The value of that timer is application dependent and is not specified by GCP. The intent of this timer is not to replace or supplement the inherent reliability of the transport, but to allow for internal failure of the receiving GCP device. In the event of a missing response message, the sending GCP device should close the current transaction and start a new transaction rather than resending the message request with the previous transaction ID.
- This type of operation prevents the existence of duplicate messages and permits a more orderly operation of the network. It is possible for a race condition to develop if the response message timeout at the sending GCP device is too quick and the response time from either the GCP Slave or the network in between is too slow. This latency may result in late response messages and redundant transactions, and the GCP device should adjust its timer accordingly or take some other application dependent action.
- GCP supports different width data paths on the master and slave devices. Due to the cost sensitivity of the slave device in design or certain markets, the slave device may have an 8- bit, 16-bit, or 32-bit data path. The same could be true for a master device, although a 32-bit master device would be more common. This provides at least three scenarios:
- GCP may be typically run over a serialized network connection, in general, there is an automatic conversion between these master and slave environments processing environments.
- Structured access uses data constructs such as a TLVs to program functionality in the GCP slave. Structured access allows for more hardware independence and is more of an operational model. Register access uses direct register reads and writes. Register access can be useful for diagnostics or low level driver level access. Example messages used in GCP and their corresponding message ID are shown in Table 4 below:
- Table 4 Example message IDs for structured access messages.
- GCP Register Message Summary GCP messages fall into two general categories: structured and registered. Register access uses direct register reads and writes. Register access can be useful for diagnostics or low level driver level access. The messages used in GCP a for register access are shown in Table 5 below:
- Table 5 Example message IDs for register access messages.
- GCP unstructured access need not support an explicit and protected read-modify- write operation.
- a read-modify-write operation is often used in software drivers when a part of a register that is going to be updated and the rest of the register is to remain the same.
- GCP leaves it up to the higher layer software drivers to ensure that if it does a read-modify-write to a register location, that no other software process writes to the same register location during the read- modify-write.
- GCP includes a Mask- Write operation.
- Notify messages are sent from a slave to a master. An example notify message is shown in Table 6 below and a normal response from the master is shown in Table 7. When an error occurs, the error message shown in Table 8 may be sent by the master in lieu of or in addition to the response message.
- Device management messages are sent from a slave to a master.
- the Device Management message defines basic and common powering functions that can be used to manage the endpoint device (acting as a slave).
- An example Device management message is shown in Table 9 below and a normal response from the master is shown in Table 10. When an error occurs, the error message shown in Table 11 is sent by the master in lieu of or in addition to the response message.
- the Exchange Data Structures (EDS) message allows data structures that have been well defined in other protocols or new data structures to be tunneled through the GCP protocol.
- EDS Exchange Data Structures
- a typical use would be to reuse TLV definitions from one system in a new system.
- An example EDS request message is shown in Table 12 below and a normal response from the slave is shown in Table 13. When an error occurs, the error message shown in Table 14 is sent by the slave in lieu of or in addition to the response message.
- EDS data structures could potentially be larger than the MTU of an IP packet. TCP will automatically segment this message if necessary across multiple IP packets. Port and channel usage shown in Tables 12 and 13 has been described in connection with Table 1 above.
- the Vendor ID field indicates what organization has defined the specific data structures to be used.
- the Vendor Index is unique to the vendor and chooses a data structure within the Vendors definition.
- the combination of the Vendor ID and the Vendor Index fields provide a wide choice of data structures.
- the data structures in the response message may be completely different and of a different length than the data structures in the request message.
- the message does not contain the length of data structure field. The length is managed by the transport, e.g., TCP.
- GCP uses EDR and MWR messages the corresponding EDR and MWR message IDs are shown in Table 5 above.
- This message allows one or more registers in the slave device to be written by the master device starting at a specified base address and then have those registers read back in the response message.
- the message allows a write-only, a read-only, or a write- with-read-back.
- An example EDR request message is shown in Table 15 below and a normal response from the slave is shown in Table 16 When an error occurs, the error message shown in Table 17 is sent by the slave in lieu of or in addition to the response message.
- Mode 1 byte bit 7: 0 Send normal response
- the EDR message is fundamentally a register write with read-back message of which write-only and read-only are subsets of the main message.
- the default Mode field is all zeros.
- the normal EDR response message can be suppressed by asserting the "suppress normal response bit". This mode may be useful when a series of back-to-back writes are performed and there is a desire to reduce the workload on the remote device. In the event of an error at the GCP slave, the GCP slave will return an error response with the appropriate error code.
- the slave device should perform a true internal write followed by a true internal read rather than just echoing the data back. This command allows the master to verify that the correct values where written.
- the address field is incremented with consecutive writes and/or reads. If a first- in first- out (FIFO) mode is specified, then the address field is held constant.
- the FIFO mode is for a FIFO input or output that is located at a fixed memory location.
- the GCP master and GCP slave may have very different internal architectures.
- the GCP master may be a high-end processor system with a 32-bit data bus while the GCP slave might be a small embedded processor with an 8-bit or 16-bit data bus.
- the variation between systems includes data bus width as well as the number of bytes per address location.
- GCP moves data from one system to the other over a serial transport, there is a natural conversion between the two systems.
- the data requires specific handling, such as the preservation of a 32-bit value
- GCP allows the data to be identified as such.
- the address pointer (starting address) and a byte count can identify the stream data.
- the GCP master and slave inherently know what to do. This is the
- N bit Data provided is from memory or a register set that is N bit sizes, where N
- Endian The data can be marked as being big-endian or little-endian. The default
- MWR Mask Write Register
- Table 20 An example MWR request message is shown in Table 20 below and a normal response from the slave is shown in Table 21. When an error occurs, the error message shown in Table 22 is sent by the slave in lieu of or in addition to the response message.
- Mode 1 bytes bit 7: 0 Send normal response
- bit 2-0: 001 8-bit data width
- the normal MWR response message can be suppressed by asserting the "suppress normal response bit". This mode may be useful when a series of back- to-back writes are performed and there is a desire to reduce the workload on the remote device. In the event of an error at the GCP slave, the GCP slave will return an error response with the appropriate error code.
- the MWR request message specifies the register to be written, the data to be used as the AND mask, and the data to be used as the OR mask.
- the number of bytes written and read, and hence the size of the mask is specified in the mode field. When less than 64 bits are used, the least order bytes in the MASK fields may be used.
- the unused bits in the AND_MASK and OR_MASK field should be set to 0 by the master and ignored by the slave.
- OR_Mask value is zero, the result is simply the logical ANDing of the current contents and AND_Mask. If the AND_Mask value is zero, the result is equal to the OR_Mask value.
- the GCP response message contains a return or exception code that indicates either success or a specific type of failure.
- Example return codes are show in Table 24:
- Error codes in this example are assigned in numerical order. If there are multiple errors, only the lowest value error code may be reported.
- GCP may also be used in a debug mode in which a master or slave device can be monitored or debugged by each other, another application, or by a user via a user interface.
- UEPI control plane operation is described next.
- the UEPI pseudowires carry upstream data plane information and control plane information for upstream communication.
- the UEPI control plane can configure point-to-point (P2P) between a CMTS core and CCAP access point, and point-to-multipoint (P2MP) communication between a CMTS single MAC and multiple CCAP access points.
- P2P point-to-point
- P2MP point-to-multipoint
- each tunnel has a unique pairing of source and destination IP addresses and may support multiple transport sessions.
- a pseudowire is implemented via a single session with a corresponding session ID.
- Each DEPI and UEPI transmitter has a unique transport stream ID (TSID) and each DEPI and UEPI receiver has a unique receive stream ID (RSID).
- TSID transport stream ID
- RSID receive stream ID
- each CMTS core and CCAP access point pair can support at least two logical channels; one for DEPI and one for UEPI.
- the logical channel assignment is within the RSID.
- DEPI and UEPI can use separate pseudowires so that
- DEPI and UEPI could share a common session for a transmit and receive matched pair.
- FIG. 8 an example block diagram of UEPI pseudowires between an M-CMTS core and a CCAP access point for handling upstream traffic is now described.
- pseudowires are shown between M-CMTS core 170 (FIG. 1) and CCAP AP 135(1) (FIG.2).
- CMTS core 170 is divided into three logical entities that include an upstream MAC entity 810, an upstream scheduling entity 820, and an upstream spectrum management entity 830.
- CCAP AP 135(1) is shown with the remote PHY assembly 210 (FIG. 2).
- the CCAP AP 135(1) is connected to a DOCSIS RF interface (RFI) 885 via link 880 while the upstream MAC entity 810 is connected to a packet processor 895 via link 890.
- RFI DOCSIS RF interface
- the UEPI data pseudowire 840 is used to forward upstream traffic, e.g., data from a CM, to the CMTS core 170 for further forwarding by packet processor 895.
- the UEPI MAP pseudowire 845 provides scheduling information, e.g., time slots and contention periods, to downstream devices.
- the UEPI RNG-REQ pseudowire 850 requests ranging information so that downstream devices, e.g., CMs or DOCSIS gateways, can transmit upstream packets to arrive upstream within a scheduled time slot.
- the UEPI REQ pseudowire 860 carries any other requests from the downstream devices. Although the pseudowires are described as being separate, the underlying messages may be shared over a single pseudowire. For example, messages for the MAP, REQ, and RNG- REQ pseudowires could be sent over a single pseudowire. It should be noted that the PHY configuration for Advanced Time Division Multiple Access (ATMDA) and Synchronous Code Division Multiple Access (SCDMA) parameters needed to configure the CCAP access point are defined in MULPI and could be sent to the CCAP access point using GCP. The SpecMan pseudowire 870 is used to manage upstream spectrum between the CCAP access point and the M-CMTS core.
- ATMDA Advanced Time Division Multiple Access
- SCDMA Synchronous Code Division Multiple Access
- UEPI has two modes, a basic mode and an advanced mode. In the UEPI advanced mode, all pseudowires are employed, as described later.
- the CMTS sends the DOCSIS MAP over the DEPI pseudowire.
- the CCAP AP extracts the MAP from the DEPI pseudowire.
- the CCAP AP sends data, REQ messages, and RNG-REQ messages to the CMTS over the UEPI Data pseudowire. In this mode, UEPI MAP, RNG-REQ, REQ, and SpecMan pseudowires do not get used.
- the CMTS sends a MAP message on the UEPI MAP pseudowire.
- the CMTS can send a MAP in the DEPI session, but the CCAP AP is configured to ignore that MAP message when MAPs are being received via UEPI.
- the MAP message in the DEPI session propagates to the CMs. This allows the MAP to get to the CCAP AP earlier which reduces the MAP advance time.
- DEPI is configured to use Packet Streaming Protocol (PSP)
- PSP Packet Streaming Protocol
- the CCAP AP could take the MAP message from the UEPI MAP pseudowire and inject it into the CCAP AP downstream.
- PSP is a layer-3 convergence layer protocol, which allows packets to be consecutively streamed together and fragmented at arbitrary boundaries. PSP facilitates QoS.
- the upstream scheduling entity 820 (or scheduler) generates MAPs using the REQ and RNG-REQ messages.
- the scheduler is shown in the CMTS, but may be placed in the CCAP AP, depending on system design. When the scheduler resides in the CCAP AP, the REQ, RNG- REQ, and MAP pseudowires can be eliminated.
- the upstream scheduler When the upstream scheduler is remote, e.g., as part of the CCAP access point, a couple of scheduling methods may be employed: 1) Publish an interface, e.g., DEPI, UEPI, and GCP with extensions, and the CCAP AP writes its own scheduler, or 2) the scheduler may be published, e.g., as a Linux loadable module with an API pushed by CMTS at boot time or in real-time to the CCAP access point. When a loadable module is published, the upstream scheduler "appears" as an application to the CCAP access point.
- an interface e.g., DEPI, UEPI, and GCP with extensions
- the CCAP AP writes its own scheduler
- the scheduler may be published, e.g., as a Linux loadable module with an API pushed by CMTS at boot time or in real-time to the CCAP access point.
- the upstream scheduler When a loadable module is published, the upstream scheduler "a
- the DOCSIS signaling can remain centralized with few limited exceptions.
- the scheduler is remote the DOCSIS MAP message can be sent from the CCAP access point to the CMs and does not originate at the CMTS core.
- the synchronization (SYNC) message is sent from the CCAP access point and the ranging interval is initiated by the CCAP access point. Any CM initiated messages are responded to by the CMTS.
- many of the MAC management messages can be moved to the CCAP access point.
- the upstream bonding may be configured to terminate in the CCAP access point with data forwarded over fiber to the CMTS core.
- a DOCSIS framer e.g., for encapsulating DOCSIS MAC frames
- a remote scheduler AVP for UEPI and a remote DOCSIS framer AVP are described below in connection with FIG. 9D.
- L2TPv3 encapsulation is used with customized Attribute- Value Pairs (A VPs).
- a VPs An example control plane packet format is shown in FIG. 9A. The packet has a standard Ethernet header 900 and CRC 940.
- Ethernet packet 900 Within the Ethernet packet 900 is an optional VLAN header, an IPv6 or IPv4 header 910, an optional UDP header 915, an L2TPv3 control header 920, and a list of one or more L2TPv3 AVPs 930.
- the custom AVPs carry the UEPI upstream communication configuration parameters associated with the MAP, REQ, RNG-REQ, and SpecMan UEPI pseudowires. The custom AVPs are described in detail hereinafter in connection with FIGs. 9B-9E.
- L2TPv3 header 920 follows the standard format parameters. These fields follow the L2TPv3 Request for Comments (RFC) 3931 definitions for connection setup, flow, and teardown.
- the data field carries the custom AVP information for the UEPI control plane.
- AVPs 930 comprise M, H, length, vendor ID, attribute type, attribute value, and fields.
- the one bit mandatory (M) field determines whether or not the AVP is important enough to tear down the L2TPv3 connection and the hidden (H) fields indicates whether or not encryption is used. Encryption is not necessary for UEPI messages.
- the length is equal to the length of the attribute value field plus six bytes.
- the vendor ID field is zero for standard AVPs and 4491 for UEPI specific AVPs. The vendor ID of 4491 indicates that the vendor is
- custom AVPs are described herein to setup each of the four control plane UEPI pseudowire types. Standard L2TPv3 AVPs are not described herein.
- custom AVPs may include TLVs for ATDMA and SCDMA parameters, e.g., Upstream Channel Descriptors (UCDs); and scheduling parameters, e.g., various dynamic QoS parameters such as dynamic service parameters (DSx), where "x" represents add, change, or delete an identified parameter.
- UCDs Upstream Channel Descriptors
- DSx dynamic service parameters
- CMTS MAC When UEPI spanning is employed (MP2P) when viewed from the CCAP access point, a spanning basic mode and an advanced mode are available.
- MP2P MP2P
- a spanning basic mode and an advanced mode are available.
- a single CMTS MAC can support more than one CCAP access point PHY.
- two 4 channel CCAP access point PHYs may connect to one 4 channel CMTS MAC.
- the CMTS MAC bandwidth In basic mode, the CMTS MAC bandwidth is the same as the PHY bandwidth.
- a single CMTS MAC that supports four channels with a combined bandwidth of 100 Mbps that all feed a CCAP access point MAC that also has 100 Mbps of bandwidth. Since there is a unique tunnel between each CMTS and CCAP access point device, there is no need for additional bandwidth management for UEPI Spanning. In this scenario, all CCAP access points that share the same physical channels are in the same MAC domain.
- the downstream sessions that are associated with the MAC domain must be
- CM SIDs Selection Identifiers
- SG Service Groups
- the same DOCSIS upstream bandwidth MAP MAC management message is sent to both CCAP APs on the downstream.
- the MAP controls upstream bandwidth. Since the CM SIDs are unique, only one upstream on one DOCSIS access point will transmit at a time for a particular channel. During ranging, it is possible to get packets from both CCAP APs. Collisions will only occur within an upstream channel within a DOCSIS access point. Thus, initial ranging will actually be more efficient. Requests may originate from either DOCSIS access point during a broadcast request slot. The CMTS will accept the separate Request streams.
- the combined CMTS MAC domain bandwidth could be larger than the individual channel bandwidth of each PHY.
- the total bandwidth does not have to equal the sum of each of the individual bandwidths.
- the CMTS scheduler is aware of which CMs are serviced by which DOCSIS access point. The scheduler would then perform a bandwidth calculation for each CCAP AP and then perform a second bandwidth calculation for the shared upstream session.
- each CCAP AP could have its own MAP and its own session, but the CMTS would still consider them in the same MAC domain. This option is not really spanning but may be used when combining upstreams with DEPI downstreams that are spanned.
- UEPI uses the some of the same AVPs as DEPI but with additional extensions to setup the UEPI pseudowire.
- FIGs. 9B-9E example AVP message formats for UEPI are described.
- the M, H, RESV, length, vendor ID, and attribute type field operate as described above.
- FIG. 9B depicts field 930 from FIG. 9A for an example pseudowire type message.
- a lock (L) bit and a pseudowire (PW) type field has been added.
- the L bit indicates whether or not a particular parameter should be "locked".
- access points may be configured by way of a separate control system or the CMTS.
- the L bit prevents one control mechanism from overwriting another control system. When set to zero the L bit may indicate that the parameter is read-only, while a setting of one indicates that the parameter is read- write.
- the pseudowire sub-type (one byte) has the following options:
- Type 0 PSP default mode as defined by the DEPI-I08 specification (or a later version) maintained by CableLabs®
- Type 1 DEPI Multi-channel MPEG (MCM) pseudowire
- Type 2 DEPI MCM/Multi-channel Launch (MCL) pseudowire
- Type 4 UEPI MAP pseudowire
- Type 5 UEPI REQ pseudowire
- pseudowire sub-type allows the endpoints, e.g., the CMTS core and the CCAP access point, to send messages over the correct pseudowire.
- FIG. 9C depicts an example AVP for spanning.
- the PW-type field is replaced with a configuration (config) field.
- the config field has two active bits, zero and one. Bit 0, when set to one, indicates that downstream UEPI spanning is active and when set to zero, indicates that downstream UEPI spanning is inactive.
- FIG. 9D depicts an example AVP for configuring remote resources, such as the remote scheduler and remote framer, as described above.
- the config field uses four bits, zero, one, two and three. Bit 0, when set to one, indicates that an upstream scheduler is remotely positioned and when set to zero, indicates that upstream scheduler is centralized, e.g., associated with the CMTS. Similarly, bit 1 is set to indicate whether the downstream scheduler is remote or centralized. Bit 2, when set to one, indicates that upstream framer is remote and when set to zero, indicates that upstream framer is centralized. Similarly, bit 3 is set for a downstream framer is remotely positioned and when set to zero, indicates that the downstream framer is centralized.
- FIG. 9E depicts an example AVP for configuring Motion Pictures Expert Group (MPEG)-Transport Stream (TS) over DOCSIS.
- the config field uses three bits, zero, one, and two, and adds a two byte buffer length field.
- Bit 0 when set to one, indicates that DOCSIS video is enabled, and when set to zero, indicates that DOCSIS video is disabled.
- Bit 1 is set to indicate whether or not time based queuing is enabled. Time based queuing allows the selective emptying of a queue, e.g., for video buffer contents.
- Bit 2 indicates whether or not program clock reference (PCR) correction is enabled. PCR correction allows the presentation of synchronized video/audio content and aids in reducing jitter due to packet based transmission as well as other system time or synchronization anomalies.
- PCR program clock reference
- AVPs can be configured to transmit ATDMA and SCDMA parameters, e.g., UCDs.
- scheduling parameters e.g., various dynamic QoS parameters such as dynamic service parameters (DSx), where "x" represents add, change, or delete an identified parameter can be sent via UEPI AVPs.
- DSx dynamic service parameters
- the access point may be a CCAP access point.
- the access points have a network interface and a coaxial interface and control plane information is received from a CMTS via the network interface, where the control plane information is designed to configure the access point to enable communication over the network interface and the coaxial interface.
- data plane and control plane information is received from the CMTS, and the data plane information transmitted via the coaxial interface to one or more customer termination devices.
- the access point is booted, authenticated, and configured, e.g., using GCP.
- Layer 3 tunnels are established that may comprise DEPI, UEPI, and a GCP pseudowires between the CMTS and the access point.
- Data plane information is received via the coaxial interface and transmitted to the CMTS via the network interface. It may be determined whether the access point should have a software or firmware image upgrade and the access point software or firmware image is upgraded when necessary.
- Clocking parameters, IEEE 1588 clocking may be established for the access point.
- a generic control protocol (GCP) control message is generated that is configured to manage a slave device, where the control message includes one or more of structured access fields and register access fields, and where the structured access fields include one or more of (i) a device management message configured to provide basic device control and (ii) an exchange data structure message configured with a payload field configured to store a data structure from another protocol, and where the register access fields include one or more of (i) an exchange data registers message configured to read and write to a register in the slave device and (ii) a mask write register message configured to write to individual bits of a register in the slave device.
- the control message is transmitted to the slave device.
- the UEPI control plane defines how to set up sessions for UEPI data connections and scheduling, and ranging over DEPI.
- UEPI is extended for P2MP operation which facilitates downstream Modular Headend Architecture (MHA) multicast operation.
- MHA Modular Headend Architecture
- the UEPI control plane extends M- CMTS concepts to allow the entire CMTS PHY to be separately located as a CCAP AP or PHY in an optical node (the CCAP AP can be an optical node).
- Optical nodes are useful for implementing a digital return path.
- a digital return path allows for cheaper return path optics and allows the analog return path to be terminated in the optical node, thereby increasing the dynamic range on a return path by eliminating laser clipping.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Databases & Information Systems (AREA)
- Computer Graphics (AREA)
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Near-Field Transmission Systems (AREA)
Abstract
Techniques are provided for controlling downstream Converged Cable Access Platform (CCAP) access points or other devices using a Generic Control Protocol (GCP). At the CCAP access point having a network interface and a coaxial interface, GCP control plane information is received from a Cable Modem Termination System (CMTS) via the network interface, where the control plane information is designed to configure the CCAP access point to enable communication over the network interface and the coaxial interface. GCP can be used to send data structures and register control messages across a network to embedded devices.
Description
GENERIC CONTROL PROTOCOL
[001] This application claims the benefit of U.S. Provisional Application No. 61/535715, filed September 16, 2011; U.S. Provisional Application No. 61/536726, filed September 20, 2011; U.S. Provisional Application No. 61/565102, filed November 30, 2011; and U.S.
Provisional Application No. 61/608977, filed March 9, 2012, which are incorporated herein by reference in their entireties.
TECHNICAL FIELD
[002] The present disclosure relates to controlling Data-Over-Cable Service Interface Specification (DOCSIS) access point devices.
BACKGROUND
[003] DOCSIS is a protocol that is used to send digital video and data between a hub or headend facility (HEF), and a cable modem (CM), gateway, or a set-top box at a customer premise. DOCSIS originates and terminates via a cable modem termination system (CMTS) at one end and a CM at the other end. For downstream and upstream transport, the digital data are modulated onto a Radio Frequency (RF) carrier or channel using Quadrature Amplitude
Modulation (QAM) techniques. There are two types of CMTS architectures: 1) a CMTS with an integrated physical (PHY) layer and 2) a CMTS with a distributed PHY, e.g., on a separate PHY shelf collocated with the CMTS or a remote PHY that is further downstream and closer to the customer's end equipment. The CMTS with a distributed architecture is referred to as a modular CMTS (M-CMTS). In this context a PHY refers to the physical modulation and upconverter technology, and is sometimes referred to as a coaxial media converter (CMC).
[004] To facilitate some markets, a third CMTS architecture has been specified by the cable industry's governing body, CableLabs® that supports conventional video in addition to
DOCSIS, and is referred to as a Converged Cable Access Platform (CCAP). When the QAM is physically removed from an integrated CMTS and placed downstream it is known as an edge QAM (EQAM) or downstream PHY device. Thus, the CCAP architecture allows DOCSIS and existing video distribution to be combined downstream, thereby allowing network component reuse to reduce overall costs. While providing a more modular architecture, these downstream physical layer devices have a disadvantage in that they each must be manually configured by a
network administrator for many of their operating parameters and are not configured with an integrated upstream equivalent of their downstream capability.
BRIEF DESCRIPTION OF THE DRAWINGS
[005] The features and advantages of a control plane for configuring remote DOCSIS devices of the present disclosure will become apparent upon consideration of the following description of example embodiments thereof, particularly when taken in conjunction with the accompanying drawings wherein like reference numerals in the various figures are utilized to designate like components.
[006] FIG. 1 is an example block diagram of a cable television distribution system employing control plane pseudowires according to the techniques described herein.
[007] FIG. 2 is an example block diagram of a CCAP access point housed within the nodes shown in FIG. 1 that is configured to connect to the CMTS via pseudowires.
[008] FIG. 3 is an example procedural flowchart illustrating the manner in which a CCAP access point configuration process may be implemented according to a first example.
[009] FIG. 4 is an example procedural flowchart illustrating the manner in which a CCAP access point configuration process may be implemented according to a second example.
[0010] FIG. 5 is an example block diagram of messages that can be exchanged between a master device and a slave device.
[0011] FIG. 6 is an example generic message format for messages that can be exchanged between a master device and a slave device.
[0012] FIG. 7 is an example transport message format for messages that can be transported between a master device and a slave device.
[0013] FIG. 8 is an example block diagram of a pseudowire arrangement between an M- CMTS and a CCAP access point for handling upstream traffic.
[0014] FIG. 9A is an example control plane packet for configuring upstream communication between an M-CMTS and a CCAP access point.
[0015] FIGs. 9B-9e are example upstream communication control plane message formats.
DESCRIPTION OF EXAMPLE EMBODIMENTS
[0016] Overview
[0017] Techniques are provided herein for receiving at a CCAP access point having a network interface and a coaxial interface, control plane information from a CMTS via the network interface, where the control plane information is designed to configure the CCAP access point to enable communication over the network interface and the coaxial interface. At the CCAP access point, DOCSIS data plane information and control plane information is received from the CMTS, and the data plane information is transmitted via the coaxial interface to one or more DOCSIS termination devices, e.g., a set-top gateway or CM. Some of the control plane information may also be transmitted to the CM.
[0018] Techniques are also provided herein for a master device to generate a GCP control message that is configured to manage a slave device, where the control message includes one or more of structured access fields and register access fields, and where the structured access fields include one or more of (i) a device management message configured to provide basic device control and (ii) an exchange data structure message configured with a payload field configured to store a data structure from another protocol, and where the register access fields include one or more of (i) an exchange data registers message configured to read and write to a register in the slave device and (ii) a mask write register message configured to write to individual bits of a register in the slave device. The control message is transmitted to the slave device.
[0019] Techniques are further provided herein for generating at a Modular Cable Modem Termination System (M-CMTS) core, one or more first control messages comprising information to configure one or more pathways with an access point for data plane and control plane communication. The one or more first control messages are transmitted to the access point. One or more second control messages is received from the access point, where at least one second control message is forwarded from a customer premise equipment (CPE).
[0020] Example Embodiments
[0021] Referring to FIG. 1, an example cable system or network 100 is shown. Specifically, the system 100 includes a headend facility (HEF) 110, a plurality of hubs 120(l)-120(m), a plurality of nodes 130(1)- 130(n), and a plurality of customers 140(1)- 140(p). Each of the hubs 120 or HEF 110 may have a cable modem termination system (CMTS) core such as CMTS core
170 shown in hub 120(1). Each of the nodes 130(l)-130(n) has a one or more corresponding access points (APs) 135(l)-135(n), while each of the customers 140(l)-140(p) has a one or more corresponding CMs 150(1)- 150(p). The APs 135(l)-135(m) may be considered to be CCAP access points.
[0022] The HEF 110 is coupled to the Internet 180, content providers 160, and Public Switched Telephone Network 190, to provide these services to customers 140(l)-140(p). The HEF 110 is connected to various content providers 160 for providing media content (e.g., movies, television channels, etc.). The content is further distributed by hubs 120(l)-120(m) to plurality of nodes. In this example, hub 120(1) distributes content to nodes 130(l)-130(n).
Nodes 130(l)-130(n) distribute content to various customers, e.g., node 130(1) distributes the content to customer 140(1) in the form of conventional digital or Internet Protocol (IP) television.
[0023] In this example, nodes 130(l)-130(n) communicate via optical fibers with hub 120(1) and via coaxial (coax) cable to customer premises 140(1)- 140(p), and as such, the combination of fiber and coax is known as a hybrid fiber coax (HFC) network (any combination of fiber and coax, may be used anywhere in system 100). CMTS core 170 is used to provide high speed data services including cable Internet, voice over IP (VoIP), and IP television services to various subscribers.
[0024] The HEF 110 is coupled to Internet 180 and PSTN 190 for providing Internet and telephony services (e.g., to and from customer 140(l)-140(p)). Media content may also be distributed by content providers 160 via Internet 180. Each of the hubs 120(l)-120(m) may also be coupled to Internet 180 and PSTN 190. DOCSIS is used to convey Internet or other packet based networking information, as well as packetized digital video between CMTSs and CMs.
[0025] DOCSIS may be carried between CMTS core 170 and node 130(1) using fiber optic or other medium at the physical layer. The physical (PHY) layer may be referred to herein simply as a downstream PHY or PHY layer. At node 130(1), CCAP AP 135(1) converts the downstream optical PHY to downstream coaxial PHY for transmission to CM 150(1). Similarly, CCAP AP 135(1) converts the upstream coaxial PHY to upstream optical PHY for transmission to CMTS core 170. CCAP AP 135(1) may also provide Media Access Control (MAC) protocol layer services. In other M-CMTS designs, the CCAP access point may be collocated with the M-
CMTS as part of a PHY shelf. These operations will be described in greater details in connection with FIG. 2.
[0026] Traditional or existing M-CMTS architectures employ a downstream PHY, e.g., a fiber node, which houses one or more EQAMs to provide radio frequency (RF) modulation for downstream transmission. It should be understood that various electrical-to-optical (E/O) and optical-to-electrical (O/E) conversions may take place along the downstream and upstream DOCSIS pathways, with a coaxial PHY ultimately presented at the customer premise, e.g., at CMs 150(l)-150(p). The downstream nodes can employ an Internet Protocol (IP) tunnel that encapsulates DOCSIS according to the Downstream External-PHY Interface (DEPI) specification. While DEPI provides some control plane information, this information may be limited to the DOCSIS realm. As such, hardware, firmware, and/or software components of the CCAP access point are configured manually, e.g., or whether the EQAM will use QAM-64 or QAM-256 modulation as is known in the art. Some downstream parameters may be configured using DEPI. The CCAP access point's IP address and station ID are traditionally configured manually.
[0027] According to the techniques described herein, a control plane tunnel is added that facilitates configuration of a CCAP access point, the CCAP access point having an architecture that interfaces with the control plane tunnel. The control plane tunnel uses a new protocol referred to as Generic Control Protocol (GCP) that will be further described hereinafter. In addition, an upstream External-PHY Interface (UEPI) tunnel is introduced that performs an upstream function corresponding to DEPI, since upstream communication is often operated over a separate communication pathway. UEPI operation is also described hereinafter.
[0028] The GCP, DEPI, and UEPI tunnels may be referred to as pseudowires as indicated by link 195 between CMTS core 170 and node 130(1). A pseudowire is a network connection that encapsulates a point-to-point protocol using a packet network protocol, where the encapsulation is transparent to the point-to-point endpoints. Many pseudowires carry time sensitive data or protocols that require synchronization and therefore use a timing source. The pseudowires may be facilitated, e.g., by Multi-Protocol Label Switching (MPLS) or Layer 2 Tunneling Protocol version 3 (L2TPv3). Note that technically, GCP is not a pseudowire, per se, since it carries control plane information, but for ease of description, GCP may be conceptually thought of as a
pseudowire. Any node or access point in system 100 may include hardware and software provisioned to implement the techniques described herein may be configured in a manner as described for node 130(1) and/or AP 135(1).
[0029] An example block diagram of a CCAP access point, e.g., AP 135(1), housed within the nodes shown in FIG. 1 is illustrated in FIG. 2. CCAP AP 135(1) is configured to connect the CMTS core via GCP, DEPI, and UEPI pseudowires and to a plurality of CMs, e.g., CMs 150(1)- 150(p). AP 135(1) may contain optional high and low pass filters or diplexers 220(1) and 220(2), as well as optional upstream and downstream amplifiers 280(1) and 280(2) to facilitate one or more downstream and upstream pass through connections. A pass through connection may be used for video overlays or other bypass signaling, e.g., for switched digital video (SDV) sent from another device or system. For example, some downstream spectrum can be allocated to headend supplied video, e.g., video on demand (VOD) or switched digital video (SDV), while other spectrum is allocated for DOCSIS. The pass through connection may contain an in-line attenuator to match the power of the pass through video with the output power of remote PHY subassembly at combiner 270(1).
[0030] In other examples, the CCAP AP is an optical node, a CCAP external PHY, or DOCSIS PHY. These devices can be remote to the CMTS or part of a PHY shelf with the CMTS core. Video can be encapsulated in DEPI and controlled by GCP.
[0031] AP 135(1) comprises a remote PHY subassembly 210 for converting, e.g., a downstream incoming PHY layer to a downstream coaxial PHY layer for transmission to a downstream device, e.g., CM 150(1). Remote PHY subassembly 210 includes a network interface (I/F) 230, a MAC layer interface 240, a plurality of downstream (DS) PHY transmitters 250, a plurality of upstream (US) PHY receivers 260, a controller 290, and memory 295.
Combiner 270(1) combines video overlay with DOCSIS from DS PHYs 250 for downstream forwarding and splitter 270(2) splits the DOCSIS upstream to US PHYs 260.
[0032] For the video or other bypass mechanisms, PHY layer downstream video overlay is received at diplexer 220(1) and forwarded by way of the high pass filter to combiner 270(1) and is further filtered by the high pass side of diplexer 220(2). On the upstream side, diplexer 220(2) passes lower frequency RF upstream components, e.g., non-DOCSIS CM upstream signals, and blocks high frequency RF components that may interfere with downstream communication.
Splitter 270(2) also splits the upstream signal to diplexer 220(1) along an optional (dashed) return path 285. Return path 285 is optional because a DOCSIS return path is provided via network interface 230.
[0033] The network interface 230 interfaces the DOCSIS upstream and downstream with an M-CMTS core, e.g., CMTS core 170. The network interface 230 may comprise, e.g., one or more of an optical interface, an Ethernet over a passive optical network (EPON) interface, a Gigabit Ethernet over a passive optical network (GPON) interface, an Ethernet interface, and an electrical network interface. MAC layer 240 decapsulates the MAC and forwards the frame, and encapsulates the MAC layer for upstream transmission, e.g., UEPI encapsulation. For example, the MAC layer 240 detects incoming packets or frames using start of frame and end of frame delimiters. Before forwarding the frame for further processing, the MAC layer may prepend an internal header onto the frame that provides upstream or downstream flows with details such as ingress port, type of port, ingress Virtual Local Area Network (VLAN), frame quality of service (QoS) markings, and a timestamp indicating when the frame entered the AP. The MAC layer 240 may also check that the received downstream frame contains no errors by validating its cyclic redundancy check (CRC). The MAC layer 240 may provide any formatting necessary, drop outdated frames, and add or remove the appropriate header information.
[0034] On the downstream side, DOCSIS streams, by way of MAC, or other information, is forwarded to the plurality of DS PHYs 250 for reception by a plurality of DS devices, e.g., CMs 150(l)-150(p). The plurality of DS PHYs will modulate the various DOCSIS downstreams or flows on the appropriate RF channel to CMs 150(l)-150(p). The plurality of DS PHYs is combined with video overlays by combiner 270(1). For the return or upstream path, DOCSIS streams are divided from bypass streams by splitter 270(2). The DOCSIS upstream flows are received by the plurality of upstream PHYs 260, processed by MAC interface 240, and forwarded by network interface 230 to CMTS core 170. The MAC interface 240 encapsulates the upstream packets for transmission to CMTS core 170.
[0035] In order to facilitate downstream and upstream flows, remote PHY subassembly 210 may include a controller 290 and memory 295, or other facilitating hardware, firmware, and software. Controller 290 and/or memory 295 may be connected to any of the components in AP 135(1), e.g., via a circuit board or other interface. By virtue of the techniques described herein,
controller 290 and memory 295 may implement parts of a dynamic CCAP access point configuration process described in further detail in connection with FIGs. 3 and 4.
[0036] Memory unit 295 stores data and/or software or processor instructions that are executed to operate the AP 135(1) by controller 290. The DEPI and UEPI pseudowires carry DOCSIS data and control plane information, while AP 135(1) configuration information is conveyed via GCP. The controller 290 may be a microcontroller, processor, field programmable gate array (FPGA), application specific integrated circuit (ASIC), and the like. The controller 290 is programmed to configure the various components in AP 135(1). The memory 295 may be provided to facilitate the techniques described herein that is separate or part of the controller 290. Any form of non-transitory tangible or computer readable media may be provided, e.g., random access memory (RAM) or flash memory. The interface unit 230 may be equipped with a wireless (e.g., Wi-Fi®/Long Term Evolution (LTE)) or wired network interface (e.g., Ethernet) so that GCP control programming information or packet based information may be exchanged. Similar hardware memory, processors, and software elements may be present throughout network 100, e.g., CMTS 170 has such processing capability.
[0037] Ultimately, GCP allows one device to control another device. GCP allows the reuse of data bus structures from other protocols, and thus, allows direct read and/or write of hardware, firmware, and/or software configuration parameters to include reads and writes at the hardware register level to include any associated device interrupts and servicing any interrupt service routines (ISRs). GCP may include configuration of port, channels, frequencies, modulation schemes, and protocols. In some implementations there may be multiple controllers, e.g., a node controller and an ASIC controller. A first GCP connection between the M-CMTS core and node controller may use structured access (TLV) messages, while second GCP connection between the node controller and the ASIC controller may carry register access messages between the node controller and the ASIC controller.
[0038] Turning now to FIG. 3, an example procedural flowchart illustrating a specific example in which CCAP access point configuration process 300a may be implemented. A generic CCAP AP configuration process variation 300b is described in connection with FIG. 4. At 305, an access point, e.g., AP 135(1), is powered up or otherwise booted (e.g., via a hot, warm, or cold start). At 310, it is determined whether or not the AP is authenticated to the
controlling network, e.g., by way of a network administration function within system 100 (FIG. 1). If the AP is not authenticated, at 315, the AP is authenticated using an approved
authentication procedure, e.g., an IEEE 802. IX or Remote Authentication Dial In User Service (RADIUS) authentication procedure. After authentication, at 320, it is determined whether or not the AP has an assigned IP address. If the AP is not IP addressed, at 325, a Dynamic Host Configuration Protocol (DHCP) procedure (with any DHCP extensions) is run in order to assign an IP address to the AP.
[0039] Once the AP is assigned an IP address, it is determined, at 330, whether or not the AP has a current software and/or firmware image. When the image should be updated, at 335, an image download procedure is run, e.g., Trivial File Transfer Protocol (TFTP) or FTP. With an updated image, at 340, it is determined whether or not the AP is configured for downstream and upstream DOCSIS communication. When the AP is not configured, at 345, a device
configuration procedure is run. Configuration of the AP entails an exchange of GCP messages between the configuration source, e.g., a headend facility or a CMTS core, and the AP, in order to set data rates, modulation schemes, frequencies or channels, etc. The GCP messages may be exchanged via a GCP tunnel as described above.
[0040] Once the AP is configured, it is determined, at 350, whether or not the AP has clocking or packet transfer timing is established. When clocking is not established, at 355, a clocking procedure is run, e.g., to establish IEEE 1588 timing or DOCSIS timing via a DOCSIS Timing Interface (DTI). In another example, and in certain implementations, DS and US clocking may be managed within the AP itself and an external timing source is unnecessary. At 360, it is determined whether or not the AP is connected in the sense that DEPI and UEPI tunnels are established. If not, at 365, the DEPI and UEPI tunnels are established, e.g., using L2TPv3 with the corresponding DEPI and UEPI extensions. Once the DEPI and UEPI tunnels are established, at 370, the AP is considered fully operational.
[0041] Referring to FIG. 4, an example procedural flowchart illustrating the manner in which a CCAP access point configuration process may be implemented according to a generic second example is shown. At 410, the CCAP access point is booted, authenticated, configured, and connected; the AP having a network interface and a coaxial interface, as described above. The AP may be authenticated with an upstream authentication system. At 420, the AP receives
control plane information from, e.g., a CMTS, via the network interface, e.g., network interface 230 (FIG. 2). At 430, the CCAP access point is configured to enable communication over the network interface and the coaxial interface using the control plane information. The coaxial interface may comprise one or more of a MAC layer and a PHY layer. The network interface comprises one or more of an optical interface, an EPON interface, a GPON interface, an Ethernet interface, and an electrical network interface.
[0042] At 440, the CCAP access point is configured by running a GCP procedure in order to configure one or more of software and hardware parameters in the CCAP access point for exchanging DOCSIS between the network interface and the coaxial interface. At 450, the CCAP access point is connected by establishing one or more layer 3 tunnels between the CMTS system and the AP. The layer 3 tunnels may be established via one or more of a DEPI, a UEPI, and a GCP pseudowire between the CMTS system and the CCAP access point.
[0043] GCP operations will now be described.
GCP OPERATION
[0044] GCP is a generic control plane protocol that exists between a master entity and a slave entity. Generally, the master entity controls the slave entity. GCP is able to re-use control plane concepts that are derived elsewhere but used in a new context, or control plane concepts otherwise derived anew. In this regard, it is typical for remote devices to require configuration. If the technology that is in a new remote device has been well defined in previous devices, then the previous data structures can be re-used within GCP. For example, if a PHY technology like QAM (Quadrature Amplitude Modulation) has been well defined in existing protocols such as the DOCSIS specified MAC and Upper Layer Protocols Interface (MULPI) Specification, then the TLV (Type Length Value) data structures in MULPI could be re-used in GCP for configuring this new device.
[0045] GCP also provides for existing state machines and software code to be leveraged. When GCP is used to tunnel the data structures from another protocol, the following
nomenclature can be used: GCP (tag) where the tag is representative of the data structure being leveraged. For example, if the type-length-value (TLV) data structures from a DOCSIS UCD (Upstream Channel Descriptor) message (as defined in MULPI) are used over GCP, the result can be referred to as GCP (UCD).
[0046] GCP can read and write parameters, either directly to and from registers or with higher layer data structures. GCP can be used to reset, power up, or power down the device. The device can send the equivalent of a hardware interrupt via the GCP command structure. GCP allows chips that were previously embedded to be located across a network interface such as Ethernet.
[0047] Referring now to FIG. 5, a block diagram of a GCP master and slave device will be described. In this example, a GCP master device 510 is shown along with a GCP slave device 520. GCP master 510 sends a request message 530 to slave device 520. The GCP slave responds with an optional response message 540. When the slave 520 needs to communicate with the master 510, then the slave 520 can send a notify message 550. The notify message 550 may act as a software or hardware interrupt to the master 510 such that the master 510 can service the notify message 550 via an interrupt service routing (ISR).
[0048] GCP also has a peer-to-peer mode that permits both endpoints to simultaneously be both masters and slaves. The peer-to-peer mode operates as two independent master-slave modes, in opposite directions, e.g., on the same port number. It is acceptable for systems to implement a subset of the GCP message set. Accordingly, GCP is a framework from which other systems and protocol infrastructures can be built upon and re-used, if possible. GCP can be used in any architecture where devices are connected with a network. In other words, GCP may be used within a chassis or across a continent. GCP uses transport protocol such as Transmission Control Protocol (TCP) TCP/IP as its ultimate transport, so it is independent of both network topology and network technology. When TCP or equivalent reliable transport is used
acknowledgement messages are not needed. Specifically, although Ethernet is often used as the layer 2 framing, any layer 2 framing could be used, or be replaced on a per-hop network basis.
[0049] Turning to FIG. 6, an example format for a GCP message 600 is illustrated. The Message Identifier is shown as a one -byte value that defines the message type, e.g., the tag as described above, i.e., GCP (tag). The most significant bit may be set to a zero in the request message and may be set to a one in the response message. A message ID of zero may be defined as not valid. The length field is the number of bytes contained in the message starting after the length field and ending at the end of the message. The length includes all fixed and variable length fields following the length field. There may then be one or more fixed parameter fields
that are unique to each message. The fixed length fields of GCP often contain a transaction ID and a mode field. The transaction identifier field uniquely identifies each transaction. A transaction includes a request and its matching response. The number space of the Transaction Identifier is unique within the GCP master and GCP slave but not across the two devices. The mode field is used for modifying the action of the message. The mode field is unique per message. There may then be a variable length data field or TLV that is unique to each message. The length of the TLV field may be determined after subtracting the known fixed data fields form the message length. These additional fields are described later.
[0050] When GCP is carried over TCP, the length of the message is not important for the TCP transport since TCP will segment the message as needed to fit into an IP packet that conforms to the MTU (maximum transmission unit) of the networking interface. When other transport protocols such as User Datagram Protocol (UDP) or L2TPv3 are used, then a maximum length needs to be observed. In practice, there may be other system restrictions that limit the max size of a GCP message that can be considered on a case-by-case basis.
[0051] In one GCP implementation example, the DOCSIS MULPI specification contains an extensive study on how an upstream burst demodulator works and performs. As part of its signaling protocol, the CMTS has to signal to the CM all the configuration parameters for the burst demodulator. These parameters are contained in a DOCSIS MAC management message called the Upstream Channel Descriptor (UCD). If a similar burst demodulator was to be used in a different system but required the same configuration parameters, it may be more convenient to reference the work done in the DOCSIS specification rather than recreating configuration parameters in a new specification. In addition to leveraging existing work, GCP also allows new work in an environment (DOCSIS in this case) to be immediately used in another environment without having to update a separate specification.
[0052] As an analogy, GCP permits the definition of a higher-level data structure which then can point to a low-level data structure that is contained elsewhere. As an example, the GCP pointer can be achieved by defining the following variables:
• Vendor ID = 4491 (CableLabs)
• Structure ID = 35 (DOCSIS UCD)
The vendor ID and structure ID pair can be changed to indicate an allowed set of data structures, as well as the types of register access that may be permitted, e.g., a CableLabs Vendor ID and structure ID pair may specify CCAP component parameters, while a Cisco vendor ID and structure ID pair may specify parameters for configuring a satellite router system, or a
MicroStrain vendor ID and structure ID pair may specify parameters for configuring a wireless sensor network.
[0053] The MULPI specification is maintained by CableLabs®, so the GCP vendor ID can be set to CableLabs. The MULPI UCD message has a message ID of 35, therefore it is convenient to re -use the same number. This usage of GCP can be referred to as GCP (UCD), with UCD as the tag, as described above. A separate specification could be written that would describe GCP (UCD), what data structures are used, and how they are packed into the GCP message payload, all the while maintaining the originally specified UCD data structure. In other examples, GCP can be used for power management in remote sensor networks or routers in a satellite router configuration where a master router forwards layer 2, 3, or, 4 forwarding table information, Quality of Service (QoS) parameters, security configuration, and the like.
[0054] Device communication considerations may include device port and channel numbers. The slave device that is being addressed may have one or more physical ports. Each port may have one or more channels; the combination of port and channel mnemonics is shown in Table 1 below. Several of the GCP messages make use of these fields, e.g., which may be four byte fields. In addition, the GCP header in the network protocol payload has an additional Unit Identifier (UI) field that is described later. The port and channel fields contain a direct reference to the area of the device for which the data structure should be applied. A wild card may be defined for these fields as OxFFFF, which indicate that the specific port or channel assignment does not apply and that all ports and/or channels should be updated per the GCP request message, i.e., message attributes are to be applied to all Ports and/or Channels. The wild card value, "*" as shown in Table 1, allows for the reduction of signaling messages when there is common configuration across many ports and channels. In another scenario the wild card may be used as if the port and/or channel information is embedded in the data structure and these explicit fields are not required for operation. Examples of usages of these values are shown in Table 1 below:
Port Channel Mnemonic Comments
M N M, N Apply message to Port M, Channel N.
OxFFFF N * N Apply message to channel N of all ports.
M OxFFFF M * Apply message to all channels of Port M.
OxFFFF OxFFFF * * Apply message to all channels on all ports.
Table 1. Example device management modes.
[0055] The numerical values of the ports and channels are application dependent and not dictated by GCP. For example, a general message could be used to assign specific port and channel numbers. Subsequent messages could then use these assigned port and channel numbers. Applications may also sub-divide the port and/or channel number space anyway applicable to represent different types of ports, and/or groups of channels and sub-channels.
[0056] Since GCP may be used as a protocol for managing remote devices, GCP contains some basic functions for managing a particular device. Among these functions are ping, reset, and power management. These modes are coordinated using the Device Management message and the Notify message. The following modes available for device management are shown in Table 2 below:
Mode Mode description
Null The device should respond but take no other action. This message
can be used as a ping, a keep-alive, or a test function.
Cold The device should respond and then perform a full reset. When it
Reset comes back on-line, it should issue a Notify with the mode set to
cold reset.
Warm The device should respond, reset its session information, but retain Reset its current learned configuration. The definition of a warm reset is
ultimately application dependent. When it comes back on-line, it should issue a Notify with the mode set to warm reset.
Standby The device should respond and then go to a standby state. The device is in a power-reduced state and can come back to operational mode on its own based upon its own criteria. If it transitions to
standby on its own, it should issue a Notify with mode set to
standby.
Wake-Up The device should respond and exit standby mode. When it comes
back on-line, or if it wakes up on its own, it should issue a Notify with the mode set to wake-up.
Power- The device should respond and then power-down. It should not
Down power-up on its own unless it is power cycled or commanded to
power-up. If it powers up on its own, it should issue a Notify with power-up set.
Power-Up The device should respond and power-up. When it finishes its
power-up cycle, it should issue a Notify.
Table 2. Example device management modes.
[0057] The wake-up and power-up messages would typically use the last known slave device IP address. These commands are only effective when there is a valid IP address to communicate with the slave. This implies that in both a slave device's standby and power-down modes, there is at least some circuit that is monitoring the network connection and maintaining network addressing.
[0058] GCP as a protocol can evolve as necessary for master and slave communication. Further, various devices may only need a subset of the GCP messages. When GCP is employed and a message is received that is unknown or unsupported, then a specific null response may be generated using a format shown in Table 3 below:
Table 3. Example device response message.
[0059] Since GCP request and response messages tend to differ at least by the LSB, the GCP master accepts an unsupported message error response with either the same message number or, e.g., the message number with the LSB set (incremented by one).
[0060] Typically, all GCP messages are designed to be exchanged in pairs, e.g., a request and response, as mentioned above. The request and response form a transaction. Each transaction has a transaction ID. The transaction ID is unique within a transport session, such as a TCP connection. If a GCP slave has multiple masters, then the transaction IDs will be considered as separate number spaces as they will be associated with different TCP connections. The transaction ID may be designed to be unique within a given period of time. The definition of this period of time is application dependent and is not specified by GCP. The period of time should exceed the longest expected outstanding transaction.
[0061] In addition to a transaction ID on a per message basis, there may be a transaction ID assigned on a per packet basis. Generally, the transaction ID per message is used when the GCP message are randomly multiplexed into a packet and transported. If the GCP messages are sent as a set, then the packet transaction ID can be used for delineation. A transaction ID of all zeros can be reserved to indicate that the transaction ID should be ignored. The GCP master can choose to ignore the message transaction ID, the packet transaction ID, or both. Since GCP is delivered over a reliable protocol such as TCP, TCP will guarantee delivery of both the request and response message. If there is a network error that prevents delivery of these messages, TCP will indicate that network session has been lost. In the event of a lost TCP session, the GCP master and slave message state machines should close out all pending transactions.
[0062] An example transport encapsulation for GCP transport is shown in FIG. 7 and in greater detail in FIG. 9A. In this example, an Ethernet frame 700 is shown with the
corresponding Ethernet, IP, and TCP headers, as well as an Ethernet Cyclic Redundancy Check (CRC) footer. The payload of the Ethernet frame has GCP header and GCP payload for transport. In some implementations, when transport does not need to be guaranteed, UDP may be used. For example, implementations that are agnostic to dropped packets or if the
implementation has another mechanism for determining message reliability. To facilitate transport, L2TPv3 may be used for tunneling over a layer 3 network, as mentioned above. In this
regard, GCP header and message information may be carried in fields 920 and 930, as viewed in FIG. 9A.
[0063] Both the GCP master and slave devices can initiate a request message, depending upon the message type. In some implementations, it may be possible for the GCP device to reliably receive a message from TCP and then lose that message internally. If so, the GCP device that initiates a transaction by sending a request message can implement a transaction timer so that it can internally declare a failure when a response message is not received. The value of that timer is application dependent and is not specified by GCP. The intent of this timer is not to replace or supplement the inherent reliability of the transport, but to allow for internal failure of the receiving GCP device. In the event of a missing response message, the sending GCP device should close the current transaction and start a new transaction rather than resending the message request with the previous transaction ID. This type of operation prevents the existence of duplicate messages and permits a more orderly operation of the network. It is possible for a race condition to develop if the response message timeout at the sending GCP device is too quick and the response time from either the GCP Slave or the network in between is too slow. This latency may result in late response messages and redundant transactions, and the GCP device should adjust its timer accordingly or take some other application dependent action.
[0064] GCP supports different width data paths on the master and slave devices. Due to the cost sensitivity of the slave device in design or certain markets, the slave device may have an 8- bit, 16-bit, or 32-bit data path. The same could be true for a master device, although a 32-bit master device would be more common. This provides at least three scenarios:
• 32-bit Master and 32-bit Slave
• 32-bit Master and 16-bit Slave
• 32-bit Master and 8-bit Slave
Since GCP may be typically run over a serialized network connection, in general, there is an automatic conversion between these master and slave environments processing environments.
[0065] Structured access uses data constructs such as a TLVs to program functionality in the GCP slave. Structured access allows for more hardware independence and is more of an operational model. Register access uses direct register reads and writes. Register access can be
useful for diagnostics or low level driver level access. Example messages used in GCP and their corresponding message ID are shown in Table 4 below:
Table 4. Example message IDs for structured access messages.
[0066] The messaging numbering has been chosen such that the LSB is zero for the request message and a one for the response message. The MSB is a 0 for a request and normal response and a 1 for an error message. GCP Register Message Summary GCP messages fall into two general categories: structured and registered. Register access uses direct register reads and writes. Register access can be useful for diagnostics or low level driver level access. The messages used in GCP a for register access are shown in Table 5 below:
Table 5. Example message IDs for register access messages.
[0067] GCP unstructured access need not support an explicit and protected read-modify- write operation. A read-modify-write operation is often used in software drivers when a part of a register that is going to be updated and the rest of the register is to remain the same. GCP leaves it up to the higher layer software drivers to ensure that if it does a read-modify-write to a register location, that no other software process writes to the same register location during the read- modify-write. As a quicker and secure alternative to read-modify-write, GCP includes a Mask- Write operation.
[0068] Notify messages are sent from a slave to a master. An example notify message is shown in Table 6 below and a normal response from the master is shown in Table 7. When an error occurs, the error message shown in Table 8 may be sent by the master in lieu of or in addition to the response message.
Table 6. Example slave device notify message.
Description Length Contents
Message ID 1 byte 3
Message 2 bytes 7
Length
Transaction 2 bytes Same as request
ID
Mode 1 byte 0
Event Code 4 bytes 0x00000000 to OxFFFFFFFF
Table 7. Example notify response message.
Description Length Contents
Message ID 1 byte 131
Message 2 bytes 3
Length
Transaction 2 bytes Same as request
ID
Return Code 1 byte See Table 24 below
Table 8. Example notify error message.
[0069] Device management messages are sent from a slave to a master. The Device Management message defines basic and common powering functions that can be used to manage the endpoint device (acting as a slave). An example Device management message is shown in Table 9 below and a normal response from the master is shown in Table 10. When an error occurs, the error message shown in Table 11 is sent by the master in lieu of or in addition to the response message.
Description Length Contents
Message ID 1 byte 4
Message 2 bytes 8
Length
Transaction 2 bytes Unique value
ID
Mode 1 byte bit 7: 0 = Send normal response
1 = Suppress normal response bit Reserved. Set to 0.
6-0:
Port 2 bytes 0 to OxFFFF
Channel 2 bytes 0 to OxFFFF
Command 1 byte 0 - Null
1 - Cold Reset
2 - Warm Reset
3 - Standby
4 - Wakeup
5 - Power-Down
6 - Power-Up
7 to 255 - Reserved
Table 9. Example device management message.
Table 11. Example device management error message.
[0070] Note that there is no explicit command for device identification. Device discovery and identification is application dependent and is not specified by GCP.
[0071] The Exchange Data Structures (EDS) message allows data structures that have been well defined in other protocols or new data structures to be tunneled through the GCP protocol. A typical use would be to reuse TLV definitions from one system in a new system. An example EDS request message is shown in Table 12 below and a normal response from the slave is shown in Table 13. When an error occurs, the error message shown in Table 14 is sent by the slave in lieu of or in addition to the response message.
Table 12. Example EDS request message.
Description Length Contents
Message ID 1 byte 7
Message 2 bytes 12 + M (M=data structure length
Length below)
Transaction 2 bytes Same as request
ID
Mode 1 byte 0x00
Port 2 bytes 0 to OxFFFF
Channel 2 bytes 0 to OxFFFF
Vendor ID 4 bytes 0 to OxFFFF
Vendor Index 1 byte 0 to 255
Data M bytes Returned Data
Structures
Table 13. Example EDS response message.
Description Length Contents
Message ID 1 byte 135
Message 2 bytes 3
Length
Transaction 2 bytes Same as request
ID
Exception 1 byte See Table 24
Code
Table 14. Example EDS error message.
[0072] EDS data structures could potentially be larger than the MTU of an IP packet. TCP will automatically segment this message if necessary across multiple IP packets. Port and channel usage shown in Tables 12 and 13 has been described in connection with Table 1 above. The Vendor ID field indicates what organization has defined the specific data structures to be used. The Vendor Index is unique to the vendor and chooses a data structure within the Vendors definition. The combination of the Vendor ID and the Vendor Index fields provide a wide choice of data structures. The data structures in the response message may be completely different and of a different length than the data structures in the request message. The message
does not contain the length of data structure field. The length is managed by the transport, e.g., TCP.
[0073] To perform device access at the register level, GCP uses EDR and MWR messages the corresponding EDR and MWR message IDs are shown in Table 5 above. This message allows one or more registers in the slave device to be written by the master device starting at a specified base address and then have those registers read back in the response message. The message allows a write-only, a read-only, or a write- with-read-back. An example EDR request message is shown in Table 15 below and a normal response from the slave is shown in Table 16 When an error occurs, the error message shown in Table 17 is sent by the slave in lieu of or in addition to the response message.
Description Size Contents
Message ID 1 byte 16
Message Length 2 bytes If No Write, then 9
If Write, then > 9
Transaction ID 2 bytes Unique value
Mode 1 byte bit 7: 0 = Send normal response
(default)
1 = Suppress normal response
bit 6: 0 = Write, 1 = No Write
bit 5: 0 = Read, 1 = No Read
bit 4: 0 = Linear Mode (default)
1 = FIFO Mode
bit 3: 0 = Big Endian (default)
1 = Little Endian
bit 000 = unspecified (default)
2-0: 001 = 8-bit data width
010 = 16-bit data width
011 = 32-bit data width
100 = 64-bit data width
101, 110, 111: Reserved.
Starting Address 4 bytes 0x00000000 to OxFFFFFFFF
Byte Count 2 bytes 1 to 65,536
Sent Data Length- If Write, then data
9 bytes If No Write, then no data.
Table 15. Example EDR request message.
Table 17. Example EDR error message.
[0074] The EDR message is fundamentally a register write with read-back message of which write-only and read-only are subsets of the main message. The default Mode field is all zeros. To write to multiple registers that are not contiguous in memory, multiple EDR messages may be used. Multiple messages may be grouped together into one packet. The normal EDR response message can be suppressed by asserting the "suppress normal response bit". This mode may be useful when a series of back-to-back writes are performed and there is a desire to reduce the workload on the remote device. In the event of an error at the GCP slave, the GCP slave will return an error response with the appropriate error code.
[0075] Read and write operations for the EDR request message mode field (bits 5 and 6) are as follows:
w = o, The data in the request message is written into a register as dictated by the address pointer. The same address point is then used to read back the data.
R = 0
The slave device should perform a true internal write followed by a true internal read rather than just echoing the data back. This command allows the master to verify that the correct values where written.
W = 0, The data in the request message is written into a register. The response
message has a return code but no data.
R = 1
W = 1, The request message contains an address but no data. The response
message contains data from the register at the specified address location
R = 0
W = 1, No reads or writes take place. The error codes are still valid and the GCP
slave returns a normal response. This mode is a null mode and may be used R = 1
to test connectivity.
Table 18. Example EDR read- write modes.
[0076] Note that a read- modify- write operation would take two separate EDR commands. As an alternative, consider using the MWR message.
[0077] For memory addressing (starting address field) when a linear mode (mode bit 4) is specified, the address field is incremented with consecutive writes and/or reads. If a first- in first- out (FIFO) mode is specified, then the address field is held constant. The FIFO mode is for a FIFO input or output that is located at a fixed memory location. For the sent data field, the GCP master and GCP slave may have very different internal architectures. For example, the GCP master may be a high-end processor system with a 32-bit data bus while the GCP slave might be a small embedded processor with an 8-bit or 16-bit data bus. The variation between systems includes data bus width as well as the number of bytes per address location.
[0078] Since GCP moves data from one system to the other over a serial transport, there is a natural conversion between the two systems. In the event that the data requires specific handling, such as the preservation of a 32-bit value, GCP allows the data to be identified as such.
Byte The address pointer (starting address) and a byte count can identify the stream data. The GCP master and slave inherently know what to do. This is the
default mode for GCP.
N bit. Data provided is from memory or a register set that is N bit sizes, where N
= 8, 16, 32, or 64.
Endian The data can be marked as being big-endian or little-endian. The default
mode is big-endian.
Table 19. Example EDR additional configuration parameters.
[0079] These values are always valid for the data being transported in the request or response messages and may be different between the two messages.
[0080] Mask Write Register (MWR) message is used by the GCP master to modify the contents of a specified register in the GCP slave by using a combination of an AND mask, an OR mask, and the register's current contents. The message can be used to set or clear individual bits in the register. As a result, this message can be used to more efficiently replace a read-modify- write operation. An example MWR request message is shown in Table 20 below and a normal response from the slave is shown in Table 21. When an error occurs, the error message shown in Table 22 is sent by the slave in lieu of or in addition to the response message.
Description Length Contents
Message ID 1 byte 18
Message Length 2 bytes 23
Transaction ID 2 bytes Unique value
Mode 1 bytes bit 7: 0 = Send normal response
1 = Suppress normal response bit 6: 0 = Write
bit 5: 0 = Read, 1 = No Read bit 4-3: Reserved. Set to 0.
bit 2-0: 001 = 8-bit data width
010 = 16-bit data width 011 = 32 bit data width 100 = 64-bit data width
000, 101, 110, 111: Reserved.
Reference 4 bytes 0x00000000 to OxFFFFFFFF
Address
AND_Mask 8 bytes 8-bit to 64-bit field
OR_Mask 8 bytes 8-bit to 64-bit field
Table 20. Example MWR request mes
Table 21. Example MWR response message.
Description Length Contents
Message ID 1 byte 147
Message Length 2 bytes 3
Transaction ID 2 bytes Same as request
Return Code 1 byte See Table 24
Table 22. Example MWR error message.
Read and write operations for the MWR request message mode field (bits 5 and 6)
Table 23. Example MWR read- write modes.
[0082] The normal MWR response message can be suppressed by asserting the "suppress normal response bit". This mode may be useful when a series of back- to-back writes are performed and there is a desire to reduce the workload on the remote device. In the event of an error at the GCP slave, the GCP slave will return an error response with the appropriate error code.
[0083] The MWR request message specifies the register to be written, the data to be used as the AND mask, and the data to be used as the OR mask. The number of bytes written and read, and hence the size of the mask is specified in the mode field. When less than 64 bits are used, the least order bytes in the MASK fields may be used. The unused bits in the AND_MASK and OR_MASK field should be set to 0 by the master and ignored by the slave. An example mask function algorithm is:
Result = (Contents AND AND_Mask) OR (OR_Mask AND (NOT AND_Mask))
Using the following 8 bit mask example, the result is 17 hexadecimal:
Format = Hex, Binary
Current Contents = 12, 0001 0010
AND_Mask = F2, 1111 0010
OR_Mask = 25, 0010 0101
(NOT And_Mask) = OD, 0000 1101
Result = 17, 0001 0111
[0084] If the OR_Mask value is zero, the result is simply the logical ANDing of the current contents and AND_Mask. If the AND_Mask value is zero, the result is equal to the OR_Mask value.
[0085] The GCP response message contains a return or exception code that indicates either success or a specific type of failure. Example return codes are show in Table 24:
Code Name Notify GDM EDS EDR WMR
0 MESSAGE Y Y Y Y Y SUCCESSFUL
1 UNSUPPORTED n/a Y Y Y Y
MESSAGE
2 ILLEGAL MESSAGE Y Y Y Y Y LENGTH
3 ILLEGAL Y Y Y Y Y TRANSACTION ID
4 ILLEGAL MODE Y Y Y Y Y
5 ILLEGAL PORT n/a Y Y n/a n/a
6 ILLEGAL CHANNEL n/a Y Y n/a n/a
7 ILLEGAL COMMAND n/a Y n/a n/a n/a
8 ILLEGAL VENDOR n/a n/a Y n/a n/a
ID
9 ILLEGAL VENDOR n/a n/a Y n/a n/a
INDEX
10 ILLEGAL ADDRESS n/a n/a n/a Y Y
11 ILLEGAL DATA n/a n/a Y Y n/a
VALUE
12-127 Reserved - - - - -
128-254 User Defined Codes - - - - -
255 SLAVE DEVICE n/a Y Y Y Y
FAILURE
Table 24. Example GCP return codes.
[0086] Error codes in this example are assigned in numerical order. If there are multiple errors, only the lowest value error code may be reported.
[0087] GCP may also be used in a debug mode in which a master or slave device can be monitored or debugged by each other, another application, or by a user via a user interface. UEPI control plane operation is described next.
UEPI CONTROL PLANE OPERATION
[0088] As shown in FIG. 1, DEPI, UEPI and GCP pseudowires are carried over
communication link 195. The UEPI pseudowires carry upstream data plane information and control plane information for upstream communication. The UEPI control plane can configure point-to-point (P2P) between a CMTS core and CCAP access point, and point-to-multipoint (P2MP) communication between a CMTS single MAC and multiple CCAP access points.
[0089] Typically, there is one tunnel between each unique combination of CMTS core and CCAP access point. A tunnel has a unique pairing of source and destination IP addresses and may support multiple transport sessions. A pseudowire is implemented via a single session with a corresponding session ID. Each DEPI and UEPI transmitter has a unique transport stream ID (TSID) and each DEPI and UEPI receiver has a unique receive stream ID (RSID). By implementing the techniques described herein DEPI and UEPI can share the same tunnel with each UEPI logical channel having its own pseudowire. Accordingly, each CMTS core and CCAP access point pair can support at least two logical channels; one for DEPI and one for UEPI. The logical channel assignment is within the RSID. For example, an RSID is eight bits and has the following format: where {Channel number = bits 7 to 1, Logical channel = bit 0}. In one possible implementation, DEPI and UEPI can use separate pseudowires so that
encapsulation options do not get mixed between the two. Alternatively, DEPI and UEPI could share a common session for a transmit and receive matched pair.
[0090] Referring now to FIG. 8, an example block diagram of UEPI pseudowires between an M-CMTS core and a CCAP access point for handling upstream traffic is now described. In this
example, pseudowires are shown between M-CMTS core 170 (FIG. 1) and CCAP AP 135(1) (FIG.2). CMTS core 170 is divided into three logical entities that include an upstream MAC entity 810, an upstream scheduling entity 820, and an upstream spectrum management entity 830. CCAP AP 135(1) is shown with the remote PHY assembly 210 (FIG. 2). Five pseudowires are shown that include a data plane message, UEPI data pseudowire 840; and four control plane pseudowires: a UEPI MAP pseudowire 845, a UEPI range-request (RNG-REQ) pseudowire 850, a UEPI REQ pseudowire 860, and a UEPI spectrum management (SpecMan) pseudowire 870. The CCAP AP 135(1) is connected to a DOCSIS RF interface (RFI) 885 via link 880 while the upstream MAC entity 810 is connected to a packet processor 895 via link 890.
[0091] The UEPI data pseudowire 840 is used to forward upstream traffic, e.g., data from a CM, to the CMTS core 170 for further forwarding by packet processor 895. The UEPI MAP pseudowire 845 provides scheduling information, e.g., time slots and contention periods, to downstream devices. The UEPI RNG-REQ pseudowire 850 requests ranging information so that downstream devices, e.g., CMs or DOCSIS gateways, can transmit upstream packets to arrive upstream within a scheduled time slot.
[0092] The UEPI REQ pseudowire 860 carries any other requests from the downstream devices. Although the pseudowires are described as being separate, the underlying messages may be shared over a single pseudowire. For example, messages for the MAP, REQ, and RNG- REQ pseudowires could be sent over a single pseudowire. It should be noted that the PHY configuration for Advanced Time Division Multiple Access (ATMDA) and Synchronous Code Division Multiple Access (SCDMA) parameters needed to configure the CCAP access point are defined in MULPI and could be sent to the CCAP access point using GCP. The SpecMan pseudowire 870 is used to manage upstream spectrum between the CCAP access point and the M-CMTS core.
[0093] UEPI has two modes, a basic mode and an advanced mode. In the UEPI advanced mode, all pseudowires are employed, as described later. In the UEPI basic mode, the CMTS sends the DOCSIS MAP over the DEPI pseudowire. The CCAP AP extracts the MAP from the DEPI pseudowire. The CCAP AP sends data, REQ messages, and RNG-REQ messages to the CMTS over the UEPI Data pseudowire. In this mode, UEPI MAP, RNG-REQ, REQ, and SpecMan pseudowires do not get used. Alternatively, the CMTS sends a MAP message on the
UEPI MAP pseudowire. The CMTS can send a MAP in the DEPI session, but the CCAP AP is configured to ignore that MAP message when MAPs are being received via UEPI. The MAP message in the DEPI session propagates to the CMs. This allows the MAP to get to the CCAP AP earlier which reduces the MAP advance time. In another example, if DEPI is configured to use Packet Streaming Protocol (PSP), then the CCAP AP could take the MAP message from the UEPI MAP pseudowire and inject it into the CCAP AP downstream. PSP is a layer-3 convergence layer protocol, which allows packets to be consecutively streamed together and fragmented at arbitrary boundaries. PSP facilitates QoS.
[0094] The upstream scheduling entity 820 (or scheduler) generates MAPs using the REQ and RNG-REQ messages. The scheduler is shown in the CMTS, but may be placed in the CCAP AP, depending on system design. When the scheduler resides in the CCAP AP, the REQ, RNG- REQ, and MAP pseudowires can be eliminated. When the upstream scheduler is remote, e.g., as part of the CCAP access point, a couple of scheduling methods may be employed: 1) Publish an interface, e.g., DEPI, UEPI, and GCP with extensions, and the CCAP AP writes its own scheduler, or 2) the scheduler may be published, e.g., as a Linux loadable module with an API pushed by CMTS at boot time or in real-time to the CCAP access point. When a loadable module is published, the upstream scheduler "appears" as an application to the CCAP access point.
[0095] Even though the US scheduler is remote, the DOCSIS signaling can remain centralized with few limited exceptions. When the scheduler is remote the DOCSIS MAP message can be sent from the CCAP access point to the CMs and does not originate at the CMTS core. The synchronization (SYNC) message is sent from the CCAP access point and the ranging interval is initiated by the CCAP access point. Any CM initiated messages are responded to by the CMTS. Furthermore, many of the MAC management messages can be moved to the CCAP access point. When channel bonding is in use, the upstream bonding may be configured to terminate in the CCAP access point with data forwarded over fiber to the CMTS core. In a similar manner a DOCSIS framer, e.g., for encapsulating DOCSIS MAC frames, can be positioned remotely as part of a CCAP access point. A remote scheduler AVP for UEPI and a remote DOCSIS framer AVP are described below in connection with FIG. 9D.
[0096] To facilitate UEPI control plane messages, L2TPv3 encapsulation is used with customized Attribute- Value Pairs (A VPs). An example control plane packet format is shown in FIG. 9A. The packet has a standard Ethernet header 900 and CRC 940. Within the Ethernet packet 900 is an optional VLAN header, an IPv6 or IPv4 header 910, an optional UDP header 915, an L2TPv3 control header 920, and a list of one or more L2TPv3 AVPs 930. The custom AVPs carry the UEPI upstream communication configuration parameters associated with the MAP, REQ, RNG-REQ, and SpecMan UEPI pseudowires. The custom AVPs are described in detail hereinafter in connection with FIGs. 9B-9E.
[0097] As viewed in FIG. 9 A, L2TPv3 header 920 follows the standard format parameters. These fields follow the L2TPv3 Request for Comments (RFC) 3931 definitions for connection setup, flow, and teardown. The data field carries the custom AVP information for the UEPI control plane. AVPs 930 comprise M, H, length, vendor ID, attribute type, attribute value, and fields. The one bit mandatory (M) field determines whether or not the AVP is important enough to tear down the L2TPv3 connection and the hidden (H) fields indicates whether or not encryption is used. Encryption is not necessary for UEPI messages. The length is equal to the length of the attribute value field plus six bytes. The vendor ID field is zero for standard AVPs and 4491 for UEPI specific AVPs. The vendor ID of 4491 indicates that the vendor is
CableLabs®.
[0098] Custom AVPs are described herein to setup each of the four control plane UEPI pseudowire types. Standard L2TPv3 AVPs are not described herein. For a UEPI pseudowire interfacing with the upstream scheduling entity 820, custom AVPs may include TLVs for ATDMA and SCDMA parameters, e.g., Upstream Channel Descriptors (UCDs); and scheduling parameters, e.g., various dynamic QoS parameters such as dynamic service parameters (DSx), where "x" represents add, change, or delete an identified parameter.
[0099] When UEPI spanning is employed (MP2P) when viewed from the CCAP access point, a spanning basic mode and an advanced mode are available. Thus, a single CMTS MAC can support more than one CCAP access point PHY. For example, two 4 channel CCAP access point PHYs may connect to one 4 channel CMTS MAC. In basic mode, the CMTS MAC bandwidth is the same as the PHY bandwidth. For example, a single CMTS MAC that supports four channels with a combined bandwidth of 100 Mbps that all feed a CCAP access point MAC
that also has 100 Mbps of bandwidth. Since there is a unique tunnel between each CMTS and CCAP access point device, there is no need for additional bandwidth management for UEPI Spanning. In this scenario, all CCAP access points that share the same physical channels are in the same MAC domain. The downstream sessions that are associated with the MAC domain must be equivalent or a super set of the upstream sessions
[00100] The same spanned DOCSIS channels, but on different CCAP access point devices, are assigned the same DOCSIS upstream channel ID. The two channels share the same station ID and Service Flow address space. There are no duplicate CM SIDs (Station Identifiers) or SG (Service Groups) across the two upstreams. The same DOCSIS upstream bandwidth MAP MAC management message is sent to both CCAP APs on the downstream. The MAP controls upstream bandwidth. Since the CM SIDs are unique, only one upstream on one DOCSIS access point will transmit at a time for a particular channel. During ranging, it is possible to get packets from both CCAP APs. Collisions will only occur within an upstream channel within a DOCSIS access point. Thus, initial ranging will actually be more efficient. Requests may originate from either DOCSIS access point during a broadcast request slot. The CMTS will accept the separate Request streams.
[00101] When UEPI is in the advanced mode, the combined CMTS MAC domain bandwidth could be larger than the individual channel bandwidth of each PHY. The total bandwidth does not have to equal the sum of each of the individual bandwidths. In this scenario, the CMTS scheduler is aware of which CMs are serviced by which DOCSIS access point. The scheduler would then perform a bandwidth calculation for each CCAP AP and then perform a second bandwidth calculation for the shared upstream session. Alternatively, each CCAP AP could have its own MAP and its own session, but the CMTS would still consider them in the same MAC domain. This option is not really spanning but may be used when combining upstreams with DEPI downstreams that are spanned.
[00102] UEPI uses the some of the same AVPs as DEPI but with additional extensions to setup the UEPI pseudowire. Referring to FIGs. 9B-9E, example AVP message formats for UEPI are described. For each of the formats shown in FIGs. 9B-9E, the M, H, RESV, length, vendor ID, and attribute type field operate as described above. FIG. 9B depicts field 930 from FIG. 9A for an example pseudowire type message. In this example, a lock (L) bit and a pseudowire (PW)
type field has been added. The L bit indicates whether or not a particular parameter should be "locked". For example, access points may be configured by way of a separate control system or the CMTS. The L bit prevents one control mechanism from overwriting another control system. When set to zero the L bit may indicate that the parameter is read-only, while a setting of one indicates that the parameter is read- write.
[00103] The pseudowire sub-type (one byte) has the following options:
o Type 0 = PSP default mode as defined by the DEPI-I08 specification (or a later version) maintained by CableLabs®
o Type 1 = DEPI Multi-channel MPEG (MCM) pseudowire
o Type 2 = DEPI MCM/Multi-channel Launch (MCL) pseudowire
o Type 3 = UEPI Data pseudowire
o Type 4 = UEPI MAP pseudowire
o Type 5 = UEPI REQ pseudowire
o Type 6 = RNG-REQ pseudowire
o Type 7 = SpecMan pseudowire
o Types 8-255 = Reserved
Thus, pseudowire sub-type allows the endpoints, e.g., the CMTS core and the CCAP access point, to send messages over the correct pseudowire.
[00104] FIG. 9C depicts an example AVP for spanning. In this example, the PW-type field is replaced with a configuration (config) field. The config field has two active bits, zero and one. Bit 0, when set to one, indicates that downstream UEPI spanning is active and when set to zero, indicates that downstream UEPI spanning is inactive.
[00105] FIG. 9D depicts an example AVP for configuring remote resources, such as the remote scheduler and remote framer, as described above. In this example, the config field uses four bits, zero, one, two and three. Bit 0, when set to one, indicates that an upstream scheduler is remotely positioned and when set to zero, indicates that upstream scheduler is centralized, e.g., associated with the CMTS. Similarly, bit 1 is set to indicate whether the downstream scheduler is remote or centralized. Bit 2, when set to one, indicates that upstream framer is remote and when set to zero, indicates that upstream framer is centralized. Similarly, bit 3 is set for a
downstream framer is remotely positioned and when set to zero, indicates that the downstream framer is centralized.
[00106] FIG. 9E depicts an example AVP for configuring Motion Pictures Expert Group (MPEG)-Transport Stream (TS) over DOCSIS. In this example, the config field uses three bits, zero, one, and two, and adds a two byte buffer length field. Bit 0, when set to one, indicates that DOCSIS video is enabled, and when set to zero, indicates that DOCSIS video is disabled. Bit 1 is set to indicate whether or not time based queuing is enabled. Time based queuing allows the selective emptying of a queue, e.g., for video buffer contents. Bit 2 indicates whether or not program clock reference (PCR) correction is enabled. PCR correction allows the presentation of synchronized video/audio content and aids in reducing jitter due to packet based transmission as well as other system time or synchronization anomalies.
[00107] As mentioned above, AVPs can be configured to transmit ATDMA and SCDMA parameters, e.g., UCDs. Further, scheduling parameters, e.g., various dynamic QoS parameters such as dynamic service parameters (DSx), where "x" represents add, change, or delete an identified parameter can be sent via UEPI AVPs.
[00108] In summary for access point embodiments, the access point may be a CCAP access point. The access points have a network interface and a coaxial interface and control plane information is received from a CMTS via the network interface, where the control plane information is designed to configure the access point to enable communication over the network interface and the coaxial interface. At the access point, data plane and control plane information is received from the CMTS, and the data plane information transmitted via the coaxial interface to one or more customer termination devices.
[00109] The access point is booted, authenticated, and configured, e.g., using GCP. Layer 3 tunnels are established that may comprise DEPI, UEPI, and a GCP pseudowires between the CMTS and the access point. Data plane information is received via the coaxial interface and transmitted to the CMTS via the network interface. It may be determined whether the access point should have a software or firmware image upgrade and the access point software or firmware image is upgraded when necessary. Clocking parameters, IEEE 1588 clocking, may be established for the access point.
[00110] In summary for GCP embodiments, at a master device a generic control protocol (GCP) control message is generated that is configured to manage a slave device, where the control message includes one or more of structured access fields and register access fields, and where the structured access fields include one or more of (i) a device management message configured to provide basic device control and (ii) an exchange data structure message configured with a payload field configured to store a data structure from another protocol, and where the register access fields include one or more of (i) an exchange data registers message configured to read and write to a register in the slave device and (ii) a mask write register message configured to write to individual bits of a register in the slave device. The control message is transmitted to the slave device.
[00111] In summary for UEPI control plane embodiments, the UEPI control plane defines how to set up sessions for UEPI data connections and scheduling, and ranging over DEPI.
Additionally, UEPI is extended for P2MP operation which facilitates downstream Modular Headend Architecture (MHA) multicast operation. Further, the UEPI control plane extends M- CMTS concepts to allow the entire CMTS PHY to be separately located as a CCAP AP or PHY in an optical node (the CCAP AP can be an optical node). Optical nodes are useful for implementing a digital return path. A digital return path allows for cheaper return path optics and allows the analog return path to be terminated in the optical node, thereby increasing the dynamic range on a return path by eliminating laser clipping.
[00112] From the foregoing description, it will be appreciated that embodiments described herein make available a novel method, apparatuses, and system for GCP to configure remote DOCSIS devices, where the method, apparatuses, and system enable a cable system operator or multi system/service operators (MSOs) in cable system environment to automatically configure and operate a remote PHY device. It should be appreciated that the techniques described herein may be applied to any M-CMTS architecture with a distributed MAC and/or PHY layer QAM, e.g., within CMTS chassis line cards or any associated rack equipment.
[00113] Having described preferred embodiments of new techniques for a control plane to configure remote DOCSIS devices, it is believed that other modifications, variations and changes will be suggested to those skilled in the art in view of the teachings set forth herein. It is
therefore to be understood that all such variations, modifications and changes are believed to fall within the scope defined by the appended claims.
[00114] The above description is by way of example only.
Claims
1. A method comprising:
generating at a master device a generic control protocol (GCP) control message configured to manage a slave device, wherein the GCP control message includes one or more of a structured access field and a register access field;
wherein the structured access field includes one or more of (i) a device management message configured to provide device control and (ii) an exchange data structure message configured with a payload field configured to store a data structure from another protocol;
wherein the register access field includes one or more of (i) an exchange data registers message configured to read and write to a register in the slave device and (ii) a mask write register message configured to write to individual bits of a register in the slave device; and
transmitting the GCP control message to the slave device.
2. The method of claim 1, further comprising receiving a response message from the slave device, wherein the response message includes one of an error response message and a normal response message configured to respond to information contained in the GCP control message.
3. The method of claim 1, further comprising receiving a notify message from the slave device configured to interrupt the master device and provide one or more of slave device status and event information.
4. The method of claim 1, wherein the device management message is configured to provide device control including one or more of slave device cold reset, warm reset, standby, wake up, power-down, and power-up.
5. The method of claim 1, wherein the exchange data structure message is configured to carry one or more of Simple Network Management Protocol, extensible Markup Language (XML) and Data-Over-Cable Service Interface Specification data structures.
6. The method of claim 1, wherein the exchange data registers message is configured to convey one or more of memory read signaling, memory write signaling with corresponding memory write data, memory byte width, and memory address information.
7. The method of claim 1, wherein the mask write register message is configured to convey one or more of a logical AND mask, a logical OR mask, memory byte width, and memory address information.
8. The method of claim 1, wherein transmitting the GCP control message comprises encapsulating the GCP control message in one or more of a Transport Control Protocol (TCP) packet, a User Datagram Protocol (UDP) packet, and a layer 2 tunnel.
9. The method of claim 1, wherein the GCP control message includes information to configure one or more of a Media Access Control (MAC) layer and a physical (PHY) layer interface on the slave device.
10. The method of claim 1, further comprising authenticating communication with the slave device.
11. The method of claim 1, wherein the master device controls operation of devices associated with a Cable Modem Termination System (CMTS) and the slave device is associated with the CMTS.
12. The method of claim 1, wherein the GCP control message includes information to configure one or more of a Media Access Control (MAC) layer and a physical (PHY) layer interface to enable Data-Over-Cable Service Interface Specification (DOCSIS) communication via the slave device.
13. An apparatus comprising:
a network interface configured to communicate over a network; and
a processor configured to: generate a generic control protocol (GCP) control message configured to manage a slave device, wherein the GCP control message includes one or more of a structured access field and a register access field;
wherein the structured access field includes one or more of (i) a device management message configured to provide device control and (ii) an exchange data structure message configured with a payload field configured to store a data structure from another protocol;
wherein the register access field includes one or more of (i) an exchange data registers message configured to read and write to a register in the slave device and (ii) a mask write register message configured to write to individual bits of a register in the slave device; and
transmit the GCP control message to the slave device via the network interface.
14. The apparatus of claim 13, wherein the processor is further configured to receive one of a response message and a notify message from the slave device, wherein the response message includes one of an error response message and a normal response message configured to respond to information contained in the GCP control message, and wherein the notify message is configured to provide an interrupt and provide one or more of slave device status and event information.
15. The apparatus of claim 13, wherein the device management message is configured to provide device control including one or more of slave device cold reset, warm reset, standby, wake up, power-down, and power-up; the exchange data registers message is configured to convey one or more of memory read signaling, memory write signaling with corresponding memory write data, memory byte width, and memory address information; and wherein the mask write register message is configured to convey one or more of a logical AND mask, a logical OR mask, memory byte width, and memory address information.
16. The apparatus of claim 13, wherein the processor is configured to transmit the GCP control message comprises encapsulating the GCP control message in one or more of a Transport Control Protocol (TCP) packet, a User Datagram Protocol (UDP) packet, and a layer 2 tunnel.
17. The apparatus of claim 13, wherein the control message includes information to configure one or more of a Media Access Control (MAC) layer and a physical (PHY) layer interface on the slave device.
18. The apparatus of claim 13, wherein the GCP control message is configured to control operation of slave devices associated with a Cable Modem Termination System (CMTS) to enable Data-Over-Cable Service Interface Specification (DOCSIS) communication via the slave devices.
19. One or more computer readable media encoded with instructions that, when executed by a processor, cause the processor to:
generate a generic control protocol (GCP) control message configured to manage a slave device, wherein the GCP control message includes one or more of a structured access field and a register access field;
wherein the structured access field includes one or more of (i) a device management message configured to provide device control and (ii) an exchange data structure message configured with a payload field configured to store a data structure from another protocol;
wherein the register access field includes one or more of (i) an exchange data registers message configured to read and write to a register in the slave device and (ii) a mask write register message configured to write to individual bits of a register in the slave device; and
transmit the GCP control message to the slave device via the network interface.
20. The computer readable media of claim 19, further comprising instructions that when executed cause the processor to receive one of a response message and a notify message from the slave device, wherein the response message includes one of an error response message and a normal response message configured to respond to information contained in the GCP control message, and wherein the notify message is configured as an interrupt and provide one or more of slave device status and event information.
21. The computer readable media of claim 19, wherein the device management message is configured to provide device control including one or more of slave device cold reset, warm reset, standby, wake up, power-down, and power-up, the exchange data registers message is configured to convey one or more of memory read signaling, memory write signaling with corresponding memory write data, memory byte width, and memory address information, and wherein the mask write register message is configured to convey one or more of a logical AND mask, a logical OR mask, memory byte width, and memory address information.
22. The computer readable media of claim 19, wherein the instructions that transmit comprise instructions that when executed cause the processor to transmit the GCP control message comprising one or more of a Transport Control Protocol (TCP) packet, a User Datagram Protocol (UDP) packet, and a layer 2 tunnel.
23. The computer readable media of claim 19, wherein the GCP control message includes information to configure one or more of a Media Access Control (MAC) layer and a physical (PHY) layer interface on the slave device.
24. The computer readable media of claim 19, wherein the GCP control message controls operation of devices associated with a Cable Modem Termination System (CMTS) to enable Data-Over-Cable Service Interface Specification (DOCSIS) communication via the slave device.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201280044870.8A CN103814547B (en) | 2011-09-16 | 2012-09-12 | Method and apparatus for the general controls protocol control message that communicates |
EP12768947.9A EP2756631B1 (en) | 2011-09-16 | 2012-09-12 | Generic control protocol |
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201161535715P | 2011-09-16 | 2011-09-16 | |
US61/535,715 | 2011-09-16 | ||
US201161536726P | 2011-09-20 | 2011-09-20 | |
US61/536,726 | 2011-09-20 | ||
US201161565102P | 2011-11-30 | 2011-11-30 | |
US61/565,102 | 2011-11-30 | ||
US201261608977P | 2012-03-09 | 2012-03-09 | |
US61/608,977 | 2012-03-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013039973A1 true WO2013039973A1 (en) | 2013-03-21 |
Family
ID=46934723
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2012/054763 WO2013039976A1 (en) | 2011-09-16 | 2012-09-12 | Downstream device architecture and control |
PCT/US2012/054760 WO2013039973A1 (en) | 2011-09-16 | 2012-09-12 | Generic control protocol |
PCT/US2012/054767 WO2013039979A1 (en) | 2011-09-16 | 2012-09-12 | Modular headend architecture with downstream multicast |
PCT/US2012/054765 WO2013039977A2 (en) | 2011-09-16 | 2012-09-12 | Upstream external phy interface for data and control plane traffic |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2012/054763 WO2013039976A1 (en) | 2011-09-16 | 2012-09-12 | Downstream device architecture and control |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2012/054767 WO2013039979A1 (en) | 2011-09-16 | 2012-09-12 | Modular headend architecture with downstream multicast |
PCT/US2012/054765 WO2013039977A2 (en) | 2011-09-16 | 2012-09-12 | Upstream external phy interface for data and control plane traffic |
Country Status (4)
Country | Link |
---|---|
US (5) | US9246701B2 (en) |
EP (4) | EP2756631B1 (en) |
CN (4) | CN103797806B (en) |
WO (4) | WO2013039976A1 (en) |
Families Citing this family (51)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9432172B2 (en) * | 1997-12-05 | 2016-08-30 | Rembrandt Wireless Technologies, Lp | System and method of communication using at least two modulation methods |
US8938769B2 (en) * | 2010-01-22 | 2015-01-20 | Gainspeed, Inc. | Virtual converged cable access platforms for HFC cable networks |
US9887855B2 (en) | 2010-01-22 | 2018-02-06 | Alcatel-Lucent Usa, Inc. | Virtual converged cable access platforms for HFC cable networks |
US9584869B2 (en) | 2010-01-22 | 2017-02-28 | Gainspeed, Inc. | Virtual CCAP cable modem termination system with software reconfigurable MAC |
US8935739B1 (en) | 2010-01-22 | 2015-01-13 | Gainespeed, Inc. | Distributed CCAP cable modem termination system |
US8644706B2 (en) | 2010-01-22 | 2014-02-04 | Gainspeed, Inc. | Distributed cable modem termination system with software reconfigurable MAC and PHY capability |
WO2013015835A1 (en) | 2011-07-22 | 2013-01-31 | Seven Networks, Inc. | Mobile application traffic optimization |
US9759772B2 (en) | 2011-10-28 | 2017-09-12 | Teradyne, Inc. | Programmable test instrument |
US10776233B2 (en) | 2011-10-28 | 2020-09-15 | Teradyne, Inc. | Programmable test instrument |
US9470759B2 (en) * | 2011-10-28 | 2016-10-18 | Teradyne, Inc. | Test instrument having a configurable interface |
CN102624560B (en) * | 2012-03-12 | 2016-06-29 | 深圳市天威视讯股份有限公司 | A kind of distributed deployment, centerized fusion CATV broadband access system |
US9225426B2 (en) | 2013-01-16 | 2015-12-29 | Maxlinear, Inc. | Advanced fiber node |
US9888270B2 (en) * | 2013-03-15 | 2018-02-06 | Time Warner Cable Enterprises Llc | High throughput network encryptionusing CCAP |
US9516127B2 (en) | 2013-03-25 | 2016-12-06 | Seven Networks, Llc | Intelligent alarm manipulator and resource tracker |
US10216549B2 (en) | 2013-06-17 | 2019-02-26 | Seven Networks, Llc | Methods and systems for providing application programming interfaces and application programming interface extensions to third party applications for optimizing and minimizing application traffic |
US10735822B2 (en) * | 2013-06-20 | 2020-08-04 | Antronix Inc. | System and method for providing data communication services through a CATV tap-off device |
US9602208B2 (en) * | 2013-07-12 | 2017-03-21 | Broadcom Corporation | Content distribution system |
US9973965B2 (en) * | 2013-07-12 | 2018-05-15 | Seven Networks, Llc | Transport protocol layer optimization for managing signaling and power consumption |
US10149018B2 (en) | 2013-08-19 | 2018-12-04 | Arris Enterprises Llc | R-CCAP with AM star architecture |
US9369339B2 (en) | 2013-09-30 | 2016-06-14 | Cisco Technology, Inc. | Virtual cable modem termination system |
WO2015123807A1 (en) * | 2014-02-18 | 2015-08-27 | 华为技术有限公司 | Method, apparatus and system for obtaining configuration file |
US9979564B2 (en) * | 2014-03-20 | 2018-05-22 | Cox Communications, Inc. | Virtual customer networks and decomposition and virtualization of network communication layer functionality |
US9692563B2 (en) * | 2014-04-14 | 2017-06-27 | Cisco Technology, Inc. | Upstream contention measurement reporting and mitigation in DOCSIS remote PHY network environments |
CN105594135B (en) * | 2014-08-14 | 2018-10-12 | 华为技术有限公司 | A kind of signal processing method and relevant device and device |
US10887016B2 (en) * | 2015-01-07 | 2021-01-05 | Mds Link, Inc. | Method and system for high bandwidth, multi-consumer data and video distribution equipment |
US10044607B2 (en) * | 2015-06-09 | 2018-08-07 | Cisco Technology, Inc. | Communication with segment routing in a cable modem network environment |
CN105610998B (en) * | 2016-02-29 | 2019-02-22 | 嘉应学院 | A kind of Data Identification method based on wireless sensor network |
CN105847731A (en) * | 2016-04-07 | 2016-08-10 | 国网福建省电力有限公司 | Bidirectional broadband access and interaction demand system based on LTE and coaxial cable |
CN106027352A (en) * | 2016-07-14 | 2016-10-12 | 瑞斯康达科技发展股份有限公司 | Service message forwarding method and device |
EP3513553A4 (en) * | 2016-09-14 | 2019-08-21 | Teleste Oyj | An arrangement for catv network segmentation |
US10044441B2 (en) | 2016-10-17 | 2018-08-07 | Applied Optoelectronics, Inc. | CATV network device energy reduction by providing amplifier control in response to channel loading |
JP7069542B2 (en) * | 2016-12-16 | 2022-05-18 | ソニーグループ株式会社 | Transmission device and transmission method |
US10244435B2 (en) * | 2016-12-22 | 2019-03-26 | Cisco Technology, Inc. | Cable cellular heterogeneous network |
CN106911715B (en) * | 2017-04-05 | 2019-07-19 | 数据通信科学技术研究所 | A kind of communication control unit and communication control method separating Read-write Catrol |
US10637740B2 (en) * | 2017-07-07 | 2020-04-28 | Howard Pfeffer | Apparatus and methods for management, configuration and provisioning of communication devices in a distributed access architecture |
US11044227B1 (en) * | 2017-10-10 | 2021-06-22 | Harmonic, Inc. | RPD MAC address stored in node |
EP3701683B1 (en) | 2017-10-24 | 2023-09-20 | InterDigital CE Patent Holdings | Cable modem interface mask based virtual local area network mapping |
CN109803028B (en) * | 2017-11-16 | 2022-05-13 | 华为技术有限公司 | Method and device for configuring service flow |
CN110636145B (en) * | 2018-06-22 | 2021-11-12 | 上海诺基亚贝尔股份有限公司 | Communication method, device and apparatus, and computer-readable storage medium |
CN110971438A (en) * | 2018-09-30 | 2020-04-07 | 华为技术有限公司 | Method and device for configuring data |
WO2020188082A1 (en) * | 2019-03-21 | 2020-09-24 | Rheinisch-Westfälische Technische Hochschule (Rwth) Aachen | Method and devices for a load allocation and for monitoring a supply reliability-critical resource to be allocated in a network |
CN110365408B (en) * | 2019-08-19 | 2020-10-02 | 深圳市双翼科技股份有限公司 | Passive optical network communication method, storage medium and system |
US11063781B2 (en) | 2019-10-22 | 2021-07-13 | Cisco Technology, Inc. | System and method for downlink OFDMA for reliable multicast and broadcast to workgroup bridge (WGB) bridged network |
US11469938B1 (en) * | 2019-12-06 | 2022-10-11 | Harmonic, Inc. | Distributed scheduling in remote PHY |
WO2021188956A1 (en) | 2020-03-20 | 2021-09-23 | Arris Enterprises Llc | Efficient remote phy dataplane management for a cable system |
US12041589B2 (en) * | 2020-08-17 | 2024-07-16 | Charter Communications Operating, Llc | Methods and apparatus for spectrum utilization coordination between wireline backhaul and wireless systems |
US11582055B2 (en) | 2020-08-18 | 2023-02-14 | Charter Communications Operating, Llc | Methods and apparatus for wireless device attachment in a managed network architecture |
US11563593B2 (en) | 2020-08-19 | 2023-01-24 | Charter Communications Operating, Llc | Methods and apparatus for coordination between wireline backhaul and wireless systems |
US11844057B2 (en) | 2020-09-09 | 2023-12-12 | Charter Communications Operating, Llc | Methods and apparatus for wireless data traffic management in wireline backhaul systems |
US11552890B2 (en) * | 2021-02-11 | 2023-01-10 | Cisco Technology, Inc. | Enhanced entropy for a converged interconnect network |
JP2022139950A (en) * | 2021-03-12 | 2022-09-26 | パナソニックIpマネジメント株式会社 | Communication device, communication system, and communication method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080134262A1 (en) * | 2006-12-05 | 2008-06-05 | Electronics And Telecommunications Research Institute | DEPI interface device for M-CMTS cable system and method thereof |
US20090016218A1 (en) * | 2006-12-06 | 2009-01-15 | Electronics And Telecommunications Research Institute | Method of controlling downstream traffic flow in cable network headend |
US20100002719A1 (en) * | 2008-07-02 | 2010-01-07 | Cisco Technology, Inc. | Map message expediency monitoring and automatic delay adjustments in m-cmts |
Family Cites Families (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0986267A3 (en) | 1998-09-07 | 2003-11-19 | Robert Bosch Gmbh | Method and terminals for including audiovisual coded information in a given transmission standard |
EP1142266A1 (en) * | 1998-12-23 | 2001-10-10 | Opuswave Networks, Inc. | Wireless local loop system supporting voice/ip |
US6751230B1 (en) | 1999-05-24 | 2004-06-15 | 3Com Corporation | Upstream channel multicast media access control (MAC) address method for data-over-cable systems |
EP1234409A2 (en) | 1999-09-03 | 2002-08-28 | Ericsson Inc. | Automatic configuration of cable modems |
JP3666318B2 (en) | 1999-09-27 | 2005-06-29 | セイコーエプソン株式会社 | ELECTRO-OPTICAL DEVICE, ELECTRONIC DEVICE USING SAME, AND DISPLAY DRIVE IC |
US6728239B1 (en) | 1999-12-30 | 2004-04-27 | At&T Corp. | Scaleable network server for low cost PBX |
US7089580B1 (en) | 2000-03-29 | 2006-08-08 | 3Com Corporation | Method for improved cable modem ranging in a data-over-cable system |
US7209442B1 (en) | 2001-06-27 | 2007-04-24 | Cisco Technology, Inc. | Packet fiber node |
US7688828B2 (en) | 2001-06-27 | 2010-03-30 | Cisco Technology, Inc. | Downstream remote physical interface for modular cable modem termination system |
US7639617B2 (en) * | 2001-06-27 | 2009-12-29 | Cisco Technology, Inc. | Upstream physical interface for modular cable modem termination system |
JP2003179903A (en) | 2001-12-12 | 2003-06-27 | Toshiba Corp | Ip streaming system, network relaying apparatus, set top box for ip streaming, and ip streaming-distributing method |
US7380022B2 (en) | 2001-12-28 | 2008-05-27 | Motorola, Inc. | Method and apparatus for transmitting wired data voice over IP data and wireless data through a common IP core network |
US20040181811A1 (en) * | 2003-03-13 | 2004-09-16 | Rakib Selim Shlomo | Thin DOCSIS in-band management for interactive HFC service delivery |
US7720002B1 (en) | 2003-07-10 | 2010-05-18 | Juniper Networks, Inc. | Systems and methods for initializing cable modems |
US7539208B2 (en) * | 2004-05-25 | 2009-05-26 | Cisco Technology, Inc. | Timing system for modular cable modem termination system |
US7864686B2 (en) | 2004-05-25 | 2011-01-04 | Cisco Technology, Inc. | Tunneling scheme for transporting information over a cable network |
US8913625B2 (en) * | 2004-12-17 | 2014-12-16 | Verizon Patent And Licensing Inc. | System and method for providing service-agnostic network resources |
CA2590669A1 (en) | 2004-12-31 | 2006-07-06 | British Telecommunications Public Limited Company | Method to run a connectionless network as a connection oriented network |
US7630361B2 (en) * | 2005-05-20 | 2009-12-08 | Cisco Technology, Inc. | Method and apparatus for using data-over-cable applications and services in non-cable environments |
CN100459573C (en) * | 2005-06-16 | 2009-02-04 | 华为技术有限公司 | Message transmitting method in cable modem terminal system |
CN102158992B (en) * | 2006-01-18 | 2012-07-04 | 华为技术有限公司 | Method and system for interconnecting base station and wired network |
US7710967B2 (en) | 2006-02-01 | 2010-05-04 | Cisco Technology, Inc. | Controlling advertisement of management prefixes |
US7701951B2 (en) * | 2006-03-06 | 2010-04-20 | Cisco Technology, Inc. | Resource reservation and admission control for IP network |
WO2008082625A2 (en) * | 2006-12-28 | 2008-07-10 | Genband Inc. | Methods, systems, and computer program products for providing a dynamic and flexible media gateway termination identifier |
US20090049492A1 (en) | 2007-08-17 | 2009-02-19 | Niki Pantelias | Network Architecture and Devices for Improving Performance of Hybrid Fiber Coax Cable Data Systems |
US7856520B2 (en) | 2008-01-04 | 2010-12-21 | Silicon Image, Inc. | Control bus for connection of electronic devices |
USRE47400E1 (en) | 2008-01-07 | 2019-05-21 | D&M Holdings Inc. | Systems and methods for providing dual-control functionality in a networked digital media device |
US8452123B2 (en) * | 2008-01-18 | 2013-05-28 | California Institute Of Technology | Distortion calibration for optical sensors |
US8179883B2 (en) * | 2008-06-17 | 2012-05-15 | General Instrument Corporation | Apparatus, method and system for managing session encapsulation information within an internet protocol content bypass architecture |
US20090310596A1 (en) * | 2008-06-17 | 2009-12-17 | General Instrument Corporation | Apparatus, method and system for managing bypass encapsulation of internet content within a bypass architecture |
US9479352B2 (en) * | 2008-06-25 | 2016-10-25 | Arris Enterprises, Inc. | Method for simultaneously managing high-speed data and video streams in a single MAC processing environment |
US20100014531A1 (en) * | 2008-07-18 | 2010-01-21 | Alcatel Lucent | Establishing pseudowires in packet switching networks |
US20100083329A1 (en) * | 2008-09-30 | 2010-04-01 | General Instrument Corporation | Apparatus, method and system for selecting and configuring internet content for bypass encapsulation within a bypass architecture |
KR101188526B1 (en) | 2008-12-16 | 2012-10-05 | 한국전자통신연구원 | Method and apparatus for transmitting the packet filtering information |
US8089983B2 (en) * | 2009-01-09 | 2012-01-03 | Cisco Technology, Inc. | Reserving resources over a DOCSIS downstream external physical interface |
US8428063B2 (en) | 2009-03-31 | 2013-04-23 | Comcast Cable Communications, Llc | Access network architecture having dissimilar access sub-networks |
US8094661B2 (en) * | 2009-03-31 | 2012-01-10 | Comcast Cable Communications, Llc | Subscriber access network architecture |
CN102025574B (en) | 2009-09-09 | 2012-09-26 | 国基电子(上海)有限公司 | Cable modem termination system and method |
EP2481203B1 (en) * | 2009-09-23 | 2013-12-04 | Telefonaktiebolaget LM Ericsson (publ) | Technique for monitoring a call |
US8897651B2 (en) | 2009-09-25 | 2014-11-25 | Futurewei Technologies, Inc | Passive optical network data over cable service interface specification upstream proxy architecture over the next generation hybrid fiber-coaxial networks |
CN102098551A (en) * | 2009-12-09 | 2011-06-15 | 华为技术有限公司 | Processing method and system of stream media service |
KR101075245B1 (en) * | 2009-12-18 | 2011-10-21 | 한국전자통신연구원 | Cable modem control method based on channel states |
KR101346983B1 (en) | 2009-12-18 | 2014-01-02 | 한국전자통신연구원 | Apparatus and method for transmiting video stream |
US8910198B2 (en) * | 2010-06-02 | 2014-12-09 | Time Warner Cable Enterprises Llc | Multicast video advertisement insertion using routing protocols |
US8917993B2 (en) | 2011-06-17 | 2014-12-23 | Calix, Inc. | Scheduling delivery of upstream traffic based on downstream traffic in optical networks |
US8948596B2 (en) | 2011-07-01 | 2015-02-03 | CetusView Technologies, LLC | Neighborhood node mapping methods and apparatus for ingress mitigation in cable communication systems |
US9917779B2 (en) * | 2011-08-23 | 2018-03-13 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Alleviating congestion in a cable modem |
-
2012
- 2012-09-12 WO PCT/US2012/054763 patent/WO2013039976A1/en active Application Filing
- 2012-09-12 EP EP12768947.9A patent/EP2756631B1/en not_active Not-in-force
- 2012-09-12 US US13/611,045 patent/US9246701B2/en active Active
- 2012-09-12 US US13/611,039 patent/US9246700B2/en active Active
- 2012-09-12 EP EP12766256.7A patent/EP2756637B1/en not_active Not-in-force
- 2012-09-12 EP EP12766254.2A patent/EP2756636B1/en active Active
- 2012-09-12 WO PCT/US2012/054760 patent/WO2013039973A1/en active Application Filing
- 2012-09-12 WO PCT/US2012/054767 patent/WO2013039979A1/en active Application Filing
- 2012-09-12 EP EP12766253.4A patent/EP2756635B1/en not_active Not-in-force
- 2012-09-12 WO PCT/US2012/054765 patent/WO2013039977A2/en active Application Filing
- 2012-09-12 CN CN201280044876.5A patent/CN103797806B/en not_active Expired - Fee Related
- 2012-09-12 CN CN201280044895.8A patent/CN103828303B/en not_active Expired - Fee Related
- 2012-09-12 US US13/611,062 patent/US9313095B2/en not_active Expired - Fee Related
- 2012-09-12 CN CN201280044891.XA patent/CN103797757B/en not_active Expired - Fee Related
- 2012-09-12 US US13/611,055 patent/US9130769B2/en active Active
- 2012-09-12 CN CN201280044870.8A patent/CN103814547B/en not_active Expired - Fee Related
-
2015
- 2015-07-23 US US14/807,461 patent/US9559899B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080134262A1 (en) * | 2006-12-05 | 2008-06-05 | Electronics And Telecommunications Research Institute | DEPI interface device for M-CMTS cable system and method thereof |
US20090016218A1 (en) * | 2006-12-06 | 2009-01-15 | Electronics And Telecommunications Research Institute | Method of controlling downstream traffic flow in cable network headend |
US20100002719A1 (en) * | 2008-07-02 | 2010-01-07 | Cisco Technology, Inc. | Map message expediency monitoring and automatic delay adjustments in m-cmts |
Also Published As
Publication number | Publication date |
---|---|
CN103797757B (en) | 2018-02-23 |
EP2756636A2 (en) | 2014-07-23 |
CN103797806A (en) | 2014-05-14 |
US9246701B2 (en) | 2016-01-26 |
US20130074138A1 (en) | 2013-03-21 |
US9313095B2 (en) | 2016-04-12 |
US9246700B2 (en) | 2016-01-26 |
EP2756631B1 (en) | 2016-07-13 |
US20150334467A1 (en) | 2015-11-19 |
US9130769B2 (en) | 2015-09-08 |
US20130070640A1 (en) | 2013-03-21 |
CN103797806B (en) | 2017-05-24 |
US20130070765A1 (en) | 2013-03-21 |
EP2756631A1 (en) | 2014-07-23 |
WO2013039977A2 (en) | 2013-03-21 |
US9559899B2 (en) | 2017-01-31 |
EP2756636B1 (en) | 2020-03-25 |
EP2756637A1 (en) | 2014-07-23 |
EP2756637B1 (en) | 2018-11-07 |
US20130070825A1 (en) | 2013-03-21 |
CN103828303A (en) | 2014-05-28 |
CN103828303B (en) | 2017-08-01 |
CN103814547A (en) | 2014-05-21 |
CN103797757A (en) | 2014-05-14 |
WO2013039979A1 (en) | 2013-03-21 |
CN103814547B (en) | 2017-09-08 |
WO2013039977A3 (en) | 2013-05-10 |
EP2756635B1 (en) | 2018-11-07 |
WO2013039976A1 (en) | 2013-03-21 |
EP2756635A1 (en) | 2014-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9559899B2 (en) | Upstream external PHY interface for data and control plane traffic | |
US11843641B2 (en) | Apparatus and methods for centralized message exchange in a user premises device | |
US7688828B2 (en) | Downstream remote physical interface for modular cable modem termination system | |
US7639617B2 (en) | Upstream physical interface for modular cable modem termination system | |
US8160093B2 (en) | Timing system for modular cable modem termination system | |
US10020976B2 (en) | Access network architecture having dissimilar access sub-networks | |
US8179883B2 (en) | Apparatus, method and system for managing session encapsulation information within an internet protocol content bypass architecture | |
US10848244B2 (en) | Data provisioning | |
WO2005117310A1 (en) | Modular cable modem termination system | |
US9143808B2 (en) | Multi-channel MPEG between headend and fiber node |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 12768947 Country of ref document: EP Kind code of ref document: A1 |
|
REEP | Request for entry into the european phase |
Ref document number: 2012768947 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2012768947 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |