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

目录

  • 计算机网络的基本概念
    • 计算机网络的定义组成与功能
    • 计算机网络的分类
      • 按照网络的作用范围进行分类
      • 按照网络的使用者进行分类
    • 计算机网络主要性能指标
  • 计算机网络体系结构
    • 计算机网络协议、接口、服务等概念
    • 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.数据封装成帧后发到传输介质上,到达目的主机后每层协议再剥掉相应的首部,根据首部中的 “上层协议字段” 将数据交给对应的上层协议处理。

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

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

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

相关文章

Java序列化与反序列化

概念: 序列化:将对象转化成字节序列反序列化:将字节序列转化成对象 在Java中,通过实现Serializable接口来声明一个类是可序列化的。被序列化的类及其内部所有引用对象,都必须实现Serializable接口,否则序列…

隐藏cobaltstrike服务器-nginx反向代理

隐藏nginx版本 编辑/etc/nginx/nginx.conf 取消server_tokens off 前面的注释 http转发80端口 编辑/etc/nginx/sites-enabled/default ## # You should look at the following URLs in order to grasp a solid understanding # of Nginx configuration files in order to …

Spring Boot 属性加载原理解析

基于Spring Boot 3.1.0 系列文章 Spring Boot 源码阅读初始化环境搭建Spring Boot 框架整体启动流程详解Spring Boot 系统初始化器详解Spring Boot 监听器详解Spring Boot banner详解Spring Boot 属性配置解析Spring Boot 属性加载原理解析 在《Spring Boot 框架整体启动流程详…

计算机视觉 - 理论 - 从卷积到识别

计算机视觉 - 理论入门 前言一,导论:二,卷积:图像去噪:常值卷积:高斯卷积:椒盐去噪:锐化程度: 三,边缘检测:图像信号导数:求导算子:图…

如何用rust实现一个异步channel

目录 前言思路实现功能代码实现 测试先引测试版包测试代码结果与分析思考 尾语 前言 使用通信来共享内存,而不是通过共享内存来通信 上面这句话,是每个go开发者在 处理多线程通信时 的座右铭,go甚至把实现这个理念的channel直接焊在编译器里&…

macOS编译AirMap开源全景图源码image-processing

1.克隆源码 git clone --recursive https://github.com/airmap/image-processing.git 2. 使用CLion打开CMakeLists.txt并做为工程打开 2.默认配置名为Default,可修改,下面的所有配置项都可改 3.点击OK后会自动生成

8 系统定时器(Systick)(STM32HAL库)

目录 系统定时器(Systick) SysTick定时器特性介绍 SysTick定时器的功能 SysTick定时器寄存器介绍 Systick定时器的使用 系统定时器(Systick) SysTick定时器特性介绍 计数宽度: 24bit来存储数据,2^24…

使用影刀RPA拆分excel数据

首先,要使程序有一定的兼容性,即增加互动性,认为选择要拆分的文件和拆分的依据列,可以利用影刀中的‘打开选择对话框’和‘打开输入对话框’来实现,这样一来便不用考虑待拆分excel的路径问题获取1中选择的依据拆分列&a…

企业构建知识库方案

AI模型理解误区:百万成本微调垂直行业达模型VS低成本建立企业专属知识库或ai助理_哔哩哔哩_bilibili

基于TensorFlow和Keras的狗猫数据集的分类实验

文章目录 前言一、环境配置1、anaconda安装2、修改jupyter notebook工作目录3、配置TensorFlow、Keras 二、数据集分类1、分类源码2、训练流程 三、模型调整1.图像增强2、网络模型添加dropout层 四、使用VGG19优化提高猫狗图像分类1、构建网络模型2、初始化一个VGG19网络实例3、…

课程20:API项目重构

🚀前言 本文是《.Net Core从零学习搭建权限管理系统》教程专栏的课程(点击链接,跳转到专栏主页,欢迎订阅,持续更新…) 专栏介绍:以实战为线索,基于.Net 7 + REST + Vue、前后端分离,不依赖任何第三方框架,从零一步一步讲解权限管理系统搭建。 专栏适用于人群:We…

详解如何使用nvm管理Node.js多版本

目录 NVM进行NodeJS多版本管理 背景 安装步骤 1. 下载nvm安装包 2. 安装nvm 使用步骤 下载nodejs 切换版本nodejs ​编辑 常用命令 NVM进行NodeJS多版本管理 背景 有的时候开发环境需要多个NodeJS的版本,这个时候就可以用NVM进行管理。 安装步骤 1. 下载n…