1、计算机网络知识复习(day01)--计算机网络相关概念及网络分层架构模型

记录学习复习笔记的地方,学习视频来自哔站“王道考研”:www.bilibili.com/video/BV19E…

参考书籍:《图解TCP/IP》、《计算机网络-谢希仁》

1、计算机网络相关概念

1、计算机网络:

计算机网络是将分散在不同地点且具有独立功能的多个计算机系统,利用通信设备和通信线路相互连接起来,在网络协议和软件的支持下进行数据通信,实现信息传递和资源共享的计算机共享的集合。总之,计算机网络是互连的、自治【无主从关系】的计算机集合。

2、计算机网络的组成:

从组成部分上看,一个完整的计算机网络主要由硬件、软件、协议三大部分组成,缺一不可。

  1. 硬件:由若干结点和连接这些结点的链路组成;结点可以是计算机、集线器、交换机、路由器等
  2. 软件:通过网络交换信息
  3. 协议:通信协议-规则

而从其工作方式上看,计算机网络可以划分为以下两大块:

处在互联网边缘的部分就是连接在互联网上的所有的主机,这些主机又称为端系统。 我们要首先明确下面的概念,我们说:“主机A和主机B进行通信”,实际上是指“主机A的某个进程和主机B的另一个进程进行通信",通常可以称为”计算机之间通信。在网络边缘的端系统之间的通信方式可以划分为以下两大类:客户-服务器方式(C/S方式)和对等方式(P2P方式)

3、计算机网络的功能

其中最重要的两大功能就是数据通信和资源共享,根据这两个功能,我们可以将计算机网络分为通信子网(实现数据通信)和资源子网两部分,如下图

4、计算机网络的类别

按照网络的作用范围分类:

按照网络的使用者分类:

用来把用户进入到互联网的网络:

按交换技术分类:

按拓补结构分类:

按传输技术分类:

5、计算机网络的性能指标

  1. 速率:指数据的传送速率,也称为数据率或比特率(比特:0/1),单位是bit/s(b/s或bps);【1Byte=8bit】

  2. 带宽:在计算机网络中,带宽表示网络的通信线路所能传送数据的能力,通常表示在单位时间内网络中的某信道所能通过的“最高数据率”;单位是“比特每秒”,也可以说是网络设备所支持的最高速度。

  3. 吞吐量:表示在单位时间内通过某个网络(或信道、接口)的实际的数据量;

  4. 时延:指数据从网络的一端传送到另一端所需的时间。包括发送时延、传播时延、处理时延和排队时延;

  5. 时延带宽积:时延带宽积 = 传播时延 * 带宽;

  6. 往返时间RTT:互联网上的信息双向交互一次所需的时间;

  7. 利用率:利用率越高,时延越高。

2、计算机网络体系结构

2.1、计算机网络的标准化工作及相关组织

因特网的标准都以RFC(Request For Comments)的形式在因特网上发布,但并非每个RFC都是因特网标准,RFC要上升为因特网的正式标准需要经过以下四个阶段。

  1. 因特网草案(Internet Draft)。这个阶段还不是正式RFC文档。
  2. 建议标准(Proposed Standard)。从这个阶段开始就成为RFC文档。
  3. 草案标准(Draft Standard)。
  4. 因特网标准(Internet Standard)。

在国际上负责制定、实施相关网络标准的标准化组织,主要有如下几个:

为了使不同体系结构的计算机网络都能互联,国际标准化组织ISO提出了一个能使各种计算机在世界范围内互联成网的标准框架一开放 系统互连基本参考模型OSI.这样,只要遵循OSI标准,一个系统就可以和位于世界上任何地方的、也遵循这同一标准的其他任何系统进行通信。1983年形成了所谓的OSI七层协议体系结构,但是由于各方原因未能成为一个全球标准,而TCP/IP常常被称为事实上的国际标准

2.2、协议与层次划分

1、什么是网络协议?

在计算机网络中要做到有条不紊地交换数据,就必须遵守一些事先约定好的规则。这些规则明确规定了所交换的数据的格式以及有关的同步问题。这里所说的同步不是狭义的(即同频或同频同相)而是广义的,即在一定的条件下应当发生什么事件(例如,应当发送一个应答信息),因而同步含有时序的意思。这些为进行网络中的数据交换而建立的规则、标准或约定称为网络协议(networkprotocol)。 网络协议也可简称为协议。

网络协议的组成要素

2、网络协议层次划分

为什么要分层?

我们可以举一个简单的例子来说明划分层次的概念。现在假定我们在主机1和主机2之间通过一个通信网络传送文件。这是一项比较复杂的工作,因为需要做不少的工作。我们可以将要做的工作划分为三类。第一类工作与传送文件直接有关。例如,发送端的文件传送应用程序应当确信接收端的文件管理程序已做好接收和存储文件的准备。若两台主机所用的文件格式不一样,则至少其中的一台主机应完成文件格式的转换。这两项工作可用一个文件传送模块来完成。这样,两台主机可将文件传送模块作为最高的一层(图1-17)。在这两个模块之间的虚线表示两台主机系统交换文件和一些有关文件交换的命令。

但是,我们并不想让文件传送模块完成全部工作的细节,这样会使文件传送模块过于复杂。可以再设立一个通信服务模块,用来保证文件和文件传送命令可靠地在两个系统之间交换。也就是说,让位于上面的文件传送模块利用下面的通信服务模块所提供的务。我们还可以看出,如果将位于上面的文件传送模块换成电子邮件模块,那么电子邮件模块同样可以利用在它下面的通信服务模块所提供的可靠通信的服务。

同样道理,我们再构造一个网络接入模块,让这个模块负责做与网络接口细节有关的工作,并向上层提供服务,使上面的通信服务模块能够完成可靠通信的任务。

分层的基本原则

计算机网络的各层及其协议的集合就是网络的体系结构(architecture)。换种说法,计算机网络的体系结构就是这个计算机网络及其构件所应完成的功能的精确定义[GREE82]

2.3、计算机网络分层结构模型

OSI的七层协议体系结构的概念清楚,理论也比较完整,但它既复杂又不实用。

TCP/IP体系结构则不同,它现在已经得到了非常广泛的应用,TCP/IP是一个四层的体系结构,它包含应用层、运输层、网际层和网络接口层(用网际层这个名字是强调这一层是为了解决不同网络的互连问题)。

不过从实质来讲,TCP/IP只有最上面的三层,因为最下面的网络接口层基本上和一般的通信链路的功能上没有多大差别,对于计算机网络来说,这一层并没有什么特别新的具体的内容,因此在学习计算机网络原理是往往采用折中的办法,即综合OSI和TCP/IP的优点,采用一种只有五层协议的体系结构,这样既简洁又能将概念阐述清楚。

1、7层OSI参考模型

OSI七层模型有7层,自上而下为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。低三层统称为通信子网,它是为了联网而附加的通信设备,完成数据的传输功能;高三层统称为资源子网,它相当于计算机系统,完成数据的处理等功能。传输层承上启下。

OSI的层次结构如下图所示:

现在用一个例子来阐述一下七层模型中应用进程的数据在各层之间的通信过程,假设两台主机通过一个中间系统路由器连接起来:【这里的应用层表示的是会话层、表示层、应用层高三层,5层模型】

中间系统只有低三层,因此整个通信中高三层可以看做是端到端的通信,而低三层可以看做是点到点的通信,整个过程可以理解为装箱和拆箱操作

虽然应用进程数据要经过上图所示的复杂过程才能送到对方的应用进程,但这些复杂过程对用户来说,却都被屏蔽掉了,以致应用进程烀AP1觉得好像是直接把数据交给了应用进程AP2。同理,任何两个同样的层次(例如在两个系统的第4层)之间,也好像如同图中的水平虚线所示的那样,可将数据(即数据单元SDU加上控制信息PCI)直接传递给对方。这就是所谓的“对等层”之间的通信。我们以前经常提到的各层协议,实际上就是在各个对等层之间传递数据时的各项规定。

OSI参考模型各层详述:

参考链接:blog.csdn.net/cl19950327/…

(1)物理层(Physical Layer)

物理层考虑的是怎样才能在各种计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体,物理层的任务是尽可能地屏蔽掉传输媒体和通信手段的差异,使物理层上面的数据链路层感觉不到这些差异,使其只需考虑本层的协议和服务,而不必考虑具体的传输媒体和通信手段。物理层所传输的数据单位是比特,发送方发送1或0,接收方也接收1或0,物理层需要考虑用多大的电压代表1或0。物理层使用的中间设备是转发器。

(2)数据链路层(Data Link Layer)

数据链路层的任务是将网络层交下来的 IP 数据报组装成帧,在两个相邻结点之间的链路上传输帧,每一帧包括数据和必要的控制信息(同步信息、地址信息、差错控制等)。数据链路层的协议有 PPP、CSMA/CD 等。数据链路层使用的中间设备是网桥或桥接器。

(3)网络层(Network Layer)

网络层的任务是负责为分组交换网上的不同主机提供通信服务,在发送数据时网络层把运输层产生的报文段或用户数据报封装成分组或包进行传送。网络层的另一个任务是选择合适的路由,使源主机运输层传下来的分组能够通过网络中的路由器找到目的主机。网络层的协议有 IP、ARP、ICMP、IGMP 等。网络层使用的中间设备是路由器。

(4)传输层(Transport Layer)

运输层的任务是负责向两台主机进程之间的通信提供通用的数据传输服务。运输层的协议主要有

(5)会话层(Session Layer)

会话层允许不同主机上的各个进程之间进行会话。会话层利用传输层提供的端到端的服务,向表示层提供它的增值服务,这种服务主要为表示层实体或用进程户建立连接并在连接上有序地传输数据,这就是会话,也称建立同步(SYN)。

会话层负责管理主机间的会话进程,包括建立、管理及终止进程间的会话。会话层可以使用校验点使通信会话在通信失效时从校验点继续恢复通信,实现数据同步。

(6)表示层(Presentation Layer)

表示层主要处理在两个通信系统中交换信息的表现方式。 不同机器采用的编码和表示方法不同,使用的数据结构也不同为了使不同表示方法的数据和信息之间能互相交换,表示层采用抽象的标准方法定义数据结构,并采用标准的编码形式。数据压缩、加密和解密也是表示层可提供的数据表示变化功能。

(7)应用层(Application Layer)

应用层是OSI模型的最高层,应用层的任务是通过应用进程之间的交互来完成特定网络应用。应用层协议定义的是应用进程间通信和交互的规则。这里的进程是指主机中正在运行的程序。对于不同的网络应用需要有不同的应用层协议。在互联网中的应用层协议有很多,如域名系统DNS,支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,等等。应用层交互的数据单元是报文 (message)。

5层模型传输的数据的类型

OSI参考模型各层次的传输单元【PDU类型】应用层报文传输层报文段网络层IP数据报,分组(如果IP数据报太大就切割成分组)数据链路层帧物理层比特流

2、4层TCP/IP模型

摘自:blog.csdn.net/qq_42240729…

ARPR在研究ARPAnet时提出TCP/IP模型,模型从低到高依次为网络接口层(对应OSI参考模型中的物理层和数据链路层)、网际层、传输层和应用层(对应OSI参考模型中的会话层、表示层和应用层)。

TCP/IP的层次结构及各层的主要协议如下图:

3、分层结构总结

4、5层参考模型

2.4、TCP/IP模型与OSI参考模型的比较

相似之处:

差别之处: