1. 计算机网络协议从源到目标会出现数据传送的混乱,为了使两个对等实体之间能够有效地通信,对等实体需要就交换什么信息、如何交换信息等问题制定相应的规则或进行某种约定。对等实体之间交换数据或通信时所必须遵守的规则、约定或标准的集合称为协议(protocol)。计算机网络协议的三要素如下:(1) 语法:数据与控制信息的结构或格式。(2) 语义:需要发出何种控制信息,完成何种动作,作出何种响应。(3) 同步:事件的实现顺序。协议必须将各种不利的条件事先都估计到,而不能假定一切情况都是很理想和很顺利的。必须非常仔细地检查所设计协议能否应付所有的不利情况。事实上难免有极个别的不利情况在设计协议时并没有预计到。在出现这种情况时,协议就会失败。因此实际上协议往往只能应付绝大多数的不利情况。
2. 现实中两人会话的分层模型以现实中的两人的会话分层模型为实例考察协议的层次
图 2.1.1-1 现实中的会话分层模型对应的协议族:(1) 每一层定义确定的规则(2)各层的规则构成协议族(3)在通信过程中遵循协议族媒介层协议:不能同时讲,声波语言层协议:汉语、普通话(同一语言)概念层协议:同一知识背景的话题
3. 分层的好处(1) 容易解决通信中的异质性(heterogeneity)问题:媒介层解决信号传递问题包括语音(电话、空气)、文字(传真);语言层解决不同语言的转换,如汉-英互换。(2) 使复杂问题简化,高层屏蔽低层的细节问题:概念层只关心会话内容,不关心会话形式、语种;语言层只关心语种,不关心会话内容、形式;媒介层只关心信息的传递,不关心内容。(3) 使设计容易实现:每一层向上一层提供服务,每一层向下一层请求服务。、
分层降低了复杂性,提高了灵活性,使各层间独立,结构可分,易于实现和维护,有利于标准化。第 N 层的功能是向 N+1 层提供服务;向 N-1 层请求服务;完成服务所需的处理。4. 层次划分的特点各层功能相对独立;每层的改变不影响其它层;低层向高层隐藏复杂性。每层实现的功能是下面的一种或多种:(1) 寻址(2) 路由选择(3) 数据传送规则(4) 差错控制(5) 顺序控制(6) 流量控制(7) 分段/重装(8) 连接的多路复用与分解 5. 分层的原则(1) 根据功能进行抽象分层,每个层次所要实现的功能或服务均有明确的规定。(2) 每层功能的选择应有利于标准化。(3) 不同的系统分成相同的层次,对等层次具有相同功能。(4) 高层使用下层提供的服务时,下层服务的实现是不可见的。(5) 层的数目要适当。层次太少功能不明确,层次太多体系结构过于庞大。
计算机网络的协议层次结构的服务类别如下:(1) 面向连接的服务:链路建立、数据传输、连接释放;需要两个对等实体都是活动的。(2) 无连接的服务:数据可以直接传输数据;接收对等实体不需要是活动的。
计算机网络体系结构常用如下术语:1.源(source):通信过程中,数据的发送方2.目标(destination):通信过程中,数据的接收方3.实体 (Entity ):每一层上的活动元素,包括实现该层功能的所有硬件与软件。4.对等实体(Peer to peer entity):相互通信的两个不同机器上的同一层次。5.服务(Service ):每一层为上一层所提供的功能称为服务。N 层使用 N-1 层所提供的服务,向 N+1 层提供更高的服务。6.接口(Interface):定义下层向其相邻的上层提供的服务及原语操作,但服务的实现细节对上层是透明的(不可见的)。7.协议数据单元(PDU):网络中所传送的数据的逻辑组成单元,其数据格式由每层协议所决定,对等实体采用该层上的相同协议。例如信件传输过程,在源端,从高层到下层,存在数据的封装过程;在目的端,从下层到高层,存在数据的拆封过程。8.实体、协议、服务和服务访问点的关系
9.服务和协议的关系是: (1) 服务—垂直的:每层向上层提供的一组原语,定义两层间的接口; (2) 协议—水平的:对等实体间的通信规则,实体利用协议实现服务;协议可以使通信更有效地进行。 (3) 协议栈:同一系统内各层协议的集合。
10.计算机网络的体系结构:指网络功能分层结构与各层协议的统称。
、OSI 体系结构的概念从 1979 年开始,ISO 通过对当时已有的计算机网络体系结构进行研究,借鉴其精华之处,于 1984 年公布了一个标准(文件 ISO 7048):OSI RM (Open System Interconnecting Reference Model)。它是一个概念模型,由于没有确切地描述用于各层的协议和服务,因此不是严格意义上的体系结构
二、OSI 参考模型各层1.物理层 (Physical Layer):二进制在线路上的表示和传输二进制“位”信号,即“透明”地传送比特流,数据单位是比特(Bit)。当建立、维护与其他设备的物理连接时,提供需要的机械、电气、功能特性和规程特性。
物理层位于 OSI 参考模型的最低层,它直接面向原始比特流的传输。主要解决:传输介质、信道类型、数据与信号之间的转换、信号传输中的衰减和噪声等在内的一系列问题。物理层标准要给出关于物理接口的机械、电气、功能和规程特性,以便于不同的制造厂家既能够根据公认的标准各自独立地制造设备,又能使各个厂家的产品能够相互兼容。
2.数据链路层 (Data link Layer):无差错地传送以帧为单位的数据,主要功能为:① 数据链4.运输层 (Transport Layer):负责主机中两个进程之间的通信,数据传输的单位是报文段。运输层主要完成的功能有:① 分割和重组报文。② 提供可靠的端到端的服务。③ 传输层的流量控制。④ 提供面向连接的和无连接数据的运输服务。传输层唯一负责端到端节点间数据传输和控制功能的层。OSI 七层模型中承上启下的层,它下面的三层主要面向网络通信,以确保信息被准确有效地传输;它上面的三个层次则面向用户主机,为用户提供各种服务。通过弥补网络层服务质量的不足,为会话层提供端到端的可靠数据传输服务,并屏蔽了传输层以下层的数据通信细节,使会话层不会受到下三层技术变化的影响。传输层为了向会话层提供可靠的端到端传输服务,也使用了差错控制和流量控制等机制。路的建立、维护与释放链路的管理工作。② 将传输数据增加的同步信息、校验信息及地址信息封装成数据帧。③ 数据帧传输顺序的控制。④ 差错检测与控制。⑤ 数据流量控制在物理层发送和接收数据的过程中,会出现一些物理层自己不能解决的问题。例如:节点如何知道它所接收的数据是否正确?如果噪声改变了一个分组的目标地址,节点如何察觉它丢失了本应收到的分组呢?当多个节点同时试图在一条线路上发送数据时如何解决冲突?数据链路层实现两个相邻的机器间的无差错的传输。通过对物理层提供的原始比特流传输服务的加强,向网络层提供服务。为实现相邻节点间的无差错传输,数据链路层最小提供了成帧、物理寻址、确认、差错控制和流量控制等机制。
3.网络层 (Network Layer):为分组交换网上的不同主机提供通信,数据传送的单位是分组或包。网络层在计算机网络中进行通信的两个计算机之间可能要经过许多个结点和链路,也可能还要经过好几个通信子网。网络层的任务就是要选择合适的路由,使发送站的运输层所传下来的分组能够正确无误地按照地址找到目的站,并交付给目的站的运输层。即网络层的寻址功能。网络层主要涉及在通信子网中选择一条合适的路径,使发送端传输层所传下来的数据能够通过所选择的路径到达目的端。必须使用寻址方案来确定存在哪些网络以及设备在这些网络中所处的位置;在确定了目标结点的位置后,负责找到通过网络的最优路径,引导数据包正确地通过网络即路由选择。还需要提供拥塞控制机制以避免因子网中同时出现过多的分组而出现的网络瓶颈。还要解决异构网络互连问题。
4.运输层 (Transport Layer):负责主机中两个进程之间的通信,数据传输的单位是报文段。运输层主要完成的功能有:① 分割和重组报文。② 提供可靠的端到端的服务。③ 传输层的流量控制。④ 提供面向连接的和无连接数据的运输服务。传输层唯一负责端到端节点间数据传输和控制功能的层。OSI 七层模型中承上启下的层,它下面的三层主要面向网络通信,以确保信息被准确有效地传输;它上面的三个层次则面向用户主机,为用户提供各种服务。通过弥补网络层服务质量的不足,为会话层提供端到端的可靠数据传输服务,并屏蔽了传输层以下层的数据通信细节,使会话层不会受到下三层技术变化的影响。传输层为了向会话层提供可靠的端到端传输服务,也使用了差错控制和流量控制等机制。
5.会话层 (Session Layer):建立、管理和终结不同机器上的应用程序或进程间的会话,为表示层提供服务。通过令牌(Token)进行会话(Dialogue)的管理,通过检查点(Checkpoint)进行会话的同步。
6.表示层 (Presentation Layer):表示层以下各层只关心可靠的数据传输,而表示层关心的是所传送数据的语法和语义:完成语法格式的转换,不同的计算机可能有不同的内部数据表示(抽象语法),表示层收到应用层传过来的某种语法形式的数据后,将其转换成适合在网络实体间传送的公共语法(传送语法)表示的数据,包括数据表示格式和转换、数据压缩、加密与解密、协议转换等;与接收方协商所采用的公共语法类型;表示层对等实体间连接的建立、数据传送与连接释放。
7.应用层 (Application Layer):OSI 的最高层,是计算机网络与用户之间的界面,负责为用户的应用程序提供网络服务。与 OSI 其他层不同的是,它不为任何其他 OSI 层提供服务,而只是为 OSI 模型以外的应用程序提供服务。由若干的应用协议组成。常见应用层服务包括:目录服务,电子邮件、文件传输和虚拟终端。
三、OSI 中的数据传输数据流从源的上层逐层流向下层,在目的端则由下层逐层流向上层。
1.TCP/IP 模型是异种网络互连的唯一协议体系,适用于不同机型(从 PC 到巨型机)、不同类型的网络(从局域网到广域网)之间的互连。TCP/IP 是 OSI 模型之前的产物,所以两者间不存在严格的对应关系。也不存在与 OSI 中的物理层与数据链路层相对应的部分。因为 TCP/IP 用于异构网络的互连,支持各种网络拓朴结构,所以在该两层无限定
2.TCP/IP 中的协议(1) FTP: file transport protocol (文件传输协议)(2) DNS: domain name service(域名服务)(3) HTTP:hypertext transfer protocol(超文本传输协议)(4) SMTP:simple mail transport protocol(简单邮件传输协议)(5) TFTP: trivial file transport protocol(小型文件传输协议)(6) TCP:transport control protocol(传输控制协议)(7) UDP:user datagram protocol(用户数据报协议)(8) IP:internet protocol(网际协议)
1.OSI 模型的不足(1)在 TCP/IP 后出现;(2)层次复杂、效率低下;(3)忽略了高效的无连接服务:其网络层提供两类服务,传输层只提供连接服务;(4)实现糟糕:表示层和会话层没有实现。(5)模型由通信专家制定;不适合计算机和软件的工作方式。 2.TCP/IP 模型的不足(1)没有明确的规范和实现;(2)网络接口层只定义网络层和数据链路层的接口,而非层的概念;(3)不区分物理层和数据链路层。3.OSI 与 TCP/IP 的类似之处* 均为层次结构;* 具有功能相当的网络层、传输层;* 均有应用层,虽然其所提供的服务有所不同;* 均是一种基于协议数据单元的包交换网络;* 作为概念上的模型和事实上的标准,具有同等的重要性。4.OSI 与 TCP/IP 的不同之处* OSI 模型包括了七层,TCP/IP 模型只有四层;* TCP/IP 将 OSI 中的上三层合并成了一个应用层,将 OSI 中的下二层合并成了一个网络存取层(或接口层);* TCP/IP 由于层次更少显得比 OSI 更简洁;* TCP/IP 作为从 INTERNET 上发展起来的协议,已成了网络互连的事实标准;* 目前还没有按 OSI 实现的网络产品,OSI 模型仅作为理论的参考模型被广泛使用。TCP/IP 模型一开始就考虑到多种异构网的互连问题,就对面向连接服务和无连接服务并重,而 OSI 开始只强调面向连接这一种服务。TCP/IP 较早就有较好的网络管理功能;TCP/IP 对服务、协议和接口等概念没有很清楚区分开;TCP/IP 通用性差,很难用它来描述其它的协议栈。
1.计算机网络是一个复杂的系统,采用层次结构,把复杂的功能要求分解到每一个层次;每个层次独立设计,层次之间通过清晰的接口联系 2.网络协议有三个要素:语法,表示数据与控制信息的组成和格式;语义,表示二进制位组合给出何种控制信息,完成何种动作、何种应答;同步,事件实现顺序的说明,哪些动作先执行,哪些动作在其后执行。3.开放系统互连 OSI 体系结构是概念模型,由物理层、数据链路层、网络层、传输层、会话层、表示层和应用层 7 层组成。4.TCP/IP 协议结构由四个层次组成,是一个具体的实现产品,是因特网的核心,是事实上的工业标准。