kcp源码segment头文件各字段含义

conv

conv为一个表示会话编号的整数,和tcp的 conv一样,通信双// 方需保证 conv相同,相互的数据包才能够被认可

cmd            

cmd用来区分分片的作用。IKCP_CMD_PUSH:数据分片 IKCP_CMD_ACK:ack分片 IKCP_CMD_WASK请求告知窗口大小 IKCP_CMD_WINS:告知窗口大小
frg              

message中的segment分片ID(在message中的索引,由大到小,0表示最后一个分片)
wnd            

剩余接收窗口大小(接收窗口大小-接收队列大小)
ts                

message发送时刻的时间戳
sn              

message分片segment的序号
una            

待接收消息序号(接收滑动窗口左端)
rto              

该分片的超时重传等待时间
xmit          

发送分片的次数,每发送一次加一。
resendts    

下次超时重传的时间戳
fastack      

该分片收到ack的次数
len            

数据长度
data          

数据

时间: 2024-10-25 14:34:07

kcp源码segment头文件各字段含义的相关文章

android源码大放送(实战开发必备),免费安卓demo源码,例子大全文件详细列表

免费安卓demo源码,例子大全文件详细列表 本列表源码永久免费下载地址:http://www.jiandaima.com/blog/android-demo 卷 yunpan 的文件夹 PATH 列表 卷序列号为 0000-73EC E:. │ jiandaima.com文件列表生成.bat │ 例子大全说明.txt │ 本例子永久更新地址~.url │ 目录列表2016.03.10更新.txt │ ├─前台界面 │ ├─3D标签云卡片热门 │ │ Android TagCloudView云标签

kcp源码走读

我看的是golang版本的kcp源码,下载地址:https://github.com/skywind3000/kcp 一个发送数据接收数据的基本流程如下 //发送端有一段数据buffer需要发送,于是调用send函数 kcp1.Send(buf.Bytes())//send函数将buffer分片成kcp的数据包格式,存在待发送队列中 kcp1.flush()//将发送队列中的数据通过下层协议(UDP)进行发送 //kcp2接收到下层协议(UDP)传进来的数据底层数据buffer kcp2.Inp

Hyperledger Fabric 1.0 从零开始(四)——Fabric源码及镜像文件处理

2:Fabric源码及镜像文件处理 2.1下载Fabric源码 下载Fabric源码是因为要用到源码中提到的列子和工具,工具编译需要用到go语言环境,因此需要把源码目录放到$GOPATH下.通过1.3中go的安装配置,$GOPATH设置为/opt/gopath. 我们可以使用Git命令下载源码,也可以使用go get命令,偷懒一点,我们直接用go get命令获取最新的Fabric源码: go get github.com/hyperledger/fabric [注:使用离线环境或者内网环境的朋友

源码:windows文件分割与合并

#include <Windows.h> #include <vector> #include <string> using namespace std; //判断文件是否存在 bool FileExistsW(const wstring &fn) { WIN32_FIND_DATAW fd; HANDLE hFile = FindFirstFileW(fn.c_str(),&fd); if (hFile != INVALID_HANDLE_VALUE)

时序数据库 Apache-IoTDB 源码解析之文件索引块(五)

上一章聊到 TsFile 的文件组成,以及数据块的详细介绍.详情请见: 时序数据库 Apache-IoTDB 源码解析之文件数据块(四) 打一波广告,欢迎大家访问IoTDB 仓库,求一波 Star. 这一章主要想聊聊: TsFile索引块的组成 索引块的查询过程 索引块目前在做的改进项 索引块 索引块由两大部分组成,其写入的方式是从左到右写入,也就是从文件头向文件尾写入.但读出的方式是先读出TsFileMetaData 再读出 TsDeviceMetaDataList 中的具体一部分.我们按照读

mysql 从源码解读.frm文件构成

Mysql的.frm文件是用于保存表结构信息的文件,最近从源码了解了一下.frm的组成,在网上也有一些大神对.frm的组成做过分享,自己再去了解一下总是没坏处的,.frm文件的创建在create_frm函数,但是这个函数只有对header部分的记录信息,具体表结构信息未找到在哪个函数生成的,不过有个open_binary_frm函数是对.frm文件的读取可以了解.frm的详细结构组成,注意下面的函数都是从5.7.19的版本中提取,5.7之前的版本可能有点不同,比如虚拟列 首先看看create_f

Android 源码 URLUTIL 判断文件类型问题

今天修复一个使用系统的方法 android.webkit.URLUtil.guessFileName(String url,String contentDisposition, String mimeType) 方法获取文件名. 传入参数如图: 问题来了,guessFileName 返回的文件名不是 contentDisposition 中给出的fileName ,而是 qujing-for-android.bin 看了下URLUtil 的源码 public static final Strin

f2fs源码分析之文件读写过程

本篇包括三个部分:1)f2fs 文件表示方法: 2)NAT详细介绍:3)f2fs文件读写过程:4) 下面详细阐述f2fs读写的过程. 管理数据位置关键的数据结构是node,node包括三种:inode.直接node.间接node.其中inode记录了文件的基本信息,包括访问权限.文件大小.修改时间等,也有索引的功能:直接node和间接node单纯负责索引.F2fs的inode中有923个直接数据块索引,2个一级索引,2个二级索引,1个三级索引,文件的逻辑表示如下图: inode中有923个索引项

飞鸽传书源码分析五-文件传输

转载请注明出处:http://blog.csdn.net/mxway/article/details/44889871 本文是在飞鸽传书源码v2.06的基础上进行分析的. 1.添加要发送的文件 文件的发送是在发送对话框中进行的,首先找到发送对话框的快捷菜单. File Transfer对应的菜单id为MENU_FILEADD,相应的command处理事件在Senddlg.cpp中的EvCommand函数中 BOOL TSendDlg::EvCommand(WORD wNotifyCode, WO