The confusing image

I came across this image of a FC frame header. I see that there are two fields, a 2112 byte data field and a 2048 byte payload field. I tried to read about how to distinguish among the two, but ended up being more confused. Some links mention that the maximum data that can be transferred per frame is 2112 bytes, while other sources mention it is 2048 bytes, which makes me feel that these fields are both used for payload delivery somehow.

Please help. Thank you.

2 Answers 2


Notice that the Payload is part of the Data Field. The only difference is that you can have an optional header, otherwise the Data Field and Payload are the same field, with the same length.


The short answer is that the Data Field (2112 bytes) overlays the combination of the Optional Header (64 bytes) and Payload (2048 bytes). They are not separate fields. The use of the Optional Header and meaning of the bytes within it are dependent on the FC-4 layer protocol (usually FCP or SCSI) and the revision of the specs used.

It's not clear what your interest is, but if you're concerned about max frame length, take into account the other fields. For end-point internal buffering, add the Frame Header (24 bytes) for a total of 2136. In the context of a fabric, you'll also need to account for SOF(4 bytes), CRC (4 bytes) and EOF (4 bytes) for a total of 2148 bytes.

For more detail, try this slightly dated but good reference: Fibre Channel: A Comprehensive Introduction, Robert Kembel

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.