My understanding of updating a node's incomplete blockchain is that:
A node with an incomplete blockchain (let's say its been offline for some time) will send a getblocks message and then will receive an inv response with the latest 500 blocks from the most updated machine.
What I don't understand is that when you originally set up a full-node, it is downloading blocks from the network and adding them successively starting from the genesis block (which is encoded into the full-node's client software). So why can't it download the latest block from the network rather than sending many messages. <-- Or is this understanding blatantly wrong - that is, new full-nodes are not downloading blocks from the network.