You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 4 Next »

CD-Router is a test automation platform from QA Cafe that contains many test cases for the USP protocol, including the DTP-469 USP Conformance tests.

To test UspPa with CD-Router, you need to configure both the agent and CD-Router.


Configuring UspPa Agent

Use the one of the factory reset settings below in your usp_factory_reset.conf file. They configure your agent to use an unencrypted STOMP, MQTT or WebSocket connection to CD-Router.

NOTE: Replace "192.168.1.128" with the IP address or hostname of your CD-Router unit.

STOMP

# IMPORTANT: Modify Device.STOMP.Connection.1.Host with the IP address of your CD-Router
Device.STOMP.Connection.1.Host "192.168.100.128"
Device.LocalAgent.Controller.1.EndpointID "proto::controller-id"
Device.STOMP.Connection.1.Username "qacafe"
Device.STOMP.Connection.1.Password "qacafe123"
Device.LocalAgent.Controller.1.MTP.1.STOMP.Destination "/controller-path"
Device.LocalAgent.MTP.1.STOMP.Destination "/agent-path"
Device.STOMP.Connection.1.X_ARRIS-COM_EnableEncryption "false"
Device.LocalAgent.EndpointID "proto::agent-id"

Device.LocalAgent.MTP.1.Alias "cpe-1"
Device.LocalAgent.MTP.1.Enable "true"
Device.LocalAgent.MTP.1.Protocol "STOMP"
Device.LocalAgent.MTP.1.STOMP.Reference "Device.STOMP.Connection.1"
Device.LocalAgent.Controller.1.Alias "cpe-1"
Device.LocalAgent.Controller.1.Enable "true"
Device.LocalAgent.Controller.1.AssignedRole "Device.LocalAgent.ControllerTrust.Role.1"
Device.LocalAgent.Controller.1.PeriodicNotifInterval "600"
Device.LocalAgent.Controller.1.PeriodicNotifTime "0001-01-01T00:00:00Z"
Device.LocalAgent.Controller.1.USPNotifRetryMinimumWaitInterval "5"
Device.LocalAgent.Controller.1.USPNotifRetryIntervalMultiplier "2000"
Device.LocalAgent.Controller.1.ControllerCode ""
Device.LocalAgent.Controller.1.MTP.1.Alias "cpe-1" 
Device.LocalAgent.Controller.1.MTP.1.Enable "true"
Device.LocalAgent.Controller.1.MTP.1.Protocol "STOMP"
Device.LocalAgent.Controller.1.MTP.1.STOMP.Reference "Device.STOMP.Connection.1"
Device.STOMP.Connection.1.Alias "cpe-1"
Device.STOMP.Connection.1.Enable "true"
Device.STOMP.Connection.1.Port "61613"
Device.STOMP.Connection.1.VirtualHost "/"
Device.STOMP.Connection.1.EnableHeartbeats "true"
Device.STOMP.Connection.1.OutgoingHeartbeat "30000"
Device.STOMP.Connection.1.IncomingHeartbeat "300000"
Device.STOMP.Connection.1.ServerRetryInitialInterval "60"
Device.STOMP.Connection.1.ServerRetryIntervalMultiplier "2000"
Device.STOMP.Connection.1.ServerRetryMaxInterval "30720"
Internal.Reboot.Cause "LocalFactoryReset"


MQTT

# IMPORTANT: Modify Device.MQTT.Client.1.BrokerAddress with the IP address of your CD-Router
Device.LocalAgent.Controller.1.EndpointID "proto::controller-id"
Device.MQTT.Client.1.BrokerAddress "192.168.100.128"
Device.LocalAgent.MTP.1.MQTT.ResponseTopicConfigured "/agent-path"
Device.MQTT.Client.1.Username "qacafe"
Device.MQTT.Client.1.Password "qacafe123"
Device.LocalAgent.EndpointID "proto::agent-id"

Device.LocalAgent.MTP.1.Alias "cpe-1"
Device.LocalAgent.MTP.1.Protocol "MQTT"
Device.LocalAgent.MTP.1.Enable "true"
Device.LocalAgent.MTP.1.MQTT.Reference "Device.MQTT.Client.1"
Device.LocalAgent.Controller.1.Alias "cpe-1"
Device.LocalAgent.Controller.1.Enable "true"
Device.LocalAgent.Controller.1.AssignedRole "Device.LocalAgent.ControllerTrust.Role.1"
Device.LocalAgent.Controller.1.PeriodicNotifInterval "600"
Device.LocalAgent.Controller.1.PeriodicNotifTime "0001-01-01T00:00:00Z"
Device.LocalAgent.Controller.1.USPNotifRetryMinimumWaitInterval "5"
Device.LocalAgent.Controller.1.USPNotifRetryIntervalMultiplier "2000"
Device.LocalAgent.Controller.1.ControllerCode ""
Device.LocalAgent.Controller.1.MTP.1.Alias "cpe-1" 
Device.LocalAgent.Controller.1.MTP.1.Enable "true"
Device.LocalAgent.Controller.1.MTP.1.Protocol  "MQTT"
Device.LocalAgent.Controller.1.MTP.1.MQTT.Reference "Device.MQTT.Client.1"
Device.LocalAgent.Controller.1.MTP.1.MQTT.Topic "/controller-path"
Device.MQTT.Client.1.ProtocolVersion "5.0"
Device.MQTT.Client.1.BrokerPort "1883"
Device.MQTT.Client.1.TransportProtocol "TCP/IP"
Device.MQTT.Client.1.Alias "cpe-1"
Device.MQTT.Client.1.Enable true
Device.MQTT.Client.1.ClientID ""
Device.MQTT.Client.1.KeepAliveTime "60"
Internal.Reboot.Cause "LocalFactoryReset"


WebSockets

# IMPORTANT: Modify Device.LocalAgent.Controller.1.MTP.1.WebSocket.Host with the IP address of your CD-Router
Device.LocalAgent.Controller.1.EndpointID "proto::controller-id"
Device.LocalAgent.EndpointID "proto::agent-id"

Device.LocalAgent.Controller.1.MTP.1.Protocol  "WebSocket"
Device.LocalAgent.Controller.1.MTP.1.WebSocket.Host "192.168.100.128"
Device.LocalAgent.Controller.1.MTP.1.WebSocket.Port "80"
Device.LocalAgent.Controller.1.MTP.1.WebSocket.Path "/controller-path"
Device.LocalAgent.Controller.1.MTP.1.WebSocket.EnableEncryption "false"
Device.LocalAgent.Controller.1.MTP.1.WebSocket.KeepAliveInterval "2000"
Device.LocalAgent.Controller.1.MTP.1.WebSocket.SessionRetryMinimumWaitInterval "5"
Device.LocalAgent.Controller.1.MTP.1.WebSocket.SessionRetryIntervalMultiplier "2000"
Device.LocalAgent.Controller.1.MTP.1.Enable  "true"
Device.LocalAgent.MTP.1.Enable  "true"
Device.LocalAgent.MTP.1.Protocol  "WebSocket"
Device.LocalAgent.MTP.1.WebSocket.Port  "80"
Device.LocalAgent.MTP.1.WebSocket.Path  "/agent-path"
Device.LocalAgent.MTP.1.WebSocket.EnableEncryption  "false"
Device.LocalAgent.MTP.1.WebSocket.KeepAliveInterval  "2000"
Device.LocalAgent.Controller.1.Alias "cpe-1"
Device.LocalAgent.Controller.1.Enable "true"
Device.LocalAgent.Controller.1.AssignedRole "Device.LocalAgent.ControllerTrust.Role.1"
Device.LocalAgent.Controller.1.PeriodicNotifInterval "600"
Device.LocalAgent.Controller.1.PeriodicNotifTime "0001-01-01T00:00:00Z"
Device.LocalAgent.Controller.1.USPNotifRetryMinimumWaitInterval "5"
Device.LocalAgent.Controller.1.USPNotifRetryIntervalMultiplier "2000"
Device.LocalAgent.Controller.1.ControllerCode ""
Internal.Reboot.Cause "LocalFactoryReset"


Configuring CD-Router

You will need to add a configuration using the CD-Router Web GUI, then replace the "USP Add-On" section in the configuration with the text below.

Then you will need to create a test package containing the tests to run. For example the tests from the USP -> usp.tcl group.

SECTION "CDRouter USP Add-On" {

    testvar supportsUSP                      yes

    SECTION "Basic Controller Configuration" {

        # testvar uspControllerID                  proto::controller-id
        # testvar uspControllerInterface           wan

        # testvar uspControllerIpMode              ipv4-only
        testvar uspControllerIpv4                192.168.100.128
        # testvar uspControllerIpv6                6000::2
        # testvar uspControllerPort                auto
        # testvar uspControllerPath                /controller-path

        testvar uspControllerUseNonPayloadProtection no
        testvar uspControllerUseSessionContext   no
        testvar uspControllerMTP                 stomp
        testvar uspControllerMTPEncryption       no
        # testvar uspControllerUSPEncryption       no
        # testvar uspControllerDomain              controller.cdroutertest.com

        # testvar uspSegmentationEnable            no
        # testvar uspSegmentationSize              auto

        testvar uspControllerMTPCertPath         /usr/cdrouter/tests/cdroutertest.pem
#        testvar uspControllerMTPCaCertPath       /usr/cdrouter/tests/eco_agent_root.crt

        # testvar uspControllerUSPCaCertPath       /usr/cdrouter/tests/wildcard.cdroutertest.com-ca.pem
        # testvar uspControllerUSPCertPath         /usr/cdrouter/tests/wildcard.cdroutertest.com.pem

        # testvar uspControllerSenderCertPath      /usr/cdrouter/tests/wildcard.cdroutertest.com.pem
        testvar uspControllerVerifyRecordIntegrity no

        # testvar uspControllerHost                any
        # testvar uspControllerUsername            qacafe
        # testvar uspControllerPassword            qacafe123

    }

    SECTION "Basic Agent Configuration" {

        # testvar uspAgentID                       proto::agent-id

        # testvar uspAgentIpv4                     auto
        # testvar uspAgentIpv6                     auto
        # testvar uspAgentPort                     auto
        # testvar uspAgentPath                     /agent-path

        # testvar uspMessageTimeout                30

    }

    SECTION "USP Scenarios" {

        # testvar uspScenarioPath                  /home/dev/myUSPScenario.usp
        # testvar uspScenarioSingleMode            no
        # testvar uspScenarioBootstrap             /home/dev/myBootstrapScenario.usp

    }

    SECTION "Data Model" {

        # testvar uspSkipParameters                empty
        # testvar uspModifyParameters              empty
        # testvar uspSupportedDataModel            all

        SECTION "Custom USP Data Model" {

            IGNORE testvar_group usp_profile_1 {

                # testvar uspProfileName                   myVendorParameters
                # testvar uspProfilePath                   /home/dev/myVendorParameters.xml

            }

        }

    }

    SECTION "USP Agent Data Model Configuration" {

        testvar uspParameterPath1                Device.DeviceInfo.ManufacturerOUI
        testvar uspParameterPath2                Device.IP.Interface.1.Name
        testvar uspMissingParameterPath          Device.DeviceInfo.DeviceCategory
        testvar uspExternallyChangeableParam     Device.LocalAgent.Controller.1.MTP.1.CoAP.Host

        # testvar uspNotificationParamManualChange yes
        # testvar uspNotificationParamNewValue     myCustomParameterValue

        testvar uspObject1                       Device.Bridging.Bridge.
        testvar uspObject2                       Device.RouterAdvertisement.InterfaceSetting.

        testvar uspValidSearchPath               {Device.IP.Interface.[Name=="brlan0"].}
        testvar uspValidSearchPathResultParam    Alias
        testvar uspValidSearchPathResultValue    "Primary LAN"

        testvar uspFirmwareImage                 /home/qacafe/imageC.txt
        testvar uspOriginalFirmwareImage         /home/qacafe/imageA.txt
        testvar uspInactiveFirmwareSlot          Device.DeviceInfo.FirmwareImage.2

    }

}
  • No labels