func (i IPv4_P) Id() uint16 { return inet.NToHS(i[4:6]) }
func (i IPv4_P) Length() uint16 { return inet.NToHS(i[2:4]) }
func (i IPv4_P) Checksum() uint16 { return inet.NToHS(i[10:12]) }
func (i IPv4_P) FragmentOffset() uint16 { return inet.NToHS([]byte{i[6] & 0x1f, i[7]}) }
func (a ARP_P) Operation() ARPOperation { return ARPOperation(inet.NToHS(a[6:8])) }
func (a ARP_P) HardwareType() uint16 { return inet.NToHS(a[0:2]) }