从网络、路由、数据链路、网络安全技术等4个方面对Cisco所使用的网络协议进行了分类和特点介绍。

1、思科网络路由协议 网络/路由(Network/Routing)

  • CGMP:思科组管理协议 (CGMP:Cisco Group Management Protocol)
  • EIGRP:增强的内部网关路由选择协议 (EIGRP:Enhanced Interior Gateway Routing Protocol)
  • IGRP:内部网关路由协议 (IGRP:Interior Gateway Routing Protocol)
  • HSRP:热备份路由器协议 (HSRP:Hot Standby Routing Protocol)
  • RGMP:Cisco Router Port Group Management Protocol

CGMP:思科组管理协议
CGMP:Cisco Group Management Protocol

  思科组管理协议 CGMP 主要用来限定只向与 IP 组播客户机相连的端口转发 IP 组播数据包。这些客户机自动加入和离开接收 IP 组播流量的组,交换机根据请求动态改变其转发行为。CGMP 主要提供以下服务:

  允许 IP 组播数据包被交换到具有 IP 组播客户机的那些端口。
  将网络带宽保存在用户字段,不致于转播不必要的IP组播流量。
  不需要改变终端主机系统。
  在为交换网络中的每个组播组创建独立 VLAN 时不会产生额外开销。

  一旦 CGMP 被激活使用,它能自动识别与 CGMP-Capable 路由器连接的端口。CGMP 通过缺省方式被激活,它支持最大为64的 IP 组播组注册。支持 CGMP 的组播路由器周期性地相发送 CGMP 加入信息(Join Messages),用来通告自己执行网络交换行为。接收交换机保存信息,并设置一个类似于路由器保持时间(Holdtime)的定时器(Timer)。交换机每接收一个 CGMP 加入信息,定时器也随其不断更新。当路由器保持时间终止时,交换机负责将所有知道的组播组移出 CGMP。

  CGMP 结合 IGMP 信息共同实现动态分配 Cisco Catalyst 交换机端口过程,从而 IP 组播流量只被转发给与 IP 组播客户机相连的那些端口。由于 CGMP-Capable IP 组播路由器看到所有 IGMP 数据包,因此它可以通知交换机特定主机什么时候加入或离开 IP 组播组。当 CGMP-Capable 路由器接收一个 IGMP 控制数据包时,它会创建一个包含请求类型(加入或离开)、组播组地址和主机有效 MAC 地址等的 CGMP 数据包。然后路由器将 CGMP 数据包发送到所有 Catalyst 交换机都知道的地址上。当交换机接收 CGMP 数据包时,交换机负责转换数据包同时更改组播组的转发行为。至此,该组播流量只被发送到与适当 IP 组播客户机相连的那些端口。该过程是自动实现的,无需用户参与。

EIGRP:增强的内部网关路由选择协议
EIGRP:Enhanced Interior Gateway Routing Protocol

  增强的内部网关路由选择协议 EIGRP 是增强版的 IGRP 协议。IGRP 是思科提供的一种用于 TCP/IP 和 OSI 英特网服务的内部网关路由选择协议。它被视为是一种内部网关协议,而作为域内路由选择的一种外部网关协议,它还没有得到普遍应用。

  Enhanced IGRP 与其它路由选择协议之间主要区别包括:收敛宽速(Fast Convergence)、支持变长子网掩模(Subnet Mask)、局部更新和多网络层协议。执行 Enhanced IGRP 的路由器存储了所有其相邻路由表,以便于它能快速利用各种选择路径(Alternate Routes)。如果没有合适路径,Enhanced IGRP 查询其邻居以获取所需路径。直到找到合适路径,Enhanced IGRP 查询才会终止,否则一直持续下去。

  EIGRP 协议对所有的 EIGRP 路由进行任意掩码长度的路由聚合,从而减少路由信息传输,节省带宽。另外 EIGRP 协议可以通过配置,在任意接口的位边界路由器上支持路由聚合。

  Enhanced IGRP 不作周期性更新。取而代之,当路径度量标准改变时,Enhanced IGRP 只发送局部更新(Partial Updates)信息。局部更新信息的传输自动受到限制,从而使得只有那些需要信息的路由器才会更新。基于以上这两种性能,因此 Enhanced IGRP 损耗的带宽比 IGRP 少得多。

IGRP:内部网关路由协议
IGRP:Interior Gateway Routing Protocol

  内部网关路由协议(IGRP)是一种在自治系统(AS:autonomous system)中提供路由选择功能的路由协议。在上世纪80年代中期,最常用的内部路由协是路由信息协议(RIP)。尽管 RIP 对于实现小型或中型同机种互联网络的路由选择是非常有用的,但是随着网络的不断发展,其受到的限制也越加明显。思科路由器的实用性和 IGRP 的强大功能性,使得众多小型互联网络组织采用 IGRP 取代了 RIP。早在上世纪90年代,思科就推出了增强的 IGRP,进一步提高了 IGRP 的操作效率。

  IGRP 是一种距离向量(Distance Vector)内部网关协议(IGP)。距离向量路由选择协议采用数学上的距离标准计算路径大小,该标准就是距离向量。距离向量路由选择协议通常与链路状态路由选择协议(Link-State Routing Protocols)相对,这主要在于:距离向量路由选择协议是对互联网中的所有节点发送本地连接信息。

  为具有更大的灵活性,IGRP 支持多路径路由选择服务。在循环(Round Robin)方式下,两条同等带宽线路能运行单通信流,如果其中一根线路传输失败,系统会自动切换到另一根线路上。多路径可以是具有不同标准但仍然奏效的多路径线路。例如,一条线路比另一条线路优先3倍(即标准低3级),那么意味着这条路径可以使用3次。只有符合某特定最佳路径范围或在差量范围之内的路径才可以用作多路径。差量(Variance)是网络管理员可以设定的另一个值。

HSRP:热备份路由器协议
HSRP:Hot Standby Router Protocol

  热备份路由器协议(HSRP)的设计目标是支持特定情况下 IP 流量失败转移不会引起混乱、并允许主机使用单路由器,以及即使在实际第一跳路由器使用失败的情形下仍能维护路由器间的连通性。换句话说,当源主机不能动态知道第一跳路由器的 IP 地址时,HSRP 协议能够保护第一跳路由器不出故障。该协议中含有多种路由器,对应一个虚拟路由器。HSRP 协议只支持一个路由器代表虚拟路由器实现数据包转发过程。终端主机将它们各自的数据包转发到该虚拟路由器上。

  负责转发数据包的路由器称之为主动路由器(Active Router)。一旦主动路由器出现故障,HSRP 将激活备份路由器(Standby Routers)取代主动路由器。HSRP 协议提供了一种决定使用主动路由器还是备份路由器的机制,并指定一个虚拟的 IP 地址作为网络系统的缺省网关地址。如果主动路由器出现故障,备份路由器(Standby Routers)承接主动路由器的所有任务,并且不会导致主机连通中断现象。

  HSRP 运行在 UDP 上,采用端口号1985。路由器转发协议数据包的源地址使用的是实际 IP 地址,而并非虚拟地址,正是基于这一点,HSRP 路由器间能相互识别。

RGMP:思科路由器端口组管理协议
RGMP:Cisco Router Port Group Management Protocol

  思科路由器端口组管理协议(RGMP)弥补了 Internet 组管理协议(IGMP:Internet Group Management Protocol)在 Snooping 技术机制上所存在的不足。RGMP 协议作用于组播路由器和交换机之间。通过 RGMP,可以将交换机中转发的组播数据包固定在所需要的路由器中。RGMP 的设计目标是应用于具有多种路由器相连的骨干交换网(Backbone Switched Networks)。

  IGMP Snooping 技术的局限性主要体现在:该技术只能将组播流量固定在接收机间经过其它交换机直接或间接相连的交换端口,在 IGMP Snooping 技术下,组播流量不能固定在至少与一台组播路由器相连的端口处,从而引起这些端口的组播流量扩散。IGMP Snooping 是机制固有的局限性。基于此,路由器无法报告流量状态,所以交换机只能知道主机请求的组播流量类型,而不知道路由器端口接收的流量类型。

  RGMP 协议支持将组播流量固定在路由器端口。为高效实现流量固定,要求网络交换机和路由器都必须支持 RGMP 。通过 RGMP,骨干交换机可以知道每个端口需要的组类型,然后组播路由器将该信息传送给交换机。但是路由器只发送 RGMP 信息,而忽视了所接收的 RGMP 信息。当组不再需要接收通信流量时,路由器会发送一个 RGMP 离开信息(Leave Message)。RGMP 协议中网络交换机需要消耗网络端口达到 RGMP 信息并对其进行处理操作。此外,RGMP 中的交换机不允许将接收到的 RGMP 信息转发/扩散到其它网络端口。

  RGMP 的设计目标是与支持分配树 Join/Prune 的组播路由选择协议相结合使用。其典型协议为 PIM-SM。RGMP 协议只规定了 IP v4 组播路由选择操作,而不包括 IP v6。

2、思科数据链路协议 数据链路 (Data Link)

  • CDP:思科发现协议 (CDP:Cisco Discovery Protocol)
  • DTP:思科动态中继协议 (DTP:Dynamic Trunk Protocol)
  • ISL & DISL:思科交换链路内协议和动态 ISL 协议 (ISL:Inter-Switch Link Protocol)
  • VTP:思科VLAN中继协议 (VTP:VLAN Trunking Protocol)

CDP:思科发现协议 CDP
CDP:Cisco Discovery Protocol

  CDP基本上是用来获取相邻设备的协议地址以及发现这些设备的平台。CDP 也可为路由器的使用提供相关接口信息。CDP 是一种独立媒体协议,运行在所有思科本身制造的设备上,包括路由器、网桥、接入服务器和交换机。

  SNMP 中结合使用 CDP 管理信息基础 MIB,能使网络管理应用获知设备类型和相邻设备的 SNMP 代理地址,并向这些设备发送 SNMP 查询请求。Cisco 发现协议支持 CISCO-CDP-MIB。

  CDP 运行在所有的媒体上,从而支持子网访问协议 SNAP,包括局域网、帧中继和异步传输模式 ATM 物理媒体。CDP 只运行于数据链路层,因此,支持不同网络层协议的两个系统彼此相互了解。

  CDP 配置的每台设备发送周期性信息,如我们所知的广告到组播地址。每台设备至少广告一个地址,在该地址下,它可以接收 SNMP 信息。广告包括生存期,或保持时间等信息,这些信息指出了在取消之前接收设备应该保持 CDP 信息的时间长短。此外每台设备还要注意其它设备发出的周期性 CDP 信息,从中了解相邻设备信息并决定那些设备的媒体接口什么时候增长或降低。

  CDP 版本2,是目前该协议使用最普遍的版本,它具有更高的智能设备跟踪等性能。支持该性能的报告机制,提供快速差错跟踪功能,有利于缩短停机时间(Downtime)。报告差错信息可以发送到控制台或日志服务器(Logging Server),这些差错信息包括连接端口上不匹配(Unmatching)的本地??VLAN IDs(IEEE 802.1Q)以及连接设备间不匹配的端口双向状态。

DTP:思科动态中继协议
DTP:Cisco Dynamic Trunking Protocol

  思科动态中继协议 DTP,是 VLAN 组中思科所有协议,主要用于协商两台设备间链路上的中继过程以及中继封装 802.1Q 类型。

  中继协议有很多不同类型。如果端口被设置为 Trunk 端口,那么该端口便具有自动中继功能,在某些情况下,甚至具有协商端口中继类型的功能。这种与其它设备之间进行的协商中继方法的过程被称之为动态中继技术。

  首先关注的是,中继电缆(Trunk Cable)终端最好对它们正在中继或它们将中继帧视为正常帧问题达成一致。在信息帧头另外添加标签信息容易导致终端站的混乱,这是因为终端站的驱动栈无法识别该标签信息,从而导致终端系统上锁或失败。为解决这个问题,思科创建了交换协议以实现通信目的。推出的第一版本是 VTP,即 VLAN 中继协议,它与 ISL 共同作用。最新推出的版本,即动态中继协议 DTP 与 802.1Q 共同作用。

  其次是创建 LANs。交换机要想实现独立配置 VLANs 交换,需要做很多工作并且容易引起较多矛盾,这是因为 VLAN 100 运行在一台交换机上,计费却在另一台上。这很容易破坏机器的 VLAN 安全模式,而故障恢复机制正是为此而设立的。此外也可通过 VTP/DTP 解决该问题。同一管理控制台可以在某台交换机上创建或删除一个 VTP,并使信息自动传播到交换机组上,这种交换机组可能是一个 VTP 域。

ISL & DISL:思科交换链路内协议和动态 ISL 协议
ISL & DISL:Cisco Inter-Switch Link Protocol and Dynamic ISL Protocol

  交换链路内协议(ISL),是思科私有协议,主要用于维护交换机和路由器间的通信流量等 VLAN 信息。

  ISL 标签(Tagging)能与 802.1Q 干线执行相同任务,只是所采用的帧格式不同。ISL 干线(Trunks)是 Cisco 私有,即指两设备间(如交换机)的一条点对点连接线路。在“交换链路内协议”名称中即包含了这层含义。ISL 帧标签采用一种低延迟(Low-Latency)机制为单个物理路径上的多 VLANs 流量提供复用技术。ISL 主要用于实现交换机、路由器以及各节点(如服务器所使用的网络接口卡)之间的连接操作。为支持 ISL 功能特征,每台连接设备都必须采用 ISL 配置。ISL 所配置的路由器支持 VLAN 内通信服务。非 ISL 配置的设备,则用于接收由 ISL 封装的以太帧(Ethernet Frames),通常情况下,非 ISL 配置的设备将这些接收的帧及其大小归因于协议差错。

  和 802.1Q 一样,ISL 作用于 OSI 模型第2层。所不同的是,ISL 协议头和协议尾封装了整个第2层的以太帧。正因为此,ISL 被认为是一种能在交换机间传送第2层任何类型的帧或上层协议的独立协议。ISL 所封装的帧可以是令牌环(Token Ring)或快速以太网(Fast Ethernet),它们在发送端和接收端之间维持不变地实现传送。ISL 具有以下特征:

  由专用集成电路执行(ASIC:application-specific integrated circuits)
  不干涉客户机站;客户机不会看到 ISL 协议头
ISL NICs 为交换机与交换机、路由器与交换机、交换机与服务器等之间的运行提供高效性能。
动态交换链路内协议(DISL),也属于思科协议。它简化了两台相互连接的快速以太网设备上 ISL 干线的创建过程。快速以太信道技术为高性能中枢连接提供了两个全双工快速以太网链路是集中性。由于 DISL 中只允许将一个链路终端配置为干线,所以 DISL 实现了最小化 VLAN 干线。

VTP:思科VLAN中继协议
VTP:Cisco VLAN Trunking Protocol

  VLAN 中继协议(VTP)是思科第2层信息传送协议,主要控制网络范围内 VLANs 的添加、删除和重命名。VTP 减少了交换网络中的管理事务。当用户要为 VTP 服务器配置新 VLAN 时,可以通过域内所有交换机分配 VLAN,这样可以避免到处配置相同的 VLAN。VTP 是思科私有协议,它支持大多数的 Cisco Catalyst 系列产品。

  通过 VTP,其域内的所有交换机都清楚所有的 VLANs 情况,但当 VTP 可以建立多余流量时情况例外。这时,所有未知的单播(Unicasts)和广播在整个 VLAN 内进行扩散,使得网络中的所有交换机接收到所有广播,即使 VLAN 中没有连接用户,情况也不例外。而 VTP Pruning 技术正可以消除该多余流量。

  缺省方式下,所有Cisco Catalyst交换机都被配置为 VTP 服务器。这种情形适用于 VLAN 信息量小且易存储于任意交换机(NVRAM)上的小型网络。对于大型网络,由于每台交换机都会进行 NVRAM 存储操作,但该操作对于某些点是多余的,所以在这些点必须设置一个“判决呼叫”(Judgment Call)。基于此,网络管理员所使用的 VTP 服务器应该采用配置较好的交换机,其它交换机则作为客户机使用。此外需要有某些 VTP 服务器能提供网络所需的一定量的冗余。

  到目前为止,VTP 具有三种版本。其中 VTP v2 与 VTP v1 区别不大,主要不同在于:VTP v2 支持令牌环 VLANs,而 VTP v1 不支持。通常只有在使用 Token Ring VLANs 时,才会使用到 VTP v2,否则一般情况下并不使用 VTP v2。

  VTPv3 不能直接处理 VLANs 事务,它只负责管理域(Administrative Domain)内不透明数据库的分配任务。与前两版相比,VTP v3 具有以下改进:

支持扩展 VLANs。
支持专用 VLANs 的创建和广告。
提供服务器认证性能。
避免“错误”数据库进入 VTP 域。
与 VTP v1 和 VTP v2 交互作用。
支持每端口(On a Per-Port Basis)配置。
支持传播VLAN数据库和其它数据库类型。

3、思科网络安全技术协议 网络安全技术 (Security/VPN)

  • L2F:第二层转发协议 (Layer 2 Forwarding Protocol)
  • TACACS:终端访问控制器访问控制系统 (TACACS:Terminal Access Controller Access Control System)

L2F:第二层转发协议
L2F: Level 2 Forwarding protocol

  第二层转发协议(L2F)是一种用来建立跨越公用结构组织(如因特网)的安全隧道,为企业家庭通路连接一个 ISP POP 的协议。这个隧道建立了一个用户与企业客户网路间的虚拟点对点连接。

  第二层转发协议(L2F)允许链路层协议隧道技术。使用这样的隧道,使得分离原始拨号服务器位置即拨号协议连接终止的位置与提供的网络访问的位置成为可能。

  L2F 允许在 L2F 中封装 PPP/SLIP 包。ISP NAS 与家庭通路都需要请求一种常规封装协议,所以可以成功地传输或接收 SLIP/PPP 包。

相关链接 GRE、PPP、L2TP、PPTP、SLIP
组织来源 L2F 由 Cisco 定义。
相关链接 http://www.javvin.com/protocol/rfc2341.pdf:
Cisco Layer Two Forwarding (Protocol) — “L2F”

TACACS:终端访问控制器访问控制系统
TACACS & TACACS+:Terminal Access Controller Access Control System

  终端访问控制器访问控制系统(TACACS)通过一个或多个中心服务器为路由器、网络访问控制器以及其它网络处理设备提供了访问控制服务。TACACS 支持独立的认证(Authentication)、授权(Authorization)和计费(Accounting)功能。

  TACACS 允许客户机拥有自己的用户名和口令,并发送查询指令到 TACACS 认证服务器(又称之为TACACS Daemon 或 TACACSD)。通常情况下,该服务器运行在主机程序上。主机返回一个关于接收/拒绝请求的响应,然后根据响应类型,判断 TIP 是否允许访问。在上述过程中,判断处理采取“公开化(Opened Up)”并且对应的算法和数据取决于 TACACS Daemon 运行的对象。此外 TACACS 扩展协议支持更多类型的认证请求和响应代码。

  当前 TACACS 具有三种版本,其中第三版 TACACS+ 与前两版不兼容。

4 思科其他协议

SCCP:信令连接控制协议
SCCP:Skinny Client Control Protocol

  信令连接控制协议 SCCP 是用于思科呼叫管理及其 VOIP 电话之间的思科专有协议。其他供应商也支持该协议。

  为解决 VOIP 问题,要求 LAN 或者基于 IP 的 PBX 的终点站操作简单,常见且相对便宜。相对于 H.323 推荐的相当昂贵的系统而言,SCCP 定义了一个简单且易于使用的结构。通过 SCCP,H.323 代理可以与 Skinny 客户机进行通信。在这样的情况下,电话充当了 IP 上的 Skinny 客户机。而代理服务主要用于 H.225 和 H.245 信令。

  关于 SCCP 结构,作为 Cisco 呼叫管理的 H.323 代理服务器中存在大量的 H.323 处理源。终点站(电话)运行的客户机,该客户机只需消耗少量处理开销,客户机通过面向连接(基于 TCP/IP)的通信方式实现呼叫管理间的通信过程,从而与另一个适应的 H.323 终点站建立一个呼叫连接。一旦这样的呼叫连接建立起来,那么两个 H.323 终点站就可以通过无连接(基于 UDP/IP)通信方式实现音频传输。这样,通过限制建立呼叫管理的 H.323 呼叫装备的复杂性、以及为实际音频通信出入终点站提供 Skinny 协议来降低整个过程的费用和开销。
  XOT:基于 TCP 协议的 Cisco X.25(XOT:X.25 over TCP Protocol by Cisco)

  基于 TCP 协议的 Cisco X.25(XOT)是由思科开发的一种用于在 IP 英特网上实现 X.25 传输的协议。X.25 数据包层通常采用 LAPB,并且要求在其本身下面包含一个可靠的链路层。XOT 提供了一种在 IP 英特网上发送 X.25 数据包的方法,即将 X.25 数据包层封装在 TCP 数据包中。

  TCP 具有一个可靠字节流。X.25 中要求其下面的层,特别是数据包间的边界包含信息语义。为了达到这个目标,要求 TCP 和 X.25 间的 XOT 协议头较小(大约4字节)。XOT 协议头包含一个长字段,用以分隔 TCP 流中的 X.25 数据包。

  标准 X.25 协议数据包格式和状态转换规则通常应用于 XOT 中的 X.25 层。应注意例外情形。