Victor Julien
c10370907a
flow: make flow use lookup3.c hashing algorithm. Improves hash table distribution.
14 years ago
Victor Julien
19a7e7f395
flow: create a flow lock macro API, implement it for mutex and rwlocks. Mutex remains the default.
14 years ago
Victor Julien
4157d9408d
Various small flow and host table fixes.
14 years ago
Victor Julien
db24258acf
Undo changes from 88b8f15663. Atomic stack implementation had a-b-a problem.
14 years ago
Victor Julien
88b8f15663
Add atomic stack implementation. Convert flow spare queue to use this stack. Remove now unused flow-queue code.
14 years ago
Victor Julien
0150e66ede
flow engine: improve scalability
...
Major redesign of the flow engine. Remove the flow queues that turned
out to be major choke points when using many threads. Flow manager now
walks the hash table directly. Simplify the way we get a new flow in
case of emergency.
14 years ago
Victor Julien
84c7480c06
flow engine: convert flow hash code FlowRequeue call to FlowEnqueue.
14 years ago
Victor Julien
fbbdbb251f
flow engine: remove unneeded 'need_srclock' argument for FlowRequeue
14 years ago
Anoop Saldanha
5133098bd6
Accomodate pcap-file mode to signal flow mgr to wakeup when it exceeds a certain time interval. This let's the flow mgr keep in sync with pcap timestamp changes
14 years ago
Anoop Saldanha
9917744707
separate timers for flow mgr thread for normal and emerg mode. Signal flow mgr thread when in emerg mode
14 years ago
Eric Leblond
5a63662766
Flow: use condition system instead of short sleep
...
Short sleep can lead to some really annoying performance issue in
some environnement like virtual systems. This technic was used in
the flow manager. This patch uses an alternate approach based on
a timed condition which is triggered each time a new flow has to
be created. This avoid to run out of flow. A counter is also done
to be able not to run the cleaning code at each new flow.
14 years ago
Victor Julien
9baa16af63
Convert flow memcap to u64. Bug #332 .
14 years ago
Victor Julien
cff0a0bda2
Fix segv conditions caused by broken flow cleanup code.
16 years ago
Pablo Rincon
8cc525c939
UDP support at AppLayer message handling
16 years ago
Victor Julien
c26434fef1
Move flow use cnt to atomic and outside of the flow mutex protection.
16 years ago
Victor Julien
87345e5c60
Switch flow memuse counter to the atomic api.
16 years ago
Pablo Rincon
b491ef2be0
Removing FlowAllocDirect since it's not needed anymore
16 years ago
Victor Julien
32e3fea9e6
Exclude parts of a flow that are not changing after init from the flow mutex. Cleanup flow-hash function.
16 years ago
Pablo Rincon
29a6fc2f03
Adding some flow improvements and recovery on emergency mode
16 years ago
William Metcalf
2eef905c07
GPL and Copyright header updates.
16 years ago
Victor Julien
53b388b669
Improve flow hash debugging, switch to csv output.
16 years ago
Victor Julien
548a3b2c93
Improve flow hash debugging functions. Make sure ICMP errors don't create flows. Handle ICMP DEST UNREACH errors in the flow they are sending the error about.
16 years ago
Victor Julien
2dc5405d3a
Add debug code for tracking flow hash distribution. Only add ICMP DEST_UNREACH packets to the flow engine.
16 years ago
Victor Julien
0ebf7cbc5e
Convert flow bucket lock from mutex to spinlock. Locks should be very short, so spinlocks should be faster.
16 years ago
William Metcalf
ce01927515
Import of GPLv2 Header 050410
16 years ago
Victor Julien
a8116f65c8
Fix packet flags field not being cleared properly when the packet is being reused. Add some debug statements and cleanup some.
16 years ago
Victor Julien
ecf86f9c23
Rename to Suricata.
16 years ago
Pablo Rincon
e26833be3f
Changing mutex/spinlocks/conditions naming types
16 years ago
Pablo Rincon
769022f4be
Adding support for Mac OS X, FreeBSD, centrailizing mutex/spins/conditions in a macro API, and some unittests
16 years ago
Victor Julien
91bc83e5c6
More logging API usage changes.
16 years ago
Victor Julien
3a28171fbd
Another round of logging api usage updates.
16 years ago
Victor Julien
0d0ffb9963
Reorganize header inclusions.
16 years ago
Victor Julien
b102ea2123
Big update:
...
- Implement "closing" state in flow.
- Add protocol specific timeouts.
- Lots of stream tracking updates, fixing a lot of out of window issues.
- Stream reassembly fixes.
- Implement a new IDS runmode with 4 stream and detect threads.
- Added a BUG_ON macro that aborts the engine if the expression is true.
- Better balance the flow queue handler for traffic that doesn't have flow (like icmp currently).
- Simplify application level protocol in the Tcp Session.
- Add some debugging memory counters.
16 years ago
Brian Rectanus
fa5939ca91
64 bit cleanup part2
17 years ago
Victor Julien
8397413942
Comment updates.
17 years ago
Victor Julien
efb10fc0d6
big update
17 years ago
Victor Julien
bab4b62376
Initial add of the files.
17 years ago