Summary of the invention:
The purpose of this invention is to provide a kind of MIPv6 of being used for robust header compression/decompression method, improve the wireless bandwidth utilance during with transmission MIPv6 grouping under wireless environment.
Technical solution of the present invention is as follows:
This method is to carry out following processing at the two ends of wireless communication link: 1. grouping is screened to MIPv6; And 2. header compression/decompress(ion) is carried out in specific grouping; Wherein, transmit leg is compression side, and reciever is a decompressor; Classify to selected grouping in compression side, select corresponding compression method to carry out header compression then after, send decompressor to; Decompressor obtains enough information according to the leader after compressing, and reverts to the leader of original uncompressed then.
Described specific cluster is that the scope of header compression/decompress(ion) is the static fields and the dynamic domain of the UDP/MIPv6/IPv6 leader in this data stream packet with the data stream packet of udp protocol encapsulation; Described classification is meant that the grouping after the compression comprises following classification: the initialisation packet that has 1. comprised complete MIPv6 grouping information; 2. the Dynamic Packet that has comprised the leader domain information of dynamic change; 3. the complete compressed packet that has comprised CID.
The course of work of described compressor reducer comprises the steps: 1. to screen: compressor reducer is discerned a stream according to flow label, source address territory in the MIPv6 grouping; Then, filter out the grouping of the data flow that contains the UDP/MIPv6/IPv6 leader; 2. initialization: the grouping for belonging to new data flow, compressor reducer work is arranged on initial condition, compressor reducer sends initialisation packet to decompression machine; 3. start the compression rules:, send Dynamic Packet and complete compressed packet according to the ROHC rules for the grouping that the data flow of setting up initialization information is arranged;
1. the course of work of described decompression machine comprises the steps: to accept initialisation packet for new data flow, sets up the related list item of decompress(ion); 2. for the grouping of setting up the related list item of decompress(ion), utilize the ROHC rules to carry out decompress(ion), search the decompress(ion) association, revert to the leader of original uncompressed according to cid information; 3. according to the operator scheme in the selected ROHC rules, whether decision sends feedback packet to compression side.
That is to say, the present invention be with the robust header compression applications in the wireless environment of MIPv6, the UDP/MIPv6/IPv6 leader at the two ends of Radio Link to real time data stream carries out compression/decompression, and leader expense required in the transmission course is reduced.
(1) principle
In the MIPv6 draft, stipulate, mobile node (Mobile Node, hereinafter to be referred as MN) when Correspondent Node (Correspondent Node is hereinafter to be referred as CN) sent grouping, the source address in the IPv6 packet header was the Care-of Address (Care-of Address) of MN.For the home address (HomeAddress) that comprises unique identification MN in grouping, the grouping that MN sends must have the stay of two nights option leader (Destination OptionHeader) that comprises home address.The mode of pathfinding leader (Routing Header) is then adopted in the grouping that CN issues MN, and promptly Fen Zu destination address is the Care-of Address of MN, contains the home address of MN in the pathfinding leader.As shown in Figure 1.For simplicity, we are commonly referred to as these two leaders of stipulating in the MIPv6 agreement expansion leader of MIPv6.
Because transmission of radio links speed is lower, the error rate is higher characteristic, seem excessive in the expense of transmitted over wireless networks IPv6 packet header.For example, one frame voice data payload has only the 15-32 byte usually, need transport layer User Datagram Protoco (UDP) (UDP) leader of the IPv6 leader of 40 bytes, 20/24 byte MIPv6 leader, 8 bytes and in the MIPv6 environment, transmit these data, the leader expense of UDP/MIPv6/IPv6 is 68/72 byte altogether, if Correspondent Node also is MN, the leader expense that adds together of Fen Zu IP/UDP/RTP has 92 bytes so.This is occupied bandwidth not only, and the probability that grouping is dropped because of makeing mistakes increases.
In fact, in transmission course, it is identical that the IPv6 leader of the grouping of same data flow has a lot of territories, and the part of dynamic change has only a few territory.In addition, each territory in the MIPv6 leader all is static constant.Therefore, if only when data flow begins, sending complete MIPv6 grouping and corresponding option leader on the Radio Link, the part of variation and related identifier with respect to same stream are only transmitted in the leader territory of follow-up grouping, so just can more effectively utilize bandwidth.
Because header compression need keep the state of the side of compression and decompressor, therefore, header compression only is applicable to the data flow that the duration is long, a plurality of groupings are arranged, and is nonsensical for single packet header compression.In general, real-time audio frequency, video flowing all are the form transmission long data stream with the UDP message, so the present invention only compresses the UDP/MIPv6/IPv6 leader in the MIPv6 grouping.
(2) MIPv6 header compression/decompressing method
The application of ROHC in the Radio Link under the MIPv6 condition is as shown in Figure 2:
With the mobile node MN of Radio Link one end and the radio network controller (RNC) of the other end (Radio Networkcontroller) node as the compression/decompression of carrying out ROHC.What transmit on the Radio Link between MN and the RNC is to divide into groups through the MIPv6 that adopts the compression of ROHC rules, and what transmit on the wire link between RNC and the CN is common MIPv6 grouping.MN and RNC can carry out compression can carry out decompress(ion) again.For some stream, at the two ends of Radio Link (being MN and RNC), compressor reducer is at transmit leg respectively for its compressor reducer and decompression machine, and decompression machine is the recipient.
Concrete compression/decompression method is as follows:
The course of work of compressor reducer comprises the steps:
1. screening.Compressor reducer is discerned a stream according to flow label, source address territory in the MIPv6 grouping; Then, filter out the grouping of the data flow that contains the UDP/MIPv6/IPv6 leader;
2. initialization.Grouping for belonging to new data flow is arranged on initial condition (IR:Initialization and Refresh) with compressor reducer work, and compressor reducer sends initialisation packet to decompression machine.This initialisation packet has also comprised sub-protocol territory (profile ID) and related identifier additional informations such as (context ID are called for short CID) except the information that contains MIPv6 grouping itself.Profile ID is the standard that is used for pointing out on specific link how specific stream of packets (the present invention is at the UDP/MIPv6/IPv6 stream of packets) being carried out header compression.CID is used for making the content association (information that contains each territory in the grouping in the contingency table) of decompressor this stream of index in the storage contingency table, and it is unique in compressed packet institute channel transmitted.The compression/decompression device is safeguarded a related list item to each data flow.
3. start the compression rules.For the grouping that the data flow of setting up initialization information is arranged, send Dynamic Packet and complete compressed packet according to the ROHC rules.At this moment will be at the concrete condition of this grouping, according to the ROHC rules it is handled.For dissimilar territory in the grouping, adopt different processing methods.The packet header form of communicating by letter between contrast MN and the CN is analyzed below.
As shown in the table, it all is constant (as information source/stay of two nights address, information source/stay of two nights port etc.) that a lot of territories are arranged in the packet header in the IPv6 data flow, is called static fields; Some territory can change once in a while (as the restriction of traffic level, relay point); Some territory be do irregular variation (as the verification of UDP and).Should at first classify during compression, then different processing methods be adopted in dissimilar territories each territory in the leader.
The basic leader of table 1:IPv6
| The territory |
Static | Version, flow label, next leader, source address, stay of two nights address |
Dynamically | Traffic level, the relay point restriction |
The expansion leader of table 2:MIPv6
| The territory |
Static | Stay of two nights option leader relevant and pathfinding leader with home address |
Dynamically | Do not have |
Table 3:UDP leader
| The territory |
Static | The information source port, stay of two nights port, |
Dynamically | Verification and |
Generally do not send in the static grouping of territory after compression.Dynamic territory can only send when changing, at this moment adopt Dynamic Packet, and it has comprised the leader domain information and the data field information of cid information, dynamic change; Compressed packet generally is to send under the situation that does not occur changing in dynamic territory fully, mainly comprises cid information.Particular content is referring to sub-protocol format description part.
Therefore, the grouping after the compression comprises following classification:
1. the initialisation packet that has comprised complete MIPv6 grouping information;
2. the Dynamic Packet that has comprised the leader domain information of dynamic change;
3. the complete compressed packet that has comprised CID.
The course of work of decompression machine comprises the steps:
1. for new data flow, accept initialisation packet, set up the related list item of decompress(ion); 2. for the grouping of setting up the related list item of decompress(ion), utilize the ROHC rules to carry out decompress(ion), search the decompress(ion) association, revert to the leader of original uncompressed according to cid information; 3. according to the operator scheme in the selected ROHC rules, whether decision sends feedback packet to compression side.
Wherein feedback packet is to be used for telling compression side this whether success of grouping decompress(ion), mainly comprises cid information, feedback marks information and the information of decompress(ion) success whether.
(3) MIPv6 header compression sub-protocol
According to above-mentioned the ROHC framework is used for the method for the packet header compression of MIPv6, and the initialisation packet of RFC3095 definition, Dynamic Packet, the form of compressed packet, feedback packet fully, the present invention proposes MIPv6 header compression sub-protocol.
1. the formal definition with the profile ID of MIPv6 header compression is 0x000a.The form of CID just defines according to RFC3095.
2. owing to the packet number territory (IP-ID) that does not have in the UDP/MIPv6/IPv6 leader in sequence number or the IPv4 grouping, compression side should produce the sequence number SN of 2 bytes (16 bit) at random, as the sign of feedback.During transmission it is compressed into the value of utilizing gained after W-LSB (the Window-based LSB encoding) algorithm computation.
3. the form of initialisation packet also defines according to RFC3095, has wherein comprised the extension header target content of MIPv6.Its concrete form such as Fig. 3.
4. according to the definition of RFC3095, Dynamic Packet and complete compressed packet mainly contain three classes, are defined as type 0 respectively, Class1, type 2.Type 0 is complete compressed packet, the SN that only transmits Sequence Number (perhaps adding cyclic redundancy check (CRC) and CRC); Class1 comprises and is used for upgrading the SN function parameters; Type 2 is a Dynamic Packet, comprises the information that is used to upgrade dynamic domain.Because the function of the SN among the present invention is a constant, so there is not the compressed packet of Class1.
And, ROHC has three kinds of operator schemes: unidirectional mode (Uni-directional, abbreviation U-mode), bidirectional optimistic mode (Bi-directional Optimistic is called for short O-mode), bidirectional reliable mode (Bi-directional Reliable is called for short R-mode).When not existing maybe can not use feedback channel the time, use U-mode, this moment, grouping only sent to a direction, from the side of compression to decompressor.The purpose of O-mode provides the compression validity and the rational robustness of height.R-mode then provides robustness completely, but expense is big slightly and feedback message is more.Two kinds of patterns of O-mode and R-mode feedback is more frequent, with decompressor whether synchronous the related strict logic of detection is arranged all in compression side.
For different mode of operations, its compressed packet form generally is different.Therefore, following form is followed in the name of packet type here: pattern-type-characteristic (mode-type-property).As: R-0 is meant that R-mode, type are 0 compressed packet; UOR-2-Prio is meant that the type is 2 compressed packet, is applicable to all working pattern, and contains the information that Prio (priority) changes in this compression leader.
Therefore, the Dynamic Packet of the MIPv6 sub-protocol of the present invention's proposition and complete compressed packet form are as follows:
The first kind: type 0 (two kinds of forms are arranged)
R-0 form such as Fig. 3, SN are the compressed value of 6 bits.
UO-0 form such as Fig. 4, SN are the compressed value of 4 bits, also will add the CRC of 3 bits.
Second class: type 2 (two kinds of forms are arranged)
The SN of 6 bits and the CRC of 7 bits are arranged.During F=0, expression is grouped into UOR-2-Prio (as Fig. 5), and during F=1, expression is grouped into UOR-2-Hop form (as Fig. 6).
When the priority in the packet header changes, should send the UOR-2-Prio grouping, the priority after changing is write in the Priority territory.
When the restriction of the relay point in the packet header changes, should send the UOR-2-Hop grouping.Relay point restriction after changing is write in the Hoplimit territory.
(4) effect
In order to check the compression effectiveness of the present invention to the MIPv6 grouping, we have adopted MIPv6 grouping the carry out emulation of header compression of NS-2 emulation tool to the voice and video business.
Speech business is the classical business on the Radio Link, and in 3G, multimedia service also will be a major part.The speech business of emulation of the present invention is adaptive multi-rate (AMR:Adaptive Multi Rate) coding standard voice, and the generation speed of speech data is 12.2kb/s, per 20 millisecond of one frame.Video traffic adopts the MPEG-4 standard, and the transmission rate of video data is 48kb/s, and per second sends 10 frames.The Radio Link time-delay is 100 milliseconds, the error rate 10
-4~10
-2B/s.
If avg_header_len represents the average leader length of dividing into groups, total_bytes represents total transmission byte number (comprising various types of compressed packet and feedback thereof), decomped represents the packet count of successful decompress(ion), payload size during payload_len represents to divide into groups (payload length of same stream is identical), then average leader length calculation formula is:
avg_header_len=(total_bytes-decomped×payload_len)÷decomped
Table 4, table 5 are under the situation of Radio Link zero defect, the average leader length (unit is a byte) after the speech business of different length, the compression of video traffic.By in the table as can be known, when total traffic greater than 1000 grouping time, the average leader length of ROHC agreement tends towards stability.Contrast table 4, table 5, because (20ms) lacked in the class interval of speech business, (100ms) grown in the class interval of video traffic, and header compression agreement and time correlation (slow Initiated Mechanism, timeout mechanism)
Table 4: the average leader length (unit is a byte) of audio service
Table 5: the average leader length (unit is a byte) of video traffic
Simulation result shows that the compression ratio under the different mode is all greater than 96%.With ROHC MIPv6 is divided into groups to carry out the efficient that header compression can improve transmitted in packets greatly, the MIPv6 sub-protocol of having used the ROHC header compression can adapt to the characteristic that transmission of radio links speed is low, the error rate is high preferably.The application of this invention helps improving the bandwidth availability ratio under the wireless environment.