socket简介,udp协议,tcp协议
网络通信三要素:
ip
port
protocol
进程:
运行的程序以及运行时用到的资源这这个整体称之为进程
socket(套接字):
socket是进程间通信的一种方式,它能实现不同主机间的进程间通信,网络上大多数服务都基于socket来完成通信
创建socket:
import socket
socke.socket(AddressFamily, Type)
AddressFamily: 可以选择AF_INET(用于Internet进程间通信)或AF_UNIX(用于同一台机器进程间通信),实际中常用AF_INET
Type: 套接字类型,可以是SOCK_STREAM(流式套接字,主要用于TCP协议)或者SOCK_DGRAM(数据报套接字,主要用于UDP协议)
1.创建套接字
udp_socket = socket.socket(AF_INET, SOCK_DGRAM)
2.使用套接字收/发数据
udp_socket.sendto("内容", ("ip", port))
udp_socket.recvform(1024)
3.关闭套接字
编码转换:
str–>bytes: encode编码
bytes–>str: decode解码
str.encode(encoding=’编码类型’, errors=’strict’)
bytes.decode(encoding=’编码类型’, errors=’strict’)
udp端口绑定:
如果需要做成一个服务器的程序的话,是需要端口绑定的,否则程序重新运行,操作系统会随机分配一个端口
udp_socket.bind(”, port) # 默认ip为空,端口号写动态端口