网络拥塞控制(八) 外传之如何测量TCP的拥塞窗口 - 海阔天空 - 博客园
网络拥塞控制(八) 外传之如何测量TCP的拥塞窗口
我们一直讲了许多种网络拥塞算法,这些一直都是理论上的算法,到底在实际中窗口的调整是怎么样的呢?对于一个连接来说,如何知道当前的拥塞窗口值是多少呢?
在Linux下,使用内核模块tcpprobe,可以得到TCP连接的参数,但是麻烦的是,该模块需要内核kprobes的支持,如果不怕麻烦的话,当然可以尝试下。我们希望的是能够不需要通过这么复杂的机制,就能够得到内核中TCP连接的参数。在翻遍了proc目录和内核的一些代码后,终于找到了我想要的方法:getsockopt()函数调用。
该选项是Linux平台所独有的,所以在很多书籍,包括《Unix网络编程》这种圣经级的书和Linux的man getsockopt手册中,都没有提到这个选项。
在内核的函数tcp_getsockopt的代码中,可以看到这个选项TCP_INFO,返回了几乎所有的参数,同时还有其他的许多参数可以得到一些其他的信息。具体每个参数的含义可以参考内核中的注释。
Code
1
void read_cwnd(int tcp_socket)
2
{
3
struct tcp_info info;
4
int length = sizeof(struct tcp_info);
5
6
if ( getsockopt( tcp_socket, SOL_TCP, TCP_INFO, (void *)&info, (socklen_t *)&length ) == 0 )
{
7
printf("%u %u %u %u %u %u %u %u %u %u %u %u\n",
8
info.tcpi_snd_cwnd,
9
info.tcpi_snd_ssthresh,
10
info.tcpi_rcv_ssthresh,
11
info.tcpi_rtt,
12
info.tcpi_rttvar,
13
info.tcpi_unacked,
14
info.tcpi_sacked,
15
info.tcpi_lost,
16
info.tcpi_retrans,
17
info.tcpi_fackets,
18
info.tcpi_ca_state,
19
info.tcpi_reordering
20
);
21
}
22
}
有了这个选项后,我们就不再停留在各种拥塞算法的理论层面上,就可以从实际中看到TCP的各种算法的优劣,比较有趣的内容就产生了。
相关文章
- 文献综述--IP网络中单速率多播拥塞控制算法研究
- 通信网的组成
- 计算机网络原理课后习题答案
- 网络协议分析复习资料
- 计算机网络作业2-5
- 计算机网络答案第四版
- 计算机通信网总结(推荐)
- 课程教学实施计划
- 防火墙包过滤技术分析_赵辉期刊
文献综述 毕业设计题目: IP 网络中单速率多播拥塞控制 IP 网络中单速率多播拥塞控制算法研究 一. 引言 今天,因特网应用,如网络视频会议.网络音频/视频广播.AOD /VOD .数据分发.多媒体远程教育.在线信息恢复.软件或代理缓存更 ...
通信网的组成(用户通信终端)(物理传输链路)(链路的汇聚点) 通信网分类(固定电话网)(移动通信网)(ATM网络)(局域网) 网络有(子网):(ATM网络)(X2.5分组数据网)(PSTN公用电话交换网)(ISDN综合业务数字网)(移动通信 ...
<计算机网络>(第四版) 谢希仁 第1章 概述 作业题1-03.1-06.1-10.1-13.1-20.1-22 1-03.试从多个方面比较电路交换.报文交换和分组交换的主要优缺点. 答:(1)电路交换 它的特点是实时性强,时延 ...
1.应用层有哪些协议? 域名系统DNS: 文件传送协议FTP: 远程终端协议TELNET: 简单邮件传送协议SMTP: 超文本协议HTTP: 简单网络管理协议 SNMP: 邮件读取协议POP3和IMAP: 动态主机协议DHCP: 2.传输层 ...
计算机网络作业(第二章) 2-01 物理层要解决哪些问题?物理层的主要特点是什么? 答:物理层要解决的问题是: (1) 怎样才能在连接各种计算机的传输媒体上传输数据比特流: (2) 尽可能的屏蔽掉各种差异,是物理层上面的数据链路层感觉不到这 ...
计算机网络答案 教材:计算机网络(第四版) 作者:谢希仁 第一章 概述 习题1-01 答: 计算机网络的发展过程大致经历了四个阶段. 第一阶段:(20世纪60年代) 以单个计算机为中心的面向终端的计算机网络系统.这种网络系统是以批处理信息为 ...
层和协议的集合是网络体系结构 1.数据链路层帧定界的方法. 字符计数法:利用头部中一个域来指定该帧的字符数.目端数据链咯层看到字符计数值时,它知道后面跟着多少字符,因此也知道了该帧的结束处在哪. 含字节填充的分界符法:协议使用标志字节作为起 ...
编写 审批 解放军理工大学指挥信息系统学院 教 学 实 施 教员姓名: 陈鸣,许博 单 位: 网络工程教研中心 课程名称: 计算机网络原理 授课对象: 本科学员 授课学期: 2013年春季学期 理工大学训练部制表 课 程计 划 2012学年 ...
2010年第11期福建电脑 49 防火墙包过滤技术分析 赵 辉,冯东栋 (河南大学计算中心河南开封475004) [摘要]:在网络边界设置防火墙是进行网络防护的有效手段.本文首先介绍了防火墙及其功能,然后分析了防火墙所使用的最基本的技术手段 ...