Patent Publication Number: US-7212532-B1

Title: Message re-sending protocol for a wireless communications system

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
   This application is related to U.S. Pat. No. 7,002,947, issued Feb. 21, 2006, entitled “METHOD AND SYSTEM FOR DATA COLLISION AVOIDANCE IN A WIRELESS COMMUNICATIONS SYSTEM,” invented by Robert T. McFarland and Stephen E. Enke, said patent being filed concurrently herewith and incorporated by reference herein in its entirety. 
   FIELD OF THE INVENTION 
   The invention relates to communications, and more particularly, to a method and system for sending messages, or portions thereof, over a wireless network. 
   BACKGROUND OF THE INVENTION 
   Single-channel wireless communications networks are relatively simple to operate and provide an efficient method for a finite number of participants to exchange data. A common network structure is to permit one participant, or node, to establish a link over the network channel so that it may send a message to another participant, or node. This arrangement is currently being used to communicate STANAG 5066 data over a single-channel wireless HF network. 
   Wireless networks, especially HF networks, may be susceptible to interference during transmission. Such interference may cause a message sent over the network to not be completely received. Known HF networks employ a protocol in which an entire message is re-sent if any portion of the message has not been received. If large files are to be sent over the network, such a protocol has the potential to slow down or even halt transmission of data over the network. This is especially troubling if the network operates over a single channel, in which case every node in the network must wait until a message between two of the nodes is successfully transmitted. 
   It is therefore an object of the invention to increase the amount of data that can be transmitted on a single-channel wireless network. 
   It is another object of the invention to compensate for the adverse effects of interference encountered on a single-channel wireless network. 
   A feature of the invention is a message protocol that only re-sends portions of a previously sent message that are acknowledged as unreceived. 
   An advantage of the invention is an increase in the efficiency of message transmissions over a single-channel wireless network. 
   SUMMARY OF THE INVENTION 
   The invention provides a method for determining whether a message sent from a sending node to a receiving node has been successfully transmitted. The method is usable in a wireless network having a plurality of nodes configured to send and receive messages between each other. According to the method, the sending node transmits an identifying command to the receiving node that describes the sent message. The receiving node compares the description of the sent message with a received message that the receiving node has received. The receiving node responds to the sending node, said response indicating to the sending node the results of the comparison between the description of the sent message and the received message. The sending node transmits a portion of the sent message if the comparison between the received message and the description of the sent message indicates that the receiving node has not yet received the portion of the sent message. 
   The invention also provides a method of determining if all portions of a message have been successfully transmitted from a first node in a single-channel, wireless HF communications network to a second node in the network. Information about the transmitted message is sent to the second node. The information includes at least a name of the transmitted message and a size of the transmitted message. The sent information is compared to a received message that was received by the second node. The first node is informed of a portion of the transmitted message that was transmitted by the first node but not received by the second node. The portion of the message that was transmitted by the first node but not received by the second node is transmitted to the second node. 
   The invention further provides a single-channel wireless communications network. The network includes a first node and a second node. The first node is configured to send to the second node a message over the single channel and to transmit an inquiry command that communicates information regarding the sent message. The second node is configured to determine, using the information in the inquiry command, whether the sent message was correctly received. The second node transmits response information to the first node. The response information indicates whether a portion of the sent message was not received by the second node. The first node is configured to retransmit the portion of the sent message that was not received by the second node. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
       FIG. 1  is a schematic diagram showing a plurality of nodes in a wireless communications network. 
       FIG. 2  is a flowchart of a method according to the invention. 
       FIG. 3  is a schematic diagram of a command data packet according to the invention. 
       FIG. 4  is a schematic diagram of a response data packet according to the invention. 
       FIG. 5  is a schematic diagram of a file fragment packet according the invention. 
       FIG. 6  is a chart showing suggested packet sizes according to an embodiment of the invention. 
   

   DETAILED DESCRIPTION OF THE DRAWINGS 
   Turning now to the drawings, in which like reference numbers designate like components, an embodiment of the invention is schematically shown in  FIG. 1 . A wireless communications network  10  includes a plurality of nodes, which are identified by the letters A, B, C, . . . n. Each node includes a computer  12 , which may include a processor, memory, a display, and other components. Computer  12  also includes software that controls the transmission and reception of data, such as HF Messenger™, manufactured by Rockwell Collins, Inc. of Cedar Rapids, Iowa. Computer  12  may be considered a data source, or may be operationally connected to an external data source (not shown). 
   Computer  12  is connected to a wireless communications module  14 , which includes a modem  16 . Modem  16  converts data from computer  12  into a commonly accepted communications format and converts information in the communications format into a format useable by computer  12 . The output of modem  16  is sent to a radio  18 , which, through antenna  19 , transmits and receives data over a wireless network. In the present invention, the radios in all nodes A, B, C, . . . n transmit over a single channel. Each node is configured to communicate with other nodes one at a time, i.e., if node A desires to communicate with nodes B and C, it must do so sequentially and not simultaneously. 
   According to the invention, if node A desires to send a message or file to node B, node A establishes a link with node B and sends an inquiry packet to node B. The inquiry packet sends information about the to-be-sent file (such as the name and size of the file). The inquiry packet is schematically shown at  30  in  FIG. 3 , and the act of sending the inquiry packet is represented as step  21  in the method  20  of the invention depicted in  FIG. 2 . Inquiry packet  30  may also be termed a Resume Message Protocol Command Packet or a Resume Message Command. As shown in  FIG. 3 , Inquiry packet  30  includes a command section  32 , which identifies the command to node B, and a file identification section  34 , which supplies information about the file sent by node A. The information in file identification section  34  may include the file name, a timestamp correlating to the file, the size of the file, a cyclic redundancy checksum (CRC) or other type of checksum relating to the file, and a destination address. 
   Node B compares the information received in file identification section  34  of inquiry packet  30  with previously received files. If the information in file identification section  34  does not correspond to any files that node B has previously received, then node B assumes that the file identified in file identification section  34  is a new file (step  22 ), and node B reserves adequate storage space to accommodate the new incoming file. If node B determines that the file identified in file identification section  34  corresponds to a previously-received file, then in step  23  node B determines whether the file has been completely received. This may be done by comparing the size of the file that node B has received with the file size indicated in file identification section  34 . 
   Once steps  22  and (if necessary)  23  have been performed, in step  24  node B transmits a response packet  40  ( FIG. 4 ) to node A. Response packet  40  may also be termed a Gap Request Response Packet. Response packet  40  includes a command section  42 , which identifies the command to node A. Response packet  40  also includes an offset  44  into the file that indicates the beginning of any gap in the transmitted file. Response packet  40  further includes a length section  46  that communicates to node A the length of the portion of the file (or the gap in the file) that node B has not yet received. Response packet  40  further includes a bytes received section  48  that communicates to node A how much of the file node B has received. In this manner node B can easily communicate to node A the percentage of the file received by node B. 
   The contents of offset  44 , length section  46 , and bytes received section  48  vary depending on what portion, if any, of the file has been received by node B. If node B has determined in step  22  ( FIG. 2 ) that the file identified in file identification section  34  has not yet been sent, then response packet  40  will include an offset  44  containing a value of zero, a length section  46  containing a value equal to the file size communicated in information section  34 , and a bytes received section  48  containing a value of zero (step  24   a ). If node B has determined in step  23  that the file identified in file identification section  34  has been completely received, then response packet  40  will include a value in offset  44  equal to the file size communicated in information section  34 , a value in length section  46  equal to zero, and a bytes received section  48  having a value equal to the size of the file that has been received (step  24   b ). However, if node B has determined in step  23  that only a portion of the file identified in file identification section  34  has been received, then response packet  40  will include an offset  44  having a value indicating the location of the beginning of a gap in the transmission, a length section  46  having a value equal to the size of the file portion that has not been received, and a bytes received section  48  having a value equal to the size of the file that has been received (step  24   c ). 
   When response packet  40  has been received by node A, in step  25  node A sends a file fragment packet  50  that includes the fragment, or portion, of the file that has not been received by node B. File fragment packet  50  ( FIG. 5 ), which may also be called a Resume Message Protocol File Fragment Packet, may include a command section  52  similar to command sections  32  and  42 , an offset  54  corresponding to the location of the gap in the file, a length section  56  containing a value confirming the size of the file portion that has not been received by node B, and a file fragment section  58  that contains the portion or fragment of the file that has not been received by node B. Node B may transmit additional response packets to node A if further portions of the file are required to be retransmitted. When the file has been completely and correctly received, Node B will transmit a response packet similar to that represented by step  24   b  in  FIG. 2 , and no further inquiry packets regarding the file will be sent. 
   If a response packet is not received by node A within a predetermined time, node A will send the entire file. This feature ensures that the invention may be used in wireless networks in which one or more of the nodes may not be configured to send or receive response packets as described herein. 
   The size of each of inquiry packet  30 , response packet  40  and file fragment packet  50 , and their respective sections or portions, may vary depending on the data to be transmitted and on the limitations of the wireless network. It has been found that the packet and packet portion sizes (in bytes) shown in the chart  60  of  FIG. 6  are sufficient to communicate necessary information over a single-channel HF wireless network having a finite number of nodes. 
   An advantage of the invention is that the requirement to re-send entire files over a wireless network is substantially reduced, if not eliminated. 
   Another advantage of the invention is its interoperability with network nodes not being configured to send and/or receive response packets  40 . This allows the invention to be used with previously developed and commonly accepted technology. 
   While the invention has been disclosed in its preferred form, the specific embodiments thereof as disclosed and illustrated herein are not to be considered in a limiting sense as numerous variations are possible. The subject matter of the invention includes all novel and non-obvious combinations and subcombinations of the various elements, features, functions and/or properties disclosed herein. No single feature, function, element or property of the disclosed embodiments is essential to all of the disclosed inventions. Similarly, where the claims recite “a” or “a first” element or the equivalent thereof, such claims should be understood to include incorporation of one or more such elements, neither requiring nor excluding two or more such elements. 
   It is believed that the following claims particularly point out certain combinations and subcombinations that are directed to the disclosed inventions and are novel and non-obvious. Inventions embodied in other combinations and subcombinations of features, functions, elements and/or properties may be claimed through amendment of the present claims or presentation of new claims in this or a related application. Such amended or new claims, whether they are directed to a different invention or directed to the same invention, whether different, broader, narrower or equal in scope to the original claims, are also regarded as included within the subject matter of the invention of the present disclosure.