计算机网络-网络体系结构

目录

  • 计算机网络的基本概念
    • 计算机网络的定义组成与功能
    • 计算机网络的分类
      • 按照网络的作用范围进行分类
      • 按照网络的使用者进行分类
    • 计算机网络主要性能指标
  • 计算机网络体系结构
    • 计算机网络协议、接口、服务等概念
    • ISO/OSI 参考模型和 TCP/IP 模型
      • OSI七层模型
      • TCP/IP 模型
      • 封装与分用

计算机网络的基本概念

计算机网络的定义组成与功能

计算机网络:就是利用通信设备和线路将地理位置不同的、功能独立的多个计算机系统互连起来,以功能完善的网络软件(即网络通信协议、信息交换方式、网络操作系统等)实现网络中资源共享和信息传递的系统

  1. 计算机网络所连接的硬件,并不限于一般的计算机,而是包括了智能手机
  2. 计算机网络并非专门用来传送数据,而是能够支持很多种的应用(例如用于实现远程控制和远程访问,如远程桌面和远程服务器等。此外,计算机网络还可以用于安全性、可靠性和性能方面的提高,例如防火墙、数据备份和负载均衡等。)

计算机网络逻辑功能上分为资源子网通信子网
资源子网:负责数据处理的主计算机与终端
通信子网:负责数据通信处理的通信控制处理机与通信线路
在这里插入图片描述
资源子网的组成,包括主机,终端,终端控制器,外设,软件资源和信息资源,主机(host)
通信子网主要是路由器和交换机等网络设备组成

拓扑结构可分为下面两种:

  1. 边缘部分 : 由所有连接在互联网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享

  2. 核心部分:由大量网络和连接这些网络的路由器组成。这部分是为边缘部分提供服 务的(提供连通性和交换)
    在这里插入图片描述

计算机网络的分类

按照网络的作用范围进行分类

  • 广域网 WAN (Wide Area Network)

广域网的作用范围通常为几十到几千公里。广域网是互联网的核心部分,其任务是通过 长距离(例如,跨越不同的国家)运送主机所发送的数据。连接广域网各结点交换机的链路一 般都是高速链路,具有较大的通信容量

  • 城域网 MAN (Metropolitan Area Network)

城域网的作用范围一般是一个城市,可跨越几个街区甚至整个城市。城域网可以为一个或几个单位所拥有,但也可以是一种公用设施,用来将多个局域网进行互连

  • 局域网 LAN (Local Area Network)

指位于同一地理位置内的一组网络设备及其连接的通信网络,局限在较小的范围(如 1km 左右)

  • 个人区域网 PAN (Personal Area Network)

个人区域网就是在个人工作的地方把属于个人使用的电子设备(如便携式电脑等)用无线 技术连接起来的网络,因此也常称为无线个人区域网 WPAN (Wireless PAN) ,其范围很小, 大约在 10 m 左右

按照网络的使用者进行分类

  • 公用网(public network)

指电信公司(国有或私有)出资建造的大型网络。“公用 ” 的意思就是所有愿意按电信公司的规定交纳费用的人都可以使用这种网络

  • 专用网(private network)

某个部门为满足本单位的特殊业务工作的需要而建造的网络,例如军队的专用网络等等

计算机网络主要性能指标

  • 速率:连接在计算机网络上的主机在数字信道上传送数据位数的速率,也称为 data rate 或 bit rate 。单位是 b/s , kb/s , Mb/s , Gb/s.(小写b为bit 大写B为Byte)
  • 吞吐量:即在单位时间内通过某个网络的数据量。单位 b/s ,Mb/s 等.
  • 时延:是指数据( 一个报文或者分组,甚至比特)从网络(或链路)的一端传送到另一端所需的时间。网络中的时延是由以下几个不同的部分组成
    1. 发送时延也就是传输时延:发送数据时,数据块从结点进入到传输媒体所需要的时间。 也就是从发送数据帧的第一个比特算起,到该帧的最后一个比特发送完毕所需的时间。
    2. 传播时延:电磁波在信道中需要传播一定的距离而花费的时间。
    3. 处理时延:交换结点为存储转发而进行一些必要的处理所花费的时间。
    4. 排队时延:结点缓存队列中分组排队所经历的时延,排队时延的长短往往取决于网络中当时的通信量。
      在这里插入图片描述
  • 往返时间 RTT:在计算机网络中,往返时间 RTT(Round-Trip Time)也是一个重要的性能指标。这是因为 在许多情况下,互联网上的信息不仅仅单方向传输而是双向交互的。因此,我们有时很需要 知道双向交互一次所需的时间。往返时间表示从发送方发送数据开始,到发送方收到来自接收方的确认,总共经历的时间(例如三次握手,四次挥手)
  • 利用率: 利用率分为信道利用率跟网络利用率。 信道利用率指出某信道有百分 之几的时间是被利用的(有数据通过) 。完全空闲的信道的利用率是零。网络利用率则是全网络的信道利用率的加权平均值

计算机网络体系结构

计算机网络协议、接口、服务等概念

  • 协议
    为进行网络中的数据交换而建立的规则、标准或约 定称为网络协议 (network protocol) 。网络协议也可简称为协议。

协议由三个要素组成分别为:

  1. 语法,即数据与控制信息的结构或格式
  2. 语义,即需要发出何种控制信息,完成何种动作以及做出何种响应
  3. 同步,即事件实现顺序的详细说明
  • 接口
    同一系统中相邻两层的实体进行交互的地方
  • 服务
    为保证上层对等体之间能相互通信,下层向上层提供的功能

ISO/OSI 参考模型和 TCP/IP 模型

OSI七层模型

OSI即开放系统互连

  1. 物理层
    物理层是 OSI 参考模型的最低一层,也是在同级层之间直接进行信息交换的唯一一层。 物理层负责传输二进制位流,也就是透明的传输比特,它的任务就是为上层(数据链路层)提供一个物理连接,以便在相邻节点之间无差错地传送二进制位流。

  2. 数据链路层
    数据链路层负责在两个相邻节点之间,无差错地传送以“帧 ”为单位的数据。每一帧包括一定数量的数据和若干控制信息。

  3. 网络层
    网络层的主要功能是为处在不同网络系统中的两个节点设备通信提供一条逻辑通路。其基本任务包括路由选择、拥塞控制与网络互联等功能。

  4. 传输层
    传输层的主要任务是向用户提供可靠的端到端( end-to-end )服务,透明地传送报文。 它向高层屏蔽了下层数据通信的细节,因而是计算机通信体系结构中最关键的一层。该层关心的主要问题包括建立、维护和中断虚电路、传输差错校验和恢复以及信息流量控制机制等。

  5. 会话层
    负责通讯的双方在正式开始传输前的沟通, 目的在于建立传输时所遵循的规则,使传输 更顺畅、有效率。

  6. 表示层
    表示层处理两个应用实体之间进行数据交换的语法问题,解决数据交换中存在的数据格 式不一致以及数据表示方法不同等问题。

  7. 应用层
    应用层是 OSI 参考模型中最靠近用户的一层,它直接提供文件传输、 电子邮件、网页浏览等服务给用户。

在这里插入图片描述

总结
既复杂又不实用:所以 OSI 七层模型没有落地、实现。

TCP/IP 模型

TCP/IP 是一个四层的体系结构,它包含应用层、传输层、网际层和网络接口层(用网际 层这个名字 是强调这一层是为了解决不同网络的互连问题) 。不过从实质上讲,TCP/IP 只有 最上面的三层,因为最下面的网络接口层并没有什么具体内容。

  1. 网络接口层(network interface layer)
    在 TCP/IP 分层体系结构中,最底层是网络接口层,它 负责通过网络发送和接收 IP 数 据报。 TCP/IP 体系结构并未对网络接口层使用权的协议做出强硬的规定,它允许主机连入 网络时使用多种现成的和流行的协议,例如局域网协议或其他一些协议。
  2. 网络层(internet layer)也就是网际层
    网络层是 TCP/IP 体系结构的第二层,它实现的功能相当于 OSI 参考模型网络层的无 连接网络服务。互联层负责将源主机的报文分组发送到目的的主机,源主机与目的主机可以在一个网上,也可以在不同的网上。
    (1)处理来自传输层的分组发送请求。在收到分组发送请求之后,将分组装入 IP 数据报,填充报头,选择发送路径,然后将数据报发送到相应的网络输出线。
    (2)处理接收的数据报。在接收到其他主机发送的数据报之后,检查目的地址,如需要 转发,则选择发送路径,转发出去;如目的地址为本节点 IP 地址,则除去报头,将分组送交给传输层处理。
    (3)处理互联的路径、流控与拥塞问题。
  3. 传输层(transport layer)
    网络层之上是传输层,它的主要功能是负责应用进程之间的 端 - 端( Host-to-host )通 信。在 TCP/IP 体系结构中,设计传输层的主要目的是在互联网中源主机与目的主机的对等 实体之间建立用于会话的端- 端连接 。因此,它与 OSI 参考模型的传输层功能相似。
    TCP/IP 体系结构的传输层定义了 传输控制协议(TCP , transport control protocol)和 用户数据报协议(UDP ,user datagram protocol)两种协议。
    TCP 协议是一种可靠的面向连接的协议,它允许将一台主机的字节流(byte stream)无 差错地传送到目的主机。
    UDP 协议是一种不可靠的无连接协议,它主要用于不要求分组顺序到达的传输中,分组传输顺序检查与排序由应用层完成。
  4. 应用层( application layer)
    在 TCP/IP 体系结构中,应用层是最靠近用户的一层。它包括了所有的高层协议,并且 总是不断有新的协议加入。其主要协议包括:
    (1)文件传输协议(FTP,file transfer protocol),用于实现互联网中交互式文件传输功能;
    (2)简单邮件传输协议(SMTP simple mail transfer protocol),用于实现互联网中邮件传 送功能;
    (3)域名系统(DNS ,domain name system),用于实现互联网设备名字到 IP 地址映射的网络服务;
    (4)超文本传输协议(HTTP,byper text transfer protocol),用于目前广泛使用的 Web 服务;
    (5)路由信息协议(RIP,routing information protocol),用于网络设备之间交换路由信息;
    在这里插入图片描述

封装与分用

在这里插入图片描述

1.不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在网络层叫做数据报(datagram),在链路层叫做帧(frame)。
2.应用层数据通过协议栈发到网络上时,每层协议都要加上一个数据首部(header),称为封装(Encapsulation)。
3.首部信息中包含了一些类似于首部有多长,载荷(payload)有多长,上层协议是什么等信息。
4.数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中的 “上层协议字段” 将数据交给对应的上层协议处理。

总结封装就是一层一层进行包装加工,分用就是一层一层进行拆包解析。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

攻防渗透第四章(谷歌语法)

一、常用谷歌黑客语法 制定网站的URL site: 包含特定字符的URL inurl: 网页标题中包含特定字符 intitle: 正文中指定字符 intext: 指定类型文件 filetype 开发语言判断 site:163.com filetype:php site:163.com filetype:jsp site:163.com filetype:asp site:163.com filetype…

【裸机开发】内核时钟 PLL1 配置实验(一)—— 寄存器分析篇

本章主要会回答以下问题 ? imx6u 的时钟源来自于哪 ?为什么一个起始时钟源,最终分成了多路?不同的时钟源是如何与外设对应起来的?(时钟树)要配置内核时钟频率 有哪些步骤 ?涉及到哪…

基于Java购物商城系统设计与实现(源码+lw+部署文档+讲解等)

博主介绍: ✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精…

今天面了个35k字节跳动出来,真是砂纸擦屁股,给我露了一手...

​2023年春招已经结束,很多小伙伴收获不错,拿到了心仪的 offer。 各大论坛和社区里也看见不少小伙伴慷慨地分享了常见的面试题和八股文,为此咱这里也统一做一次大整理和大归类,这也算是划重点了。 俗话说得好,他山之石…

深入篇【C++】string类的常用接口介绍:标准库中的string类 【万字总结】

深入篇【C】string类的常用接口介绍:标准库中的string类 Ⅰ.string类介绍Ⅱ.string类的常用接口①.string类对象的常用构造1.string()2.string(const char*ch)3.string(const string& str)4.string(size_t n,char c)5.string(const string& str,size_t pos,…

第四章 Linux网络编程 4.1 网络结构模式 4.2MAC地址、IP地址、端口

第四章 Linux网络编程 4.1 网络结构模式 C/S结构 简介 服务器 - 客户机,即 Client - Server(C/S)结构。C/S 结构通常采取两层结构。服务器负责数据的管理,客户机负责完成与用户的交互任务。客户机是因特网上访问别人信息的机器…

Seata客户端的启动过程 学习记录

Seata客户端的启动过程 1.自动装配4个配置类 将在SpringBoot启动时往容器中添加4个类 1. 自动配置类 SeataAutoConfiguration SeataAutoConfiguration将会往容器中添加两个bean failureHandler 事务处理失败执行器globalTransactionScanner failureHandler failureHandle…

DBA 抓包神器 tshark 测评

想窥探神秘的网络世界的奥秘,tshark 助你一臂之力! 作者:赵黎明 爱可生 MySQL DBA 团队成员,熟悉 Oracle、MySQL 等数据库,擅长数据库性能问题诊断、事务与锁问题的分析等,负责处理客户 MySQL 及我司自研 D…

计算机组成原理(六)指令系统

一、指令的基本格式 1.1机器指令的相关概念 指令集(Instruction Set) 某机器所有机器指令的集合 *定长指令集 指令集中的所有指令长度均相同!取指令控制简单*不定长指令集 指令集中的所有指令长度有长、有短 操作码 (1)长度固定 用于指令字长较长的情况RISC 如IBM370操作码8位…

2023 年前端 Web 发展趋势

虽然就个人观点,我觉得 Web 开发在最近几年都没什么进展(2016 年至 2021 年),但在刚刚过去的 2022 年中确实又出现了一些新的技术。在本文中,我想跟大家聊聊自己看到的最新 Web 开发的发展趋势。相信这波浪潮会继续激发…

RHCE shell 作业一

1. 设置邮箱 [rootserver ~]# yum install s-nail -y [rootserver ~]# vim /etc/s-nail.rc 编写脚本 [rootserver ~]# vim homework1.sh 设置定时任务 [rootserver ~]# vim /etc/crontab 2. [rootserver ~]# vim homework2.sh 测试: 3. [rootserve…

一文让你了解appium自动化的工作原理

目录 前言: 一、Appium加载的过程图解 二、初步认识appium工作过程 三、bootstrap介绍 四、所使用的技术 五、Capabilities 六、自我理解的工作原理 前言: Appium是一个流行的开源自动化测试框架,支持移动应用程序的自动化测试。 一…

进程管道:父进程和子进程

在接下来的对pipe调用的研究中,我们将学习如何在子进程中运行一个与其父进程完全不同的另外一个程序,而不是仅仅运行一个相同程序。我们用exec调用来完成这一工作。这里的一个难点是,通过exec调用的进程需要知道应该访问哪个文件描述符。在前…

MMPretrain

title: mmpretrain实战 date: 2023-06-07 16:04:01 tags: [image classification,mmlab] mmpretrain实战 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ccTl9bOl-1686129437336)(null)] 主要讲解了安装,还有使用教程.安装教程直接参考官网.下面讲…

pikachu靶场-../../(目录遍历)

目录遍历, 也叫路径遍历, 由于web服务器或者web应用程序对用户输入的文件名称的安全性验证不足而导致的一种安全漏洞,使得攻击者通过利用一些特殊字符就可以绕过服务器的安全限制,访问任意的文件 (可以是web根目录以外的文件),甚至…

pytorch深度学习框架—torch.nn模块(二)

pytorch深度学习框架—torch.nn模块(二) 激活函数 pytorch中提供了十几种激活函数,常见的激活函数通常为S形激活函数(Sigmoid)双曲正切激活函数(Tanh) 和线性修正单元(ReLu)激活函数等 层对应的…

Linux笔记

版本用的是CentOS7最min版 安装JDK:安装上传工具包:自动安装 yum install lrzsz -y 上传本地文件: rz -be 解压jdk: tar -zxvf jdk-8u371-linux-x64.tar.gz -z 用gzip来压缩/解压缩文件,加上该选项后可以将档案…

关于 vue2 后台管理系统构建 vue2+mock.js 的经典案例

一,初识 Mock.js 1.什么是 mock.js: 主要是模拟数据生成器,可以生成随机数据,拦截器 Ajax 请求 2.为什么要使用 mock.js 由于很多学生在学习过程中,后端还没有做好接口,写好接口文档,有了mock.js 前端就…

如何识别二叉树的“亲戚”?——探秘判断子树的奥妙

本篇博客会讲解力扣“572. 另一棵树的子树”的解题思路,这是题目链接。先来审题: 本题的思路是:使用递归,把大问题化作小问题。 先来思考:如何判断q是不是p的子树呢? q是p的子树有3种情况,分别…

MyBatis操作数据库(查询功能)

目录 一、MyBatis的概念 二、配置MyBits环境 三、 MyBatis连接数据库查询操作(示例) 创建MySQL数据库表 配置MyBatis 配置连接数据库和MyBatis xml文件 ​编辑 四、添加业务代码 实体类entity 数据持久层mapper 创建接口类 创建xml文件 服务层…