电路研究9.2.3——合宙Air780EP中FTP——FTPGET 命令使用方法研究

        怎么说呢,之前也是看的,但是也很迷茫,感觉上虽然是对的,但是无法联系到应用里面,今天研究一下FTP 命令使用方法吧。

        15.29 使用方法举例

        这里发现下面那些看的不懂呢,于是就返回FTP的应用了。

        9.5.4 FTP 应用指南

        连接网络:通过拉低 powerkey2 秒进行开机,开机以后通过串口循环发送 AT 直到收到 OK,如果 90 秒 没有收到 OK 请拉低 RESET_IN_N 引脚 150ms 以上。不过我设计电路的时候RESET_IN_N 引脚好像没有引出来,因为要添加按键接地,我当时设计尽量想少用按键,于是就不添加按键了,也就没引出该管脚。计划能正常开机。只是返回信息的话有OK就说明联网了。

        SIM 卡状态:发送 AT+CPIN? 查询 SIM 卡状态,直到收到+CPIN: READY,如果 10s 内没有收到建议重启模块。这个到是有第7管脚,接出来了,按键可以拉低来启动的。

        这些基本上哪种模式都是这样的呢。

        FTPGET 命令使用方法:

        这个是连接到了GPRS网络了;至于AT+SAPBR=这个指令为啥这么写,本文档还真没标注,所以我就用百度查了,之后如果文档没有的,我都百度一下,

        AT+SAPBR=命令用于设置APN(接入点名称)参数‌。该命令是AT指令的一部分,用于配置模块的接入点名称,以便模块可以通过指定的APN连接到互联网。

        AT+SAPBR=命令的基本用法

  1. 设置APN‌:使用AT+SAPBR=3,1,"APN","<APN名称>"命令来设置接入点名称。例如,AT+SAPBR=3,1,"APN","CMNET"表示设置APN为CMNET‌。
  2. 激活PDP上下文‌:设置完APN后,需要使用AT+SAPBR=1,1命令来激活PDP上下文,以便模块可以建立数据连接‌。
  3. 查询APN配置‌:可以使用AT+CGDCONT?命令来查询当前配置的APN信息‌。

        

        cid不知道是什么,不过网上也查了,可能因为合宙Air780EP的文档太大,2160页,我没看全的原因。感觉上就是一种标识吧。第二个参数是连接,第三个是IP,基本上那个就是信息也找到了。继续后面的。

        这里就是设置自己的信息了。服务器的地址等一系列的信息,这是根据自己服务器设定的,应该是不变的,也就是需要使用AT&W来保存参数,即使重启以后也不会改变,当然测试的时候也以根据自己建设的服务端来修改,不过毕竟还是不变的,所以也可以使用AT&W来保存信息。可能需要自己搭建一个服务器了。不知道虚拟机怎么样,行不行,这个还真的,难道要租一个云来用吗?

   这一串返回的信息,需要详细分析一下。    

        这个任务结束了,退出,AT+FTPQUIT//主动结束 FTP 会话这个备注了就是退出回话的指令呢

        嗯,这个有关FTPGET的举例就结束了。

        对于FTP知道是通讯协议不过具体是什么还真不太清楚。下面网上扒下来的:

        文件传输协议(File Transfer Protocol,FTP)是一种在网络中进行文件传输的广泛使用的标准协议。作为网络协议中的基础工具,FTP允许用户通过客户端软件与服务器进行交互,实现文件的上传、下载和其他文件操作。FTP工作在OSI模型的应用层,通常使用TCP作为其传输协议,确保数据传输的可靠性和顺序性。

        协议概述

        FTP是用于在计算机网络中进行文件传输的标准协议。它基于客户-服务器模型,并依赖于TCP协议来确保数据传输的可靠性和有序性。FTP协议允许用户通过客户端软件连接到FTP服务器,进行文件的上传、下载、删除、重命名等操作。FTP在网络应用层(OSI模型的第七层)工作,为各种文件传输需求提供了广泛的支持。

        工作原理

        FTP的工作原理基于两个主要连接:控制连接和数据连接。控制连接是客户端 [3]与服务器 [4]之间的主要通道,用于发送FTP命令和接收服务器响应。数据连接则用于实际文件数据的传输。在FTP会话中,控制连接在整个过程中保持打开状态,而数据连接则在每次文件传输完成后关闭。

        FTP协议使用TCP的21端口作为控制连接的默认端口。当客户端连接到FTP服务器时,它们首先通过控制连接建立连接,并发送用户认证信息(如用户名和密码)。一旦认证成功,客户端就可以使用FTP命令来请求服务器执行各种文件操作。服务器在接收到命令后,通过控制连接返回相应的响应,并在需要时建立数据连接来传输文件数据。

        工作模式

        FTP有两种工作模式:主动模式和被动模式。在主动模式下,客户端向FTP服务器的数据端口(默认为20)发起连接请求。服务器接收到请求后,从自己的数据端口向客户端发送数据。然而,在某些网络环境中(如客户端位于防火墙或NAT之后),主动模式可能无法正常工作,因为防火墙可能会阻止客户端发起的入站连接请求。为解决主动模式在特定网络环境中的限制,FTP引入了被动模式。在被动模式下,客户端向FTP服务器的控制端口(默认为21)发送PASV(Passive)命令,请求服务器开启一个随机的数据端口进行监听。然后,服务器会返回一个包含该数据端口号的响应给客户端。客户端接收到响应后,主动向服务器返回的数据端口发起连接请求,从而建立数据连接。被动模式允许客户端从任何位置发起连接请求,因此更适合于穿越防火墙和NAT环境的文件传输。

        用户分类

        FTP用户分为三类:Real账户、Guest用户和Anonymous用户。Real账户是拥有独立登录权限的FTP用户。他们可以访问自己的主目录,并可以执行各种文件操作(如上传、下载、删除等)。Real账户通常具有高级权限和广泛的操作能力。Guest用户是权限受限的FTP用户。他们通常只能访问自己的主目录,并且可能无法执行某些文件操作(如删除或重命名)。Guest用户的权限和操作范围由FTP服务器管理员进行配置和限制,以增加服务器的安全性。Anonymous用户是未注册但允许访问公开资源的FTP用户。他们通常使用“anonymous”作为用户名,并提供一个有效的电子邮件地址作为密码进行登录。Anonymous用户可以访问服务器上的公共目录和文件,但他们的权限和操作范围受到限制。

        命令和响应

        FTP协议定义了一系列标准命令,如USER、PASS、LIST、RETR、STOR等,用于执行用户认证、文件列表获取、文件检索和文件存储等操作。每个命令都有一个对应的响应码,这些响应码遵循RFC 959标准,其中1xx表示信息性响应,2xx表示成功响应,3xx表示需要更多信息才能完成请求,4xx表示客户端错误,5xx表示服务器错误,如150表示文件状态正常,准备打开数据连接,226表示命令成功完成,等等。这些响应码不仅帮助客户端了解命令执行的状态,还能协助开发者进行故障排查。

        文件传输类型

        FTP支持三种文件传输类型:ASCII、二进制和EBCDIC。ASCII模式用于文本文件的传输,它会在传输过程中自动转换行尾字符(如从CR LF转换为LF),以确保文件在不同操作系统之间的兼容性。二进制模式用于图像、音频、视频等非文本文件传输,它会保持文件的原始二进制数据不变,确保文件的完整性。EBCDIC模式主要用于IBM的大型机系统,它使用EBCDIC字符集进行文件传输。

        安全性

        FTP的安全性是其主要缺点之一,因为FTP传输的数据(包括用户名和密码)未加密,容易受到窃听和中间人攻击。为了解决这个问题,出现了FTPS和SFTP等安全协议,它们在传输数据时使用加密技术保护数据的机密性和完整性。FTPS在FTP协议的基础上增加了SSL/TLS加密技术,以确保数据传输过程中的机密性和完整性。SFTP基于SSH协议的文件传输协议,提供了加密的文件传输、文件访问和文件管理功能,安全性更高。

        传输效率

        FTP的传输效率受到多种因素的影响,包括网络带宽、文件大小、传输模式和网络延迟。网络带宽越高,FTP的传输速度越快。大文件往往需要更长的传输时间。主动模式和被动模式的选择可能会影响传输效率,在高延迟或防火墙限制的网络环境中,被动模式可以减少连接建立的时间,从而提高传输效率。此外,FTP支持多个并发连接,可以同时传输多个文件或文件的不同部分,从而提高整体传输效率。

        错误处理

        FTP协议定义了一系列错误代码,用于在出现问题时通知客户端。这些错误代码不仅帮助客户端开发者诊断问题,还能指导他们采取相应的解决措施。例如,451错误可能表示当前服务器不可用,客户端可以稍后重试;而551错误则可能表示请求的文件不存在或无法访问。

        匿名FTP

        匿名FTP服务允许没有特定授权的用户访问服务器上的公开资源。这种服务通常用于软件分发、公开文档和图片等资源。用户只需使用“anonymous”作为用户名,并提供一个有效的电子邮箱地址作为密码即可登录。这为资源共享和访问提供了一种简便而灵活的方式。

        FTP在企业数据管理中的应用

        1) 内部文件共享:在企业环境中,FTP服务器是内部文件共享的核心工具。员工可以轻松地通过FTP客户端上传、下载、修改和访问各种项目文档、设计图纸、市场分析报告等关键文件。这不仅可以提高工作效率,还确保了文件的安全性和可追溯性。

        1) 数据备份与恢复:企业可以定期将关键数据备份到远程FTP服务器上,以防止因本地设备故障、自然灾害或人为错误导致的数据丢失。同时,FTP也支持文件的历史版本管理,使得在数据恢复时可以选择合适的版本进行恢复。

        FTP在网站内容管理中的应用

        1) 网站内容更新:网站管理员可以使用FTP客户端将更新后的网页文件、图片、视频等内容上传到服务器上,确保网站内容的实时性和准确性。FTP还支持断点续传功能,即使在网络不稳定的情况下也能保证文件上传的完整性。

        2) 远程服务器管理:通过FTP客户端,网站开发者和系统管理员可以轻松地查看、编辑和删除服务器上的文件,进行网站的维护和故障排除。此外,FTP还支持多用户并发访问和权限管理功能,确保了服务器文件的安全性和可控性。

        FTP在教育领域的应用

        1) 教育资源分发:教育机构可以利用FTP服务器给学生和教职工分发各种教育资源,如课程资料、教学软件、研究数据等。通过FTP的下载功能,师生可以随时随地访问所需资源,支持在线学习和远程教学。

        2) 学术研究协作:在学术研究领域,不同研究机构之间可以通过FTP共享大型数据集、实验报告和论文等研究成果,促进学术交流和合作。同时,FTP也支持文件的版本控制和权限管理功能,确保了共享数据的安全性和可追溯性。

        FTP在软件开发中的应用

        1) 代码和文档共享:在软件开发过程中,开发团队需要共享源代码、开发文档、测试报告等资源。FTP提供了高效的共享方式,使得团队成员可以方便地访问和修改这些资源。同时,FTP还支持文件锁定和版本控制功能,避免多人同时修改同一文件而产生冲突。

        2) 软件分发:软件开发者在完成软件开发后,需要将软件安装包分发给用户。FTP提供了一个可靠的分发平台,开发者可以将软件包上传到FTP服务器上,并设置访问权限和下载链接。用户可以通过FTP客户端或Web浏览器下载软件包并进行安装。

        FTP在个人用户中的应用

        1) 个人文件存储:个人用户可以利用FTP将个人文件备份到远程服务器上,以防止本地设备故障或数据丢失。通过FTP的上传和下载功能,用户可以随时随地访问自己的文件,实现了数据的云存储和共享。

        2) 共享与协作:个人用户还可以通过FTP与朋友、家人或工作伙伴共享照片、视频和文档等文件。通过设置共享文件夹和访问权限,用户可以方便地与他人分享自己的文件和资料,促进信息的交流和协作

        这个从安全性考虑,好像可以排除这个通讯模式,虽然只是位置的问题。不过看各种电影那样,还是不要让别人知道的为好,这个我第一了解的通讯模式,需要查看其他的通讯模式,再来研究使用哪种通讯好。这个属于局域网里面的通讯,毕竟比较方便吧。

        类似概念辨析
        在文件传输领域,除了FTP外,还有其他几种常见的协议和技术,它们各有特点和应用场景:
        1) HTTP/HTTPS:超文本传输协议(HTTP)用于Web数据的传输,而HTTPS是HTTP的安全版本,使用SSL/TLS进行加密。与FTP相比,HTTP/HTTPS更多用于网页内容的传输,且HTTPS提供了数据加密。
        2) SFTP:安全文件传输协议(SFTP)是一种基于SSH的文件传输协议,可以进行加密传输,具体更高的安全性,适用于需要安全传输的场景。
        3) TFTP:简单文件传输协议(TFTP)是一种轻量级的文件传输协议,基于UDP,适用于小规模和嵌入式系统的文件传输,但不提供安全性和可靠性。
        4) SMB:服务器消息块(SMB)是一种用于局域网内文件共享和打印服务的协议,与FTP相比,SMB更侧重于文件共享和网络资源管理。

        补:我还以为所有的FTP命令了,后来研究MQTT才发现只是第一个FTPGET 指令而已,不过因为暂时还没决定用那个通讯协议,所以这个先放在这里,之后需要其他的指令再慢慢添加。

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

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

相关文章

[A-29]ARMv8/v9-GIC-中断子系统的安全架构设计(Security/FIQ/IRQ)

ver0.1 前言 打开这篇文章的时候,我们已经为每一个中断信号规划一条路径,在外设和PE-Core之间建立了消息通道,外设有紧急的情况下可以给SOC中的大哥打报告了。下面就把接力棒就交到了CPU手里了,但是PE-Core要交给那个Exception Level以及Security下运行的软件处理呢?本文…

PWM频率测量方法

测量PWM&#xff08;脉宽调制&#xff09;信号的频率是嵌入式系统中的常见需求&#xff0c;尤其是在电机控制、LED调光、传感器信号处理等场景中。 在这里介绍两种测量PWM频率的方法&#xff1a;测频法与测周法。 1、测频&#xff08;率&#xff09;法 原理&#xff1a;在闸门…

c++多态

1.多态的概念 通俗来说&#xff0c;就是多种形态&#xff0c;具体点就是去完成某个行为&#xff0c;当不同的对象去完成时会产生出不同 的状态。 2.多态的定义及实现 2.1多态的构成条件 多态是在不同继承关系的类对象&#xff0c;去调用同一函数&#xff0c;产生了不同的行为…

MySQL分表自动化创建的实现方案(存储过程、事件调度器)

《MySQL 新年度自动分表创建项目方案》 一、项目目的 在数据库应用场景中&#xff0c;随着数据量的不断增长&#xff0c;单表存储数据可能会面临性能瓶颈&#xff0c;例如查询、插入、更新等操作的效率会逐渐降低。分表是一种有效的优化策略&#xff0c;它将数据分散存储在多…

Deepseek的RL算法GRPO解读

在本文中&#xff0c;我们将深入探讨Deepseek采用的策略优化方法GRPO&#xff0c;并顺带介绍一些强化学习&#xff08;Reinforcement Learning, RL&#xff09;的基础知识&#xff0c;包括PPO等关键概念。 策略函数&#xff08;policy&#xff09; 在强化学习中&#xff0c; a…

cent6.6安装rabbitmq

cent6.6安装rabbitmq 如果对运维课程感兴趣&#xff0c;可以在b站上、A站或csdn上搜索我的账号&#xff1a; 运维实战课程&#xff0c;可以关注我&#xff0c;学习更多免费的运维实战技术视频 1.在服务器192.168.231.128上安装rabbitmq 1)安装编译工具 [rootlocalhost ~]# …

ubuntu 更新24LTS中断导致“系统出错且无法恢复,请联系系统管理员”

22LTS to 24LTS 更新过程中手jian把更新程序controlC导致的。 解决 目前企图完成更新来恢复&#xff0c;重启后有软件包冲突&#xff0c;sudo apt upgrade报冲突。无法进行。 将原来source.list重新 sudo dpkg --configure -a sudo apt install -f 这些都不管用。还是显示gno…

Databend x 沉浸式翻译 | 基于 Databend Cloud 构建高效低成本的业务数据分析体系

「沉浸式翻译」是一个非常流行的双语对照网页翻译扩展工具&#xff0c;用户可以用它来即时翻译外文网页、PDF 文档、ePub 电子书、字幕等。它不仅可以实现原文加译文实时双语对照显示&#xff0c;还支持 Google、OpenAI、DeepL、微软、Gemini、Claude 等数十家翻译平台服务的自…

LabVIEW纤维集合体微电流测试仪

LabVIEW开发纤维集合体微电流测试仪。该设备精确测量纤维材料在特定电压下的电流变化&#xff0c;以分析纤维的结构、老化及回潮率等属性&#xff0c;对于纤维材料的科学研究及质量控制具有重要意义。 ​ 项目背景 在纤维材料的研究与应用中&#xff0c;电学性能是评估其性能…

哈工大:LLM高质量嵌入模型KaLM-Embedding

&#x1f4d6;标题&#xff1a;KaLM-Embedding: Superior Training Data Brings A Stronger Embedding Mode &#x1f310;来源&#xff1a;arXiv, 2501.01028 &#x1f31f;摘要 &#x1f538;随着检索增强生成在大型语言模型中的盛行&#xff0c;嵌入模型变得越来越重要。尽…

Baklib打造高效内容管理平台提升协作与创作体验

内容概要 随着信息化时代的迅猛发展&#xff0c;高效的内容管理已成为各类团队日常工作中不可或缺的一部分。Baklib的内容管理平台正是应运而生&#xff0c;旨在为团队提供一个集协作、创作与管理于一体的解决方案。该平台通过其直观的界面和一系列创新功能&#xff0c;帮助用…

通过高效的侦察发现关键漏洞接管整个IT基础设施

视频教程在我主页简介或专栏里 在这篇文章中&#xff0c; 我将深入探讨我是如何通过详细分析和利用暴露的端点、硬编码的凭据以及配置错误的访问控制&#xff0c;成功获取目标组织关键IT基础设施和云服务访问权限的全过程。 我们先提到目标网站的名称 https://*sub.domain*.co…

【Linux笔记】Day4

关机重启 登录注销 注意用户名只能是小写 用户管理 pwd显示当前在哪个目录下&#xff1a; 删除用户 连带着用户文件夹都删掉 高权限用户切换到低权限用户无需输入密码 clear能把当前屏幕显示清掉 如果之前加的用户没有指定组&#xff0c;它会创建一个和用户同名的组&a…

A7. Jenkins Pipeline自动化构建过程,可灵活配置多项目、多模块服务实战

服务容器化构建的环境配置构建前需要解决什么下面我们带着问题分析构建的过程:1. 如何解决jenkins执行环境与shell脚本执行环境不一致问题?2. 构建之前动态修改项目的环境变量3. 在通过容器打包时避免不了会产生比较多的不可用的镜像资源,这些资源要是不及时删除掉时会导致服…

一个简单的自适应html5导航模板

一个简单的 HTML 导航模板示例&#xff0c;它包含基本的导航栏结构&#xff0c;同时使用了 CSS 进行样式美化&#xff0c;让导航栏看起来更美观。另外&#xff0c;还添加了一些 JavaScript 代码&#xff0c;用于在移动端实现导航菜单的展开和收起功能。 PHP <!DOCTYPE htm…

Winform如何取消叉号,减号和放大(两种)

方法一: 找到窗体属性 MaximizeBoxFalse; MinimizeBoxFalse; ControlBoxFALSE; 方法二: 点击Form 在From里面找到Form-Closing 这个事件 写入 if(e.CloseReasonCloseReason.UserClosing) { MessageBox.Show("对不起,你不能关闭") e.Cancel true; }

OpenCV:开运算

目录 1. 简述 2. 用腐蚀和膨胀实现开运算 2.1 代码示例 2.2 运行结果 3. 开运算接口 3.1 参数详解 3.2 代码示例 3.3 运行结果 4. 开运算应用场景 5. 注意事项 6. 总结 相关阅读 OpenCV&#xff1a;图像的腐蚀与膨胀-CSDN博客 OpenCV&#xff1a;闭运算-CSDN博客 …

MIMIC-IV数据部署(博主较忙,缓慢更新)

1. 用到的数据准备 在下面的网站&#xff0c;注册、申请、推荐人从邮箱里帮忙确认。 通过后&#xff0c;拉到页面的最下面。把那个将近10个G的文件给下载下来。 可以在晚上睡觉的时候下载&#xff0c;第二天早上起来“收数据”。 MIMIC-IV v3.1 2. 用到的软件准备 7-zip …

二叉树-堆(补充)

二叉树-堆 1.二叉树的基本特性2.堆2.1.堆的基本概念2.2.堆的实现2.2.1.基本结构2.2.2.堆的初始化2.2.3.堆的销毁2.2.4.堆的插入2.2.5.取出堆顶的数据2.2.6.堆的删除2.2.7.堆的判空2.2.8.堆的数据个数2.2.9.交换2.2.10.打印堆数据2.2.11.堆的创建2.2.12.堆排序2.2.13.完整代码 3…

省市区三级联动

引言 在网页中&#xff0c;经常会遇到需要用户选择地区的场景&#xff0c;如注册表单、地址填写等。为了提供更好的用户体验&#xff0c;我们可以实现一个三级联动的地区选择器&#xff0c;让用户依次选择省份、城市和地区。 效果展示&#xff1a; 只有先选择省份后才可以选择…