Inside clients don’t know (or need to know) anything about their own IP addresses IP functionality is superfluous Single broadcast domain bridging suffices MAC addresses provide both ▪ Global uniqueness ▪ Technology-independence Inside IP addresses are meaningless outside Name resolution (if any) can/should use MAC addresses
Requires that the user act as network administrator Choose: static addressing or DHCP? Network prefix? Where is my DHCP server(s)? Endpoints must allow configuration endpoints can be misconfigured E.g., someone changes host to a static IP address Now the user must also diagnose the problem! ▪ With inadequate tools ▪ No way to “RESET” the whole network!
Third option: “Ignore IP” Should be the default Force user to say “I know what I’m doing” to use any other option (static assignment or DHCP) Let endpoints use arbitrary IP addresses Local-scope addresses for uniqueness Transport demux still works Identify endpoints with MAC addresses Inside applications Ethernet was designed for this! Note: already happening in data centers
Rely on MAC addresses Establish identities/function of devices Switch based on MAC addresses Infer (some) intent from port numbers Partial prototype implementation “HomeRun” [Hasan, Edwards, Feamster, Calvert] Built on NOX Box platform Todo: mechanism for establishing identities/functions and getting to a “known good” state