Protocol spec