CN108616332B - Multi-user data transmission method based on random linear network coding - Google Patents

Multi-user data transmission method based on random linear network coding Download PDF

Info

Publication number
CN108616332B
CN108616332B CN201810456833.7A CN201810456833A CN108616332B CN 108616332 B CN108616332 B CN 108616332B CN 201810456833 A CN201810456833 A CN 201810456833A CN 108616332 B CN108616332 B CN 108616332B
Authority
CN
China
Prior art keywords
user
storage server
data packet
data packets
packets
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.)
Active
Application number
CN201810456833.7A
Other languages
Chinese (zh)
Other versions
CN108616332A (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.)
Zhejiang Gongshang University
Original Assignee
Zhejiang Gongshang University
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 Zhejiang Gongshang University filed Critical Zhejiang Gongshang University
Priority to CN201810456833.7A priority Critical patent/CN108616332B/en
Publication of CN108616332A publication Critical patent/CN108616332A/en
Application granted granted Critical
Publication of CN108616332B publication Critical patent/CN108616332B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0076Distributed coding, e.g. network coding, involving channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

The invention discloses a multi-user data transmission method based on random linear network coding. The method uses network coding technology on a storage server: the server calculates a file set to be transmitted according to the downloading requests of all users; then, coding the files by using a random linear network coding method, and then sending the coded data to a user; after a user receives a sufficient number of data packets, all original files participating in encoding can be decoded, files interested by the user are selected from the original files, and other files are discarded; finally, the storage server learns whether the user has successfully decoded or not through feedback information of the user; and when the confirmation information of all the users is received, the transmission is ended. The multi-user data transmission method can improve the overall transmission efficiency and increase the throughput of the network.

Description

Multi-user data transmission method based on random linear network coding
Technical Field
The invention belongs to the technical field of wireless network communication, and particularly relates to a multi-user data transmission method based on random linear network coding.
Background
With the development of social economy and scientific technology and the continuous promotion and deepening of informatization construction, wireless networks and wireless communication data transmission are more and more widely applied in various fields. Among them, multicast is one of the most commonly used data transmission methods in wireless networks. In wireless multicast, because a wireless channel is easily affected by interference, attenuation and the like, the wireless channel sometimes presents a higher channel error rate or packet loss rate, so that the quality of a wireless link is poorer, the transmission of a data packet is easily damaged, and the transmission efficiency is further seriously affected. For this problem, one of the conventional solutions is to use a retransmission technique, such as an Automatic Repeat Request (ARQ) policy: when a certain data packet is not successfully received by all users, the source node continuously retransmits the data packet until all receiving nodes successfully receive the data packet. Therefore, the transmission efficiency of the retransmission technique is not really high.
Network coding is another technique to improve the efficiency of wireless multicast. The sending end firstly utilizes the network coding technology to code the original data packet, generates a coded data packet and then sends the coded data packet to a user. For the user, all the original packets can be successfully decoded by receiving a sufficient number of linearly independent encoded packets. Therefore, there is no packet retransmission problem that seriously affects multicast efficiency.
The invention applies network coding to a single-hop wireless network, and is mainly used for improving the transmission efficiency of data packets. A group of mobile users, which want to download one or more files interested by the users from a central storage server; there may be duplication of files that different users want to download, e.g., some popular resources may be downloaded by multiple users. In view of the above features, the present invention uses network coding techniques on a storage server: the server calculates a file set to be transmitted according to the downloading requests of all users; then, coding the files by using a random linear network coding method, and then sending the coded data to a user; after a user receives a sufficient number of data packets, all original files participating in encoding can be decoded, files interested by the user are selected from the original files, and other files are discarded; finally, the storage server learns whether the user has successfully decoded or not through feedback information of the user; and when the confirmation information of all the users is received, the transmission is ended.
Disclosure of Invention
The invention provides a multi-user data transmission method based on random linear network coding, aiming at file transmission in a wireless network.
The technical scheme of the invention is as follows:
a data transmission method based on random linear network coding comprises the following processing steps:
suppose the storage server has m packets, denoted Xi,X2,K,Xm(ii) a There are n users, each of which downloads one or more of the users' own needs from the storage serverA data packet; recording the data packet set to be downloaded by the ith user as AiWe have
Figure BDA0001659885440000021
Recording the number of linearly independent data packets received by the ith user as ciIts initial value is set to 0, i.e.
Figure BDA0001659885440000022
(1) A transmission preparation stage:
establishing connection between each user and the storage server, initiating a data packet transmission request to the storage server, and informing the storage server of a data packet set A to be downloadediI ∈ {1, K, n }, after receiving all the download requests from the users, the server calculates the set of all the data packets to be transmitted, and records it as B, so we have B ═ a1UA2UKUAn
(2) And (3) a transmission stage:
in each time slot of the transmission stage, the storage server and the user transmit and receive data packets according to the following steps:
(2.1) the storage server generates an encoded data packet Y by using a random linear network coding method, wherein the data packet Y is a random linear combination of all data packets in the set B, namely
Figure BDA0001659885440000031
Where | B | represents the number of elements in set B, a1,K,a|B|For coding coefficients, each time coding is performed from the coding field FqThe symbol {0,1, K, q-1} is randomly selected, and q represents the size of the code field and is a predetermined integer. Step (2.2) is entered.
And (2.2) the storage server broadcasts the generated coded data packet to all users through a wireless channel. Go to step (2.3).
(2.3) at the receiving end, if the ith user successfully receives the data packet broadcast by the storage server in the current time slot, the user judges whether the data packet is cached in the data packet and the own cacheAre linearly independent of other packets. If yes, adding the data packet into the cache, and adding ciIs increased by 1, i.e. ci=ci+1, go to step (2.4); otherwise, the data packet is discarded, and step (2.6) is entered.
(2.4) if ciI | B |, this means that the ith user has received a sufficient number of linearly independent encoded packets, and therefore all the original packets in set B can be decoded by gaussian elimination. Due to the fact that
Figure BDA0001659885440000032
The user can find out all the packets to be downloaded from the set B and discard the packets that are not needed by the user, and go to step (2.5). Otherwise, the step (2.1) is returned.
(2.5) the ith user sends an ACK message to the storage server to inform the storage server that the storage server has decoded the data packet to be downloaded. The user then enters a silence state, discarding other packets received in subsequent time slots, and proceeds to step (2.6).
(2.6) the storage server determines whether ACK acknowledgement information has been received from all users. If so, the transmission phase is ended, otherwise, the step (2.1) is returned.
The invention has the following characteristics:
the storage server of the invention does not simply broadcast the original data packet to the user, but utilizes the characteristic that the files which different users want to download have repeatability, adopts a random linear network coding method, and collects all the data packets which need to be sent first and then codes the data packets, and then sends the data packets to the user. By adopting the method, although the number of the data packets which need to be received by each user is more than that before, the storage node does not need to retransmit the lost data packets, thereby improving the overall transmission efficiency and increasing the throughput of the network.
Drawings
Fig. 1 is a schematic diagram of a network according to the present invention.
Fig. 2 is a flow chart of a data transmission method according to the present invention.
Detailed Description
To further illustrate the present invention, a preferred embodiment is given below. This example is only illustrative of the principles of the present invention and does not represent any limitation of the present invention.
Assume that there is one storage server, with a total of 10 different files. Suppose that each file contains only one packet, so there are 10 original packets, denoted as X, on the server1,X2,K,X10. The existing 3 users have the data packet sets A respectively1={X1,X2,X3},A2={X3,X4,X5,X6},A3={X2,X3,X6,X7}. The number of linearly independent data packets received by the user is initially 0, i.e. c1=c2=c30. Let the size of the code field be q 16, so the code field is F16={0,1,K,15}。
3 users firstly establish connection with the server, send a downloading request to the server and inform the server of a data packet set A which the server wants to download1,A2,A3. After receiving all the user download requests, the server calculates the set of all the data packets to be transmitted, i.e. B ═ a1UA2UA3={X1,X2,X3,X4,X5,X6,X7}。
In the 1 st time slot of the transmission stage, the server generates the 1 st coded data packet by using a random linear network coding method, and records the 1 st coded data packet
Figure BDA0001659885440000041
Wherein the coefficient a is encoded1,a2,K,a7From the coded field F16And (4) randomly selecting {0,1, K,15 }. The server will encode the data packet Y1Broadcast to 3 users. Suppose that the 1, 2 st user successfully receives the data packet Y1And the 3 rd user is not successfully received due to the influence of noise. Since there is no cache for user 1 and user 2Any data packet, so user 1 and user 2 will be Y1Put into the cache of the user and update the number c of the linear independent data packets received by the user1And c2I.e. c1c 21. Due to c1,c2,c3All values of (c) are less than | B | ═ 7, so 3 users do not need to send ACK acknowledgment information to the server.
In the 2 nd time slot of the transmission phase, the server generates the 2 nd coded data packet
Figure BDA0001659885440000051
Wherein the coefficient a is encoded1,a2,K,a7From the coded field F16And (4) randomly selecting {0,1, K,15 }. The server will encode the data packet Y2Broadcast to 3 users. Suppose that only the 2 nd user successfully received packet Y2. Since user 2 has cached the existing data packet Y1User 2 needs to determine Y2And Y1Whether linearly independent. If yes, then Y is added2Put into its own cache and update c22; otherwise, discarding Y2. Due to c1,c2,c3Is still less than | B | ═ 7, so 3 users do not need to send ACK acknowledgement information to the server.
In the next time slot, the storage server and the user transmit and receive the data packet according to the method. If a user receives a sufficient number of linearly independent data packets, e.g. c1If it is 7, the user 1 may decode all the packets in the set B by using gaussian elimination, and simultaneously send an ACK acknowledgement message to the server, informing the server that it has successfully decoded itself. If the server receives the ACK information of all 3 users, the whole transmission process is finished.
The invention relates to a data transmission method based on random linear network coding, belonging to the technical field of wireless network communication; the invention uses the coded data packet to replace the original data packet for sending, avoids the problem that the data packet is lost and needs to be retransmitted in the traditional transmission method, and improves the transmission efficiency of the data and the throughput of the network.
While the foregoing has described in detail the preferred embodiments and principles of the present invention, it will be apparent to those skilled in the art that variations may be made in the embodiments and equivalents without departing from the spirit and scope of the invention.

Claims (1)

1. A multi-user data transmission method based on random linear network coding is characterized by comprising the following processing steps:
suppose the storage server has m packets, denoted Xi,X2,...,Xm(ii) a Is provided withnEach user needs to download one or more data packets which are required by the user from the storage server; recording the data packet set to be downloaded by the ith user as Ai
Figure FDA0002612206510000011
Recording the number of linearly independent data packets received by the ith user as ciIts initial value is set to 0, i.e.
Figure FDA0002612206510000012
(1) A transmission preparation stage:
establishing connection between each user and the storage server, initiating a data packet transmission request to the storage server, and informing the storage server of a data packet set A to be downloadediI ∈ { 1.. multidot.n }, after receiving all the download requests from the users, the server calculates the set of all the data packets to be transmitted, and the set is marked as B, B ═ A {1∪A2∪…∪An
(2) And (3) a transmission stage:
in each time slot of the transmission stage, the storage server and the user transmit and receive data packets;
the transmission stage of the step (2) comprises the following specific steps:
(2.1) the storage server generates an encoded data packet Y by using a random linear network coding method, and the data packet Y is a setRandom linear combination of all packets in B, i.e.
Figure FDA0002612206510000013
Where | B | represents the number of elements in set B, a1,...,a|B|For coding coefficients, each time coding is performed from the coding field FqQ represents the size of a coding domain and is a predetermined integer; entering the step (2.2);
(2.2) the storage server broadcasts the generated coded data packet to all users through a wireless channel, and the step (2.3) is carried out;
(2.3) at a receiving end, if the ith user successfully receives the data packet broadcast by the storage server in the current time slot, the user judges whether the data packet is linearly independent from other data packets in the cache of the user; if yes, adding the data packet into the cache, and adding ciIs increased by 1, i.e. ci=ci+1, go to step (2.4); otherwise, discarding the data packet and entering the step (2.6);
(2.4) if ciB |, it means that the ith user has received a sufficient number of linearly independent encoded data packets, and therefore all the original data packets in the set B can be decoded by using gaussian elimination; due to the fact that
Figure FDA0002612206510000021
The user can find out all the data packets to be downloaded from the set B, and discard the data packets which are not needed by the user, and then the step (2.5) is carried out; otherwise, returning to the step (2.1);
(2.5) the ith user sends an ACK (acknowledgement) message to the storage server to inform the storage server that the data packet to be downloaded is decoded by the storage server; then the user enters a silent state, discards other data packets received in the following time slot, and enters the step (2.6);
(2.6) the storage server judging whether ACK confirmation information has been received from all the users; if so, the transmission phase is ended, otherwise, the step (2.1) is returned.
CN201810456833.7A 2018-05-14 2018-05-14 Multi-user data transmission method based on random linear network coding Active CN108616332B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810456833.7A CN108616332B (en) 2018-05-14 2018-05-14 Multi-user data transmission method based on random linear network coding

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810456833.7A CN108616332B (en) 2018-05-14 2018-05-14 Multi-user data transmission method based on random linear network coding

Publications (2)

Publication Number Publication Date
CN108616332A CN108616332A (en) 2018-10-02
CN108616332B true CN108616332B (en) 2020-10-13

Family

ID=63663177

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810456833.7A Active CN108616332B (en) 2018-05-14 2018-05-14 Multi-user data transmission method based on random linear network coding

Country Status (1)

Country Link
CN (1) CN108616332B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8068426B2 (en) * 2008-05-29 2011-11-29 Massachusetts Institute Of Technology Feedback-based online network coding
CN102970235A (en) * 2012-12-06 2013-03-13 南京邮电大学 Multicast routing method based on intra-flow and inter-flow network encoding in wireless mesh network

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103248645B (en) * 2012-02-08 2018-03-16 深圳市腾讯计算机系统有限公司 BT off-line datas download system and method
CN103095827B (en) * 2013-01-11 2016-12-28 中国传媒大学 A kind of local multi-client synergistic data method for down loading based on random network code
CN106686112A (en) * 2017-01-18 2017-05-17 中国工商银行股份有限公司 Cloud file transmission system and method
CN107147471A (en) * 2017-03-24 2017-09-08 南京邮电大学 A kind of data transfer optimization method based on linear network encoding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8068426B2 (en) * 2008-05-29 2011-11-29 Massachusetts Institute Of Technology Feedback-based online network coding
CN102970235A (en) * 2012-12-06 2013-03-13 南京邮电大学 Multicast routing method based on intra-flow and inter-flow network encoding in wireless mesh network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"Reliability of Multicast under Random Linear Network Coding";Evgeny Tsimbalo;《IEEE》;20170930;全文 *

Also Published As

Publication number Publication date
CN108616332A (en) 2018-10-02

Similar Documents

Publication Publication Date Title
Wang et al. On the age of information of short-packet communications with packet management
Lucani et al. Random linear network coding for time division duplexing: When to stop talking and start listening
EP1771964B1 (en) Point-to-point repair request mechanism for point-to-multipoint transmission systems
US9325513B2 (en) Method and apparatus for hop-by-hop reliable multicast in wireless networks
US9215082B2 (en) Method and apparatus for hop-by-hop reliable multicast in wireless networks
JP5607218B2 (en) H-ARQ acknowledgment detection confirmation by data combination and re-decoding
RU2469482C2 (en) Method and system for data transfer in data transfer network
US7650560B2 (en) Packet transmission apparatus and method using optimized punctured convolution codes
WO2012122758A1 (en) Data transmission method and system, and control station
JP2011520388A (en) Preemptive acknowledgment for data transmission in communication systems
KR20090118988A (en) Method and appaeatus for multicasting with feedback information
WO2017215382A1 (en) Data transmission method, device and system
CN107249203B (en) fountain code-based Internet of vehicles remote data communication relay agent method
EP3387773A1 (en) Relaying method and device and recipient with return in an omamrc system
Liu et al. Quality-aware instantly decodable network coding
Pan et al. Coding of multi-source information streams with age of information requirements
Nguyen et al. Hybrid ARQ-random network coding for wireless media streaming
US20090046713A1 (en) Method and apparatus for transmitting non-decodable packets
Yafeng et al. Performance analysis of type III HARQ with turbo codes
CN113438055A (en) Convolutional network coding transmission method based on unequal redundancy insertion
CN108616332B (en) Multi-user data transmission method based on random linear network coding
RU2378770C2 (en) Method and device for encoding and planning in data packet transmission systems
CN102292926A (en) Decoding method and receiving device in the system using network coding for retransmission
KR101116265B1 (en) Wireless device with dynamic fragmentation threshold adjustment
CN101867439B (en) Indication method of bit mapping mode

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