From 5c16cf18b4ada59619414108e862e6b122dfb70a Mon Sep 17 00:00:00 2001 From: Julian Kiedaisch Date: Tue, 29 Sep 2026 19:33:14 +0000 Subject: [PATCH] =?UTF-8?q?test(core):=20Swift=20oracle=20=E2=80=94=20the?= =?UTF-8?q?=20filius-ipad=20core=20built=20on=20Linux=20as=20the=20referen?= =?UTF-8?q?ce?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit tools/swift-oracle builds the unchanged Swift runtime (pinned 3b5ded0) in Docker and replays JSON scenarios; the TypeScript engine must produce the same trace events, results and end state. Five scenarios, 884 events, identical. Co-Authored-By: Claude Opus 5.5 --- CHANGES.md | 7 + package.json | 5 +- packages/core/test/oracle.test.ts | 299 + .../scenarios/firewall-and-loss.scenario.json | 194 + .../scenarios/firewall-and-loss.swift.json | 3631 ++++++++ .../routed-two-networks.scenario.json | 134 + .../scenarios/routed-two-networks.swift.json | 5326 +++++++++++ .../router-chain-manual-routes.scenario.json | 195 + .../router-chain-manual-routes.swift.json | 8049 +++++++++++++++++ .../switch-ageing-boundary.scenario.json | 568 ++ .../switch-ageing-boundary.swift.json | 2468 +++++ .../test/scenarios/switch-lan.scenario.json | 155 + .../core/test/scenarios/switch-lan.swift.json | 5877 ++++++++++++ packages/core/test/tsconfig.json | 10 + packages/core/tsconfig.json | 4 +- tools/swift-oracle/.gitignore | 4 + tools/swift-oracle/Package.swift | 23 + tools/swift-oracle/README.md | 40 + .../Sources/CZlib/module.modulemap | 5 + tools/swift-oracle/Sources/CZlib/shim.h | 1 + .../Sources/Compression/Shim.swift | 23 + .../Sources/CoreGraphics/Shim.swift | 1 + .../swift-oracle/Sources/CryptoKit/Shim.swift | 1 + tools/swift-oracle/Sources/Oracle/main.swift | 273 + tools/swift-oracle/fetch-upstream.sh | 26 + .../patches/linux-type-checker.patch | 69 + tools/swift-oracle/run.sh | 10 + 27 files changed, 27394 insertions(+), 4 deletions(-) create mode 100644 packages/core/test/oracle.test.ts create mode 100644 packages/core/test/scenarios/firewall-and-loss.scenario.json create mode 100644 packages/core/test/scenarios/firewall-and-loss.swift.json create mode 100644 packages/core/test/scenarios/routed-two-networks.scenario.json create mode 100644 packages/core/test/scenarios/routed-two-networks.swift.json create mode 100644 packages/core/test/scenarios/router-chain-manual-routes.scenario.json create mode 100644 packages/core/test/scenarios/router-chain-manual-routes.swift.json create mode 100644 packages/core/test/scenarios/switch-ageing-boundary.scenario.json create mode 100644 packages/core/test/scenarios/switch-ageing-boundary.swift.json create mode 100644 packages/core/test/scenarios/switch-lan.scenario.json create mode 100644 packages/core/test/scenarios/switch-lan.swift.json create mode 100644 packages/core/test/tsconfig.json create mode 100644 tools/swift-oracle/.gitignore create mode 100644 tools/swift-oracle/Package.swift create mode 100644 tools/swift-oracle/README.md create mode 100644 tools/swift-oracle/Sources/CZlib/module.modulemap create mode 100644 tools/swift-oracle/Sources/CZlib/shim.h create mode 100644 tools/swift-oracle/Sources/Compression/Shim.swift create mode 100644 tools/swift-oracle/Sources/CoreGraphics/Shim.swift create mode 100644 tools/swift-oracle/Sources/CryptoKit/Shim.swift create mode 100644 tools/swift-oracle/Sources/Oracle/main.swift create mode 100755 tools/swift-oracle/fetch-upstream.sh create mode 100644 tools/swift-oracle/patches/linux-type-checker.patch create mode 100755 tools/swift-oracle/run.sh diff --git a/CHANGES.md b/CHANGES.md index 9e27ee5..4476985 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -21,4 +21,11 @@ Swift-Pfade relativ zu `filius-ipad/ios/FiliusPad/TopologyEditor/` (Stand | `src/runtime/trace.ts` | Engine, Paketspur-Modell | übertragen | | `src/util/equal.ts` | — | neu (Ersatz für Swifts `Equatable`) | | `test/engine.test.ts` | `TopologyNetworkRuntimeEngineTests.swift` (21 von 72 Tests) | übertragen; `nextInt`-Referenzwerte an OpenJDK 21 gemessen | +| `test/oracle.test.ts`, `test/scenarios/` | — | neu: 5 Szenarien, Ergebnis mit dem Swift-Kern abgeglichen (`tools/swift-oracle`) | | `test/routeTable.test.ts` | `TopologyJavaRouteTableTests.swift` (8 von 12 Tests) | übertragen; Geometrie- und Reducer-Tests folgen mit Editor und Dokument | + +## tools/swift-oracle + +Baut den unveränderten Swift-Kern (Stand `3b5ded0`) unter Linux, nur zwei +Ausdrücke sind für den Linux-Compiler aufgeteilt (`patches/`). Die Quellen +selbst werden beim Bau geholt und nicht eingecheckt. diff --git a/package.json b/package.json index b853742..11a336e 100644 --- a/package.json +++ b/package.json @@ -11,9 +11,10 @@ }, "scripts": { "test": "vitest run", - "typecheck": "tsc -b", + "typecheck": "tsc -b && tsc -p packages/core/test", "check": "npm run typecheck && npm run test", - "hooks": "git config core.hooksPath scripts/hooks" + "hooks": "git config core.hooksPath scripts/hooks", + "oracle": "tools/swift-oracle/run.sh" }, "devDependencies": { "@types/node": "^20.19.0", diff --git a/packages/core/test/oracle.test.ts b/packages/core/test/oracle.test.ts new file mode 100644 index 0000000..0b704b5 --- /dev/null +++ b/packages/core/test/oracle.test.ts @@ -0,0 +1,299 @@ +// Replays every scenario in test/scenarios with the TypeScript engine and +// compares the result with what the filius-ipad Swift engine produced for the +// same file (.swift.json, written by tools/swift-oracle/run.sh). +// Every trace event must match: identity, time, node, headers, detail. + +import { readdirSync, readFileSync } from 'node:fs'; +import { dirname, join } from 'node:path'; +import { fileURLToPath } from 'node:url'; +import { describe, expect, it } from 'vitest'; +import { + deviceConfiguration, + firewallConfiguration, + firewallRule, + interfaceKey, + NetworkRuntimeEngine, + portSnapshot, + switchConfiguration, + topologySnapshot, + type FirewallConfiguration, + type IPv4DeliveryResult, + type IcmpObservation, + type ManualRoute, + type NodeKind, + type TopologySnapshot, + type TraceEvent, +} from '../src/index.js'; + +const scenarioDirectory = join(dirname(fileURLToPath(import.meta.url)), 'scenarios'); + +interface Scenario { + seed: number; + speedPercent?: number; + nodes: { id: string; kind: NodeKind; ports: { id: string; label: string; mac?: string }[] }[]; + links: { id: string; sourceNode: string; sourcePort: string; targetNode: string; targetPort: string }[]; + devices?: Record; + interfaces?: { node: string; port: string; ip: string; mask: string }[]; + routes?: Record; + switches?: Record; + firewalls?: Record< + string, + { + active?: boolean; + defaultPolicy?: 'accept' | 'drop'; + dropIcmp?: boolean; + synOnly?: boolean; + filterUdp?: boolean; + rules?: { + source?: string; + sourceMask?: string; + destination?: string; + destinationMask?: string; + port?: number; + protocol?: 'all' | 'icmp' | 'tcp' | 'udp'; + action?: 'accept' | 'drop'; + }[]; + } + >; + steps: { + op: string; + from?: string; + node?: string; + target?: string; + ttl?: number; + identifier?: number; + sequence?: number; + maxTtl?: number; + to?: number; + enabled?: boolean; + percent?: number; + }[]; +} + +function snapshotOf(scenario: Scenario): TopologySnapshot { + const firewalls = new Map(); + for (const [node, config] of Object.entries(scenario.firewalls ?? {})) { + firewalls.set( + node, + firewallConfiguration({ + isActive: config.active ?? false, + defaultPolicy: config.defaultPolicy ?? 'drop', + dropIcmp: config.dropIcmp ?? false, + filterSynSegmentsOnly: config.synOnly ?? true, + filterUdp: config.filterUdp ?? true, + rules: (config.rules ?? []).map((rule) => + firewallRule({ + sourceIPAddress: rule.source ?? '', + sourceSubnetMask: rule.sourceMask ?? '', + destinationIPAddress: rule.destination ?? '', + destinationSubnetMask: rule.destinationMask ?? '', + ...(rule.port === undefined ? {} : { port: rule.port }), + protocol: rule.protocol ?? 'tcp', + action: rule.action ?? 'drop', + }), + ), + }), + ); + } + return topologySnapshot({ + nodes: scenario.nodes.map((node) => ({ + id: node.id, + kind: node.kind, + ports: node.ports.map((port) => portSnapshot(port.id, port.label, port.mac)), + })), + links: scenario.links.map((link) => ({ + id: link.id, + sourceNodeId: link.sourceNode, + sourcePortId: link.sourcePort, + targetNodeId: link.targetNode, + targetPortId: link.targetPort, + })), + deviceConfigurations: new Map( + Object.entries(scenario.devices ?? {}).map(([node, device]) => [ + node, + deviceConfiguration(device.ip, device.mask, device.gateway ?? '', device.dns ?? ''), + ]), + ), + interfaceConfigurations: new Map( + (scenario.interfaces ?? []).map((item) => [ + interfaceKey(item.node, item.port), + { ipAddress: item.ip, subnetMask: item.mask }, + ]), + ), + manualRoutesByNodeId: new Map( + Object.entries(scenario.routes ?? {}).map(([node, rows]) => [ + node, + rows.map( + (row): ManualRoute => ({ + destinationNetwork: row.destination, + subnetMask: row.mask, + gateway: row.gateway, + interfaceIPAddress: row.interface, + }), + ), + ]), + ), + switchConfigurationsByNodeId: new Map( + Object.entries(scenario.switches ?? {}).map(([node, config]) => [ + node, + config.retention === undefined ? switchConfiguration(config.ssid) : switchConfiguration(config.ssid, config.retention), + ]), + ), + firewallConfigurationsByNodeId: firewalls, + }); +} + +const upper = (id: string) => id.toUpperCase(); + +function traceJson(event: TraceEvent): Record { + return { + id: event.id, + time: event.timeMilliseconds, + node: upper(event.nodeId), + direction: event.direction, + layer: event.layer, + operation: event.operation, + before: event.beforeHeaders.map((field) => [field.name, field.value]), + after: event.afterHeaders.map((field) => [field.name, field.value]), + ...(event.frameIdentity === undefined ? {} : { frame: event.frameIdentity }), + ...(event.packetIdentity === undefined ? {} : { packet: event.packetIdentity }), + ...(event.interfaceId === undefined ? {} : { interface: upper(event.interfaceId) }), + ...(event.detail === undefined ? {} : { detail: event.detail }), + }; +} + +function deliveryJson(result: IPv4DeliveryResult): Record { + switch (result.type) { + case 'delivered': + return { type: 'delivered', packet: result.packetIdentity, node: upper(result.nodeId) }; + case 'icmpError': + return { type: 'icmpError', packet: result.packetIdentity, node: upper(result.nodeId), kind: result.kind }; + case 'dropped': + return { + type: 'dropped', + packet: result.packetIdentity, + ...(result.nodeId === undefined ? {} : { node: upper(result.nodeId) }), + }; + } +} + +function observationJson(item: IcmpObservation): Record { + return { + kind: item.message.kind, + identifier: item.message.identifier, + sequence: item.message.sequenceNumber, + sender: item.packet.senderIPAddress, + }; +} + +function run(scenario: Scenario): Record { + const engine = new NetworkRuntimeEngine(scenario.seed); + if (scenario.speedPercent !== undefined) engine.setSimulationSpeed(scenario.speedPercent); + engine.handle({ type: 'start', snapshot: snapshotOf(scenario), seed: scenario.seed, initialTimeMilliseconds: 0 }); + + const results: unknown[] = []; + for (const step of scenario.steps) { + switch (step.op) { + case 'ping': + results.push( + deliveryJson( + engine.sendIcmpEcho(step.from!, step.target!, { + timeToLive: step.ttl ?? 64, + identifier: step.identifier ?? 1, + sequenceNumber: step.sequence ?? 1, + }), + ), + ); + break; + case 'traceroute': + results.push( + engine + .traceIcmpEcho(step.from!, step.target!, { + maximumTimeToLive: step.maxTtl ?? 64, + identifier: step.identifier ?? 1, + }) + .map(observationJson), + ); + break; + case 'resolveMac': + results.push(engine.resolveMacAddress(step.node!, step.target!) ?? null); + break; + case 'advance': + engine.handle({ type: 'advance', toMilliseconds: step.to! }); + results.push(engine.state.currentTimeMilliseconds); + break; + case 'packetLoss': + engine.setGlobalPacketLossEnabled(step.enabled!); + results.push(engine.state.globalPacketLossEnabled); + break; + case 'sat': + results.push( + engine.switchSatEntries(step.node!).map((entry) => ({ + mac: entry.macAddress, + port: entry.portLabel, + updated: entry.updatedAtMilliseconds, + })), + ); + break; + case 'speed': + engine.setSimulationSpeed(step.percent!); + results.push(engine.simulationSpeed.percent); + break; + default: + throw new Error(`unknown step ${step.op}`); + } + } + + const state = engine.state; + const mapOf = (map: Map, convert: (value: V) => unknown) => + Object.fromEntries([...map].map(([key, value]) => [upper(key), convert(value)])); + return { + results, + traces: state.packetTraces.map(traceJson), + time: state.currentTimeMilliseconds, + pendingEvents: state.pendingEvents.length, + arp: mapOf(state.arpCachesByNodeId, (cache) => + Object.fromEntries([...cache].map(([ip, entry]) => [ip, entry.macAddress])), + ), + switchTables: mapOf(state.switchForwardingTablesByNodeId, (table) => + Object.fromEntries([...table].map(([mac, port]) => [mac, upper(port)])), + ), + icmpObservations: mapOf(state.icmpObservationsByNodeId, (items) => items.map(observationJson)), + firewallDecisions: state.firewallDecisions.map((decision) => ({ + packet: decision.packetIdentity, + node: upper(decision.nodeId), + accepted: decision.accepted, + ...(decision.ruleIndex === undefined ? {} : { rule: decision.ruleIndex }), + })), + }; +} + +const scenarioNames = readdirSync(scenarioDirectory) + .filter((name) => name.endsWith('.scenario.json')) + .map((name) => name.replace('.scenario.json', '')) + .sort(); + +describe('same result as the Swift engine', () => { + it('has scenarios with Swift results', () => { + expect(scenarioNames.length).toBeGreaterThan(0); + }); + + for (const name of scenarioNames) { + it(name, () => { + const scenario = JSON.parse(readFileSync(join(scenarioDirectory, `${name}.scenario.json`), 'utf8')) as Scenario; + const expected = JSON.parse(readFileSync(join(scenarioDirectory, `${name}.swift.json`), 'utf8')) as Record< + string, + unknown + >; + const actual = run(scenario); + + // Traces first and one by one: the first difference is the one that matters. + const expectedTraces = expected.traces as unknown[]; + const actualTraces = actual.traces as unknown[]; + for (let index = 0; index < Math.max(expectedTraces.length, actualTraces.length); index += 1) { + expect(actualTraces[index], `trace event #${index + 1}`).toEqual(expectedTraces[index]); + } + expect(actual).toEqual(expected); + }); + } +}); diff --git a/packages/core/test/scenarios/firewall-and-loss.scenario.json b/packages/core/test/scenarios/firewall-and-loss.scenario.json new file mode 100644 index 0000000..7ffc734 --- /dev/null +++ b/packages/core/test/scenarios/firewall-and-loss.scenario.json @@ -0,0 +1,194 @@ +{ + "seed": 18, + "nodes": [ + { + "id": "00000000-0000-0000-0000-000000000401", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000411", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000402", + "kind": "router", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000421", + "label": "rt1" + }, + { + "id": "00000000-0000-0000-0000-000000000422", + "label": "rt2" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000403", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000413", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000404", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000414", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000405", + "kind": "networkSwitch", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000451", + "label": "sw1" + }, + { + "id": "00000000-0000-0000-0000-000000000452", + "label": "sw2" + }, + { + "id": "00000000-0000-0000-0000-000000000453", + "label": "sw3" + } + ] + } + ], + "links": [ + { + "id": "00000000-0000-0000-0000-00000000F00A", + "sourceNode": "00000000-0000-0000-0000-000000000401", + "sourcePort": "00000000-0000-0000-0000-000000000411", + "targetNode": "00000000-0000-0000-0000-000000000405", + "targetPort": "00000000-0000-0000-0000-000000000451" + }, + { + "id": "00000000-0000-0000-0000-00000000F00B", + "sourceNode": "00000000-0000-0000-0000-000000000404", + "sourcePort": "00000000-0000-0000-0000-000000000414", + "targetNode": "00000000-0000-0000-0000-000000000405", + "targetPort": "00000000-0000-0000-0000-000000000452" + }, + { + "id": "00000000-0000-0000-0000-00000000F00C", + "sourceNode": "00000000-0000-0000-0000-000000000405", + "sourcePort": "00000000-0000-0000-0000-000000000453", + "targetNode": "00000000-0000-0000-0000-000000000402", + "targetPort": "00000000-0000-0000-0000-000000000421" + }, + { + "id": "00000000-0000-0000-0000-00000000F00D", + "sourceNode": "00000000-0000-0000-0000-000000000402", + "sourcePort": "00000000-0000-0000-0000-000000000422", + "targetNode": "00000000-0000-0000-0000-000000000403", + "targetPort": "00000000-0000-0000-0000-000000000413" + } + ], + "devices": { + "00000000-0000-0000-0000-000000000401": { + "ip": "10.1.0.2", + "mask": "255.255.255.0", + "gateway": "10.1.0.1" + }, + "00000000-0000-0000-0000-000000000402": { + "ip": "10.1.0.1", + "mask": "255.255.255.0" + }, + "00000000-0000-0000-0000-000000000403": { + "ip": "10.2.0.2", + "mask": "255.255.255.0", + "gateway": "10.2.0.1" + }, + "00000000-0000-0000-0000-000000000404": { + "ip": "10.1.0.3", + "mask": "255.255.255.0", + "gateway": "10.1.0.1" + } + }, + "interfaces": [ + { + "node": "00000000-0000-0000-0000-000000000402", + "port": "00000000-0000-0000-0000-000000000421", + "ip": "10.1.0.1", + "mask": "255.255.255.0" + }, + { + "node": "00000000-0000-0000-0000-000000000402", + "port": "00000000-0000-0000-0000-000000000422", + "ip": "10.2.0.1", + "mask": "255.255.255.0" + } + ], + "firewalls": { + "00000000-0000-0000-0000-000000000402": { + "active": true, + "defaultPolicy": "accept", + "dropIcmp": true + }, + "00000000-0000-0000-0000-000000000404": { + "active": true, + "defaultPolicy": "drop", + "dropIcmp": false + }, + "00000000-0000-0000-0000-000000000401": { + "active": true, + "defaultPolicy": "drop", + "dropIcmp": true + } + }, + "steps": [ + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000401", + "target": "10.2.0.2", + "identifier": 30, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000401", + "target": "10.1.0.3", + "identifier": 31, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000404", + "target": "10.1.0.2", + "identifier": 32, + "sequence": 1 + }, + { + "op": "packetLoss", + "enabled": true + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000404", + "target": "10.1.0.1", + "identifier": 33, + "sequence": 1 + }, + { + "op": "packetLoss", + "enabled": false + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000404", + "target": "10.1.0.1", + "identifier": 34, + "sequence": 1 + } + ] +} diff --git a/packages/core/test/scenarios/firewall-and-loss.swift.json b/packages/core/test/scenarios/firewall-and-loss.swift.json new file mode 100644 index 0000000..1b23777 --- /dev/null +++ b/packages/core/test/scenarios/firewall-and-loss.swift.json @@ -0,0 +1,3631 @@ +{ + "arp" : { + "00000000-0000-0000-0000-000000000401" : { + "10.1.0.1" : "02:00:00:00:04:21", + "10.1.0.3" : "02:00:00:00:04:14" + }, + "00000000-0000-0000-0000-000000000402" : { + "10.1.0.2" : "02:00:00:00:04:11", + "10.1.0.3" : "02:00:00:00:04:14" + }, + "00000000-0000-0000-0000-000000000404" : { + "10.1.0.1" : "02:00:00:00:04:21", + "10.1.0.2" : "02:00:00:00:04:11" + } + }, + "firewallDecisions" : [ + { + "accepted" : false, + "node" : "00000000-0000-0000-0000-000000000402", + "packet" : 1 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000404", + "packet" : 2 + }, + { + "accepted" : false, + "node" : "00000000-0000-0000-0000-000000000401", + "packet" : 3 + }, + { + "accepted" : false, + "node" : "00000000-0000-0000-0000-000000000401", + "packet" : 4 + }, + { + "accepted" : false, + "node" : "00000000-0000-0000-0000-000000000402", + "packet" : 7 + } + ], + "icmpObservations" : { + "00000000-0000-0000-0000-000000000404" : [ + { + "identifier" : 33, + "kind" : "destinationHostUnreachable", + "sender" : "10.1.0.3", + "sequence" : 1 + } + ] + }, + "pendingEvents" : 0, + "results" : [ + { + "node" : "00000000-0000-0000-0000-000000000401", + "packet" : 1, + "type" : "delivered" + }, + { + "node" : "00000000-0000-0000-0000-000000000401", + "packet" : 2, + "type" : "delivered" + }, + { + "node" : "00000000-0000-0000-0000-000000000404", + "packet" : 4, + "type" : "delivered" + }, + true, + { + "kind" : "destinationHostUnreachable", + "node" : "00000000-0000-0000-0000-000000000404", + "packet" : 5, + "type" : "icmpError" + }, + false, + { + "node" : "00000000-0000-0000-0000-000000000404", + "packet" : 7, + "type" : "delivered" + } + ], + "switchTables" : { + "00000000-0000-0000-0000-000000000405" : { + "02:00:00:00:04:11" : "00000000-0000-0000-0000-000000000451", + "02:00:00:00:04:14" : "00000000-0000-0000-0000-000000000452", + "02:00:00:00:04:21" : "00000000-0000-0000-0000-000000000453" + } + }, + "time" : 1320, + "traces" : [ + { + "after" : [ + [ + "senderIP", + "10.1.0.2" + ], + [ + "receiverIP", + "10.2.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 1, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "created", + "packet" : 1, + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 10.1.0.1", + "direction" : "outbound", + "frame" : 1, + "id" : 2, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "created", + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 3, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "sent", + "time" : 0 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 4, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "time" : 55 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 1, + "id" : 5, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 1, + "id" : 6, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 7, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 1, + "id" : 8, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 9, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "time" : 55 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 10, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 11, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:04:11" + ], + [ + "senderIP", + "10.1.0.2" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.1.0.1" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 12, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "accepted", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 13, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 14, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:04:11" + ], + [ + "senderIP", + "10.1.0.2" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.1.0.1" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 15, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "accepted", + "time" : 110 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 10.1.0.1", + "direction" : "outbound", + "frame" : 2, + "id" : 16, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "created", + "time" : 110 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 2, + "id" : 17, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "sent", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 18, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 2, + "id" : 19, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 2, + "id" : 20, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 2, + "id" : 21, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 22, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 23, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:04:21" + ], + [ + "senderIP", + "10.1.0.1" + ], + [ + "targetMAC", + "02:00:00:00:04:11" + ], + [ + "targetIP", + "10.1.0.2" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 24, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "accepted", + "time" : 220 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.2" + ], + [ + "receiverIP", + "10.2.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 25, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "sent", + "packet" : 1, + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 26, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "created", + "packet" : 1, + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 27, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "sent", + "packet" : 1, + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 28, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 3, + "id" : 29, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 3, + "id" : 30, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 31, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 32, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 33, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.2" + ], + [ + "receiverIP", + "10.2.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 34, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.2" + ], + [ + "receiverIP", + "10.2.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "ICMP blocked by general setting", + "direction" : "inbound", + "frame" : 3, + "id" : 35, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "dropped", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.2" + ], + [ + "receiverIP", + "10.1.0.3" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 36, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "created", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 10.1.0.3", + "direction" : "outbound", + "frame" : 4, + "id" : 37, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "created", + "time" : 330 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 38, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "sent", + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 39, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 4, + "id" : 40, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 4, + "id" : 41, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 42, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 4, + "id" : 43, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 44, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 45, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "received", + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 46, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "received", + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:04:11" + ], + [ + "senderIP", + "10.1.0.2" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.1.0.3" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 47, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "accepted", + "time" : 440 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 10.1.0.3", + "direction" : "outbound", + "frame" : 5, + "id" : 48, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "time" : 440 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 49, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 50, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 51, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:04:11" + ], + [ + "senderIP", + "10.1.0.2" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.1.0.3" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 52, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "accepted", + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 53, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "time" : 495 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 5, + "id" : 54, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "time" : 495 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 5, + "id" : 55, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "time" : 495 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 56, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "time" : 495 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 57, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 58, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:04:14" + ], + [ + "senderIP", + "10.1.0.3" + ], + [ + "targetMAC", + "02:00:00:00:04:11" + ], + [ + "targetIP", + "10.1.0.2" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 59, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "accepted", + "time" : 550 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.2" + ], + [ + "receiverIP", + "10.1.0.3" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 60, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "sent", + "packet" : 2, + "time" : 550 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 61, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "created", + "packet" : 2, + "time" : 550 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 62, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "sent", + "packet" : 2, + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 63, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "packet" : 2, + "time" : 605 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 6, + "id" : 64, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "packet" : 2, + "time" : 605 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 6, + "id" : 65, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "packet" : 2, + "time" : 605 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 66, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "packet" : 2, + "time" : 605 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 67, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "received", + "packet" : 2, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:11" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 68, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "received", + "packet" : 2, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.2" + ], + [ + "receiverIP", + "10.1.0.3" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 69, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "received", + "packet" : 2, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.2" + ], + [ + "receiverIP", + "10.1.0.3" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "ICMP bypasses ordered rules", + "direction" : "inbound", + "frame" : 6, + "id" : 70, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "accepted", + "packet" : 2, + "time" : 660 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 71, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "packet" : 3, + "time" : 660 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 72, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "packet" : 3, + "time" : 660 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 73, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "packet" : 3, + "time" : 660 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 74, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "packet" : 3, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 75, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "packet" : 3, + "time" : 715 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 7, + "id" : 76, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "packet" : 3, + "time" : 715 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 7, + "id" : 77, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "packet" : 3, + "time" : 715 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 78, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "packet" : 3, + "time" : 715 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 79, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "packet" : 3, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 80, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "packet" : 3, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 81, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "packet" : 3, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "ICMP blocked by general setting", + "direction" : "inbound", + "frame" : 7, + "id" : 82, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "dropped", + "packet" : 3, + "time" : 770 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 83, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "packet" : 4, + "time" : 770 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 84, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "packet" : 4, + "time" : 770 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 85, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "packet" : 4, + "time" : 770 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 86, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "packet" : 4, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 87, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "packet" : 4, + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 8, + "id" : 88, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "packet" : 4, + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 8, + "id" : 89, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "packet" : 4, + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 90, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "packet" : 4, + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 91, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "packet" : 4, + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:11" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 92, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "packet" : 4, + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 93, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "packet" : 4, + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "ICMP blocked by general setting", + "direction" : "inbound", + "frame" : 8, + "id" : 94, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "dropped", + "packet" : 4, + "time" : 880 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 95, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "packet" : 5, + "time" : 880 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 10.1.0.1", + "direction" : "outbound", + "frame" : 9, + "id" : 96, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "time" : 880 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 9, + "id" : 97, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "time" : 880 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "global packet-loss simulation", + "direction" : "inbound", + "frame" : 9, + "id" : 98, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "dropped", + "time" : 935 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 10.1.0.1", + "direction" : "outbound", + "frame" : 10, + "id" : 99, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "time" : 935 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 10, + "id" : 100, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "time" : 935 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "global packet-loss simulation", + "direction" : "inbound", + "frame" : 10, + "id" : 101, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "dropped", + "time" : 990 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.3" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP destinationHostUnreachable", + "direction" : "local", + "id" : 102, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "packet" : 6, + "time" : 990 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 103, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "packet" : 7, + "time" : 990 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 10.1.0.1", + "direction" : "outbound", + "frame" : 11, + "id" : 104, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "time" : 990 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 11, + "id" : 105, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 106, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "time" : 1045 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 11, + "id" : 107, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 11, + "id" : 108, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 11, + "id" : 109, + "interface" : "00000000-0000-0000-0000-000000000451", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 11, + "id" : 110, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 11, + "id" : 111, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "time" : 1045 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 112, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 113, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "received", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:04:14" + ], + [ + "senderIP", + "10.1.0.3" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.1.0.1" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 114, + "interface" : "00000000-0000-0000-0000-000000000411", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000401", + "operation" : "accepted", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 115, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 116, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:04:14" + ], + [ + "senderIP", + "10.1.0.3" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.1.0.1" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 117, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "accepted", + "time" : 1100 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 10.1.0.1", + "direction" : "outbound", + "frame" : 12, + "id" : 118, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "created", + "time" : 1100 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 119, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "sent", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 120, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "time" : 1155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 12, + "id" : 121, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "time" : 1155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 12, + "id" : 122, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "time" : 1155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 123, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "time" : 1155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 124, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "received", + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:21" + ], + [ + "destinationMAC", + "02:00:00:00:04:14" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 125, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "received", + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:04:21" + ], + [ + "senderIP", + "10.1.0.1" + ], + [ + "targetMAC", + "02:00:00:00:04:14" + ], + [ + "targetIP", + "10.1.0.3" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 126, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "accepted", + "time" : 1210 + }, + { + "after" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 127, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "packet" : 7, + "time" : 1210 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 128, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "created", + "packet" : 7, + "time" : 1210 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 129, + "interface" : "00000000-0000-0000-0000-000000000414", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000404", + "operation" : "sent", + "packet" : 7, + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 130, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "received", + "packet" : 7, + "time" : 1265 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 13, + "id" : 131, + "interface" : "00000000-0000-0000-0000-000000000452", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "accepted", + "packet" : 7, + "time" : 1265 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 13, + "id" : 132, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "forwarded", + "packet" : 7, + "time" : 1265 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 133, + "interface" : "00000000-0000-0000-0000-000000000453", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000405", + "operation" : "sent", + "packet" : 7, + "time" : 1265 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 134, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "packet" : 7, + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:04:14" + ], + [ + "destinationMAC", + "02:00:00:00:04:21" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 135, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "packet" : 7, + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 136, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "received", + "packet" : 7, + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.1.0.3" + ], + [ + "receiverIP", + "10.1.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "ICMP blocked by general setting", + "direction" : "inbound", + "frame" : 13, + "id" : 137, + "interface" : "00000000-0000-0000-0000-000000000421", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000402", + "operation" : "dropped", + "packet" : 7, + "time" : 1320 + } + ] +} diff --git a/packages/core/test/scenarios/routed-two-networks.scenario.json b/packages/core/test/scenarios/routed-two-networks.scenario.json new file mode 100644 index 0000000..1902b3c --- /dev/null +++ b/packages/core/test/scenarios/routed-two-networks.scenario.json @@ -0,0 +1,134 @@ +{ + "seed": 14, + "nodes": [ + { + "id": "00000000-0000-0000-0000-000000000201", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000211", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000202", + "kind": "router", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000221", + "label": "rt1" + }, + { + "id": "00000000-0000-0000-0000-000000000222", + "label": "rt2" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000203", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000213", + "label": "eth0" + } + ] + } + ], + "links": [ + { + "id": "00000000-0000-0000-0000-00000000F004", + "sourceNode": "00000000-0000-0000-0000-000000000201", + "sourcePort": "00000000-0000-0000-0000-000000000211", + "targetNode": "00000000-0000-0000-0000-000000000202", + "targetPort": "00000000-0000-0000-0000-000000000221" + }, + { + "id": "00000000-0000-0000-0000-00000000F005", + "sourceNode": "00000000-0000-0000-0000-000000000202", + "sourcePort": "00000000-0000-0000-0000-000000000222", + "targetNode": "00000000-0000-0000-0000-000000000203", + "targetPort": "00000000-0000-0000-0000-000000000213" + } + ], + "devices": { + "00000000-0000-0000-0000-000000000201": { + "ip": "10.0.0.2", + "mask": "255.255.255.0", + "gateway": "10.0.0.1" + }, + "00000000-0000-0000-0000-000000000202": { + "ip": "10.0.0.1", + "mask": "255.255.255.0" + }, + "00000000-0000-0000-0000-000000000203": { + "ip": "20.0.0.2", + "mask": "255.255.255.0", + "gateway": "20.0.0.1" + } + }, + "interfaces": [ + { + "node": "00000000-0000-0000-0000-000000000202", + "port": "00000000-0000-0000-0000-000000000221", + "ip": "10.0.0.1", + "mask": "255.255.255.0" + }, + { + "node": "00000000-0000-0000-0000-000000000202", + "port": "00000000-0000-0000-0000-000000000222", + "ip": "20.0.0.1", + "mask": "255.255.255.0" + } + ], + "steps": [ + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000201", + "target": "20.0.0.2", + "identifier": 10, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000201", + "target": "20.0.0.2", + "ttl": 1, + "identifier": 11, + "sequence": 1 + }, + { + "op": "traceroute", + "from": "00000000-0000-0000-0000-000000000201", + "target": "20.0.0.2", + "identifier": 12 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000201", + "target": "30.0.0.2", + "identifier": 13, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000201", + "target": "20.0.0.99", + "identifier": 14, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000203", + "target": "10.0.0.1", + "identifier": 15, + "sequence": 1 + }, + { + "op": "resolveMac", + "node": "00000000-0000-0000-0000-000000000203", + "target": "20.0.0.1" + } + ] +} diff --git a/packages/core/test/scenarios/routed-two-networks.swift.json b/packages/core/test/scenarios/routed-two-networks.swift.json new file mode 100644 index 0000000..7c796a3 --- /dev/null +++ b/packages/core/test/scenarios/routed-two-networks.swift.json @@ -0,0 +1,5326 @@ +{ + "arp" : { + "00000000-0000-0000-0000-000000000201" : { + "10.0.0.1" : "02:00:00:00:02:21" + }, + "00000000-0000-0000-0000-000000000202" : { + "10.0.0.2" : "02:00:00:00:02:11", + "20.0.0.2" : "02:00:00:00:02:13" + }, + "00000000-0000-0000-0000-000000000203" : { + "20.0.0.1" : "02:00:00:00:02:22" + } + }, + "firewallDecisions" : [ + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000202", + "packet" : 1 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000202", + "packet" : 2 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000202", + "packet" : 3 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000202", + "packet" : 5 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000202", + "packet" : 7 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000202", + "packet" : 8 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000202", + "packet" : 9 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000202", + "packet" : 11 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000202", + "packet" : 13 + } + ], + "icmpObservations" : { + "00000000-0000-0000-0000-000000000201" : [ + { + "identifier" : 10, + "kind" : "echoReply", + "sender" : "20.0.0.2", + "sequence" : 1 + }, + { + "identifier" : 11, + "kind" : "timeExceeded", + "sender" : "10.0.0.1", + "sequence" : 1 + }, + { + "identifier" : 12, + "kind" : "timeExceeded", + "sender" : "10.0.0.1", + "sequence" : 1 + }, + { + "identifier" : 12, + "kind" : "echoReply", + "sender" : "20.0.0.2", + "sequence" : 2 + }, + { + "identifier" : 13, + "kind" : "destinationNetworkUnreachable", + "sender" : "10.0.0.1", + "sequence" : 1 + }, + { + "identifier" : 14, + "kind" : "destinationHostUnreachable", + "sender" : "10.0.0.1", + "sequence" : 1 + } + ], + "00000000-0000-0000-0000-000000000203" : [ + { + "identifier" : 15, + "kind" : "echoReply", + "sender" : "20.0.0.1", + "sequence" : 1 + } + ] + }, + "pendingEvents" : 0, + "results" : [ + { + "node" : "00000000-0000-0000-0000-000000000201", + "packet" : 1, + "type" : "delivered" + }, + { + "kind" : "timeExceeded", + "node" : "00000000-0000-0000-0000-000000000201", + "packet" : 3, + "type" : "icmpError" + }, + [ + { + "identifier" : 12, + "kind" : "timeExceeded", + "sender" : "10.0.0.1", + "sequence" : 1 + }, + { + "identifier" : 12, + "kind" : "echoReply", + "sender" : "20.0.0.2", + "sequence" : 2 + } + ], + { + "kind" : "destinationNetworkUnreachable", + "node" : "00000000-0000-0000-0000-000000000201", + "packet" : 9, + "type" : "icmpError" + }, + { + "kind" : "destinationHostUnreachable", + "node" : "00000000-0000-0000-0000-000000000201", + "packet" : 11, + "type" : "icmpError" + }, + { + "node" : "00000000-0000-0000-0000-000000000203", + "packet" : 13, + "type" : "delivered" + }, + "02:00:00:00:02:22" + ], + "switchTables" : { + + }, + "time" : 1210, + "traces" : [ + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 1, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 1, + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 10.0.0.1", + "direction" : "outbound", + "frame" : 1, + "id" : 2, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 3, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "time" : 0 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 4, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "time" : 55 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 5, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "time" : 55 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:02:11" + ], + [ + "senderIP", + "10.0.0.2" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.0.0.1" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 6, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 10.0.0.1", + "direction" : "outbound", + "frame" : 2, + "id" : 7, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 2, + "id" : 8, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "time" : 55 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 9, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 10, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:02:21" + ], + [ + "senderIP", + "10.0.0.1" + ], + [ + "targetMAC", + "02:00:00:00:02:11" + ], + [ + "targetIP", + "10.0.0.2" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 11, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "accepted", + "time" : 110 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 12, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 1, + "time" : 110 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 13, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 1, + "time" : 110 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 14, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 1, + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 15, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 1, + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 16, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 1, + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 17, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 1, + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 3, + "id" : 18, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "packet" : 1, + "time" : 165 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 3, + "id" : 19, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 1, + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 20.0.0.2", + "direction" : "outbound", + "frame" : 4, + "id" : 20, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 21, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 20.0.0.2", + "direction" : "outbound", + "frame" : 5, + "id" : 22, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 23, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "waiting for ARP resolution of 20.0.0.2", + "direction" : "outbound", + "id" : 24, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 1, + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 25, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 26, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:02:22" + ], + [ + "senderIP", + "20.0.0.1" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "20.0.0.2" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 27, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "accepted", + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 20.0.0.2", + "direction" : "outbound", + "frame" : 6, + "id" : 28, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "created", + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 29, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "sent", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 30, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 31, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:02:22" + ], + [ + "senderIP", + "20.0.0.1" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "20.0.0.2" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 32, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "accepted", + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 20.0.0.2", + "direction" : "outbound", + "frame" : 7, + "id" : 33, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "created", + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 34, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "sent", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 35, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 36, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "time" : 275 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 37, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 38, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 39, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:02:13" + ], + [ + "senderIP", + "20.0.0.2" + ], + [ + "targetMAC", + "02:00:00:00:02:22" + ], + [ + "targetIP", + "20.0.0.1" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 40, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 41, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 42, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:02:13" + ], + [ + "senderIP", + "20.0.0.2" + ], + [ + "targetMAC", + "02:00:00:00:02:22" + ], + [ + "targetIP", + "20.0.0.1" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 43, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 44, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 45, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 46, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 47, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "created", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 9, + "id" : 48, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "sent", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 9, + "id" : 49, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "created", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 9, + "id" : 50, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "sent", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 51, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 52, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 53, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 9, + "id" : 54, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 9, + "id" : 55, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 10, + "id" : 56, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 10, + "id" : 57, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 10, + "id" : 58, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 59, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 60, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 61, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "10" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 62, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "accepted", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 63, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 3, + "time" : 440 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 11, + "id" : 64, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 3, + "time" : 440 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 11, + "id" : 65, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 3, + "time" : 440 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 11, + "id" : 66, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 3, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 67, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 3, + "time" : 495 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 68, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 3, + "time" : 495 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 69, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 3, + "time" : 495 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 11, + "id" : 70, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "packet" : 3, + "time" : 495 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP timeExceeded", + "direction" : "outbound", + "id" : 71, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 4, + "time" : 495 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 72, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 4, + "time" : 495 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 73, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 4, + "time" : 495 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 74, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 4, + "time" : 495 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 75, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 4, + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 76, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 4, + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 77, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 4, + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "timeExceeded" + ], + [ + "identifier", + "11" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 78, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "accepted", + "packet" : 4, + "time" : 550 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 79, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 5, + "time" : 550 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 80, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 5, + "time" : 550 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 81, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 5, + "time" : 550 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 82, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 5, + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 83, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 5, + "time" : 605 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 84, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 5, + "time" : 605 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 85, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 5, + "time" : 605 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 13, + "id" : 86, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "packet" : 5, + "time" : 605 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP timeExceeded", + "direction" : "outbound", + "id" : 87, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 6, + "time" : 605 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 14, + "id" : 88, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 6, + "time" : 605 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 14, + "id" : 89, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 6, + "time" : 605 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 14, + "id" : 90, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 6, + "time" : 605 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 91, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 6, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 92, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 6, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 93, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 6, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "timeExceeded" + ], + [ + "identifier", + "12" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 94, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "accepted", + "packet" : 6, + "time" : 660 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 95, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 7, + "time" : 660 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 15, + "id" : 96, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 7, + "time" : 660 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 15, + "id" : 97, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 7, + "time" : 660 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 15, + "id" : 98, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 7, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 99, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 7, + "time" : 715 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 100, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 7, + "time" : 715 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 101, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 7, + "time" : 715 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 15, + "id" : 102, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "packet" : 7, + "time" : 715 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 15, + "id" : 103, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 7, + "time" : 715 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 16, + "id" : 104, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 7, + "time" : 715 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 16, + "id" : 105, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 7, + "time" : 715 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 16, + "id" : 106, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 7, + "time" : 715 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 107, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "packet" : 7, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 108, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "packet" : 7, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 109, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "packet" : 7, + "time" : 770 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 110, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "created", + "packet" : 8, + "time" : 770 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 111, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "sent", + "packet" : 8, + "time" : 770 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 112, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "created", + "packet" : 8, + "time" : 770 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 113, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "sent", + "packet" : 8, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 114, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 8, + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 115, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 8, + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 116, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 8, + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 17, + "id" : 117, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "packet" : 8, + "time" : 825 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 17, + "id" : 118, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 8, + "time" : 825 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 119, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 8, + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 120, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 8, + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 121, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 8, + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 122, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 8, + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 123, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 8, + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 124, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 8, + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "12" + ], + [ + "sequence", + "2" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 125, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "accepted", + "packet" : 8, + "time" : 880 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "30.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 126, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 9, + "time" : 880 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "30.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 19, + "id" : 127, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 9, + "time" : 880 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 19, + "id" : 128, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 9, + "time" : 880 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 19, + "id" : 129, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 9, + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 19, + "id" : 130, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 9, + "time" : 935 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 19, + "id" : 131, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 9, + "time" : 935 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "30.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 19, + "id" : 132, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 9, + "time" : 935 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "30.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 19, + "id" : 133, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "packet" : 9, + "time" : 935 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "30.0.0.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "30.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 19, + "id" : 134, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 9, + "time" : 935 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP destinationNetworkUnreachable", + "direction" : "outbound", + "id" : 135, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 10, + "time" : 935 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 20, + "id" : 136, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 10, + "time" : 935 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 20, + "id" : 137, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 10, + "time" : 935 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 20, + "id" : 138, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 10, + "time" : 935 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 20, + "id" : 139, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 10, + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 20, + "id" : 140, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 10, + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 20, + "id" : 141, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 10, + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "destinationNetworkUnreachable" + ], + [ + "identifier", + "13" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 142, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "accepted", + "packet" : 10, + "time" : 990 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.99" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 143, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 11, + "time" : 990 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.99" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 21, + "id" : 144, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 11, + "time" : 990 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 21, + "id" : 145, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "created", + "packet" : 11, + "time" : 990 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 21, + "id" : 146, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "sent", + "packet" : 11, + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 21, + "id" : 147, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 11, + "time" : 1045 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:11" + ], + [ + "destinationMAC", + "02:00:00:00:02:21" + ] + ], + "direction" : "inbound", + "frame" : 21, + "id" : 148, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 11, + "time" : 1045 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.99" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 21, + "id" : 149, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 11, + "time" : 1045 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.99" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 21, + "id" : 150, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "packet" : 11, + "time" : 1045 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.99" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "10.0.0.2" + ], + [ + "receiverIP", + "20.0.0.99" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 21, + "id" : 151, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "forwarded", + "packet" : 11, + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 20.0.0.99", + "direction" : "outbound", + "frame" : 22, + "id" : 152, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 22, + "id" : 153, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 20.0.0.99", + "direction" : "outbound", + "frame" : 23, + "id" : 154, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 23, + "id" : 155, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "time" : 1045 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP destinationHostUnreachable", + "direction" : "outbound", + "id" : 156, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 12, + "time" : 1045 + }, + { + "after" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 24, + "id" : 157, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 12, + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 24, + "id" : 158, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 12, + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 24, + "id" : 159, + "interface" : "00000000-0000-0000-0000-000000000221", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 12, + "time" : 1045 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 22, + "id" : 160, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 22, + "id" : 161, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:02:22" + ], + [ + "senderIP", + "20.0.0.1" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "20.0.0.99" + ] + ], + "direction" : "inbound", + "frame" : 22, + "id" : 162, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "accepted", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 23, + "id" : 163, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 23, + "id" : 164, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:02:22" + ], + [ + "senderIP", + "20.0.0.1" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "20.0.0.99" + ] + ], + "direction" : "inbound", + "frame" : 23, + "id" : 165, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "accepted", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 24, + "id" : 166, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 12, + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:21" + ], + [ + "destinationMAC", + "02:00:00:00:02:11" + ] + ], + "direction" : "inbound", + "frame" : 24, + "id" : 167, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 12, + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.0.0.1" + ], + [ + "receiverIP", + "10.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 24, + "id" : 168, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "received", + "packet" : 12, + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "destinationHostUnreachable" + ], + [ + "identifier", + "14" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 169, + "interface" : "00000000-0000-0000-0000-000000000211", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000201", + "operation" : "accepted", + "packet" : 12, + "time" : 1100 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 170, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "created", + "packet" : 13, + "time" : 1100 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 25, + "id" : 171, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "sent", + "packet" : 13, + "time" : 1100 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 25, + "id" : 172, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "created", + "packet" : 13, + "time" : 1100 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 25, + "id" : 173, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "sent", + "packet" : 13, + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 25, + "id" : 174, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 13, + "time" : 1155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:13" + ], + [ + "destinationMAC", + "02:00:00:00:02:22" + ] + ], + "direction" : "inbound", + "frame" : 25, + "id" : 175, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 13, + "time" : 1155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 25, + "id" : 176, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "received", + "packet" : 13, + "time" : 1155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "20.0.0.2" + ], + [ + "receiverIP", + "10.0.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 25, + "id" : 177, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "accepted", + "packet" : 13, + "time" : 1155 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.1" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 178, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 14, + "time" : 1155 + }, + { + "after" : [ + [ + "senderIP", + "20.0.0.1" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 26, + "id" : 179, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 14, + "time" : 1155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 26, + "id" : 180, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "created", + "packet" : 14, + "time" : 1155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 26, + "id" : 181, + "interface" : "00000000-0000-0000-0000-000000000222", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000202", + "operation" : "sent", + "packet" : 14, + "time" : 1155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "direction" : "inbound", + "frame" : 26, + "id" : 182, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "packet" : 14, + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:02:22" + ], + [ + "destinationMAC", + "02:00:00:00:02:13" + ] + ], + "direction" : "inbound", + "frame" : 26, + "id" : 183, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "packet" : 14, + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "20.0.0.1" + ], + [ + "receiverIP", + "20.0.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 26, + "id" : 184, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "received", + "packet" : 14, + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "15" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 185, + "interface" : "00000000-0000-0000-0000-000000000213", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000203", + "operation" : "accepted", + "packet" : 14, + "time" : 1210 + } + ] +} diff --git a/packages/core/test/scenarios/router-chain-manual-routes.scenario.json b/packages/core/test/scenarios/router-chain-manual-routes.scenario.json new file mode 100644 index 0000000..2b163a6 --- /dev/null +++ b/packages/core/test/scenarios/router-chain-manual-routes.scenario.json @@ -0,0 +1,195 @@ +{ + "seed": 3, + "speedPercent": 50, + "nodes": [ + { + "id": "00000000-0000-0000-0000-000000000301", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000311", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000302", + "kind": "router", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000321", + "label": "rt1" + }, + { + "id": "00000000-0000-0000-0000-000000000322", + "label": "rt2" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000303", + "kind": "router", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000331", + "label": "rt1" + }, + { + "id": "00000000-0000-0000-0000-000000000332", + "label": "rt2" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000304", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000314", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000305", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000315", + "label": "eth0" + } + ] + } + ], + "links": [ + { + "id": "00000000-0000-0000-0000-00000000F006", + "sourceNode": "00000000-0000-0000-0000-000000000301", + "sourcePort": "00000000-0000-0000-0000-000000000311", + "targetNode": "00000000-0000-0000-0000-000000000302", + "targetPort": "00000000-0000-0000-0000-000000000321" + }, + { + "id": "00000000-0000-0000-0000-00000000F007", + "sourceNode": "00000000-0000-0000-0000-000000000302", + "sourcePort": "00000000-0000-0000-0000-000000000322", + "targetNode": "00000000-0000-0000-0000-000000000303", + "targetPort": "00000000-0000-0000-0000-000000000331" + }, + { + "id": "00000000-0000-0000-0000-00000000F008", + "sourceNode": "00000000-0000-0000-0000-000000000303", + "sourcePort": "00000000-0000-0000-0000-000000000332", + "targetNode": "00000000-0000-0000-0000-000000000304", + "targetPort": "00000000-0000-0000-0000-000000000314" + }, + { + "id": "00000000-0000-0000-0000-00000000F009", + "sourceNode": "00000000-0000-0000-0000-000000000305", + "sourcePort": "00000000-0000-0000-0000-000000000315", + "targetNode": "00000000-0000-0000-0000-000000000303", + "targetPort": "00000000-0000-0000-0000-000000000332" + } + ], + "devices": { + "00000000-0000-0000-0000-000000000301": { + "ip": "192.168.1.10", + "mask": "255.255.255.0", + "gateway": "192.168.1.1" + }, + "00000000-0000-0000-0000-000000000302": { + "ip": "192.168.1.1", + "mask": "255.255.255.0" + }, + "00000000-0000-0000-0000-000000000303": { + "ip": "10.10.10.2", + "mask": "255.255.255.0", + "gateway": "10.10.10.1" + }, + "00000000-0000-0000-0000-000000000304": { + "ip": "172.16.0.10", + "mask": "255.255.0.0", + "gateway": "172.16.0.1" + }, + "00000000-0000-0000-0000-000000000305": { + "ip": "172.16.0.20", + "mask": "255.255.0.0" + } + }, + "interfaces": [ + { + "node": "00000000-0000-0000-0000-000000000302", + "port": "00000000-0000-0000-0000-000000000321", + "ip": "192.168.1.1", + "mask": "255.255.255.0" + }, + { + "node": "00000000-0000-0000-0000-000000000302", + "port": "00000000-0000-0000-0000-000000000322", + "ip": "10.10.10.1", + "mask": "255.255.255.252" + }, + { + "node": "00000000-0000-0000-0000-000000000303", + "port": "00000000-0000-0000-0000-000000000331", + "ip": "10.10.10.2", + "mask": "255.255.255.252" + }, + { + "node": "00000000-0000-0000-0000-000000000303", + "port": "00000000-0000-0000-0000-000000000332", + "ip": "172.16.0.1", + "mask": "255.255.0.0" + } + ], + "routes": { + "00000000-0000-0000-0000-000000000302": [ + { + "destination": "172.16.0.0", + "mask": "255.255.0.0", + "gateway": "10.10.10.2", + "interface": "10.10.10.1" + } + ] + }, + "steps": [ + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000301", + "target": "172.16.0.10", + "identifier": 20, + "sequence": 1 + }, + { + "op": "traceroute", + "from": "00000000-0000-0000-0000-000000000301", + "target": "172.16.0.10", + "identifier": 21 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000305", + "target": "192.168.1.10", + "identifier": 22, + "sequence": 1 + }, + { + "op": "speed", + "percent": 100 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000301", + "target": "172.16.0.10", + "identifier": 23, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000301", + "target": "10.10.10.2", + "identifier": 24, + "sequence": 1 + } + ] +} diff --git a/packages/core/test/scenarios/router-chain-manual-routes.swift.json b/packages/core/test/scenarios/router-chain-manual-routes.swift.json new file mode 100644 index 0000000..4d10ad4 --- /dev/null +++ b/packages/core/test/scenarios/router-chain-manual-routes.swift.json @@ -0,0 +1,8049 @@ +{ + "arp" : { + "00000000-0000-0000-0000-000000000301" : { + "192.168.1.1" : "02:00:00:00:03:21" + }, + "00000000-0000-0000-0000-000000000302" : { + "10.10.10.2" : "02:00:00:00:03:31", + "192.168.1.10" : "02:00:00:00:03:11" + }, + "00000000-0000-0000-0000-000000000303" : { + "10.10.10.1" : "02:00:00:00:03:22", + "172.16.0.10" : "02:00:00:00:03:14" + }, + "00000000-0000-0000-0000-000000000304" : { + "172.16.0.1" : "02:00:00:00:03:32" + } + }, + "firewallDecisions" : [ + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 1 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000303", + "packet" : 1 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000303", + "packet" : 2 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 2 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 3 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 5 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000303", + "packet" : 5 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 6 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 7 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000303", + "packet" : 7 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000303", + "packet" : 8 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 8 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 11 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000303", + "packet" : 11 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000303", + "packet" : 12 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 12 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 13 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000303", + "packet" : 13 + }, + { + "accepted" : true, + "node" : "00000000-0000-0000-0000-000000000302", + "packet" : 14 + } + ], + "icmpObservations" : { + "00000000-0000-0000-0000-000000000301" : [ + { + "identifier" : 20, + "kind" : "echoReply", + "sender" : "172.16.0.10", + "sequence" : 1 + }, + { + "identifier" : 21, + "kind" : "timeExceeded", + "sender" : "192.168.1.1", + "sequence" : 1 + }, + { + "identifier" : 21, + "kind" : "timeExceeded", + "sender" : "10.10.10.2", + "sequence" : 2 + }, + { + "identifier" : 21, + "kind" : "echoReply", + "sender" : "172.16.0.10", + "sequence" : 3 + }, + { + "identifier" : 23, + "kind" : "echoReply", + "sender" : "172.16.0.10", + "sequence" : 1 + }, + { + "identifier" : 24, + "kind" : "echoReply", + "sender" : "10.10.10.2", + "sequence" : 1 + } + ], + "00000000-0000-0000-0000-000000000305" : [ + { + "identifier" : 22, + "kind" : "destinationNetworkUnreachable", + "sender" : "172.16.0.20", + "sequence" : 1 + } + ] + }, + "pendingEvents" : 0, + "results" : [ + { + "node" : "00000000-0000-0000-0000-000000000301", + "packet" : 1, + "type" : "delivered" + }, + [ + { + "identifier" : 21, + "kind" : "timeExceeded", + "sender" : "192.168.1.1", + "sequence" : 1 + }, + { + "identifier" : 21, + "kind" : "timeExceeded", + "sender" : "10.10.10.2", + "sequence" : 2 + }, + { + "identifier" : 21, + "kind" : "echoReply", + "sender" : "172.16.0.10", + "sequence" : 3 + } + ], + { + "kind" : "destinationNetworkUnreachable", + "node" : "00000000-0000-0000-0000-000000000305", + "packet" : 9, + "type" : "icmpError" + }, + 100, + { + "node" : "00000000-0000-0000-0000-000000000301", + "packet" : 11, + "type" : "delivered" + }, + { + "node" : "00000000-0000-0000-0000-000000000301", + "packet" : 13, + "type" : "delivered" + } + ], + "switchTables" : { + + }, + "time" : 6170, + "traces" : [ + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 1, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 1, + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 192.168.1.1", + "direction" : "outbound", + "frame" : 1, + "id" : 2, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 3, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "time" : 0 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 4, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "time" : 255 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 5, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "time" : 255 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:03:11" + ], + [ + "senderIP", + "192.168.1.10" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.1.1" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 6, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "time" : 255 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 192.168.1.1", + "direction" : "outbound", + "frame" : 2, + "id" : 7, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "time" : 255 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 2, + "id" : 8, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "time" : 255 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 9, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "time" : 510 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 10, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "time" : 510 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:03:21" + ], + [ + "senderIP", + "192.168.1.1" + ], + [ + "targetMAC", + "02:00:00:00:03:11" + ], + [ + "targetIP", + "192.168.1.10" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 11, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "accepted", + "time" : 510 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 12, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 1, + "time" : 510 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 13, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 1, + "time" : 510 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 14, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 1, + "time" : 510 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 15, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 1, + "time" : 765 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 16, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 1, + "time" : 765 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 17, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 1, + "time" : 765 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 3, + "id" : 18, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 1, + "time" : 765 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 3, + "id" : 19, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 1, + "time" : 765 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 10.10.10.2", + "direction" : "outbound", + "frame" : 4, + "id" : 20, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "time" : 765 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 21, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "time" : 765 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 10.10.10.2", + "direction" : "outbound", + "frame" : 5, + "id" : 22, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "time" : 765 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 23, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "time" : 765 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "waiting for ARP resolution of 10.10.10.2", + "direction" : "outbound", + "id" : 24, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 1, + "time" : 765 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 25, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "time" : 1020 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 26, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "time" : 1020 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:03:22" + ], + [ + "senderIP", + "10.10.10.1" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.10.10.2" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 27, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "time" : 1020 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 10.10.10.2", + "direction" : "outbound", + "frame" : 6, + "id" : 28, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "time" : 1020 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 29, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "time" : 1020 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 30, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "time" : 1020 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 31, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "time" : 1020 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:03:22" + ], + [ + "senderIP", + "10.10.10.1" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.10.10.2" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 32, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "time" : 1020 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 10.10.10.2", + "direction" : "outbound", + "frame" : 7, + "id" : 33, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "time" : 1020 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 34, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "time" : 1020 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 35, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "time" : 1275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 36, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "time" : 1275 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 37, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 1, + "time" : 1275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 38, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 1, + "time" : 1275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 39, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 1, + "time" : 1275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:03:31" + ], + [ + "senderIP", + "10.10.10.2" + ], + [ + "targetMAC", + "02:00:00:00:03:22" + ], + [ + "targetIP", + "10.10.10.1" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 40, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "time" : 1275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 41, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "time" : 1275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 42, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "time" : 1275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:03:31" + ], + [ + "senderIP", + "10.10.10.2" + ], + [ + "targetMAC", + "02:00:00:00:03:22" + ], + [ + "targetIP", + "10.10.10.1" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 43, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "time" : 1275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 44, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 1, + "time" : 1530 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 45, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 1, + "time" : 1530 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 46, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 1, + "time" : 1530 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 8, + "id" : 47, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "packet" : 1, + "time" : 1530 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 8, + "id" : 48, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 1, + "time" : 1530 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 172.16.0.10", + "direction" : "outbound", + "frame" : 9, + "id" : 49, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "time" : 1530 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 9, + "id" : 50, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "time" : 1530 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 172.16.0.10", + "direction" : "outbound", + "frame" : 10, + "id" : 51, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "time" : 1530 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 10, + "id" : 52, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "time" : 1530 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "waiting for ARP resolution of 172.16.0.10", + "direction" : "outbound", + "id" : 53, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 1, + "time" : 1530 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 54, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "time" : 1785 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 55, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "time" : 1785 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:03:32" + ], + [ + "senderIP", + "172.16.0.1" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "172.16.0.10" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 56, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "accepted", + "time" : 1785 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 172.16.0.10", + "direction" : "outbound", + "frame" : 11, + "id" : 57, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "created", + "time" : 1785 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 11, + "id" : 58, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "sent", + "time" : 1785 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 59, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "time" : 1785 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 60, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "time" : 1785 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:03:32" + ], + [ + "senderIP", + "172.16.0.1" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "172.16.0.10" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 61, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "accepted", + "time" : 1785 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 172.16.0.10", + "direction" : "outbound", + "frame" : 12, + "id" : 62, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "created", + "time" : 1785 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 63, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "sent", + "time" : 1785 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 64, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "time" : 2040 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 65, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "time" : 2040 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 66, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 1, + "time" : 2040 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 67, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 1, + "time" : 2040 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 68, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 1, + "time" : 2040 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:03:14" + ], + [ + "senderIP", + "172.16.0.10" + ], + [ + "targetMAC", + "02:00:00:00:03:32" + ], + [ + "targetIP", + "172.16.0.1" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 69, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "time" : 2040 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 70, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "time" : 2040 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 71, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "time" : 2040 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:03:14" + ], + [ + "senderIP", + "172.16.0.10" + ], + [ + "targetMAC", + "02:00:00:00:03:32" + ], + [ + "targetIP", + "172.16.0.1" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 72, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "time" : 2040 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 73, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "packet" : 1, + "time" : 2295 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 74, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "packet" : 1, + "time" : 2295 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 75, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "packet" : 1, + "time" : 2295 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 76, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "created", + "packet" : 2, + "time" : 2295 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 14, + "id" : 77, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "sent", + "packet" : 2, + "time" : 2295 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 14, + "id" : 78, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "created", + "packet" : 2, + "time" : 2295 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 14, + "id" : 79, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "sent", + "packet" : 2, + "time" : 2295 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 80, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 2, + "time" : 2550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 81, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 2, + "time" : 2550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 82, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 2, + "time" : 2550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 14, + "id" : 83, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "packet" : 2, + "time" : 2550 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 14, + "id" : 84, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 2, + "time" : 2550 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 15, + "id" : 85, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 2, + "time" : 2550 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 15, + "id" : 86, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 2, + "time" : 2550 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 15, + "id" : 87, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 2, + "time" : 2550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 88, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 2, + "time" : 2805 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 89, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 2, + "time" : 2805 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 90, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 2, + "time" : 2805 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 15, + "id" : 91, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 2, + "time" : 2805 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 15, + "id" : 92, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 2, + "time" : 2805 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 16, + "id" : 93, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 2, + "time" : 2805 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 16, + "id" : 94, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 2, + "time" : 2805 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 16, + "id" : 95, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 2, + "time" : 2805 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 96, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 2, + "time" : 3060 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 97, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 2, + "time" : 3060 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 98, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 2, + "time" : 3060 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "20" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 99, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "accepted", + "packet" : 2, + "time" : 3060 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 100, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 3, + "time" : 3060 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 101, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 3, + "time" : 3060 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 102, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 3, + "time" : 3060 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 103, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 3, + "time" : 3060 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 104, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 3, + "time" : 3315 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 105, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 3, + "time" : 3315 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 106, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 3, + "time" : 3315 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 17, + "id" : 107, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 3, + "time" : 3315 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.1" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP timeExceeded", + "direction" : "outbound", + "id" : 108, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 4, + "time" : 3315 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.1" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 109, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 4, + "time" : 3315 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 110, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 4, + "time" : 3315 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 111, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 4, + "time" : 3315 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 112, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 4, + "time" : 3570 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 113, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 4, + "time" : 3570 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.1" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 114, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 4, + "time" : 3570 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "timeExceeded" + ], + [ + "identifier", + "21" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 115, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "accepted", + "packet" : 4, + "time" : 3570 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 116, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 5, + "time" : 3570 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 19, + "id" : 117, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 5, + "time" : 3570 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 19, + "id" : 118, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 5, + "time" : 3570 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 19, + "id" : 119, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 5, + "time" : 3570 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 19, + "id" : 120, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 5, + "time" : 3825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 19, + "id" : 121, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 5, + "time" : 3825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 19, + "id" : 122, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 5, + "time" : 3825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 19, + "id" : 123, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 5, + "time" : 3825 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 19, + "id" : 124, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 5, + "time" : 3825 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 20, + "id" : 125, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 5, + "time" : 3825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 20, + "id" : 126, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 5, + "time" : 3825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 20, + "id" : 127, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 5, + "time" : 3825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 20, + "id" : 128, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 5, + "time" : 4080 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 20, + "id" : 129, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 5, + "time" : 4080 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 20, + "id" : 130, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 5, + "time" : 4080 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 20, + "id" : 131, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "packet" : 5, + "time" : 4080 + }, + { + "after" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP timeExceeded", + "direction" : "outbound", + "id" : 132, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 6, + "time" : 4080 + }, + { + "after" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 21, + "id" : 133, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 6, + "time" : 4080 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 21, + "id" : 134, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 6, + "time" : 4080 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 21, + "id" : 135, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 6, + "time" : 4080 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 21, + "id" : 136, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 6, + "time" : 4335 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 21, + "id" : 137, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 6, + "time" : 4335 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 21, + "id" : 138, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 6, + "time" : 4335 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 21, + "id" : 139, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 6, + "time" : 4335 + }, + { + "after" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 21, + "id" : 140, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 6, + "time" : 4335 + }, + { + "after" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 22, + "id" : 141, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 6, + "time" : 4335 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 22, + "id" : 142, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 6, + "time" : 4335 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 22, + "id" : 143, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 6, + "time" : 4335 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 22, + "id" : 144, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 6, + "time" : 4590 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 22, + "id" : 145, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 6, + "time" : 4590 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 22, + "id" : 146, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 6, + "time" : 4590 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "timeExceeded" + ], + [ + "identifier", + "21" + ], + [ + "sequence", + "2" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 147, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "accepted", + "packet" : 6, + "time" : 4590 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "3" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 148, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 7, + "time" : 4590 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "3" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 23, + "id" : 149, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 7, + "time" : 4590 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 23, + "id" : 150, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 7, + "time" : 4590 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 23, + "id" : 151, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 7, + "time" : 4590 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 23, + "id" : 152, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 7, + "time" : 4845 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 23, + "id" : 153, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 7, + "time" : 4845 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "3" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 23, + "id" : 154, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 7, + "time" : 4845 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "3" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 23, + "id" : 155, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 7, + "time" : 4845 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "3" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 23, + "id" : 156, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 7, + "time" : 4845 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 24, + "id" : 157, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 7, + "time" : 4845 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 24, + "id" : 158, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 7, + "time" : 4845 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 24, + "id" : 159, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 7, + "time" : 4845 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 24, + "id" : 160, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 7, + "time" : 5100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 24, + "id" : 161, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 7, + "time" : 5100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 24, + "id" : 162, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 7, + "time" : 5100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 24, + "id" : 163, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "packet" : 7, + "time" : 5100 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "2" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 24, + "id" : 164, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 7, + "time" : 5100 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 25, + "id" : 165, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 7, + "time" : 5100 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 25, + "id" : 166, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 7, + "time" : 5100 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 25, + "id" : 167, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 7, + "time" : 5100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "direction" : "inbound", + "frame" : 25, + "id" : 168, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "packet" : 7, + "time" : 5355 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "direction" : "inbound", + "frame" : 25, + "id" : 169, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "packet" : 7, + "time" : 5355 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "1" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 25, + "id" : 170, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "packet" : 7, + "time" : 5355 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 171, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "created", + "packet" : 8, + "time" : 5355 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 26, + "id" : 172, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "sent", + "packet" : 8, + "time" : 5355 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 26, + "id" : 173, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "created", + "packet" : 8, + "time" : 5355 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 26, + "id" : 174, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "sent", + "packet" : 8, + "time" : 5355 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 26, + "id" : 175, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 8, + "time" : 5610 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 26, + "id" : 176, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 8, + "time" : 5610 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 26, + "id" : 177, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 8, + "time" : 5610 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 26, + "id" : 178, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "packet" : 8, + "time" : 5610 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 26, + "id" : 179, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 8, + "time" : 5610 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 27, + "id" : 180, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 8, + "time" : 5610 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 27, + "id" : 181, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 8, + "time" : 5610 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 27, + "id" : 182, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 8, + "time" : 5610 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 27, + "id" : 183, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 8, + "time" : 5865 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 27, + "id" : 184, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 8, + "time" : 5865 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 27, + "id" : 185, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 8, + "time" : 5865 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 27, + "id" : 186, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 8, + "time" : 5865 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 27, + "id" : 187, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 8, + "time" : 5865 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 28, + "id" : 188, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 8, + "time" : 5865 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 28, + "id" : 189, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 8, + "time" : 5865 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 28, + "id" : 190, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 8, + "time" : 5865 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 28, + "id" : 191, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 8, + "time" : 6120 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 28, + "id" : 192, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 8, + "time" : 6120 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 28, + "id" : 193, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 8, + "time" : 6120 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "21" + ], + [ + "sequence", + "3" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 194, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "accepted", + "packet" : 8, + "time" : 6120 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.20" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 195, + "interface" : "00000000-0000-0000-0000-000000000315", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000305", + "operation" : "created", + "packet" : 9, + "time" : 6120 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.20" + ], + [ + "receiverIP", + "172.16.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP destinationNetworkUnreachable", + "direction" : "local", + "id" : 196, + "interface" : "00000000-0000-0000-0000-000000000315", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000305", + "operation" : "created", + "packet" : 10, + "time" : 6120 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 197, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 11, + "time" : 6120 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 29, + "id" : 198, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 11, + "time" : 6120 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 29, + "id" : 199, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 11, + "time" : 6120 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 29, + "id" : 200, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 11, + "time" : 6120 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 29, + "id" : 201, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 11, + "time" : 6125 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 29, + "id" : 202, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 11, + "time" : 6125 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 29, + "id" : 203, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 11, + "time" : 6125 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 29, + "id" : 204, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 11, + "time" : 6125 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 29, + "id" : 205, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 11, + "time" : 6125 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 30, + "id" : 206, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 11, + "time" : 6125 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 30, + "id" : 207, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 11, + "time" : 6125 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 30, + "id" : 208, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 11, + "time" : 6125 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 30, + "id" : 209, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 11, + "time" : 6130 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 30, + "id" : 210, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 11, + "time" : 6130 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 30, + "id" : 211, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 11, + "time" : 6130 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 30, + "id" : 212, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "packet" : 11, + "time" : 6130 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 30, + "id" : 213, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 11, + "time" : 6130 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 31, + "id" : 214, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 11, + "time" : 6130 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 31, + "id" : 215, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 11, + "time" : 6130 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 31, + "id" : 216, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 11, + "time" : 6130 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "direction" : "inbound", + "frame" : 31, + "id" : 217, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "packet" : 11, + "time" : 6135 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:32" + ], + [ + "destinationMAC", + "02:00:00:00:03:14" + ] + ], + "direction" : "inbound", + "frame" : 31, + "id" : 218, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "packet" : 11, + "time" : 6135 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "172.16.0.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 31, + "id" : 219, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "received", + "packet" : 11, + "time" : 6135 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 220, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "created", + "packet" : 12, + "time" : 6135 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 32, + "id" : 221, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "sent", + "packet" : 12, + "time" : 6135 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 32, + "id" : 222, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "created", + "packet" : 12, + "time" : 6135 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 32, + "id" : 223, + "interface" : "00000000-0000-0000-0000-000000000314", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000304", + "operation" : "sent", + "packet" : 12, + "time" : 6135 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 32, + "id" : 224, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 12, + "time" : 6140 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:14" + ], + [ + "destinationMAC", + "02:00:00:00:03:32" + ] + ], + "direction" : "inbound", + "frame" : 32, + "id" : 225, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 12, + "time" : 6140 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 32, + "id" : 226, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 12, + "time" : 6140 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 32, + "id" : 227, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "packet" : 12, + "time" : 6140 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 32, + "id" : 228, + "interface" : "00000000-0000-0000-0000-000000000332", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 12, + "time" : 6140 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 33, + "id" : 229, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "forwarded", + "packet" : 12, + "time" : 6140 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 33, + "id" : 230, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 12, + "time" : 6140 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 33, + "id" : 231, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 12, + "time" : 6140 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 33, + "id" : 232, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 12, + "time" : 6145 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 33, + "id" : 233, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 12, + "time" : 6145 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 33, + "id" : 234, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 12, + "time" : 6145 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 33, + "id" : 235, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 12, + "time" : 6145 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 33, + "id" : 236, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 12, + "time" : 6145 + }, + { + "after" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 34, + "id" : 237, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 12, + "time" : 6145 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 34, + "id" : 238, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 12, + "time" : 6145 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 34, + "id" : 239, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 12, + "time" : 6145 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 34, + "id" : 240, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 12, + "time" : 6150 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 34, + "id" : 241, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 12, + "time" : 6150 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "172.16.0.10" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "62" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 34, + "id" : 242, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 12, + "time" : 6150 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "23" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 243, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "accepted", + "packet" : 12, + "time" : 6150 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "10.10.10.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 244, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 13, + "time" : 6150 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "10.10.10.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 35, + "id" : 245, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 13, + "time" : 6150 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 35, + "id" : 246, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "created", + "packet" : 13, + "time" : 6150 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 35, + "id" : 247, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "sent", + "packet" : 13, + "time" : 6150 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 35, + "id" : 248, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 13, + "time" : 6155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:11" + ], + [ + "destinationMAC", + "02:00:00:00:03:21" + ] + ], + "direction" : "inbound", + "frame" : 35, + "id" : 249, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 13, + "time" : 6155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "10.10.10.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 35, + "id" : 250, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 13, + "time" : 6155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "10.10.10.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 35, + "id" : 251, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 13, + "time" : 6155 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "10.10.10.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "10.10.10.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 35, + "id" : 252, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 13, + "time" : 6155 + }, + { + "after" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "10.10.10.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 36, + "id" : 253, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 13, + "time" : 6155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 36, + "id" : 254, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 13, + "time" : 6155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 36, + "id" : 255, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 13, + "time" : 6155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 36, + "id" : 256, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 13, + "time" : 6160 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:22" + ], + [ + "destinationMAC", + "02:00:00:00:03:31" + ] + ], + "direction" : "inbound", + "frame" : 36, + "id" : 257, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 13, + "time" : 6160 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "10.10.10.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 36, + "id" : 258, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "received", + "packet" : 13, + "time" : 6160 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.1.10" + ], + [ + "receiverIP", + "10.10.10.2" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 36, + "id" : 259, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "accepted", + "packet" : 13, + "time" : 6160 + }, + { + "after" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 260, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 14, + "time" : 6160 + }, + { + "after" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 37, + "id" : 261, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 14, + "time" : 6160 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 37, + "id" : 262, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "created", + "packet" : 14, + "time" : 6160 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 37, + "id" : 263, + "interface" : "00000000-0000-0000-0000-000000000331", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000303", + "operation" : "sent", + "packet" : 14, + "time" : 6160 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 37, + "id" : 264, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 14, + "time" : 6165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:31" + ], + [ + "destinationMAC", + "02:00:00:00:03:22" + ] + ], + "direction" : "inbound", + "frame" : 37, + "id" : 265, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 14, + "time" : 6165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 37, + "id" : 266, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "received", + "packet" : 14, + "time" : 6165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "firewall inactive", + "direction" : "inbound", + "frame" : 37, + "id" : 267, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "accepted", + "packet" : 14, + "time" : 6165 + }, + { + "after" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "TTL decremented", + "direction" : "outbound", + "frame" : 37, + "id" : 268, + "interface" : "00000000-0000-0000-0000-000000000322", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 14, + "time" : 6165 + }, + { + "after" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 38, + "id" : 269, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "forwarded", + "packet" : 14, + "time" : 6165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 38, + "id" : 270, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "created", + "packet" : 14, + "time" : 6165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 38, + "id" : 271, + "interface" : "00000000-0000-0000-0000-000000000321", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000302", + "operation" : "sent", + "packet" : 14, + "time" : 6165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 38, + "id" : 272, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 14, + "time" : 6170 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:03:21" + ], + [ + "destinationMAC", + "02:00:00:00:03:11" + ] + ], + "direction" : "inbound", + "frame" : 38, + "id" : 273, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 14, + "time" : 6170 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.10.10.2" + ], + [ + "receiverIP", + "192.168.1.10" + ], + [ + "ttl", + "63" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 38, + "id" : 274, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "received", + "packet" : 14, + "time" : 6170 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "24" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 275, + "interface" : "00000000-0000-0000-0000-000000000311", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000301", + "operation" : "accepted", + "packet" : 14, + "time" : 6170 + } + ] +} diff --git a/packages/core/test/scenarios/switch-ageing-boundary.scenario.json b/packages/core/test/scenarios/switch-ageing-boundary.scenario.json new file mode 100644 index 0000000..2f4ab40 --- /dev/null +++ b/packages/core/test/scenarios/switch-ageing-boundary.scenario.json @@ -0,0 +1,568 @@ +{ + "seed": 5, + "nodes": [ + { + "id": "00000000-0000-0000-0000-000000000501", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000511", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000502", + "kind": "notebook", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000512", + "label": "eth0", + "mac": "0a:1b:2c:3d:4e:5f" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000503", + "kind": "networkSwitch", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000521", + "label": "sw1" + }, + { + "id": "00000000-0000-0000-0000-000000000522", + "label": "sw2" + } + ] + } + ], + "links": [ + { + "id": "00000000-0000-0000-0000-00000000F501", + "sourceNode": "00000000-0000-0000-0000-000000000501", + "sourcePort": "00000000-0000-0000-0000-000000000511", + "targetNode": "00000000-0000-0000-0000-000000000503", + "targetPort": "00000000-0000-0000-0000-000000000521" + }, + { + "id": "00000000-0000-0000-0000-00000000F502", + "sourceNode": "00000000-0000-0000-0000-000000000503", + "sourcePort": "00000000-0000-0000-0000-000000000522", + "targetNode": "00000000-0000-0000-0000-000000000502", + "targetPort": "00000000-0000-0000-0000-000000000512" + } + ], + "devices": { + "00000000-0000-0000-0000-000000000501": { + "ip": "10.5.0.1", + "mask": "255.255.255.0" + }, + "00000000-0000-0000-0000-000000000502": { + "ip": "10.5.0.2", + "mask": "255.255.255.0" + } + }, + "switches": { + "00000000-0000-0000-0000-000000000503": { + "ssid": "age", + "retention": 1000 + } + }, + "steps": [ + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000501", + "target": "10.5.0.2", + "identifier": 50, + "sequence": 1 + }, + { + "op": "advance", + "to": 1000 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1005 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1010 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1015 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1020 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1025 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1030 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1035 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1040 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1045 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1050 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1055 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1060 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1065 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1070 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1075 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1080 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1085 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1090 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1095 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1100 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1105 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1110 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1115 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1120 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1125 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1130 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1135 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1140 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1145 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1150 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1155 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1160 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1165 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1170 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1175 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1180 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1185 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1190 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1195 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1200 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1205 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1210 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1215 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1220 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1225 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1230 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1235 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1240 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1245 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1250 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1255 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1260 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1265 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1270 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1275 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1280 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1285 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1290 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "advance", + "to": 1295 + }, + { + "op": "sat", + "node": "00000000-0000-0000-0000-000000000503" + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000502", + "target": "10.5.0.1", + "identifier": 51, + "sequence": 1 + } + ] +} diff --git a/packages/core/test/scenarios/switch-ageing-boundary.swift.json b/packages/core/test/scenarios/switch-ageing-boundary.swift.json new file mode 100644 index 0000000..1a478dc --- /dev/null +++ b/packages/core/test/scenarios/switch-ageing-boundary.swift.json @@ -0,0 +1,2468 @@ +{ + "arp" : { + "00000000-0000-0000-0000-000000000501" : { + "10.5.0.2" : "0A:1B:2C:3D:4E:5F" + }, + "00000000-0000-0000-0000-000000000502" : { + "10.5.0.1" : "02:00:00:00:05:11" + } + }, + "firewallDecisions" : [ + + ], + "icmpObservations" : { + "00000000-0000-0000-0000-000000000501" : [ + { + "identifier" : 50, + "kind" : "echoReply", + "sender" : "10.5.0.2", + "sequence" : 1 + } + ], + "00000000-0000-0000-0000-000000000502" : [ + { + "identifier" : 51, + "kind" : "echoReply", + "sender" : "10.5.0.1", + "sequence" : 1 + } + ] + }, + "pendingEvents" : 0, + "results" : [ + { + "node" : "00000000-0000-0000-0000-000000000501", + "packet" : 1, + "type" : "delivered" + }, + 1000, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1005, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1010, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1015, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1020, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1025, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1030, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1035, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1040, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1045, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1050, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1055, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1060, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1065, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1070, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1075, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1080, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1085, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1090, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1095, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1100, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1105, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1110, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1115, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1120, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1125, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1130, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1135, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1140, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1145, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1150, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1155, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1160, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1165, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1170, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1175, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1180, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1185, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1190, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1195, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1200, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1205, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1210, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1215, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1220, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1225, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1230, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1235, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1240, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1245, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1250, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1255, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1260, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1265, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1270, + [ + { + "mac" : "02:00:00:00:05:11", + "port" : "sw1", + "updated" : 275 + }, + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1275, + [ + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1280, + [ + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1285, + [ + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1290, + [ + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + 1295, + [ + { + "mac" : "0A:1B:2C:3D:4E:5F", + "port" : "sw2", + "updated" : 385 + } + ], + { + "node" : "00000000-0000-0000-0000-000000000502", + "packet" : 3, + "type" : "delivered" + } + ], + "switchTables" : { + "00000000-0000-0000-0000-000000000503" : { + "0A:1B:2C:3D:4E:5F" : "00000000-0000-0000-0000-000000000522", + "02:00:00:00:05:11" : "00000000-0000-0000-0000-000000000521" + } + }, + "time" : 1515, + "traces" : [ + { + "after" : [ + [ + "senderIP", + "10.5.0.1" + ], + [ + "receiverIP", + "10.5.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 1, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "created", + "packet" : 1, + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 10.5.0.2", + "direction" : "outbound", + "frame" : 1, + "id" : 2, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "created", + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 3, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "sent", + "time" : 0 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 4, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "received", + "time" : 55 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 1, + "id" : 5, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "accepted", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 1, + "id" : 6, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "forwarded", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 7, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "sent", + "time" : 55 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 8, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 9, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:05:11" + ], + [ + "senderIP", + "10.5.0.1" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "10.5.0.2" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 10, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "accepted", + "time" : 110 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 10.5.0.2", + "direction" : "outbound", + "frame" : 2, + "id" : 11, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "created", + "time" : 110 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 2, + "id" : 12, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "sent", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 13, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "received", + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 2, + "id" : 14, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "accepted", + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 2, + "id" : 15, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "forwarded", + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 2, + "id" : 16, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "sent", + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 17, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 18, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "senderIP", + "10.5.0.2" + ], + [ + "targetMAC", + "02:00:00:00:05:11" + ], + [ + "targetIP", + "10.5.0.1" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 19, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "accepted", + "time" : 220 + }, + { + "after" : [ + [ + "senderIP", + "10.5.0.1" + ], + [ + "receiverIP", + "10.5.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 20, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "sent", + "packet" : 1, + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 21, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "created", + "packet" : 1, + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 22, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "sent", + "packet" : 1, + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 23, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "received", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 3, + "id" : 24, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "accepted", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 3, + "id" : 25, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "forwarded", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 26, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "sent", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 27, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 28, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.5.0.1" + ], + [ + "receiverIP", + "10.5.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 29, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + [ + "senderIP", + "10.5.0.2" + ], + [ + "receiverIP", + "10.5.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 30, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "created", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "senderIP", + "10.5.0.2" + ], + [ + "receiverIP", + "10.5.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 31, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "sent", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 32, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "created", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 33, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "sent", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 34, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "received", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 4, + "id" : 35, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "accepted", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 4, + "id" : 36, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "forwarded", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 37, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "sent", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 38, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "received", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 39, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "received", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.5.0.2" + ], + [ + "receiverIP", + "10.5.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 40, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "received", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "50" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 41, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "accepted", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + [ + "senderIP", + "10.5.0.2" + ], + [ + "receiverIP", + "10.5.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 42, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "created", + "packet" : 3, + "time" : 1295 + }, + { + "after" : [ + [ + "senderIP", + "10.5.0.2" + ], + [ + "receiverIP", + "10.5.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 43, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "sent", + "packet" : 3, + "time" : 1295 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 44, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "created", + "packet" : 3, + "time" : 1295 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 45, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "sent", + "packet" : 3, + "time" : 1295 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 46, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "received", + "packet" : 3, + "time" : 1350 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 5, + "id" : 47, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "accepted", + "packet" : 3, + "time" : 1350 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "detail" : "switch unknown unicast flooding", + "direction" : "outbound", + "frame" : 5, + "id" : 48, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "forwarded", + "packet" : 3, + "time" : 1350 + }, + { + "after" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 49, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "sent", + "packet" : 3, + "time" : 1350 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 50, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "received", + "packet" : 3, + "time" : 1405 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "0A:1B:2C:3D:4E:5F" + ], + [ + "destinationMAC", + "02:00:00:00:05:11" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 51, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "received", + "packet" : 3, + "time" : 1405 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.5.0.2" + ], + [ + "receiverIP", + "10.5.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 52, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "received", + "packet" : 3, + "time" : 1405 + }, + { + "after" : [ + [ + "senderIP", + "10.5.0.1" + ], + [ + "receiverIP", + "10.5.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 53, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "created", + "packet" : 4, + "time" : 1405 + }, + { + "after" : [ + [ + "senderIP", + "10.5.0.1" + ], + [ + "receiverIP", + "10.5.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 54, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "sent", + "packet" : 4, + "time" : 1405 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 55, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "created", + "packet" : 4, + "time" : 1405 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 56, + "interface" : "00000000-0000-0000-0000-000000000511", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000501", + "operation" : "sent", + "packet" : 4, + "time" : 1405 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 57, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "received", + "packet" : 4, + "time" : 1460 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 6, + "id" : 58, + "interface" : "00000000-0000-0000-0000-000000000521", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "accepted", + "packet" : 4, + "time" : 1460 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 6, + "id" : 59, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "forwarded", + "packet" : 4, + "time" : 1460 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 60, + "interface" : "00000000-0000-0000-0000-000000000522", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000503", + "operation" : "sent", + "packet" : 4, + "time" : 1460 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 61, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "received", + "packet" : 4, + "time" : 1515 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:05:11" + ], + [ + "destinationMAC", + "0A:1B:2C:3D:4E:5F" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 62, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "received", + "packet" : 4, + "time" : 1515 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "10.5.0.1" + ], + [ + "receiverIP", + "10.5.0.2" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 63, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "received", + "packet" : 4, + "time" : 1515 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "51" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 64, + "interface" : "00000000-0000-0000-0000-000000000512", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000502", + "operation" : "accepted", + "packet" : 4, + "time" : 1515 + } + ] +} diff --git a/packages/core/test/scenarios/switch-lan.scenario.json b/packages/core/test/scenarios/switch-lan.scenario.json new file mode 100644 index 0000000..01bc9fd --- /dev/null +++ b/packages/core/test/scenarios/switch-lan.scenario.json @@ -0,0 +1,155 @@ +{ + "seed": 14, + "nodes": [ + { + "id": "00000000-0000-0000-0000-000000000101", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000111", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000102", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000112", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000103", + "kind": "pc", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000113", + "label": "eth0" + } + ] + }, + { + "id": "00000000-0000-0000-0000-000000000104", + "kind": "networkSwitch", + "ports": [ + { + "id": "00000000-0000-0000-0000-000000000121", + "label": "sw1" + }, + { + "id": "00000000-0000-0000-0000-000000000122", + "label": "sw2" + }, + { + "id": "00000000-0000-0000-0000-000000000123", + "label": "sw3" + }, + { + "id": "00000000-0000-0000-0000-000000000124", + "label": "sw4" + } + ] + } + ], + "links": [ + { + "id": "00000000-0000-0000-0000-00000000F001", + "sourceNode": "00000000-0000-0000-0000-000000000101", + "sourcePort": "00000000-0000-0000-0000-000000000111", + "targetNode": "00000000-0000-0000-0000-000000000104", + "targetPort": "00000000-0000-0000-0000-000000000121" + }, + { + "id": "00000000-0000-0000-0000-00000000F002", + "sourceNode": "00000000-0000-0000-0000-000000000102", + "sourcePort": "00000000-0000-0000-0000-000000000112", + "targetNode": "00000000-0000-0000-0000-000000000104", + "targetPort": "00000000-0000-0000-0000-000000000122" + }, + { + "id": "00000000-0000-0000-0000-00000000F003", + "sourceNode": "00000000-0000-0000-0000-000000000103", + "sourcePort": "00000000-0000-0000-0000-000000000113", + "targetNode": "00000000-0000-0000-0000-000000000104", + "targetPort": "00000000-0000-0000-0000-000000000123" + } + ], + "devices": { + "00000000-0000-0000-0000-000000000101": { + "ip": "192.168.0.10", + "mask": "255.255.255.0" + }, + "00000000-0000-0000-0000-000000000102": { + "ip": "192.168.0.20", + "mask": "255.255.255.0" + }, + "00000000-0000-0000-0000-000000000103": { + "ip": "192.168.0.30", + "mask": "255.255.255.0" + } + }, + "switches": { + "00000000-0000-0000-0000-000000000104": { + "ssid": "lab", + "retention": 5000 + } + }, + "steps": [ + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000101", + "target": "192.168.0.20", + "identifier": 1, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000101", + "target": "192.168.0.20", + "identifier": 1, + "sequence": 2 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000103", + "target": "192.168.0.10", + "identifier": 7, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000102", + "target": "192.168.0.99", + "identifier": 9, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000101", + "target": "192.168.0.10", + "identifier": 2, + "sequence": 1 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000101", + "target": "127.0.0.1", + "identifier": 3, + "sequence": 1 + }, + { + "op": "advance", + "to": 20000 + }, + { + "op": "ping", + "from": "00000000-0000-0000-0000-000000000102", + "target": "192.168.0.30", + "identifier": 4, + "sequence": 1 + } + ] +} diff --git a/packages/core/test/scenarios/switch-lan.swift.json b/packages/core/test/scenarios/switch-lan.swift.json new file mode 100644 index 0000000..c50d680 --- /dev/null +++ b/packages/core/test/scenarios/switch-lan.swift.json @@ -0,0 +1,5877 @@ +{ + "arp" : { + "00000000-0000-0000-0000-000000000101" : { + "192.168.0.20" : "02:00:00:00:01:12", + "192.168.0.30" : "02:00:00:00:01:13" + }, + "00000000-0000-0000-0000-000000000102" : { + "192.168.0.10" : "02:00:00:00:01:11", + "192.168.0.30" : "02:00:00:00:01:13" + }, + "00000000-0000-0000-0000-000000000103" : { + "192.168.0.10" : "02:00:00:00:01:11", + "192.168.0.20" : "02:00:00:00:01:12" + } + }, + "firewallDecisions" : [ + + ], + "icmpObservations" : { + "00000000-0000-0000-0000-000000000101" : [ + { + "identifier" : 1, + "kind" : "echoReply", + "sender" : "192.168.0.20", + "sequence" : 1 + }, + { + "identifier" : 1, + "kind" : "echoReply", + "sender" : "192.168.0.20", + "sequence" : 2 + }, + { + "identifier" : 2, + "kind" : "echoReply", + "sender" : "192.168.0.10", + "sequence" : 1 + } + ], + "00000000-0000-0000-0000-000000000102" : [ + { + "identifier" : 9, + "kind" : "destinationHostUnreachable", + "sender" : "192.168.0.20", + "sequence" : 1 + }, + { + "identifier" : 4, + "kind" : "echoReply", + "sender" : "192.168.0.30", + "sequence" : 1 + } + ], + "00000000-0000-0000-0000-000000000103" : [ + { + "identifier" : 7, + "kind" : "echoReply", + "sender" : "192.168.0.10", + "sequence" : 1 + } + ] + }, + "pendingEvents" : 0, + "results" : [ + { + "node" : "00000000-0000-0000-0000-000000000101", + "packet" : 1, + "type" : "delivered" + }, + { + "node" : "00000000-0000-0000-0000-000000000101", + "packet" : 3, + "type" : "delivered" + }, + { + "node" : "00000000-0000-0000-0000-000000000103", + "packet" : 5, + "type" : "delivered" + }, + { + "kind" : "destinationHostUnreachable", + "node" : "00000000-0000-0000-0000-000000000102", + "packet" : 7, + "type" : "icmpError" + }, + { + "node" : "00000000-0000-0000-0000-000000000101", + "packet" : 9, + "type" : "delivered" + }, + { + "node" : "00000000-0000-0000-0000-000000000101", + "packet" : 11, + "type" : "delivered" + }, + 20000, + { + "node" : "00000000-0000-0000-0000-000000000102", + "packet" : 12, + "type" : "delivered" + } + ], + "switchTables" : { + "00000000-0000-0000-0000-000000000104" : { + "02:00:00:00:01:12" : "00000000-0000-0000-0000-000000000122", + "02:00:00:00:01:13" : "00000000-0000-0000-0000-000000000123" + } + }, + "time" : 20440, + "traces" : [ + { + "after" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 1, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 1, + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 192.168.0.20", + "direction" : "outbound", + "frame" : 1, + "id" : 2, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "time" : 0 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 3, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "sent", + "time" : 0 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 4, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 55 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 1, + "id" : 5, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 1, + "id" : 6, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 7, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 1, + "id" : 8, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 55 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 1, + "id" : 9, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 55 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 10, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 11, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:11" + ], + [ + "senderIP", + "192.168.0.10" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.20" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 12, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "accepted", + "time" : 110 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 192.168.0.20", + "direction" : "outbound", + "frame" : 2, + "id" : 13, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "time" : 110 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 2, + "id" : 14, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 15, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 16, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:11" + ], + [ + "senderIP", + "192.168.0.10" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.20" + ] + ], + "direction" : "inbound", + "frame" : 1, + "id" : 17, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "accepted", + "time" : 110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 18, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 2, + "id" : 19, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 2, + "id" : 20, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 2, + "id" : 21, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 22, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 23, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:01:12" + ], + [ + "senderIP", + "192.168.0.20" + ], + [ + "targetMAC", + "02:00:00:00:01:11" + ], + [ + "targetIP", + "192.168.0.10" + ] + ], + "direction" : "inbound", + "frame" : 2, + "id" : 24, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "accepted", + "time" : 220 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 25, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "sent", + "packet" : 1, + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 26, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 1, + "time" : 220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 27, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "sent", + "packet" : 1, + "time" : 220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 28, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 3, + "id" : 29, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 3, + "id" : 30, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 3, + "id" : 31, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "packet" : 1, + "time" : 275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 32, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 33, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 3, + "id" : 34, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "packet" : 1, + "time" : 330 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 35, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 36, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 37, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 38, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "packet" : 2, + "time" : 330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 39, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 4, + "id" : 40, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 4, + "id" : 41, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 4, + "id" : 42, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "packet" : 2, + "time" : 385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 43, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 44, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 4, + "id" : 45, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "1" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 46, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "accepted", + "packet" : 2, + "time" : 440 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 47, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 3, + "time" : 440 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 48, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "sent", + "packet" : 3, + "time" : 440 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 49, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 3, + "time" : 440 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 50, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "sent", + "packet" : 3, + "time" : 440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 51, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "packet" : 3, + "time" : 495 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 5, + "id" : 52, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "packet" : 3, + "time" : 495 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 5, + "id" : 53, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "packet" : 3, + "time" : 495 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 5, + "id" : 54, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "packet" : 3, + "time" : 495 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 55, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "packet" : 3, + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 56, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "packet" : 3, + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 5, + "id" : 57, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "packet" : 3, + "time" : 550 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 58, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "packet" : 4, + "time" : 550 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 59, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "packet" : 4, + "time" : 550 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 60, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "packet" : 4, + "time" : 550 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 61, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "packet" : 4, + "time" : 550 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 62, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "packet" : 4, + "time" : 605 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 6, + "id" : 63, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "packet" : 4, + "time" : 605 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 6, + "id" : 64, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "packet" : 4, + "time" : 605 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 6, + "id" : 65, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "packet" : 4, + "time" : 605 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 66, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 4, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 67, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 4, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 6, + "id" : 68, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 4, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "1" + ], + [ + "sequence", + "2" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 69, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "accepted", + "packet" : 4, + "time" : 660 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.30" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 70, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "created", + "packet" : 5, + "time" : 660 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.30" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 71, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "sent", + "packet" : 5, + "time" : 660 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 72, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "created", + "packet" : 5, + "time" : 660 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 73, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "sent", + "packet" : 5, + "time" : 660 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 74, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "packet" : 5, + "time" : 715 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 7, + "id" : 75, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "packet" : 5, + "time" : 715 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 7, + "id" : 76, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "packet" : 5, + "time" : 715 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 7, + "id" : 77, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "packet" : 5, + "time" : 715 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 78, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 5, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 79, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 5, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.30" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 7, + "id" : 80, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 5, + "time" : 770 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.30" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 81, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 6, + "time" : 770 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 192.168.0.30", + "direction" : "outbound", + "frame" : 8, + "id" : 82, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "time" : 770 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 83, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "sent", + "time" : 770 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 192.168.0.30", + "direction" : "outbound", + "frame" : 9, + "id" : 84, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "time" : 770 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 9, + "id" : 85, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "sent", + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.30" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "waiting for ARP resolution of 192.168.0.30", + "direction" : "outbound", + "id" : 86, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 6, + "time" : 770 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 87, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 8, + "id" : 88, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 8, + "id" : 89, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 90, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 8, + "id" : 91, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 8, + "id" : 92, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 93, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 9, + "id" : 94, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 9, + "id" : 95, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 9, + "id" : 96, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 9, + "id" : 97, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 825 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 9, + "id" : 98, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 825 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 99, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 100, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:11" + ], + [ + "senderIP", + "192.168.0.10" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.30" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 101, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "accepted", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 102, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 103, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:11" + ], + [ + "senderIP", + "192.168.0.10" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.30" + ] + ], + "direction" : "inbound", + "frame" : 8, + "id" : 104, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "accepted", + "time" : 880 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 192.168.0.30", + "direction" : "outbound", + "frame" : 10, + "id" : 105, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "created", + "time" : 880 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 10, + "id" : 106, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "sent", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 107, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 108, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:11" + ], + [ + "senderIP", + "192.168.0.10" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.30" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 109, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "accepted", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 110, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 111, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:11" + ], + [ + "senderIP", + "192.168.0.10" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.30" + ] + ], + "direction" : "inbound", + "frame" : 9, + "id" : 112, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "accepted", + "time" : 880 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 192.168.0.30", + "direction" : "outbound", + "frame" : 11, + "id" : 113, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "created", + "time" : 880 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 11, + "id" : 114, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "sent", + "time" : 880 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 115, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 935 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 10, + "id" : 116, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 935 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 10, + "id" : 117, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 935 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 10, + "id" : 118, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 935 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 119, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 935 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 11, + "id" : 120, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 935 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 11, + "id" : 121, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 935 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 11, + "id" : 122, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 935 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 123, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 124, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 990 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.30" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 125, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "sent", + "packet" : 6, + "time" : 990 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 126, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 6, + "time" : 990 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 127, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "sent", + "packet" : 6, + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:01:13" + ], + [ + "senderIP", + "192.168.0.30" + ], + [ + "targetMAC", + "02:00:00:00:01:11" + ], + [ + "targetIP", + "192.168.0.10" + ] + ], + "direction" : "inbound", + "frame" : 10, + "id" : 128, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "accepted", + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 129, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:11" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 130, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:01:13" + ], + [ + "senderIP", + "192.168.0.30" + ], + [ + "targetMAC", + "02:00:00:00:01:11" + ], + [ + "targetIP", + "192.168.0.10" + ] + ], + "direction" : "inbound", + "frame" : 11, + "id" : 131, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "accepted", + "time" : 990 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 132, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "packet" : 6, + "time" : 1045 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 12, + "id" : 133, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "packet" : 6, + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 12, + "id" : 134, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "packet" : 6, + "time" : 1045 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 12, + "id" : 135, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "packet" : 6, + "time" : 1045 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 136, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "packet" : 6, + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:11" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 137, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "packet" : 6, + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.30" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 12, + "id" : 138, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "packet" : 6, + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "7" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 139, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "accepted", + "packet" : 6, + "time" : 1100 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.99" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 140, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "packet" : 7, + "time" : 1100 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 192.168.0.99", + "direction" : "outbound", + "frame" : 13, + "id" : 141, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "time" : 1100 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 142, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "time" : 1100 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 143, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 1155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 13, + "id" : 144, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 1155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 13, + "id" : 145, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 1155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 146, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 1155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 13, + "id" : 147, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 1155 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 13, + "id" : 148, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 1155 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 149, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 150, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:12" + ], + [ + "senderIP", + "192.168.0.20" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.99" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 151, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "accepted", + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 152, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 153, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:12" + ], + [ + "senderIP", + "192.168.0.20" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.99" + ] + ], + "direction" : "inbound", + "frame" : 13, + "id" : 154, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "accepted", + "time" : 1210 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 192.168.0.99", + "direction" : "outbound", + "frame" : 14, + "id" : 155, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "time" : 1210 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 14, + "id" : 156, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "time" : 1210 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 157, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 1265 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 14, + "id" : 158, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 1265 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 14, + "id" : 159, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 1265 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 14, + "id" : 160, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 1265 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 14, + "id" : 161, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 1265 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 14, + "id" : 162, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 1265 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 163, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 164, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:12" + ], + [ + "senderIP", + "192.168.0.20" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.99" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 165, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "accepted", + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 166, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 167, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:12" + ], + [ + "senderIP", + "192.168.0.20" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.99" + ] + ], + "direction" : "inbound", + "frame" : 14, + "id" : 168, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "accepted", + "time" : 1320 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP destinationHostUnreachable", + "direction" : "local", + "id" : 169, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "packet" : 8, + "time" : 1320 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 170, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 9, + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "id" : 171, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 9, + "time" : 1320 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 172, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 10, + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "192.168.0.10" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "id" : 173, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 10, + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "2" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 174, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "accepted", + "packet" : 10, + "time" : 1320 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "127.0.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 175, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "created", + "packet" : 11, + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "127.0.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "id" : 176, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "packet" : 11, + "time" : 1320 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.10" + ], + [ + "receiverIP", + "127.0.0.1" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "detail" : "IPv4 forwarding disabled", + "direction" : "inbound", + "id" : 177, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "dropped", + "packet" : 11, + "time" : 1320 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.30" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo request", + "direction" : "outbound", + "id" : 178, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "packet" : 12, + "time" : 20000 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "ARP request for 192.168.0.30", + "direction" : "outbound", + "frame" : 15, + "id" : 179, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "time" : 20000 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 15, + "id" : 180, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "time" : 20000 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 181, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 20055 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 15, + "id" : 182, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 20055 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 15, + "id" : 183, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 20055 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 15, + "id" : 184, + "interface" : "00000000-0000-0000-0000-000000000121", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 20055 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "detail" : "switch broadcast flooding", + "direction" : "outbound", + "frame" : 15, + "id" : 185, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 20055 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 15, + "id" : 186, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 20055 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 187, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 20110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 188, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "received", + "time" : 20110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:12" + ], + [ + "senderIP", + "192.168.0.20" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.30" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 189, + "interface" : "00000000-0000-0000-0000-000000000111", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000101", + "operation" : "accepted", + "time" : 20110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 190, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 20110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "FF:FF:FF:FF:FF:FF" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 191, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "time" : 20110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "request" + ], + [ + "senderMAC", + "02:00:00:00:01:12" + ], + [ + "senderIP", + "192.168.0.20" + ], + [ + "targetMAC", + "00:00:00:00:00:00" + ], + [ + "targetIP", + "192.168.0.30" + ] + ], + "direction" : "inbound", + "frame" : 15, + "id" : 192, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "accepted", + "time" : 20110 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "detail" : "ARP reply for 192.168.0.30", + "direction" : "outbound", + "frame" : 16, + "id" : 193, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "created", + "time" : 20110 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 16, + "id" : 194, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "sent", + "time" : 20110 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 195, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "time" : 20165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 16, + "id" : 196, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "time" : 20165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 16, + "id" : 197, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "time" : 20165 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 16, + "id" : 198, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "time" : 20165 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 199, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "time" : 20220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 200, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "time" : 20220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "operation", + "reply" + ], + [ + "senderMAC", + "02:00:00:00:01:13" + ], + [ + "senderIP", + "192.168.0.30" + ], + [ + "targetMAC", + "02:00:00:00:01:12" + ], + [ + "targetIP", + "192.168.0.20" + ] + ], + "direction" : "inbound", + "frame" : 16, + "id" : 201, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "accepted", + "time" : 20220 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.30" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 202, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "packet" : 12, + "time" : 20220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 203, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "created", + "packet" : 12, + "time" : 20220 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 204, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "sent", + "packet" : 12, + "time" : 20220 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 205, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "packet" : 12, + "time" : 20275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 17, + "id" : 206, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "packet" : 12, + "time" : 20275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 17, + "id" : 207, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "packet" : 12, + "time" : 20275 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 17, + "id" : 208, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "packet" : 12, + "time" : 20275 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 209, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "packet" : 12, + "time" : 20330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:12" + ], + [ + "destinationMAC", + "02:00:00:00:01:13" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 210, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "packet" : 12, + "time" : 20330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.20" + ], + [ + "receiverIP", + "192.168.0.30" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 17, + "id" : 211, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "received", + "packet" : 12, + "time" : 20330 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.30" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "detail" : "ICMP echo reply", + "direction" : "outbound", + "id" : 212, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "created", + "packet" : 13, + "time" : 20330 + }, + { + "after" : [ + [ + "senderIP", + "192.168.0.30" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 213, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "sent", + "packet" : 13, + "time" : 20330 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 214, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "created", + "packet" : 13, + "time" : 20330 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 215, + "interface" : "00000000-0000-0000-0000-000000000113", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000103", + "operation" : "sent", + "packet" : 13, + "time" : 20330 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 216, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "received", + "packet" : 13, + "time" : 20385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "detail" : "switch learned source MAC", + "direction" : "inbound", + "frame" : 18, + "id" : 217, + "interface" : "00000000-0000-0000-0000-000000000123", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "accepted", + "packet" : 13, + "time" : 20385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "detail" : "switch learned unicast forwarding", + "direction" : "outbound", + "frame" : 18, + "id" : 218, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "forwarded", + "packet" : 13, + "time" : 20385 + }, + { + "after" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "before" : [ + + ], + "direction" : "outbound", + "frame" : 18, + "id" : 219, + "interface" : "00000000-0000-0000-0000-000000000122", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000104", + "operation" : "sent", + "packet" : 13, + "time" : 20385 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 220, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "physical", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "packet" : 13, + "time" : 20440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "sourceMAC", + "02:00:00:00:01:13" + ], + [ + "destinationMAC", + "02:00:00:00:01:12" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 221, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "dataLink", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "packet" : 13, + "time" : 20440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "senderIP", + "192.168.0.30" + ], + [ + "receiverIP", + "192.168.0.20" + ], + [ + "ttl", + "64" + ], + [ + "protocol", + "1" + ] + ], + "direction" : "inbound", + "frame" : 18, + "id" : 222, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "network", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "received", + "packet" : 13, + "time" : 20440 + }, + { + "after" : [ + + ], + "before" : [ + [ + "kind", + "echoReply" + ], + [ + "identifier", + "4" + ], + [ + "sequence", + "1" + ] + ], + "detail" : "ICMP observation queued", + "direction" : "local", + "id" : 223, + "interface" : "00000000-0000-0000-0000-000000000112", + "layer" : "transport", + "node" : "00000000-0000-0000-0000-000000000102", + "operation" : "accepted", + "packet" : 13, + "time" : 20440 + } + ] +} diff --git a/packages/core/test/tsconfig.json b/packages/core/test/tsconfig.json new file mode 100644 index 0000000..e0afcb9 --- /dev/null +++ b/packages/core/test/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "../../../tsconfig.base.json", + "compilerOptions": { + "noEmit": true, + "composite": false, + "declaration": false, + "types": ["node"] + }, + "include": ["."] +} diff --git a/packages/core/tsconfig.json b/packages/core/tsconfig.json index 61638e5..8d72bcf 100644 --- a/packages/core/tsconfig.json +++ b/packages/core/tsconfig.json @@ -1,9 +1,9 @@ { "extends": "../../tsconfig.base.json", "compilerOptions": { - "rootDir": ".", + "rootDir": "src", "outDir": "dist", "types": [] }, - "include": ["src", "test"] + "include": ["src"] } diff --git a/tools/swift-oracle/.gitignore b/tools/swift-oracle/.gitignore new file mode 100644 index 0000000..44ad543 --- /dev/null +++ b/tools/swift-oracle/.gitignore @@ -0,0 +1,4 @@ +.upstream/ +.build/ +Sources/FiliusCore/ +Package.resolved diff --git a/tools/swift-oracle/Package.swift b/tools/swift-oracle/Package.swift new file mode 100644 index 0000000..a88709f --- /dev/null +++ b/tools/swift-oracle/Package.swift @@ -0,0 +1,23 @@ +// swift-tools-version:5.9 +// The filius-ipad core (runtime, model, persistence, reports) built on Linux as +// a reference for the TypeScript port. Sources/FiliusCore is filled by +// fetch-upstream.sh from a pinned commit; nothing of it is checked in here. +import PackageDescription + +let package = Package( + name: "FiliusOracle", + dependencies: [.package(url: "https://github.com/apple/swift-crypto.git", from: "3.0.0")], + targets: [ + // Apple-only modules the core imports, reduced to what it uses. + .target(name: "CoreGraphics"), + .target(name: "CryptoKit", dependencies: [.product(name: "Crypto", package: "swift-crypto")]), + .systemLibrary(name: "CZlib"), + .target(name: "Compression", dependencies: ["CZlib"]), + .target( + name: "FiliusCore", + dependencies: ["CoreGraphics", "CryptoKit", "Compression"], + swiftSettings: [.unsafeFlags(["-enable-testing"])] + ), + .executableTarget(name: "Oracle", dependencies: ["FiliusCore"]), + ] +) diff --git a/tools/swift-oracle/README.md b/tools/swift-oracle/README.md new file mode 100644 index 0000000..0be2bee --- /dev/null +++ b/tools/swift-oracle/README.md @@ -0,0 +1,40 @@ +# Swift-Orakel + +Der Swift-Kern von `filius-ipad` (Laufzeit, Modell, `.fls`, Berichte — alles +ohne Oberfläche) lässt sich unter Linux bauen. Dieses Werkzeug nutzt das als +**Maßstab für die Übertragung**: Ein Szenario wird einmal als JSON +beschrieben, in Swift abgespielt, und die TypeScript-Übertragung muss +dieselbe Ausgabe liefern — jedes einzelne Spurereignis, jede Antwort, den +Endzustand. + +```bash +npm run oracle # = tools/swift-oracle/run.sh (braucht Docker) +npm test # vergleicht mit den geschriebenen *.swift.json +``` + +* Szenarien: `packages/core/test/scenarios/.scenario.json` +* Ergebnis aus Swift: `.swift.json` daneben — **wird eingecheckt**, damit + die Tests ohne Docker und ohne Swift laufen. +* Vergleich: `packages/core/test/oracle.test.ts`. Er meldet das **erste** + abweichende Spurereignis mit Nummer. + +## Wie es gebaut wird + +`fetch-upstream.sh` holt `filius-ipad` am festen Stand `3b5ded0` und kopiert +die oberflächenfreien Quellen nach `Sources/FiliusCore/` (nicht eingecheckt). +Apple-Module, die es unter Linux nicht gibt, sind auf das Nötige verkleinert: + +| Modul | Ersatz | +| --- | --- | +| `CoreGraphics` | `Foundation` (hat `CGPoint`/`CGFloat` unter Linux) | +| `CryptoKit` | `swift-crypto` (gleiche Schnittstelle) | +| `Compression` | eine Funktion, `compression_decode_buffer` mit rohem DEFLATE über zlib | +| `Network` | entfällt: `TopologyRemoteLinkLANController.swift` wird nicht mitgebaut | + +`patches/linux-type-checker.patch` teilt zwei lange Ausdrücke auf, an denen der +Linux-Compiler die Typprüfung abbricht. Das Verhalten ändert sich dadurch nicht. + +## Neue Schrittarten + +Eine Schrittart gibt es zweimal — in `Sources/Oracle/main.swift` und in +`packages/core/test/oracle.test.ts`. Beide müssen dasselbe JSON schreiben. diff --git a/tools/swift-oracle/Sources/CZlib/module.modulemap b/tools/swift-oracle/Sources/CZlib/module.modulemap new file mode 100644 index 0000000..e49af12 --- /dev/null +++ b/tools/swift-oracle/Sources/CZlib/module.modulemap @@ -0,0 +1,5 @@ +module CZlib [system] { + header "shim.h" + link "z" + export * +} diff --git a/tools/swift-oracle/Sources/CZlib/shim.h b/tools/swift-oracle/Sources/CZlib/shim.h new file mode 100644 index 0000000..4470a1f --- /dev/null +++ b/tools/swift-oracle/Sources/CZlib/shim.h @@ -0,0 +1 @@ +#include diff --git a/tools/swift-oracle/Sources/Compression/Shim.swift b/tools/swift-oracle/Sources/Compression/Shim.swift new file mode 100644 index 0000000..3ca42d3 --- /dev/null +++ b/tools/swift-oracle/Sources/Compression/Shim.swift @@ -0,0 +1,23 @@ +// Linux stand-in for the one call filius-ipad makes into Apple's Compression +// framework: COMPRESSION_ZLIB is raw DEFLATE (RFC 1951), decoded here by zlib. +import CZlib + +public struct compression_algorithm: Equatable { let rawValue: Int32 } +public let COMPRESSION_ZLIB = compression_algorithm(rawValue: 0x205) + +public func compression_decode_buffer( + _ dst: UnsafeMutablePointer, _ dstSize: Int, + _ src: UnsafePointer, _ srcSize: Int, + _ scratch: UnsafeMutableRawPointer?, _ algorithm: compression_algorithm +) -> Int { + var stream = z_stream() + guard inflateInit2_(&stream, -15, ZLIB_VERSION, Int32(MemoryLayout.size)) == Z_OK else { return 0 } + defer { inflateEnd(&stream) } + stream.next_in = UnsafeMutablePointer(mutating: src) + stream.avail_in = uInt(srcSize) + stream.next_out = dst + stream.avail_out = uInt(dstSize) + let status = inflate(&stream, Z_FINISH) + guard status == Z_STREAM_END || status == Z_OK || status == Z_BUF_ERROR else { return 0 } + return Int(stream.total_out) +} diff --git a/tools/swift-oracle/Sources/CoreGraphics/Shim.swift b/tools/swift-oracle/Sources/CoreGraphics/Shim.swift new file mode 100644 index 0000000..ff2b4e2 --- /dev/null +++ b/tools/swift-oracle/Sources/CoreGraphics/Shim.swift @@ -0,0 +1 @@ +@_exported import Foundation diff --git a/tools/swift-oracle/Sources/CryptoKit/Shim.swift b/tools/swift-oracle/Sources/CryptoKit/Shim.swift new file mode 100644 index 0000000..b805cf5 --- /dev/null +++ b/tools/swift-oracle/Sources/CryptoKit/Shim.swift @@ -0,0 +1 @@ +@_exported import Crypto diff --git a/tools/swift-oracle/Sources/Oracle/main.swift b/tools/swift-oracle/Sources/Oracle/main.swift new file mode 100644 index 0000000..e89a26c --- /dev/null +++ b/tools/swift-oracle/Sources/Oracle/main.swift @@ -0,0 +1,273 @@ +// Replays scenario files in the filius-ipad runtime engine and writes what +// happened: every trace event, the result of every step, and the end state. +// The TypeScript port replays the same files (packages/core/test/oracle.test.ts) +// and must produce the same output. +// +// Usage: Oracle — reads .scenario.json, writes .swift.json + +@testable import FiliusCore +import Foundation + +// MARK: - Scenario format (shared with packages/core/test/oracle/scenario.ts) + +struct ScenarioPort: Decodable { let id: String; let label: String; let mac: String? } +struct ScenarioNode: Decodable { let id: String; let kind: String; let ports: [ScenarioPort] } +struct ScenarioLink: Decodable { + let id: String + let sourceNode: String; let sourcePort: String + let targetNode: String; let targetPort: String +} +struct ScenarioDevice: Decodable { let ip: String; let mask: String; let gateway: String?; let dns: String? } +struct ScenarioInterface: Decodable { let node: String; let port: String; let ip: String; let mask: String } +struct ScenarioRoute: Decodable { let destination: String; let mask: String; let gateway: String; let interface: String } +struct ScenarioSwitch: Decodable { let ssid: String; let retention: UInt64? } +struct ScenarioFirewallRule: Decodable { + let source: String?; let sourceMask: String? + let destination: String?; let destinationMask: String? + let port: Int?; let `protocol`: String?; let action: String? +} +struct ScenarioFirewall: Decodable { + let active: Bool?; let defaultPolicy: String?; let dropIcmp: Bool? + let synOnly: Bool?; let filterUdp: Bool?; let rules: [ScenarioFirewallRule]? +} +struct ScenarioStep: Decodable { + let op: String + let from: String?; let node: String?; let target: String? + let ttl: UInt8?; let identifier: UInt16?; let sequence: UInt16?; let maxTtl: UInt8? + let to: UInt64?; let enabled: Bool?; let percent: Int? +} +struct Scenario: Decodable { + let seed: UInt64 + let speedPercent: Int? + let nodes: [ScenarioNode] + let links: [ScenarioLink] + let devices: [String: ScenarioDevice]? + let interfaces: [ScenarioInterface]? + let routes: [String: [ScenarioRoute]]? + let switches: [String: ScenarioSwitch]? + let firewalls: [String: ScenarioFirewall]? + let steps: [ScenarioStep] +} + +// MARK: - Building the snapshot + +func uuid(_ value: String) -> UUID { + guard let id = UUID(uuidString: value) else { fatalError("not a UUID: \(value)") } + return id +} + +func firewallAction(_ value: String?) -> TopologyFirewallAction { + value == "accept" ? .accept : .drop +} + +func firewallProtocol(_ value: String?) -> TopologyFirewallProtocol { + switch value { + case "all": return .all + case "icmp": return .icmp + case "udp": return .udp + default: return .tcp + } +} + +func snapshot(of scenario: Scenario) -> TopologyNetworkRuntimeTopologySnapshot { + let nodes = scenario.nodes.map { node -> TopologyNetworkRuntimeNodeSnapshot in + guard let kind = TopologyNodeKind(rawValue: node.kind) else { fatalError("unknown kind \(node.kind)") } + return TopologyNetworkRuntimeNodeSnapshot( + id: uuid(node.id), + kind: kind, + ports: node.ports.map { TopologyNetworkRuntimePortSnapshot(id: uuid($0.id), label: $0.label, macAddress: $0.mac) } + ) + } + let links = scenario.links.map { + TopologyNetworkRuntimeLinkSnapshot( + id: uuid($0.id), + sourceNodeID: uuid($0.sourceNode), sourcePortID: uuid($0.sourcePort), + targetNodeID: uuid($0.targetNode), targetPortID: uuid($0.targetPort) + ) + } + var devices: [UUID: TopologyRuntimeDeviceConfiguration] = [:] + for (node, device) in scenario.devices ?? [:] { + devices[uuid(node)] = TopologyRuntimeDeviceConfiguration( + ipAddress: device.ip, subnetMask: device.mask, + defaultGateway: device.gateway ?? "", dnsServer: device.dns ?? "" + ) + } + var interfaces: [TopologyRuntimeInterfaceKey: TopologyRuntimeInterfaceConfiguration] = [:] + for item in scenario.interfaces ?? [] { + interfaces[TopologyRuntimeInterfaceKey(nodeID: uuid(item.node), portID: uuid(item.port))] = + TopologyRuntimeInterfaceConfiguration(ipAddress: item.ip, subnetMask: item.mask) + } + var routes: [UUID: [TopologyRuntimeManualRoute]] = [:] + for (node, rows) in scenario.routes ?? [:] { + routes[uuid(node)] = rows.map { + TopologyRuntimeManualRoute( + destinationNetwork: $0.destination, subnetMask: $0.mask, + gateway: $0.gateway, interfaceIPAddress: $0.interface + ) + } + } + var switches: [UUID: TopologySwitchConfiguration] = [:] + for (node, config) in scenario.switches ?? [:] { + switches[uuid(node)] = TopologySwitchConfiguration( + ssid: config.ssid, + retentionTimeMilliseconds: config.retention ?? TopologySwitchConfiguration.defaultRetentionTimeMilliseconds + ) + } + var firewalls: [UUID: TopologyFirewallConfiguration] = [:] + for (node, config) in scenario.firewalls ?? [:] { + firewalls[uuid(node)] = TopologyFirewallConfiguration( + isActive: config.active ?? false, + defaultPolicy: firewallAction(config.defaultPolicy), + dropICMP: config.dropIcmp ?? false, + filterSYNSegmentsOnly: config.synOnly ?? true, + filterUDP: config.filterUdp ?? true, + rules: (config.rules ?? []).map { + TopologyFirewallRule( + sourceIPAddress: $0.source ?? "", sourceSubnetMask: $0.sourceMask ?? "", + destinationIPAddress: $0.destination ?? "", destinationSubnetMask: $0.destinationMask ?? "", + port: $0.port ?? TopologyFirewallRule.allPorts, + protocolType: firewallProtocol($0.protocol), + action: firewallAction($0.action) + ) + } + ) + } + return TopologyNetworkRuntimeTopologySnapshot( + nodes: nodes, links: links, + deviceConfigurations: devices, interfaceConfigurations: interfaces, + manualRoutesByNodeID: routes, + firewallConfigurationsByNodeID: firewalls, + switchConfigurationsByNodeID: switches + ) +} + +// MARK: - Output + +typealias JSON = [String: Any] + +func headers(_ fields: [TopologyPacketHeaderField]) -> [[String]] { + fields.map { [$0.name, $0.value] } +} + +func trace(_ event: TopologyPacketTraceEvent) -> JSON { + var result: JSON = [ + "id": event.id, + "time": event.timeMilliseconds, + "node": event.nodeID.uuidString, + "direction": event.direction.rawValue, + "layer": event.layer.rawValue, + "operation": event.operation.rawValue, + "before": headers(event.beforeHeaders), + "after": headers(event.afterHeaders), + ] + if let frame = event.frameIdentity { result["frame"] = frame } + if let packet = event.packetIdentity { result["packet"] = packet } + if let interface = event.interfaceID { result["interface"] = interface.uuidString } + if let detail = event.detail { result["detail"] = detail } + return result +} + +func delivery(_ result: TopologyIPv4DeliveryResult) -> JSON { + switch result { + case let .delivered(packet, node): return ["type": "delivered", "packet": packet, "node": node.uuidString] + case let .icmpError(packet, node, kind): + return ["type": "icmpError", "packet": packet, "node": node.uuidString, "kind": kind.rawValue] + case let .dropped(packet, node): + var json: JSON = ["type": "dropped", "packet": packet] + if let node { json["node"] = node.uuidString } + return json + } +} + +func observation(_ item: TopologyRuntimeICMPObservation) -> JSON { + [ + "kind": item.message.kind.rawValue, + "identifier": item.message.identifier, + "sequence": item.message.sequenceNumber, + "sender": item.packet.senderIPAddress, + ] +} + +func run(_ scenario: Scenario) -> JSON { + var engine = TopologyNetworkRuntimeEngine(seed: scenario.seed) + if let percent = scenario.speedPercent { engine.setSimulationSpeed(percent: percent) } + engine.handle(.start(snapshot: snapshot(of: scenario), seed: scenario.seed, initialTimeMilliseconds: 0)) + + var results: [Any] = [] + for step in scenario.steps { + switch step.op { + case "ping": + results.append(delivery(engine.sendICMPEcho( + fromNodeID: uuid(step.from!), targetIPAddress: step.target!, + timeToLive: step.ttl ?? 64, identifier: step.identifier ?? 1, sequenceNumber: step.sequence ?? 1 + ))) + case "traceroute": + results.append(engine.traceICMPEcho( + fromNodeID: uuid(step.from!), targetIPAddress: step.target!, + maximumTimeToLive: step.maxTtl ?? 64, identifier: step.identifier ?? 1 + ).map(observation)) + case "resolveMac": + results.append(engine.resolveMACAddress(nodeID: uuid(step.node!), targetIPAddress: step.target!) ?? NSNull()) + case "advance": + engine.handle(.advance(toMilliseconds: step.to!)) + results.append(engine.state.currentTimeMilliseconds) + case "packetLoss": + engine.setGlobalPacketLossEnabled(step.enabled!) + results.append(engine.state.globalPacketLossEnabled) + case "sat": + results.append(engine.switchSATEntries(nodeID: uuid(step.node!)).map { + ["mac": $0.macAddress, "port": $0.portLabel, "updated": $0.updatedAtMilliseconds] as JSON + }) + case "speed": + engine.setSimulationSpeed(percent: step.percent!) + results.append(engine.simulationSpeed.percent) + default: + fatalError("unknown step \(step.op)") + } + } + + let state = engine.state + var arp: JSON = [:] + for (node, cache) in state.arpCachesByNodeID { + arp[node.uuidString] = cache.mapValues { $0.macAddress } + } + var switchTables: JSON = [:] + for (node, table) in state.switchForwardingTablesByNodeID { + switchTables[node.uuidString] = table.mapValues { $0.uuidString } + } + var observations: JSON = [:] + for (node, items) in state.icmpObservationsByNodeID { + observations[node.uuidString] = items.map(observation) + } + return [ + "results": results, + "traces": state.packetTraces.map(trace), + "time": state.currentTimeMilliseconds, + "pendingEvents": state.pendingEvents.count, + "arp": arp, + "switchTables": switchTables, + "icmpObservations": observations, + "firewallDecisions": state.firewallDecisions.map { decision -> JSON in + var json: JSON = [ + "packet": decision.packetIdentity, "node": decision.nodeID.uuidString, "accepted": decision.accepted, + ] + if let rule = decision.ruleIndex { json["rule"] = rule } + return json + }, + ] +} + +// MARK: - Main + +let directory = URL(fileURLWithPath: CommandLine.arguments.dropFirst().first ?? ".") +let files = try FileManager.default.contentsOfDirectory(at: directory, includingPropertiesForKeys: nil) + .filter { $0.lastPathComponent.hasSuffix(".scenario.json") } + .sorted { $0.lastPathComponent < $1.lastPathComponent } +for file in files { + let scenario = try JSONDecoder().decode(Scenario.self, from: Data(contentsOf: file)) + let output = run(scenario) + let data = try JSONSerialization.data(withJSONObject: output, options: [.prettyPrinted, .sortedKeys]) + let name = file.lastPathComponent.replacingOccurrences(of: ".scenario.json", with: ".swift.json") + try (data + Data("\n".utf8)).write(to: directory.appendingPathComponent(name)) + print("\(name): \((output["traces"] as? [Any])?.count ?? 0) trace events") +} diff --git a/tools/swift-oracle/fetch-upstream.sh b/tools/swift-oracle/fetch-upstream.sh new file mode 100755 index 0000000..0b4cb8a --- /dev/null +++ b/tools/swift-oracle/fetch-upstream.sh @@ -0,0 +1,26 @@ +#!/bin/sh +# Copies the UI-free Swift sources of filius-ipad, at the commit the port +# follows, into Sources/FiliusCore and applies the Linux patches. +set -eu +here="$(cd "$(dirname "$0")" && pwd)" +commit=3b5ded0 +upstream="$here/.upstream" +if [ ! -d "$upstream/.git" ]; then + git clone -q https://github.com/filius-project/filius-ipad "$upstream" +fi +git -C "$upstream" fetch -q origin +git -C "$upstream" checkout -q "$commit" + +core="$here/Sources/FiliusCore" +rm -rf "$core" +mkdir -p "$core" +editor="$upstream/ios/FiliusPad/TopologyEditor" +cp "$editor"/State/*.swift "$editor"/State/Reports/*.swift "$editor"/Model/*.swift \ + "$editor"/Persistence/*.swift "$upstream/ios/FiliusPad/Localization/FiliusLocalization.swift" "$core/" +# Apple's Network framework has no Linux counterpart; the LAN transport of the +# remote link is not needed to replay a simulation. +rm "$core/TopologyRemoteLinkLANController.swift" +for patch in "$here"/patches/*.patch; do + (cd "$core" && patch -p1 --forward --quiet < "$patch") +done +echo "filius-ipad $commit → $core ($(ls "$core" | wc -l) files)" diff --git a/tools/swift-oracle/patches/linux-type-checker.patch b/tools/swift-oracle/patches/linux-type-checker.patch new file mode 100644 index 0000000..0489fc7 --- /dev/null +++ b/tools/swift-oracle/patches/linux-type-checker.patch @@ -0,0 +1,69 @@ +diff --git a/TopologyPacketCaptureTextExport.swift b/TopologyPacketCaptureTextExport.swift +index fcdb43a..c9ed472 100644 +--- a/TopologyPacketCaptureTextExport.swift ++++ b/TopologyPacketCaptureTextExport.swift +@@ -245,26 +245,26 @@ enum TopologyPacketCaptureTextExportFormatter { + } + + private static func renderRecord(_ record: TopologyPacketCaptureExportRecord) -> String { +- [ +- String(record.number), +- String(record.timeMilliseconds), +- String(record.traceID), +- record.frameID.map(String.init) ?? "", +- record.packetID.map(String.init) ?? "", +- normalizedUUID(record.nodeID), +- record.nodeName, +- record.interfaceID.map(normalizedUUID) ?? "", +- record.interfaceName ?? "", +- record.direction, +- record.layer, +- record.operation, +- record.source, +- record.destination, +- record.protocolName, +- record.beforeHeaders, +- record.afterHeaders, +- record.detail, +- ].map(escapeTSVField).joined(separator: "\t") ++ var fields: [String] = [] ++ fields.append(String(record.number)) ++ fields.append(String(record.timeMilliseconds)) ++ fields.append(String(record.traceID)) ++ fields.append(record.frameID.map { String($0) } ?? "") ++ fields.append(record.packetID.map { String($0) } ?? "") ++ fields.append(normalizedUUID(record.nodeID)) ++ fields.append(record.nodeName) ++ fields.append(record.interfaceID.map { normalizedUUID($0) } ?? "") ++ fields.append(record.interfaceName ?? "") ++ fields.append(record.direction) ++ fields.append(record.layer) ++ fields.append(record.operation) ++ fields.append(record.source) ++ fields.append(record.destination) ++ fields.append(record.protocolName) ++ fields.append(record.beforeHeaders) ++ fields.append(record.afterHeaders) ++ fields.append(record.detail) ++ return fields.map(escapeTSVField).joined(separator: "\t") + } + + private static func traceIsOrderedBefore( +diff --git a/TopologyRuntimeSimpleClientEcho.swift b/TopologyRuntimeSimpleClientEcho.swift +index e72694f..5b9baf3 100644 +--- a/TopologyRuntimeSimpleClientEcho.swift ++++ b/TopologyRuntimeSimpleClientEcho.swift +@@ -252,8 +252,11 @@ struct TopologyRuntimeWebBrowserHistoryEntry: Equatable { + } + + fileprivate var retainedByteCount: Int { +- address.utf8.count + resolvedIPAddress.utf8.count + (contentType?.utf8.count ?? 0) +- + body.utf8.count + bodyData.count + (errorMessage?.utf8.count ?? 0) ++ let head: Int = address.utf8.count + resolvedIPAddress.utf8.count ++ let type: Int = contentType?.utf8.count ?? 0 ++ let error: Int = errorMessage?.utf8.count ?? 0 ++ let tail: Int = body.utf8.count + bodyData.count ++ return head + type + tail + error + } + } + diff --git a/tools/swift-oracle/run.sh b/tools/swift-oracle/run.sh new file mode 100755 index 0000000..413e0d8 --- /dev/null +++ b/tools/swift-oracle/run.sh @@ -0,0 +1,10 @@ +#!/bin/sh +# Replays every scenario under packages/core/test/scenarios in the Swift core +# and writes the reference result next to it (.swift.json). +# Needs Docker; the TypeScript tests only read the written files. +set -eu +here="$(cd "$(dirname "$0")" && pwd)" +root="$(cd "$here/../.." && pwd)" +[ -d "$here/Sources/FiliusCore" ] || "$here/fetch-upstream.sh" +docker run --rm -v "$root:/work" -w /work/tools/swift-oracle swift:6.1-jammy \ + sh -c 'swift build -q 2>&1 | grep -v "Sendable\|^ *|\|^ *\`" ; .build/debug/Oracle /work/packages/core/test/scenarios'