zoukankan      html  css  js  c++  java
  • 基于TCP通信的套接字

    基于tcp通信的套接字必须先启动服务器再去启动客户端去链接服务器

    客户端

    服务端

    这只是基于tcp通信的一个简单的套接字  只能进行一次的通信

     服务端                                                                                                 客户端

    这是能多次通信的套接字

     在阻塞前添加一个循环就能实现一个链接循环

    服务端

    客户端

    这是模拟ssh实现远程执行命令

     粘包问题

    二、两种情况下会发生粘包。

    1.发送数据时间间隔很短,数据了很小,会合到一起,产生粘包

    2.接收方不及时接收缓冲区的包,造成多个包接收(客户端发送了一段数据,服务端只收了一小部分,服务端下次再收的时候还是从缓冲区拿上次遗留的数据,产生粘包)

    客户端

    服务端

    之前的ssh远程执行命令一直会有粘包问题存在 用struct模块能很好的解决粘包问题

    服务端

    客户端

  • 相关阅读:
    Go语言基础之map
    Go语言基础之切片
    Go语言基础之数组
    Go语言fmt.Printf使用指南
    Go语言基础之流程控制
    Go语言基础之运算符
    Go语言基础之变量和常量
    Go语言环境搭建
    随笔
    使用SocketServer 创建TCP服务端
  • 原文地址:https://www.cnblogs.com/layerluo/p/9581314.html
Copyright © 2011-2022 走看看