Currently i'm CCNA and going for CCNP.
I have a qustion about BGP. Why would companies use BGP for Internet connection?
Thank you in advance.
BGP is the protocol used to exchange routing information between routers on the (global) internet.
Each organization (large enough, or with a need for that) is assigned an AS number, and a range (subnet) (or more) of IP addresses. For routing between those autonomous systems (AS'), BGP is used.
Why BGP? Probably because it is simple enough to work with ~400k routes, and due to legacy reasons (all the edge routers in the world would have to be updated to use another routing protocol).
BGP is very scalable and can be configured easily (however to be able to troubleshoot, you need to know BGP indepth). It is used on a global scale by ISP's as well. To calculate the routing path, BGP uses a few variables and not just a metric or number of paths. So this should be more accurate. Even if you want to set up a backup path, this can be done simply by adding the same AS number over and over in the path... . The routing table can handle large amounts of entry's as well.
If you want further information, I do suggest you take the CNNP BGP course. It's very good, but a lot to put in one post of course :)
Using a routing information protocol such as BGP becomes necessary as soon as you have multiple connections to the rest of the Internet:
With a multi-homed setup, your IP addresses are no longer assigned by your provider, but rather directly from the relevant registry; BGP is used to announce these addresses to each of your providers, which then in turn announce to their peers that they know how to reach your addresses.
Similarly, for each outgoing packet, you want to use the connection that is closer to the destination, so you construct the routing table on your edge router from the BGP announcements received from both your providers.
BGP is used for external and Internal routing between "internetworks", BGP is commonly used by ISPs and large organizations to route throught the internet using ASN (autonomous system number). External BGP is used by ISPs to communicate to another ISP or any organization that has a "Backbone". These types of routing occur outside the LAN, instead these routes materializes in a WAN or which is the internet.