Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
MOBILE DEVICE, NETWORK NODE, P2P-CLIENT, P2P-TRACKER AND RESPECTIVE METHODS THEREIN FOR PERFORMING A P2P-SESSION
Document Type and Number:
WIPO Patent Application WO/2014/001327
Kind Code:
A1
Abstract:
A mobile device, a network node, a P2P-client and a P2P-tracker and a respective method performed by a mobile device, a network node, a P2P-client and a P2P- tracker are provided. The method performed by the network node comprises detecting (410) an unfavourable radio uplink situation in a cell of the network node, and transmitting (420, 430, 440) an indication to at least one of the mobile device or the P2P-client or a P2P-tracker indicating the unfavourable radio uplink situation in the cell of the network node.

Inventors:
ZHANG SHUNLIANG (CN)
BASILIER HENRIK (SE)
DAMOLA AYODELE (SE)
ENEROTH GOERAN (SE)
LARSSON CONNY (SE)
WILLARS PER (SE)
Application Number:
PCT/EP2013/063263
Publication Date:
January 03, 2014
Filing Date:
June 25, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
ERICSSON TELEFON AB L M (SE)
International Classes:
H04L29/08
Foreign References:
EP2200248A12010-06-23
Other References:
FANG ZHIYUAN ET AL: "Real-Time State Management in Mobile Peer-to-Peer File-Sharing Services", SERVICE-ORIENTED COMPUTING AND APPLICATIONS, 2007. SOCA '07. IEEE INTE RNATIONAL CONFERENCE ON, IEEE, PI, 1 June 2007 (2007-06-01), pages 255 - 260, XP031116791, ISBN: 978-0-7695-2861-8
YAN ZHANG ET AL: "Peer selection in mobile P2P systems over 3G cellular networks", PERVASIVE COMPUTING AND COMMUNICATIONS WORKSHOPS (PERCOM WORKSHOPS), 2011 IEEE INTERNATIONAL CONFERENCE ON, IEEE, 21 March 2011 (2011-03-21), pages 467 - 470, XP031865718, ISBN: 978-1-61284-938-6, DOI: 10.1109/PERCOMW.2011.5766935
Attorney, Agent or Firm:
BERGENSTRÃ…HLE & LINDVALL AB (S- Stockholm, SE)
Download PDF:
Claims:
CLAIMS

1 . A method (300) performed by a mobile device for acting as a source in a Peer-to-Peer, P2P, session with a P2P-client, the mobile device being associated with a network node, the method comprising:

- receiving (310) an indication from the network node, the indication

indicating an unfavourable radio uplink situation in a cell of the network node,

- setting (320) an operation mode of the mobile device to "sink",

- transmitting (330) an indication to the P2P-client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink".

2. A method (300) according to claim 1 , wherein receiving (310) the indication from the network node indicating the unfavourable radio uplink situation in a cell of the network node comprises receiving Registration Response message or a Peer List Info Response message from a P2P tracker, via the network node, the Registration Response message or the Peer List Info Response message comprising the indication of the unfavourable radio uplink situation; or receiving a Buffer Map message or a Chunk Request message from the P2P-client, via the network node, the Buffer Map message or the Chunk Request message indicating the unfavourable radio uplink situation; or receiving a dedicated message.

3. A method (400) performed by a network node for supporting a Peer-to- Peer, P2P, session between a P2P-client and a mobile device being associated with the network node, the method comprising:

- detecting (410) an unfavourable radio uplink situation in a cell of the

network node,

- transmitting (420, 430, 440) an indication to at least one of the mobile

device or the P2P-client or a P2P-tracker indicating the unfavourable radio uplink situation in the cell of the network node.

4. A method (400) according to claim 3, wherein transmitting (420) the indication to the P2P-client comprises intercepting (421 ) a packet transmitted from the mobile device destined for the P2P-client, setting (422) an indicator included in a Transport Control Protocol/Internet Protocol, TCP/IP, packet header of the intercepted packet to indicate the unfavourable radio uplink situation, and forwarding (423) the intercepted packet to the P2P-client; or intercepting (424) a Chunk Request message transmitted from the mobile device destined for the P2P client, inserting (425) an indication of the unfavourable radio uplink situation into the Chunk Request message, and forwarding (426) the Chunk Request message to the P2P-client; or intercepting (427) a Buffer Map message transmitted from the mobile device destined for the P2P client, emptying (428) a bitmap information of the Buffer Map message, and forwarding (429) the Buffer Map message to the P2P-client.

5. A method (400) according to claim 3, wherein transmitting (430) the indication to the mobile device comprises intercepting (431 ) a Registration

Response message transmitted from the P2P-tracker destined for the mobile device, inserting (432) an indication of the unfavourable radio uplink situation into the Registration Response message, and forwarding (433) the Registration

Response message to the mobile device; or intercepting (434) a Peer List Info Response message transmitted from a P2P-tracker destined for the mobile device, inserting (435) an indication of the unfavourable radio uplink situation into the Peer List Info Response message, and forwarding (436) the Peer List Info

Response message to the mobile device; or intercepting (437) a Buffer Map message transmitted from the P2P-client destined for the mobile device, emptying (438) a bitmap information of the Buffer Map message, and forwarding (439) the Buffer Map message to the mobile device.

6. A method (400) according to claim 3, wherein transmitting (440) the indication to the P2P-tracker comprises intercepting (441 ) a Registration Request message transmitted from the mobile device destined for the P2P-tracker, inserting (442) an indication of the unfavourable radio uplink situation into the Registration Request message, and forwarding (443) the Registration Request message to the P2P-tracker; or intercepting (444) a Peer List Info Request message transmitted from the mobile device destined for the P2P-tracker, inserting (445) an indication of the unfavourable radio uplink situation into the Peer List Info Request message, and forwarding (446) the Peer List Info Request message to the P2P-tracker.

7. A method (500) performed by a Peer-to-Peer, P2P, client for

downloading data by means of a P2P session from a source in a communication network, the P2P-client having a P2P-session established with a first mobile device acting as source , the method comprising:

- receiving (510) an indication from the mobile device, the indication

indicating an unfavourable radio uplink situation in a cell of the network node,

- releasing (520) the P2P-session with the mobile device,

- receiving (530) a list from a P2P-tracker, the list comprising available

sources for downloading data,

- selecting (540) a source other than the mobile device from the received list, and

- initiating (550) establishment of a P2P-session with the selected source.

8. A method (500) according to claim 7, wherein receiving (510) the indication of an unfavourable radio uplink situation from the network node comprises receiving a Buffer Map message from the mobile device, via the network node, the Buffer Map message comprising an unfavourable radio uplink situation indication; or receiving a Chunk Request message from the mobile device, via the network node, the Chunk Request message comprising an unfavourable radio uplink situation indication.

9. A method (600) performed by a Peer-to-Peer, P2P, tracker for updating a list of available sources for downloading of data by means of a P2P-session from the sources to P2P-clients, the method comprising:

- receiving (610) an indication of an unfavourable radio uplink situation from a mobile device via a network node with which the mobile device is

associated, and updating (620) the list of available sources, by either removing the mobile device from the list or setting an operation mode of the mobile device to "sink".

10. A method (600) according to claim 9, wherein receiving (410) the indication of the unfavourable radio uplink situation from the mobile device via the network node comprises receiving a Registration Request message comprising the indication of the unfavourable radio uplink situation; or receiving a Peer List Info Request message comprising the indication of the unfavourable radio uplink situation.

1 1 . A method (300, 400, 500, 600) according to any of claims 1 -10, wherein the unfavourable radio uplink situation is at least one of an uplink congestion situation in a cell of the network node, a poor radio link quality or an unstable radio link of mobile devices associated with the network node.

12. A mobile device (800) adapted for acting as a source in a Peer-to-Peer, P2P, session with a P2P-client, the mobile device being associated with a network node, the mobile device comprising:

- a receiving unit (802) adapted for receiving an indication from the network node, the indication indicating an unfavourable radio uplink situation in a cell of the network node,

- a mode setting unit (803) adapted for setting an operation mode of the

mobile device to "sink", and

- a transmitting unit (804) adapted for transmitting an indication to the P2P- client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink".

13. A mobile device (800) according to claim 12, wherein the receiving unit (802) is adapted for receiving the indication from the network node indicating the unfavourable radio uplink situation in a cell of the network node by receiving a Registration Response message or a Peer List Info Response message from a P2P tracker, via the network node, the Registration Response message or the Peer List Info Response message comprising the indication of the unfavourable radio uplink situation; or by receiving a Buffer Map message or a Chunk Request message from the P2P-client, via the network node, the Buffer Map message or the Chunk Request message indicating the unfavourable radio uplink situation; or by receiving a dedicated message.

14. A network node (900) adapted for supporting a Peer-to-Peer, P2P, session between a P2P-client and a mobile device being associated with the network node, the network node comprising:

- a detecting unit (903) adapted for detecting an unfavourable radio uplink situation in a cell of the network node, and

- a transmitting unit (908) adapted for transmitting an indication to at least one of the mobile device or the P2P-client or a P2P-tracker indicating the unfavourable radio uplink situation in the cell of the network node.

15. A network node (900) according to claim 14, further comprising an intercepting unit (904) adapted for intercepting a packet transmitted from the mobile device destined for the P2P-client , and an indicator setting unit (906) adapted for setting an indicator included in a Transport Control Protocol/Internet Protocol, TCP/IP, packet header of the intercepted packet to indicate the unfavourable radio uplink situation, wherein the transmitting unit (908) is adapted for transmitting the indication to the P2P-client by forwarding the intercepted packet to the P2P-client.

16. A network node (900) according to claim 14, further comprising an intercepting unit (904) adapted for intercepting a Chunk Request message transmitted from the mobile device destined for the P2P client, and an inserting unit (905) adapted for inserting an indication of the unfavourable radio uplink situation into the Chunk Request message, wherein the transmitting unit (908) is adapted for transmitting the indication to the P2P-client by forwarding the Chunk Request message to the P2P-client.

17. A network node (900) according to claim 14, further comprising an intercepting unit (904) adapted for intercepting a Buffer Map message transmitted from the mobile device destined for the P2P client, and an emptying unit (907) adapted for emptying a bitmap information of the Buffer Map message, wherein the transmitting unit (908) is adapted for transmitting the indication to the P2P- client by forwarding the Buffer Map message to the P2P-client.

18. A network node (900) according to claim 14, further comprising an intercepting unit (904) adapted for intercepting a Registration Response message transmitted from the P2P-tracker destined for the mobile device or for intercepting a Peer List Info Response message transmitted from a P2P-tracker destined for the mobile device, and an inserting unit (905) adapted for inserting an indication of the unfavourable radio uplink situation into the Registration Response message or for inserting an indication of the unfavourable radio uplink situation into the Peer List Info Response message, wherein the transmitting unit (908) is adapted for transmitting the indication to the mobile device by forwarding the Registration Response message to the mobile device or for transmitting the indication to the mobile device by forwarding the Peer List Info Response message to the mobile device.

19. A network node (900) according to claim 14, further comprising an intercepting unit (904) adapted for intercepting a Buffer Map message transmitted from the P2P-client destined for the mobile device, and an emptying unit (907) adapted for emptying a bitmap information of the Buffer Map message, wherein the transmitting unit (908) is adapted for transmitting the indication to the mobile device by forwarding the Buffer Map message to the mobile device.

20. A network node (900) according to claim 14, further comprising an intercepting unit (904) adapted for intercepting a Registration Request message transmitted from the mobile device destined for the P2P-tracker, and an inserting unit (905) adapted for inserting an indication of the unfavourable radio uplink situation into the Registration Request message, wherein the transmitting unit (908) is adapted for transmitting the indication to the mobile device by forwarding the Registration Request message to the P2P-tracker.

21 . A network node (900) according to claim 14, further comprising an intercepting unit (904) adapted for intercepting a Peer List Info Request message transmitted from the mobile device destined for the P2P-tracker, and an inserting unit (905) adapted for inserting an indication of the unfavourable radio uplink situation into the Peer List Info Request message, wherein the transmitting unit (908) is adapted for transmitting the indication to the P2P-tracker by forwarding the Peer List Info Request message to the P2P-tracker.

22. A Peer-to-Peer, P2P,client (1000) adapted for downloading data by means of a P2P session from a source in a communication network, the P2P- client having a P2P-session established with a first mobile device acting as source, the P2P client comprising:

- a receiving unit (1002) adapted for receiving an indication from the mobile device, the indication indicating an unfavourable radio uplink situation in a cell of the network node, and for receiving a list from a P2P-tracker, the list comprising available sources for downloading data,

- a releasing unit (1003) adapted for releasing the P2P-session with the mobile device,

- a selecting unit (1004) adapted for selecting a source other than the mobile device from the received list, and

- an initiating unit (1005) adapted for initiating establishment of a P2P- session with the selected source.

23. A P2P client (1000) according to claim 22, wherein the receiving unit (1002) is adapted for receiving the indication of an unfavourable radio uplink situation from the network node by receiving a Buffer Map message from the mobile device, via the network node, the Buffer Map message comprising an unfavourable radio uplink situation indication; or by receiving a Chunk Request message from the mobile device, via the network node, the Chunk Request message comprising an unfavourable radio uplink situation indication.

24. A Peer-to-Peer, P2P, tracker (1 100) adapted for updating a list of available sources for downloading of data by means of a P2P-session from the sources to P2P-clients, the P2P tracker comprising: - a receiving unit (1 102) adapted for receiving an indication of an

unfavourable radio uplink situation from a mobile device via a network node with which the mobile device is associated, and

- an updating unit (1 103) adapted for updating the list of available sources, by either removing the mobile device from the list or setting an operation mode of the mobile device to "sink".

25. A P2P tracker (1 100) according to claim 24, wherein the receiving unit (1 102) further is adapted for receiving the indication of the unfavourable radio uplink situation from the mobile device via the network node by receiving a

Registration Request message comprising the indication of the unfavourable radio uplink situation; or by receiving a Peer List Info Request message comprising the indication of the unfavourable radio uplink situation.

26. A Computer program (1210), comprising computer readable code means, which when run in a processing unit (1206) comprised in an arrangement in a mobile device (800, 1200) according to claims 12-13 causes the mobile device (800, 1200) to perform the corresponding method according to claim 1 -2.

27. A Computer program product (1208) comprising computer program (1010) according to claim 26.

28. A Computer program (1310), comprising computer readable code means, which when run in a processing unit (1306) comprised in an arrangement in a network node (900, 1300) according to claims 14-21 causes the network node (900, 1300) to perform the corresponding method according to claim 3-6.

29. A Computer program product (1308) comprising computer program (1310) according to claim 28.

30. A Computer program (1410), comprising computer readable code means, which when run in a processing unit (1406) comprised in an arrangement in a Peer-to-Peer client (1000, 1400) according to claims 22-23 causes the Peer- to-Peer client (1000, 1400) to perform the corresponding method according to claim 7-8.

31 . A Computer program product (1408) comprising computer program (1410) according to claim 30.

32. A Computer program (1510), comprising computer readable code means, which when run in a processing unit (1506) comprised in an arrangement in a Peer-to-Peer tracker (1 100, 1500) according to claims 24-25 causes the Peer- to-Peer tracker (1 100, 1500) to perform the corresponding method according to claim 9-10.

33. A Computer program product (1508) comprising computer program (1510) according to claim 32.

Description:
MOBILE DEVICE, NETWORK NODE, P2P-CLIENT, P2P-TRACKER AND RESPECTIVE METHODS THEREIN FOR PERFORMING A P2P-SESSION

Technical field

[0001 ] The present disclosure relates to Peer-to-Peer, P2P, streaming in a mobile network and in particular to a solution that may enhance the P2P user's Quality of Experience, QoE, by addressing mobile network problems that impact an ongoing P2P streaming.

Background

[0002] Recently, due to the rapid increase of smart phone usage, data traffic on mobile network is experiencing an explosive growth. Streaming is an important part of data traffic to mobile devices. According to a report from Allot Company, at the end of the first quarter of 201 1 , video traffic accounted for 39% of the mobile data traffic. Besides, according to the forecast from CISCO, video streaming will account for about 70% of all mobile data at 2016. Along this trend, there is a continuing interest in improving the streaming delivery methods. Among all these methods, Content Distribution Network (CDN) and Peer-to-Peer (P2P) are currently most popular approaches streaming content over networks.

[0003] The P2P based streaming systems have been quite successful in context of fixed access networks. For example, according to information from the Internet, PPIive has about 1 10 million users, of these are 2 million concurrent online peers and there are 600+ channels. Among its user group, 20%-30% are outside of China (10-15% in US). Meanwhile, another big player, PPstream has about 350 million installations and about 12 million active users each day. Most P2P streaming systems are quite scalable by making use of UL contribution from large amount of peers. Due to the advantages of P2P system, several leading CDN providers such as Akamai and Limelight have started to introduce P2P methods in their CDN system.

[0004] However, the existing P2P streaming methods used in fixed networks face some serious problems when used in mobile networks. For example, in contrast to the fixed access networks, in the mobile networks the radio link and cell load status are more dynamic due to dynamic radio environment and UEs' mobility, which occasionally result in local spikes of the data traffic impacting negatively the QoE of P2P streaming.

[0005] Figure 1 illustrates one of the problems related to the P2P streaming in mobile networks. A mobile device 120 (i.e. Peer B) located in a radio cell is fetching packets to devices 1 10 and 140 (i.e. Peer A and Peer D) located in fixed networks or other radio cells. When the cell in which Peer B is located becomes congested, the delivery of packets from Peer B is negatively impacted, i.e. the packets are delayed or dropped. The destination devices, Peer A and Peer D which are not located in the same radio cell as Peer B may not know about the congestion in the cell in which Peer B is located and continue to expect packets from Peer B. Thus, the streaming QoE for Peer A and Peer D is negatively impacted.

[0006] Figure 2 illustrates another of the problems related to the P2P streaming in mobile networks. A mobile device 220 (i.e. Peer B) located in a radio cell is fetching packets to devices 210, 230, and 240 (i.e. Peer A, Peer C and Peer D) located in fixed networks or other radio cells. When the signal strength along the radio link between Peer B and the eNB serving the radio cell in which Peer B is located degrades (for any reason), the quality of the radio link between Peer B and the mobile network becomes poor impacting negatively the streaming (i.e. the packets are delayed or dropped). The quality of the radio link may recover after a while. For some mobile devices in a cell, the quality of the radio link may be more stable and reliable (such for UEs located close to the cell centre and moving at a low speed), while for other mobile devices in the same cell, the quality of the radio link may be less stable and reliable (such as for UEs located close to the cell edge or moving at a high speed).

[0007] The P2P system optimisation or QoE improvement by cross layer mechanisms have previously been considered. For example, in the peer-driven biased neighbour selection, a specific peer performs an optimised neighbour selection (or locality aware neighbour selection) according to various metrics such as, latency based topology maps, AS mapping and other related metrics. Another example is the ISP-driven biased neighbour selection, in which the Internet Service Provider, ISP, provides underlying network information by some network elements to P2P application system for optimised peer selection. The underlying network information could be network topology, operational cost, operators' policy, routing state information.

[0008] The existing methods aiming to enhance P2P system performance or to make it more ISP friendly have not addressed the mobile network specific issues described above and illustrated in Figures 1 and 2. In particular, in the end to end P2P streaming system, it is highly possible the radio link to be affected by bottle necks. In mobile networks, the radio link and radio cell status information is more dynamic compared with backhaul and IP backbone links. Furthermore, usually, it is the radio network itself that knows the dynamic radio link and cell load status more clearly and accurately than any other elements involved in the end to end P2P system.

Summary

[0009] The object is to obviate at least some of the problems outlined above. In particular, it is an object to provide a mobile device and a method performed by the mobile device for acting as a source in a P2P session with a P2P-client, wherein the mobile device is associated with a network node. It is further an object to provide a network node and a method performed by the network node for supporting a P2P session between a P2P-client and a mobile device associated with the network node. A further object is to provide a P2P-client and a method performed by the P2P-client for downloading data by means of a P2P-session from a source in a communication network, wherein the P2P-client has a P2P- session established with a first mobile device acting as a source. Still an object is to provide a P2P-tracker and a method performed by the P2P-tracker for updating a list of available sources for downloading of data by means of a P2P-session from the sources to P2P-clients. These objects and others may be obtained by providing a mobile device, a network node, a P2P-client and a P2P-tracker and a respective method performed by a mobile device, a network node, a P2P-client and a P2P-tracker according to the independent claims attached below. [00010] According to an aspect a method performed by a mobile device for acting as a source in a P2P session with a P2P-client, wherein the mobile device is associated with a network node is provided. The method comprises receiving an indication from the network node, the indication indicating an unfavourable radio uplink situation in a cell of the network node; and setting an operation mode, or status, of the mobile device to "sink". The method further comprises transmitting an indication to the P2P-client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink".

[0001 1 ] According to an aspect, a method performed by a network node for supporting a P2P session between a P2P-client and a mobile device associated with the network node is provided. The method comprises comprising detecting an unfavourable radio uplink situation in a cell of the network node, and transmitting an indication to at least one of the mobile device or the P2P-client or a P2P-tracker indicating the unfavourable radio uplink situation in the cell of the network node.

[00012] According to an aspect, a method performed by a P2P-client for downloading data by means of a P2P-session from a source in a communication network, wherein the P2P-client has a P2P-session established with a first mobile device acting as a source is provided. The method comprises receiving an indication from the mobile device, the indication indicating an unfavourable radio uplink situation in a cell of the network node; and releasing the P2P-session with the mobile device. The method further comprises receiving a list from a P2P- tracker, the list comprising available sources for downloading data; selecting a source other than the mobile device from the received list, and initiating

establishment of a P2P-session with the selected source.

[00013] According to still an aspect, a method performed by a P2P-tracker for updating a list of available sources for downloading of data by means of a P2P- session from the sources to P2P-clients is provided. The method comprises receiving an indication of an unfavourable radio uplink situation from a mobile device via a network node with which the mobile device is associated; and updating the list of available sources, by either removing the mobile device from the list or setting an operation mode, or status, of the mobile device to "sink". [00014] According to still an aspect, a mobile device adapted for acting as a source in a P2P-session with a P2P-client, wherein the mobile device is associated with a network node is provided. The mobile device comprises a receiving unit adapted for receiving an indication from the network node, the indication indicating an unfavourable radio uplink situation in a cell of the network node; and a mode setting unit adapted for setting an operation mode of the mobile device to "sink". The mobile device further comprises a transmitting unit adapted for transmitting an indication to the P2P-client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink".

[00015] According to yet an aspect, a network node adapted for supporting a P2P-session between a P2P-client and a mobile device being associated with the network node is provided. The network node comprises a detecting unit adapted for detecting an unfavourable radio uplink situation in a cell of the network node; and a transmitting unit adapted for transmitting an indication to at least one of the mobile device or the P2P-client or a P2P-tracker indicating the unfavourable radio uplink situation in the cell of the network node.

[00016] According to an aspect, a P2P-client adapted for downloading data by means of a P2P-session from a source in a communication network, wherein the P2P-client has a P2P-session established with a first mobile device acting as source is provided. The P2P-client comprises a receiving unit adapted for receiving an indication from the mobile device, the indication indicating an unfavourable radio uplink situation in a cell of the network node, and for receiving a list from a P2P-tracker, the list comprising available sources for downloading data. The P2P-client further comprises a releasing unit adapted for releasing the P2P-session with the mobile device, a selecting unit adapted for selecting a source other than the mobile device from the received list; and an initiating unit adapted for initiating establishment of a P2P-session with the selected source.

[00017] According to yet an aspect, a P2P-tracker adapted for updating a list of available sources for downloading of data by means of a P2P-session from the sources to P2P-clients is provided. The P2P-tracker comprises a receiving unit adapted for receiving an indication of an unfavourable radio uplink situation from a mobile device via a network node with which the mobile device is associated, and an updating unit adapted for updating the list of available sources, by either removing the mobile device from the list or setting an operation mode, or status, of the mobile device to "sink".

[00018] The mobile device, the network node, the P2P-client and the P2P-tracker as well as the respective method performed by the mobile device, the network node, the P2P-client and the P2P-tracker may have several advantages. One possible advantage is that the solution enables a P2P-system to improve the Quality of Experience, QoE, of streaming data by taking the real time radio link status information of the involved peers into consideration for a P2P-session. The solution is simple and feasible from implementation point of view.

Brief description of drawings

[00019] Embodiments will now be described in more detail in relation to the accompanying drawings, in which:

[00020] Figure 1 is a schematic diagram of a conventional mobile network system in which it is provided a P2P service negatively affected by a cell congestion situation.

[00021 ] Figure 2 is a schematic diagram of a conventional mobile network system in which it is provided a P2P service negatively affected by poor link quality.

[00022] Figure 3 is a flowchart of a method performed by a mobile device for acting as a source in a P2P-session according to an exemplifying embodiment.

[00023] Figure 4a is a flowchart of a method performed by a network node for supporting a P2P-session between a P2P client and a mobile device according to an exemplifying embodiment.

[00024] Figures 4b-4k are flowcharts of exemplifying embodiments of a method performed by a network node for supporting a P2P-session between a P2P client and a mobile device. [00025] Figure 5 is a flowchart of a method performed by a P2P-client for downloading data by means of a P2P-session from a source in a communication network according to an exemplifying embodiment.

[00026] Figure 6 is a flowchart of a method performed by a P2P-tracker for updating a list of available sources for downloading data by means of a P2P- session according to an exemplifying embodiment.

[00027] Figures 7a-7f are signalling diagrams illustrating examples of interactions between entities associated with P2P-sessions.

[00028] Figure 8 is a block diagram of a mobile adapted for acting as a source in a P2P-session according to an exemplifying embodiment.

[00029] Figure 9 is a block diagram of a network node adapted for supporting a P2P-session between a P2P client and a mobile device according to an

exemplifying embodiment.

[00030] Figure 10 is a block diagram of a P2P-client adapted for downloading data by means of a P2P-session from a source in a communication network according to an exemplifying embodiment.

[00031 ] Figure 1 1 is a block diagram of a P2P-tracker adapted for updating a list of available sources for downloading data by means of a P2P-session according to an exemplifying embodiment.

[00032] Figure 12 is a block diagram of an arrangement in a mobile adapted for acting as a source in a P2P-session according to an exemplifying embodiment.

[00033] Figure 13 is a block diagram of an arrangement in a network node adapted for supporting a P2P-session between a P2P client and a mobile device according to an exemplifying embodiment.

[00034] Figure 14 is a block diagram of a P2P-client adapted for downloading data by means of a P2P-session from a source in a communication network according to an exemplifying embodiment. [00035] Figure 15 is a block diagram of a P2P-tracker adapted for updating a list of available sources for downloading data by means of a P2P-session according to an exemplifying embodiment.

[00036] Figure 16 is a schematic diagram of a mobile network system according to an exemplifying embodiment.

Detailed description

[00037] Briefly described, a mobile device and a method performed by the mobile device for acting as a source in a P2P-session are provided. Further, network node and a method performed by the network node for supporting a P2P session between a mobile device and a P2P-client are provided. Still further, a P2P-client and a method performed by the P2P-client for downloading data by means of a P2P session are provided. Also a P2P-tracker and a method performed by the P2P-tracker for updating a list of available sources for downloading of data by means of a P2P-session are provided.

[00038] A network node associated with a Radio Access Network, RAN, may have a coverage area which is often referred to as a cell. In the cell, mobile devices may be located and being connected to the network node for accessing the RAN and services provided by a network associated with the RAN. The number of mobile devices and their individual activities may vary substantially over time and at some time, the network node may not be able to support or provide any additional and/or possibly some currently ongoing service. If such a scenario occurs, it would be beneficial if concerned entities may be notified and/or if concerned entities are enabled to take some actions in response to being aware of the occurrence of such a scenario. Examples of network nodes are Base Station, Radio Base Station, Base Station Controller, node B (NB), eNB, and Radio

Network Controller.

[00039] An embodiment of a method performed by a mobile device for acting as a source in a P2P-session with a P2P-client is illustrated in figure 3. The mobile device is associated with a network node. Figure 3 illustrates the method comprising receiving 310 an indication from the network node, the indication indicating an unfavourable radio uplink situation in a cell of the network node; and setting 320 an operation mode, or status, of the mobile device to "sink". The method further comprises transmitting 330 an indication to the P2P-client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink". The term "sink", means that the mobile device is not suitable or even available for any P2P-client wanting to download data from the mobile device.

[00040] The mobile device is acting as a source in the P2P-session with the P2P- client. This means that the mobile device is transmitting data in the form of packets to the P2P-client, which is downloading data from the mobile device by means of the P2P-session. The mobile device is connected to the RAN by the network node, hence the mobile device is associated with the network node. At one point, the mobile device receives an indication from the network node, the indication indicating an unfavourable radio uplink situation in a cell of the network node. This indication tells the mobile device that it should refrain from, and/or stop,

transmitting data by means of the P2P-session. The mobile device then sets the operation mode, or status, of the mobile device to "sink", which means that the mobile device is not suitable or even available for any P2P-client wanting to download data from the mobile device. The mobile device then transmits the indication to the P2P-client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink". In this manner, the mobile device informs either the P2P-client that is downloading data from the mobile device that the mobile device cannot further be used as a source for the P2P- client, or the mobile device informs the P2P-tracker that the mobile device cannot further be used as a source for any client wanting to download data from the mobile device by means of a P2P-session.

[00041 ] The method may have several advantages. One possible advantage is that the solution enables a P2P-system to improve the Quality of Experience, QoE, of streaming data by taking the real time radio link status information of the involved peers into consideration for a P2P-session. The solution is simple and feasible from implementation point of view. [00042] The unfavourable radio uplink situation may be at least one of an uplink congestion situation in a cell of the network node, a poor radio link quality or an unstable radio link of mobile devices associated with the network node.

[00043] These are some examples of possible unfavourable radio uplink situations. Congestion may be determined by an operator to be e.g. a percentage of available radio resources (or cell load) of the network node currently in use. For example, if the usage ratio of available radio resources of the network node currently in use reaches 85%, then the network node may determine that there is a risk for congestion, or that congestion has occurred. It shall be pointed out that the specific ratio may be determined by an operator to be any percentage. Another possible situation of congestion is that a load of a processing unit, or a scheduler, of the network node has reached a certain threshold, e.g. 90%.

[00044] Poor radio link quality may also be defined by an operator. Merely as an example, if a measured pathloss, or a Signal to Interference and Noise Ratio (SINR), for the radio link of the mobile device, or any other mobile device currently being associated or connected to the network node, reaches a predefined threshold then the network node may determine that the radio link quality may be poor.

[00045] Unstable radio link of the mobile device, or any other mobile device currently being associated or connected to the network node, may be defined as relatively short temporary connection interruptions. If the network node detects that the connection to the mobile device, or any other mobile device currently being associated or connected to the network node, temporarily loses connection with the network node, then the network node may determine that an unfavourable radio uplink situation has occurred, i.e. an unstable radio link of the network node has been detected.

[00046] Receiving 310 the indication from the network node indicating the unfavourable radio uplink situation in a cell of the network node may comprise receiving a Registration Response message or a Peer List Info Response message from a P2P tracker, via the network node, the Registration Response message or the Peer List Info Response message comprising the indication of the unfavourable radio uplink situation.

[00047] In case the mobile device is not currently registered at the P2P-tracker as being available as a source for a P2P-session (via the network node), the mobile device may send a Registration Request message to the P2P-tracker in order to register itself at the P2P-tracker. The mobile device sends the Registration

Request message via the network node. In case the network node has detected an unfavourable radio uplink situation, the network node may intercept the

Registration Request message as will be described in more detail below. The network node may intercept the Registration Request message and insert the indication of the unfavourable radio uplink situation into the message and forward the message to the P2P-tracker. In this manner, the P2P-tracker may be informed about the unfavourable radio uplink situation. Thus, when P2P-tracker sends the Registration Response message, the message may comprise the indication of the unfavourable radio uplink situation, or the Registration Response message may be intercepted by the network node, the network node then inserts the indication of the unfavourable radio uplink situation into the Registration Response message before forwarding the Registration Response message to the mobile device.

[00048] In the same manner, if e.g. the mobile device is already registered at the P2P-tracker but is not downloading data and decides to download data. In such a case, the mobile device may first send a Peer List Info Request message to the P2P-tracker, via the network node, in order to get a list of possible available sources from which the mobile device may download data. The network node may, in the same manner as described above, intercept the Peer List Info Request message and insert the indication of the unfavourable radio uplink situation into the message and forward the message to the P2P-tracker. In this manner, the P2P-tracker may be informed about the unfavourable radio uplink situation. Thus, when P2P-tracker sends the Peer List Info Response message, the message may comprise the indication of the unfavourable radio uplink situation, or the Peer List Info Response message may be intercepted by the network node, the network node then inserts the indication of the unfavourable radio uplink situation into the Peer List Info Response message before forwarding the message to the mobile device.

[00049] It shall be pointed out that the mobile device simultaneously may be involved in another P2P-session and in that session downloading data from another source, which source may or may not be the same P2P-client concurrently downloading data from the mobile device.

[00050] Receiving 310 the indication from the network node indicating the unfavourable radio uplink situation in a cell of the network node may comprise receiving a Buffer Map message or a Chunk Request message from the P2P- client, via the network node, the Buffer Map message or the Chunk Request message indicating the unfavourable radio uplink situation.

[00051 ] Assume the mobile device has decided to start a P2P-session wanting to download data from the P2P-client. This may happen during an ongoing P2P- session in which the P2P-client is already downloading data from the mobile device. Alternatively, the mobile device is acting as a source for a first P2P-client, i.e. the first P2P-client is downloading data from the mobile device. The mobile device decides to start downloading from a second P2P-client during the P2P- session with the first P2P-client. The mobile device may send a Buffer Map

Request message to the P2P-client (or the second P2P-client) in order to obtain information about the data available at the P2P-client (or the second P2P-client) for downloading by the mobile device. In response to receiving the Buffer Map Request message, the P2P-client (or the second P2P-client) sends a Buffer Map message to the mobile device comprising information about the data available at the P2P-client (or the second P2P-client) for downloading by the mobile device. The information comprised in the Buffer Map message may be in the form of a bitmap. The network node may intercept the Buffer Map message sent from the P2P-client (or the second P2P-client) destined for the mobile device. The network node has detected the unfavourable radio uplink situation and intercepts the Buffer Map message and modifies the information of the message, e.g. by emptying the data information of the Buffer Map message, i.e. setting the data information to "0" as an indication to the mobile device of the unfavourable radio uplink situation. Then the network node may send the modified Buffer Map message to the mobile device. In response to receiving the modified Buffer Map message, the mobile device then sets the operation mode of the mobile device to "sink" and transmits the indication to the P2P-client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink". In this manner, the mobile device informs either the P2P-client that is downloading data from the mobile device that the mobile device cannot further be used as a source for the P2P- client, or the mobile device informs the P2P-tracker that the mobile device cannot further be used as a source for any client wanting to download data from the mobile device by means of a P2P-session.

[00052] The mobile device may also receive a Chunk Request message indicating the unfavourable radio uplink situation. The mobile device has been registered at the P2P-tracker as being available via the network node to act as a source for a P2P-client wanting to download data. The above described Buffer Map Request message and Buffer Map message have been exchanged, without any interference (i.e. modification of the information comprised in the respective messages) by the network node. Then, when the P2P-client want to start downloading from the mobile device, the P2P-client sends a Chunk Request message to the mobile device. This message may then be intercepted by the network node ...

[00053] Receiving 310 the indication from the network node indicating an unfavourable radio uplink situation in a cell of the network node may comprise receiving a dedicated message.

[00054] Instead of using already existing messages used by a P2P-system, a dedicated message may be used. If so, the network node may use a message which is primarily used for informing the mobile device (and/or other entities) about the unfavourable radio uplink situation.

[00055] Embodiments herein also relate to a method performed by a network node for supporting a P2P-session between a P2P-client and a mobile device being associated with the network node. Embodiments of such a method will now be described with reference to figures 2a-2k.

[00056] Figure 4a illustrates the method comprising detecting 410 an

unfavourable radio uplink situation in a cell of the network node, and transmitting 420, 430, 440 an indication to at least one of the mobile device or the P2P-client or a P2P-tracker indicating the unfavourable radio uplink situation in the cell of the network node.

[00057] The network node may be serving, or be connected to, a plurality of mobile devices. The mobile devices may be located throughout the cell (i.e. the coverage area) of the network node. The mobile device may further be moving around in the cell and/or engaged in a variety of different services causing varying load on the cell and/or the network node. Another result of relatively many mobile devices is that they may cause interference to each other thus deteriorating the link quality or channel quality, e.g. the uplink radio quality. The variation in load and channel quality may be monitored by the network node so that it may take different actions in case such situations occur, e.g. an unfavourable radio uplink situation, in order to improve the situation or to prevent a further deterioration.

[00058] In the event the network node detects the unfavourable radio uplink situation in the cell of the network node, the network node transmits an indication to at least one of the mobile device or the P2P-client or a P2P-tracker indicating the unfavourable radio uplink situation in the cell of the network node in order for the mobile device, the P2P-client or the P2P-tracker to take action in order to trying to stop the situation of the network node to further worsen and/or for the P2P-client to swiftly find another source for downloading the data. By swiftly finding another source for downloading the data the P2P-client want to obtain, the user of the P2P-client may experience a higher QoE, compared to the

downloading terminating.

[00059] The method may have several advantages. One possible advantage is that the solution enables a P2P-system to improve the Quality of Experience, QoE, of streaming data by taking the real time radio link status information of the involved peers into consideration for a P2P-session. The solution is simple and feasible from implementation point of view.

[00060] The unfavourable radio uplink situation may be at least one of an uplink congestion situation in a cell of the network node, a poor radio link quality or an unstable radio link of mobile devices associated with the network node as described above.

[00061 ] Transmitting 420 the indication to the P2P-client may comprise

intercepting 421 a packet transmitted from the mobile device destined for the P2P- client, setting 422 an indicator included in a Transport Control Protocol/Internet Protocol, TCP/IP, packet header of the intercepted packet to indicate the unfavourable radio uplink situation, and forwarding 423 the intercepted packet to the P2P-client.

[00062] Figure 4b illustrates the above example. During an ongoing P2P-session, the P2P-client is downloading data from the mobile device. This is done by the mobile device sending packets comprising data to the P2P-client. The packets may be sent using a packet based protocol, e.g. TCP/IP. A TCP/IP packet comprises a header and a data portion. The header comprises different

information such as for example destination address and much more. The network node may in this example thus intercept a 421 a packet transmitted from the mobile device destined for the P2P-client. As described above, the mobile device is connected to the RAN and subsequently also the P2P-client by the network node. Hence, all packets and signals transmitted to and from the mobile device go via the network node. The network node intercepts the packet (i.e. a TCP/IP packet) and sets the indicator included in the TCP/IP packet header of the packet to indicate the unfavourable radio uplink situation. The network node then forwards the intercepted packet to the P2P-client.

[00063] When the P2P-client then receives the packet, the P2P-client is informed about the occurred the unfavourable radio uplink situation in the cell in which the mobile device is located, the P2P-client may try to find another source from which to download the remaining data the P2P-client wishes to download. In this manner, the mobile device will not receive any further requests from the P2P-client for data and the P2P-client may try to find an alternative source for downloading. This will be described in more detail below.

[00064] Transmitting 420 the indication to the P2P-client comprises intercepting 424 a Chunk Request message transmitted from the mobile device destined for the P2P client, inserting 425 an indication of the unfavourable radio uplink situation into the Chunk Request message, and forwarding 426 the Chunk Request message to the P2P-client.

[00065] Figure 4c illustrates the above example. The mobile device may be involved in a first P2P-session in which the P2P-client is downloading data from the mobile device and during this first P2P-session, the mobile device wants to also download data itself either from the same P2P-client that is downloading data from the mobile device or from any other available P2P-client in a second P2P- session. In order to download data from the P2P-client during the second P2P- session, the mobile device sends the Chunk Request message destined for the P2P-client. The network node may then intercept the Chunk Request message and inserting the indication of the unfavourable radio uplink situation that the network node has detected and then the Chunk Request message to the P2P- client. In this manner, the P2P-client is informed about the occurred unfavourable radio uplink situation in the cell of the network node and is enabled to take appropriate action(s), which will be described in more detail below.

[00066] Transmitting 420 the indication to the P2P-client comprises intercepting 427 a Buffer Map message transmitted from the mobile device destined for the P2P client, emptying 428 a bitmap information of the Buffer Map message, and forwarding 429 the Buffer Map message to the P2P-client.

[00067] Figure 4d illustrates the above example. When the P2P-client wishes to download data from the mobile device, the P2P-client sends a Buffer Map Request message to the mobile device in order to obtain information about the data available at the mobile device for downloading by the P2P-client. [00068] In response to receiving the Buffer Map Request message, the mobile device sends a Buffer Map message to the mobile device comprising information about the data available at the mobile device for downloading by the P2P-client. The information comprised in the Buffer Map message may be in the form of a bitmap. The network node may intercept the Buffer Map message sent from the mobile device destined for the P2P-client. The network node has detected the unfavourable radio uplink situation and intercepts the Buffer Map message and modifies the information of the message, e.g. by emptying the data information of the Buffer Map message, i.e. setting the data information to "0" as an indication to the P2P-client of the unfavourable radio uplink situation. Then the network node may send the modified Buffer Map message to the P2P-client. In response to receiving the modified Buffer Map message, the P2P-client then may e.g. request a list of available sources from a P2P-tracker in order to find another source other than the mobile device from which the P2P-client may download the data.

[00069] Transmitting 430 the indication to the mobile device comprises intercepting 431 a Registration Response message transmitted from the P2P- tracker destined for the mobile device, inserting 432 an indication of the unfavourable radio uplink situation into the Registration Response message, and forwarding 433 the Registration Response message to the mobile device.

[00070] Figure 4e illustrates the above example. When the mobile device either becomes connected to the network node or when the mobile device wishes to engage in a P2P-session, the mobile device firstly has to register at the P2P- tracker in association with the network node so that the P2P-tracker is enabled to keep track of the mobile device and how to reach it, i.e. via the network node. When the mobile device wishes to register itself with the P2P-tracker, the mobile device sends Registration Request message to the P2P-tracker, via the network node. As described above, the network node may intercept the Registration Request message and insert the indication of the unfavourable radio uplink situation into the message and forward the message to the P2P-tracker. In this manner, the P2P-tracker may be informed about the unfavourable radio uplink situation. Thus, when P2P-tracker sends the Registration Response message, the message may comprise the indication of the unfavourable radio uplink situation, or the Registration Response message may be intercepted by the network node, the network node then inserts the indication of the unfavourable radio uplink situation into the Registration Response message before forwarding the Registration Response message to the mobile device. In this manner, the network node may inform both the P2P-tracker and the mobile device about the detected

unfavourable radio uplink situation by inserting the indication thereof into messages transmitted between the mobile device and the P2P-tracker. Both the P2P-tracker and the mobile device are thus enabled to take appropriate actions in response thereto. For the mobile device, e.g. setting the operation mode of the mobile device to "sink" and not engaging in any P2P-sessions and for the P2P- tracker e.g. to remove the mobile device from a record of available sources as will be described in more detail below.

[00071 ] Transmitting 430 the indication to the mobile device may comprise intercepting 434 a Peer List Info Response message transmitted from a P2P- tracker destined for the mobile device, inserting 435 an indication of the

unfavourable radio uplink situation into the Peer List Info Response message, and forwarding 436 the Peer List Info Response message to the mobile device.

[00072] Figure 4f illustrates the above example. The mobile device may already be registered at the P2P-tracker but is not currently downloading data and decides to download data. In such a case, the mobile device may first send a Peer List Info Request message to the P2P-tracker, via the network node, in order to get a list of possible available sources from which the mobile device may download data. The network node may, in the same manner as described above, intercept the Peer List Info Request message and insert the indication of the unfavourable radio uplink situation into the message and forward the message to the P2P-tracker. In this manner, the P2P-tracker may be informed about the unfavourable radio uplink situation. Thus, when P2P-tracker sends the Peer List Info Response message, the message may comprise the indication of the unfavourable radio uplink situation, or the Peer List Info Response message may be intercepted 434 by the network node, the network node then inserts 435 the indication of the unfavourable radio uplink situation into the Peer List Info Response message before forwarding 436 the message to the mobile device.

[00073] Transmitting 430 the indication to the mobile device may comprise intercepting 437 a Buffer Map message transmitted from the P2P-client destined for the mobile device, emptying 438 a bitmap information of the Buffer Map message, and forwarding 439 the Buffer Map message to the mobile device.

[00074] Figure 4g illustrates the above example. Assume the mobile device has decided to start a P2P-session wanting to download data from the P2P-client. This may happen during an ongoing P2P-session in which the P2P-client is already downloading data from the mobile device. Alternatively, the mobile device is acting as a source for a first P2P-client, i.e. the first P2P-client is downloading data from the mobile device. The mobile device decides to start downloading from a second P2P-client during the P2P-session with the first P2P-client. The mobile device may send a Buffer Map Request message to the P2P-client (or the second P2P-client) in order to obtain information about the data available at the P2P-client (or the second P2P-client) for downloading by the mobile device. In response to receiving the Buffer Map Request message, the P2P-client (or the second P2P-client) sends a Buffer Map message to the mobile device comprising information about the data available at the P2P-client (or the second P2P-client) for downloading by the mobile device. The information comprised in the Buffer Map message may be in the form of a bitmap. The network node may intercept 437 the Buffer Map message sent from the P2P-client (or the second P2P-client) destined for the mobile device. The network node has detected the unfavourable radio uplink situation and intercepts the Buffer Map message and modifies the information of the message, e.g. by emptying 438 the data information of the Buffer Map message, i.e. setting the data information to "0" as an implicit indication to the mobile device of the unfavourable radio uplink situation. Then the network node may forward 439 the modified Buffer Map message to the mobile device. In response to receiving the modified Buffer Map message, the mobile device then sets the operation mode of the mobile device to "sink" and transmits the indication to the P2P-client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink". In this manner, the mobile device informs either the P2P-client that is downloading data from the mobile device that the mobile device cannot further be used as a source for the P2P-client, or the mobile device informs the P2P-tracker that the mobile device cannot further be used as a source for any client wanting to download data from the mobile device by means of a P2P-session.

[00075] Transmitting 440 the indication to the P2P-tracker comprises intercepting 441 a Registration Request message transmitted from the mobile device destined for the P2P-tracker, inserting 442 an indication of the unfavourable radio uplink situation into the Registration Request message, and forwarding 443 the

Registration message to the P2P-tracker.

[00076] Figure 4h illustrates the above example. In case the mobile device is not currently registered at the P2P-tracker as being available as a source for a P2P- session (via the network node), the mobile device may send a Registration

Request message to the P2P-tracker in order to register itself at the P2P-tracker. The mobile device sends the Registration Request message via the network node. In case the network node has detected an unfavourable radio uplink situation, the network node may intercept 441 the Registration Request message and insert 442 the indication of the unfavourable radio uplink situation into the message and forward 443 the message to the P2P-tracker. In this manner, the P2P-tracker may be informed about the unfavourable radio uplink situation. In response to receiving the Registration Request message comprising the indication of the unfavourable radio uplink situation, the P2P-tracker is enabled to take different actions. Merely as an example, assume the mobile device was previously registered at the P2P- tracker when connected to another network node than the current network node that intercepted the Registration Request, the P2P-tracker may remove the mobile device from a list of available sources for downloading data.

[00077] Transmitting 440 the indication to the P2P-tracker may comprise intercepting 444 a Peer List Info Request message transmitted from the mobile device destined for the P2P-tracker, inserting 445 an indication of the unfavourable radio uplink situation into the Peer List Info Request message, and forwarding 446 the Peer List Info Request message to the P2P-tracker.

[00078] Figure 4k illustrates the above example. The mobile device may be registered with the P2P-tracker. The mobile device may act as a source for the P2P-client such that the P2P-client is downloading data from the mobile device. At a point in time, the mobile device decides to download data itself and in order to find available sources for downloading data, the mobile device sends the Peer List Info Request message to the P2P-tracker. The network node intercepts 444 the Peer List Info Request message transmitted from the mobile device destined for the P2P-tracker. The network node inserts 445 the indication of the unfavourable radio uplink situation into the Peer List Info Request message, and forwards 446 the Peer List Info Request message to the P2P-tracker. In this manner, the P2P- tracker is informed of the unfavourable radio uplink situation and the P2P-tracker may take actions in response thereto. For example, the P2P-tracker may either remove the mobile device from a list of available sources or set a mode of operation of the mobile device to sink or unavailable. Thus, any subsequent received Peer List Info Request message originating from any P2P-client may result in the P2P-tracker sending a list of available sources, the list not comprising the mobile device.

[00079] Embodiments herein also relate to a method performed by a P2P-client for downloading data by means of a P2P-session from a source in a

communication network, the P2P-client having a P2P-session established with a first mobile device acting as source. Exemplifying embodiments of such a method will now be described with reference to figure 5.

[00080] Figure 5 illustrates the method 500 comprising receiving 510 an indication from the mobile device, the indication indicating an unfavourable radio uplink situation in a cell of the network node; and releasing 520 the P2P-session with the mobile device. The method further comprises receiving 530 a list from a P2P-tracker, the list comprising available sources for downloading data; selecting 540 a source other than the mobile device from the received list, and initiating 550 establishment of a P2P-session with the selected source. [00081 ] The P2P-client is downloading data by means of the P2P-session from the source in a communication network. The P2P-client has the P2P-session established with a first mobile device acting as source. During the downloading session, the P2P-client receives the indication of the unfavourable radio uplink situation in a cell of the network node to which the first mobile device is connected or associated. The indication may be received e.g. from the network node either directly or indirectly. The P2P-client is thus informed that the first mobile device may no longer be the best source from which to download the data. The P2P- client releases the P2P-session it has with the mobile device. This may help to improve the unfavourable radio uplink situation in the cell of the network node to which the first mobile device is connected or associated, since the load will decrease which may be beneficial for a possible congestion situation or an interference situation. In order to still be able to download the data which the P2P- client requires, the P2P-client may request a list of available sources from the P2P-tracker, e.g. by sending a Peer List Info Request to the P2P-tracker and in response receiving the list comprising available sources for downloading data from the P2P-tracker. The list may be received e.g. in a Peer List Info Response message. Now the P2P-client may select a source other than the mobile device from the received list. The list may possibly comprise the first mobile device, but the P2P-client will disregard the first mobile device in such a case since the P2P- client has information that an unfavourable radio uplink situation has occurred in the cell of the network node to which the first mobile device is connected or associated. Instead, the P2P-client selects any source of the list which is not the first mobile device and then initiates establishment of a P2P-session with the selected source, e.g. by sending a Buffer Map Request to the selected source in order to find out what data is available at, or from, the selected source.

[00082] The method may have several advantages. One possible advantage is that the solution enables a P2P-system to improve the Quality of Experience, QoE, of streaming data by taking the real time radio link status information of the involved peers into consideration for a P2P-session. The solution is simple and feasible from implementation point of view. [00083] The unfavourable radio uplink situation may be at least one of an uplink congestion situation in a cell of the network node, a poor radio link quality or an unstable radio link of mobile devices associated with the network node as described above.

[00084] Receiving 510 the indication of an unfavourable radio uplink situation from the network node may comprises receiving a Buffer Map message from the mobile device, via the network node, the Buffer Map message comprising an unfavourable radio uplink situation indication.

[00085] Merely as an example, assume the P2P-client is downloading data from the mobile device and at one point in time during the downloading of data from the mobile device, the P2P-client decides to download other data from the mobile device. The P2P-client may send a Buffer Map Request message in order to obtain information of the data available at the mobile device. The mobile device responses with a Buffer Map message comprising information regarding available data at the mobile device. In case the network node has detected an unfavourable radio uplink situation, the network node may intercept the Buffer Map message sent from the mobile device destined for the P2P-client and empty, or modify, the information regarding the data available at the mobile device so that the Buffer Map message indicates that the mobile device has no data available for downloading. The P2P-client interprets this as an unfavourable radio uplink situation has occurred and may release the P2P-session it has with the mobile device in response thereto and try to find another source for continuing the downloading of data as described above.

[00086] Receiving 510 the indication of an unfavourable radio uplink situation from the network node may comprises receiving a TCP/IP packet comprising a header and data, via the network node, the header of the TCP/IP packet comprising an unfavourable radio uplink situation indication.

[00087] When the P2P-client receives the TCP/IP packet, the P2P-client reads the header as it comprises information about the received packet. If the P2P-client finds the indicator included in the TCP/IP packet header of the packet indicating the unfavourable radio uplink situation, the P2P-client may releases the P2P- session it has with the mobile device and try to find another source for continuing the downloading of data as described above.

[00088] Receiving 510 the indication of an unfavourable radio uplink situation from the network node may comprise receiving a Chunk Request message from the mobile device, via the network node, the Chunk Request message comprising an unfavourable radio uplink situation indication.

[00089] The P2P-client may be involved in a first P2P-session in which the P2P- client is downloading data from a mobile device and during this first P2P-session, the mobile device wants to also download data itself from the P2P-client by means of a second P2P-session. In order to download data from the P2P-client during the second P2P-session, the mobile device sends the Chunk Request message destined for the P2P-client. The network node may then intercept the Chunk Request message and inserting the indication of the unfavourable radio uplink situation that the network node has detected and then the Chunk Request message to the P2P-client. In this manner, the P2P-client is informed about the occurred unfavourable radio uplink situation in the cell of the network node to which the mobile device is connected. The P2P-client is thus enabled to take appropriate action(s), e.g. as described above. One example of actions is to release the first P2P-session with the mobile device and try to find another source for continuing the downloading of data as described above.

[00090] Embodiments herein also relate to a method performed by a P2P-tracker for updating a list of available sources for downloading of data by means of a P2P- session from the sources to P2P-clients. Exemplifying embodiments of such a method will now be described with reference to figure 6.

[00091 ] Figure 6 illustrates the method 600 comprising receiving 610 an indication of an unfavourable radio uplink situation from a mobile device via a network node with which the mobile device is associated; and updating 620 the list of available sources, by either removing the mobile device from the list or setting an operation mode, or status, of the mobile device to "sink". [00092] The P2P-tracker comprises information, e.g. by means of a record or a list, of available sources for downloading data. The sources may be associated with other entities, for example a mobile device may be listed as associated with a network node, so that the source may be found easily by a P2P-client wanting to download data from the source.

[00093] In case the mobile device detects that an unfavourable radio uplink situation has occurred in a cell of a network node to which the mobile device is connected, the mobile device may notify or inform the P2P-tracker about the occurred unfavourable radio uplink situation. Once the P2P-tracker is informed about the occurred unfavourable radio uplink situation, the P2P-tracker knows that the mobile device is no longer suitable for downloading from, and hence the P2P- tracker may either remove the mobile device from the list of available sources or set the operation mode, or status, of the mobile device to "sink".

[00094] If the P2P-tracker subsequently receives a Peer List Info Request message from a P2P-client, the list will not comprise the mobile device or the mobile device will be listed as "sink" meaning the mobile device is not available. In this manner, the P2P-client requesting the peer list information will not select the mobile device as source for any downloading of information. Hence the P2P- tracker may help to improve the unfavourable radio uplink situation in the cell of the network node to which the mobile device is connected or associated, since the load may decrease which may be beneficial for a possible congestion situation or an interference situation.

[00095] The method may have several advantages. One possible advantage is that the solution enables a P2P-system to improve the Quality of Experience, QoE, of streaming data by taking the real time radio link status information of the involved peers into consideration for a P2P-session. The solution is simple and feasible from implementation point of view.

[00096] The unfavourable radio uplink situation may be at least one of an uplink congestion situation in a cell of the network node, a poor radio link quality or an unstable radio link of mobile devices associated with the network node as described above.

[00097] Receiving 610 the indication of the unfavourable radio uplink situation from the mobile device via the network node may comprise receiving a

Registration Request message comprising the indication of the unfavourable radio uplink situation.

[00098] In case the mobile device is not currently registered at the P2P-tracker as being available as a source for a P2P-session (via the network node), the mobile device may send a Registration Request message to the P2P-tracker in order to register itself at the P2P-tracker. The mobile device sends the Registration

Request message via the network node. In case the network node has detected an unfavourable radio uplink situation, the network node may intercept the

Registration Request message as will be described in more detail below. The network node may intercept the Registration Request message and insert the indication of the unfavourable radio uplink situation into the message and forward the message to the P2P-tracker. In this manner, the P2P-tracker may be informed about the unfavourable radio uplink situation. The P2P-tracker may then update the list by incorporating the mobile device into the list and setting its operation mode, or status, as "sink".

[00099] Receiving 610 the indication of the unfavourable radio uplink situation from the mobile device via the network node may comprise receiving a Peer List Info Request message comprising the indication of the unfavourable radio uplink situation.

[000100] If e.g. the mobile device is already registered at the P2P-tracker but is not downloading data and decides to download data. In such a case, the mobile device may first send a Peer List Info Request message to the P2P-tracker, via the network node, in order to get a list of possible available sources from which the mobile device may download data. The network node may, in the same manner as described above, intercept the Peer List Info Request message and insert the indication of the unfavourable radio uplink situation into the message and forward the message to the P2P-tracker. In this manner, the P2P-tracker may be informed about the unfavourable radio uplink situation.

[000101 ] Figures 7a-7f are signalling diagrams illustrating examples of interactions between entities associated with P2P-sessions.

[000102] It shall be pointed out that the signalling diagrams in figures 7a to 7g are simplified and only some of a variety of possible messages is illustrated.

[000103] Figure 7a is a signalling diagram illustrating an example of a mobile device 710 powering on 7:1 , or becoming associated with a network node 730, e.g. following a handover. In this example, no unfavourable radio uplink situation is detected by the network node 730. The mobile device registers with a P2P tracker 740 by sending 7:2a a Registration Request message. The message is received by the network node 730 and forwarded 7:2b to the P2P-tracker 740. The P2P- tracker updates a list of available sources for downloading, or a list of P2P-clients, by adding the mobile device 710 to the list. It shall be pointed out that a P2P-client may be any node or device being able to participate as a source or as a

downloader by means of a P2P-session. The use (or separation) herein of mobile device and P2P-client is to differentiate between the entity acting as source and the entity acting as downloader.

[000104] The P2P-tracker 740 then sends 7:3a a registration Response message towards the mobile device 710, which is sent via the network node 730, which forwards 7:3b the Registration Response message to the mobile device 710.

[000105] After the mobile device 710 has become successfully registered, a P2P- client 750 wishes or determines 7:4 to download data and requests 7:5 a list from a P2P-tracker 740. The P2P-tracker 740 returns 7:6 a list of available sources from which the P2P-client 750 may download the data and the mobile device 710 is comprised in the list. The P2P-client 750 sends 7:7 a Buffer Map Request message to the mobile device in order to find out what data is available at the mobile device 710 and the P2P-client receives 7:8 in return a message indicating what data the mobile device has available that the P2P-client may download in a Buffer Map message. The P2P-client 750 send 7:9 a Chunk Request message to the mobile device 710, requesting a chunk of data from the mobile device

710. Thereafter the P2P session is established and the P2P-client 750 may download data from the mobile device 710, by the mobile device 710 sending 7:10 packets of data to the P2P-client 750.

[000106] It shall be pointed out that in a P2P-system, the first step for a new peer (e.g. the P2P-client 750) is usually to register itself to the tracker, then ask peer list info from the P2P-tracker. Based on the peer list info from the P2P-tracker, the new peer (e.g. the P2P-client 750) selects one or more sources (e.g. the mobile device 710 and other sources) and sets up P2P sessions with one or more remote peers (e.g. the mobile device 710 and other sources), request buffer map first, then based on buffer map determines which chunk to retrieve. Then the peer (e.g. the P2P-client 750) sends chunk request message to the remote peer(s), the remote peer(s) provide(s) chunks as required. At the same time, the remote peer (e.g. the mobile device 710) initiates the same process with the local peer (e.g. the P2P-client 750 or any other peer) to retrieve other chunks that is available at the local peer but not available at remote peer.

[000107] Figure 7b is a signalling diagram illustrating an example of a mobile device 710 powering on 7:1 , or becoming associated with a network node 730, e.g. following a handover. In this example, the network node 730 has detected an unfavourable radio uplink situation in the cell of the network node 730. In other words, there is an unfavourable radio uplink situation in the cell of the network node 730 when the mobile device wants to register with the P2P-tracker 750. However, the mobile device is unaware of the detected unfavourable radio uplink situation in the cell of the network node 730 and sends 7:2a a Registration

Request message. The message is received by the network node 730 and the network node 730 inserts an indicator of the unfavourable radio uplink situation into the Registration Request message before forwarding 7:2b the message to the P2P-tracker 740. The P2P-tracker 740 is informed about the occurred

unfavourable radio uplink situation in the cell of the network node 730 to which the mobile device 710 is associated or connected. The P2P-tracker 740 may update 7:2c the list or record of available sources (or P2P-clients) by either adding the mobile device 710 to the list and setting the operation mode, or status, of the mobile device 710 to "sink", or the P2P-tracker may check if the mobile device already is in the list and if so then either remove the mobile device 710 from the list or set the operation mode of the mobile device 710 to "sink". Then the P2P- tracker 740 may send 7:3a a Registration Response message towards the mobile device 710, which is sent via the network node 730. The network node 730 may intercept the message and insert the indicator of the unfavourable radio uplink situation into the Registration Response message before forwarding 7:3b the message to the mobile device 710. In this manner, both the P2P-tracker 740 and the mobile device 710 may be informed about the unfavourable radio uplink situation detected by the network node 730.

[000108] Figure 7c is a signalling diagram illustrating an example of an on-going P2P-session 7:10 between mobile device 710 and P2P-client 750, during which the network node 730 detects 7:11 an unfavourable radio uplink situation, wherein the network node 730 informs at least one of the mobile device 710, the P2P- tracker 740 and the P2P-client 750 of the detected unfavourable radio uplink situation by means of sending a dedicated message 7:14a, 7:14b and/or 7:14c to at least one of the mobile device 710, the P2P-tracker 740 and the P2P-client 750.

[000109] The mobile device 710, the P2P-tracker 740 and the P2P-client 750 may take different actions in response to receiving the indication of the detected unfavourable radio uplink situation as described above. These actions are omitted from figure 7c. Only a possible action taken by the mobile device 710 is illustrated. The mobile device 710 may set 7:20 its operation mode to "sink" and inform 7:21 the network node 730 of the operation mode setting being "sink", wherein the network node 730 may take different actions which are omitted in figure 7c.

[0001 10] Figure 7d is a signalling diagram illustrating an example of an on-going P2P-session 7:10 between mobile device 710 and P2P-client 750, during which the network node 730 detects 7:11 an unfavourable radio uplink situation. In this example, the mobile device 710 determines to also start downloading data from any P2P-client, which may or may not be the P2P-client 750. The mobile device thus requests 7:12a peer list information from the P2P-tracker 740, which request is sent via the network node 730. The network node 730 may intercept the Peer List Info Request message and insert the indication of the unfavourable radio uplink situation into the message and forward 7:12b the message to the P2P- tracker 740. The P2P-tracker 740 may update 7:2c the list or record of available sources (or P2P-clients) by either deleting the mobile device 710 from the list or setting the operation mode of the mobile device 710 to "sink". Then the P2P- tracker 740 may send 7:13a a Peer List Info Response message towards the mobile device 710, which is sent via the network node 730. The network node 730 may intercept the message and insert the indicator of the unfavourable radio uplink situation into the Peer List Info Response message before forwarding 7:13b the message to the mobile device 710. In this manner, both the P2P-tracker 740 and the mobile device 710 may be informed about the unfavourable radio uplink situation detected by the network node 730.

[0001 1 1 ] Figure 7e is a signalling diagram illustrating an example of an on-going P2P-session 7:10 between mobile device 710 and P2P-client 750, during which the network node 730 detects 7:11 an unfavourable radio uplink situation. In this example, the P2P-client 750, or any other P2P-client (not shown) requests the mobile device to indicate what data the mobile device has available by sending 7:15a a Buffer Map Request message to the mobile device 710 via the network node 730. The network node 730 may intercept the Buffer Map Request message sent from the P2P-client (or the second P2P-client) destined for the mobile device. The network node 730 may insert the indicator of the unfavourable radio uplink situation into the Buffer Map Request message before forwarding 7:15b the message to the mobile device 710. As described above, if the mobile device is informed about the occurred unfavourable radio uplink situation, may set 7:20 its operation mode to "sink" and inform 7:21 the network node 730 of the operation mode setting being "sink", wherein the network node 730 may take different actions which are omitted in figure 7d.

[0001 12] It may also happen that the mobile device 710 determines to download data from the P2P-client 750, or any other P2P-client (not shown) and thus sends 7:15c a Buffer Map Request message to the P2P-client 750, or any other P2P- client (not shown). This message is sent via the network node 730 which may intercept the message and insert the indicator of the unfavourable radio uplink situation into the Buffer Map Request message before forwarding 7:15d the message to the P2P-client 750, or any other P2P-client (not shown). The possible actions taken by the P2P-client 750 upon receiving the indicator of the

unfavourable radio uplink situation are omitted from figure 7e.

[0001 13] Figure 7f is a signalling diagram illustrating an example of an on-going P2P-session 7:10 between mobile device 710 and P2P-client 750, during which the network node 730 detects 7:11 an unfavourable radio uplink situation. In this example, the network node 730 informs the P2P-client 750 by intercepting 7:16b a data packet sent 7:16a from the mobile device 710 destined for the P2P-client 750 and adds an indicator to the TCP/IP header of the data packet before forwarding 7:16c the data packet towards the P2P-client 750. When the P2P-client 750 receives the data packet with the indicator, the P2P-client 750 releases 7:16d the session and requests 7:16e peer list information from the P2P-tracker 740 in order to find another source for the downloading of data. The P2P-client 750 receives 7:16f a list of available resources from the P2P-tracker 740. The list may possibly comprise the mobile device 710 and if so, the P2P-client will not select the mobile device 710. In this example, a second mobile device 560 is comprised in the list and selected 7:16g, and the P2P-client requests 7:16h information about which data is available at the second mobile device 560 by sending a Buffer Map request message to the second mobile device 560. The second mobile device 560 responds with a Buffer Map Response message and the P2P-client requests

7:16m a chunk of data from the second mobile device 560. The second mobile device sends data packets to the P2P-client 750 and the P2P-session is ongoing 7:16n.

[0001 14] Embodiments herein also relate to a mobile device adapted for acting as a source in a P2P-session with a P2P-client. The mobile device is associated with a network node. The mobile device has the same technical features, objects and advantages as the method performed by the mobile device as described above. The mobile device will only be described in brief in order to avoid unnecessary repetition. Embodiments of such a mobile device will be described with reference to figure 8.

[0001 15] Figure 8 illustrates the mobile device comprising a receiving unit 802 adapted for receiving an indication from the network node, the indication indicating an unfavourable radio uplink situation in a cell of the network node; and a mode setting unit 803 adapted for setting an operation mode of the mobile device to "sink". The mobile device further comprises a transmitting unit 804 adapted for transmitting an indication to the P2P-client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink".

[0001 16] The mobile device may have the same possible advantages as the method performed by the mobile device. One possible advantage is that the solution enables a P2P-system to improve the Quality of Experience, QoE, of streaming data by taking the real time radio link status information of the involved peers into consideration for a P2P-session. The solution is simple and feasible from implementation point of view.

[0001 17] The unfavourable radio uplink situation may be at least one of an uplink congestion situation in a cell of the network node, a poor radio link quality or an unstable radio link of mobile devices associated with the network node as described above.

[0001 18] The receiving unit 802 may be adapted for receiving the indication from the network node indicating the unfavourable radio uplink situation in a cell of the network node by receiving a Registration Response message or a Peer List Info Response message from a P2P tracker, via the network node, the Registration Response message or the Peer List Info Response message comprising the indication of the unfavourable radio uplink situation.

[0001 19] The receiving unit 802 may be adapted for receiving the indication from the network node indicating the unfavourable radio uplink situation in a cell of the network node by receiving a Buffer Map message or a Chunk Request message from the P2P-client, via the network node, the Buffer Map message or the Chunk Request message indicating the unfavourable radio uplink situation.

[000120] The receiving unit 802 may be adapted for receiving the indication from the network node indicating the unfavourable radio uplink situation in a cell of the network node by receiving a dedicated message.

[000121 ] Embodiments herein also relate to a network node adapted for supporting a P2P-session between a P2P-client and a mobile device being associated with the network node. The network node has the same technical features, objects and advantages as the method performed by the network node as described above. The network node will only be described in brief in order to avoid unnecessary repetition. Embodiments of such a network node will be described with reference to figure 9.

[000122] Figure 9 illustrates the network node comprising a detecting unit 903 adapted for detecting an unfavourable radio uplink situation in a cell of the network node; and a transmitting unit 908 adapted for transmitting an indication to at least one of the mobile device or the P2P-client or a P2P-tracker indicating the unfavourable radio uplink situation in the cell of the network node.

[000123] The network node may have the same possible advantages as the method performed by the network node. One possible advantage is that the solution enables a P2P-system to improve the Quality of Experience, QoE, of streaming data by taking the real time radio link status information of the involved peers into consideration for a P2P-session. The solution is simple and feasible from implementation point of view.

[000124] The unfavourable radio uplink situation may be at least one of an uplink congestion situation in a cell of the network node, a poor radio link quality or an unstable radio link of mobile devices associated with the network node as described above.

[000125] The network node may further comprise an intercepting unit 904 adapted for intercepting a packet transmitted from the mobile device destined for the P2P- client , and an indicator setting unit 906 adapted for setting an indicator included in a Transport Control Protocol/Internet Protocol, TCP/IP, packet header of the intercepted packet to indicate the unfavourable radio uplink situation, wherein the transmitting unit 908 is adapted for transmitting the indication to the P2P-client by forwarding the intercepted packet to the P2P-client.

[000126] The network node may further comprise an intercepting unit 904 adapted for intercepting a Chunk Request message transmitted from the mobile device destined for the P2P client, and an inserting unit 905 adapted for inserting an indication of the unfavourable radio uplink situation into the Chunk Request message, wherein the transmitting unit 908 is adapted for transmitting the indication to the P2P-client by forwarding the Chunk Request message to the P2P- client.

[000127] The network node may further comprise an intercepting unit 904 adapted for intercepting a Buffer Map message transmitted from the mobile device destined for the P2P client, and an emptying unit 907 adapted for emptying a bitmap information of the Buffer Map message, wherein the transmitting unit 908 is adapted for transmitting the indication to the P2P-client by forwarding the Buffer Map message to the P2P-client.

[000128] The network node may further comprise an intercepting unit 904 adapted for intercepting a Registration Response message transmitted from the P2P- tracker destined for the mobile device , and an inserting unit 905 adapted for inserting an indication of the unfavourable radio uplink situation into the

Registration Response message, wherein the transmitting unit 908 is adapted for transmitting the indication to the mobile device by forwarding the Registration Response message to the mobile device.

[000129] The network node may further comprise an intercepting unit 904 adapted for intercepting a Peer List Info Response message transmitted from a P2P- tracker destined for the mobile device, and an inserting unit 905 adapted for inserting an indication of the unfavourable radio uplink situation into the Peer List Info Response message, wherein the transmitting unit 908 is adapted for transmitting the indication to the mobile device by forwarding the Peer List Info Response message to the mobile device.

[000130] The network node may further comprise an intercepting unit 904 adapted for intercepting a Buffer Map message transmitted from the P2P-client destined for the mobile device, and an emptying unit 907 adapted for emptying a bitmap information of the Buffer Map message, wherein the transmitting unit 908 is adapted for transmitting the indication to the mobile device by forwarding the Buffer Map message to the mobile device.

[000131 ] The network node may further comprise an intercepting unit 904 adapted for intercepting a Registration Request message transmitted from the mobile device destined for the P2P-tracker, and an inserting unit 905 adapted for inserting an indication of the unfavourable radio uplink situation into the Registration

Request message, wherein the transmitting unit 908 is adapted for transmitting the indication to the mobile device by forwarding the Registration Request message to the P2P-tracker.

[000132] The network node may further comprise an intercepting unit 904 adapted for intercepting a Peer List Info Request message transmitted from the mobile device destined for the P2P-tracker, and an inserting unit 905 adapted for inserting an indication of the unfavourable radio uplink situation into the Peer List Info Request message, wherein the transmitting unit 908 is adapted for transmitting the indication to the P2P-tracker by forwarding the Peer List Info Request message to the P2P-tracker.

[000133] Embodiments herein also relate to a P2P-client adapted for downloading data by means of a P2P-session from a source in a communication network. The P2P-client has a P2P-session established with a first mobile device acting as source. The P2P-client has the same technical features, objects and advantages as the method performed by the P2P-client as described above. The P2P-client will only be described in brief in order to avoid unnecessary repetition.

Embodiments of such a P2P-client will be described with reference to figure 10. [000134] Figure 10 illustrates the P2P-client comprising a receiving unit 1002 adapted for receiving an indication from the mobile device, the indication indicating an unfavourable radio uplink situation in a cell of the network node, and for receiving a list from a P2P-tracker, the list comprising available sources for downloading data. The P2P-client further comprises a releasing unit 1003 adapted for releasing the P2P-session with the mobile device, a selecting unit 1004 adapted for selecting a source other than the mobile device from the received list; and an initiating unit 1005 adapted for initiating establishment of a P2P-session with the selected source.

[000135] The P2P-client may have the same possible advantages as the method performed by the P2P-client. One possible advantage is that the solution enables a P2P-system to improve the Quality of Experience, QoE, of streaming data by taking the real time radio link status information of the involved peers into consideration for a P2P-session. The solution is simple and feasible from implementation point of view.

[000136] The unfavourable radio uplink situation may be at least one of an uplink congestion situation in a cell of the network node, a poor radio link quality or an unstable radio link of mobile devices associated with the network node as described above.

[000137] The receiving unit 1002 may be adapted for receiving the indication of an unfavourable radio uplink situation from the network node by receiving a Buffer Map message from the mobile device, via the network node, the Buffer Map message comprising an unfavourable radio uplink situation indication.

[000138] The receiving unit 1002 may be adapted for receiving the indication of an unfavourable radio uplink situation from the network node by receiving a Chunk Request message from the mobile device, via the network node, the Chunk Request message comprising an unfavourable radio uplink situation indication.

[000139] Embodiments herein also relate to a P2P-tracker adapted for updating a list of available sources for downloading of data by means of a P2P-session from the sources to P2P-clients. The P2P- tracker has the same technical features, objects and advantages as the method performed by the P2P- tracker as described above. The P2P- tracker will only be described in brief in order to avoid unnecessary repetition. Embodiments of such a P2P- tracker will be described with reference to figure 1 1 .

[000140] Figure 1 1 illustrates the P2P-tracker comprising a receiving unit 1 102 adapted for receiving an indication of an unfavourable radio uplink situation from a mobile device via a network node with which the mobile device is associated, and an updating unit 1 103 adapted for updating the list of available sources, by either removing the mobile device from the list or setting an operation mode, or status, of the mobile device to "sink".

[000141 ] The P2P-tracker may have the same possible advantages as the method performed by the P2P-tracker. One possible advantage is that the solution enables a P2P-system to improve the Quality of Experience, QoE, of streaming data by taking the real time radio link status information of the involved peers into consideration for a P2P-session. The solution is simple and feasible from implementation point of view.

[000142] The unfavourable radio uplink situation may be at least one of an uplink congestion situation in a cell of the network node, a poor radio link quality or an unstable radio link of mobile devices associated with the network node as described above.

[000143] The receiving unit 1 102 may further be adapted for receiving the indication of the unfavourable radio uplink situation from the mobile device via the network node by receiving a Registration Request message comprising the indication of the unfavourable radio uplink situation.

[000144] The receiving unit 1 102 may further be adapted for receiving the indication of the unfavourable radio uplink situation from the mobile device via the network node by receiving a Peer List Info Request message comprising the indication of the unfavourable radio uplink situation. [000145] According to an exemplary embodiment illustrated in Figure 16, there is a radio access system 1600 configured to connect mobile devices using P2P streaming with an enhanced QoE by using current radio link status and cell load status information. For example, the eNB/RNC of the network 1670 identifies P2P applications based on traffic detection functions and figures out related entities involved in the ongoing P2P applications, i.e. neighbouring peers of the local peer or trackers, as well as local peers served by the eNB/RNC. The

ENB/RNC is configured to monitor the UL load status of the cell where a mobile peer is located. When the UL radio load is approaching a predetermined threshold (i.e., a congestion is imminent), the eNB/RNC starts notifying related neighbouring peers or the P2P tracker 1678 about the UL congestion. When the UL cell load is lower than the predetermined threshold (i.e., the congestion in UL is no longer imminent), the eNB/RNC stops notifying the UL congestion or changes the settings of the congestion indication conveyed to neighbouring peers and trackers. The above described alternative methods may be used for providing information about the radio cell UL congestion and other radio link related information to related entities (or nodes) of the P2P system.

[000146] For example, a first exemplifying method is an in-band notification using a congestion indicator included in the TCP/IP packet header of packets exchanged between the mobile peer 1620 and neighbouring peers 1610, 1640 or the P2P tracker 1678.

[000147] A second exemplifying method is an out-of-band radio status information notification using new messages to related entities involved in the ongoing P2P applications.

[000148]

[000149] In figure 8, the mobile device 800 is also illustrated comprising a receiving unit 81 1 and a transmitting unit 812. Through these two units, the mobile device 800 is adapted to communicate with other nodes and/or entities in the wireless communication network. The receiving unit 81 1 may comprise more than one receiving arrangement. For example, the receiving unit may be connected to both a wire and an antenna, by means of which the mobile device 800 is enabled to communicate with other nodes and/or entities in the wireless communication network. Similarly, the transmitting unit 812 may comprise more than one transmitting arrangement, which in turn are connected to both a wire and an antenna, by means of which the mobile device 800 is enabled to communicate with other nodes and/or entities in the wireless communication network. The mobile device 800 further comprises a memory 801 for storing data. Further, the mobile device 800 is illustrated comprising a control or processing unit 807 which in turn is connected to the different units 802-804. It shall be pointed out that this is merely an illustrative example and the mobile device 800 may comprise more, less or other units or modules which execute the functions of the mobile device 800 in the same manner as the units illustrated in figure 8.

[000150] It should be noted that figure 8 merely illustrates various functional units in the mobile device 800 in a logical sense. The functions in practice may be implemented using any suitable software and hardware means/circuits etc. Thus, the embodiments are generally not limited to the shown structures of the mobile device 800 and the functional units. Hence, the previously described exemplary embodiments may be realised in many ways. For example, one embodiment includes a computer-readable medium having instructions stored thereon that are executable by the control or processing unit 807 for executing the method steps in the mobile device 800. The instructions executable by the computing system and stored on the computer-readable medium perform the method steps of the mobile device 800 as set forth in the claims.

[000151 ] In figure 9, the network node 900 is also illustrated comprising a receiving unit 31 1 and a transmitting unit 912. Through these two units, the network node 900 is adapted to communicate with other nodes and/or entities in the wireless communication network. The receiving unit 91 1 may comprise more than one receiving arrangement. For example, the receiving unit may be connected to both a wire and an antenna, by means of which the network node 900 is enabled to communicate with other nodes and/or entities in the wireless communication network. Similarly, the transmitting unit 912 may comprise more than one transmitting arrangement, which in turn are connected to both a wire and an antenna, by means of which the network node 900 is enabled to communicate with other nodes and/or entities in the wireless communication network. The network node 900 further comprises a memory 901 for storing data. Further, the network node 900 is illustrated comprising a control or processing unit 909 which in turn is connected to the different units 902-908. It shall be pointed out that this is merely an illustrative example and the network node 900 may comprise more, less or other units or modules which execute the functions of the network node 900 in the same manner as the units illustrated in figure 9.

[000152] It should be noted that figure 9 merely illustrates various functional units in the network node 900 in a logical sense. The functions in practice may be implemented using any suitable software and hardware means/circuits etc. Thus, the embodiments are generally not limited to the shown structures of the network node 900 and the functional units. Hence, the previously described exemplary embodiments may be realised in many ways. For example, one embodiment includes a computer-readable medium having instructions stored thereon that are executable by the control or processing unit 909 for executing the method steps in the network node 900. The instructions executable by the computing system and stored on the computer-readable medium perform the method steps of the network node 900 as set forth in the claims.

[000153] In figure 10, the P2P-client 1000 is also illustrated comprising a receiving unit 101 1 and a transmitting unit 1012. Through these two units, the P2P-client 1000 is adapted to communicate with other nodes and/or entities in the wireless communication network. The receiving unit 101 1 may comprise more than one receiving arrangement. For example, the receiving unit may be connected to both a wire and an antenna, by means of which the P2P-client 1000 is enabled to communicate with other nodes and/or entities in the wireless communication network. Similarly, the transmitting unit 1012 may comprise more than one transmitting arrangement, which in turn are connected to both a wire and an antenna, by means of which the P2P-client 1000 is enabled to communicate with other nodes and/or entities in the wireless communication network. The P2P-client 1000 further comprises a memory 1001 for storing data. Further, the P2P-client 1000 is illustrated comprising a control or processing unit 1007 which in turns is connected to the different units 1002-1006. It shall be pointed out that this is merely an illustrative example and the P2P-client 1000 may comprise more, less or other units or modules which execute the functions of the P2P-client 1000 in the same manner as the units illustrated in figure 10.

[000154] It should be noted that figure 10 merely illustrates various functional units in the P2P-client 1000 in a logical sense. The functions in practice may be implemented using any suitable software and hardware means/circuits etc. Thus, the embodiments are generally not limited to the shown structures of the P2P- client 1000 and the functional units. Hence, the previously described exemplary embodiments may be realised in many ways. For example, one embodiment includes a computer-readable medium having instructions stored thereon that are executable by the control or processing unit 1007 for executing the method steps in the P2P-client 1000. The instructions executable by the computing system and stored on the computer-readable medium perform the method steps of the P2P- client 1000 as set forth in the claims.

[000155] In figure 1 1 , the P2P-tracker 1 100 is also illustrated comprising a receiving unit 1 1 1 1 and a transmitting unit 1 1 12. Through these two units, the P2P-tracker 1 100 is adapted to communicate with other nodes and/or entities in the wireless communication network. The receiving unit 1 1 1 1 may comprise more than one receiving arrangement. For example, the receiving unit may be connected to both a wire and an antenna, by means of which the P2P-tracker 1 100 is enabled to communicate with other nodes and/or entities in the wireless communication network. Similarly, the transmitting unit 1 1 12 may comprise more than one transmitting arrangement, which in turn are connected to both a wire and an antenna, by means of which the P2P-tracker 1 100 is enabled to communicate with other nodes and/or entities in the wireless communication network. The P2P- tracker 1 100 further comprises a memory 1 101 for storing data. Further, the P2P- tracker 1 100 is illustrated comprising a control or processing unit 1 107 which in turns is connected to the different units 1 102-1 104. It shall be pointed out that this is merely an illustrative example and the P2P-tracker 1 100 may comprise more, less or other units or modules which execute the functions of the P2P-tracker 1 100 in the same manner as the units illustrated in figure 1 1 .

[000156] It should be noted that figure 1 1 merely illustrates various functional units in the P2P-tracker 1 100 in a logical sense. The functions in practice may be implemented using any suitable software and hardware means/circuits etc. Thus, the embodiments are generally not limited to the shown structures of the P2P- tracker 1 100 and the functional units. Hence, the previously described exemplary embodiments may be realised in many ways. For example, one embodiment includes a computer-readable medium having instructions stored thereon that are executable by the control or processing unit 1 107 for executing the method steps in the P2P-tracker 1 100. The instructions executable by the computing system and stored on the computer-readable medium perform the method steps of the P2P- tracker 1 100 as set forth in the claims.

[000157] Figure 12 schematically shows an embodiment of a mobile device 1200. Comprised in the mobile device 1200 are here a processing unit 1206, e.g. with a DSP (Digital Signal Processor). The processing unit 1206 may be a single unit or a plurality of units to perform different actions of procedures described herein. The mobile device 1200 may also comprise an input unit 1202 for receiving signals from other entities, and an output unit 1204 for providing signal(s) to other entities. The input unit and the output unit may be arranged as an integrated entity or as illustrated in the example of figure 8, as one or more interfaces 81 1/812.

[000158] Furthermore, the mobile device 1200 comprises at least one computer program product 1208 in the form of a non-volatile memory, e.g. an EEPROM (Electrically Erasable Programmable Read-Only Memory), a flash memory and a hard drive. The computer program product 1208 comprises a computer program 1210, which comprises code means, which when executed in the processing unit 1206 in the mobile device 1200 causes the mobile device 1200 to perform the actions e.g. of the procedure described earlier in conjunction with figure 3. [000159] The computer program 1210 may be configured as a computer program code structured in computer program modules 1210a-1210e. Hence, in an exemplifying embodiment, the code means in the computer program of the mobile device 1200 comprises a receiving unit, or module, for receiving an indication from the network node, the indication indicating an unfavourable radio uplink situation in a cell of the network node. The computer program further comprises a mode setting unit, or module, for setting an operation mode of the mobile device to "sink". The computer program further comprises a transmitting unit, or module, for transmitting an indication to the P2P-client or to a P2P-tracker via the network node, indicating the operation mode of the mobile device being "sink".

[000160] The computer program modules could essentially perform the actions of the flow illustrated in figure 3, to emulate the mobile device 800, 1200. In other words, when the different computer program modules are executed in the processing unit 1206, they may correspond to the units 802-804 of figure 8.

[000161 ] Figure 13 schematically shows an embodiment of a network node 1300. Comprised in the network node 1300 are here a processing unit 1306, e.g. with a DSP (Digital Signal Processor). The processing unit 1306 may be a single unit or a plurality of units to perform different actions of procedures described herein. The network node 1300 may also comprise an input unit 1302 for receiving signals from other entities, and an output unit 1304 for providing signal(s) to other entities. The input unit and the output unit may be arranged as an integrated entity or as illustrated in the example of figure 9, as one or more interfaces 91 1/912.

[000162] Furthermore, the network node 1300 comprises at least one computer program product 1308 in the form of a non-volatile memory, e.g. an EEPROM (Electrically Erasable Programmable Read-Only Memory), a flash memory and a hard drive. The computer program product 1308 comprises a computer program 1310, which comprises code means, which when executed in the processing unit 1306 in the network node 1300 causes the network node 1300 to perform the actions e.g. of the procedure described earlier in conjunction with figures 2a-2k. [000163] The computer program 1310 may be configured as a computer program code structured in computer program modules 1310a-1310e. Hence, in an exemplifying embodiment, the code means in the computer program of the network node 1300 comprises a detecting unit, or module, for detecting an unfavourable radio uplink situation in a cell of the network node. The computer program further comprises a transmitting unit, or module, for transmitting an indication to at least one of the mobile device or the P2P-client or a P2P-tracker indicating the unfavourable radio uplink situation in the cell of the network node.

[000164] The computer program modules could essentially perform the actions of the flow illustrated in figures 2a-2k, to emulate the network node 900, 1300. In other words, when the different computer program modules are executed in the processing unit 1306, they may correspond to the units 902-908 of figure 9.

[000165] Figure 14 schematically shows an embodiment of a P2P-client 1400. Comprised in the P2P-client 1400 are here a processing unit 1406, e.g. with a DSP (Digital Signal Processor). The processing unit 1406 may be a single unit or a plurality of units to perform different actions of procedures described herein. The P2P-client 1400 may also comprise an input unit 1402 for receiving signals from other entities, and an output unit 1404 for providing signal(s) to other entities. The input unit and the output unit may be arranged as an integrated entity or as illustrated in the example of figure 10, as one or more interfaces 101 1/1012.

[000166] Furthermore, the P2P-client 1400 comprises at least one computer program product 1408 in the form of a non-volatile memory, e.g. an EEPROM (Electrically Erasable Programmable Read-Only Memory), a flash memory and a hard drive. The computer program product 1408 comprises a computer program 1410, which comprises code means, which when executed in the processing unit 1406 in the P2P-client 1400 causes the P2P-client 1400 to perform the actions e.g. of the procedure described earlier in conjunction with figure 5.

[000167] The computer program 1410 may be configured as a computer program code structured in computer program modules 1410a-1410e. Hence, in an exemplifying embodiment, the code means in the computer program of the P2P- client 1400 comprises a receiving unit, or module, for receiving an indication from the mobile device, the indication indicating an unfavourable radio uplink situation in a cell of the network node and for receiving a list from a P2P-tracker, the list comprising available sources for downloading data. The computer program further comprises a releasing unit, or module, for releasing the P2P-session with the mobile device. Still further, the computer program further comprises a selecting unit, or module, for selecting a source other than the mobile device from the received list, and an initiating unit, or module, for initiating establishment of a P2P- session with the selected source.

[000168] The computer program modules could essentially perform the actions of the flow illustrated in figure 5, to emulate the P2P-client 1000, 1400. In other words, when the different computer program modules are executed in the processing unit 1406, they may correspond to the units 1002-1006 of figure 10.

[000169] Figure 15 schematically shows an embodiment of a P2P-tracker 1500. Comprised in the P2P-tracker 1500 are here a processing unit 1506, e.g. with a DSP (Digital Signal Processor). The processing unit 1506 may be a single unit or a plurality of units to perform different actions of procedures described herein. The P2P-tracker 1500 may also comprise an input unit 1502 for receiving signals from other entities, and an output unit 1504 for providing signal(s) to other entities. The input unit and the output unit may be arranged as an integrated entity or as illustrated in the example of figure 1 1 , as one or more interfaces 1 1 1 1/1 1 12.

[000170] Furthermore, the P2P-tracker 1500 comprises at least one computer program product 1508 in the form of a non-volatile memory, e.g. an EEPROM (Electrically Erasable Programmable Read-Only Memory), a flash memory and a hard drive. The computer program product 1508 comprises a computer program 1510, which comprises code means, which when executed in the processing unit 1506 in the P2P-tracker 1500 causes the P2P-tracker 1500 to perform the actions e.g. of the procedure described earlier in conjunction with figure 6.

[000171 ] The computer program 1510 may be configured as a computer program code structured in computer program modules 1510a-1510e. Hence, in an exemplifying embodiment, the code means in the computer program of the P2P- tracker 1500 comprises a receiving unit, or module, for receiving an indication of an unfavourable radio uplink situation from a mobile device via a network node with which the mobile device is associated. The computer program further comprises an updating unit, or module, for updating the list of available sources, by either removing the mobile device from the list or setting an operation mode, or status, of the mobile device to "sink".

[000172] The computer program modules could essentially perform the actions of the flow illustrated in figure 6, to emulate the P2P-client 1 100, 1500. In other words, when the different computer program modules are executed in the processing unit 1506, they may correspond to the units 1 102-1 104 of figure 1 1 .

[000173] Although the code means in the respective embodiments disclosed above in conjunction with figures 6-9 may be implemented as computer program modules which when executed in the respective processing or control unit causes the mobile device, the network node, the P2P-client and the P2P-tracker respectively to perform the actions described above in the conjunction with figures mentioned above, at least one of the code means may in alternative embodiments be implemented at least partly as hardware circuits.

[000174] The respective processor may be a single CPU (Central processing unit), but could also comprise two or more processing units. For example, the processor may include general purpose microprocessors; instruction set processors and/or related chips sets and/or special purpose microprocessors such as ASICs

(Application Specific Integrated Circuit). The processor may also comprise board memory for caching purposes. The computer program may be carried by a computer program product connected to the processor. The computer program product may comprise a computer readable medium on which the computer program is stored. For example, the computer program product may be a flash memory, a RAM (Random-access memory) ROM (Read-Only Memory) or an EEPROM, and the computer program modules described above could in alternative embodiments be distributed on different computer program products in the form of memories within the mobile device, the network node, the P2P-client and the P2P-tracker respectively.

[000175] It is to be understood that the choice of interacting units, as well as the naming of the units within this disclosure are only for exemplifying purpose, and nodes suitable to execute any of the methods described above may be configured in a plurality of alternative ways in order to be able to execute the suggested procedure actions.

[000176] It should also be noted that the units described in this disclosure are to be regarded as logical entities and not with necessity as separate physical entities.

[000177] While the embodiments have been described in terms of several embodiments, it is contemplated that alternatives, modifications, permutations and equivalents thereof will become apparent upon reading of the specifications and study of the drawings. It is therefore intended that the following appended claims include such alternatives, modifications, permutations and equivalents as fall within the scope of the embodiments and defined by the pending claims.