版权归原作者所有,如有侵权,请联系我们

[科普中国]-ATM上的IP协议

科学百科
原创
科学百科为用户提供权威科普内容,打造知识科普阵地
收藏

简介

在ATM-LAN中,ATM网络可看作一个单一的(通常是本地的)物理网络,如同其它网络一样,人们使用路由器连接所有异构网络,而TCP/IP允许ATM网络上的一组计算机象一个独立的局域网一样工作,这样的一组计算机被叫做LIS(Logical IP Subnet),在一个LIS内的计算机共享一个IP网络地址(IP子网地址),LIS内部的计算机可以互相直接通信,但是当一个LIS内的计算机要和其它的LIS或网络中的计算机通信时必须经过两个互连的LIS路由器,很明显,LIS的特性与传统IP子网相似。类似以太网,IP数据包在ATM网络上传输也必须进行IP地址绑定,ATM给每一个连接的计算机分配ATM物理地址,当建立虚连接时必须使用这个物理地址,但由于ATM硬件不支持广播,所以,IP无法使用传统的ARP将其地址绑定到ATM地址。在ATM网络中,每一个LIS配置至少一个ATM ARP SERVER 以完成地址绑定工作1。

IPoA工作原理IPoA的基本原理是将lP数据包在ATM层全部封装为ATM信元,以ATM信元形式在信道中传输。当网络中的交换机接收到一个IP数据包时,它首先根据IP数据包的IP地址通过某种机制进行路由地址处理,按路由转发。随后,按已计算的路由在ATM网上建立虚电路(VC)。以后的IP数据包将在此虚电路VC上以直通(Cut_Through)方式传输而下载经过路由器,从而有效地解决IP的路由器的瓶颈问题,并将IP包的转发速度提高到交换速度2。

IPoA功能IPOA的主要功能有两个:地址解析和数据封装1。

地址解析就是完成地址绑定功能。对于PVC(Permanent Virtual Circuit)来说,因为PVC是由管理员手工配置的,因此一个主机可能只知道PVC的VPI/VCI标识,而不知道远地主机的IP地址和ATM地址,这就需要IP解析机制能够识别连接在一条PVC上的远地计算机;对于SVC来说,地址解析更加复杂,需要两级地址解析过程。首先,当需要建立SVC时,必须把目的端的IP地址解析成ATM地址;其次,当在一条已有的SVC上传输数据包时,目的端的IP地址必须映射成SVC的VPI/VCI标识。

对于IP数据包的封装问题,目前有下面两种封装形式可以采用:

VC封装:一条VC用于传输一种特定的协议数据(如IP数据和ARP数据),传输效率很高;

协议封装:使用同一条VC传输多种协议数据,这样必须给数据加上类型字段,IPOA中使用缺省的LLC/SNAP封装标明数据类型信息。

IPoA工作过程整个系统的工作过程如下:首先是Client端的IPOA初始化过程,即Client加入LIS的过程,由Client端的IPOA高层发出初始化命令,向SERVER注册自身,注册成功后,Client变为”Operational”状态,意味着现在的Client可以接收/传输数据了。当主机要发送数据时,它使用通常的IP选路,以便找到适当的下一跳(next-hop)地址,然后把数据发送到相应的网络接口,网络接口软件必须解析出对应目的端的ATM地址,该地址有两种方法可以获得:

直接从Client端的解析表中查到;

通过发送ATMARP请求获得。

接下去用户可作两种选择:

假如有可利用的连接目的端的VCC,那么直接把数据发送给AAL5层,通过VCC传输出去;

假如(1)不满足,那就通过信令过程建立适合的链路,然后进行传输。(实际中的数据传输过程由于牵涉到QOS设置问题,所以要比上面的论述复杂一些。)当Client接收到AAL5的数据时,处理过程比较简单,只须简单地解除封装,根据协议数据类型交给相应模块处理即可。

除了数据传输的任务外,Client还要维护地址信息,包含定期更新SERVER上的地址信息和本地的地址信息。假如Client的地址信息不能被及时更新,那么此Client就会变成非可用状态,需要重新初始化后才能使用。

在Client传输数据时,它可能同时向许多不同的目的端发送和接收数据,因此必须同时维护多条连接。连接的管理发生在IP下面的网络接口软件中,该系统可以采用一个链表来实现此功能,链表中的每一数据项包含诸如链路的首/末端地址、使用状态、更新标志、更新时间、QOS信息和VCC等一条链路所必须的信息。

IPoA在 TCP/IP 协议栈中的位置ATM网络是面向连接的,TCP/IP只是将其作为象以太网一样的另一种物理网络来看待。从TCP/IP的协议体系结构来看,除了要建立虚连接之外,IPOA与网络接口层完成的功能类似,即完成IP地址到硬件地址(ATM地址)的映射过程,封装并发送输出的数据分组,接收输入的数据分组并将其发送到对应的模块。当然,除了以上功能之外,网络接口还负责与硬件通信(设备驱动程序也属于网络接口层)。

在OSI模型中,IPOA位于IP层以下,属网络接口层,其建立连接的工作通过RFC1755请求UNI3.1处理信令消息完成。