2.
tage of MPT which makes it very commercially appealing there is no inter-symbol-interference, and do not consideris that although MPT needs new hardware at the sender, it noise so that the core idea of MPT can be more easily seen.does not need any new hardware at the receiver. This means If there are two antennas at the sender, the sender canthat to use MPT in a wireless LAN, we can simply replace send two different symbols denoted as x1 and x2 on anten-the access point and upgrade software protocols in the user na 1 and antenna 2, respectively. If there are two receivers,devices without having to change their wireless cards, and receiver 1 will receive y1 = h∗ x1 + h∗ x2 and receiver 2 11 12thus incurring minimum cost. will receive y2 = h∗ x1 + h∗ x2 , where hij is the channel 21 22 In this paper we study problems related to MPT and pro- coefﬁcient from antenna j to user i. For simplicity we willvide our solutions. We formalize the problem of sending use hi to denote [hi1 , hi2 ]T and use x to denote [x1 , x2 ]T ,out buffered packets in minimum time as ﬁnding a maxi- and call them the channel coefﬁcient vector and the trans-mum matching in a graph. Since maximum matching algo- mitted vector, respectively. In vector forms, receiver i willrithms are relatively complex and may not meet the speed receive yi = h∗ x. iof real time applications, we consider using approximation Now let d1 and d2 denote the data that should be sent toalgorithms and present an algorithm that ﬁnds a matching receiver 1 and receiver 2, respectively. We cannot simplywith size at least 3/4 of the size of the maximum match- send d1 via antenna 1 and d2 via antenna 2 because the dataing in O(|E|) time where |E| is the number of edges in the will be mixed up at the receivers. However, suppose theregraph. We then study the performance of wireless LAN en- are vectors u1 = [u11 , u12 ]T and u2 = [u21 , u22 ]T suchhanced with MPT and give analytical bounds for maximum that h∗ u2 = 0 and h∗ u1 = 0. We can let transmitted vec- 1 2allowable arrival rate. We also use an analytical model and tor be x = d1 u1 + d2 u2 , that is, send d1 u11 + d2 u21 onsimulations to study the average packet delay. antenna 1 and d1 u21 + d2 u22 on antenna 2. Thus receiver Enhancing wireless LANs with MPT requires the Medi- 1 will receive h∗ (d1 u1 + d2 u2 ) = d1 h∗ u1 , and similarly 1 1a Access Layer (MAC) to have more knowledge about the receiver 2 will receive d2 h∗ u2 , thus distinct data is sent to 2states of the physical layer and is therefore a form of cross- each receiver.layer design. In recent years cross-layer design in wireless u1 can be any vector lies in V1 which is the space or-networks has attracted much attention because of the great thogonal to h2 , however, to maximize the received signalbeneﬁts in breaking the layer boundary. For example, [5, 6] strength, u1 should lie in the same direction as the projec-considered packet scheduling and transmission power con- tion of h1 onto V1 . u2 should be similarly chosen. Since thetrol in cross-layer wireless networks. However, to the best total transmitted power is limited, not all pairs of receiver-of our knowledge, packet scheduling in wireless networks s are compatible, i.e., can use MPT. Basically, the senderin the context of multiple packet transmission has not been should choose two receivers if their channel coefﬁcient vec-studied before. [3, 4] have considered Multiple Packet Re- tors are already near orthogonal.ception (MPR) which means the receiver can receive more To perform MPT, the sender needs 4 more complex mul-than one packets from distinct users simultaneously. MPR tipliers. It also needs to know the channel coefﬁcient vec-is quite different from MPT since MPR is about receiving tors of the receivers and run algorithms to smartly pair upmultiple packets at one node while MPT is about sending the receivers. However, the receivers needs no additionalmultiple packets from one node to multiple nodes. hardware and can receive the signal as if the sender is only sending to it. It is also possible to send to more than 2 re-2 Multiple Packet Transmission ceivers at the same time if the sender has more than 2 anten- nas. In this paper we focus on the more practical 2-antenna In this section we brieﬂy explain the MPT technique. As case. Also note that MPT requires wireless channels to bementioned earlier, to use MPT, the sender makes the da- slow changing as compared to the data rate, which is of-ta sent for one user appear as zero at other users. This is ten true in a wireless LAN where the wireless devices arepossible if the sender has more than one antennas. With stationary for most of the time.multiple antennas, the sender can adjust the amplitude andphase of the transmitted signals on different antennas such 3 MAC Layer Modiﬁcationsthat the signals will add up constructively or destructivelyas desired. The following is a more detailed explanation In this section we describe the modiﬁcations to MACwhich follows Chapter 10 in [1]. layer protocol, in particular, 802.11, to support MPT. We Wireless channels can be modeled as complex baseband say two users U1 and U2 are compatible if they can receivechannels, which means that with one antenna at the sender, at the same time. If U1 and U2 are compatible, sometimesthe receiver will receive y = h∗ d, where d is the complex we also say that the packets destined for U1 and U2 are com-data sent by the sender and h is the complex channel coef- patible.ﬁcient. The receiver can recover the data by dividing y by The AP keeps the channel coefﬁcient vectors of all nodesh. Note that here we consider ﬂat fading which means that that have been reported to it previously. If, based on the past
3.
v1 v2 v3 v4 4.1 Algorithm for Optimal Schedule We call a schedule by which packets can be sent out in v1 v2 v3 v4 v1 v2 v4 minimum time an optimal schedule. Clearly, in an optimal v3 schedule maximum number of packets are sent out in pairs, v1 v3 therefore the problem of ﬁnding an optimal schedule is e- v1 v2 v3 v4 v2 v4 quivalent to ﬁnding maximum number of compatible pairs among the packets. To solve this problem, as shown in Fig. Figure 2. 4 packets and different schedules. 2, we draw a graph G where each vertex represents a packet and two vertices are adjacent if the two packets are compat-channel coefﬁcient vectors, U1 and U2 are compatible and ible. In a graph, a matching M is deﬁned as a set of vertexthere are two packets that should be sent to them, the AP disjoint edges, that is, no edge in M has a common vertexsends out a RTS (Require To Send) packet, which contains, with another edge in M . Therefore the problem reduces toin addition to the traditional RTS contents, a bit ﬁeld indi- ﬁnding a maximum matching in G. For example, the secondcating that the packet about to send is a MPT packet. If matching in Fig. 2 is a maximum matching while the ﬁrstU1 appears earlier than U2 in the destination ﬁeld, upon re- one is not. Maximum matching in a graph can be found inceiving the RTS packet, U1 will ﬁrst reply a CTS (Clear To polynomial time by algorithms such as the Edmonds’ Blos-Send) packet containing the traditional CTS contents plus som Algorithm which takes O(N 4 ) time, where N is theits latest channel measurements. After a short ﬁxed amount number of vertices in the graph [10, 2].of time U2 will also reply a CTS packet. After received the Before continuing our discussion, we ﬁrst give deﬁni-two CTS packets, the AP will update the channel coefﬁcient tions of some terms. Let M be a matching in a graph G. Wevectors. It will then decide whether U1 and U2 are still com- call edges in M the “matching edges.” If a vertex is inciden-patible and most likely they still are since the environment t to an edge in M , we say it is “saturated;” otherwise, it isis slow changing. If in the rare case that the channels have “unsaturated” or “free” or “single.” An M -augmenting pathchanged signiﬁcantly such that they are no longer compati- is deﬁned as a path with edges alternating between edges inble, the AP can choose to send to only one node. Therefore, M and edges not in M , and with both ends being unsaturat-before sending the data packets, the AP ﬁrst sends 2 bits in ed vertices. For example, with regarding to the ﬁrst match-which bit i is ‘1’ means the packet for Ui will be sent for ing in Fig. 2, v1 − v2 − v3 − v4 is an augmenting path. It is1 ≤ i ≤ 2. After the data packet is sent, U1 and U2 can well known in graph theory that the size of a matching canreply an acknowledgment packet in turn. be incremented by one if and only if there can be found an In this paper we consider matching user packets of the augmenting path.same size. For simplicity, we consider the case when the The buffer of the AP may store many packets, as a re-bit rates are also the same, such that all packets need the sult, the graph can be quite large. However, the size of thesame transmission time which we call a time slot. We do graph can be reduced by taking advantage of the fact thatnot make any assumption about the compatibilities of users vertices represent packets for the same user have exactlyand treat them as arbitrary. the same set of neighbors in the graph. More speciﬁcally, in the graph, we say vertex u and v belong to the same equiv-4 Scheduling Algorithms for Access Points alent group, or simply the same group, if the packets they represent are for the same user. Vertices that belong to the While the idea of MPT is simple, the AP will encounter same group have the same neighbors and are not adjacent tothe problem of how to match the packets with each other each other. Let A = {a1 , a2 , a3 } and B = {b1 , b2 , b3 } beto send them out as fast as possible. For example, suppose two groups of vertices and suppose ai is matched to bi forin the buffer of the AP there are 4 packets destined for 4 1 ≤ i ≤ 3. We haveusers denoted as v1 , v2 , v3 and v4 , respectively. Assume Lemma 1 If there is an augmenting path traversing all 3packet vi is compatible with vi+1 for 1 ≤ i ≤ 3, as shown matching edges between A and B, there must exist an aug-at the top of Fig. 2 where there is an edge between two menting path traversing only 1 matching edge between Apackets if they are compatible. If we match v2 with v3 , the and B.4 packets have to be sent in 3 time slots since v1 and v4are not compatible. However, a better choice is to match Proof. This can be best explained with the help of Fig. 3,v2 with v1 and match v3 with v4 and send the 4 packets in where edges in the matching are shown as heavy lines andonly 2 time slots. When the number of packets grows the edges not in the matching are shown as dashed lines. As inproblem of ﬁnding the best matching strategy will become the ﬁgure, suppose an augmenting path traversing all threeharder. In this section we describe algorithms that solve this matching edges between A and B is x − a1 − b1 − c − d −problem. b2 − a2 − e − f − a3 − b3 − y. However, if x is adjacent
4.
a1 b1 the AP has gained access to the media and there is a del- c a2 b2 icate tradeoff between throughput and delay. To improve d the throughput, we should always send out packets in pairs; x a3 b3 however, this policy favors the packets that can be matched e over the packets that cannot be matched, and will increase f y the delay of the latter. To prevent excessive delay of the sin- gle packets, in practice, we can keep a time stamp for each Figure 3. “shortcut” exists. The matching edges are shown as heavy lines and the non-matching edges are packet and if the packet has stayed in the buffer for a time shown as dashed lines. longer than a threshold, it will be sent out the next time the AP has gained access to the media. If there are multipleto a1 , it must also be adjacent to a3 since a1 and a3 belong such packets, the AP can choose one randomly. The thresh-to the same group, thus there is a shorter augmenting path old can be determined adaptively based on the measuredtraversing only to the last matching edge between A and B delays of the packets that were sent out in pairs.which is x − a3 − b3 − y. (Note that the same proof also Finally, although maximum matching can be found inholds if in the augmenting path, the segment between, say, polynomial time, maximum matching algorithms are inb1 and b2 , is longer.) general complex [11] and may not meet the timing require- As a result of this lemma, if there exists an augmenting ments of real time applications, considering that the proces-path, there must also exist an augmenting path traversing sors in the AP are usually cheap and not powerful. There-no more than two matching edges between any two groups fore in some cases, a fast approximation algorithm which isof vertices. This is because if the path traverses more than capable of ﬁnding a “fairly good” matching may be useful,two matching edges between two groups of vertices, as we which will be discussed next.have shown in the lemma, there must be a shortcut by whichwe need only to traverse the last of the ﬁrst three matching 4.3 A Linear Time 3/4 Approximationedges, and we can keep on ﬁnding such shortcuts and re- Algorithm for Finding Maximumducing the number of traversed matching edges until it is Matchingless than 3. Therefore, for any two groups of vertices, onlytwo matching edges between them need to be kept and other The simplest and most well known approximation al-redundant matching edges can be removed. After that there gorithm for maximum matching simply returns a maximalwill be O(n2 ) saturated vertices left where n is the number matching. It is known that this simple algorithm has O(|E|)of users. Also note that for the purpose of ﬁnding augment- time complexity where |E| is the number of edges in theing paths, only one of the unsaturated vertices belonging to graph and has a performance ratio of 1/2, which means thateach group needs to be considered. Therefore, the graph we the matching it ﬁnds has size at least half of M ∗ wherework on contains O(n2 ) number of vertices which does not M ∗ denotes the maximum matching. In this section wedepend on the size of the buffer. give a simple O(|E|) approximation algorithm for maxi-4.2 Practical Considerations mum matching with an improved ratio of 3/4. To the best of our knowledge it is the ﬁrst linear time approximation Although the optimal schedule can be found for a giv- algorithm for maximum matching with 3/4 ratio.en set of packets by the maximum matching algorithm, in The idea of our algorithm is to eliminate all augment-practice, the packets do not arrive all at once but arrive one ing paths of length no more than 5. Note that any M -by one. It is not feasible to run the maximum matching augmenting path must have i edges in M and i+1 edges notalgorithm every time a new packet arrives due to the rela- in M for some integer i ≥ 0. Therefore if the shortest M -tively high complexity of the algorithm. Therefore, after a augmenting path has length at least 7, |M ∗|| > 3/4, since to |Mnew packet arrives, we can match it according to the follow- increment the size of the matching by one, the “trade ratio”ing simple strategy: A new vertex is matched if and only if is at least 3/4, i.e., the best we can do is to take out 3 edgesit can ﬁnd an unsaturated neighbor. In this way we always in M and add in 4 edges not in M .maintain a maximal matching, where a matching M is max-imal in G if no edge not belonging to M is vertex disjoint A maximal matching does not have augmenting paths ofwith all edges in M . For example, the two matchings in length 1, which is why the size of a maximal matching isFig. 2 are all maximal matchings. The maximum matching at least half of the size of a maximum matching. In our al-algorithm can be called only once a while to augment the gorithm, we will start with a maximal matching and thenexisting maximal matching. eliminate augmenting paths of length 3 and then of length Another problem is that the packets do not stay in the 5. As can be seen, the algorithms themselves are simplebuffer forever and must be sent out. We will have to make and straightforward. However, it is interesting and some-the decisions of which packet(s) should be sent out once what surprising that they can be implemented to run in lin- ear time.
5.
x s x s Table 1. Finding Augmenting Paths of Length 3 Initially, M = S where S is a maximal matching. t t u u for i = 1 to |S| do Let (u, v) be the ith edge in S. v v Check if u and v have distinct unsaturated neighbors. if yes y y Let the neighbors of u and v be x and y, respectively. M ← M ∪ {(x, u), (v, y)} {(u, v)}. Figure 4. Augmenting M according to x − u − v − y. end if s and x are both unsaturated which contradicts the fact end for that M is a maximal matching. Corollary 1 When the algorithm terminates, there is no4.3.1 Eliminating Augmenting Paths of Length 3 length-3 augmenting path.We start with a maximal matching denoted by S and theoutput of our algorithm is denoted by M . For each vertex, Proof. By contradiction. If there is still a length-3 augment-a list is used to store its neighbors. An array is used to ing path, let it be x − u − v − y where u and v are saturated.store the matching, that is, the ith element in the array is the By Lemma 2, (u, v) cannot be a new matching edge, there-vertex matched to the ith vertex. Note that with this array, fore it is in S. But this cannot happen since if such an aug-it takes constant time to augment the matching with ﬁxed menting path exists after the algorithm terminates, it mustlength augmenting paths or to check whether a particular also exist when (u, v) was checked and should have beenvertex is saturated or not. found. The algorithm is summarized in Table 1. Initially, let Lemma 3 The algorithm runs in O(|E|) time where |E| isM = S. We will check edges in S from the ﬁrst to the the number of edges.last to augment M . When checking edge (u, v), we checkwhether both u and v are adjacent to some distinct unsatu- Proof. Note that when checking edge (u, v), the edges inci-rated vertices. If there are such vertices, say, u is adjacent to dent to u and v were checked at most once. Since the edgesx and v is adjacent to y, there is an M -augmenting path of in S are vertex disjoint, the algorithm checks an edge in Glength 3 involving (u, v) which is x − u − v − y. We can e- no more than twice.liminate this augmenting path and augment M by removing Combining these discussions, we conclude that(u, v) from M and adding (u, x) and (v, y) to M . We call(u, x) and (v, y) the new matching edges. The algorithm Theorem 1 The algorithm in Table 1 eliminates all length-terminates when all edges in S have been checked this way. 3 augmenting paths in O(|E|) time. Next we prove the correctness and derive the complexityof this algorithm. It is important to note that if the match- 4.3.2 Eliminating Augmenting Paths of Length 5ing is always augmented according to augmenting paths, the After eliminating augmenting paths of length 3, we searchfollowing two facts always hold. First, all saturated vertices for augmenting paths of length 5. We ﬁrst check all edgeswill remain saturated after each augmentation. Second, as a in the current matching to construct a set T . A vertex vresult of the ﬁrst fact, if a vertex is unsaturated after an aug- is added to set T if v is matched to some vertex u and umentation, it must be unsaturated before the augmentation is adjacent to at least one unsaturated vertex. We call vand therefore throughout the process M remains a maximal an “outer vertex” and u an “inner vertex.” Note that v canmatching. be both an outer vertex and an inner vertex when v and u are both adjacent to the same unsaturated vertex and areLemma 2 The new matching edges need not to be checked not adjacent to any other unsaturated vertices. Clearly, tobecause there cannot be augmenting paths of length 3 in- ﬁnd augmenting paths of length 5 is to ﬁnd adjacent outervolving them. vertices. Also note that T can be constructed in O(|E|) time.Proof. To see this, suppose x − u − v − y is a length-3 The algorithm is summarized in Table 2 and works asaugmenting path, as shown in Fig. 4. If there is a length-3 follows. We check the vertices in T from the ﬁrst to the last.augmenting path involving one of the new matching edges, When checking vertex v, let u be the inner vertex matchedsay, (x, u), let it be s − x − u − t, as shown in the right to v. We ﬁrst get or update l(u) which is the list of unsatu-part of Fig. 4. Note that s and x are not saturated before the rated neighbors of u: If l(u) has not been established earlier,matching is augmented according to x − u − v − y, which we search the neighbor list of u to get l(u); otherwise, wecontradicts the fact that the matching is always maximal. check the vertex in l(u) (in this case, there can only be oneThe left part of Fig. 4 shows this situation. vertex in l(u), for reasons to be seen shortly) and remove it
6.
from l(u) if it has been matched. After getting l(u), if l(u)is empty, we quit checking v, remove v from T and go on Table 2. Finding Augmenting Paths of Length 5 Construct T , the set of outer vertices.to the next vertex in T . Otherwise, we check the neighbors while T is not emptyof v to ﬁnd an outer vertex. If an outer vertex w is found Let v be a vertex in T that has not been checked.to be adjacent to v, let z be the inner vertex matched to w. Suppose v is matched to u. Get or update l(u),We get l(z) which is the unsaturated neighbor list of z in the unsaturated neighbor list of u.the same way as for u. If l(z) is empty, we remove w from if l(u) is emptyT and go on to the next neighbor of v. Otherwise, we check Remove v from T and continue to the next outerif there is an augmenting path of length 5 involving (u, v) vertex in T .and (w, z), and note that this can be in constant time. This end ifis because (1) if l(z) contains at least 2 vertices, there must while not all neighbors of v have been checkedbe such a path; (2) if l(z) contains exactly 1 vertex, there Let w be an outer vertex neighbor of v and suppose w is matched to z.is such a path if and only if l(u) is different from l(z). If Get or update l(z), the unsaturated neighbor list of z.an augmenting path is found, we augment M according to if l(z) is emptythis path and remove both v and w from T ; otherwise, we Remove w from T and continue to the nextcontinue to check the next outer vertex neighbor of v. If all neighbor of v.neighbors of v have been checked and no augmenting path end ifis found, we remove v from T and continue to the next ver- Based on l(u) and l(z), determine if there is atex in T . Now we can see why if an outer vertex is still in length-5 augmenting path.T after it has been checked, the unsaturated neighbor list if an augmenting path is foundof the inner vertex matched to it must contain exactly one Augment M according to this path andvertex. This is because if it contains more than 1 vertices, remove both v and w from T ;an augmenting path must have been found when checking break from the inner while loop. end ifthis outer vertex and it would have been removed from T . end whileThe algorithm terminates when T is empty. Note that this if no augmenting path is foundalgorithm makes sure that it will ﬁnd an augmenting path of Remove v from Tlength 5 involving (u, v) if such a path exists when checking end ifouter vertex v. Also note that removing an element in a set end whileis equivalent to marking this element which takes constanttime. Fig. 5(b), which contradicts the fact that the matching is al- Recall that if M is augmented by augmenting paths, M ways maximal. Hence (a, b) cannot create augmenting pathremains to be a maximal matching which means that it does of length 3 and for the same reason neither can (e, f ).not have any augmenting path of length 1. The next lemmashows that by augmenting M by length-5 augmenting paths, Lemma 5 Throughout the execution of the algorithm thethere will never be “new” augmenting paths of length 3. new matching edges cannot be involved in any augmenting path of length 5.Lemma 4 Throughout the execution of the algorithm no Proof. Suppose during the execution of the algorithm, theaugmenting paths of length 3 will be created. ﬁrst time that a new matching edge becomes involved in aProof. By contradiction. Since M does not have length-3 length-5 augmenting path is after we augment the matchingaugmenting paths at the beginning, suppose the ﬁrst such according to augmenting path a − b − c − d − e − f . Wea path was created after augmenting M with length-5 aug- ﬁrst show that (c, d) cannot be involved in augmenting pathmenting path a−b−c−d−e−f . The length-3 augmenting of length 5 by contradiction. If there is such an augmentingpath must involve one of the new matching edges which are(a, b), (c, d) and (e, f ). If (c, d) creates an augmenting path a a x a x aof length 3, say, u − c − d − v, as shown in the right part of b b y b yFig. 5(a), there must exist augmenting path a − b − c − u c c b c cwhich has length 3, as shown in the left part of Fig. 5(a), u d u d d dwhich contradicts the fact that there is no such a path before v vthe matching was augmented. Thus (c, d) cannot create an e e e eaugmenting path of length 3. If (a, b) creates an augment- f fing path of length 3, say, x − a − b − y, as shown in the right f fpart of Fig. 5(b), x and a must be both unsaturated before (a) (b)the matching was augmented, as shown in the left part of Figure 5. No new augmenting paths of length 3 will be created.
7.
a a a v w Proof. Consider checking an outer vertex v in set T . Note b b u b that all time needed for checking v is O(d(v)) where d(v) is x the degree of v except for getting the unsaturated neighbor c c c x d x lists for some inner vertices. Therefore overall the algorithm d d runs in O(|E|) time plus the time needed for getting the e e e unsaturated neighbor lists for inner vertices which also takes O(|E|) time since it needs to be done for each inner vertex f f f no more than once. Thus, the lemma follows. (a) (b) Combining the above discussions, we conclude that Figure 6. No new matching edge will be involved in Theorem 2 The algorithm in Table 2 eliminates all length- augmenting paths of length 5. 5 augmenting paths in O(|E|) time.path, there must be an unsaturated vertex adjacent to either 5 Performance Studyc or d. Let the unsaturated vertex be x and without loss ofgenerality due to symmetry, suppose x is adjacent to c, as In this section we study the performance of the wirelessshown in Fig. 6(a). Then there is an augmenting path of LAN after enhanced by MPT. We ﬁrst derive the maximumlength 3 before the algorithm started: a − b − c − x, which arrival rate of the downlink and then study the average pack-contradicts the fact that there are no such paths. et delay by an analytical model and simulations. We now show that (a, b) cannot be involved in augment- The performance of a wireless network depends on manying path of length 5. The same proof can be used for factors, for example, the physical environment, the location-(e, f ) due to symmetry. First note that since the match- s of the wireless nodes, etc., such that the performance ofing is maximal, a cannot be adjacent to an unsaturated ver- one network could be different from that of another eventex. Therefore the augmenting path must be in the form of when they are using the same devices. In many cases theu − b − a − v − w − x, as shown in Fig. 6(b). We claim performance of the same network may also be changing duethat edge (v, w) cannot be an “old matching edge,” i.e., can- to the occasional movements of the wireless nodes. Thisnot be in the matching before the algorithm started. Since makes the performance evaluation in general a difﬁcult job.if so, a − v − w − x is an augmenting matching of length However, we note that the performance gain of adopting3 before the algorithm started. Therefore (v, w) is also a MPT is mainly determined by the probability of two nodesnew matching edge. Suppose edge (v, w) was ﬁrst added being compatible, and this probability should be the sameto the matching by augmenting the matching according to a in networks under similar environments and with same de-length-5 augmenting path P . Since no new matching edge vices. It is thus more insightful to use the compatibilitywas involved in any length-5 augmenting path before the probability p as the parameter for performance evaluation.matching was augmented according to a − b − c − d − e − f , For simplicity, we assume that the probability that two usersedge (v, w) was not involved in any length-5 augmenting are compatible is independent of other users.path except P . Note that due to the same reason, since (c, d) 5.1 Maximum Arrival Ratecannot be in any length-5 augmenting path, (v, w) cannot bethe edge in the center of P , and thus (v, w) must be at the The ﬁrst and the most important question is: After usingend of P . Since w is adjacent to an unsaturated vertex x, w MPT, how much faster does the downlink become? This cancannot be the end vertex of P , thus v must be the end vertex be measured by the maximum allowable arrival rate, whereof P . However, this means that both a and v were unsaturat- an arrival rate is allowable if it does not cause the buffered before the algorithm started, which cannot happen since of the AP to overﬂow. More speciﬁcally, suppose once thethe matching is maximal. (Note that the proof also holds if AP has got access to the media, on average it has to wait(v, w) is (c, d) or (f, e).) T seconds to be able to get access to the media again. In the following, for convenience, we refer to T as a time slot.Corollary 2 When the algorithm terminates, there is no The normalized arrival rate λ is deﬁned as the average num-augmenting path of length 5. ber of packets arrived in a time slot. Without MPT, clearly, λmax = 1 where λmax denotes the maximum allowable ar-Proof. Suppose it is not true, that is, there still exists an rival rate. Next we derive the value of λmax when MPT isaugmenting path of length 5, say, a − b − c − d − e − f . By used.Lemma 5, neither (b, c) nor (d, e) is a new matching edge. Suppose there are n users among which c users are com-However, in this case the algorithm must have found this patible with some other users. These c users are calledaugmenting path. the “non-isolated” users and the rest are called the “isolat- ed users.” Consider W arrived packets. Assuming packetsLemma 6 The algorithm runs in O(|E|) time. have random destinations, there will be W (c/n) packets for
8.
the non-isolated users and W (1 − c/n) packets for the iso- 2lated users. The fastest way to send out these W packets 1.8is to always send out the packets for the non-isolated users Maximum Arrival Ratein pairs, thus the minimum time needed to send out all the 1.6packets is W (1−c/2n) time slots. In other words, W pack-ets should arrive in at least W (1 − c/2n) time slots. Thus, n=5 1.4the maximum arrival rate for given n and c is (1 − c/2n)−1 . n=10 n=20 The number of non-isolated users is a random variable. n=50 1.2Let Pn (l) be the probability that out of n users, there are lisolated users. The average maximum arrival rate is 1 n 0 0.1 0.2 0.3 0.4 0.5 −1 Compatibility Probability λmax = Pn (n − c)(1 − c/2n) c=0 Figure 7. Maximum arrival rate for networks of dif- ferent sizes under different compatibility probabilities.Therefore in the following we focus on ﬁnding Pn (l). Apparently, when n = 1, P1 (0) = 0 and P1 (1) = 1; It is remarkable to see that a signiﬁcant improvement canwhen n = 2, P2 (0) = p, P2 (1) = 0 and P2 (2) = 1 − be achieved even with very small compatibility probability.p where p is the compatibility probability. To ﬁnd Pn (l) For example, for n = 10, when p = 0.04, the maximumfor larger n, we condition on the number of isolated users arrival rate is 1.2, which is a 20% increase.among the ﬁrst n − 1 users. Let Ex,y be the event that in the Finally, we want to argue that the maximum arrival ratex users, y are isolated and let L be random variable denoting is approximately achievable, although it is at the cost of ex-the number of isolated users among n users. cessive delay for the isolated users. Note that as mentioned n−1 earlier, the maximum arrival rate is achieved if packets des- Pn (l) = P (L = l) = Pn−1 (i)P (L = l|En−1,i ) tined for non-isolated users are always sent out in pairs and i=0 if no time slot is wasted, i.e., there is always at least one packet sent out in a time slot. Therefore, if there are com-Clearly, for i < l − 1, patible packet pairs in the buffer, we send the pair; other- Pn (L = l|En−1,i ) = 0, wise, we send packets destined for the isolated users and keep on doing so until a new pair has formed after somesince by adding a user, we can add at most one isolated user. new packets have arrived. Since at a high arrival rate theFor i = l − 1, queues for the isolated users are most likely quite long, it is Pn (L = l|En−1,l−1 ) = (1 − p)n−1 , highly likely that we can wait until a pair appears before the queues for the isolated users are exhausted.since given there are l − 1 isolated users among the n − 1users, there are l isolated users in the n users if and only 5.2 Average Packet Delayif the nth user is isolated, which occurs with probability(1 − p)n−1 . For i = l, we have As we have seen, adopting MPT can greatly increase the Pn (L = l|En−1,l ) = [1 − (1 − p)n−1−l ](1 − p)l , maximum allowable arrival rate. Note that MPT can also reduce the queuing delay of the packets comparing to Sin-since if there are already l isolated users in the n − 1 users, gle Packet Transmission (SPT). In this section we use anthe nth user must not be isolated, i.e., must be compatible analytical model along with simulations to see how packetwith some user in the ﬁrst n−1 users. However, it cannot be delay can be reduced.compatible with any of the isolated among the n − 1 users,since this will reduce the number of isolated users, thus it 5.2.1 An Approximation Analytical Modelmust be compatible with at least one of the users among the We ﬁrst describe our analytical model. The model is de-n − 1 − l non-isolated users, which is an event that occurs veloped for the purpose of comparing MPT with SPT andwith probability [1 − (1 − p)n−1−l ](1 − p)l . For i > l, therefore only considers arrival rates less than 1. We as- i sume that the AP maintains n queues in its buffer, one for Pn (L = l|En−1,i ) = pi−l (1 − p)l , i−l each user. Note that to exactly model the behavior of the queues in the AP, many MAC layer related issues have tosince if i > l, the addition of the nth user reduces the num- be considered, for example, how often can the AP gain ac-ber of isolated users by i − l, thus it must be compatible cess to the media and how many packets will arrive at thewith exactly i − l previous isolated users. AP in a given time period, etc. All such issues are inter- Fig. 7 shows the maximum arrival rate for networks of acting with each other which makes exact analytical mod-different sizes under different compatibility probabilities. eling very difﬁcult. We therefore use some approximations
9.
to simplify the model. As the simulations show, our model the Markovian property only holds approximately. How-is very accurate when λ < 1. ever, this is necessary since if the queues are considered The model is based on Markov chains. We take the to- separately, the complexity of the model will be exponential.tal number of packets stored in the buffer before the AP To ﬁnd P1 and P2 , we will make the assumption thathas gained access to the media, which we will later refer the packets stored in the buffer have random destinations.to as the AP sending for convenience, as the state of the Note that this is not true since the AP favors packets des-Markov chain. The advantage of doing so is that the Markov tined non-isolated users, and as a result, in the buffer, therechain becomes discrete-time since we are only looking at will be more packets destined for isolated users than for thethe buffer at some discrete time instants. We will assume non-isolated users. However, this assumption makes the an-that between two AP sendings, the number of packets ar- alytical modeling tractable and yields remarkably accuraterived at the AP follows the widely used Poisson distribu- results when λ ≤ 1.tion, that is, Pa (K = k) = e−λ λk /k!, where K is the Let Fx be the event that among x packets there is norandom variable denoting the number of arrived packets. It compatible pair. We haveshould be noted that our model is not limited to Poisson P (Fb−1+k , Fb−1 ) P (Fb−1+k )distribution and can also be used if the arrival follows other P1 = P (Fb−1+k |Fb−1 ) = = P (Fb−1 ) P (Fb−1 )distributions. We also assume that the arrived packets haverandom destinations. Note that we have avoided explicit- since if there is no compatible pair in the b − 1 + k pack-ly dealing with the complex issue of how often can the AP ets, there cannot be a compatible pair in any subset of it, ingain access to the media, because it has been encapsulated particular, the b − 1 packets. P2 is harder to ﬁnd than P1 ,in the assumption of the arrival distribution. That is, if the since we do not know after sending out a compatible pair,AP has to wait longer to access the media, we can choose whether there is still a compatible pair in the b − 2 packet-a large λ since more packets can be expected to arrive and s. We make the assumption that there is no compatible pairotherwise we can choose a small λ since less packets can be in the b − 2 packets, since when λ is not large, the packet-expected to arrive. s can be sent out rather swiftly, and we can safely assume To more accurately model the queues, we also consid- that once a compatible pair is formed, it will be immediate-er whether there exists a pair of compatible packets in the ly sent out. With this assumption, similar to P1 , we havebuffer. Therefore in our model, we use (b, r) as the state of P2 = P (Fb−2+k )/P (Fb−2 ).the Markov chain, where b is the total number of packets, To ﬁnd P (Fx ), we ﬁrst ﬁnd PU (x, s) which is the prob-and r = 0 means that there is no compatible pair and r = 1 ability that knowing that x packets are for s users, there isotherwise. We assume that if there exists a compatible pair at least one packet for each of the s users, i.e., none of thethe AP will always send it, since when the arrival rate is s- queues for the s users is empty. Clearly, PU (x, 1) = 1 formall, most likely the packets will not be delayed longer than all x and PU (2, 2) = 1/2. For larger x and s, observe thatthe threshold. Thus, the transition probability for (b, 0) is if given t packets are for the ﬁrst user, the event that none (b, 0) → (b − 1 + k, 0) : P1 Pa (k) of the s queues is empty occurs if and only if the rest x − t packets make the rest s − 1 queues all non-empty, whichwhere P1 is the probability that given there is no compatible occurs with probability PU (x − t, s − 1). Thus, we have thepair in the b − 1 packets left in the buffer, there is no com- recursive relation x−s+1patible pair after k new packets have arrived, and, clearly, x PU (x, s) = PU (x − t, s − 1) (1/s)t (1 − 1/s)x−t t t=1 (b, 0) → (b − 1 + k, 1) : (1 − P1 )Pa (k). Let PW (x, s) be the probability that if there are totally xSimilarly, the transition probability for (b, 1) is packets in the buffer, there are exactly s non-empty queues (b, 1) → (b − 2 + k, 0) : P2 Pa (k) among the total n queues. We have nwhere P2 is the probability that given there was a compati- PW (x, s) = (s/n)x PU (x, s), sble pair, after sending out the pair and after receiving k newpackets, there is no compatible pair. Also, n since there are ways to choose s queues from n (b, 1) → (b − 2 + k, 1) : (1 − P2 )Pa (k). s queues and for any given s queues, this event occurs if andTherefore in the following we need only to focus on ﬁnding only if the x packets are all for the s users which occurs withP1 and P2 . Note that since we have used only two random probability (s/n)x and if the x packets make the s queuesvariables to model n queues, some information is lost, and all non-empty which occurs with probability PU (x, s).the model is only an approximation model in the sense that After obtaining PW (x, s), PF (x) is simply
10.
n n=10 P (Fx ) = PW (x, s)(1 − p)s(s−1)/2 , 10 λ=0.75, ana s=1 λ=0.85, ana 8 λ=0.95, ana Average Packet Delay λ=0.75, simusince the probability that there is no compatible pair among λ=0.85, simus users is (1 − p)s(s−1)/2 . 6 λ=0.95, simu5.2.2 Analytical and Simulation Results 4We also conducted simulations to verify our analytical mod- 2el. In our simulations, each point is obtained by runningon 100 random topologies and each topology is run for 0100, 000 rounds. Fig. 8(a) shows the average packet delay 0 0.05 0.1 0.15 Compatibility Probability 0.2as a function of compatibility probability when λ < 1 for (a) λ < 1n = 10 obtained by simulations and the analytical model. n=10First we observe that the analytical results are very close to 8 λ=1.05, simuthe simulation results. Second we observe that MPT greatly 7 λ=1.15, simureduces the average delay even when p is very small. We λ=1.25, simu Average Packet Delayalso observe that the average delay decreases faster when p 6is smaller and will tend to converge to a value when p fur- 5ther increases. Fig. 8(b) shows the average packet delayobtained by simulations when λ > 1. Similarly, we can 4observe that increasing p will always reduce the delay. Wehave used large p in Fig. 8(b) than in Fig. 8(a) because 3when λ > 1, small p occasionally results in too separated 2topologies which causes the buffer that has limited size in 0.14 0.16 0.18 0.2 Compatibility Probability 0.22 0.24our simulations to be unstable. (b) λ > 16 Conclusions Figure 8. Average packet delay as a function of com- patibility probability under different arrival rates when In this paper we considered using Multiple Packet Trans- there are 10 users. “ana” and “simu” stand for “analyt-mission (MPT) to improve the downlink performance of the ical” and “simulation,” respectively.wireless LANs. With MPT, the access point can send t- [4] G. Dimic, N. D. Sidiropoulos and R. Zhang; “Medium ac-wo compatible packets simultaneously to two distinct users. cess control - physical cross-layer design,” IEEE Signal Pro-We have formalized the problem of ﬁnding a minimum time cessing Magazine, vol.21, no.5, pp.40-50, 2004.schedule as a matching problem, and have given a practical [5] Q. Liu, S. Zhou and G.B. Giannakis, “Cross-layer schedul-linear time algorithm that ﬁnds a matching at least 3/4 the ing with prescribed QoS guarantees in adaptive wireless net-size of a maximum matching. We studied the performance works,” JSAC, vol.23, no.5, pp.1056-1066, 2005.of wireless LAN after enhanced with MPT. We gave an- [6] V. Kawadia and P.R. Kumar, “Principles and protocols foralytical bounds for maximum allowable arrival rate which power control in wireless ad hoc networks,” JSAC, vol.23,measures the speedup of the downlink and our results show no.1, pp.76-88, 2005. [7] A Czygrinow, M. Hanckowiak and E. Szymanska, “Athat the maximum arrival rate increases signiﬁcantly even fast distributed algorithm for approximating the maximumwith a very small compatibility probability. We also used matching,” Algorithms - ESA 2004, Lecture Notes in Com-an approximate analytical model and simulations to study puter Science 3221, pp.252-263, 2004.the average packet delay and our results show that packet [8] http://grouper.ieee.org/groups/802/11/.delay can be greatly reduced even with a very small com- [9] W. Xiang; T. Pratt and X. Wang; “A software radio testbedpatibility probability. for two-transmitter two-receiver space-time coding OFDM wireless LAN,” IEEE Communications Magazine, vol.42,References no.6, pp.S20-S28, 2004. [10] J. Edmonds, “Paths, trees, and ﬂowers,” Canad. J. Math, [1] D. Tse and P. Viswanath, “Fundamentals of wireless com- 17:449-467, 1965. munication,” Cambridge University Press, May 2005. [11] H. N. Gabow, “An efﬁcient implementation of Edmonds’ al- [2] D.B. West, “Introduction to graph theory,” Prentice-Hall, gorithm for maximum matching on graphs,” Journal of the 1996. ACM (JACM), vol.23, no.2, pp.221-234, 1976. [12] J. Magun, “Greedy matching algorithms: An experimen- [3] T. Lang, V. Naware and P. Venkitasubramaniam, “Signal tal study,” Proc. 1st Workshop on Algorithm Engineering, processing in random access,” IEEE Signal Processing Mag- pp.22-31, 1997. azine, vol.21, no.5, pp.29-39, 2004.
Be the first to comment