计算机网络笔记(湖科大教书匠版本)

news2024/11/19 2:32:02

目录

第一章、

①三种交换方式

②计算机网络的定义和分类

③计算机网络的性能指标

1.速率

2.带宽

3.吞吐量

4.时延

5.时延带宽积

6.往返时间

7.利用率

8.丢包率

④常见的三种计算机网络体系结构​编辑

⑤计算机网络体系结构分层的必要性​编辑

第二章、物理层

①物理层定义接口特性

②物理层下面的传输媒体

③传输方式

④编码与调制

⑤信道的极限容量

奈氏准则、香农公式

第三章、数据链路层

①数据链路层概述

②封装成帧

③差错检测

④可靠传输

1.停止-等待协议SW:

2.回退N帧协议GBN

3.选择重传协议SR

3.5  点对点协议PPP

3.6  媒体接入控制

频分复用:  频分多址FDMA​编辑

时分复用:   时分多址TDMA

码分复用CDM:码分多址CDMA

随机接入:总线局域网使用的协议:CSMA/CD协议

随机接入:无线局域网使用的协议:CSMA/CA协议

3.7MAC地址、IP地址、以及ARP协议

MAC地址相关知识

IP地址相关知识

ARP地址解析协议相关知识(Address Resolution Protocol)

ARP工作原理

3.8集线器和交换机的区别

3.9以太网交换机自学习和转发帧的流程

3.10以太网交换机的生成树协议STP

3.11.1虚拟局域网VLAN

第四章、网络层

4.3.1   IPV4地址

分类编址的IPV4地址

  划分子网的IPV4地址

子网掩码

无分类编址的IPV4地址

中继器、集线器、网桥、交换机、路由器

4.6.2路由信息协议RIP的基本工作原理

4.6.3开放最短路径优先OSPF

OSPF与RIP的区别

第五章  传输层

5.3  UDP和TCP对比

5.4  TCP的流量控制

5.5  TCP的拥塞控制

5.8.1 TCP的连接建立

第六章   应用层                 

6.4  域名系统DNS                                           

6.5文件传送协议FTP

6.6 电子邮件


第一章、

①三种交换方式

电路交换分组交换报文交换被分组交换所取代

1.电路交换:会一直占用通道,不适合计算机之间的数据通信

2.分组交换:通常我们把表示该数据的整块数据称为一个报文

  • 先把较长的报文划分为一个个更小的等长数据段
  • 在每个数据段前面,加上一些由必要的控制信息组成的首部后,就构成了一个个分组
    • 添加首部的作用:存放目的地址
  • 发送主机将所构造出各分组依次发送出去,这些分组,经过途中各分组交换机(也就是路由器)的存储转发,最终达到目的地主机
  • 目的地主机接收到这些分组后,去掉首部,将各数据段组合还原出原始报文

②计算机网络的定义和分类

1.计算机网络最简单的定义:一些互相连接的、自治的计算机的集合

  • 互联:指计算机之间可以通过有线或无线的方式进行数据通信
  • 自治:指独立的计算机,它有自己的硬件和软件,可以单独运行使用
  • 集合:指至少需要两台计算机

2.分类

  • 按照交换技术分类:电路交换网络、报文交换网络、分组交换网络
  • 按照使用者分类:公用网、专用网(某些特殊单位会有,不给单位外的人使用)
  • 按照传输介质分类:有线网络、无线网络(目前,无线局域网使用的WiFi技术,应用普遍)
  • 按照网络的覆盖范围分类:广域网WAN、城域网MAN、局域网LAN、个域网PAN
  • 按照拓扑结构分类:总线型网络、星型网络、环型网络、网状型网络

③计算机网络的性能指标

1.速率

        连接在计算机网络上的主机在数字信道上传送比特的速率,通常也称为:比特率、数据率

单位:bit/s (b/s,bps)

注意区分:数据量上的M:“兆”  和  速率单位上的M:“兆”的大小取值

2.带宽

        指网络的通信线路传送数据的能力

3.吞吐量

        指在单位时间内,通过某个网络(或信道、接口)的数据量

4.时延

        分为发送时延、传播时延、处理时延

5.时延带宽积

        传播时延 * 带宽。可以抽象为圆柱体 的体积

6.往返时间

        双向交互一次所需要的时间

7.利用率

        分为信道利用率和网络利用率

8.丢包率

  •  又称:分组丢失率。是指在一定时间内,传输过程中,丢失的分组数量与总分组数量的比率。
  • 分组丢失的两个主要原因:分组误码结点交换机缓存队列满网络拥塞
    • 无拥塞时,路径丢包率为0
    • 轻度拥塞时,路径丢包率为1%~4%    
    • 严重拥塞时,路径丢包率为5%~15%    

④常见的三种计算机网络体系结构

⑤计算机网络体系结构分层的必要性

⑥计算机网络体系结构中的专业术语

实体、对等实体、协议(水平)、服务(垂直)

第二章、物理层

①物理层定义接口特性

②物理层下面的传输媒体

1.传输媒体是计算机网络设备之间的物理通路,也成为传输介质传输媒介

2.传输媒体不包含在计算机网络体系结构中

③传输方式

1.串行传输:在发送端和接收端仅有一条数据传输线路,一般适用于远距离传输

并行传输:在发送端和接收端之间有多条数据传输线路,一般适用于近距离传输。计算机内部通常采用并行传输。

2.同步传输:以比特为传输单位

异步传输:以字节为传输单位。是指每个字节之间的异步,即字节之间的时间间隔不确定;但字节内的每个比特仍需同步。需要在每个字节的前后分别添加起始位终止位

3.单工、半双工、全双工

④编码与调制

1.双极性不归零编码:正电平表示1,负电平表示0,不会出现零电平。编码效率高,但是存在同步问题

下图,解释如何判断这是一个码元还是两个码元还是三个码元:通过时钟信号,来严格确定

2.双极性归零编码:自同步,但编码效率低 。通过在每个码元里添加 零电平 实现时钟同步

下图,解释了其实归零编码就是将时钟信号用“归零”的方式编码在了数据之内,这成为“自同步”信号。

3.曼彻斯特编码:每个码元的中间时刻,电平发生跳变:正跳变表示0还是1,负跳变表示0还是1,可以自行定义

下图,解释了码元中间时刻跳变又表示时钟,又表示数据。

4.差分曼彻斯特编码:码元中间时刻的电平跳变仅仅是表示时钟信号,而不是表示数据;数据的表示在于每一个码元的开始处,是否有电平跳变:无跳变表示1,有跳变表示0

下图,解释了码元中间时刻跳变仅仅表示时钟,然后开始处电平是否发生变化表示数据。

基本调制方法:调幅、调频、调相

 如何让一个码元来包含更多的比特:通过混合调制

此时,每种码元可以对应表示4的比特,采用格雷码,使得16种码元相邻之间只会存在一个比特位不同

⑤信道的极限容量

奈氏准则、香农公式

准确的来说,传输媒体不能和信道画等号:例如,在单工传输中,传输媒体中只能有一个信道,要么是发送信道,要么是接收信道

码元传输中失真的因素:码元传播速率信号传输距离噪声干扰传输媒体质量

码元传输速率,又称波特率、调制速率、波形速率、符号速率。

奈氏准则:理想低通信道的最高码元传播速率为2W Baud , 。其中W表示信道带宽(单位:Hz),Baud表示波特,码元/秒

香农公式:信道的信道带宽W或者信道中的信噪比S/N越大,信道的极限信息传输速率C就越高

要想提高信息的传输速率,必须采 用多元制(即更好的调制方法)和努力提高信道中的信噪比 

 数据传输速率=波特率(码元传输速率)* 每个码元所携带的信息量

信噪比

第三章、数据链路层

①数据链路层概述

②封装成帧

封装成帧:在上层交付过来的协议数据单元,添加帧头和帧尾,使之称为帧

透明传输

③差错检测

比特差错:比特在传输过程中产生差错,0可能变成1,1可能变成0

那么,数据链路层所要解决的重要问题之一就是:使用差错检测码来检测数据是否在传输过程中发生了比特差错

方法一:奇偶校验

        在待发送的数据后面添加一位奇偶校验位,添加1表示比特1的数量为奇数,添加0表示比特1的数量为偶数

        缺点:如果有偶数个比特发生误码,那么接收方会误认为接收到的数据是正确的

方法二:循环冗余校验CRC

④可靠传输

不可靠传输服务:仅仅丢弃有误码的帧 

可靠传输服务:想办法实现发送端发送什么,接收端就收到什么。注意:可靠传输实现机制的基本原理并不仅限于数据链路层,可以应用到计算机网络体系结构的各层协议中。

1.停止-等待协议SW:

发送方每次发完一个数据分组之后,必须停止,等待接收方发确认分组或否认分组,之后才可继续发送下一个分组。这样才可以确保发送方发送什么,接收方收到什么。

  • 为了避免,迟迟没有接收到确认分组或否认分组(由于数据分组在路上丢失),通过添加一个超时计时器,一般设置重传时间为略大于“从发送方到接收方的平均往返时间”
  • 为了避免,分组重复(由于确认分组在路上丢失),通过 给每个数据分组添加一个比特序号 0或1,
  • 为了避免,确认分组 混淆,通过 给每个确认分组也添加一个比特序号

2.回退N帧协议GBN

如果WT变成1,就是停止等待协议。

一个数据分组的误码,会导致其后续的多个数据分组不能被接收方按序接收而丢弃(尽管它们无乱序误码),这必然会造成发送方对这些数据分组的超时重传,显然这是对通信资源的极大浪费。

3.选择重传协议SR

为了进一步提高“回退N帧协议”的性能,可设法只重传出现了误码的数据分组,因此,接收窗口WR不应该再等于1,以便接收方先  收下失序到达但是没有误码并且序号落在接收窗口内的那些数据分组,等到所缺分组收齐后,再一并送交上层,这就是选择重传协议

3.5  点对点协议PPP

        PPP协议是在数据链路层中,它为点对点链路传输各种协议数据报提供一个标准方法,主要由以下三部分组成:

  1. 各种协议数据报的封装方法(封装成帧)
  2. 链路控制协议LCP
  3. 一套网络控制协议NCPs

PPP帧透明传输方法:

  1. 面向字节的异步链路使用字节填充法(插入转义字符)
  2. 面向比特的同步链路使用比特填充法(0比特填充法------在连续的5个1后面插入一个0)

3.6  媒体接入控制

复用技术:复用是将单一媒体的频带资源划分为很多子信道,这些子信道相互独立,

时分多址、频分多址、码分多址都是物理层的信道复用技术,属于静态划分信道,不会发生冲突

而CSMA属于争用型的媒体接入协议,连接在同一媒体的多个站点使用该协议以竞争方式发送数据帧,会发生冲突

频分复用:  频分多址FDMA

时分复用:   时分多址TDMA

波分复用WDM:

码分复用CDM:码分多址CDMA

随机接入:总线局域网使用的协议:CSMA/CD协议

CSMA/CD:载波接听多址接入/碰撞检测   

随机接入:无线局域网使用的协议:CSMA/CA协议

CSMA/CA:载波接听多址接入/碰撞避免collision avoidance    

为什么无线局域网不用碰撞检测?   因为隐蔽站问题,如下图,

在CSMA/CA协议中,有信道预约和虚拟载波监听

3.7MAC地址、IP地址、以及ARP协议

MAC地址相关知识

当多个主机连接在同一个广播信道上时,如果想要发送帧,那么必须携带标识发送主机和接收主机的地址,由于这类地址是用于媒体接入控制MAC(Media Access Control),因此这类地址被称为MAC地址

注意:MAC地址也称为物理地址,但是!这不意味着MAC地址属于网络体系结构的物理层!MAC地址属于数据链路层的范畴

随机MAC地址:主要是因为美国的安全局通过用户MAC地址,来监测用户的移动轨迹。因此,在后续的IOS系列设备、Windows10、安卓6.0等  都应用了随机MAC地址

IP地址相关知识

数据包转发过程中,

主机H1知道应该把数据包传给R1,由R1帮其把数据包转发出去,

但是H1只知道R1相应接口的IP地址为IP3,不知道其对应的MAC地址是什么

如何通过IP地址推出MAC地址?     通过ARP协议

ARP地址解析协议相关知识(Address Resolution Protocol)

ARP协议只能在一个网络上使用、或者一段链路上使用。

首先要发送ARP广播请求,来获取目的主机的MAC地址

ARP工作原理

        一个网络设备要发送数据给另一个网络设备时,必须要知道对方的IP地址,但是,仅有IP地址不够,因为IP数据包必须封装成帧才能通过数据链路进行发送,而数据帧必须要包含目的MAC地址,因此发送端必须还要获取MAC地址。每一个网络设备在数据封装成帧前都需要获取下一跳的MAC地址。IP地址通过网络层获得,MAC地址通过ARP协议获取。

        如果发送主机A的ARP缓存表中,不存在下一跳的MAC地址,那么主机A就要发送广播请求,所有主机接收到该报文后,检查它的目的协议地址字段与自身的IP地址是否匹配。如果不匹配就不响应该报文,如果匹配,那么该主机C会首先将ARP报文中的源MAC地址和源IP地址信息记录到自己的ARP缓存表中,然后通过ARP Reply报文进行响应。ARP Reply报文的源协议地址是主机C的IP地址,目标协议地址是主机A的IP地址,目的MAC地址是主机A的MAC地址,源MAC地址是自己的MAC地址。

        主机A收到ARP  Reply后,会检查ARP报文中目的MAC地址是否与自己的MAC匹配,如果匹配,就将该报文中的源IP地址和源MAC地址  记录到主机A的ARP缓存表中。

3.8集线器和交换机的区别

集线器HUB、交换机SWITCH

情况1:发送的数据是   广播帧

在集线器连接的总线型网络中,若主机A想要发送广播帧给主机C,那么这条广播帧会发送给连接在这个总线的所有主机

而交换机,若主机A想要发送广播帧给主机C,那么这条广播帧只会发送给主机C,不会发送到其他的主机上

情况2:发送的数据是  单播帧

在集线器连接的总线型网络中,若主机A和主机C同时想要发送数据给主机B,那么数据会发生碰撞,遭遇碰撞的帧  会传播到总线上的各主机

对于使用交换机的交换式以太网中,交换机收到多个帧时,会将他们同时缓存起来,然后逐个转发给目的主机,不会产生碰撞

下图:分别使用集线器、交换机来扩展以太网

3.9以太网交换机自学习和转发帧的流程

以太网交换机工作在数据链路层(也包括物理层)

使用一个或多个以太网交换机互连起来的交换式以太网,其所有站点都属于 同一个广播域

交换机里面有一个  “帧交换表”,当收到一个帧时,便会记录下MAC地址和相对应的接口  到自己的帧交换表中,然后还会判断目的地址是否为自己,如果是,则接收该帧,如果不是,就丢弃该帧。

注意:如果说 在“帧交换表”中,没有目的物理地址,那么就会进行 盲目转发,即,将该帧转发给所有接口,并且在帧交换表中,记录下  1.该帧由哪个物理地址转发的,且2.记录对应的接口

3.10以太网交换机的生成树协议STP

为了提高网络的可靠性,可以通过增加冗余链路,

但是这会导致  网路形成环路,从而造成“广播风暴”、“主机收到重复的广播帧”等,

因此,以太网交换机使用生成树协议STP,来避免网络环路带来的各种问题。

3.11.1虚拟局域网VLAN

由来:

当一个个较小的广播域  ,通过交换机连接起来,  形成了一个  非常大的广播域,这样子,当任何一台主机发送  广播请求时,会造成“广播风暴”,这会对CPU造成极大地浪费,但是广播请求又是不可以避免的,那么如何将一个巨大的广播域分隔成较小的呢?

        使用路由器就可以隔离广播域,         路由器默认情况下不对广播数据包进行转发。

但是路由器的成本较高,在巨大的广播域中,全部使用路由器隔离是不太现实,从而,虚拟局域网VLAN(Virtual Local  Area Network)出现了。

实现机制:

通过“加标签”、“去标签”

第四章、网络层

4.3.1   IPV4地址

IPV4地址就是给因特网(Internet)上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内唯一的32比特的标识符

分类编址的IPV4地址

 根据分类的IP地址,写出类别:

  1. 根据地址的左起第一个十进制的值,可以判断出网络类别:小于127的为A类,128~191的为B类,192~223的为C类
  2. 根据网络类别,就可以找出地址中网络号部分和主机号部分:A类地址网络号是左起第一个字节,B类是左起前两个字节,C类是左起前三个字节
  3. 有三种情况的地址不能指派给主机或路由器接口:①A类网络号0和127②主机号全0,这是网络地址主机号全1,这是广播地址  

注意:地址0.0.0.0只能作为源地址使用;地址255.255.255.255只能作为目的地址使用;127开头的,且后面的三个字节非全“0”非全“1”  ,既可以作为源地址使用,也可以作为目的地址使用,用于本地软件环回测试

                        

  划分子网的IPV4地址

如何将一个大的网络分成一个个子网呢?IPV4地址分为,网络号和主机号,如果申请不同的网络号,会浪费资源。因此,我们通过占用主机号的比特位,用来区分子网,如果占用1位,那么就是说有两个子网。      

子网掩码

32比特的子网掩码,对应的IPV4的网络号和子网号的比特位上全部为1,主机号对应的全部为0,然后做   按位与操作。

无分类编址的IPV4地址

一般在地址后面  添加   “/数字”,比如在地址后面添加“/19”,表示该地址的前面19比特是代表网络号

中继器、集线器、网桥、交换机、路由器

4.6.2路由信息协议RIP的基本工作原理

RIP要求自治系统 AS  内的每一个路由器,都要维护从它自己到AS内每一个网络的距离的记录。这是一组距离,称为“距离向量D-V(Distance-Vector)”

                                                                        

注意:最多支持15跳;距离为“16”的时候,就不可达了 

4.6.3开放最短路径优先OSPF

OSPF是基于链路状态的,而不像RIP基于距离向量的。

OSPF与RIP的区别

  1. OSPF向本自治系统中的所有路由器发送信息,使用的方法是:洪泛法;而RIP仅向与自己相邻的几个路由器发送信息
  2. OSPF发送的信息是自己路由表所知道的 “部分信息”;而RIP发送的是路由表的“全部信息”
  3. OSPF只有当链路状态发生变化,才会用洪泛法向所有路由器发送信息,并且更新过程收敛的更快,不会出现RIP“坏消息传的慢”的问题;而在RIP中,不管网络拓扑是否发生变化,路由器之间都会定期交换路由表的信息

采用SPF算法计算路由

第五章  传输层

5.3  UDP和TCP对比

UDP:用户数据报协议(User  Datagram Protocol)

TCP:传输控制协议(Transmission Control Protocol)

  • 在运输层使用 UDP协议的两台主机,可以直接进行 数据传输
  • 在运输层使用TCP协议的两台主机,需要先“三报文握手”建立连接,然后才能进行数据传输,最后还需要“四报文挥手”释放连接。

综上,可以看出 :无连接的UDP,和  面向连接的TCP

UDP向上提供无连接不可靠传输服务,适用于IP电话、视频会议等实时应用

TCP向上提供 有连接可靠传输服务

5.4  TCP的流量控制

通过滑动窗口来实现

接收方可以控制发送方的发送窗口大小

5.5  TCP的拥塞控制

四种拥塞控制算法

慢开始、拥塞避免、快重传、快恢复

5.8.1 TCP的连接建立

TCP运输连接有三个阶段:

  1. 建立TCP连接         “三报文握手”
  2. 数据传送
  3. 释放TCP连接         “四报文挥手”

                

                

第六章   应用层                 

6.4  域名系统DNS                                           

    DNS 采用UDP协议进行封装               

                                                                                                                                                                

6.5文件传送协议FTP

FTP客户和服务器之间要建立以下两个并行的TCP连接:

  1. 一个是控制连接,在整个会话期间一直保持打开,用于传送FTP相关控制命令
  2. 另一个是数据连接,用于文件传输,在每次文件传输时建立,传输结束就关闭

      

6.6 电子邮件

发送方通过邮件发送协议(例如SMTP)发送邮件给发送方邮件服务器,

然后发送方邮件服务器通过邮件发送协议(例如SMTP)再将邮件发送给接收方邮件服务器,

最后,接收方在方便的时候,使用邮件读取协议(例如POP3)从接收方邮件服务器读取邮件

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

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

相关文章

【Java】常用类和基础API

文章目录 一、String的特性二、String的内存结构2.1 拼接2.2 new 三、String的常用API-13.1 构造器 四、String的常用API-24.1 常用方法4.2 查找4.3 字符串截取4.4 和字符/字符数组相关4.5 开头与结尾4.6 替换 五、StringBuffer、StringBuilder5.1 StringBuilder、StringBuffer…

应对磁盘管理挑战:Linux磁盘分区挂载命令实践指南

前言 在今天的技术世界中,Linux已成为广泛使用的操作系统之一,而对于运维人员和开发人员来说,磁盘分区挂载是一个至关重要的任务。正确地管理和配置磁盘分区挂载可以极大地提升系统的性能和可靠性,同时也能确保数据的安全性。 通…

【数据结构与算法】:选择排序与快速排序

🔥个人主页: Quitecoder 🔥专栏:数据结构与算法 我的博客即将同步至腾讯云开发者社区,邀请大家一同入驻:腾讯云 欢迎来到排序的第二个部分:选择排序与快速排序! 目录 1.选择排序1.…

电子科技大学链时代工作室招新题C语言部分---题号E

1. 题目 这道题大概的意思是说,一座城市中被埋了许多雷(用一个只含0和1的字符串表示城市,1代表有雷,0代表无雷)。 你作为一个排雷兵,需要花最少的钱引爆所有的雷来使城市中不再有雷(太逆天了&a…

分布式文件存储与数据缓存(一)| FastDFS

目录 分布式文件系统FastDFS概述_简介FastDFS特性:分布式文件服务提供商 FastDFS概述_核心概念trackerstorageclientgroup FastDFS概述_上传机制内部机制如下 FastDFS概述_下载机制内部机制如下 FastDFS环境搭建_Linux下载安装gcc下载安装FastDFS下载安装FastDFS依赖…

Transformer代码从零解读【Pytorch官方版本】

文章目录 1、Transformer大致有3大应用2、Transformer的整体结构图3、如何处理batch-size句子长度不一致问题4、MultiHeadAttention(多头注意力机制)5、前馈神经网络6、Encoder中的输入masked7、完整代码补充知识: 1、Transformer大致有3大应…

由浅到深认识C语言(6):变量的存储类型

该文章Github地址:https://github.com/AntonyCheng/c-notes 在此介绍一下作者开源的SpringBoot项目初始化模板(Github仓库地址:https://github.com/AntonyCheng/spring-boot-init-template & CSDN文章地址:https://blog.csdn…

代码随想录算法训练营第40天 | 343. 整数拆分 ,96.不同的二叉搜索树

动态规划章节理论基础: https://programmercarl.com/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html 343. 整数拆分 题目链接:https://leetcode.cn/problems/integer-break/ 思路: 动规五部曲&#xf…

【复现】通天星CMS 安全监控云平台 SQL注入漏洞_64

目录 一.概述 二 .漏洞影响 三.漏洞复现 1. 漏洞一: 四.修复建议: 五. 搜索语法: 六.免责声明 一.概述 通天星CMSV6拥有以位置服务、无线3G/4G视频传输、云存储服务为核心的研发团队,专注于为定位、无线视频终端产品提供平…

sqllab第三关通关笔记

知识点: 通过回显的信息判断原始语句的组成猜测该语句为 select 1,2,3 from 表名 where id (输入) limit 0,1 首先通过测试判断存在什么类型的sql注入 构造id1/0 发现正常输出;说明是字符型的sql注入 好了,下面就测试有什么限制条件 构造…

论文阅读——MoCo

Momentum Contrast for Unsupervised Visual Representation Learning 动量在数学上理解为加权移动平均: yt-1是上一时刻输出,xt是当前时刻输入,m是动量,不想让当前时刻输出只依赖于当前时刻的输入,m很大时&#xff0…

使用Laravel开发项目

如何使用Laravel框架开发项目 一、安装Laravel框架 1.在安装Laravel框架钱我们需要先查看要安装的Laravel框架版本以及版本所需要的安装运行条件。 2.配置好安装环境后再安装Laravel框架 2.1.配置安装环境 1)PHP版本 2)PHP OpenSSL扩展 3&#xff…

Ubuntu查看ros版本-linux查看ros版本

使用ros带的rosversion命令即可查看自己的ros版本: rosversion -d

C语言葵花宝典之——文件操作

前言: 在之前的学习中,我们所写的C语言程序总是在运行结束之后,就会自动销毁,那如果我们想将一个结果进行长期存储应该如何操作呢?这时候就需要我们用文件来操作。 目录 1、什么是文件? 1.1 程序文件 1.2…

C语言 之 结构体超详细总结

🌈 个人主页:白子寰 🔥 分类专栏:魔法指针,进阶C,C语言,C语言题集,C语言实现游戏👈 希望得到您的订阅和支持~ 💡 坚持创作博文(平均质量分78.8),分…

docker容器镜像管理

目录 一、 Docker的基本组成 二、 容器和镜像的关系 2.1 面向对象角度 2.2 从镜像容器角度 三、镜像命令 3.1 查看当前已有镜像 3.2 查看已有的全部镜像 3.3 查看镜像ID 3.4 镜像删除 四、 容器命令 4.1 下载镜像 4.2 新建和启动容器 run 4.3 交互式 4.…

【体验有奖】用 AI 画春天,函数计算搭建 Stable Diffusion WebUI

人工智能生成内容 AIGC(Artificial Intelligence Generated Content)是当下备受关注的概念之一,是继 PGC 和 UGC 之后的新型生产方式。AIGC 技术的核心思想是利用人工智能算法生成具有一定创意和质量的内容。例如,根据用户的描述或…

字符分类函数(iscntrl、i是space.....)---c语言

目录 一、定义二、字符分类函数2.1 -iscntrl()2.1.1定义2.1.2使用举例 2.2 -isspace()2.2.1描述2.2.2使用举例 2.3-isdigit()2.3.1描述2.3.2使用举例 2.4-isxdigit()2.4.1描述 2.5-islower()2.5.1描述2.5.2使用举例 2.6-isupper()…

jenkins容器中安装python遇到问题

在Jenkins容器中安装配置Python时遇到问题 执行./configure --prefix/opt/python3/时遇到configure: error: no acceptable C compiler found in $PATH 这个问题就是缺少gcc编译环境。将gcc安装上即可: yum install -y gcc##前提是容器里的系统是cenos才可以&#…

专升本 C语言笔记-06 常用的3种输入输出函数

1.scanf() 与 printf() 的使用 scanf() 格式化输入数据 格式:scanf("格式控制字符串",参数地址列表) scanf("%d,%d,%d",&a,&b,&c); printf("a %d\n",a); printf("b %d\n",b); printf("c %d\n",c); 注意 注…