US20130204904A1 - Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices - Google Patents
Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices Download PDFInfo
- Publication number
- US20130204904A1 US20130204904A1 US13/364,732 US201213364732A US2013204904A1 US 20130204904 A1 US20130204904 A1 US 20130204904A1 US 201213364732 A US201213364732 A US 201213364732A US 2013204904 A1 US2013204904 A1 US 2013204904A1
- Authority
- US
- United States
- Prior art keywords
- data
- decentralized
- control system
- revision control
- configuration
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- 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/085—Retrieval of network configuration; Tracking network configuration history
- H04L41/0859—Retrieval of network configuration; Tracking network configuration history by keeping history of different configuration generations or by rolling back to previous configuration versions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Definitions
- the present application relates generally to telecommunications systems and devices, and more specifically to systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices.
- Telecommunications systems and devices such as access systems, network management systems, media switching centers, cross-connects, session border controllers, etc.
- configuration data can be specified for a session border controller to satisfy the requirements of access and interconnect applications within mobile and/or fixed voice-over-Internet protocol (such voice-over-Internet protocol is also referred to herein as “VoIP”) networks.
- VoIP voice-over-Internet protocol
- the presently disclosed systems and methods employ at least one decentralized revision control system as a data repository for storing data, such as configuration data, and at least one data provisioning component as an interface for accessing the configuration data stored in the data repository.
- the decentralized revision control system in conjunction with the data provisioning component, the presently disclosed systems and methods can beneficially provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of the configuration data.
- an exemplary system for provisioning data storage and runtime configuration in telecommunications systems and devices includes the decentralized revision control system, and one or more functional components including at least the data provisioning component.
- the decentralized revision control system can be implemented using the Git revision control system, or any other suitable decentralized revision control system.
- the functional components can further include a view manager component, as well as one or more predetermined application program components in support of the functionality provided by the data provisioning and runtime configuration system.
- a user can access the data provisioning and runtime configuration system over a network via any suitable client, including, but not limited to, a web client, which is communicably coupleable to the view manager component via a network connection.
- the view manager component can be implemented as any suitable server interface, including, but not limited to, a web server interface, for providing an overall view of the current state of the system configuration.
- the user can access the view manager component over the network via a web browser, which is communicably coupleable to the web server interface of the view manager component via the network connection.
- the view manager component is communicably coupled to the data provisioning component, which, in turn, is communicably coupled to the decentralized revision control system.
- data such as configuration data, including but not limited to real-time data
- data objects can be stored in the data repository of the decentralized revision control system as objects (such objects are also referred to herein as “data objects”).
- the user can communicate with the view manager component over the network connection to request access to, additions to, updates to, and/or deletions of specific data objects stored in the data repository.
- the view manager component is operative to communicate with the data provisioning component to implement such access to, additions to, updates to, and/or deletions of such data objects, as requested by the user.
- the data provisioning component is operative to send commands, e.g., system calls, to the data repository over a source code management (SCM) interface of the decentralized revision control system, thereby implementing the requested access to, additions to, updates to, and/or deletions of such data objects stored in the data repository.
- SCM source code management
- the user can communicate with the data provisioning component to subscribe, via at least one subscription message, to specific data objects stored in the data repository, e.g., for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component.
- one or more of the predetermined application program components can register, with the data provisioning component, one or more application entities that may require access to the data objects stored in the data repository.
- the registered application entities are each operative to communicate with the data provisioning component to request access to specific data objects stored in the data repository. Further, the data provisioning component is operative to implement such access to such data objects, as requested by the respective application entities.
- the registered application entities are each further operative to communicate with the data provisioning component to subscribe to specific data objects, e.g., for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component. In the event the data provisioning component determines that such certain characteristics of the data objects have, in fact, changed, the data provisioning component notifies the respective application entities, as appropriate.
- two or more data provisioning and runtime configuration systems can be implemented as peer systems.
- Each of the peer systems can include a respective decentralized revision control system, and a respective data provisioning component.
- Each of the peer systems can further include a view manager component, as well as one or more predetermined application program components.
- the decentralized revision control systems, the data provisioning components, the view manager component(s), and the predetermined application program component(s) included in the respective peer systems are each configured to operate as described above with reference to the first aspect of the data provisioning and runtime configuration system.
- the data provisioning components included in the respective peer systems are further operative to communicate with one another over at least one messaging interface via a first network connection.
- the decentralized revision control systems included in the respective peer systems are further operative to communicate with one another via a second network connection, in accordance with a predetermined version control communication protocol.
- the data provisioning component can send, over the messaging interface via the first network connection, a notification of the changes to the data provisioning component included in the other peer system.
- the data provisioning components included in the peer systems can send commands, e.g., system calls, to the respective decentralized revision control systems coupled thereto, thereby causing the respective decentralized revision control systems to synchronize the changes to the data objects stored therein via the second network connection, in accordance with the predetermined version control communication protocol.
- commands e.g., system calls
- the data provisioning and runtime configuration system can beneficially provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of data, such as configuration data, including but not limited to real-time data.
- data provisioning and runtime configuration systems as peer systems, any changes to the data objects stored in the data repositories of the respective peer systems can be beneficially synchronized using a predetermined version control communication protocol, thereby assuring that none of the data are lost in the event of a failover.
- FIG. 1 is a block diagram of an exemplary architecture for provisioning data storage and runtime configuration in telecommunications systems and devices, in accordance with an exemplary embodiment of the present application.
- FIG. 2 is a flow diagram of an exemplary method of operating an exemplary data provisioning and runtime configuration system within the exemplary architecture of FIG. 1 .
- the presently disclosed systems and methods employ at least one decentralized revision control system as a data repository for storing data, such as configuration data, and at least one data provisioning component as an interface for accessing the configuration data stored in the data repository.
- the decentralized revision control system in conjunction with the data provisioning component, the presently disclosed systems and methods can beneficially provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of the configuration data.
- FIG. 1 depicts an illustrative embodiment of an exemplary architecture 100 for provisioning data storage and runtime configuration in telecommunications systems and devices, in accordance with an exemplary embodiment of the present application.
- the exemplary architecture 100 includes a plurality of telecommunications systems or devices 102 , 104 (such telecommunications systems or devices are also referred to herein as “telecommunications platforms”).
- Telecommunications platforms 102 , 104 can be implemented as access systems, network management systems, media switching centers, cross-connects, session border controllers, as examples, and/or as any other suitable telecommunications systems or devices.
- telecommunications platform 102 includes a data provisioning and runtime configuration system 101 a
- telecommunications platform 104 includes a data provisioning and runtime configuration system 101 b.
- Each of the data provisioning and runtime configuration systems 101 a, 101 b includes a decentralized revision control system, and one or more functional components including at least a data provisioning component.
- the data provisioning and runtime configuration system 101 a includes a decentralized revision control system 112 and a data provisioning component 116 .
- the data provisioning and runtime configuration system 101 b includes a decentralized revision control system 114 and a data provisioning component 118 .
- the functional components within the data provisioning and runtime configuration system 101 b further include a view manager component 120 .
- the functional components within the data provisioning and runtime configuration system 101 a further include one or more predetermined application program components 108 , 110 in support of the functionality provided by telecommunications platform 102 .
- the functional components within the data provisioning and runtime configuration system 101 b can further include one or more predetermined application program components 111 , 113 in support of the functionality provided by telecommunications platform 104 .
- one or more user clients can access the data provisioning and runtime configuration system 101 b within telecommunications platform 104 over a network.
- the user client 106 can be implemented as a web client, as an example, or as any other suitable client communicably coupleable to the view manager component 120 via a network connection 136 .
- the view manager component 120 can be implemented as any suitable server interface, including, but not limited to, a web server interface, for providing an overall view of the current state of the system configuration.
- the user client 106 implemented as a web client can access the data provisioning and runtime configuration system 101 b over the network via a web browser communicably coupled to the web server interface of the view manager component 120 .
- the view manager component 120 is communicably connected to the data provisioning component 118 , which, in turn, is communicably connected to the decentralized revision control system 114 .
- data such as configuration data, including but not limited to real-time data
- objects such objects are also referred to herein as “data objects”.
- the decentralized revision control systems 112 , 114 can each be implemented using any suitable decentralized revision control system, such as the Git revision control system that provides at least one data repository with at least history and revision capabilities and is not dependent on network access and/or on a central server.
- the user client 106 communicates, using the web browser, with the view manager component 120 over the network connection 136 to request access to, and/or one or more manipulations of, specific data objects stored in the data repository of the decentralized revision control system 114 .
- manipulations of data objects can include one or more additions to, updates to, and/or deletions of the respective data objects.
- the user client 106 can communicate with the view manager component 120 over the network connection 136 using the hypertext transfer protocol (HTTP), or any other suitable communications protocol.
- HTTP hypertext transfer protocol
- the view manager component 120 is operative to communicate with the data provisioning component 118 over a connection 134 to implement such access to, additions to, updates to, and/or deletions of the specific data objects contained in the decentralized revision control system 114 , as requested by the user client 106 .
- the data provisioning component 118 is operative to send commands, e.g., system calls, to the decentralized revision control system 114 over an interface 132 of the decentralized revision control system 114 , thereby implementing the requested access to, additions to, updates to, and/or deletions of the specific data objects stored in the data repository of the decentralized revision control system 114 .
- the interface 132 can be implemented as a source code management (SCM) interface of the decentralized revision control system 114 , or any other suitable interface.
- SCM source code management
- the user client 106 can communicate with the data provisioning component 118 to subscribe, via at least one subscription message, to the specific data objects stored in the data repository of the decentralized revision control system 114 .
- the user client 106 can subscribe to the specific data objects for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component 118 .
- each of the predetermined application program components 108 , 110 can register, with the data provisioning component 116 , one or more application entities that may require access to the data objects stored in the data repository of the decentralized revision control system 112 .
- the predetermined application program components 108 , 110 can each register one or more application entities.
- the application entities registered by the application program components 108 , 110 are operative to communicate with the data provisioning component 116 over connections 122 , 124 , respectively, to request access to, additions to, updates to, and/or deletions of specific data objects stored in the data repository of the decentralized revision control system 112 .
- the data provisioning component 116 is operative to implement such access to, additions to, updates to, and/or deletions of such data objects, as requested, on behalf of the respective application entities.
- the registered application entities are each further operative to communicate with the data provisioning component 116 to subscribe to specific data objects stored in the data repository of the decentralized revision control system 112 .
- each registered application entity can subscribe to the specific data objects for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component 116 .
- the data provisioning component 116 determines that such certain characteristics of the data objects have, in fact, changed, the data provisioning component 116 can notify the respective application entities over the connections 122 , 124 , as appropriate.
- the data provisioning and runtime configuration system 101 a within telecommunications platform 102 can be implemented as peer systems.
- the data provisioning components 116 , 118 included in the respective systems 101 a, 10 lb are operative to communicate with one another over a messaging interface 128 .
- the decentralized revision control systems 112 , 114 included in the respective systems 102 , 104 are operative to communicate with one another via a network connection 130 , in accordance with a predetermined version control communication protocol, such as HTTP, UUCP, FTP, SMTP, NNTP, or any other suitable communications protocol.
- a predetermined version control communication protocol such as HTTP, UUCP, FTP, SMTP, NNTP, or any other suitable communications protocol.
- the data provisioning component 118 included in the data provisioning and runtime configuration system 101 b determines that certain characteristics of data objects stored in the data repository of the decentralized revision control system 114 coupled thereto have changed, the data provisioning component 118 sends, over the messaging interface 128 , a notification of the changes to the data provisioning component 116 .
- each of the data repositories of the respective decentralized revision control systems 112 , 114 may contain configuration data.
- the data repository of one of the decentralized revision control systems 112 , 114 may contain at least a portion of the configuration data stored in the other one of the decentralized revision control systems 112 , 114 .
- each of the decentralized revision control systems 112 , 114 can synchronize the changes to the configuration data in the data objects stored therein by fetching such changes to the data objects over the network connection 130 , using HTTP or any other suitable communications protocol,
- the data provisioning component 116 can notify the registered application entities of the changes to the data objects over the connections 122 , 124 , as appropriate.
- step 202 at least one request for access to, or manipulation of, data stored in the data repository of the decentralized revision control system 114 (see FIG. 1 ) is received at the data provisioning component 118 (see FIG. 1 ) within telecommunications platform 104 (see FIG. 1 ).
- step 204 one or more commands are sent, by the data provisioning component 118 (see FIG. 1 ), to the decentralized revision control system 114 (see FIG.
- step 206 in the event at least a portion of the data stored in the data repository of the decentralized revision control system 114 (see FIG. 1 ) has changed due to the requested access to, or manipulation of, the data, a notification of the changes is sent, by the data provisioning component 118 (see FIG. 1 ) over the messaging interface 128 (see FIG. 1 ), to the data provisioning component 116 (see FIG. 1 ) within telecommunications platform 102 (see FIG. 1 ).
- step 208 see FIG.
- one or more commands are sent, by the data provisioning components 116 , 118 (see FIG. 1 ), to the respective decentralized revision control systems 112 , 114 (see FIG. 1 ) connected thereto, causing the decentralized revision control systems 112 , 114 (see FIG. 1 ) to synchronize the changes to the data objects stored therein via the network connection 130 (see FIG. 1 ).
- any of the operations depicted and/or described herein that form part of the illustrative embodiments are useful machine operations.
- the illustrative embodiments also relate to a device or an apparatus for performing such operations.
- the apparatus can be specially constructed for the required purpose, or can be a general-purpose computer selectively activated or configured by a computer program stored in the computer.
- various general-purpose machines employing one or more processors coupled to one or more computer readable media can be used with computer programs written in accordance with the teachings disclosed herein, or it may be more convenient to construct a more specialized apparatus to perform the required operations.
- the presently disclosed systems and methods can also be embodied as computer readable code on a computer readable medium.
- the computer readable medium is any data storage device that can store data, which can thereafter be read by a computer system. Examples of such computer readable media include hard drives, read-only memory (ROM), random-access memory (RAM), CD-ROMs, CD-Rs, CD-RWs, magnetic tapes, and/or any other suitable optical or non-optical data storage devices.
- the computer readable media can also be distributed over a network-coupled computer system, so that the computer readable code can be stored and/or executed in a distributed fashion.
Abstract
Description
- Not applicable
- Not applicable
- The present application relates generally to telecommunications systems and devices, and more specifically to systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices.
- Telecommunications systems and devices, such as access systems, network management systems, media switching centers, cross-connects, session border controllers, etc., can be adapted via configuration data to provide specific functionality for a target application. Based on such configuration data, control software within the telecommunications systems and devices can control the respective systems and devices to satisfy the requirements of the target application. For example, such configuration data can be specified for a session border controller to satisfy the requirements of access and interconnect applications within mobile and/or fixed voice-over-Internet protocol (such voice-over-Internet protocol is also referred to herein as “VoIP”) networks. By adapting the session border controller using such configuration data, the session border controller can be effectively controlled to provide security for the interconnect and access network infrastructure, thereby assuring that VoIP services are made continuously available while maintaining a high level of system performance.
- In typical telecommunications systems and devices, large amounts of complex configuration data must generally be stored and managed. Further, within a typical target application, such configuration data generally has to be accessed in a controlled manner, and the history of any changes made to the configuration data has to be tracked and maintained. Moreover, users of such telecommunications systems and devices generally require the capabilities of rolling back such changes to the configuration data, as required and/or as desired, and successfully synchronizing the configuration data across other telecommunications systems and/or devices over a network. However, prior attempts to provide such functionality in telecommunications systems and devices have generally not been suited for use in real-time applications that require fast, dynamic access to configuration data.
- It would therefore be desirable to have improved systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices that better address the issues relating to the storage and management of data, such as configuration data, in real-time applications.
- In accordance with the present application, improved systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices are disclosed. The presently disclosed systems and methods employ at least one decentralized revision control system as a data repository for storing data, such as configuration data, and at least one data provisioning component as an interface for accessing the configuration data stored in the data repository. By employing the decentralized revision control system in conjunction with the data provisioning component, the presently disclosed systems and methods can beneficially provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of the configuration data.
- In accordance with a first aspect, an exemplary system for provisioning data storage and runtime configuration in telecommunications systems and devices (such an exemplary system is also referred to herein as a/the “data provisioning and runtime configuration system”) includes the decentralized revision control system, and one or more functional components including at least the data provisioning component. For example, the decentralized revision control system can be implemented using the Git revision control system, or any other suitable decentralized revision control system. The functional components can further include a view manager component, as well as one or more predetermined application program components in support of the functionality provided by the data provisioning and runtime configuration system. In accordance with a first exemplary aspect, a user can access the data provisioning and runtime configuration system over a network via any suitable client, including, but not limited to, a web client, which is communicably coupleable to the view manager component via a network connection. The view manager component can be implemented as any suitable server interface, including, but not limited to, a web server interface, for providing an overall view of the current state of the system configuration. Using the web client, the user can access the view manager component over the network via a web browser, which is communicably coupleable to the web server interface of the view manager component via the network connection. The view manager component is communicably coupled to the data provisioning component, which, in turn, is communicably coupled to the decentralized revision control system. In further accordance with the first exemplary aspect, data, such as configuration data, including but not limited to real-time data, can be stored in the data repository of the decentralized revision control system as objects (such objects are also referred to herein as “data objects”). Using the web browser, the user can communicate with the view manager component over the network connection to request access to, additions to, updates to, and/or deletions of specific data objects stored in the data repository. The view manager component is operative to communicate with the data provisioning component to implement such access to, additions to, updates to, and/or deletions of such data objects, as requested by the user. In accordance with a second exemplary aspect, the data provisioning component is operative to send commands, e.g., system calls, to the data repository over a source code management (SCM) interface of the decentralized revision control system, thereby implementing the requested access to, additions to, updates to, and/or deletions of such data objects stored in the data repository. In further accordance with the second exemplary aspect, the user can communicate with the data provisioning component to subscribe, via at least one subscription message, to specific data objects stored in the data repository, e.g., for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component. In the event the data provisioning component determines that such certain characteristics of the data objects have, in fact, changed, the data provisioning component can notify the subscribing user of the change(s). In accordance with a third exemplary aspect, one or more of the predetermined application program components can register, with the data provisioning component, one or more application entities that may require access to the data objects stored in the data repository. The registered application entities are each operative to communicate with the data provisioning component to request access to specific data objects stored in the data repository. Further, the data provisioning component is operative to implement such access to such data objects, as requested by the respective application entities. The registered application entities are each further operative to communicate with the data provisioning component to subscribe to specific data objects, e.g., for the purpose of being notified whenever certain characteristics of such data objects change, as determined by the data provisioning component. In the event the data provisioning component determines that such certain characteristics of the data objects have, in fact, changed, the data provisioning component notifies the respective application entities, as appropriate.
- In accordance with a second aspect, two or more data provisioning and runtime configuration systems can be implemented as peer systems. Each of the peer systems can include a respective decentralized revision control system, and a respective data provisioning component. Each of the peer systems can further include a view manager component, as well as one or more predetermined application program components. The decentralized revision control systems, the data provisioning components, the view manager component(s), and the predetermined application program component(s) included in the respective peer systems are each configured to operate as described above with reference to the first aspect of the data provisioning and runtime configuration system. The data provisioning components included in the respective peer systems are further operative to communicate with one another over at least one messaging interface via a first network connection. Moreover, the decentralized revision control systems included in the respective peer systems are further operative to communicate with one another via a second network connection, in accordance with a predetermined version control communication protocol. In the event one of the data provisioning components included in the respective peer systems determines that certain characteristics of specific data objects stored in the data repository of the decentralized revision control system coupled thereto have changed, the data provisioning component can send, over the messaging interface via the first network connection, a notification of the changes to the data provisioning component included in the other peer system. Further, the data provisioning components included in the peer systems can send commands, e.g., system calls, to the respective decentralized revision control systems coupled thereto, thereby causing the respective decentralized revision control systems to synchronize the changes to the data objects stored therein via the second network connection, in accordance with the predetermined version control communication protocol.
- By employing the decentralized revision control system in conjunction with the data provisioning component, the data provisioning and runtime configuration system can beneficially provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of data, such as configuration data, including but not limited to real-time data. Further, by implementing two or more such data provisioning and runtime configuration systems as peer systems, any changes to the data objects stored in the data repositories of the respective peer systems can be beneficially synchronized using a predetermined version control communication protocol, thereby assuring that none of the data are lost in the event of a failover.
- Other features, functions, and aspects of the invention will be evident from the Drawings and/or the Detailed Description of the Invention that follow.
- The invention will be more fully understood with reference to the following Detailed Description of the Invention in conjunction with the drawings of which:
-
FIG. 1 is a block diagram of an exemplary architecture for provisioning data storage and runtime configuration in telecommunications systems and devices, in accordance with an exemplary embodiment of the present application; and -
FIG. 2 is a flow diagram of an exemplary method of operating an exemplary data provisioning and runtime configuration system within the exemplary architecture ofFIG. 1 . - Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices are disclosed. The presently disclosed systems and methods employ at least one decentralized revision control system as a data repository for storing data, such as configuration data, and at least one data provisioning component as an interface for accessing the configuration data stored in the data repository. By employing the decentralized revision control system in conjunction with the data provisioning component, the presently disclosed systems and methods can beneficially provide a data storage and runtime configuration provisioning framework that is data agnostic, application agnostic, and user agnostic, while further providing at least the capability of tracking and maintaining the version history of the configuration data.
-
FIG. 1 depicts an illustrative embodiment of anexemplary architecture 100 for provisioning data storage and runtime configuration in telecommunications systems and devices, in accordance with an exemplary embodiment of the present application. Theexemplary architecture 100 includes a plurality of telecommunications systems ordevices 102, 104 (such telecommunications systems or devices are also referred to herein as “telecommunications platforms”).Telecommunications platforms - In accordance with the illustrative embodiment of
FIG. 1 ,telecommunications platform 102 includes a data provisioning andruntime configuration system 101 a, andtelecommunications platform 104 includes a data provisioning andruntime configuration system 101 b. Each of the data provisioning andruntime configuration systems runtime configuration system 101 a includes a decentralizedrevision control system 112 and adata provisioning component 116. Similarly, the data provisioning andruntime configuration system 101 b includes a decentralizedrevision control system 114 and adata provisioning component 118. With reference totelecommunications platform 104, the functional components within the data provisioning andruntime configuration system 101 b further include aview manager component 120. Moreover, with reference totelecommunications platform 102, the functional components within the data provisioning andruntime configuration system 101 a further include one or more predeterminedapplication program components telecommunications platform 102. - It is noted that the functional components within the data provisioning and
runtime configuration system 101 b can further include one or more predeterminedapplication program components telecommunications platform 104. - As shown in
FIG. 1 , one or more user clients, such as auser client 106, can access the data provisioning andruntime configuration system 101 b withintelecommunications platform 104 over a network. Theuser client 106 can be implemented as a web client, as an example, or as any other suitable client communicably coupleable to theview manager component 120 via anetwork connection 136. Moreover, theview manager component 120 can be implemented as any suitable server interface, including, but not limited to, a web server interface, for providing an overall view of the current state of the system configuration. For example, theuser client 106 implemented as a web client can access the data provisioning andruntime configuration system 101 b over the network via a web browser communicably coupled to the web server interface of theview manager component 120. Theview manager component 120 is communicably connected to thedata provisioning component 118, which, in turn, is communicably connected to the decentralizedrevision control system 114. In further accordance with the illustrative embodiment ofFIG. 1 , data, such as configuration data, including but not limited to real-time data, can be stored in a data repository of the decentralizedrevision control system 114 as objects (such objects are also referred to herein as “data objects”). For example, the decentralizedrevision control systems - In accordance with an exemplary mode of operation of the data provisioning and
runtime configuration system 101 b withintelecommunications platform 104, theuser client 106 communicates, using the web browser, with theview manager component 120 over thenetwork connection 136 to request access to, and/or one or more manipulations of, specific data objects stored in the data repository of the decentralizedrevision control system 114. For example, such manipulations of data objects can include one or more additions to, updates to, and/or deletions of the respective data objects. Further, theuser client 106 can communicate with theview manager component 120 over thenetwork connection 136 using the hypertext transfer protocol (HTTP), or any other suitable communications protocol. Theview manager component 120 is operative to communicate with thedata provisioning component 118 over aconnection 134 to implement such access to, additions to, updates to, and/or deletions of the specific data objects contained in the decentralizedrevision control system 114, as requested by theuser client 106. Moreover, thedata provisioning component 118 is operative to send commands, e.g., system calls, to the decentralizedrevision control system 114 over aninterface 132 of the decentralizedrevision control system 114, thereby implementing the requested access to, additions to, updates to, and/or deletions of the specific data objects stored in the data repository of the decentralizedrevision control system 114. For example, theinterface 132 can be implemented as a source code management (SCM) interface of the decentralizedrevision control system 114, or any other suitable interface. In further accordance with this exemplary mode of operation of the data provisioning andruntime configuration system 101 b, theuser client 106 can communicate with thedata provisioning component 118 to subscribe, via at least one subscription message, to the specific data objects stored in the data repository of the decentralizedrevision control system 114. For example, theuser client 106 can subscribe to the specific data objects for the purpose of being notified whenever certain characteristics of such data objects change, as determined by thedata provisioning component 118. In the event thedata provisioning component 118 determines that such certain characteristics of the data objects have, in fact, changed, thedata provisioning component 118 generates and sends at least one notification of the changes to theview manager component 120 over theconnection 134, and theview manager component 120, in turn, notifies theuser client 106 of the changes over thenetwork connection 136, for example, via the web browser. In accordance with an exemplary mode of operation of the data provisioning andruntime configuration system 101 a withintelecommunications platform 102, each of the predeterminedapplication program components data provisioning component 116, one or more application entities that may require access to the data objects stored in the data repository of the decentralizedrevision control system 112. For example, the predeterminedapplication program components application program components data provisioning component 116 overconnections revision control system 112. Further, thedata provisioning component 116 is operative to implement such access to, additions to, updates to, and/or deletions of such data objects, as requested, on behalf of the respective application entities. The registered application entities are each further operative to communicate with thedata provisioning component 116 to subscribe to specific data objects stored in the data repository of the decentralizedrevision control system 112. For example, each registered application entity can subscribe to the specific data objects for the purpose of being notified whenever certain characteristics of such data objects change, as determined by thedata provisioning component 116. In the event thedata provisioning component 116 determines that such certain characteristics of the data objects have, in fact, changed, thedata provisioning component 116 can notify the respective application entities over theconnections - In further accordance with the illustrative embodiment of
FIG. 1 , the data provisioning andruntime configuration system 101 a withintelecommunications platform 102, and the data provisioning andruntime configuration system 101 b withintelecommunications platform 104, can be implemented as peer systems. In such an implementation of the data provisioning andruntime configuration systems data provisioning components respective systems 101 a, 10 lb are operative to communicate with one another over amessaging interface 128. Moreover, the decentralizedrevision control systems respective systems network connection 130, in accordance with a predetermined version control communication protocol, such as HTTP, UUCP, FTP, SMTP, NNTP, or any other suitable communications protocol. - In accordance with an exemplary mode of operation of the data provisioning and
runtime configuration systems data provisioning component 118 included in the data provisioning andruntime configuration system 101 b determines that certain characteristics of data objects stored in the data repository of the decentralizedrevision control system 114 coupled thereto have changed, thedata provisioning component 118 sends, over themessaging interface 128, a notification of the changes to thedata provisioning component 116. Further, thedata provisioning components revision control systems revision control systems network connection 130, in accordance with the predetermined version control communication protocol. For example, each of the data repositories of the respective decentralizedrevision control systems revision control systems revision control systems revision control systems network connection 130, using HTTP or any other suitable communications protocol, In addition, thedata provisioning component 116 can notify the registered application entities of the changes to the data objects over theconnections runtime configuration systems revision control systems - An exemplary method of operating a data provisioning and runtime configuration system within the
architecture 100 is described below with reference toFIG. 2 , as well asFIG. 1 . As depicted in step 202 (seeFIG. 2 ), at least one request for access to, or manipulation of, data stored in the data repository of the decentralized revision control system 114 (seeFIG. 1 ) is received at the data provisioning component 118 (seeFIG. 1 ) within telecommunications platform 104 (seeFIG. 1 ). As depicted in step 204 (seeFIG. 2 ), one or more commands are sent, by the data provisioning component 118 (seeFIG. 1 ), to the decentralized revision control system 114 (seeFIG. 1 ) to implement the requested access to, or manipulation of, the data stored in the data repository of the decentralized revision control system 114 (seeFIG. 1 ). As depicted in step 206 (seeFIG. 2 ), in the event at least a portion of the data stored in the data repository of the decentralized revision control system 114 (seeFIG. 1 ) has changed due to the requested access to, or manipulation of, the data, a notification of the changes is sent, by the data provisioning component 118 (seeFIG. 1 ) over the messaging interface 128 (seeFIG. 1 ), to the data provisioning component 116 (seeFIG. 1 ) within telecommunications platform 102 (seeFIG. 1 ). As depicted in step 208 (seeFIG. 2 ), one or more commands are sent, by thedata provisioning components 116, 118 (seeFIG. 1 ), to the respective decentralizedrevision control systems 112, 114 (seeFIG. 1 ) connected thereto, causing the decentralizedrevision control systems 112, 114 (seeFIG. 1 ) to synchronize the changes to the data objects stored therein via the network connection 130 (seeFIG. 1 ). - It is noted that the operations depicted and/or described herein are purely exemplary, and imply no particular order. Further, the operations can be used in any sequence, when appropriate, and/or can be partially used. With the above illustrative embodiments in mind, it should be understood that such illustrative embodiments can employ various computer-implemented operations involving data transferred or stored in computer systems. Such operations are those requiring physical manipulation of physical quantities. Typically, though not necessarily, such quantities take the form of electrical, magnetic, and/or optical signals capable of being stored, transferred, combined, compared, and/or otherwise manipulated.
- Further, any of the operations depicted and/or described herein that form part of the illustrative embodiments are useful machine operations. The illustrative embodiments also relate to a device or an apparatus for performing such operations. The apparatus can be specially constructed for the required purpose, or can be a general-purpose computer selectively activated or configured by a computer program stored in the computer. In particular, various general-purpose machines employing one or more processors coupled to one or more computer readable media can be used with computer programs written in accordance with the teachings disclosed herein, or it may be more convenient to construct a more specialized apparatus to perform the required operations.
- The presently disclosed systems and methods can also be embodied as computer readable code on a computer readable medium. The computer readable medium is any data storage device that can store data, which can thereafter be read by a computer system. Examples of such computer readable media include hard drives, read-only memory (ROM), random-access memory (RAM), CD-ROMs, CD-Rs, CD-RWs, magnetic tapes, and/or any other suitable optical or non-optical data storage devices. The computer readable media can also be distributed over a network-coupled computer system, so that the computer readable code can be stored and/or executed in a distributed fashion.
- The foregoing description has been directed to particular illustrative embodiments of this disclosure. It will be apparent, however, that other variations and modifications may be made to the described embodiments, with the attainment of some or all of their associated advantages. Moreover, the procedures, processes, and/or modules described herein may be implemented in hardware, software, embodied as a computer-readable medium having program instructions, firmware, or a combination thereof. For example, the functions described herein may be performed by a processor executing program instructions out of a memory or other storage device.
- It will be appreciated by those skilled in the art that modifications to and variations of the above-described systems and methods may be made without departing from the inventive concepts disclosed herein. Accordingly, the disclosure should not be viewed as limited except as by the scope and spirit of the appended claims.
Claims (19)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/364,732 US9270528B2 (en) | 2012-02-02 | 2012-02-02 | Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices |
US15/002,534 US9875260B2 (en) | 2012-02-02 | 2016-01-21 | Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/364,732 US9270528B2 (en) | 2012-02-02 | 2012-02-02 | Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/002,534 Division US9875260B2 (en) | 2012-02-02 | 2016-01-21 | Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices |
Publications (2)
Publication Number | Publication Date |
---|---|
US20130204904A1 true US20130204904A1 (en) | 2013-08-08 |
US9270528B2 US9270528B2 (en) | 2016-02-23 |
Family
ID=48903845
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/364,732 Active 2032-03-21 US9270528B2 (en) | 2012-02-02 | 2012-02-02 | Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices |
US15/002,534 Active 2032-04-13 US9875260B2 (en) | 2012-02-02 | 2016-01-21 | Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/002,534 Active 2032-04-13 US9875260B2 (en) | 2012-02-02 | 2016-01-21 | Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices |
Country Status (1)
Country | Link |
---|---|
US (2) | US9270528B2 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160127177A1 (en) * | 2014-11-03 | 2016-05-05 | Vladimir Pavlov | Installation of an arbitrary server as an extenstion of a computing platform |
US10331636B2 (en) | 2016-09-23 | 2019-06-25 | International Business Machines Corporation | Interactive visualization |
US10366061B2 (en) | 2016-09-23 | 2019-07-30 | International Business Machines Corporation | Interactive visualization |
US10423593B2 (en) | 2016-09-23 | 2019-09-24 | International Business Machines Corporation | Interactive visualization |
US10430436B2 (en) | 2016-09-23 | 2019-10-01 | International Business Machines Corporation | Interactive visualization |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10523721B2 (en) * | 2016-06-21 | 2019-12-31 | Microsoft Technology Licensing, Llc | Preserving long running sessions during side-by-side upgrade |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7383271B2 (en) * | 2004-04-06 | 2008-06-03 | Microsoft Corporation | Centralized configuration data management for distributed clients |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7797412B2 (en) * | 2006-10-25 | 2010-09-14 | Oracle America Inc. | Method and system for managing server configuration data |
-
2012
- 2012-02-02 US US13/364,732 patent/US9270528B2/en active Active
-
2016
- 2016-01-21 US US15/002,534 patent/US9875260B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7383271B2 (en) * | 2004-04-06 | 2008-06-03 | Microsoft Corporation | Centralized configuration data management for distributed clients |
Non-Patent Citations (1)
Title |
---|
WIKIPEDIA, "Git (software)", 11/20/2013, <http://en.wikipedia.org/wiki/Git_(software). * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160127177A1 (en) * | 2014-11-03 | 2016-05-05 | Vladimir Pavlov | Installation of an arbitrary server as an extenstion of a computing platform |
US9900212B2 (en) * | 2014-11-03 | 2018-02-20 | Sap Se | Installation of an arbitrary server as an extension of a computing platform |
US10331636B2 (en) | 2016-09-23 | 2019-06-25 | International Business Machines Corporation | Interactive visualization |
US10366061B2 (en) | 2016-09-23 | 2019-07-30 | International Business Machines Corporation | Interactive visualization |
US10423593B2 (en) | 2016-09-23 | 2019-09-24 | International Business Machines Corporation | Interactive visualization |
US10430436B2 (en) | 2016-09-23 | 2019-10-01 | International Business Machines Corporation | Interactive visualization |
US10956390B2 (en) | 2016-09-23 | 2021-03-23 | International Business Machines Corporation | Interactive visualization |
Also Published As
Publication number | Publication date |
---|---|
US9270528B2 (en) | 2016-02-23 |
US9875260B2 (en) | 2018-01-23 |
US20160140148A1 (en) | 2016-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9875260B2 (en) | Systems and methods of provisioning data storage and runtime configuration in telecommunications systems and devices | |
US10630779B2 (en) | System and method for using VoIP session continuity information using logical scalable units | |
US10298457B2 (en) | Synchronization of configuration file of virtual application distribution chassis | |
US10063443B2 (en) | System and method for managing VoLTE session continuity information using logical scalable units | |
CN110417842B (en) | Fault processing method and device for gateway server | |
US20120209968A1 (en) | System and method for managing a computing cluster | |
JP2016514311A (en) | Database system providing single tenant and multi-tenant environments | |
US20140201366A1 (en) | Smartphone apps in a cloud | |
US8825779B2 (en) | Systems and methods of real-time data subscription and reporting for telecommunications systems and devices | |
WO2016150153A1 (en) | Software release method and device | |
US20210218824A1 (en) | Method and device for processing mini program data | |
US9952888B2 (en) | Method and system to dynamically instantiate virtual repository for any services | |
WO2013152565A1 (en) | Capability aggregation and exposure method and system | |
WO2016207529A1 (en) | Method for dynamically managing a network service in a communication network | |
CN107872492B (en) | Method and device for supporting multi-user editing of data object at server | |
EP3065379A1 (en) | System and method for volte session continuation using logical scalable units | |
US20180248935A1 (en) | Enhanced reliability for information services | |
CN111770176B (en) | Traffic scheduling method and device | |
US9787749B2 (en) | Method, apparatus, and system for providing and using multi-protocol eventing | |
US9021109B1 (en) | Controlling requests through message headers | |
US11381665B2 (en) | Tracking client sessions in publish and subscribe systems using a shared repository | |
US8880670B1 (en) | Group membership discovery service | |
WO2021134252A1 (en) | Inter-device communication method and apparatus, and storage medium | |
EP4190122A1 (en) | Apparatus and methods for coordination of analytics information accessing in communication networks | |
US10708343B2 (en) | Data repository for a distributed processing environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: DIALOGIC INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:RAFFO, ROMOLO;PATIL, KAMLAKAR N.;NGUYEN, THIEN;REEL/FRAME:027643/0189 Effective date: 20120127 |
|
AS | Assignment |
Owner name: OBSIDIAN, LLC, AS COLLATERAL AGENT, CALIFORNIA Free format text: SUPPLEMENTAL INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNORS:DIALOGIC INC.;DIALOGIC CORPORATION;DIALOGIC NETWORKS (ISRAEL) LTD.;REEL/FRAME:027931/0001 Effective date: 20120322 |
|
AS | Assignment |
Owner name: OBSIDIAN, LLC, CALIFORNIA Free format text: SUPPLEMENTAL PATENT INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNORS:DIALOGIC INC.;DIALOGIC CORPORATION;DIALOGIC NETWORKS (ISRAEL) LTD;REEL/FRAME:029734/0863 Effective date: 20130130 |
|
AS | Assignment |
Owner name: EXCEL SWITCHING CORPORATION, NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: DIALOGIC RESEARCH INC., F/K/A EICON NETWORKS RESEA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: DIALOGIC INC., NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: DIALOGIC (US) INC., F/K/A DIALOGIC INC. AND F/K/A Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: SHIVA (US) NETWORK CORPORATION, NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: DIALOGIC US HOLDINGS INC., NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: DIALOGIC MANUFACTURING LIMITED, F/K/A EICON NETWOR Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: EXCEL SECURITIES CORPORATION, NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: DIALOGIC JAPAN, INC., F/K/A CANTATA JAPAN, INC., N Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: BROOKTROUT TECHNOLOGY, INC., NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: EAS GROUP, INC., NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: DIALOGIC CORPORATION, F/K/A EICON NETWORKS CORPORA Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: BROOKTROUT NETWORKS GROUP, INC., NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: DIALOGIC DISTRIBUTION LIMITED, F/K/A EICON NETWORK Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: SNOWSHORE NETWORKS, INC., NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: BROOKTROUT SECURITIES CORPORATION, NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: CANTATA TECHNOLOGY INTERNATIONAL, INC., NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 Owner name: CANTATA TECHNOLOGY, INC., NEW JERSEY Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:OBSIDIAN, LLC;REEL/FRAME:034468/0654 Effective date: 20141124 |
|
AS | Assignment |
Owner name: SILICON VALLEY BANK, MASSACHUSETTS Free format text: SECURITY AGREEMENT;ASSIGNORS:DIALOGIC (US) INC.;DIALOGIC INC.;DIALOGIC US HOLDINGS INC.;AND OTHERS;REEL/FRAME:036037/0165 Effective date: 20150629 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: SILICON VALLEY BANK, MASSACHUSETTS Free format text: FIRST SUPPLEMENT TO INTELLECTUAL PROPERTY SECURITY AGREEMENT;ASSIGNORS:DIALOGIC (US) INC.;DIALOGIC INC.;DIALOGIC US HOLDINGS INC.;AND OTHERS;REEL/FRAME:040542/0297 Effective date: 20161031 |
|
FEPP | Fee payment procedure |
Free format text: PAT HOLDER CLAIMS SMALL ENTITY STATUS, ENTITY STATUS SET TO SMALL (ORIGINAL EVENT CODE: LTOS); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YR, SMALL ENTITY (ORIGINAL EVENT CODE: M2551); ENTITY STATUS OF PATENT OWNER: SMALL ENTITY Year of fee payment: 4 |
|
FEPP | Fee payment procedure |
Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 8 |