L10-11

Stabilizing aloha binary exponential backoff 7 figure

This preview shows page 1. Sign up to view the full content.

This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: . This quantity is the utilization achieved by the protocol because it is the fraction of slots that count toward useful throughput. Hence, USlotted Aloha (p) = N p(1 − p)N −1 . (10.2) SECTION 10.5. STABILIZING ALOHA: BINARY EXPONENTIAL BACKOFF 7 Figure 10-3 shows Eq.(10.2) for N = 8 as a function of p. The maximum value of U 1 occurs when p = 1/N , and is equal to (1 − N )N −1 . As N → ∞, U → 1/e ≈ 37%.3 This result is an important one: the maximum utilization of slotted Aloha for a large number of backlogged nodes is roughly 1/e. 37% might seem like a small value (after all, the majority of the slots are being wasted), but notice that the protocol is extremely simple and has the virtue that it is hard to botch its implementation! It is fully distributed and requires no coordination or other speciﬁc communication between the nodes. That simplicity in system design is worth a lot— oftentimes, it’s a very good idea to trade simplicity off for high performance, and worry about optimization only when a speciﬁc part of the system is likely to become (or already has become) a bottleneck. That said, the protocol as described thus far requires a way to set p. Ideally, if each node knew the value of N , setting p = 1/N achieves the maximum. Unfortunately, this isn’t as simple as it sounds because N here is the number of backlogged nodes that currently have data in their queues. The question then is: how can the nodes pick the best p? We turn to this important question next, because without such a mechanism, the protocol is impractical. ￿ 10.5 Stabilizing Aloha: Binary Exponential Backoﬀ We use a special term for the process of picking a good “p” in Aloha: stabilization. In general, in distributed protocols and algorithms, “stabilization” refers to the process by which the method operates around or at a desired operating point. In our case, the desired operating point is around p = 1/N , where N is the number of backlogged nodes. Stabilizing a protocol like Aloha is a difﬁcult problem because the nodes may not be able to directly communicate with each other (or even if they could, the overhead involved in doing so would be signiﬁcant). Moreover, each node has bursty demands for the medium, and the set of backlogged nodes could change quite rapidly with time. What we need is a “search procedure” by which each node converges toward the best “p”. Fortunately, this search for the right p can be guided by feedback: whether a given packet transmission has been successful or not is invaluable information. In practice, this feedback may be obtained either using an acknowledgment for each received packet from the receiver (as in most wireless networks) or using the ability to directly detect a collision by listening on one’s own transmission (as in wired Ethernet). In either case, the feedback has the same form: “yes” or “no”, depending on whether the packet was received successfully or not. Given this feedback, our stabilization strategy at each node is conceptually simple: 1. Maintain the current estimate of p, pest , initialized to some value. (We will talk about initialization later.) 2. If “no”, then consider decreasing p. 3. If “yes”, then consider increasing p. 3 Here, we use the fact that limN →∞ (1 − 1/N )N = 1/e. To see why this limit holds, expand the log of the left hand side using a Taylor series: log(1 − x) = −x − x2 − x3 − . . . . for |x| < 1. LECTURE 10. SHARING A COMMON MEDIUM: 8 MEDIA ACCESS PROTOCOLS This simple-looking structure is at the core of a wide range of distributed network protocols that seek to operate around some desired or optimum value. The devil, of course, is in the details, in that the way in which the increase and decrease rules work depend on the problem and dynamics at hand. Let’s ﬁrst talk about the decrease rule for our protocol. The intuition here is that because there was a collision, it’s likely that the node’s current estimate of the best p is too high (equivalently, its view of the number of backlogged nodes is too small). Since the actual number of nodes could be quite a bit larger, a good strategy that quickly gets to the true value is multiplicative decrease: reduce p by a factor of 2. Akin to binary search, this method can reach the true probability within a logarithmic number of steps from the current value; absent any other information, it is also the most efﬁcient way to do so. Thus, the decrease rule is: p ← p/2 (10.3) This multiplicative decrease scheme has a special name: binary exponential backoff. The reason for this name is that if a packet has been unsuccessful k times, the probability with which it is sent decays proportional to 2−k . The “2” is the “binary” part, the k in the exponent is the “exponential” part, and the “backoff” is what the sender is doing in the face of these fai...
View Full Document

This document was uploaded on 02/26/2014 for the course CS 6.02 at MIT.

Ask a homework question - tutors are online