计算机网络的层次结构

简介: 计算机网络的层次结构

前言


上一篇文章中对计算机网络的发展历史进行了简单的认识,在这篇文章开始正式记录我对计算机网络知识的回顾学习过程,首先是对于计算机网络的层次结构的知识回顾总结。计算机网络的层次结构从层次结构设计的基本原则、OSI七层模型,TCP/IP四层模型三个方面来进行学习。

image.png

一、层次结构设计的基本原则


1. 计算机网络解决的问题


在了解计算机网络的层次结构设计的基本原则之前,我们先来了解一下为什么计算机网络要使用层次结构的设计?

image.png

我们首先假设有计算机A和计算机B两台计算机要进行通信,他们是通过计算机网络连接起来的,因此我门可以设想计算机网络中我们要解决什么样的问题:

  1. 首先计算机网络要解决的第一个问题就是,在两个计算机进行通信时要保证数据通路的顺畅
  2. 其次在互联网中有特别多的计算机,计算机A是如何准确的识别到计算机B?计算机B又是怎么样识别到计算机A?,因此对于计算机网络要解决的第二个问题就是识别目的计算机
  3. 通过计算机网络我们还要查询到目的计算机的状态,如果计算机A要和计算机B要进行通信,那么计算机A就要通过计算机网络来查看计算机B是否在线、是否能够接收数据,因此计算机网络要解决的第三个问题就是识别目的计算机的状态
  4. 在两台计算机建立了网络通信后,在传输数据时很有可能因为西伯利亚寒流等原因导致数据在传输的过程中发生错误,因此计算机网络的第四个要解决的问题就是数据是否错误的判断以及数据出错以后该怎样解决

很多现实的问题都是计算机网络需要去考虑并且要进行解决的,同时计算机网络要解决的问题也是繁多并且复杂的,因此计算机网络采用了分层设计,分层去解决不同的问题,分别实现不同的功能,以此来让计算机网络正常的运行起来。

2. 层次设计的基本原则


对于计算机网络层次的作用,可以举一个例子,如下图:

image.png

对于用户来说,主要直接进行接触的数据就是顶层网络应用的数据,例如视频、文件、游戏等,在这一层之下就是数据的可靠通信,例如数据错误、重复这些用户不关心的问题,再下一层就是物理层面的问题,例如数据是通过光纤还是网线连接到其他计算机的,属于比较底层的特性。以上就是使用网络层次比较形象的一个例子。可以从这个例子中看到,某一层并不需要上一层或下一层是如何实现的,仅仅需要当前层的接口如何提供服务的即可,每一层仅仅需要实现相对独立的功能,并且层与层之间的耦合度是比较低的

因此就引出了层次设计的基本原则:

  1. 各层之间是相互独立的
  2. 每一层要有足够的灵活性
  3. 各层之间完全解耦

二、OSI七层模型


OSI(Open System Interconnection)。参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系,一般称为OSI参考模型或七层模型。

参考资料OSI七层模型_百度百科

OSI七层模型以及每一层的作用可以用一张图来进行简要的概括:

image.png

OSI七层模型曾经也试图成为全球计算机都遵循的标准,而且在20世纪80年代很多的公司也都推崇OSI七层模型。但是OSI在市场化的过程中困难重重,因为在OSI标准制定出来之前TCP/IP模型在全球范围内已经成功的运行,因此OSI七层模型只是获得了很多理论上的研究成果,但是在市场方面却没有成功的推进,因此OSI并没有成为广为使用的标准模型。对于原因分析,有以下几点:

  1. OSI的专家缺乏实际经验
  2. OSI标准制定周期过长,按OSI标准生产的设备无法及时进入市场
  3. OSI模型设计的并不合理,一些功能在多层中重复出现

三、TCP/IP四层模型


TCP/IP是一组用于实现网络互连的通信协议。Internet网络体系结构以TCP/IP为核心。基于TCP/IP的参考模型将协议分成四个层次,它们分别是:网络访问层、网际互联层(主机到主机)、传输层、和应用层。

参考资料TCP/IP参考模型_百度百科

1. TCP/IP四层模型定义


在计算机网络的实际运行中,采用的更多的就是TCP/IP四层模型,TCP/IP协议有以下四层:

  1. 应用层
  2. 传输层
  3. 网络层
  1. 网络接口层

在TCP/IP模型中每一层中都有要遵循的协议,同时TCP/IP的四层模型也能与OSI七层模型有着对应,如图所示:

image.png

2. TCP/IP模型的实际应用


作为一个已经成功应用的模型,对于在物理链中的实际应用也非常成熟与广泛

image.png

假设计算机A与计算机B通过路由器连接了起来,此时计算机A会通过应用层、传输层、网络层以及网络接口层和路由器进行通信,数据会通过网络接口层以及网络层来到路由器。在路由器中的层面只到了网络层以及网络接口层,路由器会通过网络层的数据进行数据的转发,转发到计算机B后,数据也是通过网络接口层、网络层、传输层、应用层来到计算机B。

总结


呼~

终于码完了计算机网络的层次结构的内容,在这里对本篇文章的内容进行一个简单的总结。

本文对层次结构设计的基本原则进行了简单的认识,通过对计算机网络要解决的问题来引申到了采用层次结构设计的原因以及层次结构设计的基本原则,之后又对OSI七层模型进行了简单的介绍,对每一层的作用概述也都在图中进行了简单的展示,同时也分析了OSI七层模型没有在市场上成功应用的原因。对TCP/IP四层模型以及每一层对应于OSI七层模型的内容进行了简单的概括,TCP/IP的实际应用流程也简单的进行了阐述。以上便是本篇文章的基本内容。

写在本文的最后

回顾大学三年的经历,深刻的认识到了计算机基础知识的重要性。在实习的过程中,更加深刻的认识到了团队的重要性,曾经很天真的认为一个人就能拿下一整个大的项目,但是真的在见识到了大型的项目后,才明白曾经的自己是多么的幼稚和无知,大型的项目不是写出来、能跑就行的项目,对性能的要求更高、对技术的选型也更为严谨…完成大型项目需要团队中每个人的全力以赴,更需要大家每个人的互补,齐心协力才能所向披靡。

在这里我也希望自己能和各位前辈、各位同学、大佬们一些学习交流,欢迎大家加入到技术交流群中,我们一起分享技术知识、一起进步!

相关文章
|
2天前
|
网络协议 数据安全/隐私保护 网络架构
【个人笔记】计算机网络五层结构理解
【个人笔记】计算机网络五层结构理解
|
2天前
|
网络协议 数据安全/隐私保护 网络虚拟化
深入了解OSI模型:计算机网络的七大层次
OSI模型 OSI模型是一个网络通信的概念模型,用于描述计算机网络中各个不同层次之间的通信和功能。它将网络通信分为七个不同的层次,每个层次负责不同的任务,使得网络通信的设计、开发和管理更加模块化和可维护。以下是OSI模型的七个层次以及它们的主要功能: 1、物理层(Physical Layer): 功能:处理物理传输介质上的原始比特流,确保数据在传输媒体上能够以适当的方式传输。 示例设备:集线器、中继器、网线等。 主要任务:比特编码、电压规范、物理拓扑等。 2、数据链路层(Data Link Layer): 功能:负责将原始比特流分割成帧并添加地址信息,以便在直接连接的设备之间传输数据。 示例设
160 0
|
2天前
|
移动开发 网络协议 程序员
计算机网络:分层体系结构
计算机网络:分层体系结构
13 2
|
6月前
|
消息中间件 网络协议 算法
网络协议的重要性与应用:理解进程间通信和网络分层结构(上)
学习网络协议的关键是了解其分层结构。在计算机网络中,我们使用的是OSI标准模型和TCP/IP网络模型。这些模型将网络通信划分为多个层级,每个层级都有不同的功能和作用。在本章节中,我们主要讲解了TCP/IP网络模型的前三层:应用层、传输层和网络层。后面的数据链路层和物理层将在下一篇文章中进行详细讲解
网络协议的重要性与应用:理解进程间通信和网络分层结构(上)
|
6月前
|
网络协议 网络架构 数据格式
网络协议的重要性与应用:理解进程间通信和网络分层结构(下)
这篇文章概括了数据链路层和物理层在网络通信中的作用和功能。数据链路层负责为网络层提供链路级别的传输服务,通过MAC地址标识设备,并在链路上进行数据传输。物理层将数据包转换为电信号,在物理媒介中传输。不同的物理媒介包括双绞铜线、同轴电缆和光纤,它们都被用于实现高效的数据传输和通信。
|
网络协议
四、计算机网络的分层结构
四、计算机网络的分层结构
四、计算机网络的分层结构
|
JavaScript 前端开发 Java
1.2计算机系统的层次结构
1.2计算机系统的层次结构
94 0
1.2计算机系统的层次结构
|
Java 程序员 C++
1.2.3计算机系统的层次结构
1.2.3计算机系统的层次结构
|
SQL 网络协议 API
计算机网络是如何分层的?
计算机网络是如何分层的?
计算机网络是如何分层的?
【计算机网络】关于数据链路层及其以下层次的巩固习题
概念题 当发生错误时,接收方简单地丢弃所有后续帧,不对丢弃的帧发送任何确认,这称为“回退n帧协议”(Go-Back-N) 通过位填充,数据 01111101 传输的比特序列为:011111001
185 0