ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

基于TCP的Socket通信

2022-04-07 15:01:16  阅读:220  来源: 互联网

标签:数据通信 Socket 创建 通信 TCP 传输数据 连接 服务端 客户端


什么是短连接?

短连接是当服务端与客户端连接成功后开始传输数据,数据传输完毕后则连接立即关闭,如果还想再次传输数据,则需要再创建新的连接进行数据传输。

  1)优点:在服务端不需要保存多个Socket对象,降低内存占用率。

  2)缺点:每次传输数据前都要重新创建连接,也就是每次都要进行3次握手,增加处理的时间。

 

什么是长连接?

长连接可以实现当服务端与客户端连接成功后连续地传输数据,在这个过程中,连接保持开启的状态,数据传输完毕后连接不关闭。长连接是指建立Socket连接后,无论是否使用这个连接,该连接都保持连接的状态。

(1)长连接的优缺点

  1)优点:除了第一次之外,客户端不需要每次传输数据时都先与服务端进行握手,这样就减少了握手确认的时间,直接传输数据,提高程序运行效率。

  2)缺点:在服务端保存多个Socket对象,大量占用服务器资源。

 

什么是连接?

在TCP/IP中,连接可以认为是服务端与客户端确认彼此都存在的过程。这个过程需要实现,就要创建连接,如何创建连接(环境)呢?需要服务端与客户端进行3次握手,握手成功之后,说明服务端与客户端之间能实现数据通信。如果建立连接的过程是成功的,就说明连接被成功创建。在创建好的1个连接中,使用TCP可以实现多次的数据通信。在多次数据通信的过程中,服务端与客户端要进行彼此都存在的过程验证,也就是验证连接是否正常,如果连接正常,并且多次通信,则这就是长连接。长连接就是复用当前的连接以达到数据多次通信的目的。由于复用当前的连接进行数据通信,因此不需要重复创建连接,传输效率比较高。而当实现1次数据通信之后,关闭连接,这种情况就可称为短连接。使用短连接进行数据传输时,由于每次传输数据前都要创建连接,这样会产生多个连接对象,增大占用内存的空间,在创建连接时也要进行服务端与客户端之间确认彼此存在,确认的过程比较耗时,因此运行效率较低。由于UDP是无连接协议,也就是服务端与客户端没有确认彼此都存在的握手过程,因此在UDP里面不存在长连接与短连接的概念。

 

标签:数据通信,Socket,创建,通信,TCP,传输数据,连接,服务端,客户端
来源: https://www.cnblogs.com/chaojichantui/p/16112362.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有