计算机网络第9讲_第1页
计算机网络第9讲_第2页
计算机网络第9讲_第3页
计算机网络第9讲_第4页
计算机网络第9讲_第5页
已阅读5页,还剩99页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机网络第9讲

网际协议IP及其配套协议

各种应用层协议

应用层

(TELNET,FTP,SMTP等)

运输层TCP,UDP

ICMPIGMP

网际层IP

RARP||ARP

网络接口层与各种网络接口

物理硬件

路由器转发分组的步骤

■先按所要找的IP地址中的网络号net-id

把目的网络找到。

■当分组到达目的网络后,再利用主机号

host-id将数据报直接交付给目的主机。

■按照整数字节划分net-id字段和host-id

字段,就可以使路由器在收到一个分组时

能够更快地将地址中的网络号提取出来。

在同一个局域网上的主机或路由器的

IP地址中的网络号必须是一样的。

图中的网络号就是IP地址中的net-id1.3

TI

222.1.1.

fljLA4222.1.5.

222.1.3.

I

LAN

N3222.1.8.2

222.1.2.

222.1.5.N2222.15

04

IR3222.1.4.%.

\222.1.3,2B

互联网Jfl

在同一个局域网上的主机或路由器的

IP地址中的网络号必须是一样的。

图中的网络号就是IP地址中的net-idL3

04

flj

.I

\22214.2B

互联网

互联网中的IP地址

.1.1.2

222.1.1.

fll

LAN3

222.1.3$222.1.3,在同一个局域网上的主机或路由器的

al1

IP地址中的网络号必须是一样的。

222.1图中的网络号就是IP地址中的net-id

222.1.3』

I

o-r-O"-----------

\B

互联网

在同一个局域网上的主机或路由器的

IP地址中的网络号必须是一样的。

图中的网络号就是IP地址中的net-id

-2213.2J

互联网

路由器总是具有两个或两个以上的IP地址。

路由器的每一个接口都有一个

不同网络号的IP地址。

\B

|1

互联网

路由器总是具有两个或两个以上的IP地址。

路由器的每一个接口都有一个

不同网络号的IP地址。

[22213.2222JA1.B

|1

互联网

路由器总是具有两个或两个以上的IP地址。

路由器的每一个接口都有一个

不同网络号的IP地址。

LAN「

222.1.1.

fll

LAN3222.1.5.

222.1.3$

222.1.3.:

alLAN

N3222.1.8.2

222.1.2L

222.1.5.N2222.15

-d—:__.

222.1.3』1

IR3222.1.4.%产25

-o-------------------o—

222X4£B

|1

互联网

两个路由器直接相连的接口处,可指明也可不指明

IP地址。如指明IP地址,则这一段连线就构成了

一种只包含一段线路的特殊“网络”O现在常不

指明IP地址。

222.1.1.

LAN

3222.1.5.

222.1.3.

I

LAN

N3222.1.8.2

222.1.2.

222.1.5.N2222.15

222.1.3』

I产3Ni222.14R2产25

-o—

\222.1.3,2B

互联网

IP地址与硬件地址

通信的路径

H1一经过R1转发一再经过R2转发一心

主机Hi从协议栈的层次上看数据的流动主机H2

MAC帧MAC帧MAC帧

主机H1|从虚拟的IP层上看IP数据报的流动|主机H2

IPj]地址J笈遮~\

HAHAHA

|南局域网3HA4局域网HA56局域网2)

从HA1至UHA3力从HA4至IJHA5x>从HA6至UHA2=^>

MAC帧MAC帧MAC帧

从到二>

从HA1至UHA3力从HA4至UHA5X>HA6HA2

MAC帧MAC帧MAC帧

在IP层抽象的互联网上只能看到IP数据报

图中的IP]一IP2表示从源地址IP1到目的地址IP2

两个路由器的IP地址并不出现在IP数据报的首部中

HAHAJ

HAJHA3|HA4HA5In6『2

丁「L~~Kir1——;

从至从至

HA1UHA3=^>HA4UHA5X>从HA6到HA2

MAC帧MAC帧MAC帧

路由器只根据目的站的IP地址的网络号进行路由选择

从HA1至UHA3力从HA4至UHA5X>从HA6到HA2

MAC帧MAC帧MAC帧

在具体的物理网络的链路层

只能看见MAC帧而看不见IP数据报

从到二>从到

HAHA3HA4HA5从HA6到HA2

MAC帧MAC帧MAC帧

IP层抽象的互联网屏蔽了下层很复杂的细节

在抽象的网络层上讨论问题,就能够使用

统一的、抽象的IP地址

研究主机和主机或主机和路由器之间的通信

从到二>从到

HAHA3HA4HA5从HA6到HA2

MAC帧MAC帧MAC帧

地址解析协议ARP和

逆地址解析协议RARP

-不管网络层使用的是什么协议,在实际网络的链路

上传送数据帧时,最终还是必须使用硬件地址。

■每一个主机都设有一个ARP高速缓存(ARP

cache),里面有所在的局域网上的各主机和路由器

的IP地址到硬件地址的映射表。

■当主机A欲向本局域网上的某个主机B发送IP数

据报时,就先在其ARP高速缓存中查看有无主机

B的IP地址。如有,就可查出其对应的硬件地址,

再将此硬件地址写入MAC帧,然后通过局域网将

该MAC帧发往此硬件地址。

主机A广播发送

ARP请求分组[我是20900.5,硬件地址是00-00-C0-15-AD-18

I我想知道主机的硬件地址

^ARP请求|ARP请求|=>ARP请求匕ARP请求R

00-00-C0-15-AD-18

主机B向A发送

我是

ARP响应分组硬件地址是08-00-2B-00-EE-0A

---------

仁ARP响应

^209~0.0.5^I

X区A-11-,Bz

________i,________、

00-00-C0-15-AD-1808-00-2B-00-EE-0A

ARP高速缓存的作用

■为了减少网络上的通信量,主机A在发送

其ARP请求分组时,就将自己的IP地址

到硬件地址的映射写入ARP请求分组。

■当主机B收到A的ARP请求分组时,就

将主机A的这一地址映射写入主机B自己

的ARP高速缓存中。这对主机B以后向

A发送数据报时就更方便了。

应当注意的问题

■ARP是解决同一个局域网上的主机或路由器

的IP地址和硬件地址的映射问题。

■如果所要找的主机和源主机不在同一个局域

网上,那么就要通过ARP找到一个位于本局

域网上的某个路由器的硬件地址,然后把分

组发送给这个路由器,让这个路由器把分组

转发给下一个网络。剩下的工作就由下一个

网络来做。

应当注意的问题

■从IP地址到硬件地址的解析是自动进行的,

主机的用户对这种地址解析过程是不知道的。

■只要主机或路由器要和本网络上的另一个已

知IP地址的主机或路由器进行通信,ARP

协议就会自动地将该IP地址解析为链路层所

需要的硬件地址。

什么我们不直接

使用硬件地址进行通信?

-由于全世界存在着各式各样的网络,它们使用不

同的硬件地址。要使这些异构网络能够互相通信

就必须进行非常复杂的硬件地址转换工作,因此

几乎是不可能的事。

■连接到因特网的主机都拥有统一的IP地址,它

们之间的通信就像连接在同一个网络上那样简单

方便,因为调用ARP来寻找某个路由器或主机

的硬件地址都是由计算机软件自动进行的,对用

户来说是看不见这种调用过程的。

逆地址解析协议RARP

-逆地址解析协议RARP使只知道自己硬件

地址的主机能够知道其IP地址。

■这种主机往往是无盘工作站。因此RARP

协议目前已很少使用。

IP层转发分组的流程

路由器和结点交换机有些区别:

■路由器是用来连接不同的网络,而结点交换机只

是在一个特定的网络中工作。

■路由器是专门用来转发分组的,而结点交换机还

可接上许多个主机。

■路由器使用统一的IP协议,而结点交换机使用

所在广域网的特定协议。

■路由器根据目的网络地址找出下一个路由器,而

结点交换机则根据目的站所接入的交换机号找出

下一跳(即下一个结点交换机)。

在路由表中,对每一条路由,最主要的是

(目的网络地址,下一跳地址)

网1I|网2||网3[I网4

),0.0.020.0,0,0节♦HI,40.0.C

路由器R2的路由表

目的主机所在的网络下一跳路由器的地址

直接交付,接口0

直接交付,接口1

链路1II链路2I|链路3I|链路4

特定主机路由

-这种路由是为特定的目的主机指明一个路

由O

■采用特定主机路由可使网络管理人员能更

方便地控制网络和测试网络,同时也可在

需要考虑某种安全问题时采用这种特定主

机路由。

分组转发算法

(1)从数据报的首部提取目的站的IP地址。,得出目的

网络地址为No

(2)若网络N与此路由器直接相连,则直接将数据报交

付给目的站。;否则是间接交付,执行(3)。

(3)若路由表中有目的地址为。的特定主机路由,则将

数据报传送给路由表中所指明的下一跳路由器;否

则,执行(4)。

(4)若路由表中有到达网络/V的路由,则将数据报传送

给路由表指明的下一跳路由器;否则,执行(5)。

(5)若路由表中有一个默认路由,则将数据报传送给路

由表中所指明的默认路由器;否则,执行(8)。

(8)报告转发分组出错。

必须强调指出

■IP数据报的首部中没有地方可以用来指明“下

一跳路由器的IP地址”。

■当路由器收到待转发的数据报,不是将下一跳

路由器的IP地址填入IP数据报,而是送交下层

的网络接口软件。

■网络接口软件使用ARP负责将下一跳路由器的

IP地址转换成硬件地址,并将此硬件地址放在

链路层的MAC帧的首部,然后根据这个硬件

地址找到下一跳路由器。

使用子网掩码的分组转发过程

■在不划分子网的两级IP地址下,从IP地址

得出网络地址是个很简单的事。

■但在划分子网的情况下,从IP地址却不能惟

一地得出网络地址来,这是因为网络地址取

决于那个网络所采用的子网掩码,但数据报

的首部并没有提供子网掩码的信息。

■因此分组转发的算法也必须做相应的改动。

划分子网后分组的转发举例

1

代^的路由表(未给出默认路由器)

3目的网络地址子网掩码下一跳

子网1:

接口

网络地址280

子网掩万马282828接口1

R

02

Ri

子网2:网络地址28

301子网掩石马28

029

H38

R2

1

子网3:网络地址

2子网掩码255,255.255.0

主机H1要发送分组给H2

_|慢发送的分组的目的IP地址:38

路由表(未给出默认路由器)

3目的网络地址子网掩码下一跳

子网1:/

Hi网络地址128.%.33.028接口0

,石马255.英5.255.1282828接口1

R

12笈.33.102

Ri

子网2:网络地址28

30子网掩石马28

029

38

因此H1首先检查主机38是否连接在本网络上

如果是,则直接交付;

否则,就送交路由器R1,并逐项查找路由表。

本子网的子网掩码28

与分组的IP地址128.3O33.138逐比特相“与"(AND操

作)

28AND38的计算

255就是二进制的全1,因此255ANDxyz=xyz,

这里只需计算最后叱[28AND,38即可。

128Tm)000000

138->>001010

逐比特AND操作后:1»000000->128

255.255.255128

逐比特AND操作128.30.33138

128.30.33128wH1的网络地址

029

H2O38

1

।子网3:网络地址

JH3^12子网掩码255,255.255.0

路由器Ri收到分组后就用路由表中第1个项目的

子网掩码和38逐比特AND操作

R1收到的分与目的目的IP地址:38

3\I目的网络地址子网掩码下一跳

Hn子网

1==!网络地址12i\.30.33.0>28接口0

丁子网掩码255.本5.255.128128.30*12828接口1

128.30.3^L

R

128.30.33.2

子网2:网;128

301子口不一致5.128

029

H2£J1

28AND38=28

不匹配!

(因为28与路由表中的不一致)

路由器R1再用路由表中第2个项目的

子网掩码和38逐比特AND操作

R1收到的分与目的目的IP地址:38

3\目的网络地址子网掩码下一跳

Hn子网

1==!网络地址12i\.30.33.028

丁子网掩码255.本5.255.1281128,30,3342828

128.30.3

128.30.33.

子网2:网络地28

301子网掩彳,128

029

”口38

28AND38=28

匹配!

这表明子网2就是收到的分组所要寻找的目的网络

车划分子网的情况下路由器转发分组的算法

(1)从收到的分组的首部提取目的IP地址

⑵先用各网络的子网掩码和。逐比特相“与”,看是

否和

相应的网络地址匹配。若匹配,则将分组直接交付。

否则就是间接交付,执行(3)。

⑶若路由表中有目的地址为。的特定主机路由,则将

分组传送给指明的下一跳路由器;否则,执行(4)。

⑷对路由表中的每一行的子网掩码和。逐比特相

若其基果与该行的目的网络地址匹配,则将分组传送

给该行指明的下一跳路由器;否则,执行(5)。

⑸若路由表中有一个默认路由,则将分组传送给路由表

中所指明的默认路由器r否则n丸行(8)o

因特网控制报文协议ICMP

■为了提高IP数据报交付成功的机会,在网际

层使用了因特网控制报文协议ICMP(Internet

ControlMessageProtocol)o

-ICMP允许主机或路由器报告差错情况和提供

有关异常情况的报告。

■ICMP不是高层协议,而是IP层的协议。

■ICMP报文作为IP层数据报的数据,加上数据

报的首部,组成IP数据报发送出去。

ICMP报文的格式

前4个字节081831

都是一样的

IP数据报

ICMP报文

-ICMP报文的种类有两种,即ICMP差错报告报文

和ICMP询问报文。

-ICMP报文的前4个字节是统一的格式,共有三个

字段:即类型、代码和检验和。接着的4个字节的

内容与ICMP的类型有关。

ICMP差错报告报文共有5种

■终点不可达

■源站抑制

■时间超过

■参数问题

■改变路由(重定向)

不应发送ICMP差错报告报文

的几种情况

■对ICMP差错报告报文不再发送ICMP差错

报告报文。

■对第一个分片的数据报片的所有后续数据报

片都不发送ICMP差错报告报文。

■对具有多播地址的数据报都不发送ICMP差

错报告报文。

■对具有特殊地址(如或)

的数据报不发送ICMP差错报告报文。

ICMP询问报文有四种

■回送请求和回答报文

■时间戳请求和回答报文

■掩码地址请求和回答报文

■路由器询问和通告报文

PING(PacketInterNetGroper)

■PING用来测试两个主机之间的连通性。

■PING使用了ICMP回送请求与回送回答报

文。

■PING是应用层直接使用网络层ICMP的例

子,它没有通过运输层的TCP或UDP。

因特网的路由选择协议

1有关路由选择协议的几个基本概念

1.理想的路由算法

■算法必须是正确的和完整的。

■算法在计算上应简单。

■算法应能适应通信量和网络拓扑的变化,这

就是说,要有自适应性。

■算法应具有稳定性。

■算法应是公平的。

■算法应是最佳的。

代价

■在研究路由选择时,需要给每一条链路指明

一定的代价。

■这里“代价”并不是指“钱”,而是由一个

或几个因素综合决定的一种度量(metric),

如链路长度、数据率、链路容量、是否要保

密、传播时延等,甚至还可以是一天中某一

个小时内的通信量、结点的缓存被占用的程

度、链路差错率等。

最佳路由

■不存在一种绝对的最佳路由算法。

■所谓“最佳”只能是相对于某一种特定要求

下得出的较为合理的选择而已。

■实际的路由选择算法,应尽可能接近于理想

的算法。

■路由选择是个非常复杂的问题

-它是网络中的所有结点共同协调工作的结果。

-路由选择的环境往往是不断变化的,而这种变化

有时无法事先知道。

从路由算法的自适应性考虑

■静态路由选择策略——即非自适应路由选择,

其特点是简单和开销较小,但不能及时适应

网络状态的变化。

■动态路由选择策略——即自适应路由选择,

其特点是能较好地适应网络状态的变化,但

实现起来较为复杂,开销也比较大。

2.分层次的路由选择协议

■因特网采用分层次的路由选择协议。

-因特网的规模非常大。如果让所有的路由器

知道所有的网络应怎样到达,则这种路由表

将非常大,处理起来也太花时间。而所有这

些路由器之间交换路由信息所需的带宽就会

使因特网的通信链路饱和。

■许多单位不愿意外界了解自己单位网络的布

局细节和本部门所采用的路由选择协议(这

属于本部门内部的事情),但同时还希望连

接到因特网上。

自治系统(autonomoussystem)

■因特网将整个互联网划分为许多较小的自治

系统ASo

■一个自治系统是一个互联网,其最重要的特

点就是自治系统有权自主地决定在本系统内

应采用何种路由选择协议。

■一个自治系统内的所有网络都属于一个行政

单位(例如,一个公司,一所大学,政府的

一个部门,等等)来管辖。

■一个自治系统的所有路由器在本自治系统内

都必须是连通的。

因特网有两大类路由选择协议

■内部网关协议IGP(InteriorGatewayProtocol)

即在一个自治系统内部使用的路由选择协议。目

前这类路由选择协议使用得最多,如RIP和

OSPF协议。

■外部网关协议EGP(ExternalGatewayProtocol)

若源站和目的站处在不同的自治系统中,当数据

报传到一个自治系统的边界时,就需要使用一种

协议将路由选择信息传递到另一个自治系统中。

这样的协议就是外部网关协议EGPO在外部网

关协议中目前使用最多的是BGP-4O

自治系统和

内部网关协议、外部网关协议

自治系统CR

IGP3自治系统B

EGP

IGP

IGP

EGPIGP

EGP

IGPR

H1自治系统A

IGP

内部网关协议外部网关协议内部网关协议

-IGP--EGPIGP-

(例如,RIP)(例如,BGP-4)(例如,OSPF)

这里要指出两点

■因特网的早期RFC文档中未使用“路由器”

而是使用“网关”这一名词。但是在新的

RFC文档中又使用了“路由器”这一名词。

应当把这两个属于当作同义词。

■IGP和EGP是协议类别的名称。但RFC

在使用EGP这个名词时出现了一点混乱,

因为最早的一个外部网关协议的协议名字正

好也是EGP。因此在遇到名词EGP时,应

弄清它是指旧的协议EGP还是指外部网关

协议EGP这个类别。

因特网的路由选择协议

■内部网关协议IGP:具体的协议有多

种,如RIP和OSPF等。

■外部网关协议EGP:目前使用的协议

就是BGPo

内部网关协议RIP

I(RoutingInformationProtocol)

1.工作原理

■路由信息协议RIP是内部网关协议IGP

中最先得到广泛使用的协议。

■RIP是一种分布式的基于距离向量的路

由选择协议。

■RIP协议要求网络中的每一个路由器都

要维护从它自己到其他每一个目的网络

的距离记录。

“距离”的定义

■从一路由器到直接连接的网络的距离定

义为1。

■从一个路由器到非直接连接的网络的距

离定义为所经过的路由器数加1。

-RIP协议中的“距离”也称为“跳

数”(hopcount),因为每经过一个路由

器,跳数就加1。

“距离”的定义

■RIP认为一个好的路由就是它通过的路由器的

数目少,即“距离短”。

■RIP允许一条路径最多只能包含15个路由器。

■“距离”的最大值为16时即相当于不可达。

可见RIP只适用于小型互联网。

■RIP不能在两个网络之间同时使用多条路由。

RIP选择一个具有最少路由器的路由(即最短

路由),哪怕还存在另一条高速(低时延)但路

由器较多的路由。

IRIP协议的三个要点

■仅和相邻路由器交换信息。

■交换的信息是当前本路由器所知道的全

部信息,即自己的路由表。

■按圉定的时间间隔交换路由信息,例如,

每隔30秒。

路由表的建立

■路由器在刚刚开始工作时,只知道到直接连

接的网络的距离(此距离定义为1)。

■以后,每一个路由器也只和数目非常有限的

相邻路由器交换并更新路由信息。

■经过若干次更新后,所有的路由器最终都会

知道到达本自治系统中任何一个网络的最短

距离和下一跳路由器的地址。

■RIP协议的收敛(convergence)过程较快,即

在自治系统中所有的结点都得到正确的路由

选择信息的过程。

2.距离向量算法

收到相邻路由器(其地址为X)的一个RIP报文:

(1)先修改此RIP报文中的所有项目:将“下一跳”字段中的地

址都改为X,并将所有的“距离”字段的值加1。

(2)对修改后的RIP报文中的每一个项目,重复以下步骤:

若项目中的目的网络不在路由表中,则将该项目加到路由表中。

否则

若下一跳字段给出的路由器地址是同样的,则将收到的项目

替换原路由表中的项目。

否则

若收到项目中的距离小于路由表中的距离,则进行更新,

否则,什么也不做。

(3)若3分钟还没有收到相邻路由器的更新路由表,则将此相邻路

由器记为不可达的路由器,即将距离置为16(距离为16表

示不可达)。

(4)返回。

路由器之间交换信息

■RIP协议让互联网中的所有路由器都和

自己的相邻路由器不断交换路由信息,

并不断更新其路由表,使得从每一个路

由器到每一个目的网络的路由都是最短

的(即跳数最少)。

■虽然所有的路由器最终都拥有了整个自

治系统的全局路由信息,但由于每一个

路由器的位置不同,它们的路由表当然

也应当是不同的。

一开始,各路由表只有到相邻路由器的信息

路由器B收到相邻路由器A和C的路由表

新后

,,

A说:“我到网1的距离是1。

12A

22A因此B现在也可以到网1,

31-距离是2,经过A。”

41—

62C

路由器B收到相邻路由器A和C的路由表

更新后

A说:“我到网2的距离是1。”

12A

22A因此B现在也可以到网2,

TT^距离是2,经过A。”

41—

62C

路由器B收到相邻路由器A和C的路由表

更新后

A说:“我到网3的距离是1。”

12A

22A但B没有必要绕道经过路由器A

31—再到达网3,因此这一项目不变。

62C

路由器B收到相邻路由器A和C的路由表

“我到网4的距离是1。”

但B没有必要绕道经过路由器C

再到达网4,因此这一项目不变。

路由器B收到相邻路由器A和C的路由表

“我至IJ网6的总巨离是1。”

因此B现在也可以到网6,

距离是2,经过C。”

最终所有的路由器的路由表都更新了

1111-12E

2-22

1-AE22D

31-32Ac

A33

2网I43

4B-网42C

52E51-12A51

62F2-

63B1-61-

D32A

网2

43A

51网

12A-C

B62F13B

网32

2A23B

31

-网432B

41

3-41-

5c52F

62c

61-

RIP协议的位置

■RIP协议使用运输层的用户数据报UDP

进行传送(使用UDP的端口520)o

■因此RIP协议的位置应当在应用层。但

转发IP数据报的过程是在网络层完成

的。

RIP协议的优缺点

■RIP存在的一个问题是当网络出现故障时,要

经过比较长的时间才能将此信息传送到所有

的路由器。

■RIP协议最大的优点就是实现简单,开销较

小。

■RIP限制了网络的规模,它能使用的最大距离

为15(16表示不可达)。

■路由器之间交换的路由信息是路由器中的完

整路由表,因而随着网络规模的扩大,开销

也就增加。

2R.

L1

情Li

网3

况网1

“-”表示“直接交付”

y

“1”表示“从本路由

器到网到

表示“距离是1”

y

R说:“我到网1的距离是1,是直接交付。”

1

常11-

情R

网2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论