Namespace inet
ArpPacket
classARP packet. This is a specialized version: prepared for IEEE 802 hardware addresses and IPv4. Packet fields are therefore represented by C++ classes MACAddress and IPv4Address. Also, some ARP protocol header fields are not modelled explicitly (their values are implied):
- hardwareType (not needed for modelling);
- protocol type (0x800 IPv4)
- hardware address length (6)
- protocol address length (4)
Extends
Name | Type | Description |
---|---|---|
FieldsChunk | (unknown -- not in documented files) |
Fields
Name | Type | Description |
---|---|---|
chunkLength |
ARP header length for IPv4 (4-byte addresses) and 802 LANs (6-byte MAC addrs) |
|
opcode | ArpOpcode | |
srcMacAddress | MacAddress | |
destMacAddress | MacAddress | |
srcIpAddress | Ipv4Address | |
destIpAddress | Ipv4Address |
Packet operations (observed)
action | module |
---|---|
insertAtFront | Arp |
peekAtFront | Arp |
popAtFront | PcapRecorder, MultiFieldClassifier |
Source code
// // ARP packet. This is a specialized version: prepared for IEEE 802 hardware // addresses and IPv4. Packet fields are therefore represented by C++ classes // MACAddress and IPv4Address. Also, some ARP protocol header fields are // not modelled explicitly (their values are implied): // - hardwareType (not needed for modelling); // - protocol type (0x800 IPv4) // - hardware address length (6) // - protocol address length (4) // class ArpPacket extends FieldsChunk { // ARP header length for IPv4 (4-byte addresses) and 802 LANs (6-byte MAC addrs) chunkLength = B(28); ArpOpcode opcode; MacAddress srcMacAddress; MacAddress destMacAddress; Ipv4Address srcIpAddress; Ipv4Address destIpAddress; }File: src/inet/networklayer/arp/ipv4/ArpPacket.msg