The documentation here has an explanation that sounds like what you want to know:
The directive specifies the zone
(zone) and the maximum possible bursts
of requests (burst). If the rate
exceeds the demands outlined in the
zone, the request is delayed, so that
queries are processed at a given speed
From what I understand, requests over the burst will be delayed (take more time and wait until they can be served), with the
nodelay options the delay is not used and excess requests are denied with a 503 error.
This blog post has a good explanation how the rate limiting works on nginx.