WO2016037497A1 - 传输视频的方法、网关设备和视频传输系统 - Google Patents

传输视频的方法、网关设备和视频传输系统 Download PDF

Info

Publication number
WO2016037497A1
WO2016037497A1 PCT/CN2015/080034 CN2015080034W WO2016037497A1 WO 2016037497 A1 WO2016037497 A1 WO 2016037497A1 CN 2015080034 W CN2015080034 W CN 2015080034W WO 2016037497 A1 WO2016037497 A1 WO 2016037497A1
Authority
WO
WIPO (PCT)
Prior art keywords
url
video
sampling
quey
param
Prior art date
Application number
PCT/CN2015/080034
Other languages
English (en)
French (fr)
Inventor
韩霆军
郑桂庆
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to EP15839268.8A priority Critical patent/EP3185563A4/en
Publication of WO2016037497A1 publication Critical patent/WO2016037497A1/zh
Priority to US15/456,137 priority patent/US10085046B2/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8352Generation of protective data, e.g. certificates involving content or source identification data, e.g. Unique Material Identifier [UMID]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Definitions

  • the present invention relates to the field of communications, and more particularly to a method of transmitting video, a gateway device, and a video transmission system.
  • HTTP Hypertext Transfer Protocol
  • the telecommunications carrier for example, the gateway device
  • HTTP message carrying a Uniform Relocation Locator corresponding to the video that is desired to be viewed
  • the publisher for example, the video server of the video site
  • the telecommunication operator In order to improve the user experience and shorten the waiting time for users to watch video, the telecommunication operator usually sets a cache device to cache the video obtained from the Internet video publisher and establish a mapping relationship between each obtained video and each URL. Therefore, when the HTTP message carrying the same URL as the cached video is received, the video can be obtained from the cache device and sent to the user equipment.
  • mapping relationship is generated based on the complete URL, or the cache device performs indexing on each video based on the complete URL, and the special behavior of the Internet video publisher's non-standard specification makes the complete URL The way you cache indexes is very inefficient.
  • the URL of a video is usually dynamically generated by an Internet video publisher. For example, when a user views a video, there is a dragging behavior. Each drag triggers the user equipment to send a new HTTP message to the telecom operator to obtain and Drag the video clips corresponding to the behavior, and these HTTP messages may carry mutually different URLs assigned by the Internet video publishers, and these URLs actually correspond to the same video, but the corresponding specific fragments are different, and thus, The same video appears Multiple caches are repeatedly cached, and multiple URLs requesting the same video can only be partially hit in the cache, which greatly reduces the cache efficiency of the cache device and increases the processing load of the cache device.
  • the embodiments of the present invention provide a method for transmitting video, a gateway device, and a video transmission system.
  • the cache efficiency of the cache device can be improved and the processing load of the cache device can be reduced.
  • a method for transmitting video is provided, applied to a gateway device, wherein one side of the gateway device has a communication connection with one or more video servers, and the other side of the gateway device has one or more The user equipment also has a communication connection; the gateway device has a communication connection with the cache device, or the gateway device has a cache device integrated therein; wherein the one or more user devices comprise a second user device, the one or The plurality of video servers include a target video server; the method includes: the gateway device receiving a target URL sent by the second user device, and determining, from the cache device, a second video corresponding to the target URL; The second video is from the target video server; the gateway device determines a segmentation part of the target URL according to the segmentation part extraction model; the segmentation part extraction model is used to indicate a uniform resource locator URL a segmentation portion; the segmentation portion is for indicating a range of the video segment in the original video; Segmented portion of the target URL is determined from the target video segment in the second video
  • the method further includes: the gateway device receiving a first sampling URL and a second sampling URL from the first user equipment; the first sampling URL and The second sampling URLs are all corresponding to the first video; determining a first sampling information set according to the first sampling URL, determining a second sampling information set according to the second sampling URL; and extracting conditions according to the segmentation part And comparing the first sampling information set and the second sampling information set to determine segmentation information that satisfies the segmentation part extraction condition; and determining, according to the segmentation information, the segmentation part extraction model.
  • the first sampling URL includes a path Path portion and a search parameter Quey Param portion, where the Quey Param portion of the first sampling URL includes K Quey Param, the first sampling information set includes at least one of a first information and a second information, the first information being used to indicate a depth and a Path value of a Path portion of the first sampling URL, The second information is used to indicate the first mining Name and parameter value of K Quey Param of the URL; the second sampling URL includes a Path part and a Quey Param part, and the Quey Param part of the second sampling URL includes M Quey Param, the second sampling information set At least one of the third information and the fourth information, the third information is used to indicate a depth and a Path value of a Path portion of the second sampling URL, and the fourth information is used to indicate the second sampling URL The name and parameter values of the M Quey Param.
  • the segment part extraction condition includes at least one of a first condition, a second condition, and a third condition
  • the first condition is that the depth of the Path portion indicated by the segmentation information is the same in the first sampling information set and the second sampling information set, and the segmentation information indicates that the Path value is in the The first sampling information set and the second sampling information set are different;
  • the second condition is: the name of the Quey Param indicated by the segment information belongs to the first sampling information set and the second sampling a parameter set, and the parameter value of the Quey Param indicated by the segmentation information is different in the first sampling information set and the second sampling information set;
  • the third condition is: the segmentation information indication The name of the Quey Param belongs to only one of the first sampling information set and the second sampling information set.
  • the gateway device receives the first sampling URL and the second sampling URL from the first user equipment, including: the gateway The device receives the first sampling URL in a first time period, and receives the second sampling URL in a second time period, wherein an interval between the first time period and the second time period is according to the first video The duration is determined.
  • the determining, by the cache device, the second video corresponding to the target URL includes: determining an identifier partial extraction model, where the identifier The partial extraction model is configured to indicate a segmentation part of the URL; and determining, according to the identification part extraction model, an identification part of each cached URL of the cached video cached in the cache device; wherein each of the cached URLs is related to the cached video Corresponding to: traversing the non-Host portion of the target URL, if it is determined that the non-Host portion of the target URL includes at least one character string of the identifier portion of the cache URL, determining that the cached video is the second video .
  • the identifier partial extraction model is determined according to an identifier portion of the at least two third sampling URLs, each of the The third sampling URLs are all corresponding to the third video, and the character strings of the third sampling URLs are different, and the character strings of the identification portions of the third sampling URLs are the same, and the user equipment corresponding to each third sampling URL is
  • the identifier portion is included in a non-Host portion of each of the third sample URLs, and the non-Host portion is a portion of the character string of the URL other than the Host portion.
  • the Host part of each cache URL is the same.
  • the non-Host part includes a path Path part, the depth of the Path part of each cached URL is the same, and the traversing the target URL
  • the non-Host portion includes: traversing the non-Host portion of the target URL if the depth of the Path portion of the target URL is the same as the depth of the Path portion of each of the cache URLs.
  • the method further includes: receiving at least one verification URL, where the non-Host substring of the verification URL includes each a string of the identification portion of the cache URL; forwarding the verification URL to the video server; receiving a verification video sent by the video server according to the verification URL; determining that the verification video is the same as the cache video.
  • the cached video belongs to the third video.
  • a gateway device for use in a gateway device, wherein one side of the gateway device has a communication connection with one or more video servers, and the other side of the gateway device is associated with one or more users
  • the device also has a communication connection; the gateway device has a communication connection with the cache device, or the gateway device has a cache device integrated therein; wherein the one or more user devices include a second user device, the one or more
  • the video server includes a target video server, and the gateway device includes: a receiving unit, configured to receive a target URL sent by the second user equipment; and a determining unit, configured to determine, from the cache device, a target URL corresponding to the target a second video, determining a segmentation part of the target URL according to the segmentation part extraction model, and determining a target video segment from the second video according to the segmentation part of the target URL; wherein the second video The video is from the target video server; the segmentation part extraction model is used to indicate a segmentation part of the uniform resource locator URL; Seg
  • the receiving unit is further configured to: Receiving a first sampling URL and a second sampling URL from the first user equipment; the first sampling URL and the second sampling URL are both corresponding to the first video; the determining unit is further configured to: according to the Determining, by a sampling URL, a first set of sampling information, determining a second set of sampling information according to the second sampling URL, and performing, according to the segmentation part extraction condition, the first sampling information set and the second sampling information set And comparing processing to determine segmentation information that satisfies the segmentation part extraction condition, and determining the segmentation part extraction model according to the segmentation information.
  • the first sampling URL includes a path Path part and a search parameter Quey Param part, where the Quey Param part of the first sampling URL includes K Quey Param, the first sampling information set includes at least one of a first information and a second information, the first information being used to indicate a depth and a Path value of a Path portion of the first sampling URL, The second information is used to indicate a name and a parameter value of the K Quey Param of the first sampling URL; the second sampling URL includes a Path part and a Quey Param part, and the Quey Param part of the second sampling URL includes M Quey Param, the second sampling information set includes at least one of a third information and a fourth information, where the third information is used to indicate a depth and a Path value of a Path portion of the second sampling URL, where the fourth The information is used to indicate the names and parameter values of the M Quey Params of the second sampled URL.
  • the segment part extraction condition includes at least one of a first condition, a second condition, and a third condition
  • the first condition is that the depth of the Path portion indicated by the segmentation information is the same in the first sampling information set and the second sampling information set, and the segmentation information indicates that the Path value is in the The first sampling information set and the second sampling information set are different;
  • the second condition is: the name of the Quey Param indicated by the segment information belongs to the first sampling information set and the second sampling a parameter set, and the parameter value of the Quey Param indicated by the segmentation information is different in the first sampling information set and the second sampling information set;
  • the third condition is: the segmentation information indication The name of the Quey Param belongs to only one of the first sampling information set and the second sampling information set.
  • the receiving unit is specifically configured to receive the first sampling URL and the second sampling URL from the first user equipment. Receiving the first sampling URL in a first time period, and receiving the second sampling URL in a second time period, wherein an interval between the first time period and the second time period is according to the first The duration of the video is determined.
  • the determining unit is further configured to: determine an identifier part extraction model for indicating an identifier part of the URL, and according to the identifier part Extracting a model, determining an identification portion of each cache URL of the cached video cached in the cache device, traversing a non-Host portion of the target URL, and determining that the non-Host portion of the target URL includes at least one of the cache URLs And determining, by the string of the part, the cached video is the second video; wherein each of the cached URLs corresponds to the cached video.
  • the identifier part extraction model is determined according to the identifier part of the at least two third sampling URLs, and each of the third sampling URLs is Corresponding to the third video, the character strings of the third sampling URLs are different, and the character strings of the identifier portions of the third sampling URLs are the same, and the user equipments corresponding to the third sampling URLs are different, and the identifier portion includes In the non-Host portion of each of the third sample URLs, the non-Host portion is a portion of the character string of the URL other than the Host portion.
  • the non-Host part includes a path Path part, the depth of the Path part of each cached URL is the same, and the traversing the target URL
  • the determining unit is specifically configured to traverse the non-Host part of the target URL if the depth of the Path part of the target URL is the same as the depth of the Path part of each of the cached URLs.
  • the non-Host part includes a path Path part and a search parameter Quey Param part, where the determining unit is further configured to obtain each of the cached URLs of Quey.
  • the parameter name of the search parameter included in the Param part is used to generate a parameter name set; and the parameter name of the search parameter included in the Quey Param part of the target URL is determined to belong to the parameter name set.
  • a third aspect provides a video transmission system, including: the foregoing gateway device; a user equipment, configured to send a uniform resource locator URL to the gateway device, and obtain, from the gateway device, a URL corresponding to the URL a video server, configured to receive the URL forwarded by the gateway device, determine a video corresponding to the URL, and send the video to the gateway device.
  • a method for transmitting video, a gateway device, and a video transmission system by acquiring a segmentation part for identifying a location of a video segment in a complete video in a URL, thereby receiving a user equipment
  • FIG. 1 is a block diagram of a video transmission system according to an embodiment of the present invention.
  • FIG. 2 is a schematic flowchart of a method for transmitting video according to an embodiment of the present invention
  • FIG. 3 is a schematic diagram showing an example of a division method of each part in a URL
  • FIG. 4 is a schematic diagram showing an example of a depth and a Path value of a Path portion in a URL
  • FIG. 5 is a schematic block diagram of a gateway device according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of a gateway device according to an embodiment of the present invention.
  • FIG. 7 is a schematic architectural diagram of a video transmission system according to an embodiment of the present invention.
  • the user equipment can access the video server that provides the video service through the communication network provided by the telecommunication operator, and the communication network can be, for example, a Global System of Mobile communication (GSM) code.
  • GSM Global System of Mobile communication
  • CDMA Code Division Multiple Access
  • WCDMA Wideband Code Division Multiple Access
  • GPRS General Packet Radio Service
  • LTE Long Term Evolution
  • a User Equipment which may also be called a Mobile Terminal, a mobile user equipment, or the like, may be connected to one or more core networks via the above communication network (eg, RAN, Radio Access Network) (for example, The network where the video server is located communicates, and the user equipment can be a mobile terminal, such as a mobile phone (or "cellular" phone) and a computer with a mobile terminal, for example, can be portable, pocket, handheld, built-in computer Or in-vehicle mobile devices that exchange language and/or data with a wireless access network.
  • RAN Radio Access Network
  • the HTTP communication mode may be adopted between the user equipment and the video server, or the information transmitted between the user equipment and the video server conforms to the HTTP communication rule.
  • the video website allocates a video corresponding to the video for the video that the user wants to watch (for example, the user desires to know the video desired by the user's click behavior).
  • the user equipment sends a request message carrying the URL to the video server of the video website, so that the video server can find the video according to the URL and send the video to the user equipment.
  • communication between the user equipment and the video server is performed via a communication network provided by the telecommunication operator, for example, a message sent by the user equipment to the video server (for example, a message requesting to play a video clip) needs to be first
  • the format is encapsulated to conform to the above-described communication network transmission rules, and the message is converted to a format recognizable by the video server via a gateway device such as the communication network.
  • the video server may search for a video corresponding to the message and transmit the video to the gateway device, and the gateway device may encapsulate the video into a service conforming to the foregoing communication network transmission rule.
  • the format is delivered to the user device.
  • the telecom operator In order to improve the user experience and shorten the waiting time for users to watch video, the telecom operator usually sets a cache device to cache the video obtained from the video server, as shown in FIG. 1 .
  • the cache device is usually deployed at an access gateway of FBB (Fix Broadband) or MBB (Mobile Broadband), and the cache device is communicatively connected or integrated with the gateway device.
  • FBB Fix Broadband
  • MBB Mobile Broadband
  • the deployment of the cache device in the gateway device is only a typical application scenario of the present invention, and should not be construed as limiting the application scenario of the present invention.
  • the method for transmitting video can be generally applied to the video transmission system shown in FIG. 1.
  • the video transmission system includes a gateway device, and one side of the network device communicates with one or more video servers. Connected to the other side with one or more user equipment communication devices
  • the gateway device is also configured with a cache device, and the cache device may be integrated into the gateway device or communicated with the gateway device as a separate entity.
  • a gateway device having a video buffer function is used as an execution subject of a method for transmitting video according to an embodiment of the present invention.
  • the other methods related to video transmission and buffering can be applied to the method of the present invention.
  • FIG. 2 shows a schematic flow diagram of a method 100 of transmitting video in accordance with an embodiment of the present invention. As shown in Figure 2, the method includes:
  • S120 Receive a target URL sent by the second user equipment, and determine, from the cache device, a second video corresponding to the target URL, where the second user equipment is one of at least one user equipment included in the video transmission system;
  • the second video is from the target video server, the target server is one of a plurality of video servers communicatively connected to the gateway device, and the second video is obtained by the gateway device from the target video server before the second user device sends the target URL.
  • the target video server sends a second video to the gateway device in response to the request from the user device forwarded by the gateway device, and The gateway device forwards the second video to the user equipment, and the second video is further stored in the cache device, so that when the user equipment requests the second video again, the slave device is cached in the next time period. Forward the second video directly.
  • S140 Determine a target video segment from the second video according to the segmentation part of the target URL, and send the target video segment to the second user equipment.
  • a segmentation portion is added, which may also be referred to as a Range portion, to indicate the range of the video segment in the original video, for example, the start time and end time of the video segment. Or, the start and end bytes of the video clip.
  • the reason for the segmentation portion appearing in the URL listed above is merely an exemplary description, and the present invention is not limited thereto.
  • the video website automatically divides the original video into multiple segments. Delivered to the user device, a segmentation portion for identifying the location of the video clip in the original video will also appear in the URL.
  • the sampled video may be trained to obtain a segmented partial extraction model, which is used to indicate a segmentation part of the uniform resource locator URL;
  • the segmentation portion is extracted from the URL corresponding to the video segment, and based on the segmentation portion, the video segment is intercepted from the source video of the video segment. Therefore, there is no need to cache the video clips separately.
  • the segmentation part extraction model is determined according to the segmentation information, and the segmentation information is compared according to the segmentation part extraction condition, and the first sampling information set and the second sampling information set are compared and processed.
  • Determining, in the first sampling information set and the second sampling information set, the first sampling information set is determined according to a first sampling URL from a first user equipment, where the first sampling URL includes a path Path part and a search parameter
  • the Quey Param part of the first sampling URL includes K Quey Param, the first sampling URL corresponding to the first video, the first sampling information set including at least one of the first information and the second information
  • the first information is used to indicate a depth and a Path value of a Path portion of the first sampling URL
  • the second information is used to indicate a name and a parameter value of the K Quey Params of the first sampling URL
  • the second sampling information set Is determined according to a second sampling URL from the first user equipment, the second sampling URL including a Path portion and
  • the segmentation part extraction condition includes at least one of a first condition, a second condition, and a third condition,
  • the first condition is that the depth of the Path portion indicated by the segmentation information is the same in the first sampling information set and the second sampling information set, and the segmentation information indicates that the Path value is in the first sampling information set and The second sampling information set is different,
  • the second condition is that the name of the Quey Param indicated by the segment information belongs to both the first sampling information set and the second sampling information set, and the parameter value of the Quey Param indicated by the segment information is in the first sampling information.
  • the set is different from the second sampled information set
  • the third condition is that the name of the Quey Param indicated by the segmentation information belongs to only one of the first sampling information set and the second sampling information set.
  • the method before receiving the target URL sent by the second user equipment, the method further includes: receiving the first sampling URL and the second sampling URL;
  • the segmentation partial extraction model is determined.
  • the gateway device acquires the URL #A (ie, an example of the first sampling URL), wherein the URL #A and the user device A (ie, the first user)
  • the gateway device may be extracted from an HTTP message from the user device A for requesting playback of a segment of video A.
  • the process of obtaining the URL#A listed above is only an exemplary description, and the present invention is not limited thereto.
  • the URL#A may also be provided by an Internet video publisher to a gateway device, as long as it can It is ensured that the URL #A corresponds to the user equipment A, and the URL #A corresponds to the video A.
  • the URL #A can be used as an index of the complete video A, or the URL#A Can be used as an index of a certain segment of video A.
  • the above-mentioned Range part corresponding to the clip usually exists in the Path part or the Search parameter (Quey Param) part of the URL, that is, the Range part may be the Path part.
  • the Path value of a certain depth in the middle may also be the value of a parameter in the Quey Param part.
  • the gateway device may extract the Path part and/or the Quey Param part of the URL#A.
  • FIG. 3 shows an example of the composition of each part of the character string of the URL.
  • the domain name (Host) part of the URL and the Path part are separated by a "/" symbol, so the network device can host the host.
  • the character after the first "/" symbol (or the last "/" symbol in the URL) is recognized as the starting character of the Path part.
  • the Path portion of the URL is separated from the Quey Param portion by a "?” symbol, so the network device can place the Path portion (or, after the last "/" symbol in the URL).
  • the character after the first "?” symbol is recognized as the starting character of the Path part. Thereby, the extraction of the Quey Param part can be realized.
  • the network device can recognize the character after the first "?" symbol after the path part as the end character of the Path part, thereby combining the start character of the Path part. Extraction of the Path section.
  • the extraction method of the Path part listed above and the extraction method of the Quey Param part are merely exemplary descriptions, and the present invention is not limited thereto, and may be changed according to the change of the URL, for example, some URLs only exist.
  • the Path section does not exist in the Quey Param section. In this case, it is only necessary to determine the starting character of the Path section.
  • the separator symbols (ie, the "/" symbol) of the Host portion and the Path portion listed above and the separator symbol (ie, the "?” symbol) between the Path portion and the Quey Param portion are merely illustrative, and the present invention It is not limited to this.
  • the symbols used in the URL to implement the function of separating the marks are all within the scope of the present invention.
  • the gateway device After the gateway device completes the extraction of the Path portion of the URL #A, the depth and Path value of the Path portion of the URL #A can be determined.
  • the depth (or level) of the Path portion can be determined according to the number of "/" symbols included in the Path portion, for example, FIG. 4 shows a schematic diagram of an example of the Path portion in the URL. Taking the URL shown in FIG. 4 as an example, the URL includes six "/" symbols, so it can be determined that the depth is 6, wherein
  • the path value of the depth of the first level is "sec (44ab57eec5d981faa33)";
  • the path value of the level 2 depth is "frag(0)"
  • the path value of the level 3 depth is "video"
  • the path value of the depth of level 4 is "484";
  • the Path value of the 5th level depth is "516"
  • the Path value of the depth of the sixth level is "56615484_mp4_h264_aac_1.flv”.
  • the gateway device can determine the names and parameter values of all Quey Param in the Quey Param portion of URL#A.
  • NAME is the parameter name
  • Value is the parameter value.
  • the present invention is not limited to this, and may be only NAME, which may be NAME empty, or VALUE may be empty, that is, the format of Quey Param in the URL may be:
  • the URL includes nine "&" symbols, so it can be determined that it includes nine Quey Param, wherein
  • the character string corresponding to the first Quey Param is "4", its parameter name is “4", and the parameter value is null;
  • the depth Path value of the Path portion of the URL #A and the name and parameter value of each Quey Param in the Quey Param portion can be determined, and the above information is recorded to generate a first sample information set.
  • the gateway device acquires the URL #B (ie, an example of the second sampling URL), wherein the URL #B and the user device A (ie, an example of the first user device)
  • the URL #B corresponds to the video A (ie, an example of the first video)
  • the gateway device may be extracted by the gateway device from the HTTP message for requesting to play the video A from the user equipment A, Alternatively, it may be that the gateway device extracts from the HTTP message from the user equipment A for requesting playback of the segment of the video A.
  • the video site is a different segment from the same video requested by the same user.
  • the Rang part for example, a string indicating the start time of the video
  • URL #A and URL#B respectively correspond to the same video ( That is, different segments of the above video A)
  • URL#A corresponds to a complete video A
  • URL#B corresponds to a segment of video A
  • URL#A corresponds to a segment of video A
  • URL#B corresponds to a complete video.
  • URL#A corresponds to one segment of video A and URL#B corresponds to another segment of video A.
  • the online sampling method may be adopted, and the Rang partial extraction model is obtained while training the video for the user. Therefore, by making URL#A and URL#B correspond to the same video (ie, the above video A) Can improve the accuracy of the Rang part extraction model.
  • whether the URL #A and the URL #B correspond to the same video can be determined according to the acquisition time of the URL #A and the URL #B.
  • receiving the first sampling URL and the second sampling URL includes:
  • the gateway device first receives the URL #A, it can determine the video A corresponding to the URL #A (here, the URL #A can correspond to the complete video A, and can also correspond to a segment of the video A), wherein
  • the video A may be obtained by the gateway device from the video server, or may be obtained by the gateway device from the cached video by using the identification part in the URL#A (then, determining the second video corresponding to the target URL as an example) , the process is described in detail).
  • the total duration of the video A ie, the duration of the first video
  • a determination range ie, a preset range
  • the start time of the determination range is the reception time of the URL #A
  • the duration of the determination range is the total duration of the video A.
  • the URL #A and the URL #B may be considered to correspond to the same video.
  • a URL whose reception time is outside the determination range cannot be used as the URL #B.
  • the acquisition time interval of the first sampling URL and the second sampling URL is within a preset range, and the preset range is according to the first sampling URL and the second sampling URL.
  • the duration of a video is determined to ensure that the first sample URL and the second sample URL respectively correspond to different segments of the first video, thereby improving the validity of the Rang partial extraction model.
  • the above-mentioned methods for determining that the URL #A and the URL #B correspond to the same video are merely exemplary descriptions, and the present invention is not limited thereto.
  • the identifier extraction model may be extracted according to the determination part extraction URL #A and the URL described later. After identifying the identification part of #B and determining that the identification parts of URL#A and URL#B are the same, it is determined that URL#A and URL#B correspond to the same video, and then, the identification part of URL#C and the corresponding video C are determined.
  • the process is an example and detailed.
  • the gateway device may extract the Path part and/or the Quey Param part of the URL#B, and may determine the depth and Path value of the Path part of the URL#B, and the Quey Param part of the URL#B.
  • the name and parameter values of all Quey Param and record the above information to generate a second set of sampled information. This process is similar to the above-described processing for URL #A, and a detailed description thereof will be omitted herein to avoid redundancy.
  • the first sampling URL is a URL that is sent by the first user equipment when requesting to acquire the first video.
  • the URL #A may be a URL that the video website sends to the user equipment when the user requests to view the complete video (for example, when the user clicks the play icon).
  • the URL #B may be a URL that the video website sends to the user equipment when the drag operation occurs, thereby ensuring that the character string that is different between the URL #B and the URL #A is related to the drag action. Furthermore, the accuracy of the Rang partial extraction model implemented by the present invention can be improved.
  • the first sampling URL is the same as the string of the host name Host portion of the second sampling URL.
  • the level of the Path portion used to indicate the location of the clip in the source video or the name of Quey Param is usually the same Therefore, by selecting the same URL of the Host part as the above URL#A and URL#B, it can be ensured that the video website generating the URL#A and URL#B is the same, thereby improving the accuracy of the Rang part extraction model.
  • the first sampling information set and the second sampling information set may be compared to determine a Rang partial extraction model.
  • the gateway device can traverse the path values of the depths in the Path part of URL#A and URL#B.
  • Level comparison for example, you can first compare the first-level Path value in the Path part of URL#A and URL#B, that is, the string between the first "/" symbol and the second "/" symbol, Then compare the second-level Path value in the Path part of URL#A and URL#B, that is, the string between the second "/" symbol and the third "/” symbol, and so on.
  • Path portion of URL#B is: /sec(44ab57eec5d981faa33)/frag(1)/video/484/516/56615484_mp4_h264_aac_1.flv,
  • the gateway device may determine the level 2 of the path values in the URL #A and the URL #B that are different from each other, and the mutually different path values in the URL #A and the URL #B are frag (0) and frag (1).
  • the gateway device can determine that the video website that publishes the video A is a segment that identifies the video by a second level (ie, a frag) in the Path portion of the URL, for example, a value of "frag" can be determined to indicate the video segment. Relative to the start or end time of the full video.
  • a second level ie, a frag
  • Rang partial extraction model can be determined as a path value for extracting the second level in the Path portion of the URL.
  • the number of Quey Param in the first sampling information set and the second sampling information set is the same, that is, the video corresponding to URL#A and URL#B is a different video of the same video. Fragment, therefore, the number of Quey Param in the Quey Param section of URL#A and URL#B, or the number of parameter names in Quey Param is usually the same.
  • the parameter name of the segment used to identify the video can be determined, that is, corresponding to the second condition described above.
  • the gateway device can determine that the parameter values of Quey Param whose parameter names are "sz" and "tflvbegin" in URL #A and URL#B are different from each other.
  • the gateway device can determine that the video website that posted the video A identifies the video segment by the "sz" and "tflvbegin" parameters in the Quey Param portion of the URL, for example, the parameter values of "sz” and “tflvbegin” can be determined. Used to indicate the length and start time of the video clip relative to the full video.
  • the gateway device may determine the segmentation partial extraction model as the "sz" parameter and the "tflvbegin" parameter in the Quey Param portion for extracting the URL.
  • URL#A corresponds to the complete video A
  • URL#B corresponds to a segment of video A, which may be when the user requests to watch the complete video (for example, when the user clicks on the play icon)
  • the video website is the user device.
  • the above URL#B may be a URL that the video website sends to the user equipment when the user drags, so the number of Quey Param in the Quey Param part of URL#A and URL#B, or the parameter of Quey Param.
  • the number of names may be different, that is, corresponding to the third condition described above.
  • the gateway device can determine that the Quey Param with the parameter names "sz" and "tflvbegin" in the URL #B does not exist in the URL #A.
  • the gateway device can determine that the video site that posted the video A is via the URL in Quey
  • the "sz” and “tflvbegin” parameters in the Param section identify segments of the video.
  • parameter values for "sz” and “tflvbegin” may be determined to indicate the length and start time of the video segment relative to the full video.
  • the gateway device may determine the Rang partial extraction model as the "sz” parameter and the "tflvbegin” parameter in the Quey Param portion for extracting the URL.
  • the process of using the two URLs to train and obtain the Rang partial extraction model is listed, but the present invention is not limited thereto, and more URLs may be used to train and obtain the Rang partial extraction model.
  • the URL #Y can also be obtained, the URL #Y corresponding to the user equipment A (ie, an example of the first user equipment), and the URL #Y corresponds to the video A,
  • the obtaining process of the URL#Y may be similar to the obtaining process of the URL#A and the URL#B, and a detailed description thereof is omitted herein to avoid redundancy.
  • each character string in the Rang portion may include a plurality of parameters, for example, "sz” and “tflvbegin”, and a plurality of parameters may respectively indicate the length and start time of the video segment relative to the complete video. Therefore, it is necessary to determine the specific role of each parameter, for example, whether the length (or start time) is indicated by “sz” or the length (or start time) by "tflvbegin".
  • the specific role of each parameter can be determined by verification, specifically, for example.
  • the gateway device can acquire the URL#W corresponding to the video segment of the video W, and can obtain the Rang portion of the URL#W using the Rang partial extraction model described above, for example, the URL#W gateway device can assume the URL#W The length is indicated by "sz", and the start time is indicated by "tflvbegin", so that a video segment W1 can be acquired from the cached video W. And, the URL #W can be sent to the video server, so that an accurate video segment W2 can be obtained from the video server. If the video segment W1 is identical to the video segment W2, it can be determined that the assumption is established, that is, indicated by "sz". Length, and "tflvbegin" indicates the start time, if not The same, it can be determined that the start time is indicated by "sz” and the degree is indicated by "tflvbegin”.
  • the gateway device may acquire URLs #M1 and URL#M2 corresponding to a plurality of video segments of the video M (here, for convenience of understanding, two examples, that is, the video segment M1 and the video segment M2), and The Rang part of the URL #M1 and URL#M2 can be obtained by using the Rang partial extraction model described above, for example, the URL#W gateway device can assume that the lengths are indicated by "sz" in the URLs #M1 and URL#M2, and by " Tflvbegin" to indicate the start time, whereby the length of the video M (referred to as the estimated length) can be derived from the Rang portion of the URL #M1 and the URL #M2, and the gateway device can obtain the URL #M1 or URL
  • the video summary of #M2 knows the length of the video M (referred to as the actual length), and if the estimated length is the same as the actual length, it can be determined that the assumption is true.
  • the gateway device may acquire the Video C corresponding to URL #C (ie, an example of the second video).
  • the user equipment C may include the user equipment A, so that the URL#C may be the same as the URL#A or the URL#B, or may be the same as the URL#A or URL#.
  • B is different, that is, the second user equipment and the first user equipment may be the same or different, and the present invention is not particularly limited, and the video C may be the same as the video A described above, or may be different from the above video A, and the present invention It is not particularly limited.
  • the gateway device is used as the execution subject of the process of determining the segmentation part extraction model, but the present invention is not limited thereto, and may be obtained by the other device performing the above-described process of determining the segmentation part extraction model.
  • the segmentation part extracts the model and sends it to the gateway device.
  • determining, from the cache device, the second video corresponding to the target URL including:
  • the identification portion extraction model for indicating a segmentation portion of the URL
  • the non-Host portion of the target URL is traversed, and if it is determined that the non-Host portion of the target URL includes a character string of the identifier portion of the at least one cache URL, the cached video is determined to be the second video.
  • the user device when the user requests to watch the video, the user device generates an HTTP message. Sending to the video server to obtain the video from the video server, the HTTP message carrying a URL corresponding to the video allocated by the video website to the user equipment when the user requests to watch the video (for example, clicking the play icon), and When different users access the same video and the same user accesses the same video at different times, different URLs may be obtained. If the content is cached with the full URL as an index, the same video is repeatedly cached and the hit rate for the cached video is lower.
  • the same content exists in multiple URLs (for example, multiple URLs used by different users to access the same video, or multiple URLs used by the same user to access the same video at multiple times)
  • a contiguous part of the string in the URL is the identification part.
  • the cached video is indexed by replacing the complete URL with the identification portion, it is possible to avoid the case where the same video is repeatedly cached, and the hit rate for the cached video can be greatly improved.
  • the identification part extraction model for extracting the identification part from the URL may be obtained by training using the sampling URL (ie, the third sampling URL).
  • the identification part extraction model is determined according to the identification part of the at least two third sampling URLs, each of the third sampling URLs corresponding to the third video, and the string of each of the third sampling URLs is The character string of the identifier portion of each of the third sampling URLs is the same, and the user equipment corresponding to each third sampling URL is different, and the identifier portion is included in the non-Host portion of each of the third sampling URLs, and the non-Host portion Is the part of the URL string other than the Host part
  • the third sampling URL a URL corresponding to the same video (recorded as video D for convenience of distinction) from different user equipments may be used.
  • the number of the third sampling URLs is two or more.
  • the URL#D corresponds to the user equipment D
  • the URL#D corresponds to the video D
  • the gateway device may also extract from the HTTP message from the user device D for requesting playback of the segment of the video D.
  • the URL #E corresponds to the user device E, and the URL #E corresponds to the video D, for example, may be extracted by the gateway device from the HTTP message for requesting to play the video D from the user device E, or , may also be a gateway device from the user equipment E for requesting broadcast Extracted from the HTTP message of the video D fragment
  • the URL#D may also be provided by an Internet video publisher to a gateway device.
  • the URL #D can be ensured to correspond to the user device D, and the URL #D corresponds to the video D (for example, in the prior art, the URL #D can be used as an index of the complete video D, or the URL #D can be used as an index of a certain segment of video D).
  • the URL #E may also be provided by the Internet video publisher to the gateway device as long as the URL #E can be ensured to correspond to the user device E, and the URL #E corresponds to the video D (for example, the prior art)
  • the URL #E can be used as an index of the complete video D, or the URL #E can be used as an index of a certain segment of the video D.
  • the video summary D of the video corresponding to the URL #D and the video summary E of the video corresponding to the URL #E may be determined.
  • the URL #D and the URL may be determined.
  • #E corresponds to the same video.
  • the above-mentioned identification part corresponding to the video usually exists in a path part or a search parameter (Quey Param) part of the URL, that is, the identification part may be
  • the Path value of a certain depth in the Path section may also be the value of a parameter in the Quey Param section.
  • the gateway device may extract the Path part and/or the Quey Param part of the URL#D, and the Path part of the URL#E and/or Quey Param section.
  • FIG. 3 shows an example of the composition of each part of the character string of the URL.
  • the domain name (Host) part of the URL and the Path part are separated by a "/" symbol, so the network device can host the host.
  • the character after the first "/" symbol (or the last "/" symbol in the URL) is recognized as the starting character of the Path part.
  • the Path portion of the URL is separated from the Quey Param portion by a "?” symbol, so the network device can place the Path portion (or, after the last "/" symbol in the URL).
  • the character after the first "?” symbol is recognized as the starting character of the Path part. Thereby, the extraction of the Quey Param part can be realized.
  • the network device can recognize the character after the first "?" symbol after the path part as the end character of the Path part, thereby combining the start character of the Path part. Extraction of the Path section.
  • the extraction method of the Path part listed above and the extraction method of the Quey Param part are merely exemplary descriptions, and the present invention is not limited thereto, and may be changed according to the change of the URL, for example, some URLs only exist.
  • the Path section does not exist in the Quey Param section. In this case, it is only necessary to determine the starting character of the Path section.
  • the separator symbols (ie, the "/" symbol) of the Host portion and the Path portion listed above and the separator symbol (ie, the "?” symbol) between the Path portion and the Quey Param portion are merely illustrative, and the present invention It is not limited to this.
  • the symbols used in the URL to implement the function of separating the marks are all within the scope of the present invention.
  • the gateway device After the gateway device completes the extraction of the Path portion of the URL #D and the URL #E, the depth and the Path value of the Path portion of the URL #D can be determined.
  • the depth (or level) of the Path portion can be determined according to the number of "/" symbols included in the Path portion, for example, FIG. 4 shows a schematic diagram of an example of the Path portion in the URL. Taking the URL shown in FIG. 4 as an example, the URL includes six "/" symbols, so it can be determined that the depth is 6, wherein
  • the path value of the depth of the first level is "sec (44ab57eec5d981faa33)";
  • the path value of the level 2 depth is "frag(0)"
  • the path value of the level 3 depth is "video"
  • the path value of the depth of level 4 is "484";
  • the Path value of the 5th level depth is "516"
  • the Path value of the depth of the sixth level is "56615484_mp4_h264_aac_1.flv”.
  • the gateway device can determine the names and parameter values of all Quey Params in the Quey Param portion of URL#A.
  • NAME is the parameter name
  • Value is the parameter value.
  • the present invention is not limited to this, and may be only NAME, which may be NAME empty, or VALUE may be empty, that is, the format of Quey Param in the URL may be:
  • the URL includes nine "&" symbols, so it can be determined that it includes nine Quey Param, wherein
  • the character string corresponding to the first Quey Param is "4", its parameter name is “4", and the parameter value is null;
  • the depth Path value of the Path portion of URL#D and URL#E and the name and parameter value of each Quey Param in the Quey Param portion can be determined.
  • the gateway device can traverse the depth values of the depths in the Path part of URL#D and URL#E.
  • the comparison is performed step by step.
  • the first part of the Path part of URL#D and URL#E may be compared first.
  • a first-level Path value that is, a string between the first "/" symbol and the second "/” symbol
  • compares the second-level Path value in the Path portion of URL#D and URL#E that is, The string between the second "/" symbol and the third "/” symbol, and so on.
  • Path portion of URL#E is: /sec(98ac09efd2e662cef97)/frag(0)/video/580/720/56615484_mp4_h264_aac_1.flv,
  • the gateway device can determine the levels 2, 3, and 5 of the same path value in URL #D and URL #E.
  • the gateway device can determine that the video website that issues the video D identifies the video segment by the second level, the third level, and the fifth level in the Path portion of the URL. For example, the second level in the Path portion can be determined.
  • the values of level 3 and level 5 are used to indicate the video D.
  • the identification portion extraction model may be determined as a Path value for extracting the second, third, and fifth levels in the Path portion of the Path portion of the URL.
  • the method further includes:
  • the overlapping portion comprising a Path level having the same Path value and/or a Quey Param having the same parameter value
  • the identification part extraction model is updated according to the identified portion of the updated third sampling URL.
  • a URL #N (an example of a fourth sampling URL) corresponding to the video N (an example of the fourth video) may be acquired, wherein The video site that publishes the video N and the video D is the same, and the view The frequency N is different from the video D (for example, the video summary is different).
  • the gateway device can determine the level 2 and level 3 of the same path value in the URL #N, the URL #D, and the URL #E, and further can determine that the second level and the third level in the Path part cannot be used to distinguish the video.
  • the gateway device can determine that the video website that publishes the video D and the video N is a segment that identifies the video through the fifth level in the Path portion of the URL, for example, the value of the fifth level in the Path portion of the URL #D can be determined. Indicates the video D.
  • identification portion extraction model may be determined as a Path value for the fifth level in the Path portion in the Path portion of the extracted URL.
  • the gateway device can traverse the parameter values of each Quey Param in the Quey Param portion of URL#D and URL#E, thereby being able to determine the Quey Param having the same parameter value in URL#D and URL#E, and the same Path value.
  • the gateway device can determine that the parameter values of Quey Param whose names are "key” "and id" in URL #D and URL#E are the same.
  • the gateway device can determine that the video website that publishes the video D identifies the video by the "key” and "id" parameters in the Quey Param portion of the URL, for example, the parameter values of "key” and "id” can be determined for Indicate this video D.
  • the gateway device may determine the identification portion extraction model as a "key” "and id" parameter in the Quey Param portion for extracting the URL.
  • the level of the Path part for identifying the video or the name of Quey Param since the same video website uses the same rules when generating URLs, for example, for different URLs generated when different user devices request to view the same video, the level of the Path part for identifying the video or the name of Quey Param. Usually the same, so by selecting the same URL of the Host part as the above URL#D and URL#E, it can be ensured that the video website generating the URL#D and URL#E is the same, thereby improving the accuracy of the identification part extraction model. .
  • URL#D and URL#E are identical to determine the same part (including the same Path level and Path value, and/or the same Quey Param name and parameter values, for easy distinction, After the same part A), URL#Z can also be obtained, which corresponds to user equipment Z, and the URL#Z corresponds to video D, and the acquisition process of URL#Y can be combined with URL#A and URL
  • the acquisition process of #B is similar, and the detailed description thereof is omitted here to avoid redundancy.
  • the gateway device may cache the video obtained from each video server (that is, an example of the cached video), and may extract the model according to the identifier portion obtained as described above, from the URL corresponding to each video. (ie, an example of a cache URL) extracts the identifier of each video as an index of the corresponding video.
  • the method further includes:
  • Receiving at least one verification URL, and the non-Host substring of the verification URL includes a character string of the identification portion of the cache URL;
  • the identifier part in the URL #X may be extracted according to the identifier part extraction model, and determined as an index from the cached video.
  • the video X1 corresponding to the URL #X, and the URL #X can be forwarded to the video server, and the video X2 corresponding to the video is obtained from the video server, and if the video X1 is the same as the video X2, the above can be considered Identifying the partial extraction model is accurate. If the video X1 is different from the video X2, it can be considered that the above-described identification part extraction model is inaccurate, and the sampling URL can be re-selected to train to obtain a new identification part extraction model.
  • the identifier part may be used to extract the model, and the identifier of the video C is obtained as an index, and the cached video is found.
  • the video C may be used to extract the model, and the identifier of the video C is obtained as an index, and the cached video is found.
  • the method before traversing the non-Host portion of the target URL, the method further includes:
  • the Host portion of the target URL is the same as the Host portion of at least one of the cache URLs.
  • the Host portion of each of the cache URLs is the same.
  • the level of the Path portion used to identify the video or Quey Param The name is usually the same. Therefore, after determining that the Host part of the URL#C is the same as the Host part of the cached URL, it can be determined that the video website corresponding to the URL#C is the same as the video website of the cached URL, so that the identification can be reliably passed.
  • the partial extraction model determines the characters used to identify the video C in the URL #C, further improving the accuracy of the acquired video.
  • the non-Host part includes a path Path part, and the depth of the Path part of each cached URL is the same, and
  • the method further includes:
  • the depth of the Path portion of the target URL is the same as the depth of the Path portion of each of the cache URLs.
  • the depth of the Path portion for identifying the Path portion of the video since the rules used by the same video website to generate a URL are generally the same, for example, for different URLs generated when different user devices request to view the same video, the depth of the Path portion for identifying the Path portion of the video. The same, therefore, if it is determined that the depth of the Path portion of the URL #C is not the same as the depth of the Path portion of the cache URL, it can be determined that the video corresponding to the URL #C is not cached, thereby eliminating the need for a seek action and improving This hair
  • the efficiency of the method of transmitting video of the embodiment improves the user experience.
  • the non-Host portion includes a path Path portion and a search parameter Quey Param portion.
  • the method also includes:
  • the method further includes:
  • the gateway device may determine a parameter name of the Quey Param for training each URL that obtains the above-described identification part extraction model, and generate a parameter name set including the above parameter names, and if each of the Quey Param included in the URL#C If the parameter names do not belong to the parameter name set, it can be determined that the identifier for extracting the video C from the URL #C cannot be extracted according to the identifier part extraction model, so that the subsequent actions are not needed, and the implementation of the present invention can be improved. The efficiency of the method of transmitting video improves the user experience.
  • the method for determining the video C corresponding to the URL #C enumerated above is merely an exemplary description, and the present invention is not limited thereto.
  • the complete URL #C may also be used as the cache index of the video C.
  • the URL #C can also be forwarded directly to the video server to obtain the video C from the video server.
  • the Rang portion of the URL #C may be determined according to the Rang partial extraction model obtained as described above, and then the video segment corresponding to the Rang portion may be determined in the video C.
  • a location for example, a start time or an end time, and further, a video clip corresponding to the Rang portion of the URL #C (i.e., an example of the target video clip) may be intercepted from the video C.
  • the gateway device can send the video segment to user device C.
  • the location for identifying the video segment in the complete video for the URL can be obtained.
  • Segmentation part extraction model so that when receiving the target URL of the user equipment carrying the segmentation part, the second video corresponding to the target URL can be determined from the cache device, and the segment can be segmented according to the target URL And determining, by the second video, the target video segment, and sending the target video segment to the user equipment, so that the user does not need to acquire the multiple segments from the video server even when the user performs the dragging action.
  • One side of the gateway device has a communication connection with one or more video servers, the other side of the gateway device also has a communication connection with one or more user devices; and the gateway device has a communication connection with the cache device, or
  • the gateway device is internally integrated with a cache device, wherein the one or more user devices comprise a second user device, and the one or more video servers comprise a target video server.
  • FIG. 5 shows a schematic block diagram of a gateway device 200 according to an embodiment of the present invention.
  • the gateway device 200 includes:
  • the receiving unit 220 is configured to receive a target URL sent by the second user equipment
  • a determining unit 210 configured to determine, from the cache device, a second video corresponding to the target URL, determine a segmentation part of the target URL according to the segmentation part extraction model, and according to the segmentation part of the target URL, Determining a target video segment in the second video; wherein the second video is from the target video server; the segment partial extraction model is used to indicate a segmentation portion of the uniform resource locator URL; Indicating the extent of the video clip in the original video;
  • the sending unit 230 is configured to send the target video segment to the second user equipment.
  • the receiving unit 210 is further configured to receive a first sampling URL and a second sampling URL from the first user equipment; the first sampling URL and the second sampling URL both correspond to the first video;
  • the determining unit 210 is further configured to determine the first sampling information set according to the first sampling URL, determine the second sampling information set according to the second sampling URL, and select the first sampling information set according to the segmentation part extraction condition. And comparing the second sampling information set to determine segmentation information that satisfies the segmentation part extraction condition, and determining the segmentation part extraction model according to the segmentation information.
  • the first sampling URL includes a path Path portion and a search parameter Quey Param portion
  • the Quey Param portion of the first sampling URL includes K Quey Params
  • the first sampling information set includes the first information and the second information.
  • At least one type of information the first information is used to indicate a depth and a Path value of a Path portion of the first sampling URL, and the second information is K, K
  • the second information is in one-to-one correspondence with the K Quey Params of the first sampling URL, and the second information is used to indicate the name and parameter value of the corresponding Quey Param respectively
  • the second sampling URL includes a Path part and a Quey Param
  • the portion of the Quey Param of the second sampling URL includes M Quey Param
  • the second sampling information set includes at least one of the third information and the fourth information, where the third information is used to indicate the second sampling URL
  • the depth of the Path part and the Path value, the fourth information is M, and the M pieces of the fourth information are in one-to-one correspondence with
  • the segmentation part extraction condition includes at least one of a first condition, a second condition, and a third condition,
  • the first condition is that the depth of the Path portion indicated by the segmentation information is the same in the first sampling information set and the second sampling information set, and the segmentation information indicates that the Path value is in the first sampling information set and The second sampling information set is different,
  • the second condition is that the name of the Quey Param indicated by the segment information belongs to both the first sampling information set and the second sampling information set, and the parameter value of the Quey Param indicated by the segment information is in the first sampling information.
  • the set is different from the second sampled information set
  • the third condition is that the name of the Quey Param indicated by the segmentation information belongs to only one of the first sampling information set and the second sampling information set.
  • the receiving unit 210 in receiving the first sampling URL and the second sampling URL from the first user equipment, is specifically configured to receive the first sampling URL in a first time period, and receive the second sampling in a second time period. a URL, wherein an interval between the first time period and the second time period is determined according to a duration of the first video.
  • the first sampling URL is a URL that is sent by the first user equipment when requesting to acquire the first video.
  • the first sampling URL is the same as the string of the host name Host portion of the second sampling URL.
  • the determining unit 210 is further configured to: determine an identifier part extraction model for indicating the identifier part of the URL, and determine an identifier of each cached URL of the cached video cached in the cache device according to the identifier part extraction model. a part of traversing the non-Host portion of the target URL, if it is determined that the non-Host portion of the target URL includes a character string of the identifier portion of the at least one cache URL, determining that the cached video is the second video; Wherein each of the caches The URLs all correspond to the cached video.
  • the identifier partial extraction model is determined according to the identifier portion of the at least two third sampling URLs, each of the third sampling URLs corresponding to the third video, and the strings of the third sampling URLs are different.
  • the character string of the identifier portion of each of the third sampling URLs is the same, and the user equipment corresponding to each third sampling URL is different.
  • the identifier portion is included in the non-Host portion of each third sampling URL, and the non-Host portion is a URL. The part of the string except the Host part.
  • the determining unit 210 is specifically configured to: when the Host part of the target URL is at least one URL of each cached URL of the cached video cached in the cache device In some identical cases, the non-Host portion of the target URL is traversed.
  • the non-Host part includes a path Path part, and the depth of the Path part of each cached URL is the same, and
  • the determining unit 210 is specifically configured to traverse the target if the depth of the Path part of the target URL is the same as the depth of the Path part of each of the cached URLs The non-Host part of the URL.
  • the non-Host portion includes a path Path portion
  • the determining unit 210 is specifically configured to: traverse the non-Host of the target URL when the Path part of the target URL is the same as the Path part of at least one URL of each of the cached URLs section.
  • the non-Host portion includes a path Path portion and a search parameter Quey Param portion.
  • the determining unit 210 is specifically configured to obtain a parameter name of a search parameter included in each Quey Param part of the cached URL to generate a parameter name set; when the target URL is Quey When the parameter name of the search parameter included in the Param part belongs to the parameter name set, the non-Host part of the target URL is traversed.
  • the receiving unit 210 is further configured to receive the at least one verification URL, and the non-Host substring of the verification URL includes a character string of the identification part of the cached URL;
  • the sending unit 230 is further configured to forward the verification URL to the video server;
  • the receiving unit 220 is further configured to receive a verification video that is sent by the video server according to the verification URL;
  • the determining unit 230 is further configured to determine that the verification video is the same as the cached video.
  • the cached video belongs to the third video.
  • the receiving unit 210 is further configured to determine that the character string of the Host part of the target URL is the same as the character string of the Host part of the first sampling URL; or
  • the character string used to determine the Host portion of the target URL is the same as the string of the Host portion of the second sample URL.
  • the gateway device 200 may correspond to the gateway device in the method of the embodiment of the present invention, and each unit in the gateway device 200, that is, the module and the other operations and/or functions described above are respectively implemented in FIG. 2
  • the corresponding process of the method 100 will not be repeated here for brevity.
  • the gateway device of the embodiment of the present invention by acquiring the sampling URLs from the same user and corresponding to the same video, and performing comparison processing on the sampling URL, it is possible to obtain a score for identifying the position of the video segment in the complete video in the URL.
  • the segment part extracts the model, so that when the target URL of the user equipment carrying the segmentation part is received, the second video corresponding to the target URL can be determined from the cache device, according to the segmentation part of the target URL, Determining a target video segment from the second video, and transmitting the target video segment to the user equipment, so that even when the user performs a dragging action, there is no need to acquire the multiple segments from the video server, and there is no need to cache the device Cache multiple segments of the same video, avoiding the occurrence of the same video being cached multiple times, and thereby transmitting the target video segment to the user device more quickly, and improving the cache efficiency of the cache device and reducing the cache device. Handling the burden.
  • the method for transmitting video according to the embodiment of the present invention is described in detail with reference to FIG. 2 to FIG. 4 .
  • the gateway device according to the embodiment of the present invention is described in detail with reference to FIG. 6 , wherein one side of the gateway device and one or more The video server has a communication connection, and the other side of the gateway device also has a communication connection with one or more user devices; the gateway device has a communication connection with the cache device, or the gateway device has a cache device integrated therein; Or the plurality of user equipments includes the second user equipment, and the one or more video servers include the target video server.
  • the gateway device is used to implement the method for transmitting video according to the embodiment of the present invention. For related implementation details, reference may be made to the foregoing method embodiments.
  • FIG. 6 shows a gateway device 300 according to an embodiment of the present invention. As shown in FIG. 6, the device 300 includes:
  • processor 320 connected to the bus 310;
  • a memory 330 connected to the bus 310;
  • transceiver 340 connected to the bus 310;
  • the processor 320 calls the program stored in the memory 330 through the bus 310 for:
  • the control transceiver 340 receives the target URL sent by the second user equipment, and determines a second video corresponding to the target URL from the cache device; wherein the second user equipment is one of at least one user equipment included in the video transmission system
  • the second video is from the target video server, for example, before the second user equipment sends the target URL, the gateway device 300 acquires and caches from the video server into the cache device;
  • the segmentation part extraction model is determined according to the segmentation information, and the segmentation information is compared according to the segmentation part extraction condition, and the first sampling information set and the second sampling information set are compared and processed from the first Determining in the set of sampling information and the second set of sampling information, the first set of sampling information is determined according to a first sampling URL from the first user equipment, the first sampling URL including a path Path portion and a search parameter Quey Param portion
  • the Quey Param portion of the first sampling URL includes K Quey Params, the first sampling URL corresponding to the first video, the first sampling information set including at least one of the first information and the second information, the first The information is used to indicate a depth and a Path value of a Path portion of the first sampling URL, where the second information is used to indicate a name and a parameter value of the K Quey Params of the first sampling URL, where the second sampling information set is based on Determining, by the second sampling URL of the first user equipment, the second sampling URL includes a Path portion and a
  • the first condition is that the depth of the Path portion indicated by the segmentation information is the same in the first sampling information set and the second sampling information set, and the segmentation information indicates that the Path value is in the first sampling information set and The second sampling information set is different,
  • the second condition is that the name of the Quey Param indicated by the segmentation information belongs to both the first sampling information set and the second sampling information set, and the segment information indicates the Quey Param
  • the parameter value is different in the first sampling information set and the second sampling information set.
  • the third condition is that the name of the Quey Param indicated by the segmentation information belongs to only one of the first sampling information set and the second sampling information set.
  • the processor 320 is further configured to control the transceiver 340 to receive the first sampling URL and the second sampling URL;
  • the processor 320 is specifically configured to control the transceiver 340 to receive the first sampling URL in a first time period, and receive the second sampling URL in a second time period, where the first time period and the second time period are between Interval is determined according to the duration of the first video
  • the first sampling URL is a URL that is sent by the first user equipment when requesting to acquire the first video.
  • the first sampling URL is the same as the string of the host name Host portion of the second sampling URL.
  • the processor 320 specifically controls the transceiver 340 to receive the cached video and the at least one cached URL, where each of the cached URLs corresponds to the cached video;
  • the identification part of the cache URL wherein the identifier part extraction model is determined according to the identification part of the at least two third sampling URLs, each of the third sampling URLs being related to the third video
  • the character strings of the third sampling URLs are different, and the character strings of the identifier portions of the third sampling URLs are the same, and the user equipments corresponding to the third sampling URLs are different, and the identifier portion is included in each of the first Three sampling the non-Host part of the URL, the non-Host part is the part of the string of the URL other than the Host part;
  • a non-Host portion for traversing the target URL if it is determined that the non-Host portion of the target URL includes a character string of the identifier portion of the at least one cache URL, determining that the cached video is the second video.
  • the processor 320 is specifically configured to determine that the Host portion of the target URL is the same as the Host portion of the at least one URL of each of the cache URLs.
  • the Host part of each cache URL is the same.
  • the non-Host part includes a path Path part, and the depth of the Path part of each cached URL is the same, and
  • the processor 320 is specifically configured to determine that the depth of the Path portion of the target URL is the same as the depth of the Path portion of each of the cached URLs.
  • the non-Host portion includes a path Path portion
  • the processor 320 is specifically configured to determine that the Path portion of the target URL is the same as the Path portion of at least one URL of each of the cached URLs.
  • the non-Host portion includes a path Path portion and a search parameter Quey Param portion, and
  • the processor 320 is specifically configured to obtain a parameter name of a search parameter included in a Quey Param part of each cached URL to generate a parameter name set.
  • the parameter name of the search parameter included in the Quey Param portion for determining the target URL belongs to the parameter name set.
  • the processor 320 is specifically configured to control the receiver 340 to receive the at least one verification URL, and the non-Host substring of the verification URL includes a character string of the identifier portion of the cache URL;
  • the cached video belongs to the third video.
  • the processor 320 is specifically configured to determine that the character string of the Host part of the target URL is the same as the character string of the Host part of the first sampling URL; or
  • the string of the Host portion of the target URL is determined to be the same as the string of the Host portion of the second sample URL.
  • the processing unit may also be referred to as a CPU.
  • the memory can include read only memory and random access memory and provides instructions and signals to the processor.
  • a portion of the memory may also include non-volatile line random access memory (NVRAM).
  • NVRAM non-volatile line random access memory
  • the device for transmitting signals may be embedded or may be a standard Ethernet communication device such as a personal computer.
  • the modules of the device for transmitting signals are coupled together by a bus system, wherein the bus system includes a signal bus. In addition, it includes a power bus, a control bus, and a status signal bus.
  • the processor may implement or perform the steps and logic disclosed in the method embodiments of the present invention.
  • the general purpose processor may be a microprocessor or the processor or any conventional processor, decoder or the like.
  • the steps of the method disclosed in the embodiments of the present invention may be directly implemented by the hardware processor, or may be performed by a combination of hardware and software modules in the decoding processor.
  • the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
  • the storage medium is located in the memory, and the decoding unit or the processing unit reads the information in the memory, and completes the steps of the above method in combination with the hardware thereof.
  • the processor may be a central processing unit (“CPU"), and the processor may also be other general-purpose processors, digital signal processors (DSPs), and dedicated processors. Integrated circuit (ASIC), off-the-shelf programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic device, discrete hardware component, etc.
  • the general purpose processor may be a microprocessor or the processor or any conventional processor or the like.
  • each step of the above method may be completed by an integrated logic circuit of hardware in a processor or an instruction in a form of software.
  • the steps of the method disclosed in the embodiments of the present invention may be directly implemented as a hardware processor, or may be performed by a combination of hardware and software modules in the processor.
  • the software module can be located in a conventional storage medium such as random access memory, flash memory, read only memory, programmable read only memory or electrically erasable programmable memory, registers, and the like.
  • the storage medium is located in the memory, and the processor reads the information in the memory and combines the hardware to complete the steps of the above method. To avoid repetition, it will not be described in detail here.
  • the gateway device 300 may correspond to the gateway device in the method of the embodiment of the present invention, and each unit in the gateway device 300, that is, the module and the other operations and/or functions described above are respectively implemented in FIG. 2
  • the corresponding process of the method 100 will not be repeated here for brevity.
  • the gateway device of the embodiment of the present invention by acquiring the sampling URLs from the same user and corresponding to the same video, and performing comparison processing on the sampling URL, it is possible to obtain a score for identifying the position of the video segment in the complete video in the URL.
  • the segment part extracts the model, so that when the target URL of the user equipment carrying the segmentation part is received, the second video corresponding to the target URL can be determined from the cache device, according to the segmentation part of the target URL, Determining a target video segment from the second video, and transmitting the target video segment to the user equipment, so that even when the user performs a dragging action, there is no need to acquire the multiple segments from the video server, and there is no need to cache the device Cache multiple segments of the same video, avoiding the occurrence of the same video being cached multiple times, and further improving the target video segment to the user device more quickly
  • the cache efficiency of the storage device reduces the processing load of the cache device.
  • the video transmission system of the embodiment of the present invention is described in detail below with reference to FIG. 2 to FIG. 4, and the video transmission system of the embodiment of the present invention is described in detail below with reference to FIG.
  • FIG. 7 shows a video transmission system 400 according to an embodiment of the present invention.
  • the system 600 includes:
  • the user equipment 410 is configured to send a uniform resource locator URL to the gateway device, and obtain a video corresponding to the URL from the gateway device;
  • the gateway device 420 is configured to determine a segmentation part extraction model, where the segmentation part extraction model is used to indicate a segmentation part of the uniform resource locator URL, receive a target URL sent by the second user equipment, and determine from the cache device a second video corresponding to the target URL; determining a segmentation part of the target URL according to the segmentation part extraction model; determining a target video segment from the second video according to the segmentation part of the target URL, and Two user equipments send the target video segment;
  • the video server 430 is configured to receive the URL forwarded by the gateway device, determine a video corresponding to the URL, and send the video to the gateway device.
  • the segmentation part extraction model is determined according to the segmentation information, and the segmentation information is compared according to the segmentation part extraction condition, and the first sampling information set and the second sampling information set are compared and processed from the first Determining in the set of sampling information and the second set of sampling information, the first set of sampling information is determined according to a first sampling URL from the first user equipment, the first sampling URL including a path Path portion and a search parameter Quey Param portion
  • the Quey Param portion of the first sampling URL includes K Quey Params, the first sampling URL corresponding to the first video, the first sampling information set including at least one of the first information and the second information, the first The information is used to indicate a depth and a Path value of a Path portion of the first sampling URL, where the second information is used to indicate a name and a parameter value of the K Quey Params of the first sampling URL, where the second sampling information set is based on Determining, by the second sampling URL of the first user equipment, the second sampling URL includes a Path portion and a
  • the first condition is: the depth of the Path portion indicated by the segmentation information is in the first sampling information set And the same in the second sampling information set, and the segment information indicates that the Path value is different in the first sampling information set and the second sampling information set.
  • the second condition is that the name of the Quey Param indicated by the segment information belongs to both the first sampling information set and the second sampling information set, and the parameter value of the Quey Param indicated by the segment information is in the first sampling information.
  • the set is different from the second sampled information set
  • the third condition is that the name of the Quey Param indicated by the segmentation information belongs to only one of the first sampling information set and the second sampling information set.
  • the gateway device 420 in the video transmission system 400 may correspond to the gateway device in the method of the embodiment of the present invention, and each unit in the gateway device 420, that is, the module and the other operations and/or functions described above are respectively The corresponding process of the method 100 in FIG. 2 is implemented. For brevity, no further details are provided herein.
  • the video transmission system of the embodiment of the present invention by acquiring a sampling URL from the same user and corresponding to the same video, and performing comparison processing on the sampling URL, it is possible to acquire, for the URL, the location of the video segment in the complete video.
  • the segmentation part extracts a model, so that when receiving the target URL of the user equipment carrying the segmentation part, the second video corresponding to the target URL can be determined from the cache device, and the segmentation part according to the target URL can be Determining a target video segment from the second video, and transmitting the target video segment to the user equipment, so that even when the user performs a dragging action, the plurality of segments are not required to be acquired from the video server, and the cache is not required to be cached.
  • Multiple segments of the same video are cached in the device, which prevents the same video from being cached multiple times, and the target video segment is transmitted to the user device more quickly, and the cache efficiency of the cache device is also improved, and the cache device is reduced.
  • the processing burden is required the processing
  • the size of the sequence numbers of the above processes does not mean the order of execution, and the order of execution of each process should be determined by its function and internal logic, and should not be taken to the embodiments of the present invention.
  • the implementation process constitutes any limitation.
  • the disclosed systems, devices, and methods may be implemented in other manners.
  • the device embodiments described above are merely illustrative.
  • the division of the unit is only a logical function division.
  • there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
  • the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be in an electrical, mechanical or other form.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
  • each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
  • the functions may be stored in a computer readable storage medium if implemented in the form of a software functional unit and sold or used as a standalone product.
  • the technical solution of the present invention which is essential or contributes to the prior art, or a part of the technical solution, may be embodied in the form of a software product, which is stored in a storage medium, including
  • the instructions are used to cause a computer device (which may be a personal computer, server, or network device, etc.) to perform all or part of the steps of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes: a U disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, or an optical disk, and the like. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

提供一种传输视频的方法,在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担,该方法包括:网关设备接收第二用户设备发送的目标URL,并从缓存设备中确定与该目标URL相对应的第二视频;根据该分段部分提取模型,确定该目标URL的分段部分;根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向该第二用户设备发送该目标视频片段。

Description

传输视频的方法、网关设备和视频传输系统 技术领域
本发明涉及通信领域,并且更具体地,涉及一种传输视频的方法、网关设备和视频传输系统。
背景技术
目前,随着互联网的飞速发展,基于开放互联网的视频服务也得以快速普及,通常,互联网视频发布商利用电信运营商提供的网络,向终端用户提供视频播放服务,其中,电信运营商仅负责传输视频,不涉足视频内容的控制、分发、版权等。
现有技术中,视频传输是基于超文本传输协议(HTTP,Hypertext transfer protocol)进行的,具体地说,用户在希望观看互联网视频发布商(例如,视频网站)提供的视频时,通过用户设备向电信运营商(例如,网关设备)发送HTTP消息,该HTTP消息中携带与所希望观看的视频相对应的统一资源定位符URL(Uniform Resoure Locator),电信运营商可以将该HTTP消息转发给互联网视频发布商(例如,视频网站的视频服务器),以从互联网视频发布商获得该视频,并下发至用户设备。
为了改善用户体验,缩短用户观看视频的等待时间,电信运营商通常会设置缓存设备,以缓存从互联网视频发布商获取的视频,并建立所获取的各视频与各URL之间的映射关系表项,从而,当接收到携带着与所缓存的视频相同的URL的HTTP消息时,可以从缓存设备获取该视频,并下发给用户设备。
但是,上述映射关系表项是基于完整的URL生成的,或者说,缓存设备是基于完整的URL完成对各视频的索引,而互联网视频发布商的无标准规范的特殊行为使得以完整的URL作为缓存索引的方式非常低效。
例如,视频的URL通常是互联网视频发布商动态生成的,例如,在用户观看视频的时候会有拖动行为,每次拖动会触发用户设备向电信运营商发送新的HTTP消息,以获取与拖动行为相对应的视频片段,而这些HTTP消息可能会携带互联网视频发布商分配的彼此相异的URL,而这些URL实际上均对应同一视频,只是所对应的具体片段相异,从而,可能出现同一视频 被重复缓存多次,以及请求同一视频的多个URL,只有部分能在缓存中命中的情况,严重降低了缓存设备的缓存效率,增加了缓存设备的处理负担。
发明内容
本发明实施例提供一种传输视频的方法、网关设备及视频传输系统,在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
第一方面,提供了一种传输视频的方法,应用于网关设备,其中,所述网关设备的一侧与一个或多个视频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;该方法包括:所述网关设备接收所述第二用户设备发送的目标URL,并从所述缓存设备中确定与所述目标URL相对应的第二视频;其中,所述第二视频来自于所述目标视频服务器;所述网关设备根据分段部分提取模型,确定所述目标URL的分段部分;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;所述网关设备根据所述目标URL的分段部分,从所述第二视频中确定目标视频片段,并向所述第二用户设备发送所述目标视频片段。
结合第一方面,在第一方面的第一种实现方式中,该方法还包括:所述网关设备接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;根据所述第一采样URL确定第一采样信息集合,根据所述第二采样URL确定第二采样信息集合;根据所述分段部分提取条件,对所述第一采样信息集合和所述第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息;根据所述分段信息,确定所述分段部分提取模型。
结合第一方面及其上述实现方式,在第一方面的第二种实现方式中,所述第一采样URL包括路径Path部分和搜索参数Quey Param部分,所述第一采样URL的Quey Param部分包括K个Quey Param,所述第一采样信息集合包括第一信息和第二信息中的至少一个,所述第一信息用于指示所述第一采样URL的Path部分的深度和Path值,所述第二信息用于指示所述第一采 样URL的K个Quey Param的名称和参数值;所述第二采样URL包括Path部分和Quey Param部分,所述第二采样URL的Quey Param部分包括M个Quey Param,所述第二采样信息集合包括第三信息和第四信息中的至少一个,所述第三信息用于指示所述第二采样URL的Path部分的深度和Path值,所述第四信息用于指示所述第二采样URL的M个Quey Param的名称和参数值。
结合第一方面及其上述实现方式,在第一方面的第三种实现方式中,所述分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
所述第一条件为:所述分段信息指示的Path部分的深度在所述第一采样信息集合和所述第二采样信息集合中相同,且所述分段信息所述指示Path值在所述第一采样信息集合和所述第二采样信息集合中相异;所述第二条件为:所述分段信息指示的Quey Param的名称属于所述第一采样信息集合和所述第二采样信息集合双方,且所述分段信息指示的Quey Param的参数值在所述第一采样信息集合和所述第二采样信息集合中相异;所述第三条件为:所述分段信息指示的Quey Param的名称仅属于所述第一采样信息集合和所述第二采样信息集合中的一方。
结合第一方面及其上述实现方式,在第一方面的第四种实现方式中,所述网关设备接收来自第一用户设备的第一采样URL和所述第二采样URL,包括:所述网关设备在第一时段接收所述第一采样URL,在第二时段接收所述第二采样URL,其中,所述第一时段与所述第二时段之间的间隔是根据所述第一视频的时长确定的。
结合第一方面及其上述实现方式,在第一方面的第五种实现方式中,该从缓存设备中确定与该目标URL相对应的第二视频,包括:确定标识部分提取模型,所述标识部分提取模型用于指示URL的分段部分;根据标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分;其中,各所述缓存URL均与所述缓存视频相对应;遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含至少一个所述缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频。
结合第一方面及其上述实现方式,在第一方面的第六种实现方式中,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该 第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分。
结合第一方面及其上述实现方式,在第一方面的第七种实现方式中,各缓存URL的Host部分相同。
结合第一方面及其上述实现方式,在第一方面的第八种实现方式中,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及所述遍历所述目标URL的非Host部分包括:当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
结合第一方面及其上述实现方式,在第一方面的第九种实现方式中,所述方法还包括:接收至少一个验证URL,且所述验证URL的非Host子字符串中包含各所述缓存URL的标识部分的字符串;向所述视频服务器转发所述验证URL;接收所述视频服务器根据所述验证URL发送的验证视频;确定所述验证视频与所述缓存视频相同。
结合第一方面及其上述实现方式,在第一方面的第十种实现方式中,该缓存视频属于该第三视频。
第二方面,提供了一种网关设备,应用于网关设备,其中,所述网关设备的一侧与一个或多个视频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;所述网关设备包括:接收单元,用于接收所述第二用户设备发送的目标URL;确定单元,用于从所述缓存设备中确定与所述目标URL相对应的第二视频,根据分段部分提取模型,确定所述目标URL的分段部分,并根据所述目标URL的分段部分,从所述第二视频中确定目标视频片段;其中,所述第二视频来自于所述目标视频服务器;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;发送单元,用于向所述第二用户设备发送所述目标视频片段。
结合第二方面,在第二方面的第一种实现方式中,所述接收单元还用于 接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;所述确定单元还用于,根据所述第一采样URL确定第一采样信息集合,根据所述第二采样URL确定第二采样信息集合,根据所述分段部分提取条件,对所述第一采样信息集合和所述第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息,根据所述分段信息,确定所述分段部分提取模型。
结合第二方面及其上述实现方式,在第二方面的第二种实现方式中,所述第一采样URL包括路径Path部分和搜索参数Quey Param部分,所述第一采样URL的Quey Param部分包括K个Quey Param,所述第一采样信息集合包括第一信息和第二信息中的至少一个,所述第一信息用于指示所述第一采样URL的Path部分的深度和Path值,所述第二信息用于指示所述第一采样URL的K个Quey Param的名称和参数值;所述第二采样URL包括Path部分和Quey Param部分,所述第二采样URL的Quey Param部分包括M个Quey Param,所述第二采样信息集合包括第三信息和第四信息中的至少一个,所述第三信息用于指示所述第二采样URL的Path部分的深度和Path值,所述第四信息用于指示所述第二采样URL的M个Quey Param的名称和参数值。
结合第二方面及其上述实现方式,在第二方面的第三种实现方式中,所述分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
所述第一条件为:所述分段信息指示的Path部分的深度在所述第一采样信息集合和所述第二采样信息集合中相同,且所述分段信息所述指示Path值在所述第一采样信息集合和所述第二采样信息集合中相异;所述第二条件为:所述分段信息指示的Quey Param的名称属于所述第一采样信息集合和所述第二采样信息集合双方,且所述分段信息指示的Quey Param的参数值在所述第一采样信息集合和所述第二采样信息集合中相异;所述第三条件为:所述分段信息指示的Quey Param的名称仅属于所述第一采样信息集合和所述第二采样信息集合中的一方。
结合第二方面及其上述实现方式,在第二方面的第四种实现方式中,在接收来自第一用户设备的第一采样URL和第二采样URL的方面,所述接收单元具体用于在第一时段接收所述第一采样URL,在第二时段接收所述第二采样URL,其中,所述第一时段与所述第二时段之间的间隔是根据所述第一 视频的时长确定的。
结合第二方面及其上述实现方式,在第二方面的第五种实现方式中,所述确定单元还用于,确定用于指示URL的标识部分的标识部分提取模型,并根据所述标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分,遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含至少一个所述缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频;其中,各所述缓存URL均与所述缓存视频相对应。
结合第二方面及其上述实现方式,在第二方面的第六种实现方式中,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分。
结合第二方面及其上述实现方式,在第二方面的第七种实现方式中,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及在遍历所述目标URL的非Host部分的方面,所述确定单元具体用于,当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
结合第二方面及其上述实现方式,在第二方面的第八种实现方式中,该非Host部分包括路径Path部分和搜索参数Quey Param部分,该确定单元还用于获取各该缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;确定该目标URL的Quey Param部分所包含的搜索参数的参数名属于该参数名集合。
第三方面,提供了一种视频传输系统,包括:上述的网关设备;用户设备,用于向所述网关设备发送统一资源定位符URL,并从所述网关设备获取与所述URL相对应的视频;视频服务器,用于接收网关设备转发的所述URL,确定与所述URL相对应的视频,并向所述网关设备发送所述视频。
根据本发明实施例的传输视频的方法、网关设备和视频传输系统,通过获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从 缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的视频传输系统的架构图;
图2是本发明实施例的传输视频的方法的示意性流程图;
图3是表示URL中各部分的划分方式的一例的示意图;
图4是表示URL中的Path部分的深度及Path值的一例的示意图;
图5是根据本发明实施例的网关设备的示意性框图;
图6是根据本发明实施例的网关设备的示意性结构图;
图7是根据本发明实施例的视频传输系统的示意性架构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的技术方案中,用户设备可以通过电信运营商提供的通信网络访问提供视频业务的视频服务器,并且,该通信网络可以是例如:全球移动通讯系统(GSM,Global System of Mobile communication),码分多址(CDMA,Code Division Multiple Access)系统,宽带码分多址(WCDMA,Wideband Code Division Multiple Access Wireless),通用分组无线业务(GPRS,General Packet Radio Service),长期演进(LTE,Long Term Evolution)等。
用户设备(UE,User Equipment),也可称之为移动终端(Mobile Terminal)、移动用户设备等,可以经上述通信网络(例如,RAN,Radio Access Network)与一个或多个核心网(例如,上述视频服务器所在的网络)进行通信,用户设备可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。
并且,在本发明实施例中,用户设备与视频服务器之间可以采用HTTP通信方式,或者说,在用户设备与视频服务器之间传输的信息符合HTTP通信规则。
例如,用户在通过用户设备访问视频网站,以观看视频时,视频网站会针对用户希望观看的视频(例如,通过用户的点击行为获知用户希望的视频),为该用户设备分配与该视频相对应的URL,用户设备向该视频网站的视频服务器发送携带有该URL的请求消息,从而,视频服务器可以根据该URL查找到该视频,并下发给用户设备。
另外,在本发明实施例中,用户设备与视频服务器之间的通信经由电信运营商提供的通信网络进行,例如,用户设备发送给视频服务器的消息(例如,请求播放视频片段的消息)需要首先被封装成符合上述通信网络传输规则的格式,并经由例如该通信网络的网关设备将该消息转换为视频服务器能够识别的格式。类似的,视频服务器在从网关设备接收到该消息后,可以查找与该消息相对应的视频,并将该视频传输至上述网关设备,网关设备可以将该视频封装成服务符合上述通信网络传输规则的格式,并下发至用户设备。
为了改善用户体验,缩短用户观看视频的等待时间,电信运营商通常会设置缓存设备,以缓存从视频服务器获取的视频,如图1所示。需要说明的是,该缓存设备通常部署在FBB(Fix Broadband,固网宽带)或MBB(Mobile Broadband,移动宽带)的接入网关处,且缓存设备与网关设备通信连接或集成于一体。需要说明的是,缓存设备部署在网关设备只是本发明的一种典型应用场景,不应理解为对本发明应用场景的限制。
本发明实施例提供的传输视频的方法可典型地应用于图1所示的视频传输系统中,根据图1,该视频传输系统包括网关设备,该网络设备一侧与一个或多个视频服务器通信连接,另一侧与一个或多个用户设备通信设备连 接,同时,该网关设备还部署有缓存设备,缓存设备具体可以集成在该网关设备内部,或者作为独立的实体,与该网关设备通信连接。为了便于理解,以具有视频缓存功能的网关设备作为本发明实施例的传输视频的方法的执行主体,进行说明。当然,可以理解的是,其他涉及视频传输和缓存的场景,本发明方法均能适用。
图2示出了根据本发明实施例的传输视频的方法100的示意性流程图。如图2所示,该方法包括:
S120,接收第二用户设备发送的目标URL,并从缓存设备中确定与该目标URL相对应的第二视频;其中,第二用户设备为视频传输系统包括的至少一个用户设备中的一个;第二视频来自于目标视频服务器,该目标服务器是与该网关设备通信连接的多个视频服务器中的一个,第二视频是在第二用户设备发送该目标URL之前,网关设备从目标视频服务器获取并缓存到缓存设备中的;例如,可以理解的是,在某个时间周期内,目标视频服务器响应于网关设备转发的来自于某个用户设备的请求,向网关设备发送的第二视频,并由网关设备将第二视频转发给该用户设备,同时,该第二视频进一步被存储于所述缓存设备中,以便于下个时间周期内,某个用户设备再次请求第二视频时,从缓存设备直接转发第二视频。
S130,根据该分段部分提取模型,确定该目标URL的分段部分;
S140,根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向该第二用户设备发送该目标视频片段。
具体地说,例如,当用户在观看视频时,如果发生拖动行为,对于每次拖动行为,用户设备均会产生一个HTTP消息发送给视频服务器,用以请求视频片段,并且,各HTTP消息是在请求观看源视频时产生的URL中,增加分段部分,也可以称为范围(Range)部分,来指示视频片段在原始视频中的范围,例如,视频片段的起始时间和结束时间,或者,视频片段的起始字节和结束字节。应理解,以上列举的在URL中出现分段部分的原因仅为示例性说明,本发明并不限定于此,例如,通常情况下由于原始视频过大,视频网站会将原始视频自动地分成多段下发至用户设备,因此,在URL中也会出现用于标识该视频片段在原始视频中的位置的分段部分。
因此,本发明实施例中,可以通过采样视频进行训练,获得分段部分提取模型,用于指示统一资源定位符URL的分段部分;从而,能够实现从与 视频片段相对应的URL中提取上述分段部分,并基于该分段部分,从该视频片段的源视频中截取视频片段。因此,无需单独对视频片段进行缓存。
下面,首先对该分段部分提取模型的训练过程进行详细说明。
在本发明实施例中,该分段部分提取模型是根据分段信息确定的,该分段信息是基于分段部分提取条件,对第一采样信息集合和第二采样信息集合进行对比处理而从该第一采样信息集合和该第二采样信息集合中确定的,该第一采样信息集合是根据来自第一用户设备的第一采样URL确定的,该第一采样URL包括路径Path部分和搜索参数Quey Param部分,该第一采样URL的Quey Param部分包括K个Quey Param,该第一采样URL与第一视频相对应,该第一采样信息集合包括第一信息和第二信息中的至少一个,该第一信息用于指示该第一采样URL的Path部分的深度和Path值,该第二信息用于指示该第一采样URL的K个Quey Param的名称和参数值,该第二采样信息集合是根据来自第一用户设备的第二采样URL确定的,该第二采样URL包括Path部分和Quey Param部分,该第二采样URL的Quey Param部分包括M个Quey Param,该第二采样URL与该第一视频相对应,该第二采样信息集合包括第三信息和第四信息中的至少一个,该第三信息用于指示该第二采样URL的Path部分的深度和Path值,该第四信息用于指示该第二采样URL的M个Quey Param的名称和参数值。
优选地,该分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
该第一条件为:该分段信息指示的Path部分的深度在该第一采样信息集合和该第二采样信息集合中相同,且该分段信息该指示Path值在该第一采样信息集合和该第二采样信息集合中相异,
该第二条件为:该分段信息指示的Quey Param的名称属于该第一采样信息集合和该第二采样信息集合双方,且该分段信息指示的Quey Param的参数值在该第一采样信息集合和该第二采样信息集合中相异,
该第三条件为:该分段信息指示的Quey Param的名称仅属于该第一采样信息集合和该第二采样信息集合中的一方。
并且,可选地,在接收第二用户设备发送的目标URL之前,该方法还包括:接收该第一采样URL和该第二采样URL;
根据该第一采样URL确定该第一采样信息集合,根据该第二采样URL 确定该第二采样信息集合;
根据该分段部分提取条件,对该第一采样信息集合和该第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的该分段信息;
根据该分段信息,确定该分段部分提取模型。
具体地说,在时段T1(即,第一时段的一例),网关设备获取URL#A(即,第一采样URL的一例),其中,该URL#A与用户设备A(即,第一用户设备的一例)相对应,并且,该URL#A与视频A(即,第一视频的一例)相对应,例如,可以是网关设备从来自该用户设备A的用于请求播放视频A HTTP消息中提取的,或者,也可以是网关设备从来自该用户设备A的用于请求播放视频A的片段的HTTP消息中提取的。
需要说明的是,以上列举的URL#A的获取过程仅为示例性说明,本发明并未限定于此,例如,该URL#A也可以是由互联网视频发布商提供给网关设备的,只要能够确保该URL#A与用户设备A相对应,且该URL#A与视频A相对应即可,例如,现有技术中,该URL#A可以作为完整的视频A的索引,或者该URL#A可以作为视频A的某一片段的索引。
用户设备在请求获取视频片段时发送的URL中,与片段相对应的上述Range部分通常存在于URL的路径(Path)部分或搜索参数(Quey Param)部分中,即,该Range部分可能是Path部分中的某一深度的Path值,也可能是Quey Param部分中的某一参数的值。
因此,在本发明实施例中,网关设备在获取该URL#A之后,可以提取该URL#A的Path部分和/或Quey Param部分。
图3示出了URL的字符串中各部分的构成的一例,如图3所示,URL的域名(Host)部分与Path部分之间由“/”符号隔开,因此,网络设备可以将Host部分之后的第一个“/”符号(或者说,URL中的最后一个“/”符号)后的字符识别为Path部分的起始字符。
并且,如图3所示,URL的Path部分与Quey Param部分之间由“?”符号隔开,因此,网络设备可以将Path部分(或者说,URL中的最后一个“/”符号)之后的第一个“?”符号后的字符识别为Path部分的起始字符。从而,能够实现Quey Param部分的提取。
另外,网络设备可以将该path部分之后的第一个“?”符号后的字符识别为Path部分的结束字符,从而,结合上述Path部分的起始字符,能够实现 Path部分的提取。
应理解,以上列举的Path部分的提取方法以及Quey Param部分的提取方法仅为示例性说明,本发明并不限定于此,可以根据URL的变化而进行相应变更,例如,存在某些URL只存在Path部分而不存在Quey Param部分的情况,此情况下,只须其确定Path部分的起始字符即可。并且,以上列举的Host部分与Path部分的分隔符号(即,“/”符号)以及Path部分与Quey Param部分之间的分隔符号(即,“?”符号)仅为示例性说明,本发明并不限定于此,现有技术中,URL所采用的能够实现分隔标识作用的符号均落入本发明的保护范围内。
网关设备在完成了对URL#A的Path部分提取之后,可以确定URL#A的Path部分的深度和Path值。
具体地说,Path部分的深度(或者说,级别)可以根据Path部分中包括的“/”符号的数量确定,例如,图4示出了URL中的Path部分的一例的示意图。以图4所示的URL为例,该URL包括六个“/”符号,因此,可以确定其深度为6,其中,
第1级深度的Path值为“sec(44ab57eec5d981faa33)”;
第2级深度的Path值为“frag(0)”;
第3级深度的Path值为“video”;
第4级深度的Path值为“484”;
第5级深度的Path值为“516”;
第6级深度的Path值为“56615484_mp4_h264_aac_1.flv”。
同样,网关设备在完成了对URL#A的Quey Param部分提取之后,可以确定URL#A的Quey Param部分中全部Quey Param的名称和参数值。
通常情况下,URL中Quey Param的格式为“NAME=VALUE”,NAME为参数名,Value为参数值。但是,本发明并不限定于此,可以是只有NAME,可以是NAME为空,也可以是VALUE为空,即,URL中Quey Param的格式可为:
“NAME=VALUE”,或
“NAME”,或
“NAME=”或
“=VALUE”。
具体地说,以图3所示的URL为例,该URL包括9个“&”符号,因此,可以确定其包括9个Quey Param,其中,
第1个Quey Param所对应的字符串为“4”,其参数名为“4”,参数值为空;
第2个Quey Param所对应的字符串为“ipbits=0”,其参数名为“ipbits”,参数值为“0”;
第3个Quey Param所对应的字符串为
“signature=.BC606865625583C2BE5AA6472A7536D827ED7E58”,
其参数名为“signature”,参数值为
“.BC606865625583C2BE5AA6472A7536D827ED7E58”;
第4个Quey Param所对应的字符串为“sver=3”,其参数名为“sver”,参数值为“3”;
第5个Quey Param所对应的字符串为“expire=1252105200”,其参数名为“expire”,参数值为“1252105200”;
第6个Quey Param所对应的字符串为“key=yt1”,其参数名为“key”,参数值为“yt1”;
第7个Quey Param所对应的字符串为factor=1.25”,其参数名为“factor”,参数值为“1.25”;
第8个Quey Param所对应的字符串为burst=40”,其参数名为“burst”,参数值为“40”;
第9个Quey Param所对应的字符串为“id=c19764dece17ab”,其参数名为“id”,参数值为“c19764dece17ab”。
从而,如上所述,可以确定URL#A的Path部分的深度Path值以及Quey Param部分中各Quey Param的名称和参数值,并记录上述信息以生成第一采样信息集合。
在时段T2(即,第二时段的一例),网关设备获取URL#B(即,第二采样URL的一例),其中,该URL#B与用户设备A(即,第一用户设备的一例)相对应,并且,该URL#B与视频A(即,第一视频的一例)相对应,例如,可以是网关设备从来自该用户设备A的用于请求播放视频A的HTTP消息中提取的,或者,也可以是网关设备从来自该用户设备A的用于请求播放视频A的片段的HTTP消息中提取的。
需要说明的是,视频网站为同一用户所请求的来自同一视频的不同片段 所分配的URL中,通常只有Rang部分(例如,指示视频开始时间的字符串)是相异的,因此,为了准确地确定该Rang部分,需要确保URL#A和URL#B分别对应同一视频(即,上述视频A)的不同片段,例如,URL#A对应完整的视频A而URL#B对应视频A的一个片段,或者,URL#A对应视频A的一个片段而URL#B对应完整的视频,再或者,URL#A对应视频A的一个片段而URL#B对应视频A的另一个片段。
在本发明实施例中,可以采用在线采样的方式,在为用户转发视频的同时,训练获得Rang部分提取模型,因此,通过使URL#A和URL#B对应同一视频(即,上述视频A)能够提高该Rang部分提取模型的准确性。
在本发明实施例中,可以根据URL#A和URL#B的获取时间来判断URL#A和URL#B是否对应同一视频。
即,可选地,该接收该第一采样URL和该第二采样URL,包括:
在第一时段接收该第一采样URL,在第二时段接收该第二采样URL,其中,该第一时段与该第二时段之间的间隔是根据该第一视频的时长确定的。
具体地说,如果网关设备首先接收到URL#A,则可以确定与URL#A相对应的视频A(这里,URL#A可以对应完整的视频A,也可以对应视频A的一个片段),其中,该视频A可以是网关设备从视频服务器获取的,也可以是网关设备利用URL#A中的标识部分而从缓存的视频中获取的(随后,以确定目标URL所对应的第二视频为例,对该过程进行详细说明)。其后,可以确定该视频A的总时长(即,第一视频的时长)。从而可以确定一个判定范围(即,预设范围),该判定范围的起始时刻为URL#A的接收时刻,该判定范围的时长为该视频A的总时长。
如果URL#B的接收时间位于该判定范围内,且该URL#B同样来自用户设备A,则可以认为URL#A和URL#B对应同一视频。接收时间在该判定范围以外的URL则不能作为该URL#B。
根据本发明实施例的传输视频的方法,第一采样URL和第二采样URL的获取时间间隔处于预设范围内,并且该预设范围是根据第一采样URL和第二采样URL均对应的第一视频的时长确定的,能够确保第一采样URL和第二采样URL分别对应第一视频的不同片段,从而能够提高Rang部分提取模型的有效性。
应理解,以上列举的确定URL#A和URL#B对应同一视频的方法仅为示例性说明,本发明并不限定于此,例如,可以根据后述确定标识部分提取模型提取URL#A和URL#B的标识部分,并确定URL#A和URL#B的标识部分相同后,确定URL#A和URL#B对应同一视频,随后,以确定URL#C的标识部分以及所对应的视频C的过程为例,进行详细说明。
网关设备在获取该URL#B之后,可以提取该URL#B的Path部分和/或Quey Param部分,并可以确定URL#B的Path部分的深度和Path值,以及URL#B的Quey Param部分中全部Quey Param的名称和参数值,并记录上述信息以生成第二采样信息集合。该过程与上述针对URL#A的处理过程相似,这里,为了避免赘述,省略其详细说明。
可选地,该第一采样URL是第一用户设备在请求获取第一视频时发送的URL。
具体地说,在本发明实施例中,该URL#A可以是用户在请求观看完整的视频时(例如,用户点击播放图标时)视频网站为该用户设备下发的URL。而上述URL#B可以是用户在发生拖动动作时视频网站为该用户设备下发的URL,从而,能够确保该URL#B与该URL#A中存在差异的字符串与拖动动作相关,进而能够提高本发明实施的Rang部分提取模型的准确性。
可选地,该第一采样URL与该第二采样URL的主机名Host部分的字符串相同。
具体地说,由于同一视频网站在生成URL时所使用的规则通常相同,例如,对于两个视频片段,用于表示该片段在源视频中的位置的Path部分的级别或者Quey Param的名称通常相同,因此通过选用Host部分相同的URL作为上述URL#A和URL#B,能够确保,该生成该URL#A和URL#B的视频网站相同,从而能够提高该Rang部分提取模型的准确性。
其后,可以对上述第一采样信息集合和第二采样信息集合进行对比处理,以确定Rang部分提取模型。
由于如上所述存在URL只存在Path部分而不存在Quey Param部分的情况,因此,可能存在第一采样信息集合和第二采样信息集合中仅包含Path部分的深度和Path值的情况(即,情况1),也可能存在第一采样信息集合和第二采样信息集合中包含Path部分的深度和Path值以及Quey Param部分中全部Quey Param的名称和参数值的情况(即,情况2)。
下面,分别对上述两种情况的处理进行说明。
情况1
网关设备可以遍历URL#A和URL#B的Path部分中各级深度的Path值,当URL#A和URL#B的Path部分的深度相同,或者说,Path部分包括的级数相同时,逐级进行比较,例如,可以首先比较URL#A和URL#B的Path部分中的第一级Path值,即,第一个“/”符号与第二个“/”符号之间的字符串,然后比较URL#A和URL#B的Path部分中的第二级Path值,即,第二个“/”符号与第三个“/”符号之间的字符串,依次类推。
从而,能够URL#A和URL#B中path值彼此相异的级别,以及,该相异的Path值,即,对应上述第一条件。
例如,设URL#A的Path部分为:/sec(44ab57eec5d981faa33)/frag(0)/video/484/516/56615484_mp4_h264_aac_1.flv;
并且,URL#B的Path部分为:/sec(44ab57eec5d981faa33)/frag(1)/video/484/516/56615484_mp4_h264_aac_1.flv,
则网关设备可以确定URL#A和URL#B中path值彼此相异的级别第2级,且URL#A和URL#B中彼此相异path值为frag(0)和frag(1)。
从而,网关设备可以确定发布该视频A的视频网站是通过URL中Path部分中的第二级(即,frag)来标识视频的片段,例如,可以确定“frag”的值用于指示该视频片段相对于完整的视频的起始时间或结束时间。
进而,可以将Rang部分提取模型确定为用于提取URL的Path部分中第2级的path值。
情况2
例如,在本发明实施例中,可能存在第一采样信息集合和第二采样信息集合中Quey Param的数量相同的情况,即,URL#A与URL#B所对应的视频为同一视频的不同视频片段,因此,URL#A与URL#B的Quey Param部分中的Quey Param的数量,或者Quey Param的参数名的数量通常相同。
此情况下,通过对比参数名相同但参数值相异的Quey Param,能够确定用来标识视频的片段的参数名,即,对应上述第二条件。
例如,设URL#A的Quey Param部分为:
10200&key=25b11c805e36d6aef3038550860c680040cdaa4201&playtype=1&tk=155012700719935787180022220&brt=3&bc=0&nt=0&du=538470&sz=1 79904090&tflvbegin=18055261;
并且,URL#B的Quey Param部分为:
10200&key=25b11c805e36d6aef3038550860c680040cdaa4201&playtype=1&tk=155012700719935787180022220&brt=3&bc=0&nt=0&du=538470&sz=213602090&tflvbegin=28941773,
则网关设备可以确定URL#A和URL#B中参数名为“sz”和“tflvbegin”的Quey Param的参数值彼此相异。
从而,网关设备可以确定发布该视频A的视频网站是通过URL中Quey Param部分中的“sz”和“tflvbegin”参数来标识视频的片段,例如,可以确定“sz”和“tflvbegin”的参数值用于指示该视频片段相对于完整的视频的长度和起始时间。
进而,网关设备可以将分段部分提取模型确定为用于提取URL的Quey Param部分中的“sz”参数和“tflvbegin”参数。
再例如,在本发明实施例中,也可能存在第一采样信息集合和第二采样信息集合中Quey Param的数量相异的情况。例如,URL#A对应完整的视频A而URL#B对应视频A的一个片段,该URL#A可以是用户在请求观看完整的视频时(例如,用户点击播放图标时)视频网站为该用户设备下发的URL。而上述URL#B可以是用户在发生拖动动作时视频网站为该用户设备下发的URL,因此,URL#A与URL#B的Quey Param部分中的Quey Param的数量,或者Quey Param的参数名的数量可能相异,即,对应上述第三条件。
例如,设URL#A的Quey Param部分为:
10200&key=25b11c805e36d6aef3038550860c680040cdaa4201&playtype=1&tk=155012700719935787180022220&brt=3&bc=0&nt=0&du=538470;
并且,URL#B的Quey Param部分为:
10200&key=25b11c805e36d6aef3038550860c680040cdaa4201&playtype=1&tk=155012700719935787180022220&brt=3&bc=0&nt=0&du=538470&sz=179904090&tflvbegin=18055261,
则网关设备可以确定URL#B中参数名为“sz”和“tflvbegin”的Quey Param的不存在于URL#A。
从而,网关设备可以确定发布该视频A的视频网站是通过URL中Quey  Param部分中的“sz”和“tflvbegin”参数来标识视频的片段,例如,可以确定“sz”和“tflvbegin”的参数值用于指示该视频片段相对于完整的视频的长度和起始时间。
进而,网关设备可以将Rang部分提取模型确定为用于提取URL的Quey Param部分中的“sz”参数和“tflvbegin”参数。
需要说明的是,在以上实施例中,列举了使用两个URL来训练获得Rang部分提取模型的过程,但本发明并不限定于此,可以采用更多的个URL来训练获得Rang部分提取模型,例如,在如上所述通过对比URL#A和URL#B从而确定相异部分(包括相异的Path级别及Path值,和/或,相异的Quey Param的名称及参数值,为了便于区分记做,相异部分A)后,还可以获取URL#Y,该URL#Y与用户设备A(即,第一用户设备的一例)相对应,并且,该URL#Y与视频A相对应,其中,该URL#Y的获取过程可以与URL#A和URL#B的获取过程类似,这里为了避免赘述,省略其详细说明。其后,可以对比URL#Y和URL#A或对比URL#Y和URL#B,找出相异部分(包括相异的Path级别及Path值,和/或,相异的Quey Param的名称及参数值,为了便于区分记做,相异部分B),并将该相异部分A与相异部分B进行对比,从中去除相同的部分(包括相同的Path级别及Path值,和相同的Quey Param的名称及参数值)作为Rang部分提取模型的训练依据,能够进一步提高本发明的Rang部分提取模型的准确性。
另外,如上所述,Rang部分中各字符串的可以包括多个参数,例如,“sz”和“tflvbegin”,并且多个参数可以分别指示该视频片段相对于完整的视频的长度和起始时间,因此,需要确定每个参数的具体作用,例如,是由“sz”来指示长度(或,起始时间),还是由“tflvbegin”来指示长度(或,起始时间)。
作为示例而非限定,可以通过验证来确定每个参数的具体作用,具体地说,例如。网关设备可以获取与视频W的视频片段相对应的URL#W,并且,能够利用上述Rang部分提取模型获得该URL#W的Rang部分,例如,该URL#W网关设备可以假设该URL#W中由“sz”来指示长度,而由“tflvbegin”来指示起始时间,从而,能够从缓存的视频W中获取一个视频片段W1。并且,可以将包括该URL#W发送给视频服务器,从而,能够从视频服务器获得准确的视频片段W2,如果视频片段W1与视频片段W2相同,则可以确定假设成立,即由“sz”来指示长度,而由“tflvbegin”来指示起始时间,如果不 相同,则可以确定由“sz”来指示起始时间,而由“tflvbegin”来指示程度。
再例如,网关设备可以获取与视频M的多个视频片段(这里,为了便于理解,以两个为例,即视频片段M1和视频片段M2)相对应的URL#M1和URL#M2,并且,能够利用上述Rang部分提取模型获得该URL#M1和URL#M2的Rang部分,例如,该URL#W网关设备可以假设该URL#M1和URL#M2中由“sz”来指示长度,而由“tflvbegin”来指示起始时间,从而,能够根据该URL#M1和URL#M2的Rang部分,推算出该视频M的长度(称为,推算长度),并且,网关设备可以从URL#M1或URL#M2的视频摘要获知该视频M的长度(称为,实际长度),如果推算长度与实际长度相同,则可以确定假设成立。
在如上该获取Rang部分提取模型之后,在S140,当接收到用户设备C(即,第二用户设备的一例)发送的URL#C(即,目标URL的一例)时,网关设备可以获取与该URL#C相对应的视频C(即,第二视频的一例)。
需要说明的是,在本发明实施例中,该用户设备C可以包括上述用户设备A,从而该URL#C可以与上述URL#A或URL#B相同,也可以与上述URL#A或URL#B相异,即,第二用户设备与第一用户设备可以相同也可以相异,本发明并未特别限定,并且视频C可以与上述视频A相同,也可以与上述视频A相异,本发明并未特别限定。
并且,以上说明中以网关设备作为确定分段部分提取模型的过程的执行主体进行说明,但本发明并不限定于此,也可以是由其他设备执行上述确定分段部分提取模型的过程而获得分段部分提取模型后发送给网关设备。
下面对上述确定URL#C相对应的视频C的方法进行详细说明。
可选地,该从缓存设备中确定与该目标URL相对应的第二视频,包括:
确定标识部分提取模型,所述标识部分提取模型用于指示URL的分段部分;
根据标识部分提取模型,确定缓存设备中已缓存的缓存视频的各个缓存URL的标识部分;其中,各所述缓存URL均与所述缓存视频相对应;
遍历该目标URL的非Host部分,如果确定该目标URL的非Host部分中包含该至少一个缓存URL的标识部分的字符串,则确定该缓存视频为该第二视频。
具体地说,当用户请求观看视频时,用户设备会产生一个HTTP消息, 发送给视频服务器,以从视频服务器获得该视频,该HTTP消息中携带有视频网站在用户请求观看视频(例如,点击播放图标)时为该用户设备分配的与该视频相对应的URL,并且,在不同用户访问同一个视频,同一个用户不同时间访问同一个视频,都可能获取到不同的URL。如果以完整URL为索引缓存内容,会导致相同视频重复缓存,并且针对所缓存的视频的命中率较低。
对于同一视频,在多个URL(例如,不同用户访问该同一个视频时使用的多个URL,或同一个用户在多个时间访问该同一个视频使用的多个URL)中,存在相同的内容,例如,URL中的连续的一部分字符串即,标识部分。
因此,如果以该标识部分替代完整的URL对缓存的视频进行索引,便能够避免同一视频被重复缓存的情况,并且,能够大幅度地提高针对所缓存的视频的命中率。
在本发明实施例中,可以利用采样URL(即,第三采样URL),通过训练来获得用于从URL中提取标识部分的标识部分提取模型。
即,可选地,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分
具体地说,在本发明实施例中,作为该第三采样URL,可以采用来自不同用户设备的对应于同一视频(为了便于区分,记做视频D)的URL。并且,在本发明实施例中,该第三采样URL的数量为两个或两个以上,为了便于理解和说明,以下,以该第三采样URL为URL#D和URL#E为例,进行说明。
其中,该URL#D与用户设备D相对应,并且,该URL#D与视频D相对应,例如,可以是网关设备从来自该用户设备D的用于请求播放视频D的HTTP消息中提取的,或者,也可以是网关设备从来自该用户设备D的用于请求播放视频D的片段的HTTP消息中提取的。
该URL#E与用户设备E相对应,并且,该URL#E与视频D相对应,例如,可以是网关设备从来自该用户设备E的用于请求播放视频D的HTTP消息中提取的,或者,也可以是网关设备从来自该用户设备E的用于请求播 放视频D的片段的HTTP消息中提取的
需要说明的是,以上列举的URL#D和URL#E的获取过程仅为示例性说明,本发明并未限定于此,例如,该URL#D也可以是由互联网视频发布商提供给网关设备的,只要能够确保该URL#D与用户设备D相对应,且该URL#D与视频D相对应(例如,现有技术中,该URL#D可以作为完整的视频D的索引,或者该URL#D可以作为视频D的某一片段的索引)即可。
同样,该URL#E也可以是由互联网视频发布商提供给网关设备的,只要能够确保该URL#E与用户设备E相对应,且该URL#E与视频D相对应(例如,现有技术中,该URL#E可以作为完整的视频D的索引,或者该URL#E可以作为视频D的某一片段的索引)即可。
另外,在本发明实施例中,需要确保URL#D与URL#E对应同一视频(即,视频D)。作为实现方法,可以确定URL#D所对应的视频的视频摘要D,以及URL#E所对应的视频的视频摘要E,当确定视频摘要D与视频摘要E相同时,可以确定URL#D与URL#E对应同一视频。
用户设备在请求获取视频或视频片段时发送的URL中,与视频相对应的上述标识部分通常存在于URL的路径(Path)部分或搜索参数(Quey Param)部分中,即,该标识部分可能是Path部分中的某一深度的Path值,也可能是Quey Param部分中的某一参数的值。
因此,在本发明实施例中,网关设备在获取该URL#D和URL#E之后,可以提取该URL#D的Path部分和/或Quey Param部分,以及该URL#E的Path部分和/或Quey Param部分。
图3示出了URL的字符串中各部分的构成的一例,如图3所示,URL的域名(Host)部分与Path部分之间由“/”符号隔开,因此,网络设备可以将Host部分之后的第一个“/”符号(或者说,URL中的最后一个“/”符号)后的字符识别为Path部分的起始字符。
并且,如图3所示,URL的Path部分与Quey Param部分之间由“?”符号隔开,因此,网络设备可以将Path部分(或者说,URL中的最后一个“/”符号)之后的第一个“?”符号后的字符识别为Path部分的起始字符。从而,能够实现Quey Param部分的提取。
另外,网络设备可以将该path部分之后的第一个“?”符号后的字符识别为Path部分的结束字符,从而,结合上述Path部分的起始字符,能够实现 Path部分的提取。
应理解,以上列举的Path部分的提取方法以及Quey Param部分的提取方法仅为示例性说明,本发明并不限定于此,可以根据URL的变化而进行相应变更,例如,存在某些URL只存在Path部分而不存在Quey Param部分的情况,此情况下,只须其确定Path部分的起始字符即可。并且,以上列举的Host部分与Path部分的分隔符号(即,“/”符号)以及Path部分与Quey Param部分之间的分隔符号(即,“?”符号)仅为示例性说明,本发明并不限定于此,现有技术中,URL所采用的能够实现分隔标识作用的符号均落入本发明的保护范围内。
网关设备在完成了对URL#D和URL#E的Path部分提取之后,可以确定URL#D的Path部分的深度和Path值。
具体地说,Path部分的深度(或者说,级别)可以根据Path部分中包括的“/”符号的数量确定,例如,图4示出了URL中的Path部分的一例的示意图。以图4所示的URL为例,该URL包括六个“/”符号,因此,可以确定其深度为6,其中,
第1级深度的Path值为“sec(44ab57eec5d981faa33)”;
第2级深度的Path值为“frag(0)”;
第3级深度的Path值为“video”;
第4级深度的Path值为“484”;
第5级深度的Path值为“516”;
第6级深度的Path值为“56615484_mp4_h264_aac_1.flv”。
同样,网关设备在完成了对URL#D的Quey Param部分提取之后,可以确定URL#A的Quey Param部分中全部Quey Param的名称和参数值。
通常情况下,URL中Quey Param的格式为“NAME=VALUE”,NAME为参数名,Value为参数值。但是,本发明并不限定于此,可以是只有NAME,可以是NAME为空,也可以是VALUE为空,即,URL中Quey Param的格式可为:
“NAME=VALUE”,或
“NAME”,或
“NAME=”或
“=VALUE”。
具体地说,以图3所示的URL为例,该URL包括9个“&”符号,因此,可以确定其包括9个Quey Param,其中,
第1个Quey Param所对应的字符串为“4”,其参数名为“4”,参数值为空;
第2个Quey Param所对应的字符串为“ipbits=0”,其参数名为“ipbits”,参数值为“0”;
第3个Quey Param所对应的字符串为
“signature=.BC606865625583C2BE5AA6472A7536D827ED7E58”,
其参数名为“signature”,参数值为
“.BC606865625583C2BE5AA6472A7536D827ED7E58”;
第4个Quey Param所对应的字符串为“sver=3”,其参数名为“sver”,参数值为“3”;
第5个Quey Param所对应的字符串为“expire=1252105200”,其参数名为“expire”,参数值为“1252105200”;
第6个Quey Param所对应的字符串为“key=yt1”,其参数名为“key”,参数值为“yt1”;
第7个Quey Param所对应的字符串为factor=1.25”,其参数名为“factor”,参数值为“1.25”;
第8个Quey Param所对应的字符串为burst=40”,其参数名为“burst”,参数值为“0”;
第9个Quey Param所对应的字符串为“id=c19764dece17ab”,其参数名为“id”,参数值为“c19764dece17ab”。
从而,如上所述,可以确定URL#D和URL#E的Path部分的深度Path值以及Quey Param部分中各Quey Param的名称和参数值。
由于如上所述存在URL只存在Path部分而不存在Quey Param部分的情况,因此,可能存在URL#D和URL#E仅包含Path部分的深度和Path值的情况(即,情况3),也可能存在URL#D和URL#E中包含Path部分的深度和Path值以及Quey Param部分中全部Quey Param的名称和参数值的情况(即,情况4)。
下面,分别对上述两种情况的处理进行说明。
情况3
网关设备可以遍历URL#D和URL#E的Path部分中各级深度的Path值, 当URL#D和URL#E的Path部分的深度相同,或者说,Path部分包括的级数相同时,逐级进行比较,例如,可以首先比较URL#D和URL#E的Path部分中的第一级Path值,即,第一个“/”符号与第二个“/”符号之间的字符串,然后比较URL#D和URL#E的Path部分中的第二级Path值,即,第二个“/”符号与第三个“/”符号之间的字符串,依次类推。
从而,能够URL#D和URL#E中path值相同的级别,以及,该相同的Path值。
例如,设URL#D的Path部分为:/sec(44ab57eec5d981faa33)/frag(0)/video/484/516/56615484_mp4_h264_aac_1.flv;
并且,URL#E的Path部分为:/sec(98ac09efd2e662cef97)/frag(0)/video/580/720/56615484_mp4_h264_aac_1.flv,
则网关设备可以确定URL#D和URL#E中path值相同的级别第2级、第3级和第5级。
从而,网关设备可以确定发布该视频D的视频网站是通过URL中Path部分中的第2级、第3级和第5级来标识视频的片段,例如,可以确定Path部分中第2级、第3级和第5级的值用于指示该视频D。
进而,可以将标识部分提取模型确定为用于提取URL的Path部分中Path部分中第2级、第3级和第5级的Path值。
可选地,该方法还包括:
获取第四采样URL以及第四视频,其中,该第四采样URL与该第四视频相对应,该第四视频与该第三视频相异;
根据标识部分提取模型,确定该第四采样URL的标识部分;
确定该第四采样URL的标识部分与该第三采样URL的标识部分之间的重叠部分,该重叠部分包括Path值相同的Path级别和/或参数值相同的Quey Param;
从该第三采样URL的标识部分中去除该重叠部分,以更新该第三采样URL的标识部分;
根据更新后的第三采样URL的标识部分,更新该标识部分提取模型。
具体地说,为了进一步提高如上所述确定的标识部分提取模型的准确性,还可以获取与视频N(第四视频的一例)所对应的URL#N(第四采样URL的一例),其中,发布该视频N和视频D的视频网站相同,并且,该视 频N与视频D相异(例如,视频摘要相异)。
例如,设URL#N的Path部分为:/sec(74cf57abe5f336fbe78)/frag(0)/video/665/896/91362310_wma_p135_aac_8.flv;
则网关设备可以确定URL#N、URL#D和URL#E中path值相同的级别第2级和第3级,进而可以判定Path部分中第2级和第3级不能用于区分视频。
从而,网关设备可以确定发布该视频D和视频N的视频网站是通过URL中Path部分中的第5级来标识视频的片段,例如,可以确定URL#D的Path部分中第5级的值用于指示该视频D。
进而,可以将标识部分提取模型确定为用于提取URL的Path部分中Path部分中第5级的Path值。
情况4
网关设备可以遍历URL#D和URL#E的Quey Param部分中各Quey Param的参数值,从而,能够确定URL#D和URL#E中参数值相同的Quey Param,以及,该相同的Path值。
例如,设URL#D的Quey Param部分为:
4&ipbits=0&signature=.BC606865625583C2BE5AA6472A7536D827ED7E58&sver=3&expire=1252105200&key=yt1&factor=1.25&burst=40&id=c19764dece17ab
并且,URL#E的Quey Param部分为:
5&ipbits=1&signature=9879DD9541B65704625CAB118092DFD151856C&sver=4&expire=1252105201&key=yt1&factor=2.25&burst=50&id=c19764dec e17ab
则网关设备可以确定URL#D和URL#E中参数名为“key”“和id”的Quey Param的参数值相同。
从而,网关设备可以确定发布该视频D的视频网站是通过URL中Quey Param部分中的“key”“和id”参数来标识视频,例如,可以确定“key”“和id”的参数值用于指示该视频D。
进而,网关设备可以将标识部分提取模型确定为用于提取URL的Quey Param部分中的“key”“和id”参数。
情况4中基于Path部分来训练获得标识部分提取模型的方法和过程与情 况3类似,这里,为了避免赘述,省略其说明。
另外,由于同一视频网站在生成URL时所使用的规则通常相同,例如,对于不同用户设备请求观看同一视频时生成的不同的URL中,用于标识该视频的Path部分的级别或者Quey Param的名称通常相同,因此通过选用Host部分相同的URL作为上述URL#D和URL#E,能够确保,该生成该URL#D和URL#E的视频网站相同,从而能够提高该标识部分提取模型的准确性。
需要说明的是,在以上实施例中,列举了使用两个URL来训练获得标识部分提取模型的过程,但本发明并不限定于此,可以采用更多的个URL来训练获得标识部分提取模型,例如,在如上所述通过对比URL#D和URL#E从而确定相同部分(包括相同的Path级别及Path值,和/或,相同的Quey Param的名称及参数值,为了便于区分记做,相同部分A)后,还可以获取URL#Z,该URL#Z与用户设备Z相对应,并且,该URL#Z与视频D相对应,该URL#Y的获取过程可以与URL#A和URL#B的获取过程类似,这里为了避免赘述,省略其详细说明。其后,可以对比URL#Z和URL#D或对比URL#Z和URL#E,找出相同部分(包括相同的Path级别及Path值,和/或,相同的Quey Param的名称及参数值,为了便于区分记做,相同部分B),并将该相同部分A与相同部分B进行对比,从中去除相异的部分(包括相已的Path级别及Path值,和相异的Quey Param的名称及参数值)作为标识部分提取模型的训练依据,能够进一步提高本发明的标识部分提取模型的准确性。
在本发明实施例中,网关设备可以对从各视频服务器获得的视频(即,缓存视频的一例)进行缓存,并且,可以根据如上所述获得的标识部分提取模型,从各视频所对应的URL(即,缓存URL的一例)中提取各视频的标识,作为对应视频的索引。
可选地,该方法还包括:
接收至少一个验证URL,且该验证URL的非Host子字符串中包含该缓存URL的标识部分的字符串;
向视频服务器转发该验证URL;
接收该视频服务器根据该验证URL发送的验证视频;
确定该验证视频与该缓存视频相同。
具体地说,在本发明实施例中,为了验证上述标识部分提取模型的准确 性,可以进行在线验证,例如,在接收到一个用户设备X发送的URL#X后,可以根据上述标识部分提取模型提取该URL#X中的标识部分,并作为索引,从上述缓存视频中确定与该URL#X相对应的视频X1,并且,可以将该URL#X转发至视频服务器,并且从视频服务器获得与该视频相对应的视频X2,如果视频X1与视频X2相同,则可以认为上述标识部分提取模型是准确地。如果视频X1与视频X2不相同,则可以认为上述标识部分提取模型是不准确地,并可以重新选择采样URL,以训练获得新的标识部分提取模型。
返回确定URL#C相对应的视频C的过程,即,在网关设备接收到URL#C后,可以利用标识部分提取模型,获取视频C的标识,作为索引,从所缓存的视频中,查找到该视频C。
可选地,在遍历该目标URL的非Host部分之前,该方法还包括:
确定该目标URL的Host部分与各该缓存URL中的至少一个URL的Host部分相同。
并且,可选地,各该缓存URL的Host部分相同。
具体地说,由于同一视频网站在生成URL时所使用的规则通常相同,例如,对于不同用户设备请求观看同一视频时生成的不同的URL中,用于标识该视频的Path部分的级别或者Quey Param的名称通常相同,因此,在确定URL#C的Host部分与缓存URL的Host部分相同后,能够确定URL#C所对应的视频网站与该缓存URL的视频网站相同,从而能够可靠地通过该标识部分提取模型确定URL#C中用于标识视频C的字符,进一步提高所获取的视频的准确性。
可选地,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及
在遍历该目标URL的非Host部分之前,该方法还包括:
确定该目标URL的Path部分的深度与各该缓存URL的Path部分的深度相同。
具体地说,由于同一视频网站在生成URL时所使用的规则通常相同,例如,对于不同用户设备请求观看同一视频时生成的不同的URL中,用于标识该视频的Path部分的Path部分的深度相同,因此,如果确定URL#C的Path部分的深度与缓存URL的Path部分的深度不相同,则可以确定与该URL#C相对应的视频未被缓存,从而,无需进行查找动作,能够提高本发 明实施例的传输视频的方法的效率,改善用户体验。
可选地,该非Host部分包括路径Path部分和搜索参数Quey Param部分,
该方法还包括:
获取各该缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;
在遍历该目标URL的非Host部分之前,该方法还包括:
确定该目标URL的Quey Param部分所包含的搜索参数的参数名属于该参数名集合。
具体地说,网关设备可以确定用于训练获得上述标识部分提取模型的各URL的Quey Param的参数名,并生成包括上述各参数名的参数名集合,并且,如果URL#C包括的各Quey Param的参数名均不属于该参数名集合,则可以确定,无法根据上述标识部分提取模型从该URL#C中提取到用于指示该视频C的标识,从而无需进行后续动作,能够提高本发明实施例的传输视频的方法的效率,改善用户体验。
应理解,以上列举的确定与URL#C相对应的视频C的方法仅为示例性说明,本发明并不限定于此,例如,也可以以完整的URL#C,作为视频C的缓存索引,或者,也可以直接将该URL#C转发给视频服务器,以从视频服务器获得该视频C。
在确定与URL#C相对应的视频C后,可以根据如上所述获得的Rang部分提取模型,确定URL#C的Rang部分,进而可以确定与该Rang部分相对应的视频片段在视频C中的位置,例如,起始时间或结束时间,进而,可以从该视频C中截取与该URL#C的Rang部分相对应的视频片段(即,目标视频片段的一例)。
从而,网关设备可以将该视频片段发送给用户设备C。
根据本发明实施例的传输视频的方法,通过获取来自同一用户且对应同一视频的采样URL,并对该采样URL进行对比处理,能够获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也 无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
以上,结合图2至图4详细说明了根据本发明实施例的传输视频的方法,下面,结合图详细说明根据本发明实施例的用于实施上述方法的网关设备;其中,如前所述,该网关设备的一侧与一个或多个视频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;并且所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备,其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器。
图5示出了根据本发明实施例的网关设备200的示意性框图,如图5所示,该网关设备200包括:
接收单元220,用于用于接收第二用户设备发送的目标URL;
确定单元210,用于从缓存设备中确定与该目标URL相对应的第二视频,根据分段部分提取模型,确定该目标URL的分段部分,并根据该目标URL的分段部分,从该第二视频中确定目标视频片段;其中,所述第二视频来自于所述目标视频服务器;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;
发送单元230,用于向该第二用户设备发送该目标视频片段。
可选地,该接收单元210还用于接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;
该确定单元210还用于根据该第一采样URL确定该第一采样信息集合,根据该第二采样URL确定该第二采样信息集合,根据该分段部分提取条件,对该第一采样信息集合和该第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息,根据该分段信息,确定该分段部分提取模型。
可选地,该第一采样URL包括路径Path部分和搜索参数Quey Param部分,该第一采样URL的Quey Param部分包括K个Quey Param,该第一采样信息集合包括第一信息和第二信息中的至少一种信息,该第一信息用于指示该第一采样URL的Path部分的深度和Path值,该第二信息为K个,K个 该第二信息与该第一采样URL的K个Quey Param一一对应,各该第二信息分别用于指示所对应的Quey Param的名称和参数值;该第二采样URL包括Path部分和Quey Param部分,该第二采样URL的Quey Param部分包括M个Quey Param,该第二采样信息集合包括第三信息和第四信息中的至少一种信息,该第三信息用于指示该第二采样URL的Path部分的深度和Path值,该第四信息为M个,M个该第四信息与该第二采样URL的M个Quey Param一一对应,各该第四信息分别用于指示所对应的Quey Param的名称和参数值。
可选地,该分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
该第一条件为:该分段信息指示的Path部分的深度在该第一采样信息集合和该第二采样信息集合中相同,且该分段信息该指示Path值在该第一采样信息集合和该第二采样信息集合中相异,
该第二条件为:该分段信息指示的Quey Param的名称属于该第一采样信息集合和该第二采样信息集合双方,且该分段信息指示的Quey Param的参数值在该第一采样信息集合和该第二采样信息集合中相异,
该第三条件为:该分段信息指示的Quey Param的名称仅属于该第一采样信息集合和该第二采样信息集合中的一方。
可选地,在接收来自第一用户设备的第一采样URL和第二采样URL的方面,接收单元210具体用于在第一时段接收该第一采样URL,在第二时段接收该第二采样URL,其中,该第一时段与该第二时段之间的间隔是根据该第一视频的时长确定的。
可选地,该第一采样URL是第一用户设备在请求获取第一视频时发送的URL。
可选地,该第一采样URL与该第二采样URL的主机名Host部分的字符串相同。
可选地,确定单元210还用于,确定用于指示URL的标识部分的标识部分提取模型,并根据该标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分,遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含所述至少一个缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频;其中,各所述缓存 URL均与所述缓存视频相对应。
可选地,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分。
可选地,在遍历所述目标URL的非Host部分的方面,确定单元210具体用于,当该目标URL的Host部分与缓存设备中已缓存的缓存视频的各个缓存URL的至少一个URL的Host部分相同的情况下,遍历所述目标URL的非Host部分。
可选地,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及
在遍历所述目标URL的非Host部分的方面,确定单元210具体用于,当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
可选地,该非Host部分包括路径Path部分,以及
在遍历所述目标URL的非Host部分的方面,确定单元210具体用于,当该目标URL的Path部分与各该缓存URL的至少一个URL的Path部分相同时,遍历所述目标URL的非Host部分。
可选地,该非Host部分包括路径Path部分和搜索参数Quey Param部分,
在遍历所述目标URL的非Host部分的方面,确定单元210具体用于,获取各该缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;当该目标URL的Quey Param部分所包含的搜索参数的参数名属于该参数名集合时,遍历所述目标URL的非Host部分。
可选地,该接收单元210还用于接收至少一个验证URL,且该验证URL的非Host子字符串中包含该缓存URL的标识部分的字符串;
该发送单元230还用于向视频服务器转发该验证URL;
该接收单元220还用于接收该视频服务器根据该验证URL发送的验证视频;
该确定单元230还用于确定该验证视频与该缓存视频相同。
可选地,该缓存视频属于该第三视频。
可选地,该接收单元210还用于确定该目标URL的Host部分的字符串与该第一采样URL的Host部分的字符串相同;或
用于确定该目标URL的Host部分的字符串与该第二采样URL的Host部分的字符串相同。
根据本发明实施例的网关设备200可对应于本发明实施例的方法中的网关设备,并且,该网关设备200中的各单元即模块和上述其他操作和/或功能分别为了实现图2中的方法100的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的网关设备,通过获取来自同一用户且对应同一视频的采样URL,并对该采样URL进行对比处理,能够获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
以上,结合图2至图4详细说明了本发明实施例的传输视频的方法,下面,结合图6,详细说明本发明实施例的网关设备,其中,该网关设备的一侧与一个或多个视频服务器具有通信连接,该网关设备的另一侧与一个或多个用户设备也具有通信连接;该网关设备与缓存设备具有通信连接,或者,该网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;该网关设备用于实现本发明实施例的传输视频的方法,相关实现细节可以参考前述方法实施例。
图6示出了本发明实施例的网关设备300,如图6所示,该设备300包括:
总线310;
与所述总线310相连的处理器320;
与所述总线310相连的存储器330;
与所述总线310相连的收发机340;
其中,该处理器320通过所述总线310,调用所述存储器330中存储的程序,以用于:
控制收发机340接收第二用户设备发送的目标URL,并从缓存设备中确定与该目标URL相对应的第二视频;其中,第二用户设备为视频传输系统包括的至少一个用户设备中的一个;第二视频来自于目标视频服务器,例如,是在第二用户设备发送该目标URL之前,网关设备300从视频服务器获取并缓存到缓存设备中的;
根据分段部分提取模型,确定该目标URL的分段部分;
根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向该第二用户设备发送该目标视频片段。
可选地,该分段部分提取模型是根据分段信息确定的,该分段信息是基于分段部分提取条件,对第一采样信息集合和第二采样信息集合进行对比处理而从该第一采样信息集合和该第二采样信息集合中确定的,该第一采样信息集合是根据来自第一用户设备的第一采样URL确定的,该第一采样URL包括路径Path部分和搜索参数Quey Param部分,该第一采样URL的Quey Param部分包括K个Quey Param,该第一采样URL与第一视频相对应,该第一采样信息集合包括第一信息和第二信息中的至少一个,该第一信息用于指示该第一采样URL的Path部分的深度和Path值,该第二信息用于指示该第一采样URL的K个Quey Param的名称和参数值,该第二采样信息集合是根据来自第一用户设备的第二采样URL确定的,该第二采样URL包括Path部分和Quey Param部分,该第二采样URL的Quey Param部分包括M个Quey Param,该第二采样URL与该第一视频相对应,该第二采样信息集合包括第三信息和第四信息中的至少一个,该第三信息用于指示该第二采样URL的Path部分的深度和Path值,该第四信息用于指示该第二采样URL的M个Quey Param的名称和参数值,该分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
该第一条件为:该分段信息指示的Path部分的深度在该第一采样信息集合和该第二采样信息集合中相同,且该分段信息该指示Path值在该第一采样信息集合和该第二采样信息集合中相异,
该第二条件为:该分段信息指示的Quey Param的名称属于该第一采样信息集合和该第二采样信息集合双方,且该分段信息指示的Quey Param的 参数值在该第一采样信息集合和该第二采样信息集合中相异,
该第三条件为:该分段信息指示的Quey Param的名称仅属于该第一采样信息集合和该第二采样信息集合中的一方。
可选地,该处理器320还用于控制收发机340接收该第一采样URL和该第二采样URL;
用于根据该第一采样URL确定该第一采样信息集合,根据该第二采样URL确定该第二采样信息集合;
用于根据该分段部分提取条件,对该第一采样信息集合和该第二采样信息集合进行对比处理,以确定该分段信息;
用于根据该分段信息,确定该分段部分提取模型。
可选地,该处理器320具体用于控制收发机340在第一时段接收该第一采样URL,在第二时段接收该第二采样URL,其中,该第一时段与该第二时段之间的间隔是根据该第一视频的时长确定的
可选地,该第一采样URL是第一用户设备在请求获取第一视频时发送的URL。
可选地,该第一采样URL与该第二采样URL的主机名Host部分的字符串相同。
可选地,该处理器320具体控制收发机340接收缓存视频以及至少一个缓存URL,其中,各该缓存URL均与该缓存视频相对应;
用于根据标识部分提取模型,确定该缓存URL的标识部分,其中,该标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各该第三采样URL均与第三视频相对应,各该第三采样URL的字符串相异,各该第三采样URL的标识部分的字符串相同,各该第三采样URL所对应的用户设备相异,该标识部分包含于各该第三采样URL的非Host部分,该非Host部分是URL的字符串中除Host部分以外的部分;
用于遍历该目标URL的非Host部分,如果确定该目标URL的非Host部分中包含该至少一个缓存URL的标识部分的字符串,则确定该缓存视频为该第二视频。
可选地,该处理器320具体用于确定该目标URL的Host部分与各该缓存URL中的至少一个URL的Host部分相同。
可选地,各该缓存URL的Host部分相同。
可选地,该非Host部分包括路径Path部分,各该缓存URL的Path部分的深度相同,以及
可选地,该处理器320具体用于确定该目标URL的Path部分的深度与各该缓存URL的Path部分的深度相同。
可选地,该非Host部分包括路径Path部分,以及
该处理器320具体用于确定该目标URL的Path部分与各该缓存URL的至少一个URL的Path部分相同。
可选地,该非Host部分包括路径Path部分和搜索参数Quey Param部分,以及
该处理器320具体用于获取各该缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;
用于确定该目标URL的Quey Param部分所包含的搜索参数的参数名属于该参数名集合。
可选地,该处理器320具体用于控制接收机340接收至少一个验证URL,且该验证URL的非Host子字符串中包含该缓存URL的标识部分的字符串;
用于控制接收机340向视频服务器转发该验证URL;
用于控制接收机340接收该视频服务器根据该验证URL发送的验证视频;
用于确定该验证视频与该缓存视频相同。
可选地,该缓存视频属于该第三视频。
可选地,该处理器320具体用于确定该目标URL的Host部分的字符串与该第一采样URL的Host部分的字符串相同;或
确定该目标URL的Host部分的字符串与该第二采样URL的Host部分的字符串相同。
在本发明实施例中,处理单器还可以称为CPU。存储器可以包括只读存储器和随机存取存储器,并向处理器提供指令和信号。存储器的一部分还可以包括非易失行随机存取存储器(NVRAM)。具体的应用中,传输信号的设备可以嵌入或者本身可以就是例如个人电脑之类的标准以太网通信设备,传输信号的设备的各个模块通过总线系统耦合在一起,其中,总线系统除包括信号总线之外,还包括电源总线、控制总线和状态信号总线。
处理器可以实现或者执行本发明方法实施例中的公开的各步骤及逻辑 框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器,解码器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用解码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,解码单元或者处理单元读取存储器中的信息,结合其硬件完成上述方法的步骤。
应理解,在本发明实施例中,该处理器可以是中央处理单元(Central Processing Unit,简称为“CPU”),该处理器还可以是其他通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
根据本发明实施例的网关设备300可对应于本发明实施例的方法中的网关设备,并且,该网关设备300中的各单元即模块和上述其他操作和/或功能分别为了实现图2中的方法100的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的网关设备,通过获取来自同一用户且对应同一视频的采样URL,并对该采样URL进行对比处理,能够获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓 存设备的缓存效率,降低缓存设备的处理负担。
以上,结合图2至图4详细说明了本发明实施例的传输视频的方法,下面,结合图7,详细说明本发明实施例的视频传输系统。
图7示出了本发明实施例的视频传输系统400,如图7所示,该系统600包括:
用户设备410,用于向该网关设备发送统一资源定位符URL,并从该网关设备获取与该URL相对应的视频;
网关设备420,用于确定分段部分提取模型,该分段部分提取模型用于指示统一资源定位符URL的分段部分;接收第二用户设备发送的目标URL,并从缓存设备中确定与该目标URL相对应的第二视频;根据该分段部分提取模型,确定该目标URL的分段部分;根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向该第二用户设备发送该目标视频片段;
视频服务器430,用于接收网关设备转发的该URL,确定与该URL相对应的视频,并向该网关设备发送该视频。
可选地,该分段部分提取模型是根据分段信息确定的,该分段信息是基于分段部分提取条件,对第一采样信息集合和第二采样信息集合进行对比处理而从该第一采样信息集合和该第二采样信息集合中确定的,该第一采样信息集合是根据来自第一用户设备的第一采样URL确定的,该第一采样URL包括路径Path部分和搜索参数Quey Param部分,该第一采样URL的Quey Param部分包括K个Quey Param,该第一采样URL与第一视频相对应,该第一采样信息集合包括第一信息和第二信息中的至少一个,该第一信息用于指示该第一采样URL的Path部分的深度和Path值,该第二信息用于指示该第一采样URL的K个Quey Param的名称和参数值,该第二采样信息集合是根据来自第一用户设备的第二采样URL确定的,该第二采样URL包括Path部分和Quey Param部分,该第二采样URL的Quey Param部分包括M个Quey Param,该第二采样URL与该第一视频相对应,该第二采样信息集合包括第三信息和第四信息中的至少一个,该第三信息用于指示该第二采样URL的Path部分的深度和Path值,该第四信息用于指示该第二采样URL的M个Quey Param的名称和参数值,该分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
该第一条件为:该分段信息指示的Path部分的深度在该第一采样信息集 合和该第二采样信息集合中相同,且该分段信息该指示Path值在该第一采样信息集合和该第二采样信息集合中相异,
该第二条件为:该分段信息指示的Quey Param的名称属于该第一采样信息集合和该第二采样信息集合双方,且该分段信息指示的Quey Param的参数值在该第一采样信息集合和该第二采样信息集合中相异,
该第三条件为:该分段信息指示的Quey Param的名称仅属于该第一采样信息集合和该第二采样信息集合中的一方。
根据本发明实施例的视频传输系统400中的网关设备420可对应于本发明实施例的方法中的网关设备,并且,网关设备420中的各单元即模块和上述其他操作和/或功能分别为了实现图2中的方法100的相应流程,为了简洁,在此不再赘述。
根据本发明实施例的视频传输系统,通过获取来自同一用户且对应同一视频的采样URL,并对该采样URL进行对比处理,能够获取针对URL中用于标识视频片段在完整的视频中的位置的分段部分提取模型,从而,在接收到用户设备的携带有分段部分的目标URL时,能够从缓存设备中确定与该目标URL相对应的第二视频,能够根据该目标URL的分段部分,从该第二视频中确定目标视频片段,并向所述用户设备发送所述目标视频片段,从而即使在用户进行拖动动作时,也无需从视频服务器获取该多个片段,也无需在缓存设备中缓存同一视频的多个片段,避免了同一视频被多次缓存的情况的发生,进而在较为快速地向用户设备传输目标视频片段的同时,还能够提高缓存设备的缓存效率,降低缓存设备的处理负担。
应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
本领普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过 程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (23)

  1. 一种传输视频的方法,其特征在于,应用于网关设备,其中,所述网关设备的一侧与一个或多个视频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;所述方法包括:
    所述网关设备接收所述第二用户设备发送的目标URL,并从所述缓存设备中确定与所述目标URL相对应的第二视频;其中,所述第二视频来自于所述目标视频服务器;
    所述网关设备根据分段部分提取模型,确定所述目标URL的分段部分;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;
    所述网关设备根据所述目标URL的分段部分,从所述第二视频中确定目标视频片段,并向所述第二用户设备发送所述目标视频片段。
  2. 根据权利要求1所述的方法,其特征在于,还包括:
    所述网关设备接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;根据所述第一采样URL确定第一采样信息集合,根据所述第二采样URL确定第二采样信息集合;
    根据所述分段部分提取条件,对所述第一采样信息集合和所述第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息;
    根据所述分段信息,确定所述分段部分提取模型。
  3. 根据权利要求2所述的方法,其特征在于,所述第一采样URL包括路径Path部分和搜索参数Quey Param部分,所述第一采样URL的Quey Param部分包括K个Quey Param,所述第一采样信息集合包括第一信息和第二信息中的至少一个,所述第一信息用于指示所述第一采样URL的Path部分的深度和Path值,所述第二信息用于指示所述第一采样URL的K个Quey Param的名称和参数值;所述第二采样URL包括Path部分和Quey Param部分,所述第二采样URL的Quey Param部分包括M个Quey Param,所述第二采样信息集合包括第三信息和第四信息中的至少一个,所述第三信息用于 指示所述第二采样URL的Path部分的深度和Path值,所述第四信息用于指示所述第二采样URL的M个Quey Param的名称和参数值。
  4. 根据权利要求2或3所述的方法,其特征在于,所述分段部分提取条件包括第一条件、第二条件和第三条件中的至少一个,
    所述第一条件为:所述分段信息指示的Path部分的深度在所述第一采样信息集合和所述第二采样信息集合中相同,且所述分段信息所述指示Path值在所述第一采样信息集合和所述第二采样信息集合中相异;
    所述第二条件为:所述分段信息指示的Quey Param的名称属于所述第一采样信息集合和所述第二采样信息集合双方,且所述分段信息指示的Quey Param的参数值在所述第一采样信息集合和所述第二采样信息集合中相异;
    所述第三条件为:所述分段信息指示的Quey Param的名称仅属于所述第一采样信息集合和所述第二采样信息集合中的一方。
  5. 根据权利要求2至4任一项所述的方法,其特征在于,所述网关设备接收来自第一用户设备的第一采样URL和所述第二采样URL,包括:
    所述网关设备在第一时段接收所述第一采样URL,在第二时段接收所述第二采样URL,其中,所述第一时段与所述第二时段之间的间隔是根据所述第一视频的时长确定的。
  6. 根据权要求1至5中任一项所述的方法,其特征在于,所述从缓存设备中确定与所述目标URL相对应的第二视频,包括:
    确定标识部分提取模型,所述标识部分提取模型用于指示URL的分段部分;
    根据标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分;其中,各所述缓存URL均与所述缓存视频相对应;
    遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含至少一个所述缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频。
  7. 根据权利要求6所述的方法,其特征在于,所述标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各所述第三采样URL均与第三视频相对应,各所述第三采样URL的字符串相异,各所述第三采样URL的标识部分的字符串相同,各所述第三采样URL所对应的用户设备相异,所述标识部分包含于各所述第三采样URL的非Host部分,所述非Host 部分是URL的字符串中除Host部分以外的部分。
  8. 根据权利要求6或7所述的方法,其特征在于,所述遍历所述目标URL的非Host部分包括:
    当所述目标URL的Host部分与各所述缓存URL中的至少一个URL的Host部分相同的情况下,遍历所述目标URL的非Host部分。
  9. 根据权利要求6或7中任一项所述的方法,其特征在于,所述非Host部分包括路径Path部分,各所述缓存URL的Path部分的深度相同,以及
    所述遍历所述目标URL的非Host部分包括:
    当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
  10. 根据权利要求6或7所述的方法,其特征在于,所述非Host部分包括路径Path部分,以及
    所述遍历所述目标URL的非Host部分包括:
    当所述目标URL的Path部分与各所述缓存URL的至少一个URL的Path部分相同的情况下,遍历所述目标URL的非Host部分。
  11. 根据权利要求6或7中任一项所述的方法,其特征在于,所述非Host部分包括Path部分和Quey Param部分,
    所述方法还包括:
    确定各所述缓存URL的Quey Param部分所包含的搜索参数的参数名,以生成参数名集合;
    所述遍历所述目标URL的非Host部分包括:
    当所述目标URL的Quey Param部分所包含的搜索参数的参数名属于所述参数名集合的情况下,遍历所述目标URL的非Host部分。
  12. 根据权利要求6至11中任一项所述的方法,其特征在于,所述方法还包括:
    接收至少一个验证URL,且所述验证URL的非Host子字符串中包含各所述缓存URL的标识部分的字符串;
    向所述视频服务器转发所述验证URL;
    接收所述视频服务器根据所述验证URL发送的验证视频;
    确定所述验证视频与所述缓存视频相同。
  13. 一种网关设备,其特征在于,所述网关设备的一侧与一个或多个视 频服务器具有通信连接,所述网关设备的另一侧与一个或多个用户设备也具有通信连接;所述网关设备与缓存设备具有通信连接,或者,所述网关设备内部集成有缓存设备;其中所述一个或多个用户设备包括第二用户设备,所述一个或多个视频服务器包括目标视频服务器;所述网关设备包括:
    接收单元,用于接收所述第二用户设备发送的目标URL;
    确定单元,用于从所述缓存设备中确定与所述目标URL相对应的第二视频,根据分段部分提取模型,确定所述目标URL的分段部分,并根据所述目标URL的分段部分,从所述第二视频中确定目标视频片段;其中,所述第二视频来自于所述目标视频服务器;所述分段部分提取模型用于指示统一资源定位符URL的分段部分;所述分段部分用于指示视频片段在原始视频中的范围;
    发送单元,用于向所述第二用户设备发送所述目标视频片段。
  14. 根据权利要求13所述的网关设备,其特征在于,所述接收单元还用于接收来自第一用户设备的第一采样URL和第二采样URL;所述第一采样URL和所述第二采样URL均与第一视频相对应;
    所述确定单元还用于,根据所述第一采样URL确定第一采样信息集合,根据所述第二采样URL确定第二采样信息集合,根据所述分段部分提取条件,对所述第一采样信息集合和所述第二采样信息集合进行对比处理,以确定满足所述分段部分提取条件的分段信息,根据所述分段信息,确定所述分段部分提取模型。
  15. 根据权利要求14所述的网关设备,其特征在于,所述第一采样URL包括路径Path部分和搜索参数Quey Param部分,所述第一采样URL的Quey Param部分包括K个Quey Param,所述第一采样信息集合包括第一信息和第二信息中的至少一个,所述第一信息用于指示所述第一采样URL的Path部分的深度和Path值,所述第二信息用于指示所述第一采样URL的K个Quey Param的名称和参数值;所述第二采样URL包括Path部分和Quey Param部分,所述第二采样URL的Quey Param部分包括M个Quey Param,所述第二采样信息集合包括第三信息和第四信息中的至少一个,所述第三信息用于指示所述第二采样URL的Path部分的深度和Path值,所述第四信息用于指示所述第二采样URL的M个Quey Param的名称和参数值。
  16. 根据权利要求14或15所述的网关设备,其特征在于,所述分段部 分提取条件包括第一条件、第二条件和第三条件中的至少一个,
    所述第一条件为:所述分段信息指示的Path部分的深度在所述第一采样信息集合和所述第二采样信息集合中相同,且所述分段信息所述指示Path值在所述第一采样信息集合和所述第二采样信息集合中相异;
    所述第二条件为:所述分段信息指示的Quey Param的名称属于所述第一采样信息集合和所述第二采样信息集合双方,且所述分段信息指示的Quey Param的参数值在所述第一采样信息集合和所述第二采样信息集合中相异;
    所述第三条件为:所述分段信息指示的Quey Param的名称仅属于所述第一采样信息集合和所述第二采样信息集合中的一方。
  17. 根据权利要求14至16任一项所述的网关设备,其特征在于,在接收来自第一用户设备的第一采样URL和第二采样URL的方面,所述接收单元具体用于在第一时段接收所述第一采样URL,在第二时段接收所述第二采样URL,其中,所述第一时段与所述第二时段之间的间隔是根据所述第一视频的时长确定的。
  18. 根据权要求13至17中任一项所述的网关设备,其特征在于,
    所述确定单元还用于,确定用于指示URL的标识部分的标识部分提取模型,并根据所述标识部分提取模型,确定所述缓存设备中已缓存的缓存视频的各个缓存URL的标识部分,遍历所述目标URL的非Host部分,如果确定所述目标URL的非Host部分中包含至少一个所述缓存URL的标识部分的字符串,则确定所述缓存视频为所述第二视频;其中,各所述缓存URL均与所述缓存视频相对应。
  19. 根据权利要求18所述的网关设备,其特征在于,所述标识部分提取模型是根据至少两个第三采样URL的标识部分确定的,各所述第三采样URL均与第三视频相对应,各所述第三采样URL的字符串相异,各所述第三采样URL的标识部分的字符串相同,各所述第三采样URL所对应的用户设备相异,所述标识部分包含于各所述第三采样URL的非Host部分,所述非Host部分是URL的字符串中除Host部分以外的部分。
  20. 根据权利要求18或19所述的网关设备,其特征在于,在遍历所述目标URL的非Host部分的方面,所述确定单元具体用于,当所述目标URL的Host部分与各所述缓存URL中的至少一个URL的Host部分相同的情况下,遍历所述目标URL的非Host部分。
  21. 根据权利要求18或19所述的网关设备,其特征在于,所述非Host部分包括路径Path部分,各所述缓存URL的Path部分的深度相同,以及
    在遍历所述目标URL的非Host部分的方面,所述确定单元具体用于,当所述目标URL的Path部分的深度与各所述缓存URL的Path部分的深度相同的情况下,遍历所述目标URL的非Host部分。
  22. 根据权利要求18至21中任一项所述的网关设备,其特征在于,所述接收单元还用于接收至少一个验证URL,且所述验证URL的非Host子字符串中包含各所述缓存URL的标识部分的字符串;
    所述发送单元还用于向所述视频服务器转发所述验证URL;
    所述接收单元还用于接收所述视频服务器根据所述验证URL发送的验证视频;
    所述确定单元还用于确定所述验证视频与所述缓存视频相同。
  23. 一种视频传输系统,其特征在于,所述系统包括:
    根据权利要求13至22中任一项所述的网关设备;
    用户设备,用于向所述网关设备发送统一资源定位符URL,并从所述网关设备获取与所述URL相对应的视频;
    视频服务器,用于接收网关设备转发的所述URL,确定与所述URL相对应的视频,并向所述网关设备发送所述视频。
PCT/CN2015/080034 2014-09-11 2015-05-28 传输视频的方法、网关设备和视频传输系统 WO2016037497A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP15839268.8A EP3185563A4 (en) 2014-09-11 2015-05-28 Video transmission method, gateway device and video transmission system
US15/456,137 US10085046B2 (en) 2014-09-11 2017-03-10 Video transmission method, gateway device, and video transmission system

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201410461427.1 2014-09-11
CN201410461427.1A CN104301743B (zh) 2014-09-11 2014-09-11 传输视频的方法、网关设备和视频传输系统

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US15/456,137 Continuation US10085046B2 (en) 2014-09-11 2017-03-10 Video transmission method, gateway device, and video transmission system

Publications (1)

Publication Number Publication Date
WO2016037497A1 true WO2016037497A1 (zh) 2016-03-17

Family

ID=52321276

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2015/080034 WO2016037497A1 (zh) 2014-09-11 2015-05-28 传输视频的方法、网关设备和视频传输系统

Country Status (4)

Country Link
US (1) US10085046B2 (zh)
EP (1) EP3185563A4 (zh)
CN (1) CN104301743B (zh)
WO (1) WO2016037497A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104301743B (zh) 2014-09-11 2018-02-23 华为技术有限公司 传输视频的方法、网关设备和视频传输系统
US10749930B2 (en) * 2015-03-02 2020-08-18 Qualcomm Incorporated Indication for partial segment
US10547876B2 (en) * 2017-02-08 2020-01-28 Nanning Fugui Precision Industrial Co., Ltd. Video cache rule generation system and method
CN106953892B (zh) * 2017-02-14 2020-08-07 北京时间股份有限公司 一种获取文件的方法、装置及系统
CN107911712B (zh) * 2017-11-30 2020-10-09 歌尔科技有限公司 数据缓冲方法和电子设备
CN111491018B (zh) * 2020-04-07 2022-06-10 中国建设银行股份有限公司 模型下载方法及系统
CN111881108B (zh) * 2020-07-27 2021-05-14 广州锦行网络科技有限公司 一种基于web ssh的文件传输方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102868909A (zh) * 2011-10-17 2013-01-09 苏州迈科网络安全技术股份有限公司 Mp4在线视频缓存方法及装置
US20130103689A1 (en) * 2009-09-02 2013-04-25 Electronics And Telecommunications Research Institute Media mediator system and method for managing contents of various formats
CN104301743A (zh) * 2014-09-11 2015-01-21 华为技术有限公司 传输视频的方法、网关设备和视频传输系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8683066B2 (en) * 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
EP2507941A4 (en) * 2009-12-04 2013-12-04 Streamocean Inc SYSTEM AND METHOD FOR DELIVERING MULTIMEDIA CONTENT TO DISPLAY VIA A NETWORK
US8429169B2 (en) * 2010-07-30 2013-04-23 Bytemobile, Inc. Systems and methods for video cache indexing
US8892680B2 (en) * 2011-01-25 2014-11-18 Openwave Mobility, Inc. System and method for caching content elements with dynamic URLs
US20120310941A1 (en) * 2011-06-02 2012-12-06 Kindsight, Inc. System and method for web-based content categorization
JP2013038766A (ja) * 2011-07-12 2013-02-21 Sharp Corp 送信装置、送信装置の制御方法、制御プログラム、及び記録媒体
GB2514519B (en) 2012-03-26 2020-06-24 Brightcove Inc Dynamic audio track selection for media streaming
US9749375B2 (en) * 2013-01-16 2017-08-29 Futurewei Technologies, Inc. URL parameter insertion and addition in adaptive streaming
EP2957052B1 (en) * 2013-03-14 2022-07-20 Apple Inc. Media delivery service protocol to support large numbers of client with error failover processes

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130103689A1 (en) * 2009-09-02 2013-04-25 Electronics And Telecommunications Research Institute Media mediator system and method for managing contents of various formats
CN102868909A (zh) * 2011-10-17 2013-01-09 苏州迈科网络安全技术股份有限公司 Mp4在线视频缓存方法及装置
CN104301743A (zh) * 2014-09-11 2015-01-21 华为技术有限公司 传输视频的方法、网关设备和视频传输系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3185563A4 *

Also Published As

Publication number Publication date
US10085046B2 (en) 2018-09-25
CN104301743A (zh) 2015-01-21
US20170188055A1 (en) 2017-06-29
EP3185563A4 (en) 2017-08-16
CN104301743B (zh) 2018-02-23
EP3185563A1 (en) 2017-06-28

Similar Documents

Publication Publication Date Title
WO2016037497A1 (zh) 传输视频的方法、网关设备和视频传输系统
US10587544B2 (en) Message processing method, processing server, terminal, and storage medium
US9774642B2 (en) Method and device for pushing multimedia resource and display terminal
US11899819B2 (en) Machine-driven crowd-disambiguation of data resources
CN106534243B (zh) 基于http协议的缓存、请求、响应方法及相应装置
US9055096B2 (en) Apparatus and method for detecting an attack in a computer network
JP2013242877A5 (zh)
US9635121B2 (en) Systems and methods for caching HTTP post requests and responses
KR20160034930A (ko) 인터넷 프로토콜 (ip) 어드레스, 매체 액세스 제어 (mac) 어드레스 및 사용자 디바이스에 대한 로케이션을 연관시키기 위한 방법 및 시스템
WO2015081693A1 (zh) 一种网络共享用户识别方法及装置
WO2020125074A1 (zh) 消息到达率确定方法、装置、数据统计服务器及存储介质
US20170126556A1 (en) Information transmission method and apparatus, device and storage medium
WO2015085664A1 (zh) 一种同步方法及终端、服务器
CN103905495A (zh) 一种应用的同步方法及后台服务器
WO2016086755A1 (zh) 一种报文处理的方法和透明代理服务器
WO2015078122A1 (zh) 数据流的识别方法及设备
WO2018228234A1 (zh) 视频缓存方法及视频缓存装置
CN110166518B (zh) 会话信息的传输方法、装置、存储介质及电子装置
WO2017157127A1 (zh) 访问记录回传方法、设备和系统
CN112511569B (zh) 网络资源访问请求的处理方法、系统及计算机设备
WO2017097027A1 (zh) 基于因特网内容适配协议的数据处理方法、装置和系统
CN105338039A (zh) 一种物联网资源获取方法及装置
CN104580397B (zh) 页面访问方法及网络设备
KR20150031083A (ko) 웹사이트 접속 시간 단축 방법 및 이를 위한 장치
CN111314104B (zh) 一种即时通信业务操作行为识别方法及装置

Legal Events

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

Ref document number: 15839268

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015839268

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015839268

Country of ref document: EP