CN111404648A - Data sending method and device - Google Patents

Data sending method and device Download PDF

Info

Publication number
CN111404648A
CN111404648A CN202010106826.1A CN202010106826A CN111404648A CN 111404648 A CN111404648 A CN 111404648A CN 202010106826 A CN202010106826 A CN 202010106826A CN 111404648 A CN111404648 A CN 111404648A
Authority
CN
China
Prior art keywords
packet
data packet
data
sub
target
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.)
Pending
Application number
CN202010106826.1A
Other languages
Chinese (zh)
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.)
Visionvera Information Technology Co Ltd
Original Assignee
Visionvera Information 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 Visionvera Information Technology Co Ltd filed Critical Visionvera Information Technology Co Ltd
Priority to CN202010106826.1A priority Critical patent/CN111404648A/en
Publication of CN111404648A publication Critical patent/CN111404648A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1809Selective-repeat protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • H04L43/0829Packet loss

Abstract

The embodiment of the invention provides a data sending method and a device, which are applied to a video network, wherein the method comprises the following steps: receiving a target data packet sent by a data sending end; under the condition that the target data packet is determined to have lost, acquiring a lost sub data packet in the target data packet; generating a retransmission instruction corresponding to the sub-data packet; and sending the retransmission instruction to the data sending end, and receiving the sub data packet uploaded again by the data sending end according to the retransmission instruction. The embodiment of the invention improves the stability and reliability of the video network in the data transmission process by retransmitting the lost data packet in the transmission process.

Description

Data sending method and device
Technical Field
The invention relates to the technical field of video networking, in particular to a data sending method and device.
Background
The video network is used as a two-layer exchange network with a heavy-load and extremely low packet loss rate, the probability of packet loss is very low, and however, the situation of partial packet loss still occurs in an extremely severe channel environment. If the packet loss data is just sensitive, service discontinuity and trouble may be caused. Therefore, a method is needed to reduce the occurrence probability of the above packet loss situation and improve the stability and reliability of the video network in the data transmission process.
Disclosure of Invention
In view of the above problems, embodiments of the present invention are proposed to provide a data transmission method and apparatus that overcome or at least partially solve the above problems.
In order to solve the above problem, an embodiment of the present invention provides a data sending method, which is applied to a video network, and the method includes:
receiving a target data packet sent by a data sending end;
under the condition that the target data packet is determined to have lost, acquiring a lost sub data packet in the target data packet;
generating a retransmission instruction corresponding to the sub-data packet;
and sending the retransmission instruction to the data sending end, and receiving the sub data packet uploaded again by the data sending end according to the retransmission instruction.
Optionally, the receiving the target data packet sent by the data sending end includes:
receiving a data packet transmitted by the data transmitting terminal;
and when the number of the packet sequence numbers contained in the data packet is greater than or equal to the number of the preset packets, taking the data packet as the target data packet.
Optionally, the obtaining the missing sub data packets in the target data packet includes:
acquiring a sub-packet sequence number corresponding to the sub-packet;
the generating of the retransmission instruction corresponding to the sub-packet includes:
and generating a retransmission instruction which corresponds to the sub-data packet and contains the sub-packet sequence number.
Optionally, after receiving the target data packet sent by the data sending end, the method further includes:
sending a target confirmation packet to the data sending end under the condition of receiving the last data packet of the target data packet and determining that no packet loss exists in the target data packet;
wherein the target acknowledgement packet is configured to inform the data sender that retransmission of the target data packet is not required.
In order to solve the above problem, an embodiment of the present invention provides a data transmission apparatus, which is applied to a video network, and the apparatus includes:
the receiving module is used for receiving a target data packet sent by the data sending end;
the obtaining module is used for obtaining the lost sub data packet in the target data packet under the condition that the target data packet is determined to have the lost packet;
the generation module is used for generating a retransmission instruction corresponding to the sub data packet;
and the first sending module is used for sending the retransmission instruction to the data sending end and receiving the sub data packet uploaded by the data sending end again according to the retransmission instruction.
Optionally, the first receiving module includes:
the receiving submodule is used for receiving the data packet sent by the data sending end;
and the sub-module is used for taking the data packet as the target data packet when the number of the packet sequence numbers contained in the data packet is greater than or equal to the preset number of packets.
Optionally, the obtaining module includes:
the obtaining submodule is used for obtaining the sub-packet serial number corresponding to the sub-data packet;
the generation module comprises:
and the generation submodule is used for generating a retransmission instruction which corresponds to the sub-data packet and contains the sub-packet sequence number.
Optionally, the apparatus further comprises:
the second sending module is used for sending a target confirmation packet to the data sending end under the conditions that the last data packet of the target data packet is received and the packet loss does not exist in the target data packet;
wherein the target acknowledgement packet is configured to inform the data sender that retransmission of the target data packet is not required.
In order to solve the above problem, an embodiment of the present invention provides an electronic device, including:
one or more processors; and
one or more machine readable media having instructions stored thereon that, when executed by the one or more processors, cause the apparatus to perform the above-described data transmission method.
In order to solve the above problem, an embodiment of the present invention provides a computer-readable storage medium storing a computer program that causes a processor to execute the above data transmission method.
The embodiment of the invention has the following advantages:
in the embodiment of the invention, the target data packet sent by the data sending end is received, the sub data packet lost in the target data packet is obtained under the condition that the target data packet is determined to have packet loss, the retransmission instruction corresponding to the sub data packet is generated, the retransmission instruction is sent to the data sending end, the sub data packet re-uploaded by the data sending end according to the retransmission instruction is received, and the stability and the reliability of the video network in the data transmission process are improved by retransmitting the lost data packet in the transmission process.
Drawings
Fig. 1 is a flowchart illustrating steps of a data transmission method according to an embodiment of the present invention;
fig. 2 is a schematic diagram illustrating data transmission in a video networking scenario according to an embodiment of the present invention;
fig. 3 is a flowchart illustrating steps of a data transmission method according to a second embodiment of the present invention;
fig. 4 is a block diagram illustrating a data transmitting apparatus according to a third embodiment of the present invention;
FIG. 5 illustrates a networking diagram of a video network of the present invention;
FIG. 6 is a schematic diagram of a hardware architecture of a node server according to the present invention;
fig. 7 shows a hardware architecture diagram of an access switch of the present invention;
fig. 8 is a schematic diagram illustrating a hardware structure of an ethernet protocol conversion gateway according to the present invention.
Detailed Description
In order to make the aforementioned objects, features and advantages of the present invention comprehensible, embodiments accompanied with figures are described in further detail below.
Referring to fig. 1, a flowchart illustrating steps of a data sending method according to an embodiment of the present invention is shown, where the method may be applied to a video network, and specifically may include the following steps:
step 501, receiving a target data packet sent by a data sending end.
In the present invention, the technical solution of the present embodiment can be described in detail with reference to fig. 2.
Referring to fig. 2, a schematic diagram of data transmission in a scenario of video networking according to an embodiment of the present invention is shown, as shown in fig. 2, in a process of data transmission, a communication terminal 10 in the video networking, that is, a data transmitting end, may transmit a target data packet to an autonomous cloud 20 of the video networking through the video networking, the autonomous cloud 20 of the video networking transmits the target data packet to a storage gateway 30 through the video networking, and the storage gateway 30 receives the target data packet transmitted by the data transmitting end.
The storage gateway is a component of a storage service system, the storage service system is mainly used in a main place for storing multimedia files and programs in the video network, and the storage gateway is mainly responsible for receiving data sent by an entity terminal in the video network and a virtual terminal under different scenes, namely a target data packet in the embodiment of the invention.
The video network autonomous cloud can comprise an autonomous server and a video network core exchange server, and the transmission of data in the video network is scheduled by the autonomous server. The video networking data transmissions are all exchanged via the core server. The data transmission in the video network follows the V2V protocol of the video network, and the protocol header comprises the information of session ID, packet sequence number and the like.
The communication terminal in the video network may be a real communication terminal in the video network or a virtual communication terminal in the video network, which is not limited in the embodiment of the present invention.
Optionally, the data sending end may initiate a new session to the storage gateway, the storage gateway establishes a session with the data sending end, then the data sending end sends a target data packet to the storage gateway, and the storage gateway receives a video data packet sent by the data sending end.
After receiving the target data packet transmitted by the data transmitting end, step 502 is performed.
Step 502, under the condition that it is determined that the target data packet has a lost packet, acquiring a lost sub data packet in the target data packet.
After receiving a target data packet sent by a data sending end, the storage gateway may detect whether a packet sequence number of the target data packet is an integer multiple of a packet group size, and when the packet sequence number of the target data packet is an integer multiple of a packet group size, may obtain a sub-packet sequence number corresponding to a sub-packet lost in the target data packet.
In the present invention, the packet group size may be set to 200, and the packet group size may be specifically adjusted in a specific application, which is not specifically limited in this embodiment of the present invention.
When it is determined that there is a packet loss in the target data packet, step 503 is executed after the missing sub data packet in the target data packet is obtained.
Step 503, generating a retransmission instruction corresponding to the sub-packet.
The storage gateway can obtain the sub-packet sequence number corresponding to the sub-packet lost in the target data packet, and generate a retransmission instruction corresponding to the sub-packet.
After the retransmission instruction corresponding to the sub-packet is generated, step 504 is executed.
Step 504, sending the retransmission instruction to the data sending end, and receiving the sub data packet re-uploaded by the data sending end according to the retransmission instruction.
After the storage gateway generates the retransmission instruction corresponding to the sub-data packet, the retransmission instruction can be sent to the data sending end, the data sending end uploads the sub-data packet again according to the retransmission instruction and sends the re-uploaded sub-data packet to the storage gateway, so that retransmission of the data packet lost in the transmission process can be realized, and the stability and reliability of the video network in the transmission process are improved.
In the embodiment of the invention, the target data packet sent by the data sending end is received, the sub data packet lost in the target data packet is obtained under the condition that the target data packet is determined to have packet loss, the retransmission instruction corresponding to the sub data packet is generated, the retransmission instruction is sent to the data sending end, the sub data packet re-uploaded by the data sending end according to the retransmission instruction is received, and the stability and the reliability of the video network in the data transmission process are improved by retransmitting the lost data packet in the transmission process.
Referring to fig. 3, a flowchart illustrating steps of a data sending method according to a second embodiment of the present invention is shown, where the method may be applied to a video network, where the video network includes a first management system and a second management system, the first management system includes a first autonomous server, and the second management system includes a second autonomous server, and specifically may include the following steps:
step 601, receiving a data packet sent by a data sending end.
In the present invention, the technical solution of the present embodiment can be described in detail with reference to fig. 2.
Referring to fig. 2, a schematic diagram of data transmission in a scenario of video networking according to an embodiment of the present invention is shown, as shown in fig. 2, in a process of data transmission, a communication terminal 10 in the video networking, that is, a data transmitting end, may transmit a data packet to an autonomous cloud 20 of the video networking through the video networking, the autonomous cloud 20 of the video networking transmits the data packet to a storage gateway 30 through the video networking, and the storage gateway 30 receives the data packet transmitted by the data transmitting end.
The storage gateway is a component of a storage service system, the storage service system is mainly used in a main place for storing multimedia files and programs in the video network, and the storage gateway is mainly responsible for receiving data sent by an entity terminal in the video network and a virtual terminal under different scenes, namely a data packet in the embodiment of the invention.
The video network autonomous cloud can comprise an autonomous server and a video network core exchange server, and the transmission of data in the video network is scheduled by the autonomous server. The video networking data transmissions are all exchanged via the core server. The data transmission in the video network follows the V2V protocol of the video network, and the protocol header comprises the information of session ID, packet sequence number and the like.
The data sending end can initiate a new session to the storage gateway, the storage gateway establishes a session with the data sending end, then the data sending end sends a data packet to the storage gateway, and the storage gateway receives a video data packet sent by the data sending end.
After receiving the data packet transmitted by the data transmitting end, step 602 is performed.
Step 602, when the number of packet sequence numbers contained in the data packet is greater than or equal to the preset number of packets, the data packet is taken as a target data packet.
The data transmission in the video network follows the video network V2V protocol, and the protocol header comprises the information of session ID, packet sequence number, etc., so when the number of packet sequence numbers contained in the data packet is greater than or equal to the preset number of packets (packet group size), the data packet can be used as the target data packet.
The number of the preset packets may be 200, and the number of the preset packets may be specifically adjusted in specific applications, which is not specifically limited in this embodiment of the present invention.
When the last packet index is an integral multiple of the number of the preset packets, the packet is set as a target packet.
It should be noted that when the number of packet sequence numbers included in a data packet is smaller than the number of preset packets or the index of the last data packet is not an integer multiple of the number of preset packets, a retransmission instruction still needs to be sent to the data sending end when the last data packet is received in the current session.
When the number of packet sequence numbers included in the data packet is greater than or equal to the preset number of packets, the data packet is regarded as a target data packet, and then step 603 is executed.
Step 603, obtaining the sub-packet sequence number corresponding to the sub-packet when determining that the target data packet has packet loss.
After receiving a target data packet sent by a data sending end, the storage gateway may detect whether a packet sequence number of the target data packet is an integer multiple of a packet group size, and when the packet sequence number of the target data packet is an integer multiple of a packet group size, may obtain a sub-packet sequence number corresponding to a sub-packet lost in the target data packet.
When the packet sequence number of the target data packet is not an integral multiple of the packet group size, the storage gateway continues to receive the next data packet, that is, receives the current data packet.
In the present invention, the packet group size may be set to 200, and the packet group size may be specifically adjusted in a specific application, which is not specifically limited in this embodiment of the present invention.
After the sub-packet sequence number corresponding to the sub-packet is obtained under the condition that the target data packet has the packet loss, step 604 is executed.
Step 604, a retransmission instruction containing the sub-packet sequence number corresponding to the sub-packet is generated.
The storage gateway can obtain the sub-packet sequence number corresponding to the sub-packet lost in the target data packet, and generate a retransmission instruction containing the sub-packet sequence number corresponding to the sub-packet.
After generating the retransmission command containing the sub-packet sequence number corresponding to the sub-packet, step 605 is executed.
Step 605, sending the target acknowledgement packet to the data sending end when receiving the last data packet of the target data packet and determining that no packet loss exists in the target data packet.
Wherein the target acknowledgement packet is configured to inform the data sender that the target data packet does not need to be retransmitted.
In the embodiment of the invention, under the condition of receiving the last data packet of a target data packet and determining that no packet loss exists in the target data packet, a storage gateway sends a target confirmation packet to a data sending end;
wherein the target acknowledgement packet is configured to inform the data sender that the target data packet does not need to be retransmitted.
Step 606, sending the retransmission instruction to the data sending end, and receiving the sub data packet re-uploaded by the data sending end according to the retransmission instruction.
After the storage gateway generates the retransmission instruction corresponding to the sub-data packet, the retransmission instruction can be sent to the data sending end, the data sending end uploads the sub-data packet again according to the retransmission instruction and sends the re-uploaded sub-data packet to the storage gateway, so that retransmission of the data packet lost in the transmission process can be realized, and the stability and reliability of the video network in the transmission process are improved.
In the embodiment of the invention, a data packet sent by a data sending end is received, when the number of packet sequence numbers contained in the data packet is greater than or equal to the number of preset packets, the data packet is used as a target data packet, the sub-packet sequence number corresponding to the sub-data packet is obtained under the condition that the target data packet has a packet loss, a retransmission instruction containing the sub-packet sequence number corresponding to the sub-data packet is generated, under the condition that the target data packet does not have the packet loss, the current data packet sent by the data sending end is received, the retransmission instruction is sent to the data sending end, the sub-data packet re-uploaded by the data sending end according to the retransmission instruction is received, and the stability and the reliability of the video network in the data transmission process are improved by retransmitting the lost data packet in the transmission.
It should be noted that, for simplicity of description, the method embodiments are described as a series of acts or combination of acts, but those skilled in the art will recognize that the present invention is not limited by the illustrated order of acts, as some steps may occur in other orders or concurrently in accordance with the embodiments of the present invention. Further, those skilled in the art will appreciate that the embodiments described in the specification are presently preferred and that no particular act is required to implement the invention.
Referring to fig. 4, a block diagram of a data transmitting apparatus according to a third embodiment of the present invention is shown, where the data transmitting apparatus 700 may be applied to a video network, and the apparatus specifically includes:
a receiving module 701, configured to receive a target data packet sent by a data sending end;
an obtaining module 702, configured to obtain a missing sub data packet in a target data packet when it is determined that the target data packet has a missing packet;
a generating module 703, configured to generate a retransmission instruction corresponding to the sub data packet;
the first sending module 704 is configured to send the retransmission instruction to the data sending end, and receive the sub data packet re-uploaded by the data sending end according to the retransmission instruction.
Optionally, the first receiving module includes:
the receiving submodule is used for receiving the data packet sent by the data sending end;
and the sub-module is used for taking the data packet as a target data packet when the number of the packet sequence numbers contained in the data packet is greater than or equal to the number of the preset packets.
Optionally, the obtaining module includes:
the obtaining submodule is used for obtaining the sub-packet serial number corresponding to the sub-data packet;
the generation module comprises:
and the generation submodule is used for generating a retransmission instruction which corresponds to the sub-data packet and contains the sub-packet sequence number.
Optionally, the apparatus further comprises:
the second sending module is used for sending the target confirmation packet to the data sending end under the conditions of receiving the last data packet of the target data packet and determining that no packet loss exists in the target data packet;
wherein the target acknowledgement packet is configured to inform the data sender that the target data packet does not need to be retransmitted.
In the embodiment of the present invention, the first receiving module is configured to receive a target data packet sent by a data sending end, the obtaining module is further configured to obtain a missing sub-data packet in the target data packet when it is determined that a packet loss exists in the target data packet, the generating module is further configured to generate a retransmission instruction corresponding to the sub-data packet, and finally the receiving module is configured to send the retransmission instruction to the data sending end and receive the sub-data packet re-uploaded by the data sending end according to the retransmission instruction.
For the device embodiment, since it is basically similar to the method embodiment, the description is simple, and for the relevant points, refer to the partial description of the method embodiment.
An embodiment of the present invention further provides an electronic device, including:
one or more processors; and
one or more machine readable media having instructions stored thereon that, when executed by the one or more processors, cause the apparatus to perform the data transmission method as described above.
An embodiment of the present invention further provides a computer-readable storage medium, which stores a computer program for causing a processor to execute the data transmission method.
The video networking is an important milestone for network development, is a real-time network, can realize high-definition video real-time transmission, and pushes a plurality of internet applications to high-definition video, and high-definition faces each other.
The video networking adopts a real-time high-definition video exchange technology, can integrate required services such as dozens of services of video, voice, pictures, characters, communication, data and the like on a system platform on a network platform, such as high-definition video conference, video monitoring, intelligent monitoring analysis, emergency command, digital broadcast television, delayed television, network teaching, live broadcast, VOD on demand, television mail, Personal Video Recorder (PVR), intranet (self-office) channels, intelligent video broadcast control, information distribution and the like, and realizes high-definition quality video broadcast through a television or a computer.
The video networking is an important milestone for network development, is a real-time network, can realize high-definition video real-time transmission, and pushes a plurality of internet applications to high-definition video, and high-definition faces each other.
The video networking adopts a real-time high-definition video exchange technology, can integrate required services such as dozens of services of video, voice, pictures, characters, communication, data and the like on a system platform on a network platform, such as high-definition video conference, video monitoring, intelligent monitoring analysis, emergency command, digital broadcast television, delayed television, network teaching, live broadcast, VOD on demand, television mail, Personal Video Recorder (PVR), intranet (self-office) channels, intelligent video broadcast control, information distribution and the like, and realizes high-definition quality video broadcast through a television or a computer.
To better understand the embodiments of the present invention, the following description refers to the internet of view:
some of the technologies applied in the video networking are as follows:
network Technology (Network Technology)
Network technology innovation in video networking has improved over traditional Ethernet (Ethernet) to face the potentially enormous video traffic on the network. Unlike pure network Packet Switching (Packet Switching) or network circuit Switching (circuit Switching), the Packet Switching is adopted by the technology of the video networking to meet the Streaming requirement. The video networking technology has the advantages of flexibility, simplicity and low price of packet switching, and simultaneously has the quality and safety guarantee of circuit switching, thereby realizing the seamless connection of the whole network switching type virtual circuit and the data format.
Switching Technology (Switching Technology)
The video network adopts two advantages of asynchronism and packet switching of the Ethernet, eliminates the defects of the Ethernet on the premise of full compatibility, has end-to-end seamless connection of the whole network, is directly communicated with a user terminal, and directly bears an IP data packet. The user data does not require any format conversion across the entire network. The video networking is a higher-level form of the Ethernet, is a real-time exchange platform, can realize the real-time transmission of the whole-network large-scale high-definition video which cannot be realized by the existing Internet, and pushes a plurality of network video applications to high-definition and unification.
Server Technology (Server Technology)
The server technology on the video networking and unified video platform is different from the traditional server, the streaming media transmission of the video networking and unified video platform is established on the basis of connection orientation, the data processing capacity of the video networking and unified video platform is independent of flow and communication time, and a single network layer can contain signaling and data transmission. For voice and video services, the complexity of video networking and unified video platform streaming media processing is much simpler than that of data processing, and the efficiency is greatly improved by more than one hundred times compared with that of a traditional server.
Storage Technology (Storage Technology)
The super-high speed storage technology of the unified video platform adopts the most advanced real-time operating system in order to adapt to the media content with super-large capacity and super-large flow, the program information in the server instruction is mapped to the specific hard disk space, the media content is not passed through the server any more, and is directly sent to the user terminal instantly, and the general waiting time of the user is less than 0.2 second. The optimized sector distribution greatly reduces the mechanical motion of the magnetic head track seeking of the hard disk, the resource consumption only accounts for 20% of that of the IP internet of the same grade, but concurrent flow which is 3 times larger than that of the traditional hard disk array is generated, and the comprehensive efficiency is improved by more than 10 times.
Network Security Technology (Network Security Technology)
The structural design of the video network completely eliminates the network security problem troubling the internet structurally by the modes of independent service permission control each time, complete isolation of equipment and user data and the like, generally does not need antivirus programs and firewalls, avoids the attack of hackers and viruses, and provides a structural carefree security network for users.
Service Innovation Technology (Service Innovation Technology)
The unified video platform integrates services and transmission, and is not only automatically connected once whether a single user, a private network user or a network aggregate. The user terminal, the set-top box or the PC are directly connected to the unified video platform to obtain various multimedia video services in various forms. The unified video platform adopts a menu type configuration table mode to replace the traditional complex application programming, can realize complex application by using very few codes, and realizes infinite new service innovation.
Networking of the video network is as follows:
the video network is a centralized control network structure, and the network can be a tree network, a star network, a ring network and the like, but on the basis of the centralized control node, the whole network is controlled by the centralized control node in the network.
As shown in fig. 5, the video network is divided into an access network and a metropolitan network.
The devices of the access network part can be mainly classified into 3 types: node server, access switch, terminal (including various set-top boxes, coding boards, memories, etc.). The node server is connected to an access switch, which may be connected to a plurality of terminals and may be connected to an ethernet network.
The node server is a node which plays a centralized control function in the access network and can control the access switch and the terminal. The node server can be directly connected with the access switch or directly connected with the terminal.
Similarly, devices of the metropolitan network portion may also be classified into 3 types: a metropolitan area server, a node switch and a node server. The metro server is connected to a node switch, which may be connected to a plurality of node servers.
The node server is a node server of the access network part, namely the node server belongs to both the access network part and the metropolitan area network part.
The metropolitan area server is a node which plays a centralized control function in the metropolitan area network and can control a node switch and a node server. The metropolitan area server can be directly connected with the node switch or directly connected with the node server.
Therefore, the whole video network is a network structure with layered centralized control, and the network controlled by the node server and the metropolitan area server can be in various structures such as tree, star and ring.
The access network part can form a unified video platform (the part in the dotted circle), and a plurality of unified video platforms can form a video network; each unified video platform may be interconnected via metropolitan area and wide area video networking.
Video networking device classification
1.1 devices in the video network of the embodiment of the present invention can be mainly classified into 3 types: servers, switches (including ethernet gateways), terminals (including various set-top boxes, code boards, memories, etc.). The video network as a whole can be divided into a metropolitan area network (or national network, global network, etc.) and an access network.
1.2 wherein the devices of the access network part can be mainly classified into 3 types: node servers, access switches (including ethernet gateways), terminals (including various set-top boxes, code boards, memories, etc.).
The specific hardware structure of each access network device is as follows:
a node server:
as shown in fig. 6, the system mainly includes a network interface module 201, a switching engine module 202, a CPU module 203, and a disk array module 204;
the network interface module 201, the CPU module 203, and the disk array module 204 all enter the switching engine module 202; the switching engine module 202 performs an operation of looking up the address table 205 on the incoming packet, thereby obtaining the direction information of the packet; and stores the packet in a queue of the corresponding packet buffer 206 based on the packet's steering information; if the queue of the packet buffer 206 is nearly full, it is discarded; the switching engine module 202 polls all packet buffer queues for forwarding if the following conditions are met: 1) the port send buffer is not full; 2) the queue packet counter is greater than zero. The disk array module 204 mainly implements control over the hard disk, including initialization, read-write, and other operations on the hard disk; the CPU module 203 is mainly responsible for protocol processing with an access switch and a terminal (not shown in the figure), configuring an address table 205 (including a downlink protocol packet address table, an uplink protocol packet address table, and a data packet address table), and configuring the disk array module 204.
The access switch:
as shown in fig. 7, the network interface module (downlink network interface module 301, uplink network interface module 302), switching engine module 303 and CPU module 304 are mainly included;
wherein, the packet (uplink data) coming from the downlink network interface module 301 enters the packet detection module 305; the packet detection module 305 detects whether the Destination Address (DA), the Source Address (SA), the packet type, and the packet length of the packet meet the requirements, and if so, allocates a corresponding stream identifier (stream-id) and enters the switching engine module 303, otherwise, discards the stream identifier; the packet (downstream data) coming from the upstream network interface module 302 enters the switching engine module 303; the incoming data packet of the CPU module 304 enters the switching engine module 303; the switching engine module 303 performs an operation of looking up the address table 306 on the incoming packet, thereby obtaining the direction information of the packet; if the packet entering the switching engine module 303 is from the downstream network interface to the upstream network interface, the packet is stored in the queue of the corresponding packet buffer 307 in association with the stream-id; if the queue of the packet buffer 307 is nearly full, it is discarded; if the packet entering the switching engine module 303 is not from the downlink network interface to the uplink network interface, the data packet is stored in the queue of the corresponding packet buffer 307 according to the guiding information of the packet; if the queue of the packet buffer 307 is nearly full, it is discarded.
The switching engine module 303 polls all packet buffer queues, which in this embodiment of the present invention is divided into two cases:
if the queue is from the downlink network interface to the uplink network interface, the following conditions are met for forwarding: 1) the port send buffer is not full; 2) the queued packet counter is greater than zero; 3) obtaining a token generated by a code rate control module;
if the queue is not from the downlink network interface to the uplink network interface, the following conditions are met for forwarding: 1) the port send buffer is not full; 2) the queue packet counter is greater than zero.
The rate control module 308 is configured by the CPU module 304, and generates tokens for packet buffer queues from all downstream network interfaces to upstream network interfaces at programmable intervals to control the rate of upstream forwarding.
The CPU module 304 is mainly responsible for protocol processing with the node server, configuration of the address table 306, and configuration of the code rate control module 308.
Ethernet protocol conversion gateway
As shown in fig. 8, the apparatus mainly includes a network interface module (a downlink network interface module 401 and an uplink network interface module 402), a switching engine module 403, a CPU module 404, a packet detection module 405, a rate control module 408, an address table 406, a packet buffer 407, a MAC adding module 409, and a MAC deleting module 410.
Wherein, the data packet coming from the downlink network interface module 401 enters the packet detection module 405; the packet detection module 405 detects whether the ethernet MAC DA, the ethernet MAC SA, the ethernet length or frame type, the video network destination address DA, the video network source address SA, the video network packet type, and the packet length of the packet meet the requirements, and if so, allocates a corresponding stream identifier (stream-id); then, the MAC deletion module 410 subtracts MAC DA, MAC SA, length or frame type (2byte) and enters the corresponding receiving buffer, otherwise, discards it;
the downlink network interface module 401 detects the sending buffer of the port, and if there is a packet, obtains the ethernet MAC DA of the corresponding terminal according to the destination address DA of the packet, adds the ethernet MAC DA of the terminal, the MACSA of the ethernet coordination gateway, and the ethernet length or frame type, and sends the packet.
The other modules in the ethernet protocol gateway function similarly to the access switch.
A terminal:
the system mainly comprises a network interface module, a service processing module and a CPU module; for example, the set-top box mainly comprises a network interface module, a video and audio coding and decoding engine module and a CPU module; the coding board mainly comprises a network interface module, a video and audio coding engine module and a CPU module; the memory mainly comprises a network interface module, a CPU module and a disk array module.
1.3 devices of the metropolitan area network part can be mainly classified into 2 types: node server, node exchanger, metropolitan area server. The node switch mainly comprises a network interface module, a switching engine module and a CPU module; the metropolitan area server mainly comprises a network interface module, a switching engine module and a CPU module.
2. Video networking packet definition
2.1 Access network packet definition
The data packet of the access network mainly comprises the following parts: destination Address (DA), Source Address (SA), reserved bytes, payload (pdu), CRC.
As shown in the following table, the data packet of the access network mainly includes the following parts:
DA SA Reserved Payload CRC
wherein:
the Destination Address (DA) is composed of 8 bytes (byte), the first byte represents the type of the data packet (such as various protocol packets, multicast data packets, unicast data packets, etc.), there are 256 possibilities at most, the second byte to the sixth byte are metropolitan area network addresses, and the seventh byte and the eighth byte are access network addresses;
the Source Address (SA) is also composed of 8 bytes (byte), defined as the same as the Destination Address (DA);
the reserved byte consists of 2 bytes;
the payload part has different lengths according to different types of datagrams, and is 64 bytes if the datagram is various types of protocol packets, and is 32+1024 or 1056 bytes if the datagram is a unicast packet, of course, the length is not limited to the above 2 types;
the CRC consists of 4 bytes and is calculated in accordance with the standard ethernet CRC algorithm.
2.2 metropolitan area network packet definition
The topology of a metropolitan area network is a graph and there may be 2, or even more than 2, connections between two devices, i.e., there may be more than 2 connections between a node switch and a node server, a node switch and a node switch, and a node switch and a node server. However, the metro network address of the metro network device is unique, and in order to accurately describe the connection relationship between the metro network devices, parameters are introduced in the embodiment of the present invention: a label to uniquely describe a metropolitan area network device.
In this specification, the definition of the label is similar to that of a label of MP L S (Multi-Protocol L abel Switch), and assuming that there are two connections between device a and device B, there are 2 labels for a packet from device a to device B, and there are 2 labels for a packet from device B to device a. the label is divided into an incoming label and an outgoing label, and assuming that the label (incoming label) of a packet entering device a is 0x0000, the label (outgoing label) of the packet leaving device a may become 0x 0001.
As shown in the following table, the data packet of the metro network mainly includes the following parts:
DA SA Reserved label (R) Payload CRC
Namely Destination Address (DA), Source Address (SA), Reserved byte (Reserved), tag, payload (pdu), CRC. The format of the tag may be defined by reference to the following: the tag is 32 bits with the upper 16 bits reserved and only the lower 16 bits used, and its position is between the reserved bytes and payload of the packet.
Based on the above characteristics of the video network, one of the core concepts of the embodiments of the present invention is provided, in which a storage gateway receives a target data packet sent by a data sending end, acquires a missing sub data packet in the target data packet when it is determined that the target data packet has a packet loss, generates a retransmission instruction corresponding to the sub data packet, sends the retransmission instruction to the data sending end, and receives a sub data packet re-uploaded by the data sending end according to the retransmission instruction, and improves stability and reliability of the video network in a data transmission process by retransmitting the missing data packet in the transmission process.
The embodiments in the present specification are described in a progressive manner, each embodiment focuses on differences from other embodiments, and the same and similar parts among the embodiments are referred to each other.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, apparatus, or computer program product. Accordingly, embodiments of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, embodiments of the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, and the like) having computer-usable program code embodied therein.
Embodiments of the present invention are described with reference to flowchart illustrations and/or block diagrams of methods, terminal devices (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing terminal to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing terminal, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing terminal to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing terminal to cause a series of operational steps to be performed on the computer or other programmable terminal to produce a computer implemented process such that the instructions which execute on the computer or other programmable terminal provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present invention have been described, additional variations and modifications of these embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the embodiments of the invention.
Finally, it should also be noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or terminal that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or terminal. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or terminal that comprises the element.
The data sending method and apparatus provided by the present invention are introduced in detail, and a specific example is applied in the text to explain the principle and the implementation of the present invention, and the description of the above embodiment is only used to help understanding the method and the core idea of the present invention; meanwhile, for a person skilled in the art, according to the idea of the present invention, there may be variations in the specific embodiments and the application scope, and in summary, the content of the present specification should not be construed as a limitation to the present invention.

Claims (10)

1. A data transmission method is applied to a video network, and comprises the following steps:
receiving a target data packet sent by a data sending end;
under the condition that the target data packet is determined to have lost, acquiring a lost sub data packet in the target data packet;
generating a retransmission instruction corresponding to the sub-data packet;
and sending the retransmission instruction to the data sending end, and receiving the sub data packet uploaded again by the data sending end according to the retransmission instruction.
2. The method of claim 1, wherein the receiving the target data packet sent by the data sender comprises:
receiving a data packet transmitted by the data transmitting terminal;
and when the number of the packet sequence numbers contained in the data packet is greater than or equal to the number of the preset packets, taking the data packet as the target data packet.
3. The method of claim 1, wherein the obtaining the missing sub-packets in the target packet comprises:
acquiring a sub-packet sequence number corresponding to the sub-packet;
the generating of the retransmission instruction corresponding to the sub-packet includes:
and generating a retransmission instruction which corresponds to the sub-data packet and contains the sub-packet sequence number.
4. The method of claim 1, wherein after receiving the target data packet sent by the data sender, the method further comprises:
sending a target confirmation packet to the data sending end under the condition of receiving the last data packet of the target data packet and determining that no packet loss exists in the target data packet;
wherein the target acknowledgement packet is configured to inform the data sender that retransmission of the target data packet is not required.
5. A data transmission apparatus, applied to a video network, the apparatus comprising:
the receiving module is used for receiving a target data packet sent by the data sending end;
the obtaining module is used for obtaining the lost sub data packet in the target data packet under the condition that the target data packet is determined to have the lost packet;
the generation module is used for generating a retransmission instruction corresponding to the sub data packet;
and the first sending module is used for sending the retransmission instruction to the data sending end and receiving the sub data packet uploaded by the data sending end again according to the retransmission instruction.
6. The apparatus of claim 5, wherein the first receiving module comprises:
the receiving submodule is used for receiving the data packet sent by the data sending end;
and the sub-module is used for taking the data packet as the target data packet when the number of the packet sequence numbers contained in the data packet is greater than or equal to the preset number of packets.
7. The apparatus of claim 5, wherein the obtaining module comprises:
the obtaining submodule is used for obtaining the sub-packet serial number corresponding to the sub-data packet;
the generation module comprises:
and the generation submodule is used for generating a retransmission instruction which corresponds to the sub-data packet and contains the sub-packet sequence number.
8. The apparatus of claim 5, further comprising:
the second sending module is used for sending a target confirmation packet to the data sending end under the conditions that the last data packet of the target data packet is received and the packet loss does not exist in the target data packet;
wherein the target acknowledgement packet is configured to inform the data sender that retransmission of the target data packet is not required.
9. An electronic device, comprising:
one or more processors; and
one or more machine-readable media having instructions stored thereon that, when executed by the one or more processors, cause the apparatus to perform the data transmission method of any of claims 1-4.
10. A computer-readable storage medium storing a computer program for causing a processor to execute the data transmission method according to any one of claims 1 to 4.
CN202010106826.1A 2020-02-20 2020-02-20 Data sending method and device Pending CN111404648A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010106826.1A CN111404648A (en) 2020-02-20 2020-02-20 Data sending method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010106826.1A CN111404648A (en) 2020-02-20 2020-02-20 Data sending method and device

Publications (1)

Publication Number Publication Date
CN111404648A true CN111404648A (en) 2020-07-10

Family

ID=71430373

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010106826.1A Pending CN111404648A (en) 2020-02-20 2020-02-20 Data sending method and device

Country Status (1)

Country Link
CN (1) CN111404648A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117176809A (en) * 2023-09-01 2023-12-05 中科驭数(北京)科技有限公司 Data interaction method and system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102377524A (en) * 2011-10-11 2012-03-14 北京邮电大学 Fragment processing method and system
US20150117176A1 (en) * 2013-10-28 2015-04-30 Samsung Sds Co., Ltd. Data communications using connectionless-oriented protocol
CN109287139A (en) * 2017-05-22 2019-01-29 北京小米移动软件有限公司 Data transmission method and device
CN109327730A (en) * 2018-09-11 2019-02-12 视联动力信息技术股份有限公司 A kind of method and apparatus of data packet downloading

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102377524A (en) * 2011-10-11 2012-03-14 北京邮电大学 Fragment processing method and system
US20150117176A1 (en) * 2013-10-28 2015-04-30 Samsung Sds Co., Ltd. Data communications using connectionless-oriented protocol
CN109287139A (en) * 2017-05-22 2019-01-29 北京小米移动软件有限公司 Data transmission method and device
CN109327730A (en) * 2018-09-11 2019-02-12 视联动力信息技术股份有限公司 A kind of method and apparatus of data packet downloading

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117176809A (en) * 2023-09-01 2023-12-05 中科驭数(北京)科技有限公司 Data interaction method and system

Similar Documents

Publication Publication Date Title
CN109996086B (en) Method and device for inquiring service state of video networking
CN110022295B (en) Data transmission method and video networking system
CN110381030B (en) Method and device for processing synchronization request
CN109547163B (en) Method and device for controlling data transmission rate
CN110381119B (en) Method, system and device for acquiring log information and storage medium
CN109818960B (en) Data processing method and device
CN110138513B (en) Data transmission method and video networking system
CN109714568B (en) Video monitoring data synchronization method and device
CN110650147A (en) Data acquisition method and system
CN110336710B (en) Terminal testing method, system and device and storage medium
CN109889516B (en) Method and device for establishing session channel
CN109861929B (en) Data caching processing method and device
CN111510341A (en) Network testing method and device for video network
CN109167965B (en) Data processing method and device
CN111245733A (en) Data transmission method and device
CN110677315A (en) Method and system for monitoring state
CN111211982A (en) Data forwarding method and device, electronic equipment and storage medium
CN110557370A (en) method, system, electronic equipment and storage medium for pamir synchronization of terminal information
CN111404648A (en) Data sending method and device
CN110572367B (en) Method, system, server, device and storage medium for modifying terminal name
CN110446058B (en) Video acquisition method, system, device and computer readable storage medium
CN110493311B (en) Service processing method and device
CN110636110B (en) Monitoring data flow adjusting method and device
CN110213533B (en) Method and device for acquiring video stream monitored by video network
CN110493191B (en) Windows platform data forwarding method and device, electronic equipment and readable storage medium

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