NOTE: Using software to mass-download the site degrades the server and is prohibited.
If you want to read The TCP/IP Guide offline, please consider licensing it. Thank you.

The Book is Here... and Now On Sale!

Enjoy The TCP/IP Guide? Get the complete PDF!
The TCP/IP Guide

Google
Web TCP/IP Guide






Table Of Contents  The TCP/IP Guide
 9  TCP/IP Lower-Layer (Interface, Internet and Transport) Protocols (OSI Layers 2, 3 and 4)
      9  TCP/IP Internet Layer (OSI Network Layer) Protocols
           9  TCP/IP Routing Protocols (Gateway Protocols)
                9  TCP/IP Exterior Gateway/Routing Protocols (BGP and EGP)
                     9  TCP/IP Border Gateway Protocol (BGP/BGP-4)
                          9  BGP Detailed Messaging, Operation and Message Formats

Previous Topic/Section
BGP Detailed Messaging, Operation and Message Formats
Previous Page
Pages in Current Topic/Section
1
2
3
Next Page
BGP Connection Establishment: Open Messages
Next Topic/Section

BGP Message Generation and Transport, and General Message Format
(Page 2 of 3)

BGP General Message Format

The use of TCP also has an interesting impact on the way BGP messages are structured. One thing that stands out when you look at the BGP message format (as we will see shortly) is that a BGP message can have an odd number of bytes. Most routing protocols are sized in units of 4 or 8 bytes, but since TCP sends data as a stream of octets there is no need for BGP messages to break on a 32-bit or 64-bit boundary. The other impact is the need of a special Marker field to help ensure that BGP messages can be differentiated from each other in the TCP stream (more about this in a moment).

Like most messaging protocols, BGP uses a common message format for each of its four message types. Each BGP message is conceptually divided into a header and a body (called the data portion in the BGP standard). The header has three fields and is fixed in length at 19 bytes. The body is variable in length, and in fact is omitted entirely in Keepalive messages, since it is not needed for them.

The general format for all BGP message types is shown in Table 136 and Figure 192.


Table 136: BGP General Message Format

Field Name

Size (bytes)

Description

Marker

16

Marker: This large field at the start of each BGP message is used for synchronization and authentication.

Length

2

Length: The total length of the message in bytes, including the fields of the header. The minimum value of this field is 19 for a Keepalive message; it may be as high as 4,096.

Type

1

 

Message Body / Data Portion

Variable

Message Body / Data Portion: Contains the specific fields used to implement each message type, for Open, Update and Notification messages.



Figure 192: BGP General Message Format

 


Previous Topic/Section
BGP Detailed Messaging, Operation and Message Formats
Previous Page
Pages in Current Topic/Section
1
2
3
Next Page
BGP Connection Establishment: Open Messages
Next Topic/Section

If you find The TCP/IP Guide useful, please consider making a small Paypal donation to help the site, using one of the buttons below. You can also donate a custom amount using the far right button (not less than $1 please, or PayPal gets most/all of your money!) In lieu of a larger donation, you may wish to consider purchasing a download license of The TCP/IP Guide. Thanks for your support!
Donate $2
Donate $5
Donate $10
Donate $20
Donate $30
Donate: $



Home - Table Of Contents - Contact Us

The TCP/IP Guide (http://www.TCPIPGuide.com)
Version 3.0 - Version Date: September 20, 2005

© Copyright 2001-2005 Charles M. Kozierok. All Rights Reserved.
Not responsible for any loss resulting from the use of this site.