Python-网编汇总socketserver
Posted womenzt
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python-网编汇总socketserver相关的知识,希望对你有一定的参考价值。
1.应用层 要发送的数据 http/https协议
2.传输层 端口 tcp/udp协议 四层路由器/四层交换机
3.网络层 ip协议 路由器/三层交换价
4.数据链路层 mac地址 arp协议 网卡/交换机
5.物理层
tcp特点:面向链接 可靠 速度慢 长度不受限 全双工 流式传输
udp特点:面向数据报 不可靠 速度快 长度受限 一对一 一对多 多对多
tcp主要用于:文件传输、邮件、实时通信
udp主要用于:短消息类、在线观看视频
top三次握手:记住下面的图(SYN ACKK)accept connect
-
三次握手是tcp协议建立连接的过程
-
由客户端发起一个syn请求,服务端接受并回复(syn/ack),客户端收到ack和syn之后再回复一个ack
-
再原生的socket代码中三次握手时由accept connect
四次挥手:记住上面的图(FINACK)close
数据的交互:粘包现象 (只有在tcp中才会出现)
局域网和广域网的区别:相对论
内网和公网的区别:ip地址的区别
代码:
-
socket模块
-
tcp服务
-
udp服务 参数
-
-
tcp的粘包
-
如何解决
-
-
socketserver模块
-
固定的格式(背)
-
from socketserver import BaseRequestHandler,ThreadingTCPServer
import time
# BaseRequestHandler 基础请求操作符
# ThreadingTCPServer 线程实现的基于tcp协议的server
class Myserver(BaseRequestHandler):
def handle(self):
n = 0
while True:
self.request.send(str(n).encode(‘utf-8‘)) # self.request == conn
n += 1
time.sleep(0.5)
server = ThreadingTCPServer((‘127.0.0.1‘,9000), Myserver)
server.server_forever()
-
以上是关于Python-网编汇总socketserver的主要内容,如果未能解决你的问题,请参考以下文章