[e2e] use of MAC addresses

Joe Touch touch at ISI.EDU
Thu Apr 13 09:05:52 PDT 2006

Fahad Dogar wrote:
> On 4/12/06, Joe Touch <touch at isi.edu> wrote:
>> Fahad Dogar wrote:
>>> I understand why IP addresses (which are hierarchical in nature) are
>>> needed but can't seem to appreciate the use of MAC addresses, in
>>> addition to using IP addresses.
>> That's for the level of indirection Ted was noting.
>>> Practically I can understand that they
>>> are being used for legacy purposes and a move towards using IP
>>> addresses as layer 2 addresses would require changes in ethernet
>>> switches etc.
>> Another reason is that ethernet switches are  simpler to implement than
>>  (IP) routers. A final one is to limit broadcast; right now, broadcast
>> pervades (most) ethernet switches, but is halted by IP routers (even
>> subnet-directed broadcast is defaulted that way). It's not clear how to
>> allow broadcast to go more than one hop and control flooding (with
>> all-1's) or defeat DOS attacks (subnet broadcast).
> By using IP addresses for layer 2 routing, I am not implying the
> replacement of ethernet switches with routers. The ethernet protocol
> remains the same but the MAC address of every station is the same as
> its IP address. 

Please explain how ARP and DHCP would then work. Or router discovery and
host address assignment in IPv6.

The ethernet address is required to determine the IP address in both
cases. Use of the IP address as a MAC address:
	- creates a circularity in the above protocols, i.e.,	
	they no longer work

	- enables hosts to collide on MAC addresses; spanning
	tree algorithms don't react well to having the same
	address attached at multiple points in the tree

	- defeats the use of different MAC addresses for the same
	IP address, the so-called "weak host" model (see RFC1122)


So these addresses have different interpretation (and
> subsequent forwarding) in a LAN compared to routing at layer 3. So we
> can block broadcast at layer 3 (routers) and allow broadcost at layer
> 2 (ethernet switches). Again, I am asking purely from the
> functionality point of view. It may not be practical to do such a
> thing.
>>> But I am interested in knowing whether, in theory, we
>>> would be restricted in functionality if we use IP addresses for layer
>>> 2 addressing. Suppose we were to redesign layer 2 technologies now,
>>> can we use IP addresses in place of MAC addresses. With IPv6 I can't
>>> even see any constraint on the address space.
>> IPv6 addresses may seem large at first, but given how they're
>> hierarchically delegated and managed, they're not all that big.
>> Joe
>>> Thanks,
>>> Fahad
>>> On 4/12/06, Joe Touch <touch at isi.edu> wrote:
>>>> Ted Faber wrote:
>>>>> On Tue, Apr 11, 2006 at 12:20:47AM +0500, Fahad Dogar wrote:
>>>>>> Hi all,
>>>>>> I have a very basic question: in theory, can we NOW use IP addresses
>>>>>> in place of MAC addresses.
>>>>> Short answer: "yes," with an "if."
>>>>> Long answer: "no," with a "but."
>>>>> IP addresses are (in principle) globally routable.
>>>>                                 ^
>>>>                              easily
>>>> You can route on MAC addresses too, but being flat that means core
>>>> routing tables would need to be flooded with everyone's MAC address.
>>>> Look at the size of your routing table. Then look at the size of your
>>>> ARP table. If your routing table has anything except default addresses,
>>>> consider that ARP table size multipled by the size of the number of
>>>> subnets at each other route entry.
>>>> Joe
>>>>  Having a locally
>>>>> routable namespace under your link layer's complete control may be a
>>>>> useful thing.
>>>>> It's rare in the world of computers that removing a layer of indirection
>>>>> makes your system more versatile.  There are quite a few tricks that
>>>>> take advantage of the layer of indirection that a link layer address
>>>>> provides to give faster response on a subnet basis, simple redundancy,
>>>>> etc.
>>>>> Of course you could get rid of them (assuming you're willing to live in
>>>>> the smaller, more constained IP address space).  An identifier's an
>>>>> identifier.
>>>>> Why would you want to?

More information about the end2end-interest mailing list