
网络通信
学习记录
xxxywu
这个作者很懒,什么都没留下…
展开
-
TCP/IP数据报及三次握手四次挥手
文章目录1.TCP数据报结构2. 连接的建立 (三次握手)3 TCP数据的传输4. 断开连接 (四次挥手)关于 TIME_WAIT 状态的说明5 shutdown函数 优雅地断开TCP连接close()/closesocket()和shutdown()的区别1.TCP数据报结构客户端在收发数据前要使用 connect() 函数和服务器建立连接。建立连接的目的是保证IP地址、端口、物理链路等正确无误,为数据的传输开辟通道。TCP建立连接时要传输三个数据包,俗称三次握手(Three-way Handsha转载 2020-08-10 10:56:54 · 211 阅读 · 0 评论 -
cURLpp使用及学习
1.Global Preparation该程序必须全局初始化某些cURLpp功能。那意味着无论您打算使用多少次,都应该只完成一次初始化。在您的程序的整个生命周期中一次。这是通过使用cURLpp :: initialize(long flags= cURLpp :: CURL_GLOBAL_ALL)它采用一个参数,该参数是一种位模式,可以告诉cURLpp初始化。有关更多详细信息,请参见curl_global_init的手册页。当程序不再使用cURLpp时,应调用cURLpp :: terminat原创 2020-08-10 10:13:06 · 2697 阅读 · 0 评论 -
libcurl API 常用函数
libcurl详参libcurl1 curl_easy_getinfoCURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ... );使用此函数从curl会话请求内部信息。第三个参数必须是指向long的指针、指向char*的指针、指向struct curl_slist*的指针或指向double的指针(本文档将进一步介绍)。指向的数...原创 2020-03-24 20:43:34 · 1698 阅读 · 0 评论 -
TCP粘包/拆包问题的分析与解决
文章目录1.TCP粘包/拆包问题1.1 TCP粘包/拆包问题说明1.2 TCP粘包/拆包发生的原因2.未考虑TCP粘包导致功能异常案例2.1 示例2.2 TCP粘包处理无论是服务端还是客户端,当我们读取或者发送消息的时候,都需要考虑TCP底层的粘包/拆包机制。1.TCP粘包/拆包问题TCP是个“流”协议,所谓流,就是没有界限的一串数据。大家可以想想河里的流水,是连成一片的,其间并没有分界线。TCP底层并不了解上层业务数据的具体含义,它会根据TCP缓冲区的实际情况进行包的划分,所以在业务上认为,一个完转载 2020-08-07 15:54:20 · 528 阅读 · 0 评论 -
Socket通信原理学习
1TCP/IP 与UDPTCP/IP(Transmission Control Protocol /Internet protocol) ,传输控制协议与网间协议,是一个工业标准的协议集,是为广域网(WANs)设计的。UDP(User Data Protocol)是与TCP相对应的协议。socket?2 SocketSocket是应用层与TCP/IP协议族通信的中间软件抽象层,是一组...转载 2020-03-05 18:45:43 · 442 阅读 · 0 评论