python-socket介绍
cs架构
osi七层
理解网络通信的原理
两个教室的电脑的软件要沟通的流程
通过ip与端口可以定位到目标位置指定机器的一个具体的应用程序
ip与网卡绑定在一起
有ip可对应上mac信息最终可实现一台电脑的定位
了解socket 所在的位置
》socket是什么
》套接字的发展史与分类
套接字的工作流程
》服务端的模拟 tcp
图中漏了一个conn断开
》完整的tcp客户端,服务端流程
》服务端代码
》客户端代码
》服务端可能出现的问题
当服务端关闭后马上又重开,可能出现这个问题
linux系统下,会有的
原因是
套接字关闭后,会有一段时间,套接字完成断开的操作,有一小段时间的延迟
这段时间的延迟,是tcp套接字在做四次挥手
三次握手,与四次挥手
》了解syn洪水攻击
TCP连接的三次握手中,假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发出SYN+ACK应答报文后是无法收到客户端的ACK报文的(第三次握手无法完成),这种情况下服务器端一般会重试(再次发送SYN+ACK给客户端)并等待一段时间后丢弃这个未完成的连接,这段时间的长度我们称为SYN Timeout,一般来说这个时间是分钟的数量级(大约为30秒-2分钟);一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如果有一个恶意的攻击者大量模拟这种情况,服务器端将为了维护一个非常大的半连接列表而消耗非常多的资源----数以万计的半连接,即使是简单的保存并遍历也会消耗非常多的CPU时间和内存,何况还要不断对这个列表中的IP进行SYN+ACK的重试。实际上如果服务器的TCP/IP栈不够强大,最后的结果往往是堆栈溢出崩溃—即使服务器端的系统足够强大,服务器端也将忙于处理攻击者伪造的TCP连接请求而无暇理睬客户的正常请求(毕竟客户端的正常请求比率非常之小),此时从正常客户的角度看来,服务器失去响应,这种情况我们称作:服务器端受到了SYN Flood攻击(SYN洪水攻击)。
》解决办法
通过半链接池
这个好比等候区(银行取钱,都围在窗口,服务会崩)
python-socket介绍相关推荐
- python socket介绍
1.windows和Linux查看网卡信息 Linux打开终端输入 ifconfig windows中cmd输入 ipconfig 2.IP地址版本:IPv4(地址位数为32位).IPv6(地址位数为 ...
- php socket 握手,python Socket之客户端和服务端握手详细介绍
这篇文章主要为大家详细介绍了python Socket之客户端和服务端握手,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 简单的学习下利用socket来建立客户端和服务端之间的连接并且发送数据 1 ...
- Python Socket 编程——聊天室示例程序
上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和客户端的代码了解基本的 Python Socket 编程模型.本文再通过一个例子来加强一下对 Socket 编程的 ...
- python socket编程_Python Socket编程实现网络编程
对于有经验的开发人员来说,掌握的编程语言应该是不少的.在这些编程语言中,网络编程的应用时必不可少的.其中Python也是这样的编程语言.我们今天将会在这里为大家详细介绍一下Python Socket编 ...
- 网络编程 socket介绍
Socket介绍 Socket是应用层与TCP/IP协议族通信的中间软件抽象层,它是一组接口.在设计模式中,Socket其实就是一个门面模式,它把复杂的TCP/IP协议族隐藏在Socket接口后面,对 ...
- Python Twisted 介绍
Python Twisted介绍:http://blog.csdn.net/hanhuili/article/details/9389433 原文链接:http://www.aosabook.org/ ...
- PYTHON SOCKET编程简介
原文地址: PYTHON SOCKET编程详细介绍 Python 提供了两个基本的 socket 模块. 第一个是 Socket,它提供了标准的 BSD Sockets API. 第二个是 Socke ...
- python网络编程讲解_详解Python Socket网络编程
Socket 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通信的,例如我们每天浏览网页.QQ ...
- Python Socket网络编程(二)局域网内和局域网与广域网的持续通信
目录 前言 IP地址 简介 公有IP 私有IP 局域网之间网络通信 前提 功能描述 源码 运行结果 局域网与广域网网络通信 前提 源码 结语 前言 本系列博客是笔者学习Python Socket的过程 ...
- Python Socket 网络通信详解
Python 模块 Socket 网络通信 文章目录 Python 模块 Socket 网络通信 1. socket介绍 2. Socket 类型 3. Socket 函数 3.1 服务器端 Sock ...
最新文章
- Linux-6.5下 MariaDB-10基于percona-XtraBackup备份工具的原理及配置详解
- SAP内部订单使用实例
- SQL基础---SQL ORDER BY 子句
- python控制autocad_利用python控制Autocad:pyautocad方式
- Docker/Docker 起步123
- P4245 【模板】任意模数多项式乘法(NTT)
- _编程语言_C++_Lambda函数与表达式
- 是先设计mysql表再进行php代码_PHP与RBAC设计思路,数据表设计与源码讲解
- VxWorks下几种定时延时方法的小结
- laravel关于路径的函数
- 拓步机器人联网说明书_科沃斯IPO聚焦三大战略 谋划转型互联网生态企业
- Android基础知识、四大组件(转)
- 【qt+opencv】实现人脸识别打卡系统2.0
- word论文页码从任意页开始编号
- python extractor_Python extractor
- 用友u8 如何配置文件服务器,用友u8服务器软件配置
- 算法实现: 在二叉树中找到两个节点的最近公共祖先
- 全网最全软件测试面试题,拿不到offer算我输!
- Spring源码分析之推断构造方法(一)
- 李宏毅2022机器学习HW2解析
热门文章
- vue“路由懒加载” 技术,让网页快速加载 (优化篇)
- 本地如何安装运行多个vue.js项目?
- 天人短文网站系统v5.53源码
- 考拉RPC(koalas-rpc v1.0)源码
- 苏州大学计算机组成与结构,苏州大学计算机组成结构期末.docx
- 所有主流浏览器都支持HTML的视频格式5,所有主流浏览器都支持HTML 5吗?
- ios 裁剪圆形头像_IOS_iOS如何裁剪圆形头像,本文实例为大家介绍了iOS裁剪 - phpStudy...
- python做词云做文本处理_Python生成词云的制作
- pythonapp自动化_GitHub - qdyxmas/PyAutoTest: python Autotest UI自动化 APP自动化 HTTP接口自动化...
- Vue 实现图片在循环中 默认 和 选中 之间的点击切换