TCP/IP通信与UDP通信的区别就正如我们打电话和发短信之间的区别,我们打电话时首先要和对方建立连接才开始说话,即发送数据,而发短信时我们不用管那么多,不用先建立连接,只要发出去就OK了,这两种通信方式各有好处。
1.基于连接与无连接;
2.对系统资源的要求(TCP较多,UDP少);
3.UDP程序结构较简单;
4.流模式与数据报模式 ;
5.TCP保证数据正确性,UDP可能丢包,TCP保证数据顺序,UDP不保证。
因为TCP是面向连接的,一个TCP连接的建立必须经过三次“对话”才能建立起来,即我们所说的“三次握手”,而断开一个TCP连接需要四次“对话”才能完成,当然这是在正常的情况下,如果你是直接拔电源那就只需一次就ok了。
TCP三次握手过程
1 客户向服务器发送建立连接请求。
2 服务器收到客户请求后,向客户端发送确认消息。
3 客户收到服务器发来得请求后,再发送一个确认应答,确认已收到主服务器发来得消息:"我已收到回复,我现在要开始传输实际数据了
这样3次握手就完成了,客户端和服务器就可以传输数据了.
TCP建立连接要进行3次握手,而断开连接要进行4次
1 当客户端完成数据传输后,向服务器提出停止TCP连接的请求
2 服务器收到请求后对其其作出响应,确认这一方向上的TCP连接将关闭。
3 由服务器端再提出反方向的关闭请求。
4 客户端对服务器端的请求进行确认,双方向的关闭结束.
由TCP的三次握手和四次断开可以看出,TCP使用面向连接的通信方式,大大提高了数据通信的可靠性,使发送数据端
和接收端在数据正式传输前就有了交互,为数据正式传输打下了可靠的基础