WO2007054872A1 - Procede pour prendre en charge un code de correction d'erreur reparti - Google Patents
Procede pour prendre en charge un code de correction d'erreur reparti Download PDFInfo
- Publication number
- WO2007054872A1 WO2007054872A1 PCT/IB2006/054108 IB2006054108W WO2007054872A1 WO 2007054872 A1 WO2007054872 A1 WO 2007054872A1 IB 2006054108 W IB2006054108 W IB 2006054108W WO 2007054872 A1 WO2007054872 A1 WO 2007054872A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- ecc
- node
- data
- data frame
- ecc generation
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0075—Transmission of coding parameters to receiver
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/02—Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
- H04W84/10—Small scale networks; Flat hierarchical networks
- H04W84/12—WLAN [Wireless Local Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Definitions
- the present invention relates generally to communication networks, and more specifically to methods and systems that improve error correction of data packets in multi- hop wireless networks.
- Ad hoc networking allows devices to establish communication, any time and anywhere without the aid of a central infrastructure or backbone.
- the notion of ad hoc networks was often associated with communication on combat fields and at the site of a disaster area. Now with the advancement of telecommunication and novel technologies, such as Bluetooth, the scenario of ad hoc networking is likely to change.
- Wireless ad hoc networks are autonomous networks operating either in isolation or as "sub-networks" connected to a fixed infrastructure. Such networks have the potential to provide wireless and mobile computing capability in situations where efficient, economical and rapid deployment of communication is required, and where the use of wired or an infrastructure-based wireless network is either too expensive or impractical.
- a mobile ad hoc network is a network formed without any central administration that comprises mobile nodes that use a wireless interface to send packet data. Since each of the nodes in a network of this kind can serve as a router and a host, they can forward packets on behalf of other nodes and run user applications.
- Error detection and correction becomes an important aspect of ad hoc networks.
- Current wireless technology method of error correction is based primarily on and uses cyclic redundancy checks (CRC) in their operation. All the stations or nodes of a network share and use the same CRC generator polynomial. Packet errors in received data are detected by calculating the CRC locally at the receiving node or station. The calculated result is compared against the CRC received from the sending node or station. Error correction codes (ECC) are also used to help recover erroneous frames received by a node or station. If the ECC at the receiving node fails to be able to recover an erroneous frame, the packet must be resent by the sending node.
- CRC cyclic redundancy checks
- Figure 1 depicts a generic wireless or wired ad hoc multi-hop network 10. No wired backbone is available so all the information has to be transmitted using the wireless infrastructure.
- a generic ad hoc multi-hop network 10 is shown with several nodes 12-28. There is one node 12 that provides access to external networks 30.
- the generic network 10 is shown in three frames. In the first frame, node 12 is broadcasting information (data or cargo) using a standard ECC. In the second frame, node 14 is broadcasting the same information, which node 12 broadcasted, using the same ECC.
- node 16 is broadcasting the same information once again, using the same ECC.
- Node 18, even after the repetitive transmissions may still not have received the broadcasted information correctly without errors. That is, even though three neighboring nodes 14, 12 and 16 transmitted the information, node 18 still may not have received and been able to recover the data in the received frames using ECC.
- Node or station 18 receives the same frame three times, once or more from each of the nodes or stations 12, 14 and 16. No additional information is provided by nodes 12, 14 and 16 that might allow station or node 18 to combine the independently received frames into a usable frame that is without error(s) in its data.
- What is needed is a system or method to improve the error correction of data packets and/or frames in a multi-hop network.
- embodiments of the present invention provide a method for improving the error correction of data packets in an ad hoc network and/or a multi-hop ad hoc network.
- a method of an exemplary embodiment utilizes incremental redundancy.
- Each node in an exemplary multi-hop network uses its own or determines its own generator polynomial for its Error Correction Code (ECC).
- ECC Error Correction Code
- Each node in the network when receiving a frame or other form of information from neighboring nodes also receives information about the transmitting node's ECC generator polynomial. As such, each node (i.e. station) can check received data frames from neighboring nodes for errors.
- An exemplary node in accordance with an embodiment of the present invention, can also recombine subsequently received frames that have errors, which were transmitted by different neighboring nodes or by a single neighboring node that varies its ECC generator ploynomial. By being able to recombine frames that have errors, continued or additional retransmission of the same data can be avoided.
- each node in the ad hoc network has its own ECC generator polynomial.
- Each node may exchange their ECC generation polynomials with a neighboring node prior to data transmission or each node may provide its ECC generation polynomial in, or encoded in, part of the data packet or frame itself.
- the data in the cargo portion of the data frame can be shifted in order to create a differing ECC.
- Embodiments of the invention are not necessarily restricted to wireless or wired technology.
- Embodiments of the invention may be used in a variety of different types of communication networks to aid in error recovery.
- Such other networks also include, without limitation, Wireless LANs (WLANs) and Wireless PANs (WPANs).
- Another embodiment of the present invention provides a node in an ad hoc network with a method of transmitting a data frame.
- the method includes using an ECC generation polynomial that is probabilistically different from another ECC generation polynomial that is being used by a neighboring node.
- the node uses the ECC generation polynomial to generate a first ECC for a data frame that is being transmitted.
- the exemplary node then, transmits the data frame to neighboring nodes.
- the transmitted data frame includes a field that contains information to identify the ECC generation polynomial that was used by the transmitting node to generate the first ECC.
- each node is assigned an ECC generation polynomial.
- a node may select an ECC generation polynomial from a predetermined list of ECC generation polynomials. The selection from the list of ECC generation polynomials may be incremented or random. Still in other embodiments of the invention, the ECC generation polynomial may be randomly generated by the transmitting node.
- Embodiments of the invention further allow a receiving node to receive the data frame and determine, using the provided ECC generation polynomial information found in the received data packet or frame, where the received data frame has an error in it.
- the receiving node may receive the same cargo data in a frame from another neighboring node that used a different ECC generation polynomial when generating its data frame.
- a receiving node may be able to recombine the cargo data into error free data by using the data frames received from different neighboring nodes.
- a node in an ad hoc network that is transmitting a data frame, shifts the data in the cargo portion of the data frame by a determined amount prior to performing an ECC calculation.
- the determined amount of shift can always be the same for frames that are transmitted by a specific node, or can be incremented each time (or at predetermined times) a frame is to be prepared for transmission by the node.
- the transmitting node provides the shift information in a shift field of the data frame so that the receiving node can perform the same ECC calculation as the transmitting node performed.
- a receiving node will be able to recombine erred cargo data fields received from different nodes or the same node if the same cargo data field was transmitted using different ECC generator polynomials or had the ECCs calculated from differently shifted data.
- FIGURE 1 is a block diagram of a generic ad hoc network
- FIGURE 2 is a block diagram with time three frames of communication between stations or nodes in a generic ad hoc network;
- FIGURE 3 is a block diagram of an ad hoc and/or multi hop network in accordance with embodiments of the present invention.
- FIGURE 4 depicts a data or cargo field in a frame that is shifted according to an embodiment of the invention.
- FIGURE 5 depicts an identification mechanism of a plurality of ECC generator polynomials in accordance with an embodiment of the present invention.
- Embodiments of the present invention provide a method and means for improving the error correction of data packets in a multi- hop network 10.
- Embodiments of the invention can be based on incremental redundancy that is supported by each node in the ad hoc network.
- an exemplary wireless ad hoc multi- hop network 40 is depicted.
- this network one node 42 is connected to external networks 60.
- Other nodes or stations can also be connected to external networks as well.
- the exemplary ad hoc multi- hop network incorporates various nodes or stations 42-58. Each node or station can be mobile or stationary and may wirelessly communicate with another node.
- a node or station may be substantially any type of wireless device including, without limitation, computers, microprocessor based devices, mobile phones, PDAs, notebook computers, automotive or transportation vehicles, printer equipment, fax machines, MP3 or other audio devices, video devices, machinery, tools and appliances, internet devices, grocery carts, communication equipment, and identification devices to name a few.
- Each node 42-58 in the exemplary wireless ad hoc network has its own ECC generator polynomial. That is, each node 42-58 performs an ECC function using a different generator polynomial than the other nodes.
- Each node when communicating with its neighboring nodes or stations receives the neighboring node's ECC generator polynomial.
- Each station can check frames from their neighboring sending nodes for errors using the same ECC generator polynomial that was used by the sending node when the frame was sent. Because each station (e.g. 42, 44, 46), sends data to a neighboring station (e.g. 48), using a different polynomial than the other sending stations for its ECC generator polynomial, then each receiving station (e.g. 48) can check the received frames for errors and subsequently combine the non-error portions of two or more frames received from the different stations (e.g. 42, 4, 46), into error-free usable frames.
- An exemplary embodiment and method may require that there be one ECC generator polynomial per station.
- the ECC generator polynomials may not all be unique, but there should be a plurality of different ECC generator polynomials that are used.
- Each transmitting station would exchange its ECC generator polynomial to a receiving station either just previous to the data transmission or as part of the header or footer portion of the data transmission or frame.
- the bits in the data packet may be shifted. That is, each station when transmitting a frame will indicate, via a shift field in the header of each frame, how the data in part of the frame is shifted or was shifted before the ECC was calculated by the transmitting station. By shifting the data in part of the frame a different amount when data is transmitted at each station or node 42-58, no data frame will be transmitted on a channel from one node to another node having the same ECC redundancy information. Variations of embodiments of the present invention may set each station or node to have its own static shift value for shifting the data within a frame prior to performing an ECC calculation.
- a randomly chosen shift value can be calculated in each node prior to performing the ECC calculation and transmitting the frame.
- the shift value can be incremented a predetermined amount, or random amount, so that the data part of the frame is shifted the same predetermined or a random amount before each ECC is calculated and the frame is transmitted from a node.
- nodes or stations 42, 44 and 46 each transmit the same frames to node or station 48, most likely, no data frame will have been transmitted on the channel using the same ECC redundancy information.
- the receiving station 48 would be enabled to combine faulty frames by recombining independently coded ECC information.
- Figure 4 depicts original data 70 that has data bits from zero (0) to n.
- a frame 72 is also depicted wherein shift information is provided in the shift field 73 of the header of the frame.
- the shift field 73 indicates that the data or cargo portion 76 of the frame has been shifted at the k bit such that the k+1 through n bit precede the 0-k bits in the data or cargo portion 76 of the frame.
- the ECC is calculated based on a different data bit pattern thereby resulting in a different ECC value than the value of an unshifted data or cargo portion.
- the check sum CRC portion 74 is calculated after the data is shifted.
- the receiving node e.g. 48
- the receiving node or station e.g. 48
- the receiving node or station reads the header of the frame including the shift field 73 to recalculate the ECC and/or CRC and compare the results with the provided CRC field 78 in the frame. If an error is found the ECC can be used, in conjunction with duplicate frames received from the same or other transmitting nodes that have the data field 76 shifted differently, to combine the other duplicated frames into error free data without requiring additional transmissions of the same data.
- each station or node may have a memory portion (not specifically shown) that stores all of the valid ECC generator polynomials in its network 40.
- a station e.g. 46
- transmits a data frame it may select and use one of the known ECC generator polynomials and provide an ECC ID number of the generator polynomial that was used in and ECC ID filed in the header of the data frame.
- each station or node may randomly choose an ECC generator polynomial ID from a plurality of predetermined ECC generator polynomials stored in the node for each or a predetermined number of frames.
- each station may choose an ECC generator polynomial ID via a round robin technique where it steps through all the ECC generator polynomials stored in the transmitting node and provide the ECC ID in a header field of the frame being transmitted.
- FIG. 5 depicts an exemplary embodiment wherein each station or node stores a number n of valid ECC generator polynomials 82.
- the code may be stored in a memory device 80 within each node.
- Each node stores the plurality of ECC generator polynomials 82 and labels each one of them with an ECC ID 84.
- the ECC generator polynomials 82 each coincide with an ECC ID number 1 through n 84.
- An ECC generator polynomial is used with every frame that is transmitted and the ECC ID 84 is provided an ECC ID field 90 in the header 86 of each transmitted frame 88.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
Selon l'invention, chaque noeud (42) ou station d'un réseau sans fil ad hoc à plusieurs bonds (40) utilise un polynôme générateur de code de correction d'erreur qui est différent d'un point de vue probabiliste d'un polynôme générateur de code de correction d'erreur utilisé dans un noeud voisin (72) lorsqu'une trame (72, 88) est préparée en vue d'une émission. En outre, les données ou la charge utile (76) d'une trame de données, en cours de préparation pour une émission, peuvent être décalées d'une longueur déterminée avant utilisation d'un polynôme générateur de code de correction d'erreur, pour la génération du code de correction d'erreur destiné à la trame. Un champ dans la trame de données, soit dans l'en-tête, soit à la fin de la trame de données, fournit des informations au noeud de réception (48) sur le polynôme générateur de code de correction d'erreur qui a été utilisé au niveau du noeud d'émission et/ou sur la longueur sur laquelle ont été décalées les données de charge utile de la trame de données. Bien que divers modes de réalisation du procédé et de l'appareil de la présente invention ont été illustrés dans les dessins annexés et décrits dans la description détaillée, on comprendra que l'invention n'est pas limitée aux modes de réalisation décrits, mais qu'elle est capable de nombreux réaménagements, modifications et substitutions sans s'écarter de l'esprit de l'invention telle qu'elle est exposée ici.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US73545505P | 2005-11-10 | 2005-11-10 | |
US60/735,455 | 2005-11-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2007054872A1 true WO2007054872A1 (fr) | 2007-05-18 |
Family
ID=37882377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/IB2006/054108 WO2007054872A1 (fr) | 2005-11-10 | 2006-11-03 | Procede pour prendre en charge un code de correction d'erreur reparti |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2007054872A1 (fr) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8612833B2 (en) | 2010-06-11 | 2013-12-17 | Samsung Electronics Co., Ltd. | Apparatus and method using matrix network coding |
US9065493B2 (en) | 2010-07-27 | 2015-06-23 | Samsung Electronics Co., Ltd. | Method and apparatus for coordinated multi-point communication for each sub-band based on long-term channel state information |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6748233B1 (en) * | 1999-10-28 | 2004-06-08 | Telcordia Technologies, Inc. | System and method for energy-efficient transmission power control, routing and transmission scheduling in wireless communication networks |
US6871314B2 (en) * | 1999-07-12 | 2005-03-22 | Hitachi, Ltd. | Forward error correcting code encoding equipment, forward error correcting code decoding equipment, and transmission apparatus |
WO2005064864A1 (fr) * | 2003-12-23 | 2005-07-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Determination des couts dans un reseau multi-sauts |
-
2006
- 2006-11-03 WO PCT/IB2006/054108 patent/WO2007054872A1/fr active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6871314B2 (en) * | 1999-07-12 | 2005-03-22 | Hitachi, Ltd. | Forward error correcting code encoding equipment, forward error correcting code decoding equipment, and transmission apparatus |
US6748233B1 (en) * | 1999-10-28 | 2004-06-08 | Telcordia Technologies, Inc. | System and method for energy-efficient transmission power control, routing and transmission scheduling in wireless communication networks |
WO2005064864A1 (fr) * | 2003-12-23 | 2005-07-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Determination des couts dans un reseau multi-sauts |
Non-Patent Citations (1)
Title |
---|
JURCA D ET AL: "Optimal FEC rate for media streaming in active networks", MULTIMEDIA AND EXPO, 2004. ICME '04. 2004 IEEE INTERNATIONAL CONFERENCE ON TAIPEI, TAIWAN JUNE 27-30, 2004, PISCATAWAY, NJ, USA,IEEE, vol. 2, 27 June 2004 (2004-06-27), pages 1319 - 1322, XP010771070, ISBN: 0-7803-8603-5 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8612833B2 (en) | 2010-06-11 | 2013-12-17 | Samsung Electronics Co., Ltd. | Apparatus and method using matrix network coding |
US9048997B2 (en) | 2010-06-11 | 2015-06-02 | Samsung Electronics Co., Ltd. | Apparatus and method using matrix network coding |
US9071406B2 (en) | 2010-06-11 | 2015-06-30 | Samsung Electronics Co., Ltd. | Apparatus and method using matrix network coding |
US9191156B2 (en) | 2010-06-11 | 2015-11-17 | Samsung Electronics Co., Ltd. | Apparatus and method using matrix network coding |
US9065493B2 (en) | 2010-07-27 | 2015-06-23 | Samsung Electronics Co., Ltd. | Method and apparatus for coordinated multi-point communication for each sub-band based on long-term channel state information |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101496360B (zh) | Ad hoc网络中的机会路由协议 | |
CN101897139B (zh) | 在无线网络中重传多播帧的方法及处理接收到的多播帧的方法 | |
Fragouli et al. | Network coding: an instant primer | |
EP2962428B1 (fr) | Procédé und appareil d'amélioration de performance dans un réseau sans fil | |
US10716048B2 (en) | Detecting critical links in bluetooth mesh networks | |
US8284680B2 (en) | Method and apparatus for multicast transmission in wireless network | |
JP2005536118A (ja) | 侵入検出機能を備えた移動体アドホックネットワーク及び関連方法 | |
EP1956768A1 (fr) | Appareil et procédé pour le contrôle d'une route de réseau ad hoc | |
US20100020740A1 (en) | Wireless Communication System, Wireless Communication Device, Wireless Communication Method, and Program | |
CN112534782B (zh) | 针对蓝牙网的独立冗余路径发现 | |
JP4447452B2 (ja) | アド・ホック通信ネットワーク用のarqmac及びこれを使用した方法 | |
EP1988655A1 (fr) | Procédé et appareil d'utilisation d'un code d'erreur pour la transmission de données | |
WO2007054872A1 (fr) | Procede pour prendre en charge un code de correction d'erreur reparti | |
RU2378770C2 (ru) | Способ и устройство для кодирования и планирования в системах передачи пакетных данных | |
WO2007054873A1 (fr) | Procede pour la prise en charge d'un code de correction d'erreur distribue | |
US8730810B2 (en) | Medium access control forwarding protocol | |
US20220015006A1 (en) | Methods for Multi-Lane Discovery with Partially Disjoint Paths | |
Chawla et al. | Fault tolerance based routing approach for WMN | |
EP3850891B1 (fr) | Détection de liaisons critiques dans des réseaux maillés bluetooth | |
WO2004114620A1 (fr) | Appareil de radiocommunication | |
Burmester et al. | Secure communications in ad hoc networks | |
Kalle | Reliable and prioritized communication using polarization diversity for industrial Internet of Things | |
JP2005079605A5 (fr) | ||
WO1998043166A1 (fr) | Procede et appareil permettant de communiquer des donnees additionnelles selectionnees dans un flux de donnees de taille fixe | |
Ivanov et al. | Probabilistic handshake in all-to-all broadcast coded slotted ALOHA |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 06821328 Country of ref document: EP Kind code of ref document: A1 |