网络编程之socket流程解析

软硬件协同设计的大小端问题 缘起 最近需要在soc系统内做协处理器,加速AES加密运算,寄存器一次读取32bit,AES一次处理128bit,因此在数据拼接的时候,需要考虑大小端的问题,特来记录一番。 一、什么是大小端 大小端的问题发生在寄存器和内存间传递数据,这点非常重要,很多地方简单地说是数据存储方式,其实不准确。追根溯源,大小端问题是在设计load,store指令的时候考虑的,因此本质是寄存器和内存交互的问题,其他地方不会发生。 比如c语言里定义一个变量int a=ox1234,那么查看在线汇编平台的对应汇编代码: # 给2号寄 阅读详情

服务端阻塞:
1、等待客户端来连接。 

2、等待客户端发来数据。 


客户端阻塞:
1、一直在连接,直到连接成功才往下执行其他代码 

2、等待服务端发来数据。

注:不要相互等待,会互相阻塞,形成死锁。

socket之服务端:

import socket
# 创建socket对象
server=socket.socket()

# 绑定IP和端口
server.bind(('自己的ip',8000))

# 后边最多可以等5个人
server.listen(5)

# 等待客户端来连接,如果没人来就傻傻的等待。
# conn是客户端和服务端连接的对象。服务端以后要通过这个对象进行收发数据
# addr是客户端的地址信息。
# 阻塞,只要有客户端来连接,就获取客戸端连接,然后开始进行通信
conn,addr = server.accept()
# print('有人来连接啦',conn,addr)

# 通过对象去取客户端发来的消息
# 1024表示:服务端通过连接对象取数据时:一次性最多取1024字节
data = conn.recv(1024)
print(data)

conn.send(b"stop")

# 给客户端断开连接
conn.close()

# 关闭服务端的服务
server.close()

socket之客户端:

import socket
client = socket.socket()

# 客户端向服务端发起连接请求
# 阻塞,去连接,直到连接成功后才会继续向下走。
client.connect(('自己的ip',8000))

# 连接上服务端后,向服务端发送消息
client.send(b'hello')

# 客户端等待服务端给他发送消息
data = client.recv(1024)
print(data)

# 关闭自己
client.close()

Discuz IIS上传附件大于28M失败报错Upload Failed.修改maxAllowedContentLength(图文教程) 下图:Discuz X3.5的系统信息,上传许可为1024MB(1GB)论坛为局域网论坛,仅供内部同事交流使用!使用官方最新的Discuz! X3.5 Release 20231221 UTF-8 下图:选择上传附件(提示可以最大上传100M) 下图:模拟上传84M的文件( 阅读详情

相关推荐

手把手教你离线部署bert-base-uncased模型(附完整文件清单)

本文提供了一份详尽的bert-base-uncased模型离线部署指南。针对严格内网或无网络环境,文章不仅列出了包括config.json、pytorch_model.bin在内的完整必需文件清单,还详细解释了每个文件的作用,并给出了使用snapshot_download工具或手动下载的两种文件获取方法。重点阐述了如何正确设置本地路径、编写健壮的加载代码,并通过多层次验证确保模型在离线环境下成功运行,有效解决了部署过程中常见的文件缺失和路径错误问题。

weixin_29034963的博客 322

socket编程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.youkuaiyun.com/Julialove102123/article/details/79776296 实现一个socket至少要分以下几步,(伪代码)   Socket socket = getSocket(type = "TCP") #设定好协议类型 connect(socket, addr...

weixin_42506747的博客 259

机器学习预测土壤养分:从电导率、pH到随机森林与神经网络的农业实践

在智慧农业与精准农业领域,机器学习已成为处理复杂农业数据、挖掘潜在规律的关键技术。其核心原理在于通过算法从多维数据中自动学习特征与目标变量之间的映射关系,尤其擅长捕捉非线性关联。这项技术的核心价值在于能够将传统上依赖昂贵、耗时实验室分析的问题(如土壤养分检测),转化为基于易获取传感器数据(如电导率、pH值)的快速、低成本预测任务,为农业生产的实时决策与资源优化提供了全新可能。其典型应用场景包括作物生长监测、产量预测以及精准施肥管理等。本文聚焦于利用随机森林和神经网络等回归算法,构建通过土壤物理参数预测氮磷钾

weixin_33693070的博客 670

Java 网络编程(Socket) - 连接异常断开情况 - Server 断网(断网测试、流程解析、原理解析)

Java 网络编程(Socket) - 连接异常断开情况 - Server 断网(断网测试、流程解析、原理解析)

weixin_52173250的博客 998

彻底解决0x80070005错误代码:全面分析与实战指南

0x80070005错误代码虽然令人头疼,但通过上述方法,我们完全有能力将其攻克。从检查磁盘空间、设置账号权限,到运行疑难解答和系统文件检查器,再到调整相关服务状态,每一步都是解决这一问题的关键。希望本文能为你提供有力的帮助,让你在使用Windows系统的过程中更加顺畅无忧。

nntxthml的博客 6941

NumPy 与 Pandas 的详细应用(含实例)

本文系统介绍了Python数据分析中NumPy和Pandas两大核心库的应用。NumPy专注于高效数值计算,提供多维数组和向量化运算功能;Pandas则擅长结构化数据处理,支持数据清洗、分组统计等操作。文章详细讲解了库的安装、基础操作(数组/DataFrame创建、索引切片)、进阶功能(缺失值处理、分组聚合),并通过电商销售分析案例演示了实际应用场景。最后总结了二者的协同优势:NumPy负责底层数值计算,Pandas处理高级数据操作,配合使用可显著提升数据处理效率。建议读者从基础操作入手,结合实际案例练习,

weixin_42030577的博客 2300

socket网络编程,TCP/UDP 模型C/S 编程流程解析

一、网络编程 在实际项目开发的过程中,我们常需要进行网络编程,用网络能够把多方链接在一起,然后可以进行数据传递。无论我们使用的语言是C++、Java还是Python语言,现今他们都有对应的封装类可以使用,大大提高编程效率。然而,首要的还是要理解socket网络编程的基本原理和流程。 socket(网络套接字) 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程...

qq_41969790的博客 1009

simulink可控励磁同步电机模型分析

他励同步电机模型分析

qq_26681609的博客 5552

C++ TCP网络编程入门:从Socket创建到连接关闭的完整流程解析

网络编程是计算机通信的基础,其核心在于理解数据如何在网络节点间可靠传输。TCP(传输控制协议)作为面向连接的可靠传输层协议,通过三次握手建立连接、四次挥手断开连接,确保了数据的有序和完整送达。在工程实践中,掌握TCP通信流程对于开发客户端/服务器应用、实现远程数据交换具有重要价值。无论是构建在线游戏、即时通讯工具还是分布式系统,TCP都是底层通信的基石。本文聚焦C++环境下的TCP编程,通过解析socket、bind、listen、accept、connect等核心函数,详解一对一阻塞式通信模型,并针对常见

weixin_30431445的博客 282

Calibre电子书阅读器个性化样式定制指南

本文详细介绍了如何通过Calibre电子书阅读器的用户样式表功能进行深度个性化样式定制。从修改全局字体、行距、背景配色(包括深色/浅色模式)到美化代码块、引用等特殊元素,本指南提供了完整的CSS代码示例与实战技巧,帮助用户打造专属的舒适阅读环境,显著提升电子书阅读体验。

vv45678的博客 921

AC360变频器使用案例

AC360变频器使用案例!

QING_BOSS的博客 518

Socket网络编程基础与实例

Socket网络编程 部分内容参考于韦东山团队编写的《IMX6ULL应用编程电子书初稿(500页)》 1 为什么要进行网络编程 socket网络编程是通过网络来进行通信,可以使数据的传输距离远,可靠性强。(关于socket网络编程的目的本人还是未能通透的理解其中的内涵,如果有读到本篇博文的读者对socket网络编程有自己的理解,可以的话还请在评论区留言或者私信我,本人将感激不尽????) 网络编程分为客户端(Client)编程和服务端(Server)编程;客户端是主动地发起请求,服务器端是被动响应请求。 2

com852的博客 1244

全国充电站分布数据

CnOpenData推出的充电站数据覆盖全国34个省份的3万条数据,包含充电站名称、省份名称、省份代码、商圈、经纬度等地理信息以及商业类型、评分、消费等衍生信息,能为城市规划、环境科学、市场分析、技术发展和社会经济研究等多个领域提供宝贵的数据支持。

Sunny9qx的博客 4034

Socket编程和网络编程的基础知识

网络编程是计算机之间通过。

m0_37538027的博客 328

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

python开发之Socket网络编程

SOCKET网络编程一、SOCKET基础二、SOCKET通信流程1. 流程描述:2. 相关方法及参数介绍:三、实例(屌丝追女神的故事)1. 故事1:(一次通信)2. 故事2:(多次通信)3. 故事3:(一个client聊完退出了server才能跟下一个client聊)4. 聊天并发实例:5. 粘包问题及解决:6. 文件上传实例:四、socketserverServer类: 一、SOCKET基础 ...

冠军阿狗的博客 729

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

网络编程之 socket编程

socket编程(基于linux下的网络编程) 提起网络编程那么我们就不得不说一下socket编程了(本博客主要是围绕下面这本书展开的)。 感谢bingo大佬提供的书籍 链接: https://pan.baidu.com/s/16EXstBLrT6eFYvOB-2WcTA 提取码:vynv 复制这段内容后打开百度网盘手机App,操作更方便哦 其实博主认为socket编程就是套路,很多代码都是可重用的。而且步骤很固定,下面博主给出一个流程(事实上网络编程就是按照这个流程来的,希望大家能记住这个)。 博主在

一直在水些技术小文 1817

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【网络编程】Socket网络编程基础

文章目录网络编程概述Socket与TCP UDPSocket TCP演示报文段协议Mac地址IP、端口、远程服务器IPv4IPv6端口远程服务器 网络编程概述 什么是网络编程 网络编程从大的方面说就是对信息的发送到接收 通过操作相应Api调度计算机硬件资源,并利用传输管道(网线)进行数据交换的过程 更为具体的涉及:网络模型、套接字、数据包 网络模型 – 对应关系 具体细节看一看我的 专栏《计算机...

明月沉江春雾晓 3836

Java Socket网络编程-总结

本文涉及:什么是网络编程;什么是IP地址、端口号及域名;DNS详细解析过程;网络的分层结构及协议;什么是Socket;什么是TCP/IP协议;TCP协议(定义;报文头解析;三次握手;四次挥手等);UDP协议(定义;报文头解析;使用场景;案例等);TCP协议与UDP协议的区别;TCP 短连接和长连接的区别;TCP粘包、拆包及解决办法;TCP 流量控制;TCP 拥塞控制等等内容

精◈彩◈猿◈笔◈记 1171

Socket网络编程

目录 一:前言 二:socket通信流程 三:和女神聊天 四:和女神聊天(server并发) 五:命令执行 六:文件上传 七: SocketServer 八:总结 一:前言 两个进程如果需要进行通讯最基本的一个前提能能够唯一的标示一个进程,在本地进程通讯中我们可以使用PID来唯一标示一个进程,但PID只在本地唯一,网络中的两个进程PID冲突几率很大,这时候我们需要另辟它径了,我...

马赛克的博客 463

第1章 网络编程基础(2)——Socket编程原理

Socket编程原理 Socket是网络通信端点的一种抽象,它提供了一种发送和接收数据的机制。 流socket(SOCK_STREAM):双向、有序、无重复、并且无记录边界 数据报Socket(SOCK_DGRAM):双向、保留记录边界 面向连接的操作比无连接的操作效率低,但数据的安全性更高。 Socket通信流程 IP地址标志主机,端口号标志进程,IP加上端口号才...

deo91209的博客 336

SOCKET网络编程

为什么叫套接字?socket的一种翻译是插座,一种解释是连接是由一对发送socket和接收socket组成,这两个插座是可连接的,两个应用程序通过插座就可以建立连接,实现通讯。应用程序通过系统调用进行socket(套接字)网络编程,实现数据的传输。所以,对于应用程序来说,套接字对应的就是一个文件(通过文件描述符来引用)。linux的内核会将对系统调用所交付的数据做进一步的传输处理。因此,从内核的角度来看,一个套接字对应着通信的一个端点。

m0_47462420的博客 1243

Socket 深度解析:为什么它是网络编程的 “万能接口”?

网络编程是实现跨设备数据交互的技术,核心是解决分布式系统中进程间通信问题。它涉及网络协议、IP地址、端口号和Socket套接字等基本概念。网络编程主要采用客户端-服务端(C/S)模型,通过Socket API实现TCP/UDP通信。TCP提供可靠、面向连接的传输,需要建立专属通信通道;UDP则是无连接的,每次发送数据都需指定目标地址。服务端必须绑定固定端口,客户端通过IP+端口定位服务端,建立连接后形成双向通信通道。网络编程广泛应用于即时通讯、文件传输等场景,是分布式系统的基础支撑技术。

0和1的舞者的博客 1459

Windows 环境下的 Socket 编程 1 - 环境搭建和 Socket 相关函数

版本占用 2 字节,高 8 位为副版本,低 8 位为主版本,比如 V1.2 版本,则传递 0x0201。Windows 严格区分文件 I/O 函数和 SOCKET I/O函数,而Linux只有文件 I/O 函数。编译:菜单 Terminal > Run Build Task ,或者快捷键 Ctrl+Shift+B。编译:菜单 Terminal > Run Build Task ,或者快捷键 Ctrl+Shift+B。其次,当程序结束之前,需要调用。版本,并初始化相应版本的库。函数,设置程序中用到的。....

朱工的专栏 5946

【python进阶-3】Socket网络编程

是通过使用网络套接字(Socket)来实现计算机间通信的技术。Socket 是操作系统提供的用于网络通信的接口,它允许程序发送和接收数据。通过 Socket,程序可以建立客户端与服务器之间的连接,在网络中传输数据。

m0_69378371的博客 1204

LINUX网络编程-day02-socket编程

1.socket模型创建流程图 2.网络套接字:socket 一个文件描述符指向一个套接字(该套接字内由内核借助两个缓冲区实现。) 通信过程中,套接字成对出现的, 2.1 套接字通信原理 ...

恁村扛把子的博客 278

【网络编程套接字】什么是socket,socket基本知识认识

一台机器上可能会有大量的进程,但并不是所有的进程都要进行网络通信,可能有很大一部分的进程是不需要进行网络通信的本地进程,此时PID虽然也可以标识这些网络进程的唯一性.就是说,在不同的场景下可能需要不同的编号来标识某种事物的唯一性,因为这些编号更适合用于该场景。socket函数对应于普通文件的打开操作。(2)其次,网间进程通信完全是异步的,相互通信的进程间既不存在父子关系,又不共享内存缓冲区,因此需要一种机制为希望通信的进程间建立联系,为二者的数据交换提供同步,这就是基于客户/服务器模式的TCP/IP。

平淡中造就不平凡 887
上一篇: 多项式求和之十二
下一篇: 蓝桥杯刷题day01——字符串中的单词反转
python_198
博客等级 码龄3年 359粉丝 112原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

python_198

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值