Skip Navigation Links | |
Exit Print View | |
Oracle VM Server for SPARC 2.1 Administration Guide Oracle VM Server for SPARC |
Part I Oracle VM Server for SPARC 2.1 Software
1. Overview of the Oracle VM Server for SPARC Software
2. Installing and Enabling Software
4. Setting Up Services and the Control Domain
12. Performing Other Administration Tasks
Part II Optional Oracle VM Server for SPARC Software
13. Oracle VM Server for SPARC Physical-to-Virtual Conversion Tool
14. Oracle VM Server for SPARC Configuration Assistant
15. Using the Oracle VM Server for SPARC Management Information Base Software
16. Logical Domains Manager Discovery
17. Using the XML Interface With the Logical Domains Manager
This discovery mechanism uses the same multicast network that is used by the ldmd daemon to detect collisions when automatically assigning MAC addresses. To configure the multicast socket, you must supply the following information:
#define MAC_MULTI_PORT 64535 #define MAC_MULTI_GROUP "239.129.9.27"
By default, only multicast packets can be sent on the subnet to which the machine is attached. You can change the behavior by setting the ldmd/hops SMF property for the ldmd daemon.
The discovery messages must be clearly marked so as not to be confused with other messages. The following multicast message format ensures that discovery messages can be distinguished by the discovery listening process:
#include <netdb.h> /* Used for MAXHOSTNAMELEN definition */ #define MAC_MULTI_MAGIC_NO 92792004 #define MAC_MULTI_VERSION 1 enum { SEND_MSG = 0, RESPONSE_MSG, LDMD_DISC_SEND, LDMD_DISC_RESP, }; typedef struct { uint32_t version_no; uint32_t magic_no; uint32_t msg_type; uint32_t resv; union { mac_lookup_t Mac_lookup; ldmd_discovery_t Ldmd_discovery; } payload; #define lookup payload.Mac_lookup #define discovery payload.Ldmd_discovery } multicast_msg_t; #define LDMD_VERSION_LEN 32 typedef struct { uint64_t mac_addr; char source_ip[INET_ADDRSTRLEN]; } mac_lookup_t; typedef struct { char ldmd_version[LDMD_VERSION_LEN]; char hostname[MAXHOSTNAMELEN]; struct in_addr ip_address; int port_no; } ldmd_discovery_t;
Ensure that you use the port and group information specified in Multicast Communication.
The message should include the following:
Valid value for version_no, which is 1 as defined by MAC_MULTI_VERSION
Valid value for magic_no, which is 92792004 as defined by MAC_MULTI_MAGIC_NO
msg_type of LDMD_DISC_SEND
The responses must be a multicast_msg_t message with the following:
Valid value for version_no
Valid value for magic_no
msg_type set to LDMD_DISC_RESP
Payload consisting of a ldmd_discovery_t structure, which contains the following information:
ldmd_version – Version of the Logical Domains Manager running on the system
hostname – Host name of the system
ip_address – IP address of the system
port_no – Port number being used by the Logical Domains Manager for communications, which should be XMPP port 6482
When listening for a response from Logical Domains Managers, ensure that any auto-allocation MAC collision-detection packets are discarded.