next up previous contents
Next: Software-Description Up: The OC3MON Software Previous: Background on ATM

AAL5 Frame Reassembly using VPI, VCI and the PTI fields of the ATM Header

AAL5 makes use of the ``end of SAR-SDU'' indication, which is carried as a value 1 in the lowest bit of the ATM layer user to ATM layer user indication bit field of the PTI field in the ATM header to indicate whether a cell is the last in a frame[*]. Figure 3.13 shows where the PTI field is located inside the ATM UNI header structure. The payload data is encapsulated in the 48 bytes that follow this header.

AAL5 also assumes that cells for a given frame will not be interspersed with cells for another frame within the same VP/VC pair. Combined with a single bit of state per VP/VC pair maintained by the receiver, which indicates that the cell is in the middle of a frame for that VP/VC pair, there is enough information to reassemble the frame[*].

Since OC3MON has no need for data beyond the first cell, and since it already maintains per-flow state on the host, the per-VC state on the card is limitted to the bare minimum: one bit.

This limit allows to use 20 bits for VPI and VCI information, yielding a 128KB table size. Although the Fore cards have 256KB of memory, some of it is used for the i960 code (about 32K), the OS, reassembly engine data structures, and the stack. Since the VP/VC lookup needs an exact power of two, the largest possible number of VP/VC pairs is 220. (Single-bit state for 220 VP/VC combos = 217 bytes = 131072 bytes = 128KB).

Examining twenty bits of VCI/VPI information allows OC3MON to monitor over one million VCs simultaneously. The host controls exactly how many bits of the VCI this 20-bit index will include; the rest derive from the VPI. The host also specifies at startup what to expect for the remaining bits of the VPI/VCI, i.e., those not used for indexing into the card's state table. The card can then complain about, or at least drop, non-conforming cells.

Since OC3MON is designed to be able to see traffic on (almost) any VPI/VCI without prior knowledge of which circuits are active and because the fast SRAM (static random access memory) used on such ATM cards for state tables is expensive and not amenable to modification by the consumer, this design turned out to be extremely advantageous.


next up previous contents
Next: Software-Description Up: The OC3MON Software Previous: Background on ATM
root
8/4/1997