Title: SATMatch: A SelfAdaptive Topology Matching Method in Structured P2P Overlays
1SAT-Match A Self-Adaptive Topology Matching
Method in Structured P2P Overlays
- Shansi Ren, Lei Guo, Song Jiang, and Xiaodong
Zhang - College of William and Mary
2Topology Mismatch in P2P Overlays
1
4
3
Overlay Topology
5
2
Node 3
Node 4
Node 1
Internet
Physical Network
Node 5
Node 2
3Topology Mismatch Problem
- Overlay topology is independent of its
corresponding physical network. - One logical hop can correspond to several
physical links with long delays. - Avg Response Time mean routing hops mean
logical link latency.
4CAN A Structured P2P Case
- CAN (SigComm03) Content-Addressable Network.
- The key space is abstracted as a multi
dimensional Cartesian space. - Request is routed from one zone to another one.
- Frequent joins and leaves is tolerated.
5Topology Mismatch in CAN
12
A
C
B
C
A
2
3
D
D
B
9
latency 299 20
latency 2
The Underlying Network Connections
The Overlay Topology
6Existing Solutions and Their Limitations
- Landmark Binning (InfoCom 02) and Global Soft
State (ICDCS 03) utilize landmark RTTs
measurements.
- Landmarks can be overloaded or be attacked.
- They are coarse-grained, do not adapt to dynamic
networks.
- A Scalable, Adaptable, and Lightweight method is
wanted.
7Road Map
- Problem Formulation
- Existing Solutions and Their Limitations
- SAT-Match Solution
- Overlay Adjustment to Reduce Latency
- Coordination to avoid Contention
- Probing Period Variation to Reduce Traffic
- Performance Evaluation
- Conclusion
8Overview of SAT-Match
- Objective of SAT-Match is to reduce the avg
logical link latency (stretch) of the whole
system.
- Nodes find better locations by Round Trip Time
(RTT) measurements periodically. - Nodes jump to better locations step by step.
- Local optimizations result in global optimization.
9Features of SAT-Match
- It is decentralized and scalable because nodes
only utilizes local information. - It quickly responds to physical network changes.
- It does NOT cause heavy overhead due to probing
period adjustment .
10Step 1Find Closer Neighbors
- A source node floods out queries with TTL k.
- Nodes being reached respond with their IPs.
- The source measures Round Trip Time (RTT) to
these responders. - The source chooses a set nodes with smallest
RTTs.
11TTL-3 neighborhood
IP
A
Ping
Ping
Ping
Ping
Ping
Ping
IP
IP
Ping
Ping
Ping
IP
IP
IP
IP
B
IP
C
IP
TTL-1 neighborhood
12Step 2 Calculate Local Stretch Reduction
- The source S calculates the stretch change of Ss
and the target Ts TTL-1 neighborhoods as if it
had jumped to T. - If the stretch reduction is greater than a
threshold, S jumps to T. - Otherwise, S stays at its original place, and
tries the other remaining candidates.
13source
first target
Before the Virtual Jump
Avg Stretch S1
14break old connections
add a new connection
first target
Virtual Jump
new connections
15Avg StretchgtS1C?
first target
After the Virtual Jump
source
16Step 3 Jump to A New Location
- S returns its zone and indices to one neighbor.
Leave
- S contacts T and gets a point in Ts zone.
- S sends a join request to one bootstrap.
- Bootstrap forwards this request to T.
- T gives half zone and indices to S.
Join
172
node 2 migrates indices to one neighbor
1
node 2 leaves the system
11
14
node 3 takes over the zone
3
2
node 2 contacts node 9
5
6
15
node 2 contacts bootstrap 11
18
4
node 11 forwards join request to node 9
19
12
7
9
16
17
node 9 gives away half zone
20
node 2 takes over the zone and joins the system
8
13
10
node 9 transfers indices to node 2
Node 2 Jumps to Node 9 in a CAN
18local neighborhoods
target
the whole system
source
We mathematically analyze that reduction in S1
(local) can result in reduction in S (global).
Avg Stretch S
Avg Stretch S1
19Coordinate to Avoid Contention
- Multiple nodes try to jump simultaneously.
- If a logical link breaks after a node probes, the
gain factor can be inaccurate. - Nodes use exponential back-off algorithm to avoid
contention.
20B
C
A wants to jump to C
D
no contention, D jumps to B
Contention, D does not jump
A jumps to C
Contention A wants to jump to C, D wants to
jumps to B
21Adjust Period to Reduce Overhead
- Stretch can NOT be reduced after several jumps
for many nodes. - If a node does not jump after probing, its period
is doubled. - If it jumps, it takes the base period.
- Nodes probe frequently in instable networks, and
probe occasionally in static networks.
22Sleep T0
A
Node A probes its TTL-k neighborhood
23Sleep 2T0
A
Node A probes its TTL-k neighborhood
24Sleep 4T0
A
Node A probes its TTL-k neighborhood
25Simulation Environment
- We built a CAN simulator ourselves.
- TTL scale, dimensionality, and system size were
tuned. - Condensed type and sparse type networks were
generated by GT-ITM. - We simulated the CAN with 5000 nodes.
26Performance Metrics
- Stretch the average logical link latency.
- Avg Search Response Time the average elapsed
time a query takes to reach its target. - Overhead Traffic the messages in bytes on one
single node caused by SAT-Match compared to no
optimization.
27Stretch Reduction
no drop
drop fast
25
31
35
28Landmark Binning with SAT-Match
29
25
16
27
25
24
53
50
43
29Search Response Time
almost the same
fast drop
no drop
30
response time change
query routing hops distribution
30Overhead Traffic
increase slowly
increase quickly
larger TTL, more traffic
larger d, more traffic
smaller TTL, less traffic
smaller d, less traffic
k3 can balance the stretch reduction and the
overhead
31Conclusions
- It quickly reduces global topology mismatch by
iterative local optimizations. - It adapts to frequent network changes, i.e., in
wireless networks. - It is lightweight to be embedded into current P2P
systems. - It can be effectively combined with other
techniques, such as landmark binning.
32Thank you!