CN101689171B - 网络中的端到端流控制 - Google Patents

网络中的端到端流控制 Download PDF

Info

Publication number
CN101689171B
CN101689171B CN2008800236854A CN200880023685A CN101689171B CN 101689171 B CN101689171 B CN 101689171B CN 2008800236854 A CN2008800236854 A CN 2008800236854A CN 200880023685 A CN200880023685 A CN 200880023685A CN 101689171 B CN101689171 B CN 101689171B
Authority
CN
China
Prior art keywords
network
network node
packet
credit
adjuster
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.)
Active
Application number
CN2008800236854A
Other languages
English (en)
Other versions
CN101689171A (zh
Inventor
P·布劳内尔
D·L·马修斯
J·X·丁
H·E·布林克曼
D·D·赖利
H·V·诺尔登
K·T·钱
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.)
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of CN101689171A publication Critical patent/CN101689171A/zh
Application granted granted Critical
Publication of CN101689171B publication Critical patent/CN101689171B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L47/26Flow control; Congestion control using explicit feedback to the source, e.g. choke packets
    • H04L47/263Rate modification at the source after receiving feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • 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/18End to end
    • 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/215Flow control; Congestion control using token-bucket
    • 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/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes
    • 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/39Credit based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2212/00Encapsulation of packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种网络中的网络节点(11-17)包括:第一接收缓冲器(24);第一缓冲器管理(22);第二接收缓冲器(27);以及第二缓冲器管理(25)。第一缓冲器管理(22)对于第一缓冲器管理(22)置于第一接收缓冲器(24)中的网络数据包执行链路层基于信用的流控制。第二缓冲器管理(25)对于第二缓冲器管理(25)从第一接收缓冲器(24)接收并在将数据放到第二接收缓冲器(27)之前处理的网络数据包执行端到端的基于信用的流控制。

Description

网络中的端到端流控制
背景技术
外设部件互连快运(Peripheral Component Interconnect Express(PCIe))计算机总线标准用于计算机扩展卡和图形卡。PCIe既是全双工的也是点对点的。PCIe是分层的协议并且具有物理层,数据链路层以及事物层。
在物理层中,任何两个PCIe设备之间的连接被称为链路。每个链路由一个或多个通道组成。更多通道允许数据流通过链路的更高速率。
数据链路层提供事物层数据包(TLP)的排序。TLP由事物层生成。数据链路层使用应答(ACK)和否定应答(NAK)来保证TLP的递送。ACK和NAK由作为低层次数据包的数据链路层数据包(DLLP)传送。DLLP也用于功率管理功能。
PCIe使用链路层基于信用的流控制。在链路层基于信用的流控制中,信用基于接收从数据链路层进入事物层的数据的接收缓冲器中可用空间的量。链路上的每个设备将初始信用限制通告给链路另一端上的设备。仅当发送TLP不会超过接收设备的当前信用限制时,设备才在链路上发送该TLP。当发送TLP时,发送的TLP将该TLP使用的信用的数量从当前信用限制中减去。当接收设备完成处理来自其接收缓冲器的TLP时,接收设备将信用的返回用信号通知发送设备。然后发送设备将返回的信用的数量添加到当前信用限制。用于计数信用的计数器是模的,并且模运算被用于确定当前信用限制。DLLP被用于在两个连接的设备之间传送流控制信息。
当使用链路层基于信用的流控制时,只要没有碰到信用限制,信用返回的延迟不影响性能。
附图说明
图1示出根据本发明一实施例的PCI网络域。
图2是示出根据本发明一实施例的利用链路层以及端到端的基于信用的流控制的缓冲器管理的使用的简化框图。
图3是示出根据本发明一实施例的利用端到端的基于信用的流控制的缓冲器管理的实施的简化框图。
具体实施方式
图1示出一PCIe网络域,其包括由交换机10互连的网络节点11,网络节点12,网络节点13,网络节点14,网络节点15,网络节点16,网络节点17,以及管理节点18。这些网络节点中的一个或多个为主机节点,而这些网络节点中的一个或多个为输入/输出(I/O)节点。尽管示出七个网络节点连接到交换机10,这只是示例性的,交换机10的大小和网络节点的数量在PCIe网络域中可以变化很大,如本领域普通技术人员所知的。
线101代表网络节点11和交换机10之间的数据链路。线102代表网络节点12和交换机10之间的数据链路。线103代表网络节点13和交换机10之间的数据链路。线104代表网络节点14和交换机10之间的数据链路。线105代表网络节点15和交换机10之间的数据链路。线106代表网络节点16和交换机10之间的数据链路。线107代表网络节点17和交换机10之间的数据链路。线108代表管理节点18和交换机10之间的数据链路。
图2示出利用链路层以及端到端的基于信用的流控制的缓冲器管理的使用。图1中示出的每个网络节点实施具有物理层,数据链路层以及事物层的分层的协议。例如,网络节点14包括数据链路层21,如图1所示。网络节点14的描述是示范性的,图1所示的所有网络节点可以包括图2示出的功能性。
数据链路层21与缓冲器管理模块22通信。缓冲器管理模块22执行链路层基于信用的流控制。链路层表示的是控制两个网络设备之间在数据链路上的数据流的协议层。例如,交换机10(图1所示)以及网络节点14都是在数据链路104上通信的网络设备。交换机10和网络节点14执行对于在数据链路104上流动的所有TLP的链路层流控制。
缓冲器管理22管理接收(RX)缓冲器24和发送(TX)缓冲器23。接收缓冲器24包括三个不同的存储器,用于接收三种不同类型的消息数据包。每个存储器例如实现为随机存取存储器(RAM)。三个存储器中的第一个接收邮递性(posted)消息数据包。三个存储器中的第二个接收非邮递性(non-posted)消息数据包。三个存储器中的第三个接收完结(completion)。缓冲器管理22为三个存储器中的每一个执行基于信用的流控制。
缓冲器管理22在链路层上执行基于信用的流控制。在链路层基于信用的流控制中,信用基于接收从数据链路层进入事物层的数据的接收缓冲器中可用空间的量。交换机10和网络节点14相互通告初始信用限制。仅当发送TLP不会超过交换机10的当前信用限制时,网络节点14才在数据链路104上发送该TLP。当发送TLP时,网络节点14将该TLP使用的信用的数量从交换机10的当前信用限制中减去。当网络节点14完成处理来自接收缓冲器24的TLP时,网络节点14将信用的返回用信号通知交换机10。DLLP被用于在节点14和交换机10之间传送流控制信息。类似地,链路层基于信用的流控制在交换机10和网络节点11到17中的每一个之间执行。
缓冲器管理模块25执行端到端的基于信用的流控制。缓冲器管理25管理接收(RX)缓冲器27和发送(TX)缓冲器26。接收缓冲器27包括三个不同的存储器,用于接收三种不同类型的消息数据包。每个存储器例如实现为随机存取存储器(RAM)。三个存储器中的第一个接收邮递性消息数据包。三个存储器中的第二个接收非邮递性消息数据包。三个存储器中的第三个接收完结。缓冲器管理25为三个存储器中的每一个执行基于信用的流控制。
缓冲器管理25执行端到端的基于信用的流控制。端到端的基于信用的流控制指的是为在网络端点之间的数据传输执行的基于信用的流控制。例如,端点可以是网络节点或者具有多个I/O功能的网络节点内的I/O功能。具有多个I/O功能的网络节点的示例是具有多个端口的网络接口卡。当每个端口具有独立的网络控制器时,该网络控制器可以用作节点内的I/O功能从而用作网络端点。例如,网络控制器可以是以太网控制器或者根据另一网络协议操作的网络控制器。
尽管交换机10是网络设备,交换机10不作为网络端点工作。因此,交换机10不实施端到端的基于信用的流控制。
执行端到端的流控制防止网络被充满不能被卸载到网络构造之外的流量。例如,端到端流控制由两部分构成:(1)流控制初始化,以及(2)流控制更新。
流控制初始化在网络启动时在PCIe训练协议执行之后,并且在管理节点18建立了主机节点和I/O节点之间的绑定之后执行。对于每个绑定,网络节点发出流控制启动(FC_Init1)数据包直到该网络节点收到来自对应的网络节点的FC_Init1 1数据包。一旦用于该绑定的FC_Init 1数据包被收到,网络节点发出流控制启动(FC_Init2)数据包直到该网络节点收到来自对应的网络节点的FC_Init1 2数据包。在此点上每个网络节点准备好执行对于该绑定的端到端流控制。
流控制更新是对于端到端流控制的信用更新。例如,信用更新用于封装的事物层数据包(TLP)。信用更新作为邮递性消息数据包被发送。例如,信用更新基于消息数据包的有效载荷的大小。有效载荷包括每个数据包一个报头单元和每个数据包n个数据单元,其中“n”等于Roundup(长度/FC单元大小),其中“FC单元大小”是4个双字(dword),并且其中“长度”是数据包中包括这些数据单元的部分的长度。
图3是示出缓冲器管理模块25的实施的简化框图。如箭头31所表示,接收模块35处理从接收缓冲器24(图2中所示)的消息数据包的接收,并且将它们置于先进先出(FIFO)缓冲器36。
流控制/配置(FC/CFG)过滤器37用于识别配置信息和信用更新信息。信用限制信息发送到调节器43。配置信息例如管理节点18在网络配置期间发送的网络配置信息。过滤器37发送配置信息到网络配置(CONFIG)模块42。不包含配置信息或信用限制信息的消息数据包被过滤器37放入FIFO缓冲器38。
解封器39从FIFO缓冲器38接收消息数据包。解封器39剥去数据包报头,并且如箭头33所示,将消息数据包的剩余部分置于RX缓冲器27(图2所示)内的适当的存储器,这取决于该消息数据包是邮递性数据包、非邮递性数据包或是完结。
对于置于RX缓冲器27中的存储器内的每个消息数据包,信用限制(CL)FIFO 40存储包类型和包大小。当网络节点的设备内核处理来自RX缓冲器27内的存储器之一内的消息数据包时,该信息由解封器39发送到应答器41。应答器41接着根据处理的是哪种类型(邮递性、非邮递性、或是完结)的消息数据包,访问CL FIFO 40中的适当的FIFO,来确定包大小。接着应答器41创建信用更新数据包,该信用更新数据包被邮递到流控制优先级(FCP)存储器46。发送模块48接着将该信用更新数据包转发到TX缓冲器23(图2中所示)中,如箭头32所示。
FCP存储器46用于发送信用更新数据包来避免活锁,因为信用更新数据包是邮递性的TLP,因而如果通过TLP存储器47来发送它们可被封锁。
封装器44从TX缓冲器26(图2所示)接收数据,如箭头34所示,并添加报头以形成TLP包。TLP包被置于TLP存储器47。发送模块48接着将信用更新数据包转发到TX缓冲器23(图2所示),如箭头32所表示。
在封装器44将TLP包置于TLP存储器47之前,封装器44检查以确定该消息的端点有空间来接收该消息。这通过检查调节器43内存储的信息以确定该端点的当前信用限制来实现。
对于网络节点14的每个绑定,调节器43跟踪三种消息类型中每一个的信用限制。在配置时,网络节点14的每个绑定的信用限制由管理节点18确定,并作为配置信息发送到网络配置模块42。对于每种消息类型有独立的信用限制。在配置期间,网络配置模块42使用独立的配置存储器45来发送配置消息。发送模块48将配置消息转发到TX缓冲器23(图2所示),如箭头32所表示。
调节器43从网络配置模块42获得初始信用限制。此后,每当封装器44发送消息数据包以及每当网络节点14接收到信用更新信息,调节器43更新信用限制。在调节器43内,用于计数信用的计数器是模的,并且模运算被用于确定当前信用限制。
上述讨论仅公开和描述了本发明的示范性方法和实施例。如本领域普通技术人员将理解的,在不偏离其精神或基本特征下,本发明可以以其他特定形式来实施。因此,本发明的公开意图是示例性的,而不限制本发明的范围,本发明的范围由所附权利要求来阐述。

Claims (10)

1.一种网络中的网络节点(11-17),该网络节点(11-17)包括:
第一接收缓冲器(24);
第一缓冲器管理模块(22),其对于第一缓冲器管理模块(22)置于第一接收缓冲器(24)中的网络数据包执行链路层基于信用的流控制,其中,在所述链路层基于信用的流控制中,信用基于接收从数据链路层进入事务层的数据的接收缓冲器中可用空间的量,并且交换机和网络节点相互通告初始信用限制;
第二接收缓冲器(27);以及
第二缓冲器管理模块(25),其对于第二缓冲器管理模块(25)从第一接收缓冲器(24)接收并在将数据放到第二接收缓冲器(27)中之前处理的网络数据包执行端到端的基于信用的流控制,其中,所述第二缓冲器管理模块(25)包括封装器(44)和调节器(43),所述调节器(43)从网络配置模块(42)获得初始信用限制,此后每当所述封装器(44)发送消息数据包以及每当所述网络节点接收到信用更新信息,所述调节器(43)更新信用限制。
2.如权利要求1中所述的网络节点(11-17),其中网络根据外设部件互连快运(PCIe)协议来运行。
3.如权利要求1中所述的网络节点(11-17),其中第二缓冲器管理模块(25)包括:
解封器(39),其在将消息数据包的其余部分放入第二接收缓冲器(27)中之前去除包报头;以及
应答器(41),其提供信用更新信息给网络上的发送消息数据包给网络节点(11-17)的端点。
4.如权利要求1中所述的网络节点(11-17),其中:
所述封装器(44)形成用于传送到网络上的端点的网络数据包;以及
所述调节器(43)指示由封装器(44)形成的网络数据包的目的地网络节点(11-17)是否有空间来接收该网络数据包。
5.如权利要求1中所述的网络节点(11-17),其中:
所述封装器(44)形成用于传送到网络上的端点的网络数据包;以及
所述调节器(43)指示由封装器(44)形成的网络数据包的目的地网络节点(11-17)是否有空间来接收该网络数据包,该调节器(43)跟踪网络节点(11-17)到网络上的端点的每个绑定的信用限制。
6.如权利要求1中所述的网络节点(11-17),其中:
所述封装器(44)形成用于传送到网络上的端点的网络数据包;以及
所述调节器(43)指示由封装器(44)形成的网络数据包的目的地网络节点(11-17)是否有空间来接收该网络数据包,该调节器(43)跟踪网络节点(11-17)到网络上的端点的每个绑定的信用限制,其中调节器(43)包括用于对信用计数的计数器,该计数器是模的,并且调节器(43)使用模运算来确定当前信用限制。
7.如权利要求1中所述的网络节点(11-17),其中第二缓冲器管理模块(25)还包括:
解封器(39),其在将数据包的其余部分放入第二接收缓冲器(27)中之前去除包报头;和
应答器(41),其提供信用更新信息给网络上的发送消息数据包给网络节点(11-17)的端点;
其中所述封装器(44)形成用于传送到网络上的端点的网络数据包;以及
所述调节器(43)指示由封装器(44)形成的网络数据包的目的地网络节点(11-17)是否有空间来接收该网络数据包。
8.如权利要求1中所述的网络节点(11-17),其中第二缓冲器管理模块(25)还包括:
解封器(39),其在将数据包的其余部分放入第二接收缓冲器(27)中之前去除包报头;
应答器(41),其提供信用更新信息给网络上的发送消息数据包给网络节点(11-17)的端点;以及
信用限制存储器(40),其存储与由解封器(39)处理的每个数据包的包类型和包大小相关的信息,该信息由应答器(41)用于确定提供给网络上的端点的信用更新信息。
9.如权利要求1中所述的网络节点(11-17),其中第二缓冲器管理模块(25)还包括:
解封器(39),其在将数据包的其余部分放入第二接收缓冲器(27)中之前去除包报头;
应答器(41),其提供信用更新信息给网络上的发送消息数据包给网络节点(11-17)的端点;以及
过滤器(37),其去除第二缓冲器管理模块(25)从第一接收缓冲器(24)接收的网络数据包内的配置信息,并将该配置信息转发给网络配置模块(42),过滤器(37)还从第二缓冲器管理模块(25)从第一接收缓冲器(24)接收的网络数据包去除信用更新信息,并将该信用更新信息转发到调节器(43);
其中所述封装器(44)形成用于传送到网络上的端点的网络数据包;
所述调节器(43)指示由封装器(44)形成的网络数据包的目的地网络节点(11-17)是否有空间来接收该网络数据包,该调节器(43)跟踪网络节点(11-17)到网络上的端点的每个绑定的信用限制;
所述网络配置模块(42)在网络配置时存储网络节点(11-17)到网络上的端点的每个绑定的初始信用限制,该网络配置模块(42)提供初始信用限制给调节器(43)。
10.一种第一网络节点(11-17)提供对于在网络上传送的网络数据包的流控制所采用的方法,该方法包括:
对于在第一网络节点(11-17)和链接到第一网络节点(11-17)的网络设备(10)之间流动的网络数据包提供链路层基于信用的流控制;其中,在所述链路层基于信用的流控制中,信用基于接收从数据链路层进入事务层的数据的接收缓冲器中可用空间的量,并且交换机和网络节点相互通告初始信用限制;以及
对于在网络节点(11-17)和网络上的第二网络节点(11-17)之间流动的网络数据包提供端到端的基于信用的流控制,所述第二网络节点(11-17)不是链接到第一网络节点(11-17)的网络设备(10);其中,从网络配置模块(42)获得初始信用限制,此后每当形成用于传送到网络上的端点的网络数据包的封装器(44)发送消息数据包以及每当所述网络节点接收到信用更新信息,通过调节器(43)更新信用限制。
CN2008800236854A 2007-07-06 2008-05-21 网络中的端到端流控制 Active CN101689171B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/825,492 2007-07-06
US11/825,492 US8174977B2 (en) 2007-07-06 2007-07-06 End-to-end flow control in a network
PCT/US2008/006579 WO2009008948A1 (en) 2007-07-06 2008-05-21 End-to-end flow control in a network

Publications (2)

Publication Number Publication Date
CN101689171A CN101689171A (zh) 2010-03-31
CN101689171B true CN101689171B (zh) 2013-08-21

Family

ID=40221333

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008800236854A Active CN101689171B (zh) 2007-07-06 2008-05-21 网络中的端到端流控制

Country Status (5)

Country Link
US (1) US8174977B2 (zh)
CN (1) CN101689171B (zh)
DE (1) DE112008001727T5 (zh)
GB (1) GB2462961B (zh)
WO (1) WO2009008948A1 (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7975027B2 (en) * 2007-08-06 2011-07-05 International Business Machines Corporation Credit depletion notification for transmitting frames between a port pair
US7787375B2 (en) * 2007-08-06 2010-08-31 International Business Machines Corporation Performing a recovery action in response to a credit depletion notification
US9416034B2 (en) * 2009-01-28 2016-08-16 Pentair Water Pool And Spa, Inc. pH balancing system
JP2011081769A (ja) * 2009-09-14 2011-04-21 Ricoh Co Ltd データ転送装置、データ転送デバイスおよびデータ転送方法
US8819305B2 (en) 2009-11-16 2014-08-26 Intel Corporation Directly providing data messages to a protocol layer
US8463901B2 (en) * 2010-05-28 2013-06-11 Arbor Networks, Inc. Stateful flow information table method and system for packet inspection system
CN102656848B (zh) * 2010-11-09 2015-05-13 华为技术有限公司 数据包的传输方法及装置
US8352648B1 (en) * 2010-11-22 2013-01-08 Xilinx, Inc. Credit-based flow control
US10270652B2 (en) 2012-04-25 2019-04-23 Hewlett Packard Enterprise Development Lp Network management
CN103051482B (zh) * 2012-12-28 2015-09-30 中国航空工业集团公司第六三一研究所 基于fc交换机的一种端口隔离及恢复的实现方法
CN104375967B (zh) * 2013-08-15 2017-09-05 华为技术有限公司 一种应用于pci‑e的流量控制方法、设备及系统
US9548960B2 (en) 2013-10-06 2017-01-17 Mellanox Technologies Ltd. Simplified packet routing
US9973435B2 (en) 2015-12-16 2018-05-15 Mellanox Technologies Tlv Ltd. Loopback-free adaptive routing
US10819621B2 (en) 2016-02-23 2020-10-27 Mellanox Technologies Tlv Ltd. Unicast forwarding of adaptive-routing notifications
US10079782B2 (en) * 2016-03-31 2018-09-18 Mellanox Technologies Tlv Ltd. Facilitating communication of data packets using credit-based flow control
US10178029B2 (en) 2016-05-11 2019-01-08 Mellanox Technologies Tlv Ltd. Forwarding of adaptive routing notifications
US10200294B2 (en) * 2016-12-22 2019-02-05 Mellanox Technologies Tlv Ltd. Adaptive routing based on flow-control credits
US10644995B2 (en) 2018-02-14 2020-05-05 Mellanox Technologies Tlv Ltd. Adaptive routing in a box
US20190236038A1 (en) * 2018-12-20 2019-08-01 Swadesh Choudhary Buffered interconnect for highly scalable on-die fabric
US11005724B1 (en) 2019-01-06 2021-05-11 Mellanox Technologies, Ltd. Network topology having minimal number of long connections among groups of network elements
CN114981789A (zh) * 2020-01-15 2022-08-30 华为技术有限公司 一种数据流量控制方法、PCIe控制器及PCIe装置
US11575594B2 (en) 2020-09-10 2023-02-07 Mellanox Technologies, Ltd. Deadlock-free rerouting for resolving local link failures using detour paths
US11411911B2 (en) 2020-10-26 2022-08-09 Mellanox Technologies, Ltd. Routing across multiple subnetworks using address mapping
US11870682B2 (en) 2021-06-22 2024-01-09 Mellanox Technologies, Ltd. Deadlock-free local rerouting for handling multiple local link failures in hierarchical network topologies
US11765103B2 (en) 2021-12-01 2023-09-19 Mellanox Technologies, Ltd. Large-scale network with high port utilization
CN114422441A (zh) * 2022-03-30 2022-04-29 北京奥星贝斯科技有限公司 控制流量的方法及装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5528591A (en) * 1995-01-31 1996-06-18 Mitsubishi Electric Research Laboratories, Inc. End-to-end credit-based flow control system in a digital communication network
US5673253A (en) 1996-02-29 1997-09-30 Siemens Business Communication Systems Dynamic allocation of telecommunications resources
US6078565A (en) * 1997-06-20 2000-06-20 Digital Equipment Corporation Method and apparatus to expand an on chip FIFO into local memory
US6683850B1 (en) * 1997-08-29 2004-01-27 Intel Corporation Method and apparatus for controlling the flow of data between servers
US6570850B1 (en) * 1998-04-23 2003-05-27 Giganet, Inc. System and method for regulating message flow in a digital data network
US6801500B1 (en) * 2000-05-18 2004-10-05 Cisco Technology, Inc. Method and apparatus for providing reserved rates to multiple flows on a network interface
US7035220B1 (en) * 2001-10-22 2006-04-25 Intel Corporation Technique for providing end-to-end congestion control with no feedback from a lossless network
US7251219B2 (en) * 2002-07-03 2007-07-31 Intel Corporation Method and apparatus to communicate flow control information in a duplex network processor system
US7096306B2 (en) * 2002-07-31 2006-08-22 Hewlett-Packard Development Company, L.P. Distributed system with cross-connect interconnect transaction aliasing
US7327680B1 (en) * 2002-11-05 2008-02-05 Cisco Technology, Inc. Methods and apparatus for network congestion control
US7051304B2 (en) * 2003-05-01 2006-05-23 Sun Microsystems, Inc. Distributed infiniband verification protocol
US7225274B2 (en) * 2003-05-23 2007-05-29 Applied Micro Circuits Corporation Method and apparatus for transferring data across a protocol bridge
US20060067356A1 (en) * 2004-08-23 2006-03-30 Han-Gyoo Kim Method and apparatus for network direct attached storage
EP1839183A2 (en) * 2004-12-01 2007-10-03 Koninklijke Philips Electronics N.V. A data processing system and a method for synchronizing data traffic
US8285907B2 (en) * 2004-12-10 2012-10-09 Intel Corporation Packet processing in switched fabric networks
US7287114B2 (en) 2005-05-10 2007-10-23 Intel Corporation Simulating multiple virtual channels in switched fabric networks
US7698477B2 (en) * 2005-11-30 2010-04-13 Lsi Corporation Method and apparatus for managing flow control in PCI express transaction layer
JP2009534979A (ja) * 2006-04-24 2009-09-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ メッセージのエンドツーエンドフロー制御を有する電子デバイス

Also Published As

Publication number Publication date
GB0921280D0 (en) 2010-01-20
CN101689171A (zh) 2010-03-31
DE112008001727T5 (de) 2010-05-06
US8174977B2 (en) 2012-05-08
WO2009008948A1 (en) 2009-01-15
US20090010159A1 (en) 2009-01-08
GB2462961A (en) 2010-03-03
GB2462961B (en) 2012-03-07

Similar Documents

Publication Publication Date Title
CN101689171B (zh) 网络中的端到端流控制
US7426599B2 (en) Systems and methods for writing data with a FIFO interface
KR100715710B1 (ko) 데이터 처리 장치 및 흐름 제어 방법
EP2497023B1 (en) Multiprocessing computing with distributed embedded switching
CN104239256B (zh) 通过sas的pcie隧穿
US8880654B2 (en) Protocol adapter for passing diagnostic messages between vehicle networks and a host computer
CN113227991B (zh) 替代协议选择
CN107623646A (zh) 数据流传输方法、发送设备及接收设备
WO2015057872A1 (en) Noc interface protocol adaptive to varied host interface protocols
CN104350720B (zh) 提供用于双向串行互连的串行协议的装置、方法和系统
CN102158403B (zh) 一种适用于片上网络的高效数据流传输通信系统及其工作方法
CN106953853A (zh) 一种片上网络千兆以太网资源节点及其工作方法
CN107967227A (zh) 一种基于spi的通信方法及spi主机、spi从机
CN100437537C (zh) 在快速pci结构上产生来自pci装置的多个业务类别
TW200921402A (en) A distributed interconnect bus apparatus
CN101427535A (zh) 具有消息的端到端流控制的电子设备
CN107506324A (zh) 转接设备、远程通信系统、数据传输方法及装置
CN101494616A (zh) 通信协议中分组长度的灵活性的实现
CN104598430A (zh) 一种cpu互联扩展系统的网络接口互联设计与控制系统
CN107911372A (zh) 一种基于逻辑器件实现串口设备接入以太网的方法和装置
CN104426866B (zh) 一种数据传输方法及装置
CN103078720B (zh) 报文处理方法及装置
CN114116574B (zh) 一种数据传输的方法、装置、电子设备及存储介质
CN107302522B (zh) 基于USB的SpaceWire网络即插即用基础协议
CN102694712A (zh) 网络系统及网络至网络桥接器

Legal Events

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

Effective date of registration: 20170123

Address after: American Texas

Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP

Address before: American Texas

Patentee before: Hewlett Packard Development Co.