CN111181873B - Data transmission method, data transmission device, storage medium and electronic equipment - Google Patents

Data transmission method, data transmission device, storage medium and electronic equipment Download PDF

Info

Publication number
CN111181873B
CN111181873B CN201911418773.0A CN201911418773A CN111181873B CN 111181873 B CN111181873 B CN 111181873B CN 201911418773 A CN201911418773 A CN 201911418773A CN 111181873 B CN111181873 B CN 111181873B
Authority
CN
China
Prior art keywords
sent
data
data packet
queue
forwarding
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911418773.0A
Other languages
Chinese (zh)
Other versions
CN111181873A (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.)
Xinao Shuneng Technology Co Ltd
Original Assignee
Xinao Shuneng 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 Xinao Shuneng Technology Co Ltd filed Critical Xinao Shuneng Technology Co Ltd
Priority to CN201911418773.0A priority Critical patent/CN111181873B/en
Publication of CN111181873A publication Critical patent/CN111181873A/en
Application granted granted Critical
Publication of CN111181873B publication Critical patent/CN111181873B/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
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/625Queue scheduling characterised by scheduling criteria for service slots or service orders
    • H04L47/6275Queue scheduling characterised by scheduling criteria for service slots or service orders based on priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/56Queue scheduling implementing delay-aware scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6215Individual queue per QOS, rate or priority
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/62Queue scheduling characterised by scheduling criteria
    • H04L47/6285Provisions for avoiding starvation of low priority queues

Landscapes

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

Abstract

The invention is suitable for the technical field of intelligent power grids, and provides a data sending method, a data sending device, a storage medium and electronic equipment, wherein the method comprises the following steps: acquiring a designated priority queue for sorting and sequencing data packets to be sent; checking whether a waiting overtime data packet to be sent exists in a designated priority queue; if the data packet to be sent with overtime waiting exists in the appointed priority queue, determining whether the data packet to be sent with overtime waiting exceeds the forwarding capacity of the current node; if the data packets to be sent which are waited for overtime exceed the forwarding capability of the current node, sequencing the data packets to be sent which are waited for overtime according to a specified sequencing principle and then sequentially sending the data packets to a forwarding queue; and transmitting the data packet to be transmitted in the forwarding queue. The invention effectively solves the problem of effective transmission of data packets which are already congested in the forwarding device.

Description

Data transmission method, data transmission device, storage medium and electronic equipment
Technical Field
The invention belongs to the technical field of intelligent power grid data management, and particularly relates to a data sending method, a data sending device, a storage medium and electronic equipment.
Background
The energy internet takes an intelligent power grid with electricity as a core as a basic carrier network for carrying the operation of the intelligent power grid, and the flow mode of energy is more automatic and diversified. Through intelligent communication technology, the electricity demand can be rapidly and comprehensively accumulated and guided to the most effective production supply; the family user can become an energy producer and sell electricity through modes such as transaction and the like; the energy consumption of the building can also be dynamically adjusted according to the type of activity in which it is used or the real-time electricity prices, all energy information, such as: the generation, supply and consumption can be interconnected through a network, timely feedback is obtained, and scheduling control is carried out according to the use requirement.
In the internet, a queue scheduling algorithm is one of core mechanisms for implementing Quality of Service (QoS) control of a network, and is an important content of network resource management. For congestion, the key is the control and management of resources, i.e. the allocation and usage of network resources such as buffer queues and link bandwidth are managed, so that incoming traffic can share the bandwidth of the outgoing link in a predetermined manner. However, in the current queue scheduling algorithm of the smart grid, effective transmission of data packets that are already congested in forwarding devices cannot be guaranteed.
Disclosure of Invention
Embodiments of the present invention provide a data sending method, an apparatus, a storage medium, and an electronic device, so as to solve the problem of effective transmission of a data packet that is already congested in a forwarding device.
According to a first aspect of the present application, there is provided a data transmission method, including: acquiring a designated priority queue for sorting and sequencing data packets to be sent; checking whether a waiting overtime data packet to be sent exists in a designated priority queue; if the queue with the appointed priority has the data packet to be sent with overtime waiting, determining whether the data packet to be sent with overtime waiting exceeds the forwarding capacity of the current node; if the data packets to be sent which are overtime exceed the forwarding capability of the current node, sequencing the data packets to be sent which are overtime according to a specified sequencing principle and then sequentially sending the data packets to be sent to a forwarding queue; and transmitting the data packet to be transmitted in the forwarding queue.
According to a second aspect of the present application, there is provided a data transmission apparatus comprising: the data acquisition module is configured to acquire a designated priority queue for classifying and sequencing the data packets to be transmitted; the data overtime checking module is configured to check whether a data packet waiting for overtime exists in the specified priority queue; the data forwarding capacity judging module is configured to determine whether the data packet to be sent with overtime waiting exceeds the forwarding capacity of the current node if the data packet to be sent with overtime waiting exists in the appointed priority queue; the first forwarding queue configuration module is configured to sort the data packets to be sent which are overtime according to a specified sorting principle and then send the data packets to be sent to the forwarding queue in sequence if the data packets to be sent which are overtime exceed the forwarding capability of the current node; and the data transmission module is configured to transmit the data packet to be transmitted in the forwarding queue.
Compared with the prior art, the embodiment of the invention has the following beneficial effects: the data method provided by the invention can simultaneously consider the normal transmission and the congestion situation, and the data method can take part in queue scheduling according to the importance degree of the service type distribution and the maximum waiting time set by each queue, preferentially serves high-level service data packets according to the forwarding capability of forwarding equipment, and simultaneously sets a feedback mechanism to consider low-level services, thereby effectively solving the problem of effective transmission of the data packets congested in the forwarding equipment; in addition, the data method provided by the invention has the advantages of simple realization process and low complexity, and can be suitable for various application scenes.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed for the embodiments or the prior art descriptions will be briefly described 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 without creative efforts.
Fig. 1 shows an exemplary application network structure to which some embodiments of the data transmission method or data transmission apparatus of the present application may be applied.
Fig. 2 shows a schematic implementation flow diagram of an embodiment of the data transmission method of the present application.
Fig. 3 is a schematic diagram illustrating an implementation flow of an embodiment of step S201 in the data transmission method according to the embodiment shown in fig. 2.
Fig. 4 is a schematic flow chart illustrating an implementation of an embodiment of step S202 in the data transmission method according to the embodiment shown in fig. 2.
Fig. 5 is a schematic flow chart illustrating an implementation of an embodiment of step S203 in the data transmission method according to the embodiment shown in fig. 2.
Fig. 6 is a schematic flow chart illustrating an implementation of an embodiment of step S204 in the data transmission method according to the embodiment shown in fig. 2.
Fig. 7 is a schematic implementation flow diagram of another embodiment of the data transmission method in the embodiment shown in fig. 2.
Fig. 8 is a schematic implementation flow diagram of another embodiment of the data transmission method according to the embodiment shown in fig. 2.
Fig. 9 is a schematic structural diagram illustrating an embodiment of a data transmission apparatus provided in the present application.
Fig. 10 is a schematic structural diagram of an embodiment of a data acquisition module of the data transmission apparatus in the embodiment shown in fig. 9.
Fig. 11 is a schematic structural diagram of an embodiment of a data timeout checking module of the data transmission apparatus in the embodiment shown in fig. 9.
Fig. 12 is a schematic structural diagram illustrating an embodiment of a data forwarding capability determining module of the data transmitting apparatus in the embodiment illustrated in fig. 9.
Fig. 13 is a schematic structural diagram illustrating an embodiment of the first forwarding queue configuration module of the data sending apparatus in the embodiment illustrated in fig. 9.
Fig. 14 is a schematic structural diagram illustrating another embodiment of the data transmission apparatus provided in the present application.
Fig. 15 is a schematic structural diagram illustrating a data transmission apparatus according to still another embodiment of the present application.
Fig. 16 is a schematic structural diagram of a data transmission device according to still another embodiment of the present application.
Fig. 17 shows a schematic diagram of an electronic device provided in an embodiment of the present application.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present invention with unnecessary detail.
In order to explain the technical means of the present invention, the following description will be given by way of specific examples.
Fig. 1 shows an exemplary application network architecture a100 to which some embodiments of the data transmission method or data transmission apparatus of the present application may be applied.
As shown in fig. 1, the network architecture a100 may include nodes a101, a102, a103, a medium for network a104 to provide a communication link between node a101 and node a102, a medium for network a105 to provide a communication link between node a101 and node a103, and the networks a104, a105 may include various connection types, such as wired, wireless communication links, or fiber optic cables, etc.
The nodes a101, a102, and a103 may be hardware or software. When the nodes a101, a102, a103 are hardware, they may be active electronic devices including devices for connecting to a network, and may be capable of sending, receiving or forwarding information through a communication channel. For example, nodes a101, a102, a103 may be any one of the following physical network nodes: data circuit termination equipment (DCE), data Terminal Equipment (DTE), modems, hubs, bridges, switches, intelligent terminals, printers, hosts, routers, workstations or servers, schedulers, and the like. When the nodes a101, a102, a103 are software, they may be installed in the electronic devices listed above, may be implemented as a plurality of software or software modules (for example, to provide distributed services), or may be implemented as a single software or software module. The embodiment of the present application does not set any limit to the specific type of the electronic device.
In some embodiments, the network architecture a100 is used to implement data transmission. For example, data is sent by node a101 to node a102 over network a104 and then distributed or forwarded by node a101 to node a103.
It should be noted that the data transmission method provided in the embodiment of the present application is generally executed by the node a101, and accordingly, the data transmission apparatus is generally disposed in the node a 101.
It should be understood that the number of nodes, networks in fig. 1 is merely illustrative. There may be any number of nodes and networks, as desired for implementation.
Example 1
Fig. 2 is a flow 200 of implementing an embodiment of a data transmission method according to the present application, which can be applied to an electronic device (for example, nodes a101, a102, and a103 shown in fig. 1).
Referring to figure 2 of the drawings, in which,
as shown in fig. 2, the flow 200 of the data transmission method includes the following steps:
s201, acquiring a designated priority queue for sorting and ordering the data packets to be transmitted.
In step S201, the data packet to be sent may be locally generated data, or data received from the outside, or data obtained by combining the externally received data and local data, and the format and the source of the data are not limited in this application.
For example, in an exemplary embodiment, the designated priority queue may include four queues to be forwarded with different importance levels, F1 represents a queue with the highest importance level, and F2, F3, and F4 represent queues with sequentially decreasing importance levels. The data packets to be sent are arranged into queues in a pre-grading manner, so that the data packets to be sent are sent with a reasonable decision when data congestion occurs, and the data sending efficiency is ensured.
S202, checking whether a data packet waiting for overtime exists in the appointed priority queue.
In step S202, for the specified priority queue listed above, although there are a plurality of queues with different importance levels, the arrival times of the data to be sent are different, so that the waiting time of the data packet to be sent in the queue can be counted to provide a basis or reference for the decision of sending the data packet to be sent in the subsequent step.
S203, if the data packet to be sent is in the queue with the appointed priority and waits overtime, whether the data packet to be sent exceeds the forwarding capacity of the current node or not is confirmed.
In step S203, when there is a data packet to be sent waiting for timeout, a data sending decision adjustment needs to be made, and the data packet to be sent waiting for timeout is sent preferentially. At this time, it is also necessary to determine whether a previously overtime to-be-sent data packet exceeds the forwarding capability of the current node, a decision to send the overtime to-be-sent data packet is made if the forwarding capability can be satisfied, and a decision to send the overtime to-be-sent data packet is made if the forwarding capability cannot be satisfied.
And S204, if the data packets to be sent which are overtime exceed the forwarding capability of the current node, sequencing the data packets to be sent which are overtime according to a specified sequencing principle, and then sequentially sending the data packets to be sent to a forwarding queue.
In step S204, since the data packets to be sent exceed the forwarding capability of the current node, all the data packets to be sent that are overtime cannot be sent out in a one-time sending queue, and a decision needs to be made on how to send the data packets to be sent that are overtime, where the sorting principle is a key reference factor for the decision. In an exemplary embodiment, the ranking principle may include, but is not limited to, the above-mentioned two principles of importance level and latency. After the overtime data packets to be sent are sequenced according to the sequencing principle, the data packets to be sent arranged in front of the sequence are sent to a forwarding queue for wired sending, so that the data sending efficiency is ensured.
S205, sending the data packet to be sent in the forwarding queue.
The data transmission method provided by this embodiment sets a priority queue for the importance degree assigned to the service type of the data packet to be transmitted, and determines whether the data packet to be transmitted is overtime by combining the maximum waiting time set by each queue to participate in queue scheduling together, and preferentially serves the high-level service data packet according to the forwarding capability of the forwarding device, thereby preventing the problem of data congestion.
Fig. 3 is a flow 300 for implementing one embodiment of step S201 in the data transmission method of the embodiment shown in fig. 2.
Referring to fig. 3, in the step S201, acquiring the assigned priority queue for sorting and ordering the data packets to be transmitted includes the following steps:
s301, acquiring a data packet to be sent reaching the current node.
In step S301, the manner in which the data packet to be sent reaches the current node includes sending the data packet to the current node through the network and sending the data packet to the current node through the physical communication link. Typically, the arrival time is recorded when a packet to be sent arrives at the current node.
S302, identifying a priority level of the data packet to be sent.
In step S302, the priority level of the data packet to be sent may be the importance level listed in the embodiment described in fig. 2, specifically, the data packet to be sent may include different service data, and the importance level of each service data type is generally different, so that an importance level rule may be preset, and then the data packet to be identified is identified to determine the importance level of the data packet to be sent, that is, the priority level in this step.
In an exemplary embodiment, the step S302 may include the following steps: determining the index weight of an importance evaluation index through the consistency condition of the analytic hierarchy process, wherein the importance evaluation index comprises at least one of instantaneity, effectiveness and safety; determining local weight of each service type in the data packet to be sent through an evaluation process of an analytic hierarchy process, wherein the service type comprises at least one of relay protection service, stability control service, telemechanical service, scheduling service and office service; and weighting the local weight of each service type and the evaluation index weight to obtain a global weight, and determining the priority level of the data packet to be sent according to the global weight.
Illustratively, the importance level of the business data may be determined by evaluating the business type of the communication data through Analytic Hierarchy Process (AHP).
For example, in the intelligent power grid management, 5 types of power communication services are included: the system comprises a relay protection service (S1), a stable control service (S2), a telecontrol service (S3), a scheduling service (S4) and an office service (S5). Wherein, setting I represents: the importance evaluation indexes comprise real-time performance (I1), effectiveness (I2) and safety (I3), and the importance degree relation of the indexes is as follows: i1: I2= 3: 1, I2: I3= 3: 1, I3: I1= 1: 5. And (4) according with the consistency condition of the AHP method by inspection, deciding that no internal contradiction is generated, obtaining the maximum characteristic vector of the judgment matrix as the index weight, and keeping the index weight vector w of 1-bit decimal number as the {0.6,0.3,0.1}. Then determining a judgment matrix of 5 types of services under different indexes, continuously determining the local weight of the 5 types of services in each index according to the AHP evaluation process, and then weighting the local weight with the index weight to obtain the global weight. The global weight is the evaluated traffic importance, as shown in table 1 below.
Figure BDA0002351831280000081
TABLE 1
Where K represents the importance of the service.
Based on the above evaluation of the service importance, 4 levels of queues (e.g., the priority level queues) may be set in the execution body executing this step to implement buffering of data packets to be sent with different importance. The following table 2 can be referred to for the classification rule of the data packets to be sent according to the importance.
Figure BDA0002351831280000082
TABLE 2
Where F represents the importance level.
And S303, classifying and caching the data to be sent according to the identified priority levels to obtain a plurality of priority level queues, and sequencing the data to be sent in the priority level queues according to the arrival time.
S304, at least one priority level queue is determined to be a designated priority queue to be sent.
In step S304, it can be known from the description of the priority level queues that the service types of the data packets to be sent in the queues with different priority levels are different, so that it can be set that the data of those service types are buffered. For example, in combination with the example in the above embodiment, four priority level queues of F1, F2, F3, and F4 may be set. It should be understood that the specific implementation may also not be limited to the setting manner of the priority level queue in this embodiment, and the present application does not limit the setting of the priority level queue.
In the embodiment, the data packets to be sent are classified and cached by evaluating the importance levels of the reached data packets to be sent, so that effective identification and screening of data are prominently realized, and a basis is provided for making a priority sending decision subsequently.
Fig. 4 is a flow 400 for implementing one embodiment of step S202 in the data transmission method according to the embodiment shown in fig. 2.
Referring to fig. 4, the step S201 of checking whether there is a data packet waiting for timeout in the queue with assigned priority includes the following steps.
S401, recording the waiting time of the data packet to be sent.
In step S401, the waiting time of the data packet to be sent may be calculated based on the time when the data packet reaches the current data node as a starting point, and certainly, may be calculated based on the time when the data packet to be sent is cached in the priority queue as the starting point, or may be calculated in other calculation manners, which is not limited in this application.
S402, determining whether the waiting time of the data packet to be sent in each priority queue of the designated priority queue is greater than the maximum waiting time specified by the priority queue.
In step S402, the maximum waiting time in this embodiment is the preset maximum time of the data packet to be sent in the priority queue, and the specific value of the maximum waiting time may be set according to specific situations, and the specific value of the maximum waiting time is not limited in this application.
S403, if the waiting time of the data packet to be sent is greater than the maximum waiting time specified by the priority queue, determining that the data packet to be sent is waiting overtime.
In step S403, when it is detected that the waiting time of the data packet is greater than the maximum waiting time, the waiting time is determined to be timeout, so that there may be more than one data packet to be sent that is timed out in each priority queue, and there may be a plurality of data packets to be sent.
S404, if the waiting time of the data packet to be sent is not greater than the maximum waiting time specified by the priority queue, determining that the data packet to be sent is not waiting for time out.
In step S404, contrary to step S403, a condition that the data packet to be sent is not overtime is defined, and the data packet to be sent that is not overtime can be sent according to a specific condition, which is not limited in the present application. For example, the transmission may be on a first-in-first-out basis.
In some embodiments, the maximum wait time of each of the assigned priority queues is generally different, and generally, the maximum wait time of each of the assigned priority queues is incremented according to the priority. For example, in the description of the above example, the maximum waiting time of the priority queue with the importance level F1 is greater than the maximum waiting time of the priority queue with the importance level F2, and so on, the maximum waiting time of the priority queue with the importance level F2 is greater than the maximum waiting time of the priority queue with the importance level F3, and the maximum waiting time of the priority queue with the importance level F3 is greater than the maximum waiting time of the priority queue with the importance level F4.
In the embodiment, the waiting time of the data packet to be sent is set, so that the evaluation of the importance degree or the priority level of the data packet to be sent on the waiting time is prominently realized, and the effectiveness of the sending decision of the data packet to be sent is improved.
Fig. 5 is a flowchart 500 for implementing one embodiment of step S203 in the data transmission method of the embodiment shown in fig. 2.
Referring to fig. 5, the step S203 of confirming whether the data packet waiting for timeout to be sent exceeds the forwarding capability of the current node includes the following steps.
S501, acquiring the number of data packets to be sent waiting for overtime;
s502, judging whether the number of the data packets to be sent which are overtime is larger than the maximum data packet sending capacity of the current node sending queue or not;
s503, if the number of the data packets to be sent which are waited for overtime is larger than the maximum data packet sending capacity of the current node sending queue, judging that the forwarding capacity of the current node is exceeded;
s504, if the number of the data packets to be sent which are waited for overtime is not larger than the maximum data packet sending capacity of the current node sending queue, the forwarding capacity of the current node is not exceeded.
In this embodiment, considering that the number of the data packets to be sent waiting for timeout may not match the sending capability of the node sending queue of the current node, the number of the data packets to be sent waiting for timeout is determined in advance through step S501, and then the number is compared with the maximum sending amount of the node sending queue of the current node, so as to determine whether the data packets to be sent timeout exceed the forwarding capability of the current node according to steps S503 and S504.
Fig. 6 is a flowchart 600 of implementing one embodiment of step S204 in the data transmission method of the embodiment shown in fig. 2.
Referring to fig. 6, in step S204, the steps of sorting the data packets waiting for timeout and sequentially sending the data packets to be sent to the forwarding queue according to the predetermined sorting rule include the following steps:
s601, acquiring a data packet to be sent waiting for overtime in each priority queue in the designated priority queue;
s602, obtaining a first data packet sequence to be transmitted according to the priority sequence of the priority queue of the data packet to be transmitted;
s603, adjusting the sequence of the data packets to be sent in the first data packet sequence to be sent according to the waiting time of the data packets to be sent, and obtaining a second data packet sequence to be sent;
s604, sequentially sending the data to be sent to a forwarding queue based on the second data packet sequence to be sent.
With reference to the description of the importance level and the waiting time in the above illustrated embodiment, in this embodiment, a data packet to be sent that is out of time is reordered, and then a sending forwarding queue selection is performed on the data packet to be sent according to the reordered sequence, where the reordering is performed based on two principles of the importance level and the waiting time.
Fig. 7 is a flow 700 for implementing another embodiment of the data transmission method according to the embodiment shown in fig. 2.
Referring to fig. 7, after the step of determining whether the data packet to be sent waiting for timeout exceeds the forwarding capability of the current node, the data sending method further includes:
and S701, if the data packet to be sent which is waited for overtime does not exceed the forwarding capability of the current node, directly sending the data packet to be sent which is waited for overtime to a forwarding queue.
In step S701, since the overtime data packet to be sent is sent within the sending capability of the forwarding queue, the data packet to be sent can be directly sent to the forwarding queue for sending, or sent to the forwarding queue together with other normal data packets to be sent for combining and sending.
In some possible implementation manners of the foregoing embodiments, after the step of sorting the data packets to be sent that wait for timeout according to the predetermined sorting rule and then sequentially sending the data packets to the forwarding queue, a step of adding at least one unit time to the waiting time of all the data packets to be sent in at least one priority queue in the designated priority queue may also be included, so as to ensure timeliness of the data in the queue. The embodiment has the effect of preventing the condition of excessive buffer of the data packets to be sent in the queue with the designated priority.
Fig. 8 is a flow 800 for implementing still another embodiment of the data transmission method according to the embodiment shown in fig. 2.
Referring to fig. 8, before the step of transmitting the data packet to be transmitted in the forwarding queue, the data transmission method further includes the following steps:
s801, judging whether a forwarding queue is full;
s802, if the forwarding queue is full, entering a step of sending a data packet to be sent in the forwarding queue;
s803, if the forwarding queue is not full, returning to the step of checking whether there is a data packet waiting for timeout in the designated priority queue.
In this embodiment, whether a data packet to be sent in the forwarding queue is full is further determined, so that the forwarding queue is selected to be fully configured, and the configuration of the forwarding resource is more reasonable and efficient.
It should be understood that, the sequence numbers of the steps in the foregoing embodiments do not imply an execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present invention.
Example 2
Based on the same inventive concept as the data transmission method in embodiment 1, the present embodiment also provides a data transmission apparatus corresponding to the data transmission method, and the technical concept, technical problems to be solved, and technical effects of the data transmission apparatus are the same as those of the data transmission method in embodiment 1, so the present embodiment will not be described in detail.
Fig. 9 is a schematic structural diagram of an embodiment of a data transmission apparatus provided in the present application.
Referring to fig. 9, the data transmission device 9 includes: a data obtaining module 91 configured to obtain a designated priority queue for sorting and ordering data packets to be transmitted; a data timeout checking module 92 configured to check whether there is a data packet waiting for timeout in the specified priority queue; a data forwarding capability determining module 93, configured to determine whether the data packet to be sent waiting for timeout exceeds the forwarding capability of the current node if there is a data packet to be sent waiting for timeout in the specified priority queue; a first forwarding queue configuration module 94, configured to, if the data packet to be sent that is waiting for timeout exceeds the forwarding capability of the current node, sort the data packet to be sent that is waiting for timeout according to a prescribed sorting rule and then send the data packet to the forwarding queue in sequence; a data sending module 95 configured to send the data packet to be sent in the forwarding queue.
Fig. 10 is a schematic structural diagram of an embodiment of the data obtaining module 91 in the data sending apparatus in the embodiment shown in fig. 9.
Referring to fig. 10, the data obtaining module 91 includes: an obtaining unit 101 configured to obtain a data packet to be sent to a current node; a queue buffer unit 102, configured to identify a priority level of the data packet to be sent, and perform classification buffer on the data to be sent according to the identified priority level to obtain multiple priority level queues, where the data to be sent in the priority level queues are sorted according to the arrival time; a queue specifying unit 103 configured to determine at least one of the priority level queues as a specified priority queue to be sent.
Fig. 11 is a schematic structural diagram of an embodiment of the data timeout checking module 92 in the data transmission apparatus according to the embodiment shown in fig. 9.
Referring to fig. 11, the data timeout checking module 92 includes: a timing unit 111 configured to record the waiting time of the data packet to be sent; a time comparison unit 112 configured to traverse whether the waiting time of the data packet to be sent in each priority queue of the designated priority queues is greater than the maximum waiting time specified by the priority queue; a first timeout determining unit 113, configured to determine that the data packet to be sent is a wait timeout if the waiting time of the data packet to be sent is greater than the maximum waiting time specified by the priority queue; a second timeout determining unit 114, configured to determine that the data packet to be sent is not timed out if the waiting time of the data packet to be sent is not greater than the maximum waiting time specified by the priority queue.
In some embodiments, the maximum wait time for each of the priority queues in the assigned priority queue is incremented according to priority.
Fig. 12 is a schematic structural diagram of an embodiment of the data forwarding capability determining module 93 in the data transmitting apparatus according to the embodiment shown in fig. 9.
Referring to fig. 12, the data forwarding capability determining module 93 includes: a number identifying unit 121 configured to acquire the number of packets to be transmitted waiting for timeout; a quantity comparing unit 122, configured to determine whether the quantity of the data packets to be sent waiting for timeout is greater than the maximum data packet sending capacity of the current node sending queue; a first forwarding capability determining unit 123 configured to determine that the forwarding capability of the current node is exceeded if the number of the to-be-sent data packets waiting for timeout is greater than the maximum data packet sending capacity of the current node sending queue; the second forwarding capability determining unit 124 is configured to determine that the forwarding capability of the current node is not exceeded if the number of the packets to be sent waiting for timeout is not greater than the maximum packet sending capacity of the current node sending queue.
Fig. 13 is a schematic structural diagram of an embodiment of the first forwarding queue configuration module 94 in the data transmission apparatus in the embodiment shown in fig. 9.
Referring to fig. 13, the first forwarding queue configuring module 94 includes a timeout data obtaining unit 131 configured to obtain a data packet waiting for timeout in each priority queue in the designated priority queue; a first ordering unit 132, configured to obtain a first to-be-transmitted data packet sequence according to the priority ordering of the priority queue where the to-be-transmitted data packet is located; a second sorting unit 133, configured to adjust an order of data packets to be sent in the first data packet sequence to be sent according to the waiting time of the data packets to be sent, so as to obtain a second data packet sequence to be sent; a forwarding configuration unit 134 configured to sequentially send the data to be sent to the forwarding queue based on the second data packet sequence to be sent.
Fig. 14 is a schematic structural diagram of another embodiment of the data transmission device provided in the present application.
Referring to fig. 14, the data transmitting apparatus 9 further includes a second forwarding queue configuring module 141, configured to directly transmit the data packet to be transmitted waiting for timeout to the forwarding queue if the data packet to be transmitted waiting for timeout does not exceed the forwarding capability of the current node.
Fig. 15 is a schematic structural diagram of another embodiment of a data transmission device provided in the present application.
Referring to fig. 15, the data transmitting apparatus 9 further includes a time setting module 151 configured to increase the waiting time of all data packets to be transmitted in at least one of the designated priority queues by at least one unit time.
Fig. 16 is a schematic structural diagram of a data transmission device according to still another embodiment of the present application.
Referring to fig. 16, the data sending apparatus 9 further includes a queue capacity judging module 161 configured to judge whether the forwarding queue is full: if the forwarding queue is full, entering a step of sending a data packet to be sent in the forwarding queue; if the forwarding queue is not full, returning to the step of checking whether the queue with the appointed priority has the data packet waiting for overtime to be sent.
In the above embodiments, the description of each embodiment has its own emphasis, and reference may be made to the related description of other embodiments for parts that are not described or recited in any embodiment.
Example 3
Fig. 17 is a schematic diagram of an electronic device according to an embodiment of the present invention. As shown in fig. 17, the electronic apparatus 17 of this embodiment includes: a processor 171, a memory 172 and a computer program 173, e.g. a method program for data transmission, stored in the memory 172 and executable on the processor 171. The steps in the various data transmission method embodiments described above, such as steps 201 to 205 shown in fig. 2, are implemented when the processor 171 executes the computer program 173. Alternatively, the processor 171, when executing the computer program 173, implements the functions of the respective modules/units in the above-described respective apparatus embodiments, for example, the functions of the modules 91 to 95 shown in fig. 9.
Illustratively, the computer program 173 may be divided into one or more modules/units, which are stored in the memory 172 and executed by the processor 171 to carry out the invention. One or more of the modules/units may be a series of computer program instruction segments capable of performing specific functions for describing the execution of the computer program 173 in the electronic device 17. For example, the computer program 173 may be configured by the sub-data obtaining module 91, the data timeout checking module 92, the data forwarding capability judging module 93, the first forwarding queue configuring module 94, and the data sending module 95 (modules in the virtual device), and the specific functions of each module are that the data obtaining module 91 is configured to obtain a designated priority queue for sorting and ordering the data packets to be sent; the data timeout checking module 92 is configured to check whether there is a data packet waiting for timeout in the designated priority queue; the data forwarding capability determining module 93 is configured to determine whether the data packet to be sent waiting for timeout exceeds the forwarding capability of the current node if the data packet to be sent waiting for timeout exists in the designated priority queue; the first forwarding queue configuration module 94 is configured to, if the data packets to be sent that wait for timeout exceed the forwarding capability of the current node, sort the data packets to be sent that wait for timeout according to a prescribed sorting rule and then send the sorted data packets to the forwarding queue in sequence; the data transmission module 95 is configured to transmit a data packet to be transmitted in the forwarding queue.
The electronic device 17 may be a desktop computer, a notebook, a palmtop, a cloud server, a scheduler, or other computing device. The electronic device 17 may include, but is not limited to, a processor 171 and a memory 172. Those skilled in the art will appreciate that fig. 17 is merely an example of the electronic device 17, and does not constitute a limitation of the electronic device 17, and may include more or fewer components than shown, or some of the components may be combined, or different components, e.g., the electronic device 17 may also include input-output devices, network access devices, buses, etc.
The Processor 171 may be a Central Processing Unit (CPU), other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.
The storage 172 may be an internal storage unit of the electronic device 17, such as a hard disk or a memory of the electronic device 17. The memory 172 may also be an external storage device of the electronic device 17, such as a plug-in hard disk of the electronic device 17, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like. Further, the memory 172 may also include both internal storage units and external storage devices of the electronic device 17. The memory 172 is used for storing the computer program 173 as well as other programs and data required by the electronic device 17. The memory 172 may also be used to temporarily store data that has been output or is to be output.
In addition, functional units in the embodiments of the present invention may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit. The integrated unit can be realized in a form of hardware, and can also be realized in a form of a software functional unit.
The integrated modules/units, if implemented in the form of software functional units and sold or used as separate products, may be stored in a computer readable storage medium. Based on such understanding, all or part of the flow in the method according to the embodiments of the present invention may also be implemented by a computer program instructing related hardware, and the computer program may be stored in a computer readable storage medium, and when being executed by a processor, the computer program may implement the steps of the embodiments of the data transmission method. Wherein the computer program comprises computer program code, which may be in the form of source code, object code, an executable file or some intermediate form, etc. The computer readable medium may include: any entity or device capable of carrying computer program code, recording medium, U.S. disk, removable hard disk, magnetic disk, optical disk, computer Memory, read-Only Memory (ROM), random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution media, and the like. It should be noted that the computer readable medium may contain other components which may be suitably increased or decreased as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, in accordance with legislation and patent practice, the computer readable medium does not include electrical carrier signals and telecommunications signals.
The above-mentioned embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; although the present invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some technical features may be equivalently replaced; such modifications and substitutions do not substantially depart from the spirit and scope of the embodiments of the present invention, and are intended to be included within the scope of the present invention.

Claims (9)

1. A data transmission method, comprising:
acquiring a designated priority queue for sorting and sequencing data packets to be sent;
checking whether a data packet to be sent with overtime waiting exists in the appointed priority queue;
if the data packet to be sent with overtime waiting exists in the appointed priority queue, determining whether the data packet to be sent with overtime waiting exceeds the forwarding capacity of the current node;
if the data packets to be sent which are overtime exceed the forwarding capability of the current node, sequencing the data packets to be sent which are overtime according to a specified sequencing principle and then sequentially sending the data packets to be sent to a forwarding queue;
transmitting the data packet to be transmitted in the forwarding queue;
the method for acquiring the designated priority queue for classifying and sequencing the data packets to be transmitted comprises the following steps:
acquiring a data packet to be sent reaching a current node;
identifying the priority level of the data packet to be sent;
classifying and caching the data to be sent according to the identified priority levels to obtain a plurality of priority level queues, and sequencing the data to be sent in the priority level queues according to the arrival time;
determining at least one priority level queue as a designated priority queue to be sent;
wherein, identifying the priority level of the data packet to be sent comprises:
determining an index weight of an importance evaluation index through a consistency condition of an analytic hierarchy process, wherein the index weight is the consistency condition which is verified to accord with an Analytic Hierarchy Process (AHP), an internal contradiction is not generated in decision making, and the maximum feature vector of an evaluation matrix is obtained, and the importance evaluation index comprises at least one of instantaneity, effectiveness and safety;
determining local weight of each service type in the data packet to be sent through an evaluation process of an analytic hierarchy process, wherein the service type comprises at least one of relay protection service, stability control service, telemechanical service, scheduling service and office service;
and weighting the local weight of each service type with the index weight to obtain a global weight, and determining the priority level of the data packet to be sent according to the global weight.
2. The data transmission method as claimed in claim 1, wherein said checking whether there is a data packet waiting for timeout in said designated priority queue comprises:
recording the waiting time of the data packet to be sent;
traversing whether the waiting time of the data packet to be sent in each priority queue of the appointed priority queue is greater than the maximum waiting time specified by the priority queue;
if the waiting time of the data packet to be sent is longer than the maximum waiting time specified by the priority queue, judging that the data packet to be sent is waiting overtime;
and if the waiting time of the data packet to be sent is not more than the maximum waiting time specified by the priority queue, judging that the data packet to be sent is not overtime.
3. The data transmission method of claim 2, wherein the maximum waiting time of each of the priority queues in the assigned priority queue is incremented according to priority.
4. The data transmission method according to claim 1, wherein the determining whether the data packet waiting for timeout to be transmitted exceeds the forwarding capability of the current node comprises:
acquiring the number of data packets to be sent waiting for overtime;
judging whether the number of the data packets to be sent waiting for overtime is larger than the maximum data packet sending capacity of the current node sending queue or not;
if the number of the data packets to be sent which are overtime is larger than the maximum data packet sending capacity of the current node sending queue, judging that the forwarding capacity of the current node is exceeded;
and if the number of the data packets to be sent which are waited for overtime is not larger than the maximum data packet sending capacity of the current node sending queue, judging that the forwarding capacity of the current node is not exceeded.
5. The data transmission method according to claim 1, wherein the sorting the overtime waiting data packets to be transmitted according to a predetermined sorting rule and sequentially transmitting the overtime waiting data packets to the forwarding queue comprises:
acquiring a data packet to be sent waiting for timeout in each priority queue in the designated priority queue;
obtaining a first data packet sequence to be sent according to the priority sequence of the priority queue where the data packets to be sent are located;
adjusting the sequence of the data packets to be sent in the first data packet sequence to be sent according to the waiting time of the data packets to be sent to obtain a second data packet sequence to be sent;
and sequentially sending the data to be sent to a forwarding queue based on the second data packet sequence to be sent.
6. The data sending method according to claim 1, wherein after the step of confirming whether the data packet waiting for timeout to be sent exceeds the forwarding capability of the current node, the method further comprises:
and if the data packet to be sent with the overtime waiting does not exceed the forwarding capability of the current node, directly sending the data packet to be sent with the overtime waiting to a forwarding queue.
7. The data transmission method according to claim 1, wherein after the step of ordering the data packets waiting for timeout according to a predetermined ordering rule and sequentially transmitting the data packets to the forwarding queue, the method further comprises:
and increasing the waiting time of all data packets to be sent in at least one priority queue in the appointed priority queue by at least one unit time.
8. The data transmission method according to claim 1, wherein before the step of transmitting the data packet to be transmitted in the forwarding queue, the method further comprises:
judging whether the forwarding queue is full;
if the forwarding queue is full, entering the step of sending the data packet to be sent in the forwarding queue;
and if the forwarding queue is not full, returning to the step of checking whether the queue with the appointed priority has the data packet to be sent with overtime waiting.
9. A data transmission apparatus, comprising:
the data acquisition module is configured to acquire a designated priority queue for sorting and sequencing the data packets to be transmitted;
a data timeout checking module configured to check whether there is a data packet waiting for timeout in the specified priority queue;
the data forwarding capacity judging module is configured to determine whether the data packet to be sent with overtime waiting exceeds the forwarding capacity of the current node if the data packet to be sent with overtime waiting exists in the appointed priority queue;
the first forwarding queue configuration module is configured to sort the data packets to be sent which are overtime according to a specified sorting principle and then send the data packets to be sent to the forwarding queue in sequence if the data packets to be sent which are overtime exceed the forwarding capability of the current node;
a data transmission module configured to transmit a data packet to be transmitted in the forwarding queue;
the method for acquiring the designated priority queue for sorting and sequencing the data packets to be sent comprises the following steps:
acquiring a data packet to be sent reaching a current node;
identifying the priority level of the data packet to be sent;
classifying and caching the data to be sent according to the identified priority levels to obtain a plurality of priority level queues, wherein the data to be sent in the priority level queues are sorted according to the arrival time;
determining at least one priority level queue as a designated priority level queue to be sent;
wherein, identifying the priority level of the data packet to be sent comprises:
determining the index weight of an importance evaluation index through the consistency condition of an analytic hierarchy process, wherein the index weight is the consistency condition which is checked to accord with an Analytic Hierarchy Process (AHP), internal contradiction is not generated in decision making, and the maximum characteristic vector of an evaluation matrix is obtained, and the importance evaluation index comprises at least one of instantaneity, effectiveness and safety;
determining the local weight of each service type in the data packet to be sent through the evaluation process of an analytic hierarchy process, wherein the service type comprises at least one of a relay protection service, a stability control service, a telecontrol service, a scheduling service and an office service;
and weighting the local weight of each service type with the index weight to obtain a global weight, and determining the priority level of the data packet to be sent according to the global weight.
CN201911418773.0A 2019-12-31 2019-12-31 Data transmission method, data transmission device, storage medium and electronic equipment Active CN111181873B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911418773.0A CN111181873B (en) 2019-12-31 2019-12-31 Data transmission method, data transmission device, storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911418773.0A CN111181873B (en) 2019-12-31 2019-12-31 Data transmission method, data transmission device, storage medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN111181873A CN111181873A (en) 2020-05-19
CN111181873B true CN111181873B (en) 2022-12-27

Family

ID=70650718

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911418773.0A Active CN111181873B (en) 2019-12-31 2019-12-31 Data transmission method, data transmission device, storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN111181873B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000446A (en) * 2020-07-13 2020-11-27 深圳市优必选科技股份有限公司 Data transmission method and robot
CN112541036B (en) * 2020-11-24 2023-12-12 南方电网数字电网研究院有限公司 Power grid data synchronization method, system, device, computer equipment and storage medium
CN112615700B (en) * 2020-12-03 2022-06-28 瀚云科技有限公司 Data sending method, gateway, system, electronic equipment and readable storage medium
CN112565288B (en) * 2020-12-21 2023-05-09 南京南瑞信息通信科技有限公司 Method and system for executing intranet acquisition and control instruction in extranet
CN114885360A (en) * 2022-06-09 2022-08-09 中国联合网络通信集团有限公司 Method for determining reliability of time delay, access network device and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106789731A (en) * 2016-11-17 2017-05-31 天津大学 Array dispatching method based on energy Internet service importance degree
CN110113495A (en) * 2019-05-10 2019-08-09 北京奇艺世纪科技有限公司 Long-range control method, device, electronic equipment and the system of APP

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130003751A1 (en) * 2011-06-30 2013-01-03 Oracle International Corporation Method and system for exponential back-off on retransmission

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106789731A (en) * 2016-11-17 2017-05-31 天津大学 Array dispatching method based on energy Internet service importance degree
CN110113495A (en) * 2019-05-10 2019-08-09 北京奇艺世纪科技有限公司 Long-range control method, device, electronic equipment and the system of APP

Also Published As

Publication number Publication date
CN111181873A (en) 2020-05-19

Similar Documents

Publication Publication Date Title
CN111181873B (en) Data transmission method, data transmission device, storage medium and electronic equipment
US6725249B2 (en) Method for economically sub-optimizing interactions in data communications network environments, and a device according to the method
CA2329542C (en) System and method for scheduling message transmission and processing in a digital data network
CN101547159B (en) Method and device for preventing network congestion
CN109104373B (en) Method, device and system for processing network congestion
WO2012145841A1 (en) Hierarchical profiled scheduling and shaping
US20220217089A1 (en) Path traffic allocation method, network device, and network system
JP2006506845A (en) How to select a logical link for a packet in a router
CN115794407A (en) Computing resource allocation method and device, electronic equipment and nonvolatile storage medium
CN112953848A (en) Strict priority based traffic supervision method, system and equipment
CN113746751A (en) Communication method and device
CN112005528B (en) Data exchange method, data exchange node and data center network
CN112995058B (en) Token adjusting method and device
Buzhin et al. Evaluation of Telecommunication Equipment Delays in Software-Defined Networks
CN113395183B (en) Virtual node scheduling method and system for network simulation platform VLAN interconnection
CN113438271B (en) Memory, and method, device and equipment for data transmission management of Internet of things
CN116938851A (en) Message transmission method and related equipment
CN114448903A (en) Message processing method, device and communication equipment
CN108243091B (en) Information sharing device and information sharing method
CN114884902B (en) Data stream transmission method, device, network equipment and storage medium
Lau et al. Optimizing the performance of OpenFlow Protocol over QUIC
CN116095175B (en) Data flow scheduling method and device for grid edge computing system
CN113395362B (en) Service chain grouping and reforming method for mobile edge computing
CN116938723A (en) Planning method and device for slice bandwidth
Zhao et al. Low-delay transmission technology in 5G distribution network differential protection

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