+

CN111565131A - Speed measuring method and system for household gateway CPU - Google Patents

Speed measuring method and system for household gateway CPU Download PDF

Info

Publication number
CN111565131A
CN111565131A CN202010325642.4A CN202010325642A CN111565131A CN 111565131 A CN111565131 A CN 111565131A CN 202010325642 A CN202010325642 A CN 202010325642A CN 111565131 A CN111565131 A CN 111565131A
Authority
CN
China
Prior art keywords
speed measurement
data packet
network card
measurement data
speed
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
CN202010325642.4A
Other languages
Chinese (zh)
Other versions
CN111565131B (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.)
China Information And Communication Technology Group Co ltd
Fiberhome Telecommunication Technologies Co Ltd
Original Assignee
China Information And Communication Technology Group Co ltd
Fiberhome Telecommunication 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 China Information And Communication Technology Group Co ltd, Fiberhome Telecommunication Technologies Co Ltd filed Critical China Information And Communication Technology Group Co ltd
Priority to CN202010325642.4A priority Critical patent/CN111565131B/en
Publication of CN111565131A publication Critical patent/CN111565131A/en
Application granted granted Critical
Publication of CN111565131B publication Critical patent/CN111565131B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0894Packet rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]

Landscapes

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

Abstract

The invention discloses a method and a system for measuring the speed of a home gateway CPU (central processing unit), which relate to the field of gateway speed measurement, and comprise the steps of establishing TCP (transmission control protocol) connection with a speed measurement server; determining quintuple information of a speed measurement data packet sent by a speed measurement server, configuring the speed measurement data packet, and receiving the speed measurement data packet to a network card; the network card starts an LRO (line replaceable operation) and receives N speed measurement data packets every time, packages the speed measurement data packets into a transmission data packet and sends the transmission data packet to a network card protocol stack; the network card protocol stack unpacks the transmission data packet into N speed measurement data packets, obtains N response data packets through ACK response of the network card protocol stack, sends the N response data packets to the network card, and accumulates the receiving data length L of the speed measurement data packets; the network card starts the LSO and returns a response data packet to the speed measurement server; and (4) obtaining the length L of the received data twice at an interval of time T, and calculating the data transmission rate of the network card according to the change of the L. The invention can reduce the influence of speed measuring environments such as other uplink and downlink messages, network protocols and the like on the gateway speed test.

Description

Speed measuring method and system for household gateway CPU
Technical Field
The invention relates to the field of gateway speed measurement, in particular to a method and a system for measuring the speed of a home gateway CPU.
Background
With the development of big data and the popularization and application of intelligent terminals, the home gateway serving as a core of home network networking has access to various services including a set top box, a router, a phone and the like.
However, based on the rapid development of the current internet big data large throughput; in view of the application of high-definition video and data transmission, an operator also needs to know the bandwidth size and bandwidth stability of a home network user, and therefore, the network speed of the home gateway needs to be tested.
Currently, there are two verification tests for broadband rate by operators, one is the forwarding rate of the gateway: the uplink and downlink data packets are forwarded to the forwarding capability of the downlink set-top box, the downlink PC or the downlink wireless terminal through the gateway, namely, the gateway chip finishes the acceleration of the messages used by the existing networks such as TCP/UDP and the like by learning five-tuple information (source IP, destination IP, source port, destination port and protocol type) of the messages through hard acceleration and soft acceleration, thereby finishing the forwarding performance improvement of the uplink and downlink speed; the other is the chip download capability of the gateway: and the data packet judges whether the processing interaction capacity and the stability of the gateway chip on the data packet meet the service requirements of the current network users or not through the improvement of the downloading rate performance of the gateway chip.
However, at present, due to the diversity of gateway schemes and the difference of chip processing capabilities, the result of the test rate is closely related to the chip main frequency and the optimization of the data path of the protocol stack, further, the broadband rate test passes through the PON side and the protocol stack itself, and the uplink and downlink messages of other non-download servers have a large influence on the test result, so that the rate statistics does not reach the theoretical processing speed of the chip and the rate fluctuation is large.
Furthermore, when the performance of the gateway processor is insufficient, the data packet is carried out by the LINUX protocol stack and HOOK is loaded, so that the problem that the speed measurement cannot reach the standard is caused.
Disclosure of Invention
Aiming at the defects in the prior art, the invention aims to provide a method and a system for measuring the speed of a home gateway CPU (central processing unit), which can reduce the influence of speed measuring environments such as other uplink and downlink messages, network protocols and the like on the speed test of a gateway.
In order to achieve the above object, in a first aspect, an embodiment of the present invention provides a method for measuring a speed of a home gateway CPU, including:
establishing TCP connection with a speed measuring server;
determining quintuple information of a speed measurement data packet sent by a speed measurement server, configuring the speed measurement data packet, and receiving the speed measurement data packet to a network card;
enabling an LRO (line replaceable operation) by the network card, packaging the network card into a transmission data packet when the network card receives N speed measurement data packets, wherein N is an integer greater than 1, and sending the transmission data packet to a network card protocol stack; the network card protocol stack receives the transmission data packet, unpacks the transmission data packet into N speed measurement data packets according to quintuple information, obtains N response data packets by the speed measurement data packet through ACK response of the network card protocol stack, sends the response data packets to the network card, and accumulates the receiving data length L of the speed measurement data packets; the network card starts the LSO to return a response data packet to the speed measurement server;
and (4) obtaining the length L of the received data twice at an interval of time T, and calculating the data transmission rate of the network card according to the change of the L.
As a preferred embodiment, the establishing a TCP connection with the tachometer server includes:
receiving a speed measurement parameter by an application state;
the application state downloads a speed measurement data packet from a speed measurement server;
and the application state removes the timestamp in the speed measurement data packet, interacts with the TCP of the speed measurement server for the first time, and establishes TCP connection.
As a preferred embodiment, the determining five-tuple information of a tachometer data packet sent by a tachometer server and configuring the tachometer data packet includes:
the kernel mode receives a speed measurement data packet and quintuple information from the application mode;
the kernel mode learns the quintuple information and configures that a subsequent speed measurement data packet is received by the network card according to the quintuple information;
wherein, the configuration is according to quintuple information, and subsequent speed measuring data packet is received by the network card, including:
judging whether the target IP in the speed measurement data packet is the same as the target IP of the target quintuple information or not;
judging whether the PROTOCOL types of the messages in the speed measurement data packet are the same as the target types of the target quintuple information or not;
if the data packets are the same, the message in the data packet is a TX ACK TCP message, and subsequent TCP message interaction is set to be processed by the network card without going through a protocol stack.
As a preferred embodiment, the network card protocol stack receives the transmission data packet, unpacks the transmission data packet into N speed measurement data packets according to quintuple information, where the speed measurement data packets obtain N response data packets through ACK response of the network card protocol stack, and the method includes:
the network card protocol stack receives the transmission data packet;
unpacking the transmission data packet into N speed measurement data packets according to quintuple information;
initializing response ACK configuration, and if a source IP address in a speed measurement data packet is a speed measurement server configuration address and contains a TCP message, acquiring attributes of the speed measurement data packet, wherein the attributes comprise whether VLAN and IPOE/PPPOE protocol types are supported or not;
and reassigning the ACK _ NUM according to the attribute of the speed measurement data packet, and inserting the message sequence number into the head of the reconstructed message to obtain a response data packet.
As a preferred embodiment, the interval time T, which is obtained twice by the length L of the received data, and calculates the data transmission rate of the network card according to the change of the length L, includes:
after TCP connection is established with a speed measurement server, the kernel state initializes the length L of the received data to zero;
and taking out the L from the kernel mode at two times by the user mode interval time T, and dividing the difference value of the L at the two times by the T to obtain the L.
In a second aspect, an embodiment of the present invention further provides a speed measurement system for a home gateway CPU, where the speed measurement system includes:
the connection module is used for establishing TCP connection with the speed measuring server;
the configuration module is used for determining quintuple information of a speed measurement data packet sent by the speed measurement server, configuring the speed measurement data packet and receiving the speed measurement data packet to the network card;
the transmission module is used for configuring a network card to enable LRO, encapsulating the network card into a transmission data packet when the network card receives N speed measurement data packets, wherein N is an integer greater than 1, and sending the transmission data packet to a network card protocol stack; the network card protocol stack receives the transmission data packet, unpacks the transmission data packet into N speed measurement data packets according to quintuple information, obtains N response data packets by the speed measurement data packets through ACK response of the network card protocol stack, sends the response data packets to the network card, and accumulates the receiving data length L of the speed measurement data packets; the network card starts the LSO and returns a response data packet to the speed measurement server;
and the calculation module is used for acquiring the received data length L twice at intervals of time T and calculating the data transmission rate of the network card according to the change of the L.
As a preferred embodiment, the connection module is further configured to:
receiving a speed measurement parameter through an application state;
downloading a speed measurement data packet from a speed measurement server through the application state;
and removing the timestamp in the speed measurement data packet through the application state, and establishing TCP connection through the first TCP interaction with the speed measurement server.
As a preferred embodiment, the configuration module is further configured to:
receiving a speed measurement data packet and quintuple information from an application state through a kernel state;
learning the quintuple information through a kernel mode, and configuring a subsequent speed measurement data packet to be received by a network card according to the quintuple information;
wherein, the configuration is according to quintuple information, and subsequent speed measuring data packet is received by the network card, including:
judging whether the target IP in the speed measurement data packet is the same as the target IP of the target quintuple information or not;
judging whether the PROTOCOL types of the messages in the speed measurement data packet are the same as the target types of the target quintuple information or not;
if the data packets are the same, the message in the data packet is a TX ACK TCP message, and subsequent TCP message interaction is set to be processed by the network card without going through a protocol stack.
As a preferred embodiment, the transmission module is further configured to:
receiving the transmission data packet through a network card protocol stack;
unpacking the transmission data packet into N speed measurement data packets according to quintuple information;
initializing response ACK configuration, and if a source IP address in a speed measurement data packet is a speed measurement server configuration address and contains a TCP message, acquiring attributes of the speed measurement data packet, wherein the attributes comprise whether VLAN and IPOE/PPPOE protocol types are supported or not;
and reassigning the ACK _ NUM according to the attribute of the speed measurement data packet, and inserting the message sequence number into the head of the reconstructed message to obtain a response data packet.
As a preferred embodiment, the calculation module is further configured to:
after TCP connection with a speed measurement server is established, initializing the length L of the received data to be zero through the kernel state;
and taking out the L from the kernel mode in two times through the user mode interval time T, and dividing the difference value of the L in the two times by the T acquisition speed.
Compared with the prior art, the invention has the advantages that:
when the connection is established, the speed measuring method and the speed measuring system for the home gateway CPU adopt the network card to take over the subsequent TCP connection through the learning of quintuple, the optimized judgment processing of the message only taking the speed measuring server address as the source address and the destination address does not influence the interaction of normal data messages at all, and the speed measuring data packet can be directly transmitted from the speed measuring server to the network card, thereby reducing the transmission distance of a data channel and reducing the message interaction times with the speed measuring server. Furthermore, after the network card receives the speed measurement data packet, the network card packages the speed measurement data packets through hardware to combine the speed measurement data packets into a large data packet, so that the influence of uplink and downlink messages of a non-server address on the speed in the current network environment is reduced, meanwhile, the interaction consumption of a CPU terminal and the transmission of each data packet is reduced, the speed measurement data packet can be transmitted from the network card to a network card protocol stack more efficiently, the resource consumption of the CPU is reduced, and the time slice processing of the CPU is optimized. Furthermore, the invention unpacks the software through the network card protocol stack, and the CPU goes up to return the package, so that more messages are received and sent in unit time. Finally, the invention directly completes the statistics of the data packet length through the interaction with the kernel mode, and reduces the longer interaction time of the application mode caused by reading the system file in the application mode, thereby ensuring that the statistical speed in unit time is more accurate.
It should be further noted that the speed measurement data packet is not processed by the Linux protocol stack any more, so that the problem that the processing of the data message by skipping the point NETFILTER HOOK formed by two or three points in BRIDGE/ROUTE for optimizing the downloading performance is effectively avoided, and further, the influence on the normal data message processing of the home gateway due to hook shielding processing in the home gateway service is reduced.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings corresponding to the embodiments are briefly introduced below, and it is obvious that the drawings in the following description are some embodiments of the present invention, and it is obvious for those skilled in the art that other drawings can be obtained according to these drawings without creative efforts.
Fig. 1 is a flowchart of an embodiment of a method for measuring a speed of a home gateway CPU according to the present invention;
fig. 2 is a flowchart of step S1 in the embodiment of the method for measuring the speed of the CPU in the home gateway according to the present invention;
fig. 3 is a flowchart of step S2 in the embodiment of the method for measuring the speed of the CPU in the home gateway according to the present invention;
fig. 4 is a flowchart of step S3 in the embodiment of the method for measuring the speed of the CPU in the home gateway according to the present invention;
fig. 5 is another flowchart of an embodiment of a method for measuring a speed of a home gateway CPU according to the present invention;
fig. 6 is another flowchart of an embodiment of a method for measuring a speed of a home gateway CPU according to the present invention;
fig. 7 is a schematic structural diagram of a speed measurement system of a home gateway CPU.
Detailed Description
Embodiments of the present invention will be described in further detail below with reference to the accompanying drawings.
The embodiment of the invention provides a method and a system for measuring the speed of a home gateway CPU (Central processing Unit), wherein a plurality of data packets are packaged into one by hardware and then sent to a network card protocol module for reconstruction and packet return, so that the influence of the environment on the speed measurement can be reduced.
In order to achieve the technical effects, the general idea of the application is as follows:
establishing TCP connection with a speed measurement server, determining quintuple information of a speed measurement data packet sent by the speed measurement server, configuring the speed measurement data packet, and receiving the speed measurement data packet to a network card;
enabling an LRO (line replaceable operation) by the network card, packaging the network card into a transmission data packet when the network card receives N speed measurement data packets, wherein N is an integer greater than 1, and sending the transmission data packet to a network card protocol stack; the network card protocol stack receives the transmission data packet, unpacks the transmission data packet into N speed measurement data packets according to quintuple information, obtains N response data packets by the speed measurement data packet through ACK response of the network card protocol stack, sends the response data packets to the network card, and accumulates the receiving data length L of the speed measurement data packets; the network card starts the LSO to return a response data packet to the speed measurement server;
and (4) obtaining the length L of the received data twice at an interval of time T, and calculating the data transmission rate of the network card according to the change of the L.
In the transmission of gateway data packets, bandwidth rate testing can be affected by various factors, including uplink and downlink messages of other non-download servers combined with data path optimization of a protocol stack, where the optimization causes the test data packets to need to go through the protocol stack interactively, which further causes data path extension, and is finally susceptible to rate instability caused by environmental factors. Meanwhile, the data packet transmission needs a plurality of ports for interaction and transmission, and the interaction also takes more time, thereby affecting the accuracy of the test. After receiving the test data packets from the test server, the invention encapsulates the data packets into big packets and sets the special channels for the speed measurement data packets, thereby reducing the interaction flow and the flow path of the data packets, further reducing the influence of the environment on transmission and improving the data test effect.
In order to better understand the technical solution, the following detailed description is made with reference to specific embodiments.
Referring to fig. 1, an embodiment of the present invention provides a method for measuring a speed of a home gateway CPU, including:
s1: establishing TCP connection with a speed measuring server;
s2: determining quintuple information of a speed measurement data packet sent by a speed measurement server, configuring the speed measurement data packet, and receiving the speed measurement data packet to a network card.
In steps S1 to S2, after the TCP connection with the speed measurement server is completed, the home gateway can be ensured to directly take over the established TCP interaction through the network card by determining the quintuple information in the speed measurement data packet, thereby reducing the data path transmission distance and reducing the message interaction times. Furthermore, the invention also configures a speed measurement data packet to be capable of being packaged at the network card hardware, the test server sends the speed measurement data packet to the network card and packages the speed measurement data packet through the network card, CPU interruption is reduced, and after the packaging is finished, the transmission time of a plurality of data packets is reduced by only transmitting one big packet within the same time, so that the speed measurement performance in unit time can be larger, the network card performance is greatly utilized to reduce CPU resource consumption, and the CPU time slice processing is optimized.
Specifically, as shown in fig. 2, the establishing of the TCP connection with the speed measurement server in step S1 includes:
s101, receiving a speed measurement parameter by an application state;
and S102, downloading the speed measurement data packet from the speed measurement server in the application state.
And S103, removing the time stamp in the speed measurement data packet by the application state, interacting with the TCP of the speed measurement server for the first time, and establishing TCP connection.
At the test place, the home gateway and the test server will communicate and exchange the speed measurement parameters, and then the speed measurement is started. The invention is configured to receive the speed measurement parameters through the application state of the home gateway, complete the interaction with the speed measurement server and further download the speed measurement data packet from the speed measurement server. And have redundant information such as this timestamp in the data package tests the speed, consequently, the configuration is used the state and is got rid of the timestamp in the data package that tests the speed, rejects useless information in the data package, can effectively reduce the size of data package, reduces data transmission's pressure, and the data package diminishes simultaneously makes its transmission completion time faster, tests the speed more accurate, efficiency. Further, the data packets are TCP packets, and when the N data packets are encapsulated into one transmission data packet through the network card, an echo command is called to remove a timestamp field in the TCP packet.
The transmission data packet is directly sent to the network card protocol stack without being processed by the LINUX protocol stack, so that the influence on normal data message processing of the home gateway due to shielding hook processing in the home gateway service due to the fact that the data message is processed by skipping two layers and three layers NETFILTER HOOK in BRIDGE and ROUTE for optimizing the rate downloading performance is avoided.
Further, as shown in fig. 3, in step S2, determining quintuple information of a speed measurement data packet sent by the speed measurement server, and configuring the speed measurement data packet includes:
s201, a kernel mode receives a speed measurement data packet and quintuple information from an application mode;
s202, the kernel mode learns the quintuple information and configures that a subsequent speed measurement data packet is received by the network card according to the quintuple information;
wherein, the configuration is according to quintuple information, and subsequent speed measuring data packet is received by the network card, including:
S202A, judging whether the target IP in the speed measurement data packet is the same as the target IP of the target quintuple information;
S202B, judging whether the PROTOCOL types of the messages in the speed measurement data packet are the same as the target types of the target quintuple information;
if the data packets are the same, the message in the data packet is a TX ACK TCP message, and subsequent TCP message interaction is set to be processed by the network card without going through a protocol stack.
In the conventional gateway speed measurement, a transmission path of a speed measurement data packet is not usually directly specified, and the speed measurement data packet can be transmitted to a target address after being transferred and stored and waited for by a relatively complex process. Therefore, the configuration kernel mode receives the quintuple information from the application mode and further learns the quintuple information, and a path is appointed for the speed measurement data packet according to the learned content, namely, the subsequent speed measurement data packet is directly received by the network card and is not influenced by the path, protocol decision and the like, so that the unreal speed measurement result caused by unsmooth transmission is avoided.
It should be noted that, the kernel mode used in the present invention is a hardware resource for controlling a computer in an operating system, and provides an environment for running an upper application program; the user mode is an activity space of an upper application program, and the execution of the application program must depend on resources provided by a kernel, including CPU resources, storage resources, I/O resources and the like.
S3, starting the LRO by the network card, packaging the network card into a transmission data packet when the network card receives N speed measurement data packets, wherein N is an integer greater than 1, and sending the transmission data packet to a network card protocol stack; the network card protocol stack receives the transmission data packet, unpacks the transmission data packet into N speed measurement data packets according to quintuple information, obtains N response data packets by the speed measurement data packets through ACK response of the network card protocol stack, sends the response data packets to the network card, and accumulates the receiving data length L of the speed measurement data packets; and the network card starts the LSO to return a response data packet to the speed measurement server.
The invention further configures the network card to package the hardware, unpacks the software, and configures the path of the speed measuring package transmitted in the network card to be transmitted from the network card to the network card protocol stack. The designated path saves the judgment of a data packet transmission path, the packet unpacking saves the transmission time of the data packet, the data packets are not required to be independently interacted and transmitted but are sent together, and the time slice of the CPU can better arrange and finish the transmission of the data packet.
And the network card enters an LRO mode and combines the N data packets into one transmission data packet.
In an LRO (Large Receive Offload) mode, a plurality of received TCP data are aggregated into a Large data packet and then transmitted to a network protocol stack for processing, so as to reduce the overhead of an upper protocol stack and improve the capability of a system to Receive the TCP data packet. The encapsulation of each data packet of N can be more effectively finished, and a transmission data packet after shaping is transmitted out. Meanwhile, manpower and material resources for manual setting and maintenance of personnel are reduced.
And packaging the ten packets into a big packet at the hardware through an LRO mechanism, transmitting the big packet to a network card protocol stack, analyzing and unpacking the message according to the quintuple information after the big packet reaches the network card protocol stack, and reconstructing the message after unpacking to complete TCP (transmission control protocol) packet return. The method can effectively reduce the process of transmitting the packet interactive process with N data numbers to one packet.
Further, after receiving the speed measurement data packet, the invention starts to accumulate the data length L of the speed measurement data packet, so as to facilitate the subsequent gateway speed test.
Specifically, as shown in fig. 4, the receiving, by the network card protocol stack, the transmission data packet, and unpacking the transmission data packet into N speed measurement data packets according to quintuple information, where the speed measurement data packet obtains N response data packets through an ACK response of the network card protocol stack, and the method includes:
s301, a network card protocol stack receives the transmission data packet;
s302, unpacking the transmission data packet into N speed measurement data packets according to quintuple information;
s303, initializing response ACK configuration, and if the source IP address in the speed measurement data packet is a speed measurement server configuration address and contains a TCP message, acquiring the attribute of the speed measurement data packet, wherein the attribute comprises whether VLAN and IPOE/PPPOE protocol types are supported;
s304, reassigning the ACK _ NUM according to the attribute of the speed measurement data packet, and inserting the message serial number into the head of the reconstructed message to obtain a response data packet.
And after receiving the transmission data packet, the network card protocol stack further unpacks the transmission data packet according to the quintuple information, and further processes and reconstructs the transmission data packet according to the attribute of the speed measurement data packet to obtain a response data packet.
Finally, the speed measurement server is returned in the form of N data packets, that is, messages with the address of the speed measurement server as a source address and a destination address are optimized and judged, so that the speed measurement data packets can be subjected to speed test through the home gateway under the condition that the speed measurement data packets are not influenced by other protocols and the environment of the data packets.
It should be noted that the attribute of the speed measurement data packet is specifically a parameter for determining the type of the speed measurement data packet, and if the speed measurement data packet supports the VLAN and IPOE/PPPOE protocol types, the gateway can adjust the description content in the data packet according to the attribute/parameter of the speed measurement data. For example, the gateway can reassign the serial number of the velocity measurement data packet according to whether the gateway is provided with a VLAN or not and the difference of types of IPOE/PPPOE protocols, and increase the number of the received velocity measurement data packets, thereby reconstructing the message header of the message corresponding to the velocity measurement data packet.
S4, obtaining the length L of the received data twice at intervals of time T, and calculating the data transmission rate of the network card according to the change of the L
In summary, the steps S1 to S4 directly assign the speed measurement packet sent by the server to a path inside the gateway, and directly perform configuration processing, so as to avoid the influence of most protocols such as waiting and forwarding, reduce the influence of congestion of other upper and lower messages, and ensure the accuracy of speed measurement of the gateway.
For example, as shown in fig. 5, the speed measurement includes the following steps:
t1, the gateway software starts to read the length of the real-time received message, and the process goes to T2;
t2, the gateway software creates an AF _ INET mode socket, generates a handle and turns to T3;
t3, the gateway software establishes ioctl, sets the execution flag position op as get _ len (i.e. the length L of the received data in kernel mode), transmits the get _ len to the network card, and turns to T4;
t4, the network card performs copy _ to _ user real-time acquisition of the wget _ len data packet according to the state of the execution flag bit op of the copy _ from _ user, and the operation goes to T5;
t5, the gateway software obtains real-time wget _ len1 (namely the received data length L at the time of the kernel state) transmitted from the network card according to the return value of ioctl, and then the operation is switched to T6;
t6, waiting for time T by gateway software, and then obtaining the statistical value of wget _ len2 (namely the received data length L of the kernel state) at the next time by ioctl again;
t7, calculating average speed according to the difference between wget _ len1 and wget _ len2 and T.
When the home gateway performs HTTP/FTP connection, after initial connection is established, assigning a user state variable fast _ ack _ enable to be true, and when entering a download queue through established tcp connection (retrieve _ file _ data () function), setting an execution flag position op to be start, transmitting the execution flag position op to a network card through ioctl (namely, setting a kernel state variable copy _ ack _ enable to be true), and synchronously transmitting an IP address, a port and a PROTOCOL type; then, the ioctl acquires the configuration transmitted by the server through copy _ from _ user, assigns global variables of relevant parameters, synchronously initializes the length of received bytes wget _ len to be 0, starts a quick response function of the network card, and removes the offset of tcp data packet option relative to the timestamp;
in the TX uplink direction, according to the IP address of the server transmitted by the server, the destination address in the data packet is matched and compared, the protocol type of the message in the data packet is matched, the destination address is considered to be a TX ACK TCP message, the identification ID in the TX direction is taken out, the interaction ID of the subsequent TCP message is increased progressively according to the ID, when the kernel mode variable copy _ ACK _ ready is true, the network card can directly extract the relevant ACK message from the message, namely, the interaction (RX/TX) of the subsequent TCP message is not received by other protocol stacks, but is directly received by the network card. Namely, the network card learns the quintuple in the data packet and finishes the extraction of the effective data and the elimination of the invalid data.
Packaging ten packets into a big packet at the network card through an LRO mechanism, transmitting the big packet to a network card protocol stack, analyzing and unpacking the packet according to the quintuple information after the big packet reaches the network card protocol stack, reconstructing the packet to finish TCP packet return after unpacking, reconstructing the packet by utilizing an open source interface, namely when copy _ ACK _ ready is true and a source IP address in the data packet is a gateway acquisition server configuration address and is a TCP packet, re-assigning ACK _ NUM according to whether VLAN is provided or not and different types of IPOE/PPPOE protocols, self-adding identification ID, inserting IP CHECK _ SUM and TCP CHECK _ SUM into a reconstructed packet header according to an open source algorithm and a state machine, finally returning the reconstructed TCP interactive packet BUF to the network card through the network card packet transmitting interface for LSO packet return, and transmitting the reconstructed TCP interactive packet to a server after unpacking, according to the successful sending, the self-increment processing of the received message length wget _ len is carried out, and then the next logic processing of the packet receiving interface of the network card LRO is carried out;
and when the gateway needs to acquire a packet of how many bytes the current equipment downloads from the server, acquiring wget _ len through the ioctl, closing the network card drive by a user through the ioctl to take over the TCP interaction logic, emptying the wget _ len, resetting fast _ ack _ enable and copy _ ack _ ready as false, and synchronously restoring the offset of TCP data packet option relative to the timestamp.
It should be noted that ioctl (input/output control) is a system call dedicated to the input/output operation of a device, and the call is transmitted to a request code associated with the device, and the function of the system call depends entirely on the request code. And an Ioctl interface is an independent system call through which user space can communicate with the device driver. The request for the device driver is an Ioctl call with the device and request number as parameters, so the kernel allows the user space to access the device driver and then the device without knowing specific device details, and without requiring a large heap of system calls for different devices. Other kernel-mode/user-mode communication tools besides ioctl are also applicable, such as Netlink, etc., and the inventor is merely exemplified by ioctl, it being understood that the general and detailed descriptions are exemplary and explanatory only and are not restrictive of the present application.
Specifically, as shown in fig. 6, the step flow of the gateway speed measurement is as follows:
u01 and gateway software select to enter speed measurement according to the wget access parameters, and turn to U02, otherwise, exit speed measurement and turn to U03;
u02, calling wget-o to measure the speed, and turning to U04;
u03, calling wget-q to exit speed measurement, and turning to U21;
u04 and gateway software call an echo command to remove a 12-bit timestamp field related to option in a tcp message, and then the TCP message is switched to U05;
u05 and wget complete the first TCP interaction with the speed measuring server, and establish TCP connection; turning to U06;
initializing a memory and related configuration by U06 and gateway software, setting a fast _ ack _ enable value as true, and switching to U27;
u27, the network card learns the corresponding quintuple information, and the subsequent network card packages every ten packets through LRO and transfers the packets to the network card protocol stack and to U07;
u07 and wget enter a triple _ file _ data receiving interaction phase, and then the U08 is switched to;
u08, judging whether fast _ ack _ enable is true, if yes, representing that the network card is connected for the first time, turning to U09, and if not, turning to U26 (the judgment is again to prevent fast _ ack _ enable from being reset to false after the user cancels the speed measurement);
u09, creating an AF _ INET mode socket, generating a handle, turning to U10, and turning to U19 if the AF _ INET mode socket fails;
u10, establishing ioctl, setting the execution flag position op as start (namely, setting copy _ ack _ enable as true), configuring IP (Internet PROTOCOL) and PROTOCOL (PROTOCOL over Ethernet) transmission synchronization to the network card, and turning to U11;
u11, if the network card TX is in the uplink direction, when the network card TX is linked with a server for the first time, verifying a data packet, adapting to the address of the server, the destination address of the TX and a TCP (transmission control protocol), and turning to U12;
u12, acquiring an Identification ID in an uplink data packet, completely taking over TCP interaction in an RX/TX direction by a subsequent network card driver, initializing wget _ len to 0, and turning to U28;
the U28 and the gateway software unpack the big packet, analyze each message respectively, and turn to U13;
u13, network card RX downstream direction, verifying data packet and adapting server address, RX source address and TCP protocol, turning to U14;
u14, matching different data packets according to the WAN type and whether VLAN is carried, calculating ack _ number, and turning to U15;
u15 and Identification ID are automatically increased by 1 to generate a next TCP interaction ID number, and the next TCP interaction ID number is converted to U16;
u16, calculating ipchecksum and tcpchecksum according to the open source interface, and turning to U17;
u17, checking data packet encapsulation, adding checksum to the header of the message, performing ACK through a state machine, and turning to U18;
u18, packaging the packaged ten TCP TX ACK messages, and turning to U29;
the U29 and the network card unpack the big packet by setting an LSO mode and send out the big packet through a network card packet sending function, and if the data packet is not downloaded, the U20 is switched to;
u19, fast _ ack _ enable are reset to false, go to U26;
u20, the length wget _ len of the received data packet performs self-increment of the corresponding data length L, the self-increment is realized by adding buflen which is used for storing the length of the received message every time and is counted every time into the wget _ len, and the buflen is converted to U13, so that the next speed measurement data packet transceiving cycle is started;
u21, gateway software calls echo command and adds tcp 12 bit time stamp field about option, go to U22;
u22, judging whether fast _ ack _ enable is false, if so, the network card is disconnected from the adapter, the U23 is switched to, and if not, the U26 is switched to (the judgment is again to prevent the user from repentance after deciding to cancel the speed, and the fast _ ack _ enable is reset to true); (ii) a
U23, creating an AF _ INET mode socket, turning to U24, and turning to U19 if the AF _ INET mode socket fails;
u24, establishing ioctl, setting op to stop (namely, setting copy _ ack _ enable to false), and turning to U25 after the network card takes over the network card;
u25, interactive return value according to ioctl, kill wget, go to U26;
and U26, finishing the operation flow of application state speed measurement.
It should be noted that in the above flow, an op is a corresponding command for execution in the ioctl system.
As shown in fig. 7, an embodiment of the present invention further provides a speed measurement system for a home gateway CPU, which includes:
the connection module is used for establishing TCP connection with the speed measuring server;
the configuration module is used for determining quintuple information of a speed measurement data packet sent by the speed measurement server, configuring the speed measurement data packet and receiving the speed measurement data packet to the network card;
the transmission module is used for configuring a network card to enable LRO, encapsulating the network card into a transmission data packet when the network card receives N speed measurement data packets, wherein N is an integer greater than 1, and sending the transmission data packet to a network card protocol stack; the network card protocol stack receives the transmission data packet, unpacks the transmission data packet into N speed measurement data packets according to quintuple information, obtains N response data packets by the speed measurement data packets through ACK response of the network card protocol stack, sends the response data packets to the network card, and accumulates the receiving data length L of the speed measurement data packets; the network card starts the LSO and returns a response data packet to the speed measurement server;
and the calculation module is used for acquiring the received data length L twice at intervals of time T and calculating the data transmission rate of the network card according to the change of the L.
Wherein, the connection module still includes:
receiving a speed measurement parameter through an application state;
downloading a speed measurement data packet from a speed measurement server through the application state;
and removing the timestamp in the speed measurement data packet through the application state, and establishing TCP connection through the first TCP interaction with the speed measurement server.
Further, the configuration module further comprises:
receiving a speed measurement data packet and quintuple information from an application state through a kernel state;
learning the quintuple information through a kernel mode, and configuring a subsequent speed measurement data packet to be received by a network card according to the quintuple information;
wherein, the configuration is according to quintuple information, and subsequent speed measuring data packet is received by the network card, including:
judging whether the target IP in the speed measurement data packet is the same as the target IP of the target quintuple information or not;
judging whether the PROTOCOL types of the messages in the speed measurement data packet are the same as the target types of the target quintuple information or not;
if the data packets are the same, the message in the data packet is a TX ACK TCP message, and subsequent TCP message interaction is set to be processed by the network card without going through a protocol stack.
Still further, the transmission module further includes:
receiving the transmission data packet through a network card protocol stack;
unpacking the transmission data packet into N speed measurement data packets according to quintuple information;
initializing response ACK configuration, and if a source IP address in a speed measurement data packet is a speed measurement server configuration address and contains a TCP message, acquiring attributes of the speed measurement data packet, wherein the attributes comprise whether VLAN and IPOE/PPPOE protocol types are supported or not;
and reassigning the ACK _ NUM according to the attribute of the speed measurement data packet, and inserting the message sequence number into the head of the reconstructed message to obtain a response data packet.
Preferably, the calculation module further comprises:
after TCP connection with a speed measurement server is established, initializing the length L of the received data to be zero through the kernel state;
and taking out the L from the kernel mode in two times through the user mode interval time T, and dividing the difference value of the L in the two times by the T acquisition speed.
Various modifications and specific examples of the foregoing method embodiments are also applicable to the system of the present embodiment, and the detailed description of the foregoing method will make clear to those skilled in the art that the method of implementation of the system of the present embodiment will not be described herein for the sake of brevity of the description.
Generally, according to the method and the system for measuring the speed of the home gateway CPU provided by the embodiment of the invention, a plurality of data packets are packaged into one by hardware, and then the data packet is sent to the network card protocol module to be reconstructed into a packet, so that the influence of the environment on the speed measurement can be reduced.
As will be appreciated by one skilled in the art, embodiments of the present invention may be provided as a method, system, or computer program product. Accordingly, the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment or an embodiment combining software and hardware aspects. Furthermore, the present invention may take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, optical storage, and the like) having computer-usable program code embodied therein.
The present invention is described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (10)

1. A speed measurement method for a home gateway CPU is characterized by comprising the following steps:
establishing TCP connection with a speed measuring server;
determining quintuple information of a speed measurement data packet sent by a speed measurement server, configuring the speed measurement data packet, and receiving the speed measurement data packet to a network card;
enabling an LRO (line replaceable operation) by the network card, packaging the network card into a transmission data packet when the network card receives N speed measurement data packets, wherein N is an integer greater than 1, and sending the transmission data packet to a network card protocol stack; the network card protocol stack receives the transmission data packet, unpacks the transmission data packet into N speed measurement data packets according to quintuple information, obtains N response data packets by the speed measurement data packets through ACK response of the network card protocol stack, sends the response data packets to the network card, and accumulates the receiving data length L of the speed measurement data packets; the network card starts the LSO and returns a response data packet to the speed measurement server;
and (4) obtaining the length L of the received data twice at an interval of time T, and calculating the data transmission rate of the network card according to the change of the L.
2. The method for measuring the speed of the home gateway CPU as claimed in claim 1, wherein the establishing a TCP connection with the speed measurement server comprises:
receiving a speed measurement parameter by an application state;
the application state downloads a speed measurement data packet from a speed measurement server;
and the application state removes the timestamp in the speed measurement data packet, interacts with the TCP of the speed measurement server for the first time, and establishes TCP connection.
3. The method for measuring the speed of the home gateway CPU according to claim 1, wherein the determining the quintuple information of the speed measurement packet sent by the speed measurement server and configuring the speed measurement packet comprises:
the kernel mode receives a speed measurement data packet and quintuple information from the application mode;
the kernel mode learns the quintuple information and configures that a subsequent speed measurement data packet is received by the network card according to the quintuple information;
wherein, the configuration is according to quintuple information, and subsequent speed measuring data packet is received by the network card, including:
judging whether the target IP in the speed measurement data packet is the same as the target IP of the target quintuple information or not;
judging whether the PROTOCOL types of the messages in the speed measurement data packet are the same as the target types of the target quintuple information or not;
if the data packets are the same, the message in the data packet is a TX ACK TCP message, and subsequent TCP message interaction is set to be processed by the network card without going through a protocol stack.
4. The method as claimed in claim 1, wherein the network card protocol stack receives the transmission data packet, unpacks the transmission data packet into N speed measurement data packets according to quintuple information, and obtains N response data packets through ACK response of the network card protocol stack, including:
the network card protocol stack receives the transmission data packet;
unpacking the transmission data packet into N speed measurement data packets according to quintuple information;
initializing response ACK configuration, and if a source IP address in a speed measurement data packet is a speed measurement server configuration address and contains a TCP message, acquiring attributes of the speed measurement data packet, wherein the attributes comprise whether VLAN and IPOE/PPPOE protocol types are supported or not;
and reassigning the ACK _ NUM according to the attribute of the speed measurement data packet, and inserting the message serial number into the head of the reconstructed message to obtain a response data packet.
5. The method for measuring the speed of the home gateway CPU according to claim 1, wherein the interval time T, twice the length L of the received data, and the data transmission rate of the network card is calculated according to the change of the L, includes:
after TCP connection is established with a speed measurement server, the kernel state initializes the length L of the received data to zero;
and taking out the L from the kernel mode at two times by the user mode interval time T, and dividing the difference value of the L at the two times by the T to obtain the L.
6. A family gateway CPU speed measuring system is characterized by comprising:
the connection module is used for establishing TCP connection with the speed measuring server;
the configuration module is used for determining quintuple information of a speed measurement data packet sent by the speed measurement server, configuring the speed measurement data packet and receiving the speed measurement data packet to the network card;
the transmission module is used for configuring a network card to enable LRO, encapsulating the network card into a transmission data packet when the network card receives N speed measurement data packets, wherein N is an integer greater than 1, and sending the transmission data packet to a network card protocol stack; the network card protocol stack receives the transmission data packet, unpacks the transmission data packet into N speed measurement data packets according to quintuple information, obtains N response data packets by the speed measurement data packets through ACK response of the network card protocol stack, sends the response data packets to the network card, and accumulates the receiving data length L of the speed measurement data packets; the network card starts the LSO and returns a response data packet to the speed measurement server;
and the calculation module is used for acquiring the received data length L twice at intervals of time T and calculating the data transmission rate of the network card according to the change of the L.
7. The speed measurement system of the home gateway CPU as claimed in claim 6, wherein the connection module is further configured to:
receiving a speed measurement parameter through an application state;
downloading a speed measurement data packet from a speed measurement server through the application state;
and removing the timestamp in the speed measurement data packet through the application state, and establishing TCP connection through the first TCP interaction with the speed measurement server.
8. The system according to claim 6, wherein the configuration module is further configured to:
receiving a speed measurement data packet and quintuple information from an application state through a kernel state;
learning the quintuple information through a kernel mode, and configuring a subsequent speed measurement data packet to be received by the network card according to the quintuple information;
wherein, the configuration is according to quintuple information, and subsequent speed measuring data packet is received by the network card, including:
judging whether the target IP in the speed measurement data packet is the same as the target IP of the target quintuple information or not;
judging whether the PROTOCOL types of the messages in the speed measurement data packet are the same as the target types of the target quintuple information or not;
if the data packets are the same, the message in the data packet is a TX ACK TCP message, and subsequent TCP message interaction is set to be processed by the network card without going through a protocol stack.
9. The system according to claim 6, wherein the transmission module is further configured to:
receiving the transmission data packet through a network card protocol stack;
unpacking the transmission data packet into N speed measurement data packets according to quintuple information;
initializing response ACK configuration, and if a source IP address in a speed measurement data packet is a speed measurement server configuration address and contains a TCP message, acquiring attributes of the speed measurement data packet, wherein the attributes comprise whether VLAN and IPOE/PPPOE protocol types are supported or not;
and reassigning the ACK _ NUM according to the attribute of the speed measurement data packet, and inserting the message serial number into the head of the reconstructed message to obtain a response data packet.
10. The system according to claim 6, wherein the computing module is further configured to:
after TCP connection with a speed measurement server is established, initializing the length L of the received data to be zero through the kernel state;
and taking out the L from the kernel mode in two times through the user mode interval time T, and dividing the difference value of the L in the two times by the T acquisition speed.
CN202010325642.4A 2020-04-22 2020-04-22 Speed measuring method and system for household gateway CPU Active CN111565131B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010325642.4A CN111565131B (en) 2020-04-22 2020-04-22 Speed measuring method and system for household gateway CPU

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010325642.4A CN111565131B (en) 2020-04-22 2020-04-22 Speed measuring method and system for household gateway CPU

Publications (2)

Publication Number Publication Date
CN111565131A true CN111565131A (en) 2020-08-21
CN111565131B CN111565131B (en) 2022-04-08

Family

ID=72071603

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010325642.4A Active CN111565131B (en) 2020-04-22 2020-04-22 Speed measuring method and system for household gateway CPU

Country Status (1)

Country Link
CN (1) CN111565131B (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112511587A (en) * 2020-10-23 2021-03-16 许继集团有限公司 Communication data processing method and device for power distribution network differential service
CN113098731A (en) * 2021-03-01 2021-07-09 Oppo广东移动通信有限公司 Protocol stack testing method, testing system and computer storage medium
CN113676378A (en) * 2021-08-24 2021-11-19 芯河半导体科技(无锡)有限公司 Network bandwidth speed measurement application for simplifying Linux TCP protocol stack
CN114390570A (en) * 2020-10-20 2022-04-22 中国移动通信集团北京有限公司 Network rate detection method, device, equipment and computer storage medium
CN115499346A (en) * 2022-09-15 2022-12-20 巨擎网络科技(济南)有限公司 Multi-network-card speed measuring method, device, equipment and medium

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050021310A1 (en) * 2003-07-04 2005-01-27 Xin Zeng System for testing network devices
US20050144437A1 (en) * 1994-12-30 2005-06-30 Ransom Douglas S. System and method for assigning an identity to an intelligent electronic device
CN101247308A (en) * 2007-02-13 2008-08-20 上海亿人通信终端有限公司 Tunnel packet processing method for implementing IPv6 traversing IPv4 based on network processor
CN101252576A (en) * 2008-03-13 2008-08-27 苏州爱迪比科技有限公司 Method for detecting virus based on network flow with DFA in gateway
CN102256293A (en) * 2011-04-18 2011-11-23 电子科技大学 Demand routing gateway of Ad hoc fusion network and driver design method thereof
CN103139315A (en) * 2013-03-26 2013-06-05 烽火通信科技股份有限公司 Application layer protocol analysis method suitable for home gateway
CN103209101A (en) * 2012-01-17 2013-07-17 深圳市共进电子股份有限公司 Gateway testing method
CN103873712A (en) * 2014-04-14 2014-06-18 中国人民解放军信息工程大学 VoIP gateway detection method and multi-core processing device
CN104038389A (en) * 2014-06-19 2014-09-10 高长喜 Multiple application protocol identification method and device
CN104469822A (en) * 2014-11-26 2015-03-25 大唐移动通信设备有限公司 Testing method, base station and system
CN105722152A (en) * 2016-02-25 2016-06-29 华中科技大学 Heterogeneous network data parallel transmission system and method
CN106101012A (en) * 2016-07-06 2016-11-09 广州海格通信集团股份有限公司 A kind of method of satellite IP gateway protocol adaptation
CN106341404A (en) * 2016-09-09 2017-01-18 西安工程大学 IPSec VPN system based on many-core processor and encryption and decryption processing method
CN106452925A (en) * 2016-12-02 2017-02-22 华为技术有限公司 Method, apparatus and system for detecting faults in NFV system
CN106815112A (en) * 2015-11-27 2017-06-09 大唐软件技术股份有限公司 A kind of mass data monitoring system and method based on deep-packet detection
CN106878107A (en) * 2017-02-28 2017-06-20 无锡研勤信息科技有限公司 Based on the network bandwidth speed-measuring method that linux kernel drives
US20170310708A1 (en) * 2016-04-22 2017-10-26 Sophos Limited Secure labeling of network flows

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050144437A1 (en) * 1994-12-30 2005-06-30 Ransom Douglas S. System and method for assigning an identity to an intelligent electronic device
US20050021310A1 (en) * 2003-07-04 2005-01-27 Xin Zeng System for testing network devices
CN101247308A (en) * 2007-02-13 2008-08-20 上海亿人通信终端有限公司 Tunnel packet processing method for implementing IPv6 traversing IPv4 based on network processor
CN101252576A (en) * 2008-03-13 2008-08-27 苏州爱迪比科技有限公司 Method for detecting virus based on network flow with DFA in gateway
CN102256293A (en) * 2011-04-18 2011-11-23 电子科技大学 Demand routing gateway of Ad hoc fusion network and driver design method thereof
CN103209101A (en) * 2012-01-17 2013-07-17 深圳市共进电子股份有限公司 Gateway testing method
CN103139315A (en) * 2013-03-26 2013-06-05 烽火通信科技股份有限公司 Application layer protocol analysis method suitable for home gateway
CN103873712A (en) * 2014-04-14 2014-06-18 中国人民解放军信息工程大学 VoIP gateway detection method and multi-core processing device
CN104038389A (en) * 2014-06-19 2014-09-10 高长喜 Multiple application protocol identification method and device
CN104469822A (en) * 2014-11-26 2015-03-25 大唐移动通信设备有限公司 Testing method, base station and system
CN106815112A (en) * 2015-11-27 2017-06-09 大唐软件技术股份有限公司 A kind of mass data monitoring system and method based on deep-packet detection
CN105722152A (en) * 2016-02-25 2016-06-29 华中科技大学 Heterogeneous network data parallel transmission system and method
US20170310708A1 (en) * 2016-04-22 2017-10-26 Sophos Limited Secure labeling of network flows
CN106101012A (en) * 2016-07-06 2016-11-09 广州海格通信集团股份有限公司 A kind of method of satellite IP gateway protocol adaptation
CN106341404A (en) * 2016-09-09 2017-01-18 西安工程大学 IPSec VPN system based on many-core processor and encryption and decryption processing method
CN106452925A (en) * 2016-12-02 2017-02-22 华为技术有限公司 Method, apparatus and system for detecting faults in NFV system
CN106878107A (en) * 2017-02-28 2017-06-20 无锡研勤信息科技有限公司 Based on the network bandwidth speed-measuring method that linux kernel drives

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SHANG GUOQIANG,ETC: ""Design and Implementation of a Smart IoT Gateway"", 《IEEE》 *
钮远: ""基于IXA架构的接入网关QoS设计和实现"", 《中国优秀硕士学位论文全文数据库》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114390570A (en) * 2020-10-20 2022-04-22 中国移动通信集团北京有限公司 Network rate detection method, device, equipment and computer storage medium
CN114390570B (en) * 2020-10-20 2023-11-21 中国移动通信集团北京有限公司 Network rate detection method, device, equipment and computer storage medium
CN112511587A (en) * 2020-10-23 2021-03-16 许继集团有限公司 Communication data processing method and device for power distribution network differential service
CN112511587B (en) * 2020-10-23 2024-02-09 许继集团有限公司 Communication data processing method and device for power distribution network differential service
CN113098731A (en) * 2021-03-01 2021-07-09 Oppo广东移动通信有限公司 Protocol stack testing method, testing system and computer storage medium
CN113676378A (en) * 2021-08-24 2021-11-19 芯河半导体科技(无锡)有限公司 Network bandwidth speed measurement application for simplifying Linux TCP protocol stack
CN113676378B (en) * 2021-08-24 2024-05-24 芯河半导体科技(无锡)有限公司 Network bandwidth speed measuring method for simplifying Linux TCP protocol stack
CN115499346A (en) * 2022-09-15 2022-12-20 巨擎网络科技(济南)有限公司 Multi-network-card speed measuring method, device, equipment and medium
CN115499346B (en) * 2022-09-15 2024-04-26 巨擎网络科技(济南)有限公司 Speed measuring method, device, equipment and medium for multiple network cards

Also Published As

Publication number Publication date
CN111565131B (en) 2022-04-08

Similar Documents

Publication Publication Date Title
CN111565131B (en) Speed measuring method and system for household gateway CPU
CN108234235B (en) Method, network device, and computer-readable storage medium for data monitoring
CN108111523B (en) Data transmission method and device
CN112438038A (en) Method and device for transmitting data
CN114584582B (en) In-vehicle message processing method and device, vehicle-mounted terminal and storage medium
WO2018172832A1 (en) Methods and systems for evaluating network performance of an aggregated connection
CN104937896B (en) Address resolution protocol message processing method and forwarder and controller
CN105450782A (en) A method and system for restart network service without package losses and machine halt
CN112788060A (en) Data packet transmission method and device, storage medium and electronic equipment
CN110932992A (en) Load balancing communication method based on tunnel mode
US20190215307A1 (en) Mechanisms for layer 7 context accumulation for enforcing layer 4, layer 7 and verb-based rules
CN109246189B (en) Network data distribution method and device, storage medium and server
US20250184260A1 (en) Data transmission method and gateway device
CN109600248A (en) The determination method, apparatus and storage medium of service quality
US10601961B2 (en) Service function chain dynamic classification
CN110691139B (en) Data transmission method, device, equipment and storage medium
US20190190835A1 (en) Methods and systems for evaluating network peformance of an aggregated connection
CN116132555B (en) A message processing method and system
CN113098911B (en) Real-time analysis method of multi-segment link network and bypass packet capturing system
US10805219B2 (en) Methods and systems for evaluating network performance of an aggregated connection
CN119363688A (en) Network data packet forwarding method, device and storage medium based on network card driver
CN109067922A (en) A kind of data transmission method and device
CN115801629B (en) Bidirectional forwarding detection method and device, electronic equipment and readable storage medium
CN111211977A (en) Ship communication method and system supporting external multi-heterogeneous channel connection
CN113676378B (en) Network bandwidth speed measuring method for simplifying Linux TCP protocol stack

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
点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载