OSI模型和TCP/IP协议族(第2章)
壹、ISO即国际标准化组织,成立于1947年,是一个多国团体,专门就一些国际标准达成世界范围的一致。一个全方位覆盖网络通信问题的ISO标准就是开放系统互联(OSI)模型,最早出现在在20世纪70年代后期。
ISO是个组织;而OSI是个模型。
一个开放系统(open system)就是一组协议的集合,它使得两个不同的系统之间能够相互通信,而不必考虑其底层体系结构。
OSI模型的作用就是展示两个不同的系统怎么才能做到互相通信,且不需要改变底层的硬件或软件的逻辑。OSI模型不是一个协议,它是一个为了更好的理解并设计出灵活、稳健且可互操作的网络体系机构而存在的模型。为OSI框架中的各种协议的创建提供基础,这才是OSI模型的本意。
OSI模型是一个分层的框架结构,其目的是为了设计出能够让各种类型的计算机系统相互通信的网络系统。它由七层独立且相关的层组成,而每层都定义了信息通过网络传输的完整过程的一部分。(见图2.3)
1.2层与层之间的通信
层之间的接口:数据和网络信息之所以能够在发送设备间逐层向下传递,同时又在接受设备中能够逐层向上交付,是因为每对相邻的层之间有一个接口。每个接口都定义了该层必须向它的上层提供什么样的信息和服务。定义清晰明确的接口和功能都可以使网络模块化。
在图2.4中,设备A向设备B发送报文(经过中间结点)。
1.3封装
下层的 分组中的数据部分就是紧邻上层的完整分组
这一概念成为封装。
1.4各层的功能
贰 TCP/IP协议族
TCP/IP协议族是五层模型。
一条链路就是允许一组计算机互相通信的一个网络。例如,一个办公室的所有计算机都通过网线连接在一起,这种连接关系就形成了一条链路。
物理层:TCP/IP没有定义任何特定的协议。它支持所有标准和专用的协议。在这一层,通信发生在两跳或两结点之间,可能是计算机,也可能是路由器。单位 是比特。
请注意:: 如果一个结点与N条链路相连,那么它需要N个物理层协议,每条链路各需要一个,原因在于不同的链路可能使用不同的物理层协议。
数据链路层:也没有定义特定协议,支持所有协议。通信发生在两跳或两结点之间,通信单位是帧。
网络层:在网络层中(或者更准确的说是互联网层),TCP/IP支持的是网际协议。(网际协议是TCP/IP协议使用的传输机制。)IP传输的是成为数据报的分组。每个数据报独立传输。IP不会跟踪记录这些数据报经过的路由,并且在它们到达终点后,IP也不具有按原顺序重排的能力。 网络层的通信是端到端的通信。
运输层:和网络层有一个重要区别,那就是网络中的所有结点都必须有网络层,但只有两端的计算机上才需要运输层。网络层负责将一个个数据报从计算机A发送到B,而运输层则要负责将完整的 报文(也成为报文段,用户数据报或分组)从A交付给B。一个报文段可能包含了几个到几十个数据报。报文段先要被拆分为多个数据报,然后再将这些数据报分别递交给网络层来传输。因为网际协议会为每个数据报指定不同的路由,所以这些数据报有可能会失序到达,也有可能丢失。计算机B的运输层需要等所有的数据报全部抵达后进行重装,从而得到报文段。TCP/IP协议族有两个运输层协议:用户数据报协议(UDP)和传输控制协议(TCP)。最近出现新的运输层协议称为流控制传输协议(SCTP)。
应用层: 相当于OSI模型中会话层、表示层和应用层的组合。应用层使用户能够获得网络所提供的服务。端到端的通信。由计算机A生成的报文无修改地被传送到B。 单位是 报文。