Changing protocol IDs to be uint

Signed ints may be confusing to read or interpret, so we force the
protocol ID to be an unsigned 32 bit integer.