CN115396323B - Port real-time data stream visualization method and system based on finite state machine - Google Patents
Port real-time data stream visualization method and system based on finite state machine Download PDFInfo
- Publication number
- CN115396323B CN115396323B CN202210966067.5A CN202210966067A CN115396323B CN 115396323 B CN115396323 B CN 115396323B CN 202210966067 A CN202210966067 A CN 202210966067A CN 115396323 B CN115396323 B CN 115396323B
- Authority
- CN
- China
- Prior art keywords
- data
- network
- data packet
- bridge
- port
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007794 visualization technique Methods 0.000 title claims abstract description 11
- 238000012544 monitoring process Methods 0.000 claims abstract description 46
- 230000005540 biological transmission Effects 0.000 claims abstract description 42
- 230000000007 visual effect Effects 0.000 claims abstract description 36
- 230000006854 communication Effects 0.000 claims abstract description 33
- 238000004891 communication Methods 0.000 claims abstract description 24
- 238000007726 management method Methods 0.000 claims abstract description 24
- 238000012800 visualization Methods 0.000 claims abstract description 16
- 238000012545 processing Methods 0.000 claims description 22
- 230000007246 mechanism Effects 0.000 claims description 21
- 238000000034 method Methods 0.000 claims description 20
- 238000001914 filtration Methods 0.000 claims description 18
- 230000000903 blocking effect Effects 0.000 claims description 11
- 230000006870 function Effects 0.000 claims description 10
- 230000032683 aging Effects 0.000 claims description 6
- 238000004458 analytical method Methods 0.000 claims description 3
- 230000003139 buffering effect Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 238000013079 data visualisation Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/22—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The invention discloses a port real-time data flow visualization method and a port real-time data flow visualization system based on a finite state machine, which are characterized in that a Linux system is built in a master device, a slave device and a virtual machine structure are designed, bridge software is utilized to realize network Bridge recording and management in the system, a visual monitoring interface is arranged in the Linux Bridge, data packets in a communication path are subjected to caching and time sequence visual display through different state displays in a marking scheme, a transmission process is monitored and overtime setting is carried out, and meanwhile, congestion or overtime paths in an address database are updated and deleted, so that the controllability of the transmission process of the system is enhanced, the occurrence of path congestion is reduced, the communication between a virtual machine and a virtual network is dynamically controlled in a visual mode, and the dynamic visualization flow control of the virtual device is realized through providing the virtual communication management method and the virtual communication management system based on the Linux Bridge by utilizing time sequence display marks of data packet flow.
Description
Technical Field
The invention belongs to the technical field of network communication and data visualization display, and particularly relates to a port real-time data flow visualization method and a port real-time data flow visualization system based on a finite state machine.
Background
The existing virtual path management mechanism represented by Linux Bridge overcomes the management complexity of a physical switch to a certain extent, but still has the problems of transmission path blocking, task coordination lag and the like, so that the effective control of users on data transmission and virtual processes is difficult to meet, the actual running processing efficiency of a system is influenced, the path management difficulty is increased, and the path congestion and the data packet transmission process in the transmission process are uncontrollable.
Disclosure of Invention
The invention aims to provide a port real-time data flow visualization method and a port real-time data flow visualization system based on a finite state machine, which are used for solving the problems of path congestion in a transmission process and uncontrollable data packet transmission process.
In order to achieve the above purpose, the present invention provides the following technical solutions: a port real-time data stream visualization method based on a finite state machine comprises the following specific steps:
step 1, an authorized user builds a Linux system on a master device, designs a slave device and a virtual machine structure, and builds a network Bridge inside the system by utilizing Bridge software;
step 2, after the data transmission process is started, recording and updating the existing communication path in the MAC address database by utilizing the Linux Bridge;
step 3, setting a visual monitoring interface in the Linux Bridge, setting a mark recognition function for the visual monitoring interface and connecting with a visual window of a user interface;
step 4, caching the data packet in the communication path and performing time sequence visualization display through different state displays in the marking scheme;
step 5, the authorized user performs personalized dynamic monitoring and timeout setting on the available paths and data transmission through a visual window;
step 6, after the data packet is received, the data packet is firstly transmitted from the network card to the Ring Buffer, then is subjected to hard interrupt and soft interrupt processing in sequence, and is sequentially sent to the equipment layer and the protocol stack in the soft interrupt, and finally the application program is awakened;
step 7, for the Veth equipment connected to the network bridge, when the Veth equipment receives the data packet, the Veth equipment does not enter the protocol stack but is transferred to the network bridge for processing, and the network bridge finds a proper forwarding port Veth through which the data is forwarded;
and 8, updating and deleting the congestion or overtime path in the address database according to the path updating and aging mechanism, so as to enhance the controllability of the transmission process of the system and reduce the occurrence of the path congestion.
A port real-time data stream visualization method based on a finite state machine comprises a visualization operation module, a data stream time sequence monitoring module and a state coordination management module, wherein the visualization operation module specifically provides a user with a data real-time transmission visualization display and operation interface in the system, an authorized user can build a communication path across devices and implement data flow control among monitoring nodes, and the visualization analysis operation is carried out on the whole data stream structure and flow of the system; the data flow time sequence monitoring module is used for binding other network devices of Linux as slave devices, associating a filtering database based on an MAC address, monitoring and setting overtime of a data frame transmission line corresponding to the address library by using the Linux Bridge, and providing reference information for system path planning and user operation by using a time sequence flow monitoring scheme; the state coordination management module is used for managing the communication state of virtual equipment in the system, and coordinating the visual operation module and the data flow time sequence monitoring module according to the number and the state of planned paths of a finite state machine in the communication process so as to avoid communication congestion.
Preferably, the MAC address database in step 2 specifically relates to a MAC address and a MAC address database management mechanism;
the MAC address and address database management mechanism mainly comprises:
(1) Recording various configuration information stored in the virtual switch by utilizing a virtual database;
(2) If the virtual network equipment Veth and the protocol stack keep a connection, the connection between the protocol stack and the equipment is regarded as network cable connection;
(3) Each communication bridge in the bridge database maintains a filtering database based on the MAC address, and the bridge forwards the received frames to the corresponding local area network according to the database;
(4) In the filtering database, each possible destination and the output line to which the destination belongs are listed, and the table entry is set in a timeout mode;
(5) As the path task length of the database entries increases, the path is cleared from the database if the setting exceeds a certain threshold, typically setting the path aging time to be greater than 300 seconds of path blocking.
Preferably, the data transmission process in step 2 further involves a synchronization mechanism, and the data transmission synchronization mechanism mainly includes:
(1) Connecting virtual networks of all containers in the same host, and forwarding data to a real physical network card eth0 through Bridge;
(2) When a new data packet is received, a route records a source MAC address and an input port by learning and buffering a source address and an input port of a physical layer in the data packet transmitted on a link at an L3 network layer and using a routing protocol and a bridge at an L2 data link layer;
(3) Searching a local cache according to a destination MAC address in the data packet, and judging whether a corresponding MAC address record can be found;
(4) If the record is found not to be in the local network, directly discarding the data packet;
(5) If the record is found to have a corresponding port, forwarding the data packet directly from the port;
(6) If there are no records in the local cache, the broadcast is made in the home network segment.
Preferably, in the step 3, the data visual marking scheme in the marking identification function is set for the visual monitoring interface, and mainly includes:
(1) Creating Bridge in Linux system, setting visual port and related protocol, providing two views of table view and detailed information view, and filtering data packet transmission process by frame transmission form;
(2) Establishing a multi-level priority queue of a stream according to different characteristics of the ACK/ECN data packet, the short stream and the long stream data packet, and dynamically adjusting an ECN marking threshold value of the short stream queue by an HDCQ method in the switch according to the current load state;
(3) And resetting the priority of the data packet according to the current caching state, reducing the space complexity of the method, and enabling the switch to be in a shallow caching state so as to ensure low time delay of the data center network.
Preferably, the main mechanism for updating and deleting the congestion or timeout path in the address database in the step 8 includes:
(1) Inquiring whether the source MAC of the data packet exists in the bridge table; if not, adding the MAC address and the corresponding bridge port information into a bridge table, and if so, continuing the next step;
(2) Inquiring a filtering database, determining whether a destination MAC address in a data packet is in other ports except the port, and if not, not forwarding;
(3) When forwarding, if the destination MAC address is in a certain port in the filtering database, determining whether the port is in a blocking or forwarding state;
(4) Forwarding the data frame through the port into the LAN to which it is connected if the port is non-blocking;
(5) At the time of forwarding, if the destination MAC address is not found, the data frame is forwarded to all ports except the port it arrives on.
Preferably, the processing steps of the data flow time sequence monitoring module mainly include:
(1) And caching the data packet by utilizing a Linux data stream time sequence monitoring module qdisc for controlling the network transceiving speed. If the network card receiving the data packet belongs to a certain network bridge, the data packet enters a Link layer, passes through hook points of some Link layers and the table lookup forwarding function of a two-layer switch, and judges whether the data packet is forwarded or delivered to an upper layer for processing according to the destination MAC address of the data packet;
(2) If the source Network card of the data packet does not belong to a certain Network bridge, the data packet directly enters a Network Layer (Network Layer), passes through the hook points of some Network layers, then carries out routing, and determines whether the data packet is forwarded or submitted to local processing according to a system routing table;
(3) Processing IP data packets in the link layer network bridge, and accessing the network data packets of the selected monitoring nodes into the monitoring module, thereby controlling the flow entering and exiting the virtual machine at the host layer.
The invention has the technical effects and advantages that: the method comprises the steps of building a Linux system on a master device, designing a slave device and a virtual machine structure, realizing network Bridge recording and management in the system by utilizing Bridge software, setting a visual monitoring interface in the Linux Bridge, carrying out caching and time sequence visual display on data packets in a communication path through different state displays in a marking scheme, monitoring and time-out setting on a transmission process, updating and deleting a congestion or time-out path in an address database, enhancing the controllability of the transmission process of the system, reducing the occurrence of path congestion, realizing the communication between a virtual machine and a virtual network by utilizing the time sequence display mark of data packet flow, and realizing reasonable planning of the transmission path between virtual devices of a server and dynamic visual flow control pipes of different authority users on the virtual devices by providing the virtual communication management method and the virtual communication management system based on the Linux Bridge.
Drawings
FIG. 1 is a block diagram of a system architecture of one embodiment of the present invention;
FIG. 2 is a schematic diagram of a visualization window according to an embodiment of the present invention;
FIG. 3 is a diagram illustrating a finite state machine transition mechanism according to an embodiment of the present invention;
FIG. 4 is a virtual block diagram of data transmission according to an embodiment of the present invention;
fig. 5 is a schematic diagram of a data transmission path synchronization mechanism according to an embodiment of the present invention.
Detailed Description
The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention, and it is apparent that the described embodiments are only some embodiments of the present invention, but not all embodiments, and all other embodiments obtained by those skilled in the art without making creative efforts based on the embodiments of the present invention are included in the protection scope of the present invention.
In a first embodiment, the present invention provides a method for visualizing a port real-time data stream based on a finite state machine, which specifically includes the following steps:
step 1, an authorized user builds a Linux system on a master device, designs a slave device and a virtual machine structure, and builds a network Bridge inside the system by utilizing Bridge software;
step 2, after the data transmission process is started, recording and updating the existing communication path in an MAC address database by utilizing Linux Bridge, wherein the MAC address database specifically relates to an MAC address and an MAC address database management mechanism;
the MAC address and address database management mechanism mainly comprises:
(1) Recording various configuration information stored in the virtual switch by utilizing a virtual database;
(2) If the virtual network equipment Veth and the protocol stack keep a connection, the connection between the protocol stack and the equipment is regarded as network cable connection;
(3) Each communication bridge in the bridge database maintains a filtering database based on the MAC address, and the bridge forwards the received frames to the corresponding local area network according to the database;
(4) In the filtering database, each possible destination and the output line to which the destination belongs are listed, and the table entry is set in a timeout mode;
(5) As the path task duration of the database entries increases, the path is cleared from the database if the setting exceeds a certain threshold, and the path aging time is generally set to be more than 300 seconds of path blocking;
step 3, setting a visual monitoring interface in the Linux Bridge, setting a mark recognition function for the visual monitoring interface and connecting with a visual window of a user interface, wherein a data visual mark scheme in the mark recognition function is mainly set for the visual monitoring interface and mainly comprises the following steps:
(1) Creating Bridge in Linux system, setting visual port and related protocol, providing two views of table view and detailed information view, and filtering data packet transmission process by frame transmission form;
(2) Establishing a multi-level priority queue of a stream according to different characteristics of the ACK/ECN data packet, the short stream and the long stream data packet, and dynamically adjusting an ECN marking threshold value of the short stream queue by an HDCQ method in the switch according to the current load state;
(3) Resetting the priority of the data packet according to the current buffer state, reducing the space complexity of the method, and enabling the switch to be in a shallow buffer state so as to ensure low time delay of a data center network;
step 4, caching the data packet in the communication path and performing time sequence visualization display through different state displays in the marking scheme;
step 5, the authorized user performs personalized dynamic monitoring and timeout setting on the available paths and data transmission through a visual window;
step 6, after the data packet is received, firstly transmitting the data packet from the network card to the Ring Buffer, then sequentially carrying out hard interrupt and soft interrupt processing, sequentially transmitting the data packet to a device layer and a protocol stack in the soft interrupt, and finally waking up an application program, wherein the main mechanism for updating and deleting the congestion or overtime path in the address database comprises the following steps:
(1) Inquiring whether the source MAC of the data packet exists in the bridge table; if not, adding the MAC address and the corresponding bridge port information into a bridge table, and if so, continuing the next step;
(2) Inquiring a filtering database, determining whether a destination MAC address in a data packet is in other ports except the port, and if not, not forwarding;
(3) When forwarding, if the destination MAC address is in a certain port in the filtering database, determining whether the port is in a blocking or forwarding state;
(4) Forwarding the data frame through the port into the LAN to which it is connected if the port is non-blocking;
(5) When forwarding, if the destination MAC address is not found, forwarding the data frame to all ports except the port where the data frame arrives;
step 7, for the Veth equipment connected to the network bridge, when the Veth equipment receives the data packet, the Veth equipment does not enter the protocol stack but is transferred to the network bridge for processing, and the network bridge finds a proper forwarding port Veth through which the data is forwarded;
and 8, updating and deleting the congestion or overtime path in the address database according to the path updating and aging mechanism, so as to enhance the controllability of the transmission process of the system and reduce the occurrence of the path congestion.
As shown in fig. 5, the data transmission process further involves a synchronization mechanism, where the data transmission synchronization mechanism mainly includes:
(1) Connecting virtual networks of all containers in the same host, and forwarding data to a real physical network card eth0 through Bridge;
(2) When a new data packet is received, a route records a source MAC address and an input port by learning and buffering a source address and an input port of a physical layer in the data packet transmitted on a link at an L3 network layer and using a routing protocol and a bridge at an L2 data link layer;
(3) Searching a local cache according to a destination MAC address in the data packet, and judging whether a corresponding MAC address record can be found;
(4) If the record is found not to be in the local network, directly discarding the data packet;
(5) If the record is found to have a corresponding port, forwarding the data packet directly from the port;
(6) If there are no records in the local cache, the broadcast is made in the home network segment.
As shown in fig. 2, a system of a port real-time data stream visualization method based on a finite state machine comprises a visualization operation module, a data stream time sequence monitoring module and a state coordination management module, wherein the visualization operation module specifically provides a user with a data real-time transmission visualization display and operation interface in the system, an authorized user can build a communication path across equipment and implement data flow control among monitoring nodes, and performs visualization analysis operation on the whole data stream structure and flow of the system; the data flow time sequence monitoring module is used for binding other network devices of Linux as slave devices, associating a filtering database based on an MAC address, monitoring and setting overtime of a data frame transmission line corresponding to the address library by using the Linux Bridge, and providing reference information for system path planning and user operation by using a time sequence flow monitoring scheme; the state coordination management module is used for managing the communication state of virtual equipment in the system, and coordinating the visual operation module and the data flow time sequence monitoring module according to the number and the state of planned paths of a finite state machine in the communication process so as to avoid communication congestion.
The processing steps of the data flow time sequence monitoring module mainly comprise:
(1) And caching the data packet by utilizing a Linux data stream time sequence monitoring module qdisc for controlling the network transceiving speed. If the network card receiving the data packet belongs to a certain network bridge, the data packet enters a Link layer, passes through hook points of some Link layers and the table lookup forwarding function of a two-layer switch, and judges whether the data packet is forwarded or delivered to an upper layer for processing according to the destination MAC address of the data packet;
(2) If the source Network card of the data packet does not belong to a certain Network bridge, the data packet directly enters a Network Layer (Network Layer), passes through the hook points of some Network layers, then carries out routing, and determines whether the data packet is forwarded or submitted to local processing according to a system routing table;
(3) Processing IP data packets in the link layer network bridge, and accessing the network data packets of the selected monitoring nodes into the monitoring module, thereby controlling the flow entering and exiting the virtual machine at the host layer.
As shown in fig. 3, the data flow monitoring module further relates to data flow marking, and the data flow marking scheme includes constituent elements and basic components, specifically:
(1) The data flow marks are used as "→" and the data flows with different magnitudes are represented by line thickness. A data stream smaller than 1500 bytes/second is defined as a small data stream, a data stream within 1500-10000 bytes/second is defined as a medium data stream, and a data stream larger than or equal to 20000 bytes/second is defined as a large data stream;
(2) The arrow direction of the data stream represents the stream direction, using file name and path code naming;
(3) Taking a symbol graph like ◻ as a virtual device and a system device mark shape like a rectangle, wherein the specific shape can refer to the physical characteristics of the device;
(4) The data packet is represented by O, and is divided into a small data packet (< 10M), a data packet (10M-100M) and a large data packet (> 100M) according to the size of the data packet;
(5) The term "〓" refers to a unit module that processes data, meaning the processing of the data, or the transmission of the data, that receives a certain data input, processes it, and produces an output.
Specifically, the finite state of the finite state management module includes:
(1) The OFF state indicates that the virtual port is in a closed state, and the state indicates that the port is failed or not started;
(2) The DOWN state indicates that the path is in a blocking state, and the DOWN state indicates that the path transmits a plurality of tasks to be jammed and cannot be normally performed;
(3) The UP state indicates that the port is in an open state, and the UP state indicates that the port link protocol is in a normal start state;
(4) The TRANSLATE state indicates that the port is in a forwarding state, in which state the port is performing a data transfer process and can operate normally.
As shown in fig. 4, the data transmission mechanism specifically includes:
(1) When an application (such as a Docker) needs to send data in the system, the data is sent through a system call, and the sending is executed to a protocol stack to perform processing such as encapsulation of a protocol header. After the neighbor subsystem finds the device (Veth 1) to be used, the data is sent out from the device, and the opposite end Veth1_p of Veth1 receives the data packet;
(2) The Veth1_p of the received data represents a device connected to the Bridge, at this time, the Bridge takes over the data receiving process of the Veth, searches for the destination device from all the connected devices, and after the Veth2_p is found, invokes the sending function of the device to send out the data, and the opposite terminal Veth2 will receive the data;
(3) After receiving the data, the Veth2 is similar to the eth0 and other devices, enters a normal data receiving processing process, and the user state process in the applications such as dock can receive the data sent by other virtual devices.
The method and the system realize the communication between the virtual machine and the virtual network in a visual dynamic control manner by providing the virtual communication management method and the virtual communication management system based on the Linux Bridge, and aim to realize reasonable planning of transmission paths between virtual devices of a server and dynamic visual flow control of virtual devices by users with different authorities by utilizing time sequence display marks of data packet flow.
Finally, it should be noted that: the foregoing description is only illustrative of the preferred embodiments of the present invention, and although the present invention has been described in detail with reference to the foregoing embodiments, it will be apparent to those skilled in the art that modifications may be made to the embodiments described, or equivalents may be substituted for elements thereof, and any modifications, equivalents, improvements or changes may be made without departing from the spirit and principles of the present invention.
Claims (7)
1. A port real-time data stream visualization method based on a finite state machine comprises the following specific steps:
step 1, an authorized user builds a Linux system on a master device, designs a slave device and a virtual machine structure, and builds a network Bridge inside the system by utilizing Bridge software;
step 2, after the data transmission process is started, recording and updating the existing communication path in the MAC address database by utilizing the Linux Bridge;
step 3, setting a visual monitoring interface in the Linux Bridge, setting a mark recognition function for the visual monitoring interface and connecting with a visual window of a user interface;
step 4, caching the data packet in the communication path and performing time sequence visualization display through different state displays in the marking scheme;
step 5, the authorized user performs personalized dynamic monitoring and timeout setting on the available paths and data transmission through a visual window;
step 6, after the data packet is received, the data packet is firstly transmitted from the network card to the Ring Buffer, then is subjected to hard interrupt and soft interrupt processing in sequence, and is sequentially sent to the equipment layer and the protocol stack in the soft interrupt, and finally the application program is awakened;
step 7, for the Veth equipment connected to the network bridge, when the Veth equipment receives the data packet, the Veth equipment does not enter the protocol stack but is transferred to the network bridge for processing, and the network bridge finds a proper forwarding port Veth through which the data is forwarded;
and 8, updating and deleting the congestion or overtime path in the address database according to the path updating and aging mechanism, so as to enhance the controllability of the transmission process of the system and reduce the occurrence of the path congestion.
2. A method for visualizing a port real-time data stream based on a finite state machine as in claim 1, wherein: the MAC address database in the step 2 specifically relates to an MAC address and an MAC address database management mechanism;
the MAC address and address database management mechanism mainly comprises:
(1) Recording various configuration information stored in the virtual switch by utilizing a virtual database;
(2) If the virtual network equipment Veth and the protocol stack keep a connection, the connection between the protocol stack and the equipment is regarded as network cable connection;
(3) Each communication network bridge in the network bridge database maintains a filtering database based on the MAC address, and the network bridge forwards the received data frame to the corresponding local area network according to the database;
(4) In the filtering database, each possible destination and the output line to which the destination belongs are listed, and the table entry is set in a timeout mode;
(5) As the path task length of the database entries increases, the path is cleared from the database if the setting exceeds a certain threshold, typically setting the path aging time to be greater than 300 seconds of path blocking.
3. A method for visualizing a port real-time data stream based on a finite state machine as in claim 1, wherein: the data transmission process in step 2 also relates to a synchronization mechanism, which mainly comprises:
(1) Connecting virtual networks of all containers in the same host, and forwarding data to a real physical network card eth0 through Bridge;
(2) When a new data packet is received, a route records a source MAC address and an input port by learning and buffering a source address and an input port of a physical layer in the data packet transmitted on a link at an L3 network layer and using a routing protocol and a bridge at an L2 data link layer;
(3) Searching a local cache according to a destination MAC address in the data packet, and judging whether a corresponding MAC address record can be found;
(4) If the record is found not to be in the local network, directly discarding the data packet;
(5) If the record is found to have a corresponding port, forwarding the data packet directly from the port;
(6) If there are no records in the local cache, the broadcast is made in the home network segment.
4. A method for visualizing a port real-time data stream based on a finite state machine as in claim 1, wherein: in the step 3, the data visual marking scheme in the marking identification function is set for the visual monitoring interface, and mainly comprises the following steps:
(1) Creating Bridge in Linux system, setting visual port and related protocol, providing two views of table view and detailed information view, and filtering data packet transmission process by using data frame transmission form;
(2) Establishing a multi-level priority queue of a stream according to different characteristics of the ACK/ECN data packet, the short stream and the long stream data packet, and dynamically adjusting an ECN marking threshold value of the short stream queue by an HDCQ method in the switch according to the current load state;
(3) And resetting the priority of the data packet according to the current caching state, reducing the space complexity of the method, and enabling the switch to be in a shallow caching state so as to ensure low time delay of the data center network.
5. A method for visualizing a port real-time data stream based on a finite state machine as in claim 1, wherein: the main mechanism for updating and deleting the congestion or timeout path in the address database in the step 8 includes:
(1) Inquiring whether the source MAC of the data packet exists in the bridge table; if not, the source MAC address and the corresponding bridge port information are added into the bridge table, and if yes, the next step is continued;
(2) Inquiring a filtering database, determining whether a destination MAC address in a data packet is in other ports except the port, and if not, not forwarding;
(3) When forwarding, if the destination MAC address is in a certain port in the filtering database, determining whether the port is in a blocking or forwarding state;
(4) Forwarding the received data frame through the port to the LAN to which it is connected if the port is non-blocking;
(5) In forwarding, if the destination MAC address is not found, the received data frame is forwarded to all ports except the port it arrives on.
6. A system based on a finite state machine-based port real-time data stream visualization method as defined in claim 1, wherein: the system comprises a visual operation module, a data flow time sequence monitoring module and a state coordination management module, wherein the visual operation module specifically provides a visual display and operation interface for real-time transmission of data in a system for a user, and an authorized user can build a communication path across equipment and implement data flow control among monitoring nodes to perform visual analysis operation on the whole data flow structure and flow of the system; the data flow time sequence monitoring module is used for binding other network devices of Linux as slave devices, associating a filtering database based on an MAC address, monitoring and setting overtime of a data frame transmission line corresponding to the address library by using the Linux Bridge, and providing reference information for system path planning and user operation by using a time sequence flow monitoring scheme; the state coordination management module is used for managing the communication state of virtual equipment in the system, and coordinating the visual operation module and the data flow time sequence monitoring module according to the number and the state of planned paths of a finite state machine in the communication process so as to avoid communication congestion.
7. The system of finite state machine based port real-time data stream visualization method of claim 6, wherein: the processing steps of the data flow time sequence monitoring module mainly comprise:
(1) The method comprises the steps of utilizing a Linux data flow time sequence monitoring module qdisc to cache a data packet for controlling the network transceiving speed, if a network card receiving the data packet belongs to a certain network bridge, enabling the data packet to enter a Link layer (Link layer), passing through hook points of some Link layers and a table lookup forwarding function of a two-layer switch, and judging whether the data packet is forwarded or submitted to upper layer processing according to the MAC address of the data packet;
(2) If the source Network card of the data packet does not belong to a certain Network bridge, the data packet directly enters a Network Layer (Network Layer), passes through the hook points of some Network layers, then carries out routing, and determines whether the data packet is forwarded or submitted to local processing according to a system routing table;
(3) Processing IP data packets in the link layer network bridge, and accessing the network data packets of the selected monitoring nodes into the monitoring module, thereby controlling the flow entering and exiting the virtual machine at the host layer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210966067.5A CN115396323B (en) | 2022-08-12 | 2022-08-12 | Port real-time data stream visualization method and system based on finite state machine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210966067.5A CN115396323B (en) | 2022-08-12 | 2022-08-12 | Port real-time data stream visualization method and system based on finite state machine |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115396323A CN115396323A (en) | 2022-11-25 |
CN115396323B true CN115396323B (en) | 2024-03-12 |
Family
ID=84118543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210966067.5A Active CN115396323B (en) | 2022-08-12 | 2022-08-12 | Port real-time data stream visualization method and system based on finite state machine |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115396323B (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103973587A (en) * | 2014-05-09 | 2014-08-06 | 清华大学 | Multi-path network congestion control method and device |
CN109714238A (en) * | 2018-12-11 | 2019-05-03 | 上海云轴信息科技有限公司 | A kind of method and apparatus for realizing inter-virtual machine communication |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9898317B2 (en) * | 2012-06-06 | 2018-02-20 | Juniper Networks, Inc. | Physical path determination for virtual network packet flows |
US9692690B2 (en) * | 2015-08-03 | 2017-06-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for path monitoring in a software-defined networking (SDN) system |
-
2022
- 2022-08-12 CN CN202210966067.5A patent/CN115396323B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103973587A (en) * | 2014-05-09 | 2014-08-06 | 清华大学 | Multi-path network congestion control method and device |
CN109714238A (en) * | 2018-12-11 | 2019-05-03 | 上海云轴信息科技有限公司 | A kind of method and apparatus for realizing inter-virtual machine communication |
Also Published As
Publication number | Publication date |
---|---|
CN115396323A (en) | 2022-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6907042B1 (en) | Packet processing device | |
US6341129B1 (en) | TCP resegmentation | |
JP3478218B2 (en) | Edge node exchanges and exchanges | |
US8649395B2 (en) | Protocol stack using shared memory | |
EP1705845A1 (en) | Load distributing method | |
US7912069B2 (en) | Virtual segmentation system and method of operation thereof | |
US6988235B2 (en) | Checksum engine and a method of operation thereof | |
CN101247353B (en) | Stream aging method and network appliance | |
JPH07273789A (en) | System and method for communication | |
CN104052684A (en) | Dynamic maximum transmission unit size adaption | |
EP3890279A1 (en) | Network information transmission system | |
JP2002094569A (en) | Method for operating reconfigured buffer | |
US20030161319A1 (en) | Packet communications system and transfer device | |
US20110022721A1 (en) | Method and system for packetizing data for servicing traffic end-to-end | |
US8386626B2 (en) | Transmit scaling using multiple queues | |
CN1973503B (en) | Flow processing | |
CA2341939C (en) | Label request packet transmission method, packet transfer network and method thereof, and packet transfer device | |
CN113438182B (en) | Credit-based flow control system and flow control method | |
JPH10303965A (en) | Routing system for router device | |
CN115396323B (en) | Port real-time data stream visualization method and system based on finite state machine | |
CN105681223A (en) | SDN data packet forwarding method and method | |
US7088737B1 (en) | Method and apparatus for combining packets having different protocol encapsulations within a circuit | |
JP4388464B2 (en) | Packet relay device and packet communication network | |
CN112637705B (en) | Method and device for forwarding in-band remote measurement message | |
CN111917624B (en) | Method and system for transmitting control information in VXLAN transmission |
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 |