Abstract:
A method of transferring ownership of a service group (SG) for a communication system comprising a server is disclosed. The service group comprises a first plurality of network elements. The method comprises receiving an owner transfer request that is transmitted from a first network element of the service group, wherein the first network element possesses the ownership of the service group; and selecting a second network element from the first plurality of network elements of the service group according to a selection procedure, to transfer the ownership of the service group from the first network element to the second network element; wherein the first network element and the second network element are managed by a first network gateway and a second network gateway of the communication system, respectively.

Description:
CROSS REFERENCE TO RELATED APPLICATIONS 
     This application claims both the benefit of U.S. Provisional Application No. 61/376,685, filed on Aug. 25, 2010, entitled “Method of Service Group Owner Transfer in CPNS”, and the benefit of U.S. Provisional Application No. 61/379,398, filed on Sep. 2, 2010, entitled “Method of Service Group Owner Transfer in CPNS”, the contents of which are incorporated herein in their entirety. 
    
    
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a method used in a communication system and related communication device, and more particularly, to a method of transferring ownership of a service group in a communication system and related communication device. 
     2. Description of the Prior Art 
     The Open Mobile Alliance (OMA) is founded to develop OMA specifications for mobile services to meet users&#39; needs. Furthermore, the OMA specifications aim to provide the mobile services which are interoperable across geographic areas (e.g. countries), operators, service providers, networks, operation systems and mobile devices. In detail, the mobile services conforming to the OMA specifications can be used by the users without restriction to particular operators and service providers. The mobile services conforming to the OMA specifications are also bearer agnostic, i.e., the bearer that carries the mobile services can be a second generation (2G) mobile system such as GSM, EDGE or GPRS, or a third generation (3G) and beyond mobile system such as UMTS, LTE or LTE-Advanced. Further, the mobile services can be executed on an operation system such as Windows, Android or Linux operated on various mobile devices. Therefore, industries providing devices or the mobile services supporting the OMA specifications can benefit from a largely growing market enabled by interoperability of the mobile services. Besides, the users use the devices or the mobile services supporting the OMA specifications can also have a better experience due to the interoperability of the mobile services. 
     Furthermore, Converged Personal Network Services (CPNS) is developed by the OMA to provide application-layer support for ubiquitous access to services in a converged network, which is a group of Personal Networks (PNs) that are interconnected by PN Gateways (PN GWs). In detail, an architecture of the CPNS includes three entities which are a CPNS server, a PN GW, and one or more PN elements (PNEs). The CPNS server receives requests from the PN GW, and replies responses to the PN GW, to ensure that appropriate applications are selected and appropriate contents are provided to the PNEs via the PN GW. The PN GW serves as an intermediary entity between the PNEs and other networks that forwards the requests and the responses between the PNEs and the other networks. The PN GW can be a mobile phone, or an IP-enabled set-top box. Besides, the PNEs are PN entities that are connected to the PN GW and between each other, and are used for rendering the content received from the PN GW or from each other. The PNE can be a mobile phone, a personal computer (PC), a music player, a car navigation system or an IP-enabled set-top box. For example, a PN GW can be a mobile phone which integrates a Bluetooth network and a cellular network. In this situation, a PNE which is a Personal Media Player (PMP) connected to the Bluetooth network can receive video contents from the Internet via the mobile phone connected to the cellular network. 
     On the other hand, the OMA develops a concept of service group (SG) for the CPNS. The SG is composed of one or more PN GWs and one or more PNEs, which are necessary for the SG to operate normally. The intention of the service group is to group together PNEs which want to receive the same service from a CPNS server or a content provider. In other words, for those PNEs that want to receive a game service can belong to a SG receiving the game service, and for those PNEs that want to receive a music service can belong to a SG receiving the music service. Besides, a PNE creating a SG is assigned as a SG Owner. The SG owner possesses ownership of the SG for managing the SG by inviting a new SG member, expelling a SG member, deleting the SG, etc. Further, a PNE belonging to the SG can leave the SG or abandons to be the owner by sending a SG Leave Request to a corresponding CPNS server via a PN GW managing the PNE. However, when the SG owner leaves the SG or abandons to be the owner, the SG cannot be managed by any other PNEs without the ownership of the SG. The SG will no longer operate normally. Therefore, how to handle the problem when the SG owner intends to leave the SG is a topic to be discussed and addressed. 
     SUMMARY OF THE INVENTION 
     The invention therefore provides a method of transferring ownership of a service group to solve the abovementioned problems. 
     A method of transferring ownership of a service group (SG) for a communication system comprising a server is disclosed. The service group comprises a first plurality of network elements. The method comprises receiving an owner transfer request that is transmitted from a first network element of the service group, wherein the first network element possesses the ownership of the service group; and selecting a second network element from the first plurality of network elements of the service group according to a selection procedure, to transfer the ownership of the service group from the first network element to the second network element; wherein the first network element and the second network element are managed by a first network gateway and a second network gateway of the communication system, respectively. 
     These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a schematic diagram of an exemplary communication system according to the present invention. 
         FIG. 2  is a schematic diagram of an exemplary communication device according to the present invention. 
         FIG. 3  is a flowchart of an exemplary process according to the present invention. 
         FIG. 4  is a transmission sequence diagram of an exemplary process according to the present invention. 
     
    
    
     DETAILED DESCRIPTION 
     Please refer to  FIG. 1 , which is a schematic diagram of a communication system  10  according to an example of the present invention. The communication system  10  supports Converged Personal Network Services (CPNS) developed by the Open Mobile Alliance (OMA). The communication system  10  is briefly composed of a CPNS server CS, PN gateways (PN GWs) PG_A and PG_B, and PN elements (PNEs) P_ 1 -P_ 6 . In practice, an amount of the PN GWs is not limited to two, and an amount of the PNEs managed by each PN GW is also not limited to three. 
     In detail, in the communication system  10 , the CPNS server CS receives requests from a PN GW, and replies responses to the PN GW, to ensure that appropriate applications are selected and appropriate contents are provided to a PNE managed by the PN GW. A PN GW (e.g. PN GW PG_A or PN GW PG_B) serves as an intermediary entity between the PNE and other networks that forwards the requests and the responses between the PNE and the other networks. In the communication system  10 , the PNEs P_ 1 -P_ 3  are managed by the PN GW PG_A, and the PNEs P_ 4 -P_ 6  are managed by the PN GW PG_B. In other words, the PN GW PG_A forwards requests, responses and services between the PNEs P_ 1 -P_ 3  and the CPNS server CS. Similarly, the PN GW PG_B forwards requests, responses and services between the PNEs P_ 4 -P_ 6  and the CPNS server CS. Preferably, the PN GW can be a mobile phone, or an IP-enabled set-top box. The PNE (e.g. any one of the PNEs P_ 1 -P_ 6 ) is a PN entity that is connected to a corresponding PN GW managing the PNE and between each other, and is used for rendering the content received from the corresponding PN GW or from each other. The PNE can be a mobile phone, a personal computer (PC), a music player, a car navigation system or an IP-enabled set-top box. Besides, PNEs P_ 2 -P_ 4  in the communication system  10  belong to a service group (SG) S_ 1 . Therefore, the PNEs P_ 2 -P_ 4  can receive the same service (e.g. a game service or a music service) from the CPNS server CS or a content provider. Without loss of generality, the PNE P_ 2  is assumed as the SG owner of the SG S_ 1 , and possesses ownership of the SG S_ 1  for managing the SG S_ 1  by inviting a new SG member, expelling a SG member, deleting the SG S_ 1 , etc. 
     Please refer to  FIG. 2 , which is a schematic diagram of a communication device  20  according to an example of the present invention. The communication device  20  can be any one of the CPNS server CS, the PN GWs PG_A and PG_B, and the PNEs P_ 1 -P_ 6  shown in  FIG. 1 , but is not limited herein. The communication device  20  may include a processor  200  such as a microprocessor or Application Specific Integrated Circuit (ASIC), a storage unit  210  and a communication interfacing unit  220 . The storage unit  210  may be any data storage device that can store a program code  214 , accessed by the processor  200 . Examples of the storage unit  210  include but are not limited to a subscriber identity module (SIM), read-only memory (ROM), flash memory, random-access memory (RAM), CD-ROM/DVD-ROM, magnetic tape, hard disk, and optical data storage device. The communication interfacing unit  220  is preferably a transceiver and can exchange signals with the server according to processing results of the processor  200 . 
     Please refer to  FIG. 3 , which is a flowchart of a process  30  according to an example of the present invention. The process  30  is utilized in the communication system  10  shown in  FIG. 1 , to transfer ownership of the SG S_ 1  in the communication system  10 . The process  30  may be compiled into the program code  214  and includes the following steps: 
     Step  300 : Start. 
     Step  302 : Receive an SG owner transfer request that is transmitted by the PNE P_ 2  of the SG S_ 1 , wherein the PNE P_ 2  possesses the ownership of the SG S_ 1 . 
     Step  304 : Select a new owner from the PNEs P_ 3 -P_ 4  of the SG S_ 1  according to a SG owner selection procedure, to transfer the ownership of the SG S_ 1  from the PNE P_ 2  to the new owner. 
     Step  306 : End. 
     When the owner of the SG S_ 1  (which possesses the ownership of the SG S_ 1 ), the PNE P_ 2 , intends to leave the SG S_ 1  or intends no to be the owner of the SG S_ 1 , the PNE P_ 2  transmits an SG owner transfer request to the CPNS server CS. According to the process  30 , after the CPNS server CS receives the SG owner transfer request from the PNE P_ 2 , the CPNS server CS selects the new owner from the PNEs P_ 3 -P_ 4  of the SG S_ 1  according to the SG owner selection procedure, to transfer the ownership of the SG S_ 1  from the PNE P_ 2  to the new owner. Besides, as the PNE P_ 2  is managed by the PN GW PG_A, the new owner may be a PNE managed by the PN GW PG_A or the PN GW PG_B according to the selection of the CPNS server CS. Therefore, when the PNE P_ 2  sends the SG owner transfer request to the CPNS server CS due to that the PNE P_ 2  intends to leave the SG S_ 1  or intends no to be the owner of the SG S_ 1 , i.e., abandon the ownership of the SG S_ 1 , the CPNS server CS can select the new owner for the SG S_ 1  to operate normally. 
     Please note that, the spirit of the present invention is that the CPNS server CS selects the new owner from the PNEs P_ 3 -P_ 4  of the SG S_ 1  according to the SG owner selection procedure, when the PNE P_ 2  intends to abandon the ownership of the SG S_ 1 , wherein signalings and processes occurred between the CPNS server CS, the new owner, the PNE P_ 2 , and related PN GWs are not limited herein. For example, please refer to  FIG. 4 , which is a transmission sequence diagram of the communication system  10  according to an embodiment of the present invention.  FIG. 4  illustrates the signalings and the processes occurred in the communication systems  10  when the PNE P_ 2  intends to abandon the ownership of the SG S_ 1 . 
     In detail, when the PNE P_ 2  intends to abandon the ownership of the SG S_ 1 , the PNE P_ 2  transmits a SG owner transfer request to the PN GW PG_A which manages the PNE P_ 2 . Then, the PN GW PG_A forwards the SG owner transfer request to the CPNS server CS. After receiving the SG owner transfer request from the PN GW PG_A, the CPNS server CS determines whether the PNE P_ 2  possesses the ownership of the SG S_ 1 , to avoid that the ownership is transferred accidentally due to a fake request transmitted by a hostile PNE. If the CPNS server CS confirms that the PNE P_ 2  possesses the ownership of the SG S_ 1 , the CPNS server CS starts to select a new owner from the PNEs P_ 3 -P_ 4  of the SG S_ 1  according to a SG owner selection procedure. Without loss of generality, the PNE P_ 4  is assumed to be selected as the new owner according to the SG owner selection procedure. Then, the CPNS server CS forwards the SG owner transfer request to the PNE P_ 4  via the PN GW PG_B which manages the PNE P_ 4 . 
     Further, the PNE P_ 4  decides whether to accept the ownership of the SG S_ 1  or not, after receiving the SG owner transfer request. If the PNE P_ 4  accepts the ownership of the SG S_ 1 , the PNE P_ 4  transmits a SG owner transfer response to the CPNS server CS to indicate acceptance of the ownership of the SG S_ 1  via the PN GW PG_B. After confirming the acceptance of the ownership of the SG S_ 1 , the CPNS server CS forwards the SG owner transfer response to the PNE P_ 2  via the PN GW PG_A, to indicate that the ownership of the SG S_ 1  has been transferred. Further, the CPNS server CS broadcasts a SG owner change notification in the SG S_ 1  to notify each PNE of the SG SG_ 1  that the ownership of the SG S_ 1  is transferred to the PNE P_ 4 . Therefore, according to the transmission sequence diagram shown in  FIG. 4 , when the PNE P_ 2  intends to abandon the ownership of the SG S_ 1 , the new owner is selected such that the SG S_ 1  can continue to operate normally. 
     On the other hand, if the PNE P_ 4  rejects the ownership of the SG S_ 1 , the PNE P_ 4  transmits a SG owner transfer response to the CPNS server CS to indicate rejection of the ownership of the SG S_ 1  via the PN GW PG_B. In this situation, the ownership is not transferred, and the PNE P_ 2  remains the owner of the SG S_ 1 . 
     Please note that, the SG owner selection procedure is used by the CPNS server CS to select a PNE in the SG S_ 1  as the new owner, and a criterion used in the SG owner selection procedure may base on capability of a PNE, choice of the CPNS server CS, service description, operator&#39;s policy and/or recommendation of the SG owner (e.g. the PNE P_ 2 ), and is not limited herein. For example, the CPNS server CS can select a PNE in the SG S_ 1  which has the smallest latency from the CPNS server CS as the new owner. A latency of each PNE of the SG S_ 1  can be obtained by sending a ping to each PNE of the SG S_ 1 . In case there are multiple PNEs having the smallest latency from the CPNS server CS, the CPNS server CS can randomly select a PNE from the multiple PNEs as the new owner. Alternatively, the CPNS server CS can select a PNE in the SG S_ 1  which was previously assigned as the owner of the SG S_ 1  most frequently as the new owner. In this situation, the CPNS server CS must have an amount of times that a PNE was assigned as the owner of the SG S_ 1 . In case there are multiple PNEs being previously assigned as the owner of the SG S_ 1  most frequently, the CPNS server CS can randomly select a PNE from the multiple PNEs as the new owner. Besides, the CPNS server CS can select a PNE in the SG S_ 1  which stays in the SG S_ 1  for the longest period as the new owner, since the PNE may not leave the SG S_ 1  for a certain period. In this situation, the CPNS server CS must have information about how long a PNE stays in the SG S_ 1 . In case there are multiple PNEs staying in the SG S_ 1  for the longest period, the CPNS server CS can randomly select a PNE from the multiple PNEs as the new owner. Oppositely, the CPNS server CS can also select a PNE in the SG S_ 1  which stays in the SG S_ 1  for the shortest period as the new owner, since the PNE may stay in the SG S_ 1  for a certain period to complete receiving services. In this situation, the CPNS server CS must also have information about how long a PNE stays in the SG S_ 1 . In case there are multiple PNEs staying in the SG S_ 1  for the shortest period, the CPNS server CS can randomly select a PNE from the multiple PNEs as the new owner. In short, any criterion can be used in the SG owner selection procedure as long as the criterion is suitable for the SG S_ 1 . 
     On the other hand, for the communication system  10  to operate normally, entities related to operation of the SG S_ 1  such as the CPNS server CS, the PN GWs PG_A and PG_B and the PNEs P_ 2 -P_ 4 , should maintain their SG inventories corresponding to the SG S_ 1  locally. In other words, the entities should maintain their SG inventories to record related information, such as the owner of the SG S_ 1 . Therefore, when a PNE leaves/joins the SG S_ 1 , or the owner of the SG S_ 1  is changed, the entities updates their SG inventories accordingly. For example, the CPNS server CS, the PN GWs PG_A and PG_B, and the PNE P_ 4  update their SG inventories after receiving the SG owner transfer response indicating the acceptance of the ownership of the PNE P_ 4 , as shown in the transmission sequence diagram in  FIG. 4 . In short, the entities related to the SG S_ 1  update their SG inventories when the ownership is transferred. The methods according to which the entities confirm that the ownership is transferred are not limited herein. As known to those skilled in the art, a SG inventory is a list of SG(s) and the information of SGs which includes information of group members therein. 
     Please note that, the PNE P_ 2  and the PNE P_ 4  belong to different PN GWs in the above illustration. However, it may happen that the CPNS server CS selects the PNE P_ 3  as the new owner according to the SG owner selection procedure, i.e., the owner and the new owner belong to the same PN GW. In this situation, the process  30  directly applies. Further, those skilled in the art can accordingly obtain a corresponding transmission sequence diagram similar to that in  FIG. 4 , e.g., modify the transmission sequence diagram in  FIG. 4  by replacing the PN GW PG_B and the PNE P_ 4  with the PN GW PG_A and the PNE P_ 3 , respectively, to obtain the corresponding transmission sequence diagram. 
     The abovementioned steps of the processes including suggested steps can be realized by means that could be a hardware, a firmware known as a combination of a hardware device and computer instructions and data that reside as read-only software on the hardware device or an electronic system. Examples of hardware can include analog, digital and mixed circuits known as microcircuit, microchip, or silicon chip. Examples of the electronic system can include a system on chip (SOC), system in package (SiP), a computer on module (COM) and the communication device  20 . 
     In conclusion, the present invention discloses a method of transferring ownership of a SG in a communication system and related communication device. A CPNS server will select a new owner according to the method, when the owner of the SG intends to leave the SG or intends no to be the owner of the SG. Since the new owner is selected according to the present invention if above situations occur, the SG can continue to operate normally. 
     Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention. Accordingly, the above disclosure should be construed as limited only by the metes and bounds of the appended claims.