The present invention is related to a method for statelessly reducing the length of network packets communicated using a standard network protocol. More specifically, the present invention is related to a method of compressing the header of the IPv6 format without needing to maintain that state of the connections to enhance the battery life and increase the bandwidth efficiency of wireless communication devices in a local area network (LAN).
Presently, Internet Protocol Version 4 (IPv4)is the most popular and standard protocol in use for the transmission of information over the Internet. Over the past few years, a new standard for addressing and transmitting information over the Internet has been developed and is referred to as IPv6. Although the IPv6 standard has not yet become widely adopted, the IPv6 standard is currently being utilized in numerous applications, has recently been mandated for use by the US Department of Defense, and has become the leading new protocol throughout the Asia Pacific countries. It is anticipated that IPv6 will become the standard for Internet communications in the very near future.
In the previously used IPv4 protocol, the destination and source address fields in the message header were each assigned a 32 bit address. Although the 32 bit address space was generous when first introduced, the number of Internet addresses are beginning to run out because they have been inefficiently allocated. The IPv6 standard has been developed to provide 128 bits of source and destination address space in the packet header. The expansion of the address length from 32 bits to 128 bits means that the new protocol will be able to support approximately 3×1038 addresses or approximately 8×1028 times more addresses. While there are methods that have been published to compress IPv4 and IPv6 headers, these all have required the devices compressing and decompressing the headers to maintain knowledge and state information about the connections and packets being modified. It would therefore be desirable to provide a method for providing header compression without needing to maintain such state information.
Although IPv6 is seen as an improvement of the IPv4 standard, the IPv6 standard increases the amount of data transmitted in the header of each message. Specifically, the header of each message increases from 160 bits (20 bytes/octets) in IPv4 to 320 bits (40 bytes/octets) of information in an IPv6 message. (Throughout this patent the term “octet” will be used to describe 8 bits of data rather than “byte” which is a less precise term.) Although the speed of communication over the Internet is increasing such that this increase in the header length will be seen as insubstantial, the increased header length has a significant effect on the battery life of non-line powered devices and on the transmission time for devices transmitting messages over a personal area network (PAN).
Therefore, it is an object of the present invention to provide a method and means to statelessly compress an IPv6 header from the full 40 octets to a smaller size to reduce the time required to transmit the message, thereby enhancing battery life and reducing transmission time.
The present invention is a method of reducing the length of a packet communicated using the IPv6 format. A packet sent using the IPv6 protocol includes an IPv6 header and a data payload, where the IPv6 header has a length of 40 octets. The method of the present invention reduces the overall length of the IPv6 header, and thus reduces the length of the entire packet.
Packets sent over a wide area network (WAN) are transmitted and received using the IPv6 protocol and include an IPv6 header having a length of 40 octets. When the packet is received at a local router or bridge connected to the wide area network, the local router or bridge translates the packet and communicates the packet to any one or more devices in communication with the local router or bridge as part of a local area network (LAN) or a personal area network (PAN). In many contemplated configurations of the local area network, each of the devices communicates with the local router using RF communication. Typically, the RF communication from each of the devices is powered by a self-contained battery. Thus, the amount of time required to transmit each of the packets has a direct impact on the life of the battery within the device.
Prior to transmission of the packet from the local router to any one of the devices that form the LAN or PAN, the local router compresses the IPv6 header. Specifically, the local router removes various portions of the IPv6 header to reduce the IPv6 header from 40 octets to a compressed header length of 4 octets or 20 octets.
During compression of the IPv6 header of packets from sources outside the LAN, the local router removes the version number, traffic class portion, flow label, and destination address prior to transmission of the packet to any one of the devices that form part of the LAN or PAN. Since the version number, traffic class portion and flow label for each of the packets sent between the local router and the devices of the LAN or PAN is the same, these portions of the IPv6 header can be eliminated. Further, since the LAN or PAN encapsulation header (MAC header) or LAN or PAN network layer include the destination address, this portion of the IPv6 header can be eliminated without any loss of information. When the compressed packet is received at any one of the devices or back at the local router, the removed address can be retrieved from the MAC or network header of each message. Thus, the elimination of the address portion from the IPv6 header and the static IPv6 header fields reduces the length of the header prior to transmission without loss of data.
When a compressed packet is received at the local router from any one of the devices that forms part of the LAN or PAN, the local router reconstitutes the IPv6 header by retrieving the source address from the MAC or network header. Additionally, the local router reconstitutes the IPv6 header by reinserting the version number, traffic class portion and flow label back into the compressed header. Once the IPv6 header has been reconstituted, the local router can transmit the uncompressed packet over the WAN, since the IPv6 header is complete.
By utilizing the header compression method described, each of the devices that form part of the local area network can communicate with the local router and communicate between the PAN and LAN devices more efficiently to enhance battery life and reduce band width consumption. Since both the source address and the destination address are included as a portion of the MAC or network headers, the IPv6 header can be reconstituted by the local router prior to transmission of the message over the WAN as necessary.
The drawings illustrate the best mode presently claimed for carrying out the invention. In the drawings:
Referring first to
As an example, each of the devices 12a-12c can be utilized as part of a complete home network that allows the user to remotely monitor and control multiple devices within the user's home. As an example, the user will be able to remotely monitor and control a thermostat within their home from a remote location. Likewise, the user may be able to turn off or on an appliance, air conditioning unit or other electronic device from a remote location. Additionally, if a hazardous condition detector detects an alarm condition, the alarm condition may be sent over the Internet 14 to alert the homeowner of the alarm condition.
In the network shown in
In the embodiment of the invention shown in
As can be understood in
Referring now to
Following the initial portion of the header, the IPv6 header format includes a source address 34 which has a length of one hundred twenty eight bits. Likewise, the destination address 36 is also a one hundred twenty eight bit address. As described previously, the IPv6 header format 20 expands both the source address 34 and the destination address 36 to a one hundred twenty eight bit address as compared to the IPv4 format in which both the source address and the destination address were thirty-two bit sections. As can be understood in
Referring back to
When an packet is received at the local router 16, the local router 16 can determine the device 12a-12c to which the packet is to be directed from the header information. However, if the local router 16 is to communicate with any of the devices 12a-12c using wireless communication, the forty octet header format increases the amount of time that the wireless transmission devices must be active to transmit the packet including the IPv6 header 20. Since each local router 16 communicates with the devices 12a-12c that form part of the LAN 18a or PAN 18b, much of the information included in the IPv6 header 20 is either a constant value or is included somewhere else in the packet, either the MAC or network header.
Referring back to
The next three fields, including the payload length 28, the next header field 30 and the hop limit 32 must be left intact and thus are not compressed. Thus, the initial six fields of the IPv6 header 20 can be compressed to encompass only four octets, rather than the eight octets required in the full, uncompressed IPv6 header 20.
As illustrated in
As illustrated in
As an example, when the packet is being sent using the standard Ethernet payload format 41 shown in
Referring now to
When a packet is to be sent outside of the local network 18a or 18b, either to other networks or to another local device, the complete IPv6 header can be rebuilt statelessly by reversing the above compression method and inserting the network prefix 38 and link layer address 40 into the source and destination address fields 34, 36. In addition to reinserting the network prefix 38 and the link layer address 40, the IPv6 packet header 20 is rebuilt by reinserting the version number 22, the traffic class 24 and the flow label 26, which were each removed during the compression process. Once the IPv6 header 20 has been reconfigured, the packet can be sent across the WAN 14 in a conventional manner.
As an example, if any one of the devices 12a-12c needs to communicate over the WAN 14 to the broadcast source, the device 12a-12c communicates a packet initially to the local router 16. When the local router 16 receives the packet from one of the devices 12a-12c, this packet includes a compressed header. Initially, the local router 16 decompresses the compressed header by statelessly reconstituting the header to the IPv6 packet header by reinserting the version block 22, the traffic class 24, the flow label 26 and the source address 34. As described previously, the source address 34 can be recovered from MAC or network headers of the packet received from the device 12a-12c.
Once the header of the packet has been reconstituted to be the fully IPv6 header 20, the packet can be transmitted by the local server 16 over the WAN 14.
Referring now to
After compression, as illustrated by arrow 56, the compressed packet 58 has the compressed header 50 and the same payload 54. As described previously, the compressed header 50 has a total length of four octets, as compared to the uncompressed header 20 having a length of forty octets. Since the payload 54 remains the constant thirty octet length, the compressed packet 58 has a total length of thirty-four octets. When such a compressed packet 58 is transmitted, only approximately 11.76% (4 octets of 34 octets) of the transmission time is required for the transmission of the compressed header 50, as compared to the 57.14% required when the header 20 is uncompressed.
As can be understood by the above description, when the transmission of the packets is occurring using RF transmission powered by a storage battery, the reduction in the amount of time required to transmit the header is a significant improvement as compared to an uncompressed header. In addition to saving battery life, the compression of the IPv6 header reduces the amount of bandwidth required for transmission and increases through-put significantly.
As the above description indicates, the IPv6 header, which is typically forty octets, can be compressed to four octets when communicating intraLAN or intraPAN (within the LAN or PAN). When the source or destination of the packet is outside the PAN or LAN, the respective address in the IPv6 header is not compressed and the resulting packet size is twenty octets. These reductions in the header 20 allows each of the local devices 12a-12c to reduce the transmission time for communication both within the local area network 18a or personal area network 18b and outside the LAN or PAN. Since the address information is carried within each message in the link layer, the source and destination fields can be rebuilt statelessly prior to transmission of the information over the WAN 14. The reduction in the size of the IPv6 header will have a significant effect on the battery life of the remote devices 12a-12c as well as channel contention and interference.
Various alternatives and embodiments are contemplated as being within the scope of the following claims particularly pointing out and distinctly claiming the subject matter regarded as the invention.
The present application is based on and claims priority to U.S. Provisional Patent Application Ser. No. 60/621,253, filed on Oct. 22, 2004.
Number | Date | Country | |
---|---|---|---|
60621253 | Oct 2004 | US |