码迷,mamicode.com
首页 > 其他好文 > 详细

网络编程(关于TCP和UDP)

时间:2018-12-20 20:35:44      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:send   流服务   创建   协议   socket   最大   用户数   地址   web浏览器   

TCP是传输控制协议,它提供的是面向连接,可靠的字节流服务,当客户和服务器彼此交换数据前,会进行三次还握手,之后才能传输数据,直到数据传输结束在进行一次三次握手。

优点:具有超时重发.丢弃重复数据.效验数据.流量控制等功能,保证了数据能从一端传到另一端。

缺点:传输大型文件时会产生粘包

使用TCP的应用:web浏览器.电子邮件.文件传输程序

 

UDP是用户数据报协议,是一个简单的面向数据报的运输层协议。不提供可靠性,只是把应用程序数据报发送出去,不保证是否能接收到数据,传递数据时不进行三次握手,没有重发机制,故而传输数据很快

优点 :传输快,一对一.一对多.多对多.多对一.面向报文,尽最大努力服务,不会产生粘包问题

缺点:不可靠,没有连接的服务

使用UDP的应用:视频流,电台

简单的TCP案例:

服务器端:

import socket
skt = socket.socket()
skt.bind((‘127.0.0.1‘,5000))#绑定ip地址和端口号
skt.listen() #监听链接
conn,addr = skt.accept()#接受客户端连接
ret = conn.recv(1024) #接受客户端1024个字节
print(ret) #打印客户端信息
conn.send(b"laowang") #向客户端发送信息
conn.close() #关闭客户端接字
skt.close() #关闭服务器接字

客户端:

import socket
skt = socket.socket() #创建客户套接字
skt.connect((‘127.0.0.1‘,5000))#尝试连接服务器
skt.send(b‘1111‘) #对话
ret = skt.recv(1024)# 发送/接收
print(ret)
skt.close() #关闭客户套接字

缺点是只能发一句话

 

网络编程(关于TCP和UDP)

标签:send   流服务   创建   协议   socket   最大   用户数   地址   web浏览器   

原文地址:https://www.cnblogs.com/fsrmyc/p/10151754.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!