I highly recommend Kurose/Ross' Computer Networking book for a place to start. As the title suggests, it's a "top down approach" starting at the application layer, so if you're familiar with application network programming (and especially HTTP) you can probably skip the early parts of the book. It then details routing protocols, of which there are 2 major kinds: interior routing protocols (RIP, OSPF, EIGRP, iBGP, et al) and exterior routing protocols (eBGP). The former is for routing within your "autonomous system", the latter is for routing between autonomous systems.