Network DMA method

Electrical computers and digital processing systems: multicomput – Multicomputer data transferring via shared memory

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S232000

Reexamination Certificate

active

06775693

ABSTRACT:

A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the patent and trademark office patent files or records, but otherwise reserves all copyright rights whatsoever.
FIELD OF INVENTION
This invention is directed to application buffer-to-buffer transfers over a network, and more particularly to DMA transfer over a network between application buffers using Fibre Channel.
BACKGROUND
Fibre Channel is a data transport mechanism that includes hardware and a multi-layer protocol. Fibre Channel is described in “Fibre Channel Physical and Signaling Interface (FC-PH)” (ANSI X3.230-1994) by the American National Standard for Information Systems, which is incorporated by reference in its entirety. Fibre Channel is used today as a communication path between computers and disks. For example, Fibre Channel is used in Storage Area Networks (“SANs”). When Fibre Channel is used as a communication path between computers and disks, the Small Computer System Interface (“SCSI”) protocol runs on top of the Fibre Channel protocol so that legacy SCSI drivers can still be used to control the data flow. Since a common use of Fibre Channel protocol is to interpret SCSI commands, Fibre Channel adapter cards often have built-in SCSI Assist Hardware to accelerate this process.
Fibre Channel includes a buffer-to-buffer DMA transfer mechanism. If two computers are connected together with Fibre Channel and the Fibre Channel adapter card in the sending computer is given the address of a sending buffer and the Fibre Channel adapter card in the receiving computer is given the address of a destination buffer, the two adapter cards can transfer data across a Fibre Channel media (e.g., a copper or optical cable) from the sending buffer to the receiving buffer in a single DMA burst. This feature works whether the two nodes are connected point-to-point, through a Fibre Channel hub connecting up to 126 nodes together, or through a series of Fibre Channel switches connecting up to 16 million nodes together. When used to connect computers to disks, the disk hardware serves as one of the computers and the buffer-to-buffer DMA transfer simply moves data between an application buffer in the computer and a buffer in the disk.
The SCSI Assist Hardware in Fibre Channel adapter cards accelerates the common SCSI disk transactions. SCSI Assist Hardware lets the host driver place the SCSI command containing the SCSI disk request into the card hardware and relieves the host computer from being interrupted until the data has been transferred and the response phase of the SCSI operation completes. Thus, SCSI Assist Hardware allows a Fibre Channel adapter card to execute the SCSI command phase, the SCSI data phase, and the SCSI response phase without interrupting the host computer.
Networks today communicate by breaking application data into smaller units, called datagrams. Each datagram is sent across the network as a separate unit. Breaking long messages into smaller network units is done to share the network resource so that a long message does not dominate the bandwidth.
Network applications uses a protocol stack to interface the application to the physical network.
FIG. 1
shows the layers of a conventional protocol stack based on the Open System Interconnection (“OSI”) Seven Layer Reference Model.
FIG. 1
compacts layers
5
-
7
into a single Application layer for ease of reference in relation to the present disclosure. “Application” in this disclosure refers to any program residing above the transport layer, including software that services network requests for file data, such as the SRV server module in the Windows NT operating system.
The transport layer (e.g., Transmission Control Protocol, or “TCP”) provides to an application in a local computer a “virtual circuit” that connects the application to an application in a remote computer even where the remote computer is half way around the world. The transport layer maintains this virtual circuit even though the physical network may frequently lose data.
The transport layer breaks the application data into “segments” that it gives to the network layer. Segments created by the transport layer may be up to 64 Kbytes. Segments which are not acknowledged by the transport layer on the destination computer are resent.
The application data given to the transport layer may have its own application header A (
FIG. 1
) describing the data. File transfers under Windows NT® (“NT”) for example, have a Server Message Block (“SMB”) header placed before the data. The application may divide the data into units smaller than 64 Kbytes. The file server software SRV that handles remote requests for files in NT, for example, breaks data into units of about 60 Kbytes. The transport layer adds its own header T (
FIG. 1
) and passes the segment down to the network layer.
The transport process that creates a virtual circuit requires an acknowledge signal (“ACK”) back from the final destination for the data sent. If a specified number of ACKs is not received, the transport layer on the sending side stops sending data. If the missing ACKs are not received in a predetermined time, the data is resent. The transport layer, thus, implements both a flow-control mechanism and an error-control mechanism.
The network layer (e.g., Internet Protocol, or “IP”) breaks the transport segment into datagrams that will fit in the Maximum Transfer Unit (MTU) of the network, which is 1500 bytes for an Ethernet physical layer. The network layer then attempts to move each of these MTU-size datagrams through the network to the destination. The network layer gives each of these 1500-byte datagrams a network header N (
FIG. 1
) containing the address of the final destination node. The network layer also adds a Media Access (“MAC”) address to each datagram before passing it down to the data link layer. The MAC address is the physical address of the very next node in the network path. As the datagram makes its way through the network toward its final destination, the MAC address is replaced at each hop with the address of the next node on the route.
The data link layer instructs the network interface card (“NIC”) to move the datagram fragment over the physical network to the next node. The data link layer includes the NIC drivers. As
FIG. 1
shows, as the application data moves down the protocol stack, it accumulates headers
10
. At the data link layer, the first few hundred bytes of the final datagram contain all of headers
10
.
The description above for the transport, network, and data link layers applies equally to a Wide Area Network (WAN) that could span the entire globe and pass through numerous routers, as to a local area network (LAN) where the nodes may all be in the same building. In a LAN, each node is often just one hop away. That is, the MAC address also points to the final destination.
In a conventional network, a read operation can be seen as a write of the read request by a client computer to a server, followed by a write back of the data by the server to the client computer. For example, when a client computer wants to read data from a remote server, the client computer writes a request to the server asking for certain file data. The network is then quiescent with no state maintained about the read operation. When the server locates the data, it writes the data back to the client computer.
In the write back operation, the transport layer sets up a virtual circuit to the application in the destination computer, or uses a virtual circuit that already exists to this application, and passes a segment of data to the network layer. For example, if the application is a remote NT file server, the software in the NT server is SRV. After receiving the request for file data, the server locates and returns the data. The application source buffer in this case is most likely the cache in the NT server. If the data is alread

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Network DMA method does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Network DMA method, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Network DMA method will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3362184

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.