I've used Nom to parse a couple RFC-based protocols now, and I'm amazed at how easy and performant the result ends up being.
There's a great walk-through of using it here, including fuzzing your parsers to make sure they're solid. https://github.com/Geal/langsec-2017-hackathon-code