| US 7,545,808 B2 | ||
| Memory organization in a switching device | ||
| Pradeep S. Sindhu, Mountain View, Calif. (US); Dennis C. Ferguson, Mountain View, Calif. (US); Bjorn O. Liencres, Palo Alto, Calif. (US); Nalini Agarwal, Sunnyvale, Calif. (US); Hann-Hwan Ju, San Jose, Calif. (US); Raymond Marcelino Manese Lim, Mountain View, Calif. (US); Rasoul Mirzazadeh Oskouy, Fremont, Calif. (US); and Sreeram Veeragandham, Sunnyvale, Calif. (US) | ||
| Assigned to Juniper Networks, Inc., Sunnyvale, Calif. (US) | ||
| Filed on Sep. 15, 2005, as Appl. No. 11/226,335. | ||
| Application 11/226335 is a continuation of application No. 10/310462, filed on Dec. 04, 2002, granted, now 7,116,660. | ||
| Application 10/310462 is a continuation of application No. 08/901061, filed on Jul. 24, 1997, granted, now 6,493,347. | ||
| Application 08/901061 is a continuation in part of application No. 08/844171, filed on Apr. 18, 1997, granted, now 5,905,725. | ||
| Application 08/844171 is a continuation in part of application No. 08/767576, filed on Dec. 16, 1996, granted, now 5,909,440. | ||
| Prior Publication US 2006/0023719 A1, Feb. 02, 2006 | ||
| This patent is subject to a terminal disclaimer. | ||
| Int. Cl. H04L 12/28 (2006.01) | ||
| U.S. Cl. 370—389 [370/351; 370/352; 370/353; 370/354; 370/395.1; 370/395.6; 370/395.7; 370/395.31; 370/395.53; 370/395.61; 370/396; 370/397; 370/401; 370/412; 370/413; 370/414; 370/415; 370/416; 370/418; 370/428; 370/429; 370/442] | 19 Claims |

| 1. A network device for switching a variable length data unit from a source to a destination in a network, the network device
comprising:
an input port to receive the variable length data unit;
a divider to divide the variable length data unit into uniform length data units that are temporarily stored in the network
device;
a distributed memory comprising a plurality of physically separated memory banks addressable using a single virtual address
space;
an input switch to stream the uniform length data units across the memory banks based on the virtual address space;
an output switch to extract the uniform length data units from the distributed memory by using addresses of the uniform length
data units within the virtual address space, the output switch reassembling the uniform length data units to reconstruct the
variable length data unit; and
an output port to receive the variable length data unit and transferring the variable length data unit to the destination.
|