added serviceInterface & implemented in client/server