计算机网络建设3-第三章osi-tcpip.ppt
1999,Cisco Systems,Inc.,1-1,第3章 计算机网络体系结构,第3章计算机网络体系结构,教学内容3.1 网络体系结构3.2 开放系统互连参考模型3.3 TCP/IP参考模型3.4 OSI参考模型与TCP/IP参考模型的比较,3.1网络体系结构 网络体系结构基本概念,1、网络协议的概念 计算机网络由多个互联的结点组成,结点之间要不断地交换数据和控制信息。要做到有条不紊地交换数据,每个结点都必须遵守一些事先约定好的规则。这些为网络数据交换而制定的规定、约束与标准被称为网络协议(Protocol)。2、组成网络协议三个要素:1)语法:用户数据与控制信息的结构和格式。2)语义:需要发出何种控制信息以及完成的动作和做出的响应。3)时序:对事件实现顺序的详细说明。,*,3.1网络体系结构 计算机网络层次体系结构,将多台位于不同地点的计算机设备通过各种通信信道和设备互连起来,使其能协同工作,以便于计算机的用户应用进程交换信息和共享资源,这是一个复杂的工程设计问题。将一个比较复杂的问题分解成若干个容易处理的子问题,尔后“分而治之”逐个加以解决,这种结构化设计方法是工程设计中常用的手段。分层就是系统分解的最好方法之一。,进程,进程,进程与程序:“动态”进程的状态:就绪运行阻塞,进程,死锁:指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将无法向前推进死锁的原因:系统资源不足进程推进顺序不当,进程,题目:某系统中有3个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是_.,10,3.1网络体系结构 计算机网络层次模型,3.1网络体系结构 计算机网络层次模型,3.1网络体系结构 计算机网络层次模型,3、分层遵守的几个主要原则:1)每层功能应是明确的并且相互独立。当某一层具体实现方法更新时,只要保持层间接口不变,就不会对邻层造成影响。2)接口层清晰,跨越接口的信息量应尽可能少。层数应当适中。若太少,则层间功能划分不明确,多种功能混杂在一层中,造成每一层的协议太复杂。若太多,则体系结构过于复杂,各层组装时的任务会困难得多。,3.1网络体系结构 计算机网络层次模型,4、计算机网络中采用层次结构的好处:1)各层之间相互独立。高层并不需要知道底层是如何实现的,而仅需要知道该层通过层间的接口所提供的服务。2)灵活性好。当任何一层发生变化时,例如由于技术的进步促进实现技术的变化,只要接口保持不变,则在这层以上或以下各层均不受影响。另外,当某层提供的服务不再需要时,甚至可将这层取消。3)各层都可以采取最合适的技术来实现,各层实现技术的改变不影响其它层。4)易于实现和维护。因为整个的系统已被分解为若干个易于处理的部分,这种结构使得一个庞大而又复杂系统的实现和维护变得容易控制。5)有利于促进标准化。这主要是因为每一层的功能和所提供的服务都已有了明确的说明。,*,3.2开放系统互连参考模型 开放系统互连基本参考模型,1、OSI七层参考模型:应用(Application)层表示(Presentation)层会话(Session)层运输(Transport)层网络(Network)层数据链路(Data Link)层物理层(Physical Layer),*,3.2开放系统互连参考模型 层次模型中各层功能,1.物理层 物理层的作用是在物理媒体上传输原始的数据比特流。当一方发送二进制比特“1”时,对方应能正确地接收,并识别出来。在物理层,传输的双方应该有一致同意的约定,如:媒体信道上有多少条线,相应的插头和插座的机械形状和大小,插针的个数和排列、什么电信号(如多少伏电压)代表“1”和什么电信号代表“0”,1比特的持续时间是多长,每个插针或每条线传输的是什么信号(如电源或数据或控制等)最初的连接如何建立,传输完成后连接又如何终止等等。物理层负责在网络上传输数据比特流。这与数据通信的物理或电气特性有关。,3.2开放系统互连参考模型 层次模型中各层功能,2.数据链路层 由于外界噪声干扰等因素,原始的物理连接在传输比特流时可能发生差错。数据链路层的一个主要功能就是通过校验、确认和反馈重发等手段,将原始的物理连接改造成无差错的数据链路。数据链路层负责监督相邻网络节点的信息流动。它使用检错或纠错技术来确保正确的传输。当数据链路检测到错误时,它请求重发,或是根据情况纠正。另外,数据链路层还要解决流量控制的问题:要解决发送方的高速数据淹没速度慢的接收方的问题,流量太大,网络会出现阻塞;太小了,又会使发送方和接收方等待时间过长。数据链路层还管理数据格式。物理层传送的是比特流,并不关心其意义和结构,在数据链路层我们将比特组合成数据链路协议数据单元。数据通常被组合成帧加以传输。帧是按某种特定格式组织起来的字节集合。数据链路层用唯一的比特组合对将要发送的每一帧的开始和结束进行标识,对接收进来的每一帧进行判断,然后把无错的帧送往上一层,即网络层。,在Windows 9X系列的计算机系统:依次单击“开始”“运行”输入“winipcfg”回车,出现如图图形界面,其中适配器地址就是计算机的MAC地址。,差 错 控 制,冗余检测技术:在数据单元中加入附加比特以便在接收端进行错误检测.三种常用的冗余检测技术:垂直冗余检测技术(VEC,奇偶检测)水平冗余检测技术(LRC)循环冗余检测技术(CRC),差 错 控 制,奇偶校验(垂直冗余校验VRC)奇偶校验以字符为单位校验,一个字符由8位组成,低7位为信息字符的ASCII代码,最高位为“奇偶校验位”。原理:接收端、发送端“字符”中“1”的个数;“奇”或“偶”,*,差 错 控 制 ci,循环冗余检测技术(CRC):通过在数据单元的末尾附加上一串冗余比特,使得整个数据单元(包括这一串)可以被某个预定的二进制数整除.到接受端,用同一个二进制数去除所收到的数据,如果除尽则正确,否则出错.,差错检测,海明码:第,m位为纠错位第位为,序列的校验位第位为,序列的校验位在中的序列的生成:第m位是连续m位的首位(m=0,1,2)先取m位开头的m位,接着去掉其后的m位,再取连续的m位,由 所取的序列构成算法中的序列,差 错 控 制,模2运算:0+0=0 1+1=0 0+1=1+0=1 1-0=0-1=1 1-1=0,数据链路规程,两种方式:轮询应答(对等通信系统)轮询选择(主从通信系统),差错控制与流量控制,流量控制差错控制,3.2开放系统互连参考模型 层次模型中各层功能,3.网络层 网络层关心的是通信子网的运行控制,主要任务是如何把网络协议数据单元(通常称为分组)从源传送到目标。这需要在通信子网中进行路由(routing)选择。路由选择算法可以是简单的、固定的,也可以是复杂的、动态适应性的。网络层管理路由策略来处理路由中的一系列问题。比如,在双向的环形网络中,每两个节点间有两条路径。一个更加复杂的拓扑结构可能有很多路由可供选择。哪一条才是最快、最便宜或最安全的呢?哪些路由才是宽阔、没有阻塞的呢?是让整个报文采用同一路由,还是把报文分组后分别传送呢?ARP RARP,3.2开放系统互连参考模型 层次模型中各层功能,4.运输层 运输层是第一个端对端,即主机到主机的层次。有运输层后,高层用户就可利用运输层的服务直接进行端到端的数据传输,从而不必知道通信子网的存在。通过运输层的屏蔽,高层用户看不到通信子网的更替和技术变化。通常,在高层用户请求建立一条运输虚通信连接时,运输层就通过网络层在通信子网中建立一条独立的网络连接。若需要较高的吞吐量,运输层也可以建立多条网络连接来支持一条运输连接,这就是分流(splitting)。或者,为了节省费用,运输层也可以让多个运输通信合用一条网络连接,称为复用(multiplexing)。运输层还要处理端到端的差错控制和流量控制问题。概括地说,运输层为上层用户提供端对端的透明优化数据传输服务。运输层是处理端对端通信的最低层(更低层处理网络本身)。运输层负责选择通信使用的网络。一台计算机可能连接着好几个网络,其速度、费用和通信类型各不相同。另一种方法是把数据划分成多个小的分组(数据子集),再分别传送。在这种情况下,两点间不需要稳定的连接。每一分组通过网络被独立地传输。因此,当分组到达目的地时,必须重新进行组装,然后才能送往上层用户。如果各个分组经过不同的路由,那就无法保证分组会按发送顺序到达目的地(正如我们无法保证星期一发的信会比星期二发的信早到一样),甚至无法保证它们都会到达。所以,接收方不仅要对分组重新排序,还得验证所有的分组是否都已收到。,*,网络中可以被命名和寻址的通信端口是操作系统的一种可分配资源。由网络OSI(开放系统互联参考模型传输层与网络层最大的区别是传输层提供进程通信能力,网络通信的最终地址不仅包括主机地址,还包括可描述进程的某种标识。所以TCP/IP协议提出的协议端口,可以认为是网络通信进程的一种标识符。,公认端口(WellKnownPorts):从0到1023,它们紧密绑定(binding)于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:80端口实际上总是HTTP通讯。端口:21 服务:FTP端口:23 服务:Telnet,3.2开放系统互连参考模型 层次模型中各层功能,5.会话层 会话层允许不同主机上各种进程之间进行会话。运输层是主机到主机的层次,而会话层是进程到进程之间的层次。会话层组织并同步进程间的对话。它可管理对话允许双向同时进行或任何时刻只能一个方向进行。在后一种场合下,会话层提供一种数据权标来控制哪一方有权发送数据。会话层还提供同步服务。若两台机器进程间需进行数小时的大型文件传输,而通信子网故障率又较高,那么对运输层来说,每次传输中途失败后,都不得不重新传输这个文件。会话层提供了在数据流中插入同步点的机制,在每次网络出现故障后可以仅重传最近的一个同步点以后的数据,而不必从头开始。,3.2开放系统互连参考模型 层次模型中各层功能,6.表示层 表示层为上层用户提供共同需要的数据或信息语法表示变换。大多数用户间并非仅交换随机的比特数据,而是要交换诸如人名、日期、货币数量和商业凭证之类的信息。它们是通过字符串、整型数、浮点数以及由简单类型组合成的各种数据结构来表示的。不同的机器采用不同的编码方法来表示这些数据类型和数据结构(如ASCII或EBCDIC、反码或补码等)。为了让采用不同的编码方法的计算机能相互理解通信交换后数据的值,可以采用抽象的标准方法来定义数据结构,并采用标准的编码表示形式。表示层以用户可理解的格式为上层用户提供必要的数据。表示层也提供数据的安全措施。数据压缩和加密是表示层可提供的表示变换功能。,3.2开放系统互连参考模型 层次模型中各层功能,7.应用层 应用层是开放系统互连环境的最高层。不同的应用层为特定类型的网络应用提供访问OSI环境的手段。网络环境下不同主机间的文件传送、访问和管理FTAM(File Transfer,Access and Management),网络环境下传送标准电子邮件的文电处理系统MHS(Message Handling System),方便不同类型终端和不同类型主机间通过网络交互访问的虚拟终端VT(Virtual Terminal)协议等,都属于应用层的范畴。应用层直接与用户和应用程序打交道。应用层为用户提供电子邮件、文件传输、远程登录和资源定位等服务。,3.2开放系统互连参考模型 层次模型中各层功能,8、OSI各层功能总结,*,3.3 TCP/IP参考模型 TCP/IP参考模型,1975年,TCP/IP(传输控制/网间互联)协议产生,1983年1月1日成为Internet的标准协议,现在该标准协议已融入UNIX、Linux、Windows等操作系统中。,3.3 TCP/IP参考模型 TCP/IP参考模型,应用层-应用层传输层-传输层互联层-网络层主机网络层-数据链路层 物理层,*,3.3 TCP/IP参考模型 TCP/IP协议简介,1、TCP/IP协议简介 TCP/IP(传输控制协议/网间互联协议)是一种网络通信协议,它规范了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据往来格式以及传送方式。TCP协议即传输控制协议,是一种面向连接的传输层协议。通过使用序列号和确认信息,TCP协议能够向发送方提供到达接收方的数据包的传送信息。IP协议位于Internet协议栈的第三层(互联层),除了可以提供网络路由之外,IP协议还具有错误控制以及网络分段等众多功能,是整个Internet协议栈的核心。TCP/IP是Internet的基础协议,也是一种电脑数据打包和寻址的标准方法。,3.3 TCP/IP参考模型 TCP/IP协议简介,2、传输控制协议TCP(Transport Control Protocol)传输控制协议TCP(Transport Control Protocol)是一种可靠的面向连接的协议,它允许将一台主机的字节流(Byte Stream)无差错的传送到目的主机。TCP协议将应用层的字节流分成多个字节段,然后将一个一个的字节段传送到互联层,发送到目的主机。当互联层将接收到的字节段传送给传输层时,传输层再将多个字节段还原成字节流,传送到应用层。TCP协议同时要完成流量控制功能,协调收发双方的发送与接收速度,达到正确传输的目的。TCP是一个更高层次的协议,它允许运行在不同主机上的应用程序相互交换数据流。TCP将数据流分成小段叫做TCP数据段(TCP segments),并利用IP协议进行传输。在大多数情况下,每个TCP数据段装在一个IP数据报中进行发送。但如需要的话,TCP将把数据段分成多个数据报,而IP数据报则与同一网络不同主机间传输位流和字节流的物理数据帧相容。由于IP并不能保证接收到的数据报的顺序与发送的数据报的顺序相一致,TCP会在收信端装配TCP数据段并形成一个不间断的数据流。FTP和Telnet就是两个非常流行的依靠TCP的TCP/IP应用程序。,*,3.3 TCP/IP参考模型 TCP/IP协议简介,3、用户数据报协议UDP(User Datagram Protocol)用户数据报协议UDP(User Datagram Protocol)是TCP/IP协议集的一个重要成员,它同TCP相似,但比TCP原始许多。TCP是一个可靠的协议(TCP是面向有连接的通信),因为它用错误检查和握手确认来保证数据完整地到达目的地。UDP是一个“不可靠”的无连接协议,因为它不能保证数据报的接收顺序同发送顺序相同,甚至不能保证它们是否全部到达。如果有可靠性要求,则应用程序避免使用它。UDP主要用于不要求分组顺序地到达的传输中,分组传输顺序的检查与排序由应用层完成。,*,