Check Accessibility Control

This scenario shows how to configure a cellular interface, enabling the accessibility control mechanism that triggers reconnections when network connectivity is lost.

../../../../_images/google.svg

Test Reconnection By Accessibility Control

Description

In DUT0, the cell0 cellular interface is configured with a cellular profile for which accessibility control is enabled. Once connectivity with Google’s DNS public server has been verified, a situation where 100% of the packets received by the network are lost is emulated to verify that the accessibility control mechanism triggers a reconnection.

Scenario

Step 1: Set the following configuration in DUT0 :

set cellular logging level info
set cellular profile CELPROFILE accessibility-control ping address 8.8.8.8
set cellular profile CELPROFILE accessibility-control ping interval 10
set cellular profile CELPROFILE apn movistar.es
set controllers cellular wwan0 encrypted-pin U2FsdGVkX1/xVvfVzMCHwsFH5FPgOR2aiAPqAtZR/yA=
set controllers cellular wwan0 pdp 1 profile CELPROFILE
set interfaces cellular cell0 address dhcp
set interfaces cellular cell0 phy wwan0 pdp 1
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 2: Run command controllers cellular wwan0 pdp 1 show network-data-connection at DUT0 and check if output matches the following regular expressions:

Connection status\s* = connected
Show output
Connection status               = connected
Traffic channel status          = active
Max. TX channel rate (bps)      = 50000000
Max. RX channel rate (bps)      = 300000000
IPv4 address                    = 88.31.42.182
IPv4 mask                       = 255.255.255.252
IPv4 gateway                    = 88.31.42.181
IPv4 primary DNS                = 80.58.61.248
IPv4 secondary DNS              = 80.58.61.249

Note

Once the cellular interface is configured, it can be verified that there is network connectivity by pinging Google's DNS public server.

Step 3: Ping IP address 8.8.8.8 from DUT0:

admin@DUT0$ ping 8.8.8.8 count 1 size 56 timeout 1
Show output
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=116 time=32.3 ms

--- 8.8.8.8 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 32.280/32.280/32.280/0.000 ms

Note

The accessibility control is a mechanism where pings are sent at an interval, and to the IP address, configured by the user. The mechanism then waits for a response within this interval. If no response is received before it times out, a second ping is sent and a response is expected within 10 seconds. If there is still no response, two more pings are sent at 5-second intervals. Finally, if there is still no response, the device reconnects to the network.

Note

As a result, you can verify that no reconnection has been recorded in the system logs if you wait long enough.

Step 4: Run command system journal clear at DUT0.

Step 5: Run command system journal show | cat at DUT0 and check if output does not contain the following tokens:

[Device/wwan0] Warning: [PDP#1] Requesting reconnection...
[Device/wwan0] Info: WDS[0]: Stopping network connection...
[Device/wwan0] Info: [PDP#1] Establishing network connection...
Show output
Mar 06 14:54:18.756556 osdx systemd-journald[2104]: Runtime Journal (/run/log/journal/37ee58adb3c7401196dca61661274b73) is 8.0M, max 80.5M, 72.5M free.
Mar 06 14:54:18.763814 osdx systemd-journald[2104]: Received client request to rotate journal, rotating.
Mar 06 14:54:18.763997 osdx systemd-journald[2104]: Vacuuming done, freed 0B of archived journals from /run/log/journal/37ee58adb3c7401196dca61661274b73.
Mar 06 14:54:18.849268 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal clear'.
Mar 06 14:54:28.017290 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8717, Sequence: 0
Mar 06 14:54:28.017310 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 1 - interval reduced to 10 seconds

Note

However, when traffic control is applied, it is possible to prove the 'ping' command is failing because ICMP packets are being dropped.

Step 6: Run command system journal clear at DUT0.

Step 7: Modify the following configuration lines in DUT0 :

set interfaces cellular cell0 traffic control in PLOSS
set traffic control PLOSS type network-emulator packet-loss 100

Step 8: Expect a failure in the following command: Ping IP address 8.8.8.8 from DUT0:

admin@DUT0$ ping 8.8.8.8 count 1 size 56 timeout 1
Show output
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.

--- 8.8.8.8 ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms

Note

You can verify that a reconnection has been recorded in the system logs if you wait long enough.

Step 9: Run command system journal show | cat at DUT0 and check if output contains the following tokens:

[Device/wwan0] Warning: [PDP#1] Requesting reconnection...
[Device/wwan0] Info: WDS[0]: Stopping network connection...
[Device/wwan0] Info: [PDP#1] Establishing network connection...
Show output
Mar 06 14:55:01.204182 osdx systemd-journald[2104]: Runtime Journal (/run/log/journal/37ee58adb3c7401196dca61661274b73) is 8.0M, max 80.5M, 72.5M free.
Mar 06 14:55:01.211343 osdx systemd-journald[2104]: Received client request to rotate journal, rotating.
Mar 06 14:55:01.211526 osdx systemd-journald[2104]: Vacuuming done, freed 0B of archived journals from /run/log/journal/37ee58adb3c7401196dca61661274b73.
Mar 06 14:55:01.293194 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal clear'.
Mar 06 14:55:01.456896 osdx OSDxCLI[69931]: User 'admin' entered the configuration menu.
Mar 06 14:55:01.557541 osdx OSDxCLI[69931]: User 'admin' added a new cfg line: 'set interfaces cellular cell0 traffic control in PLOSS'.
Mar 06 14:55:01.658203 osdx OSDxCLI[69931]: User 'admin' added a new cfg line: 'set traffic control PLOSS type network-emulator packet-loss 100'.
Mar 06 14:55:01.781930 osdx OSDxCLI[69931]: User 'admin' added a new cfg line: 'show changes'.
Mar 06 14:55:01.943849 osdx ubnt-cfgd[74338]: inactive
Mar 06 14:55:02.083196 osdx INFO[74349]: FRR daemons did not change
Mar 06 14:55:02.204116 osdx (udev-worker)[74369]: ifb.cell0: Could not set Alias=, MACAddress=/MACAddressPolicy=, TransmitQueues=, ReceiveQueues=, TransmitQueueLength=, MTUBytes=, GenericSegmentOffloadMaxBytes= or GenericSegmentOffloadMaxSegments=, ignoring: Operation not supported
Mar 06 14:55:02.204214 osdx (udev-worker)[74369]: Network interface NamePolicy= disabled on kernel command line.
Mar 06 14:55:02.241859 osdx kernel: netem: version 1.3
Mar 06 14:55:02.243748 osdx cfgd[1789]: [69931]Completed change to active configuration
Mar 06 14:55:02.272642 osdx systemd[1]: osdx-ledsd.service: Sent signal SIGUSR2 to main process 2426 (osdx-ledsd) on client request.
Mar 06 14:55:02.272677 osdx osdx-ledsd[2426]: Config changed, checking config paths
Mar 06 14:55:02.276940 osdx OSDxCLI[69931]: User 'admin' committed the configuration.
Mar 06 14:55:02.319328 osdx OSDxCLI[69931]: User 'admin' left the configuration menu.
Mar 06 14:55:03.557896 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'ping 8.8.8.8 count 1 size 56 timeout 1'.
Mar 06 14:55:18.018244 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8717, Sequence: 5
Mar 06 14:55:18.018262 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 1 - interval reduced to 10 seconds
Mar 06 14:55:23.907110 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:25.291113 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:26.655106 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:28.018522 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8717, Sequence: 6
Mar 06 14:55:28.018542 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 2 - interval reduced to 5 seconds
Mar 06 14:55:28.019154 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:29.439121 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:30.843115 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:32.267109 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:33.018791 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8717, Sequence: 7
Mar 06 14:55:33.018813 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 3 - interval reduced to 5 seconds
Mar 06 14:55:33.723141 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:35.227106 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:36.715123 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:38.019070 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8717, Sequence: 8
Mar 06 14:55:38.019091 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 4 - interval reduced to 5 seconds
Mar 06 14:55:38.031040 osdx WARNING[74476]: [wwan0/1] Requesting reconnection...
Mar 06 14:55:38.040314 osdx wwan-cli-socket[74478]: [Device/wwan0] Info: wwan-cli-socket reconnect 60000 wwan0
Mar 06 14:55:38.040899 osdx wwan-module[69916]: [Device/wwan0] Info: Reconnecting device...
Mar 06 14:55:38.040916 osdx wwan-module[69916]: [Device/wwan0] Warning: [PDP#1] Requesting reconnection...
Mar 06 14:55:38.040982 osdx wwan-module[69916]: [Device/wwan0] Info: WDS[0]: Stopping network connection...
Mar 06 14:55:38.154757 osdx wwan-module[69916]: [Device/wwan0] Info: WDS[0]: Network connection was stopped!
Mar 06 14:55:38.161811 osdx kernel: net _wwan0: link_state 0x1 -> 0x0
Mar 06 14:55:38.165154 osdx wwan-module[69916]: [Device/wwan0] Info: Checking registration state...
Mar 06 14:55:38.194848 osdx wwan-accessibility-control[74253]: [Core/wwan0/1] Info: Execution stopped
Mar 06 14:55:38.195271 osdx systemd[1]: Stopping wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control...
Mar 06 14:55:38.198509 osdx systemd[1]: wwan-accessibility-control@wwan0pdp1.service: Deactivated successfully.
Mar 06 14:55:38.199065 osdx systemd[1]: Stopped wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control.
Mar 06 14:55:38.199171 osdx OSDxCLI[69931]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 06 14:55:38.215353 osdx INFO[74483]: Stop DHCP client for cell0
Mar 06 14:55:38.225261 osdx dhclient[74489]: Killed old client process
Mar 06 14:55:38.282539 osdx wwan-module[69916]: [Device/wwan0] Info: Device registered and PS attached successfully
Mar 06 14:55:38.282555 osdx wwan-module[69916]: [Device/wwan0] Info: [PDP#1] Establishing network connection...
Mar 06 14:55:38.346083 osdx dhclient[74489]: DHCPRELEASE of 88.31.42.182 on cell0 to 88.31.42.181 port 67
Mar 06 14:55:38.510035 osdx wwan-module[69916]: [Device/wwan0] Info: [PDP#1] Network connection was successfully started: PDH=[133319632]
Mar 06 14:55:38.637855 osdx kernel: net _wwan0: link_state 0x0 -> 0x1
Mar 06 14:55:38.869902 osdx kernel: cell0: (slave _wwan0_1): Releasing backup interface
Mar 06 14:55:38.946015 osdx kernel: cell0: (slave _wwan0_1): The slave device specified does not support setting the MAC address
Mar 06 14:55:38.949857 osdx kernel: cell0: (slave _wwan0_1): making interface the new active one
Mar 06 14:55:38.950061 osdx kernel: cell0: (slave _wwan0_1): Enslaving as an active interface with an up link
Mar 06 14:55:38.969822 osdx kernel: 8021q: adding VLAN 0 to HW filter on device cell0
Mar 06 14:55:38.970118 osdx INFO[74535]: Start DHCP client for cell0

Step 1: Set the following configuration in DUT0 :

set cellular logging level info
set cellular profile CELPROFILE accessibility-control ping address 8.8.8.8
set cellular profile CELPROFILE accessibility-control ping interval 10
set cellular profile CELPROFILE apn movistar.es
set controllers cellular wwan0 sim select socket_1
set controllers cellular wwan0 sim socket socket_1 encrypted-pin U2FsdGVkX187Z8/0vNUB4CCxTlZozOU3EdDIz5oZl8Y=
set controllers cellular wwan0 sim socket socket_1 pdp 1 profile CELPROFILE
set interfaces cellular cell0 address dhcp
set interfaces cellular cell0 phy wwan0 pdp 1
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 2: Run command controllers cellular wwan0 pdp 1 show network-data-connection at DUT0 and check if output matches the following regular expressions:

Connection status\s* = connected
Show output
Connection status               = connected
Traffic channel status          = active
Max. TX channel rate (bps)      = 0
Max. RX channel rate (bps)      = 0
IPv4 address                    = 37.12.67.174
IPv4 mask                       = 255.255.255.252
IPv4 gateway                    = 37.12.67.173
IPv4 primary DNS                = 80.58.61.248
IPv4 secondary DNS              = 80.58.61.249

Note

Once the cellular interface is configured, it can be verified that there is network connectivity by pinging Google's DNS public server.

Step 3: Ping IP address 8.8.8.8 from DUT0:

admin@DUT0$ ping 8.8.8.8 count 1 size 56 timeout 1
Show output
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=37.1 ms

--- 8.8.8.8 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 37.128/37.128/37.128/0.000 ms

Note

The accessibility control is a mechanism where pings are sent at an interval, and to the IP address, configured by the user. The mechanism then waits for a response within this interval. If no response is received before it times out, a second ping is sent and a response is expected within 10 seconds. If there is still no response, two more pings are sent at 5-second intervals. Finally, if there is still no response, the device reconnects to the network.

Note

As a result, you can verify that no reconnection has been recorded in the system logs if you wait long enough.

Step 4: Run command system journal clear at DUT0.

Step 5: Run command system journal show | cat at DUT0 and check if output does not contain the following tokens:

[Device/wwan0] Warning: [PDP#1] Requesting reconnection...
[Device/wwan0] Info: WDS[0]: Stopping network connection...
[Device/wwan0] Info: [PDP#1] Establishing network connection...
Show output
Mar 02 13:58:50.103528 osdx systemd-journald[2294]: Runtime Journal (/run/log/journal/5ce26c3a01094f5195ee416dce8fc4f5) is 8.2M, max 69.4M, 61.2M free.
Mar 02 13:58:50.105020 osdx systemd-journald[2294]: Received client request to rotate journal, rotating.
Mar 02 13:58:50.105075 osdx systemd-journald[2294]: Vacuuming done, freed 0B of archived journals from /run/log/journal/5ce26c3a01094f5195ee416dce8fc4f5.
Mar 02 13:58:50.178114 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'system journal clear'.
Mar 02 13:58:53.617982 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Previous packet pending - ID: 25014, Sequence: 0
Mar 02 13:58:53.617990 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 1 - interval reduced to 10 seconds

Note

However, when traffic control is applied, it is possible to prove the 'ping' command is failing because ICMP packets are being dropped.

Step 6: Run command system journal clear at DUT0.

Step 7: Modify the following configuration lines in DUT0 :

set interfaces cellular cell0 traffic control in PLOSS
set traffic control PLOSS type network-emulator packet-loss 100

Step 8: Expect a failure in the following command: Ping IP address 8.8.8.8 from DUT0:

admin@DUT0$ ping 8.8.8.8 count 1 size 56 timeout 1
Show output
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.

--- 8.8.8.8 ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms

Note

You can verify that a reconnection has been recorded in the system logs if you wait long enough.

Step 9: Run command system journal show | cat at DUT0 and check if output contains the following tokens:

[Device/wwan0] Warning: [PDP#1] Requesting reconnection...
[Device/wwan0] Info: WDS[0]: Stopping network connection...
[Device/wwan0] Info: [PDP#1] Establishing network connection...
Show output
Mar 02 13:59:32.427103 osdx systemd-journald[2294]: Runtime Journal (/run/log/journal/5ce26c3a01094f5195ee416dce8fc4f5) is 8.0M, max 69.4M, 61.4M free.
Mar 02 13:59:32.428972 osdx systemd-journald[2294]: Received client request to rotate journal, rotating.
Mar 02 13:59:32.429039 osdx systemd-journald[2294]: Vacuuming done, freed 0B of archived journals from /run/log/journal/5ce26c3a01094f5195ee416dce8fc4f5.
Mar 02 13:59:32.486097 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'system journal clear'.
Mar 02 13:59:32.607727 osdx OSDxCLI[85854]: User 'admin' entered the configuration menu.
Mar 02 13:59:32.685177 osdx OSDxCLI[85854]: User 'admin' added a new cfg line: 'set interfaces cellular cell0 traffic control in PLOSS'.
Mar 02 13:59:32.775297 osdx OSDxCLI[85854]: User 'admin' added a new cfg line: 'set traffic control PLOSS type network-emulator packet-loss 100'.
Mar 02 13:59:32.872038 osdx OSDxCLI[85854]: User 'admin' added a new cfg line: 'show changes'.
Mar 02 13:59:32.984506 osdx ubnt-cfgd[90643]: inactive
Mar 02 13:59:33.021767 osdx INFO[90653]: FRR daemons did not change
Mar 02 13:59:33.046538 osdx (udev-worker)[90671]: ifb.cell0: Could not set Alias=, MACAddress=/MACAddressPolicy=, TransmitQueues=, ReceiveQueues=, TransmitQueueLength=, MTUBytes=, GenericSegmentOffloadMaxBytes= or GenericSegmentOffloadMaxSegments=, ignoring: Operation not supported
Mar 02 13:59:33.046567 osdx (udev-worker)[90671]: Network interface NamePolicy= disabled on kernel command line.
Mar 02 13:59:33.060995 osdx kernel: netem: version 1.3
Mar 02 13:59:33.062718 osdx cfgd[2018]: [85854]Completed change to active configuration
Mar 02 13:59:33.065721 osdx OSDxCLI[85854]: User 'admin' committed the configuration.
Mar 02 13:59:33.106589 osdx OSDxCLI[85854]: User 'admin' left the configuration menu.
Mar 02 13:59:34.266249 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'ping 8.8.8.8 count 1 size 56 timeout 1'.
Mar 02 13:59:43.618726 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Previous packet pending - ID: 25014, Sequence: 5
Mar 02 13:59:43.618734 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 1 - interval reduced to 10 seconds
Mar 02 13:59:53.618882 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Previous packet pending - ID: 25014, Sequence: 6
Mar 02 13:59:53.618888 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 2 - interval reduced to 5 seconds
Mar 02 13:59:54.573399 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 02 13:59:55.893405 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 02 13:59:57.225402 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 02 13:59:58.569426 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 02 13:59:58.619012 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Previous packet pending - ID: 25014, Sequence: 7
Mar 02 13:59:58.619019 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 3 - interval reduced to 5 seconds
Mar 02 13:59:59.953414 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 02 14:00:01.337408 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 02 14:00:02.753403 osdx OSDxCLI[85854]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 02 14:00:03.619142 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Previous packet pending - ID: 25014, Sequence: 8
Mar 02 14:00:03.619150 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 4 - interval reduced to 5 seconds
Mar 02 14:00:03.622594 osdx WARNING[90761]: [wwan0/1] Requesting reconnection...
Mar 02 14:00:03.625361 osdx wwan-cli-socket[90763]: [Device/wwan0] Info: wwan-cli-socket reconnect 60000 wwan0
Mar 02 14:00:03.625588 osdx wwan-module[2505]: [Device/wwan0] Info: Reconnecting device...
Mar 02 14:00:03.625594 osdx wwan-module[2505]: [Device/wwan0] Warning: [PDP#1] Requesting reconnection...
Mar 02 14:00:03.625620 osdx wwan-module[2505]: [Device/wwan0] Info: WDS[0]: Stopping network connection...
Mar 02 14:00:03.732156 osdx wwan-module[2505]: [Device/wwan0] Info: WDS[0]: Network connection was stopped!
Mar 02 14:00:03.736985 osdx kernel: net _wwan0: link_state 0x1 -> 0x0
Mar 02 14:00:03.737812 osdx wwan-module[2505]: [Device/wwan0] Info: Checking registration state...
Mar 02 14:00:03.742805 osdx systemd[1]: Stopping wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control...
Mar 02 14:00:03.742825 osdx wwan-accessibility-control[90550]: [Core/wwan0/1] Info: Execution stopped
Mar 02 14:00:03.743467 osdx systemd[1]: wwan-accessibility-control@wwan0pdp1.service: Deactivated successfully.
Mar 02 14:00:03.743626 osdx systemd[1]: Stopped wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control.
Mar 02 14:00:03.747359 osdx INFO[90767]: Stop DHCP client for cell0
Mar 02 14:00:03.751666 osdx dhclient[90774]: Killed old client process
Mar 02 14:00:03.796478 osdx wwan-module[2505]: [Device/wwan0] Info: Device registered and PS attached successfully
Mar 02 14:00:03.796484 osdx wwan-module[2505]: [Device/wwan0] Info: [PDP#1] Establishing network connection...

Step 1: Set the following configuration in DUT0 :

set cellular logging level info
set cellular profile CELPROFILE accessibility-control ping address 8.8.8.8
set cellular profile CELPROFILE accessibility-control ping interval 10
set cellular profile CELPROFILE apn movistar.es
set controllers cellular wwan0 sim select socket_1
set controllers cellular wwan0 sim socket socket_1 encrypted-pin U2FsdGVkX18FymtJbaORzX48k0ilIpW/SuNeJLjJQRw=
set controllers cellular wwan0 sim socket socket_1 pdp 1 profile CELPROFILE
set interfaces cellular cell0 address dhcp
set interfaces cellular cell0 phy wwan0 pdp 1
set system login user admin authentication encrypted-password '$6$GSjsCj8gHLv$/VcqU6FLi6CT2Oxn0MJQ2C2tqnRDrYKNF8HIYWJp68nvXvPdFccDsT04.WtigUONbKYrgKg8d6rEs8PjljMkH0'

Step 2: Run command controllers cellular wwan0 pdp 1 show network-data-connection at DUT0 and check if output matches the following regular expressions:

Connection status\s* = connected
Show output
Connection status               = connected
Traffic channel status          = active
Max. TX channel rate (bps)      = 0
Max. RX channel rate (bps)      = 0
IPv4 address                    = 88.31.86.119
IPv4 mask                       = 255.255.255.240
IPv4 gateway                    = 88.31.86.120
IPv4 primary DNS                = 80.58.61.248
IPv4 secondary DNS              = 80.58.61.249

Note

Once the cellular interface is configured, it can be verified that there is network connectivity by pinging Google's DNS public server.

Step 3: Ping IP address 8.8.8.8 from DUT0:

admin@DUT0$ ping 8.8.8.8 count 1 size 56 timeout 1
Show output
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=117 time=48.5 ms

--- 8.8.8.8 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 48.496/48.496/48.496/0.000 ms

Note

The accessibility control is a mechanism where pings are sent at an interval, and to the IP address, configured by the user. The mechanism then waits for a response within this interval. If no response is received before it times out, a second ping is sent and a response is expected within 10 seconds. If there is still no response, two more pings are sent at 5-second intervals. Finally, if there is still no response, the device reconnects to the network.

Note

As a result, you can verify that no reconnection has been recorded in the system logs if you wait long enough.

Step 4: Run command system journal clear at DUT0.

Step 5: Run command system journal show | cat at DUT0 and check if output does not contain the following tokens:

[Device/wwan0] Warning: [PDP#1] Requesting reconnection...
[Device/wwan0] Info: WDS[0]: Stopping network connection...
[Device/wwan0] Info: [PDP#1] Establishing network connection...
Show output
Mar 07 01:20:05.702968 osdx systemd-journald[88361]: Runtime Journal (/run/log/journal/37ee58adb3c7401196dca61661274b73) is 8.0M, max 80.3M, 72.3M free.
Mar 07 01:20:05.708060 osdx systemd-journald[88361]: Received client request to rotate journal, rotating.
Mar 07 01:20:05.708172 osdx systemd-journald[88361]: Vacuuming done, freed 0B of archived journals from /run/log/journal/37ee58adb3c7401196dca61661274b73.
Mar 07 01:20:05.780003 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'system journal clear'.
Mar 07 01:20:09.476198 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8295, Sequence: 0
Mar 07 01:20:09.476215 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 1 - interval reduced to 10 seconds

Note

However, when traffic control is applied, it is possible to prove the 'ping' command is failing because ICMP packets are being dropped.

Step 6: Run command system journal clear at DUT0.

Step 7: Modify the following configuration lines in DUT0 :

set interfaces cellular cell0 traffic control in PLOSS
set traffic control PLOSS type network-emulator packet-loss 100

Step 8: Expect a failure in the following command: Ping IP address 8.8.8.8 from DUT0:

admin@DUT0$ ping 8.8.8.8 count 1 size 56 timeout 1
Show output
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.

--- 8.8.8.8 ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 0ms

Note

You can verify that a reconnection has been recorded in the system logs if you wait long enough.

Step 9: Run command system journal show | cat at DUT0 and check if output contains the following tokens:

[Device/wwan0] Warning: [PDP#1] Requesting reconnection...
[Device/wwan0] Info: WDS[0]: Stopping network connection...
[Device/wwan0] Info: [PDP#1] Establishing network connection...
Show output
Mar 07 01:20:48.120668 osdx systemd-journald[88361]: Runtime Journal (/run/log/journal/37ee58adb3c7401196dca61661274b73) is 8.0M, max 80.3M, 72.3M free.
Mar 07 01:20:48.125868 osdx systemd-journald[88361]: Received client request to rotate journal, rotating.
Mar 07 01:20:48.125982 osdx systemd-journald[88361]: Vacuuming done, freed 0B of archived journals from /run/log/journal/37ee58adb3c7401196dca61661274b73.
Mar 07 01:20:48.199931 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'system journal clear'.
Mar 07 01:20:48.363175 osdx OSDxCLI[513859]: User 'admin' entered the configuration menu.
Mar 07 01:20:48.473758 osdx OSDxCLI[513859]: User 'admin' added a new cfg line: 'set interfaces cellular cell0 traffic control in PLOSS'.
Mar 07 01:20:48.577163 osdx OSDxCLI[513859]: User 'admin' added a new cfg line: 'set traffic control PLOSS type network-emulator packet-loss 100'.
Mar 07 01:20:48.686808 osdx OSDxCLI[513859]: User 'admin' added a new cfg line: 'show changes'.
Mar 07 01:20:48.827397 osdx ubnt-cfgd[532675]: inactive
Mar 07 01:20:48.923489 osdx INFO[532685]: FRR daemons did not change
Mar 07 01:20:49.018298 osdx (udev-worker)[291]: ifb.cell0: Could not set Alias=, MACAddress=/MACAddressPolicy=, TransmitQueues=, ReceiveQueues=, TransmitQueueLength=, MTUBytes=, GenericSegmentOffloadMaxBytes= or GenericSegmentOffloadMaxSegments=, ignoring: Operation not supported
Mar 07 01:20:49.065537 osdx kernel: Mirror/redirect action on
Mar 07 01:20:49.077874 osdx cfgd[3828]: [513859]Completed change to active configuration
Mar 07 01:20:49.097922 osdx systemd[1]: osdx-ledsd.service: Sent signal SIGUSR2 to main process 4646 (osdx-ledsd) on client request.
Mar 07 01:20:49.097961 osdx osdx-ledsd[4646]: Config changed, checking config paths
Mar 07 01:20:49.100554 osdx OSDxCLI[513859]: User 'admin' committed the configuration.
Mar 07 01:20:49.153576 osdx OSDxCLI[513859]: User 'admin' left the configuration menu.
Mar 07 01:20:50.352467 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'ping 8.8.8.8 count 1 size 56 timeout 1'.
Mar 07 01:20:59.476940 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8295, Sequence: 5
Mar 07 01:20:59.476955 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 1 - interval reduced to 10 seconds
Mar 07 01:21:09.477136 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8295, Sequence: 6
Mar 07 01:21:09.477151 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 2 - interval reduced to 5 seconds
Mar 07 01:21:10.718469 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 07 01:21:12.110464 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 07 01:21:13.498455 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 07 01:21:14.477331 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8295, Sequence: 7
Mar 07 01:21:14.477345 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 3 - interval reduced to 5 seconds
Mar 07 01:21:14.918463 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 07 01:21:16.342469 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 07 01:21:17.782454 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 07 01:21:19.226465 osdx OSDxCLI[513859]: User 'admin' executed a new command: 'system journal show | cat'.
Mar 07 01:21:19.477526 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8295, Sequence: 8
Mar 07 01:21:19.477541 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 4 - interval reduced to 5 seconds
Mar 07 01:21:19.487880 osdx WARNING[532797]: [wwan0/1] Requesting reconnection...
Mar 07 01:21:19.494583 osdx wwan-cli-socket[532799]: [Device/wwan0] Info: wwan-cli-socket reconnect 60000 wwan0
Mar 07 01:21:19.494972 osdx wwan-module[4679]: [Device/wwan0] Info: Reconnecting device...
Mar 07 01:21:19.494984 osdx wwan-module[4679]: [Device/wwan0] Warning: [PDP#1] Requesting reconnection...
Mar 07 01:21:19.495034 osdx wwan-module[4679]: [Device/wwan0] Info: WDS[0]: Stopping network connection...
Mar 07 01:21:19.587954 osdx wwan-module[4679]: [Device/wwan0] Info: WDS[0]: Network connection was stopped!
Mar 07 01:21:19.597610 osdx kernel: net _wwan0: link_state 0x1 -> 0x0
Mar 07 01:21:19.600027 osdx wwan-module[4679]: [Device/wwan0] Info: Checking registration state...
Mar 07 01:21:19.623082 osdx wwan-accessibility-control[532583]: [Core/wwan0/1] Info: Execution stopped
Mar 07 01:21:19.623259 osdx systemd[1]: Stopping wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control...
Mar 07 01:21:19.625134 osdx systemd[1]: wwan-accessibility-control@wwan0pdp1.service: Deactivated successfully.
Mar 07 01:21:19.625557 osdx systemd[1]: Stopped wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control.
Mar 07 01:21:19.635624 osdx INFO[532805]: Stop DHCP client for cell0
Mar 07 01:21:19.642706 osdx dhclient[532810]: Killed old client process
Mar 07 01:21:19.651880 osdx wwan-module[4679]: [Device/wwan0] Info: Device registered and PS attached successfully
Mar 07 01:21:19.651901 osdx wwan-module[4679]: [Device/wwan0] Info: [PDP#1] Establishing network connection...
Mar 07 01:21:19.765759 osdx dhclient[532810]: DHCPRELEASE of 88.31.86.119 on cell0 to 88.31.86.120 port 67
Mar 07 01:21:19.845802 osdx wwan-module[4679]: [Device/wwan0] Info: [PDP#1] Network connection was successfully started: PDH=[3799281984]
Mar 07 01:21:19.909521 osdx kernel: net _wwan0: link_state 0x0 -> 0x1
Mar 07 01:21:20.097525 osdx kernel: cell0: (slave _wwan0_1): Releasing backup interface
Mar 07 01:21:20.161526 osdx kernel: cell0: (slave _wwan0_1): The slave device specified does not support setting the MAC address
Mar 07 01:21:20.161660 osdx kernel: cell0: (slave _wwan0_1): making interface the new active one
Mar 07 01:21:20.161704 osdx kernel: cell0: (slave _wwan0_1): Enslaving as an active interface with an up link
Mar 07 01:21:20.173531 osdx kernel: 8021q: adding VLAN 0 to HW filter on device cell0
Mar 07 01:21:20.174983 osdx INFO[532856]: Start DHCP client for cell0