![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
计算机网络
文章平均质量分 78
Soonyang Zhang
书读半本,浅尝辄止,天资鲁钝,岁月蹉跎,一事无成。
展开
-
xdp测试例子
xdp,ebf测试原创 2023-02-07 22:16:50 · 1279 阅读 · 0 评论 -
从FAST TCP到POWERTCP
拥塞控制,TCP,网络传输优化原创 2022-07-31 11:21:28 · 1410 阅读 · 0 评论 -
udp transparent proxy
测试UDP的透明代理。中间节点向后端中转数据时,保证IP数据包中的四元组信息不变。程序的实现很大参考[1]。测试代码[2],代码文件tp_udp.cc和udp_end.cc在test文件夹下。 在mininet中测试。拓补文件,4h-1s.py#!/usr/bin/pythonfrom mininet.topo import Topofrom mininet.net import Mininetfrom mininet.cli import CLIfrom mininet.link impor原创 2021-07-27 22:46:15 · 613 阅读 · 0 评论 -
implement tcp bbr on ns3 (在ns3上实现TCP BBR)
After several days of work and debug, I implement TCP BBR algorithms on ns3.33. One thing is to get instant rtt instead of smothed rtt. The second one is the way to reset m_priorTime will cause large m_ackElapsed time in the follwing incoming acked pac原创 2021-06-06 11:42:15 · 1466 阅读 · 6 评论 -
tcp transparent proxy (IP_TRANSPARENT)
Introduction tcp透明代理,只是测试demo。 With the support of linux kernal, a proxy on a router can intercept tcp traffic and sends the packet to destination by enble IP_TRANSPARENT. And the addresses is not changed. This demo owns much thanks to go-tproxy[1].#原创 2021-03-21 17:34:09 · 1291 阅读 · 0 评论 -
tpproxy-tcp透明代理
最近有个需求,需要在路由器设备中截获数据包,从而实现中转。为了这个事情,老师顺便给安排了三个小弟,一是给我找点帮手,二是让我带带他们。按照下面的拓补,说明。我们需要在主机h2上截获h1发往h3的TCP协议包。最先实现的版本是基于tun设备,数据包截获之后,采用UDP协议中转,类似openvpn的方式。h1----s1----h2------h3 采用tun的方式,需要配置h1的默认网关。但是我们的需求比较特别,我们对h1是没有修改权限的。之前师弟实现了一个版本,采用tap的方式,将h2-eth0同原创 2021-01-07 21:14:01 · 1862 阅读 · 0 评论 -
在mininet中测试arp欺骗
我本来只用给出测试的拓补,以及仿真中使用的命令,本篇博客就算完事。最近csdn的博客系统,好像不允许发布全是英文内容的博客。所以,我要写点废话,便于在此记录我的所学。 测试使用的拓补,2h1s.py#!/usr/bin/pythonfrom mininet.topo import Topofrom mininet.net import Mininetfrom mininet.cli import CLIfrom mininet.link import TCLinkimport timeim原创 2021-01-06 10:25:02 · 658 阅读 · 0 评论 -
自适应视频流媒体码率算法在mininet中仿真
在我们的优化范围内,理想情况下的用户体验:本地播放最合适码率的视频(在特定的设备上,高码率并不一定能带来很高的体验优化. 自适应网络流的优化方法分为三个大的方向:Client-side,Server-side,Network 自适应视频流的目标The goal of an adaptive video player is to choose the bitrate level for future chunks to deliver the highest possible QoE; e.g.,原创 2021-01-06 09:45:29 · 804 阅读 · 0 评论 -
change the available bandwidth of tcp flow dynamically in mininet
I want to make a tcp sender probe dynamically available bandwidth during the session. Previously, I tried to change the bandwidth of net device directly with the help of tc [1]. But the reusults are not conforming to my expection. So ,in this post, su原创 2020-12-26 11:24:09 · 208 阅读 · 0 评论 -
一个在ns3平台基于UDP协议实现的拥塞控制仿真框架
本来ns3中实现的TCP协议栈就实现了各种的拥塞控制算法,我自己基于UDP协议也实现了一些拥塞控制算法。为什么这么干,当时觉得基于TCP协议仿真不灵活,比如怎么拿到数据包的单向传输时延,怎么统计丢包率。当时觉的这些都没法做,于是就模仿quic协议自己实现了一个简单的传输协议。最近发现,这些在ns3中的TCP协议栈中都是可以实现的。这样就显得我自己的实现很多此一举。通过抄写别人的代码,编程能力有所提升。 然后就有一些同学,询问我的代码,代码本身是开源的。但是,一般向我问询的人都是很小白的。小白只是刚从官网原创 2020-06-15 14:48:03 · 5018 阅读 · 6 评论 -
Evaluation vegas on ns3
A point to point channel is built to test the performance of vegas. The link bandwidth is 3Mbps, propagation delay is 50 ms, maxmium buffer length(100ms). Vegas[1] is the first protocol that takes delay to infer link congesion. Three flows are involved原创 2020-05-25 10:30:49 · 344 阅读 · 0 评论 -
段路由的不相交路径求解
记录下关于论文的理解,论文读的一知半解的。 在段路由中,段和段之间依然遵循最短路径的原则。在不存在段路由的情况下,forw(x→y)forw(x\rightarrow y)forw(x→y)=SP(x,y)。在段路由存在的情况下,forw(x1→...→xk)=∪i=1k−1forw(xi→xi+1)forw(x_1\rightarrow ...\rightarrow x_k)=\cup_{...原创 2020-03-30 14:00:47 · 1099 阅读 · 0 评论 -
lyapunov优化
Lyapunov optimization是Michael J. Neely发展起来的网络优化理论,可以参考[1,2]。因为网络研究中缺乏理论,简单好使的算法,没有高大上的公式吓人,好像就不能发到高级别的期刊上。Lyapunov optimization有几个公式,就成为一个发论文的模板。只要找到一个问题背景,把公式套进去,就是一篇。关于这理论[3]的引用量已经达到1500多次了,但是很难找到相...原创 2019-12-29 11:31:30 · 19807 阅读 · 21 评论 -
视频流的自适应传输机制-dash
义理有疑,则濯去旧见,以来新意。心中有所开,即便札记,不思则还塞之矣。更须得朋友之助。一日间朋友论著,则一日间意思差别。须日日如此讲论,久则自觉进也。-张载 网络中的大部分流量已被视频占用[1].视频流中的码率一般恒定,而网络中流所占用的带宽是动态变化的。DASH技术应运而生-播放器根据网络可用带宽,动态调整请求视频流的码片速率-成为近年来的网络研究热点。证据,就是有一大波高水平的论文...原创 2018-01-12 21:17:13 · 3841 阅读 · 0 评论 -
paper digest
congestion control[1]Mehrotra S, Li J, Sengupta S, et al. Hybrid window and rate based congestion control for delay sensitive applications[C]//Global Telecommunications Conference (GLOBECOM 2010), 2...原创 2017-12-19 09:11:57 · 2781 阅读 · 0 评论 -
网络带宽测量
网络带宽测量技术,可以为端的速率控制提供依据。这里主要介绍几种有影响力的带宽测量方法,对其中的原理,则尝试推之。基于卡尔曼的带宽测量技术 WebRTC中的拥塞控制算法GCC就是通过卡尔曼滤波技术,推导出网络中排队时延差(queue delay variation)。GCC将网络排队时延差作为网络拥塞信号,进而控制发送端的编码速率。GCC中的卡尔曼滤波方法中的时延帧的长度为单位的。[1...原创 2018-01-16 14:48:00 · 2964 阅读 · 0 评论 -
Q-learning与svc视频流多径传输
我遇到这篇文章,在这里做个记录,怕以后忘记了。 [1]是硕士论文,其主要思想被总结到小论文[2]。[2]中主要研究的svc视频流的层数选择在SDN网络中的多路径传输,它被建模成一个离散的马尔科夫决策过程(MDP)。MDP里面主要有四个元素,状态空间(S),行动空间(A),状态转移概率(p),奖励(r)。优化目标是在相应的状态上,采取一个行动,使其期望收益最大。可以使用数学公式描述。 max...原创 2018-03-05 09:48:02 · 402 阅读 · 0 评论 -
TCP吞吐量的理论计算公式
Valve游戏公司开源GameNetworkingSockets[1],既支持可靠的数据传输,也支持不可靠的数据传输,它的数据传输是基于UDP的,实现了对TCP友好的拥塞控制机制,保证带宽占用的公平性。它的速率控制公式就是基于一篇大名鼎鼎的论文[2]。现在,把它的带宽计算程序录在这里,以备不时之需:const int64 k_nMillion = 1000000;int TFRCCalcX...原创 2018-04-22 10:05:24 · 22465 阅读 · 0 评论 -
udp server的connect和listen
之前,学习tcp的时候,学习了epoll,主要应用于大连接IO事件的管理。能否将epoll和udp结合,也能管理大量的socket描述符呢?当时,查了点资料,就写了一篇博客[1]。udp是面向无连接的,在服务端,每当一个客户端数据包到来时,数据包中携带的ip和port,使得来自不同客户端的数据包是可以区分的。但是epoll是是对大量fd的管理,在新的请求到来时,就可以创建一个新的fd,用来标志一...原创 2018-09-22 16:51:05 · 3841 阅读 · 0 评论 -
主动队列RED算法的理论分析
tcp的网络流模型,通过控制理论。寻找优化的主队队列管理算法RED的相关参数。原创 2017-12-04 19:27:46 · 2300 阅读 · 6 评论