Presentation is loading. Please wait.

Presentation is loading. Please wait.

Naming Examples UUID (universal unique ID) – 128 bit numbers, locally generated, guaranteed globally unique Uniform Resource Identifier (URI) URL (uniform.

Similar presentations


Presentation on theme: "Naming Examples UUID (universal unique ID) – 128 bit numbers, locally generated, guaranteed globally unique Uniform Resource Identifier (URI) URL (uniform."— Presentation transcript:

1 Naming Examples UUID (universal unique ID) – 128 bit numbers, locally generated, guaranteed globally unique Uniform Resource Identifier (URI) URL (uniform resource locator) – location dependent E.g., Name resolution via DNS (Domain Name Service): URI  IP URN (uniform resource names) – location independent E.g., urn:isbn:

2 Naming Principles Network entities (by Saltzer) Naming issues:
Services (and data) Hosts (endpoints) Network attachment points Paths (routing paths) Naming issues: Mobility Multi-homing Replication Security Scalability

3 Host Identity Protocol (HIP)
128-bit host identity tag (HIT) Process Process Transport <IPaddr, port> Transport <HIT, port> IP Layer HIP Layer <IPaddr> <HIT> IP Layer <IPaddr> HIT replaces IP address as a name of a system

4 How It Works? Client app Client app DNS library DNS Transport
HIT DNS request Client app Client app DNS library DNS DNS reply = pubkey (P) send(HIT) HIT=hash(P) IPaddr Transport Transport HIP daemon 4-way authentication HIP daemon HIT HIP Layer IPaddr, P HIP layer send(IPaddr) IPsec IPsec

5 Layered Naming Architecture (LNA)
Process Process SID↔EID <SID> Transport <IPaddr, port> Transport <EID, port> IP Layer EID↔IP <IPaddr> <EID> IP Layer <IPaddr> Should name each individually: Service identifiers (SIDs) name services/data Endpoint identifiers (EIDs) name hosts IP addresses name attachment points Ignore paths (router involvement)

6 How It Works? “DNS” Client app Client app SID↔EID SID↔EID LNA daemon
DNS request “DNS” Client app Client app DNS reply = sid send(sid) SID↔EID eid = get(sid) SID↔EID put(sid, eid) put(eid, IP) LNA daemon DHT send(eid) Transport IP = get(eid) Transport send(eid) EID↔IP EID↔IP Intermediary (IPi) send(IPi) IP IP

7 Take Away Don’t bind to lower-level IDs prematurely
Host mobility and renumbering (HIP) Service and data migration Resolution (binding) of name need not point to object itself, but can point to its delegate Resolution can point to intermediaries who process packets on behalf of the named target Examples HIP: one layer; IDs identify machines LNA: two layers EIDs identify machines SIDs identify everything else

8 UIA Naming Flat (personal group level) Resolution Routing:
User can put “a user friendly” name to each device iPod.Alice, Camera.Bob Each “personal” device has a unique ID (EID) Resolution Mapping (user name  EID via log records) is disseminated whenever connectivity is available Local resolution (assuming full replication) Routing: Routing packets to the EID node?? Source routing using a P2P overlay network

9 Service Discovery Lots of services dispersed across the network
How to find who has what services? Example systems: Jini, JXTA, SLP, UPnP, Bonjour Salutation, INS, Twine, etc..

10 Directory Information

11 Directory Architecture

12 Query Expressiveness

13 Query Routing Application level routing Network level communication
DHT-based Twine, Chord, CAN, Pastry Loosely-consistent DHT JXTA, Freenet Flooding Gnutella Network level communication Unicast communication with a Central server Web-services, Napster, INS, Jini, SLP Multicast communication Jini, SLP, UPnP


Download ppt "Naming Examples UUID (universal unique ID) – 128 bit numbers, locally generated, guaranteed globally unique Uniform Resource Identifier (URI) URL (uniform."

Similar presentations


Ads by Google