共享资料1第一讲网络互联概念、体系结构与协议——1.网络互联的动机——社会的进步和科技的发展,使得人们对信息的共享在广度与深度两个方面都提出了更高的要求,这就是网络互联的主要动机,但是,许多网络都是独立的实体,仅为某个集团服务。更重要的是,没有一个网络能满足所有的用途,因此,在单一的硬件技术基础上不可能建立一种通用网络。——为了实现各种网络的互联,国际标准化组织(ISO)制定了开放系统互联(OpenSystemInterconnectin,OSI)参考模型。所谓开放,就是指只要遵循OSI标准,一个系统就可以和位于世界上任何地方的同样遵循这一标准的其他任何系统进行通信。OSI模型提供了一个讨论不同网络协议的参考点。——尽管OSI的体系结构从理论上讲是比较完整的,其各层协议也考虑得很周到,但实际上,完全符合OSI各层协议的商用产品却极少进入市场,远远不能满足各种用户的需要。而使用TCP/IP协议的产品却大量涌入市场,几乎所有的工作站都配有TCP/IP协议,这就使得TCP/IP成为计算机网络的事实上的国际标准。——2.OSI参考模型——OSI参考模型采用了如图1所示的七个层次的体系结构。各层的主要任务为:共享资料2————a.物理层:在通信信道上传输比特流;——b.数据链路层:为网络层提供无差错的数据传输;——c.网络层:控制子网的操作;——d.运输层:提供端点间可靠、透明的数据传送,提供端到端的差错控制和流控制;——e.会话层:提供不同主机间通信的应用进程之间的建立,组织和协调;——f.表示层:解决用户信息的语法表示问题;——g.应用层:包含了一系列经常需要的协议。——3.TCP/IP参考模型共享资料3——TCP/IP参考模型见图2,其中,主机网络层指出应用哪些协议可以传输IP分组;网络互联层的主要任务是使主机发送传输分组数据到网络并独立地传送到目的地;运输层的任务是提供源和目的主机对等实体间的会话;应用层包含所有的高层协议。第二讲物理网络协议——1.物理层——物理层主要考虑的是怎样才能在开放系统的传输媒介上传输各种数据的比特流。它的作用是屏蔽不同传输媒介及不同通信手段之间的差异,使数据链路层感觉不到这些差异,而只需考虑如何完成本层的协议和服务,不必考虑网络具体的传输媒介是什么。——传输媒介的物理特性有以下四个方面:——a,机械特性:说明接口所用接线器的形状和尺寸、引线数目和排列,固定和锁定装置等;——b.电气特性:说明在接口电缆的哪条线上出现的电压应为什么范围;——c.功能特性:说明某条线上出现的某一电平的电压表示何种意义;——d.规程特性:说明对于不同功能的各种可能事件的出现顺序。——物理层的主要功能是信号的调制解调、前缀的生成与去除(以供同步)、比特流的传输与接收。——2.数据链路层共享资料4——帧是在数据链路层上发送方与接收方根据双方的协议按序排列的比特流,帧同步是指接收方应当能从收到的比特流中准确地区分出一帧的开始和结束在什么时刻。帧按不同网络体系结构创建(如Ethernet、ARCNET、TokenRing)。每种网络结构有其独特的帧类型。帧寻址用介质访问控制(MAC)地址来定义,MAC地址一般由制造商编程到网络接口设备中,用户不能改变。——数据链路层的主要功能是提供一个或多个服务访问点(SAP);传输时,将数据组成帧并加上地址和错误识别域;接收时,将数据拆包并实现地址识别和错误识别;管理传输媒介访问。第三讲Internet层——物理层和数据链路层并不属于TCP/IP协议,它们仅实现了同一物理网络内的帧传输。为了实现网络互联,必须用路由器把彼此独立的网络互联起来。路由器应能在不改变所连接的子网的网络结构前提下提供网络间的链路,为连到不同网络的端系统的进程提供路由和数据递交功能。TCP/IP协议实现了网络间的互联,它由一组协议簇组成,其中最主要的协议是网际协议(IP)和传输控制协议(TCP)。——为了在互联网上投递IP数据报,首先要解决互联网上的寻址问题。各种网络之间的寻址方式往往是不相同的。在同一网络内物理地址与接口硬件有关,当把接口移到新机器上或替换失效的硬件接口将改变机器的物理地址。两个需要通信的双方无法依赖不兼容的随时可能改变的物理地址来通信。为此,TCP/IP协议采用了IP地址方案。——1.IP地址——TCP/IP使用32位的二进制数作为通用的机器标识符,称为IP地址(InternetProtocolAddress)。32位IP地址被分成前缀(Prefix)与后缀(Suffix)两个部分。前缀表示该计算机所接入的物理网络,后缀表示该物理网络上的某特定主机。共享资料5——为了满足不同规模的物理网络对地址的需求,将IP地址分成五类(见图3)。其中A类、B类和C类用作主机地址(HostAddresses),称为主要类别(PrimaryClasses),根据网络规模分给相应类别的IP地址;D类是多播地址(MulticastAddress);E类保留为今后使用。——为了易于理解,IP地址的表示采用点分十进制表示法(DottedDecimalNotation),即每8位二进制数值用十进制数表示,且每个量之间用一个点分开。——为了保证所分配的IP地址在Internet中的唯一性,Internet编号分配管理机构IANA(InternetAssignedNumberAuthority)对所分配的编码有最终控制权。当一个组织加入Internet时,可以从Internet网络信息中心INTERNIC(INTERnetNetworkInformationCenter)那里获得网络地址。——IP地址是指向网络连接的。因此,多地址主机(MultiHomedHost)和路由器的每一个连结有一个地址。除了指向连接的地址外,IP还有如下特殊地址:——a.网络地址(NetworkAddress):IP把主机号的所有位都为“0”的地址保留给网络本身;——b.定向广播地址(DirectedBroadcastAddress):IP把主机的所有位都为“1”的地址指定为定向广播地址;共享资料6——c.有限广播地址(LimitedBroadcastAddress):由32个“1”组成,它只向本地网络广播;——d.本主机地址(ThisComputerAddress):由32个“0”组成,仅在系统启动时允许使用,并且永远都不是有效目的地址;——e.回送地址(Loopback):用于检测网络应用软件,允许在一台计算机上进行通信试验,它永远不能在一个网络上出现。——2.捆绑协议地址——IP地址的分配是独立于机器的物理硬件地址的,为了在物理网络上传送分组给下一跳(可以是目的地或另一个路由器),下一跳的IP地址必须转换成它所对应的物理地址,并用这个物理地址传送该帧。——由IP地址确定其对应的硬件地址的过程叫地址解析(AddressResolution),地址解析算法可以分成以下三种基本类型。——a.表查询(TableLookup):将协议地址与其对应的物理地址进行捆绑存入内存的一个表中,当需要进行地址解析时,由软件在表中进行查找。——b.紧密关联形式计算(Closed-FormComputation):分配给计算机的协议地址是根据其物理地址经过仔细挑选的,使得计算机的物理地址可以由它的协议地址经过基本的逻辑和算术运算计算出来。——c.信息交换(MessageExchange):位于同一物理网络的计算机通过交换信息进行地址解析。——TCP/IP协议包含了地址解析协议(ARP)。ARP标准定义了两种基本信息类型:请求与响应。当一台主机要求转换一个IP地址时,它广播一个含有该IP地址的ARP请求,如果该请求与一台机器的IP地址匹配,则该机器发出一个含有所需物理地址的应答。应答是直接发给广播该请求的机器的。共享资料7——在使用ARP的计算机上都保留了一个高速缓存,用于存放最近获得的IP地址到物理地址的绑定,在发送分组时,计算机先到缓存中寻找所需的绑定,如没有,则发出一个ARP请求。接收方在处理ARP分组之前,先更新它们缓存中发送方的IP地址到物理地址的绑定信息,再进行响应或抛弃。——3.IP数据报与数据传输——在TCP/IP互联网上传输的一个分组叫IP数据报(Datagram),每个数据报包含一个头部和位于其后的数据(见图4)。在数据报头部的源和目的地址都采用IP地址。——位于数据报传输路径上的每一个路由器从数据报头部提取目的地址,由目的地址在路由器的路由表中查找发往目的地的下一跳地址,然后路由器将数据报传递给下一跳,直至到达目的地。——路由表有三个基本字段:目的网络地址字段,目的网络地址的地址掩码字段和到达目的网络的下一跳字段。在数据报头部的目的地址总是数据报的最终目的地址。目的地址与其对应的掩码“按位与”操作,得出目的地址主机所在的网络的网络地址。然后,根据这个网络地址,决定下一跳地址,通过一个特定的连接,将数据发给下一跳。——IP数据报首部格式包含以下内容:共享资料8——a.版本号(Vers),包含了生成该数据报的IP协议的版本信息,它用来证实发送方,接收方和它们之间的所有路由器都同意的数据报格式。——b.首部长度(HeaderLength)字段,给出了以32位字长为单位的首部长度。——c.服务(ServiceType)字段,包含5个子字段,3个比特的优先级干字段指明本数据报的优先级,允许发送方表示本数据报的重要程度。优先级的值从0(普通优先级)到7(网络控制),D、T和R位表示本数据报所希望的运输类型,这些位的值为1时,D代表低时延,T要求高吞吐量,R要求高可靠性。——d.总长度(TotalLength)字段,给出了以8位组为单位的IP数据报长度。——e.寿命(TimetoLive)字段,设置了该数据报在互联网中允许存在的时间(秒)或允许经过的路由器的数目。它是一个介于1~255之间的整数。——f.首部校验和(HeaderChecksum)字段,用于保证首部数据的完整性。IP校验和的计算是把首部看成一个16位的整数序列,对每个整数分别计算其二进制反码,然后相加,再对结果计算一次二进制反码而求得。为了计算校验和,假定首部校验和字段为0。——g.源站地址(SourceIPAddress)和目的站地址(DesinationIPAddress)字段,包含了数据报的(原始)发送方和(最终)接收方的32位IP地址。——h.选项(IPOptions)字段,增加了IP数据报的灵活性。——i.填充(Padding)字段,依赖于选项,它填充“0”以保证数据报的长度是32位的整数倍。——4.IP封装、分片与重组共享资料9——数据报作为物理帧的数据封装在特定的物理帧内,通过帧的传输来实现数据报的传输。数据帧头部的目的地址是数据报送往目的地的下一跳的物理地址。——数据报在源站进行封装,将物理帧传给下一跳,接收者从物理帧中的数据区提取数据报,丢掉帧的头部,然后采用下一个物理网络的帧格式进行封装,又传给下一跳,直至目的地。——MTU(MaximumTransmissionUnit)是指一个特定的网络所允许的物理帧的最大数据量,当路由器收到一个大于其要转发的网络的MTU的数据报时,路由器必须将这个数据报分成可通过该网络的数据报片,每一片仍采用数据报的格式,且保留原数据报的标识符,但只包含原数据报的部分数据,在需要时,数据报片可以再次分片。——在一个TCP/IP互联网上,一旦数据报分片后,每片都作为独立的数据报传送,一直等到到达目的网点的主机后,才对它们重组。目的网点的主机通过数据报首部的标识符来查证各片是否为同一个数据报的分片,且根据片偏移及标志来控制分片和重组。目的主机首次接到某一数据报的一个分片时,就启动一个计时器,如果在收到所有分片之前计时器超时,则接收机废弃已收到的分片,不对数据报处理。——5.差错报告机制——为了让互联网中的路由器报告错误或提供有关意外情况的信息,设计者在TCP/IP中加入了一个特殊用途的报文机制,叫做Internet控制报文协议(ICMP)。——ICMP