I remember when I faced a similar challenge with a different protocol stack, and the Level Devil of mismatched implementations haunted my progress. I had to rewrite significant portions of the codebase just to maintain functionality. https://leveldevilfull.com