TCP/IP模型
应用层-----传输层------网络层-----网络接口层
TCP协议:传输层的通信协议
http协议,ftp协议,smtp协议:应用层传输协议
3次握手,4次挥手
1.套接字
import socket
#创建套接字服务端#
server = socket.socket(
family = socket.AF_INET, #默认参数#
type = socket.SOCK_STREAM #代表TCP,默认;type = socket.SOCK_DGRAM代表UDP#
)
tcp_server = socket.socket()
#绑定ip和端口#
tcp_server.bind(('',6969))
#监听,等待的队列数5个#
tcp_server.listen(5)
#等待接入,阻塞。当有客户端连入时,会创建一个对等的socket对象,用来和客户端交互#
tcp_server.accept()
#conn是sock对象,addr是client地址,自动分配#
conn,addr = tcp_server.accept()
while True:
date = conn.recv(1024)
if data:
print(data.decode('utf-8'))
else
conn.close()
客户端
#创建客户端#
client = socket.socket()
#连接#
client.connect(('127.0.0.1,6969'))
data = input()
#传输只能以二进制格式传输#
#发数据#
client.send(data.encode())
client.close()