# US 7,609,710 B1 · Method and system for credit management in a networking system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 7,609,710 B1
- Document ID: US7609710B1
- Status: Granted
- Kind: B1
- Application number: 12/019,094
- Filed: 2008-01-24
- Granted: 2009-10-27
- Earliest claimed: 2008-01-24
- Assignees: QLOGIC, Corporation
- Inventors: Frank R. Dropps; Craig M. Verba; Gary M. Papenfuss
- Web page: https://patentgrep.com/patent/US7609710B1

## CPC

- H04L 49/506: Backpressure
- H04L 49/357: {Fibre channel switches}
- H04L 49/552: by ensuring the integrity of packets received through redundant connections
- H04L 49/101: using crossbar or matrix
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

A method for credit management in a network system is provided. The method comprises receiving an incoming frame at a receive port of a network device; determining a frame length of the incoming frame; based on the frame length, determining whether to store the frame in a first memory storage space or a second memory storage space, wherein the first memory storage space includes a plurality of slots and each of the plurality of slots can store only one frame regardless of frame size; and the second memory storage space includes a plurality of slots and each of the plurality of slots can store more than one frame; and if the incoming frame is stored in the second memory storage space, transmitting a signal immediately to another port indicating that credit is available.

## Claims

### Claim 1

A method for credit management in a network system, comprising:
receiving an incoming frame at a receive port of a network device;
determining a frame length of the incoming frame;
based on the frame length, determining whether to store the frame in a first memory storage space or a second memory storage space, wherein the first memory storage space includes a plurality of slots and each of the plurality of slots can store only one frame regardless of frame size; and the second memory storage space includes a plurality of slots and each of the plurality of slots can store more than one frame; if the incoming frame is stored in the second memory storage space, transmitting a signal immediately to another port indicating that credit is available; and if the incoming frame is stored in the first memory storage space, transmitting a signal to another port indicating that credit is available only after a frame has been processed so that a slot is released from the first memory storage space.

### Claim 2 (depends on 1)

The method of claim 1, wherein the first memory storage space is a receive buffer at a receive port of a network switch and the second memory storage space is a first-in-first out buffer (FIFO) at the receive port.

### Claim 3 (depends on 2)

The method of claim 2, wherein the network switch is a Fibre Channel switch.

### Claim 4 (depends on 3)

The method of claim 3, wherein the signal indicating credit is a R_RDY primitive used in a Fibre Channel network.

### Claim 5 (depends on 3)

The method of claim 3, wherein the signal indicating credit is a VC_RDY primitive used in a Fibre Channel network that supports virtual lanes.

### Claim 6 (depends on 1)

The method of claim 1, wherein a frame monitoring logic monitors the incoming frame and based on frame size determines if the incoming frame can be stored in the second memory storage space.

### Claim 7 (depends on 1)

The method of claim 1, wherein the network switch is one or more of an InfiniBand switch and an Ethernet switch.

### Claim 8

A buffer structure for a network port, comprising:
a frame monitoring logic for monitoring and determining a frame length of an incoming frame received at the network port;
a first memory storage space that includes a plurality of slots, where each of the plurality of slots can store only one frame regardless of frame size; and
a second memory storage space that includes a plurality of slots, where each of the plurality of slots can store more than one frame; wherein depending on the frame length, the incoming frame is either stored in the first memory storage space or the second memory storage space; if the incoming frame is stored in the second memory storage space, a signal is immediately transmitted to another port indicating that credit is available to store more frames; and if the incoming frame is stored in the first memory storage space, transmitting a signal to another port indicating that credit is available to store more frames only after a frame has been processed so that a slot is released from the first memory storage space.

### Claim 9 (depends on 8)

The structure of claim 8, wherein the first memory storage space is a receive buffer at a receive port of a network switch and the second memory storage space is a first-in-first out buffer (FIFO) at the receive port.

### Claim 10 (depends on 9)

The structure of claim 9, wherein the network switch is a Fibre Channel switch.

### Claim 11 (depends on 9)

The structure of claim 9, wherein the network switch is a Ethernet switch.

### Claim 12 (depends on 10)

The structure of claim 10, wherein the signal indicating credit is a R_RDY primitive used in a Fibre Channel network.

### Claim 13 (depends on 12)

The structure of claim 12, wherein the signal indicating credit is a VC_RDY primitive used in a Fibre Channel network that supports virtual lanes.

### Claim 14 (depends on 8)

The structure of claim 8, wherein the network port is a part of an InfiniBand switch.
