A survey on the service interoperability in cloud computing: client-centric and provider-centric perspectives