VMware Cloud Community
maytrix
Contributor
Contributor
Jump to solution

Does traffic between VM's actually use the NIC?

Hi,

I have a few VM's and they all share the same nic. Does traffic between these VM's actually leave the nic at all or does it handle the communication internally?

My guess is that it is internal, because I am experiencing issues when connecting from remote systems that I do not have when communicating between VM's. I suspect the NIC or my switches are the issue - I just need to do further testing.

FYI - This is my home environment, not a production one.

0 Kudos
1 Solution

Accepted Solutions
Paul_Lalonde
Commander
Commander
Jump to solution

No, traffic within ESX (within a vSwitch) is hardwired internally. No packets are transmitted externally.

However, there is no wire path between vSwitches, so if one VM talks to another on a different vSwitch, then yes, it goes through the external network.

Paul

View solution in original post

0 Kudos
7 Replies
Paul_Lalonde
Commander
Commander
Jump to solution

No, traffic within ESX (within a vSwitch) is hardwired internally. No packets are transmitted externally.

However, there is no wire path between vSwitches, so if one VM talks to another on a different vSwitch, then yes, it goes through the external network.

Paul

0 Kudos
maytrix
Contributor
Contributor
Jump to solution

Thanks. Now I just need to figure out where the breakdown in my network is Smiley Happy

0 Kudos
MR-T
Immortal
Immortal
Jump to solution

Can someone confirm or deny what I think regarding this. Does internal traffic always use CPU0?

Cheers

0 Kudos
RParker
Immortal
Immortal
Jump to solution

Along with that, I have seen where CPU0 is the primary for everything, even if you setup a new console, it would seem CPU0 is the default CPU for just about every internal operation....

I am guessing this is because ALL machines have a CPU0 regardless of how many cores you have....

0 Kudos
esiebert7625
Immortal
Immortal
Jump to solution

Well since you only have one vswitch for the VMs with 3 NICs assigned to it all traffic between those VM's stays inside the server and does not hit the physical network. So essentially traffic stays within the box and travels at the speed of the subsystem. Virtual Switches allow VM guest communication over the switch at maximum bus/processor capability which on current hardware technology should easily exceed 100Mbps.

Same vSwitch is 'Routed Locally' doesn't hit any pNICs

Same vSwitch different PortGroup/VLAN same thing is 'Routed Locally' doesn't hit any pNICs

Between different vSwitches is 'Routed Externally' ie needs to leave one pNIC and come in the other pNIC of the other vSwitch.

Since the SC uses CPU0 you would think it would use that processor.

MR-T
Immortal
Immortal
Jump to solution

Yeah, that makes sense.

Cheers

0 Kudos
Paul_Lalonde
Commander
Commander
Jump to solution

I believe the vmkernel is threaded across available PCPUs. If you examine the /var/log/vmkernel log during various types of system activities (ie. storage, VM events, etc.) you'll see it thread across different CPUs.

Paul

0 Kudos