bytes and enough padding is inserted to make the total frame length be a multiple of 48 bytes. Therefore, there are 0 - 47 bytes of pad and the CRC always occupies the last 4 bytes of a cell. The sender fragments this frame into a sequence of ATM cells, each carrying 48-bytes of the frame (thus there is no AAL overhead in the cell payload field), and each sent on the same virtual channel (i.e., bearing the same VPI/VCI number). The last cell of the frame sequence is identified as such by an end-of-frame (EOF) indication in the ATM cell header (discussed below). The receiver appends incoming cells to a virtual-channel-specific buffer until either an EOF cell is appended or the buffer length is exceeded. Upon either of those events, the buffer is passed to higher-level processing, with an indication of whether or not the EOF cell is present and, if so, whether or not the CRC is correct. Also passed to higher-level processing is the length of the buffer contents (i.e., 48 * number of cells). The CRC used is identical to that used in ANSI FDDI and Fibre Channel. This single error check, along with a higher level length check (see below), covers many possible errors including corrupted, lost, inserted, or mis-ordered cells. It also detects frames joined due to lost end-of-frame cells. It is guaranteed to detect any burst error of up to 32 bits, and is still a very strong check for errors of any length. See Appendix C for further details of its properties and implementations. The higher level is responsible for ignoring buffers whose CRC is reported to be incorrect or absent. Since the higher-level sees all of the incoming data in sequence, it may also opt to perform some sort of higher-level frame recovery, or partial recovery, for applications that can tolerate some bit damage, such as certain audio or video applications. The higher level protocol is responsible for length checking -- no length indication is added to the user PDU by SEAL. This is because such information is already present in most network level protocols, e.g., OSI, TCP/IP, XNS, Appletalk, and would be redundant in SEAL. If the user protocol does not already have a length field or some implied length, then it would need to be added. End-Of-Frame Indication SEAL requires an EOF indication in the ATM header; this indication would be useful for other purposes as well. With negotiation, an EOF indication could be of significance to ATM switches; for example, if a switch has to discard a cell due to congestion, it might as well discard all subsequent cells in the same frame, which the switch could do by discarding from the same virtual channel until the EOF cell arrives. To minimize concatenation of frames at the sender, the EOF cell itself should not be intentionally discarded. Note that while a begin-of-frame indication (BOF) would also be useful for both end-systems and switches, it adds only a small amount of reliability and convenience to the basic framing information. Therefore, we propose only EOF. We propose the EOF indication be carried as a value in the 2 bit Payload Type (PT) field, specifically as the value 10. The value 00 is currently standardized, with (we understand) the value 01 under serious consideration.