第四课 OSI 参考模型及 TCP/IP 协议

Preview:

DESCRIPTION

第四课 OSI 参考模型及 TCP/IP 协议. 学习目标. 学习完本课程,您应该能够:. 1 、什么是 OSI 模型? 2 、 OSI 参考模型又是如何工作的?每层的功能又是什么?. 计算机网络体系结构. - PowerPoint PPT Presentation

Citation preview

第四课 OSI 参考模型及 TCP/IP 协议

学习目标1 、什么是 OSI 模型?2 、 OSI 参考模型又是如何工作的?每层的功能又是什么?

学习完本课程,您应该能够:

计算机网络体系结构 计算机网络的各层以及其协议的结合,称为网络的体系结构。换言之,计算机网络的体系结构即是对计算机网络及其部件所应该完成的功能的精确定义。即计算机网络应设置哪几层,每层应提供哪些功能的精确定义 , 至于功能是如何实现的,则不属于网络体系结构讨论的范围。换句话说,网络体系结构只是从功能上描述计算机网络的结构,而不涉及每层硬件和软件的组成,也不涉及这些硬件或软件的实现问题。 世界上第一个网络体系结构是 1974 年由 IBM 公司提出的“系统网络体系结构 SNA” 。之后,许多公司纷纷提出了各自的网络体系结构。所有这些体系结构都采用了分层技术,但层次的划分、功能的分配及采用的技术均不相同。随着通信技术的发展,不同结构的计算机网络互连已成为人们迫切需要解决的问题。在这个前提下,开放系统互连参考模型 OSI 就提出来了。

OSI参考模型 70 年代以来,国外一些主要计算机生产厂家先后推出了各自的网络体系结构,但都属于专用的。为使不同计算机厂家的计算机能够互相通信,以便在更大的范围内建立计算机网络,有必要建立一个国际范围的网络体系结构标准。国际标准化组织 ISO 于 1981年正式推荐了一个网络系统结构——开放系统互连模

型 (Open System Interconnection reference model )OSI/RM, 简称 OSI 。由于这个标准模型的建立,使得各种计算机网络向它靠拢,大大推动了网络通信的发展。

“ 开放”这个词表示:只要遵循 OSI 标准,一个系统可以和位于世界上任何地方的、也遵循 OSI 标准的其他任何系统进行连接。

计算机网络的分层模型 一个功能完善的计算机网络需要制定一套复杂的协议集合,对于这种协议集合,最好的组织方式是层次结构模型。很多经验和实践表明,对于计算机网络协议,其结构最好采用层次式的。这样分层的好处在于:每一层都实现相对的独立功能,因而可以将一个难以处理的复杂问题分解为若干个较容易处理的更小一些的问题。

计算机网络的分层模型 在网络互连中,有两个标准可以考虑:合法的和事实的。合法的意味着用权力或法律建立。事实的意味着用实际的事实建立。尽管没有得到官方或法律上的承认,但 TCP/IP 为网络协议创建了一个事实标准,尽管它在得到广泛接受之前并没有成为标准。 OSI 参考模型是一个合法的标准。国际标准化组织 ( ISO )创建了 OSI 模型,并在 1984年发布,为供应商提供一个网络模型,这样它们的产品可以在网络上协调工作。

7 应用层 Application

6 表示层 Presentation

5 会话层 Session

4 传输层 Transport

3 网络层 Internet

2 数据链路层 Data Link

1 物理层 Physical

分层( layering)

分层模型的优点 分层模型具有如下优点: 解决通信的异质性 (heterogeneity) 问题: -语言层解决不同种语言的相互翻译问题 ( 汉 - 日 ) -媒介层解决信息传递 : 语音 (电话 )/文字 (传真 ) 高层屏蔽低层细节问题 -概念层只关心会话内容 , 不关心语种和会话方式 -语言层只关心语种 , 不关心会话内容和方式 -媒介层只关心信息的传递 , 不关心信息的内容 设计实现 - 每个层次向上一层次提供服务 - 每个层次向下一层次请求服务

OSI 分层的优势 降低协议设计的复杂性: 各层相对独立,各层不必关心其它层的具体实现,只需知道上下层接口; 标准化接口: 任何一层发生修改,只要接口关系不变,其它层均不受影响; 模块化结构: 结构分层,各层都可独立实现;便于网络模型的设计; 保证技术的互操作性: 各层向下单向依赖,易于实现和维护 最重要的一点是不同厂商生产设备时有一个共同操作的标准,使不同产商设备互相兼容。

OSI 模型概述

传输层

数据链路层网络层

物理层

会话层表示层应用层

应用层(高层)高层的功能为处理用户接口、数据格式及应用访问。主要由操作系统实现

数据流层(低层) 定义了数据如何在网络传输介质之间传送,及数据如何通过网线和网络设备传输到期望的终端

协议层 OSI 参考模型的第 4 层及其以上各层为高层协议,实现资源子网的功能,其中的实体为进程。实现端到端的通信。 下 3 层协议实现通信子网的功能,其中的实体为与网络互还设备有关,实现点到点的通信。

计算机网络协议 协议:即网络中(包括互联网)传递、管理信息的一些规范。如同人与人之间相互交流是需要遵循一定的规矩一样,计算机之间的相互通信需要共同遵守一定的规则,这些规则就称为网络协议。 网络协议主要由以下三个要素组成: ( 1)语法,即数据与控制信息的结构或格式; ( 2)语义,即需要发出何种控制信息、完成何种协议以及做出何种应答; ( 3)同步,即事件实现顺序的详细说明。

7654321

7654321

321

321

OSI环境网络环境

数据通信网

计算机 A 计算机 B实系统环境

L7数据L7数据H6

L6数据 H5

L5数据 H4

L4数据 H3

L3数据 H2T2

01010101011111100101010 1

2

3

4

5

6

7 L7数据L7数据H6

L6数据 H5

L5数据 H4

L4数据 H3

L3数据 H2T2

01010101011111100101010 1

2

3

4

5

6

7

传输媒体

信息的流动过程

OSI 参考模型描述了在不同计算机上应用程序的信息是如何同过网络介质传送的。对于一个给定的系统的各层,当要发送的信息逐层向下传送时,信息越往低层就越不同于人类的语言,而是计算机能够理解的“ 1” 和“ 0” 。 注: 每一层使用自己层的协议与其他系统的对等层相互通信。每一层的协议在与对等层之间交换的信息称为协议数据单元( PDU)

对等层通信在分层模型中,对等是一个很重要的概念,因为只有对等层才能相互通信,一方在某层上的协议是什么,对方在同一层次上也必须是什么协议。 两个网络在物理层就相同,使用中继器就可以连起来;如果两个网络物理层不同,链路层相同,使用桥接器可以连起来;如果两个网络物理层、链路层都不同,而网络层相同,使用路由器可以互连;如果两个网络协议完全不同,使用协议转换器(网关)可以互连。

OSI 参考模型的分层禁止了不同主机间的对等层之间的直接通信。因此主机 A 的每一层必须依靠主机 A 相邻层提供的服务来与主机 B 的对应层通信。 假设主机 A 的第四层必须与主机 B 的第四层通信,那么主机 A 的第四层就必须使用主机 A 的第三层所提供的服务。第三层通过一个服务接入点( SAP)给第四层提供服务,这些服务接入点使得第四层能要求第三层提供服务

主机 B的第四层怎么知道主机 A第四层想要什么呢?

举例主机 A 发送信息给主机 B

物理层 数据链路层

网络层 传输层 会话层 表示层 应用层

主机 B 主机 A

物理层 数据链路层

网络层 传输层 会话层 表示层 应用层

比特流 数据帧

数据包 数据段

主机 A 的应用程序与主机 A 的应用层通信,主机 A 的应用层再与主机 A 的表示层通信,主机 A 的表示层再与主机 A 的会话层通信,等等,直到到达主机 A 的物理层。物理层把信息放到网络物理介质上并把信息从网络物理介质上送走。 信息在网络物理介质上传送并被主机 B接收后,会以相反的方向向上通过主机 B的各层(先是物理层,然后是数据链路层,等等),直到最终到达主机 B的应用层。

举例 设想:主机 A想利用 E-mail发送以下信息给主机 B: “ 好久不见了,你还好吗?” 数据封装会将此消息传送到合适的目的地,在数据封装过程中会经过以下

5 个转换步骤: 步骤一:当用户发送一个消息时,它的字符转化为数据,从第七层向下传送到第五层,然后在网络上传输; 步骤二:在第四层通过使用段,传输功能把数据进行打包使它能用于网络传输,并确保系统两端的消息主机能可靠通信; 步骤三:数据在第三层被放入一个数据包(或数据报)中,它有一个包含有源和目的逻辑地址的包头。然后,网络设备沿着一个选定的路径在网络上发送这些数据包。 步骤四:每个网络设备在第二层必须把数据包放入一个帧。帧可以连接到同一链路上的一个直连的设备。在一个选定的网络路径上的每一个设备都要求用帧来连接下一个设备。 步骤五:在第一层,帧必须转换成可以在介质(导线)中传送的“ 1” 和“ 0”模式。时钟功能使得设备能区分在介质中传输的比特流。

数据封装和解封装 数据封装: OSI 模型的每一层用其自己的协议与目的设备的相同层进行通信。为了交换信息,每层都使用协议数据单元( PDU)。 PDU包括控制信息和用户数据。比如,帧是一个除上层控制信息和数据外还包含了数据链路层控制信息的 PDU 。将控制信息添加到一个 PDU的过程称作封装。当一个层收到 PDU时,它为该 PDU添加一个头和尾,并将封装后的 PDU传送到下一层。添加到 PDU 上的控制信息将被远端设备的相同层所解读。

数据封装和解封装 解封装数据: 当一个远端设备收到一串比特数据时,它将它们传送给数据链路层进行帧操作。当数据链路层收到一个帧时,它完成以下工作:读出同层源设备提供的控制信息,从帧中剥离控制信息,将帧传给上一层,同时执行在帧的控制域给出的指令。这样,将控制信息从 PDU剥离的过程就称作解封装。

数据封装 OSI 参考模型中每一层都依赖于它的下一层提供的服务功能。为了提供这些服务,低层使用封装把上层的

PDU 放入它的数据区域;然后,该层将会把它要使用的任何报头和报尾进行添加以执行它的功能。 应用层 表示层 会话层 传输层 网络层数据链路层 物理层

应用层 表示层 会话层 传输层 网络层数据链路层 物理层

数据

数据

数据网络层头网络层头 帧报尾帧报头01010101010101

封装PDU

传输层

数据链路层

物理层

网络层

上层数据上层数据传输层控制信息

数据网络层控制信息

数据逻辑链路子层控制信息

0101110101001000010数据

表示层应用层

会话层段

比特

帧FCS

FCS

介质访问控制子层控制信息

数据包解封装上层数据

逻辑链路控制子层控制信息 + 网络层控制信息 + 传输层控制信息 + 上层数据

媒体访问控制子层控制信息

网络层控制信息 + 传输层控制信息 + 上层数据

逻辑链路子层控制信息

传输层控制信息 + 上层数据网络层控制信息

上层数据传输层控制信息

0101110101001000010

传输层

数据链路层

物理层

网络层

表示层应用层会话层

1 、物理层 物理层为建立、维护和释放数据链路实体之间的二进制比特传输的物理连接提供机械的、电气的、功能的和规程的特性。物理连接可以通过中继系统,允许进行全双工或半双工的二进制比特流的传输。物理层的数据服务单元是比特,它可以通过同步或异步的方式进行传输。

物理层主要功能示意图 L2数据

10010110101物理层

L2数据

10010110101 物理层

从数据链路层 到数据链路层

传输媒体

2 、数据链路层 将有差错的物理链路转化成对网络层来说是没有传输错误的数据链路 : 差错检测和数据流量控制。 该层用于建立相邻结点之间的数据传输;它将不可靠的物理信道处理为可靠的通道,使高层不必考虑物理介质的具体特性;该层的数据单元为帧 (frame) ; IEEE 标准将该层又分为介质访问控制层 (MAC) 和逻辑链路控制层 ( LLC ) 。目标地址 源地址 控制信息 数据 循环冗余校验

数据链路层物理层只负责传输无结构的原始比特流,是不可靠的。数据链路层将不可靠的物理连接(数据电路)转换成(对网络层来说)可靠的数据链路。为实现转换:首先,必须将物理层的无结构原始比特流划分成一定长度的结构数据单元——帧( frame) 其次,对帧进行差错控制( error control),实现检错 /纠错功能。最后,通过合适的流量控制( flow control)协议保证收发双方的传输同步,为网络层提供透明可靠的服务。

数据链路层

L3数据 L3数据

L2数据 L2数据

T2 T2H2 H2

到物理层 从物理层

从网络层 到网络层

数据链路层数据链路层帧 帧

数据链路层数据封装示意图

3 、网络层 负责将从发送端的连接多于一个链路的数据的传输,这时一个数据包从发送端到接收端要经过路由的选择和面包的转发过程: 1) 将网络逻辑地址转换成物理机器地址:

IP=>MAC 。 2) 决定服务质量 ( 如消息的优先权 ) , 从发送者到接收者之间存在多条线路径时 ,还需要进行路由选择: 路由选择。 3)当数据包的大小比数据链路层允许的最大数据帧还要大时 , 网络层将其分成多个数据段,在接收端负责将多个数据段组合数据包:包的拆分和重组。

L4数据 L4数据

L3数据 L3数据

H3 H3

到数据链路层

从传输层 到传输层

网络层 网络层分组

从数据链路层

分组

网络层数据封装示意图

4 、传输层 为会话层实体提供独立于具体网络的高效经济透明的端 --- 端多路数据传输服务。 本层提供了两个实体之间端对端的通信,掩盖了通信网服务的差别。该层的数据单元是段( Segment) ,该层通常提供两种服务:面向连接的服务和面向无连接的服务。主要协议包括 Internet 的TCP 、 UDP , Novell 的 SPX 等。

传输层从会话层接收数据 , 在必要时把它分成较小的单元传输给网络层 ,并确保到达对方的各段信息正确无误 , 而且这些任务都必须高效率地完成。设立传输层的目的是在使用通信子网提供服务的基础上,使用传输层协议和增加的功能,使得通信子网对于端 --端用户是透明的。对高层用户来说,两个传输层实体之间存在着一条端 --端可靠的通信连接。传输层向高层用户屏蔽了通信子网的细节。

传输层

H4H4 H4H4H4 H4

L4数据L4数据L4数据

L5数据 L5数据

L4数据L4数据L4数据

到网络层 从网络层

从会话层 到会话层

传输层 传输层

传输层数据封装及功能示意图

传输层

5 、会话层 管理不同主机上各进程间的对话。 该层使应用进程之间能够建立、维护会话的连接;会话层可以通知进程之间实现同步通信。

会话层传送报文为通信的两个进程建立会话连接,进行交换会话管理令牌管理

同步管理

会话层

L6数据

H5

L5数据到传输层 从传输层

从表示层 到表示层

会话层

L6数据

H5

L5数据

会话层

会话层数据封装及功能示意图

6 、表示层 为上下层之间提供对数据或信息的语法和语义的转换。 该层完成某些特定的功能,它提供了一种公共语言,可以使不同类型的计算机相互通信、相互理解;该层还能够提供数据压缩、解压缩的服务,以及加密解密的服务。

表示层信息格式的转换

数据的加密和解密

OSI 内部语法

表示层

L6数据

数据的编码、加密和压缩 H6

L7数据从应用层

到会话层

表示层

L6数据

数据的解码、解密和解压缩 H6

L7数据到应用层

从会话层

表示层

表示层数据封装示意图

为应用进程提供访问 OSI环境的手段。如文件传输、电子邮件、网络管理等。 该层预先定义的完整功能直接面向用户,该层的应用程序有 FTP 、 TELNET 、 SMTP等。

7 、应用层

应用层作用用户接口应用层 Telnet

HTTP

L7数据

FTP DNSNFS

用户应用层

到应用层L7数据

FTP DNSNFS

用户应用层

从应用层

应用层功能示意图

应用层

为用户的应用进程访问 OSI环境提供服务 负责整个网络应用程序一起很好地工作

计算机应用程序

字处理演示文稿电子表格数据库设计和制造项目计划其他

网络应用程序电子邮件文件传输远程访问客户 /服务器 处理信息查询网络管理其他

网络参考模型

谢谢观看 再见 !Zhenghui_2008@sina.com