以太网地址转换协议或转换网络协议地址

【以太网地址转换协议或转换网络协议地址】1.摘要
通过路由机制,协议P在发送主机S上的实现决定了S需要传输到目标主机T,而T连
在和S相连的10兆以太网电缆上 。实际传输以太网包必须产生一个48比特以太网地址 。主
机的协议P地址并不总是和相应的以太网地址兼容(长度或值不同) 。现在这个协议答应动态
地发布
信息,这些信息可用来构造转换协议P地址空间内的地址A为48比特以太网地址的一张表 。
答应在非10兆以太网硬件使用的协议已经被综合总结,无线电网络就是这种硬件 。
[这篇RFC的目的是提出一种转换协议地址(例如IP地址)为本地网络地址(例如以太网地
址)的方法 。这个问题现在受到ARPAInternet社区的普遍关注,这里提出的方法仅供读者
参考,并不是Internet标准的描述 。]
2.说明
这个协议起初是为DEC/Intel/Xerox的10兆以太网设计的,现在已答应用在其它类型的
网络上 。许多讨论将直接针对10兆以太网 。总之,合适的话将遵循以太网的特定讨论 。
DODInternet协议将作为Internet的规范被参考 。
这里用到的数字,在以太网标准中是高位字节在前的,这和例如PDP-11,VAX等机器的
字节编址相反,因此对下面描述的操作字段(ar$op)必须非凡小心 。
需要处理硬件名字空间已达成一致 。直到官方认可,请求可发送到
DavidC.Plummer
Symbolics,Inc.
243VassarStreet
Cambridge,Massachusetts02139
或发邮件到DCP@MIT-MC 。
3.问题
世界总的来说是杂乱的,同时网络增加了这种杂乱 。几乎在网络架构的每一层,都有
几个潜在的协议可以使用 。例如在高一点的层次有用于远程登录的TELNET和SUPDUP 。低一
点的有CHAOS,DODTCP,Xerox,BSP或DECnet等可靠字节流协议 。甚至在与硬件较接近的
逻辑传输层也有CHAOS,DODInternet,XeroXPUP,DECnet等协议 。10兆以太网通过使用
以太网包头中的类型字段来使这些协议(而且更多)能在一根电缆上共存 。然而,10兆以太
网在物理电缆上需要48比特地址,而大多数协议地址不是48比特,它们并不需要与硬件的
48比特以太网地址有什么关系 。例如CHAOS的地址是16比特,DODInternet的地址是32
比特,XeroxPUP的地址是8比特 。这就需要一个协议来动态地区分一个<协议,地址>对和
一个48比特以太网地址的对应关系 。
4.动机
随着更多的制造商提供遵循DEC,Intel和Xerox发布的规范的接口产品,10兆以太网
的使用也在增加 。随着使用的增加,为这个接口开发的软件也越来越多 。有两个选择:(1)
每个实现者用自己的方法做某种形式的地址转换;(2)每个实现者使用统一标准,这样代码
可以不加修改的移植到其它系统 。这个建议试图建立一个标准 。
5.定义
下面的定义是作为对填在以太网包头的类型字段的值的参考 。
ether_type$XEROX_PUP,
ether_type$DOD_INTERNET,
ether_type$CHAOS,
一个新的值
ether_type$ADDRESS_RESOLUTION
再定义以下的值(后面讨论)
ares_op$REQUEST(=1,高位字节在前)和
ares_op$REPLY(=2),和
ares_hrd$Ethernet(=1).
6.包格式
为了把<协议,地址>对映射到48比特以太网地址用于传输,需要一个体现地址转换协
议的包格式 。包格式如下所示 。
以太网传输层(并不是用户需要访问的):
48比特:目的以太网地址
48比特:源以太网地址
16比特:协议类型=ether_type$ADDRESS_RESOLUTION
以太网包数据:
16比特:(ar$hrd)硬件地址空间(例如:Ethernet,PacketRadioNet 。)

推荐阅读