---
name: "packet.transport.mpa"
section: "3"
platform: "linux"
package: "nfstest"
version: "3.2-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/packet.transport.mpa"
---

# packet.transport.mpa(3)

MPA module

## NAME

packet.transport.mpa - MPA module

## DESCRIPTION

Decode MPA layer.

RFC 5044 Marker PDU Aligned Framing for TCP Specification

## CLASSES

### class FrameType(packet.utils.Enum)

```
enum OpCode
```

### class MPA(baseobj.BaseObj)

```
MPA object
Usage:
    from packet.transport.mpa import MPA
    x = MPA(pktt)
Object definition:
MPA(
    [
        # MPA Full Operation Phase
        psize = int,  # Length of ULPDU
        pad   = int,  # Length of Padding bytes
        crc   = int,  # CRC 32 check value
    ] | [
        # Connection Setup
        ftype    = int,   # Frame type
        marker   = int,   # Marker usage required
        use_crc  = int,   # CRC usage
        reject   = int,   # Rejected connection
        revision = int,   # Revision of MPA
        psize    = int,   # Size of private data
        data     = bytes, # Private data
    ]
)
```

**Methods defined here:** ---------------------

**\_\_init\_\_(self, pktt)** Constructor

Initialize object's private data.

- **pktt:**

  Packet trace object (packet.pktt.Pktt) so this layer has access to the parent layers.

## SEE ALSO

**[baseobj(3)](/baseobj/3.md),** **[packet.transport.ddp(3)](/packet.transport.ddp/3.md),** **[packet.unpack(3)](/packet.unpack/3.md),** **[packet.utils(3)](/packet.utils/3.md)**

## BUGS

No known bugs.

## AUTHOR

Jorge Mora (mora@netapp.com)
