System and method for offloading a selected number of users
The system addresses the challenge of seamless user offloading from unicast to broadcast/multicast networks by identifying similar media content users and determining optimal offloading times, achieving efficient resource use and uninterrupted service.
Patent Information
- Application Number
- JP2024507934
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-05-24
- Filing Date
- 2023-05-24
- Publication Date
- 2025-06-24
AI Technical Summary
Current systems lack a mechanism to seamlessly and intelligently offload specific users from a unicast network to a broadcast or multicast network without interrupting service, especially when users are viewing common content.
A system and method that utilize a processor and memory to identify users accessing similar media content, determine viewing timestamps and buffer times, and establish a sliding window for offloading users from a unicast network to a broadcast or multicast network without service interruption.
Enables efficient and seamless offloading of users between different network types, optimizing the use of licensed radio resources and ensuring continuous service for users.
Smart Images

Figure 2025518992000001_ABST
Abstract
Description
Technical Field
[0001] Reservation of Rights Part of the present disclosure in this patent document includes, but is not limited to, materials that are the subject of intellectual property rights such as copyrights, designs, trademarks, integrated circuit (IC) layout designs, and / or trade dress protection, belonging to Jio Platforms Limited (JPL) or its related companies (hereinafter referred to as the owner in this specification). The owner reserves all rights in the event that the patent document or the patent disclosure content is not published in the patent application documents or records of the Patent and Trademark Office, although anyone may copy it as long as it is published in the patent application documents or records of the Patent and Trademark Office. All rights to such intellectual property are fully reserved by the owner.
[0002] Embodiments of the present disclosure generally relate to systems and methods for transmission technologies in communication systems. More particularly, the present disclosure relates to systems and methods for offloading users from a unicast platform to a broadcast platform.
Background Art
[0003] The following description of related art is intended to provide background information relevant to the field of the present disclosure. This section may include specific aspects of the art related to various features of the present disclosure. However, it should be understood that this section is used only to enhance the reader's understanding of the present disclosure and not as an admission of prior art.
[0004] Broadcast / multicast services, commonly known as BMS, are a way to share media content among sets of users using a common set of resources. There are many solutions that exist across many standards such as 3GPP (third generation partnership project), 3GPP2 (third generation partnership project 2), ATSC (advanced television systems committee), DVB-H (digital video broadcasting - handheld) among sets of users using a common set of resources. When an operator deploys one or more such broadcast systems along with a conventional unicast wireless system, especially when more users within each area are viewing the same content, it is sometimes necessary to switch between the unicast system and the broadcast system.
[0005] When switching unicast users to a broadcast platform, even if the content is common, the viewing points need to be synchronized. Since the fifth generation (5G) network, it has been understood that the throughput experienced by user devices is on the order of hundreds of megabits per second (MBPS). This high throughput results in a large amount of data being buffered on the device side. Therefore, there may be a need for an efficient system that can process and synchronize a larger amount of data. Currently, the system does not have a mechanism that can seamlessly and intelligently offload a specific user to a cellular or non-cellular broadcast / multicast network without interrupting the service, or offload them and return them to the unicast network.
[0006] Accordingly, there is a need in the art to provide a system and method that can mitigate problems associated with the prior art.
SUMMARY OF THE INVENTION
PROBLEMS TO BE SOLVED BY THE INVENTION
[0007] Some of the objectives of the present disclosure satisfied by at least one embodiment of this specification are described below.
[0008] An objective of the present disclosure is to provide a system and method for intelligently offloading a specific user from a unicast network to a broadcast network without service interruption.
[0009] An objective of the present disclosure is to provide a system and method for identifying a user's viewing point of content and determining a switching decision from a unicast network to a broadcast network using parameters such as buffer status.
[0010] An objective of the present disclosure is to provide a system and method for addressing the problem of user switching between unicast and broadcast / multicast, either using the same radio access technology (RAT) or different broadcast RATs.
[0011] An objective of the present disclosure is to provide a system and method that enables efficient use of licensed radio resources by intelligently and seamlessly offloading a specific user from one broadcast / multicast system to another.
MEANS FOR SOLVING THE PROBLEMS
[0012] This section is provided to introduce specific objectives and aspects of the present disclosure in a simplified form, which will be further described in the following detailed description. This summary is not intended to identify the main features or scope of the claimed subject matter.
[0013] In one aspect, the present disclosure relates to a system for offloading consumers across one or more wireless access technologies. The system includes a processor and a memory operatively coupled to the processor, the memory storing instructions executable by the processor. The processor receives user requests from one or more users. The user requests are based on content by viewing rate by one or more users via a computing device. The system includes an offloading entity associated with the processor and the memory, the offloading entity being configured to identify one or more users accessing similar media content based on content by viewing rate, receive one or more parameters from one or more users based on the similar media content, determine a viewing timestamp and a buffer time for each of the one or more users, determine a sliding window based on user tolerance to interruption at a viewing point for offloading one or more users based on the one or more parameters, the viewing timestamp, and the buffer time, and determine an opportunity to offload one or more users by being configured to intelligently offload at least one of the one or more users from a unicast network system to a broadcast or multicast network system based on the sliding window.
[0014] In an embodiment, the processor may periodically receive a viewing timestamp from a computing device and may generate a buffer status report based on the buffer time and the viewing timestamp.
[0015] In an embodiment, the unicast network system may include a cellular network system, and the broadcast or multicast network system may include a non-cellular network system.
[0016] In an embodiment, the processor may determine a viewing timestamp based on an identification that one or more users access the same media content at the same viewing timestamp or different viewing timestamps.
[0017] In an embodiment, the processor may determine a buffer time based on the latest segment downloaded by one or more users.
[0018] In an embodiment, the processor may determine a viewing timestamp based on a configuration message received from a computing device within a predetermined period.
[0019] In an embodiment, one or more parameters may include at least one of a direction of mobility and a wireless capability of one or more users.
[0020] In an embodiment, the processor may insert one or more advertisements at a preset time for synchronizing one or more users.
[0021] In an embodiment, the processor may intelligently offload at least another user among one or more users from a broadcast or multicast network system to a unicast network system based on a sliding window.
[0022] In an aspect, the present disclosure relates to a method for offloading consumers across one or more wireless access technologies. The method includes receiving, by a processor associated with a system, user requests from one or more users. The user requests are based on content by viewing rate by one or more users via a computing device. The method includes determining, by an offloading entity included within the system and associated with the processor, an opportunity to offload one or more users. The method includes identifying, by the processor, one or more users accessing similar media content based on content by viewing rate. The method includes receiving, by the processor, one or more parameters from one or more users based on the similar media content. The method includes determining, by the processor, a viewing time stamp and a buffer time for each of the one or more users. The method includes determining, by the processor, a sliding window based on user tolerance to interruption at a viewing point for offloading one or more users based on one or more parameters, the viewing time stamp, and the buffer time. The method includes intelligently offloading, by the processor, at least one of the one or more users from a unicast network system to a broadcast or multicast network system based on the sliding window.
[0023] In an embodiment, the method may include receiving, by the processor, a viewing time stamp from a computing device periodically, and generating, by the processor, a buffer status report based on the buffer time and the viewing time stamp.
[0024] In an embodiment, the method may include determining, by the processor, the viewing time stamp based on an identification that one or more users access similar media content with the same viewing time stamp or different viewing time stamps.
[0025] In an embodiment, the method may include determining a buffer time by a processor based on the latest segment downloaded by one or more users.
[0026] In an embodiment, the method may include inserting one or more advertisements at a preset time for synchronizing one or more users by a processor.
[0027] In an embodiment, the method may include intelligently offloading at least another user among one or more users from a broadcast or multicast network system to a unicast network system by a processor based on a sliding window.
[0028] In an aspect, a user equipment (UE) for transmitting a request includes one or more processors communicatively coupled to a processor in the system. The one or more processors are coupled to a memory that stores instructions to be executed by the one or more processors. The one or more processors transmit a request to the processor via a network. The request is based on content by a viewing rate of one or more users via the UE. The processor is configured to receive a request from the UE, identify one or more users accessing similar media content based on the content by the viewing rate, receive one or more parameters from the one or more users based on the similar media content, determine a viewing timestamp and a buffer time for each of the one or more users, determine a sliding window based on user tolerance to interruption at a viewing point for offloading one or more users based on the one or more parameters, the viewing timestamp, and the buffer time, and is configured to intelligently offload at least one of the one or more users from a unicast network system to a broadcast or multicast network system based on the sliding window, thereby being associated with an offloading entity included in the system for determining an opportunity for offloading one or more users.
[0029] In one aspect, the non-transitory computer-readable medium includes a processor executable of instructions that cause the processor to receive user requests from one or more users. The user requests are based on content by viewing rates by one or more users via a computing device. The processor determines an opportunity to offload one or more users via an offload entity. The processor identifies one or more users accessing similar media content based on content by viewing rates. The processor receives one or more parameters from one or more users based on the similar media content. The processor determines a viewing time stamp and a buffer time for each of the one or more users. The processor determines a sliding window based on user tolerance to interruption at a viewing point for offloading one or more users based on the one or more parameters, the viewing time stamp, and the buffer time. The processor intelligently offloads at least one of the one or more users from a unicast network system to a broadcast or multicast network system based on the sliding window.
[0030] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate exemplary embodiments of the disclosed methods and systems, and like reference numerals refer to the same parts throughout the different drawings. The components in the drawings are not necessarily to scale, instead emphasis has been placed upon clearly illustrating the principles of the present disclosure. Some of the drawings may show components using block diagrams and may not represent the internal circuitry of each component. It will be understood by those skilled in the art that such a disclosure of a drawing includes a disclosure of electrical components, electronic components, or circuits commonly used to implement such components.
Brief Description of the Drawings
[0031]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
Figure 9
Figure 10
Figure 11
Figure 12
DETAILED DESCRIPTION OF THE INVENTION
[0032] The above will become more apparent from the following more detailed description of the present disclosure.
[0033] In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of embodiments of the present disclosure. It will be apparent, however, that embodiments of the present disclosure may be practiced without these specific details. Some of the features described below may be used individually or in any combination with other features, respectively. An individual feature may or may not address all of the above problems, and some of the above problems may not be fully addressed by any of the features described herein.
[0034] The following description provides only exemplary embodiments and is not intended to limit the scope, applicability, or configuration of the present disclosure. Rather, the following description of exemplary embodiments provides an enabling description for those skilled in the art to implement the exemplary embodiments. It should be understood that various changes may be made to the functions and arrangements of the elements without departing from the spirit and scope of the present disclosure as described.
[0035] In the following description, specific details are provided to offer a complete understanding of the various embodiments. However, it will be understood by those skilled in the art that the various embodiments may be practiced without these specific details. For example, circuits, systems, networks, processes, and other components may sometimes be shown as components in block diagram form in order not to obscure the embodiments with unnecessary details. In other instances, well-known circuits, processes, algorithms, structures, and techniques may be shown without unnecessary detail to avoid obscuring the embodiments.
[0036] Note also that individual embodiments may be described as a process shown as a flowchart, a flow diagram, a data flow diagram, a structure diagram, or a block diagram. Although operations may sometimes be described in a flowchart as sequential processes, many operations can be performed in parallel or simultaneously. Further, the order of operations may be rearranged. When the operations of a process are completed, the process ends, but there may be additional steps not included in the figure. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, etc. When a process corresponds to a function, its end may correspond to the return of the function to the calling function or the main function.
[0037] As used in this specification, the terms "exemplary" and / or "illustrative" are used in the sense of "serving as an example, instance, or illustration". To avoid misunderstanding, the subject matter disclosed in this specification is not limited by such examples. Further, any aspect or design described in this specification as "exemplary" and / or "illustrative" should not necessarily be construed as more preferred or advantageous than other aspects or designs, nor does it mean excluding equivalent exemplary structures and techniques known to those skilled in the art. Additionally, to the extent that terms such as "includes", "has", "contains", etc. are used in the embodiments or claims for carrying out the invention, such terms are intended to be as inclusive as the term "comprising" as a non-limiting transitional word without excluding any additional elements or other elements at all.
[0038] Throughout this specification, references to "one embodiment" or "an embodiment" or "an aspect" or "one aspect" mean that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment of the present disclosure. Thus, the phrases "in one embodiment" or "in an embodiment" that appear in various places throughout this specification are not necessarily all referring to the same embodiment. Further, the particular features, structures, or characteristics may be combined in any suitable manner in one or more embodiments.
[0039] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the present disclosure. As used herein, the singular forms "a", "an", and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. The terms "comprise" and / or "comprising", when used herein, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items.
[0040] Various embodiments of the present disclosure are described in more detail with reference to FIGS. 1 - 12.
[0041] FIG. 1 shows an exemplary network architecture (100) of a proposed system (108) according to an embodiment of the present disclosure.
[0042] As shown in FIG. 1, the network architecture (100) may include a system (108). The system (108) may be connected to one or more computing devices (104 - 1, 104 - 2... 104 - N) via a network (106). The one or more computing devices (104 - 1, 104 - 2... 104 - N) may be interchangeably designated as user equipment (UE) (104) and may be operated by one or more users (102 - 1, 102 - 2... 102 - N). Further, the one or more users (102 - 1, 102 - 2... 102 - N) may be interchangeably referred to as one user (102) or multiple users (102). The system (108) may include or be related to an offloading entity according to an embodiment of the present disclosure.
[0043] In an embodiment, the computing device (104) may include, but is not limited to, a mobile phone, a laptop, etc. Further, the computing device (104) may include a smartphone, a virtual reality (VR) device, an augmented reality (AR) device, a general-purpose computer, a desktop, a personal digital assistant, a tablet computer, and a mainframe computer. Further, an input device for receiving input from a user (102) such as a touch pad, a touch screen, an electronic pen, etc. may be used. Those skilled in the art will recognize that the computing device (104) may not be limited to the devices mentioned and that various other devices may be used.
[0044] In one embodiment, the network (106) can include, by way of example and not limitation, at least a portion of one or more networks having one or more nodes that perform one or more of transmitting, receiving, relaying, generating, buffering, storing, routing, switching, processing, or some combination thereof, such as one or more messages, packets, signals, waves, voltage or current levels, or some combination thereof. The network (106) can also include, by way of example and not limitation, one or more of a wireless network, a wired network, the Internet, an intranet, a public network, a private network, a packet-switched network, a circuit-switched network, an ad-hoc network, an infrastructure network, a public switched telephone network (PSTN), a cable network, a cellular network, a satellite network, an optical fiber network, or some combination thereof.
[0045] In an embodiment, an offload entity included in the system (108) may receive user requests from one or more users (102). The user requests may be based on content by viewing rates by one or more users (102) via a computing device (104). The offload entity may identify one or more users (102) accessing similar media content based on the content by viewing rates. The offload entity may receive one or more parameters from one or more users (102) based on the similar media content. The one or more parameters may include, but are not limited to, the direction of mobility and the wireless capabilities of one or more users (102).
[0046] In an embodiment, the offload entity may determine a viewing timestamp and a buffer time for each of the one or more users (102). The viewing timestamp may be based on the identification that one or more users (102) access similar media content at the same viewing timestamp or different viewing timestamps. The offload entity may determine the buffer time based on the latest segment downloaded by one or more users (102).
[0047] In an embodiment, the offload entity may determine a sliding window based on user tolerance to interruption at a viewing point for offloading one or more users (102) based on one or more parameters, a viewing timestamp, and a buffer time.
[0048] In an embodiment, the offload entity can intelligently offload at least one user among one or more users (102) from a unicast network system to a broadcast or multicast network system based on a sliding window. Further, the system (108) can intelligently onload at least one user among one or more users (102) from a broadcast or multicast network system to a unicast network system based on a sliding window.
[0049] In an embodiment, the system (108) can periodically receive a viewing timestamp from the computing device (104) and can generate a buffer status report (BSR) based on the buffer timestamp and the viewing timestamp. The system (108) can determine the viewing timestamp based on a configuration message received from the computing device (104) within a predetermined period.
[0050] FIG. 1 shows exemplary components of a network architecture (100), but in other embodiments, the network architecture (100) can include fewer components, different components, components in a different arrangement, or additional functional components compared to the components shown in FIG. 1. Additionally or alternatively, one or more components of the network architecture (100) can perform functions described as being performed by one or more other components of the network architecture (100).
[0051] FIG. 2 shows an exemplary block diagram (200) of a proposed system (108) according to an embodiment of the present disclosure.
[0052] Referring to FIG. 2, the system (108) may include one or more processors (202) that may be implemented as a microprocessor, a microcomputer, a microcontroller, a digital signal processor, a central processing unit, a logic circuit, and / or any device that processes data based on operation instructions. In particular, the one or more processors (202) may be configured to fetch and execute computer-readable instructions stored in the memory (204) of the system (108). The memory (204) may be configured to store one or more computer-readable instructions or routines in a non-transitory computer-readable storage medium that may be fetched and executed to create or share data packets via a network service. The memory (204) may include any non-transitory storage device including, for example, volatile memory such as random access memory (RAM), or non-volatile memory such as erasable programmable read-only memory (EPROM), flash memory, etc.
[0053] In one embodiment, the system (108) may include an interface (206). The interface (206) may include various interfaces, for example, interfaces for data input / output (I / O) devices, storage devices, etc. The interface (206) may also provide a communication path for one or more components of the system (110). Examples of such components include, but are not limited to, the processing engine (208) and the database (210), and the processing engine (208) may include, but is not limited to, the data acquisition engine (212).
[0054] In an embodiment, the processing engine(s) (208) may be implemented as a combination of hardware and programming (e.g., programmable instructions) to implement one or more functions of the processing engine(s) (208). In the examples described herein, such a combination of hardware and programming may be implemented in several different ways. For example, the programming of the processing engine(s) (208) may be processor-executable instructions stored on a non-transitory machine-readable storage medium, and to execute such instructions, the hardware of the processing engine(s) (208) may include processing resources (e.g., one or more processors). In an example of the present invention, the machine-readable storage medium can store instructions that, when executed by the processing resources, implement the processing engine(s) (208). In such examples, the system (108) may include a machine-readable storage medium that stores instructions and processing resources for executing such instructions, or the machine-readable storage medium may be separate but accessible to the system (108) and the processing resources. In other examples, the processing engine(s) (208) may be implemented by an electronic circuit.
[0055] In an embodiment, a processor (202) associated with an offload entity may receive user requests from one or more users (102) via a data acquisition engine (212). The processor (202) may store the user requests in a database (210). The user requests may be based on the viewing rate of content by one or more users (102) via a computing device (104). The processor (202) may determine an opportunity to offload one or more users. The processor (202) may identify one or more users (102) who access similar media content based on the viewing rate of content. The processor (202) may receive one or more parameters from one or more users (102) based on the similar media content. The one or more parameters may include, but are not limited to, the direction of mobility and the wireless capabilities of one or more users (102).
[0056] In an embodiment, the processor (202) may determine a viewing timestamp and a buffer time for each of one or more users (102). The viewing timestamp may be based on an identification that one or more users (102) access the same media content with the same viewing timestamp or different viewing timestamps. The processor (202) may determine the buffer time based on the latest segment downloaded by one or more users (102).
[0057] In an embodiment, the processor (202) may determine a sliding window based on user tolerance to interruption at a viewing point for offloading one or more users (102) based on one or more parameters, a viewing timestamp, and a buffer time.
[0058] In an embodiment, the processor (202) may intelligently offload at least one of one or more users (102) from a unicast network system to a broadcast or multicast network system based on the sliding window. Further, the processor (202) may intelligently onload at least one of one or more users (102) from a broadcast or multicast network system to a unicast network system based on the sliding window.
[0059] In an embodiment, the processor (202) may periodically receive a viewing time from the computing device (104) and may generate a BSR based on the buffer time and the viewing time. The processor (202) may determine the viewing time based on a configuration message transmitted by the computing device (104) within a predetermined period.
[0060] FIG. 2 shows exemplary components of system (108), but in other embodiments, system (108) may include fewer components, different components, components in a different arrangement, or additional functional components than shown in FIG. 2. Further or alternatively, one or more components of system (108) may perform the functions described as being performed by one or more other components of system (108).
[0061] FIG. 3 shows an exemplary eMBMS (end-to-end evolved multimedia broadcast and multicast services) architecture (300) of a fourth generation (4G) network according to an embodiment of the present disclosure.
[0062] As shown in FIG. 3, in the embodiment, the UE modem (306) can access the content provider (320) via the MBMS recognition type application (302) configured in the MBMS client (304). The content provider (320) can communicate with the BMSC (broadcast multicast service center) (316) via the SCEF (service capabilities exposure function) (318) and the interfaces (XMB-C, XMB-U). The BMSC (316) can further access the MBMS-GW (multimedia broadcast multicast services-gateway) via the SGmb and the SGI-MB. Further, the MBMS-GW (314) may be connected to various base stations in the E-UTRAN (evolved universal terrestrial radio access network) (308), the MCE (multi-cell / multicast co-ordination entity) (310), and the MME (mobility management entity) (312). The UE modem (306) can be connected to the E-UTRAN (308). Further, the E-UTRAN (308) may be connected to the MME (312) via the interfaces (M2, M3) and the MCE (310), and may be connected to the MBMS-GW (314) via the interface M1. The MBMS-GW (314) can be connected to the MME (312) via the interface Sm. The UE modem (306) can be connected to the MBMS recognition type application (302) via the MBMS client (304).
[0063] Figure 4 shows an exemplary end-to-end MBMS architecture (400) of a fifth generation (5G) network according to an embodiment of the present disclosure. Those skilled in the art can understand that the various modules mentioned in Figure 4 may be similar in their functions to the corresponding modules in Figure 3 and may not be described again for the sake of brevity.
[0064] As shown in Figure 4, in an embodiment, the end-to-end MBMS architecture of a 5G network has many advantages and can intelligently and seamlessly offload a specific user (e.g., 102) from one broadcast / multicast system to another. As shown in Figure 4, the various modules may be similar to the modules described in Figure 3 and may be implemented as part of a 5G network for offloading a specific user (102) from one broadcast / multicast system to another.
[0065] In an embodiment, the base station (408) may be connected to the access and mobility management function (AMF) (412) via interfaces (M2, M3) and the MCE (410). Further, the base station (408) may be connected to the MBMS-GW (414). The MBMS-GW (414) may be connected to the AMF (412) via the interface Sm.
[0066] Figure 5 shows an exemplary media stream delivery (500) from a content provider to an end user via a broadcast / multicast offload / onload management entity according to an embodiment of the present disclosure.
[0067] As shown in FIG. 5, a broadcast / multicast offload / onload system (502) can collect data necessary for offloading / onloading of a particular user (e.g., 102). The broadcast / multicast offload / onload system (502) can collect specific data from a content provider / over-the-top (OTT) platform (508) and deliver it to a user device (510). In an embodiment, the broadcast / multicast offload / onload system (502) can broadcast to a unicast and broadcast / multicast (504) supported by a cellular system as well as a broadcast-only network (506).
[0068] In another embodiment, the broadcast / multicast offload / onload system (502) can further include an intelligent entity that can determine whether a user can switch from a unicast session to a broadcast / multicast session without interruption of the session. The intelligent entity can reside in the multicast / broadcast offload system (502) or a cellular system and can address the problem of user switching between unicast and broadcast / multicast in either the same radio access technology (RAT) or different broadcast RATs. It can be noted that the intelligent entity can be alternatively referred to as an offload / onload entity or an offload entity.
[0069] FIG. 6 shows an exemplary offload / onload management (600) with a service continuity module according to an embodiment of the present disclosure.
[0070] As shown in FIG. 6, a user equipment (UE) (602) may send user requests to a broadcast / multicast offloading system (612) via a non-3rd Generation Partnership Project (non-3GPP) broadcast network (604), a 3GPP broadcast / multicast network (606), and a 3GPP unicast network (608). An intelligent entity (610) may be included in the broadcast / multicast offloading system (612), may process the user requests, and may send the processed requests to a content provider (614).
[0071] In an embodiment, the intelligent entity (610) may be a software entity resident on an offloading platform that determines whether media content may be offloaded to another dedicated broadcast / multicast system or returned (offloaded) to a cellular network (unicast data transfer or broadcast session).
[0072] FIG. 7 shows an exemplary offloading management (700) with an intelligent entity according to an embodiment of the present disclosure.
[0073] As shown in FIG. 7, a user equipment (UE) (702) may send user requests to a broadcast / multicast offloading system (712) via a non-3GPP broadcast network (704), a 3GPP broadcast / multicast network (706), and a 3GPP unicast network (708). The intelligent entity (710) may be included in the non-3GPP broadcast network (704), the 3GPP broadcast / multicast network (706), or the 3GPP unicast network (708) itself. The intelligent entity (710) may determine whether to offload media content to another dedicated broadcast / multicast system or return it to the cellular network.
[0074] FIG. 8 shows an exemplary diagram (800) representing a sliding window according to an embodiment of the present disclosure.
[0075] As shown in FIG. 8, in an embodiment, the system (108) may determine a sliding window under which all users (102) can be selected for offloading. As shown in FIG. 8, there is a window for a period during which all three users (User-1 (802), User-2 (804), User-3 (806)) can move so as to start downloading data packets from the end of the window. User-1 (802) and User-2 (804) may receive duplicate packets for some time until their respective buffering times (Bt) expire, while User-3 (806) may continue to receive packets from the end of Bt by the broadcast / multicast technology by which the system offloads the user. Thus, by this mechanism, many such users corresponding to the user selector sliding window can be offloaded normally, thereby saving the bandwidth that would otherwise be consumed to transmit data via unicast. Thus, the system (108) may select the end of the window (EoW) in such a way that the maximum number of users (102) are covered within the buffering window and the users do not lose any segments.
[0076] In an embodiment, the system (108) may calculate a buffering time (Bt) such that the user / UE can normally receive the last buffering segment. Bt may be represented as the serial number (SN) of the segment received without time unit.
[0077] In an embodiment, the system (108) may calculate a view / watch time (Vt) during which a user / UE may be watching media content. Also, Vt may be represented as a serial number (SN). Thus, the system (108), i.e., the platform / algorithm running on the broadcast / multicast offload / onload system, may need to know Bt and Vt for each user / UE periodically for offload calls.
[0078] In an embodiment, Bt may be obtained by requesting the application server / content delivery network (CDN) to share the last segment that was successfully acknowledged and downloaded by a given user / UE.
[0079] In an embodiment, the system (108) may request the user / UE to share the same (via middleware) using a BSR message, and Vt may be obtained from the UE by the system (108) periodically or on a demand basis. The BSR message may be used for the same or a new message may be used. A similar process may be used for other protocol messages shared by the middleware to the system (108).
[0080] In an embodiment, a periodic timer may be set by the system (108) and communicated to the middleware resident in the UE via a configuration message. The Vt_Timer or the periodic timer may be configured by the system (108) via a configuration message to the UE (middleware). Further, a BSR_Request message from the system (108) may be sent on a demand basis to request the UE (middleware) to share a BSR message.
[0081] In an embodiment, a Buffer_Status_Report::{Bt:MPD_Segment_SN, Vt:MPD_Segment_SN} with BSR_Request::{Bt:Boolean:{TRUE, FALSE}, Vt:Boolean:{TRUE, FALSE}} can be sent by the UE, where Bt:Boolean - TRUE can indicate that the Bt report is returned, and Vt:Boolean - TRUE can indicate that the report is returned in a configuration message in the format of Config_Msg::{Vt_Timer:{0123456789 ms}}.
[0082] FIG. 9 shows an exemplary flowchart (900) for generating a BSR with periodic configuration according to an embodiment of the present disclosure.
[0083] As shown in FIG. 9, the following steps may be implemented by the system (108).
[0084] In step 912, the UE (902) may be registered.
[0085] In step 914, data collection from the 5GS (Radio Access Network (RAN) / Core Network (CN)) may be performed between the 5G system (5GS) (904), the proposed system (108) including offload / onload management (906) and intelligent data collector (908), and the content provider (CP) (910) via the NDAF (Network Data Analytics Function) / NEF (Network Exposure Function).
[0086] In step 916, a configuration message may be sent by the intelligent data collector (908) to the UE (902).
[0087] In step 918, the BSR can be sent by the UE (902) to the intelligent data collector (908).
[0088] In step 920, another BSR can be sent by the UE (902) to the intelligent data collector (908).
[0089] In step 922, a trigger mechanism for offloading / onloading management can be established among the UE (902), 5GS (904), offloading / onloading management (906), intelligent data collector (908), and CP (910).
[0090] FIG. 10 shows an exemplary flowchart (1000) for generating a BSR having an on-demand based configuration according to an embodiment of the present disclosure.
[0091] As shown in FIG. 10, the following steps may be implemented by the system (108).
[0092] In step 1012, the UE (1002) may be registered.
[0093] In step 1014, data collection from 5GS (RAN / CN) may be performed via NDAF / NEF between 5GS (1004), system 108 including offloading / onloading management (1006) and intelligent data collector (1008), and CP (1010).
[0094] In step 1016, a configuration message may be sent by the intelligent data collector (1008) to the UE (1002).
[0095] In step 1018, the BSR can be sent by the UE (1002) to the intelligent data collector (1008).
[0096] In step 1020, another BSR may be sent by the UE (1102) to the intelligent data collector (1108).
[0097] In step 1022, a BSR request may be sent from the intelligent data collector (1008) to the UE (1002).
[0098] In step 1024, a BSR may be sent by the UE (1002) to the intelligent data collector (1008).
[0099] In step 1026, a trigger mechanism for offloading / onloading management may be established among the UE (1002), 5GS (1004), offloading / onloading management (1006), intelligent data collector (1008), and CP (1010).
[0100] FIG. 11 shows an exemplary advertisement insertion mechanism (1100) in a system (108) according to an embodiment of the present disclosure.
[0101] In an embodiment, the switching time of the user (102) can be masked by inserting an advertisement to synchronize other subsequent users for a certain period of time, so that the user set collectively reaches a specific viewing time. A mechanism can be implemented in which a user set that precedes in time can be synchronized using one or more advertisements in "multiple periods".
[0102] In an embodiment, the intelligence entity (1102) can determine which users are preceding and need to be targeted for advertisement insertion, and which periods need to be targeted. The intelligence entity (1102) can trigger the Ad insertion server in a general advertisement (Ad) insertion mechanism as shown in FIG. 11 based on the "user identification (ID)" and the periods for which the users need to be targeted for advertisements.
[0103] The intelligence entity (1102) may trigger an Ad decision server to generate one or more advertisements and send the one or more advertisements to an MPD generator (1104). The output from the MPD generator (1104) by the head end (1112) and the DASH (dynamic adaptive streaming over hypertext transfer protocol (HTTP)) segmentation package with the CDN origin (1106) can be accessed by a DASH client (1108). Further, the DASH client (1108) may process the input and send the final output to a media engine (1110).
[0104] FIG. 12 shows an exemplary computer system (1200) by which or in which embodiments of the present disclosure may be implemented.
[0105] As shown in FIG. 12, the computer system (1200) may include an external storage device (1210), a bus (1220), a main memory (1230), a read-only memory (1240), a mass storage device (1250), communication ports (plural available) (1260), and a processor (1270). Those skilled in the art will understand that the computer system (1200) may include two or more processors and communication ports. The processor (1270) can include various modules related to embodiments of the present disclosure. The communication ports (plural available) (1260) can be any of an RS-232 port used for a modem-based dial-up connection, a 10 / 100 Ethernet port, a 1 gigabit port or a 10 gigabit port using copper wire or fiber, a serial port, a parallel port, or other existing ports or next-generation ports. The communication ports (plural available) (1260) can be selected according to a network such as a local area network (LAN), a wide area network (WAN), or any network to which the computer system (1200) is connected.
[0106] In one embodiment, the main memory (1230) can be a random access memory (RAM) or any other dynamic storage device commonly known in the art. The read-only memory (1240) can be any static storage device(s), such as a programmable read-only memory (PROM) chip, for storing static information such as startup instructions or BIOS instructions of the processor (1270), but is not limited thereto. The mass storage device (1250) can be any current or future mass storage solution that can be used to store information and / or instructions. Examples of mass storage solutions include, but are not limited to, parallel advanced technology attachment (PATA) or serial advanced technology attachment (SATA) hard disk drives or solid state drives (internal or external, e.g., having a universal serial bus (USB) and / or Firewire interface).
[0107] In one embodiment, the bus (1220) can communicatively couple the processor(s) (1270) to other memory, storage, and communication blocks. The bus (1220) can be, for example, a peripheral component interconnect (PCI) / PCI extended (PCI-X) bus for connecting expansion cards, drives, and other subsystems, a small computer system interface (SCSI), a (USB), etc., as well as other buses such as a front side bus (FSB) that connects the processor (1270) to the computer system (1200).
[0108] In another embodiment, operator and management interfaces such as, for example, a display, a keyboard, and a cursor control device may also be coupled to the bus (1220) to support direct operator interaction with the computer system (1200). Other operator and management interfaces can be provided via a network connection connected through the communication port(s) (1260). The above components are only intended to illustrate various possibilities. By no means is the foregoing exemplary computer system (1200) intended to limit the scope of the present disclosure.
[0109] Although a significant emphasis has been placed on the preferred embodiments herein, it will be understood that many embodiments can be made and that many changes can be made to the preferred embodiments without departing from the principles of the present disclosure. It should be clearly understood that these and other changes in the preferred embodiments of the present disclosure will be apparent to those skilled in the art from the present disclosure herein, and thus the foregoing description is not intended to limit the present disclosure but is merely presented as an example.
[0110] Advantages of the present invention The present disclosure provides a system and method for intelligently offloading a specific user from a unicast network to a broadcast network without service interruption.
[0111] The present disclosure provides a system and method for identifying a user viewing point of content and making a switching decision from a unicast network to a broadcast network using parameters such as buffer status.
[0112] The present disclosure provides a system and method for addressing the problem of user switching between unicast and broadcast / multicast, either using the same radio access technology (RAT) or different broadcast RATs.
[0113] The present disclosure provides a system and method that enable efficient use of licensed wireless resources by intelligently and seamlessly offloading a particular user from one broadcast / multicast system to another.
Claims
1. A system (108) for offloading consumers across one or more wireless access technologies, comprising a processor (202), and a memory (204) operably coupled to the processor (202), wherein the memory (204) stores instructions which, when executed by the processor (202), cause the processor (202) to receive user requests from one or more users (102), the user requests being based on content by viewing rate by the one or more users (102) via a computing device (104), and the system (108) includes an offloading entity associated with the processor (202) and the memory (202), wherein the offloading entity identifies the one or more users (102) accessing similar media content based on the content by viewing rate, receives one or more parameters from the one or more users (102) based on the similar media content, determines a viewing timestamp and a buffer time for each of the one or more users (102), determines a sliding window based on user tolerance to interruption at a viewing point for offloading the one or more users (102) based on the one or more parameters, the viewing timestamp, and the buffer time, and determines an opportunity to offload the one or more users (102) by being configured to intelligently offload at least one of the one or more users (102) from a unicast network system to a broadcast or multicast network system based on the sliding window, the system (108).
2. The system (108) according to claim 1, wherein the processor (202) is for periodically receiving the viewing timestamp from the computing device (104) and generating a buffer status report based on the buffer time and the viewing timestamp.
3. The unicast network system includes a cellular network system, and the broadcast or multicast network system includes a non-cellular network system, the system (108) according to claim 1.
4. The processor (202) is for determining the viewing timestamp based on the identification that the one or more users (102) access the same media content with the same viewing timestamp or different viewing timestamps, the system (108) according to claim 1.
5. The processor (202) is for determining the buffer time based on the latest segment downloaded by the one or more users (102), the system (108) according to claim 1.
6. The processor (202) is for determining the viewing timestamp based on a configuration message received from the computing device (104) within a predetermined period, the system (108) according to claim 1.
7. The one or more parameters include at least one of a direction of mobility and a radio capability of the one or more users (102), the system (108) according to claim 1.
8. The processor (202) is for inserting one or more advertisements at a preset time to synchronize the one or more users (102), the system (108) according to claim 1.
9. The processor (202) is for intelligently offloading at least another one of the one or more users (102) from the broadcast or multicast network system to the unicast network system based on the sliding window, the system (108) according to claim 1.
10. A method for offloading consumers across one or more radio access technologies, receiving, by a processor (202) associated with a system (108), a user request from one or more users (102), the user request being based on content by a viewing rate by the one or more users (102) via a computing device (104), the receiving, Within the system (108), by an offload entity associated with the processor (202), Identifying, by the processor (202), the one or more users (102) accessing similar media content based on the content by the viewership rating; Receiving, by the processor (202), one or more parameters from the one or more users (102) based on the similar media content; Determining, by the processor (202), a viewing time stamp and a buffer time for each of the one or more users (102); Determining, by the processor (202), a sliding window based on user tolerance to interruption at a viewing point for offloading the one or more users (102) based on the one or more parameters, the viewing time stamp, and the buffer time, and Intelligently offloading, by the processor (202), at least one of the one or more users (102) from a unicast network system to a broadcast or multicast network system based on the sliding window; Determining, thereby, an opportunity to offload the one or more users (102); The method including the above.
11. The method according to claim 10, including receiving, by the processor (202), the viewing time stamp from the computing device (104) periodically, and generating, by the processor (202), a buffer status report based on the buffer time and the viewing time stamp.
12. The method according to claim 10, including determining, by the processor (202), the viewing time stamp based on the identification that the one or more users (102) access the similar media content with the same or different viewing time stamps.
13. The method according to claim 10, including determining, by the processor (202), the buffer time based on the latest segment downloaded by the one or more users (102).
14. The method according to claim 10, comprising determining the viewing timestamp based on a configuration message received from the computing device (104) by the processor (202) within a predetermined period.
15. The method according to claim 10, comprising inserting one or more advertisements at a preset time by the processor (202) to synchronize the one or more users (102).
16. The method according to claim 10, comprising intelligently offloading at least another user among the one or more users (102) from the broadcast or multicast network system to the unicast network system by the processor (202) based on the sliding window.
17. A user equipment (UE) (104) for sending a request, comprising one or more processors communicatively coupled to a processor (202) associated with a system (108), the one or more processors being coupled to a memory, the memory storing instructions which, when executed by the one or more processors, cause the one or more processors to, send a request to the processor (202) via a network (106), the request being based on content according to a viewing rate by one or more users (102) via the UE (104), wherein the processor (202) receives the request from the UE (104), identifies the one or more users (102) accessing similar media content based on the content according to the viewing rate, receives one or more parameters from the one or more users (102) based on the similar media content, determines a viewing timestamp and a buffer time for each of the one or more users (102), determines a sliding window based on user tolerance to interruption at a viewing point for offloading the one or more users (102) based on the one or more parameters, the viewing timestamp, and the buffer time, and The UE (104) associated with an offloading entity within the system (108) for determining an opportunity to offload the one or more users (102), by being configured to intelligently offload at least one user among the one or more users (102) from a unicast network system to a broadcast or multicast network system based on the sliding window.
18. A non-transitory computer-readable medium including a processor executable to execute instructions, the processor being caused to receive a user request from one or more users (102), the user request being based on content by a viewing rate by the one or more users (102) via a computing device (104), identify the one or more users (102) accessing similar media content based on the content by the viewing rate, receive one or more parameters from the one or more users (102) based on the similar media content, determine a viewing time stamp and a buffer time for each of the one or more users (102), determine a sliding window based on user tolerance to interruption at a viewing point for offloading the one or more users (102) based on the one or more parameters, the viewing time stamp, and the buffer time, and determine an opportunity to offload the one or more users (102) by being configured to intelligently offload at least one user among the one or more users (102) from a unicast network system to a broadcast or multicast network system based on the sliding window, the non-transitory computer-readable medium.