Download - Utility-based Routing
![Page 1: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/1.jpg)
Utility-based Routing
Jie Wu
Dept. of Computer and Information Sciences
Temple University
1
![Page 2: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/2.jpg)
Roadmap
Mao vs. Hardy
Why Another Routing Scheme?
Utility-Based Routing
Implementations
Extensions
Some Final Thoughts
2
![Page 3: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/3.jpg)
Mao vs. Hardy
Z. Mao (Serve the People)
Knowledge begins with practice.
Theoretical knowledge acquired through practice must
then return to practice.
G. H. Hardy (A Mathematician's Apology)
The real mathematics of the real mathematicians is
almost wholly useless.
It is not possible to justify the life of any genuine
professional mathematician on the ground of the utility of
his work.3
![Page 4: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/4.jpg)
ImplicationsPoliticians (when they become politically weak)
Start new revolutions
(and young people become followers)
Mathematicians (when they become old)
Start writing books
(and young people prove theorems)
Professors (when they become seniors)
Give presentations
(and students write papers)
4
![Page 5: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/5.jpg)
Why Another Routing Scheme?
Why routing again?
Because it is interesting (a non-serious answer)
A new routing algorithm: composite utility
Benefit (of packet delivery)
Cost (of forwarding)
Reliability (of links)
Timeliness (of reaching destination)
5
![Page 6: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/6.jpg)
A Postage Example
Best route: importance of the package Valuable package: Fedex (more reliable, costs more)
Regular package: Regular mail (less reliable, costs less)
sender receiver
package
route 1
route 2
route k
cost/reliability6
![Page 7: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/7.jpg)
A Sample NetworkTraditional metrics: cost/reliability
The minimum cost path: s 1 d Cost 2 + 3 = 5
Reliability 0.8 × 0.9 = 0.72
The most reliable path: s 2 d Cost 4 + 3 = 7
Reliability 0.9 × 0.9 = 0.81
7
![Page 8: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/8.jpg)
Utility-Based Routing (Lu&Wu’06)
Each packet is assigned a benefit value, v
s transmits a packet with benefit v to d Transmission cost/reliability: c/p
Utility: v – c if success, 0 – c otherwise
Expected utility: u = p(v-c) + (1-p)(0-c) = pv - c The best route maximizes u
s dc
Success: pFailure: 1-p
8
![Page 9: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/9.jpg)
A General Expression
General form of u for path
R: s (= 0), …, i, i+1, …, d (= n)
where, PR: route stability and CR: route cost
i i+1
pi,i+1
ci, i+1
s d
RR
n
i
i
jjjii
n
iii CvPpcvpu
1
0
1
01,1,
1
01, )()(
9
![Page 10: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/10.jpg)
How to calculate u ?
Direct calculation 0.8 *0.9*20 – 2 – 3*0.8=10
Backward calculation
ui = pi,i+1 ui+1 - ci,i+1 (virtual s/d)
0.9*20 – 3 = 15 (at i)
0.8*15 – 2 = 10 (at s)
s d2/0.8 3/0.9V=20
i
10
![Page 11: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/11.jpg)
Benefit Dependent Best Paths
Ri Pi Ci
R1 0.72 4.4
R2 0.81 6.7
R3 0.5 5.3
R4 0.57 7.7
R1: s1d
R2: s2d
R3: s1 2d
R4: s2 1d
3.7R4
4.7R3
9.5R2
10R1
UiRi
v=20
9.4R4
9.7R3
17.6R2
17.2R1
UiRi
v=30
Different benefit values may
have different best paths!
11
![Page 12: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/12.jpg)
Implementations
Centralized: Source collects global link-state Applies a modified Dijkstra’s shortest path from d
Each node i maintains the maximum ui (initiated to zero)
i relaxes j: uj = pj,i ui- cj,i until reaching s
Wireless and mobile: reactive approachRoute discovery (from s)
Route reply (from d)
ij
sd
relax
12
![Page 13: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/13.jpg)
ExtensionsHPCC: All optimal routes
Different benefit values
IUCC: Wireless networks Opportunistic routing
Network coding
TrustCom: Incentive compatible routing Handling selfish nodes
ICESS: Real-time responses Low duty cycles in WSNs
13
![Page 14: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/14.jpg)
All Optimal Routes (HPCC)
Requirement Find all optimal routes for different benefits
Challenges Enumerating all benefits is infeasible
For a given range of benefits
Checking all paths is too expensive Exponential to the number of nodes
14
![Page 15: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/15.jpg)
Intersection Point
UR1 = 0.72v – 4.4UR2= 0.9v-7
R1: s -> 1 -> d
R2: s -> 2 -> d
15
Complexity: O(R2) (R: number of paths)
![Page 16: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/16.jpg)
Binary Partition
Stoppage condition: r × tan θ < Δ
(r: sub-range, θ: angle between R1 and R2)
16
Iteratively partition the benefit range
into sub-ranges
![Page 17: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/17.jpg)
Wireless Networks (IUCC)
Opportunistic routing (OR) with adjustable transmission
range
Relay set: more than one node can relay
Priority: ETX or “cost” to destination
17
![Page 18: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/18.jpg)
OR Example
Best expected utility us = 10 for v = 20
Priority s < 1 < 2 < d
The best expected opportunistic utility opus = 14.6 for v = 20
Optimal solution NP-hard
18
![Page 19: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/19.jpg)
Network Coding
Linearly independent code at s a + b and 2a + b
Another code at n2
(a + b) + (2a + b) = 3a + 2b
Optimal credit: min transmission
input vs. output rate (n1, n2): (1, 0.5)
(n1, n2): (0, 1)
Optimal credit: max utility if c(n1) < c(n2)
(n1, n2): (1, 0.5)
Khreishah, Khalil, & Wu (MobiHoc’12)
s
n1
d
n2
0.5
1
19
a + b
1
1
a + b2a + b
a + b
3a + 2b
![Page 20: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/20.jpg)
Incentive Compatible Routing (TrustCom)
Nodes are selfish and give false private information Without reward, they will not help relay packets Maximize utility = payment – cost
Mechanism design Tie self interest to societal interest
VCG scheme: enforcing the reporting of correct link costs Nodes on the optimal path: utility remains the same when lying Nodes not on the optimal path: utility reduces when lying
20
![Page 21: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/21.jpg)
Second Price Path Auction
Why doesn’t the first price work? System objective inconsistent with individual nodes’
objectives
The solution: second price Loser’s utility is 0
Winner i’s payment
lowest cost without i - lowest cost + cost of node i
21
![Page 22: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/22.jpg)
A VCG Example
Case 1: nodes on an optimal path lie If (s, 1) is changed to 3
S still gets 7 – 6 + 3 = 4 (same as 7 – 5 + 2 = 4)
Case 2: nodes on a non-optimal path lie
If (2, d) is changed to 1 2 gets 5 – 5 + 1 = 1 < 3 (utility is negative)
s
1
d
2
2
2 3
4 3
22
![Page 23: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/23.jpg)
Real-Time Responses (ICESS)
Energy saving: on/off node t(s) = 4, node s is up every 4 units
Least common multiple (LCM) t(s) = 4, t(d) = 3, then LCM(t(s), t(d)) = 12, link delay for (s, d)
Extending utility function: delay-sensitive
s d 12
23
![Page 24: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/24.jpg)
Low Duty Cycles in WSNsUtility for a delivery path R: s (=0), 1, 2, …, n-1, d (=n)
Direct computation
Iterative computation
forward
backward
1
0
1
01,1,
1
0
1
01,1, )(
n
i
i
jjjii
n
i
n
iiiii pctvpu
1,11, iiiiii cupu11 i,iii tvv
) init, ( 0uuvu nn
24
forward
backward
ds
![Page 25: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/25.jpg)
Probabilistic Contacts in DTNs
Benefit is time-sensitive Balance delay and cost
Probabilistic contacts
Opportunistic forwarding Forwarding set is time-varying
low cost, low prob.
mid cost, mid prob.
large cost, large prob.25
![Page 26: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/26.jpg)
Some Final Thoughts
Is research on routing over? Probably yes: MANETs and sensor nets
No: Other networks (e.g. DTNs and social networks)
Mobility in Wireless Networks: Friend or Foe ? Mobility as a Foe: tolerating and masking
Mobility as a Friend: mobility-assisted routing
26
![Page 27: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/27.jpg)
Some Challenges
Future world being more wireless and mobile
Complexity and diversity
New challenges for architecture and protocol
design From top: more demand from the end user
(e.g., mobility support)
From bottom: emerging technologies
(e.g., new abstraction for wireless links)
27
![Page 28: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/28.jpg)
E.g. Mobility affects network model/protocolTime-space view vs. space view
View consistency in asynchronous systems Wu & Dai (IEEE Network’05): function of multiple views
Evolving graph model: connectivity & routing Liu & Wu (MobiHoc’07, ‘08, ‘09) Wu (Graph and Computing’10)
View(i-1) View(i) View(i+k)
View window Time
Space
Graph Model for Dynamic Networks
28
![Page 29: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/29.jpg)
Collaborators
Former studentsDr. Mingming LuProf. Feng Li
Visiting scholarProf. Mingjun Xiao
29
![Page 30: Utility-based Routing](https://reader035.vdocuments.site/reader035/viewer/2022070405/56813fe5550346895daad224/html5/thumbnails/30.jpg)
Questions
30