1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > TCP与UDP通信方式的实现

TCP与UDP通信方式的实现

时间:2020-03-23 14:26:38

相关推荐

TCP与UDP通信方式的实现

socket概述:

在很多编程语言中,都使用socket套接字实现网络通信。

socket是对TCP/IP协议的封装,socket本身是一个调用接口(API),方便程序员用socket使用TCP/IP协议簇,实现网络通信。

不同编程语言,使用socket通信的语法有所区别,但基本过程类似。

TCP与UDP协议:

TCP和UDP都隶属于TCP/IP协议簇。

TCP是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。

UDP是一个非连接的协议,在数据传输之前源端和终端不建立连接,当它想传送时就简单地去传输和抓取数据。效率高,速度快,可靠性低。

TCP:

建立客户端和服务器端,先运行服务器端的程序,然后再运行客户端。

客户端:

#客户端:发送消息给服务端from socket import *#创建socket对象#AF_UNIX本机通信 AF_INET(IPV4) AF_INET6(IPV6)#SOCK_STREAM(TCP) SOCK_DGRAM(UDP) s=socket(AF_INET,SOCK_STREAM)#和目标建立连接s.connect(("localhost",0303))#发送消息s.send("你好!服务端!".encode()) #.encode()对字符串进行编码#关闭sockets.close()

服务器端:

#服务端:接收客户端消息并显示from socket import *#创建socket对象 s=socket(AF_INET,SOCK_STREAM)#绑定监听端口s.bind(("localhost",0303))#监听s.listen()#等待消息conn,adr=s.accept()#接收信息msg=conn.recv(1024)print("--------:",msg.decode())s.close()

UDP:

服务器端(不需要提前先运行):

#服务端:接收客户端消息并显示from socket import *import time#创建socket对象 s=socket(AF_INET,SOCK_DGRAM)#绑定端口s.bind(("localhost",3435))#接收信息while 1==1:msg=s.recv(1024)print("----:",msg.decode())s.close()

客户端:

#客户端:发送消息给服务端from socket import *#创建socket对象#AF_UNIX本机通信 AF_INET(IPV4) AF_INET6(IPV6)#SOCK_STREAM(TCP) SOCK_DGRAM(UDP) s=socket(AF_INET,SOCK_DGRAM)#发送信息while 1==1:msg=input("---------<<:")s.sendto(msg.encode(),("localhost",3435))#关闭sockets.close()

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。