I had to manually clear the application buffers in order to reduce the memory consumption after each simulation
for (uint j = 0; j < N_NODES; j++)
{
for (uint8_t i = 0; i < c.Get(j)->GetNApplications(); i++)
{
Ptr<Application> app = c.Get(j)->GetApplication(i);
Ptr<TfrcApplicationDccp> myApp = DynamicCast<TfrcApplicationDccp>(app);
if (myApp != NULL)
{
Ptr<Socket> ss = myApp->GetSocket();
Ptr<DccpSocketImpl> soc = DynamicCast<DccpSocketImpl>(ss);
soc->m_txBuffer.clear();
soc->m_rxBuffer.clear();