第2章协议模型与网络协议_第1页
第2章协议模型与网络协议_第2页
第2章协议模型与网络协议_第3页
第2章协议模型与网络协议_第4页
第2章协议模型与网络协议_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

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

文档简介

第1页第2章协议模型与网络协议本章概述本章的学习目标主要内容第2页本章概述通信双方就像调制和解调一样互逆,实现互逆操作的是有双方的子实体对象之间完成的,也就是说发送方(N)子实体的操作,只有接收方(N)子实体才能实施逆操作,其他子实体的操作也是一样的。这主要是因为只有同一层次子实体之间采用的通信语言是相同的,即每个子实体都有自己独特的通信协议,只有对等层的子实体才能理解。本章全面研究协议模型和现实的网络协议。第3页本章的学习目标掌握协议模型的结构功能理解TCP/IP网络协议集理解IP协议格式理解IP地址格式与分类掌握其他网络协议第4页主要内容2.1协议模型2.2TCP/IP网络协议2.3IP协议2.4其他网络协议2.5本章小结2.1协议模型由一个或多个服务对象构成的(N)服务提供者,提供(N)服务。为了服务的提供,这些对象使用(N-1)服务。如果该提供者包含一个以上的服务对象,(N-1)服务用来使它们按照已定义的、被称为协议的一组规则、数据格式和功能,进行协作。然而使用了(N-1)服务和特定的协议这一点,对这些服务对象是隐蔽的。因此对(N)服务用户也是透明的。第5页服务提供者的分解第6页2.1.1协议行为完成协议的对象的行为通常按有限状态机模型设计。有限状态机存在着不同的变体(Holzmann,1991),从协议的功能和目标出发,使用有限状态机的定义和组成成分。一个有限状态集;一个有限的转换规则集;一个有限谓词集;一个有限外来事件集;一个有限外出事件集。第7页一个(N)服务对象的环境第8页2.1.2协议数据协同工作的服务对象用协议数据单元(PDU)交换信息。PDU还有一些其他的常用表示法,这些表示法依赖于所处的OSI层次。一个PDU通常由头部、有效载荷和尾部(trailer)三个字段组成。所有的字段都可以用来传递协议控制信息(protocolcontrolinformation,PCI)。但服务数据单元仅能放在有效载荷字段中传输。根据PDU是否携带服务数据,我们把它们分成两种类型:数据PDU和控制PDU。第9页协作的(N)服务对象与它们的(N)服务用户第10页2.1.3协议功能一个协议除了行为和数据格式,也规定协同的服务对象应执行的功能。这些协议功能在调用一个对象的操作时执行,或者在一个有限状态机模型中,出现一个外来事件时执行。一个服务对象的协议功能,通常要求所有与之通信的服务对象具有协同的协议功能。第11页第12页主要内容2.1协议模型2.2TCP/IP网络协议2.3IP协议2.4其他网络协议2.5本章小结2.2TCP/IP网络协议因特网在不同层次使用了一组不同但互补的协议,这组协议常被称为因特网协议组。虽然它包括了一百多个协议,但最流行的是网际协议(IP)和传输控制协议(TCP),而因特网协议组也被称为TCP/IP协议集。TCP/IP也是大多数中等和大型网络的协议选择。NovellNetWare、UNIX和WindowsNT网络都可以实现TCP/IP,在不断增长的网络上和使用客户机/服务器或者基于Web的应用中更是如此。第13页2.2.1因特网概述

1.因特网组织因特网技术标准化,控制TCP/IP协议族,定制新的标准以及其他类似的事情和技术,是由四个非盈利性国际团体监督、协调及演化的。因特网协会(ISOC,InternetSociety),因特网体系结构委员会(IAB,InternetArchitectureBoard),因特网研究部(IRIF,InternetResearchTaskForce),因特网工程部(IETF,InternetEngineeringTaskForce)为帮助IETF主席,又成立了Internet工程指导小组(IESG,InternetEngineeringSteeringGroup)。第14页2.因特网协议网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。TCP/IP是因特网协议组的核心协议族,是一组不同层次多个协议的组合。一个管理机构为接入互联网的网络分配IP地址。这个管理机构就是互联网络信息中心(InternetNetworkInformationCentre),称作InterNIC。InterNIC只分配网络号,主机号的分配由系统管理员来负责。我国的IP地址和DNS域名管理,是由中国互联网络中心/负责。第15页3.客户-服务器模型网络中计算机之间的通信,实质上是计算机上进程的通信,大部分网络应用程序在编写时都假设一端是客户,另一端是服务器,其目的是为了让服务器为客户提供一些特定的服务。可以将这种服务分为两种类型:重复型或并发型。第16页重复型服务器交互步骤I1.等待一个客户请求的到来。I2.处理客户请求。I3.发送响应给发送请求的客户。I4.返回I1步。重复型服务器主要的问题发生在I2状态。在这个时候,它不能为其他客户机提供服务。第17页并发型服务器交互步骤C1.等待一个客户请求的到来。C2.启动一个新的服务器来处理这个客户的请求。在这期间可能生成一个新的进程、任务或线程,并依赖底层操作系统的支持。这个步骤如何进行取决于操作系统。生成的新服务器对客户的全部请求进行处理。处理结束后,终止这个新服务器。C3.返回C1步。第18页2.2.2TCP/IP协议体系

1.TCP/IP体系结构在20世纪60年代后期,ARPA开始着手组建ARPANET,希望能够找到一种通用的方式,使得大学、研究所和DoD的计算机能够通过WAN进行相互通信,即能够对ARPANET进行普遍的访问。ARPA启动了一个研究项目对之进行改进。他们所开发的协议实际上是两个协议的组合,即传输控制协议(TCP)和网际协议(IP)。第19页TCP/IP体系结构图第20页2.网络接口层协议TCP/IP网络接口层细分为逻辑链路层和物理层接口层。逻辑链路层协议适配不同的子网特征,以便为高层提供统一的子网接口,链路层存在着一些将IP映射为特殊网络类型的适配协议还存在着一个独立于IP的专用于串行链路的适配协议,称为点到点协议(Point-to-PointProtocol,PPP)。第21页4.网络层协议互联网络层是整个体系结构的关键部分,它的功能是使主机可以把分组发往任何网络,并且是分组独立地传向目的地。网络层协议负责一个特殊的工作,实现中继、差错报告、组管理、资源预留或路由选择等功能。包括网际协议(IP)网际组管理协议(IGMP),网际控制报文协议(ICMP),资源预留协议(RSVP),网际数据流协议版本2(ST2),边界网关协议(BGP),开放最短路径优先(OSPF),路由选择信息协议(RIP)第22页5.传输层协议传输层协议通过增加功能改进端到端的网络服务,诸如差错控制提供了可靠通信,多路分解可同时支持多个应用等传输层常用协议。传输控制协议(TransmissionControlProtocol,TCP),用户数据报协议(UserDatagramProtocol,UDP),通用消息事务协议(VersatileMessageTransactionProtocol,VMTP),网络块传送(NETworkBlockTransfer,NETBLT),多点播送传输协议(MulticastTransportProtocol,MTP),可靠数据协议(ReliableDataProtocol,RDP)第23页6.应用层协议应用层协议使用适当的传输协议来支持基本的面向应用服务,例如文件传送、远程登录和电子邮件等应用层常用协议。自举协议(BOOTP),动态主机配置协议(DHCP),ECHO,DISCARD,TIME由,CHARGEN,文件传送协议(FTP),平常文件传送协议(TFTP),远程通信网络(TELNET),简单网络管理协议(SNMP),简单邮件传送协议(SMTP),域名系统(DNS)。第24页第25页主要内容2.1协议模型2.2TCP/IP网络协议2.3IP协议2.4其他网络协议2.5本章小结2.3IP协议因特网中随处可见的IP协议有两个著名的版本。虽然从版本编号来看,两个版本的IP之间是兼容演变或扩展,但实际上两个版本是完全不同的。第26页2.3.1IP版本4IP版本4(IPv4)使用可变长的头部,但无尾部,由14个字段组成的头部结构,最小IP头部长度为20字节。如图2-11所示,IP分组头的长度为4个字节(32位)的整数倍。第27页IP分组图第28页1.版本号(Version)该4位段表示协议支持的IP版本号。·在处理IP分组之前,所有"软件都要检查分组的版本段,以便保证分组格式与软件期待的格式一样。如果标准不同,机器将拒绝与其协议版本不同的IP分组。本书给出的是对版本为4的IP的描述,版本1-3现已过时不用。第29页2.互联网分组头长HeadLength该4位表示IP分组头的长度,以32个二进制位(4个字节)为单位,取值的范围是5-15(缺值是5)。由于IP分组头的长度是可变的,故这个段是必不可少的。第30页3.服务类型(TypeOfService)该8位段说明分组所希望得到的服务质量。服务类型段的头3位表明IP分组的优先权,该值在0(正常)-7(网络控制)之间变化,数值越大则IP分组越重要。但大多数TCP/IP产品和实际使用TEP/IP的所有硬件都忽略该3位域,用相同的优先权处理所有IP分组。接下来的3位控制网络的延迟时间、吞吐率和可靠性,如果置零则表示常规服务,如果置1则分别表明短延迟、高吞吐率和高可靠性,最后两位未使用,置成零即可。第31页4.总长度(Length)该16位段给出IP分组的总长度,单位是字节,包括分组头和数据的长度。数据段的长度可以从总长度减去分组头长度计算出来。由于总长度段有16位,所以最大IP分组允许有65535个字节。但这样大的IP分组在现有物理网络上传输不现实。协议规定,所有主机和路由器至少能支持576字节的分组长度。在本节的稍后我们将会说明,IP分组在网络传送过程中被分成报片的情况下,分片后形成的"分组中的总长度段指的是单个报片的总长度,而不是原先IP分组的总长度。第32页5.标识符(Identify)16位的标识符段包含一个整数,唯一地标识该IP分组。IP分组在传输时,其间可能会通过一些子网。这些子网允许的最大协议数据单元(PDU)长度可能小于该IP分组的长度。为了处理这种情况,IP为以数据报方式传送的IP分组提供了分片和重组的功能。这也正是IP模块的主要功能之一。第33页当路由器准备将IP分组发送到网络上,而该网络又无法将整个分组一次发送时,路由器必须将该IP分组分成小块(亦即分组),使其长度能满足这一网络对数据分组的限制。IP分组可以独立地通过各个路径发送,使得分片后的IP分组直至到达目的地主机才可能汇集到一起,并且甚至不一定以原先的次序到达。这样,所有进行接收的主机都要求支持重组能力。第34页6.标志(Flags)3位的标志段含有控制标志,如图2-13所示,3位中的低序2位控制IP分组的分片,这2位分别称作不可分片位和还有分组片位。当不可分片位置1时,规定不要将IP分组分片。仅当完整的IP分组才是有用的情况下,应用程序才可选择禁止分片。标志段的低位标明这个分组片包含的数据是取自原始IP分组中间,还是取自原始IP分组的最后。第35页标志段的含义图第36页7.分组片偏移(报片偏移)13位的分组左偏移段标明当前分组片在初始"分组中的位置。为了重组"分组,报宿必须得到从偏移0开始,直到最高偏移值之间的所有分组片。分组片不需要按顺序到达,接收分组片的报宿与分割IP分组的路由器之间不进行通信,报宿也能重新组合IP分组。分组片偏移以64位(8个字节)为单位,取值范围0-8191,默认值是0。第37页8.生存时间(TTL)8位的生存时间段指定IP分织能在互联网中停留的最长时间,以秒为单位。当该值降为0时,IP分组就应被舍弃。该段的值在IP分组每通过一个路由器时都减去1。该段决定了源发IP分组在网上存活时间的最大值、它保证IP分组不会在一个互联网中无休止地往返传输,即使在路由表变乱形成路由器循环为IP分组选择路由时也不要紧。第38页9.协议(Protocol)八位的协议段表示哪一个高层协议将用于接收IP分组中的数据。高层协议的号码由TCP/IP中央权威管理机构予以分配。例如,该段值的十进制表示对应ICMP(互联网控制报文协议)是1,对应传输控制协议(TCP)是6,对应EGP(外部网关协议)是8,对应用户数据报协议(UDP)是17,对应ISO传输层协议第4类(ISO-TP4)是29。第39页10.校验和(Checksum)16位的分组校验和段保证IP分组头值的完整性,当IP分组头通过路由器时,分组头发生变化(例如生存时间段值减1),校验和必须重新计算。校验和的计算十分简单。首先,在计算前将校验和段的所有16位均置成0,然后IP分组头从头开始每两个字节为一个单位相加,若相加的结果有进位,那么将和加1。如此反复,直到所有分组头的信息都相加完为止,将最后的值对1求补,即得出16位的校验和。第40页11.源地址和12.目标地址32位的源地址段包含发送IP分组的源主机的IP地址。32位的目标地址段包含IP分组的目的地主机的IP地址。第41页13.任选段(variableOption)可变长的任选段提供了一种策略,允许今后的版本包含在当前设计的头中尚未出现的信息,也避免使用固定的保留长度,从而可以根据实际需要选用某些头部登录项。第42页14.填充段(Pad)IP分组头必须是4个字节长的整数倍。填充段是为了使有任选项的IP分组满足4个字节长度的整数倍而设计的,通常用0填人填充段来满足这一要求。填充段的有无或所需要的长度取决于选择项的使用情况。第43页2.3.2IP版本4地址基本格式IPv4地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a1.a2.a3.a4)的形式,其中,a1,a2,a3,a4是0至255之间的十进制整数。例如点分十进IP地址(23),实际上是32位二进制数(11010010.00101110.01100110.01111011)。IP地址范围最小地址值,最大的地址值55。点分十进制数表示的IP地址格由网络地址和主机地址组成。第44页IPv4分类第45页IPv4地址A类地址的最高位为0和随后的7位是网络地址部分,剩下的24位表示网内主机地址。这样在一个互联网络内可能会有126个A类网络,而每一个A类网络中允许有1600万个节点。非常大的地区网,如美国的MILNET和某些很大的商业网,才能使用A类地址。B类地址的最高两位10和后随的14位是网络地址部分,剩下的16位表示网内的主机地址。这样,在某种互联环境下可能会有大约16,000个B类网络,而每个B类网络中可以有65,000多个节点。一般大单位和大公司营建的网络使用B类地址。第46页IPv4地址C类地址的最高三位110和后随的21位是网络地址部分,剩下的8位表示网内主机地址。这样,一个互联网将允许包含200万个C类网络,每一个C类网络中最多可以有254个节点,较小的单位和公司都使用C类地址。第47页D类地址用于在IP网络中的组播(multicasting,又称为多播广播)。D类地址的前4位恒为1110,预置前3位为1意味着D类十进制地址开始于128+64+32等于224。第4位为0意味着D类十进制地址的最大值为128+64+32+8+4+2+1为239,因此D类地址空间的范围从到55。E类地址保留作研究之用。因此Internet上没有可用的E类地址。E类地址的前4位恒为1,因此有效的十进制地址范围从至55。第48页2.3.3IP版本6当前采用的IP协议是它的第4版(1PV4),IPV5的称号被赋给了一个实验的称为流协议的面向连接的互联网协议。现在人们普遍意识到,IPV4的剩余生命期已经屈指可数了,并且最终要被一个称为IPV6的新协议替代。第49页IPv6IPv6使用了固定长度为40字节的头部,可附接不同的扩展头部。每个头部的长度是8字节的倍数。IPv6没有定义尾部。在IPv6中,包头以64位为单位,且包头的总长度是40字节。IPv6协议为对其包头定义了以下字段:位为单位,且包头的总长度是40字节,第50页IPv6第51页IPv6协议包头版本:长度为4位,对于IPv6,该字段必须为6。类别:长度为8位,指明为该包提供了某种“区分服务”。RFC1883中最初定义该字段只有4位,并命名为“优先级字段”,后来该字段的名字改为“类别”,在最新的IPv6Internet草案中,称之为“业务流类别”。该字段的定义独立于IPv6,目前尚未在任何RFC中定义。该字段的默认值是全0。第52页流标签:长度为20位,用于标识属于同一业务流的包。一个节点可以同时作为多个业务流的发送源。流标签和源节点地址唯一标识了一个业务流。在RFC1883中这个字段最初被设计为24位,但当类别字段的长度增加到8位后,流标签字段被迫减小长度来作补偿。净荷长度:长度为16位,其中包括包净荷的字节长度,即IPv6头后的包中包含的字节数。这意味着在计算净荷长度时包含了IPv6扩展头的长度。第53页下一个头:这个字段指出了IPv6头后所跟的头字段中的协议类型。与IPv6协议字段类似,下一个头字段可以用来指出高层是TCP还是UDP,但它也可以用来指明IPv6扩展头的存在。跳极限:长度为8位。每当一个节点对包进行一次转发之后,这个字段就会被减1。如果该段达到0,这个包就将被丢弃。IPv4中有一个具有类似功能的生存期字段,但与IPv4不同,人们不愿意在IPv6中由协议定义一个关于包生存时间的上限。这意味着对过期包进行超时判断的功能可以由高层协议完成。第54页源地址:长度为128位,指出了IPv6包的发送方地址。目的地址:长度为128位,指出了IPv6包的接收方地址。这个地址可以是一个单播、组播或任意点播地址。如果使用了选路扩展头(其中定义了一个包必须经过的特殊路由),其目的地址可以是其中某一个中间节点的地址而不必是最终地址。第55页第56页主要内容2.1协议模型2.2TCP/IP网络协议2.3IP协议2.4其他网络协议2.5本章小结2.4其他网络协议

2.4.1IPX/SPX协议体系

1.IPX/SPX与OSI模型的比较IPX/SPX协议群包含了许多属于OSI模型不同层的子协议,但子协议个数不如TCP/IP协议群的子协议多。由于这个原因,一般不对IPX/SPX分配它自己的通信模型。IPX协议对应于OSI

温馨提示

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

评论

0/150

提交评论