IP Library Granted Patent US 7,389,399
Granted Patent B2
US 7,389,399 · App. 11/070,858 · Granted Jun 17, 2008

Secure virtual interface

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,389,399
App. No.
11/070,858
Granted
Jun 17, 2008
Kind
B2
Abstract

A network interface for secure virtual interface data communication includes a doorbell circuit, a processor, memory, and a bridge circuit. The doorbell circuit responds to physical I/O addresses of the host that are mapped by a memory management unit by a registration process. An application program seeking to use a channel of a virtual interface must register the virtual address of host memory where data for communication is or will be stored and register the virtual address of a page of I/O addresses. Access to the doorbell functions and to the host memory via the memory management unit are therefore denied when the requesting process identifier does not successfully compare with the process identifier for the process that performed the registrations. A password may be stored in the network interface in association with a virtual interface (VI) channel identifier and stored in association with the virtual to physical map used for VI communication. The network interface may abandon a requested or implied data communication when passwords so not successfully compare. Methods for virtual interface (VI) communication performed by an application program may include one or more of the steps of (a) establishing a VI channel where physical I/O addresses of a network controller are secured; (b) registering host memory for use with a VI channel where physical memory addresses are secured; (c) describing blocks of host memory with reference to a memory handle; and (d) accomplishing data communication of a described block of host memory via an established VI channel where the data and controls of the VI channel are secured and the data and controls of other VI channels are secured. Security is provided against both erroneous operations and operations intentionally effected by rouge processes.

Claims (12)

1. A data structure maintained in a network interface, the network interface for installation in a host computer, the data structure comprising:

a. a plurality of entries, each entry comprising:

(1) a physical address of a page of memory of the host computer;

(2) a password; and

(3) a validity flag; wherein

b. entries in the data structure are addressable by an index value, the index value being determined in accordance with a sum of a memory handle and a virtual address of a page of memory of the host computer, the virtual address corresponding to the physical address.

2. A data structure maintained in a network interface, the network interface for installation in a host computer, the network interface for data communication via a plurality of channels, the data structure comprising:

a. a plurality of entries, each entry comprising:

(1) a first physical I/O address of the host computer, the first physical I/O address for addressing the network interface.

(2) a password; and

(3) a second physical memory address of the host computer, the second physical for identifying data for communication by the network interface, wherein

b. entries in the data structure are addressable by a channel identifier, the channel identifier for identifying a particular channel of the plurality of channels for data communication.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CHANGE OF NAME Recorded Oct 8, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047205/0953 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
MERGER Recorded Oct 18, 2017
From: QLOGIC CORPORATION
To: CAVIUM, INC.
Reel/Frame 044812/0504 →
SECURITY AGREEMENT Recorded Mar 1, 2017
From: QLOGIC CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 041854/0119 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2005
From: TROIKA NETWORKS, INC.
To: QLOGIC CORPORATION
Reel/Frame 017015/0478 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2005
From: HAMILTON APEX TECHNOLOGY VENTURES, L.P.
To: TROIKA NETWORKS, INC.
Reel/Frame 016978/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2005
From: ANTHEM/CIC VENTURES FUND, L.P.
To: TROIKA NETWORKS, INC.
Reel/Frame 016977/0953 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 3, 2005
From: WINDWARD VENTURES, L.P.
To: TROIKA NETWORKS, INC.
Reel/Frame 016977/0976 →