Hi Fab,
 
When trying to run windows 2003 server on a Microsoft virtual machine we have found out that there is one problem that prevents IPOIB from running.
 
The problem as you can guess is related to the way MAC addresses are being handled. On such a machine, a fake Mac addresses is being created and it is later used for communication (one MAC per guest OS). However although this packets return to the correct computer, IPOIB doesn't restore their correct dest MAC and therefore pinging to a remote host is impossible.
 
In order to solve this problem there is a need to create a mechanism that will allow the IPOIB driver to correct the MAC addresses of packets based on their IP addresses.
 
It seems that the best way to do this is to have a "static" table of IP's and MAC addresses and to check every IP packet as well as every ARP reply. We have done such an experiment and it did seems to work.
 
We are still looking for a way to configure the table of guest OS and their IPs and MACs. One way to achieve this is simply having a static table that will be entered through some file. Although this is the simplest way, it has an obvious disadvantage (the need to manually configure the machine). A different way is to find some configuration API's that the remote machine has, while the last possibility is trying to find the information by sniffing for packets (the way that an Ethernet switch does things).
 
One bug that I have already found is that if a broadcast packet is sent for example an ARP request, we send the packet as a multicast, and we also receive the packet ourselves, and later we send this packet to NDIS. This is not the correct behavior (assuming we are emulating Ethernet behavior) and we should remove this packets.
 
In the next week I'll try to create a patch that will allow the virtual machine to work, I just wanted to know what your opinion about this issue.
 
Thanks
Tzachi
_______________________________________________
openib-general mailing list
[email protected]
http://openib.org/mailman/listinfo/openib-general

To unsubscribe, please visit http://openib.org/mailman/listinfo/openib-general

Reply via email to