Claims
- 1. A method of transmitting over virtual channels in an asynchronous transfer mode data received in the form of data packets, the method comprising the steps of:assembling data packets for transmission in addressable memory buffers; maintaining a queue of said buffers; providing a first buffer distribution pointer and a second buffer distribution pointer; initializing a recovery pointer to the same place in said queue as said second pointer; entering free buffers in a queue portion between locations identified by said first and second buffer distribution pointers; taking buffers for use using said first pointer; and returning used buffers to said queue using said recovery pointer.
- 2. A method of transmitting over virtual channels in an asynchronous transfer mode data received in the form of data packets, the method comprising the steps of:assembling data packets for transmission in addressable memory buffers; maintaining a queue of said buffers; providing a first buffer distribution pointer and a second buffer distribution pointer; initializing a recovery pointer to the same place as said second pointer; defining in the address of every buffer location a particular bit which is initially set to a particular value; entering free buffers in a queue portion between locations identified by said first and second buffer distribution pointers; taking said buffers for use using said first pointer and returning used ones of said buffers to said queue using said recovery pointer; setting said particular bit of each of the used ones of said buffers to a value complementary to said particular value; and detecting the complementary value; and resetting said particular bit to the particular value, thereby making the used ones of said buffers available for reuse.
- 3. A computer-readable medium having stored thereon a data structure, comprising:an integrated distribution and recovery queue of addressable buffers for data packets assembled for transmission over channels in an asynchronous transfer mode; a first buffer pointer and a second buffer pointer for identifying a queue portion used to enter free ones of said buffers; and a recovery pointer initialized to the same place as said second buffer pointer, wherein during predetermined processing operations the free ones of said buffers are taken for use using said first buffer pointer and used ones of said buffers are returned to said queue using said recovery pointer.
- 4. The computer-readable medium according to claim 3, wherein each addressable buffer includes a bit that is initially set to a particular value, that is set to a complementary value when the buffer is taken for use, and that is reset to the particular value after the buffer is returned to make the buffer available for reuse.
Priority Claims (1)
Number |
Date |
Country |
Kind |
9701013 |
Jan 1997 |
GB |
|
CROSS-REFERENCES TO RELATED APPLICATIONS
This application relates to subject matter related to the subject matter of the following co-pending applications all of which have a common assignee:
METHOD AND APPARATUS FOR SUPPORTING UNKNOWN ADDRESSES IN AN ASYNCHRONOUS TRANSFER MODE INTERFACE—O'Connell et al.—Ser. No. 09/007,800 filed on Jan. 15, 1998.
METHOD FOR ALLOCATING NON-BUS CHANNELS FOR MULTI-MEDIA TRAFFIC IN ASYNCHRONOUS TRANSFER MODE—O'Connell et al.—Ser. No. 09/007,579 filed on Jan. 15, 1998, now U.S. Pat. No. 5,960,634.
METHOD FOR SELECTING VIRTUAL CHANNELS BASED ON ADDRESS PRIORITY IN AN ASYNCHRONOUS TRANSFER MODE DEVICE—Casey et al.—Ser. No. 09/007,801 filed on Jan. 15, 1998.
METHOD OF BUFFER MANAGEMENT IN VIRTUAL CIRCUIT SYSTEMS—Creedon et al.—Ser. No. 09/007,832 on Jan. 15, 1998.
US Referenced Citations (12)
Foreign Referenced Citations (7)
Number |
Date |
Country |
0 691 772 A2 |
Jan 1996 |
EP |
0 706 298 A2 |
Apr 1996 |
EP |
0 731 582 A2 |
Sep 1996 |
EP |
0 797 331 A2 |
Sep 1997 |
EP |
2043405 |
Oct 1980 |
GB |
2292292 |
Oct 1994 |
GB |
WO 9743869 |
Nov 1997 |
WO |