Method, apparatus, electronic device, computer-readable medium, and computer program for acquiring video stream data

By determining target device or equipment room identifiers to directly transfer video stream data packets, the method addresses the inefficiencies of existing network handover methods, enhancing routing speed and reducing server load, ensuring seamless video streaming.

JP7717988B2Active Publication Date: 2025-08-04BEIJING WODONG TIANJUN INFORMATION TECH CO LTD +1
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2024551962
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2022-03-11
Filing Date
2023-02-21
Publication Date
2025-08-04
Estimated Expiration
2043-02-21

AI Technical Summary

Technical Problem

Existing methods for network handover during video streaming, such as adding layer-7 and layer-4 gateways, result in increased packet delivery time and server burden due to multiple unpacking processes, leading to potential communication interruptions.

Method used

A method and apparatus that determine the target device or equipment room identifier to transfer video stream data packets directly, avoiding multiple gateways and reducing the need for unpacking, using a target interior gateway protocol and stand-alone load service to enhance routing speed and reduce server load.

Benefits of technology

This approach minimizes data packet delay and server burden by eliminating the need for multiple gateways, thereby ensuring seamless video streaming during network handovers and reducing hardware costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007717988000001
    Figure 0007717988000001
  • Figure 0007717988000002
    Figure 0007717988000002
  • Figure 0007717988000003
    Figure 0007717988000003
Patent Text Reader

Abstract

The present disclosure provides a method, an apparatus, an electronic device, and a computer-readable medium for acquiring video stream data. A specific embodiment of the method includes the steps of: determining whether an equipment room identifier of a communication equipment room that receives a pull stream data packet is the same as a target equipment room identifier included in a connection identifier in the pull stream data packet in response to receiving a pull stream data packet transmitted from a target terminal, the pull stream data packet being generated when the target terminal plays a video stream, and the target equipment room identifier being the equipment room identifier of a communication equipment room that receives a first pull stream data packet generated when the target terminal plays a video stream; transferring the pull stream data packet to a target communication equipment room corresponding to the target equipment room identifier in response to determining that the target equipment room identifier is different from the equipment room identifier of the communication equipment room that receives the pull stream data packet; and acquiring video stream data through the target communication equipment room.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] <Cross - reference to Related Applications> This disclosure claims the priority of a Chinese patent application filed on March 11, 2022, with the application number 202210238230.6 and the invention title "Method, Apparatus, Electronic Device, and Computer - Readable Medium for Obtaining Video Stream Data", and the full text of the patent application is incorporated into this disclosure.

[0002] Embodiments of this disclosure relate to the field of computer technology, and in particular, to a method, apparatus, electronic device, and computer - readable medium for obtaining video stream data and computer program related thereto.

Background Art

[0003] When a user views a video stream via a mobile terminal, if the network to which the mobile terminal is connected is handed over between a mobile communication network and a wireless communication network, the video stream may be interrupted during the network handover. Therefore, when performing a network handover, it is necessary to perform the handover without making the user aware of a communication interruption due to the connection transition. Currently, when performing a connection transition, it is common to add a layer - 7 load - balancing gateway and a layer - 4 gateway between the mobile terminal and the push - stream service cluster to achieve the connection transition.

Summary of the Invention

[0004] The summary part of this disclosure is for introducing the inventive concept in a concise form, and these concepts will be described in detail in the form part for implementing the invention described later. The summary part of this disclosure is not intended to identify the important features or essential features of the technical solution for which protection is sought, nor is it intended to limit the scope of the technical solution for which protection is sought.

[0005] Some embodiments of the present disclosure provide a method, an apparatus, an electronic device, and a computer-readable medium for acquiring video stream data to solve the technical problems mentioned in the background art section. and computer program to propose.

[0006] In a first aspect, some embodiments of the present disclosure include: in response to receiving a pull stream data packet transmitted from a target terminal, determining whether the device room identifier of the device room where the communication device that receives the pull stream data packet (Pull stream data packet) is the same as the target device room identifier included in the connection identifier in the pull stream data packet, where the pull stream data packet is generated when the target terminal plays a video stream, and the target device room identifier is the device room identifier of the device room where the communication device receives the first pull stream data packet generated when the target terminal plays the video stream; in response to determining that the target device room identifier is different from the device room identifier of the device room where the communication device receives the pull stream data packet, transferring the pull stream data packet to a target communication device room corresponding to the target device room identifier; and acquiring video stream data through the target communication device room. A method for acquiring video stream data is provided.

[0007] In a second aspect, some embodiments of the present disclosure are configured to determine whether the equipment room identifier of the communication equipment room that received the pulse stream data packet is the same as the target equipment room identifier included in the connection identifier within the pulse stream data packet in response to receiving the pulse stream data packet transmitted from the target terminal, where the pulse stream data packet is generated when the target terminal plays a video stream, and the target equipment room identifier is the equipment room identifier of the communication equipment room that received the first pulse stream data packet generated when the target terminal plays the video stream. The determining unit is configured to transfer the pulse stream data packet to the target communication equipment room corresponding to the target equipment room identifier in response to determining that the target equipment room identifier is different from the equipment room identifier of the communication equipment room that received the pulse stream data packet. The obtaining unit is configured to obtain video stream data via the target communication equipment room. An apparatus for obtaining video stream data is provided, which includes the determining unit, the transferring unit, and the obtaining unit.

[0008] Optionally, the obtaining unit includes a first acquisition sub-unit and a second 2 obtaining sub-unit. The first acquisition sub-unit is configured to determine a target pulse stream service instance that matches the pulse stream data packet in the target protocol conversion server in the target communication equipment room. The second acquisition sub-unit is configured to obtain video stream data from an edge node of the content delivery network using the target pulse stream service instance.

[0009] Optionally, the target communication equipment room is determined by a step of determining, as the target communication equipment room, the communication equipment room corresponding to the network connected when the target terminal generated the first pulse stream data packet during the process of playing the video stream.

[0010] Optionally, the target protocol conversion server and the target pull stream service instance determine, in response to determining that the target communication equipment room has received the first pull stream data packet, by selecting one protocol conversion server from the protocol conversion server cluster in the target communication equipment room as the target protocol conversion server, and by allocating a pull stream service instance to the first pull stream data packet by the stand-alone load service of the target protocol conversion server and setting the pull stream service instance as the target pull stream service instance.

[0011] Optionally, the first acquisition sub-unit mapping table comprises an acquisition sub-unit, a selection sub-unit, server an identification sub-unit, instance and an identification sub-unit. mapping table The acquisition sub-unit is configured to obtain a mapping table from the cache server of the protocol conversion server cluster in the target communication equipment room. The mapping table contains mapping information. The mapping information includes a connection identifier, a protocol conversion server identifier, and a pull stream service instance identifier. The selection sub-unit is configured to select, from the mapping table, mapping information whose included connection identifier is the same as the connection identifier in the pull stream data packet as the target mapping information. server The identification sub-unit is configured to determine, as the target protocol conversion server, the protocol conversion server corresponding to the protocol conversion server identifier in the target mapping information. instance The identification sub-unit is configured to determine, in the target protocol conversion server, the pull stream service instance corresponding to the pull stream service instance identifier in the target mapping information as the target pull stream service instance that matches the pull stream data packet.

[0012] Optionally, the mapping information in the mapping table is determined by: determining, as mapping information, the connection identifier in the first plus stream data packet, the protocol conversion server identifier of the target protocol conversion server, and the plus stream service instance identifier of the target plus stream service instance; and recording the mapping information in the mapping table in the cache server.

[0013] Optionally, the transfer unit includes a first transmission subunit, an assignment subunit, and a transfer subunit. The first transmission subunit is configured to transmit the plus stream data packet to any protocol conversion server in the communication device room according to the target interior gateway protocol. divide The assignment subunit is configured to assign a plus stream service instance to the plus stream data packet according to the stand-alone load service of any protocol conversion server. The transfer subunit is configured to transfer the plus stream data packet to the target communication device room corresponding to the target device room identifier by using the plus stream service instance in response to determining that the target device room identifier is different from the device room identifier of the communication device room.

[0014] Optionally, the above acquire video stream dataThe device further includes a transmission unit, an allocation unit, and a video stream acquisition unit. The transmission unit is configured to transmit the pulse stream data packet to any protocol conversion server in the communication device room according to the target interior gateway protocol. The allocation unit is configured to allocate a pulse stream service instance to the pulse stream data packet by means of the stand-alone load service of any of the protocol conversion servers. The video stream acquisition unit is configured to acquire video stream data via the communication device room by using the pulse stream service instance in response to determining that the target device room identifier is the same as the device room identifier of the communication device room.

[0015] In a third aspect, some embodiments of the present disclosure provide an electronic device including at least one processor and a storage device storing at least one program. When the at least one program is executed by the at least one processor, the at least one processor is caused to implement the method for acquiring video stream data according to any of the embodiments of the first aspect.

[0016] In a fourth aspect, some embodiments of the present disclosure provide a computer-readable medium storing a computer program that, when executed by a processor, executes the method for acquiring video stream data according to any of the embodiments of the first aspect.

[0017] In a fifth aspect, some embodiments of the present disclosure provide a computer program that, when executed by a processor, executes a method for acquiring video stream data according to any of the embodiments of the first aspect above.

Brief Description of the Drawings

[0018] Referring to the following specific embodiments with reference to the drawings, the above-described features, as well as other features, advantages, and aspects of each embodiment of the present disclosure, will become more apparent. In the accompanying drawings, the same or similar reference numerals represent the same or similar elements. It should be understood that the drawings are schematic and that the parts and elements are not necessarily drawn to scale.

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

DETAILED DESCRIPTION OF THE INVENTION

[0019] Hereinafter, embodiments of the present disclosure will be described in more detail with reference to the accompanying drawings. Although some embodiments of the present disclosure are shown in the drawings, the present disclosure can be embodied in various forms and should not be construed as being limited to the embodiments described herein. Rather, these embodiments are provided to enable a more clear and complete understanding of the present disclosure. It should be noted that the drawings and embodiments of the present disclosure are merely illustrative and do not limit the protection scope of the present disclosure.

[0020] For convenience of explanation, only the parts related to the invention are shown in the drawings. The embodiments of the present disclosure and the features in the embodiments can be combined with each other as long as there is no contradiction.

[0021] Note that the concepts such as "first" and "second" mentioned in the present disclosure are only for distinguishing different devices, modules, or units, and are not for defining the order or interdependence of the functions executed by these devices, modules, or units.

[0022] Furthermore, the qualifiers "one" and "a plurality" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand them as "at least one" unless otherwise specified in the context.

[0023] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are merely illustrative and are not for limiting the scope of these messages or information.

[0024] For example, when implementing the migration of the connection by adding one 7-layer load balancing gateway and one 4-layer gateway between the mobile terminal and the pull stream service cluster to obtain related video stream data, the following technical problems often exist. When adding two multi-layer gateways between the mobile terminal and the pull stream service cluster, the time for the pull stream data packet to reach the pull stream service cluster from the mobile terminal may increase, resulting in a delay of the pull stream data packet. At the same time, when the pull stream data packet passes through the two multi-layer gateways, it is necessary to perform a total of two unpacking processes, increasing the hardware cost and the burden on the server.

[0025] To solve the above problems, some embodiments of the present disclosure propose a method for acquiring video stream data and an apparatus for acquiring video stream data, which can avoid the delay of pull stream data packets to a certain extent, and there is no need to perform unpacking processing on pull stream data packets multiple times, thus reducing the burden on the server.

[0026] Hereinafter, the present disclosure will be described in detail with reference to the drawings and embodiments.

[0027] FIG. 1 is a schematic diagram showing an application scenario of a method for acquiring video stream data according to some embodiments of the present disclosure.

[0028] In the application scenario of FIG. 1, first, in response to receiving a pull stream data packet 103 transmitted by a target terminal 102, a computing device 101 can determine whether a device room identifier 104 of the communication device room where the pull stream data packet 103 is received is the same as a target device room identifier 105 included in a connection identifier in the pull stream data packet 103. Here, the pull stream data packet 103 is generated when the target terminal 102 plays a video stream, and the target device room identifier 105 is the device room identifier of the communication device room that receives the first pull stream data packet generated when the target terminal 102 plays the video stream. Then, in response to determining that the target device room identifier 105 is different from the device room identifier 104 of the communication device room where the pull stream data packet 103 is received, the computing device 101 can transfer the pull stream data packet 103 to a target communication device room 106 corresponding to the target device room identifier 105. Finally, the computing device 101 can acquire video stream data 107 via the target communication device room 106.

[0029] The above computing device 101 may be hardware or software. When the computing device is hardware, it can be implemented as a distributed server cluster composed of multiple servers or terminal devices, or as a single server or a single terminal device. When the computing device is software, it may be installed on the listed hardware devices. It may be implemented, for example, as multiple software or software modules for providing distributed services, or as a single software or software module. It is not particularly limited here.

[0030] It should be understood that the number of computing devices in FIG. 1 is merely exemplary. The number of computing devices may be arbitrarily increased or decreased according to the needs of implementation.

[0031] Next, refer to FIG. 2 showing the flow 200 of some embodiments of the method for acquiring video stream data according to the present disclosure. The method for acquiring the video stream data includes the following steps.

[0032] In step 201, in response to receiving a pull stream data packet transmitted from a target terminal, it is determined whether the device room identifier of the communication device room that has received the pull stream data packet is the same as the target device room identifier included in the connection identifier within the pull stream data packet.

[0033] In some embodiments, upon receiving a pull stream data packet transmitted from a target terminal, the execution entity (the computing device 101 shown in FIG. 1) of the method for acquiring video stream data can determine whether the device room identifier of the communication device room that received the pull stream data packet is the same as the target device room identifier included in the connection identifier within the pull stream data packet. Here, the pull stream data packet may be generated when the target terminal plays a video stream, and the target device room identifier may be the device room identifier of the communication device room that received the first pull stream data packet generated when the target terminal plays the video stream. The video stream may be a live delivery video stream or an on-demand delivery video stream. The pull stream data packet may be a QUIC (Quick UDP Internet Connection) data packet. The target terminal may be a mobile terminal such as a mobile phone or a tablet PC.

[0034] The communication device room that received the pull stream data packet may be the communication device room corresponding to the network to which the target terminal is connected when transmitting the pull stream data packet. In the process of the target terminal playing the video stream, the connected network may be a mobile communication network or a wireless communication network. The target terminal may switch the connected network between a mobile communication network and a wireless communication network in the process of playing the video stream.

[0035] When sending the first pull stream data packet, the target terminal may use the communication equipment room corresponding to the currently connected network as the target communication equipment room. And write the equipment room identifier of the target communication equipment room as the target communication equipment room identifier into the connection identifier of the first pull stream data packet. Also, in the process of playing the video stream, write the target communication equipment room identifier into the connection identifiers of the subsequently generated pull stream data packets.

[0036] The above pull stream data packet received If the equipment room identifier of the communication equipment room is the same as the target equipment room identifier included in the connection identifier within the above pull stream data packet, it indicates that the communication equipment room that received the above pull stream data packet is the same communication equipment room as the communication equipment room that received the first pull stream data packet. Therefore, there is no need to perform a connection transition, and the video stream data can be directly obtained through the communication equipment room that received the above pull stream data packet.

[0037] The above pull stream data packet received If the equipment room identifier of the communication equipment room is different from the target equipment room identifier included in the connection identifier within the above pull stream data packet, it indicates that the communication equipment room that received the above pull stream data packet is different from the communication equipment room that received the first pull stream data packet, that is, in the process of the target terminal playing the live video stream, the connected network has been switched between a mobile communication network and a wireless communication network. Therefore, in order to enable the target terminal to continue playing the video stream smoothly when a handover occurs in the network, it is necessary to transfer the above pull stream data packet to the target communication equipment room through a connection restoration operation.

[0038] Accordingly, it is possible to determine whether the communication device room currently receiving the pull stream data packet is the target communication device room based on the target device room identifier included in the connection identifier within the pull stream data packet. Thereby, high-speed routing of the pull stream data packet is realized.

[0039] As an example, if the network to which the target terminal is connected when transmitting the pull stream data packet is the 5G network of 'China Mobile (Changchun)', the communication device room receiving the pull stream data packet may be the device room of 'China Mobile (Changchun)'.

[0040] In some optional embodiments of some embodiments, the target communication device room can be identified by the following steps.

[0041] When the target terminal generates the first pull stream data packet in the process of playing the video stream, the communication device room corresponding to the connected network is identified as the target communication device room.

[0042] Accordingly, when the first pull stream data packet is generated, the communication device room corresponding to the network connected to the target terminal can be identified as the target communication device room. Furthermore, when a handover occurs to a subsequent network, high-speed routing of the pull stream data packet can be realized.

[0043] In step 202, in response to determining that the target device room identifier is different from the device room identifier of the communication device room that received the pull stream data packet, the pull stream data packet is transferred to the target communication device room corresponding to the target device room identifier.

[0044] In some embodiments, the execution entity may transfer the pull stream data packet to a target communication device room corresponding to the target device room identifier in response to determining that the target device room identifier is different from the device room identifier of the communication device room that received the pull stream data packet.

[0045] In step 203, video stream data is acquired via the target communication device room.

[0046] In some embodiments, after transferring the pull stream data packet to the target communication device room, the execution entity may acquire the video stream data returned from the target communication device room.

[0047] In some optional embodiments of some embodiments, the execution entity may further perform the following steps.

[0048] In the first step, the pull stream data packet is sent to any protocol conversion server in the communication device room by the target internal gateway protocol. The target internal gateway protocol may be OSPF (Open Shortest Path First). The protocol conversion server may be any QUIC server in the QUIC server cluster. After converting the QUIC protocol to the HTTP (Hyper Text Transfer Protocol) protocol, the QUIC server can acquire video stream data from an edge node of the content delivery network.

[0049] Thereby, by using the target internal gateway protocol, the pull stream data packet can be sent to any protocol conversion server in the communication device room by at least one shortest routing path, and the routing speed of the pull stream data packet can be increased.

[0050] In the second step, the stand-alone load service of any of the above protocol conversion servers assigns a pull stream service instance to the pull stream data packet. Note that the stand-alone load service may be a load service at the kernel level of the operating system. For example, it may be nftable.

[0051] As a result, the load on the server is reduced by the load service at the kernel level of the operating system.

[0052] In the third step, in response to determining that the target equipment room identifier is the same as the equipment room identifier of the communication equipment room, the video stream data is acquired from the communication equipment room using the pull stream service instance. Here, the pull stream service instance may first convert the pull stream data packet into an HTTP protocol data packet, and then acquire the video stream data from a CDN (Content Delivery Network) server in the communication equipment room.

[0053] Each of the above embodiments of the present disclosure can avoid the delay of pull stream data packets to a certain extent by the method of acquiring video stream data of some embodiments of the present disclosure. At the same time, it is not necessary to perform unpacking processing on the pull stream data packets multiple times, which has the beneficial effect of reducing the burden on the server. Specifically, the reason for the delay of the pull stream data packets and the increase in the burden on the server is that a 7-layer gateway and a 4-layer gateway are added between the mobile terminal and the pull stream service cluster. Based on this, the method of acquiring video stream data of some embodiments of the present disclosure adds one byte for storing the information of the target equipment room to the connection identifier in the pull stream data packet, and directly transfers the data packet to the source according to the information of the target equipment room. Thereby, it is not necessary to have a 7-layer gateway between the mobile terminal and the pull service cluster, the delay of the pull stream data packet can be avoided to a certain extent, the burden on the server can be reduced, and the routing speed of the pull stream data packet can be increased.

[0054] Refer to FIG. 3 showing Flow 300 of some other embodiments of the method for acquiring video stream data. Flow 300 of this method for acquiring video stream data includes the following steps.

[0055] In step 301, in response to receiving a pull stream data packet sent from a target terminal, it is determined whether the equipment room identifier of the communication equipment room that received the pull stream data packet is the same as the target equipment room identifier included in the connection identifier in the pull stream data packet.

[0056] In some embodiments, the specific embodiments of step 301 and the technical effects achieved thereby can refer to step 201 in the corresponding embodiments of FIG. 2, and the description thereof is omitted here.

[0057] In step 302, the pull stream data packet is sent to any protocol conversion server in the communication device room according to the target interior gateway protocol.

[0058] In some embodiments, the execution subject of the method for obtaining video stream data (such as the computing device 101 shown in FIG. 1) can send the above pull stream data packet to any protocol conversion server in the communication device room according to the target interior gateway protocol. Note that the target interior gateway protocol may be OSPF. The protocol conversion server may be any QUIC server in the QUIC server cluster. The QUIC server can obtain video stream data from the edge node of the content delivery network after converting the QUIC protocol to the HTTP protocol.

[0059] Thereby, by using the target interior gateway protocol, the pull stream data packet is sent to any protocol conversion server in the communication device room through at least one of the shortest routing paths, and the routing speed of the pull stream data packet can be increased.

[0060] In step 303, a pull stream service instance is assigned to the pull stream data packet by the stand-alone load service of any protocol conversion server.

[0061] In some embodiments, the execution subject can assign a pull stream service instance to the pull stream data packet by the stand-alone load service of any protocol conversion server. Note that the stand-alone load service may be a load service at the kernel level of the operating system. For example, it is nftable. Thereby, the load of the server can be reduced by the load service at the kernel level of the operating system.

[0062] In step 304, in response to determining that the target equipment room identifier is different from the equipment room identifier of the communication equipment room, a pull stream service instance is used to transfer the pull stream data packet to the target communication equipment room corresponding to the target equipment room identifier.

[0063] In some embodiments, the execution entity can, in response to determining that the target equipment room identifier is different from the equipment room identifier of the communication equipment room, use the pull stream service instance to transfer the pull stream data packet to the target communication equipment room corresponding to the target equipment room identifier.

[0064] Therefore, by integrating the transfer function to the source into the pull stream service instance, the 7-layer load balancing gateway no longer exists, and the data delay is reduced. At the same time, the single point of failure caused by the 7-layer load balancing gateway is reduced. Also, since there is no need to deploy the 7-layer load balancing gateway, the cost can be reduced.

[0065] In step 305, in the target protocol conversion server in the target communication equipment room, a target pull stream service instance that matches the pull stream data packet is determined.

[0066] In some embodiments, the execution entity can determine a target pull stream service instance that matches the pull stream data packet in the target protocol conversion server in the target communication equipment room.

[0067] After the above-mentioned target communication equipment room receives the first pull stream data packet generated in the process of the above-mentioned target terminal playing the above-mentioned video stream, the protocol conversion server identifier of the protocol conversion server in the above-mentioned target communication equipment room that receives the above-mentioned first pull stream data packet and the pull stream service instance identifier of the pull stream service instance assigned to the above-mentioned first pull stream data packet in the above-mentioned protocol conversion server may be sent to the above-mentioned target terminal. As a result, the above-mentioned target terminal can write the above-mentioned protocol conversion server identifier and the above-mentioned pull stream service instance identifier into the subsequently generated pull stream data packets. Thereby, the above-mentioned execution entity can determine the target protocol conversion server and the target pull stream service instance in the above-mentioned target protocol conversion server based on the protocol conversion server identifier and the pull stream service instance identifier included in the above-mentioned pull stream data packet.

[0068] In some optional embodiments of some embodiments, the step in which the above-mentioned execution entity determines a target pull stream service instance that matches the above-mentioned pull stream data packet in the target protocol conversion server in the above-mentioned target communication equipment room may include the following steps.

[0069] In the first step, obtain a mapping table from the cache server of the protocol conversion server cluster in the above-mentioned target communication equipment room. Here, the above-mentioned mapping table contains mapping information, and the above-mentioned mapping information contains a connection identifier, a protocol conversion server identifier, and a pull stream service instance identifier. The data stored in the above-mentioned cache server may be data shared by the above-mentioned protocol conversion server cluster.

[0070] By way of example, the above-mentioned cache server may be a Redis server.

[0071] In the second step, mapping information whose contained connection identifier is the same as the connection identifier in the above pull stream data packet is selected from the above mapping table as the target mapping information.

[0072] In the third step, a protocol conversion server corresponding to the protocol conversion server identifier in the above target mapping information is determined as the target protocol conversion server.

[0073] In the fourth step, in the above target protocol conversion server, a pull stream service instance corresponding to the pull stream service instance identifier in the above target mapping information is determined as the target pull stream service instance that matches the above pull stream data packet.

[0074] Optionally, the mapping information in the above mapping table is determined by the following steps.

[0075] In the first step, the connection identifier in the above first pull stream data packet, the protocol conversion server identifier of the above target protocol conversion server, and the pull stream service instance identifier of the above target pull stream service instance are determined as mapping information.

[0076] In the second step, the above mapping information is recorded in the mapping table in the above cache server.

[0077] Optionally, the above target protocol conversion server and target pull stream service instance may be determined by the following steps.

[0078] In the first step, in response to determining that the target communication equipment room has received the first pull stream data packet, one protocol conversion server is selected from the protocol conversion server cluster of the target communication equipment room as the target protocol conversion server. The target protocol conversion server may be randomly selected from the protocol conversion server cluster.

[0079] In the second step, by means of the stand-alone load service of the target protocol conversion server, a pull stream service instance is assigned to the first pull stream data packet, and the pull stream service instance is used as the target pull stream service instance. Here, one pull stream service instance may be created for the first pull stream data packet by means of the stand-alone load service.

[0080] As an example, referring to FIG. 4, first, in response to determining that the target communication equipment room 401 has received the first pull stream data packet 402, one protocol conversion server can be selected from the protocol conversion server cluster 403 in the target communication equipment room 401 as the target protocol conversion server 404. Next, by means of the stand-alone load service of the target protocol conversion server 404, a pull stream service instance 405 can be assigned to the first pull stream data packet 402, and the pull stream service instance can be used as the target pull stream service instance.

[0081] In step 306, video stream data is acquired from the edge node of the content delivery network by using the target pull stream service instance.

[0082] In some embodiments, the above execution entity can first convert the above pull stream data packet into an HTTP protocol data packet using the above target pull stream service instance. Then, video stream data is acquired from an edge node of the content delivery network in the communication device room.

[0083] In some optional embodiments of some embodiments, the above execution entity may send the above video stream data to the above target terminal.

[0084] As can be seen from FIG. 3, compared with some corresponding embodiments of FIG. 2, the flow 300 of the method for acquiring video stream data in some corresponding embodiments of FIG. 3 embodies the detailed steps of transferring the pull stream data packet and acquiring the video stream data. Therefore, the solutions described in these embodiments can accelerate the routing speed of the pull stream data packet and reduce the server load through the target interior gateway protocol and the stand-alone load service.

[0085] Referring to FIG. 5, as an implementation manner of the methods shown in the above figures, the present disclosure provides some embodiments of an apparatus for acquiring video stream data. These apparatus embodiments correspond to the method embodiments shown in FIG. 2, and the apparatus can specifically be applied to various electronic devices.

[0086] As shown in FIG. 5, an apparatus 500 for acquiring video stream data according to some embodiments includes a determination unit 501, a transfer unit 502, and an acquisition unit 503. Here, the determination unit 501 is configured to determine whether the equipment room identifier of the equipment room where the pull stream data packet is received is the same as the target equipment room identifier included in the connection identifier in the pull stream data packet in response to receiving the pull stream data packet transmitted from the target terminal. The pull stream data packet is generated when the target terminal plays a video stream, and the target equipment room identifier is the equipment room identifier of the equipment room where the first pull stream data packet generated when the target terminal plays the video stream is received. The transfer unit 502 is configured to transfer the pull stream data packet to the target communication equipment room corresponding to the target equipment room identifier in response to determining that the target equipment room identifier is different from the equipment room identifier of the equipment room where the pull stream data packet is received. The acquisition unit 503 is configured to acquire video stream data through the target communication equipment room.

[0087] In an optional embodiment of some embodiments, the acquisition unit 503 includes a first acquisition sub-unit and a second 2 acquisition sub-unit (not shown). The first acquisition sub-unit is configured to determine a target pull stream service instance that matches the pull stream data packet in the target protocol conversion server in the target communication equipment room, and the second acquisition sub-unit is configured to acquire video stream data from an edge node of the content delivery network using the target pull stream service instance.

[0088] In an optional embodiment of some embodiments, the target communication equipment room is determined by a step of determining, as the target communication equipment room, a communication equipment room corresponding to the network connected when the target terminal generates the first pull stream data packet in the process of playing the video stream.

[0089] In an optional embodiment of some embodiments, the target protocol conversion server and the target pull stream service instance, in response to determining that the target communication equipment room has received the first pull stream data packet, select one protocol conversion server from the protocol conversion server cluster in the target communication equipment room as the target protocol conversion server, and assign a pull stream service instance to the first pull stream data packet by the stand-alone load service of the target protocol conversion server, and use the pull stream service instance as the target pull stream service instance.

[0090] In an optional embodiment of some embodiments, the first acquisition sub-unit is mapping table composed of an acquisition sub-unit, a selection sub-unit, server a specific sub-unit, instance and a specific sub-unit. Here, mapping table the acquisition sub-unit is configured to obtain a mapping table from the cache server of the protocol conversion server cluster in the target communication equipment room. The mapping table contains mapping information. The mapping information includes a connection identifier, a protocol conversion server identifier, and a pull stream service instance identifier. The selection sub-unit is configured to select, from the mapping table, mapping information whose included connection identifier is the same as the connection identifier in the pull stream data packet as the target mapping information. serverA specific sub-unit is configured to determine a protocol conversion server corresponding to the protocol conversion server identifier in the above target mapping information as the target protocol conversion server. instance The specific sub-unit is configured to determine, in the above target protocol conversion server, a pull stream service instance corresponding to the pull stream service instance identifier in the above target mapping information as a target pull stream service instance that matches the above pull stream data packet.

[0091] In an optional embodiment of some embodiments, the mapping information in the above mapping table is determined by: determining, as mapping information, a connection identifier in the above first pull stream data packet, a protocol conversion server identifier of the above target protocol conversion server, and a pull stream service instance identifier of the above target pull stream service instance; and recording the mapping information in the mapping table in the above cache server.

[0092] In an optional embodiment of some embodiments, the above transfer unit 502 includes a first transmission sub-unit, an allocation sub-unit, and a transfer sub-unit. The first transmission sub-unit is configured to transmit the above pull stream data packet to any protocol conversion server in the above communication device room by the target interior gateway protocol. divide The allocation sub-unit is configured to allocate a pull stream service instance to the above pull stream data packet by the stand-alone load service of any of the above protocol conversion servers. The transfer sub-unit is configured to transfer the above pull stream data packet to a target communication device room corresponding to the above target device room identifier by using the above pull stream service instance in response to determining that the above target device room identifier is different from the device room identifier of the above communication device room.

[0093] In an optional implementation of some embodiments, the apparatus 500 further includes a transmission unit, an allocation unit, and a video stream acquisition unit. Here, the transmission unit is configured to transmit the pulse stream data packet to any protocol conversion server in the communication device room according to the target interior gateway protocol. The allocation unit is configured to allocate a pulse stream service instance to the pulse stream data packet by means of the stand-alone load service of any of the protocol conversion servers. The video stream acquisition unit is configured to acquire video stream data through the communication device room by using the pulse stream service instance in response to determining that the target device room identifier is the same as the device room identifier of the communication device room.

[0094] It should be understood that each unit described in the apparatus 500 corresponds to each step of the method described with reference to FIG. 2. Therefore, the operations, features, and beneficial effects described above for the method are similarly applicable to the apparatus 500 and the units included therein, and the description thereof is omitted here.

[0095] Next, refer to FIG. 6, which shows a schematic structural diagram of an electronic device 600 suitable for implementing some embodiments of the present disclosure. The electronic device shown in FIG. 6 is merely an example and does not impose any limitations on the functions and usage scope of the embodiments of the present disclosure.

[0096] As shown in FIG. 6, the electronic device 600 may include a processing device (e.g., a central processing unit, a graphics processor, etc.) 601 capable of performing various appropriate operations and processes by a program stored in a read-only memory (ROM) 602 or a program loaded from a storage device 608 into a random access memory (RAM) 603. The RAM 603 further stores various programs and data necessary for the operation of the electronic device 600. The processing device 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0097] Normally, the following devices (e.g., an input device 606 including a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc., an output device 607 including a liquid crystal display (LCD), a speaker, a vibrator, etc. , storage device 608 and a communication device 609) may be connected to the I / O interface 605. The communication device 609 enables the electronic device 600 to communicate wirelessly or wiredly with other devices to exchange data. FIG. 6 shows the electronic device 600 having various devices, but it should be understood that it is not required to implement or include all the illustrated devices. Optionally executed, or more or fewer devices may be implemented. Each block shown in FIG. 6 may represent one device or, if necessary, a plurality of devices.

[0098] In particular, according to some embodiments of the present disclosure, the process described with reference to the flowchart may be implemented as a computer software program. For example, some embodiments of the present disclosure are computer programs embodied in a computer-readable medium muIt includes a computer program having program code for performing the method shown in the flowchart. In some such embodiments, the computer program can be downloaded and installed from a network via a communication device 609, or can be installed from a storage device 608 or a ROM 602. When the computer program is executed by a processing device 601, it performs the above functions limited by the methods of some embodiments of the present disclosure.

[0099] Note that the computer-readable medium described in some embodiments of the present disclosure may be a computer-readable signal medium or a computer-readable storage medium, or any combination of both. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of the computer-readable storage medium include , po - a floppy computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory) , po- A computer-readable storage medium can include, but is not limited to, a table compact disc read-only memory (CD-ROM), optical memory, magnetic memory, or any suitable combination thereof. In some embodiments of the present disclosure, a computer-readable storage medium may be any tangible medium that includes or stores a program that can be used by or incorporated into a command execution system, apparatus, or device. In some embodiments of the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which computer-readable program code is carried. Such a propagated data signal can take various forms, including, but not limited to, electromagnetic signals, optical signals, or any suitable combination thereof. The computer-readable signal medium may further be any computer-readable medium other than a computer-readable storage medium. The computer-readable signal medium can transmit, propagate, or transmit a program used by or incorporated into a command execution system, apparatus, or device. The program code included in the computer-readable medium can be transmitted through any suitable medium, including, but not limited to, electric wires, optical cables, RF (radio frequency), or any suitable combination thereof.

[0100] In some embodiments, a client, server can communicate using any network protocol known currently or developed in the future, such as HTTP (HyperText Transfer Protocol), and can interconnect with digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), the Internet, and end-to-end networks (e.g., ad hoc end-to-end networks), as well as any network known currently or developed in the future.

[0101] The computer-readable medium may be included in the electronic device or may exist separately without being implemented in the electronic device. The computer-readable medium carries one or more programs, and when the one or more programs are executed by the electronic device, in the electronic device, in response to receiving a pulse stream data packet transmitted from a target terminal, a step of determining whether a device room identifier of a communication device room that has received the pulse stream data packet is the same as a target device room identifier included in a connection identifier in the pulse stream data packet, wherein the pulse stream data packet is generated when the target terminal plays a video stream, and the target device room identifier is a device room identifier of a communication device room that has received the first pulse stream data packet generated when the target terminal plays the video stream, a step; in response to determining that the target device room identifier is different from the device room identifier of the communication device room that has received the pulse stream data packet, a step of transferring the pulse stream data packet to a target communication device room corresponding to the target device room identifier; and a step of acquiring video stream data through the target communication device room are executed.

[0102] Computer program code for performing the operations of some embodiments of the present disclosure can be created in one or more programming languages, or combinations thereof, including object-oriented programming languages such as Java, Smalltalk, C++, and conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, executed as a stand-alone software package, executed partially on the user's computer while being executed partially on a remote computer, or executed entirely on a remote computer or server. In the case of a remote computer, the remote computer can be connected to the user computer via any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computer (e.g., via Internet services provided by an Internet service provider).

[0103] The flowcharts and block diagrams in the drawings are examples of the architecture, functions, and operations that can be implemented by systems, methods, and computer programs according to various embodiments of the present disclosure. In this regard, each block in the flowchart or block diagram can represent a module, a program segment, or a part of the code. The module, program segment, or part of the code includes at least one executable instruction for realizing a predetermined logic function. In some optional embodiments, the functions shown in the blocks may be executed in an order different from that shown in the drawings. For example, two consecutively shown blocks may actually be executed substantially in parallel or sometimes in the reverse order depending on the functions involved. It should also be noted that all blocks in the block diagram and / or flowchart, as well as combinations of blocks in the block diagram and / or flowchart, may be implemented in a dedicated hardware-based system that executes a predetermined function or operation, or may be implemented in a combination of dedicated hardware and computer instructions.

[0104] The units described in some embodiments of the present disclosure may be implemented in software or in hardware. The described units may be provided within a processor and may be described, for example, as "a processor including a determination unit, a transfer unit, and an acquisition unit". Here, the names of these units do not limit the unit itself in some cases. For example, the acquisition unit may be described as "a unit that acquires video stream data".

[0105] The functions described above in this specification may be performed, at least in part, by at least one hardware logic component. For example, without limitation, general-purpose hardware logic components that can be employed include field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system on chips (SOCs), complex programmable logic devices (CPLDs), and the like.

Claims

1. In response to receiving a pull stream data packet transmitted from a target terminal, determining whether the equipment room identifier of the equipment room where the communication equipment that received the pull stream data packet is the same as the target equipment room identifier included in the connection identifier in the pull stream data packet; In response to determining that the target equipment room identifier is different from the equipment room identifier of the equipment room where the communication equipment that received the pull stream data packet is located, transferring the pull stream data packet to a target communication equipment room corresponding to the target equipment room identifier; Obtaining video stream data via the target communication equipment room, including: The pull stream data packet is generated when the target terminal plays a video stream; The target equipment room identifier is the equipment room identifier of the equipment room where the communication equipment received the first pull stream data packet generated when the target terminal plays the video stream; A method for obtaining video stream data.

2. The step of obtaining video stream data via the target communication equipment room includes: In a target protocol conversion server in the target communication equipment room, determining a target pull stream service instance that matches the pull stream data packet; Using the target pull stream service instance to obtain video stream data from an edge node of a content delivery network. The method according to claim 1.

3. The target communication equipment room is determined by a step of determining, as the target communication equipment room, the communication equipment room corresponding to the network connected when the first pull stream data packet is generated in the process of the target terminal playing the video stream. The method according to claim 1.

4. The target protocol conversion server and the target pull stream service instance include: In response to determining that the target communication equipment room has received the first pull stream data packet, selecting one protocol conversion server from a protocol conversion server cluster in the target communication equipment room as the target protocol conversion server; In the stand-alone load service of the target protocol conversion server, assign a pull stream service instance to the first pull stream data packet, and use the pull stream service instance as the target pull stream service instance; The method according to claim 2, determined by

5. In the target protocol conversion server in the target communication device room, the step of determining a target pull stream service instance that matches the pull stream data packet is as follows: Obtain a mapping table from the cache server of the protocol conversion server cluster in the target communication device room, where the mapping table contains mapping information, and the mapping information contains a connection identifier, a protocol conversion server identifier, and a pull stream service instance identifier; Select, from the mapping table, mapping information whose contained connection identifier is the same as the connection identifier in the pull stream data packet as the target mapping information; Determine, as the target protocol conversion server, the protocol conversion server corresponding to the protocol conversion server identifier in the target mapping information; In the target protocol conversion server, determine, as the target pull stream service instance that matches the pull stream data packet, the pull stream service instance corresponding to the pull stream service instance identifier in the target mapping information; The method according to claim 2, comprising

6. The mapping information in the mapping table is Determine, as mapping information, the connection identifier in the first pull stream data packet, the protocol conversion server identifier of the target protocol conversion server, and the pull stream service instance identifier of the target pull stream service instance; Record the mapping information in the mapping table in the cache server; The method according to claim 5, determined by

7. In response to determining that the target equipment room identifier is different from the equipment room identifier of the communication equipment room that received the pull stream data packet, the step of transferring the pull stream data packet to a target communication equipment room corresponding to the target equipment room identifier includes: Transmitting the pull stream data packet to any protocol conversion server in the communication equipment room by a target internal gateway protocol; Allocating a pull stream service instance to the pull stream data packet by a stand-alone load service of any of the protocol conversion servers; In response to determining that the target equipment room identifier is different from the equipment room identifier of the communication equipment room, transferring the pull stream data packet to a target communication equipment room corresponding to the target equipment room identifier by using the pull stream service instance. The method according to claim 1, comprising:

8. Transmitting the pull stream data packet to any protocol conversion server in the communication equipment room by a target internal gateway protocol; Allocating a pull stream service instance to the pull stream data packet by a stand-alone load service of any of the protocol conversion servers; In response to determining that the target equipment room identifier is the same as the equipment room identifier of the communication equipment room, acquiring video stream data through the communication equipment room by using the pull stream service instance; The method according to claim 1, further comprising:

9. A determination unit configured to determine whether the equipment room identifier of the communication equipment room that received the pull stream data packet is the same as the target equipment room identifier included in the connection identifier in the pull stream data packet in response to receiving the pull stream data packet transmitted from a target terminal; A transfer unit configured to transfer the pull stream data packet to a target communication equipment room corresponding to the target equipment room identifier in response to determining that the target equipment room identifier is different from the equipment room identifier of the communication equipment room that received the pull stream data packet; An acquisition unit configured to acquire video stream data through the target communication equipment room, comprising: The pull stream data packet is generated when the target terminal plays back the video stream, The target device room identifier is the device room identifier of the communication device room that received the first pull stream data packet generated when the target terminal plays back the video stream. An apparatus for acquiring video stream data.

10. At least one processor; In an electronic device including a storage device storing at least one program, When the at least one program is executed by the at least one processor, the at least one processor realizes the method according to any one of Claims 1 to 8. An electronic device.

11. A computer-readable medium storing a computer program that realizes the method according to any one of Claims 1 to 8 when executed by a processor.

12. A computer program that realizes the method according to any one of Claims 1 to 8 when executed by a processor.

Citation Information

Patent Citations

  • Message queue consumption method realized based on multiple machine rooms and electronic equipment

    CN112068972A

  • Information processing system, information processing device, information processing method, information processing program, mobile terminal device, and control program thereof

    JP2017120526A

  • Target cell access method and apparatus

    JP2020507255A

  • System and method for handing over multimedia streams among heterogenous devices for n-screen service

    KR1020140126955A