WO2005094108A1 - Method and devices for relayed peer-to-peer communications between terminals in mobile networks - Google Patents

Method and devices for relayed peer-to-peer communications between terminals in mobile networks Download PDF

Info

Publication number
WO2005094108A1
WO2005094108A1 PCT/IB2004/000659 IB2004000659W WO2005094108A1 WO 2005094108 A1 WO2005094108 A1 WO 2005094108A1 IB 2004000659 W IB2004000659 W IB 2004000659W WO 2005094108 A1 WO2005094108 A1 WO 2005094108A1
Authority
WO
WIPO (PCT)
Prior art keywords
peer
data
relay
communication
mobile terminal
Prior art date
Application number
PCT/IB2004/000659
Other languages
French (fr)
Inventor
Olli Rantapuska
Jaakko TEINILÄ
Original Assignee
Nokia Corporation
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 Nokia Corporation filed Critical Nokia Corporation
Priority to PCT/IB2004/000659 priority Critical patent/WO2005094108A1/en
Publication of WO2005094108A1 publication Critical patent/WO2005094108A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/04Terminal devices adapted for relaying to or from another terminal or user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/04Protocols specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1063Discovery through centralising entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/04Large scale networks; Deep hierarchical networks
    • H04W84/042Public Land Mobile systems, e.g. cellular systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W92/00Interfaces specially adapted for wireless communication networks
    • H04W92/16Interfaces between hierarchically similar devices
    • H04W92/18Interfaces between hierarchically similar devices between terminal devices

Definitions

  • the present invention relates to a method and devices for peer-to-peer communications in mobile networks and especially to relayed peer-to-peer communications between mobile terminals operable in public land mobile networks (PLMN).
  • PLMN public land mobile networks
  • packet switched data services such as for instance general packet radio services (GPRS) available in global system for mobile communication (GSM) and implemented in state of the art mobile terminals have been introduced and standardized with regard to client-server interoperability constituted between a client mobile terminals being part of a cellular network and server devices being part of a packet switched fixed network such as the internet.
  • GPRS general packet radio services
  • GSM global system for mobile communication
  • Both cellular networks (or public land mobile networks PLMNs) and the fixed networks are interconnected via appropriate gateway network entities.
  • NAT network address translation
  • NAT network address translation
  • NAT technique is usually well known in local area networks (LANs) environments connecting local terminal device via data routing network entities (i.e. for instance a router, a gateway, an access server etc.) capable for NAT with a wide area network (WAN) that is particularly the internet.
  • LANs local area networks
  • data routing network entities i.e. for instance a router, a gateway, an access server etc.
  • WAN wide area network
  • packet switched networks in mobile communications is adequately adapted for data communications with fixed server devices in fixed packet switched networks for instance comprising typically browsing WAP/WEB pages, retrieving email communication and like client-server application scenarios.
  • packet switched networks in mobile communications does not allow for direct terminal peer-to-peer data communications between two mobile terminal devices, since especially the employed NAT technique prevents initiation of direct terminal peer-to-peer connections.
  • the coded dedicated server entity usually provides a so-called server lobby area or a likewise procedure in which for instance currently present participants are listed by identifiers such as nicknames.
  • the user is enabled to choose one or more present participants to be invited for data exchange. Be informed that participants shall be understood as users' mobile terminal devices being connected to the dedicated service device and performing client applications that correspond to the aforementioned client application or that are at least similar in function.
  • the network environment addresses the dedicated server entity especially technical requirement thereof.
  • each such terminal application as stated above, requires a separate dedicated server entity set-up therefor. That means, that once a dedicated server entity is not available any more the application is simultaneously not operable any more.
  • the bounding of applications to particular dedicated server entities is normally disadvantageous in a fast changing technical and economical environment, since operation of such dedicated server entities have to be maintained and operators of the dedicated server entities may stop services due to economical or technical reasons implying a loss of the communication function of applications requiring the dedicated server entities.
  • An object of the present invention is to provide peer-to-peer connectivity between at least two terminals in cellular networks. Especially, an object of the present invention is to provide quasi peer-to-peer connectivity via data packet switched communication services applicable for exchanging data between several mobile terminals capable for data communication via data packet switched communication services in cellular networks.
  • a further object of the present invention is to overcome the hitherto used agreement requirements, which have to be made between users that whish to participate in the data exchange, by a user-friendly procedure minimizing the user interaction required for making use of the peer-to-peer connectivity.
  • the objects of the present invention are solved by method for network devices, terminal devices and systems to allow for quasi peer-to-peer data exchange between several mobile terminals operable cellular networks by relaying data to be communicated peer-to-peer via data relay services.
  • the objects of the present invention are also solved by devices, network devices, terminals, mobile terminals and systems applicable to operate the aforementioned methods according to embodiments of the invention.
  • the inventive peer-to-peer connectivity between mobile tenninals in mobile networks is operable with any application operable on the mobile terminals.
  • the inventive peer- to-peer connectivity uses a generic data relay entity which allows for exchanging arbitrary data contents and substituting the plurality of separate dedicated and specialized server entities as described above.
  • the peer-to-peer connectivity according to the present invention implements further a semi-automatic notification mechanism including transmitting of information and configuration data relating to the peer-to-peer connectivity.
  • a method for enabling quasi peer-to-peer connectivity between mobile terminals subscribed in cellular networks by the means of a relay entity is provided.
  • a quasi peer-to-peer communication is established.
  • Several mobile terminals participate in the established quasi peer-to-peer communication to communicate data with each other in a kind of broadcast communication.
  • This means, data is received from one mobile terminal, which is one out of a set of mobile terminals, which all participate in a common quasi peer-to-peer data communication for exchanging data with each other.
  • Information about destination mobile terminals is retrieved/identified.
  • the destination mobile terminals are all mobile terminals out of the set of mobile terminals except that one mobile tenninal, which has previously transmitted the data.
  • the data is replayed/replicated such that the data can be transmitted to the destination mobile terminals on the basis of the retrieved information.
  • the relay entity is responsible for message communication processing relating to the aforementioned establishment of the employed quasi peer-to-peer data communication.
  • the processing of the message communication comprises receiving of messages, processing them in accordance with the contents of the received messages and generating corresponding messages in fonn of requests and acknowledgements on the basis of instructions comprised in received messages. More detailed processing operations are described below.
  • a relay session is associated with the quasi peer- to-peer communication for handing data communication between the set of mobile terminals.
  • the relay session requires to be established first to enable the quasi peer-to-peer communication between the set of mobile terminals, which is performed by an initiating mobile terminal.
  • the relay session forms a basic management entity for associating the mobile terminals out of the set of mobile terminals with the relay session and with the quasi peer-to-peer communication, in which the mobile terminals out of the set of mobile terminals participate.
  • the establishment of the relay session is carried out by receiving an initiation request for initiation of the relay session from an initiating mobile terminal.
  • the initiation request comprises at least information about mobile terminals, which shall be invited to participate in the quasi peer-to-peer data communication and relay session, respectively, and an instruction to initiate and establish a new relay session forming the relay session.
  • an acknowledgement is transmitted to the initiating mobile terminal comprising session information relating to the established relay session.
  • the inviting mobile terminal and at least a subset of the invited mobile terminals form after successful establishment the set of mobile terminals participating in the quasi peer-to-peer data communication.
  • acknowledgements from the invited mobile terminals are received in response to the invitation requests. The acknowledgements inform about acceptance or rejection of the invitation by the addressed invited mobile terminals.
  • the initiation request comprises one or more information out of a set of information comprising an identity information relating to the initiating mobile terminal; an information about an application operable with the quasi peer-to- peer data communication; an information about the invited mobile terminals such a identity information; an authentication information; an encryption information; and an information relating to communication properties of the quasi peer-to-peer data communication.
  • the mobile terminals authenticate before participating in the quasi peer-to-peer communication.
  • the mobile terminals operate over data packet switched services for communicating said data, in particular over general packet radio service (GPRS).
  • GPRS general packet radio service
  • the mobile terminals communicate via at least one of suitable transmission protocols comprising for instance transmission control protocol (TCP) and user datagram protocol (UDP).
  • TCP transmission control protocol
  • UDP user datagram protocol
  • a method for allowing a mobile terminal for quasi peer-to-peer data connectivity with at least one other mobile terminal is provided.
  • a quasi peer-to-peer communication is established between the mobile terminal and the at least one other mobile terminal.
  • the mobile terminal and the at least one other mobile terminal participate in the established quasi peer-to-peer communication to communicate data with each other in a kind of broadcast communication.
  • data which are to be communicated to the at least one other mobile terminal are transmitted to a relay entity, which is responsible for passing on the data to the at least one other mobile terminal.
  • data, which originate from the at least one other mobile terminal are received from the relay entity, which has passed on the data received from the other one mobile terminal.
  • Message communication which relates to the aforementioned establishment of the quasi peer-to-peer data communication is processed by the relay entity.
  • the processing of the message communication comprises receiving of messages, processing in accordance with the contents of the received messages and generating corresponding messages in form of requests and acknowledgements on the basis of instructions comprised in received messages. More detailed processing operations are described below.
  • an initiation request is transmitted to the relay entity, in order to establish the quasi peer-to-peer data communication.
  • the initiation request comprises at least information about the at least one other mobile terminal, which is intended to be invited to participate in the quasi peer-to-peer data communication, and instructions to establish the quasi peer-to-peer data communication.
  • an acknowledgement is received from the relay entity.
  • the acknowledgement comprises at least session information associated with a relay session.
  • the relay session is associated with the quasi peer-to-peer data communication to enable the handling of the data communicated via the quasi peer-to-peer data communication between the mobile terminal and the at least one other mobile terminal. Therefore, data, which are to be communicated to the at least one other mobile terminal are preferably provided with the session information.
  • invitation request is received from the relay entity.
  • the invitation request requests to participate in a quasi peer-to-peer data communication.
  • An acknowledgement is transmitted to the relay entity in consequence of the invitation request, The acknowledgement informs the relay entity about acceptance or rejection of the invitation, h case of acceptance the mobile terminal becomes participant in the quasi peer-to-peer data communication.
  • the initiation request, the invitation request and/or the acknowledgement are communicated via a peer-to-peer communication mechanism, particularly via a peer-to-peer messaging mechanism such as short message service (SMS), smart messaging over SMS, enhanced message service (EMS), multimedia message service (MMS), peer-to-peer instant messaging services etc.
  • SMS short message service
  • EMS enhanced message service
  • MMS multimedia message service
  • peer-to-peer instant messaging services etc.
  • the mobile terminal and/or said at least one other mobile terminal authenticate at the relay entity preferably before data communicating over the quasi peer-to-peer communication in which the mobile terminals participate.
  • the mobile terminals communicate over data packet switched services for communicating the data with the relay entity.
  • Suitable data packet switched services maybe GPRS.
  • the mobile terminals communicate via at least one of suitable transmission protocols comprising for instance TCP and UDP.
  • a method for enabling quasi peer-to-peer data connectivity in a system comprises at least two mobile terminals each of which capable for communicating in a cellular network. Further, the system also comprises a relay entity. Each of the mobile terminals is further adapted to perform operations in accordance with the method for allowing a mobile terminal for quasi peer-to-peer data connectivity with at least one other mobile terminal as aforementioned.
  • the relay entity serves for data relay services and is adapted to perform operations in accordance with the method for enabling quasi peer-to- peer connectivity between mobile terminals subscribed in cellular networks as aforementioned.
  • computer program product for executing a method for executing a method for enabling quasi peer-to-peer connectivity between at least two mobile terminals in cellular communication networks.
  • the computer program product comprises program code sections for carrying out the steps of the method according to an aforementioned embodiment of the invention, when the program is run on a controller, processor-based device, a computer, a terminal, a network device, a mobile terminal, or a mobile communication enabled terminal.
  • an application specific integrated circuit may implement one or more instructions that are adapted to realize the aforementioned steps of the method of an aforementioned embodiment of the invention, i.e. equivalent with the aforementioned computer program product.
  • a computer program product which comprises program code sections stored on a machine-readable medium for carrying out the steps of the method according to an aforementioned embodiment of the invention, when the computer program product is run on a controller, processor-based device, a computer, a terminal, a network device, a mobile terminal, or a mobile communication enabled terminal.
  • a software tool comprises program portions for carrying out the operations of the aforementioned methods when the software tool is implemented in a computer program and/or executed.
  • a computer data signal embodied in a carrier wave and representing instructions is provided which when executed by a processor cause the steps of the method according to an aforementioned embodiment of the invention to be carried out.
  • a relay entity for enabling quasi peer-to-peer connectivity between mobile terminals in cellular communication networks is provided.
  • the relay entity comprises at least a network interface, a protocol handler module and a redirector module.
  • the network interface is adapted for receiving requests and data associated with a quasi peer-to-peer communication and for transmitting responses and said data associated with said quasi peer-to-peer communication.
  • the protocol handler module is adapted to handle and/or manage requests received from the mobile terminals and requests to be transmitted to mobile terminals.
  • the requests comprise at least initiation requests from an initiating mobile terminal, and invitation requests to be transmitted to invited mobile terminals.
  • the redirector module is adapted to handle and manage the data associated with the quasi peer-to-peer communication on the basis of the relay session that is associated with a quasi peer-to-peer communication.
  • the data received from one mobile terminal are transmitted to all remaining ones of said mobile terminals with exception of that one mobile terminal from which the data have been received. This operation may be denoted as passing on of the data and may require a buffering of the data in a suitable buffer storage and a replaying/replicating of the data for transmission to the remaining mobile terminals.
  • the redirector module may be configured by the protocol handler module in accordance with the requests handled thereby.
  • a mobile terminal enabled for quasi peer-to-peer connectivity in a cellular communication network with at least one other mobile terminal comprises at least a cellular communication interface and a peer- to-peer communication module interfacing between said cellular communication interface and at least one application.
  • the cellular communication interface is adapted to transmit data to be communicated to the at least one other mobile terminal by transmitting the data to a relay entity.
  • the cellular communication interface is adapted to receive data originating from the at least one other mobile terminal by receiving the data from the relay entity. The data are associated with a quasi peer-to-peer communication established between the mobile terminal and the at least one other mobile terminal.
  • the cellular communication interface is adapted to transmit messages relating to an establishing of the quasi peer-to-peer data communication to be communicated to the at least one other mobile terminal by transmitting the data to said relay entity; and to receive the message relating to the establishing originating from the at least one other mobile terminal by receiving the message from the relay entity.
  • the message communication includes initiation requests, invitation requests and acknowledgements.
  • the peer-to-peer communication module is adapted to generate and transmit the requests to the relay entity, to supply the data provided by the at least one application to be transmitted to the one other mobile terminal to the cellular communication interface; and to supply the data originating from the at least one other mobile terminal and provided by the communication interface to the at least one application.
  • the mobile terminal comprises also a dispatcher module, which is adapted to parse messages received via a peer-to-peer communication mechanism.
  • the dispatcher module determines whether a received message is a request for invitation. In case this applies, parsing results are supplied to the at least one application such that the at least one application is enabled to use a quasi peer-to-peer communication in which the mobile terminal can participate on the basis of the request for invitation.
  • the mobile terminal comprises additionally a dispatcher database, which is dedicated to register applications operable with the mobile terminal.
  • the dispatcher database stores information relating to associations of application identifiers with applications.
  • the application identifiers are employed to identify applications, which may be addressed by said request for invitation.
  • a system for enabling quasi peer-to-peer connectivity comprising at least two mobile terminals and a relay entity.
  • Each of the mobile terminals is capable for communicating in a cellular network and corresponds to a mobile terminal enabled for quasi peer-to-peer connectivity in a cellular communication network with at least one other mobile terminal as aforementioned.
  • the relay entity serves for data relay services and corresponds to a relay entity for enabling quasi peer-to- peer connectivity between mobile terminals in cellular communication networks as aforementioned.
  • Fig. 1 schematically shows a block diagram of a system allowing for quasi peer-to-peer connectivity between two portable terminals according to an embodiment of the present invention
  • Fig. 2a schematically shows a first sequence diagram illustrating operations of devices in the system allowing for quasi peer-to-peer connectivity according to an embodiment of the present invention
  • Fig. 2b schematically shows a second sequence diagram illustrating operations of devices in the system allowing for quasi peer-to-peer connectivity according to an embodiment of the present invention
  • Fig. 3 a schematically shows a block diagram of components comprised by a network device serving data relay services according to an embodiment of the present invention
  • Fig. 3b schematically shows a block diagram of components comprised by a network device serving information about terminals to be invited according to an embodiment of the present invention
  • Fig. 3c schematically shows a block diagram of components comprised by a mobile terminal according to an embodiment of the present invention.
  • Fig. 3d schematically shows a block diagram of components comprised by a mobile terminal according to an embodiment of the present invention.
  • FIG. 1 shows a schematic architecture of a system allowing for quasi peer-to-peer connectivity between mobile terminals.
  • the depicted system architecture is based on a selection of network devices and entities participating in the peer-to-peer data communication as proposed by the inventive concept framework.
  • the system comprises two terminals A and B and relay R.
  • the terminals A and B represent an arbitrary number of terminals, which may participate in the quasi peer-to-peer connectivity in accordance with the inventive concept framework of the present invention.
  • the quasi peer-to-peer connectivity shall be represented by and understood intellectually as a quasi end-to-end communication connection 10, respectively, wliich is operable as a communication connection between terminals A and B allowing for data communication between those terminals A and B.
  • Terminal A as well as terminal B shall represent illustratively any kind or type of mobile terminals, which are operable with cellular networks and which are capable for wireless data communication.
  • Such terminals may be mobile phones, communicators, personal digital assistants (PDAs), organizers, mobile computers or any consumer electronics (CE) having the aforementioned capabilities.
  • the terminals being utilized in conjunction with the present invention should support data communication via data packet switched services.
  • Typical public land mobile networks support data packet switched services.
  • GSM global system for system for mobile communications
  • GPRS general packet radio system
  • EDGE enhanced data rates for GSM evolution
  • Third-generation mobile communication systems such as UMTS (universal system for mobile telecommunications), IMT-2000 (international mobile telephony), Multicarrier-CDMA (code division multiple access) are typically based one packet switched services for data communication.
  • UMTS universal system for mobile telecommunications
  • IMT-2000 international mobile telephony
  • Multicarrier-CDMA code division multiple access
  • the present invention should neither be limited to a certain type of a terminal, a certain public land mobile network nor to any number of terminals participating in a quasi peer-to-peer communication connection on the basis of the inventive quasi peer-to-peer connectivity.
  • the quasi peer-to-peer connectivity allows for establishing a quasi peer-to-peer communication environment between a set of terminals comprising an arbitrary number of terminals. Arbitrary data contents conveyed by one of the terminals in such a quasi peer-to-peer communication environment are transmitted to all remaining terminals of the environment.
  • the illustrated quasi peer-to-peer communication connection 10 can also be established between three or more terminals, which will be apparent when reading the description referring to the following drawings, hideed, relay R serves for switching transparently the data between the terminals participating in the quasi peer-to-peer communication.
  • the inventive quasi peer-to-peer connectivity may be understood as a virtual communication connection between the terminals participating in the inventive quasi peer-to-peer connectivity. Data communicated via this virtual communication connection is actually communicated via data communication connections between relay R and the participating terminals.
  • the term "quasi peer-to-peer” will be abbreviated as "q-p2p”.
  • q-p2p the q-p2p connectivity between terminal A and terminal B allows terminal A and terminal B to communicate arbitrary data, contents, signals, information and the like between them.
  • the data communication is preferably operable with data packets on the basis of data packet switched services for communication in cellular networks.
  • PLMNs public land mobile networks
  • relay R is introduced into the data flow.
  • Relay R is a network service and functional network entity, respectively, which serves as a data relay service operating switching, relaying and mediating of arbitrary data, respectively.
  • This means that relay R may be a generic server application entity hosted on any arbitrary network server device interposed in the communication path between the terminals participating in the data relay service.
  • Relay R may be part of the fixed network inside a public land mobile network (PLMN) or may be connected to the public land mobile network (PLMN) via a wide area network (WAN) such as the Internet.
  • Terminals A and B connect to relay R communicate wirelessly via one or more radio access networks (RAN) of the one or more cellular networks with relay R. Access points in the cellular networks serve to switch data traffic between cellular networks and relay R.
  • RAN radio access networks
  • relay R receives for instance on the one hand data packets of arbitrary contents from terminal A. Then, relay R replicates or replays the received data packets, in order to finally transmit the replicated data packets to the remaining ten inals participating in the q-p2p communication connectivity (i.e. all terminals except terminal A).
  • terminal B shall represent all remaining participating terminals. Therefore, a data communication connection 11 is established between terminal A and relay R and a data communication connection 12 is established between relay R and terminal B.
  • relay R receives the data from terminal A via the data communication connection 11 and transmits the replicated data via the data communication connection 12 to terminal B.
  • relay R receives for instance on the other hand data packet of arbitrary contents from terminal B, then replicates or replays the received data packets and transmits the replicated data packets to the remaining terminals participating in the q-p2p connectivity (i.e. all terminals except terminal B).
  • terminal A shall represent all remaining participating terminals.
  • the data communication connection 11 and the data communication connection 12 serve in turn for data communication, respectively. Therefore, the data communication connection 11 as well as the data communication connection 12 may be adapted to support packet switched services for data communication.
  • Relay R is responsible for transmitting received data to those terminals only, to which the data are intended, i.e. those terminals, which participate in the q-p2p communication connection 10 with the exception of the data transmitting terminal, from which the data originates.
  • Prerequisites or pre-condition have to be made on side of relay R to ensure the operation according to the inventive concept. Such prerequisites or pre-conditions are issues that will be discussed below.
  • relay R may be connected via a data communication connection to a database DB, which supports the selection of terminals for participating in a q- ⁇ 2p com ectivity according to an embodiment of the present invention.
  • database DB is illustratively depicted in form of an external database entity connected to relay R via a network-based connection 20.
  • the database DB may be implemented or locally connected to relay R. The function and operation of the database DB will be described with reference to the invitation procedure being part of the initiation procedure of a relay session for enabling q-p2p connectivity between terminals.
  • relay R The operation of relay R is described now in detail with reference to Fig. 2a. It shall be assumed that the inventive q-p2p connectivity is employed to establish a q- ⁇ 2p communication connection between terminal A, terminal B, and terminal C. Further it shall be also assumed that terminal A provides data for quasi peer-to-peer transmission to both terminals B and C. Those skilled in the art will appreciate that data provided by anyone of the terminals participating in the q-p2p connectivity illustrated in Fig. 2a are handled in an equal or at least similar way. The invention is not limited to the operation of relay R described with respect to Fig. 2a depicting operational steps of relay R in an illustrative way.
  • terminal A provides data for being transmitted to terminal B and C.
  • the data have arbitrary contents.
  • the data may be generated and/or provided by any application perfonned on terminal A.
  • the invention shall not be limited to any certain data, data contents or application providing the data for transmission.
  • the provided data is transmitted from terminal A to relay R with the intention to be passed on to tenninals B and C.
  • Terminal A, terminal B and terminal C participate in a common q-p2p communication connection established therebetween.
  • the transmission of the data may be performed by a data packet switched service which is operable with the data communication connection to relay R.
  • an adequate transmission protocol is employed for the data communication with relay R such as transmission control protocol (TCP), user datagram protocol (UDP) or any applicable connection-oriented bearer protocol.
  • relay R receives the data from terminal A.
  • the received data may be buffered by relay R before passing on to the terminals B and C, to which the received data are intended.
  • the receiving relay R is capable to identify the sender/originator of the received data, i.e. herein terminal A as data sender/originator.
  • the identification may be based on a corresponding identifier of terminal A received in conjunction with data for example coded for instance in the header of the transfer protocol employed for data transmission from terminal A to relay R.
  • a valid identification may be obtained from a terminal identifier, a session identifier or any other identifier, which identifies the transmitting terminal, i.e. preferably uniquely in the given context.
  • Relay R runs one or more relay sessions to manage the data relay service, which enables the inventive q-p2p connectivity between mobile terminals.
  • Each session is associated with one determined q-p2p data communication connection as described above, which is associated with several terminals participating in the q-p2p data communication connection, i.e. herein terminals A, B and C.
  • relay R is able to identify on the basis of a relay session those terminals, which participate in a q-p2p data communication connection, hi turn this implies that a corresponding relay session is identifiable in accordance with information about one participating terminal, which may be the identifier of the data sender/originator.
  • relay R retrieves information about destination terminals to which the received data have to be passed on.
  • Relay R identifies the relay session in which the terminal A participates and on the basis of knowledge about the relay session the information about the participating terminals, especially address information about the participating terminals, are retrieved. With reference to Fig. 2a, the remaining participating terminals are identified as terminals B and C.
  • relay R replicates or replays the received data for transmission to the terminals participating in the q-p2p connectivity, herein terminals A, B and C.
  • relay R transmits in an operation SI 50 the replicated data to terminals B and C, which have been identified by relay R as remaining terminals participating in the q- ⁇ 2p data communication connection and corresponding relay session, respectively.
  • relay R The establishment of a relay session, which enables relay R to provide data relay services according to an embodiment of the present invention, and the participation of terminals in such a relay session will be described in detail with reference to Fig. 2b.
  • Fig. 2b illustrates a sequence diagram, which comprises operations to be performed by terminal A, relay R and terminal B in a time sequence.
  • a first set of operations relates to an invitation procedure
  • a second set of operations relates to an establishment procedure.
  • the invitation procedure and establishment procedure are applicable with any kind of terminal which is capable for communication with relay R, preferably via one or more cellular networks supporting data packet switched services.
  • a q-p2p communication connection of the basis of the inventive q-p2p connectivity is intended for being established between several terminals, herein terminals A and B for the way of illustration. Assume that the invitation procedure originates as the inviting and initiating terminal, respectively, herein ten inal A.
  • the connection between tenninal A and relay R shall be switched via the cellular network(s) and public land mobile network(s) (PLMN), respectively, into which terminal A is subscribed.
  • PLMN public land mobile network
  • Different data transfer mechanism and data transmission protocols may be employed for data communication between terminals in the cellular network(s) and a relay entity. Terminals as well as the relay entity have to support adequately the chosen transport mechanism and the chosen transmission protocol.
  • the present invention shall neither be limited to any particular data transfer mechanism nor to any distinct data transmission protocol since a broad number of both transport mechanisms and transmission protocols are available in the enlightened network environment for data communication.
  • the data transfer mechanism may be an unreliable packet-based transport mechanism or a reliable stream-based transport mechanism and the transmission protocol may support encryption or may be transparent to intermediate network nodes.
  • terminal A is informed about an address information of relay R, on the basis of which the communication connection can be established.
  • an address information may be provided to users of the terminals in question, who whishes to use the data relay service, by the help of a WEB or WAP page, as an over-the-air service message or by any suitable manner allowing provision of corresponding information.
  • the inviting / initiating terminal A transmits an initiation request and initiation message to relay R, respectively.
  • the initiation message signalizes to relay R that terminal A wants to invite one or more other terminals to participate in a q-p2p connectivity according to an embodiment of the present invention and to establish a q-p2p communication connection for enabling the q-p2p connectivity.
  • the establishing of a q-p2p communication connection will require an initiation and establishment of a relay session.
  • the transmission of the initiation request is preferably operable with any available terminal peer- to-peer communication mechanism provided by the cellular network(s).
  • Current cellular networks provide a number of messaging services, for instance short message service (SMS), smart messaging (SM) being based on SMS, enhanced message service (EMS), multimedia message service (MMS) and instant messaging, but also any other peer-to-peer bearer channel could be used.
  • SMS short message service
  • SM smart messaging
  • EMS enhanced message service
  • MMS multimedia message service
  • instant messaging but also any other peer-to-peer bearer channel could be used.
  • the amount of data of such an initiation request is small. It shall be noted that both the inviting terminal as well as the receiving relay entity has to support adequately the selected peer-to-peer communication mechanism.
  • the initiation request may as well be transmitted via the communication connection and communication channel, respectively, which will be utilized subsequently for data communication in conjunction with the q-p2p communication connection as described with respect to Fig. 2a.
  • the initiation request may comprise authentication information.
  • authentication information relating to the terminals using the data relay service is useful to limit the number of tenninals to a predetermined selection of terminals (closed user group), to realize a commercial data relay service (charging purpose), to realize a reliable and secure communication flow between terminals and relay, etc.
  • relay R receives the initiation request from terminal A.
  • the initiation request may comprises at least one information out of the set of information comprising for instance: information about the identity of the inviting terminal (terminal identifier, subscriber identifier/information, telephone number, user identifier/name etc.); - information about the application which will handle the data communicated via the intended q-p2p communication connection (application identifier, application name etc.); information about the invited terminals (i.e. intended to be invited); authentication information of the inviting terminal; - encryption information to enable encryption of data to be communicated via the intended q-p2p communication connection; and - information about the transfer mechanism, the transmission protocol, communication channel properties etc relating to the communication connecting between terminals and relay.
  • the information about the invited terminals may comprise a list of identifiers (subscriber information, telephone numbers) each of which identifying a terminal, which should be invited. Such a terminal identifier should be applicable for addressing subsequent invitation requests and invitation messages to the invited terminals.
  • the transmission of the subsequent invitation requests to the invited terminals are analogously operable with any available terminal peer-to-peer communication mechanism provided by the cellular network(s).
  • Current cellular networks provide a number of messaging services, for instance short message service (SMS), smart messaging (SM) being based on SMS, enhanced message service (EMS), multimedia message service (MMS) and instant messaging, but also any other peer-to-peer bearer channel could be used.
  • SMS short message service
  • EMS enhanced message service
  • MMS multimedia message service
  • instant messaging but also any other peer-to-peer bearer channel could be used.
  • both the invited terminals as well as the relay entity have to support adequately the selected peer-to-peer communication mechanism.
  • the identification of terminals for being invited can be operated and supported by the database DB illustrated in Fig. 1, respectively.
  • a first approach for supporting the identification of terminals to be invited is based on a grouping mechanism.
  • Information about groups of predetermined terminals is stored in the database DB.
  • the aforementioned initiation request comprises at least identification information relating to the initiating / inviting terminal.
  • That group is selectable, of which the inviting terminal is part.
  • each terminal may be allowed to be part of only one group.
  • each group of predetermined terminals is associated with a group identifier, which for instance is also included in the initiation request e.g. as information about the invited terminals or as a separate information.
  • the group identifier the corresponding group is selectable.
  • the group identifies can be appreciated as referencing information for retrieving information about the invited terminals, comprising identification information of the invited terminals, address information of the invited terminals etc.
  • the database DB maintains and handles several sets of individual information, each set of individual information being associated with a potential tenninal to be invited (i.e. associated with user of the terminal to be invited). Such a set of individual information is preferably pre-configured by the user of the potential terminal and may particularly relate to preferences and properties defined by the user of the potential terminal. The preferences and properties shall be applicable to filter rules being comprised in the initiation request (e.g. as information about the invited terminals), such that one or more matching potential terminals can be selected by a filter operation from the plurality of potential terminals maintained by the database DB.
  • a multiplayer gaming environment may be considered to enlighten the filter mechanism.
  • This aspect of the present invention intends to help individual users to find each other for interacting in the multiplayer gaming environment.
  • a user who intends to participate in a multiplayer gaming environment with other users, may form the starting point. The user may not be in knowledge about potentially interested other users or the user may be interested in interacting with frequent changing other users sharing the same or similar interests.
  • the database DB is informed about preferences, properties and presets associated with each user administrated by the database DB.
  • the preferences, properties and presets may comprise one or more gaming applications or gaming application categories, time schedules, gaming skills, difficulty level, information about the terminal used for gaming, information about the transfer mechanism, the transmission protocol, communication channel properties, encryption information etc.
  • the users taking the advantage of the database DB configures their data including e.g. preferences, properties and presets to the database DB, which stores these data (assuming that no other scat players are already enrolled).
  • the configuration of the database DB may be operable with WEB-based or WAP-based registration and configuration service.
  • relay R On the basis of the information comprised by the initiation request and/or obtained with the help of information included in the initiation request, relay R is able to generate the subsequent invitation requests and messages, respectively, intended for the terminals to be invited.
  • relay R generates one or more individual invitation requests or invitation messages to be transmitted to the invited terminals
  • the individual invitation requests may comprise any information included in the original initiation request received from the inviting terminal, herein terminal A and the individual invitation requests may comprise additionally information provided and/or generated by relay R.
  • the individual invitation requests may comprises at least one information out of the set of information comprising for instance: information about the identity of the inviting terminal; information about the application; session information relating to the intended relay session (session identifier); address information of relay R (network address information required for packet switched data communication between invited terminal and relay); encryption information; and information about the transfer mechanism, the transmission protocol, communication channel properties etc.
  • the session information and session identifier may be associated uniquely to one relay session and/or one terminal, respectively.
  • data communication in the context of a q-p2p communication connection has to be associated to a distinct relay session such that the switching function described with respect to the operations SI 20 to SI 50 is operable.
  • Each data packet received by relay R comprises an identifier, such as a terminal identifier or a session identifier, on the basis of which the received data packet is assignable to a relay session.
  • Each terminal participating in a determined relay session may be associated with the same session identifier or each terminal participating in a detem ined relay session may be associated with an individual session identifier, wherein the individual session identifiers differ. As long as each session identifier is assigned to one relay session, conflicts are prevented. For ensuring an unambiguous session identifier the session identifier may be defined cryptographically or the session identifier may be a random value, a global user identifier (GUID) or nay hash based value on the basis of an identification of the initiating terminal is obtainable.
  • GUID global user identifier
  • the individual invitation messages are transmitted to the terminal intended to be invited to participate in a common relay session for q-p2p connectivity.
  • the individual invitation messages may comprise session identifiers, which differ or which correspond to each other.
  • relay R waits for acknowledgements from the invited terminals.
  • the acknowledgements may indicate that the invited terminals accept the invitation to participate or reject the invitation to participate.
  • Relay R waits preferably for a predefined period of time. Expected acknowledgements from invited tenninals, which have not been received during the predefined period of time, are considered and handled as rejections of the invitation.
  • invited terminal B receives the individual invitation request and individual invitation message from relay R, respectively.
  • Terminal B recognizes the invitation request as a request whether to join in the q-p2p communication connection with inviting terminal A or not.
  • the invitation request may comprise all information which terminal B requires to establish a communication connection to relay R and to participate in the relay session with at least inviting terminal A.
  • terminal B (and the user thereof, respectively) accepts the invitation and generates an acknowledgement to indicate the acceptance to relay R.
  • the acknowledgement is transmitted by terminal B to relay R.
  • the transmission of the acknowledgement to relay R is analogously operable with any available terminal peer-to-peer communication mechanism provided by the cellular network(s).
  • relay R receives the individual acknowledgements from the invited terminals (such as terminal B) and collects them. After the reception of all expected individual acknowledgements (i.e. from each of the invited terminals) or after exceeding of the predefined period of time for waiting, the collection operation is finished. In an operation S280, relay R generates one or more acknowledgements. At least inviting terminal A may have to receive an acknowledgement in order to inform inviting terminal A about the success of the invitation procedure.
  • relay R transmits the one or more generated acknowledgements to the inviting tenninal A and, if required or wished, to the invited terminals having accepted to participate, respectively.
  • the transmissions of the acknowledgements are analogously operable with any available terminal peer-to-peer communication mechanism provided by the cellular network(s).
  • relay R initiates and establishes a new relay session, respectively, in which inviting terminal A and all invited terminals, which have accepted the invitation (terminal B herein), participate.
  • the one or more session identifiers which have been transmitted by relay R to the terminals, are assigned to the initiated new relay session in order to enable the relay service (i.e. q-p2p data communication between the participating terminals) as described above with reference to Fig. 2a.
  • Relay R identifies the participating terminals on the basis of identifiers, such as the session identifier(s), as belonging to the initiated new relay session.
  • inviting terminal A receives the acknowledgement, which informs terminal A about the success of the invitation comprising for instance information about the terminals having accepted the invitation.
  • the acknowledgement comprises information required to establish subsequently the communication connection to relay R for q-p2p communication with the participating terminals.
  • the acknowledgement may comprises at least one information out of the set of information comprising for instance:
  • session infonnation relating to the intended relay session (session identifier); and address information of relay R (network address information required for packet switched data communication between invited terminal and relay).
  • the remaining participating terminals may optionally receive acknowledgements, which indicate to the participating terminals that the relay session is initiated and established.
  • the acknowledgements may comprise information required to establish subsequently the communication connection to relay R for q-p2p communication with the participating terminals.
  • the acknowledgement may comprises at least one information out of the set of information comprising for instance: - session information relating to the intended relay session (session identifier); - address information of relay R (network address information required for packet switched data commimication between invited terminal and relay) - encryption information; and - information about the transfer mechanism, the transmission protocol, communication channel properties etc.
  • each established communication connection between a participating terminal and relay R results in a commimication channel between both parties, upon which data communication between both parties is performable and which will be employed for data transmissions described with reference to following operations.
  • the inviting terminal may preset a minimum number of terminals, which have to be accept the invitation and/or the inviting terminal may preset a maximum number of terminals allowed to participate in the intended relay session. Moreover, the inviting terminal may preset at least one distinct predefined participating terminal to participate. Further conditions are applicable.
  • the filtering mechanism illustrated above may be used directly by the inviting terminal previous to the generation and transmission of the initiation request.
  • the inviting terminal retrieves by the help of the database DB potential terminals for being invited.
  • a corresponding initiation request comprises a list of information about the terminals to be invited, which has been retrieved before from the database DB offering the filter mechanism service.
  • Fig. 3 a schematically shows a block diagram of components comprised in a relay entity according to an embodiment of the present invention.
  • a relay entity implementation may be based on the components illustrated in Fig. 3 a such that the relay entity is operable with data relay services according to an embodiment of the present invention.
  • the relay entity and relay instance, respectively, offering data relay services may be implemented on any network device/host, particularly any device/host connected to a packet switched network.
  • the relay entity/instance may be implemented on the network device/host on the basis of software components and/or hardware components.
  • one or more independent relay entities and relay instances, respectively, may be hosted by one dedicated single network device/host which may allow for traffic load balancing or which may allow for assignment different relay entities/instances with pre-defined utilization requirements.
  • a relay entity may be composed illustratively of functional / structural components, which are depicted in the block diagram of Fig. 3 a.
  • the functional components include a network interface 30, a protocol handler module 31, a session database 33 and one or more instances of a redirector module 32.
  • the network interface 30 is adapted on the one side to receive incoming requests and messages, respectively, and data traffic to be relayed from one terminal participating in the q-p2p connectivity and on the other side to transmit outgoing requests and messages, respectively and relayed data traffic to the one or more other terminals also participating in the q-p2p connectivity.
  • the incoming request which comprises requests for inviting terminals to a q- ⁇ 2p communication connection and initiating a new relay session therefor, respectively, and acknowledges for participating in an established relay session, are handled by the protocol handler module 31.
  • the protocol handler module 31 is further adapted to respond to the incoming messages accordingly.
  • An embodiment of the request / message framework is described in detail above.
  • the protocol handler module 31 configures the session database 33, which stores information about relay sessions, in particular information about session identifiers associated with relay sessions and information about terminals participating in relay sessions for data relay services.
  • the protocol handles module 31 may create and configure an instance of a redirector module 32, which may be fixly associated to one determined relay session.
  • the instance of the redirector module 32 associated to a determined relay session is bound to the data traffic flow of each participating terminal.
  • An instance of the redirector module 32 is configured as such when a relay session is initiated/established.
  • An instance of the redirector module 32 handles data traffic flows originating from terminals, which participate in a q-p2p communication connection. Therefore, the instance of the redirector module 32 is configured such that data traffic flows from terminals participating in a relay session (in a quasi peer-to-peer connectivity) are bound to the corresponding instance of the redirector module 32. That means, data traffic incoming from a terminal identified as a terminal participating in a certain established relay session is (automatically) replicated/replay by the instance of the redirector module 32 and (automatically) transmitted to the remaining terminals participating in the certain relay session identified on the basis of the tenninal from which the data traffic originates.
  • the identification of the relay session is obtainable form the data traffic originating from a tenninal, wherein the data traffic comprises for instance the aforementioned session identifier or any other identifier. Access to the session database 33 providing the required information for operating data relay services may be required.
  • the implementation of a relay entity/instance may comprise one redirector module 32 responsible for all relay sessions and all q-p2p communication connections.
  • a participating tenninal may effect the termination of its participation in a q-p2p communication by disconnecting from the relay entity serving data relay services.
  • the instance of the redirector module 32 maintains always the data relay service. In case a terminal disconnects, the instance of the redirector module 32 recognizes the termination of the participation and discards the bounding of the data traffic of this terminal such that data traffic is not replayed/replicated to this terminal any more. In case that there only one or none participating terminal present in a q-p2p communication connection, i.e. in a relay session, the instance of the redirector module 32 indicates to the protocol handler module 31 to discard the relay session completely from the relay entity/instance comprising the conesponding instance of the redirector module 32 and information about the relay session stored in the session database 33.
  • Fig. 3c and 3d represent example implementations, which allow for provision of user- friendly and applicable usability.
  • Figure 3b depicts an implementation of a network device serving information about potential terminal s to be invited.
  • the depicted network device corresponds to the database DB illustrated in Fig. 1.
  • the network device may be constituted by functional / structure components including a network interface 60, a protocol handler module 61, a filter module 62, a configuration module 63 and a database 70.
  • the protocol handler module 61 is adapted to receive data communication with the illustrated network device and supply received data to the filter module 62 and configuration module 63.
  • the protocol handler module 61 supports the generation and transmission of responses in response to received requests processed by the filter module 62 and the configuration module 63, respectively.
  • the filter module 62 is adapted to perform the operations for selecting potential terminals to be invited in accordance with filter rules provided to the filter module 62 included in a corresponding request. Data about the preferences, properties and presets relating to users of terminals and the terminals of the users are stored in the database 70, which is accessible by the filter module 62 for performing the filter mechanism.
  • the filter module 62 may support several filter algorithms in accordance with which the filter operations are operable.
  • the configuration module 63 allows users to define the required preferences, properties and presets, with of which the filter mechanism is operable.
  • the network interface 60 and the protocol handler module 61 may support a plurality of transmission protocols, bearers and transfer mechanisms, for instance including message bearers (SMS, MMS, instant messaging, etc), WAP services, WEB services, database management protocols etc.
  • message bearers SMS, MMS, instant messaging, etc
  • WAP services WAP services
  • WEB services database management protocols etc.
  • Fig. 3 c schematically shows a block diagram of components comprised in a terminal according to an embodiment of the present invention.
  • a terminal implementation may comprise the components depicted illustratively in Fig. 3 c to enable the terminal to perform at least semi- automatically the operations required on an invited terminal for utilizing and taking advantages of the q-p2p communication.
  • the participating terminal initiate and establish the communication connection to the relay.
  • the initiation and invitation requests may be delivered using any peer-to-peer communication mechanisms, which comprise SMS, EMS, MMS and any other types of instant messaging mechanisms including also future mechanisms.
  • the following example terminal implementation is based on the assumption that a peer-to-peer messaging mechanism is employed for conveying initiation and invitation requests.
  • the block diagram illustrates a network interface 40, a message dispatcher module 41, a dispatcher database 42, a message handler module 43 and a set of applications 45.
  • the message handler module 43 shall represent the conventional module in the terminal, which is responsible for handling messages being based on the peer-to-peer messaging mechanism that is applied for initiation / invitation request and acknowledgement conveyance. Such peer-to-peer messages received by the network interface 40 of the terminal are conventionally passed on to the message handler module 43.
  • a dispatcher module 41 is interposed between network interface 40 and message handler module 43 to handle invitation requests accordingly.
  • the message dispatcher module 41 is adapted to handle all invitation requests received by the terminal via its network interface 40.
  • the message dispatcher module 41 is adapted to recognize an invitation request and to pass on the received and identified invitation request to a corresponding client application, which preferably takes advantages of the q- ⁇ 2p communication to be established by the invitation request.
  • the passing on is generally accomplished by registering corresponding client applications to the message dispatcher module 41 for instance at installation time of the client applications.
  • invitation requests comprise information for which application the invitation (relating to a participation in a q-p2p communication) shall be directed, which especially may be achieved by an application identifier included in the invitation request.
  • the message dispatcher module 41 maintains information about associations of application identifiers and corresponding applications out of a set of registered clients applications 45 installed on the terminal. The association information may be stored in a dispatcher database 42 managed by the message dispatcher module 41 accordingly.
  • the message dispatcher module 41 is able to identify the client application determined by the application identifier, to initiate the determined client application (if required) and to pass on the invitation message to the determined client application.
  • the determined client application is responsible in the following to handle the invitation message accordingly, i.e. to decode and interpret the invitation message.
  • the client application may be responsible to generate or to initiate the generation of the response acknowledgment in consequence to the invitation request.
  • the client application may be responsible to initiate and establish the communication connection to the relay entity and to employ the established communication connection with the relay entity for data communication with the one or more terminals participating in the q-p2p communication.
  • the message dispatcher module 41 may be responsible to indicate the received invitation message to the user of the terminal asking the user to accept or rej ect the invitation.
  • a corresponding notification may be prompt by a display of the terminal to the user informing about sender of the invitation request and a designation of the determined client application (e.g. a clear text identification / application name).
  • the message dispatcher module 41 generates and causes the generation and transmission of the response acknowledgement informing about the decision of the user of the invited terminal.
  • Fig. 3d schematically shows a block diagram of further components comprised in a terminal according to an embodiment of the present invention.
  • a terminal implementation may comprise the further components depicted illustratively in Fig. 3d to enable a terminal to perform the operations required for taking advantages of the inventive quasi peer-to-peer connectivity with at least one other terminal.
  • the block diagram illustrates a set of applications 50, a relay library 51 and a network interface 52.
  • the relay library 51 is primarily intended to support communication with a relay entity serving for data relay services in accordance with an embodiment of the invention.
  • the relay library 51 is intended to support establishment of a communication connection with the relay entity as well as managing requests/responses relating to an invitation procedure and initiation / establishment procedure described in detail with reference to Fig. 2b.
  • the relay library 51 provides an application program interface (API), on the basis of which client application linked thereto accesses functions provided by the relay library 51.
  • the relay library 51 is linked to the network libraries / components, which allow communications with the relay entity via the (over-to-air) network interface of the terminal.
  • API application program interface
  • the library 51 may provide a method for communicating an invitation message to the one or more terminals, for instance designated as "InviteTerminals(relay address information, invitation information)", which may require an address information of the relay entity and infonnation on the basis of which the invitation procedure is operable.
  • Address information relating to the terminals intended to be invited may be selected from a local address directory of the terminal such as a telephone directory, a contact directory, etc.
  • the relay library 51 may provide a method for parsing invitation messages received by the terminal for instance designated as "Parseh ⁇ vitation(invitation message)", which results to well fonned information about the initiating terminal, the application involved in the q- p2p communication, the relay entity, information about the relay session etc.
  • the relay library 51 may provide a method for acknowledging the participation for instance designated as "Acknowledgehivitation (relay address information, [Accept / Reject])", which may require an address information of the relay to be contacted and session related information and accept / reject notification.
  • the relay library 51 may provide a method for establishing a communication connection to the relay entity for instance designated as "CreateConnection(relay address information, session related infonnation)", which may require an address information of the relay to be contacted and session related information, especially a session identifier for participating in the relay session identified on the basis of the session related information.
  • the relay library may also provide a soft configurable portion to code relay related information, especially relay address information.
  • methods of the relay library may support a configuration of the transfer mechanism, transfer protocol, authentication etc applicable with communication connections to the relay entity and the q-p2p communication connections, respectively.
  • Such a relay library may be public available for being used by application programmers to allow their applications for q-p2p connectivity according to an embodiment of the invention by linking the relay library together with their client applications.
  • Example contents of the initiation / invitation requests and acknowledgements from terminal to relay and relay to terminals are presented above, respectively.
  • the message and acknowledgements may be communicated via a peer-to-peer communication mechanism comprises among others short message service (SMS), which may be formatted as a smart message (SM).
  • SMS short message service
  • SM smart message
  • the following brief description relates to message and acknowledgement framework coded by the means of a short message. It shall be understood that the invention is not limited thereto.
  • the terminals may implement a so-called dispatcher module that receives the invitation message in the background.
  • the short message inbox application of the terminal may be augmented to act as a dispatcher module.
  • the inbox application recognizes the message type to be an invitation message, and based on that it may activate a plug-in module designed to parse and interpret the invitation message.
  • the plug-in module may be adapted to ask the user of the invited terminal whether he wants to accept the invitation and start the application described therein.
  • the plug-in module may further deliver the contents of the invitation message to the client application determined by the invitation message, establish the communication connection to the relay entity and offer the established communication connection to the determined client application for taking advantages of the q- ⁇ 2 ⁇ communication connection.
  • the invitation message operable with SMS may be formatted as a Smart Message (SM), similar to a picture message.
  • SM Smart Message
  • the invitation message should be allocated a specific port number (such as port number 49123) used to distinguish the invitation message from other types of smart messages.
  • Traditional SMS based messages do not have a port number at all since the port number specification is only used for smart messages.
  • WDP wireless datagram protocol
  • a conventional SMS message is specified to hold up to 140 bytes of data. Commonly this is used to provide for 160 characters of text using a 7-bit alphabet.
  • the WDP user data header (originating and destination port number) takes 7 bytes, leaving 133 bytes for user data content in a single short message coded as invitation message for coding information relating to the invitation to a q-p2p communication connection.
  • the invitation message content may be formatted as a binary message in a type-length-value (TLN) fashion, giving the type, length and value fields in a triplet.
  • TNL type-length-value
  • Each type and length field is 8 bits long, and the length of the value can vary according to the length field (maximum 256 bytes).
  • the types could be, for example, the ones listed in the table depicted below. Additional types maybe added if necessary.
  • the concept of the quasi peer-to-peer connectivity of the present invention has been described on the basis of embodiments relating to the operation and implementation of relay entities and mobile terminals, which allow establishment and utilization of a quasi peer-to-peer communication between several mobile terminals, the data communication of which is relayed by a corresponding relay entity operating a relay session associated to the quasi peer-to-peer communication.
  • the inventive concept enables to realize quasi peer-to-peer communications between terminals using data packet switched services for data communication therebetween.
  • the relay entity performs its data relay services for allowing quasi peer-to-peer communication between mobile terminals on the basis of a protocol framework for initiating a relay session and participating terminals therein.
  • the data relay service itself handle arbitrary data contents that means that client applications operated on the mobile terminals may communicate any data via the established quasi peer-to-peer communication connection between them.
  • the relay entity represents a generic relay entity supporting exchange of entirely different data between mobile terminals; the relay entity and data relay service, respectively, according to the present invention does not perform any action on the relayed data but simply replays the data to be exchanged for transmission to each remaining terminal participating in a quasi peer-to-peer communication.
  • the relay entity may be implemented as a public available; a closed community; a home-based; a client application specific relay entity and data relay service, respectively or the like.
  • the relay entity or data relay service may be part of a fixed network inside a public land mobile network (PLMN) offering data relay service for terminals of the PLMN.
  • PLMN public land mobile network
  • the relay entity or data relay service may be connected to a fixed network outside of the PLMNs in which the mobile terminals are subscribed and inter- coupled via any network connection (such as the internet) to the PLMNs.
  • the relay entity and data relay service, respectively, is preferably connected to a fixed packet switched network.
  • the mobile terminals working over a packet switched service such as GPRS may use conventional access points such as gateway GPRS support nodes (GGSN) for transmitting and receiving data packets to and from the fixed packet switched network connecting to the relay entity and data relay service, respectively.
  • GGSN gateway GPRS support nodes
  • the communication connection to the relay entity is preferably initiated and established by the terminals that wish to participate in quasi peer-to-peer connectivity. Since each terminal initiates its own communication connection, policing network entities such as firewalls, or traffic managing entities such as NAT routers which may block incoming data traffic do not represent any problem in data traffic handling which may otherwise block incoming data traffic.
  • the generic relay entity and data relay service is not limited in use to any transfer mechanisms and data transmission protocols. Both relay entity and terminals have only to support the employed transfer mechanism and data transmission protocol.
  • Transmission control protocol (TCP) or user datagram protocol (UDP) represent typical transmission protocols employed in conjunction with packet switched data transmission.
  • TCP Transmission control protocol
  • UDP user datagram protocol
  • the communication between a mobile terminal and a relay entity may be completely operated over TCP comprising protocol message communication and quasi peer-to-peer data communication
  • the protocol message communication between a mobile terminal and a relay entity may be operated over TCP
  • the quasi peer-to-peer data communication may be operated over UDP, a port of which may be assigned by the relay entity and communicated to the mobile terminal.
  • different and future transmission protocols and transfer mechanisms may be utilized for protocol message and/or quasi peer-to-peer data communication in a similar or same way.
  • Typical client applications taking advantages of a quasi peer-to-peer connectivity according to the present invention are among others game client applications supporting multi-player environments. Such multi-player game client applications take advantages of a peer-to-peer coimectivity according to the present invention using the generic relay entity in substitution of specific game application related multi-player servers.
  • the quasi peer-to-peer connectivity allows for establishing direct terminal end-to-end data communication required in multi-player environment.
  • the generic relay entity and generic data relay service, respectively, offering the relaying of arbitrary data is applicable to several (game) client applications exchanging completely different data contents since the generic relay entity simply multiplies arbitrary data contents upon the participating mobile terminals without processing, modifying and the like thereof.
  • the quasi peer-to-peer connectivity allows to realize the direct (relayed) data communication between the participating mobile terminals over a period of time in which an established quasi peer-to-peer communication connection is used for communicating continuously data therebetween.

Abstract

The present invention relates to a method and devices for peer-to-peer connectivity in cellular networks and especially to relayed peer-to-peer communications between mobile terminals operable in public land mobile networks (PLMN). In brief summary, the inventive concept teaches an implementation of a quasi peer-to-peer communication between a plurality of mobile terminals via a data relay service network entity, which is responsible for replicating data received from one mobile terminal participating in the peer-to-peer communication to all other mobile terminals participating therein. The inventive concept teaches moreover an advantageous concept for establishing the peer-to-peer communication employing an adapted protocol framework and in operating such a data relay service as a generic data relay service for relaying arbitrary data contents.

Description

METHOD AND DEVICES FOR RELAYED PEER-TO-PEER COMMUNICATIONS BETWEEN TERMINALS IN MOBILE NETWORKS
The present invention relates to a method and devices for peer-to-peer communications in mobile networks and especially to relayed peer-to-peer communications between mobile terminals operable in public land mobile networks (PLMN).
Current cellular network implementations, in particular 2nd generation and 2.5 generation cellular networks do not allow for terminal end-to-end communications with exception of voice call communications and message communications. The capability of mobile terminals to communicate over cellular network increases continuously, especially processing capabilities and storage capabilities. In parallel with an increasing demand in complex terminal client applications terminal end-to-end peer-to-peer data communication is an issue of complex applications operating in client-server environment and implemented completely on terminals.
Particularly, packet switched data services such as for instance general packet radio services (GPRS) available in global system for mobile communication (GSM) and implemented in state of the art mobile terminals have been introduced and standardized with regard to client-server interoperability constituted between a client mobile terminals being part of a cellular network and server devices being part of a packet switched fixed network such as the internet. Both cellular networks (or public land mobile networks PLMNs) and the fixed networks are interconnected via appropriate gateway network entities. More particularly, current GPRS implementations make use of network address translation (NAT) which is in principle a technique to translate network addresses of terminal devices in a private network being based on private address allocation into at least one public address which is applicable in a public network, such as especially the internet. Conventionally, NAT technique is usually well known in local area networks (LANs) environments connecting local terminal device via data routing network entities (i.e. for instance a router, a gateway, an access server etc.) capable for NAT with a wide area network (WAN) that is particularly the internet.
In brief summary, current implementation of packet switched networks in mobile communications is adequately adapted for data communications with fixed server devices in fixed packet switched networks for instance comprising typically browsing WAP/WEB pages, retrieving email communication and like client-server application scenarios. Nevertheless the current implementation of packet switched networks in mobile communications does not allow for direct terminal peer-to-peer data communications between two mobile terminal devices, since especially the employed NAT technique prevents initiation of direct terminal peer-to-peer connections.
Nowadays state of the art mobile terminal devices capable for mobile communications are typically able to perform complex applications, which take advantages in data communications with other mobile terminal devices having such capabilities as stated above for data exchange. Those applications follow the conventional paradigm of fixed multi-user client-server applications. That means that such applications may be download as client applications on mobile terminal devices and when a user wishes to participate in the data exchange capability the applications connect to dedicated server entities in fixed networks, the address of which is conventionally hard-coded or soft-coded in the applications. The dedicated server entities are conventionally hosted on a network device. Once connection to a coded dedicated server entity is established, the user is allowed for communication with one or more participants also being in communication with the dedicated server entity. For this, the coded dedicated server entity usually provides a so-called server lobby area or a likewise procedure in which for instance currently present participants are listed by identifiers such as nicknames. The user is enabled to choose one or more present participants to be invited for data exchange. Be informed that participants shall be understood as users' mobile terminal devices being connected to the dedicated service device and performing client applications that correspond to the aforementioned client application or that are at least similar in function.
This introduced conventional solution following the traditional paradigm suffers in several disadvantages concerning the usability and the network environment. The usability addresses user operations and is a primary issue of such applications. Following situation shall be outlined as a way of illustration: two particular but arbitrarily selected users wish to exchange data using their mobile terminal devices provided with corresponding client applications for data exchange between each other. The particular users have to agree beforehand with a moment in time to meet on a dedicated server entity and with their identifiers to allow recognition of each other on the server entity. Misunderstandings and disagreements are nearly inevitable interdependent. Moreover, the agreement between the users is time and cost expensive.
The network environment addresses the dedicated server entity especially technical requirement thereof. When following the conventional solution, each such terminal application as stated above, requires a separate dedicated server entity set-up therefor. That means, that once a dedicated server entity is not available any more the application is simultaneously not operable any more. The bounding of applications to particular dedicated server entities is normally disadvantageous in a fast changing technical and economical environment, since operation of such dedicated server entities have to be maintained and operators of the dedicated server entities may stop services due to economical or technical reasons implying a loss of the communication function of applications requiring the dedicated server entities.
An object of the present invention is to provide peer-to-peer connectivity between at least two terminals in cellular networks. Especially, an object of the present invention is to provide quasi peer-to-peer connectivity via data packet switched communication services applicable for exchanging data between several mobile terminals capable for data communication via data packet switched communication services in cellular networks.
A further object of the present invention is to overcome the hitherto used agreement requirements, which have to be made between users that whish to participate in the data exchange, by a user-friendly procedure minimizing the user interaction required for making use of the peer-to-peer connectivity.
The objects of the present invention are solved by method for network devices, terminal devices and systems to allow for quasi peer-to-peer data exchange between several mobile terminals operable cellular networks by relaying data to be communicated peer-to-peer via data relay services.
The objects of the present invention are also solved by devices, network devices, terminals, mobile terminals and systems applicable to operate the aforementioned methods according to embodiments of the invention.
Advantageously, the inventive peer-to-peer connectivity between mobile tenninals in mobile networks is operable with any application operable on the mobile terminals. The inventive peer- to-peer connectivity uses a generic data relay entity which allows for exchanging arbitrary data contents and substituting the plurality of separate dedicated and specialized server entities as described above. Those skilled in the art will appreciate that the inventive concept improves the usability and the operational efforts on side of the server operators. The peer-to-peer connectivity according to the present invention implements further a semi-automatic notification mechanism including transmitting of information and configuration data relating to the peer-to-peer connectivity. According to a first aspect of the present invention, a method for enabling quasi peer-to-peer connectivity between mobile terminals subscribed in cellular networks by the means of a relay entity is provided. A quasi peer-to-peer communication is established. Several mobile terminals participate in the established quasi peer-to-peer communication to communicate data with each other in a kind of broadcast communication. This means, data is received from one mobile terminal, which is one out of a set of mobile terminals, which all participate in a common quasi peer-to-peer data communication for exchanging data with each other. Information about destination mobile terminals is retrieved/identified. The destination mobile terminals are all mobile terminals out of the set of mobile terminals except that one mobile tenninal, which has previously transmitted the data. The data is replayed/replicated such that the data can be transmitted to the destination mobile terminals on the basis of the retrieved information. Additionally, the relay entity is responsible for message communication processing relating to the aforementioned establishment of the employed quasi peer-to-peer data communication. Indeed, the processing of the message communication comprises receiving of messages, processing them in accordance with the contents of the received messages and generating corresponding messages in fonn of requests and acknowledgements on the basis of instructions comprised in received messages. More detailed processing operations are described below.
According to an embodiment of the invention, a relay session is associated with the quasi peer- to-peer communication for handing data communication between the set of mobile terminals. The relay session requires to be established first to enable the quasi peer-to-peer communication between the set of mobile terminals, which is performed by an initiating mobile terminal. The relay session forms a basic management entity for associating the mobile terminals out of the set of mobile terminals with the relay session and with the quasi peer-to-peer communication, in which the mobile terminals out of the set of mobile terminals participate.
According to another embodiment of the invention, the establishment of the relay session is carried out by receiving an initiation request for initiation of the relay session from an initiating mobile terminal. The initiation request comprises at least information about mobile terminals, which shall be invited to participate in the quasi peer-to-peer data communication and relay session, respectively, and an instruction to initiate and establish a new relay session forming the relay session. Finally, an acknowledgement is transmitted to the initiating mobile terminal comprising session information relating to the established relay session.
It shall be noted that the inviting mobile terminal and at least a subset of the invited mobile terminals form after successful establishment the set of mobile terminals participating in the quasi peer-to-peer data communication. According to a further embodiment of the invention, acknowledgements from the invited mobile terminals are received in response to the invitation requests. The acknowledgements inform about acceptance or rejection of the invitation by the addressed invited mobile terminals.
According to yet another embodiment of the invention, the initiation request comprises one or more information out of a set of information comprising an identity information relating to the initiating mobile terminal; an information about an application operable with the quasi peer-to- peer data communication; an information about the invited mobile terminals such a identity information; an authentication information; an encryption information; and an information relating to communication properties of the quasi peer-to-peer data communication.
According to an additional embodiment of the invention, the mobile terminals authenticate before participating in the quasi peer-to-peer communication.
According to an embodiment of the invention, the mobile terminals operate over data packet switched services for communicating said data, in particular over general packet radio service (GPRS).
According to another embodiment of the invention, the mobile terminals communicate via at least one of suitable transmission protocols comprising for instance transmission control protocol (TCP) and user datagram protocol (UDP).
According to a second aspect of the present invention, a method for allowing a mobile terminal for quasi peer-to-peer data connectivity with at least one other mobile terminal is provided. A quasi peer-to-peer communication is established between the mobile terminal and the at least one other mobile terminal. The mobile terminal and the at least one other mobile terminal participate in the established quasi peer-to-peer communication to communicate data with each other in a kind of broadcast communication. On the one hand, data which are to be communicated to the at least one other mobile terminal are transmitted to a relay entity, which is responsible for passing on the data to the at least one other mobile terminal. On the other hand, data, which originate from the at least one other mobile terminal, are received from the relay entity, which has passed on the data received from the other one mobile terminal. Message communication, which relates to the aforementioned establishment of the quasi peer-to-peer data communication is processed by the relay entity. Indeed, the processing of the message communication comprises receiving of messages, processing in accordance with the contents of the received messages and generating corresponding messages in form of requests and acknowledgements on the basis of instructions comprised in received messages. More detailed processing operations are described below.
According to an embodiment of the invention, an initiation request is transmitted to the relay entity, in order to establish the quasi peer-to-peer data communication. The initiation request comprises at least information about the at least one other mobile terminal, which is intended to be invited to participate in the quasi peer-to-peer data communication, and instructions to establish the quasi peer-to-peer data communication. Afterwards an acknowledgement is received from the relay entity. The acknowledgement comprises at least session information associated with a relay session. The relay session is associated with the quasi peer-to-peer data communication to enable the handling of the data communicated via the quasi peer-to-peer data communication between the mobile terminal and the at least one other mobile terminal. Therefore, data, which are to be communicated to the at least one other mobile terminal are preferably provided with the session information.
According to another embodiment of the invention, invitation request is received from the relay entity. The invitation request requests to participate in a quasi peer-to-peer data communication. An acknowledgement is transmitted to the relay entity in consequence of the invitation request, The acknowledgement informs the relay entity about acceptance or rejection of the invitation, h case of acceptance the mobile terminal becomes participant in the quasi peer-to-peer data communication.
According to another embodiment of the invention, the initiation request, the invitation request and/or the acknowledgement are communicated via a peer-to-peer communication mechanism, particularly via a peer-to-peer messaging mechanism such as short message service (SMS), smart messaging over SMS, enhanced message service (EMS), multimedia message service (MMS), peer-to-peer instant messaging services etc.
According to a further embodiment of the invention, the mobile terminal and/or said at least one other mobile terminal authenticate at the relay entity preferably before data communicating over the quasi peer-to-peer communication in which the mobile terminals participate.
According to an additional embodiment of the invention, the mobile terminals communicate over data packet switched services for communicating the data with the relay entity. Suitable data packet switched services maybe GPRS. According to yet another embodiment of the invention, the mobile terminals communicate via at least one of suitable transmission protocols comprising for instance TCP and UDP.
According to a third aspect of the invention, a method for enabling quasi peer-to-peer data connectivity in a system is provided. The system comprises at least two mobile terminals each of which capable for communicating in a cellular network. Further, the system also comprises a relay entity. Each of the mobile terminals is further adapted to perform operations in accordance with the method for allowing a mobile terminal for quasi peer-to-peer data connectivity with at least one other mobile terminal as aforementioned. The relay entity serves for data relay services and is adapted to perform operations in accordance with the method for enabling quasi peer-to- peer connectivity between mobile terminals subscribed in cellular networks as aforementioned.
According to a fourth aspect of the invention, computer program product for executing a method for executing a method for enabling quasi peer-to-peer connectivity between at least two mobile terminals in cellular communication networks is provided. The computer program product comprises program code sections for carrying out the steps of the method according to an aforementioned embodiment of the invention, when the program is run on a controller, processor-based device, a computer, a terminal, a network device, a mobile terminal, or a mobile communication enabled terminal. Alternatively, an application specific integrated circuit (ASIC) may implement one or more instructions that are adapted to realize the aforementioned steps of the method of an aforementioned embodiment of the invention, i.e. equivalent with the aforementioned computer program product.
According to a fifth aspect of the invention, a computer program product is provided, which comprises program code sections stored on a machine-readable medium for carrying out the steps of the method according to an aforementioned embodiment of the invention, when the computer program product is run on a controller, processor-based device, a computer, a terminal, a network device, a mobile terminal, or a mobile communication enabled terminal.
According to a sixth aspect of the invention, a software tool is provided. The software tool comprises program portions for carrying out the operations of the aforementioned methods when the software tool is implemented in a computer program and/or executed.
According to a seventh aspect of the invention, a computer data signal embodied in a carrier wave and representing instructions is provided which when executed by a processor cause the steps of the method according to an aforementioned embodiment of the invention to be carried out. According to a eighth aspect of the invention, a relay entity for enabling quasi peer-to-peer connectivity between mobile terminals in cellular communication networks is provided. The relay entity comprises at least a network interface, a protocol handler module and a redirector module. The network interface is adapted for receiving requests and data associated with a quasi peer-to-peer communication and for transmitting responses and said data associated with said quasi peer-to-peer communication. The protocol handler module is adapted to handle and/or manage requests received from the mobile terminals and requests to be transmitted to mobile terminals. The requests comprise at least initiation requests from an initiating mobile terminal, and invitation requests to be transmitted to invited mobile terminals. The redirector module is adapted to handle and manage the data associated with the quasi peer-to-peer communication on the basis of the relay session that is associated with a quasi peer-to-peer communication. The data received from one mobile terminal are transmitted to all remaining ones of said mobile terminals with exception of that one mobile terminal from which the data have been received. This operation may be denoted as passing on of the data and may require a buffering of the data in a suitable buffer storage and a replaying/replicating of the data for transmission to the remaining mobile terminals. The redirector module may be configured by the protocol handler module in accordance with the requests handled thereby.
According to an ninth aspect of the invention, a mobile terminal enabled for quasi peer-to-peer connectivity in a cellular communication network with at least one other mobile terminal is provided. The mobile terminal comprises at least a cellular communication interface and a peer- to-peer communication module interfacing between said cellular communication interface and at least one application.
On the one hand, the cellular communication interface is adapted to transmit data to be communicated to the at least one other mobile terminal by transmitting the data to a relay entity. On the other hand, the cellular communication interface is adapted to receive data originating from the at least one other mobile terminal by receiving the data from the relay entity. The data are associated with a quasi peer-to-peer communication established between the mobile terminal and the at least one other mobile terminal.
Supplementary, the cellular communication interface is adapted to transmit messages relating to an establishing of the quasi peer-to-peer data communication to be communicated to the at least one other mobile terminal by transmitting the data to said relay entity; and to receive the message relating to the establishing originating from the at least one other mobile terminal by receiving the message from the relay entity. In particular, the message communication includes initiation requests, invitation requests and acknowledgements.
The peer-to-peer communication module is adapted to generate and transmit the requests to the relay entity, to supply the data provided by the at least one application to be transmitted to the one other mobile terminal to the cellular communication interface; and to supply the data originating from the at least one other mobile terminal and provided by the communication interface to the at least one application.
According to an embodiment of the invention, the mobile terminal comprises also a dispatcher module, which is adapted to parse messages received via a peer-to-peer communication mechanism. The dispatcher module determines whether a received message is a request for invitation. In case this applies, parsing results are supplied to the at least one application such that the at least one application is enabled to use a quasi peer-to-peer communication in which the mobile terminal can participate on the basis of the request for invitation.
According to another embodiment of the invention, the mobile terminal comprises additionally a dispatcher database, which is dedicated to register applications operable with the mobile terminal. The dispatcher database stores information relating to associations of application identifiers with applications. The application identifiers are employed to identify applications, which may be addressed by said request for invitation.
According to a tenth aspect of the invention, a system for enabling quasi peer-to-peer connectivity is provided, wherein the system comprises at least two mobile terminals and a relay entity. Each of the mobile terminals is capable for communicating in a cellular network and corresponds to a mobile terminal enabled for quasi peer-to-peer connectivity in a cellular communication network with at least one other mobile terminal as aforementioned. The relay entity serves for data relay services and corresponds to a relay entity for enabling quasi peer-to- peer connectivity between mobile terminals in cellular communication networks as aforementioned.
The accompanying drawings are included to provide a further understanding of the invention, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the invention, and together with the description, serve to explain the principles of the invention. In the drawings, Fig. 1 schematically shows a block diagram of a system allowing for quasi peer-to-peer connectivity between two portable terminals according to an embodiment of the present invention;
Fig. 2a schematically shows a first sequence diagram illustrating operations of devices in the system allowing for quasi peer-to-peer connectivity according to an embodiment of the present invention;
Fig. 2b schematically shows a second sequence diagram illustrating operations of devices in the system allowing for quasi peer-to-peer connectivity according to an embodiment of the present invention;
Fig. 3 a schematically shows a block diagram of components comprised by a network device serving data relay services according to an embodiment of the present invention;
Fig. 3b schematically shows a block diagram of components comprised by a network device serving information about terminals to be invited according to an embodiment of the present invention;
Fig. 3c schematically shows a block diagram of components comprised by a mobile terminal according to an embodiment of the present invention; and
Fig. 3d schematically shows a block diagram of components comprised by a mobile terminal according to an embodiment of the present invention.
A brief introduction into the inventive concept will be given with reference to Fig. 1, which shows a schematic architecture of a system allowing for quasi peer-to-peer connectivity between mobile terminals. The depicted system architecture is based on a selection of network devices and entities participating in the peer-to-peer data communication as proposed by the inventive concept framework.
With reference to Fig. 1, the system according to an embodiment of the invention comprises two terminals A and B and relay R. The terminals A and B represent an arbitrary number of terminals, which may participate in the quasi peer-to-peer connectivity in accordance with the inventive concept framework of the present invention. The quasi peer-to-peer connectivity shall be represented by and understood intellectually as a quasi end-to-end communication connection 10, respectively, wliich is operable as a communication connection between terminals A and B allowing for data communication between those terminals A and B.
Terminal A as well as terminal B shall represent illustratively any kind or type of mobile terminals, which are operable with cellular networks and which are capable for wireless data communication. Such terminals may be mobile phones, communicators, personal digital assistants (PDAs), organizers, mobile computers or any consumer electronics (CE) having the aforementioned capabilities. In particular, the terminals being utilized in conjunction with the present invention should support data communication via data packet switched services. Typical public land mobile networks support data packet switched services. For instance, GSM (global system for system for mobile communications) supports packet switched services by the means of GPRS (general packet radio system) or EDGE (enhanced data rates for GSM evolution). Third-generation mobile communication systems such as UMTS (universal system for mobile telecommunications), IMT-2000 (international mobile telephony), Multicarrier-CDMA (code division multiple access) are typically based one packet switched services for data communication.
The present invention should neither be limited to a certain type of a terminal, a certain public land mobile network nor to any number of terminals participating in a quasi peer-to-peer communication connection on the basis of the inventive quasi peer-to-peer connectivity.
The quasi peer-to-peer connectivity according to the present invention allows for establishing a quasi peer-to-peer communication environment between a set of terminals comprising an arbitrary number of terminals. Arbitrary data contents conveyed by one of the terminals in such a quasi peer-to-peer communication environment are transmitted to all remaining terminals of the environment. This means, the illustrated quasi peer-to-peer communication connection 10 can also be established between three or more terminals, which will be apparent when reading the description referring to the following drawings, hideed, relay R serves for switching transparently the data between the terminals participating in the quasi peer-to-peer communication. The inventive quasi peer-to-peer connectivity may be understood as a virtual communication connection between the terminals participating in the inventive quasi peer-to-peer connectivity. Data communicated via this virtual communication connection is actually communicated via data communication connections between relay R and the participating terminals.
In order to improve the readability of the description, the term "quasi peer-to-peer" will be abbreviated as "q-p2p". Referring back to Fig. 1, the q-p2p connectivity between terminal A and terminal B allows terminal A and terminal B to communicate arbitrary data, contents, signals, information and the like between them. The data communication is preferably operable with data packets on the basis of data packet switched services for communication in cellular networks. As explained above, direct connectivity between terminals employing data packet switched services is not supported in today's public land mobile networks (PLMNs). In order to overcome this restriction and nevertheless to allow data packet switched services for data communication in a peer-to-peer terminal end-to-end manner between at least two terminals in cellular networks, relay R is introduced into the data flow. Relay R is a network service and functional network entity, respectively, which serves as a data relay service operating switching, relaying and mediating of arbitrary data, respectively. This means that relay R may be a generic server application entity hosted on any arbitrary network server device interposed in the communication path between the terminals participating in the data relay service. Relay R may be part of the fixed network inside a public land mobile network (PLMN) or may be connected to the public land mobile network (PLMN) via a wide area network (WAN) such as the Internet. Terminals A and B connect to relay R communicate wirelessly via one or more radio access networks (RAN) of the one or more cellular networks with relay R. Access points in the cellular networks serve to switch data traffic between cellular networks and relay R.
Assuming that the quasi peer-to-peer connection 10 between terminals A and B is established, relay R receives for instance on the one hand data packets of arbitrary contents from terminal A. Then, relay R replicates or replays the received data packets, in order to finally transmit the replicated data packets to the remaining ten inals participating in the q-p2p communication connectivity (i.e. all terminals except terminal A). Herein terminal B shall represent all remaining participating terminals. Therefore, a data communication connection 11 is established between terminal A and relay R and a data communication connection 12 is established between relay R and terminal B. Correspondingly, relay R receives the data from terminal A via the data communication connection 11 and transmits the replicated data via the data communication connection 12 to terminal B.
Further, relay R receives for instance on the other hand data packet of arbitrary contents from terminal B, then replicates or replays the received data packets and transmits the replicated data packets to the remaining terminals participating in the q-p2p connectivity (i.e. all terminals except terminal B). Herein terminal A shall represent all remaining participating terminals. Correspondingly, the data communication connection 11 and the data communication connection 12 serve in turn for data communication, respectively. Therefore, the data communication connection 11 as well as the data communication connection 12 may be adapted to support packet switched services for data communication.
Relay R is responsible for transmitting received data to those terminals only, to which the data are intended, i.e. those terminals, which participate in the q-p2p communication connection 10 with the exception of the data transmitting terminal, from which the data originates. Prerequisites or pre-condition have to be made on side of relay R to ensure the operation according to the inventive concept. Such prerequisites or pre-conditions are issues that will be discussed below.
Additionally, relay R may be connected via a data communication connection to a database DB, which supports the selection of terminals for participating in a q-ρ2p com ectivity according to an embodiment of the present invention. Herein the database DB is illustratively depicted in form of an external database entity connected to relay R via a network-based connection 20. Alternatively, the database DB may be implemented or locally connected to relay R. The function and operation of the database DB will be described with reference to the invitation procedure being part of the initiation procedure of a relay session for enabling q-p2p connectivity between terminals.
The operation of relay R is described now in detail with reference to Fig. 2a. It shall be assumed that the inventive q-p2p connectivity is employed to establish a q-ρ2p communication connection between terminal A, terminal B, and terminal C. Further it shall be also assumed that terminal A provides data for quasi peer-to-peer transmission to both terminals B and C. Those skilled in the art will appreciate that data provided by anyone of the terminals participating in the q-p2p connectivity illustrated in Fig. 2a are handled in an equal or at least similar way. The invention is not limited to the operation of relay R described with respect to Fig. 2a depicting operational steps of relay R in an illustrative way.
In an operation SI 00, terminal A provides data for being transmitted to terminal B and C. The data have arbitrary contents. The data may be generated and/or provided by any application perfonned on terminal A. The invention shall not be limited to any certain data, data contents or application providing the data for transmission.
In an operation SI 10, the provided data is transmitted from terminal A to relay R with the intention to be passed on to tenninals B and C. Terminal A, terminal B and terminal C participate in a common q-p2p communication connection established therebetween. The transmission of the data may be performed by a data packet switched service which is operable with the data communication connection to relay R. Moreover, an adequate transmission protocol is employed for the data communication with relay R such as transmission control protocol (TCP), user datagram protocol (UDP) or any applicable connection-oriented bearer protocol.
In an operation S120, relay R receives the data from terminal A. The received data may be buffered by relay R before passing on to the terminals B and C, to which the received data are intended. The receiving relay R is capable to identify the sender/originator of the received data, i.e. herein terminal A as data sender/originator. The identification may be based on a corresponding identifier of terminal A received in conjunction with data for example coded for instance in the header of the transfer protocol employed for data transmission from terminal A to relay R. A valid identification may be obtained from a terminal identifier, a session identifier or any other identifier, which identifies the transmitting terminal, i.e. preferably uniquely in the given context.
Relay R runs one or more relay sessions to manage the data relay service, which enables the inventive q-p2p connectivity between mobile terminals. Each session is associated with one determined q-p2p data communication connection as described above, which is associated with several terminals participating in the q-p2p data communication connection, i.e. herein terminals A, B and C. In particular, relay R is able to identify on the basis of a relay session those terminals, which participate in a q-p2p data communication connection, hi turn this implies that a corresponding relay session is identifiable in accordance with information about one participating terminal, which may be the identifier of the data sender/originator.
In an operation SI 30, relay R retrieves information about destination terminals to which the received data have to be passed on. Relay R identifies the relay session in which the terminal A participates and on the basis of knowledge about the relay session the information about the participating terminals, especially address information about the participating terminals, are retrieved. With reference to Fig. 2a, the remaining participating terminals are identified as terminals B and C.
hi an operation SI 40, relay R replicates or replays the received data for transmission to the terminals participating in the q-p2p connectivity, herein terminals A, B and C. As a result relay R transmits in an operation SI 50 the replicated data to terminals B and C, which have been identified by relay R as remaining terminals participating in the q-ρ2p data communication connection and corresponding relay session, respectively.
Those skilled in the art will appreciate on the basis of the description above and the operational sequence according to an embodiment of the present invention, that data provided by terminal B and being intended for terminal A and terminal C will be handled in an analogous way. This means, data provided by terminal B and transmitted thereby to relay R, is replicated / replayed and transmitted to terminal A and terminal C, wliich have been identified previously as participants in the q-p2p communication connection. The same applies to data provided by terminal C and being intended for terminal A and B.
The establishment of a relay session, which enables relay R to provide data relay services according to an embodiment of the present invention, and the participation of terminals in such a relay session will be described in detail with reference to Fig. 2b.
Fig. 2b illustrates a sequence diagram, which comprises operations to be performed by terminal A, relay R and terminal B in a time sequence. A first set of operations relates to an invitation procedure, whereas a second set of operations relates to an establishment procedure. Those skilled in the art will appreciate that the invitation procedure and establishment procedure are applicable with any kind of terminal which is capable for communication with relay R, preferably via one or more cellular networks supporting data packet switched services.
A q-p2p communication connection of the basis of the inventive q-p2p connectivity is intended for being established between several terminals, herein terminals A and B for the way of illustration. Assume that the invitation procedure originates as the inviting and initiating terminal, respectively, herein ten inal A.
As aforementioned, the connection between tenninal A and relay R shall be switched via the cellular network(s) and public land mobile network(s) (PLMN), respectively, into which terminal A is subscribed. Different data transfer mechanism and data transmission protocols may be employed for data communication between terminals in the cellular network(s) and a relay entity. Terminals as well as the relay entity have to support adequately the chosen transport mechanism and the chosen transmission protocol. The present invention shall neither be limited to any particular data transfer mechanism nor to any distinct data transmission protocol since a broad number of both transport mechanisms and transmission protocols are available in the enlightened network environment for data communication. For instance, the data transfer mechanism may be an unreliable packet-based transport mechanism or a reliable stream-based transport mechanism and the transmission protocol may support encryption or may be transparent to intermediate network nodes.
It shall be assumed that terminal A is informed about an address information of relay R, on the basis of which the communication connection can be established. For instance such an address information may be provided to users of the terminals in question, who whishes to use the data relay service, by the help of a WEB or WAP page, as an over-the-air service message or by any suitable manner allowing provision of corresponding information.
In an operation S200, the inviting / initiating terminal A transmits an initiation request and initiation message to relay R, respectively. The initiation message signalizes to relay R that terminal A wants to invite one or more other terminals to participate in a q-p2p connectivity according to an embodiment of the present invention and to establish a q-p2p communication connection for enabling the q-p2p connectivity. The establishing of a q-p2p communication connection will require an initiation and establishment of a relay session.
The transmission of the initiation request is preferably operable with any available terminal peer- to-peer communication mechanism provided by the cellular network(s). Current cellular networks provide a number of messaging services, for instance short message service (SMS), smart messaging (SM) being based on SMS, enhanced message service (EMS), multimedia message service (MMS) and instant messaging, but also any other peer-to-peer bearer channel could be used. In principle the amount of data of such an initiation request is small. It shall be noted that both the inviting terminal as well as the receiving relay entity has to support adequately the selected peer-to-peer communication mechanism.
Alternatively, the initiation request may as well be transmitted via the communication connection and communication channel, respectively, which will be utilized subsequently for data communication in conjunction with the q-p2p communication connection as described with respect to Fig. 2a.
The initiation request may comprise authentication information. Such authentication information relating to the terminals using the data relay service is useful to limit the number of tenninals to a predetermined selection of terminals (closed user group), to realize a commercial data relay service (charging purpose), to realize a reliable and secure communication flow between terminals and relay, etc.
In an operation S210, relay R receives the initiation request from terminal A. The initiation request may comprises at least one information out of the set of information comprising for instance: information about the identity of the inviting terminal (terminal identifier, subscriber identifier/information, telephone number, user identifier/name etc.); - information about the application which will handle the data communicated via the intended q-p2p communication connection (application identifier, application name etc.); information about the invited terminals (i.e. intended to be invited); authentication information of the inviting terminal; - encryption information to enable encryption of data to be communicated via the intended q-p2p communication connection; and - information about the transfer mechanism, the transmission protocol, communication channel properties etc relating to the communication connecting between terminals and relay.
The information about the invited terminals (i.e. terminals intended to be invited) may comprise a list of identifiers (subscriber information, telephone numbers) each of which identifying a terminal, which should be invited. Such a terminal identifier should be applicable for addressing subsequent invitation requests and invitation messages to the invited terminals.
The transmission of the subsequent invitation requests to the invited terminals are analogously operable with any available terminal peer-to-peer communication mechanism provided by the cellular network(s). Current cellular networks provide a number of messaging services, for instance short message service (SMS), smart messaging (SM) being based on SMS, enhanced message service (EMS), multimedia message service (MMS) and instant messaging, but also any other peer-to-peer bearer channel could be used. It shall be noted that both the invited terminals as well as the relay entity have to support adequately the selected peer-to-peer communication mechanism.
Alternatively to the direct coding of invited terminals as described above, the identification of terminals for being invited can be operated and supported by the database DB illustrated in Fig. 1, respectively.
A first approach for supporting the identification of terminals to be invited is based on a grouping mechanism. Information about groups of predetermined terminals is stored in the database DB. The aforementioned initiation request comprises at least identification information relating to the initiating / inviting terminal. On the basis of the identification information, that group is selectable, of which the inviting terminal is part. In order to prevent conflicts, each terminal may be allowed to be part of only one group. In accordance with a further approach, each group of predetermined terminals is associated with a group identifier, which for instance is also included in the initiation request e.g. as information about the invited terminals or as a separate information. In accordance with the group identifier the corresponding group is selectable. The group identifies can be appreciated as referencing information for retrieving information about the invited terminals, comprising identification information of the invited terminals, address information of the invited terminals etc.
Yet another approach for supporting the identification of terminals to be invited is based on a filtering mechanism. The database DB maintains and handles several sets of individual information, each set of individual information being associated with a potential tenninal to be invited (i.e. associated with user of the terminal to be invited). Such a set of individual information is preferably pre-configured by the user of the potential terminal and may particularly relate to preferences and properties defined by the user of the potential terminal. The preferences and properties shall be applicable to filter rules being comprised in the initiation request (e.g. as information about the invited terminals), such that one or more matching potential terminals can be selected by a filter operation from the plurality of potential terminals maintained by the database DB.
In an example use case a multiplayer gaming environment may be considered to enlighten the filter mechanism. This aspect of the present invention intends to help individual users to find each other for interacting in the multiplayer gaming environment. A user, who intends to participate in a multiplayer gaming environment with other users, may form the starting point. The user may not be in knowledge about potentially interested other users or the user may be interested in interacting with frequent changing other users sharing the same or similar interests. The database DB is informed about preferences, properties and presets associated with each user administrated by the database DB. The preferences, properties and presets may comprise one or more gaming applications or gaming application categories, time schedules, gaming skills, difficulty level, information about the terminal used for gaming, information about the transfer mechanism, the transmission protocol, communication channel properties, encryption information etc.
By matching the preferences, properties and presets associated with users administrated at the database DB with the filter rules provided by the inviting terminal, potential matching users and terminals for being invited can be obtained. The users taking the advantage of the database DB configures their data including e.g. preferences, properties and presets to the database DB, which stores these data (assuming that no other scat players are already enrolled). The configuration of the database DB may be operable with WEB-based or WAP-based registration and configuration service.
On the basis of the information comprised by the initiation request and/or obtained with the help of information included in the initiation request, relay R is able to generate the subsequent invitation requests and messages, respectively, intended for the terminals to be invited.
In an operation S220, relay R generates one or more individual invitation requests or invitation messages to be transmitted to the invited terminals, hi general, the individual invitation requests may comprise any information included in the original initiation request received from the inviting terminal, herein terminal A and the individual invitation requests may comprise additionally information provided and/or generated by relay R. In particular, the individual invitation requests may comprises at least one information out of the set of information comprising for instance: information about the identity of the inviting terminal; information about the application; session information relating to the intended relay session (session identifier); address information of relay R (network address information required for packet switched data communication between invited terminal and relay); encryption information; and information about the transfer mechanism, the transmission protocol, communication channel properties etc.
The session information and session identifier may be associated uniquely to one relay session and/or one terminal, respectively. As stated above, data communication in the context of a q-p2p communication connection has to be associated to a distinct relay session such that the switching function described with respect to the operations SI 20 to SI 50 is operable. Each data packet received by relay R comprises an identifier, such as a terminal identifier or a session identifier, on the basis of which the received data packet is assignable to a relay session.
Each terminal participating in a determined relay session may be associated with the same session identifier or each terminal participating in a detem ined relay session may be associated with an individual session identifier, wherein the individual session identifiers differ. As long as each session identifier is assigned to one relay session, conflicts are prevented. For ensuring an unambiguous session identifier the session identifier may be defined cryptographically or the session identifier may be a random value, a global user identifier (GUID) or nay hash based value on the basis of an identification of the initiating terminal is obtainable.
In an operation S230, the individual invitation messages are transmitted to the terminal intended to be invited to participate in a common relay session for q-p2p connectivity. As aforementioned the individual invitation messages may comprise session identifiers, which differ or which correspond to each other.
In an operation S235, relay R waits for acknowledgements from the invited terminals. The acknowledgements may indicate that the invited terminals accept the invitation to participate or reject the invitation to participate. Relay R waits preferably for a predefined period of time. Expected acknowledgements from invited tenninals, which have not been received during the predefined period of time, are considered and handled as rejections of the invitation.
In an operation S240, invited terminal B receives the individual invitation request and individual invitation message from relay R, respectively. Terminal B recognizes the invitation request as a request whether to join in the q-p2p communication connection with inviting terminal A or not. As aforementioned, the invitation request may comprise all information which terminal B requires to establish a communication connection to relay R and to participate in the relay session with at least inviting terminal A. an operation S250, terminal B (and the user thereof, respectively) accepts the invitation and generates an acknowledgement to indicate the acceptance to relay R.
In an operation S260, the acknowledgement is transmitted by terminal B to relay R. As aforementioned, the transmission of the acknowledgement to relay R is analogously operable with any available terminal peer-to-peer communication mechanism provided by the cellular network(s).
In an operation S270, relay R receives the individual acknowledgements from the invited terminals (such as terminal B) and collects them. After the reception of all expected individual acknowledgements (i.e. from each of the invited terminals) or after exceeding of the predefined period of time for waiting, the collection operation is finished. In an operation S280, relay R generates one or more acknowledgements. At least inviting terminal A may have to receive an acknowledgement in order to inform inviting terminal A about the success of the invitation procedure.
In an operation S290, relay R transmits the one or more generated acknowledgements to the inviting tenninal A and, if required or wished, to the invited terminals having accepted to participate, respectively. As aforementioned, the transmissions of the acknowledgements are analogously operable with any available terminal peer-to-peer communication mechanism provided by the cellular network(s).
In an operation S300, finally relay R initiates and establishes a new relay session, respectively, in which inviting terminal A and all invited terminals, which have accepted the invitation (terminal B herein), participate. The one or more session identifiers, which have been transmitted by relay R to the terminals, are assigned to the initiated new relay session in order to enable the relay service (i.e. q-p2p data communication between the participating terminals) as described above with reference to Fig. 2a. Relay R identifies the participating terminals on the basis of identifiers, such as the session identifier(s), as belonging to the initiated new relay session.
In an operation S310, inviting terminal A receives the acknowledgement, which informs terminal A about the success of the invitation comprising for instance information about the terminals having accepted the invitation. In case of success of the invitation initiated by terminal A, the acknowledgement comprises information required to establish subsequently the communication connection to relay R for q-p2p communication with the participating terminals. In particular, the acknowledgement may comprises at least one information out of the set of information comprising for instance:
- session infonnation relating to the intended relay session (session identifier); and address information of relay R (network address information required for packet switched data communication between invited terminal and relay).
In an operation S320, the remaining participating terminals may optionally receive acknowledgements, which indicate to the participating terminals that the relay session is initiated and established. Moreover, the acknowledgements may comprise information required to establish subsequently the communication connection to relay R for q-p2p communication with the participating terminals. In particular, the acknowledgement may comprises at least one information out of the set of information comprising for instance: - session information relating to the intended relay session (session identifier); - address information of relay R (network address information required for packet switched data commimication between invited terminal and relay) - encryption information; and - information about the transfer mechanism, the transmission protocol, communication channel properties etc.
In operations S330 and S340, the participating terminals initiate and establish individual communication connections to relay R. This means, each established communication connection between a participating terminal and relay R results in a commimication channel between both parties, upon which data communication between both parties is performable and which will be employed for data transmissions described with reference to following operations.
It shall be noted that conditions may be defined, which have to be satisfied, for successful invitation. For example, the inviting terminal may preset a minimum number of terminals, which have to be accept the invitation and/or the inviting terminal may preset a maximum number of terminals allowed to participate in the intended relay session. Moreover, the inviting terminal may preset at least one distinct predefined participating terminal to participate. Further conditions are applicable.
It shall be further noted that the filtering mechanism illustrated above may be used directly by the inviting terminal previous to the generation and transmission of the initiation request. This means, the inviting terminal (terminal A) retrieves by the help of the database DB potential terminals for being invited. A corresponding initiation request comprises a list of information about the terminals to be invited, which has been retrieved before from the database DB offering the filter mechanism service.
Fig. 3 a schematically shows a block diagram of components comprised in a relay entity according to an embodiment of the present invention. A relay entity implementation may be based on the components illustrated in Fig. 3 a such that the relay entity is operable with data relay services according to an embodiment of the present invention.
The relay entity and relay instance, respectively, offering data relay services according to an embodiment of the present invention may be implemented on any network device/host, particularly any device/host connected to a packet switched network. The relay entity/instance may be implemented on the network device/host on the basis of software components and/or hardware components. Moreover, one or more independent relay entities and relay instances, respectively, may be hosted by one dedicated single network device/host which may allow for traffic load balancing or which may allow for assignment different relay entities/instances with pre-defined utilization requirements.
In detail, a relay entity may be composed illustratively of functional / structural components, which are depicted in the block diagram of Fig. 3 a. The functional components include a network interface 30, a protocol handler module 31, a session database 33 and one or more instances of a redirector module 32.
The network interface 30 is adapted on the one side to receive incoming requests and messages, respectively, and data traffic to be relayed from one terminal participating in the q-p2p connectivity and on the other side to transmit outgoing requests and messages, respectively and relayed data traffic to the one or more other terminals also participating in the q-p2p connectivity.
The incoming request, which comprises requests for inviting terminals to a q-ρ2p communication connection and initiating a new relay session therefor, respectively, and acknowledges for participating in an established relay session, are handled by the protocol handler module 31. The protocol handler module 31 is further adapted to respond to the incoming messages accordingly. An embodiment of the request / message framework is described in detail above. The protocol handler module 31 configures the session database 33, which stores information about relay sessions, in particular information about session identifiers associated with relay sessions and information about terminals participating in relay sessions for data relay services. Moreover, the protocol handles module 31 may create and configure an instance of a redirector module 32, which may be fixly associated to one determined relay session. The instance of the redirector module 32 associated to a determined relay session is bound to the data traffic flow of each participating terminal. An instance of the redirector module 32 is configured as such when a relay session is initiated/established.
An instance of the redirector module 32 handles data traffic flows originating from terminals, which participate in a q-p2p communication connection. Therefore, the instance of the redirector module 32 is configured such that data traffic flows from terminals participating in a relay session (in a quasi peer-to-peer connectivity) are bound to the corresponding instance of the redirector module 32. That means, data traffic incoming from a terminal identified as a terminal participating in a certain established relay session is (automatically) replicated/replay by the instance of the redirector module 32 and (automatically) transmitted to the remaining terminals participating in the certain relay session identified on the basis of the tenninal from which the data traffic originates. The identification of the relay session is obtainable form the data traffic originating from a tenninal, wherein the data traffic comprises for instance the aforementioned session identifier or any other identifier. Access to the session database 33 providing the required information for operating data relay services may be required.
Alternatively, the implementation of a relay entity/instance may comprise one redirector module 32 responsible for all relay sessions and all q-p2p communication connections.
A participating tenninal may effect the termination of its participation in a q-p2p communication by disconnecting from the relay entity serving data relay services. The instance of the redirector module 32 maintains always the data relay service. In case a terminal disconnects, the instance of the redirector module 32 recognizes the termination of the participation and discards the bounding of the data traffic of this terminal such that data traffic is not replayed/replicated to this terminal any more. In case that there only one or none participating terminal present in a q-p2p communication connection, i.e. in a relay session, the instance of the redirector module 32 indicates to the protocol handler module 31 to discard the relay session completely from the relay entity/instance comprising the conesponding instance of the redirector module 32 and information about the relay session stored in the session database 33.
h order to provide a suitable usability of the inventive q-ρ2p connectivity, operations, which require user interactions, should be minimized as best as possible. The terminal implementations illustrated in Fig. 3c and 3d represent example implementations, which allow for provision of user- friendly and applicable usability.
Figure 3b depicts an implementation of a network device serving information about potential terminal s to be invited. The depicted network device corresponds to the database DB illustrated in Fig. 1. The network device may be constituted by functional / structure components including a network interface 60, a protocol handler module 61, a filter module 62, a configuration module 63 and a database 70. The protocol handler module 61 is adapted to receive data communication with the illustrated network device and supply received data to the filter module 62 and configuration module 63. In turn, the protocol handler module 61 supports the generation and transmission of responses in response to received requests processed by the filter module 62 and the configuration module 63, respectively.
The filter module 62 is adapted to perform the operations for selecting potential terminals to be invited in accordance with filter rules provided to the filter module 62 included in a corresponding request. Data about the preferences, properties and presets relating to users of terminals and the terminals of the users are stored in the database 70, which is accessible by the filter module 62 for performing the filter mechanism. The filter module 62 may support several filter algorithms in accordance with which the filter operations are operable.
The configuration module 63 allows users to define the required preferences, properties and presets, with of which the filter mechanism is operable.
The network interface 60 and the protocol handler module 61 may support a plurality of transmission protocols, bearers and transfer mechanisms, for instance including message bearers (SMS, MMS, instant messaging, etc), WAP services, WEB services, database management protocols etc.
Fig. 3 c schematically shows a block diagram of components comprised in a terminal according to an embodiment of the present invention. A terminal implementation may comprise the components depicted illustratively in Fig. 3 c to enable the terminal to perform at least semi- automatically the operations required on an invited terminal for utilizing and taking advantages of the q-p2p communication.
As described above, once an initiating terminal has successfully effected the invitation of counterpart terminals for a new relay session to allow q-p2p connectivity, the participating terminal initiate and establish the communication connection to the relay. The initiation and invitation requests may be delivered using any peer-to-peer communication mechanisms, which comprise SMS, EMS, MMS and any other types of instant messaging mechanisms including also future mechanisms.
The following example terminal implementation is based on the assumption that a peer-to-peer messaging mechanism is employed for conveying initiation and invitation requests.
In detail, the block diagram illustrates a network interface 40, a message dispatcher module 41, a dispatcher database 42, a message handler module 43 and a set of applications 45.
The message handler module 43 shall represent the conventional module in the terminal, which is responsible for handling messages being based on the peer-to-peer messaging mechanism that is applied for initiation / invitation request and acknowledgement conveyance. Such peer-to-peer messages received by the network interface 40 of the terminal are conventionally passed on to the message handler module 43. In order to at least semi-automate the handling of invitation requests received by invited terminals from the relay entity, a dispatcher module 41 is interposed between network interface 40 and message handler module 43 to handle invitation requests accordingly. The message dispatcher module 41 is adapted to handle all invitation requests received by the terminal via its network interface 40. In detail, the message dispatcher module 41 is adapted to recognize an invitation request and to pass on the received and identified invitation request to a corresponding client application, which preferably takes advantages of the q-ρ2p communication to be established by the invitation request. The passing on is generally accomplished by registering corresponding client applications to the message dispatcher module 41 for instance at installation time of the client applications.
The fact that several separate client applications may make use of the peer-to-peer connectivity requires that invitation requests comprise information for which application the invitation (relating to a participation in a q-p2p communication) shall be directed, which especially may be achieved by an application identifier included in the invitation request. In parallel the message dispatcher module 41 maintains information about associations of application identifiers and corresponding applications out of a set of registered clients applications 45 installed on the terminal. The association information may be stored in a dispatcher database 42 managed by the message dispatcher module 41 accordingly.
By the means of the application identifier coded in an invitation request and the association information the message dispatcher module 41 is able to identify the client application determined by the application identifier, to initiate the determined client application (if required) and to pass on the invitation message to the determined client application. The determined client application is responsible in the following to handle the invitation message accordingly, i.e. to decode and interpret the invitation message. In detail, the client application may be responsible to generate or to initiate the generation of the response acknowledgment in consequence to the invitation request. Moreover, the client application may be responsible to initiate and establish the communication connection to the relay entity and to employ the established communication connection with the relay entity for data communication with the one or more terminals participating in the q-p2p communication.
Furthermore, the message dispatcher module 41 may be responsible to indicate the received invitation message to the user of the terminal asking the user to accept or rej ect the invitation. A corresponding notification may be prompt by a display of the terminal to the user informing about sender of the invitation request and a designation of the determined client application (e.g. a clear text identification / application name). Moreover, the message dispatcher module 41 generates and causes the generation and transmission of the response acknowledgement informing about the decision of the user of the invited terminal. Fig. 3d schematically shows a block diagram of further components comprised in a terminal according to an embodiment of the present invention. A terminal implementation may comprise the further components depicted illustratively in Fig. 3d to enable a terminal to perform the operations required for taking advantages of the inventive quasi peer-to-peer connectivity with at least one other terminal.
hi detail, the block diagram illustrates a set of applications 50, a relay library 51 and a network interface 52. The relay library 51 is primarily intended to support communication with a relay entity serving for data relay services in accordance with an embodiment of the invention. In particular, the relay library 51 is intended to support establishment of a communication connection with the relay entity as well as managing requests/responses relating to an invitation procedure and initiation / establishment procedure described in detail with reference to Fig. 2b. On the one side, the relay library 51 provides an application program interface (API), on the basis of which client application linked thereto accesses functions provided by the relay library 51. On the other side, the relay library 51 is linked to the network libraries / components, which allow communications with the relay entity via the (over-to-air) network interface of the terminal.
Referring to an inviting terminal, which invites terminals to participate a new relay session on a relay entity, the library 51 may provide a method for communicating an invitation message to the one or more terminals, for instance designated as "InviteTerminals(relay address information, invitation information)", which may require an address information of the relay entity and infonnation on the basis of which the invitation procedure is operable. Address information relating to the terminals intended to be invited may be selected from a local address directory of the terminal such as a telephone directory, a contact directory, etc.
Referring to a terminal, which receives an invitation request to be invited in participating in a q- p2p communication, the relay library 51 may provide a method for parsing invitation messages received by the terminal for instance designated as "Parsehτvitation(invitation message)", which results to well fonned information about the initiating terminal, the application involved in the q- p2p communication, the relay entity, information about the relay session etc.
Referring to an invited terminal wishing to participate in an established relay session, the relay library 51 may provide a method for acknowledging the participation for instance designated as "Acknowledgehivitation (relay address information, [Accept / Reject])", which may require an address information of the relay to be contacted and session related information and accept / reject notification. Again referring to an invited terminal wishing to participate in an established relay session, the relay library 51 may provide a method for establishing a communication connection to the relay entity for instance designated as "CreateConnection(relay address information, session related infonnation)", which may require an address information of the relay to be contacted and session related information, especially a session identifier for participating in the relay session identified on the basis of the session related information.
In case q-p2p communication is available for a terminal, the relay library 51 may provide methods for transmitting and receiving arbitrary data for instance designated as "P2PTransmit(arbitrary data, [session related information])" and "arbitrary data = P2PReceive([session related information])", respectively.
Those skilled in the art will appreciate that the methods presented illustratively above outline only principles of a relay library implementation on the basis of coarse features. The relay library may also provide a soft configurable portion to code relay related information, especially relay address information. Moreover methods of the relay library may support a configuration of the transfer mechanism, transfer protocol, authentication etc applicable with communication connections to the relay entity and the q-p2p communication connections, respectively.
Such a relay library may be public available for being used by application programmers to allow their applications for q-p2p connectivity according to an embodiment of the invention by linking the relay library together with their client applications.
Example contents of the initiation / invitation requests and acknowledgements from terminal to relay and relay to terminals are presented above, respectively. As also aforementioned, the message and acknowledgements may be communicated via a peer-to-peer communication mechanism comprises among others short message service (SMS), which may be formatted as a smart message (SM). The following brief description relates to message and acknowledgement framework coded by the means of a short message. It shall be understood that the invention is not limited thereto.
An invitation message on the basis of a short message has to be distinguished at the receiving from conventional short messages. As explained above, the terminals may implement a so-called dispatcher module that receives the invitation message in the background. In an example implementation, the short message inbox application of the terminal may be augmented to act as a dispatcher module. The inbox application recognizes the message type to be an invitation message, and based on that it may activate a plug-in module designed to parse and interpret the invitation message. The plug-in module may be adapted to ask the user of the invited terminal whether he wants to accept the invitation and start the application described therein. The plug-in module may further deliver the contents of the invitation message to the client application determined by the invitation message, establish the communication connection to the relay entity and offer the established communication connection to the determined client application for taking advantages of the q-ρ2ρ communication connection.
hi a particular case, the invitation message operable with SMS may be formatted as a Smart Message (SM), similar to a picture message. The invitation message should be allocated a specific port number (such as port number 49123) used to distinguish the invitation message from other types of smart messages. Traditional SMS based messages do not have a port number at all since the port number specification is only used for smart messages. The wireless datagram protocol (WDP) from WAP Forum should be used to interpret the port number.
A conventional SMS message is specified to hold up to 140 bytes of data. Commonly this is used to provide for 160 characters of text using a 7-bit alphabet. The WDP user data header (originating and destination port number) takes 7 bytes, leaving 133 bytes for user data content in a single short message coded as invitation message for coding information relating to the invitation to a q-p2p communication connection.
The invitation message content may be formatted as a binary message in a type-length-value (TLN) fashion, giving the type, length and value fields in a triplet. Each type and length field is 8 bits long, and the length of the value can vary according to the length field (maximum 256 bytes). The types could be, for example, the ones listed in the table depicted below. Additional types maybe added if necessary.
Type Description
0x01 invitation message 0x02 acknowledgement 0x11 application display name 0x12 application identifier 0x13 relay entity address (URI) 0x14 relay entity port 0x15 session identifier (token) 0x16 client application download address (URI) Ox 17 textual comment Ox 18 expiration time Ox 19 invited terminal identifies 0x20 parameter relating to q-p2p communication
Basing of the aforementioned considerations and assumptions the invitation message can now be coded and structured.
Conclusively, the concept of the quasi peer-to-peer connectivity of the present invention has been described on the basis of embodiments relating to the operation and implementation of relay entities and mobile terminals, which allow establishment and utilization of a quasi peer-to-peer communication between several mobile terminals, the data communication of which is relayed by a corresponding relay entity operating a relay session associated to the quasi peer-to-peer communication. The inventive concept enables to realize quasi peer-to-peer communications between terminals using data packet switched services for data communication therebetween.
This inventive concept offers several advantages in operation. The relay entity according to the present invention performs its data relay services for allowing quasi peer-to-peer communication between mobile terminals on the basis of a protocol framework for initiating a relay session and participating terminals therein. The data relay service itself handle arbitrary data contents that means that client applications operated on the mobile terminals may communicate any data via the established quasi peer-to-peer communication connection between them. The relay entity represents a generic relay entity supporting exchange of entirely different data between mobile terminals; the relay entity and data relay service, respectively, according to the present invention does not perform any action on the relayed data but simply replays the data to be exchanged for transmission to each remaining terminal participating in a quasi peer-to-peer communication.
h accordance with the inventive network architecture, the relay entity may be implemented as a public available; a closed community; a home-based; a client application specific relay entity and data relay service, respectively or the like. The relay entity or data relay service may be part of a fixed network inside a public land mobile network (PLMN) offering data relay service for terminals of the PLMN. Alternatively the relay entity or data relay service may be connected to a fixed network outside of the PLMNs in which the mobile terminals are subscribed and inter- coupled via any network connection (such as the internet) to the PLMNs. The relay entity and data relay service, respectively, is preferably connected to a fixed packet switched network. The mobile terminals working over a packet switched service such as GPRS may use conventional access points such as gateway GPRS support nodes (GGSN) for transmitting and receiving data packets to and from the fixed packet switched network connecting to the relay entity and data relay service, respectively.
The communication connection to the relay entity is preferably initiated and established by the terminals that wish to participate in quasi peer-to-peer connectivity. Since each terminal initiates its own communication connection, policing network entities such as firewalls, or traffic managing entities such as NAT routers which may block incoming data traffic do not represent any problem in data traffic handling which may otherwise block incoming data traffic.
Moreover, the generic relay entity and data relay service is not limited in use to any transfer mechanisms and data transmission protocols. Both relay entity and terminals have only to support the employed transfer mechanism and data transmission protocol. Transmission control protocol (TCP) or user datagram protocol (UDP) represent typical transmission protocols employed in conjunction with packet switched data transmission. For example, the communication between a mobile terminal and a relay entity may be completely operated over TCP comprising protocol message communication and quasi peer-to-peer data communication, hi an alternative example, the protocol message communication between a mobile terminal and a relay entity may be operated over TCP, whereas the quasi peer-to-peer data communication may be operated over UDP, a port of which may be assigned by the relay entity and communicated to the mobile terminal. Of course different and future transmission protocols and transfer mechanisms may be utilized for protocol message and/or quasi peer-to-peer data communication in a similar or same way.
Typical client applications taking advantages of a quasi peer-to-peer connectivity according to the present invention are among others game client applications supporting multi-player environments. Such multi-player game client applications take advantages of a peer-to-peer coimectivity according to the present invention using the generic relay entity in substitution of specific game application related multi-player servers. The quasi peer-to-peer connectivity allows for establishing direct terminal end-to-end data communication required in multi-player environment. The generic relay entity and generic data relay service, respectively, offering the relaying of arbitrary data is applicable to several (game) client applications exchanging completely different data contents since the generic relay entity simply multiplies arbitrary data contents upon the participating mobile terminals without processing, modifying and the like thereof. The quasi peer-to-peer connectivity allows to realize the direct (relayed) data communication between the participating mobile terminals over a period of time in which an established quasi peer-to-peer communication connection is used for communicating continuously data therebetween. Although the invention has been described with reference to particular embodiments thereof, it will be apparent to those skilled in the art that modifications to the described embodiments may be made without departing from the spirit of the invention. Accordingly, the scope of the invention is only defined by the attached claims.

Claims

Claims
1. Method for enabling quasi peer-to-peer data coimectivity in cellular communication networks with the means of a relay entity, comprising: - establishing a quasi peer-to-peer data communication in which several mobile terminals participate; - receiving data from one of said mobile terminals; - retrieving information about one or more destination mobile terminals, wherein said destination mobile terminals are said mobile terminals with the exception of said one mobile terminal from which said data originates; and - transmitting said data to said destination mobile terminals in accordance with said information about said destination mobile terminals, wherein said relay entity processes message communication relating to said establishing of said quasi peer-to-peer data communication.
2. Method according to claim 1, wherein said quasi peer-to-peer data communication is associated with a relay session for handling said quasi peer-to-peer data communication between said mobile terminals.
3. Method according to claim 2, wherein said establishing of said relay session comprises: - receiving a initiation request for initiating said relay session from an initiating mobile terminal; wherein said request for initiation comprises at least information about mobile terminals to be invited to participate in said relay session, and instructions to establish a new relay session forming said relay session; - transmitting invitation requests to said invited mobile terminals; and - transmitting an acknowledgement to said initiating mobile terminal, wherein said acknowledgement comprises at least a session identifier associated with said relay session.
4. Method according to claim 3, further comprising: - receiving acknowledgements from said invited mobile tenninals in response to said invitation requests; wherein said acknowledgements inform about acceptance or rejection of said invitation.
5. Method according to claim 3 or claim 4, wherein said initiation request comprises one or more information out of a set of information comprising: - identity information of said initiating mobile terminal; - information about an application operable with said quasi peer-to-peer data communication; - information about said invited mobile terminals; authentication information; - encryption information; and - information relating to communication properties of said quasi peer-to-peer data communication.
6. Method according to anyone of the preceding claims, wherein said mobile terminals authenticate before participating in said quasi peer-to-peer communication.
7. Method according to anyone of the preceding claims, wherein said mobile terminals communicate over data packet switched services for communicating said data.
8. Method according to anyone of the preceding claims, wherein said mobile terminals communicate via a protocol out of group of protocols comprising at least transmission control protocol (TCP) and user datagram protocol (UDP).
9. Method for allowing a mobile terminal for quasi peer-to-peer data communication with at least one other mobile terminal; comprising: - establishing said quasi peer-to-peer data communication to said at least one other mobile terminal; - transmitting data to be communicated to said at least one other mobile terminal by transmitting said data to a relay entity; and - receiving data originating from said at least one other mobile terminal by receiving said data from said relay entity, wherein message communication relating to said establishing of said quasi peer-to-peer data communication is processed by said relay entity.
10. Method according to claim 9, wherein said establishing comprising: - transmitting an initiation request to said relay entity; wherein said initiation request comprises at least information about said at least one other mobile terminals to be invited to participate in said quasi peer-to-peer data communication, and instructions to establish said quasi peer-to-peer data communication; and - receiving an acknowledgement from said relay entity, wherein said acknowledgement comprises at least session information associated with a relay session, wherein said relay session is associated with said quasi peer-to-peer data communication to handle said data between said mobile terminal and said at least one other mobile terminal.
11. Method according to claim 9 or claim 10, wherein said establishing comprises: - receiving an invitation request from said relay entity, wherein said invitation request requests to participate in said quasi peer-to-peer data communication; - transmitting an acknowledgement to said relay entity, wherein said acknowledgement informs said relay entity about acceptance or rejection of said invitation; wherein in case of acceptance said mobile terminal becomes participant in said quasi peer-to- peer data communication.
12. Method according to claim 10 or claim 11, wherein said initiation request, said invitation request and/or said acknowledgement are communicated via a peer-to-peer communication mechanism, particularly via a peer-to-peer messaging mechanism.
13. Method according to anyone of the claims 9 to 12, wherein said mobile terminal and/or said at least one other mobile terminal authenticate at said relay entity.
14. Method according to anyone of the claims 9 to 13, wherein said mobile terminal and said at least one other mobile terminal communicate over data packet switched services for communicating said data.
15. Method according to anyone of the claims 9 to 14, wherein said mobile terminal and said at least one other mobile terminal communicate via a protocol out of group of protocols comprising at least transmission control protocol (TCP) and user datagram protocol (UDP).
16. Method for enabling quasi peer-to-peer data connectivity in a system comprising at least two mobile terminals subscribed in cellular networks and a relay entity, wherein said at least tow mobile terminals are adapted for carrying out operations of anyone of the claims 9 to 15, wherein said relay entity is adapted for carrying out operations of anyone of the claims 1 to 8.
17. Computer program product for executing a method for enabling quasi peer-to-peer connectivity between at least two mobile terminals in cellular communication networks, comprising program code sections for carrying out the steps of anyone of claims 1 to 16, when said program is run on a computer, a terminal, a network device, a mobile terminal or a mobile communication enabled terminal.
18. Computer program product for executing a method for enabling quasi peer-to-peer connectivity between at least two mobile terminals in cellular communication networks, comprising program code sections stored on a machine-readable medium for carrying out the method of anyone of claims 1 to 16, when said program product is run on a computer, a terminal, a network device, a mobile terminal, or a mobile communication enabled terminal.
19. Software tool for enabling quasi peer-to-peer connectivity between at least two mobile terminals in cellular communication networks, comprising program portions for carrying out the operations of any one of the claims 1 to 16, when said program is implemented in a computer program for being executed on a controller, processor-based device, a microprocessor based device, processing device, a terminal device, a network device, a mobile terminal, or a mobile communication enabled terminal.
20. Computer data signal embodied in a carrier wave and representing instructions, which when executed by a processor cause the steps of anyone of claims 1 to 16 to be carried out.
21. Relay entity for enabling quasi peer-to-peer data communication between mobile terminals in cellular communication networks, comprising: a network interface (30) adapted to receive requests and data associated with said quasi peer-to-peer data communication and for transmitting responses and said data associated with said quasi peer-to-peer communication; a protocol handler module (31) adapted to handle requests received from said mobile terminals and requests to be transmitted to mobile tenninals, wherein said requests comprises at least initiation requests received from an initiating mobile terminal, and invitation requests to be transmitted to invited mobile terminals; - a redirector module (33) adapted to handle said data associated with said quasi peer-to- peer data communication on the basis of said relay session associated with said quasi peer-to-peer data communication; wherein said data received from one mobile terminal are transmitted to all remaining ones of said mobile terminals with exception of said one mobile terminal.
22. Relay entity according to claim 21, wherein said protocol handler module (31) is further adapted for parsing said requests and configuring said relay session accordingly.
23. Relay entity according to claim 21 or claim 22, further comprising: a relay session database (32) which is adapted to store and provide information about said relay session.
24. Mobile terminal enabled for quasi peer-to-peer connectivity in a cellular communication network with at least one other mobile terminal, comprising: - a cellular commimication interface (40, 52) adapted - to transmit data to be communicated to said at least one other mobile terminal by transmitting said data to a relay entity; - to receive data originating from said at least one other mobile terminal by receiving said data from said relay entity, wherein said data are associated with a quasi peer-to- peer communication between said mobile terminal and said at least one other mobile terminal; to transmit messages relating to an establishing of said quasi peer-to-peer data communication to be communicated to said at least one other mobile terminal by transmitting said data to said relay entity; and - to receive said message relating to said establishing originating from said at least one other mobile terminal by receiving said message from said relay entity; - peer-to-peer communication module (51) mediating between said cellular communication interface (40, 52) and at least one application (45, 50) operable on said mobile terminal, wherein said peer-to-peer communication module (51) is adapted to generate and transmit requests to the said relay entity, to supply said data provided by said at least one application (45, 50) to be transmitted to said one other mobile terminal, to said cellular communication interface (40, 52); and to supply said data originating from said at least one other mobile terminal and provided by said communication interface (40, 52) to said at least one application (45, 50).
25. Mobile terminal according to claim 24, further comprising: a dispatcher module (41) for parsing messages received via a peer-to-peer communication mechanism to determine whether said message is a request for invitation; for supplying parsing results to said at least one application (45, 50) to enable said at least one application (45, 50) to employ said quasi peer-to-peer communication.
26. Mobile terminal according to claim 26, further comprising: a dispatcher database (42) for registering applications operable on said mobile terminal on the basis of application identifiers; wherein said application identifiers is employed to identify said at least one application (45, 50), which is addressed by said request for invitation.
7. System for enabling quasi peer-to-peer connectivity, comprising at least two mobile terminals subscribed in cellular networks and a relay entity, wherein each of said at least two mobile terminals conesponds to a mobile terminal according to anyone of the claims 24 to 26, wherein said relay entity conesponds to a relay entity according to anyone of the claims 21 to 23.
PCT/IB2004/000659 2004-03-10 2004-03-10 Method and devices for relayed peer-to-peer communications between terminals in mobile networks WO2005094108A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/IB2004/000659 WO2005094108A1 (en) 2004-03-10 2004-03-10 Method and devices for relayed peer-to-peer communications between terminals in mobile networks

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/IB2004/000659 WO2005094108A1 (en) 2004-03-10 2004-03-10 Method and devices for relayed peer-to-peer communications between terminals in mobile networks

Publications (1)

Publication Number Publication Date
WO2005094108A1 true WO2005094108A1 (en) 2005-10-06

Family

ID=35056572

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2004/000659 WO2005094108A1 (en) 2004-03-10 2004-03-10 Method and devices for relayed peer-to-peer communications between terminals in mobile networks

Country Status (1)

Country Link
WO (1) WO2005094108A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007012941A1 (en) * 2005-07-26 2007-02-01 Nortel Networks Limited Using reachability information to facilitate peer-to-peer communications
EP2165436A2 (en) * 2007-07-09 2010-03-24 Samsung Electronics Co., Ltd Method and apparatus for supporting connectivity of peer-to-peer (p2p) communication in mobile communication system
EP1775974A3 (en) * 2005-10-14 2011-03-16 Vodafone Holding GmbH Operation of mobile terminals usable in mobile radio networks
US8255565B2 (en) 2007-01-12 2012-08-28 Samsung Electronics Co., Ltd. Proxying transaction method for processing function of wireless node in peer-to-peer overlay network
JP2014529210A (en) * 2011-07-25 2014-10-30 エルジー エレクトロニクス インコーポレイティド Electronic device and method of operating electronic device
US9294608B2 (en) 2007-02-20 2016-03-22 Microsoft Technology Licensing, Llc Contextual auto-replication in short range wireless networks
US9756452B2 (en) 2013-09-16 2017-09-05 Qualcomm Incorporated Presence and on-device proxying
WO2023041387A1 (en) * 2021-09-16 2023-03-23 Precisioned Ag Device for synchronous communication
CN116055121A (en) * 2022-12-21 2023-05-02 广州辰创科技发展有限公司 Cross-network data synchronous control method, system and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6338087B1 (en) * 1996-12-27 2002-01-08 Nec Corporation Method of setting up ad hoc local network, method of communicating using said network, and terminal for use with said network
US20020143855A1 (en) * 2001-01-22 2002-10-03 Traversat Bernard A. Relay peers for extending peer availability in a peer-to-peer networking environment
US20040162871A1 (en) * 2003-02-13 2004-08-19 Pabla Kuldipsingh A. Infrastructure for accessing a peer-to-peer network environment

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6338087B1 (en) * 1996-12-27 2002-01-08 Nec Corporation Method of setting up ad hoc local network, method of communicating using said network, and terminal for use with said network
US20020143855A1 (en) * 2001-01-22 2002-10-03 Traversat Bernard A. Relay peers for extending peer availability in a peer-to-peer networking environment
US20040162871A1 (en) * 2003-02-13 2004-08-19 Pabla Kuldipsingh A. Infrastructure for accessing a peer-to-peer network environment

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8462750B2 (en) 2005-07-26 2013-06-11 Apple Inc. Using reachability information to facilitate peer-to-peer communications
WO2007012941A1 (en) * 2005-07-26 2007-02-01 Nortel Networks Limited Using reachability information to facilitate peer-to-peer communications
US7769017B2 (en) 2005-07-26 2010-08-03 Nortel Networks Limited Using reachability information to facilitate peer-to-peer communications
EP1775974A3 (en) * 2005-10-14 2011-03-16 Vodafone Holding GmbH Operation of mobile terminals usable in mobile radio networks
US8255565B2 (en) 2007-01-12 2012-08-28 Samsung Electronics Co., Ltd. Proxying transaction method for processing function of wireless node in peer-to-peer overlay network
US9667588B2 (en) 2007-02-20 2017-05-30 Microsoft Technology Licensing, Llc Contextual auto-replication in short range wireless networks
US9294608B2 (en) 2007-02-20 2016-03-22 Microsoft Technology Licensing, Llc Contextual auto-replication in short range wireless networks
EP2165436A4 (en) * 2007-07-09 2014-10-22 Samsung Electronics Co Ltd Method and apparatus for supporting connectivity of peer-to-peer (p2p) communication in mobile communication system
US9167613B2 (en) 2007-07-09 2015-10-20 Samsung Electronics Co., Ltd. Method and apparatus for supporting connectivity of peer-to-peer (P2P) communication in mobile communication system
EP2165436A2 (en) * 2007-07-09 2010-03-24 Samsung Electronics Co., Ltd Method and apparatus for supporting connectivity of peer-to-peer (p2p) communication in mobile communication system
JP2014529210A (en) * 2011-07-25 2014-10-30 エルジー エレクトロニクス インコーポレイティド Electronic device and method of operating electronic device
US9425861B2 (en) 2011-07-25 2016-08-23 Lg Electronics Inc. Electronic device and operating method thereof
JP2016189595A (en) * 2011-07-25 2016-11-04 エルジー エレクトロニクス インコーポレイティド Electronic apparatus and operation method of electronic apparatus
US9756452B2 (en) 2013-09-16 2017-09-05 Qualcomm Incorporated Presence and on-device proxying
WO2023041387A1 (en) * 2021-09-16 2023-03-23 Precisioned Ag Device for synchronous communication
CN116055121A (en) * 2022-12-21 2023-05-02 广州辰创科技发展有限公司 Cross-network data synchronous control method, system and storage medium
CN116055121B (en) * 2022-12-21 2023-11-14 广州辰创科技发展有限公司 Cross-network data synchronous control method, system and storage medium

Similar Documents

Publication Publication Date Title
EP1678886B1 (en) Method and devices for relayed peer-to-peer communications between terminals in mobile networks
US7499466B2 (en) Multicast group management in telecommunication networks
CN101529835B (en) Methods, systems, and devices for establishing a registrationless data communication connection between electronic devices
KR101150594B1 (en) Method and apparatus for cpm session management
EP2456171A9 (en) Apparatus and method for directing a communication session to a communication device of a group of devices having a common registration identity
US20100029312A1 (en) Mobile originated internet relay chat
US7433344B2 (en) Mobile communication system and method for providing real time messenger service among mobile communication terminals
US9692904B2 (en) Tree-based broadcasting service over push-to-talk mobile IP network
US8054843B2 (en) Method for securing privacy in automatic answer mode of push-to service
WO2005104477A1 (en) Method and system for providing information on a resource in a communication system
CN101766011A (en) Centralized call log for synchronized call protocol information
WO2003054717A1 (en) Providing instant services in internet protocol network
WO2003067363A2 (en) Method and system for facilitating services in a communication network through data-publication by a signaling server
MX2007002723A (en) Group details of group services.
KR20150015022A (en) Universal address book enabling updateable electronic business cards
WO2007033546A1 (en) Method for realizing one card with multiple numbers service
JP2010524382A (en) Terminal apparatus for performing SIP-based session processing and session negotiation request transmission / reception method using the same
GB2457006A (en) Device communication without revealing mobile station international ISDN number (MSISDN)
EP1298882A2 (en) Managing a user group in a communication system
US20050193133A1 (en) Message header for messaging service
EP2453681A1 (en) System and method for routing session initiation protocol conversation
WO2005094108A1 (en) Method and devices for relayed peer-to-peer communications between terminals in mobile networks
US9942280B2 (en) Data exchange sessions using groups of terminals of a first user and at least one terminal of a second user
AU2003216164A1 (en) Optimization of point-to-point sessions
KR100365900B1 (en) Method to provide Internet chatting service linked with portable phones

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 KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL 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 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 IT LU 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

WWW Wipo information: withdrawn in national office

Country of ref document: DE

122 Ep: pct application non-entry in european phase