Every packet that comes in goes through its node's IP thread (UDP, TCP) or ICMP thread (ICMP), as Java's IPThread and ICMPThread: deliver, answer an echo request or forward, one after the other; while one waits for ARP, the next wait behind it. A packet a node sends to itself is delivered at once, as Java's IP.senden does. The transport send threads and these are one mechanism now (handToProtocolThread). ArpRun has three stories through the router (routedUdpBehind, routedPingBesideUdp, routedPingBehindPing); the oracle writes ICMP frames with type, code, addresses and sequence number. All seven ArpRun stories match Java FILIUS. Measured and not taken: Java's ARP wakes one waiter with notify, not the one whose answer came; the core wakes all that wait for the address. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
168 lines
4.0 KiB
JSON
168 lines
4.0 KiB
JSON
{
|
|
"frames": {
|
|
"00000000-0000-0000-0000-000000000301": [
|
|
{
|
|
"time": 721,
|
|
"source": "02:00:00:00:03:11",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "10.0.0.2",
|
|
"targetIp": "10.0.0.1"
|
|
},
|
|
{
|
|
"time": 957,
|
|
"source": "02:00:00:00:03:21",
|
|
"destination": "02:00:00:00:03:11",
|
|
"arp": 2,
|
|
"senderIp": "10.0.0.1",
|
|
"targetIp": "10.0.0.2"
|
|
},
|
|
{
|
|
"time": 959,
|
|
"source": "02:00:00:00:03:11",
|
|
"destination": "02:00:00:00:03:21",
|
|
"sourceIp": "10.0.0.2",
|
|
"destinationIp": "20.0.0.9",
|
|
"protocol": 17,
|
|
"sourcePort": 49345,
|
|
"destinationPort": 9,
|
|
"payload": "verloren"
|
|
},
|
|
{
|
|
"time": 1017,
|
|
"source": "02:00:00:00:03:11",
|
|
"destination": "02:00:00:00:03:21",
|
|
"sourceIp": "10.0.0.2",
|
|
"destinationIp": "20.0.0.2",
|
|
"protocol": 17,
|
|
"sourcePort": 58689,
|
|
"destinationPort": 9,
|
|
"payload": "dahinter"
|
|
},
|
|
{
|
|
"time": 6689,
|
|
"source": "02:00:00:00:03:21",
|
|
"destination": "02:00:00:00:03:11",
|
|
"icmp": 3,
|
|
"icmpCode": 1,
|
|
"sourceIp": "10.0.0.1",
|
|
"destinationIp": "10.0.0.2",
|
|
"sequence": 0
|
|
}
|
|
],
|
|
"00000000-0000-0000-0000-000000000302": [
|
|
{
|
|
"time": 844,
|
|
"source": "02:00:00:00:03:11",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "10.0.0.2",
|
|
"targetIp": "10.0.0.1"
|
|
},
|
|
{
|
|
"time": 846,
|
|
"source": "02:00:00:00:03:21",
|
|
"destination": "02:00:00:00:03:11",
|
|
"arp": 2,
|
|
"senderIp": "10.0.0.1",
|
|
"targetIp": "10.0.0.2"
|
|
},
|
|
{
|
|
"time": 1073,
|
|
"source": "02:00:00:00:03:11",
|
|
"destination": "02:00:00:00:03:21",
|
|
"sourceIp": "10.0.0.2",
|
|
"destinationIp": "20.0.0.9",
|
|
"protocol": 17,
|
|
"sourcePort": 49345,
|
|
"destinationPort": 9,
|
|
"payload": "verloren"
|
|
},
|
|
{
|
|
"time": 1129,
|
|
"source": "02:00:00:00:03:11",
|
|
"destination": "02:00:00:00:03:21",
|
|
"sourceIp": "10.0.0.2",
|
|
"destinationIp": "20.0.0.2",
|
|
"protocol": 17,
|
|
"sourcePort": 58689,
|
|
"destinationPort": 9,
|
|
"payload": "dahinter"
|
|
},
|
|
{
|
|
"time": 6577,
|
|
"source": "02:00:00:00:03:21",
|
|
"destination": "02:00:00:00:03:11",
|
|
"icmp": 3,
|
|
"icmpCode": 1,
|
|
"sourceIp": "10.0.0.1",
|
|
"destinationIp": "10.0.0.2",
|
|
"sequence": 0
|
|
}
|
|
],
|
|
"00000000-0000-0000-0000-000000000303": [
|
|
{
|
|
"time": 1129,
|
|
"source": "02:00:00:00:03:22",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "20.0.0.1",
|
|
"targetIp": "20.0.0.9"
|
|
},
|
|
{
|
|
"time": 3879,
|
|
"source": "02:00:00:00:03:22",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "20.0.0.1",
|
|
"targetIp": "20.0.0.9"
|
|
},
|
|
{
|
|
"time": 6632,
|
|
"source": "02:00:00:00:03:22",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "20.0.0.1",
|
|
"targetIp": "20.0.0.2"
|
|
},
|
|
{
|
|
"time": 6633,
|
|
"source": "02:00:00:00:03:13",
|
|
"destination": "02:00:00:00:03:22",
|
|
"arp": 2,
|
|
"senderIp": "20.0.0.2",
|
|
"targetIp": "20.0.0.1"
|
|
},
|
|
{
|
|
"time": 6744,
|
|
"source": "02:00:00:00:03:22",
|
|
"destination": "02:00:00:00:03:13",
|
|
"sourceIp": "10.0.0.2",
|
|
"destinationIp": "20.0.0.2",
|
|
"protocol": 17,
|
|
"sourcePort": 58689,
|
|
"destinationPort": 9,
|
|
"payload": "dahinter"
|
|
}
|
|
]
|
|
},
|
|
"events": [
|
|
[
|
|
712,
|
|
"senden verloren called"
|
|
],
|
|
[
|
|
717,
|
|
"senden verloren returned "
|
|
],
|
|
[
|
|
717,
|
|
"senden dahinter called"
|
|
],
|
|
[
|
|
959,
|
|
"senden dahinter returned "
|
|
]
|
|
]
|
|
}
|