FI128026B - Enhancing monitoring of connections - Google Patents

Enhancing monitoring of connections Download PDF

Info

Publication number
FI128026B
FI128026B FI20155466A FI20155466A FI128026B FI 128026 B FI128026 B FI 128026B FI 20155466 A FI20155466 A FI 20155466A FI 20155466 A FI20155466 A FI 20155466A FI 128026 B FI128026 B FI 128026B
Authority
FI
Finland
Prior art keywords
peer
connection
peers
logical
logical connection
Prior art date
Application number
FI20155466A
Other languages
Finnish (fi)
Swedish (sv)
Other versions
FI20155466A (en
Inventor
Jarkko Pyykkönen
Henri Pelkonen
Original Assignee
Near Real Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Near Real Oy filed Critical Near Real Oy
Priority to FI20155466A priority Critical patent/FI128026B/en
Priority to PCT/FI2016/050429 priority patent/WO2016203110A1/en
Publication of FI20155466A publication Critical patent/FI20155466A/en
Application granted granted Critical
Publication of FI128026B publication Critical patent/FI128026B/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/141Setup of application sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks

Abstract

There is provided a method comprising: receiving, by a network element, information from a first and second peers respectively, the information relating to at least one logical connection of a session between the first and second peers; determining, based on the received information from the first and second peers, that the at least one logical connection between the first and second peers is open, or that at least one data packet has been transferred between the first and second peers using the at least one logical connection; and in a response to the determining, incrementing a logical connection-specific counter of the at least one logical connection.

Description

Enhancing Monitoring of Connections
TECHNICAL FIELD
The invention relates to connections between peers. More particularly, the invention relates to monitoring of connections between the 5 peers.
BACKGROUND
In a connection between peers, data may be transferred between the peers. Providing solutions to measure the data transfer between the peers may be beneficial in order to enhance the monitoring of the connections.
EP 1701500 discloses a communications system, such as mobile radio telephone, fixed digital communications, internet peer-to-peer communications with enhanced control and other features and services. The system is aimed at improved risk management, for example for detection of fraud, protection of revenue, control of credit, minimisation of security risk or other associated risk management controls and provides risk-responsive control. In one aspect, a terminal information collection module (16) is provided in a subscriber terminal for collecting information relating to communications established through the communications network, with means for receiving at least one configuration parameter and means for adjusting its information collection and/or reporting to a central server in response thereto. In another aspect, a server in the network collects information for risk analysis from the subscriber terminals.
BRIEF DESCRIPTION
According to an aspect, there is provided the subject matter of the independent claims. Some embodiments are defined in the dependent claims.
One or more examples of implementations are set forth in more detail in the accompanying drawings and the description below. Other features will be apparent from the description and drawings, and from the claims.
BRIEF DESCRIPTION OF DRAWINGS
In the following embodiments will be described in greater detail with reference to the attached drawings, in which
Figure 1 illustrates an example of a communication system to which embodiments of the invention may be applied;
20155466 prh 02 -01- 2018
Figure 2 illustrates a block diagram according to an embodiment;
Figures 3A to 3B illustrate some embodiments;
Figure 4 illustrates an embodiment;
Figures 5A to 5C illustrate some embodiments;
Figure 6 illustrates an embodiment;
Figure 7 illustrates a signal diagram according to an embodiment of the invention;
Figure 8 illustrates an apparatus according to an embodiment; and
Figure 9 illustrates an embodiment of the invention.
DETAILED DESCRIPTION OF SOME EMBODIMENTS
The following embodiments are exemplifying. Although the specification may refer to “an”, “one”, or “some” embodiment(s) in several locations of the text, this does not necessarily mean that each reference is made to the same embodiment(s), or that a particular feature only applies to a 15 single embodiment. Single features of different embodiments may also be combined to provide other embodiments.
Figure 1 shows an example of a communication system to which embodiments of the invention may be applied. The communication system may enable a plurality of devices 110, 120 to be in communication with each 20 other, e.g. exchange data with each other. The communication may be enabled by a network 130 and/or by a peer-to-peer connection between the devices 110, 120. In some cases, the establishment of the peer-to-peer connection may require signaling between network and the to-be-connected peers.
One example of peer-to-peer enabling technologies may be WebReal-Time Communication (WebRTC) interface. The WebRTC may enable the peer-to-peer connection by enabling browser-to-browser communication. For example, modern browsers, such as Google Chrome, Mozilla Firefox, Opera, may support WebRTC connections, thus enhancing the communication between peers. WebRTC may not require any additional browser extensions to work, and thus it may be rather easy for a user to use. However, additional extension may be used in order to enable WebRTC support for browsers not natively supporting WebRTC, or to other applications that may be wanted to use in WebRTC communication system. For example, a mobile app may be 35 developed with a support for WebRTC connections.
20155466 prh 02 -01- 2018
Referring to Figure 1, a first peer 110 and a second peer 120 may be shown to be connected 112, 122 to a network 130. The connections may be enabled by wireless connection, such as Wireless Local Area Network (WLAN), wired connection such as, LAN, and/or cellular connection, such as 5 2G, 3G, LTE, LTE-A, 4G or 5G technologies. Thus, the peers 110, 120 may have access to the network 130. For example, the peers 110, 120 may be and/or comprise a tablet, a smart phone, a mobile phone, a computer, a laptop, a television, a smart watch, a wrist device, to name a few examples.
In an embodiment, the peers 110, 120 comprise an Internet of
Things (loT) device. Such loT device may be, for example, any device capable of transmitting and/or receiving data, and capable of connecting to the network 130 and to other devices (e.g. peers). For example, the loT device may comprise at least one sensor device. The at least one sensor may comprise, but not limited to, an accelerometer, sphygmomanometer, SpO2 sensor (e.g.
pulse and oxygen in blood sensor), temperature sensor, galvanic skin response sensor, electromyography sensor, electrocardiogram sensor, airflow sensor (i.e. measuring breathing). The at least one sensor may be used to, for example, measure and/or monitor biometric values of a user.
The network 130 may be referred to as a cloud network. The 20 network 130 may be accessible by the peers 110, 120 through normal Internet connections, meaning that the network 130 may be a part of public and/or accessible Internet. It may also be possible that the network 130 is a private network, for example, used within a company to enable company workers to use peers 110, 120 to access the network 130.
The network 130 may be used to enable the peers 110, 120 to establish peer-to-peer connections and/or it may be used to enable the peers 110, 120 to be in communication with each other by conveying information between the peers 110, 120. Thus, the peers 110, 120 may be connected to each other directly and/or via the network 130.
If we consider WebRTC as an example, the peers 110, 120 may be connected to a web service of the network 130. The web service may enable signaling between the peers 110, 120. For example, Session Description Protocol (SDP) format may be used provided information of a setup of the peer to other peers. For example, the first peer 110 may signal IP-address, Firewall information, and/or Network Address Translation (NAT) information to the second peer in order to enable the peer-to-peer-connection. In a way it may
20155466 prh 02 -01- 2018 be understood that the signaling through the web service may be used to exchange information between the peers 110, 120 so that they may have knowledge how to establish a direct connection between the peers 110, 120. In WebRTC the direct connection between the peers 110, 120 (e.g. peer-to5 peer) may be enabled by using RTCPeerconnection which may try to establish the peer-to-peer connection using at least some of the signaled information.
Interactive Connectivity Establishment (ICE) framework may be used to enhance and/or to enable the forming of connection between the first and second peers 110, 120. The ICE may be used to find a best possible 10 connection path between the peers 110, 120. For example, the direct connection may be established. However, the forming of direct connection may sometimes fail. In such case, the peers 110, 120 may try to reconnect and/or to use Session Traversal Utilities for NAT (STUN) server(s) to acquire an external network address of the peers 110, 120 respectively. For example, if 15 the first peer 110 is behind a router, the IP-address it informs in the signaling phase may be an internal IP-address, and thus external devices may not really know how to find the first peer 110. The STUN server(s) may be used to acquire the public IP-address of the first peer 110. Thus, the STUN server(s) may enable the first and second peers 110, 120 to find each other and to form 20 the peer-to-peer connection. The IP-address may comprise a port number.
Further, it may be possible that a firewall or similar protection is used by at least one of the peers 110, 120. Thus, the normal RTCPeerconnection may fail even though the STUN server(s) would be used. In one example, in the WebRTC protocol the peers 110, 120 first tries to 25 establish connection over User Datagram Protocol (UDP). If that fails, the peers 110, 120 may try again over Transmission Control Protocol (TCP). It is possible that at least one Traversal Using Relays around NAT (TURN) server is used to overcome problems caused by NAT and/or firewall(s). The at least one TURN server may have a public addresses, so they can be contacted by 30 the peers 110, 120 even if the peers 110, 120 are behind firewalls and/or proxies. The at least one TURN server may be used to relay, for example, a data, audio and/or video stream between the peers 110, 120. It may also be possible to use more than one TURN servers. In such case, the TURN servers may be in communication with each other in order for the stream to transfer 35 from one peer to another.
Still referring to Figurel, the network 130 may comprise at least on
20155466 prh 02 -01- 2018 server 132, at least one database 134 and/or at least one terminal device 136. The at least one server 132 may comprise webserver(s), STUN server(s), and/or TURN server(s). However, other servers and/or server types may be used. The webserver may comprise, for example, application server configured 5 to provide users the web service. The application server may be physical and/or virtual part of the webserver, and thus the application server may not necessarily be required to provide the web service. Further, the webserver may comprise, for example, Node.js -server. It needs to be noted that the functionalities of the at least one server 132 may be comprised in one network 10 element and/or server. That is, one server may handle all functions of the webserver(s), TURN server(s) and/or STUN server(s). Naturally, more than one server may be used also. For example, it may be beneficial to buy TURN server resources, when they are needed, from service providers to reduce own costs.
It further needs to be noted that the at least one server 132, at least one databased and/or the at least one terminal device 136 may physically reside in any part of the network 130. Thus, the functions of the at least one server 132, for example, may be performed virtually meaning that actual computation is happening in different physical server(s). For a peer, the virtual 20 server may look similar to a physical server, and the peer may not be aware of how the actual computation is performed. Actual implementation of the virtual servers and/or network elements in a network, are obvious for a skilled person.
The at least one database 134 may be used to store data, such as peer addresses, session identifiers, to name a couple examples. The at least 25 one database 134 and the at least one server 132 may be connected to each other in order to transfer data between the at least one database 134 and the at least one server 132. The at least one terminal device 136 may be used to monitor the network 130, such as the server(s) 132 and/or the database(s) 134. It may be possible that the at least one terminal device 136 is comprised 30 in the server 132, for example.
In the system of Figure 1, there may be communication links 112, 122 between the first and second peers 110, 120 with the network 130. These communication links 112, 122 may be wireless and/or wired. Similarly, there may be peer-to-peer communication link(s) 140 between the first and the 35 second devices 110, 120. These communication link(s) 140 may also be wireless and/or wired.
20155466 prh 02 -01- 2018
As described, the peers 110, 120 may be connected to each other.
This may mean that the peers 110, 120 are in a session with each other. The session here may mean that the peers 110, 120 are, for example, participating in a same virtual meeting room. Naturally, there may be a multiple sessions 5 between the first and second peers 110, 120, but in the sake of simplicity let us presume that these one or more sessions are actually sub-sessions of the session between the first and second peers 110, 120. That is, the session between the first and second peers 110, 120 may mean that the two are in connection with each other that is accepted by both peers 110, 120. Further, 10 the session may comprise one or more logical connections between the first and second peers 110, 120. The logical connections may be peer-to-peer connections and/or connections relayed by at least one network element of the network 130. The logical connections may be used to transfer data, video, audio etc. between the peers 110, 120. Each of the logical connections may be 15 needed to be accepted by both peers 110, 120.
Monitoring the transferred data between the peers 110, 120 may be used to, for example, used to generate billing of a service used. For example, the service may be a conference call service, wherein the peers 110, 120 are using the service. The service provider may, for example, want to bill the users 20 of the service based on the usage of the service. However, in order for the billing to be fair, the monitoring of the data transfer between the peers may need to be enhanced. For example, different data types may have individual fees and/or different logical connections may have logical connection specific fees. Further, the fees may also vary between similar logical connections 25 within the same session. One example of this may be that a first video connection costs 0.02€/minute whereas a second video connection costs 0.01€/min, wherein the first and second video connections may be connections of the same session.
There is provided a solution to enhance the monitoring of the 30 session between peers. Although the solution is described in relation to the first and second peers 110, 120, the solution may work similarly with more than two peers 110, 120.
Figure 2 illustrates a block diagram according to an embodiment of the invention. Referring to Figure 2, in step 210, a network element may 35 receive information from the first and second peers 110, 120 respectively, the information relating to at least one logical connection of a session between the
20155466 prh 02 -01- 2018 first and second peers 110, 120. The network element may comprise at least one of the at least one server 132, at least one database 134, for example. The first and second peers 110 may transmit information related to the at least one logical connection.
In step 220, the network element may determine, based on the received information from the first and second peers 110, 120, that the at least one logical connection between the first and second peers is open, or that at least one data packet has been transferred between the first and second peers 110, 120 using the at least one logical connection. For example, if there are 10 two logical connections (i.e. video and audio) between the peers 110, 120, the information from the first peer 110 may indicate that video connection is open but the audio connection is closed. The second peer 120 may indicate that both connections are open. Based on the peer-specific information, the network element may determine that the video connection is open and the 15 audio connection is closed because it is not open at both peers 110, 120. That is, the at least one logical connection may be open if both peers indicate it to be open at their respective sides.
It is also possible that the peers indicate that the at least one data packet is transferred from one peer to another, as described above. In such 20 case the at least one connection, used to transmit the at least one data packet, may not necessarily be open after the packet(s) are transmitted. For example, there may be and/or may have been a chat connection and sensor connection between the peers 110, 120. The first peer 110 may indicate (e.g. transmit information to network element) that a chat data packets and sensor data 25 packets have been transmitted. However, the second peer 120 may indicate that the chat data packets have been received, but the sensor data packets are not received. Indication of not receiving something may actually be the absence of indicating that something is received as the second peer 120 may not necessarily be aware that the first peer 110 has transmitted something. 30 The network element may determine that the chat data packets have been transferred, but the sensor data packets have not been transferred based on the information received from the peers.
Let us consider closer on what is meant by the at least one logical connection being open. As said, a logical connection may be open if it is open 35 at both peers. The term open may mean that the logical connection is formed between the first and second peers 110, 120, that is, the logical connection
20155466 prh 02 -01- 2018 may be accepted by both by the first and second peers 110, 120. Open logical connection may not necessarily require the logical connection to be active or used to transfer data. More broadly, it may mean that the logical connection is accepted by both participants and/or that it is possible to use the open logical 5 connection for data transfer.
In an embodiment, the determination of step 220 that the at least one logical connection is open further requires the at least one logical connection is active. This means that at least some control information and/or actual data is transferred via the at least one logical connection regularly. 10 Naturally, also in this case the, there may be times when the connection is actually active but no data is transmitted. Such pauses in data transmission may be required, for example, by the system requirements.
In an embodiment, the determination of step 220 that the at least one logical connection is open further requires that at least some data is 15 transferred continuously. For example, video stream may be continuously transmitted from the first peer to the second peer 120.
In step 230, the network element may in response to the determining of step 220, increment a logical connection-specific counter of the at least one logical connection. For example, if the audio connection is 20 determined to be open, a counter specific to that audio connection may be incremented. Similarly, for example, if a data packet has been transmitted using a video connection, a counter specific to that video connection may be incremented. The logical connection-specific counter may comprise, for example, a logical connection-specific timer and/or logical connection-specific 25 data counter. That is, a timer may be incremented if a logical connection is open, or the data counter may be incremented if the data packet has been transferred. In an embodiment, the logical connection-specific counter comprises both the timer and the data counter. That is, for a single logical connection there may be a timer and a data counter, wherein one or both may 30 be updated by the network element based on the information received from the peers 110, 120.
Let us now look closer on some embodiments of the invention. Figures 3A to 3B illustrate some embodiments of the invention. Referring to Figure 3A, in steps 302, 304 the first and second peers 110, 120 may signal 35 with a network element 300, such as the network element of Figure 2. The signaling may be used to transfer information needed for the peers 110, 120 to
20155466 prh 02 -01- 2018 establish a session (step 306). For example, in WebRTC scenario, the signaling is used to provide knowledge how to reach the other peer (i.e. IP address), wherein, in step 306, a RTCPeerConnection may be performed.
For example, if the second peer 120 is used by a network sales assistant, the second peer 120 may signal with the network element that the sales assistant is online. A customer using the first peer 110 may enter a website and request assistance. This may be enabled by the signaling between the first peer 110 and the network element 300. Now the required information for the session may be transmitted via the network element 300 10 between the first and second peers 110, 120, and the peers 110, 120 may start the session. The session request may be performed by one of the peers and the other may accept or decline the request. If the session request is declined, session is not established.
In an embodiment, the service is integrated as an entity on a website. This may mean that when a user using a peer browses the website, the service providing, for example, conference call service may be initiated from the website. For example, a website element may be used to initiate a session (i.e. RTCPeerConnectionRequest).
As the session is established between the first and second peers 20 110, 120, they may use at least one logical connection between the first and second peers 110, 120. The at least one logical connection may comprise audio connection(s), video connection(s), screen sharing connection(s), message connection(s), co-browsing connection(s), file-sharing connection(s), and/or sensor data connection(s), as shown in an example Figure 3B.
The co-browsing connection(s) may be used to transmit data between the peers 110, 120 in order for them to seemingly navigate at the same website at the same time. For example, a sales assistant may help the customer to find certain product by making his/her browser to navigate to a certain page or section of a page. The sensor data connection(s) may be used 30 to transmit data from sensor(s) coupled with one of the peers. For example, a health sensor may be coupled with the first peer used by a patient, wherein the data from the health sensor may be transmitted from the sensor to the first peer 110, and eventually to the second peer 120 used by a healthcare professional (i.e. doctor, nurse). Later it is explained that an loT device may 35 join the session such that it may directly transfer data between the loT device and at least one of the first peer 110, second peer 120.
20155466 prh 02 -01- 2018
Still referring to Figure 3A, the information relating to the at least one logical connection between the first and second peers 110, 120 is comprised in a connection report received, by the network element 300, from the first and second peers 110, 120 respectively (steps 308, 310). For 5 example, the connection reports may be transmitted periodically (i.e. one second interval, ten second interval, one minute interval). The incrementing of the counter(s), by the network element 300, may be performed at certain interval, after receiving the information from both peers 110, 120, and/or after the session has ended, to name a few examples.
In an embodiment, the connection report further comprises a session identifier, a peer identifier, a service identifier, a randomly generated number (e.g. a TOKEN), sequence number of the connection report, and/or an IP-address of the peer. Thus, for example, the first peer 110 may transmit a connection report that may have the following form: [<first peer ID>, <random 15 number>, <sequence number of the report>, <IP address>, <first logical connection: open>, <second logical connection: closed>, <third logical connection: 10 kilobits received>]. Similarly, related to the same session the second peer 120 may transmit the following report: [<second peer ID>, crandom number>, <sequence number of the report>, <IP address>, <first 20 logical connection: open>, <second logical connection: open>, <third logical connection: 20 kilobits transmitted> <fourth logical connection: open].
As described, the session identifier may refer to the session between first and second peers 110, 120. The service identifier may comprise information of what service the service ordered (i.e. online shop helpdesk) is 25 using. For example, the service identifier may indicate that in said session between the first and second peers 110, 120, one video connection, two audio connections and two chat connections are used. The network element 300 may determine the service used based on the service identifier and/or the peers may transmit information indicating what or which logical connections 30 are used in said session. In an embodiment, the connection report comprises logical connection-specific information indicating whether at least a part of the at least one logical connection is archived and/or should be archived. For example, the first and/or second peers 110, 120 may indicate in the connection report that a video connection is archived by at least one of the first peer 110, 35 the second peer 120. Further, at least one of the first peer 110, second peer 120 may request the network element 300 to archive the video connection if
20155466 prh 02 -01- 2018 the video connection is relayed by the network element 300. The video archived may be later viewable from the network 130, such as from the database 134, for example. In another example, the first peer 110 and/or the second peer 120 archives the video or some other logical connection data to 5 its own database and/or memory. In an embodiment, the network element 300 may determine that a logical connection is archived if the connection report received both from the transmitter and receiver of the logical connection indicates that the logical connection is archived.
The randomly generated number (e.g. TOKEN) may be used to 10 determine expiration of a session. The network element 300 may receive the TOKENS and update a timestamp of the received TOKENS. If the previously received timestamp is older than a predetermined threshold (i.e. 1 hour, 2 hours, 3 hours, to name a few), the network element 300 may request the peer to authenticate again, for example. The network element 300 may determine 15 (step 312) is the at least one logical connection open or has at least one data packet been transferred. The determination, by the network element 300, that at least one data packet has been transferred may also comprise determining how much data is transmitted. Further, if we look at the example of Figure 2, in step 220 the at least one data packet may be determined to have been 20 transferred, and in step 230, the network element 300 may increment the data counter based on the determination how much data has been transferred. For example, based on the above-mentioned reports, the network element 300 may determine that the first logical connection is open, second logical connection is closed, 10 kilobits of data using the third logical connection has 25 been transferred, and that the fourth logical connection is closed. As shown, the first peer 110 may not even be aware of the fourth logical connection, or it may save resources by simply not sending anything meaning that the fourth logical connection may be closed at the first peer side.
In an embodiment, the determining, by the network element 300, of 30 step 220 of Figure 2 and/or step 312 of Figure 3A comprises determining that the at least one logical connection is open if the at least one logical connection is open both at the first peer side and at the second peer side.
Similarly, in an embodiment, the determining, by the network element 300, that the at least one data packet has been transferred comprises 35 determining that the at least one data packet has been transmitted by one peer and has been received by another peer. For example, first peer 110 indicates
20155466 prh 02 -01- 2018 that a data packet has been transmitted and the second peer indicates that said data packet has been received.
In an embodiment, the determining, by the network element 300, comprises determining that the at least one logical connection is open, and 5 that the at least one data packet has been transferred using the at least one logical connection. This may mean that the peers 110, 120 indicate that a logical connection is open and that at least one data packet is transferred using said logical connection. By using this approach, the accuracy of the logical connection based monitoring may be enhanced as both indication of 10 openness of the connections and indication that data has been transferred using the open connection may be required.
Figure 4 illustrates an embodiment of the invention. Referring to
Figure 4, the first and second peers may be in a session with each other. The session may comprise, for example, a conference call, a sales assistance, 15 virtual meeting to name a few examples. As described, within the session there may be a number of logical connections between the peers 110, 120. In the example of Figure 4, first and second logical connections are relayed by the network element 300 from the second peer 120 to the first peer 110. Third and fourth logical connections may be peer-to-peer connections. For example, the 20 third and fourth logical connections may be chat connections from one peer to another, whereas the first and second connections may be video and audio streams from the second peer 120 to the first peer 110.
In an embodiment, the connection-specific counter(s) of the connection(s) relayed by the network element 300 are incremented by the 25 network element 300 based on the state of the connection(s) determined by the network element 300. That is, it may not be necessary to receive information from the peers 110, 120 whether the relayed connection(s) are open, as the network element 300 may determine that the connection(s) are open if they are relayed. Further, the network element 300 may be aware how 30 much data has been transferred, and increment the connection-specific counter(s) based on the data amount transferred.
In an embodiment, as shown in Figure 4, the at least one logical connection comprises a logical connection relayed, by the network element 300, between the first and the second peers 110, 120, and/or a peer-to-peer 35 logical connection between the first and the second peers 110, 120. The relayed logical connection may comprise, for example, the first and/or second
20155466 prh 02 -01- 2018 connections, and the peer-to-peer logical connection may comprise, for example, the third and/or fourth connections.
Figures 5A to 5C illustrate some embodiments of the invention.
Referring to Figure 5A, the first peer and second peers 110, 120 may be in connection with each other, meaning that they may be participating in a same session 502. The session may comprise and/or consists of one or more logical connections, such as first and second logical connections 510, 520, for example. In the example of Figure 5A, session timeline 504 may be illustrated. This may mean the time from start of the session (i.e. RTCPeerConnection 10 started and/or accepted) to the end of the session. One example of such may be starting of a conference call and ending of the conference call, and thus events between these points in time may be shown in the example.
The first and second logical connections 510, 520 may illustrate logical connections from the second peer 120 to the first peer 110, for 15 example. The monitoring, by the network element 300 for example, may determine whether the logical connections 510, 520 are open at certain points in time, for example. In the example of Figure 5A, the network element 300 may determine that the second logical connection 520 is and/or has been open from start to end. However, for the first logical connection, the network element 20 300 may determine that the first logical connection 510 has been open 512 and close 514. The open time may be illustrated with a line fill within the arrow describing the first and second logical connections 510, 520.
Referring to Figure 5B, one logical connection between the first and second peers 110, 120 may be illustrated with tree arrows 530A, 530B, 530C. 25 As described in relation to Figure 5C, the logical connection 530A, 530B, 530C may be illustrated for the duration of the session between the first and second peers 110, 120. This does not, however, mean that the logical connection 530A, 530B, 530C would be necessarily open and/or even exists for the duration of the whole session.
Looking closer, the second peer 120 may transmit, for example, a video stream using the logical connection 530A, 530B, 530C. The first and second peers 110, 120 may transmit information about the logical connection 530A, 530B, 530C to the network element 300, for example. Based on the information from the peers 110, 120, the network element 300 may determine 35 that whether the connection is and/or has been open. For example, at the side of the second peer 120, the logical connection 530A has been open for the
20155466 prh 02 -01- 2018 duration of the session, whereas at the side of the first peer 110, the logical connection 530B has been open and closed during the session. Using this information, the network element 300 may determine when the logical connection 530C has been open.
In an embodiment, the first and/or second peers 110, 120 transmit regularly information about the state of the logical connection(s). For example, the connection report may be transmitted regularly after every 10 seconds. In the example of Figure 5B, the network element 300 may receive the information, and determine the openness of the logical connection 530C. As 10 shown in Figure 5B, as the determination and/or the receiving of the connection reports may be regular, there may be some delay 532 in determining whether the logical connection 530C is open or closed.
Referring to Figure 5C, a logical connection 540A, 540B, 540C between the first and second peers 110, 120 may be shown. In this example, 15 the peers 110, 120 may transmit information about the logical connection (i.e. the connection reports) when the state of the logical connection 540A, 540B, 540C changes. For example, the first peer 110 may transmit information to the network element 300 when the logical connection 540B, as received by the first peer 110, changes state at the first peer 110 from open to closed, and/or 20 vice versa. By using this approach the delays, such as delay 532, may be reduced and/or avoided, and the network element 300 may thus even more precisely monitor the state of the logical connection(s). Similarly, the peers 110, 120 may transmit information after transmitting and/or receiving of a data entity comprising at least one data packet. Thus, for example, when and/or 25 after the first peer 110 receives a chat message, it may transmit information to the network element 300 that the message has been received.
It needs to be noted that the logical connection 530A, 530B, 530C and the logical connection 540A, 540B, 540C are illustrated such that the arrows 530A, 540A illustrate the determination, by the network element 300, 30 about the openness of the logical connections at the second peer side based on the information received from the second peer 120. Similarly, the arrows 530B, 540B illustrate the determination, by the network element 300, about the openness of the logical connections at the first peer side based on the information received from the first peer 110. Further, the arrows 530C, 540C 35 illustrate the determination, by the network element 300, about the openness of the logical connections based on the information from the first and the
20155466 prh 02 -01- 2018 second peers 110, 120.
Figure 6 illustrates and embodiment of the invention. Referring to Figure 6, the network element 300 may determine, based on connection reports 624, 622 received from the second peer 120 and a third peer 620 5 respectively, that the second and third peers 120, 620 have the same peer identifier and IP-address. Further, the network element 300 may perform an action concerning session(s) to which the second peer 120 is participating and/or session(s) to which the third peer 620 is participating. The action may comprise, for example, terminating the session(s), terminating at least one 10 logical connection of the session(s) and/or transmitting a control message to the second peer 120 and/or third peer 620 that causes the receiving peer (i.e. second peer 120, third peer 620) to terminate the session(s) and/or the at least one logical connection.
In an embodiment of the invention, the at least one connection 15 between the peers 110, 120 is encrypted. For example, Datagram Transport Layer Security (DTLS) may be used for the encryption. In an embodiment, the information transferred by the peers 110, 120 to the network element 300, such as the connection reports, are encrypted. The network element 300 may be configured to decrypt the received information. In an embodiment, at least 20 some signaling between the network element 300 and the peers 110, 120 is encrypted. For example, the signaling prior RTCPeerConnection may be encrypted.
In an embodiment, the at least one connection comprises High Definition (HD) video connection (i.e. 720p, 1080p, 4K). For example, the 25 network element 300 may be configured to relay the HD video connection between the peers 110, 120. In an embodiment, the at least one connection comprises HD audio.
Although, the solution is described using the first and second peers 110, 120 as examples, more than two peers may be used. For example, the 30 network element 300 may monitor a session between more than two peers.
Further, the network element 300 may be configured to monitor more than one session at a time. This may mean that, for example, the network element 300 may monitor the session between the first and second peers, a second session between third and fourth peers, and/or a third session between second and 35 fourth peers, for example.
The described situation may be beneficial, for example, to prevent
20155466 prh 02 -01- 2018 misuse of a service. For example, license agreement may state that service provider may use only one peer to serve customer peers 611-614. The customer peers 611-614 may be, for example, online shop customers that are served by an online assistant using the second peer 120. If the online shop 5 tries to use more than one peer (i.e. third peer 620) to assist their customers, the misuse may be detected by the network element 300 and an action may be taken accordingly.
Figure 7 illustrates a signal diagram according to an embodiment of the invention. Referring to Figure 7, the network element 300 may receive a 10 request 704 from the first peer 110 and/or the second peer 120 (in Figure 7 request is received from the second peer 120), the request requesting an external device 700 to share data with the first peer 110 and/or the second peer 120. In an embodiment, the first and second peers 110, 120 are in a session (block 702) when the request is transmitted and/or received.
The network element 300 may obtain an identifier referring to the session 702 between the first and second peers (block 706). This may enable the external device 700 to be able to join the session, for example. However, joining in to the session may not necessarily be required.
The network element 300 may further cause the first peer 110 20 and/or the second peer 120 to indicate the identifier, such as the session identifier, to the external device 700 enabling the external device 700 to share data between the external device 700 and at least one of the first peer 110, second peer 120. In the example of Figure 7, the network element 300 may transmit a request to the first peer 110 (block 708) that causes the first peer 25 110 to indicate the session identifier to the external device 700 (block 710).
Naturally, the first and/or second peers 110, 120 may be aware of the session identifier, and thus such identifier may not necessarily be required to be received from the network element 300. However, for example, if a relative identifier is used, the network element 300 may generate such relative 30 identifier. The purpose of the relative identifier may be to hide the session identifier from the external device 700. Thus, for example, the network element 300 may indicate the relative identifier to the external device 700 (i.e. directly, using first peer 110, using second peer 120 for the indication). The external device 700 may then transmit data to the network element 300, wherein the 35 data may be associated with the relative identifier. When the network element 300 receives the data, it may know to which session the data belongs to. Thus,
20155466 prh 02 -01- 2018 it may transfer the received data to at least one of the session participants.
In another example, the external device 700 may transmit data directly to the first and/or second peers 110, 120. However, in such case the external device 700 may need the session identifier and/or IP-address of the 5 peer(s).
In block 712, the external device 700 may join the session, and exchange data between the first and/or second peers 110, 120. However, as described above this may not necessarily be required. The external device 700, such as a sensor device (i.e. loT device with at least one sensor), may 10 receive the identifier related to the session between the first and second peers 110, 120 (i.e. relative identifier). The identifier may be received from the first peer 110, the second peer 120, and/or the network element 300. When the external device 700 transmits data to the network element 300, it may associate the transmitted data with the received identifier. Thus, when the 15 network element 300 receives the data, it may convey it to the right session, for example.
In an embodiment, the first peer 110 and/or the second peer 120 indicates the identifier related to the session between the first and second session using a Quick Response (QR) code. Another example may be to use 20 NFC connection and/or Bluetooth connection to indicate the identifier to the external device 700.
It needs to be further noted that the receiving, by the external device 700, of the identifier (i.e. session identifier, relative identifier) relating to the session between the first and second peers 110, 120 may be used even after 25 the session between first and second peers 110, 120 has been terminated. For example, if the external device 700 is used to measure blood pressure of a patient, the external device 700 may acquire the identifier from the first peer 110 used by the patient. The first and second peers 110, 120 may terminate the session between them but the doctor (using the second peer 120) may 30 instruct the patient to measure his/her blood pressure once a day. Thus, for example, for a week the patient may use the external device 700 to measure his/her blood pressure, wherein the external device 700 may transmit the data to the network element 300. As described, the transmitted data may be associated with the identifier, such as the relative identifier, and thus, the 35 network element 300 may associate the received data with the right peer(s) and/or right session. Further, the network element 300 may store the received
20155466 prh 02 -01- 2018 data for later view. Therefore, the doctor may view the results when he/she so wishes.
The relative session identifier may bring some benefits. For example, peer identifiers and/or user identifiers are not needed to be stored to 5 the external device 700. Thus, for example, the external device 700 may be more securely used by a number of patients.
In an embodiment, at least one of the first peer 110, the second peer 120 transmits an indication to the network element 300 whether further data is allowed to the closed and/or terminated session between the peers 10 110, 120. For example, the second peer 120 may indicate that the external device 700 data may be allowed to be stored to the session data after the session has been closed (i.e. blood pressure measurements). The network element 300 may receive the indication, and based on the indication allow or decline further data to be associated (i.e. stored) with the session.
In an embodiment, the external device 700 transmits data to first and/or second peers 110, 120 via the network element 300. In other words, the network element 300 may receive data from the external device 700, and determine to which peer it should convey the data to. For example, the external device 700 data may comprise an identifier relating to the external 20 device 700 (i.e. user identifier, device identifier). The network element 300 may use this identifier to determine to which session the data belongs to. For example, the connection report(s) may comprise information about used sensor device(s) that relate to a certain user and/or peer (i.e. user identifier, sensor device identifier(s)).
In an embodiment, the external device 700 comprises and/or is an loT device. Thus, it may be able to communicate with the network via cellular, wired and/or wireless data connection.
In an embodiment, at least one of the first peer 110, the second peer 120 controls to who the external device 700 data is allowed to be shown.
For example, the external device 700 may transmit weight information of a person to the network element 300. Host of the session, such as the second peer 120, may indicate to the network element 300 that first peer 110, third peer and fourth peer may have access to said weight information. For example, the first, third and fourth peers may be comprised in a weight management group. Thus, they all may be given access to that information to promote peer pressure etc. For example, the weight information may be
20155466 prh 02 -01- 2018 measured from the user of the first peer 110. Also the same external device 700 may be used by all different peer users (i.e. third peer, fourth peer).
In an embodiment, the external device 700 comprises at least one of a camera, microphone, speaker, keyboard. Therefore, the external device 5 700 may be used, for example, to offer an enhanced user experience for a user of a peer. For example, HD video and/or audio may be acquired using the external device 700. Also keyboard may offer, for example, for a mobile user more enhanced way of typing in information.
In an embodiment, the external device 700 authenticates to the 10 network element 300 using the information received from the QR code, NFC and/or Bluetooth. The QR code may comprise, for example, the relative identifier and/or a password. When the authentication request has been received by the network element 300, the network element 300 may respond with a message comprising a TOKEN. As described above, the TOKEN may 15 expire if too much time has passed without communication. Therefore, if the peer transmits data (i.e. control data, data packets) to the network element 300, the TOKEN may not expire. However, the TOKEN may expire if no data is transmitted for a certain time and/or if the peer ends the session (i.e. dedicated session end button and/or turning off the browser). When the session is 20 deliberately terminated by a user of the peer, the peer may transmit a control message to the network element 300 and/or to other peers in the session that it has terminated the session. Naturally, termination in this case may mean that the peer leaves the session, but the session may still be on for some other peers (i.e. multiparty session). Thus, the peer may not be able to force 25 termination of the whole session.
In an embodiment, the network element 300 terminates the session based on the expiration of at least one TOKEN received from the session participants. For example, if there are two peers in the session and one TOKEN is expired, the network element 300 may terminate the session.
Let us further consider how the enhanced monitoring of the session may be utilized. In an embodiment, the network element 300, based on the logical connection-specific counter of the at least one logical connection, provides connection resources to at least one of the first peer 110, the second peer 120. Communication resources may mean, for example, more band(s) to 35 transfer data and/or to use more logical connections. For example, if some peer uses normally only audio and not video, it may require less band
20155466 prh 02 -01- 2018 compared to a peer which uses both. Thus, the network element 300 may actually use history information about connections of peers in order to serve all peers accordingly, when at the same time not having too much excess communication resources. This may enhance the performance of the network 5 as whole.
One other example may be to use the above described solution to enable charging service users based on the actual usage of the service. One example of such may be to base the charges on openness and/or activeness of logical connection(s). For example, if it is possible to use video and audio 10 streams, but the service user doesn’t always want to use video connection, the service charge may only comprise the services (i.e. connections) that are actually used. Hence, the charging may be fairer. In an embodiment, the network element 300 comprises a charging engine (i.e. server). The charging engine may be responsible of generating bills to service users based on the 15 logical connection-specific counter of the at least one logical connection.
Figure 8 illustrates an apparatus according to an embodiment of the invention. The apparatus 800 may be and/or comprise the network element 300, for example. In an embodiment, the apparatus 800 is a server. In an embodiment, the apparatus 800 comprises a server and/or a database.
In an embodiment, the apparatus 800 comprises a circuitry (CTRL)
810, such as at least one processor, and at least one memory 830 including a computer program code (software) 832, wherein the at least one memory and the computer program code (software) 832, are configured, with the at least one processor, to cause the respective apparatus 800 to carry out any one of 25 the embodiments of Figures 1 to 7, or operations thereof.
Referring to Figure 8, the memory 830 may be implemented using any suitable data storage technology, such as semiconductor based memory devices, flash memory, magnetic memory devices and systems, optical memory devices and systems, fixed memory and removable memory. The 30 memory 830 may comprise a database 834 for storing data, such as the received connection reports. Further, database 834 may be and/or comprise at least one of the databases 134 of Figure 1, for example.
The apparatus 800 may further comprise communication circuitry 820 comprising hardware and/or software for realizing communication 35 connectivity according to one or more communication protocols, such as WLAN, cellular protocols and/or LAN. The communication circuitry may
20155466 prh 02 -01- 2018 provide the apparatus with communication capabilities to access the network 130 in order to enable communication with peers 110, 120, for example. The TRX may comprise standard well-known components such as an amplifier, filter, frequency-converter, (de)modulator, and encoder/decoder circuitries and 5 one or more antennas. In an embodiment, the communication circuitry 820 is and/or comprises a wireless communication circuitry.
The apparatus 800 may also comprise user interface 840 comprising, for example, at least one keypad, a microphone, a touch display, a display, a speaker, etc. The user interface 840 may be used to control the 10 respective apparatus by a user of the apparatus 800.
In an embodiment, the apparatus 800 comprises the control circuitry 810 comprising a receiver circuitry 812, a determiner circuitry 814 and/or an incrementer circuitry 816. The receiver circuitry 812 may be configured to receive information from the first and second peers 110, 120 respectively, the 15 information relating to at least one logical connection of a session between the first and second peers 110, 120. The determiner circuitry 814 may be configured to determine, based on the received information from the first and second peers 110, 120, that the at least one logical connection between the first and second peers 110, 120 is open, or that at least one data packet has 20 been transferred between the first and second peers 110, 120 using the at least one logical connection. Further, the incrementer circuitry 816 may be configured to in a response to the determining by the determiner circuitry 814, increment a logical connection-specific counter of the at least one logical connection.
In an embodiment, there is provided an apparatus comprising at least one processor and at least one memory including a computer program code, wherein the at least one memory and the computer program code are configured, with the at least one processor, to cause a network element to perform operations comprising: receiving, by a network element, information 30 from a first and second peers respectively, the information relating to at least one logical connection of a session between the first and second peers; determining, based on the received information from the first and second peers, that the at least one logical connection between the first and second peers is open, or that at least one data packet has been transferred between 35 the first and second peers using the at least one logical connection; and in a response to the determining, incrementing a logical connection-specific
20155466 prh 02 -01- 2018 counter of the at least one logical connection.
Figure 9 illustrates an embodiment of the invention. Referring to Figure 9, a session between the first and second peers 110, 120 may comprise further peer(s) such as a third peer 910. That is, as described above, there 5 may be plurality of devices in the session that may have a number of peer-topeer connections and/or number of relayed connections by the network element 300.
In the example of Figure 9, the second peer 120 may broadcast (i.e. one-to-many connection) data to the first and third peers 110, 910. Thus, a first 10 logical connection may be from second peer 120 to the first and third peers 110, 120, for example. Monitoring the one-to-many logical connection may require all participants of that connection to transmit information regarding said connection to the network element 300. For example, it may be determined that the first connection is open at the second peer 120, open at the first peer 15 110 and open at the third peer 910. However, for example, the third peer 910 may indicate that the first connection is closed, and thus, the network element 300 may determine that the first connection is open only between the first and second peers 110, 120. Naturally, if the second peer 120 is the broadcaster and it is determined that the first connection is closed at the second peer side, 20 the network element 300 may determine that the first connection is not open at all.
The multiparty session may further comprise one-to-one logical connections, such as a second, third and fourth logical connections as shown in Figure 9. Further, there may be logical connection(s) between the first and 25 third peers 110, 910 also. To sum it up, the session described in relation to Figure 2 for example, may comprise a plurality of peers (i.e. 2 peers, 10 peers, 100 peers, 1000 peers to name a few examples). For a one-to-one logical connection the determination of openness and/or determination that a data packet has been transferred may be based on the information from the 30 transmitter and the receiver. For one-to-many connections, the determination may be first of all based on the transmitter. If, for example, the transmitter indicates that a broadcast connection is open, the receivers may indicate whether the broadcast connection is open at their side. If the broadcast connection is open at both sides, i.e. transmitter and a first receiver, the 35 broadcast connection may be considered to be open between the transmitter and the first receiver. However, if a second receiver indicates that the
20155466 prh 02 -01- 2018 broadcast connection is not open, the broadcast connection may be considered to be closed between the transmitter and the second receiver. Such situation may happen, for example, if the transmitter broadcasts a stream and it is received by the first receiver but not by the second receiver.
To further clarification, a meeting and/or conference session, such as a WebRTC session, between peers may, for example, comprise many-tomany and/or one-to-many logical connections between the peers. In such case the connections may be monitored, by the network element 300, based on the information from the peers. Thus, for example, a number of transmitters and 10 receivers may be determined by the network element 300 respectively. Based on the determination, the counter(s) may be increased and/or communication resources may be distributed.
According to yet another embodiment, the apparatus carrying out the embodiments comprises a circuitry including at least one processor and at 15 least one memory including computer program code. When activated, the circuitry causes the apparatus to perform at least some of the functionalities according to any one of the embodiments of Figures 1 to 7 and Figure 9, or operations thereof.
As used in this application, the term ‘circuitry’ refers to all of the 20 following: (a) hardware-only circuit implementations, such as implementations in only analog and/or digital circuitry, and (b) combinations of circuits and software (and/or firmware), such as (as applicable): (i) a combination of processor(s) or (ii) portions of processor(s)/software including digital signal processor(s), software, and memory(ies) that work together to cause an 25 apparatus to perform various functions, and (c) circuits, such as a microprocessor(s) or a portion of a microprocessor(s), that require software or firmware for operation, even if the software or firmware is not physically present. This definition of ‘circuitry’ applies to all uses of this term in this application. As a further example, as used in this application, the term ‘circuitry’ 30 would also cover an implementation of merely a processor (or multiple processors) or a portion of a processor and its (or their) accompanying software and/or firmware.
In an embodiment, at least some of the processes described in connection with Figures 1 to 7 and Figure 9 may be carried out by an 35 apparatus comprising corresponding means for carrying out at least some of the described processes. Some example means for carrying out the processes
20155466 prh 02 -01- 2018 may include at least one of the following: detector, processor (including dual-core and multiple-core processors), digital signal processor, controller, receiver, transmitter, encoder, decoder, memory, RAM, ROM, software, firmware, display, user interface, display circuitry, user interface circuitry, 5 user interface software, display software, circuit, antenna, antenna circuitry, and circuitry. In an embodiment, the at least one processor, the memory, and the computer program code form processing means or comprises one or more computer program code portions for carrying out one or more operations according to any one of the embodiments of Figures 1 to 7 10 and Figure 9 or operations thereof.
The techniques and methods described herein may be implemented by various means. For example, these techniques may be implemented in hardware (one or more devices), firmware (one or more devices), software (one or more modules), or combinations thereof. For a hardware 15 implementation, the apparatus(es) of embodiments may be implemented within one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, other electronic units designed 20 to perform the functions described herein, or a combination thereof. For firmware or software, the implementation can be carried out through modules of at least one chip set (e.g. procedures, functions, and so on) that perform the functions described herein. The software codes may be stored in a memory unit and executed by processors. The memory unit may be implemented within 25 the processor or externally to the processor. In the latter case, it can be communicatively coupled to the processor via various means, as is known in the art. Additionally, the components of the systems described herein may be rearranged and/or complemented by additional components in order to facilitate the achievements of the various aspects, etc., described with regard 30 thereto, and they are not limited to the precise configurations set forth in the given figures, as will be appreciated by one skilled in the art.
Embodiments as described may also be carried out in the form of a computer process defined by a computer program or portions thereof. Embodiments of the methods described in connection with Figures 1 to 7 and 35 Figure 9 may be carried out by executing at least one portion of a computer program comprising corresponding instructions. The computer program may be in source code form, object code form, or in some intermediate form, and it may be stored in some sort of carrier, which may be any entity or device capable of carrying the program. For example, the computer program may be stored on a computer program distribution medium readable by a computer or 5 a processor. The computer program medium may be, for example but not limited to, a record medium, computer memory, read-only memory, electrical carrier signal, telecommunications signal, and software distribution package, for example. The computer program medium may be a non-transitory medium. Coding of software for carrying out the embodiments as shown and described 10 is well within the scope of a person of ordinary skill in the art.
Even though the invention has been described above with reference to an example according to the accompanying drawings, it is clear that the invention is not restricted thereto but can be modified in several ways within the scope of the appended claims. Therefore, all words and expressions 15 should be interpreted broadly and they are intended to illustrate, not to restrict, the embodiment. It will be obvious to a person skilled in the art that, as technology advances, the inventive concept can be implemented in various ways. Further, it is clear to a person skilled in the art that the described embodiments may, but are not required to, be combined with other 20 embodiments in various ways.

Claims (8)

PatenttivaatimuksetThe claims 1. Menetelmä, joka käsittää sen, että:A method comprising: vastaanotetaan verkkoelementillä (300) yhteysraportteja (308, 310)receiving connection reports (308, 310) by the network element (300) 5 ensimmäiseltä ja toiselta vertaisyksiköltä (110, 120), jolloin yhteysraportit (308, 310) käsittävät tietoa, joka liittyy ainakin yhteen ensimmäisen ja toisen vertaisyksikön (110, 120) väliseen Web-Real-Time kommunikaatio, WebRTC, -istunnon loogiseen yhteyteen;The first and second peer units (110, 120), wherein the connection reports (308, 310) comprise information relating to at least one Web-Real-Time communication, WebRTC, session logical connection between the first and second peer units (110, 120); määritellään ensimmäiseltä vertaisyksiköltä (110) ja toiseltadefined by the first peer unit (110) and the second 10 vertaisyksiköltä (120) vastaanotettujen yhteysraporttien (308, 310) perusteella, että mainittu ainakin yksi looginen yhteys ensimmäisen ja toisen vertaisyksikön (110, 120) välillä on aktiivinen mikäli mainittu ainakin yksi looginen yhteys on auki sekä ensimmäisen vertaisyksikön (110) että toisen vertaisyksikön (120) puolella, ja vähintään jonkin verran kontrolli-informaatiota ja/tai varsinaistaBased on connection reports (308, 310) received from 10 peer units (120), said at least one logical connection between the first and second peer units (110, 120) is active if said at least one logical connection is open to both the first peer unit (110) and the second peer unit (110). 120), and at least some control information and / or actual 15 dataa on säännöllisesti siirretty auki olevaa ainakin yhtä loogista yhteyttä pitkin ensimmäisen ja toisen vertaisyksikön (110, 120) välillä; ja vasteena ensimmäisen ja toisen vertaisyksikön (110, 120) välisen aktiivisen ainakin yhden loogisen yhteyden määrittelylle kasvatetaan mainitulle ainakin yhdelle loogiselle yhteydelle spesifisen ajastimen lukemaa.15 data are routinely transferred along at least one logical link between the first and second peer units (110, 120); and in response to the determination of an active at least one logical connection between the first and second peer units (110, 120), the timer specific for said at least one logical connection is incremented. 2. Patenttivaatimuksen 1 mukainen menetelmä, joka käsittää lisäksi sen, että:The method of claim 1, further comprising: päivitetään, ensimmäiseltä vertaisyksiköltä (110) ja toiselta vertaisyksiköltä (120) vastaanotetun informaation perusteella, sekä loogiselle 25 yhteydelle spesifinen ajastin että loogiselle yhteydelle spesifinen datalaskuri.updating, based on information received from the first peer unit (110) and the second peer unit (120), a timer specific for the logical connection and a data counter specific for the logical connection. 3. Patenttivaatimuksen 1 tai 2 mukainen menetelmä, jossa yhteysraportit käsittävät lisäksi ainakin yhden seuraavista: istunnon tunnisteen, vertaisyksikön tunnisteen, palvelun tunnisteen, sattumanvaraisesti generoidunThe method of claim 1 or 2, wherein the connection reports further comprise at least one of: a session identifier, a peer entity identifier, a service identifier, a randomly generated 30 numeron, yhteysraportin järjestysnumeron, vertaisyksikön IP-osoitteen, loogiseen yhteyteen liittyvän tiedon, joka osoittaa, että ainakin osa mainitusta ainakin yhdestä loogisesta yhteydestä on arkistoitu.30 number, connection report sequence number, peer unit IP address, logical connection related information indicating that at least part of said at least one logical connection has been archived. 4. Patenttivaatimuksen 3 mukainen menetelmä, joka käsittää lisäksiThe method of claim 3, further comprising 35 sen, että:35 that: määritellään toiselta vertaisyksiköltä (120) ja kolmanneltadefined by the second peer unit (120) and the third 20155466 prh 22 -05- 2019 vertaisyksiköltä (910) vastaanotettujen yhteysraporttien perusteella, että toisella ja kolmannella vertaisyksiköllä (120, 910) on sama vertaisyksikön tunniste ja IP-osoite; ja suoritetaan toiminta, joka koskee ainakin yhtä istunnoista, joihin 5 toinen vertaisyksikkö (120) osallistuu ja joihin kolmas vertaisyksikkö (910) osallistuu.20155466 prh 22 -05-20199 based on connection reports received from the peer unit (910) that the second and third peer units (120, 910) have the same peer unit identifier and IP address; and performing an operation for at least one of the sessions in which the second peer unit (120) participates and the third peer unit (910) participates. 5. Jonkin edeltävän patenttivaatimuksen mukainen menetelmä, jossa mainittu ainakin yksi looginen yhteys käsittää ainakin yhden seuraavista:The method of any one of the preceding claims, wherein said at least one logical connection comprises at least one of the following: 10 ääniyhteys, videoyhteys, näytönjakoyhteys, viestiyhteys, yhteisselausyhteys, tiedostonjakoyhteys, anturidatayhteys.10 audio connection, video connection, screen sharing connection, messaging connection, browsing connection, file sharing connection, sensor data connection. 6. Jonkin edeltävän patenttivaatimuksen mukainen menetelmä, jossa mainittu ainakin yksi looginen yhteys käsittää ainakin verkkoelementinThe method of any preceding claim, wherein said at least one logical connection comprises at least a network element 15 (300) ensimmäisen ja toisen vertaisyksikön (110, 120) välillä välittämän loogisen yhteyden tai loogisen vertaisyhteyden ensimmäisen ja toisen vertaisyksikön (110, 120) välillä.15 (300) between the first and second peer units (110, 120) or the logical peer connection between the first and second peer units (110, 120). 7. Jonkin edeltävän patenttivaatimuksen mukainen menetelmä, joka 20 lisäksi käsittää sen, että:The method of any one of the preceding claims, further comprising: vastaanotetaan pyyntö ainakin ensimmäiseltä vertaisyksiköltä (110) tai toiselta vertaisyksiköltä (120), jolloin pyynnössä pyydetään ulkoista laitetta (700) jakamaan tietoa ulkoisen laitteen (700) ja ainakin ensimmäisen vertaisyksikön (110) tai toisen vertaisyksikön (120) välillä;receiving a request from at least the first peer unit (110) or the second peer unit (120), the request asking the external device (700) to share information between the external device (700) and at least the first peer unit (110) or the second peer unit (120); 25 hankitaan tunniste, joka viittaa ensimmäisen ja toisen vertaisyksikön (110, 120) väliseen istuntoon; ja saadaan ainakin ensimmäinen vertaisyksikkö (110) tai toinen vertaisyksikkö (120) osoittamaan tunniste ulkoiselle laitteelle (700), jotta ulkoinen laite (700) kykenee jakamaan tietoa ulkoisen laitteen (700) ja ainakin 30 ensimmäisen vertaisyksikön (110) tai toisen vertaisyksikön (120) välillä.Obtaining an identifier referring to a session between the first and second peer units (110, 120); and causing at least the first peer unit (110) or the second peer unit (120) to assign an identifier to the external device (700) so that the external device (700) is able to share information with the external device (700) and at least 30 first peer units (110) or second peer unit (120) between. 8. Laite, joka käsittää ainakin yhden suorittimen ja ainakin yhden muistin, joka sisältää tietokoneohjelmakoodin, jolloin mainittu ainakin yksi muisti ja tietokoneohjelmakoodi on sovitettu mainitulla ainakin yhdelläA device comprising at least one processor and at least one memory including a computer program code, said at least one memory and a computer program code being adapted to said at least one 35 suorittimella saamaan verkkoelementin (300) suorittamaan toimintoja, jotka käsittävät sen, että:35 processors for causing the network element (300) to perform functions comprising: vastaanotetaan yhteysraportteja ensimmäiseltä ja toiselta vertaisyksiköltä (110, 120), jolloin yhteysraportit käsittävät tietoa, joka liittyy ainakin yhteen ensimmäisen ja toisen vertaisyksikön (110, 120) väliseen WebReal-Time kommunikaatio, WebRTC, -istunnon loogiseen yhteyteen;receiving connection reports from the first and second peer units (110, 120), the connection reports comprising information relating to at least one WebReal-Time communication, WebRTC, session logic between the first and second peer units (110, 120); 5 määritellään ensimmäiseltä vertaisyksiköltä (110) ja toiselta vertaisyksiköltä (120) vastaanotettujen yhteysraporttien perusteella, että mainittu ainakin yksi looginen yhteys ensimmäisen ja toisen vertaisyksikön (110, 120) välillä on aktiivinen mikäli mainittu ainakin yksi looginen yhteys on auki sekä ensimmäisen vertaisyksikön (110) että toisen vertaisyksikön (120) 10 puolella, ja vähintään jonkin verran kontrolli-informaatiota ja/tai varsinaista dataa on säännöllisesti siirretty auki olevaa ainakin yhtä loogista yhteyttä pitkin ensimmäisen ja toisen vertaisyksikön (110, 120) välillä; ja vasteena ensimmäisen ja toisen vertaisyksikön (110, 120) välisen aktiivisen ainakin yhden loogisen yhteyden määrittelylle kasvatetaan mainitulle 15 ainakin yhdelle loogiselle yhteydelle spesifisen ajastimen lukemaa.5, determining from the connection reports received from the first peer unit (110) and the second peer unit (120) that said at least one logical connection between the first and second peer unit (110, 120) is active if said at least one logical connection is open to both the first peer unit (110) and a second peer unit (120) on the side 10, and at least some control information and / or actual data is routinely transferred along at least one logical link between the first and second peer unit (110, 120); and, in response to the determination of an active at least one logical connection between the first and second peer units (110, 120), increments of a timer specific for said at least one logical connection are incremented.
FI20155466A 2015-06-16 2015-06-16 Enhancing monitoring of connections FI128026B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FI20155466A FI128026B (en) 2015-06-16 2015-06-16 Enhancing monitoring of connections
PCT/FI2016/050429 WO2016203110A1 (en) 2015-06-16 2016-06-14 Enhancing monitoring of connections

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FI20155466A FI128026B (en) 2015-06-16 2015-06-16 Enhancing monitoring of connections

Publications (2)

Publication Number Publication Date
FI20155466A FI20155466A (en) 2016-12-17
FI128026B true FI128026B (en) 2019-08-15

Family

ID=57546373

Family Applications (1)

Application Number Title Priority Date Filing Date
FI20155466A FI128026B (en) 2015-06-16 2015-06-16 Enhancing monitoring of connections

Country Status (2)

Country Link
FI (1) FI128026B (en)
WO (1) WO2016203110A1 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6088337A (en) * 1997-10-20 2000-07-11 Motorola, Inc. Method access point device and peripheral for providing space diversity in a time division duplex wireless system
GB2424141B (en) * 2005-03-08 2009-04-22 Praesidium Technologies Ltd Communication system with distributed risk management
US20080151834A1 (en) * 2006-12-20 2008-06-26 Motorola, Inc. Method and apparatus for maintaining traffic flow in a mesh network
US9614890B2 (en) * 2013-07-31 2017-04-04 Avaya Inc. Acquiring and correlating web real-time communications (WEBRTC) interactive flow characteristics, and related methods, systems, and computer-readable media

Also Published As

Publication number Publication date
FI20155466A (en) 2016-12-17
WO2016203110A1 (en) 2016-12-22

Similar Documents

Publication Publication Date Title
US11122027B2 (en) End-to-end M2M service layer sessions
EP3731543B1 (en) Internet of things end-to-end service layer quality of service management
EP3222069B1 (en) Method and device for sharing enriched information associated with a call
US20190075149A1 (en) Mechanisms to support adaptive constrained application protocol (coap) streaming for internet of things (iot) systems
US9565218B2 (en) Resource management for WebRTC
CN106575343B (en) Communication operation is triggered based on the relationship between neighbouring client device determined by client
US10999289B2 (en) System and methods for achieving end-to-end security for hop-by-hop services
WO2013033259A2 (en) Systems and methods for a video sharing social network
US9509778B2 (en) SIP-based method, apparatus and system for secure communication between MTC devices
US20170347390A1 (en) Method and apparatus for providing session-based web service
US10575355B2 (en) API for web access directly or through intermediary
EP3059945A1 (en) Method and system for video surveillance content adaptation, and central server and device
EP3114821B1 (en) Method and devices for establishing a connection between a seeker device and a target device
WO2016179966A1 (en) Method for realizing network access, terminal and computer storage medium
EP3273683A1 (en) Information processing device, screen switching method, program, and transmission system
KR20150043533A (en) Web-based over-the-air provisioning and activation of mobile terminals
WO2014015525A1 (en) Method and device for querying for user online state
FI128026B (en) Enhancing monitoring of connections
CN115696309A (en) Communication method and device
WO2015117444A1 (en) Method and device for processing data card
WO2023160076A1 (en) Information interaction method and apparatus, computer device, storage medium and program product
Chen et al. A resource-aware pairing device framework for ubiquitous cloud applications
EP3598842B1 (en) Network sharing
CN115580600A (en) Media data transmission control method, device and storage medium
CN115102918A (en) Message synchronization method, device and system, related equipment and storage medium

Legal Events

Date Code Title Description
FG Patent granted

Ref document number: 128026

Country of ref document: FI

Kind code of ref document: B