[go: up one dir, main page]

CN116208547B - Message transmission method and device - Google Patents

Message transmission method and device Download PDF

Info

Publication number
CN116208547B
CN116208547B CN202211705424.9A CN202211705424A CN116208547B CN 116208547 B CN116208547 B CN 116208547B CN 202211705424 A CN202211705424 A CN 202211705424A CN 116208547 B CN116208547 B CN 116208547B
Authority
CN
China
Prior art keywords
scheduling
target
local
queue
aggregate
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
CN202211705424.9A
Other languages
Chinese (zh)
Other versions
CN116208547A (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.)
New H3C Technologies Co Ltd
Original Assignee
New H3C Technologies 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 New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN202211705424.9A priority Critical patent/CN116208547B/en
Publication of CN116208547A publication Critical patent/CN116208547A/en
Application granted granted Critical
Publication of CN116208547B publication Critical patent/CN116208547B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • H04L45/245Link aggregation, e.g. trunking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0667Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

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

Abstract

本申请实施例提供了一种报文传输方法及装置,涉及通信技术领域。应用于网络设备,该方法包括:接收报文,所述报文对应多个出端口;从所述多个出端口中确定目标出端口,并从多个聚合调度队列中确定目标聚合调度队列;从所述目标出端口对应的多个本地调度队列中,确定所述目标聚合调度队列对应的目标本地调度队列;将所述报文缓存至所述目标本地调度队列;当到达所述目标本地调度队列的调度周期时,通过所述目标出端口转发所述目标本地调度队列中缓存的报文。应用本申请实施例提供的技术方案,可以提高报文传输的带宽,提高报文传输效率和可靠性。

The embodiment of the present application provides a message transmission method and device, which relates to the field of communication technology. Applied to a network device, the method includes: receiving a message, the message corresponds to multiple egress ports; determining a target egress port from the multiple egress ports, and determining a target aggregate scheduling queue from multiple aggregate scheduling queues; determining a target local scheduling queue corresponding to the target aggregate scheduling queue from multiple local scheduling queues corresponding to the target egress port; caching the message to the target local scheduling queue; when the scheduling period of the target local scheduling queue is reached, forwarding the message cached in the target local scheduling queue through the target egress port. Applying the technical solution provided by the embodiment of the present application can increase the bandwidth of message transmission, and improve the efficiency and reliability of message transmission.

Description

Message transmission method and device
Technical Field
The present application relates to the field of communications technologies, and in particular, to a method and an apparatus for transmitting a message.
Background
To ensure deterministic transmission of internet services, deterministic networks are built based on TSNs (TIME SENSITIVE networks, time-sensitive networks) and CSQF (CYCLIC SPECIFIC Queuing and Forwarding, periodically-enforced queuing and forwarding). Currently, whether based on a TSN deterministic network or CSQF deterministic network, single links are commonly used for networking. In the deterministic network, firstly, the bandwidth of a single link is limited, which makes the message transmission efficiency lower, and secondly, once the link fails, the upper layer service is not enabled, and the reliability of the message transmission is lower.
Disclosure of Invention
The embodiment of the application aims to provide a message transmission method and device, so as to improve the message transmission bandwidth and improve the message transmission efficiency and reliability. The specific technical scheme is as follows:
In a first aspect of the embodiment of the present application, a method for transmitting a packet is provided, which is applied to a network device, where the network device includes a plurality of output ports, the plurality of output ports correspond to a plurality of aggregate scheduling queues, and each output port corresponds to a plurality of local scheduling queues, and the method includes:
Receiving a message, wherein the message corresponds to the plurality of output ports;
Determining a target output port from the plurality of output ports, and determining a target aggregate schedule queue from the plurality of aggregate schedule queues;
Determining a target local scheduling queue corresponding to the target aggregate scheduling queue from a plurality of local scheduling queues corresponding to the target output port;
caching the message to the target local scheduling queue;
And when the scheduling period of the target local scheduling queue is reached, forwarding the cached message in the target local scheduling queue through the target output port.
In some embodiments, in the network device, the identification of the local scheduling queues with the same scheduling period is the same as the identification of the aggregate scheduling queue;
the step of determining the target local dispatching queue corresponding to the target aggregate dispatching queue from the plurality of local dispatching queues corresponding to the target output port comprises the following steps:
And determining the identified target local dispatching queue identified as the target aggregation dispatching queue from a plurality of local dispatching queues corresponding to the target outlet port.
In some embodiments, the network device further comprises a local clock source for each output port, the local clock sources being aligned with the high precision time synchronization protocol clock source.
In some embodiments, a mapping relationship between the aggregate schedule queue and a local schedule queue corresponding to each output port is stored in the network device;
the step of determining the target local dispatching queue corresponding to the target aggregate dispatching queue from the plurality of local dispatching queues corresponding to the target output port comprises the following steps:
And determining a target local scheduling queue corresponding to the target aggregate scheduling queue from a plurality of local scheduling queues corresponding to the target output port according to the mapping relation between the aggregate scheduling queue and the local scheduling queue corresponding to the target output port.
In some embodiments, the mapping relationship is represented by an offset of an identifier of a local scheduling queue corresponding to an output port relative to an identifier of the aggregate scheduling queue;
the step of determining a target local scheduling queue corresponding to the target aggregate scheduling queue according to a mapping relationship between the aggregate scheduling queue and the local scheduling queue corresponding to the target output port from the plurality of local scheduling queues corresponding to the target output port includes:
Increasing the identification of the target aggregate dispatch queue by the offset corresponding to the target output port to obtain the target identification of the target specimen dispatch queue;
and determining a target local scheduling queue corresponding to the target identifier from a plurality of local scheduling queues corresponding to the target output port.
In some embodiments, in the network device, the time width of the scheduling period corresponding to the aggregate scheduling queue and each local scheduling queue is the same.
In some embodiments, the method further comprises:
When the network equipment is started, one of the plurality of output ports is selected to be used as a reference output port;
Taking a plurality of local scheduling queues corresponding to the reference output ports as an aggregate scheduling queue;
and determining the mapping relation between the aggregate dispatching queues and the local dispatching queues corresponding to each outlet port according to the mapping relation between the local dispatching queues corresponding to each outlet port and the dispatching period.
In some embodiments, the method further comprises:
When a new output port is started in the network equipment, determining the mapping relation between the aggregation scheduling queues and the local scheduling queues corresponding to the new output port according to the mapping relation between the local scheduling queues corresponding to the new output port and the scheduling period and the mapping relation between the aggregation scheduling queues and the scheduling period.
In some embodiments, the scheduling period difference value of the aggregate scheduling queue corresponding to the same deterministic flow in the network device and the upstream device is a sum value of the number of scheduling periods corresponding to the delay between the network device and the upstream device and a preset number of scheduling periods.
In a second aspect of the embodiment of the present application, a packet transmission apparatus is provided, which is applied to a network device, where the network device includes a plurality of output ports, the plurality of output ports correspond to a plurality of aggregate dispatch queues, and each output port corresponds to a plurality of local dispatch queues, and the apparatus includes:
The receiving module is used for receiving messages, and the messages correspond to the plurality of output ports;
the first determining module is used for determining a target outlet port from the plurality of outlet ports and determining a target aggregate scheduling queue from the plurality of aggregate scheduling queues;
the second determining module is used for determining a target local scheduling queue corresponding to the target aggregate scheduling queue from a plurality of local scheduling queues corresponding to the target output port;
The buffer module is used for buffering the message to the target local scheduling queue;
and the forwarding module is used for forwarding the message cached in the target local scheduling queue through the target output port when the scheduling period of the target local scheduling queue is reached.
In some embodiments, in the network device, the identification of the local scheduling queues with the same scheduling period is the same as the identification of the aggregate scheduling queue;
the second determining module is specifically configured to determine, from a plurality of local scheduling queues corresponding to the target output ports, a target local scheduling queue identified as an identifier of the target aggregate scheduling queue.
In some embodiments, the network device further comprises a local clock source for each output port, the local clock sources being aligned with the high precision time synchronization protocol clock source.
In some embodiments, a mapping relationship between the aggregate schedule queue and a local schedule queue corresponding to each output port is stored in the network device;
the second determining module is specifically configured to determine, from a plurality of local scheduling queues corresponding to the target output port, a target local scheduling queue corresponding to the target aggregate scheduling queue according to a mapping relationship between the aggregate scheduling queue and the local scheduling queue corresponding to the target output port.
In some embodiments, the mapping relationship is represented by an offset of an identifier of a local scheduling queue corresponding to an output port relative to an identifier of the aggregate scheduling queue;
The second determining module is specifically configured to increase the identifier of the target aggregate scheduling queue by an offset corresponding to the target output port to obtain a target identifier of a target local scheduling queue, and determine a target local scheduling queue corresponding to the target identifier from a plurality of local scheduling queues corresponding to the target output port.
In some embodiments, in the network device, the time width of the scheduling period corresponding to the aggregate scheduling queue and each local scheduling queue is the same.
In some embodiments, the apparatus further comprises:
The network equipment comprises a selection module, a reference output port, a local scheduling queue, a transmission module and a scheduling module, wherein the selection module is used for selecting one output port from the plurality of output ports as a reference output port after the network equipment is started;
and the third determining module is used for determining the mapping relation between the aggregation scheduling queue and the local scheduling queue corresponding to each output port according to the mapping relation between the local scheduling queues corresponding to each output port and the scheduling period.
In some embodiments, the third determination module is further to:
And after a new output port is started in the network equipment, determining the mapping relation between the aggregation scheduling queues and the local scheduling queues corresponding to the new output port according to the mapping relation between the local scheduling queues corresponding to the new output port and the scheduling period and the mapping relation between the aggregation scheduling queues and the scheduling period.
In some embodiments, the scheduling period difference value of the aggregate scheduling queue corresponding to the same deterministic flow in the network device and the upstream device is a sum value of the number of scheduling periods corresponding to the delay between the network device and the upstream device and a preset number of scheduling periods.
In a third aspect of the embodiments of the present application, there is provided a network device, including a processor and a memory, where the memory is configured to store a computer program, and the processor is configured to implement the method steps described in the first aspect when executing the program stored in the memory.
In a fourth aspect of the embodiments of the present application, there is provided a computer readable storage medium having stored therein a computer program which, when executed by a processor, implements the method steps of the first aspect described above.
The embodiment of the application has the beneficial effects that:
In the technical scheme provided by the embodiment of the application, the network equipment aggregates a plurality of output ports together and corresponds to a plurality of uniform aggregate scheduling queues, and for a deterministic stream, the deterministic stream can be sent out from any one of the output ports and is the same in the dimension of time, namely the time of the aggregate scheduling queues, so that the deterministic transmission of the message is realized. Compared with the message forwarding through a single outlet port, the message forwarding method and device based on the multiple outlet ports have the advantages that in the embodiment of the application, the message transmission bandwidth is increased and the message transmission efficiency is improved by forwarding the message through the multiple outlet ports which are aggregated together, and the multiple outlet ports which are aggregated together can be mutually and dynamically backed up, so that even if one outlet port fails, the message can be switched to the other outlet port for forwarding the message, the reliability of message transmission is improved, the intercommunication among nodes is ensured, and the continuity of upper-layer business is ensured.
Of course, it is not necessary for any one product or method of practicing the application to achieve all of the advantages set forth above at the same time.
Drawings
In order to more clearly illustrate the embodiments of the application or the technical solutions in the prior art, the drawings used in the embodiments or the description of the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the application, and other embodiments may be obtained according to these drawings to those skilled in the art.
Fig. 1 is a schematic diagram of periodic forwarding of deterministic flows within forwarding nodes provided by an embodiment of the present application;
fig. 2 is a schematic flow chart of a first packet transmission method according to an embodiment of the present application;
fig. 3 is a first schematic diagram of a network structure according to an embodiment of the present application;
Fig. 4 is a second schematic diagram of a network structure according to an embodiment of the present application;
Fig. 5 is a first schematic diagram of a local scheduling queue of each output port in a network device according to an embodiment of the present application;
fig. 6 is a second flowchart of a message transmission method according to an embodiment of the present application;
fig. 7 is a third flow chart of a message transmission method according to an embodiment of the present application;
Fig. 8 is a second schematic diagram of a local scheduling queue of each egress port in a network device according to an embodiment of the present application;
FIG. 9 is a schematic diagram of a mapping relationship between a local scheduling queue and a scheduling period according to an embodiment of the present application;
fig. 10 is a third schematic diagram of a network architecture according to an embodiment of the present application;
fig. 11 is a schematic structural diagram of a message transmission device according to an embodiment of the present application;
fig. 12 is a schematic structural diagram of a network device according to an embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present application, but not all embodiments. Based on the embodiments of the present application, all other embodiments obtained by the person skilled in the art based on the present application are included in the scope of protection of the present application.
The words appearing in the embodiments of the application are explained below.
The TSN is a group of Ethernet standards, and through core technologies such as accurate time synchronization, timing scheduling and the like, low-delay streaming service of time synchronization is realized, and low-delay isochronous standard data are provided for all devices in a system, so that a foundation is provided for fusion of control, measurement, configuration, UI (User Interface), file exchange infrastructure and the like.
Time slot is divided into time slots in an equal division mode, and is the minimum scheduling unit in TSN.
CSQF is a periodical queuing forwarding mechanism based on segment routing.
Aggregation, namely binding a plurality of physical links together to form a logic link, so as to achieve the purpose of increasing the bandwidth of the link, and simultaneously, the links bound together can effectively improve the reliability of the link through mutual dynamic backup.
Through decades of vigorous development, the Internet (Internet) realizes seamless connection among people, objects and the like, and has great influence on life and work of people. However, deterministic transmission is required in the scenarios of "smart grid", "telemedicine", "video entertainment", and "industrial remote control", that is, a sufficiently low latency, and a sufficiently small jitter are required to ensure the reliability of data connection. End-to-end deterministic transmission is also required in complex scenarios such as multi-service, large traffic and wide area.
The deterministic network is a network capable of guaranteeing deterministic bandwidth, time delay, jitter and packet loss rate indexes of service, and the deterministic network technology is a novel QoS (Quality of Service ) guaranteeing technology and can be used in emerging scenes with high real-time performance such as automatic driving, remote operation, holographic communication and the like.
There are two existing deterministic network implementations, namely deterministic networks built based on TSNs and CSQF, respectively.
The two modes are based on clock synchronization for networking. The clocks are synchronous, namely the clocks of the whole network are synchronous, the clocks of the terminal equipment and the network equipment are the same, and the network card marks a hard time stamp on the transmitted message. Currently, there are two main ways of clock synchronization. One is a master-slave mode, i.e., one of the most accurate clocks is selected as the master clock, the other clocks are selected as the slave clocks, and the time of the slave clocks is adjusted based on the time of the master clock. One is a voting mode, for example, 9 devices are in a network domain, 5 devices are 1:00 in time, 4 devices are 1:01 in time, and all devices are adjusted to 1:00 according to the result of voting, minority compliance and majority compliance.
The deterministic network built based on TSN is suitable for deterministic transmission in a small range. This deterministic transmission is achieved by slot planning. A slot generally refers to a transmission resource of the time dimension of the network device outlet port. For example, the output port bandwidth is 1Gbps, that is, 1s can transmit 1G bits, and it is assumed that a packet has 1500 bytes, that is 12000 bits, and its transmission occupies a time slot resource of 12000/1 g=12 μs of the output port. Which segment is occupied is determined by its transmission start time. Since most of industrial traffic is a message which is periodically transmitted and smaller than the MTU (Maximum Transmission Unit, the maximum transmission unit), the message starting time of the terminal can be controlled, and each message is only triggered to be transmitted at a time calculated in advance through global time slot planning (time division multiplexing), so that the time slots occupied by the messages when the messages are transmitted at the output ports of each hop of network equipment are not in conflict, thereby avoiding the occurrence of multicast and burst, and realizing the accurate and timely transmission.
The deterministic network built based on CSQF is suitable for deterministic transmission over a wide range. This deterministic transfer is achieved through CSQF. CSQF introduces a periodic forwarding idea based on a traditional IP (Internet Protocol, network protocol) network, and divides a time division manner into a plurality of time slices T on a forwarding node, and a message of a certain deterministic flow can only be sent in a time slice designated for the forwarding node, so that the sending delay jitter in the forwarding node is limited to be within 1 time slice. As shown in fig. 1, the deterministic flow is periodically forwarded in the forwarding node, and in fig. 1, the deterministic flow packet is sent in a set T2 time slice. The earliest time of sending each message in the deterministic stream packet is T2, and the latest time is T2, so the delay jitter in the forwarding node is one time slice width at maximum. The CSQF technique can theoretically guarantee a maximum of two time slice widths for the end-to-end delay jitter. In fig. 1, only 4 forwarding nodes 1-4 are included between the transmitting end and the receiving end, which is taken as an example and not limiting. The method comprises the steps of dispatching a transmitting end, a receiving end and forwarding nodes 1-4 by a controller, calculating SIDs (SEGMENT IDENTIFIERS ) of the forwarding nodes 1-4 based on an acquisition request of the transmitting end, distributing the calculated SIDs of the forwarding nodes 1-4 to the forwarding nodes 1-4, and analyzing SIDs of stack tops in a message by the forwarding nodes 1-4 to obtain an output port and a specific forwarding time period, namely a dispatching period, of forwarding of the message of the current forwarding node, so that deterministic transmission is realized.
Currently, whether based on a TSN deterministic network or CSQF deterministic network, single links are commonly used for networking. In the deterministic network, firstly, the bandwidth of a single link is limited, which makes the message transmission efficiency lower, and secondly, once the link fails, the upper layer service is not enabled, and the reliability of the message transmission is lower.
In order to improve the transmission bandwidth of a message and improve the transmission efficiency and reliability of the message, the embodiment of the application provides a message transmission method, which is applied to any network device in a deterministic network, wherein the network device can be a router, a switch and the like. In the method, the network equipment aggregates a plurality of output ports together, corresponds to a plurality of uniform aggregate scheduling queues, can send out any one of the plurality of output ports for a deterministic stream, and is the same in the dimension of time, namely the time of the aggregate scheduling queues, so that the deterministic transmission of the message is realized. Compared with the message forwarding through a single outlet port, the message forwarding method and device based on the multiple outlet ports have the advantages that in the embodiment of the application, the message transmission bandwidth is increased and the message transmission efficiency is improved by forwarding the message through the multiple outlet ports which are aggregated together, and the multiple outlet ports which are aggregated together can be mutually and dynamically backed up, so that even if one outlet port fails, the message can be switched to the other outlet port for forwarding the message, the reliability of message transmission is improved, the intercommunication among nodes is ensured, and the continuity of upper-layer business is ensured.
The following describes the message transmission method provided by the embodiment of the present application in detail through a specific embodiment.
As shown in fig. 2, an embodiment of the present application provides a method for transmitting a message, where the method is applied to a network device, and the network device includes a plurality of output ports, where the plurality of output ports corresponds to a plurality of aggregate dispatch queues, and each output port corresponds to a plurality of local dispatch queues. As shown in the network structure of FIG. 3, the network device RA comprises a plurality of output ports, namely GE1/0/1, GE1/0/2 and GE1/0/3, and 3 links connected between RA and RB through GE1/0/1, GE1/0/2 and GE1/0/3 are combined into one path. At this time, GE1/0/1, GE1/0/2, GE1/0/3 correspond to the same plurality of aggregate schedule queues, GE1/0/1 corresponds to the plurality of local schedule queues, GE1/0/2 corresponds to the plurality of local schedule queues, GE1/0/3 corresponds to the plurality of local schedule queues.
In the embodiment of the application, the message transmission method comprises the following steps:
step S21, receiving a message, wherein the message corresponds to a plurality of output ports.
In the embodiment of the application, the message received by the network equipment is any message in the deterministic stream. The network device receives the deterministic flow message, that is, the message corresponds to the plurality of output ports. The plurality of output ports are aggregation ports. As shown in FIG. 3, the network device RA receives messages of deterministic flows with GE1/0/1, GE1/0/2, GE1/0/3 egress ports.
Step S22, determining a target outlet port from a plurality of outlet ports and determining a target aggregate dispatch queue from a plurality of aggregate dispatch queues.
In the embodiment of the application, the network equipment can determine the target outlet port from a plurality of outlet ports according to the specified rule. The specified rule can be set according to actual requirements. For example, the specified rule may be that Hash (Hash) calculation is performed on the five-tuple of the message, and an output port corresponding to the calculated Hash value is obtained and used as a target output port. For another example, the specified rule may be to randomly select one output port from among a plurality of output ports as the target output port. The network device may determine a target aggregate dispatch queue from a plurality of aggregate dispatch queues based on the five-tuple or destination SID of the message. For example, the correspondence between the SID and the aggregate dispatch queue is pre-stored in the network device, and the network device obtains the aggregate dispatch queue corresponding to the destination SID of the message as the target aggregate dispatch queue according to the pre-stored correspondence between the SID and the aggregate dispatch queue.
Here, one output port is determined from the aggregated multiple output ports as a target output port, so that aggregated load sharing is realized. In addition, for a deterministic flow, the control plane cannot confirm its actual forwarding output port in advance, but the determined target aggregate scheduling queues are the same no matter from which physical output port is forwarded, and the scheduling period (i.e., the forwarding time slot) of each scheduling queue is fixed, so, from the dimension of time, the forwarding time slot is the same when a message is forwarded through any output port of the aggregated multiple output ports. The network structure shown in fig. 4 includes network devices RA, RB, RD and RF, where a connection line between two adjacent devices RA, RB, RD and RF represents a link, corresponding to an output port, and a circled link represents an aggregate link, corresponding to multiple aggregated output ports. As can be seen from fig. 4, for a deterministic flow, the target aggregate schedule queues determined by RA and RD are LAGCYCLEA, RB, the target aggregate schedule queues determined by langcycleb and LAGCYCLEC, RF, respectively, and LAGCYCLED, respectively. This may ensure deterministic transmission of deterministic flows.
Step S23, determining a target local dispatching queue corresponding to the target aggregation dispatching queue from a plurality of local dispatching queues corresponding to the target output port.
In the embodiment of the application, one output port is positioned on one single board, and a plurality of scheduling queues are arranged on one single board, namely a plurality of local scheduling queues corresponding to the output port on the single board. The network equipment presets the corresponding relation between the aggregation scheduling queue and the local scheduling queue. After determining the target aggregate dispatch queue, the network device determines the local dispatch queue corresponding to the target aggregate dispatch queue from a plurality of local dispatch queues corresponding to the target output port according to the preset corresponding relation between the aggregate dispatch queue and the local dispatch queue, and uses the local dispatch queue corresponding to the target aggregate dispatch queue as the target local dispatch queue.
Step S24, the message is cached to a target specimen dispatching queue.
And after determining the target specimen dispatching queue, the network equipment caches the message to the target specimen dispatching queue.
And S25, when the scheduling period of the target specimen scheduling queue is reached, forwarding the cached message in the target specimen scheduling queue through the target output port.
Each scheduling queue has its own scheduling period, i.e. the forwarding time slot. The network device can detect the forwarding time slot in real time, and when detecting the scheduling period reaching the target specimen scheduling queue, forwards all the messages cached in the target specimen scheduling queue through the target output port.
In some embodiments, the scheduling period difference value of the aggregate scheduling queue corresponding to the same deterministic flow in the network device and the upstream device is a sum of the number of scheduling periods corresponding to the delay between the network device and the upstream device and a preset number of scheduling periods. In the embodiment of the application, the network equipment can absorb the network jitter among the equipment and eliminate the network jitter caused by the scheduling period deviation of the scheduling queue by setting the redundancy period, namely the preset number of scheduling periods.
In the technical scheme provided by the embodiment of the application, the network equipment aggregates a plurality of output ports together and corresponds to a plurality of uniform aggregate scheduling queues, and for a deterministic stream, the deterministic stream can be sent out from any one of the output ports and is the same in the dimension of time, namely the time of the aggregate scheduling queues, so that the deterministic transmission of the message is realized. Compared with the message forwarding through a single outlet port, the message forwarding method and device based on the multiple outlet ports have the advantages that in the embodiment of the application, the message transmission bandwidth is increased and the message transmission efficiency is improved by forwarding the message through the multiple outlet ports which are aggregated together, and the multiple outlet ports which are aggregated together can be mutually and dynamically backed up, so that even if one outlet port fails, the message can be switched to the other outlet port for forwarding the message, the reliability of message transmission is improved, the intercommunication among nodes is ensured, and the continuity of upper-layer business is ensured.
In addition, in the technical scheme provided by the embodiment of the application, each network device adopts the unified aggregate scheduling queue, so that the mapping of the scheduling queue between the upstream device and the downstream device is facilitated, the scheduling queue which is originally related to the link and the interface is converted into the scheduling queue which is only related to the network device, and the mapping relation of the scheduling queue is simplified.
In some embodiments, in the network device, the identification of the local scheduling queue and the identification of the aggregate scheduling queue with the same scheduling period are the same. For example, the scheduling period of the local scheduling queue a is T1, the scheduling period of the aggregate scheduling queue b is T1, and the scheduling periods of the local scheduling queue a and the aggregate scheduling queue b are the same, so that the identification of the local scheduling queue a and the identification of the aggregate scheduling queue b are the same. Based on this, the identities (cycle ids) of the local scheduling queues of all the egress ports at the same time are completely identical. As shown in the local scheduling queue schematic diagram of each output Port in the network device shown in fig. 5, the network device shown in fig. 5 includes 4 single boards, which are the single boards where the output ports Port1-Port4 are located, 4 local scheduling queues cycle1-cycle4 are set on each single board, the aggregate scheduling queues are Lagcycle-Lagcycle 4, the aggregate scheduling queues Lagcycle-Lagcycle 4 are sequentially arranged from left to right, the scheduling period sequentially increases, the local scheduling queues cycle1-cycle4 on each single board are sequentially arranged from left to right, and the scheduling period sequentially increases. As can be seen from fig. 5, the identities of the local scheduling queues with the same scheduling period are the same as the identities of the aggregate scheduling queues, and the identities of the local scheduling queues of all the outgoing ports at the same moment are completely consistent. In fig. 5, the numerical values in the aggregate schedule queue and the local schedule queue are identifiers.
In order to ensure that the identifiers of the local scheduling queues of all the output ports at the same moment are completely consistent, in the network equipment, the high-precision synchronization of the time among the single boards can be ensured through a PTP (Precision Time Protocol, high-precision time synchronization protocol) protocol, namely, the cycle ids of all the output ports are directly calculated based on the PTP time. For example, the PTP time takes 10 μs as a unit, and takes the remainder of the deterministic scheduling period number N, and adds 1 to obtain cycle id, and taking the deterministic scheduling period number N as 15 as an example, the cycle id range obtained by PTP protocol calculation is 1-15.
The method of ensuring high-precision synchronization of time among single boards through the PTP protocol can relatively simply realize that the identification of the local scheduling queue with the same scheduling period is the same as the identification of the aggregation scheduling queue, and the single boards are restarted without special response processing. However, the PTP clock source must be kept stable, no jump can occur, otherwise, the mapping relation of the scheduling queue changes. In some embodiments, in order to avoid the change of the mapping relationship of the scheduling queue caused by the jump of the PTP clock source, a local clock source auxiliary mode of the board may be adopted, that is, the network device further includes a local clock source corresponding to each output port, where the local clock source is aligned with the high precision time synchronization protocol clock source.
In the embodiment of the application, a local clock source is reserved on hardware, and when the system is started, the local clock source and the PTP clock source are aligned. And then, the local clock source can not be synchronized with the PTP clock source any more, and the cycle id calculation can be ensured not to generate deviation only by keeping the frequency synchronization. At this time, the cycle id calculation is performed according to the local clock source.
The embodiment of the application also provides a message transmission method based on the same identification of the local scheduling queue and the aggregation scheduling queue with the same scheduling period, as shown in fig. 6, which can comprise the following steps:
step S61, receiving a message, wherein the message corresponds to a plurality of output ports. The same as in step S21 described above.
Step S62, determining a target output port from a plurality of output ports and determining a target aggregate dispatch queue from a plurality of aggregate dispatch queues. The same as in step S22 described above.
Step S63, determining an identified target local dispatching queue identified as the target aggregation dispatching queue from a plurality of local dispatching queues corresponding to the target output ports.
After determining the target aggregate dispatch queue, the network device obtains the identification of the target aggregate dispatch queue, and further determines the local dispatch queue identified as the identification of the target aggregate dispatch queue from a plurality of local dispatch queues corresponding to the target output port as a target local dispatch queue.
For example, as shown in fig. 5, if the network device determines that the target aggregate dispatch queue is Lagcycle, that is, the identifier of the target aggregate dispatch queue is 1, and the target output Port is Port1, the network device obtains the local dispatch queue with the identifier of 1, that is, the target local dispatch queue cycle1, from the cycle1-cycle4 on the board where Port1 is located.
Step S64, the message is cached to a target local dispatching queue. The same as in step S24 described above.
Step S65, when the dispatching period of the target specimen dispatching queue is reached, forwarding the cached message in the target specimen dispatching queue through the target outlet port. The same as in step S25 described above.
In the embodiment of the application, the PTP time among the single boards has errors, and the calculated cycle id may have deviation of 1 scheduling period. In the embodiment of the application, the network jitter caused by PTP error can be eliminated by setting the redundancy period.
In addition, in the embodiment of the application, the identification of the local scheduling queue with the same scheduling period is the same as the identification of the aggregation scheduling queue, so that the aggregation scheduling queue can be omitted.
In the technical scheme provided by the embodiment of the application, the identifiers of the local scheduling queues corresponding to all the output ports in the network equipment are consistent, so that the local scheduling queues of the target specimen can be rapidly determined, and the deterministic transmission efficiency is improved.
In some embodiments, a mapping relationship between the aggregate schedule queue and the local schedule queue corresponding to each egress port is stored in the network device. In some embodiments, to guarantee deterministic transmission, the aggregate schedule queue and each local schedule queue correspond to the same time width of the schedule period. Here, time synchronization of each board is not required, phase synchronization is not required, and frequency synchronization is only required.
Based on the mapping relation between the aggregate scheduling queue and the local scheduling queue corresponding to each output port stored in the network device, as shown in fig. 7, the embodiment of the application further provides a message transmission method, which may include the following steps:
step S71, receiving a message, wherein the message corresponds to a plurality of output ports. The same as in step S21 described above.
Step S72, a target output port is determined from the plurality of output ports, and a target aggregate schedule queue is determined from the plurality of aggregate schedule queues. The same as in step S22 described above.
Step S73, determining a target local scheduling queue corresponding to the target aggregate scheduling queue according to the mapping relation between the aggregate scheduling queue and the local scheduling queue corresponding to the target output port from a plurality of local scheduling queues corresponding to the target output port.
After determining the target aggregate dispatch queue, the network device searches the mapping relation comprising the target aggregate dispatch queue according to the mapping relation between the aggregate dispatch queue and the local dispatch queue corresponding to the target output port, and the local dispatch queue in the searched mapping relation is the target specimen local dispatch queue.
In some embodiments, the mapping relationship is represented by an offset of an identification of the local scheduling queue to which the egress port corresponds relative to an identification of the aggregate scheduling queue. As shown in a local scheduling queue schematic diagram of each output Port in the network device shown in fig. 8, the network device shown in fig. 8 includes 4 single boards, which are the single boards where the output ports Port1-Port4 are located, 4 local scheduling queues cycle1-cycle4 are set on each single board, aggregate scheduling queues are Lagcycle-Lagcycle 4, aggregate scheduling queues Lagcycle-Lagcycle 4 are sequentially arranged from left to right, the scheduling period sequentially increases, the local scheduling queues cycle1-cycle4 on each single board are sequentially arranged from left to right, and the scheduling period sequentially increases. For Port1, the offset of the identification of the local scheduling queue relative to the identification of the aggregate scheduling queue is 1, for Port2, the offset of the identification of the local scheduling queue relative to the identification of the aggregate scheduling queue is 3, for Port3, the offset of the identification of the local scheduling queue relative to the identification of the aggregate scheduling queue is 0, and for Port4, the offset of the identification of the local scheduling queue relative to the identification of the aggregate scheduling queue is 2.
Based on the offset, step S73 may be to increase the identifier of the target aggregate scheduling queue by the offset corresponding to the target output port to obtain the target identifier of the target local scheduling queue, and determine the target local scheduling queue corresponding to the target identifier from the plurality of local scheduling queues corresponding to the target output port.
For example, as shown in fig. 8, if the network device determines that the target aggregate schedule queue is Lagcycle1, that is, the identifier of the target aggregate schedule queue is 1, and the target exit Port is Port2, and for Port2, the offset of the identifier of the local schedule queue relative to the identifier of the aggregate schedule queue is 3, the network device determines that the target identifier is 1+3=4, and obtains the local schedule queue with the identifier of 4, that is, the target local schedule queue cycle4, from cycle1-cycle4 on the board where Port2 is located.
Step S74, the message is cached to a target local dispatching queue. The same as in step S24 described above.
And step S75, when the scheduling period of the target specimen scheduling queue is reached, forwarding the cached message in the target specimen scheduling queue through the target output port. The same as in step S25 described above.
In the embodiment of the application, the starting time of the scheduling period may be different among the single boards, and the calculated cycle id may have a deviation of 1 scheduling period. In the embodiment of the application, the network jitter caused by the initial time error can be eliminated by setting the redundancy period.
In the technical scheme provided by the embodiment of the application, each single board in the network equipment can reserve the local scheduling queue of the single board, and the local scheduling queues on a plurality of single boards are uniformly scheduled based on the aggregate scheduling queue, so that deterministic transmission is realized, the local scheduling queues on each single board do not need to be adjusted in a targeted manner, and the complexity of deterministic transmission is simplified.
In some embodiments, the network device may determine a mapping relationship between the aggregate schedule queue and the local schedule queue by selecting one of the plurality of output ports as a reference output port after the network device is started, using the plurality of local schedule queues corresponding to the reference output port as the aggregate schedule queue, and determining a mapping relationship between the aggregate schedule queue and the local schedule queue corresponding to each output port according to the mapping relationship between the plurality of local schedule queues corresponding to each output port and the schedule period.
For example, as shown in fig. 8, the network device selects Port3 as the reference output Port, that is, cycle1-cycle4 corresponding to Port3 is used as the aggregate schedule queue Lagcycle-Lagcycle 4, where, for Port3, the offset of the identifier of the local schedule queue with respect to the identifier of the aggregate schedule queue is 0. In addition, the mapping relation between the aggregate dispatch queue and the local dispatch queue corresponding to each output port is determined by combining the mapping relation between the local dispatch queues corresponding to other output ports and the dispatch period, and as described above, the offset of the identifier of the local dispatch queue corresponding to other output ports relative to the identifier of the aggregate dispatch queue is determined.
In the embodiment of the application, after the mapping relation is determined, the aggregate scheduling queue can be not switched any more, and even if the single board where the originally selected output port is located is restarted, other output ports can be not needed to be selected again as the reference output port, and the previously determined mapping relation can be used.
When a new output port is started in the network equipment, the mapping relation between the aggregation scheduling queues and the local scheduling queues corresponding to the new output port can be determined according to the mapping relation between the local scheduling queues corresponding to the new output port and the scheduling period and the mapping relation between the aggregation scheduling queues and the scheduling period.
In the embodiment of the application, the new outlet port can be started for a newly inserted single board in the network equipment, and can also be restarted after the original single board is down. The mapping relation between a plurality of local scheduling queues corresponding to the new output ports and the scheduling period is calculated in advance. After the new single board is started, i.e. after the new output port is started, according to the calculated mapping relationship between the local scheduling queue and the scheduling period, the mapping relationship between the aggregate scheduling queue and the local scheduling queue corresponding to the new output port, for example, the mapping relationship between the new aggregate scheduling queue and the local scheduling queue corresponding to the new output port, can be determined.
Because the local dispatching queues of the corresponding ports of the output ends are not uniform, the mapping relation between the local dispatching queues and the dispatching period needs to be measured. The network device can ensure high-precision synchronization of time among the single boards through the PTP protocol, so that the corresponding relation between the local scheduling queues of the corresponding ports of the output ports and the PTP time can be obtained, the local scheduling queues of the corresponding ports of the output ports can be calculated at the same moment, and the cycle mapping of the local scheduling queues of the corresponding ports of the output ports is obtained.
For example, the mapping relationship between the local scheduling queue and the scheduling period is as shown in fig. 9. The forwarding node a includes a main control board, a board 1 and a board 2, where the board 1 and the board 2 are controlled by a CPU of the main control board, and each board includes elements such as a CPU, an NP (Network Processor ), and an FPGA (Field-Programmable gate array). Wherein, the single board 1 and the single board 2 receive a message at the same time, the single board 1 reads the time slot scheduling queue cycle_i corresponding to the FPGA time stamp ts_i, the single board 2 reads the scheduling queue cycle_e corresponding to the FPGA time stamp ts_e, and the single board 2 converts the ts_e into the time stamp ts_i, and at this time, the time stamp ts_i corresponds to the scheduling queue cycle_e'. Considering network jitter introduced by PTP error, cycle_E' is cycle_E-1, cycle_E, or cycle_E+1.
The following describes the message transmission method provided in the embodiment of the present application in detail with reference to the network architecture shown in fig. 10.
The network architecture shown in fig. 10 includes network devices RA, RB, RC, RD, RE and RF, where a line between two adjacent devices in RA, RB, RD, and RF represents a link, corresponding to an egress port, and a circled link represents an aggregate link, corresponding to multiple egress ports of the aggregate. There is an equivalent path between RA and RF, namely path 1 and path 2.
When the RA sends a message (such as a message 1) of a deterministic stream to the RF, the RA copies a part of the message 1 on a path 1 and a path 2 respectively, and then transmits the message 1 to the RF through the path 1 and the path 2 respectively, so that the reliability of the message transmission is improved. The message transmission modes between two adjacent network devices on the path 1 and the path 2 are the same, and the message transmission between the RA and the RB on the path 1 is taken as an example and is not limited.
The RA can select one or more output ports from the output ports 1 and 2 in a Hash mode, for example, the output port 1 is selected, the aggregate scheduling queue 1 corresponding to the message 1 is determined, further, the local scheduling queue 1 corresponding to the aggregate scheduling queue 1 is determined from a plurality of local scheduling queues corresponding to the output port 1, the message 1 is cached to the local scheduling queue 1 corresponding to the output port 1, and when the scheduling period of the local scheduling queue 1 is reached, the message cached in the local scheduling queue 1 is forwarded through the output port 1.
In the embodiment of the application, if the RA selects a plurality of output ports from the output ports 1 and 2, the message can be transmitted through the plurality of output ports at the same time, the dynamic backup of the aggregation link is realized, and the reliability of the message transmission is further improved. In addition, if the RA selects one output port from the output ports 1 and 2, load sharing among a plurality of output ports, namely load sharing of an aggregation link, can be realized, so that reliability of deterministic transmission can be ensured, and effective transmission bandwidth can be improved.
Corresponding to the above message transmission method, the embodiment of the present application also provides a message transmission device, as shown in fig. 11, applied to a network device, where the network device includes a plurality of output ports, the plurality of output ports correspond to a plurality of aggregate dispatch queues, and each output port corresponds to a plurality of local dispatch queues, and the device includes:
A receiving module 111, configured to receive a packet, where the packet corresponds to a plurality of output ports;
A first determining module 112, configured to determine a target egress port from the plurality of egress ports, and determine a target aggregate schedule queue from the plurality of aggregate schedule queues;
a second determining module 113, configured to determine a destination local scheduling queue corresponding to the target aggregate scheduling queue from a plurality of local scheduling queues corresponding to the target output port;
A buffer module 114, configured to buffer the message to a destination sample local scheduling queue;
And the forwarding module 115 is configured to forward the message buffered in the destination local dispatch queue through the destination egress port when the dispatch period of the destination local dispatch queue is reached.
In some embodiments, in the network device, the identification of the local scheduling queue with the same scheduling period is the same as the identification of the aggregate scheduling queue;
The second determining module 113 may be specifically configured to determine, from a plurality of local scheduling queues corresponding to the target output ports, an identified target local scheduling queue identified as the target aggregate scheduling queue.
In some embodiments, the network device further comprises a local clock source for each of the output ports, the local clock source being aligned with the high precision time synchronization protocol clock source.
In some embodiments, a mapping relationship between the aggregate scheduling queue and the local scheduling queue corresponding to each output port is stored in the network device;
The second determining module 113 may be specifically configured to determine, from a plurality of local scheduling queues corresponding to the target output port, a target local scheduling queue corresponding to the target aggregate scheduling queue according to a mapping relationship between the aggregate scheduling queue and the local scheduling queue corresponding to the target output port.
In some embodiments, the mapping relationship is represented by an offset of an identifier of the local scheduling queue corresponding to the output port relative to an identifier of the aggregate scheduling queue;
The second determining module is specifically configured to increase the identifier of the target aggregate dispatch queue by an offset corresponding to the target output port to obtain a target identifier of the target local dispatch queue, and determine a target local dispatch queue corresponding to the target identifier from a plurality of local dispatch queues corresponding to the target output port.
In some embodiments, in the network device, the time width of the scheduling period corresponding to the aggregate scheduling queue and each local scheduling queue is the same.
In some embodiments, the foregoing message transmission apparatus may further include:
the network equipment comprises a selection module, a local scheduling queue, a transmission module and a scheduling module, wherein the selection module is used for selecting one of a plurality of output ports as a reference output port after the network equipment is started;
and the third determining module is used for determining the mapping relation between the aggregate dispatching queues and the local dispatching queues corresponding to each outlet port according to the mapping relation between the local dispatching queues corresponding to each outlet port and the dispatching period.
In some embodiments, the third determination module may be further configured to:
When a new output port is started in the network equipment, determining the mapping relation between the aggregation scheduling queue and the local scheduling queue corresponding to the new output port according to the mapping relation between the local scheduling queues corresponding to the new output port and the scheduling period and the mapping relation between the aggregation scheduling queues and the scheduling period.
In some embodiments, the scheduling period difference value of the aggregate scheduling queue corresponding to the same deterministic flow in the network device and the upstream device is a sum of the number of scheduling periods corresponding to the delay between the network device and the upstream device and a preset number of scheduling periods.
In the technical scheme provided by the embodiment of the application, the network equipment aggregates a plurality of output ports together and corresponds to a plurality of uniform aggregate scheduling queues, and for a deterministic stream, the deterministic stream can be sent out from any one of the output ports and is the same in the dimension of time, namely the time of the aggregate scheduling queues, so that the deterministic transmission of the message is realized. Compared with the message forwarding through a single outlet port, the message forwarding method and device based on the multiple outlet ports have the advantages that in the embodiment of the application, the message transmission bandwidth is increased and the message transmission efficiency is improved by forwarding the message through the multiple outlet ports which are aggregated together, and the multiple outlet ports which are aggregated together can be mutually and dynamically backed up, so that even if one outlet port fails, the message can be switched to the other outlet port for forwarding the message, the reliability of message transmission is improved, the intercommunication among nodes is ensured, and the continuity of upper-layer business is ensured.
Corresponding to the above message transmission method, the embodiment of the present application further provides a network device, as shown in fig. 12, including a processor 121 and a memory 122, where the memory 122 is used to store a computer program, and the processor 121 is used to implement the steps of the message transmission method described in any of fig. 1 to 10 when executing the program stored in the memory 122.
The Memory may include random access Memory (Random Access Memory, RAM) or may include Non-Volatile Memory (NVM), such as at least one disk Memory. Optionally, the memory may also be at least one memory device located remotely from the aforementioned processor.
The Processor may be a general purpose Processor including a central processing unit (Central Processing Unit, CPU), a network Processor (Network Processor, NP), etc., or may be a digital signal Processor (DIGITAL SIGNAL Processor, DSP), application SPECIFIC INTEGRATED Circuit (ASIC), field-Programmable gate array (Field-Programmable GATE ARRAY, FPGA) or other Programmable logic device, discrete gate or transistor logic device, discrete hardware components.
In yet another embodiment of the present application, a computer readable storage medium is provided, in which a computer program is stored, the computer program implementing any of the above-mentioned message transmission method steps when executed by a processor.
In yet another embodiment of the present application, a computer program product comprising instructions which, when run on a computer, cause the computer to perform the steps of any of the message transmission method steps of the above embodiments is also provided.
In the above embodiments, it may be implemented in whole or in part by software, hardware, firmware, or any combination thereof. When implemented in software, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When loaded and executed on a computer, produces a flow or function in accordance with embodiments of the present application, in whole or in part. The computer may be a general purpose computer, a special purpose computer, a computer network, or other programmable apparatus. The computer instructions may be stored in or transmitted from one computer-readable storage medium to another, for example, by wired (e.g., coaxial cable, optical fiber, digital Subscriber Line (DSL)), or wireless (e.g., infrared, wireless, microwave, etc.). The computer readable storage medium may be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. that contains an integration of one or more available media. The usable medium may be a magnetic medium (e.g., floppy disk, hard disk, tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid state disk Solid STATE DISK (SSD)), etc.
It is noted that relational terms such as first and second, and the like are 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. Moreover, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus 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 apparatus. Without further limitation, an element defined by the phrase "comprising one does not exclude the presence of other like elements in a process, method, article, or apparatus that comprises an element.
In this specification, each embodiment is described in a related manner, and identical and similar parts of each embodiment are all referred to each other, and each embodiment mainly describes differences from other embodiments. In particular, for the message transmission apparatus, network device, storage medium and computer program product embodiments, the description is relatively simple, as it is substantially similar to the method embodiments, and the relevant points are found in the partial description of the method embodiments.
The foregoing description is only of the preferred embodiments of the present application and is not intended to limit the scope of the present application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application are included in the protection scope of the present application.

Claims (12)

1. The message transmission method is characterized by being applied to network equipment, wherein the network equipment comprises a plurality of output ports, the plurality of output ports correspond to a plurality of aggregate scheduling queues, and each output port corresponds to a plurality of local scheduling queues, and the method comprises the following steps:
Receiving a message, wherein the message corresponds to the plurality of output ports;
Determining a target output port from the plurality of output ports, and determining a target aggregate schedule queue from the plurality of aggregate schedule queues;
Determining a target local scheduling queue corresponding to the target aggregate scheduling queue from a plurality of local scheduling queues corresponding to the target output port;
caching the message to the target local scheduling queue;
When the scheduling period of the target local scheduling queue is reached, forwarding the message cached in the target local scheduling queue through the target output port;
The step of determining the target local dispatching queue corresponding to the target aggregate dispatching queue from the plurality of local dispatching queues corresponding to the target outlet port comprises determining the target local dispatching queue identified as the identifier of the target aggregate dispatching queue from the plurality of local dispatching queues corresponding to the target outlet port, or
The step of determining the target local scheduling queue corresponding to the target aggregate scheduling queue from a plurality of local scheduling queues corresponding to the target output port comprises determining the target local scheduling queue corresponding to the target aggregate scheduling queue according to the mapping relation between the aggregate scheduling queue and the local scheduling queue corresponding to the target output port from the plurality of local scheduling queues corresponding to the target output port.
2. The method of claim 1, wherein if the identification of the local scheduling queues with the same scheduling period is the same as the identification of the aggregate scheduling queue in the network device, the network device further comprises a local clock source corresponding to each output port, and the local clock sources are aligned with the high-precision time synchronization protocol clock source.
3. The method according to claim 1, wherein if a mapping relationship between the aggregate schedule queue and the local schedule queue corresponding to each egress port is stored in the network device, the mapping relationship is represented by an offset of an identifier of the local schedule queue corresponding to the egress port relative to an identifier of the aggregate schedule queue;
the step of determining a target local scheduling queue corresponding to the target aggregate scheduling queue according to a mapping relationship between the aggregate scheduling queue and the local scheduling queue corresponding to the target output port from the plurality of local scheduling queues corresponding to the target output port includes:
Increasing the identification of the target aggregate dispatch queue by the offset corresponding to the target output port to obtain the target identification of the target specimen dispatch queue;
and determining a target local scheduling queue corresponding to the target identifier from a plurality of local scheduling queues corresponding to the target output port.
4. The method of claim 1, wherein if a mapping relationship between the aggregate schedule queue and the local schedule queue corresponding to each output port is stored in the network device, a time width of a schedule period corresponding to the aggregate schedule queue and each local schedule queue in the network device is the same.
5. The method of claim 1, wherein if a mapping relationship between the aggregate schedule queue and the local schedule queue corresponding to each egress port is stored in the network device, the method further comprises:
When the network equipment is started, one of the plurality of output ports is selected to be used as a reference output port;
Taking a plurality of local scheduling queues corresponding to the reference output ports as an aggregate scheduling queue;
and determining the mapping relation between the aggregate dispatching queues and the local dispatching queues corresponding to each outlet port according to the mapping relation between the local dispatching queues corresponding to each outlet port and the dispatching period.
6. The method of claim 5, wherein the method further comprises:
When a new output port is started in the network equipment, determining the mapping relation between the aggregation scheduling queues and the local scheduling queues corresponding to the new output port according to the mapping relation between the local scheduling queues corresponding to the new output port and the scheduling period and the mapping relation between the aggregation scheduling queues and the scheduling period.
7. The method according to any one of claims 1-6, wherein the difference between the scheduling periods of the aggregate scheduling queue corresponding to the same deterministic flow in the network device and the upstream device is a sum of the number of scheduling periods corresponding to the delay between the network device and the upstream device and a preset number of scheduling periods.
8. The message transmission device is characterized by being applied to network equipment, wherein the network equipment comprises a plurality of output ports, the plurality of output ports correspond to a plurality of aggregate scheduling queues, each output port corresponds to a plurality of local scheduling queues, and the device comprises:
The receiving module is used for receiving messages, and the messages correspond to the plurality of output ports;
the first determining module is used for determining a target outlet port from the plurality of outlet ports and determining a target aggregate scheduling queue from the plurality of aggregate scheduling queues;
the second determining module is used for determining a target local scheduling queue corresponding to the target aggregate scheduling queue from a plurality of local scheduling queues corresponding to the target output port;
The buffer module is used for buffering the message to the target local scheduling queue;
the forwarding module is used for forwarding the message cached in the target local scheduling queue through the target output port when the scheduling period of the target local scheduling queue is reached;
The second determining module is specifically configured to determine, from a plurality of local scheduling queues corresponding to the target output port, a target local scheduling queue identified as an identifier of the target aggregate scheduling queue;
The second determining module is specifically configured to determine, from a plurality of local scheduling queues corresponding to the target output ports, a destination local scheduling queue corresponding to the target aggregate scheduling queue according to a mapping relationship between the aggregate scheduling queue and the local scheduling queue corresponding to the target output port.
9. The apparatus of claim 8, wherein if the identification of the local scheduling queues with the same scheduling period is the same as the identification of the aggregate scheduling queue in the network device, the network device further comprises a local clock source corresponding to each output port, and the local clock sources are aligned with the high-precision time synchronization protocol clock source.
10. The apparatus of claim 8, wherein if, in the network device, the identities of the local scheduling queues with the same scheduling period are the same as the identities of the aggregate scheduling queues, the mapping relationship is represented by an offset of the identities of the local scheduling queues corresponding to the output ports relative to the identities of the aggregate scheduling queues;
The second determining module is specifically configured to increase the identifier of the target aggregate scheduling queue by an offset corresponding to the target output port to obtain a target identifier of a target local scheduling queue, and determine a target local scheduling queue corresponding to the target identifier from a plurality of local scheduling queues corresponding to the target output port.
11. The apparatus of claim 8, wherein the apparatus further comprises:
The network equipment comprises a selection module, a reference output port, a local scheduling queue, a transmission module and a scheduling module, wherein the selection module is used for selecting one output port from the plurality of output ports as a reference output port after the network equipment is started;
and the third determining module is used for determining the mapping relation between the aggregation scheduling queue and the local scheduling queue corresponding to each output port according to the mapping relation between the local scheduling queues corresponding to each output port and the scheduling period.
12. The apparatus of claim 11, wherein the third determination module is further configured to:
And after a new output port is started in the network equipment, determining the mapping relation between the aggregation scheduling queues and the local scheduling queues corresponding to the new output port according to the mapping relation between the local scheduling queues corresponding to the new output port and the scheduling period and the mapping relation between the aggregation scheduling queues and the scheduling period.
CN202211705424.9A 2022-12-29 2022-12-29 Message transmission method and device Active CN116208547B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211705424.9A CN116208547B (en) 2022-12-29 2022-12-29 Message transmission method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211705424.9A CN116208547B (en) 2022-12-29 2022-12-29 Message transmission method and device

Publications (2)

Publication Number Publication Date
CN116208547A CN116208547A (en) 2023-06-02
CN116208547B true CN116208547B (en) 2025-02-21

Family

ID=86508598

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211705424.9A Active CN116208547B (en) 2022-12-29 2022-12-29 Message transmission method and device

Country Status (1)

Country Link
CN (1) CN116208547B (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN119127995B (en) * 2024-11-08 2025-06-27 北京饼干科技有限公司 Enterprise consumption information processing method and device
CN120342784B (en) * 2025-06-17 2025-08-22 深圳市光联世纪信息科技有限公司 Data flow analysis method based on TCP TIMESTAMP detection

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104852869A (en) * 2014-02-14 2015-08-19 杭州华三通信技术有限公司 Port aggregation method and device
CN110798400A (en) * 2019-10-23 2020-02-14 新华三信息安全技术有限公司 Message forwarding method and device

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112054969B (en) * 2019-06-06 2023-03-24 中兴通讯股份有限公司 Method and device for realizing message mirror image
CN112804166B (en) * 2019-11-13 2024-05-28 中兴通讯股份有限公司 Message receiving and sending method, device and storage medium
CN111404839B (en) * 2020-03-20 2023-05-26 国家计算机网络与信息安全管理中心 Message processing method and device
CN113542145B (en) * 2020-04-20 2023-08-22 华为技术有限公司 Method for load sharing of Ethernet link aggregation group and network equipment
CN114143378B (en) * 2021-11-24 2023-07-25 新华三技术有限公司 Network optimization method, device, gateway equipment and storage medium
CN115242728B (en) * 2022-06-27 2023-07-21 新华三技术有限公司 Message transmission method and device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104852869A (en) * 2014-02-14 2015-08-19 杭州华三通信技术有限公司 Port aggregation method and device
CN110798400A (en) * 2019-10-23 2020-02-14 新华三信息安全技术有限公司 Message forwarding method and device

Also Published As

Publication number Publication date
CN116208547A (en) 2023-06-02

Similar Documents

Publication Publication Date Title
JP7667879B2 (en) Packet transmission method and packet transmission device
KR102071439B1 (en) Method and network node for obtaining the target transmission path
US10887037B2 (en) Symmetric path/link over LAG interface using LLDP for time synchronization between two nodes using PTP
CN116208547B (en) Message transmission method and device
US8625467B2 (en) Rate-varying multicast transmission for clock distribution in packet networks
KR101504055B1 (en) Automatic capture of the network delay components
CN115242728B (en) Message transmission method and device
US9485045B2 (en) Communication control equipment
CN112583510B (en) A message forwarding method, device and system
Garbugli et al. End-to-end qos management in self-configuring tsn networks
WO2022062931A1 (en) Network anomaly determination method and apparatus
CN115834508B (en) A method for determining a message period and a related device thereof
CN117596200B (en) A time-sensitive network routing scheduling method, electronic device, and medium
CN107852682A (en) Method and apparatus for determining a synchronization reference
WO2022184129A1 (en) Time slot allocation processing method, and device and storage medium
WO2016110084A1 (en) Method, device and system for precision time protocol time synchronization in aggregation network
US20230074703A1 (en) Communication delay measurement device, communication delay measurement method, and program
JP2011188046A (en) Packet communication system and method for controlling packet communication apparatus
CN114301852A (en) Message transmission control, generation, transmission method and configuration method, device and medium
JP5662779B2 (en) Communication system and node device
JP5047099B2 (en) Data communication system, data communication method, and information processing apparatus constituting data communication system
EP4629589A1 (en) Packet transmission method, apparatus, network device, and storage medium
US20250096918A1 (en) Priority-based designated interface selection in a link aggregation group
WO2025156983A1 (en) Communication method and related device
CN120301831A (en) A communication method and related equipment

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