第8章TCPIP协议.ppt_第1页
第8章TCPIP协议.ppt_第2页
第8章TCPIP协议.ppt_第3页
第8章TCPIP协议.ppt_第4页
第8章TCPIP协议.ppt_第5页
已阅读5页,还剩162页未读 继续免费阅读

下载本文档

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

文档简介

1、第8章 TCP/IP协议,第8章 TCP/IP协议,81 TCP/IP 协议概述 82 路由器 83 IP 互联网协议 84 TCP传输层协议 85 应用层协议,81 TCP/IP 协议概述,811 TCPIP 协议的重要性 812 TCP/IP的起源 813 TCP/IP的层次结构 814 下一代IP协议IPv6 返回,811 TCPIP 协议的重要性,从以下几点看: Internet从理论到应用与 TCP/IP 是密不可分的 TCP/IP 是一些常用操作系统内置的网络协议 一些网络应用系统,如 Oracle 数据库系统等等也都支持 TCP/IP 协议 返回,812 TCP/IP的起源,19

2、73年9月美国斯坦福大学的文顿瑟夫与卡恩提出了TCP/IP协议 ARPA于 1977 年到1979 年研制成功 TCP/IP 协议 到1983 年为止,ARPAnet 全部转换成了 TCP/IP 协议 TCP/IP 与 UNIX 的结合是导致 TCP/IP 广泛流行的主要原因之一 而今, TCP/IP 协议已经变成了互联网的同义词 PC机系统都有相应的 TCP/IP 工业产品 TCP/IP 已经形成了事实上的工业标准 返回,813 TCP/IP的层次结构,TCP/IP 协议也是分层的体系结构 但 TCP/IP 分成四层 分别是网络接口层、互联网层(IP)、传输控制层(TCP)和应用层 返回,网

3、络接口层,在 TCP/IP 中,网络接口层是通信子网层 TCP/IP 对网络接口层并未做什么规定,也没有形成什么协议。 因为TCP/IP 在设计时考虑到要与具体的物理传输媒体无关 在TCP/IP 协议标准中没有对最低两层做出规定,传输控制层,传输控制层(TCP层)提供应用程序间的通信,是端到端的协议。 在这一层有两个协议: 一个是传输控制协议(Transmission Control Protocol,TCP),是面向连接的报文分组传输协议,可以提供端到端可靠的传输 另一个是用户数据报协议(User Datagram Protocol,UDP)是无连接的数据报传输协议,IP网际协议,IP层是网

4、际协议(Internet协议或称互联网协议),由多个协议组成 主要是 IP(Internet Protocol,IP)协议,提供无连接的数据报服务 还有三个辅助协议,三个辅助协议,Internet 控制报文协议(Internet Control Message Protocol,ICMP),用于在网际层进行差错等控制 地址转换协议 ARP(Address Resolution Protocol) 反向地址转换协议 RARP(Reverse Address Resolution Protocol) 用于互联网地址与结点物理地址的转换,814 下一代IP协议IPv6,IPv6是下一代IP协议,相对

5、于IPv6来说现在使用的IP协议是IPv4 IPv4是上个世纪70年代研制的,由于网络规模和速度发展的要求现在已经不适用了 IETF组织于1992年6月提出并制定了下一代IP标准即IPv6 返回,IPv6主要的特点,IPv6主要的特点是把地址长度扩大到128位,以能够支持更多的网络结点 简化了首部,减少了路由器处理首部所需要的时间 提高了网络的速度 IPv6还对服务质量QoS作了定义 并且提供了比IPv4更好的安全性保证 但是把IPv4升级为IPv6可能还需要经过一个很长时期的过渡过程,82 路由器,821网络互连的层次 822路由器的功能 823路由器的结构 824路由器设备 返回,821网

6、络互连的层次,通过中继器进行连接(如集线器) 通过网桥进行连接 (如交换机) 通过路由器连接 通过网关连接 返回,通过中继器进行连接,通过中继器进行连接是在物理层进行的操作 中继器的作用扩大了网络的覆盖范围 但是整个网络仍然是一个物理网络 对于以太网来说,网络上的结点处在同一个碰撞域,增加了网络结点信息的碰撞机会,降低了网络性能 通过集线器组建网络相当于中继器连接。,通过网桥连接,网桥实现了链路层的网络连接 连接后扩大了网络的范围 网络可以对碰撞域进行细分,但整个网络仍然处于一个广播域 通过交换机组建网络相当于网桥连接 网桥组网属于第二层,通过路由器连接,路由器工作在网络的第三层,可以实现不同

7、类型网络的互连与互通 通过路由器可以组建互联网,扩大网络的范围,真正实现网络的资源共享,通过网关连接,网关工作在网络的高层,实现不同协议的网络之间的互连 例如通过Netware网关可以使局域网的用户访问IBM主机资源 由于网关工作在高层,所以网关协议转换是一个非常复杂的过程,822路由器的功能,路由器是网络互连的关键部件 是构成国际互联网Internet的核心部件 正是由于路由器设备与TCP/IP协议相结合才有了Internet 路由器实现了不同网络的互连 在路由器上可以有支持不同协议的模块,在网际层实现了网络的互连 返回,路由器的作用,路由器可以根据网络中采用的路由协议构成路由表 通过路由表

8、,路由器的转发机构对网际层的分组按照最优化的路由进行转发 在分组的转发过程中,路由器完成了对分组的流量控制、拥塞控制以及差错控制等控制功能 除此之外,路由器还可以提供分组的过滤、服务质量(QOS)、数据加密、防火墙、组播等各种功能,路由器与IMP,路由器完成的功能类似于广域网中结点交换机IMP的功能 但两者是有区别的 : 广域网完成了分组的存储转发,但这种分组的转发是在同一个网络内不同IMP之间的转发 路由器完成分组的转发,但路由器是在不同的网络之间进行分组的转发 也就是说,广域网分组转发的目标是IMP,而互联网存储转发的目标是物理子网络,路由器完成的功能类似于IMP,虽然路由器与IMP是有区

9、别的,但是路由器完成的功能类似于IMP 在互联网上,人们把路由器看作是互联网上的结点,完成了在不同的网络间分组的路由选择、差错控制、流量控制以及其它的控制功能,823路由器的结构,路由器是一种具有多个输入、输出端口的专用计算机 路由器的功能也可以由一台通用计算机来实现,例如安装Window Server 2003操作系统的计算机就可以配置成一台路由器 但是在实现路由交换的性能上,与路由器设备是不能相比的 返回,路由器基本上由两部分组成,路由选择部分和分组转发部分,路由器的组成,路由器基本上由两部分组成: 路由选择部分和分组转发部分 路由选择部分属于路由器的控制部分 其主要功能是根据所选定的协议

10、和网络的状态构成路由表,并经常根据网络状态的变化与其它路由器交换路由信息,并更新路由表 分组转发部分包括交换机构和输入输出端口 交换机构是路由器的关键部件,实现分组从输入端口到输出端口间的交换,这种交换是在转发表的指示下完成的。 交换机构的实现有三种方法:通过存储器进行交换;通过总线进行交换和通过交换矩阵进行交换,输入端口和输出端口,输入端口和输出端口完成分组的输入、输出和处理 在输入端口,对接收的分组进行拆包,去除帧的首部和尾部 如果接收到的分组是控制分组,就送交路由引擎处理,否则交由转发引擎处理 路由引擎按照路由选择协议形成路由表 转发引擎根据路由表形成转发表,按照转发表,交换机构完成分组

11、在路由器不同端口之间的转发,输入输出缓冲区,输入端口应具有缓冲功能,以便未来得及处理的分组在缓冲区排队 在输出端口,从交换机构传送来的分组在被加上链路层的首部和尾部发送到线路上去时,如果线路来不及发送也必须在输出缓冲区中排队,表驱动原理,路由器根据路由表进行路由选择的原理称为表驱动原理 表驱动机制由软件实现,这是路由器在网络中容易形成瓶颈的根本原因 改变路由器转发速度,尽可能通过硬件进行分组的转发是路由器设备的关键技术,也是路由器技术研究的重点 现在路由器转发分组一般都采用ASIC芯片实现,使得路由器可以以线速度进行分组的存储转发,路由器与交换机的区别,路由器与交换机有着本质的区别: 第一,路

12、由器与交换机工作在OSI的不同层。路由器工作在OSI第3层,交换机工作在OSI的第2层 第二,数据转发的依据不同。路由器主要依据IP地址进行存储转发,交换机一般依据MAC地址进行存储转发 第三,传统交换机不能分割广播域,路由器可以分割广播域,路由器不允许广播信息通过 第四,交换机对MAC帧的存储转发靠的是硬件功能,转发速度快 路由器的路由算法、转发表的形成以及对分组进行拆包和打包的过程主要是靠软件进行,分组转发将产生很大的延迟,824路由器设备,1设备分类方法 2路由器产品 3路由器接口 返回,1设备分类方法,对路由器有多种分类方法 接照路由器的处理能力,可以分为高端路由器、中端路由器和低端路

13、由器。一般背板交换能力为40Gb/s的路由器属高端产品,否则属中、低端产品 按照路由器的结构,可以分为固定结构和模块化结构。一般高端产品采用模块化结构,可以灵活地配置协议模块及其接口 按照路由器所处网络的位置,可以分为核心路由器和接入路由器等,2路由器产品,下面以Cisco公司的产品为例进行介绍,Cisco的产品系列主要有Cisco1600、Cisco2600、Cisco3600、Cisco4000、Cisco7000以及Cisco12000系列产品,Cisco1600,可以为小型办公室提供访问广域网的路由功能 内置一个10BASE-T以太网接口,还支持ISDN基本速率接口、同步串行接口等 每

14、秒可以处理6000个数据包 在IOS11.1版本或更高的版本下运行,Cisco2600系列,也适合于作为接入路由器,提供广域网的访问功能 每秒钟可以处理25000个数据包 有一个10BASET以太网接口,两个广域网扩展槽,用于ATM、同步和异步接口 在IOS11.3或更高版本下运行,Cisco3600系列,是模块化的路由器 每秒可以处理40000个数据包 可以支持ATM、以太、异步和同步串行接口 需要运行IOS11.1版本操作系统,Cisco4000系列,是模块化结构 最多支持18个以太网接口、6个令牌环接口、2个快速以太网接口、2个FDDI接口、34个异步和6个同步串行接口以及ATM接口 运

15、行IOS9.14或更高版本操作系统,Cisco7000系列,是高端路由器产品 每秒钟可以处理20万个数据包 支持灵活配置的接口,包括快速以太、OC-3和DS-3接口,Cisco12000系列,是千兆位Internet交换路由器 提供了快速以太、千兆位以太、OC-3、OC-12和OC-48等可扩展的接口 提供了40Gb/s60 Gb/s的交换容量,3路由器接口,主要有3类接口 第一类是以太网接口,包括AUI、RJ-45接口等。其中RJ-45包括10BASET、快速以太网以及千兆位以太网等 第二类是广域网接口,包括高速同步串行接口、异步串行接口、ISDN接口等。高速同步串行接口,用于连接目前应用广

16、泛的DDN、FRN、X.25等网络 第三类是路由器配置接口,这类接口不用于数据传输,主要用于对路由器进行配置和管理 主要有Console和AUX接口 Console接口可以把路由器连接到计算机,利用Windows98的终端仿真程序对路由器进行本地配置 AUX为异步端口,用于通过拨号对路由器进行远程配置。,83 IP 互联网协议,831 IP 层的作用 832 IP 地址 833 地址解析 834 IP 数据报 835 IP控制报文协议ICMP 836 IP 路由选择 返回,831 IP 层的作用,IP 层是 TCP/IP 协议的关键层,网络互连的功能主要是由 IP 层实现的 返回,通过路由器把

17、3个不同的物理子网连接起来 这些网络可能是局域网,也可能是广域网 具有不同的物理地址格式,具有不同的数据格式 通过路由器分组转发和IP网际层的功能,可以屏蔽掉这些差异,使得在主机看来,这三个网络形成了一个虚拟的逻辑网络 具有统一的地址IP地址;具有统一的数据IP数据报,路由器与子网构成了一个单一的网络称虚拟网 子网上的各个用户(HOST)看到的是虚拟网,看不到虚拟网实现的细节 IP层通过路由器进行分组的转发,并且通过IP层的作用,实现了对不同物理网的连接与屏蔽作用 使得不同的网络实现了互连,形成互联网internet。,832 IP 地址,物理地址与逻辑地址 2IP 地址种类 .特殊地址 4子

18、网掩码 返回,物理地址与逻辑地址,互联网通过路由器把各个通信子网互连。通信子网又称为物理网络,在物理网络内的结点都存在一个物理地址,这是各结点的唯一标识 不同物理地址连成虚拟网后必须有一个统一的地址,以便在整个网络上有一个唯一的结点标识,这就是逻辑地址,即 IP 地址,IP 地址与物理网络地址的关系,IP 地址对各个物理网络地址的统一是通过上层软件进行的 这种软件没有改变任何物理地址,而是屏蔽了它们,建立了一种 IP 地址与它们之间的映射关系 在互联网络层使用 IP 地址 到了底层,通过映射得到物理地址 IP地址作为互联网的逻辑地址也是层次型的,IP地址作为互联网的逻辑地址也是层次型的,2IP

19、 地址种类,IP地址是一个32位的地址,理论上可以表示 232 个地址 网络号与主机号各占多少位呢? IP协议把IP地址分成5类,但主要有3类 即A类地址、B类地址和C类地址,地址第一个字节的高位段是地址分类的标志 高位为0表示 A 类地址 高位为 10 表示 B 类地址 高位为 110 表示 C 类地址,A、B、C三类地址,A 类地址包括 8 位网络号和24 位主机号,这类地址适于分配给规模较大的网络,第一个字节最高位已由地址类占用,所以 A 类网络可有 128 个,每个网络包含224个主机,很明显,这种规模的网络是不多见的 B 类地址包括 14 位网络号,16 位主机号,所以, B 类网络

20、可有 214个网络,每个网络包含 21665536 个主机,这样的网络规模也是很可观的 C 类地址包括 21 位网络号,8 位主机号,所以 C 类网络共有 221 个网络,每个网络包含 28 共256 个主机,8 位位组,用二进制数表示 IP 地址的方法不便阅读且不好理解,所以, IP 协议规定了一种 8 位位组的方法 以字节为单位,用十进制表示二进制地址,再用符号“”作为间隔,就得到了一个用十进制数表示的 IP 地址,8 位位组举例, 其二进制 IP 地址为 1 0 0 0 0 1 0 0 1 0 0 1 0 0 1 1 0 0 0 1 0 1 0 0 0 0 0 0

21、 1 0 0 0 这是一个 B 类地址 网络号为 主机号为20.8,如何区分出网络类,对于一个 8 位位组表示的 IP 地址如何能直接区分出网络类呢? 根据网络类二进制地址的最高标识段,从第一个字节表示数的范围可知某地址的网络类, 因132在128-191之间,所以这个地址是个B类地址 可知这是一个C类地址,网络号为,主机地址为1,.特殊地址,IP 协议规定了几个特殊地址,必须给予注意 有了这些特殊地址后,不同类网络能表示的网络数和主机数就要有些出入了,比如A类网的网络数为126个;各类网内主

22、机数也应减去2,广播地址,如果主机地址为全1,代表广播地址,广播地址是针对网上所有主机的地址。如 55 就是一个B 类网广播地址,网络地址,如果主机地址为全0,代表网络地址,所以,任何主机号不能为全0,回送地址,A 类网网络号127是个回送地址,所谓回送的含义是任何分组都不发向网络,而是又回到了应用程序中。这个地址主要用于对安装的TCP/IP 软件是否配置合理的测试用,最常用的是,0地址,如果全部地址都为 0,即 ,也作为一个特殊地址,网络号全 0,表示本网络,若主机试图在网段内通信,又不知本网络号,可以发0地址,4子网掩码,A类和B

23、类地址主机数太多,即使B类地址还可以表示6万多主机,实际的网络拥有这样多主机数并不很多 子网的提出解决了这个问题(注意与通信子网的区别),用主机号域高位的若干部分作为子网号域,其余部分再作为子网中的主机号域,比如如果一个B类网中拿出主机域最高的8位作为子网域,可得256个子网,每个子网还可以有254个主机,划分子网的好处由此可见 划分子网后,网络的管理更具有合理性,对子网外部的互联网没有任何结构变化,由于子网内的变化对子网外是未知的,使整个网络更具有安全性,子网掩码,子网掩码是一个 32 bit 的二进制数,可以用 8 位位组的方法来表示。给出子网掩码时,当某位为网络号或子网号时,使该位为 1

24、 ;某位为主机号时,使该位为 0 例如某 B 类地址子网掩码为 ,变换为二进制数为: 1111 1111 1111 1111 1111 1111 0000 0000 前两字节是B类地址网络号域,第三个字节为全1,即为子网号域,第四个字节为全 0 ,即为主机号域,子网掩码举例,在这个配置情况下,若有某结点IP地址为:,可知其:网络号为: 子网号为: 16 主机号为: 2 如果这个子网掩码是一个A类网的子网掩码,那么子网号域将占去 16 位,主机号域占去 8 位;如果是一个 C 类网的子网掩码,子网号域为 0 位,表示没有

25、规定子网,子网掩码的边界,子网掩码的边界可以正好是字节的边界,也可以不在字节边界,例如设某结点 IP 地址为: 02 子网掩码为: 40 因为这是一个 C 类地址,掩码的二进制数为: 11111111 11111111 11111111 11110000 可见,掩码占第四字节的高四位,不是字节的边界。把 IP地址变换为二进制数为: 11000100 10010011 10101000 01100110 可见,这个 IP 地址的网络号为: 子网号为6,主机号为6,833 地址解析,1地址解析协议 ARP 主机间传输报

26、文时,在 IP 层以下,还必须使用物理地址,这就要在 IP 地址与物理地址之间建立一个转换关系 ,可以通过 ARP 地址解析协议。 2逆向地址解析协议 RARP 通过运行 RARP 协议可以从物理地址获取 IP 地址 返回,834 IP 数据报,1IP 层数据统一 数据分块封装 3数据报格式 返回,1IP 层数据统一,IP 地址体现了对不同的物理子网物理地址的统一,使 IP 层对高层协议提供了整个虚拟网络统一的地址,这只是 IP 层作用的一个方面 IP 层作用的另一方面是在统一的地址基础之上统一所传输的数据,以屏蔽各物理子网的物理帧格式的差异,不论任何格式的物理,在IP层都将统一成同一格式的I

27、P分组(IP数据报),数据分块封装,IP数据报作为一种高层的网络数据最终还要通过物理网络帧传输 在 IP 层与物理网络层之间建立一种数据的映射关系 把IP数据报封装在物理网络帧中,或从物理网络帧中解封,分片封装,但是物理网络帧的格式是不同的,最主要的就是数据帧的大小各种各样 IP 协议对IP 数据报进行分片(fragment) 数据报的格式分成首部和数据两部分 对数据报的数据部分按照相应的物理网络帧的大小以字节为单位进行分片,再封装在帧中,有时每片数据长度一样,有时最后一个片的数据可能要短于其它片 采用分片的机制后,在数据报中就要有关于分片控制的字段,譬如片的标志、片偏移等 另外分片的数据到达

28、信宿端后,还要进行重组 分片是在路由器进行的,而重组一般在信宿机进行,3数据报格式,IP数据报也分为两部分:首部和数据 首部又分成两部分:固定部分20字节,可变部分的长度可变 规定首部的总长度是60字节 数据报的格式以4个字节(32bit)为单位,这是TCP/IP协议统一格式的描述 这样,首部固定部分为5个单位,首部总长度为15个单位 在首部后,也是以4个字节为单位的数据部分,数据报最长为65536个字节,可见:包括报头,数据 报头又分为:固定,可变,首部固定部分,服务类型 服务类型字段共8 bit,用来要求获得的服务。 首部长 首部长占4 bit,可表示最大数值是15个单位,共60个字节,若

29、IP数据报首部长度不是4字节的整数倍时,必须利用首部的最后一个“填充”字段加以填充。 版本 版本字段占4 bit ,指IP协议的版本号,通信双方使用的IP协议的版本必须一致,目前一般使用版本。,首部固定部分(续1),总长度 总长度指数据报分段后首部和数据之和的长度,单位为字节。总长度字段为16 bit,因此,数据报最大长度为65536字节。 标识 用于分片数据报重组时使用。 标志 标志字段占用3 bit,但目前只使用前两个比特 ,标志字段也是用于控制数据报分段用,首部固定部分(续2),片偏移 表示分片后,本片在原来数据报中的位置,以 8 字节为 1 个单位,共占 13 bit 。 寿命 寿命字

30、段记为TTL(Time To Live),占8 bit,以秒为单位。又称本数据报的生存时间,用来设置本数据报的最大生存时间。TTL字段的作用体现了IP协议对数据报在传输过程中的延迟控制作用。路由器总是从TTL中减去数据报消耗的时间,当TTL字段值已减少为0时,便将该数据报从网络中删除。 协议 指数据报数据区数据的高级协议的类型,如TCP、UDP、ICMP等。 首部校验和 用于校验数据报首部,不包括数据部分。 地址 指源站和目的站IP地址,各占4字节,首部的可变部分,首部的可变部分就是任选项 这些任选项不是每个数据报都要求的 主要用于对网络测试与排错,835 IP控制报文协议ICMP,1ICMP

31、 协议概述 2ICMP 差错报文 3ICMP控制报文 4ICMP请求与应答报文 返回,1ICMP 协议概述,在TCP/IP网络体系结构中,IP相当于OSI模型的网络层 与OSI网络功能相比较,IP层的控制功能包括:差错控制、拥塞控制和路由控制 为了使IP协议的结构更加清晰,TCPIP协议没有把上述的控制功能包括在IP协议之中,而是由TCPIP 协议族中另一个协议ICMP协议去实现 ICMP协议是IP 协议层中的一个辅助协议,完成IP层的控制功能 而且ICMP协议的报文不能单独传送,作为IP数据报的数据,封装在IP数据报中进行传送,ICMP 并不是独立的分层,ICMP 只作为 IP 协议中的一个

32、模块。从图中可见,由于封装了ICMP的报文,使得IP数据报成为一个控制数据报,ICMP报文也分成首部和数据区两部分。其中首部包含类型、代码和校验和三个域。类型(type)域是个一字节整数,指出ICMP报文的类型(如表8-2 所示) 代码(code)域也是一字节整数,提供有关报文类型的进一步信息 校验和(checksum)域共2字节长,提供整个ICMP报文的校验和,ICMP报文基本上分为三大类,ICMP报文基本上分为三大类:ICMP 差错报文、ICMP控制报文和ICMP请求与应答报文,2ICMP 差错报文,ICMP协议的设计初衷是发现数据报传输错误的路由器向数据报信源主机报告差错,后来才拓宽了I

33、CMP协议的作用范围 差错包括信宿不可达报告、超时报告和参数出错报告等,信宿不可达,信宿不可达报文类型为3,根据“代码”值又可以细分为:网络不可达、主机不可达、协议和端口不可达等多种类型,关于不可达,路由器的主要功能是对数据报进行路由选择并转发数据报,数据报转发不可能总是成功的 如果发出网络不可达的错误说明路由选择有问题 如果发生主机不可达的错误,说明路由选择正确,但可能信宿机未开机或信宿机不存在等 如果发生协议和端口不可达,说明信宿机本身的问题所致,超时报告,超时报告是通过定时限制数据报在网络中的逗留时间 以防止出现不可容忍的传输延迟 从而提高网络的效率,参数出错,参数出错报文报告错误的IP

34、数据报首部和错误的数据报选项参数等情况 一旦参数错误到路由器不得不抛弃数据报时,路由器便向信源机发送参数出错报文,3ICMP控制报文,早期ICMP主要用于差错报告 后来扩充了控制拥塞和路由的功能,主要是拥塞控制 拥塞控制是网络层的重要功能,在TCPIP协议中,拥塞控制由IP层实现 拥塞控制的方法是采用源抑制报文 所谓源抑制就是:控制信源机发出数据报的速率,源抑制,路由器周期性地测试其每条输出端口,密切监视拥塞的发生 当发现某输出队列已满,则抛弃新到来的数据报,并向该数据报的信源机发送一个源抑制报文 信源机收到源抑制报文后,按一定的速率降低发往信宿机的数据报传输率 在一定的时间间隔内,假如没有来

35、自同一信宿的源抑制报文,主机便认为拥塞已解除,可以逐渐恢复数据报流量 源抑制报文类型为4,代码值为0。,4ICMP请求与应答报文,请求与应答报文都是双向传输的成对的报文,用于对网络进行故障诊断和控制,主要包括回应请求与应答、时戳请求与应答和子网掩码请求与应答报文。 回应请求与应答报文用于测试信宿机的可达性 TCP/IP实用命令 PING 就是利用了ICMP 回应请求应答测试信宿机可达性的,836 IP 路由选择,在互联网中,路由选择有许多特殊之处,主要体现在互联网的机制以及结构方面 为了条理清晰,TCP/IP还专门规定了路由选择协议 有些路由选择协议的报文作为UDP数据报的数据部分 有些作为I

36、P数据报的数据部分,使路由选择报文作为IP协议的一种控制报文 返回,1IP 路由选择原理,回顾一下互联网的基本结构。用路由器把不同的物理网络连接起来,IP数据报通过路由器,在虚拟网中进行存储转发,最终到达信宿地。IP数据报携带的地址中包括信宿主机的地址,同时还包括着网络地址 物理网络的区别是非常大的。广播型的局域网,诸如以太网、令牌环网等不需要路由选择,包括信宿主机在内的所有主机都可以收到信源主机发出的信息。ARPAnet是由结点信息处理机IMP完成路由选择,直接与间接路由选择,物理网络路由选择的目标是主机,TCP/IP协议把这种路由选择称直接路由选择 IP协议不关心这种路由选择,IP协议把这

37、种路由选择隐藏起来了 实际上互联网路由选择的目标是物理网络,把这种路由选择称为间接路由选择 路由器监视到来的数据报信宿地址中的网络部分,如果是本网络,就对数据报解封,交给物理网络。物理网络按照某种地址变换的方法,通过直接路由选择找到相应的目标主机 如果不是本网络,路由器查找路由表,通过间接路由选择,把数据报发往相应的网络,,主机H1欲与另一网络上的主机H2通信,H1把数据报发往与本网络相连的路由器 R1, 再通过间接路由选择把数据报发往路由器R2, 网络net3通过直接路由选择把数据报发往主机H2,2.路由表,与直接路由选择相比较,路由表中的内容已经完全不同了 路由表中的信宿不是主机地址而是网

38、络地址 去往该网络地址的路由不是下一主机,而是下一路由器,目标网络号 路由 10 直接 20 直接 30 R2 40 R3 50 R3 图8-18中的路由表,路由器R1有两个网络地址10与20,所以,当目标网络为10和20时,路由都标示“直接”,表示对“本网络”采用直接寻址,间接路由选择的优点,在路由表中,只给出某路由的“下一路由器”,可以减少路由表的长度 在互联网层以网络作为路由选择的目标,而不以主机作为路由选择的目标,也可以有效地减少路由表的长度 带来的另一好处是:物理网络状态的变化(如增加主机)对互联网层路由选择没有影响,达到了信息隐藏的目的,表驱动机制,在互联网技术中,利用路由表进行路

39、由选择的机制称作表驱动机制 路由表的维持可以手动,也可以自动 手动只适于小型网络,互联网是自动的,是自适应的,路由表的形成和更新,路由表的形成有一个建立和更新的过程 路由表的建立有多种方法 当路由器(或主机)启动时,可以从辅助存储器中得到一个路由表的拷贝 ,当系统运行时,路由表将随时更新 因为在一个互联网上,网络的状态时刻在发生变化,某些设备永久性或暂时性地与互联网发生关联也是经常性的,路由表必须通过更新才能反映这些变化。系统退出时,把更新的路由表还应再写回到辅助存储器中,3路由选择协议,除前面介绍的关于路由表的内容以外,各个路由器上的路由表有没有区别呢? 这些问题与互联网的结构存在着密切关系

40、 由于互联网结构的原因,存在着不同类别的路由器 不同路由器路由表的层次不一样,所采用的路由选择协议也有所区别。,自治系统,互联网的结构早期采用核心结构,后来发展成为自治系统结构。自治系统(Autonomous System ,AS)是一种由多个网络组成的内部结构,由一个独立的组织管理(例如一个国家) 自治系统的拓扑结构、路由协议的选择等都由独立组织自己选择,图中有两个自治系统,自治系统A和自治系统B。在自治系统内部使用内部网关协议统称为 ( Interior Gateway Protocol,IGP );在自治系统外部使用外部网关协议 (Exterior Gateway Protocol,EG

41、P ) 内部网关协议主要有RIP、OSPF,早期还有Hello,另外还有Cisco公司的IGRP、OSI的IS-IS以及Novell的NLSP等 外部网关协议最早期使用EGP,后来又开发了BGP边界网关协议,协议的封装,这些路由选择协议本身都有各自的报文格式。但与ICMP协议报文一样,都被封装在IP协议或UDP报文中 而且,这些协议本身也并不能作为单独的协议层存在 需要说明的是由于早期Internet称路由器(R)为网关(G),所以路由协议有时又称网关协议。,(1)内部网关协议IGP,RIP协议 Hello协议 OSPF协议,RIP协议,路由信息协议(Routing Information P

42、rotocol,RIP)是采用距离向量路由算法的路由选择协议 70年代由施乐公司的帕洛阿尔托研究中心(PARC)设计。最早用于ARPAnet RIP的路由度量值是达到目的站的跳步数,也就是路由器数。最大跳步数量是15,当跳步数为16时网络不可达。 RIP最主要的优点是协议简单,是小规模自治系统的理想选择 但是由于以跳步数作为路由度量值,因此限制了它在不同介质和带宽的网络中使用,而且限制了网络的范围,Hello协议,Hello也是一个古老的IGP,最早用于NSFNET Hello也采用距离向量路由选择算法,但Hello的路由度量值是基于网络的时延,不是基于距离 Hello协议也具有一定的局限性,

43、网络的规模较小,机器数(包括路由器和主机)不能超过256,OSPF协议,开放最短通路优先协议(Open Shortest Path First,OSPF)于1989年开发,是目前应用范围比较广泛的内部路由协议 OSPF协议最主要特点是采用分布式的链路状态算法 在OSPF协议中,所有的路由器都维持一个链路状态数据库 这个数据库是自治系统网络的拓扑结构图 路由度量值可以表示费用、距离、时延和带宽等 每个路由器用链路状态库中的数据算出各自的路由表 当网络拓扑发生变化时,数据库能够很快地更新 OSPF靠路由器之间交换信息维持数据库的变化,从而维持路由表的更新 由于OSPF的许多优点,目前大多数路由器都

44、支持OSPF,得到了广泛应用,(2)外部网关协议BGP,最早期的外部网关协议是EGP(EGP又是对外部网关协议的通称) 而目前都普遍使用边界网关协议(Border Gateway Protocol,BGP) BGP采用距离向量算法,在外部路由器之间交换路由信息 但BGP路由度量值不是距离,而是到目的站的路由信息,也就是说BGP的路由器要周期性地把使用的每一个路由通知目的站 BGP的最初版本BGP-1于1989年6月发布。目前广泛使用的是BGP-4,公布于1995年,84 TCP传输层协议,841 基本概念 842 传输端口 843 UDP 协议 844 TCP 协议 返回,841 基本概念,T

45、CP/IP 协议提供了两种传输服务 一个是类似于OSI TP0 的无连接不可靠的用户数据报协议UDP 一个是类似于OSI TP4 的面向连接,提供可靠服务的传输控制协议TCP 这是两个并列协议,用户可以根据要求使用不同的协议 返回,IP是独立的层次,ICMP和ARP以及RARP协议是IP层的辅助协议,不能看作单独的层,因为它们与其它层间没有上下依赖与服务关系 UDP和TCP并列作为独立的层,在IP层之上,提供对高层不同质量的服务,而这两个协议又直接接受IP层提供的数据报服务,UDP与TCP,由于UDP是个无连接服务协议,所以,UDP非常简练,是一个传输效率极高的传输协议 TCP协议则是一个高可

46、靠性的协议,但协议本身稍显复杂 在实用方面来看,高可靠性固然重要,但是,在某些条件下(通信子网质优)和某种场合(传输质量要求不高)时,高效率显得更重要,842 传输端口,传输层实现主机应用进程间的通信,往往有多个应用进程需要传输层提供服务,如何识别不同的应用进程? 在TCP/IP协议中采用端口,为每一端口分配一个端口号,是应用进程的唯一标识,相当于OSI中的TSAP 在TCP/IP中,用端口号识别不同的应用进程。一个主机可以有216个端口号 UDP和TCP分别使用各自独立的端口号,互相没有关联 返回,熟知端口,对一些常用的应用层服务,都有一个固定的端口号与之对应 这种端口号称熟知端口(Well

47、 Known Port),端口号分配是0255 其它由用户应用程序申请的端口称自动端口,端口数可以达到65536个,按照TSAP的观点,传输层服务访问点有多个 在UDP可以认为是并发进程服务 在TCP可以认为传输层可以为应用进程建立多重传输连接 UDP与TCP的端口系统是独立的,主机A和B的端口号都是400,作为TCP协议中的端口,要与主机C端口21建立连接,以便访问FTP系统。虽然端口号相同,但是它们具有不同的IP地址,这样,自然而然地就可以区分开了,插口,在TCP/IP中把所使用的协议、32bit的IP地址和一个16bit 的端口号合起来称为插口(socket) 如例中的(TCP,10.0

48、.0.2,400)和(TCP,,400)是不同的插口 socket 是一种进程通信机制,843 UDP 协议,UDP是一种无连接的传输服务,所以UDP协议非常简单,只是在IP数据报的基础上增加了一点端口的功能 UDP协议除数据报文中的“校验和”功能外,没有连接,没有确认,未提供检测手段 UDP的真正意义在于高效率,UDP数据传输因为不需繁锁的连接、确认过程,所以可以得到非常高的传输效率 在高质量的物理网络(如局域网)条件下,在信息量较小、交互传输的应用中UDP是一种相当不错的传输协议 在 TCP/IP 协议中,如 TFTP、DNS等许多应用服务都使用UDP协议 返回,UDP数据

49、报文包括首部和数据字段两部分,封装在IP数据报中传输 。如图8-24所示为UDP数据报,信源端口和信宿端口就是信源与信宿的端口号,各占两个字节。UDP校验和字段用于防止UDP数据报在传输中出错。与IP 数据报不同,UDP校验和既校验首部,也校验数据,844 TCP 协议,每当发送数据段之前,TCP 协议都必须保证先建立可靠的连接 然后通过确认重发和窗口机制等对传输的数据段进行有效控制,以达到高可靠性的目的 TCP 层的数据单元称为段,段不定长 TCP 以一种字节流的方式传输数据段 所谓字节流,就是一个字节、一个字节地按照字节序号传输。 返回,1传输连接的管理,TCP 传输数据的过程与凡是面向连

50、接的传输过程类似,分为三个阶段:即连接的建立、撤除和数据传输 应用进程与 TCP 层通过交互,在TCP 层完成 TCP 传输服务过程 为保证可靠的 TCP连接,采用了所谓三次握手的方法,连接的释放过程也有类似的方法 在连接过程中,TCP 解决了连接应用进程端点标识问题,即端口 在连接过程中,通过交互给出一定的协商参数 TCP 在数据传输时,采用全双工的方式 TCP层对应用层的应用进程还可以提供多路复用及分用的功能,2确认与重发,TCP 必须保证数据的可靠传输 TCP通过确认与重传机制完成数据段的可靠传输 TCP 的基本传输单元是 TCP报文段 TCP每发送一个报文段,都要等待信宿端的确认信息并

51、开始定时 若在定时时间内收到了确认信息才能发送下一个数据段 若未收到确认信息,就必须重发,字节流,虽然TCP的基本传输单元是TCP数据段,但TCP的确认机制不关心段 TCP把数据段中的数据看作是字节流,并对每一个字节进行编号 在连接建立时,双方要协商初始序号,然后TCP把第一个报文段中的第一个数据字节的序号,放在TCP首部的序号字段中 TCP监视字节流的发送,接收方按字节确认,确认收到数据的最高序号,指出期望接收的字节是最高序号加1。 确认信息是从全双工数据报文中顺便捎回来的。发送方收到确认后,下一个段的序号就从这个最高序号加1开始,3拥塞控制,TCP采用滑动窗口机制实施拥塞控制,拥塞发生时,

52、路由器将抛弃数据 所谓窗口可以理解为发送与接收方设置的缓冲区,缓冲区的大小决定了窗口的大小。双方在进行连接时的协商参数就包括了窗口参数。 TCP 如何发现拥塞? 一是通过 ICMP 源抑制报文了解,二是报文丢失的现象 为迅速抑制拥塞,TCP 采取以几何级数迅速减小拥塞窗口的方式,同时加大重传定时 T,直至拥塞结束 然后再按算术级数不断增大拥塞窗口,直至恢复到原来的传输速率,4TCP 报文格式,TCP 报文也分为首部和数据段两部分,首部长度可变,用“数据偏移”字段指示首部长度,各字段意义如下,数据与校验和字段的意义同于UDP,其余各字段意义如下: 信源端口 占2字节,发送端口号 信宿端口 占2字

53、节,接收端口号 发送序号 占 4 字节,是发送数据第一个字节的序号 确认序号 占4字节,期待接收的字节序号 数据偏移 占4比特,指出以32bit为单位的首部长度 保留 占6比特,留作今后用,目前应设置为0 选项 长度可变,目前只规定了“最大报文段长度”选项 窗口 占2字节,指接收窗口的大小,单位为字节,码位共有6bit,格式如图8-26所示,紧急比特URG(Urgent)当URG1时,表明此报文段应尽快传送而不必排队,此时要与首部中的紧急指针字段配合使用,紧急指针指出在本报文段中的紧急数据的最后一个字节序号。 确认比特ACK 只有当ACK1时确认序号字段才有意义。 急迫比特PSH(PUSH )

54、当PSH1时,指示应迅速将本段发送出去,而不必等收集较多的字节数据在一段里。 重建比特RST(Reset)当RST1时,表明出现严重错误,必须释放连接,然后再重新进行传输连接。 同步比特SYN 当SYN1、ACK0时,表明这是一个连接请求报文段。若SYN1、ACK1,表明这是一个连接确认报文段。 终止比特FIN(Final)当FIN1时,表示报文字段发送完毕,要求释放连接,85应用层协议,851客户机服务器模型 852 远程登录Telnet协议 853文件传输FTP协议 854 电子邮件协议 855域名解析服务DNS 856动态主机配置DHCP服务 返回,851客户机服务器模型,什么是客户机服

55、务器应用模式? 客户机服务器模式是网络中应用程序(进程)间相互作用的主要模式,与之对应的是主机/终端模式 在网络上,客户机和服务器分别是两个应用程序(进程) 客户机向服务器发出服务请求,服务器作出响应,完成客户机所要求的服务 客户机服务器模式是目前企业网络非常重要的一种网络计算模式 许多网络操作系统和数据库系统都提供了客户机服务器模式的应用功能 返回,1.进程,在网络多用户系统中,应用程序的存在和活动形式称为进程 进程是运行中的应用程序的实例 应用程序间的通信就是进程的通信,2.进程通信要解决的问题,在网络中进程通信要解决两个问题 第一个问题是不同主机上的进程的标识问题 这个问题,在TCP协议

56、一节中已经进行了讨论。网络中标识进程使用socket即插口。插口包括协议、主机地址和端口,在TCP/IP协议中称为半相关(half association)。有了这个半相关,再加上通信对方的另一个半相关组成一个全相关就可以实现通信了 网络中进程通信的第二个问题是进程间相互作用的问题 在网络中进程间相互作用采用的是客户机/服务器(Client/Server,C/S)模式,3为什么采用C/S,之所以要使用这种模式的原因是: 在网络中应用程序间的作用是异步的,作为服务器的应用程序应该时刻等待客户程序提出的请求,这样才能适应网络系统的分布性。 另外在网络上的计算机的资源是不均等的,这些资源包括信息资源

57、和计算能力资源等,有些计算机拥有比较多的资源,C/S应用,理解这种模式对于了解网络上的应用非常重要 例如,当需要使用某种应用程序时,你首先就应该考虑:这种应用是否采用客户机/服务器模式 如果是,那么你的应用程序必须要有服务器环境 非常实际的例子是:当我们使用 Outlook Express软件发送电子邮件的时候你首先就应该想到,这个软件只是邮件的客户程序,如果没有提供邮件服务器程序时,你的Outlook Express是毫无用武之处的 在TCP/IP和Internet的网络中,这样的例子数不胜数,852 远程登录Telnet协议,Telnet 是一种远程登录程序 我们把终端与自己主机系统称本地

58、系统,而把要进行远程登录的主机称远程系统 当本地用户登录到远程系统的主机上以后,如有必要可以享受与远程系统用户终端同等的待遇。也就是说Telnet 使得本地终端和远程终端的访问不加任何区分。 返回,2Telnet基本原理,Telnet是典型的客户机/服务器模式 在本地系统运行客户程序,在远程系统需要运行Telnet服务器程序 Telnet 通过TCP协议提供传输服务,端口号是23 当本地客户程序需要登录服务时,通过TCP建立连接,远程登录服务de三个步骤,第一步,当本地用户在本地系统登录时建立TCP连接。 第二步,将本地终端上键入的字符传送到远程主机。 第三步,远程主机将操作结果回送本地终端,

59、理解Telnet的原理,第一个方面是服务器程序是如何工作的 第二个方面是Telnet协议如何解决不同的终端之间对数据格式的不同解释 第三个方面是有关选项协商的问题,5Telnet应用,必须有Telnet服务器提供 使用Telnet首先应该获得一个客户软件 如常用的有NetTerm、S-Term和Cterm等。Cterm是一个国内广泛使用的中文软件 Windows98也内置一个Telnet客户软件,短小精悍、非常好用 在Internet上目前主要用Telnet登录访问BBS站点 远程操作主机,如托管的WEB服务器 网络设备配置,如路由器的配置,853文件传输FTP协议,文件传输协议FTP可以在本地和远程系统之间通过互联网进行远程传输 首先获得一个远程文件的本地拷贝,进行修改以后,再通过文件传输协议回传到远程系统,实现对远程文件的操作。早在ARPAnet 时期就有了文件传输程序,后来成为目前应用极其广泛的FTP协议。 通过FTP协议可以在互联网中互相传输文件。FTP不但可以传输文本文件,还可以传输二进制文件 通过FTP可以把用户制作的网页上传到WEB站点进行发布 在互联网发展的初期,FTP是互联网上的几个应用之一 现在,在互联网的通信量中FTP

温馨提示

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

评论

0/150

提交评论