Electrical computers and digital data processing systems: input/ – Input/output data processing – Input/output data buffering
Reexamination Certificate
1998-09-28
2002-04-16
Lee, Thomas (Department: 2182)
Electrical computers and digital data processing systems: input/
Input/output data processing
Input/output data buffering
C710S029000, C710S036000, C711S154000
Reexamination Certificate
active
06374314
ABSTRACT:
TECHNICAL FIELD OF THE INVENTION
This invention relates generally to communication systems and more particularly to a method and system for managing storage of data in a network.
BACKGROUND OF THE INVENTION
Communication devices such as telephones, computers, and video equipment may be interconnected to form a network A network allows multiple parties to communicate with each other. Communications within a network often take the form of voice, data, video, or a combination of these forms Such communications allow for meetings and presentations with participants separated by long distances These events depend on the network to function as quickly and accurately as possible, in order to compensate for the distance of the participants.
A network may be formed by linking independent communication devices together according to a protocol. One example of a protocol for linking communication devices is Fibre Channel. In a Fibre Channel network, each device, acting as a node, or entry point onto the network, transmits and receives information through the network to the other network nodes. Although Fibre Channel networks may take various forms, a loop topology is often incorporated. In a loop topology, network nodes are connected in loop arrangement with any given node directly connected to only its two neighbors. In this manner, communication between all parties connected to the network is possible. One advantage of the some loop topologies is fault tolerance. In some implementations that utilize counter-rotational rings, if a break between nodes occurs, information may be routed back around the loop to its destination.
Information transmitted by the nodes travels around the loop until it reaches its destination. Traditionally, many Fibre Channel networks are configured to allow transmission of information by only one node at a given time. Thus, while any given node is transmitting information, all other nodes can only receive information. In addition traditional networking protocols do not specify the amount of time that this one node can transmit. Such communication schemes pose problems with the transmission of isochronous data that require the transfer of data at regular intervals such as live video and audio. A node that has live video to transfer is threatened with data loss if the network is currently servicing an unbounded transfer for another node. This problem is enhanced when the network has multiple sources of live isochronous data.
To address such problems, a plurality of frames may be periodically transmitted in a network in which a plurality of nodes read to or write from specific portions of the frames. Such frames may be transmitted in a isochronous manner in which frames traverse the network at a given periodic rate. However, if the amount of available bandwidth permits, additional asynchronous frames may also be transmitted. Because both asynchronous and isochronous frames need to be stored, it is cost effective to use the same memory system for both types of frames. However, the storage of both asynchronous and isochronous frames in the same memory systems leads to problems because requirements and conditions for frame routing and re-transmission are very dissimilar.
SUMMARY OF THE INVENTION
Accordingly, a need has arisen for an improved method and system for managing storage of data. The present invention provides a method and system for managing storage of data that addresses shortcomings of prior systems and methods.
According to one embodiment of the invention, a method of managing storage of data includes assigning one of a plurality of buffer pointers to a first frame of data and storing the first frame of data in a location in memory associated with the assigned buffer pointer The method also includes determining whether the first frame of data is associated with a sequence of frames and storing the assigned buffer pointer in a first location if the first frame of data is associated with a sequence of frames and a different location if the first frame of data is not associated with a sequence of frames. The method also includes, after storing the assigned buffer pointer, manipulating the first frame of data stored in the location in memory. The manipulation includes accessing the assigned buffer pointer.
According to another embodiment of the invention, a method of managing storage of data includes providing a queue for storing a plurality of buffer pointers associated with a group of related consecutive frames of data and receiving the group of related consecutive frames of data. The method also includes assigning a first buffer pointer to a first frame in the group of consecutive frames and a second buffer pointer to a last frame in the group of consecutive frames. The first and second buffer pointers indicate a range of a memory in which the group of related consecutive frames is stored. The method also includes storing the first and second buffer pointers in the queue and manipulating the group of consecutive frames stored in the range of the memory by accessing the first and second buffer pointers.
Embodiments of the invention provide numerous technical advantages For example, in one embodiment of the invention, manipulation of data is possible within a main memory unit by merely manipulating buffer pointers rather than the actual data. Furthermore, both asynchronous and isochronous frames may be manipulated through the use of separate queues. In addition, sequences of frames of data may be manipulated as a group, rather than individually An additional advantage of one embodiment of the present invention includes a recirculating nature of buffer pointers. Buffer pointers are never discarded, but are rather recirculated back to a link list after they are used. Thus, memory allocation problems will not occur due to the loss of a buffer pointer to a particular portion of main memory. Furthermore, locations in a main memory may be allocated to external devices for read or write access, but the pointer for those locations in memory in maintained internally, precluding any loss of memory due to flaws in the external device.
Other technical advantages are readily apparent to one skilled in the art from the following figures, descriptions, and claims.
REFERENCES:
patent: 3924245 (1975-12-01), Eaton et al.
patent: 4835770 (1989-05-01), Hayano
patent: 5257259 (1993-10-01), Tsurumi
patent: 5301185 (1994-04-01), Cherry
patent: 5303230 (1994-04-01), Hishida et al.
patent: 5317572 (1994-05-01), Satoh
patent: 5351243 (1994-09-01), Kalkunte et al.
patent: 5361372 (1994-11-01), Rege et al.
patent: 5375233 (1994-12-01), Kimber et al.
patent: 5428819 (1995-06-01), Wang et al.
patent: 5502719 (1996-03-01), Grant et al.
patent: 5519690 (1996-05-01), Suzuka et al.
patent: 5610914 (1997-03-01), Yamada
patent: 5610921 (1997-03-01), Christensen
patent: 5644761 (1997-07-01), Yoder et al.
patent: 5664224 (1997-09-01), Davis
patent: 5737743 (1998-04-01), Ooe et al.
patent: 5748629 (1998-05-01), Caldara et al.
patent: 5768043 (1998-06-01), Nemaize et al.
patent: 5796720 (1998-08-01), Yoshida et al.
patent: 5805808 (1998-09-01), Hasani et al.
patent: 5828402 (1998-10-01), Collings
patent: 5835087 (1998-11-01), Herz et al.
patent: 5862136 (1999-01-01), Irwin
patent: 5924112 (1999-07-01), Barber et al.
patent: 5938747 (1999-08-01), Young
patent: 5963982 (1999-10-01), Goldman
patent: 5978578 (1999-11-01), Azarya et al.
patent: 5983293 (1999-11-01), Murakami
patent: 5991847 (1999-11-01), Ballard et al.
patent: 5999634 (1999-12-01), Abbott et al.
patent: 6041060 (2000-03-01), Leichty et al.
patent: 6044091 (2000-03-01), Kim
patent: 6072832 (2000-06-01), Katto
patent: 6266702 (2001-07-01), Darnell et al.
patent: 0 632 625 (1995-01-01), None
S. Cavalleri, et al, Abstract, “Scheduling Transmissions in Time-Critical Distributed Systems,” Universita' di Catania—Facotta' di Ingegneria Instituto di Informatica e Telecommuncicazioni, IEEE, pp. 541-456, 1995.
PCT International Search Report dated Jan. 26, 2001 for PCT/US99/21722 filed Oct. 21, 1999.
Darnell B. Scott
Jennings William T.
Lengel Bradley D.
Reddy Praveen S.
Du Thuan
Lee Thomas
Raytheon Company
LandOfFree
METHOD FOR MANAGING STORAGE OF DATA BY STORING BUFFER... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with METHOD FOR MANAGING STORAGE OF DATA BY STORING BUFFER..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and METHOD FOR MANAGING STORAGE OF DATA BY STORING BUFFER... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2904930