Next Article in Journal
Comparison of Functional Connectivity Analysis Methods in Alzheimer’s Disease
Previous Article in Journal
The Irrecoverable Loss in Sleep on Weekdays of Two Distinct Chronotypes Can Be Equalized by Permitting a >2 h Difference in Waking Time
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Fine-Grained Network Congestion Detection Based on Flow Watermarking

Computer College, National University of Defense Technology, Changsha 410073, China
*
Author to whom correspondence should be addressed.
Appl. Sci. 2022, 12(16), 8094; https://doi.org/10.3390/app12168094
Submission received: 6 July 2022 / Revised: 5 August 2022 / Accepted: 10 August 2022 / Published: 12 August 2022

Abstract

:
With the rapid development of the network, how to effectively reduce the dynamic delay and improve the performance of the network is an important and challenging problem. Specifically, network congestion is one of the key factors that hurt the network performance, so real-time detection of the network congestion is critical for recovering the network failure quickly. Current research in congestion detection mainly faces the problems of occupying extra bandwidth, decreasing the ratio of the effective payload of the packet, increasing the burden of the switches, etc. In this paper, we apply flow watermarking to network congestion detection and propose a fine-grained network congestion detection method based on flow watermarking. We also combine it with the eBPF (extended Berkeley Packet Filter) to improve the performance of congestion detection. Theoretical analysis and experimental results show that the changes in network status can be reflected in real-time and accurately in the watermark decoding information. The network congestion detection based on flow watermarking can detect network status on a small time scale and realize low-overhead and easily deployed congestion detection.

1. Introduction

As the network architecture and functions become more and more complex, both users and operators require better network performance; however, because the rapid growth of network traffic incurs traffic collision, blindly increasing the network bandwidth cannot effectively improve the network performance. Network management faces new challenges; it requires quick awareness of network status and response to the network failures as soon as possible to decrease the dynamic delay. Therefore, efficient network congestion detection is particularly important.
Network congestion detection uses software or hardware tools to collect the real-time network status and provides data support for network fault location and routing calculation, which is the basis of network management. Researchers have proposed many network congestion detection methods but there are some shortcomings. Active network congestion detection introduces probes, which occupy the extra bandwidth. Passive network congestion detection captures the packets information through detection points, which lacks the view of global network status. In the SDN (Software Defined Network) -based network congestion detection, the controller frequently communicates with switches and installs flow entries, which increases the number of flow entries and may occupy bandwidth, computing and storage resources. The INT (In-band Network Telemetry) -based network congestion detection encapsulates telemetry commands and data into packets, which reduces the ratio of effective packet payload and increases the burden of switches.
The industry has also conducted in-depth research on network congestion detection. Huawei proposed AI Fabric, a datacenter switch based on high-performance AI chips [1]. The switch can collect traffic characteristics and network status information in real-time and achieve zero packet loss. Therefore, AI Fabric can identify faults in seconds timescale and locate faults in minutes timescale; however, the duration of burst traffic in the current datacenter network is usually a few seconds or milliseconds, so it is not effective in dealing with the micro-burst traffic. More fine-grained and low-overhead network congestion detection is required to cope with the changes in network status on a small timescale, and to achieve more efficient network congestion detection.
Network flow watermarking [2] is a technique that determines whether there is a flow association between sender and receiver by changing certain characteristics of network traffic to embed watermark information; it is often used for springboard detection and attack source tracing. Time-based network flow watermarking technique encodes different information by modifying the IPD (Inter-Packet Delay), which embeds management data into the flow transmission process only by delaying sending time of packets.
Network congestion may destroy the original feature of the watermark. Figure 1 shows the distortion of IBF (Interval-Based Fingerprinting) [3], which is a time-based network flow watermarking technique when facing network congestion. Before the distortion, the packets of the second interval are moved into the third interval for transmission. The number of packets in the second interval is less than the average number of packets in the three consecutive intervals, which present data ‘1’. After network congestion occurs, the packets in the first interval are delayed until the second interval, and the packets in the third interval are lost. At this time, the number of packets in the second interval is greater than the average value in the three intervals, which presents data ‘0’. The variational network status changes the original sparsity of packets and destroys the watermark they carried. The watermark decoding information can roughly feed back the changes in network status.
Therefore, we apply the time-based flow watermarking technique to network congestion detection. But the flow watermarking based on user mode cannot cope with high-speed traffic and hurts the network performance. The eBPF is a general execution engine that provides a general ability to execute specific code efficiently and safely based on system or program events, which enables user mode to implement customized functions; thus, it is very suitable for implementing network flow watermarking for high-rate traffic.
As shown in Table 1, the following evaluation indicators are selected to compare the existing network congestion detection methods with the network congestion detection based on flow watermarking:
(1)
Carrier: Indicating the detection method.
(2)
Whether to occupy extra bandwidth: Occupying extra bandwidth will cause the ‘observer effect’.
(3)
Whether to modify the packet content: Modifying the packet content will bring security problems and additional switch overhead.
(4)
Detection speed: Reacting to the efficiency of network congestion detection.
In this paper, we propose a fine-grained network congestion detection method-based flow watermarking, which is implemented in the eBPF environment; it improves the accuracy and speed of network congestion detection with low overhead and easy deployment, which provides theoretical and practical support for network management. The main contributions of this paper are as follows:
  • First, we design a network congestion detection model based on flow watermarking and theoretically analyze the network congestion detection method based on flow watermarking. The flow watermarking is applied to network congestion detection for the first time, which doesn’t occupy extra bandwidth, change the payload of the packet, and increase the processing burden.
  • Second, we propose a fine-grained network congestion detection algorithm to solve the problem that the congestion caused by micro-burst traffic has the characteristics of short duration and rapid change, which makes it difficult to detect by conventional congestion detection methods; it can detect network congestion on a small time scale and we can obtain current network status by analyzing the watermark decoding information.
  • Third, we introduce eBPF into network congestion detection based on flow watermarking to enable it easy to employ. The experimental results show that the flow watermarking is sensitive to the changes in network status. The fine-grained network congestion detection algorithm can more accurately judge network status.

2. Related Work

2.1. Network Congestion Detection

Active network congestion detection [4,5] obtains network information by analyzing the behavior of probes actively constructed under the changes in network status, such as ping, traceroute and iPerf. The operation is simple and fast, but there is an ‘observer effect’; it injects probes, and adds extra bandwidth overhead to the network, which may change the original network status.
Passive network congestion detection [6,7] captures the information of the packets through the detection point and sends it to the server to obtain traffic characteristics and network status, such as NetFlow, sFlow and IPFIX; it does not generate extra bandwidth overhead, but the design of mechanisms such as sampling will also sacrifice accuracy of detection.
The SDN-based network congestion detection [8,9,10] can detect network delay, packet loss rate, etc. Adrichem et al. [11] proposed a measurement scheme OPENnetmon, which actively polls traffic and destination switches and monitors link delay and packet loss through the controller. Yu et al. [12] proposed a delay monitoring framework SLAM, which triggers control messages by actively sending probe packets, and analyzes the time when the messages arrive at the controller to obtain the delay. Fu et al. [13] proposed an efficient passive lightweight predictor EPLE, which uses the Openflow protocol for detecting packet loss. The passive detection method reduces the overhead.
The INT-based network congestion detection [14,15,16] exploits the programmability of the network data plane to collect network status information. Zhu et al. proposed a packet-level network telemetry system, Everflow [17], which actively constructs telemetry packets to obtain network status information; it has the advantages of flexibility, efficiency, and configurability. HULA [18] uses special probes to collect global link utilization information and update it periodically, which may lead to a large bandwidth overhead. Pan et al. proposed INT-path [19] by encapsulating the source routing label into the probe packets, which can telemetry the specified network path status.

2.2. Network Flow Watermarking

The time-based network flow watermarking techniques includes the packet timing-based flow watermarking techniques and the packet interval-based flow watermarking techniques. The packet timing-based flow watermarking techniques [20] embed watermark by modifying time-dependent characteristics, which is vulnerable to multi-flow attacks, and network events such as packet loss, packet reassembly, and time crosstalk. Wang et al. [21] proposed a watermarking scheme based on IPD, which works better than the passive time-based flow association technique with sufficient redundancy. Houmansadr et al. [22] proposed RAINBOW to improve the invisibility of the watermark by introducing lower packet delay than other work.
The packet interval-based flow watermarking techniques [23,24] embed information by modifying the number of packets in a specific interval. The ICBW proposed by Wang et al. [25] uses the uniform distribution principle to embed watermark information by changing the IPD. Pyun et al. proposed the IBW (Interval-Based Watermarking) [26] by modifying the IPD to control the number of packets in four intervals, which has a strong anti-interference ability. The IBF proposed by Luo et al. can embed more fingerprint data with fewer intervals and packets. Houmansadr et al. [27] designed a scalable watermark SWIRL, which selects different watermarks for marking according to flow characteristics, and improves the robustness of the watermark.
Besides, there are some other flow watermarking techniques. The packet payload-based flow watermarking techniques embed information by modifying the content of packets, for example, SWT (Sleepy Watermark Tracing) [28]. The packet length-based flow watermarking techniques embed information by modifying the length of packets, for example, LBW (Length-Based Watermarking) [29]. The packet order-based flow watermarking techniques change the sequence number of packets to embed information, for example, PROFW [30]. The traffic rate-based flow watermarking techniques modify the traffic rate of flow to embed information, for example, PN-based SS (PN Code Diversification Based Spread Spectrum) [31].
We select three aspects to evaluate the performance of several flow watermarking techniques [32]: robustness, invisibility and coding efficiency. Robustness refers to the ability to keep the original data when facing network delays, packet loss and other disturbances. Invisibility refers to the ability that the watermark is invisible to the outside world and can be undiscovered by attackers. Coding efficiency reflects the amount of watermark information embedded in a fixed time unit. Table 2 shows the evaluation of several flow watermarking techniques.

2.3. eBPF

The eBPF [33] is a technique that can run sandboxed programs in the kernel without requiring higher kernel source code or loading kernel modules; it uses a custom 64-bit RISC instruction set and can run just-in-time natively compiled BPF programs in the Linux kernel to make the Linux kernel programmable. There are many open source projects based on eBPF, such as Katran, bcc, bpftrace, cilium, Falco, etc.
The eBPF has a wide range of application scenarios. In the field of tracking and analysis, eBPF can monitor the runtime behavior of applications and the system kernel to provide introspection capabilities for applications and systems. And combine the two views to solve system performance problems. In the security world, eBPF can combine aspects of system call filtering, network-level filtering, and in-city context tracking to create security systems that operate on more contexts and have a better level of control. In the network domain, eBPF allows adding additional protocol parsers and easily tailoring any forwarding logic to meet the needs of SDN.

3. Network Congestion Detection Model Based on Flow Watermarking

3.1. Congestion Detection Model Based on Watermark

The network congestion detection model based on flow watermarking is shown in Figure 2, which mainly includes three logical layers: data layer, codec layer and management layer. When a packet reaches the server core, it enters the data layer. The eBPF extracts the header field of the packet for multi-flow identification. The quintuple information of the encoded and decoded flow distributed by the management layer is used as the key to match. If the match is successful, it indicates that the packet belongs to the encoded flow, which enters the codec layer. Otherwise, it indicates that the packet belongs to the non-encoded flow, which is forwarded directly.
The codec layer includes a watermark encoding module and a watermark decoding module. The watermark encoding module is responsible for embedding the watermark into the encoded flow. According to the watermark distributed by the management layer, eBPF changes the IPD by delaying the forwarding time of the packets or directly forwarding the packets to encode the watermark information. The watermark decoding module is responsible for decoding watermark data destroyed by network congestion. The eBPF counts the number of packets arriving in the corresponding interval of the decoded flow and performs arithmetic operations to obtain the decoding information of the watermark. The information is then passed to the management layer.
The management layer includes a watermark generation module and a network status analysis module. The watermark generation module generates the watermark data, interval length and quintuple information of encoded and decoded flow in real-time according to the network paths to be detected, detection accuracy and other factors. And it sends them to the codec layer and data layer. The network status analysis module analyzes the information from the watermark decoding module to obtain the network status.
We formally describe the generation process of the watermark. We select an end-to-end path P to detect its congestion status. The accuracy of detection is denoted as x, and the unit is millisecond or microsecond. The duration of detection is denoted as T. We select the flow f passing through the path P. The PPS (Packet Per Second) of f is denoted as R(f), and the quintuple identifier is denoted as FlowID. The length of interval is denoted as t, and its value range is:
n R ( f ) t x ,
where n is the minimum value of the number of packets in the interval, which can be set to 50, 100, etc.
T and t determine the bits of watermark N, that is
N = g ( T t ) ,
where the function g is determined by a specific watermark encoding method.
According to N and FlowID, the watermark is obtained. To ensure the randomness of watermark generation, random number τ is introduced. The watermark generation function is
W a t e r m a r k = F ( N , F l o w I D , τ ) .
Then network congestion detection model can be defined as:
N e t w o r k   S t a t u s = M o d e l ( W a t e r m a r k , T r a f f i c )
where the input is Watermark and Traffic. Traffic represents the distribution of size and arrival time of flows, which may cover different traffic models, such as micro-burst flow model, elephant flow model, etc. The output is Network Status, which indicates the current network status. According to the fine-grained network congestion detection algorithm, it can be divided into normal, slightly congested, moderately congested and heavily congested. Section 5 introduces the algorithm in detail.

3.2. Watermark Mechanism Based on Sparsity of Packet

The flow watermarking based on sparsity of packet uses four consecutive intervals to encode two bits of watermark data, which modifies the number of packets in the middle two intervals and compares it with the average number of packets in the four intervals, that is, the sparsity of packet.
We divide flow F (with a series of packets) into intervals Ii (i < 0, slot index) of length T (>0) starting at random time offset o (>0) and choose four consecutive intervals. The first to fourth intervals are denoted as I1,k, I2,k, I3,k, and I4,k (k = 1, 2, …, r), where the number of packets contained is expressed as X1,k, X2,k, X3,k and X4,k (k = 1, 2, …, r). For flows that are sufficiently long duration and contain many intervals, Xj,k (j = 1, 2, 3, 4; k = 1, 2, …, r) satisfy random sample drawn from a sufficiently large general distribution. Therefore, Xj,k satisfy the iid (independent and identical distribution). Assume
E ( X j , k ) = μ x , V ( X j , k ) = σ x 2 .
Given four continuous intervals, the difference between the number of packets in the second interval and the mean number of packets is defined as:
Y k 2 = X 2 , k X k ¯ ,
where
X k ¯ = 1 4 ( X 1 , k + X 2 , k + X 3 , k + X 4 , k ) .
Therefore
E ( X k ¯ ) = μ x , V ( X k ¯ ) = σ x 2 / 4 ,
E ( Y k 2 ) = 0 , V ( Y k 2 ) 5 σ x 2 / 4 .
Similarly
Y k 3 = X 3 , k X k ¯ , E ( Y k 3 ) = 0 , V ( Y k 3 ) 5 σ x 2 / 4 .
Because X2,k satisfy the iid, so do Yk2 and Yk3.
To improve the accuracy of watermark codec and avoid the influence of accidental factors, redundant coding r (>0) is introduced, that is, r shares of four consecutive intervals are used to embed two bits of watermark. Thus, the mean of sampling Yk is defined as
Y r ¯ = 1 r k = 1 r Y k .
Since Yk (k = 1; 2; …; r) satisfy the iid, then
E ( Y ¯ r ) = 0 ,   V ( Y r ¯ ) 5 σ x 2 4 r .
Yk is symmetric about mean 0, so is   Y r ¯ .
According to the watermark data, the watermark coding module directly forwards or delays packets in the specific interval to embed information. Figure 3 shows the schematic diagram of the watermark encoding. When redundant coding is not used (i.e., r = 1), four consecutive intervals are used to encode the two bits of watermark. By delaying the forwarding time of packets, the Yk2 and Yk3 are increased or decreased to be larger or smaller than the average number of packets in four intervals to encode four watermarks.
When the watermark ‘00’ is encoded, the packets in the second interval are delayed to the third interval. At the third interval, the delayed packets are sent first. Then the packets arriving this interval are sent. The operation lets Yk2 decrease by μ x , and Yk3 increase by μ x . At this time, Yk2 is less than the average number of packets in four intervals, and Yk3 is greater than the average value. The encoding operations of other three watermarks are similar.

4. Theoretical Analysis of Network Congestion Detection Based on Flow Watermarking

4.1. Analysis of the SRW without Interference

We define the SRW(success rate of the watermark) as the probability that the two bits of watermark are decoded correctly. That is, when f = 00, the SRW is expressed as P r [ ( Y r 2 f ¯ < 0 ) ( Y r 3 f ¯ > 0 ) ] ; when f = 01, the SRW is P r [ ( Y r 2 f ¯ 0 ) ( Y r 3 f ¯ < 0 ) ] ; when f = 10, the SRW is P r [ ( Y r 2 f ¯ < 0 ) ( Y r 3 f ¯ 0 ) ] ; when f = 11, the SRW is P r [ ( Y r 2 f ¯ 0 ) ( Y r 3 f ¯ 0 ) ] . Yk are defined as Y k f (k = 1; 2; …; r) after embedding watermark f. Since Y r ¯   is symmetrical about the mean value 0, only one case needs to be analyzed. Take P r [ ( Y r 2 f ¯ 0 ) ( Y r 3 f ¯ < 0 ) ] when f = 01 as an example.
Yk satisfy random sampling, so do Y k f . According to the central limit theorem, in the case of random sampling with a large sample, Y r 2 f ¯ and Y r 3 f ¯ can be considered to satisfy the standard normal distribution; thus, the distribution of probability satisfies:
P r [ ( Y r 2 f ¯ E ( Y r 2 f ¯ ) ) V ( Y r 2 f ¯ ) ξ ] 1 Φ ( ξ ) ,   P r [ ( Y r 3 f ¯ E ( Y r 3 f ¯ ) ) V ( Y r 3 f ¯ ) < ξ ] Φ ( ξ ) ,
where
Φ ( ξ ) = ξ 1 2 π e μ 2 / 2 d u
After embedding watermark ‘01’, X2,k and X3,k are defined as X 2 , k f and X 3 , k f , namely
X 2 , k f = X 1 , k + X 2 , k , X 3 , k f = 0
From Formula (5) we can obtain:
E ( X 2 , k f ) = 2 μ x , E ( X 3 , k f ) = 0
V ( X 2 , k f ) = σ x 2 + σ x 2 + 2 C o r r ( X 1 , k , X 2 , k ) σ x 2 , V ( X 3 , k f ) = 0
The maximum variance occurs when C o r r ( X 1 , k , X 2 , k ) = 1 .
Therefore,
E ( Y r 2 f ¯ ) = μ x , V ( Y r 2 f ¯ ) 35 σ x 2 / 8 r .
E ( Y r 3 f ¯ ) = μ x , V ( Y r 3 f ¯ ) 3 σ x 2 / 8 r
From Formula (13) we can obtain:
P [ Y r 2 f ¯ 0 ] = P r [ ( Y r 2 f ¯ E ( Y r 2 f ¯ ) ) V ( Y r 2 f ¯ ) E ( Y r 2 f ¯ ) V ( Y r 2 f ¯ ) ] 1 Φ ( E ( Y r 2 f ¯ ) V ( Y r 2 f ¯ ) ) 1 Φ ( 8 r μ x 35 σ x ) .
Similarly,
P [ Y r 3 f ¯ < 0 ] = P r [ ( Y r 3 f ¯ E ( Y r 3 f ¯ ) ) V ( Y r 3 f ¯ ) < E ( Y r 3 f ¯ ) V ( Y r 3 f ¯ ) ] Φ ( E ( Y r 3 f ¯ ) V ( Y r 3 f ¯ ) ) Φ ( 8 r μ x 3 σ x ) .
The SRW without interference is
P [ ( Y r 2 f ¯ 0 ) ( Y r 3 f ¯ < 0 ) ] ( 1 Φ ( 8 r μ x 35 σ x ) ) · Φ ( 8 r μ x 3 σ x )
It can be concluded that the SRW without external interference increases with the increase of ux, and decreases with the increase of σ x .

4.2. Analysis of the SRW When Packet Delay Occurs

Figure 4 shows an example of the distortion of watermark ‘00’ when packet delay occurs. If the packets of the first interval are delayed to arrive at the second interval, and the packets of the third interval are delayed to arrive at the fourth interval. The decoder obtains that Yk2 is greater than the average value and Yk3 is less than the average value. The decoded watermark is ‘01’. Similarly, when packets carrying different watermarks face different delays, the decoder also obtains different error results.
The following is a theoretical analysis of the SRW when packet delay occurs, and take P r [ ( Y r 2 f ¯ 0 ) ( Y r 3 f ¯ < 0 ) ] when f = 01 as an example.
After the packet delay occurs, X i , k f (i = 1, 2, 3, 4), Y r 2 f ¯ and Y r 3 f ¯ are defined as X i , k F (i = 1, 2, 3, 4), Y r 2 F ¯ and Y r 3 F ¯ . Let D 2 , k be the number of packets that X 2 , k f reduced and define μ d 2 and σ d 2 as the mean and variance of D 2 , k , respectively. Let D 3 , k be the number of packets that X 3 , k f increased and define μ d 3 and σ d 3 as the mean and variance of D 3 , k , respectively. For network with many flows, the packet delays introduced by network congestion or delay jitter satisfy randomness drawn from a general distribution with a sufficiently large sample, so D 2 , k and D 3 , k satisfy iid. We have
X 2 , k F = X 2 , k f D 2 , k , X 3 , k F = X 3 , k f + D 3 , k , X k F ¯ = 1 4 ( X 1 , k F + X 2 , k F + X 3 , k F + X 4 , k F )
Therefore,
E ( X 2 , k F ) = 2 u x u d 2 , E ( X 3 , k F ) = u d 3
V ( X 2 , k F ) 4 σ x 2 + σ d 2 2 , V ( X 3 , k F ) = σ d 3 2
The maximum occurs when C o r r ( X 2 , k , D 2 , k ) = 0 .
It follows that,
E ( Y r 2 F ¯ ) = 1 4 ( 4 u x 3 u d 2 u d 3 ) , V ( Y r 2 F ¯ ) 1 16 r ( 70 σ x 2 + 17 σ d 2 2 + σ d 3 2 )
E ( Y r 3 F ¯ ) = 1 4 ( u d 2 + 3 u d 3 4 u x ) , V ( Y r 3 F ¯ ) 1 16 r ( 6 σ x 2 + σ d 2 2 + 17 σ d 3 2 )
Using the central limit theorem, we obtain:
P [ Y r 2 F ¯ 0 ] 1 Φ ( E ( Y r 2 F ¯ ) V ( Y r 2 F ¯ ) ) 1 Φ ( r ( 4 μ x 3 u d 2 u d 3 ) 70 σ x 2 + 17 σ d 2 2 + σ d 3 2 ) .
Similarly
P [ Y r 3 F ¯ < 0 ] Φ ( E ( Y r 3 F ¯ ) V ( Y r 3 F ¯ ) ) Φ ( r ( u d 2 + 3 u d 3 4 u x ) 6 σ x 2 + σ d 2 2 + 17 σ d 3 2 ) .
The SRW when packet delay occurs is
P [ ( Y r 2 F ¯ 0 ) ( Y r 3 F ¯ < 0 ) ] ( 1 Φ ( r ( 4 μ x 3 u d 2 u d 3 ) 70 σ x 2 + 17 σ d 2 2 + σ d 3 2 ) ) · Φ ( r ( 4 u x u d 2 3 u d 3 ) 6 σ x 2 + σ d 2 2 + 17 σ d 3 2 )
Obviously, the SRW when packet delay occurs is significantly lower than the SRW without any interference. Because of packet delay, the difference between the number of packets in second interval and the average number in four intervals decreases, and the variance increases. Similarly, the difference between the number of packets in third interval and the average number increases, and the variance also increases. The greater the change in the number of packets, the lower the SRW; thus, the change in SRW can reflect the packet delay in the network.

4.3. Analysis of the SRW When Packet Loss Occurs

Figure 5 shows an example of the distortion of watermark ‘00’ when packet loss occurs. When the packets of the third interval are lost, the decoder counts the number of packets, and finds that Yk2 and Yk3 are less than the average value. The decoded watermark is ‘10’. Similarly, when packets carrying different watermarks face different packet loss, the decoder also obtains different error results.
Taking P r [ ( Y r 2 P ¯ 0 ) ( Y r 3 P ¯ < 0 ) ] when f = 01 as an example to analyze the SRW when packet loss occurs. After packet loss occurs, X i , k f (i = 1, 2, 3, 4), Y r 2 f ¯ and Y r 3 f ¯ are defined as   X i , k P (i = 1, 2, 3, 4), Y r 2 P ¯ and Y r 3 P ¯ . Let P 2 , k be the number of packets that X 2 , k f   reduced , and define μ p 2 and σ p 2 as the mean and variance of P 2 , k , respectively; it is obvious that P 2 , k satisfy iid. We have
X 2 , k P = X 2 , k f P 2 , k , X 3 , k P = X 3 , k f , X k P ¯ = 1 4 ( X 1 , k P + X 2 , k P + X 3 , k P + X 4 , k P )
Then
E ( X 2 , k P ) = 2 u x u d 2 , V ( X 2 , k P ) 4 σ x 2 + σ d 2 2
E ( X 3 , k P ) = 0 , V ( X 3 , k P ) = 0 .
It follows that
E ( Y r 2 P ¯ ) = 1 4 ( 4 u x 3 u d 2 ) , V ( Y r 2 P ¯ ) 1 16 r ( 70 σ x 2 + 17 σ d 2 2 )
E ( Y r 3 P ¯ ) = 1 4 ( u d 2 4 u x ) , V ( Y r 3 P ¯ ) 1 16 r ( 6 σ x 2 + σ d 2 2 )
Using the central limit theorem, we obtain:
P [ Y r 2 P ¯ 0 ] 1 Φ ( E ( Y r 2 P ¯ ) V ( Y r 2 P ¯ ) ) 1 Φ ( r ( 4 u x 3 u d 2 ) 70 σ x 2 + 17 σ d 2 2 ) .
Similarly
P [ Y r 3 P ¯ < 0 ] Φ ( E ( Y r 3 P ¯ ) V ( Y r 3 P ¯ ) ) Φ ( r ( u d 2 4 u x ) 6 σ x 2 + σ d 2 2 ) .
The SRW when packet loss occurs is
P [ ( Y r 2 F ¯ 0 ) ( Y r 3 F ¯ < 0 ) ] ( 1 Φ ( r ( 4 u x 3 u d 2 ) 70 σ x 2 + 17 σ d 2 2 ) ) · Φ ( r ( 4 u x u d 2 ) 6 σ x 2 + σ d 2 2 )
Compared with the SRW without any interference, the SRW when packet loss occurs is lower. The greater the packet loss rate, the greater the change in number of packets in the same interval. And the greater the change of variance and mean, the lower the SRW; thus, the change of the SRW can roughly reflect the packet loss in the network.

5. Fine-Grained Network Congestion Detection Algorithm Based on Flow Watermarking

There is micro-burst traffic in the Internet and datacenter network. The emergence of burst traffic may cause queuing in switch buffers or even packet loss, which has a great impact on network performance. Therefore, how to reduce the damage of micro-burst traffic to network performance is very important. The primary task is to detect network latency and packet loss caused by micro-burst traffic in real-time.

5.1. Analysis of SRW in Micro-Burst Traffic Model

Figure 6 shows an example of the decoding result of watermark ‘00’ when micro-packet delay and micro-packet loss occurs. If some packets in the first interval are delayed until the second interval, the decoder obtains that Yk2 is less than the average value and Yk3 is greater than the average value. The decoded watermark is ‘00’. Similarly, if some packets in the third interval are lost, Yk2 is less than the average value and Yk3 is greater than the average value. The decoded watermark is still ‘00’. Therefore, when slight packet delay and packet loss occurs, the watermark decoding result may be deceptive due to the small change in the number of packets, which will affect the judgment of the changes in network status.

5.2. Fine-Grained Network Congestion Detection Algorithm

The fine-grained network congestion detection algorithm is based on the flow watermarking, and it judges the changes in network status according to the difference between the proportion of the number of packets in a certain interval and the ideal proportion of the number of packets in the interval, that is, the Crps (Change ratio of sparsity of packet). Since the delay operations are different for different codes in different intervals, the Crps of four codes need to be analyzed in detail.
After a small packet delay or packet loss occurs, X i , k f (i = 1, 2, 3, 4), Y r 2 f ¯ and Y r 3 f ¯ are defined as   X i , k N (i = 1, 2, 3, 4), Y r 2 N ¯ and Y r 3 N ¯ . Let N j (j = 0, 1, 2, 3) be the number that X i , k f increase or decrease when encoding ‘j’, and n j (j = 0, 1, 2, 3) be the proportion of the number that X i , k f change. For different codes, N j and n j are analyzed in different intervals.
For the code ‘00’, without external interference, X 2 , k f = 0 , X 3 , k f = 2 u x . In realistic scenes, if some packets in the third interval are congested until the fourth interval or some packets in the third interval are lost, it can be inferred that when N 0 is less than ux, network congestion has occurred, but the correct result can still be obtained. We have
X 3 , k N u x = n 0 u x   ( 0 < n 0 < 100 % ) ,
n 0 = ( X 3 , k N u x ) / u x   ( 0 < n 0 < 100 % ) .
At this time Y r 3 N ¯ 0 . The smaller the n0, the greater the change of sparsity of packet. At this time, the greater the changes in network status, correspondingly. Therefore, when the decoding result is ‘00’, n0 can reflect the small packet delay and packet loss, which is more helpful for the analysis of the change in network status.
The analysis of the code ‘00’ is analogized to other codes. For code ‘01’, ideally, X 2 , k f = 2 u x ,   X 3 , k f = 0 . In realistic scenes, some packets in the second interval are congested until the third interval, or some packets in the second interval are lost; it can be inferred that when N 1 is less than ux, network congestion has occurred, but the correct result can still be obtained. We have
X 2 , k N u x = n 1 u x   0 < n 1 < 100 % ,
n 1 = ( X 2 , k N u x ) / u x   0 < n 1 < 100 %
The smaller n1, the greater the change of sparsity of packet.
For code ‘10’, ideally, X 2 , k f = 0 ,   X 3 , k f = 0 ,     X 4 , k f = 3 u x . In realistic scenes, some packets in the fourth interval are congested until the next interval, or some packets in the fourth interval are lost; it can be inferred that when N 2 is less than 2ux, network congestion has occurred, but the correct result can still be obtained. We have
3 u x X 4 , k N = n 2 u x   ( 0 < n 2 < 200 % ) ,
n 2 = ( 3 u x X 4 , k N ) / u x   ( 0 < n < 200 % ) .
The larger n2, the greater the change in sparsity of packet.
For code ‘11’, ideally, X 2 , k f = 1.5 u x ,   X 3 , k f = 1.5 u x . In realistic scenes, some packets in the third interval are congested until the fourth interval, or some packets in the third interval are lost; it can be inferred that when N 3 is less than 0.5ux, network congestion has occurred, but the correct result can still be obtained. We have
X 3 , k N u x = n 3 u x   ( 0 < n 3 < 50 % ) ,
n 3 = ( X 3 , k N u x ) / u x   ( 0 < n 3 < 50 % ) .
The smaller the n3, the greater the change of sparsity of packet.
We define the DRW(detection rate of the watermark) as the percentage of the number of correctly identified bits of the watermark in the total number of encoded bits of the watermark. Let n j ¯ ( j = 0 ,   1 ,   2 ,   3 )   be the mean of multiple   n j . For the encoded flow f, the watermark decoding module performs the corresponding operation to obtain n j according to the four decoded results. Comparing the decoded value of watermark with the encoded value of watermark, the DRW is obtained. According to the DRW, the network status can be first divided into four levels: normal, slightly congested, moderately congested and heavily congested. When the network status are classified as normal, the n j ¯ corresponding to the correctly decoded watermark are calculated, respectively. The Crps is used to detect micro-burst traffic. The changes in network status are divided into more fine-grained levels to realize network congestion detection on a small time scale.

6. Evaluation

6.1. Experiment Environment

The experimental network topology is shown in Figure 7, which are three scenes. Each scene consists of PCs running Ubuntu 18.04 and routers. The network congestion detection model designed in Section 3 is implemented on the PC based on eBPF, and the router runs the BGP routing protocol to achieve network interconnection. We use iPerf to generate flow with a specified bandwidth, and the Traffic Control module to set the link packet delay and packet loss rate.
Figure 7a is an ideal scene without any interference flow. C1 sends the encoded flow f. The C2–C3 link controls the packet delay and packet loss rate. C4 receives the packets belong to f and decodes watermark. Figure 7b is a realistic scene when bandwidth is the bottleneck. C5 sends interference flows of different sizes to C6. The encoded flow and the interference flow share the transmission path of C2–C3. C4 decodes and analyzes the changes in the encoded flow with interference flows. Figure 7c is a realistic scene when process performance is the bottleneck. C5 sends interference flows of different sizes to C4. The encoded flow and the interference flow share the transmission path of C2–C4 and the decoder port of C4. C4 decodes and analyzes the changes in the encoded flow with interference flows.

6.2. Experiment Result and Analysis

(1)
The increase of the length of interval and flow rate will improve DRW.
DRW greatly affects the judgment of network status. In Figure 7a, we set the packet loss rate as 5%, the average delay jitter as 20 ms and the flow rate as 1 M/s, 10 M/s and 20 M/s in different interval length to evaluate the detection rate of watermark based on sparsity of packet. As shown in Figure 8, the increase of the length of interval and the flow rate will improve DRW; thus, we set length of interval as 500 ms and flow rate as 10 M/s to evaluate the performance of network congestion detection based on flow watermarking.
(2)
DRW in different packet delays and packet loss rates.
In order to evaluate the detection ability of watermark in different packet delays and packet loss rates, we evaluate DRW in three scenes.
In Figure 7a, we set the average delay jitter as 0~500 ms, the length of interval as 500 ms and the average packet loss rate as 0~20%. From Figure 9, it can be concluded that with the increase of packet delay and packet loss rate, the DRW of three watermarks decrease accordingly. Compared with the other two watermarks, the watermark based on sparsity of packet has a larger change, which can better reflect the changes in network status.
In order to make evaluation in line with real network status, we simulate a more real network environment by adding interference flows to create congestion.
In Figure 7b,c, we set the length of interval as 500 ms, the flow rate of the encoded flow as 10 M/s, the limit rate of shared link C2–C3 as 20 M/s, and the rate of the interference flow as 5 M/s, 10 M/s, 15 M/s, and 20 M/s, respectively, and evaluate the DRW of the encoded flow in C4. When the rate of interference flow increases gradually, the packet loss rate of the encoded flow increases accordingly. As shown in Figure 10, as the packet loss rate of the encoded flow increases, the DRW decreases. In Figure 7c, because the encoded flow and the interference flow share the transmission path of C2–C4 and the decoder port of C4, the DRW is slightly lower than the DRW in Figure 7b.
It be concluded that the watermark will change when network packet delay and packet loss occur. The greater the packet delay and packet loss rate, the lower the DRW; however, the change of the DRW is small when the changes in network status is slight. For example, in Figure 7a, when the packet loss rate is 1% and 5%, the DRW is about 93%, which is easy to cause confusion in the analysis of the changes in network status. Therefore, it is necessary to combine the fine-grained network congestion detection algorithm for further judgment. We evaluate the performance of fine-grained network congestion detection algorithm in three scenes.
(3)
Evaluation of fine-grained network congestion detection algorithms in three scenes.
In Figure 7a, we set the length of interval as 500 ms and the average delay jitter as 0~200 ms to evaluate the Crps of four codes. Figure 11 shows the Crps in different packet delays; it can be concluded that with the increase of packet delay, the Crps change accordingly, and there is a certain range of change when small packet delay occurs. Compared with the DRW, the Crps have larger variation. During the packet delay of 200 ms, the DRW changes by 20%, but the average Crps change by 50%; thus, the Crps can better show the changes in network status.
In Figure 7b, we set the length of interval as 500 ms, the rate of the encoded flow as 10 M/s, the limited rate of shared link C2–C3 as 20 M/s, and the rate of interference flow as 5 M/s, 10 M/s, 15 M/s, 20 M/s, respectively, to evaluate the Crps of four codes in C4. As shown in Figure 12, the same conclusion can be drawn. As the packet loss rate increases, the Crps change accordingly, and there are certain changes when small packet loss occurs. Compared with the DRW, some Crps have a greater variation. When the packet loss rate is 45%, the DRW changes by about 55%, but the n2 changes by about 65%. The n0 has changed by about 58% when the packet loss rate is 37.85%; thus, some Crps can better show the changes in network status.
In Figure 7c, we set the length of interval as 500 ms, the rate of the encoded flow as 10 M/s, the limited rate of shared link C2 –C3 as 20 M/s, and the rate of interference flow as 5 M/s, 10 M/s, 15 M/s, 20 M/s, respectively, to evaluate the Crps of four codes in C4. As shown in Figure 13, the same conclusion can still be drawn. As the packet loss rate increases, the Crps change accordingly, and there are certain changes when small packet loss occurs. Compared with the DRW, some Crps have a greater variation; thus, some Crps can better show the changes in network status.
It can be concluded that with the increase of the packet delay and packet loss rate, the four Crps change accordingly, and there is a certain range of change when slight congestion occurs. Using the Crps to judge the changes in network status can obtain more accurate network information. Therefore, the fine-grained network congestion detection algorithm based on flow watermarking can reflect the small change of network status and realize more accurate network congestion detection.

7. Conclusions and Further Work

Facing the problems of occupying extra bandwidth, decreasing the ratio of the effective payload of the packet, and increasing the burden of the switches in the current network congestion detection, this paper proposes a fine-grained network congestion detection method based on flow watermarking, and combines it with the eBPF, which realizes fine-grained efficient network congestion detection with low overhead and easy deployment.
This paper first proposes a network congestion detection model based on flow watermarking. Then, the theoretical analysis of network congestion detection based on flow watermarking is carried out. And a fine-grained network congestion detection algorithm is designed for the problem that the congestion caused by the micro-burst traffic is difficult to detect.
The experimental results based on the eBPF environment show that the changes in network status (normal, congested, etc.) can be obtained in real-time and accurately by analyzing the watermark decoding information. The watermark based on the sparsity of the packet can better reflect the network status and the fine-grained network congestion detection algorithm can achieve congestion detection on a small time scale.
Despite the network congestion detection method based on flow watermarking performing well, there are other challenges that are not addressed. Our future work will investigate the impact of different traffic scheduling algorithms on the network congestion detection method based on flow watermarking. We will also evaluate the effectiveness and overhead of this method in practical implementation.

Author Contributions

Methodology, L.M., G.L. and B.W.; Software, L.M.; Writing—review & editing, L.M. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Huawei.AI Fabric, Intelligent and Lossless Data Center Network in the AI Era [DB/OL]. Available online: https://www.huawei.com/en/news/2018/12/huawei-releases-ai-fabric-white-paper (accessed on 20 December 2018).
  2. Zhang, L.; Kong, Y.; Guo, Y.; Yan, J.; Wang, Z. Survey on network flow watermarking: Model, interferences, applications, technologies and security. IET Commun. 2018, 12, 1639–1648. [Google Scholar] [CrossRef]
  3. Luo, Y. Research on Proactive Defense of Compute Network; CNKI: Beijing, China, 2017. [Google Scholar]
  4. Lin, C.; Han, G.; Du, J.; Xu, T.; Peng, Y. Adaptive traffic engineering based on active network measurement towards software defined internet of vehicles. IEEE Trans. Intell. Transp. Syst. 2020, 22, 3697–3706. [Google Scholar] [CrossRef]
  5. Liu, L.; Zhang, H.; Shi, J.; Yu, X.; Xu, H. I2P anonymous communication network measurement and analysis. In Proceedings of the International Conference on Smart Computing and Communication, Sarawak, Malaysia, 28–30 June 2019; Springer: Cham, Switzerland, 2019; pp. 105–115. [Google Scholar]
  6. Choi, A.; Karamollahi, M.; Williamson, C.; Arlitt, M. Zoom Session Quality: A Network-Level View. In Proceedings of the International Conference on Passive and Active Network Measurement, Virtual Event, 28–30 March 2022; Springer: Cham, Switzerland, 2022; pp. 555–572. [Google Scholar]
  7. Nayak, P.; Knightly, E.W. Virtual speed test: An ap tool for passive analysis of wireless lans. Comput. Commun. 2022, 192, 185–196. [Google Scholar] [CrossRef]
  8. Liu, C.; Ju, W.; Zhang, G.; Xu, X.; Tao, J.; Jiang, D.; Lu, J. A SDN-based active measurement method to traffic QoS sensing for smart network access. Wirel. Netw. 2021, 27, 3677–3688. [Google Scholar] [CrossRef]
  9. Shimokawa, S.; Taenaka, Y.; Tsukamoto, K.; Lee, M. Sdn based in-network two-staged video qoe estimation with measurement error correction for edge network. IEEE Access 2021, 9, 39733–39745. [Google Scholar] [CrossRef]
  10. Cai, W.; Song, X.; Liu, C.; Jiang, D.; Huo, L. An Adaptive and Efficient Network Traffic Measurement Method Based on SDN in IoT. In Proceedings of the International Conference on Simulation Tools and Techniques, Istanbul, Türkiye, 20–21 October 2022; Springer: Cham, Switzerland, 2022; pp. 64–74. [Google Scholar]
  11. Van Adrichem, N.L.M.; Doerr, C.; Kuipers, F.A. Opennetmon: Network monitoring in openflow software-defined networks. In Proceedings of the 2014 IEEE Network Operations and Management Symposium (NOMS), Krakow, Poland, 5–9 May 2014; pp. 1–8. [Google Scholar]
  12. Yu, C.; Lumezanu, C.; Sharma, A.; Xu, Q.; Jiang, G.; Madhyastha, H. Software-defined latency monitoring in data center networks. In Proceedings of the International Conference on Passive and Active Network Measurement, New York, NY, USA, 19–20 March 2015; Springer: Cham, Switzerland, 2015; pp. 360–372. [Google Scholar]
  13. Fu, C.; John, W.; Meirosu, C. Eple: An efficient passive lightweight estimator for sdn packet loss measurement. In Proceedings of the 2016 IEEE Conference on Network Function Virtualization and Software Defined Networks (NFV-SDN), Palo Alto, CA, USA, 7–10 November 2016; pp. 192–198. [Google Scholar]
  14. Li, Y.; Miao, R.; Liu, H.H.; Zhuang, Y.; Feng, F.; Tang, L.; Cao, Z.; Zhang, M.; Kelly, F.; Alizadeh, M.; et al. HPCC: High precision congestion control. In Proceedings of the ACM Special Interest Group on Data Communication (SIGCOMM’19), Beijing, China, 19–23 August 2019; Association for Computing Machinery: New York, NY, USA, 2019; pp. 44–58. [Google Scholar] [CrossRef]
  15. Cui, M.; Li, X.; Wang, Y.; Niu, T.; Yang, F. SPT: Sketch-based polling in-band network telemetry. In Proceedings of the MS 2022–2022 IEEE/IFIP Network Operations and Management Symposium, Budapest, Hungary, 25–29 April 2022; pp. 1–7. [Google Scholar]
  16. Pan, T.; Lin, X.; Song, H.; Song, E.; Bian, Z.; Li, H.; Zhang, J.; Li, F.; Huang, T.; Jia, C.; et al. INT-probe: Lightweight In-band Network-Wide Telemetry with Stationary Probes. In Proceedings of the 2021 IEEE 41st International Conference on Distributed Computing Systems (ICDCS), Washington, DC, USA, 7–10 July 2021; pp. 898–909. [Google Scholar]
  17. Zhu, Y.; Kang, N.; Cao, J.; Greenberg, A.; Lu, G.; Mahajan, R.; Maltz, D.; Yuan, L.; Zhang, M.; Zhao, B.Y.; et al. Packet-level telemetry in large datacenter networks. In Proceedings of the 2015 ACM Conference on Special Interest Group on Data Communication, London, UK, 17–21 August 2015; pp. 479–491. [Google Scholar]
  18. Katta, N.; Hira, M.; Kim, C.; Sivaraman, A.; Rexford, J. Hula: Scalable load balancing using programmable data planes. In Proceedings of the Symposium on SDN Research, Santa Clara, CA, USA, 14–15 March 2016; pp. 1–12. [Google Scholar]
  19. Pan, T.; Song, E.; Bian, Z.; Lin, X.; Peng, X.; Zhang, J.; Huang, T.; Liu, B.; Liu, Y. Int-path: Towards optimal path planning for in-band network-wide telemetry. In Proceedings of the IEEE INFOCOM 2019-IEEE Conference on Computer Communications, Paris, France, 29 April–2 May 2019; pp. 487–495. [Google Scholar]
  20. Iacovazzi, A.; Sarda, S.; Frassinelli, D.; Elovici, Y. Dropwat: An invisible network flow watermark for data exfiltration traceback. IEEE Trans. Inf. Forensics Secur. 2017, 13, 1139–1154. [Google Scholar] [CrossRef]
  21. Wang, X.; Reeves, D.S. Robust correlation of encrypted attack traffic through stepping stones by manipulation of interpacket delays. In Proceedings of the 10th ACM Conference on Computer and Communications Security, Washington, DC, USA, 27–30 October 2003; pp. 20–29. [Google Scholar]
  22. Houmansadr, A.; Kiyavash, N.; Borisov, N. RAINBOW: A Robust And Invisible Non-Blind Watermark for Network Flows. NDSS 2009, 47, 406–422. [Google Scholar]
  23. Yu, L.; Zhang, L.; Zhang, Y.; Wen, W.; Du, X.; Cao, F. Dynamic Interval-based Watermarking for Tracking down Network Attacks. In Proceedings of the 2021 IEEE 21st International Conference on Software Quality, Reliability and Security (QRS), Hainan, China, 6–10 December 2021; pp. 52–61. [Google Scholar]
  24. Yao, Z.; Zhang, L.; Ge, J.; Wu, Y.; Zhang, X. An Invisible Flow Watermarking for Traffic Tracking: A Hidden Markov Model Approach. In Proceedings of the ICC 2019–2019 IEEE International Conference on Communications (ICC), Shanghai, China, 20–24 May 2019; pp. 1–6. [Google Scholar]
  25. Wang, X.; Chen, S.; Jajodia, S. Network flow watermarking attack on low-latency anonymous communication systems. In Proceedings of the 2007 IEEE Symposium on Security and Privacy (SP’07), Oakland, CA, USA, 20–23 May 2007; pp. 116–130. [Google Scholar]
  26. Pyun, Y.J.; Park, Y.H.; Wang, X.; Reeves, D.S.; Ning, P. Tracing traffic through intermediate hosts that repacketize flows. In Proceedings of the IEEE INFOCOM 2007—26th IEEE International Conference on Computer Communications, Anchorage, AK, USA, 6–12 May 2007; pp. 634–642. [Google Scholar]
  27. Houmansadr, A.; Borisov, N. SWIRL: A Scalable Watermark to Detect Correlated Network Flows. In Proceedings of the Network and Distributed System Security Symposium, NDSS 2011, San Diego, CA, USA, 6–9 February 2011. [Google Scholar]
  28. Wang, X.; Reeves, D.S.; Wu, S.F.; Yuill, J. Sleepy watermark tracing: An active network-based intrusion response framework. In Proceedings of the IFIP International Information Security Conference, Copenhagen, Denmark, 29 July–3 August 2001; Springer: Boston, MA, USA, 2001; pp. 369–384. [Google Scholar]
  29. Ramsbrock, D.; Wang, X.; Jiang, X. A first step towards live botmaster traceback. In Proceedings of the International Workshop on Recent Advances in Intrusion Detection, Cambridge, MA, USA, 15–17 September 2008; Springer: Berlin/Heidelberg, Germany, 2008; pp. 59–77. [Google Scholar]
  30. Zhang, L.; Wang, Z.; Xu, J. Flow watermarking scheme based on packet reordering. J. Softw. 2011, 22, 17–26. [Google Scholar]
  31. Xu, X.; Zhang, L.; Yan, J. PN Code Diversification Based Spread Spectrum Flow Watermarking Technology. In Proceedings of the 2018 14th International Conference on Computational Intelligence and Security (CIS), Hangzhou, China, 16–19 November 2018; pp. 254–258. [Google Scholar]
  32. Shi, J.; Zhang, L.; Yin, S.; Liu, W.; Zhai, J.; Liu, G.; Dai, Y. A Comprehensive Analysis of Interval Based Network Flow Watermarking. In Proceedings of the International Conference on Cloud Computing and Security, Singapore, 29–31 October 2018; Springer: Cham, Switzerland, 2018; pp. 72–84. [Google Scholar]
  33. Abranches, M.; Michel, O.; Keller, E.; Schmid, S. Efficient Network Monitoring Applications in the Kernel with eBPF and XDP. In Proceedings of the 2021 IEEE Conference on Network Function Virtualization and Software Defined Networks (NFV-SDN), Heraklion, Greece, 9–11 November 2021; pp. 28–34. [Google Scholar]
Figure 1. An example of the distortion of IBF.
Figure 1. An example of the distortion of IBF.
Applsci 12 08094 g001
Figure 2. The network congestion detection model based on flow watermarking.
Figure 2. The network congestion detection model based on flow watermarking.
Applsci 12 08094 g002
Figure 3. The schematic diagram of the watermark encoding.
Figure 3. The schematic diagram of the watermark encoding.
Applsci 12 08094 g003
Figure 4. An example of the distortion of watermark ‘00’ when packet delay occurs.
Figure 4. An example of the distortion of watermark ‘00’ when packet delay occurs.
Applsci 12 08094 g004
Figure 5. An example of the distortion of watermark ‘00’ when packet loss occurs.
Figure 5. An example of the distortion of watermark ‘00’ when packet loss occurs.
Applsci 12 08094 g005
Figure 6. An example of the decoding result of watermark ‘00’ when micro-packet delay and micro-packet loss occur.
Figure 6. An example of the decoding result of watermark ‘00’ when micro-packet delay and micro-packet loss occur.
Applsci 12 08094 g006
Figure 7. The experimental network topology.
Figure 7. The experimental network topology.
Applsci 12 08094 g007
Figure 8. The DRW in different intervals and flow rates.
Figure 8. The DRW in different intervals and flow rates.
Applsci 12 08094 g008
Figure 9. The DRW in different packet delays and packet loss rates.
Figure 9. The DRW in different packet delays and packet loss rates.
Applsci 12 08094 g009
Figure 10. The DRW in the different packet loss rate.
Figure 10. The DRW in the different packet loss rate.
Applsci 12 08094 g010
Figure 11. The Crps in different packet delays in Figure 7a.
Figure 11. The Crps in different packet delays in Figure 7a.
Applsci 12 08094 g011
Figure 12. The Crps in the different packet loss rate in Figure 7b.
Figure 12. The Crps in the different packet loss rate in Figure 7b.
Applsci 12 08094 g012
Figure 13. The Crps in the different packet loss rate in Figure 7c.
Figure 13. The Crps in the different packet loss rate in Figure 7c.
Applsci 12 08094 g013
Table 1. Comparison of network congestion detection methods.
Table 1. Comparison of network congestion detection methods.
ClassificationCarrierWhether to Occupy Extra BandwidthWhether to Modify Packet ContentDetection Speed
Watermark-based detectionIPDNoNoFast
Active detectionProbe packetsYesNoSlow
Passive detectionMirrored packetsNoNoSlow
SDN-based detectionProbe packets, etc.Yes/NoNoSlower
INT-based detectionPacket header fieldYes/NoYesFast
Table 2. Evaluation of several flow watermarking techniques.
Table 2. Evaluation of several flow watermarking techniques.
ClassificationExampleRobustnessInvisibilityCoding Efficiency
Packet payload-basedSWT★★★★★
Traffic rate-basedPN-based SS★★
Packet timing-basedIPD★★★
RAINBOW★★★★★
Packet interval-basedICBW★★
IBW★★
IBF★★★★★★
SWIRL★★★★
Packet length-basedLBW★★★★★★
Packet order-basedPROFW★★★★★★★★
★ worse, ★★ normal, ★★★ better.
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Mo, L.; Lv, G.; Wang, B. A Fine-Grained Network Congestion Detection Based on Flow Watermarking. Appl. Sci. 2022, 12, 8094. https://doi.org/10.3390/app12168094

AMA Style

Mo L, Lv G, Wang B. A Fine-Grained Network Congestion Detection Based on Flow Watermarking. Applied Sciences. 2022; 12(16):8094. https://doi.org/10.3390/app12168094

Chicago/Turabian Style

Mo, Lusha, Gaofeng Lv, and Baosheng Wang. 2022. "A Fine-Grained Network Congestion Detection Based on Flow Watermarking" Applied Sciences 12, no. 16: 8094. https://doi.org/10.3390/app12168094

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop