热门标签 | HotTags
当前位置:  开发笔记 > 程序员 > 正文

形象的打比方来介绍下对TCPUDPSOCEKT的理解吧,一看都懂哟(最易懂)

对于TCP协议来说,SOCKET就相当于是一个现实生活中的个人招待所.首先来说个人招待所要有个位置,所以通过bind,把这个个人招待所的位置确定好,个人招待所的服务员也得要得到

       对于TCP协议来说, SOCKET就相当于是一个现实生活中的个人招待所. 首先来说个人招待所要有个位置,所以通过bind, 把这个个人招待所的位置确定好, 个人招待所的服务员也得要得到消息了才能够上班来接待顾客, 所以要listen,。客户现在就可connect到接待处, 任何客户要进入, 都首先得要被个人招待所Accept, 得到一个临时通行证, 才能够在个人招待所里进行各种业务, 而被接待后, 有什么事, 得要拿临时通行证来识别每一个客户, 而轮到服务某个客户的时间, 也是通过这个临时通行证呼叫客户才能够通信。

        所以 TCP 的服务器, 创建SOCKET, bind, listen, accept, 然后再用accept回来的客户专用临时通行证进行交流. 客户走的时候也必须把临时通行证回收, 也就是关闭accept回来的socket.

       由此可见TCP有用于监听的套接字和用于接待的的套接字,共两个。


        对于UDP协议来说, SOCKET就相当于想是生活中的网络客服, 一个网络客服可以同时服务N个顾客, 只要顾客发消息过来了, 这个网络客服就可以跟顾客进行联系, 并且这个网络客服可以处理很多消息, 任何顾客发消息过来,网络客服都迅速的同时处理这些消息. 但是, 只要顾客不来消息联系网络客服,网络客服就没什么必要主动联系. 
        UDP的服务器, 只要bind以后就可以直接等待recvfrom, 有人sendto东西过来, 就立即做事, 没有sendto过来, 也没什么必要做事. 虽然不排除服务器隔开一段时间后主动向客户发送东西, 但这个客户到底还在不在, 已经不知道了. 所以一般服务器是懒得动的,所以udp只要知道IP地址和端口号就可以连接了,其他的不用理会。 
         由此可见udp只需要一个套接字就可以了。

再总结下吧,从这上面的流程看得出来了吧:
        tcp有监听还有能接待,比较负责,也就是说它的可靠性好,安全性高,但是效率要差点。
        udp来说,虽然他不像tcp那么负责,也就是他可靠性不高,但是有信息来他马上就直接处理,说明他效率高。
 


推荐阅读
  • 本文介绍如何在现有网络中部署基于Linux系统的透明防火墙(网桥模式),以实现灵活的时间段控制、流量限制等功能。通过详细的步骤和配置说明,确保内部网络的安全性和稳定性。 ... [详细]
  • 作者:守望者1028链接:https:www.nowcoder.comdiscuss55353来源:牛客网面试高频题:校招过程中参考过牛客诸位大佬的面经,但是具体哪一块是参考谁的我 ... [详细]
  • 访问一个网页的全过程
    准备:DHCPUDPIP和以太网启动主机,用一根以太网电缆连接到学校的以太网交换机,交换机又与学校的路由器相连.学校的这台路由器与一个ISP链接,此ISP(Intern ... [详细]
  • 本文深入探讨了MAC地址与IP地址绑定策略在网络安全中的应用及其潜在风险,同时提供了针对该策略的破解方法和相应的防御措施。 ... [详细]
  • NFS(Network File System)即网络文件系统,是一种分布式文件系统协议,主要用于Unix和类Unix系统之间的文件共享。本文详细介绍NFS的配置文件/etc/exports和相关服务配置,帮助读者理解如何在Linux环境中配置NFS客户端。 ... [详细]
  • 三菱PLC SLMP协议报文详解
    本文详细解析了三菱PLC中使用的SLMP协议报文结构,包括其工作原理、通信流程及报文格式,旨在帮助工程师和技术人员更好地理解和运用这一协议。 ... [详细]
  • 使用C# .NET构建UDP点对点聊天应用
    本文详细介绍如何利用C# .NET框架开发一个基于UDP协议的点对点聊天程序,包括客户端与服务器之间的连接建立、数据传输等核心功能。 ... [详细]
  • 本文将详细探讨 Linux 系统中的 netstat 命令,该命令用于查看网络状态和连接情况。通过了解 IP 地址和端口的基本概念,我们将更好地理解如何利用 netstat 命令来监控和管理网络服务。 ... [详细]
  • TCP/IP基础知识详解
    本文详细介绍了TCP/IP协议的基本概念,包括网络层次模型、TCP三次握手过程、四次挥手过程以及TCP与UDP的比较。通过这些内容,读者可以更好地理解TCP/IP协议的工作原理。 ... [详细]
  • 解析EasyCVR平台国标GB28181协议下的TCP与UDP模式
    在使用EasyCVR视频融合平台过程中,用户常遇到关于端口设置的问题,尤其是TCP和UDP模式的区别。本文将详细介绍这两种模式在GB28181协议下的具体应用及差异。 ... [详细]
  • 一面问题:MySQLRedisKafka线程算法mysql知道哪些存储引擎,它们的区别mysql索引在什么情况下会失效mysql在项目中的优化场景&# ... [详细]
  • 本文深入探讨了计算机网络中的传输层概念,包括UDP和TCP的主要特性、头部格式、连接建立与终止过程、可靠传输机制、滑动窗口技术、流量控制策略以及拥塞控制方法等。通过详细解析,帮助读者全面理解传输层的工作原理。 ... [详细]
  • Python Socket 基础入门
    本文介绍了客户端与服务端如何通过IP地址进行身份验证,并详细说明了在不同操作系统中查看和配置网络接口的方法。同时,文章还探讨了Socket的基本使用方法及其工作流程。 ... [详细]
  • 本文详细探讨了虚拟化的基本概念,包括服务器虚拟化、网络虚拟化及其在云计算环境中的应用。特别强调了SDN技术在网络虚拟化和云计算中的关键作用,以及网络虚拟化技术如何提升资源利用效率和管理灵活性。 ... [详细]
  • 本文深入探讨了网络编程中的基本概念,如指针、引用和可重入函数,并详细介绍了OSI七层模型和TCP/IP四层模型的功能与协议。同时,文章还对比了HTTP与HTTPS的区别,分析了HTTP请求报文的结构,讨论了TCP与UDP的主要差异,以及滑动窗口协议的工作原理。 ... [详细]
author-avatar
手机用户2602914627
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有