python网络编程

1、网络编程:from socket import *

2、创建UDP服务器

from socket import *

#1、创建套接字
udpsocket=socket(AF_INET,SOCK_DGRAM)
#2、绑定服务器IP跟port
bindaddr={'IP地址','8080'}

udpsocket.bind(bindaddr)
#3、接受数据
while True:
    recvData=udpsocket.recvfrom(1024)

print(recvData[0].decode("gb2312"))
#4、关闭套接字
udpsocket.close()

3、创建UDP客户端

from socket import *
#1、创建套接字
udpsocket=socket(AF_INET,SOCK_DGRAM)
#2、准备接收方地址
bindaddr={'',9090}
udpsocket.bind(bindaddr)
sendAddr={'IP地址','8080'}

#3、从键盘获取数据
sendData=raw_input("请输入要发送数据:")
#4、发送数据到指定电脑
udpsocket.sendto(sendData.encode("gb2312"),sendAddr)
recvData=udpsocket.recvfrom(1024)
print(recvData[0].decode("gb2312"))
print(recvData[1][0].decode("gb2312"))
print(recvData[1][1])
#5、关闭套接字
udpsocket.close()

4、传输层的“协议+端口”可以唯一标志主机中应用程序(进程);网络层的IP地址可以唯一标志主机

5、套接字:实现网络间不同主机应用程序的通信

6、服务器:提供服务;客户端:发出请求,请求服务

常见的架构有C/S(Client/Server)(客户机/服务器)和B/S(Browser/Server)Browser/Server(浏览器/服务器)架构。

7、UDP跟TCP的区别:

UDP(用户数据报协议),一个无连接的简单的面向数据报的传输层协议,TFTP(简单文件传输协议)就是基于UDP实现的。

特点是:通信时不需要建立连接,可实现广播传输,不提供可靠性,即不保证目的地址能收到数据,且没有超时重传机制,传输数据时有大小限制,每个数据报在64kb以内

优点是:传输速度快

适用情况:多点通信和实时的数据业务,如:视频,QQ,语音广播,局域网中的视频会议系统,保证连贯性和速度即可。

 TCP(传输控制协议),提供面向连接的、可靠的字节流服务。

特点是:clien和server交换数据前必须先建立可靠的连接(三次握手),提供超时重发,校验数据等,保证数据能传到目的地址。

适用情况:点对点通信。

8、单播:点对点        多播:一对多      广播:一对所有,广播地址的最后一位为255

9、OSI模型:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层 

四层网络模型:应用层(应用进程),传输层(UDP,TCP),网络层(IP, ICMP,IGMP, ARP,RARP),链路层(网络接口,负责报文传输)

posted on 2019-09-04 17:33  ChanXM  阅读(134)  评论(0)    收藏  举报

导航