Abstract: ABSTRACT A method for a wireless P2P communication is described. The method comprises receiving a first temporary address during registration procedure of a communication device for the wireless P2P communication. Further, the method comprises transmitting an invite message and the first temporary address to the peer communication device. Furthermore, the method comprises receiving an accept message and a second temporary address from the peer communication device when the peer communication device responds to the invite message. Furthermore, the method comprises initiating data transfer between the communication device and the peer communication device using a temporary communication path based on the first temporary address and the second temporary address received from a relay server. FIG. 5
Claims:STATEMENT OF CLAIMS
I claim:
1. A method for wireless Peer to Peer (P2P) communication, the method comprising,
receiving, by a communication device, a first temporary address corresponding to the communication device during a registration procedure of the communication device for the wireless P2P communication;
transmitting, by the communication device, an invite message and the first temporary address to at least one peer communication device;
receiving, by the communication device, an accept message and a second temporary address corresponding to the at least one peer communication device, from said at least one peer communication device when the at least one peer communication device responds to the invite message; and
initiating, by the communication device, data transfer between the communication device and the at least one peer communication device using a temporary communication path based on the first temporary address and the second temporary address.
2. The method as claimed in claim 1, wherein the method comprises simultaneously performing a session set up and a media set up during the data transfer to identify an optimal communication path for the wireless P2P communication between the communication device and the at least one peer communication device.
3. The method as claimed in claim 2, wherein the method comprises switching the data transfer from the temporary communication path to the optimal communication path that is identified after the media set up.
4. The method as claimed in claim 1, wherein the registration procedure comprises:
registering for the wireless P2P communication with a registration server;
receiving the first temporary address from a relay server based on the registration message sent to the registration server, wherein the first temporary address comprises at least one of a relay Internet Protocol (IP) address and a port address assigned to the communication device, by the relay server, for the wireless P2P communication; and
receiving presence information of the at least one peer communication device obtained from a registration procedure performed by the at least one peer communication device with the registration server and the relay server, wherein the presence information is analyzed by the communication device to transmit the invite message to the at least one peer communication device.
5. The method as claimed in claim 1, wherein the second temporary address comprises at least one of a relay IP address and a port address assigned to the at least one peer communication device, by a relay server, for the wireless P2P communication.
6. A wireless P2P communication network for a wireless Peer to Peer (P2P) communication comprising a plurality of communication devices, a registration server, a relay server, wherein a communication device from the plurality of communication devices is configured to:
receive a first temporary address corresponding to the communication device during registration procedure of the communication device for the wireless P2P communication;
transmit an invite message and the first temporary address to at least one peer communication device among the plurality of communication devices;
receive an accept message and a second temporary address corresponding to the at least one peer communication device, from the at least one peer communication device when the at least one peer communication device responds to the invite message; and
initiate data transfer between the communication device and the at least one peer communication device using a temporary communication path based on the first temporary address and the second temporary address.
7. A communication device for wireless Peer to Peer (P2P) communication, wherein the communication device comprises a P2P communication module configured to:
receive a first temporary address corresponding to the communication device during registration procedure of the communication device for the wireless P2P communication;
transmit an invite message and the first temporary address to at least one peer communication device among the plurality of communication devices;
receive an accept message and a second temporary address corresponding to the at least one peer communication device, from the at least one peer communication device when the at least one peer communication device responds to the invite message; and
initiate data transfer between the communication device and the at least one peer communication device using a temporary communication path based on the first temporary address and the second temporary address.
8. The communication device as claimed in claim 7, wherein the P2P communication module is configured to simultaneously perform a session set up and a media set up during the data transfer to identify an optimal communication path for the wireless P2P communication between the communication device and the at least one peer communication device.
9. The communication device as claimed in claim 8, wherein the P2P communication module is configured to switch the data transfer from the temporary communication path to the optimal communication path that is identified after the media set up.
10. The communication device as claimed in claim 8, wherein the P2P communication module is configured to perform the registration procedure by:
registering for the wireless P2P communication with a registration server;
receiving the first temporary address from a relay server based on the registration message sent to the registration server, wherein the first temporary address comprises at least one of a relay Internet Protocol (IP) address and a port address assigned to the communication device, by the relay server, for the wireless P2P communication; and
receiving presence information of the at least one peer communication device obtained from a registration procedure performed by the at least one peer communication device with the registration server and the relay server, wherein the presence information is analyzed by the communication device to transmit the invite message to the at least one peer communication device.
11. The communication device as claimed in claim 8, wherein the second temporary address comprises at least one of a relay IP address and a port address assigned to the at least one peer communication device, by a relay server, for the wireless P2P communication.
, Description:FORM 2
The Patent Act 1970
(39 of 1970)
&
The Patent Rules, 2005
COMPLETE SPECIFICATION
(SEE SECTION 10 AND RULE 13)
TITLE OF THE INVENTION
“Method and a system for wireless Peer-to-Peer (P2P) communication”
APPLICANTS:
Name Nationality Address
SAMSUNG R&D Institute India - Bangalore Private Limited India # 2870, Orion Building, Bagmane Constellation Business Park, Outer Ring Road, Doddanekundi Circle, Marathahalli Post, Bangalore-560037, India
The following specification particularly describes and ascertains the nature of this invention and the manner in which it is to be performed:-
TECHNICAL FIELD
[001] The embodiments herein generally relate to the field of wireless communication and more particularly to wireless Peer-to-Peer (P2P) communication.
BACKGROUND
[002] A wireless Peer-to-Peer (P2P) communication enables communication over internet by connecting two or more peers (communication devices) across a network of routers, cables, and switches for exchanging information. Applications such as Gtalk, Viber, and Skype, Extensible Messaging and Presence Protocol (XMPP) solutions, Session Initiation Protocol (SIP) solutions and the like provide P2P communication. The wireless P2P communication requires establishing a P2P session between communication devices such as mobile phones, tablets, laptops and the like that are placed behind Network Address Translators (NATs) or public internet for providing services like Voice over IP (Internet Protocol) (VoIP), video telephony, file transfer or any 2 way/1 way communication. The NAT is an internet standard that enables a local-area network (LAN) (intranet or private network) to use one set of IP addresses for internal traffic and a second set of addresses for external traffic of the public network. A NAT box, located where the intranet meets the internet, performs all necessary IP address translations.
[003] Existing wireless P2P communication methods generally utilize Request for Comments (RFC) standard based process of Simple Traversal of User Datagram Protocol (UDP) Through NATs (STUN), Traversal Using Relay NAT (TURN), Interactive Connectivity Establishment (ICE) or the like for NAT traversal. The RFC standard defines sequence of steps for the P2P session between the communication devices that includes addressing, a session set up (gathering media candidates), a media set up (connectivity checks) and media flow (data transfer). Addressing involves registration by all communication devices interested in establishing the session. Once the registration process is performed, the step of gathering media candidates at both ends involves performing multiple steps for initiating the session. The first step includes each interested communication device exchanging information with each other for setting up the session such as whether the communication device with whom the P2P session is to be established can be reached through a local IP address, a public IP address or a relay IP address. Second step includes an initiator communication device transmitting an invite to desired communication devices that have registered. Further, the interested communication devices respond to the invite request with an accept message and so on. The third step includes process of connectivity checks involves pinging network devices based on the information exchanged during the session set up for resource availability. Further, involves checking whether the communication devices can communicate with each other using local IP address, public IP address, or relay IP address. On completion of connectivity check up, a best path or an optimal path for data transfer is identified and the data transfer is then initiated on the identified optimal path. However, there exists latency in the session set up (candidate gathering) as well as latency in the media set up (connection checks), which may introduce a delay from one to few seconds. Moreover as the steps are sequential the overall latency time adds up introducing a considerable delay in session establishment, thus degrading user experience.
OBJECTS
[004] The principal object of the embodiments herein is to provide a method and a system for wireless Peer to Peer (P2P) communication for minimizing delay in initiating data transfer between a communication device and a peer communication device by using a temporary communication path for performing data transfer, wherein the temporary communication path is based on temporary address received by each communication device from a relay server when the communication device performs registration procedure registers for the wireless P2P communication..
[005] Another object of the embodiments herein is to provide a method for simultaneously performing a session set up and a media set up while the data transfer is carried out on the temporary communication path using the temporary address to identify an optimal communication path for the data transfer.
[006] Another object of the embodiments herein is to provide a method for switching the data transfer on the optimal communication path once the optimal communication path is identified after the media set up.
SUMMARY
[007] In view of the foregoing, an embodiment herein provides a method for a wireless P2P communication. The method comprises receiving a first temporary address during registration procedure of a communication device for the wireless P2P communication. Further, the method comprises transmitting an invite message and the first temporary address to the peer communication device. Furthermore, the method comprises receiving an accept message and a second temporary address from the peer communication device if the peer communication device responds to the invite message. Furthermore, the method comprises initiating data transfer between the communication device and the peer communication device using a temporary communication path based on the first temporary address and the second temporary address received from a relay server.
[008] Embodiments further disclose a wireless P2P communication network for a wireless P2P communication. The wireless P2P communication network comprises a plurality of communication devices, a registration server, and a relay server. Further, a communication device from the plurality of communication devices is configured to receive a first temporary address corresponding to the communication device during registration procedure of the communication device for the wireless P2P communication. Further, the communication device is configured to transmit an invite message and the first temporary address to at least one peer communication device among the plurality of communication devices. Further, the communication device is configured to receive an accept message and a second temporary address corresponding to the at least one peer communication device, from the at least one peer communication device if the at least one peer communication device responds to the invite message. Furthermore, the communication device is configured to initiate data transfer between the communication device and the at least one peer communication device using a temporary communication path based on the first temporary address and the second temporary address.
[009] Embodiments further disclose a communication device for a wireless P2P communication. The communication device comprises a P2P communication module configured to receive a first temporary address corresponding to the communication device during registration procedure of the communication device for the wireless P2P communication. Further, the P2P communication module configured to transmit an invite message and the first temporary address to at least one peer communication device among the plurality of communication devices. Further, the P2P communication module configured to receive an accept message and a second temporary address corresponding to the at least one peer communication device, from the at least one peer communication device if the at least one peer communication device responds to the invite message. Furthermore, P2P communication module configured to initiate data transfer between the communication device and the at least one peer communication device using a temporary communication path based on the first temporary address and the second temporary address.
[0010] These and other aspects of the embodiments herein will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following descriptions, while indicating embodiments and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments herein without departing from the spirit thereof, and the embodiments herein include all such modifications.
BRIEF DESCRIPTION OF FIGURES
[0011] The embodiments of this invention are illustrated in the accompanying drawings, through out which like reference letters indicate corresponding parts in the various figures. The embodiments herein will be better understood from the following description with reference to the drawings, in which:
[0012] FIG. 1 illustrates a wireless Peer to Peer (P2P) communication network, according to embodiments as disclosed herein;
[0013] FIG. 2 illustrates a plurality of components of a communication device for the wireless Peer to Peer (P2P) communication, according to embodiments as disclosed herein;
[0014] FIG. 3 illustrates a plurality of components of a relay server for the wireless Peer to Peer (P2P) communication, according to embodiments as disclosed herein;
[0015] FIG. 4 is a flow diagram illustrating a method for the wireless Peer to Peer (P2P) communication, according to embodiments as disclosed herein; and
[0016] FIG. 5 illustrates a sequence for the wireless Peer to Peer (P2P) communication, according to embodiments as disclosed herein.
DETAILED DESCRIPTION
[0017] The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein may be practiced and to further enable those of skill in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.
[0018] The embodiments herein achieve a method and a system for wireless Peer to Peer (P2P) communication (also referred as P2P communication) for minimizing delay in initiating data transfer between a communication device and a peer communication device in a wireless P2P communication network that utilizes Network Address Translators (NATs). The method includes utilizing a temporary communication path for performing data transfer. The temporary communication path is based on temporary addresses received by each communication device from a relay server when each communication device performs registration procedure with a registration server for the wireless P2P communication. Thus, with the temporary communication path available, the method allows the communication device and the peer communication device to initiate data transfer (or media flow) on the temporary communication path without need to wait for standard steps of a session set up (candidate gathering), a media set up and connectivity checks. Thus, the method proposed enhances user experience by reducing delay in data transfer initiation. The temporary communication path always provides a guaranteed path for data transfer among communication devices (peers) across NATs of the wireless P2P communication network. Further, the method includes performing a session set up and a media set up simultaneously along with the data transfer that is being carried on the temporary communication path. Once the media set up is performed, an optimal communication path is identified. Further, the method includes switching the data transfer on the optimal communication path to provide efficient data transfer.
[0019] In an embodiment, the communication device is a mobile phone, a tablet, a personal digital assistant, a laptop, a wearable device and any other communication device with the P2P communication capability.
[0020] Referring now to the drawings, and more particularly to FIGS. 1 through 5, where similar reference characters denote corresponding features consistently throughout the figures, there are shown embodiments.
[0021] FIG. 1 illustrates a wireless Peer to Peer (P2P) communication network 100, according to embodiments as disclosed herein. In an embodiment, the wireless Peer to Peer (P2P) communication network 100 includes a communication device 102a and a communication device 102b (peer communication device) interested in the P2P communication. For example, the P2P communication may be based on standards such as a Session Initiation Protocol (SIP), an Extensible Messaging and Presence Protocol (XMPP) or the like. The communication device 102a and 102b are placed across NAT 104a and 104b respectively. Each of the communication devices 104a and 104b may be in a private network such as Local Area Network (LAN) that connects to the public network or the internet 100 through the NAT 104a and NAT 104b respectively. A registration server 106 in internet 110 provides P2P communication registration services to a plurality of communication devices in the P2P communication network 100 and also provides presence information of every registered communication device to all other registered communication devices. A relay server 108 in the internet 110 may be configured to assign and provide temporary address to each communication device 102a and 102b respectively as a part of the registration procedure for the wireless P2P communication. In an embodiment, the temporary address may include a relay Internet Protocol (IP) address of the relay server 108 and a port address for the corresponding communication device.
[0022] In an embodiment, an attribute can be added in the existing signaling messages for the registration procedure so as to provide the communication device with the temporary address assigned by the relay server 108. For example, the temporary address can be: :
[0023] Further, whenever a user of the communication device 102a is interested in performing data transfer using the wireless P2P communication, the communication device 102a can be configured to transmit a invite message and the temporary address of the communication device (also referred as first temporary address), forwarded through the registration server 106, to the communication device 102b.
[0024] In an embodiment, existing invite message used by the SIP or the XMPP standards may be modified to include the temporary address to be shared with the peer communication device (communication device 102b).
[0025] For example, a SIP invite can be modified to: a=temp candidate: udp 10.13.125.2 54824
[0026] Further, if the communication device 102b is interested in the initiated P2P communication, the communication device 102a can be configured to receive an accept message from the communication device 102b along with the temporary address of the communication device 102b (also referred as second temporary address).
[0027] In an embodiment, existing accept message used by the SIP or the XMPP standards may be modified to include the temporary address to be shared with the communication device 102a. For example, a SIP accept can be modified to: a=temp candidate: udp 10.13.125.2 54824
[0028] Thus, the communication devices 102a and 102b respectively are able to exchange the temporary address information that defines the temporary communication path. Thus, with the temporary communication path available, the communication device 102a can be configured to initiate data transfer (or media flow) on the temporary communication path without need to wait for standard steps of the session set up (candidate gathering) and the media set up (connectivity checks) with the communication device 102b. Thus, reducing delay in data transfer initiation enhances user experience. The temporary communication path always provides the guaranteed path for data transfer among communication devices (peers) across NATs of the wireless P2P communication network 100. Further, the communication device 102a can be configured enhance the media path by performing the session set up and the media set up simultaneously along with the data transfer that is being carried on the temporary communication path. The media path enhancement includes performing candidate gathering. The candidate gathering is the standard existing procedure that includes checking whether the peer communication device (communication device 102b can be connected using a local IP, a public IP or a relay. Further, once the candidates are gathered using the information exchanged during the session set up media is established (media set up performed). Further, the connectivity checks are performed to identify the optimal communication path between the communication devices 102a and 102b for the data transfer that is currently being carried out on the temporary communication path.
[0029] Once the media set up is performed, the communication device 102a can be configured to identify the optimal communication path and switch the data transfer on the optimal communication path to provide efficient data transfer.
[0030] The description of the wireless P2P network is explained in context P2P communication between two communication devices (the communication device 102a and the communication device 102b (peer communication device) for simplicity and ease of understanding. However, as can be understood by the person skilled in the art, the wireless P2P communication network 100 can be extended easily for P2P communication among the communication device and plurality of communication devices (peer communication devices) with minimal modification.
[0031] FIG. 1 shows a limited overview of the wireless P2P communication network 100. The wireless P2P communication network 100 may include plurality of other components or modules or units that directly or indirectly interact with the components or modules shown in FIG. 1. However, other components are not described here for brevity. Further, the names of the other components of the wireless P2P communication network 100 are illustrative and need not be construed as a limitation.
[0032] FIG. 2 illustrates a plurality of components of the communication device 102a for a wireless Peer to Peer (P2P) communication, according to embodiments as disclosed herein. Referring to figure 2, the communication device 102a is illustrated in accordance with an embodiment of the present subject matter. In an embodiment, the communication device 102a may include at least one processor 202, an input/output (I/O) interface 204 (herein a configurable user interface), a memory 206. The at least one processor 202 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the at least one processor 202 is configured to fetch and execute computer-readable instructions stored in the memory 206.
[0033] The I/O interface 204 may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The I/O interface 204 may allow the communication device 102a to communicate with other devices such as communication devices (for example, the communication device 102b), other network elements of the wireless P2P communication network 100 and the like. The I/O interface 204 may facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, Local Area Network (LAN), cable, etc., and wireless networks, such as Wide LAN, cellular, Device to Device (D2D) communication network, Wi-Fi networks and so on.
[0034] The modules 208 include routines, programs, objects, components, data structures, etc., which perform particular tasks, functions or implement particular abstract data types. In one implementation, the modules 208 may include a P2P communication module 210. The P2P communication module 210 can be configured to register for the P2P communication with the registration server 106 by performing the registration procedure. During the registration procedure the P2P communication module 210 can be configured to receive the temporary address (first temporary address) for the communication device 102a from the relay server 108. For example, the temporary address can be: :
[0035] Based on the other communication devices such as communication device 102b that may have registered for the P2P communication, the P2P communication module 210 can be configured to receive and analyze the presence information of the peer communication device (communication device 102b) that has registered for the P2P communication. Further, whenever the user of the communication device 102 intends to initiate the P2P communication with the communication device 102b, then based on the presence information analysis that indicates readiness of the communication device 102b, the P2P communication module 210 can be configured to transmit invite message and the first temporary address to the communication device 102b through the registration server 106.
[0036] In an embodiment, the P2P communication module 210 can be configured to modify the existing invite message used by the SIP or the XMPP standards to include the temporary address to be shared with the peer communication device (communication device 102b).
[0037] If the communication device 102b is interested in the initiated P2P communication, the communication device 102b responds to the invite message with the accept message along with the temporary address of the communication device 102b (second temporary address). Further, the P2P communication module 210 can be configured to receive the accept message and second temporary address.
[0038] In an embodiment, the P2P communication module 210 can be configured to receive the accept message used by the SIP or the XMPP standards that is modified to include the second temporary address of the peer communication device (communication device 102b) responding to the invite message.
[0039] Further, the P2P communication module 210 can be configured to initiate the data transfer through the relay server 108 using the temporary communication path. The temporary communication path is defined by the first temporary address and second temporary address that provide relay IP address and the port address of the communication devices 102a and 102b for the data transfer. Once the data transfer is initiated, the P2P communication module 210 can be configured to perform the session set up for candidate gathering and the media set up for connectivity checks simultaneously when the data transfer is being carried out on the temporary communication path. Upon completion of the media set up and connectivity checks the optimal communication path is identified for data transfer between the communication devices 102a and 102b respectively. Upon identifying the optimal communication path, the P2P communication module 210 can be configured to switch data transfer to the optimal communication.
[0040] The modules 208 may include programs or coded instructions that supplement applications and functions of the communication device 102a. The data 212, amongst other things, serves as a repository for storing data processed, received, and generated by one or more of the modules 208. Further, the names of the other components and modules of the communication device 102a are illustrative and need not be construed as a limitation.
[0041] FIG. 3 illustrates a plurality of components of the relay server 108 for the wireless Peer to Peer (P2P) communication, according to embodiments as disclosed herein. Referring to figure 3, the relay server 108 is illustrated in accordance with an embodiment of the present subject matter. In an embodiment, the relay server 108 may include at least one processor 302, an input/output (I/O) interface 304 (herein a configurable user interface), a memory 306. The at least one processor 302 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the at least one processor 302 is configured to fetch and execute computer-readable instructions stored in the memory 306.
[0042] The I/O interface 304 may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The I/O interface 304 may allow the relay server 108 to communicate with other devices such as the communication devices, other network elements of the wireless P2P communication network 100 and so on. The I/O interface 304 may facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, D2D communication network, Wi-Fi networks and so on.
[0043] The modules 308 include routines, programs, objects, components, data structures, etc., which perform particular tasks, functions or implement particular abstract data types. In one implementation, the modules 308 may include an addressing module 310. The address module 310 can be configured to assign the temporary address that may include the relay IP address and the port address for each communication device performing registration procedure for the P2P communication. Further, address module 310 can be configured to enable the data transfer using the temporary communication path defined by the temporary addresses on the communication devices102a and 102b respectively until the optimal path is identified by the communication devices 102a and 102b respectively by performing session set up and the media set up.
[0044] The modules 308 may include programs or coded instructions that supplement applications and functions of the relay server 108. The data 312, amongst other things, serves as a repository for storing data processed, received, and generated by one or more of the modules 308. Further, the names of the other components and modules of the relay server 108 are illustrative and need not be construed as a limitation.
[0045] FIG. 4 is a flow diagram illustrating a method 400 for the wireless Peer to Peer (P2P) communication, according to embodiments as disclosed herein. At step 402, the method 400 includes allowing the P2P communication module 210 to register for the P2P communication with the registration server 106 by performing the registration procedure. During the registration procedure, at step 404, the method 400 includes allowing the P2P communication module 210 to receive the temporary address (first temporary address) for the communication device 102a from the relay server 108. Other communication devices such as communication device 102b also register for the P2P communication and receive the temporary address (second temporary address) for the P2P communication. For example, the temporary address can be: :
[0046] At step 406, the method 400 includes allowing the P2P communication module 210 to receive and analyze the presence information of the peer communication device (communication device 102b) that has registered for the P2P communication.
[0047] At step 408, the method 400 includes allowing the P2P communication module 210 to transmit the invite message and first temporary address to the communication device 102b and receive the accept message and second temporary address from the communication device 102b in response to the invite message.
[0048] At step 410, the method 400 includes allowing the P2P communication module 210 to initiate the data transfer using temporary communication path through the relay server 108 that is defined by the first temporary address and the second temporary address.
[0049] At step 412, the method 400 includes allowing the P2P communication module 210 to perform the session set up and the media set up between the communication devices 102a and 102b respectively while the data transfer is being carried our parallel on the temporary communication path. Upon the completion of the media set up and after connectivity checks are performed between the communication devices 102a and 102b respectively, the P2P communication module identifies the optimal communication path.
[0050] At step 414, the method 400 includes allowing the P2P communication module 210 to switch the data transfer to the optimal communication path.
[0051] The method 400 is explained in detail in conjunction with sequence diagram of FIG. 5.
[0052] The various actions in method 400 may be performed in the order presented, in a different order or simultaneously. Further, in some embodiments, some actions listed in FIG. 4 may be omitted.
[0053] The method 400 is explained in context P2P communication between two communication devices (the communication device 102a and the communication device 102b (peer communication device) for simplicity and ease of understanding. However, as can be understood by the person skilled in the art, the method can be easily extended to P2P communication among plurality of communication devices with minimal modification.
[0054] FIG. 5 illustrates a sequence for the wireless Peer to Peer (P2P) communication, according to embodiments as disclosed herein.
[0055] The sequence diagram depicts messaging and signaling for P2P communication between the communication device 102a and the communication device 102b (peer communication device) using the registration server 106 and the relay server 108.
[0056] The communication device 102a registers (502) for the P2P communication with the registration server 106 by performing the registration procedure. During the registration procedure the communication device 102a receives (504) the temporary address (first temporary address) for the communication device 102a from the relay server 108. Other communication devices such as communication device 102b also registers (506) for the P2P communication and receives (508) the temporary address (second temporary address). Further, communication device 102a and the communication device 102b receive (510) the presence information of the peer communication device (communication device 102a and 102b) that have registered for the P2P communication. Further, whenever the user of the communication device 102a intends to initiate the P2P communication with the communication device 102b, then based on the presence information indicating readiness of the communication device 102b the communication device 102a transmits (512) the invite message and the first temporary address to the communication device 102b through the registration server 106. In an embodiment, the existing invite message used by the SIP or the XMPP standards can be modified to include the temporary address to be shared with the peer communication device (communication device 102b). For example, the SIP invite can be modified to: a=temp candidate: udp 10.13.125.2 54824
[0057] If the communication device 102b is interested in the initiated P2P communication, the communication device 102b responds to the invite message with the accept message along with the temporary address of the communication device 102b (second temporary address). Further, the communication device 102a receives (514) the accept message and second temporary address.
[0058] In an embodiment, the accept message used by the SIP or the XMPP standards is modified to include the second temporary address of the peer communication device (communication device 102b) responding to the invite message. For example, the SIP accept can be modified to: a=temp candidate: udp 10.13.125.2 54824
[0059] Further, the communication device 102a and the communication device 102b can be configured to initiate the data transfer through the relay server 108 using the temporary communication path defined by the first temporary address and second temporary address. The temporary address provides relay IP address and the port address of the communication devices 102a and 102b for the data transfer. Once the data transfer is initiated, the communication device 102a performs (516) the session set up for candidate gathering and the media set up for connectivity checks simultaneously when the data transfer is being carried out on the temporary communication path. After the media set up is completed, the communication device 102a identifies the optimal communication path. Upon identifying the optimal communication path, the communication device 102a switches (522) data transfer to the optimal communication path.
[0060] The embodiments disclosed herein can be implemented through at least one software program running on at least one hardware device and performing network management functions to control the network elements. The network elements shown in FIG. 1 through FIG. 5 include blocks which can be at least one of a hardware device, or a combination of hardware device and software module.
[0061] The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments herein have been described in terms of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the embodiments as described herein.
STATEMENT OF CLAIMS
I claim:
1. A method for wireless Peer to Peer (P2P) communication, the method comprising,
receiving, by a communication device, a first temporary address corresponding to the communication device during a registration procedure of the communication device for the wireless P2P communication;
transmitting, by the communication device, an invite message and the first temporary address to at least one peer communication device;
receiving, by the communication device, an accept message and a second temporary address corresponding to the at least one peer communication device, from said at least one peer communication device when the at least one peer communication device responds to the invite message; and
initiating, by the communication device, data transfer between the communication device and the at least one peer communication device using a temporary communication path based on the first temporary address and the second temporary address.
2. The method as claimed in claim 1, wherein the method comprises simultaneously performing a session set up and a media set up during the data transfer to identify an optimal communication path for the wireless P2P communication between the communication device and the at least one peer communication device.
3. The method as claimed in claim 2, wherein the method comprises switching the data transfer from the temporary communication path to the optimal communication path that is identified after the media set up.
4. The method as claimed in claim 1, wherein the registration procedure comprises:
registering for the wireless P2P communication with a registration server;
receiving the first temporary address from a relay server based on the registration message sent to the registration server, wherein the first temporary address comprises at least one of a relay Internet Protocol (IP) address and a port address assigned to the communication device, by the relay server, for the wireless P2P communication; and
receiving presence information of the at least one peer communication device obtained from a registration procedure performed by the at least one peer communication device with the registration server and the relay server, wherein the presence information is analyzed by the communication device to transmit the invite message to the at least one peer communication device.
5. The method as claimed in claim 1, wherein the second temporary address comprises at least one of a relay IP address and a port address assigned to the at least one peer communication device, by a relay server, for the wireless P2P communication.
6. A wireless P2P communication network for a wireless Peer to Peer (P2P) communication comprising a plurality of communication devices, a registration server, a relay server, wherein a communication device from the plurality of communication devices is configured to:
receive a first temporary address corresponding to the communication device during registration procedure of the communication device for the wireless P2P communication;
transmit an invite message and the first temporary address to at least one peer communication device among the plurality of communication devices;
receive an accept message and a second temporary address corresponding to the at least one peer communication device, from the at least one peer communication device when the at least one peer communication device responds to the invite message; and
initiate data transfer between the communication device and the at least one peer communication device using a temporary communication path based on the first temporary address and the second temporary address.
7. A communication device for wireless Peer to Peer (P2P) communication, wherein the communication device comprises a P2P communication module configured to:
receive a first temporary address corresponding to the communication device during registration procedure of the communication device for the wireless P2P communication;
transmit an invite message and the first temporary address to at least one peer communication device among the plurality of communication devices;
receive an accept message and a second temporary address corresponding to the at least one peer communication device, from the at least one peer communication device when the at least one peer communication device responds to the invite message; and
initiate data transfer between the communication device and the at least one peer communication device using a temporary communication path based on the first temporary address and the second temporary address.
8. The communication device as claimed in claim 7, wherein the P2P communication module is configured to simultaneously perform a session set up and a media set up during the data transfer to identify an optimal communication path for the wireless P2P communication between the communication device and the at least one peer communication device.
9. The communication device as claimed in claim 8, wherein the P2P communication module is configured to switch the data transfer from the temporary communication path to the optimal communication path that is identified after the media set up.
10. The communication device as claimed in claim 8, wherein the P2P communication module is configured to perform the registration procedure by:
registering for the wireless P2P communication with a registration server;
receiving the first temporary address from a relay server based on the registration message sent to the registration server, wherein the first temporary address comprises at least one of a relay Internet Protocol (IP) address and a port address assigned to the communication device, by the relay server, for the wireless P2P communication; and
receiving presence information of the at least one peer communication device obtained from a registration procedure performed by the at least one peer communication device with the registration server and the relay server, wherein the presence information is analyzed by the communication device to transmit the invite message to the at least one peer communication device.
11. The communication device as claimed in claim 8, wherein the second temporary address comprises at least one of a relay IP address and a port address assigned to the at least one peer communication device, by a relay server, for the wireless P2P communication.
Dated this 17th November 2015
Signatures:
Name of the Signatory: Dr. Kalyan Chakravarthy
ABSTRACT
A method for a wireless P2P communication is described. The method comprises receiving a first temporary address during registration procedure of a communication device for the wireless P2P communication. Further, the method comprises transmitting an invite message and the first temporary address to the peer communication device. Furthermore, the method comprises receiving an accept message and a second temporary address from the peer communication device when the peer communication device responds to the invite message. Furthermore, the method comprises initiating data transfer between the communication device and the peer communication device using a temporary communication path based on the first temporary address and the second temporary address received from a relay server.
FIG. 5
| # | Name | Date |
|---|---|---|
| 1 | Form 3 [17-11-2015(online)].pdf | 2015-11-17 |
| 2 | Drawing [17-11-2015(online)].pdf | 2015-11-17 |
| 3 | Description(Complete) [17-11-2015(online)].pdf | 2015-11-17 |
| 4 | abstract 6197-CHE-2015.jpg | 2016-03-29 |
| 5 | 6197-CHE-2015-FORM-26 [15-03-2018(online)].pdf | 2018-03-15 |
| 6 | 6197-CHE-2015-FORM-26 [16-03-2018(online)].pdf | 2018-03-16 |
| 7 | 6197-CHE-2015-FER.pdf | 2019-11-14 |
| 1 | SearchStrategyMatrix_11-11-2019.pdf |