2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
第 2章 计算机网络体系结构
本章基本要求:
?掌握计算机网络体系结构基本概念,
?熟悉 ISO/OSI开放系统互连参考模型各层的功
能,
?熟悉 TCP/IP体系结构。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
第 2章 计算机网络体系结构
2.1 计算机网络体系结构概述
2.2 OSI/ISO开放系统互连参考模型
2.3 TCP/IP模型
2.4 OSI模型和 TCP/IP模型的区别
习题
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
2.1.1 建立计算机网络体系结构的必要性
为了能够使不同地理分布、且功能相对独立的计算机之
间组成网络实现资源共享,计算机网络系统需要涉及和解
决许多复杂的问题,包括信号传输、差错控制、寻址、数
据交换和提供用户接口等一系列问题。计算机网络体系结
构是为简化这些问题的研究、设计与实现而抽象出来的一
种结构模型。
计算机网络系统,一般采用层次模型。在层次模型中,
往往将系统所要实现的复杂功能分化为若干个相对简单的
细小功能,每一项分功能以相对独立的方式去实现。这样
就有助于将复杂的问题简化为若干个相对简单的问题,从
而达到分而治之、各个击破的目的。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
2.1.2 计算机网络的分层模型
将上述分层的思想或方法运用于计算机网络中,就产生了
计算机网络的分层模型。在实施网络分层时要依据以下原则:
● 根据功能进行抽象分层,每个层次所要实现的功能或服
务均有明确的规定。
● 每层功能的选择应有利于标准化。
● 不同的系统分成相同的层次,对等层次具有相同功能。
● 高层使用下层提供的服务时,下层服务的实现是不可见
的
● 层的数目要适当。层次太少功能不明确,层次太多体系
结构过于庞大。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
图 2.1 给出了计算机网络分层模型的示意图,该模型将计算
机网络中的每台机器抽象为若干层 (layer),每层实现一种相对
独立的功能。分层模型涉及下面一些重要的术语。
1,实体与对等实体
每一层中,用于实现该层功能的活动元素被称为实体
(entity),包括该层上实际存在的所有硬件与软件,如终端、电
子邮件系统、应用程序、进程等。不同机器上位于同一层次、
完成相同功能的实体被称为对等 (peer to peer)实体。
2.协议
为了使两个对等实体之间能够有效地通信,对等实体需要就
交换什么信息、如何交换信息等问题制定相应的规则或进行某
种约定。这种对等实体之间交换数据或通信时所必须遵守的规
则或标准的集合称为协议 (protocol)。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
实体
N+1层
N+1层协
议
图 2.1 网络分层模型的示意图
N+1层
实体
实体
N层
N层协议
N层
实体
实体
N-1层
N-1层协
议 N-1层
实体
接口
接口 接口
接口
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
协议由语法、语义和语序三大要素构成。语法包括数据格式、
信号电平等;语义指协议语法成分的含义,包括协调用的控制信息
和差错管理;语序包括时序控制和速度匹配关系。
3,服务与接口
在网络分层结构模型中,每一层为相邻的上一层所提供的功能
称为服务。 N层使用 N-1层所提供的服务,向 N+1层提供功能更强
大的服务。
4,服务类型
在计算机网络协议的层次结构中,层与层之间具有服务与被服
务的单向依赖关系,下层向上层提供服务,而上层调用下层的服务。
因此可称任意相邻两层的下层为服务提供者,上层为服务调用者。
下层为上层提供的服务可分为两类:面向连接服务( Connection
Oriented Service)和无连接服务( Connectionless Service)。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
5,服务原语
相邻层之间通过一组服务原语( Service Primitive)建立相
互作用,完成服务与被服务的过程。这些原语供用户和其他实
体访问该服务。这些原语通知服务提供者采取某些行动或报告
某个对等实体的活动。服务原语可被划分为四类,分别是请求
( Request)、指示( Indication)、响应( Response)、确
认( Confirm)。
2.1.3 计算机网络体系结构
网络体系结构是从体系结构的角度来研究和设计计算机网络
体系,其核心是网络系统的逻辑结构和功能分配定义,即描述
实现不同计算机系统之间互连和通信的方法和结构,是层和协
议的集合。通常采用结构化设计方法,将计算机网络系统划分
成若干功能模块,形成层次分明的网络体系结构。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
国际标准化组织 ISO在 1977年建立了一个分委员会来专
门研究体系结构,提出了开放系统互连参考模型( OSI:
Open System Interconnection Reference Mode),这是
一个定义连接异种计算机标准的主体结构,OSI被认为是解
决了已有协议在广域网和高通信负载方面存在的问题。
“开放”表示能使任何两个遵守参考模型和有关标准的
系统进行连接。
“互连”是指将不同的系统互相连接起来,以达到相互
交换信息,共享资源,分布应用和分布处理的目的。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
2.2.1 OSI七层模型
开放系统互连参考模型( OSI)采用分层的结构化技术,
共分 7层,从低到高为:物理层、数据链路层、网络层、传
输层、会话层、表示层、应用层。无论什么样的分层模型,
都基于一个基本思想,遵守同样的分层原则:即目标站第 n
层收到的对象应当与源站第 n层发出的对象完全一致,如图
2.2所示 。
它由 7个协议层组成,最低 3层( 1~ 3)是依赖网络的,
实现通信子网的功能。高 3层( 5~ 7)是面向应用的,实
现资源子网的功能。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
应用层
会话层
传输层
网络层
物理层
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
接
口
接
口
接
口
接
口
接
口
接
口
报文( M)
报文( M)
报文( M)
报文( M)
报文分组( P)
帧( F)
位( bit)
表示层协议
会话层协议
传输层协议
数据链路层
图 2.2 OSI七层模型
表示层
网络层协议
物理媒介
数据链路层协议
主机 X 主机 Y
应用层协议
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
2.2.2 OSI参考模型各层的功能
1.物理层 (Physical Layer)
物理层位于 OSI参考模型的最低层,它直接面向原始比特流
的传输。物理层必须解决好包括传输介质、信道类型、数据与
信号之间的转换、信号传输中的衰减和噪声等在内的一系列问
题。另外,物理层标准要给出关于物理接口的机械、电气、功
能和规程特性,以便于不同的制造厂家既能够根据公认的标准
各自独立地制造设备,又能使各个厂家的产品能够相互兼容。
2.数据链路层 (Data Link Layer)
数据链路层涉及相邻节点之间的可靠数据传输,为了能够实
现相邻节点之间无差错的数据传送,数据链路层在数据传输过
程中提供了确认、差错控制和流量控制等机制。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
3.网络层 (Network Layer)
网络中的两台计算机进行通信时,中间可能要经过许多
中间结点甚至不同的通信子网。网络层的任务就是在通信
子网中选择一条合适的路径,使发送端传输层所传下来的
数据能够通过所选择的路径到达目的端。
4.传输层 (Transport Layer)
传输层是 OSI七层模型中唯一负责端到端节点间数据传
输和控制功能的层。传输层是 OSI七层模型中承上启下的
层,它下面的三层主要面向网络通信,以确保信息被准确
有效地传输;它上面的三个层次则面向用户主机,为用户
提供各种服务。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
5.会话层 (Session Layer)
会话层的主要功能是在两个节点间建立、维护和释放面向
用户的连接,并对会话进行管理和控制,保证会话数据可靠
传送。
会话连接和传输连接之间有三种关系:一对一关系;一对
多关系;多对一关系。
会话过程中,会话层来需要决定使用全双工通信还是半双
工通信。
6.表示层 (Presentation Layer)
表示层专门负责有关网络中计算机信息表示方式的问题。
表示层负责在不同的数据格式之间进行转换操作,以实现不
同计算机系统间的信息交换。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
7.应用层 (Application Layer)
应用层是 OSI参考模型中最靠近用户的一层,负责为用
户的应用程序提供网络服务。与 OSI参考模型的其他层不
同的是,它不为任何其他 OSI层提供服务,而只是为 OSI
模型以外的应用程序提供服务,如电子表格程序和文字处
理程序。包括为相互通信的应用程序或进程之间建立连接、
进行同步,建立关于错误纠正和控制数据完整性过程的协
商等。应用层还包含大量的应用协议,如虚拟终端协议
( Telnet)、简单邮件传输协议( SMTP)、简单网络管
理协议( SNMP)和超文本传输协议( HTTP)等。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
2.2.3 OSI的层间通信
在同一台计算机的层间交互过程,以及在同一层上不同
计算机之间的相互通信过程是相互关联的。
? 每一层向其协议规范中的上层提供服务。
? 每层都与其他计算机中相同层的软件和硬件交换一些信
息。
1,同一台计算机之间相邻层的通信
如图 2.4所示,是 OSI类型通信的一个例子。主机 A发送
信息给主机 B。主机 A的应用程序与主机 B的应用层通信,
主机 A的应用层再与主机 A的表示层通信,主机 A的表示层
再与主机 A的会话层通信,等等,直到到达主机 A的物理层。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
物理层把信息放到网络物理介质上并把信息从网络物理
介质上送走。信息在网络物理介质上传送并被主机 B接收
后,会以相反的方向向上通过主机 B的各层(先是物理层,
然后是数据链路层,等等),直到最终到达主机 B的应用
层。
从各层的观点来看,在该层包头之后的比特被认为是数
据。例如,第 4层认为第 5层、第 6层和第 7层的包头与原
始的用户数据一起是一个大的数据字段。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
①
②
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.4 OSI模型相邻层之间通信
L7 DataL6L5L4L3L2H L2T
L7 DataL6L5L4L3
L7 DataL6L5L4
L7 DataL6L5
L7 DataL6
L7 Data 应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
L7 DataL6L5L4L3L2H L2T
L7 DataL6L5L4L3
L7 DataL6L5L4
L7 DataL6L5
L7 DataL6
L7 Data
③
L#-第#层的头 L#H-第#层的头 L#T-第#层的尾
主机 A 主机 B
④
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
当接收时(步骤 3),主机 B启动其上的相邻层协议进行通信,
如图 2.4中的步骤 4,指明了接收数据在协议栈中逐层向上递交
处理的过程。具体步骤如下:
步骤 A:物理层(第 1层)保证比特的同步,并将接收的二进
制数据放到缓存中。因此,第 1层在媒体上已经提供了传递的比
特流。
步骤 B:数据链路层(第 2层)检查帧尾的帧校验序列( FCS),
判断传输过程中是否有错误发生(差错控制)。如果有错误发
生,丢弃此帧。检查数据链路层的地址,使主机 B决定是否需要
进一步处理这些数据。如果这个地址是主机 B的地址,那么将在
第 2层的包头和尾之间的数据传递给第 3层的软件。从而,数据
链路层通过该链路实现了数据的传输。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
步骤 C:检查网络层(第 3层)的目的地址。如果该地
址是主机 B的地址(逻辑地址),处理过程将会继续进行,
将在第 3层包头之后的数据传递给传输层(第 4层)的软件。
从而,第 3层实现了端到端的数据传输服务。
步骤 D:如果传输层(第 4层)选择了差错恢复,标识
这段数据的计数器与确认信息(差错恢复)一起在第 4层
的包头中进行编码。在差错恢复和对输入数据进行重新排
序后,将这些数据传递给会话层。
步骤 E:会话层(第 5层)可以用来保证一系列消息的
完整性。如果没有完成后续的通信,收到的数据可能没有
任何意义。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
步骤 F:表示层(第 6层)定义 并维护数据的格式。例
如,如果数据是二进制数据而不是字符数据,包头会指明
这一点。接收方并不会用主机 B中缺省的 ASCII字符集转换
这些数据。通常,此类包头只包括在初始流中,而不包含
在每个被传输的流(数据格式)中。在完成了数据格式的
转换后,将数据传递给应用层的软件。
步骤 G:应用层(第 7层)处理最后的包头,然后检查真
正的终端用户数据。这个包头指明了主机 A与主机 B已协商
好的应用程序所使用的运行参数,该包头用于交换所有参
数值。因此,通常只在应用程序初始化时才发送和接收这
个包头。例如,在文件传输时,会相互传递所传输文件的
长度和文件格式(应用参数)。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
2,不同计算机上同等层之间的通信
第 N层必须与另外一台计算机上的第 N层通信才能成功地实现该
层的功能。
为了与其他计算机上的同等层进行通信,每一层都定义了一个
包头,而且有时还定义了包尾。包头和包尾是附加的数据位,由发
送方计算机的软件或硬件生成,放在由第 N+1层传给第 N层的数据
的前面或后面。这一层与其他计算机上同等层进行通信所需要的信
息就在这些包头或包尾被编码。接收方计算机的第 N层软件或硬件
解释由发送方计算机第 N层所生成的包头或包尾,从而得知此时第
N层的过程应如何处理。
每一层使用自己层的协议与其他系统的对等层相互通信。每一
层的协议在与对等层之间交换的信息称为协议数据单元( PDU)。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
如图 2.5所示提供了同等层之间通信的概念模型。主机 A的应用
层与主机 B的应用层通信。同样,主机 A的传输层、会话层和表示
层也与主机 B的对等层进行通信。 OSI模型的下三层必须处理数据
的传输,路由器 C参与此过程。主机 A的网络层、数据链路层和物
理层与路由器 C进行通信。同样,路由器 C与主机 B的物理、数据链
路层和网络层进行通信。
OSI参考模型的分层禁止了不同主机间的对等层之间的直接通信。
因此,主机 A的每一层必须依靠主机 A相邻层提供的服务来与主机 B
的对应层通信。假定主机 A的第 4层必须与主机 B的第 4层通信。那
么,主机 A的第 4层就必须使用主机 A的第 3层提供的服务。第 4层叫
服务用户,第 3层叫服务提供者。第 3层通过一个服务接入点( SAP)
给第 4层提供服务。这些服务接入点使得第 4层能要求第 3层提供服
务。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.5 OSI模型对等层通信
主机 A 主机 B
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
网络层
数据链路层
物理层
路由器 C
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
3,封装
通常将数据放置在每一层的包头后面(及包尾之前)的
概念称为封装。如 图 2.6所示,当每一层生成了包头时,将
由相邻上一层传递来的数据放到该包头的后面,这样就封
装了高一层的数据。对数据链路层(第 2层)协议而言,第
3层的包头和数据将放到第二层的包头和尾之间。物理层并
不使用封装,因为它不使用包头和尾。参考图 2.6中的步骤
①,从用户数据的生成到编码物理信号(步骤 2)的整个封
装过程如下所述:
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.6发送方的数据的封装过程
应用层
上层数据
数据
数据
数据
01011101010010000010
MAC头
LLC头
IP头
TCP头
PDU
段
包
帧
数
据
位
FCS
FCS
上层数据
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
步骤 1:应用程序已经生成了数据。应用层生成该层的包头并将
数据放在它的后面。这个数据并传递到表示层。
步骤 2:表示层生成该层的包头并将数据放在它的后面。这个数
据结构被传递到会话层。
步骤 3:会话层生成该层的包头并将数据放在它的后面。这个数
据结构被传递到传输层。
步骤 4:传输层生成该层的包头并将数据放在它的后面。这个数
据结构被传递到网络层。
步骤 5:网络层生成该层的包头并将数据放在它的后面。这个数
据结构被传递到数据链路层。
步骤 6:数据链路层生成该层的包头并将数据放在它的后面。数
据链路层把包尾放到此结构的后面,这个数据结构被传递到物理层。
步骤 7:物理层在媒体上对信号进行编码,传输该数据位。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
4,解封装( De-Encapsulation)
当远程设备顺序接收到一串比特时,它会把它们传送给数
据链路层以组装为帧。当数据链路层接收到该帧时,它会执
行以下工作:
? 读取物理地址和由直接相连的对等数据链路层所提供的控
制信息。
? 从该帧剥离该控制信息并由此创建一个数据报。
? 遵照在帧的控制部分中出现的内容而把数据报向上传送到
相邻层。
这个过程被称为解封装,每个后续层都会经历一个类似过
程。如 图 2.7所示。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
表示层
会话层
传输层
网络层
数据链路层
物理层
应用层
上层数据
010111010100100000
10
LLC头+ IP头+ TCP头+数据MAC头
IP头+ TCP头+数据
LLC头
IP头
TCP头
TCP头+数据
上层数据
图 2.7 接收方的数据的解封装过程
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
5,OSI模型每一层数据的名称
为了使数据分组从源主机传送到目的主机,如图 2.8中
所示,源主机 OSI模型的每一层要与目标主机的每一层进
行通信。用 Peer-to-peer communications(对等实体
间通信)表示源主机与目的主机对等层间的通信。在这一
过程中,每一层的协议交换的信息称为协议数据单元
( PDU)。位于源计算机上的每个通信层,使用针对该层
的协议数据单元( PDU)与目标计算机上的对等层进行通
信。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
数据段
数据包
数据帧
比特
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.8 数据名称
主机 A 主机 B
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
数据
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
2.3.1 TCP/IP 模型
TCP/IP模型是由美国国防部创建的,所以有时又称
DoD(Department of Defense)模型。是发展至今最成
功的通信协议,它被用于构筑目前最大的、开放的互联网
络系统 Internt。 TCP/IP是一组通信协议的代名词,这组
协议使任何具有网络设备的用户能访问和共享 Internet上
的信息,其中最重要的协议族是传输控制协议( TCP)和
网际协议( IP)。 TCP和 IP是两个独立且紧密结合的协议,
负责管理和引导数据报文在 Internet上的传输。二者使用
专门的报文头定义每个报文的内容。 TCP负责和远程主机
的连接,IP负责寻址,使报文被送到其该去的地方。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
TCP/IP也分为不同的层次开发,每一层负责不同的通信
功能。但 TCP/IP协议简化了层次设备,只有四层,由下而
上分别为网络接口层、网络层、传输层、应用层,如 图 2.9
所示。
在 TCP/IP模型中,网络接口层是 TCP/IP模型的最低层,
负责接收从网络层交来的 IP数据报并将 IP 数据报通过底层
物理网络发送出去,或者从底层物理网络上接收物理帧,
抽出 IP 数据报,交给互联网层。网络接口层使采用不同
技术和网络硬件的网络之间能够互联,它包括属于操作系
统的设备驱动器和计算机网络接口卡,以处理具体的硬件
物理接口。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
网络层负责独立地将分组从源主机送往目标主机,涉及为分
组提供最佳路径的选择和交换功能,并使这一过程与它们所经
过的路径和网络无关。
传输层的作用是在源结点和目的结点的两个对等实体间提供
可靠的端到端的数据通信。为保证数据传输的可靠性,传输层
协议也提供了确认、差错控制和流量控制等机制。传输层从应
用层接受数据,并且在必要的时候把它分成较小的单元,传递
给网络层,并确保到达对方的各段信息正确无误。
应用层涉及为用户提供网络应用,并为这些应用提供网络支
撑服务,把用户的数据发送到低层,为应用程序提供网络接口。
由于 TCP/IP将所有与应用相关的内容都有归为一层,所以在应
用层要处理高层协议、数据表达和对话控制等任务。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.10 9 OSI模型和 TCP/IP模型
应用层
数据流层
应用层
传输层
网络层
网络接口层
协议
网络
TCP/IP模型 OSI模型
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
2.3.2 各层主要协议
TCP/IP事实上是一个协议系列或协议簇,目前包含了
100多个协议,用来将各种计算机和数据通信设备组成实
际的 TCP/IP计算机网络。 TCP/IP模型各层的一些重要协
议如图 2.10所示。
1,网络接口层协议
TCP/IP的网络接口层中包括各种物理网协议,例如
Ethernet、令牌环、帧中继,ISDN和分组交换网 X.25等。
当各种物理网被用作传送 IP 数据包的通道时,就可以认为
是属于这一层的内容。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
2,网络层协议
网络层包括多个重要协议,主要协议有四个,即 IP协议、
ARP协议,RARP协议和 ICMP协议。
? 网际协议 (Internet protocol,简称 IP)是其中的核心协议,
IP协议规定网际层数据分组的格式。
? 因特网控制消息协议 (Internet Control message
protocol,简称 ICMP):提供网络控制和消息传递功能的。
? 地址解释协议 (Address resolution protocol,简称 ARP):
用来将逻辑地址解析成物理地址。
? 反向地址解释协议 (Reverse address resolution protocol,
简称 RARP):通过 RARP广播,将物理地址解析成逻辑地址。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
3,传输层协议
传输层的主要协议有 TCP协议和 UDP协议。
传输控制协议 (Transport Control Protocol,简称 TCP):
是面向连接的协议,用三次握手和滑动窗口机制来保证传输的
可靠性和进行流量控制。
用户数据报协议 (User datagram protocol 简称 UDP)是面
向无连接的不可靠传输层协议。
4,应用层协议
应用层包括了众多的应用与应用支撑协议。常见的应用协议
有:文件传输协议 FTP、超文本传输协议 HTTP、简单邮件传输
协议 SMTP、虚拟终端 TELNET;常见的应用支撑协议包括域名
服务 DNS和简单网络管理协议 SNMP等。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
FTP HTTP SMTP DNS
图 2.9 TCP/IP协议图
TFTP DNSTel
net
SMTPTCP DNSUDP
IP
互联网 您的局域网 许多局域网
和广域网
应用层协议
传输层协议
网络层协议
网络接入层
IPICMP IPARP IPRARP
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
2.3.3 TCP/IP网络模型数据封装
在 TCP/ IP网络模型中,如 图 2.11所示,网络必须执
行以下 5个转换步骤以完成数据封装的过程:
1,生成数据
当用户发送一个电子邮件信息时,它的字母或数字字符
被转换成可以通过互联网络传输的数据。
2,为端到端的传输将数据打包
通过对数据打包来实现互联网的传输。通过使用段传输
功能确保在两端的信息主机的电子邮件系统之间进行可靠
的通信。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
3,在报头上附加目的网络地址
数据被放置在一个分组或者数据报中,其中包含了带有源和
目的逻辑地址的网络报头。这些地址有助于网络设备在动态选定的
路径上发送这些分组。
4,附加目的数据链路层地址( MAC地址)到数据链路报头
每一个网络设备必须将分组放置在帧中。该帧的报头包括在
路径中下一台直接相连设备的物理地址。
5,传输比特
帧必须被转换成一种 1和 0的模式,才能在介质上(通常为线
缆)进行传输。时钟功能( clocking function)使得设备可以区
分这些在介质上传输的比特。物理互联网络上的介质可能随着使用
的不同路径而有所不同。例如,电子邮件信息可以起源于一个局域
网( LA N),通过校园骨干网,然后到达广域网( WAN)链路,
直到它到达另一个远端局域网( LAN)上的目的主机。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
应用层
传输层
网络层
网络接口层
1.
2.
3.
4.
5.
图 2.11 TCP/IP模型数据封装
TCP 数据IPLH LT
TCP 数据IP
TCP 数据
数据
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.4 OSI 模型和 TCP/IP 模型的区别
1,相似点
ISO/OSI模型和 TCP/IP模型有许多相似之处。具体表现
在:两者都均采用了层次结构并存在可比的传输层和网络层;
两者都有应用层,虽然所提供的服务有所不同;均是一种基
于协议数据单元的包交换网络,而且分别作为概念上的模型
和事实上的标准,具有同等的重要性。
2,不同点
但是 ISO/OSI模型和 TCP/IP模型还是有许多不同之处。
下面我们讨论为两种模型的不同之处。
( 1) OSI模型包括了七层,而 TCP/IP模型只有四层。虽
然它们具有功能相当的网络层、传输层和应用层,但其它层
并不相同。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.4 OSI 模型和 TCP/IP 模型的区别
TCP/IP模型中没有专门的表示层和会话层,它将与这两层相关
的表达、编码和会话控制等功能包含到了应用层中去完成。另外,
TCP/IP模型还将 OSI的数据链路层和物理层包括到了一个网络访问
层中。
( 2) OSI模型在网络层支持无连接和面向连接的两种服务,而
在传输层仅支持面向连接的服务。 TCP/IP模型在互联网层则只支
持无连接的一种服务,但在传输层支持面向连接和无连接两种服务。
( 3) TCP/IP由于有较少的层次,因而显得更简单,TCP/ IP一
开始就考虑到多种异构网的互连问题,并将网际协议( IP)作为
TCP/IP的重要组成部分,并且作为从因特网 (INTERNET)上发展
起来的协议,已经成了网络互连的事实标准。但是,目前还没有实
际网络是建立在 OSI七层模型基础上的,OSI仅仅作为理论的参考
模型被广泛使用。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
习题
1,在实施网络分层时要依据那些原则?
2,面向连接和无连接服务有何区别?
3,OSI模型包括哪七层?
4,简述 OSI模型各层的功能?
5,同一台计算机之间相邻层如何通信。
6,不同计算机上同等层之间如何通信?
7,简述数据发送方封装的过程。
8,OSI模型中每一层数据的名称?
9,在 TCP/IP协议中各层有哪些主要协议?
第 2章 计算机网络体系结构
本章基本要求:
?掌握计算机网络体系结构基本概念,
?熟悉 ISO/OSI开放系统互连参考模型各层的功
能,
?熟悉 TCP/IP体系结构。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
第 2章 计算机网络体系结构
2.1 计算机网络体系结构概述
2.2 OSI/ISO开放系统互连参考模型
2.3 TCP/IP模型
2.4 OSI模型和 TCP/IP模型的区别
习题
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
2.1.1 建立计算机网络体系结构的必要性
为了能够使不同地理分布、且功能相对独立的计算机之
间组成网络实现资源共享,计算机网络系统需要涉及和解
决许多复杂的问题,包括信号传输、差错控制、寻址、数
据交换和提供用户接口等一系列问题。计算机网络体系结
构是为简化这些问题的研究、设计与实现而抽象出来的一
种结构模型。
计算机网络系统,一般采用层次模型。在层次模型中,
往往将系统所要实现的复杂功能分化为若干个相对简单的
细小功能,每一项分功能以相对独立的方式去实现。这样
就有助于将复杂的问题简化为若干个相对简单的问题,从
而达到分而治之、各个击破的目的。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
2.1.2 计算机网络的分层模型
将上述分层的思想或方法运用于计算机网络中,就产生了
计算机网络的分层模型。在实施网络分层时要依据以下原则:
● 根据功能进行抽象分层,每个层次所要实现的功能或服
务均有明确的规定。
● 每层功能的选择应有利于标准化。
● 不同的系统分成相同的层次,对等层次具有相同功能。
● 高层使用下层提供的服务时,下层服务的实现是不可见
的
● 层的数目要适当。层次太少功能不明确,层次太多体系
结构过于庞大。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
图 2.1 给出了计算机网络分层模型的示意图,该模型将计算
机网络中的每台机器抽象为若干层 (layer),每层实现一种相对
独立的功能。分层模型涉及下面一些重要的术语。
1,实体与对等实体
每一层中,用于实现该层功能的活动元素被称为实体
(entity),包括该层上实际存在的所有硬件与软件,如终端、电
子邮件系统、应用程序、进程等。不同机器上位于同一层次、
完成相同功能的实体被称为对等 (peer to peer)实体。
2.协议
为了使两个对等实体之间能够有效地通信,对等实体需要就
交换什么信息、如何交换信息等问题制定相应的规则或进行某
种约定。这种对等实体之间交换数据或通信时所必须遵守的规
则或标准的集合称为协议 (protocol)。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
实体
N+1层
N+1层协
议
图 2.1 网络分层模型的示意图
N+1层
实体
实体
N层
N层协议
N层
实体
实体
N-1层
N-1层协
议 N-1层
实体
接口
接口 接口
接口
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
协议由语法、语义和语序三大要素构成。语法包括数据格式、
信号电平等;语义指协议语法成分的含义,包括协调用的控制信息
和差错管理;语序包括时序控制和速度匹配关系。
3,服务与接口
在网络分层结构模型中,每一层为相邻的上一层所提供的功能
称为服务。 N层使用 N-1层所提供的服务,向 N+1层提供功能更强
大的服务。
4,服务类型
在计算机网络协议的层次结构中,层与层之间具有服务与被服
务的单向依赖关系,下层向上层提供服务,而上层调用下层的服务。
因此可称任意相邻两层的下层为服务提供者,上层为服务调用者。
下层为上层提供的服务可分为两类:面向连接服务( Connection
Oriented Service)和无连接服务( Connectionless Service)。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.1 计算机网络体系结构概述
5,服务原语
相邻层之间通过一组服务原语( Service Primitive)建立相
互作用,完成服务与被服务的过程。这些原语供用户和其他实
体访问该服务。这些原语通知服务提供者采取某些行动或报告
某个对等实体的活动。服务原语可被划分为四类,分别是请求
( Request)、指示( Indication)、响应( Response)、确
认( Confirm)。
2.1.3 计算机网络体系结构
网络体系结构是从体系结构的角度来研究和设计计算机网络
体系,其核心是网络系统的逻辑结构和功能分配定义,即描述
实现不同计算机系统之间互连和通信的方法和结构,是层和协
议的集合。通常采用结构化设计方法,将计算机网络系统划分
成若干功能模块,形成层次分明的网络体系结构。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
国际标准化组织 ISO在 1977年建立了一个分委员会来专
门研究体系结构,提出了开放系统互连参考模型( OSI:
Open System Interconnection Reference Mode),这是
一个定义连接异种计算机标准的主体结构,OSI被认为是解
决了已有协议在广域网和高通信负载方面存在的问题。
“开放”表示能使任何两个遵守参考模型和有关标准的
系统进行连接。
“互连”是指将不同的系统互相连接起来,以达到相互
交换信息,共享资源,分布应用和分布处理的目的。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
2.2.1 OSI七层模型
开放系统互连参考模型( OSI)采用分层的结构化技术,
共分 7层,从低到高为:物理层、数据链路层、网络层、传
输层、会话层、表示层、应用层。无论什么样的分层模型,
都基于一个基本思想,遵守同样的分层原则:即目标站第 n
层收到的对象应当与源站第 n层发出的对象完全一致,如图
2.2所示 。
它由 7个协议层组成,最低 3层( 1~ 3)是依赖网络的,
实现通信子网的功能。高 3层( 5~ 7)是面向应用的,实
现资源子网的功能。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
应用层
会话层
传输层
网络层
物理层
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
接
口
接
口
接
口
接
口
接
口
接
口
报文( M)
报文( M)
报文( M)
报文( M)
报文分组( P)
帧( F)
位( bit)
表示层协议
会话层协议
传输层协议
数据链路层
图 2.2 OSI七层模型
表示层
网络层协议
物理媒介
数据链路层协议
主机 X 主机 Y
应用层协议
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
2.2.2 OSI参考模型各层的功能
1.物理层 (Physical Layer)
物理层位于 OSI参考模型的最低层,它直接面向原始比特流
的传输。物理层必须解决好包括传输介质、信道类型、数据与
信号之间的转换、信号传输中的衰减和噪声等在内的一系列问
题。另外,物理层标准要给出关于物理接口的机械、电气、功
能和规程特性,以便于不同的制造厂家既能够根据公认的标准
各自独立地制造设备,又能使各个厂家的产品能够相互兼容。
2.数据链路层 (Data Link Layer)
数据链路层涉及相邻节点之间的可靠数据传输,为了能够实
现相邻节点之间无差错的数据传送,数据链路层在数据传输过
程中提供了确认、差错控制和流量控制等机制。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
3.网络层 (Network Layer)
网络中的两台计算机进行通信时,中间可能要经过许多
中间结点甚至不同的通信子网。网络层的任务就是在通信
子网中选择一条合适的路径,使发送端传输层所传下来的
数据能够通过所选择的路径到达目的端。
4.传输层 (Transport Layer)
传输层是 OSI七层模型中唯一负责端到端节点间数据传
输和控制功能的层。传输层是 OSI七层模型中承上启下的
层,它下面的三层主要面向网络通信,以确保信息被准确
有效地传输;它上面的三个层次则面向用户主机,为用户
提供各种服务。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
5.会话层 (Session Layer)
会话层的主要功能是在两个节点间建立、维护和释放面向
用户的连接,并对会话进行管理和控制,保证会话数据可靠
传送。
会话连接和传输连接之间有三种关系:一对一关系;一对
多关系;多对一关系。
会话过程中,会话层来需要决定使用全双工通信还是半双
工通信。
6.表示层 (Presentation Layer)
表示层专门负责有关网络中计算机信息表示方式的问题。
表示层负责在不同的数据格式之间进行转换操作,以实现不
同计算机系统间的信息交换。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
7.应用层 (Application Layer)
应用层是 OSI参考模型中最靠近用户的一层,负责为用
户的应用程序提供网络服务。与 OSI参考模型的其他层不
同的是,它不为任何其他 OSI层提供服务,而只是为 OSI
模型以外的应用程序提供服务,如电子表格程序和文字处
理程序。包括为相互通信的应用程序或进程之间建立连接、
进行同步,建立关于错误纠正和控制数据完整性过程的协
商等。应用层还包含大量的应用协议,如虚拟终端协议
( Telnet)、简单邮件传输协议( SMTP)、简单网络管
理协议( SNMP)和超文本传输协议( HTTP)等。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
2.2.3 OSI的层间通信
在同一台计算机的层间交互过程,以及在同一层上不同
计算机之间的相互通信过程是相互关联的。
? 每一层向其协议规范中的上层提供服务。
? 每层都与其他计算机中相同层的软件和硬件交换一些信
息。
1,同一台计算机之间相邻层的通信
如图 2.4所示,是 OSI类型通信的一个例子。主机 A发送
信息给主机 B。主机 A的应用程序与主机 B的应用层通信,
主机 A的应用层再与主机 A的表示层通信,主机 A的表示层
再与主机 A的会话层通信,等等,直到到达主机 A的物理层。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
物理层把信息放到网络物理介质上并把信息从网络物理
介质上送走。信息在网络物理介质上传送并被主机 B接收
后,会以相反的方向向上通过主机 B的各层(先是物理层,
然后是数据链路层,等等),直到最终到达主机 B的应用
层。
从各层的观点来看,在该层包头之后的比特被认为是数
据。例如,第 4层认为第 5层、第 6层和第 7层的包头与原
始的用户数据一起是一个大的数据字段。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
①
②
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.4 OSI模型相邻层之间通信
L7 DataL6L5L4L3L2H L2T
L7 DataL6L5L4L3
L7 DataL6L5L4
L7 DataL6L5
L7 DataL6
L7 Data 应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
L7 DataL6L5L4L3L2H L2T
L7 DataL6L5L4L3
L7 DataL6L5L4
L7 DataL6L5
L7 DataL6
L7 Data
③
L#-第#层的头 L#H-第#层的头 L#T-第#层的尾
主机 A 主机 B
④
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
当接收时(步骤 3),主机 B启动其上的相邻层协议进行通信,
如图 2.4中的步骤 4,指明了接收数据在协议栈中逐层向上递交
处理的过程。具体步骤如下:
步骤 A:物理层(第 1层)保证比特的同步,并将接收的二进
制数据放到缓存中。因此,第 1层在媒体上已经提供了传递的比
特流。
步骤 B:数据链路层(第 2层)检查帧尾的帧校验序列( FCS),
判断传输过程中是否有错误发生(差错控制)。如果有错误发
生,丢弃此帧。检查数据链路层的地址,使主机 B决定是否需要
进一步处理这些数据。如果这个地址是主机 B的地址,那么将在
第 2层的包头和尾之间的数据传递给第 3层的软件。从而,数据
链路层通过该链路实现了数据的传输。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
步骤 C:检查网络层(第 3层)的目的地址。如果该地
址是主机 B的地址(逻辑地址),处理过程将会继续进行,
将在第 3层包头之后的数据传递给传输层(第 4层)的软件。
从而,第 3层实现了端到端的数据传输服务。
步骤 D:如果传输层(第 4层)选择了差错恢复,标识
这段数据的计数器与确认信息(差错恢复)一起在第 4层
的包头中进行编码。在差错恢复和对输入数据进行重新排
序后,将这些数据传递给会话层。
步骤 E:会话层(第 5层)可以用来保证一系列消息的
完整性。如果没有完成后续的通信,收到的数据可能没有
任何意义。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
步骤 F:表示层(第 6层)定义 并维护数据的格式。例
如,如果数据是二进制数据而不是字符数据,包头会指明
这一点。接收方并不会用主机 B中缺省的 ASCII字符集转换
这些数据。通常,此类包头只包括在初始流中,而不包含
在每个被传输的流(数据格式)中。在完成了数据格式的
转换后,将数据传递给应用层的软件。
步骤 G:应用层(第 7层)处理最后的包头,然后检查真
正的终端用户数据。这个包头指明了主机 A与主机 B已协商
好的应用程序所使用的运行参数,该包头用于交换所有参
数值。因此,通常只在应用程序初始化时才发送和接收这
个包头。例如,在文件传输时,会相互传递所传输文件的
长度和文件格式(应用参数)。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
2,不同计算机上同等层之间的通信
第 N层必须与另外一台计算机上的第 N层通信才能成功地实现该
层的功能。
为了与其他计算机上的同等层进行通信,每一层都定义了一个
包头,而且有时还定义了包尾。包头和包尾是附加的数据位,由发
送方计算机的软件或硬件生成,放在由第 N+1层传给第 N层的数据
的前面或后面。这一层与其他计算机上同等层进行通信所需要的信
息就在这些包头或包尾被编码。接收方计算机的第 N层软件或硬件
解释由发送方计算机第 N层所生成的包头或包尾,从而得知此时第
N层的过程应如何处理。
每一层使用自己层的协议与其他系统的对等层相互通信。每一
层的协议在与对等层之间交换的信息称为协议数据单元( PDU)。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
如图 2.5所示提供了同等层之间通信的概念模型。主机 A的应用
层与主机 B的应用层通信。同样,主机 A的传输层、会话层和表示
层也与主机 B的对等层进行通信。 OSI模型的下三层必须处理数据
的传输,路由器 C参与此过程。主机 A的网络层、数据链路层和物
理层与路由器 C进行通信。同样,路由器 C与主机 B的物理、数据链
路层和网络层进行通信。
OSI参考模型的分层禁止了不同主机间的对等层之间的直接通信。
因此,主机 A的每一层必须依靠主机 A相邻层提供的服务来与主机 B
的对应层通信。假定主机 A的第 4层必须与主机 B的第 4层通信。那
么,主机 A的第 4层就必须使用主机 A的第 3层提供的服务。第 4层叫
服务用户,第 3层叫服务提供者。第 3层通过一个服务接入点( SAP)
给第 4层提供服务。这些服务接入点使得第 4层能要求第 3层提供服
务。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.5 OSI模型对等层通信
主机 A 主机 B
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
网络层
数据链路层
物理层
路由器 C
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
3,封装
通常将数据放置在每一层的包头后面(及包尾之前)的
概念称为封装。如 图 2.6所示,当每一层生成了包头时,将
由相邻上一层传递来的数据放到该包头的后面,这样就封
装了高一层的数据。对数据链路层(第 2层)协议而言,第
3层的包头和数据将放到第二层的包头和尾之间。物理层并
不使用封装,因为它不使用包头和尾。参考图 2.6中的步骤
①,从用户数据的生成到编码物理信号(步骤 2)的整个封
装过程如下所述:
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.6发送方的数据的封装过程
应用层
上层数据
数据
数据
数据
01011101010010000010
MAC头
LLC头
IP头
TCP头
PDU
段
包
帧
数
据
位
FCS
FCS
上层数据
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
步骤 1:应用程序已经生成了数据。应用层生成该层的包头并将
数据放在它的后面。这个数据并传递到表示层。
步骤 2:表示层生成该层的包头并将数据放在它的后面。这个数
据结构被传递到会话层。
步骤 3:会话层生成该层的包头并将数据放在它的后面。这个数
据结构被传递到传输层。
步骤 4:传输层生成该层的包头并将数据放在它的后面。这个数
据结构被传递到网络层。
步骤 5:网络层生成该层的包头并将数据放在它的后面。这个数
据结构被传递到数据链路层。
步骤 6:数据链路层生成该层的包头并将数据放在它的后面。数
据链路层把包尾放到此结构的后面,这个数据结构被传递到物理层。
步骤 7:物理层在媒体上对信号进行编码,传输该数据位。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
4,解封装( De-Encapsulation)
当远程设备顺序接收到一串比特时,它会把它们传送给数
据链路层以组装为帧。当数据链路层接收到该帧时,它会执
行以下工作:
? 读取物理地址和由直接相连的对等数据链路层所提供的控
制信息。
? 从该帧剥离该控制信息并由此创建一个数据报。
? 遵照在帧的控制部分中出现的内容而把数据报向上传送到
相邻层。
这个过程被称为解封装,每个后续层都会经历一个类似过
程。如 图 2.7所示。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
表示层
会话层
传输层
网络层
数据链路层
物理层
应用层
上层数据
010111010100100000
10
LLC头+ IP头+ TCP头+数据MAC头
IP头+ TCP头+数据
LLC头
IP头
TCP头
TCP头+数据
上层数据
图 2.7 接收方的数据的解封装过程
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
5,OSI模型每一层数据的名称
为了使数据分组从源主机传送到目的主机,如图 2.8中
所示,源主机 OSI模型的每一层要与目标主机的每一层进
行通信。用 Peer-to-peer communications(对等实体
间通信)表示源主机与目的主机对等层间的通信。在这一
过程中,每一层的协议交换的信息称为协议数据单元
( PDU)。位于源计算机上的每个通信层,使用针对该层
的协议数据单元( PDU)与目标计算机上的对等层进行通
信。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.2 ISO/OSI开放系统互连参考模型
数据段
数据包
数据帧
比特
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.8 数据名称
主机 A 主机 B
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
数据
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
2.3.1 TCP/IP 模型
TCP/IP模型是由美国国防部创建的,所以有时又称
DoD(Department of Defense)模型。是发展至今最成
功的通信协议,它被用于构筑目前最大的、开放的互联网
络系统 Internt。 TCP/IP是一组通信协议的代名词,这组
协议使任何具有网络设备的用户能访问和共享 Internet上
的信息,其中最重要的协议族是传输控制协议( TCP)和
网际协议( IP)。 TCP和 IP是两个独立且紧密结合的协议,
负责管理和引导数据报文在 Internet上的传输。二者使用
专门的报文头定义每个报文的内容。 TCP负责和远程主机
的连接,IP负责寻址,使报文被送到其该去的地方。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
TCP/IP也分为不同的层次开发,每一层负责不同的通信
功能。但 TCP/IP协议简化了层次设备,只有四层,由下而
上分别为网络接口层、网络层、传输层、应用层,如 图 2.9
所示。
在 TCP/IP模型中,网络接口层是 TCP/IP模型的最低层,
负责接收从网络层交来的 IP数据报并将 IP 数据报通过底层
物理网络发送出去,或者从底层物理网络上接收物理帧,
抽出 IP 数据报,交给互联网层。网络接口层使采用不同
技术和网络硬件的网络之间能够互联,它包括属于操作系
统的设备驱动器和计算机网络接口卡,以处理具体的硬件
物理接口。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
网络层负责独立地将分组从源主机送往目标主机,涉及为分
组提供最佳路径的选择和交换功能,并使这一过程与它们所经
过的路径和网络无关。
传输层的作用是在源结点和目的结点的两个对等实体间提供
可靠的端到端的数据通信。为保证数据传输的可靠性,传输层
协议也提供了确认、差错控制和流量控制等机制。传输层从应
用层接受数据,并且在必要的时候把它分成较小的单元,传递
给网络层,并确保到达对方的各段信息正确无误。
应用层涉及为用户提供网络应用,并为这些应用提供网络支
撑服务,把用户的数据发送到低层,为应用程序提供网络接口。
由于 TCP/IP将所有与应用相关的内容都有归为一层,所以在应
用层要处理高层协议、数据表达和对话控制等任务。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
应用层
表示层
会话层
传输层
网络层
数据链路层
物理层
图 2.10 9 OSI模型和 TCP/IP模型
应用层
数据流层
应用层
传输层
网络层
网络接口层
协议
网络
TCP/IP模型 OSI模型
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
2.3.2 各层主要协议
TCP/IP事实上是一个协议系列或协议簇,目前包含了
100多个协议,用来将各种计算机和数据通信设备组成实
际的 TCP/IP计算机网络。 TCP/IP模型各层的一些重要协
议如图 2.10所示。
1,网络接口层协议
TCP/IP的网络接口层中包括各种物理网协议,例如
Ethernet、令牌环、帧中继,ISDN和分组交换网 X.25等。
当各种物理网被用作传送 IP 数据包的通道时,就可以认为
是属于这一层的内容。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
2,网络层协议
网络层包括多个重要协议,主要协议有四个,即 IP协议、
ARP协议,RARP协议和 ICMP协议。
? 网际协议 (Internet protocol,简称 IP)是其中的核心协议,
IP协议规定网际层数据分组的格式。
? 因特网控制消息协议 (Internet Control message
protocol,简称 ICMP):提供网络控制和消息传递功能的。
? 地址解释协议 (Address resolution protocol,简称 ARP):
用来将逻辑地址解析成物理地址。
? 反向地址解释协议 (Reverse address resolution protocol,
简称 RARP):通过 RARP广播,将物理地址解析成逻辑地址。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
3,传输层协议
传输层的主要协议有 TCP协议和 UDP协议。
传输控制协议 (Transport Control Protocol,简称 TCP):
是面向连接的协议,用三次握手和滑动窗口机制来保证传输的
可靠性和进行流量控制。
用户数据报协议 (User datagram protocol 简称 UDP)是面
向无连接的不可靠传输层协议。
4,应用层协议
应用层包括了众多的应用与应用支撑协议。常见的应用协议
有:文件传输协议 FTP、超文本传输协议 HTTP、简单邮件传输
协议 SMTP、虚拟终端 TELNET;常见的应用支撑协议包括域名
服务 DNS和简单网络管理协议 SNMP等。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
FTP HTTP SMTP DNS
图 2.9 TCP/IP协议图
TFTP DNSTel
net
SMTPTCP DNSUDP
IP
互联网 您的局域网 许多局域网
和广域网
应用层协议
传输层协议
网络层协议
网络接入层
IPICMP IPARP IPRARP
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
2.3.3 TCP/IP网络模型数据封装
在 TCP/ IP网络模型中,如 图 2.11所示,网络必须执
行以下 5个转换步骤以完成数据封装的过程:
1,生成数据
当用户发送一个电子邮件信息时,它的字母或数字字符
被转换成可以通过互联网络传输的数据。
2,为端到端的传输将数据打包
通过对数据打包来实现互联网的传输。通过使用段传输
功能确保在两端的信息主机的电子邮件系统之间进行可靠
的通信。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
3,在报头上附加目的网络地址
数据被放置在一个分组或者数据报中,其中包含了带有源和
目的逻辑地址的网络报头。这些地址有助于网络设备在动态选定的
路径上发送这些分组。
4,附加目的数据链路层地址( MAC地址)到数据链路报头
每一个网络设备必须将分组放置在帧中。该帧的报头包括在
路径中下一台直接相连设备的物理地址。
5,传输比特
帧必须被转换成一种 1和 0的模式,才能在介质上(通常为线
缆)进行传输。时钟功能( clocking function)使得设备可以区
分这些在介质上传输的比特。物理互联网络上的介质可能随着使用
的不同路径而有所不同。例如,电子邮件信息可以起源于一个局域
网( LA N),通过校园骨干网,然后到达广域网( WAN)链路,
直到它到达另一个远端局域网( LAN)上的目的主机。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.3 TCP/IP 模型
应用层
传输层
网络层
网络接口层
1.
2.
3.
4.
5.
图 2.11 TCP/IP模型数据封装
TCP 数据IPLH LT
TCP 数据IP
TCP 数据
数据
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.4 OSI 模型和 TCP/IP 模型的区别
1,相似点
ISO/OSI模型和 TCP/IP模型有许多相似之处。具体表现
在:两者都均采用了层次结构并存在可比的传输层和网络层;
两者都有应用层,虽然所提供的服务有所不同;均是一种基
于协议数据单元的包交换网络,而且分别作为概念上的模型
和事实上的标准,具有同等的重要性。
2,不同点
但是 ISO/OSI模型和 TCP/IP模型还是有许多不同之处。
下面我们讨论为两种模型的不同之处。
( 1) OSI模型包括了七层,而 TCP/IP模型只有四层。虽
然它们具有功能相当的网络层、传输层和应用层,但其它层
并不相同。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
2.4 OSI 模型和 TCP/IP 模型的区别
TCP/IP模型中没有专门的表示层和会话层,它将与这两层相关
的表达、编码和会话控制等功能包含到了应用层中去完成。另外,
TCP/IP模型还将 OSI的数据链路层和物理层包括到了一个网络访问
层中。
( 2) OSI模型在网络层支持无连接和面向连接的两种服务,而
在传输层仅支持面向连接的服务。 TCP/IP模型在互联网层则只支
持无连接的一种服务,但在传输层支持面向连接和无连接两种服务。
( 3) TCP/IP由于有较少的层次,因而显得更简单,TCP/ IP一
开始就考虑到多种异构网的互连问题,并将网际协议( IP)作为
TCP/IP的重要组成部分,并且作为从因特网 (INTERNET)上发展
起来的协议,已经成了网络互连的事实标准。但是,目前还没有实
际网络是建立在 OSI七层模型基础上的,OSI仅仅作为理论的参考
模型被广泛使用。
2010年 5月 21日星期五 2时 17分 52秒 计算机网络技术实用教程 (第 3版 )
习题
1,在实施网络分层时要依据那些原则?
2,面向连接和无连接服务有何区别?
3,OSI模型包括哪七层?
4,简述 OSI模型各层的功能?
5,同一台计算机之间相邻层如何通信。
6,不同计算机上同等层之间如何通信?
7,简述数据发送方封装的过程。
8,OSI模型中每一层数据的名称?
9,在 TCP/IP协议中各层有哪些主要协议?