Techniques for recovering from a failure of a protocol instance or entity