自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

redwingz的博客

Linux内核网络、虚拟化

  • 博客(8)
  • 资源 (5)
  • 论坛 (1)
  • 收藏
  • 关注

原创 TCP-Westwood拥塞算法

TCP-Westwood在TCP-Reno的基础上增强了窗口控制和退避处理,例如,TCPW发送端监控ACK报文的接收速率,进而估算当前连接可达到的数据发送速率(可用带宽)。当发送端检测到丢包时(超时或者3个重复ACK),发送端根据估算的发送速率设置拥塞窗口大小(cwnd)和慢启动阈值(ssthresh)。不同于TCP-Reno的窗口减半处理,TCP-Westwood避免太过保守的减低窗口操作,TCP-Westwood称此为:Faster-Recovery。与TCP-Reno相比,TCP-Westwood更适

2020-06-30 22:08:37 885

原创 TCP-Hybla拥塞算法

TCP Hybla算法的改进是对于RTT较长的连接(例如卫星和无线网络)可获得与参考TCP连接(如,有线网络)相同的瞬时发送速率B(t)。TCP的发送速率计算如下(W(t)表示t时刻的发送窗口值):B(t)=W(t)/RTT(1)\tag{1} B(t)=W(t)/RTTB(t)=W(t)/RTT(1)对于传统TCP,发送窗口计算如下:W(t)={2t/RTT if 0≤t<tγ,SSt−tγRTT+γ if t>tγ,CA(2)\tag{2}

2020-06-20 21:49:40 648 1

原创 TCP-Reno拥塞算法

经典的Reno算法实现了三个拥塞函数,如下所示:struct tcp_congestion_ops tcp_reno = { .flags = TCP_CONG_NON_RESTRICTED, .name = "reno", .owner = THIS_MODULE, .ssthresh = tcp_reno_ssthresh, .cong_avoid = tcp_reno_cong_avoid, .undo_cwnd

2020-06-16 22:30:12 2483

原创 H-TCP拥塞算法

根据对AIMD拥塞算法的观察,对于传统网络,增加值α应当足够小,以便于同传统TCP拥塞算法(Reno/NewReno)相兼容;而对于高速和长距离(high-speed and long distance)网络,可增大α的值,以便获取额外的带宽。基于以上判断,H-TCP通过动态的调整α和β的值,来达到合理利用高速长距离网络的带宽,而又可在传统网络中与标准TCP保持友善性的目的。在高速模式下,增长参数α的值等于αH(Δ)\alpha^{H}(\Delta )αH(Δ).在低速模式下,增长参数alpha的值等于

2020-06-15 22:04:01 319

原创 TCP客户端端口号选择

如下函数inet_hash_connect,如果没有指定绑定的接口,在发起连接的时候,由函数inet_sk_port_offset先选择一个端口偏移量(port_offset),函数__inet_hash_connect负责绑定端口。int inet_hash_connect(struct inet_timewait_death_row *death_row, struct sock *sk){ u32 port_offset = 0; if (!inet_sk(sk)->ine

2020-06-10 22:03:37 1287

原创 TCP监听端口选择

内核提供了两个PROC文件可以控制套接口使用的端口号范围,其中文件ipv4_local_port_range定义了可使用的端口范围;文件ip_local_reserved_ports定义了保留的端口范围。static struct ctl_table ipv4_net_table[] = { { .procname = "ip_local_port_range", .maxlen = sizeof(init_net.ipv4.ip_local_ports

2020-06-09 23:32:47 1359

原创 传统TCP(Reno)拥塞响应函数

TCP拥塞响应函数指吞吐与丢包率之间的一个关系,传统Reno-TCP执行以下两个操作:1)将丢包视为网络发生了拥塞,将拥塞窗口降低一半;2)在拥塞避免阶段,每个RTT周期,拥塞窗口增加1。以上两者决定了在丢包率和平均吞吐之间形成了一个简单的关系,这里的丢包率和吞吐都是指的一个稳定的状态值,不考虑丢包率急剧变化的情况。由于现实中传统TCP实现的一些具体情况,导致其对拥塞的反应比理论上要缓慢,例如较长的超时时间、SlowStart恢复算法、发送窗口限制以及延时ACK等,都将导致实际的窗口增长相比理论上要慢,所

2020-06-06 23:45:24 550

原创 TCP套接口选择

在TCP接收函数tcp_v4_rcv中,由__inet_lookup_skb执行报文所属套接口的查找任务。int tcp_v4_rcv(struct sk_buff *skb){ int sdif = inet_sdif(skb); th = (const struct tcphdr *)skb->data; iph = ip_hdr(skb);lookup: sk = __inet_lookup_skb(&tcp_hashinfo, skb, __tc

2020-06-02 21:25:00 229

WEB Portal 认证完整的交互报文

web认证交互报文,包括WLAN controller与portal server的认证与注销,AC与radius 服务器的认证报文。

2018-04-24

IKEv2-camellia.pcap

IKEv2协议使用camellia加密算法的协商报文,交互流程。

2019-10-28

IKEv2-rw-cert2.pcap

strongswan使用linux内核的af_alg加密接口配置,IKEv2协议交互报文。

2019-10-28

libssh2-1.8.0 and ssh2_batch example

ssh2_batch可执行程序,用于非交互式的ssh命令执行。源代码和libssh2

2018-06-13

botan-ed25519.pcap

IKEv2协议交互报文,认证方式选用Ed25519算法的证书方式。

2019-10-28

redwingz的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除