Title: Concurrent Online Tracking of Mobile Users
1Concurrent Online Tracking of Mobile Users
- Baruch Awerbuch, David Peleg
- Interpreted by Ju Wang
- CSAG-UCSD
2Outline
- Problem description
- Regional matching
- High level view of the scheme
- How this scheme works example
- Discussion
3Problem Description
- Assumptions
- A network of hosts with fixed topology.
- Users are moving inside the network from one host
to another. - The problem
- Construct a distributed directory to keep track
of user location. - Two operations Move and Find
4Problem Description (cont.)
- Challenges
- Minimize the cost for both Find and Move
operations, which are conflicting. - Concurrency issues
- Try to locate a moving user.
- This paper tried to solve it, but the solution is
not really satisfying. - We first ignore the concurrency issue, and come
back to it in discussion section.
5Theory Behind Regional Matching
- Formal definition
- Given a set of vertices V v1, , vn
- Given another set D d1, , dm
- For each vertex vi?V, define two sets R(vi) and
W(vi), where R(vi)?D and W(vi)?D. - Regional match
- For ?x,?y?V, R(x) ? W(y) ? ?
6Theory Behind Regional Matching (cont.)
A
Write Set for host y B, C
B
Read Set for host y A, D
y
C
D
x
Host
Write Set for host x A, C
Directory Server
Read Set for host x B, D
7High-Level View
Kth Region (Graph G)
Diameter of G, D(G)
- D(G) ? 2k (Kth region has a diameter of size 2k)
- A user v on any host in G should be able to
locate another user u on any host in G using
regional matching.
8High-Level View
(K-1)-level regional directory servers
- It is not a partition of the network.
- Any two hosts within distance of 2k-1 has the
regional mapping property, namely , R(x) ? W(y) ?
?
9High-Level View
(K-2)-level regional directory servers
10High-Level View
- For each user u, the system maintains two
vectors - A(u) ltR_Addr1(u), , R_Addrk(u)gt
- Caches addresses in the ith regional directory
- C(u) ltC1(u),, Ck(u)gt
- Counter to remember how far u has traveled since
last update in the ith regional directory - Both vectors are kept on the host where user
resides, and will migrate with the user.
11High-Level View
B
A
- The information in regional directory might be
out-of-date. Use forward pointers to fix this
problem.
12Find Operation
13Move Operation
A(u) ltx4, x4, x3, x2, x2, x1gt
C(u) lt0, 0, 3, 5, 5, 25gt
x1
x2
x3
x4
20
2
3
14Move Operation
C(u) lt0, 0, 3, 5, 5, 25gt
x1
x2
x3
x4
20
2
3
1
C(u) lt1, 1, 4, 6, 6, 26gt
x5
A(u) ltx4, x4, x3, x2, x2, x1gt
Remove entry in W1(x4), W2(x4), W3(x3)
A(u) ltx5, x5, x5, x2, x2, x1gt
Add entry in W1(x5), W2(x5), W3(x5)
C(u) lt0, 0, 0, 6, 6, 26gt
Remove forward pointer in x3 Add forward pointer
in x2
15Discussion
- Concurrency issue
- Their solution
- Regionally restrict migration
- Maybe too restrictive?
- Other solutions?
- Retry? Allow failure?
- ?
- Advantage of this scheme
- True distributed scheme
- Better use of locality than partitioning the
network.
16Discussion (cont.)
- Restrictions
- Assumes static network topology
- How easy it is to support dynamic network
topology is unclear in the paper. Need more
knowledge about the math regional matching
problem. - Is this scheme vulnerable to failures or attacks?
- Can be extended to tolerate failures or attacks
by adding redundancy in the matching. - For example, we can require that for any x, y in
a region, W(x) and W(y) must have at least n
common elements. (n-redundancy)