模组介绍
网络包优化(Not Enough Bandwidth,简称 NEB)是一款面向 Minecraft Java 版的网络传输优化模组。
该模组通过压缩网络数据、减少网络包头占用以及缓存部分区块数据等方式,尽可能降低玩家游玩过程中产生的网络流量。其优化过程对普通玩家和其他模组保持透明,正常使用时通常不需要玩家进行额外操作。
本模组需要在客户端和服务端同时安装。
视频介绍
下面的视频展示了 NEB 的主要功能、网络流量优化效果及相关测试内容,可在安装前作为参考:
视频内容仅供功能展示与效果参考,实际优化效果会受到服务器环境、玩家数量、模组规模及网络传输内容等因素影响。
主要功能
紧凑的网络包头
NEB 会优化自定义网络包的编码与解码方式。
模组通过较为紧凑的索引替代网络包头中原本使用的完整标识符,从而减少自定义网络包类型名称所占用的传输空间。
这项功能主要用于降低模组数量较多时,大量自定义网络包产生的额外包头开销。
网络包聚合与压缩
Minecraft 在运行过程中可能产生大量体积较小的网络包。
NEB 会在连接层拦截这些待发送数据,按照一定时间间隔将多个小型网络包聚合为一个较大的数据包,再进行压缩和发送,以提高压缩效率并降低网络传输量。
延迟区块缓存
原版 Minecraft 会在玩家离开一定距离后,让客户端忘记已经离开的区块。当玩家短时间内再次返回原位置时,服务端可能需要重新发送完整的区块数据。
NEB 会延迟客户端遗忘部分区块的时间,使玩家在附近来回移动时能够复用已经接收过的区块数据,从而减少重复发送区块造成的流量消耗。
流量信息查看
安装模组后,可以在游戏中按下:
Alt + N
查看简单的网络流量统计信息。
测试数据说明
根据原作者公开的测试结果:
- 在 TeaCon 甲辰使用的数据集中,NEB 理论上能够将服务端出站流量降低至未压缩原始数据的约 7.6%。
- 作为对比,原版默认压缩后的出站流量约为原始数据的 39%。
- 在原版环境测试中,服务端出站流量曾降低至原来的约 18%。
以上结果来自原作者提供的特定测试环境,并不代表所有服务器均能获得完全相同的优化效果。
实际效果会受到玩家数量、模组数量、网络包内容、服务器配置和游玩行为等因素影响。通常情况下,网络传输内容越多、重复数据越明显,压缩能够发挥的空间也可能越大。
配置文件
模组配置文件位于:
代码:
config/NotEnoughBandwidthConfig.json
主要配置内容包括:
- compatibleMode:是否开启兼容模式。
- blackList:兼容模式下不由 NEB 处理的网络包黑名单。
- contextLevel:压缩上下文窗口大小。
- dccSizeLimit:延迟区块缓存允许保存的最大区块数量。
- dccDistance:延迟区块缓存的距离设置。
- dccTimeout:缓存区块的过期时间。
- playersDoNotUseContext:指定不使用 Zstandard 上下文复用的玩家 UUID。
增大压缩上下文窗口通常能够提升压缩效果,但也会消耗更多内存。
服务器管理者应根据服务器人数和可用内存合理调整,不建议在不了解具体作用的情况下盲目提高配置值。
兼容性与安装要求
- 游戏平台:Minecraft Java Edition
- 模组加载器:NeoForge
- 支持版本:Minecraft 26.1、Minecraft 1.21.1
- 运行环境:客户端与服务端均需安装
Minecraft 1.21.1 对应版本是 TeaCon 甲辰期间使用的 NEB 原型版本,目前已经停止维护。建议优先使用原作者仍在维护的新版本。
使用时应确保客户端与服务端安装相互对应的 Minecraft 版本和 NEB 版本,不同版本的模组文件请勿混用。
作者与版权说明
原作者及主要开发者:
- USS_Shenzhou:项目所有者、程序开发
- Burning_TNT:程序贡献者
本页面为第三方搬运介绍,并非本人原创,也不代表原作者对本页面提供担保或背书。
原项目采用:
GNU General Public License version 3 or later
GPL-3.0-or-later
进行授权。
依据该许可证,本项目允许在遵守许可证条件的前提下复制、修改和再分发。转载与分发时应保留原作者版权声明、GPL 许可证以及对应源代码的获取方式。
原项目地址:
中文资料页面:
本搬运页面仅对模组功能和使用方式进行中文整理。如遇模组错误、兼容性问题或功能建议,请优先前往原项目的 Issues 页面反馈。
免责声明
本模组按照 GPL-3.0-or-later 许可证提供,不附带任何形式的明示或暗示担保。
使用前建议备份游戏存档和服务器文件。因版本不匹配、模组冲突、配置不当或其他原因造成的问题,应由使用者自行承担相应风险。