计算机网络学习1

1 网络的和核心部分与边缘部分:

如下图1所示:

位于网络边缘的主机和位于网络核心部分的路由器都是计算机,但是它们的作用是不一样的。

主机是为用户进行信息处理,并且可以和其他主机通过网络进行信息交换。

路由器则是用来转发分组的,即进行分组交换。

图1

何为分组交换呢?

通常我们把客户端A传输给客户端B的整个数据块成为一个 报文。先把较长的报文划分成为一个个更小的等长数据段,在每一个数据段前面,加上一些必要的控制信息组成的首部就构成了一个 分组。具体如图2所示

图2

路由器获得每个分组,然后从首部获取下一跳的信息,把分组交给下一个路由器,经过一系列不同的路由器最终达到边缘用户(这里可以理解为主机)。

那么分组转发有什么缺点呢?

分组转发时可能会出现一个路由器缓存了多个分组,这就造成了分组排序转发的问题。也有可能在转发时分组可能会出现丢失,这个需要一些协议来保证。

2 计算机网络的性能

速率:计算计发出的信号都是数字形式的,比特(bit)是计算机中数据量的单位,也是信息论中使用的信息量的单位,比特就是二进制中的0或者1,计算机网络中的速率也是比特流(bit/s),也有其他单位例如100M其实含义是100Mb/s。这里也需要注意的是1字节=8bit,一般我们常见的是字节Byte

带宽:表示通信链路允许通过信号的频带范围就称为线路的带宽,在计算机网络中,带宽来表示网络的通信线路传送数据的能力,因此网络带宽表示在单位时间内从网络中某一点到另一点所通过的最高数据率。

时延:指的是一个报文或者一个分组甚至是一个比特从网络一端传输到另一端所需的时间。

发送时延:是指主机或者路由器发送数据帧所需要的时间;也就是从数据帧的第一个比特算起,到该帧的最好一个比特结束。

传播时延:传播时延(propagation delay)是电磁波在信道中传播一定的距离需要花费的时间。传播时延的计算公式是

例如,1000km长的光纤线路产生的传播时延大约为5ms。

往返时间RTT:它表示从发送方发送数据开始,到发送方收到来自接收方的确认(接收方收到数据后便立即发送确认),总共经历的时间。

3 计算机网络体系结构的形成

计算机网络是个非常复杂的系统,为了说明这一点举一个最简单的例子:连接在网络上的两台计算机要互相传送文件。

显然,在这两台计算机之间必须有一条传输通道。仅仅有传输通道表示,这两台计算机有传输的条件了。那么如何正确传输呢?

1、 发起通信的计算机必须将数据通信的通路进行激活(activate)。所谓“激活”就是要发出一些信令

2、要告诉网络如何识别接收数据的计算机。

3、发起通信的计算机必须查明对方计算机是否已开机,并且与网络连接正常。

4、发起通信的计算机中的应用程序必须弄清楚,在对方计算机中的文件管理程序是否已做好接收文件和存储文件的准备工作。

5、对出现的各种差错和意外事故,如数据传送错误、重复或丢失,网络中某个结点交换机出故障等,应当有可靠的措施保证对方计算机最终能够收到正确的文件

6、对出现的各种差错和意外事故,如数据传送错误、重复或丢失,网络中某个结点交换机出故障等,应当有可靠的措施保证对方计算机最终能够收到正确的文件。

至于满足以上六点,才可以保证两台计算机能够完成通信。但是我们不能写一个层来完成所有东西吗,就像代码中不能只写一个main函数,那么你的代码就会太臃肿了。这里也是一样的,我们任务进行拆分,将其分解到不同层次,每个层次完成特定功能,最后完成所有任务。

假设:我们再主机1和主机2之间通过一个通信网络传输文件,那么就需要做以下工作。

文件传输层:工作与传送文件有关,发送端的文件传送应用程序应当确信接收端的文件管理程序已做好接收和存储文件的准备,如果有文件格式不同,那么两个主机都要具备文件转换的能力。

然而我们并不想让文件传输模块独立完成全部工作细节,这样会使得文件传送模块特别臃肿。因此我们定义了通信服务层。

同样道理再构造一个网络接入模块。总的如下图3 所示。

图3

这样做有什么好处呢?

各层直接相互独立,减小的耦合性,提高了扩展,灵活性强。

3.1现代网络结构

现代网络结构已经抛弃了OSI的七层架构,而采用TCP/IP协议架构,或者是五层协议架构。

图4

应用层:是体系架构中的最高层,也是我们程序员编写代码的地方。应用层的任务是通过应用进程间的交互来完成特定的网络应用。因此应用层的协议是定义在应用进程间通信和交互的规则

传输层:运输层的任务就是负责两个主机中进程之间的通信提供通用的数据传输服务。

  • 传输控制协议TCP (Transmission Control Protocol)——提供面向连接的、可靠的数据传输服务,其数据传输的单位是报文段(segment)

  • 用户数据报协议 UDP (User Datagram Protocol)——提供无连接的、尽最大努力(best-effort)的数据传输服务(不保证数据传输的可靠性),其数据传输的单位是用户数据报。

网络层:为不同分组交换网上的不同主机(包括路由器和终端)在发送数据时,网络层把运输层产生的报文段或用户数据报封装成分组或包(packet)进行传送。

数据链路层:我们知道两台主机之间的数据传输,总是在一段一段链路上传输的这就需要我们专门的链路层协议。在两个相邻结点之间传送数据时,数据链路层将网络层交下来的IP数据报组装成。每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制等)

物理层:在物理层上所传数据的单位是比特。因此物理层要考虑用多大的电压代表“1”或“0”,以及接收方如何识别出发送方所发送的比特。物理层还要确定连接电缆的插头应当有多少根引脚以及各条引脚应如何连接

总体来说,每个层次负责自己的工作,整体协调灵活性好。

4 实体、协议、服务和服务访问点

实体(entity)这一较为抽象的名词表示任何可发送或接收信息硬件或软件进程

协议是控制两个对等实体(或多个实体)进行通信的规则的集合。

在协议的控制下,两个对等实体间的通信使得本层能够向上一层提供服务。要实现本层协议,还需要使用下面一层所提供的服务。

此处要理解的是,协议是“水平的”服务是“垂直的”。

在同一系统中相邻两层的实体进行交互(即交换信息)的地方,通常称为服务访问点 SAP (Service Access Point)

总体解析如图5所示。

图5

5 图解两台主机交互

这里的两台主机并不是你的笔记本A 和 笔记本B,而是笔记本AB的两个进程。具体如下图6所示,

主机A 的某个进程 首先要向主机B中某个进程建立连接。同时建立连接的过程,也依赖于主机A与主机B的其他层。从这个角度而言,主机A的运输层,网络层等为主机A的应用层提供服务(这就是服务为什么是垂直的)。当主机A中进程与主机B中进程建立连接以后,就要发送数据,这并就需要规定一定的协议(这就说明了协议是水平的)

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

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

相关文章

Django 实现瀑布流

需求分析 现在是 "图片为王"的时代,在浏览一些网站时,经常会看到类似于这种满屏都是图片。图片大小不一,却按空间排列,就这是瀑布流布局。 以瀑布流形式布局,从数据库中取出图片每次取出等量(7 …

EventLoop(回顾)

基本概念 影响 JavaScript是单线程的语言同步任务和异步任务同步任务和异步任务的执行过程宏任务和微任务宏任务和微任务的执行过程 基本概念 JavaScript主线程从"任务队列"中读取异步任务的回调函数,放到执行栈中依次执行,这个过程是循环不…

Unity脚本类 ---- Input类,虚拟轴与插值方法

1.注意第一个GetMouseButton()方法只要检测到鼠标处于按下状态,那么该方法就会一直返回 true,鼠标没按下时调用该方法返回的是 false 2.而第二个方法 --- GetMouseButtonDown() 方法只会在你按下鼠标的第一帧返回一个 true,然后就…

第四季新星计划即将开启,博客之星取消拉票你怎么看?

catalogue🌟 写在前面🌟 线下创机遇🌟 新星计划🌟 做导师可以得到什么🌟 新星计划跟原力计划有何不同?🌟 博客之星新玩法你怎么看?🌟 写在前面 哈喽,大家好&…

音乐制作:Ableton Live 11 Suite Mac

Ableton Live 11 Suite Mac是一款非常专业的音乐制作软件,Live 是用于音乐创作和表演的快速、流畅和灵活的软件。它带有效果、乐器、声音和各种创意功能;制作任何类型的音乐所需的一切。以传统的线性排列方式进行创作,或者在 Live 的 Session 视图中不受…

全面比较Aptos和Sui:Aptos已上线 来看看Sui

一、简介 “L1战争”是2020-2021周期中广为人知的故事,主要的竞争性1层区块链与以太坊一起捕获了大量的价值和开发人员人才。Solana、Cosmos、Avalanche、BSC和近十几个其他L1在市场峰值市值一度超过3000亿美元。虽然这种叙事已经降温,但围绕网络规模的…

56 | fstab开机挂载

1 fstab的参数解析 【file system】【mount point】【type】【options】【dump】【pass】 其中: file systems:要挂载的分区或存储设备。 mount point:file systems 的挂载位置。 type:要挂载设备或是分区的文件系统类型&…

【刷题之路Ⅱ】牛客 NC107 寻找峰值

【刷题之路Ⅱ】牛客 NC107 寻找峰值一、题目描述二、解题1、方法1——直接遍历1.1、思路分析1.2、代码实现2、方法2——投机取巧的求最大值2.1、思路分析2.2、代码实现3、方法3——二分法3.1、思路分析3.2、代码实现一、题目描述 原题连接: NC107 寻找峰值 题目描…

01. Vue核心 Vue简介 初识

1.Vue简介 1. Vue核心 1.1 官网 英文官网中文官网 1.1.2 介绍与描述 Vue 是一套用来动态构建用户界面的渐进式JavaScript框架 ○ 构建用户界面:把数据通过某种办法变成用户界面 ○ 渐进式:Vue可以自底向上逐层的应用,简单应用只需要一个…

智能灯泡一Homekit智能家居系列

传统的灯泡是通过手动打开和关闭开关来工作。有时,它们可以通过声控、触控、红外等方式进行控制,或者带有调光开关,让用户调暗或调亮灯光。 智能灯泡内置有芯片和通信模块,可与手机、家庭智能助手、或其他智能硬件进行通信&#…

Docker—苹果Mac安装Docker的两种方式

文章目录Docker简介方式一:官网dmg安装方式二:homebrew安装前置条件brew安装docker关注微信公众号:CodingTechWork,一起学习进步。Docker简介 &emsp docker就是集镜像、容器和仓库三个概念于一身的集装箱,应用于…

真要被00后职场整顿了?老员工纷纷表示真的干不过.......

最近聊到软件测试的行业内卷,越来越多的转行和大学生进入测试行业。想要获得更好的待遇和机会,不断提升自己的技能栈成了测试老人迫在眉睫的问题。 不论是面试哪个级别的测试工程师,面试官都会问一句“会编程吗?有没有自动化测试…

Java - 配置中心初体验

目录 前言 配置中心介绍 什么是配置中心 Nacos配置中心 数据结构 命名空间 分组 服务 配置中心添加配置 读取配置 本地添加依赖 本地添加配置 测试 结语 前言 前文讲了ELK,ELK说简单也简单,说复杂也复杂,但说实话,微…

难以置信,已经有人用 ChatGPT 做 Excel 报表了?

要问2023年初科技领域什么最火,那自然是 ChatGPT。 ChatGPT 由人工智能研究实验室 OpenAI 于2022年11月30日推出。上线短短5天,用户数量已突破100万,在今年2月份,用户数量已经突破1亿。 ChatGPT 是一个超级智能聊天机器人&#…

Centos7 XFS(dm-0):Internal error XFS_WANT_CORRUPTED_GOTO

在k8s的道路上我们都是小白,每天启动虚机都会遇到各种各样的问题,这不 部署的k8s虚机启动发现操作系统启动异常,提示如下报错信息 XFS(dm-0):Internal error XFS_WANT_CORRUPTED_GOTO at line 1700 of file fs/xfs/l…

Prometheus 监控云Mysql和自建Mysql(多实例)

本文您将了解到 Prometheus如何配置才能监控云Mysql(包括阿里云、腾讯云、华为云)和自建Mysql。 Prometheus 提供了很多种Exporter,用于监控第三方系统指标,如果没有提供也可以根据Exporter规范自定义Exporter。 本文将通过MySQL server exporter 来监控Mysql指标,最新版的…

MFU(Mask Field Utilization)

先验知识:通常12寸晶圆为300mm直径圆形,Mask最大为26mm x 33mm矩形。 MFU就是光刻掩膜版有效利用比例。实际mask size die_area x N scribe_line_area, N是一张mask内die数量,受限于scanner(推测是曝光的机器),mask尺寸最大可以…

Windows Server 2022 中文版、英文版下载 (updated Mar 2023)

Windows Server 2022 正式版,2023 年 3 月更新 请访问原文链接:https://sysin.org/blog/windows-server-2022/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.org 早期直观体验 版本 21H2,根据…

【数据结构】排序

作者:✿✿ xxxflower. ✿✿ 博客主页:xxxflower的博客 专栏:【数据结构】篇 语录:⭐每一个不曾起舞的日子,都是对生命的辜负。⭐ 文章目录1.排序1.1排序的概念1.2常见的排序算法2.常见排序算法2.1插入排序2.1.1直接插入…

0x03数学预备

线性代数 标量 实质上就是一个点或者说是一个零维的ndarary x torch.tensor(3.0) y torch.tensor(4.0)x y, x * y, x / y, x ** y, x > y向量 向量基本运算遵循广播机制,对应的点相加减,相乘除,长度是L2范数 在大量文献中&#xf…
最新文章