what is an EGP? - Answer Exterior Gateway Protocol (EGP) is a routing protocol that
exchanges routing information between different autonomous systems. BGP is an
example of an EGP and is a very robust and scalable routing protocol
what transport protocol does BGP uses? - Answer BGP uses the Transmission Control
Protocol (TCP) as its transport protocol, which provides
connection-oriented reliable delivery. BGP information is carried inside TCP
segments using protocol 179; these segments are carried inside IP packets
what do you call a BGP enabled router? - Answer BGP Speaker
Two routers speaking BGP (called BGP speakers) establish a TCP connection with one
another and exchange messages to open and confirm the connection parameters. what
do you call these two routers? - Answer BGP Peers or BGP Neighbors
BGP sends BGP/TCP keepalives by default, are sent every? - Answer 60 seconds.
what is the administrative distance of BGP? - Answer External BGP (eBGP) routes
(BGP routes learned from an
external autonomous system) have a default administrative distance of 20. Internal BGP
(iBGP) routes (BGP routes learned from within the autonomous system) have a default
administrative distance of 200.
what are the BGP Message Types? - Answer • Open
• Keepalive
• Update
• Notification
After a TCP connection is established, how does BGP speakers exchanges open and
keepalive messages? - Answer After a TCP connection is established, the first message
sent by each side is an open
message. If the open message is acceptable, a keepalive message confirming the open
message is sent back by the side that received the open message. When the open is
confirmed, the BGP connection is established, and update, keepalive,
and notification messages can be exchanged.
what are some of the information included in BGP Open Messages? - Answer • Version:
This 8-bit field indicates the message's BGP version number. The highest
common version that both routers support is used. BGP implementations today use
the current version, BGP-4.
• My autonomous system: This 16-bit field indicates the sender's autonomous system
number. The peer router verifies this information; if it is not the autonomous system
number expected, then the BGP session is torn down.
,• Hold time: This 16-bit field indicates the maximum number of seconds that can
elapse between the successive keepalive or update messages from the sender. Upon
receipt of an open message, the router calculates the value of the hold timer to use
with this neighbor by using the smaller of its configured hold time (which has a
default of 180 seconds) and the hold time received in the open message.
• BGP router identifier (router ID): This 32-bit field indicates the sender's BGP
identifier. The BGP router ID is an IP address assigned to that router and is determined
at startup. The BGP router ID is chosen the same way the OSPF router ID is
chosen: It is the highest active IP address on the router, unless a loopback interface
with an IP address exists, in which case it is the highest such loopback IP address.
Alternatively, the router ID can be statically configured, overriding the automatic
selection.
• Optional parameters: A length field indicates the total length of the optional
parameters field in octets. These parameters are Type, Length, and Value (TLV)
what is an BGP Update message? - Answer An update message has information on
one path only; multiple paths require multiple
messages. All the attributes in the update message refer to that path, and the networks
are those that can be reached through that path. An update message might include the
following fields:
• Withdrawn routes: A list of IP address prefixes for routes that are being withdrawn
from service, if any.
• Path attributes: The AS-path, origin, local preference, and so forth, as discussed in
the "BGP Attributes" section later in this chapter. Each path attribute includes the
attribute type, attribute length, and attribute value (TLV). The attribute type consists
of the attribute flags, followed by the attribute type code.
• Network layer reachability information (NLRI): A list of networks (IP address prefixes
and their prefix lengths) that can be reached by this path.
what is a BGP notification messages? - Answer A BGP router sends a notification
message when it detects an error condition. The BGP
router closes the BGP connection immediately after sending the notification message.
Notification messages include an error code, an error subcode, and data related to the
error.
what are the BGP Neighbor States? - Answer 1. Idle:This is the first state where BGP
waits for a "start event". The start event occurs when someone configures a new BGP
neighbor or when we reset an established BGP peering. After the start event, BGP will
initialize some resources, resets a ConnectRetry timer and initiates a TCP connection to
the remote BGP neighbor. It will also start listening for a connection in case the remote
BGP neighbor tries to establish a connection. When successful, BGP moves to the
Connect state. When it fails, it will remain in the Idle state.
2. Connect: BGP is waiting for the TCP three-way handshake to complete. When it is
successful, it will continue to the OpenSent state. In case it fails, we continue to the
Active state. If the ConnectRetry timer expires then we will remain in this state. The
, ConnectRetry timer will be reset and BGP will try a new TCP three-way handshake. If
anything else happens (for example resetting BGP) then we move back to the Idle state.
3. Active: BGP will try another TCP three-way handshake to establish a connection with
the remote BGP neighbor. If it is successful, it will move to the OpenSent state. If the
ConnectRetry timer expires then we move back to the Connect state. BGP will also
keep listening for incoming connections in case the remote BGP neighbor tries to
establish a connection. Other events can cause the router to go back to the Idle state
(resetting BGP for example).
4. OpenSent: In this state BGP will be waiting for an Open message from the remote
BGP neighbor. The Open message will be checked for errors, if something is wrong
(incorrect version numbers, wrong AS number, etc.) then BGP will respond with a
Notification message and jumps back to the Idle state. This is also the moment where
BGP decides whether we use EBGP or IBGP (since we check the AS number). If
everything is OK then BGP starts sending keepalive messages and resets its keepalive
timer. At this moment, the hold time is negotiated (lowest value is picked) between the
two BGP routers. In case the TCP session fails, BGP will jump back to the Active state.
When any other errors occur (expiration of hold timer), BGP will send a notification
message with the error code and jumps back to the Idle state. In case someone resets
the BGP process, we also jump back to the Idle state.
5. OpenConfirm: BGP waits for a keepalive message from the remote BGP neighbor.
When we receive the keepalive, we can move to the established state and the neighbor
adjacency will be completed. When this occurs, it will reset the hold timer. If we receive
a notification message from the remote BGP neighbor then we fall back to the Idle state.
BGP will keep sending keepalive messages.
6. Established: The BGP neighbor adjacency is complete and the BGP routers will send
update packets to exchange routing information. Every time we receive a keepalive or
update message, the hold timer will be resetted. In case we receive a notification
message we will jump back to the Idle state.
when and when not to use BGP? - Answer use bgp when :
• The autonomous system allows packets to transit through it to reach other
autonomous
systems (for example, it is a service provider).
• The autonomous system has multiple connections to other autonomous systems.
• Routing policy and route selection for traffic entering and leaving the autonomous
system must be manipulated.
Do not use BGP when :
• A single connection to the Internet or another autonomous system.
• Lack of memory or processor power on edge routers to handle constant BGP
updates.
• You have a limited understanding of route filtering and the BGP path-selection
process.
• If the routing policy that will be implemented in an autonomous system is consistent
with the policy implemented in the ISP autonomous system.