1,BGP报文
     Open:建邻居,交换version、AS号、holdtime、BGP identifier(即RouterID)、可选参数长度、可选参数。
     Keepalive:保持邻居 ,即和BGP对等体的keepalive消息。
     Update:路由更新 ,NLRI(前缀和前缀长度)、路径属性、被撤销路由。每个update只有一个路径信息。
     Notification:出错关闭连接 ,检测到错误条件时发送notification,然后立即关闭BGP连接。
     Route-refresh:路由策略变化时,重新请求。
 
     备注:
     BGP RouterID选择方法同OSPF。
     IGP建邻居和保持邻居都是hello包;BGP建邻居open,保持邻居keepalive。
     思科默认keepalive是60s,holdtime是180s,即180s收不到keepalive即失效。
 
2,BGP状态
     Idle:初始状态,查找邻居路由。
     Connect:已找到路由,开始发送TCP包。尝试TCP三次握手,成功则进入OpenSent,失败则进入Active反复尝试。
     Active:继续发送TCP包。TCP连接建立失败,反复尝试。
     OpenSent:发送Open包,等待对方Open包。收到对端Open后,成功则进入OpenConfirm,出错则发送notification。
     OpenConfirm:发送keepalive包,等待对端keepalive/notification。前者则进入established,后者则进入idle。
     Established:收到keepalive,开始交换update。show ip bgp summary最后一列会显示数字
 
     状态迁移表:
 
状态 操作 成功 失败
idle 查邻居路由 进入connect 进入idle
connect 发TCP包建TCP 进入opensent 进入active
active 发TCP包建TCP 进入opensent 进入active
opensent 发open等待一致open 进入openconfirm 发送notification
openconfirm 发keepalive等待keepalive/notification 前者进入established 后者进入idle
established 交互update
     停在idle:本端问题,没有路由,查看IGP是否有问题
     停在active:对端问题,邻居没有本端路由表,邻居配错了对端地址,邻居没有配命令,邻居AS号配错,neighbor对端与更新源不对。
 
3,建邻居和通告路由使用命令
 
 
IGP BGP
建邻居,即发hello包 network neighbor
通告路由 network network
 
     备注:建邻居后,一端TCP179,另一端随机端口,另外建立两条链路,然后随机拆掉一条
 
 
 

BGP - 2,BGP报文和BGP状态的更多相关文章

  1. HCNP Routing&Switching之BGP报文结构、类型和状态

    前文我们了解了BGP的邻居建立条件.优化以及BGP认证相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15395723.html:今天我们来聊一聊BGP ...

  2. BGP的五种报文六种状态

    BGP的五种报文 Open报文:用于协商BGP参数,包括版本号,AS号等信息.在两个路由器之间建立了TCP会话之后开始交换Open信息以确认是否能形成邻居关系,是TCP建立后发送的第一个信息,类似OS ...

  3. php中各种http报错的状态码分析

    HTTP会经常遇见错误,本文主要和大家分享php中各种http报错的状态码,希望能帮助到大家. HTTP 错误 400 400 请求出错 由于语法格式有误,服务器无法理解此请求.不作修改,客户程序就无 ...

  4. SAP 对HU做转库操作,系统报错 - 系统状态HUAS是活动的 - 分析

    SAP 对HU做转库操作,系统报错 - 系统状态HUAS是活动的 - 分析 近日收到业务团队报的问题,说是对某个HU做转库时候,系统报错.如下图示: HU里有是三个序列号, 1191111034011 ...

  5. 什么是BGP线路?什么是BGP机房?

    BGP(Border Gateway Protocol,边界网关协议)主要用于互联网AS(自治系统)之间的互联.BGP的最主要功能在于控制路由的传播和选择最好的路由.BGP是Internetproje ...

  6. Http报文和Request和Response的常用方法

    简述 它是HTTP应用程序之间发送的数据块.这些数据块以一些文本形式的元信息开头,这些信息描述了报文的内容及含义,后面跟着可选的数据部分.这些报文都是在客户端.服务器和代理之间流动. HTTP报文的流 ...

  7. HTTP请求报文和HTTP响应报文

    HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的.HTTP有两类报文:请求报文和响应报文. HTTP请求报文 一个HTTP请求报文由请求行(request ...

  8. HTTP请求报文和HTTP响应报文(转)

    原文地址:http://blog.csdn.net/zhangliang_571/article/details/23508953 HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串, ...

  9. VLAN报文和非VLAN以太网报文的区别

    VLAN(Virtual Local Area Network,虚拟局域网)协议,基于802.1Q协议标准. 以太网带VLAN帧结构,是在以太网报文中,位于数据帧中“发送源MAC地址”与“类别/长度域 ...

随机推荐

  1. (转)Swagger2 & Postman工具使用

    (二期)7.swagger2与postman [课程七]swagge...tman.xmind0.3MB [课程七预习]sw...tman.xmind31.3KB 随着互联网技术的发展,现在的网站架构 ...

  2. (转)Jenkins持续集成

    (二期)14.持续集成工具jenkins [课程14]持续集...概念.xmind0.6MB [课程14]持续集成...kins.xmind43.3KB [课程14预习]持续...kins.xmind ...

  3. 深度学习课程笔记(十五)Recurrent Neural Network

    深度学习课程笔记(十五)Recurrent Neural Network 2018-08-07 18:55:12 This video tutorial can be found from: Yout ...

  4. An Empirical Evaluation of Generic Convolutional and Recurrent Networks for Sequence Modeling

    An Empirical Evaluation of Generic Convolutional and Recurrent Networks for Sequence Modeling 2018-0 ...

  5. .Net Core Package lose or not match

    错误.警告的说明: 示例一: 严重性:警告 代码:MSB3106 说明 :程序集强名称“C:\Users\$(computerName)\.nuget\packages\$(packageName)\ ...

  6. Use Memory Layout from Target Dialog Scatter File

    参考 MDK-ARM Linker Scatter File的用法(转载) keil报错 Rebuild target 'Target 1' assembling test1.s... linking ...

  7. jdk1.8和tomcat9.0、maven3.5.0配置教程

    一.jdk环境变量 JAVA_HOME :C:\Program Files\Java\jdk1.8.0_77(这个是你安装JDK时的路径,按照实际情况改成你自己的目录) CLASSPATH:   .; ...

  8. 【三】php 数组

    数组 1.数字索引数组:array('a','b','c');  2.访问数组内容 $arr[下标] 3.新增数组元素 $arr[下标]=内容 4.使用循环访问数组 //针对数字索引 $arr=arr ...

  9. eureka 和zookeeper 区别 优势【转】

    作为服务注册中心,Eureka比Zookeeper好在哪里 著名的CAP理论指出,一个分布式系统不可能同时满足C(一致性).A(可用性)和P(分区容错性).由于分区容错性在是分布式系统中必须要保证的, ...

  10. python中字典的用法

    一,字典的简单介绍概念: 字典(dict)是python中唯一的一个映射类型.他是以{ }括起来的键值对组成. 在dict中key是 唯一的. 在保存的时候, 根据key来计算出一个内存地址. 然后将 ...