You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/learning-paths/servers-and-cloud-computing/snort3-multithreading/_index.md
+4-8Lines changed: 4 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,21 +1,17 @@
1
1
---
2
-
title: Scaling Snort 3 - use multithreading for improved performance
3
-
4
-
draft: true
5
-
cascade:
6
-
draft: true
2
+
title: Optimize the performance of Snort 3 using multithreading
7
3
8
4
minutes_to_complete: 45
9
5
10
-
who_is_this_for: This blog is for engineers familiar with Snort who want to enhance its performance by leveraging the benefits of multithreading.
6
+
who_is_this_for: This Learning Path is for software developers familiar with Snort who want to optimize performance by leveraging the benefits of multithreading.
11
7
12
8
learning_objectives:
13
-
- Install Snort with all of its dependencies.
9
+
- Install Snort and dependencies.
14
10
- Configure Snort Lua files to enable multithreading.
15
11
- Use multithreading to process capture files and measure performance.
16
12
17
13
prerequisites:
18
-
- An Arm-based instance from a cloud provider or an Arm server running Ubuntu 20.04 or 22.04.
14
+
- An Arm-based instance from a cloud provider, or an Arm server running Ubuntu 20.04 or 22.04.
19
15
- A basic understanding of Snort's operation and configuration.
Copy file name to clipboardExpand all lines: content/learning-paths/servers-and-cloud-computing/snort3-multithreading/build-and-install.md
+28-18Lines changed: 28 additions & 18 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,24 +1,32 @@
1
1
---
2
-
title: Installing Snort 3 and the required dependencies
2
+
3
+
title: Install Snort 3 and Dependencies
3
4
weight: 2
4
5
5
6
### FIXED, DO NOT MODIFY
6
7
layout: learningpathall
7
8
---
8
9
9
-
Snort is an Open Source Intrusion Prevention System (IPS). Snort uses a series of rules to define malicious network activity. If malicious activity is found, Snort generates alerts.
10
+
## Snort 3
11
+
12
+
Snort is an Open Source Intrusion Prevention System (IPS). Snort uses a series of rules to define malicious network activity. If malicious activity is detected, Snort generates alerts.
13
+
14
+
Snort 3 benefits from multithreading, which means that it enables the concurrent processing of multiple packet processing threads with a single Snort instance. This optimization frees up additional memory for further packet processing.
15
+
16
+
#### Enable multithreading
10
17
11
-
Multithreading in Snort 3 refers to the ability to associate multiple threads with a single Snort instance enabling the concurrent processing of multiple packet files. This optimization frees up additional memory for further packet processing.
18
+
In order to enable multithreading in Snort 3, specify the quantity of threads designated for processing network traffic using either of these two options:
12
19
13
-
In order to enable multithreading in Snort 3, specify the number of threads designated for processing network traffic using either the `--max-packet-threads` or `-z` option.
20
+
*`--max-packet-threads`
21
+
*`-z`
14
22
15
23
{{%notice Note%}}
16
-
The instructions provided have been tested on AWS EC2 Graviton4 instance, based on Neoverse V2. The examples are easiest to use if you have at least 16 cores in the system.
24
+
These instructions have been tested on an AWS EC2 Graviton4 instance, based on Arm Neoverse V2. The examples work best if you have at least 16 cores in your system.
17
25
{{%/notice%}}
18
26
19
-
##Compile and build Snort3
27
+
### How do I compile and build Snort 3?
20
28
21
-
To install Snort 3, use a text editor to save the script below on your Arm server in a file named `install-snort.sh`.
29
+
To install Snort 3, use a text editor to copy-and-paste the text below and save the script on your Arm server in a file named `install-snort.sh`.
22
30
23
31
<!-- add github link for the below file [build_snort3.sh]() -->
- the directory used to build Snort3 and its dependencies
198
-
- the number of processors to use for the build.
204
+
The script takes two arguments:
205
+
* The directory used to build Snort 3 and its dependencies.
206
+
* The number of processors to use for the build.
199
207
200
-
To build in a new directory named `build`with the number of processors in your system, run the script:
208
+
To create a new directory named `build`which lists the number of processors in your system, run the script:
201
209
202
210
```bash
203
211
bash ./install-snort.sh build `nproc`
204
212
```
205
213
206
-
You don't need to run the script as `root` but it assumes you are on Ubuntu 20.04 or 22.04 and have sudo permission.
214
+
You do not need to run the script as `root`, but you do need to be running Ubuntu 20.04 or 22.04, and have sudo permission.
207
215
208
-
When the build completes you have the `snort3`directory with all compiled software, and the `snort` executable is located in `/usr/local/bin`.
216
+
When the build completes, you will have the Snort 3 directory with all compiled software, and the `snort` executable will be located in `/usr/local/bin`.
209
217
210
-
To verify the installation is complete, run the command below and see the version printed:
218
+
To verify completed installation, run the command below and look at the version that it prints to screen:
211
219
212
220
```bash { output_lines = "2-20" }
213
221
snort -V
@@ -228,6 +236,8 @@ To verify the installation is complete, run the command below and see the versio
228
236
229
237
```
230
238
231
-
Don't delete the `build` directory as it will be used in the next step.
239
+
{{% notice Note %}}
240
+
Do not delete the `build` directory as you will use it in the next step.
241
+
{{% /notice %}}
232
242
233
-
Proceed to learn how to test Snort3 multithreading.
243
+
Now you can move on to learn about how to testSnort 3 multithreading.
0 commit comments