CN102740357B - R Mode S O state robustness header compression method and apparatus - Google Patents
R Mode S O state robustness header compression method and apparatus Download PDFInfo
- Publication number
- CN102740357B CN102740357B CN201210196495.0A CN201210196495A CN102740357B CN 102740357 B CN102740357 B CN 102740357B CN 201210196495 A CN201210196495 A CN 201210196495A CN 102740357 B CN102740357 B CN 102740357B
- Authority
- CN
- China
- Prior art keywords
- value
- equal
- less
- type
- wsnbits
- 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
Links
Abstract
The present invention relates to a kind of R Mode Ss O state robustness header compression method and apparatus, this method includes:Judgment step, the message number N sent according to current message sending cycle judge whether to meet the condition for carrying cyclic redundancy check (CRC):N >=64 pRTT and N < (64 pRTT)+m1, wherein pRTT are the message number in two-way time, and m1 is realizes parameter, and maximum occurrences are pRTT;Compressed package type decision step, current Packet type to be compressed is determined according to current message dynamic domain to be compressed relative to the parameter of change in context and the judging result of judgment step;Group bag forwarding step, sends compressed package, if wherein judgment step is judged as YES, the compressed package carries CRC, and otherwise the compressed package does not carry CRC according to definite current Packet type group bag to be compressed.The method of the present invention and device can improve compression efficiency.
Description
Technical field
The present invention relates to the communications field, and in particular to a kind of R Mode Ss O state robustness header compression method and apparatus.
Background technology
Robustness header compression abbreviation ROHC (Robust Header Compression), is a kind of general pressure of IP-based
Contracting technology, the RFC3095 issued in Internet engineering task forces (Internet Engineering Task Force),
Specific definition is carried out in the standard documents such as RFC4815, its major function is to being needed between UE and base station in air interface transmission
The heading of data message is compressed, such as RTP/UDP/IP heads, then transmits compressed data, to improve bandwidth of air-interface
Utilization rate.
The ROHC functional entitys proposed in RFC3095 include for the compressor reducer of compressed packet head and for recovering message
The decompression machine of head, conciliating pressure side in compression end has respective state machine, and ROHC compressions can be described as the reconciliation of compressive state machine
The interaction of compressive state machine.By being that each data flow establishes a Context (up and down between compressor reducer and decompressor
Text, including message header field static part, dynamic part and changing pattern parameter etc.), to obtain compression gains.Compression end and decompression
Contracting end must keep context synchronous, and ROHC adds CRC (Cyclic Redundancy Check, circulation in compressed packet
Redundancy check), and pass through feeding back ACK/STATC-NACK/NACK (Acknowledgment/Static-Negative
Acknowledgment/Negative Acknowledgment, confirmation/static state non-acknowledgement/dynamic non-acknowledgement) it is upper and lower to ensure
It is literary in time, correctly to update.
The compressive state of ROHC can be divided into IR (Initialization and Refresh, initialization refresh) state, FO
(First Order, the first rank) state and SO (Second Order, second-order) state.IR states are the original states of compressor reducer,
This state compressor reducer sends complete message header;Under FO states, compressor reducer does not send static information substantially, only sends few
The dynamic domain information of amount and regularly changing domain;Under SO states, the effect of compression is optimal, and heading is fully compressed.IR
State, FO states and SO states raise the compression ratio of heading successively, i.e., IR states heading compression ratio is minimum, and FO states are taken second place, SO state reports
Literary head compression ratio highest.Can mutually it be changed between state.
The pattern of ROHC can be divided into U (Unidirectional, unidirectional) pattern, O (Bidirectional
Optimistic, bidirectional optimistic) pattern and R (Bidirectional Reliable, two-way reliable) pattern.The number in U patterns
According to can only from compressor reducer to the direction of decompression machine send;In O patterns and R patterns, data can transmit in the two directions;O moulds
Formula sends error recovery request using a feedback channel and important updating context confirms;R patterns have one it is more intensive
The feedback channel (being used to avoid the message dropping caused by Context is invalid) used, in this mode, compressor reducer is to message
ACK of the certainty factor dependent on decompressor to each Context renewal messages, therefore compressor reducer must periodically be sent
Context renewals message (renewal message must carry the CRC of 7bit or 8bit), the ACK until receiving decompressor.
Fig. 1 is the periodicity sending method flow diagram that R Mode Ss O states Context as defined in RFC3095 agreements updates message:
The compressed packet 101 of (64-pRTT) a R-0 types is sent first, and wherein pRTT is the message number (being less than 64) in two-way time;
Then the context renewal messages 102 of m1 R-0-CRC type are retransmited, to realize parameter, maximum occurrences are wherein m1
pRTT;The compressed packet 103 of (pRTT-m1) a R-0 types is finally sent, a wheel Context renewal messages, which are sent, to be terminated.
There are following defect for this sending method:When saltus step is larger once in a while for heading to be compressed, there are SN (Sequence
Number, sequence number) or IPID (IP Identification, IP mark) LSB (Least Significant Bits, most
Low order) be more than R-0-* (R-0-* refers to R-0 and R-0-CRC) type LSB situation, such as SN is in current message
0000000011111111, and SN is 0000000010000000, the SN LSB=7 calculated at this time in context, and R-0-*
The SN LSB that type message provides are up to 6, and compressor reducer must be moved back from SO states to FO states, this can reduce the pressure of R patterns
Contracting efficiency.
The content of the invention
The technical problem to be solved in the present invention is to provide a kind of R Mode Ss O state robustness header compression method and apparatus, with solution
The problem of certainly compression efficiency is low.
In order to solve the above technical problems, the present invention provides a kind of R Mode Ss O state robustness header compression methods, this method bag
Include:
Judgment step, the message number N sent according to current message sending cycle judge whether to meet carrying cyclic redundancy
Verify the condition of (CRC):- the pRTT of N≤64 and N ﹤ (64-pRTT)+m1, wherein pRTT are the message number in two-way time, and m1 is
Realize parameter, and maximum occurrences are pRTT;
Compressed package type decision step, relative to the parameter of change in context and sentences according to current message dynamic domain to be compressed
The judging result of disconnected step determines current Packet type to be compressed;
Group bag forwarding step, sends compressed package, if wherein judgment step according to definite current Packet type group bag to be compressed
It is judged as YES, then the compressed package carries CRC, and otherwise the compressed package does not carry CRC.
Further, the compression Packet type includes basic head type and extension header type.
Alternatively, the current message to be compressed is real-time transport protocol (RTP) message, and the parameter includes:Representing should
Whether RTP messages carry the parameter byCSRCFlag of contribution source (CSRC) list, represent the least significant bit of sequence number (SN)
Parameter wSnBits, the parameter wIpidBits for representing the least significant bit that IP is identified, the least significant bit for representing timestamp (TS)
Parameter dwTsbits, represent the RTP messages whether need in basic head transmit RTP messages M domains parameter byMark.
Alternatively, the current message to be compressed is User Datagram Protocol (UDP) message, and the parameter includes:Represent
The parameter wSnBits of the least significant bit of sequence number (SN), the parameter wIpidBits for representing the least significant bit that IP is identified.
In order to solve the above technical problems, present invention also offers a kind of R Mode Ss O state robustness header compression devices, the device
Including:
Judgment module, the message number N for having been sent according to current message sending cycle judge whether to meet carrying circulation
The condition of redundancy check (CRC):- the pRTT of N≤64 and N ﹤ (64-pRTT)+m1, wherein pRTT are the message number in two-way time,
M1 is realizes parameter, and maximum occurrences are pRTT;
Compressed package type decision module, for the parameter according to current message dynamic domain to be compressed relative to change in context
Current Packet type to be compressed is determined with the judging result of judgment module;
Group bag sending module, for sending compressed package according to the current Packet type group bag to be compressed determined, if wherein described
Judgment module is judged as YES, then the compressed package carries CRC, and otherwise the compressed package does not carry CRC.
The bright R Mode Ss O state robustness header compression method and apparatus of the present invention, the type of compressed packet is that basis currently is waited to press
Contracting message dynamic domain situation of change and whether need carry CRC be derived from.When the LSB for SN or IPID occur is more than R-0-*
The situation of the LSB of type, compressor reducer need not move back to FO states from SO states, need to only send and conform under R Mode S O states
The Packet type asked, so as to improve the compression efficiency of R patterns.
Brief description of the drawings
Fig. 1 is the periodicity sending method flow diagram that R Mode Ss O states Context as defined in RFC3095 agreements updates message;
Fig. 2 is the flow chart schematic diagram of R Mode Ss O state robustness header compressions proposed by the present invention;
Fig. 3 is the flow diagram of embodiment 1 of the present invention by taking UDP messages as an example
Fig. 4 is the overview flow chart of embodiment 2 of the present invention by taking RTP messages as an example;
Fig. 5 is to judge not meeting decision flow chart when carrying CRC conditions in Fig. 4;
Fig. 6 is to judge to meet decision flow chart when carrying CRC conditions in Fig. 4;
Fig. 7 is the modular structure schematic diagram of R Mode Ss O state robustness header compression devices of the present invention.
Embodiment
R Mode Ss O state robustness header compression methods of the present invention, send (64-pRTT) a compression report for not carrying CRC first
Text;Then the Context renewal messages of m1 carrying CRC are retransmited;Finally send (pRTT-m1) a compression for not carrying CRC
Message, specifically, as shown in Fig. 2, comprising the following steps:
Step 201:Judgment step, the message number N sent according to current message sending cycle judge whether to meet carrying
The condition of cyclic redundancy check (CRC):- the pRTT of N≤64 and N ﹤ (64-pRTT)+m1, wherein pRTT are the message in two-way time
Number, m1 is realizes parameter, and maximum occurrences are pRTT;
One message sending cycle sends 64 messages, and an also referred to as wheel Context renewal messages are sent, in a message
In sending cycle, a message is often sent, packet accouter has been continuously transmitted and has added 1, if a wheel gives out a contract for a project end, it is necessary to will connect
Supervention is delivered newspaper literary number clear 0, in step 201, is determined according to the value range (often hair once wrap add 1) for having continuously transmitted message number
Whether message needs to carry CRC
M1 is that parameter is realized as defined in agreement, value<=pRTT, what this parametric user can configure.
PRTT in the present invention is also the message number in two-way time, and less than 64.
Compressor reducer sends a compressed packet, and to the feedback for receiving decompressor and being directed to this message, this period is exactly
Two-way time.
Step 202:Compressed package type decision step, according to current message dynamic domain to be compressed relative to change in context
The judging result of parameter and judgment step determines current Packet type to be compressed;
When type of message is different, the parameter for judgement is different, specifically,
When the current message to be compressed is real-time transport protocol (RTP) message, the parameter includes:Represent that the RTP is reported
Text whether carry contribution source (CSRC) list parameter byCSRCFlag, represent sequence number (SN) least significant bit parameter
The ginseng of the parameter wIpidBits for the least significant bit that wSnBits, expression IP are identified, the least significant bit of expression timestamp (TS)
Number dwTsbits, represent whether the RTP messages need to transmit the parameter byMark in the M domains of RTP messages in basic head.
The current message to be compressed is User Datagram Protocol (UDP) message, and the parameter includes:Represent sequence number
(SN) the parameter wSnBits of least significant bit, the parameter wIpidBits for representing the least significant bit that IP is identified.
Compression Packet type described in the present invention includes basic head type and extension header type.
Step 203:Group bag forwarding step, compressed package is sent according to definite current Packet type group bag to be compressed, if wherein
Judgment step is judged as YES, then the compressed package carries CRC, and otherwise the compressed package does not carry CRC.
201 are repeated the above steps to step 203, periodicity Context renewal messages is carried out and sends.
When situations of the LSB for SN or IPID occur more than the LSB of R-0-* types, if the plan of giving out a contract for a project using the prior art
Slightly, decompressor end decompression error is necessarily caused, compression end can move back to FO states after receiving error feedback from from SO states.And this
Invention determines type of giving out a contract for a project according to actual conditions, and solution pressure side would not solve mistake.
The embodiment of the present invention is described in detail below in conjunction with attached drawing.It should be noted that do not conflicting
In the case of, the feature in embodiment and embodiment in the application can be mutually combined.
Embodiment 1
A kind of R Mode Ss O state robustness header compression methods are present embodiments provided, it is nonrandom with single IPV4 and IPID
(RND=0) UDP (User Datagram Protocol, User Datagram Protocol) messages illustrate, as shown in figure 3, the party
Method comprises the following steps:
Step 301, message number has been sent according to current message sending cycle, has judged whether current UDP messages to be compressed need
Carry CRC:If having sent message number less than (64-pRTT) or more than or equal to (64-pRTT)+m1, jump to step 302;
If having sent message number more than or equal to (64-pRTT) and being less than (64-pRTT)+m1, need to carry CRC;
Step 302, judge whether that it is 0 (i.e. wSnBits to meet that the value of wSnBits is less than or equal to the 6, value of wIpidBits
<Whether=6&&wIpidBits==0 sets up).Wherein wSnBits represents the LSB of SN;WIpidBits represents the LSB of IPID.
Step 303 is jumped to if meeting, otherwise jumps to step 304;
Step 303, the basic head type of the compressed package of current UDP messages is determined as R-0 and does not carry extension header, is jumped to
Step 323;
Step 304, judge whether to meet that the value of wSnBits is less than or equal to the value of 6, wIpidBits less than or equal to 7
(i.e. wSnBits<=6&&wIpidBits<Whether=7 set up), step 305 is jumped to if meeting, otherwise jumps to step
306;
Step 305, the basic head type of the compressed package of current UDP messages is determined as R-1 and does not carry extension header, is jumped to
Step 323;
Step 306, judge whether to meet that the value of wSnBits is less than or equal to the value of 9, wIpidBits less than or equal to 10
(i.e. wSnBits<=9&&wIpidBits<Whether=10 set up), step 307 is jumped to if meeting, otherwise jumps to step
Rapid 308;
Step 307, the basic head type for determining the compressed package of current UDP messages is R-1, and extension header type is EXT0, is jumped
Go to step 323;
Step 308, judge whether to meet that the value of wSnBits is less than or equal to the value of 9, wIpidBits less than or equal to 16
(i.e. wSnBits<=9&&wIpidBits<Whether=16 set up), step 309 is jumped to if meeting, otherwise jumps to step
Rapid 310;
Step 309, the basic head type for determining the compressed package of current UDP messages is R-1, and extension header type is EXT1, is jumped
Go to step 323;
Step 310, judge whether to meet that the value of wSnBits is less than or equal to 14 (i.e. wSnBits<Whether=14 set up),
Step 311 is jumped to if meeting, otherwise jumps to step 322;
Step 311, the basic head type for determining the compressed package of current UDP messages is R-1, and extension header type is EXT3, is jumped
Go to step 323;
Step 312, judge (whether meet value of the value of wSnBits less than or equal to 7, wIpidBits as 0 i.e. wSnBits
<Whether=7&&wIpidBits==0 sets up), step 313 is jumped to if meeting, otherwise jumps to step 314;
Step 313, the basic head type of the compressed package of current UDP messages is determined as R-0-CRC and does not carry extension header, is jumped
Go to step 323;
Step 314, judge whether that it is 0 (i.e. wSnBits to meet that the value of wSnBits is less than or equal to the 5, value of wIpidBits
<Whether=5&&wIpidBits==0 sets up), step 315 is jumped to if meeting, otherwise jumps to step 316;
Step 315, the basic head type of the compressed package of current UDP messages is determined as UOR-2 and does not carry extension header, is redirected
To step 323;
Step 316, judge whether to meet that the value of wSnBits is less than or equal to the value of 8, wIpidBits less than or equal to 3
(i.e. wSnBits<=8&&wIpidBits<Whether=3 set up), step 317 is jumped to if meeting, otherwise jumps to step
318;
Step 317, the basic head type for determining the compressed package of current UDP messages is UOR-2, and extension header type is EXT0,
Jump to step 323;
Step 318, judge whether to meet that the value of wSnBits is less than or equal to the value of 8, wIpidBits less than or equal to 11
(i.e. wSnBits<=8&&wIpidBits<Whether=11 set up), step 319 is jumped to if meeting, otherwise jumps to step
Rapid 320;
Step 319, the basic head type for determining the compressed package of current UDP messages is UOR-2, and extension header type is EXT1,
Jump to step 323;
Step 320, judge whether to meet that the value of wSnBits is less than or equal to 14 (wSnBits<=14) whether set up, such as
Fruit sets up and then jumps to step 321, otherwise jumps to step 322;
Step 321, the basic head type for determining the compressed package of current UDP messages is UOR-2, and extension header type is EXT3,
Jump to step 323;
Step 322, determine the basic head type of the compressed package of current UDP messages for IR_DYN and without extension header;
Process of the above step 302 to step 322 for definite current Packet type to be compressed.
Step 323, the message of compression is sent according to the compression Packet type of selection, group after wrapping.
Repeat step 301 carries out periodicity Context renewal messages and sends to step 323.
Embodiment 2
Present embodiments provide a kind of R Mode Ss O state robustness header compression methods, with single IPV4 and IPID it is nonrandom (i.e.
RND=0, wherein RND (random) are the whether random marks of IPID, and 0 represents nonrandom, and 1 represents random) RTP (Real-
TimeTransportProtocol, real-time transport protocol) message illustrates that this method comprises the following steps:
Step 401, RTP message numbers have been sent according to current message sending cycle, whether has judged current RTP messages to be compressed
Need to carry CRC:If having sent message number less than (64-pRTT) or more than or equal to (64-pRTT)+m1, need not take
Band CRC;If having sent message number more than or equal to (64-pRTT) and being less than (64-pRTT)+m1, need to carry CRC;
Step 402, the parameter and step 401 according to current RTP messages dynamic domain to be compressed relative to change in context
Judging result determines current Packet type to be compressed;
Specifically, if the judgment step of step 401 is no, step 501 shown in Fig. 5 in flow is performed to step 519,
Specifically include:
Step 501:The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 6,
The value of wIpidBits is 0, the value of dwTsbits is 0 and the value of byMark is 0 (i.e. 0==byCSRCFlag&&wSnBits<=
Whether 6&&wIpidBits==0&&dwTsbits==0&&byMark==0 sets up).Wherein byCSRCFlag values are 1
Represent that the RTP messages carry CSRC (Contributing source, contribute source) list, represent not carry for 0;WSnBits tables
Show the LSB (Least Significant Bits, least significant bit) of SN (Sequence Number, sequence number);
WIpidBits represents the LSB of IPID (IP Identification, IP mark);DwTsbits expressions TS (TS timestamps,
Timestamp LSB);ByMark values represent to need to transmit the M domains of RTP messages in basic head for 1, and being represented for 0 need not
Transmit.Step 502 is jumped to if meeting, otherwise jumps to step 503;
It is because basic head can not carry the information of whole heading to be compressed sometimes why to use extension header.It is such as right
In the message of UOR-2 types, the SN LSB length that agreement provides is 6bits, if when current heading to be compressed calculates
SN LSB be 7bits, must just use extension header at this time.
Step 502, the basic head type of the compressed package of current RTP message is determined as R-0 and does not carry extension header, is jumped to
Step 504;
The value for step 503, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 6,
Value of the value of wIpidBits less than or equal to 5 and dwTsbits is 0 (i.e. 0==byCSRCFlag&&wSnBits<=6&&
wIpidBits<Whether=5&&dwTsbits==0 sets up), step 504 is jumped to if meeting, otherwise jumps to step
505;
Step 504, the basic head type of the compressed package of current RTP message is determined as R-1-ID and does not carry extension header;
The value for step 505, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 6,
Value of the value of wIpidBits equal to 0 and dwTsbits is less than or equal to 5 (i.e. 0==byCSRCFlag&&wSnBits<=6&&
WIpidBits==0&&dwTsbits<Whether=5 set up), step 506 is jumped to if meeting, otherwise jumps to step
507;
Step 506, the basic head type of the compressed package of current RTP message is determined as R-1-TS and does not carry extension header;
The value for step 507, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits less than or equal to 8 and dwTsbits is 0 (i.e. 0==byCSRCFlag&&wSnBits<=9&&
wIpidBits<Whether=8&&dwTsbits==0 sets up), step 508 is jumped to if meeting, otherwise jumps to step
509;
Step 508, the basic head type for determining the compressed package of current RTP message is R-1-ID, and extension header type is EXT0;
The value for step 509, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits equal to 0 and dwTsbits is less than or equal to 8 (i.e. 0==byCSRCFlag&&wSnBits<=9&&
WIpidBits==0&&dwTsbits<Whether=8 set up), step 510 is jumped to if meeting, otherwise jumps to step
511;
Step 510, the basic head type for determining the compressed package of current RTP message is R-1-TS, and extension header type is EXT0;
The value for step 511, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits less than or equal to 8 and dwTsbits is less than or equal to 8 (i.e. 0==byCSRCFlag&&wSnBits<
=9&&wIpidBits<=8&&dwTsbits<Whether=8 set up), step 512 is jumped to if meeting, otherwise jumps to step
Rapid 513;
Step 512, the basic head type for determining the compressed package of current RTP message is R-1-ID or R-1-TS, extension header class
Type is EXT1;
The value for step 513, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits less than or equal to 16 and dwTsbits is less than or equal to 8 (i.e. 0==byCSRCFlag&&wSnBits
<=9&&wIpidBits<=16&&dwTsbits<Whether=8 set up), step 514 is jumped to if meeting, is otherwise jumped to
Step 515;
Step 514, the basic head type for determining the compressed package of current RTP message is R-1-ID, and extension header type is EXT2;
The value for step 515, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits less than or equal to 8 and dwTsbits is less than or equal to 16 (i.e. 0==byCSRCFlag&&wSnBits
<=9&&wIpidBits<=8&&dwTsbits<Whether=16 set up), step 516 is jumped to if meeting, is otherwise redirected
To step 517;
Step 516, the basic head type for determining the compressed package of current RTP message is R-1-TS, and extension header type is EXT2;
Step 517, judge whether to meet that the value of wSnBits is less than or equal to 14 (i.e. wSnBits<Whether=14 set up),
Step 518 is jumped to if meeting, otherwise jumps to step 519;
Step 518, the basic head type for determining the compressed package of current RTP message is R-1-TS, and extension header type is EXT3;
Step 519, determine the basic head type of the compressed package of current RTP message for IR_DYN and without extension header.
Specifically, if the judgment step of step 401 is yes, step 601 shown in Fig. 6 in flow is performed to 625, specifically
Including:
The value for step 601, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 7,
The value of wIpidBits is 0, the value of dwTsbits is 0 and the value of byMark is 0 (i.e. 0==byCSRCFlag&&wSnBits<=
Whether 7&&wIpidBits==0&&dwTsbits==0&&byMark==0 sets up), jump to step if meeting
602, otherwise jump to step 601;
Step 602, the basic head type of the compressed package of current RTP message is determined as R-0-CRC and does not carry extension header;
The value for step 603, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 6,
Value of the value of wIpidBits less than or equal to 5 and dwTsbits is 0 (i.e. 0==byCSRCFlag&&wSnBits<=6&&
wIpidBits<Whether=5&&dwTsbits==0 sets up), step 604 is jumped to if meeting, otherwise jumps to step
605;
Step 604, the basic head type of the compressed package of current RTP message is determined as UOR-2-ID and does not carry extension header;
The value for step 605, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 6,
Value of the value of wIpidBits equal to 0 and dwTsbits is less than or equal to 5 (i.e. 0==byCSRCFlag&&wSnBits<=6&&
WIpidBits==0&&dwTsbits<Whether=5 set up), step 606 is jumped to if setting up, otherwise jumps to step
607;
Step 606, the basic head type of the compressed package of current RTP message is determined as UOR-2-TS and does not carry extension header;
The value for step 607, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits less than or equal to 8 and dwTsbits is 0 (i.e. 0==byCSRCFlag&&wSnBits<=9&&
wIpidBits<Whether=8&&dwTsbits==0 sets up), step 608 is jumped to if meeting, otherwise jumps to step
609;
Step 608, the basic head type for determining the compressed package of current RTP message is UOR-2-ID, and extension header type is
EXT0;
The value for step 609, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits equal to 0 and dwTsbits is less than or equal to 8 (i.e. 0==byCSRCFlag&&wSnBits<=9&&
WIpidBits==0&&dwTsbits<Whether=8 set up), step 610 is jumped to if meeting, otherwise jumps to step
611;
Step 610, the basic head type for determining the compressed package of current RTP message is UOR-2-TS, and extension header type is
EXT0;
The value for step 611, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits less than or equal to 8 and dwTsbits is less than or equal to 8 (i.e. 0==byCSRCFlag&&wSnBits<
=9&&wIpidBits<=8&&dwTsbits<Whether=8 set up), step 612 is jumped to if meeting, is otherwise jumped to
Step 613;
Step 612, the basic head type for determining the compressed package of current RTP message is UOR-2-ID or UOR-2-TS, extension
Head type is EXT1;
Step 613, judge whether to meet that the value of wSnBits is less than or equal to the value of 14, wIpidBits less than or equal to 5
And the value of dwTsbits is 0 (i.e. wSnBits<=14&&wIpidBits<Whether=5&&dwTsbits==0 sets up), if
Satisfaction then jumps to step 614, otherwise jumps to step 615;
Step 614, the basic head type for determining the compressed package of current RTP message is UOR-2-ID, and extension header type is
EXT3;
Step 615, judge whether to meet wSnBits value be less than or equal to the value of 14, wIpidBits for 0 and
The value of dwTsbits is less than or equal to 5 (i.e. wSnBits<=14&&wIpidBits==0&&dwTsbits<=5 whether into
It is vertical), step 616 is jumped to if meeting, otherwise jumps to step 617;
Step 616, the basic head type for determining the compressed package of current RTP message is UOR-2-TS, and extension header type is
EXT3;
The value for step 617, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits less than or equal to 8 and dwTsbits is less than or equal to 16 (i.e. 0==byCSRCFlag&&wSnBits
<=9&&wIpidBits<=8&&dwTsbits<Whether=16 set up), step 618 is jumped to if meeting, is otherwise redirected
To step 619;
Step 618, the basic head type for determining the compressed package of current RTP message is UOR-2-TS, and extension header type is
EXT2;
The value for step 619, judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to 9,
Value of the value of wIpidBits less than or equal to 16 and dwTsbits is less than or equal to 8 (i.e. 0==byCSRCFlag&&wSnBits
<=9&&wIpidBits<=16&&dwTsbits<Whether=8 set up), step 620 is jumped to if meeting, is otherwise redirected
To step 621;
Step 620, the basic head type for determining the compressed package of current RTP message is UOR-2-ID, extension header selection EXT2;
Step 621, judge whether to meet that the value of wSnBits is less than or equal to the 14, value of wIpidBits and is less than or equal to
Value (the i.e. wSnBits of dwTsbits<=14&&wIpidBits<Whether=dwTsbits sets up), jump to step if meeting
Rapid 622, otherwise jump to step 623;
Step 622, the basic head type for determining the compressed package of current RTP message is UOR-2-TS, and extension header type is
EXT3;
Step 623, judge whether to meet that the value of wSnBits is less than or equal to the 14, value of wIpidBits and is more than dwTsbits
Value (i.e. wSnBits<=14&&wIpidBits>Whether dwTsbits sets up), step 624 is jumped to if setting up, otherwise
Jump to step 625;
Step 624, the basic head type for determining the compressed package of current RTP message is UOR-2-ID, and extension header type is
EXT3;
Step 625, determine the basic head type of the compressed package of current RTP message for IR_DYN and without extension header.
Step 403, the message of compression is sent according to the RTP message compression Packet types of selection, group after wrapping;
Repeat step 401 carries out periodicity Context renewal messages and sends to step S403.
Above, there is provided process flow is judged for RTP messages and the optimal of UDP messages, provided of course that sending first
(64-pRTT) a compressed packet for not carrying CRC;Then the Context renewal messages of m1 carrying CRC are retransmited;Finally send out
(pRTT-m1) a compressed packet for not carrying CRC is sent, and according to current message dynamic domain to be compressed relative to change in context
Parameter determines compression Packet type, can also be handled using other flows, details are not described herein.
In order to realize preceding method, present invention also offers a kind of R Mode Ss O state robustness header compression devices, such as Fig. 7 institutes
Show, which includes judgment module, compressed package type decision module and group bag sending module, wherein:
Judgment module, the message number N for having been sent according to current message sending cycle judge whether to meet carrying circulation
The condition of redundancy check (CRC):- the pRTT of N≤64 and N ﹤ (64-pRTT)+m1, wherein pRTT are the message number in two-way time,
M1 is realizes parameter, and maximum occurrences are pRTT;
Compressed package type decision module, for the parameter according to current message dynamic domain to be compressed relative to change in context
Current Packet type to be compressed is determined with the judging result of judgment module;
Group bag sending module, for sending compressed package according to the current Packet type group bag to be compressed determined, if wherein described
Judgment module is judged as YES, then the compressed package carries CRC, and otherwise the compressed package does not carry CRC.
Compression Packet type described in the present invention includes basic head type and extension header type.
First, RTP messages
When the current message to be compressed is real-time transport protocol (RTP) message, the parameter includes:Represent that the RTP is reported
Text whether carry contribution source (CSRC) list parameter byCSRCFlag, represent sequence number (SN) least significant bit parameter
The ginseng of the parameter wIpidBits for the least significant bit that wSnBits, expression IP are identified, the least significant bit of expression timestamp (TS)
Number dwTsbits, represent whether the RTP messages need to transmit the parameter byMark in the M domains of RTP messages in basic head.
Based on foregoing schemes, when the judgment module is judged as NO, the compressed package type decision module performs following behaviour
Make:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 6, value of wIpidBits and is
0th, the value of dwTsbits is 0 and the value of byMark is 0, and the basic head type of the compressed package of current RTP message is determined if meeting
For R-0, and do not carry extension header;Otherwise:
It is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 6, value of wIpidBits
It is 0 in or equal to the value of 5 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is R-1-
ID, and do not carry extension header;Otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to value of 6, wIpidBits etc.
It is less than or equal to 5 in the value of 0 and dwTsbits, if meeting:
The basic head type for determining the compressed package of current RTP message is R-1-TS, and does not carry extension header, and otherwise judgement is
The no value for meeting byCSRCFlag is 0, the value of wSnBits be less than or equal to 9, wIpidBits value be less than or equal to 8 and
The value of dwTsbits is 0, and the basic head type that the compressed package of current RTP message is determined if meeting is R-1-ID, extension header class
Type is EXT0, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to value of 9, wIpidBits etc.
It is less than or equal to 8 in the value of 0 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is R-
1-TS, extension header type are EXT0, otherwise:
It is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 8 in or equal to the value of 8 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is R-1-ID or R-1-TS, and extension header type is EXT1, otherwise:
It is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 8 in or equal to the value of 16 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is R-1-ID, and extension header type is EXT2, otherwise:
It is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 16 in or equal to the value of 8 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is R-1-TS, and extension header type is EXT2, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to 14, the compressed package of current RTP message is determined if meeting
Basic head type is R-1-TS, and extension header type is EXT3, otherwise:
It is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 8 in or equal to the value of 16 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is R-1-ID, and extension header type is EXT2;Otherwise:
The basic head type for determining the compressed package of current RTP message is IR_DYN, and does not carry extension header;
Wherein, the value of the byCSRCFlag represents that the RTP messages carry CSRC lists for 1, and the RTP messages are represented for 0
CSRC lists are not carried;The value of the byMark represents to need to transmit the M domains of RTP messages in basic head for 1, is represented not for 0
Need the M domains of the transmission RTP messages in basic head.
When the judgment module is judged as YES, the compressed package type decision module performs following operation:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 7, value of wIpidBits and is
0th, the value of dwTsbits is 0 and the value of byMark is 0, and the basic head type of the compressed package of current RTP message is determined if meeting
For R-0-CRC, and extension header is not carried, otherwise:
It is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 6, value of wIpidBits
It is 0 in or equal to the value of 5 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-
2-ID, and extension header is not carried, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to value of 6, wIpidBits etc.
It is less than or equal to 5 in the value of 0 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is
U0R-2-TS, and extension header is not carried, otherwise:
It is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is 0 in or equal to the value of 8 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-
2-ID, extension header type are EXT0, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to value of 9, wIpidBits etc.
It is less than or equal to 8 in the value of 0 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is
UOR-2-TS, extension header type are EXT0, otherwise:
It is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 8 in or equal to the value of 8 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is UOR-2-ID or UOR-2-TS, and extension header type is EXT1, otherwise:
Judge whether to meet wSnBits value be less than or equal to 14, wIpidBits value be less than or equal to 5 and
The value of dwTsbits is 0, and the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-ID, extension header
Type is EXT3, otherwise:
Judge whether to meet that the value that value of the value less than or equal to 14, wIpidBits of wSnBits is 0 and dwTsbits is small
In or equal to 5, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-TS, and extension header type is
EXT3, otherwise:
It is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 16 in or equal to the value of 8 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is UOR-2-TS, and extension header type is EXT2, otherwise:
Judge whether to meet the 0 of the byCSRCFlag, value of wSnBits be less than or equal to the 9, value of wIpidBits be less than or
Equal to 16 and the value of dwTsbits is less than or equal to 8, and the basic head type that the compressed package of current RTP message is determined if meeting is
UOR-2-ID, extension header type are EXT2, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to the value of 14, wIpidBits less than or equal to dwTsbits's
Value, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-TS, and extension header type is EXT3, no
Then:
Judge whether to meet that the value of wSnBits is less than or equal to value of the value more than dwTsbits of 14, wIpidBits, if
The basic head type for meeting then to determine the compressed package of current RTP message is UOR-2-ID, and extension header type is EXT3, is otherwise determined
The basic head type of the compressed package of current RTP message is IR_DYN, and does not carry extension header;
Wherein, the value of the byCSRCFlag represents that the RTP messages carry CSRC lists for 1, and the RTP messages are represented for 0
CSRC lists are not carried;The value of the byMark represents to need to transmit the M domains of RTP messages in basic head for 1, is represented not for 0
Need the M domains of the transmission RTP messages in basic head.
2nd, UDP messages
If the current message to be compressed is User Datagram Protocol (UDP) message, the parameter includes:Represent sequence number
(SN) the parameter wSnBits of least significant bit, the parameter wIpidBits for representing the least significant bit that IP is identified.
When the judgment module is judged as NO, the compressed package type decision module performs following operation:
Value of the value less than or equal to 6, wIpidBits for judging whether to meet wSnBits is 0, is determined if meeting current
The basic head type of the compressed package of UDP messages is R-0, and does not carry extension header, otherwise:
Judge whether to meet that value of the value less than or equal to 6, wIpidBits of wSnBits is less than or equal to 7, if meeting
The basic head type for determining the compressed package of current UDP messages is R-1, and does not carry extension header, otherwise:
Judge whether to meet that value of the value less than or equal to 9, wIpidBits of wSnBits is less than or equal to 10, if meeting
The basic head type for determining the compressed package of current UDP messages is R-1, and extension header type is EXT0, otherwise:
Judge whether to meet that value of the value less than or equal to 9, wIpidBits of wSnBits is less than or equal to 16, if meeting
The basic head type for determining the compressed package of current UDP messages is R-1, and extension header type is EXT1, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to 14, the compressed package of current UDP messages is determined if meeting
Basic head type is R-1, and extension header type is EXT3, and the basic head type for otherwise determining the compressed package of current UDP messages is
IR_DYN, and do not carry extension header.
When the judgment module is judged as YES, the compressed package type decision module performs following operation:
Value of the value less than or equal to 7, wIpidBits for judging whether to meet wSnBits is 0, is determined if meeting current
The basic head type of the compressed package of UDP messages is R-0-CRC, and does not carry extension header, otherwise:
Value of the value less than or equal to 5, wIpidBits for judging whether to meet wSnBits is 0, is determined if meeting current
The basic head type of the compressed package of UDP messages is R-2, and does not carry extension header, otherwise:
Judge whether to meet that value of the value less than or equal to 8, wIpidBits of wSnBits is less than or equal to 3, if meeting
The basic head type for determining the compressed package of current UDP messages is UOR-2, and extension header type is EXT0, otherwise:
Judge whether to meet that value of the value less than or equal to 8, wIpidBits of wSnBits is less than or equal to 11, if meeting
The basic head type for determining the compressed package of current UDP messages is UOR-2, and extension header type is EXT1, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to 14, the compressed package of current UDP messages is determined if meeting
Basic head type is UOR-2, and extension header type is EXT3, and the basic head type for otherwise determining the compressed package of current UDP messages is
IR_DYN, and do not carry extension header.
The bright R Mode Ss O state robustness header compression method and apparatus of the present invention, the type of compressed packet is that basis currently is waited to press
Contracting message dynamic domain situation of change and whether need carry CRC be derived from.After applying the present invention, in periodicity sending
When Context updates message, when the LSB for SN or IPID occur is more than the situation of the LSB of R-0-* types, compressor reducer need not be from SO
State is moved back to FO states, only satisfactory Packet type need to be sent under R Mode S O states, so as to improve R patterns
Compression efficiency.
Although the present invention is described in detail above, the present invention is not limited thereto, those skilled in the art of the present technique
Principle it can carry out various modifications according to the present invention.Therefore, all modifications made according to the principle of the invention, all should be understood to
Fall into protection scope of the present invention.
One of ordinary skill in the art will appreciate that all or part of step in the above method can be instructed by program
Related hardware is completed, and described program can be stored in computer-readable recording medium, such as read-only storage, disk or CD
Deng.Alternatively, all or part of step of above-described embodiment can also be realized using one or more integrated circuits.Accordingly
Ground, each module in above-described embodiment can be realized in the form of hardware, and the form of software function module can also be used real
It is existing.The present invention is not restricted to the combination of the hardware and software of any particular form.
Claims (14)
1. a kind of two-way reliable R pattern second stage SO state robustness header compression methods in compressor reducer, it is characterised in that this method
Including:
Judgment step, the message number N sent according to current message sending cycle judge whether to meet carrying cyclic redundancy check
The condition of CRC:- the pRTT of N≤64 and N ﹤ (64-pRTT)+m1, wherein pRTT are the message number in two-way time, and m1 joins to realize
Number, and maximum occurrences are pRTT;
Compressed package type decision step, relative to the parameter of change in context and judges to walk according to current message dynamic domain to be compressed
Rapid judging result determines current Packet type to be compressed;
Group bag forwarding step, sends compressed package, if wherein judgment step judges according to definite current Packet type group bag to be compressed
It is yes, then the compressed package carries CRC, and otherwise the compressed package does not carry CRC;
Wherein, the compression Packet type includes basic head type and extension header type.
2. the method as described in claim 1, it is characterised in that:The current message to be compressed is realtime transmission protocol RTP report
Text, the parameter include:Represent whether the RTP messages carry the parameter byCSRCFlag of contribution source CSRC lists, represent sequence
The parameter wSnBits of the least significant bit of number SN, represent IP marks least significant bit parameter wIpidBits, represent the time
Stab the parameter dwTsbits of the least significant bit of TS, represent whether the RTP messages need to transmit the M of RTP messages in basic head
The parameter byMark in domain.
3. method as claimed in claim 2, it is characterised in that:When the judgment step is judged as NO, the compression Packet type
Steps in decision-making comprises the following steps:
(a1) value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 6, value of wIpidBits and is
0th, the value of dwTsbits is 0 and the value of byMark is 0, and the basic head type of the compressed package of current RTP message is determined if meeting
For R-0, and extension header is not carried, otherwise perform step (a2);
(a2) it is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 6, value of wIpidBits
It is 0 in or equal to the value of 5 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is R-1-
ID, and extension header is not carried, otherwise perform step (a3);
(a3) value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to value of 6, wIpidBits etc.
It is less than or equal to 5 in the value of 0 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is R-
1-TS, and extension header is not carried, otherwise perform step (a4);
(a4) it is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is 0 in or equal to the value of 8 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is R-1-
ID, extension header type are EXT0, otherwise perform step (a5);
(a5) value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to value of 9, wIpidBits etc.
It is less than or equal to 8 in the value of 0 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is R-
1-TS, extension header type are EXT0, otherwise perform step (a6);
(a6) it is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 8 in or equal to the value of 8 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is R-1-ID or R-1-TS, and extension header type is EXT1, otherwise performs step (a7);
(a7) it is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 8 in or equal to the value of 16 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is R-1-ID, and extension header type is EXT2, otherwise performs step (a8);
(a8) it is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 16 in or equal to the value of 8 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is R-1-TS, and extension header type is EXT2, otherwise performs step (a9);
(a9) judge whether to meet that the value of wSnBits is less than or equal to 14, the compressed package of current RTP message is determined if meeting
Basic head type is R-1-TS, and extension header type is EXT3, and the basic head type for otherwise determining the compressed package of current RTP message is
IR_DYN, and do not carry extension header;
Wherein, the value of the byCSRCFlag represents that the RTP messages carry CSRC lists for 1, represents that the RTP messages are not taken for 0
Band CSRC lists;The value of the byMark represents to need to transmit the M domains of RTP messages in basic head for 1, and being represented for 0 need not
The M domains of RTP messages are transmitted in basic head.
4. method as claimed in claim 2, it is characterised in that:When the judgment step is judged as YES, the compression Packet type
Steps in decision-making comprises the following steps:
(b1) value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 7, value of wIpidBits and is
0th, the value of dwTsbits is 0 and the value of byMark is 0, and the basic head type of the compressed package of current RTP message is determined if meeting
For R-0-CRC, and extension header is not carried, otherwise perform step (b2);
(b2) it is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 6, value of wIpidBits
It is 0 in or equal to the value of 5 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-
2-ID, and extension header is not carried, otherwise perform step (b3);
(b3) value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to value of 6, wIpidBits etc.
It is less than or equal to 5 in the value of 0 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is
U0R-2-TS, and extension header is not carried, otherwise perform step (b4);
(b4) it is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is 0 in or equal to the value of 8 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-
2-ID, extension header type are EXT0, otherwise perform step (b5);
(b5) value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to value of 9, wIpidBits etc.
It is less than or equal to 8 in the value of 0 and dwTsbits, the basic head type that the compressed package of current RTP message is determined if meeting is
UOR-2-TS, extension header type are EXT0, otherwise perform step (b6);
(b6) it is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 8 in or equal to the value of 8 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is UOR-2-ID or UOR-2-TS, and extension header type is EXT1, otherwise performs step (b7);
(b7) judge whether to meet wSnBits value be less than or equal to 14, wIpidBits value be less than or equal to 5 and
The value of dwTsbits is 0, and the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-ID, extension header
Type is EXT3, otherwise performs step (b8);
(b8) judge whether to meet that the value that value of the value less than or equal to 14, wIpidBits of wSnBits is 0 and dwTsbits is small
In or equal to 5, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-TS, and extension header type is
EXT3, otherwise performs step (b9);
(b9) it is small that the value for judging whether to meet byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits
It is less than or equal to 16 in or equal to the value of 8 and dwTsbits, the basic head class of the compressed package of current RTP message is determined if meeting
Type is UOR-2-TS, and extension header type is EXT2, otherwise performs step (b10);
(b10) judge whether to meet the 0 of the byCSRCFlag, value of wSnBits be less than or equal to the 9, value of wIpidBits be less than or
Equal to 16 and the value of dwTsbits is less than or equal to 8, and the basic head type that the compressed package of current RTP message is determined if meeting is
UOR-2-ID, extension header type are EXT2, otherwise perform step (b11);
(b11) judge whether to meet that the value of wSnBits is less than or equal to the 14, value of wIpidBits and is less than or equal to dwTsbits
Value, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-TS, and extension header type is EXT3,
Otherwise step (b12) is performed;
(b12) judge whether to meet that the value of wSnBits is less than or equal to value of the value more than dwTsbits of 14, wIpidBits, if
The basic head type for meeting then to determine the compressed package of current RTP message is UOR-2-ID, and extension header type is EXT3, is otherwise determined
The basic head type of the compressed package of current RTP message is IR_DYN, and does not carry extension header;
Wherein, the value of the byCSRCFlag represents that the RTP messages carry CSRC lists for 1, represents that the RTP messages are not taken for 0
Band CSRC lists;The value of the byMark represents to need to transmit the M domains of RTP messages in basic head for 1, and being represented for 0 need not
The M domains of RTP messages are transmitted in basic head.
5. the method as described in claim 1, it is characterised in that:The current message to be compressed is user datagram protocol UDP
Message, the parameter include:Represent the parameter wSnBits of the least significant bit of sequence number SN, represent the minimum effective of IP marks
The parameter wIpidBits of position.
6. method as claimed in claim 5, it is characterised in that:When the judgment step is judged as NO, the compression Packet type
Steps in decision-making comprises the following steps:
(c1) value of the value less than or equal to 6, wIpidBits for judging whether to meet wSnBits is 0, is determined if meeting current
The basic head type of the compressed package of UDP messages is R-0, and does not carry extension header, otherwise performs step (c2);
(c2) judge whether to meet that value of the value less than or equal to 6, wIpidBits of wSnBits is less than or equal to 7, if meeting
The basic head type for determining the compressed package of current UDP messages is R-1, and does not carry extension header, otherwise performs step (c3);
(c3) judge whether to meet that value of the value less than or equal to 9, wIpidBits of wSnBits is less than or equal to 10, if meeting
The basic head type for determining the compressed package of current UDP messages is R-1, and extension header type is EXT0, otherwise performs step (c4);
(c4) judge whether to meet that value of the value less than or equal to 9, wIpidBits of wSnBits is less than or equal to 16, if meeting
The basic head type for determining the compressed package of current UDP messages is R-1, and extension header type is EXT1, otherwise performs step (c5);
(c5) judge whether to meet that the value of wSnBits is less than or equal to 14, the compressed package of current UDP messages is determined if meeting
Basic head type is R-1, and extension header type is EXT3, and the basic head type for otherwise determining the compressed package of current UDP messages is
IR_DYN, and do not carry extension header.
7. method as claimed in claim 5, it is characterised in that:When the judgment step is judged as YES, the compression Packet type
Steps in decision-making comprises the following steps:
(d1) value of the value less than or equal to 7, wIpidBits for judging whether to meet wSnBits is 0, is determined if meeting current
The basic head type of the compressed package of UDP messages is R-0-CRC, and does not carry extension header, otherwise performs step (d2);
(d2) value of the value less than or equal to 5, wIpidBits for judging whether to meet wSnBits is 0, is determined if meeting current
The basic head type of the compressed package of UDP messages is UOR-2, and does not carry extension header, otherwise performs step (d3);
(d3) judge whether to meet that value of the value less than or equal to 8, wIpidBits of wSnBits is less than or equal to 3, if meeting
The basic head type for determining the compressed package of current UDP messages is UOR-2, and extension header type is EXT0, otherwise performs step (d4);
(d4) judge whether to meet that value of the value less than or equal to 8, wIpidBits of wSnBits is less than or equal to 11, if meeting
The basic head type for determining the compressed package of current UDP messages is UOR-2, and extension header type is EXT1, otherwise performs step (d5);
(d5) judge whether to meet that the value of wSnBits is less than or equal to 14, the compressed package of current UDP messages is determined if meeting
Basic head type is UOR-2, and extension header type is EXT3, and the basic head type for otherwise determining the compressed package of current UDP messages is
IR_DYN, and do not carry extension header.
A kind of 8. two-way reliable R pattern second stage SO state robustness header compression devices in compressor reducer, it is characterised in that the device
Including:
Judgment module, the message number N for having been sent according to current message sending cycle judge whether to meet carrying cyclic redundancy
The condition of check (CRC):- the pRTT of N≤64 and N ﹤ (64-pRTT)+m1, wherein pRTT are the message number in two-way time, and m1 is real
Existing parameter, and maximum occurrences are pRTT;
Compressed package type decision module, for relative to the parameter of change in context and being sentenced according to current message dynamic domain to be compressed
The judging result of disconnected module determines current Packet type to be compressed;
Group bag sending module, for sending compressed package according to the current Packet type group bag to be compressed determined, if wherein the judgement
Module is judged as YES, then the compressed package carries CRC, and otherwise the compressed package does not carry CRC;
Wherein, the compression Packet type includes basic head type and extension header type.
9. device as claimed in claim 8, it is characterised in that:The current message to be compressed is realtime transmission protocol RTP report
Text, the parameter include:Represent whether the RTP messages carry the parameter byCSRCFlag of contribution source CSRC lists, represent sequence
The parameter wSnBits of the least significant bit of number SN, represent IP marks least significant bit parameter wIpidBits, represent the time
Stab the parameter dwTsbits of the least significant bit of TS, represent whether the RTP messages need to transmit the M of RTP messages in basic head
The parameter byMark in domain.
10. device as claimed in claim 9, it is characterised in that when the judgment module is judged as NO, the compression Packet type
Decision-making module performs following operation:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 6, value of wIpidBits be 0,
The value of dwTsbits is 0 and the value of byMark is 0, and the basic head type that the compressed package of current RTP message is determined if meeting is
R-0, and do not carry extension header;Otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 6, value of wIpidBits be less than or
Equal to 5 and the value of dwTsbits is 0, and the basic head type that the compressed package of current RTP message is determined if meeting is R-1-ID, and
Do not carry extension header;Otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to 6, wIpidBits value be equal to 0 and
The value of dwTsbits is less than or equal to 5, if meeting:
The basic head type for determining the compressed package of current RTP message is R-1-TS, and does not carry extension header, is otherwise judged whether full
The value of sufficient byCSRCFlag is 0, the value of wSnBits is less than or equal to the 9, value of wIpidBits and is less than or equal to 8 and dwTsbits
Value be 0, the basic head type that the compressed package of current RTP message is determined if meeting is R-1-ID, and extension header type is EXT0,
Otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to 9, wIpidBits value be equal to 0 and
The value of dwTsbits is less than or equal to 8, and the basic head type that the compressed package of current RTP message is determined if meeting is R-1-TS,
Extension header type is EXT0, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 9, value of wIpidBits be less than or
Equal to 8 and the value of dwTsbits is less than or equal to 8, and the basic head type that the compressed package of current RTP message is determined if meeting is
R-1-ID or R-1-TS, extension header type are EXT1, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 9, value of wIpidBits be less than or
Equal to 16 and the value of dwTsbits is less than or equal to 8, and the basic head type that the compressed package of current RTP message is determined if meeting is
R-1-ID, extension header type are EXT2, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 9, value of wIpidBits be less than or
Equal to 8 and the value of dwTsbits is less than or equal to 16, and the basic head type that the compressed package of current RTP message is determined if meeting is
R-1-TS, extension header type are EXT2, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to 14, the compressed package of definite current RTP message is basic if meeting
Head type is R-1-TS, and extension header type is EXT3, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 9, value of wIpidBits be less than or
Equal to 16 and the value of dwTsbits is less than or equal to 8, and the basic head type that the compressed package of current RTP message is determined if meeting is
R-1-ID, extension header type are EXT2;Otherwise:
The basic head type for determining the compressed package of current RTP message is IR_DYN, and does not carry extension header;
Wherein, the value of the byCSRCFlag represents that the RTP messages carry CSRC lists for 1, represents that the RTP messages are not taken for 0
Band CSRC lists;The value of the byMark represents to need to transmit the M domains of RTP messages in basic head for 1, and being represented for 0 need not
The M domains of RTP messages are transmitted in basic head.
11. device as claimed in claim 9, it is characterised in that when the judgment module is judged as YES, the compression Packet type
Decision-making module performs following operation:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 7, value of wIpidBits be 0,
The value of dwTsbits is 0 and the value of byMark is 0, and the basic head type that the compressed package of current RTP message is determined if meeting is
R-0-CRC, and extension header is not carried, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 6, value of wIpidBits be less than or
Equal to 5 and the value of dwTsbits is 0, and the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-ID,
And extension header is not carried, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to 6, wIpidBits value be equal to 0 and
The value of dwTsbits is less than or equal to 5, and the basic head type that the compressed package of current RTP message is determined if meeting is U0R-2-
TS, and extension header is not carried, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 9, value of wIpidBits be less than or
Equal to 8 and the value of dwTsbits is 0, and the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-ID,
Extension header type is EXT0, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to 9, wIpidBits value be equal to 0 and
The value of dwTsbits is less than or equal to 8, and the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-
TS, extension header type are EXT0, otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 9, value of wIpidBits be less than or
Equal to 8 and the value of dwTsbits is less than or equal to 8, and the basic head type that the compressed package of current RTP message is determined if meeting is
UOR-2-ID or UOR-2-TS, extension header type are EXT1, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to the value of 14, wIpidBits less than or equal to 5 and dwTsbits's
It is worth for 0, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-ID, and extension header type is EXT3,
Otherwise:
Judge whether to meet wSnBits value be less than or equal to the value that the value of 14, wIpidBits is 0 and dwTsbits be less than or
Equal to 5, the basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-TS, and extension header type is EXT3,
Otherwise:
The value for judging whether to meet byCSRCFlag is 0, the value of wSnBits be less than or equal to the 9, value of wIpidBits be less than or
Equal to 8 and the value of dwTsbits is less than or equal to 16, and the basic head type that the compressed package of current RTP message is determined if meeting is
UOR-2-TS, extension header type are EXT2, otherwise:
Judge whether to meet that the 0 of the byCSRCFlag, value of wSnBits is less than or equal to the 9, value of wIpidBits and is less than or equal to
The value of 16 and dwTsbits is less than or equal to 8, and the basic head type that the compressed package of current RTP message is determined if meeting is UOR-
2-ID, extension header type are EXT2, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to value of the value less than or equal to dwTsbits of 14, wIpidBits,
The basic head type that the compressed package of current RTP message is determined if meeting is UOR-2-TS, and extension header type is EXT3, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to value of the value more than dwTsbits of 14, wIpidBits, if meeting
The basic head type for then determining the compressed package of current RTP message is UOR-2-ID, and extension header type is EXT3, is otherwise determined current
The basic head type of the compressed package of RTP messages is IR_DYN, and does not carry extension header;
Wherein, the value of the byCSRCFlag represents that the RTP messages carry CSRC lists for 1, represents that the RTP messages are not taken for 0
Band CSRC lists;The value of the byMark represents to need to transmit the M domains of RTP messages in basic head for 1, and being represented for 0 need not
The M domains of RTP messages are transmitted in basic head.
12. device as claimed in claim 8, it is characterised in that:The current message to be compressed is user datagram protocol UDP
Message, the parameter include:Represent the parameter wSnBits of the least significant bit of sequence number SN, represent the minimum effective of IP marks
The parameter wIpidBits of position.
13. device as claimed in claim 12, it is characterised in that when the judgment module is judged as NO, the compressed package class
Type decision-making module performs following operation:
Value of the value less than or equal to 6, wIpidBits for judging whether to meet wSnBits is 0, and current UDP reports are determined if meeting
The basic head type of the compressed package of text is R-0, and does not carry extension header, otherwise:
Judge whether to meet that value of the value less than or equal to 6, wIpidBits of wSnBits is less than or equal to 7, determined if meeting
The basic head type of the compressed package of current UDP messages is R-1, and does not carry extension header, otherwise:
Judge whether to meet that value of the value less than or equal to 9, wIpidBits of wSnBits is less than or equal to 10, determined if meeting
The basic head type of the compressed package of current UDP messages is R-1, and extension header type is EXT0, otherwise:
Judge whether to meet that value of the value less than or equal to 9, wIpidBits of wSnBits is less than or equal to 16, determined if meeting
The basic head type of the compressed package of current UDP messages is R-1, and extension header type is EXT1, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to 14, the compressed package of definite current UDP messages is basic if meeting
Head type is R-1, and extension header type is EXT3, and the basic head type for otherwise determining the compressed package of current UDP messages is IR_
DYN, and do not carry extension header.
14. device as claimed in claim 12, it is characterised in that:When the judgment module is judged as YES, the compressed package class
Type decision-making module performs following operation:
Value of the value less than or equal to 7, wIpidBits for judging whether to meet wSnBits is 0, and current UDP reports are determined if meeting
The basic head type of the compressed package of text is R-0-CRC, and does not carry extension header, otherwise:
Value of the value less than or equal to 5, wIpidBits for judging whether to meet wSnBits is 0, and current UDP reports are determined if meeting
The basic head type of the compressed package of text is R-2, and does not carry extension header, otherwise:
Judge whether to meet that value of the value less than or equal to 8, wIpidBits of wSnBits is less than or equal to 3, determined if meeting
The basic head type of the compressed package of current UDP messages is UOR-2, and extension header type is EXT0, otherwise:
Judge whether to meet that value of the value less than or equal to 8, wIpidBits of wSnBits is less than or equal to 11, determined if meeting
The basic head type of the compressed package of current UDP messages is UOR-2, and extension header type is EXT1, otherwise:
Judge whether to meet that the value of wSnBits is less than or equal to 14, the compressed package of definite current UDP messages is basic if meeting
Head type is UOR-2, and extension header type is EXT3, and the basic head type for otherwise determining the compressed package of current UDP messages is IR_
DYN, and do not carry extension header.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210196495.0A CN102740357B (en) | 2012-06-14 | 2012-06-14 | R Mode S O state robustness header compression method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210196495.0A CN102740357B (en) | 2012-06-14 | 2012-06-14 | R Mode S O state robustness header compression method and apparatus |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102740357A CN102740357A (en) | 2012-10-17 |
CN102740357B true CN102740357B (en) | 2018-04-27 |
Family
ID=46994942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210196495.0A Active CN102740357B (en) | 2012-06-14 | 2012-06-14 | R Mode S O state robustness header compression method and apparatus |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102740357B (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105591711B (en) * | 2014-10-22 | 2019-12-03 | 中兴通讯股份有限公司 | The method and compressor that robustness header compression state is moved back |
US10110360B2 (en) * | 2015-07-27 | 2018-10-23 | Qualcomm Incorporated | Recovery mechanism for ROHC with lost initialization and refresh messages |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101651655A (en) * | 2008-08-12 | 2010-02-17 | 上海摩波彼克半导体有限公司 | Method for realizing header compression of packet data aggregation protocol of third generation mobile communication system |
CN101674315A (en) * | 2009-10-20 | 2010-03-17 | 中兴通讯股份有限公司 | Method and device for compressing and decompressing timestamp |
-
2012
- 2012-06-14 CN CN201210196495.0A patent/CN102740357B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101651655A (en) * | 2008-08-12 | 2010-02-17 | 上海摩波彼克半导体有限公司 | Method for realizing header compression of packet data aggregation protocol of third generation mobile communication system |
CN101674315A (en) * | 2009-10-20 | 2010-03-17 | 中兴通讯股份有限公司 | Method and device for compressing and decompressing timestamp |
Also Published As
Publication number | Publication date |
---|---|
CN102740357A (en) | 2012-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20100115137A1 (en) | Data compression method and data communication system utilizing the same | |
US8848583B2 (en) | Communication method and apparatus for header compression | |
WO2004019586A1 (en) | Extension header compression | |
CN102300256B (en) | Method and device for feeding back header compression and feedback information | |
US8761197B2 (en) | Method and apparatus for mode transition, compression, and decompression in robust header compression | |
CN1529971A (en) | System and methods for VOIP wireless terminals | |
WO2012079381A1 (en) | Method and device for improving robustness of context update message in robust header compression | |
CN101204068A (en) | Dynamic robust header compression | |
CN101969667A (en) | Wireless communication apparatus, header compression method thereof, and header decompression method thereof | |
CN102740357B (en) | R Mode S O state robustness header compression method and apparatus | |
CN102857356A (en) | Methods and devices for sending data packet, hyper frame number update and maintenance, and data processing | |
CN107645746A (en) | A kind of context updating method, system and equipment | |
CN101977402A (en) | Method and device for reusing context in robustness header compression | |
EP2190162A1 (en) | Method and device for decoding by using wlsb in robust header compression | |
CN101605355A (en) | A kind of ROHC mixed mode of operation that is used on the LTE-advanced network trunk node | |
US11470509B2 (en) | Ad hoc communication protocol method and apparatus | |
Minaburo et al. | Configuration and analysis of robust header compression in UMTS | |
CN102215236B (en) | Working mode switching method and device of robust header compression protocol (ROHC) layer | |
CN107801212A (en) | A kind of communication means and device | |
CN103517330B (en) | A kind of sending method and device of robustness header compression message | |
CN103067971A (en) | TCP (transmission control protocol) header compression method in wireless IPv6 (internet protocol version 6) network | |
CN101197825A (en) | Method, system and device for compression message transmission | |
Woo et al. | Performance analysis of robust header compression over mobile wimax | |
CN102045311B (en) | Robust header compression state transition method and decompressor | |
JP4966642B2 (en) | Communication apparatus and communication control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |