• Socket 原理篇


    Socket:

      

      socket "插座"的意思,作为进程通信机制,用于描述IP地址和端口,是一个通信链的句柄(两个程序通信用的)

      在Internet上有很多这样的主机,这些主机一般运行了多个服务软件,同时提供几种服务,每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应不同的服务

      http使用80端口 ftp使用 21 端口 smtp使用23端口

    Socket有两种类型

      1.Stream

      一种面向连接的Socket,针对于面向连接的TCP服务应用,安全,效率低

      2.DataGram 数据报式

      一种无连接的socket,对应物连接的UDP服务应用,不安全(丢失,顺序混乱,在接受端要分析重排及要求重发),但效率高

     

    Socket一般运用模式(服务端 和客户端)

      服务端Socket

        一个负责接受客户端连接请求,不负责与客户端通信

        每成功接收到一个客户端的连接请求,并产生一个对应的套接字

      客户端Socket  

        必须指定要连接的服务端地址和端口

        通过创建一个Socket对象来初始化一个到服务器端的TCP连接

     

    Socket通信过程

      服务端:

        申请一个socket

        绑定到一个IP和端口

        开启监听,等待连接

      客户端:

        申请一个socket  

        连接服务器 需指定一个IP和端口

      服务器端接到连接请求后,产生一个新的socket与客户端建立连接并进行通讯,原监听Socket 继续监听

     

     

  • 相关阅读:
    关于浏览器及系统的判断
    toggle与slideToggle
    安卓与ios的不同处理
    关于常用循环遍历获取数据
    docker
    Mysql
    rabbitMQ的使用转载
    Git命令行
    vue项目创建完整版
    redis操作(str.hash.list.set)
  • 原文地址:https://www.cnblogs.com/chenanzixue/p/3465106.html
Copyright © 2020-2023  润新知