Offered and requested message IDs are stored in the database rather than being owned by DuplexConnections. This paves the way for moving to a simplex transport layer.