计算机网络系列内容的学习目录 → \rightarrow →谢希仁计算机网络学习系列内容汇总。
6. 计算机网络体系结构
6.1 常见的计算机网络体系结构
计算机网络体系结构是指计算机网络层次结构模型,它是各层的协议以及层次之间的端口的集合。在计算机网络中实现通信必须依靠网络通信协议,目前广泛采用的是国际标准化组织(ISO)1997年提出的开放系统互联(Open System Interconnection,OSI)参考模型,习惯上称为ISO/OSI参考模型。
OSI从逻辑上,把一个网络系统分为功能上相对独立的7个有序的子系统,这样OSI体系结构就由功能上相对独立的7个层次组成,如下图左边所示。它们由低到高分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
20世纪70年代初期,美国国防部高级研究计划局(ARPA)为了实现异种网之间的互联与互通,大力资助网络技术的研究开发工作。ARPANET开始使用的是一种称为网络控制协议(network control protocol,NCP)的协议。随着ARPANET的发展,需要更为复杂的协议。1973年,引进了传输控制协议TCP,随后,在1981年引入了网际协议IP。1982年,TCP和IP被标准化成为TCP/IP协议组,1983年取代了ARPANET上的NCP,并最终形成较为完善的TCP/IP体系结构和协议规范。
TCP/IP(transmission control protocol/internet protocol,传输控制协议/网际协议)由它的2个主要协议即TCP协议和IP协议而得名。TCP/IP是Internet上所有网络和主机之间进行交流时所使用的共同“语言”,是Internet上使用的一组完整的标准网络连接协议。通常所说的TCP/IP协议实际上包含了大量的协议和应用,且由多个独立定义的协议组合在一起,因此,更确切地说,应该称其为TCP/IP协议集。
TCP/IP共有4个层次,它们分别是网络接口层、网际层、传输层和应用层,如下图右边所示。
OSI标准失败的原因: 1. OSI的专家们缺乏实际经验,他们在完成OSI标准时没有商业驱动力;
2. OSI的协议实现起来过分复杂,而且运行效率很低;
3. OSI标准的制定周期太长,因而使得按OSI标准生产的设备无法及时进入市场;
4. OSI的层次划分也不太合理,有些功能在多个层次中重复出现。
对比两个体系结构可以看出,TCP/IP体系结构相当于将OSI体系结构的物理层和数据链路层合并为网络接口层,并去掉会话层和表示层。另外,由于TCP/IP在网路中使用的协议是IP协议,中文意思为网际协议,因此,TCP/IP体系结构的网络层常称为网际层。
当用户需要接入因特网,这就要求用户的主机必须使用TCP/IP协议。即使用户的网络不需要接入因特网,也可以使用TCP/IP协议。在用户主机的操作系统中,通常都带有符合TCP/IP体系结构标准的TCP/IP协议族。而用于网络互联的路由器中,也带有符合TCP/IP体系结构标准的TCP/IP协议族,只不过路由器一般只包含网络接口层和网际层。
TCP/IP体系结构的网络接口层并没有规定什么具体的内容,这样做的目的是可以互联全世界各种不同的网络接口。因此,本质上TCP/IP体系结构只有上面的三层,IP协议是TCP/IP体系结构网际层的核心协议,TCP和UDP是TCP/IP体系结构运输层的两个重要协议,TCP/IP体系结构的应用层包含了大量的应用层协议,例如HTTP、SMTP、DNS、RTP等。
IP协议可以将不同的网络接口进行互连,并向其上的TCP协议和UDP协议提供网络互联服务。而TCP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供可靠传输的服务。UDP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的相应协议提供不可靠传输的服务。IP协议作为TCP/IP体系结构中的核心协议,一方面负责互连不同的网络接口,也就是IP over everything;另一方面,为各种网络应用提供服务,也就是Everything over IP。
在TCP/IP协议体系中包含大量的协议,IP协议和TCP协议是其中非常重要的两个协议,因此,用TCP和IP这两个协议来表示整个协议大家族,常称为TCP/IP协议族。
在嵌入式系统开发领域,TCP/IP协议族常称为TCP/IP协议栈,这是因为TCP/IP协议体系的分层结构与数据结构中的栈在图形画法是类似的。
由于TCP/IP体系结构为了将不同的网络接口进行互连,因此它的网络接口层并没有规定什么具体的内容。当我们学习计算机网络的完整体系时,需要采取折中的方法,综合OSI和TCP/IP的优点,采用一种五层协议的原理体系结构。
五层协议的原理体系结构从下到上依次为物理层、数据链路层、网络层、运输层、应用层,如下图所示。
可以看出五层协议的原理体系结构将TCP/IP体系结构的网络接口层又重新划分为物理层和数据链路层。
6.1.1 课后练习
1. OSI/RM体系结构、TCP/IP体系结构、原理体系结构的分层数量分别为( C )
A. 4,5,6 B. 5,6,7 C. 7,4,5 D. 7,6,5
分析: OSI/RM体系结构共有7层,TCP/IP体系结构共有4层,原理体系结构共有5层,分别如下图所示。
2. 在OSI/RM体系结构中,运输层的相邻上层为( B )
A. 数据