计网体系结构

计算机网络的概述

概念

网络:网状类的东西或系统。

计算机网络:是一个将分散的、具有独立性功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。即计算机网络是互连(通过通信链路互连互通)的、自治(无主从关系)的计算机集合。

功能

数据通信:即可以实现多台计算机之间的信息交流,例如发送邮件,接收资料等。

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

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

提高计算机可靠性

实现负载均衡

发展

网络把许多计算机连接在一起,互联网(internet:interconnected network)则把许多网络连接在一起,因特网(Internrt)是世界上最大的互联网

  1. 初创阶段(1960年代初至1970年代末):

    • ARPANET的建立: ARPANET是第一个分组交换网络,由美国国防部高级研究计划局(ARPA)于1969年建立。其目标是实现分布式、鲁棒性的通信系统,以应对军事上的网络故障。
    • 包交换技术: 这个阶段的关键技术是包交换,它允许数据以离散的包的形式在网络中传输,而不是通过传统的电路交换。
  2. 分组交换网络的发展(1970年代末至1980年代初):

    • TCP/IP协议: 1970年代末至1980年代初,TCP/IP协议套件的发展成为事实上的标准,它定义了数据如何在网络中传输和路由。
    • LAN和WAN的发展: 开始出现各种局域网(LAN)和广域网(WAN)技术,如以太网和传输控制协议/互联网协议(TCP/IP)。
  3. 商用互联网的崛起(1980年代末至1990年代初):

    • 商用化和ISP: 互联网逐渐从军事和学术用途发展为商业用途,商用互联网服务提供商(ISP)涌现,为企业和个人提供接入互联网的服务。
    • 万维网的发明: 1990年,蒂姆·伯纳斯-李发明了万维网,引入了超文本标记语言(HTML)和统一资源定位符(URL)等概念,使互联网更加用户友好。
  4. 大众化和全球化(1990年代至2000年代初):

    • 普及和多媒体: 互联网的使用普及,大量个人用户和企业加入网络。多媒体内容,如图像和音频,变得更加普遍。
    • 宽带互联网: 宽带互联网的兴起提供了更高的带宽,支持更快速和高质量的数据传输。
  5. 移动互联网时代(2000年代至2010年代初):

    • 移动互联网: 移动设备的普及推动了移动互联网的兴起,无线网络技术不断进步,包括3G和4G。
    • 社交媒体和云计算: 社交媒体平台崛起,云计算成为一种主流的服务模式,使用户能够访问和分享存储在云中的数据。
  6. 物联网和5G时代(2010年代至今):

    • 物联网(IoT): 物联网的概念变得更加突出,各种设备和传感器开始互联,共同构建智能化的环境。
    • 5G技术: 5G技术的推出提供了更高的带宽和低延迟,支持更多复杂的应用,包括虚拟现实、增强现实和自动驾驶等。

    组成

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

    工作方式:

    ① 边缘部分:用户直接使用:C/S(或B/S)、P2P方式

    C/S:Client/Server,客户端与服务器之间的请求方式,因为服务端数量的原因,当请求的机器越多,请求的速度越慢。

    B/S:Browser/Server,浏览器与服务器之间的请求方式(本质上依然是C/S,只不过这里的客户端换成了浏览器)

    P2P:Peer-to-Peer,对等的请求方式,没有固定的服务端和客户端,即每台机器都可以是客户端,也可以是服务器。当需要请求资源的时候为客户端,当有与其他客户端需要的请求资源时为服务端。即“我为人人,人人为我”的思想。当请求的机器越多,请求的速度就越快。

    image-20231124110409967

    ② 核心部分

    image-20231124111139896

功能组成:① 资源子网:实现数据通信

② 资源子网:实现资源共享/数据处理

image-20231124111326067

分类

按分布范围分:广域网WAN(交换技术)、城域网MAN、局域网LAN(广播技术)、个人区域网PAN(蓝牙)

按使用者分:公用网、专用网

按交换技术分:电路交换、报文交换、分组交换

按拓扑结构分:

IMG_20231124_112928

按传输技术分:① 广播式网络:共享公共通信信道

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

标准化工作

要实现不同厂商的硬、软件之间能够相互连通,必须遵从统一的标准。标准化对计算机网络至关重要。

法定标准

由权威机构制定的正式的、合法的标准,如OSI。

事实标准

某些公司的产品在竞争中占据了驻留,经过长时间的筛选,这些产品中的协议和技术便成了标准。如TCP/IP

标准形式

RFC(Request For Comments)——因特网标准的形式

RFC上升为因特网正式标准的四个阶段:

  1. 因特网草案(Internet Draft):该阶段还不是RFC文档。
  2. 建议标准(Proposed Standard):从这个阶段开始称为RFC文档。
  3. 草案标准(Draft Standard:于2011年取消该环节)
  4. 因特网标准(Internet Standard):交由IETF、IAB组织审核通过后正式成为因特网标准。

相关组织

国际标准化组织ISO:OSI参考模型、HDLC协议

国际电信联盟ITU:制定通信规则

国际电气电子工程师协会IEEE:学术机构、IEEE802系列标准、5G

Internet工程任务组IETF:负责因特网相关标准的制定

性能指标

速率

速率即数据率或称数据传输率或比特率,即连接在计算机网络上的主机在数字信道上传输数据位数的速率。

单位是b/s,kb/s,Mb/s,Gb/s,Tb/s

image-20231124115947126

这与存储容量比较相似:1 Byte(字节) = 8Bit(比特)

image-20231124120253167

带宽

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

吞吐量

表示在单位时间内通过某个网络(或信道、接口)的数据量。单位b/s、kb/s、Mb/s等

吞吐量受网络的带宽或网络的额定速率的限制。

image-20231124150036150

时延

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

时延分为四种:发送时延(传输时延)、传播时延、排队时延、处理时延。

发送时延

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

计算公式:发送时延 = 数据长度 / 信道带宽(发送速率)

image-20231124150912991

如上图,发送的数据长度为10b,则发送时延为1s。

传播时延

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

计算公式:传播时延 = 信道长度 / 电磁波在信道上的传播速率

image-20231124151213939

排队时延

等待输出/入链路可用的等待时间。

处理时延

检查数据是否有错误,找到传出数据的通道口所花费的时间。

时延带宽积

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

image-20231124154036840

image-20231124154030023

往返时延RTT

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

举个最简单的例子,为了检测某个计算机是否已经联网,则可以直接打开cmd,然后在命令行输入ping www.baidu.com看是否有数据返回回来。

image-20231124155152803

上面的时间就是该计算机与百度网站的往返时延。RTT越大,在收到确认之前,可以发送的数据越多。

其中RTT包含两部分:① 往返传播时延 = 传播时延 * 2 ② 末端处理时间

利用率

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

网络利用率:信道利用率加权平均值

image-20231124155917542

体系结构&参考模型

分层结构

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

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

协议中有三大要素:

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

接口(访问服务点SAP):上层使用下层服务的入口

服务:下层为相邻上层提供的功能调用(垂直层面)。第n层在向n+1层提供服务时,此服务不仅包含第n层本身的功能,还包含由下层服务提供的功能。仅仅在相邻层间有接口,且所提供服务的具体实现细节对上一层完全屏蔽。

image-20231124162417375

将三到五层的结构抽取出来:

image-20231124162529129

SDU服务数据单元:为完成用户所需求的功能而应传送的数据。

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

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

ISO/OSI参考模型

image-20231125104348870

image-20231125110351629

image-20231125111025518

应用层

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

经典的应用层服务:① 文件传输(FTP)、电子邮件(SMTP)、万维网(HTTP)…

表现层

用于处理在两个通信系统中交换信息的表示方式(语法和语义)

表示层有以下三个功能:

① 数据格式变换,将应用层传来的数据转换成机器码的形式(二进制)。

② 数据加密解密,将用户层传来的数据进行加密处理,对传出的数据进行解密处理。

③ 数据压缩和恢复,将传入数据进行适当的压缩,减少传输的压力。将传出的数据进行恢复。

会话层

向表示层实体/用户进程提供建立连接并在连接上有序地传输数据。会话即建立同步(SYN),会话之间一旦建立就彼此独立,互不影响。

功能:

① 建立、管理、终止会话。

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

主要协议:ADSP、ASP

传输层

负责主机中两个进程的通信,即端到端的通信。传输单位是报文段或用户数据报。

功能:① 可靠传输(确认机制)、不可靠传输

② 差错控制(纠正错误的报文段)

③ 流量控制(控制数据发送的速度)

④ 复用分用(复用:多个应用层进程可同时使用下面运输层的服务;分用:运输层把收到的信息分别交付给上面应用层中相应的进程)

主要协议:TCP、UDP

网络层

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

功能:① 路由选择(最佳路径)

② 流量控制

③ 差错控制

④ 拥塞控制(若所有结点都来不及接收分组而需要丢弃大量分组时,网络则会处于拥塞状态。因此要采取一定措施,缓解这种拥塞)。

image-20231126101500575

主要协议:IP、IPX、ICMP、IGMP、ARP、RARP、OSPF

数据链路层

主要任务是将网络层传下来的数据报组装成帧。数据链路层/链路层的传输单位是帧。

功能:① 成帧(定义帧的开始和结束)

② 差错控制(帧错+位错)

③ 流量控制

④ 访问(接入)控制:控制对信道的访问

主要协议:SDLC、HDLC、PPP、STP

物理层

主要任务是在物理媒体上实现比特流的透明传输。传输单位是比特。

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

image-20231126103714088

功能:① 定义接口特性

② 定义传输模式

  1. 单工(Simplex):单工通信是指数据只能在一个方向上传输的通信方式。在单工通信中,通信的两个设备中只有一个设备能够发送信息,而另一个设备只能接收信息。这种通信方式类似于广播或单向广播,其中信息只能沿一个方向传播。
  2. 半双工(Half Duplex):半双工通信是指数据能够在两个方向上传输,但不能同时进行。在任何给定的时刻,通信的两个设备中只有一个设备能够发送信息,而另一个设备只能接收信息。对许多对讲机和无线电通信系统来说,半双工通信是常见的。
  3. 双工(Full Duplex):双工通信是指数据能够在两个方向上同时进行。通信的两个设备都能够同时发送和接收信息。这种通信方式常见于电话系统、互联网通信和许多其他实时通信应用中。典型的例子是电话对话,其中两个人可以同时说话而不必等待对方完成。

③ 定义传输速率

④ 比特同步

⑤ 比特编码

主要协议:Rj45、802.3

TCP/IP模型

尽管OSI模型是一个早期的理论框架,但TCP/IP模型在实际应用中更为成功,成为互联网通信的主要标准。TCP/IP模型最初的是TCP/IP协议栈

image-20231126105037085

后面对每一块进行分层,就变成了现在的TCP/IP参考模型

image-20231126105109127

相同点

两个模型都采用的了分层的形式,都是基于独立的协议栈的概念。可以实现异构网络的互联。

不同点

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

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

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

ISO/OSI参考模型TCP/IP模型
网络层无连接+面向连接无连接
传输层面向连接无连接+面向连接

面向连接分为三个阶段,第一是建立连接,在此阶段,发出一个建立连接的请求。只有在连接成功建立之后,才能开始数据传输,其为第二阶段,当数据传输完毕后,必须释放连接。而面向无连接没有这么多阶段,它可以直接进行数据传输。

image-20231126110414734

image-20231126110611049

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/470314.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

VBAR设置方法

Uboot源码: /** Setup vector:* (OMAP4 spl TEXT_BASE is not 32 byte aligned.* Continue to use ROM code vector only in OMAP4 spl)*/ #if !(defined(CONFIG_OMAP44XX) && defined(CONFIG_SPL_BUILD))/* Set V0 in CP15 SCTLR register - for VBAR to …

Linux设置jar包开机自启动

步骤 1、新建jar包自启文件 sudo vi /etc/init.d/jarSysInit.sh 按i键进入编辑模式输入以下内容: export JAVA_HOME/home/jdk/jdk-11.0.22 export CLASSPATH.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/jre/lib/rt.jar export PATH$PATH:$JAVA_…

FT2232调试记录(2)

FT2232调试记录 (1)获取当前连接的FTDI设备通道个数:(2)获取当前连接的设备通道的信息:(3)配置SPI的通道:(4)如何设置GPIO:(5)DEMO测试: FT2232调…

微信小程序开发学习笔记《17》uni-app框架-tabBar

微信小程序开发学习笔记《17》uni-app框架-tabBar 博主正在学习微信小程序开发,希望记录自己学习过程同时与广大网友共同学习讨论。建议仔细阅读uni-app对应官方文档 一、创建tabBar分支 运行如下的命令,基于master分支在本地创建tabBar子分支&#x…

Pure Pursuit控制器路径跟随

参考博客: Pure Pursuit 纯追踪法 Autoware(Pure pursuit代码学习) 1 Pure Pursuit纯追踪法 适用场景:低速场景(速度过高会产生转弯内切以及超调) 简化前轮转向角和后轴将遵循的曲率之间的关系 (Gx,Gy)是下一个需要追踪的路点&a…

pyGMT初步使用

文章目录 安装显示地图保存地图 安装 GMT,即Generic Mapping Tools,通用制图工具,是GIS领域应用最广泛的制图软件之一,用于绘制地图、图形以及进行地球科学数据分析和可视化。而pyGMT即其为python提供的函数接口,故而…

iptables防火墙、filter表控制、扩展匹配、使用iptables配置网络型防火墙、NAT原理、配置SNAT

目录 iptables 防火墙filter表 filter中的三条链 环境准备 iptables操作 验证FORWARD链 准备环境 配置FORWARD链 NAT 配置SNAT iptables iptables有多种功能,每一种功能都用一张表来实现最常用的功能是防火墙和NAT从RHEL7开始,默认的防火墙为…

uniapp 开发一个密码管理app

密码管理app 介绍 最近发现自己的账号密码真的是太多了,各种网站,系统,公司内网的,很多站点在登陆的时候都要重新设置密码或者通过短信或者邮箱重新设置密码,真的很麻烦 所以准备开发一个app用来记录这些站好和密码…

Python dict函数

Python中的字典(dict)是一种非常重要且灵活的数据结构,它提供了键值对的存储和访问机制。字典函数(dict())作为创建字典的工具之一,可以从多种数据结构中创建字典对象。在本文中,将深入探讨dict…

【NLP 自然语言处理(一)---词向量】

文章目录 什么是NLP自然语言处理发展历程自然语言处理模型模型能识别单词的方法词向量分词 一个向量vector表示一个词词向量的表示-one-hot多维词嵌入word embeding词向量的训练方法 CBOW Skip-gram词嵌入的理论依据 一个vector(向量)表示短语或者文章ve…

【碎片知识点】安装Linux系统 VMware与kali

天命:VMware就是可以运行操作系统的载体,kali就是Linux的其中一个分支 天命:Linux有两个分支版本:centos与ubuntu,kali底层就是ubuntu(所有Linux用起来都差不多,没啥区别) 天命&…

MySQL 基础知识(三)之数据库操作

目录 1 显示当前时间、用户名、数据库版本 2 查看已有数据库 3 创建数据库 4 使用数据库 5 查看当前使用的数据库 6 查看当前数据库信息 7 查看数据库编码 8 修改数据库信息 9 删除数据库 10 查看最大连接数 11 查看数据库当前连接数,并发数 12 查看数据…