Python网络编程-----UDP协议

本文介绍了Python中的UDP网络编程,包括UDP协议的特点,如何创建socket对象,以及实现UDP客户端的数据传输和接收。内容涵盖了无连接传输、数据报大小限制、广播发送,并探讨了UDP多线程编程和协程应用。
摘要由CSDN通过智能技术生成

要进行网络间的通信,首先要唯一标识一个进程,利用前面提到的IP和端口号我们可以唯一的标识一个进程⽤这个标志与其它进程进⾏交互。这个就是网络编程,又称为socket(简称为套接字)编程。

1. socket对象的创建

socket(简称套接字)是进程间通信的⼀种⽅式,在Python中我们用socket模块来实现网络编程,在socket模块中一个socket函数可以创建socket对象。其中有两个参数,第一个参数可以选择AF_INET(用于Internet进程间通信)或AF_UNIX(用于同一台机器间进程的通信),实际工作中常用前者,因为前者也能实现同一台机器间进程的通信,第二个参数是套接字类型,可以是SOCK_STREAM(流式套接字,主要用于TCP协议)或SOCK_DGRAM(数据报套接字,主要用于UDP协议)

import socket
s = socket.socket(family=socket.AF_INET, type=socket.SOCK_DGRAM)

2. UDP协议

UDP(User Datagram Protocol):用户数据播报协议,是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。UDP不提供可靠性,它只把应用程序传给IP层的数据发送出去,但不能保证他们能达到目的地。由于UDP在发送数据前不在客户与服务器间建立一个连接,且没有超时重发等级制,故而传输速度极快。

UDP是一种面向无连接的协议,每次数据播报都是一个独立的信息,包括完整的源地址和目的地址,它在网络上以任何可能的路径传往目的地,至于能否达到目的地以及内容的正确性不能保证。

UDP可以实现广播发送。UDP传输数据时有大小限制,每个传输的数据包必须限定在64KB之内。UDP适用于语音播报、视频会议系统、QQ消息文件的上传和下载、TFTP、SN

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值