Linux C/C++服务器/架构师
文章平均质量分 69
卧栏听风
每一年都奔走在自己的热爱里!
展开
-
带你了解TCP(一)
带你了解TCP(一)基本认识报文格式序列号:连接时用随机值作为初始值,通过SYN包传给接收端,发送一次数据,累加一次数据字节的大小。用来解决网络包乱序问题。确认应答号:下一次期望收到数据的序列号,发送端收到应答号认为这个序号以前的数据已经被正常接收。用来解决不丢包问题。控制位:ACK: 该位为1时,确认应答字段变为有效。RST: 该位为1时,TCP连接出现异常必须强制断开连接。SYN: 该位为1时,表示希望建立连接。FIN:该位为1时,表示希望断开连接。常见问题为什么需要TCP原创 2022-02-20 17:26:45 · 1166 阅读 · 0 评论 -
二叉树与红黑树
#include <stdio.h>#include <stdlib.h>#include <string.h>#define RED 1#define BLACK 2typedef int KEY_TYPE;typedef struct _rbtree_node {unsigned char color;struct _rbtree_node *right;struct _rbtree_node *left;struct _rbtree_原创 2021-05-02 22:42:55 · 71 阅读 · 0 评论 -
UDP可靠性传输学习笔记
UDP可靠性传输UDP场景实时性场景:音视频的通话、游戏(王者荣耀)节省资源的要求:嵌入式设备(电池供电)、手机状态报告、户外的设备UDP与TCPKCP 简介KCP是一个快速可靠协议,能以比 TCP浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。纯算法实现,并不负责底层协议(如UDP)的收发,需要使用者自己定义下层数据包的发送方式,以 callback的方式提供给 KCP。 连时钟都需要外部传递进来,内部不会有任何一次系统调用。整个协议只有原创 2021-03-13 22:03:10 · 165 阅读 · 0 评论