• 计算机网络----计算机网络的基础


    目录

    一.计算机网络的相关概念

    二.计算机网络的功能

    三.计算机网络的发展

    四.计算机网络的组成

    五.计算机网络的分类

    六.计算机的性能指标

    1.速率

    2.带宽

    3.吞吐量

    4.时延

    5.时延带宽积

    6.往返时延RTT

    7.利用率

    七.计算机的分层结构

    八.ISO/OSI参考模型

    九.OSI参考模型与TCP/IP参考模型的联系

    (1)相同点

    (2)不同点

    十.5层参考模型


    一.计算机网络的相关概念

    计算机网络是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。

    计算机网络是互连的、自治的计算机集合。

    互连---通过通信链路互联互通

    自治---无主从关系

    二.计算机网络的功能

    1.数据通信:用来实现联网计算机之间各种信息的传输,例如:文件传输,电子邮件传输等。

    2.资源共享:同一个计算机网络上的其他计算机可使用某台计算机的计算机资源的行为,可共享硬件、软件、数据。

    3.多分布式处理:台计算机各自承担同一工作任务的不同部分,例如Hadoop平台。

    4.提高可靠性:计算机网络中的各种计算机可以通过网络互为替代机。

    5.负载均衡: 将工作任务均匀地分配给计算机网络中的各台计算机。

    三.计算机网络的发展

    第一阶段:

    ARPAnet(阿帕网)(用于连接同一类型的网络)---->internet(用于连接不同类型的网络)---->Internet(ARPAnet接受TCP/IP选定Internet为主要的计算机通信系统)。

    注意:网络,互联网以及因特网的区别:

    网络是将许多计算机连接在一起。

    互联网是将许多网络连接在一起。

    因特网是世界上最大的互联网。

    第二阶段:三级结构

    三级结构由校园网,地区网,主干网构成。

    第三阶段:多层次ISP结构

    ISP:因特网服务提供者/因特网服务提供商,是一个向广大用户综合提供互联网接入业务、信息业务、和增值业务的公司,如中国电信、中国联动、中国移动等分为主干ISP、地区ISP和本地ISP。

    补充:IXP能使两个网络直接相联,不需要第三个网络进行转发分组,从而能够使网络通信速度加快。

    四.计算机网络的组成

    1.组成部分:硬件、软件、协议(一系列规则和约定的集合)

    2.工作方式:

    (1)边缘部分:端系统之间的通信(进程与进程之间的通信)

    •C/S(client/Server)方式:C/S就是在终端需要安装一个应用程序方可访问的应用系统。一般在手机上极为常见,App 就是一种特殊的 CS 架构,一些桌面应用也是属于C/S的范畴。

    •B/S(Browser Server)方式:B/S就是在浏览器中打开的应用系统,即WEB 系统。不需要下载客户端,在浏览器上即可运行。

    B/S与C/S的区别:

    •P2P方式(peer-to-peer):在P2P模型中,各计算机没有固定的客户和服务器划分。P2P 模型从本质上来看仍然使用客户/服务器方式,每个结点既作为客户访问其他结点的资源,也作为服务器提供资源给其他结点访问。

    P2P优点:

    (1)减轻了服务器的计算压力,消除了对某个服务器的完全依赖,可以将任务分配到各个结点上,因此大大提高了系统效率和资源利用率(例如,播放流媒体时对服务器的压力过大,而通过P2P模型,可以利用大量的客户机来提供服务)。
    (2)多个客户机之间可以直接共享文档。
    (3)可扩展性好,传统服务器有响应和带宽的限制,因此只能接受- -定 数量的请求。
    (4)网络健壮性强,单个结点的失效不会影响其他部分的结点。

    P2P缺点:

    在获取服务的同时,还要给其他结点提供服务,因此会占用较多的内存,影响整机速度。
    例如,经常进行P2P下载还会对硬盘造成较大的损伤。据某互联网调研机构统计,当前P2P程序已占互联网50%~90%的流量,使网络变得非常拥塞,因此各大ISP通常都对P2P应用持反对态度。

    (2)核心部分:为边缘部分服务

    边缘部分与核心部分共同组成计算机网络。

    3.功能组成:

    上面讲过,计算机网络的两个最重要的功能是数据通信与资源共享,根据这两个功能,我们可以把计算机网络划分为通信子网与资源子网。

    五.计算机网络的分类

    1.按分布范围分:广域网(WAN):广域网通常使用交换技术,城域网(MAN),局域网(LAN):广播技术,个人局域网(PAN)

    2.按使用者分:公用网和专用网

    3.按交换技术分:电路交换,报文交换,分组交换

    4.按拓扑结构分:总线型,星型,环型,网状型(常用于广域网中)

    5.按传输技术分:

    广播式网络:共享公共通信信道

    点对点网络:使用分组存储转发和路由选择机制

    六.计算机的性能指标

    1.速率

    速率即数据率或称数据传输率或比特率,用于描述连接在计算机网络上的主机在数字信道上传送数据位数的速率。单位:b/s,kb/s,Mb/s,Gb/s,Tb/s

    这里区分速率和存储容量的换算:

    2.带宽

    带宽原本指某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)。而在计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的“最高数据率”(网络设备所支持的最高速度)。单位是“比特每秒”,b/s,kb/s,Mb/s,Gb/s。

    3.吞吐量

    吞吐量表示在单位时间内通过某个网络(或信道、接口)的数据量。单位b/s,kb/s,Mb/s等。
    吞吐量受网络的带宽或网络的额定速率的限制。

    4.时延

    时延指数据(报文/分组/比特流)从网络(或链路)的一端传送到另一端所需的时间。也叫延迟或迟延。单位是s。

    发送时延:从发送分组的第一个比特算起,到该分组的最后一个比特发送完毕所需的时间。

    传播时延:电磁波在信道上,传播一定距离所花的时间。取决于电磁波传播速度和链路长度。

    排队时延:等待输出/输入链路可用所需要的等待时间。

    处理时延:对数据检错,并寻找转发出口所需要的时间。

    注:在高速链路中,只是减少了发送时延,并没有减少传播时延。

    5.时延带宽积

    时延带宽积又称为以比特为单位的链路长度。即“某段链路现在有多少比特”。

    时延带宽积(bit)=传播时延(s)*带宽(b/s)

    6.往返时延RTT

    从发送方发送数据开始,到发送方收到接收方的确认(接收方收到数据后立即发送确认),
    总共经历的时延。

    注:RTT越大,在收到确认之前,可以发送的数据越多。

    RTT包括两部分:往返传播时延(往返传播时延=传播时延*2)以及末端处理时间(接收方接收并处理数据,并发送确认帧所需的时间),并不包括发送时延

    7.利用率

    利用率由两部分组成:信道利用率和网络利用率。

    信道利用率=有数据通过信道的时间/(有+无)数据通过的时间

    网络利用率=所有信道利用率加权再求平均值

    七.计算机的分层结构

    计算机网络中分层的原则:

    1.各层之间相互独立,每层只实现一种相对独立的功能。

    2.每层之间界面自然清晰,易于理解,相互交流尽可能少。

    3.结构上可分割开。每层都采用最合适的技术来实现。

    4.保持下层对上层的独立性,上层单向使用下层提供的服务。

    5.整个分层结构应该能促进标准化工作。

    先了解几个概念:

    1.实体:第n层中的活动元素称为n层实体。同一层的实体叫对等实体。

    2.协议:为进行网络中的对等实体数据交换而建立的规则、标准或约定称为网络协议。【水平】

    协议中有三大要素(语法,语义和同步)

    语法:规定传输数据的格式
    语义:规定所要完成的功能
    同步:规定各种操作的顺序

    3.接口(访问服务点SAP):上层使用下层服务的入口【垂直】。仅仅在相邻层间有接口,且所提供服务的具体实现细节对上一层完全屏蔽。

    第n层在向n+1层提供服务时,此服务不仅包含第n层本身的功能,还包含由下层服务提供的功能。

    SDU服务数据单元:为完成用户所要求的功能而应传送的数据(有用的部分)

    PCI协议控制信息:控制协议操作的信息

    PDU协议数据单元:对等层次之间传送的数据单位。

    可以看到上一层的PDU为下一层的SDU,再加上下一层的PCI就可以得到下一层的PDU。

    八.ISO/OSI参考模型

    为了支持异构网络系统的互联互通。国际标准化组织(ISO)提出开放系统互连(OSI)参考模型。

    如下图所示,每到达中间系统(如交换机,路由器等)都需要先还原到网络层查看传输的目的地址在哪里,所以网络层,数据链路层以及物理层是点到点的传输,而上层为端到端的传输。

    如图所示,从应用层开始每下一层就会添加相应层的控制信息,数据链路层在头和尾都添加了控制信息。A端会将要传输的数据不断打包传递给B层,B层收到数据后会进行拆包得到最终的数据。

    各层的功能如下:

    1.应用层

    所有能和用户交互产生网络流量的程序

    典型应用层服务:文件传输((FTP)        电子邮件(SMTP)        万维网(HTTP )

    2.表示层
    用于处理在两个通信系统中交换信息的表示方式,通常是对语法和语义的处理。表示层能实现的功能如下:

    1.数据格式变换

    2.数据加密解密

    3.数据压缩和恢复

    3.会话层

    会话层向表示层实体/用户进程提供建立连接并在连接上有序地传输数据,这一过程也是建立同步(SYN)的过程。会话层的功能如下:

    1.建立、管理、终止会话

    2.使用校验点可使会话在通信失效时从校验点/同步点继续恢复通信,实现数据同步。适用于传输大文件。

    4.传输层

    负责主机中两个进程的通信,即端到端(端到端通信是运行在不同主机内的两个进程之间的通信,而每个进程是由端口号标识的)的通信。传输单位是报文段或用户数据报。功能如下:

    1.可靠传输(TCP),不可靠传输(UDP)

    2.差错控制

    3.流量控制

    4.复用和分用

    复用:多个应用层进程可同时使用下面运输层的服务

    分用:运输层把收到的信息分别交付给上面应用层中相应的进程。

    举个例子:不同商家(进程)发送的快递(数据包)上了同一辆运输车(复用),到了驿站后根据取件码(端口号)让每个收货人(目标进程)去走快递(分用)

    5.网络层

    主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络层传输单位是数据报。功能如下:

    1.路由选择

    2.流量控制

    3.差错控制

    4.拥塞控制

    6.数据链路层

    主要任务是把网络层传下来的数据报组装成帧。数据链路层/链路层的传输单位是。功能如下:
    1.成帧(定义帧的开始和结束)

    2.差错控制

    3.流量控制

    4.访问(接入)控制:对信道访问的控制。如下图,在广播网络中,只有一台主机能发送数据,数据链路需要决定哪一台主机能够占用信道发送数据。

    7.物理层

    主要任务是在物理媒体(电缆,双绞线,光纤等)上实现比特流的透明传输。物理层传输单位是比特

    透明传输:指不管所传数据是什么样的比特组合,都应当能够在链路上传送。

    物理层的功能如下:

    1.定义接口特性

    2.定义传输模式(单工,半双工,全双工)

    3.定义传输速率

    4.比特同步

    5.比特编码

    九.OSI参考模型与TCP/IP参考模型的联系

    (1)相同点

    1.都分层

    2.基于独立的协议栈的概念

    3.可以实现异构网络互联

    (2)不同点

    1.OSI定义三点:服务、协议、接口

    2.OSI先出现,参考模型先于协议发明,不偏向特定协议

    3.TCP/IP设计之初就考虑到异构网互联问题,将IP作 为重要层次

    4.SIO/OSI参考模型中,在网络层中有面向连接的传输(虚电路方式)也有没有面向连接的传输(数据报方式),传输层是面向连接的传输(TCP),而在TCP/IP模型中,网络层是没有面向连接的传输(IP),传输层中有面向连接的传输(TCP)和没有面向连接的传输(UDP)。

    十.5层参考模型

    5层参考模型的数据封装与解封装:

    所有网络层次的详细知识点总结如下:

    物理层----http://t.csdnimg.cn/VMyPp

    数据链路层----http://t.csdnimg.cn/QHuqj

    介质访问控制----http://t.csdnimg.cn/cHkgm

    局域网与广域网----http://t.csdnimg.cn/vMsAr

    网络层----http://t.csdnimg.cn/EeiPP

    传输层----http://t.csdnimg.cn/sAW72

    应用层----http://t.csdnimg.cn/dy8AB

  • 相关阅读:
    FreqBlender: Enhancing DeepFake Detection by Blending Frequency Knowledge
    java--包
    latex 伪代码 algorithm2e方式
    React有slot吗?
    Java经纬度校验,获取当前经纬度与目标经纬度之间的距离
    (附源码)ssm学生管理系统 毕业设计 141543
    网络爬虫的架构
    《深入浅出C++》——初识C++
    js arrys函数
    用 rollup + gulp 造个轮子,别说还挺香
  • 原文地址:https://blog.csdn.net/weixin_69884785/article/details/136302846