linux 模拟端口占用,linux-使用tc模拟特定端口上的网络延迟

尝试这个:

sudo tc qdisc add dev eth1 root handle 1: prio priomap 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

sudo tc qdisc add dev eth1 parent 1:2 handle 20: netem delay 3000ms

sudo tc filter add dev eth1 parent 1:0 protocol ip u32 match ip sport 7000 0xffff flowid 1:2

>我在prio中添加了全零的priomap,因此所有常规流量都将流过一个频段

>默认情况下,prio根据数据包的DSCP值将流量分配到不同的频段

>这意味着某些与您的过滤器不匹配的流量可能会与延迟的流量归为同一类

>然后我将netem分配给以下类别之一-1:2

>最后,我添加了您的过滤器,因此它将为匹配的数据包分配流ID 1:2

>这可能是您出错的地方

>您需要将过滤器分配给有级prio qdisc的1:2,而不是无级netem.

为了测试它,我将过滤器更改为dport 80而不是sport 7000,并连接到checkip.amazonaws.com花了我6秒钟的时间(TCP Syn的延迟为3秒,HTTP GET的延迟为3秒):

malt@ubuntu:~$wget -O - checkip.amazonaws.com

--2016-10-23 06:21:42-- http://checkip.amazonaws.com/

Resolving checkip.amazonaws.com (checkip.amazonaws.com)... 75.101.161.183, 54.235.71.200, 107.20.206.176, ...

Connecting to checkip.amazonaws.com (checkip.amazonaws.com)|75.101.161.183|:80... connected.

HTTP request sent, awaiting response... 200 OK

Length: 10

Saving to: ‘STDOUT’

- 0%[ ] 0 --.-KB/s X.X.X.X

- 100%[===========================================================>] 10 --.-KB/s in 0s

2016-10-23 06:21:48 (3.58 MB/s) - written to stdout [10/10]

不过,连接到其他端口(例如443-HTTPS,22-SSH等)的速度要快得多.您也可以运行sudo tc -s qdisc show dev eth1以确保netem处理的数据包数量合理.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
实验目的: 1. 理解FTP协议的基本原理; 2. 掌握Linux系统下搭建FTP服务器的方法; 3. 掌握FTP客户端的基本使用方法。 实验环境: - 操作系统:Ubuntu 16.04 LTS; - FTP服务器软件:vsftpd。 实验步骤: 1. 安装FTP服务器软件 在终端输入以下命令以安装vsftpd: ``` sudo apt-get install vsftpd ``` 2. 配置FTP服务器 2.1 修改配置文件 使用以下命令打开vsftpd的配置文件: ``` sudo vim /etc/vsftpd.conf ``` 在其中添加以下配置: ``` local_enable=YES write_enable=YES chroot_local_user=YES allow_writeable_chroot=YES ``` 其中,`local_enable`表示允许本地用户访问FTP服务器,`write_enable`表示允许用户上传文件,`chroot_local_user`表示用户登录后被限制在自己的主目录下,`allow_writeable_chroot`表示允许用户在自己的主目录下创建文件夹。 2.2 创建FTP用户 使用以下命令创建FTP用户,其中`username`为用户名,`password`为密码: ``` sudo useradd -m username -s /bin/bash sudo passwd username ``` 2.3 启动FTP服务器 使用以下命令启动FTP服务器: ``` sudo systemctl start vsftpd ``` 3. 使用FTP客户端连接FTP服务器 使用FTP客户端,如FileZilla,在连接时输入FTP服务器的IP地址、端口号(默认为21)、FTP用户名和密码,连接成功后即可进行文件上传和下载操作。 实验总结: 本次实验通过搭建FTP服务器和使用FTP客户端,深入理解了FTP协议的基本原理和FTP服务器的搭建方法,掌握了FTP客户端的基本使用方法,加深了对Linux系统的理解和应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值