extensible security services on the cross/linux programmable router

42
Extensible Security Services on the CROSS/Linux Programmable Router David K. Y. Yau Department of Computer Sciences Purdue University [email protected]

Upload: astrid

Post on 06-Jan-2016

27 views

Category:

Documents


0 download

DESCRIPTION

Extensible Security Services on the CROSS/Linux Programmable Router. David K. Y. Yau Department of Computer Sciences Purdue University [email protected]. Motivations. Internet is an open and democratic environment increasingly used for mission-critical work - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Extensible Security Services on the CROSS/Linux Programmable Router

Extensible Security Services on the CROSS/Linux Programmable Router

David K. Y. YauDepartment of Computer SciencesPurdue [email protected]

Page 2: Extensible Security Services on the CROSS/Linux Programmable Router

Motivations

Internet is an open and democratic environment– increasingly used for mission-critical work

Many security threats are present or appearing– need effective and flexible defenses to

detect/trace/counter attacks– protect innocent users, prosecute

criminals

Page 3: Extensible Security Services on the CROSS/Linux Programmable Router

Routing Infrastructure Router software critical to network health

– patches for security bugs– new defenses against new attacks

Scalable distribution of router software to many routing points– minimal disruptions to existing services– little human intervention

Exploit software-programmable router technology (CROSS platform)

Page 4: Extensible Security Services on the CROSS/Linux Programmable Router

Existing Networks

client

router: simpleforwarding

ISP server

Page 5: Extensible Security Services on the CROSS/Linux Programmable Router

CROSS Network Architecture

client

router: processing +forwarding

Web code server

Denial-of-service defense

Intelligentcongestion control

ISP

Page 6: Extensible Security Services on the CROSS/Linux Programmable Router

Cross Forwarding Paths

Resourceallocationmanager

Functiondispatcher

Cut-through

subscribe

dispatch

Active packet

send

Per-flowprocessing

Outputnetworkqueues

Inputqueues

Packet classifier

Page 7: Extensible Security Services on the CROSS/Linux Programmable Router

Example Security Problem: Network Denial-of-service Attacks Some attacks quite subtle

– at routing infrastructure, malicious dropping of packets, etc

– securing protocols and intrusion detection Others by brute force: flooding attacks

– cripples victim; precludes any sophisticated defense at point under attack

– viewed as resource management problem

Page 8: Extensible Security Services on the CROSS/Linux Programmable Router

Flooding Attack

Server

Page 9: Extensible Security Services on the CROSS/Linux Programmable Router

Server-centric Router Throttle Installed by server when under stress,

at a set deployment routers– can be sent by multicast

Specifies leaky bucket rate at which router can forward traffic to the server– aggressive traffic for server dropped

before reaching server– rate determined by a control algorithm

Page 10: Extensible Security Services on the CROSS/Linux Programmable Router

To S

Router Throttle

Aggressive flow

Throttlefor S’

To S’

Throttlefor S

Securely installed by S

Deployment router

Page 11: Extensible Security Services on the CROSS/Linux Programmable Router

Key Design Problems Resource allocation: who is entitled to

what?– need to keep server operating within load

limits– notion of fairness, and how to achieve it?

• Need global, rather than router-local, fairness

How to respond to network and user dynamics?– Feedback control strategy needed

Page 12: Extensible Security Services on the CROSS/Linux Programmable Router

What is being fair? Baseline approach of dropping a fraction

f of traffic for each flow won’t work well– a flow can cause more damage to other

flows simply by being more aggressive! Rather, no flow should get a higher rate

than another flow that has unmet demands– this way, we penalize aggressive flows only,

but protect the well-behaving ones

Page 13: Extensible Security Services on the CROSS/Linux Programmable Router

Level-k Deployment Points

Deployment points parameterized by an integer k

R(k) -- set of routers that are either k hops away from server S or less than k hops away from S but are directly connected to a host

Fairness across global routing points R(k)

Page 14: Extensible Security Services on the CROSS/Linux Programmable Router

Level-3 Deployment

Server

Page 15: Extensible Security Services on the CROSS/Linux Programmable Router

Feedback Control Strategy

Hysteresis control – high and low water marks for server load,

to strengthen or relax router throttle Additive increase/multiplicative

decrease rate adjustment– increases when server load exceeds US, and

decreases when server load falls below LS

– throttle removed when a relaxed rate does not result in significant server load increase

Page 16: Extensible Security Services on the CROSS/Linux Programmable Router

Fairness Definition

A resource control algorithm achieves level-k max-min fairness among the routers R(k) if the allowed forwarding rate of traffic for S at each router is the router’s max-min fair share of some rate r satisfying LS r US

Page 17: Extensible Security Services on the CROSS/Linux Programmable Router

Fair Throttle Algorithm

Page 18: Extensible Security Services on the CROSS/Linux Programmable Router

Example Max-min Rates (L=18, H=22)

Server

18.236.65

14.1

0.01

1.40

0.22

17.73

0.610.95

6.25

6.25

6.2520.53

24.88

15.51

17.73

0.22

0.61

0.95

59.9

Page 19: Extensible Security Services on the CROSS/Linux Programmable Router

Interesting Questions

Can we preferentially drop attacker traffic over good user traffic?

Can we successfully keep server operating within design limits, so that good user traffic that makes it gets acceptable service?– How stable is such a control

algorithm? How does it converge?

Page 20: Extensible Security Services on the CROSS/Linux Programmable Router

Algorithm Evaluation

Control-theoretic analysis– algorithm stability and convergence

under different system parameters Packet network simulations

– good user protection under both UDP and TCP traffic

System implementation– deployment costs

Page 21: Extensible Security Services on the CROSS/Linux Programmable Router

Control-theoretic Model

Page 22: Extensible Security Services on the CROSS/Linux Programmable Router

Throttle Rate (L=900; U=1100)

Page 23: Extensible Security Services on the CROSS/Linux Programmable Router

Server Load (L = 900; U = 1100)

Page 24: Extensible Security Services on the CROSS/Linux Programmable Router

Throttle Rate (U = 1100)

Page 25: Extensible Security Services on the CROSS/Linux Programmable Router

Server Load (U = 1100)

Page 26: Extensible Security Services on the CROSS/Linux Programmable Router

Throttle Rate (L=1050;U=1100)

Page 27: Extensible Security Services on the CROSS/Linux Programmable Router

Server Load (L=1050; U=1100)

Page 28: Extensible Security Services on the CROSS/Linux Programmable Router

UDP Simulation Experiments Global network topology reconstructed

from real traceroute data – AT&T Internet mapping project: 709,310 traceroute

paths, single source to 103,402 other destinations– randomly select 5,000 paths, with 135,821 nodes of

which 3879 are hosts

Randomly select x% of hosts to be attackers– good users send at rate [0,r], attackers at rate [0,R]

Page 29: Extensible Security Services on the CROSS/Linux Programmable Router

20% Evenly Distributed Aggressive (10:1) Attackers

Page 30: Extensible Security Services on the CROSS/Linux Programmable Router

40% Evenly Distributed Aggressive (5:1) Attackers

Page 31: Extensible Security Services on the CROSS/Linux Programmable Router

Evenly Distributed “meek” Attackers

Page 32: Extensible Security Services on the CROSS/Linux Programmable Router

Deployment Extent

Page 33: Extensible Security Services on the CROSS/Linux Programmable Router

TCP Simulation Experiment Clients access web server via HTTP 1.0

over TCP Reno Simulated network subset of AT&T

traceroute topology – 85 hosts, 20% attackers

Web clients make request probabilistically with empirical document size and inter-request time distributions

Page 34: Extensible Security Services on the CROSS/Linux Programmable Router

Web Server Protection

Page 35: Extensible Security Services on the CROSS/Linux Programmable Router

Web Server Traffic Control

Page 36: Extensible Security Services on the CROSS/Linux Programmable Router

System Implementation

On CROSS/Linux router – as Click element kernel service (loadable

kernel module)– code can be remotely downloaded

through anetd daemon Deployment platform

– Pentium III/864 MHz PC– multiple 10/100 Mb/s ethernet interfaces

Page 37: Extensible Security Services on the CROSS/Linux Programmable Router

Module Load Overhead

Page 38: Extensible Security Services on the CROSS/Linux Programmable Router

Memory and Delay Results

Memory overhead– 7.5 bytes of memory per throttle

Delay through throttle element about 200 ns– independent of number of throttles

installed

Page 39: Extensible Security Services on the CROSS/Linux Programmable Router

Throughput Result

Page 40: Extensible Security Services on the CROSS/Linux Programmable Router

Future Work

Offered load-aware control algorithm for computing throttle rate– impact on convergence and stability

Policy-based notion of fairness– heterogeneous network regions, by size,

susceptibility to attacks, tariff payment Selective deployment issues Impact on real user applications

Page 41: Extensible Security Services on the CROSS/Linux Programmable Router

Conclusions Extensible routers can help improve

network health Presented a server-centric router throttle

mechanism for DDoS flooding attacks– can better protect good user traffic from

aggressive attacker traffic– can keep server operational under an

ongoing attack– has efficient implementation

Page 42: Extensible Security Services on the CROSS/Linux Programmable Router

Acknowledgements

CROSS Implementation– Prem Gopalan, Seung Chul Han,

Xuxian Jiang, Puneet Zaroo Funding has been provided by

– NSF, CERIAS, Purdue Research Foundation