Denial of Service (DoS) : Some Thoughts
About a year ago, I had the opportunity to solve a class of Denial-of-Service attacks that were compromising our availability and scalability. During that investigation, I happened upon a revelation. That revelation led to a solution. I’ve since seen that learning applied to other systems, including Amazon’s SimpleDB, so I wanted to share it here.
Consider the following scenario (also depicted below):
- A web client issues an HTTP request to a web site
- The web site, upon receiving the request, attempts to determine if the current request is part of a larger DOS attack
- If so, a defense is executed
- If not, the web request follows a normal execution of business logic
- The web server returns a response to the web client
