A routing protocol is part of the implementation of a distributed routing architecture, which is how paths across a communication network are selected. They carry data from one switching node to another, for use by the algorithms which do the actual path selection.
In the Internet, there are several different routing protocols in use. BGP is the 'top level' EGP algorithm/protocol, which is used to select routes between 'autonomous systems' (ASs). Inside an AS, a so-called 'Interior Gateway Protocol' (IGP) is used; there are three main ones in use: