'Associates the floating IP to the port.
``port_id`` represents a VNIC of an instance.
``port_id`` argument is different from a normal neutron port ID.
A value passed as ``port_id`` must be one of target_id returned by
``list_targets``, ``get_target_id_by_instance`` or
``list_target_id_by_instance`` method.'

@profiler.trace
def associate(self, floating_ip_id, port_id):

    (pid, ip_address) = port_id.split('_', 1)
    update_dict = {'port_id': pid, 'fixed_ip_address': ip_address}
    self.client.update_floatingip(floating_ip_id, {'floatingip': update_dict})
