学习总结(三十一)

1.UDP协议

      UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection 参考模型中一种无连接的传输层协议,提供简单不可靠信息传送服务,UDP发送后立即清空数据,所以数据发送是一次性的,无论成功还是失败,所以会造成数据丢失,当然TCP也会丢失但是会有自动重传机制。另外UDP是基于数据报的,每一次发送都是一个单独的数据报,所以不会产生粘包问题

2.UDP的使用

# 客户端
import  socket

c = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)

while True:
    data = input(">>:")
    c.sendto(data.encode("utf-8"),("127.0.0.1",9999))
    msg = c.recvfrom(1024)
    print(msg)
    
# 服务器
import  socket
c = socket.socket(socket.AF_INET,socket.SOCK_DGRAM)
c.bind(("127.0.0.1",9999))
while True:
    msg,addr = c.recvfrom(1024)
   	c.sendto(msg.upper(),addr)

 3.DNS  

      全称域名解析服务器,其本质上就是一个大型数据库系统

DNS访问流程:   

      当我们要访问一个地址如www.baidu.com

          1.浏览器首先会询问本地DNS服务器(即网络运营商如电信,联通),以获取对应的IP,

           2.如果本地DNS中没有想要的记录,则本地DNS,会询问根(1级)域名服务器,全球有13台

           根域名服务器中不可能存储全世界所有IP所以它仅存储顶级(2级)域名服务器的IP

           例如:COM域主服务器的IP,NET域主服务器的IP

           3.于是本地DNS得到COM域服务器IP后向其发送请求,

           4.由于一个域名可以对应多个IP所以还需要向三级域名主机发出请求

           5.最后将返回的IP信息缓存到本地DNS中备用

 

DNS的问题

     这样一来就造成一个问题 当一个已存在的域名更换IP后在一段时间内是无法访问的,因为子域名服务器需要到达指定时间后才会自动刷新纪录

    

 

 

原文地址:https://www.cnblogs.com/xzcvblogs/p/10952188.html