WO2015169074A1 - Method and related device for distributing contents in content-centric network - Google Patents
Method and related device for distributing contents in content-centric network Download PDFInfo
- Publication number
- WO2015169074A1 WO2015169074A1 PCT/CN2014/090669 CN2014090669W WO2015169074A1 WO 2015169074 A1 WO2015169074 A1 WO 2015169074A1 CN 2014090669 W CN2014090669 W CN 2014090669W WO 2015169074 A1 WO2015169074 A1 WO 2015169074A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- content source
- encoded data
- data packet
- end device
- content
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 65
- 239000000872 buffer Substances 0.000 claims description 51
- 239000012634 fragment Substances 0.000 claims description 16
- 230000008030 elimination Effects 0.000 claims description 11
- 238000003379 elimination reaction Methods 0.000 claims description 11
- 238000013467 fragmentation Methods 0.000 claims description 11
- 238000006062 fragmentation reaction Methods 0.000 claims description 11
- 239000002699 waste material Substances 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 9
- 238000012545 processing Methods 0.000 description 7
- 230000003139 buffering effect Effects 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 2
- 208000033748 Device issues Diseases 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Definitions
- the present invention relates to the field of communications, and in particular, to a method and related device for content distribution in a content center network.
- the current Internet widely uses the TCP/IP protocol to communicate through a "host-host" approach.
- the initial goal of the Internet is to realize the sharing of hardware resources.
- a Content-Centric Network (CCN) or a Named Data Network (NDN) is a new architecture that replaces the current Internet.
- CCN or NDN here is collectively referred to as a content center network.
- the basic idea of a content center network is to regard information (or content, data) itself as a "peer-to-peer entity" in the network, and to transform the current host-based network architecture into content-based (content-based ) The architecture.
- the content center network is a communication mode centered on the receiving end, and the receiving end requests the content by sending a request message, and the request message can be forwarded by each intermediate node, and the content of the request message request in the network is The node can return the data packet.
- a network coding method is used in the content center network, and the code is used to define a feature vector of the request to describe a missing part of the requested content, and the content provider determines whether the available content satisfies the request according to the code, and if so, Returns a block of data that is part of the missing content.
- Embodiments of the present invention provide a method for distributing content in a content center network, and related devices, which are used to provide The efficiency of obtaining content in a high content center network avoids waste of link resources.
- a first aspect of the embodiments of the present invention provides a method for content distribution in a content center network, where the content center network includes a content source requesting device and a content source providing device, and the method includes:
- the content source requesting end device sends the interest message to the content source providing end device, where the interest message carries the information of the data block requested by the content source requesting end device;
- the content source requesting end device receives the encoded data packet provided by the content source providing end device, and the encoded data packet is a data block that is matched by the content source providing end device to the interest message. Segment generation data block fragmentation, and fragmenting the data block by using a fountain coding algorithm;
- the content source requesting end device decodes the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device.
- the content center network further includes a forwarding node
- the content source requesting device sends the interest message to the content source provider device, and specifically includes:
- the content source requesting end device sends the interest message to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device;
- the receiving, by the content source requesting end device, the encoded data packet provided by the content source providing end device includes:
- the content source requesting end device receives the encoded data packet forwarded by the forwarding node, and the encoded data packet is sent by the content source providing end device to the forwarding node.
- the content source requesting end device decodes the encoded data packet set, After the step of obtaining the data block, the method further includes:
- the content source requesting end device stops receiving the encoded data packet, and issues a stop sending packet advertisement, where the stop sending the packet advertisement is used to stop receiving, by the device that stops sending the packet advertisement, the encoded data corresponding to the data block. Packet and clear the forwarding path information of the encoded data packet.
- the content source requesting end device decoding the encoded data packet set includes:
- the content source requesting device decodes the encoded data packet set using a Gaussian elimination method.
- the data block is one of a plurality of data blocks constituting one content
- the information of the data block is a number of the data block in the content
- the interest message further includes a content name of the content.
- a second aspect of the embodiments of the present invention provides a method for content distribution in a content center network, including:
- the forwarding node receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device;
- the forwarding node forwards the interest message to the content source providing end device, so that the content source providing end device performs a fountain encoding on the data block matching the interest message, and returns the encoded data packet to the forwarding. node;
- the forwarding node before the step of forwarding the interest message to the content source providing end device, the forwarding node further includes:
- a third aspect of the embodiments of the present invention provides a method for content distribution in a content center network, including:
- the content source providing end device receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device;
- the content source providing end device to use the data block that matches the interest message according to a preset rule Generating fragmentation of the data block by segmentation, encoding the data block fragment according to a fountain coding algorithm, to obtain an encoded data packet;
- the content source providing end device sends the encoded data packet to the content source requesting end device, so that the content source requesting end device performs decoding to obtain the data block after receiving the encoded data packet.
- the content source providing end device receiving the interest message sent by the content source requesting end device includes:
- the content source providing end device receives the interest message sent by the forwarding node, and the interest message is sent by the content source requesting end device to the forwarding node;
- the content source providing end device sending the encoded data packet to the content source requesting end device includes:
- the device provided by the content source sends the encoded data packet to the forwarding node, so that the forwarding node forwards the encoded data packet to the content source requesting device.
- the encoded data packet includes the number of the data block.
- the data block is one of a plurality of data blocks constituting one content;
- the encoded data packet further includes a content name of the content, a fountain coded identifier, and a random number.
- a fourth aspect of the embodiments of the present invention provides a content source requesting device, which is characterized in that:
- a first sending module configured to send an interest message to the content source providing end device, where the interest message carries information of the data block requested by the content source requesting end device;
- a first receiving module configured to receive an encoded data packet provided by the content source providing end device, where the encoded data packet is a data block that is matched by the content source providing end device to the interest packet Segment generation data block fragmentation, and fragmenting the data block by using a fountain coding algorithm;
- a decoding module configured to decode the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the first receiving module.
- the first sending module is specifically configured to send the interest message to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device;
- the first receiving module is specifically configured to receive the encoded data packet forwarded by the forwarding node, where the encoded data packet is sent by the content source providing end device to the forwarding node.
- the content source requesting end device further includes:
- a stopping module configured to stop receiving the encoded data packet, and issue a stop sending packet advertisement, where the stop sending the packet advertisement is used to stop the device that receives the stop sending the packet notification from stopping sending the encoded data packet corresponding to the data block and Clearing the forwarding path information of the encoded data packet.
- the decoding module is specifically configured to decode the encoded data packet set by using a Gaussian elimination method to obtain the data block.
- a fifth aspect of the embodiments of the present invention provides a forwarding node, including:
- a second receiving module configured to receive an interest message sent by the content source requesting end device, where the interest message carries information of the data block requested by the content source requesting end device;
- a first forwarding module configured to forward the interest message to the content source providing end device, so that the content source providing end device performs a fountain encoding on the data block matching the interest message, and returns the encoded data packet to Cache module
- a cache module configured to cache the encoded data packet returned by the content source provider device into the encoding buffer area
- a second forwarding module configured to forward the encoded data packet returned by the content source provider device to the content source requesting device, so that the content source requesting device decodes the encoded data packet set to obtain the data And the encoded data packet set includes the encoded data packet received by the content source requesting end device.
- the forwarding node further includes:
- a searching module configured to search whether an encoded data packet matching the interest message exists in the encoding buffer area
- a second sending module configured to send the matched encoded data packet to the content source requesting end device when there is an encoded data packet that matches the interest message in the encoding buffer area.
- a sixth aspect of the embodiments of the present invention provides a content source providing end device, including:
- a third receiving module configured to receive an interest message sent by the content source requesting end device, where the interest message carries information of the data block requested by the content source requesting end device;
- An encoding module configured to generate a data block fragment by using a data block that matches the interest message according to a preset rule, and encode the data block according to a fountain coding algorithm to obtain an encoded data packet;
- a third sending module configured to send the encoded data packet obtained by the encoding module to the content source requesting end device, so that the content source requesting end device, after receiving the encoded data packet, performs decoding to obtain the data block .
- the third receiving module is configured to receive the interest message sent by the forwarding node, where the interest message is sent. And sent by the content source requesting end device to the forwarding node;
- the third sending module is specifically configured to send the encoded data packet to the forwarding node, so that the forwarding node forwards the encoded data packet to the content source requesting end device, so that the content is After receiving the encoded data packet, the source requesting device performs decoding to obtain the data block.
- the embodiment of the present invention has the following advantages: in the embodiment of the present invention, after receiving the interest message from the content source requesting end device to the content source providing end device, the content source requesting end device receives the encoded data packet provided by the content source providing end device.
- the encoded data packet is generated by the content source providing end device to match the interest packet to generate a data block fragment, and the data block is slice-coded using a fountain encoding algorithm, so the content source
- the requesting device can simultaneously receive the encoded data packet sent by the plurality of content source providing end devices, and the content source requesting end device decodes the encoded data packet set including the received encoded data packet, and when the encoding condition is met, the content The source requesting device can decode and successfully obtain the data block.
- the number of encoded data packets obtained according to the fountain coding algorithm is much larger than the number of data blocks, and the probability that the encoded data packets are identical to each other is very small.
- the time when the content source requesting device obtains the encoded data packets from multiple devices with the same probability increases the probability that the content source requesting device obtains valid data, reduces the time for obtaining sufficient valid data, and improves the efficiency of content acquisition in the content center network. A large amount of duplicate data is no longer transmitted in the road, which avoids waste of link resources.
- FIG. 1 is a schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention
- FIG. 2 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention
- FIG. 3 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention.
- FIG. 4 is a schematic diagram of a decoding process in an embodiment of the present invention.
- FIG. 5 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention.
- FIG. 6 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention.
- FIG. 7 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention.
- FIG. 8 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention.
- FIG. 9 is a schematic structural diagram of a content source requesting end device according to an embodiment of the present invention.
- FIG. 10 is a schematic diagram of another structure of a content source requesting end device according to an embodiment of the present invention.
- FIG. 11 is a schematic structural diagram of a network device according to an embodiment of the present invention.
- FIG. 12 is a schematic structural diagram of a forwarding node according to an embodiment of the present invention.
- FIG. 13 is another schematic structural diagram of a forwarding node according to an embodiment of the present invention.
- FIG. 14 is a schematic structural diagram of a content source providing end device according to an embodiment of the present invention.
- FIG. 15 is a schematic structural diagram of a content distribution system according to an embodiment of the present invention.
- an embodiment of a method for content distribution in a content center network includes:
- the content source requesting end device sends the interest message to the content source providing end device.
- the interest message is sent to the content source provider device, and the data is requested in units of data blocks, where the interest message carries the request of the content source requesting device.
- the information of the data block is
- the content source requesting end device receives the encoded data packet provided by the content source providing end device.
- the content source requesting end device After the content source requesting end device sends the interest message to the content source providing end device, the content source requesting end device receives the encoded data packet provided by the content source providing end device, and the encoded data packet is matched by the content source providing end device to the interest message.
- the data block segmentation generates a data block fragmentation, and the data block is slice-coded using a fountain coding algorithm.
- the data block when performing fountain coding, can be divided into k segments, each segment is an original packet, and then any number of encoded packets can be generated from k original packets, and each coding packet can be an encoding.
- the data packet as long as the receiving end receives any subset of k (1 + ⁇ ) coded packets, can successfully recover all the original packets by decoding with high probability (related to ⁇ ), thereby obtaining a complete data block.
- the number of content source providing devices in step 101 may be one or more, and the content source providing device of the encoded data packet is returned in step 102.
- the number of the content source provider devices that actually receive the interest message is determined according to the number of content source provider devices that contain the data block that matches the interest message. There is no limit here.
- the content source requesting end device decodes the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device.
- the content source requesting device After receiving the encoded data packet provided by the content source provider device, the content source requesting device decodes the encoded data packet set to obtain a data block that matches the interest packet, where the encoded data packet set includes the content source requesting end device. The received encoded packet.
- the content source requesting end device can decode the encoded data packet set in various manners, for example, the content source requesting end device can continuously decode the encoded data packet set until the received encoded data packet reaches a certain level. The number, that is, the encoded data packet contained in the encoded data packet reaches a certain number, and the decoding is successful, and the content source requesting device can also set a preset value, when the received encoded data packet reaches the preset. After the value is started, the encoded data packet set is decoded, and the data block is obtained. There may be other methods.
- the content source requesting end device sends the interest message to the content source providing end device
- the content source providing end device provides the encoded data packet
- the encoded data packet is matched by the content source providing end device.
- the data block segmentation of the interest message matches the data block fragmentation, and the data block is slice-coded using the fountain coding algorithm, so the content source requesting device can simultaneously receive the code sent by the multiple content source provider devices.
- the data source the content source requesting device decodes the encoded data packet set including the received encoded data packet, and when the encoding condition is met, the content source requesting end device can decode the data block successfully, because according to the fountain
- the number of encoded data packets obtained by the encoding algorithm is much larger than the number of data blocks, and the probability that the encoded data packets are identical to each other is very small, so that the content source requesting device obtains the encoding from multiple devices within a certain period of time.
- the same probability of packets is much less than the probability of data blocks acquired from multiple devices, making the content source.
- the probability that the requesting device obtains valid data increases, the time for obtaining sufficient valid data is reduced, the content acquisition efficiency in the content center network is improved, and a large amount of duplicate data is not transmitted in the network link, thereby avoiding waste of link resources. .
- the content source requesting end device sends the interest message to the content source providing end device.
- the content source requesting end device may send the interest message to the forwarding node, and then the forwarding node forwards the content message to the content source.
- FIG. 2 another embodiment of a method for content distribution in a content center network in an embodiment of the present invention includes:
- the content source requesting end device sends the interest message to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device;
- the interest message is sent to the forwarding node, so that the forwarding node forwards the interest message to the content source provider device, and requests data in units of data blocks.
- the message carries information about a data block requested by the content source requesting device.
- the content source requesting device can send the interest message to multiple forwarding nodes, or
- the forwarding node can also forward the interest message to multiple content source providing end devices or other forwarding nodes, or forward it to a specific content source through query or path calculation. End device, not limited here.
- the content source requesting end device receives the encoded data packet forwarded by the forwarding node, where the encoded data packet is sent by the content source provider device to the forwarding node.
- the encoded data packet forwarded by the forwarding node is received, and the encoded data packet is sent by the content source provider device to the forwarding node, and the encoded data packet is used by the content source.
- the providing end device generates a data block fragment by using a data block segment matching the interest message, and uses the fountain encoding algorithm to slice and encode the data block.
- the data block when performing fountain coding, can be divided into k segments, each segment is an original packet, and then any number of encoded packets can be generated from k original packets, and each coding packet can be an encoding.
- the data packet as long as the receiving end receives any subset of k (1 + ⁇ ) coded packets, can successfully recover all the original packets by decoding with high probability (related to ⁇ ), thereby obtaining a complete data block.
- the number of content source providing devices in step 201 may be one or more, and the content source providing device of the encoded data packet is returned in step 202.
- the number of the content source provider devices that actually receive the interest message is determined according to the number of content source provider devices that contain the data block that matches the interest message. There is no limit here.
- multiple content source providing end devices divide the data blocks into k segments according to the same rule, each segment is a raw packet, and then any number of encoded packets can be generated by k original packets.
- Each encoded packet can be an encoded packet
- the content source requesting end device decodes the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device.
- the content source requesting device After receiving the encoded data packet provided by the content source provider device, the content source requesting device decodes the encoded data packet set to obtain a data block that matches the interest packet, where the encoded data packet set includes the content source requesting end device. The received encoded packet.
- the content source requesting end device can decode the encoded data packet set in various manners, for example, the content source requesting end device can continuously decode the encoded data packet set until The received encoded data packet reaches a certain amount, that is, the encoded data packet included in the encoded data packet set reaches a certain number, and then the decoding is successful, and the content source requesting device can also set a preset value when receiving. After the encoded data packet reaches the preset value, the encoded data packet set is decoded, and the data block is obtained. There may be other ways, for example, whether the encoded data packet in the encoded data packet set can be determined before decoding. The decoding conditions and the like are satisfied and are not limited herein.
- the content source requesting device device interest message is sent to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device, and then receives the encoded data packet forwarded by the forwarding node, so that the interest can be
- the message spreads to a larger extent, and more encoded packets returned by the device can be obtained, which improves the efficiency of content acquisition.
- the content source requesting device may also issue a stop packet notification to stop the forwarding of the encoded packet corresponding to the data block by other devices.
- the content in the content center network in the embodiment of the present invention is used.
- Another embodiment of the method of distribution includes:
- the content source requesting end device sends the interest message to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device.
- the interest message is sent to the forwarding node, so that the forwarding node forwards the interest message to the content source provider device, and requests data in units of data blocks.
- the message carries information about a data block requested by the content source requesting device.
- the data block is one of a plurality of data blocks constituting a content
- the information of the data block may be a number of the data block in the content
- the interest message may further include the content of the content.
- the name for example, the header of the interest message may carry the naming information defined in the format of .../content_name/chunk_number
- the content_name is the content name of the content requested by the content source requesting device
- the chunk_number is the request data block in the content.
- the number of the interest message can also be carried in other naming manners, which is not limited herein.
- the content source requesting end device can send the interest message to multiple forwarding nodes, or can also send to all forwarding nodes connected thereto, and the forwarding node can forward the interest message to multiple content source providing end devices or Other forwarding nodes may be forwarded to a specific content source provider device by means of a query or path calculation, which is not limited herein.
- the content source requesting end device receives the encoded data packet forwarded by the forwarding node, and the coded number The packet is sent by the content source provider device to the forwarding node;
- the encoded data packet forwarded by the forwarding node is received, and the encoded data packet is sent by the content source provider device to the forwarding node, and the encoded data packet is used by the content source.
- the providing end device generates a data block fragment by using a data block segment matching the interest message, and uses the fountain encoding algorithm to slice and encode the data block.
- the data block when performing fountain coding, can be divided into k segments, each segment is an original packet, and then any number of encoded packets can be generated from k original packets, and each coding packet can be an encoding.
- the data packet as long as the receiving end receives any subset of k (1 + ⁇ ) coded packets, can successfully recover all the original packets by decoding with high probability (related to ⁇ ), thereby obtaining a complete data block.
- the number of content source providing devices in step 301 may be one or multiple, and the content source providing device of the encoded data packet is returned in step 302.
- the number of the content source provider devices that actually receive the interest message is determined according to the number of content source provider devices that contain the data block that matches the interest message. There is no limit here.
- the content source requesting end device decodes the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device.
- the content source requesting device After receiving the encoded data packet provided by the content source provider device, the content source requesting device decodes the encoded data packet set to obtain a data block that matches the interest packet, where the encoded data packet set includes the content source requesting end device. The received encoded packet.
- the content source requesting end device can decode the encoded data packet set in various manners, for example, the content source requesting end device can continuously decode the encoded data packet set until the received encoded data packet reaches a certain level. The number, that is, the encoded data packet contained in the encoded data packet reaches a certain number, and the decoding is successful, and the content source requesting device can also set a preset value, when the received encoded data packet reaches the preset. After the value is started, the encoded data packet set is decoded, and the data block is obtained. There may be other methods. For example, before decoding, it may be determined whether the encoded data packet in the encoded data packet set satisfies the decoding condition, etc., which is not limited herein. .
- the content source requesting end device can decode the modified encoded data packet set by using the Gaussian elimination method, and the specific decoding process can be as shown in FIG. 4:
- step 404 is triggered
- step 405 is triggered
- step 401 is triggered, and then an encoded symbol is received
- the content source requesting end device stops receiving the encoded data packet, and issues a stop sending the packet advertisement.
- the content source requesting end device After receiving the data block matching the interest message, the content source requesting end device stops accepting the encoded data packet, and issues a stop sending packet advertisement, where the stop sending the packet advertisement is used to stop the device receiving the stop sending the packet from transmitting the data block.
- a stop sending packet advertisement is used to stop the device receiving the stop sending the packet from transmitting the data block.
- the content source requesting end device stops receiving the encoded data packet, and sends a stop sending the packet advertisement, so that the other device stops sending the encoded data packet corresponding to the data block and clears the encoded data packet forwarding path.
- the information saves the network resources, improves the efficiency of subsequent processing of each device, and uses the Gaussian elimination method to decode, reduces the influence of the encoded data packet of degree 1 on the decoding success rate, and improves the decoding success rate.
- another embodiment of a method for content distribution in a content center network in an embodiment of the present invention includes:
- the forwarding node receives the interest message sent by the content source requesting end device.
- the forwarding node After the content source requesting end device sends the interest message to the forwarding node, the forwarding node receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device.
- the forwarding node forwards the interest message to the content source provider device, so that the content source provider
- the device performs a fountain encoding on the data block matching the interest message, and returns the encoded data packet to the forwarding node;
- the forwarding node After receiving the interest message sent by the content source requesting device, the forwarding node forwards the interest message to the content source providing end device, so that the content source providing end device performs fountain coding on the data block matching the interest message and returns The encoded data packet is sent to the forwarding node.
- the forwarding node can also forward the interest message to the content source provider device through another forwarding node, and is not limited to directly forwarding the interest message to the content source provider device.
- the forwarding node caches the encoded data packet returned by the content source provider device into the encoding buffer area.
- the forwarding node forwards the interest message to the content source providing end device, and buffers the encoded data packet returned by the content source providing end device to the encoding buffer area, and the encoding buffer area is dedicated to buffering the encoded data packet.
- the forwarding node may directly discard the received identical encoded data packet.
- the forwarding node forwards the returned encoded data packet to the content source requesting end device, so that the content source requesting end device decodes the encoded data packet set to obtain the data block.
- the forwarding node After the forwarding node caches the encoded data packet returned by the content source provider device to the encoding buffer, the returned encoded data packet is forwarded to the content source requesting device, so that the content source requesting device decodes the encoded data packet set. Get the data block.
- the forwarding node may directly forward the encoded data packet to the content source requesting device according to the reverse path of the interest message, and may also forward the encoded data packet according to the calculated path after searching for the calculation path, which is not limited herein.
- the encoded data packet carries the identifier of the fountain code, and the forwarding node can determine, by the identifier, that the data packet is the encoded data packet.
- the forwarding node opens a coding buffer area dedicated to buffering the encoded data packet, so that the utilization of the encoded data packet can be improved by the cache, thereby improving the efficiency of content acquisition.
- the forwarding node after receiving the interest message, forwards the interest message.
- the forwarding node may first search whether the coded buffer has the encoded data packet matching the interest message, and then perform the For subsequent processing, please refer to FIG. 6, which is in the content center network in the embodiment of the present invention.
- Another embodiment of the method of capacity distribution includes:
- the forwarding node receives the interest message sent by the content source requesting end device.
- the forwarding node After the content source requesting end device sends the interest message to the forwarding node, the forwarding node receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device.
- the information of the data block may be a number of the data block in the content
- the interest message may further include a content name of the content
- the packet header of the interest message may be carried in a format defined by .../content_name/chunk_number
- the naming information, the content_name is the content name of the content requested by the content source requesting device, and the chunk_number is the number of the request data block in the content, and the interest message may also carry the information in other naming manners, where Not limited.
- the forwarding node finds whether there is a coded data packet matching the interest message in the code buffer area, if yes, triggering step 603, if not, triggering step 604;
- the forwarding node After receiving the interest message sent by the content source requesting end device, the forwarding node searches whether there is an encoded data packet matching the interest message in the encoding buffer area, and the encoding buffer area is dedicated to buffering the encoded data packet;
- step 604 is triggered.
- the forwarding node may also have a common buffer area for buffering data blocks. If there is a data block requested by the content source requesting device in the normal buffer area of the forwarding node, the forwarding node may be used as the forwarding node.
- a content source provider may be used as the forwarding node.
- the forwarding node sends the encoded data packet that matches the interest packet to the content source requesting end device.
- the forwarding node searches for a coded packet in the code buffer that matches the interest message, the forwarding node sends the encoded data packet that matches the interest message to the content source requesting device.
- the forwarding node forwards the interest message to the content source providing end device, so that the content source providing end device performs a fountain encoding on the data block that matches the interest message, and returns the encoded data packet to the forwarding node.
- the forwarding node sends the encoded data packet in the encoding buffer that matches the interest message to the content. After the source requesting device finds that the encoded data packet matching the interest packet is not found in the encoding buffer, the packet is forwarded to the content source providing end device, so that the content source providing device pair The data block matching the interest message is fountain-encoded and returns the encoded data packet to the forwarding node.
- the forwarding node can also forward the interest message to the content source provider device through another forwarding node, and is not limited to directly forwarding the interest message to the content source provider device.
- the forwarding node caches the encoded data packet returned by the content source provider device into the encoding buffer area.
- the forwarding node forwards the interest message to the content source providing end device, and buffers the encoded data packet returned by the content source providing end device to the encoding buffer area, and the encoding buffer area is dedicated to buffering the encoded data packet.
- the forwarding node may directly discard the received identical encoded data packet.
- the forwarding node forwards the returned encoded data packet to the content source requesting end device, so that the content source requesting end device decodes the encoded data packet set to obtain the data block.
- the forwarding node After the forwarding node caches the encoded data packet returned by the content source provider device to the encoding buffer, the returned encoded data packet is forwarded to the content source requesting device, so that the content source requesting device decodes the encoded data packet set. Get the data block.
- the forwarding node may directly forward the encoded data packet to the content source requesting device according to the reverse path of the interest message, and may also forward the encoded data packet according to the calculated path after searching for the calculation path, which is not limited herein.
- the encoded data packet carries the identifier of the fountain code, and the forwarding node can determine, by the identifier, that the data packet is the encoded data packet.
- the forwarding node After the forwarding node receives the notification of stopping the sending of the packet sent by the content source requesting device, the forwarding node terminates the forwarding of the interest packet.
- the forwarding node may terminate the forwarding of the interest packet, clear the encoded packet forwarding path information, and also clear the encoded data that matches the interest packet. package.
- the forwarding node may search whether there is a coded data packet matching the interest message in the code buffer area, and if so, the coded number may be first
- the packet is sent to the content source requesting device, so that the requesting device can obtain the encoded data packet that is sufficient for decoding faster, and the efficiency of acquiring the content is improved.
- the content source provides the operation of the end device:
- another embodiment of a method for content distribution in a content center network in an embodiment of the present invention includes:
- the content source providing end device receives an interest message sent by the content source requesting end device.
- the content source providing end device receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device.
- the content source providing end device generates a data block fragment by using a data block that matches the interest message according to a preset rule, and encodes the data block according to a fountain coding algorithm to obtain an encoded data packet.
- the content source providing end device After receiving the interest message sent by the content source requesting end device, the content source providing end device generates a data block fragment according to a preset rule, and the data block is segmented according to a fountain coding algorithm. Fragmentation is performed to obtain an encoded data packet;
- the preset rule is a rule of fountain coding.
- the segmentation rules of different fountain codes may be different. For example, it may be LT coded, the data block is divided into K segments, and K is a positive integer, ensuring that all packets except the last segment have the same The size, the length of the last segment is not enough to fill in the zero, and the other coding form in the fountain code can also be used, which is not limited herein.
- the content source providing end device sends the encoded data packet to the content source requesting end device, so that the content source requesting end device performs decoding to obtain the data block after receiving the encoded data packet.
- the encoded data packet is sent to the content source requesting device, so that the content source requesting device, after receiving the encoded data packet, decodes and matches the interest packet. Data block.
- the content source providing end device can continuously send the newly generated encoded data packets to the content source requesting device until it is sent to a certain level. The number of the packets is not received until the packet is sent out, and the coded data packet is stopped.
- the specific trigger conditions for the stop can be set according to the actual situation.
- the content source providing end device after receiving the interest message, pairs the interest message with the interest message.
- the matched data blocks are coded by the fountain, and the encoded data packets are sent out, so that when the plurality of providing end devices simultaneously transmit the encoded data packets, the providers do not need to cooperate, but the content transmission in the form of multi-node cooperation is realized.
- the number of packets that each content source provider device needs to send is reduced.
- the content source providing end device receives the interest message sent by the content source requesting end device.
- the content source device can receive the interest message forwarded by the forwarding node. Referring to FIG. 8, the implementation of the present invention is implemented.
- Another embodiment of a method for content distribution in a content center network in an example includes:
- the content source providing end device receives the interest message sent by the forwarding node, where the interest message is sent by the content source requesting end device to the forwarding node.
- the content source provider device receives the interest message sent by the forwarding node, and the interest message is sent by the content source requesting device to the forwarding node, where the interest message carries the content.
- the information of the data block requested by the source requesting device is not limited to the content source requesting device.
- the content source providing end device generates a data block fragment by using a data block that matches the interest message according to a preset rule, and encodes the data block according to a fountain coding algorithm to obtain an encoded data packet.
- the content source providing end device After receiving the interest message sent by the content source requesting end device, the content source providing end device generates a data block fragment according to a preset rule, and the data block is segmented according to a fountain coding algorithm. Fragmentation is performed to obtain an encoded data packet;
- the preset rule is a rule of fountain coding.
- the segmentation rules of different fountain codes may be different. For example, it may be LT coded, the data block is divided into K segments, and K is a positive integer, ensuring that all packets except the last segment have the same The size, the length of the last segment is not enough to fill in the zero, and the other coding form in the fountain code can also be used, which is not limited herein.
- the device provided by the content source sends the encoded data packet to the forwarding node, so that the forwarding node forwards the encoded data packet to the content source requesting device, so that the content source requesting device receives the encoded data packet.
- the decoding is performed to obtain the data block.
- the encoded data packet is sent to the forwarding node, so that the content source requesting device receives the encoded data packet forwarded by the forwarding node, and then decodes and obtains the interest packet. Matching data blocks.
- the content source providing end device can continuously send the newly generated encoded data packets to the content source requesting device until it is sent to a certain level. The number of the packets is not received until the packet is sent out, and the coded data packet is stopped.
- the specific trigger conditions for the stop can be set according to the actual situation.
- the encoded data packet may include a number of a data block that matches the interest message, and the data block is one of a plurality of data blocks constituting a content, and the encoded data packet may further include the content.
- the content name, the identifier of the fountain code, and a random number, such as the header of the encoded data packet may carry the naming information defined in the format of .../content name/chunk number/LT/nonce, where content_name is the content source requesting device request
- the content name of the content, chunk_number is the number of the data block matching the interest message
- LT is the identifier of the LT code used in the fountain code
- nonce is a random number with a large range of values, and multiple data blocks can be composed
- each encoded data packet may be named by another naming manner to distinguish each different encoded data packet, which is not limited herein.
- the content source providing end device may receive the interest message forwarded by the forwarding node, and then forward the encoded data packet to the forwarding node, so that the forwarding node sends the information to the content source requesting end device, so that the forwarding node may interest
- the message is forwarded to the plurality of content source providing end devices, so that the plurality of content source providing end devices simultaneously provide the encoded data packets, and the encoded data packets are sent to the forwarding node, so that the forwarding nodes can forward the encoded data packets to each other.
- the content source requesting device can simultaneously receive the encoded data packets provided by the plurality of devices, thereby improving the efficiency of content acquisition.
- the content source requesting device sends the interest message to the forwarding node, where the packet header of the interest message carries the naming information of .../ABC/5, indicating that the data block with the content name 5 in the content of the request content is ABC;
- the forwarding node receives the interest message, and searches for the code buffer to obtain two encoded data packets that match the interest message.
- the forwarding node returns the two encoded data packets to the content source requesting device, and forwards the interest.
- the message is sent to another forwarding node and the content source providing device;
- the content source providing end device receives the interest message forwarded by the forwarding node, and the content source providing end device storing the data block matching the interest message segments and encodes the data block into the encoded data packet according to the LT encoding rule.
- the header of each encoded packet carries the name of .../ABC/5/LT/nonce Information, nonce is a random number with a large range of values, and is continuously sent to the forwarding node;
- the forwarding node receives the data packet with the LT identifier, that is, the data packet that is identified as encoded, and caches the encoded data packet into the encoding buffer according to a local caching mechanism, such as an LRU mechanism;
- the forwarding node forwards the received encoded data packet to the content source requesting end device according to the reverse path of the interest packet, and the forwarding node does not perform any packet loss operation during the process, and does not clear the encoded data packet during the process.
- Forwarding path information such as the contents of corresponding entries in the PIT table;
- the content source requesting end device continuously receives the encoded data packet returned by the forwarding node
- the content source requesting end device uses the Gaussian elimination method to decode the received encoded data packet, and obtains a data block 5 matching the interest message;
- the content source requesting device issues a stop sending notification
- the forwarding node After receiving the notification of stopping the sending of the packet, the forwarding node stops the forwarding of the interest message, and clears all the encoded data packets and the forwarding path information that match the interest message;
- the content source providing end device After receiving the stop sending advertisement, the content source providing end device stops encoding the data block and terminates the sending of the encoded data packet.
- the requesting device First, the requesting device:
- an embodiment of a content source requesting device in an embodiment of the present invention includes:
- the first sending module 901 is configured to send the interest message to the content source providing end device, where the interest message carries the information of the data block requested by the content source requesting end device;
- the first receiving module 902 is configured to receive the encoded data packet provided by the content source providing end device, where the encoded data packet is a data block that is matched by the content source providing end device to the interest message. Generating fragmentation of the data block and segmenting the data block by using a fountain coding algorithm;
- the decoding module 903 is configured to decode the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the first receiving module 902.
- the first receiving module 902 receives the encoded data packet provided by the content source providing end device, and the encoded data packet is provided by the content source.
- the end device generates a data block by segmenting the data block that matches the interest message.
- the block is encoded by using the fountain coding algorithm, so the first receiving module 902 can simultaneously receive the encoded data packets sent by the multiple content source providing end devices, and the decoding module 903 includes the received encoded code.
- the encoded data packet set of the data packet is decoded.
- the decoding module 903 can successfully decode the data block, because the number of encoded data packets obtained according to the fountain coding algorithm is much larger than the number of data blocks, and the coding
- the probability that the data packets are identical to each other is very small, so the probability that the content source requesting device obtains the encoded data packets from multiple devices within a certain period of time is much smaller than the data blocks acquired from multiple devices.
- the probability that the content source requesting device obtains valid data increases, the time for obtaining sufficient effective data is reduced, the content acquisition efficiency in the content center network is improved, and a large amount of duplicate data is not transmitted in the network link, thereby avoiding Waste of link resources.
- the content source requesting device may also send a stop packet notification to stop the forwarding of the encoded packet corresponding to the data block by another device.
- the content source requesting device is additionally configured.
- One embodiment includes:
- the first sending module 1001 is configured to send the interest message to the content source providing end device, where the interest message carries the information of the data block requested by the content source requesting end device;
- the first receiving module 1002 is configured to receive the encoded data packet provided by the content source providing end device, where the encoded data packet is a data block that is matched by the content source providing end device to the interest message. Generating fragmentation of the data block and segmenting the data block by using a fountain coding algorithm;
- the decoding module 1003 is configured to decode the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the first receiving module 1002.
- the first sending module 1001 may be configured to send the interest message to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device;
- the first receiving module 1002 is specifically configured to receive the encoded data packet forwarded by the forwarding node, where the encoded data packet is sent by the content source providing end device to the forwarding node;
- the content source requesting device further includes:
- the stopping module 1004 is configured to stop receiving the encoded data packet, and issue a stop sending packet advertisement, where the stop sending the packet advertisement is used to stop receiving, by the device that stops sending the packet notification, the encoded data packet corresponding to the data block. And clearing the forwarding path information of the encoded data packet.
- the decoding module 1003 is specifically configured to decode the encoded data packet set by using a Gaussian elimination method to obtain the data block.
- the stopping module 1004 stops receiving the encoded data packet, and sends a stop sending the packet advertisement to stop other devices from transmitting the encoded data packet corresponding to the data block and clearing the encoded data packet forwarding.
- the path information saves the network resources, improves the efficiency of subsequent processing by each device, and the decoding module 1003 decodes by using the Gaussian elimination method, which reduces the influence of the encoded data packet of degree 1 on the decoding success rate, and improves the decoding. Success rate.
- FIG. 11 is a schematic structural diagram of a network device, which may be a schematic structural diagram of a content source requesting end device, a structural schematic diagram of a forwarding node, and a structural schematic diagram of an end device for a content source.
- the content source requesting device in the embodiment of the present invention is described above from the perspective of the unitized functional entity.
- the content source requesting device in the embodiment of the present invention is described from the perspective of hardware processing. Referring to FIG. 11, the present invention is described.
- Another embodiment of the content source requesting device in the embodiment includes:
- the input device 1101, the output device 1102, the processor 1103, and the memory 1104 (wherein the number of processors 1103 in the content source requesting device may be one or more, and one processor 1103 is taken as an example in FIG. 11).
- the input device 901, the output device 1102, the processor 1103, and the memory 1104 may be connected by a bus or other means, wherein the connection through the bus is taken as an example in FIG.
- the processor 1103 is configured to perform the following steps by calling an operation instruction stored in the memory 1104:
- the encoded data packet is a data block segmentation data block fragment that is matched by the content source providing end device with the interest message, And using the fountain coding algorithm to slice and encode the data block;
- the processor 1103 is specifically configured to perform the following steps:
- the processor 1103 is further configured to perform the following steps:
- Stop receiving the encoded data packet, and issue a stop sending packet advertisement, where the stop sending the packet advertisement is used to stop the device that receives the stop sending the packet notification from stopping sending the encoded data packet corresponding to the data block and clearing the encoded Forwarding path information of the data packet;
- the processor 1103 is specifically configured to perform the following steps:
- the encoded data packet set is decoded using a Gaussian elimination method to obtain the data block.
- an embodiment of a forwarding node in an embodiment of the present invention includes:
- the second receiving module 1201 is configured to receive an interest message sent by the content source requesting end device, where the interest message carries information of the data block requested by the content source requesting end device;
- the first forwarding module 1202 is configured to forward the interest message to the content source providing end device, so that the content source providing end device performs a fountain encoding on the data block matching the interest message, and returns the encoded data packet. Giving a cache module 1203;
- the cache module 1203 is configured to buffer the encoded data packet returned by the content source provider device into the encoding buffer area;
- a second forwarding module 1204 configured to forward the encoded data packet returned by the content source provider device to the content source requesting device, so that the content source requesting device decodes the encoded data packet set to obtain the And a data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device.
- the cache module 1203 opens a coding buffer area dedicated to buffering the encoded data packets, so that the utilization of the encoded data packets can be improved by the cache, thereby improving the efficiency of content acquisition.
- the first forwarding module 1202 forwards the interest message.
- the forwarding node may first find whether the code buffer exists and matches the interest message. The encoded data packet is further processed. Referring to FIG. 13, another embodiment of the forwarding node in the embodiment of the present invention includes:
- the second receiving module 1301 is configured to receive an interest message sent by the content source requesting end device, where the interest message carries information of the data block requested by the content source requesting end device;
- the first forwarding module 1302 is configured to forward the interest message to the content source providing end device, so that the content source providing end device performs a fountain encoding on the data block matching the interest message, and returns the encoded data packet.
- the cache module ;
- a cache module 1303, configured to cache the encoded data packet returned by the content source provider device into an encoding buffer area
- a second forwarding module 1304, configured to forward the encoded data packet returned by the content source provider device to the content source requesting device, so that the content source requesting device decodes the encoded data packet set to obtain the a data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device;
- the forwarding node further includes:
- the searching module 1305 is configured to search whether, in the encoding buffer, there is an encoded data packet that matches the interest message;
- the second sending module 1306 is configured to send the matched encoded data packet to the content source requesting end device when there is an encoded data packet that matches the interest packet in the encoding buffer.
- the searching module 1305 may search whether there is a coded data packet matching the interest message in the code buffer area, and if yes, the second sending module 1306 may first The encoded data packet is sent to the content source requesting end device, so that the requesting end device can get the encoded data packet sufficient for decoding faster, and the efficiency of acquiring the content is improved.
- the forwarding node in the embodiment of the present invention is described above from the perspective of the unitized functional entity.
- the following describes the forwarding node in the embodiment of the present invention from the perspective of hardware processing. Referring to FIG. 11, the forwarding node in the embodiment of the present invention is described.
- Another embodiment includes:
- the input device 1101, the output device 1102, the processor 1103, and the memory 1104 (wherein the number of processors 1103 in the forwarding node may be one or more, and one processor 1103 is taken as an example in FIG. 11).
- the input device 901, the output device 1102, the processor 1103, and the memory 1104 may be connected by a bus or other means, wherein the connection through the bus is taken as an example in FIG.
- the processor 1103 is configured to execute, for example, by calling an operation instruction stored in the memory 1104. Next steps:
- the processor 1103 is further configured to perform the following steps:
- the matched encoded data packet is sent to the content source requesting end device.
- the content source provider device
- an embodiment of the content source providing end in the embodiment of the present invention includes:
- the third receiving module 1401 is configured to receive an interest message sent by the content source requesting end device, where the interest message carries information of the data block requested by the content source requesting end device;
- the encoding module 1402 is configured to generate a data block fragment by using a data block that matches the interest message according to a preset rule, and encode the data block according to a fountain coding algorithm to obtain an encoded data packet;
- the third sending module 1403 is configured to send the encoded data packet obtained by the encoding module 1402 to the content source requesting end device, so that the content source requesting end device performs decoding after receiving the encoded data packet. data block;
- the third receiving module 1401 is specifically configured to receive the interest message sent by the forwarding node, where the interest message is sent by the content source requesting end device to the forwarding node;
- the third sending module 1403 is specifically configured to: send the encoded data packet to the forwarding node, so that the forwarding node forwards the encoded data packet to the content source requesting end device, so that After receiving the encoded data packet, the content source requesting device performs decoding to obtain the data block.
- the encoding module 1402 performs fountain coding on the data block that matches the interest message, and the third sending module 1403 sends the obtained encoded data packet.
- the content source providing end device in the embodiment of the present invention is described above from the perspective of the unitized functional entity.
- the content source providing end device in the embodiment of the present invention is described from the perspective of hardware processing. Referring to FIG. 11, the present invention is described.
- Another embodiment of the content source provider device in the embodiment includes:
- the input device 1101, the output device 1102, the processor 1103, and the memory 1104 (wherein the number of processors 1103 in the forwarding node may be one or more, and one processor 1103 is taken as an example in FIG. 11).
- the input device 901, the output device 1102, the processor 1103, and the memory 1104 may be connected by a bus or other means, wherein the connection through the bus is taken as an example in FIG.
- the processor 1103 is configured to perform the following steps by calling an operation instruction stored in the memory 1104:
- the data block segment matching the interest message is segmented to generate a data block fragment according to a preset rule, and the data block fragment is encoded according to a fountain coding algorithm to obtain an encoded data packet;
- the processor 1103 is specifically configured to perform the following steps:
- An embodiment of the content distribution system in the embodiment includes:
- the content source requesting end device 1501 sends the interest message to the forwarding node 1502, where the packet header of the interest message carries the naming information of .../ABC/5, indicating that the data block with the content name 5 in the content of the request content name ABC is included;
- the forwarding node 1502 receives the interest message, and searches for the code buffer to obtain two encoded data packets that match the interest message, and the forwarding node 1502 returns the two encoded data packets to the content source requesting device 1501, and Forwarding the interest message to the other forwarding node and the content source providing end device 1503;
- the content source provider device 1503 receives the interest message forwarded by the forwarding node 1502, and the content source provider device 1503 that holds the data block matching the interest message segments and encodes the data block into an encoding according to the LT encoding rule.
- the data packet, the packet header of each encoded data packet carries the naming information of .../ABC/5/LT/nonce, and the nonce is a random number with a large range of values, and is continuously sent to the forwarding node 1502;
- the forwarding node 1502 receives the data packet with the LT identifier, that is, the data packet identified as being encoded, and buffers the encoded data packet into the encoding buffer according to a local caching mechanism, such as an LRU mechanism.
- a local caching mechanism such as an LRU mechanism.
- the forwarding node 1502 forwards the received encoded data packet to the content source requesting end device 1501 according to the reverse path of the interest message, and the forwarding node 1502 does not perform any packet loss operation during the process, and does not clear the encoding during the process.
- the forwarding path information of the data packet such as the content of the corresponding entry in the PIT table;
- the content source requesting end device 1501 continuously receives the encoded data packet returned by the forwarding node 1502;
- the content source requesting end device 1501 decodes the received encoded data packet by using a Gaussian elimination method to obtain a data block 5 matching the interest message;
- the content source requesting end device 1501 issues a stop sending notification
- the forwarding node 1502 After receiving the notification of the stop sending the packet, the forwarding node 1502 stops the forwarding of the interest message, and clears all the encoded data packets and the forwarding path information that match the interest message;
- the content source providing end device 1503 After receiving the stop-sending announcement, the content source providing end device 1503 stops encoding the data block and terminates the transmission of the encoded data packet.
- the disclosed systems, devices, and methods may be implemented in other ways.
- 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 above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
- the integrated unit if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium.
- the technical solution of the present invention which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium.
- a number of instructions are included 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)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本发明涉及通信领域,尤其涉及内容中心网络中内容分发的方法及相关设备。The present invention relates to the field of communications, and in particular, to a method and related device for content distribution in a content center network.
当前的互联网广泛采用TCP/IP协议通过“主机-主机”的方式进行通信。互联网最初的目标是实现硬件资源的共享,但随着互联网的迅猛发展,其应用主要转移到文字、图片和视频等信息的共享上,用户更加关心信息获取的速度以及可靠性。因此,传统的互联网显然不能满足用户的需求。内容中心网络(Content-Centric Network,CCN)或命名数据网络(Named Data Network,NDN)是一种取代当前互联网的新的架构。为表述方便,将这里的CCN或NDN统一称为内容中心网络。内容中心网络的基本思想是将信息(或称为内容、数据)本身视为网络中的“对等实体”,是将当前基于主机(host-based)的网络架构转变为基于内容(content-based)的架构。相对于当前的互联网,内容中心网络是一种以接收端为中心的通信模式,接收端通过发送请求消息请求内容,请求消息可以被每个中间节点转发,网络中拥有该请求消息请求的内容的节点就可以返回数据Data包。The current Internet widely uses the TCP/IP protocol to communicate through a "host-host" approach. The initial goal of the Internet is to realize the sharing of hardware resources. However, with the rapid development of the Internet, its applications are mainly transferred to the sharing of information such as text, pictures and videos. Users are more concerned about the speed and reliability of information acquisition. Therefore, the traditional Internet obviously cannot meet the needs of users. A Content-Centric Network (CCN) or a Named Data Network (NDN) is a new architecture that replaces the current Internet. For convenience of description, the CCN or NDN here is collectively referred to as a content center network. The basic idea of a content center network is to regard information (or content, data) itself as a "peer-to-peer entity" in the network, and to transform the current host-based network architecture into content-based (content-based ) The architecture. Compared with the current Internet, the content center network is a communication mode centered on the receiving end, and the receiving end requests the content by sending a request message, and the request message can be forwarded by each intermediate node, and the content of the request message request in the network is The node can return the data packet.
目前在内容中心网络中采用网络编码的方式,编码用于定义请求的特征向量,以说明请求的内容中缺少的部分,内容提供端根据该编码确定可提供的内容是否能满足请求,如果能则返回一个数据块,该数据块是缺少的内容的一部分。Currently, a network coding method is used in the content center network, and the code is used to define a feature vector of the request to describe a missing part of the requested content, and the content provider determines whether the available content satisfies the request according to the code, and if so, Returns a block of data that is part of the missing content.
但是,使用这种方式进行多源分发,当网络中有多个内容提供者都能提供相同的数据块时,只有一个数据块对接收端得到请求的完整内容起到了有效的促进作用,不仅不能提高内容的获取效率,而且还会造成链路资源的浪费。However, when using this method for multi-source distribution, when multiple content providers in the network can provide the same data block, only one data block can effectively promote the complete content requested by the receiving end, not only can not Improve the efficiency of content acquisition, and also cause waste of link resources.
发明内容Summary of the invention
本发明实施例提供了内容中心网络中内容分发的方法及相关设备,用于提 高内容中心网络中内容的获取效率,避免链路资源的浪费。Embodiments of the present invention provide a method for distributing content in a content center network, and related devices, which are used to provide The efficiency of obtaining content in a high content center network avoids waste of link resources.
本发明实施例第一方面提供了一种内容中心网络中内容分发的方法,所述内容中心网络中包括内容源请求端设备和内容源提供端设备,所述方法包括:A first aspect of the embodiments of the present invention provides a method for content distribution in a content center network, where the content center network includes a content source requesting device and a content source providing device, and the method includes:
内容源请求端设备发送兴趣报文到内容源提供端设备,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;The content source requesting end device sends the interest message to the content source providing end device, where the interest message carries the information of the data block requested by the content source requesting end device;
所述内容源请求端设备接收所述内容源提供端设备提供的编码的数据包,所述编码的数据包是由所述内容源提供端设备将与所述兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对所述数据块分片编码得到的;The content source requesting end device receives the encoded data packet provided by the content source providing end device, and the encoded data packet is a data block that is matched by the content source providing end device to the interest message. Segment generation data block fragmentation, and fragmenting the data block by using a fountain coding algorithm;
所述内容源请求端设备对编码数据包集合进行解码,得到所述数据块,所述编码数据包集合中包括所述内容源请求端设备接收到的编码的数据包。The content source requesting end device decodes the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device.
结合本发明实施例的第一方面,本发明实施例第一方面的第一种实现方式中,所述内容中心网络中还包括转发节点,With reference to the first aspect of the embodiments of the present invention, in a first implementation manner of the first aspect, the content center network further includes a forwarding node,
所述内容源请求端设备发送兴趣报文到内容源提供端设备具体包括:The content source requesting device sends the interest message to the content source provider device, and specifically includes:
所述内容源请求端设备发送所述兴趣报文给转发节点,使得所述转发节点转发所述兴趣报文给所述内容源提供端设备;The content source requesting end device sends the interest message to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device;
所述内容源请求端设备接收所述内容源提供端设备提供的编码的数据包具体包括:The receiving, by the content source requesting end device, the encoded data packet provided by the content source providing end device includes:
所述内容源请求端设备接收所述转发节点转发的编码的数据包,所述编码的数据包由所述内容源提供端设备发送给所述转发节点。The content source requesting end device receives the encoded data packet forwarded by the forwarding node, and the encoded data packet is sent by the content source providing end device to the forwarding node.
结合本发明实施例的第一方面或第一方面的第一种实现方式,本发明实施例第一方面的第二种实现方式中,所述内容源请求端设备对编码数据包集合进行解码,得到所述数据块的步骤之后还包括:With reference to the first aspect of the embodiment of the present invention or the first implementation manner of the first aspect, in a second implementation manner of the first aspect of the embodiment, the content source requesting end device decodes the encoded data packet set, After the step of obtaining the data block, the method further includes:
所述内容源请求端设备停止接收所述编码的数据包,并发出停止发包通告,所述停止发包通告用于使得接收到所述停止发包通告的设备停止发送所述数据块对应的编码的数据包并清除所述编码的数据包的转发路径信息。The content source requesting end device stops receiving the encoded data packet, and issues a stop sending packet advertisement, where the stop sending the packet advertisement is used to stop receiving, by the device that stops sending the packet advertisement, the encoded data corresponding to the data block. Packet and clear the forwarding path information of the encoded data packet.
结合本发明实施例第一方面的第二种实现方式,本发明实施例第一方面的第三种实现方式中,所述内容源请求端设备对编码数据包集合进行解码具体包括: With reference to the second implementation manner of the first aspect of the embodiment of the present invention, in the third implementation manner of the first aspect of the embodiment, the content source requesting end device decoding the encoded data packet set includes:
所述内容源请求端设备使用高斯消元法对所述编码数据包集合进行解码。The content source requesting device decodes the encoded data packet set using a Gaussian elimination method.
结合本发明实施例第一方面的第三种实现方式,本发明实施例第一方面的第四种实现方式中,With reference to the third implementation manner of the first aspect of the embodiment of the present invention, in a fourth implementation manner of the first aspect of the embodiment of the present invention,
所述数据块为组成一个内容的多个数据块中的一块;The data block is one of a plurality of data blocks constituting one content;
所述数据块的信息为所述数据块在所述内容中的编号;The information of the data block is a number of the data block in the content;
所述兴趣报文中还包括所述内容的内容名。The interest message further includes a content name of the content.
本发明实施例第二方面提供了一种内容中心网络中内容分发的方法,包括:A second aspect of the embodiments of the present invention provides a method for content distribution in a content center network, including:
转发节点接收内容源请求端设备发送的兴趣报文,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;The forwarding node receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device;
所述转发节点转发所述兴趣报文到内容源提供端设备,使得所述内容源提供端设备对与所述兴趣报文相匹配的数据块进行喷泉编码后返回编码的数据包给所述转发节点;The forwarding node forwards the interest message to the content source providing end device, so that the content source providing end device performs a fountain encoding on the data block matching the interest message, and returns the encoded data packet to the forwarding. node;
所述转发节点将所述内容源提供端设备返回的编码的数据包缓存到编码缓存区;Transmitting, by the forwarding node, the encoded data packet returned by the content source providing end device to an encoding buffer area;
所述转发节点将所述返回的编码的数据包转发给所述内容源请求端设备,使得所述内容源请求端设备对编码数据包集合进行解码得到所述数据块,所述编码数据包集合中包括所述内容源请求端设备接收到的编码的数据包。Transmitting, by the forwarding node, the returned encoded data packet to the content source requesting end device, so that the content source requesting end device decodes the encoded data packet set to obtain the data block, and the encoded data packet set The encoded data packet received by the content source requesting end device is included.
结合本发明实施例的第二方面,本发明实施例第二方面的第一种实现方式中,所述转发节点转发所述兴趣报文到内容源提供端设备的步骤之前还包括:With reference to the second aspect of the embodiments of the present invention, in the first implementation manner of the second aspect of the embodiments of the present disclosure, before the step of forwarding the interest message to the content source providing end device, the forwarding node further includes:
所述转发节点查找所述编码缓存区中是否存在与所述兴趣报文相匹配的编码的数据包;Determining, by the forwarding node, whether the encoded data packet that matches the interest packet exists in the encoding buffer area;
若所述编码缓存区中存在与所述兴趣报文相匹配的编码的数据包,则发送所述相匹配的编码的数据包给所述内容源请求端设备。And if there is an encoded data packet matching the interest message in the encoding buffer, sending the matched encoded data packet to the content source requesting end device.
本发明实施例第三方面提供了一种内容中心网络中内容分发的方法,包括:A third aspect of the embodiments of the present invention provides a method for content distribution in a content center network, including:
内容源提供端设备接收内容源请求端设备发出的兴趣报文,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;The content source providing end device receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device;
所述内容源提供端设备按照预置规则将与所述兴趣报文相匹配的数据块 分段生成数据块分片,按喷泉编码算法对所述数据块分片进行编码,得到编码的数据包;The content source providing end device to use the data block that matches the interest message according to a preset rule Generating fragmentation of the data block by segmentation, encoding the data block fragment according to a fountain coding algorithm, to obtain an encoded data packet;
所述内容源提供端设备将所述编码的数据包发送到内容源请求端设备,使得所述内容源请求端设备在接收到编码的数据包后,进行解码得到所述数据块。And the content source providing end device sends the encoded data packet to the content source requesting end device, so that the content source requesting end device performs decoding to obtain the data block after receiving the encoded data packet.
结合本发明实施例的第三方面,本发明实施例第三方面的第一种实现方式中,所述内容源提供端设备接收内容源请求端设备发出的兴趣报文包括:With reference to the third aspect of the embodiments of the present invention, in a first implementation manner of the third aspect of the embodiments of the present disclosure, the content source providing end device receiving the interest message sent by the content source requesting end device includes:
所述内容源提供端设备接收转发节点发送的所述兴趣报文,所述兴趣报文由所述内容源请求端设备发送给所述转发节点;The content source providing end device receives the interest message sent by the forwarding node, and the interest message is sent by the content source requesting end device to the forwarding node;
所述内容源提供端设备将所述编码的数据包发送到内容源请求端设备包括:The content source providing end device sending the encoded data packet to the content source requesting end device includes:
所述内容源提供的设备将所述编码的数据包发送给所述转发节点,使得所述转发节点将所述编码的数据包转发给所述内容源请求端设备。The device provided by the content source sends the encoded data packet to the forwarding node, so that the forwarding node forwards the encoded data packet to the content source requesting device.
结合本发明实施例的第三方面或第三方面的第一种实现方式,本发明实施例第三方面的第二种实现方式中,所述编码的数据包中包含有所述数据块的编号,所述数据块为组成一个内容的多个数据块中的一块;With reference to the third aspect of the embodiment of the present invention or the first implementation manner of the third aspect, in the second implementation manner of the third aspect of the embodiment, the encoded data packet includes the number of the data block. The data block is one of a plurality of data blocks constituting one content;
所述编码的数据包中还包括所述内容的内容名,喷泉编码的标识和一个随机数。The encoded data packet further includes a content name of the content, a fountain coded identifier, and a random number.
本发明实施例第四方面提供了一种内容源请求端设备,其特征在于,包括:A fourth aspect of the embodiments of the present invention provides a content source requesting device, which is characterized in that:
第一发送模块,用于发送兴趣报文到内容源提供端设备,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;a first sending module, configured to send an interest message to the content source providing end device, where the interest message carries information of the data block requested by the content source requesting end device;
第一接收模块,用于接收所述内容源提供端设备提供的编码的数据包,所述编码的数据包是由所述内容源提供端设备将与所述兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对所述数据块分片编码得到的;a first receiving module, configured to receive an encoded data packet provided by the content source providing end device, where the encoded data packet is a data block that is matched by the content source providing end device to the interest packet Segment generation data block fragmentation, and fragmenting the data block by using a fountain coding algorithm;
解码模块,用于对编码数据包集合进行解码,得到所述数据块,所述编码数据包集合中包括所述第一接收模块接收到的编码的数据包。And a decoding module, configured to decode the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the first receiving module.
结合本发明实施例的第四方面,本发明实施例第四方面的第一种实现方式中, With reference to the fourth aspect of the embodiments of the present invention, in a first implementation manner of the fourth aspect of the embodiments of the present invention,
所述第一发送模块具体用于,发送所述兴趣报文给转发节点,使得所述转发节点转发所述兴趣报文给所述内容源提供端设备;The first sending module is specifically configured to send the interest message to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device;
所述第一接收模块具体用于,接收所述转发节点转发的编码的数据包,所述编码的数据包由所述内容源提供端设备发送给所述转发节点。The first receiving module is specifically configured to receive the encoded data packet forwarded by the forwarding node, where the encoded data packet is sent by the content source providing end device to the forwarding node.
结合本发明实施例的第四方面或第四方面的第一种实现方式,本发明实施例第四方面的第二种实现方式中,所述内容源请求端设备还包括:With reference to the fourth aspect of the embodiment of the present invention or the first implementation manner of the fourth aspect, in the second implementation manner of the fourth aspect of the embodiment, the content source requesting end device further includes:
停止模块,用于停止接收所述编码的数据包,并发出停止发包通告,所述停止发包通告用于使得接收到所述停止发包通告的设备停止发送所述数据块对应的编码的数据包并清除所述编码的数据包的转发路径信息。And a stopping module, configured to stop receiving the encoded data packet, and issue a stop sending packet advertisement, where the stop sending the packet advertisement is used to stop the device that receives the stop sending the packet notification from stopping sending the encoded data packet corresponding to the data block and Clearing the forwarding path information of the encoded data packet.
结合本发明实施例第四方面的第二种实现方式,本发明实施例第四方面的第三种实现方式中,With reference to the second implementation manner of the fourth aspect of the embodiment of the present invention, in a third implementation manner of the fourth aspect of the embodiment of the present invention,
所述解码模块具体用于,使用高斯消元法对所述编码数据包集合进行解码,得到所述数据块。The decoding module is specifically configured to decode the encoded data packet set by using a Gaussian elimination method to obtain the data block.
本发明实施例第五方面提供了一种转发节点,包括:A fifth aspect of the embodiments of the present invention provides a forwarding node, including:
第二接收模块,用于接收内容源请求端设备发送的兴趣报文,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;a second receiving module, configured to receive an interest message sent by the content source requesting end device, where the interest message carries information of the data block requested by the content source requesting end device;
第一转发模块,用于转发所述兴趣报文到内容源提供端设备,使得所述内容源提供端设备对与所述兴趣报文相匹配的数据块进行喷泉编码后返回编码的数据包给缓存模块;a first forwarding module, configured to forward the interest message to the content source providing end device, so that the content source providing end device performs a fountain encoding on the data block matching the interest message, and returns the encoded data packet to Cache module
缓存模块,用于将所述内容源提供端设备返回的编码的数据包缓存到编码缓存区;a cache module, configured to cache the encoded data packet returned by the content source provider device into the encoding buffer area;
第二转发模块,用于将所述内容源提供端设备返回的编码的数据包转发给所述内容源请求端设备,使得所述内容源请求端设备对编码数据包集合进行解码得到所述数据块,所述编码数据包集合中包括所述内容源请求端设备接收到的编码的数据包。a second forwarding module, configured to forward the encoded data packet returned by the content source provider device to the content source requesting device, so that the content source requesting device decodes the encoded data packet set to obtain the data And the encoded data packet set includes the encoded data packet received by the content source requesting end device.
结合本发明实施例的第五方面,本发明实施例第五方面的第一种实现方式中,所述转发节点还包括:With reference to the fifth aspect of the embodiments of the present invention, in the first implementation manner of the fifth aspect, the forwarding node further includes:
查找模块,用于查找所述编码缓存区中是否存在与所述兴趣报文相匹配的编码的数据包; a searching module, configured to search whether an encoded data packet matching the interest message exists in the encoding buffer area;
第二发送模块,用于当所述编码缓存区中存在与所述兴趣报文相匹配的编码的数据包时,发送所述相匹配的编码的数据包给所述内容源请求端设备。And a second sending module, configured to send the matched encoded data packet to the content source requesting end device when there is an encoded data packet that matches the interest message in the encoding buffer area.
本发明实施例第六方面提供了一种内容源提供端设备,包括:A sixth aspect of the embodiments of the present invention provides a content source providing end device, including:
第三接收模块,用于接收内容源请求端设备发出的兴趣报文,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;a third receiving module, configured to receive an interest message sent by the content source requesting end device, where the interest message carries information of the data block requested by the content source requesting end device;
编码模块,用于按照预置规则将与所述兴趣报文相匹配的数据块分段生成数据块分片,按喷泉编码算法对所述数据块分片进行编码,得到编码的数据包;An encoding module, configured to generate a data block fragment by using a data block that matches the interest message according to a preset rule, and encode the data block according to a fountain coding algorithm to obtain an encoded data packet;
第三发送模块,用于将所述编码模块得到的编码的数据包发送到内容源请求端设备,使得所述内容源请求端设备在接收到编码的数据包后,进行解码得到所述数据块。a third sending module, configured to send the encoded data packet obtained by the encoding module to the content source requesting end device, so that the content source requesting end device, after receiving the encoded data packet, performs decoding to obtain the data block .
结合本发明实施例的第六方面,本发明实施例第六方面的第一种实施例中,所述第三接收模块具体用于,接收转发节点发送的所述兴趣报文,所述兴趣报文由所述内容源请求端设备发送给所述转发节点;With reference to the sixth aspect of the embodiments of the present invention, in a first embodiment of the sixth aspect, the third receiving module is configured to receive the interest message sent by the forwarding node, where the interest message is sent. And sent by the content source requesting end device to the forwarding node;
所述第三发送模块具体用于,将所述编码的数据包发送给所述转发节点,使得所述转发节点将所述编码的数据包转发给所述内容源请求端设备,使得所述内容源请求端设备在接收到编码的数据包后,进行解码得到所述数据块。The third sending module is specifically configured to send the encoded data packet to the forwarding node, so that the forwarding node forwards the encoded data packet to the content source requesting end device, so that the content is After receiving the encoded data packet, the source requesting device performs decoding to obtain the data block.
从以上技术方案可以看出,本发明实施例具有以下优点:本发明实施例中内容源请求端设备发送兴趣报文到内容源提供端设备后,接收内容源提供端设备提供的编码的数据包,该编码的数据包是由内容源提供端设备将与该兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对数据块分片编码得到的,所以该内容源请求端设备可以同时接收多个内容源提供端设备发送的编码的数据包,内容源请求端设备对包括有接收到的编码的数据包的编码数据包集合进行解码,当满足编码条件时,内容源请求端设备即可以解码成功得到该数据块,由于按照喷泉编码算法得到的编码的数据包的数量远大于数据块的数量,且编码的数据包互相之间相同的概率非常小,所以在一定时间内,内容源请求端设备从多个设备上获取的编码的数据包相同的概率远小于从多个设备上获取的数据块相同的概率,使得内容源请求端设备得到有效数据的概率增大,减少了获取足够有效数据的时间,提高了内容中心网络中内容的获取效率,网络链路中不再传输大量的重复数据,避免了链路资源的浪费。 It can be seen from the foregoing technical solutions that the embodiment of the present invention has the following advantages: in the embodiment of the present invention, after receiving the interest message from the content source requesting end device to the content source providing end device, the content source requesting end device receives the encoded data packet provided by the content source providing end device. And the encoded data packet is generated by the content source providing end device to match the interest packet to generate a data block fragment, and the data block is slice-coded using a fountain encoding algorithm, so the content source The requesting device can simultaneously receive the encoded data packet sent by the plurality of content source providing end devices, and the content source requesting end device decodes the encoded data packet set including the received encoded data packet, and when the encoding condition is met, the content The source requesting device can decode and successfully obtain the data block. Since the number of encoded data packets obtained according to the fountain coding algorithm is much larger than the number of data blocks, and the probability that the encoded data packets are identical to each other is very small, The time when the content source requesting device obtains the encoded data packets from multiple devices with the same probability The same probability of obtaining data blocks from multiple devices increases the probability that the content source requesting device obtains valid data, reduces the time for obtaining sufficient valid data, and improves the efficiency of content acquisition in the content center network. A large amount of duplicate data is no longer transmitted in the road, which avoids waste of link resources.
图1为本发明实施例中内容中心网络中内容分发的方法一个流程示意图;1 is a schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention;
图2为本发明实施例中内容中心网络中内容分发的方法另一个流程示意图;2 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention;
图3为本发明实施例中内容中心网络中内容分发的方法另一个流程示意图;3 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention;
图4为本发明实施例中一个解码流程示意图;4 is a schematic diagram of a decoding process in an embodiment of the present invention;
图5为本发明实施例中内容中心网络中内容分发的方法另一个流程示意图;5 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention;
图6为本发明实施例中内容中心网络中内容分发的方法另一个流程示意图;6 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention;
图7为本发明实施例中内容中心网络中内容分发的方法另一个流程示意图;FIG. 7 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention; FIG.
图8为本发明实施例中内容中心网络中内容分发的方法另一个流程示意图;FIG. 8 is another schematic flowchart of a method for content distribution in a content center network according to an embodiment of the present invention; FIG.
图9为本发明实施例中内容源请求端设备一个结构示意图;FIG. 9 is a schematic structural diagram of a content source requesting end device according to an embodiment of the present invention;
图10为本发明实施例中内容源请求端设备另一个结构示意图;FIG. 10 is a schematic diagram of another structure of a content source requesting end device according to an embodiment of the present invention;
图11为本发明实施例中网络设备一个结构示意图;FIG. 11 is a schematic structural diagram of a network device according to an embodiment of the present invention;
图12为本发明实施例中转发节点一个结构示意图;FIG. 12 is a schematic structural diagram of a forwarding node according to an embodiment of the present invention;
图13为本发明实施例中转发节点另一个结构示意图;13 is another schematic structural diagram of a forwarding node according to an embodiment of the present invention;
图14为本发明实施例中内容源提供端设备一个结构示意图;FIG. 14 is a schematic structural diagram of a content source providing end device according to an embodiment of the present invention;
图15为本发明实施例中内容分发系统一个结构示意图。FIG. 15 is a schematic structural diagram of a content distribution system according to an embodiment of the present invention.
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。 The technical solutions in the embodiments of the present invention are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present invention. It is obvious that the described embodiments are only a part of the embodiments of the present invention, but not all embodiments. All other embodiments obtained by a person skilled in the art based on the embodiments of the present invention without creative efforts are within the scope of the present invention.
下面分别从不同的执行主体的角度对本发明实施例中内容中心网络中内容分发的方法进行描述:The following describes the method for content distribution in the content center network in the embodiment of the present invention from the perspective of different execution entities:
一、内容源请求端设备的操作:First, the operation of the content source requesting device:
请参阅图1,本发明实施例中内容中心网络中内容分发的方法一个实施例包括:Referring to FIG. 1, an embodiment of a method for content distribution in a content center network according to an embodiment of the present invention includes:
101、内容源请求端设备发送兴趣报文到内容源提供端设备;101. The content source requesting end device sends the interest message to the content source providing end device.
在内容中心网络中,当内容源请求端设备需要请求内容时,发送兴趣报文到内容源提供端设备,以数据块为单位请求数据,该兴趣报文中携带有内容源请求端设备请求的数据块的信息。In the content center network, when the content source requesting device needs to request the content, the interest message is sent to the content source provider device, and the data is requested in units of data blocks, where the interest message carries the request of the content source requesting device. The information of the data block.
102、内容源请求端设备接收所述内容源提供端设备提供的编码的数据包;102. The content source requesting end device receives the encoded data packet provided by the content source providing end device.
内容源请求端设备发送兴趣报文到内容源提供端设备后,接收该内容源提供端设备提供的编码的数据包,该编码的数据包是由内容源提供端设备将与兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对数据块分片编码得到的。After the content source requesting end device sends the interest message to the content source providing end device, the content source requesting end device receives the encoded data packet provided by the content source providing end device, and the encoded data packet is matched by the content source providing end device to the interest message. The data block segmentation generates a data block fragmentation, and the data block is slice-coded using a fountain coding algorithm.
可以理解的是,进行喷泉编码时,可以将该数据块分成k段,每一段即为一个原始分组,然后可以由k个原始分组生成任意数量的编码分组,每一个编码分组即可以成为一个编码的数据包,接收端只要收到k(1+ε)个编码分组的任意子集,即可通过译码以高概率成功(和ε有关)恢复全部原始分组,从而得到完整的数据块。It can be understood that, when performing fountain coding, the data block can be divided into k segments, each segment is an original packet, and then any number of encoded packets can be generated from k original packets, and each coding packet can be an encoding. The data packet, as long as the receiving end receives any subset of k (1 + ε) coded packets, can successfully recover all the original packets by decoding with high probability (related to ε), thereby obtaining a complete data block.
由喷泉编码可知,提供的编码的数据包有很多个,步骤101中的内容源提供端设备的数量可以为一个,也可以为多个,步骤102中返回编码的数据包的内容源提供端设备可以为一个,也可以为多个,具体数量可以根据实际接收到兴趣报文的内容源提供端设备的数量与含有与兴趣报文相匹配的数据块的内容源提供端设备的数量而定,此处不做限定。It can be seen from the fountain coding that there are many encoded data packets provided. The number of content source providing devices in
103、内容源请求端设备对编码数据包集合进行解码,得到所述数据块,所述编码数据包集合中包括所述内容源请求端设备接收到的编码的数据包。103. The content source requesting end device decodes the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device.
内容源请求端设备接收内容源提供端设备提供的编码的数据包后,对编码数据包集合进行解码,得到与兴趣报文相匹配的数据块,该编码数据包集合中包括内容源请求端设备接收到的编码的数据包。 After receiving the encoded data packet provided by the content source provider device, the content source requesting device decodes the encoded data packet set to obtain a data block that matches the interest packet, where the encoded data packet set includes the content source requesting end device. The received encoded packet.
需要说明的是,内容源请求端设备对编码数据包集合进行解码的方式可以有很多种,例如内容源请求端设备可以持续对编码数据包集合进行解码,直到接收到的编码的数据包达到一定的数量,即编码数据包集合中包含的编码的数据包达到一定的数量后,才解码成功,内容源请求端设备也可以设定一个预置数值,当接收到的编码的数据包达到预置数值后,才开始对编码数据包集合进行解码,得到数据块,还可以有其他的方式,例如解码前可以先判断编码数据包集合中的编码的数据包是否满足解码条件等,此处不作限定。本发明实施例中内容源请求端设备发送兴趣报文到内容源提供端设备后,接收内容源提供端设备提供的编码的数据包,该编码的数据包是由内容源提供端设备将与该兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对数据块分片编码得到的,所以该内容源请求端设备可以同时接收多个内容源提供端设备发送的编码的数据包,内容源请求端设备对包括有接收到的编码的数据包的编码数据包集合进行解码,当满足编码条件时,内容源请求端设备即可以解码成功得到该数据块,由于按照喷泉编码算法得到的编码的数据包的数量远大于数据块的数量,且编码的数据包互相之间相同的概率非常小,所以在一定时间内,内容源请求端设备从多个设备上获取的编码的数据包相同的概率远小于从多个设备上获取的数据块相同的概率,使得内容源请求端设备得到有效数据的概率增大,减少了获取足够有效数据的时间,提高了内容中心网络中内容的获取效率,网络链路中不再传输大量的重复数据,避免了链路资源的浪费。It should be noted that the content source requesting end device can decode the encoded data packet set in various manners, for example, the content source requesting end device can continuously decode the encoded data packet set until the received encoded data packet reaches a certain level. The number, that is, the encoded data packet contained in the encoded data packet reaches a certain number, and the decoding is successful, and the content source requesting device can also set a preset value, when the received encoded data packet reaches the preset. After the value is started, the encoded data packet set is decoded, and the data block is obtained. There may be other methods. For example, before decoding, it may be determined whether the encoded data packet in the encoded data packet set satisfies the decoding condition, etc., which is not limited herein. . In the embodiment of the present invention, after the content source requesting end device sends the interest message to the content source providing end device, the content source providing end device provides the encoded data packet, and the encoded data packet is matched by the content source providing end device. The data block segmentation of the interest message matches the data block fragmentation, and the data block is slice-coded using the fountain coding algorithm, so the content source requesting device can simultaneously receive the code sent by the multiple content source provider devices. The data source, the content source requesting device decodes the encoded data packet set including the received encoded data packet, and when the encoding condition is met, the content source requesting end device can decode the data block successfully, because according to the fountain The number of encoded data packets obtained by the encoding algorithm is much larger than the number of data blocks, and the probability that the encoded data packets are identical to each other is very small, so that the content source requesting device obtains the encoding from multiple devices within a certain period of time. The same probability of packets is much less than the probability of data blocks acquired from multiple devices, making the content source The probability that the requesting device obtains valid data increases, the time for obtaining sufficient valid data is reduced, the content acquisition efficiency in the content center network is improved, and a large amount of duplicate data is not transmitted in the network link, thereby avoiding waste of link resources. .
上面实施例中,内容源请求端设备发送兴趣报文到内容源提供端设备,在实际应用中,内容源请求端设备可以将兴趣报文发送给转发节点,再由转发节点转发给内容源提供端设备,请参阅图2,本发明实施例中内容中心网络中内容分发的方法另一个实施例包括:In the above embodiment, the content source requesting end device sends the interest message to the content source providing end device. In the actual application, the content source requesting end device may send the interest message to the forwarding node, and then the forwarding node forwards the content message to the content source. As shown in FIG. 2, another embodiment of a method for content distribution in a content center network in an embodiment of the present invention includes:
201、内容源请求端设备发送兴趣报文给转发节点,使得该转发节点转发兴趣报文给内容源提供端设备;The content source requesting end device sends the interest message to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device;
在内容中心网络中,当内容源请求端设备需要请求内容时,发送兴趣报文给转发节点,使得该转发节点转发兴趣报文给内容源提供端设备,以数据块为单位请求数据,该兴趣报文中携带有内容源请求端设备请求的数据块的信息。In the content center network, when the content source requesting device needs to request the content, the interest message is sent to the forwarding node, so that the forwarding node forwards the interest message to the content source provider device, and requests data in units of data blocks. The message carries information about a data block requested by the content source requesting device.
可以理解的是,内容源请求端设备可以发送兴趣报文给多个转发节点,或 者也可以发送给与其连接的所有转发节点,转发节点可以将兴趣报文转发给多个内容源提供端设备或其他转发节点,也可以通过查询或路径计算等方式转发给特定的一些内容源提供端设备,此处不做限定。It can be understood that the content source requesting device can send the interest message to multiple forwarding nodes, or The forwarding node can also forward the interest message to multiple content source providing end devices or other forwarding nodes, or forward it to a specific content source through query or path calculation. End device, not limited here.
202、内容源请求端设备接收转发节点转发的编码的数据包,该编码的数据包由内容源提供端设备发送给该转发节点;202. The content source requesting end device receives the encoded data packet forwarded by the forwarding node, where the encoded data packet is sent by the content source provider device to the forwarding node.
内容源请求端设备发送兴趣报文给转发节点后,接收转发节点转发的编码的数据包,该编码的数据包由内容源提供端设备发送给该转发节点,该编码的数据包是由内容源提供端设备将与兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对数据块分片编码得到的。After the content source requesting end device sends the interest message to the forwarding node, the encoded data packet forwarded by the forwarding node is received, and the encoded data packet is sent by the content source provider device to the forwarding node, and the encoded data packet is used by the content source. The providing end device generates a data block fragment by using a data block segment matching the interest message, and uses the fountain encoding algorithm to slice and encode the data block.
可以理解的是,进行喷泉编码时,可以将该数据块分成k段,每一段即为一个原始分组,然后可以由k个原始分组生成任意数量的编码分组,每一个编码分组即可以成为一个编码的数据包,接收端只要收到k(1+ε)个编码分组的任意子集,即可通过译码以高概率成功(和ε有关)恢复全部原始分组,从而得到完整的数据块。It can be understood that, when performing fountain coding, the data block can be divided into k segments, each segment is an original packet, and then any number of encoded packets can be generated from k original packets, and each coding packet can be an encoding. The data packet, as long as the receiving end receives any subset of k (1 + ε) coded packets, can successfully recover all the original packets by decoding with high probability (related to ε), thereby obtaining a complete data block.
由喷泉编码可知,提供的编码的数据包有很多个,步骤201中的内容源提供端设备的数量可以为一个,也可以为多个,步骤202中返回编码的数据包的内容源提供端设备可以为一个,也可以为多个,具体数量可以根据实际接收到兴趣报文的内容源提供端设备的数量与含有与兴趣报文相匹配的数据块的内容源提供端设备的数量而定,此处不做限定。内容源提供端设备为多个时,多个内容源提供端设备按照相同的规则将数据块分成k段,每一段即为一个原始分组,然后可以由k个原始分组生成任意数量的编码分组,每一个编码分组即可以成为一个编码的数据包It can be seen from the fountain code that there are many encoded data packets provided. The number of content source providing devices in
203、内容源请求端设备对编码数据包集合进行解码,得到所述数据块,所述编码数据包集合中包括所述内容源请求端设备接收到的编码的数据包。203. The content source requesting end device decodes the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device.
内容源请求端设备接收内容源提供端设备提供的编码的数据包后,对编码数据包集合进行解码,得到与兴趣报文相匹配的数据块,该编码数据包集合中包括内容源请求端设备接收到的编码的数据包。After receiving the encoded data packet provided by the content source provider device, the content source requesting device decodes the encoded data packet set to obtain a data block that matches the interest packet, where the encoded data packet set includes the content source requesting end device. The received encoded packet.
需要说明的是,内容源请求端设备对编码数据包集合进行解码的方式可以有很多种,例如内容源请求端设备可以持续对编码数据包集合进行解码,直到 接收到的编码的数据包达到一定的数量,即编码数据包集合中包含的编码的数据包达到一定的数量后,才解码成功,内容源请求端设备也可以设定一个预置数值,当接收到的编码的数据包达到预置数值后,才开始对编码数据包集合进行解码,得到数据块,还可以有其他的方式,例如解码前可以先判断编码数据包集合中的编码的数据包是否满足解码条件等,此处不作限定。It should be noted that the content source requesting end device can decode the encoded data packet set in various manners, for example, the content source requesting end device can continuously decode the encoded data packet set until The received encoded data packet reaches a certain amount, that is, the encoded data packet included in the encoded data packet set reaches a certain number, and then the decoding is successful, and the content source requesting device can also set a preset value when receiving. After the encoded data packet reaches the preset value, the encoded data packet set is decoded, and the data block is obtained. There may be other ways, for example, whether the encoded data packet in the encoded data packet set can be determined before decoding. The decoding conditions and the like are satisfied and are not limited herein.
本发明实施例中,内容源请求端设备兴趣报文给转发节点,使得该转发节点转发兴趣报文给所述内容源提供端设备,再接收转发节点转发的编码的数据包,这样可以将兴趣报文扩散到更大的范围,并且可以得到更多的设备返回的编码的数据包,提高了内容的获取效率。In the embodiment of the present invention, the content source requesting device device interest message is sent to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device, and then receives the encoded data packet forwarded by the forwarding node, so that the interest can be The message spreads to a larger extent, and more encoded packets returned by the device can be obtained, which improves the efficiency of content acquisition.
在实际应用中,内容源请求端设备得到数据块后,还可以发出停止发包通告停止其他设备对该数据块对应的编码包的转发,请参阅图3,本发明实施例中内容中心网络中内容分发的方法另一个实施例包括:In the actual application, after the content source requesting device obtains the data block, it may also issue a stop packet notification to stop the forwarding of the encoded packet corresponding to the data block by other devices. Referring to FIG. 3, the content in the content center network in the embodiment of the present invention is used. Another embodiment of the method of distribution includes:
301、内容源请求端设备发送兴趣报文给转发节点,使得该转发节点转发兴趣报文给内容源提供端设备;301. The content source requesting end device sends the interest message to the forwarding node, so that the forwarding node forwards the interest message to the content source providing end device.
在内容中心网络中,当内容源请求端设备需要请求内容时,发送兴趣报文给转发节点,使得该转发节点转发兴趣报文给内容源提供端设备,以数据块为单位请求数据,该兴趣报文中携带有内容源请求端设备请求的数据块的信息。In the content center network, when the content source requesting device needs to request the content, the interest message is sent to the forwarding node, so that the forwarding node forwards the interest message to the content source provider device, and requests data in units of data blocks. The message carries information about a data block requested by the content source requesting device.
需要说明的是,该数据块为组成一个内容的多个数据块中的一块,该数据块的信息可以为该数据块在该内容中的编号,该兴趣报文中还可以包括该内容的内容名,例如该兴趣报文的包头中可以携带有以…/content_name/chunk_number格式定义的命名信息,该content_name为内容源请求端设备请求的内容的内容名,该chunk_number为请求数据块在该内容中的编号,该兴趣报文中还可以以其他的命名方式携带这些信息,此处不作限定。It should be noted that the data block is one of a plurality of data blocks constituting a content, and the information of the data block may be a number of the data block in the content, and the interest message may further include the content of the content. The name, for example, the header of the interest message may carry the naming information defined in the format of .../content_name/chunk_number, the content_name is the content name of the content requested by the content source requesting device, and the chunk_number is the request data block in the content. The number of the interest message can also be carried in other naming manners, which is not limited herein.
可以理解的是,内容源请求端设备可以发送兴趣报文给多个转发节点,或者也可以发送给与其连接的所有转发节点,转发节点可以将兴趣报文转发给多个内容源提供端设备或其他转发节点,也可以通过查询或路径计算等方式转发给特定的一些内容源提供端设备,此处不做限定。It can be understood that the content source requesting end device can send the interest message to multiple forwarding nodes, or can also send to all forwarding nodes connected thereto, and the forwarding node can forward the interest message to multiple content source providing end devices or Other forwarding nodes may be forwarded to a specific content source provider device by means of a query or path calculation, which is not limited herein.
302、内容源请求端设备接收转发节点转发的编码的数据包,该编码的数 据包由内容源提供端设备发送给该转发节点;302. The content source requesting end device receives the encoded data packet forwarded by the forwarding node, and the coded number The packet is sent by the content source provider device to the forwarding node;
内容源请求端设备发送兴趣报文给转发节点后,接收转发节点转发的编码的数据包,该编码的数据包由内容源提供端设备发送给该转发节点,该编码的数据包是由内容源提供端设备将与兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对数据块分片编码得到的。After the content source requesting end device sends the interest message to the forwarding node, the encoded data packet forwarded by the forwarding node is received, and the encoded data packet is sent by the content source provider device to the forwarding node, and the encoded data packet is used by the content source. The providing end device generates a data block fragment by using a data block segment matching the interest message, and uses the fountain encoding algorithm to slice and encode the data block.
可以理解的是,进行喷泉编码时,可以将该数据块分成k段,每一段即为一个原始分组,然后可以由k个原始分组生成任意数量的编码分组,每一个编码分组即可以成为一个编码的数据包,接收端只要收到k(1+ε)个编码分组的任意子集,即可通过译码以高概率成功(和ε有关)恢复全部原始分组,从而得到完整的数据块。It can be understood that, when performing fountain coding, the data block can be divided into k segments, each segment is an original packet, and then any number of encoded packets can be generated from k original packets, and each coding packet can be an encoding. The data packet, as long as the receiving end receives any subset of k (1 + ε) coded packets, can successfully recover all the original packets by decoding with high probability (related to ε), thereby obtaining a complete data block.
由喷泉编码可知,提供的编码的数据包有很多个,步骤301中的内容源提供端设备的数量可以为一个,也可以为多个,步骤302中返回编码的数据包的内容源提供端设备可以为一个,也可以为多个,具体数量可以根据实际接收到兴趣报文的内容源提供端设备的数量与含有与兴趣报文相匹配的数据块的内容源提供端设备的数量而定,此处不做限定。It can be seen from the fountain coding that there are many encoded data packets provided. The number of content source providing devices in
303、内容源请求端设备对编码数据包集合进行解码,得到所述数据块,所述编码数据包集合中包括所述内容源请求端设备接收到的编码的数据包。303. The content source requesting end device decodes the encoded data packet set to obtain the data block, where the encoded data packet set includes the encoded data packet received by the content source requesting end device.
内容源请求端设备接收内容源提供端设备提供的编码的数据包后,对编码数据包集合进行解码,得到与兴趣报文相匹配的数据块,该编码数据包集合中包括内容源请求端设备接收到的编码的数据包。After receiving the encoded data packet provided by the content source provider device, the content source requesting device decodes the encoded data packet set to obtain a data block that matches the interest packet, where the encoded data packet set includes the content source requesting end device. The received encoded packet.
需要说明的是,内容源请求端设备对编码数据包集合进行解码的方式可以有很多种,例如内容源请求端设备可以持续对编码数据包集合进行解码,直到接收到的编码的数据包达到一定的数量,即编码数据包集合中包含的编码的数据包达到一定的数量后,才解码成功,内容源请求端设备也可以设定一个预置数值,当接收到的编码的数据包达到预置数值后,才开始对编码数据包集合进行解码,得到数据块,还可以有其他的方式,例如解码前可以先判断编码数据包集合中的编码的数据包是否满足解码条件等,此处不作限定。It should be noted that the content source requesting end device can decode the encoded data packet set in various manners, for example, the content source requesting end device can continuously decode the encoded data packet set until the received encoded data packet reaches a certain level. The number, that is, the encoded data packet contained in the encoded data packet reaches a certain number, and the decoding is successful, and the content source requesting device can also set a preset value, when the received encoded data packet reaches the preset. After the value is started, the encoded data packet set is decoded, and the data block is obtained. There may be other methods. For example, before decoding, it may be determined whether the encoded data packet in the encoded data packet set satisfies the decoding condition, etc., which is not limited herein. .
其中,内容源请求端设备可以使用高斯消元法对改编码数据包集合进行解码,具体的解码流程可以如图4所示: The content source requesting end device can decode the modified encoded data packet set by using the Gaussian elimination method, and the specific decoding process can be as shown in FIG. 4:
401、接收到一个编码符号;401. Receive an encoded symbol.
402、提取该编码符号的特征向量;402. Extract a feature vector of the coded symbol.
403、判断该特征向量与已接收的特征向量是否线性无关;403. Determine whether the feature vector is independent of whether the received feature vector is linear.
若不是线性无关的,则触发步骤404;If it is not linearly independent,
若是线性无关的,则触发步骤405;If it is linearly independent,
404、丢弃该特征向量;404. Discard the feature vector.
405、保存该编码符号的数据包,将该特征向量加入编码矩阵;405. Save the data packet of the code symbol, and add the feature vector to the coding matrix.
406、判断编码符号的置是否等于输入符号的个数;406. Determine whether the set of the encoded symbol is equal to the number of the input symbols.
若不等于,则触发步骤401,再接收一个编码符号;If not equal,
若等于,则触发步骤407;If yes, trigger
407、利用编码矩阵与接收的编码符号进行解码。407. Perform decoding by using an encoding matrix and the received encoded symbols.
304、内容源请求端设备停止接收编码的数据包,并发出停止发包通告。304. The content source requesting end device stops receiving the encoded data packet, and issues a stop sending the packet advertisement.
内容源请求端设备得到与兴趣报文相匹配的数据块后,停止接受编码的数据包,并发出停止发包通告,该停止发包通告用于使得接收到该停止发包通告的设备停止发送该数据块对应的编码的数据包并清除编码数据包转发路径信息,例如PTT表项等。After receiving the data block matching the interest message, the content source requesting end device stops accepting the encoded data packet, and issues a stop sending packet advertisement, where the stop sending the packet advertisement is used to stop the device receiving the stop sending the packet from transmitting the data block. Corresponding encoded data packets and clear encoded packet forwarding path information, such as PTT entries.
本发明实施例中,内容源请求端设备在得到数据块后,停止接收编码的数据包,并发送停止发包通告使得其他设备停止发送该数据块对应的编码的数据包并清除编码数据包转发路径信息,节省了网络资源,提高了各设备进行后续处理的效率,并且利用高斯消元法进行解码,降低了度为1的编码的数据包对解码成功率的影响,提高了解码成功率。In the embodiment of the present invention, after obtaining the data block, the content source requesting end device stops receiving the encoded data packet, and sends a stop sending the packet advertisement, so that the other device stops sending the encoded data packet corresponding to the data block and clears the encoded data packet forwarding path. The information saves the network resources, improves the efficiency of subsequent processing of each device, and uses the Gaussian elimination method to decode, reduces the influence of the encoded data packet of degree 1 on the decoding success rate, and improves the decoding success rate.
二、转发节点的操作:Second, the operation of the forwarding node:
请参阅图5,本发明实施例中内容中心网络中内容分发的方法另一个实施例包括:Referring to FIG. 5, another embodiment of a method for content distribution in a content center network in an embodiment of the present invention includes:
501、转发节点接收内容源请求端设备发送的兴趣报文;501. The forwarding node receives the interest message sent by the content source requesting end device.
当内容源请求端设备发送兴趣报文给转发节点后,转发节点接收内容源请求端设备发送的兴趣报文,该兴趣报文中携带有内容源请求端设备请求的数据块的信息。After the content source requesting end device sends the interest message to the forwarding node, the forwarding node receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device.
502、转发节点转发该兴趣报文到内容源提供端设备,使得内容源提供端 设备对与该兴趣报文相匹配的数据块进行喷泉编码后返回编码的数据包给该转发节点;502. The forwarding node forwards the interest message to the content source provider device, so that the content source provider The device performs a fountain encoding on the data block matching the interest message, and returns the encoded data packet to the forwarding node;
转发节点接收内容源请求端设备发送的兴趣报文后,转发给该兴趣报文到内容源提供端设备,使得内容源提供端设备对与该兴趣报文相匹配的数据块进行喷泉编码后返回编码的数据包给该转发节点。After receiving the interest message sent by the content source requesting device, the forwarding node forwards the interest message to the content source providing end device, so that the content source providing end device performs fountain coding on the data block matching the interest message and returns The encoded data packet is sent to the forwarding node.
可以理解的是,该转发节点也可以通过另外的转发节点转发兴趣报文到内容源提供端设备,并不限定为直接转发该兴趣报文到内容源提供端设备。It can be understood that the forwarding node can also forward the interest message to the content source provider device through another forwarding node, and is not limited to directly forwarding the interest message to the content source provider device.
503、转发节点将内容源提供端设备返回的编码的数据包缓存到编码缓存区;503. The forwarding node caches the encoded data packet returned by the content source provider device into the encoding buffer area.
转发节点转发该兴趣报文到内容源提供端设备,将内容源提供端设备返回的编码的数据包缓存到编码缓存区,该编码缓存区专用于缓存编码的数据包。The forwarding node forwards the interest message to the content source providing end device, and buffers the encoded data packet returned by the content source providing end device to the encoding buffer area, and the encoding buffer area is dedicated to buffering the encoded data packet.
可以理解的是,当转发节点接收到一个编码的数据包后,若当前编码缓存区存在相同的编码的数据包,则该转发节点可以将接收到的相同的编码的数据包直接丢弃。It can be understood that, after the forwarding node receives an encoded data packet, if the current encoded buffer has the same encoded data packet, the forwarding node may directly discard the received identical encoded data packet.
504、转发节点将该返回的编码的数据包转发给内容源请求端设备,使得内容源请求端设备对编码数据包集合进行解码得到该数据块。504. The forwarding node forwards the returned encoded data packet to the content source requesting end device, so that the content source requesting end device decodes the encoded data packet set to obtain the data block.
转发节点将内容源提供端设备返回的编码的数据包缓存到编码缓存区后,将该返回的编码的数据包转发给内容源请求端设备,使得内容源请求端设备对编码数据包集合进行解码得到该数据块。After the forwarding node caches the encoded data packet returned by the content source provider device to the encoding buffer, the returned encoded data packet is forwarded to the content source requesting device, so that the content source requesting device decodes the encoded data packet set. Get the data block.
转发节点可以直接按照兴趣报文的反向路径将编码的数据包转发到内容源请求端设备,也可以查找计算路径之后再按计算出来的路径转发编码的数据包,此处不作限定。The forwarding node may directly forward the encoded data packet to the content source requesting device according to the reverse path of the interest message, and may also forward the encoded data packet according to the calculated path after searching for the calculation path, which is not limited herein.
可以理解的是,编码的数据包中携带有喷泉编码的标识,转发节点可以通过该标识判断出该数据包为编码的数据包。It can be understood that the encoded data packet carries the identifier of the fountain code, and the forwarding node can determine, by the identifier, that the data packet is the encoded data packet.
本发明实施例中,转发节点开辟专用于缓存编码的数据包的编码缓存区,使得可以通过缓存提高编码的数据包的利用率,从而提高了内容获取的效率。In the embodiment of the present invention, the forwarding node opens a coding buffer area dedicated to buffering the encoded data packet, so that the utilization of the encoded data packet can be improved by the cache, thereby improving the efficiency of content acquisition.
上面实施例中,转发节点接收到兴趣报文之后,转发该兴趣报文,在实际应用中,转发节点可以先查找编码缓存区是否存在与该兴趣报文相匹配的编码的数据包,再进行后续处理,请参阅图6,本发明实施例中内容中心网络中内 容分发的方法另一个实施例包括:In the above embodiment, after receiving the interest message, the forwarding node forwards the interest message. In the actual application, the forwarding node may first search whether the coded buffer has the encoded data packet matching the interest message, and then perform the For subsequent processing, please refer to FIG. 6, which is in the content center network in the embodiment of the present invention. Another embodiment of the method of capacity distribution includes:
601、转发节点接收内容源请求端设备发送的兴趣报文;601. The forwarding node receives the interest message sent by the content source requesting end device.
当内容源请求端设备发送兴趣报文给转发节点后,转发节点接收内容源请求端设备发送的兴趣报文,该兴趣报文中携带有内容源请求端设备请求的数据块的信息。After the content source requesting end device sends the interest message to the forwarding node, the forwarding node receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device.
该数据块的信息可以为该数据块在该内容中的编号,该兴趣报文中还可以包括该内容的内容名,例如该兴趣报文的包头中可以携带有以…/content_name/chunk_number格式定义的命名信息,该content_name为内容源请求端设备请求的内容的内容名,该chunk_number为请求数据块在该内容中的编号,该兴趣报文中还可以以其他的命名方式携带这些信息,此处不作限定。The information of the data block may be a number of the data block in the content, and the interest message may further include a content name of the content, for example, the packet header of the interest message may be carried in a format defined by .../content_name/chunk_number The naming information, the content_name is the content name of the content requested by the content source requesting device, and the chunk_number is the number of the request data block in the content, and the interest message may also carry the information in other naming manners, where Not limited.
602、转发节点查找编码缓存区中是否存在与该兴趣报文相匹配的编码的数据包,若存在,则触发步骤603,若不存在,则触发步骤604;602, the forwarding node finds whether there is a coded data packet matching the interest message in the code buffer area, if yes, triggering
转发节点接收内容源请求端设备发送的兴趣报文后,查找编码缓存区中是否存在与该兴趣报文相匹配的编码的数据包,该编码缓存区专用于缓存编码的数据包;After receiving the interest message sent by the content source requesting end device, the forwarding node searches whether there is an encoded data packet matching the interest message in the encoding buffer area, and the encoding buffer area is dedicated to buffering the encoded data packet;
若存在,则触发步骤603;If yes, trigger
若不存在,则触发步骤604。If not, step 604 is triggered.
可以理解的是,转发节点中也可以存在有普通缓存区,用于缓存数据块,若转发节点的普通缓存区中存在有内容源请求端设备请求的数据块时,此时可将转发节点作为一个内容源提供端设备。It can be understood that the forwarding node may also have a common buffer area for buffering data blocks. If there is a data block requested by the content source requesting device in the normal buffer area of the forwarding node, the forwarding node may be used as the forwarding node. A content source provider.
603、转发节点发送与该兴趣报文相匹配的编码的数据包给内容源请求端设备;603. The forwarding node sends the encoded data packet that matches the interest packet to the content source requesting end device.
若转发节点查找编码缓存区中存在与该兴趣报文相匹配的编码的数据包,则转发节点发送与该兴趣报文相匹配的编码的数据包给内容源请求端设备。If the forwarding node searches for a coded packet in the code buffer that matches the interest message, the forwarding node sends the encoded data packet that matches the interest message to the content source requesting device.
604、转发节点转发该兴趣报文到内容源提供端设备,使得内容源提供端设备对与该兴趣报文相匹配的数据块进行喷泉编码后返回编码的数据包给该转发节点;604. The forwarding node forwards the interest message to the content source providing end device, so that the content source providing end device performs a fountain encoding on the data block that matches the interest message, and returns the encoded data packet to the forwarding node.
转发节点发送编码缓存区中与该兴趣报文相匹配的编码的数据包给内容 源请求端设备,或在编码缓存区中查找不到与该兴趣报文相匹配的编码的数据包后,转发给该兴趣报文到内容源提供端设备,使得内容源提供端设备对与该兴趣报文相匹配的数据块进行喷泉编码后返回编码的数据包给该转发节点。The forwarding node sends the encoded data packet in the encoding buffer that matches the interest message to the content. After the source requesting device finds that the encoded data packet matching the interest packet is not found in the encoding buffer, the packet is forwarded to the content source providing end device, so that the content source providing device pair The data block matching the interest message is fountain-encoded and returns the encoded data packet to the forwarding node.
可以理解的是,该转发节点也可以通过另外的转发节点转发兴趣报文到内容源提供端设备,并不限定为直接转发该兴趣报文到内容源提供端设备。It can be understood that the forwarding node can also forward the interest message to the content source provider device through another forwarding node, and is not limited to directly forwarding the interest message to the content source provider device.
605、转发节点将内容源提供端设备返回的编码的数据包缓存到编码缓存区;605. The forwarding node caches the encoded data packet returned by the content source provider device into the encoding buffer area.
转发节点转发该兴趣报文到内容源提供端设备,将内容源提供端设备返回的编码的数据包缓存到编码缓存区,该编码缓存区专用于缓存编码的数据包。The forwarding node forwards the interest message to the content source providing end device, and buffers the encoded data packet returned by the content source providing end device to the encoding buffer area, and the encoding buffer area is dedicated to buffering the encoded data packet.
可以理解的是,当转发节点接收到一个编码的数据包后,若当前编码缓存区存在相同的编码的数据包,则该转发节点可以将接收到的相同的编码的数据包直接丢弃。It can be understood that, after the forwarding node receives an encoded data packet, if the current encoded buffer has the same encoded data packet, the forwarding node may directly discard the received identical encoded data packet.
606、转发节点将该返回的编码的数据包转发给内容源请求端设备,使得内容源请求端设备对编码数据包集合进行解码得到该数据块。606. The forwarding node forwards the returned encoded data packet to the content source requesting end device, so that the content source requesting end device decodes the encoded data packet set to obtain the data block.
转发节点将内容源提供端设备返回的编码的数据包缓存到编码缓存区后,将该返回的编码的数据包转发给内容源请求端设备,使得内容源请求端设备对编码数据包集合进行解码得到该数据块。After the forwarding node caches the encoded data packet returned by the content source provider device to the encoding buffer, the returned encoded data packet is forwarded to the content source requesting device, so that the content source requesting device decodes the encoded data packet set. Get the data block.
转发节点可以直接按照兴趣报文的反向路径将编码的数据包转发到内容源请求端设备,也可以查找计算路径之后再按计算出来的路径转发编码的数据包,此处不作限定。The forwarding node may directly forward the encoded data packet to the content source requesting device according to the reverse path of the interest message, and may also forward the encoded data packet according to the calculated path after searching for the calculation path, which is not limited herein.
可以理解的是,编码的数据包中携带有喷泉编码的标识,转发节点可以通过该标识判断出该数据包为编码的数据包。It can be understood that the encoded data packet carries the identifier of the fountain code, and the forwarding node can determine, by the identifier, that the data packet is the encoded data packet.
607、当转发节点接收到内容源请求端设备发送的停止发包通告后,转发节点终止该兴趣报文的转发。607. After the forwarding node receives the notification of stopping the sending of the packet sent by the content source requesting device, the forwarding node terminates the forwarding of the interest packet.
当转发节点接收到内容源请求端设备发送的停止发包通告后,转发节点可以终止兴趣报文的转发,并清除编码数据包转发路径信息,还可以清除与该兴趣报文相匹配的编码的数据包。After the forwarding node receives the notification of the stop sending packet sent by the content source requesting device, the forwarding node may terminate the forwarding of the interest packet, clear the encoded packet forwarding path information, and also clear the encoded data that matches the interest packet. package.
本发明实施例中,在转发兴趣报文之前,转发节点可以查找编码缓存区中是否存在有与该兴趣报文相匹配的编码的数据包,若有则可以先将该编码的数 据包发送给内容源请求端设备,使得请求端设备能更快的得到足以进行解码的编码的数据包,提高了获取内容的效率。In the embodiment of the present invention, before forwarding the interest message, the forwarding node may search whether there is a coded data packet matching the interest message in the code buffer area, and if so, the coded number may be first The packet is sent to the content source requesting device, so that the requesting device can obtain the encoded data packet that is sufficient for decoding faster, and the efficiency of acquiring the content is improved.
三、内容源提供端设备的操作:Third, the content source provides the operation of the end device:
请参阅图7,本发明实施例中内容中心网络中内容分发的方法另一个实施例包括:Referring to FIG. 7, another embodiment of a method for content distribution in a content center network in an embodiment of the present invention includes:
701、内容源提供端设备接收内容源请求端设备发出的兴趣报文;701. The content source providing end device receives an interest message sent by the content source requesting end device.
当内容源请求端设备发出兴趣报文后,内容源提供端设备接收内容源请求端设备发出的兴趣报文,该兴趣报文中携带有内容源请求端设备请求的数据块的信息。After the content source requesting end device sends the interest message, the content source providing end device receives the interest message sent by the content source requesting end device, where the interest message carries the information of the data block requested by the content source requesting end device.
702、内容源提供端设备按照预置规则将与该兴趣报文相匹配的数据块分段生成数据块分片,按喷泉编码算法对该数据块分片进行编码,得到编码的数据包;702. The content source providing end device generates a data block fragment by using a data block that matches the interest message according to a preset rule, and encodes the data block according to a fountain coding algorithm to obtain an encoded data packet.
内容源提供端设备接收到内容源请求端设备发出的兴趣报文后,按照预置规则将与该兴趣报文相匹配的数据块分段生成数据块分片,按喷泉编码算法对该数据块分片进行编码,得到编码的数据包;After receiving the interest message sent by the content source requesting end device, the content source providing end device generates a data block fragment according to a preset rule, and the data block is segmented according to a fountain coding algorithm. Fragmentation is performed to obtain an encoded data packet;
该预置规则为喷泉编码的规则,不同的喷泉编码的分段规则可能不同,例如可以为LT编码,将数据块分成K段,K为正整数,保证除了最后一段之外的所有包具有相同大小,最后一段长度不足部分填零补齐,也可以采用喷泉编码中的另外的编码形式,此处不做限定。The preset rule is a rule of fountain coding. The segmentation rules of different fountain codes may be different. For example, it may be LT coded, the data block is divided into K segments, and K is a positive integer, ensuring that all packets except the last segment have the same The size, the length of the last segment is not enough to fill in the zero, and the other coding form in the fountain code can also be used, which is not limited herein.
703、内容源提供端设备将该编码的数据包发送到内容源请求端设备,使得内容源请求端设备在接收到编码的数据包后,进行解码得到该数据块。703. The content source providing end device sends the encoded data packet to the content source requesting end device, so that the content source requesting end device performs decoding to obtain the data block after receiving the encoded data packet.
内容源提供端设备得到编码的数据包后,将编码的数据包发送到内容源请求端设备,使得内容源请求端设备在接收到编码的数据包后,进行解码得到与该兴趣报文相匹配的数据块。After the content source provides the encoded data packet, the encoded data packet is sent to the content source requesting device, so that the content source requesting device, after receiving the encoded data packet, decodes and matches the interest packet. Data block.
可以理解的是,由于喷泉编码算法可以持续不断的产生新的编码的数据包,所以内容源提供端设备可以不停的发送新产生的编码的数据包到内容源请求端设备,直到发送到一定的数量或接收到停止发包通告等,才停止发送编码的数据包,停止的具体触发条件可以根据实际情况设定,此处不作限定。It can be understood that since the fountain encoding algorithm can continuously generate new encoded data packets, the content source providing end device can continuously send the newly generated encoded data packets to the content source requesting device until it is sent to a certain level. The number of the packets is not received until the packet is sent out, and the coded data packet is stopped. The specific trigger conditions for the stop can be set according to the actual situation.
本发明实施例中,内容源提供端设备接收到兴趣报文后,对与该兴趣报文 相匹配的数据块进行喷泉编码,得到编码的数据包发送出去,这样多个提供端设备同时发送编码的数据包时,使得各提供者之间无需协作,但是实现了多节点协作形式的内容发送,在每个提供者完成内容发送的同时,降低了每个内容源提供端设备需要发包的个数。In the embodiment of the present invention, after receiving the interest message, the content source providing end device pairs the interest message with the interest message. The matched data blocks are coded by the fountain, and the encoded data packets are sent out, so that when the plurality of providing end devices simultaneously transmit the encoded data packets, the providers do not need to cooperate, but the content transmission in the form of multi-node cooperation is realized. At the same time that each provider completes the content transmission, the number of packets that each content source provider device needs to send is reduced.
上面实施例中,内容源提供端设备接收内容源请求端设备发出的兴趣报文,在实际应用中,内容源设备可以接受由转发节点转发过来的兴趣报文,请参阅图8,本发明实施例中内容中心网络中内容分发的方法另一个实施例包括:In the above embodiment, the content source providing end device receives the interest message sent by the content source requesting end device. In an actual application, the content source device can receive the interest message forwarded by the forwarding node. Referring to FIG. 8, the implementation of the present invention is implemented. Another embodiment of a method for content distribution in a content center network in an example includes:
801、内容源提供端设备接收转发节点发送的兴趣报文,该兴趣报文由内容源请求端设备发送给该转发节点;801. The content source providing end device receives the interest message sent by the forwarding node, where the interest message is sent by the content source requesting end device to the forwarding node.
当内容源请求端设备发出兴趣报文后,内容源提供端设备接收转发节点发送的兴趣报文,该兴趣报文由内容源请求端设备发送给该转发节点,该兴趣报文中携带有内容源请求端设备请求的数据块的信息。After the content source requesting device sends the interest message, the content source provider device receives the interest message sent by the forwarding node, and the interest message is sent by the content source requesting device to the forwarding node, where the interest message carries the content. The information of the data block requested by the source requesting device.
802、内容源提供端设备按照预置规则将与该兴趣报文相匹配的数据块分段生成数据块分片,按喷泉编码算法对该数据块分片进行编码,得到编码的数据包;802. The content source providing end device generates a data block fragment by using a data block that matches the interest message according to a preset rule, and encodes the data block according to a fountain coding algorithm to obtain an encoded data packet.
内容源提供端设备接收到内容源请求端设备发出的兴趣报文后,按照预置规则将与该兴趣报文相匹配的数据块分段生成数据块分片,按喷泉编码算法对该数据块分片进行编码,得到编码的数据包;After receiving the interest message sent by the content source requesting end device, the content source providing end device generates a data block fragment according to a preset rule, and the data block is segmented according to a fountain coding algorithm. Fragmentation is performed to obtain an encoded data packet;
该预置规则为喷泉编码的规则,不同的喷泉编码的分段规则可能不同,例如可以为LT编码,将数据块分成K段,K为正整数,保证除了最后一段之外的所有包具有相同大小,最后一段长度不足部分填零补齐,也可以采用喷泉编码中的另外的编码形式,此处不做限定。The preset rule is a rule of fountain coding. The segmentation rules of different fountain codes may be different. For example, it may be LT coded, the data block is divided into K segments, and K is a positive integer, ensuring that all packets except the last segment have the same The size, the length of the last segment is not enough to fill in the zero, and the other coding form in the fountain code can also be used, which is not limited herein.
803、内容源提供的设备将该编码的数据包发送给转发节点,使得该转发节点将编码的数据包转发给内容源请求端设备,使得内容源请求端设备在接收到编码的数据包后,进行解码得到该数据块。803. The device provided by the content source sends the encoded data packet to the forwarding node, so that the forwarding node forwards the encoded data packet to the content source requesting device, so that the content source requesting device receives the encoded data packet. The decoding is performed to obtain the data block.
内容源提供端设备得到编码的数据包后,将该编码的数据包发送给转发节点,使得内容源请求端设备在接收到转发节点转发的编码的数据包后,进行解码得到与该兴趣报文相匹配的数据块。 After the content source provides the encoded data packet, the encoded data packet is sent to the forwarding node, so that the content source requesting device receives the encoded data packet forwarded by the forwarding node, and then decodes and obtains the interest packet. Matching data blocks.
可以理解的是,由于喷泉编码算法可以持续不断的产生新的编码的数据包,所以内容源提供端设备可以不停的发送新产生的编码的数据包到内容源请求端设备,直到发送到一定的数量或接收到停止发包通告等,才停止发送编码的数据包,停止的具体触发条件可以根据实际情况设定,此处不作限定。It can be understood that since the fountain encoding algorithm can continuously generate new encoded data packets, the content source providing end device can continuously send the newly generated encoded data packets to the content source requesting device until it is sent to a certain level. The number of the packets is not received until the packet is sent out, and the coded data packet is stopped. The specific trigger conditions for the stop can be set according to the actual situation.
该编码的数据包中可以包含有与该兴趣报文相匹配的数据块的编号,该数据块为组成一个内容的多个数据块中的一块,该编码的数据包中还可以包括该内容的内容名,喷泉编码的标识以及一个随机数,例如编码的数据包的包头可以携带有以…/content name/chunk number/LT/nonce格式定义的命名信息,其中,content_name为内容源请求端设备请求的内容的内容名,chunk_number为与该兴趣报文相匹配的数据块的编号,LT为使用喷泉编码中LT编码的标识,nonce为一个取值范围很大的随机数,多个数据块可以组成一个内容,可以理解的是,还可以采用其他的命名方式对各编码的数据包进行命名以区分开每个不同的编码的数据包,此处不做限定。The encoded data packet may include a number of a data block that matches the interest message, and the data block is one of a plurality of data blocks constituting a content, and the encoded data packet may further include the content. The content name, the identifier of the fountain code, and a random number, such as the header of the encoded data packet, may carry the naming information defined in the format of .../content name/chunk number/LT/nonce, where content_name is the content source requesting device request The content name of the content, chunk_number is the number of the data block matching the interest message, LT is the identifier of the LT code used in the fountain code, nonce is a random number with a large range of values, and multiple data blocks can be composed For a content, it can be understood that each encoded data packet may be named by another naming manner to distinguish each different encoded data packet, which is not limited herein.
本发明实施例中,内容源提供端设备可以接收转发节点转发的兴趣报文,再将编码的数据包转发给转发节点,使得转发节点发送给内容源请求端设备,这样,转发节点可以将兴趣报文转发给多个内容源提供端设备,使得多个内容源提供端设备同时提供编码的数据包,将编码的数据包发送给转发节点,使得转发节点之间可以互相转发该编码的数据包,使内容源请求端设备可以同时接收到多个设备提供的编码的数据包,提高了内容获取的效率。In the embodiment of the present invention, the content source providing end device may receive the interest message forwarded by the forwarding node, and then forward the encoded data packet to the forwarding node, so that the forwarding node sends the information to the content source requesting end device, so that the forwarding node may interest The message is forwarded to the plurality of content source providing end devices, so that the plurality of content source providing end devices simultaneously provide the encoded data packets, and the encoded data packets are sent to the forwarding node, so that the forwarding nodes can forward the encoded data packets to each other. The content source requesting device can simultaneously receive the encoded data packets provided by the plurality of devices, thereby improving the efficiency of content acquisition.
为便于理解,结合以上三个执行主体的操作,下面以一具体应用场景对本发明实施例中内容网络中多源分发的方法进行具体描述:For ease of understanding, in combination with the operations of the above three execution entities, a method for multi-source distribution in the content network in the embodiment of the present invention is specifically described below in a specific application scenario:
内容源请求端设备发送兴趣报文给转发节点,该兴趣报文的包头中携带有…/ABC/5的命名信息,表示请求内容名为ABC的内容中编号为5的数据块;The content source requesting device sends the interest message to the forwarding node, where the packet header of the interest message carries the naming information of .../ABC/5, indicating that the data block with the content name 5 in the content of the request content is ABC;
转发节点接收该兴趣报文,同时查找编码缓存区得到2个与该兴趣报文相匹配的编码的数据包,转发节点返回这2个编码的数据包给内容源请求端设备,并转发该兴趣报文给另外的转发节点与内容源提供端设备;The forwarding node receives the interest message, and searches for the code buffer to obtain two encoded data packets that match the interest message. The forwarding node returns the two encoded data packets to the content source requesting device, and forwards the interest. The message is sent to another forwarding node and the content source providing device;
内容源提供端设备接收转发节点转发的兴趣报文,保存有与兴趣报文相匹配的数据块的内容源提供端设备按照LT编码的规则,将该数据块分段并编码成编码的数据包,各编码的数据包的包头都携带有…/ABC/5/LT/nonce的命名 信息,nonce为一个取值范围很大的随机数,持续的发送给转发节点;The content source providing end device receives the interest message forwarded by the forwarding node, and the content source providing end device storing the data block matching the interest message segments and encodes the data block into the encoded data packet according to the LT encoding rule. The header of each encoded packet carries the name of .../ABC/5/LT/nonce Information, nonce is a random number with a large range of values, and is continuously sent to the forwarding node;
转发节点接收到带有LT标识的数据包即识别为编码的数据包,将编码的数据包按照本地缓存机制,例如LRU机制,将编码的数据包缓存到编码缓存区;The forwarding node receives the data packet with the LT identifier, that is, the data packet that is identified as encoded, and caches the encoded data packet into the encoding buffer according to a local caching mechanism, such as an LRU mechanism;
转发节点按照该兴趣报文的反向路径,将接收到的编码的数据包转发给内容源请求端设备,转发节点在此过程中,不执行任何丢包操作,过程中不清除编码的数据包的转发路径信息,例如PIT表中相应表项内容;The forwarding node forwards the received encoded data packet to the content source requesting end device according to the reverse path of the interest packet, and the forwarding node does not perform any packet loss operation during the process, and does not clear the encoded data packet during the process. Forwarding path information, such as the contents of corresponding entries in the PIT table;
内容源请求端设备持续的接收转发节点返回的编码的数据包;The content source requesting end device continuously receives the encoded data packet returned by the forwarding node;
当满足解码条件时,内容源请求端设备采用高斯消元法对接收到的编码的数据包进行解码,得到与兴趣报文相匹配数据块5;When the decoding condition is met, the content source requesting end device uses the Gaussian elimination method to decode the received encoded data packet, and obtains a data block 5 matching the interest message;
内容源请求端设备发出停止发包通告;The content source requesting device issues a stop sending notification;
转发节点接收到该停止发包通告后,停止兴趣报文的转发,并清除所有与该兴趣报文相匹配的编码的数据包以及转发路径信息;After receiving the notification of stopping the sending of the packet, the forwarding node stops the forwarding of the interest message, and clears all the encoded data packets and the forwarding path information that match the interest message;
内容源提供端设备接收到该停止发包通告后,停止对数据块编码并终止对编码的数据包的发送。After receiving the stop sending advertisement, the content source providing end device stops encoding the data block and terminates the sending of the encoded data packet.
下面分别对本发明实施例中的三个执行主体进行描述:The following three execution entities in the embodiments of the present invention are respectively described below:
一、请求端设备:First, the requesting device:
请参阅图9,本发明实施例中内容源请求端设备一个实施例包括:Referring to FIG. 9, an embodiment of a content source requesting device in an embodiment of the present invention includes:
第一发送模块901,用于发送兴趣报文到内容源提供端设备,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;The
第一接收模块902,用于接收所述内容源提供端设备提供的编码的数据包,所述编码的数据包是由所述内容源提供端设备将与所述兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对所述数据块分片编码得到的;The
解码模块903,用于对编码数据包集合进行解码,得到所述数据块,所述编码数据包集合中包括所述第一接收模块902接收到的编码的数据包。The
本发明实施例中第一发送模块901发送兴趣报文到内容源提供端设备后,第一接收模块902接收内容源提供端设备提供的编码的数据包,该编码的数据包是由内容源提供端设备将与该兴趣报文相匹配的数据块分段生成数据块分
片,并且使用喷泉编码算法对数据块分片编码得到的,所以第一接收模块902可以同时接收多个内容源提供端设备发送的编码的数据包,解码模块903对包括有接收到的编码的数据包的编码数据包集合进行解码,当满足编码条件时,解码模块903即可以解码成功得到该数据块,由于按照喷泉编码算法得到的编码的数据包的数量远大于数据块的数量,且编码的数据包互相之间相同的概率非常小,所以在一定时间内,内容源请求端设备从多个设备上获取的编码的数据包相同的概率远小于从多个设备上获取的数据块相同的概率,使得内容源请求端设备得到有效数据的概率增大,减少了获取足够有效数据的时间,提高了内容中心网络中内容的获取效率,网络链路中不再传输大量的重复数据,避免了链路资源的浪费。In the embodiment of the present invention, after the
实际应用中,内容源请求端设备得到数据块后,还可以发出停止发包通告停止其他设备对该数据块对应的编码包的转发,请参阅图10,本发明实施例中内容源请求端设备另一个实施例包括:In an actual application, after the content source requesting device obtains the data block, the content source requesting device may also send a stop packet notification to stop the forwarding of the encoded packet corresponding to the data block by another device. Referring to FIG. 10, in the embodiment of the present invention, the content source requesting device is additionally configured. One embodiment includes:
第一发送模块1001,用于发送兴趣报文到内容源提供端设备,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;The
第一接收模块1002,用于接收所述内容源提供端设备提供的编码的数据包,所述编码的数据包是由所述内容源提供端设备将与所述兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对所述数据块分片编码得到的;The
解码模块1003,用于对编码数据包集合进行解码,得到所述数据块,所述编码数据包集合中包括所述第一接收模块1002接收到的编码的数据包;The
本实施例中,该第一发送模块1001具体可以用于,发送所述兴趣报文给转发节点,使得所述转发节点转发所述兴趣报文给所述内容源提供端设备;In this embodiment, the
该第一接收模块1002具体可以用于,接收所述转发节点转发的编码的数据包,所述编码的数据包由所述内容源提供端设备发送给所述转发节点;The
该内容源请求端设备还包括:The content source requesting device further includes:
停止模块1004,用于停止接收所述编码的数据包,并发出停止发包通告,所述停止发包通告用于使得接收到所述停止发包通告的设备停止发送所述数据块对应的编码的数据包并清除所述编码的数据包的转发路径信息。
The stopping
本发明的一些实施例中,该解码模块1003具体用于,使用高斯消元法对所述编码数据包集合进行解码,得到所述数据块。In some embodiments of the present invention, the
本发明实施例中,解码模块1003在得到数据块后,停止模块1004停止接收编码的数据包,并发送停止发包通告使得其他设备停止发送该数据块对应的编码的数据包并清除编码数据包转发路径信息,节省了网络资源,提高了各设备进行后续处理的效率,并且解码模块1003利用高斯消元法进行解码,降低了度为1的编码的数据包对解码成功率的影响,提高了解码成功率。In the embodiment of the present invention, after the
图11为网络设备一个结构示意图,其可以为内容源请求端设备的结构示意图,也可以为转发节点的结构示意图,还可以为内容源提供端设备的结构示意图。FIG. 11 is a schematic structural diagram of a network device, which may be a schematic structural diagram of a content source requesting end device, a structural schematic diagram of a forwarding node, and a structural schematic diagram of an end device for a content source.
上面从单元化功能实体的角度对本发明实施例中的内容源请求端设备进行了描述,下面从硬件处理的角度对本发明实施例中的内容源请求端设备进行描述,请参阅图11,本发明实施例中的内容源请求端设备另一实施例包括:The content source requesting device in the embodiment of the present invention is described above from the perspective of the unitized functional entity. The content source requesting device in the embodiment of the present invention is described from the perspective of hardware processing. Referring to FIG. 11, the present invention is described. Another embodiment of the content source requesting device in the embodiment includes:
输入装置1101、输出装置1102、处理器1103和存储器1104(其中内容源请求端设备中的处理器1103的数量可以一个或多个,图11中以一个处理器1103为例)。在本发明的一些实施例中,输入装置901、输出装置1102、处理器1103和存储器1104可通过总线或其它方式连接,其中,图11中以通过总线连接为例。The
其中,通过调用存储器1104存储的操作指令,处理器1103,用于执行如下步骤:The
发送兴趣报文到内容源提供端设备,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;Sending the interest message to the content source providing end device, where the interest message carries the information of the data block requested by the content source requesting end device;
接收所述内容源提供端设备提供的编码的数据包,所述编码的数据包是由所述内容源提供端设备将与所述兴趣报文相匹配的数据块分段生成数据块分片,并且使用喷泉编码算法对所述数据块分片编码得到的;Receiving, by the content source providing end device, the encoded data packet, where the encoded data packet is a data block segmentation data block fragment that is matched by the content source providing end device with the interest message, And using the fountain coding algorithm to slice and encode the data block;
对编码数据包集合进行解码,得到所述数据块,所述编码数据包集合中包括接收到的编码的数据包;Decoding the encoded data packet set to obtain the data block, where the encoded data packet set includes the received encoded data packet;
本发明的一些实施例中,该处理器1103具体用于执行如下步骤:In some embodiments of the present invention, the
发送所述兴趣报文给转发节点,使得所述转发节点转发所述兴趣报文给所 述内容源提供端设备;Sending the interest message to the forwarding node, so that the forwarding node forwards the interest message to the Said content source providing end device;
接收所述转发节点转发的编码的数据包,所述编码的数据包由所述内容源提供端设备发送给所述转发节点;Receiving, by the forwarding source node, the encoded data packet, where the encoded data packet is sent by the content source provider device to the forwarding node;
本发明的一些实施例中,该处理器1103还用于执行如下步骤:In some embodiments of the present invention, the
停止接收所述编码的数据包,并发出停止发包通告,所述停止发包通告用于使得接收到所述停止发包通告的设备停止发送所述数据块对应的编码的数据包并清除所述编码的数据包的转发路径信息;Stop receiving the encoded data packet, and issue a stop sending packet advertisement, where the stop sending the packet advertisement is used to stop the device that receives the stop sending the packet notification from stopping sending the encoded data packet corresponding to the data block and clearing the encoded Forwarding path information of the data packet;
本发明的一些实施例中,该处理器1103具体用于执行如下步骤:In some embodiments of the present invention, the
使用高斯消元法对所述编码数据包集合进行解码,得到所述数据块。The encoded data packet set is decoded using a Gaussian elimination method to obtain the data block.
二、转发节点:Second, the forwarding node:
请参阅图12,本发明实施例中转发节点一个实施例包括:Referring to FIG. 12, an embodiment of a forwarding node in an embodiment of the present invention includes:
第二接收模块1201,用于接收内容源请求端设备发送的兴趣报文,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;The
第一转发模块1202,用于转发所述兴趣报文到内容源提供端设备,使得所述内容源提供端设备对与所述兴趣报文相匹配的数据块进行喷泉编码后返回编码的数据包给缓存模块1203;The
缓存模块1203,用于将所述内容源提供端设备返回的编码的数据包缓存到编码缓存区;The
第二转发模块1204,用于将所述内容源提供端设备返回的编码的数据包转发给所述内容源请求端设备,使得所述内容源请求端设备对编码数据包集合进行解码得到所述数据块,所述编码数据包集合中包括所述内容源请求端设备接收到的编码的数据包。a
本发明实施例中,缓存模块1203开辟专用于缓存编码的数据包的编码缓存区,使得可以通过缓存提高编码的数据包的利用率,从而提高了内容获取的效率。In the embodiment of the present invention, the
上面实施例中,第二接收模块1201接收到兴趣报文之后,第一转发模块1202转发该兴趣报文,在实际应用中,转发节点可以先查找编码缓存区是否存在与该兴趣报文相匹配的编码的数据包,再进行后续处理,请参阅图13,本发明实施例中转发节点另一个实施例包括:
In the above embodiment, after the
第二接收模块1301,用于接收内容源请求端设备发送的兴趣报文,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;The
第一转发模块1302,用于转发所述兴趣报文到内容源提供端设备,使得所述内容源提供端设备对与所述兴趣报文相匹配的数据块进行喷泉编码后返回编码的数据包给缓存模块;The
缓存模块1303,用于将所述内容源提供端设备返回的编码的数据包缓存到编码缓存区;a
第二转发模块1304,用于将所述内容源提供端设备返回的编码的数据包转发给所述内容源请求端设备,使得所述内容源请求端设备对编码数据包集合进行解码得到所述数据块,所述编码数据包集合中包括所述内容源请求端设备接收到的编码的数据包;a
本实施例中,该转发节点还包括:In this embodiment, the forwarding node further includes:
查找模块1305,用于查找所述编码缓存区中是否存在与所述兴趣报文相匹配的编码的数据包;The
第二发送模块1306,用于当所述编码缓存区中存在与所述兴趣报文相匹配的编码的数据包时,发送所述相匹配的编码的数据包给所述内容源请求端设备。The
本发明实施例中,在转发兴趣报文之前,查找模块1305可以查找编码缓存区中是否存在有与该兴趣报文相匹配的编码的数据包,若有则第二发送模块1306可以先将该编码的数据包发送给内容源请求端设备,使得请求端设备能更快的得到足以进行解码的编码的数据包,提高了获取内容的效率。In the embodiment of the present invention, before forwarding the interest message, the
上面从单元化功能实体的角度对本发明实施例中的转发节点进行了描述,下面从硬件处理的角度对本发明实施例中的转发节点进行描述,请参阅图11,本发明实施例中的转发节点另一实施例包括:The forwarding node in the embodiment of the present invention is described above from the perspective of the unitized functional entity. The following describes the forwarding node in the embodiment of the present invention from the perspective of hardware processing. Referring to FIG. 11, the forwarding node in the embodiment of the present invention is described. Another embodiment includes:
输入装置1101、输出装置1102、处理器1103和存储器1104(其中转发节点中的处理器1103的数量可以一个或多个,图11中以一个处理器1103为例)。在本发明的一些实施例中,输入装置901、输出装置1102、处理器1103和存储器1104可通过总线或其它方式连接,其中,图11中以通过总线连接为例。The
其中,通过调用存储器1104存储的操作指令,处理器1103,用于执行如
下步骤:The
接收内容源请求端设备发送的兴趣报文,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;Receiving an interest message sent by the content source requesting end device, where the interest message carries information of the data block requested by the content source requesting end device;
转发所述兴趣报文到内容源提供端设备,使得所述内容源提供端设备对与所述兴趣报文相匹配的数据块进行喷泉编码后返回编码的数据包给缓存模块;Forwarding the interest message to the content source providing end device, so that the content source providing end device performs fountain coding on the data block matching the interest message, and returns the encoded data packet to the cache module;
将所述内容源提供端设备返回的编码的数据包缓存到编码缓存区;Caching the encoded data packet returned by the content source providing end device to the encoding buffer area;
将所述内容源提供端设备返回的编码的数据包转发给所述内容源请求端设备,使得所述内容源请求端设备对编码数据包集合进行解码得到所述数据块,所述编码数据包集合中包括所述内容源请求端设备接收到的编码的数据包;Forwarding the encoded data packet returned by the content source providing end device to the content source requesting end device, so that the content source requesting end device decodes the encoded data packet set to obtain the data block, and the encoded data packet The set includes the encoded data packet received by the content source requesting end device;
本发明的一些实施例中,该处理器1103还用于执行如下步骤:In some embodiments of the present invention, the
查找所述编码缓存区中是否存在与所述兴趣报文相匹配的编码的数据包;Finding, in the encoding buffer, whether there is an encoded data packet that matches the interest message;
当所述编码缓存区中存在与所述兴趣报文相匹配的编码的数据包时,发送所述相匹配的编码的数据包给所述内容源请求端设备。And when the encoded data packet matching the interest message exists in the encoding buffer, the matched encoded data packet is sent to the content source requesting end device.
三、内容源提供端设备:Third, the content source provider device:
请参阅图14,本发明实施例中内容源提供端一个实施例包括:Referring to FIG. 14, an embodiment of the content source providing end in the embodiment of the present invention includes:
第三接收模块1401,用于接收内容源请求端设备发出的兴趣报文,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;The
编码模块1402,用于按照预置规则将与所述兴趣报文相匹配的数据块分段生成数据块分片,按喷泉编码算法对所述数据块分片进行编码,得到编码的数据包;The
第三发送模块1403,用于将所述编码模块1402得到的编码的数据包发送到内容源请求端设备,使得所述内容源请求端设备在接收到编码的数据包后,进行解码得到所述数据块;The
本发明的一些实施例中,该第三接收模块1401具体用于,接收转发节点发送的所述兴趣报文,所述兴趣报文由所述内容源请求端设备发送给所述转发节点;In some embodiments of the present invention, the
该第三发送模块1403具体用于,将所述编码的数据包发送给所述转发节点,使得所述转发节点将所述编码的数据包转发给所述内容源请求端设备,使
得所述内容源请求端设备在接收到编码的数据包后,进行解码得到所述数据块。The
本发明实施例中,第三接收模块1401接收到兴趣报文后,编码模块1402对与该兴趣报文相匹配的数据块进行喷泉编码,第三发送模块1403将得到的编码的数据包发送出去,这样多个提供端设备同时发送编码的数据包时,使得各提供者之间无需协作,但是实现了多节点协作形式的内容发送,在每个提供者完成内容发送的同时,降低了每个内容源提供端设备需要发包的个数。In the embodiment of the present invention, after the
上面从单元化功能实体的角度对本发明实施例中的内容源提供端设备进行了描述,下面从硬件处理的角度对本发明实施例中的内容源提供端设备进行描述,请参阅图11,本发明实施例中的内容源提供端设备另一实施例包括:The content source providing end device in the embodiment of the present invention is described above from the perspective of the unitized functional entity. The content source providing end device in the embodiment of the present invention is described from the perspective of hardware processing. Referring to FIG. 11, the present invention is described. Another embodiment of the content source provider device in the embodiment includes:
输入装置1101、输出装置1102、处理器1103和存储器1104(其中转发节点中的处理器1103的数量可以一个或多个,图11中以一个处理器1103为例)。在本发明的一些实施例中,输入装置901、输出装置1102、处理器1103和存储器1104可通过总线或其它方式连接,其中,图11中以通过总线连接为例。The
其中,通过调用存储器1104存储的操作指令,处理器1103,用于执行如下步骤:The
接收内容源请求端设备发出的兴趣报文,所述兴趣报文中携带所述内容源请求端设备请求的数据块的信息;And receiving, by the content source, the information packet sent by the requesting device, where the interest message carries the information of the data block requested by the content source requesting device;
按照预置规则将与所述兴趣报文相匹配的数据块分段生成数据块分片,按喷泉编码算法对所述数据块分片进行编码,得到编码的数据包;And the data block segment matching the interest message is segmented to generate a data block fragment according to a preset rule, and the data block fragment is encoded according to a fountain coding algorithm to obtain an encoded data packet;
将该编码的数据包发送到内容源请求端设备,使得所述内容源请求端设备在接收到编码的数据包后,进行解码得到所述数据块。And sending the encoded data packet to the content source requesting end device, so that the content source requesting end device, after receiving the encoded data packet, performs decoding to obtain the data block.
本发明的一些实施例中,该处理器1103具体用于执行如下步骤:In some embodiments of the present invention, the
接收转发节点发送的所述兴趣报文,所述兴趣报文由所述内容源请求端设备发送给所述转发节点;Receiving the interest message sent by the forwarding node, where the interest message is sent by the content source requesting end device to the forwarding node;
将所述编码的数据包发送给所述转发节点,使得所述转发节点将所述编码的数据包转发给所述内容源请求端设备,使得所述内容源请求端设备在接收到编码的数据包后,进行解码得到所述数据块。Transmitting the encoded data packet to the forwarding node, so that the forwarding node forwards the encoded data packet to the content source requesting end device, so that the content source requesting end device receives the encoded data After the packet, decoding is performed to obtain the data block.
下面对本发明实施例中内容分发系统进行说明,请参与图15,本发明实 施例中内容分发系统一个实施例包括:The content distribution system in the embodiment of the present invention is described below. Please participate in FIG. An embodiment of the content distribution system in the embodiment includes:
图9或图10所示的内容源请求端设备1501,图12或图13所示的转发节点1502,和图14所示的内容源提供端设备1503。The content source requesting
为了便于理解上述实施例,下面以上述内容分发系统各个设备在一个具体应用场景中的交互过程进行说明:In order to facilitate the understanding of the foregoing embodiments, the following describes the interaction process of each device in the content distribution system in a specific application scenario:
内容源请求端设备1501发送兴趣报文给转发节点1502,该兴趣报文的包头中携带有…/ABC/5的命名信息,表示请求内容名为ABC的内容中编号为5的数据块;The content source requesting
转发节点1502接收该兴趣报文,同时查找编码缓存区得到2个与该兴趣报文相匹配的编码的数据包,转发节点1502返回这2个编码的数据包给内容源请求端设备1501,并转发该兴趣报文给另外的转发节点与内容源提供端设备1503;The forwarding
内容源提供端设备1503接收转发节点1502转发的兴趣报文,保存有与兴趣报文相匹配的数据块的内容源提供端设备1503按照LT编码的规则,将该数据块分段并编码成编码的数据包,各编码的数据包的包头都携带有…/ABC/5/LT/nonce的命名信息,nonce为一个取值范围很大的随机数,持续的发送给转发节点1502;The content
转发节点1502接收到带有LT标识的数据包即识别为编码的数据包,将编码的数据包按照本地缓存机制,例如LRU机制,将编码的数据包缓存到编码缓存区;The forwarding
转发节点1502按照该兴趣报文的反向路径,将接收到的编码的数据包转发给内容源请求端设备1501,转发节点1502在此过程中,不执行任何丢包操作,过程中不清除编码的数据包的转发路径信息,例如PIT表中相应表项内容;The forwarding
内容源请求端设备1501持续的接收转发节点1502返回的编码的数据包;The content source requesting
当满足解码条件时,内容源请求端设备1501采用高斯消元法对接收到的编码的数据包进行解码,得到与兴趣报文相匹配数据块5;When the decoding condition is met, the content source requesting
内容源请求端设备1501发出停止发包通告;The content source requesting
转发节点1502接收到该停止发包通告后,停止兴趣报文的转发,并清除所有与该兴趣报文相匹配的编码的数据包以及转发路径信息;
After receiving the notification of the stop sending the packet, the forwarding
内容源提供端设备1503接收到该停止发包通告后,停止对数据块编码并终止对编码的数据包的发送。After receiving the stop-sending announcement, the content source providing
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。A person skilled in the art can clearly understand that for the convenience and brevity of the description, the specific working process of the system, the device and the unit described above can refer to the corresponding process in the foregoing method embodiment, and details are not described herein again.
在本申请所提供的几个实施例中,应该理解到,所披露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。In the several embodiments provided herein, it should be understood that the disclosed systems, devices, and methods may be implemented in other ways. For example, the device embodiments described above are merely illustrative. For example, the division of the unit is only a logical function division. In actual implementation, 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. In addition, 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.
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。In addition, 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 above integrated unit can be implemented in the form of hardware or in the form of a software functional unit.
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。 The integrated unit, if implemented in the form of a software functional unit and sold or used as a standalone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present invention, which is essential or contributes to the prior art, or all or part of the technical solution, may be embodied in the form of a software product stored in a storage medium. A number of instructions are included 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. .
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。 The above embodiments are only used to illustrate the technical solutions of the present invention, and are not intended to be limiting; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art will understand that The technical solutions described in the embodiments are modified, or the equivalents of the technical features are replaced by the equivalents of the technical solutions of the embodiments of the present invention.
Claims (18)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410197163.3 | 2014-05-09 | ||
CN201410197163.3A CN105100008B (en) | 2014-05-09 | 2014-05-09 | The method and relevant device of content distribution in content center network |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015169074A1 true WO2015169074A1 (en) | 2015-11-12 |
Family
ID=54392092
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2014/090669 WO2015169074A1 (en) | 2014-05-09 | 2014-11-10 | Method and related device for distributing contents in content-centric network |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN105100008B (en) |
WO (1) | WO2015169074A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022126303A1 (en) * | 2020-12-14 | 2022-06-23 | Qualcomm Incorporated | Wireless communications based on rateless codes and layered modulation |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107483349A (en) * | 2016-06-07 | 2017-12-15 | 华为技术有限公司 | Method and device for transmitting data stream |
CN108076144B (en) * | 2017-12-03 | 2020-09-11 | 北京邮电大学 | A Fair Cache Algorithm and Device for Content-Centric Networks |
CN114254757B (en) * | 2020-09-24 | 2024-08-06 | 香港理工大学深圳研究院 | Distributed deep learning method and device, terminal equipment and storage medium |
CN115834574B (en) * | 2023-02-16 | 2023-05-09 | 鹏城实验室 | Data coding transmission method, device, equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101277248A (en) * | 2007-03-26 | 2008-10-01 | 刘军波 | Method and system for distributing network data |
US20100094950A1 (en) * | 2008-10-15 | 2010-04-15 | Patentvc Ltd. | Methods and systems for controlling fragment load on shared links |
US20100094955A1 (en) * | 2008-10-15 | 2010-04-15 | Patentvc Ltd. | Methods and systems for using a distributed storage to its maximum bandwidth |
WO2011150644A1 (en) * | 2010-12-17 | 2011-12-08 | 华为技术有限公司 | Method and apparatus for acquiring and transmitting streaming media data in the process of initiation |
-
2014
- 2014-05-09 CN CN201410197163.3A patent/CN105100008B/en not_active Expired - Fee Related
- 2014-11-10 WO PCT/CN2014/090669 patent/WO2015169074A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101277248A (en) * | 2007-03-26 | 2008-10-01 | 刘军波 | Method and system for distributing network data |
US20100094950A1 (en) * | 2008-10-15 | 2010-04-15 | Patentvc Ltd. | Methods and systems for controlling fragment load on shared links |
US20100094955A1 (en) * | 2008-10-15 | 2010-04-15 | Patentvc Ltd. | Methods and systems for using a distributed storage to its maximum bandwidth |
WO2011150644A1 (en) * | 2010-12-17 | 2011-12-08 | 华为技术有限公司 | Method and apparatus for acquiring and transmitting streaming media data in the process of initiation |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022126303A1 (en) * | 2020-12-14 | 2022-06-23 | Qualcomm Incorporated | Wireless communications based on rateless codes and layered modulation |
Also Published As
Publication number | Publication date |
---|---|
CN105100008A (en) | 2015-11-25 |
CN105100008B (en) | 2018-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103988458B (en) | The method of coding network message in network based on content center network | |
US8681813B2 (en) | Bandwidth optimization for remote desktop protocol | |
KR102123933B1 (en) | Stream-based data deduplication in a multi-tenant shared infrastructure using asynchronous data dictionaries | |
US10491657B2 (en) | Network acceleration method, apparatus and device based on router device | |
WO2015169074A1 (en) | Method and related device for distributing contents in content-centric network | |
US20210227007A1 (en) | Data storage method, encoding device, and decoding device | |
US10630758B2 (en) | Method and system for fulfilling server push directives on an edge proxy | |
CN103747083B (en) | A kind of content delivery method based on CCN | |
CN103370917B (en) | Message treatment method and server | |
CN103516757B (en) | Content processing method, Apparatus and system | |
US11461276B2 (en) | Method and device for deduplication | |
CN104604189A (en) | Efficient presence distribution mechanism for a large enterprise | |
WO2013078797A1 (en) | Network file transmission method and system | |
CN105074688B (en) | Use the data deduplication based on stream of peer node figure | |
CN112243028A (en) | Content distribution network data transmission method and device | |
CN104113599B (en) | A kind of caching method, device and proxy server | |
WO2013091345A1 (en) | Wireless webpage browsing resources optimization method, apparatus and system | |
CN104113545B (en) | Stream media system and its application method under information centre's network | |
CN114547214A (en) | Long-link data processing method, device and equipment | |
CN106856456A (en) | The processing method and system of cache cluster service | |
WO2018000647A1 (en) | Method, device, terminal, and server for file downloading | |
US9609079B1 (en) | Methods for improved cache maintenance and devices thereof | |
CN110581883B (en) | Content distribution method, content distribution device, content request device, and routing node | |
CN106487890A (en) | A kind of cross-node communication network requesting method based on XMPP | |
CN105681892A (en) | Differential data transmission method, device and system |
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: 14891394 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 14891394 Country of ref document: EP Kind code of ref document: A1 |