IP Library › Granted Patent US 12,701,086
Granted Patent B2
US 12,701,086 · App. 18/374,538 · Granted Aug 4, 2026

Establishing connections in a computer network

Inventors: Yuval Avnery (Hahotrim, IL); Charlie Mubariki (Kiryat Shmona, IL)
Assignee: Mellanox Technologies Ltd.
H04L47/6225H04L47/6255H04L49/254
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,701,086
App. No.
18/374,538
Filed
Sep 28, 2023
Granted
Aug 4, 2026
Kind
B2
Art Unit
2468
USPC
370/412
Abstract

A system and method for establishing connections in a computer network supporting a remote direct memory access (RDMA) protocol, may include: generating a plurality of dummy queue pairs, each generated with dummy parameter values; and upon receiving a request to establish a connection from a first computer node in the computer network, turning one of the dummy queue pairs into a functional queue pair by changing a subgroup of the dummy parameter values to true parameter values.

Claims (28)

1 . A system for establishing connections in a computer network supporting a remote direct memory access (RDMA) protocol, the system comprising:

a memory; and

a processor configured to:

generate a plurality of dummy queue pairs by using dummy parameter values to perform state transitions of the dummy queue pairs up to a ready-to-send state of the dummy queue pair before receiving requests to establish a connection; and

upon receiving a request to establish a connection from a first computer node in the computer network, turn one of the dummy queue pairs into a functional queue pair by changing a subgroup of the dummy parameter values to true parameter values.

2 . The system of claim 1 , wherein each of the dummy queue pairs is associated with one computer node of a plurality of computer nodes in the computer network, and wherein the processor is further to turn one of the dummy queue pairs into a functional queue pair by turning the dummy queue pair associated with the first computer node into the functional queue pair.

3 . The system of claim 1 , wherein the subgroup of the dummy parameters comprises at least one of: a real address vector, a destination queue pair, a packet sequence number (PSN), and maximum number of outstanding read requests.

4 . The system of claim 1 , wherein the processor is further configured to change the dummy parameter values to the true parameter values using a ready to send to ready to send (RTS2RTS) command modified to change the subgroup of the dummy parameter values to the true parameter values.

5 . The system of claim 1 , wherein the processor is further configured to obtain the true parameter values are provided from the client in the request.

6 . The system of claim 1 , wherein the processor is further configured to change the dummy parameter values to the true parameter values using dedicated hardware.

7 . The system of claim 1 , wherein the processor is further configured to:

receive a plurality of requests to establish a connection from other computer nodes; and

scatter the plurality of requests to establish a connection to a plurality of queues.

8 . The system of claim 1 , wherein the processor is further configured to send an accept message to the first computer node after turning the dummy queue pair into a functional queue pair.

9 . The system of claim 1 , wherein receiving the request command and sending the accept message conform to an unreliable communication protocol, wherein the processor is further to encapsulate the messages into packets of a reliable communication protocol.

10 . A method for establishing connections in a computer network supporting a remote direct memory access (RDMA) protocol, the method comprising:

generating a plurality of dummy queue pairs by using dummy parameter values to perform state transitions of the dummy queue pairs up to a ready-to-send state of the dummy queue pair before receiving any request to establish a connection; and

upon receiving a request to establish a connection from a first computer node in the computer network, turning one of the dummy queue pairs into a functional queue pair by changing a subgroup of the dummy parameter values to true parameter values.

11 . The method of claim 10 , wherein each of the dummy queue pairs is associated with one computer node of a plurality of computer nodes in the computer network, and wherein turning one of the dummy queue pairs into a functional queue pair comprises turning the dummy queue pair associated with the first computer node into the functional queue pair.

12 . The method of claim 10 , wherein the subgroup of the dummy parameters comprises at least one of: a real address vector, a destination queue pair, a packet sequence number (PSN), and maximum number of outstanding read requests.

13 . The method of claim 10 , wherein the dummy parameter values are changed to the true parameter values using a ready to send to ready to send (RTS2RTS) command modified to change the subgroup of the dummy parameter values to the true parameter values.

14 . The method of claim 10 , wherein the true parameter values are provided from the client to the server in the request.

15 . The method of claim 10 , wherein the dummy parameter values are changed to the true parameter values using dedicated hardware.

16 . The method of claim 10 , further comprising:

receiving a plurality of requests to establish a connection from other computer nodes; and

scattering the plurality of requests to establish a connection to a plurality of queues.

17 . The method of claim 10 , further comprising sending an accept message to the first computer node after turning the dummy queue pair into a functional queue pair.

18 . The method of claim 17 , wherein the request and the accept message conform to an unreliable communication protocol, the method comprising encapsulating the request and the accept message into packets of a reliable communication protocol.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2023
From: AVNERY, YUVAL; MUBARIKI, CHARLIE
To: MELLANOX TECHNOLOGIES LTD
Reel/Frame 065224/0340 →
Continuity (1)
Related Publication 20250112872A1 · Apr 3, 2025
References Cited (21)
US 7620693B1 · Mott · 2009 [cited by examiner]
US 10999364B1 · Itigin · 2021 [cited by examiner]
US 20020152328A1 · Kagan · 2002 [cited by examiner]
US 20160248628A1 · Pandit · 2016 [cited by examiner]
US 20160342567A1 · Tsirkin · 2016 [cited by examiner]
US 20170168986A1 · Sajeepa · 2017 [cited by examiner]
US 20170302526A1 · Chen · 2017 [cited by examiner]
US 20180011763A1 · Tanaka · 2018 [cited by examiner]
US 20180152278A1 · Chen · 2018 [cited by examiner]
US 20180267919A1 · Burstein · 2018 [cited by examiner]
US 20190317909A1 · Gupta · 2019 [cited by examiner]
US 20210004165A1 · Benisty · 2021 [cited by examiner]
US 20210157691A1 · LePera · 2021 [cited by examiner]
US 20210397379A1 · Leconte · 2021 [cited by examiner]
US 20220060418A1 · Le · 2022 [cited by examiner]
US 20220391333A1 · Veluswamy · 2022 [cited by examiner]
US 20230214157A1 · Soi · 2023 [cited by examiner]
US 20240305637A1 · Horowitz · 2024 [cited by examiner]
US 20240393954A1 · Dhatchinamoorthy · 2024 [cited by examiner]
US 20240427499A1 · Yokokura · 2024 [cited by examiner]
InfiniBAnd™ Architecture Specification vol. 1; Release 1.2.1 Nov. 2007. [cited by applicant]