apple bonjour

12

Click here to load reader

Upload: purvik-rana

Post on 25-Jun-2015

120 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Apple bonjour

Bonjour

1

Zero Configuration Networking

Page 2: Apple bonjour

Agenda

Why Bonjour?

What is Bonjour?

How it works?

How Bonjour reduce overhead?

Bonjour API Architecture

Bonjour Operation

Conclusion

2

Page 3: Apple bonjour

Why Bonjour?

Majority of Devices works on TCP/IP

One functionality was lost

Add device – connect it with others with little configuration

IP to work

Unique address (statically or dynamically assigned)

Most devices has to manually configured – lazy task – don’t know (don’t want to waste time)

Need simple way to discover services over IP network

Choose from the list – instead of going through knowing IP address and services

3

Page 4: Apple bonjour

What is Bonjour?

Apple’s Zero-Configuration networking IP – part of IETF

(Internet Engineering Task Force)

Allows a single network protocol for Service Providers –

application Programmers

No need of assign IP addresses, host names – simply

choose service which are available in the list

More Powerful for applications – automatic detect and

interect

4

Page 5: Apple bonjour

How it Works?

Proposed Solution

Addressing – allocating IP to host

Self assigned link local addressing – pool of addresses

IPV6 – reliable then IPV4

Naming – use Names instead of IP

mDNS – multicast queries (IP Multicast)

Include responder – mDNSResponder Daemon

Name to Address – unique name require (h/w manufactures or s/w

services)

5

Page 6: Apple bonjour

Cont…

Service Discovery – discover services over n/w – automatically

Discover service and list it out – named services + port numbers

Accomplished by ‘browsing’- mDNS query is sent out (type &

domain) – matching services replies – available to choose

Centric idea of network Services – n/w servers

Queries – according to the service needed – application holds service

instance names - concentrating on services rather then device

6

Page 7: Apple bonjour

How Bonjour reduce overhead?

Server Free Tasks – avoid unnecessary ‘chattiness’

Caching

Maintain records for requested services

multicastDNS responsible for this – free app developer

Suppression of Duplicate Responses

Host is about to respond service which is already responded –

leave it – free app developer

Exponential Back-off and Service Announcement

Not continuously request – on increase periodic interval

New service starts on n/w – announce t presense

7

Page 8: Apple bonjour

Bonjour API Architecture

8

NSNet Service , NSNet ServiceBrowser

Part of Foundation Framework

Object oriented abstraction for SD – Publication

CFNetServices (Provide Core Foundation )

Style types and Functions

for managing Services

DNS-SD

Intermediate layer between your s/w & multicast DNS

responder

Page 9: Apple bonjour

Bonjour Operation

3 fundamental operation

Publication – advertising/register a service

3 DNS records are recorded

SRV (Service) Record – maps the name of the Service (Host Name, Port

Number)

PTR (Pointer) Records – maps type of service with instance of type of

service

TXT (Text) Records – additional information of Service Instance

Discovery – browsing for available services

Perform query for PTR records – match with DNS records

(Publication Operation)

9

Page 10: Apple bonjour

Cont…

Resolution – translating service in detail in the following

sections

Take place only once in a while

Saves the Service instance name for future – eliminating precious two

operation

Perform DNS lookup for SRV Records with the name of the Service

10

Page 11: Apple bonjour

Conclusion

11

Enhancing this kind of functionality in networking let you

discover the more services relay in the network and

increase the performance eliminating the overhead.

Thank You…

Page 12: Apple bonjour

References

12

https://developer.apple.com/library/mac/documentation/c

ocoa/conceptual/NetServices/Articles/programming.html#

//apple_ref/doc/uid/TP40002459-SW1

https://developer.apple.com/library/mac/documentation/c

ocoa/conceptual/NetServices/Articles/NetServicesArchite

cture.html#//apple_ref/doc/uid/20001074-96838

http://www.citeworld.com/mobile/20563/apples-

bonjourairplay-poses-network-challenges-it