WO2022057935A1 - Procédé et appareil permettant l'obtention de données sur la base d'un réseau de distribution de contenu - Google Patents

Procédé et appareil permettant l'obtention de données sur la base d'un réseau de distribution de contenu Download PDF

Info

Publication number
WO2022057935A1
WO2022057935A1 PCT/CN2021/119446 CN2021119446W WO2022057935A1 WO 2022057935 A1 WO2022057935 A1 WO 2022057935A1 CN 2021119446 W CN2021119446 W CN 2021119446W WO 2022057935 A1 WO2022057935 A1 WO 2022057935A1
Authority
WO
WIPO (PCT)
Prior art keywords
content
address
data
fingerprint
content fingerprint
Prior art date
Application number
PCT/CN2021/119446
Other languages
English (en)
Chinese (zh)
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 华为云计算技术有限公司
Publication of WO2022057935A1 publication Critical patent/WO2022057935A1/fr

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Definitions

  • the embodiments of the present application relate to the field of content distribution networks, and in particular, to a method and apparatus for acquiring data based on a content distribution network.
  • FIG. 1 is a schematic structural diagram of a content distribution network provided in the prior art.
  • the terminal device 110 sends a uniform resource locator (URL) to the domain name system (domain name system, DNS) server 120, the domain name The system server 120 parses the uniform resource locator, and feeds back the internet protocol (IP) address of the cache cluster 130 to the terminal device 120 .
  • URL uniform resource locator
  • IP internet protocol
  • the terminal device 120 sends a data request including the uniform resource locator to the cache cluster 130 .
  • the cache cluster 130 includes a plurality of content cache servers 131 .
  • the content cache server 131 in the cache cluster 130 queries its corresponding data according to the uniform resource locator. If the content cache server 131 in the cache cluster 130 caches the data accessed by the terminal device 110 , the data is fed back to the terminal device 110 . If the content cache server 131 in the cache cluster 130 does not cache the data accessed by the terminal device 110 , the data is obtained from the content source 140 that provides the data, and the data is fed back to the terminal device 110 .
  • the uniform resource locator is invalid or modified, even if the content cache server stores data, the content cache server cannot query the data accessed by the end user, and cannot feed back the data to the terminal device. Therefore, how a terminal device can quickly acquire the accessed data is an urgent problem to be solved.
  • the embodiments of the present application provide a method and apparatus for acquiring data based on a content distribution network, which solves the problem of how to quickly acquire the accessed data.
  • the present application provides a method for acquiring data based on a content distribution network, the method can be applied to a terminal device, or the method can be applied to a device that can support a terminal device to implement the method for acquiring data, for example, the acquiring data
  • the device comprises a chip system, and the method includes: the terminal device obtains the address of the content distribution server indicated by the content fingerprint address and the first content fingerprint, obtains the address of the content cache server from the content distribution server, and then obtains the address of the content cache server from the content cache server.
  • the server acquires the data associated with the first content fingerprint, and displays the content expressed by the data.
  • the first content fingerprint is generated from the data to be accessed.
  • the terminal device can still obtain the data to be accessed from the content cache server according to the content fingerprint address or content fingerprint, so as to avoid the inability to query the data accessed by the end user and to send the The situation that the terminal equipment feeds back data improves the accuracy and rate of the terminal equipment acquiring data.
  • the uniform resource locator may contain sensitive information such as file names, which may easily lead to information leakage.
  • the content fingerprint address and the content fingerprint indication data are used to avoid information leakage and improve data security.
  • the terminal device after acquiring the first content fingerprint and the address of the content distribution server from the content fingerprint address, the terminal device sends the content fingerprint address and the address of the terminal device to the content distribution server, or sends the content distribution server to the content distribution server.
  • the terminal device sends the first content fingerprint to the content cache server indicated by the address of the content cache server; and receives the data associated with the first content fingerprint sent by the content cache server.
  • the terminal device can display the content expressed by the data.
  • This embodiment also provides a method for verifying data. Specifically, after acquiring the data associated with the first content fingerprint from the content cache server indicated by the address of the content cache server, the method further includes: the terminal device generates a second content fingerprint by using a hash algorithm; when the first content fingerprint and the second content fingerprint are When the fingerprints are the same, the terminal device determines that the data has not been tampered with. Therefore, it is convenient for the terminal device to verify whether the acquired data has been tampered with according to the content fingerprint of the data, and to prompt the user whether the received data is correct.
  • the method before obtaining the address of the content cache server from the content distribution server according to the content fingerprint address, the method further includes: the terminal device may obtain the content fingerprint address from other servers in the content distribution network according to the identification of the data .
  • Data is identified as a Uniform Resource Locator or resource name.
  • other servers may be Domain Name System servers.
  • the domain name system server stores the correspondence between the identifier of the data and the content fingerprint address of the data. Therefore, it is convenient for the terminal device to obtain the address and content fingerprint of the content distribution server according to the content fingerprint address.
  • the terminal device After receiving the data acquisition instruction from the user, the terminal device acquires the content fingerprint address according to the data identifier.
  • the data is fragmented data contained in a resource indicated by a uniform resource locator or a resource name; obtaining a content fingerprint address according to an identifier of the data includes: obtaining a plurality of fragments included in the resource according to the identifier of the data The content fingerprint address of the slice data.
  • the terminal device obtains fragmented data from multiple content cache servers, thereby effectively improving the efficiency of data acquisition by the terminal device and breaking through the bandwidth bottleneck of a single storage server.
  • the present application provides a method for acquiring data based on a content distribution network, the method can be applied to a content distribution server, or the method can be applied to a device that can support the content distribution server to implement the method for distributing data, such as this
  • the device for distributing data includes a chip system, and the method includes: the content distribution server receives the address and content fingerprint address of the terminal device sent by the terminal device, or, after receiving the address and content fingerprint of the terminal device sent by the terminal device, determine according to the address of the terminal device.
  • the address of the content cache server associated with the content fingerprint, and the address of the content cache server is sent to the terminal device.
  • the content fingerprint is generated according to the data to be accessed, and the content fingerprint address is used to indicate the content fingerprint and the address of the content distribution server.
  • the content cache server indicated by the address of the content cache server stores the data and the content fingerprint.
  • the content distribution server informs the terminal device of the address of the content storage server where the data is stored, so that the terminal device can obtain the information associated with the content fingerprint from the content cache server indicated by the address of the content cache server. It avoids the situation that the data accessed by the terminal user cannot be queried, and the data cannot be fed back to the terminal device, thereby improving the accuracy and speed of the terminal device acquiring data.
  • the method further includes: the content distribution server receiving data sent by the content source; generating a content fingerprint according to the data, and generating a content fingerprint address; determining at least one content caching server according to the content fingerprint address; The cache server sends data and content fingerprints.
  • the content fingerprint address is generated based on the content fingerprint of the data and the address of the content distribution server, the content fingerprint address uniquely indicates a piece of data.
  • the content distribution server distributes a piece of data to the same content cache server according to the content fingerprint address. It is understandable that the data corresponding to different content fingerprints stored by one content cache server are different, and the content fingerprints of the same data on different content cache servers are the same. Therefore, the disadvantage that the content cache server stores multiple copies of the same data when the uniform resource locators corresponding to the same piece of data are different is overcome. The redundant storage of the content cache server is avoided, and the utilization rate of the content cache server is improved.
  • the data is fragmented data contained in a resource indicated by a uniform resource locator or a resource name; the method further includes: the content distribution server divides the resource into multiple fragmented data, and each fragment is divided into multiple fragmented data.
  • the content fingerprints of the data and fragmented data are stored to at least one content cache server. Therefore, it is convenient for the terminal device to acquire data from multiple content cache servers at the same time, which improves the rate at which the terminal device acquires data.
  • the present application provides a method for sending data based on a content distribution network, the method can be applied to a content cache server, or the method can be applied to a device that can support the content cache server to implement the method for caching data, such as this
  • the device for caching data includes a chip system, and the method includes: a content caching server receives a content fingerprint sent by a terminal device, determines data associated with the content fingerprint according to the content fingerprint; and sends the data associated with the content fingerprint to the terminal device. Content fingerprints are generated from the data to be accessed.
  • the content cache server can determine the data to be accessed by the user according to the content fingerprint, and send the data associated with the content fingerprint to the terminal device, avoiding the inability to query the data accessed by the terminal user. In the case where data cannot be fed back to the terminal device, the accuracy and rate of data acquisition by the terminal device are improved.
  • the data is fragmented data contained in a resource indicated by a uniform resource locator or a resource name.
  • the present application provides an apparatus for acquiring data, where the apparatus for acquiring data includes functions of each module for executing the method in the first aspect or any possible implementation manner of the first aspect.
  • the present application provides an apparatus for distributing data, where the apparatus for distributing data includes the functions of each module for executing the method in the second aspect or any possible implementation manner of the second aspect.
  • the present application provides an apparatus for caching data, where the apparatus for caching data includes the functions of each module for executing the method in the third aspect or any possible implementation manner of the third aspect.
  • the present application provides a computer, the computer includes a memory and a processor, the memory is used to store a set of computer instructions; when the processor executes the set of computer instructions, the first aspect or The functions of each module of the method in any possible implementation manner of the first aspect.
  • the present application provides a computer, the computer includes a memory and a processor, the memory is used to store a set of computer instructions; when the processor executes the set of computer instructions, the second aspect or In the second aspect, the functions of each module of the method in any possible implementation manner.
  • the present application provides a computer, the computer includes a memory and a processor, the memory is used to store a set of computer instructions; when the processor executes the set of computer instructions, the third aspect or
  • the third aspect is the function of each module of the method in any possible implementation manner.
  • the present application provides a computer-readable storage medium, including computer software instructions; when the computer software instructions are executed in a computer, the computer is made to execute the first aspect or any one of the possible implementations of the first aspect. method described.
  • the present application provides a computer-readable storage medium, comprising computer software instructions; when the computer software instructions are executed in a computer, the computer is made to execute any one of the second aspect or possible implementations of the second aspect the method described.
  • the present application provides a computer-readable storage medium, comprising computer software instructions; when the computer software instructions are executed in a computer, the computer is made to execute any one of the third aspect or possible implementations of the third aspect the method described.
  • the present application provides a computer program product comprising instructions, which, when executed on a computer, cause the computer to perform the method described in the first aspect or any one of the implementations of the first aspect.
  • the present application provides a computer program product comprising instructions, which, when run on a computer, cause the computer to perform the method described in the second aspect or any one of the implementations of the second aspect.
  • the present application provides a computer program product comprising instructions, which, when run on a computer, cause the computer to perform the method described in the third aspect or any one of the implementation manners of the third aspect.
  • the present application may further combine to provide more implementation manners.
  • FIG. 1 is a schematic structural diagram of a content distribution network provided by the prior art
  • FIG. 2 is a schematic structural diagram of a content distribution network according to an embodiment of the present application.
  • FIG. 3 is a flowchart of a method for distributing data according to an embodiment of the present application.
  • FIG. 5 is a schematic diagram of an interface display of data content provided by an embodiment of the present application.
  • FIG. 6 is a flowchart of a method for acquiring data based on a content distribution network provided by an embodiment of the present application
  • FIG. 7 is a schematic structural diagram of another content distribution network provided by an embodiment of the present application.
  • FIG. 8 is a flowchart of another method for acquiring data based on a content distribution network provided by an embodiment of the present application.
  • FIG. 9 is a flowchart of another method for acquiring data based on a content distribution network provided by an embodiment of the present application.
  • FIG. 10 is a schematic structural diagram of an apparatus for acquiring data according to an embodiment of the present application.
  • FIG. 11 is a schematic structural diagram of an apparatus for distributing data according to an embodiment of the present application.
  • FIG. 12 is a schematic structural diagram of an apparatus for caching data provided by an embodiment of the present application.
  • FIG. 13 is a schematic structural diagram of a computer according to an embodiment of the present application.
  • FIG. 15 is a schematic structural diagram of another computer provided by an embodiment of the present application.
  • words such as “exemplary” or “for example” are used to represent examples, illustrations or illustrations. Any embodiments or designs described in the embodiments of the present application as “exemplary” or “such as” should not be construed as preferred or advantageous over other embodiments or designs. Rather, the use of words such as “exemplary” or “such as” is intended to present the related concepts in a specific manner.
  • “Plurality” means two or more, and other quantifiers are similar.
  • “And/or” describes the association relationship between associated objects, indicating that there can be three kinds of relationships, for example, A and/or B, which can mean that A exists alone, A and B exist at the same time, and B exists alone.
  • occurrences of the singular forms “a”, “an” and “the” do not mean “one or only one” unless the context clearly dictates otherwise, but rather “one or more” in one”.
  • a device means to one or more such devices.
  • "at least one of subsequent associated objects for example "at least one of A, B and C" includes A, B, C, AB, AC, BC, or ABC.
  • FIG. 2 shows an exemplary diagram of an architecture of a content distribution network that can be applied to this embodiment of the present application.
  • the content distribution network includes a plurality of cache clusters 210 .
  • the cache cluster 210 includes a content distribution server 211 and a plurality of content cache servers 212 .
  • the content distribution server 211 is connected to a plurality of content cache servers 212 .
  • a cache cluster can be deployed based on the size of the geographic extent. For example, a cache cluster 210 is deployed in the range of a zone, and terminal devices within the range of the zone can obtain data from the content cache server 212 in the cache cluster 210 .
  • a cache cluster 210 is deployed within the scope of a city, and terminal devices within the scope of the city can obtain data from the content cache server 212 in the cache cluster 210 . If the geographic scope is large, you can deploy multi-level cache clusters, and the multi-level cache clusters are connected in sequence.
  • a content distribution server 211 in a cache cluster 210 within a district may be connected to a content distribution server 211 in a cache cluster 210 within a city.
  • FIG. 2 is only a schematic diagram, and the content distribution network may also include other devices, such as a configuration center, routers, and switches of the content distribution network, which are not shown in FIG. 2 .
  • the embodiments of the present application do not limit the number of cache clusters, content distribution servers, and content cache servers included in the content distribution network.
  • the content distribution server 211 is used for distributing the data acquired from the content source 220 to at least one content caching server 212, and the data is stored by the at least one content caching server 212, so that the terminal device 230 can obtain the data from the best content caching server 212 as quickly as possible to obtain the accessed data.
  • the optimal content cache server 212 may be the server closest to the terminal device 230 , or may be the server with the fastest transmission speed in the cache cluster 210 .
  • the content source 220 may be a resource provider's server, or may be a content cache server 212 in another cache cluster 210 .
  • FIG. 3 is a flowchart of a method for distributing data based on a content distribution network according to an embodiment of the present application.
  • the content distribution server 211 receives the data sent by the content source 220 .
  • the data received by the content distribution server 211 may be actively sent by the content source 220 to the content distribution server 211.
  • the data received by the content distribution server 211 is the received data sent by the content source 220 after the content distribution server 211 actively sends a request message to the content source 220 .
  • the content distribution server 211 generates a content fingerprint of the data.
  • a content fingerprint is a string of letters and numbers generated from data using a hash algorithm (eg: MD5).
  • a content fingerprint uniquely indicates the data that generated the content fingerprint.
  • the content fingerprint of the data changes as the data changes.
  • the content fingerprint is also sent with changes.
  • the content fingerprint could be 5971bed8bbe98aacca48acc93eaf58d4.
  • the content distribution server 211 generates a content fingerprint address of the data.
  • a content fingerprint address is a queryable address that contains a content fingerprint.
  • the content distribution server 211 may generate the content fingerprint address according to the content fingerprint and the address of the content distribution server 211 .
  • the content distribution server 211 splices the content fingerprint and the address of the content distribution server 211 to generate the content fingerprint address.
  • 192.168.100.101:8090 represents the address of the content distribution server 211
  • 5971bed8bbe98aacca48acc93eaf58d4 represents the content fingerprint.
  • the content distribution server 211 may generate the content fingerprint address according to the content fingerprint and the domain name of the content distribution server 211 .
  • the content distribution server 211 splices the content fingerprint and the domain name of the content distribution server 211 to generate the content fingerprint address.
  • ept.ipcdn.huaweicloud.com:8090 represents the domain name of the content distribution server 211
  • 5971bed8bbe98aacca48acc93eaf represents the content fingerprint.
  • the content distribution server 211 uses an encryption algorithm to encrypt the content fingerprint and the address of the content distribution server 211 to generate the content fingerprint address.
  • the content distribution server 211 publishes the generated content fingerprint address to a server on the Internet (eg, a website, an application store, etc.).
  • the server on the Internet stores the corresponding relationship between the resource name and the content fingerprint address, or stores the corresponding relationship between the content uniform resource locator and the content fingerprint address.
  • the content distribution server 211 publishes the generated content fingerprint address to the domain name system server, and the domain name system server stores the corresponding relationship between the content uniform resource locator and the content fingerprint address, or stores the corresponding relationship between the resource name and the content fingerprint address. .
  • the content distribution server 211 determines at least one content cache server 212 according to the content fingerprint address.
  • the content distribution server 211 may determine at least one content cache server 212 according to a load balancing technology, so that each content cache server 212 stores data of an optimally matched amount of data that it can load.
  • the content distribution server 211 sends the data and the content fingerprint to at least one content cache server 212.
  • Each of the at least one content caching server 212 stores data and content fingerprints sent by the content distribution server 211 .
  • At least one content cache server 212 includes all content cache servers 212 in the cache cluster 210 . Understandably, the content distribution server 211 determines all the content cache servers 212 in the cache cluster 210 according to the content fingerprint addresses, distributes the data and content fingerprints to all the content cache servers 212 in the cache cluster 210, and caches each content in the cache cluster 210. The cache server 212 stores data and content fingerprints.
  • the at least one content cache server 212 includes a portion of the content cache servers 212 in the cache cluster 210 .
  • the content distribution server 211 determines some content cache servers 212 in the cache cluster 210 according to the content fingerprint addresses, distributes data and content fingerprints to some content cache servers 212 in the cache cluster 210, and caches some content in the cache cluster 210.
  • Server 212 stores data and content fingerprints.
  • the content fingerprint address is generated based on the content fingerprint of the data and the address of the content distribution server 211, the content fingerprint address and the content fingerprint uniquely indicate a piece of data.
  • the content distribution server 211 distributes a piece of data to the same content cache server 212 according to the content fingerprint address. It is understandable that the data corresponding to different content fingerprints stored by one content cache server 212 is different, and the content fingerprints of the same data on different content cache servers 212 are the same. Therefore, the disadvantage of storing multiple copies of the same data when the uniform resource locators corresponding to the same piece of data are different is overcome. The redundant storage of the content cache server is avoided, and the utilization rate of the content cache server is improved.
  • FIG. 4 is a flowchart of another method for distributing data based on a content distribution network according to an embodiment of the present application. The difference from the method shown in FIG. 3 is that after the content distribution server 211 receives the resource sent by the content source 220 (execute S410 ), the content distribution server 211 divides the resource into multiple pieces of data (execute S420 ). For example, the content distribution server 211 divides resources according to content size or resource type, and obtains multiple pieces of data.
  • the content distribution server 211 divides the video file in units of a data amount of 1 megabytes (M). For example, the content distribution server 211 divides an Android application package (android application package, APK) with a data volume of 2M as a unit. Further, the content distribution server 211 traverses the segmented data obtained by division, and for each segmented data, the content distribution server 211 executes S430 to S460 until all segmented data is traversed, and stores each segmented data in multiple content caches server 212.
  • M data amount of 1 megabytes
  • the content distribution server 211 generates a content fingerprint of the fragmented data.
  • the content distribution server 211 generates a content fingerprint address of the fragmented data.
  • the content distribution server 211 determines at least one content cache server 212 according to the content fingerprint address of the fragmented data.
  • the content distribution server 211 sends the fragmented data and the content fingerprint of the fragmented data to at least one content cache server 212.
  • the terminal device acquires data from multiple content cache servers 212 at the same time, which improves the rate at which the terminal device acquires data.
  • the content distribution server 211 may also store data and content fingerprints of the data, that is, the functions of the content distribution server 211 may be deployed on any content cache server 212 in the cache cluster 210 .
  • the terminal device 230 may also be referred to as a terminal (terminal), a user equipment (UE), a mobile station (mobile station, MS), a mobile terminal (mobile terminal, MT), and the like.
  • the terminal device can be a mobile phone (mobile phone), a tablet computer (Pad), a computer with wireless transceiver function, a virtual reality (Virtual Reality, VR) terminal device, an augmented reality (Augmented Reality, AR) terminal device, industrial control (industrial control) wireless terminals in ), wireless terminals in self-driving, wireless terminals in remote medical surgery, wireless terminals in smart grid, wireless terminals in transportation safety Terminals, wireless terminals in smart cities, wireless terminals in smart homes, and so on.
  • the embodiments of the present application do not limit the specific technology and specific device form adopted by the terminal device.
  • the terminal device 230 is installed with a client (eg, a browser 231 or an application 232 ).
  • the client can also be called the client, which corresponds to the server and provides local services to users.
  • the interface of the client can display various contents (such as videos, news, pictures, etc.).
  • the terminal user can click on the interface of the client, and the terminal device 230 sends a request message to the content distribution network, acquires the data, and uses the display to display the content expressed by the data.
  • a plurality of videos about star A are displayed on the interface of the browser 231 .
  • the user can click on the video 4 of the star A displayed on the interface of the browser 231 (501), the terminal device 230 responds to the click operation of the terminal user, and the content fingerprint address of the video 4 of the star A can also be displayed on the interface of the browser 231, and Send a request message to the content distribution network to obtain the resources of Star A's video 4.
  • the content fingerprint address of the video 4 of star A includes the address of the content distribution network and the content fingerprint of the video 4 of star A.
  • the display interface of the terminal device 230 displays the content of the video 4 of the star A (502).
  • the end user clicks on the video 503 displayed on the interface of the application 232 .
  • the application interface may not display the content fingerprint address of the video 503 .
  • the terminal device 230 responds to the user's click operation, and sends a request message to the content distribution network to obtain video resources.
  • the display interface of the terminal device 230 displays the content of the playing video.
  • the content distribution network may further include a control server, the control server determines a cache cluster in the content distribution network, and feeds back the address of the cache cluster 210 to the terminal device 230 .
  • the cache cluster 210 indicated by the control server may be the cache cluster closest to the terminal device 230, or may be the cache cluster with the fastest transmission speed.
  • the terminal device 230 obtains the address of the content cache server 212 according to the content fingerprint address, and obtains the data associated with the content fingerprint from the content cache server 212 indicated by the address of the content cache server 212 .
  • FIG. 6 is a flowchart of a method for acquiring data based on a content distribution network according to an embodiment of the present application.
  • the terminal device 230 obtains the content fingerprint address according to the identifier of the data.
  • the identification of the data can be a uniform resource locator (uniform resource locator, URL) or a resource name.
  • the terminal user clicks on the content displayed on the display interface, and the terminal device 230 responds to the click operation of the terminal user and obtains the content fingerprint address according to the identifier of the data.
  • a Uniform Resource Locator is a representation on the Internet's World Wide Web Services for specifying the location of information.
  • the terminal device 230 may obtain the content fingerprint address from the other server 240 shown in FIG. 7 according to the identification of the data.
  • Other servers 240 may be servers on the Internet (eg, websites, application malls, etc.) or domain name system servers.
  • a server on the Internet stores the correspondence between resource names and content fingerprint addresses.
  • the terminal device 230 may send the resource name to the server on the Internet, and receive the content fingerprint address corresponding to the resource name sent by the server on the Internet. As shown in Table 1.
  • the content fingerprint address corresponding to resource name 1 is content fingerprint address 1.
  • the content fingerprint address corresponding to resource name 2 is content fingerprint address 2 .
  • the content fingerprint address corresponding to resource name 3 is content fingerprint address 3 .
  • the terminal device 230 can obtain the content fingerprint address 2.
  • the DNS server stores the correspondence between the uniform resource locator and the content fingerprint address.
  • the terminal device 230 may send the content uniform resource locator to the domain name system server, and receive the content fingerprint address corresponding to the content uniform resource locator sent by the domain name system server. As shown in table 2.
  • the content fingerprint address corresponding to the uniform resource locator 1 is the content fingerprint address 1.
  • the content fingerprint address corresponding to the uniform resource locator 2 is the content fingerprint address 2 .
  • the content fingerprint address corresponding to the uniform resource locator 3 is the content fingerprint address 3 .
  • the terminal device 230 can obtain the content fingerprint address 2.
  • the content fingerprint address can also be embedded in the Uniform Resource Locator.
  • the terminal device 230 can obtain the content fingerprint address of the data from the uniform resource locator of the data.
  • the terminal device 230 acquires the content fingerprint address according to the data identifier.
  • the terminal device 230 acquires the first content fingerprint and the address of the content distribution server 211 from the content fingerprint address.
  • the content fingerprint address is generated according to the first content fingerprint and the address of the content distribution server 211 .
  • the content fingerprint address is formed by splicing the first content fingerprint and the address of the content distribution server 211.
  • the x bits in the content fingerprint address indicate the address of the content distribution server 211
  • the y bits in the content fingerprint address indicate the first content fingerprint.
  • the terminal device 230 can send the domain name of the content distribution server 211 to the domain name system server, the domain name system server parses the domain name of the content distribution server 211, and receives the content distribution server 211's domain name sent by the domain name system server. address.
  • the content fingerprint address is generated after the content distribution server 211 encrypts the first content fingerprint and the address of the content distribution server 211 by using an encryption algorithm.
  • the terminal device 230 can use a preset decryption algorithm to parse the content fingerprint address to obtain the first content fingerprint and the address of the content distribution server 211 .
  • the preset decryption algorithm is the same algorithm used when the content distribution server 211 generates the content fingerprint address.
  • the terminal device 230 sends the content fingerprint address and the address of the terminal device 230 to the content distribution server 211 .
  • the content distribution server 211 receives the content fingerprint address and the address of the terminal device 230 sent by the terminal device 230 .
  • the terminal device 230 sends the first content fingerprint and the address of the terminal device 230 to the content distribution server 211.
  • S604a The content distribution server 211 receives the first content fingerprint and the address of the terminal device 230 sent by the terminal device 230.
  • the content distribution server 211 determines the address of the content cache server 212 associated with the first content fingerprint according to the address of the terminal device 230 .
  • the content distribution server 211 may store the content fingerprint address, the correspondence between the content fingerprint and the address of the content cache server.
  • the content distribution server 211 receives the first content fingerprint or content fingerprint address sent by the terminal device 230, and determines the address of the content cache server 212 associated with the first content fingerprint according to the first content fingerprint or content fingerprint address query correspondence.
  • the content cache server 212 indicated by the address of the content cache server 212 stores the first content fingerprint and data associated with the first content fingerprint. example, as shown in Table 3.
  • the content distribution server 211 looks up the table to determine that the address of the content cache server 212 associated with content fingerprint 1 is address 1. If the content distribution server 211 receives the content fingerprint address 1, it looks up the table to determine that the content fingerprint address 1 corresponds to the content fingerprint 1, and the address of the content cache server 212 associated with the content fingerprint 1 is the address 1.
  • the content distribution server 211 looks up the table to determine that the addresses of the content cache server 212 associated with content fingerprint 2 include address 2, address 3 and address 4. It is understandable that the content distribution server 211 stores the data of content fingerprint 2 and content fingerprint 2 from the content cache server 212 indicated by address 2, address 3 and address 4.
  • the content distribution server 211 selects an optimal content caching server 212 from the content caching servers 212 indicated by address 2, address 3 and address 4 according to the address of the terminal device 230, and feeds back the address of the optimal content caching server 212 to the terminal device 230.
  • the optimal content caching server 212 may be the content caching server closest to the terminal device 230, or may be the content caching server with the fastest transmission speed. Assume that the best content cache server 212 is the content cache server 212 indicated by address 2 .
  • the terminal device 230 may acquire data from the content cache server 212 .
  • the content distribution server 211 sends the address of the content cache server 212 to the terminal device 230 .
  • the terminal device 230 receives the address of the content cache server 212 sent by the content distribution server 211.
  • the terminal device 230 sends the first content fingerprint to the content cache server indicated by the address of the content cache server 212.
  • the content cache server 212 receives the first content fingerprint sent by the terminal device 230.
  • the content cache server 212 determines data associated with the first content fingerprint according to the first content fingerprint.
  • the content cache server 212 stores content fingerprints and data associated with the content fingerprints.
  • the content cache server 212 may query the corresponding relationship according to the first content fingerprint to obtain data associated with the first content fingerprint.
  • the content cache server 212 sends the data associated with the first content fingerprint to the terminal device 230.
  • the terminal device 230 receives the data associated with the first content fingerprint sent by the content cache server 212.
  • the terminal device 230 displays the content expressed by the data.
  • the terminal device 230 can still obtain the data to be accessed according to the content fingerprint address or content fingerprint, so as to avoid the inability to query the data accessed by the terminal user and to feed back data to the terminal device. In this case, the data acquisition rate of the terminal device is improved.
  • the uniform resource locator may contain sensitive information such as file names, which may easily lead to information leakage.
  • the content fingerprint address and the content fingerprint indication data are used to avoid information leakage and improve data security.
  • Resource tampering is a method commonly used by hackers.
  • hackers can forge and tamper with the data of the Uniform Resource Locator, and what the user accesses by using the Uniform Resource Locator may not be the original content.
  • the terminal device 230 may further verify the acquired data.
  • the method also includes the following steps.
  • the terminal device 230 generates a second content fingerprint by using a hash algorithm.
  • the terminal device 230 determines whether the first content fingerprint and the second content fingerprint are the same.
  • the terminal device 230 determines that the data has not been tampered with.
  • the terminal device 230 determines that the data has been tampered with.
  • the terminal device 230 can verify whether the received data has been tampered with.
  • the data is fragmented data of the resource indicated by the uniform resource locator.
  • the video being watched by the end user is stuck, and the data that the end user needs to obtain is the fragmented data in the resource.
  • the terminal device 230 may acquire the fragmented data in the resource according to the above S601 to S617.
  • the terminal device 230 acquires the resource indicated by the uniform resource locator for the first time, it acquires, according to the uniform resource locator, the content fingerprint address of the resource including multiple pieces of data.
  • FIG. 9 is a flowchart of another method for acquiring data based on a content distribution network according to an embodiment of the present application.
  • the terminal device 230 obtains, according to the uniform resource locator, the content fingerprint address of the resource including multiple pieces of data.
  • the terminal device 230 traverses the content fingerprint addresses of a plurality of fragmented data, and for the content fingerprint addresses of each fragmented data, the terminal device 230 executes S602 to S617 until the content fingerprint addresses of all fragmented data are traversed, and obtains each of the resources.
  • Sharded data is a flowchart of another method for acquiring data based on a content distribution network according to an embodiment of the present application. The difference from the method shown in FIG. 6 above is that in S901 , the terminal device 230 obtains, according to the uniform resource locator, the content fingerprint address of the resource including multiple pieces of data.
  • the terminal device 230 traverses the content fingerprint addresses of a plurality of fragmented data, and for the content fingerprint
  • the terminal device 230 acquires fragmented data from multiple content cache servers 212 in parallel, thereby effectively improving the data acquisition efficiency of the terminal device 230 and breaking the bandwidth bottleneck of a single storage server.
  • the terminal device and the server include corresponding hardware structures and/or software modules for performing each function.
  • the units and method steps of each example described in conjunction with the embodiments disclosed in the present application can be implemented in the form of hardware or a combination of hardware and computer software. Whether a function is performed by hardware or computer software-driven hardware depends on the specific application scenarios and design constraints of the technical solution.
  • FIG. 10 is a schematic structural diagram of a possible apparatus for acquiring data provided by an embodiment of the present application.
  • These apparatuses for acquiring data can be used to implement the functions of the terminal device in the above method embodiments, and thus can also achieve the beneficial effects of the above method embodiments.
  • the apparatus for acquiring data may be the terminal device 230 as shown in FIG. 2 , or may be a module (eg, a chip) applied to the terminal device 230 .
  • the apparatus 1000 for acquiring data includes a communication module 1010 , an analysis content fingerprint address module 1020 and a display module 1030 .
  • the apparatus 1000 for acquiring data is used to implement the function of the terminal device 230 in the method embodiment shown in FIG. 6 , FIG. 8 or FIG. 9 .
  • the communication module 1010 is used to execute S601, S603 (or S603a), S607, S608 and S612;
  • the analysis content fingerprint address module 1020 is used to execute S602;
  • the display module 1030 is used to execute S613.
  • the communication module 1010 is used to execute S601, S603 (or S603a), S607, S608 and S612;
  • the analysis content fingerprint address module 1020 is used to execute S602;
  • the display module 1030 is used to execute S613.
  • the apparatus 1000 for acquiring data may further include a content fingerprint generation module 1040 and a decision module 1050 .
  • the generating content fingerprint module 1040 is used to execute S614; the decision module 1050 is used to execute S615 to S617.
  • the communication module 1010 is used to execute S901, S603 (or S603a), S607, S608 and S612;
  • the analysis content fingerprint address module 1020 is used to execute S602;
  • the display module 1030 is used to execute S613;
  • the content fingerprint generation module 1040 is used to execute S614;
  • the decision module 1050 is used to execute S615 to S617.
  • FIG. 11 is a schematic structural diagram of a possible apparatus for distributing data provided by an embodiment of the present application.
  • These apparatuses for distributing data can be used to implement the function of the content distribution server in the above method embodiments, and thus can also achieve the beneficial effects possessed by the above method embodiments.
  • the device for distributing data may be the content distribution server 211 as shown in FIG. 2 , or may be a module (eg, a chip) applied to the content distribution server 211 .
  • the apparatus 1100 for distributing data includes a communication module 1110 , a generation module 1120 and a content cache server address determination module 1130 .
  • the apparatus 1100 for distributing data is configured to implement the function of the content distribution server 211 in the method embodiment shown in FIG. 3 , FIG. 4 , FIG. 6 , FIG. 8 or FIG. 9 .
  • the communication module 1110 is used to execute S310 and S350; the generation module 1120 is used to execute S320 and S330; The address module 1130 is used to execute S340.
  • the communication module 1110 is used to execute S410 and S460; the generation module 1120 is used to execute S430 and S440; The address module 1130 is used to execute S450.
  • the apparatus 1100 for distributing data may further include a dividing module 1140 .
  • the dividing module 1140 is configured to perform S420.
  • the communication module 1110 is used to execute S604 (or S604a) and S606; determine the content cache server
  • the address module 1130 is used to execute S605.
  • the apparatus 1100 for distributing data further includes a storage module 1150, and the storage module 1150 is configured to cache the content fingerprint address, the correspondence between the content fingerprint and the address of the content cache server.
  • FIG. 12 is a schematic structural diagram of a possible apparatus for caching data provided by an embodiment of the present application. These apparatuses for caching data can be used to implement the function of the content caching server in the above method embodiments, so the beneficial effects of the above method embodiments can also be achieved.
  • the device for caching data may be the content caching server 212 shown in FIG. 2 , or may be a module (eg, a chip) applied to the content caching server 212 .
  • the apparatus 1200 for buffering data includes a communication module 1210 and a data determination module 1220 .
  • the apparatus 1200 for caching data is used to implement the function of the content caching server 212 in the method embodiment shown in FIG. 6 , FIG. 8 or FIG. 9 .
  • the communication module 120 is used for executing S609 and S611 ; the determining data module 1220 is used for executing S610 .
  • the apparatus 1200 for caching data further includes a storage module 1230, and the storage module 1230 is configured to cache content fingerprints and data associated with the content fingerprints.
  • the computer 1300 shown in FIG. 13 can be specifically used to implement the functions of the data acquisition apparatus 1000 in the embodiment shown in FIG. 10
  • the computer 1400 shown in FIG. 14 can be specifically used to implement the data distribution in the embodiment shown in FIG. 11
  • the computer 1500 shown in FIG. 15 can specifically be used to implement the functions of the apparatus 1200 for caching data in the embodiment shown in FIG. 12 above.
  • Computer 1300 includes bus 1301, processor 1302, communication interface 1303, memory 1304, and display 1305. Communication among the processor 1302 , the memory 1304 , the communication interface 1303 and the display 1305 is through the bus 1301 .
  • the bus 1301 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus or the like.
  • the bus can be divided into address bus, data bus, control bus and so on. For ease of presentation, only one thick line is used in FIG. 13, but it does not mean that there is only one bus or one type of bus.
  • the communication interface 1303 is used for external communication, such as receiving the content fingerprint address, the address and data of the content cache server, and the like.
  • the display 1305 may be a liquid crystal display (liquid crystal display, LCD) or an organic light-emitting display (Organic Light-Emitting Diode, OLED) or the like.
  • the processor 1302 may be a central processing unit (central processing unit, CPU).
  • Memory 1304 may include volatile memory, such as random access memory (RAM).
  • RAM random access memory
  • the memory 1304 may also include non-volatile memory, such as read-only memory (ROM), flash memory, HDD, or SSD.
  • Executable code is stored in the memory 1304, and the processor 1302 executes the executable code to execute the aforementioned method for acquiring data based on a content distribution network.
  • the memory 1304 stores and executes the analysis content fingerprint address module 1020 in FIG.
  • Computer 1400 includes bus 1401 , processor 1402 , communication interface 1403 and memory 1404 .
  • the processor 1402 , the memory 1404 and the communication interface 1403 communicate through the bus 1401 .
  • the memory 1404 stores and executes the generation module 1120 in FIG. 11 and determines the address of the content cache server.
  • the memory 1404 stores the content fingerprint address, the correspondence between the content fingerprint and the address of the content cache server.
  • the communication interface 1403 implements the function of the communication module 1110
  • the memory 1404 implements the function of the storage module 1150
  • the processor 1402 is used to execute the instructions in the memory 1404 and execute the method for obtaining data based on the content distribution network applied to the apparatus 1100 for distributing data.
  • Computer 1500 includes bus 1501 , processor 1502 , communication interface 1503 and memory 1504 .
  • the processor 1502 , the memory 1504 and the communication interface 1503 communicate through the bus 1501 .
  • the memory 1504 stores the software or software required to execute the function of the determination data module 1220 in FIG. 12 .
  • the program code, the communication interface 1503 realizes the function of the communication module 1201
  • the memory 1504 is used to store the content fingerprint and the data associated with the content fingerprint
  • the processor is used to execute the instructions in the memory 1504, and execute the content-based distribution applied to the device 1200 for caching data The method by which the network sends data.
  • Embodiments of the present application also provide a computer-readable storage medium, including instructions, which, when executed on a computer, cause the computer to execute the above-mentioned method for acquiring data based on a content distribution network applied to the apparatus 1000 for acquiring data.
  • Embodiments of the present application also provide a computer-readable storage medium, including instructions, which, when run on a computer, cause the computer to execute the above-mentioned method for obtaining data based on a content distribution network applied to the apparatus 1100 for distributing data.
  • Embodiments of the present application also provide a computer-readable storage medium, including instructions, which, when executed on a computer, cause the computer to execute the above-mentioned method for sending data based on a content distribution network applied to the apparatus 1200 for caching data.
  • Embodiments of the present application further provide a computer program product, and when the computer program product is executed by a computer, the computer executes any one of the foregoing methods.
  • the computer program product may be a software installation package, and when any one of the aforementioned methods needs to be used, the computer program product may be downloaded and executed on a computer.
  • the device embodiments described above are only schematic, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be A physical unit, which can be located in one place or distributed over multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution in this embodiment.
  • the connection relationship between the modules indicates that there is a communication connection between them, which may be specifically implemented as one or more communication buses or signal lines.
  • the computer program product includes one or more computer instructions.
  • the computer may be a general purpose computer, special purpose computer, computer network, or other programmable device.
  • the computer instructions may be stored in or transmitted from one computer-readable storage medium to another computer-readable storage medium, for example, the computer instructions may be retrieved from a website, computer, training device, or data Transmission from the center to another website site, computer, training facility or data center via wired (eg coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (eg infrared, wireless, microwave, etc.) means.
  • wired eg coaxial cable, fiber optic, digital subscriber line (DSL)
  • wireless eg infrared, wireless, microwave, etc.
  • the computer-readable storage medium may be any available medium that can be stored by a computer, or a data storage device such as a training device, a data center, or the like that includes an integration of one or more available media.
  • the usable media may be magnetic media (eg, floppy disks, hard disks, magnetic tapes), optical media (eg, DVD), or semiconductor media (eg, Solid State Disk (SSD)), and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

La présente invention se rapporte au domaine des réseaux de distribution de contenu. L'invention concerne un procédé et un appareil pour obtenir des données sur la base d'un réseau de distribution de contenu, permettant de résoudre le problème de l'obtention rapide de données consultées. Le procédé comprend les étapes consistant : une fois que l'adresse d'un serveur de distribution de contenu indiquée par une adresse d'empreinte digitale de contenu et une empreinte digitale de contenu générée en fonction des données à consulter ont été obtenues par un dispositif terminal, à obtenir l'adresse d'un serveur de mise en cache de contenu à partir du serveur de distribution de contenu indiqué par l'adresse du serveur de distribution de contenu, puis à obtenir des données associées à l'empreinte digitale de contenu à partir du serveur de mise en cache de contenu indiqué par l'adresse du serveur de mise en cache de contenu, et à afficher un contenu exprimé par les données.
PCT/CN2021/119446 2020-09-19 2021-09-18 Procédé et appareil permettant l'obtention de données sur la base d'un réseau de distribution de contenu WO2022057935A1 (fr)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202010990865.2A CN114301903A (zh) 2020-09-19 2020-09-19 一种基于内容分发网络获取数据的方法及装置
CN202010990865.2 2020-09-19

Publications (1)

Publication Number Publication Date
WO2022057935A1 true WO2022057935A1 (fr) 2022-03-24

Family

ID=80775939

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/119446 WO2022057935A1 (fr) 2020-09-19 2021-09-18 Procédé et appareil permettant l'obtention de données sur la base d'un réseau de distribution de contenu

Country Status (2)

Country Link
CN (1) CN114301903A (fr)
WO (1) WO2022057935A1 (fr)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106411823A (zh) * 2015-07-31 2017-02-15 华为技术有限公司 一种基于cdn的访问控制方法及相关设备
CN106717012A (zh) * 2014-05-06 2017-05-24 TiVo解决方案有限公司 基于云的媒体内容管理
US20190391972A1 (en) * 2018-06-22 2019-12-26 Attestiv Inc. Real time visual validation of digital content using a distributed ledger

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106717012A (zh) * 2014-05-06 2017-05-24 TiVo解决方案有限公司 基于云的媒体内容管理
CN106411823A (zh) * 2015-07-31 2017-02-15 华为技术有限公司 一种基于cdn的访问控制方法及相关设备
US20190391972A1 (en) * 2018-06-22 2019-12-26 Attestiv Inc. Real time visual validation of digital content using a distributed ledger

Also Published As

Publication number Publication date
CN114301903A (zh) 2022-04-08

Similar Documents

Publication Publication Date Title
US11140177B2 (en) Distributed data authentication and validation using blockchain
US9148332B2 (en) Content delivery network
US10862999B2 (en) Custom digital components
US11704421B2 (en) Domain name obfuscation and metadata storage via encryption
US8909808B2 (en) Redundancy elimination for web caching
AU2020315416B2 (en) Extension for targeted invalidation of cached assets
EP3724805B1 (fr) Confidentialité améliorée en ligne
US11163499B2 (en) Method, apparatus and system for controlling mounting of file system
JP2016018561A (ja) コンテンツ指向型ネットワークにおける並列のセキュアなコンテンツのブートストラッピングのためのシステムおよび方法
US9935977B1 (en) Content delivery employing multiple security levels
CN115004665B (zh) 文件分享方法、装置及系统
WO2022057935A1 (fr) Procédé et appareil permettant l'obtention de données sur la base d'un réseau de distribution de contenu
WO2017096886A1 (fr) Procédé, appareil, et système de présentation de contenu
US20170006085A1 (en) Information processing apparatus, information processing method, and non-transitory computer readable medium
US20160344838A1 (en) Caching of tracking elements in network content
CN107667518B (zh) 电子设备的自动发现和上线
CA3145582C (fr) Extension pour invalidation ciblee d'actifs mis en cache
US11392662B1 (en) Attribute inheritance of related objects for a digital object architecture
WO2019156026A1 (fr) Dispositif de sélection de serveur, procédé de sélection de serveur et programme
CN116707921A (zh) 一种基于动态密钥来获取数字资源的方法及系统
KR20150045891A (ko) 스트리밍 콘텐츠를 제공하는 방법 및 장치
CN116366272A (zh) 资源处理方法、装置、服务器及存储介质
CN114143577A (zh) 一种视频获取方法及系统

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21868757

Country of ref document: EP

Kind code of ref document: A1