WO2018002469A1 - Method and device for managing a session for transmitting a video stream - Google Patents

Method and device for managing a session for transmitting a video stream Download PDF

Info

Publication number
WO2018002469A1
WO2018002469A1 PCT/FR2017/051558 FR2017051558W WO2018002469A1 WO 2018002469 A1 WO2018002469 A1 WO 2018002469A1 FR 2017051558 W FR2017051558 W FR 2017051558W WO 2018002469 A1 WO2018002469 A1 WO 2018002469A1
Authority
WO
WIPO (PCT)
Prior art keywords
session
terminal
video stream
transmission
network
Prior art date
Application number
PCT/FR2017/051558
Other languages
French (fr)
Inventor
Gaël FROMENTOUX
Frédéric FIEAU
Original Assignee
Orange
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 Orange filed Critical Orange
Publication of WO2018002469A1 publication Critical patent/WO2018002469A1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64746Control signals issued by the network directed to the server or the client
    • H04N21/64761Control signals issued by the network directed to the server or the client directed to the server
    • H04N21/64769Control signals issued by the network directed to the server or the client directed to the server for rate control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64784Data processing by the network

Definitions

  • the invention relates to the general field of telecommunications.
  • It relates more particularly to the transmission of video streams between a content server and a terminal in a telecommunications network.
  • An axis of improvement of this quality of service (or experience perceived by the customers) targeted specifically by the content providers consists in particular in reducing the latency observed between the service request made by a client to a server. content to access a video stream and the viewing by this client of the first images of the video stream.
  • the constraint imposed by the content providers is that the client does not wait too long to start watching the video stream he has requested, otherwise he will become demotivated and abandon his communication session with the content server.
  • No limitation is attached to the nature of the service accessed by the customer to view the stream: it can be indifferently a video-on-demand service, web browsing, streaming real-time streaming etc.
  • a mobile telecommunications network such as for example a cellular network (for example the 4G network - Fourth Generation) or a WiFi network (WIreless FIdelity), whose the transmission conditions can fluctuate according to various parameters (environment, mobility, cell load, etc.).
  • a mobile telecommunications network such as for example a cellular network (for example the 4G network - Fourth Generation) or a WiFi network (WIreless FIdelity), whose the transmission conditions can fluctuate according to various parameters (environment, mobility, cell load, etc.).
  • the invention makes it possible in particular to respond to this problem by proposing a method of managing a transmission session of a video stream between a content server and a terminal via a telecommunications network, this management method comprising, following a detection of a session start:
  • the invention also relates to a device for managing a transmission session of a video stream between a content server and a terminal via a telecommunications network, this management device comprising:
  • a first obtaining module activated on detection of a start of the session by the detection module and configured to obtain information representative of transmission conditions of the video stream experienced during the session on the network;
  • Modules activated if said transmission conditions are not considered favorable by the first obtaining module comprising:
  • a second obtaining module configured to obtain a current state of a buffer used by a rendering module of the terminal for the rendering of the video stream and representative of a filling level of the buffer
  • a selection module configured to select at least one prioritization policy to be applied to the transmission of the video stream to the terminal as long as the transmission session is in a start-up period with regard to a predetermined criterion and the level filling of the buffer is less than a predetermined filling threshold.
  • the modules of the management device can be located for example in a PoP (Point of Presence) access point to the network of the operator.
  • PoP Point of Presence
  • the invention proposes to temporarily prioritize the data relating to this video stream when the video transmission session is experimenting with unfavorable transmission conditions on a video stream.
  • the network for example a too large load on the cell to which the terminal is attached for a cellular network, or a bad radio reception due for example to a bad positioning of the terminal in the cell
  • the network is therefore likely to be affected by a high latency.
  • prioritizing here is meant to give preferential importance to these data, in other words to promote their transmission to the terminal with respect to the data of other video streams.
  • This temporary prioritization is applied as long as the transmission session is in a start-up period and as long as a buffer used by a rendering module (also commonly referred to as "player") of the terminal during the playback of the video stream. reached a satisfactory fill level to ensure a restitution of the video stream to the user of the terminal.
  • the inventors have indeed connected the state of this buffer to the latency experienced by the terminal at the beginning of the video session: if the terminal has gathered enough data concerning the video stream in this buffer (in other words, if the filling level of this buffer is greater than a given filling level), we can expect a fast and correct visualization of the flow by the user on his terminal, so there is no need to intervene.
  • the invention proposes to remedy this situation, which can be unacceptable for the user of the terminal by prioritizing the data of the flow. video intended for the terminal. In this way, it is anticipated that the user may have difficulty in accessing the content of the video stream that he has requested.
  • the conditions for stopping the prioritization advantageously make it possible to focus on the start of the session and on the real needs of the user of the terminal.
  • the video stream transmission session is considered to be in a start period if a period of time since the start of the transmission session is less than a predetermined maximum period or if a quantity of data related to the video stream issued by the content server is less than a predetermined maximum quantity.
  • the invention makes it possible to give priority to certain video streams without disrupting the simultaneous transmission of other video streams on the network to other users.
  • the prioritization proposed by the invention is indeed not intended to last longer than necessary or to apply when the transmission conditions experienced by the terminal do not justify it (eg favorable radio propagation conditions and / or buffer used by the playback module (player) sufficiently filled to allow access to the fast video stream by the user).
  • the invention makes it possible to improve the experience perceived by the user and to avoid the abandonment of sessions lamented to the users in case of slow start restitution.
  • the current state of the buffer is obtained from a signaling message sent by the terminal in a signaling session established with the content server for the transmission session of the video stream.
  • the signaling message and the signaling session are for example in accordance with the protocol SPUD (Session Protocol for User Datagrams).
  • SPUD Session Protocol for User Datagrams
  • the SPUD protocol is only an example and it is possible to use other cooperation protocols between end devices (content servers, user terminals) and intermediate equipment able to modify or inspect the data traffic. (eg DPI).
  • the SPUD protocol is a protocol currently being standardized by the IETF (Internet Engineering Task Force, documents “draft-trammell-spud-req-04" and “draft-hildebrand-spud-prototype-03"), implementing collaboration among Internet players, including telecommunication network operators and content providers.
  • This protocol is intended to broadcast messages, also called “advices", carrying recommendations related to both the services and the network.
  • end devices eg client terminals or content servers here
  • Such intermediate equipment is here for example the management device according to the invention.
  • signaling sessions are established outside the transmission sessions to which they are attached (ie they are separate sessions), once the transmission sessions have been established between the protagonists (ie terminal and content server).
  • the invention therefore takes advantage, in this embodiment, of the existence of this protocol and its many possibilities for conveying to the device for managing information on the terminal and more particularly on the state of the buffer used by the device. player of the terminal for the restitution of the video stream.
  • the management device is here an intermediate equipment between the terminal and the content server, but thanks to the SPUD protocol, can access various information conveyed between the terminal and the content server, even if the content server is not under the control of the network operator.
  • the invention therefore takes advantage of the developments proposed today for web applications to obtain various information to optimize the start of a video stream transmission session and promote communications between applications and network.
  • the protocol SPUD in its current version as specified by I1ETF, does not include options for reassembling information from the terminal to the content server relating to a physical state of the terminal, such as for example the level of filling of the buffer used by the player of the terminal for the restitution of the flow.
  • the invention therefore proposes to enrich the current signaling proposed by the SPUD protocol with new options making it possible to optimize the provision of video content, this protocol being particularly suitable for the implementation of the invention.
  • the invention is however not limited to the use of the SPUD protocol for conveying information from the terminal to the management device.
  • Other protocols such as the HyperText Transfer Protocol (http), can be used alternatively.
  • the detection of the start of the video transmission session includes a detection of the establishment of the signaling session between the terminal and the content server.
  • the establishment of the signaling session is easily detectable and makes it easy to identify that a video transmission session is started.
  • the method further comprises a preliminary step of determining whether or not the session of transmission of the video stream is a session. so-called collaborative, a prioritization policy being applied to the transmission of the video stream only if the transmission session is a collaborative session.
  • collaboration session depends on a predetermined criterion: it can be for example sessions associated with content providers with which the network operator has agreements, or sessions attached to specific terminals (ex. user terminals with a particular status in the network), to particular users (eg particular identities and / or subscriptions), to a particular domain / subdomain, to particular identifiers (eg IP address), etc. and for which the management device according to the invention preferentially has access to all or part of the signaling exchanged in the signaling session.
  • IP address of the server conveyed in the signaling transmitted by the terminal can be used and confronted with IP addresses attached to servers of content providers with whom a collaboration has been established.
  • the steps of obtaining a current state of the buffer and the step of selecting at least one prioritization policy are conditioned by the detection of a valid token in a signaling message sent by the terminal.
  • Such token may for example include an identifier, possibly encrypted. It can be used to easily identify collaborative sessions for example.
  • said at least one prioritization policy is selected from at least:
  • the first two aforementioned policies to delete data relating to video streams exchanged in the context of sessions not intended for the terminal make it possible to efficiently use the data of the transmission session of the terminal.
  • the transmission sessions whose data are deleted are, for example, the sessions identified as non-collaborative.
  • the first two policies thus promote sessions of video stream transmission from servers with which collaborations with the network operator have been established or to terminals preferred by the operator.
  • the deletion of data to be transmitted has an immediate effect on the allocation of resources for the terminal whose flow is sought to be favored, which becomes more favorable. , thereby improving the conditions of transmission of the video stream to the terminal.
  • the second data deletion policy advantageously takes into account the latency of the sessions in addition to the collaborative or non-collaborative nature of the session. Indeed, the inventors have found that when this latency is too important, it is useless to transmit the data to the terminal having requested them, because it is not able to receive them. This second deletion policy therefore limits the impact of this policy on other users.
  • the third prioritization policy proposed above is particularly effective and makes it possible not to saturate the link between the terminal and the content server, particularly in the case where several transmission sessions are prioritized simultaneously according to the invention.
  • said at least one selected prioritization policy is notified in a signaling message sent in the signaling session established with the content server, this signaling message requesting the application of said at least one policy of prioritization selected by at least one intermediate device between the server and the terminal through which the video stream passes.
  • the signaling session used to notify said at least one prioritization policy to the equipment participating in the transmission of the video stream is a session compliant with the SPUD protocol and the signaling message used is a "advice" provided by this protocol. .
  • the implementation of the invention is thus greatly facilitated.
  • the invention proposes to use existing signaling sessions to convey in the network and the various intermediate devices involved in the transmission of the flow between the content server and the terminal of the application information, but these same signaling sessions are also used to notify the prioritization policy selected by the management system and to enforce it.
  • the signaling session thus established on the sidelines of the transmission session makes it possible for the management device to easily obtain information from the terminal and to easily transmit the decisions taken concerning the prioritization of the data relating to the flow.
  • This is the case, for example, when the equipment (or equipment) strictly applying the prioritization policy selected to the video stream is an intermediate server placed upstream of the access of the terminal to the network or is not under direct control of the network operator.
  • This server may be for example a delivery server or streamer attached to a content distribution network operating on behalf of the content provider or acting as a content provider.
  • the management method according to the invention comprises a step of updating said at least one prioritization policy during the start period of the transmission session as a function of the current state of the buffer and / or current transmission conditions of the video stream experienced during the session on the network.
  • Such an update may be related to different factors.
  • the transmission conditions experienced on the network by the video session may have evolved and made inappropriate the selected prioritization policy.
  • the state of the buffer may not change as desired and require the adoption of another prioritization policy, etc.
  • the management device according to the invention can be configured to obtain periodically or at predetermined times the information concerning the conditions of transmission of the session and / or the state of the buffer so that it can intervene quickly and adapt its prioritization policy effectively. . Note that this update is performed according to the invention only if one is still in the start period of the session.
  • the method comprises:
  • At least one step of obtaining information representative of transmission conditions of the video stream experienced during the session on the network at least one step of obtaining information representative of transmission conditions of the video stream experienced during the session on the network
  • the updating of said at least one prioritization policy may also consist of a cessation of the prioritization if it no longer proves necessary. In this way, the impact on the other transmission sessions established on the network of the prioritization of the data of the video stream intended for the terminal is limited.
  • the various steps of the management method are determined by instructions of computer programs.
  • the invention also relates to a computer program on an information medium, this program being capable of being implemented in a management device or more generally in a computer, this program comprising instructions adapted to the implementation of the steps of a management method as described above.
  • This program can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other form desirable shape.
  • the invention also relates to a computer readable information or recording medium, and comprising instructions of a computer program as mentioned above.
  • the information or recording medium may be any entity or device capable of storing the program.
  • the medium may comprise storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or a magnetic recording medium, for example a floppy disk or a disk. hard.
  • the information or recording medium may be a transmissible medium such as an electrical or optical signal, which may be conveyed via an electrical or optical cable, by radio or by other means.
  • the program according to the invention can be downloaded in particular on an Internet type network.
  • the information or recording medium may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
  • the invention also relates to a communication system comprising:
  • At least one terminal At least one terminal
  • At least one content server capable of supplying a video stream to said terminal during a transmission session established with the terminal;
  • a device for managing this transmission session according to the invention.
  • management device and the intermediate equipment may be, in a particular embodiment, co-located on the same equipment.
  • FIG. 1 schematically represents a communication system according to the invention, in a particular embodiment, this system comprising a device for managing video flow transmission sessions according to the invention;
  • FIG. 1 shows schematically the hardware architecture of the management device of Figure 1;
  • FIG. 3 represents, in the form of a flow chart, the main steps of a method of managing a transmission session of a video stream according to the invention.
  • FIG. 4 represents, in the form of a diagram, the signaling messages exchanged during the implementation of the invention.
  • FIG. 1 presents, in its environment, a communication system 1 according to the invention, in a particular embodiment.
  • the communication system 1 comprises: a terminal 2 of a user U; and
  • One or more content servers 3 capable of supplying video streams, in particular to the terminal 2. These video streams may be provided by the content servers 3 in the context of various services, such as for example a web browsing service, a service video on demand, a streaming service, etc.
  • the terminal 2 is a mobile terminal able to communicate on a mobile cellular telecommunications network AN (access network) such as for example a 4G network and on which the user U can visualize video streams transmitted via the mobile network AN.
  • the mobile terminal 2 is equipped for this purpose with a screen 2A and a video rendering module 2B (or video player) comprising a buffer 2C making it possible to collect data relating to the video stream with a view to their continuous rendering on the screen 2A of the terminal 2.
  • the mobile telecommunications network AN comprises, in known manner, one or more base stations for covering the different cells of the network. It is assumed that the mobile terminal 2 is attached to the base station 4.
  • the mobile network AN is connected here to an IP core network CN via a convergent gateway (gateway operator) or CGW (for Convergent GateWay) 5.
  • a gateway CGW 5 advantageously allows to connect several fixed access networks , WIFI and mobile at the same core IP network. It lies between the mobile network AN and the core network CN, and is located here in an access point 6 at the heart of CN network more commonly referred to as PoP for "Point of Presence".
  • PoP Point of Presence
  • the PoP 6 further comprises a delivery server 7 or streamer capable of delivering the video contents hosted by the content servers 3.
  • This delivery server 7 is strictly speaking a cache with a storage buffer of the data it receives, known per se.
  • the core network CN is connected here to the public Internet network in which the content servers 3 are located.
  • the video streams transit between the content servers 3 and the terminal 2 by routers, including a router R, represented in the network CN for example in Figure 1.
  • the content servers 3 are controlled by an operator separate from the operator of the access network AN and CN core network.
  • a content server 3 may very well be in another PoP of the operator of the CN network, following specific agreements with the content provider. In this case the video streams do not need to pass through the public Internet network.
  • a single network or a network made up of several (sub) networks by which the connections established between the terminal 2 and the content servers are transmitted by the telecommunications network is indifferently denoted by 3 in the Internet.
  • the telecommunications network within the meaning of the invention thus comprises the access network AN, the core network CN and the Internet network.
  • no limitation is attached to the composition of this network.
  • Latency refers to the time elapsing between the moment when the customer chooses a video stream and activates its download on the content server and the moment when the video stream restitution actually starts on the client terminal.
  • the communication system 1 comprises a video stream transmission session management device according to the invention.
  • the management device according to the invention is integrated in the convergence gateway 5, at the level of the PoP 6.
  • the management device is therefore also referenced by 5, as the convergence gateway.
  • the management device 5 has the hardware architecture of a computer, as shown in FIG. 2.
  • a processor 8 it comprises in particular a processor 8, a random access memory 9, a read-only memory 10, a non-volatile flash memory 11 as well as communication means 12 enabling it to communicate in particular with the terminal 2 on the mobile telecommunications network AN and with CN network core equipment and the Internet, as for example with the content servers 3.
  • communication means 12 Such means are known per se and are not described more in detail here. It should be noted here that these communication means also implement the SPUD protocol, as described in more detail later.
  • the ROM 10 of the management device 5 constitutes a recording medium according to the invention, readable by the processor 8 and on which is recorded here a computer program PROG according to the invention.
  • the computer program PROG defines functional and software modules here configured to implement the steps of the method of managing video streaming sessions according to the invention. These functional modules rely on and / or control the hardware elements 8-12 of the management device 5 mentioned above. They include in particular here, as illustrated in FIG.
  • a detection module 5A for starting a transmission session of a video stream between a content server 3 of the Internet network and a terminal, such as the terminal 2;
  • a first obtaining module 5B activated on detection of a start of a transmission session of a video stream by the detection module 4A and configured to obtain information representative of transmission conditions of the video stream experienced during the the session on the network separating the terminal 2 from the content server 3 providing the video stream;
  • Modules activated if said transmission conditions are not considered favorable by the first obtaining module 5B these modules comprising:
  • a second obtaining module 5C configured to obtain a current state of the buffer 2C of the video player 2B used by the terminal 2 for the reproduction of the video stream and representative of a filling level of the buffer;
  • a selection module 5D configured to select a prioritization policy to be applied to the transmission of the video stream to the terminal 2 as long as certain conditions are respected. These conditions are, according to the invention, that the transmission session is in a starting period with regard to a predetermined criterion detailed later and that the filling level of the buffer
  • THR1 a predetermined filling threshold
  • FIG. 3 represents the main steps of the method of managing a transmission session of a video stream according to the invention, such that they are implemented, in a particular embodiment, by the device 5 of management of Figure 1 for managing a transmission session of a video stream required by the terminal 2 from one of the video content servers 3 located in the Internet.
  • This management carried out by the management system 5 is based on on different signaling messages exchanged between the different entities (terminal 2, content server 3, management device 5), further represented in the form of a diagram in FIG. 4.
  • 3-1 denotes the content server from which the terminal 2 requests the obtaining of a video stream, for example via a web portal here.
  • This transmission of video streams between the content server 3-1 and the terminal 2 is framed by a https VIDEO_S transmission session established in a manner known per se between the content server 3-1 and the terminal 2 (step E10 in the figure 4).
  • the video stream transmitted in this session passes via different network equipment, and in particular via the PoP 6.
  • VIDEO_S a signaling session according to the SPUD protocol is established between the terminal 2 and the content server 3-1.
  • Content server 3-1 responds to this initialization message via a SPUD ACK message (step E30).
  • This session is designated by SPUD_S.
  • the signaling session SPUD_S is established in the margin (i.e. in addition) of the transmission session VIDEO_S (it is a separate session of the video session). It allows the exchange of application and network data between the terminal 2 and the content server 3-1. Furthermore, advantageously, the SPUD protocol offers the possibility to intermediate equipment of the network to intercept the messages exchanged in this signaling session SPUD and to access the information that it conveys (when these are not not protected). This is the case in particular for the PoP 6 through which the VIDEO_S transmission session and the associated signaling session SPUD are transmitted, and more particularly for the management device 5 embedded in this PoP 6.
  • the management device 5 thus detects, via its detection module 5A, the start of the transmission session VIDEO_S by detecting the initialization of the signaling session SPUD_S, that is to say say the SPUD OPEN message (step F10).
  • the detection module 5A associates a time T1 with the detection of the SPUD OPEN initialization message SPUD_S and a time T2 with the detection of the SPUD ACK acknowledgment message sent by the server 3-1. .
  • the difference between T2 and T1 allows the detection module 5A to have a more accurate estimate of the beginning of the transmission session.
  • the beginning of the transmission session can be detected by analyzing the requests and packets from the IP address of the server 3-1.
  • collaboration is meant here that an agreement has been established previously between the network operator carrying the transmission sessions and the operator of the content servers 3 for managing the sessions conveying the video streams proposed by the content servers 3 according to the invention. It is assumed here that this agreement allows the management device 5 to be able to access and analyze at least a part of the information conveyed in the SPUD sessions associated with the transmission sessions of the video streams to implement the invention. Similarly, such a service may be offered to users of terminals that may access the content offered by the servers 3. In the embodiment described here, a list COLLABJ.
  • identifying all the content servers eg via their Internet Protocol (IP) address or other identifier
  • IP Internet Protocol
  • This list COLLABJ. therefore groups all the information needed to distinguish collaborative transmission sessions from sessions that are not.
  • the management device 5 thus analyzes, via here its detection module 5A, the transmission session VIDEO_S and determines whether this session VIDEO_S is a collaborative session or not (test step F20). For this purpose, the detection module 5A extracts certain parameters of the VIDEO_S session such as the IP address of the content server 3-1. Then it compares this IP address to the content server identifiers present in the list COLLAB_L. It is assumed here that the content server 3-1 is identified in the list COLLABJ. (yes answer to test step F20). The detection module 5A concludes that the VIDEO_S session is collaborative.
  • certain parameters of the VIDEO_S session such as the IP address of the content server 3-1. Then it compares this IP address to the content server identifiers present in the list COLLAB_L. It is assumed here that the content server 3-1 is identified in the list COLLABJ.
  • step F40 If the module 5A determines that the session SPUD_S is non-collaborative (answer no to the test step E20), then the management method stops (step F40).
  • the module 5A determines whether a valid token (or "token") is present in the SPUD OPEN initialization message of the SPUD session sent to step F20 (test step F30). Detection of this token is used to validate that the VIDEOJ5 transmission session is collaborative.
  • a valid token or "token”
  • Such token can be encrypted or not.
  • the detection of a valid token conditions the management of the transmission session VIDEOJ5 associated with the session SPUDJ5 according to the invention. In other words, if such a valid token is not present in the session SPUD_S (answer no to step F30), the management method according to the invention is not implemented (step F40).
  • the module 5A detects the presence of a valid token in the SPUD OPEN signaling message sent to step F20 (yes response to step F30). He deduces that the VIDEOJ5 transmission session is collaborative, in other words that the data associated with the video stream of this session will be managed and possibly prioritized according to the invention. This detection triggers the application of the steps of the management method according to the invention to the transmission session VIDEO_S-
  • AN step F50.
  • This information is obtained for example here via the technical solution MTG (Mobile Thoughput Guidance), standardized by the IETF and which allows a cellular network to report in almost real time information on the transmission conditions of the video stream.
  • This information includes in particular here information sent by the base station 4 on the cell to which the terminal 2 is attached (eg cell identifier or "cell-id"), the location of the terminal 2, the load of the cell, and an indication of bit rate (or bandwidth) experienced by the terminal 2.
  • the access network is not a cellular network but for example a WIFI network
  • other known techniques can be envisaged to access this information.
  • the information obtained by the first obtaining module 5B is then analyzed by it to determine if the transmission conditions enjoyed by the VIDEO_S transmission session are favorable (test step F60).
  • favorable is meant here that the conditions experienced by the session are good enough to allow the terminal 2 to access the video stream without excessive latency. This is determined here by the first obtaining module 5B by comparing the load of the cell to which the terminal 2 is attached with respect to a predetermined threshold THR2. This threshold can be determined experimentally.
  • the obtaining module 5B compares the number of active connections on the WIFI access point considered with respect to a maximum number of connections.
  • the first obtaining module 5B can take into account by the first obtaining module 5B to determine whether the transmission conditions are favorable or not, such as the speed experienced by the terminal 2, or the identifier of the cell, etc.
  • step F60 If the conditions are favorable (yes response to the test step F60), no treatment is applied by the management device 5 and the process is completed (step F40).
  • a timer TEMP is armed by the first obtaining module 5B for a predetermined duration T (step F70).
  • step F80 by activating the second obtaining module 5C and the selection module 5D.
  • the second obtaining module 5C first obtains a current state STATE of the buffer 2C of the player 2B of the terminal 2 for the reproduction of the video stream (step F90).
  • This current state is representative here of a filling level of the buffer 2C with data relating to the video stream.
  • This state is obtained here by the second obtaining module 5C via a signaling message sent by the terminal 2 to the content server 3-1 in the signaling session SPUD_S (step E50 of FIG. 4), message to which the content server 3-1 responds via a SPUD ACK message (step E60 of FIG. 4).
  • the management device 5 Since the session SPUD_S is a collaborative session transiting via the PoP 6, the management device 5, and in particular its second obtaining module 5C, can access the session SPUD_S, analyze it and obtain the current state of the buffer 2C used. by the terminal 2. It is assumed here that the terminal 2 is configured to periodically transmit the state of its buffer 2C in a signaling message on the session SPUD_S-
  • other information in addition to the state of the buffer can be obtained by the second obtaining module 5B from the signaling messages exchanged in the signaling session SPUD_S, such as, for example, a type of terminal to which belongs the terminal 2, a type of service to which the terminal 2 accesses, etc.
  • the state STATE of the buffer 2C (filling level) of the player 2B of the terminal 2 is then compared by the obtaining module with the predetermined filling threshold THR1 (test step F100).
  • This threshold is chosen preferentially so as to ensure that the data relating to the video stream stored in the buffer 2C of the player 2B of the terminal 2 are in sufficient quantity to start the viewing of the video stream by the user of the terminal.
  • filling level is meant here either a relative value (eg a percentage of filling the buffer as soon as its size is known), or an absolute value (eg amount of data stored in the buffer or restitution time the available stream in the buffer expressed in seconds).
  • the filling threshold THR1 depends, of course, on the capacity of the terminal 2 and the quality of the video received; it can, as an indication, vary from a few seconds (eg 20s) to several minutes.
  • the module 5D of selection selects a data prioritization policy for the video stream transmitted in the VIDEO_S session (step Fl 10).
  • step F40 If any of the above two conditions are not met (ie the STATE fill level is greater than the THR1 threshold and / or the TEMP timer has expired, ie the VIDEO_S transmission session is no longer in a start period) (answer no to the test step F100), the management method is completed (step F40).
  • the selection module 5D selects as policy prioritization policy POLI which consists of removing the data relating to video streams of non-collaborative transmission sessions of terminals belonging to the same cell as the terminal 2.
  • the POLI prioritization policy selected by the selection module 5D is then notified by the management device 5 in a signaling message MESS (POLl) sent in the signaling session SPUD_S to an R router on the route between the terminal 2 and the content server 3-1 (step F120, steps E70 and E80 of FIG. 3).
  • This message SPUD MESS (POLl) is for example an SPUD "advice” which requires the application of the POLI prioritization policy. More particularly here, it requires the deletion of the data relating to the video streams of the non-collaborative transmission sessions of the terminals belonging to the same cell as the terminal 2.
  • This POLI policy is intended to be applied by at least one router R of the Internet network and / or the core network CN through which the video stream transmission sessions, and in particular the non-collaborative transmission sessions, pass.
  • the selection module 5D selects as a prioritization policy a policy POL2 which consists in deleting the data relating to the video streams of the non-collaborative transmission sessions of the terminals belonging to the same cell as the terminal 2 and which present a latency greater than a predetermined latency threshold TH3.
  • This policy POL2 is intended to be applied also by the routers of the Internet network and / or the CN core network through which the video stream transmission sessions, and in particular the non-collaborative transmission sessions, pass in a manner similar to POLI policy.
  • the selection module 5D selects as policy prioritization policy POL3 which consists of adapting the speed of sending data to the terminal as a function of the filling level of the buffer of the terminal and the flow rate experienced by this one.
  • This policy POL3 also includes here a redirection of the transmission session VIDEO_S to the streamer 7, so that the video stream for the terminal 2 passes through the streamer 7 (the streamer 7 is thus an intermediate device in the sense of the invention).
  • This redirection of the transmission session VIDEO_S to the streamer 7 is implemented by the server 3-1, which thus applies the policy POL3 selected by the management device 5 and notified in the session SPUD_S between the terminal 2 and the server 3 -1.
  • this redirection can be done by a router; in this case the POL3 policy is notified in the session SPUD_S between the terminal 2 and a router R, similarly to POLI or POL2 policies.
  • the streamer 7 stores the data relating to the video stream (ie it acts as a cache) and in application of the POL3 policy, modulates the speed of the video stream. sending the data stored in the terminal 2 in order to reduce the latency experienced by the user of the terminal 2. More particularly, it modulates the speed of sending the data to the terminal 2 as a function here of the current level of filling of its buffer (the streamer buffer 7) and the network throughput experienced by the terminal 2. This information is assumed here available in the MTG information reported in step F50.
  • the speed of sending the data is modulated here by the streamer 7 by organizing the data in the form of bursts which are sent to the terminal 2 during the start-up period T.
  • the size of the bursts is chosen so as to be consistent with the rate of the terminal 2 (ie the bandwidth it has). More precisely, the streamer 7 here chooses as burst size B, a function of the bandwidth available to the terminal 2, the size of the buffer of the streamer 7 and the average size of a packet of the video stream.
  • the selection module 5D may select as a prioritization policy a combination of at least two policies selected from the POLI, POL2 and POL3 prioritization policies or other prioritization policies that may be contemplated.
  • the selection module 5D can select as the prioritization policy the combination formed of POLI policy (removal of video stream packets of non-collaborative sessions), and POL3 (redirection of the transmission session from terminal 2 to streamer 7 and modulation of the speed of sending the packets to the terminal 2 as a function of the bit rate available to the terminal 2).
  • a single prioritization policy can be set by default at the 5D selection module or alternatively, several policies can be defined and one of them selected according to various factors such as network load access (load of the cell to which the terminal 2 is attached), the nature of the session, or several policies can be defined and prioritized and then selected according to the order thus established.
  • a monitoring is maintained by the management device 5 to detect whether the criteria conditioning the application of the prioritization of the data relating to the video stream of the terminal 2 are still respected (F130 test step).
  • criteria here include checking that the transmission session VIDEO_S is still in a start period (timer not expired) and that the filling level of the buffer is below the filling threshold THR1. They may also include checking that the conditions of transmission of the video stream experienced by the VIDEO_S session on the network are still unfavorable.
  • step F40 If any of these criteria is no longer met (answer no to the test step F130), the prioritization is interrupted (step F40).
  • the prioritization is maintained (step F140).
  • the selection module 5D determines whether an update of the prioritization policy is necessary, for example as a function of the current state of the buffer and / or of the current transmission conditions of the video stream. experienced during the session on the network.
  • the current information on the state of the buffer and on the conditions of transmission can be obtained via the signaling session SPUD_S and the MTG information reassembled periodically or in real time by the base station 4, as indicated previously (steps E90, E100 and E110 of Figure 4).
  • the selection module 5D can select a new Prioritization policy, such as, for example, the POL2 or POL3 policy or a combination of POLI, POL2 and / or POL3 policies in a pre-established order (step F140).
  • a new Prioritization policy such as, for example, the POL2 or POL3 policy or a combination of POLI, POL2 and / or POL3 policies in a pre-established order (step F140).
  • the prioritization is interrupted (step F40).
  • the management device 5 notifies this interruption in an SPUD MESS signaling message (STOP POLI) sent in the session SPUD_S (step E120 of FIG. 3).
  • STOP POLI SPUD MESS signaling message
  • This message is for example a SPUD "advice” requiring the interruption of the application of the POLI policy (or of the current prioritization policy if it has been updated during step F140).
  • the invention thus proposes a technique (and an architecture supporting this technique) of prioritizing the data relating to a video stream transmitted to a terminal in a video session during the start-up period of the session in order to reduce the perceived latency. by the user of the terminal.
  • a duration T associated with that period has been considered and a timer has been armed for that period.
  • the start period may be identified based on a quantity of data (eg, number of data packets) relating to the video stream transmitted by the content server and compared to a predetermined maximum amount.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The method according to the invention for managing a session for transmitting a video stream between a content server and a terminal via a telecommunications network comprises, following the detection (F10) of the start of the session: - a step (F50) of obtaining information representing conditions for transmitting the video stream that are experienced on the network during the session; and - if said transmission conditions are not considered to be favourable (F60): o a step (F90) of obtaining a current state of a buffer used by a reproduction module of the terminal for reproducing the video stream and representing a filling level of the buffer; and o a step (F110) of selecting at least one prioritisation policy to be applied to the transmission of the video stream to the terminal so that the transmission session is located within a start period in respect of a predetermined criterion and so that the filling level of the buffer is below a predetermined filling threshold.

Description

Procédé et dispositif de gestion d'une session de transmission d'un flux vidéo  Method and device for managing a transmission session of a video stream
Arrière-plan de l'invention Background of the invention
L'invention se rapporte au domaine général des télécommunications.  The invention relates to the general field of telecommunications.
Elle concerne plus particulièrement la transmission de flux vidéo entre un serveur de contenus et un terminal dans un réseau de télécommunications.  It relates more particularly to the transmission of video streams between a content server and a terminal in a telecommunications network.
Les opérateurs des réseaux de télécommunications et les fournisseurs de contenus, en particulier vidéo, collaborent aujourd'hui de plus en plus afin de mieux faire correspondre les besoins des applications utilisant ces contenus et les capacités des réseaux. Il s'agit notamment d'optimiser la livraison des contenus au travers des réseaux afin d'améliorer ainsi la qualité de service perçue par les clients des fournisseurs de contenus.  Operators of telecommunications networks and content providers, especially video, are now collaborating more and more in order to better match the needs of applications using this content with network capabilities. This includes optimizing delivery of content across networks to improve the quality of service perceived by content provider customers.
Un axe d'amélioration de cette qualité de service (ou d'expérience perçue par les clients) visé spécifiquement par les fournisseurs de contenus consiste notamment en la diminution de la latence constatée entre la demande de service faite par un client auprès d'un serveur de contenus pour accéder à un flux vidéo et le visionnage par ce client des premières images du flux vidéo. La contrainte imposée par les fournisseurs de contenus est que le client n'attende pas trop longtemps le début du visionnage du flux vidéo qu'il a demandé sous peine de se démotiver et d'abandonner sa session de communication avec le serveur de contenus. Aucune limitation n'est attachée à la nature du service auquel accède le client pour visionner le flux : il peut s'agir indifféremment d'un service de vidéo à la demande, de navigation web, de diffusion en temps réel de type « streaming », etc.  An axis of improvement of this quality of service (or experience perceived by the customers) targeted specifically by the content providers consists in particular in reducing the latency observed between the service request made by a client to a server. content to access a video stream and the viewing by this client of the first images of the video stream. The constraint imposed by the content providers is that the client does not wait too long to start watching the video stream he has requested, otherwise he will become demotivated and abandon his communication session with the content server. No limitation is attached to the nature of the service accessed by the customer to view the stream: it can be indifferently a video-on-demand service, web browsing, streaming real-time streaming etc.
Cette contrainte est d'autant plus critique lorsque le client accède au serveur de contenus via un réseau de télécommunications mobile, tel que par exemple un réseau cellulaire (par exemple le réseau 4G - Quatrième Génération) ou un réseau WIFI (WIreless FIdelity), dont les conditions de transmission peuvent fluctuer en fonction de divers paramètres (environnement, mobilité, charge de la cellule, etc.).  This constraint is all the more critical when the client accesses the content server via a mobile telecommunications network, such as for example a cellular network (for example the 4G network - Fourth Generation) or a WiFi network (WIreless FIdelity), whose the transmission conditions can fluctuate according to various parameters (environment, mobility, cell load, etc.).
Objet et résumé de l'invention Object and summary of the invention
L'invention permet notamment de répondre à ce problème en proposant un procédé de gestion d'une session de transmission d'un flux vidéo entre un serveur de contenus et un terminal via un réseau de télécommunications, ce procédé de gestion comprenant, suite à une détection d'un démarrage de la session :  The invention makes it possible in particular to respond to this problem by proposing a method of managing a transmission session of a video stream between a content server and a terminal via a telecommunications network, this management method comprising, following a detection of a session start:
— une étape d'obtention d'informations représentatives de conditions de transmission du flux vidéo expérimentées lors de la session sur le réseau ;  A step of obtaining information representative of transmission conditions of the video stream experienced during the session on the network;
— si lesdites conditions de transmission ne sont pas considérées comme favorables : - if the said conditions of transmission are not considered favorable:
o une étape d'obtention d'un état courant d'un buffer utilisé par un module de restitution du terminal pour la restitution du flux vidéo et représentatif d'un niveau de remplissage du buffer ; et o une étape de sélection d'une politique de priorisation à appliquer à la transmission du flux vidéo vers le terminal tant que la session de transmission se trouve dans une période de démarrage au regard d'un critère prédéterminé et que le niveau de remplissage du buffer est inférieur à un seuil de remplissage prédéterminé. Corrélativement, l'invention vise également un dispositif de gestion d'une session de transmission d'un flux vidéo entre un serveur de contenus et un terminal via un réseau de télécommunications, ce dispositif de gestion comprenant : a step of obtaining a current state of a buffer used by a rendering module of the terminal for the rendering of the video stream and representative of a filling level of the buffer; and o a step of selecting a prioritization policy to be applied to the transmission of the video stream to the terminal as long as the transmission session is in a start-up period with regard to a predetermined criterion and the filling level of the buffer is less than a predetermined filling threshold. Correlatively, the invention also relates to a device for managing a transmission session of a video stream between a content server and a terminal via a telecommunications network, this management device comprising:
— un module de détection d'un démarrage de la session ;  A module for detecting a start of the session;
— un premier module d'obtention, activé sur détection d'un démarrage de la session par le module de détection et configuré pour obtenir des informations représentatives de conditions de transmission du flux vidéo expérimentées lors de la session sur le réseau ;  A first obtaining module, activated on detection of a start of the session by the detection module and configured to obtain information representative of transmission conditions of the video stream experienced during the session on the network;
— des modules activés si lesdites conditions de transmission ne sont pas considérées comme favorables par le premier module d'obtention comprenant :  Modules activated if said transmission conditions are not considered favorable by the first obtaining module comprising:
o un deuxième module d'obtention, configuré pour obtenir un état courant d'un buffer utilisé par un module de restitution du terminal pour la restitution du flux vidéo et représentatif d'un niveau de remplissage du buffer ; et  a second obtaining module, configured to obtain a current state of a buffer used by a rendering module of the terminal for the rendering of the video stream and representative of a filling level of the buffer; and
o un module de sélection, configuré pour sélectionner au moins une politique de priorisation à appliquer à la transmission du flux vidéo vers le terminal tant que la session de transmission se trouve dans une période de démarrage au regard d'un critère prédéterminé et que le niveau de remplissage du buffer est inférieur à un seuil de remplissage prédéterminé.  a selection module, configured to select at least one prioritization policy to be applied to the transmission of the video stream to the terminal as long as the transmission session is in a start-up period with regard to a predetermined criterion and the level filling of the buffer is less than a predetermined filling threshold.
Les modules du dispositif de gestion peuvent être localisés par exemple dans un point d'accès PoP (pour Point of Présence) au réseau de l'opérateur.  The modules of the management device can be located for example in a PoP (Point of Presence) access point to the network of the operator.
Afin de diminuer la latence au démarrage de la restitution d'un flux vidéo sur le terminal d'un utilisateur, l'invention propose de prioriser temporairement les données relatives à ce flux vidéo lorsque la session de transmission vidéo expérimente des conditions de transmission défavorables sur le réseau (par exemple une charge trop importante sur la cellule à laquelle est rattachée le terminal pour un réseau cellulaire, ou une mauvaise réception radioélectrique due par exemple à un mauvais positionnement du terminal dans la cellule) et est donc susceptible d'être affectée par une latence importante. Par prioriser, on entend ici donner une importance préférentielle à ces données, autrement dit favoriser leur transmission vers le terminal par rapport aux données d'autres flux vidéo.  In order to reduce the latency at the start of the rendering of a video stream on a user's terminal, the invention proposes to temporarily prioritize the data relating to this video stream when the video transmission session is experimenting with unfavorable transmission conditions on a video stream. the network (for example a too large load on the cell to which the terminal is attached for a cellular network, or a bad radio reception due for example to a bad positioning of the terminal in the cell) and is therefore likely to be affected by a high latency. By prioritizing, here is meant to give preferential importance to these data, in other words to promote their transmission to the terminal with respect to the data of other video streams.
Cette priorisation temporaire est appliquée tant que la session de transmission se trouve dans une période de démarrage et tant qu'un buffer utilisé par un module de restitution (aussi couramment désigné par « player ») du terminal lors de la restitution du flux vidéo n'atteint pas un niveau de remplissage satisfaisant pour assurer une restitution du flux vidéo à l'utilisateur du terminal. Les inventeurs ont en effet relié l'état de ce buffer à la latence expérimentée par le terminal au début de la session vidéo : si le terminal a engrangé suffisamment de données relatives au flux vidéo dans ce buffer (autrement dit, si le niveau de remplissage de ce buffer est supérieur à un niveau de remplissage donné), on peut s'attendre à une visualisation rapide et correcte du flux par l'utilisateur sur son terminal, de sorte qu'il n'est pas nécessaire d'intervenir. En revanche, si le niveau de remplissage du buffer est insuffisant à un moment quelconque de la période de démarrage, l'invention propose de remédier à cette situation qui peut s'avérer rédhibitoire pour l'utilisateur du terminal en rendant prioritaires les données du flux vidéo destiné au terminal. On anticipe de la sorte d'éventuelles difficultés de l'utilisateur à accéder au contenu du flux vidéo qu'il a requis. This temporary prioritization is applied as long as the transmission session is in a start-up period and as long as a buffer used by a rendering module (also commonly referred to as "player") of the terminal during the playback of the video stream. reached a satisfactory fill level to ensure a restitution of the video stream to the user of the terminal. The inventors have indeed connected the state of this buffer to the latency experienced by the terminal at the beginning of the video session: if the terminal has gathered enough data concerning the video stream in this buffer (in other words, if the filling level of this buffer is greater than a given filling level), we can expect a fast and correct visualization of the flow by the user on his terminal, so there is no need to intervene. On the other hand, if the filling level of the buffer is insufficient at any point in the start-up period, the invention proposes to remedy this situation, which can be unacceptable for the user of the terminal by prioritizing the data of the flow. video intended for the terminal. In this way, it is anticipated that the user may have difficulty in accessing the content of the video stream that he has requested.
Les conditions d'arrêt de la priorisation (période de démarrage et niveau de remplissage du buffer insuffisant) permettent avantageusement de se focaliser sur le démarrage de la session et sur les réels besoins de l'utilisateur du terminal. On considère par exemple que la session de transmission du flux vidéo se trouve dans une période de démarrage si une période de temps écoulée depuis le démarrage de la session de transmission est inférieure à une période maximale prédéterminée ou si une quantité de données relatives au flux vidéo émise par le serveur de contenus est inférieure à une quantité maximale prédéterminée.  The conditions for stopping the prioritization (start-up period and insufficient filling level of the buffer) advantageously make it possible to focus on the start of the session and on the real needs of the user of the terminal. For example, the video stream transmission session is considered to be in a start period if a period of time since the start of the transmission session is less than a predetermined maximum period or if a quantity of data related to the video stream issued by the content server is less than a predetermined maximum quantity.
L'invention permet de donner la priorité à certains flux vidéo sans pour autant désorganiser la transmission simultanée des autres flux vidéo sur le réseau à destination d'autres utilisateurs. La priorisation proposée par l'invention n'a en effet pas vocation à durer plus que nécessaire ni à s'appliquer lorsque les conditions de transmission expérimentées par le terminal ne le justifient pas (ex. conditions de propagation radio favorables et/ou buffer utilisé par le module de restitution (player) suffisamment rempli pour permettre un accès au flux vidéo rapide par l'utilisateur).  The invention makes it possible to give priority to certain video streams without disrupting the simultaneous transmission of other video streams on the network to other users. The prioritization proposed by the invention is indeed not intended to last longer than necessary or to apply when the transmission conditions experienced by the terminal do not justify it (eg favorable radio propagation conditions and / or buffer used by the playback module (player) sufficiently filled to allow access to the fast video stream by the user).
En diminuant ainsi la latence au démarrage de la restitution d'un flux vidéo, l'invention permet d'améliorer l'expérience perçue par l'utilisateur et d'éviter les abandons de sessions déplorés auprès des utilisateurs en cas de démarrage trop lent de la restitution.  By thus reducing the latency at the start of the rendering of a video stream, the invention makes it possible to improve the experience perceived by the user and to avoid the abandonment of sessions lamented to the users in case of slow start restitution.
Dans un mode particulier de réalisation, l'état courant du buffer est obtenu à partir d'un message de signalisation émis par le terminal dans une session de signalisation établie avec le serveur de contenus pour la session de transmission du flux vidéo.  In a particular embodiment, the current state of the buffer is obtained from a signaling message sent by the terminal in a signaling session established with the content server for the transmission session of the video stream.
Le message de signalisation et la session de signalisation sont par exemple conformes au protocole SPUD (Session Protocol for User Datagrams). Le protocole SPUD n'est qu'un exemple et il est possible d'utiliser d'autres protocoles de coopération entre équipements d'extrémités (serveurs de contenus, terminaux d'utilisateur) et équipements intermédiaires aptes à modifier ou inspecter les trafics de données (e.g. DPI).  The signaling message and the signaling session are for example in accordance with the protocol SPUD (Session Protocol for User Datagrams). The SPUD protocol is only an example and it is possible to use other cooperation protocols between end devices (content servers, user terminals) and intermediate equipment able to modify or inspect the data traffic. (eg DPI).
Le protocole SPUD est un protocole actuellement en cours de normalisation auprès de l'IETF (Internet Engineering Task Force, documents "draft-trammell-spud-req-04" et "draft- hildebrand-spud-prototype-03"), mettant en œuvre une collaboration entre les acteurs de l'Internet parmi lesquels les opérateurs des réseaux de télécommunications et les fournisseurs de contenus. Ce protocole a pour objet de diffuser des messages, aussi appelés « advices », transportant des recommandations liées aussi bien aux services qu'au réseau. Il permet en particulier à des équipements d'extrémité (ex. terminaux clients ou serveurs de contenus ici) d'échanger des advices avec d'autres équipements intermédiaires du réseau par lesquels transitent les données pour adapter le comportement de ces équipements aux contraintes des applications activées sur les équipements d'extrémité. Un tel équipement intermédiaire est ici par exemple le dispositif de gestion selon l'invention. On note que conformément au protocole SPUD, les sessions de signalisation sont établies en marge des sessions de transmission auxquelles elles sont rattachées (i.e. il s'agit de sessions distinctes), une fois que les sessions de transmission ont été établies entre les protagonistes (i.e. terminal et serveur de contenus). The SPUD protocol is a protocol currently being standardized by the IETF (Internet Engineering Task Force, documents "draft-trammell-spud-req-04" and "draft-hildebrand-spud-prototype-03"), implementing collaboration among Internet players, including telecommunication network operators and content providers. This protocol is intended to broadcast messages, also called "advices", carrying recommendations related to both the services and the network. In particular, it allows end devices (eg client terminals or content servers here) to exchange advices with other intermediate network equipment through which data travels to adapt the behavior of these devices to the constraints of the applications. activated on end equipment. Such intermediate equipment is here for example the management device according to the invention. It is noted that according to the SPUD protocol, signaling sessions are established outside the transmission sessions to which they are attached (ie they are separate sessions), once the transmission sessions have been established between the protagonists (ie terminal and content server).
L'invention tire donc profit, dans ce mode de réalisation, de l'existence de ce protocole et de ses nombreuses possibilités pour véhiculer jusqu'au dispositif de gestion des informations sur le terminal et plus particulièrement sur l'état du buffer utilisé par le player du terminal pour la restitution du flux vidéo. Le dispositif de gestion est ici un équipement intermédiaire entre le terminal et le serveur de contenus, mais qui grâce au protocole SPUD, peut accéder à différentes informations véhiculées entre le terminal et le serveur de contenus, même si le serveur de contenus n'est pas sous le contrôle de l'opérateur du réseau. L'invention profite donc des évolutions proposées aujourd'hui pour les applications web pour obtenir diverses informations permettant d'optimiser le démarrage d'une session de transmission de flux vidéo et favoriser les communications entre applications et réseau.  The invention therefore takes advantage, in this embodiment, of the existence of this protocol and its many possibilities for conveying to the device for managing information on the terminal and more particularly on the state of the buffer used by the device. player of the terminal for the restitution of the video stream. The management device is here an intermediate equipment between the terminal and the content server, but thanks to the SPUD protocol, can access various information conveyed between the terminal and the content server, even if the content server is not under the control of the network operator. The invention therefore takes advantage of the developments proposed today for web applications to obtain various information to optimize the start of a video stream transmission session and promote communications between applications and network.
On note que le protocole SPUD, dans sa version actuelle telle que spécifiée par I1ETF, n'inclut pas d'options permettant de remonter des informations depuis le terminal jusqu'au serveur de contenus relatives à un état physique du terminal, telles que par exemple le niveau de remplissage du buffer utilisé par le player du terminal pour la restitution du flux. L'invention propose donc d'enrichir la signalisation actuelle proposée par le protocole SPUD avec de nouvelles options permettant d'optimiser la fourniture de contenus vidéo, ce protocole se prêtant particulièrement bien à la mise en œuvre de l'invention.  It is noted that the protocol SPUD, in its current version as specified by I1ETF, does not include options for reassembling information from the terminal to the content server relating to a physical state of the terminal, such as for example the level of filling of the buffer used by the player of the terminal for the restitution of the flow. The invention therefore proposes to enrich the current signaling proposed by the SPUD protocol with new options making it possible to optimize the provision of video content, this protocol being particularly suitable for the implementation of the invention.
L'invention ne se limite toutefois pas à l'utilisation du protocole SPUD pour véhiculer les informations du terminal jusqu'au dispositif de gestion. D'autres protocoles, comme par exemple le protocole http (HyperText Transfert Protocol), peuvent être utilisés en variante.  The invention is however not limited to the use of the SPUD protocol for conveying information from the terminal to the management device. Other protocols, such as the HyperText Transfer Protocol (http), can be used alternatively.
Dans un mode particulier de réalisation, la détection du démarrage de la session de transmission vidéo comprend une détection de l'établissement de la session de signalisation entre le terminal et le serveur de contenus.  In a particular embodiment, the detection of the start of the video transmission session includes a detection of the establishment of the signaling session between the terminal and the content server.
L'établissement de la session de signalisation, en particulier dans le cas du protocole SPUD, est aisément détectable et permet d'identifier facilement qu'une session de transmission vidéo est démarrée.  The establishment of the signaling session, especially in the case of the SPUD protocol, is easily detectable and makes it easy to identify that a video transmission session is started.
Dans un mode particulier de réalisation, le procédé comprend en outre une étape préliminaire de détermination si la session de transmission du flux vidéo est ou non une session dite collaborative, une politique de priorisation n'étant appliquée à la transmission du flux vidéo que si la session de transmission est une session collaborative. In a particular embodiment, the method further comprises a preliminary step of determining whether or not the session of transmission of the video stream is a session. so-called collaborative, a prioritization policy being applied to the transmission of the video stream only if the transmission session is a collaborative session.
L'invention permet ainsi de prioriser certaines sessions dites collaboratives au détriment d'autres sessions non collaboratives. La notion de « session collaborative » dépend d'un critère prédéterminé : il peut s'agir par exemple de sessions associées à des fournisseurs de contenus avec lesquels l'opérateur du réseau a des accords, ou de sessions attachées à des terminaux spécifiques (ex. terminaux d'utilisateurs ayant un statut particulier dans le réseau), à des utilisateurs particuliers (ex. identités et/ou souscriptions particulières), à un domaine/sous domaine particulier, à des identifiants particuliers (ex. adresse IP), etc. et pour lesquelles le dispositif de gestion selon l'invention a préférentiellement accès à tout ou partie de la signalisation échangée dans la session de signalisation.  The invention thus makes it possible to prioritize certain so-called collaborative sessions to the detriment of other non-collaborative sessions. The notion of "collaborative session" depends on a predetermined criterion: it can be for example sessions associated with content providers with which the network operator has agreements, or sessions attached to specific terminals (ex. user terminals with a particular status in the network), to particular users (eg particular identities and / or subscriptions), to a particular domain / subdomain, to particular identifiers (eg IP address), etc. and for which the management device according to the invention preferentially has access to all or part of the signaling exchanged in the signaling session.
Ainsi, différents paramètres peuvent être considérés pour identifier si une session est collaborative ou non, en fonction du critère utilisé pour définir ces sessions. Par exemple, si on s'intéresse aux fournisseurs de contenus à proprement parler, une adresse IP du serveur véhiculée dans la signalisation émise par le terminal peut être utilisée et confrontée à des adresses IP rattachées à des serveurs de fournisseurs de contenus avec lesquels une collaboration a été établie.  Thus, different parameters can be considered to identify whether a session is collaborative or not, depending on the criterion used to define these sessions. For example, if we are interested in content providers strictly speaking, an IP address of the server conveyed in the signaling transmitted by the terminal can be used and confronted with IP addresses attached to servers of content providers with whom a collaboration has been established.
Dans un autre mode de réalisation, les étapes d'obtention d'un état courant du buffer et l'étape de sélection d'au moins une politique de priorisation sont conditionnées par la détection d'un jeton valide dans un message de signalisation émis par le terminal.  In another embodiment, the steps of obtaining a current state of the buffer and the step of selecting at least one prioritization policy are conditioned by the detection of a valid token in a signaling message sent by the terminal.
Un tel jeton peut par exemple comprendre un identifiant, éventuellement chiffré. Il peut être utilisé pour identifier facilement des sessions collaboratives par exemple.  Such token may for example include an identifier, possibly encrypted. It can be used to easily identify collaborative sessions for example.
Dans un mode particulier de réalisation, ladite au moins une politique de priorisation est sélectionnée parmi au moins :  In a particular embodiment, said at least one prioritization policy is selected from at least:
— une politique de suppression de données émises sur le réseau et relatives à au moins un flux vidéo d'au moins une session de transmission établie avec au moins un autre terminal ; A policy of deleting data transmitted on the network relating to at least one video stream of at least one transmission session established with at least one other terminal;
— une politique de suppression de données émises sur le réseau et relatives à au moins un flux vidéo d'au moins une session de transmission établie avec au moins un autre terminal lorsque ladite au moins une session de transmission présente une latence supérieure à un seuil de latence prédéterminé ; et  A policy of deleting data transmitted on the network relating to at least one video stream of at least one transmission session established with at least one other terminal when said at least one transmission session has a latency greater than a threshold of predetermined latency; and
— une politique d'adaptation d'une vitesse d'envoi vers le terminal, par un équipement intermédiaire entre le serveur de contenus et le terminal, des données relatives au flux vidéo de la session de transmission en fonction d'un niveau de remplissage d'un buffer de l'équipement intermédiaire et d'un débit du réseau expérimenté par le terminal.  A policy of adapting a transmission speed to the terminal, by an intermediate device between the content server and the terminal, data relating to the video stream of the transmission session as a function of a filling level of a buffer of the intermediate equipment and a throughput of the network experienced by the terminal.
Ces différentes politiques de priorisation permettent d'agir rapidement sur la transmission des données du flux vidéo destiné au terminal. En effet, du fait de la période limitée durant laquelle la priorisation des données est appliquée (période de démarrage de la session de transmission du flux vidéo seulement), une réponse rapide et efficace doit être apportée. Les deux premières politiques précitées visant à supprimer des données relatives à des flux vidéo échangés dans le cadre de sessions non destinées au terminal permettent de privilégier de façon efficace les données de la session de transmission du terminal. Les sessions de transmission dont les données sont supprimées sont par exemple les sessions identifiées comme non collaboratives. Les deux premières politiques favorisent ainsi les sessions de transmission de flux vidéo en provenance de serveurs avec lesquels des collaborations avec l'opérateur du réseau ont été établies ou à destination de terminaux privilégiés par l'opérateur. Pour un réseau de télécommunications mobile tel qu'un réseau cellulaire ou un réseau 4G, la suppression de données à transmettre a un effet immédiat sur l'allocation des ressources destinées au terminal dont on cherche à favoriser la transmission du flux, qui devient plus favorable, permettant ainsi d'améliorer les conditions de transmission du flux vidéo vers le terminal. These different prioritization policies make it possible to act quickly on the transmission of data from the video stream intended for the terminal. Indeed, because of the limited period during which the prioritization of the data is applied (start period of the transmission session of the video stream only), a quick and effective response must be provided. The first two aforementioned policies to delete data relating to video streams exchanged in the context of sessions not intended for the terminal make it possible to efficiently use the data of the transmission session of the terminal. The transmission sessions whose data are deleted are, for example, the sessions identified as non-collaborative. The first two policies thus promote sessions of video stream transmission from servers with which collaborations with the network operator have been established or to terminals preferred by the operator. For a mobile telecommunications network such as a cellular network or a 4G network, the deletion of data to be transmitted has an immediate effect on the allocation of resources for the terminal whose flow is sought to be favored, which becomes more favorable. , thereby improving the conditions of transmission of the video stream to the terminal.
On note que la deuxième politique de suppression des données prend avantageusement en compte la latence des sessions en plus du caractère collaboratif ou non collaboratif de la session. En effet, les inventeurs ont constaté que lorsque cette latence est trop importante, il est inutile de transmettre les données vers le terminal les ayant requis, car celui-ci n'est pas en mesure de les recevoir. Cette deuxième politique de suppression permet donc de limiter l'impact de cette politique sur les autres utilisateurs.  It should be noted that the second data deletion policy advantageously takes into account the latency of the sessions in addition to the collaborative or non-collaborative nature of the session. Indeed, the inventors have found that when this latency is too important, it is useless to transmit the data to the terminal having requested them, because it is not able to receive them. This second deletion policy therefore limits the impact of this policy on other users.
La troisième politique de priorisation proposée ci-dessus est particulièrement efficace et permet de ne pas saturer le lien entre le terminal et le serveur de contenus, notamment dans le cas où plusieurs sessions de transmission sont priorisées simultanément conformément à l'invention.  The third prioritization policy proposed above is particularly effective and makes it possible not to saturate the link between the terminal and the content server, particularly in the case where several transmission sessions are prioritized simultaneously according to the invention.
Bien entendu, cette liste n'est pas exhaustive et d'autres politiques peuvent être envisagées, comme par exemple une combinaison de tout ou partie des politiques de priorisation précitées.  Of course, this list is not exhaustive and other policies can be envisaged, such as a combination of all or part of the aforementioned prioritization policies.
Dans un mode particulier de réalisation, ladite au moins une politique de priorisation sélectionnée est notifiée dans un message de signalisation émis dans la session de signalisation établie avec le serveur de contenus, ce message de signalisation requérant l'application de ladite au moins une politique de priorisation sélectionnée par au moins un équipement intermédiaire entre le serveur et le terminal par lequel transite le flux vidéo.  In a particular embodiment, said at least one selected prioritization policy is notified in a signaling message sent in the signaling session established with the content server, this signaling message requesting the application of said at least one policy of prioritization selected by at least one intermediate device between the server and the terminal through which the video stream passes.
Dans un mode préférentiel, la session de signalisation utilisée pour notifier ladite au moins une politique de priorisation aux équipements participant à la transmission du flux vidéo est une session conforme au protocole SPUD et le message de signalisation utilisé est un « advice » prévu par ce protocole. La mise en œuvre de l'invention est ainsi grandement facilitée.  In a preferred embodiment, the signaling session used to notify said at least one prioritization policy to the equipment participating in the transmission of the video stream is a session compliant with the SPUD protocol and the signaling message used is a "advice" provided by this protocol. . The implementation of the invention is thus greatly facilitated.
Ainsi, non seulement l'invention propose d'utiliser des sessions de signalisation existantes pour véhiculer dans le réseau et aux différents équipements intermédiaires participant à la transmission du flux entre le serveur de contenus et le terminal des informations applicatives, mais ces mêmes sessions de signalisation sont également mises à profit pour notifier la politique de priorisation sélectionnée par le dispositif de gestion et la faire appliquer. En particulier, la session de signalisation ainsi établie en marge de la session de transmission permet au dispositif de gestion d'obtenir facilement des informations du terminal et de transmettre facilement les décisions prises quant à la priorisation des données relatives au flux. C'est le cas par exemple lorsque l'équipement (ou un des équipements) appliquant à proprement parler la politique de priorisation sélectionnée au flux vidéo est un serveur intermédiaire placé en amont de l'accès du terminal au réseau ou n'est pas sous le contrôle direct de l'opérateur du réseau. Ce serveur peut être par exemple un serveur de livraison ou streamer rattaché à un réseau de diffusion de contenus opérant pour le compte du fournisseur de contenus ou agissant comme fournisseur de contenus. Thus, not only the invention proposes to use existing signaling sessions to convey in the network and the various intermediate devices involved in the transmission of the flow between the content server and the terminal of the application information, but these same signaling sessions are also used to notify the prioritization policy selected by the management system and to enforce it. In particular, the signaling session thus established on the sidelines of the transmission session makes it possible for the management device to easily obtain information from the terminal and to easily transmit the decisions taken concerning the prioritization of the data relating to the flow. This is the case, for example, when the equipment (or equipment) strictly applying the prioritization policy selected to the video stream is an intermediate server placed upstream of the access of the terminal to the network or is not under direct control of the network operator. This server may be for example a delivery server or streamer attached to a content distribution network operating on behalf of the content provider or acting as a content provider.
Dans un mode particulier de réalisation, le procédé de gestion selon l'invention comprend une étape de mise à jour de ladite au moins une politique de priorisation durant la période de démarrage de la session de transmission en fonction de l'état courant du buffer et/ou des conditions de transmission courantes du flux vidéo expérimentées lors de la session sur le réseau.  In a particular embodiment, the management method according to the invention comprises a step of updating said at least one prioritization policy during the start period of the transmission session as a function of the current state of the buffer and / or current transmission conditions of the video stream experienced during the session on the network.
Une telle mise à jour peut être liée à différents facteurs. Ainsi par exemple, les conditions de transmission expérimentées sur le réseau par la session vidéo peuvent avoir évolué et rendu inadaptée la politique de priorisation sélectionnée. Selon un autre exemple, l'état du buffer peut ne pas évoluer comme souhaité et nécessiter l'adoption d'une autre politique de priorisation, etc. Le dispositif de gestion selon l'invention peut être configuré pour obtenir périodiquement ou à des instants prédéterminés les informations concernant les conditions de transmission de la session et/ou l'état du buffer de sorte à pouvoir intervenir rapidement et adapter efficacement sa politique de priorisation. On note que cette mise à jour n'est réalisée conformément à l'invention que si l'on se trouve toujours dans la période de démarrage de la session.  Such an update may be related to different factors. For example, the transmission conditions experienced on the network by the video session may have evolved and made inappropriate the selected prioritization policy. According to another example, the state of the buffer may not change as desired and require the adoption of another prioritization policy, etc. The management device according to the invention can be configured to obtain periodically or at predetermined times the information concerning the conditions of transmission of the session and / or the state of the buffer so that it can intervene quickly and adapt its prioritization policy effectively. . Note that this update is performed according to the invention only if one is still in the start period of the session.
Dans un mode particulier de réalisation, le procédé comprend :  In a particular embodiment, the method comprises:
— durant l'application de ladite au moins une politique de priorisation sélectionnée, au moins une étape d'obtention d'informations représentatives de conditions de transmission du flux vidéo expérimentées lors de la session sur le réseau ; et  During the application of said at least one selected prioritization policy, at least one step of obtaining information representative of transmission conditions of the video stream experienced during the session on the network; and
— une étape d'interruption de l'application de ladite au moins une politique de priorisation sélectionnée si lesdites conditions de transmission sont considérées comme favorables.  A step of interrupting the application of said at least one selected prioritization policy if said transmission conditions are considered favorable.
Ainsi, la mise à jour de ladite au moins une politique de priorisation peut également consister en une cessation de la priorisation si celle-ci ne s'avère plus nécessaire. De cette sorte, on limite l'impact sur les autres sessions de transmission établies sur le réseau de la priorisation des données du flux vidéo destiné au terminal.  Thus, the updating of said at least one prioritization policy may also consist of a cessation of the prioritization if it no longer proves necessary. In this way, the impact on the other transmission sessions established on the network of the prioritization of the data of the video stream intended for the terminal is limited.
Dans un mode particulier de réalisation, les différentes étapes du procédé de gestion sont déterminées par des instructions de programmes d'ordinateurs.  In a particular embodiment, the various steps of the management method are determined by instructions of computer programs.
En conséquence, l'invention vise aussi un programme d'ordinateur sur un support d'informations, ce programme étant susceptible d'être mis en œuvre dans un dispositif de gestion ou plus généralement dans un ordinateur, ce programme comportant des instructions adaptées à la mise en œuvre des étapes d'un procédé de gestion tel que décrit ci-dessus. Accordingly, the invention also relates to a computer program on an information medium, this program being capable of being implemented in a management device or more generally in a computer, this program comprising instructions adapted to the implementation of the steps of a management method as described above.
Ce programme peut utiliser n'importe quel langage de programmation, et être sous la forme de code source, code objet, ou de code intermédiaire entre code source et code objet, tel que dans une forme partiellement compilée, ou dans n'importe quelle autre forme souhaitable.  This program can use any programming language, and be in the form of source code, object code, or intermediate code between source code and object code, such as in a partially compiled form, or in any other form desirable shape.
L'invention vise aussi un support d'informations ou d'enregistrement lisible par un ordinateur, et comportant des instructions d'un programme d'ordinateur tel que mentionné ci- dessus.  The invention also relates to a computer readable information or recording medium, and comprising instructions of a computer program as mentioned above.
Le support d'informations ou d'enregistrement peut être n'importe quelle entité ou dispositif capable de stocker le programme. Par exemple, le support peut comporter un moyen de stockage, tel qu'une ROM, par exemple un CD ROM ou une ROM de circuit microélectronique, ou encore un moyen d'enregistrement magnétique, par exemple une disquette (floppy dise) ou un disque dur.  The information or recording medium may be any entity or device capable of storing the program. For example, the medium may comprise storage means, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or a magnetic recording medium, for example a floppy disk or a disk. hard.
D'autre part, le support d'informations ou d'enregistrement peut être un support transmissible tel qu'un signal électrique ou optique, qui peut être acheminé via un câble électrique ou optique, par radio ou par d'autres moyens. Le programme selon l'invention peut être en particulier téléchargé sur un réseau de type Internet.  On the other hand, the information or recording medium may be a transmissible medium such as an electrical or optical signal, which may be conveyed via an electrical or optical cable, by radio or by other means. The program according to the invention can be downloaded in particular on an Internet type network.
Alternativement, le support d'informations ou d'enregistrement peut être un circuit intégré dans lequel le programme est incorporé, le circuit étant adapté pour exécuter ou pour être utilisé dans l'exécution du procédé en question.  Alternatively, the information or recording medium may be an integrated circuit in which the program is incorporated, the circuit being adapted to execute or to be used in the execution of the method in question.
L'invention vise également un système de communication comprenant :  The invention also relates to a communication system comprising:
— au moins un terminal ;  At least one terminal;
— au moins un serveur de contenus, apte à fournir un flux vidéo audit terminal lors d'une session de transmission établie avec le terminal ; et  At least one content server capable of supplying a video stream to said terminal during a transmission session established with the terminal; and
— un dispositif de gestion de cette session de transmission conforme à l'invention ; etA device for managing this transmission session according to the invention; and
— au moins un équipement intermédiaire entre le serveur de contenus et le terminal par lequel transite le flux vidéo et apte à appliquer une politique de priorisation sélectionnée par le dispositif de gestion le cas échéant pour ladite session de transmission. At least one intermediate device between the content server and the terminal through which the video stream transits and able to apply a prioritization policy selected by the management device if necessary for said transmission session.
On note que le dispositif de gestion et l'équipement intermédiaire peuvent être, dans un mode particulier de réalisation, colocalisés sur un même équipement.  Note that the management device and the intermediate equipment may be, in a particular embodiment, co-located on the same equipment.
On peut également envisager, dans d'autres modes de réalisation, que le procédé de gestion, le dispositif de gestion et le système de communication selon l'invention présentent en combinaison tout ou partie des caractéristiques précitées. Brève description des dessins  It may also be envisaged, in other embodiments, that the management method, the management device and the communication system according to the invention present in combination all or part of the aforementioned characteristics. Brief description of the drawings
D'autres caractéristiques et avantages de la présente invention ressortiront de la description faite ci-dessous, en référence aux dessins annexés qui en illustrent un exemple de réalisation dépourvu de tout caractère limitatif. Sur les figures : — la figure 1 représente, de façon schématique, un système de communication conforme à l'invention, dans un mode particulier de réalisation, ce système comprenant un dispositif de gestion de sessions de transmission de flux vidéo conforme à l'invention ; Other features and advantages of the present invention will emerge from the description given below, with reference to the accompanying drawings which illustrate an embodiment having no limiting character. In the figures: FIG. 1 schematically represents a communication system according to the invention, in a particular embodiment, this system comprising a device for managing video flow transmission sessions according to the invention;
— la figure 2 représente, de façon schématique, l'architecture matérielle du dispositif de gestion de la figure 1 ;  - Figure 2 shows schematically the hardware architecture of the management device of Figure 1;
— la figure 3 représente, sous forme d'ordinogramme les principales étapes d'un procédé de gestion d'une session de transmission d'un flux vidéo conforme à l'invention ; et  FIG. 3 represents, in the form of a flow chart, the main steps of a method of managing a transmission session of a video stream according to the invention; and
— la figure 4 représente, sous forme de diagramme, les messages de signalisation échangés lors de la mise en œuvre de l'invention.  FIG. 4 represents, in the form of a diagram, the signaling messages exchanged during the implementation of the invention.
Description détaillée de l'invention Detailed description of the invention
La figure 1 présente, dans son environnement, un système de communication 1 conforme à l'invention, dans un mode particulier de réalisation.  FIG. 1 presents, in its environment, a communication system 1 according to the invention, in a particular embodiment.
Dans ce mode de réalisation, le système de communication 1 comprend : — un terminal 2 d'un utilisateur U ; et  In this embodiment, the communication system 1 comprises: a terminal 2 of a user U; and
— un ou plusieurs serveur de contenus 3 aptes à fournir des flux vidéo, notamment au terminal 2. Ces flux vidéo peuvent être fournis par les serveurs de contenus 3 dans le contexte de divers services, comme par exemple un service de navigation web, un service de vidéo à la demande, un service de diffusion en temps réel (« streaming »), etc.  One or more content servers 3 capable of supplying video streams, in particular to the terminal 2. These video streams may be provided by the content servers 3 in the context of various services, such as for example a web browsing service, a service video on demand, a streaming service, etc.
Dans l'exemple envisagé à la figure 1, le terminal 2 est un terminal mobile apte à communiquer sur un réseau de télécommunications mobile cellulaire AN (réseau d'accès) tel que par exemple un réseau 4G et sur lequel l'utilisateur U peut visualiser des flux vidéo transmis via le réseau mobile AN. Le terminal mobile 2 est équipé à cet effet d'un écran 2A et d'un module de restitution vidéo 2B (ou player vidéo) comprenant un buffer 2C permettant d'engranger des données relatives au flux vidéo en vue de leur restitution en continu sur l'écran 2A du terminal 2.  In the example envisaged in FIG. 1, the terminal 2 is a mobile terminal able to communicate on a mobile cellular telecommunications network AN (access network) such as for example a 4G network and on which the user U can visualize video streams transmitted via the mobile network AN. The mobile terminal 2 is equipped for this purpose with a screen 2A and a video rendering module 2B (or video player) comprising a buffer 2C making it possible to collect data relating to the video stream with a view to their continuous rendering on the screen 2A of the terminal 2.
Aucune limitation n'est toutefois attachée à la nature du réseau sur lequel le terminal 2 est susceptible de communiquer. Il peut s'agir en variante d'un réseau WIFI, 3G, etc.  No limitation is however attached to the nature of the network on which the terminal 2 is likely to communicate. It may be an alternative of a WIFI, 3G, etc. network.
Le réseau de télécommunications mobile AN comprend, de façon connue, une ou plusieurs stations de base permettant de couvrir les différentes cellules du réseau. On suppose que le terminal mobile 2 est rattachée à la station de base 4.  The mobile telecommunications network AN comprises, in known manner, one or more base stations for covering the different cells of the network. It is assumed that the mobile terminal 2 is attached to the base station 4.
Le réseau mobile AN est relié ici à un cœur de réseau IP CN via une passerelle convergente (passerelle opérateur) ou CGW (pour Convergent GateWay) 5. De façon connue, une telle passerelle CGW 5 permet avantageusement de relier plusieurs réseaux d'accès fixes, WIFI et mobiles à un même cœur de réseau IP. Elle se trouve entre le réseau mobile AN et le réseau cœur CN, et est localisée ici dans un point d'accès 6 au cœur de réseau CN désigné plus communément par PoP pour « Point of Présence ». Un tel PoP peut concentrer dans un local technique unique différents types d'équipements destinés à interagir. Dans le mode de réalisation décrit ici, le PoP 6 comprend en outre un serveur 7 de livraison ou streamer apte à délivrer les contenus vidéos hébergés par les serveurs de contenus 3. Ce serveur de livraison 7 est à proprement parler un cache disposant d'un buffer de stockage des données qu'il reçoit, connu en soi. The mobile network AN is connected here to an IP core network CN via a convergent gateway (gateway operator) or CGW (for Convergent GateWay) 5. In known manner, such a gateway CGW 5 advantageously allows to connect several fixed access networks , WIFI and mobile at the same core IP network. It lies between the mobile network AN and the core network CN, and is located here in an access point 6 at the heart of CN network more commonly referred to as PoP for "Point of Presence". Such a PoP can concentrate in a single technical room different types of equipment intended to interact. In the embodiment described here, the PoP 6 further comprises a delivery server 7 or streamer capable of delivering the video contents hosted by the content servers 3. This delivery server 7 is strictly speaking a cache with a storage buffer of the data it receives, known per se.
Le cœur de réseau CN est relié ici au réseau public Internet dans lequel se trouvent les serveurs de contenus 3. Les flux vidéo transitent entre les serveurs de contenus 3 et le terminal 2 par des routeurs, dont un routeur R, représenté dans le réseau CN à titre d'exemple dans la figure 1. Dans l'exemple envisagé ici, les serveurs de contenus 3 sont contrôlés par un opérateur distinct de l'opérateur du réseau d'accès AN et du cœur de réseau CN. Toutefois cette hypothèse n'est pas limitative en soi. Par exemple, un serveur de contenus 3 peut très bien se trouver dans un autre PoP de l'opérateur du réseau CN, suite à des accords spécifiques avec le fournisseur de contenus. Dans ce cas les flux vidéo n'ont pas besoin de transiter par le réseau public Internet.  The core network CN is connected here to the public Internet network in which the content servers 3 are located. The video streams transit between the content servers 3 and the terminal 2 by routers, including a router R, represented in the network CN for example in Figure 1. In the example envisaged here, the content servers 3 are controlled by an operator separate from the operator of the access network AN and CN core network. However, this hypothesis is not limiting in itself. For example, a content server 3 may very well be in another PoP of the operator of the CN network, following specific agreements with the content provider. In this case the video streams do not need to pass through the public Internet network.
Dans la suite de la description on désigne indifféremment par réseau de télécommunications, un unique réseau ou un réseau constitué de plusieurs (sous-)réseaux par le(s)quel(s) transitent les communications établies entre le terminal 2 et les serveurs de contenus 3 se trouvant dans le réseau Internet. Dans l'exemple envisagé à la figure 1, le réseau de télécommunications au sens de l'invention comprend ainsi le réseau d'accès AN, le cœur de réseau CN et le réseau Internet. Aucune limitation n'est attachée cependant à la composition de ce réseau.  In the remainder of the description, a single network or a network made up of several (sub) networks by which the connections established between the terminal 2 and the content servers are transmitted by the telecommunications network is indifferently denoted by 3 in the Internet. In the example envisaged in FIG. 1, the telecommunications network within the meaning of the invention thus comprises the access network AN, the core network CN and the Internet network. However, no limitation is attached to the composition of this network.
Comme mentionné précédemment, un problème critique auquel sont confrontés aujourd'hui les opérateurs des réseaux de télécommunications, et incidemment les fournisseurs de contenus proposant des contenus vidéo à leurs clients via ces réseaux, est de limiter la latence expérimentée par les clients au démarrage de leurs sessions de transmission de flux vidéo. Par latence, on entend la durée s'écoulant entre le moment où le client choisit un flux vidéo et active son téléchargement sur le serveur de contenus et le moment où la restitution du flux vidéo débute effectivement sur le terminal du client.  As mentioned above, a critical problem facing telecommunication network operators today, and incidentally the providers of content offering video content to their customers via these networks, is to limit the latency experienced by customers at the start of their network. video streaming sessions. Latency refers to the time elapsing between the moment when the customer chooses a video stream and activates its download on the content server and the moment when the video stream restitution actually starts on the client terminal.
L'invention permet avantageusement de diminuer cette latence en priorisant, sous certaines conditions, les données relatives au flux vidéo sélectionné par le client durant la période de démarrage de la session de transmission de ce flux vidéo. A cet effet, le système de communication 1 comprend un dispositif de gestion de sessions de transmission de flux vidéo conforme à l'invention. Dans le mode de réalisation décrit ici, le dispositif de gestion selon l'invention est intégré dans la passerelle de convergence 5, au niveau du PoP 6. Dans la suite de la description, le dispositif de gestion est donc également référencé par 5, comme la passerelle de convergence.  The invention advantageously makes it possible to reduce this latency by prioritizing, under certain conditions, the data relating to the video stream selected by the client during the start-up period of the transmission session of this video stream. For this purpose, the communication system 1 comprises a video stream transmission session management device according to the invention. In the embodiment described here, the management device according to the invention is integrated in the convergence gateway 5, at the level of the PoP 6. In the following description, the management device is therefore also referenced by 5, as the convergence gateway.
Dans le mode de réalisation décrit ici, le dispositif de gestion 5 a l'architecture matérielle d'un ordinateur, telle que représentée à la figure 2.  In the embodiment described here, the management device 5 has the hardware architecture of a computer, as shown in FIG. 2.
Il comprend notamment un processeur 8, une mémoire vive 9, une mémoire morte 10, une mémoire flash non volatile 11 ainsi que des moyens de communication 12 lui permettant de communiquer notamment avec le terminal 2 sur le réseau de télécommunications mobile AN et avec des équipements du cœur de réseau CN et du réseau Internet, comme par exemple avec les serveurs de contenus 3. De tels moyens sont connus en soi et ne sont pas décrits plus en détail ici. On note ici que ces moyens de communication mettent également en œuvre le protocole SPUD, comme décrit plus en détail ultérieurement. It comprises in particular a processor 8, a random access memory 9, a read-only memory 10, a non-volatile flash memory 11 as well as communication means 12 enabling it to communicate in particular with the terminal 2 on the mobile telecommunications network AN and with CN network core equipment and the Internet, as for example with the content servers 3. Such means are known per se and are not described more in detail here. It should be noted here that these communication means also implement the SPUD protocol, as described in more detail later.
La mémoire morte 10 du dispositif de gestion 5 constitue un support d'enregistrement conforme à l'invention, lisible par le processeur 8 et sur lequel est enregistré ici un programme d'ordinateur PROG conforme à l'invention.  The ROM 10 of the management device 5 constitutes a recording medium according to the invention, readable by the processor 8 and on which is recorded here a computer program PROG according to the invention.
Le programme d'ordinateur PROG définit des modules fonctionnels et logiciels ici, configurés pour mettre en œuvre les étapes du procédé de gestion de sessions de transmission de flux vidéo selon l'invention. Ces modules fonctionnels s'appuient sur et/ou commandent les éléments matériels 8-12 du dispositif de gestion 5 cités précédemment. Ils comprennent notamment ici, comme illustré sur la figure 1 :  The computer program PROG defines functional and software modules here configured to implement the steps of the method of managing video streaming sessions according to the invention. These functional modules rely on and / or control the hardware elements 8-12 of the management device 5 mentioned above. They include in particular here, as illustrated in FIG.
— un module de détection 5A d'un démarrage d'une session de transmission d'un flux vidéo entre un serveur de contenus 3 du réseau Internet et un terminal, tel que le terminal 2 ;  A detection module 5A for starting a transmission session of a video stream between a content server 3 of the Internet network and a terminal, such as the terminal 2;
— un premier module d'obtention 5B, activé sur détection d'un démarrage d'une session de transmission d'un flux vidéo par le module de détection 4A et configuré pour obtenir des informations représentatives de conditions de transmission du flux vidéo expérimentées lors de la session sur le réseau séparant le terminal 2 du serveur de contenus 3 fournissant le flux vidéo ;  A first obtaining module 5B, activated on detection of a start of a transmission session of a video stream by the detection module 4A and configured to obtain information representative of transmission conditions of the video stream experienced during the the session on the network separating the terminal 2 from the content server 3 providing the video stream;
— des modules activés si lesdites conditions de transmission ne sont pas considérées comme favorables par le premier module d'obtention 5B ces modules comprenant :  Modules activated if said transmission conditions are not considered favorable by the first obtaining module 5B these modules comprising:
o un deuxième module d'obtention 5C, configuré pour obtenir un état courant du buffer 2C du player vidéo 2B utilisé par le terminal 2 pour la restitution du flux vidéo et représentatif d'un niveau de remplissage du buffer ; et  a second obtaining module 5C, configured to obtain a current state of the buffer 2C of the video player 2B used by the terminal 2 for the reproduction of the video stream and representative of a filling level of the buffer; and
o un module de sélection 5D, configuré pour sélectionner une politique de priorisation à appliquer à la transmission du flux vidéo vers le terminal 2 tant que certaines conditions sont respectées. Ces conditions sont, conformément à l'invention, que la session de transmission se trouve dans une période de démarrage au regard d'un critère prédéterminé détaillé ultérieurement et que le niveau de remplissage du buffer a selection module 5D, configured to select a prioritization policy to be applied to the transmission of the video stream to the terminal 2 as long as certain conditions are respected. These conditions are, according to the invention, that the transmission session is in a starting period with regard to a predetermined criterion detailed later and that the filling level of the buffer
2C est inférieur à un seuil de remplissage prédéterminé noté THR1. 2C is less than a predetermined filling threshold noted THR1.
Les fonctions de ces différents modules sont décrites plus en détail maintenant, en référence aux figures 3 et 4.  The functions of these different modules are described in more detail now, with reference to FIGS. 3 and 4.
La figure 3 représente les principales étapes du procédé de gestion d'une session de transmission d'un flux vidéo selon l'invention, telles qu'elles sont mises en œuvre, dans un mode particulier de réalisation, par le dispositif 5 de gestion de la figure 1 pour gérer une session de transmission d'un flux vidéo requis par le terminal 2 auprès d'un des serveurs de contenus vidéo 3 se trouvant dans le réseau Internet. Cette gestion réalisée par le dispositif 5 de gestion s'appuie sur différents messages de signalisation échangés entre les différentes entités (terminal 2, serveur de contenus 3, dispositif de gestion 5), représentés en complément sous forme de diagramme à la figure 4. FIG. 3 represents the main steps of the method of managing a transmission session of a video stream according to the invention, such that they are implemented, in a particular embodiment, by the device 5 of management of Figure 1 for managing a transmission session of a video stream required by the terminal 2 from one of the video content servers 3 located in the Internet. This management carried out by the management system 5 is based on on different signaling messages exchanged between the different entities (terminal 2, content server 3, management device 5), further represented in the form of a diagram in FIG. 4.
On désigne par 3-1 le serveur de contenus auprès duquel le terminal 2 sollicite l'obtention d'un flux vidéo, par exemple par l'intermédiaire ici d'un portail web. Cette transmission de flux vidéo entre le serveur de contenus 3-1 et le terminal 2 est encadrée par une session de transmission https VIDEO_S établie de façon connue en soi entre le serveur de contenus 3-1 et le terminal 2 (étape E10 sur la figure 4). Le flux vidéo transmis dans cette session transite via différents équipements de réseau, et notamment via le PoP 6.  3-1 denotes the content server from which the terminal 2 requests the obtaining of a video stream, for example via a web portal here. This transmission of video streams between the content server 3-1 and the terminal 2 is framed by a https VIDEO_S transmission session established in a manner known per se between the content server 3-1 and the terminal 2 (step E10 in the figure 4). The video stream transmitted in this session passes via different network equipment, and in particular via the PoP 6.
On suppose ici que suite à l'établissement de la session de transmission vidéo It is assumed here that following the establishment of the video transmission session
VIDEO_S, une session de signalisation conforme au protocole SPUD est établie entre le terminal 2 et le serveur de contenus 3-1. L'établissement d'une telle session SPUD est réalisé via l'envoi d'un message d'initialisation SPUD OPEN par le terminal 2 au serveur de contenus 3-1 spécifiant la source (src=terminal 2) et le destinataire (dest=serveur 3-1) (étape E20). Le serveur de contenus 3-1 répond à ce message d'initialisation via un message SPUD ACK (étape E30). On désigne par SPUD_S cette session. VIDEO_S, a signaling session according to the SPUD protocol is established between the terminal 2 and the content server 3-1. The establishment of such an SPUD session is performed by sending an SPUD OPEN initialization message by the terminal 2 to the content server 3-1 specifying the source (src = terminal 2) and the recipient (dest = server 3-1) (step E20). Content server 3-1 responds to this initialization message via a SPUD ACK message (step E30). This session is designated by SPUD_S.
De façon connue, la session de signalisation SPUD_S est établie en marge (i.e. en plus) de la session de transmission VIDEO_S (c'est une session distincte de la session vidéo). Elle permet l'échange de données applicatives et réseau entre le terminal 2 et le serveur de contenus 3-1. Par ailleurs, de manière avantageuse, le protocole SPUD offre la possibilité à des équipements intermédiaires du réseau d'intercepter les messages s'échangeant dans cette session de signalisation SPUD et d'accéder aux informations qu'elle véhicule (lorsque celles-ci ne sont pas protégées). C'est le cas notamment pour le PoP 6 par lequel transite la session de transmission VIDEO_S et la session de signalisation SPUD associée, et plus particulièrement pour dispositif de gestion 5 embarqué dans ce PoP 6.  In a known manner, the signaling session SPUD_S is established in the margin (i.e. in addition) of the transmission session VIDEO_S (it is a separate session of the video session). It allows the exchange of application and network data between the terminal 2 and the content server 3-1. Furthermore, advantageously, the SPUD protocol offers the possibility to intermediate equipment of the network to intercept the messages exchanged in this signaling session SPUD and to access the information that it conveys (when these are not not protected). This is the case in particular for the PoP 6 through which the VIDEO_S transmission session and the associated signaling session SPUD are transmitted, and more particularly for the management device 5 embedded in this PoP 6.
En référence à la figure 3, le dispositif de gestion 5 détecte ainsi, via son module de détection 5A, le démarrage de la session de transmission VIDEO_S via la détection de l'initialisation de la session de signalisation SPUD_S, c'est-à-dire du message SPUD OPEN (étape F10).  With reference to FIG. 3, the management device 5 thus detects, via its detection module 5A, the start of the transmission session VIDEO_S by detecting the initialization of the signaling session SPUD_S, that is to say say the SPUD OPEN message (step F10).
Dans une variante de réalisation, le module de détection 5A associe un instant Tl à la détection du message SPUD OPEN d'initialisation de la session SPUD_S et un instant T2 à la détection du message d'acquittement SPUD ACK envoyé par le serveur 3-1. La différence entre T2 et Tl permet au module de détection 5A d'avoir une estimation plus précise du début de la session de transmission.  In an alternative embodiment, the detection module 5A associates a time T1 with the detection of the SPUD OPEN initialization message SPUD_S and a time T2 with the detection of the SPUD ACK acknowledgment message sent by the server 3-1. . The difference between T2 and T1 allows the detection module 5A to have a more accurate estimate of the beginning of the transmission session.
Dans une autre variante encore, le début de la session de transmission peut être détecté en analysant les requêtes et les paquets provenant de l'adresse IP du serveur 3-1.  In yet another variant, the beginning of the transmission session can be detected by analyzing the requests and packets from the IP address of the server 3-1.
On suppose, dans le mode de réalisation décrit ici, que seules les sessions de transmission dites collaboratives sont priorisées. Par « collaboratives », on entend ici qu'un accord a été établi préalablement entre l'opérateur du réseau transportant les sessions de transmission et l'opérateur des serveurs de contenus 3 pour gérer les sessions véhiculant les flux vidéo proposé par les serveurs de contenus 3 conformément à l'invention. On suppose ici que cet accord permet au dispositif de gestion 5 de pouvoir accéder et analyser au moins une partie des informations véhiculées dans les sessions SPUD associées aux sessions de transmission des flux vidéo pour mettre en œuvre l'invention. De façon similaire, un tel service peut être proposé aux utilisateurs des terminaux susceptibles d'accéder aux contenus offerts par les serveurs 3. Dans le mode de réalisation décrit ici, une liste COLLABJ. identifiant l'ensemble des serveurs de contenus (ex. via leur adresse IP (Internet Protocol) ou un autre identifiant) concernés par l'accord et/ou les terminaux ayant souscrit auprès de l'opérateur du réseau pour que leurs sessions de transmission soient priorisées le cas échéant conformément à l'invention, est stockée par exemple dans la mémoire non volatile 11 du dispositif de gestion 5. Cette liste COLLABJ. regroupe donc toutes les informations nécessaires pour distinguer les sessions de transmission collaboratives des sessions qui ne le sont pas. It is assumed, in the embodiment described here, that only the so-called collaborative transmission sessions are prioritized. By "collaborative" is meant here that an agreement has been established previously between the network operator carrying the transmission sessions and the operator of the content servers 3 for managing the sessions conveying the video streams proposed by the content servers 3 according to the invention. It is assumed here that this agreement allows the management device 5 to be able to access and analyze at least a part of the information conveyed in the SPUD sessions associated with the transmission sessions of the video streams to implement the invention. Similarly, such a service may be offered to users of terminals that may access the content offered by the servers 3. In the embodiment described here, a list COLLABJ. identifying all the content servers (eg via their Internet Protocol (IP) address or other identifier) concerned by the agreement and / or the terminals that have subscribed with the network operator so that their transmission sessions are prioritized if appropriate in accordance with the invention, is stored for example in the nonvolatile memory 11 of the management device 5. This list COLLABJ. therefore groups all the information needed to distinguish collaborative transmission sessions from sessions that are not.
Le dispositif de gestion 5 analyse donc, par l'intermédiaire ici de son module de détection 5A, la session de transmission VIDEO_S et détermine si cette session VIDEO_S est une session collaborative ou pas (étape test F20). A cet effet, le module de détection 5A extrait certains paramètres de la session VIDEO_S comme par exemple l'adresse IP du serveur de contenus 3-1. Puis il compare cette adresse IP aux identifiants de serveurs de contenus présents dans la liste COLLAB_L. On suppose ici que le serveur de contenus 3-1 est identifié dans la liste COLLABJ. (réponse oui à l'étape test F20). Le module de détection 5A en conclut que la session VIDEO_S est collaborative.  The management device 5 thus analyzes, via here its detection module 5A, the transmission session VIDEO_S and determines whether this session VIDEO_S is a collaborative session or not (test step F20). For this purpose, the detection module 5A extracts certain parameters of the VIDEO_S session such as the IP address of the content server 3-1. Then it compares this IP address to the content server identifiers present in the list COLLAB_L. It is assumed here that the content server 3-1 is identified in the list COLLABJ. (yes answer to test step F20). The detection module 5A concludes that the VIDEO_S session is collaborative.
Si le module 5A détermine que la session SPUD_S est non collaborative (réponse non à l'étape test E20), alors le procédé de gestion s'arrête (étape F40).  If the module 5A determines that the session SPUD_S is non-collaborative (answer no to the test step E20), then the management method stops (step F40).
Dans le mode de réalisation décrit ici, le module 5A détermine ensuite si un jeton (ou « token ») valide est présent dans le message d'initialisation SPUD OPEN de la session SPUD envoyé à l'étape F20 (étape test F30). La détection de ce jeton sert à valider que la session de transmission VIDEOJ5 est bien collaborative.  In the embodiment described here, the module 5A then determines whether a valid token (or "token") is present in the SPUD OPEN initialization message of the SPUD session sent to step F20 (test step F30). Detection of this token is used to validate that the VIDEOJ5 transmission session is collaborative.
Un tel jeton peut être chiffré ou non. Dans le mode de réalisation décrit ici, la détection d'un jeton valide conditionne la gestion de la session de transmission VIDEOJ5 associée à la session SPUDJ5 conformément à l'invention. Autrement dit, si un tel jeton valide n'est pas présent dans la session SPUD_S (réponse non à l'étape F30), le procédé de gestion selon l'invention n'est pas mis en œuvre (étape F40).  Such token can be encrypted or not. In the embodiment described here, the detection of a valid token conditions the management of the transmission session VIDEOJ5 associated with the session SPUDJ5 according to the invention. In other words, if such a valid token is not present in the session SPUD_S (answer no to step F30), the management method according to the invention is not implemented (step F40).
On suppose ici que le module 5A détecte la présence d'un jeton valide dans le message de signalisation SPUD OPEN envoyé à l'étape F20 (réponse oui à l'étape F30). Il en déduit que la session de transmission VIDEOJ5 est collaborative, autrement dit que les données associées au flux vidéo de cette session vont être gérés et éventuellement priorisés conformément à l'invention. Cette détection déclenche l'application des étapes du procédé de gestion selon l'invention à la session de transmission VIDEO_S-It is assumed here that the module 5A detects the presence of a valid token in the SPUD OPEN signaling message sent to step F20 (yes response to step F30). He deduces that the VIDEOJ5 transmission session is collaborative, in other words that the data associated with the video stream of this session will be managed and possibly prioritized according to the invention. This detection triggers the application of the steps of the management method according to the invention to the transmission session VIDEO_S-
Plus particulièrement, cela déclenche l'obtention par le premier module d'obtention 5B d'informations représentatives de conditions de transmission du flux vidéo expérimentées par le terminal 2 sur le réseau lors de la session VIDEO_S, et en particulier sur le réseau d'accès AN (étape F50). More particularly, this triggers the obtaining by the first obtaining module 5B of information representative of transmission conditions of the video stream experienced by the terminal 2 on the network during the VIDEO_S session, and in particular on the access network. AN (step F50).
Ces informations sont obtenues par exemple ici via la solution technique MTG (Mobile Thoughput Guidance), normalisée par l'IETF et qui permet à un réseau cellulaire de remonter quasiment en temps réel des informations sur les conditions de transmission du flux vidéo. Ces informations comprennent notamment ici des informations remontées par la station de base 4 sur la cellule à laquelle est rattachée le terminal 2 (ex. identifiant de cellule ou « cell-id »), la localisation du terminal 2, la charge de la cellule, et une indication de débit (ou bande passante) expérimenté par le terminal 2.  This information is obtained for example here via the technical solution MTG (Mobile Thoughput Guidance), standardized by the IETF and which allows a cellular network to report in almost real time information on the transmission conditions of the video stream. This information includes in particular here information sent by the base station 4 on the cell to which the terminal 2 is attached (eg cell identifier or "cell-id"), the location of the terminal 2, the load of the cell, and an indication of bit rate (or bandwidth) experienced by the terminal 2.
Elles sont émises dans la signalisation véhiculée par la session de transmission VIDEO_S (cf. étape E40 sur la figure 4).  They are transmitted in the signaling conveyed by the transmission session VIDEO_S (see step E40 in FIG. 4).
Bien entendu, si le réseau d'accès n'est pas un réseau cellulaire mais par exemple un réseau WIFI, d'autres techniques connues peuvent être envisagées pour accéder à ces informations.  Of course, if the access network is not a cellular network but for example a WIFI network, other known techniques can be envisaged to access this information.
Les informations obtenues par le premier module d'obtention 5B sont ensuite analysées par celui-ci pour déterminer si les conditions de transmission dont bénéficient la session de transmission VIDEO_S sont favorables (étape test F60). Par « favorables », on entend ici que les conditions expérimentées par la session sont suffisamment bonnes pour permettre au terminal 2 d'accéder au flux vidéo sans latence excessive. Ceci est déterminé ici par le premier module d'obtention 5B en comparant la charge de la cellule à laquelle est rattaché le terminal 2 par rapport à un seuil THR2 prédéterminé. Ce seuil peut être déterminé expérimentalement.  The information obtained by the first obtaining module 5B is then analyzed by it to determine if the transmission conditions enjoyed by the VIDEO_S transmission session are favorable (test step F60). By "favorable" is meant here that the conditions experienced by the session are good enough to allow the terminal 2 to access the video stream without excessive latency. This is determined here by the first obtaining module 5B by comparing the load of the cell to which the terminal 2 is attached with respect to a predetermined threshold THR2. This threshold can be determined experimentally.
En variante, si le réseau d'accès AN est un réseau WIFI et non un réseau cellulaire, le module d'obtention 5B compare le nombre de connexions actives sur le point d'accès WIFI considéré par rapport à un nombre de connexions maximum.  In a variant, if the access network AN is a WIFI network and not a cellular network, the obtaining module 5B compares the number of active connections on the WIFI access point considered with respect to a maximum number of connections.
D'autres paramètres parmi les informations MTG peuvent être pris en compte par le premier module d'obtention 5B pour déterminer si les conditions de transmission sont favorables ou non, comme par exemple le débit expérimenté par le terminal 2, ou l'identifiant de la cellule, etc.  Other parameters among the MTG information can be taken into account by the first obtaining module 5B to determine whether the transmission conditions are favorable or not, such as the speed experienced by the terminal 2, or the identifier of the cell, etc.
Si les conditions sont favorables (réponse oui à l'étape test F60), aucun traitement n'est appliqué par le dispositif de gestion 5 et le procédé s'achève (étape F40).  If the conditions are favorable (yes response to the test step F60), no treatment is applied by the management device 5 and the process is completed (step F40).
En revanche, si le premier module d'obtention 5B détermine que les conditions ne sont pas favorables (réponse non à l'étape test F60), un temporisateur TEMP est armé par le premier module d'obtention 5B pour une durée T prédéterminée (étape F70). Cette durée T est choisie pour représenter le démarrage de la session de transmission vidéo. Elle peut être choisie expérimentalement, en fonction de retours des fournisseurs de contenus sur les pratiques des utilisateurs et de leurs retours d'expérience (par exemple sur ce qui semble acceptable pour un utilisateur comme latence avant d'accéder à un flux vidéo via son terminal, ceci constituant un critère prédéterminé au sens de l'invention). Par exemple, cette durée est choisie égale à T=2s. On the other hand, if the first obtaining module 5B determines that the conditions are not favorable (answer no to the test step F60), a timer TEMP is armed by the first obtaining module 5B for a predetermined duration T (step F70). This duration T is chosen to represent the start of the video transmission session. It can be chosen experimentally, based on feedback from content providers on user practices and their feedback (for example on what seems acceptable for a user like latency before accessing a video stream via its terminal, this being a predetermined criterion within the meaning of the invention). For example, this duration is chosen equal to T = 2s.
Puis, la priorisation des données relatives au flux vidéo du terminal 2 est déclenchée Then, the prioritization of the data relating to the video stream of the terminal 2 is triggered
(étape F80), via l'activation du deuxième module d'obtention 5C et du module de sélection 5D. (step F80), by activating the second obtaining module 5C and the selection module 5D.
Plus particulièrement, le deuxième module d'obtention 5C obtient tout d'abord un état courant STATE du buffer 2C du player 2B du terminal 2 pour la restitution du flux vidéo (étape F90). Cet état courant est représentatif ici d'un niveau de remplissage du buffer 2C avec des données relatives au flux vidéo. Cet état est obtenu ici par le deuxième module d'obtention 5C via un message de signalisation émis par le terminal 2 à destination du serveur de contenus 3-1 dans la session de signalisation SPUD_S (étape E50 de la figure 4), message auquel le serveur de contenus 3-1 répond via un message SPUD ACK (étape E60 de la figure 4). La session SPUD_S étant une session collaborative transitant par le PoP 6, le dispositif de gestion 5, et en particulier son deuxième module d'obtention 5C, peut accéder à la session SPUD_S, l'analyser et obtenir l'état courant du buffer 2C utilisé par le terminal 2. On suppose ici que le terminal 2 est configuré pour émettre périodiquement l'état de son buffer 2C dans un message de signalisation sur la session SPUD_S- More particularly, the second obtaining module 5C first obtains a current state STATE of the buffer 2C of the player 2B of the terminal 2 for the reproduction of the video stream (step F90). This current state is representative here of a filling level of the buffer 2C with data relating to the video stream. This state is obtained here by the second obtaining module 5C via a signaling message sent by the terminal 2 to the content server 3-1 in the signaling session SPUD_S (step E50 of FIG. 4), message to which the content server 3-1 responds via a SPUD ACK message (step E60 of FIG. 4). Since the session SPUD_S is a collaborative session transiting via the PoP 6, the management device 5, and in particular its second obtaining module 5C, can access the session SPUD_S, analyze it and obtain the current state of the buffer 2C used. by the terminal 2. It is assumed here that the terminal 2 is configured to periodically transmit the state of its buffer 2C in a signaling message on the session SPUD_S-
En variante, d'autres informations en plus de l'état du buffer peuvent être obtenues par le deuxième module d'obtention 5B à partir des messages de signalisation échangés dans la session de signalisation SPUD_S, telles que par exemple un type de terminal auquel appartient le terminal 2, un type de service auquel le terminal 2 accède, etc. As a variant, other information in addition to the state of the buffer can be obtained by the second obtaining module 5B from the signaling messages exchanged in the signaling session SPUD_S, such as, for example, a type of terminal to which belongs the terminal 2, a type of service to which the terminal 2 accesses, etc.
En référence de nouveau à la figure 3, l'état STATE du buffer 2C (niveau de remplissage) du player 2B du terminal 2 est ensuite comparé par le module d'obtention au seuil de remplissage prédéterminé THR1 (étape test F100). Ce seuil est choisi préférentiel lement de sorte à garantir que les données relatives au flux vidéo engrangées dans le buffer 2C du player 2B du terminal 2 sont en quantité suffisante pour démarrer la visualisation du flux vidéo par l'utilisateur du terminal. On note que par niveau de remplissage on entend ici soit une valeur relative (ex. un pourcentage de remplissage du buffer dès lors que sa taille est connue), soit une valeur absolue (ex. quantité de données stockées dans le buffer ou temps de restitution du flux disponible dans le buffer exprimé en secondes). Le seuil de remplissage THR1 dépend bien entendu de la capacité du terminal 2 et de la qualité de la vidéo reçue ; il peut, à titre indicatif, varier de quelques secondes (ex. 20s) à plusieurs minutes.  Referring again to FIG. 3, the state STATE of the buffer 2C (filling level) of the player 2B of the terminal 2 is then compared by the obtaining module with the predetermined filling threshold THR1 (test step F100). This threshold is chosen preferentially so as to ensure that the data relating to the video stream stored in the buffer 2C of the player 2B of the terminal 2 are in sufficient quantity to start the viewing of the video stream by the user of the terminal. Note that by filling level is meant here either a relative value (eg a percentage of filling the buffer as soon as its size is known), or an absolute value (eg amount of data stored in the buffer or restitution time the available stream in the buffer expressed in seconds). The filling threshold THR1 depends, of course, on the capacity of the terminal 2 and the quality of the video received; it can, as an indication, vary from a few seconds (eg 20s) to several minutes.
Si le deuxième module d'obtention 5B détermine que le niveau de remplissage du buffer 2C est inférieur au seuil THR1 et que le temporisateur TEMP est toujours armé (autrement dit, que la session de transmission se trouve toujours dans une période de démarrage ou encore que la durée T n'est pas encore écoulée) (réponse oui à l'étape test F100), le module 5D de sélection sélectionne une politique de priorisation des données relatives au flux vidéo transmis dans la session VIDEO_S (étape Fl 10). If the second obtaining module 5B determines that the filling level of the buffer 2C is below the threshold THR1 and the timer TEMP is still armed (in other words, that the transmission session is still in a start-up period or that the duration T has not yet elapsed) (answer yes to the test step F100), the module 5D of selection selects a data prioritization policy for the video stream transmitted in the VIDEO_S session (step Fl 10).
Si l'une quelconque des deux conditions précitées n'est pas respectée (i.e. le niveau de remplissage STATE est supérieur au seuil THR1 et/ou le temporisateur TEMP est arrivé à échéance, autrement dit la session de transmission VIDEO_S n'est plus dans une période de démarrage) (réponse non à l'étape test F100), le procédé de gestion s'achève (étape F40).  If any of the above two conditions are not met (ie the STATE fill level is greater than the THR1 threshold and / or the TEMP timer has expired, ie the VIDEO_S transmission session is no longer in a start period) (answer no to the test step F100), the management method is completed (step F40).
Dans le mode de réalisation décrit ici, le module 5D de sélection sélectionne comme politique de priorisation une politique POLI qui consiste à supprimer les données relatives aux flux vidéo des sessions de transmission non collaboratives des terminaux appartenant à la même cellule que le terminal 2.  In the embodiment described here, the selection module 5D selects as policy prioritization policy POLI which consists of removing the data relating to video streams of non-collaborative transmission sessions of terminals belonging to the same cell as the terminal 2.
La politique de priorisation POLI sélectionnée par le module 5D de sélection est ensuite notifiée par le dispositif de gestion 5 dans un message MESS(POLl) de signalisation émis dans la session de signalisation SPUD_S à destination d'un routeur R sur la route entre le terminal 2 et le serveur de contenu 3-1 (étape F120, étapes E70 et E80 de la figure 3). Ce message SPUD MESS(POLl) est par exemple un « advice » SPUD qui requiert l'application de la politique de priorisation POLI. Plus particulièrement ici, il requiert la suppression des données relatives aux flux vidéo des sessions de transmission non collaboratives des terminaux appartenant à la même cellule que le terminal 2. Cette politique POLI est destinée à être appliquée par au moins un routeur R du réseau Internet et/ou du cœur de réseau CN par lesquels transitent les sessions de transmission de flux vidéo, et en particulier les sessions de transmission non collaboratives..  The POLI prioritization policy selected by the selection module 5D is then notified by the management device 5 in a signaling message MESS (POLl) sent in the signaling session SPUD_S to an R router on the route between the terminal 2 and the content server 3-1 (step F120, steps E70 and E80 of FIG. 3). This message SPUD MESS (POLl) is for example an SPUD "advice" which requires the application of the POLI prioritization policy. More particularly here, it requires the deletion of the data relating to the video streams of the non-collaborative transmission sessions of the terminals belonging to the same cell as the terminal 2. This POLI policy is intended to be applied by at least one router R of the Internet network and / or the core network CN through which the video stream transmission sessions, and in particular the non-collaborative transmission sessions, pass.
Dans un autre mode de réalisation, le module 5D de sélection sélectionne comme politique de priorisation une politique POL2 qui consiste à supprimer les données relatives aux flux vidéo des sessions de transmission non collaboratives des terminaux appartenant à la même cellule que le terminal 2 et qui présentent une latence supérieure à un seuil de latence prédéterminé TH3. Cette politique POL2 est destinée à être appliquée également par les routeurs du réseau Internet et/ou du cœur de réseau CN par lesquels transitent les sessions de transmission de flux vidéo, et en particulier les sessions de transmission non collaboratives, d'une façon similaire à la politique POLI.  In another embodiment, the selection module 5D selects as a prioritization policy a policy POL2 which consists in deleting the data relating to the video streams of the non-collaborative transmission sessions of the terminals belonging to the same cell as the terminal 2 and which present a latency greater than a predetermined latency threshold TH3. This policy POL2 is intended to be applied also by the routers of the Internet network and / or the CN core network through which the video stream transmission sessions, and in particular the non-collaborative transmission sessions, pass in a manner similar to POLI policy.
Dans un autre mode de réalisation encore, le module 5D de sélection sélectionne comme politique de priorisation une politique POL3 qui consiste à adapter la vitesse d'envoi des données vers le terminal en fonction du niveau de remplissage du buffer du terminal et du débit expérimenté par celui-ci. Cette politique POL3 comprend également ici une redirection de la session de transmission VIDEO_S vers le streamer 7, afin que le flux vidéo destiné au terminal 2 transite par le streamer 7 (le streamer 7 est ainsi un équipement intermédiaire au sens de l'invention). Cette redirection de la session de transmission VIDEO_S vers le streamer 7 est mise en œuvre par le serveur 3-1, qui applique ainsi la politique POL3 sélectionnée par le dispositif de gestion 5 et notifiée dans la session SPUD_S entre le terminal 2 et le serveur 3-1. Alternativement, cette redirection peut être effectuée par un routeur; dans ce cas la politique POL3 est notifiée dans la session SPUD_S entre le terminal 2 et un routeur R, de façon similaire aux politiques POLI ou POL2. In yet another embodiment, the selection module 5D selects as policy prioritization policy POL3 which consists of adapting the speed of sending data to the terminal as a function of the filling level of the buffer of the terminal and the flow rate experienced by this one. This policy POL3 also includes here a redirection of the transmission session VIDEO_S to the streamer 7, so that the video stream for the terminal 2 passes through the streamer 7 (the streamer 7 is thus an intermediate device in the sense of the invention). This redirection of the transmission session VIDEO_S to the streamer 7 is implemented by the server 3-1, which thus applies the policy POL3 selected by the management device 5 and notified in the session SPUD_S between the terminal 2 and the server 3 -1. Alternatively, this redirection can be done by a router; in this case the POL3 policy is notified in the session SPUD_S between the terminal 2 and a router R, similarly to POLI or POL2 policies.
Dans le mode de réalisation décrit ici, suite à la redirection du flux vidéo destiné au terminal 2, le streamer 7 stocke les données relatives au flux vidéo (i.e. il agit comme un cache) et en application de la politique POL3, module la vitesse d'envoi des données stockées au terminal 2 afin de diminuer la latence expérimentée par l'utilisateur du terminal 2. Plus particulièrement, il module la vitesse d'envoi des données vers le terminal 2 en fonction ici du niveau courant de remplissage de son buffer (i.e. buffer du streamer 7) et du débit du réseau expérimenté par le terminal 2. Cette information est supposée ici disponible dans les informations MTG remontées à l'étape F50.  In the embodiment described here, following the redirection of the video stream intended for the terminal 2, the streamer 7 stores the data relating to the video stream (ie it acts as a cache) and in application of the POL3 policy, modulates the speed of the video stream. sending the data stored in the terminal 2 in order to reduce the latency experienced by the user of the terminal 2. More particularly, it modulates the speed of sending the data to the terminal 2 as a function here of the current level of filling of its buffer ( the streamer buffer 7) and the network throughput experienced by the terminal 2. This information is assumed here available in the MTG information reported in step F50.
La vitesse d'envoi des données est modulée ici par le streamer 7 en organisant les données sous forme de bursts qui sont envoyés vers le terminal 2 durant la période de démarrage T. Pour ne pas saturer le lien entre le streamer 7 et le terminal 2, la taille des bursts est choisie de sorte à être conforme au débit du terminal 2 (i.e. à la bande passante dont il dispose). Plus précisément, le streamer 7 choisit ici comme taille de burst B, une fonction de la bande passante dont dispose le terminal 2, de la taille du buffer du streamer 7 et de la taille moyenne d'un paquet du flux vidéo.  The speed of sending the data is modulated here by the streamer 7 by organizing the data in the form of bursts which are sent to the terminal 2 during the start-up period T. Not to saturate the link between the streamer 7 and the terminal 2 , the size of the bursts is chosen so as to be consistent with the rate of the terminal 2 (ie the bandwidth it has). More precisely, the streamer 7 here chooses as burst size B, a function of the bandwidth available to the terminal 2, the size of the buffer of the streamer 7 and the average size of a packet of the video stream.
Dans un autre mode de réalisation encore, le module 5D de sélection peut sélectionner comme politique de priorisation, une combinaison d'au moins deux politiques sélectionnées parmi les politiques de priorisation POLI, POL2 et POL3 ou d'autres politiques de priorisation pouvant être envisagées. Par exemple, le module 5D de sélection peut sélectionner comme politique de priorisation la combinaison formée de la politique POLI (suppression des paquets des flux vidéo des sessions non collaboratives), et POL3 (redirection de la session de transmission du terminal 2 vers le streamer 7 et modulation de la vitesse d'envoi des paquets au terminal 2 en fonction du débit dont dispose le terminal 2).  In yet another embodiment, the selection module 5D may select as a prioritization policy a combination of at least two policies selected from the POLI, POL2 and POL3 prioritization policies or other prioritization policies that may be contemplated. For example, the selection module 5D can select as the prioritization policy the combination formed of POLI policy (removal of video stream packets of non-collaborative sessions), and POL3 (redirection of the transmission session from terminal 2 to streamer 7 and modulation of the speed of sending the packets to the terminal 2 as a function of the bit rate available to the terminal 2).
On note qu'une seule politique de priorisation peut être définie par défaut au niveau du module de sélection 5D ou en variante, plusieurs politiques peuvent être définies et l'une d'elles sélectionnée en fonction de divers facteurs comme par exemple la charge du réseau d'accès (charge de la cellule à laquelle est rattachée le terminal 2), la nature de la session, ou encore plusieurs politiques peuvent être définies et hiérarchisées et sélectionnées ensuite suivant l'ordre ainsi établi.  Note that a single prioritization policy can be set by default at the 5D selection module or alternatively, several policies can be defined and one of them selected according to various factors such as network load access (load of the cell to which the terminal 2 is attached), the nature of the session, or several policies can be defined and prioritized and then selected according to the order thus established.
Suite à l'application de la politique sélectionnée POLI par le module de sélection 5D, une surveillance est maintenue par le dispositif de gestion 5 pour détecter si les critères conditionnant l'application de la priorisation des données relatives au flux vidéo du terminal 2 sont toujours respectés (étape test F130). Ces critères comprennent ici la vérification que la session de transmission VIDEO_S est toujours dans une période de démarrage (temporisateur non échu) et que le niveau de remplissage du buffer est inférieur au seuil de remplissage THR1. Ils peuvent aussi comprendre la vérification que les conditions de transmission du flux vidéo expérimentées par la session VIDEO_S sur le réseau sont toujours défavorables. Following the application of the selected policy POLI by the selection module 5D, a monitoring is maintained by the management device 5 to detect whether the criteria conditioning the application of the prioritization of the data relating to the video stream of the terminal 2 are still respected (F130 test step). These criteria here include checking that the transmission session VIDEO_S is still in a start period (timer not expired) and that the filling level of the buffer is below the filling threshold THR1. They may also include checking that the conditions of transmission of the video stream experienced by the VIDEO_S session on the network are still unfavorable.
Si l'un quelconque de ces critères n'est plus respecté (réponse non à l'étape test F130), la priorisation est interrompue (étape F40).  If any of these criteria is no longer met (answer no to the test step F130), the prioritization is interrupted (step F40).
Si tous les critères sont respectés (réponse oui à l'étape test F130), la priorisation est maintenue (étape F140). Dans le mode de réalisation décrit ici, le module de sélection 5D détermine alors si une mise à jour de la politique de priorisation est nécessaire, par exemple en fonction de l'état courant du buffer et/ou de conditions de transmission courantes du flux vidéo expérimentées lors de la session sur le réseau. Les informations courantes sur l'état du buffer et sur les conditions de transmission peuvent être obtenues via la session de signalisation SPUD_S et les informations MTG remontées périodiquement ou en temps réel par la station de base 4, comme indiqué précédemment (étapes E90, E100 et E110 de la figure 4).  If all the criteria are met (answer yes to the test step F130), the prioritization is maintained (step F140). In the embodiment described here, the selection module 5D then determines whether an update of the prioritization policy is necessary, for example as a function of the current state of the buffer and / or of the current transmission conditions of the video stream. experienced during the session on the network. The current information on the state of the buffer and on the conditions of transmission can be obtained via the signaling session SPUD_S and the MTG information reassembled periodically or in real time by the base station 4, as indicated previously (steps E90, E100 and E110 of Figure 4).
Ainsi par exemple, si l'état courant du buffer est toujours inférieur au seuil de remplissage THR1 à l'issue d'une période Tupd prédéterminée (inférieure bien entendu à la période de démarrage T), le module de sélection 5D peut sélectionner une nouvelle politique de priorisation, telle que par exemple la politique POL2 ou POL3 ou une combinaison des politiques POLI, POL2 et/ou POL3 suivant un ordre préétabli (étape F140).  For example, if the current state of the buffer is always less than the filling threshold THR1 at the end of a predetermined period Tupd (of course less than the start period T), the selection module 5D can select a new Prioritization policy, such as, for example, the POL2 or POL3 policy or a combination of POLI, POL2 and / or POL3 policies in a pre-established order (step F140).
Lorsque le temporisateur arrive à échéance, la priorisation est interrompue (étape F40). Le dispositif de gestion 5 notifie cette interruption dans un message de signalisation SPUD MESS(STOP POLI) émis dans la session SPUD_S (étape E120 de la figure 3). Ce message est par exemple un « advice » SPUD requérant l'interruption de l'application de la politique POLI (ou de la politique de priorisation en cours si celle-ci a été mise à jour pendant l'étape F140).  When the timer expires, the prioritization is interrupted (step F40). The management device 5 notifies this interruption in an SPUD MESS signaling message (STOP POLI) sent in the session SPUD_S (step E120 of FIG. 3). This message is for example a SPUD "advice" requiring the interruption of the application of the POLI policy (or of the current prioritization policy if it has been updated during step F140).
L'invention propose ainsi une technique (et une architecture à l'appui de cette technique) consistant à prioriser les données relatives à un flux vidéo transmis vers un terminal dans une session vidéo durant la période de démarrage de la session pour diminuer la latence perçue par l'utilisateur du terminal. On note que dans le mode de réalisation décrit ici, pour déterminer si la session vidéo est dans une période de démarrage, une durée T associée à cette période a été considérée et un temporisateur a été armé pour cette période. En variante, la période de démarrage peut être identifiée en fonction d'une quantité de données (ex. nombre de paquets de données) relatives au flux vidéo émise par le serveur de contenus et comparée à une quantité maximale prédéterminée.  The invention thus proposes a technique (and an architecture supporting this technique) of prioritizing the data relating to a video stream transmitted to a terminal in a video session during the start-up period of the session in order to reduce the perceived latency. by the user of the terminal. Note that in the embodiment described here, to determine if the video session is in a start period, a duration T associated with that period has been considered and a timer has been armed for that period. Alternatively, the start period may be identified based on a quantity of data (eg, number of data packets) relating to the video stream transmitted by the content server and compared to a predetermined maximum amount.

Claims

REVENDICATIONS
1. Procédé de gestion d'une session de transmission (VIDEO_S) d'un flux vidéo entre un serveur de contenus (3-1) et un terminal (2) via un réseau de télécommunications, ledit procédé de gestion comprenant, suite à une détection (F10) d'un démarrage de la session : A method of managing a transmission session (VIDEO_S) of a video stream between a content server (3-1) and a terminal (2) via a telecommunications network, said management method comprising, following a detection (F10) of a start of the session:
— une étape (F50) d'obtention d'informations représentatives de conditions de transmission du flux vidéo expérimentées lors de la session sur le réseau ;  A step (F50) for obtaining information representative of transmission conditions of the video stream experienced during the session on the network;
— si lesdites conditions de transmission ne sont pas considérées comme favorables (F60) :  - if said transmission conditions are not considered favorable (F60):
o une étape d'obtention (F90) d'un état courant d'un buffer utilisé par un module de restitution du terminal pour la restitution du flux vidéo et représentatif d'un niveau de remplissage du buffer ; et  a step of obtaining (F90) a current state of a buffer used by a rendering module of the terminal for the reproduction of the video stream and representative of a filling level of the buffer; and
o une étape de sélection (F110) d'au moins une politique de priorisation à appliquer à la transmission du flux vidéo vers le terminal tant que la session de transmission se trouve dans une période de démarrage au regard d'un critère prédéterminé et que le niveau de remplissage du buffer est inférieur à un seuil de remplissage prédéterminé.  a step of selecting (F110) at least one prioritization policy to be applied to the transmission of the video stream to the terminal as long as the transmission session is in a start-up period with regard to a predetermined criterion and the buffer fill level is below a predetermined fill threshold.
2. Procédé selon la revendication 1 dans lequel ledit état courant du buffer est obtenu à partir d'un message de signalisation émis par le terminal dans une session de signalisation (SPUD_S) établie avec le serveur de contenus en association avec la session de transmission du flux vidéo. 2. Method according to claim 1 wherein said current state of the buffer is obtained from a signaling message sent by the terminal in a signaling session (SPUD_S) established with the content server in association with the transmission session of the video stream.
3. Procédé selon la revendication 2 dans lequel le message de signalisation et la session de signalisation sont conformes au protocole SPUD. 3. Method according to claim 2 wherein the signaling message and the signaling session are in accordance with the SPUD protocol.
4. Procédé selon la revendication 2 ou 3 dans lequel la détection (F10) du démarrage de la session de transmission vidéo comprend une détection de l'établissement de la session de signalisation entre le terminal et le serveur de contenus. 4. The method of claim 2 or 3 wherein the detection (F10) of the start of the video transmission session comprises a detection of the establishment of the signaling session between the terminal and the content server.
5. Procédé selon l'une quelconque des revendications 2 à 4 comprenant en outre une étape préliminaire (F20,F30) de détermination si la session de signalisation associée à la session de transmission du flux vidéo est ou non une session dite collaborative, une politique de priorisation n'étant appliquée à la transmission du flux vidéo que si la session de signalisation est une session collaborative. 5. Method according to any one of claims 2 to 4 further comprising a preliminary step (F20, F30) of determining whether the signaling session associated with the transmission session of the video stream is or not a so-called collaborative session, a policy prioritization method applied to the transmission of the video stream only if the signaling session is a collaborative session.
6. Procédé selon l'une quelconque des revendications 1 à 5 dans lequel les étapes d'obtention d'un état courant du buffer et l'étape de sélection d'au moins une politique de priorisation sont conditionnées par la détection (F30) d'un jeton valide dans un message de signalisation émis par le terminal. 6. Method according to any one of claims 1 to 5 wherein the steps of obtaining a current state of the buffer and the step of selecting at least one prioritization policy are conditioned by the detection (F30) d a valid token in a signaling message sent by the terminal.
7. Procédé selon l'une quelconque des revendications 1 à 6 dans lequel ladite au moins une politique de priorisation est sélectionnée parmi au moins : The method of any one of claims 1 to 6 wherein said at least one prioritization policy is selected from at least:
— une politique de suppression de données émises sur le réseau et relatives à au moins un flux vidéo d'au moins une session de transmission établie avec au moins un autre terminal ;  A policy of deleting data transmitted on the network relating to at least one video stream of at least one transmission session established with at least one other terminal;
— une politique de suppression de données émises sur le réseau et relatives à au moins un flux vidéo d'au moins une session de transmission établie avec au moins un autre terminal lorsque ladite au moins une session de transmission présente une latence supérieure à un seuil de latence prédéterminé ; et  A policy of deleting data transmitted on the network relating to at least one video stream of at least one transmission session established with at least one other terminal when said at least one transmission session has a latency greater than a threshold of predetermined latency; and
— une politique d'adaptation d'une vitesse d'envoi vers le terminal, par un équipement intermédiaire entre le serveur de contenus et le terminal, des données relatives au flux vidéo de la session de transmission en fonction d'un niveau de remplissage d'un buffer de l'équipement intermédiaire et d'un débit du réseau expérimenté par le terminal. A policy of adapting a transmission speed to the terminal, by an intermediate device between the content server and the terminal, data relating to the video stream of the transmission session as a function of a filling level of a buffer of the intermediate equipment and a throughput of the network experienced by the terminal.
8. Procédé selon l'une quelconque des revendications 2 à 4 dans lequel la politique de priorisation sélectionnée est notifiée (F120) dans un message de signalisation émis dans la session de signalisation établie avec le serveur de contenus, ledit message de signalisation requérant l'application de ladite au moins une politique de priorisation par au moins un équipement intermédiaire entre le serveur de contenus et le terminal par lequel transite le flux vidéo. The method according to any one of claims 2 to 4 wherein the selected prioritization policy is notified (F120) in a signaling message sent in the signaling session established with the content server, said signaling message requesting the same. applying said at least one prioritization policy by at least one intermediate device between the content server and the terminal through which the video stream transits.
9. Procédé selon l'une quelconque des revendications 1 à 8 comprenant une étape de mise à jour (F140) de ladite au moins une politique de priorisation durant la période de démarrage de la session de transmission en fonction de l'état courant du buffer et/ou de conditions de transmission courantes du flux vidéo expérimentées lors de la session sur le réseau. 9. Method according to any one of claims 1 to 8 comprising a step of updating (F140) said at least one prioritization policy during the start period of the transmission session according to the current state of the buffer. and / or current transmission conditions of the video stream experienced during the session on the network.
10. Procédé selon l'une quelconque des revendications 1 à 9 comprenant :The method of any one of claims 1 to 9 comprising:
— durant l'application de ladite au moins une politique de priorisation sélectionnée, au moins une étape d'obtention (F130) d'informations représentatives de conditions de transmission du flux vidéo expérimentées lors de la session sur le réseau ; et During the application of said at least one selected prioritization policy, at least one step of obtaining (F130) information representative of transmission conditions of the video stream experienced during the session on the network; and
— une étape d'interruption (F40) de l'application de ladite au moins une politique de priorisation sélectionnée si lesdites conditions de transmission sont considérées comme favorables.  An interruption step (F40) of the application of said at least one selected prioritization policy if said transmission conditions are considered favorable.
11. Procédé selon l'une quelconque des revendications 1 à 10 dans lequel la session de transmission se trouve dans une période de démarrage si une période de temps écoulée depuis le démarrage de la session de transmission est inférieure à une période maximale prédéterminée ou une quantité de données relatives au flux vidéo émise par le serveur de contenus est inférieure à une quantité maximale prédéterminée. The method of any one of claims 1 to 10 wherein the transmission session is in a start-up period if a period of time elapsed since the start of the transmission session is less than a predetermined maximum period or a quantity data relating to the video stream transmitted by the content server is less than a predetermined maximum quantity.
12. Programme d'ordinateur (PROG) comportant des instructions pour l'exécution des étapes du procédé de gestion selon l'une quelconque des revendications 1 à 11 lorsque ledit programme est exécuté par un ordinateur. Computer program (PROG) comprising instructions for performing the steps of the management method according to any one of claims 1 to 11 when said program is executed by a computer.
13. Support d'enregistrement lisible par un ordinateur sur lequel est enregistré un programme d'ordinateur comprenant des instructions pour l'exécution des étapes du procédé de gestion selon l'une quelconque des revendications 1 à 11. A computer-readable recording medium on which a computer program is recorded including instructions for executing the steps of the management method according to any one of claims 1 to 11.
14. Dispositif de gestion (5) d'une session de transmission (VIDEO_S) d'un flux vidéo entre un serveur de contenus et un terminal via un réseau de télécommunications, ledit dispositif de gestion comprenant : 14. Device for managing (5) a transmission session (VIDEO_S) of a video stream between a content server and a terminal via a telecommunications network, said management device comprising:
— un module de détection (5A) d'un démarrage de la session ;  A detection module (5A) for starting the session;
— un premier module d'obtention (5B), activé sur détection d'un démarrage de la session par le module de détection et configuré pour obtenir des informations représentatives de conditions de transmission du flux vidéo expérimentées lors de la session sur le réseau ;  A first obtaining module (5B), activated on detection of a start of the session by the detection module and configured to obtain information representative of transmission conditions of the video stream experienced during the session on the network;
— des modules activés si lesdites conditions de transmission ne sont pas considérées comme favorables par le premier module d'obtention comprenant :  Modules activated if said transmission conditions are not considered favorable by the first obtaining module comprising:
o un deuxième module d'obtention (5C), configuré pour obtenir un état courant d'un buffer utilisé par un module de restitution du terminal pour la restitution du flux vidéo et représentatif d'un niveau de remplissage du buffer ; et  a second obtaining module (5C), configured to obtain a current state of a buffer used by a terminal rendering module for the reproduction of the video stream and representative of a level of filling of the buffer; and
o un module de sélection (5D), configuré pour sélectionner au moins une politique de priorisation à appliquer à la transmission du flux vidéo vers le terminal tant que la session de transmission se trouve dans une période de démarrage au regard d'un critère prédéterminé et que le niveau de remplissage du buffer est inférieur à un seuil de remplissage prédéterminé.  a selection module (5D), configured to select at least one prioritization policy to be applied to the transmission of the video stream to the terminal as long as the transmission session is in a start-up period with regard to a predetermined criterion and that the filling level of the buffer is less than a predetermined filling threshold.
15. Dispositif de gestion (5) selon la revendication 14 caractérisé en ce qu'il est compris dans un point d'accès (6) au réseau. 15. Management device (5) according to claim 14 characterized in that it is included in an access point (6) to the network.
16. Système de communication (1) comprenant : 16. Communication system (1) comprising:
— au moins un terminal (2) ;  At least one terminal (2);
— au moins un serveur de contenus (3-1), apte à fournir un flux vidéo audit terminal lors d'une session de transmission établie avec le terminal ; et  At least one content server (3-1) capable of supplying a video stream to said terminal during a transmission session established with the terminal; and
— un dispositif de gestion (5) de cette session de transmission selon la revendication 14 ; et — au moins un équipement intermédiaire (7, R) entre le serveur de contenus et le terminal par lequel transite le flux vidéo et apte à appliquer au moins une politique de priorisation sélectionnée par le dispositif de gestion le cas échéant pour ladite session de transmission.  A management device (5) for this transmission session according to claim 14; and at least one intermediate device (7, R) between the content server and the terminal through which the video stream transits and able to apply at least one prioritization policy selected by the management device if necessary for said transmission session. .
PCT/FR2017/051558 2016-06-30 2017-06-15 Method and device for managing a session for transmitting a video stream WO2018002469A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR1656270A FR3053556A1 (en) 2016-06-30 2016-06-30 METHOD AND DEVICE FOR MANAGING A TRANSMISSION SESSION OF A VIDEO STREAM
FR1656270 2016-06-30

Publications (1)

Publication Number Publication Date
WO2018002469A1 true WO2018002469A1 (en) 2018-01-04

Family

ID=57583157

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/FR2017/051558 WO2018002469A1 (en) 2016-06-30 2017-06-15 Method and device for managing a session for transmitting a video stream

Country Status (2)

Country Link
FR (1) FR3053556A1 (en)
WO (1) WO2018002469A1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2665239A1 (en) * 2012-05-14 2013-11-20 Alcatel-Lucent An adaptive streaming aware networks node, client and method with priority marking
US20150304737A1 (en) * 2014-04-17 2015-10-22 Samsung Electronics Co. Ltd. QoE PROVISIONING METHOD AND APPARATUS FOR MOBILE VIDEO APPLICATION

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2665239A1 (en) * 2012-05-14 2013-11-20 Alcatel-Lucent An adaptive streaming aware networks node, client and method with priority marking
US20150304737A1 (en) * 2014-04-17 2015-10-22 Samsung Electronics Co. Ltd. QoE PROVISIONING METHOD AND APPARATUS FOR MOBILE VIDEO APPLICATION

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SMITH H M ET AL: "FAIR LINK SHARING WITH LAYERED MULTICAST VIDEOCONFERENCING", GLOBECOM'00. 2000 IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE. SAN FRANCISCO, CA, NOV. 27 - DEC. 1, 2000; [IEEE GLOBAL TELECOMMUNICATIONS CONFERENCE], NEW YORK, NY : IEEE, US, vol. 3, 27 November 2000 (2000-11-27), pages 1360 - 1364, XP001195656, ISBN: 978-0-7803-6452-3 *

Also Published As

Publication number Publication date
FR3053556A1 (en) 2018-01-05

Similar Documents

Publication Publication Date Title
EP3155823B1 (en) Management, by an intermediate device, of the quality of transmission of a data stream to a mobile terminal
EP2025181B1 (en) System for accessing an ip television service in an ims architecture network
EP2366238B1 (en) Method and system for adjusting restarting traffic in a telecommunications network
FR3029376A1 (en) METHOD FOR PROCESSING A DATA DELIVERY REQUEST, DEVICE, PROXY MODULE, CLIENT TERMINAL AND COMPUTER PROGRAM
EP3646196B1 (en) Method and device for downloading audiovisual content
EP2332332A1 (en) Method and device for redirecting a data flow monitoring query
EP2706730B1 (en) Method and apparatus for suggesting applications
EP2550776B1 (en) Method for managing records in an ims network, and s-cscf server implementing said method
EP3469832B1 (en) Methods and devices for selecting a communication interface
WO2018002469A1 (en) Method and device for managing a session for transmitting a video stream
EP3314830B1 (en) Real-time web communication transmission profile adaptation
EP3149918B1 (en) Content downloading and network availability
FR2962284A1 (en) METHOD, DEVICE AND SYSTEM FOR MANAGING COMMUNICATION SESSIONS
EP3777106A1 (en) Method for managing a group of equipment, associated server and system
FR2984669A1 (en) Method for providing TV program to terminal equipment i.e. TV, involves utilizing metric for checking predetermined standard quality, and selecting identified source by intermediate device to provide digital video stream to equipment
FR3079095A1 (en) REDUCTION OF THE TRIGGER AFFECTING A VIDEO STREAM DIFFUSE IN CONTINUOUS.
EP3840300B1 (en) Reception of a data stream via a communication gateway
FR3019429A1 (en) METHOD AND DEVICE FOR CONTROLLING DOWNLOAD OF MULTIMEDIA CONTENT
EP3646578B1 (en) Method of media state synchronization
FR2979505A1 (en) Method for inserting intermediate equipment in communication channel connecting e.g. smartphones, of voice over Internet protocol communication system, involves transmitting modified response message to user terminal
EP4335144A1 (en) Configuration of a terminal
FR2988885A1 (en) DATABASE, HSS SERVER, AND INSPECTION SERVERS OF IMS NETWORK
EP2801178B1 (en) Dynamic method for determining a list of services in an sip network
WO2010112738A1 (en) Notification message transmission method, access sessions server and communications system
FR3127663A1 (en) Method of controlling access to an application service, method of processing a message controlling access to said service, devices, system and corresponding computer programs.

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17735216

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17735216

Country of ref document: EP

Kind code of ref document: A1