Prob. Traffic analysis Flashcards
Flow identifier
FID {Src IP, Dst IP, Src Port, Dst Port, Protocol}
Some applications interested in subset of header fields:
- DoS {*, Dst IP, *, *, *}
- source bandwith monitorin {Src IP, *, *, *, *}
why is traffic monitoring difficult?
- traffic grows fast
- traffic increase during attacks -> system fails when it’s needed
- attacker can target monitoring system
algorithm to select one individual with uniform probability 1/n out of population of unknown size n.
You have a cache of 1 to temp. keep 1 individual
keep i-th individual in cache with prob. 1/i
-> prob. of selection is exactly 1/n for each ind.
sampled NetFlow
sample every k-th packet
keep record for every flow: {#sampled packets, #sampled bytes}
–> multiply recorded values by k
ISSUES:
- memory overhead (worst case one entry per flow)
- imprecise for short lived flows
Large Flow detection
- Sampling based: Sample & Hold
- Sketch based: Multistage filters
- Eviction based: EARDetection
Sample and hold
Large flow detection
1. for every packet, check if flow record exists, yes->hold packet (update record), no->sample with ps
2. Flows in the cache = identified large flows
+ no overcounting
- inspect all headers
multistage filter
Large flow detection
1. keep array of n counters
2. map flow id to number 1…n
3. increase i-th counter if hash output is i
4. flows with counter over a threshold are considered large flows
ISSUE:
- hash collisions can give false positives
Solution: use mult independent hash functions, flow only large flow if counter reaches threshold in all hash functions
+ low FP, no FN, fixed memory resource
EARDet Algo
Large flow detection
- Like Frequent Item Finding algo Slide-10-36
- instead of number of items track packet size
- introduce virtual flows when link is idle
Bloom filter
Finding duplicate elements
1. setup bit vector V with m bits
2. for element e evaluate k Hash functions Hi(e)=hi and set all bits V[hi]=1
3. to check for duplicates evaluate hash functions again and see if bits set to 1
–> no FN, might have FP
ISSUE: Bloom filter fills up –> keep multiple bloom filters and reset and fill based on time
Estimate number of flows
- hash each flow uniformly to value between [0,1)
- estimate number of flows with k-th min. value
- n = i/minval -1
intrusion detection vs traffic monitoring
both can detect malicious activities such as DoS
Intrusion detection
- deployed at network edges
- destination based diagnosis
- can analyze detailed payload data
traffic monitoring
- deployed at high speed backbone routers
- diagnoses network-wide anomalies
- analyses packet header only
remaining challenges traffic monitoring
- TM increases risk of DoS
- needs IP source auth.
- monitoring schemes should be secure against attacks
- need to detect attacker that crafts certain input to bias estimate