CN112423007B - Multicast-based webrtc video stream transmission system - Google Patents
Multicast-based webrtc video stream transmission system Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/632—Control 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/2347—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving video stream encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4122—Peripherals receiving signals from specially adapted client devices additional display device, e.g. video projector
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/44—Processing 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/4405—Processing 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/64—Addressing
- H04N21/6405—Multicasting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network 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/63—Control 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/643—Communication protocols
- H04N21/6437—Real-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
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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113709272B (en) * | 2021-08-26 | 2024-01-19 | 无锡思朗电子科技有限公司 | Method for improving image switching speed |
Citations (8)
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)
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 |
-
2020
- 2020-11-09 CN CN202011239708.4A patent/CN112423007B/en active Active
Patent Citations (8)
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 |