相互通信的两个计算机系统必须高度协调工作才行,而这种“协调”是相当复杂的。
分工可将庞大而复杂的问题,转化为若干较小的局部问题,而这些较小的局部问题就比较易于研究和处理。
计算机网络的体系结构(architecture)是计算机网络的各层及其协议的集合。
体系结构是计算机网络及其部件所应完成的功能的精确定义。
这些功能是用何种硬件或软件完成的,则是一个遵循体系结构的实现(implementation) 的问题。
体系结构是抽象的,而实现则是具体的,是真正在运行的计算机硬件和软件。
只要遵循 OSI 标准,一个系统就可以和位于世界上任何地方的、也遵循同一标准的其他任何系统进行通信。
在市场化方面 OSI 却失败了。
法律上的(de jure)国际标准 OSI/RM 并没有得到市场的认可。
非国际标准 TCP/IP 现在获得了最广泛的应用。
TCP/IP 常被称为事实上的(de facto) 国际标准。
举例
计算机 1 向计算机 2 通过网络发送文件。可以将要做的工作进行如下的划分。
再设计一个通信服务模块
再设计一个网络接入模块
网络设备在层次模型中所处的位置
对等——分层模型中一个很重要的概念
网络的连接
若层数太少,就会使每一层的协议太复杂。
层数太多又会在描述和综合各层功能的系统工程任务时遇到较多的困难。
OSI的七层协议体系结构即复杂又不实用,但其概念清楚,理论较完整。
TCP/IP 协议得到了广泛的应用,但它原先并没有一个明确的体系结构。
从实质上讲,TCP/IP只有三层,即应用层、运输层、网际层。最下面的网络接口层并没有具体内容。
因此采取折中的办法,即综合 OSI 和 TCP/IP 的优点,采用一种只有五层协议的体系结构 。
应用层是体系结构中的最高层。
应用层确定进程之间通信的性质以满足用户的需要(这反映在用户所产生的服务请求)。
应用层直接为用户的应用进程提供服务。
在因特网中的应用层协议很多,如HTTP、SMTP、FTP等。
运输层的任务就是负责主机中两个进程之间的通信。
因特网的运输层可使用两种不同协议。即面向连接的传输控制协议TCP(Transmission Control Protocol),和无连接的用户数据报协议UDP(User Datagram Protocol)。
运输层的数据传送单位是报文段(segment)(当使用TCP时)或用户数据报(当使用UDT时)。
在分组交换网内的各个交换结点机都没有运输层。运输层只存在于分组交换网外面的主机之中。
网络层负责为分组交换网上的不同主机提供通信。
在发送数据时,网络层将运输层产生的报文段或用户数据报封装成分组或包进行传送。
在TCP/IP体系中,分组也叫作IP数据报,或简称为数据报。
在发送数据时,数据链路层的任务是将网络层交下来的数据报组装成帧,在两个相邻结点间的链路上传送以帧(frame)为单位的数据。
每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制,以及流量控制信息等)。
数据链路层常简称为链路层。
物理层的作用就是透明地传送比特流。
在物理层上所传数据的单位是比特。
传递信息所利用的一些物理媒体,如双绞线、同轴电缆、光缆等,并不在物理层之内,而是在物理层的下面。
各层所要完成的功能主要有:
实体(entity) 表示任何可发送或接收信息的硬件或软件进程。
协议是控制两个对等实体进行通信的规则的集合。
在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。
要实现本层协议,还需要使用下层所提供的服务。
相邻两层之间的关系 :
计算机网络中的数据交换必须遵守事先约定好的规则。
这些规则明确规定了所交换的数据的格式以及有关的同步问题(同步含有时序的意思)。
为进行网络中的数据交换而建立的规则、标准或约定即网络协议(network protocol),简称为协议。
本层的服务用户只能看见服务而无法看见下面的协议。
下面的协议对上面的服务用户是透明的。
协议是“水平的”,即协议是控制对等实体之间通信的规则。
服务是“垂直的”,即服务是由下层向上层通过层间接口提供的。
同一系统相邻两层的实体进行交互的地方,称为服务访问点 SAP (Service Access Point)。
协议必须将各种不利的条件事先都估计到,而不能假定一切情况都是很理想和很顺利的。
必须非常仔细地检查所设计协议能否应付所有的不利情况。
占据两个山顶的蓝军与驻扎在这山谷的白军作战。力量对比是:一个山顶上的蓝军打不过白军,但两个山顶的蓝军协同作战就可战胜白军。一个山顶上的蓝军拟于次日正午向白军发起攻击。于是发送电文给另一山顶上的友军。但通信线路很不好,电文出错的可能性很大。因此要求收到电文的友军必须发送确认电文。但确认电文也可能出错。试问能否设计出一种协议,使得蓝军能实现协同作战因而一定(即100 %)取得胜利?
这样无限循环下去,两边的蓝军都始终无法确定自己最后发出的电文对方是否已经收到。
没有一种协议能够保证蓝军 100% 获胜。
IP 可应用到各式各样的网络上