(OK) MPTCP-0.92 setup - kernel/net/mptcp/Kconfig - Android-x86 7.1.1 - kernel 4.4.62

#
# 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
	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.

config MPTCP_REDUNDANT
	tristate "MPTCP Redundant"
	depends on (MPTCP=y)
	default y
	---help---
	  This scheduler sends all packets redundantly over all subflows to decreases
	  latency and jitter on the cost of lower throughput.

choice
	prompt "Default MPTCP Scheduler"
	default DEFAULT
	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_REDUNDANT
		bool "Redundant" if MPTCP_REDUNDANT=y
		---help---
		  This is the redundant scheduler, sending packets redundantly over
		  all the subflows.

	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 "redundant" if DEFAULT_REDUNDANT
	default "default"

posted @   张同光  阅读(101)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示