《TCPIP网络原理与应用》.ppt

上传人:牧羊曲112 文档编号:6072140 上传时间:2023-09-20 格式:PPT 页数:52 大小:401KB
返回 下载 相关 举报
《TCPIP网络原理与应用》.ppt_第1页
第1页 / 共52页
《TCPIP网络原理与应用》.ppt_第2页
第2页 / 共52页
《TCPIP网络原理与应用》.ppt_第3页
第3页 / 共52页
《TCPIP网络原理与应用》.ppt_第4页
第4页 / 共52页
《TCPIP网络原理与应用》.ppt_第5页
第5页 / 共52页
点击查看更多>>
资源描述

《《TCPIP网络原理与应用》.ppt》由会员分享,可在线阅读,更多相关《《TCPIP网络原理与应用》.ppt(52页珍藏版)》请在三一办公上搜索。

1、TCP/IP网络原理与应用,华中科技大学电信系2011.09,TCP/IP网络原理与应用 Lecture 3,第三章、IP协议,3.1 IP数据报的交付3.2 IP数据报的路由3.3 路由器的部署与应用3.4 IP数据报的差错控制,TCP/IP网络原理与应用 Lecture 3,IP数据报的交付(Delivery),网络层交付一个数据报可以使用面向连接和或者无连接的网络服务面向连接一系列的分组从同一个源站一个接一个的发送到同一个目的站,前后分组在逻辑上是连接在一起的无连接网络协议独立的对待每个分组,分组之间没有关系,分组到目的站可以走不同的路径IP协议是无连接的协议,TCP/IP网络原理与应用

2、 Lecture 3,IP数据报的交付(Delivery),直接交付分组的目的站与发送站在同一个网络上间接交付分组的目的站与发送站不在同一个网络上,经由路由器到达目的站直接交付与间接交付,TCP/IP网络原理与应用 Lecture 3,直接交付和间接交付,间接交付,间接交付,间接交付,A,B,C,直接交付,直接交付,直接交付不需要使用路由器但间接交付就必须使用路由器,TCP/IP网络原理与应用 Lecture 3,第三章、IP协议,3.1 IP数据报的交付3.2 IP数据报的路由3.3 路由器的部署与应用3.4 IP数据报的差错控制,TCP/IP网络原理与应用 Lecture 3,路由器概述,

3、路由器(Router)在网络层,用于实现网络层路由功能的网络互连设备被称为路由器路由是网络层最重要的功能。,TCP/IP网络原理与应用 Lecture 3,典型的路由器的结构,路由选择,路由选择处理机,路由选择协议,路由表,3,输入端口,3,交换结构,输入端口,输出端口,分组转发,转发表,分组处理,输出端口,1,1,1,3,3,1,2,2,2,2,3网络层2数据链路层1物理层,TCP/IP网络原理与应用 Lecture 3,“转发”和“路由”,转发(forwarding)根据转发表将用户的 IP 数据报从合适的端口转发出去。转发表是从路由表得出的通常硬件实现路由(routing)按照分布式算法

4、,根据从各相邻路由器得到的关于网络拓扑的变化情况,动态地改变所选择的路由路由表是根据路由选择算法得出的通常软件实现在讨论路由选择的原理时,往往不去区分转发表和路由表的区别,TCP/IP网络原理与应用 Lecture 3,路由器的存储转发,路由器转发分组的步骤先按所要找的 IP 地址中的网络号 net-id 把目的网络找到。当分组到达目的网络后,再利用主机号host-id 将数据报直接交付给目的主机。按照整数字节划分 net-id 字段和 host-id 字段,就可以使路由器在收到一个分组时能够更快地将地址中的网络号提取出来。,TCP/IP网络原理与应用 Lecture 3,路由器的存储转发:队

5、列管理,若路由器处理分组的速率赶不上分组进入队列的速率,则队列的存储空间最终必定减少到零,这就使后面再进入队列的分组由于没有存储空间而只能被丢弃。路由器中的输入或输出队列产生溢出是造成分组丢失的重要原因。,TCP/IP网络原理与应用 Lecture 3,路由器的存储转发:网络拥塞,网络中的拥塞(Congestion)当通信子网中的某一部分有太多的数据分组时,会导致网络性能的下降。拥塞会引起网络分组的丢失,在严重的情况下,会导致网络运行的瘫痪。拥塞控制(Congestion Control)端到端的解决方案:采取可靠的传输层控制协议,例如TCP的改进 基于路由器的解决方案:采取不同的路由器队列管

6、理策略(Queue Management,例如RED算法),不同的队列调度策略(Scheduling,例如WFQ算法),TCP/IP网络原理与应用 Lecture 3,路由器的路由功能:路由表,在路由器中,所有有关如何到达目标网络的最佳路径信息以数据库表的形式存储起来。这种专门用于存放路由信息的表被称为路由表。路由表的不同表项可给出到达不同目标网络所需要历经的路由器接口信息。路由表使得基于第三层地址的路径选择最终得以实现。,TCP/IP网络原理与应用 Lecture 3,网 1,网 4,网 3,网 2,目的主机所在的网络,下一跳路由器的地址,直接交付,接口 1,直接交付,接口 0,路由器 R2

7、 的路由表,链路 4,链路 3,链路 2,链路 1,R2,R3,R1,0,1,R2,R3,R1,在路由表中,对每一条路由,最主要的是(目的网络地址,下一跳地址),TCP/IP网络原理与应用 Lecture 3,路由器的路由功能:查找路由表,路由器的某一个接口在收到帧后首先进行帧的拆封以便从中分离出相应的IP分组然后利用子网掩码求“与”方法从IP分组中提取出目标网络号将目标网络号与路由表进行比对看能否找到一种匹配,即确定是否存在一条到达目标网络的最佳路径信息。若存在匹配,则将IP分组重新进行封装成出去端口所期望的帧格式并将其从路由器相应端口转发出去;若不存在匹配,则将相应的IP分组丢弃。,TCP

8、/IP网络原理与应用 Lecture 3,最长前缀匹配,最长前缀匹配(longest-prefix matching)使用 CIDR 时,路由表中的每个项目由“网络前缀”和“下一跳地址”组成。在查找路由表时可能会得到不止一个匹配结果。应当从匹配结果中选择具有最长网络前缀的路由:最长前缀匹配。因为网络前缀越长,其地址块就越小,因而路由就越具体。又称为最长匹配或最佳匹配。,TCP/IP网络原理与应用 Lecture 3,路由表,路由表中的路由信息是从可而来的呢?或者说,路由器如何生成并维持一个能正确反映网络拓扑与状态信息的路由表?有两种方式可用于路由表信息的生成和维护,即分别是静态路由和动态路由。

9、,TCP/IP网络原理与应用 Lecture 3,静态路由,网络管理员根据其所掌握的网络连通信息以手工配置方式创建的路由表表项。要求网络管理员对网络的拓扑结构和网络状态有着非常清晰的了解;当网络连通状态发生变化时,静态路由的更新也要通过手工方式完成。通常被用于与外界网络只有唯一通道的所谓孤岛(STUB)网络,也可用作网络测试、网络安全或带宽管理的有效措施。当网络互连规模增大或网络中的变化因素增加时,静态路由也很难及时适应网络状态的变化。,TCP/IP网络原理与应用 Lecture 3,动态路由,指路由器通过自主学习而获得的路由信息。通过在路由器上运行路由协议并进行相应的路由协议配置即可保证路由

10、器自动生成并维护正确的路由信息。动态路由不仅能更好地适应网络状态的变化,如网络拓朴和网络流量的变化,同时也减少了人工生成与维护路由表的工作量。付出的代价:路由器之间为了交换和处理路由更新信息而带来的资源耗费,包括网络带宽和路由器本身资源的占用。,TCP/IP网络原理与应用 Lecture 3,路由协议,在网络层用于动态生成路由表信息IP协议提供了逻辑寻址信息即告诉路由设备数据包要往何处去,但不能解决如何去的问题;路由协议提供了关于如何到达既定目标的路径信息。也就是说,为IP数据包到达目标网络提供了路径选择服务,TCP/IP网络原理与应用 Lecture 3,路由选择算法,路由协议的核心是路由选

11、择算法。不同的路由选择算法通常会采用不同的评价因子、权重及算法思想来进行最佳路径的计算。常见的评价因子包括带宽、可靠性、延时、负载、跳数和费用等。在此,跳数(hop)是指所需经过的路由器数目。,TCP/IP网络原理与应用 Lecture 3,应用 查看路由表,netstat-r 本选项可以显示关于路由表的信息route print显示有效路由,TCP/IP网络原理与应用 Lecture 3,Netstat 命令,1、netstat 的一些常用选项netstat-s 本选项能够按照各个协议分别显示其统计数据。如果我们的应用程序(如Web浏览器)运行速度比较慢,或者不能显示Web页之类的数据,那么

12、我们就可以用本选项来查看一下所显示的信息。我们需要仔细查看统计数据的各行,找到出错的关键字,进而确定问题所在。本选项用于显示关于以太网的统计数据。它列出的项目包括传送的数据报的总字节数、错误数、删除数、数据报的数量和广播的数量。这些统计数据既有发送的数据报数量,也有接收的数据报数量。这个选项可以用来统计一些基本的网络流量),TCP/IP网络原理与应用 Lecture 3,Netstat 命令,netstat-r 本选项可以显示关于路由表的信息,类似于后面所讲使用route print命令时看到的 信息。除了显示有效路由外,还显示当前有效的连接。netstat-a 本选项显示一个所有的有效连接信

13、息列表,包括已建立的连接(ESTABLISHED),也包括监听连接请求(LISTENING)的那些连接。netstat-n 显示所有已建立的有效连接。,TCP/IP网络原理与应用 Lecture 3,应用 维护路由表,route print 本命令用于显示路由表中的当前项目,在单路由器网段上的输出;由于用IP地址配置了网卡,因此所有的这些项目都是自动添加的。,TCP/IP网络原理与应用 Lecture 3,Route命令,route add 使用本命令,可以将信路由项目添加给路由表。route change 我们可以使用本命令来修改数据的传输路由route delete 使用本命令可以从路由表

14、中删除路由。例如:route delete 209.98.32.33,TCP/IP网络原理与应用 Lecture 3,应用 调试目前的路由,tracert IP address-d 该命令返回到达 IP 地址所经过的路由器列表。通过使用-d 选项,将更快地显示路由器路径,因为 tracert 不会尝试解析路径中路由器的名称。tracert一般用来检测故障的位置,我们可以用tracert IP在哪个环节上出了问题,虽然还是没有确定是什么问题,但它已经告诉了我们问题所在的地方,TCP/IP网络原理与应用 Lecture 3,第三章、IP协议,3.1 IP数据报的交付3.2 IP数据报的路由3.3

15、路由器的部署与应用3.4 IP数据报的差错控制,TCP/IP网络原理与应用 Lecture 3,路由器的部署与应用,网络互相连接起来要使用一些中间设备中间设备又称为中间系统或中继(relay)系统。物理层中继系统:转发器(repeater)。数据链路层中继系统:网桥或桥接器(bridge)。网络层中继系统:路由器(router)。网桥和路由器的混合物:桥路器(brouter)。网络层以上的中继系统:网关(gateway)。,TCP/IP网络原理与应用 Lecture 3,网络互连使用路由器,当中继系统是转发器或网桥时,一般并不称之为网络互连,因为这仅仅是把一个网络扩大了,而这仍然是一个网络。网

16、关由于比较复杂,目前使用得较少。互联网都是指用路由器进行互连的网络。由于历史的原因,许多有关 TCP/IP 的文献将网络层使用的路由器称为网关。,TCP/IP网络原理与应用 Lecture 3,作用之一:提供异构网络的互连,在物理上,路由器可提供多种网络的接口:如以太网口、令牌环网口、FDDI口、ATM口、串行连接口、SDH连接口、ISDN连接口等多种不同的接口。通过多种物理接口,路由器可以支持各种异构网络的互连,其典型的互连方式包括LAN-LAN、LAN-WAN和WAN-WAN等。在网络层能够实现基于IP协议的分组转发。,TCP/IP网络原理与应用 Lecture 3,路由器实现异构网络互连

17、的示例,TCP/IP网络原理与应用 Lecture 3,示例说明,以主机1和主机5为例,假定主机1要给主机5 发送数据,则主机1将以主机5的IP地址为目标IP地址,以其自己的IP地址为源IP地址启动IP分组的发送。由于目标主机和源主机不在同一网络中,为了发送该IP分组,主机1需要将该分组封装成以太网的帧发送给缺省网关即路由器A的E0端口;E0端口收到该帧后进行帧的拆封并分离出IP分组,通过将IP分组中的目标网络号与自己的路由表进行匹配,其决定将该分组由自己的E1口送出,但在送出之前,其必须首先将该IP分组重新按以太网帧的帧格式进行封装,这次要以自己的E1口的MAC地址为源MAC地址、路由器B的

18、E0口MAC地址为目标MAC地址进行帧的封装,然后将帧发送出去;路由器B 收到该以太网帧之后,通过帧的拆封,再度得到原来的IP分组,并通过查找自己的IP路由表,决定将该分组从自己的以太网口T0送出去,即以主机5的MAC地址为目标MAC地址,以自己的T0口的MAC地址为源MAC地址进行802.5令牌环网帧的封装,然后启动帧的发送;最后,该帧到达主机5,主机5进行帧的拆封,得到主机1给自己的IP分组并送到自己的更高层即传输层。,TCP/IP网络原理与应用 Lecture 3,作用之二:实现网络的逻辑划分,路由器所连的网络必定属于不同的冲突域,即从划分冲突域的能力来看,路由器具有和交换机相同的性能。

19、例如,当网络1中的主机1给主机2发送IP分组1的同时,主机5可以给主机6发送IP分组2,它们互不矛盾。,TCP/IP网络原理与应用 Lecture 3,作用之二(续),除了可以隔离网络冲突外,由路由器相连的不同网段之间还可以相互隔离广播流量。若主机1以目标地址“255.255.255.255”广播,则该广播会被局限于网段1中,因为路由器通过判断该目标IP地址得知道自己不必转发该IP分组。路由器不同接口所连的网段属于不同的广播域。广播域是对所有能分享广播流量的主机及其网络环境的总称。,TCP/IP网络原理与应用 Lecture 3,第三章、IP协议,3.1 IP数据报的交付3.2 IP数据报的路

20、由3.3 路由器的部署与应用3.4 IP数据报的差错控制,TCP/IP网络原理与应用 Lecture 3,IP数据报的差错控制,为了提高 IP 数据报交付成功的机会,在网际层使用了因特网控制报文协议 ICMP(Internet Control Message Protocol)。ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告。ICMP 不是高层协议,而是 IP 层的协议。ICMP 报文作为 IP 层数据报的数据,加上数据报的首部,组成 IP 数据报发送出去。,TCP/IP网络原理与应用 Lecture 3,ICMP 报文的格式,首 部,ICMP 报文,0,数 据 部 分,检验和

21、,类型,代码,(这 4 个字节取决于 ICMP 报文的类型),8,16,31,IP 数据报,前 4 个字节都是一样的,ICMP 的数据部分(长度取决于类型),TCP/IP网络原理与应用 Lecture 3,ICMP 报文,ICMP 报文的种类有两种,即 ICMP 差错报告报文和 ICMP 询问报文。ICMP 报文的前 4 个字节是统一的格式,共有三个字段:即类型、代码和检验和。接着的 4 个字节的内容与 ICMP 的类型有关。,TCP/IP网络原理与应用 Lecture 3,ICMP 差错报告报文共有 5 种,终点不可达 源站抑制 时间超过 参数问题 改变路由(重定向),TCP/IP网络原理与

22、应用 Lecture 3,ICMP 差错报告报文的数据字段内容,首部,IP 数据报,ICMP 的前 8 字节,装入 ICMP 报文的 IP 数据报,IP 数据报首部,ICMP 差错报告报文,8字节,收到的 IP 数据报,IP 数据报首部,8字节,ICMP 差错报告报文,IP 数据报的数据字段,TCP/IP网络原理与应用 Lecture 3,不应发送 ICMP 差错报告报文的几种情况,对 ICMP 差错报告报文不再发送 ICMP 差错报告报文。对第一个分片的数据报片的所有后续数据报片都不发送 ICMP 差错报告报文。对具有多播地址的数据报都不发送 ICMP 差错报告报文。对具有特殊地址(如127

23、.0.0.0或0.0.0.0)的数据报不发送 ICMP 差错报告报文。,TCP/IP网络原理与应用 Lecture 3,ICMP 询问报文有两种,回送请求和回答报文时间戳请求和回答报文,TCP/IP网络原理与应用 Lecture 3,Ping(Packet InterNet Groper),Ping 用来测试两个主机之间的连通性。Ping 使用了 ICMP 回送请求与回送回答报文。Ping 是应用层直接使用网络层 ICMP 的例子,它没有通过运输层的 TCP 或UDP。,TCP/IP网络原理与应用 Lecture 3,案例 Ping的使用,按照缺省设置,Windows上运行的Ping命令发送4

24、个ICMP(网间控制报文协议)回送请求,每个32字节数据,如果一切正常,我们应能得到4个回送应答。如果应答时间短,表示数据报不必通过太多的路由器或网络连接速度比较快。Ping还能显示TTL(Time To Live存在时间)值,我们可以通过TTL值推算一下数据包已经通过了多少个路由器:源地点TTL起始值(就是比返回TTL略大的一个2的乘方数)-返回时TTL值。例如,返回TTL值为119,那么可以推算数据报离开源地址的TTL起始值为128,而源地点到目标地点要通过9个路由器网段(128-119);如果返回TTL值为246,TTL起始值就是256,源地点到目标地点要通过9个路由器网段。,TCP/I

25、P网络原理与应用 Lecture 3,提高 Tracert的原理,TCP/IP网络原理与应用 Lecture 3,实验,1.理解ICMP Echo Request/Reply2.使用Windump分析Tracert3.使用ping构建你的Tracert,TCP/IP网络原理与应用 Lecture 3,理解ICMP Echo Request/Reply,发送者初始化identifier,sequence number和data接收者将类型改成Echo Reply,返回给发送者identifier用于匹配Request和Reply,TCP/IP网络原理与应用 Lecture 3,理解ICMP Ec

26、ho Request/Reply,Ping 192.168.88.252 n 2Ping 192.168.88.252 n 2WinDump.exe:listening on DeviceNPF_4DE7E335-57E1-4A0A-A265-3C24E7AA7E1513:32:23.401217 IP yuan-hust 192.168.88.252:ICMP echo request,id 512,seq 3840,length 4013:32:23.401468 IP 192.168.88.252 yuan-hust:ICMP echo reply,id 512,seq 3840,len

27、gth 4013:32:24.401776 IP yuan-hust 192.168.88.252:ICMP echo request,id 512,seq 4096,length 4013:32:24.402043 IP 192.168.88.252 yuan-hust:ICMP echo reply,id 512,seq 4096,length 4013:32:49.985567 IP yuan-hust 192.168.88.252:ICMP echo request,id 512,seq 4352,length 4013:32:49.985823 IP 192.168.88.252 y

28、uan-hust:ICMP echo reply,id 512,seq 4352,length 4013:32:50.986272 IP yuan-hust 192.168.88.252:ICMP echo request,id 512,seq 4608,length 4013:32:50.986550 IP 192.168.88.252 yuan-hust:ICMP echo reply,id 512,seq 4608,length 40,TCP/IP网络原理与应用 Lecture 3,使用Windump分析Tracert,实验步骤:启动Windump运行:Tracert 分析打印出的信息运行:Tracert 分析Windump输出信息估计平均RTT时间,TCP/IP网络原理与应用 Lecture 3,使用ping构建你的Tracert,思路:运行:ping xxxx n 1 i x周期地调用上述命令并递增TTL值从输出信息中提取路由器地址信息打印出路由器地址信息,谢谢!,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号