Reverse Engineering MAC: A Non-Cooperative Game Model Jianwei Huang Information Engineering The Chinese University of Hong Kong Joint work with J.-W. Lee, A. Tang, M. Chiang and A. R. Canderbank J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 1 / 21
Summary Reverse engineering: Given the solution, what is the problem? Then, know what works, what doesn’t, why it works, how to improve Provide the missing piece (on MAC) for existing layers 2-4 protocols on rigorous mathematical foundation J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 2 / 21
Reverse Engineering Forward Engineering� Forward Engineering� Problem� Problem� Protocol� Protocol� (Objective � (Objective � (Parameter update� (Parameter update� &� &� &� &� Constraints)� Constraints)� Reverse Engineering� Reverse Engineering� Message passing)� Message passing)� J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 3 / 21
Reverse Engineering Forward Engineering� Forward Engineering� Problem� Problem� Protocol� Protocol� (Objective � (Objective � (Parameter update� (Parameter update� &� &� &� &� Constraints)� Constraints)� Reverse Engineering� Reverse Engineering� Message passing)� Message passing)� Related works: ◮ Layer 4: TCP/AQM [Kelly-Maulloo-Tan98, Low03, Kunniyur-Srikant03, ...] NUM ◮ Layer 3: BGP [Griffin-Shepherd-Wilfong02] SPP ◮ Layer 2: MAC (contention avoidance in random access) [This Paper] J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 3 / 21
TCP/AQM Network Utility Maximization (NUM) problem ◮ Utility of each user depends on its own data rate ◮ Adequate feedback from the network maximize � s U s ( x s ) subject to � s : l ∈ L ( s ) x s ≤ c l , ∀ l , x min � x � x max . J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 4 / 21
TCP/AQM Network Utility Maximization (NUM) problem ◮ Utility of each user depends on its own data rate ◮ Adequate feedback from the network maximize � s U s ( x s ) subject to � s : l ∈ L ( s ) x s ≤ c l , ∀ l , x min � x � x max . Reverse engineering provides J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 4 / 21
TCP/AQM Network Utility Maximization (NUM) problem ◮ Utility of each user depends on its own data rate ◮ Adequate feedback from the network maximize � s U s ( x s ) subject to � s : l ∈ L ( s ) x s ≤ c l , ∀ l , x min � x � x max . Reverse engineering provides ◮ Better understanding: existence, uniqueness, optimality and stability, counter-intuitive behaviors ◮ Systematic design: scalable price signal, control laws with better stability properties ◮ Layering as optimization decomposition J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 4 / 21
MAC Reverse Engineering Utility depends on its own transmission and other links transmissions through collisions, which can not be completely controlled by the link itself. J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 5 / 21
MAC Reverse Engineering Utility depends on its own transmission and other links transmissions through collisions, which can not be completely controlled by the link itself. Inadequate feedback from the network J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 5 / 21
MAC Reverse Engineering Utility depends on its own transmission and other links transmissions through collisions, which can not be completely controlled by the link itself. Inadequate feedback from the network Reverse engineer to non-cooperative game J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 5 / 21
MAC Reverse Engineering Utility depends on its own transmission and other links transmissions through collisions, which can not be completely controlled by the link itself. Inadequate feedback from the network Reverse engineer to non-cooperative game Questions: J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 5 / 21
MAC Reverse Engineering Utility depends on its own transmission and other links transmissions through collisions, which can not be completely controlled by the link itself. Inadequate feedback from the network Reverse engineer to non-cooperative game Questions: ◮ What kind of utility functions do users have? J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 5 / 21
MAC Reverse Engineering Utility depends on its own transmission and other links transmissions through collisions, which can not be completely controlled by the link itself. Inadequate feedback from the network Reverse engineer to non-cooperative game Questions: ◮ What kind of utility functions do users have? ◮ What does the MAC protocol do for the game? J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 5 / 21
MAC Reverse Engineering Utility depends on its own transmission and other links transmissions through collisions, which can not be completely controlled by the link itself. Inadequate feedback from the network Reverse engineer to non-cooperative game Questions: ◮ What kind of utility functions do users have? ◮ What does the MAC protocol do for the game? ◮ Does the Nash Equilibrium (NE) exist? If so, is the NE unique and stable? J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 5 / 21
Different Work Game to MAC: MacKenzie, Wicker 2003 Jin, Kesidis 2004 Altman et. al. 2005 Yuen, Marbach 2005 Wang, Krunz, Younis 2006 This is different: Reverse engineering Discover, not impose, utility and game J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 6 / 21
Persistence Probabilistic Model of Protocol Protocol parameters: ◮ Politeness: p max l ◮ Backoff multiplier β ∈ (0 , 1) ◮ p min l J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 7 / 21
Persistence Probabilistic Model of Protocol Protocol parameters: ◮ Politeness: p max l ◮ Backoff multiplier β ∈ (0 , 1) ◮ p min l Protocol description: link l transmits with a probability p l ◮ If success, set p l = p max for the next transmission l ◮ If failure, set p l = max { p min , β l p l } , where 0 < β l < 1 l J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 7 / 21
Persistence Probabilistic Model of Protocol Protocol parameters: ◮ Politeness: p max l ◮ Backoff multiplier β ∈ (0 , 1) ◮ p min l Protocol description: link l transmits with a probability p l ◮ If success, set p l = p max for the next transmission l ◮ If failure, set p l = max { p min , β l p l } , where 0 < β l < 1 l Define L to ( l ) as set of links causing interferences to link l J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 7 / 21
Persistence Probability Update max { p min , p max p l ( t + 1) = 1 { T l ( t )=1 } 1 { C l ( t )=0 } l l + β l p l ( t ) 1 { T l ( t )=1 } 1 { C l ( t )=1 } + p l ( t ) 1 { T l ( t )=0 } } 1 a : indicator function of event a T l ( t ): event that link l transmits at time slot t Prob { T l ( t ) = 1 | p ( t ) } = p l ( t ) C l ( t ): event that there is a collision to link l ′ s transmission at time slot t � Prob { C l ( t ) = 1 | p ( t ) } = 1 − (1 − p n ( t )) n ∈ L to ( l ) J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 8 / 21
MAC Game A deterministic updating rule approximating the average behavior max { p min , p max � p l ( t + 1) = p l ( t ) (1 − p n ( t )) l l n ∈ L to ( l ) � + β l p l ( t ) p l ( t ) 1 − (1 − p n ( t )) n ∈ L to ( l ) + p l ( t )(1 − p l ( t )) } , The strategy such that each link tries to maximize its utility U l based on strategies of other links J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 9 / 21
MAC Game A deterministic updating rule approximating the average behavior max { p min , p max � p l ( t + 1) = p l ( t ) (1 − p n ( t )) l l n ∈ L to ( l ) � + β l p l ( t ) p l ( t ) 1 − (1 − p n ( t )) n ∈ L to ( l ) + p l ( t )(1 − p l ( t )) } , The strategy such that each link tries to maximize its utility U l based on strategies of other links Define MAC game as [ E , × l ∈ E A l , { U l } l ∈ E ] ◮ E: set of players (links) ◮ A l = { p l | p min ≤ p l ≤ p max } : action set of link l l l ◮ U l : utility function of link l J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 9 / 21
MAC Game We know ◮ S ( p ) = p l � n ∈ L to ( l ) (1 − p n ): probability of transmission success ◮ F ( p ) = p l (1 − � n ∈ L to ( l ) (1 − p n )): probability of transmission failure J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 10 / 21
MAC Game We know ◮ S ( p ) = p l � n ∈ L to ( l ) (1 − p n ): probability of transmission success ◮ F ( p ) = p l (1 − � n ∈ L to ( l ) (1 − p n )): probability of transmission failure Theorem: Utility function turns out to be expected net reward: U l ( p ) = R ( p l ) S ( p ) − C ( p l ) F ( p ) where ◮ R ( p l ) = p l ( 1 − 1 2 p max 3 p l ): reward for transmission success l ◮ C ( p l ) = 1 3 (1 − β l ) p 2 l : cost for transmission failure J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 10 / 21
−3 5 x 10 4.5 4 3.5 3 U( p) 2.5 2 1.5 p l * = 0.333 1 0.5 0 0 0.1 0.2 0.3 0.4 0.5 p l Dependence of a utility function on its own persistence probability ( β l = 0 . 5, p max = 0 . 5, and � n ∈ L to ( l ) (1 − p n ) = 0 . 5) l J. Huang (CUHK) Reverse Engineering MAC Nov. 2007 11 / 21
Recommend
More recommend