最近,了解了一下云测的相关东西,忽然看到远程主机,web上,用鼠标当做手指控制手机,云主机把界面变化及时响应回来。然后看到了 KCP 协议,就想了解一下。 目前,基于UTP协议,利用空间换取时间(快的响应速度)策略的协议,如雨后春笋般出现,如QUIC
转载
2024-09-02 18:24:17
82阅读
前言一、KCP概述对于游戏开发,尤其是MOBA(多人在线竞技)游戏,延迟是需要控制的。但是对于传统的TCP(网络友好,很棒),并不利于包的实时性传输,因为他的超时重传和拥塞控制都是网络友好,对于我们包的实时性,没有优势。所以一般都是需要基于UDP去实现一套自己的网络协议,保证包的实时,以及可靠。其实就是牺牲TCP的友好,牺牲带宽,以空间换时间。基于UDP,网上有一些优秀的协议,比如KCP。KCP是
Http Keep-Alive和Tcp keepalive介绍1.TCP连接介绍1.1 建立连接—三次握手1.2 释放连接—四次挥手2. KeepAlive与Keep-Alive介绍2.1 Http Keep-Alive2.2 Tcp KeepAlive3.操作系统有关Keepalive参数设置3.1 Linux系统3.2 Windows系统4.常用服务端配置Keepalive参数4.1 Ngi
kcp协议是传输层的一个具有可靠性的传输层ARQ协议。它的设计是为了解决在网络拥堵情况下tcp协议的网络速度慢的问题。kcp力求在保证可靠性的情况下提高传输速度。kcp协议的关注点主要在控制数据的可靠性和提高传输速度上面,因此kcp没有规定下层传输协议,一般用udp作为下层传输协议,kcp层协议的数据包在udp数据报文的基础上增加控制头。当用户数据很大,大于一个udp包能承担的范围时(大于ms
转载
2024-01-05 13:18:07
62阅读
概述KCP协议结合了TCP和UDP协议的特点,是一个快速可靠的协议。
引述官方介绍:KCP是一个快速可靠协议,能以比 TCP浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。纯算法实现,并不负责底层协议(如UDP)的收发,需要使用者自己定义下层数据的发送方式,以 callback的方式提供给 KCP。连时钟都需要外部传递进来,内部不会有任何一次系统调用
转载
2023-11-19 10:19:48
503阅读
最近一段时间一直在看wireshark的源代码,没办法,项目需要嘛。这里写了一些wireshark源代码的分析,比较粗浅也比较混乱。epan/dissector/packet-XXX.c提供了相应协议的解析器需要把解析器先注册到系统中,然后实现协议解析proto_register_XXX()dissect_XXX()在协议解析中使用到的函数有三个变量, tvbuff_t , packet_info
转载
2024-03-28 11:39:50
349阅读
云真机已经支持手机端的画面投影。云真机实时操作,对延迟的要求比远程视频对话的要求更高(10个快速可...
原创
2023-05-08 14:25:46
2151阅读
# Java KCP协议及其应用
## 简介
KCP(KCP协议)是由腾讯开发的一种快速可靠的UDP协议。它在UDP协议的基础上增加了可靠性和快速传输的功能,适用于高丢包、高延迟的网络环境。在实际应用中,KCP常常用于游戏开发、视频传输等领域。
## KCP协议特点
KCP协议具有以下几个特点:
- **快速可靠**:KCP协议通过ARQ(自动重传请求)和FEC(前向纠错)等技术,提高了
原创
2024-04-18 06:31:58
203阅读
KCP是一种基于上层协议的(UDP协议)快速可靠协议,在KCP官网中提到跟TCP相比的优势就是降低延时,能够平均降低30%~40%的延时时间且最大延迟降低三倍的传输效果,不过所付出的代价是浪费比TCP10%~20%的带宽代价。从个人角度来看,可以从三个方面去分析KCP与TCP的所导致的性能问题:1、计算包超时的策略2、包重传的策略3、退流控制策略计算包超时策略:TCP计算超时的策略是每超时一次新的
转载
2023-10-14 07:23:32
226阅读
kcp协议与tcp协议类似,是一种ARQ协议。他的优点在于比tcp的延迟更小30%-40%,但相应的会牺牲一部分的带宽,大该比tcp多浪费10%~20%。tcp的设计目标是增大网络利用率,而kcp的设计目标是增大网络传输速率。因此kcp与tcp对比,kcp有如下机制可以提高传输速度:1.kcp的RTO每次是增加为1.5倍,相比tcp的2倍,具有更短的超时重传时间2.无延迟ACK,通过配置让ack立
转载
2024-02-21 12:02:59
510阅读
10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。纯算法实现,并不负责底层协议(如UDP)的收发,需要使用者自己定义下层数据包的发送方式,并以 callback的方式提供给 KCP。连时
转载
2013-04-14 12:30:00
134阅读
2评论
# Android KCP 协议使用教程
在现代移动应用中,网络通信是不可或缺的部分。而KCP协议是一种高效的传输协议,特别适用于高丢包和高延迟的网络环境。本文将围绕Android平台上KCP协议的使用进行探讨,包括其基本原理、实现方法以及代码示例。
## 什么是KCP
KCP是一种基于UDP协议的可靠传输协议,主要解决了TCP在高丢包率和高延迟下的性能问题。KCP具有低延迟、高吞吐量的特性
原创
2024-09-10 05:29:15
138阅读
架构、分布式、日志队列,标题自己都看着唬人,其实就是一个日志收集的功能,只不过中间加了一个Kafka做消息队列罢了。kafka介绍Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因
转载
2024-09-09 08:02:20
22阅读
# 如何在 Android 中实现 KCP 协议
KCP(KCP协议)是一种高效的可靠UDP协议,它常用于实时通信、在线游戏等场景。本文将详细介绍如何在 Android 中实现 KCP 协议,适合刚入行的开发者学习和参考。
## 整体流程
实现 KCP 协议的流程可以概括为以下几步:
| 步骤 | 描述 |
|------|------|
| 1 | 准备工作:添加 KCP 库依赖
原创
2024-09-17 06:51:23
141阅读
在这篇博文中,我们将探讨如何进行“Python KCP协议测试”。通过描述测试过程中遇到的问题,分析错误现象,找到根因,最终给出解决方案与优化措施,帮助大家更好地理解与应用KCP协议。
## 问题背景
在实际的网络应用中,KCP协议常被用来应对UDP传输中的丢包与延迟问题。我们在进行基于KCP的项目测试时,频繁遇到性能波动不定的问题,表现为数据包的丢失与延迟。以下是问题的主要描述现象:
-
利用wireshark进行kcp抓包
原创
2023-09-04 12:50:56
876阅读
点赞
TCP UDPTCP与UDP基本区别 1.基于连接与无连接 2.TCP要求系统资源较多,UDP较少; 3.UDP程序结构较简单 4.流模式(TCP)与数据报模式(UDP); 5.TCP保证数据正确性,UDP可能丢包 6.TCP保证数据顺序,UDP不保证 UDP应用场
转载
2023-10-16 15:22:09
108阅读
传统游戏项目一般使用TCP协议进行通信,得益于它的稳定和可靠,不过在网络不稳定的情况下,会出现丢包严重。不过近期有不少
原创
2024-04-12 10:49:34
362阅读
Java中使用KCP协议_何小成的成长记录-CSDN博客_java kcpJava中使用KCP协议——性能测试及应用_何小成
转载
2023-01-05 20:41:25
566阅读
目录KCP是什么?KCP商业案例KCP的实现原理停等式ARQ协议确认机制超时重传连续ARQ(1) 回退n帧(go-back-n)ARQ(2) 选择重传协议(selective repeat)(待补充)滑动窗口协议TCP应用的ARQ机制和其他机制(待更新)接下来看一下KCP和TCP的对比:(待补充)KCP源码解析KCP应用场景:(待补充)参考文章:查了不少KCP资料,可在很多文章中涉及到多种网络底层