本文作为一个专题来讨论TCP可靠传输的实现,其中部分论述迁移自TCP的流量控制和拥塞控制。
TCP的流量控制和拥塞控制
发表于
本文作为一个专题来讨论TCP的流量控制和拥塞控制,其中部分论述迁移自libutp源码简析。有关可靠传输的实现,详见TCP的可靠传输。
流量控制着眼于接收端,保证发送端的发送速率能够匹配接收端的接受速率和缓存大小。流量控制包含滑动窗口 rwnd
、Nagle算法等。拥塞控制着眼于整个网络的性能,是当前发送端的速率匹配当前链路能承载的的限额。拥塞控制包含拥塞窗口 rwnd
、慢启动、拥塞避免、Fast retransmit 和 Fast recovery 等。
TCP套接字编程
发表于
介绍 TCP 套接口编程。
UDP套接字编程
发表于
UDP协议是相对于TCP协议不是面向连接的,也是不可靠的,因此UDP套接字编程在思路上和TCP套接字编程很不一样。
数据挖掘简易复习
发表于
《数据挖掘》课程简易复习提纲,主要根据 PPT 整理。时间仓促,不排除存在部分内容爆炸。
C++ functor 和 lambda
发表于
介绍 C++ lambda、仿函数、std::function 等。
Google Kickstart 2017 Round C题解
发表于
C轮感觉比校招笔试轮次的DE要简单点了,这次有四道题都很有意思。
C++内存对齐与多态
发表于
最近在看Inside the C++ Object Model,一种日经面试题,求sizeof(A)
1 | struct A{ |
这种题目其实考的知识点很多,包含了虚函数虚继承、内存对齐等一系列C++的语言特性。
Google Kickstart 2017 Round E题解
发表于
E轮是Google的校招笔试轮次了。
Google Kickstart 2017 Round G题解
发表于
Google Kickstart 2017 Round G,当时参加了Google招聘的云中讲堂,建议我们刷一刷Round G。然后就被虐了,只过了A和BC的小数据,55分Rk338滚粗。今天重新做了下,发现其实并不是很难,关键还是手速和脑子要快。