CN112423007B - Multicast-based webrtc video stream transmission system - Google Patents

Multicast-based webrtc video stream transmission system Download PDF

Info

Publication number
CN112423007B
CN112423007B CN202011239708.4A CN202011239708A CN112423007B CN 112423007 B CN112423007 B CN 112423007B CN 202011239708 A CN202011239708 A CN 202011239708A CN 112423007 B CN112423007 B CN 112423007B
Authority
CN
China
Prior art keywords
module
dtls
source
display
multicast
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
Application number
CN202011239708.4A
Other languages
Chinese (zh)
Other versions
CN112423007A (en
Inventor
陈尚武
李华松
吴宣辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Xujian Science And Technology Co ltd
Original Assignee
Hangzhou Xujian Science And Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou Xujian Science And Technology Co ltd filed Critical Hangzhou Xujian Science And Technology Co ltd
Priority to CN202011239708.4A priority Critical patent/CN112423007B/en
Publication of CN112423007A publication Critical patent/CN112423007A/en
Application granted granted Critical
Publication of CN112423007B publication Critical patent/CN112423007B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/632Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing using a connection between clients on a wide area network, e.g. setting up a peer-to-peer communication via Internet for retrieving video segments from the hard-disk of other client devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/2187Live feed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • H04N21/2347Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/41Structure of client; Structure of client peripherals
    • H04N21/4104Peripherals receiving signals from specially adapted client devices
    • H04N21/4122Peripherals receiving signals from specially adapted client devices additional display device, e.g. video projector
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6405Multicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/643Communication protocols
    • H04N21/6437Real-time Transport Protocol [RTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention discloses a multicast-based webrtc video stream transmission system, which comprises a source end video acquisition module, a source end webrtc signaling module, a source end DTLS module, a source end SRTP module, a source end multicast sending module, a central webrtc signaling control module, a multicast network switch, a display end multicast receiving module, a display end webrtc signaling module, a display end DTLS module, a display end SRTP module, a display end video display module, a source end virtual channel module and a display end virtual channel module; the source end video acquisition module is used for acquiring video data in real time to perform video compression coding and sending the video data to the source end SRTP module. The invention uses multicast transmission webrtc video stream to realize a pair of N video live broadcast scenes, reduces the distribution pressure of a video source end and the network data amount, simultaneously improves the security of video multicast application due to the encryption characteristic of the webrtc stream, and provides multicast reliability due to the packet loss retransmission of the webrtc.

Description

Multicast-based webrtc video stream transmission system
Technical Field
The invention relates to the field of network transmission, in particular to a webrtc video stream transmission system based on multicast.
Background
At present, a point-to-point video transmission scheme is used by webrtc, and in a pair of N video live broadcast scenes, a video sending end is required to copy streams and send the replicated streams to a plurality of video receiving ends, wherein N is large, which inevitably causes performance pressure to be generated by the video sending end. The network multicast realizes the calculation of stream distribution by using a switching network, and if webrtc optimizes a pair of N video live broadcast scenes by using multicast, the N number can be increased, and the network load can be optimized.
Disclosure of Invention
In order to solve the technical problems and optimize the network load of video stream transmission, the invention provides the following technical scheme:
a multicast-based webrtc video stream transmission system comprises a source end video acquisition module, a source end webrtc signaling module, a source end DTLS module, a source end SRTP module, a source end multicast sending module, a center webrtc signaling control module, a multicast network switch, a display end multicast receiving module, a display end webrtc signaling module, a display end DTLS module, a display end SRTP module, a display end video display module, a source end virtual channel module and a display end virtual channel module;
a source end video acquisition module: a one-to-many video source is made, video data are collected in real time to carry out video compression coding, and the video data are sent to a source SRTP module;
source webrtc signaling module: is a webrtc signaling interaction and control module of a source end; the source-end webrtc signaling module is connected to the central webrtc signaling control module by using a websocket; receiving a request message of a video viewing webrtc of a central webrtc signaling control module, carrying a user name and a password of STUN, authenticating by a source DTLS module, if a source does not send a video stream, notifying the source SRTP module to generate a SRTP symmetric encryption key, notifying the source SRTP module to generate a certificate, notifying the source video acquisition module to start acquiring a video, notifying the source multicast transmission module to send the video stream to an IP address of a multicast group of a multicast network switch, and notifying the source virtual channel module to add the source virtual channel module to the multicast group of the multicast network switch; if the source end has sent the video stream, the webrtc signaling module of the source end checks the video transmission channel of the response message of the webrtc ICE to the video fed back by the central webrtc signaling control module, and the ICE candidate address of the video transmission channel uses the IP address of the multicast group; informing a source end DTLS module to receive reverse virtual connection;
a source end DTLS module: the source end DTLS module waits for the display end DTLS module to establish reverse virtual connection, and sends the SRTP symmetric encryption key of the SRTP module to the display end DTLS module through an encryption packet; the source end DTLS module receives the display end DTLS module message through the source end virtual channel module, and sends the message to the display end DTLS module through the source end multicast sending module; the source end DTLS module is a DTLS server and waits for a client _ hello DTLS establishment message of the display end DTLS module, the source end DTLS module issues a server encryption certificate to the display end DTLS module, the display end DTLS module issues a client encryption certificate to the source end DTLS module, the source end DTLS module uses the client encryption certificate to encrypt messages, only the display end DTLS module can analyze the messages, the display end DTLS module uses the server encryption certificate to encrypt the messages, only the source end DTLS module can analyze the messages, and therefore the source end DTLS module and the display end DTLS module establish a bidirectional virtual security channel; the display end DTLS module initiates a STUN binding request to perform connectivity test, the STUN binding request carries a user name and a password, the source end DTLS module receives the user name and the password matching check of Offer carrying the STUN from the STUN binding request and the source end webrtc signaling module, if the result is consistent, the STUN binding response is sent to the display end DTLS module, the connectivity test is successful, and the source end DTLS module sends the SRTP symmetric encrypted key of the SRTP module to the display end DTLS module;
a source SRTP module: the method comprises the steps that video compression data of a source end video acquisition module are received and encrypted, an SRTP protocol is used for packaging, and an SRTP encrypted video stream is sent to a source end multicast sending module; the source SRTP module receives a key generation notice of symmetric encryption of a source webrtc signaling module and sends the generated key to a source DTLS module;
a source multicast sending module: receiving an encrypted video stream of a source SRTP module and sending the encrypted video stream to an IP address of a multicast group of a multicast network switch; the source end multicast sending module only sends one path of encrypted video stream, and if a plurality of display ends need to be checked, the multicast network switch performs copying and forwarding; receiving a message of a source DTLS module, sending the message to an IP address of a multicast group of a multicast network switch, and assisting the source DTLS module to carry out SRTP key negotiation;
the central webrtc signaling control module: the method supports the websocket connection of a receiving source-end webrtc signaling module and a display-end webrtc signaling module, forwards signaling messages and realizes the interaction of request messages and response messages of video viewing webrtc of the signaling of the source-end webrtc signaling module and the display-end webrtc signaling module;
the multicast network switch: one or a group of network switches are supported for multicast, the source end address of a multicast group is provided for each source end, and one-to-many video network stream distribution is realized;
and multicast receiving at a display end: the display end webrtc signaling module informs the display end of the IP address of the multicast group of the source end of multicast reception, the display end of multicast reception adds the multicast group of the multicast network switch according to the IP address, and starts to receive the video stream encryption data and DTLS negotiation data of the multicast group; the display end multicast receiving sends the video stream encrypted data to the display end SRTP module, and the display end multicast receiving sends the DTLS negotiation data to the display end DTLS module;
the webrtc signaling module at the display end: a webrtc signaling interaction and control module of the display end; the display end webrtc signaling module is connected to the central webrtc signaling control module by using a websocket; the display end webrtc signaling module sends a request message of video viewing webrtc to the central webrtc signaling control module, carries a user name and a password of STUN, is used for source end DTLS module authentication, receives a response message of the central webrtc signaling control module, carries a multicast group address, informs the display end of multicast receiving and joining a multicast group, informs the display end of an address of a multicast group of the virtual channel module, and sends reverse data to an IP address of the multicast group of the multicast network switch by the display end virtual channel module;
the display end DTLS module: the display end DTLS module is in interactive communication with the source end DTLS module, and sends the SRTP symmetric encrypted key of the source end SRTP module to the display end DTLS module through an encryption message; the source end DTLS module receives the display end DTLS module message through the source end virtual channel module, and sends the message to the display end DTLS module through the source end multicast sending module; the source end DTLS module is a DTLS server and waits for a client _ hello DTLS establishment message of the display end DTLS module, the source end DTLS module issues a server encryption certificate to the display end DTLS module, the display end DTLS module issues a client encryption certificate to the source end DTLS module, the source end DTLS module uses the client encryption certificate to encrypt messages, only the display end DTLS module can analyze the messages, the display end DTLS module uses the server encryption certificate to encrypt the messages, only the source end DTLS module can analyze the messages, and therefore the source end DTLS module and the display end DTLS module establish a bidirectional virtual security channel; the display end DTLS module initiates a STUN binding request to perform connectivity test, the STUN binding request carries a user name and a password, the source end DTLS module receives the user name and the password matching check of Offer carrying the STUN from the STUN binding request and the source end webrtc signaling module, if the result is consistent, the STUN binding response is sent to the display end DTLS module, the connectivity test is successful, and the source end DTLS module sends the SRTP symmetric encrypted key of the SRTP module to the display end DTLS module; the display end DTLS module sends the SRTP symmetric encrypted key to the display end SRTP module;
the display terminal SRTP module receives the SRTP symmetrically encrypted key of the display terminal DTLS module and receives the SRTP encrypted video stream received by the display terminal multicast; decrypting the encrypted video stream using the SRTP symmetric encrypted key; when the SRTP module of the display end finds that the video stream has packet loss, the SRTP module of the display end informs a virtual channel module of the display end to send a packet loss retransmission request; the display terminal SRTP module sends the decrypted video stream to a display terminal video display module;
the display end video display module: and receiving the video stream of the SRTP module at the display end, and decoding and displaying the video stream.
The invention has the beneficial effects that: 1. the multicast transmission webrtc video stream is used for realizing a pair of N video live broadcast scenes, the distribution pressure of a video source end is reduced, the network data volume is 2, the webrtc stream encryption characteristic enables the video multicast application to improve the safety, and the multicast reliability is provided by the packet loss retransmission of the webrtc.
Drawings
Fig. 1 is a schematic structural diagram of a multicast-based webrtc video streaming system according to the present invention.
Detailed Description
The following examples are illustrative and are not to be construed as limiting the invention.
As shown in fig. 1, a multicast-based webrtc video stream transmission system includes a source video acquisition module 1, a source webrtc signaling module 2, a source DTLS module 3, a source SRTP module 4, a source multicast transmission module 5, a central webrtc signaling control module 6, a multicast network switch 7, a display multicast reception module 8, a display webrtc signaling module 9, a display DTLS module 10, a display SRTP module 11, a display video display module 12, a source virtual channel module 13, and a display virtual channel module 14;
source end video acquisition module 1: a one-to-many video source is made, video data are collected in real time to carry out video compression coding, and the video data are sent to a source SRTP module 4;
source webrtc signaling module 2: is a webrtc signaling interaction and control module of a source end; the source-end webrtc signaling module 2 is connected to the central webrtc signaling control module 6 by using a websocket; receiving a request message of a video viewing webrtc from a central webrtc signaling control module 6, carrying a username and a password of STUN, authenticating by a source-end DTLS module 3, notifying a source-end SRTP module 4 to generate an SRTP symmetric encryption key if the source end does not send a video stream, notifying the source-end SRTP module 4 to generate a certificate, notifying the source-end video acquisition module 1 to start video acquisition, notifying the source-end multicast transmission module 5 to transmit a video stream to an IP address of a multicast group of a multicast network switch 7, and notifying the source-end webrtc signaling module 2 to notify a source-end virtual channel module 13 to join the multicast group of the multicast network switch 7; if the source end has sent the video stream, the source end webrtc signaling module 2 checks the video transmission channel of the response message of the webrtc ICE, which is fed back to the central webrtc signaling control module 6, and the ICE candidate address of the video transmission channel uses the IP address of the multicast group; informing the source end DTLS module 3 to receive the reverse virtual connection;
source end DTLS module 3: the source end DTLS module 3 waits for the display end DTLS module 10 to establish reverse virtual connection, and sends the SRTP symmetric encryption key of the SRTP module 4 to the display end DTLS module 10 through an encryption packet; the source end DTLS module 3 receives the message from the display end DTLS module 10 through the source end virtual channel module 13, and sends the message to the display end DTLS module 10 through the source end multicast sending module 5; the source end DTLS module 3 is a DTLS server and waits for a client _ hello DTLS establishment message of the display end DTLS module 10, the source end DTLS module 3 issues a server encryption certificate to the display end DTLS module 10, the display end DTLS module 10 issues a client encryption certificate to the source end DTLS module 3, the source end DTLS module 3 uses a client encryption certificate encryption message, only the display end DTLS module 10 can analyze the message, the display end DTLS module 10 uses the server encryption certificate encryption message, only the source end DTLS module 3 can analyze the message, and therefore the source end DTLS module 3 and the display end DTLS module 10 establish a bidirectional virtual security channel; the display end DTLS module 10 initiates a STUN binding request to perform connectivity test, the STUN binding request carries a user name and a password, the source end DTLS module 3 receives the user name and the password matching check of Offer carrying STUN from the STUN binding request and the source end webrtc signaling module 2, if the user name and the password matching check meet the check, the STUN binding response is sent to the display end DTLS module 10, the connectivity test is successful, and the source end DTLS module 3 sends the SRTP symmetric encrypted key of the SRTP module 4 to the display end DTLS module 10;
source SRTP module 4: the video compression data of the receiving source end video acquisition module 1 is encrypted, and is packed by using an SRTP protocol, and an SRTP encrypted video stream is sent to a source end multicast sending module 5; the source SRTP module 4 receives a symmetric encryption key generation notice of the source webrtc signaling module 2, and sends the generated key to the source DTLS module 3;
the source multicast sending module 5: receiving the encrypted video stream of the source SRTP module 4 and sending the encrypted video stream to the IP address of the multicast group of the multicast network switch 7; the source multicast sending module 5 only sends one path of encrypted video stream, and if a plurality of display ends need to be checked, the multicast network switch 7 performs copying and forwarding; receiving a message of the source DTLS module 3, sending the message to an IP address of a multicast group of the multicast network switch 7, and assisting the source DTLS module 3 to carry out SRTP key negotiation;
the central webrtc signaling control module 6: the method supports the connection of a receiving source-end webrtc signaling module 2 and a display-end webrtc signaling module 9 with a websocket, and forwards signaling messages, so as to realize the interaction of the request message and the response message of the video viewing webrtc signaled by the source-end webrtc signaling module 2 and the display-end webrtc signaling module 9;
the multicast network switch 7: one or a group of network switches are supported for multicast, the source end address of a multicast group is provided for each source end, and one-to-many video network stream distribution is realized;
multicast reception 8 at the display end: the webrtc signaling module 9 of the display end notifies the display end of the IP address of the multicast group of the source end of the multicast receiving 8, and the display end of the multicast receiving 8 joins the multicast group of the multicast network switch 7 according to the IP address and starts to receive the video stream encryption data and DTLS negotiation data of the multicast group; the display end multicast receiving 8 sends the video stream encryption data to the display end SRTP module 11, and the display end multicast receiving 8 sends the DTLS negotiation data to the display end DTLS module 10;
the webrtc signaling module 9 at the display end: a webrtc signaling interaction and control module of the display end; the display end webrtc signaling module 9 is connected to the central webrtc signaling control module 6 by using websocket; the display-side webrtc signaling module 9 sends a request message for viewing webrtc of the video to the central webrtc signaling control module 6, carries a username and a password of STUN, is used for authentication of the source-side DTLS module 3, receives a response message of the central webrtc signaling control module 6, carries a multicast group address, notifies the display-side multicast receiving module 8 to join a multicast group, notifies the display-side virtual channel module 14 of the address of the multicast group, and the display-side virtual channel module 14 sends reverse data to the IP address of the multicast group of the multicast network switch 7;
display-side DTLS module 10: the display end DTLS module 10 and the source end DTLS module 3 are in interactive communication, and the SRTP symmetric encrypted key of the source end SRTP module 4 is sent to the display end DTLS module 10 through an encrypted message; the source end DTLS module 3 receives the message from the display end DTLS module 10 through the source end virtual channel module 13, and sends the message to the display end DTLS module 10 through the source end multicast sending module 5; the source end DTLS module 3 is a DTLS server and waits for a client _ hello DTLS establishment message of the display end DTLS module 10, the source end DTLS module 3 issues a server encryption certificate to the display end DTLS module 10, the display end DTLS module 10 issues a client encryption certificate to the source end DTLS module 3, the source end DTLS module 3 uses a client encryption certificate encryption message, only the display end DTLS module 10 can analyze the message, the display end DTLS module 10 uses the server encryption certificate encryption message, only the source end DTLS module 3 can analyze the message, and therefore the source end DTLS module 3 and the display end DTLS module 10 establish a bidirectional virtual security channel; the display end DTLS module 10 initiates a STUN binding request to perform connectivity test, the STUN binding request carries a user name and a password, the source end DTLS module 3 receives the user name and the password matching check of Offer carrying STUN from the STUN binding request and the source end webrtc signaling module 2, if the user name and the password matching check meet the check, the STUN binding response is sent to the display end DTLS module 10, the connectivity test is successful, and the source end DTLS module 3 sends the SRTP symmetric encrypted key of the SRTP module 4 to the display end DTLS module 10; the display end DTLS module 10 sends the SRTP symmetric encrypted key to the display end SRTP module 11;
the display terminal SRTP module 11 is used for receiving the SRTP symmetric encryption key of the display terminal DTLS module 10 by the display terminal SRTP module 11 and receiving the SRTP encrypted video stream of the display terminal multicast receiving 8; decrypting the encrypted video stream using the SRTP symmetric encrypted key; when finding the packet loss of the video stream, the display SRTP module 11 notifies the display virtual channel module 14 to send a packet loss retransmission request; the display terminal SRTP module 11 sends the decrypted video stream to the display terminal video display module 12;
the display-side video display module 12: and receiving the video stream of the display terminal SRTP module 11, and decoding and displaying the video stream.

Claims (1)

1. A multicast-based webrtc video stream transmission system is characterized by comprising a source end video acquisition module (1), a source end webrtc signaling module (2), a source end DTLS module (3), a source end SRTP module (4), a source end multicast sending module (5), a center webrtc signaling control module (6), a multicast network switch (7), a display end multicast receiving module (8), a display end webrtc signaling module (9), a display end DTLS module (10), a display end SRTP module (11), a display end video display module (12), a source end virtual channel module (13) and a display end virtual channel module (14);
source end video acquisition module (1): a one-to-many video source is made, video data are collected in real time to carry out video compression coding, and the video data are sent to a source SRTP module (4);
source webrtc signaling module (2): is a webrtc signaling interaction and control module of a source end; the source webrtc signaling module (2) is connected to the central webrtc signaling control module (6) by using a websocket; receiving a request message of a video viewing webrtc of a central webrtc signaling control module (6), carrying a user name and a password of STUN, authenticating by a source-end DTLS module (3), notifying a source-end SRTP module (4) to generate an SRTP symmetric encryption key if the source end does not send a video stream, notifying the source-end SRTP module (4) to generate a certificate, notifying the source-end video acquisition module (1) to start video acquisition, notifying the source-end multicast transmission module (5) to send a video stream to an IP address of a multicast group of a multicast network switch (7), and notifying the source-end virtual channel module (13) to join the multicast group of the multicast network switch (7) by a source-end webrtc signaling module (2); if the source end has sent the video stream, the webrtc signaling module (2) checks the video transmission channel of the response message of the webrtc ICE to the video fed back by the central webrtc signaling control module (6), and the ICE candidate address of the video transmission channel uses the IP address of the multicast group; informing a source end DTLS module (3) to receive reverse virtual connection;
source DTLS module (3): the source end DTLS module (3) waits for the display end DTLS module (10) to establish reverse virtual connection, and sends the SRTP symmetric encryption key of the SRTP module (4) to the display end DTLS module (10) through an encryption packet; the source end DTLS module (3) receives the message of the display end DTLS module (10) through the source end virtual channel module (13), and sends the message to the display end DTLS module (10) through the source end multicast sending module (5); the source end DTLS module (3) is a DTLS server and waits for a DTLS establishment message of a client _ hello of the display end DTLS module (10), the source end DTLS module (3) issues a server encryption certificate to the display end DTLS module (10), the display end DTLS module (10) issues a client encryption certificate to the source end DTLS module (3), the source end DTLS module (3) uses the client encryption certificate to encrypt messages, only the display end DTLS module (10) can analyze the messages, the display end DTLS module (10) uses the server encryption certificate to encrypt messages, only the source end DTLS module (3) can analyze the messages, and therefore after the source end DTLS module (3) and the display end DTLS module (10) establish a bidirectional virtual security channel; a display end DTLS module (10) initiates a STUN binding request to perform connectivity test, the STUN binding request carries a user name and a password, a source end DTLS module (3) receives the user name and the password of the STUN binding request and a source end webrtc signaling module (2) from an Offer carrying the user name and the password matching check, if the result is consistent, the STUN binding response is sent to the display end DTLS module (10), the connectivity test is successful, and the source end DTLS module (3) sends an SRTP symmetric encrypted key of an SRTP module (4) to the display end DTLS module (10);
source SRTP module (4): the method comprises the steps that video compression data of a receiving source end video acquisition module (1) are encrypted, an SRTP protocol is used for packing, and an SRTP encrypted video stream is sent to a source end multicast sending module (5); a source SRTP module (4) receives a symmetric encrypted key generation notice of a source webrtc signaling module (2), and sends a generated key to a source DTLS module (3);
source multicast sending module (5): the encrypted video stream of the receiving source SRTP module (4) is sent to the IP address of the multicast group of the multicast network switch (7); the source end multicast sending module (5) only sends one path of encrypted video stream, and if a plurality of display ends need to be checked, the multicast network switch (7) performs copying and forwarding; receiving a message of a source DTLS module (3), sending the message to an IP address of a multicast group of a multicast network switch (7), and assisting the source DTLS module (3) to carry out SRTP key negotiation;
central webrtc signaling control module (6): the method supports the receiving of the websocket connection between a source-end webrtc signaling module (2) and a display-end webrtc signaling module (9), and forwards signaling messages, so that the interaction between the request message and the response message of the video viewing webrtc signaled by the source-end webrtc signaling module (2) and the display-end webrtc signaling module (9) is realized;
multicast network switch (7): one or a group of network switches are supported for multicast, the source end address of a multicast group is provided for each source end, and one-to-many video network stream distribution is realized;
display multicast reception (8): a display side webrtc signaling module (9) informs a display side multicast receiving (8) of the IP address of the multicast group of the source end, the display side multicast receiving (8) joins the multicast group of the multicast network switch (7) according to the IP address, and starts to receive the video stream encryption data and DTLS negotiation data of the multicast group; the display end multicast receiving (8) sends the video stream encryption data to a display end SRTP module (11), and the display end multicast receiving (8) sends the DTLS negotiation data to a display end DTLS module (10);
a display-side webrtc signaling module (9): a webrtc signaling interaction and control module of the display end; the display end webrtc signaling module (9) is connected to the central webrtc signaling control module (6) by using a websocket; a display end webrtc signaling module (9) sends a request message of viewing webrtc of a video to a central webrtc signaling control module (6), carries a username and a password of STUN, is used for a source end DTLS module (3) to authenticate, receives a response message of the central webrtc signaling control module (6), carries a multicast group address, informs a display end multicast receiving module (8) to join a multicast group, informs the display end virtual channel module (14) of the address of the multicast group, and sends reverse data to the IP address of the multicast group of a multicast network switch (7) by the display end virtual channel module (14);
display-side DTLS module (10): the display end DTLS module (10) is in interactive communication with the source end DTLS module (3), and the SRTP symmetric encryption key of the source end SRTP module (4) is sent to the display end DTLS module (10) through an encryption message; the source end DTLS module (3) receives the message of the display end DTLS module (10) through the source end virtual channel module (13), and sends the message to the display end DTLS module (10) through the source end multicast sending module (5); the source end DTLS module (3) is a DTLS server end, a client _ hello DTLS establishment message of the display end DTLS module (10) is waited, the source end DTLS module (3) issues a server encryption certificate to the display end DTLS module (10), the display end DTLS module (10) issues a client encryption certificate to the source end DTLS module (3), the source end DTLS module (3) uses the client encryption certificate encryption message, only the display end DTLS module (10) can analyze, the display end DTLS module (10) uses the server encryption certificate encryption message, only the source end DTLS module (3) can analyze, and therefore the source end DTLS module (3) and the display end DTLS module (10) establish a bidirectional virtual security channel; a display end DTLS module (10) initiates a STUN binding request to perform connectivity test, the STUN binding request carries a user name and a password, a source end DTLS module (3) receives the user name and the password of the STUN binding request and a source end webrtc signaling module (2) from an Offer carrying the user name and the password matching check, if the result is consistent, the STUN binding response is sent to the display end DTLS module (10), the connectivity test is successful, and the source end DTLS module (3) sends an SRTP symmetric encrypted key of an SRTP module (4) to the display end DTLS module (10); the display end DTLS module (10) sends the SRTP symmetric encrypted key to the display end SRTP module (11);
the display terminal SRTP module (11) receives the SRTP symmetric encrypted key of the display terminal DTLS module (10) and receives the SRTP encrypted video stream multicast received (8) by the display terminal; decrypting the encrypted video stream using the SRTP symmetric encrypted key; when the display SRTP module (11) finds that the video stream has packet loss, the display SRTP module informs the display virtual channel module (14) of sending a packet loss retransmission request; the display terminal SRTP module (11) sends the decrypted video stream to the display terminal video display module (12);
display-side video display module (12): and receiving the video stream of the SRTP module (11) at the display end, and decoding and displaying the video stream.
CN202011239708.4A 2020-11-09 2020-11-09 Multicast-based webrtc video stream transmission system Active CN112423007B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011239708.4A CN112423007B (en) 2020-11-09 2020-11-09 Multicast-based webrtc video stream transmission system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011239708.4A CN112423007B (en) 2020-11-09 2020-11-09 Multicast-based webrtc video stream transmission system

Publications (2)

Publication Number Publication Date
CN112423007A CN112423007A (en) 2021-02-26
CN112423007B true CN112423007B (en) 2022-07-08

Family

ID=74782205

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011239708.4A Active CN112423007B (en) 2020-11-09 2020-11-09 Multicast-based webrtc video stream transmission system

Country Status (1)

Country Link
CN (1) CN112423007B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113709272B (en) * 2021-08-26 2024-01-19 无锡思朗电子科技有限公司 Method for improving image switching speed

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588839A (en) * 2004-07-29 2005-03-02 北京航空航天大学 Safety group broadcast management system and method
CN101296358A (en) * 2007-04-26 2008-10-29 华为技术有限公司 Broadcast enciphering and updating system and method
CN101998174A (en) * 2009-08-24 2011-03-30 中兴通讯股份有限公司 Quick access method, server, client and system of multicast RTP (real time protocol) session
CN105306620A (en) * 2015-11-13 2016-02-03 吴华瑜 Data transmission control system
CN106375100A (en) * 2016-08-31 2017-02-01 浙江宇视科技有限公司 Multicast realization method and device in video monitoring system
CN106559396A (en) * 2015-09-30 2017-04-05 中国电信股份有限公司 Media multicast method and system based on Web real-time Communication for Power
CN106851435A (en) * 2016-12-23 2017-06-13 浙江宇视科技有限公司 The sending method and rear end equipment of a kind of multicast data flow
CN111147506A (en) * 2019-12-30 2020-05-12 武汉兴图新科电子股份有限公司 Method, system and storage device for playing streaming media data based on HTML5

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9467480B2 (en) * 2013-09-16 2016-10-11 Qualcomm Incorporated Selectively multiplexing incoming WebRTC traffic and/or de-multiplexing outgoing WebRTC traffic by a client-based WebRTC proxy on behalf of a WebRTC multimedia client application

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588839A (en) * 2004-07-29 2005-03-02 北京航空航天大学 Safety group broadcast management system and method
CN101296358A (en) * 2007-04-26 2008-10-29 华为技术有限公司 Broadcast enciphering and updating system and method
CN101998174A (en) * 2009-08-24 2011-03-30 中兴通讯股份有限公司 Quick access method, server, client and system of multicast RTP (real time protocol) session
CN106559396A (en) * 2015-09-30 2017-04-05 中国电信股份有限公司 Media multicast method and system based on Web real-time Communication for Power
CN105306620A (en) * 2015-11-13 2016-02-03 吴华瑜 Data transmission control system
CN106375100A (en) * 2016-08-31 2017-02-01 浙江宇视科技有限公司 Multicast realization method and device in video monitoring system
CN106851435A (en) * 2016-12-23 2017-06-13 浙江宇视科技有限公司 The sending method and rear end equipment of a kind of multicast data flow
CN111147506A (en) * 2019-12-30 2020-05-12 武汉兴图新科电子股份有限公司 Method, system and storage device for playing streaming media data based on HTML5

Also Published As

Publication number Publication date
CN112423007A (en) 2021-02-26

Similar Documents

Publication Publication Date Title
US8452008B2 (en) Content distributing method, apparatus and system
EP2421293B1 (en) Method enabling real-time data service realization, real-time data service system and mobile terminal
US8661248B2 (en) Method, apparatus, and system for sending and receiving security policy of multicast sessions
US8745396B2 (en) Method for implementing the real time data service and real time data service system
CN106559396B (en) Media multicast method and system based on Web real-time communication
WO2015000141A1 (en) Method, related device and system supporting streaming media multicast
KR20150009517A (en) System and method for reducing a call establishment time
CN104618110A (en) VoIP safety meeting session key transmission method
CN105657040B (en) intranet communication method and system between devices
CN112423007B (en) Multicast-based webrtc video stream transmission system
US8130691B2 (en) Relay apparatus, communication terminal, and communication method
KR20130024932A (en) Method for establishing secure network architecture, method and system for secure communication
US8705745B2 (en) Method and system for transmitting deferred media information in an IP multimedia subsystem
CN113472792B (en) Communication encryption method and system for long-connection network
CN113726895B (en) File transmission method and device and network KTV system
CN112202882B (en) Transmission method, client and transmission system
CN111555879B (en) Satellite communication network management channel message encryption and decryption method and system
CN106713308B (en) Method and device for transmitting media stream in real time
EP2713576B1 (en) Method and device for processing streaming media content
CN108040042B (en) Safety method for CoAP protocol under multicast condition
CN112235320B (en) Cipher-based video networking multicast communication method and device
CN101262589A (en) Mobile TV playing control system and playing control network of mobile TV
CN113572678A (en) Instant messaging method realized based on websocket
CN109672692B (en) Media data encryption method based on RTP in VoIP communication network
CN113098864B (en) Data transmission system

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant