计算机网络基础 - 计算机网络和因特网(2)

计算机网络基础

  • 计算机网络和因特网
    • Internet 结构和 ISP
    • 分组延时、丢失和吞吐量
      • 四种分组延时
      • 分组丢失
      • 吞吐量
    • 协议层次及其服务模型
      • 概念
      • 数据单元(DU)
      • 协议栈
        • TCP/IP 协议
        • 各层次的协议数据单元
        • IOS/OSI 参考模型
    • 计算机网络和因特网的历史
      • 早期计算机网路(1960年以前)
      • 分组交换的发展(1961-1972)
      • 专用网络和网络互联 (1972-1980)
      • 网络的激增(1980-1990)
      • 因特网爆炸 (1990, 2000’s)
      • 最新发展(2005 - 现在)


大家好呀!我是小笙,本章我主要分享计算机网络基础 - 计算机网络和因特网(2)学习总结,希望内容对你有所帮助!!

计算机网络和因特网

Internet 结构和 ISP

  • ISP(因特网服务提供者):是个向广大用户综合提供提供互联网接入业务,信息业务和增值业务的公司
  • ICP(内容提供商):自己部署专用网络,同时和各级 ISP 连接
  • IXP:多个对等 ISP 互联互通之处,通常不涉及费用结算(对等接入)
  • POP:高层 ISP 面向客户网络的接入点,涉及费用结算(高宿:一个底层 ISP 接入 多个高层 ISP)
image-20240526155909917

分组延时、丢失和吞吐量

为何会出现分组延时和丢失?

在路由器缓冲区的分组队列

  • 延时:分组等待排到队头、被传输
  • 丢失:分组到达时,如果没有可用的缓冲区,则该分组被丢掉(分组到达链路的速率超过了链路输出的能力)

节点总时延(total nodal delay):节点处理时延(nodal processing delay)、排队时延(queuing delay)、传输时延(transmission delay)和传播时延(propagation delay)

image-20240728170426990

四种分组延时

  1. 节点处理延时:检查 bit 级差错 ;检查分组首部和决定将分组导向何处

  2. 排队延时:在输出链路上等待传输的时间 ; 依赖于路由器的拥塞程度

    流量强度 = La / R (越接近 0,平均排队延时越小;反之越接近 1,平均排队延时趋向于无限大,因此,流量工程中的一条金

    科玉律是:设计系统时流量强度不能大于 1)

    image-20240728172617128
    • R 链路带宽(bps)
    • L 分组长度(bits)
    • a 分组到达队列的平均速率
  3. 传输延时:将分组发送到链路上的时间: L / R (R:链路带宽(bps) ; L:分组长度(bits)) ;存储转发延时

  4. 传播延时:传播延时 d / s (d:物理链路的长度 ; s:在媒体上的传播速度)

分组丢失

  • 链路的队列缓冲区容量有限
  • 当分组到达一个满的队列时,该分组将会丢失
  • 丢失的分组可能会被前一个节点或源端系统重传,或根本不重传

吞吐量

吞吐量,在源端和目标端之间传输的速率(数据量/单位时间)

  • 瞬间吞吐量:在一个时间点的速率
  • 平均吞吐量:在一个长时间内平均值

瓶颈链路:端到端路径上,限制端到端吞吐的链路(水桶效应)

端到端平均吞吐 = min{R1,R2,…,Rn }

image-20240728195632530

协议层次及其服务模型

20240803163157

概念

服务:低层实体向上层实体提供他们之间得通信能力

  • 服务用户
  • 服务提供者

服务访问点 SAP:使用下层提供的服务通过层间的接口(类似于上层调用下层的服务函数)

  • socket,TCP 向应用层提供得服务访问点(用于区分上层应用)

原语:下层提供给上层服务的形式(类似于服务函数参数)

服务类型:面向连接的服务以及无连接

  • 例如:TCP 向它的应用程序提供了面向连接的服务, 这种服务确保应用层报文向目的地传递的正确性和流量控制 ;UDP 协议向它的应用程序提供无连接服务。这是一种不提供不必要服务的服务,没有可靠性,没有流量控制,也没有拥塞控制

服务与协议的区别

  • 服务(Service):低层实体向上层实体提供它们之间的通信的能力,是通过原语来操作的,垂直方向
  • 协议(protocol):对等层实体(peer entity)之间在相互通信的过程中,需要遵循的规则的集合,水平方向

分层处理和实现复杂系统的好处?

对付复杂的系统

  • 概念化:结构清晰,便于标示网络组件,以及描述其相互关系(分层参考模型)
  • 结构化:模块化更易于维护和系统升级 (改变某一层服务的实现不影响系统中的其他层次 )
    • 对于其他层次而言是透明的

数据单元(DU)

PDU,协议数据单元:上层传输下来的数据 SDU,拼接上本层的 Header的数据则为本层的 PDU(通俗的讲就是封装上层的数据之后的称呼)

image-20240731130956005

SDU 与 PDU 存在关系:多对一(粘包)、一对一、一对多(拆包)的关系

协议栈

TCP/IP 协议
  • 应用层:网络应用

    • 为人类用户或者其他应用进程提供网络应用服务
    • FTP、SMTP、HTTP、DNS
  • 传输层:主机之间的数据传输

    • 在网络层提供的端到端通信基础上,细分为进程到进程,将不可靠的通信变成可靠地通信

    • TCP、UDP

  • 网络层:为数据报从源到目的选择路由

    • 主机主机之间的通信,端到端通信,不可靠

    • IP、路由协议

  • 链路层:相邻网络节点间的数据传输

    • 2个相邻2点的通信,点到点通信,可靠或不可常

    • 点对对协议PPP、802.11(wifi)、Ethernet

  • 物理层:在线路上传送 bit

20240803161139

各层次的协议数据单元
  • 应用层:报文(message)
  • 传输层:报文段(segment)TCP段,UDP数据报
  • 网络层:分组(packet)(如果无连接方式:数据报 datagram)
  • 数据链路层:帧(frame)
  • 物理层:位(bit)
IOS/OSI 参考模型
  • 表示层:允许应用解释传输的数据,e.g.、加密、压缩以及机器相关的表示转换
  • 会话层:数据交换的同步,检查点,恢复

20240803161241

计算机网络和因特网的历史

早期计算机网路(1960年以前)

主要使用的是线路交换网络,但是由于线路建立时间过长、独享方式占用通信资源以及可靠性不高等原因,寻求新型的网络模式,便出现分组交换网络

分组交换的发展(1961-1972)

网络控制协议是第一个端系统直接的主机-主机协议(NCP协议:相当于传输层和网络层在一起,支持应用开发)

专用网络和网络互联 (1972-1980)

定义了今天的Internet体系结构

网络的激增(1980-1990)

1983: TCP/IP部署

  • NCP分化成2个层次,TCP/IP,从而出现 UDP
  • 覆盖式IP解决网络互联问题
  • 主机设备和网络交换设备分开

因特网爆炸 (1990, 2000’s)

  • TCP/IP体系结构的包容性,在其上部署应用便捷,出现非常多的应用
  • 新一代杀手级应用(即时讯息,P2P 文件共享,社交网络等)更进一步促进互联网的发展
  • 安全问题不断出现和修订(互联网的补丁对策)

最新发展(2005 - 现在)

高速无线接入无处不在:移动互联时代

  • 4G部署,5G蓄势待发
  • 带宽大,终端性能高,价格便宜,应用不断增多

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

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

相关文章

自动驾驶的六个级别是什么?

自动驾驶汽车和先进的驾驶辅助系统(ADAS)预计将帮助拯救全球数百万人的生命,消除拥堵,减少排放,并使我们能够在人而不是汽车周围重建城市。 自动驾驶的世界并不只由一个维度组成。从没有任何自动化到完整的自主体验&a…

偷懒神器:auto 的讲解

1. auto 的定义 在c/c11之前,auto用来修饰局部变量,表明该变量是一个自动变量,函数结束后该变量销毁   c11中,赋予auto全新的含义。其中表示:auto不再是一个存储类型指示符,而是作为一个新的类型指示符来…

熊海1.0cmsPHP代码审计

熊海1.0cmsPHP代码审计 环境搭建 下载之后直接使用phpstduy搭建就好了 工具使用 比如使用seay审计系统 sql大多数是存在的,但是没有文件上传,这个就是需要自己去验证 漏洞审计 SQL注入 有点多,随便拿一个举例子 就比如我们的登录页面…

Ceres Cuda加速

文章目录 一、简介二、准备工作三、实现代码四、实现效果参考资料一、简介 字Ceres2.2.1版本之后,作者针对于稠密矩阵的分解计算等操作进行了Cuda加速,因此这里就基于此项改动测试一下效果。 二、准备工作 1、首先是需要安装Cuda这个英伟达第三方库,https://developer.nvidi…

日企的“目标式招聘”到底什么意思?

看到篇文章称:日企的目标式招聘,高效率招聘。这是什么意思呢?小编今天来跟大家讲一讲。 首先,日企的目标式招聘,其实企业也是迫不得已。一个大型企业的招聘负责人说:“以前我们都是认真地考察每一位应聘者&…

Vue 使用elementUI-plus el-calendar加 公历转农历 是否节假日 等

效果图: 1. 使用到自定文件 calendar.js /*** 1900-2100区间内的公历、农历互转* charset UTF-8* Author Jea杨(JJonlineJJonline.Cn)* Time 2014-7-21* Time 2016-8-13 Fixed 2033hex、Attribution Annals* Time 2016-9-25 Fixed lunar LeapMonth Param…

浏览器事件循环详解

1. 浏览器的进程模型 1.1. 何为进程? 程序运行需要有它自己的专属内存空间,可以把这块内存空间简单的理解为进程。 每个应用至少有一个进程,进程之间相互独立,即使要通信,也需要双方同意。 1.2. 何为线程&#xff1f…

NodeJS的安装【windows】

文章目录 1 安装包下载2 下载过程3 测试 1 安装包下载 Node.js中文网:https://nodejs.cn 2 下载过程 3 测试

【游戏引擎之路】登神长阶(八)——Python之旅行,休息一下,去看看新世界

5月20日-6月4日:攻克2D物理引擎。 6月4日-6月13日:攻克《3D数学基础》。 6月13日-6月20日:攻克《3D图形教程》。 6月21日-6月22日:攻克《Raycasting游戏教程》。 6月23日-7月1日:攻克《Windows游戏编程大师技巧》。 7月…

基于huggingface和langchain快速开发大模型应用

目录 一、HuggingFace. 2 1.1定义... 2 1.2活跃度... 2 1.3 工具集... 2 二、HuggingFace工具介绍... 3 2.1 Pipelines. 3 2.1.1定义... 3 2.1.2常见参数... 3 2.2、AutoClass. 4 2.2.1定义... 4 2.2.2 支持模型架构列表... 4 三、HuggingFace案例介绍... 4 3.1基…

Midjourney小技巧-提升出图质量的常用公式

一个公式让你的Midjourney生成更具韵味的人像身影图 step1-测试:输入提示词 - 一个面容精致的亚洲女性 - An Asian woman with a delicate face 生成的图片还是挺唯美的,就是过于单调,稀疏平常 step2-使用公式: 谁谁&#xff0…

flutter开发环境搭建与android studio 安装配置

flutter开发环境搭建与android studio 安装配置 安装 android studio 下载安装 Android Studio 开发工具 Android Studio官网安装的时看到配置路径就换成自己其他盘的路径即可,其他的一路下一步就ok安装完毕,运行打开缺少 android sdk 按照提示下载即可…

C++ 继承 派生类的运算符重载

C(二十二)派生类的运算符重载 语法赋值顺序引例1:当子类,不自实现赋值运算符函数重载时,默认调用父类的赋值运算符函数引例2:子类自实现赋值运算符函数重载,不做特殊处理时,只会调用父类的赋值运算符函数.引例3:子类自实现赋值运算符函数重载,在函数体内调用父类的赋值运算符函…

【leetcode】平衡二叉树、对称二叉树、二叉树的层序遍历(广度优先遍历)(详解)

Hi~!这里是奋斗的明志,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 🌱🌱个人主页:奋斗的明志 🌱🌱所属专栏:数据结构、LeetCode专栏 📚本系…

【Qt】如何搭建Qt开发环境

Qt的开发工具 需要搭建Qt开发环境,需要安装3个部分: C编译器(gcc、cl.exe...)注意,这里的C编译器不是指visual studio这种集成开发环境,编译器不等于IDE,编译器只是IDE调用的一个程序。Qt SDK…

将本地的业务写成成可供RPC远程调用的方法

第一步:首先我们先定义proto文件,这些proto文件将会为远程调用者提供调用的方法,为login方法。 2.重写UserServiceRpc类中的Login方法。 在Login中做的操作主要是,得到requst里面的参数,然后调用本地的Login方法&#…

SQL注入 报错注入、文件上传、布尔盲注、时间盲注

第7关 文件上传 ---面试官常问 1、MySQL上传shell的满足条件 如果面试官问你如何通过MySQL向网站上传一个shell脚本或者其他语言的一些脚本 ---就可以通过outfile导出的方式进行上传; outfile导出的前提条件:1、必须知道网站的物理路径&#xf…

网络编程相关

关于ipv4和v6 ipv4小细节-------公网和私有地址 端口 InetAddress 协议 UDP、TCP UDP通信程序 发送(单播): 接收(单播): UDP三种通信方式 单播和广播代码几乎相同,就是将: InetAddr…

【JVM基础11】——垃圾回收-说一下JVM的分代回收?

目录 1- 引言:分代回收1-1 什么是分代回收(What)1-2 为什么要用分代回收?(Why) 2- ⭐核心:分代回收工作机制2-1 工作机制2-2 MinorGC、Mixed GC、FullGC的区别是什么 3- 总结3-1 说一下 JVM 的分…

如何利用 ChatGPT 提高工作效率?

内容创作与总结: 写作辅助:可以帮助撰写文章、报告、邮件等各种文本,如为招商银行写宣传文案、写论文、写故事等。学习材料生成:能够生成学习材料,如摘要、抽认卡和测验,帮助学生复习和学习课程。评估和考核…