Protocol-independent packet routing

    公开(公告)号:US09729446B1

    公开(公告)日:2017-08-08

    申请号:US15374128

    申请日:2016-12-09

    Applicant: Google Inc.

    CPC classification number: H04L45/7453 H04L45/7457 H04L69/22

    Abstract: In one aspect, one or more processors may be coupled to a content-addressable memory, a first memory and a second memory. The one or more processors may be configured to receive a data packet, read a predetermined number of bytes from the data packet, and match the read bytes to patterns corresponding to rows of the content-addressable memory. Further, the one or more processors may determine a number associated with the matched row, and based on the number, determine an initial routing instruction. The one or more processors may then determine which bits of the read bytes to hash using hash information stored in the first memory, hash the bits to generate a hash value, determine whether the value corresponds to routing information in the second memory, and route the data packet based on the routing information.

    Protocol-independent packet routing
    2.
    发明授权
    Protocol-independent packet routing 有权
    协议无关的分组路由

    公开(公告)号:US09553808B1

    公开(公告)日:2017-01-24

    申请号:US14450593

    申请日:2014-08-04

    Applicant: Google Inc.

    CPC classification number: H04L45/7453 H04L45/7457 H04L69/22

    Abstract: In one aspect, one or more processors may be coupled to a content-addressable memory, a first memory and a second memory. The one or more processors may be configured to receive a data packet, read a predetermined number of bytes from the data packet, and match the read bytes to patterns corresponding to rows of the content-addressable memory. Further, the one or more processors may determine a number associated with the matched row, and based on the number, determine an initial routing instruction. The one or more processors may then determine which bits of the read bytes to hash using hash information stored in the first memory, hash the bits to generate a hash value, determine whether the value corresponds to routing information in the second memory, and route the data packet based on the routing information.

    Abstract translation: 在一个方面,一个或多个处理器可以耦合到内容可寻址存储器,第一存储器和第二存储器。 一个或多个处理器可以被配置为接收数据分组,从数据分组读取预定数量的字节,并且将读取的字节与对应于内容可寻址存储器的行的模式相匹配。 此外,一个或多个处理器可以确定与匹配行相关联的数字,并且基于该数量,确定初始路由指令。 一个或多个处理器然后可以使用存储在第一存储器中的散列信息来确定所读取的字节的哪些比特进行散列,对该比特进行散列以产生哈希值,确定该值是否对应于第二存储器中的路由信息​​,并将 数据包基于路由信息。

    Hash collision avoidance in network routing
    3.
    发明授权
    Hash collision avoidance in network routing 有权
    网络路由中的哈希冲突避免

    公开(公告)号:US09270592B1

    公开(公告)日:2016-02-23

    申请号:US14163562

    申请日:2014-01-24

    Applicant: Google Inc.

    CPC classification number: H04L45/7453 H04L45/745 H04L45/7457

    Abstract: Network device and method for routing a packet and setting up a new flow. The device includes a packet classifier, a field-selection table, a hash module, and a routing table. A packet is routed by finding an entry in the field-selection table using the packet classifier, selecting bits from the packet based on the entry in the field-selection table, and hashing the selected bits along with an identifier from the packet classifier or the field-selection table, using the hash module. The hash result is used to locate instructions in the routing table. When setting up a new flow, the hash module result may point to an existing entry in the routing table. In such instances, a new entry is added to the packet classifier, such that the hash module will produce a different result that points to an available entry in the routing table.

    Abstract translation: 用于路由数据包并设置新流的网络设备和方法。 该设备包括分组分类器,字段选择表,散列模块和路由表。 通过使用分组分类器在字段选择表中找到条目来路由分组,基于字段选择表中的条目从分组中选择比特,并且将所选择的比特与来自分组分类器的标识符一起进行散列 字段选择表,使用散列模块。 散列结果用于定位路由表中的指令。 设置新流时,散列模块结果可能指向路由表中的现有条目。 在这种情况下,将新条目添加到分组分类器中,使得散列模块将产生指向路由表中的可用条目的不同结果。

    Protocol-independent receive-side scaling

    公开(公告)号:US09755972B1

    公开(公告)日:2017-09-05

    申请号:US14734629

    申请日:2015-06-09

    Applicant: Google Inc.

    CPC classification number: H04L45/7453 H04L45/7457 H04L49/90

    Abstract: A system and method for protocol independent receive side scaling (RSS) includes storing a plurality of RSS hash M-tuple definitions, each definition corresponding to one of a set of possible protocol header combinations for routing an incoming packet, the set of possible protocol header combinations being modifiable to include later-developed protocols. Based on initial bytes of the incoming packet, a pattern of protocol headers is detected, and used to select one of the plurality of RSS hash M-tuple definitions. The selected RSS hash M-tuple definition is applied as a protocol-independent arbitrary set of bits to the headers of the incoming packet to form a RSS hash M-tuple vector, which is used to compute a RSS hash. Based on the RSS hash, a particular queue is selected from a set of destination queues identified for the packet, and the packet is delivered to the selected particular queue.

    Method and system for network micro flow control
    5.
    发明授权
    Method and system for network micro flow control 有权
    网络微流控制方法与系统

    公开(公告)号:US09419902B1

    公开(公告)日:2016-08-16

    申请号:US14143579

    申请日:2013-12-30

    Applicant: Google Inc.

    CPC classification number: H04L47/34 H04L47/122 H04L47/18 H04L47/25

    Abstract: The present technology pertains to unilaterally interleaving individual data packets of long bursts of multi-packet messages in various sequence patterns to be sent to one or more receivers over a network. Before determining a pattern, the sending device attempts to reduce the transmission length of the long bursts of the data packets into multiple chunks. Subsequently, the sending device generates a sequence pattern of the individual data packets and consecutively transmits these packets to their respective receivers. The determined sequence pattern may be based upon outbound limits at the sender, inbound limits at the one or more receivers, and various transmission priorities. Moreover, the sender may limit the data flow of any message transmission. The present technology does not require feedback from the network's components or from the network itself to micro flow control the individual data packets.

    Abstract translation: 本技术涉及以各种序列模式单向交织要发送到一个或多个接收机的多分组消息的长突发的单个数据分组。 在确定模式之前,发送设备尝试将数据分组的长突发的传输长度减小到多个块。 随后,发送装置生成各个数据分组的序列模式,并将这些分组连续发送到各自的接收机。 确定的序列模式可以基于发送方的出站限制,一个或多个接收机处的入站限制以及各种传输优先级。 此外,发送者可以限制任何消息传输的数据流。 本技术不需要网络组件的反馈或网络本身的微流控制各个数据包。

Patent Agency Ranking