diff --git a/osm_lcm/lcm.cfg b/osm_lcm/lcm.cfg
index c6123f0..67d3ac9 100644
--- a/osm_lcm/lcm.cfg
+++ b/osm_lcm/lcm.cfg
@@ -35,7 +35,10 @@
     host:   vca
     port:   17070
     user:   admin
-    secret:   secret
+    secret: secret
+    # pubkey: pubkey
+    # cacert: cacert
+
     # loglevel: DEBUG
     # logfile:  /var/log/osm/lcm-vca.log
 
diff --git a/osm_lcm/lcm.py b/osm_lcm/lcm.py
index 11447c2..c4e5eed 100644
--- a/osm_lcm/lcm.py
+++ b/osm_lcm/lcm.py
@@ -46,8 +46,8 @@
 min_n2vc_version = "0.0.2"
 min_common_version = "0.1.19"
 # uncomment if LCM is installed as library and installed, and get them from __init__.py
-lcm_version = '0.1.36'
-lcm_version_date = '2019-04-22'
+lcm_version = '0.1.37'
+lcm_version_date = '2019-04-30'
 health_check_file = path.expanduser("~") + "/time_last_ping"   # TODO find better location for this file
 
 
diff --git a/osm_lcm/ns.py b/osm_lcm/ns.py
index 5d34b05..d6318ad 100644
--- a/osm_lcm/ns.py
+++ b/osm_lcm/ns.py
@@ -29,7 +29,7 @@
 
 from osm_common.dbbase import DbException
 from osm_common.fsbase import FsException
-from n2vc.vnf import N2VC, N2VCPrimitiveExecutionFailed
+from n2vc.vnf import N2VC, N2VCPrimitiveExecutionFailed, NetworkServiceDoesNotExist
 
 from copy import copy, deepcopy
 from http import HTTPStatus
@@ -99,6 +99,8 @@
             # it unset and pass it via DeployCharms
             # artifacts=vca_config[''],
             artifacts=None,
+            juju_public_key=vca_config.get('pubkey'),
+            ca_cert=vca_config.get('cacert'),
         )
 
     def vnfd2RO(self, vnfd, new_id=None, additionalParams=None, nsrId=None):
@@ -197,7 +199,8 @@
                 if model_name == vca_deployed["model"] and application_name == vca_deployed["application"]:
                     break
             else:
-                self.logger.error(logging_text + " Not present at nsr._admin.deployed.VCA")
+                self.logger.error(logging_text + " Not present at nsr._admin.deployed.VCA. Received model_name={}".
+                                  format(model_name))
                 return
             if task:
                 if task.cancelled():
@@ -675,8 +678,10 @@
 
             # Get or generates the _admin.deployed,VCA list
             vca_deployed_list = None
+            vca_model_name = None
             if db_nsr["_admin"].get("deployed"):
                 vca_deployed_list = db_nsr["_admin"]["deployed"].get("VCA")
+                vca_model_name = db_nsr["_admin"]["deployed"].get("VCA-model-name")
             if vca_deployed_list is None:
                 vca_deployed_list = []
                 db_nsr_update["_admin.deployed.VCA"] = vca_deployed_list
@@ -889,7 +894,7 @@
 
                 # ns_name will be ignored in the current version of N2VC
                 # but will be implemented for the next point release.
-                model_name = "default"    # TODO bug 585  nsr_id
+                model_name = nsr_id
                 if vdu_id:
                     vdu_id_text = vdu_id + "-"
                 else:
@@ -964,6 +969,13 @@
                     proxy_charm = vnf_config["juju"]["charm"]
 
                     if proxy_charm:
+                        if not vca_model_name:
+                            step = "creating VCA model name '{}'".format(nsr_id)
+                            self.logger.debug(logging_text + step)
+                            await self.n2vc.CreateNetworkService(nsr_id)
+                            vca_model_name = nsr_id
+                            db_nsr_update["_admin.deployed.VCA-model-name"] = nsr_id
+                            self.update_db_2("nsrs", nsr_id, db_nsr_update)
                         step = "connecting to N2VC to configure vnf {}".format(vnf_index)
                         vnfr_params["rw_mgmt_ip"] = db_vnfrs[vnf_index]["ip-address"]
                         charm_params = {
@@ -975,6 +987,7 @@
                         # Login to the VCA. If there are multiple calls to login(),
                         # subsequent calls will be a nop and return immediately.
                         await self.n2vc.login()
+
                         deploy_charm(vnf_index, None, None, None, charm_params, n2vc_info)
                         number_to_configure += 1
 
@@ -987,6 +1000,12 @@
                         proxy_charm = vdu_config["juju"]["charm"]
 
                         if proxy_charm:
+                            if not vca_model_name:
+                                step = "creating VCA model name"
+                                await self.n2vc.CreateNetworkService(nsr_id)
+                                vca_model_name = nsr_id
+                                db_nsr_update["_admin.deployed.VCA-model-name"] = nsr_id
+                                self.update_db_2("nsrs", nsr_id, db_nsr_update)
                             step = "connecting to N2VC to configure vdu {} from vnf {}".format(vdu["id"], vnf_index)
                             await self.n2vc.login()
                             vdur = db_vnfrs[vnf_index]["vdur"][vdu_index]
@@ -1179,7 +1198,21 @@
             db_nsr_update["operational-status"] = "terminating"
             db_nsr_update["config-status"] = "terminating"
 
-            if nsr_deployed and nsr_deployed.get("VCA"):
+            if nsr_deployed and nsr_deployed.get("VCA-model-name"):
+                vca_model_name = nsr_deployed["VCA-model-name"]
+                step = "deleting VCA model name '{}' and all charms".format(vca_model_name)
+                self.logger.debug(logging_text + step)
+                try:
+                    await self.n2vc.DestroyNetworkService(vca_model_name)
+                except NetworkServiceDoesNotExist:
+                    pass
+                db_nsr_update["_admin.deployed.VCA-model-name"] = None
+                if nsr_deployed.get("VCA"):
+                    for vca_index in range(0, len(nsr_deployed["VCA"])):
+                        db_nsr_update["_admin.deployed.VCA.{}".format(vca_index)] = None
+                self.update_db_2("nsrs", nsr_id, db_nsr_update)
+            # for backward compatibility if charm have been created with "default"  model name delete one by one
+            elif nsr_deployed and nsr_deployed.get("VCA"):
                 try:
                     step = "Scheduling configuration charms removing"
                     db_nsr_update["detailed-status"] = "Deleting charms"
