回顾:
1、两个架构:C/S B/S(统一了应用的接口)
2、同一个电脑两个py文件通信(文件)
3、两个电脑通信---网线
4、交换机的通信方式:广播、单播、组播
5、arp协议:通过ip地址找到对应的mac地址
6、osi五层模型:
应用层 :py文件
传输层 :tcp、udp协议
网络层 :ip协议
数据链路层 : 网卡、arp协议
物理层 : 网线、hub集线器、电信号相关
7、tcp协议特点:安全、面向连接、字节流形式传输
udp协议特点:快
8、tcp协议的三次握手过程:
客户端先发:我想请求连接
服务器发: 同意,我也想连接你
客户端发: 同意连接
9、tcp协议的四次挥手过程:
客户端:我想断开连接
服务器:行
服务器:我也想和你断开连接
客户端:行
10、路由器:有一个路由表,用来记录网段信息
11、网段怎么得到?
ip地址 按位与 子网掩码
今日内容:
1、解决一下怎么让服务器可以和多个客户端连接通信
2、学习udp协议
3、炫酷技能,可以在pycharm中打印带颜色的信息
4、时间同步的机制
知识点:
1、tcp协议,不允许在同一时间点同时和多个客户端连接通信
2、udp协议,允许在同一个时间点同时和多个客户端连接通信
作业:
1、tcp协议和udp协议的不同
2、tcp协议和udp协议的编码流程
tcp协议:
1)、创建一个sock对象
2)、绑定ip和端口
3)、设置监听
4)、等待接收连接(阻塞)
5)、读取虎发送bytes字节流
6)、关闭连接,关闭socket对象
udp协议:
1)、创建一个sock对象
2)、绑定ip和端口
3)、接收或发送数据
4)、关闭socket对象
3、完善一下qq聊天:
1、加入名称
2、加入颜色 :不要写死,每来一个客户端就要随机给一个颜色;
每个客户端的颜色不能出现重复的现象
4、尝试写一个文件上传下载的功能
上传/下载:client给server传一个文件,保证server获取到的文件名字一致
文件内容一致
md5校验文件内容是否一致
上传的时候,需要用户手动输入路径+文件名
大作业:ftp服务器
1、支持上传下载
2、可选择目录,可新建文件夹,
3、有返回上一目录的功能
4、登录注册
5、每个用户对应的目录应该是不一样的