一、前言
docker container的原生网络解决方案是bridge+NAT,而借助pipework这类工具,可以为container快速配置macvlan网络。本文利用HLS格式多媒体流对这两个方案的网络数据转发性能进行测试。
相关的系统参数如下:
- 物理机配置:128GB内存,CPU(Processor Sockets 2, Processor Cores per Socket 12, Hyper-threading enabled, Logical Processors 48),10Gbps双工网卡
- 操作系统:CentOS 7, kernel version 3.10.0 x86_64
- Docker版本:1.12.1
相关的应用程序的参数如下:
- 基于HLS VOD的多媒体流,单个片段长度10秒
- 多媒体流提供四个不同码率
- 使用Apache TrafficServer推送这些多媒体流,无cache hit
- 客户端使用Spirnet进行模拟,每个Spirent端口为10Gbps能力
转载自https://blog.youkuaiyun.com/cloudvtech
二、上游配置
要充份测试container的性能,必须保证container的上游不存在任何性能瓶颈。这里上游使用Nginx作为HLS TS的数据源,使用nginx的配置来保证客户端Sprient请求的all unique的媒体片段在nginx上只需一份copy并且可以cache hit,避免上游瓶颈,从而达到测试中间ATS container性能的目的:

文章对比了Docker中基于bridge+NAT和macvlan两种网络方案的性能,通过HLS多媒体流测试。上游配置采用Nginx和IPVS,下游使用Spirent模拟客户端。宿主机和container的网络配置被详细讨论,包括队列配置、中断平衡和TCP参数调整,以揭示可能的性能瓶颈。
最低0.47元/天 解锁文章
1538

被折叠的 条评论
为什么被折叠?



