当前位置: 首页 > news >正文

【计算机网络(考研版)】第一站:计算机网络概述(一)

目录

一、计算机网络的概念

1.计算机网络的定义

2.计算机网络的组成

3.计算机网络的功能

4.计算机网络的分类

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

1.速率

2.带宽

3.时延

4.时延带宽积

5.往返时间

6.利用率

三、计算机网络的体系结构

1.体系结构

2.协议

3.服务

4.接口(服务访问点)

5.总结


一、计算机网络的概念

1.计算机网络的定义

计算机网络通信技术计算机技术结合的产物,根据不同的观点,有如下几种定义

        1>广义观点:计算机网络是能实现远程信息处理的系统或进一步达到资源共享的系统。

        2>资源共享观点:计算机网络是以能够相互共享资源的方式互连起来的、自治的计算机系统集合。计算机网络是将一群自治(相互独立)的计算机连在一起,并且能够共享资源、协同工作

        3>用户透明观点:计算机网络是一个能为用户自动管理资源的网络操作系统,他能够调用用户所需要的资源,完成响应的工作。

我们使用第二种观点,即资源共享观点

2.计算机网络的组成

计算机之间想要实现资源共享和协同工作,其实有很多的问题需要解决,首先是如何构建网络(网络的组成部分),其实计算机网络种包括了很多技术和设备,如华为的设备,思科的设备,这些设备采用了不同的技术和手段。我们需要撇开这些细节来看计算机网路的组成。

(1)物理组成

从物理组成来看,计算机网络包括硬件、软件、协议三大部分。

        1>硬件(这些是看得见、摸得着的实体部分)包括主机、通信处理器、通信线路和交换设备(交换机、路由器、中继器等连接设备)

        2>软件主要包括实现资源共享的软件和方便用户使用的各种工具软件(迅雷、BT下载器等)。

        3>协议就是一种数据在线路上传输必须遵循的规则(什么时候发数据、什么时候收数据、以及数据的格式)

(2)工作方式组成

从工作方式来看,计算机网络可分为边缘部分核心部分,如下图所示

        1>边缘部分:由所有连接在因特网上、供用户直接使用的主机组成,这部分是用户直接使用的,包括数据处理和资源共享

        2>核心部分:由大量的网络和连接这些网络的路由器组成,为边缘部分提供数据通信和资源共享服务

问题:为什么用户处于边缘部分、难道用户不是核心吗?

这是因为计算机网络关心的是如何实现用户的数据通信和资源共享,至于用户做什么,计算机网络不知道,他也并不关心

(3)功能组成

从功能组成来看:计算机网络由通信子网资源子网两部分组成。

        1>通信子网:由各种传输介质、通信设备和相应的网络协议组成,为网络提供数据传输交换和控制能力,实现联网计算机之间的数据通信

        2>资源子网:由用户主机、各种终端设备以及各种软件资源、信息资源组成,负责全网的数据处理业务,向网络用户提供各种网络资源与服务

3.计算机网络的功能

计算机网络的功能有如下四点

        1>数据通信:数据通信是计算机网络最基本最重要的功能,包括连接控制、传输控制、差错控制、流量控制、路由选择、多路复用等子功能。

        2>资源共享:包括数据资源、软件资源以及硬件资源

        3>分布式处理:当计算机网络中的某个计算机系统负荷过重时,可以将部分任务传送给网络中的其他计算机系统进行处理,利用空闲计算机资源提高整个系统的利用率

        4>信息综合处理:将分散在各地计算机中的数据资料进行集中或分级处理,如自动订票系统、银行金融系统、数据采集与处理系统等等

注意区分:

数据通信是计算机网络最基本最重要的功能

数据通信和资源共享是计算机网络的主要功能

4.计算机网络的分类

1>按分布范围分类:分为广域网、城域网、局域网和个人区域网

2>按照拓扑结构分类:分为星型网络、总线型网络、环形网络和网状型网络

3>按传输技术分类:分为广播式网络和点对点网络

4>按使用者分类:分为公用网和专用网

5>按数据交换技术分类:分为电路交换网络、报文交换网络和分组交换网络

按照拓扑结构分类:分为星型网络、总线型网络、环形网络和网状型网络

        1>总线型网络:总线结构是通过一条通信线路将所有入网的计算机连接起来,从而形成一条共享的信道。这条共享信道就称为总线。一般情况下,为了防止信号反弹,需要在总线的两端连接终结器,以匹配线路阻抗

         在总线上,任何一台计算机发送信息时,其他计算机必须等待,而且计算机发送的信息会沿着总线向两端扩散,从而使网络中所有的计算机都会收到这个信息,但是否接收,还取决于信息的目标地址是否与网络主机地址相一致。若一致,则接收;若不一致,则不接收

        2>星型网络:在星型结构中,每个计算机都通过单一的通信线路与中心交换节点直接相连,在该拓扑结构中,中心交换节点是唯一的转换节点。其他节点中间的通信必须通过中心交换节点转发

        3>环型网络:环型网络是将入网的计算机通过通信线路连接起来形成一个闭合的环,在该拓扑结构中,线路是共用的,数据一般按固定方向单向流动,每个收到数据包的节点都向他的下游节点转发数据包。数据包在换上转一圈,最后由发送节点回收

        4>网状型网络:网状网络又称分布式结构,是分布在不同地点且具有多个终端的节点机相互连接而成的。网状结构又分为全连接网状结构和不全连接网状结构两种形式。在全连接网状结构中,每个节点与网中的其他节点均通过通信线路连接。在部位完全网状连接结构中,两个节点之间不一定由直接通信线路连接,他们之间的通信由其他节点转接

按分布范围分类:分为广域网、城域网、局域网和个人区域网

        1>局域网(LAN):局域网是一种在小区域使用的由多台计算机组成的网络,覆盖范围通常局限在在10km以内,属于一个单位或部门组建的小范围网,如校园网

        2>城域网(MAN):城域网的作用范围是在局域网和广域网之间的网络,其网络覆盖范围通常可以延伸到整个城市,借助通信光纤将多个局域网连通公共城市网络形成大型网络,使得局域网内的资源不仅可以可以共享,局域网外的资源也可以共享

        3>广域网(WAN):广域网是一种远程网,涉及长距离的通信,覆盖范围可以是一个国家或多个国家,甚至整个世界。由于广域网的地理距离可以超过几千千米,因此信息衰减十分严重,这种网络一般要租用专线,通过接口信息处理协议和线路连接起来,构成网状结构,解决路径选择问题

        4>个人区域网(PAN):个人区域网是指个人范围(随身携带或数米范围内)的计算机设备(如计算机、电话、PDA、数码相机等)组成的通信网络。个人区域网既可用于这些设备之间相互交换数据,也可用于连接到高层网络或互联网。例如:我们的手机热点

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

1.速率

速率即数据率或比特率,是计算机网络中每秒钟发送数据的数量。速率往往是指额定速率或标称速率。

速率的单位是b/s、kb/s、Mb/s、Gb/s等

2.带宽

带宽是指信号具有的频率宽度,单位是赫(或者千赫、兆赫、吉赫),现在带宽是数据信道所能传送的最高数据率的同义词,单位是b/s

在计算机中约定:当表示存储大小的时候K表示1024,在其他场景都是1000,M、G也都是同样的约定

3.时延

数据从网络或链路的一端传送到另一端所需要的时间称为时延,有时也称为延迟、迟延。

        1>发送时延(传输时延):主机或路由器据发送数据帧所需要的时间,即从发送数据帧的第一位算起到该帧的最后一位发送完毕所需要的时间。
        发送时延=数据帧长层度(b)/发送速率(b/s)
注意:对于某网络,发送时延并非固定不变,而是与发送的帧长成正比,而与发送速度成反比。需要注意的是考试中,务必将单位化成发统一。例如,如果数据帧长度的单位是B,那么数据传输率也应该化成 B/s 来计算。
        2>传播时延:电磁波在信道中传播一定的的距离所需要的时间,传播时延只与信道距离和信号的传播速度有关。传播时延的计算公式为
        传播时延=信道长度(m)/电磁波在信道上的传播速度(m/s)
        3>处理时延:主机或路由器在接收到分组时进行处理所需要的时间。
        4>排队时延:分组在进入网络传输时,要经过许多路由器,但分组在进入路由器后要先在输入队列中排队等待处理,在路由器确定了转发接口后,还需要在输出队列中排队等待转发,这就产生了排队时延。
        总时延=发送时延+传播时延+处理时延+排队时延
图所示为4种时延产生的位置:

需要注意的是:在我们一般的考试中,除非特殊说明,否则只考虑发送时延和传播时延

4.时延带宽积

长度的计量方式可以使用m等大家熟悉的单位,还可以使用其他度量单位。时延带宽积是利用比特(bit)来度量长度的,如A和B两点之间的传播时延是100s,而在传播时延的时间里,发送方一直在不停地发送数据,假设每秒可以发送一个比特数据,那么A和B之间的长度就是100bit,这就是时延带宽积。时延带宽积又称以比特(bit)为单位的链路长度。图所示为时延带宽积示意图。
时延带宽积 = 传播时延 x 带宽

5.往返时间

从发送方发送数据开始,到发送方收到来自自接收方的确认消息所经历的时间。通常用 RTT 来表示。

6.利用率

分为信道利用率和网络利用率两种。信道利用率指某信道有百分之几的时间是被利用的(有数据通过)。完全空闲的信道的利用率为0。网络利用率是全网络的信道利用率的加权平均值。需要注意一点,不是信道利用率与网络利用率越高越好,根据排队论的理论,当某信道的利用率增大时,该信道引起的时延也会迅速增加。
注意:网络利用率和时延的关系可以用高速公路的例子来模拟,当高速公路上几乎没有汽车时,汽车的时延就低,极端情况是当高速路上排满车时,高速公路的利用率是100%,但是时延几乎是无穷大(全部拥堵了)。

三、计算机网络的体系结构

1.体系结构

计算机网络是一个复杂的系统,分层设计方法,是指按照信息的流动过程将网络的整体功能分解为一绝大多数网络采用分层设计方法。所谓个个的功能层不同计算机的同等功能层之间采用相同的协议,同一计算机上的相邻功能层之间通过接口进行信息传递。这样的好处是只需要定义层之间的数据流动的接口,各层内部的实现细节由各个大佬厂商决定,就可以海纳百川地包括各种技术和设备,皆大欢喜。
在计算机网络的分层结构中,计算机网络的各层及其协议的集合称为网络的体系结构。存在以下术语:
实体:第n层中的实体常称为n层实体,该实体指任何可发送或接收信息的硬件或软件进程。
对等实体和对等层:不同计算机上的相同层为对等层,不同计算机的同一层的实体称为对等实体。

n层实体实现的服务为 n+1 层所利用。在这种情况下,n 层被称为服务提供者,n+1层为服务用户。
在计算机网络体系结构的各个层次中,每个推报文都分为两个部分,一个是服务数据单元(Service Date Unit, SDU),另一个是协议控制信息(Protocol Control Information, PCI),它们共同组成协议数据单元(Pro tocol Data Unit,PDU)。服务数据单元是为完成用户所要求的功能而应传送的数据,第n层的服务数据单元记为 n-SDU。协议控制信息控制办议操作的信息,第n层的协议控制信息记为 n-PCI。对等层次之间传送的数据单位称为该层的PDU,第n层的协议数据单元记为n- PDU。
在实际的网络中,每层的协议数据单元都有一个通俗的名称,如物理层的 PDU 称为比特,链路层的 PDU 称为帧,网络层的 PDU 称为分组,传输层的 PDU 称为报文。

2.协议

协议就是规则的集合,在网络中要做到有条不紊地交换数据,就必须遵循事先约定的规则。
这些规则明确规定了所交换的数据的格式以及有关的同步问题。这些为网络中的数据交换而建立的规则、标准或约定称为网络协议,它是控制两个(或多个)对等实体进行通信的规则的集合,也就是“水平的”。网络协议也简称为协议。在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务。协议的实现保证了能够向上一层提供服务。使用本层服务的实体只能看见服务而无法看见下面的协议。下面的协议对上面的实体是透明的。

协议由语法、语义和时序三部分组成。语法法规定了传输数据的格式:语义规定了所要完成的功能,即需要发出何种控制信息、完成何和种动作以及做出何种应答;时序(也称同步)规定了事件实现顺序的详细说明,它体现的是时时间特性。

3.服务

服务是指下层为紧相邻的上层提供的功能调用,也就是“垂直的”,即服务是由下层向上层通过层间接口提供的。并非在一个层内完成的全部功能都称为服务,只有那些能够被高一层实体“看得见”的功能才能称为服务。上层使用下层所提供的服务必须通过与下层交换一些命令,这些命令在 OSI 中称为服务原语。
注意:协议是“水平的”,即协议是控制对等实体之间通信的规则。
服务是“垂直的”,即服务是由下层向上层通过层间接口提供的

计算机网络提供的服务可按以下3种方式进行分类

(1)面向连接服务与无连接服务。在面向连接服务中,通信前双方必须先建立连接,分配相应的资源 (如缓冲区),以保证通信能正常进行,传输结束后释放连接和所占用的资源。因此,这种服务可以分为连接建立、数据传输和连接释放这3 个阶段。常用的面向连接的服务有 TCP 协议、PPP 协议。 (说明:先记忆有这些协议,后面会详细讲解这些内容)

        在无连接服务中,通信前双方不需要先建立连接,需要发送数据时就直接发送,把每个带有目的地址的数据报发送到数据线路上,系统根据一些协议选定发送数据的路径,是一种不可靠的服务。这种服务常被描述为“尽最大努力交付”,并不保证通信的可靠性。在计算机网络中,除了 TCP 和 PPP 协议,其他的协议几乎都是面向无连接的,如 TP、ICMP 等

(2)可靠服务和不可靠服务。可靠服务是指网络具有纠错、检错、应答机制,能保证数据正确、可靠地传送到目的地。在计算机网络中,只有 TCP 协议是可靠协议,当然是用TCP协议的应用层协议也是可靠协议,其他协议都是不可靠的协议。

        不可靠服务是指网络只是尽量正确、可靠地传送,但不能保证数据正确、可靠地传送到目的地,是一种尽力而为的服务。不可靠服务也是一种尽最大努力的服务,不能保证服务质量,但是也不会随意丢弃数据。在计算机网络中,除 TCP 协议以及使用 TCP 协议之外的协议几乎都是不可靠协议

(3)有应答服务和无应答服务。有应答服务是指接收方在收到数据后向发送方给出相应的应答。所发送的应答可以是肯定应答,也可以是否定应答。需要说明的是,并不是面向连接的协议一定需要应答,也并不是有应答的服务就是可靠服务。在考试中 TCP 协议和 CSMA/CA 协议均需要有应答,但是 CSMA/CA 既不是可靠服务,也不是面向连接的服务。PPP 协议是面向连接的协议,但是 PPP 协议不需要应答。无应答服务是指接收方收到数据后不自动给出应答。若需要应答,则由高层实现。

4.接口(服务访问点)

接口是同一节点内相邻两层间交换信息的连接点,是一个系统内部的规定。每层只能为紧邻的层次之间定义接口,不能跨层定义接口。在典型的接口上,同一节点相邻两层的实体
通过服务访问点(Service Access Point,SAP)进行交口。服务是通过服务访问点提供给上
层使用的,第n层的服务访问点就是第n+1层可以访问第n层服务的地方。实际就是逻辑接口.
是一个层次系统的上下层之间进行通信的接口,n层的SAP就是n+1层可以访问n层服务的地方。
协议、接口、服务三者之间的关系如图所示。

 

5.总结

1.协议是“水平的”,即协议是控制对等实体之间通信的规则。
2.服务是“垂直的”,即服务是由下层向上层通过层间接口提供的

3.体系结构三要素是协议、服务和服务访问点

4.协议三要素是语法、语义和同步

相关文章:

  • C++空间命名
  • 树,堆,二叉树的认识
  • 计算机存储系统
  • 返回值的理解
  • 前同事居然因为 Pycharm 的这个功能,即使离职三年也依然经常被请去喝茶~
  • IPV4地址详解
  • ubuntu 22.04学习笔记
  • 【蓝桥杯-筑基篇】基础数学思维与技巧(1)
  • 图论(入门版)
  • 使用bindgen将C语言头文件转换为Rust接口代码
  • 第九层(2):STL之string类
  • Allegro如何自动做差分对内等长操作指导
  • 搜索引擎位置跟踪应用SerpBear
  • 浅析一条SQL在mysql中是如何执行的
  • 前端艺术之毛玻璃-倾斜-日历
  • CAP理论的例子讲解
  • CSS 提示工具(Tooltip)
  • ESLint简单操作
  • IDEA常用插件整理
  • java 多线程基础, 我觉得还是有必要看看的
  • JS笔记四:作用域、变量(函数)提升
  • Netty+SpringBoot+FastDFS+Html5实现聊天App(六)
  • vue--为什么data属性必须是一个函数
  • webgl (原生)基础入门指南【一】
  • 百度贴吧爬虫node+vue baidu_tieba_crawler
  • 从零开始学习部署
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 手写一个CommonJS打包工具(一)
  • 消息队列系列二(IOT中消息队列的应用)
  • 小李飞刀:SQL题目刷起来!
  • 一天一个设计模式之JS实现——适配器模式
  • ​软考-高级-系统架构设计师教程(清华第2版)【第9章 软件可靠性基础知识(P320~344)-思维导图】​
  • # Swust 12th acm 邀请赛# [ A ] A+B problem [题解]
  • #1015 : KMP算法
  • (01)ORB-SLAM2源码无死角解析-(56) 闭环线程→计算Sim3:理论推导(1)求解s,t
  • (附源码)spring boot火车票售卖系统 毕业设计 211004
  • (免费领源码)Java#ssm#MySQL 创意商城03663-计算机毕业设计项目选题推荐
  • (转)Scala的“=”符号简介
  • (转)Sublime Text3配置Lua运行环境
  • . Flume面试题
  • .NET CF命令行调试器MDbg入门(三) 进程控制
  • .NET Core 实现 Redis 批量查询指定格式的Key
  • .NET/C# 如何获取当前进程的 CPU 和内存占用?如何获取全局 CPU 和内存占用?
  • .NET企业级应用架构设计系列之应用服务器
  • .NET与 java通用的3DES加密解密方法
  • .w文件怎么转成html文件,使用pandoc进行Word与Markdown文件转化
  • .考试倒计时43天!来提分啦!
  • [AIGC] Redis基础命令集详细介绍
  • [android] 看博客学习hashCode()和equals()
  • [Big Data - Kafka] kafka学习笔记:知识点整理
  • [C++]18:set和map的使用
  • [cb]UIGrid+UIStretch的自适应
  • [codeforces] 25E Test || hash
  • [GN] DP学习笔记板子
  • [HDU 3555] Bomb [数位DP]