Implement channel caching