TCP error code retransmission control method under video wireless group broadcast by dynamic controllable double stream

文档序号:1492891 发布日期:2020-02-04 浏览:24次 中文

阅读说明:本技术 以动态可控双流进行视频无线组播下tcp误码重传控制方法 (TCP error code retransmission control method under video wireless group broadcast by dynamic controllable double stream ) 是由 杨工明 李衡 徐勇 周子容 叶隽毅 李嘉仪 于 2019-09-10 设计创作,主要内容包括:本发明公开了以动态可控双流进行视频无线组播下TCP误码重传控制方法。本发明方法中视频管理平台通过SIP协议将各个客户端自身的单播IP地址通知至摄像机,摄像机发送组播视频流给客户端;客户端接收到组播视频数据报文后,发送单播确认报文给摄像机;当发生丢包时,客户端反馈重传报文信息,摄像机收到重传报文信息后按TCP标准机制处理,同时通过误码通告字段查看各客户端反馈报文中是否包含不必重传的标注,如未标注不必重传,则启动重传机制,此时摄像机同时启动辅流传输。本发明方法将点播者纳入动态可变的辅码流组播组,发送减速或减速并重传的组播单流,不会导致丢包趋于恶劣,并使丢包环境适应性增强,逐步改进视频点播体验。(The invention discloses a TCP error code retransmission control method under the condition of carrying out video wireless multicast by dynamic controllable double streams. In the method, a video management platform informs a video camera of the unicast IP address of each client through an SIP protocol, and the video camera sends multicast video streams to the clients; after receiving the multicast video data message, the client sends a unicast confirmation message to the camera; when packet loss occurs, the client feeds back retransmission message information, the camera receives the retransmission message information and then processes the retransmission message information according to a TCP standard mechanism, meanwhile, whether the feedback message of each client contains a label which is not required to be retransmitted or not is checked through an error code notification field, if the feedback message of each client is not labeled and is not required to be retransmitted, a retransmission mechanism is started, and at the moment, the camera simultaneously starts auxiliary stream transmission. The method of the invention brings the jukebox into the dynamically variable auxiliary code stream multicast group, and sends the multicast single stream which is decelerated or decelerated and retransmitted, so that the packet loss is not severe, the adaptability of the packet loss environment is enhanced, and the video-on-demand experience is gradually improved.)

1. A TCP error code retransmission control method under video wireless multicast by dynamic controllable double streams is characterized in that the method specifically comprises the following steps:

the method comprises the following steps that (1) a video-on-demand application client side is in session connection with a video management platform VM through an Invite method of an SIP protocol, unicast IP information of the video-on-demand application client side is carried in the Invite, and a video camera of a video resource to be requested is selected through a platform resource list;

step (2), the video management platform VM sends the unicast IP information of the video on demand application client to the selected camera through an Invite method;

step (3), the camera confirms that the session is successful ACK through the session of a three-way handshake mechanism of a cross-video management platform VM and a camera TCP;

step (4), the camera sends the multicast video stream to the video-on-demand application client by RTP/RTCP protocol;

step (5), if the video stream received by the video-on-demand application client loses packets, the following operations are carried out according to the packet loss rate PLR and the error rate SER:

if PLR < tau 1, marking unnecessary retransmission in the confirmation message fed back by the video on demand application client, and prompting error code information in the feedback confirmation message; τ 1 is a set packet loss rate threshold;

if PLR is more than or equal to tau 1 and SER is more than or equal to tau 2, the TCP is not decelerated and is not accelerated, a period of time k is observed, if packet loss is not intensified, normal acceleration is continued, otherwise, the congestion phenomenon is simultaneously shown, and the TCP is decelerated according to the TCP rule; tau 2 is a set error rate threshold value, and k is an observation time window;

if PLR is larger than or equal to tau 1 and SER is smaller than tau 2, normal deceleration is carried out according to a TCP congestion avoidance mechanism;

step (6), the camera receives feedback information and additional information of each video on demand application client;

the first 2 bits in the 6-bit reserved field of the TCP confirmation message header of the feedback information are error code notification information, the last 4 bits are S values, error code cumulative number is represented, and an error code SER is obtained from the S values;

the first 2 bits are 00, indicating no retransmission is necessary;

the first 2 bits are 01, indicating congestion deceleration;

the first 2 bits are 10, which represents error code observation;

the first 2 bits are 11, which represents deceleration and retransmission;

and (7) dynamically grouping the multicast groups of the video-on-demand application client, and dynamically grouping the multicast groups for the second time according to the feedback information condition of the video-on-demand application client: the method comprises the following steps that a main code stream multicast group and an auxiliary code stream multicast group are sent, and 2 multicast streams are sent in a dynamic controllable double-stream mode: a main code stream multicast group formed by video on demand application clients which do not need to be retransmitted is sent at full speed according to a single stream of the main code stream; and the auxiliary code stream multicast group formed by other video on demand application clients starts the deceleration or deceleration and retransmission of the auxiliary code stream according to different conditions: congestion deceleration, namely, maintaining the single-flow full-speed transmission of the main code stream, and enabling the auxiliary code stream to start a TCP congestion deceleration mechanism; decelerating and retransmitting, keeping the single flow of the main code stream to be sent at full speed, and starting a TCP deceleration retransmission mechanism by the auxiliary code stream;

step (8), the video on demand application client receives the secondary packet multicast stream:

multicast group without retransmission: receiving a full-speed multicast stream of a main code stream;

other multicast groups with packet loss: receiving the multicast stream which is decelerated or decelerated and retransmitted by the auxiliary code stream;

and (9) optimizing and feeding back the auxiliary code stream multicast group: when the video on demand application client receiving the auxiliary code stream multicast group receives the time t interval normally, the video on demand application client feeds back and sends the unnecessary retransmission information, and then enters the main code stream full-speed multicast group; and when the video on demand application client receiving the auxiliary code stream multicast group still generates packet loss, continuously feeding back and sending the error code announcement, and subsequently still receiving the code stream of the auxiliary code stream multicast group until PLR is less than tau 1.

2. The method for controlling TCP error code retransmission under video wireless multicast with dynamically controllable dual stream as claimed in claim 1, wherein: τ 1 > τ 2, τ 1 ═ 5 × 10-4~5×10-3,τ2=5×10-5~5×10-4

3. The method for controlling TCP error code retransmission under video wireless multicast with dynamically controllable dual stream as claimed in claim 1, wherein: and k is 0.5 to 2 s.

4. The method for controlling TCP error code retransmission under video wireless multicast with dynamically controllable dual stream as claimed in claim 1, wherein: t is 0.5 to 2 s.

Technical Field

The invention belongs to the technical field of communication, and particularly relates to a method for controlling TCP error code retransmission under video wireless multicast by using dynamic controllable double streams.

Background

In the process of transmitting video images, a video source needs to face the requests of a plurality of users, a link of video stream distribution needs to be added in a transmission network, a mode of forwarding the video stream by a video stream media forwarding server in a wired transmission environment is adopted for distributing the video stream, a mode of distributing the video stream by network switching/routing in a multicast group based on a multicast technology is adopted for more and more transmissions, and particularly, a wireless multicast technology is adopted in a wireless network environment to be a very good option. The Internet Protocol set supports a connectionless transmission Protocol, which is called User Datagram Protocol (UDP), but due to the inherent characteristics of the UDP, packet loss caused by unreliable transmission of videos in the transmission process cannot be fed back and retransmitted, which often causes video packet loss and blocking in a severe environment and seriously affects the video on demand experience of users. The use of TCP for video streaming is therefore also a major option in the industry.

TCP (Transmission Control Protocol) is a connection-oriented, reliable transport layer communication Protocol based on byte stream, is the main transport Control Protocol for video Transmission in the current Internet environment, and provides reliable and sequential Transmission service between hosts. TCP congestion control is an important reason for its successful application, i.e. as long as the terminal detects data loss, it is considered that the data loss is caused by network congestion, and then a congestion control mechanism is invoked, which is suitable for a wired environment with good link quality.

In video transmission based on wireless environment, because the wireless environment generally has higher Bit Error Rate (BER), variable bandwidth, large delay and frequent mobility characteristics compared with wired environment, when the conventional TCP technology designed based on wired environment is applied to the wireless environment, a large performance degradation is caused, because in the wireless environment, the reason for packet loss is not necessarily caused by congestion, and most of the packet loss is caused by non-ideal characteristics of the channel itself, such as signal interference, multipath fading, etc., or caused by mobility and handover, the TCP error code treats the packet loss caused by packet loss as congestion and reduces the packet sending rate, which is obviously not suitable. Therefore, how to effectively distinguish the reasons of packet loss in the wireless network and make a correct response becomes a key for improving the performance of the wireless network line TCP transmitting video stream.

When the congestion packet is lost, calling a congestion control algorithm to reduce the sending rate of the data packet; and when the wireless packet loss occurs, explicit retransmission is adopted, and the original sending rate is kept.

Impact of high bit error rate on TCP performance: (1) effect of random bit errors on TCP: if the number is small, the recovery can be realized by using an error correcting code; excessive errors may cause the message to be discarded before reaching the transport layer; initiating a fast retransmission; window reduction and throughput rate reduction; (2) impact of burst errors on TCP performance: a timeout may be triggered; slow start, throughput rate reduction; the fast retransmission results in the retransmission of lost messages, the reduction of congestion windows and the reduction of throughput rate. Packet loss due to errors within an acceptable range should not necessarily reduce throughput (inefficiencies are created by the assumption of TCP that "packet loss occurs because of congestion").

The slow start mechanism and congestion avoidance mechanism of general TCP are both slow speed-up sending, and when packet loss occurs, the speed is halved. Especially in the wireless environment, the reason that the correct message may not be received is only error code, not congestion. The receiver finds out the packet loss, and the quality of the wireless channel is measured in real time: if the packet loss rate is lower than a certain threshold A and the video quality is tolerable, the feedback confirmation message indicates 'unnecessary retransmission', bandwidth waste caused by retransmission is avoided, and error code information is prompted in the feedback confirmation message; if the packet loss rate is higher than the threshold A and the error rate is higher than the threshold B, the packet loss is probably caused by the error code, the TCP is not decelerated and is not accelerated, a period of time is observed, if the packet loss is not accelerated, the TCP is continuously accelerated, otherwise, the TCP is decelerated according to the TCP rule, and the congestion phenomenon is caused at the same time; if the packet loss rate is higher than the threshold A and the error rate is lower than the threshold B, it is shown that the packet loss is probably caused by congestion, and the speed is reduced normally according to the TCP rule. The method realizes that: (1) the retransmission of the error code packet loss is not started by a small acceptable number of error codes, so that the triggering network congestion can be greatly reduced; (2) the reserved message field is used for transmitting the error code severity and the speed reduction + retransmission instruction, and no extra overhead is needed in the in-band transmission; (3) in the environment of wireless transmission of video streams, retransmission of each video stream will be a double impact on the network, and initiation of retransmission on demand can smooth the network environment.

The scheme is suitable for TCP video image transmission of P2P, and reverse multipoint feedback and retransmission control cannot be realized for video sharing transmission in a multicast mode. Because the transmission mode of the wireless video multicast is point-to-multipoint transmission of one multicast source facing a plurality of multicast groups, and because the error code probability under the wireless environment is high, after a plurality of multicast groups feed back packet loss information under TCP, the multicast source has no receiving and responding mechanism, and when the plurality of multicast groups feed back the packet loss information, the multicast source cannot respond, and retransmission control under severe environment cannot be realized.

Disclosure of Invention

In the video image transmission process of wireless multicast, when the wireless environment has a higher Bit Error Rate (BER), a changed bandwidth, a large time delay and a frequent mobile characteristic to cause congestion packet loss after deterioration, and error code packet loss caused by signal interference, multipath fading and the like in the wireless environment or movement and switching, because transmission feedback of various multicast groups is different, timely evaluation and differentiated response measures need to be taken to ensure different packet loss conditions of the multicast group feedback.

The invention aims to provide a method for controlling TCP error code retransmission under video wireless multicast by using dynamic controllable double streams.

The method specifically comprises the following steps: when a plurality of video-on-demand application clients request multicast videos of a certain camera from a video management platform (VM), the video management platform (VM) informs the unicast IP address of each on-demand client to the camera through an Session Initiation Protocol (SIP), and the camera sends multicast video streams to the video-on-demand application clients; after each video on demand application client receives the multicast video data message, the video on demand application client sends a unicast confirmation message to the camera; the video camera only receives the confirmation message of the video on demand application client, which is notified by the video management platform VM in advance by the source IP, and other confirmation messages are directly discarded as forged messages; when packet loss occurs, the VOD application client feeds back retransmission message information; and the video camera receives the retransmitted message information of each VOD application client and processes the retransmitted message information according to a TCP standard mechanism, and simultaneously checks whether the feedback message of each VOD application client contains a label which is not required to be retransmitted or not through an error code notification field, if the feedback message is not labeled and is not required to be retransmitted, a retransmission mechanism is started, and at the moment, the video camera simultaneously starts auxiliary stream transmission. The SIP protocol is a session initiation protocol and is a communication protocol of video monitoring control signaling. The method comprises the following concrete steps:

the method comprises the following steps that (1) a video-on-demand application client side is in session connection with a video management platform VM through an Invite method of an SIP protocol, unicast IP information of the video-on-demand application client side is carried in the Invite, and a video camera of a video resource to be requested is selected through a platform resource list;

step (2), the video management platform VM sends the unicast IP information of the video on demand application client to the selected camera through an Invite method;

step (3), the camera confirms that the session is successful ACK through the session of a three-way handshake mechanism of a cross-video management platform VM and a camera TCP;

step (4), the camera sends the multicast video stream to the video-on-demand application client by RTP/RTCP protocol;

step (5), if the video stream received by the video-on-demand application client loses packets, the following operations are carried out according to the packet loss rate PLR and the error rate SER:

if PLR < tau 1, marking unnecessary retransmission in the confirmation message fed back by the video on demand application client, and prompting error code information in the feedback confirmation message; τ 1 is a set packet loss rate threshold;

if PLR is more than or equal to tau 1 and SER is more than or equal to tau 2, the TCP is not decelerated and is not accelerated, a period of time k is observed, if packet loss is not intensified, normal acceleration is continued, otherwise, the congestion phenomenon is simultaneously shown, and the TCP is decelerated according to the TCP rule; tau 2 is a set error rate threshold value, and k is an observation time window;

if PLR is larger than or equal to tau 1 and SER is smaller than tau 2, normal deceleration is carried out according to a TCP congestion avoidance mechanism;

step (6), the camera receives feedback information and additional information of each video on demand application client;

the first 2 bits in the 6-bit reserved field of the TCP confirmation message header of the feedback information are error code notification information, the last 4 bits are S values, error code cumulative number is represented, and an error code SER is obtained from the S values;

the first 2 bits are 00, indicating no retransmission is necessary;

the first 2 bits are 01, indicating congestion deceleration;

the first 2 bits are 10, which represents error code observation;

the first 2 bits are 11, which represents deceleration and retransmission;

and (7) dynamically grouping the multicast groups of the video-on-demand application client, and dynamically grouping the multicast groups for the second time according to the feedback information condition of the video-on-demand application client: the method comprises the following steps that a main code stream multicast group and an auxiliary code stream multicast group are sent, and 2 multicast streams are sent in a dynamic controllable double-stream mode: a main code stream multicast group formed by video on demand application clients which do not need to be retransmitted is sent at full speed according to a single stream of the main code stream; and the auxiliary code stream multicast group formed by other video on demand application clients starts the deceleration or deceleration and retransmission of the auxiliary code stream according to different conditions: congestion deceleration, namely, maintaining the single-flow full-speed transmission of the main code stream, and enabling the auxiliary code stream to start a TCP congestion deceleration mechanism; decelerating and retransmitting, keeping the single flow of the main code stream to be sent at full speed, and starting a TCP deceleration retransmission mechanism by the auxiliary code stream;

step (8), the video on demand application client receives the secondary packet multicast stream:

multicast group without retransmission: receiving a full-speed multicast stream of a main code stream;

other multicast groups with packet loss: receiving the multicast stream which is decelerated or decelerated and retransmitted by the auxiliary code stream;

and (9) optimizing and feeding back the auxiliary code stream multicast group: when the video on demand application client receiving the auxiliary code stream multicast group receives the time t interval normally, the video on demand application client feeds back and sends the unnecessary retransmission information, and then enters the main code stream full-speed multicast group; and when the video on demand application client receiving the auxiliary code stream multicast group still generates packet loss, continuously feeding back and sending the error code announcement, and subsequently still receiving the code stream of the auxiliary code stream multicast group until the network improvement PLR is less than tau 1.

The invention relates to a controllable multicast technology based on wireless transmission, in particular to a technology for transmitting video streams by multicast of video images front-end videos in a point-to-multipoint mode in a wireless environment through a TCP protocol.

The dynamic controllable double-stream means that the front-end camera forms a video stream transmitted in a dynamic double-stream mode by full-speed main stream multicast stream + decelerating or decelerating and retransmitting auxiliary stream multicast stream under the condition of judging the network transmission quality according to TCP feedback.

The method has the beneficial effects that:

1. the method of the invention realizes the transmission of the video image by TCP under wireless multicast, and selectively adapts to the network environment in a controllable multicast double-flow mode;

2. the method of the invention carries out the secondary grouping of the multicast group for different network packet loss environments, and does not introduce other interference to the normally transmitted jukebox for full-speed transmission according to the single flow of the main code stream;

3. the method of the invention brings the jukebox with the bad network packet loss environment into the dynamically variable auxiliary code stream multicast group, and sends the multicast single stream which is decelerated or decelerated and retransmitted, so that the packet loss is not prone to be bad, the adaptability of the packet loss environment is enhanced, and the video-on-demand experience is gradually improved.

Detailed Description

The process of the present invention is further illustrated below with reference to specific embodiments.

A TCP error code retransmission control method under video wireless group broadcasting by dynamic controllable double streams comprises the following specific steps:

and (1) the video-on-demand application client realizes session connection with a video management platform VM through an Invite method of an SIP protocol, wherein the Invite carries unicast IP information of the video-on-demand application client, and a video camera of a video resource to be requested is selected through a platform resource list.

And (2) the video management platform VM sends the unicast IP information of the video on demand application client to the selected camera through an Invite method.

And (3) the camera confirms that the session is successful ACK through the session of a three-way handshake mechanism of the cross-video management platform VM and the camera TCP.

And (4) the camera sends the multicast video stream to the video-on-demand application client by an RTP/RTCP protocol.

Step (5), if the video stream received by the video-on-demand application client loses packets, the following operations are carried out according to the packet loss rate PLR and the error rate SER:

if PLR is less than tau 1, the video quality is still tolerable, the confirmation message fed back by the video on demand application client is marked without retransmission, bandwidth waste caused by retransmission is avoided, and error code information is prompted in the fed back confirmation message; τ 1 is a set packet loss rate threshold, and τ 1 is 5 × 10-4~5×10-3In this embodiment, τ 1 is 0.001.

If PLR is more than or equal to tau 1 and SER is more than or equal to tau 2, the TCP is not decelerated and is not accelerated when packet loss is caused by error codes, a period of time k is observed, if packet loss is not intensified, normal acceleration is continued, otherwise, congestion is caused at the same time, and the TCP is decelerated according to TCP rules. τ 2 is a set bit error rate threshold value, τ 1 > τ 2, and τ 2 is 5 × 10-5~5×10-4In this embodiment, τ 2 is 0.0001; k is an observation time window, k is 0.5-2 s, and k is 1s in the embodiment.

If PLR is more than or equal to tau 1 and SER is less than tau 2, packet loss is caused by congestion, and normal speed reduction is performed according to a TCP congestion avoidance mechanism;

and (6) the video camera receives feedback information and additional information of each video on demand application client.

Because the error code announcements fed back by each jukebox are possibly different, the front 2 bits in the 6-bit reserved field of the TCP confirmation message header of the feedback information are error code notification information, the rear 4 bits are S values to represent error code cumulative numbers, and the error code SER is obtained from the S values;

the first 2 bits are 00, indicating no retransmission is necessary;

the first 2 bits are 01, indicating congestion deceleration;

the first 2 bits are 10, which represents error code observation;

the first 2 bits are 11, indicating a slow down and retransmission.

And (7) dynamically grouping the multicast groups of the video-on-demand application client, and dynamically grouping the multicast groups for the second time according to the feedback information condition of the video-on-demand application client: the method comprises the following steps that a main code stream multicast group and an auxiliary code stream multicast group are sent, and 2 multicast streams are sent in a dynamic controllable double-stream mode: a main code stream multicast group formed by video on demand application clients which do not need to be retransmitted is sent at full speed according to a single stream of the main code stream; and the auxiliary code stream multicast group formed by other video on demand application clients starts the deceleration or deceleration and retransmission of the auxiliary code stream according to different conditions: congestion deceleration, namely, maintaining the single-flow full-speed transmission of the main code stream, and enabling the auxiliary code stream to start a TCP congestion deceleration mechanism; and decelerating and retransmitting, keeping the single-flow full-speed transmission of the main code stream, and starting a TCP deceleration retransmission mechanism by the auxiliary code stream.

Step (8), the video on demand application client receives the secondary packet multicast stream:

multicast group without retransmission: receiving a full-speed multicast stream of a main code stream;

other multicast groups with packet loss: and receiving the multicast stream which is decelerated or decelerated and retransmitted by the auxiliary code stream.

And (9) optimizing and feeding back the auxiliary code stream multicast group: when a video on demand application client receiving the auxiliary code stream multicast group receives information which is not required to be retransmitted after normally receiving time t intervals, the information is normally received after t time intervals, which shows that the wireless network environment of the jukebox tends to be normal, and then the jukebox enters a main code stream full-speed multicast group; and when the video on demand application client receiving the auxiliary code stream multicast group still generates packet loss, continuously feeding back and sending the error code announcement, and subsequently still receiving the code stream of the auxiliary code stream multicast group until the network improvement PLR is less than tau 1. t is 0.5-2 s, and in the embodiment, t is 1 s.

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种新型路由器

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类