• 2024-07-06python socket模块实现上传文件到服务器
    socket模块文件上传案例catserver.py#-*-coding:UTF-8-*-importsocketsock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)sock.bind(('0.0.0.0',8001))#127.0.0.1或查看自己局域网本地IP地址sock.listen(1)conn,addr=sock.accept()#接收
  • 2024-07-02CH5XX串口中断接收超时
    1.串口1初始化:/*配置串口1:先配置IO口模式,再配置串口*/GPIOA_SetBits(GPIO_Pin_9);GPIOA_ModeCfg(GPIO_Pin_8,GPIO_ModeIN_PU);//RXD-配置上拉输入GPIOA_ModeCfg(GPIO_Pin_9,GPIO_ModeOut_PP_5mA);//TXD-配置推挽输出,注意先让IO口输出高电平U
  • 2024-06-22粘包问题、socketserver模块实现并发
    TCP协议------------黏包现象11.服务端连续执行三次recv22.客户端连续执行三次send3问题:服务端一次性接收到了客户端三次的消息该现象称为"黏包现象"4--------------------------------------5黏包现象产生的原因:61.收消息的时候,不知道每次接收的数据到
  • 2024-06-11http与cJSON练习
    http与cJSON练习/*****************************************************************************************************weather_test.c*练习tcp连接,与http协议,调用服务器接口,实现获取特定城市的天气信息,并用cJSO
  • 2024-06-10AT32实现的esp8266 TLink上报下发
    本文采用芯片at32f435,由两部分组成,Tlink平台相关设置,设备代码相关。硬件相关可以理解成WiFi模块连接的串口,本文函数名是uart2但是实际上用的是Com3,可能是老师也是移植的原因。AT指令含义相关请在at指令技术文档查询或相关经验帖查看,关键词"esp8266AT指令",这里不再赘述,请根据
  • 2024-05-30golang开发 gorilla websocket的使用
    很多APP都需要主动向用户推送消息,这就需要用到长连接的服务,即我们通常提到的websocket,同样也是使用socket服务,通信协议是基本类似的,在go中用的最多的、也是最简单的socket服务就是gorilla/websocket,它有21.1K的star,足以说明它的受欢迎程度,它的github地址是https://github.com/g
  • 2024-05-22三次握手和四次挥手、UDP、TCP、粘包问题、模块回顾
    【一】三次握手和四次挥手【1】TCP协议的三次握手和四次挥手TCP协议位于osi七层协议中的传输层(1)使用三次握手来建立连接一次握手:客户端发送带有SYN(SEQ=x)标志的数据包---》服务端,然后客户端进入SYN_SEND状态,等待服务器的确认。二次握手:服务端发送带有SYN+A
  • 2024-05-15通信循环,粘包现象
    Ⅰ通信循环【一】UDP协议模型【1】UDP模板#服务端importsocketip_port=('127.0.0.1',9000)BUFSIZE=1024udp_server_client=socket.socket(socket.AF_INET,socket.SOCK_DGRAM)udp_server_client.bind(ip_port)whileTrue:msg,addr=udp_server_clien
  • 2024-05-15read() 和revc()
    `read()`和`recv()`函数都是用于从套接字(socket)中接收数据的函数,但它们在不同的情况下使用略有不同,主要区别在于:1.**函数签名和参数**:-`read()`函数是POSIX标准定义的,它的函数签名通常是`ssize_tread(intfd,void*buf,size_tcount)`,其中`fd`是文件描述符,`buf`
  • 2024-05-15扰乱网络爬虫的一种非绝对方法,其实别的办法也行,但工作量可能会有点大
    usingnamespacestd;#include<stdlib.h>#pragmacomment(lib,"WS2_32.lib")#include<iostream>#include<Windows.h>SOCKETg_socket;SOCKETg_socket2;SOCKETg_socket3;SOCKETg_socket4;SOCKETg_socket5;SOCKETg_socket6;SOC
  • 2024-04-04TCP客户端及服务器端开发实践
    一、TCP客户端及服务器端开发实践1、TCP网络应用程序开发分类①TCP客户端应用程序开发②TCP服务器端应用程序开发客户端程序是指运行在用户设备上的程序,服务端程序是指运行在服务器设备上的程序,专门为客户端提供数据服务。那如何记忆呢?主动发起建立连接请求的是客户端
  • 2024-03-27Python篇之网络编程,实现简单的服务端和客户端的内容传输
    本小节内容:实现简单的信息交流文章目录一、Socket介绍二、客户端与服务端三、在python中实现网络通信1.服务端2.客户端3.连接测试一、Socket介绍socket(简称套接字)模块是其内置的标准库之一,它实现了BSDsocketsAPI,允许开发者在Python程序中进行网络通
  • 2024-03-24C语言UNIX域套接字CS模型
    实验目标:1实现基于流的unix域套接字通信cs模型2实现基于数据报的unix域套接字通信cs模型3可以观察到CS两端的完整启动退出流程,为了实现这一目标仅进行一次通信实验心得:1使用unlink避免地址冲突清理资源2 传统udp在首次sendto时系统临时分配端口,在套接字关闭|程
  • 2024-03-23zynq Lwip学习笔记-recv_callback函数
    文章目录前言一、概述二、函数体三调用位置前言最近在学习zynq中的lwip协议族,找不到很好的记笔记的地方,所以就用csdn记录一下自己的学习过程。现在对lwip不熟悉,只是把官方的lwipechoserver例程跑了一下,能跑通就一点点的照着学了,笔记都是根据自己的理解写的,而且部
  • 2024-03-19【SZU计算机网络实验】实现流式视频传输
    前言一百年没有更新博客了,都怪开学一堆杂活(x那就顺手把实验报告转到这边吧owo本实验为SZU原创实验,实验开发团队的老师和助教们都很有耐心。。大赞,环境没配好去群里问是秒回的相关资料:实验文档:计算机网络课程综合实验平台(snrc.site)一、实验介绍该实验主要实现了一
  • 2024-03-18ZYNQ AXI 片上互联的再思考:AXI GP口/axi lite
    之前笔记:Zynq上的存储器接口与差分时钟与DDR3_zynqddr3-CSDN博客使用AxiLite接口访问寄存器列表作为缓冲区_两个参数共用axilite中一个寄存器-CSDN博客PS与PL互联与SCU以及PG082_pl能不能用ps-gtr-CSDN博客ZYNQ上互联的AXI主要有三种:AXILITEAXIHPAXIACP AXILITE
  • 2024-03-14angr使用记录
    由于毕设需要,这几天在使用angr符号执行自动化挖掘格式化字符串漏洞,但是对angr的了解不多,导致在使用的时候屡屡碰壁,在此记录一下。本来写了一个简单的通用检测脚本,但是在使用脚本对CWE-134的一个样例(SARD)进行分析时,发现无法找出漏洞点。检测脚本测试格式化字符串漏洞的逻辑很简单
  • 2024-03-13CH395实现FTP_Client应用(上)
    测试环境:CH30v307RCT6+CH395Q,PC端工具:XLight(FTP服务器,语言为英文)1.主要代码说明(1)main.c(2)CH395FTP.c工程CH395FTP.c99行CH395_FTPInterCmd函数执行了四个主要的流程,包括登录、搜索目录、下载文件、上传文件。在该函数中可以修改想要访问的文件夹和文本文档名称,也可修改想
  • 2024-03-12[Rust] Thread 5: Message passing by using channel
    Achannelhastwohalves:atransmitterandareceiver.Thetransmitterhalfistheupstreamlocationwhereyouputrubberducksintotheriver,andthereceiverhalfiswheretherubberduckendsupdownstream.Onepartofyourcodecallsmethodsonthe
  • 2024-03-04time模块实现进度条
    显示进度条defmyprocess(percent):ifpercent>1:percent=1#打印对应的#号数量*"#"=>字符串#号效果strvar=int(percent*50)*"#"#进行打印%%=>%print("\r[%-50s]%d%%"%(strvar,percent*100),end="")接受数据rec
  • 2024-02-07readv、recv和recvmsg三个函数的区别
    目录概述readv示例(文件I/O)recv示例(套接字通信)recvmsg示例(套接字通信)概述readv、recv和recvmsg三个函数都是用于从文件或套接字接收数据的函数,但它们在功能和使用场景上存在一些区别。readv函数:readv函数主要用于从文件描述符读取数据到多个缓冲区中。它允许在
  • 2024-01-31python网络编程(二)模拟ssh远程执行命令
    1、项目需求:要实现一个像ssh远程连接工具一样,在终端输入命令,返回对应的结果。比如window的dos命令:dir:查看目录下的文件ipconfig:查看网卡信息tasklist:查看进程列表linux的命令:ls:查看目录下的文件ifconfig:查看网卡信息ps-aux:查看进程列表2、项目分析:这
  • 2024-01-16网络编程之粘包问题
    粘包问题只有TCP有粘包现象,UDP永远不会粘包什么是粘包存在于客户端接收数据时,不能一次性收取全部缓冲区中的数据.当下一次再有数据来时,缓冲区中剩余的数据会和新的数据'粘连'在一起.这就是粘包现象。##什么是粘包?存在于TCP/IP协议中数据粘连在一起。##socket中造成粘
  • 2023-12-21ESP32在Arduino环境下使用QUEUE接收串口数据帧
    ESP32在Arduino环境下的串口数据帧接收测试平台ESP32-WROOM测试语言Arduino@PlatformIO注意事项需要添加Queue的库函数作者:SMFSWPlatformIO环境配置文件-platformio.ini[env:esp32doit-devkit-v1]platform=espressif32board=esp32doit-devkit-v1framewo
  • 2023-12-20C++聊天集群服务器解决客户端注销登录问题
    客户端如何处理注销登录问题?问题描述:​ 在客户端登录后进行注销选择,然后重新登录刚才注销的账号,直接卡死。注意这是概率发生,因为是主线程和子线程抢服务器发送的信息,只有子线程抢到才会发生卡死问题产生原因分析:​ 前置条件:主线程循环等待用户输入选择(第一张图是死循环,send