Method for optimizing the broadcasting of multicast content within a communication network implementing a plurality of network slices
The process enhances multicast content dissemination in 5G networks by enabling terminals to select preferred network slices and allowing the network to dynamically adjust, thereby optimizing resource usage and quality of service.
Patent Information
- Application Number
- PCT/EP2024/075717
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-09-29
- Filing Date
- 2024-09-16
- Publication Date
- 2025-04-03
AI Technical Summary
Current communication networks, especially those implementing 5G mobile networks, lack efficient means to manage traffic classification rules for accessing multicast slices, leading to complex network configurations and a high risk of errors during configuration operations.
The proposed process optimizes the dissemination of multicast content by allowing terminals to request membership in a multicast group with a preferred network slice, and the network dynamically determines the optimal target slice based on current network conditions, using adapted signaling and routing protocols.
This approach enables optimized delivery of multicast content by allowing sources and receivers to select preferred network slices based on their capabilities and context, while ensuring the network can dynamically adjust to optimize resource usage and quality of service.
Smart Images

Figure EP2024075717_03042025_PF_FP_ABST
Abstract
Description
Method for optimizing the distribution of multicast content within a communication network implementing a plurality of network slices.
[0001] The field of the invention is that of communications within at least one communication network, and in particular that of value-added IP services. More specifically, the invention relates to the implementation of content distribution services using a multicast transmission mode, in a communication network within which network slices are deployed. Prior art
[0002] The broadcasting of the same content to multiple users is a service commonly offered and implemented via current communication networks, for example in the context of the retransmission of cultural or sporting events (retransmission of a concert in a metaverse, retransmission of a live football match, etc.). On a technical level, the engineering of such broadcasting services is generally based on a transmission mode called "multicast" (sometimes also referred to as "multicasting" or "multicasting"). This mode is in fact particularly suited to group communication schemes, such as the broadcasting of content to several users (receivers), or the implementation of videoconferencing-type services between several users where each participant is in turn source or receiver.In Internet Protocol (IP) networks, multicast transmission relies on the calculation, establishment, and maintenance of distribution trees by a dynamic routing protocol, such as the Protocol Independent Multicast (PIM) protocol (RFC7761). A primary objective of implementing such distribution trees is to optimize network resources based on a deterministic data replication method.
[0003] Some recent communications networks, notably fifth-generation mobile networks (5G), also offer the operators who operate them the possibility of creating and deploying different network slices on the same physical infrastructure.
[0004] A network slice can be defined as a partition of the network, such as a virtual private network (VPN) deployed on fixed infrastructure, mobile infrastructure, or a combination of both.
[0005] The characteristics of a network slice are essentially expressed in terms of capacity (i.e. bandwidth), quality of service (e.g. latency or one-way transit time), security (e.g. preservation of the confidentiality of information transmitted within the slice), traffic isolation or availability. Thus, an operator has the possibility of configuring a plurality of network slices within a communication network; a slice or a group of slices being for example dedicated to the provision of particular services and / or to satisfying particular technical requirements, so that the traffic characteristic of these services can benefit from the best routing conditions.
[0006] Traditionally, traffic that can be routed within a network slice is subject to authorization (also called access control) to use the paths established within the slice in question. Such authorization is typically based on the application of traffic classification rules, generally applied by a network access point within which the network slices are deployed. Such an access point is a node located at the edge of the network, for example deployed in front of client access or used to connect a network to other neighboring networks. For example, this access point can be located at the connection interface of a gateway (for example a packet gateway, or "Packet Gateway" in English, for the most recent generations – 4G, 5G – of mobile networks) which provides access to the Internet network.Such an access point may also be located at the connection interface of a mobile terminal (or “User Equipment” or UE in English) to the radio access network (or “Radio Access Network” or RAN in English), in particular so as to optimize the use of radio resources depending on the type of network slice and the profile of the traffic that it is likely to carry.
[0007] In this context, the 3GPP organization has defined different types of network slices, with specific characteristics, including in particular:
[0008] - a first type of network slices allowing the provision of an improved mobile broadband service (“Enhanced Mobile BroadBand” or eMBB in English);
[0009] - a second type of network slices enabling a service to be offered as part of a (massive) deployment of the Internet of Things (mIoT); and
[0010] - a third type of network slices allowing the provision of an ultra-reliable, low-latency communications service (“Ultra Reliable Low Latency Communications” or URLLC in English).
[0011] The choice to design and deploy a given type of network slice is conditioned by the nature of the traffic characteristic of the applications or services used or subscribed to by a user. For example, a so-called "immersive" service that uses augmented or virtual reality techniques is generally very demanding in terms of latency and reliability of data exchanges: the use of URLLC type slices is therefore preferred for such an immersive service.
[0012] To access content broadcast in multicast on a communication network implementing network slices, a receiver (mobile terminal, personal computer, television set) must be able to connect to one or more network slices, which on the one hand host the distribution tree along which the traffic will be routed from the source to all the receivers, and on the other hand have characteristics reflecting those of the broadcast service(s). For example, one network slice will be designed and sized (in terms of bandwidth, one-way transit time, etc.) to carry traffic encoded by the source in high definition (HD), another slice to carry traffic encoded by the source in standard definition (SD), etc.
[0013] The variety of such "multicast" slices must not only be able to be signaled to receivers, whatever their nature, whatever their means of access to one or other of these slices and whether these receivers are in motion or not. It must also allow the broadcast traffic to be switched from one slice to another according to several considerations such as a possible congestion phenomenon, the access capacities of the receivers to one or other of the slices, the nature of the broadcast service to which a receiver has subscribed, etc. Such considerations make it possible in particular to dynamically adjust the traffic classification rules which govern the access of the receivers to one or other of these slices.
[0014] However, while tools – such as multicast group subscription protocols, dynamic multicast routing protocols, etc. – exist to facilitate the implementation of broadcast services based on the multicast transmission mode supported by IP networks, there is no way to simply manage traffic classification rules allowing access to “multicast” slots in the context of the emergence of 5G mobile networks, in particular. The implementation of such classification rules therefore currently involves complex network configurations, with a substantial risk of errors during the configuration operations in question.
[0015] There is therefore a need for a technique to optimize the distribution of multicast content within a communication network in which several network slices are deployed.
[0016] The present invention proposes a solution aimed at remedying certain drawbacks of the prior art. According to one aspect, the present invention relates to a method for optimizing the broadcasting of multicast content within a communication network implementing a plurality of network slices. According to the general principle of the proposed invention, such a method comprises:
[0017] - receiving, from a terminal connected to said network, a signaling message representing a request for said terminal to join a multicast group associated with the broadcasting of said multicast stream, said signaling message comprising a multicast address identifying said multicast group, and a network slice identifier representing a network slice preferred by said terminal for the routing of said multicast stream, called a candidate network slice;
[0018] - obtaining an identifier of a target network slice for routing said multicast flow, based on said candidate network slice identifier and data representative of a current state of said communication network;
[0019] - the connection of said terminal to a distribution tree of said multicast flow deployed in said target network slice.
[0020] In this way, the routing of content broadcast according to the multicast transmission mode within a communication network implementing network slices is optimized, in the sense that the invention provides the possibility for source and / or receiver terminals to transmit to the network, depending on their characteristics and / or technical capabilities and / or a local context, preferences concerning a slice to be favored for the routing of a multicast stream, while reserving the possibility for the network to take the decision to route the multicast stream on another slice, in particular depending on its current state, if it considers that another slice presents better conditions for routing said multicast stream.
[0021] In a particular embodiment, said candidate network slice identifier is encoded in said multicast address and / or included in a free data field of said signaling message.
[0022] In this way, it is possible to transparently and cleverly use classic multicast signaling exchanges to inform the network of a network slice to favor for routing a multicast stream.
[0023] According to a particular characteristic, said multicast group address is an IPv6 address, and said candidate network slice identifier is encoded within the "ff2" field of said IPv6 address.
[0024] This provides a way to transparently encode a network slice (or network slice type) identifier into an IPv6 address.
[0025] According to a particular characteristic, said multicast group address is an IPv4 address, and in that said encoding of the candidate network slice identifier is implemented by the selection of a specific multicast group address within the IPv4 space "239.0.0.0 / 10".
[0026] This provides a way to transparently encode a network slice (or network slice type) identifier into an IPv4 multicast address.
[0027] In a particular embodiment, said free data field of said signaling message further comprises information representative of a multicast stream coding supported by said terminal.
[0028] In this way, we have additional discriminating data allowing us to select a distribution tree to use within the target network slice, in the case where several distribution trees each associated with the routing of the multicast flow according to a particular encoding are hosted within this slice.
[0029] In a particular embodiment, said signaling message is a “Report” type message according to the IGMP signaling protocol (Internet Group Management Protocol, RFC 3376) or the MLD signaling protocol (Multicast Listener Discovery, RFC 3810), and said free data field is the “Auxiliary Data” auxiliary data field defined in said IGMP signaling protocol or a dedicated field for said MLD signaling protocol.
[0030] In this way, compatibility with the IGMP and MLD multicast signaling protocols widely used for implementing multicast broadcast services in an IP network is guaranteed.
[0031] In a particular embodiment, said connection of said terminal to a distribution tree of said multicast flow deployed in said target network slice takes into account said information representative of a multicast flow coding supported by said terminal, when such information is present in said free data field of said signaling message.
[0032] In a particular embodiment, said reception of a signaling message representative of a request for membership of said terminal to the multicast group associated with the broadcasting of said multicast stream follows the transmission of a signaling request message comprising a list of multicast groups known to the network, said list comprising at least said multicast group associated with the broadcasting of said multicast stream, identified by said multicast address, a network slice identifier being encoded in said multicast address and / or included in a free data field of said signaling request message.
[0033] In this way, classic multicast signaling exchanges are transparently and cleverly used to inform a terminal of the network slices available in the communication network to route a multicast stream.
[0034] In a particular embodiment, the connection of said terminal to a distribution tree of said multicast flow deployed in said target network slice comprises the transmission of a graft request message to said distribution tree according to a dynamic routing protocol, said graft request message comprising an identifier of said target network slice.
[0035] In this way, the dynamic routing protocol used to connect the terminal to a distribution tree takes into account a target network slice to be used for routing the multicast flow.
[0036] According to a particular characteristic, said graft request message further comprises data representative of an encoding of said multicast stream or representative of an absence of encoding information of said multicast stream.
[0037] In this way, the dynamic routing protocol used to connect the terminal to a distribution tree takes into account additional data concerning the encoding of the multicast stream in order to identify the distribution tree to be used to route the multicast stream, in particular in the case where several distribution trees are hosted in the target network slice,
[0038] According to a particular characteristic, said dynamic routing protocol is the PIM protocol (Protocol Independent Multicast (Sparse Mode), RFC 7761) and said graft request message is a “JOIN” type message according to said PIM protocol, said message being adapted to include a field comprising said identifier of said target network slice and said data representative of an encoding of said multicast flow, when said data representative of an encoding of said multicast flow is available.
[0039] In this way, the proposed invention is based on an adaptation of a recognized and widely used dynamic routing protocol for the implementation of multicast broadcasting services on an IP network.
[0040] In a particular embodiment, said method comprises, prior to said reception of a signaling message of the “Report” type, when said terminal is a source of broadcasting of said multicast stream:
[0041] - receiving, from said source terminal, a request to subscribe to an optimized broadcasting service, comprising data identifying said source terminal and data representative of technical capabilities supported by said source terminal;
[0042] - the transmission, to said source terminal, of a subscription confirmation message, comprising at least one association between a multicast address usable by said source terminal for the broadcasting of said multicast stream and a network slice identifier determined as being suitable for the broadcasting of said multicast stream on said communication network, based on said data representative of technical capabilities supported by said source terminal.
[0043] In this way, a preliminary step of subscribing to the optimized broadcasting service can be initiated by a source terminal upstream of the broadcasting of any content, allowing for example the source terminal to obtain relevant and targeted technical information on the resources available within the communication network, in particular information on the network slices which are of particular interest to this source terminal, because selected on the basis of technical characteristics and capacities associated with this source terminal and the underlying service.
[0044] According to a particular characteristic of this embodiment, said association is implemented by encoding, in said multicast address usable by said source terminal for the broadcasting of said multicast stream, said network slice identifier determined as being suitable for the broadcasting of said multicast stream.
[0045] In this way, a multicast address as such allows to define both a multicast group and a network slice, for the routing of a multicast flow within the communication network.
[0046] According to another aspect, the invention relates to a method for joining a terminal to a multicast group associated with the broadcasting of a multicast stream within a communication network implementing network slices, said method being implemented at said terminal, said method comprising:
[0047] - obtaining, from a message received from said network, at least one network slice identifier available for routing a multicast stream;
[0048] - the transmission, to said network, of a signaling message representative of a request for membership of said terminal to said multicast group, said signaling message comprising a network slice identifier representative of a network slice preferred by said terminal for the routing of said multicast flow, called candidate network slice, selected from said at least one network slice identifier available for said routing.
[0049] In this way, a source or receiver terminal is able to select by itself a network slice optimized for the routing of a multicast stream, depending for example on its own technical capabilities (e.g. encoding or decoding).
[0050] In a particular embodiment:
[0051] - said at least one available network slice identifier is extracted by said terminal from at least one multicast address included in said received message, within which it is encoded; and / or
[0052] - said at least one candidate network slice identifier is encoded by said terminal within at least one multicast address identifying said multicast group, transmitted in said signaling message.
[0053] In this way, the terminal is fully compatible with the new multicast address structuring according to the invention, whether when it comes to extracting a network slice identifier encoded in such an address, or constructing a multicast address encoding such information.
[0054] According to another aspect, the invention relates to a router entity capable of implementing the method for optimizing the broadcasting of a multicast stream described above. Such an entity may of course have the various characteristics relating to the optimization method according to the invention, which may be combined or considered in isolation. Thus, the characteristics and advantages of this entity are the same as those of the optimization method and are not detailed further.
[0055] According to another aspect, the invention relates to a terminal (source or receiver) capable of implementing the method of joining a multicast group described above. Such a terminal may of course have the various characteristics relating to the joining method according to the invention, which may be combined or considered in isolation. Thus, the characteristics and advantages of this entity are the same as those of the joining method and are not detailed further.
[0056] According to another aspect, the proposed invention also relates to a computer program product downloadable from a communication network and / or stored on a computer-readable medium and / or executable by a microprocessor, comprising program code instructions for the execution of at least one of the methods as described previously in any of its embodiments, when this method is executed on a computer.
[0057] The proposed invention also relates to a computer-readable recording medium on which is recorded a computer program comprising program code instructions for executing the steps of the methods as described above, in any of their embodiments.
[0058] Such a recording medium may be any entity or device capable of storing the program. For example, the medium may include a storage medium, such as a ROM, for example a CD ROM or a microelectronic circuit ROM, or a magnetic recording medium, for example a USB flash drive or a hard disk.
[0059] On the other hand, such a 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, so that the computer program contained therein is remotely executable. The program according to the invention may in particular be downloaded over a network, for example the Internet.
[0060] The various embodiments mentioned above can be combined with each other to implement the invention. Figures
[0061] Other characteristics and advantages of the invention will appear more clearly on reading the following description of a particular embodiment, given as a simple illustrative and non-limiting example, and the appended drawings, among which:
[0062] schematically presents the different stages of a method for optimizing the broadcasting of multicast content within a communication network implementing a plurality of network slices, in a particular embodiment of the proposed invention;
[0063] schematically illustrates the implementation of dedicated network slices for the routing of multicast flows according to particular encodings, in a particular embodiment of the proposed invention;
[0064] illustrates an example of a mechanism for subscribing a source to an optimized multicast streaming service, in a particular embodiment of the proposed invention;
[0065] describes an example of a particular IPv4 address formalism, in a particular embodiment of the proposed invention;
[0066] describes an example of a particular IPv6 address formalism, in a particular embodiment of the proposed invention;
[0067] illustrates an example of formalism of an IGMP signaling message of type “Query”, in a particular embodiment of the proposed invention;
[0068] illustrates an example of formalism of an IGMP signaling message of type “Report”, in a particular embodiment of the proposed invention;
[0069] illustrates an example of formalism of an “Auxiliary Data” attribute of an IGMP signaling message of type “Query” or “Report”, in a particular embodiment of the proposed invention;
[0070] illustrates an example of formalism of a PIM “Join” type message, in a particular embodiment of the proposed invention;
[0071] illustrates an example of formalism of a new attribute of a PIM “Join” type message, in a particular embodiment of the proposed invention;
[0072] schematically presents the different steps of a method for joining a terminal to a multicast group associated with the broadcasting of a multicast stream within a communication network implementing network slices, in a particular embodiment of the proposed invention;
[0073] describes a simplified architecture of the different entities for the implementation of the proposed invention. Detailed description of the invention
[0074] 1. General principle – process implemented on the network side
[0075] The invention described below makes it possible to overcome some of the aforementioned drawbacks.
[0076] The proposed mechanism makes it possible in particular to manage in an optimized manner the routing of multicast contents within a communication network implementing network slices. To this end, according to the general principle of the invention and as detailed below, various adaptations of the protocols for subscribing a terminal (source or receiver) to a multicast group and dynamic multicast routing protocols for a multicast stream routed within a network are proposed, as well as a particular structuring of the multicast addresses.
[0077] It should be noted that the present invention can be implemented independently:
[0078] - the nature of the content disseminated by the sources;
[0079] - encoding capabilities possibly associated with the distribution of such content;
[0080] - access capabilities of receiving terminals to networks which support said multicast network slices;
[0081] - the nature of these networks (which may be fixed and / or mobile);
[0082] - engineering choices made with regard to the design, deployment and operation of multicast network slices.
[0083] In all figures in this document, elements and steps of the same nature are designated by the same numerical reference.
[0084] In the following, the term "network slice" should be understood as being able to relate not only to a particular network slice, but also to a type of network slice. Thus, although the general principle of the invention and its various embodiments are hereinafter generally described and claimed as relating to "network slices", they apply equally and indifferently when a "type of network slice" is considered, rather than a particular network slice (a "network slice identifier" should then be understood as "a network slice type identifier", etc.).
[0085] According to a first aspect, the present invention relates to a method for optimizing the broadcasting of a multicast stream within a communication network implementing network slices. Such a method, illustrated by the, is implemented by a router device (more simply called a router hereinafter) of the communication network, typically located at the edge of the network (and which can be qualified as such as access routers, or border routers).
[0086] In a step 11, such a router receives, from a terminal connected to the network, a signaling message representing a request for this terminal to join a multicast group associated with the broadcasting of a multicast stream, this signaling message conventionally comprising a multicast address identifying said multicast group. According to the usual terminology of multicast signaling protocols, such a signaling message is referred to as a “Report” type message, this aspect being detailed later in this document. Such a signaling message may be sent by a source terminal broadcasting the multicast stream or by a receiver terminal to announce that it wishes to receive (or continue to receive) the multicast stream in question.According to the general principle of the present invention, this signaling message comprises a network slice identifier (or a network slice type identifier), representative of a candidate network slice (respectively of a candidate network slice type) favored by said terminal for routing the multicast stream within the communication network. When the terminal is a source, the network is thus notified of a desire of this terminal to use a particular slice (respectively a particular slice type) of the network to transmit the emitted multicast stream, for example because this terminal is aware of the existence of a slice (respectively of a network slice type) that it considers appropriate for such transmission. For example, a source terminal SRC capable of encoding the same multicast content in different definitions (SD, HD, 4k, 8k, etc.) is thus able to select a network slice optimized for the transmission of the SD encoded stream, another network slice for the transmission of the 8k encoded stream, etc., as illustrated by the. Similarly, when the terminal is a receiver, the network is thus notified of a wish of this terminal to connect to a particular slice of the network for the reception of the stream, for reasons which may for example be identical to those mentioned previously (e.g., depending on its decoding capabilities).
[0087] In a step 12, the router obtains a target network slice identifier for routing the multicast flow, based on the candidate network slice identifier (or candidate network slice type) received in step 11 and data representative of a current state of said communication network.
[0088] More particularly, in relation to this step 12, the network determines whether the candidate network slice (or type of network slice) as identified in a signaling message received from a terminal is indeed an optimal network slice for routing the multicast stream, taking into account in particular a current state of the network resources (for example according to information relating to the availability or unavailability of certain network slices at the time of reception of this signaling message).
[0089] Such a determination may be made by the router responsible for processing the “Report” message, or, alternatively, by a communication network control device (more simply called a controller or network controller in this document), for example upon request from the router, on the basis of data received from various control devices deployed within the network (e.g. software probes). Data representative of a current state of the communication network includes, for example, data indicating the unavailability or congestion of certain slices, excessively long latency times measured on certain slices, excessively long unidirectional transit times, excessively high data loss rates, etc., which constitute all indicators likely to encourage a switch from one slice to another (in particular if these indicators deteriorate over time, for example).For example, an increasing number of receivers may cause traffic overload in the access network, which may cause processing slowdowns that may degrade the quality of the broadcast service as perceived by the user (e.g. pixelation, frozen image, or black screen).
[0090] Thus, although having received from a terminal a wish to use a particular network slice for broadcasting and / or receiving the multicast stream, a network device can evaluate – for example on the basis of various indicators, and / or when a predetermined level of quality of service is not achieved for the candidate slice – that this choice is not the most appropriate or the most optimal, and take the decision to route the multicast stream on another slice, called the target slice. In one embodiment, when possible (i.e. if such a slice exists), the target network slice chosen by the network is a slice satisfying at least the technical requirements of the candidate slice (for example in terms of latency or reliability of data exchanges), so as not to degrade the performance and / or the quality of the broadcast service compared to the candidate slice initially selected by a terminal.
[0091] In a particular embodiment, step 12 may be associated with a complementary traffic classification step, in which a network device (for example a border router) may, on the basis of criteria such as presented previously or other criteria, decide to classify the traffic by an appropriate marking, or classification criterion, different from the identifier of the target slice.
[0092] In a step 13, the router connects the terminal to a distribution tree of said multicast flow deployed in the target network slice determined in step 12 (which may be either the candidate slice, or another slice, depending on the result of this step 12), for routing the multicast flow. Such a connection step is based on the use of a dynamic multicast routing protocol adapted to take into account a network slice identifier and a possible classification criterion, as detailed later in this document.
[0093] In other words, the general principle of the present invention is based on:
[0094] - an adaptation of a signaling protocol used by a terminal to subscribe to a multicast group, consisting of allowing the terminal to request the use of a particular slice, called a candidate slice, for the broadcasting or recovery of the multicast stream associated with the multicast group (step 11 of the);
[0095] - a decision by a network element (typically an access router or a controller), in order to determine whether the candidate slice is suitable or not, depending on a current state of the communication network, for routing the multicast stream from or to the terminal in question, and, if not, a determination and selection of another network slice guaranteeing optimized broadcasting, called the target slice (step 12 of the);
[0096] - an adaptation of a dynamic multicast routing protocol, so as to make it possible to direct the multicast flow towards the target slice, or even towards the most appropriate distribution tree within this slice if several trees are deployed there (step 13 of the).
[0097] This general principle having been explained, we now turn to different embodiments of the present invention, in particular with regard to the signaling and routing aspects (steps 11 and 13). 2. Signaling
[0098] As described above, a first aspect of the proposed technique relates to adaptations of the signaling mechanisms. In this context, different embodiments are presented subsequently for:
[0099] - on the one hand, inform a terminal of the network's capabilities for conveying a multicast stream, so that the terminal can determine the slice (or type of slice) that it wishes to prioritize (i.e. the candidate slice), possibly based on its own technical capabilities (e.g. encoding or decoding capabilities) and / or a current local context (occasional unavailability of certain interfaces of the terminal, for example), to broadcast or receive a multicast stream;
[0100] - on the other hand, once this candidate slice has been determined, transmit this information to the network.
[0101] 2.1. Inform a terminal of the network slices deployed in the network
[0102] Two mechanisms (which can possibly be implemented in a complementary manner) are proposed to signal to terminals wishing to broadcast or access a multicast stream the variety of network slices available in the network for this purpose, as well as the technical capacities associated with them, if applicable.
[0103] 2.1.1. First mechanism: subscription upstream of signaling
[0104] A first mechanism takes the form of a subscription phase to the optimized multicast streaming service according to the proposed invention, implemented upstream of the conventional signaling operations by which a terminal manifests its intention to join a multicast group. Such a subscription phase, illustrated by the, concerns a source terminal SRC wishing to broadcast multicast content via the communication network implementing network slices, according to the example of the. In such a particular embodiment, the capacity of the network to implement optimized broadcasting according to the present invention is for example exposed by the network by means of a dedicated application programming interface (API).According to a particular feature, a dynamic negotiation protocol such as the CPNP protocol (Connectivity Provisioning Negotiation Protocol, RFC8921) is used to expose such an interface, the network hosting a CPNP server while the source terminal (typically an application server) embeds a CPNP client. This example is however not limiting, and other protocols such as for example the RESTCONF protocol (RFC8040) can also be used to expose this API.
[0105] The SRC source wishing to subscribe to the optimized broadcasting service transmits, by means of the dedicated API previously described, an SBSC subscription request, comprising at least one source identifier, typically an IP address (possibly associated with a port number) at which the SRC source for multicast content broadcasting can be contacted. According to a particular characteristic, the SBSC subscription request also comprises data representative of encoding capabilities (e.g. SD, HD, 4k, or 8k) supported by the source.
[0106] Upon receipt of an SBSC subscription request, a network element such as a controller identifies, based on the information transmitted in the subscription request, at least one network slice deployed within it and suitable for routing multicast streams emitted by the source. If necessary, a new slice may be created for this purpose. The decision to instantiate a new slice depends on a policy local to the network operator.
[0107] In response to the subscription request, the network sends to the source an ACK_SBSC message confirming the successful subscription to the service, and a list (i.e. at least one) of multicast addresses that can be used by the source to broadcast content, each multicast address being associated with a particular network slice implemented on the communication network. Data representing technical characteristics associated with each slice (or type of slice) are also communicated to the SRC source. For example, the network informs a source or a receiver of the existence within it of network slices dedicated to the delivery of SD, HD, 4k, 8k, etc. content.
[0108] In this way, the source terminal has, through such a subscription phase, a first mechanism allowing it to have knowledge of the network slices available within the network to broadcast a multicast stream, as well as their technical characteristics and the associated multicast addresses.
[0109] 2.1.2. Second mechanism: adaptation of “Query” type signaling messages
[0110] A second mechanism is based on an adaptation of the signaling operations by which a terminal manifests its intention to join a multicast group.
[0111] It should be recalled that, in a conventional manner, in the context of a multicast transmission mode, signaling messages are exchanged between the network and the terminals (source and / or receiver) that wish to join a multicast group, and that different signaling protocols exist for this purpose, such as, for example, the IGMP protocol ("Internet Group Management Protocol", RFC3376) in the context of an IPv4 environment, or the MLD protocol ("Multicast Listener Discovery", RFC3810) in the context of an IPv6 environment. These existing signaling protocols are based on similar operating principles: a device requesting information from the communication network, typically a router, regularly sends "Query" type messages (i.e. "Request" type, in French) to the receivers connected to the network (via a multicast address available for this purpose, for example the address 224.0.0.1 in the case of IGMP signaling), which receivers can form "Report" type messages in response to join a particular group, and thus indicate that they wish to receive the multicast stream associated with this group. A "Report" type message explicitly provides the reachability information of the source or receiver (typically an IP address) as well as the multicast group address(es) to which the source broadcasts the content or to which the receiver wishes to access.
[0112] Thus, as an alternative or complementary manner to the first subscription mechanism presented previously, it is notably proposed to enrich the “Query” type messages conventionally sent to terminals connected to the communications network, so that these signaling messages include, in addition to the conventional information representative of the multicast groups known to the requesting router (“IGMP / MLD Querier” in English), additional data representative of the network slices available for accessing the multicast flows, possibly supplemented by information on the technical capabilities of these slices.
[0113] It should be noted that the second mechanism which has just been described (adaptation of “Query” type signaling messages) can be used to communicate such information relating to the slots available in a communication network both to a broadcast source for the transmission of multicast streams and to a receiving terminal wishing to subscribe to them.
[0114] According to the proposed technique, such data are transmitted according to a particular formalism, described later in point 2.3 of this document.
[0115] 2.2. Inform the network of the preferred candidate slice by a terminal
[0116] Having presented the mechanisms enabling the network to inform a terminal of the slots available to route a multicast stream, another issue relates to the way in which a terminal indicates in return to the communication network the network slot that it wishes to use in a preferred manner to broadcast or receive a multicast stream.
[0117] It is proposed, according to the general principle of the present invention, to transmit this information within a signaling message of the “Report” type transmitted by the terminal to the requesting router (“IGMP / MLD Querier”), also adopting here the particular formalism mentioned previously and defined below.
[0118] 2.3. Proposed formalism for the integration of information identifying network slices within signaling messages
[0119] Two alternative or complementary solutions are described below, in various particular embodiments of the present invention, in order to enrich signaling messages of the “Query” or “Report” type with information relating to the network slices available in the communication network (for “Query” type messages) or with information relating to the network slices selected by a terminal to broadcast or access a multicast stream (for “Report” type messages).
[0120] As shown below, these solutions have the particular advantage of maintaining a certain compatibility with existing multicast signaling protocols, notably the IGMP and MLD protocols widely used for setting up multicast broadcast services on an IP / MPLS network.
[0121] A first solution consists in using multicast group addresses of a particular format to transmit transparently at the protocol level information identifying available and / or to be used network slices. This approach makes it possible to associate a multicast address with a network slice (or a type of network slice) in an algorithmic manner, thus allowing the different elements (sources, receivers, routers, controllers) to extract information characteristic of the associated network slice. More particularly, it is proposed according to this first solution to create an association between a multicast address and a network slice identifier (or a type of network slice), by cleverly encoding directly this network slice identifier (or type of slice) in the multicast address in question. In this way, it is not necessary to modify the way in which the signaling messages are constructed (i.e.their format). In the following, the description uses an example implementation of the invention which is based on the use of a network slice identifier but the procedure also applies when a slice type is used.
[0122] For example, according to a particular characteristic and as illustrated in relation to the, when the multicast group address is an IPv4 address, it is proposed to select a specific multicast group address within the IPv4 space 239.0.0.0 / 10 in order to encode therein a particular slice identifier S_ID, such a format then relying on the use of multicast addresses of extended administrative scope as documented in the RFC2365 standard.
[0123] According to another particular characteristic and as illustrated by the, when the multicast group address is an IPv6 address, it is proposed to encode the slice identifier within a particular field of this address, e.g. in all or part of the 4 bits of the "ff2" field of said IPv6 address (bits 17 to 20) as defined in the RFC7371 standard. Note that in this context, other fields of the IPv6 address (typically the "fff1", "plen" and "network prefix" fields) can also be used to determine the address of rendezvous points ("Rendezvous Point" or RP in English) hosted within a network slice identified by the identifier carried in the "fff2" field of this new IPv6 multicast address format.This last aspect refers to the case where multicast engineering is based on the calculation, establishment and maintenance of distribution trees whose root is an RP (several RPs can be hosted within a network slice), according to an engineering typical of an ASM mode ("Any Source Multicast") often chosen for the deployment of videoconferencing services or any other broadcast service characterized by a source / receiver heuristic. Conversely, the engineering of "general public" broadcast services (television program broadcasting services for example) is typical of the SSM mode ("Source Specific Multicast") which leads to the deployment of trees whose root is the broadcast source ("Shortest Path Tree" or SPT) itself, a case that the format of the also allows to cover, for example by setting the "plen" and "network prefix" fields to zero.
[0124] In this way, the identifier of a network slice for routing a multicast stream is directly encoded in the multicast group address associated with this content. The construction and availability of such addresses may for example have been communicated by the communication network to the terminals likely to use them by means of one or other of the two mechanisms previously described (subscription or adaptation of signaling messages of the “Query” type).
[0125] This first solution lends itself well to communication networks configured such that each available multicast network slice implements a single multicast distribution tree. Indeed, as recalled in relation to the prior art, a communication network organized in slices can comprise a plurality of network slices capable of conveying the same multicast content, for example, in the case of conveying a video stream, a network slice designed and sized (in terms of bandwidth, one-way transit time, etc.) to convey traffic encoded in 4K, another network slice designed and sized (in terms of bandwidth, one-way transit time, etc.) to convey traffic encoded in high definition (HD), yet another to convey traffic encoded in standard definition (SD), etc. In this case, each network slice hosts its own multicast content distribution tree.However, it is also possible, depending on the design choices and / or network configuration, for the same network slice to host several distribution trees for the same multicast content. For example, a distribution tree used to deliver 4K encoded content and another distribution tree used to deliver high-definition encoded content can be deployed within the same slice of the communication network. It may then be useful to have additional criteria, in addition to a network slice identifier, so that the network is able to identify a particular distribution tree to use within a slice for the broadcast of the multicast stream.
[0126] Furthermore, the first solution described above raises the question of the ability of certain terminals to be able to identify a particular multicast address formatted according to this invention and to be able to thus extract a slice identifier therefrom. Although, in one embodiment of the proposed invention, it is provided that the source or receiver terminals are adapted to take into account such a new format, it is appropriate to ensure a certain compatibility with terminals which do not have means enabling them to detect such a particular format.
[0127] Also, a second solution, alternative or complementary to the first, consists of using a free data field of the signaling messages (of the “Query” and / or “Report” type) to transmit more explicitly the slice identifier (or slice type) associated with a multicast stream and, where appropriate, to accompany this information with additional data, typically data representative of an encoding of the multicast stream.
[0128] According to the particular embodiments of the proposed invention, such an adaptation can be implemented:
[0129] - in “Query” type signaling messages, when it is a question, for example, of (i) informing a source terminal of the existence within the communication network of slots dedicated to the routing of multicast flows according to particular encodings; or (ii) informing a receiving terminal which would not have the capacity to identify that a multicast address transmitted in such a message is defined according to a particular formalism (i.e. that it contains a network slot identifier associated with the broadcasting of the multicast flow) of the network slots available for the reception of a multicast flow;
[0130] - in “Report” type signaling messages, when it is a question, for example, of communicating additional information to the network enabling it to identify, among several distribution trees deployed on the same slice, the one to be used to route the multicast flow.
[0131] Figures 6, 7 and 8 illustrate the implementation of this second solution in the context of signaling messages according to the IGMP signaling protocol, and more particularly the use of the auxiliary data field "Auxiliary Data" defined in this protocol to convey such information (an implementation according to a similar principle can also be implemented in the context of signaling messages according to the MLD protocol). More particularly:
[0132] - presents the format of an IGMP message of type “Query” where the auxiliary data field “Auxiliary Data” is visible;
[0133] - presents the format of an IGMP message of type “Report” where the auxiliary data field “Auxiliary Data” is visible;
[0134] - shows how the auxiliary data field can more specifically be formatted to include information relating to a network slice identifier SID (for “Slice Identifier” in English) and to a possible associated encoding ENCOD_TYPE (including for example data representing a particular encoding – SD, HD, 4k, 8k, etc. – of the multicast stream, or data representing an absence of encoding information of said multicast stream for example when the ENCOD_TYPE attribute is set to the value zero). 3. Routing
[0135] At the end of steps 11 and 12 as presented in relation to the, the router which implements the method has identified the target network slice to which it must connect the terminal for optimized routing of the multicast flow. To carry out such a connection in practice, it is proposed according to the present invention to adapt the routing protocol of the multicast flow. More particularly, it is proposed to adapt the graft request messages to a distribution tree conventionally defined according to such a protocol in order to add information making it possible to identify the network slice (or the type of slice) in which the targeted distribution tree is hosted. A graft request message, generally referred to as a “Join” type message, aims to connect a terminal to the distribution tree responsible for routing the traffic corresponding to the multicast flow in question.Such a graft then allows, for example, a receiving terminal to receive the selected content. Thus, according to a particular characteristic of the proposed invention, the identifier of the target network slice as obtained in step 12 is added to the graft request message. Insofar as the same network slice is also likely to host several distribution trees (for example, a tree for SD broadcasting and another for HD broadcasting), it is also proposed, according to another particular characteristic of the proposed invention, to add, in addition to the target network slice identifier, at least one useful discriminating data item in the case where knowledge of a target network slice would not be sufficient to uniquely identify a distribution tree for the optimized broadcasting of the multicast stream.Such discriminating data may, for example, take the form of data representative of a particular encoding of said multicast stream or representative of an absence of encoding information of said multicast stream. In a complementary manner, according to a particular characteristic, a classification criterion as presented previously in relation to the may also be added in the graft request message, and be, for example, encoded in a multicast group address included in this message or inserted in a particular field of this message. Via the dynamic routing protocol, such a classification criterion is thus propagated to the routers responsible for routing the multicast stream, which may, if necessary, depending on this criterion and on the basis of other possible criteria, implement various processing operations including, for example, operations for switching the routing of the multicast stream to other slots.
[0136] In a particular embodiment, the routing protocol is the PIM protocol ("Protocol Independent Multicast", RFC7761), and the graft request message takes the form of a PIM "Join" type message whose general format is illustrated by the,This message includes a new MSLICE attribute identifying in particular the network slice hosting the distribution tree to which the router wishes to graft itself. According to a particular characteristic illustrated by the, this new attribute is encoded according to a Type / Length / Value formalism (TLV, RFC5384), the SID field (for "Slice Identifier", in English) comprising the identifier of the target network slice and the ENCOD_TYPE field possibly comprising data representative of a particular encoding (SD, HD, 4k, 8k, etc.) of the multicast stream, or data representing an absence of encoding information of said multicast stream (for example when the ENCOD_TYPE attribute is set to the value zero (“0”)), according to characteristics already presented previously. The grafting procedure to the distribution tree identified by such a PIM “Join” message is then carried out according to the classic mechanism of the PIM-SM protocol (“PIM Sparse Mode”). 4. Process implemented on the terminal side
[0137] According to another aspect, the invention also relates to a method for joining a terminal to a multicast group associated with the broadcasting of a multicast stream within a communication network implementing network slices. Such a method, illustrated in a particular embodiment, is implemented by a terminal connected to the network, this terminal wishing to broadcast (source terminal) or receive (receiver terminal) the multicast stream.
[0138] In a step 111, the terminal obtains, from a message received from the network, at least one network slice identifier available for routing a multicast stream. As described previously for the broadcast optimization method implemented on the network side, such a message may for example take the form of a “Query” type signaling message (i.e. “Request” type, in French), or a message confirming the terminal's subscription to an optimized multicast stream broadcast service offered by the network.
[0139] In a step 112, the terminal transmits to the network a signaling message (typically a “Report” type signaling message) representative of a request to join the multicast group associated with the broadcasting of the multicast stream, this signaling message comprising a network slice identifier representative of a network slice preferred by the terminal for the routing of said multicast stream, called a candidate network slice, selected from the network slice identifiers available for said routing obtained in step 111. Such a selection of a candidate slice may in particular be carried out as a function of technical characteristics of the terminal (such as for example its capabilities for encoding and / or decoding a multicast stream), or even a current state of said terminal (for example the unavailability or congestion of some of its network interfaces).
[0140] According to a particular characteristic of the invention, the terminal which implements the membership method is a terminal adapted to support the new special multicast address format presented previously in the context of the description of the broadcast optimization method implemented on the network side, according to which a network slice identifier can be encoded directly in a multicast address. When the terminal (source or receiver) is thus configured, in a particular embodiment of the invention:
[0141] - at least one network slice identifier available for routing a multicast stream is extracted by the terminal from at least one multicast address included in the message received from the network in step 111, within which it is encoded; and / or
[0142] - at least one candidate network slice identifier is encoded by the terminal within at least one multicast address identifying said multicast group, transmitted in said signaling message sent to the network in step 112. 5. Devices
[0143] Finally, we present, in relation to the simplified structures of an entity, for example a router of a communication network or a source or receiver terminal, according to at least one embodiment described above.
[0144] As illustrated by the, such an entity comprises at least one memory 121 comprising a buffer memory, at least one processing unit 122, equipped for example with a programmable computing machine or a dedicated computing machine, for example a processor P, and controlled by the computer program 123, implementing steps of at least one method according to at least one embodiment of the invention.
[0145] Upon initialization, the code instructions of the computer program 123 are for example loaded into a RAM memory before being executed by the processor of the processing unit 122.
[0146] If the entity is a network entity (for example a router) of the communication network implementing network slices, the processor of the processing unit 122 implements steps of the method for optimizing the broadcasting of a multicast stream within said network as described previously, according to the instructions of the computer program 123, to:
[0147] - receive, from a terminal connected to said network, a signaling message representing a request for said terminal to join a multicast group associated with the broadcasting of said multicast stream, said signaling message comprising a multicast address identifying said multicast group, and a network slice identifier representing a network slice preferred by said terminal for the routing of said multicast stream, called a candidate network slice;
[0148] - obtaining an identifier of a target network slice for routing said multicast flow, based on said candidate network slice identifier and data representative of a current state of said communication network;
[0149] - connecting said terminal to a distribution tree of said multicast flow deployed in said target network slice.
[0150] If the entity is a terminal connected to said communication network, typically a source terminal wishing to broadcast a multicast stream or a receiver terminal wishing to receive it, the processor of the processing unit 122 implements steps of the method of joining a multicast group described previously, according to the instructions of the computer program 123, to:
[0151] - obtaining, from a message received from said network, at least one network slice identifier available for routing a multicast stream;
[0152] - transmitting, to said network, a signaling message representing a request for said terminal to join said multicast group, said signaling message comprising a network slice identifier representing a network slice preferred by said terminal for routing said multicast stream, called candidate network slice, selected from said at least one network slice identifier available for said routing.
Claims
Method for optimizing the broadcasting of a multicast stream within a communication network implementing network slices, said method being characterized in that it comprises: - receiving (11), from a terminal connected to said network, a signaling message representative of a request for membership of said terminal to a multicast group associated with the broadcasting of said multicast stream, said signaling message comprising a multicast address identifying said multicast group, and a network slice identifier representative of a network slice favored by said terminal for the routing of said multicast stream, called candidate network slice; - obtaining (12) an identifier of a target network slice for the routing of said multicast stream, as a function of said candidate network slice identifier and data representative of a current state of said communication network;- the connection (13) of said terminal to a distribution tree of said multicast flow deployed in said target network slice.; Method according to claim 1, characterized in that said candidate network slice identifier is encoded in said multicast address and / or included in a free data field of said signaling message. Method according to claim 2, characterized in that said multicast group address is an IPv6 address, and in that the candidate network slice identifier is encoded within the ff2 field of said IPv6 address. Method according to claim 2, characterized in that said multicast group address is an IPv4 address, and in that said encoding of the candidate network slice identifier is implemented by selecting a specific multicast group address within the IPv4 space 239.0.0.0 / 10. Method according to claim 2, characterized in that said signaling message is a message of type “Report” according to the IGMP signaling protocol or the MLD signaling protocol, and in that said free data field is the auxiliary data field “Auxiliary Data” defined in said IGMP signaling protocol or said MLD signaling protocol. Method according to claim 1, characterized in that said reception of a signaling message representative of a request for membership of said terminal to the multicast group associated with the broadcasting of said multicast stream follows the transmission of a signaling request message comprising a list of multicast groups known to the network, said list comprising at least said multicast group associated with the broadcasting of said multicast stream, identified by said multicast address, a network slice identifier being encoded in said multicast address and / or included in a free data field of said signaling request message. Method according to claim 1, characterized in that the connection of said terminal to a distribution tree of said multicast flow deployed in said target network slice comprises the transmission of a graft request message to said distribution tree according to a dynamic routing protocol, said graft request message comprising an identifier of said target network slice. Method according to claim 7, characterized in that said dynamic routing protocol is the PIM protocol and in that said graft request message is a JOIN type message according to said PIM protocol, said message being adapted to include a field comprising said identifier of said target network slice and data representative of an encoding of said multicast flow or an absence of encoding information of said multicast flow. Method according to claim 1, characterized in that it comprises, prior to said reception of a signaling message of the "Report" type, when said terminal is a source of broadcasting of said multicast stream: - the reception, from said source terminal, of a request for subscription to an optimized broadcasting service, comprising identification data of said source terminal and data representative of technical capabilities supported by said source terminal; - the transmission, to said source terminal, of a subscription confirmation message, comprising at least one association between a multicast address usable by said source terminal for the broadcasting of said multicast stream and a network slice identifier determined as being suitable for the broadcasting of said multicast stream on said communication network, as a function of said data representative of technical capabilities supported by said source terminal. Method according to claim 9, characterized in that said association is implemented by encoding, within said multicast address usable by said source terminal for the broadcasting of said multicast stream, said network slice identifier determined as being suitable for the broadcasting of said multicast stream. Method for joining a terminal to a multicast group associated with the broadcasting of a multicast stream within a communication network implementing network slices, said method being implemented at said terminal, said method being characterized in that it comprises: - obtaining (111), from a message received from said network, at least one network slice identifier available for routing a multicast stream; - transmitting (112), to said network, a signaling message representative of a request for said terminal to join said multicast group, said signaling message comprising a network slice identifier representative of a network slice preferred by said terminal for routing said multicast stream, called candidate network slice, selected from said at least one network slice identifier available for said routing. Membership method according to claim 11, characterized in that:- said at least one available network slice identifier is extracted by said terminal from at least one multicast address included in said received message; and / or- said at least one candidate network slice identifier is encoded by said terminal within at least one multicast address identifying said multicast group, transmitted in said signaling message. Network entity for optimizing the broadcasting of a multicast stream within a communication network implementing network slices, comprising at least one processor configured to:- receive, from a terminal connected to said network, a signaling message representative of a request for membership of said terminal to a multicast group associated with the broadcasting of said multicast stream, said signaling message comprising a multicast address identifying said multicast group, and a network slice identifier representative of a network slice favored by said terminal for the routing of said multicast stream, called candidate network slice;- obtain an identifier of a target network slice for the routing of said multicast stream, as a function of said candidate network slice identifier and data representative of a current state of said communication network;- connecting said terminal to a distribution tree of said multicast flow deployed in said target network slice; Terminal capable of adhering to a multicast group associated with the broadcasting of a multicast stream within a communication network implementing network slices, comprising at least one processor configured to:- obtain, from a message received from said network, at least one network slice identifier available for the routing of a multicast stream;- transmit, to said network, a signaling message representative of a request for said terminal to join said multicast group, said signaling message comprising a network slice identifier representative of a network slice preferred by said terminal for the routing of said multicast stream, called candidate network slice, selected from said at least one network slice identifier available for said routing. Computer program comprising instructions for implementing a method according to any one of claims 1 to 10 when this program is executed by a processor.
Citation Information
Patent Citations
Mobility enhancement with network slicing
US20210037455A1
Communication method and apparatus for multicast and broadcast service, medium, and electronic device
US20230083175A1
Processing method for multicast data streams, user facing provider edge (UPE) and network facing provider edge (NPE)
WO2011127857A2