nackReasons = Collections.singletonList(NegativeAckReason.CHANNEL_CAPACITY_EXCEEDED);
testRtiAckMessages(0, nackReasons, sampleV2XMessage);
- assertEquals(400 * DATA.BIT, SimulationData.INSTANCE.getCellConfigurationOfNode(receiverName).getAvailableDownlinkBitrate());
- assertEquals(600 * DATA.BIT, ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.capacity);
+ assertEquals(2240 * DATA.BIT, SimulationData.INSTANCE.getCellConfigurationOfNode(receiverName).getAvailableDownlinkBitrate());
+ assertEquals(3360 * DATA.BIT, ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.capacity);
}
@Test
@@ -462,7 +467,8 @@ public void testProcessMessage_regularMessageNodeUnlimited_plusFreeBandwidth() t
assertEquals(1, rtiV2xReceptionsSent.size());
testRtiV2xMessages(0, receiverName, endTime, sampleV2XMessage.getId());
- long expectedBandwidthInBps = (long) (messageLength / (DELAY_VALUE_IN_MS / (double) TIME.SECOND));
+ long actualMessageLength = messageLength + HEADER_UDP + HEADER_IP + HEADER_CELLULAR;
+ long expectedBandwidthInBps = (long) (actualMessageLength / (DELAY_VALUE_IN_MS / (double) TIME.SECOND));
assertEquals(1, cellModuleMessages.size());
checkNotifyOnFinishMessage(0, GLOBAL_NETWORK_ID, expectedBandwidthInBps, 10 * TIME.SECOND, endTime);
@@ -501,9 +507,9 @@ public void testProcessMessage_regularMessageNodeUnlimitedRegionLimited() throws
String receiverName = "veh_0";
Event event = createEvent(receiverName, sampleV2XMessage);
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.capacity = 200 * DATA.BIT;
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.maxCapacity = 200 * DATA.BIT;
- long expectedBandwidthInBps = 200 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.capacity = 1120 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.maxCapacity = 1120 * DATA.BIT;
+ long expectedBandwidthInBps = 1120 * DATA.BIT;
long endTime = (long) (10.4 * TIME.SECOND);
// RUN
@@ -542,7 +548,8 @@ public void testProcessMessage_packetLossTcp() throws Exception {
ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.unicast.transmission.lossProbability = 2d;
double delayInS = ((ConstantDelay) ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.unicast.delay).delay
/ (double) TIME.SECOND;
- long expectedBandwidth = (long) (messageLength / delayInS);
+ long actualMessageLength = messageLength + HEADER_TCP + HEADER_IP + HEADER_CELLULAR;
+ long expectedBandwidth = (long) (actualMessageLength / delayInS);
long endTime = 10 * TIME.SECOND + DELAY_VALUE_IN_MS;
// RUN
@@ -578,7 +585,8 @@ public void testProcessMessage_packetLossUdp() throws Exception {
ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.unicast.transmission.lossProbability = 2d;
ConstantDelay delay = (ConstantDelay) ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.unicast.delay;
double delayValue = (double) delay.delay / TIME.MILLI_SECOND;
- long expectedBandwidth = (long) (messageLength / ((delayValue / (double) TIME.MICRO_SECOND)));
+ long actualMessageLength = messageLength + HEADER_UDP + HEADER_IP + HEADER_CELLULAR;
+ long expectedBandwidth = (long) (actualMessageLength / ((delayValue / (double) TIME.MICRO_SECOND)));
// RUN
downstreamModule.processEvent(event);
@@ -644,8 +652,8 @@ public void testProcessMessage_nodeCapacityExceededRegionLimited() throws Except
CellConfiguration cellConfiguration = SimulationData.INSTANCE.getCellConfigurationOfNode(receiverName);
cellConfiguration.consumeDownlink(Long.MAX_VALUE * DATA.BIT);
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.capacity = 200 * DATA.BIT;
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.maxCapacity = 200 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.capacity = 1140 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.maxCapacity = 1140 * DATA.BIT;
// RUN
downstreamModule.processEvent(event);
@@ -659,7 +667,7 @@ public void testProcessMessage_nodeCapacityExceededRegionLimited() throws Except
testRtiAckMessages(0, nackReasons, sampleV2XMessage);
assertEquals(0L, SimulationData.INSTANCE.getCellConfigurationOfNode(receiverName).getAvailableDownlinkBitrate());
- assertEquals(200 * DATA.BIT, ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.capacity);
+ assertEquals(1140 * DATA.BIT, ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.downlink.capacity);
}
@Test
diff --git a/fed/mosaic-cell/src/test/java/org/eclipse/mosaic/fed/cell/module/UpstreamModuleTest.java b/fed/mosaic-cell/src/test/java/org/eclipse/mosaic/fed/cell/module/UpstreamModuleTest.java
index ae2ed6bb8..bc6b63763 100644
--- a/fed/mosaic-cell/src/test/java/org/eclipse/mosaic/fed/cell/module/UpstreamModuleTest.java
+++ b/fed/mosaic-cell/src/test/java/org/eclipse/mosaic/fed/cell/module/UpstreamModuleTest.java
@@ -84,6 +84,11 @@
public class UpstreamModuleTest {
+ private static final long HEADER_UDP = 8 * DATA.BYTE;
+ private static final long HEADER_IP = 20 * DATA.BYTE;
+ private static final long HEADER_TCP = 20 * DATA.BYTE;
+ private static final long HEADER_CELLULAR = 18 * DATA.BYTE;
+
@Rule
public MockitoRule mockitoRule = MockitoJUnit.rule().strictness(Strictness.LENIENT);
@@ -162,7 +167,7 @@ public void testProcessMessage_regularMessageNodeLimited() throws InternalFedera
SampleV2xMessage sampleV2XMessage = new SampleV2xMessage(routing.get(), 10 * DATA.BYTE);
Event event = new Event(10 * TIME.SECOND, upstreamModule, sampleV2XMessage);
- CellConfiguration cellConfiguration = new CellConfiguration("veh_0", true, 400 * DATA.BIT, 400 * DATA.BIT);
+ CellConfiguration cellConfiguration = new CellConfiguration("veh_0", true, 2240 * DATA.BIT, 2240 * DATA.BIT);
SimulationData.INSTANCE.setCellConfigurationOfNode("veh_0", cellConfiguration);
// RUN
@@ -172,13 +177,13 @@ public void testProcessMessage_regularMessageNodeLimited() throws InternalFedera
assertEquals(0, rtiInteractionsSent.size());
assertEquals(2, cellModuleMessages.size());
CellModuleMessage notifyOnFinishMessage = cellModuleMessages.get(0);
- checkNotifyOnFinishMessage(notifyOnFinishMessage, 400 * DATA.BIT, 10 * TIME.SECOND, (long) (10.2 * TIME.SECOND));
+ checkNotifyOnFinishMessage(notifyOnFinishMessage, 2240 * DATA.BIT, 10 * TIME.SECOND, (long) (10.2 * TIME.SECOND));
CellModuleMessage resultMessage = cellModuleMessages.get(1);
- checkResultMessage(resultMessage, 400 * DATA.BIT, 10 * TIME.SECOND, (long) (10.2 * TIME.SECOND));
+ checkResultMessage(resultMessage, 2240 * DATA.BIT, 10 * TIME.SECOND, (long) (10.2 * TIME.SECOND));
assertEquals(0L, SimulationData.INSTANCE.getCellConfigurationOfNode("veh_0").getAvailableUplinkBitrate());
- assertEquals((21000 - 400) * DATA.BIT, ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity);
+ assertEquals((21000 - 2240) * DATA.BIT, ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity);
}
@Test
@@ -187,10 +192,10 @@ public void testProcessMessage_regularMessageNodeLimitedRegionLessLimited() thro
// UDP
routing.set(new CellMessageRoutingBuilder("veh_0", null).topoCast(new byte[]{10, 2, 0, 0}));
- CellConfiguration cellConfiguration = new CellConfiguration("veh_0", true, 400 * DATA.BIT, 400 * DATA.BIT);
+ CellConfiguration cellConfiguration = new CellConfiguration("veh_0", true, 2240 * DATA.BIT, 2240 * DATA.BIT);
SimulationData.INSTANCE.setCellConfigurationOfNode("veh_0", cellConfiguration);
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity = 600 * DATA.BIT;
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.maxCapacity = 600 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity = 3000 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.maxCapacity = 3000 * DATA.BIT;
SampleV2xMessage sampleV2XMessage = new SampleV2xMessage(routing.get(), 10 * DATA.BYTE);
Event event = new Event(10 * TIME.SECOND, upstreamModule, sampleV2XMessage);
@@ -202,13 +207,13 @@ public void testProcessMessage_regularMessageNodeLimitedRegionLessLimited() thro
assertEquals(0, rtiInteractionsSent.size());
assertEquals(2, cellModuleMessages.size());
CellModuleMessage notifyOnFinishMessage = cellModuleMessages.get(0);
- checkNotifyOnFinishMessage(notifyOnFinishMessage, 400 * DATA.BIT, 10 * TIME.SECOND, (long) (10.2 * TIME.SECOND));
+ checkNotifyOnFinishMessage(notifyOnFinishMessage, 2240 * DATA.BIT, 10 * TIME.SECOND, (long) (10.2 * TIME.SECOND));
CellModuleMessage resultMessage = cellModuleMessages.get(1);
- checkResultMessage(resultMessage, 400 * DATA.BIT, 10 * TIME.SECOND, (long) (10.2 * TIME.SECOND));
+ checkResultMessage(resultMessage, 2240 * DATA.BIT, 10 * TIME.SECOND, (long) (10.2 * TIME.SECOND));
assertEquals(0L, SimulationData.INSTANCE.getCellConfigurationOfNode("veh_0").getAvailableUplinkBitrate());
- assertEquals((600 - 400) * DATA.BIT, ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity);
+ assertEquals((3000 - 2240) * DATA.BIT, ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity);
}
@Test
@@ -217,10 +222,10 @@ public void testProcessMessage_regularMessageNodeLimitedRegionMoreLimited() thro
// UDP
routing.set(new CellMessageRoutingBuilder("veh_0", null).topoCast(new byte[]{10, 2, 0, 0}));
- CellConfiguration cellConfiguration = new CellConfiguration("veh_0", true, 400 * DATA.BIT, 400 * DATA.BIT);
+ CellConfiguration cellConfiguration = new CellConfiguration("veh_0", true, 2240 * DATA.BIT, 2240 * DATA.BIT);
SimulationData.INSTANCE.setCellConfigurationOfNode("veh_0", cellConfiguration);
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity = 200 * DATA.BIT;
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.maxCapacity = 200 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity = 1120 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.maxCapacity = 1120 * DATA.BIT;
SampleV2xMessage sampleV2XMessage = new SampleV2xMessage(routing.get(), 10 * DATA.BYTE);
Event event = new Event(10 * TIME.SECOND, upstreamModule, sampleV2XMessage);
@@ -232,12 +237,12 @@ public void testProcessMessage_regularMessageNodeLimitedRegionMoreLimited() thro
assertEquals(0, rtiInteractionsSent.size());
assertEquals(2, cellModuleMessages.size());
CellModuleMessage notifyOnFinishMessage = cellModuleMessages.get(0);
- checkNotifyOnFinishMessage(notifyOnFinishMessage, 200, 10 * TIME.SECOND, (long) (10.4 * TIME.SECOND));
+ checkNotifyOnFinishMessage(notifyOnFinishMessage, 1120, 10 * TIME.SECOND, (long) (10.4 * TIME.SECOND));
CellModuleMessage resultMessage = cellModuleMessages.get(1);
- checkResultMessage(resultMessage, 200, 10 * TIME.SECOND, (long) (10.4 * TIME.SECOND));
+ checkResultMessage(resultMessage, 1120, 10 * TIME.SECOND, (long) (10.4 * TIME.SECOND));
- assertEquals((400 - 200) * DATA.BIT, SimulationData.INSTANCE.getCellConfigurationOfNode("veh_0").getAvailableUplinkBitrate());
+ assertEquals((2240 - 1120) * DATA.BIT, SimulationData.INSTANCE.getCellConfigurationOfNode("veh_0").getAvailableUplinkBitrate());
assertEquals(0L, ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity);
}
@@ -289,7 +294,8 @@ public void testProcessMessage_regularMessageNodeUnlimited_plusFreeBandwidth() t
// ASSERT
assertEquals(0, rtiInteractionsSent.size());
- long expectedBandwidth = (long) (messageLength / (DELAY_VALUE_IN_MS / (double) TIME.SECOND));
+ long actualMessageLength = messageLength + HEADER_UDP + HEADER_IP + HEADER_CELLULAR;
+ long expectedBandwidth = (long) (actualMessageLength / (DELAY_VALUE_IN_MS / (double) TIME.SECOND));
assertEquals(2, cellModuleMessages.size());
CellModuleMessage notifyOnFinishMessage = cellModuleMessages.get(0);
@@ -325,8 +331,8 @@ public void testProcessMessage_regularMessageNodeUnlimitedRegionLimited() throws
long messageLength = 10 * DATA.BYTE;
SampleV2xMessage sampleV2XMessage = new SampleV2xMessage(routing.get(), messageLength);
Event event = new Event(10 * TIME.SECOND, upstreamModule, sampleV2XMessage);
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity = 200 * DATA.BIT;
- ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.maxCapacity = 200 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.capacity = 1000 * DATA.BIT;
+ ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.maxCapacity = 1000 * DATA.BIT;
// RUN
upstreamModule.processEvent(event);
@@ -337,12 +343,13 @@ public void testProcessMessage_regularMessageNodeUnlimitedRegionLimited() throws
assertEquals(2, cellModuleMessages.size());
CellModuleMessage notifyOnFinishMessage = cellModuleMessages.get(0);
- long expectedBandwidth = 200 * DATA.BIT;
- checkNotifyOnFinishMessage(notifyOnFinishMessage, expectedBandwidth, 10 * TIME.SECOND, (long) (10.4 * TIME.SECOND));
+ // actual message length = 10 + UDP + IP + CELLULAR = 64 Bytes = 512 Bit
+ long expectedBandwidth = 1000 * DATA.BIT;
+ checkNotifyOnFinishMessage(notifyOnFinishMessage, expectedBandwidth, 10 * TIME.SECOND, (long) (10.448 * TIME.SECOND));
CellModuleMessage resultMessage = cellModuleMessages.get(1);
checkResultMessage(resultMessage, expectedBandwidth, 10 * TIME.SECOND,
- (long) (10.4 * TIME.SECOND));
+ (long) (10.448 * TIME.SECOND));
assertEquals(
(Long.MAX_VALUE - expectedBandwidth) * DATA.BIT,
@@ -369,7 +376,8 @@ public void testProcessMessage_packetLossTcp() throws InternalFederateException
double delayInS = ((ConstantDelay) ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.delay).delay
/ (double) TIME.SECOND;
- long expectedBandwidth = (long) (messageLength / delayInS);
+ long actualMessageLength = messageLength + HEADER_TCP + HEADER_IP + HEADER_CELLULAR;
+ long expectedBandwidth = (long) (actualMessageLength / delayInS);
// RUN
upstreamModule.processEvent(event);
@@ -414,7 +422,8 @@ public void testProcessMessage_packetLossUdp() throws InternalFederateException
double delayInS = ((ConstantDelay) ConfigurationData.INSTANCE.getNetworkConfig().globalNetwork.uplink.delay).delay
/ (double) TIME.SECOND;
- long expectedBandwidth = (long) (messageLength / delayInS);
+ long actualMessageLength = messageLength + HEADER_UDP + HEADER_IP + HEADER_CELLULAR;
+ long expectedBandwidth = (long) (actualMessageLength / delayInS);
checkNotifyOnFinishMessage(notifyOnFinishMessage, expectedBandwidth, 10 * TIME.SECOND,
10 * TIME.SECOND + DELAY_VALUE_IN_MS);
diff --git a/fed/mosaic-cell/src/test/resources/logback-test.xml b/fed/mosaic-cell/src/test/resources/logback-test.xml
new file mode 100644
index 000000000..c75d693ec
--- /dev/null
+++ b/fed/mosaic-cell/src/test/resources/logback-test.xml
@@ -0,0 +1,12 @@
+
+
+
+
+ %d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/lib/mosaic-utils/src/main/java/org/eclipse/mosaic/lib/util/gson/DataFieldAdapter.java b/lib/mosaic-utils/src/main/java/org/eclipse/mosaic/lib/util/gson/DataFieldAdapter.java
index 21ad7faad..c9578490f 100644
--- a/lib/mosaic-utils/src/main/java/org/eclipse/mosaic/lib/util/gson/DataFieldAdapter.java
+++ b/lib/mosaic-utils/src/main/java/org/eclipse/mosaic/lib/util/gson/DataFieldAdapter.java
@@ -36,6 +36,22 @@
import java.util.regex.Matcher;
import java.util.regex.Pattern;
+/**
+ * Adapter for JSON fields which translates values as string representatives to
+ * actual long values representing the number of bits, e.g.
+ *
for size: "10 Bytes" -> 80, "2kbit" -> 2000
+ *
for bandwidth: "10 MBps km/h" -> 80000000, "5 kbps" -> 5000
+ *
+ * Note: using "b" or "B" is a difference, as former stands for bits and later for bytes.
+ *
+ * Usage:
+ *
+ *
+ * @JsonAdapter(DataFieldAdapter.Size.class)
+ * public long size;
+ *
+ *
+ */
public class DataFieldAdapter extends TypeAdapter {
private static final Logger log = LoggerFactory.getLogger(DataFieldAdapter.class);
@@ -149,7 +165,6 @@ private long determineMultiplier(String prefix, String unit) {
}
}
-
public static class Bandwidth implements TypeAdapterFactory {
@SuppressWarnings("unchecked")
diff --git a/test/mosaic-integration-tests/src/test/java/org/eclipse/mosaic/test/CellSnsCamSendAndReceiveIT.java b/test/mosaic-integration-tests/src/test/java/org/eclipse/mosaic/test/CellSnsCamSendAndReceiveIT.java
index acfaa5175..970d280ad 100644
--- a/test/mosaic-integration-tests/src/test/java/org/eclipse/mosaic/test/CellSnsCamSendAndReceiveIT.java
+++ b/test/mosaic-integration-tests/src/test/java/org/eclipse/mosaic/test/CellSnsCamSendAndReceiveIT.java
@@ -145,11 +145,11 @@ public void cellMessagesHandledInModules() throws Exception {
// send 150 uplink messages from veh_0 and veh_1 + 2*RoundTripMessage + 2*Messages for nack + 1*Nack-test = 305
LogAssert.contains(simulationRule, CELL_LOG, ".*ChainManager - \\[Upstream\\] Processed messages: 305.*");
/* received (26 rsu_0 + 30 rsu_1 + 30 rsu_2 + 150 self) messages from veh_0 = 236
- and (150 broadcast + 2 region overlap) - (113 messages not sendable due to capacity limit) messages from veh_1 = 39
+ and (150 broadcast + 2 region overlap) - (120 messages not sendable due to capacity limit) messages from veh_1 = 32
and 2*RoundTripMessage = 2
and 2*Messages for nack test = 2
- and 1*Nack-Test ==> total 280*/
- LogAssert.contains(simulationRule, CELL_LOG, ".*ChainManager - \\[Downstream\\] Processed messages: 280.*");
+ and 1*Nack-Test ==> total 267*/
+ LogAssert.contains(simulationRule, CELL_LOG, ".*ChainManager - \\[Downstream\\] Processed messages: 273.*");
}
@Test
@@ -180,11 +180,11 @@ public void applicationsCamReceptions() throws Exception {
// geo broadcast
// locate rsu_0 and rsu_1 in the same mbms broadcast region
- assertOccurrences(RSU_0_RECEIVE_MSG_APP_CELL_LOG, ".*Received CAM from veh_1.*", 10);
+ assertOccurrences(RSU_0_RECEIVE_MSG_APP_CELL_LOG, ".*Received CAM from veh_1.*", 8);
// locate rsu_0 and rsu_1 in the same mbms broadcast region
- assertOccurrences(RSU_1_RECEIVE_MSG_APP_CELL_LOG, ".*Received CAM from veh_1.*", 10);
+ assertOccurrences(RSU_1_RECEIVE_MSG_APP_CELL_LOG, ".*Received CAM from veh_1.*", 8);
// locate rsu_0 and rsu_2 in the same mbms broadcast region
- assertOccurrences(RSU_2_RECEIVE_MSG_APP_CELL_LOG, ".*Received CAM from veh_1.*", 18);
+ assertOccurrences(RSU_2_RECEIVE_MSG_APP_CELL_LOG, ".*Received CAM from veh_1.*", 15);
// adhoc
// test pattern no interference with ad hoc rsus
@@ -211,7 +211,7 @@ public void roundTripMessageTakesRightAmountOfTime() throws Exception {
long delayTmcUpload = 50 * TIME.MILLI_SECOND;
long delayTmcDownload = 50 * TIME.MILLI_SECOND;
long delayVehUpload = 86 * TIME.MILLI_SECOND; //TODO check those values, are those random?
- long delayVehDownload = 57 * TIME.MILLI_SECOND; //TODO check those values, are those random? if so, than its not ideal for a test
+ long delayVehDownload = 67 * TIME.MILLI_SECOND; //TODO check those values, are those random? if so, than its not ideal for a test
long timeFromTmcToVeh = delayTmcUpload + delayVehDownload;
long timeFromVehToTmc = delayVehUpload + delayTmcDownload;
diff --git a/test/scenarios/cell-sns-cam-send-and-receive/cell/cell_config.json b/test/scenarios/cell-sns-cam-send-and-receive/cell/cell_config.json
index ff729782a..920100c68 100644
--- a/test/scenarios/cell-sns-cam-send-and-receive/cell/cell_config.json
+++ b/test/scenarios/cell-sns-cam-send-and-receive/cell/cell_config.json
@@ -1,4 +1,11 @@
{
"networkConfigurationFile": "network.json",
- "regionConfigurationFile": "regions.json"
+ "regionConfigurationFile": "regions.json",
+ "headerLengths": {
+ "udpHeader": "8 Bytes",
+ "tcpHeader": "20 Bytes",
+ "ipHeader": "20 Bytes",
+ "cellularHeader": "18 Bytes",
+ "ethernetHeader": "18 Bytes"
+ }
}
\ No newline at end of file