[go: up one dir, main page]

WO2006054223A1 - Method and system for grouping networked devices together in groups - Google Patents

Method and system for grouping networked devices together in groups Download PDF

Info

Publication number
WO2006054223A1
WO2006054223A1 PCT/IB2005/053733 IB2005053733W WO2006054223A1 WO 2006054223 A1 WO2006054223 A1 WO 2006054223A1 IB 2005053733 W IB2005053733 W IB 2005053733W WO 2006054223 A1 WO2006054223 A1 WO 2006054223A1
Authority
WO
WIPO (PCT)
Prior art keywords
devices
group
groups
unique identifiers
control points
Prior art date
Application number
PCT/IB2005/053733
Other languages
French (fr)
Inventor
Thomas Falck
Original Assignee
Koninklijke Philips Electronics N.V.
Philips Intellectual Property & Standards Gmbh
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics N.V., Philips Intellectual Property & Standards Gmbh filed Critical Koninklijke Philips Electronics N.V.
Publication of WO2006054223A1 publication Critical patent/WO2006054223A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1859Arrangements for providing special services to substations for broadcast or conference, e.g. multicast adapted to provide push services, e.g. data channels
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Definitions

  • the present invention relates to a method and a system for grouping devices logically belonging together to one or more groups, wherein said devices and said groups are uniquely identified, and wherein the grouping of said devices is announced to control points.
  • the invention further relates to control points for searching for all devices in the network logically belonging together to a specified group.
  • the UPnP device architecture 1.0 allows grouping of multiple logical devices by defining a single root device (representing the group as a whole) with embedded devices and their services.
  • the main problem with this existing approach is that there is just one device description containing the description for the root device and all its embedded devices. This device description has to be changed whenever an embedded device joins or leaves the group. But changing the device description requires the root device to revoke all its announcement messages and to re-announce itself and all its embedded devices referring to the changed device description. This results in the termination of all existing communication sessions of all embedded devices.
  • an embedded device cannot be a member of more than one root device (i.e. group) at any point in time.
  • the present invention relates to a method of grouping devices logically belonging together in groups, wherein said devices and said groups are uniquely identified by unique identifiers, and wherein the grouping of said devices is announced to one or more control points, the method comprising the steps of: associating the unique identifiers of said devices with the unique identifiers of said groups, and announcing said associated unique identifiers to said control points.
  • a group structure of network devices e.g. Universal Plug and Play (UPnP) devices
  • UPN Universal Plug and Play
  • Examples of devices logically belonging together are devices which are in the same location, devices a user is allowed to use, medical sensors attached to the same patient, devices which are clustered together into groups in order to filter out the devices most relevant for a user in his/her current situation, and devices which are wearable or portable Bluetooth devices (MP3, headset, mobile phone etc.) of a person which are part of a personal area network (PAN) and exposed via a PAN-to-LAN bridge to a UPnP-enabled home network.
  • PAN personal area network
  • announcing an individual group membership of a device comprises sending a multicast message comprising said unique identifiers from said device to said one or more control points.
  • announcement messages are only sent to control points subscribed to the multicast channel, i.e. interested in receiving this type of messages.
  • the method further comprises canceling an individual group membership of a device by announcing said unique identifier of said device to said one or more control points along with the associated unique group identifier.
  • the group structures can, in addition to said announcing, additionally be changed in a dynamic way by canceling an individual group membership.
  • canceling an individual group membership of a device comprises sending a multicast message from said device to said one or more control points comprising said unique identifiers. Thereby, cancellation messages are only sent to control points subscribed to the multicast channel, i.e. interested in receiving this type of messages.
  • announcing said associated unique identifiers to said control points is a response to a search request message from said control points. Thereby, the devices belonging to a particular group membership of said devices can at any time be discovered by said control point.
  • said search request comprises a request message comprising a request for discovering all devices within a particular group by specifying the unique group identifier of the group the control point is interested in.
  • the control point can easily discover the devices within a particular group.
  • the devices belonging to a particular group can at any time be discovered by said control point.
  • the search messages sent from said one or more control points may be sent as multicast messages, i.e. to all devices subscribed to the multicast channel.
  • said search request comprises a request message comprising a request for discovering all available groups and all devices within said groups by specifying a common group identifier representing any group. Therefore, if a device belongs to several groups it sends for each of its group memberships a search response message comprising its unique device identifier and the associated unique group identifier to the control point. Thereby, the available groups in the network can be discovered by said control point at any point in time. The control point can in this way learn all the groups which are available in the network and all group memberships of all devices.
  • the search messages sent from said one or more control points may be sent as multicast messages, i.e. to all devices subscribed to the multicast channel.
  • announcing said unique identifiers to said one or more control points is associated with a time limit. Thereby, after said time limit is expired, the control points consider such an expired group announcements as invalid.
  • said multicast message comprising said unique identifiers which is sent to said one or more control points is sent periodically by said devices. Thereby, the devices can periodically renew their announcements.
  • said devices are adapted to be members of more than one group simultaneously. Thereby, devices associated to e.g. two groups can change their group membership in one of said groups without having to recreate the second group membership.
  • the devices are medical sensors attached to a patient, wherein one of said groups is "Patient 1" group, comprising said devices, and the second group is
  • the present invention relates to a computer-readable medium having stored therein instructions for causing a processing unit to execute said method.
  • the present invention relates to a system grouping devices logically belonging together in groups wherein said devices and said groups are uniquely identified by unique identifiers, and wherein the grouping of said devices is announced to one or more control points, comprising: means for associating the unique identifiers of said devices with the unique identifier of said groups, and - means for announcing said associated unique identifiers to said control points.
  • said devices are Universal Plug and Play (UPnP) devices and said control points are UPnP control points.
  • UPP Universal Plug and Play
  • said system is applicable for UPnP- enabled wired and wireless networks, both home and corporate networks where UPnP devices logically belonging together can be grouped together.
  • the present invention relates to a control point for discovering devices logically belonging together in one or more groups, wherein said devices and said groups are uniquely identified by unique identifiers and associated together by associating the unique identifiers for said devices with the unique identifier for said groups, and wherein said devices belonging together in said groups are adapted to announce their unique identifiers to said control point and thereby uniquely identify them to said control point.
  • the devices can therefore be discovered by said control point as mutual group members.
  • Fig. 1 illustrates devices in a network which have been grouped together
  • Fig. 2 shows a message flow of a medical sensor exposed as an UPnP device on a hospital network to a UPnP control point
  • Fig. 3 shows a message flow caused from a control point searching for all devices belonging to a particular group
  • Fig. 4 shows a message flow caused from a control point searching for all devices belonging to any group.
  • Fig. 1 illustrates devices in a network which have been grouped together, wherein the devices belonging to the same group are devices which logically belong together.
  • An example of such devices logically belonging together are devices which are in the same location, devices a user is allowed to use, medical devices belonging to a patient, devices which are clustered together into groups in order to filter out the devices most relevant for a user in his/her current situation, and devices which are wearable or portable Bluetooth devices (MP3, headset, mobile phone etc.) of a person which are part of a personal area network (PAN) and exposed via a PAN-to-LAN bridge to a UPnP-enabled home network.
  • PAN personal area network
  • the devices are Universal Plug and Play (UPnP) devices, and the network is a UPnP-enabled network.
  • Other networks are of course also possible, such as Jini- or SDP-enabled networks.
  • the UPnP devices 112-124 can be medical sensors for patient monitoring applications, e.g. ECG, temperature sensors, blood pressure sensors, etc.
  • the UPnP devices 112-124 which correspond to a single patient and belong logically together, are therefore grouped together 106-110. It is to note that device 124 is the only member of group 110.
  • the groups are identified by a universally unique identifier "group-UUID", which will be referred to later, and based thereon the medical sensors can be found for each patient 101-105 from the hospital network using at least one control point 111. Also, new sensors can easily be added to the groups 106-110, or removed from the groups 106-110 so that the group structures can be changed dynamically.
  • group-UUID universally unique identifier
  • Adding a new sensor to a group is performed by advertising its group membership by sending a multicast message with method "NOTIFY” and “ssdp:alive” in the "NTS" header, as shown here below, in the following format once for each of its group memberships.
  • LOCATION ⁇ URL to device description of root device>
  • NT group : ⁇ group-UUID>
  • the “NT” header contains the prefix “group:” followed by the universally unique identifier "UUID” of the group the device belongs to.
  • the “USN” header contains basically the same value as the “NT” header, but prefixed by the "UUID” of the device. Therefore, the "USN” header associates the "UUID” of the device and the "UUID” of the group.
  • the "NT” could be group 2 107
  • the "USN” header could be device/medical sensors 115 having its universally unique identifier "UUID”.
  • the advertisement is re-sent when it expires.
  • the expiration time of "group membership announcements” can be independently set from the expiration time of the standard UPnP "device availability announcements". Due to the unreliable nature of the UDP (User Datagram Protocol), said devices 112-124 preferably send each "NOTIFY" message more than once.
  • UDP User Datagram Protocol
  • a new header (e.g. "GROUPS:") can be introduced followed by the list of group-UUIDs of the groups the device belongs to.
  • the UPnP devices can cancel an individual group membership independent of each other by sending a multicast message with method "NOTIFY” and "ssdp:byebye” in the "NTS" header in the following format. Values in the brackets are placeholders for actual values.
  • NT group : ⁇ group-UUID>
  • UUID universally unique identifier
  • the "USN" header contains basically the same value as the "NT" header, but prefixed by the UUID of the device.
  • said device preferably send the "NOTIFY" message more than once.
  • a new header (e.g. "GROUPS:") can be introduced followed by the list of group-UUIDs of the groups the device belongs to.
  • the UPnP control point 111 can search for all member devices belonging to a particular group identified by its group-"UUID" by sending a multicast message with method M-Search (multicast search) in the following format. Values in the brackets are placeholders for actual values.
  • the "ST" header contains the prefix "group:” followed by the universally unique identifier (UUID) of the group the control point is interested in. All the devices belonging to the group identified by this ⁇ group-UUID> will send a search response message to the control point in response to the search request message.
  • UUID universally unique identifier
  • a UPnP control point can also search for all devices belonging to any group by using "group:all" as search target in the "ST" header.
  • all devices belonging to at least one group will send a search response message to the control point for each group they are part of in response to the search request message.
  • control points send preferably said M- Search message more than once. Responding to search requests:
  • a device must send a response to said search request, as discussed previously, to the source IP address and port of the control point that sent the request to the multicast channel.
  • Responses to M-Search are intentionally parallel to advertisements, and as such, follow the same pattern as listed for "NOTIFY" with
  • the "ST" header contains the prefix "group:” followed by the universally unique identifier (UUID) of the group the device belongs to.
  • the USN header contains basically the same value as the ST header, but prefixed by the UUID of the device. Accordingly, the devices are adapted to receive said search request from the control point and compare whether they belong to the group specified by the " ⁇ group-UUID>" in the search request. If that's the case, the matching devices send a search response message to the control point comprising the "UUID" of the devices and the "UUID” of the group thereby all the necessary information about the devices. Thereby a control point can discover all available devices in the group.
  • search request contains as search target "group:all”
  • all devices belonging to any group send a response message for each of their group memberships. Thereby a control point can discover all available groups and all group memberships of all devices.
  • Fig. 2 shows a message flow of a medical sensor attached to a patient and exposed as an UPnP device 209 on a hospital network to an UPnP control point 210, as it advertises its group membership to the control point 210. It is assumed that the medical sensor knows the patient it is attached to (e.g. by exploiting RFID technology for automatic patient identification) and its current location (e.g. by exploiting RF-based indoor positioning systems).
  • the first four advertisements messages 201-204 are the same as defined in the UPnP device architecture 1.0.
  • the first advertisement message relates to the unique identifier "UUID" of the device (Adv.
  • the fifth and the sixth advertisement messages are for announcing the group memberships of the device 209.
  • the fifth advertisement relates to the group "Patientl” (e.g. group 2 107 in Fig.
  • the device 209 is associated to two groups; the first group relating to the patient ("Patientl") and the second group relating to the floor of the hospital ("Floorl"). Therefore, the patient can be transferred to another floor, e.g. second floor, without having to recreate the group "Patientl” with all the associated medical sensors. Only the group relating to the floor needs to be changed. This is illustrated in the seventh advertisement, wherein the device 209 (e.g.
  • Fig. 3 shows a message flow caused from a control point 301 searching for all devices belonging to the group “Patientl”, the group “Patient2”, and group “Floorl” in sequence.
  • the devices 302-304 are attached to “Patientl”
  • the devices 305-307 are attached to "Patient2”
  • all devices 302-207 are at "Floorl”.
  • the control point 301 sends a multicast search request (M-Search) (Se. f. "gr.:Pat.l”) 308 to all the devices 302-307.
  • M-Search multicast search request
  • Those devices belonging to the group "Patientl” i.e. devices 302-304, send a search response (Se.
  • Resp. 309-311 to the control point 301 with all the necessary information of the devices 302- 304. In one embodiment this is done by sending a URL (Uniform Resource Locator) to its device description to the control point 301, which subsequently can start using the discovered devices.
  • the control point 301 also sends a multicast search request (Se. f. "gr.:Pat.2") 312 to all the devices 302-307 in the same way. Those devices belonging to the "Patient2" group, i.e. devices 305-307, send a search response (Se. Resp.) 313-315 to the control point 301 with all the information necessary for using the devices.
  • the control point 301 searches (Se. f. "gr.:Fl.l”) 316 for all the devices
  • Fig. 4 shows a message flow caused from a control point 401 searching for all devices 402-407 belonging to any group by sending a search request message with the common group identifier "group:all" representing any group as search target.
  • the control point 401 sends a multicast search request (M-Search) (Search for "group:all") 408 to all the devices 402-407. All devices belonging to any group, i.e. devices 402-407, send a search response (Search Response) 409-420 to the control point 401 for all groups they are belonging to with all the necessary information of the devices 402-407.
  • M-Search multicast search request
  • search Response Search Response
  • device 402 which belongs to two groups (“Patientl” and “Floorl") sends a search response message 409 for the group "Patientl” and a further search response message 410 for the group membership in group "Floorl".
  • the other devices 403-407 respond in the same way. Thereby, the control point 401 learns all available groups in the network and all group memberships of all devices.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The present invention relates to a method and system for grouping devices logically belonging together to one or more groups, wherein said devices and said groups are uniquely identified, and wherein the grouping of said devices is announced to a control points. This is done by associating the devices in one or more groups by means of associating unique identifiers uniquely identifying the devices with unique identifiers uniquely identifying the one or more groups. Subsequently, the devices announce the associated unique identifiers to control points about the associated unique identifiers.

Description

Method and system for grouping networked devices together in groups
The present invention relates to a method and a system for grouping devices logically belonging together to one or more groups, wherein said devices and said groups are uniquely identified, and wherein the grouping of said devices is announced to control points. The invention further relates to control points for searching for all devices in the network logically belonging together to a specified group.
The UPnP device architecture 1.0 allows grouping of multiple logical devices by defining a single root device (representing the group as a whole) with embedded devices and their services. The main problem with this existing approach is that there is just one device description containing the description for the root device and all its embedded devices. This device description has to be changed whenever an embedded device joins or leaves the group. But changing the device description requires the root device to revoke all its announcement messages and to re-announce itself and all its embedded devices referring to the changed device description. This results in the termination of all existing communication sessions of all embedded devices. In addition, an embedded device cannot be a member of more than one root device (i.e. group) at any point in time.
It is the object of the present invention to solve the above-mentioned problems.
According to one aspect, the present invention relates to a method of grouping devices logically belonging together in groups, wherein said devices and said groups are uniquely identified by unique identifiers, and wherein the grouping of said devices is announced to one or more control points, the method comprising the steps of: associating the unique identifiers of said devices with the unique identifiers of said groups, and announcing said associated unique identifiers to said control points. Therefore, a group structure of network devices, e.g. Universal Plug and Play (UPnP) devices, can easily be created in a dynamic way, wherein a device can announce its group membership to control points by indicating the unique identifier of said device along with the associated unique group identifier without affecting ongoing communication of other devices. Examples of devices logically belonging together are devices which are in the same location, devices a user is allowed to use, medical sensors attached to the same patient, devices which are clustered together into groups in order to filter out the devices most relevant for a user in his/her current situation, and devices which are wearable or portable Bluetooth devices (MP3, headset, mobile phone etc.) of a person which are part of a personal area network (PAN) and exposed via a PAN-to-LAN bridge to a UPnP-enabled home network.
In an embodiment, announcing an individual group membership of a device comprises sending a multicast message comprising said unique identifiers from said device to said one or more control points. Thereby, announcement messages are only sent to control points subscribed to the multicast channel, i.e. interested in receiving this type of messages.
In an embodiment, the method further comprises canceling an individual group membership of a device by announcing said unique identifier of said device to said one or more control points along with the associated unique group identifier. Thereby, the group structures can, in addition to said announcing, additionally be changed in a dynamic way by canceling an individual group membership.
In an embodiment, canceling an individual group membership of a device comprises sending a multicast message from said device to said one or more control points comprising said unique identifiers. Thereby, cancellation messages are only sent to control points subscribed to the multicast channel, i.e. interested in receiving this type of messages. In an embodiment, announcing said associated unique identifiers to said control points is a response to a search request message from said control points. Thereby, the devices belonging to a particular group membership of said devices can at any time be discovered by said control point.
In an embodiment, said search request comprises a request message comprising a request for discovering all devices within a particular group by specifying the unique group identifier of the group the control point is interested in. Thereby, the control point can easily discover the devices within a particular group. Also, the devices belonging to a particular group can at any time be discovered by said control point. The search messages sent from said one or more control points may be sent as multicast messages, i.e. to all devices subscribed to the multicast channel.
In an embodiment, said search request comprises a request message comprising a request for discovering all available groups and all devices within said groups by specifying a common group identifier representing any group. Therefore, if a device belongs to several groups it sends for each of its group memberships a search response message comprising its unique device identifier and the associated unique group identifier to the control point. Thereby, the available groups in the network can be discovered by said control point at any point in time. The control point can in this way learn all the groups which are available in the network and all group memberships of all devices. The search messages sent from said one or more control points may be sent as multicast messages, i.e. to all devices subscribed to the multicast channel.
In an embodiment, announcing said unique identifiers to said one or more control points is associated with a time limit. Thereby, after said time limit is expired, the control points consider such an expired group announcements as invalid.
In an embodiment said multicast message comprising said unique identifiers which is sent to said one or more control points is sent periodically by said devices. Thereby, the devices can periodically renew their announcements.
In an embodiment, said devices are adapted to be members of more than one group simultaneously. Thereby, devices associated to e.g. two groups can change their group membership in one of said groups without having to recreate the second group membership.
An example of this is where the devices are medical sensors attached to a patient, wherein one of said groups is "Patient 1" group, comprising said devices, and the second group is
"Floorl" group, comprising the location of said "Patientl" group. If the patient is to be moved to a second floor, it is sufficient to cancel the "Floorl" group membership and to announce a "Floor2" group membership for all sensors belonging to "Patient 1". It is therefore not necessary to cancel and re-announce the "Patientl" group membership with all its devices. Devices belonging to other patients also belonging to "Floorl" or "Floor2" group are therefore not affected. In a further aspect, the present invention relates to a computer-readable medium having stored therein instructions for causing a processing unit to execute said method.
According to another aspect, the present invention relates to a system grouping devices logically belonging together in groups wherein said devices and said groups are uniquely identified by unique identifiers, and wherein the grouping of said devices is announced to one or more control points, comprising: means for associating the unique identifiers of said devices with the unique identifier of said groups, and - means for announcing said associated unique identifiers to said control points.
In an embodiment, said devices are Universal Plug and Play (UPnP) devices and said control points are UPnP control points. Thereby, said system is applicable for UPnP- enabled wired and wireless networks, both home and corporate networks where UPnP devices logically belonging together can be grouped together. According to another aspect, the present invention relates to a control point for discovering devices logically belonging together in one or more groups, wherein said devices and said groups are uniquely identified by unique identifiers and associated together by associating the unique identifiers for said devices with the unique identifier for said groups, and wherein said devices belonging together in said groups are adapted to announce their unique identifiers to said control point and thereby uniquely identify them to said control point.
The devices can therefore be discovered by said control point as mutual group members.
In the following, the present invention, and in particular preferred embodiments thereof, will be described in more detail in connection with accompanying drawings in which:
Fig. 1 illustrates devices in a network which have been grouped together, Fig. 2 shows a message flow of a medical sensor exposed as an UPnP device on a hospital network to a UPnP control point, and
Fig. 3 shows a message flow caused from a control point searching for all devices belonging to a particular group,
Fig. 4 shows a message flow caused from a control point searching for all devices belonging to any group.
Fig. 1 illustrates devices in a network which have been grouped together, wherein the devices belonging to the same group are devices which logically belong together. An example of such devices logically belonging together are devices which are in the same location, devices a user is allowed to use, medical devices belonging to a patient, devices which are clustered together into groups in order to filter out the devices most relevant for a user in his/her current situation, and devices which are wearable or portable Bluetooth devices (MP3, headset, mobile phone etc.) of a person which are part of a personal area network (PAN) and exposed via a PAN-to-LAN bridge to a UPnP-enabled home network.
In the following discussion, we will assume that the devices are Universal Plug and Play (UPnP) devices, and the network is a UPnP-enabled network. Other networks are of course also possible, such as Jini- or SDP-enabled networks. In the example shown in Fig. 1, the UPnP devices 112-124 can be medical sensors for patient monitoring applications, e.g. ECG, temperature sensors, blood pressure sensors, etc. The UPnP devices 112-124, which correspond to a single patient and belong logically together, are therefore grouped together 106-110. It is to note that device 124 is the only member of group 110. The groups are identified by a universally unique identifier "group-UUID", which will be referred to later, and based thereon the medical sensors can be found for each patient 101-105 from the hospital network using at least one control point 111. Also, new sensors can easily be added to the groups 106-110, or removed from the groups 106-110 so that the group structures can be changed dynamically.
In the following, embodiments of how to carry out the announcing and the canceling of group memberships of UPnP devices, and how a control point searches or detects all devices belonging to a particular group is described. This is solved by extending the UPnP discovery protocol so that the UPnP devices are able to announce and cancel their group memberships in a dynamic way, and wherein the control points are able to search for all devices belonging to a particular group.
Advertising group membership:
Adding a new sensor to a group is performed by advertising its group membership by sending a multicast message with method "NOTIFY" and "ssdp:alive" in the "NTS" header, as shown here below, in the following format once for each of its group memberships.
NOTIFY * HTTP/1.1
HOST: 239.255.255.250:1900
CACHE-CONTROL: max-age = <seconds until advertisement expires> LOCATION: <URL to device description of root device> NT: group : <group-UUID> NTS: ssdp:alive
SERVER: <OS>/<version> UPnP/2.0 <product>/<version> USN: uuid:<device-UUID>: :group:<group-UUID>
Note that the values enclosed in the brackets are placeholders for the actual values. The "NT" header contains the prefix "group:" followed by the universally unique identifier "UUID" of the group the device belongs to. The "USN" header contains basically the same value as the "NT" header, but prefixed by the "UUID" of the device. Therefore, the "USN" header associates the "UUID" of the device and the "UUID" of the group. By referring to the example illustrated in Fig. 1, the "NT" could be group 2 107, and the "USN" header could be device/medical sensors 115 having its universally unique identifier "UUID". Preferably, the advertisement is re-sent when it expires. It should be noted that the expiration time of "group membership announcements" can be independently set from the expiration time of the standard UPnP "device availability announcements". Due to the unreliable nature of the UDP (User Datagram Protocol), said devices 112-124 preferably send each "NOTIFY" message more than once.
As an alternative, instead of re-using the NT header defined in UPnP for announcing group memberships a new header (e.g. "GROUPS:") can be introduced followed by the list of group-UUIDs of the groups the device belongs to.
Cancellation of group memberships:
The UPnP devices can cancel an individual group membership independent of each other by sending a multicast message with method "NOTIFY" and "ssdp:byebye" in the "NTS" header in the following format. Values in the brackets are placeholders for actual values.
NOTIFY * HTTP/1.1 HOST: 239.255.255.250:1900 NT: group : <group-UUID> NTS: ssdp:byebye USN: uuid:<device-UUID>: :group:<group-UUID> The "NT" header contains the prefix "group:" followed by the universally unique identifier (UUID) of the group the device no longer belongs to. Referring again to the example in Fig. 1, this could mean that said device/medical sensors 115 in said group 2 107 is no longer a member of this group. As mentioned previously, the "USN" header contains basically the same value as the "NT" header, but prefixed by the UUID of the device. As mentioned previously, due to the unreliable nature of the UDP, said device preferably send the "NOTIFY" message more than once.
As an alternative, instead of re-using the NT header defined in UPnP for revoking group membership announcements a new header (e.g. "GROUPS:") can be introduced followed by the list of group-UUIDs of the groups the device belongs to.
Searching for group members:
The UPnP control point 111 can search for all member devices belonging to a particular group identified by its group-"UUID" by sending a multicast message with method M-Search (multicast search) in the following format. Values in the brackets are placeholders for actual values.
M-SEARCH * HTTP/1.1 HOST: 239.255.255.250:1900 MAN: "ssdp:discovery"
MX: <seconds to delay response> ST: group: <group-UUID>
The "ST" header contains the prefix "group:" followed by the universally unique identifier (UUID) of the group the control point is interested in. All the devices belonging to the group identified by this <group-UUID> will send a search response message to the control point in response to the search request message.
A UPnP control point can also search for all devices belonging to any group by using "group:all" as search target in the "ST" header. In this case, all devices belonging to at least one group will send a search response message to the control point for each group they are part of in response to the search request message.
Due to the unreliable nature of UDP, control points send preferably said M- Search message more than once. Responding to search requests:
To be found, a device must send a response to said search request, as discussed previously, to the source IP address and port of the control point that sent the request to the multicast channel. Responses to M-Search are intentionally parallel to advertisements, and as such, follow the same pattern as listed for "NOTIFY" with
"ssdpralive" except the "NT" header there is an "ST" header here. The response is in this embodiment sent in the following format. Values in the brackets are placeholders for actual values.
HTTP/1.1 200 OK
CACHE-CONTROL: max-age = <seconds until advertisement expires>
EXT:
LOCATION: <URL to device description of root device>
SERVER: <OS>/<version> UPnP/2.0 <product>/<version> ST: group:<group-UUID>
USN: uuid:<device-UUID>: :group:<group-UUID>
The "ST" header contains the prefix "group:" followed by the universally unique identifier (UUID) of the group the device belongs to. The USN header contains basically the same value as the ST header, but prefixed by the UUID of the device. Accordingly, the devices are adapted to receive said search request from the control point and compare whether they belong to the group specified by the "<group-UUID>" in the search request. If that's the case, the matching devices send a search response message to the control point comprising the "UUID" of the devices and the "UUID" of the group thereby all the necessary information about the devices. Thereby a control point can discover all available devices in the group.
If the search request contains as search target "group:all", all devices belonging to any group send a response message for each of their group memberships. Thereby a control point can discover all available groups and all group memberships of all devices.
Due to the unreliable nature of UDP, devices preferably send each response more than once. Fig. 2 shows a message flow of a medical sensor attached to a patient and exposed as an UPnP device 209 on a hospital network to an UPnP control point 210, as it advertises its group membership to the control point 210. It is assumed that the medical sensor knows the patient it is attached to (e.g. by exploiting RFID technology for automatic patient identification) and its current location (e.g. by exploiting RF-based indoor positioning systems). The first four advertisements messages 201-204, are the same as defined in the UPnP device architecture 1.0. The first advertisement message relates to the unique identifier "UUID" of the device (Adv. "uuid:<dev.-UUID>") 201, the second to the type/version of the device (Adv. "urn:sche.-upnp-org:dev. :<dev.Typ.>:-<vers.>") 202, the third to the root device (Adv. "Upnp:R-dev") 203 and the fourth advertisement is the service type of the device (Adv. "urn:sche..-upnp-org.serv.:<serv.Typ.>:-<vers.>") 204. The fifth and the sixth advertisement messages are for announcing the group memberships of the device 209. The fifth advertisement relates to the group "Patientl" (e.g. group 2 107 in Fig. 1) (Adv."Gr.:Pat.l") 205 and the sixth advertisement is the group "Floor 1" (Adv. "Gr.:Fl.l") 206. Accordingly, the device 209 is associated to two groups; the first group relating to the patient ("Patientl") and the second group relating to the floor of the hospital ("Floorl"). Therefore, the patient can be transferred to another floor, e.g. second floor, without having to recreate the group "Patientl" with all the associated medical sensors. Only the group relating to the floor needs to be changed. This is illustrated in the seventh advertisement, wherein the device 209 (e.g. triggered by a notification of an indoor positioning system) revokes the "Floorl" group announcement by sending a ByeBye message (BB. "Gr.rFl.l") 207. In the eighth advertisement, the device 209 announces its new membership to the "Floor2" (Adv. "Gr.:F1.2") 208.
Fig. 3 shows a message flow caused from a control point 301 searching for all devices belonging to the group "Patientl", the group "Patient2", and group "Floorl" in sequence. The devices 302-304 are attached to "Patientl", the devices 305-307 are attached to "Patient2", and all devices 302-207 are at "Floorl". At first, the control point 301 sends a multicast search request (M-Search) (Se. f. "gr.:Pat.l") 308 to all the devices 302-307. Those devices belonging to the group "Patientl", i.e. devices 302-304, send a search response (Se. Resp.) 309-311 to the control point 301 with all the necessary information of the devices 302- 304. In one embodiment this is done by sending a URL (Uniform Resource Locator) to its device description to the control point 301, which subsequently can start using the discovered devices. The control point 301 also sends a multicast search request (Se. f. "gr.:Pat.2") 312 to all the devices 302-307 in the same way. Those devices belonging to the "Patient2" group, i.e. devices 305-307, send a search response (Se. Resp.) 313-315 to the control point 301 with all the information necessary for using the devices. At last, the control point 301 searches (Se. f. "gr.:Fl.l") 316 for all the devices
302-307 belonging to group "Floorl". Since all the devices also belong to this group all the devices send a search response (Se. Resp.) 317-322 to the control point 301 with all the information necessary for using the devices.
Fig. 4 shows a message flow caused from a control point 401 searching for all devices 402-407 belonging to any group by sending a search request message with the common group identifier "group:all" representing any group as search target. At first, the control point 401 sends a multicast search request (M-Search) (Search for "group:all") 408 to all the devices 402-407. All devices belonging to any group, i.e. devices 402-407, send a search response (Search Response) 409-420 to the control point 401 for all groups they are belonging to with all the necessary information of the devices 402-407. For example device 402 which belongs to two groups ("Patientl" and "Floorl") sends a search response message 409 for the group "Patientl" and a further search response message 410 for the group membership in group "Floorl". The other devices 403-407 respond in the same way. Thereby, the control point 401 learns all available groups in the network and all group memberships of all devices.
It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design many alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word 'comprising' does not exclude the presence of other elements or steps than those listed in a claim. The invention can be implemented by means of hardware comprising several distinct elements and by means of a suitably programmed computer. In a device claim enumerating several means, several of these means can be embodied by one and the same item of hardware. The mere fact that certain measures are recited in mutually different, dependent claims does not indicate that a combination of these measures cannot be used to advantage.

Claims

1. A method of grouping devices logically belonging together in groups wherein said devices and said groups are uniquely identified by unique identifiers, and wherein the grouping of said devices is announced to one or more control points, the method comprising the steps of: - associating the unique identifiers of said devices with the unique identifiers of said groups, and announcing said associated unique identifiers to said control points.
2. A method according to claim 1, wherein announcing an individual group membership of a device comprises sending a multicast message comprising said unique identifiers from said device to said one or more control points.
3. A method according to claim 1, further comprising canceling an individual group membership of a device by announcing said unique identifier of said device to said one or more control points along with the associated unique group identifier.
4. A method according to any of the preceding claims, wherein canceling an individual group membership of a device comprises sending a multicast message from said device to said one or more control points comprising said unique identifiers.
5. A method according to any of the preceding claims, wherein announcing said associated unique identifiers to said control points is a response to a search request message from said one or more control points.
6. A method according to claim 5, wherein said search request comprises a request message comprising a request for discovering all devices within a particular group by specifying the unique group identifier of the group the control point is interested in.
7. A method according to claim 5, wherein said search request comprises a request message comprising a request for discovering all available groups and all devices within said groups by specifying a common group identifier representing any group.
8. A method according any of the preceding claims, wherein announcing said unique identifiers to said one or more control point is associated with a time limit.
9. A method according to any of the preceding claims, wherein said multicast message comprising said unique identifiers which is sent to said one or more control points periodically by said devices.
10. A method according to any of the preceding claims, wherein said devices are adapted to be members of more than one group simultaneously.
11. A computer-readable medium having stored therein instructions for causing a processing unit to execute a method according to claim 1-10.
12. A system grouping devices logically belonging together in groups wherein said devices and said groups are uniquely identified by unique identifiers, and wherein the grouping of said devices is announced to one or more control points, comprising: means for associating the unique identifiers of said devices with the unique identifier of said groups, and means for announcing said associated unique identifiers to said control points.
13. A system according to claim 12, wherein said devices are Universal Plug and
Play (UPnP) devices and said control point is an UPnP control point.
14. A control point for discovering devices logically belonging together in one or more groups, wherein said devices and said groups are uniquely identified by unique identifiers and associated together by associating the unique identifiers for said devices with the unique identifier for said groups, and wherein said devices belonging together in said groups are adapted to announce their unique identifiers to said control point and thereby uniquely identify them to said control point.
PCT/IB2005/053733 2004-11-18 2005-11-14 Method and system for grouping networked devices together in groups WO2006054223A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP04105899 2004-11-18
EP04105899.1 2004-11-18

Publications (1)

Publication Number Publication Date
WO2006054223A1 true WO2006054223A1 (en) 2006-05-26

Family

ID=36051577

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2005/053733 WO2006054223A1 (en) 2004-11-18 2005-11-14 Method and system for grouping networked devices together in groups

Country Status (1)

Country Link
WO (1) WO2006054223A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103608790A (en) * 2011-06-24 2014-02-26 索尼公司 Information processing device, program, information processing method, and information processing system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1225753A2 (en) * 2001-01-18 2002-07-24 Siemens Aktiengesellschaft Distributed call distribution system
EP1253766A2 (en) * 2001-04-24 2002-10-30 Sun Microsystems, Inc. Peer group name server
US20040208159A1 (en) * 2003-04-16 2004-10-21 Samsung Electronics Co., Ltd. Network device, system and method for providing list of controlled devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1225753A2 (en) * 2001-01-18 2002-07-24 Siemens Aktiengesellschaft Distributed call distribution system
EP1253766A2 (en) * 2001-04-24 2002-10-30 Sun Microsystems, Inc. Peer group name server
US20040208159A1 (en) * 2003-04-16 2004-10-21 Samsung Electronics Co., Ltd. Network device, system and method for providing list of controlled devices

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103608790A (en) * 2011-06-24 2014-02-26 索尼公司 Information processing device, program, information processing method, and information processing system
EP2724238A4 (en) * 2011-06-24 2015-07-22 Sony Corp INFORMATION PROCESSING DEVICE, PROGRAM, INFORMATION PROCESSING METHOD, AND INFORMATION PROCESSING SYSTEM
US9424207B2 (en) 2011-06-24 2016-08-23 Sony Corporation Information processing device, program, information processing method, and information processing system

Similar Documents

Publication Publication Date Title
KR102166992B1 (en) Enable multicast for service layer group operation
US20070195760A1 (en) Light weight service discovery protocol
US9813845B2 (en) Method and apparatus for bluetooth connection
KR101428505B1 (en) Method and apparatus of automated discovery in communication network
JP5971488B2 (en) Network address assignment
JP4203014B2 (en) Automatic search method between devices in a network
US8060588B2 (en) Home network apparatus and system for cooperative work service and method thereof
EP1542409A1 (en) Protocol for multi-hop ad-hoc networks
US20090141692A1 (en) Optimized ad hoc networking
JP2007524312A (en) Method and system for secure pairing of wireless communication devices
JP6624619B2 (en) Resource subscription method, resource subscription device, and resource subscription system
EP1517488A3 (en) Mechanism for improving connection control in peer-to-peer ad-hoc networks
JP2002190816A (en) Wireless communication system
JP2006519431A (en) Method and system for reacting to changes in UPnP devices
US20120324366A1 (en) System and a method for remotely using electrical devices
EP1712066A1 (en) Zero-configuring ip addresses for peer-to-peer networks
JP7110187B2 (en) Proximity service access in mobile communication networks
US20060072477A1 (en) Using configuration identifiers for communicating configuration descriptions
JP2004320741A (en) Apparatus and method for connecting individually and independently existing networks
JP2017016874A (en) Control device and control system
Errobidart et al. Offline domotic system using voice comands
WO2006054223A1 (en) Method and system for grouping networked devices together in groups
EP3989610B1 (en) Device, system and method for clustering ble devices
EP2340625B1 (en) Method and apparatus for updating and providing presence information based on position information
Grigoras et al. Cost-effective mobile ad hoc networks management

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KN KP KR KZ LC LK LR LS LT LU LV LY MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 05812859

Country of ref document: EP

Kind code of ref document: A1