Title: FastPass
1FastPass
- Status Update
- George Nychis, Priya Sankanalgram, Gaurang
Sardesai
2Outline
- Motivation Reminder
- Overview
- What We Have Done
- What We Want To Have Done
- Schedule
- Questions
3Motivation / Components
- Why does FastPass exist?
- Thwart bandwidth flooding attacks
- What is the legitimate traffic?
- Can we filter the illegitimate traffic?
- How does it accomplish this?
- Tokens
- Capabilities
- Monitoring
4Design Components
- Capabilities
- Prioritize traffic end hosts agree is legitimate
- Tokens
- Ensure capability setup packet is not DoSed
- Monitoring
- No duplicate tokens
- Everyone adheres to original agreed rates
53
int fast_path0 // Capabilities if(cap_header(pa
cket)) if(valid_hash(curr_cap))
fast_path1 insert_hash(packet) //
Tokens Monitoring if(token_header(packet))
if(token_valid(token)) fast_path1
bloom_filter_add(token) //
Monitoring if(prob_sample(packet))
take_sample(packet) check_rate(packet) HA
SH(src,dst,rate)
_at_
H1
2
2
2
3
_at_
2
3
H2
63
int fast_path0 // Capabilities if(cap_header(pa
cket)) if(valid_hash(curr_cap))
fast_path1 insert_hash(packet) //
Tokens Monitoring if(token_header(packet))
if(token_valid(token)) fast_path1
bloom_filter_add(token) //
Monitoring if(prob_sample(packet))
take_sample(packet) check_rate(packet) HA
SH(src,dst,rate)
_at_
H1
_at_
H2
7What We Have Done
- Capabilities
- Extract header
- Compute new hash
- Check old hash with new
- Insert new hash into header
- Tokens
- Extract token
- Compute hash on token header
- Pass token to bloom filters
- Monitoring
- K number Bloom filter memory allocations
- Receive tokens
- Hash the tokens
- Loop through the K filters
8What Needs Done
- A timer!
- Cycle router private keys for capabilities
- Clear out current bloom filter and rotate them
- Indexing into bloom filter based on hash
- Checking bit values
- Flip bits of new tokens
- Woops two paths ?
- Fast Path Slow Path
- Should be easy, plenty of sample code
- Evaluation!
- Its our overall goal for FastPass
9Schedule
10