“…First, the MLFO solves the PDL using the constraints, resulting in a mapping between the ML functions and the datacenters, and the connectivity and the deployment plan is computed. A list of iterations is generated that includes the communication of the MLFO with the VIO (e.g., Kubernetes) for the deployment of the ML functions (e.g., encapsulated into containers [5] ), and with the SDN controller for managing the connectivity among the ML functions. The list iterations include: i) the namespace creation (3); ii) the configuration of an image repository storing the different computing images that are retrieved when a new ML function instance is deployed (4); iii) the configuration of the ML pipeline network that entails creating the VLAN (5) and pairing it "namespace": "mla2-v1", "renderdata": { "gw": "192.168.30.73", "name": "ovs-vlan-600", "subnet": "192.168.30.72/29", "vlan": 600}, "type": "ovs_network" } 5 { "namespace": "mla2-v1", "renderdata": { "configs": [{"name": "push-url", "value":"http://192.168.30.74/reg"}], "filename": "servers.yaml", "name": "dynamic-config-2"}, "type": "yamlfileconfig" } 7 { "datacenter": "Metro DC-1", "renderdata": { "name": "VLAN_600_to_TUNNEL_200", "tunnelid": 200, "vlanid": 600}, "type": "vlantotunnel" } 6 Fig.…”