mptcp安装与sysctl命令

安装步骤

参考 :http://www.multipath-tcp.org/

首先,添加gpg-apt-key:

sudo apt-key adv --keyserver hkp://keys.gnupg.net --recv-keys 379CE192D401AB61

然后,只需在APT的源文件中添加存储库:

sudo sh -c "echo 'deb https://dl.bintray.com/cpaasch/deb stretch main' > /etc/apt/sources.list.d/mptcp.list"

现在,使用以下命令安装MPTCP:

sudo apt-get update

sudo apt-get install linux-mptcp

并重启机器。

 

 

详细:

环境:Ubuntu v18.04桌面版本。

Mininet中的网络实验,数据包走的是内核协议栈。这样得出的结果,就是实际网络协议栈的性能。所以,首先需要在内核协议栈中编入MPTCP源码,并在内核中启用。安装MPTCP协议至协议栈的简要步骤如下:

 获取MPTCP源码

# cd /usr/src

# git clone --depth=1 git://github.com/multipath-tcp/mptcp.git

# cd mptcp

 配置编译内核

# sudo make menuconfig

 编译MPTCP内核

# cd /usr/src/mptcp

# sudo make

 编译并安装模块

# sudo make modules_install

 安装

# sudo make install

 执行以下命令设置系统控制变量(sysctl)

# sudo sysctl -w net.mptcp.[name of the variable]=[value]

 MPTCP目录:

 

 

图f-1 MPTCP目录

 需要修改的调度器模块位于目录:/net/mptcp/mptcp_sched.c

 修改好调度器代码后编译后,可以用以下命令修改内核参数:

# sudo sysctl -w net.mptcp.mptcp_scheduler=MGPS

 

注意:

官网没有说清楚,重启以后要进入新编译好的内核中,在开机的时候选择ubuntu高级选项,找到刚刚编译好的内核,选择进入,如果没有ubuntu高级选项的界面,在重启进入系统的时候按住shift键,界面就会出现:

 

 

遇到的问题:

报错:E:Could not get lock /var/lib/apt/lists/lock - open (11: Resource temporarily unavailable)

解决方法:

出现这个问题的原因可能是有另外一个程序正在运行,导致资源被锁不可用。而导致资源被锁的原因,可能是上次安装时没正常完成,而导致出现此状况。

解决方法:输入以下命令

sudo rm /var/cache/apt/archives/lock

sudo rm /var/lib/dpkg/lock

之后再安装想装的包,即可解决

 

sysctl:

sysctl命令用于运行时配置内核参数,这些参数位于/proc/sys目录下。sysctl配置与显示在/proc/sys目录中的内核参数.可以用sysctl来设置或重新设置联网功能,如IP转发、IP碎片去除以及源路由检查等。用户只需要编辑/etc/sysctl.conf文件,即可手工或自动执行由sysctl控制的功能。

命令格式:

sysctl [-n] [-e] -w variable=value

sysctl [-n] [-e] -p <filename> (default /etc/sysctl.conf)

sysctl [-n] [-e] -a

 

常用参数的意义:

-w 临时改变某个指定参数的值,如:sysctl -w net.ipv4.ip_forward=1

-a 显示所有的系统参数

-p 从指定的文件加载系统参数,如不指定即从/etc/sysctl.conf中加载

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值