概述篇
该篇用于引入计算机网络的一些必备基础,在正式开始学习前我们需要了解。
首先清楚什么是计算机网络,计算机网络(简称网络)由若干结点和连接这些结点的链路组成。结点可以是计算机、路由器、交换机等。网络之间还可以通过路由器互连起来,构成更大网络,即“互连网”。
网络把许多计算机连接在一起,而互连网把网络通过路由器连接在一起,与网络相连的计算机称为主机。
请注意,“互连网”与“互联网”不是相同的名词。互连网(internet)是通用名词,泛指由多个计算机互连而成的计算机网络,在这些网络之间的通信协议可以任意选择,而不一定是TCP/IP协议。而互联网(Internet),也称为因特网是专有名词,指当前全球最大的,开放的,由众多网络相互连接而成2的特定互连网,采用TCP/IP协议族作为通信的规则,其前身是美国的ARPANET。
互联网基础结构发展的三个阶段:
第一阶段:从单个网络ARPANET向互连网发展的过程
第二阶段:特点是建成了三级结构互联网,也就是三级的计算机网络,分为主干网,地区网和校园网(企业网),校园网覆盖的网络范围只包括本学校,三级之间的网络是由上至下的管理。
第三阶段:特点是形成了多层次ISP结构的互联网(如下图),互联网服务提供者ISP(Internet Service Provider)在许多情况下是一个进行商业活动的公司,因此由称为互联网服务提供商。例如,中国电信,中国移动,中国联通等都是中国最有名的ISP。
互联网交换点IXP(Internet eXchange Point),主要作用就是允许两个网络直接相连并交换分组。

互联网的组成:
(1)边缘部分:由所有连接在互联网上的主机组成,该部分被用户直接使用,用来进行通信(传送数据、音频或视频)和资源共享。这些主机又称为端系统。
端系统之间的通信方式:客户-服务器方式(大部分程序使用),对等连接方式
客户是服务请求方,服务器是服务提供方。客户和服务器都是指通信中所涉及的两个应用进程,所描述的是进程之间服务与被服务的关系。
客户程序,被用户调用后,在通信时主动向远地服务器发起通信(请求服务),因此客户程序必须知道服务器程序的地址。不需要特殊的硬件和很复杂的操作系统。
服务程序,是一种专门用来提供某种服务的程序,可同时处理多个远地或本地客户的需求。系统启动后即一直自动调用并一直运行着,被动地等待并接受来自各地的客户是通信请求。不需要知道客户程序的地址。需要强大的硬件和高级的操作系统支持。
当服务器和客户通信关系建立完成,通信可以是双向的,即可同时发送和接收数据。
对等连接方式,简写为P2P,两台主机通信时不区分服务请求方和服务提供方,通信中的每一台主机即是客户同时又是服务器,只要两台主机都运行了对等连接软件(P2P软件),就可以进行平等的,对等连接通信。
通信的本质:主机A的某个进程和主机B的另一个进程进行通信
(2)核心部分:由大量网络和连接这些网络的路由器组成,该部分为边缘部分提供服务。
在该部分起特殊作用的是路由器,路由器是一种专用计算机,是实现分组交换的关键部件,路由器的任务是转发分组。
那么,分组交换是什么呢?
在介绍分组交换前,我们需要确定这些交换的目的--->实现两个设备之间的通信。
交换就是按照某种方式动态地分配传输线路的资源,
起初,在电路交换通话之前,需要从主叫端到被叫端建立一条专用的物理电路,这个电路需要经过三个步骤:建立连接(占用通信资源)-->通话(一直占用通信资源)-->释放连接(归还通信资源)。
电路交换:是把一条电话线转接到另一条电话线的方式,就是动态地分配传输线路的资源,致命缺点:在通话的全部时间内,用户始终占用端到端的通信资源。而这就使得通信线路的利用率很低(用来传送数据的时间往往不到10%甚至1% ),同时计算机数据具有突发性,数据在通信的过程中可能会出错。主要特点:整个报文的比特流连续地从源点直达终点,好像在一个管道中传送。
报文交换:也称邮政通信,报文(message)指的是要发送的整块数据。报文交换使用到了存储转发技术(断续分配传输宽带),时延较长,几分钟到几小时不等。缺点:传输过程会丢包,出错。主要特点:整个报文先传送到相邻结点,全部存储下来后查找转发表,转发到下一个结点。
分组交换:分组(packet)即需要把较长的报文划分成较短的数据段,再加上一些控制信息,叫头部,也就是首部,然后以分组为基本单位在网络中传送。缺点:分组在各路由器存储转发时需要排队,造成一定的时延,同时因为没有建立连接的过程,则无法确定通信时端到端所需的带宽。主要特点:1.单个分组(整个报文的一部分)传送到相邻结点,存储下来后查找转发表,转发到下一个结点。2.在哪段链路上传送才占用这段链路的通信资源。3.更好的灵活性,因为一个分组的长度远小于整个报文的长度,因此时延小于报文交换。
分组交换传送方式如下图所示

三种交换的比较如下图:

由此可以看出三种交换方式的区别。
我们知道计算机是死板的,人类擅长思考,计算机更擅长做重复的工作,因此,当两台设备通信时,他们所收到的不是直接的,一看就懂命令,而是一串二进制。计算机需要通过分析和计算来得到它所收到的信息。而两台设备如何能明白彼此的意思呢?这就需要引入协议来帮助,协议就是通信的两台设备实现约定好的规则,协议全称为网络协议,简称协议。它是为进行网络中的数据交换而建立的规则、标准或约定。
协议由语法,语义,时序(或者同步)三要素构成。语法就是数据与控制信息的结构或格式(确定通信双方"如何讲"),不同协议根据需求会有不同的格式。语义,即需要发出何种控制信息,完成何种动作以及做出何种响应(确定通信双方"讲什么")。时序即事件实现顺序的详细说明,哪一个事件需要先完成,哪一个事件需要后完成,都是有一定顺序的(确定通信双方"讲话的次序")。
设备中的应用进程多种多样,不同的应用可能会使用不同的协议。
讲了这么多,我们好像还没有开始真正重要的核心部分,当两台设备通信时,整个网络应该如何构建才能使需要通信的信息正确传送。
我们需要考虑的问题很多:通信的这两台设备如何能确定对方是目的主机?两台设备之间如何能看懂彼此的信息?不同的信息应该都可以在搭建的网络中传送,如文件,视频,音频等信息。传输过程出错或者丢包如何补救?设备之间距离遥远该如何传送......
这里我们正式引入计算机体系结构,利用分层思想,不同层实现不同的确定功能,并在不同层之间提供接口,让整个体系是完整的。这里给出上下层之间的关系:对于每一个分层,接收下一层提供的服务, 为上一层提供服务
分层的好处:
分层的缺点:
▲降低效率
▲产生额外开销(有些功能在不同的层次中重复出现)
在众多的不同的计算机网络体系结构中,TCP/IP体系结构成为事实上的标准,因为它的开放性以及注重实用性,更加被人们所青睐。
再与另外两种体系结构来对比:

由图可知三者在大体上是相同的,我学的是五层协议的体系结构,自顶向下的方向来学习每一层的的应用。
以上就是我在基础篇中所学到的知识。
之后还会有一篇来补充基础知识,性能这部分的补充

浙公网安备 33010602011771号