You do not usually need to know the exact frame structure. What you do need to know, however, is the number of bits protected by error detection and correction codes, and the number of errors correctable by those codes, and the number of additional bit errors detectable by not correctable by those codes; and, of course, the number of unprotected bits. Then you work the probabilities.
For the protected blocks, if you have N bits and bit error probability p, then what is the probability of at most the number of correctable errors? Correctable errors do not affect throughput.
Then what is the probability that the number of additional bit errors in the N bits was in the range of the number of detectable but not correctable bit errors? Such errors must result in rejection of the packet, requiring a retransmission. But of course the retransmission might encounter errors, so there is no easy formula for the effect on the throughput, and you must model using something like stocastic chains. When making this calculation you should allow for the fact that, depending on exactly how the error detection code works, the rating for the number of detected errors might be for the number of bit errors guaranteed to be detected, and that depending on the arrangement of the errors there might be additional detectable cases. As a simple example of that, a parity check field is certain to find a single bit error, but will not find a double bit error, but will find three bit errors.
A third possibility is that there were enough bit errors that some of the errors went undetected by the detection and protection codes. This does get a bit tricky, as it might result in an undetected error in a field such as the packet type code, and that error might or might not happen to be noticed through internal consistency checks. If the destination port came out wrong, the new port just might happen to be one that is in use and the packet sequence number just might happen to be appropriate for reception; and correspondingly, these conditions might not be true but in a detectable way that can lead to the packet being rejected. This gets messy!
