源地址:

https://www.juniper.net/techpubs/software/junos-security/junos-security10.2/junos-security-swconfig-mpls/topic-47253.html

正文:

这个案例向我们展示了如何使用RSVP作为signaling协议来路由器之间的IP网络里创建LSP。(译者按:我所理解的所谓signaling协议,就是用于分发label,确定哪个LSR在哪个口用哪个label的协议。如Cisco 的LDP,Juniper常用的RSVP。)

必备条件:

在开始本实验之前,删除设备上的安全服务。具体参考 https://www.juniper.net/techpubs/software/junos-security/junos-security10.2/junos-security-swconfig-mpls/topic-47168.html

概述和拓扑:


典型的RSVP-signaled LSP

在MPLS网络中,若想在路由器之间建立起LSP来,你必须亲自手动激活MPLS family、在每个transit接口上配置RSVP(本例展示了如何激活MPLS以及在ge-0/0/0口上配置RSVP)。另外,你必须在这个网络中所有的接口上都激活MPLS(译者按:也就是说不管是不是transit接口都要激活MPLS)。

这个案例展示了如何:在ingress路由器(R1)上,使用R7的loopback口地址(10.0.9.7)定义一个从R1至R7的LSP。下面的配置里为MPLS预留了10Mbps带宽。另外,这个配置禁用了CSPF算法,以确保主机C1和C2所用RSVP-signaled LSP是和IGP网络的最短路径是一致的。

配置

CLI快速配置

快速配置RSVP,请复制以下命令粘贴到CLI中

[edit]
set interfaces ge-// unit family mpls
set protocols rsvp interface ge-//0.0
set protocols mpls label-switched-path r1-r7 to 10.0.9.7
set protocols mpls label-switched-path r1-r7 bandwidth 10m
set protocols mpls label-switched-path r1-r7 no-cspf
set protocols mpls interface all

分解步骤

下面的例子需要你定位到不同的配置层级当中再做配置。关于CLI层级请看 https://www.juniper.net/topics/reference/general/cli-editor-configuration-mode-quick-reference-using.html

配置RSVP:

1. 在所有transit接口上激活MPLS family

user@host# set interfaces ge-0/0/0 unit 0 family mpls

2. 在每个transit接口上激活RSVP

user @host# set protocols rsvp interface ge-0/0/0

3. 为所有接口激活MPLS进程。(译者按:这个其实就是在protocol mpls下做的配置,和第一步里unit 0 family mpls做一个区分,第一步是在interface下做配置,这一步是在protocol下做配置)

user@host# set protocols mpls interface all

4. 在ingress路由器上定义LSP

user@host# set label-switched-path r1-r7 to 10.0.9.7

5. 给LSP留10Mbps的带宽

user @host# set label-switched-path r1-r7 bandwidth 10m

6. 禁用CSPF算法

user@host# set label-switched-path r1-r7 no-cspf

结果

通过在configuration 模式下show命令确认你的配置无误。如果输出的不是你想要的配置,再过一遍这个例子中的配置指南来改正它(编者按:Juniper的文档的废话还真多...)。

简洁起见, 下面这个show命令的输出只包含了和这个例子有关的配置,无关的都用...略去了。

user@host# show
...
interfaces {
ge-// {
family mpls;
}
}
}
...
protocols {
rsvp {
interface ge-//0.0;
}
mpls {
label-switched-path r1-r7 {
to 10.0.9.7;
bandwidth 10m;
no-cspf;
}
interface all;
}
}
...

配置完了之后记得commit。

验证

目的:

验证每台设备建立起了相应的RSVP邻居。例如,在拓扑图中,路由器R1会列出R2 R3这两个RSVP邻居。

命令:

在CLI里,输入 show rsvp neighbor 命令。

输出:

user@r1> show rsvp neighbor
RSVP neighbor: learned
Address Idle Up/Dn LastChange HelloInt HelloTx/Rx
10.0.6.2 / : /
10.0.3.3 / : /

意义:

输出里可以看到邻居路由器的IP地址。请验证结果里列出来了每个建立了RSVP邻居的路由器的loopback地址。

验证RSVP会话

目的:

验证在RSVP邻居之间,RSVP会话成功建立了,另外验证带宽预留的值是不是和设定的一样。

命令:

在CLI里,输入 show rsvp session detail命令。

输出:

user@r1> show rsvp session detail
Ingress RSVP: sessions 10.0.9.7
From: 10.0.6.1, LSPstate: Up, ActiveRoute:
LSPname: r1–r7, LSPpath: Primary
Bidirectional, Upstream label in: –, Upstream label out: -
Suggested label received: -, Suggested label sent: –
Recovery label received: -, Recovery label sent:
Resv style: FF, Label in: -, Label out:
Time left: -, Since: Thu Jan ::
Tspec: rate 10Mbps size 10Mbps peak Infbps m M
Port number: sender receiver protocol
PATH rcvfrom: localclient
PATH sentto: 10.0.4.13 (ge-//1.0) pkts
RESV rcvfrom: 10.0.4.13 (ge-//1.0) pkts
Record route: <self> 10.0.4.13 10.0.2.1 10.0.8.10

意义:

输出的详细信息里,包含了session ID,以及对每个session的带宽预留,下一跳地址。请验证如下信息:

  • 每个RSVP邻居地址以loopback地址的形式列出。
  • 每个RSVP会话的状态是up的
  • 对于Tspec(译者按:Tspec即traffic specification),对应的带宽值是10Mbps如上面所显示的。

验证RSVP-signaled LSP确实发挥了作用

目的:

验证ingress路由器上的路由表已经存在了你配置的其他路由器的loopback地址。例如,验证图中R1的inet.3路由表里有你配给R7的LSP。

命令:

在CLI里,输入 show route table inet.3 命令。

输出:

user@r1> show route table inet.
inet.: destinations, routes ( active, holddown, hidden)
+ = Active Route, - = Last Active, * = Both 10.0.9.7/ *[RSVP/] ::, metric
> to 10.0.4.17 via ge-//0.0, label-switched-path r1–r7

意义:

从输出里可以看到RSVP路由存在于inet.3路由表。在MPLS网络里,请验证RSVP-signaled LSP和出口(egress)路由器R7的loopback口是关联的。

 

【翻译】配置RSVP-signaled LSP的更多相关文章

  1. AngularJS-系统代码的配置和翻译

    前言:在Web开发中常常会遇到这样的情况,有些页面的下拉选项是固定不变的几个,比如:性别,一般有男.女.保密等.对于这样的情形我们一般在数据库中存储的是数字或者其对应的代码,如果是可维护的需要系统给出 ...

  2. RSVP协议的基本概念介绍

    2010-06-12 14:12 佚名 互联网 字号:T | T 对于RSVP协议的简单介绍和图解.通过文章,我们将对这个含义的基本概念和结构,以及工作方式等方面的知识有所了解.希望对大家有所帮助. ...

  3. 连载:面向对象葵花宝典:思想、技巧与实践(32) - LSP原则

    LSP是唯一一个以人名命名的设计原则,并且作者还是一个"女博士"  ======================================================== ...

  4. MPLS

    Multiprotocol Label Switching From Wikipedia, the free encyclopedia "MPLS" redirects here. ...

  5. 【OOAD】面向对象设计原则概述

    软件的可维护性和可复用性 知名软件大师Robert C.Martin认为一个可维护性(Maintainability) 较低的软件设计,通常由于如下4个原因造成: 过于僵硬(Rigidity)  ...

  6. python实现简体中文和繁体相互转换

    1. opencc-python 如果目录上的链接被屏蔽了,请手动复制 https://pypi.python.org/pypi/opencc-python/ 首先介绍opencc的python实现库 ...

  7. 程序猿职场心理学,教你三进三出“斩”HR拿offer(跳槽必看)

    摘要: 今天主要涉及到的是 HR 在面试时有哪些套路,这样可以见招拆招,斩获 offer! 今天主要涉及到的是 HR 在面试时有哪些套路,这样可以见招拆招,斩获 offer! 主要包括以下内容: 一. ...

  8. ng2-file-upload插件在ionic3中的使用方法

    本文主要说明在ionic3中使用ng2-file-upload插件,上传多种类型文件(图片.word.excel.ppt.mp4等)的使用方法. 1.html代码: <button ion-bu ...

  9. 创建第一个Android项目

    目录 创建第一个Android项目 创建HelloWorld项目 选择模板 选择模板界面的英文翻译 配置项目 配置项目界面英文翻译及解释 配置项目界面的注意事项 Name的命名规范 Package n ...

随机推荐

  1. Windows Phone 8.1 Update1 支持中文“小娜”及开发者模拟器更新

    千呼万唤的 Windows Phone 8.1 Update1 在 developer Perview 发布了还没有升级的朋友随我先睹为快吧.升级了的朋友们来看看 WP8.1 update1 还有哪些 ...

  2. 命令行 更新Android sdk

    使用如下代理服务器: 大连东软信息学院镜像服务器地址: http://mirrors.neusoft.edu.cn 端口:80 北京化工大学镜像服务器地址: IPv4: http://ubuntu.b ...

  3. CSS之边框覆盖

    今天想做一个淘宝导航来练练手,遇到了边框覆盖的问题.如下图: li的红色边框盖不住该灰色边框.后来问经验人士告诉我,这种边框覆盖是会出现无法100%保证正常的情况,遂得到如下3中解决方案: 1.以后遇 ...

  4. CSS基础汇总

    1. css的出现是为了是内容和表现分离.分为三种: 内联:不推荐 嵌入:没有利用浏览器缓存机制. 外联: 2. css优先级:①id优先级高于class②后面的样式覆盖前面的③指定的高于继承④行内样 ...

  5. angularjs + seajs构建Web Form前端(三) -- 兼容easyui

    回顾 在上一章中使用了angular实现了ajax form和树形结构,经过以上两章对于angular的大致使用,对于angular也有了初步的认识,接下来的内容只会对angular的一些用法做简单的 ...

  6. java框架篇---spring IOC依赖注入

    spring依赖注入的方式有4种 构造方法注入 属性注入 工厂注入 注解注入 下面通过一个实例统一讲解: User.java package com.bjsxt.model; public class ...

  7. C# 类型基础

    引言 本文之初的目的是讲述设计模式中的 Prototype(原型)模式,但是如果想较清楚地弄明白这个模式,需要了解对象克隆(Object Clone),Clone其实也就是对象复制.复制又分为了浅度复 ...

  8. 二项堆(二)之 C++的实现

    概要 上一章介绍了二项堆的基本概念,并通过C语言实现了二项堆.本章是二项堆的C++实现. 目录1. 二项树的介绍2. 二项堆的介绍3. 二项堆的基本操作4. 二项堆的C++实现(完整源码)5. 二项堆 ...

  9. iOS_拨打电话/发送短信

    GitHub address : https://github.com/mancongiOS/makeACallAndSendMessage.git 功能一: 拨打电话 1.可以有提示框.提示该电话号 ...

  10. HTML简明教程(二)

    HTML简明教程(二) 一.HTML 图像 二.HTML 表格 三.HTML 列表 四.HTML div和 span 五.HTML 布局 六.HTML 表单和输入 七.HTML 框架 八.HTML内联 ...