aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlberto Compagno <acompagn+fdio@cisco.com>2019-12-13 20:51:05 +0000
committerAlberto Compagno <acompagn+fdio@cisco.com>2020-03-27 15:41:23 +0100
commit09fb1366d42de04a428d6a2b0607d4cca878eee7 (patch)
tree8e77e7e4f913d8b0225f13be872acf2423677944
parent4b36dc3d5dd3ec206aa24d49557c61ae5886be2b (diff)
[HICN-458] Setting data packet size socket option when the payload size is passed
Signed-off-by: Alberto Compagno <acompagn+fdio@cisco.com> Change-Id: Ie0ee26a1e8bff3279cc88c4e7c09b0fdb23924c1
-rw-r--r--libtransport/src/implementation/socket_producer.h2
-rw-r--r--utils/src/hiperf.cc7
2 files changed, 7 insertions, 2 deletions
diff --git a/libtransport/src/implementation/socket_producer.h b/libtransport/src/implementation/socket_producer.h
index cae0ad7..9ccc59d 100644
--- a/libtransport/src/implementation/socket_producer.h
+++ b/libtransport/src/implementation/socket_producer.h
@@ -454,7 +454,7 @@ class ProducerSocket : public Socket<BasePortal>,
uint32_t socket_option_value) {
switch (socket_option_key) {
case GeneralTransportOptions::DATA_PACKET_SIZE:
- if (socket_option_value < default_values::max_content_object_size &&
+ if (socket_option_value <= default_values::max_content_object_size &&
socket_option_value > 0) {
data_packet_size_ = socket_option_value;
}
diff --git a/utils/src/hiperf.cc b/utils/src/hiperf.cc
index eabd12c..008bd0c 100644
--- a/utils/src/hiperf.cc
+++ b/utils/src/hiperf.cc
@@ -165,7 +165,7 @@ struct ServerConfiguration {
rtc_(false),
interactive_(false),
production_rate_(std::string("2048kbps")),
- payload_size_(1400)
+ payload_size_(1440)
#ifdef SECURE_HICNTRANSPORT
,
secure_(false)
@@ -896,6 +896,11 @@ class HIperfServer {
}
}
+ producer_socket_->setSocketOption(
+ GeneralTransportOptions::DATA_PACKET_SIZE,
+ (uint32_t)(
+ configuration_.payload_size_ +
+ (configuration_.name.getAddressFamily() == AF_INET ? 40 : 60)));
producer_socket_->registerPrefix(configuration_.name);
producer_socket_->connect();