(OK) MPTCP setup - kernel/net/mptcp/Kconfig

#
# MPTCP configuration
#
config MPTCP
        bool "MPTCP protocol"
        depends on (IPV6=y || IPV6=n)
	default y
        ---help---
          This replaces the normal TCP stack with a Multipath TCP stack,
          able to use several paths at once.

menuconfig MPTCP_PM_ADVANCED
	bool "MPTCP: advanced path-manager control"
	depends on MPTCP=y
	default y
	---help---
	  Support for selection of different path-managers. You should choose 'Y' here,
	  because otherwise you will not actively create new MPTCP-subflows.

if MPTCP_PM_ADVANCED

config MPTCP_FULLMESH
	tristate "MPTCP Full-Mesh Path-Manager"
	depends on MPTCP=y
	default y
	---help---
	  This path-management module will create a full-mesh among all IP-addresses.

config MPTCP_NDIFFPORTS
	tristate "MPTCP ndiff-ports"
	depends on MPTCP=y
	default n
	---help---
	  This path-management module will create multiple subflows between the same
	  pair of IP-addresses, modifying the source-port. You can set the number
	  of subflows via the mptcp_ndiffports-sysctl.

config MPTCP_BINDER
	tristate "MPTCP Binder"
	depends on (MPTCP=y)
	default n
	---help---
	  This path-management module works like ndiffports, and adds the sysctl
	  option to set the gateway (and/or path to) per each additional subflow
	  via Loose Source Routing (IPv4 only).

choice
	prompt "Default MPTCP Path-Manager"
	default DEFAULT
#	default Full-mesh
	help
	  Select the Path-Manager of your choice

	config DEFAULT_FULLMESH
		bool "Full-mesh" if MPTCP_FULLMESH=y

	config DEFAULT_NDIFFPORTS
		bool "ndiff-ports" if MPTCP_NDIFFPORTS=y

	config DEFAULT_BINDER
		bool "binder" if MPTCP_BINDER=y

	config DEFAULT_DUMMY
		bool "Default"

endchoice

endif

config DEFAULT_MPTCP_PM
	string
	default "default" if DEFAULT_DUMMY
	default "fullmesh" if DEFAULT_FULLMESH 
	default "ndiffports" if DEFAULT_NDIFFPORTS
	default "binder" if DEFAULT_BINDER
	default "default"
	default y

menuconfig MPTCP_SCHED_ADVANCED
	bool "MPTCP: advanced scheduler control"
	depends on MPTCP=y
	default y
	---help---
	  Support for selection of different schedulers. You should choose 'Y' here,
	  if you want to choose a different scheduler than the default one.

if MPTCP_SCHED_ADVANCED

config MPTCP_ROUNDROBIN
	tristate "MPTCP Round-Robin"
	depends on (MPTCP=y)
	default y
	---help---
	  This is a very simple round-robin scheduler. Probably has bad performance
	  but might be interesting for researchers.

choice
	prompt "Default MPTCP Scheduler"
	default DEFAULT
#	default Round-Robin
	help
	  Select the Scheduler of your choice

	config DEFAULT_ROUNDROBIN
		bool "Round-Robin" if MPTCP_ROUNDROBIN=y
		---help---
		  This is the round-rob scheduler, sending in a round-robin
		  fashion..

	config DEFAULT_SCHEDULER
		bool "Default"
		---help---
		  This is the default scheduler, sending first on the subflow
		  with the lowest RTT.

endchoice
endif

config DEFAULT_MPTCP_SCHED
	string
	depends on (MPTCP=y)
	default "default" if DEFAULT_SCHEDULER
	default "roundrobin" if DEFAULT_ROUNDROBIN
	default "default"


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值