CN115834574A - Data coding transmission method, device, equipment and storage medium - Google Patents

Data coding transmission method, device, equipment and storage medium Download PDF

Info

Publication number
CN115834574A
CN115834574A CN202310121426.1A CN202310121426A CN115834574A CN 115834574 A CN115834574 A CN 115834574A CN 202310121426 A CN202310121426 A CN 202310121426A CN 115834574 A CN115834574 A CN 115834574A
Authority
CN
China
Prior art keywords
data
data block
interest packet
transmission port
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202310121426.1A
Other languages
Chinese (zh)
Other versions
CN115834574B (en
Inventor
刘室求
钟晓雄
吕建辉
张伟哲
张宇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Peng Cheng Laboratory
Original Assignee
Peng Cheng Laboratory
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Peng Cheng Laboratory filed Critical Peng Cheng Laboratory
Priority to CN202310121426.1A priority Critical patent/CN115834574B/en
Publication of CN115834574A publication Critical patent/CN115834574A/en
Application granted granted Critical
Publication of CN115834574B publication Critical patent/CN115834574B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a data coding transmission method, a device, equipment and a storage medium, belonging to the technical field of communication, wherein the method comprises the following steps: sending each first interest packet to a named data network through a transmission port, and receiving a first coding data block returned by the transmission port based on each first interest packet; determining a data return state of the transmission port, sending each second interest packet to the named data network according to the data return state, and receiving a second coded data block returned by the transmission port based on each second interest packet; and determining a data block collection state of the client according to the first coding data block and the second coding data block, and recovering the original data file based on the data block collection state. The invention collects the file content blocks in the named data network by requesting the coding data blocks, thereby realizing the technical effect of improving the data transmission efficiency.

Description

Data coding transmission method, device, equipment and storage medium
Technical Field
The present invention relates to the field of communications technologies, and in particular, to a data encoding and transmitting method, apparatus, device, and storage medium.
Background
With the rapid development of the Internet, multimedia services occupy most of the traffic of the existing network, and the existing network architecture that realizes end-to-end communication with an IP (Internet Protocol) address as a core faces a series of problems of redundant transmission, security, and the like when transmitting services mainly based on content distribution, so a Named Data Network (NDN) is proposed and becomes a hot point of research.
However, the NDN architecture itself still has a series of problems. In the NDN, a client acquires the content of a server in a request sending mode, but the content block of the current NDN is too small, so that the client needs to send a large number of interest packages to acquire a complete content. Increasing the content block can solve the above problem, but the reliability is reduced and the time delay for waiting for retransmission is increased due to the increased probability of packet loss. Therefore, the current encoding transmission method has the problem of low transmission efficiency.
Disclosure of Invention
The invention mainly aims to provide a data coding transmission method, a data coding transmission device, data coding transmission equipment and a data coding transmission storage medium, and aims to solve the problem of low transmission efficiency of a coding transmission mode in an NDN (named data networking) architecture.
In order to achieve the above object, the present invention provides a data encoding and transmitting method, including:
sending each first interest packet to a named data network through a transmission port, and receiving a first coding data block returned by the transmission port based on each first interest packet;
determining a data return state of the transmission port, sending each second interest packet to the named data network according to the data return state, and receiving a second coded data block returned by the transmission port based on each second interest packet;
and determining a data block collection state of the client according to the first coding data block and the second coding data block, and recovering the original data file based on the data block collection state.
Optionally, before the step of sending each first interest packet to a named data network through a transmission port, and receiving a first encoded data block returned by the transmission port based on each first interest packet, the method further includes:
establishing communication connection between a client and a server through the transmission port, and acquiring coding information of an original data file in the server based on the communication connection;
and generating each first interest packet according to the coding information.
Optionally, the step of sending each first interest packet to the named data network through the transmission port includes:
identifying the communication type of the transmission port, and identifying the transmission port according to the communication type to obtain port identification information;
and distributing a corresponding first interest packet to the transmission port according to the port identification information, and sending the corresponding first interest packet to the server through the transmission port.
Optionally, the step of determining the data return status of the transmission port includes:
if the transmission port receives the first coded data block in a preset time period, determining that the data return state is normal return;
if the transmission port receives the first coded data block and the preset time period is exceeded, determining that the data return state is abnormal return;
and if the transmission port does not receive the first encoding data block within a preset time period and resends the first interest packet, determining that the data return state is abnormal and not returned.
Optionally, the step of sending each second interest packet to the named data network according to the data return state includes:
if the data return state is normal return, determining the current data block request state, generating a second interest packet according to the current data block request state, and sending the second interest packet to a server;
if the data return state is abnormal return, the first interest packet is sent to the server again;
and if the data return state is abnormal and not returned, generating a second interest packet according to the current data block request state and a preset routing cache rule, and sending the second interest packet to a server.
Optionally, the step of determining a data block collection status of the client according to the first encoded data block and the second encoded data block includes:
sequentially recording the receiving quantity of the first coding data block and the second coding data block in each data coding group;
and if the receiving quantity reaches a preset quantity, determining that the data block collection state is collection completion.
Optionally, the step of restoring the original data file based on the data block collection state includes:
and if the data block collection state is collection completion, restoring the first coded data block and the second coded data block into the original data file according to a preset coding rule.
In addition, to achieve the above object, the present invention further provides a data encoding and transmitting apparatus, including:
the sending module is used for sending each first interest packet to a named data network through a transmission port and receiving a first coding data block returned by the transmission port based on each first interest packet;
the determining module is used for determining the data return state of the transmission port, sending each second interest packet to the named data network according to the data return state, and receiving a second coding data block returned by the transmission port based on each second interest packet;
and the recovery module is used for determining the data block collection state of the client according to the first coding data block and the second coding data block and recovering the original data file based on the data block collection state.
In addition, to achieve the above object, the present invention also provides an electronic device including: a memory, a processor and a data encoding transmission program stored on the memory and executable on the processor, the data encoding transmission program being configured to implement the steps of the data encoding transmission method as described above.
Furthermore, to achieve the above object, the present invention also provides a computer readable storage medium having stored thereon a data encoding transmission program, which when executed by a processor, implements the steps of the data encoding transmission method as described above.
The data coding transmission method provided by the invention comprises the steps of sending each first interest packet to a named data network through a transmission port, receiving a first coding data block returned by the transmission port based on each first interest packet, determining the data return state of the transmission port, sending each second interest packet to the named data network according to the data return state, receiving a second coding data block returned by the transmission port based on each second interest packet, determining the data block collection state of a client according to the first coding data block and the second coding data block, and recovering an original data file based on the data block collection state. The original data file is encoded into a plurality of encoded data blocks, the client can collect file content blocks in the named data network by requesting the encoded data blocks, the client can restore the encoded data blocks into the original data file after collecting enough encoded data blocks, complete file content is obtained, the return of all the encoded data blocks is not required, the time delay of obtaining the complete file is effectively reduced, and the data transmission efficiency is improved.
Drawings
Fig. 1 is a schematic structural diagram of an electronic device in a hardware operating environment according to an embodiment of the present invention;
FIG. 2 is a flowchart illustrating a data encoding transmission method according to a first embodiment of the present invention;
FIG. 3 is a schematic diagram of an encoding process involved in the data encoding and transmitting method of the present invention;
fig. 4 is a schematic view of a scenario for sending a first interest packet according to the data encoding transmission method of the present invention;
fig. 5 is a schematic view of a scenario in which a server returns an encoded data block according to the data encoding transmission method of the present invention;
FIG. 6 is a flowchart illustrating a data encoding transmission method according to a second embodiment of the present invention;
fig. 7 is a schematic view of a scenario of a data return state of a transmission port according to the data encoding transmission method of the present invention;
fig. 8 is a schematic diagram of a data encoding and transmitting device according to the present invention.
The implementation, functional features and advantages of the objects of the present invention will be further explained with reference to the accompanying drawings.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Referring to fig. 1, fig. 1 is a schematic structural diagram of an electronic device in a hardware operating environment according to an embodiment of the present invention.
As shown in fig. 1, the electronic device may include: a processor 1001, such as a Central Processing Unit (CPU), a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005. Wherein a communication bus 1002 is used to enable connective communication between these components. The user interface 1003 may include a Display (Display), an input unit such as a Keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface, a wireless interface. The network interface 1004 may optionally include a standard wired interface, a WIreless interface (e.g., a WIreless-FIdelity (WI-FI) interface). The Memory 1005 may be a Random Access Memory (RAM) Memory, or may be a Non-Volatile Memory (NVM), such as a disk Memory. The memory 1005 may alternatively be a storage device separate from the processor 1001.
Those skilled in the art will appreciate that the configuration shown in fig. 1 does not constitute a limitation of the electronic device, and may include more or fewer components than those shown, or some components may be combined, or a different arrangement of components.
As shown in fig. 1, a memory 1005, which is a storage medium, may include an operating system, a network communication module, a user interface module, and a data encoding transmission program therein.
In the electronic device shown in fig. 1, the network interface 1004 is mainly used for data communication with other devices; the user interface 1003 is mainly used for data interaction with a user; the processor 1001 and the memory 1005 in the electronic device according to the present invention may be disposed in the electronic device, and the electronic device calls the data encoding transmission program stored in the memory 1005 through the processor 1001 and executes the data encoding transmission method provided by the embodiment of the present invention.
An embodiment of the present invention provides a data encoding transmission method, and referring to fig. 2, fig. 2 is a flowchart illustrating a first embodiment of a data encoding transmission method according to the present invention.
In this embodiment, the data encoding and transmitting method includes:
step S10, each first interest packet is sent to a named data network through a transmission port, and a first coding data block returned by the transmission port based on each first interest packet is received;
the execution subject of this embodiment is a client device, and the specific implementation form of the client device is not limited in this embodiment, for example, the client device may be a personal computer, a desktop computer, a tablet computer, or a smart phone. In the NDN, in addition to the client, a server and a routing node may be included, where the server may be a server, and the routing node may be a device such as a router, a gateway, and a switch. The client and the server can communicate through the routing node.
The NDN can divide original content into a plurality of content blocks, uniquely name the content blocks, and perform routing and content matching by using the content names as indexes, thereby realizing separation of content and positions. In addition, the NDN can directly hit and return the subsequent content request at the router side through an in-network cache mechanism, thereby reducing the repeated flow in the network and reducing the acquisition delay of the user. Based on the problem of undersize content blocks in the NDN architecture, some researchers propose that a network coding mode is utilized, a user does not request a specific data block any more, but requests any coding block in a specific data content segment, a certain number of linear irrelevant coding blocks are received from a network, and the user can decode the original content. However, this way of requesting multiple content blocks with one interest request increases the difficulty of system implementation. In order to solve the above problems in the encoding process, this embodiment uses an MDS (Maximum Distance Separable) code to perform encoding transmission.
Before the client requests data, the server can use an MDS code to encode an original data file, a code rate R = k/n (k represents a packet size, and n represents the number of encoded data blocks in each group) can be determined according to the number of ports in the NDN in the encoding process, and the encoded file data is stored in the server in a segmented mode. Fig. 3 is a schematic diagram of an encoding process, as shown in fig. 3, a file represents an original data file, S1, S2 and S3 represent packet data blocks, and E1, E2, E3, E4 and E5 represent encoded data blocks, and the encoding process of the server may include the following steps.
Step i, segmenting the original data file according to the MTU (Maximum Transmission Unit) of the link in the NDN, wherein the number of the data blocks in the scoring segment is P.
And step ii, the server determines the packet size k according to the number of available ports, and generates a coding matrix G with k rows and n columns meeting the MDS property in the finite field GF (q), wherein the generating matrix G can be constructed by applying a Van der Monte matrix.
Step iii, grouping every k original segmented data blocks into a group; if P can not be divided by k, adding all-zero data blocks to the last group to complement to k, and generating
Figure SMS_1
The data blocks of the group are grouped together,
Figure SMS_2
indicating a ceiling operation.
And iv, encoding each group containing k original data blocks by using the encoding matrix G to form encoded data blocks, and generating n encoded data blocks by each k group.
V, the server stores the coded data block, in total
Figure SMS_3
Group coding data blocks, each group containing n coding data blocks; hierarchically naming each coded data block in each group, e.g. of
Figure SMS_4
Group encoding the first of the data blocks
Figure SMS_5
The name prefix of each data block is i/j.
After the server stores the encoded data block, the client can obtain the file content block by requesting the data block. By adopting an MDS code encoding mode, each request interest packet can correspond to an independent content block, and the one-to-many problem caused by a network encoding method can be effectively avoided.
The transmission port can be regarded as a routing node in the NDN, and interest packets and data packets in the NDN can be transmitted between the client and the server through the transmission port. The first interest packet refers to an interest packet that a client requests a server for data to be sent, each first interest packet may correspond to a first encoded data block requested to be stored in the server, and the first encoded data block refers to an encoded data block corresponding to the first interest packet. Different first interest packets may be distinguished by their name prefixes, and each first interest packet may be sent into the NDN through a single transmission port. After the first interest packet arrives at the server, the server can search for a corresponding first encoded data block according to the prefix name in the first interest packet, encapsulate the first encoded data block in the first data packet, and transmit the first encoded data block back to the transmission port, and the client receives the first data packet through the transmission port to obtain the first encoded data block. The embodiment of sending the first interest packet is not limited in this embodiment, for example, the client may randomly allocate the first interest packet that needs to be sent to different transmission ports and send the first interest packet to the NDN.
In a possible implementation manner, before the step of sending each first interest packet to the named data network through the transmission port, and receiving the first encoded data block returned by the transmission port based on each first interest packet, the method may further include:
step a, establishing communication connection between a client and a server through the transmission port, and acquiring coding information of an original data file in the server based on the communication connection;
the transmission ports used in this embodiment may be located in the same routing device, for example, if the client is connected to a router, the transmission ports are various data interfaces of the router, and the router also belongs to a routing node in the NDN. The raw data file refers to the content file that the client wants to request. The encoding information refers to information related to the operation of the server for encoding and storing the original data file, and the encoding information may include an encoding rule used by the server, information of the number of encoded data blocks, and grouping information of the encoded data blocks. In the NDN, the client and the server may establish a communication connection in a handshake manner, and negotiate encoding information in the process of establishing the communication connection.
And b, generating each first interest packet according to the coding information.
The client can know the encoding condition of the original data file through the encoding information, for example, how many groups the encoded data blocks are divided into, and how many encoded data blocks are included in each group, so that the first interest packet can be generated according to the name prefix of the encoded data blocks which are not requested.
In a possible embodiment, the step of sending each first interest packet to the named data network through the transmission port may include:
c, identifying the communication type of the transmission port, and identifying the transmission port according to the communication type to obtain port identification information;
the transmission ports may be located in the same routing device or may have different communication types. The communication type refers to a type of communication mode used by the transmission port, for example, the communication type may include at least one of Wi-Fi, 5G, and bluetooth. The number of transmission ports per communication type may be plural. The port identification information refers to information used by the client to distinguish different transmission ports. The client can identify the transmission port in a numbering mode. The client can know the information such as the number of transmission ports, the communication type and the like through the port identification information.
D, distributing a corresponding first interest packet to the transmission port according to the port identification information, and sending the corresponding first interest packet to the server through the transmission port.
The client may determine, according to the number of the transmission ports, the number of the first interest packets to be sent, for example, when there are 3 transmission ports in the NDN, the client sends, to each transmission port, the first interest packet requesting different first encoded data blocks, and the transmission ports forward, according to the routing information in the first interest packet, the first interest packet to the next routing node, and finally reach the server.
Fig. 4 is a schematic view of a scenario in which a client sends a first interest packet, in fig. 4, each group includes 5 encoded data blocks E1, E2, E3, E4, and E5 to be requested, a router connected to the client includes 3 transmission ports, which are port 1, port 2, and port 3, respectively, transmission paths of the transmission ports are different, the client sends the first interest packet to the router, each transmission port is assigned to a different first interest packet, and the first interest packet reaches a next routing node through a transmission path corresponding to the transmission port, and is transmitted in an NDN through a subsequent routing node to reach a server. The interest package request corresponding to the port 1 is 1\ E1, which represents the 1 st encoded data block of the 1 st group, the interest package request corresponding to the port 2 is 1\ E2, which represents the 2 nd encoded data block of the 1 st group, and the interest package request corresponding to the port 3 is 1\ E3, which represents the 3 rd encoded data block of the 1 st group.
Step S20, determining a data return state of the transmission port, sending each second interest packet to the named data network according to the data return state, and receiving a second coded data block returned by the transmission port based on each second interest packet;
the data return state refers to a state that whether the transmission port receives the first encoded data block returned by the server. The embodiment of determining the data return status is not limited, for example, the client may determine the data return status according to whether the first encoded data block is received. Fig. 5 is a schematic view of a scenario in which a server returns an encoded data block, as shown in fig. 5, the server returns a first data packet including the first encoded data block to a client according to a first interest packet, in a transmission path of a port 1, the port 1 does not receive the encoded data block E1, a data return state of the port 1 is abnormal, in transmission paths of a port 2 and a port 3, the port 2 receives the encoded data block E2, the port 3 receives the encoded data block E3, and data return states are both normal.
For a port with a normal data return status, a second interest packet requesting a second encoded data block that has not been collected may then be sent. The second interest packet refers to an interest packet that the client requests the server for data and is not yet sent, each second interest packet may correspond to a second encoded data block requested to be stored in the server, and the second encoded data block refers to an encoded data block corresponding to the second interest packet. For the transmission port with the abnormal data return state, the first interest packet can be continuously sent to request the first coding data block which is not received. The processing procedure after the transmission port receives the second encoded data block refers to the processing procedure of the first encoded data block.
And step S30, determining the data block collection state of the client according to the first coding data block and the second coding data block, and recovering the original data file based on the data block collection state.
The data block collection status refers to whether the client has collected enough encoded blocks to be used to recover the original data file. For different encoding modes, the data block collection states meeting the requirement of recovering the original data file are different, for example, in some encoding modes, for an original data file divided into n data blocks, a client needs to collect n encoding blocks to recover the original data file. If the data block collection state meets the corresponding condition, the client can recover the original data file by using the collected first encoding data block and the second encoding data block and adopting a method corresponding to the encoding mode of the server.
In a possible implementation, the step of determining a data block collection status of the client from the first coded data block and the second coded data block may include:
e, recording the receiving quantity of the first coded data block and the second coded data block in each data coding group in sequence;
for an original data file encoded by adopting an MDS code, encoding data blocks can be grouped in an encoding stage, and in the process of requesting the encoding data blocks by a client, each encoding data block can be requested according to the sequence of the group, so that when the collection state of the data blocks is determined, the receiving number of the encoding data blocks in each group can be recorded in sequence according to the sequence of the group.
And f, if the receiving quantity reaches a preset quantity, determining that the data block collection state is the collection completion state.
According to the maximum distance separable property of the MDS codes, the original data file adopting an MDS code encoding mode is adopted, if n encoded data blocks are generated after encoding, the client can recover the original data file only by receiving k encoded data blocks, and the preset number can be set to be k. The collection complete status indicates that the number of received encoded data blocks satisfies the condition for restoring the original data file. The preset number may be adjusted according to the adopted coding mode, which is not limited in this embodiment.
If the receiving quantity does not reach the preset quantity, the client can continue to send the interest packets and request the unreceived coded data blocks until the quantity of the collected coded data blocks reaches the preset quantity.
In a possible embodiment, the step of restoring the original data file based on the data block collection status may include:
and g, if the data block collection state is collection completion, restoring the first coded data block and the second coded data block into the original data file according to a preset coding rule.
The data block collection status is collection complete, indicating that the client has collected a sufficient number of encoded data blocks. The preset encoding rule can be obtained according to the communication connection between the client and the server, the encoding rule refers to a rule used by the server for encoding the original data file, and the encoding rule can be contained in the encoding information. And restoring the collected first coded data block and the second coded data block into an original data file according to the maximum distance separable property of the MDS code.
In this embodiment, each first interest packet is sent to a named data network through a transmission port, a first encoding data block returned by the transmission port based on each first interest packet is received, a data return state of the transmission port is determined, each second interest packet is sent to the named data network according to the data return state, a second encoding data block returned by the transmission port based on each second interest packet is received, a data block collection state of a client is determined according to the first encoding data block and the second encoding data block, and an original data file is restored based on the data block collection state. The original data file is encoded into a plurality of encoded data blocks, the client can collect file content blocks in the named data network by requesting the encoded data blocks, the client can restore the encoded data blocks into the original data file after collecting enough encoded data blocks, complete file content is obtained, the return of all the encoded data blocks is not required, the time delay of obtaining the complete file is effectively reduced, and the data transmission efficiency is improved.
Further, in the second embodiment of the data coding transmission method of the present invention, as shown in fig. 6, the method includes:
step S21, if the transmission port receives the first coded data block in a preset time period, determining that the data return state is normal return;
the preset time period can be regarded as the time condition of the data return state, and can be adjusted according to actual needs. In this embodiment, an RTO (Retransmission Timeout) is used as the preset time period, that is, if the transmission port receives the first encoded data block in the RTO, the transmission port returns normally.
In a feasible implementation manner, if the data return state is normal return, the current data block request state is determined, a second interest packet is generated according to the current data block request state, and the second interest packet is sent to the server. The current data block request state refers to a state in which the client sends an interest packet request encoding data block, for example, the client sends first interest packets requesting E1, E2, and E3 through 3 transmission ports, respectively, and then the data block request state is that the client has requested E1, E2, and E3, and the client has not requested E4 and E5, and may request E4 in sequence, place a name prefix of E4 in a second interest packet, and request E4 from the server.
Fig. 7 is a schematic view of a scenario of a data return state of a transmission port, as shown in fig. 7, a port 2 receives E2 in RTO, belongs to a normal return state, and may continue to send a second interest packet request E4. E4 and E2 still belong to the same group, and the name prefix in the second interest package is 1\ E4.
Step S22, if the transmission port receives the first coded data block and the preset time period is exceeded, determining that the data return state is abnormal return;
in an actual communication scenario, the transmission port may start a retransmission timer after sending the first interest packet, and if the port receives the first encoded data block after waiting for the data return time to reach the RTO, it indicates that the data return status of the port is an abnormal return.
In a possible implementation manner, if the data return status is abnormal return, the first interest packet is retransmitted to the server. Referring to fig. 7, port 1 in fig. 7 belongs to an abnormal return state, and the first interest package, request E1, can be resent through port 1, and the name prefix in the first interest package is 1\ E1. It will be appreciated that the number of retransmissions may be set for the transmission port, e.g. after port 1 has transmitted the first packet of interest 3 times (3 retransmissions), E1 is no longer requested through port 1, but other unsolicited encoded data blocks are requested.
Step S23, if the transmission port does not receive the first encoded data block within a preset time period and has retransmitted the first interest packet, determining that the data return status is abnormal and not returned.
There may also be a case where the transmission port does not receive the corresponding first encoded data block within the RTO, and the exception that the first interest packet has been retransmitted does not return, that is, after the RTO is triggered, the request has been retransmitted without receiving the first encoded data block. In this case, the first encoded data block may be received after the transmission port re-requests the first encoded data block.
In a feasible implementation manner, if the data return state is abnormal and not returned, a second interest packet is generated according to the current data block request state and a preset routing cache rule, and the second interest packet is sent to the server. Referring to fig. 7, in fig. 7, port 3 belongs to an abnormal unreturned state, and when E3 is received after 1\ E3 is requested again, E5 that is not requested may be requested through port 3, the name prefix in the second interest package is 1\ E5, and the notification route does not cache the content block (E3) that repeatedly sends the request in the packet header of the second interest package, thereby optimizing the cache. The preset route caching rule may be understood as a rule that a content block of a repeatedly transmitted request is not cached.
In this embodiment, a new data request is sent according to the data return state of the transmission port, the client does not need to wait for the transmission port which has no response all the time to return the requested encoded data block, and the client can recover the required original file only by receiving enough data blocks, so that the acquisition delay of the complete file data can be effectively reduced.
An embodiment of the present invention further provides a data encoding and transmitting device, as shown in fig. 8, where the data encoding and transmitting device includes:
a sending module 101, configured to send each first interest packet to a named data network through a transmission port, and receive a first encoded data block returned by the transmission port based on each first interest packet;
a determining module 102, configured to determine a data return state of the transmission port, send each second interest packet to the named data network according to the data return state, and receive a second encoded data block returned by the transmission port based on each second interest packet;
a restoring module 103, configured to determine a data block collection state of the client according to the first encoded data block and the second encoded data block, and restore the original data file based on the data block collection state.
Optionally, the data encoding and transmitting apparatus further includes a generating module, configured to:
establishing communication connection between a client and a server through the transmission port, and acquiring coding information of an original data file in the server based on the communication connection;
and generating each first interest packet according to the coding information.
Optionally, the sending module 101 is further configured to:
identifying the communication type of the transmission port, and identifying the transmission port according to the communication type to obtain port identification information;
and distributing a corresponding first interest packet to the transmission port according to the port identification information, and sending the corresponding first interest packet to the server through the transmission port.
Optionally, the determining module 102 is further configured to:
if the transmission port receives the first coded data block in a preset time period, determining that the data return state is normal return;
if the transmission port receives the first coded data block and the preset time period is exceeded, determining that the data return state is abnormal return;
and if the transmission port does not receive the first encoding data block within a preset time period and resends the first interest packet, determining that the data return state is abnormal and not returned.
Optionally, the determining module 102 is further configured to:
if the data return state is normal return, determining the current data block request state, generating a second interest packet according to the current data block request state, and sending the second interest packet to a server;
if the data return state is abnormal return, the first interest packet is sent to the server again;
and if the data return state is abnormal and not returned, generating a second interest packet according to the current data block request state and a preset routing cache rule, and sending the second interest packet to a server.
Optionally, the recovery module 103 is further configured to:
recording the receiving quantity of the first coded data block and the second coded data block in each data coding group in sequence;
and if the receiving quantity reaches a preset quantity, determining that the data block collection state is the collection completion state.
Optionally, the recovery module 103 is further configured to:
and if the data block collection state is collection completion, restoring the first coded data block and the second coded data block into the original data file according to a preset coding rule.
An embodiment of the present invention further provides an electronic device, where the electronic device includes: a memory, a processor and a data encoding transmission program stored on the memory and executable on the processor, the data encoding transmission program being configured to implement the steps of the data encoding transmission method as described above. For a specific implementation of the electronic device according to the embodiment of the present invention, reference is made to the above embodiments of the data encoding and transmitting method, which are not described herein again.
An embodiment of the present invention further provides a computer-readable storage medium, where a data encoding transmission program is stored, and when executed by a processor, the data encoding transmission program implements the steps of the data encoding transmission method described above. For specific implementation of the computer-readable storage medium according to the embodiment of the present invention, reference is made to the above embodiments of the data encoding and transmitting method, which are not described herein again.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrases "comprising one of 8230; \8230;" 8230; "does not exclude the presence of additional like elements in a process, method, article, or system that comprises the element.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) as described above and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, or a network device) to execute the method according to the embodiments of the present invention.
The above description is only a preferred embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by using the contents of the present specification and the accompanying drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.

Claims (10)

1. A data encoding transmission method, characterized in that the data encoding transmission method comprises the following steps:
sending each first interest packet to a named data network through a transmission port, and receiving a first coding data block returned by the transmission port based on each first interest packet;
determining a data return state of the transmission port, sending each second interest packet to the named data network according to the data return state, and receiving a second coded data block returned by the transmission port based on each second interest packet;
and determining a data block collection state of the client according to the first coding data block and the second coding data block, and recovering the original data file based on the data block collection state.
2. The data encoding transmission method according to claim 1, wherein before the step of sending each first interest packet to a named data network through a transmission port, receiving a first encoded data block returned by the transmission port based on each first interest packet, further comprises:
establishing communication connection between a client and a server through the transmission port, and acquiring coding information of an original data file in the server based on the communication connection;
and generating each first interest packet according to the coding information.
3. The data encoding transmission method of claim 2, wherein the step of sending each first interest packet to the named data network through the transmission port comprises:
identifying the communication type of the transmission port, and identifying the transmission port according to the communication type to obtain port identification information;
and distributing a corresponding first interest packet to the transmission port according to the port identification information, and sending the corresponding first interest packet to the server through the transmission port.
4. The data encoding transmission method according to claim 1, wherein the step of determining the data return status of the transmission port comprises:
if the transmission port receives the first coded data block in a preset time period, determining that the data return state is normal return;
if the transmission port receives the first coded data block and the preset time period is exceeded, determining that the data return state is abnormal return;
and if the transmission port does not receive the first encoding data block within a preset time period and resends the first interest packet, determining that the data return state is abnormal and not returned.
5. The data encoding transmission method according to claim 4, wherein the step of sending each second interest packet to the named data network according to the data return status comprises:
if the data return state is normal return, determining a current data block request state, generating a second interest packet according to the current data block request state, and sending the second interest packet to a server;
if the data return state is abnormal return, the first interest packet is sent to the server again;
and if the data return state is abnormal and not returned, generating a second interest packet according to the current data block request state and a preset routing cache rule, and sending the second interest packet to a server.
6. The data encoding transmission method of claim 1, wherein the step of determining a data block collection status of a client based on the first encoded data block and the second encoded data block comprises:
recording the receiving quantity of the first coded data block and the second coded data block in each data coding group in sequence;
and if the receiving quantity reaches a preset quantity, determining that the data block collection state is the collection completion state.
7. The data encoding transmission method of claim 6, wherein the step of restoring the original data file based on the data block collection status comprises:
and if the data block collection state is collection completion, restoring the first coded data block and the second coded data block into the original data file according to a preset coding rule.
8. A data encoding transmission device, characterized in that the data encoding transmission device comprises:
the sending module is used for sending each first interest packet to a named data network through a transmission port and receiving a first coding data block returned by the transmission port based on each first interest packet;
the determining module is used for determining the data return state of the transmission port, sending each second interest packet to the named data network according to the data return state, and receiving a second coding data block returned by the transmission port based on each second interest packet;
and the recovery module is used for determining the data block collection state of the client according to the first coding data block and the second coding data block and recovering the original data file based on the data block collection state.
9. An electronic device, characterized in that the electronic device comprises: memory, processor and a data encoding transmission program stored on the memory and executable on the processor, the data encoding transmission program being configured to implement the steps of the data encoding transmission method according to any one of claims 1 to 7.
10. A computer-readable storage medium, on which a data code transmission program is stored, which when executed by a processor implements the steps of the data code transmission method according to any one of claims 1 to 7.
CN202310121426.1A 2023-02-16 2023-02-16 Data coding transmission method, device, equipment and storage medium Active CN115834574B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310121426.1A CN115834574B (en) 2023-02-16 2023-02-16 Data coding transmission method, device, equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310121426.1A CN115834574B (en) 2023-02-16 2023-02-16 Data coding transmission method, device, equipment and storage medium

Publications (2)

Publication Number Publication Date
CN115834574A true CN115834574A (en) 2023-03-21
CN115834574B CN115834574B (en) 2023-05-09

Family

ID=85521599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310121426.1A Active CN115834574B (en) 2023-02-16 2023-02-16 Data coding transmission method, device, equipment and storage medium

Country Status (1)

Country Link
CN (1) CN115834574B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105100008A (en) * 2014-05-09 2015-11-25 华为技术有限公司 Method and related device for distributing contents in content-centric network
JP2016086297A (en) * 2014-10-27 2016-05-19 Kddi株式会社 Distribution device for content distribution network, transfer device, client device and program
US20180159915A1 (en) * 2016-12-06 2018-06-07 Futurewei Technologies, Inc. Video stream network coding in information centric networks
CN109347983A (en) * 2018-11-30 2019-02-15 东南大学 Multipath retransmission method in a kind of name data network based on network code
CN112039781A (en) * 2020-09-09 2020-12-04 北京同创神州航天科技有限公司 Named data network forwarding method based on flow control
CN112134803A (en) * 2020-09-25 2020-12-25 中国人民解放军陆军装甲兵学院 Named data network system and data transmission method and device thereof
WO2021218068A1 (en) * 2020-04-28 2021-11-04 网络通信与安全紫金山实验室 Icn-based industrial internet identifier analysis system and data access method
CN115378908A (en) * 2022-08-22 2022-11-22 哈尔滨工业大学 DNS (Domain name Server) identification analysis method and system based on NDN (named data networking)

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105100008A (en) * 2014-05-09 2015-11-25 华为技术有限公司 Method and related device for distributing contents in content-centric network
JP2016086297A (en) * 2014-10-27 2016-05-19 Kddi株式会社 Distribution device for content distribution network, transfer device, client device and program
US20180159915A1 (en) * 2016-12-06 2018-06-07 Futurewei Technologies, Inc. Video stream network coding in information centric networks
CN109347983A (en) * 2018-11-30 2019-02-15 东南大学 Multipath retransmission method in a kind of name data network based on network code
WO2021218068A1 (en) * 2020-04-28 2021-11-04 网络通信与安全紫金山实验室 Icn-based industrial internet identifier analysis system and data access method
CN112039781A (en) * 2020-09-09 2020-12-04 北京同创神州航天科技有限公司 Named data network forwarding method based on flow control
CN112134803A (en) * 2020-09-25 2020-12-25 中国人民解放军陆军装甲兵学院 Named data network system and data transmission method and device thereof
CN115378908A (en) * 2022-08-22 2022-11-22 哈尔滨工业大学 DNS (Domain name Server) identification analysis method and system based on NDN (named data networking)

Also Published As

Publication number Publication date
CN115834574B (en) 2023-05-09

Similar Documents

Publication Publication Date Title
US7702917B2 (en) Data transfer using hyper-text transfer protocol (HTTP) query strings
CN110233881B (en) Service request processing method, device, equipment and storage medium
CN110943800B (en) Data packet sending method, device and system, storage medium and electronic device
CN105763317B (en) Secret information transmission method based on BitTorrent agreement Have message
CN111083161A (en) Data transmission processing method and device and Internet of things equipment
CN106612284B (en) Streaming data transmission method and device
CN1881945A (en) Improved distributed kernel operating system
CN101632263B (en) Server and client terminal and the method sending/receive data in real time with packet mode
EP1473636A1 (en) Information processing device and method, and computer program
CN105408871A (en) Method and apparatus for providing redundant data access
CN109379764B (en) Message sending method and device
CN111752803A (en) Method, device and medium for collecting and reporting buried point data
CN104303471A (en) Method and apparatus for providing content by selecting data acceleration algorithm
CN114513467A (en) Network traffic load balancing method and device of data center
CN101449539B (en) Connection configuration in a wireless telecommunications system using hash values
CN104702596B (en) A kind of Information hiding based on data packet length and the method and system of transmission
CN1420663A (en) Method and device for sending data over network
CN103731424B (en) A kind of transmission method of network data, apparatus and system
CN115834574B (en) Data coding transmission method, device, equipment and storage medium
US10834179B2 (en) Load balancing
CN105656994B (en) A kind of business acceleration method and device
Schütz et al. Adding a network coding extension to CoAP for large resource transfer
CN106527986A (en) Method and device for storing data
CN111787039A (en) System and method for monitoring pathological parameters
CN111385069A (en) Data transmission method and computer equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant