TCP和UDP的区别
TCP协议
1)建立连接的三次握手
- 主机A向主机B发送一个带有同步序列号(SYN)标志位的报文请求建立连接。
- 主机B发送一个带有确认应答(ACK)和同步序列号(SYN)标志位的报文响应主机A。
- 主机A发送一个确认应答(ACK)报文来确认已收到主机B的回复。
2)断开连接的四次挥手
- 主机A传输完数据后,向主机B发送一个FIN控制位置为1的报文请求断开A到B的连接。
- 主机B收到FIN报文后回送一个ACK报文给主机A以确认连接关闭。
- 主机B发送一个FIN控制位置为1的报文给主机A请求断开B到A的连接。
- 主机A对主机B发送带有ACK的报文以确认请求。

UDP协议
1)UDP协议是无连接的协议,传输数据之前源端和目的端不需要建立连接,当它想传送数据时只是简单地从应用程序抓取数据,并尽快地把数据扔到网络上。在发送端,应用程序生成数据的速度、计算机的处理能力和传输带宽的限制决定了UDP传送数据的速度;在接收端,UDP把数据报放在队列中,应用程序每次从队列中读取一个数据报。
2)由于数据传输时不需要建立连接,所以也不需要维护连接状态,这样一台服务器可同时向多个客户机传输相同的消息
3)UDP数据报的报头很短,只有8个字节,相对于TCP报文的20个字节报头额外开销很小。
4)吞吐量不受拥塞控制算法的影响,只受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制。
5)UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的链接状态表(这里面有许多参数)。
6)UDP是面向报文的。发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付给IP层。既不拆分,也不合并,而是保留这些报文的边界,因此,应用程序需要选择合适的报文大小。
TCP与UDP基本区别
1)基于连接与无连接
2)TCP要求系统资源较多,UDP较少;
3)UDP程序结构较简单
4)流模式(TCP)与数据报模式(UDP);
5)TCP保证数据正确性,UDP可能丢包
6)TCP保证数据顺序,UDP不保证
posted on 2017-05-03 16:36 yifangzhuhou 阅读(127) 评论(0) 收藏 举报
浙公网安备 33010602011771号