e1000g half duplex 10mbit support ?

Discussions about using Solaris guests in VirtualBox.
Post Reply
stes
Posts: 154
Joined: 28. Apr 2018, 11:07

e1000g half duplex 10mbit support ?

Post by stes »

I'm not sure whether this is a host or guest issue, but I'm posting the question here as I wonder whether it is possible in a Solaris guest to use the e1000g intel NIC in 10 mbit half duplex mode.

On a physical system I can have a link in either 1G-f or 1m-h mode:

Code: Select all

# dladm show-phys
LINK            MEDIA         STATE      SPEED  DUPLEX    DEVICE
net0            Ethernet      up         1000   full      e1000g0
# dladm show-ether
LINK              PTYPE    STATE    AUTO  SPEED-DUPLEX                    PAUSE
net0              current  up       yes   1G-f                            bi
Is there a way (a setting) in VirtualBox to force a Intel gigabit NIC into 10M-f mode ?

On a physical level this would give the result:

Code: Select all

# dladm show-phys
LINK            MEDIA         STATE      SPEED  DUPLEX    DEVICE
net0            Ethernet      up         10     half      e1000g0
# dladm show-ether
LINK              PTYPE    STATE    AUTO  SPEED-DUPLEX                    PAUSE
net0              current  up       yes   10M-h                           bi
However I'm not sure whether under VirtualBox "NetWork settings" for a NIC it is possible to change the "virtual port" from gigabit to 10mbit ... Actually this seems something like a "Request for Enhancement" that probably exists already ... (as it is useful for all platforms)
mpack
Site Moderator
Posts: 39134
Joined: 4. Sep 2008, 17:09
Primary OS: MS Windows 10
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Mostly XP

Re: e1000g half duplex 10mbit support ?

Post by mpack »

The quoted top speed of a virtual network card is meaningless. The host network capability is what dictates actual performance.

If the goal is to limit guest bandwidth to less than the host capability then see section 6.10 in the user manual. Notice that of course VirtualBox can only slow down its own transmissions. It can't control how much data is received by it.
stes
Posts: 154
Joined: 28. Apr 2018, 11:07

Re: e1000g half duplex 10mbit support ?

Post by stes »

It's not really the actual transfer speed that interests me, but rather how the guest operating system sees the hardware.

That can be useful to test / emulate / simulate things under VirtualBox as it could 'emulate' to some extent the physical equivalent.

So 10mbit is just an example, also it could be interesting to have an option to have a Intel 10Gigabit driver option to simulate for instance the Intel 82597ex controllers with the ixgb driver, or to try the ixgbe driver for Intel 10Gb PCI Express NIC driver.

So 10Gig or 100mbit , perhaps an option to have the old ieef driver for the Intel PRO 100mbit NIC.

In virtualbox the e1000g driver seems to be used which is interesting, it does not use the 'xnf' driver like XEN based HVM machines, where you get:

Code: Select all

#dladm show-phys
net0  Ethernet  up 1000 full xnf0
The argument that it is 'virtual' could be used that it could use the 'xnf' device driver like in other virtualisation softwares, but VirtualBox makes the guest OS use e1000g (if you use the Intel Gigabit NIC) so I was (and I am) interested to what level the Intel NIC is simulated.

Unless I'm missing something , it seems you cannot change the autoneg and speed/duplex settings of the Intel NIC under VirtualBox.
michaln
Oracle Corporation
Posts: 2973
Joined: 19. Dec 2007, 15:45
Primary OS: MS Windows 7
VBox Version: VirtualBox+Oracle ExtPack
Guest OSses: Any and all
Contact:

Re: e1000g half duplex 10mbit support ?

Post by michaln »

The negotiated speed is a completely made up, meaningless value. The emulated/virtual NIC is simply not attached to a physical Ethernet link with a defined link speed. It is easy to imagine scenarios where it's not even remotely possible to assign a link speed, such as when the emulated NIC is attached to a host-only adapter which also has no physical link, or when the traffic goes over several host interfaces with different link speeds, or when the host has WiFi with link speeds that do not even remotely map to wired Ethernet speeds.

Emulating an Intel 10GbE controller or one of the old 100 Mbps Intels is certainly technically doable, but far too much work for anyone to do just for fun.
stes
Posts: 154
Joined: 28. Apr 2018, 11:07

Re: e1000g half duplex 10mbit support ?

Post by stes »

Although that I understand that the negotiated speed is a completely made up, "meaningless" value,
it still has some meaning indirectly speaking.

I was wondering about the ability to change the speed on the e1000 device, because of the question of "SirBrain" in
viewtopic.php?f=20&t=94948

That was an interesting question where the nice feature of VirtualBox to present an AMD PCnet NIC is an interesting feature of the VirtualBox.

Also KVM has similar choices , with KVM you can present a virtual Realtek 8139 (rtl8139) NIC or a Intel e1000 ... The choices of NICs that can be presented are relevant, I suppose, "indirectly" the operating system of the guest may think that it has detected a 10mbit, 100mbit or gigabit NIC ...

Anyway for the future hopefully it will be possible to present a virtual 10gbit NIC to the guest. And for old operating systems it remains a useful feature that one can present a 100mbit (e.g. Intel EEpro).

Anyway for me it is easy to say of course, as you indicated all of that is a lot of work ... In any case the fact that the product currently still offers AMD PCnet (and a few other choices) is a nice feature.
Post Reply