一、计算机网络概述,《计算机网络(自顶向下方法 第7版,James F.Kurose,Keith W.Ross)》

文章目录

    • @[toc]
    • 零、前言
    • 一、什么是Internet
      • 1.1 从具体构成角度
      • 1.2 什么是协议
      • 1.3 从服务角度
      • 1.4 网络结构
    • 二、网络边缘
      • 2.1 通讯模式
      • 2.2 采用网络设施的面向连接服务
      • 2.3 采用基础设施的无连接服务
    • 三、网络核心
      • 3.1 认识网络核心
      • 3.2 网络核心:电路交换
        • 3.2.1 基本原理
        • 3.2.2 实现方式
      • 3.3 网络核心:分组交换
        • 3.3.1 存储-转发
        • 3.3.2 排队延迟和丢失
        • 3.3.3 网络核心的关键功能
        • 3.3.4 统计多路复用
        • 3.3.5 分组交换 vs 电路交换
        • 3.3.6 分组交换的方式
    • 四、接入网和物理媒体
      • 4.1 接入网
        • 4.1.1 数字用户线(digital subscriber line,DSL)
        • 4.1.2 线缆网络
        • 3.4.3 住宅接入:电缆模式
        • 4.1.4 接入网:家庭网络
        • 4.1.5 企业接入网络(Ethernet)
        • 4.1.6 无线接入网络
      • 4.2 物理媒体
        • 4.2.1 同轴电缆、光纤
        • 4.2.2 无线链路
    • 五、Internet 结构 和 ISP
      • 5.1 互联网络结构:网络的网络
      • 5.2 ISP之间的连接
    • 六、分组延时、丢失和吞吐量
      • 6.1 四种传输延时
      • 6.2 节点延时
      • 6.3 排队延时和流量强度
      • 6.4 Internet 的延时和路由
      • 6.5 分组丢失
      • 6.6 吞吐量
    • 七、协议层次和服务模型
      • 7.1 协议层次
      • 7.2 现实生活中的例子
      • 7.3 服务和服务访问点
      • 7.4 服务的类型
      • 7.5 服务和协议
      • 7.6 数据单元(DU)
      • 7.7 分层处理和实现复杂系统的好处?
      • 7.8 Internet 协议栈
      • 7.9 ISO / OSI 参考模型
      • 7.10 封装和解封装
      • 7.11 各层次的协议数据单元
    • 八、历史
      • 8.1 早期(1960以前)计算机网络
      • 8.2 1961-1972:早期的分组交换概念
      • 8.3 1972-1980: 专用网络和网络互联
      • 8.4 1980-1990:体系结构变化,网络数量激增,应用丰富
      • 8.5 1990,2000's:商业化,Web,新的应用
      • 8.6 2005-现在
    • 九、小结

零、前言

本章作为概述,和大部分课程一样,主要目标为 了解基本术语和概念,基本原理。主要以Internet为例。


一、什么是Internet

1.1 从具体构成角度

Internet 是一个世界范围的计算机网络,互联了遍及全世界的数十亿计算设备,这些设备可以是传统桌面PC,Linux 工作站以及所谓的服务器,也可以是智能手机,家用电器,汽车等。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

这些设备我们将其看作节点

  • **主机(host)**以及运行在上面的应用程序

  • 主机也称为端系统(end system)
    - 端系统 通过 通信链路(communication link) 和 **分组交换机(packet switch)**连接。
    - 端系统 通过 **因特网服务提供商(Internet Service Provider,ISP)**接入因特网

通信链路由不同物理媒体组成,包括同轴电缆、铜线、光纤和无线电频谱。链路的 传输速率(transmission rate) 以**bps(bit / s)**描述。

  • 当一台端系统向另一台端系统发送数据时,发送端系统将数据分段,为每段加上首部字节,由此形成的信息称为 分组(packet)

分组交换机转发分组,即从一条 入通信链路 接收到达的分组,并从一条 出通信链路 转发该分组。

两种著名的类型是路由器(router)链路层交换机(link - layer switch)

  • 链路层交换机通常用于接入网,路由器通常用于网络核心
  • 从发送端到接收端系统,一个分组经历的一系列通信链路和分组交换机称为通过该网络的路径(route 或 path)

端系统、分组交换机和其他因特网部件都要运行一系列协议(protocol),由协议来控制信息的发送和接收。

  • 如**TCP(Transmission Control Protocol,传输控制协议) 和 IP(Internet Protocol,网络协议)**这两个在Internet中最为重要的协议,IP协议定义了路由器和端系统之间发送和接收的分组格式。Internet 的主要协议统称为 TCP/IP

1.2 什么是协议

1、人类协议类比

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 你好
  • 你好
  • “几点了?”
  • "2:00”

在人类协议中,有我们发送的特定报文,也有我们根据接收到的应答报文或其他事件(例如在某个给定的时间内没有回答)采取的动作。

如果人们使用不同的协议(比如-几点啦?-我吃过饭了。),这些协议就不能交互。

又如 课堂上老师滔滔不绝,你举起手(发送隐含报文),老师:请讲

你提出问题(向老师传输报文)

老师听取问题(接收报文)

老师回答(传输回答报文)

报文的发送和接收,以及这些报文发送和接收时所采取的一系列约定俗成的动作,是 上面这个”提问与回答“协议的关键所在。

2、网络协议

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

网络协议类似于人类协议,只不过交换报文和采取动作的实体是某些设备的硬件或组件

因特网中,涉及两个或多个远程通信实体的所有活动都受协议的制约

  • 例如,在两台物理上连接的计算机中,硬件实现的协议控制了在两块网络接口卡间的“线上”的比特流;在端系统中,拥塞控制协议控制了在发送方和接收方之间传输的分组发送的速率;路由器中的协议决定了分组从源到目的地的路径。

协议(Protocol)定义了在两个或多个通信实体之间交换的报文格式次序,以及在报文传输和/或接收或其它事件方面所采取的动作

1.3 从服务角度

使用通信设施进行通信的**分布式应用程序(distributed application)**是网络存在的理由

  • Web,VoIP,email,分布式游戏,电子商务,社交网络……

它们并不运行在网络核心中的分组交换机中,它们如何互相发送数据呢?

这使得我们从为应用程序提供服务的基础设施的角度来描述因特网,通信基础设施为apps提供编程接口(通信服务)

  • 将发送和接收数据的apps与互联网连接起来
  • 为app应用提供服务选择,类似于邮政服务:
    • 无连接不可靠服务
    • 面向连接的可靠服务

1.4 网络结构

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

互联网大致分为如下结构:

  • 网络边缘
    • 主机
    • 应用程序(客户端和服务器)
  • 网络核心
    • 互联着的路由器
    • 网络的网络
  • 接入网、物理媒体
    • 有线或者无线通信链路

主机上的应用是网络存在的理由,应用程序之间需要交换报文。

接入网和物理媒体将网络边缘接入到网络核心,由网络核心来实现端到端的数据交换,它实际上是由数百万的交换节点如路由器、交换机组成的一个分布式的系统,节点相互配合,完成了从源主机到目标主机的数据的发送和接收。

下面从外到内,介绍网络结构。

二、网络边缘

2.1 通讯模式

前面我们把与因特网相连的计算机和其他设备称为端系统。因为它们处于网络的边缘。

应用进程之间通信的模式大概有如下两种:

客户/服务器模式

  • 客户端向服务器请求、接收服务
  • 如Web浏览器/服务器;email/客户端/服务器

客户通常指桌面PC、移动PC和智能手机,而服务器通常是强大的机器,用于存储和发布Web页面、流视频、中继电子邮件等。

随着客户数量增加,服务器数目也增多,继而通信链路也要扩容。这样导致服务器负载很大,很容易崩溃。

亦即,客户端服务器模式的可扩展性太差。

对等(peer-peer)模式

  • 很少(甚至没有)专门的服务器
  • 如 Gnutella、KaZaA、Emule

在这种模式下,每个节点既是客户端,又是服务器。

比如一个节点A向节点B请求某个资源片段,B拥有一部分,此时B属于服务器,接着B向节点C请求剩下的部分,此时B又是客户端。

基础设施为端系统提供的通信方式又可分为如下两种:

  • 面向连接服务
  • 无连接服务

2.2 采用网络设施的面向连接服务

目标:在端系统之间传输数据。

  • 握手:在数据传输之前做好准备
    • 人类协议中:你好、你好
    • 两个通信主机之间为连接建立状态
  • TCP-传输控制协议(Transmission Control Protocol)
    • Internet 上面向连接的服务

TCP 服务

  • 可靠地、按顺序地传送数据
    • 确认和重传
  • 流量控制
    • 发送方不会淹没接收方
  • 拥塞控制
    • 当网络拥塞时,发送方降低发送频率

2.3 采用基础设施的无连接服务

目标:在端系统之间传输数据。

  • 无连接服务

  • UDP - 用户数据报协议(User Datagram Protocol)[RFC-768]

    • 无连接
    • 不可靠数据传输。发出去就不管了,丢了就丢了。
    • 无流量控制
    • 无拥塞控制

UDP虽然不可靠,但是传输速度快,在很多实时场景会应用。

三、网络核心

3.1 认识网络核心

网络核心:路由器的网状网络。

基本问题:数据怎样通过网络进行传输?

通过网络链路和交换机移动数据有两种基本方法:电路交换(circuitswitching)分组交换(packetswitehing)。

  • 电路交换:为每个呼叫预留一条专有电路,如电话网
  • 分组交换
    • 将要传送的数据分成一个个单位:分组
    • 将分组从一个路由器传到相邻路由器(hop),一段段最终从源端传到目标端
    • 每段:采用链路的最大传输能力(带宽)

3.2 网络核心:电路交换

3.2.1 基本原理

端到端的资源被分配给从源端到目标端的呼叫“call”;

  • 即预留了端系统间沿路径通信所需要的资源(缓存,链路传输速率)

  • 如上图,每段链路有4条线路
    • 该呼叫采用了上面链路的第2个线路,右边链路的第1个线路(piece)
  • 独享资源:不同享
    • 每个呼叫一旦建立起来就能够保证性能
  • 如果呼叫没有数据发送,被分配的资源就会浪费
  • 通常被传统电话网络采用

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

电路交换为呼叫段预留端-端资源

  • 链路带宽、交换能力
  • 专用资源:不共享
  • 优点:保证性能
  • 缺点:要求建立呼叫连接,有时通讯时间很短,那么建立连接的开销就显得过大了
3.2.2 实现方式

网络资源(如带宽)被分成(piece):

  • 为呼叫分配片
  • 如果某个呼叫没有数据,则其资源片处于空闲状态(不共享)

而划分片的方式有:

  • 频分(Frequency-division multiplexing)
  • 时分(Time-division multiplexing)
  • 波分(Wave-division multiplexing)
  • 码分(Code-division multiplexing)

一般来说,我们认为链路中的电路是通过多路复用技术来实现的。多路复用技术是利用一条链路同时传输多路信号的技术。

根据上面的划分片的方式,则有频分复用(Frequency-Division Multiplexing, FDM)时分复用(Time-Division Multiplexing, TDM)波分复用(Wave-division multiplexing),WDM码分复用(Code-division multiplexing),CDM

频分多路复用FDM

频分多路复用通过划分链路的带宽,将共享的链路分割成几个独立的通道。在连接期间链路为每条连接专用一个频段。

上图显示了频分多路复用划分频谱的原理。每个信道之间必须用狭长的频带(警戒频带)分割,以防止信号交叉。

时分多路复用TDM

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

时分多路复用通过划分时间为固定的帧,并且每个帧又被划分为固定数量的时隙。当网络跨越一条链路创建一条连接时,网络在每个帧中为该连接指定一个时隙。这些时隙专门由该连接单独使用,一个时隙(在每个帧内)可用于传输该连接的数据。

波分多路复用 WDM

波分复用是一种光纤通信技术,将输入的多路光信号调制到特定的频率上,然后将调制后的信号复用到一根光纤上,然后在接收端经过解复用将不同波长的光信号分离,通过不同的检测器将其解调转换成电信号输出。

不是重点,不多介绍。

码分多路复用 CDM

码分多路复用会在后续3G移动通讯涉及,这里略。

计算举例

在一个电路交换网络上,从主机A到主机B发送一个640’000比特的文件需要多长时间?

  • 所有的链路速率为 1.536 Mbps
  • 每条链路使用时隙数为 24 的TDM
  • 建立端-端的电路需 500 ms

由于是时隙数为 24 的TDM,所以在一个时间片内每条链路的速率为:1.536 Mbps / 24 = 64kbps

传输时间:640 kb / 64kbps = 10s

总时间:传输时间 + 建立时间 = 10.5 s

事实上这里忽略了传输延迟

电路交换不适合计算机之间的通信

  • 连接建立时间长
  • 计算机之间通信具有突发性,如果使用线路交换,则浪费的片比较多
    • 即使这个呼叫没有数据传递,其所占据的片也不能够被别的呼叫使用
  • 可靠性不高

3.3 网络核心:分组交换

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

分组交换以分组为单位,使用存储转发的方式。

  • 网络带宽资源不再分为一个个的片,传输时使用全部带宽
  • 主机之间传输的数据被分为一个个分组

资源共享,按需使用

  • 存储-转发:分组每次移动一跳(hop)
    • 在转发之前,节点必须收到整个分组
    • 延迟比电路交换要大,因为要等到接收完整个分组后才转发
    • 有排队时间,但是换取了共享性
3.3.1 存储-转发
  • 被传输到下一个链路之前,整个分组必须到达路由器:存储-转发
  • 在一个速率为R bps 的链路,一个长度为L bits 的分组的存储转发延时:L/R s

比如L = 7.5 Mbits,R = 1.5 Mbps,3次存储转发的延时 = 15s

3.3.2 排队延迟和丢失

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

每台分组交换机有多条链路与之相连。

对于每条相连的链路,分组交换机具有一个输出缓存(output buffer,也称为输出队列)

因而如果多个分组接连到达时,其它分组要等待正在传输的分组。

因此除了存储-转发时延外,分组还要承受输出缓存的排队时延(queuing delay)

但是缓存容量是有限的,当缓存已满,后续到达的分组就会被丢弃,我们称之为分组丢失(丢包)(Packet loss)

3.3.3 网络核心的关键功能

路由:决定分组采用的从源到目标的路径。

  • 路由算法

转发:将分组从路由器的输入链路转移到输出链路。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

3.3.4 统计多路复用

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

分组交换也可以看成是一种时分复用。

A 和 B 在时间上依次使用带宽资源。

这种分组没有固定的模式,我们称之为统计多路复用

3.3.5 分组交换 vs 电路交换

同样的网络资源,分组交换允许更多用户使用网络!

  • 1 Mb/s 链路

  • 每个用户

    • 活动时 100kb/s
    • 10% 的时间是活动的
  • 对于电路交换

    • 最多给10个用户服务
  • 分组交换

    • 35 用户时

    • >= 10 个用户活动的概率 = 0.0004

分组交换是“突发数据的胜利者”

  • 适合于对突发式数据传输
    • 资源共享
    • 简单、不必建立呼叫
  • 过度使用会造成网络拥塞:分组延时和丢失
    • 对可靠地数据传输需要协议来约束:拥塞控制
  • 怎样提供类似电路交换的服务?(来保证带宽)
    • 保证音频/视频应用需要的带宽
    • 一个仍未解决的问题(chapter 7)
3.3.6 分组交换的方式

分组交换:分组的存储转发一段一段从源端传到目标端,按照有无网络层的连接,分成:

  1. 数据报网络
    • 分组的目标地址决定下一跳
    • 在不同的阶段,路由可以改变
    • 类似:问路
    • Internet
  2. 虚电路网络
    • 每个分组都带标签(虚电路标识VCID),标签决定下一跳
    • 呼叫建立时决定路径,在整个呼叫中路径保持不变
    • 在路由维持每个呼叫的状态信息
    • X.25 和 ATM

数据报(datagram)工作原理

  • 在通信之前,无须建立起一个连接,有数据就传输
  • 每一个分组都独立路由(路径不一样,可能会失序)
  • 路由器根据分组的目标地址进行路由

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

虚电路(virtual circuit)工作原理

每次到达交换节点,都通过查表来决定下一跳

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

四、接入网和物理媒体

4.1 接入网

接入网:将端系统物理连接到其**边缘路由器(edge router)**上的网络。

大致有下面几种:

  • 住宅接入网络
  • 单位接入网络(学校、公司)
  • 无线接入网络

需要关注的指标

  • 接入网络的带宽(bits per second)
  • 共享/专用?

住宅接入:modem

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

modem:调制解调器。(modulate & demodulate)

将上网数据调制加载音频信号上,在电话线上传输,在局端将其中的数据解调出来;反之亦然

  • 调频
  • 调幅
  • 调相位
  • 综合调制

拨号调制解调器

  • 56Kbps 的速率直接接入路由器(通常更低)
  • 不能同时上网和打电话,不能总是在线
4.1.1 数字用户线(digital subscriber line,DSL)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 采用现存的到交换局DSLAM的电话线
    • DSL线路上的数据被传到互联网
    • DSL线路上的语音被传到电话网
  • < 2.5 Mbps上行传输速率(typically < 1 Mbps)
  • < 24 Mbps下行传输速率(typically < 10 Mbps)
4.1.2 线缆网络

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

有线电视信号线缆双向改造

FDM:在不同频段传输不同信道的数据,数字电视和上网数据(上下行)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

HFC:混合同轴电缆,hybrid fiber coax

  • 应用了光纤和同轴电缆
  • 非对称:最高30Mbps的下行传输速率,2 Mbps 上行传输速率

线缆和光纤网络将各个家庭用户接入到 ISP 和 路由器

各用户共享到线缆头端的接入网络

  • 与DSL不同,DSL每个用户一个专用线路到CO(central office)
3.4.3 住宅接入:电缆模式

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

住宅从有线电视公司获得了电缆因特网接入。光缆将电缆头连接到地区枢纽,从这里使用传统的同轴电缆到达各家各户。

4.1.4 接入网:家庭网络

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

家庭将宽带住宅接入 DSL 或 线缆 的调制解调器 和 廉价的无线局域网技术结合,产生强大的家庭网络。

4.1.5 企业接入网络(Ethernet)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 经常被企业或者大学等机构采用
    • 10Mbps,100Mbps,1Gbps,10Gbps传输率
    • 现在,端系统经常直接接到以太网络交换机上
4.1.6 无线接入网络
  • 各无线端系统共享无线接入网络(端系统到无线路由器)
    • 通过基站或者叫接入点

WLANs(wireless local area net):

  • 建筑物内部(100 ft)
  • 802.11 b/g(WiFi):11,54 Mbps 传输速率
  • 外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

广域无线接入

  • 由电信运营商提供
  • 1 到 10 Mbps
  • 3G,4G:LTE(Long-Term-Evolution,长期演进)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

4.2 物理媒体

Bit:在发送-接收对间传播

物理链路:连接每个发送-接收对之间的物理媒体

导引型媒体:信号沿着固体媒介被导引,同轴电缆、光纤、双绞线

非导引型媒体:开放的空间传输电磁波或者光信号,在电磁或者光信号中承载数字数据

双绞线(TP):两根绝缘铜导线拧和

  • 5类:100Mbps 以太网,Gbps 千兆位以太网
  • 6类:10Gbps 万兆以太网
4.2.1 同轴电缆、光纤

同轴电缆

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 两根同轴的铜导线
  • 双向
  • 基带电缆
    • 电缆上一个单个信道
    • Ethernet
  • 宽带线缆
    • 电缆上有多个信道
    • HFC

光纤和光缆

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 光脉冲,每个脉冲表示一个bit,在玻璃纤维中传输
  • 高速:
    • 点到点的高速传输(如10 Gps-100 Gps传输速率)
  • 低误码率:在两个中继器之间可以由很长的距离,不受电磁噪声的干扰
  • 安全
4.2.2 无线链路
  • 开放空间传输电磁波,携带要传输的数据
  • 无需物理“线缆”
  • 双向
  • 传播环境效应
    • 反射
    • 吸收
    • 干扰

无线链路类型:

  • 地面微波

  • LAN(e.g. WiFi)

  • wide-area(e.g. 蜂窝)

    • 3G
    • 4G
    • 5G
  • 卫星

    • 每个信道Kbps 到45Mbps(或者多个聚集信道)
    • 270 msec端到端延迟
    • 同步静止卫星和低轨卫星

五、Internet 结构 和 ISP

5.1 互联网络结构:网络的网络

  • 端系统通过**接入ISPs(Internet Service Providers)**连接到互联网
    • 住宅、公司和大学的ISPs
  • 接入ISPs相应的必须是互联的
    • 因此任意2个端系统可相互发送分组到对方
  • 导致“网络的网络”非常复杂
    • 发展和演化是通过经济的国家的政策来驱动的

问题:给定数百万接入ISPs,如何将它们互联到一起

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

暴力构造完全图:可扩展性太差,而且成本也高

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一个选项:将每个接入ISP都连接到全局ISP(全局范围内覆盖)?

客户ISPs提供者ISPs有经济合约

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

竞争:但如果全局ISP是有利可为的业务,那会有竞争者

合作:通过ISP之间的合作可以完成业务的扩展,肯定会有互联,对等互联的结算关系

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

…然后业务会细分(全球接入和区域接入),区域网络将出现,用与将接入ISPs连接到全局ISPS

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

然后内容提供商网络(Internet Content Providers, e.g.Google,Microsoft,Akamai) 可能会构建它们自己的网络,将它们的服务、内容更加靠近端用户,向用户提供更好的服务,减少自己的运营支出

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

在网络的最中心,一些为数不多的充分连接的大范围网络(分布广、节点有限、但是之间有着多重连接)

  • “tier-1” commercial ISPs(e.g.,Level 3,Sprint,AT&T,NTT),国家或者国际范围的覆盖

  • content provider network(e.g. Google):将它们的数据中心接入ISP,方便周边用户的访问:通常私有网络之间用专网绕过第一层ISP和区域ISPs

  • 上面是一个松散的层次模型

  • 中心:第一层ISP(如UUNet,BBN/Genuity,Sprint,AT&T)国家/国际覆盖,速率极高

    • 直接与其它第一层ISP相连
    • 与大量的第二层ISP和其它客户网络相连

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

第二层ISP:更小些的(通常是区域性的)ISP

  • 与一个或多个第一层ISPs,也可能与其他第二层ISP(P2P)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

第三层ISP与其它本地ISP

  • 接入网(与端系统最近)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

一个分组要经过许多网络。

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 很多内容提供商(如:Google,Akamai)可能会部署自己的网络,连接自己的在各地的DC(数据中心),走自己的数据
  • 连接若干local ISP和各级(包括一层)ISP,更加靠近用户
  • 经济考虑:少付费
  • 用户考虑:更快

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

5.2 ISP之间的连接

再看下面这张结构图

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • POP:高层ISP面向客户网络的接入点,涉及费用结算
    • 如一个低层ISP接入多个高层ISP,多宿(multi home)
  • 对等接入:2个ISP对等互接,不涉及费用结算
  • IXP:多个对等ISP互联互通之处,通常不涉及费用结算
    • 对等接入
  • ICP自己部署专用网络,同时和各级ISP连接

六、分组延时、丢失和吞吐量

分组丢失和延时是怎样发生的?

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

  • 分组到达链路的速率超过了链路输出的能力
  • 分组等待到达队头、被传输

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6.1 四种传输延时

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

1、节点处理延时

  • 检查分组首部和决定将该分组导向何处所需要的时间。
  • 检查 bit 级别差错所需要的时间

2、排队延时

  • 在输出链路上等待传输的时间
  • 依赖于路由器的拥塞程度

3、传输延时

  • R = 链路带宽(bps)
  • L = 分组长度(bits)
  • 将分组发送到链路上的时间(将分组的所有 bit 推向链路所需时间):L / R
  • 存储转发延时

4、传播延时

一旦一个比特被推向链路,该比特需要向路由器B传播。

从该链路的起点到路由器B传播所需要的时间传播时延

  • d = 物理链路的长度
  • s = 在媒体上的传播速度( 2 × 1 0 8 m / s e c ~2\times 10^8 m/sec  2×108m/sec)
  • 传输延时 = d / s

我们可以用车队来类比:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 汽车以 100km/hr 的速度传播
  • 收费站服务每辆车需12s(传输时间)
  • 汽车 ~ bit ;车队 ~ 分组

Q: 在车队在第二个收费站排列好之前需要多长时间?

即:从车队的第一辆车到达第一个收费站开始计时,到这个车队的最后一辆车离开第二个收费站,共需要多少时间?

将车队全部打上高速:12 * 10 = 120s

最后一辆车从第一个收费站到第二个收费站:100 / 100 = 1hr

则共需 62 min

现在修改下参数:

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 汽车以 1000km/hr 的速度传播汽车
  • 收费站服务每辆车需 1分钟

Q: 在所有的汽车被第一个收费站服务之前,汽车会到达第二个收费站吗?

会,7 min 后第一辆车到达第二个收费站

在整个分组被第一个路由器传输之前,第一个比特已经到达了第二个路由器!

6.2 节点延时

d n o d a l = d p r o c + d q u e u e + d t r a n s + d p r o p d_{nodal} = d_{proc} + d_{queue} + d_{trans} + d_{prop} dnodal=dproc+dqueue+dtrans+dprop

  • d p r o c d_{proc} dproc = 处理延时
    • 通常是微秒数量级或者更少
  • d q u e u e d_{queue} dqueue = 排队延时
    • 取决于拥塞程度
  • d t r a n s d_{trans} dtrans = 传输延时
    • = L / R,对低速率的链路而言很大(如拨号),通常为微秒级到毫秒级
  • d p r o p d_{prop} dprop = 传播延时
    • 几毫秒到几百毫秒

6.3 排队延时和流量强度

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • R = 链路带宽(bps)
  • L = 分组长度(bits)
  • a = 分组到达队列的平均速率

流量强度 = La / R

  • La / R ~ 0,平均排队延时很小
  • La / R -> 1,延时变得很大
  • La / R > 1,比特到达队列的速率超过了从该队列输出的速率,平均排队延时将趋向无穷大

对于 La / R 趋于 1 为何延时变得很大,需要了解排队论的知识,个人理解 在一条流量强度为1的公路上,如果某些事件引起一个即便是稍微大于平常量的流量,经受的时延就可能很大。

6.4 Internet 的延时和路由

Internet 的 延时和路由是怎样的呢?

Traceroute 诊断程序:提供从源端,经过路由器,到目的地延时测量。

  • 沿着目的地的路径,向每个路由器发送3个探测组
  • 路由器 i 将向发送方返回一个分组
  • 发送方对发送和回复之间间隔计时

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

大黑书上给了从 源主机 gaia.cs.umass.edu 到 cis.poly.edu 的Traceroute 程序输出的例子(Traceroute 向目的地发送了3 × N 个分组):

第一列是 n,即第 n 台路由器 接收 第 n 个分组时,向源返回的报文。

第二列时路由器名称

第三列为路由器地址

最后三列是 3次实验的往返时延

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6.5 分组丢失

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

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

6.6 吞吐量

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

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

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

上图显示了服务器和客户两个端系统,考虑从服务器传送一个文件的吞吐量

Rs 表示服务器和路由器之间的链路速率

Rc 表示路由器和客户之间的链路速率

显然 服务器不能以快于 Rs bps 的速率通过其链路注入比特

客户也不能以快于 Rc bps 的速率转发比特

因而对于这种两链路网络,其吞吐量为 min {Rs, Rc}

也就是说,它是瓶颈链路的传输速率。

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

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

再看一个互联网场景

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

此时链路上每一段的实际可用带宽?

每个连接上的端到端吞吐:

min {Rc, Rs, R / 10}

实际上:Rc 或者 Rs 经常是瓶颈。

七、协议层次和服务模型

7.1 协议层次

网络是一个复杂的系统。

  • 网路功能繁杂:数字信号的物理信号承载、点到点、路由、rdt、进程区分、应用等。
  • 现实来看,网络的许多构成元素和设备:
    • 主机
    • 路由器
    • 各种媒体的链路
    • 应用
    • 协议
    • 硬件、软件

问题是:如何组织和实现这个复杂的网络功能?

7.2 现实生活中的例子

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

我们现实中是如何描述航线系统这个复杂的系统的?

将航线功能划分为一些层次,如上图

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

层次化方式实现复杂网络功能

  • 将网络复杂的功能分成功能明确的层次,每一层实现了其中一个或者一组功能,功能中有其上层可以使用的功能:服务
  • 本层协议实体相互交互执行本层的协议动作,目的是实现本层功能,通过接口为上层提供更好的服务
  • 在实现本层协议的时候,直接利用了下层提供的服务
  • 本层的服务:借助下层服务实现的本层协议实体之间交互带来的新功能(上层可以利用的) + 更下层所提供的服务

7.3 服务和服务访问点

  • 服务(Service):低层实体向上层实体提供他们之间通信的能力:
    • 服务用户(service user)
    • 服务提供者(service provider)
  • **原语(primitive):**上层使用下层服务的形式,高层使用底层提供的服务,以及低层向高层提供服务都是通过服务访问原语来进行交互的——形式
  • 服务访问点 SAP(Services Access Point):上层使用下层提供的服务通过层间的接口——地点
    • 例子:邮箱
    • 地址(address):下层的一个实体支撑着上层的多个实体,SAP有标志不同上层实体的作用
    • 可以有不同的实现,队列
    • 例子:传输层的SAP:端口(port)

7.4 服务的类型

  • 面向连接的服务和无连接的服务——方式
    • 面向连接的服务(Connection-oriented Service)
      • 连接(Connection):两个通信实体为进行通信而建立的一种结合
      • 面向连接的服务通信的过程:建立连接、通信、拆除连接
      • 面向连接的服务例子:网络层的连接被连成虚电路
      • 适用范围:对于大的数据块要传输;不适合小的零星报文
      • 特点:保序
      • 服务类型:
        • 可靠的信息流 传送页面(可靠的获得,通过接收方的确认)
        • 可靠的字节流 远程登陆
        • 不可靠的连接 数字化声音
  • 无连接的服务(Connectionless Service)
    • 无连接服务:两个对等层实体在通信前不需要建立一个连接,不预留资源;不需要通信双方都是活跃(例:寄信)
    • 特点:不可靠、可能重复、可能失序
    • IP分组,数据包
    • 适用范围:适合传送零星数据
    • 服务类型:
      • 不可靠的数据报 电子方式的函件
      • 有确认的数据报 挂号信
      • 请求回答 信息查询

7.5 服务和协议

  • 服务和协议的区别
    • 服务(Service):低层实体向上层提供它们之间的通信能力,是通过原语(Primitive)来操作的,垂直
    • 协议(Protocol):对等层实体(peer entity)之间在相互通信的过程中,需要遵循的规则的集合,水平
  • 服务与协议的联系
    • 本层协议的实现要靠下层提供的服务来实现
    • 本层实体通过协议为上层提供更高级的服务

7.6 数据单元(DU)

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 第 n 层 通过SAP 向上层提供服务
  • 第n + 1 层 要向第 n 层 传输的数据称为 SDU(Service Data Unit)
  • 传输的时候需要一些控制信息,称为 ICI(Interface Data Unit)
  • 对于第 n 层而言,上层的 SDU 通过 层间接口SAP 加上本层的 头部(Header)就形成了本层的 PDU(Protocol Data Unit)
  • 第 n 层的PDU 再往下又作为 SDU 下传

SDU 向下的传输一般为三种关系:

  • 1对多的关系:上层发送的SDU 太大了,需要分解成分组大小:n-PDU
  • 多对1的关系:上层发送了多个非常小的SDU,下层需要将小单元合成一个分组
  • 1对1的关系:上层发送了一个数据单元,没有超出分组大小

我们自顶向下的看,每层都有自己的SDU:

  • 应用层:应用报文
  • 传输层:报文段
  • 网络层:分组(如果是无连接:数据报)
  • 链路层:帧(frame)
  • 物理层:比较含糊,可以称为 位 等等

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

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

对付复杂的系统

  • 概念化:结构清晰,便于标示网络组件,以及描述相互关系
    • 分层参考模型
  • 结构化:模块化更易于维护和系统升级
    • 改变某一层服务的实现不影响系统的其他层次
      • 对于其他层次而言是透明的
    • 如改变登机程序并不影响系统的其它部分
      • 改变2个秘书使用的通信方式不影响2个翻译的工作
      • 改变2个翻译使用的语言也不影响上下2个层次的工作

分层思想有害的地方:分层与模块化导致效率比较低。(但是好处是远大于坏处的)

7.8 Internet 协议栈

  • 应用层:网络应用
    • 为人类用户或者其它应用进程提供网络应用服务
    • FTP, SMTP, HTTP, DNS
  • 传输层:主机之间的数据传输
    • 在网络层提供的端到端通信基础上,细分为进程到进程,将不可靠的通信变成可靠的通信
    • TCP, UDP
  • 网络层:为数据报从源到目的选择路由
    • 主机与主机之间的通信,端到端通信,不可靠
    • IP,路由协议
  • 链路层:相邻网络节点间的数据传输
    • 2个相邻2点的通信,点到点通信,可靠或不可靠
    • 点对对协议PPP,802.11(wifi),Ethernet
  • 物理层:在线路上传送bit

7.9 ISO / OSI 参考模型

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

  • 表示层允许应用解释传输的数据,e.g.,加密,压缩,机器相关的表示转换
  • 会话层:数据交换的同步,检查点,恢复
  • 互联网协议栈没有这两层!
    • 这些服务如果需要的话,由应用程序自己做‘

7.10 封装和解封装

下面这张图非常直观地解释了封装和解封装的过程

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

7.11 各层次的协议数据单元

  1. 应用层:报文(message)
  2. 传输层:报文段(segment):TCP段,UDP数据报
  3. 网络层:分组packet(如果无连接方式:数据报datagram)
  4. 数据链路层:帧(frame)
  5. 物理层:位(bit)

八、历史

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

8.1 早期(1960以前)计算机网络

  • 线路交换网络
  • 线路交换的特性使得其不适合计算机之间的通信
    • 线路建立时间过长
    • 独享方式占用通信资源,不适合突发性很强的计算机之间的通信
    • 可靠性不高:非常不适合军事通信
  • 三个小组独立地开展分组交换的研究
    • 1961: Kleinrock(MIT),排队论,展现了分组交换的有效性
    • 1964: Baran(美国兰德公司)——军用网络上的分组交换
    • 1964: Donald(英国)等,NPL

8.2 1961-1972:早期的分组交换概念

  • 1967: 美国高级研究计划研究局考虑ARPAnet
    • Kleinrock在MIT的同事
  • 1969: 第一个 ARPAnet节点开始工作, UCLA
    • IMP: 接口报文处理机
  • 1969年底: 4个节点
  • 1972
    • ARPAnet 公众演示
    • 网络控制协议是第一个端系统直接的主机-主机协议
      • NCP协议: 相当于传输层和网络层在一起,支持应用开发
    • 第一个e-mail 程序(BBN)
    • ARPAnet有15个节点

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

8.3 1972-1980: 专用网络和网络互联

  • 出现了很多对以后来说重要的网络形式,雨后春笋
    • 1970: ALOHAnet,夏威夷上的微波网络
    • 1973: Metcalfe在博士论文中提出了Ethernet
    • ATM网络
    • ALOHAnet,Telenet,Cyclades法国等
  • 1970后期,网络体系结构的必要性
    • 专用的体系结构: DECnet,SNA,XNA
    • 标准化的体系结构
  • 1974: 网际互联的Cerf and Kahn 体系结构
  • 1979: ARPAnet的规模在持续增加,体系结构也在酝酿着变化,以支持网络互联和其他目的(性能)需求
    • 节点数目增加,有200个节点

Cerf and Kahn 网络互联原则:

  • 极简、自治
  • 尽力而为(best effort)服务模型
  • 无状态的路由器
  • 分布控制

定义了今天的Internet体系结构

8.4 1980-1990:体系结构变化,网络数量激增,应用丰富

  • 1983: TCP/IP部署,标记日

    • NCP分化成2个层次,TCP/IP,从而出现UDP
    • 覆盖式IP解决网络互联问题
    • 主机设备和网络交换设备分开
  • 1982: smtp e-mail协议定义

  • 1983: DNS 定义,完成域名到IP地址的转换

  • 1985: ftp 协议定义

  • 1988: TCP拥塞控制

  • 其他网络形式的发展

    • 新的国家级网络: Csnet,BITnet, NSFnet, Minitel
    • 1985年: ISO / OSI提出,时机不对且太繁琐,
  • 100,000 主机连接到网络联邦

8.5 1990,2000’s:商业化,Web,新的应用

  • 1990年代初: NSF对ARPAnet 的访问网,双主干,ARPAnet退役
  • 1991: NSF放宽了对NSFnet用于商业目的的限制(1995退役),ASFNET非盈利性机构维护,后面叫Internet
  • UNIX 中TCP/IP的 免费捆绑
  • 1990年代初: Web
  • hypertext [Bush 1945, Nelson1960’s]
    HTML,HTTP: Berners-Lee
  • 1994: Mosaic (Netscape,andreesen)
  • 1990年代后期: Web的商业化

1990后期-21世纪

  • TCP/TP体系结构的包容性,在其上部署应用便捷,出现非常多的应用
  • 新一代杀手级应用(即时讯息,P2P文件共享,社交网络等更进一步促进互联网的发
  • 安全问题不断出现和修订(互联网的补丁对策)
  • 2001网络泡沫,使得一些好公司沉淀下来(谷歌,微软,苹果,yahoo,思科)
  • 主干网的速率达到Gbps

8.6 2005-现在

  • ~50+亿主机:包括智能手机和平板
  • 宽带接入的快速部署
  • 高速无线接入无处不在:移动互联时代
    • 4G部署, 5G蓄势待发
    • 带宽大,终端性能高,价格便宜,应用不断增多
  • 在线社交网络等新型应用的出现:
    • Facebook: 10亿用户
    • 微信,qq: 数十亿用户
  • 内容提供商(Google,Microsoft)创建他们自己的网络
    • 通过自己的专用网络提供对搜索、视频内容和电子邮件的即刻访问
  • 电子商务,大学,企业在云中运行他们的服务(eg, Amazon EC2)
  • 体系结构酝酿着大的变化,未来网络蠢蠢欲动

九、小结

  • 组成角度看 什么是互联网
    • 边缘:端系统(包括应用)+ 接入网
    • 核心:网络交换设备 + 通信链路
    • 协议:对等层实体通信过程中遵守的规则的集合
      • 语法、语义、时序
  • 为了实现复杂的网络功能,采用分层方式设计、实现和调试
    • 应用层,传输层,网络层,数据链路层,物理层
    • 协议数据单位:
      • 报文、报文段、分组、帧、位
  • 从服务角度看互联网
    • 通信服务基础设施
      • 提供的通信服务:面向连接 无连接
    • 应用
  • 应用之间的交互
    • Clent-Server 模式
    • P2P模式
  • 数据交换
    • 分组数据交换
    • 线路交换
  • 比较线路交换和分组交换
  • 分组交换的2种方式
    • 虚电路
    • 数据报
  • 接入网和物理媒介
    • 接入网技术:
      • 住宅:ADSL,拨号,cable modem
      • 单位:以太网
      • 无线接入方式
    • 物理媒介
      • 光纤,同轴电缆,以太网,双绞线
  • ISP层次结构
  • 分组交换网络中延迟和丢失是如何发生的
    • 延迟的组成:处理、传输、传播、排队
  • 网络的分层体系结构
    • 分层体系结构
    • 服务
    • 协议数据单元
    • 封装与解封装
  • 历史

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

闯关leetcode——234. Palindrome Linked List

大纲 题目地址内容 解题代码地址 题目 地址 https://leetcode.com/problems/palindrome-linked-list/description/ 内容 Given the head of a singly linked list, return true if it is a palindrome or false otherwise. Example 1: Input: head [1,2,2,1] Output: tru…

K8S自建企业私有云方案 单台起配 NVMe全闪存储性能

作为老牌存储硬件厂商&#xff0c;Infortrend这回开了一把大的。在一套设备系统里&#xff0c;将计算节点、存储与Kubernetes结合&#xff0c;打造出EonStor KS IEC&#xff08;Infortrend企业云&#xff09;&#xff0c;将硬件与软件、前端与后端、上层与底层统一融合在一套系…

Rust 力扣 - 73. 矩阵置零

文章目录 题目描述题解思路题解代码题目链接 题目描述 题解思路 我们使用两个变量记录矩阵初始状态的第一行与第一列是否存在0 然后我们遍历矩阵&#xff08;跳过第一行与第一列&#xff09;&#xff0c;如果矩阵中元素为0则将该元素映射到矩阵第一行与矩阵第一列的位置置为0…

6款IntelliJ IDEA插件,让Spring和Java开发如虎添翼

文章目录 1、SonarLint2、JRebel for IntelliJ3、SwaggerHub插件4、Lombok插件5、RestfulTool插件6、 Json2Pojo插件7、结论 对于任何Spring Boot开发者来说&#xff0c;两个首要的目标是最大限度地提高工作效率和确保高质量代码。IntelliJ IDEA 是目前最广泛使用的集成开发环境…

Node.js:ES6 模块化 Promise

Node.js&#xff1a;ES6 模块化 & Promise ES6 模块化默认导入导出按需导入导出 Promise构造状态thencacheallraceasyncawait ES6 模块化 在Node.js中&#xff0c;遵循的是CommonJS的模块化规范&#xff0c;使用require方法导入模块&#xff0c;使用moudule.exports导出模…

利用STM32控制3D打印机时优化打印精度的教学

引言 在3D打印的过程中&#xff0c;打印精度直接影响到最终产品的质量与性能。STM32作为一种强大的微控制器&#xff0c;广泛应用于3D打印机的控制系统中。本文将介绍如何利用STM32控制3D打印机&#xff0c;并提供优化打印精度的具体方法&#xff0c;包括环境准备、代码示例、常…

基于 MATLAB的混沌序列图像加密算法的研究

一、设计目的及意义 3 二、研究现状 3 三、设计内容 3 四、开发环境 3 五、分析设计 3 1、设计要求 3 2、设计原理 3 3、涉及到的程序代码 ........................................... 4 4、主要思想 6 六、 果及分析 6 1、运行示例 6 2、 果 估 8 七、参考文献 9 八 、 研 究…

了解密钥推导函数KDF-HMAC-SHA-256

引言 在现代密码学中&#xff0c;密钥推导函数&#xff08;KDF&#xff0c;Key Derivation Functions&#xff09;扮演着至关重要的角色。它们允许从主密钥或密码生成一个或多个固定长度的密钥&#xff0c;用于各种加密操作。KDF的设计目标是确保从同一主密钥生成的多个密钥在统…

什么是数字签名技术?

信息安全五要素 名称说明机密性机密性是指网络信息不泄露给非授权的用户、实体或程序&#xff0c;能够防止非授权者获取信息完整性完整性是指网络信息或系统未经授权不能进行更改的特性可用性可用性是指合法许可的用户能够及时获取网络信息或服务的特性可控性可控性是指可以控…

clickhouse运维篇(三):生产环境一键生成配置并快速部署ck集群

前提条件&#xff1a;先了解集群搭建流程是什么样&#xff0c;需要改哪些配置&#xff0c;有哪些环境&#xff0c;这个文章目的是简化部署。 clickhouse运维篇&#xff08;一&#xff09;&#xff1a;docker-compose 快速部署clickhouse集群 clickhouse运维篇&#xff08;二&am…

Hms?: 1渗透测试

靶机&#xff1a;Hms?: 1 Hms?: 1 ~ VulnHub 攻击机&#xff1a;kail linux 2024 主机扫描阶段发现不了靶机&#xff0c;所以需要按DriftingBlues2一样手动配置网卡 1,将两台虚拟机网络连接都改为NAT模式&#xff0c;并查看靶机的MAC地址 2&#xff0c;攻击机上做主机扫描发现…

论文阅读- --DeepI2P:通过深度分类进行图像到点云配准

目前存在的问题&#xff1a; 单模态配准具有局限性&#xff0c;多模态研究很少跨模态图像到点云配准问题是求解相机坐标系与点云之间的旋转矩阵R ∈ SO(3)和平移向量t ∈ R3。 这个问题很困难&#xff0c;因为由于缺乏点到像素的对应关系&#xff0c;无法使用 ICP、PnP 和捆绑调…

R语言贝叶斯分层、层次(Hierarchical Bayesian)模型房价数据空间分析

原文链接&#xff1a;https://tecdat.cn/?p38077 本文主要探讨了贝叶斯分层模型在分析区域数据方面的应用&#xff0c;以房价数据为例&#xff0c;详细阐述了如何帮助客户利用R进行模型拟合、分析及结果解读&#xff0c;展示了该方法在处理空间相关数据时的灵活性和有效性。&a…

警务辅助人员管理系统小程序ssm+论文源码调试讲解

2系统关键技术 2.1 微信小程序 微信小程序&#xff0c;简称小程序&#xff0c;英文名Mini Program&#xff0c;是一种全新的连接用户与服务的方式&#xff0c;可以快速访问、快速传播&#xff0c;并具有良好的使用体验。 小程序的主要开发语言是JavaScript&#xff0c;它与普…

Webserver(2.7)内存映射

目录 内存映射内存映射相关系统调用内存映射的注意事项如果对mmap的返回值(ptr)做操作&#xff0c;释放内存&#xff08;munmap&#xff09;是否能够成功&#xff1f;如果open时O_RDONLY&#xff0c;mmap时prot参数指定PROT_READ | PROT_WRITE会怎样&#xff1f;如果文件偏移量…

c++多线程处理数据

c查询可以调动的线程个数 #include <iostream> #include <thread>int main() {// 查询可调动线程数量std::thread::hardware_concurrency();// 如果函数返回0&#xff0c;表示不支持并发&#xff0c;或者无法确定// 如果返回非0值&#xff0c;表示可以同时激活的线…

51c大模型~合集10

我自己的原文哦~ https://blog.51cto.com/whaosoft/11547799 #Llama 3.1 美国太平洋时间 7 月 23 日&#xff0c;Meta 公司发布了其最新的 AI 模型 Llama 3.1&#xff0c;这是一个里程碑时刻。Llama 3.1 的发布让我们看到了开源 LLM 有与闭源 LLM 一较高下的能力。 Meta 表…

实习冲刺Day12

算法题 爬楼梯 70. 爬楼梯 - 力扣&#xff08;LeetCode&#xff09; 递推写法 class Solution { public:int climbStairs(int n) {int num[50];//开辟一个数组num[1]1,num[2]2;for(int i3;i<n;i){num[i]num[i-1]num[i-2];}return num[n];} }; 递归写法 class Solution…

开源免费的API网关介绍与选型

api网关的主要作用 API网关在现代微服务架构中扮演着至关重要的角色&#xff0c;它作为内外部系统通信的桥梁&#xff0c;不仅简化了服务调用过程&#xff0c;还增强了系统的安全性与可管理性。例如&#xff0c;当企业希望将内部的服务开放给外部合作伙伴使用时&#xff0c;直…

头歌——数据库系统原理(数据的简单查询)

文章目录 第1关&#xff1a;基本 SELECT 查询代码 第2关&#xff1a;带限制条件的查询和表达式查询代码 第3关&#xff1a;使用 WHERE 语句进行检索代码 第1关&#xff1a;基本 SELECT 查询 相关知识 为了完成本关任务&#xff0c;你需要掌握&#xff1a; 如何获取数据表中指…