The present disclosure relates generally to policies implemented in response to physical situations.
A policy management system may have a database including a plurality of policies. Physical situations (e.g., supply of power, occurrence of a fire, etc.) may occur when more than one policy is active. Accordingly, one active policy may drain resources (e.g., consumption of limited electrical power) that would be more beneficially reserved for another policy.
Embodiments are illustrated by way of example, and not limitation, in the figures of the accompanying drawings, in which like references indicate similar elements and in which:
The description that follows includes illustrative systems, methods, techniques, instruction sequences, and computing machine program products that embody the present invention. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide an understanding of various embodiments of the inventive subject matter. It will be evident, however, to one skilled in the art that embodiments of the inventive subject matter may be practiced without these specific details. In general, well-known instruction instances, protocols, structures and techniques have not been shown in detail.
Overview
A method and apparatus to implement policies associated with physical situations are described. The method may comprise accessing sensor data, captured by a sensor monitoring the physical situation, to identify at least one activity occurring during the physical situation. A policy database including a plurality of policies may be accessed to identify at least two lower-level policies associated with the physical situation. Further, the policy database may be accessed to identify at least one higher-level policy associated with the physical situation. The higher-level policy may control implementation of the at least two lower-level policies.
Referring to the drawings,
Examples of networked devices include heating, ventilation and air conditioning (HVAC) systems, lighting systems, network enabled elevator systems, entry control points to parking areas, door locking systems, access control systems, or the like. The system 100 may also be used to implement policies for network devices such as routers, switches, servers, personal computers (PCs), telephones, and any other electronic devices connected to, or forming part of, a computer network. As used herein, the term ‘networked device’ is intended to include any electronic/electrical device forming part of, or connected to, a computer network.
The system 100 is shown, by way of example, to include a plurality of sensors 102, a plurality of networked devices 104 including voice over IP (VoIP) telephones 104.1, computers 104.2 (e.g., servers or PCs), routers 104.3, a computer network 106, and a policy implementation apparatus 108. In use, the policy implementation apparatus 108 is configured to implement one or more policies based on data received from the sensors 102. It is important to note that many different network devices may be connected to the computer network 106 and that the VoIP telephones 104.1, the computers 104.2, and the routers 104.3 are shown merely by way of example.
As the system 100 may be used to implement policies in emergency situations, it is also shown by way of example to include connectivity to a public switched telephone network (PSTN) 110 servicing telephones 112, a cellular network 114 servicing mobile phones 116, and a radio network 118 configured to communicate with one or more mobile communication devices (e.g., push-to-talk (PTT) radios 120).
As mentioned above, in an example embodiment, the system 100 may be deployed in a building and the sensors 102 may include video surveillance cameras 102.1 to monitor physical situations (e.g., the presence of persons within the building, a fire, or the like), fire detectors 102.2 to sensors to sense fire, and other sensors 102.3 to sense any other physical situations (e.g., real-time events or activities occurring during real-time events) that may have an associated policy to implement when the physical situation occurs.
As shown in
As shown at block 302, the method 300 may access sensor data captured by one or more sensors 102 that monitor a physical situation. In an example embodiment, the method 300 may identify at least one activity occurring during the real-time event. Examples of physical situations include emergency situations such as a fire in a building, a network failure, a power outage, or the like. When the physical situation is a power outage, a power sensor may monitor when there is low power availability from a backup battery system and, as described in more detail below, an associated policy may be executed (e.g., certain network devices may be switched off). As shown at block 304, the method 300 may then access a policy database including a plurality of policies to identify at least two lower-level policies associated with the physical situation. Examples of two lower-level policies include a policy relating to bandwidth allocation on a computer network and a policy relating to an emergency such as a fire. At block 306, the method 300 then accesses the policy database to identify at least one higher-level policy associated with the physical situation. Thereafter, as shown at block 308, implementation of the at least two lower-level policies may be based on the at least one higher-level policy. Returning to the example of the fire emergency and allocation of bandwidth in the computer network 106, the higher-level policy may, when a fire is detected, allocate more bandwidth to video surveillance cameras 102.1 that are located in an area where the fire is detected than to those video surveillance cameras in a different area within a building where no fire has been detected.
In accordance with an example embodiment, the policy module 204 includes a policy that gets automatically implemented upon detection of a power outage. Upon detection of this physical situation, the policy implementation apparatus 108 may cut power to areas that are deemed to have lower power priority. Examples of areas having the lower power priority include, but are not limited to, air-conditioning units, water pumps, network resources, etc. However, if a fire is sensed during a power outage, a fire sub-policy may be activated resulting in a different set of priorities such as resumption of power to network resources which transport video images of the fire. In yet another example embodiment one or more sensors may probe an active server back-up application to inquire about a length of time required to complete a backup. In response to the probe, the policy implementation apparatus 108 may activate a policy where power is still provided to a back-up system, or activate a policy in which the provision of power to the back-up system is terminated. In yet another example embodiment, a two level policy engine may control access rights of various personnel to network resources such as the sensors 102. In accordance with this example embodiment, users may gain or lose access to the network resources based on real-time conditions as reported by real-time sensor information. For example, emergency personnel or a public safety-first responder (PSFR) may not normally have access to video streams from a company's video surveillance cameras. However, upon detection of a fire, a routing policy may be activated that changes access rights of the PSFR has and facilitate streaming of video streams to a network port accessible externally by PSFR personnel.
An administrator using an administrative console may define higher- and lower-level policies. Accordingly, in an example embodiment, the policy implementation apparatus 108 includes the GUI module 212 to generate GUIs to receive input data from a user and to provide output data to the user.
Thereafter, at block 404, the method 400 may monitor a single user action by a pointing device (e.g., a computer mouse) that identifies that a user has selected the higher-level policy for implementation. As shown at block 406, the policy implementation apparatus 108 may automatically, without any further user interaction, implement the at least two lower-level policies (or any other associated policies) based on the at least one higher-level policy.
The GUI 900 includes a display area 902 to identify active higher-level policies. For example, a fire detection policy and a low power policy are shown as being active. The fire detection policy may include a plurality of sub-policies that are also active. For example, the fire detection higher-level policy is shown to include a disable elevators sub-policy, an allocate bandwidth to a surveillance camera in a zone where a fire is detected sub-policy, and other lower-level policies. Each lower-level policy may include a plurality of rules and instructions with associated entities and commands to effect or implement the policy. By way of further example, a low power higher-level policy is shown to include three lower-level policies. By way of example, the low power higher-level policy is shown to include a prioritize power to emergency telephones policy, a command elevators to ground floor and disable elevators policy, and a prioritize power to data storage devices policy. Each higher-level policy is shown to include a radio button so that an administrator may activate the higher-level policy with a single click or interaction. For example, an “Activate” button 904 is provided to activate the fire detected higher-level policy and an “Activate” button 906 is provided to select and activate a low power higher-level policy.
Example computing system 1000 includes processor 1002 (e.g., a central processing unit (CPU), a graphics processing unit (GPU) or both), main memory 1004 and static memory 1006, which communicate with each other via bus 1008. Computing system 1000 may further include a video display unit 1010 (e.g., a plasma display, a liquid crystal display (LCD) or a cathode ray tube (CRT)). Computing system 1000 also includes alphanumeric input device 1012 (e.g., a keyboard), user interface (UI) navigation device 1014 (e.g., a mouse), disk drive unit 1016, signal generation device 1018 (e.g., a speaker) and network interface device 1020.
Disk drive unit 1016 includes machine-readable medium 1022 on which is stored one or more sets of instructions and data structures (e.g., software 1024) embodying or utilized by any one or more of the methodologies or functions described herein. Software 1024 may also reside, completely or at least partially, within main memory 1004 and/or within the static memory 1006 and/or within processor 1002 during execution thereof by computing system 1000, with main memory 1004 and processor 1002 also constituting machine-readable tangible media. Software 1024 and/or sensor information from the sensors 102 (e.g., see
While machine-readable medium 1022 is shown in an example embodiment to be a single medium, the term “machine-readable medium” should be taken to include a single medium or multiple media (e.g., a centralized or distributed database, and/or associated caches) that store the one or more sets of instructions and/or policies, and/or information such as sensor information. The term “machine-readable medium” shall also be taken to include any medium that is capable of storing, encoding or carrying a set of instructions for execution by the machine and that cause the machine to perform any one or more of the methodologies of the present application, or that is capable of storing, encoding or carrying data structures utilized by or associated with such a set of instructions. The term “machine-readable medium” shall accordingly be taken to include, but not be limited to, and solid-state memories, optical and magnetic media.
While the invention(s) is (are) described with reference to various implementations and exploitations, it will be understood that these embodiments are illustrative and that the scope of the invention(s) is not limited to them. In general, techniques for embedding priorities in multimedia streams may be implemented with facilities consistent with any hardware system(s) defined herein. Many variations, modifications, additions, and improvements are possible.
Plural instances may be provided for components, operations or structures described herein as a single instance. Finally, boundaries between various components, operations, and data stores are somewhat arbitrary, and particular operations are illustrated in the context of specific illustrative configurations. Other allocations of functionality are envisioned and may fall within the scope of the invention(s). In general, structures and functionality presented as separate components in the exemplary configurations may be implemented as a combined structure or component. Similarly, structures and functionality presented as a single component may be implemented as separate components. These and other variations, modifications, additions, and improvements fall within the scope of the invention(s).