WO2010038100A1 - Condition-based management in multi-apparatus environments - Google Patents
Condition-based management in multi-apparatus environments Download PDFInfo
- Publication number
- WO2010038100A1 WO2010038100A1 PCT/IB2008/054070 IB2008054070W WO2010038100A1 WO 2010038100 A1 WO2010038100 A1 WO 2010038100A1 IB 2008054070 W IB2008054070 W IB 2008054070W WO 2010038100 A1 WO2010038100 A1 WO 2010038100A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- apparatuses
- resource
- condition
- condition information
- information
- 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.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/04—Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W48/00—Access restriction; Network selection; Access point selection
- H04W48/18—Selecting a network or a communication service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/005—Discovery of network devices, e.g. terminals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Definitions
- the present invention relates to accessing resources that reside on separate apparatuses, and more specifically, to systems that facilitate access to resources on other apparatuses in view of the condition of the apparatuses on which the resources reside.
- software programs may include executable instruction sets that are organized in a manner to cause a processing device to receive input (e.g., data) for a calculation or determination that may then result in an output.
- input e.g., data
- software technology has evolved to transform these individual instruction sets into modules that may in turn be integrated together to form the more complex programs we know today.
- Today's more-sophisticated software programs may receive various forms of input such as raw data, for example as stored in magnetic or optical storage, user input through various known types of user interfaces, measured or monitored information converted to electronic information from electronic and/or electromechanical sensors, etc.
- programs may be configured to produce data usable by other software applications.
- problems may arise when conveying information from one program to another. If an information exchange scenario is known before the programs are created, then a specific strategy may be devised to convert one program's output into another program's input. Traditionally this strategy has led to functional but extremely rigid software application configurations, requiring frequent and possibly substantial revisions due to changes in functionality, platform, architecture, etc.
- the inflexibility described above may further contribute to confusion and frustration caused by the complication involved in configuring software and/or apparatus interaction. For example, when exchanging information between applications residing on separate apparatuses, users must not only comprehend how to configure the applications so that they can interact, but also the underlying communications needed to link the apparatuses.
- Existing architectures require users to have independent knowledge of the resources on each apparatus, the communication abilities of each apparatus and how the application/apparatus should be configured in order to perform the desired transaction. Some or all of this knowledge is often outside of the skill level of an average user.
- Various example embodiments of the present invention may include a method, apparatus, computer program product and system configured to facilitate access from an apparatus to resources residing on one or more other apparatuses while at the same time managing the operation of the apparatuses in view of apparatus condition. For example, a requirement for a particular resource may be identified. In situations where more than one apparatus can provide the required resource, a determination of at least one apparatus that should provide the resource may be made based on apparatus condition.
- one or more apparatuses may be configured to interact via a common memory space.
- the common memory space may reside, for example, in the memory of at least one of the one or more apparatuses.
- the apparatuses may send information to, and receive information from, the common memory space using one or more transports including, for example, wired or wireless communication.
- a consumer on one of the apparatuses e.g., an application, a utility, an action initiated by a user
- a determination may then be made regarding which of the apparatuses that can provide the services should be utilized based on the condition of the apparatuses.
- Example implementations of the present invention may be configured to collect condition information from one or more of the apparatuses interacting using the common memory space.
- the condition information may pertain to various characteristics of each apparatus. For instance, condition information may comprise current energy and power characteristics of each possible source apparatus.
- the condition information may be accumulated and processed by a management element. The management element may then determine a condition for each possible source apparatus, which may then be utilized with rules and/or strategies for optimizing operation at the apparatus and/or system level.
- the above determination may result in the selection of at least one of the one or more apparatuses to provide the required resource.
- the consumer may then access the required resource utilizing the shared memory space.
- an preferred order may be established including all of the potential source apparatuses, wherein the next apparatus in the order having the highest preference may be selected to provide the required service.
- This implementation may facilitate moving from one source apparatus to another apparatus on the occurrence of a condition change or a failure event.
- FIG. 1 discloses the example levels of a wireless communication architecture in accordance with at least one embodiment of the present invention.
- FIG. 2 discloses an example link between two wireless communication devices in accordance with at least one embodiment of the present invention.
- FIG. 3 discloses an example of services being utilized to create service nodes on a billboard in accordance with at least one embodiment of the present invention.
- FIG. 4A discloses an example Network on Terminal Architecture in accordance with at least one embodiment of the present invention.
- FIG. 4B discloses an example transport table in accordance with at least one embodiment of the present invention.
- FIG. 5 discloses an example of communication to a billboard utilizing a connection map in accordance with at least one embodiment of the present invention.
- FIG. 6A-6E discloses an example of an application querying and selecting a service in accordance with at least one embodiment of the present invention.
- FIG. 6F discloses an example of the provision of services between devices using a billboard in accordance with at least one embodiment of the present invention.
- FIG. 7A discloses an example scenario wherein one or more apparatuses may interact in accordance with at least one embodiment of the present invention.
- FIG. 7B discloses an example of the one or more apparatuses of FIG 7 A interacting utilizing a common memory space in accordance with at least one embodiment of the present invention.
- FIG. 7C discloses an example query for a required resource in the common memory space in accordance with at least one embodiment of the present invention.
- FIG. 7D discloses an example, in accordance with at least one embodiment of the present invention, of how apparatus condition can impact the scenario of FIG. 7C.
- FIG. 8 A discloses an example implementation of the present invention, in accordance with at least one embodiment.
- FIG. 8B discloses examples of communicating and utilizing condition information in accordance with at least one embodiment of the present invention.
- FIG. 9 applies the example features disclosed in FIG. 8A to the scenario of
- FIG. 7A-7D in accordance with at least one embodiment of the present invention.
- FIG. 10 discloses a flowchart for an example management process in accordance with at least one embodiment of the present invention.
- Whiteboard 100 is also disclosed for contextual purposes.
- Whiteboard 100 may comprise the highest level of operation in this architecture.
- operational groups 102 may be formed including whiteboards 104 and various application nodes.
- Application nodes may correspond to application existing on a plurality of wireless communication devices, and may be utilized to exchange information between these applications, for example, by placing data into, and removing data from, whiteboard 104.
- the various nodes may consist of proactive nodes (PN) 106 that may be utilized to place information into whiteboard 104, reactive nodes (RN) 110 may be utilized to take information from whiteboard 104.
- Information semantics interpreter (ISI) 108 may be utilized to link different whiteboards together. Utilizing these constructs, Whiteboard 104 may provide a standardized means for application interaction that overcomes many incompatibilities.
- Billboard level 120 may facilitate interaction between services available on the one or more devices. For instance, Billboard level 120 may enable the sharing of service-related information (e.g., service identification information, functionality, etc.), as well as any information that may be necessary in order to access and/or utilize each service. Services 130 and clients 120 that may utilize these services may be organized in service domains 122. In at least one scenario, service domains 122 may correspond to a particular protocol, such as Universal Plug and Play (UPnP), BluetoothTM Service Discovery Protocol (BT SDP), Bonjour, etc. In each service domain 122, services 130 may be represented by service nodes (SN) 126, and likewise, application nodes (AN) 128 may be established to correspond to applications.
- service domains 122 may correspond to a particular protocol, such as Universal Plug and Play (UPnP), BluetoothTM Service Discovery Protocol (BT SDP), Bonjour, etc.
- UPF Universal Plug and Play
- BT SDP BluetoothTM Service Discovery Protocol
- Bonjour Bonjour
- service domains 122 may interact utilizing service ontology interpreters (SOI) 124.
- SOI 124 may allow service domains 122 to interact with other service domains 122 in the service level, even if the service domains 122 reside on different wirelessly-linked devices (e.g., to provide access information to other service domains 122).
- Connectivity map 140 may define available connectivity methods/possibilities and topology for different devices participating in sharing resources in order to support whiteboard 100 and billboard 120.
- devices 144 may be linked in directly connected groups 142.
- Examples of directly connected groups of devices (Dev) 142 may include devices connected via BluetoothTM piconet, a WLAN network, a wUSB link, etc.
- Each directly connected group of devices 142 may further be linked by gateways (GW).
- FIG. 1 discloses an overall communication architecture usable with various example embodiments of the present invention, for the sake of explanation in the present disclosure, a much more rudimentary scenario will be utilized to illustrate service node related functionality.
- FIG. 2 discloses device A 200 and device B 210. Examples of devices usable in instance may include various wireless communication devices ranging from very basic wireless devices like wirelessly-enabled sensors or cellular handsets to more complex wirelessly-enabled computing devices like laptop or palmtop computers, wireless communicators, personal digital assistants, or any similar devices with wired connectivity interfaces.
- the devices disclosed in FIG. 2 may be linked via wireless communication 220 (e.g., WLAN), for example, in order to form an ad-hoc network between the devices.
- wireless communication 220 e.g., WLAN
- Device B 210 may further include a variety of services and service search mechanism such as BluetoothTM-related BT SDP and UPnP.
- service search mechanism such as BluetoothTM-related BT SDP and UPnP.
- device A 200 would not be aware of these services over wireless link 220, and further, even if device A 200 was aware, most or all of these services would probably be inaccessible due to various incompatibility issues existing between services.
- wireless coupling 220 between Device A 200 and Device B 210 may only be beneficial for conveying information, since no access to remote services is available.
- a service may be defined as the functionality offered or derived from a particular software program. Services may pertain to all aspects of device functionality. Services may be provided, for example, by an operating system loaded on a wireless communication device, or may be added to the device by accessory applications related to communication, security, productivity, device resource management, entertainment, etc. In accordance with at least one embodiment of the present invention, one or more service nodes may be established to correspond to services available on the one or more devices.
- FIG. 3 discloses an example of billboard functionality in accordance with at least one embodiment of the present invention.
- Billboard 300 may comprise a shared memory space established amongst one or more wired or wireless devices.
- the scenario disclosed in FIG. 3 may further include a protocol such as UPnP 310 installed on a device (e.g., device A 200), and BluetoothTM SDP 320 installed, for example, on device B 210.
- Billboard 300 may interact with these protocols using one or more services installed on devices A 200 and B 210, such as example billboard services BB UPnP service 312 and BB SDP service 322.
- BB services 312 and 322 may typically be components of UPnP and BT architecture but they may be components of a NoTA architecture, an example configuration of which is described in detail below with respect to FIG. 4.
- UPnP 310 may offer various services locally on device A 200. These services may include UPnP media renderer service 316 and UPnP mass storage service 318. Similarly, BluetoothTM SDP 320 may provide BT OBEX service 316 and BT mass storage service 328 on device B 210. It is important to note that these specific services have been used only for the sake of example in the present disclosure, and are not intended to limit the scope of services usable with various embodiments of the present invention. While these example services would normally only be accessible to applications residing on the same service domain, the present invention, in accordance with at least one embodiment, may provide for the interaction of various services and/or applications, regardless of the domain on which a service resides.
- At least one embodiment of the present invention may operate by creating service information entries corresponding to services offered on each device in billboard table 300.
- BB UPnP node 314 and BB SDP node 324 may create service information entries UPnP media renderer service 316A and UPnP mass storage service 318 A, as well as BT OBEX service 316A and BT mass storage service 328A, respectively.
- These service information entries exist in a common billboard table 300, despite the protocols and services actually residing on separate devices.
- the service information entries may provide information about services to other services and/or applications, such as the name of the service, service properties, pairing & authentication information utilized in accessing a particular service and/or transport mediums usable with each service.
- This service information may be obtained, for example by utilizing BB SDP service 324 if billboard table 300 wants to be used from the BT domain, or BB UPnP 314 service if billboard table 300 is wants to be utilized from the UPnP domain. It may also be possible that some architectures, such as NoTA, support billboard service directly.
- NoTA services 302 may be utilized, in accordance with at least one embodiment of the present invention, to establish the initial communication between devices A 200 and B 210 via a wireless communication medium in order to establish a shared memory space that will be utilized as Billboard table 300.
- FIG. 4A discloses an example of an underlying logical architecture that may be utilized in implementing NoTA.
- NoTA may be configured as multiple subsystems (e.g., 400 and 420) coupled by interconnect 450.
- NoTA interconnect 450 may comprise two layers: High Interconnect (H IN) layer 452 and Low Interconnect (L_IN) layer 454 coupled by switch 456.
- Low interconnect layer 454 may include ISO/OSI layers Ll - L4 and may provide transport socket type interface upwards.
- High Interconnect layer 452 may act as the middleware between L_IN 454 and the higher level Application nodes (AN) 402 and Service nodes (SN) 422 residing in subsystems like 400 and 420.
- AN Application nodes
- SN Service nodes
- NoTA is an architecture that may be used to provide intra-device service access, making it possible to build independent subsystems providing both services and applications. In an example implementation there may be several individual NoTA devices involved in direct inter sub- system communication.
- FIG. 4B discloses another underlying construct that may be implemented in various embodiments of the present invention.
- Connectivity map 480 may be utilized to map the various services offered on the one or more devices participating in billboard table 300 to various transport mediums that may be utilized with each service.
- transport mediums may comprise wireless communication mediums such as Bluetooth , WLAN, Wibree , wUSB, etc.
- the present invention in accordance with at least one embodiment, may also be that radio technologies can be used with several protocols (e.g., Bluetooth protocols may be implemented over WLAN).
- the present invention is not specifically limited to using these particular wireless communication mediums, and may be implemented with other wireless communication mediums that are usable by services offered by various devices.
- Services offered by the devices may be listed under services 482, and the corresponding available transport mediums are listed under transports 484.
- Arrows between services 482 and transport mediums 484 indicate the one or more transport mediums usable by each service.
- the information in connectivity map 480 may, in accordance with various embodiments of the present invention, create a binding between billboard table content (e.g., service offerings) and connectivity map table content (e.g., available device connectivity configurations) so that this information may be utilized, for example, by applications in determining an appropriate transport medium to utilize with a particular service. Where two or more transport mediums are available, a particular transport medium may be selected based on various characteristics such as speed, traffic, priority of executing the service, other active wireless communication mediums, etc.
- FIG. 5 an example depicting a wireless transaction between device A 200 and device B 210 is disclosed in accordance with at least one embodiment of the present invention.
- BB service search 500 on device A 200 may require the use of a particular service.
- billboard table 300 may reside on device B 210. Regardless of the actual location of the service required by BB service search 500, a query may be made of billboard table 300 to gain access to a corresponding service node. This is because all available service information on the one or more devices participating in billboard table 300 is centrally located, reducing the steps required to access each service, and therefore, increasing the speed of access for available services.
- various embodiments of the present invention may include more than one billboard table 300 established between the linked devices. These billboard tables 300 may interact with each other to create a shared information pool that services may access.
- BB service search 500 may, for example, using NoTA service 502 residing on device A 200 in order to access billboard table 300.
- connectivity map 504 may map to at least BluetoothTM 506 as a transport medium usable by NoTA service 502.
- Other wireless communication mediums may also be usable as transport mediums, however in this example BluetoothTM 506 is selected (e.g., by a user, by BB service search 500, by an application calling BB service search 500, etc.)
- a BluetoothTM wireless link 508 may then be utilized to communicate between device A 200 and device B 210.
- the wireless inquiry sent by device A 200 may then be received by device
- BluetoothTM resources 520 in device B may correspond to (e.g., may be usable by) NoTA service 524 as determined by a mapping in connectivity map 522.
- NoTA service 524 may provide access to search billboard table 300, which may contain various service information entries 528 corresponding to various services available in the linked wireless communication devices. Again, while two devices are shown in the example of FIG. 5, more than two devices may participate in billboard table 300, including service nodes 528 corresponding to services that are offered by each device.
- BB service search 500 may then perform an inquiry of the service information entries 528 available in billboard table 300 in order to determine if any of the services corresponding to service information entries 528 will be suitable for the parameters specified in the search. An example inquiry of billboard table 300 is now described with respect to FIG. 6A-6E.
- FIG. 6A-6E disclose an example usage scenario in accordance with at least one embodiment of the present invention.
- FIG. 6 A an example situation is shown wherein application 600 running on one of the devices participating in billboard table 300 may have a requirement for storage as indicated at 602. As a result, access to a service providing storage activities may be desired in order to support application 600. This inquiry may be performed, at least in part, by a billboard query 604.
- Storage inquiry 602 may be referred billboard query 604, which queries all of the service nodes in billboard table 300 in order to determine the services that may potentially fulfill the needs of Application 600.
- the potentially applicable service information entries are UPnP mass storage 318A and BT mass storage 328 A.
- Billboard query 604 may further obtain information related to the services from their respective nodes. For example, property information may be supplied by service information entries 318A and 328A to application 600 through billboard query 604. Information regarding transport mediums usable by each service may also be obtained through the use of connectivity map 480.
- All of the aforementioned information may be used in determining which service to select for supporting application 600. For example, the properties of a particular service may be more useful for, or accessible to, application 600. A particular service may also be selected because a usable transport medium is better able to support the activity to be performed because other transport mediums already have too much traffic, are experiencing interference, conflict with other transport mediums, etc.
- BT mass storage service information entry 328A has been selected to support application 600. This selection may be made automatically by control elements in the one or more devices supporting billboard table 300, by application 600, by user selection of a preferred service and/or transport medium, etc.
- Billboard query 604 may then obtain all of the information necessary to access BT Mass storage service 328 from BT mass storage service information entry 328A.
- This information may include, for example, property information and transport medium information that may be further conveyed to application 600 in order to facilitate a direct link between application 600 with BT Mass storage service 328.
- An example direct linkage is shown in FIG. 6D, and a communication transaction resulting between application 600 and BT Mass storage service 328 is further shown in FIG. 6E.
- devices 610 and 620 may be wirelessly coupled to device 630.
- a UPnP protocol in device 610 may couple to device 630 via WLAN, as shown at 612, in order to create a UPnP mass storage service node in billboard table 300.
- a BT mass storage service in device 620 may utilize the BT SDP protocol to create a service node in billboard table 300 via BluetoothTM communication 622. After these devices have established billboard table 630, device 640 may enter.
- Device 640 includes an application that requires a storage service.
- Device 640 includes an application that requires a storage service.
- 640 may then access billboard table 300 on device 630 as shown at 642. This connection may be made, for example, utilizing a NoTA service communicating over WLAN. Device 640 may access billboard table 300 in order to query the available services. If more than one applicable service is located, a selection may be made as to the service most appropriate for the application. In this example it is determined that the BT mass storage service will be most appropriate to assist the application in device 640. Device 640 may then obtain information from the BT mass storage node, such as property and transport medium information, that will be needed in order to access the BT mass storage service. Device 640 may then access the BT mass storage service on device 620 in order to establish a direct connection between the application and the service a shown at 644. V. Example source selection scenario when a plurality of sources are available.
- a decision to utilize one apparatus over another apparatus may depend on various factors.
- An example indicator that may be used to determine a preferred source apparatus is energy.
- apparatuses that can provide required resources may currently be operating using a local power source (e.g., a battery) instead of external power (e.g., a wall outlet), may only operate with battery due to apparatus complexity, location, size, etc. limitations, may be operating utilizing a depleted energy source, may be quickly depleting stored energy due to substantial processing and/or communication tasks, etc.
- Indicators, such as those listed above may be processed in order to determine apparatus condition, which may in turn be evaluated in view of device-level and/or system-level management objectives. In this way, sources for required resources may be selected based on the management objective.
- the above source apparatus selection process example does not take into account changes in the condition of source apparatuses as the desired resource is being accessed (e.g., energy depletion), or the source and consuming apparatuses losing their communication connection due to environmental interference, moving outside of communication range, one of the apparatuses crashing, etc. Such foreseeable conditions or events would unavoidably require repeating the entire process for each occurrence of a failure mode.
- FIG. 7A-7D disclose an example wherein apparatuses 700, 720, 740 and
- FIG. 7 A is not intended to limit any embodiment of the present invention to a particular number of apparatuses, type of apparatus interaction or method of apparatus communication. Moreover, implementations of the present invention may be applied in many scenarios where a plurality of apparatuses may be interoperating.
- FIG. 7A an example apparatus interaction scenario is set forth. While apparatuses 700, 720, 740 and 760 have been depicted as utilizing wireless communication, embodiments of the present invention may be implemented using wired and/or wireless transports. The apparatuses shown in FIG 7A may experience the desire or need to interact. For example activity on one device may require access to resources on another device. In accordance with at least one embodiment of the present invention, apparatus interaction in NoTA may be facilitated utilizing common memory space 780.
- apparatus 700 may make resource 1 702 available to other apparatuses in the common memory space 780.
- apparatus 700 may provide resource information entry 704 to common memory space 780.
- resource information entry 704 may reside on the portion of common memory space 780 that resides upon apparatus 700 (e.g., section 780A).
- this is just one instance of operation, and the present invention is not limited to this arrangement.
- apparatus 740 may offer resources 742 and 746 which may be represented in common memory space 780 (e.g., section 780C) by resource information entries 744 and 748, respectively.
- apparatus 760 in this example may offer one or more of the same services as apparatuses 742 and 746.
- apparatus 760 may provide second occurrences of resources 1 and 3 as shown at 762 and 766.
- secondary resource information entries 764 and 768 may be placed in section 780D of common memory space 780 in order to identify the availability of these resources to other apparatuses.
- FIG. 7B further shows apparatus 720 in correspondence with section 780B (e.g., that may reside in the memory of apparatus 720), wherein apparatus 720 further includes consumer 722.
- Consumer 722 may correspond to any software and/or hardware element on apparatus 720 that may have a requirement for a resource on the same or another apparatus. Examples of consumer 722 may include, but are not limited to, an application executing on apparatus 720, a user interaction with a user interface on apparatus 720, utilities that automatically obtain update information for apparatus 720, etc.
- apparatus 720 has been represented as having no available services in this situation, this representation is merely to maintain the clarity of the disclosure. It is foreseeable that apparatuses can offer resources while maintaining consumers that receive resource information from the same or other apparatuses.
- FIG. 7C discloses an example process by which resources required for consumer 722 may be located (in this instance "resource 1"). Notification of this requirement may be explicitly expressed by consumer 722 (e.g., an application may identify by name and/or location a certain database is to be accessed). Consumer 722 may also provide information about the requirement to control elements in apparatus 720, and the control elements may then identify one or more suitable resources that can fulfill the requirement (e.g., a user activates an Internet Browser, and based on this event, control elements in apparatus 720 may determine the possible Internet access provider resources).
- suitable resources e.g., a user activates an Internet Browser, and based on this event, control elements in apparatus 720 may determine the possible Internet access provider resources).
- the resource identification may be used in query 724 to locate resources that can fulfill the requirement. For example, query 720 may compare a resource identification to resource information entries in common memory space 780. In this instance, a comparison of resource information entries 702 and 762 to the resource identification (e.g., specifying resource 1) would result in matches, and therefore, the two occurrences of resource 1 (e.g., 702 and 762), and possibly corresponding apparatuses 700 and 760, respectively, may be identified as potential providers of the resource required by consumer 722.
- the system may also be such that consumer's device 720 is configured to search for certain services e.g. based on the actively running applications, so it is not necessarily the consumer that is provided the information of the available services, but the consumer device 720 that can utilize the information based on e.g. needs of the active applications or e.g. some pre-configuration of preferred services provided by the consumer.
- consumer's device 720 is configured to search for certain services e.g. based on the actively running applications, so it is not necessarily the consumer that is provided the information of the available services, but the consumer device 720 that can utilize the information based on e.g. needs of the active applications or e.g. some pre-configuration of preferred services provided by the consumer.
- FIG. 7D discloses the case where condition information is made available pertaining to at least apparatuses 700 and 760.
- a current energy level is shown for apparatuses 700 and 760 at 700E and 760E, respectively.
- the energy level condition indicators represent an energy range from full, "F,” to empty "E.”
- the energy level condition 700E shows that the energy for apparatus 700 is nearly depleted.
- energy level condition 760E shows that the energy level of apparatus 760E is nearly full. Therefore, in an effort to conserve energy in apparatus 700, it may be more desirable to obtain resource 1 from apparatus 760. This determination may, of course, be governed by the management strategy being employed.
- a device level conservation strategy may, in some situations, yield a different result than a conservation strategy operating at a system level.
- a condition based management strategy may be coupled with other rules and or conditions that govern resource provider selection. For instance, in a situation where a resource is available from only one apparatus, a condition-based determination may be adjusted to ensure that the operation of the single-source apparatus is preserved.
- energy level is but one example of information that may characterize the condition of an apparatus.
- Apparatus power configuration may also be considered condition information. For example, if a device is attached to an external power source (e.g., a wall outlet), then over-utilization of the apparatus may not be a concern as opposed to devices that only run on battery power.
- Condition may also be evaluated relatively between devices. For instance, as more and more apparatuses become "smart" (e.g., contain some sort of electronic intelligence and possibly the ability to communicate), it is foreseeable that the operational limitations may contribute to apparatus condition information.
- condition information may include resource utilization levels on a per-apparatus basis, apparatus communication activity and/or quality levels, apparatus processor loading and/or backlog, etc. More specifically, these example measures of condition may be utilized to discern, for example, whether resources that are currently available are, in actuality, the best solution for providing access to the consumer.
- FIG. 8A discloses an example implementation in accordance with at least one embodiment of the present invention.
- Control element 800 may exist within common memory space 780 executing, for example, on a single apparatus (e.g., in one of sections 780A, 780B, 780C or 780D) or amongst multiple apparatuses.
- Control element 800 may comprise a combination of software and/or hardware that together implement context monitor 802 and energy and power manager (EPM) 804.
- EPM energy and power manager
- condition information pertaining to one or more apparatuses interacting via common memory space 780 may be accumulated by context monitor 802. The condition information may then be provided to EPM 804 which determines, based on the received condition information and possibly other characteristic information provided by further control elements within common memory space 780, which apparatus should preferably provide the resource to consumer 722.
- Condition information may be provided to content monitor 802 based on a variety of practices.
- content monitor 802 may periodically receive, via polling or another means of data collection, condition information from the other apparatuses.
- events occurring in the apparatuses may trigger the transmission of condition information to context manager 802.
- a power threshold level may be set in an apparatus, and when the power level falls below the power threshold the transmission of condition information may be triggered in the device.
- Other events such as starting an application, a user configuration, etc. may also be utilized to trigger condition reporting.
- condition information may be accumulated from all of the apparatuses that are interacting in common memory space 780.
- condition information may only be obtained from these devices. This may conserve resources for the apparatus (or apparatuses) on which context monitor 802 is executing since condition information will have to be accumulated from fewer apparatuses.
- FIG. 8B discloses an example embodiment of the present invention wherein condition information may be transmitted from apparatuses interacting via common memory space as a communication parameter.
- Communication 810 may occur as a part of ordinary apparatus interaction with shared memory space 800.
- communication 810 may comprise at least service information 812 and condition information 814.
- At least service information may be utilized to establish resource information entry 704.
- Some or all of condition information 814 may be incorporated within resource information entry 704, which may then provide condition information 814 to context monitor 802.
- Condition information 814 may also be received directly into context monitor 802, for example, as a parameter of communication 810.
- Condition information 814 may be accumulated in context monitor 814.
- context monitor 802 may include entries (e.g., records) for some or all of the apparatuses interacting via common memory space 800.
- records 820 and 822 correspond to apparatuses 700 and 740, respectively.
- Each record may contain one or more parameters corresponding to the source apparatus.
- record 820 may includes information identifying the source of the information (e.g., apparatus 700), condition information for the apparatus (e.g., characteristic information like energy level 700E), temporal information corresponding to the last time the information was updated, etc.
- Record 822 may comprise similar content that pertains to apparatus 740, which may be followed by further similar record corresponding to some or all of the apparatuses interacting via common memory space 800.
- the composition of condition information 814 may depend on how the particular embodiment of the present invention has been implemented. For example, since management strategy 824 utilizes condition information 814 in determining which apparatus should provide a required resource, the information accumulated by context monitor 802 may be directly related to the information that is needed in order to implement management strategy 824. [0063] FIG.
- control element 800 includes at least all of the elements previously discussed with respect to FIG. 8 A.
- the results of query 724 e.g., identification of apparatuses on which the resource resides
- selection information from EPM 800 may be utilized in conjunction with selection information from EPM 800 in order to determine the one or more apparatuses that should provide the required resource (e.g., resource 1) to consumer 722.
- More than one resource provider may be utilized in situations where consumer 722 requires a substantial amount of data, high speed transmission, etc.
- An alternative mode of operation may include the results of query 724 being reported to EPM 800, and EPM 800 then selecting the one or more most appropriate apparatuses.
- the output of query 724 and/or EPM 800 may simply indicate the one or more apparatuses that should provide the resource to consumer 722.
- a preferred order of use may be established including some or all of the apparatuses on which the required resource resides, and the apparatuses may then be selected according to the preferred order.
- At least one benefit of this second solution is that it may allow for another apparatus to be quickly selected if the currently selected apparatus fails, for example, due to a change in apparatus condition, a failure event, etc.
- FIG. 10 discloses a flowchart of an example process in accordance with at least one embodiment of the present invention.
- the identification of a required resource may occur in step 1000.
- the identification of a required resource may be the result of some activity that occurs in one of one or more apparatuses interacting via a common memory space.
- a determination may then be made in step 1002 as to whether more than one apparatus may provide the required resource. If there is only one occurrence of the resource (or all other occurrences of the resource are unavailable) then in step 1004 the requirement may be fulfilled by the only available source and the process may resume in step 1000 in preparation for the identification of further resources that may be required.
- step a If the resource may be provided by more than one apparatus, then in step
- a further determination may be made as to whether management based on condition information is supported in at least the devices on which the required resource resides. If condition-based management is not supported, then in step 1008 a determination as to which apparatus/resource to utilize in fulfilling the requirement may be based on other circumstances. For example, the availability of other resources residing on the same apparatus but not available from other devices may suggest the use of another apparatus. The process may then reinitiate at step 1000 in preparation for the identification of further required resources.
- a control entity may accumulate condition information from one or more apparatuses interacting via the common memory space. For example, condition information may be accumulated for all of the apparatuses interacting in the common memory space, or alternatively, just from the apparatuses on which the required resource resides. The determination of a condition corresponding to each of the apparatuses from which condition information was accumulated may further occur in step 1010. A determination may then be made as to whether there the condition of one or more of the potential sources should control the one or more apparatuses that are selected to provide the required resource in step 1012. If there is scenario based on the apparatus conditions that indicates one or more preferred source apparatuses, then the process may return to step 1008 to make an alternative determination.
- the selection may be based, at least in part, on the condition information. As previously set forth, the selection may include an indication of one or more apparatuses from which the resource will be provided, or alternatively, the creation of a preferred order of apparatus usage. The process may then return to step 1000 to await the identification of further required resources.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
The improved kitchen oven comprises an internal compartment for cooking the food, a front portion provided with at least a door for closing the compartment, control means suitable for controlling the cooking of the food internally of the compartment, emission means for emitting a light flow arranged at the front portion and automatic regulation means for automatically- regulating the intensity and/or the colour of the light flow operatively associated to the control means.
Description
CONDITION-BASED MANAGEMENT IN MULTI-APPARATUS
ENVIRONMENTS
BACKGROUND
L Field of Invention:
[0001] The present invention relates to accessing resources that reside on separate apparatuses, and more specifically, to systems that facilitate access to resources on other apparatuses in view of the condition of the apparatuses on which the resources reside.
2. Background:
[0002] In general, software programs may include executable instruction sets that are organized in a manner to cause a processing device to receive input (e.g., data) for a calculation or determination that may then result in an output. Over the years, software technology has evolved to transform these individual instruction sets into modules that may in turn be integrated together to form the more complex programs we know today. Today's more-sophisticated software programs may receive various forms of input such as raw data, for example as stored in magnetic or optical storage, user input through various known types of user interfaces, measured or monitored information converted to electronic information from electronic and/or electromechanical sensors, etc.
[0003] In some instances, programs may be configured to produce data usable by other software applications. However, problems may arise when conveying information from one program to another. If an information exchange scenario is known before the programs are created, then a specific strategy may be devised to convert one program's output into another program's input. Traditionally this strategy has led to functional but extremely rigid software application configurations, requiring frequent and possibly substantial revisions due to changes in functionality, platform, architecture, etc.
[0004] The inflexibility described above may further contribute to confusion and frustration caused by the complication involved in configuring software and/or apparatus interaction. For example, when exchanging information between applications residing on separate apparatuses, users must not only comprehend how to configure the applications so that they can interact, but also the underlying communications needed to link the apparatuses. Existing architectures require users to have independent knowledge of the
resources on each apparatus, the communication abilities of each apparatus and how the application/apparatus should be configured in order to perform the desired transaction. Some or all of this knowledge is often outside of the skill level of an average user.
SUMMARY
[0005] Various example embodiments of the present invention may include a method, apparatus, computer program product and system configured to facilitate access from an apparatus to resources residing on one or more other apparatuses while at the same time managing the operation of the apparatuses in view of apparatus condition. For example, a requirement for a particular resource may be identified. In situations where more than one apparatus can provide the required resource, a determination of at least one apparatus that should provide the resource may be made based on apparatus condition.
[0006] It an example scenario, one or more apparatuses may be configured to interact via a common memory space. The common memory space may reside, for example, in the memory of at least one of the one or more apparatuses. The apparatuses may send information to, and receive information from, the common memory space using one or more transports including, for example, wired or wireless communication. A consumer on one of the apparatuses (e.g., an application, a utility, an action initiated by a user) may create a requirement for accessing resources residing on the other apparatuses. A determination may then be made regarding which of the apparatuses that can provide the services should be utilized based on the condition of the apparatuses.
[0007] Example implementations of the present invention may be configured to collect condition information from one or more of the apparatuses interacting using the common memory space. The condition information may pertain to various characteristics of each apparatus. For instance, condition information may comprise current energy and power characteristics of each possible source apparatus. The condition information may be accumulated and processed by a management element. The management element may then determine a condition for each possible source apparatus, which may then be utilized with rules and/or strategies for optimizing operation at the apparatus and/or system level.
[0008] The above determination may result in the selection of at least one of the one or more apparatuses to provide the required resource. The consumer may then access
the required resource utilizing the shared memory space. In an alternative configuration, an preferred order may be established including all of the potential source apparatuses, wherein the next apparatus in the order having the highest preference may be selected to provide the required service. This implementation may facilitate moving from one source apparatus to another apparatus on the occurrence of a condition change or a failure event.
[0009] The foregoing summary includes example embodiments of the present invention that are not intended to be limiting. The above embodiments are used merely to explain selected aspects or steps that may be utilized in implementations of the present invention. However, it is readily apparent that one or more aspects, or steps, pertaining to an example embodiment can be combined with one or more aspects, or steps, of other embodiments to create new embodiments still within the scope of the present invention. Therefore, persons of ordinary skill in the art would appreciate that various embodiments of the present invention may incorporate aspects from other embodiments, or may be implemented in combination with other embodiments.
DESCRIPTION OF DRAWINGS
[0010] The invention will be further understood from the following description of various example embodiments, taken in conjunction with appended drawings, in which:
[0011] FIG. 1 discloses the example levels of a wireless communication architecture in accordance with at least one embodiment of the present invention.
[0012] FIG. 2 discloses an example link between two wireless communication devices in accordance with at least one embodiment of the present invention.
[0013] FIG. 3 discloses an example of services being utilized to create service nodes on a billboard in accordance with at least one embodiment of the present invention.
[0014] FIG. 4A discloses an example Network on Terminal Architecture in accordance with at least one embodiment of the present invention.
[0015] FIG. 4B discloses an example transport table in accordance with at least one embodiment of the present invention.
[0016] FIG. 5 discloses an example of communication to a billboard utilizing a connection map in accordance with at least one embodiment of the present invention.
[0017] FIG. 6A-6E discloses an example of an application querying and selecting a service in accordance with at least one embodiment of the present invention.
[0018] FIG. 6F discloses an example of the provision of services between devices using a billboard in accordance with at least one embodiment of the present invention.
[0019] FIG. 7A discloses an example scenario wherein one or more apparatuses may interact in accordance with at least one embodiment of the present invention.
[0020] FIG. 7B discloses an example of the one or more apparatuses of FIG 7 A interacting utilizing a common memory space in accordance with at least one embodiment of the present invention.
[0021] FIG. 7C discloses an example query for a required resource in the common memory space in accordance with at least one embodiment of the present invention.
[0022] FIG. 7D discloses an example, in accordance with at least one embodiment of the present invention, of how apparatus condition can impact the scenario of FIG. 7C.
[0023] FIG. 8 A discloses an example implementation of the present invention, in accordance with at least one embodiment.
[0024] FIG. 8B discloses examples of communicating and utilizing condition information in accordance with at least one embodiment of the present invention.
[0025] FIG. 9 applies the example features disclosed in FIG. 8A to the scenario of
FIG. 7A-7D in accordance with at least one embodiment of the present invention.
[0026] FIG. 10 discloses a flowchart for an example management process in accordance with at least one embodiment of the present invention.
DESCRIPTION OF EXAMPLE EMBODIMENTS
[0027] While the invention has been described below in terms of a multitude of example embodiments, various changes can be made therein without departing from the spirit and scope of the invention, as described in the appended claims.
I. System Architecture
[0028] An example wireless communication architecture in accordance with at least one embodiment of the present invention is disclosed in FIG. 1. While the present
invention focuses mainly on Billboard 120 and Connectivity Map 140, Whiteboard 100 is also disclosed for contextual purposes. Whiteboard 100 may comprise the highest level of operation in this architecture. At this level, operational groups 102 may be formed including whiteboards 104 and various application nodes. Application nodes may correspond to application existing on a plurality of wireless communication devices, and may be utilized to exchange information between these applications, for example, by placing data into, and removing data from, whiteboard 104. For example, the various nodes may consist of proactive nodes (PN) 106 that may be utilized to place information into whiteboard 104, reactive nodes (RN) 110 may be utilized to take information from whiteboard 104. Information semantics interpreter (ISI) 108 may be utilized to link different whiteboards together. Utilizing these constructs, Whiteboard 104 may provide a standardized means for application interaction that overcomes many incompatibilities.
[0029] Billboard level 120 may facilitate interaction between services available on the one or more devices. For instance, Billboard level 120 may enable the sharing of service-related information (e.g., service identification information, functionality, etc.), as well as any information that may be necessary in order to access and/or utilize each service. Services 130 and clients 120 that may utilize these services may be organized in service domains 122. In at least one scenario, service domains 122 may correspond to a particular protocol, such as Universal Plug and Play (UPnP), Bluetooth™ Service Discovery Protocol (BT SDP), Bonjour, etc. In each service domain 122, services 130 may be represented by service nodes (SN) 126, and likewise, application nodes (AN) 128 may be established to correspond to applications. Further, service domains 122 may interact utilizing service ontology interpreters (SOI) 124. SOI 124 may allow service domains 122 to interact with other service domains 122 in the service level, even if the service domains 122 reside on different wirelessly-linked devices (e.g., to provide access information to other service domains 122).
[0030] Connectivity map 140 may define available connectivity methods/possibilities and topology for different devices participating in sharing resources in order to support whiteboard 100 and billboard 120. In at least one embodiment of the present invention, devices 144 may be linked in directly connected groups 142. Examples of directly connected groups of devices (Dev) 142 may include devices
connected via Bluetooth™ piconet, a WLAN network, a wUSB link, etc. Each directly connected group of devices 142 may further be linked by gateways (GW).
[0031] While FIG. 1 discloses an overall communication architecture usable with various example embodiments of the present invention, for the sake of explanation in the present disclosure, a much more rudimentary scenario will be utilized to illustrate service node related functionality. FIG. 2 discloses device A 200 and device B 210. Examples of devices usable in instance may include various wireless communication devices ranging from very basic wireless devices like wirelessly-enabled sensors or cellular handsets to more complex wirelessly-enabled computing devices like laptop or palmtop computers, wireless communicators, personal digital assistants, or any similar devices with wired connectivity interfaces. The devices disclosed in FIG. 2 may be linked via wireless communication 220 (e.g., WLAN), for example, in order to form an ad-hoc network between the devices. Device B 210 may further include a variety of services and service search mechanism such as Bluetooth™-related BT SDP and UPnP. Under existing architecture schemes, device A 200 would not be aware of these services over wireless link 220, and further, even if device A 200 was aware, most or all of these services would probably be inaccessible due to various incompatibility issues existing between services. As a result, wireless coupling 220 between Device A 200 and Device B 210 may only be beneficial for conveying information, since no access to remote services is available.
II. Service node implementation
[0032] A service may be defined as the functionality offered or derived from a particular software program. Services may pertain to all aspects of device functionality. Services may be provided, for example, by an operating system loaded on a wireless communication device, or may be added to the device by accessory applications related to communication, security, productivity, device resource management, entertainment, etc. In accordance with at least one embodiment of the present invention, one or more service nodes may be established to correspond to services available on the one or more devices.
[0033] FIG. 3 discloses an example of billboard functionality in accordance with at least one embodiment of the present invention. Billboard 300 may comprise a shared memory space established amongst one or more wired or wireless devices. The scenario disclosed in FIG. 3 may further include a protocol such as UPnP 310 installed on a device (e.g., device A 200), and Bluetooth™ SDP 320 installed, for example, on device B 210.
Billboard 300 may interact with these protocols using one or more services installed on devices A 200 and B 210, such as example billboard services BB UPnP service 312 and BB SDP service 322. BB services 312 and 322 may typically be components of UPnP and BT architecture but they may be components of a NoTA architecture, an example configuration of which is described in detail below with respect to FIG. 4.
[0034] UPnP 310 may offer various services locally on device A 200. These services may include UPnP media renderer service 316 and UPnP mass storage service 318. Similarly, Bluetooth™ SDP 320 may provide BT OBEX service 316 and BT mass storage service 328 on device B 210. It is important to note that these specific services have been used only for the sake of example in the present disclosure, and are not intended to limit the scope of services usable with various embodiments of the present invention. While these example services would normally only be accessible to applications residing on the same service domain, the present invention, in accordance with at least one embodiment, may provide for the interaction of various services and/or applications, regardless of the domain on which a service resides.
[0035] At least one embodiment of the present invention may operate by creating service information entries corresponding to services offered on each device in billboard table 300. In the scenario disclosed in FIG. 3, BB UPnP node 314 and BB SDP node 324 may create service information entries UPnP media renderer service 316A and UPnP mass storage service 318 A, as well as BT OBEX service 316A and BT mass storage service 328A, respectively. These service information entries exist in a common billboard table 300, despite the protocols and services actually residing on separate devices. Further, the service information entries may provide information about services to other services and/or applications, such as the name of the service, service properties, pairing & authentication information utilized in accessing a particular service and/or transport mediums usable with each service. This service information may be obtained, for example by utilizing BB SDP service 324 if billboard table 300 wants to be used from the BT domain, or BB UPnP 314 service if billboard table 300 is wants to be utilized from the UPnP domain. It may also be possible that some architectures, such as NoTA, support billboard service directly. NoTA services 302 may be utilized, in accordance with at least one embodiment of the present invention, to establish the initial
communication between devices A 200 and B 210 via a wireless communication medium in order to establish a shared memory space that will be utilized as Billboard table 300.
III. Underlying architecture
[0036] FIG. 4A discloses an example of an underlying logical architecture that may be utilized in implementing NoTA. NoTA may be configured as multiple subsystems (e.g., 400 and 420) coupled by interconnect 450. NoTA interconnect 450 may comprise two layers: High Interconnect (H IN) layer 452 and Low Interconnect (L_IN) layer 454 coupled by switch 456. Low interconnect layer 454 may include ISO/OSI layers Ll - L4 and may provide transport socket type interface upwards. High Interconnect layer 452 may act as the middleware between L_IN 454 and the higher level Application nodes (AN) 402 and Service nodes (SN) 422 residing in subsystems like 400 and 420. Key H_IN 452 functionality is to provide client nodes (AN 402 or SN 422) on top a direct access to services (without having to disclose the location of the latter). Communication may be connection-oriented, meaning that before any service or data communication takes place, connection setup procedures need to be carried out. Security features have been added to countermeasure the identified threats. NoTA is an architecture that may be used to provide intra-device service access, making it possible to build independent subsystems providing both services and applications. In an example implementation there may be several individual NoTA devices involved in direct inter sub- system communication.
[0037] FIG. 4B discloses another underlying construct that may be implemented in various embodiments of the present invention. Connectivity map 480 may be utilized to map the various services offered on the one or more devices participating in billboard table 300 to various transport mediums that may be utilized with each service. In the present example, transport mediums may comprise wireless communication mediums such as Bluetooth , WLAN, Wibree , wUSB, etc. In addition, the present invention, in accordance with at least one embodiment, may also be that radio technologies can be used with several protocols (e.g., Bluetooth protocols may be implemented over WLAN). However, the present invention is not specifically limited to using these particular wireless communication mediums, and may be implemented with other wireless communication mediums that are usable by services offered by various devices. In this example, Services offered by the devices may be listed under services 482, and the
corresponding available transport mediums are listed under transports 484. Arrows between services 482 and transport mediums 484 indicate the one or more transport mediums usable by each service. The information in connectivity map 480 may, in accordance with various embodiments of the present invention, create a binding between billboard table content (e.g., service offerings) and connectivity map table content (e.g., available device connectivity configurations) so that this information may be utilized, for example, by applications in determining an appropriate transport medium to utilize with a particular service. Where two or more transport mediums are available, a particular transport medium may be selected based on various characteristics such as speed, traffic, priority of executing the service, other active wireless communication mediums, etc.
[0038] Now referring to FIG. 5, an example depicting a wireless transaction between device A 200 and device B 210 is disclosed in accordance with at least one embodiment of the present invention. In this instance, BB service search 500 on device A 200 may require the use of a particular service. Further, billboard table 300 may reside on device B 210. Regardless of the actual location of the service required by BB service search 500, a query may be made of billboard table 300 to gain access to a corresponding service node. This is because all available service information on the one or more devices participating in billboard table 300 is centrally located, reducing the steps required to access each service, and therefore, increasing the speed of access for available services. In addition, various embodiments of the present invention may include more than one billboard table 300 established between the linked devices. These billboard tables 300 may interact with each other to create a shared information pool that services may access.
[0039] BB service search 500 may, for example, using NoTA service 502 residing on device A 200 in order to access billboard table 300. In this example, connectivity map 504 may map to at least Bluetooth™ 506 as a transport medium usable by NoTA service 502. Other wireless communication mediums may also be usable as transport mediums, however in this example Bluetooth™ 506 is selected (e.g., by a user, by BB service search 500, by an application calling BB service search 500, etc.) A Bluetooth™ wireless link 508 may then be utilized to communicate between device A 200 and device B 210.
[0040] The wireless inquiry sent by device A 200 may then be received by device
B 210. Bluetooth™ resources 520 in device B may correspond to (e.g., may be usable by) NoTA service 524 as determined by a mapping in connectivity map 522. NoTA
service 524 may provide access to search billboard table 300, which may contain various service information entries 528 corresponding to various services available in the linked wireless communication devices. Again, while two devices are shown in the example of FIG. 5, more than two devices may participate in billboard table 300, including service nodes 528 corresponding to services that are offered by each device. BB service search 500 may then perform an inquiry of the service information entries 528 available in billboard table 300 in order to determine if any of the services corresponding to service information entries 528 will be suitable for the parameters specified in the search. An example inquiry of billboard table 300 is now described with respect to FIG. 6A-6E.
IV. Example Application/Service Node Interaction
[0041] FIG. 6A-6E disclose an example usage scenario in accordance with at least one embodiment of the present invention. In FIG. 6 A, an example situation is shown wherein application 600 running on one of the devices participating in billboard table 300 may have a requirement for storage as indicated at 602. As a result, access to a service providing storage activities may be desired in order to support application 600. This inquiry may be performed, at least in part, by a billboard query 604.
[0042] An inquiry process in accordance with at least one embodiment of the present invention is shown in FIG. 6B. Storage inquiry 602 may be referred billboard query 604, which queries all of the service nodes in billboard table 300 in order to determine the services that may potentially fulfill the needs of Application 600. In FIG. 6B two service nodes have been highlighted as potentially corresponding to services appropriate for storage requirement 602. The potentially applicable service information entries are UPnP mass storage 318A and BT mass storage 328 A. Billboard query 604 may further obtain information related to the services from their respective nodes. For example, property information may be supplied by service information entries 318A and 328A to application 600 through billboard query 604. Information regarding transport mediums usable by each service may also be obtained through the use of connectivity map 480. All of the aforementioned information may be used in determining which service to select for supporting application 600. For example, the properties of a particular service may be more useful for, or accessible to, application 600. A particular service may also be selected because a usable transport medium is better able to support
the activity to be performed because other transport mediums already have too much traffic, are experiencing interference, conflict with other transport mediums, etc.
[0043] In FIG. 6C, BT mass storage service information entry 328A has been selected to support application 600. This selection may be made automatically by control elements in the one or more devices supporting billboard table 300, by application 600, by user selection of a preferred service and/or transport medium, etc. Billboard query 604 may then obtain all of the information necessary to access BT Mass storage service 328 from BT mass storage service information entry 328A. This information may include, for example, property information and transport medium information that may be further conveyed to application 600 in order to facilitate a direct link between application 600 with BT Mass storage service 328. An example direct linkage is shown in FIG. 6D, and a communication transaction resulting between application 600 and BT Mass storage service 328 is further shown in FIG. 6E.
[0044] Now referring to FIG. 6F, an example of devices providing services to other devices via billboard table 300 in accordance with at least one embodiment of the present invention is disclosed. In this example, devices 610 and 620 may be wirelessly coupled to device 630. A UPnP protocol in device 610 may couple to device 630 via WLAN, as shown at 612, in order to create a UPnP mass storage service node in billboard table 300. Similarly, a BT mass storage service in device 620 may utilize the BT SDP protocol to create a service node in billboard table 300 via Bluetooth™ communication 622. After these devices have established billboard table 630, device 640 may enter.
[0045] Device 640 includes an application that requires a storage service. Device
640 may then access billboard table 300 on device 630 as shown at 642. This connection may be made, for example, utilizing a NoTA service communicating over WLAN. Device 640 may access billboard table 300 in order to query the available services. If more than one applicable service is located, a selection may be made as to the service most appropriate for the application. In this example it is determined that the BT mass storage service will be most appropriate to assist the application in device 640. Device 640 may then obtain information from the BT mass storage node, such as property and transport medium information, that will be needed in order to access the BT mass storage service. Device 640 may then access the BT mass storage service on device 620 in order to establish a direct connection between the application and the service a shown at 644.
V. Example source selection scenario when a plurality of sources are available.
[0046] In situations where two or more apparatuses are able to provide the same resources to an apparatus wishing to access said resources, a decision to utilize one apparatus over another apparatus may depend on various factors. An example indicator that may be used to determine a preferred source apparatus is energy. For instance, apparatuses that can provide required resources may currently be operating using a local power source (e.g., a battery) instead of external power (e.g., a wall outlet), may only operate with battery due to apparatus complexity, location, size, etc. limitations, may be operating utilizing a depleted energy source, may be quickly depleting stored energy due to substantial processing and/or communication tasks, etc. Indicators, such as those listed above, may be processed in order to determine apparatus condition, which may in turn be evaluated in view of device-level and/or system-level management objectives. In this way, sources for required resources may be selected based on the management objective.
[0047] However, even if users could identify apparatuses that are able to provide access to required resources and corresponding apparatus condition information, the level of skill required in order to make a determination as to which source to select would still be problematic for novice users, and possibly even for experienced users. In particular, it would require users to accumulate and comprehend condition information pertaining to at least the apparatuses that can provide the required resources, and then to determine which of these apparatuses to utilize based on some overall management goal (e.g., optimizing power in one or more apparatuses, system power optimization, etc.) Users would then be required to configure a connection to selected apparatuses/required resources, which would already have been burdensome in view of the potential pitfalls discussed above.
[0048] In addition, the above source apparatus selection process example does not take into account changes in the condition of source apparatuses as the desired resource is being accessed (e.g., energy depletion), or the source and consuming apparatuses losing their communication connection due to environmental interference, moving outside of communication range, one of the apparatuses crashing, etc. Such foreseeable conditions or events would unavoidably require repeating the entire process for each occurrence of a failure mode.
VI. Example of apparatus interaction.
[0049] FIG. 7A-7D disclose an example wherein apparatuses 700, 720, 740 and
760 are configured to interact via common memory space 780 (e.g., billboard table 300). While the disclosed example comprises four apparatuses communicating wirelessly, the scenario disclosed in FIG. 7 A is not intended to limit any embodiment of the present invention to a particular number of apparatuses, type of apparatus interaction or method of apparatus communication. Moreover, implementations of the present invention may be applied in many scenarios where a plurality of apparatuses may be interoperating.
[0050] Now referring to FIG. 7A, an example apparatus interaction scenario is set forth. While apparatuses 700, 720, 740 and 760 have been depicted as utilizing wireless communication, embodiments of the present invention may be implemented using wired and/or wireless transports. The apparatuses shown in FIG 7A may experience the desire or need to interact. For example activity on one device may require access to resources on another device. In accordance with at least one embodiment of the present invention, apparatus interaction in NoTA may be facilitated utilizing common memory space 780.
[0051] An example of the aforementioned apparatus interaction is disclosed in
FIG. 7B. In the depicted scenario apparatus 700 may make resource 1 702 available to other apparatuses in the common memory space 780. As a result, apparatus 700 may provide resource information entry 704 to common memory space 780. For example, a configuration where each of the participating apparatuses "hosts" a portion of common memory space 780, resource information entry 704 may reside on the portion of common memory space 780 that resides upon apparatus 700 (e.g., section 780A). However, this is just one instance of operation, and the present invention is not limited to this arrangement.
[0052] In a similar manner, apparatus 740 may offer resources 742 and 746 which may be represented in common memory space 780 (e.g., section 780C) by resource information entries 744 and 748, respectively. Further, apparatus 760 in this example may offer one or more of the same services as apparatuses 742 and 746. For instance, apparatus 760 may provide second occurrences of resources 1 and 3 as shown at 762 and 766. Accordingly, secondary resource information entries 764 and 768 may be placed in section 780D of common memory space 780 in order to identify the availability of these resources to other apparatuses.
[0053] The example scenario disclosed in FIG. 7B further shows apparatus 720 in correspondence with section 780B (e.g., that may reside in the memory of apparatus 720),
wherein apparatus 720 further includes consumer 722. Consumer 722 may correspond to any software and/or hardware element on apparatus 720 that may have a requirement for a resource on the same or another apparatus. Examples of consumer 722 may include, but are not limited to, an application executing on apparatus 720, a user interaction with a user interface on apparatus 720, utilities that automatically obtain update information for apparatus 720, etc. In addition, while apparatus 720 has been represented as having no available services in this situation, this representation is merely to maintain the clarity of the disclosure. It is foreseeable that apparatuses can offer resources while maintaining consumers that receive resource information from the same or other apparatuses.
[0054] In accordance with the example implementations and processes discussed with respect to the previous figures, FIG. 7C discloses an example process by which resources required for consumer 722 may be located (in this instance "resource 1"). Notification of this requirement may be explicitly expressed by consumer 722 (e.g., an application may identify by name and/or location a certain database is to be accessed). Consumer 722 may also provide information about the requirement to control elements in apparatus 720, and the control elements may then identify one or more suitable resources that can fulfill the requirement (e.g., a user activates an Internet Browser, and based on this event, control elements in apparatus 720 may determine the possible Internet access provider resources). Regardless of the manner by which required resources are identified, the resource identification may be used in query 724 to locate resources that can fulfill the requirement. For example, query 720 may compare a resource identification to resource information entries in common memory space 780. In this instance, a comparison of resource information entries 702 and 762 to the resource identification (e.g., specifying resource 1) would result in matches, and therefore, the two occurrences of resource 1 (e.g., 702 and 762), and possibly corresponding apparatuses 700 and 760, respectively, may be identified as potential providers of the resource required by consumer 722.
[0055] The system may also be such that consumer's device 720 is configured to search for certain services e.g. based on the actively running applications, so it is not necessarily the consumer that is provided the information of the available services, but the consumer device 720 that can utilize the information based on e.g. needs of the active applications or e.g. some pre-configuration of preferred services provided by the consumer.
[0056] Without additional information, it would appear that either of apparatuses
700 or 760 would be appropriate to provide resource 1 to consumer 722. However, FIG. 7D discloses the case where condition information is made available pertaining to at least apparatuses 700 and 760. A current energy level is shown for apparatuses 700 and 760 at 700E and 760E, respectively. The energy level condition indicators represent an energy range from full, "F," to empty "E." The energy level condition 700E shows that the energy for apparatus 700 is nearly depleted. On the contrary, energy level condition 760E shows that the energy level of apparatus 760E is nearly full. Therefore, in an effort to conserve energy in apparatus 700, it may be more desirable to obtain resource 1 from apparatus 760. This determination may, of course, be governed by the management strategy being employed. For example, a device level conservation strategy may, in some situations, yield a different result than a conservation strategy operating at a system level. Further, a condition based management strategy may be coupled with other rules and or conditions that govern resource provider selection. For instance, in a situation where a resource is available from only one apparatus, a condition-based determination may be adjusted to ensure that the operation of the single-source apparatus is preserved.
[0057] It is important to realize that while current energy level (e.g., 700E and
760E) has been utilized for the sake of explanation in FIG. 7D, energy level is but one example of information that may characterize the condition of an apparatus. Apparatus power configuration may also be considered condition information. For example, if a device is attached to an external power source (e.g., a wall outlet), then over-utilization of the apparatus may not be a concern as opposed to devices that only run on battery power. Condition may also be evaluated relatively between devices. For instance, as more and more apparatuses become "smart" (e.g., contain some sort of electronic intelligence and possibly the ability to communicate), it is foreseeable that the operational limitations may contribute to apparatus condition information. In particular, it doesn't matter if one potential provider of a resource is near full power while stored power of another source is half depleted if the fully charged device has substantial energy (e.g., battery) and/or processing limitations. The second apparatus might also have more substantial energy characteristics (e.g., a larger energy storage capacity, a longer runtime on a single charge, etc.) Other examples of condition information may include resource utilization levels on a per-apparatus basis, apparatus communication activity and/or quality levels, apparatus
processor loading and/or backlog, etc. More specifically, these example measures of condition may be utilized to discern, for example, whether resources that are currently available are, in actuality, the best solution for providing access to the consumer.
VII. Example implementation of apparatus management
[0058] FIG. 8A discloses an example implementation in accordance with at least one embodiment of the present invention. Control element 800 may exist within common memory space 780 executing, for example, on a single apparatus (e.g., in one of sections 780A, 780B, 780C or 780D) or amongst multiple apparatuses. Control element 800 may comprise a combination of software and/or hardware that together implement context monitor 802 and energy and power manager (EPM) 804. In accordance with at least one embodiment of the present invention, condition information pertaining to one or more apparatuses interacting via common memory space 780 may be accumulated by context monitor 802. The condition information may then be provided to EPM 804 which determines, based on the received condition information and possibly other characteristic information provided by further control elements within common memory space 780, which apparatus should preferably provide the resource to consumer 722.
[0059] Condition information may be provided to content monitor 802 based on a variety of practices. In at least one configuration, content monitor 802 may periodically receive, via polling or another means of data collection, condition information from the other apparatuses. Alternatively, or in combination with periodic reception of condition information, events occurring in the apparatuses may trigger the transmission of condition information to context manager 802. For example, a power threshold level may be set in an apparatus, and when the power level falls below the power threshold the transmission of condition information may be triggered in the device. Other events such as starting an application, a user configuration, etc. may also be utilized to trigger condition reporting.
[0060] Further, the one or more apparatuses from which condition information is accumulated may vary depending on the particular implementation. For instance, condition information may be accumulated from all of the apparatuses that are interacting in common memory space 780. In another example embodiment a determination of the apparatuses on which a required resides may occur first, and then condition information may only be obtained from these devices. This may conserve resources for the apparatus
(or apparatuses) on which context monitor 802 is executing since condition information will have to be accumulated from fewer apparatuses.
[0061] FIG. 8B discloses an example embodiment of the present invention wherein condition information may be transmitted from apparatuses interacting via common memory space as a communication parameter. Communication 810 may occur as a part of ordinary apparatus interaction with shared memory space 800. In the disclosed example, communication 810 may comprise at least service information 812 and condition information 814. At least service information may be utilized to establish resource information entry 704. Some or all of condition information 814 may be incorporated within resource information entry 704, which may then provide condition information 814 to context monitor 802. Condition information 814 may also be received directly into context monitor 802, for example, as a parameter of communication 810.
[0062] Condition information 814 may be accumulated in context monitor 814.
This information may be provided from some or all of the apparatuses that are interacting via common memory space 800. While context monitor 802 has been depicted herein as a database for the sake of explanation, it is not limited to this particular configuration. In the disclosed example context monitor 802 may include entries (e.g., records) for some or all of the apparatuses interacting via common memory space 800. In the example of FIG. 8B, records 820 and 822 correspond to apparatuses 700 and 740, respectively. Each record may contain one or more parameters corresponding to the source apparatus. For example, record 820 may includes information identifying the source of the information (e.g., apparatus 700), condition information for the apparatus (e.g., characteristic information like energy level 700E), temporal information corresponding to the last time the information was updated, etc. Record 822 may comprise similar content that pertains to apparatus 740, which may be followed by further similar record corresponding to some or all of the apparatuses interacting via common memory space 800. The composition of condition information 814 may depend on how the particular embodiment of the present invention has been implemented. For example, since management strategy 824 utilizes condition information 814 in determining which apparatus should provide a required resource, the information accumulated by context monitor 802 may be directly related to the information that is needed in order to implement management strategy 824.
[0063] FIG. 9 discloses an example application of control element 800. While control element 800 has been identified as "EPM" in FIG. 9, control element 800 includes at least all of the elements previously discussed with respect to FIG. 8 A. In at least one embodiment of the present invention, the results of query 724 (e.g., identification of apparatuses on which the resource resides) may be utilized in conjunction with selection information from EPM 800 in order to determine the one or more apparatuses that should provide the required resource (e.g., resource 1) to consumer 722. More than one resource provider may be utilized in situations where consumer 722 requires a substantial amount of data, high speed transmission, etc. An alternative mode of operation may include the results of query 724 being reported to EPM 800, and EPM 800 then selecting the one or more most appropriate apparatuses. The output of query 724 and/or EPM 800 may simply indicate the one or more apparatuses that should provide the resource to consumer 722. Alternatively, a preferred order of use may be established including some or all of the apparatuses on which the required resource resides, and the apparatuses may then be selected according to the preferred order. At least one benefit of this second solution is that it may allow for another apparatus to be quickly selected if the currently selected apparatus fails, for example, due to a change in apparatus condition, a failure event, etc.
[0064] FIG. 10 discloses a flowchart of an example process in accordance with at least one embodiment of the present invention. The identification of a required resource may occur in step 1000. The identification of a required resource may be the result of some activity that occurs in one of one or more apparatuses interacting via a common memory space. A determination may then be made in step 1002 as to whether more than one apparatus may provide the required resource. If there is only one occurrence of the resource (or all other occurrences of the resource are unavailable) then in step 1004 the requirement may be fulfilled by the only available source and the process may resume in step 1000 in preparation for the identification of further resources that may be required.
[0065] If the resource may be provided by more than one apparatus, then in step
1006 a further determination may be made as to whether management based on condition information is supported in at least the devices on which the required resource resides. If condition-based management is not supported, then in step 1008 a determination as to which apparatus/resource to utilize in fulfilling the requirement may be based on other circumstances. For example, the availability of other resources residing on the same
apparatus but not available from other devices may suggest the use of another apparatus. The process may then reinitiate at step 1000 in preparation for the identification of further required resources.
[0066] If condition-based management is supported, then in step 1010 a control entity may accumulate condition information from one or more apparatuses interacting via the common memory space. For example, condition information may be accumulated for all of the apparatuses interacting in the common memory space, or alternatively, just from the apparatuses on which the required resource resides. The determination of a condition corresponding to each of the apparatuses from which condition information was accumulated may further occur in step 1010. A determination may then be made as to whether there the condition of one or more of the potential sources should control the one or more apparatuses that are selected to provide the required resource in step 1012. If there is scenario based on the apparatus conditions that indicates one or more preferred source apparatuses, then the process may return to step 1008 to make an alternative determination. If the apparatus conditions indicate that one or more apparatuses should be selected over other apparatuses, then in step 1014 the selection may be based, at least in part, on the condition information. As previously set forth, the selection may include an indication of one or more apparatuses from which the resource will be provided, or alternatively, the creation of a preferred order of apparatus usage. The process may then return to step 1000 to await the identification of further required resources.
[0067] Accordingly, it will be apparent to persons skilled in the relevant art that various changes in forma and detail can be made therein without departing from the spirit and scope of the invention. The breadth and scope of the present invention should not be limited by any of the above-described example embodiments, but should be defined only in accordance with the following claims and their equivalents.
Claims
1. A method, comprising: identifying a requirement for a resource available from one or more apparatuses configured for at least one of wired or wireless communication; determining which of the one or more apparatuses can provide the resource; receiving condition information for at least the one or more apparatuses that can provide the resource; determining a condition for at least each of the one or more apparatuses that can provide the resource based on the condition information; and selecting at least one of the one or more apparatuses that can provide the resource, the selection being based at least on the one or more conditions.
2. The method of claim 1, wherein the one or more apparatuses interact with a common memory space utilizing wireless communication, the common memory space existing in the memory of at least one of the one or more apparatuses.
3. The method of claim 1, wherein condition information is only received from each of the one or more apparatuses that can provide the resource.
4. The method of claim 1, wherein the condition information is conveyed to control elements residing in a common memory space as communication parameter including apparatus identification information and at least one of apparatus power configuration, maximum apparatus energy storage, current apparatus energy level, current apparatus activity level and any apparatus energy conservation limitations.
5. The method of claim 1, wherein the selection comprises evaluating the condition of the one or more apparatuses that can provide the resource and selecting at least one apparatus to provide the resource based on the evaluation.
6. The method of claim 5, wherein the evaluation is based on at least one of a device-level or system-level management strategy.
7. The method of claim 1, wherein selecting at least one of the one or more apparatuses that can provide the resource comprises making a selection from a preferred order of apparatuses that can provide the resource, the preferred order being formulated in view of the condition determined for each apparatus.
8. The method of claim 7, further comprising selecting at least the next apparatus in the preferred order when the at least one selected apparatus cannot provide the resource.
9. A computer program product comprising computer executable program code recorded on computer readable medium, the computer program code comprising: computer program code configured to identify a requirement for a resource available from one or more apparatuses configured for at least one of wired or wireless communication; computer program code configured to determine which of the one or more apparatuses can provide the resource; computer program code configured to receive condition information for at least the one or more apparatuses that can provide the resource; computer program code configured to determine a condition for at least each of the one or more apparatuses that can provide the resource based on the condition information; and computer program code configured to select at least one of the one or more apparatuses that can provide the resource, the selection being based at least on the one or more conditions.
10. The computer program product of claim 9, wherein the one or more apparatuses interact with a common memory space utilizing wireless communication, the common memory space existing in the memory of at least one of the one or more apparatuses.
11. The computer program product of claim 9, wherein condition information is only received from each of the one or more apparatuses that can provide the resource.
12. The computer program product of claim 9, wherein the condition information is conveyed to control elements residing in a common memory space as communication parameter including apparatus identification information and at least one of apparatus power configuration, maximum apparatus energy storage, current apparatus energy level, current apparatus activity level and any apparatus energy conservation limitations.
13. The computer program product of claim 9, wherein the selection comprises evaluating the condition of the one or more apparatuses that can provide the resource and selecting at least one apparatus to provide the resource based on the evaluation.
14. The computer program product of claim 13, wherein the evaluation is based on at least one of a device-level or system-level management strategy.
15. The computer program product of claim 9, wherein selecting at least one of the one or more apparatuses that can provide the resource comprises making a selection from a preferred order of apparatuses that can provide the resource, the preferred order being formulated in view of the condition determined for each apparatus.
16. The computer program product of claim 15, further comprising selecting at least the next apparatus in the preferred order when the at least one selected apparatus cannot provide the resource.
17. An apparatus, comprising: a processor, the processor being configured to: identify a requirement for a resource available from one or more apparatuses configured for at least one of wired or wireless communication; determine which of the one or more apparatuses can provide the resource; receive condition information for at least the one or more apparatuses that can provide the resource; determine a condition for at least each of the one or more apparatuses that can provide the resource based on the condition information; and select at least one of the one or more apparatuses that can provide the resource, the selection being based at least on the one or more conditions.
18. The apparatus of claim 17, wherein the one or more apparatuses interact with a common memory space utilizing wireless communication, the common memory space existing in the memory of at least one of the one or more apparatuses.
19. The apparatus of claim 17, wherein condition information is only received from each of the one or more apparatuses that can provide the resource.
20. The apparatus of claim 17, wherein the condition information is conveyed to control elements residing in a common memory space as communication parameter including apparatus identification information and at least one of apparatus power configuration, maximum apparatus energy storage, current apparatus energy level, current apparatus activity level and any apparatus energy conservation limitations.
21. The apparatus of claim 17, wherein the selection comprises evaluating the condition of the one or more apparatuses that can provide the resource and selecting at least one apparatus to provide the resource based on the evaluation.
22. The apparatus of claim 21, wherein the evaluation is based on at least one of a device-level or system-level management strategy.
23. The apparatus of claim 17, wherein selecting at least one of the one or more apparatuses that can provide the resource comprises making a selection from a preferred order of apparatuses that can provide the resource, the preferred order being formulated in view of the condition determined for each apparatus.
24. The apparatus of claim 23, further comprising selecting at least the next apparatus in the preferred order when the at least one selected apparatus cannot provide the resource.
25. An apparatus, comprising: means for identifying a requirement for a resource available from one or more apparatuses configured for at least one of wired or wireless communication; means for determining which of the one or more apparatuses can provide the resource; means for receiving condition information for at least the one or more apparatuses that can provide the resource; means for determining a condition for at least each of the one or more apparatuses that can provide the resource based on the condition information; and means for selecting at least one of the one or more apparatuses that can provide the resource, the selection being based at least on the one or more conditions.
26. A system, comprising: one or more apparatuses configured for at least one of wired or wireless communication; at least one of the one or more apparatuses identifying a requirement for a resource available from one or more apparatuses; at least one of the one or more apparatuses determining which of the one or more apparatuses can provide the resource; at least one of the one or more apparatuses receiving condition information for at least the one or more apparatuses that can provide the resource; at least one of the one or more apparatuses determining a condition for at least each of the one or more apparatuses that can provide the resource based on the condition information; and at least one of the one or more apparatuses selecting at least one of the one or more apparatuses that can provide the resource, the selection being based at least on the one or more conditions.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/IB2008/054070 WO2010038100A1 (en) | 2008-10-03 | 2008-10-03 | Condition-based management in multi-apparatus environments |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/IB2008/054070 WO2010038100A1 (en) | 2008-10-03 | 2008-10-03 | Condition-based management in multi-apparatus environments |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2010038100A1 true WO2010038100A1 (en) | 2010-04-08 |
Family
ID=40902210
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/IB2008/054070 Ceased WO2010038100A1 (en) | 2008-10-03 | 2008-10-03 | Condition-based management in multi-apparatus environments |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2010038100A1 (en) |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030036350A1 (en) * | 2000-12-18 | 2003-02-20 | Annika Jonsson | Method and apparatus for selective service access |
| US20070174521A1 (en) * | 2006-01-20 | 2007-07-26 | Canon Kabushiki Kaisha | Information processing apparatus, information processing apparatus control method, informantion processing program, and network system |
-
2008
- 2008-10-03 WO PCT/IB2008/054070 patent/WO2010038100A1/en not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20030036350A1 (en) * | 2000-12-18 | 2003-02-20 | Annika Jonsson | Method and apparatus for selective service access |
| US20070174521A1 (en) * | 2006-01-20 | 2007-07-26 | Canon Kabushiki Kaisha | Information processing apparatus, information processing apparatus control method, informantion processing program, and network system |
Non-Patent Citations (5)
| Title |
|---|
| KEINÄNEN K. , LEINO J. , SUOMALAINEN J.: "Developing Keyboard Service fo NoTA", VTT WORKING PAPERS, no. 107, June 2008 (2008-06-01) - October 2008 (2008-10-01), First NoTA Conference, pages 1 - 20, XP002540605, ISBN: 978-951-38-7168-0, Retrieved from the Internet <URL:http://www.vtt.fi/inf/pdf/workingpapers/2008/W107.pdf> [retrieved on 20090804] * |
| RAVERDY P ET AL: "Efficient Context-aware Service Discovery in Multi-Protocol Pervasive Environments", MOBILE DATA MANAGEMENT, 2006. MDM 2006. 7TH INTERNATIONAL CONFERENCE O N NARA, JAPAN 10-12 MAY 2006, PISCATAWAY, NJ, USA,IEEE, 10 May 2006 (2006-05-10), pages 3 - 3, XP010917860, ISBN: 978-0-7695-2526-6 * |
| SUORANTA R ED - KAMALA ET AL: "New Directions in Mobile Device Architectures", DIGITAL SYSTEM DESIGN: ARCHITECTURES, METHODS AND TOOLS, 2006. DSD 200 6. 9TH EUROMICRO CONFERENCE ON, IEEE, PI, 1 January 2006 (2006-01-01), pages 17 - 26, XP031102259, ISBN: 978-0-7695-2609-6 * |
| WONG SAU PENG ET AL: "Service continuity for audio visual service", CONSUMER ELECTRONICS, 2008. ISCE 2008. IEEE INTERNATIONAL SYMPOSIUM ON, IEEE, PISCATAWAY, NJ, USA, 14 April 2008 (2008-04-14), pages 1 - 4, XP031283654, ISBN: 978-1-4244-2422-1 * |
| XIN LIU ET AL: "A peer-to-peer framework for cost-effective on-demand media streaming", CONSUMER COMMUNICATIONS AND NETWORKING CONFERENCE, 2006. CCNC 2006. 20 06 3RD IEEE LAS VEGAS, NV, USA 8-10 JAN. 2006, PISCATAWAY, NJ, USA,IEEE, vol. 1, 8 January 2006 (2006-01-08), pages 314 - 318, XP010893222, ISBN: 978-1-4244-0085-0 * |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| EP2959642B1 (en) | Adaptive and extensible universal schema for heterogeneous internet of things (iot) devices | |
| KR101702799B1 (en) | Collaborative intelligence and decision-making in an iot device group | |
| JP6389243B2 (en) | Coordinated resource sharing in machine-to-machine communication using network-based group management and floor control mechanisms | |
| US10659246B2 (en) | Methods to discover, configure, and leverage relationships in internet of things (IoT) networks | |
| KR102166819B1 (en) | Automatic iot device social network expansion | |
| US20040236633A1 (en) | Management and arbitration of mobile service discovery | |
| US20150006719A1 (en) | LEVERAGING SYSTEM SIGNALING SERVICE ADVERTISEMENTS FOR APPLICATION-LAYER DISCOVERY AND CONNECTION MANAGEMENT IN AN INTERNET OF THINGS (IoT) ENVIRONMENT | |
| CN106256105B (en) | Method and apparatus for setting user preferences or device configuration | |
| KR20170041743A (en) | Method and apparatus for automatically generating an events dictionary in an internet of things (iot) network | |
| JP2016514398A (en) | Analysis engine for IoT devices | |
| US8493888B2 (en) | Connectivity architecture for service discovery | |
| US20110167182A1 (en) | Transport prioritization based on message type | |
| US8224257B2 (en) | Collaborative spectrum sensing in radio environment | |
| EP2254044A1 (en) | Connectivity management for transport independent architectures | |
| WO2010029386A1 (en) | Accessing resources via adaptive connection creation | |
| WO2010038100A1 (en) | Condition-based management in multi-apparatus environments | |
| Schmitt et al. | An extensible framework for context-aware communication management using heterogeneous sensor networks | |
| US20100188973A1 (en) | Quality of service (qos) control for transport independent architectures | |
| CN119948811A (en) | Method, server device and client device for device capability discovery | |
| Loseto et al. | Knowledge Representation Methods for Smart Devices in Intelligent Buildings. |
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: 08807884 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 08807884 Country of ref document: EP Kind code of ref document: A1 |