diff --git a/src/emuvim/api/sonata/dummygatekeeper.py b/src/emuvim/api/sonata/dummygatekeeper.py
index 7d1f525..5214146 100755
--- a/src/emuvim/api/sonata/dummygatekeeper.py
+++ b/src/emuvim/api/sonata/dummygatekeeper.py
@@ -970,6 +970,7 @@
             # automatically deploy the service
             if AUTO_DEPLOY:
                 # ok, we have a service uuid, lets start the service
+                reset_subnets()
                 service_instance_uuid = GK.services.get(service_uuid).start_service()
 
             # generate the JSON result
@@ -1131,6 +1132,18 @@
 
     return vnf_id, vnf_interface, vnf_sap_docker_name
 
+def reset_subnets():
+    # private subnet definitions for the generated interfaces
+    # 10.10.xxx.0/24
+    global SAP_SUBNETS
+    SAP_SUBNETS = generate_subnets('10.10', 0, subnet_size=50, mask=30)
+    # 10.20.xxx.0/30
+    global ELAN_SUBNETS
+    ELAN_SUBNETS = generate_subnets('10.20', 0, subnet_size=50, mask=24)
+    # 10.30.xxx.0/30
+    global ELINE_SUBNETS
+    ELINE_SUBNETS = generate_subnets('10.30', 0, subnet_size=50, mask=30)
+
 if __name__ == '__main__':
     """
     Lets allow to run the API in standalone mode.
diff --git a/src/emuvim/dcemulator/monitoring.py b/src/emuvim/dcemulator/monitoring.py
index 01c0918..46d6fd1 100755
--- a/src/emuvim/dcemulator/monitoring.py
+++ b/src/emuvim/dcemulator/monitoring.py
@@ -506,7 +506,8 @@
                "--label",'com.containernet=""',
                "google/cadvisor:latest",
                "--storage_duration=1m0s",
-               "--allow_dynamic_housekeeping=true",
+               "--allow_dynamic_housekeeping=false",
+               "--housekeeping_interval=1s",
                ]
         logging.info('Start cAdvisor container {0}'.format(cmd))
         return Popen(cmd)
