圆月山庄资源网 Design By www.vgjia.com
SOCKET编程
- socket(套接字):是一个网络通信的端点,能实现不同主机的进程通信, -通过IP+端口定位对方并发送消息的通信机制
- 分为UDP和TCP
- 客户端Client: 发起访问的一-方
- 服务器端Server: 接受访问的一方
UDP编程
Server端流程
1.建立socket,socket是负贵具体通信的一个实例
2.绑定,为创建的socket指派固定的端口和ip地址
3.接受对方发送内容
4.给对方发送反馈,此步骤为非必须步骤
Client端流程
1.建立通信的socket
2.发送内容到指定服务器
3.接受服务器给定的反馈内容
- 服务器案例v01
- 客户端案例v02
- 服务器程序要求永久运行,一般用死循环处理
- 改造的服务器版本v03
TCP编程
- 面向连接的传输,即每次传输之前需要建立一个连接
- 客户端和服务端两个程序需要编写
Server端的编写流程
1.建立Socket负责具体通信。这个socket其实只负责接受对方的请求
2.绑定端口和地址
3.监听接入的访问Socket
4.接受访问的Socket,可以理解接受访问即建立了一个通讯的链路通路
5.接受对方的发送内容,利用接收到的Socket接受内容
6.如果有必要,给对方发送反馈信息
7.关闭链路通路
Client端流程
1.建立通信socket
2.链接对方,请求跟对方建立通路
3.发送内容到对方服务器
4.接受对方的反馈
5.关闭链接通路
Server端:
import socket def tcp_server(): # 1、建立socket负责具体通信,这个和socket其实只负责接受对方的请求,真通信的是连接后 # socket.AF_INET:使用ipv4协议 # socket.SOCK_STREAM:使用tcp连接 sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM) # 2、绑定IP以及端口 addr = ("192.168.200.2", 1914) sock.bind(addr) # 3、监听接入的访问socket sock.listen() while True: # 4、接受访问的Socket 可以理解接受访问即建立了一个通讯的连接通路 # accept 返回的元祖第一个元素赋值给SKT,利用接受到的socket接受内容 skt, addr = sock.accept() # 建立通道 # 5、接受对方发送的内容、利用接受到的socket接受内容 # 500 表示接受使用的buffersize # mgs = skt.receive(500) mgs = skt.recv(500) # 接受到的是bytes格式内容 # 想得到str格式的,需要进行解码 msg = mgs.decode() print(msg) data = f'我已经收到了' # print(data) # 6、如果有必要、给对方反馈信息 skt.send(data.encode()) skt.close() if __name__ == '__main__': print("tcpstaring......") tcp_server() print("tcpstoping......")
client端
import socket def tcp_client(): a = 0 while a < 100: # 1、建立通信socket sock = socket.socket(socket.AF_INET,socket.SOCK_STREAM) addr = ("192.168.200.2", 1914) sock.connect(addr) data = f"{a}你好 我是client,你收到了么?" sock.send(data.encode()) rst = sock.recv(500) print(rst.decode()) sock.close() a+=1 if __name__ == '__main__': tcp_client()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
圆月山庄资源网 Design By www.vgjia.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
圆月山庄资源网 Design By www.vgjia.com
暂无评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新日志
2024年11月02日
2024年11月02日
- 魔兽世界奥卡兹岛地牢入口在哪里 奥卡兹岛地牢入口位置一览
- 和文军-丽江礼物[2007]FLAC
- 陈随意2012-今生的伴[豪记][WAV+CUE]
- 罗百吉.2018-我们都一样【乾坤唱片】【WAV+CUE】
- 《怪物猎人:荒野》不加中配请愿书引热议:跪久站不起来了?
- 《龙腾世纪4》IGN 9分!殿堂级RPG作品
- Twitch新规禁止皮套外露敏感部位 主播直接“真身”出镜
- 木吉他.1994-木吉他作品全集【滚石】【WAV+CUE】
- 莫华伦.2022-一起走过的日子【京文】【WAV+CUE】
- 曾淑勤.1989-装在袋子里的回忆【点将】【WAV+CUE】
- 滚石香港黄金十年系列《赵传精选》首版[WAV+CUE][1.1G]
- 雷婷《乡村情歌·清新民谣》1:1母盘直刻[低速原抓WAV+CUE][1.1G]
- 群星 《DJ夜色魅影HQⅡ》天艺唱片[WAV+CUE][1.1G]
- 群星《烧透你的耳朵2》DXD金佰利 [低速原抓WAV+CUE][1.3G]
- 群星《难忘的回忆精选4》宝丽金2CD[WAV+CUE][1.4G]