路由信息协议
| 本条目没有列出任何参考或来源。(2007年11月29日) |
| 网络协议 | |
|---|---|
| 应用层 | |
| DHCP (DHCP · DHCPv6) · DNS · FTP · Gopher · HTTP · IMAP4 · IRC · NNTP · XMPP · POP3 · SIP · SMTP · SNMP · SSH · TELNET · RPC · RTCP · RTP ·RTSP · SDP · SOAP · GTP · STUN · NTP · SSDP · 更多 | |
| 传输层 | |
|
TCP · UDP · TLS/SSL · DCCP · SCTP RSVP · PPTP · 更多 |
|
| 网络层 | |
|
IP (IPv4 · IPv6) · ICMP · ICMPv6 · IGMP · IS-IS · IPsec · BGP · RIP · OSPF ·ARP · RARP · 更多 |
|
| 数据链路层 | |
|
Wi-Fi(IEEE 802.11) · WiMAX(IEEE 802.16) · ATM · DTM · 令牌环 · 乙太網路 · FDDI · 帧中继 · GPRS · EVDO · HSPA · HDLC · PPP · L2TP · ISDN ·STP · 更多 |
|
| 物理层 | |
| 以太网 · 调制解调器 · 电力线通信(PLC) · SONET/SDH · G.709 · 光导纤维 · 同轴电缆 · 双绞线 · 更多 | |
路由信息协议(英语:Routing Information Protocol,缩写:RIP)是一种使用最广泛的内部网关协议(IGP)。(IGP)是在内部网络上使用的路由协议(在少数情形下,也可以用于连接到因特网的网络),它可以通过不断的交换信息让路由器动态的适应网络连接的变化,这些信息包括每个路由器可以到达哪些网络,这些网络有多远等。 RIP 屬於網路層。
虽然RIP仍然经常的被使用,但大多数人认为它将会而且正在被诸如OSPF和IS-IS这样的路由协议所取代。当然,我们也看到EIGRP,一种和RIP属于同一基本协议类(距离矢量路由协议,Distance Vector Routing Protocol)但更具适应性的路由协议,也得到了一些使用。
目录 |
历史 [编辑]
RIP所使用的路由算法是Bellman-Ford算法.这种算法最早被用于一个计算机网络是在1969年,当时是作为ARPANET的初始路由算法。
RIP是由“网关信息协议”(Xerox Parc的用于互联网工作的PARC通用数据包协议簇的一部分)发展过来的,可以说网关信息协议是RIP的最早的版本。后来的一个版本才被命名为“路由信息协议”,是Xerox网络服务协议簇的一部分。
運作原理 [编辑]
同一自治系統(A.S.)中的 路由器每 30秒會與相鄰的路由器 交換子訊息,以動態的建立路由表。
RIP封包格式 [编辑]
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | command (1) | version (1) | must be zero (2) | +---------------+---------------+-------------------------------+ | address family identifier (2) | must be zero (2) | +-------------------------------+-------------------------------+ | IP address (4) | +---------------------------------------------------------------+ | must be zero (4) | +---------------------------------------------------------------+ | must be zero (4) | +---------------------------------------------------------------+ | metric (4) | +---------------------------------------------------------------+
RIP 允許最大的hop數為15
版本 [编辑]
目前RIP共有三個版本,RIPv1, RIPv2, RIPng。
RIPv1 [编辑]
RIPv1使用分类路由,定義在[RFC 1058]中。在它的路由更新(Routing Updates)中並不帶有子网的資訊,因此它無法支援可变长度子网掩码。這個限制造成在RIPv1的網路中,在同級網路下無法使用不同的子网掩码。換句話說,在同一個網路下所有的子網路數目都是相同的。另外,它也不支援對路由過程時的認證,使得RIPv1有一些輕微的弱點,有機會遭受到可能的攻擊。
RIPv2 [编辑]
因為RIPv1的缺陷,RIPv2在1994年被提出,將子網路的資訊包含在內,透過這樣的方式提供无类别域间路由,不過對於最大節點數15的這個限制仍然被保留著。另外針對安全性的問題,RIPv2也提供一套方法,未透過加密來達到認證的效果。而之後[RFC 2082]也定義了利用MD5來達到認證的方法。 RIPv2的相關規定在[RFC 2453] or STD56。
RIPng [编辑]
RIPng(Routing Information Protocol next generation)在RFC 2080中被定义,主要是針對IPv6做一些延伸的規範。與RIPv2相比下其最主要的差異是:
- RIPv2 支援RIP更新認證, RIPng 則不支持,因为IPv6路由器理应会使用IPsec来进行身份验证;
- RIPv2 容許给路由器附上任何標籤, RIPng 則不容許;
- RIPv2 在每个路由表项中都保存下一跳的信息,RIPng 是对一组路由表项指定下一跳信息;
- RIPv2 使用UDP端口520和多播地址224.0.0.9通信,RIPng 则使用UDP端口521和多播地址FF02::9通信
相似協定 [编辑]
一隻比RIP更強大,且同樣基於距離矢量路由協定的協定,是思科專有的IGRP。思科在其現時發行的軟件中已再沒有對IGRP提供支援,而且由EIGRP──一隻徹底地重新設計的路由通訊協定所取代。 不過它與IGRP的關系就只有命名上的相似,亦純粹是因為EIGRP依然是基於距離矢量路由協定的緣故。
分层 [编辑]
TCP/IP参考模型分为四层:应用层(Application Layer)、传输层(Transport Layer)、网络层(Internet Layer)、链路层(Link Layer)。
| TCP/IP分层 | 协议 | OSI 分层 | ||||
|---|---|---|---|---|---|---|
| 应用层 | FTP | SMTP | Telnet | DNS | SNMP | 7 |
| 传输层 | TCP | UDP | 4 | |||
| 网络层 | IP, ICMP (RIP, OSPF) | 3 | ||||
| ARP, RARP | ||||||
| 链路层 | Ethernet | Token Bus |
Token Ring |
FDDI | WLAN | 2 |
| 1 | ||||||