随笔分类 - 1.Python基础 / 4.网络编程基础
摘要:一、服务端代码 二、客户端代码 三、测试截图 1、客户端端未启动服务端状态截图 2、客户端端启动服务端状态截图 3、服务器先启动客户端后启动状态截图 4、服务器端位启动,客户端启动报错截图
阅读全文
摘要:网络编程基础【day09】:socket编程入门(一) 网络编程基础【day09】:简单socket实例(二) 网络编程基础【day09】:通过socket实现简单ssh客户端(三) 网络编程基础【day09】:实现简单地ssh(四) 网络编程基础【day09】:socket接收大数据(五) 网络编
阅读全文
摘要:本节内容 1、堡垒机前戏 2、SSHClient 3、SFTPClient 一、堡垒机前戏 开发堡垒机之前,先来学习Python的paramiko模块,该模块机遇SSH用于连接远程服务器并执行相关操作。 paramiko模块 存在的作用:作批量管理用的。 二、SSHClient SSHClient
阅读全文
摘要:本节内容 1、概述 2、多用户并发 3、socketserver.BaseServer 一、概述 之前上一篇写的 day8-socketserver使用 讲解了socketsever如何使用,但是在最后 简单代码实现 里面并没有实现多并发的效果,这个就郁闷了,其实不然,其实我们需要用多线程或者多线程
阅读全文
摘要:本节内容 1、概述 2、socketserver类型 3、创建socketserver步骤 4、简单的代码实现 一、概述 我们之前的用户都是不支持多并发的,所以我们现在需要一个支持多用户,实现一个并发处理,我们接下来就不能不接触socketserver这个模块。前面讲的socket都是铺垫,后面需要
阅读全文
摘要:本节内容 1、概述 2、代码实现 一、概述 上一篇博客讲到的用MD5来校验还是用的之前解决粘包的方法,就是客户端发送一个请求,等待服务端的确认的这样的一个笨方法。下面我们用另外一种方法:就是客户端已经知道可接收多少数据了,既然客户端已经知道接收多少数据了,那么客户端在接收数据的时候,正好接收已经知道
阅读全文
摘要:本节内容 1、概述 2、socket接收大数据 3、中文字符的坑 一、概述 上篇博客写到了,就是说当服务器发送至客户端的数据,大于客户端设置的数据,则就会把数据服务端发过来的数据剩余数据存在IO缓冲区中,那我们如何解决这个问题呢? 有的同学就说了: 很明显,上面第二种思路靠谱一点:就是说服务端给客户
阅读全文
摘要:本节内容 1、概述 2、文件下载实现 3、MD5值校验 一、概述 我们如何利用socket去下载一个文件,整体思路是这样的: 读取文件名 检测文件是否存在 打开文件 检测文件大小 发送文件大小给客户端 等客户确认 开始边读边发数据 发送md5值给客户端校验 友情提示:以下代码都是在Linux系统,并
阅读全文
摘要:本节内容 1、概述 2、socket实例 3、总结 一、概述 之前我们只是介绍了soket的概念和一些逻辑图表,下面我们来看看,socket的客户端和服务端到底是怎么用的? 二、socket实例 2.1 客户端 2.1.1 客户端代码逻辑图 2.1.2 客户端代码 1 2 3 4 5 6 7 8 9
阅读全文
摘要:本节内容 1、概述 2、socket发送中文 3、重复发送和多次接收 4、模拟ssh客户端 一、概述 本篇博客讲一下,如果socket客户端断了,另外的客户端怎么接入服务端,还有模拟ssh的链接等。 二、socket发送中文 因为在python 3中只能接受bytes类型的数据,bytes类型只能接
阅读全文
摘要:本节内容 linux下运行效果 sleep解决粘包 服务端插入交互解决粘包问题 一、概述 刚刚我们在window的操作系统上,很完美的解决了,大数据量的数据传输出现的问题,但是在Linux环境下执行会出现什么状况呢?接下来我们拭目以待。 客户端和服务端的代码还是在 day8-接收大数据 中的代码 二
阅读全文
摘要:本节内容 概述 简单ssh socket接收大数据的困惑 一、概述 我们用过linux的就知道什么是ssh,它是一种客户端和服务端交互返回的一个解决,输入一个命令,给我返回什么,接下来我们说一说,如何用socket去简单的时间一个ssh 二、简单的ssh 2.1、客户端 说明:客户端实例->建立连接
阅读全文
摘要:本节内容 1、OSI七层模型 2、概述 3、关系图 4、代码逻辑图 5、socket概念 一、OSI七层模型 二、概述 socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄,应用程序通常通过"套接字"向网络发出请求或者应答网络请求。 socket起源于Unix,而Unix/L
阅读全文