第3章Internet的网络层协议 (1)_第1页
第3章Internet的网络层协议 (1)_第2页
第3章Internet的网络层协议 (1)_第3页
第3章Internet的网络层协议 (1)_第4页
第3章Internet的网络层协议 (1)_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

1、第三章 Internet的网络层协议n3.1 IP协议n3.2 ICMP协议n3.3 IP路由的基本原理n3.4 IPman3.1 IP协议n3.1.1 IP 协议的功能n3.1.2 IP包3.1.1 IP协议的功能协议的功能n提供一种无连接的数据报服务n尽全力型n不保证可靠(可能会丢失、重复)n不保证按序3.1.2 IP包包 版本 首部长度 服务类型 总长度 标 识 标志 片偏移量 生存时间 协议 首部校验和 源IP地址 目的IP地址 IP选项 填充 0481619313.1.2 IP包包n版本版本(VERS):4位,包含了创建该IP包的IP协议的的版本信息,用来证实发送方、接收方和它们之间

2、的所有路器都约定使用该IP包格式。所有IP软件在处理一个包之前,都要检查版本字段,以保证与软件预期的格式相同,如果标准变了,则拒绝协议版本号不同的包,以免按照过时的格式错误地解释包的内容。当前的版本是4,即我们所说的IPV4。3.1.2 IP包包n首部长度(首部长度(HLEN):4位,以32位为单位的首部的长度。 n总长度总长度(TOTAL LENGTH):16位,以8位为单位的IP包的总长度,包括头部数据,因些最长为65535字节。3.1.2 IP包包n服务类型服务类型(SERVICE TYPE):8位,但只有7位有定义,也称为TOS(Type Of Service), 它规定了包的处理方式

3、。n 优先级(Precedence)指明包的优先级,允许发送方表示每个包的重要程度,优先级的值从0(普通)到7(网络控制)。但一些路由器会忽略这些位,但它的概念非常重要,它提供了一种机制,允许控制登信息比一般的数据具有更高的优先级。 优先级DTRCX0 1 2 3 4 5 6 73.1.2 IP包包nDTRC和位代表本包所希望的传输类型(但IP网不一定能保证)n D: Low Delayn T: High Throughputn R: High Reliabilityn C: Low Cost(后加的)n X: 未用,必须为0 DTRC 4位,只能有一位为1;四位都为0, 为正常服务。优先级D

4、TRCX0 1 2 3 4 5 6 7Telnet/Rlogin10000 x10ApplicationDFTFRFCFHex valueFTP control10000 x10FTP data01000 x08TFTP10000 x10SMTP 10000 x10Command phaseSMTP01000 x08Date phaseDNS udp query10000 x10DNS tcp query00000 x00DNS zone transfer01000 x08ICMP00000 x00SNMP00100 x04BOOTP00000 x00NNTP00010 x023.1.2 IP

5、包包n 标识、标志、偏移量:(标识、标志、偏移量:(ID,Flag, Offset)nIP协议将各种不同的物理网络连接在了一起,和物理网络的数据链路层协议对帧的最大长度的限制是不一样的,例如,以太网是1500字节,FDDI是4470字节,该限制称为网络的最大传输单元MTU(Maximum Transfer Unit)。MTU可以很小,也可以很大,完全取决于物理网络。当IP包很短,而物理网络的MTU很大时,是不经济的,IP包较大,而网络的MTU较小时,是无法封装在一个帧中的。IP协议采用的办法时,当IP包大,MTU小将IP包划分成片(Fragment)。在发送时分片,在到达目的站时再组合。 3.

6、1.2 IP包包nID:来自于同一IP包的分片,其ID一样(IP软件使用的方法是在主存中保存一个全局计数器,每产生一个新的包,就将计数器加1);nFlag: 标志由3位组成,其中2位有定义,用于分片控制,通常,使用TCPIP的应用软件并不关心分片,因为,分片与重组都在操作系统的低层自动完成,对于端用户是不可见的,但是,为了测试互连网软件或调试操作问题,测试分片的包的大小是非常重要的,第1位为D位(Do not fragment), 当该位为1时,不分片,第2位为M(More fragment)指示是否还有进一步的分片;3.1.2 IP包包n Offset: 单个分片到达目的主机后才被重组,但各

7、个分片到达的顺序不能保证与发送的顺序一致,Offset就是用于指示其分片顺序的,其单位是8字节(分片的长度必须是的倍数)。 3.1.2 IP包包n例如,一个包,其数据长度为2200字节,通过一个MTU为820字节的网络时,路由器分片情况: R1R2ABLAN1LAN2MTU=820R1R2ABLAN1LAN2MTU=820800字节600字节800字节包头片头1800字节片头2800字节片头3600字节片1,偏移量为0,MF1 片2,偏移量为100,MF1 片3,偏移量为200,MF0 800字节600字节800字节包头片头1800字节片头2800字节片头3600字节片1,偏移量为0,MF1

8、片2,偏移量为100,MF1 片3,偏移量为200,MF0 如果再通过一个MTU为420的网络,路由器(R2)可再进一步分片, 情况如何?R1R2ABLAN1LAN2MTU=820MTU=420800字节600字节800字节包头片头1800字节片头2800字节片头3600字节片1,偏移量为0,MF1 片2,偏移量为100,MF1 片3,偏移量为200,MF0 R1R2ABLAN1LAN2MTU=820MTU=420片头1400字节片1,偏移量为0,MF1 片头2400字节片2,偏移量为50,MF1 800字节600字节800字节包头片头1800字节片头2800字节片头3600字节片1,偏移量为

9、0,MF1 片2,偏移量为100,MF1 片3,偏移量为200,MF0 R1R2ABLAN1LAN2MTU=820MTU=420片头1400字节片1,偏移量为0,MF1 片头2400字节片2,偏移量为50,MF1 片头3400字节片3,偏移量为100,MF1 片头4400字节片4,偏移量为150,MF1 800字节600字节800字节包头片头1800字节片头2800字节片头3600字节片1,偏移量为0,MF1 片2,偏移量为100,MF1 片3,偏移量为200,MF0 R1R2ABLAN1LAN2MTU=820MTU=420片头1400字节片1,偏移量为0,MF1 片头2400字节片2,偏移量

10、为50,MF1 片头3400字节片3,偏移量为100,MF1 片头4400字节片4,偏移量为150,MF1 片头5400字节片5,偏移量为200,MF1 800字节600字节800字节包头片头1800字节片头2800字节片头3600字节片1,偏移量为0,MF1 片2,偏移量为100,MF1 片3,偏移量为200,MF0 R1R2ABLAN1LAN2MTU=820MTU=420片头1400字节片1,偏移量为0,MF1 片头2400字节片2,偏移量为50,MF1 片头3400字节片3,偏移量为100,MF1 片头4400字节片4,偏移量为150,MF1 片头5400字节片5,偏移量为200,MF1

11、 片头6200字节片6,偏移量为250,MF03.1.2 IP包包nTTL:生存时间,允许该包在互连网中存在的时间,单位为秒。(The numbers of routers which a packet can pass.)n协议协议:Protocol,上层协议的类型, 如UDP(17), TCP(6), ICMP(1), GGP(3), EGP(8), IGP(9), OSPF(89), ISO-TP4(29)。 3.1.2 IP包包n首部校验和首部校验和:Header Checksum, 用于保证首部数据的完整性。首先将该字段清首先将该字段清0,按按16位为单位取反,然后求和,再取反位为单

12、位取反,然后求和,再取反.在收到IP包后,将首部的16位字再加一遍,如果未出错,则结果必定为全1。n源源IP地址:地址:n目的目的IP地址地址: 3.1.2 IP包包nIP选项:选项:IP Options字段是可选的,包含的选项主要用于网络测试或调试。但是,选项是IP协议的组成部分,所以,所有的标准实现都必须有它。n IP选项至少有一个8位长的选项码,有的还包含8位的选长度和一系列选项数据。选项码的格式如图所示。 选项格式复制 选项类 选项号01237复制:0,仅仅复制第一个分片中,1每个分片均复制。选项类:0,包或网络控制 1, 保留 2, 调试和度量 3, 保留选项类0, 0: 选项表结束

13、0,1:无操作(PADDING)0,3:不严格源路径0,7:记录源路径,用于跟踪路由0,8:严格源路径0,11:MTU探测,用于发现路径MTU0,12:MTU应答,用于发现路径MTU2,4:Internet时间戳, 用于记录路径上时间(午夜时间时为0,以ms为单位)2,18:路由追踪。由Trace route程序来查找沿路径的路由器3.2 ICMP协议n3.2.1 概述n3.2.2 ICMP的封装n3.2.3 ICMP报文格式n3.2.4 常见的ICMP报文3.2.1 概述nICMP: Internet Control Message ProtocolnIP协议通过安排路由器转发包提供无连接的

14、数据报服务;n路由器有时无法选择路由、无法投递包或检测到异常条件(如拥挤),路由器需要通知原站,采取措施避免或纠正问题,需要传达控制或出错信息3.2.2 ICMP的封装ICMP HeaderICMP DataIP HeaderIP DataFrame HeaderFrame Data3.2.3 ICMP报文格式类类 型型代 码检查和长度可变部分(取决于类型)0816313.2.3 ICMP报文格式类型类型ICMP报文意义报文意义类型类型ICMP报文意义报文意义0345891011 回送应答目的地不可达源站抑制(Source Quench)重定向(改变路由)回送请求路由器通告(advertise

15、ment)路由器恳求(solicitation)数据报超时12131415161718数据报参数错时间戳请求时间戳应答信息请求(已过时)信息应答(已过时)地址掩码(Address Mask)请求地址掩码(Address Mask)应答3.2.4 常见的ICMP报文类型5(改变路由)类型8/0(Echo request and Echo answer)类型4(源站抑制)类型13/14(时间戳请求与回答)类型17/18(获得地址掩码)1.类型5(改变路由)这是用得最多的一种报文LAN2LAN3LAN1R1R2BCA 假定主机A的默认网关为R1。当A向C发送IP包时,结果如何?1.类型5(改变路由)

16、LAN2LAN3LAN1R1R2BCA 假定主机A的默认网关为R1。当A向C发送IP包时,结果如何?A将包发到了R1,R1再发到R2。 R1向A发出一个改变路由的ICMP报文,在该报文中指出此包应经过的下一路由器R2的IP地址。A收到该报文后就会更改其路由表。1.类型5(改变路由)LAN2LAN3LAN1R1R2BCA类类 型型(5)代码(02)检查和路由器的IP地址081631原IP包的头部原IP包数据的前八字节2.类型8/0(回送请求与应答) Internet网上的ping(Packet Internet Groper)命令, 就是利用该报文实现的。可选的数据类类 型型(8/0)代码(0)

17、检查和081631标示符序号可选数据字段是一个可变长度字段,它包含要返回给发送者的数据。回送应答通常返回与所收到的请求完全相同的数据。标识符(IDENTIFIER)字段和序号(SEQUENCE NUMBER)字段由发送者用来匹配应答和请求。类型(TYPE)字段的值指明报文是一个请求(8)还是一个应答(0)。 2.类型8/0(回送请求与应答)应答正常接收表明系统的主要部分是正常的:源主机上的IP软件要为该包选路;源和目的之间的Router正在正常运行;1. 目的主机正在运行, 且IP和ICMP软件都在正常运行。 Ping命令的实现有简,有复杂。简单的仅仅发送一个请求,然后等待回答;复杂的要发送一

18、系列的请求并捕获响应,并提供丢失报文的统计信息。2.类型8/0( Ping的参数的参数)nPing tnPing n countnPing w timenPing r count3.类型4(源站抑制报文) 为了进行拥挤控制,当某个Router收到来自某主机的包,而自己的缓冲区已满时,就将源站抑制报文发回,并将收到的报文丢弃;源站则减少向某站发送的包的数量,直到不再收到源站抑制报文。类类 型型(4)代码(0)检查和未用(必须为0)081631原IP包头原IP包数据的前八字节4.类型13/14(时间戳请求和回答) 为了使Internet上的主机的时钟能够同步,TCP/IP协议中提供了几种办法,其中

19、最简单的技术之一就是使用ICMP报文得到其他主机上的时间。发起的时间戳类类 型型(13/14)代码(0)检查和081631标示符序号接收的时间戳发送的时间戳 时间为Universal Time(时间时,格林威治标准时间). 以毫秒为单位,从午夜开始所经过的毫秒数。4.类型13/14(时间戳请求和回答) 发起时间:请求报文发出的时间; 接收时间:请求报文被收到的时间; 发送时间:回答报文发送时的时间。 RTT(round trip time) =回答报文收到的时间-请求报文发送的时间originatereceivedtransmitrequestreplyRTT发送端调整时间=(接收时间-发起时

20、间)-RTT/25.类型17/18(获得地址掩码) 为了了解本地网络所使用的子网掩码(如无盘站启动时),主机可以向Router发出一个掩码请求报文,然后等待一个回答报文。请求主机若知道Router的IP地址,可以直接发送,不知道时,可以用广播地址。32位地址掩码类类 型型(17/18)代码(0)检查和081631标示符序号6.类型3(终点不可达) 当路由器无法给包找到路由或主机不能交付包时,就丢弃该包,然后这个包的源发站发回终点不可达的报文。类类 型型(3)代码(0-15)检查和未用(必须为0)081631原IP包头原IP包数据的前八字节6.类型3(终点不可达)代码0:网络不可达,可能是硬件故

21、障。代码1:主机不可达,可能是硬件故障。代码2:协议不可达,IP包中指明的上层协议未运行。代码3:端口不可达,IP包要交付的应用程序未运行。代码4:需要进行分片,该包的DF已设为1,但不分片不能继续传送。代码5:源路由不能完成。源路由中指定的一个或多个路由器无法通过。代码6:目的网络未知。路由器中没有关于目的网络的信息。代码7:目的主机未知。路由器不知道网络主机的存在。代码8:源主机是孤立的。代码9:从管理上禁止与目的网络通信。代码10:从管理上禁止与目的主机通信。代码11:对指明的服务类型,网络不可达。代码12:对指明的服务类型,主机不可达。代码13:主机不可达,因为管理机构在这个主机上放置

22、了过滤器。代码14:主机不可达,要求的优先级对该主机是不允许的。代码15:主机不可达,它的优先级被删除。3.3 IP路由的基本原理IP output: calculate next hop(if necessary) our packet (one of our IP address or broadcast address)process IP options IP input queue network interfaces routing tableICMProuting daemonroute commandnetstat commandUDPTCPRouting table upda

23、tes from adjacent routers ICMP redirectsforward datagram if forward enabledsource routingyesnoIP layer3.3 IP路由的基本原理-直接交付与间接交付到网络的其他部分直接交付直接交付网络网络网络网络间接交付间接交付间接交付间接交付直接交付直接交付3.3 IP路由的基本原理 -路由选择的方法(下一跳路由)网络网络网络主机主机A主机主机BR1R2终点路由主机BR1,R2,主机B主机A的路由表终点路由主机BR2,主机BR1的路由表终点路由主机B主机BR2的路由表基于路由的路由表3.3 IP路由的基本原

24、理 -路由选择的方法(下一跳路由)网络网络网络主机主机A主机主机BR1R2终点路由主机BR1主机A的路由表终点路由主机BR2R1的路由表终点路由主机B主机BR2的路由表基于下一跳的路由表3.3 IP路由的基本原理 -路由选择的方法(特定网络路由)N1N2SDR1终点下一跳N2R1主机S的路由表基于特定网络的路由选择CBA3.3 IP路由的基本原理 -路由选择的方法(特定主机路由)N2N3主机主机AR3终点下一跳主机BN2N3R3R1R3主机A的路由表主机主机BN1R1R23.3 IP路由的基本原理 -路由选择的方法(默认路由)网络的其余部分N2主机主机AR1终点下一跳N2默认R1R2主机A的路

25、由表N1R23.3 IP路由的基本原理 -路由表掩码掩码目的地址目的地址下一跳地址下一跳地址标志标志引用计数引用计数使用使用接口接口3UG420M2掩码:掩码:与包的目的地址相与找到终点的网络地址或子网地址目的地址:目的地址:目的主机地址或目的网络地址下一跳地址:下一跳地址:下一跳路由器的地址标志:标志:U 路由器正在工作 G 终点是另一个网络 H 地址字段是特定主机地址 D ICMP的改变路由报文在路由表中增加了到这个终点的路由信息 M ICMP的改变路由报文在路由表中修改了到这个终点的路由信息引用计数:引用计数:任何时候使用本路由的用户

26、数使用:使用:经过本路由器发送到相应终点的包的数量接口:接口:使用的接口的名字3.3 IP路由的基本原理 -路由处理过程掩码掩码目的地址目的地址下一跳地址下一跳地址标志标志引用计数引用计数使用使用接口接口3UG420M2对路由表中的每一项 1. 把掩码应用到所的目的地址 如果标志G=1,使用路由表中的下一跳地址下一跳地址 作为下一跳地址 否则:使用包的目的地址(直接交付) 2. 将包连同下一跳地址发送给下一处理过程(分片处理) 3. 停止2. 如果找不到匹配,则发送ICMP报文3. 停止3.3 IP路由的基本原理 -路由处理过程(举例)掩码

27、掩码目的地址目的地址下一跳地址下一跳地址标志标志引用计数引用计数使用使用接口接口24 24 5560926-4248UUUUGHUGUGUG00000000000000m0m2m1m0m0m0m0网络的其余部分R1

28、R1的路由表的路由表m1R2 默认路由器默认路由器m29765m008R3192.16.7. 5111.15.17. 32192.16.7. 52194.17.21. 68R5R4R1111.20.18. 14194.17.21. 14194.17.21. 1660923.3 IP路由的基本原理 -路由处理过程(举例)掩码掩码目的地址目的地址下一跳地址下一跳地址标志标志引用计数引用计数使用使用

29、接口接口24 24 5560926-4248UUUUGHUGUGUG00000000000000m0m2m1m0m0m0m0网络的其余部分R1R1的路由表的路由表m1R2 默认路由器默认路由器m2193.14.5.

30、19765m008R3192.16.7. 5111.15.17. 32192.16.7. 52194.17.21. 68R5R4R1111.20.18. 14194.17.21. 14194.17.21. 166092R1收到了收到了500个个包,目的地址为包,目的地址为4,路由处理过程?路由处理过程?3.3 IP路由的基本原理 -路由处理过程(举例)掩码掩码目的地址目的地址下一跳地址下一跳地

31、址标志标志引用计数引用计数使用使用接口接口24 24 5560926-4248UUUUGHUGUGUG00000000000000m0m2m1m0m0m0m0网络的其余部分R1R1的路由表的路由表m1R2 默认路由

32、器默认路由器m29765m008R3192.16.7. 5111.15.17. 32192.16.7. 52194.17.21. 68R5R4R1111.20.18. 14194.17.21. 14194.17.21. 166092R1收到了收到了500个个包,目的地址为包,目的地址为4,路由处理过程?路由处理过程?直接交付:4192.

33、0.0.0 不匹配AND3.3 IP路由的基本原理 -路由处理过程(举例)掩码掩码目的地址目的地址下一跳地址下一跳地址标志标志引用计数引用计数使用使用接口接口24 24 5560926-4248UUUUGHUGUG

34、UG00000000000000m0m2m1m0m0m0m0网络的其余部分R1R1的路由表的路由表m1R2 默认路由器默认路由器m29765m008R3192.16.7. 5111.15.17. 32192.16.7. 52194.17.21. 68R5R4R1111.20.18. 14194.17.21. 14194.17.21. 166092R1收到了收到了500个个包,目的地址为包,目的

35、地址为4,路由处理过程?路由处理过程?直接交付:424 不匹配AND3.3 IP路由的基本原理 -路由处理过程(举例)掩码掩码目的地址目的地址下一跳地址下一跳地址标志标志引用计数引用计数使用使用接口接口24 24 55609260

36、.0.0.0-4248UUUUGHUGUGUG00000000000000m0m2m1m0m0m0m0网络的其余部分R1R1的路由表的路由表m1R2 默认路由器默认路由器m29765m008R3192.16.7. 5111.15.17. 32192.16.7. 52194.17.21. 68R5R4R1111.20.18. 14194.17.21. 14194.17

37、.21. 166092R1收到了收到了500个个包,目的地址为包,目的地址为4,路由处理过程?路由处理过程?直接交付:424 不匹配AND3.3 IP路由的基本原理 -路由处理过程(举例)掩码掩码目的地址目的地址下一跳地址下一跳地址标志标志引用计数引用计数使用使用接口接口24 24 5511

38、60926-4248UUUUGHUGUGUG00000000000000m0m2m1m0m0m0m0网络的其余部分R1R1的路由表的路由表m1R2 默认路由器默认路由器m29765m008R3192.16.7. 5111.15.17. 32194.17.21

39、.0192.16.7. 52194.17.21. 68R5R4R1111.20.18. 14194.17.21. 14194.17.21. 166092R1收到了收到了500个个包,目的地址为包,目的地址为4,路由处理过程?路由处理过程?特定主机:4554 不匹配AND3.3 IP路由的基本原理 -路由处理过程(举例)掩码掩码目的地址目的地址下一跳地址下一跳地址标志标志引用计数引用计数使用使用接口接口24

40、24 5560926-4248UUUUGHUGUGUG00000000000000m0m2m1m0m0m0m0网络的其余部分R1R1的路由表的路由表m1R2 默认路由器默认路由器m29765m0111

41、.25.19.208R3192.16.7. 5111.15.17. 32192.16.7. 52194.17.21. 68R5R4R1111.20.18. 14194.17.21. 14194.17.21. 166092R1收到了收到了500个个包,目的地址为包,目的地址为4,路由处理过程?路由处理过程?特定网络:4 匹配AND3.3 IP路由的基本原理 -路由处理过程(举例)掩码掩码目的地址目的地址下一跳地址下一跳地址标志标志引用计数引用计

温馨提示

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

评论

0/150

提交评论