The purpose of this test is to ensure the EUT correctly requests controller information via DHCP. Note: this test can be run over DHCPv4 or DHCPv6, depending on the deployment model of the EUT.
Conditional Mandatory (supports discovery via DHCP Options)
- Ensure the EUT is configured to request controller DHCP information.
- Ensure the EUT is configured to acquire an address via DHCP.
- Reboot the EUT.
- Wait for the EUT to request an address via DHCP.
- The EUT includes a Vendor Class option with Enterprise Number 3561 and vendor-class-data "usp" in the DHCP request.
The purpose of this test is to ensure the EUT can properly handle the USP options provided by a DHCP server.
Conditional Mandatory (supports discovery via DHCP Options)
- Ensure the EUT is configured to request controller DHCP information
- Ensure the EUT is configured to acquire an address via DHCP.
- Ensure the EUT ProvisioningCode parameter is set to a value other than that which will be set during the test procedure.
-
Configure the DHCP server to provide a null terminated provisioning code.
-
Reboot the EUT.
-
Wait for the EUT to request an address via DHCP.
-
Send a Get message to the EUT with the following structure:
header { msg_id: '<msg_id>' msg_type: GET } body { request { get { param_paths: 'Device.LocalAgent.Controller.<test controller instance>.' } } }
-
Wait for the GetResponse from the EUT.
- The ProvisioningCode parameter found in the GetResponse matches the provisioning code configured on the DHCP server.
The purpose of this test is to ensure the EUT correctly uses DNS to retrieve additional controller information upon receiving a FQDN of a controller.
Conditional Mandatory (supports discovery via DHCP Options)
- Ensure the EUT is configured to request controller information via DHCP.
- Ensure the EUT is configured to acquire an address via DHCP.
- Configure the DHCP server to provide a controller URL with a FQDN.
- Reboot the EUT.
- Wait for the EUT to request an address.
- Wait for the EUT to query the DNS with the FQDN.
- Wait for the EUT to connect to the controller.
- After the EUT receives a FQDN in the DHCP Offer, the EUT uses DNS to retrieve additional information about the controller.
The purpose of this test is to ensure the EUT correctly implements mDNS.
Conditional Mandatory (supports discovery via mDNS, supports the Reboot:1 profile)
- Ensure the EUT has mDNS enabled.
- Ensure the controller exists on the same network as the EUT.
- Ensure that the EUT has the Controller's URL, which contains ".local." is preconfigured on the EUT.
- Ensure that a Subscription exists for the Boot! event on the EUT with the test Controller as the Recipient.
- Reboot the EUT.
- Wait for the EUT to send a mDNS request for the FQDN.
- Allow the controller to respond to the mDNS request.
- After the EUT receives a FQDN via DHCP containing ".local." the EUT uses mDNS to resolve it.
The purpose of this test is to ensure the EUT correctly advertises the MTP it supports.
Conditional Mandatory (supports discovery via mDNS)
- Ensure the EUT has mDNS enabled.
- Ensure the Controller exists on the same network as the EUT.
- Reboot the EUT.
- Wait for the EUT to acquire an address.
- Wait for the EUT to send an unsolicited mDNS response.
- The EUT sends an unsolicited multicast DNS response containing correct SRV and TXT records that convey the DNS-SD Service Instance Name for each supported MTP.
The purpose of this test is to ensure the EUT provides valid DNS-SD records.
Conditional Mandatory (supports discovery via mDNS)
- Ensure mDNS is enabled on the EUT.
- Reboot the EUT.
- Wait for the EUT to acquire a new address.
- Wait for to the EUT to send a multicast mDNS advertisement.
- The EUT sends a multicast mDNS advertisement containing a TXT record for every supported MTP.
- Every TXT record in the mDNS advertisement has a "path" and "name" attribute.
The purpose of this test is to ensure the EUT will respond to mDNS requests.
Conditional Mandatory (supports discovery via mDNS)
- Ensure that the EUT is configured to listen for mDNS requests.
- Reboot the EUT.
- Send an mDNS query to the multicast domain that includes the EUT.
- Wait for an mDNS response from the EUT.
- The EUT responds to the mDNS query with the proper information.