计算机网络原理(一)

嘿!
新年的第一篇博客,大家新年快乐呀!希望大家新的一年要多多进步噢!在这里插入图片描述

1.TCP/IP的四层/五层参考模型有哪些层,各层的特点是?计算机网络分层的好处是?

TCP/IP 四层参考模型

  • 应用层:直接为用户的应用程序提供服务
  • 传输层:为应用层实体提供端到端的通信功能,保证了数据包的顺序传送及数据的完整性
  • 网际互联层:主要解决主机到主机的通信问题,所包含的协议设计数据包在整个网络上的逻辑传输,注重重新赋予主机一个 IP 地址来完成对主机的寻址,提供一个可靠、无连接的数据报传递服务
  • 网络接入层:负责监视数据在主机和网络之间的交换

TCP/IP 五层参考模型

  • 物理层:利用传输介质为数据链路层提供物理联接,负责数据流的物理传输工作
  • 数据链路层:负责在物理层面上传输数据,把网络层传下来的 IP 数据报封装成帧,添加一些控制信息,接收端可根据这些控制信息判断是否出现差错,以及知道该帧从哪个比特开始从哪个比特结束,传输单位是帧,所实现的硬件有交换机、网桥等。
  • 传输层:提供端到端的可靠数据传输和错误恢复功能,具有复用和分用的功能
  • 应用层:直接为应用程序提供服务

计算机网络分层的好处

  • 各层独立
  • 灵活性好
  • 易于实现和维护
  • 促进标准化:有利于制定统一的标准和规范
  • 便于理解和学习

2.信道复用技术的主要特点

  • 能够提高资源利用率
  • 支持多用户通信
  • 提高系统容量和传输效率
  • 抗干扰能力强
  • 具有灵活性和可扩展性
  • 降低成本
  • 便于管理和维护

3.数据链路层帧的特点,可靠传输如何实现,使用了哪些协议?

数据链路层帧的特点

  • 封装性:封装为数据提供了清晰的组织形式,便于传输和管理。
  • 定界性:通过特定的帧首部和尾部来标识帧的开始和结束,使得接收方能够准确地识别出一个完整的帧,从而正确地进行接收和处理。
  • 透明性:对于帧的数据部分,数据链路层应实现透明传输,即无论数据部分包含什么内容,都应原封不动地传输到接收端,不会因数据中的特定字符或比特序列而产生错误的处理或误解。
  • 差错检测性:用于检测数据在传输过程中是否出现差错
  • 长度受限性:如果网络层传递下来的数据包超过了 MTU(最大传输单元),则需要进行分片处理后再封装成帧进行传输。

数据链路层可靠传输的实现方式

  • 差错检测:发送方在帧中添加校验字段,如 CRC 等,接收方根据接收到的帧重新计算校验字段,并与接收到的校验字段进行比较,如果不一致则说明帧在传输过程中出现了差错。
  • 确认与重传:接收方在正确接收到帧后,会向发送方发送确认帧(ACK),表示已正确接收。发送方如果在规定的时间内未收到确认帧,则认为帧丢失或出错,会重新发送该帧。常见的自动重发请求(ARQ)差错控制技术有停止等待 ARQ、后退 N 步 ARQ、选择拒绝 ARQ 等。
  • 序号机制:为每个帧添加序号,接收方可以根据序号来判断帧的顺序是否正确,以及是否有帧丢失或重复,从而保证数据的有序传输。
  • 流量控制:通过限制发送方的发送速率,使接收方能够来得及接收和处理数据,防止接收方缓存溢出而导致数据丢失

数据链路层使用的协议

  • PPP 协议
  • HDLC 协议
  • 以太网协议
  • IEEE802.3 协议
  • 帧中继协议
  • ATM 协议

4.CSMA/CD,CSMA/CA的作用及特点

CSMA/CD

  • 作用: 主要用于解决多个设备共享同一总线型网络时,如何有序地访问介质和避免数据冲突的问题,使得不同设备或网络上的节点可以在多点的网络上通信而不相互冲突。
  • 特点: 先听后发、边听边发、冲突停发、随机延迟重发、算法简单、负载敏感

CSMA/CA

  • 作用: 主要用于无线局域网中,解决多个无线设备共享无线信道时的冲突问题,确保数据传输的可靠性和效率。
  • 特点: 载波侦听、随机等待(减少多个设备同时发送数据导致冲突的可能性)、无法直接检测冲突、使用确认帧(保证数据传输的可靠性)、帧间间隔(用于分隔不同优先级的帧和避免冲突)、网络分配向量(避免在信道忙碌期间发送数据)

5.arp协议的作用?工作原理是?

作用
ARP 协议即地址解析协议,其主要作用是在局域网中将 IP 地址解析为对应的 MAC 地址。使得设备在发送数据时,能够在链路层通过 MAC 地址准确地找到目标设备,从而实现数据的正确传输,是连接网络层和链路层的纽带。
工作原理

  • ARP 缓存检查:设备在发送数据前,会先在本地的 ARP 缓存表中查找目标设备的 IP 地址对应的 MAC 地址。如果缓存表中存在相应条目,则直接使用该 MAC 地址进行数据封装和传输。
  • ARP 请求广播:如果 ARP 缓存中不存在目标设备的 MAC 地址,发送方设备会创建一个 ARP 请求报文,其中包含自己的 MAC 地址、IP 地址以及目标设备的 IP 地址。然后将该 ARP 请求报文以广播的形式发送到局域网上的所有设备,此时 ARP 请求报文的目标 MAC 地址为全 1 的广播地址(ff:ff:ff:ff:ff:ff)。
  • 目标设备响应:局域网上的所有主机都会接收到 ARP 请求报文,但只有目标设备会检查请求报文中的目的 IP 地址是否与自身的 IP 地址相匹配。如果匹配,则目标设备会创建一个 ARP 响应报文,其中包含自己的 MAC 地址和 IP 地址,并将该响应报文发送回发送方设备,ARP 响应报文通常以单播的形式发送。
  • 地址缓存更新:发送方设备收到目标设备的 ARP 响应报文后,会将目标设备的 IP 地址和 MAC 地址的映射关系添加到自己的 ARP 缓存中。
  • 通信建立并发送数据包:发送方设备在获得目标设备的 MAC 地址后,就可以将目标 MAC 地址写入数据帧的目的 MAC 地址字段,将源 MAC 地址写入数据帧的源 MAC 地址字段,然后将数据帧发送给目标设备,从而实现数据的传输。

6.IP地址和子网掩码是否能正确理解

IP 地址

  • 定义与作用:IP 地址是用于标识计算机网络中的每台设备的唯一数字标签,就像现实生活中的家庭住址或电话号码,用于在网络中准确地找到特定的设备,使得数据包能够在网络中从一个设备传递到另一个设备。
  • 地址格式:IPv4 地址由 32 位二进制数组成,通常被分为四个 8 位的组,每组表示为一个 0 到 255 之间的十进制数,例如 192.168.1.1。而 IPv6 地址则由 128 位二进制数组成,采用冒号十六进制表示法,例如 2001:0db8:85a3:0000:0000:8a2e:0370:7334。
  • 地址分类:在 IPv4 中,地址分为 A 类、B 类、C 类、D 类和 E 类。A 类地址的第一个字节范围是 1 到 126,用于大型网络;B 类地址的第一个字节范围是 128 到 191,适用于中型网络;C 类地址的第一个字节范围是 192 到 223,用于小型网络;D 类地址用于多播;E 类地址保留用于实验和研究。

子网掩码

  • 定义与作用:子网掩码是一个 32 位的地址掩码,用于判断任意两台计算机的 IP 地址是否属于同一子网络,主要作用是屏蔽 IP 地址的一部分以区别网络标识和主机标识,并说明该 IP 地址是在局域网上,还是在远程网上,还可用于将一个大的 IP 网络划分为若干小的子网络,减少 IP 地址的浪费。
  • 工作原理:子网掩码与 IP 地址进行逻辑与运算,可以得到网络地址。所有具有相同网络地址的 IP 都属于同一个子网。例如,对于 IP 地址 192.168.1.1 和子网掩码 255.255.255.0,进行与运算后得到的网络地址是 192.168.1.0,表示该 IP 地址属于 192.168.1.0 这个子网。
  • 常见表示形式:通常以点分十进制表示法表示,与 IP 地址的表示形式类似,如 255.255.255.0。也可以用 CIDR 表示法,如 192.168.1.0/24,其中 “/24” 表示子网掩码的前 24 位为 1,即 255.255.255.0。

两者关系

  • 相互依存:IP 地址和子网掩码必须结合使用,才能准确地确定网络中的设备位置和进行通信。仅知道 IP 地址而不知道子网掩码,无法确定设备所属的子网;反之,仅知道子网掩码而没有具体的 IP 地址,也无法定位到特定的设备。
  • 子网划分:通过改变子网掩码,可以灵活地划分不同大小的子网,以满足不同网络规模和需求。合理的子网划分可以提高网络的管理效率和安全性,减少网络拥塞和广播风暴等问题。
  • 路由决策:路由器在转发数据包时,会根据目的 IP 地址和子网掩码来判断数据包的目的地是在本地子网内还是在其他子网中,从而决定是直接交付还是将数据包转发到其他子网或网络。

7.IP地址划分子网的计算方法

根据子网数量计算子网掩码

  • 确定要划分的子网数:明确需要将给定的 IP 地址划分成多少个子网
  • 将子网数目转化为二进制:把子网数转换二进制数形式。
  • 确定二进制位数:数出该二进制数的位数,记为n
  • 获取原 IP 地址类的子网掩码:根据 IP 地址所属的类别(A 类、B 类、C 类等),确定其默认的子网掩码。
  • 修改子网掩码:将原子网掩码的主机地址部分的前n位置1其余位置0,得到划分子网后的子网掩码。
    在这里插入图片描述
    根据主机数量计算子网掩码
  • 确定每个子网的主机数:确定每个子网中预计容纳的主机数量
  • 将主机数目转化为二进制:把主机数转换为二进制数形式。
  • 确定二进制位数:数出该二进制数的位数记为n,这里要注意如果主机数小于或等于 254,需要去掉保留的两个IP 地址(全0和全1的主机地址不可用)。
  • 获取原 IP 地址类的子网掩码:根据 IP 地址所属的类别(A 类、B 类、C 类等),确定其默认的子网掩码。
  • 修改子网掩码:先将该类 IP 地址的子网掩码的主机地址位数全部置1,得到 255.255.255.255,然后从后向前n位全部置为0,即为子网掩码值。
    在这里插入图片描述
    确定每个子网的网络地址、广播地址和可用主机地址范围
  • 计算网络地址:将 IP 地址与新的子网掩码进行“与”运算,得到每个子网的网络地址。
  • 计算广播地址:先找到该子网的下一个子网的网络地址,通过将本子网的网络地址加上子网掩码所表示的块大小,得到下一个子网的网络地址,那么本子网的广播地址就是下一个子网的网络地址减去1
  • 计算可用主机地址范围:每个子网的可用主机地址范围是子网的网络地址加1到广播地址减1

8.IP数据报的特点,首部有哪些关键字段,这些字段有哪些作用?

IP 数据报的特点

  • 无连接
  • 无状态
  • 不可靠

IP 数据报首部的关键字段及作用

  • 版本:占 4 位,指 IP 协议的版本,通信双方使用的 IP 协议版本必须一致
  • 首部长度:占 4 位,用于指示首部的长度,以保证数据部分永远在 4 字节的整数倍开始。
  • 区分服务:占 8 位,只有在使用区分服务时,这个字段才起作用,用于获得更好的服务质量。
  • 总长度:占 16 位,指首部和数据之和的长度,单位为字节,因此数据报的最大长度为 2^16-1=65535 字节,但在实际传输中,还需考虑链路层的最大传送单元 MTU 限制。
  • 标识:占 16 位,用于在数据报分片后,使各分片能正确地重装成为原来的数据报。
  • 标志:占 3 位,但只有 2 位有意义。最低位 MF 表示后面 “还有分片” 的数据报,MF=1 表示后面还有分片,MF=0 表示这已是若干数据报片中的最后一个;中间一位 DF 表示 “不能分片”,只有当 DF=0 时才允许分片。
  • 片偏移:占 13 位,指出较长的分组在分片后,某片在原分组中的相对位置,以 8 个字节为偏移单位,即每个分片的长度一定是 8 字节(64 位)的整数倍。
  • 生存时间:占 8 位,防止无法交付的数据报在网络中无限循环。
  • 协议:占 8 位,指出此数据报携带的数据是使用何种协议,以便使目的主机的 IP 层知道应将数据部分上交给哪个处理过程,如 1 表示 ICMP,2 表示 IGMP,6 表示 TCP,17 表示 UDP 等。
  • 首部检验和:占 16 位,只检验数据报的首部,但不包括数据部分,因为数据报每经过一个路由器,路由器都要重新计算一下首部检验和,不检验数据部分可减少计算的工作量。
  • 源地址:占 32 位,标识发送数据报的源主机的 IP 地址。
  • 目的地址:占 32 位,标识数据报的目的主机的 IP 地址。

9.TCP与UDP的区别?什么时候用TCP什么用UDP?TCP能实现可靠传输的原因是什么?

TCP 与 UDP 的区别

  • 连接性TCP 是面向连接的,在数据传输前需要先建立连接,通信双方通过三次握手来确认连接的建立,数据传输完毕后还需通过四次挥手来关闭连接;UDP 是无连接的,发送数据之前不需要与对方建立连接,直接发送数据报。
  • 可靠性TCP 提供可靠的数据传输服务,通过校验和、重传控制、序号标识、滑动窗口、确认应答等机制,确保数据无差错、不丢失、不重复且按序到达;UDP 不保证数据的可靠性,尽最大努力交付,报文可能会丢失、重复以及乱序等。
  • 传输效率TCP由于需要进行连接管理和数据确认等操作,传输效率相对较低UDP 传输效率高,因为它在传输数据报前不用建立连接,也没有超时重发等机制,故而传输速度很快。
  • 应用场景TCP 通常用于需要可靠传输的场景,如文件传输、电子邮件、远程登录等;UDP 常用于对实时性要求高、对少量数据丢失不敏感的场景,如视频会议、在线游戏、音频流等。
  • 通信模式TCP一对一的通信;UDP支持一对一、一对多、多对一和多对多的交互通信。
  • 首部开销TCP 的首部包含更多的控制信息,如序号、确认号、窗口大小等,首部开销较大;UDP 的首部开销较小,只有源端口、目的端口、长度和校验和等基本字段。

TCP 和 UDP 的应用场景

  • 使用 TCP 的场景
    文件传输、电子邮件、远程登录
  • 使用 UDP 的场景
    视频直播和音频流、实时游戏、DNS 查询

TCP 能实现可靠传输的原因

  • 校验和机制:TCP 保持它首部和数据的检验和,这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到段的检验和有差错,TCP 将丢弃这个报文段和不确认收到此报文段,要求发送方重新发送。
  • 序号标识与确认应答:TCP 会按照顺序给发送的数据标上号码,每发送一个数据报,都会期待一个接收端 ACK 的回复,以此确认接收端已经收到消息。如果短时间内没有收到 ACK,TCP 就会对消息进行自动重发。
  • 滑动窗口技术:通过滑动窗口机制,发送方可以根据接收方的接收能力和网络状况,动态调整发送窗口的大小,控制发送数据的速率,避免接收方缓冲区溢出,同时提高传输效率。
  • 重传控制:当发送方在规定时间内未收到接收方的确认应答时,会自动重传数据,确保数据能够被接收方正确接收。
  • 数据排序与去重:由于 IP 数据报的到达可能会失序,TCP 报文段的到达也可能会失序,TCP 将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层;对于重复的数据,接收端能够丢弃重复数据。

10.TTL字段的作用与特点

TTL 字段即生存时间字段,在网络通信中有重要作用与特点,以下是具体介绍:
作用

  • 防止数据包无限循环:避免数据包在网络中无休止地循环,节省网络资源。
  • 辅助网络故障诊断:帮助网络管理员诊断网络故障和确定网络拓扑结构。
  • 控制数据传输范围:避免数据泄露到外部网络;确保数据包能够在广域网中传输足够的跳数以到达目的地。

特点

  • 取值范围有限
  • 逐跳递减:这种逐跳递减的特性使得每个路由器都能对数据包的生存时间进行控制,确保在一定的跳数内数据包能够到达目的地或被丢弃。
  • 引发 ICMP 消息:当路由器将 TTL 值减为 0 并丢弃数据包时,会向源地址发送一个 ICMP(Internet Control Message Protocol)超时消息,通知源主机数据包已被丢弃。源主机可以根据收到的 ICMP 消息判断数据包是否成功传输,以及在传输过程中是否出现了问题。

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

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

相关文章

大模型Weekly 03|OpenAI o3发布;DeepSeek-V3上线即开源!

大模型Weekly 03|OpenAI o3发布;DeepSeek-V3上线即开源!DeepSeek-V3上线即开源;OpenAI 发布高级推理模型 o3https://mp.weixin.qq.com/s/9qU_zzIv9ibFdJZ5cTocOw?token47960959&langzh_CN 「青稞大模型Weekly」,持…

【C++】B2089 数组逆序重存放

博客主页: [小ᶻ☡꙳ᵃⁱᵍᶜ꙳] 本文专栏: C 文章目录 💯前言💯问题描述题目:数组逆序重排输入格式输出格式输入输出样例 💯我的代码实现**代码分析****优化建议** 💯老师的做法与分析方法1&#xff1…

dfs复习

dfs前置知识 0小朋友崇拜圈 - 蓝桥云课 通过深搜,去找到该点指向的下一个点,然后返回所成的环的大小,保留最大的环的大小 通过添加时间戳,记录该点被遍历的时间,如果下一个点有被添加过时间戳,如果时间戳是大于等于我们的最小时间戳的(等于说明该点自成环),那么成环,…

QT---------自定义插件和库

自定义界面组件 设计和使用自定义界面组件 (以 TBattery 为例) 假设我们要创建一个自定义的电池显示组件 TBattery&#xff0c;我们可以从 QWidget 派生一个新的类&#xff1a; #include <QWidget> #include <QPainter>class TBattery : public QWidget {Q_OBJE…

物理知识1——电流

说起电流&#xff0c;应该从电荷说起&#xff0c;而说起电荷&#xff0c;应该从原子说起。 1 原子及其结构 常见的物质是由分子构成的&#xff0c;而分子又是由原子构成的&#xff0c;有的分子是由多个原子构成&#xff0c;有的分子只由一个原子构成。而原子的构成如图1所示。…

数据挖掘——支持向量机分类器

数据挖掘——支持向量机分类器 支持向量机最小间隔面推导基于软间隔的C-SVM非线性SVM与核变换常用核函数 支持向量机 根据统计学习理论&#xff0c;学习机器的实际风险由经验风险值和置信范围值两部分组成。而基于经验风险最小化准则的学习方法只强调了训练样本的经验风险最小…

Unity 对Sprite或者UI使用模板测试扣洞

新建两个材质球&#xff1a; 选择如下材质 设置如下参数&#xff1a; 扣洞图片或者扣洞UI的材质球 Sprite或者UI的材质球 新建一个单独Hole的canvas&#xff0c;将SortOrder设置为0&#xff0c;并将原UI的canvans的SortOrder设置为1 对2DSprite则需要调整下方的参数 hole的O…

【CSS in Depth 2 精译_099】17.5:基于页面滚动的动画时间线设置(全新)+ 17.6:最后一点建议 + 17.7:本章小结

当前内容所在位置&#xff08;可进入专栏查看其他译好的章节内容&#xff09; 第五部分 添加动效 ✔️【第 17 章 动画】 ✔️ 17.1 关键帧17.2 3D 变换下的动画设置 17.2.1 添加动画前页面布局的构建17.2.2 为布局添加动画 17.3 动画延迟与填充模式17.4 通过动画传递意图 17.4…

刷入super镜像报错 FAILED (remote: ‘Error: Last flash failed : Volume Full‘)

目录 1.背景 2.排查流程 3.追根溯源,找到根因 1.背景 首先刷入的底包 在修复此问题的过程中发现super.img镜像刷入不进去,报错FAILED (remote: Error: Last flash failed : Volume Full),此问题一般是分区有问题导致的 2.排查流程 由于是底包的分区大小和源码中的super…

Linux实验报告12-Apache服务器的配置

目录 一&#xff1a;实验目的 二&#xff1a;实验内容 1&#xff1a;在WEB服务器上检查并安装必要软件 2&#xff1a;注册虚拟主机所要使用的域名 3&#xff1a;创建所需的目录 4&#xff1a;编辑配置文件 5&#xff1a;测试虚拟主机 一&#xff1a;实验目的 (1)了解…

WeNet:面向生产的流式和非流式端到端语音识别工具包

这篇文章介绍了WeNet&#xff0c;一个面向生产的开源端到端&#xff08;E2E&#xff09;语音识别工具包。WeNet的主要特点和贡献如下&#xff1a; 统一流式和非流式识别&#xff1a;提出了一种名为U2的两阶段框架&#xff0c;能够在单一模型中同时支持流式和非流式语音识别&…

从单点 Redis 到 1 主 2 从 3 哨兵的架构演进之路

一、前言 我们有个项目中用的 MySQL、Redis、ES、微服务都是单节点部署的&#xff0c;没有做集群模式部署&#xff0c;为了提高整体的可用性&#xff0c;对项目的部署架构进行了升级&#xff0c;支持高可用。 二、部署拓扑图 我们项目的测试环境 12 台服务器已经部署好了&am…

机器学习经典算法——线性回归

目录 算法介绍 一元线性回归模型 多元线性回归模型 ​误差项分析 相关系数 算法案例 一元线性回归预测——广告销售额案例 二元线性回归预测——血压收缩案例 多元线性回归预测——糖尿病案例 算法介绍 线性回归是利用数理统计中回归分析&#xff0c;来确定两种或两种…

Nacos服务注册和发现

文章目录 Nacos服务注册和发现1. Nacos服务注册1.1 引入依赖1.2 配置Nacos1.3 重启服务1.4 Nacos后台 2. Nacos服务发现2.1 引入依赖2.2 配置Nacos2.3 服务发现 Nacos服务注册和发现 1. Nacos服务注册 服务提供者将服务注册到nacos注册中心 引入依赖配置Nacos地址重启 1.1 …

从企业级 RAG 到 AI Assistant,阿里云 Elasticsearch AI 搜索技术实践

在过去一年中&#xff0c;基座大模型技术的快速迭代推动了 AI 搜索的演进&#xff0c;主要体现在以下几个方面&#xff1a; 1.搜索技术链路重构 基于大模型的全面重构正在重塑 AI 搜索的技术链路。从数据采集、文档解析、向量检索到查询分析、意图识别、排序模型和知识图谱等…

BootstrapTable处理表格

需求背景 历史项目使用 BootstrapTable 作为前端组件 应客户需要调整&#xff1a; 冻结前四列对于大文本文字显示部分内容&#xff0c;鼠标悬浮显示完整内容 冻结列 1、引入相关CSS,JS CSS <link rel"stylesheet" href"/css/bootstrap.min.css"> …

《Vue3实战教程》35:Vue3测试

如果您有疑问&#xff0c;请观看视频教程《Vue3实战教程》 测试​ 为什么需要测试​ 自动化测试能够预防无意引入的 bug&#xff0c;并鼓励开发者将应用分解为可测试、可维护的函数、模块、类和组件。这能够帮助你和你的团队更快速、自信地构建复杂的 Vue 应用。与任何应用一…

【算法】模拟退火算法学习记录

写这篇博客的原因是博主本人在看某篇文章的时候&#xff0c;发现自己只是知道SGD这个东西&#xff0c;但是到底是个啥不清楚&#xff0c;所以百度了一下&#xff0c;然后在通过博客学习的时候看到了退火两个字&#xff0c;想到了本科做数模比赛的时候涉猎过&#xff0c;就上bil…

【MATLAB第111期】基于MATLAB的sobol全局敏感性分析方法二阶指数计算

【MATLAB第111期】基于MATLAB的sobol全局敏感性分析方法二阶指数计算 一、简介 在MATLAB中计算Sobol二阶效应指数通常涉及到全局敏感性分析&#xff08;Global Sensitivity Analysis, GSA&#xff09;&#xff0c;其中Sobol方法是一种流行的技术&#xff0c;用于评估模型输入…

android studio android sdk下载地址

android studio安装后&#xff0c;因为公司网络原因&#xff0c;一直无法安装android sdk 后经过手机网络&#xff0c;安装android sdk成功如下&#xff0c;也可以手动下载后指定android sdk本地目录 https://dl.google.com/android/repository/source-35_r01.zip https://dl…