Zero%20Configuration%20Networking - PowerPoint PPT Presentation

About This Presentation
Title:

Zero%20Configuration%20Networking

Description:

Incorporated in iTunes for Windows. Recently Released under APSL. For Windows, POSIX platforms, Java. Howl. Open Source from Porchdog Software. Mostly BSD Licensed ... – PowerPoint PPT presentation

Number of Views:156
Avg rating:3.0/5.0
Slides: 32
Provided by: sander3
Learn more at: http://people.apache.org
Category:

less

Transcript and Presenter's Notes

Title: Zero%20Configuration%20Networking


1
Zero Configuration Networking
  • Sander Temme
  • ltsander_at_temme.netgt

2
Agenda
  • What is Zero Configuration Networking
  • Demonstration
  • Description of Protocols
  • Available Implementations
  • Usage Sample

3
Agenda
  • What is Zero Configuration Networking
  • Demonstration
  • Description of Protocols
  • Available Implementations
  • Usage Sample

4
Agenda
  • What is Zero Configuration Networking
  • Origins
  • What Problems does it Solve?
  • What Problems does it Not Solve?

5
Origins
6
Origins IETF
  • Zero Configuration Working Group
  • Established September 1999
  • Charter fragment

The goal of the Zero Configuration Networking
(ZEROCONF) Working Group is to enable networking
in the absence of configuration and
administration.
7
Problems Solved
  • Automatic IP Address Configuration
  • Server-free Hostname Resolution
  • Directory-less Service Discovery

8
Problems Not Solved
  • Security
  • Authenticity
  • Access Control
  • Wide Area Networks (for now)

9
Applications
  • Printing
  • Zero Configuration Chat
  • Music Sharing and Streaming (iTunes)
  • Tivo streaming photos, music to TV
  • Gaming (NASCAR Racing 2002)
  • Many devices without interface

10
Agenda
  • What is Zero Configuration Networking
  • Demonstration
  • Description of Protocols
  • Available Implementations
  • Usage Sample

11
Agenda
  • What is Zero Configuration Networking
  • Demonstration
  • Description of Protocols
  • Available Implementations
  • Usage Sample

12
IP Address Autoconfiguraton
  • In Absence of DHCP Server
  • Link-local Addressing
  • Solved by IPv6
  • IPv4 pick random in 169.254/16
  • Address Defense
  • Multihomed systems only one interface
  • Supported on Mac and Windows

13
Link-local Addressing
Printer
169.254.1.219
169.254.10.29
Network
169.254.4.51
169.254.4.51
14
Hostname Resolution
  • In Absence of DNS Server
  • Multicast DNS
  • DNS-like protocol
  • Every host has responder
  • Listens on 224.0.0.251 and/or ff02fb
  • Hostnames picked by user
  • Hostname defense

15
mDNS
PC_Bill
Printer
169.254.1.219
169.254.10.29
lj21569478
Network
Mac_Steve
169.254.4.51
PC_Larry
169.254.4.51
16
Service Discovery
  • Human-readable Service Names
  • Runs on mDNS
  • Query for Service Type returns list
  • Long-lived queries
  • Service Name resolves to
  • hostname
  • port, add. info
  • IP address

17
DNS-SD
Laserjet, Closet Under the Stairs
PC_Bill
Printer
169.254.1.219
169.254.10.29
Bills Files
lj21569478
Network
Mac_Steve
169.254.4.51
PC_Larry
169.254.4.51
Steves Movies
Larrys Tunes
18
Agenda
  • What is Zero Configuration Networking
  • Demonstration
  • Description of Protocols
  • Available Implementations
  • Usage Sample

19
Bonjour
  • First implementation on market
  • Apple Trademark
  • Introduced in Mac OS X 10.2
  • Incorporated in iTunes for Windows
  • Recently Released under APSL
  • For Windows, POSIX platforms, Java

20
Howl
  • Open Source from Porchdog Software
  • Mostly BSD Licensed
  • Windows, FreeBSD, Linux, MacOSX
  • C, .NET API

21
jmdns
  • Pure Java mDNSResponder
  • LGPL
  • Last Release 11/2003 check CVS

22
Agenda
  • What is Zero Configuration Networking
  • Demonstration
  • Description of Protocols
  • Available Implementations
  • Usage Sample

23
Java Example SimpleChat
  • 179 non-comment LOC
  • Listen on ephemeral port
  • Advertise on mDNS
  • Listen for other instance on mDNS
  • Put found instances in pop-up menu
  • Send chat messages to selected partner

24
Bonjour in Java
  • Factory Class DNSSD
  • Interfaces define callbacks

BrowseListener Service Browsing
ResolveListener Name Resolution
RegisterListener Service Registration
QueryListener DNS Record Resolution
DomainListener Domain Resolution
25
Example Browsing
  • Call Browse method
  • pass in class that implements BrowseListener
  • serviceFound() when service appears
  • serviceLost() when service goes away
  • Interface methods manipulate pop-up menu

26
Demo
27
Conclusion
  • Easy to use
  • Cross-platform
  • Dynamic
  • Configuration-free

28
More Information
  • http//developer.apple.com/networking/bonjour/
  • Developer Info
  • http//www.apple.com/macosx/features/bonjour/
  • Marketing
  • http//www.zeroconf.org/ (IETF site)
  • http//www.dotlocal.org/ (Kinda stale)
  • http//www.porchdogsoft.com/ (Howl)
  • http//www.lists.apple.com/mailman/listinfo/bonjou
    r-dev

29
More Info LL IP Addressing
  • Generally happens after DHCP times out
  • Host picks Random Address
  • Sends out ARP Request for Address
  • If no Answer, Assumes Address
  • If Answer, Host Starts Over

30
More Info mDNS
  • DNS-like Protocol
  • All Hosts Listen on Multicast 224.0.0.251, port
    5353
  • All Hosts authoritative for .local. domain
  • Short-lived Hostname Cache
  • Introductory Unsollicited Response
  • Goodbye Packet (TTL 0)

31
More Info DNS-SD
  • Uses DNS PTR Records
  • PTR of form Service Name._http._tcp.local.
  • Free-form Service Name
  • Enumeration browsing for _http._tcp.local. gives
    list of web service instances
  • Resolving Instance Name yields hostname, TXT
    record with port info, etc.
Write a Comment
User Comments (0)
About PowerShow.com