sp: protocol