CN113392607A - Method for determining configuration parameters and related equipment - Google Patents

Method for determining configuration parameters and related equipment Download PDF

Info

Publication number
CN113392607A
CN113392607A CN202010170690.0A CN202010170690A CN113392607A CN 113392607 A CN113392607 A CN 113392607A CN 202010170690 A CN202010170690 A CN 202010170690A CN 113392607 A CN113392607 A CN 113392607A
Authority
CN
China
Prior art keywords
configuration parameters
simulation test
target
data path
traffic
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010170690.0A
Other languages
Chinese (zh)
Other versions
CN113392607B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN202010170690.0A priority Critical patent/CN113392607B/en
Publication of CN113392607A publication Critical patent/CN113392607A/en
Application granted granted Critical
Publication of CN113392607B publication Critical patent/CN113392607B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The application discloses a method for determining configuration parameters and related equipment, comprising the following steps: determining forwarding service simulation information, wherein the forwarding service simulation information comprises input flow information and data path behaviors; respectively carrying out simulation test on the forwarding service simulation information based on the multiple groups of first configuration parameters to obtain multiple groups of first simulation test results; and determining a target first configuration parameter corresponding to the target first simulation test result from the plurality of groups of first configuration parameters according to the plurality of groups of first simulation test results. The efficiency of determining the configuration parameters can be effectively improved by a simulation test mode, the determination of the configuration parameters does not need to require technical personnel to have higher technical analysis capability and abundant debugging experience, and the determined configuration parameters can meet the required data path performance when a plurality of services are superposed.

Description

Method for determining configuration parameters and related equipment
Technical Field
The present application relates to the field of simulation testing technologies, and in particular, to a method for determining configuration parameters and a related device.
Background
The data path refers to a data transmission path formed by connecting the subsystems via a data bus in a digital system. In general, there may be many modules on a data path to correspondingly regulate and control traffic on the data path, such as a physical address aggregation (MAG) module, a switching interface control (FIC) module, a Traffic Management (TM) module, a Packet Redundancy Block (PRB) module, and the like, and these modules may control the priority, the rate, and the like of output traffic of the data path after corresponding parameter configuration, so that, for parameter configuration of each module, the performance of the data path is significantly affected.
At present, a data path of a product (such as a chip, a single board, etc.) is usually tested on a test device, and a technician gradually adjusts configured parameters of each module on the data path of the product according to a test result, so that configuration parameters capable of enabling the product to meet an expected test requirement are obtained through multiple times of board loading tests and configuration parameter adjustments by the technician. However, this method of determining configuration parameters requires a high skill of a technician, makes difficult challenges, and is inefficient in determining configuration parameters.
Disclosure of Invention
The embodiment of the application provides a method for determining configuration parameters and related equipment, so that the technical requirements on technicians in the process of determining the configuration parameters are reduced, and the efficiency of determining the configuration parameters is improved.
In a first aspect, an embodiment of the present application provides a method for determining configuration parameters, specifically, determining forwarding service simulation information, where the forwarding service simulation information includes input traffic information and data path behaviors, where the input traffic information is used to simulate input traffic corresponding to multiple forwarding services, and the data path behaviors are used to simulate a data path through which the input traffic is transmitted; then, a simulation test can be performed on the forwarding service simulation information based on multiple sets of first configuration parameters of the data path, so as to obtain multiple sets of first simulation test results, where the multiple sets of first configuration parameters are different configuration parameters, and each set of first simulation test result in the multiple sets of first simulation test results is used to simulate an output flow of an input flow corresponding to the multiple forwarding services after passing through the data path corresponding to one set of first configuration parameters in the multiple sets of first configuration parameters; in this way, according to the multiple groups of first simulation test results, the target first configuration parameters corresponding to the target first simulation test results can be determined from the multiple groups of first configuration parameters.
In this embodiment, a simulation test mode is adopted to determine the configuration parameters corresponding to each module on the data path, which can effectively improve the efficiency of determining the configuration parameters and save the overhead required by the board-mounted test compared with a mode of determining the configuration parameters by trial and error repeatedly in the board-mounted test environment. Moreover, the simulation platform can traverse a plurality of groups of configuration parameters and provide a simulation test result corresponding to each group of configuration parameters, so that a technician is not required to have higher technical analysis capability and rich debugging experience, and the required configuration parameters can be determined from the plurality of groups of configuration parameters, thereby reducing the skill requirement on the technician. Meanwhile, the determined configuration parameters can meet the data path performance required by the superposition of a plurality of forwarding services, so that the data path performance of a product can be prevented from meeting the data path performance in one service scene but not in another service scene.
As an example, the simulation platform may be an ESL simulation platform, other simulation platforms, and the like.
With reference to the first aspect, in a first possible implementation manner of the first aspect, the input traffic information includes any one or more of a traffic type, a port template, a rate template, a priority template, and a packet length template, and the data path behavior includes port information and/or a traffic forwarding path. In this embodiment, one or more templates may be used to simulate the input traffic of the forwarding service, and the data path behavior port information and/or the service forwarding path may be used to simulate the data path of the input traffic, thereby implementing the simulation of the forwarding service.
With reference to the first implementation manner of the first aspect, in a second possible implementation manner of the second aspect, the service type includes unicast and/or multicast; the port template comprises any one or more of self-sending and self-receiving, half offset, symmetrical offset, random offset, full leaf coverage, first leaf coverage and second leaf coverage, leaf interval coverage and random leaf coverage; the rate template comprises any one or more of burst opening, burst unopened, full flow, half flow and custom percentage flow; the priority template comprises one or more traffic transmission priorities, and when the priority template comprises the traffic transmission priorities, the proportion among the traffic transmission priorities is a preset proportion and/or a custom proportion; the packet length template comprises any one or more of a user-defined packet length, random jump of the packet length in a preset packet length interval, incremental jump of the packet length in the preset packet length interval and a mixture of a plurality of packet lengths; the port information comprises any one or more of port number, physical address convergence MAG source and port rate; the service forwarding path is used for describing a forwarding path and/or a forwarding delay of the service.
With reference to any one implementation manner of the first aspect to the second implementation manner of the first aspect, in a third possible implementation manner of the first aspect, the configuration parameter of the target module on the data path is assigned to a member of a target class corresponding to the target module, and different target modules on the data path correspond to different target classes. In this embodiment, modules on the data path may be simulated by defined classes, and configuration parameters of each module on the data path are assigned to members in its corresponding class. In practical application, a data path or a device (such as a single board, a chip, etc.) carrying the data path may be abstractly defined as a large class, each module on the data path is an internal class, and each module on the data path performs a parameter configuration process, that is, a process in which a simulation platform assigns values to members in a corresponding class, so as to implement a simulation test on forwarding service simulation information.
With reference to any one of the first to third embodiments of the first aspect, in a fourth possible embodiment of the first aspect, the method further includes: training to obtain a machine learning model according to the multiple groups of first configuration parameters and the multiple groups of first simulation test results, wherein the input of the machine learning model is each group of first configuration parameters in the multiple groups of first configuration parameters, and the output of the machine learning model is the first simulation test result corresponding to each group of first configuration parameters. In this embodiment, after the simulation test results corresponding to a plurality of sets of configuration parameters are obtained by using the simulation platform, the machine learning model can be trained by using the configuration parameters and the corresponding simulation test results, and the machine learning model can output corresponding simulation test results based on the input configuration parameters.
With reference to the fourth implementation manner of the first aspect, in a fifth possible implementation manner of the first aspect, the method further includes: determining a plurality of different sets of second configuration parameters; inputting the plurality of groups of different second configuration parameters into the machine learning model respectively to obtain a plurality of groups of second simulation test results, wherein the plurality of groups of second simulation test results are output by the machine learning model; determining a target second simulation test result from the plurality of groups of second simulation test results, wherein the target second simulation test result is consistent with an expected output flow, and the expected output flow is the output flow of the input flow of the target forwarding service after passing through the data path; and determining a second configuration parameter corresponding to the target second simulation test result. In the embodiment, the configuration parameters meeting the performance requirements of the data path in the target forwarding service scene can be determined from a group of configuration parameters by using a machine learning model, so that the configuration parameters can be determined without a simulation test or a board-mounted test, and the efficiency of determining the configuration parameters is effectively improved.
With reference to the fourth implementation manner or the fifth implementation manner of the first aspect, in a sixth possible implementation manner of the first aspect, the machine learning model is constructed based on a back propagation BP neural network.
In a second aspect, an embodiment of the present application further provides an apparatus for determining configuration parameters, including: a first determining module, configured to determine forwarding service simulation information, where the forwarding service simulation information includes input traffic information and data path behavior, where the input traffic information is used to simulate input traffic corresponding to multiple forwarding services, and the data path behavior is used to simulate a data path through which the input traffic is transmitted; a simulation test module, configured to perform a simulation test on the forwarding service simulation information based on multiple sets of first configuration parameters of the data path, respectively, to obtain multiple sets of first simulation test results, where the multiple sets of first configuration parameters are different configuration parameters, and each set of first simulation test result in the multiple sets of first simulation test results is used to simulate an output flow of an input flow corresponding to the multiple forwarding services after passing through the data path corresponding to one set of first configuration parameters in the multiple sets of first configuration parameters; and the second determining module is used for determining a target first configuration parameter corresponding to the target first simulation test result from the plurality of groups of first configuration parameters according to the plurality of groups of first simulation test results.
With reference to the second aspect, in a first possible implementation manner of the second aspect, the input traffic information includes any one or more of a traffic type, a port template, a rate template, a priority template, and a packet length template, and the data path behavior includes port information and/or a traffic forwarding path.
With reference to the first implementation manner of the second aspect, in a second possible implementation manner of the second aspect, the service type includes unicast and/or multicast; the port template comprises any one or more of self-sending and self-receiving, half offset, symmetrical offset, random offset, full leaf coverage, first leaf coverage and second leaf coverage, leaf interval coverage and random leaf coverage; the rate template comprises any one or more of burst opening, burst unopened, full flow, half flow and custom percentage flow; the priority template comprises one or more traffic transmission priorities, and when the priority template comprises the traffic transmission priorities, the proportion among the traffic transmission priorities is a preset proportion and/or a custom proportion; the packet length template comprises any one or more of a user-defined packet length, random jump of the packet length in a preset packet length interval, incremental jump of the packet length in the preset packet length interval and a mixture of a plurality of packet lengths; the port information comprises any one or more of port number, physical address convergence MAG source and port rate; the service forwarding path is used for describing a forwarding path and/or a forwarding delay of the service.
With reference to any one implementation manner of the second aspect to the second implementation manner of the second aspect, in a third possible implementation manner of the second aspect, the configuration parameter of the target module on the data path is assigned to a member in a target class corresponding to the target module, and different target modules on the data path correspond to different target classes.
With reference to any one of the second to third embodiments of the second aspect, in a fourth possible embodiment of the second aspect, the apparatus further includes: and the training module is used for training to obtain a machine learning model according to the multiple groups of first configuration parameters and the multiple groups of first simulation test results, wherein the input of the machine learning model is each group of first configuration parameters in the multiple groups of first configuration parameters, and the output of the machine learning model is the first simulation test result corresponding to each group of first configuration parameters.
With reference to the fourth embodiment of the second aspect, in a fifth possible embodiment of the second aspect, the apparatus further comprises: a third determining module, configured to determine multiple different sets of second configuration parameters; the input module is used for respectively inputting the plurality of groups of different second configuration parameters into the machine learning model to obtain a plurality of groups of second simulation test results, and the plurality of groups of second simulation test results are output by the machine learning model; a fourth determining module, configured to determine a target second simulation test result from the multiple groups of second simulation test results, where the target second simulation test result is consistent with an expected output traffic, and the expected output traffic is an output traffic of an input traffic of the target forwarding service after passing through the data path; and the fifth determining module is used for determining a second configuration parameter corresponding to the target second simulation test result.
With reference to the fourth embodiment or the fifth embodiment of the second aspect, in a sixth possible embodiment of the second aspect, the machine learning model is constructed based on a back propagation BP neural network.
The apparatus for determining configuration parameters described in the second aspect corresponds to the method for determining configuration parameters described in the first aspect, and therefore, reference may be made to the corresponding embodiments and the related descriptions of the advantageous effects in the first aspect for various possible embodiments and advantageous effects of the second aspect, which are not described herein again.
In a third aspect, an embodiment of the present application further provides an apparatus, including: a processor and a memory; the memory for storing instructions or computer programs; the processor is configured to execute the instructions or the computer program to perform the method according to any of the embodiments of the first aspect.
The apparatus for determining configuration parameters described in the third aspect corresponds to the method for determining configuration parameters described in the first aspect, and therefore, various possible implementations and advantageous effects of the third aspect may refer to the corresponding implementations and advantageous effects described in the first aspect, which are not described herein again.
In a fourth aspect, this application further provides a computer-readable storage medium including instructions or a computer program, which when executed on a computer, cause the computer to perform the method described in any one of the above embodiments of the first aspect.
The apparatus for determining configuration parameters described in the fourth aspect corresponds to the method for determining configuration parameters described in the first aspect, and therefore, various possible embodiments and advantageous effects of the fourth aspect may refer to the corresponding embodiments and advantageous effects described in the first aspect, which are not described herein again.
In the foregoing implementation manner of the embodiment of the present application, forwarding service simulation information is determined first, where the forwarding service simulation information may include input traffic information and data path behaviors, where the input traffic information is used to simulate input traffic corresponding to multiple forwarding services, and the data path behaviors are used to simulate a data path through which the input traffic is transmitted; then, the forwarding service simulation information may be subjected to a simulation test based on multiple sets of configuration parameters of the data path, so as to obtain multiple sets of simulation test results, where the multiple sets of configuration parameters are different configuration parameters, and each set of simulation test result in the multiple sets of simulation test results is used to simulate an output flow of an input flow corresponding to multiple forwarding services after passing through the data path corresponding to one set of configuration parameters in the multiple sets of first configuration parameters, so that a target simulation test result may be determined according to the multiple sets of simulation test results, and a target configuration parameter corresponding to the target simulation test result is used as a configuration parameter to be finally determined. Because the configuration parameters corresponding to each module on the data path are determined by adopting a simulation test mode, the simulation platform can quickly obtain a plurality of groups of simulation test results based on a plurality of groups of configuration parameters, so that the required configuration parameters can be quickly determined, on one hand, compared with repeated trial and error in an upper board test environment, the simulation test mode can effectively improve the efficiency of determining the configuration parameters, and the expense required by the upper board test is also saved; on the other hand, the simulation platform can traverse a plurality of groups of configuration parameters and provide a simulation test result corresponding to each group of configuration parameters, so that a technician is not required to have higher technical analysis capability and rich debugging experience, and the required configuration parameters can be determined from the plurality of groups of configuration parameters, thereby reducing the skill requirement on the technician. Meanwhile, the determined configuration parameters can meet the data path performance required by the superposition of a plurality of services, so that the data path performance of the product can be prevented from meeting the data path performance in one service scene but not in another service scene.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed to be used in the description of the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments described in the present application, and other drawings can be obtained by those skilled in the art according to the drawings.
FIG. 1 is a schematic flow chart illustrating a method for determining configuration parameters according to an embodiment of the present disclosure;
FIG. 2 is a diagram illustrating classes corresponding to modules on a data path defined in an embodiment of the present application;
FIG. 3 is a schematic flow chart illustrating another method for determining configuration parameters according to an embodiment of the present application;
FIG. 4 is a schematic diagram of a reverse transport neural network according to an embodiment of the present application;
FIG. 5 is a schematic structural diagram of an apparatus for determining configuration parameters according to an embodiment of the present application;
fig. 6 is a schematic hardware structure diagram of an apparatus in an embodiment of the present application.
Detailed Description
During landing of a product (such as a single board, a chip, and the like), a problem of performance parameters of the product on a data path is often a key pain point of the product during characteristic delivery, and the problem may be more than 60%. In practical applications, there are various combinations (for example, 300 combinations, etc.) of configuration parameters of each module on a data path of a product, and therefore, it is generally necessary to perform on-board testing on performance parameters (that is, parameters configured for each module on the data path) on a data path of the product on a testing device to determine which combination of configuration parameters meets requirements of practical applications. When the test results obtained from the board-on-board test do not meet the expectations of the technician, the technician typically adjusts the configured parameters of the modules on the datapath according to the test results.
However, in the process of the upper board test, since technicians hardly know the flow control data of each module on the data path, it is difficult to locate the configuration parameters to be adjusted on the data path according to the test result, and at this time, technicians with high-level technical analysis capability and abundant debugging experience are usually required to adjust the configuration parameters in the upper board environment for many times, so that the test output of the product data path based on the adjusted configuration parameters can meet the expected test requirements. Because the configuration parameters are determined in the upper board testing environment, in order to reduce the trial and error times as much as possible, the technical requirement on the technical staff is high, the difficulty challenge is large, and the efficiency of determining the configuration parameters is also reduced when the technical staff conducts trial and error repeatedly in the upper board testing environment. Meanwhile, the upper board test has more fields and more material environments, so that the upper board test has higher expenditure.
Based on this, the embodiment of the application provides a method for determining configuration parameters, which aims to reduce the technical requirements on technicians in the process of determining the configuration parameters, improve the efficiency of determining the configuration parameters, and reduce the overhead. Specifically, forwarding service simulation information may be determined first, where the forwarding service simulation information may include input traffic information and data path behavior, where the input traffic information is used to simulate input traffic corresponding to multiple forwarding services, and the data path behavior is used to simulate a data path through which the input traffic is transmitted; then, a simulation test may be performed on the forwarding service simulation information based on multiple sets of configuration parameters of the data path, so as to obtain multiple sets of simulation test results, where the multiple sets of configuration parameters are different configuration parameters, and each set of simulation test result in the multiple sets of simulation test results is used to simulate an output flow of an input flow corresponding to multiple forwarding services after passing through the data path corresponding to one set of configuration parameters in the multiple sets of first configuration parameters, so as to determine a target simulation test result according to the multiple sets of simulation test results, where the target simulation test result may be a simulation test result that conforms to an expected test standard, and thus a target configuration parameter corresponding to the target simulation test result may be used as a configuration parameter that is finally determined.
Because the configuration parameters corresponding to each module on the data path are determined by adopting a simulation test mode, the simulation platform can quickly obtain a plurality of groups of simulation test results based on a plurality of groups of configuration parameters, so that the required configuration parameters can be quickly determined, on one hand, compared with repeated trial and error in an upper board test environment, the simulation test mode can effectively improve the efficiency of determining the configuration parameters, and the expense required by the upper board test is also saved; on the other hand, the simulation platform can traverse a plurality of groups of configuration parameters and provide a simulation test result corresponding to each group of configuration parameters, so that a technician is not required to have higher technical analysis capability and rich debugging experience, and the required configuration parameters can be determined from the plurality of groups of configuration parameters, thereby reducing the skill requirement on the technician. Meanwhile, the determined configuration parameters can meet the data path performance required by the superposition of a plurality of services, so that the data path performance of the product can be prevented from meeting the data path performance in one service scene but not in another service scene.
In order to make the aforementioned objects, features and advantages of the present application more comprehensible, various non-limiting embodiments accompanying the present application examples are described below with reference to the accompanying drawings. It is to be understood that the embodiments described are only a few embodiments of the present application and not all embodiments. All other embodiments, which can be derived by a person skilled in the art from the embodiments given herein without making any creative effort, shall fall within the protection scope of the present application.
Referring to fig. 1, fig. 1 shows a flowchart of a method for determining configuration parameters in an embodiment of the present application, where the method may be applied to a device connected to a simulation platform or a device carrying the simulation platform, and the method specifically may include:
s101: determining forwarding service simulation information, wherein the forwarding service simulation information comprises input flow information and data path behaviors, the input flow information is used for simulating input flow corresponding to the reading forwarding service, and the data path behaviors are used for simulating a data path for transmitting the input flow.
In the process of performing the simulation test, specific information may be used to simulate a plurality of forwarding services, and specifically, to simulate input traffic information and data path behavior of the plurality of forwarding services on the data path (for convenience of description, the specific information is referred to as forwarding service simulation information hereinafter). The input flow information is used for simulating corresponding input flows when a plurality of forwarding services are subjected to simulation test, and the data path behavior is used for simulating a data path for transmitting the input flows in the simulation test process.
In a specific implementation, the forwarding service simulation information may be set according to an input flow and an output flow of a specific forwarding service on a data path in an actual application, for example, in the actual application, a packet length in the input flow of the forwarding service a is usually 64 bits (bits), and the forwarding service simulation information corresponding to the forwarding service a may include packet length information with a packet length of 64 bits.
In some exemplary embodiments, the data path behavior in the forwarding traffic simulation information may include port information and/or traffic forwarding paths.
The port information may specifically include any one or more of a port number (e.g., a port ID), a physical address aggregation (MAG) source, and a port rate. MAG sources may be used to describe LMAG (line MAC aggregation)/FMAG/IMAG sources of ports on the hardware; the port rate may be determined according to the network chip, and may be, for example, 1Gbps, 10Gbps, 20Gbps, 25Gbps, 40Gbps, 50Gbps, 100Gbps, 200Gbps, 240Gbps, 400Gbps, 500Gbps, or the like.
A traffic forwarding path may be used to describe a path of traffic on a data path (i.e., a forwarding path) for forwarding traffic. Optionally, the service forwarding path may also describe a forwarding delay of the forwarding service during forwarding.
In addition, the input traffic information in the forwarding service simulation information may specifically be any one or more of a service type, a port template, a rate template, a priority template, and a packet length template.
The service type refers to a message sending method of the forwarding service, and may be, for example, a unicast type or a multicast type.
The port template may be different according to different traffic types, and specifically, when the traffic type is unicast, the port template may include any one or more different types of templates from self-receiving, half offset, symmetric offset, and random offset. The self-sending and self-receiving are that a destination port (tp) for receiving a data packet is the same as a source port (sp) for sending the data packet. Half offset, which means that the destination port tp receiving the packet is (sp + (n-1)/2)% n, assuming that the number of ports is n and is odd; or the destination port tp is (sp + n/2)% n, n is the number of ports and is an even number. The symmetric offset means that the destination port tp of the transmission packet is n-1-sp, and n is the number of ports. The random offset is an arbitrary port other than the source port sp, which is the destination port tp for receiving the packet.
And when the service type is multicast, the port template may include any one or more of different types of templates, such as full leaf coverage, half leaf coverage before leaf coverage, half leaf coverage after leaf coverage, half leaf interval coverage and random leaf coverage. The full leaf coverage means that the number of multicast leaf members is equal to the number of ports, that is, each multicast leaf member corresponds to one port and serves as a destination port for receiving a data packet.
The first half of the leaf is covered, which means that the multicast leaf members are respectively in one-to-one correspondence with the first half of the ports or the ports close to the first half. For example, assuming that the number of ports is n, the ports are numbered from 0 to n, if n is an odd number, the destination port tp of the received packet (i.e. the destination port corresponding to the multicast leaf member) is {0,1,2, …, (n-1)/2}, and if n is an even number, the destination port tp is {0,1,2, …, n/2-1 }.
Correspondingly, the second half of the leaf is covered, which means that multicast leaf members respectively correspond to the second half of the ports or the ports close to the second half of the ports one to one. For example, assuming that the number of ports is n, which are numbered from 0 to n, and n is an odd number, the destination port tp of the received packet is { (n-1)/2, …, n-1}, and if n is an even number, the destination port tp is { n/2, …, n-1 }.
The leaf interval half-covering means that multicast leaf members correspond to half ports or approximately half ports one to one respectively, and at least one port is arranged between the ports corresponding to any two multicast leaf members. For example, assuming that the number of ports is n, which are numbered from 0 to n, the destination port tp for receiving the packet may be {0,2,4, …, n-1} if n is an odd number, and {0,2,4, …, n-2} if n is an even number.
The random covering of the leaf refers to randomly selecting a destination port corresponding to a multicast leaf member from the total ports. For example, assuming that the number of ports is n, numbered from 0 to n, respectively, and the number of multicast leaf members is m (m ≦ n), tp is m ports randomly selected from the n ports.
And the rate template in the input traffic information may include any one or more of burst open, burst unopened, full traffic, half traffic, and custom percentage traffic.
The burst (burst) opening refers to that the flow of the allowed port suddenly changes, for example, the flow of the allowed port suddenly increases to a large value or suddenly decreases to a small value, and the like. Correspondingly, a burst is not opened, which means that the flow of the port is not allowed to suddenly change. In practical applications, the change value of the port traffic may be compared with a preset threshold to determine whether a burst occurs.
Full traffic means that the transmission rate of a data packet (traffic) of forwarded service at a port reaches the maximum value of the transmission rate of the port. The half traffic means that the transmission rate of the data packet of the forwarding service at a port is half of the maximum transmission rate corresponding to the port. The custom percentage means that the transmission rate of the data packet of the forwarding service at the port can be set by a user (a technician), for example, can be set to 40%, and represents that the transmission rate of the data packet of the forwarding service at the port reaches 40% of the maximum transmission rate corresponding to the port.
The priority template in the input traffic information may include one or more traffic transmission priorities, which represent priorities of traffic forwarded when the traffic is transmitted at the ports. For example, if the priority corresponding to the traffic of the forwarding service a is Pri0, and the priority corresponding to the traffic of the forwarding service B is Pri7, when the traffic of the forwarding service a and the traffic of the forwarding service B are transmitted from the same port at the same time, the traffic corresponding to the forwarding service B may be transmitted preferentially, and then the traffic corresponding to the forwarding service a may be transmitted (assuming that the higher the priority value is, the higher the priority level is, the more the traffic is transmitted preferentially).
Assuming that the priority of the traffic transmitted at the port has 8 priority types pri0, pri1,. and pri7 (of course, in other embodiments, there may be more or less than 8 types, etc.), the priority template may include a traffic transmission priority, such as pri0 priority, pri7 priority, etc.; a plurality of traffic transmission priorities may be included, such as pri0 and pri7, and the traffic ratio of these two traffic transmission priorities may be 1:1 or other preset ratios, or 8 traffic transmission priorities including pri0 to pri7, and the traffic ratio between the traffic transmission priorities may be a preset ratio, such as 1:1:1:1:1, etc. In a further possible embodiment, when the priority template includes a plurality of traffic transmission priorities, the ratio between the traffic transmission priorities may also be a ratio customized by a user (technician), for example, if the traffic of the forwarding service a may include traffic of two traffic transmission priorities Pri0 and Pri7, the user may define the traffic ratio of the two traffic transmission priorities as 3:7, and the like.
The packet length template in the input traffic information refers to a length template of a data packet in the input traffic of the forwarding service, and may include any one or more of a user-defined packet length, random jump of the packet length within a preset packet length interval, incremental jump of the packet length within the preset packet length interval, and a mixture of multiple packet lengths.
The user-defined packet length, that is, the length of the data packet in the input flow of the forwarding service, may be set by a user, for example, the user may set the length of each data packet in the input flow of the forwarding service to be 64 bits, or 128 bits, or the like.
The packet length randomly jumps within a preset packet length interval, which means that the length of a data packet in the input traffic of the forwarding service can be any value (positive integer) within the preset packet length interval. For example, if the preset packet length interval is [64Bit, 256Bit ], or [64Bit, 9600Bit ], the packet length may be 64Bit, 128Bit, 192Bit, 256Bit, or other length values. Also, the packet lengths of different packets may be different.
The incremental jumping of the packet length in the preset packet length interval means that the length of each data packet in the input flow of the forwarding service can be gradually increased, and the packet length of each data packet is in the preset packet length interval. For example, assuming that the preset packet length interval is [64Bit, 256Bit ], or [64Bit, 9600Bit ], the packet length may be sequentially increased from 64 Bit. Assuming an increment step size of 1Bit, the packet length of the first packet may be 64 bits, the packet length of the second packet may be 65 bits, the packet length of the third packet may be 66 bits, etc. Of course, in practical applications, when the packet length of a certain packet is 256 bits, the packet length of the next packet can be increased from 64 bits again.
The mixing of multiple packet lengths means that data packets with different packet lengths in the input flow of the forwarding service can be mixed according to a certain proportion. For example, assuming that the forwarding service a traffic contains packets with two packet lengths of 64Bit and 1518Bit, the ratio of the two packet lengths may be 7:3, that is, 70% of the packets have a packet length of 64Bit, and 30% of the packets have a packet length of 1518 Bit. In other examples, the forwarding service a traffic includes data packets with four packet lengths of 64Bit, 78Bit, 576Bit, and 1518Bit, and the ratio thereof is 55:5:17:23 in sequence; or, the forwarding service a traffic includes data packets with six packet lengths of 64Bit, 130Bit, 260Bit, 577Bit, 1518Bit and 9000Bit, and the ratio thereof is 449:160:200:80:110:1 in sequence.
Optionally, for each forwarding service in the actual application, in this embodiment, the forwarding service simulation may be performed by using the triplet information. As an input of the simulation test, the triplet information may specifically be { port information, input traffic information, service forwarding path }. Therefore, when the input flow of a plurality of forwarding services is included in a certain port, the triple information (or the service simulation information) corresponding to each forwarding service can be used for representing the service flow of the plurality of forwarding services in the port, so that the superposition of a plurality of forwarding service scenes can be realized, and further, the data path performance requirements in a plurality of different forwarding service scenes can be met based on the configuration parameters determined in the superposed service scene.
S102: and respectively carrying out simulation test on the forwarding service simulation information based on multiple groups of first configuration parameters of the data path to obtain multiple groups of first simulation test results, wherein the multiple groups of first configuration parameters are different configuration parameters, and each group of first simulation test results in the multiple groups of first simulation test results is used for simulating output flow of input flow corresponding to multiple forwarding services after passing through the data path corresponding to one group of first configuration parameters in the multiple groups of first configuration parameters.
Exemplarily, after determining forwarding service simulation information corresponding to each forwarding service, the forwarding service simulation information may be input to a simulation platform for simulation testing; the simulation platform can respectively perform simulation test on the forwarding service simulation information based on a plurality of groups of different configuration parameters of the data path, and can obtain a simulation test result corresponding to each group of configuration parameters. Each group of configuration parameters is a combination of configuration parameters corresponding to each module on the data path, and the configuration parameters corresponding to at least one module on the data path are different among different groups of configuration parameters. For convenience of description, the configuration parameter will be referred to as a first configuration parameter hereinafter. Each set of the obtained simulation test results is used for simulating output flows of input flows corresponding to a plurality of forwarding services after the input flows pass through the data paths corresponding to the corresponding first configuration parameters. For convenience of description, the simulation test result will be referred to as a first simulation test result hereinafter.
It can be understood that, by means of the simulation test, the first simulation test result corresponding to each group of the first configuration parameters can be obtained, so that the flow output corresponding to the group of the first configuration parameters does not need to be tested in the upper board environment. Thus, the efficiency of obtaining test results is generally relatively high, and the hardware overhead required for board-on testing can also be saved.
In an exemplary embodiment, during simulation testing, classes may be utilized to abstractly describe corresponding modules on the datapath. Specifically, a data path or a board/chip carrying the data path may be used as a large class, each module on the data path may be used as an internal class, and correspondingly, a sub-module under each module may be used as the internal class subclass, a public attribute of each module may be used as a parent class member, and a private attribute of each module may be used as a subclass member. In this way, the parameter configuration process is performed on each module on the data path, namely the process of assigning values to the members in the corresponding classes by the simulation platform. Taking a target module on a data path as an example, if the target module can be any module on the data path, parameter configuration is performed on the target module, that is, assignment is performed on members in a class corresponding to the target module in a simulation platform. Wherein, different target modules on the data path can correspond to different target classes, and the configuration parameters of different target modules correspond to member assignments in different target classes.
As an example, depending on the module on the datapath, the class corresponding to the module may be defined in the manner shown in FIG. 2. Taking Total level, RES level, Channel _ Group level, Channel level four-level waterline configuration parameters of the RB module as an example, the assignment may be specifically performed on corresponding members in the RB class, RES class, CHAN _ Group class, CHAN class. Similarly, the process of configuring the parameters of the PA module and the PORT module is similar to the process of configuring the parameters of the EB module, and is not described herein again.
In this way, the simulation platform can assign values to the corresponding class members according to each group of first configuration parameters, so that a parameter configuration process of each module on the data path is simulated, and simulation tests are performed on the input forwarding service simulation information based on the assigned class members to obtain corresponding first simulation test results, so that multiple groups of first simulation test results can be obtained based on different groups of first configuration parameters, and each group of first configuration parameters corresponds to at least one group of first simulation test results.
It should be noted that the simulation platform in this embodiment may specifically be an Electronic System Level (ESL) simulation platform, and may also be other simulation platforms, which is not limited in this embodiment.
S103: according to the obtained multiple groups of first simulation test results, target first configuration parameters corresponding to the target first simulation test results can be determined from the multiple groups of first configuration parameters.
In practical applications, after obtaining a plurality of sets of first simulation test results, a first simulation test result (hereinafter referred to as a target first simulation test result for convenience of description) corresponding to an expected flow output result may be determined, and a set of first configuration parameters used for obtaining the target first simulation test result is used as a final desired determined target first configuration parameter.
Therefore, compared with the process of determining the target first configuration parameter by testing in the on-board environment by a technician, the process of determining the target first configuration parameter by the simulation test has relatively high efficiency, and the hardware environment overhead required by the on-board test can be effectively saved. Meanwhile, the simulation platform can automatically perform simulation tests based on a plurality of groups of different first configuration parameters and provide corresponding first simulation test results, so that the technical personnel are not required to have higher technical analysis capability and rich debugging experience, and the technical requirement of the technical personnel is reduced. In addition, because the platform can perform simulation test on the forwarding service simulation information of a plurality of forwarding services, the finally determined first configuration parameter can meet the performance requirements of the data path under various different forwarding service scenarios.
In practical application, after a plurality of groups of first simulation test results determined by a plurality of groups of different first configuration parameters are utilized based on a simulation platform, machine learning can be performed based on the plurality of groups of first configuration parameters and the plurality of groups of first simulation test results. Therefore, simulation tests are not needed to be carried out by virtue of a simulation platform, and the simulation test results corresponding to each group of configuration parameters can be quickly determined by utilizing the model obtained by machine learning, so that the work input of designers of data paths is further reduced, the labor cost is saved, and the efficiency of determining the configuration parameters is improved.
Referring to fig. 3, fig. 3 is a schematic flowchart illustrating a further method for determining configuration parameters in the embodiment of the present application, and after performing steps S101 to S103 shown in fig. 1, the method may further perform:
step S104: and training to obtain a machine learning model according to the multiple groups of first configuration parameters and the multiple groups of first simulation test results, wherein the input of the machine learning model is each group of first configuration parameters in the multiple groups of first configuration parameters, and the output of the machine learning model is the first simulation test result corresponding to each group of first configuration parameters.
In this embodiment, the first configuration parameters used when the simulation platform performs the simulation test and the first simulation test result obtained based on the set of first configuration parameters may be recorded, and then the first simulation test result may be divided into a sample set and a test set of the training and testing machine learning model.
In the process of training the machine learning model, each group of first configuration parameters in the sample set may be used as input of the machine learning model, and the first simulation test result corresponding to the group of first configuration parameters may be used as output of the machine learning model, so as to train the machine learning model, thereby obtaining the machine learning model by training with the multiple groups of first configuration parameters and the multiple groups of first simulation test results in the sample set.
Then, each group of first configuration parameters included in the test set and the corresponding first simulation test result thereof may be used to test the trained machine learning model. Specifically, each group of first configuration parameters in the test set is used as input of the machine learning model, the machine learning model outputs a result based on the input configuration parameters, the result is compared with a first simulation test result corresponding to the first configuration parameters in the test set, if a preset test requirement is met between the result output by the machine learning model and the corresponding first simulation test result (for example, the similarity reaches a preset standard), the machine learning model can be determined to pass the test, and if the preset test requirement is not met between the result output by the machine learning model and the corresponding simulation test result, the machine learning model can be continuously trained.
As an example, the machine learning model may be constructed based on a Back Propagation (BP) neural network. For example, a BP neural network may be as shown in fig. 4, which includes an input layer, a hidden layer, and an output layer. Assuming that the input traffic of the forwarding service includes traffic with traffic transmission priority from Pri0 to Pri6 at most, each group of first configuration parameters includes n parameters, which are Param respectively0,Param1,Param2,…,Paramn-1Then, when training the machine learning model, each set of the first configuration parameters Param may be set0,Param1,Param2,…,Paramn-1Sending the data into an input layer as sample input of a model, and sequentially corresponding discarding percentages LossPercent of priority flows from Pri0 to Pri7 in the bandwidth0,LossPercent1,LossPercent2,…,LossPercent7The simulation test result is output as a sample of the BP neural network, and the training of the machine learning model (or the BP neural network) is carried out.
Therefore, after the machine learning model is obtained through training, a simulation test can be carried out without using a simulation platform, and for each forwarding service scene or a scene in which multiple forwarding services are overlapped, a simulation test result corresponding to the set of configuration parameters can be rapidly output and obtained by using the machine learning model according to each set of configuration parameters, so that the efficiency of determining the configuration parameters can be further improved. In a specific implementation, the determination of the configuration parameters may be implemented by continuing to execute steps S105 to S107.
S105: a plurality of different sets of second configuration parameters are determined.
After the machine learning model is obtained through training, if configuration parameters meeting the data path performance required in a certain service scene need to be determined, a simulation test result corresponding to each group of configuration parameters can be obtained by using the machine learning model. For convenience of description, the configuration parameters input into the machine learning model are referred to as second configuration parameters, and the finally determined configuration parameters are one set of configuration parameters in the second configuration parameters. The determined multiple groups of different second configuration parameters may be given by a technician, or may be all possible configuration parameter combinations of each module on the traversal data path, and all or part of the configuration parameter combinations may be used as the second configuration parameters in this embodiment.
In a further possible implementation manner, an expected traffic output of an input traffic of a target forwarding service (any one or more services in practical application) after passing through a data path may also be determined, and in a general case, after the input traffic of the target forwarding service is regulated and controlled by configuration parameters of each module on the data path, an output traffic on the data path is consistent with the expected traffic output, which represents that the configuration parameters of each module on the data path at this time can enable performance of the data path to meet requirements in a scenario of the target forwarding service. Therefore, the expected traffic output of the incoming traffic of the target forwarding service after passing through the data path can also be determined.
S106: and respectively inputting the plurality of groups of different second configuration parameters into the machine learning model to obtain a plurality of groups of second simulation test results, wherein the plurality of groups of second simulation test results are output by the machine learning model.
When the simulation test result is obtained, the second configuration parameters may be input into the machine learning model, and the machine learning model outputs the second simulation test result corresponding to each set of the second configuration parameters, so that a plurality of sets of the second simulation test results may be obtained based on the plurality of sets of the second configuration parameters.
S107: and determining a target second simulation test result from the plurality of groups of second simulation test results, wherein the target second simulation test result is consistent with the expected output flow, and the expected output flow is the output flow of the input flow of the target forwarding service after passing through the data path.
In specific implementation, after a plurality of sets of simulation test results are obtained by using the machine learning model, each second simulation test result may be compared with an expected flow output of the input flow of the target forwarding service after passing through the data path, and if there is a flow output represented by the target second simulation test result in the plurality of sets of second simulation test results that is consistent with the expected flow output, a candidate configuration parameter corresponding to the target second simulation test result is the configuration parameter to be determined.
S108: and determining a second configuration parameter corresponding to the target second simulation test result.
After the target second simulation test result is determined based on step S107, when the machine learning model outputs the target second simulation test result, the second configuration parameters input by the machine learning model are determined as the configuration parameters to be determined, that is, the configuration parameters to meet the performance requirement of the data path required by the target forwarding service scenario.
In the process, the simulation test result corresponding to each group of configuration parameters can be obtained by utilizing the machine learning model, and the required simulation test result corresponding to each group of configuration parameters can be obtained without a simulation test mode, so that the efficiency of obtaining the simulation test result can be improved, and the efficiency of determining the configuration parameters can be further improved.
In addition, the embodiment of the application also provides a device for determining the configuration parameters. Referring to fig. 5, fig. 5 is a schematic structural diagram illustrating an apparatus for determining configuration parameters in an embodiment of the present application, where the apparatus 500 includes:
a first determining module 501, configured to determine forwarding service simulation information, where the forwarding service simulation information includes input traffic information and data path behavior, where the input traffic information is used to simulate input traffic corresponding to multiple forwarding services, and the data path behavior is used to simulate a data path through which the input traffic is transmitted;
a simulation test module 502, configured to perform a simulation test on the forwarding service simulation information based on multiple sets of first configuration parameters of the data path, respectively, to obtain multiple sets of first simulation test results, where the multiple sets of first configuration parameters are different configuration parameters, and each set of first simulation test result in the multiple sets of first simulation test results is used to simulate an output flow of an input flow corresponding to the multiple forwarding services after passing through the data path corresponding to one set of first configuration parameters in the multiple sets of first configuration parameters;
a second determining module 503, configured to determine, according to the multiple sets of first simulation test results, a target first configuration parameter corresponding to the target first simulation test result from the multiple sets of first configuration parameters.
In a possible implementation, the input traffic information includes any one or more of a traffic type, a port template, a rate template, a priority template, and a packet length template, and the data path behavior includes port information and/or a traffic forwarding path.
In one possible embodiment, the traffic type includes unicast and/or multicast;
the port template comprises any one or more of self-sending and self-receiving, half offset, symmetrical offset, random offset, full leaf coverage, first leaf coverage and second leaf coverage, leaf interval coverage and random leaf coverage;
the rate template comprises any one or more of burst opening, burst unopened, full flow, half flow and custom percentage flow;
the priority template comprises one or more traffic transmission priorities, and when the priority template comprises the traffic transmission priorities, the proportion among the traffic transmission priorities is a preset proportion and/or a custom proportion;
the packet length template comprises any one or more of a user-defined packet length, random jump of the packet length in a preset packet length interval, incremental jump of the packet length in the preset packet length interval and a mixture of a plurality of packet lengths;
the port information comprises any one or more of port number, physical address convergence MAG source and port rate;
the service forwarding path is used for describing a forwarding path and/or a forwarding delay of the service.
In a possible implementation, the configuration parameters of the target module on the data path are assigned to members in a target class corresponding to the target module, and different target modules on the data path correspond to different target classes.
In a possible implementation, the apparatus 500 further includes:
and the training module is used for training to obtain a machine learning model according to the multiple groups of first configuration parameters and the multiple groups of first simulation test results, wherein the input of the machine learning model is each group of first configuration parameters in the multiple groups of first configuration parameters, and the output of the machine learning model is the first simulation test result corresponding to each group of first configuration parameters.
In a possible implementation, the apparatus 500 further includes:
a third determining module, configured to determine multiple different sets of second configuration parameters;
the input module is used for respectively inputting the plurality of groups of different second configuration parameters into the machine learning model to obtain a plurality of groups of second simulation test results, and the plurality of groups of second simulation test results are output by the machine learning model;
a fourth determining module, configured to determine a target second simulation test result from the multiple groups of second simulation test results, where the target second simulation test result is consistent with an expected output traffic, and the expected output traffic is an output traffic of an input traffic of the target forwarding service after passing through the data path;
and the fifth determining module is used for determining a second configuration parameter corresponding to the target second simulation test result.
In one possible embodiment, the machine learning model is constructed based on a back propagation BP neural network.
It should be noted that, because the contents of information interaction, execution process, and the like between the modules of the above-mentioned apparatus are based on the same concept as that of the method embodiment in the embodiment of the present application, the technical effects brought by the contents are the same as those of the method embodiment in the embodiment of the present application, and for convenience and simplicity of description, the specific working processes of the above-mentioned apparatus and modules may refer to the corresponding processes in the foregoing method embodiment, and are not described herein again.
In addition, an apparatus is also provided in this embodiment, and the apparatus may perform the method for determining the configuration parameter described in the foregoing method embodiment. Referring to fig. 6, fig. 6 shows an exemplary hardware structure diagram of the device, which may be the simulation platform or the device carrying the simulation platform in any of the above embodiments. The apparatus is a hardware structure device, and may be used to implement the functional modules in the device 500 shown in fig. 5. For example, one skilled in the art may appreciate that the first determining module 501, the simulation testing module 502, and the second determining module 503 in the apparatus 500 shown in fig. 5 may be implemented by the at least one processor 601 calling code in the memory 602. Optionally, the device may also be used to implement the functions of the emulation platform or the device carrying the emulation platform in any of the above embodiments.
The device may include at least one processor 601 and at least one memory 602. The processor 601 may be connected to a memory 602, for example, via a bus 603 as shown in FIG. 6. Of course, in practical applications, the connection between the processor 601 and the memory 602 may include various interfaces, transmission lines, or buses, which is not limited in this embodiment.
The memory 602 may be used to store instructions or computer programs;
the processor 601 may be configured to execute the instructions or the computer program and perform the following steps according to the computer program or the instructions:
determining forwarding service simulation information, wherein the forwarding service simulation information comprises input flow information and data path behaviors, the input flow information is used for simulating input flows corresponding to a plurality of forwarding services, and the data path behaviors are used for simulating a data path for transmitting the input flows;
respectively carrying out simulation test on the forwarding service simulation information based on multiple groups of first configuration parameters of the data access to obtain multiple groups of first simulation test results, wherein the multiple groups of first configuration parameters are different configuration parameters, and each group of first simulation test results in the multiple groups of first simulation test results is used for simulating output flow of input flow corresponding to the multiple forwarding services after passing through the data access corresponding to one group of first configuration parameters in the multiple groups of first configuration parameters;
and determining a target first configuration parameter corresponding to the target first simulation test result from the plurality of groups of first configuration parameters according to the plurality of groups of first simulation test results.
In some possible embodiments, the input traffic information includes any one or more of a traffic type, a port template, a rate template, a priority template, and a packet length template, and the data path behavior includes port information and/or a traffic forwarding path.
In some possible embodiments, the traffic type includes unicast and/or multicast;
the port template comprises any one or more of self-sending and self-receiving, half offset, symmetrical offset, random offset, full leaf coverage, first leaf coverage and second leaf coverage, leaf interval coverage and random leaf coverage;
the rate template comprises any one or more of burst opening, burst unopened, full flow, half flow and custom percentage flow;
the priority template comprises one or more traffic transmission priorities, and when the priority template comprises the traffic transmission priorities, the proportion among the traffic transmission priorities is a preset proportion and/or a custom proportion;
the packet length template comprises any one or more of a user-defined packet length, random jump of the packet length in a preset packet length interval, incremental jump of the packet length in the preset packet length interval and a mixture of a plurality of packet lengths;
the port information comprises any one or more of port number, physical address convergence MAG source and port rate;
the service forwarding path is used for describing a forwarding path and/or a forwarding delay of the service.
In some possible embodiments, the configuration parameters of the target module on the data path are assigned to members in a target class corresponding to the target module, and different target modules on the data path correspond to different target classes.
In some possible embodiments, the processor 601 may further perform the following steps according to the computer program or the instructions:
training to obtain a machine learning model according to the multiple groups of first configuration parameters and the multiple groups of first simulation test results, wherein the input of the machine learning model is each group of first configuration parameters in the multiple groups of first configuration parameters, and the output of the machine learning model is the first simulation test result corresponding to each group of first configuration parameters.
In some possible embodiments, the processor 601 may further perform the following steps according to the computer program or the instructions:
determining a plurality of different sets of second configuration parameters;
inputting the plurality of groups of different second configuration parameters into the machine learning model respectively to obtain a plurality of groups of second simulation test results, wherein the plurality of groups of second simulation test results are output by the machine learning model;
determining a target second simulation test result from the plurality of groups of second simulation test results, wherein the target second simulation test result is consistent with an expected output flow, and the expected output flow is the output flow of the input flow of the target forwarding service after passing through the data path;
and determining a second configuration parameter corresponding to the target second simulation test result.
In some possible embodiments, the machine learning model is constructed based on a back propagation BP neural network.
It should be noted that, for the operation content executed by the processor 601 in the device according to the computer program or the instruction stored in the memory 602, since the same concept is based on the method embodiment in the embodiment of the present application, the technical effect brought by the operation content is the same as that of the method embodiment in the embodiment of the present application, and for convenience and brevity of description, the specific working process of the processing execution step described above may refer to the corresponding process in the foregoing method embodiment, and is not described again here.
It should be noted that the processor in the present application may include, but is not limited to, at least one of the following: various computing devices that run software, such as a Central Processing Unit (CPU), a microprocessor, a Digital Signal Processor (DSP), a Microcontroller (MCU), or an artificial intelligence processor, may each include one or more cores for executing software instructions to perform operations or processing. The processor may be a single semiconductor chip, or may be integrated with other circuits to form a system-on-a-chip (system-on-a-chip), or may be integrated as a built-in processor of an application-specific integrated circuit (ASIC), which may be packaged separately or packaged together with other circuits. The processor may further include necessary hardware accelerators such as Field Programmable Gate Arrays (FPGAs), Programmable Logic Devices (PLDs), or logic circuits implementing dedicated logic operations, in addition to cores for executing software instructions to perform operations or processes.
The memory in the embodiment of the present application may include at least one of the following types: read-only memory (ROM) or other types of static memory devices that may store static information and instructions, Random Access Memory (RAM) or other types of dynamic memory devices that may store information and instructions, and may also be electrically erasable programmable read-only memory (EEPROM). In some scenarios, the memory may also be, but is not limited to, a compact disk-read-only memory (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer.
The memory may be separate and coupled to the processor. The memory can store program codes for executing the technical solutions of the embodiments of the present application, and the processor controls the execution of the program codes. For example, the processor is configured to execute the computer program code stored in the memory, so as to implement the technical solution in the embodiment of the present application.
In addition, the present application also provides a computer-readable storage medium, which includes instructions or a computer program, when the computer-readable storage medium runs on a computer, causes the computer to execute the method for determining configuration parameters in the above method embodiments.
In the present application, "of", corresponding "(compatible)" and "corresponding" (compatible) "may be sometimes used in combination, and it should be noted that the intended meanings are consistent when the differences are not emphasized.
It should be noted that in the embodiments of the present application, words such as "exemplary" or "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described herein as "exemplary" or "e.g.," is not necessarily to be construed as preferred or advantageous over other embodiments or designs. Rather, use of the word "exemplary" or "such as" is intended to present concepts related in a concrete fashion.
In the present application, "at least one" means one or more. "plurality" means two or more. "and/or" describes the association relationship of the associated objects, meaning that there may be three relationships, e.g., a and/or B, which may mean: a exists alone, A and B exist simultaneously, and B exists alone, wherein A and B can be singular or plural. The character "/" generally indicates that the former and latter associated objects are in an "or" relationship. "at least one of the following" or similar expressions refer to any combination of these items, including any combination of the singular or plural items. For example, at least one (one) of a, b, or c, may represent: a, b, c, a-b, a-c, b-c, or a-b-c, wherein a, b, c may be single or multiple. In addition, in order to facilitate clear description of technical solutions of the embodiments of the present application, in the embodiments of the present application, terms such as "first" and "second" are used to distinguish the same items or similar items having substantially the same functions and actions. Those skilled in the art will appreciate that the terms "first," "second," etc. do not denote any order or quantity, nor do the terms "first," "second," etc. denote any order or importance.
The system architecture and the service scenario described in the embodiment of the present application are for more clearly illustrating the technical solution of the embodiment of the present application, and do not form a limitation on the technical solution provided in the embodiment of the present application, and as a person of ordinary skill in the art knows that along with the evolution of the network architecture and the appearance of a new service scenario, the technical solution provided in the embodiment of the present application is also applicable to similar technical problems.
In the several embodiments provided in the present application, it should be understood that the disclosed apparatus, device and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application 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 unit, if implemented in the form of a software functional unit and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application may be substantially implemented or contributed to by the prior art, or all or part of the technical solution may be embodied in a software product, which is stored in a storage medium and includes instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: various media capable of storing program codes, such as a usb disk, a removable hard disk, a read-only memory (ROM), a Random Access Memory (RAM), a magnetic disk, or an optical disk.
The above embodiments are only used for illustrating the technical solutions of the present application, and not for limiting the same; although the present application has been described in detail with reference to the foregoing embodiments, it should 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; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present application.

Claims (16)

1. A method of determining configuration parameters, the method comprising:
determining forwarding service simulation information, wherein the forwarding service simulation information comprises input flow information and data path behaviors, the input flow information is used for simulating input flows corresponding to a plurality of forwarding services, and the data path behaviors are used for simulating a data path for transmitting the input flows;
respectively carrying out simulation test on the forwarding service simulation information based on multiple groups of first configuration parameters of the data access to obtain multiple groups of first simulation test results, wherein the multiple groups of first configuration parameters are different configuration parameters, and each group of first simulation test results in the multiple groups of first simulation test results is used for simulating output flow of input flow corresponding to the multiple forwarding services after passing through the data access corresponding to one group of first configuration parameters in the multiple groups of first configuration parameters;
and determining a target first configuration parameter corresponding to the target first simulation test result from the plurality of groups of first configuration parameters according to the plurality of groups of first simulation test results.
2. The method of claim 1, wherein the input traffic information comprises any one or more of a traffic type, a port template, a rate template, a priority template, and a packet length template, and wherein the data path behavior comprises port information and/or a traffic forwarding path.
3. The method of claim 2,
the service type comprises unicast and/or multicast;
the port template comprises any one or more of self-sending and self-receiving, half offset, symmetrical offset, random offset, full leaf coverage, first leaf coverage and second leaf coverage, leaf interval coverage and random leaf coverage;
the rate template comprises any one or more of burst opening, burst unopened, full flow, half flow and custom percentage flow;
the priority template comprises one or more traffic transmission priorities, and when the priority template comprises the traffic transmission priorities, the proportion among the traffic transmission priorities is a preset proportion and/or a custom proportion;
the packet length template comprises any one or more of a user-defined packet length, random jump of the packet length in a preset packet length interval, incremental jump of the packet length in the preset packet length interval and a mixture of a plurality of packet lengths;
the port information comprises any one or more of port number, physical address convergence MAG source and port rate;
the service forwarding path is used for describing a forwarding path and/or a forwarding delay of the service.
4. A method according to any one of claims 1 to 3, wherein configuration parameters of a target module on the data path assign values to members in a target class corresponding to the target module, different target modules on the data path corresponding to different target classes.
5. The method according to any one of claims 1 to 4, further comprising:
training to obtain a machine learning model according to the multiple groups of first configuration parameters and the multiple groups of first simulation test results, wherein the input of the machine learning model is each group of first configuration parameters in the multiple groups of first configuration parameters, and the output of the machine learning model is the first simulation test result corresponding to each group of first configuration parameters.
6. The method of claim 5, further comprising:
determining a plurality of different sets of second configuration parameters;
inputting the plurality of groups of different second configuration parameters into the machine learning model respectively to obtain a plurality of groups of second simulation test results, wherein the plurality of groups of second simulation test results are output by the machine learning model;
determining a target second simulation test result from the plurality of groups of second simulation test results, wherein the target second simulation test result is consistent with an expected output flow, and the expected output flow is the output flow of the input flow of the target forwarding service after passing through the data path;
and determining a second configuration parameter corresponding to the target second simulation test result.
7. The method of claim 5 or 6, wherein the machine learning model is constructed based on a Back Propagation (BP) neural network.
8. An apparatus for determining configuration parameters, the apparatus comprising:
a first determining module, configured to determine forwarding service simulation information, where the forwarding service simulation information includes input traffic information and data path behavior, where the input traffic information is used to simulate input traffic corresponding to multiple forwarding services, and the data path behavior is used to simulate a data path through which the input traffic is transmitted;
a simulation test module, configured to perform a simulation test on the forwarding service simulation information based on multiple sets of first configuration parameters of the data path, respectively, to obtain multiple sets of first simulation test results, where the multiple sets of first configuration parameters are different configuration parameters, and each set of first simulation test result in the multiple sets of first simulation test results is used to simulate an output flow of an input flow corresponding to the multiple forwarding services after passing through the data path corresponding to one set of first configuration parameters in the multiple sets of first configuration parameters;
and the second determining module is used for determining a target first configuration parameter corresponding to the target first simulation test result from the plurality of groups of first configuration parameters according to the plurality of groups of first simulation test results.
9. The apparatus of claim 8, wherein the input traffic information comprises any one or more of a traffic type, a port template, a rate template, a priority template, and a packet length template, and wherein the data path behavior comprises port information and/or a traffic forwarding path.
10. The apparatus of claim 9,
the service type comprises unicast and/or multicast;
the port template comprises any one or more of self-sending and self-receiving, half offset, symmetrical offset, random offset, full leaf coverage, first leaf coverage and second leaf coverage, leaf interval coverage and random leaf coverage;
the rate template comprises any one or more of burst opening, burst unopened, full flow, half flow and custom percentage flow;
the priority template comprises one or more traffic transmission priorities, and when the priority template comprises the traffic transmission priorities, the proportion among the traffic transmission priorities is a preset proportion and/or a custom proportion;
the packet length template comprises any one or more of a user-defined packet length, random jump of the packet length in a preset packet length interval, incremental jump of the packet length in the preset packet length interval and a mixture of a plurality of packet lengths;
the port information comprises any one or more of port number, physical address convergence MAG source and port rate;
the service forwarding path is used for describing a forwarding path and/or a forwarding delay of the service.
11. The apparatus of any of claims 8 to 10, wherein configuration parameters of a target module on the data path assign values to members in a target class corresponding to the target module, and wherein different target modules on the data path correspond to different target classes.
12. The apparatus of any one of claims 8 to 11, further comprising:
and the training module is used for training to obtain a machine learning model according to the multiple groups of first configuration parameters and the multiple groups of first simulation test results, wherein the input of the machine learning model is each group of first configuration parameters in the multiple groups of first configuration parameters, and the output of the machine learning model is the first simulation test result corresponding to each group of first configuration parameters.
13. The apparatus of claim 12, further comprising:
a third determining module, configured to determine multiple different sets of second configuration parameters;
the input module is used for respectively inputting the plurality of groups of different second configuration parameters into the machine learning model to obtain a plurality of groups of second simulation test results, and the plurality of groups of second simulation test results are output by the machine learning model;
a fourth determining module, configured to determine a target second simulation test result from the multiple groups of second simulation test results, where the target second simulation test result is consistent with an expected output traffic, and the expected output traffic is an output traffic of an input traffic of the target forwarding service after passing through the data path;
and the fifth determining module is used for determining a second configuration parameter corresponding to the target second simulation test result.
14. The apparatus of claim 12 or 13, wherein the machine learning model is constructed based on a Back Propagation (BP) neural network.
15. An apparatus, comprising: a processor and a memory;
the memory for storing instructions or computer programs;
the processor, for executing the instructions or the computer program, performs the method of any one of claims 1-7.
16. A computer-readable storage medium, comprising instructions or a computer program which, when run on a computer, cause the computer to perform the method of any of the preceding claims 1-7.
CN202010170690.0A 2020-03-12 2020-03-12 Method for determining configuration parameters and related equipment Active CN113392607B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010170690.0A CN113392607B (en) 2020-03-12 2020-03-12 Method for determining configuration parameters and related equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010170690.0A CN113392607B (en) 2020-03-12 2020-03-12 Method for determining configuration parameters and related equipment

Publications (2)

Publication Number Publication Date
CN113392607A true CN113392607A (en) 2021-09-14
CN113392607B CN113392607B (en) 2024-02-02

Family

ID=77615748

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010170690.0A Active CN113392607B (en) 2020-03-12 2020-03-12 Method for determining configuration parameters and related equipment

Country Status (1)

Country Link
CN (1) CN113392607B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113992507A (en) * 2021-10-11 2022-01-28 新华三信息安全技术有限公司 Method, device, server and storage medium for determining default parameter value
CN114003310A (en) * 2021-10-29 2022-02-01 深信服科技股份有限公司 Parameter selection method, device, equipment and medium based on service scene
CN114331917A (en) * 2022-03-08 2022-04-12 深圳比特微电子科技有限公司 Equipment debugging method and controller
CN114428748A (en) * 2022-03-30 2022-05-03 北京数腾软件科技有限公司 Simulation test method and system for real service scene
CN116056245A (en) * 2022-07-19 2023-05-02 荣耀终端有限公司 Data scheduling method, device and computer readable storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040127212A1 (en) * 2002-12-27 2004-07-01 Wang Jian Chung Apparatus, system and method for network testing
US20170026276A1 (en) * 2015-07-20 2017-01-26 Schweitzer Engineering Laboratories, Inc. Simulating, visualizing, and searching traffic in a software defined network
US20190311290A1 (en) * 2018-04-06 2019-10-10 Mentor Graphics Corporation Deep Learning Based Test Compression Analyzer
US20190325108A1 (en) * 2019-06-28 2019-10-24 Intel Corporation Systems and methods for determining a configuration for a microarchitecture
CN110728096A (en) * 2018-06-29 2020-01-24 三星电子株式会社 Method for manufacturing integrated circuit and computing system for designing integrated circuit

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040127212A1 (en) * 2002-12-27 2004-07-01 Wang Jian Chung Apparatus, system and method for network testing
US20170026276A1 (en) * 2015-07-20 2017-01-26 Schweitzer Engineering Laboratories, Inc. Simulating, visualizing, and searching traffic in a software defined network
US20190311290A1 (en) * 2018-04-06 2019-10-10 Mentor Graphics Corporation Deep Learning Based Test Compression Analyzer
CN110728096A (en) * 2018-06-29 2020-01-24 三星电子株式会社 Method for manufacturing integrated circuit and computing system for designing integrated circuit
US20190325108A1 (en) * 2019-06-28 2019-10-24 Intel Corporation Systems and methods for determining a configuration for a microarchitecture

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113992507A (en) * 2021-10-11 2022-01-28 新华三信息安全技术有限公司 Method, device, server and storage medium for determining default parameter value
CN113992507B (en) * 2021-10-11 2023-10-27 新华三信息安全技术有限公司 Method, device, server and storage medium for determining default parameter values
CN114003310A (en) * 2021-10-29 2022-02-01 深信服科技股份有限公司 Parameter selection method, device, equipment and medium based on service scene
CN114331917A (en) * 2022-03-08 2022-04-12 深圳比特微电子科技有限公司 Equipment debugging method and controller
CN114331917B (en) * 2022-03-08 2022-06-21 深圳比特微电子科技有限公司 Equipment debugging method and controller
CN114428748A (en) * 2022-03-30 2022-05-03 北京数腾软件科技有限公司 Simulation test method and system for real service scene
CN116056245A (en) * 2022-07-19 2023-05-02 荣耀终端有限公司 Data scheduling method, device and computer readable storage medium
CN116056245B (en) * 2022-07-19 2023-10-20 荣耀终端有限公司 Data scheduling method, device and computer readable storage medium

Also Published As

Publication number Publication date
CN113392607B (en) 2024-02-02

Similar Documents

Publication Publication Date Title
CN113392607A (en) Method for determining configuration parameters and related equipment
Miranda et al. Appia, a flexible protocol kernel supporting multiple coordinated channels
US10496770B2 (en) System level simulation in Network on Chip architecture
Mehraghdam et al. Specifying and placing chains of virtual network functions
US7555420B2 (en) Method and system for network emulation
CN108768692A (en) A kind of network creation method, relevant device and system
EP2924934A1 (en) Ethernet switch and method for establishing forwarding patterns in an Ethernet switch
CN107566204B (en) Excitation message generation control method and device and logic detection equipment
CN106789652A (en) Service shunting method and device
CN109587010A (en) A kind of method for detecting connectivity, stream forwarding device and network controller
CN115168240B (en) Variable combination time sequence function coverage rate-based test method and system
CN108228965B (en) Simulation verification method, device and equipment for memory cell
CN104853447B (en) A kind of data information processing method and device
CN109412976B (en) Data transmission method, device, system, server, electronic device and medium
Eganyan et al. DCNSimulator–Software Tool for SpaceWire Networks Simulation
CN107025084A (en) virtual desktop sharing method and device
US20170046306A1 (en) Data processing method, processor, and data processing device
Ferreira et al. Neco: Network coding simulator
JP2018516390A (en) Data transmission control system, method, chip array and display
CN113238897B (en) System-level test method and device for chip, computer equipment and storage medium
CN108762902A (en) Multi-scenario tasks dispatching method and device in Distributed Calculation based on Spark
Chen et al. A scalable framework of testbed for sdn simulation with multiple controllers
Klauck et al. The distributed complexity of large-scale graph processing
Teshabayev et al. The formation of the structure of a multiservice network based on communication equipment from different manufacturers
Gliksberg et al. Node-type-based load-balancing routing for Parallel Generalized Fat-Trees

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