CN1219385C - 用于远程高速接口应用的流结构 - Google Patents

用于远程高速接口应用的流结构 Download PDF

Info

Publication number
CN1219385C
CN1219385C CN01122608.0A CN01122608A CN1219385C CN 1219385 C CN1219385 C CN 1219385C CN 01122608 A CN01122608 A CN 01122608A CN 1219385 C CN1219385 C CN 1219385C
Authority
CN
China
Prior art keywords
bus
formation
remote bus
switching fabric
interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CN01122608.0A
Other languages
English (en)
Other versions
CN1330472A (zh
Inventor
梅迪·阿德米尔
安德鲁·J·林诺斯三世
乔治·R·罗德里格斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo International Ltd
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1330472A publication Critical patent/CN1330472A/zh
Application granted granted Critical
Publication of CN1219385C publication Critical patent/CN1219385C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/29Flow control; Congestion control using a combination of thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3027Output queuing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Bus Control (AREA)

Abstract

这里公开了一个在远程总线之间具有高速交换接口的系统。该系统包括一个交换结构,有多个远程总线接口与该结构相连。一个包括多个并行逻辑流队列的可编程流队列用于根据远程总线接口的协议要求调度信息包。

Description

用于远程高速接口应用的流结构
技术领域
一般地说,本发明涉及管理通信网络用的一种改进的方法和系统。特别地本发明涉及远程通信网络内的交换流控制机制。更具体地说,本发明涉及以逻辑流控制机制代替传统的优选级输出队列的方法和系统,该控制机制可在一种交换结构(switch fabric)中实现,它能用作远程总线互连,从而能同时解决所关心的数据排序和流程控制问题。
背景技术
以前,慢的网络速度和由较高层协议(例如传输控制协议/网间协议(TCP/IP))提供的流控制防止了在交换处流控制出现问题。随着近来对远程通信网内节点对节点流控制和数据传输介质的改善,使得在网桥或交换机处的通信拥挤变为更成问题了。近来网络速度上升到每秒千兆位(gigabits),加上全双工的传输能力,已经提出了对流控制机制的需求。这种流控制的目标包括效率和公平(fairness)。
服务器输入/输出(I/O)正沿着由一些新的开端确定的方向进行演变,这些新的开端诸如下一代I/O(NGIO)、未来I/O(FIO)和系统I/O(SIO)。NGIO、FIO和SIO已由InfiniBand联合(Consortium)组合成为InfiniBand体系结构。这些I/O适配器需要一个交换结构把主信道适配器(host channel adapter,HCA)与目标信道适配器(targetchannel adapter,TCA)互连起来。
许多传统的交换结构,如国际商用机器公司(IBM)生产的PRIZMA交换结构,利用了一种可编程包流优先级方案。在初始化时,可得到的优先级数可设为1和n之间的一个值。因此,这种交换能支持多达n个优先级,由n队列优先级化方案来实现。可得到流控制机来控制交换结构的输入端和输出端处有不同优先级的包流。在这种交换结构中的输入端流控制可利用芯片上引出头(on-chip pin)实现,或利用每包包头中的接收许可(receive-grant)信息。在交换结构输出端的流控制可由发送许可引出头来提供。
在这样的优先级流控制方案中,禁止一个优先级将导致所有较低优先级流也被禁止。这样,与n个优先级对应的n个队列中按优先级规则得到服务,从而在较高优先级队列中等待的一个包将在任何较低优先级队列得到服务之前被传送。
在传统的交换结构中,流控制阈值和背压(backpressure)触发器是以基于优先级的排队为根据的,这种排队对于不同的队列大小采用累积的输出队列大小。所以,每当一个高优先级被禁止,则所有较低优先级的传送保证被禁止。串行队列,如外围部件互连(PCI)总线接口便有可能成为瓶颈,它可能潜在地降低由于利用高速网络交换接口所带来的性能好处。PCI是众所周知的32/64位本地总线标准,被设计成用于快速访问个人计算机内的外围装置,如用户显示器、盘驱动器、调制解调器等。
由于在交换I/O处总线接口的物理中断,必须提供适当的缓存器管理,以防止交换机内缓存器(intra-switch buffer)的上溢(overflow)或下溢(underflow)。串行队列(如远程PCI总线接口)成为交换结构中串行维持的流控制的潜在瓶颈。
发明内容
所以,可以理解,需要一种利用交换机排队能力的改进的系统和方法来维持一种并行流控制和数据排序机制,以此能远程切换远程总线接口。
本发明提供了一种在远程总线间提供高速交换接口的装置,其中每个所述远程总线有一个特定的总线体系结构用于确定所述远程总线上的数据排序,所述装置包含:一个交换结构,包含与远程总线接合的远程总线接口;以及一个可编程流队列,用于根据所述远程总线接口的协议要求调度信息包,所述可编程流队列进一步包含数据排序逻辑,用于根据所述总线体系结构调度信息包。
本发明还提供了一种在穿过交换结构的远程总线之间提供高速交换接口的方法,其中每个所述远程总线有一个特定的总线体系结构用于确定所述远程总线上的数据排序,所述方法包含如下步骤:将远程总线与所述交换结构接合;以及由可编程流队列根据远程总线接口的协议要求以及根据所述总线体系结构调度信息包。
在下述详细书面描述中将清楚看出本发明的全部目的、特点和优点。
附图说明
在所附权利要求中提出了相信为本发明特点的新特性。然而,结合附图阅读下文中对一实施示例的详细描述,将能最好地理解发明本身及其最佳使用方式、进一步的目的和优点,这里:
图1描绘一个远程通信交换机,其中实现了本发明的流体系结构;
图2显示根据本发明的一个最佳实施例的交换机内包结构;
图3a描绘根据本发明的一个最佳实施例的逻辑端口适配器,用于使各包排队送到物理端口;
图3b说明可以在图3a中的逻辑端口适配器内实现的总线结构技术规则;
图4是一方框图,代表根据本发明的一个最佳实施例的交换机结构;以及
图5是一方框图,显示根据本发明的一个最佳实施例的可编程包输出排队。
具体实施方式
本发明以一逻辑流控制体系结构代替传统的交换机内流的优先级方案,其中先前的n个优选级队列由n个逻辑流队列代替。这样,公开了一个每端口具有多个流的交换结构组织,以支持多种实现,如PCI到PCI的交换。本发明修改了例如在新开发的PRIZMA交换机(IBM产品)中可发现的传统交换结构,以有效地支持多种通信流。
这种新的输出队列体系结构允许对多个逻辑流进行独立的服务和流控制。例如,在必须遵守PCI总线排序命令(bus orderingcommand)的那些实现中,需要这种灵活的排队结构。每个逻辑流在其物理输出端口有一个与传统的优先级队列类似的队列(即一个逻辑端口)。这些逻辑流队列可以被单独地独立地允许或禁止传输。与传统的优先级队列不同,这些逻辑流队列不是以固有的互相依赖的排序方案预先编程的。物理输出端口根据所希望的实现以可编程地确定的顺序对逻辑流队列服务。例如,从聚集的逻辑流队列到物理输出端口的输出流可以以“循环(round-robin)”的方式实现,或者在PCI总线应用中,流调度将被编程以使PCI总线命令排序规则所建立的要求生效。
现在参考附图,这里各图中相似的参考数字代表相似的或相对应的部件,特别是参考图1,图中描绘了在其中实现本发明的流体系结构的远程通信交换机100(有时称作“交换结构(switch fabric)”)。在所
描绘的实施例中,交换机100是一个基于包的16×16交换单元,它有16个双向端口。为了易于显示端口的双向特性,显示出16个输入端口102,它们对应于16个输出端口106。交换机100可以是一个PRIZMA交换机,其中每个端口在每个方向能提供2Gbps或更高的带宽。这一端口速度使交换机100特别适用于提供当今高速网络I/O所要求的带宽。
如图1中进一步描绘的那样,交换机100包括一个共享的包存储器模块104,该模块可以包括任何种类的可能的计算机存储器装置。如参考图2和图3进一步详细解释的那样,来自输入端口102之一的到来包是在初始化时可编程的。在这方面,所描绘的实施例假定包大小为32字节,其中包含3字节头段以及若干数据段。在包头段中指定目的端口(输出端口106之一)。通过以位图(bitmap)格式提供目标端口地址,实现来自任何输出端口106的多点通信(multicasting)。
交换机100有一个在一组逻辑流队列中实现的可编程包分发(排队),这组逻辑流队列包括与输出端口0关联的逻辑流队列108、与输出端口1关联的逻辑流队列110以及与输出端口15关联的逻辑流队列112。
消息结构
现在参考图2,图中显示根据本发明的一个最佳实施例的交换机内包结构。如下文中将进一步详细解释的那样,交换机100构造一个事务包200以响应来自远程总线的服务或访问请求。如图2中所示,事务包200包括一个事务头段(header)208,它含有关于事务包通过交换机100到达正确输出(目标)端口的交换机内路由的路由信息。事务包200进一步包括事务有效负载(payload),它含有要由目标总线接口逻辑(未画出)解释和执行的消息。在PCI至PCI交换的情况中,这种总线接口逻辑将是目标总线PCI排序器(sequencer)。
在事务包200内的原始消息包括消息头段204和消息有效负载202。消息头段204包含针对事务的信息(例如命令、地址、允许字节),而消息有效负载202包含可多达32字节的数据。有效负载数据少于32字节的消息可在事务头段208中作此标记。这一标记被前述目标总线接口逻辑(排序器)用于产生存储器写(Memory Write)命令序列以传送一个或多个数据字。
队列结构
现在参考图3a,图中描绘根据本发明的一个最佳实施例的一个逻辑端口适配器300,用于给从输入端口到物理输出端口的包排队。本发明的排队系统和方法的关键特征之一是它提供了可适用于任何指定的远程总线体系结构的灵活路由和输出排队。为了便于图示和解释,其余的附图将针对PCI至PCI交换配置的情况进行描述。
逻辑端口适配器300是在利用了输出端口排队的交换机100的交换结构(有时称作“交换核,switching core”)中实现的。所以,全部逻辑流队列108至112有指向交换机100的输出端或“下端”(downside)的输出。图3a显示使用该交换机核实现的逻辑流队列组织。具体地说,逻辑流队列Q1、Q2、Q3及Q4包含一个可编程的流队列块302。应该指出,可编程流队列块302与输出端310相关联,而输出端口310与远程总线B相关联。类似地,逻辑流队列Q′、Q2′、Q3′及Q4′包含一个可编程的流队列块304,它与远程总线A的输入端口308相关联。在所描绘的例子中,总线A和总线B是双向的,所以可以同时作为源和目的地。虽然在图3a中只描绘了两个这样的总线,但应该指出,逻辑端口适配器300能支持具有一个或多个源总线以及一个或多个目的地总线的配置。
要发送到总线B的事务包,如事务包200,被经由可编程逻辑流队列302送到输出端口310。为每类事务分配的队列是根据如下判据确定的。第一,流过该系统的事务必须满足总线A和/或总线B所采用的数据排序规则。第二,在若干独立的平行路经中运动的多个事务将提供优越的(superior)流和缓存性能。
现在参考图3b,图中显示按前述的队列分配第一判据可在图3a的逻辑端口适配器中实现的总线结构技术规则。根据所描绘的例子,通过逻辑端口适配器300的包数据必须满足图3b中的数据排序规则。图3b内的行→列指定指出一种可允许的传送。图3b中所示技术规则将用于提供一个解释用的情况,在其中针对下面图4和图5中描绘的实施例,实现排队方案和命令处理。
命令处理
现在参考图4,图中的方框图代表了根据本发明的一个最佳实施例的交换机结构400。交换机结构400包括双向PCI总线A和B以及相应的PCI接口404和418。交换机结构400进一步包括与总线B的输出端口相关联的可编程流队列412和与总线A的输出端口相关联的可编程流队列410。可编程队列412和410包含多个逻辑端口队列,因而与可编程流队列302和304相似。
如图4中进一步描绘的那样,交换机结构400进一步包含一个事务工作队列(TWQ)406和一个TWQ 416,它们处理要经由可编程流队列410和412在PCI接口418和404之间传递的进入包和输出包。下面将描述用于双向命令流和数据的交换机结构400的高层组织。
a.被投寄的存储器写(Posted Memory Write)
响应收到对PCI接口404内可预取(prefectchable)地址空间的一个PCI存储器写(MW)访问请求,如果在TWQ 406内可得到空间的话,则把PCI事务信息加载到TWQ 406中。如果在TWQ 406中没有空间,则该事务被重试,直至它成功地分配到TWQ 406内为止。接下来,TWQ 406内的逻辑构造一个事务包并把这个包发送到指定的事务队列Q1,如图3a中所示,它已被指定为目标总线B的被投寄的存储器写(PWM)队列。这一包将被相应地传送到目标总线B,如该事务包的事务头段中指出的那样。
每个进入PCI接口404或418的到来包在其消息头段内携带一个序列号,该序列号把一PCI写事务与其产生的PMW包相关联。为每个源总线维护一个第二个序列号。每次在源PCI总线接口处执行一个写事务时,这个附加的序列号便增1。在与源总线处的单一PCI写操作相关联的序列中的最后一个PMW还将携带一个设为1的最后PMW序列指示器(indicator)。
在同一总线上与该PMW事务在同一方面上运动的一个源总线读事务将拾取其TWQ 406内的消息头段中的这个序列号。一旦到达目标总线B,该读事和将在被允许前进之前等待所有序列号小于或等于它自己的序列号的那些PMW事务。以这种方式,在一个非串行传送的情况中,PCI接口的数据排序得以维持。
当在源总线A上的传送已经完成而且与此事务关联的数据缓存器(缓存器408)中的全部数据都已被打包并传送到交换结构时,该事务的信息从TWQ 406中抹掉。
b.被延迟的读请求和被延迟的读完成(Delayed Read Request andDelayed Read Completion)
交换机结构400响应一个PCI I/O读请求、配置读、存储器读(MR)、MRL或MRM。对于一个读请求,将到来包内编码的事务信息和当前TWQ 406中正在处理的事务的事务信息进行比较。一个匹配表明,对于交换机结构400内的到来包所关联的事务,存在一个有效的(active)被延迟的读请求(DRR)。
在有效DRR(发现了匹配)的情况中,检验一个数据可得标志,以确定该事务的数据当前是否在数据缓存器408中。如果这个事务数据在数据缓存器408中,则把该数据传送给发请求的主机。如果在数据缓存器408中没有这个事务数据,则重试该事务。
在到来包内编码的事务数据(请求事务)与TWQ 406内当前被处理的任何事务的事务数据都不匹配时,交换机结构400的响应取决于TWQ 406内一个队列的当前可用性。如果得不到工作队列而且在数据缓存器408内没有可用的缓存器空间(交换机忙状态),则到来的事务请求(读请求)将在以后重试。如果当前在TWQ 406内可得到工作队列或在数据缓存器408内有可用的缓存器空间,则该PCI事务请求被重试,而同时与该事务关联的控制信息(命令、地址、允许位)被存储在TWQ406中。
当这事务控制信息添加到TWQ 406中时,交换机结构400构造一个事务包并把这个包传送到目的地总线B的延迟的事务队列(被延迟的读请求Q2)。取自PMW序列的一个序列号被赋予这个排队的事务包。然后,由可编程流队列302内的逻辑把该事务包引导到目标总线B,如在该事务包头段中指示的那样。对于一个DRR,消息有效负载是空的。
在TWQ 406中保持该消息头段的一个副本,并在数据缓存器408中分配存储器空间,当从目标总线B接收到相关联的DRC时,这两种资源都被利用。额外的PCI读命令能得到服务,直至检测到下面列举的状态之一时为止:(1)在TWQ 406和/或数据缓存器408中的全部空间都已被分配。(2)目标总线B的Q2(DRR)队列是满的(如交换机核的接收许可信号所指示的那样)。
当DRR到达Q2的输入端时,可编程队列302内的排序器将该DRR的序列号与已经到达该目标的PMW所携带的序列号和“序列中是后一个PMW”标志进行比较。当所有PMW已按要求退出,而且所有写数据都已被发送到该目标时,排序器逻辑在目标总线B处发起一个请求来从存储器中读一个高速缓存行。当从该目标(在这种情况中是从存储器)接收到那个数据时,则构造一个DRC包并将其传送到与源总线A关联的Q3(DRC/DWC队列)。如果该PCI命令是MRM,则在可编程充入列内的排序器逻辑将代表PCI主机通过在该总线上发起一个请求以从存储器中读出额外的高速缓存行来预取数据。只要主机保持PCI传送有效,该目标总线排序器就将继续预取数据。
当在Q3的开始总线中接收到DRC包时,当该包达到该陷列的头时使被去掉。该消息头段中的信息与所赋予的TWQ 406匹配,而且在消息有效负载中的数据被移到已分配的数据缓存器408中。
与目标总线B接口418关联的逻辑不能将数据发送到源总线A,除非源总线A中的数据缓存器有适当的空间。在目标总线B接口418内的预取逻辑与源总线A逻辑404协商出一个时间,在该时间它能向源总线A接口404中的一个缓存器发送额外的数据。一个优先级队列Q4用作高可靠性介质,通过该介质发送这种协商消息。
现在参考图5,这是一个方框图,显示根据本发明的一个最佳实施例的可编程包输出排队。如图5中所示,一个交换接口500包括一个可编程流队列504,它与一个调度器(scheduler)502在通信上连接。可编程流队列包括多个可被指定的并行逻辑流队列,如图3a和3b所示。
如图5中进一步描绘的那样,一个队列阈值输入506和一个数据排序输入508被加到调度器502上。调度器内的可编程逻辑把来自队列阈值输入506和数据排序输入508的输入翻译成对可编程流队列504的调度命令,从而使来自交换接口500的输出包可根据协议要求和实时队列状态被传送。
本发明的最佳实现包括作为被编程以执行这里所描述方法的计算机系统以及作为程序产品。根据计算机系统实现,用于执行本发明方法和系统的指令组驻留在存储器装置中,例如一个或多个计算机的ROM或RAM。在计算机系统提出要求之前,这组指令可作为计算机程序产品存储在另一个计算机存储器中,例如在盘存储器中(它可以包括可卸存储器,如光盘或软盘,借最终应用于盘驱动器中)。
尽管已经参考最佳实施例具体显示和描述了本发明,但本领域技术人员应该理解,可以在形式和细节上做出各种改变而不离开本发明的精神和范围。

Claims (11)

1.一种在远程总线间提供高速交换接口的装置,其中每个所述远程总线有一个特定的总线体系结构用于确定所述远程总线上的数据排序,所述装置包含:
一个交换结构,包含与远程总线接合的远程总线接口;以及
一个可编程流队列,用于根据所述远程总线接口的协议要求调度信息包,所述可编程流队列进一步包含数据排序逻辑,用于根据所述总线体系结构调度信息包。
2.权利要求1的装置,其中所述可编程流队列被纳入所述交换结构中,从而使来自所述远程总线接口到达所述交换结构中的信息包在离开所述交换结构之前被引导到所述可编程流队列中。
3.权利要求1的装置,其中所述远程总线接口是远程外围部件互连接口。
4.权利要求1的装置,其中所述数据排序逻辑根据所述总线体系结构来表征所述多个并行逻辑流队列。
5.权利要求1的装置,其中所述可编程流队列包括多个并行逻辑流队列。
6.权利要求5的装置,其中所述可编程流队列进一步包括用于对多个并行逻辑流队列中的每一个队列独立地、可编程地调节队列阈值要求的逻辑。
7.权利要求1的装置,其中所述交换结构包括一个源端口用于从所述远程总线接收到来的信息包,而且所述装置进一步包含一个事务工作队列,该队列保持总线体系结构指令用于根据所述总线体系结构把所述到来的信息包引导到所述可编程流队列。
8.一种在穿过交换结构的远程总线之间提供高速交换接口的方法,其中每个所述远程总线有一个特定的总线体系结构用于确定所述远程总线上的数据排序,所述方法包含如下步骤:
将远程总线与所述交换结构接合;以及
由可编程流队列根据远程总线接口的协议要求以及根据所述总线体系结构调度信息包。
9.权利要求8的方法,其中所述可编程流队列被纳入所述交换结构中,所述方法进一步包含:在到来的信息包离开所述交换结构之前将该到来的信息包引导到所述可编程流队列中的步骤。
10.权利要求9的方法,其中所述可编程流队列包括多个并行逻辑流队列,所述方法进一步包含对所述多个并行逻辑流队列中的每一个队列独立地、可编程地调节队列阈值要求的步骤。
11.权利要求9的方法,其中所述交换结构包括一个源端口用于从所述远程总线接收到来的信息包,而且所述方法进一步包含根据所述总线体系结构把所述到来的信息包引导到所述可编程流队列的步骤。
CN01122608.0A 2000-06-27 2001-06-26 用于远程高速接口应用的流结构 Expired - Lifetime CN1219385C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/604,446 US6678782B1 (en) 2000-06-27 2000-06-27 Flow architecture for remote high-speed interface application
US09/604,446 2000-06-27

Publications (2)

Publication Number Publication Date
CN1330472A CN1330472A (zh) 2002-01-09
CN1219385C true CN1219385C (zh) 2005-09-14

Family

ID=24419633

Family Applications (1)

Application Number Title Priority Date Filing Date
CN01122608.0A Expired - Lifetime CN1219385C (zh) 2000-06-27 2001-06-26 用于远程高速接口应用的流结构

Country Status (4)

Country Link
US (1) US6678782B1 (zh)
KR (1) KR100412010B1 (zh)
CN (1) CN1219385C (zh)
GB (1) GB2367712B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6622194B1 (en) * 2000-08-28 2003-09-16 Intel Corporation Efficient use of multiple buses for a scalable and reliable high-bandwidth connection
US6831916B1 (en) * 2000-09-28 2004-12-14 Balaji Parthasarathy Host-fabric adapter and method of connecting a host system to a channel-based switched fabric in a data network
US6775719B1 (en) 2000-09-28 2004-08-10 Intel Corporation Host-fabric adapter and method of connecting a host system to a channel-based switched fabric in a data network
US7181541B1 (en) 2000-09-29 2007-02-20 Intel Corporation Host-fabric adapter having hardware assist architecture and method of connecting a host system to a channel-based switched fabric in a data network
US7107359B1 (en) 2000-10-30 2006-09-12 Intel Corporation Host-fabric adapter having hardware assist architecture and method of connecting a host system to a channel-based switched fabric in a data network
US20020071450A1 (en) * 2000-12-08 2002-06-13 Gasbarro Dominic J. Host-fabric adapter having bandwidth-optimizing, area-minimal, vertical sliced memory architecture and method of connecting a host system to a channel-based switched fabric in a data network
US7190667B2 (en) * 2001-04-26 2007-03-13 Intel Corporation Link level packet flow control mechanism
US20020159458A1 (en) * 2001-04-27 2002-10-31 Foster Michael S. Method and system for reserved addressing in a communications network
US20070180150A1 (en) * 2005-12-01 2007-08-02 Firestar Software, Inc. System and method for exchanging information among exchange applications
US8566496B2 (en) * 2010-12-03 2013-10-22 Lsi Corporation Data prefetch in SAS expanders
US9025467B2 (en) * 2011-09-29 2015-05-05 Nec Laboratories America, Inc. Hitless protection for traffic received from 1+1 protecting line cards in high-speed switching systems
CN102571609B (zh) * 2012-03-01 2018-04-17 重庆中天重邮通信技术有限公司 快速串行接口pci‑e协议数据完成包的重组排序方法
CN112948310B (zh) * 2021-03-25 2023-04-14 山东英信计算机技术有限公司 一种资源分配方法、装置、设备及计算机可读存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5315708A (en) * 1990-02-28 1994-05-24 Micro Technology, Inc. Method and apparatus for transferring data through a staging memory
US6263374B1 (en) * 1992-09-17 2001-07-17 International Business Machines Corporation Apparatus for coupling a bus-based architecture to a switch network
US5764924A (en) 1995-08-24 1998-06-09 Ncr Corporation Method and apparatus for extending a local PCI bus to a remote I/O backplane
IL116989A (en) 1996-01-31 1999-10-28 Galileo Technology Ltd Switching ethernet controller
IL116988A (en) 1996-01-31 1999-12-31 Galileo Technology Ltd Bus protocol
US5764961A (en) 1996-04-03 1998-06-09 Ncr Corporation Predictable diverse data delivery enablement method and apparatus for ATM based computer system
US6442172B1 (en) * 1996-07-11 2002-08-27 Alcatel Internetworking, Inc. Input buffering and queue status-based output control for a digital traffic switch
US5790816A (en) 1996-09-09 1998-08-04 Gigalabs, Inc. Apparatus for transferring information from a bus to a network without the use of protocol engines
US5887144A (en) 1996-11-20 1999-03-23 International Business Machines Corp. Method and system for increasing the load and expansion capabilities of a bus through the use of in-line switches
EP0844567A1 (en) 1996-11-21 1998-05-27 Hewlett-Packard Company Long haul PCI-to-PCI bridge
US5802333A (en) 1997-01-22 1998-09-01 Hewlett-Packard Company Network inter-product stacking mechanism in which stacked products appear to the network as a single device
US6167054A (en) 1997-02-14 2000-12-26 Advanced Micro Devices, Inc. Method and apparatus providing programmable thresholds for full-duplex flow control in a network switch
US5909564A (en) 1997-03-27 1999-06-01 Pmc-Sierra Ltd. Multi-port ethernet frame switch
US6275491B1 (en) * 1997-06-03 2001-08-14 Texas Instruments Incorporated Programmable architecture fast packet switch
US6067301A (en) * 1998-05-29 2000-05-23 Cabletron Systems, Inc. Method and apparatus for forwarding packets from a plurality of contending queues to an output

Also Published As

Publication number Publication date
KR100412010B1 (ko) 2003-12-24
GB0115530D0 (en) 2001-08-15
KR20020000711A (ko) 2002-01-05
GB2367712B (en) 2003-12-17
US6678782B1 (en) 2004-01-13
GB2367712A (en) 2002-04-10
CN1330472A (zh) 2002-01-09

Similar Documents

Publication Publication Date Title
US7457895B2 (en) Dynamic memory allocation between inbound and outbound buffers in a protocol handler
US7330927B1 (en) Apparatus and methodology for a pointer manager
US6922408B2 (en) Packet communication buffering with dynamic flow control
CN1219385C (zh) 用于远程高速接口应用的流结构
EP0792081B1 (en) A system and method for an efficient ATM adapter/device driver interface
US7076569B1 (en) Embedded channel adapter having transport layer configured for prioritizing selection of work descriptors based on respective virtual lane priorities
US7227841B2 (en) Packet input thresholding for resource distribution in a network switch
US6038592A (en) Method and device of multicasting data in a communications system
US20040252685A1 (en) Channel adapter with integrated switch
US8499137B2 (en) Memory manager for a network communications processor architecture
US5528584A (en) High performance path allocation system and method with fairness insurance mechanism for a fiber optic switch
US8099521B2 (en) Network interface card for use in parallel computing systems
US20030026267A1 (en) Virtual channels in a network switch
KR100255503B1 (ko) 통신 시스템의 통신 스택에 관련된 데이터를 전송하고 수신하기위한 시스템 및 그 방법
US6922749B1 (en) Apparatus and methodology for an input port of a switch that supports cut-through operation within the switch
EP0841781A2 (en) Fibre channel switch employing distributed queuing
EP0391583A2 (en) Dual-path computer interconnect system with four-ported packet memory control
US20080259960A1 (en) Method and apparatus for Out-of-Order Processing of Packets
CN1881937A (zh) 将存储空间动态分配给多个队列的方法及设备
CN1267418A (zh) 连网系统
US20060050693A1 (en) Building data packets for an advanced switching fabric
EP0381645A2 (en) System and method for communicating between a plurality of processors
EP1554644A2 (en) Method and system for tcp/ip using generic buffers for non-posting tcp applications
US20080263171A1 (en) Peripheral device that DMAS the same data to different locations in a computer
US7020712B1 (en) Reducing CPU overhead in the forwarding process in an inbound/outbound controller for a router

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20170713

Address after: Hongkong, China

Patentee after: Lenovo International Ltd

Address before: American New York

Patentee before: International Business Machines Corp.

CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20050914