Protocol can be left as 0 unless the socket is raw.