Abstract:
The present invention provides a method, system and program product for peer-to-peer device management, monitor and control. Communication devices connected by communication networks can manage, monitor and control each other; they can be in both managing and managed roles. In one aspect, communication devices can send request messages comprising management, monitor and control commands to peers and receive response messages comprising results and statuses to the request messages from peers. In another aspect, communication devices can send notification messages to peers for management, monitor and control when their monitored contents or states meet predefined criteria.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    Not Applicable 
       STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH OR DEVELOPMENT 
       [0002]    Not Applicable 
       REFERENCE TO SEQUENCE LISTING, A TABLE, OR A COMPUTER PROGRAM LISTING COMPACT DISK APPENDIX 
       [0003]    Not Applicable 
       BACKGROUND OF THE INVENTION 
       [0004]    With the innovation and development of technology, more and more electronic devices have become part of people&#39;s daily lives. A person may have a number of communication devices such as smart phones, tablets, laptops, or personal computers. It is a challenging job for communication service providers, enterprise IT departments, and individual consumers to manage more and more devices. 
         [0005]    Configuration, diagnosis, resource maintenance, health check, and security are the main tasks of device management, monitor and control. An example of configuration on a device is to select the proper language setting based on a user&#39;s preference. The analysis of call drops on a mobile phone is an example of diagnosis. An example of resource maintenance on a device is to manage files and applications regularly. The statistical report of cpu, memory, disk and process usages on a device is an example of health check. An example of security on a device is to setup proper passwords based on certain security policy. 
         [0006]    Traditional device management, monitor and control systems are based on client-server model. A centralized server can manage, monitor and control a number of, such as hundreds, thousands or millions of, client devices. The client devices receive commands from the server and perform whatever actions the server asks for. 
         [0007]    There are a few drawbacks for traditional device management, monitor and control approach. First, device management, monitor and control systems are mainly designed for communication service providers and enterprises, not for individual consumers. Second, due to the complexity to handle different devices, most of implementations and deployments of device management, monitor and control systems are very complicated, expensive, and unaffordable to individual consumers. Third, the client-server model in device management, monitor and control is a one-way management, monitor and control approach from a server to a client. The client cannot manage, monitor and control the server. 
         [0008]    Therefore, there is a need to provide a cost-effective and flexible solution for individual consumers to manage, monitor and control their electronic assets. 
       BRIEF SUMMARY OF THE INVENTION 
       [0009]    The present invention provides a method, system and program product for communication devices connected by communication networks to manage, monitor and control each other. In other words, the difference between clients and servers disappears; communication devices can be in both managing and managed roles. Within the method, system and program product of the present invention, the designs of device management, monitor and control systems can be simplified, and there is no need to support scalability of up to hundreds, thousands or millions of devices, which reduces the cost to implement and deploy device management, monitor and control systems. 
         [0010]    One aspect of the present invention is that communication devices can send request messages comprising device management, monitor and control commands to peers and receive response messages comprising results and statuses to the request messages from peers. Another aspect of the present invention is that communication devices can send notification messages to peers for device management, monitor and control when their monitored contents or states meet predefined criteria. 
     
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING 
         [0011]      FIG. 1  illustrates a perspective architecture of a communication device, in accordance with one embodiment of the present invention. 
           [0012]      FIG. 2  illustrates a block diagram of two communication devices connected by a communication network, in accordance with one embodiment of the present invention. 
           [0013]      FIG. 3  illustrates a schematic block diagram of an exemplary request and response, in accordance with one embodiment of the present invention. 
           [0014]      FIG. 4  illustrates a schematic block diagram of an exemplary event and notification, in accordance with one embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0015]      FIG. 1  illustrates a perspective architecture of a communication device. In one embodiment, the communication device  100  comprises central processing units  101 , system memories  102 , disk storages  103 , input interfaces  104 , output interfaces  105 , network interfaces  106 , and system buses  107 . 
         [0016]    The central processing units  101  provide a means for executing executable programs and can be any types of microcontrollers, processors, microprocessors, or multiprocessors. The system memories  102  provide a means for storing executable programs such as a basic input/output system (BIOS), one or more operating systems, a plurality of firmware modules, and a plurality of software modules. The system memories  102  can be any combinations of random-access memory (RAM) and read-only memory (ROM). The disk storages  103  provide a means for storing programs, files and data, and can be any types of internal and external magnetic disks, optical disks, and the like. 
         [0017]    The input interfaces  104  provide a means for transferring data into the communication device  100  through input components and/or devices (not shown) such as keyboard, keypad, touch-pad, touch screen, thumb-wheel, trackball, mouse, stylus, joystick, microphone, camera, sensor, etc. The output interfaces  105  provide a means for transferring data from the communication device  100  to output components and/or devices (not shown) such as screen, display, television, speaker, etc. The network interfaces  106  provide a means for transferring data between the communication device  100  and other communication devices (not shown) through communication networks (not shown) such as circuit-switched telephone networks and packet-switched data networks. 
         [0018]    The system buses  107  provide a means for transferring data internally among the central processing units  101 , the system memories  102 , the disk storages  103 , the input interfaces  104 , the output interfaces  105 , the network interfaces  106 , and other components (not shown) of the communication device  100 . 
         [0019]    Reference is now to  FIG. 2 , which illustrates a block diagram of a communication device  201  and another communication device  202  connected by a communication network  203 . The communication network  203  provides a means for transporting messages between message senders and message receivers. The communication network  203  comprises one or more of satellite networks, wired networks, and wireless networks. Wired networks comprise one or more of internet, intranet, local area network (LAN) such as ethernet, wide area network (WAN) such as frame relay and asynchronous transfer mode (ATM), virtual private network (VPN), public switched telephone network (PSTN), and the like. Wireless networks comprise one or more of wireless personal area network (WPAN) such as bluetooth and near field communication (NFC), wireless local area network (WLAN) such as Wi-Fi, wireless wide area network (WWAN), wireless metropolitan area network (WMAN) such as worldwide interoperability for microwave access (WIMAX), long term evolution (LTE), cellular network such as global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), evolution-data optimized (EV-DO), enhanced data rates for GSM evolution (EDGE), digital enhanced cordless telecommunications (DECT), integrated digital enhanced network (IDEN), and the like. 
         [0020]    The communication device  201  and the communication device  202  share the same architecture as the one denoted in  FIG. 1 . They communicate with each other through their network interfaces via the communication network  203 . 
         [0021]    Reference is now to  FIG. 3 , which illustrates a schematic block diagram of an exemplary request and response. In one embodiment, the communication device  201  from  FIG. 2  is denoted herein as the first device, and the communication device  202  from  FIG. 2  is denoted herein as the second device. In the block  301 , keys for message encryption and message decryption between the first device and the second device are negotiated and agreed by both devices, based on credentials such as public keys, private keys, and/or account names, passwords from the first device and/or the second device. 
         [0022]    In the block  302 , a request message with commands to manage, monitor and control the second device is generated at the first device. The request message may contain commands to retrieve or modify configurations, retrieve voice or data contents, perform security actions, start or stop hardware components, install or uninstall firmware modules and software modules, and the like. The request message is encrypted with the keys at the first device in the block  303 , and then transported from the first device to the second device in the block  304  via the communication network  203 . 
         [0023]    The request message is received and stored in the block  305  and decrypted in the block  306  at the second device. In the block  307 , the commands in the request message are executed by their corresponding components or modules (not shown) at the second device. A response message with the result and status to the request message is generated in the block  308  and encrypted with the keys in the block  309  at the second device. In the block  310 , the response message is transported from the second device to the first device via the communication network  203 . 
         [0024]    The response message is received and stored in the block  311  and decrypted in the block  312  at the first device. In the block  313 , the response message with result and status to the request message is displayed at the first device. 
         [0025]    Reference is now to  FIG. 4 , which illustrates a schematic block diagram of an exemplary event and notification. In one embodiment, the communication device  201  from  FIG. 2  is denoted herein as the first device, and the communication device  202  from  FIG. 2  is denoted herein as the second device. 
         [0026]    In the block  401 , event criteria for notification are setup at the second device. The events can be the state changes of device, hardware components, firmware modules and software modules, such as being started, being stopped, being installed, being uninstalled, being enabled, being disabled, being activated, being deactivated, being turned on, being turned off, and the like. The events can also be the changes of network reachable identifiers, such as the changes of email addresses, mobile subscriber integrated services digital network (MSISDN) numbers, instant messenger ids, social network ids, session initiation protocol (SIP) addresses, and internet protocol (IP) addresses including internet protocol version 4 (IPv4) address and internet protocol version 6 (IPv6) address. In addition, the event criteria can be contents matching rules, such as email messages, text messages, instant messages, voice call contents, and hypertext transfer protocol (HTTP) data contents matching predefined keywords, voice caller ids matching predefined blacklists, hypertext transfer protocol web site addresses matching predefined categories, device being located in predefined geo-location ranges, and the like. When an event associated with the event criteria occurs at the second device in the block  402 , a notification message will be generated at the second device in the block  403 , and then sent from the second device to the first device in the block  404  via the communication network  203 . 
         [0027]    The notification message is received in the block  405 , stored in the block  406 , and then displayed in the block  407  at the first device. 
         [0028]    Likewise, the communication device  201  from  FIG. 2  can be acted as the second device in  FIG. 3  and  FIG. 4 , and the communication device  202  from  FIG. 2  can be acted as the first device in  FIG. 3  and  FIG. 4 . A request message can be generated at the communication device  202  and then sent from the communication device  202  to the communication device  201  via the communication network  203  in  FIG. 3 ; a response message can be generated at the communication device  201  and then sent from the communication device  201  to the communication device  202  via the communication network  203  in  FIG. 3 . In addition, a notification message can be generated at the communication device  201  and then sent from the communication device  201  to the communication device  202  via the communication network  203  in  FIG. 4 . 
         [0029]    While the present invention has been described with respect to a limited number of embodiments, those skilled in the art will appreciate numerous modifications and variations therefrom. It is intended that the appended claims cover all such modifications and variations as fall within the true spirit and scope of the present invention.