网络编程:通过网络编程解决计算机与计算机间的通信的通信协议
网络根据地域面积分为三类:局域网,城域网,广域网
IP地址由4个8位组成,每位最大不大于255
IP地址分5类:A类:1.0.0.0--126.255.255.255(127.0.0.0是本地回环地址)
B类:128.0.0.0--191.255.255.255
C类:192.0.0.0--233.255.255.255
D,E类:多用于组播,科研
网络协议:tcp,可靠,有状态,长连接协议(想打电话)
udp,不可靠,无连接,(像短信,发送的包有顺序有编号)
http,基于tcp的协议
ftp,文件传输的协议
pop3,邮局邮件协议版本3,是tcp/ip协议中的一员
smtp,简单邮件传输协议
网络的七层模型:亦称osi
应用层:(表示层,会话层)
传输层:tep udp
网络层:逻辑寻址 路径
数据链层:硬件寻址
物理层:
#查看本机IP:cmd----ipconfig
socket“又称套接字”,应用程序通常通过“套接字“向网络发送请求,使主机见或者一台计算机上的进程间可以通讯
服务器端:
import socket import sys #创建socket对象,面向连接 serversocket=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#绑定一个IP和端口号 serversocket.bind(("127.0.0.1",8888))
print("服务器已启动。。。") #监听 serversocket.listen(5) #接收客户端 clientsocket,adress=serversocket.accept() print("以接收客户端") print(clientsocket) print(adress) sendmess=input("服务器说:") clientsocket.send(sendmess.encode('utf-8')) mess=clientsocket.recv(1024) print(mess.decode("utf-8")) cilentsocket.close()
客户端:
import socket #1创建socket sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM) #2链接服务器 sock.connect(('127.0.0.1',8888)) print("客户端已连接。。。") mess=sock.recv(1024) print(mess.decode("utf-8")) #客户端给服务器发消息 sendmess=input('客户端说:') sock.send(sendmess.encode("utf-8")) sock.close()