BGP - synchronization / no synchronization



 ◆ BGPの同期原則

 トランジットASでIBGPフルメッシュを構成しない場合、以下のような問題点が発生する場合があります。
 下図では、AS1から「1.0.0.0/8」のBGPアップデートを送信しています。R2とR4とではIBGPピアを形成
 しています。その結果、R4は「1.0.0.0/8」を受信して、R5へ「1.0.0.0/8」をアドバタイズするとします。


    


 R2が「1.0.0.0/8」をIGPに再配布しておらず、R3が「1.0.0.0/8」のルート情報を知らないと仮定します。
 AS2のR3から「1.0.0.0/8」宛てにトラフィックを送信すると「R5→R4→R3」とパケットが到達しますが、
 R3は「1.0.0.0/8」のルート情報を知らない結果、R3で「1.0.0.0/8」宛のパケットを破棄してしまいます。

 上述は、同期原則が無効時(no synchronization)の動作です。同期原則が有効(synchronization)時の
 動作では下図のようになります。


    



 同期(synchronization)規定では、
ASが他のASから第3のトラフィックを送信している場合はAS内の
 
全てのルータがIGPを介してルートを学習するまでは、BGPルータはルートをアドバタイズしてはならない
 と定義されています。これにより、BGPルートをアドバタイズしたにも関わらず、そのAS内でパケットが
 破棄されることを回避します。最後にIGPで1.0.0.0/8を再配布して通知させた時の動作を見てみましょう。


   


 ◆ BGPの同期原則 - 同期を無効化(no synchronization)して良い場合

 以下の 01 または 02 の条件に合致する場合、BGPの同期は無効化(no synchronization)に設定できます。

 01. 非トランジットASの場合( 別のASからのトラフィックが特定のASを通過しない構成 )
 02. AS内の全てのルートでBGPが動作しており、IBGPピアのフルメッシュが確立している場合

 つまり、BGP同期を有効化しなければいけないケースなんてほぼないのです。また、同期を無効化することで
 
IGPで伝達されるルートが減り、IBGPルートをIGPでチェックしないのでBGPのコンバージ速度が向上します。
 そのため、現在のIOSではBGP同期設定は無効化(no synchronization)がデフォルトの設定となっています。

 先ほどの構成図でも、下図のようにIBGPフルメッシュ構成であれば、IGPルートを伝播させる必要はないです。


    


 ◆ BGP - synchronizationの無効化(デフォルトの状態)

 Cisco(config)# router bgp 1
 Cisco(config-router)#no synchronization


 
◆ BGP - synchronizationの有効化(設定変更した状態)

 Cisco(config)# router bgp 1
 Cisco(config-router)#synchronization




BGP(Border Gateway Protocol)

ネットワークエンジニアとして

Copyright (C) 2002-2017 ネットワークエンジニアとして All Rights Reserved.