The engine keeps Java's packet capture (capture.ts): per network card every frame it sent (when it leaves on the cable) or received (also one for another card), once, with time and number; switches log nothing; frames the packet loss dropped are kept apart; the capture outlives a stop and a new start, as in Java, until clearCapture. Per port instead of per MAC, at most 10,000 frames a card. expectSameCaptures compares each card's capture with Java's list of that card in the ARP, WLAN, DNS, TCP, NAT, RIP and single-client DHCP runs. It found that ScenarioNetwork ignored a switch's learning time (Java ran 300 s, the core the scenarios' 5 s); the oracle sets it now, and the TCP and DHCP runs are recorded again. A core test found that a new start numbers frames from 1 again and the capture took them as seen. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
387 lines
9.2 KiB
JSON
387 lines
9.2 KiB
JSON
{
|
|
"frames": {
|
|
"00000000-0000-0000-0000-000000000101": [
|
|
{
|
|
"time": 853,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "192.168.0.20",
|
|
"targetIp": "192.168.0.10"
|
|
},
|
|
{
|
|
"time": 855,
|
|
"source": "02:00:00:00:01:11",
|
|
"destination": "02:00:00:00:01:12",
|
|
"arp": 2,
|
|
"senderIp": "192.168.0.10",
|
|
"targetIp": "192.168.0.20"
|
|
},
|
|
{
|
|
"time": 1083,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": null,
|
|
"tcpFlags": "S",
|
|
"sequence": 2000000,
|
|
"acknowledgement": 0
|
|
},
|
|
{
|
|
"time": 1085,
|
|
"source": "02:00:00:00:01:11",
|
|
"destination": "02:00:00:00:01:12",
|
|
"sourceIp": "192.168.0.10",
|
|
"destinationIp": "192.168.0.20",
|
|
"protocol": 6,
|
|
"sourcePort": 80,
|
|
"destinationPort": 51723,
|
|
"payload": null,
|
|
"tcpFlags": "SA",
|
|
"sequence": 1000000,
|
|
"acknowledgement": 2000001
|
|
},
|
|
{
|
|
"time": 1308,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": null,
|
|
"tcpFlags": "A",
|
|
"sequence": 2000001,
|
|
"acknowledgement": 1000001
|
|
},
|
|
{
|
|
"time": 26578,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": null,
|
|
"tcpFlags": "F",
|
|
"sequence": 2000009,
|
|
"acknowledgement": 0
|
|
},
|
|
{
|
|
"time": 26578,
|
|
"source": "02:00:00:00:01:11",
|
|
"destination": "02:00:00:00:01:12",
|
|
"sourceIp": "192.168.0.10",
|
|
"destinationIp": "192.168.0.20",
|
|
"protocol": 6,
|
|
"sourcePort": 80,
|
|
"destinationPort": 51723,
|
|
"payload": null,
|
|
"tcpFlags": "A",
|
|
"sequence": 1000001,
|
|
"acknowledgement": 2000010
|
|
},
|
|
{
|
|
"time": 26634,
|
|
"source": "02:00:00:00:01:11",
|
|
"destination": "02:00:00:00:01:12",
|
|
"sourceIp": "192.168.0.10",
|
|
"destinationIp": "192.168.0.20",
|
|
"protocol": 6,
|
|
"sourcePort": 80,
|
|
"destinationPort": 51723,
|
|
"payload": null,
|
|
"tcpFlags": "F",
|
|
"sequence": 1000001,
|
|
"acknowledgement": 0
|
|
},
|
|
{
|
|
"time": 26856,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": null,
|
|
"tcpFlags": "A",
|
|
"sequence": 2000010,
|
|
"acknowledgement": 1000002
|
|
}
|
|
],
|
|
"00000000-0000-0000-0000-000000000102": [
|
|
{
|
|
"time": 729,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "192.168.0.20",
|
|
"targetIp": "192.168.0.10"
|
|
},
|
|
{
|
|
"time": 966,
|
|
"source": "02:00:00:00:01:11",
|
|
"destination": "02:00:00:00:01:12",
|
|
"arp": 2,
|
|
"senderIp": "192.168.0.10",
|
|
"targetIp": "192.168.0.20"
|
|
},
|
|
{
|
|
"time": 969,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": null,
|
|
"tcpFlags": "S",
|
|
"sequence": 2000000,
|
|
"acknowledgement": 0
|
|
},
|
|
{
|
|
"time": 1196,
|
|
"source": "02:00:00:00:01:11",
|
|
"destination": "02:00:00:00:01:12",
|
|
"sourceIp": "192.168.0.10",
|
|
"destinationIp": "192.168.0.20",
|
|
"protocol": 6,
|
|
"sourcePort": 80,
|
|
"destinationPort": 51723,
|
|
"payload": null,
|
|
"tcpFlags": "SA",
|
|
"sequence": 1000000,
|
|
"acknowledgement": 2000001
|
|
},
|
|
{
|
|
"time": 1197,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": null,
|
|
"tcpFlags": "A",
|
|
"sequence": 2000001,
|
|
"acknowledgement": 1000001
|
|
},
|
|
{
|
|
"time": 1716,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": "verloren",
|
|
"tcpFlags": "P",
|
|
"sequence": 2000001,
|
|
"acknowledgement": 0
|
|
},
|
|
{
|
|
"time": 9966,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": "verloren",
|
|
"tcpFlags": "P",
|
|
"sequence": 2000001,
|
|
"acknowledgement": 0
|
|
},
|
|
{
|
|
"time": 18216,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": "verloren",
|
|
"tcpFlags": "P",
|
|
"sequence": 2000001,
|
|
"acknowledgement": 0
|
|
},
|
|
{
|
|
"time": 26467,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": null,
|
|
"tcpFlags": "F",
|
|
"sequence": 2000009,
|
|
"acknowledgement": 0
|
|
},
|
|
{
|
|
"time": 26690,
|
|
"source": "02:00:00:00:01:11",
|
|
"destination": "02:00:00:00:01:12",
|
|
"sourceIp": "192.168.0.10",
|
|
"destinationIp": "192.168.0.20",
|
|
"protocol": 6,
|
|
"sourcePort": 80,
|
|
"destinationPort": 51723,
|
|
"payload": null,
|
|
"tcpFlags": "A",
|
|
"sequence": 1000001,
|
|
"acknowledgement": 2000010
|
|
},
|
|
{
|
|
"time": 26745,
|
|
"source": "02:00:00:00:01:11",
|
|
"destination": "02:00:00:00:01:12",
|
|
"sourceIp": "192.168.0.10",
|
|
"destinationIp": "192.168.0.20",
|
|
"protocol": 6,
|
|
"sourcePort": 80,
|
|
"destinationPort": 51723,
|
|
"payload": null,
|
|
"tcpFlags": "F",
|
|
"sequence": 1000001,
|
|
"acknowledgement": 0
|
|
},
|
|
{
|
|
"time": 26745,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": null,
|
|
"tcpFlags": "A",
|
|
"sequence": 2000010,
|
|
"acknowledgement": 1000002
|
|
}
|
|
],
|
|
"00000000-0000-0000-0000-000000000103": [
|
|
{
|
|
"time": 853,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "FF:FF:FF:FF:FF:FF",
|
|
"arp": 1,
|
|
"senderIp": "192.168.0.20",
|
|
"targetIp": "192.168.0.10"
|
|
},
|
|
{
|
|
"time": 26578,
|
|
"source": "02:00:00:00:01:12",
|
|
"destination": "02:00:00:00:01:11",
|
|
"sourceIp": "192.168.0.20",
|
|
"destinationIp": "192.168.0.10",
|
|
"protocol": 6,
|
|
"sourcePort": 51723,
|
|
"destinationPort": 80,
|
|
"payload": null,
|
|
"tcpFlags": "F",
|
|
"sequence": 2000009,
|
|
"acknowledgement": 0
|
|
}
|
|
]
|
|
},
|
|
"events": [
|
|
[
|
|
214,
|
|
"server oeffnen called"
|
|
],
|
|
[
|
|
715,
|
|
"client verbinden called"
|
|
],
|
|
[
|
|
1215,
|
|
"client verbinden returned"
|
|
],
|
|
[
|
|
1316,
|
|
"server oeffnen returned"
|
|
],
|
|
[
|
|
1715,
|
|
"loss on"
|
|
],
|
|
[
|
|
1716,
|
|
"client senden called"
|
|
],
|
|
[
|
|
26467,
|
|
"client senden failed TimeOutException"
|
|
],
|
|
[
|
|
26467,
|
|
"loss off"
|
|
]
|
|
],
|
|
"states": {
|
|
"client": [
|
|
[
|
|
714,
|
|
"CLOSED"
|
|
],
|
|
[
|
|
725,
|
|
"SYN_SENT"
|
|
],
|
|
[
|
|
1198,
|
|
"ESTABLISHED"
|
|
],
|
|
[
|
|
26467,
|
|
"FIN_WAIT_1"
|
|
],
|
|
[
|
|
26692,
|
|
"FIN_WAIT_2"
|
|
],
|
|
[
|
|
26747,
|
|
"TIME_WAIT"
|
|
],
|
|
[
|
|
34997,
|
|
"CLOSED"
|
|
]
|
|
],
|
|
"server": [
|
|
[
|
|
1316,
|
|
"ESTABLISHED"
|
|
],
|
|
[
|
|
26578,
|
|
"CLOSE_WAIT"
|
|
],
|
|
[
|
|
26580,
|
|
"LAST_ACK"
|
|
],
|
|
[
|
|
26858,
|
|
"CLOSED"
|
|
]
|
|
]
|
|
}
|
|
}
|