用于数据交换装置的内部通信协议
本发明要求2000年9月29日提交的美国临时专利申请No.60/236,165作为优先权。
发明领域
本发明涉及数据交换,更具体而言本发明涉及在操作数据交换装置和提供数据服务过程中,交换数据交换装置内部的信息的方法。
发明背景
在数据交换领域,参与数据交换网络中的数据交换网点的性能是非常重要的。所支持的特征的范围和可展开的服务的阵列有着同等的重要性。
图1示意性地示出了数据交换网点100的全部组成部分。所述数据交换网点100是一多端口装置,具有一共享的存储器102设计,并且在N物理(Physical)端口104之间根据所支持的数据传输协议发送协议数据单元(PDU)。虽然此处已经示出,但本发明不限于有共享存储器设计的数据交换装置。
协议数据单元包括并不限于:单元,帧,数据包等。每个PDU都有一尺寸。单元具有固定的尺寸,而帧和数据包的尺寸是可以变化的。每个PDU与用于向相关的数据传输网络中的目的地数据网络网点传送PDU的首部信息相关。所述首部信息在数据交换网点能确定通过哪一个输出端口向目的地数据网络网点传送PDU。可以确定多于一个的传送PDU的输出端口,如同PDU在多点传输至一组数据网络网点的情况。
每个物理端口104适于通过如在108所示出的相关的物理链路106接受和传输数据。每个物理端口104有一个相关的物理数据传送速率。物理端口104设计成具有一可调的物理数据传送速率。所述物理端口104也能用于根据多过一个的数据传输协议传输数据。一个设计要求就是数据交换网点100能处理和传输PDU,这样所有的物理端口104以其全部的物理数据传送速率同时接受和传输数据。每个物理端口104的操作是通过相关的物理端口操作参数来控制的。
一个数据交换网点100的全部的操作包括:通过输入端口104接受至少一个PDU,确定一个适当的传送PDU的输出端口104,调度PDU以进行传输,并通过确定的输出端口104传输PDU。在确定适当的输出端口时,PDU可以存储在共享存储器102的处理队列中。每个物理端口104能通过数据总线110访问共享存储器102。处理队列能用于:匹配数据传输速率;比较数据传输速率与处理速率,启动数据流速率估算和实施操作,计算处理速率,进行统计收集等。
虽然,在理论上,数据交换网点100的操作是简单的,这种数据交换装置的实施并不是微不足道的。数据交换网点100的有效操作取决于资源的有效管理和服务的有效的展开。
所述首部信息可以在以下方面用作参考:管理数据交换网点100的操作;管理数据交换网点100的资源和在一定程度上与其相关联的数据网络资源,提供数据服务,等。
管理数据交换网点100的操作和管理数据交换网点100的资源对由交换处理器120有效地实施数据交换是至关重要的。在传送PDU方面,所述交换处理器120利用PDU分类器122检查PDU未决传输,并检查由相关的目的地地址分辨程序124提供的路径信息的主体,从而确定输出端口104。所述PDU分类器122还能确定PDU是单一终点传输,还是多终点传输。
在处理PDU过程中,所述路径信息的主体是可以改变的。修改路径信息的主体对在用于数据部分和相关的数据传输的数据运输网络中建立起新的数据运输路径是必要的。当所述首部信息被处理时,所述数据交换网点100获取新的数据网络网点。在确定传送PDU所到达的输出端口104时,所述数据交换网点100获取新的通向目的地数据网络网点的路径。
路径信息的主体能存储在共享存储器102中。用于PDU缓冲和用于存储路径信息的数据存储资源的共享在数据交换网点100合并记忆存储要求,并且简化了数据交换网点100的设计,从而降低成本。
一种举例性的资源管理程序涉及数据流速率实施130。另一资源管理程序的和在某些程度上数据交换网点100的操作管理程序是通过数据流统计收集过程132来提供的。链路层操作是通过端口监控程序140来管理的。
服务程序的一个例子包括通过一虚拟的网络程序150支持在数据交换网点100下的虚拟联网技术。通过展开新的服务程序,数据交换网点能获取被建立起来的新的虚拟局域网络(VLAN)等。PDU首部信息能用于确定PDU处理特性,例如虚拟局域网络(VLAN)支持虚拟网络程序150的结合性,服务分级(CoS)在支持服务水平协议(SLA)实施程序160时提供服务质量保证(QoS)的结合性,支持数据流功能性的PDU传输特性,等。
数据交换网点的获取能力在很大程度上是由学习协议控制的。所述学习协议共同提供数据交换网络拓扑发现特征。所述获取能力也受数据交换网点处的处理资源所限,所述处理资源例如为处理能力,存储器存储资源,处理带宽,等。
数据交换设备的实施是在较高的减少元件数量的市场压力下进行的,这种压力导致嵌入式设计。数据交换网点使用的获取协议一般是嵌入式的,并形成在数据交换网点的操作其间实施的固件/软件的整体部分。
图2是示出提供资源管理和提供数据服务的数据交换网点的实施例的示意图。
一般数据交换设备的嵌入式设计利用微控制器200来进行难操纵的操作。所述微处理器200是由制造商编程的,以支持特定的设定成使数据交换网点独立运行的特征。
所述微处理器200与所述共享的存储器102接口以访问PDU数据和其它的用于处理PDU的数据,例如,但不限于前面提及的路径信息主体。
在实施目的地地址分辨程序124时,所述微处理器200通过每个物理端口104与媒体访问控制(MAC)数据库210接口,所述数据库存储表格,所述表格确定可到达的目的地数据网点标识符。所述端口监控程序140可以使用同样的MAC控制数据库210以存储每个物理端口104的操作参数,包括数据传送速率,所支持的数据传输协议,与数据网络拓扑发现有关的参数,链路状态等。为支持所述端口监控程序140,所述微处理器200与每个物理端口104接口,以获取信息,监控和改变其操作参数。
为实施数据流率控制函数130,所述微处理器与PDU处理队列控制块220和速率控制块222相接口。所述PDU处理队列控制块220通过存储队列尺寸值、在共享的存储器102中的队列位置等的寄存器来追踪共享的存储器102中的存储缓冲空间的使用情况。所述速率控制块222存储寄存器下列内容,队列低限位占据水平,队列高限位占据水平,当前每个处理队列的队列占据状态;当前每个处理队列的数据通过量状态,数据流是否变化以及流量控制是否进行等等。
在实施虚拟联网技术程序150中,所述微处理器200与VLAN索引表和VLAN生成数据库232接口。所述VLAN索引表230存储数据网络网点标识符和虚拟网络标识符之间的关联,用于与数据相关联的虚拟网络的数据传输优先级,包括带宽等的数据传输参数。所述VLAN生成树数据库232存储虚拟网络和相关的参数之间的级别关系。
在实施统计收集程序132中,所述微控制器与存储统计计数器的数值的寄存器240的统计计数器块相接口。统计计数器的例子包括但不限于:所接受的PDU的数量,传输的PDU的数量,误码的数量等等。其中有整体的统计计数器,端口的统计计数器,服务程序的特定的统计计数器等等。
所述设计能减少至单一的硅芯片。这种嵌入的设计虽然能提供非常紧缩的数据交换网点,但易于专有,不容易升级,不能伸缩等。所支持的特征设定易于为数据交换装置在操作时的普通的要求所限制。
为管理操作,可以使用一管理处理器250,其主要用于状态的报告和较高程度的程序。数据交换网点的操作状态被带入应用程序层,并离开至监控软件应用程序,例如网络管理应用程序,也许远离数据交换网点100。在微处理器200和管理处理器250之间提供一专有的数据连接260。
在操作中,一起使用微控制器200和管理处理器250来管理资源和提供服务。所嵌入的微控制器200的功能包括:初始化内部和外部存储寄存器,协调上述包括管理处理器250的元件之间的信息同步;发送命令到元件进行执行,从元件中接受报告,向管理处理器250元件发出由其它元件检测出来的操作关键事件警告。
这种设计已经利用大量存储寄存器来访问不同的能进行信息交换的存储位置。在报告关键事件时,每个物理端口204已经使用多达20个中断源,但是通过由上述寄存器提供访问,所述管理处理器250需要访问多个分级寄存器以确定输入源,并对其进行服务。
所述微控制器200以特定的用于每个元件的信息交换协议进行编程,以实施每个程序。额外的功能的开发和支持增强的和新的服务的新的特征的增加使得对微控制器200进行重新编码非常重要。任何包括管理处理器250的元件的升级也要求微处理器200的重新编码。
因此需要提供一种改进的监控数据交换网点的性能以及对服务程序的传输提供支持的方法,所述服务程序能提高数据交换网点100的性能。
发明概述
根据本发明的一个方面提供了一种交换数据交换网点内部信息的方法。所述方法包括一系列步骤。待交换的信息在数据交换网点内部的第一元件处被压缩到数据帧内。所述数据帧在所述第一元件和一第二元件之间通过数据交换媒体进行传输。所述数据由第二元件解压缩。
根据本发明的另一方面,所交换的信息包括一数据流。
根据本发明的又一方面,所交换的信息包括一请求。
根据本发明的再一方面,所交换的信息包括一中断请求。
在数据交换装置的内部元件之间的压缩的信息的传送能简单地扩展,升级以及在数据交换环境下实施新的特征和服务。更具体而言,其能使元件,程序,特征和服务独立地实施。所述优点可以从总的硬件实施中得出,所述硬件实施带有设定为提供和增强对当前的和将来的服务的支持的可展开的,可升级的和可扩展的特征。
附图简介
通过下面参照附图对优选实施例的描述,本发明的特征和优点将更加清楚,其中:
图1是示出数据交换网点的总体结构的示意图;
图2是示出现有技术的提供资源管理和数据服务的数据交换网点的实施方式的示意图;
图3是示出根据本发明的实施例的提供资源管理和传送数据服务的数据交换网点的示意图;
图4是根据本发明的优选实施例的数据交换网点的内部元件和实施信息交换协议的相关的请求和答复的示意图;
图5是根据本发明的另一优选实施例的数据交换网点的内部元件和实施信息交换协议的相关的请求和答复的示意图;
图6是根据本发明的再一优选实施例的数据交换网点的内部元件和实施信息交换协议的相关的请求和答复的示意图;
图7,图8,图9,图10和图11是示出根据本发明的实施例的数据帧格式的示意图,所述数据帧用于在实施信息交换协议时与管理处理器进行交换。
可以注意到,在附图中相同的特征用相同的标号表示。
实施例的详述
根据本发明的优选实施例,数据交换网点的应用程序代码的研究和硬件组件的开发是分开的。这种区分能通过统一的信息交换协议来实现,所述统一的信息交换协议能使管理处理器与硬件实施细节相隔开。
所述统一的信息交换协议包括一组压缩的中断请求、请求和答复的数据帧,以进行数据交换网点资源的管理和服务程序的传送。
图3示意性地示出根据本发明的优选实施例的、提供资源管理和提供数据服务的数据交换网点的示意图。
所述统一的信息交换协议利用在管理处理器300和帧译码器310之间通过数据交换媒体320交换的数据帧。所述数据交换媒体320可以包括,但不限于,数据总线宽度是8位,16位,32位等的数据总线,和串行链路。为了通过数据交换媒体320交换信息,所交换的数据帧分为有对应于数据交换媒体320宽度的长度的数据段。
所述帧译码器310与接口330有关,所述接口直接与实施数据交换网点的特征和相关的程序的不同的元件通信。所述接口330,译码器310和统一的信息交换协议标志着来自服务/特征启动元件,例如管理处理器300的服务程序/特征传递元件的、低水平的信息交换实施细节。
虽然仅仅示出了一个服务程序启动元件,例如管理处理器300,通过统一的信息交换协议,本发明能延伸至多个服务程序启动元件,每一个在提供特定的服务方面都被最佳化。
图4示意性地示出根据本发明的实施例的数据交换网点的内部元件和实施信息交换协议的相关的请求和答复。
所述管理处理器400适于交换诸如带有数据交换网点的服务程序传送元件的数据流之类的信息。数据流信息交换可以在启动阶段用在初始化服务程序传递元件中,和/或用在以管理处理器400存储在其中的同步信息中。
根据本发明的优选实施例,所传送的数据流分成高达32字节的数据区组。本发明不限于32字节长的数据区组,所述区组的尺寸是一设计选择。每个数据区组被压缩成数据帧的负荷。在数据帧被传输之前将一8字节的首部包括在其中。
所述首部确定所传输的数据区组与一组数据帧类型的结合性。所述数据帧类型组包括来自管理处理器400的存储写入410请求,来自管理处理器40的存储读出420请求,和发至管理处理器400的读出完成答复430。所述读出完成答复430也可以对应于被传送至管理处理器400的数据流的数据区组。
在图7中示出对应于请求410,420和答复430的数据帧格式。
图5是根据本发明的另一实施例的示意图,示出数据交换网点的内部元件和实施信息交换协议的相关的请求和答复。
为支持示例性的地址分辨程序124和虚拟联网技术程序150,管理处理器500在维护MAC控制数据库210服务程序传送元件和最佳化PDU分类器122服务程序传送元件的性能时,发出压缩请求510的数据帧,例如:获取MAC地址请求,删除MAC地址请求,查找MAC地址请求,获取多终点传输地址请求,删除多终点传输地址请求,查找多终点传输地址请求,等。
响应于所述查找MAC地址请求和所述查找多终点传输地址请求,所述管理处理器500接受压缩答复520的数据帧:对查找MAC地址请求的答复和对查找多终点传输地址请求的答复。
前述的服务程序传送元件在执行他们相应的功能时发出对管理处理器的请求530,包括:获取MAC地址请求,删除MAC地址请求,删除多终点传输地址请求,更新VLAN端口请求(通告),使VLAN端口请求过时的请求(通告),等。(过时的特征一般用于通过删除相当长一段时间内不用的陈旧的信息来最小化在数据交换网点处的存储器存储要求)。
图8,图9和图10示出对应于请求510,530和答复520的数据帧格式。
图6示出根据本发明的另一个实施例的数据交换网点的内部元件和实施信息交换协议的请求和答复。
为支持端口监控程序140和统计收集程序132,所述管理处理器600通过压缩的中断请求610被告知所检测到的关键事件。由物理端口104发出的物理链接状态改变的中断请求能通知管理处理器600,链接是否起作用。如果累计的统计计数器的数值超过存储累计的统计计数器数值的寄存器的最大可表示值,则统计计数器翻转的中断请求被发至管理处理器600。(在发出统计计数器翻转中断请求的同时,与统计计数器相关的寄存器的数值重新设定成预定的数值,一般为零)
图11示出对应于中断请求610的数据帧格式。
如前面所述的,一8字节首部被用于传输数据帧。所述首部包括数据字段,所述数据字段确定:数据帧类型标识符,数据帧顺序号,用于读出和写入的存储器地址,等。本发明不限于前述的数据字段。其它的字段也可以用于实施不同的特征和功能。至少所述数据帧类型标识符数据字段是强制的。所述首部的数据字段有相对于数据帧的开始的特定位置。在所示出的实施例中,所述数据帧类型标识符在第一数据字段中得到确定,特别是在第一字节的首4位得到确定。至少,所述数据帧类型标识符对数据帧而言是唯一的,所述数据帧沿单一的方向通过数据交换媒体320被发出;也就是说,数据帧类型标识符在相反的方向可以重新用于数据帧传输。
数据字段也可以用于交换信息。在上述的附图中示出各种数据字段,每个数据字段有相对于数据帧的特定位置。在根据本发明传输信息时,每个数据帧的少于满负载的负载可以使用。所述数据交换媒体320可以利用硬件数据流控制来确定存储在每个数据帧中的相关的信息的传输的开始和结束。在传输部分数据帧中硬件的利用可以最佳化数据交换媒体320的使用。
此处给出的实施例仅仅是示例形式的,本领域技术人员可以理解,在不脱离本发明的实质精神的前提下可以对前述实施例进行各种变化。本发明的保护范围仅仅由所附的权利要求书限定。