我可以在同一个Cloud Service中的两个Standard_D2_V2 West Europe Classic(ASM)VM之间获得亚毫秒级延迟,并将 Cloud 服务分配给一个关联组 .
我还可以在Azure VM Scale Set中的VM之间获得亚毫秒级延迟 .
但我似乎无法在两个Azure ARM VM(共享相同(区域)VNET)之间获得亚毫秒级延迟 . 有没有一种方法可以在ARM VM之间可靠地获得亚毫秒级延迟而无需像Azure classic / ASM中的关联组一样部署为Scale Set?
以下是我对各种场景的测量 . 我已多次部署各种方案,以便尽可能地排除幸运与不幸的部署 .
Two ASM(classic) VMs in same cloud service assigned to an affinity group (not connected via VNET!!)
PS C:\Users\simon> .\psping -l 1k -n 10000 -h 13.81.205.180:60123
PsPing v2.10 - PsPing - ping, latency, bandwidth measurement utility
Copyright (C) 2012-2016 Mark Russinovich
Sysinternals - www.sysinternals.com
TCP latency test connecting to 13.81.205.180:60123: Connected
10005 iterations (warmup 5) sending 1024 bytes TCP latency test: 100%
TCP roundtrip latency statistics (post warmup):
Sent = 10000, Size = 1024, Total Bytes: 10240000,
Minimum = 0.11ms, Maxiumum = 6.23ms, Average = 0.45ms
Latency Count
0.11 6042
0.43 2721
0.75 846
Azure ARM VM Scale Set VMs
PS C:\Users\simon> .\psping -l 1k -n 20000 -h 10.0.0.7:60123
TCP roundtrip latency statistics (post warmup):
Sent = 20000, Size = 1024, Total Bytes: 20480000,
Minimum = 0.18ms, Maxiumum = 9.62ms, Average = 0.48ms
Latency Count
0.18 19733
0.68 178
Azure ARM VM to Azure ARM VM on same (regional) vnet
PS C:\Users\simon> .\psping -l 1k -n 20000 -h 10.0.0.7:60123
TCP roundtrip latency statistics (post warmup):
Sent = 20000, Size = 1024, Total Bytes: 20480000,
Minimum = 1.59ms, Maxiumum = 10.60ms, Average = 1.81ms
Latency Count
1.59 19401
2.07 379
2.54 98
1 回答
Igor Pagliai(@igorpag)在twitter上给了我以下建议:
"If not possible to use VM with RDMA, you can try with VM in same Availability Set. Something new will come soon in Azure."以及https://docs.microsoft.com/en-us/azure/virtual-network/virtual-network-accelerated-networking-portal
我提出了他的可用性集建议,并创建了一个具有单个故障域的可用性集,门户网站为故障域提供了以下工具提示“同一故障域中的虚拟机共享一个共同的......物理网络交换机 . ”,这听起来很响亮非常有希望,结果没有让人失望:
Azure ARM VMs same availability set/fault domain (sub millisecond latency, yippee!)