[go: up one dir, main page]

CN111211936A - A data processing method and device based on network status - Google Patents

A data processing method and device based on network status Download PDF

Info

Publication number
CN111211936A
CN111211936A CN201911381026.4A CN201911381026A CN111211936A CN 111211936 A CN111211936 A CN 111211936A CN 201911381026 A CN201911381026 A CN 201911381026A CN 111211936 A CN111211936 A CN 111211936A
Authority
CN
China
Prior art keywords
network
determining
client
packet
delay
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.)
Granted
Application number
CN201911381026.4A
Other languages
Chinese (zh)
Other versions
CN111211936B (en
Inventor
吕亚亚
李云鹏
谢文龙
王艳辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 CN201911381026.4A priority Critical patent/CN111211936B/en
Publication of CN111211936A publication Critical patent/CN111211936A/en
Application granted granted Critical
Publication of CN111211936B publication Critical patent/CN111211936B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/0852Delays
    • 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/0876Network utilisation, e.g. volume of load or congestion level

Landscapes

  • Engineering & Computer Science (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种基于网络状态的数据处理方法和装置,所述方法包括:接收客户端发送的多个数据包;其中,每个数据包对应一数据包组;确定每个数据包对应的传输属性信息;采用所述传输属性信息,确定针对相邻的数据包组的组间延迟;根据所述组间延迟,确定所述客户端和所述服务端之间的网络状态。通过本发明实施例,实现了对网络状态的预测,能够快速监测网络状态,进而能够提升网络质量。

Figure 201911381026

Embodiments of the present invention provide a network state-based data processing method and device. The method includes: receiving multiple data packets sent by a client; wherein each data packet corresponds to a data packet group; and determining each data packet Corresponding transmission attribute information; using the transmission attribute information to determine the inter-group delay for adjacent data packet groups; and determining the network state between the client and the server according to the inter-group delay. Through the embodiments of the present invention, the prediction of the network state is realized, the network state can be quickly monitored, and the network quality can be improved.

Figure 201911381026

Description

Data processing method and device based on network state
Technical Field
The present invention relates to the field of network technologies, and in particular, to a data processing method and apparatus based on a network status.
Background
In the process of network transmission, a situation of network instability often occurs, and especially in a mobile network, a large difference in network delay and quality may occur due to different environments, operators and the like.
In the prior art, the actual bandwidth of the network can be counted in real time and compared with the bandwidth of the terminal, whether the current network state is normal or overloaded is judged, and then adjustment is made, but the method is not sensitive enough in response and is difficult to adapt to complex network changes.
Disclosure of Invention
In view of the above, the present invention is proposed to provide a data processing method and apparatus based on network status, which overcomes or at least partially solves the above problems, comprising:
a data processing method based on network state is applied to a server side, and the method comprises the following steps:
receiving a plurality of data packets sent by a client; wherein each data packet corresponds to a data packet group;
determining transmission attribute information corresponding to each data packet;
determining an inter-group delay for adjacent packet groups using the transmission attribute information;
and determining the network state between the client and the server according to the inter-group delay.
Optionally, the transmission attribute information includes a sending time and a receiving time, and the determining an inter-group delay for adjacent packet groups using the transmission attribute information includes:
determining the minimum sending time and the maximum receiving time for the data packets corresponding to the same data packet group;
calculating a first time difference value for the minimum transmission time and a second time difference value for the maximum reception time for adjacent packet groups;
determining an inter-group delay for adjacent groups of packets using the first time difference value and the second time difference value.
Optionally, the step of determining a network status between the client and the server according to the inter-group delay includes:
averaging all the interclass delays within a preset time interval range to obtain an average delay within the preset time interval range;
and determining the network state between the client and the server according to the average delay.
Optionally, the step of determining a network status between the client and the server according to the average delay includes:
if the average delay is greater than the preset delay, determining that the network state between the client and the server is a network overload state;
if the average delay is smaller than the preset delay and larger than 0, determining that the network state between the client and the server is a normal use state;
and if the average delay is less than 0, determining that the network state between the client and the server is a bandwidth surplus state.
Optionally, the method further comprises:
sending a first message to the client to inform of network overload in the network overload state;
and sending a second message to the client to inform of the bandwidth surplus in the bandwidth surplus state.
Optionally, each data packet has a first field for recording the transmission time and a second field for recording the packet group identification.
Optionally, the number of packets corresponding to each packet group is the same.
A data processing device based on network state is applied to a server side, and the device comprises:
the data packet receiving module is used for receiving a plurality of data packets sent by the client; wherein each data packet corresponds to a data packet group;
a transmission attribute information determining module, configured to determine transmission attribute information corresponding to each data packet;
an inter-group delay determining module for determining an inter-group delay for an adjacent packet group using the transmission attribute information;
and the network state determining module is used for determining the network state between the client and the server according to the intergroup delay.
An electronic device comprising a processor, a memory and a computer program stored on the memory and being executable on the processor, the computer program, when executed by the processor, implementing the steps of the network state based data processing method as described above.
A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the network status based data processing method as described above.
The embodiment of the invention has the following advantages:
in the embodiment of the invention, by receiving a plurality of data packets sent by a client, wherein each data packet corresponds to a data packet group, determining the transmission attribute information corresponding to each data packet, determining the inter-group delay aiming at the adjacent data packet groups by adopting the transmission attribute information, and then determining the network state between the client and a server according to the inter-group delay, the network state can be predicted, the network state can be rapidly monitored, and the network quality can be improved.
Drawings
In order to more clearly illustrate the technical solution of the present invention, the drawings needed to be used in the description of the present invention will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
Fig. 1 is a schematic networking diagram of a video network according to an embodiment of the present invention;
fig. 2 is a schematic hardware structure diagram of a node server according to an embodiment of the present invention;
fig. 3 is a schematic hardware structure diagram of an access switch according to an embodiment of the present invention;
fig. 4 is a schematic hardware structure diagram of an ethernet protocol conversion gateway according to an embodiment of the present invention;
FIG. 5 is a flowchart illustrating steps of a method for processing data based on network status according to an embodiment of the present invention;
FIG. 6 is a flowchart illustrating steps of another method for processing data based on network status according to an embodiment of the present invention;
FIG. 7 is a diagram illustrating an example of data processing according to an embodiment of the present invention;
fig. 8 is a block diagram of a data processing apparatus based on a network status according to an embodiment of 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. It is to be understood that the embodiments described are only a few embodiments of the present invention, and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present invention.
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 (Servertechnology)
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. 1, 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.
1. 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: server, exchanger (including Ethernet protocol conversion gateway), terminal (including various set-top boxes, code board, memory, 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 server, access exchanger (including Ethernet protocol conversion gateway), terminal (including various set-top boxes, coding board, memory, etc.).
The specific hardware structure of each access network device is as follows:
a node server:
as shown in fig. 2, 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. 3, the network interface module mainly includes a network interface module (a downlink network interface module 301 and an uplink network interface module 302), a switching engine module 303 and a CPU module 304;
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. 4, 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 the Label of MPLS (Multi-Protocol Label Switch), and assuming that there are two connections between the device a and the device B, there are 2 labels for the packet from the device a to the device B, and 2 labels for the packet from the device B to the device a. The label is classified into an incoming label and an outgoing label, and assuming that the label (incoming label) of the packet entering the device a is 0x0000, the label (outgoing label) of the packet leaving the device a may become 0x 0001. The network access process of the metro network is a network access process under centralized control, that is, address allocation and label allocation of the metro network are both dominated by the metro server, and the node switch and the node server are both passively executed, which is different from label allocation of MPLS, and label allocation of MPLS is a result of mutual negotiation between the switch and the server.
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.
Referring to fig. 5, a flowchart illustrating steps of a data processing method based on a network status according to an embodiment of the present invention is shown, where the method may be applied to a server.
The server may be a server in the video network, such as a node server in the video network, or may be a server in the internet, where the server may communicate with a client, and the client may be a client in the internet or a client in the video network.
Moreover, the terminal device where the client is located may have multiple network adapters, the multiple network adapters may perform aggregation, and the client may employ the multiple network adapters to establish multiple communication links with the server.
Specifically, the method can comprise the following steps:
step 501, receiving a plurality of data packets sent by a client; wherein each data packet corresponds to a data packet group;
in practical application, a plurality of data packets to be sent to a server can be divided into one data packet group by applying a data packet group architecture at a client, and the number of the data packets corresponding to each data packet group is the same and can be customized.
Specifically, each packet may have a first field sendtime for recording the sending time and a second field groupno for recording a packet group identifier, and packet group identifiers included in the second fields of packets belonging to the same packet group are the same to represent that the packets belong to the same packet group.
In the process of sending the data packets, the client may count the number of the data packets sent by using the uniform data packet group identifier, if the number is greater than the preset number, the data packet group identifier may be updated, if the number is greater than the preset number, the data packet group identifier may be added by 1, and then the updated data packet group identifier may be used for sending, and if the number is not greater than the preset number, the data packet group identifier of the latest sent data packet may be continuously used.
Step 502, determining transmission attribute information corresponding to each data packet;
after receiving a plurality of data packets sent by the client, each data packet may be analyzed, and transmission attribute data corresponding to each data packet, such as receiving time, sending time, and the like, may be extracted therefrom.
Specifically, an object may be repackaged, and the object may contain transmission attribute information such as sending time, receiving time, packet group identifier, and the like, and may be further stored in an array.
Step 503, using the transmission attribute information, determining an inter-group delay for adjacent packet groups;
because the packet group identifiers are generated in sequence, that is, the packet groups have a sequence, after the transmission attribute information is obtained, the transmission attribute information stored in the array can be used to determine the inter-group delay of the adjacent packet groups, where the delay is the delay in the packet transmission process.
Step 504, determining the network state between the client and the server according to the inter-group delay.
After obtaining the inter-group delay, the inter-group delay can be adopted to analyze the network state so as to determine the network state between the client and the server, and the network state of each link can be determined in the presence of a plurality of aggregated network adapters, namely, in a multi-link aggregation scene, so that the packet sending rate can be adjusted in real time, the network fluency can be ensured, and the bandwidth utilization rate can be improved.
In an embodiment of the present invention, step 504 may include the following sub-steps:
substep 11, averaging all interclass delays within a preset time interval range to obtain an average delay within the preset time interval range;
in a specific implementation, the server may count the delay according to a time interval, and if the time interval may be 450ms, the time interval may be used to determine a preset time interval, so as to obtain all inter-group delays within a preset time interval range, and average after adding all the inter-group delays, to obtain an average delay within the preset time interval range.
And a substep 12 of determining a network state between the client and the server based on the average delay.
After the average delay is obtained, the average delay may be used to determine a network status between the client and the server within a preset time interval.
In an embodiment of the present invention, the substep 12 may comprise the substeps of:
substep 121, if the average delay is greater than a preset delay, determining that a network state between the client and the server is a network overload state;
in a specific implementation, a preset delay may be set, and if the average delay is greater than the preset delay, it is determined that the network state between the client and the server is a network overload state, that is, the network overload is represented.
Substep 122, if the average delay is less than a preset delay and greater than 0, determining that the network state between the client and the server is a normal use state;
if the average delay is smaller than the preset delay and larger than 0, the network state between the client and the server can be determined to be a normal use state, that is, the network can be normally used.
Substep 123, if the average delay is less than 0, determining that the network status between the client and the server is a bandwidth surplus status.
Since the inter-group delay is obtained by subtracting two values (as will be described in detail below), the average delay may be smaller than 0, and if the average delay is smaller than 0, it may be determined that the network status between the client and the server is a bandwidth excess status, that is, the network bandwidth is not used in saturation.
In an embodiment of the present invention, the method may further include the steps of:
sending a first message to the client to inform of network overload in the network overload state; and sending a second message to the client to inform of the bandwidth surplus in the bandwidth surplus state.
In a network overload state, the server side can generate a first message and send the first message to the client side, so that the client side can be informed that the current network is overloaded, and the client side can be adjusted by adopting modes of reducing the used bandwidth, reducing the data sending speed and the like.
In the bandwidth surplus state, the server may generate a second message and send the second message to the client, so that the client may be notified that the bandwidth surplus exists in the current network, and the client may adjust the bandwidth surplus state by increasing the used bandwidth and increasing the data sending speed.
In the embodiment of the invention, by receiving a plurality of data packets sent by a client, wherein each data packet corresponds to a data packet group, determining the transmission attribute information corresponding to each data packet, determining the inter-group delay aiming at the adjacent data packet groups by adopting the transmission attribute information, and then determining the network state between the client and a server according to the inter-group delay, the network state can be predicted, the network state can be rapidly monitored, and the network quality can be improved.
Referring to fig. 6, a flowchart illustrating steps of another data processing method based on a network status according to an embodiment of the present invention is shown, and applied to a server, the method may specifically include the following steps:
step 601, receiving a plurality of data packets sent by a client; wherein each data packet corresponds to a data packet group;
step 602, determining transmission attribute information corresponding to each data packet; wherein the transmission attribute information includes a transmission time and a reception time;
step 603, determining the minimum sending time and the maximum receiving time for the data packets corresponding to the same data packet group;
since there may be a plurality of packets in the same packet group, each having a transmission time and a reception time, the minimum transmission time minsendtime may be determined from the plurality of transmission times, and the maximum reception time maxarriivetime may be determined from the plurality of reception times.
Step 604, calculating a first time difference value for the minimum transmission time and a second time difference value for the maximum reception time for adjacent data packet groups;
after the time is determined, a difference of minimum transmission times in adjacent packets may be calculated as a first time difference value delta _ min _ sendtime, and a difference of maximum reception times in adjacent packet groups may be calculated as a second time difference value delta _ max _ arive.
Step 605, determining an inter-group delay for the adjacent packet groups by using the first time difference value and the second time difference value;
after obtaining the first time difference value and the second time difference value, subtracting the second time difference value from the first time difference value, and taking the subtraction result as the inter-group delay for the adjacent data packet groups, i.e. subtracting delta _ max _ arive from delta _ min _ sendtime to obtain a difference value d (i).
If d (i) is less than 0, it represents that there is no network delay between the adjacent data packet groups and the sending speed of the client can be increased, if d (i) is equal to 0, it represents that the network condition between the adjacent data packet groups is normal, if d (i) is greater than 0, it represents that there is network delay between the adjacent data packet groups.
Step 606, according to the inter-group delay, determining the network state between the client and the server.
In the embodiment of the invention, by receiving a plurality of data packets sent by a client, wherein each data packet corresponds to a data packet group, determining the transmission attribute information corresponding to each data packet, determining the inter-group delay aiming at the adjacent data packet groups by adopting the transmission attribute information, and then determining the network state between the client and a server according to the inter-group delay, the network state can be predicted, the network state can be rapidly monitored, and the network quality can be improved.
In order to enable those skilled in the art to better understand the above steps, the following description is provided for the embodiment of the present invention with reference to fig. 7, but it should be understood that the embodiment of the present invention is not limited thereto.
1. In the process of sending the data packets, a sending end (namely a client) counts whether the number sendicout of the sent data packets is greater than n (namely a preset number, n is an integer greater than 1), if the number sendicout is less than or equal to n, the data packets are sent by using the sequence number of the last packet group, if the number sendicout is greater than n, a new packet group sequence number (namely a data packet identifier) is obtained, the data packets are sent by using the new packet group sequence number, and the sendicout is reset to be 0, namely counting is restarted;
2. after receiving the data packet, the receiving end (namely the server end) analyzes the packet, analyzes the packet sequence number, the sending time and the receiving time, then repackages the data packet as an object and puts the data packet into an array;
3. the receiving end traverses the array every 450ms, further calculates the average delay by adopting the data in the array, and compares the average delay with a threshold value gama (namely the preset delay);
4. when the signal is larger than the gama, the sending end is informed of network overload, when the signal is smaller than the gama, the receiving end is informed of network good, the sending speed can be improved, and when the signal is equal to the gama, the sending end is informed of keeping the current state.
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. 8, a block diagram of a data processing apparatus based on a network status according to an embodiment of the present invention is shown, and is applied to a server, where the data processing apparatus specifically includes the following modules:
a data packet receiving module 801, configured to receive multiple data packets sent by a client; wherein each data packet corresponds to a data packet group;
a transmission attribute information determining module 802, configured to determine transmission attribute information corresponding to each data packet;
an inter-group delay determining module 803, configured to determine an inter-group delay for an adjacent packet group using the transmission attribute information;
a network status determining module 804, configured to determine a network status between the client and the server according to the inter-group delay.
In an embodiment of the present invention, the transmission attribute information includes a sending time and a receiving time, and the inter-group delay determining module 803 includes:
the time determining submodule is used for determining the minimum sending time and the maximum receiving time for the data packets corresponding to the same data packet group;
a time difference value determination submodule for calculating, for adjacent groups of data packets, a first time difference value for the minimum transmission time and a second time difference value for the maximum reception time;
a difference determination delay submodule configured to determine an inter-group delay for adjacent packet groups using the first time difference and the second time difference.
In an embodiment of the present invention, the network status determining module 804 includes:
the average delay obtaining submodule is used for averaging all the intergroup delays within a preset time interval range to obtain the average delay within the preset time interval range;
and the delay determination state submodule is used for determining the network state between the client and the server according to the average delay.
In an embodiment of the present invention, the delay determination status sub-module includes:
a network overload state determining unit, configured to determine that a network state between the client and the server is a network overload state if the average delay is greater than a preset delay;
a normal use state determining unit, configured to determine that a network state between the client and the server is a normal use state if the average delay is less than a preset delay and greater than 0;
and the bandwidth surplus state determining unit is used for determining that the network state between the client and the server is the bandwidth surplus state if the average delay is less than 0.
In an embodiment of the present invention, the apparatus further includes:
the first message sending module is used for sending a first message to the client under the network overload state so as to inform the network overload;
and the second message sending module is used for sending a second message to the client side in the bandwidth surplus state so as to inform the bandwidth surplus.
In one embodiment of the invention, each packet has a first field for recording the time of transmission and a second field for recording the packet group identification.
In an embodiment of the present invention, the number of packets corresponding to each packet group is the same.
An embodiment of the present invention also provides an electronic device, which may include a processor, a memory, and a computer program stored in the memory and capable of running on the processor, wherein when the computer program is executed by the processor, the steps of the data processing method based on the network status are implemented.
An embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, which, when executed by a processor, implements the steps of the above data processing method based on network status.
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.
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 processing method and apparatus based on network status 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 processing method based on network state is applied to a server side, and the method comprises the following steps:
receiving a plurality of data packets sent by a client; wherein each data packet corresponds to a data packet group;
determining transmission attribute information corresponding to each data packet;
determining an inter-group delay for adjacent packet groups using the transmission attribute information;
and determining the network state between the client and the server according to the inter-group delay.
2. The method of claim 1, wherein the transmission attribute information includes a transmission time and a reception time, and wherein the step of determining an inter-group delay for an adjacent packet group using the transmission attribute information includes:
determining the minimum sending time and the maximum receiving time for the data packets corresponding to the same data packet group;
calculating a first time difference value for the minimum transmission time and a second time difference value for the maximum reception time for adjacent packet groups;
determining an inter-group delay for adjacent groups of packets using the first time difference value and the second time difference value.
3. The method according to claim 1 or 2, wherein the step of determining the network status between the client and the server according to the inter-group delay comprises:
averaging all the interclass delays within a preset time interval range to obtain an average delay within the preset time interval range;
and determining the network state between the client and the server according to the average delay.
4. The method of claim 3, wherein the step of determining the network status between the client and the server according to the average delay comprises:
if the average delay is greater than the preset delay, determining that the network state between the client and the server is a network overload state;
if the average delay is smaller than the preset delay and larger than 0, determining that the network state between the client and the server is a normal use state;
and if the average delay is less than 0, determining that the network state between the client and the server is a bandwidth surplus state.
5. The method of claim 4, further comprising:
sending a first message to the client to inform of network overload in the network overload state;
and sending a second message to the client to inform of the bandwidth surplus in the bandwidth surplus state.
6. The method of claim 1, wherein each packet has a first field for recording a transmission time and a second field for recording a packet group identification.
7. The method of claim 1, wherein the number of packets corresponding to each packet group is the same.
8. A data processing device based on network status is applied to a server side, and the device comprises:
the data packet receiving module is used for receiving a plurality of data packets sent by the client; wherein each data packet corresponds to a data packet group;
a transmission attribute information determining module, configured to determine transmission attribute information corresponding to each data packet;
an inter-group delay determining module for determining an inter-group delay for an adjacent packet group using the transmission attribute information;
and the network state determining module is used for determining the network state between the client and the server according to the intergroup delay.
9. An electronic device, comprising a processor, a memory and a computer program stored on the memory and capable of running on the processor, the computer program, when executed by the processor, implementing the steps of the network state based data processing method according to any one of claims 1 to 7.
10. A computer-readable storage medium, on which a computer program is stored which, when being executed by a processor, carries out the steps of the network state based data processing method according to any one of claims 1 to 7.
CN201911381026.4A 2019-12-27 2019-12-27 Data processing method and device based on network state Active CN111211936B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911381026.4A CN111211936B (en) 2019-12-27 2019-12-27 Data processing method and device based on network state

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911381026.4A CN111211936B (en) 2019-12-27 2019-12-27 Data processing method and device based on network state

Publications (2)

Publication Number Publication Date
CN111211936A true CN111211936A (en) 2020-05-29
CN111211936B CN111211936B (en) 2022-06-21

Family

ID=70789471

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911381026.4A Active CN111211936B (en) 2019-12-27 2019-12-27 Data processing method and device based on network state

Country Status (1)

Country Link
CN (1) CN111211936B (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112994934A (en) * 2021-02-07 2021-06-18 杭州迪普科技股份有限公司 Data interaction method, device and system
WO2022160143A1 (en) * 2021-01-27 2022-08-04 华为技术有限公司 Bandwidth adjustment method, apparatus and system
CN115174429A (en) * 2022-05-25 2022-10-11 深信服科技股份有限公司 Network bandwidth detection method, device, system, equipment and storage medium

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101022369A (en) * 2007-03-23 2007-08-22 中山大学 End-to-end quening time delay measuring method
US20090052431A1 (en) * 2007-08-17 2009-02-26 Nokia Siemens Networks Oy Method and device for packet based clock recovery
WO2017000719A1 (en) * 2015-06-30 2017-01-05 中兴通讯股份有限公司 Congestion control method and device based on queue delay
CN106330757A (en) * 2015-06-30 2017-01-11 腾讯科技(深圳)有限公司 Traffic control method and apparatus
CN107734537A (en) * 2016-08-10 2018-02-23 腾讯科技(深圳)有限公司 Measuring method, transmitting terminal and the receiving terminal of network performance parameter
CN109587073A (en) * 2019-01-07 2019-04-05 北京三体云联科技有限公司 Method for controlling network congestion, device and terminal device
CN110290552A (en) * 2018-03-19 2019-09-27 腾讯科技(深圳)有限公司 Cache the measurement method and device, storage medium, electronic device of depth

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101022369A (en) * 2007-03-23 2007-08-22 中山大学 End-to-end quening time delay measuring method
US20090052431A1 (en) * 2007-08-17 2009-02-26 Nokia Siemens Networks Oy Method and device for packet based clock recovery
WO2017000719A1 (en) * 2015-06-30 2017-01-05 中兴通讯股份有限公司 Congestion control method and device based on queue delay
CN106330757A (en) * 2015-06-30 2017-01-11 腾讯科技(深圳)有限公司 Traffic control method and apparatus
CN107734537A (en) * 2016-08-10 2018-02-23 腾讯科技(深圳)有限公司 Measuring method, transmitting terminal and the receiving terminal of network performance parameter
CN110290552A (en) * 2018-03-19 2019-09-27 腾讯科技(深圳)有限公司 Cache the measurement method and device, storage medium, electronic device of depth
CN109587073A (en) * 2019-01-07 2019-04-05 北京三体云联科技有限公司 Method for controlling network congestion, device and terminal device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022160143A1 (en) * 2021-01-27 2022-08-04 华为技术有限公司 Bandwidth adjustment method, apparatus and system
CN112994934A (en) * 2021-02-07 2021-06-18 杭州迪普科技股份有限公司 Data interaction method, device and system
CN112994934B (en) * 2021-02-07 2023-02-10 杭州迪普科技股份有限公司 Data interaction method, device and system
CN115174429A (en) * 2022-05-25 2022-10-11 深信服科技股份有限公司 Network bandwidth detection method, device, system, equipment and storage medium
CN115174429B (en) * 2022-05-25 2024-04-09 深信服科技股份有限公司 Network bandwidth detection method, device, system, equipment and storage medium

Also Published As

Publication number Publication date
CN111211936B (en) 2022-06-21

Similar Documents

Publication Publication Date Title
CN111193788A (en) Audio and video stream load balancing method and device
CN108965040B (en) Service monitoring method and device for video network
CN109617956B (en) Data processing method and device
CN111224889A (en) A method and device for data transmission
CN109889779B (en) Message out-of-order processing method and device
CN108965226B (en) Data acquisition method and device based on video network
CN111211936A (en) A data processing method and device based on network status
CN110650171A (en) Video networking service scheduling system and method
CN111064988A (en) Log saving method and device
CN111131911A (en) Multicast method and device
CN110446058B (en) Video acquisition method, system, device and computer readable storage medium
CN110099307B (en) Node connection method, Internet of Things and computer-readable storage medium
CN110691213B (en) Alarm method and device
CN109586851B (en) Data transmission method and device based on video network
CN110798645B (en) Alarm method and system based on video network
CN111131781A (en) Method and device for acquiring monitoring video data and readable storage medium
CN111510341A (en) Network testing method and device for video network
CN110677315A (en) Method and system for monitoring state
CN110267110B (en) Concurrent on-demand processing method and system based on video network
CN110839141A (en) Resource acquisition method and device
CN110213533B (en) Method and device for acquiring video stream monitored by video network
CN110557687B (en) Multicast data packet processing method, device and storage medium
CN110445701B (en) A business object processing method, device and storage medium
CN109714641B (en) Data processing method and device based on video network
CN110324286B (en) Conference control system and method

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
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 33rd Floor, No.1 Huasheng Road, Yuzhong District, Chongqing 400013

Patentee after: VISIONVERA INFORMATION TECHNOLOGY Co.,Ltd.

Country or region after: China

Address before: 100000 Beijing Dongcheng District Qinglong Hutong 1 Song Hua Building A1103-1113

Patentee before: VISIONVERA INFORMATION TECHNOLOGY Co.,Ltd.

Country or region before: China