A formal description technique for protocol engineering