文章目录网络基础osi协议简单的网络通信TCP文件传输UDP文件的传输粘包现象socketserver模块 网络基础打基础 了解一些网络的基础知识 简单了解一些底层的网络通信 3-4天 网络的概念 基于原生的网络模块来实现通信 完成一些简单的程序 了解一些协议的特点,扬长避短 概念 学号:临时的编号/变化的 身份证号:唯一标识/不变的 不变的:mac地址 能够唯一标识你这台机器 变化的:IP地址
转载 9月前
40阅读
socket是编程语言对tcp/ip协议的封装,使用其可以在两个主机之间传输文件,下面直接进入主题,下面示例是最简单的tcp传输代码示例,先启动server再启动client。需要注意python3socket只能传输byte类型,具体如何转换可以复习字符编码章节相关知识sever端代码# -*- coding:utf-8 -*- import socket server = socket.soc
# Java TCP 解包实现指南 ## 1. 引言 在网络通信中,TCP/IP 协议是最常用的协议之一。而在使用 Java 进行 TCP 编程时,解包(Unpacking)是一个重要的操作,用于将接收到的数据拆分成可读的格式,以便进一步处理和分析。本文将以一位经验丰富的开发者的角度,教会一位刚入行的开发者如何实现 Java TCP 解包。 ## 2. TCP 解包流程 以下是实现 TCP
原创 2023-08-06 12:57:45
105阅读
  最近遇见很多的关于TCP中封包解包的数据,在TCP节点之间的信息传递,每次传送的内容是结构体,所以每次在传送的时候,要将结构体中的数据进行封包,然后当一端接收到数据之后,要对接收到的buf参数中的数据进行解包。  TCP是数据流的传送,数据之间没有分割,UDP是数据包的传送,数据之间有分割,所以UDP是不存在数据的封包解包。  TCP之所以要进行封包解包:   例如A->B传送数据,第一
转载 2024-04-11 21:23:56
444阅读
Java随笔记 - 断包和粘包 解决方法 断包和粘包断包和粘包是Socket编程中经常提及的一个问题,这里大致从概念角度进行讲解,后续博客应该会结合代码实例进行简单的实验对比。TCP协议是面向连接、面向流的,因此它并不知道它在传输的是什么具体内容。而且当我们在同一条连接上传输多笔数据的时候,TCP协议会根据数据包的大小,出于性能以及包大小限制的考虑,对数据包进行合并或者切分发送。
转载 2023-11-01 16:14:20
57阅读
最简单的TCP网络封包解包 如若描述或者代码当中有谬误之处,还望指正。 TCP为什么需要进行封包解包?         TCP采用字节流的方式,即以字节为单位传输字节序列。那么,我们recv到的就是一串毫无规则的字节流。如果要让这无规则的字节流有规则,那么,就需要我们去定义一个规则。那便是所谓的“封包规则”。 封包
为什么要讲解包因为我觉得解包Python 的一大特性,大大提升了编程的效率,而且适用性很广啥是解包个人通俗理解:解开包袱,拿出东西正确理解:将元素从可迭代对象中一个个取出来python 中,解包是自动完成的最简单的解包栗子 a, b, c = [1, 2, 3] print(a, b, c) # 输出结果 1 2 3 列表有 3 个元素,此时也需要 3 个变量去接,否则会报错 a,
转载 2023-08-02 20:37:26
269阅读
【1】TCP/IP协议概述TCP协议:                 网络传输控制协议IP协议:               网络地址协议,(作用定位在网络上计算机)        &nb
转载 2018-11-26 22:04:34
56阅读
我们需要监控用户的互联网行为,则需要检测HTTP如何在网络层截取HTTP呢,众所周知,网站是80号端口代码实现如下  CInitSock theSock; void GetFtp(char *pData, DWORD dwDestIp) { char szBuf[256]; static char szUserName[21];
我们需要监控用户的互联网行为,则需要检测HTTP如何在网络层截取HTTP呢,众所周知,网站是80号端口代码实现如下#include "../common/initsock.h"#include "../common/protoinfo.h" #include #include #pragma co...
转载 2012-09-04 18:12:00
120阅读
2评论
我们需要监控用户的互联网行为,则需要检测HTTP如何在网络层截取HTTP呢,众所周知,网站是80号端口代码实现如下#include "../common/initsock.h"#include "../common/protoinfo.h" #include #include #pragma comment(lib, "Advapi32.lib")CInitSock theSoc
原创 2022-04-20 10:53:32
132阅读
我们需要监控用户的互联网行为,则需要检测HTTP如何在网络层截取HTTP呢,众所周知,网站是80号端口代码实现如下#include "../common/initsock.h"#include "../common/protoinfo.h" #include #include #pragma comment(lib, "Advapi32.lib")CInitSock theSoc
原创 2021-07-19 09:50:13
585阅读
我们需要监控用户的互联网行为,则需要检测HTTP如何在网络层截取HTTP呢,众所周知,网站是80号端口代码实现如下  CInitSock theSock; void GetFtp(char *pData, DWORD dwDestIp) { char szBuf[256]; static char szUserName[21];
原创 2022-04-20 10:46:56
490阅读
python中的解包可以这样理解:一个list是一个整体,想把list中每个元素当成一个个个体剥离出来,这个过程就是解包,我们来看下面这些例子(分为10个部分)。1.将list中每个元素赋值给一个变量>>> name, age, date = ['Bob', 20, '2018-1-1'] >>> name 'Bob' >>> age 20 &
转载 2023-12-12 14:30:36
200阅读
解包在英文里叫做 Unpacking,Python 中的解包是自动完成的,例如:>>> a, b, c = [1,2,3] >>> a 1 >>> b 2 >>> c 3除了列表对象可以解包之外,任何可迭代对象都支持解包,可迭代对象包括元组、字典、集合、字符串、生成器等实现了__next__方法的一切对象。元组解包>&g
转载 2023-09-18 20:32:50
65阅读
对于一堆资料,我们可以把它分给不同的人使用,这个分散的过程,我们可以看成是解包方法是实现。当然实际python解包的使用会相对复杂一点,我们会对常见的列表、函数等进行操作。下面我们就Python解包的使用进行说明,然后带来两种解包方法的详解,大家一起往下看。1、使用说明(1)解包的意义就是将传递给函数的一个列表,元组,字典,拆分成独立的多个元素然后赋值给函数中的形参变量。(2)解包字典有两种解法,
转载 2023-06-16 21:04:55
336阅读
python基础之打/解包及运算符与控制流程python中的解压缩(即序列类型的打包和解包python提供了两个设计元祖和其他序列类型的处理的便利,也就是自动打包与自动解包功能,比如:data = 2,3,6,9会使标识符data赋值成元祖(2,3,6,9),这种行为称为元祖的自动打包。在python中另一种常用的打包是从一个函数中返回多个值,如:return x,y就会返回单个对象,也就是元祖
转载 2023-06-14 21:49:09
417阅读
同事:[‘坤坤’, ‘唱’, ‘跳’, rap’, … ‘篮球’, ‘练习生’ ] 你觉得这样的列表怎么提取姓名身份和爱好比较好呢?狮子:你这个数据有点过时啊,哎,算了。。。 试试解包吧。 文章目录Python解包--可迭代对象分解为单独变量python解包进阶 -- 源码解析再来一段,关于a,b=b,a的辟谣 Python解包–可迭代对象分解为单独变量 代码均为python3 第一段阅读时间为2
转载 2023-08-18 13:06:21
124阅读
  一、序列解包  序列解包(或可迭代对象解包):解包就是从序列中取出其中的元素的过程,将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中。  一般情况下要解包的序列包含的元素个数必须与你在等号左边列出的目标个数相同,否则Python将引发异常。但如果要解包序列元素个数与左边变量数不同的情况下,可使用星号运算符(*)来收集多余的值,这样无需确保值和变量的个数相同,还可将带星号的变量
转载 2023-08-12 12:23:37
177阅读
 
转载 2023-07-31 13:09:27
124阅读
  • 1
  • 2
  • 3
  • 4
  • 5