ATM部分接通 本发明涉及网络上的数据传输。
最传统的网络是电话网络。ISDN的到来极大地提高了电话技术的能力,尤其是提供给用户的带宽。通信网络如电话、FR(帧中继)和X.25众所周知是“面向连接的”。这样在经由一面向连接的网络发送信息之前,一用户必须被分配一规定的或所需的电路。一旦这些完成,用户可以在两个主计算机之间经由网络发送和接收信息。
与宽带电话技术相呼应,众所周知的“非连接”网络有了非常实质性的增长。非连接网络包括局域网,特别是最重要的非连接网络是Internet。
在非连接网络中,在经由网络发送信息之前用户不是必须要获得和所期望的目的之间的连接。这是因为信息以数据报的形式被发送,数据报包括中间节点用于寻路由的头部域信息。有很多数据网络协议都是为非连接网络数据报而设计的。它们包括Internet协议(IP)、SNA(系统网络体系结构)、Appletalk和IPX以及所有以数据报形式传送数据的协议。这样的数据报在此被称作为非连接数据报。
除了上述两种基本类型的网络之外,由于光纤的引入而到来的宽带网络实质性地增长了可在电话线上传输的数据范围和特性。这样当一些用户满足于以恒定的位速率仅保持语音连接时,其他用户可能希望以可变化的位速率访问其他连接类型如视频和数据。这样用户具备了根据他们地需求从多种连接类型中选择的能力。众所周知的ATM(异步传输模式)网络就是为满足这种需求而开发的。在一个典型的ATM网络中,一个用户可以在多种可能的连接类型中选择,例如固定速率的语音链接,峰值为10M比特/秒且平均值为5M比特/秒的可变带宽链接,和峰值为20M比特/秒且平均值为8M比特/秒的第三种可变带宽链接。这些连接中类型中的第二种可用于高速数据传送,第三种可用于视频图象传输。
为了使用户获得的潜在带宽达到最大,通信工业已经开发了众所周知的虚拟通路(VP)网络。VP网络与已经描述的传统电话网络有两种不同。在一个VP网络中每个用户以不同连接类型被分配以适合于他设想需求的带宽,且ATM网络管理通过从网络中所有可用通路中选择路由来提供带宽。可以看出所有时间都向用户提供他可能需求的最大带宽是不经济的。相应地,在VP网络中分配给连接到该网络中用户的额定带宽总和远大于该网络的总带宽。
这样,由于它的多种服务能力,ATM网络提供了可能成为电话技术基础的高速技术。然而,ATM在支持Internet和其他LAN类型的网络中基于非连接数据报的通信时仍有困难。
根据本发明的一个方面,提供了一种经由网络以包结构(具有一系列包的形式)传输非连接数据报的方法,头部包括被映射到第一个包结构有效负载的非连接数据报的寻路由信息,且在网络的中间节点处非连接的寻路由功能被实现。
根据第二方面,为数据网络提供一交换节点,该交换节点包括:
一ATM转换器;
用于接收一非连接数据报且将该数据报转换成多个ATM信元(在其中非连接数据报中的头部信息被插入到该ATM信元结构中第一信元的有效负载)的装置;和,
用于检测非连接数据报头部域长度,且如果这些域的长度太大而不能包含在该ATM信元结构中第一信元的有效负载中,则产生一部分头部校验和并将这个校验和仅与非连接数据报的直到且包括目的地址的头部一起插入到第一个ATM信元的有效负载中的装置。
根据第三方面,为数据网络提供一交换节点,该交换节点包括:
一ATM转换器;
用于接收一非连接数据报且将该数据报转换成多个ATM信元(在其中非连接数据报中的头部信息被插入到该ATM信元结构中第一信元的有效负载)的装置;和,
用于检测非连接数据报头部域长度,且如果这些域的长度太大而不能包含在该ATM信元结构中第一信元的有效负载中,则产生一部分头部校验和并将这个校验和仅与非连接数据报的直到且包括目的地址的头部一起插入到第一个ATM信元的有效负载中的装置。
本发明也针对结合上文中说明的交换节点的数据网络。
为了本发明可以被更迅速地理解,根据实例和参考所附带的图,现在将描述本发明的一实施例。
图1示出了一典型的ATM网络;
图2示出了一典型的ATM信元;
图3是在ATM网络上传送IP的已知方法的框图;
图4是一个类似的框图,示出了在源和目的主机之间实现直接连接的方法;
图5是和图3与图4相类似的框图,示出了根据本发明将非连接数据报通信与ATM相结合的过程;
图6和7示出了分别用于IPv4和IPv6的协议;和
图8和9示出了根据本发明产生的ATM信元。
现在参考所附带的图1,它示出了一个常规ATM网络的框图。该ATM网络由以ATM转换器10到18的形式部分互连的交换节点网络组成。ATM网络中的通信由从网络中节点到节点传输的信元组成。在图1的网络中,转换器10、11、12、13、15、16、17和18也起接入转换器的作用。每个接入转换器被连接到一组将该转换连接到其他网络上或直接连接到客户设备上的接入线路上。为了描述,图1示出的转换17通过一条接入线路被连接到计算机22上,并由另一条接入线路连接到多路复用器24上。计算机22被提供以一块ATM卡,以使它能以ATM信元的形式传输和接收数据。多路复用器24能接收视频、数据和声音信号并将它们以多路复用的方式转换成ATM信元。同样,它能从转换器17处接收ATM信元并将它们转换成视频、数据和声音信号。典型地,该多路复用器24将位于ATM网络中用户的接入端。
正如那些精通于此技术的人所熟知的,当在ATM输入接口和ATM输出接口之间传输一ATM信元时,初始值被插入到头部的虚拟通路识别符(VPI)和虚拟信道识别符(VCI)中。该ATM输入和输出接口可以在接入节点内部或在ATM网络之外,例如在计算机22中或多路复用器24中。接着,在每个交换节点处,VPI和/或VCI域的值被读取,且这两个值的一个或两个和一路由表一起被用来选择一输出端口。在ATM信元离开该转换器之前,VPI和VCI域中的一个或两者根据包含在路由表中的数据被更新。该VPI域提供粗层次的寻路由,而VCI域提供一细层次的寻路由。该路由表部分由网络管理建立,部分在呼叫建立期间被建立。主要地,但不是全部地,虚拟通路路由表被网络管理建立,虚拟信道路由表在呼收建立期间由信号建立。
基本ATM信元和头部域的结构现在将被描述。
现在参考图2,一个基本的ATM信元包括一5字节的头部40和一48字节的用户信息部分42。信元头部40被用于在网络中的转换器之间为该信元寻路由,用户信息部分42包含用户的数据并且经由网络被透明地运载和无变化地发送到远端。很明显,这个基本的信元通常大大小于非连接的数据报。
现在参考图3,示出了一个连接到ATM转换器201上的IP路由器200的网络。经典的在ATM之上支持IP的方法是在ATM层处同一链中的邻近路由器之间建立一永久虚拟电路(PVC)、永久虚拟通路(PVP)或交换虚拟电路(SVC)的链接。因此,当源主机发送一非连接的数据报到目的主机时,图2中示出的那种类型的ATM信元在中继基础上被用于在链内的中间节点之间传送数据报信息,当在中间节点的ATM转换器之间传播时,源数据报被分段成多个ATM信元。在这种模式中,ATM网络被用于提供租借线路或LAN到LAN互连类型的服务。为产生众所周知的ATM信元,一ATM适配层被用于将该IP数据报分解ATM信元。
这种方法的问题在于,在每个节点处源IP数据报不得不被重新组合以使中间节点处的IP路由器200可利用这个头部域信息,并接着通过AAL层返回以被ATM转换器向前传输到下一个节点处。正如图3中所看到的,这包括在IP层利用IP层路由器来确定要被使用的路由器的输出端口,并利用AAL进程将该IP数据报重新分段到ATM信元格式以被相关的ATM转换器向前传输。这种方法的缺点是,由于重新组合IP数据报和重新分段成ATM信元时所消耗的时间,端到端的延迟随着中间节点数目的增加而增加。因此这种已知方法包括ATM上的IP不适用于有短延迟要求的IP流和/或在两个主机之间长时间直接连接为优选的情况(这在端到端的延迟和网络资源利用方面更为高效)。此外,此链中中间节点处的每个IP路由器200在它不需要立即处理时要缓冲数据。
所附带的图4示出了一方法以解决图3中示出的排放中的问题。这个方法是众所周知的ATM接通并提议在源和目的主机之间在ATM层之上进行直接连接。它通过在IP和ATM地址之间提供映射来实现。这种映射允许图4中的源主机查看连接到目的主机上的ATM转换器的地址并接着对所有信元寻路由以直接经由ATM网络到这个转换器处,这样来绕过所有的中间节点。然而,这种方法仍然有问题。首先,它不适用于所有的IP会话。尤其是,ATM接通的优点仅在IP会话为适当的长周期以使它们可从所应用的接通中获益时得以实现。此外,在建立连接后,该数据报不被发送到中间路由器,所以路由器功能如重新寻路由、头部错误检查等变得不可访问。第三个问题是为了实现ATM接通,在IP和ATM网络地址策略之间需要映射。其结果是ATM接通仅对于长周期会话且不针对短周期和不断增长的数据速率会话时有用。
这两个方法的问题在所附带的图5中给出的系统和方法里体现出来。为了将本发明的方法和先前描述的方法区别开来,在下文中它被称作为ATM部分接通。
如图5所示,ATM部分接通系统占据了经典ATM上的IP(在其中,每个中间节点被完全包括在内)和ATM接通(在其中,在主和目的之间有一直接映射)这两者的中间。如图5示出,每个节点包括一个IP层路由器200和一个由202提供的附加功能(这里被称作为“第一信元处理”)的ATM转换器201。这样在图5中示出的系统里,当源主机初始化一个数据通过数据报被发送到目的主机的IP会话时,ATM信元结构被排放使得仅有从源数据报中获取的该结构的第一个信元运载寻路由信息,且所有跟随在这第一个信元之后的信元仅运载源数据报的有效负载信息。在每个中间节点处那个节点的路由器使用第一个信元处理功能来确定整个数据报的路由(当ATM信元的数据转发被保留在ATM层(层2或OSI参考模型的数据链路层)时被多个ATM信元所表示)。这样在第一个ATM信元的有效负载包括所有IP头部中的相关寻路由信息的基础上,可能通过检测第一个信元并打开该有效负载来抽取能够对所有ATM信元寻路由的IP层信息。这使得数据报转发非常高效,因为数据报不需要在每个中间节点处被重新组合并重新分段,且如后面将要描述的那样,也使得可在ATM层丢弃数据报。
为了实现部分接通,需要附加的软件和硬件功能来实现“第一个信元处理特征”。这些特征包括包含在IP头部的信元识别、IP域和其后续部分(如包含数据报其余部分的ATM信元的读取和缓冲)的读取、转发通路的计算以及转发进程的管理。然而,这个功能不影响标准的ATM进程,所以它可在每个ATM转换器处实现而不影响标准的ATM VPI/VCI信元转发进程。
根据将被描述的实施例,用于检测IP数据报的第一个信元的装置通过使用一个ATM适配层(AAL)进程(已经被建立以在ATM网络之上传输IP数据)而被提供。这些已经存在的AAL进程的实例是AAL3/4和AAL5。
参考所附带的图6,这个图表示了一个与IP v4协议相一致的域,且在这个图中被粗线围绕的域构成了IP数据报头部。这些域的值在下面的表1中被陈述。 表1V 版本HL 头部的长度ST 服务类型TL 总体长度Id 标识FB 标志位FO 段偏移量TtL 生存时间Pr 协议HC 头部校验和SIPA 源IP地址DIPA 目的IP地址O 选项(如果有)P 填充域(如果有)IP DP IP数据报有效负载
典型的非连接数据报的有效负载可以远大于ATM信元的有效负载容量。例如,IP协议允许有效负载最大到65K字节。
图7是与图6相类似的表示,示出了一具有符合IPv6协议的域的数据报。此外,被粗线围绕的域代表了IP数据报的头部。下面的表2陈述了与图6中不同的那些域。 表2Py 优先级FL 流标签HL 中继限制
当一非连接的数据报,在本实施例中的一IP数据报,在AAL层被处理时,可变长度的数据报被分段到图2中描述的那种ATM信元中。这样AAL层将产生图8和9中示出的那种ATM信元。在这些图中粗线围绕着ATM信元的头部。参考图6和7描述的对IP数据报不公用的其他域在表3中被陈述。 表3VPI 虚拟通路识别符VCI 虚拟电路识别符PT 有效负载类型CLP 信元丢失优先级HEC 头部错误检查PCRC 部分循环冗余码
图8中示出的信元在AAL层利用AAL5从IPv4中被产生。正如已经解释的那样,IP数据报和任何其他类型的非连接数据报可能远大于ATM的信元。
在AAL层,IP数据报被分段到图2中描述的那种ATM信元中,且分段的结果是,在很多情况下,IP数据报的头部与一些有效负载一起被插入到第一个ATM信元的有效负载中,也就是,IP数据报中的第一个48字节将成为第一个ATM信元的有效负载,IP数据报的第二个48字节将成为第二个ATM信元的有效负载等等,直到整个IP数据报都被转换到ATM信元结构中。当然,每个ATM信元都有粗线内示出的适当的ATM头部。
图9中示出的信元结构也利用AAL5和类似的考虑从IPv6数据报中被产生。
在两种情况中可以看到,包括所有IP寻路由信息的IP数据报头部被包括在由AAL层产生的第一个ATM信元中的有效负载中。正如被理解的,来自于源IP数据报的信息也包含指示源数据报总体长度的域。注意在这个实施例中,IP头部不包括头部选项(IPv4)或头部扩展(IPv6)。这些扩大了头部的尺寸,以至于当IP数据报在AAL被处理后它们不必完全驻留在ATM结构中的第一个信元里。为了部分接通,这些选项和扩展因此被作为有效负载的一部分来对待,且在ATM接通中不被紧接的路由器处理。
在AAL层产生的后续信元没有被示出,因为这些信元就是常规的ATM信元,在其中信元的48个字节的有效负载部分运载着IP数据报的有效负载。
一旦IP数据报已经被转换到ATM信元结构中,它将从图5中示出的第一个ATM转换器被传送到第一个中间节点。在这个中间节点处,ATM信元结构中的第一个信元受制于那个节点的第一个信元处理功能202。这个功能将包括对包含IP头部信息的信元的识别、读取该IP域、对转发通路的计算和管理转发进程。这可以通过拷贝第一个ATM信元的IP头部内容到在缓冲该ATM信元的同时实现记录进程的第一个信元处理功能来实现。这样可以看出,仅当实现部分接通时IP头部信息在IP层被处理。因此,在被抽取的IP头部信息之上实现的附加第一信元处理功能对标准的ATM转换器进程支持(缓冲后面信元的需求)没有影响。因为第一个信元处理功能访问源数据报的长度,且这个数据报,包括IP头部信息,已经被分解成48个字节的段,第一个信元处理功能将得知在源节点的AAL层处产生的ATM信元的数目。这样的结果是第一个信元处理功能提供了在ATM层实现数据报丢弃的能力,因为它可以计算出到达ATM转换器处的信元的总体数目,并检查是否有足够的空间缓冲容量来存储所有的数据报信元。
在图5中示出的本系统提供的另一个特征是错误检查可以被IP层路由器在中间节点处实现。当ATM接通被应用到如图4中示出的系统时,被IPv4支持的IP头部错误检查特征丢失。然而,和图5中示出的ATM部分接通一起,倘若第一个ATM信元包括所有IP头部信息(包括所有的选择项),通常的IP头部错误检查进程被保持。ATM信元包括所有IP头部信息,包括所有的选择项。这是必须的因为IPv4 CRC检查是跨越头部和所有选择项的,且这些选择项中的某些可以在第二个信元之中。
在一确定的环境中,这个条件可以被违反。因为图5中示出的源和目的主机可以在AAL中包括一服务特殊会聚子层进程来检测超长头部、IPv4头部、或任何向IPv6头部插入一光CRC的请求。这个CRC是可选的,因为与IPv4不同,IPv6的头部没有自己的CRC。CRC的可选插入在ATM网络中检测头部崩溃是很有用的,以便使与该头部崩溃相关的信元和运载整个数据报有效负载的信元可被丢弃。在这种情况下,SSCS进程插入一个新的CRC域到源IP头部中。这个新域是一个仅针对IP头部域(直到且包括该目的地址)计算出来的部分头部校验和。当这个新域被插入到IP头部域中时,它被立即插入到目的地址域之后,如图8所示。
当使用ATM部分接通时,需要由源主机、中间节点和目的主机调用的处理过程在下面被列出。仅为了描述的目的,这里假设SSCS进程利用标准AAL类型被应用于IPv4和IPv6上。这里还假设缓冲空间的可用性将相对于每个数据报中信元的数目被检查,然后被保留或将所有的信元丢弃(如果需要的话)。
源节点
接收IP数据报
转发到AAL处理
SSCS部分的处理
If IP CRC的处理被用于中间节点处
then
读数据报版本域
if IP v6 then
计算partial_CRC
在目的地址后面插入partial_CRC域
end
if IPv4 then
if头部长度域>ATM信元中的可用有效负载空间则
计算partial_CRC
在目的地址后面插入partial_CRC域
end
endendATM传输中间节点ATM接收识别数据报中的第一个信元复制且转发第一个信元的有效负载到’第一信元处理’功能读数据报版本域while缓冲收到的信元do if IPv6 then
利用有效负载的长度域计算数据报中的信元数目 end if IPv4 then
利用头部长度和总体长度域计算数据报中的信元数目 end 检查是否有足够的缓冲空间来存储数据报的信元 if有足够的缓冲空间then保留缓冲空间
if IP CRC处理在中间节点处被使用then
if IPv6 then
为部分头部计算partial_CRC
和partial_CRC域的内容比较
if被比较的CRC值不相等then
指示数据报的信元被丢弃
end end if IPv4 then
if头部长度域>ATM信元中的可用有效负载
空间then
为部分头部计算partial_CRC
和partial_CRC域的内容相比较
if被比较的CRC值不相等then
指示数据报信元被丢弃
end
else
计算头部校验和
与头部校验和域的内容相比较
if被比较的头部校验和值不相等then
指示数据报信元被丢弃
end
end endendif IP CRC没有在中间节点处被使用then
指示数据报信元不被丢弃endif 数据报不被丢弃then
释放为数据报信元保留的缓冲空间
开始丢弃存储在cache缓冲器中的所有接收的信元
丢弃所有与这个数据报相关的保留信元else
转发IP地址信息到寻路由功能处
读地址
识别转发参数(例如VPI、VCI和输出端口数)
通过ATM转换器来交换所有数据报的信元
ATM传输
end
end
if 可用的缓冲空间不足then
开始丢弃存储于cache缓冲器中的所有接收到的信元
丢弃所有与这个数据报相关的保留信元
end
end
目的节点
ATM接收
转发到AAL进行处理
AAL进程的SSCS部分
if IP CRC处理在中间节点处被使用then
读数据报版本域
if IP v6 then
删除partial_CRC域
else
if头部长度域>ATM信元中的可用有效负载空间then
删除partial_CRC域
end
end
end
转发数据报
被描述为部分接通的系统比ATM接通有很多优点。
第一,基于IP地址和寻路由信息,ATM转换器可以转发ATM信元
第二,对IP数据报长度有效负载的访问允许ATM转换器检查缓冲资源的可用性且在ATM层采用数据报丢弃策略。
第三,对IP头部校验和信息的访问允许ATM转换器立即丢弃所有数据报信元(如果头部出错)。
第四,IP地址可以被用来确定ATM网络上的路由,这样消除了对地址解析进程(ARP)的需求:因此不需要从IP向E164作地址映射。
第五,正常的ATM进程不受影响。
可以理解,本发明可以用来经由网络以一系列包的形式传输非连接的数据报。当使用本发明以这种方式传输非连接的数据报时,非连接数据报的头部被映射到这一系列包中的第一个包的有效负载中。在网络的中间节点处,非连接寻路由功能在这个系列包的第一个包上被实现,且剩余包保留在与OSI参考模型中层2(数据链路层)相对应的层中。