Install the Cisco PON Pluggable OLT
For steps to install the Cisco PON pluggable OLT refer to Install and Remove Transceiver Modules in the Cisco NCS 540 Router Hardware Installation Guide.
The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
Completing the implementation of the Cisco Routed PON Solution requires setting up the various components that make up the system. At a high level, the steps to configure the Cisco Routed PON Solution are as follows:
Install the Cisco PON pluggable OLT.
Install and configure the Cisco PON Manager.
Install and configure the MongoDB database.
Configure and activate the Cisco PON Controller.
For steps to install the Cisco PON pluggable OLT refer to Install and Remove Transceiver Modules in the Cisco NCS 540 Router Hardware Installation Guide.
For steps to install the PON Manager, refer to PON Manager Installation in the Cisco Routed PON Installation Guide.
For steps to install the MongoDB database, refer to MongoDB Installation in the Cisco Routed PON Installation Guide.
The PON Controller is installed on a Docker container on the router. The PON Controller installation package is stored either on the hard disk of the router or on a network server to which the router has access.
To configure the PON controller, follow the steps:
For the Cisco Routers using the Cisco IOS XR7 framework, execute the following commands to install the software package:
Note |
This section is applicable for the following routers:
|
Execute the following command to confirm if the PON Controller package is present in the router:
show install active summary | i pon
Sample Output
RP/0/RP0/CPU0:PON-Rtr1-CrLk#show install active summary | i pon
Tue Feb 27 08:45:29.246 UTC
xr-pon-ctlr 24.1.1.40Iv1.0.1-1
If the PON Controller isn’t present, the command won’t return any value.
If the PON Controller isn’t present refer to the appropriate guide for steps to download and configure additional packages. The steps to configure an additional package might differ based on the router model.
For NCS 5500 or NCS 5700 router, refer to Install Optional Packages to Provide Additional Functionality in System Setup and Software Installation Guide for Cisco NCS 5500 Series Routers.
For NCS 540 router, refer to Install Optional Packages to Provide Additional Functionality in System Setup and Software Installation Guide for Cisco NCS 540 Series Routers.
This section provides the steps to configure Cisco PON Controller software in the routers using the IOS XR framework.
Note |
This section is applicable for the below routers:
|
Execute the following command to confirm if the PON Controller package is present in the router:
show install active | i pon
Sample Output
RP/0/RP0/CPU0:PON-Rtr5-Peyto#show install active | i pon
Tue Feb 27 08:44:53.345 UTC
ncs5500-pon-ctlr-1.0.0.0-r241140I
ncs5500-pon-ctlr-1.0.0.0-r241140I
If the PON Controller isn’t present, the command doesn’t return any values.
If the PON Controller isn’t present refer to the appropriate guide for steps to download and configure additional packages. The steps to configure an additional package might differ based on the router model.
For NCS 5500 or NCS 5700 router, refer to Install Packages in System Setup and Software Installation Guide for Cisco NCS 5500 Series Routers.
For NCS 540 router, refer to Install Packages in System Setup and Software Installation Guide for Cisco NCS 540 Series Routers.
After installing up the PON Controller in the router, you need to activate it by connecting to MongoDB and applying additional configurations to the controller.
Before you begin:
Ensure that you have synchronized the XR clock with that of an NTP server.
The steps to configure an NTP server might differ based on the router model. Refer to the appropriate guide for steps to configure an NTP server.
For NCS 5500 or NCS 5700 routers, refer to Configuring Network Time Protocol in System Management Configuration Guide for Cisco NCS 5500 Series Routers.
For NCS 540 router, refer to Synchronize Router Clock with NTP Server in System Setup and Software Installation Guide for Cisco NCS 540 Series Routers.
linux networking
vrf default
address-family ipv4
default-route software-forwarding
source-hint default-route interface MgmtEth0/RP0/CPU0/0
!
!
!
The steps to configure Linux Networking might differ based on the router model. Refer to the appropriate guide for steps to configure an NTP server.
For NCS 5500 or NCS 5700 routers, refer to Packet I/O on IOS XR in Application Hosting Configuration Guide for Cisco NCS 5500 Series Routers.
For NCS 540 router, refer to Setup the Linux Network for Application Hosting in Application Hosting Configuration Guide for Cisco NCS 540 Series Routers.
Ensure that the MongoDB server is reachable from your router by executing the following command:
bash ping <IP address of the MongoDB server>
Sample Output
RP/0/RP0/CPU0:PON-Rtr5-Peyto#bash ping 192.0.2.0
Tue Feb 27 09:17:53.046 UTC
RP/0/RP0/CPU0:Feb 27 09:17:53.087 UTC: bash_cmd[66952]: %INFRA-INFRA_MSG-5-RUN_LOGIN : User lab logged into shell from con0/RP0/CPU0
PING 192.0.2.0 (192.0.2.0) 56(84) bytes of data.
64 bytes from 192.0.2.0: icmp_seq=1 ttl=64 time=0.820 ms
64 bytes from 192.0.2.0: icmp_seq=2 ttl=64 time=0.769 ms
64 bytes from 192.0.2.0: icmp_seq=3 ttl=64 time=0.703 ms
Edit the parameters in the PonCntlInit.json that is part of the PON Controller package establish connection with the MongoDB server. A sample PonCntlInit.json is included in the PON Controller package.
A sample PonCntlInit.json is given below:
{
"CNTL": {
"Auth": false,
"CFG Version": "R4.0.0",
"DHCPv4": false,
"DHCPv6": false,
"PPPoE": false,
"UMT interface": "tibitvirt",
"Maximum CPEs Allowed": 0,
"Maximum CPE Time": 0
},
"DEBUG": {},
"JSON": {
"databaseDir": "/opt/cisco/poncntl/database/",
"defaultDir": "/opt/cisco/poncntl/database/"
},
"Local Copy": {
"CNTL-STATE": false,
"OLT-STATE": false,
"ONU-STATE": false
},
"Logging": {
"Directory": "/var/log/tibit",
"FileCount": 2,
"FileSize": 5120000,
"Tracebacks": false,
"Timestamp": false,
"Facility" : "user"
},
"MongoDB": {
"auth_db": "cisco_users",
"auth_enable": false,
"ca_cert_path": "/etc/cisco/ca.pem",
"compression": false,
"write_concern": "default",
"host": "192.0.2.0", <-- mongoDB server IP Address
"name": "cisco_pon_controller",
"password": "",
"port": "27017", <-- mongoDB port
"tls_enable": false, <-- field to enable TLS based connection
"username": "",
"dns_srv": false,
"db_uri": "",
"replica_set_enable": false,
"replica_set_name": "rs0",
"replica_set_hosts":
[
"192.0.2.3:27017", <-- mongoDB replica set 1
"192.0.2.4:27999", <-- mongoDB replica set 2
"mongo02.example.com:17999"
],
"validate_cfg": true
},
"databaseType": "MongoDB",
"interface": "veth_pon_glb",
"interface_namespace": ""
}
Change the host IP address parameter to the IP address of your MongoDB server.
(Optional) To enable secure connection between the PON Controller and the MongoDB server, change the value for tls_enable to true.
If a secure connection is enabled, you’ll need to configure the username and password parameters as well.
If you have configured a replica set for MongoDB, change the IP address for the MongoDB replica set.
Copy and paste the PonCntlinit.json file to either the hard disk of the router or to your network folder.
When copying the file to the hard disk of the router, it is stored in /misc/disk1 by default.
Confugure Controller using CLI:
CLI
Execute the cfg-file command to initiate the PON controller, the command is used to load the PON controller application on the router.
Syntax
cfg-file <tftp transfer protocol>/package_path/ or harddisk/package_path/ vrf <vrf-name> tls-pem <tftp transfer protocol>/pem_file_path/
Parameter |
Decription |
||
---|---|---|---|
tftp transfer protocol |
TFTP server IP address. |
||
package_path |
Location of the .json file.
|
||
Harddisk |
Harddisk of the router. If the .json file is located on the harddisk, provide the path to on the harddisk. |
||
vrf |
Specifies VPN routing and forwarding (VRF). |
||
vrf-name |
Name of a VRF used for MongoDB connectivity. |
||
tls-pem |
Specifies that TLS is used. |
||
pem_file_path |
Path of the .pem file. This can either be stored on the router harddisk or a TFTP server. |
Example:
RP/0/RP0/CPU0:ios(config)#pon-ctlr cfg-file tftp://192.0.2.0/auto/tftp-users2/user2/PonCntlInit.json vrf default tls-pem tftp://192.0.2.0/auto/tftp-blr-users2/user/rootCA.pem
Ensure that the main interface for the SFP is in active.
RP/0/RP0/CPU0:ios(config)#interface TenGigE0/0/0/5
RP/0/RP0/CPU0:ios(config-if)#no shutdown
Create a subinterface with ID 4090 on the port where the small form-factor pluggable is inserted. The subinterface is required to receive the control packets between the PON Controller and the Cisco PON pluggable OLT.
interface TenGigE0/0/0/5.4090
encapsulation dot1q 4090
When the subinterface is created, the PON controller discovers the OLTs and ONUs in the network.
RP/0/RP0/CPU0:ios#run
Thu Oct 19 08:04:53.799 UTC
[xr-vm_node0_RP0_CPU0:~]$docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
7909570b4803 cisco-poncntl.xr:R4.0.0 "/usr/bin/supervisor…" 26 hours ago Up 26 hours pon_ctlr
[xr-vm_node0_RP0_CPU0:~]$docker logs pon_ctlr --tail 50
2023-10-19 08:07:33.482 INFO PonCntl Total Controllers: 1 OLTs: 1 ONUs: 1
RP/0/RP0/CPU0:ios(config-if)#no shutdown
Run the lldp command to enable Link Layer Discovery Protocol (LLDP) for the OLT port. This helps in the discovery of the OLTs and ONUs in the PON Manager.
RP/0/RP0/CPU0:ios(config)# lldp
Confirm if the PON Controller, OLT, and ONU details are displayed in the PON Manager.
Note |
If the Controller summary displays Status: as offline, then match the UTC clock on your router to that of the Cisco UCS server. |
For more information on PON Controller, refer to PON Controller in the Cisco Routed PON Installation Guide.