code: async def _refresh_table(self):
          
          results = []
          for node_id in self.protocol.get_refresh_ids():
              node = Node(node_id)
              nearest = self.protocol.router.find_neighbors(node, self.alpha)
              spider = NodeSpiderCrawl(self.protocol, node, nearest,
                                       self.ksize, self.alpha)
              results.append(spider.find())
  
          # do our crawling
          await asyncio.gather(*results)
  
          # now republish keys older than one hour
          for dkey, value in self.storage.iter_older_than(3600):
              await self.set_digest(dkey, value)
docs: Refresh buckets that haven't had any lookups in the last hour
          (per section 2.3 of the paper).