IP Library Granted Patent US 7,027,450
Granted Patent B2
US 7,027,450 · App. 10/368,682 · Granted Apr 11, 2006

Frame batching and compression for IP transmission

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 7,027,450
App. No.
10/368,682
Granted
Apr 11, 2006
Kind
B2
Abstract

A storage router and related method are presented for combining multiple host frames, such as Fibre Channel frames, together into a single datagram for tunneling transmission over an IP or similar network. The storage router operates by storing incoming host frames in a host frame buffer. When there is sufficient data in the buffer, multiple host frames are batched together, compressed, and converted into an IP datagram. The number of host frames to be batched together can be established through a variety of tests, including total bytes of data, number of frames, or through a time-out mechanism. The network layer then fragments the datagram into data link level frames, such as 1500 byte Ethernet frames. When the datagram arrives at the final destination, the segmented datagram is reconstructed, decompressed, and the multiple host frames are then extracted and passed on to the recipient host frame network.

Claims (47)

1. A method for transmitting host frames from a first host frame network to a second host frame network over a datagram network comprising the steps of:

a) creating a batch of frames consisting of a plurality of host frames received from the first host frame network, wherein an algorithm triggers the creation of the batch of frames;

b) compressing the batch of frames to create a compressed batch of frames;

c) forming a transport segment from the compressed batch of frames;

d) forming a datagram from the transport segment; and

e) transmitting the datagram over the datagram network.

2. The method of claim 1 , further comprising

f) receiving the datagram from the datagram network;

g) extracting the compressed batch of frames from the datagram;

h) decompressing the compressed batch of frames back into the batch of frames; and

i) transmitting the plurality of host frames in the batch of frames over the second host frame network.

3. The method of claim 1 , wherein the datagram network is an IP network, and the host frame networks are Fibre Channel networks.

4. The method of claim 1 , wherein the datagram network is an IP network, and the host frame networks are ESCON channels.

5. The method of claim 1 , wherein the datagram network is an IP network, the first host frame network is a Fibre Channel network, and the second host frame network is an ESCON channel.

6. The method of claim 1 , wherein the transport segment is formed by a local transport layer, and the local transport layer stores the compressed batch of frames in a buffer for retransmission when retransmission is desired by a remote transport layer.

7. The method of claim 1 , wherein the step of creating a batch of frames further comprises storing the plurality of host frames in a host frame buffer.

8. The method of claim 7 , wherein the step of creating a batch of frames further comprises combining the host frames received in the host frame buffer into the batch of frames when triggered by the algorithm.

9. The method of claim 8 , wherein the algorithm tracks the number of host frames received since the previous batch of frames was created and triggers the creation of a batch of frames when the number of host frames received exceeds a frames limit value.

10. The method of claim 9 , wherein the frames limit value is set heuristically to maximize data throughput over the datagram network.

11. The method of claim 9 , wherein the frames limit value is set heuristically to balance maximizing data throughput over the Internet protocol network without significantly increasing data latency.

12. The method of claim 8 , wherein the algorithm tracks the amount of time since the previous batch of frames was created and triggers the creation of a batch of frames when the amount of time exceeds a time limit value.

13. The method of claim 8 , wherein the algorithm tracks the total amount of data stored in the host frame buffer since the previous batch of frames was created and triggers the creation of the batch of frames when the tracked amount of data exceeds a frames limit value.

14. A storage router comprising:

a) a host frame interface that receives host frames;

b) a network interface in communication with a datagram network;

c) a processor capable of operating an algorithm, the algorithm triggering the formation of a batch of frames having a plurality of host frames received from the host frame interface;

d) a compression object that compresses the batch of frames into a compressed batch of frames;

e) a transport object that adds a transport header to the batch of frames to create a transport segment; and

f) a network object that adds a network header to the transport segment to create a network datagram, the network objecting presenting the datagram to the network interface for transmission over the datagram network.

15. The storage router of claim 14 , wherein the datagram network is an IP network.

16. The storage router of claim 15 , wherein the host frames are Fibre Channel frames.

17. The storage router of claim 14 , further comprising a host frame buffer memory that stores host frames received by the host frame interface.

18. The storage router of claim 14 , wherein the processor is implemented on a field programmable gate array.

19. A method for transmitting Fibre Channel frames from a first Fibre Channel network to a second Fibre Channel network over a Internet Protocol network comprising the steps of:

a) storing Fibre Channel frames received from the first Fibre Channel network on a host frame buffer;

b) creating a batch of frames consisting of a plurality of Fibre Channel frames stored on the host frame buffer;

c) compressing the batch of frames to create a compressed batch of frames;

d) forming a transport segment from the compressed batch of frames;

e) forming an IP datagram from the transport segment;

f) fragmenting the IP datagram into multiple data link frames;

g) transmitting the data link frames over the Internet Protocol network;

h) receiving the data link frames from the Internet Protocol network;

i) reforming the IP datagram from the received data link frames;

j) extracting the compressed batch of frames from the reformed IP datagram;

k) decompressing the compressed batch of frames back into the batch of Fibre Channel frames; and

l) transmitting the plurality of Fibre Channel frames in the batch of frames over the second Fibre Channel network.

20. The method of claim 19 , wherein the step of creating a batch of frames is accomplished when triggered by an algorithm.

Assignments (9)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 18, 2018
From: BROCADE COMMUNICATIONS SYSTEMS LLC
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047270/0247 →
CHANGE OF NAME Recorded Dec 13, 2017
From: BROCADE COMMUNICATIONS SYSTEMS, INC.
To: BROCADE COMMUNICATIONS SYSTEMS LLC
Reel/Frame 044891/0536 →
RELEASE OF SECURITY INTEREST Recorded Jan 22, 2015
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: BROCADE COMMUNICATIONS SYSTEMS, INC.; FOUNDRY NETWORKS, LLC
Reel/Frame 034804/0793 →
RELEASE OF SECURITY INTEREST Recorded Jan 21, 2015
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: BROCADE COMMUNICATIONS SYSTEMS, INC.; INRANGE TECHNOLOGIES CORPORATION; FOUNDRY NETWORKS, LLC
Reel/Frame 034792/0540 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 17, 2012
From: MCDATA CORPORATION
To: BROCADE COMMUNICATIONS SYSTEMS, INC.
Reel/Frame 029486/0068 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 16, 2010
From: MCDATA SERVICES CORPORATION
To: MCDATA CORPORATION
Reel/Frame 025378/0909 →
SECURITY AGREEMENT Recorded Jan 20, 2010
From: BROCADE COMMUNICATIONS SYSTEMS, INC.; FOUNDRY NETWORKS, LLC; INRANGE TECHNOLOGIES CORPORATION; MCDATA CORPORATION; MCDATA SERVICES CORPORATION
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 023814/0587 →
SECURITY AGREEMENT Recorded Dec 22, 2008
From: BROCADE COMMUNICATIONS SYSTEMS, INC.; FOUNDRY NETWORKS, INC.; INRANGE TECHNOLOGIES CORPORATION; MCDATA CORPORATION
To: BANK OF AMERICA, N.A. AS ADMINISTRATIVE AGENT
Reel/Frame 022012/0204 →
MERGER Recorded Dec 10, 2008
From: COMPUTER NETWORK TECHNOLOGY CORPORATION
To: MCDATA SERVICES CORPORATION
Reel/Frame 021952/0245 →