signetlabdei / quic-ns-3

QUIC implementation for ns-3
GNU General Public License v2.0
44 stars 17 forks source link

Limited bytes are sent only when using BulkSend app with QuicSocket #24

Open inayatalikhan opened 2 years ago

inayatalikhan commented 2 years ago

Hi, I am trying to send 2GB bytes with BulkSend app using QuicSocket however the app stops sending data after sending a few hundred thousand bytes (approx 14600 Quic packets). Is there any issue with the Quic implementation or it's me doing something wrong? I used the code from quic-variants-comparison-bulksend.cc

Thank you

uint16_t port = 50000; // well-known echo port number

Address sinkLocalAddress (InetSocketAddress (Ipv4Address::GetAny (), port));

ApplicationContainer clientApps; ApplicationContainer serverApps; // applications client and server

  AddressValue remoteAddress (InetSocketAddress (interfaces.GetAddress (1), port));
  BulkSendHelper ftp ("ns3::QuicSocketFactory", Address ());
  ftp.SetAttribute ("Remote", remoteAddress);
  ftp.SetAttribute ("SendSize", UintegerValue (1400));
  ftp.SetAttribute ("MaxBytes", UintegerValue (10000000));   // = 2147483648;     //2GB file
  clientApps.Add(ftp.Install (terminals.Get (0)));
  PacketSinkHelper sinkHelper ("ns3::QuicSocketFactory", sinkLocalAddress);
  sinkHelper.SetAttribute ("Protocol", TypeIdValue (QuicSocketFactory::GetTypeId ()));
  serverApps.Add(sinkHelper.Install (terminals.Get (1)));

serverApps.Start (Seconds (1.0)); clientApps.Stop (Seconds (50.0)); clientApps.Start (Seconds (4.0));