View
214
Download
1
Tags:
Embed Size (px)
Citation preview
Accelerating Service Discovery in Ad Hoc Zero Configuration Networking
Se Gi Hong, Suman Srinivasan, and Henning Schulzrinne
Columbia University
Contents
• Wireless mobile ad-hoc networks• Overview of Zeroconf (Zero Configuration Networking)• Zeroconf in Mobile Ad Hoc Networks• Analysis of the mean service loss probability• Overview of joining process in 802.11• Accelerating Zeroconf• Implementation and performance
wireless mobile ad-hoc networks
• No Infrastructure– Allocate IP addresses without a DHCP server– Translate between domain names and IP addresses
without a DNS Server– Find service without a directory service
• Service discovery– The usage of service discovery has been increasing– e.g., iTunes (Apple’s music file sharing), iChat
• Solution– Zeroconf (Zero Configuration Networking)
What is Zeroconf?• IETF Zero Configuration Networking (Zeroconf) WG• 4 requirements
– IP interface configuration• Auto-configuration of IPv4 link-local address without a central
server (DHCP server) within the 169.254/16 subnet– Translation between host name and IP address
• Auto-configuration of a host name without a central server (DNS server)
– IP multicast address allocation• Range of IP multicast: 224.0.0.0 to 239.255.255.255
– Service discovery• Implementation
– Bonjour• Apple’s implementation of zero-configuration networking • iTunes, iChat
– Avahi• Open source for Linux
What is Zeroconf?• Service discovery
– Users can discover available service instances of a service types.
– Bonjour• Multicast DNS-Based service discovery (mDNS-SD)• PTR, SRV and TXT records• PTR lookup: <Service type>.<Domain>• SRV records: port number, host name• TXT records: additional information
What is Zeroconf?• Service discovery
MDNS standard query:
_daap._tcp.local. PTR?
MDNS standard query response PTR:
segi._daap._tcp.local.
MDNS standard query response PTR:
suman._daap._tcp.local.
segi._daap._tcp.local. SRV?segi._daap._tcp.local. TXT?
SRV – 0 0 3689 segihong.local.TXT – txtvers=1segihong.local. A 169.254.153.82
Zeroconf in Mobile Ad Hoc Networks
• High mobile environment – frequently join/leave for a short time
• Zeroconf does not include algorithm to detect network topology changes
• To discovery services, services should be announced and looked up frequently -> overhead
Analysis of the mean service loss probability
• Assumption:– Node arrival rate to a local ad-hoc area follows an exponential
distribution with rate – Node residence time follows exponential distribution with rate – Service announcing and browsing interval follows exponential
distribution with rate – Current number of nodes in an area is n
Time
T
X
Y
Service browsingof node i
Service browsingof node k
Node A arrives
Node A leaves
Node A’s nextService announcing
Analysis of the mean service loss probability
• The service loss probability
• The mean service loss probability
Q(n)Pr(T X)Pr(Y X) Pr(T X)Pr(Y X)dxdy0
0
n
Q(n)Pr(N n)n0
n
n0
n
n!
exp
Analysis of the mean service loss probability
(a) Average residence time is 60 minutes (b) Average residence time is 10 minutes
Average number of users Average number of users
Mea
n se
rvic
e lo
ss p
roba
bilit
y
Mea
n se
rvic
e lo
ss p
roba
bilit
y
What do we need?• Current Service Discovery of Zeroconf is not enough for high
mobile environment since Zeroconf does not have the algorithm for detecting network topology changes
• We need a method to recognize new peers (services) in real-time while reducing overhead.
• Solution– We can use the existing Beacon frames of 802.11
What happens when a device joins in a local ad-hoc network?
• Ad-hoc network– BSSID (Basic service set identification) is required for
communication each other.– TSF (Time Synchronization Function) keeps the timer for all
node in same BSS for beacon period.– BSSID and TSF timer value are same for all nodes in the same
BSS (Basic Service Set)– Beacon frames contains BSSID and TSF timer value
• How to join in the group?– Initially, each device randomly chooses BSSID– Sending probe request and scanning (listening) Beacon frames
in all channels– Adopt the information, such as BSSID and the TSF timer, only if
the SSID is matched and the value of timestamp in the received beacon frames or probe requests is later than the node’s TSF timer
What happens when a device joins in a local ad-hoc network?
• Node A joins
802.11MAC/PHY
Node B Node CNode A
BSS1
BSS2
BSSID = 02:02:2D:0D:6B:0ETSF timer = 1000
BSSID = 00:35:0E:3S:5D:5ETSF timer = 2000
What happens when a device joins in a local ad-hoc network?
• Node A joins
802.11MAC/PHY
Node B Node CNode A
BSS2
BSSID = 00:35:0E:3S:5D:5ETSF timer = 2000
802.11MAC/PHY
Accelerating Zeroconf• Monitoring current BSSID
– Changes of BSSID means that it joins in a new local ad-hoc network.
– If (old_BSSID != current_BSSID), then re-trigger service discovery.
• Standard wireless extensions in Linux– ioctl(): SIOCGIWAP option – get BSSID
• Windows WLAN API– WlanGetNetworkBssList()
Accelerating Zeroconf• Accelerating service discovery architecture
Zeroconf Software
IP assignNaming
Service Discovery
Monitoring BSSID
Beacon Frames
ApplicationLayer
Data LinkLayer
Zeroconf Software
IP assignNaming
Service Discovery
Monitoring BSSID
Beacon Frames
User A User B
Performance• Scenarios
– Three laptops (A, B, and C)– Laptop A joins a local ad-hoc networks– Laptop A announces a service and B and C browse for the service
• Compare to theoretical analysis of delay in Zeroconf with periodic service announcing and browsing– Service announcing and browsing interval: exponential distribution
with rate – D is the delay– is the next announcing or browsing time of A, B and C
– Mean of the delay is
tA , tB , tC
Pr(D t)Pr(min(tA ,tB ,tc ) t)Pr(tA t)Pr(tB t)Pr(tC t)
e 3t .
1
3
Performance• Delay measurement of the service discovery protocol