第一次写Socket,大家见笑了。注释都很清楚,不多说了。值得一提的是中间碰到过一个bug是:unpack requires a bytes object of length百度了半天,某些博主扯了好多都没说清楚其实就是用struct打包了以后字符串流的大小会固定,但是你接收的大小跟你指定的编码方式不一样我这次出错是因为在发压缩包之前先发了个串,然后服务器接到的不是压缩的串所以出错了,所以unpa
转载
2023-08-09 18:26:36
170阅读
Linux中的socket编程可以帮助我们实现网络通信和数据传输,在实际应用中,经常会遇到需要通过socket发送和接收数据包的情况。其中,发包操作是网络编程中的常见需求之一。通过发送数据包,我们可以向其他主机发送数据,从而实现网络通信。
在Linux系统中,我们可以使用一些工具或者编程语言来方便地实现发包操作,其中,红帽(Red Hat)作为一家著名的Linux发行版提供了丰富的工具和支持,可
原创
2024-04-30 11:51:14
80阅读
网络编程 定义:所为网络编程即是对信息的发送和接收。 主要工作: (1)发送端:将信息以规定的协议组装成数据包。 (2)接收端:对收到的数据包解析,以提取所需要的信息。 Socket:两个在网络上的程序通过一个双向的通信连接,实现数据的交换,此连接的一端称为一个socket。 Socket的本质:Socket是一个编程接口(API),
转载
2023-11-16 22:33:44
62阅读
Socket是网络编程的一个抽象概念。通常我们用一个Socket表示”打开了一个网络链接”,而打开一个Socket需要知道目标计算机的IP地址和端口号,再指定协议类型即可。客户端大多数连接都是可靠的TCP连接。创建TCP连接时,主动发起连接的叫客户端,被动响应连接的叫服务器。举个例子,当我们在浏览器中访问新浪时,我们自己的计算机就是客户端,浏览器会主动向新浪的服务器发起连接。如果一切顺利,新浪的服
转载
2023-12-06 21:15:24
65阅读
Linux下有一种非常强大的网络编程工具,那就是raw socket。Raw socket是一种可以让用户应用程序直接访问网络协议栈的机制,可以发送和接收原始数据帧。在Linux系统中,raw socket通常被用来进行网络数据包的发送和接收,比如在网络安全领域和网络性能测试领域经常被使用。
要使用raw socket发送数据包,需要在用户空间构建一个数据包,并将数据包通过raw socket接
原创
2024-04-18 11:24:22
447阅读
预备知识建议:初步了解TCP.IP基础知识,Python基础知识,掌握bytes数据类型的用法。1、TCP与UDP协议介绍TCP/UDP 原理TCP/UDP 位于OSI 七层模型的第4层,在IP层之前。 尽管TCP和UDP都基于IP层,UDP是无连接服务,也就是说,只是IP层通了,UDP就可以发送消息,对消息无编号。而 TCP 提供一种面向连接的、可靠的字节流服务。面向连接意味着两个使用 TCP的
转载
2023-10-09 21:45:07
192阅读
Android App开发基础篇—Socket通信 前言:离职闲置了半年,终于又开始上班了。重新工作的第一个项目就是Socket通信,虽然自己对Socket有一点点印象(读书的时候有过Java网络编程的课程),但是之前的工作中完全没接触过,于是,果断买了一本Android网络编程的书来开始学习。下面简单做一个学习笔记。一、首先,看一下Socket和ServerSocket
转载
2023-07-24 22:22:54
0阅读
socket绑定指定网卡发包 SO_BINDTODEVICE 网络编程
原创
2022-06-09 09:10:50
4174阅读
目录多线程并发socket并发集成模块基于多进程并发的HTTPserverday09cookie:os.listdir(path) 功能:获取文件列表 os.path.isfile() 判断一个文件是否为普通文件os.path.isdir() 判断一个文件是否为目录多线程并发threading 模块完成多线程并发对比多进程并发优势:资源消耗少缺点:需要注意对共享资源的操作实
转载
2024-05-09 15:56:37
86阅读
发包利器scapy最近在帮助用户调试一个网络问题的时候,发现一个很好用的发包工具scapy,记录一下使用方法。我们在调试TCP/IP时, 有时需要发送一些报文,用的工具一般有ping, nping, netcat 等。 如果需要再深入微调IP或传输层的域,或发送一些畸型的报文,以上工具可能就不一定能做到了。 此时我们可以自己用socket 编程,不过太麻烦了,迭代周期太长了。 此时 scapy 是
转载
2024-06-03 10:06:56
392阅读
目录before制作过程制作tar包小结返回Python目录beforecentos 7.4 + python 3.6.8 + pip 9.0.3 + wheel 3.1.0关于Python包管理工具的发展和使用本次共整理为三篇:第一篇主要要概述Python包管理工具的发展史,以及各包管理工具的简单使用。第二篇(即本篇)则是主要介绍包(模块)的分发,也就是如何将你的包打包,然后分发给别人使用。第三
转载
2023-09-25 18:41:58
112阅读
socket 发包 vlan 优先级映射 int priority; setsockopt(fd, SOL_SOCKET, SO_PRIORITY, &priority, sizeof(priority)); 发包需要配置映射关系: set_egress_map [vlan-name] [skb_p ...
转载
2021-08-19 17:45:00
1105阅读
2评论
# Python发包教程
## 1. 整体流程
下面是实现Python发包的整体流程:
| 步骤 | 描述 |
| --- | --- |
| 1 | 创建一个Python项目 |
| 2 | 编写代码 |
| 3 | 打包代码 |
| 4 | 上传到PyPI |
| 5 | 安装包 |
接下来,我将逐步解释每一步的具体操作和代码。
## 2. 创建一个Python项目
首先,你需要创
原创
2023-09-11 07:34:12
130阅读
还记得楼主在大学的时候听董富国老的课第一次接触到python,什么?蟒蛇?一脸懵逼的楼主第一次知道了还有这门编程语言,视野一下从易语言 C语言 C++ 汇编 C# VB 这些编译语言拓宽了不少。编译语言又叫做静态语言,由于代码经过编译器编译成机器码之后已经看不到之前的代码,编译后的程序很难再修改,也正是因为被编译成了计算机更容易理解的形式,所以运行起来速度会非常的快。相反,像python Java
转载
2023-08-31 07:43:34
47阅读
因为项目中要使用到setuptools,所以大致的学习了一下,相关的学习笔记如下,理解有限,如有问题还请指出一、为什么要打包1、前言将我们写的Python程序发布成包后,可以使其能够安装使用。在项目上测试的时候,某些情况下,可以将Python打包,然后上传到测试服务器,安装测试。setuptools是常用的打包工具。setuptools是Python distutils增强版的集合,它可以帮助我们
Python 有非常丰富的第三方库可以使用,很多开发者会向 pypi 上提交自己的 Python 包。要想向 pypi 包仓库提交自己开发的包,首先要将自己的代码打包,才能上传分发。distutils 简介distutils 是标准库中负责建立 Python 第三方库的安装器,使用它能够进行 Python 模块的安装和发布。distutils 对于简单的分发很有用,但功能缺少。大部分Python用
转载
2023-10-03 17:01:18
193阅读
当我们完成了某一个模块的开发后,可以通过PyPI在网上发布,也可以在本地发布,即让其他人以"第三方扩展库"的方式使用我们的模块。 setuptools是python标准的打包分发工具,它可以将我们编写的python项目打包安装,这样其他人就可以像调用标准库或python第三方库那样直接使用
转载
2024-02-26 15:40:26
36阅读
分发工具 setuptools第一个安装文件使用安装文件创建 wheelSource distributionBuilt distributionWheel安装 Wheel上传 Wheel 到 PyPI注册 PyPI 账号安装 twine使用 twine 上传setup() 参数nameversionpackagesdescriptionurlauthorlicenseclassifiersk
为什么使用包管理?python的模块或者源文件直接可以复制到目标项目目录中,就可以导入使用了。但是为了更多项目调用使用,或者共享给别人,就需要打包,或发布到网络,以便供人使用。目的也是为了复用。Pypi(python package lndex),公共的模块存储中心,https://pypi,python.org/pypi主要工具distutils官方库didtutils,使用安装架脚本setup
转载
2023-11-15 14:41:31
106阅读
创建项目项目需要有以下的文件结构:packaging_tutorial/
example_pkg/
__init__.py
setup.py
LICENSE
README.md
packaging_tutorial/
example_pkg/
__init__.py
setup.py
LICENSE
README.mdexample_pkg是包的文件名,因为是python包,所以要有__init
转载
2023-09-28 14:01:09
98阅读