code: func (p *peerConnection) FetchNodeData(hashes []common.Hash) error {
  	// Sanity check the protocol version
  	if p.version < 63 {
  		panic(fmt.Sprintf("node data fetch [eth/63+] requested on eth/%d", p.version))
  	}
  	// Short circuit if the peer is already fetching
  	if !atomic.CompareAndSwapInt32(&p.stateIdle, 0, 1) {
  		return errAlreadyFetching
  	}
  	p.stateStarted = time.Now()
  
  	go p.peer.RequestNodeData(hashes)
  
  	return nil
  }
docs: // FetchNodeData sends a node state data retrieval request to the remote peer.