SCHO OL OF TE CHNO L O G Y D EP A R T E M E N T O F C O M P U T I N G
Toward Seamless Local Networking An in-depth study of Zeroconf protocols, both from theoretical and practical points of view, along with an enhancement attempt.
Yoann Aubineau supervised by Hazel Y. Peperell
Oxford, September 2004
This dissertation is submitted in part-fulfillment of the requirements for the degree of Master of Science in Computer Science
Abstract
Unlike vendor-specific network protocols such as Windows' NetBIOS1 or MacOS' AppleTalk2, the standard TCP/IP3 stack provides almost no stateless automatic configuration capacity. Such automation would be useful, though, when are lacking knowledge (eg. home networks), money (eg. small business networks) or time (eg. ad-hoc networks). We could also imagine, in a close future, networks of domestic appliances, hard to configure by hand because of their number and their possible small size. Zeroconf4 is a three-protocol suite, designed both at IETF5 and at Apple Computer, Inc. It aims to provide stateless automatic configuration capacities to the standard TCP/IP stack. Zeroconf's authors achieved this goal simply by expanding the usage of existing protocols, so that the changes needed to implement Zeroconf should be minor. Throughout this research, the guideline was to investigate Zeroconf world, in order to answer these questions: • What is Zeroconf and what is it for? • How does Zeroconf work, both theoretically and practically? • How to use Zeroconf and support it into applications? 1 2 3 4 5
Network Basic Input/Output System – a peer to peer networking protocol A protocol for networking Macintosh computers and printers Transmission Control Protocol/Internet Protocol
See Internet Engineering Task Force – the body that defines standard Internet protocols such as TCP/IP
2
Yoann Aubineau
Toward Seamless Local Networking
Eventually, will be described an attempt to enhance Zeroconf with replicated services support. Briefly, it allows several Zeroconf-enabled services to appear as a single service on the network, thus providing basic load-balancing and fault-tolerance. This report is divided into two main parts: theory and practical. The first part provides an in-depth study of the three protocols which constitute Zeroconf: AutoIP6, for IP address allocation, mDNS7, for multicast name resolution, and DNS-SD8, for service discovery. The second and last part gathers together network traffic analyses, a Zeroconf programming example, as well as a description of the enhancement attempt, whose source code is available in the appendices. These different approaches of Zeroconf jointly point up its main strengths: efficiency, lightness and flexibility. They show how Zeroconf is a great example of a powerful and useful technology, simply built by re-using existing standard protocols, in an ingenious way and, even more important, without breaking compatibility. Finally, at the end of this exposé, the reader will be able to perceive the emerging tendencies in the field of domestic computing. He will especially understand how computers, after having been all-in-one multi-media sets, are breaking up into distinct specific appliances, each of them interacting with the others via an automatically configured ad-hoc networks.
6 7 8
Automatic IP allocation – see chapter 1 Multicast Domain Name Service – see chapter 2 Service Discovery over DNS – see chapter 3
3
Yoann Aubineau
Acknowledgment
First of all, I would like to thank my parents for their trust in me and for giving me the opportunity to continue my studies abroad, at Oxford Brookes University, as well as for their moral support and encouragements. I am thankful to my brother, Thomas, and my close friends who kindly and rightly advised me during this research and who also knew how to entertain me when I needed it most. My thanks also go to my supervisor Hazel Y. Peperell for the help, academical support and guidance she has given to me at different stages of this dissertation work. I would like to express my profound gratitude to Stuart Cheshire, Marc Krochmal, and Erik Guttman, the main authors of Zeroconf specifications, for their fabulous work in producing such an exciting technology, as well as for their patience in answering my numerous and boring questions. Finally, I am deeply indebted to the whole free software community which provided me with professional, high quality, free of charge softwares which I used intensively throughout this project.
4
Yoann Aubineau
Table of Contents
Abstract
2
Acknowledgment
4
Index of Network Extractions
9
Introduction
11
Motivations for Auto-configured Networks .......................................11 Zeroconf at home ......................................................................12 Zeroconf at work .......................................................................12 New kind of networks ...............................................................13 Other Auto-configuration Mechanisms ..............................................13 More about Zeroconf ..........................................................................15 2
!3
!"$#&%('*) '*
4
1
5
!6
+
,"#.#7
Chapter 1 Link-Local IP Addressing
'*
/ +
0 8
1 -
%#9
17
1.1 Presentation ...................................................................................17 1.2 Address allocation ..........................................................................18 1.2.1 Selecting ............................................................................18 1.2.2 Probing ..............................................................................19 1.2.3 Announcing .......................................................................20 5
Yoann Aubineau
Toward Seamless Local Networking
1.3 Conflict detection & resolution .....................................................20 1.4 Various considerations ...................................................................22 1.4.1 Routing ..............................................................................22 1.4.2 Security ..............................................................................22
Chapter 2 Multicast Name Resolution
24
2.1 2.2 2.3 2.4
Two rival protocols ........................................................................24 Presentation ...................................................................................25 About names ..................................................................................26 Name resolution .............................................................................28 2.4.1 Querying ............................................................................28 2.4.2 Responding ........................................................................29 2.5 Cache Updating ..............................................................................30 2.5.1 Passive learning .................................................................30 2.5.2 Notification ........................................................................30 2.6 Conflict management .....................................................................31 2.6.1 Probing ..............................................................................31 2.6.2 Conflict resolution ............................................................32 2.7 Optimization techniques ................................................................33 2.7.1 Multiple questions/answers per packet ...........................33 2.7.2 Unicast responses ..............................................................33 2.7.3 Known answer advertisement ..........................................34 2.7.4 Duplicate question/answer suppression ..........................34
Chapter 3 Service Discovery
35
3.1 Introduction ...................................................................................35 3.2 Requirements .................................................................................36 3.2.1 Service names ....................................................................36 3.2.2 Service subdivision ............................................................37 3.2.3 Discovery by types ............................................................37 3.3 The solution ...................................................................................38 3.3.1 DNS SRV ............................................................................38 3.3.2 Service naming ..................................................................39 3.3.3 Process ...............................................................................39 3.4 Additional features ........................................................................41 3.4.1 Additional Record response .............................................41 3.5 Service Type Enumeration ...................................................41
6
Yoann Aubineau
Toward Seamless Local Networking 5 )
2
!6
!") '=
':#&%;'*) 4
1
>@?
+ A
8
#
2
/
Lÿýþ
û
3
ù
ûù
3
-
7
7
'
:0
)
), 0
.
-
2 #
2 #
6
3
(,
3
/.
/
'
0
: 7
(
>
90
,
'
&
: 0
2 #
),
6
2 #
O
P
I
R
J B
F
R
(
(
&
%
O
7
7
7
7
7
7
P
#
ý
]
\
#
þ
ý
û
þ
#
ý
N
N
a
3
P
4
104
þû
b
ý
3
6
ý
]
5 #
#
ý
\
;
7
7
a
P
ý
ý
ý
ý
b
ù
ù
]
\
#
#
#
ý
ý
þ
#
þ
ý
ý
#
þ
!
ý
ý
!
L
M
ý
(
(
&
%
h
]
\
H
W
L
7
7
7
ý
ý
ý
ý
T
\
]
7
ý
T
ù
ù
ù O
P
ý
I
R
J B
F
R
a
M
P
ý
b
% .
ý
Toward Seamless Local Networking Appendices
Yoann Aubineau
7
P
d
d
;
7
7
N
M
M
j
ý
d
d
105 (
(
&
%
h
(,
/.
/
'
0
:
(
0
),
]
]
]
\
\
\
F i
U
;
W M
P
7
M
P
;
O
P
F
JI
I
`
S
B W
7
7
M
P
þ
û
!
0
;
ý
N
N
\
\
% .
s
s
/
]
M
M
]
]
\
M
/
:0
0
-
M
g
f
ý
ý
7
]
g
p
ý
?g
f
f
;
;
ý
;
ý
ý
#
ù
ù
*
þ
ý
6
#
*
ù
ù
;
=
7
7
N
M
þ
þ
ý
ý
þ
þ
þ
ý
7
P
ý
]
\
g
f
þ
ý
ý
ý
ù
ù
(,
/.
/
'
0
:
(
0
),
p
;
ý
þ
þ
ý
;
#
ý
\
ý
ý
þ
;
þ
ý
ý
;
ý
ý
7
7
ý
þ
]
#
#
ý
ù
ù
]
þ
ý
þ
P
?
þ
#
7
I
R
J B
F
R
a
!
ý
ù
ù
ý
þ
#
þ
5
ý
; #
#
O
;
þ
ú
ù
ú
þ
þ
ú
#
!
þ
ý
þ
*
*
ý
ý
þ
û
ý
þ
ú
7
M
P
P
c
\
d
]
de
;
`R
H
M
P
7
7
M
P
\
Q
þ
û
R
T
T ]
\
V U
S
R
T
T ]
]
;
\
H
V U
S
`
F
^ W _
ý
;
L
7
M
H
b
? ]
;
\
W
Toward Seamless Local Networking Appendices
Yoann Aubineau
a
M
P
ý
107
ù
ù
0
#
ý
ý
þ
#
ý
ý
þ
=
;
þ
ýû
b
ý
L QF
F i
O
7
7
P
ý
ý
\
]
a
M
P
=
b
M
P
L
a
M
M
b
\
0 ]
ý
H
W
L
M
j
W
(
(
&
]
% 7
h
\
F i
U
M
P
ý
ý
ú
ý
ý
ù
ú
ý
ù
7
7
7
7
P
û
þ
þ
]
\
#
#
#
ý
=
ú
(
(
&
%
M
P
(
(
&
%
T
]
\
ù
ù
ù ù
ú
ú
ý
ý
ý
þ
#
;
þ
ýû
ý
ù
ú
ý
ý
þ
=
#
ú
#
û
þ
þ
#
#
#
ý
ý
þ
Y
;
þ
û
ý
ý
ú ý
þ
û
ú
P
T
7
#
G
W
M
ý
þ
`
7
ý
m
ý
ý
!
þ
ù
L
*
#
ý
#
þ
3
ý
3
ýþ
Y
ý
*
!
ý
þ
þ
ú
þ
þ
=
ú
#
ý
ý
þ
ú
Toward Seamless Local Networking Appendices
Yoann Aubineau
!
*
%
t
,$
,
ú
ý
!
þ
108
!
þ
û
ý
þ
ý
ý
þ
#
#
#
ý
ý
#
ý
ý
þ
þ
þ
ý
ý
ý
þ
#
þ
ý
#
ý
û
!
û
þ
þ ýû
*
!
5
!
#
ý
ý
þ
þ
þ
5
û
ú
ú
5
/
0
$
,
ú
ù
þ
ý
ý
þ
1
ù
ù
ù ú ûüú þ O
7
P
=
] P
7
7 ]
7
.
\
;
-
'
)
),
0
&
,
q
0\
P
ý
ý
ý
ý
]
\
7
M
j
ý
ý
(
(
&
%
h
]
\
F i
U
W
L
7 =
I
B
\
]
ý
þ
W
m ` G
W
ù
ù
ù ù
ú
*
þ
=
ý
þ
#
#
û
ý
ý
ú
ú
7 =
þ
ú
ù O
O
O
a
M
P
=
b
Toward Seamless Local Networking Appendices
Yoann Aubineau
O
P
P
!
þ
7
N
P
=
þ
]
]
N
P
-
'
)
),
.
u
]
\
;
O
ÿ
P
þ
ù
ù
-
'
)
),
.
]
\
#
;
*
*
!
]
\
H
W 7
P
þ
þ
]
\
#
N
N
M
P
þ
þû
ý
þ
û
]
\
7
N
P
þ
þ
û
þ
ý
þ
]
\
P
I B 7
W
P
ý
þ
þ
L
7
N
N
w
w
w
T
R
þ
û
T
]
V U
S
þû
ý
(0
),
\
I B
W
ù
ù
ù
7
ý
ý
2 #
O
P
I
R
J B
F
R O
7
P
=
0
&/
(
,
)
,
q
0
\
] P
ý
3
3
\
]
L
M
h
]
\
H
W
M
P
I
ý
B
]
\
#
W
L
7
ý
(0
),
T
]
\
#
I B
W
ù
ù
ù
Toward Seamless Local Networking Appendices
111 Yoann Aubineau
M
P
m
m
ý
þ
û
T
T
]
\
\
G
G
]
\
7
2 #
O
P
I
R
J B
F
R O
7
P
=
]
P
,
\
)
,
0
&/
]
q
ù
ù
ý
0
G
ù
ù
ù
x y
ý
T
W
7
ý
x y
þ
û
`
(
W
W
7
m
x y
`
`
L
3
3
]
\
L
M
M
(
(
&
%
]
\
H
W
N
M
P
T
\
þû
`
S
R
þû
B
T
]
#
û
R
T
V U
S
Q
]
B
\
V U
S
Q
I
`
S
I
N
#
7
û
(0
),
L (0
),
T
ù
ù
ù
7
2 #
O
P
I
R
J B
F
R O
Toward Seamless Local Networking Appendices
112 Yoann Aubineau
ù
ù
ù
7
û
û
P
;
I
R
F
R
J B
O
#
;
2 #
O
7
P
=
] P
]
;
0
&/
(
3
3
û
\
,
)
,
q
0
\
L
c
]
\
H
W
N
M
P
\
;
7
N
þ
\
ù
ù
ù
7
þ
û
]
#
û
þû
þ
þû
]
#
û
#
û
T
R
V U
þ
2 #
û
S
;
W
û
û B
B
7
I
I
W
L O
P
I
R
J B
F
R
N
N
M
P
3
3
M
P
ý
þ
ý
3
3
3
ý
7
7
ý
O
QF
ý
þ
L
i
ý
7
ý
q
.
q
0
%
'/
O
F
M
P
3
3
ý
þ
L
M
þû
7
M
ù
ù P
]
g
f
þû
W
\
H
L
7
7
7
2
þ
ý
û
ý
ý
2
k
2
JQ
O
7
P
QF
`
S
0
,
8
/
0
0
i
O
O
P
Q B
V i
7
7
ÿ
N
N
N
P
ý
7
ÿ
N
N
P
ý
~
3
U
3 N
þ
121
g
g
3
>
3
3
f
ý
ý
7
?
þ
3
3
f
ý
Q
þû
U
JE
3
]
þû
~
p
p
ý
Q
JE
?
\
Toward Seamless Local Networking Appendices
Yoann Aubineau
~
2
\
]
#
U
7
P
7
7
P
6
ù ù
G
G
@ #
B
2
:
',
'/
122
O
#
#
ý
ý
ý
ý
P
B
ù
2
ý
ý
ý
!
>
3
#
#
ý
ý
þ
þ
#
#
;
ý
B
H
W
M
P
2
3
3
#
þ
þ
*
M
P
2
3
3
#
þû
ý
ý
þ
:
,
;
ý
þ
ý
þ
!
þû
M
P
u
#
;
ý
M
P
v
ÿ w
M
]
\
F U
P
v
ÿ
ÿ
w
w
w
w
w
]
þ
]
2
> ]
\
#
F U
3
3
\
F U
3
3
?
\
v
v
v
]
F U
3
3
\
F U
ý
ý
#
#
þ
5
5
#
;
ý
7
7
#
2
#
#
ý
ý
þ
2
ÿ
ÿ
P
v
?
[
X
þ
ý
IF
`R
@
@
B
ù
?
[
X
ý
ý
>
[
X
ù
5
û
ÿý
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
ÿ
2
*
)
7
þû
L
M
5
ù
p
p
n
]
o
#
ý
ûý
þ
þ
ý
2
ù
6
ý
6
ý
û
þ
þ
\
H
W
M
P
I
V
F
R
ù
ù
3
\
l
i
G
2
3
ù
ù
]
þ
û
#
#
#
þ
W
L
Toward Seamless Local Networking Appendices
Yoann Aubineau
O
7
7
P
G
i
:
:
0
%
,
q
0
R W
QF
`
S O
ÿ
=
ù
ù
ù #
#
7
7
7
7
*
ÿ
P
=
124
7
2
3
ù ]
þ
þ
7
,
q
0
#
# :
:
0
\
G
G
O
L
U
]
R W
ù
ù
3
#
ù
6
ù
h
%
\
V
S
V
F
`R
=
F
ÿ
R
E
F
R
û
ý
ý
L
H
7
7
N
P
G
3
>
3
:
:
0
%
,
q
0
R W
I
EF
`
L
7
ÿ
ù
p
p
ý
n
ù
ú ]
@ o
6
6
#
#
û
\
H
W O
O
7
7
7
N
N
P
þû
\
þ
O
3
3
O
L
]
O
P
ý
3
L
M
þû
þû
þ
þ
\
O
3
3
]
#
O
L
3
3 #
O
L
þû
3
3
O
L
þ
þû
þ
þû
3
L
3
þû
þ
þû
3
L
#
#
3
ý
3
þû
þ
!
ý
þ
L
þ
ý
þ
þû
3
#
þû
3
#
ý
ý
2
3
3
F
3
]
ýþ
þ
p
p
O
L
O
L
3
ýþ
þ
s
s
O
L
3
þ
3
þû
\
H
W
O
ý
û
6
6
ù
>
o
n
H
O
L
W
ý
û
þû
þ
d
d
6
6
ù
>
ÿ
Y
P
ý
ý
ý
þû
þ
ý
6 6
n
n
6
6
n
2
ù
@ o
@
@ o
6
6
@ o
@
P
ý
@
6
ù
6
o
n
o
n
H
O
L
ÿ ú ÿ ú
M
þû
þ
W
P
B
2
ù
ù
þ
ý
Q
H
[
V i
W
L
7
7
j U
)
%.
:
0
%
,
q
0
]
\
F i
W
M
P
ý
þû
þ
3
3
>
O
L
M
P
þû
þ
4
]
\
L
7
ÿ
ý
û
@
ù
ù
ú
p
p
]
\
H
W
Toward Seamless Local Networking Appendices
Yoann Aubineau
P
QF
`
S
)
),
.
i O
P
I
ER
P
B
3
6
#
ý
U
~
]
\
#
S
V
F
.
W
L
3
)
I
3
.
ER
),
3
)
),
O
6
B
W
`R
H
O
L
L
ý
ý
ý
S
V
F
`R
~
]
\
U
H
P
B
2
3
)
),
3
6
>
I
ER
.
W
"
)
),
û
3
ù
ûù
3
ÿLýþ
*
I
EF
`
.
2
ý
ÿ
P
ù
ù
3
\
3 ]
#
#
=
=
û 7
P
P
þ
ý
û
ù 3 ]
#
7
7
ý
ý
ù
ù
3
\
7
þ
ý
û
ý
7
ý
ý
7
ý
7
7
7
2
ý
.
2
3
ù
ù
ù
3
\
]
2
ý
û
ý
ý
û
ý
2 $
2
O
7
7
P
QF
`
S
)
%.
:
0
%
,
q
0
i O
Toward Seamless Local Networking Appendices
125 Yoann Aubineau
Appendix B Differential Source Code for Howl's Replicated Service Support
This appendix includes one file: •
ðCø ô
¡¢¤£¥§¦©¨©ª«ª
: the patch which adds replicated service
support to Howl version 0.9.6. The lines beginning with the sign ¬
replace the lines beginning with the sign –.
126
Yoann Aubineau
æ
ê
æë
æ
í
æ
å
ä
é
õ
õ
ç õ
Û
¼
´
Ä
Û
®
¼ Û
´ ³
Ã
þ
Ã
¾
ÅÚ ¾
ÅÚ è é
Å
® Å
ä
¾ Ú
´
¾ Ú
´
è
ã
â
Û
¿À
º
º
´
ý
Ã
Û
ÛÂ
Û
É
û Á
¾
ż
´
½
Ô
Ô
Ñ
×
Ð
Ð
Ð
Ð
Ö
Õ
Ö
Õ
þ
Þ
¶®
»¼
·
Ú ¶
Ý
Ú Ü
Ã
Û
Ú
Ä
þ
Þ
¶®
¶
»¼
·
Ú ¶
Ý
Ú Ü
Ã
¼
ÃÚ
Ã
Å Â
Û®
Û
Å
ºÚ
´
Û®
Û
¼
´
ºÚ
¼
» ®
» ®
ÂÁ
¿À
Ã
Ã
ÂÁ
¿À
þ
Þ
ÀÁ
Á
®
³
Û
¶®
»¼
·
Ú ¶
Ý
Ù
Û®
Û
Ú Ü
Ã
ÃÚ
º
Å
´
ºÚ
¼
» ®
Ã
à Â
½
ƺ
Ã
½
û Á
´
¿À
127 Ô
ê
æ
æë
æ
í
ä
é
ø
õ
õ
Ô
æ
õ
õ
ù
é
ó
é
èð
õ
ó
ð ï
æ
èð
ì
è å
î
í
ð ï
í é
èð
í
ë
æð
ø
åä
ã
âá
ç õ
î
æ
í
Ñ
æð
è å
î å æ
î
ì í é
ì í é
èð
èð
õ
í
í
ë
õ
ë
ç õ
ç õ
î
åä æ
åä
ã
ã
î
âá
âá
×
æ
×
Þ
ÂÁ
Û
¶®
ÂÁ
¿À
Û®
Û
º
´
ý
Ã
Ã
Ú
º¾
´
ÛÂ
Û
Û
à Ý
º
»
à
Ú ¶
Å Ý
´
ºÚ
¼
» ®
Ã
»¼
Ú ¶
Ý
Ù
Û®
Û
Ú Ü
Ã
ÃÚ
º
Å
´
ºÚ
¼
» ®
Ã
¿À
Ã
Â
Á
®
Å
´
ºÚ
¼
Û®
Û
» ®
Ã
Ã
½
ƺ
²
²
þ
Þ
ÂÁ
¶®
»¼
·
Ú ¶
Ý
Ú Ü
Ã
¼
ÃÚ
ü
¿À
æç
âá
æç
âá
Þ
Â
þ Ã ÿ
¾
Ú
À
ýü
Ã
¼
ÃÚ
Ã
´Û
ûú
»
¶
Ú ¶
ø
ôó
æ
ù
ö õ ÷
ð
ò
ñ é y
ðï
î
í é
ì
æë
à º Ý
ê é y
è
åä
Æ ¶
´
ÂÁ
ã
è
ì
ø
ôó
æ
ù
ö õ ÷
ð
ò
ñ é y
ðï
î
í é
æë
ê é y
åä
ã
Û
Ù
¶®
ÂÁ
¿À
Ð
Ð
ÕØ
Ó
ÒÓ
±
±
±
±
°
°
²
½
ü
½
ƺ
Ã
º
Ã
Å
Ä´
ü
·
Ç
Á
Á
·É
È·
¿À
²
ÂÁ
¿À
¾ ²
º½
¼ ²
´
¹
¸
·
Û
à
Î Ê
Ï
±
°
²
·
Ç
Á
Á
Ê
Ç
·
·É
È·
¿À
²
ÂÁ
Î Ê ·
· ·
· ·
·
·
· ·
·
· ·
·
·
· ·
· · ·
·
·
¹
Í
Ë Ç
Ç
Ì Ë ¸
½
ü
½
ƺ
Ã
º
Ã
Å
Ä´
ü
¿À
¾²
º½
¼²
»
·
°
°
¹
¶
®
¶®
º ®
° ´
¸
·
±
±
±
·
·
¹
Ì Ë ¸
Í
Ë Í
·
®
¶®
¯
®
¶
´³
´ ³ µ
²
° ¾
°
µ
±
°
°
°
²
·
×
ÕÖ
±
Ç
Ô
Ô
Ó
ÒÓ
Î
Î
Î
Á
ß
º
Ã
Æ ¶
´
ü
Â
²
²
Ñ
Ð
Ð
´ ³
Ã
Å
»
Ú ¶
º Ý
Ã
Æ ¶
´
ü
»¼
Ú ¶
Ý
Ú Ü
Ã
ÃÚ
º
º
Ã
Ã
ÂÁ
¿À
Æ ¶
´
ü
º Â
Ñ
Ã
¶
Æ ¶
´
ü
¿À
×
¯
¯
®
B.1
×
Toward Seamless Local Networking Appendices
howl-0.9.6-repserv.diff
Yoann Aubineau
2 Ã ¾
ûÅ
Ô
Ô
Ñ
×
Ð
Ð
Õ
Õ
1
ÒÓ
ÒÓ
±
±
±
±
±
µ
128 °
°
²
±
°
µ
°
Î Ê
Ô
·
·
· ·
·
·
·
·
· ·
·
·
-
é
-
.
á
é
"
ë
æ
è
í
í
í
æ
·
õ
/
ê õ
ë
èð
í
ë
·
·
åä
ã
â
òâ
ç õ
î
æ
æ
í ó
æë
ð ò
·
Ê
Ô
×
ð õ
·
®
·
Î
Û
Ã
º
º
·
þ
Ã
º
º
Ã
Å´
Ã
º
®
·
¯
%
û
·
Ã
ÛÂ
Ã0
º
·
û
´
¯
®
·
³
®
¶®
¯
¯
®
·
¹
Í
Ï ¹
Ç Ë Ç
Í Ë ¸ Ì
Ê Ë ¸ Ì
· ·
Ç
·
°
·É
Ç
·É
È· È·
Á
Á
·
±
±
ü
½
¿À
²
ÂÁ
¿À
¾²
²
¼²
Ç
³
®
ƺ
Ã
º
Ã
Å
Ä´
ü
º½
»
·
Á
Á
¹
¶
º ®
° ´
Ç
¿À
²
¶®
¯
®
±
¸
·
Ë Í
ü
½
ƺ
Ã
º
Ã
Å
Ä´
ü
ÂÁ
¿À
¾ ²
º½
¼ ²
´
¹
¸
·
¶
² ´ ³
²
° ¾
°
±
°
°
°
´ ³
Î
Î
Î Ð
Ð
Ô
Ô
Ô
Ô
Õ
ã
â
ä
"
ä
ê
,
,
ãô
Ó
æ
æë
æ
í
æ
å
ä
é
õ
õ
ç õ
æ
* õ +
èë
æ
å
(
ð õ
)æ
ø
×
Ô
Ñ
åä
-
õ
é
-
.
á
é
"
ë
æ
è
í
í
æ
í
/
ê õ
ë
èð
í
ë
ç õ
î
æ
ã
â
Ô
Ô
Ô
Ô
Ñ
Õ
ã
â
ä
"
ä
,
,
ãô
Ó
æ
òâ
í ó
æë
ð ò
ð õ
æ
* õ +
èë
æ
å
(
ð õ
)æ
ø
¾ ¿À
þ
þ
þ
þ
þ
þ
þ
þ
°
±
Ã
Â
Û
Û
Û
®
¿À
Á
®
º
º
´
ý
Ã
º
Ä´
¼
Û
ÛÂ
Û
Û
Û
´ ³
Å
Ú
¾
´
Ã
Ä
ý Û
Ã
¾
ÅÚ
Ã
'¼
º
ý
´
º
»
Ã
½
ƺ
Ã
Û
Û
®
³
¾
Û
¿À Á
³
µ ®
Ã
½
ƺ º Á
Ã
Û
Û
¼
Ã
º
Ã
¼
» ®
Ã
Ã
¼
» ®
º
% & Á
Þ
Â
²
² º
Ã
×
$
ë
æ
æë
æ
ø
ê
æ
í
æ
ã
â
å
ä
ä
é
õ
õ
ç õ
×
×
#
ê
ó
õ
ì
æ
æë
æ
í
æ
î å
ä
"
é
í é
èð
í
ë
õ
õ
õ
ç õ
î
æ
åä
ã
âá
!
ê
ã
â
å
ä
ä
é
æ
ç é
í ó
æ
æë
æ
í
í é
æ
îç
×
õ
õ
ç õ
ì
ð õ
×
×
ø
ó
ó
õ
õ
èë
æ
í
é
æ
ö õ ÷
õ
æ
ë
ç õ
æ
æë
ç
æ
æ
øð
ê
â
ð õ
æ
×
×
þ
®
Û
Å
Ú
¾ ®
´
¼
´ ³
Ã
¾
Ú
Å À
Ú
¾
´ ¿
Å
Ã
Ä
Ä
ú
þ
Û
Á
ÀÁ
¿À
®
Û
Û
¼
´
Å
¼
®
´ ³
»
Å
º ®
Ã
¾
Ú
¾
º´
à Ý
¾
Ú
Å À
Ú
¾
´ ¿
Ã
Ú
Ô
Ô
Ñ
×
Ð
Ð
Ð
Ð
Ò
ÒÓ
Ø
Õ
Õ
Õ
Þ
¾
º
ý
´
Û
Û
ÀÁ
¿À
Toward Seamless Local Networking Appendices
Yoann Aubineau
Ô
è
æç
í
é
åé
129
å
â
å
å
Õ
ç
èð
C
èë
æ
æ å
øë
è
æç
ç
èð
ë
ç
èð
C
èë
æ
æ å
øë
è
æç
ç
èð
í
í
èë
æ
æ å
øë
ø
ò
ä
ã
â
õ
æð
è
è
é
é
Ô ñ
Ô
Ô
ñ
ëæ
í
í
í
ë
ð
í
æ
,
(
(
òâ
"
ó
ó
í ó
æë
ð ò
ç
ç
í é
ð
õ
ø
×
ó
õ
Ç
Ô
×
Ð
Ð
Õ
Õ
Ö
1
Ò
%
Þ
ý
Û
Û®
Û
¿À
Å
Ú
¾
´ ¿
¾
ż
´
½
º
ê æ
í
ç
èë
æ
ë
æç
è
æç
ë
è
æ
øë
9
ø
ë
ü
¾
Ú
Á
AB
®
Ú ³
½
ż
´
½
½
à À ç
Ê
º
º
ÚÛ
Ú ¿
à Â
¾
Ú Á
Å
º
Ô
Ò
ð
þ
º Ã û Û
Õ
ÚÛ
¼
Ä
â
å
õ
Ñ
Ð
Ð
øë
æ
ë
í
í
åé
ò
æ å
øë
è
æç
í
æð
èë
æ
í
×
æ
æ
í
ð
æ
í
ç
ä æ
ã
â
í
×
è
=
ø
ë
×
õ
=
ñ
ë
×
å
=
ñ
æ
; ó
÷ ð õ
×
×
ø
; ó
ð õ ÷
æ
×
Ô
è
Û
¼Û
Ã
º
Ã
Ê ·
Ù
®
Ú
Ä
Ú
âá
é
é
æ
í
æ
èë
å
,
(
(
"
é
ó
é
í ó
æ
í
õ
ð õ
î
èë
ë
ë
ñ
æ
ë
í
æ
èë
æ
æ
èë
æ
@
(
!
!
ä
åä
ã
âá
(
æ
ë
ë
ë
ë
èë
æ
æ
í
>?æ
ñ
å
é
"
ä
@
Ô
Ñ
â
ä
Ô
ñ
>
>
Ô
Ô
Ô
Ô
ñ
å
ø
ø
,
,
ãô
ã
â
(
([
å
ä
Ô
Ô
Ô
Ô
ñ
I
æë
!
,
,
ãô
ã
â
Ñ
å
æ å
øë
è
æç
ä
ä
á
.
é
é
õ
æ ø
ã
â
í ó
"
ä
>
×
í ó
æë
ð ò
I
!
í
í
æ
æë
æ
ë
ë
ç
èë
æ
æ å
ê
ø
ç
á
.
é
é
õ
øë
è
æç
å
ä
ö õ
ð
ë
ä
æ ø
ã
( æ ô
ç
í
í
æ
æë
æ
ö õ
ð
æ ô
(
èë
åä æ
åä
"
ê
ø
ñ
èë
æ
âá ã
×
ã
âá
×
#
æ
ç é
æ
×
×
$
Ô
Ô
ë
ç
í
í
æ
æë
æ
ä
á
.
é
é
õ
ö õ
ð
æ ô
(
åä
"
ê
ø
ñ
èë
æ
ã
âá
>
>
>
Ô
Ô
Ô
Ô
Ô
Ñ
ø
ñ
å
ã
â
I
,
,
ãô
ã
â
(
([
å
å
õ
"
ë
ç
í
í
æ
æë
á
.
é
é
õ
>
>
>
Ô
Ô
Ô
Ñ
ñ
å
ã
â
I
æë
!
ä
ä
,
,
ãô
ã
â
Ô
Ô
Ô
Ñ
æ
ñ
å
,
,
ãô
ã
â
æ ?
(
ã
âá
òâ
æ
âá
(å
-
(
ã
âá
òâ
æ
Ô
ê
ç õ
æ
( >
í ó
Ô
ñ
ê
ñ
åä
×
ä
!
ä
ä
èë
æ
ã
âá
í ó
æë
ð ò
ë
ç
èë
æ
æ å
øë
è
æç
ø
æ
> æ ?
>
( >
åä
"
ê
ñ
èë
æ
ã
âá
Ñ
Ô
Ô
ë
ç
í
í
æ
æë
æ
ä
á
.
é
é
õ
ö õ
ð
>
( > æ ô
Ô
æ
â
ñ
Ô
Ô
ø
ø
å
ã
I
,
,
ãô
ã
â
(
([
å
å
ä
Ô
ñ
ä
á
.
é
é
õ
>
Ô
Ô
Ô
Ñ
ñ
å
I
æë
!
,
,
ãô
ã
â
æ ?
>
( >
åä
"
ê
ñ
èë
æ
ã
âá
Ô
Ô
ë
ç
í
í
æ
æë
èë
ä
á
.
é
é
õ
ç õ
æ
Ô
Ô
Ô
Ñ
Ñ
ñ
Ô
Ô
ø
å
ã
â
I
,
,
ãô
ã
â
æ ?
>
( >
åä
"
ê
ñ
ê
ñ
èë
æ
ã
âá
Ã
à Û
Ú
Ã
Å
³
ü
û ¶
Æ
Ú
¼
´Û
¼Û
ý
´
º
´
ý
Û
³
¶®
Û®
û ú
Z
Ú
Å ®
L
²
²
Toward Seamless Local Networking Appendices
Yoann Aubineau
±
®
%
¾
Ã
½
Ã
º
Ã
¼ Û
Á
¶
¶
¶
®
®
®
134
»
Á
O³
¿
¿À
O
=
=
ñ
ê
ø
ø
æ
ç
ç
î
í
èí
æ
î
èë
æ
Ã
Ú
½
´
¼
¼
Ú
Û
®
¼
³
Ã
¾
ÅÚ
Å
Ã
» ®
Ú
Û
ñ
.
é
%
±
õ
û
"
é
é
é
æ
í
æ
ë
Û
¿À
Û
¯
±
±
±
°
°
²
Û
°
· Ë Ê
Î Ê
Ï
·
· ·
·
·
Å´
Å
ûº
µ
·
·
·
·
·
·
·
·
·
· ·
·
·
Å
Ú
½ ·
´
¼
Ã
·
µ
Æ
´
Ú
º
Ã
Å
Ä´
¼
´
ýÄ
´
½
Ú
ü
Ã
Ê
Ã
º¼
·
Î
¶
Û
Û
®
³®
¯
Æ ¶
û
´
Ã
ºÚ
»
·
þ
ÃÚ
º
Ú
Ã
ý
µ
·
¸
Í
³
¶®
¶®
Û
%
±
°
Ã
º
Ã
¼
Û
Û
Û
Û
´Û
¼
ºÚ
À
' P
º
¼
Ã
ü
º
¼
Ã
½
ƺ
û
Á
Á
®
» ®
Ã
Â
¿À
² ¾
² Ý
²
²
ý ¶
Ã
ÅÚ
û Û
º
´
·
¹
Ê Ë ¸ Ì
Í Ë ¸ Ì
·
¸
Ç ·
°
5· Ç
·É
È·
L
ú
Ù
Á
È·
Û
¿À
¾²
ÂÁ
¿À
¾²
²
¼²
·
Å
Ã
º
Ã
Å
Ä´
ü
º½
»
·
±
±
¶
º ®
° ´
¹
¸
·
Ç
³
¶®
¶®
¯
®
±
±
°
µ
² ´ ³
Ç
L
ú
Ù
Á
Ë Í
Å
Ã
¿À
¾²
º
Ã
Å
Ä´
ü
ÂÁ
¿À
¾ ²
º½
¼ ²
´
° ¾
¹
¸
·
¶
±
èð
æ
ä
õ
I
"
)æ
ê
æë
>
Ô
Ô
=
=
Ô
Ô
Ô
Ñ
Ñ
Ñ
Ñ
Ñ
ê
ñ
ø
ø
ñ
ø
I
I
ã
â
(
ã
(
ä
ä
ä
.
.
(å
-
å
Iå
í
æ
æë
ë
ç
æ
I
òâ
ä
é
í ó
ëæ
ð ò
æ
ë
æç
ë
ë
ç
æ
ç é
í ó
æç
ë
ç
æç
ë
ç
×
¼
º
ë
ç
á
.
Ð
Ð
Õ
°
µ
² ´ ³
¯
¯
®
é
Û®
³
¶®
Ô
Ò
±
±
°
°
°
Å
´
ºÚ
Ú ¶
ý
Å
º ®
Ä
Å
¼
L
ú
Ù
Á
×Ö
Ò
Î
Î
Î
í
Æ
³
Û
¿À
Ô
Õ
Ñ Ö
Ð
Ð
´
¾
Ã
º
Å
Ã
¾
Ã
¯®
ý