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/XAhnqUucAdPNatR216+lesnZheM8aM8A=
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                    = 37.12.26.40
IPv4 mask                       = 255.255.255.240
IPv4 gateway                    = 37.12.26.41
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=118 ms

--- 8.8.8.8 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 118.224/118.224/118.224/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
Jun 04 19:11:23.512285 osdx systemd-journald[2122]: Runtime Journal (/run/log/journal/5d1a5a0de0704bcb98266ed78dfb5338) is 8.2M, max 80.5M, 72.2M free.
Jun 04 19:11:23.519347 osdx systemd-journald[2122]: Received client request to rotate journal, rotating.
Jun 04 19:11:23.519533 osdx systemd-journald[2122]: Vacuuming done, freed 0B of archived journals from /run/log/journal/5d1a5a0de0704bcb98266ed78dfb5338.
Jun 04 19:11:23.617636 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal clear'.
Jun 04 19:11:32.516242 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8639, Sequence: 0
Jun 04 19:11:32.516266 osdx wwan-accessibility-control[532927]: [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
Jun 04 19:12:05.964057 osdx systemd-journald[2122]: Runtime Journal (/run/log/journal/5d1a5a0de0704bcb98266ed78dfb5338) is 8.0M, max 80.5M, 72.5M free.
Jun 04 19:12:05.971506 osdx systemd-journald[2122]: Received client request to rotate journal, rotating.
Jun 04 19:12:05.971688 osdx systemd-journald[2122]: Vacuuming done, freed 0B of archived journals from /run/log/journal/5d1a5a0de0704bcb98266ed78dfb5338.
Jun 04 19:12:06.053764 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal clear'.
Jun 04 19:12:06.193398 osdx OSDxCLI[527512]: User 'admin' entered the configuration menu.
Jun 04 19:12:06.294232 osdx OSDxCLI[527512]: User 'admin' added a new cfg line: 'set interfaces cellular cell0 traffic control in PLOSS'.
Jun 04 19:12:06.397845 osdx OSDxCLI[527512]: User 'admin' added a new cfg line: 'set traffic control PLOSS type network-emulator packet-loss 100'.
Jun 04 19:12:06.520655 osdx OSDxCLI[527512]: User 'admin' added a new cfg line: 'show changes'.
Jun 04 19:12:06.675325 osdx ubnt-cfgd[533020]: inactive
Jun 04 19:12:06.801049 osdx INFO[533030]: FRR daemons did not change
Jun 04 19:12:06.903437 osdx (udev-worker)[533050]: ifb.cell0: Could not set Alias=, MACAddress=/MACAddressPolicy=, TransmitQueues=, ReceiveQueues=, TransmitQueueLength=, MTUBytes=, GenericSegmentOffloadMaxBytes= or GenericSegmentOffloadMaxSegments=, ignoring: Operation not supported
Jun 04 19:12:06.903534 osdx (udev-worker)[533050]: Network interface NamePolicy= disabled on kernel command line.
Jun 04 19:12:06.919928 osdx cfgd[1793]: [527512]Completed change to active configuration
Jun 04 19:12:06.953351 osdx systemd[1]: osdx-ledsd.service: Sent signal SIGUSR2 to main process 2445 (osdx-ledsd) on client request.
Jun 04 19:12:06.953386 osdx osdx-ledsd[2445]: Config changed, checking config paths
Jun 04 19:12:06.957280 osdx OSDxCLI[527512]: User 'admin' committed the configuration.
Jun 04 19:12:06.988081 osdx OSDxCLI[527512]: User 'admin' left the configuration menu.
Jun 04 19:12:08.202431 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'ping 8.8.8.8 count 1 size 56 timeout 1'.
Jun 04 19:12:22.517265 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8639, Sequence: 5
Jun 04 19:12:22.517282 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 1 - interval reduced to 10 seconds
Jun 04 19:12:28.551653 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:29.891663 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:31.259657 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:32.517543 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8639, Sequence: 6
Jun 04 19:12:32.517563 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 2 - interval reduced to 5 seconds
Jun 04 19:12:32.615616 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:34.007656 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:35.407646 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:36.847664 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:37.517820 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8639, Sequence: 7
Jun 04 19:12:37.517836 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 3 - interval reduced to 5 seconds
Jun 04 19:12:38.295668 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:39.759667 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:41.235665 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:42.518097 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Warning: Previous packet pending - ID: 8639, Sequence: 8
Jun 04 19:12:42.518119 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 4 - interval reduced to 5 seconds
Jun 04 19:12:42.530730 osdx WARNING[533163]: [wwan0/1] Requesting reconnection...
Jun 04 19:12:42.539961 osdx wwan-cli-socket[533165]: [Device/wwan0] Info: wwan-cli-socket reconnect 60000 wwan0
Jun 04 19:12:42.540523 osdx wwan-module[527497]: [Device/wwan0] Info: Reconnecting device...
Jun 04 19:12:42.540540 osdx wwan-module[527497]: [Device/wwan0] Warning: [PDP#1] Requesting reconnection...
Jun 04 19:12:42.540608 osdx wwan-module[527497]: [Device/wwan0] Info: WDS[0]: Stopping network connection...
Jun 04 19:12:42.647571 osdx wwan-module[527497]: [Device/wwan0] Info: WDS[0]: Network connection was stopped!
Jun 04 19:12:42.654364 osdx kernel: net _wwan0: link_state 0x1 -> 0x0
Jun 04 19:12:42.656585 osdx wwan-module[527497]: [Device/wwan0] Info: Checking registration state...
Jun 04 19:12:42.687715 osdx wwan-accessibility-control[532927]: [Core/wwan0/1] Info: Execution stopped
Jun 04 19:12:42.688453 osdx systemd[1]: Stopping wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control...
Jun 04 19:12:42.691381 osdx systemd[1]: wwan-accessibility-control@wwan0pdp1.service: Deactivated successfully.
Jun 04 19:12:42.691932 osdx systemd[1]: Stopped wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control.
Jun 04 19:12:42.708435 osdx INFO[533171]: Stop DHCP client for cell0
Jun 04 19:12:42.718090 osdx dhclient[533176]: Killed old client process
Jun 04 19:12:42.727581 osdx OSDxCLI[527512]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 19:12:42.775340 osdx wwan-module[527497]: [Device/wwan0] Info: Device registered and PS attached successfully
Jun 04 19:12:42.775362 osdx wwan-module[527497]: [Device/wwan0] Info: [PDP#1] Establishing network connection...
Jun 04 19:12:42.834642 osdx dhclient[533176]: DHCPRELEASE of 37.12.26.40 on cell0 to 37.12.26.41 port 67
Jun 04 19:12:43.003680 osdx wwan-module[527497]: [Device/wwan0] Info: [PDP#1] Network connection was successfully started: PDH=[204648160]
Jun 04 19:12:43.130392 osdx kernel: net _wwan0: link_state 0x0 -> 0x1
Jun 04 19:12:43.362378 osdx kernel: cell0: (slave _wwan0_1): Releasing backup interface
Jun 04 19:12:43.582539 osdx kernel: cell0: (slave _wwan0_1): The slave device specified does not support setting the MAC address
Jun 04 19:12:43.582755 osdx kernel: cell0: (slave _wwan0_1): making interface the new active one
Jun 04 19:12:43.586368 osdx kernel: cell0: (slave _wwan0_1): Enslaving as an active interface with an up link
Jun 04 19:12:43.602395 osdx kernel: 8021q: adding VLAN 0 to HW filter on device cell0
Jun 04 19:12:43.605061 osdx INFO[533226]: 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 U2FsdGVkX1/O6vGZ6tmWb88JXGv4DXOxnG0ajM4U6mg=
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                    = 2.143.79.140
IPv4 mask                       = 255.255.255.248
IPv4 gateway                    = 2.143.79.141
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=25.1 ms

--- 8.8.8.8 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 25.075/25.075/25.075/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
Jun 04 14:42:41.940370 osdx systemd-journald[2412]: Runtime Journal (/run/log/journal/19b560f3f8834e5faff6bed1914744a0) is 8.2M, max 69.4M, 61.2M free.
Jun 04 14:42:41.941916 osdx systemd-journald[2412]: Received client request to rotate journal, rotating.
Jun 04 14:42:41.941971 osdx systemd-journald[2412]: Vacuuming done, freed 0B of archived journals from /run/log/journal/19b560f3f8834e5faff6bed1914744a0.
Jun 04 14:42:42.010969 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal clear'.
Jun 04 14:42:45.718487 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Warning: Previous packet pending - ID: 16421, Sequence: 0
Jun 04 14:42:45.718494 osdx wwan-accessibility-control[540709]: [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
Jun 04 14:43:24.264194 osdx systemd-journald[2412]: Runtime Journal (/run/log/journal/19b560f3f8834e5faff6bed1914744a0) is 8.0M, max 69.4M, 61.4M free.
Jun 04 14:43:24.265821 osdx systemd-journald[2412]: Received client request to rotate journal, rotating.
Jun 04 14:43:24.265895 osdx systemd-journald[2412]: Vacuuming done, freed 0B of archived journals from /run/log/journal/19b560f3f8834e5faff6bed1914744a0.
Jun 04 14:43:24.322972 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal clear'.
Jun 04 14:43:24.448526 osdx OSDxCLI[531858]: User 'admin' entered the configuration menu.
Jun 04 14:43:24.530093 osdx OSDxCLI[531858]: User 'admin' added a new cfg line: 'set interfaces cellular cell0 traffic control in PLOSS'.
Jun 04 14:43:24.632731 osdx OSDxCLI[531858]: User 'admin' added a new cfg line: 'set traffic control PLOSS type network-emulator packet-loss 100'.
Jun 04 14:43:24.745456 osdx OSDxCLI[531858]: User 'admin' added a new cfg line: 'show changes'.
Jun 04 14:43:24.865590 osdx ubnt-cfgd[540807]: inactive
Jun 04 14:43:24.910312 osdx INFO[540817]: FRR daemons did not change
Jun 04 14:43:24.946872 osdx (udev-worker)[540837]: ifb.cell0: Could not set Alias=, MACAddress=/MACAddressPolicy=, TransmitQueues=, ReceiveQueues=, TransmitQueueLength=, MTUBytes=, GenericSegmentOffloadMaxBytes= or GenericSegmentOffloadMaxSegments=, ignoring: Operation not supported
Jun 04 14:43:24.946898 osdx (udev-worker)[540837]: Network interface NamePolicy= disabled on kernel command line.
Jun 04 14:43:24.963947 osdx cfgd[2026]: [531858]Completed change to active configuration
Jun 04 14:43:24.967123 osdx OSDxCLI[531858]: User 'admin' committed the configuration.
Jun 04 14:43:24.999449 osdx OSDxCLI[531858]: User 'admin' left the configuration menu.
Jun 04 14:43:26.135226 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'ping 8.8.8.8 count 1 size 56 timeout 1'.
Jun 04 14:43:35.719173 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Warning: Previous packet pending - ID: 16421, Sequence: 5
Jun 04 14:43:35.719182 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 1 - interval reduced to 10 seconds
Jun 04 14:43:45.719406 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Warning: Previous packet pending - ID: 16421, Sequence: 6
Jun 04 14:43:45.719412 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 2 - interval reduced to 5 seconds
Jun 04 14:43:46.446269 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 14:43:47.774239 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 14:43:49.098285 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 14:43:50.454265 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 14:43:50.719535 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Warning: Previous packet pending - ID: 16421, Sequence: 7
Jun 04 14:43:50.719542 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 3 - interval reduced to 5 seconds
Jun 04 14:43:51.822276 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 14:43:53.222272 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 14:43:54.718296 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 14:43:55.719676 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Warning: Previous packet pending - ID: 16421, Sequence: 8
Jun 04 14:43:55.719683 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 4 - interval reduced to 5 seconds
Jun 04 14:43:55.723328 osdx WARNING[540924]: [wwan0/1] Requesting reconnection...
Jun 04 14:43:55.726084 osdx wwan-cli-socket[540926]: [Device/wwan0] Info: wwan-cli-socket reconnect 60000 wwan0
Jun 04 14:43:55.726319 osdx wwan-module[3808]: [Device/wwan0] Info: Reconnecting device...
Jun 04 14:43:55.726326 osdx wwan-module[3808]: [Device/wwan0] Warning: [PDP#1] Requesting reconnection...
Jun 04 14:43:55.726355 osdx wwan-module[3808]: [Device/wwan0] Info: WDS[0]: Stopping network connection...
Jun 04 14:43:55.809261 osdx wwan-module[3808]: [Device/wwan0] Info: WDS[0]: Network connection was stopped!
Jun 04 14:43:55.813819 osdx kernel: net _wwan0: link_state 0x1 -> 0x0
Jun 04 14:43:55.814881 osdx wwan-module[3808]: [Device/wwan0] Info: Checking registration state...
Jun 04 14:43:55.820014 osdx wwan-accessibility-control[540709]: [Core/wwan0/1] Info: Execution stopped
Jun 04 14:43:55.820085 osdx systemd[1]: Stopping wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control...
Jun 04 14:43:55.820738 osdx systemd[1]: wwan-accessibility-control@wwan0pdp1.service: Deactivated successfully.
Jun 04 14:43:55.820900 osdx systemd[1]: Stopped wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control.
Jun 04 14:43:55.824721 osdx INFO[540935]: Stop DHCP client for cell0
Jun 04 14:43:55.829022 osdx dhclient[540942]: Killed old client process
Jun 04 14:43:55.873224 osdx wwan-module[3808]: [Device/wwan0] Info: Device registered and PS attached successfully
Jun 04 14:43:55.873232 osdx wwan-module[3808]: [Device/wwan0] Info: [PDP#1] Establishing network connection...
Jun 04 14:43:55.961976 osdx dhclient[540942]: DHCPRELEASE of 2.143.79.140 on cell0 to 2.143.79.141 port 67
Jun 04 14:43:56.066186 osdx wwan-module[3808]: [Device/wwan0] Info: [PDP#1] Network connection was successfully started: PDH=[3799781072]
Jun 04 14:43:56.113839 osdx kernel: cell0: (slave _wwan0_1): Releasing backup interface
Jun 04 14:43:56.129812 osdx kernel: net _wwan0: link_state 0x0 -> 0x1
Jun 04 14:43:56.149811 osdx kernel: cell0: (slave _wwan0_1): The slave device specified does not support setting the MAC address
Jun 04 14:43:56.149886 osdx kernel: cell0: (slave _wwan0_1): making interface the new active one
Jun 04 14:43:56.153816 osdx kernel: cell0: (slave _wwan0_1): Enslaving as an active interface with an up link
Jun 04 14:43:56.155528 osdx INFO[540996]: Start DHCP client for cell0
Jun 04 14:43:56.157823 osdx kernel: 8021q: adding VLAN 0 to HW filter on device cell0
Jun 04 14:43:56.214299 osdx OSDxCLI[531858]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 14:43:56.338044 osdx dhclient[541009]: DHCPDISCOVER on cell0 to 255.255.255.255 port 67 interval 4
Jun 04 14:43:56.340630 osdx dhclient[541009]: DHCPOFFER of 2.143.60.249 from 2.143.60.250
Jun 04 14:43:56.340658 osdx dhclient[541009]: DHCPREQUEST for 2.143.60.249 on cell0 to 255.255.255.255 port 67
Jun 04 14:43:56.342597 osdx dhclient[541009]: DHCPACK of 2.143.60.249 from 2.143.60.250
Jun 04 14:43:56.370268 osdx systemd[1]: Started wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control.
Jun 04 14:43:56.374331 osdx wwan-accessibility-control[541021]: [Core/wwan0/1] Info: Starting '/osdx/sbin/wwan-accessibility-control'...
Jun 04 14:43:56.452845 osdx dhclient[541009]: bound to 2.143.60.249 -- renewal in 3237 seconds.

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 U2FsdGVkX18BH0SXI3FJFm8WSyU0/egsr6/vY1EIHbU=
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.106.177
IPv4 mask                       = 255.255.255.252
IPv4 gateway                    = 88.31.106.178
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=434 ms

--- 8.8.8.8 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 433.959/433.959/433.959/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
Jun 04 12:13:26.567856 osdx systemd-journald[4212]: Runtime Journal (/run/log/journal/5d1a5a0de0704bcb98266ed78dfb5338) is 8.0M, max 80.3M, 72.3M free.
Jun 04 12:13:26.572707 osdx systemd-journald[4212]: Received client request to rotate journal, rotating.
Jun 04 12:13:26.572815 osdx systemd-journald[4212]: Vacuuming done, freed 0B of archived journals from /run/log/journal/5d1a5a0de0704bcb98266ed78dfb5338.
Jun 04 12:13:26.645459 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'system journal clear'.
Jun 04 12:13:30.106172 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Warning: Previous packet pending - ID: 2231, Sequence: 0
Jun 04 12:13:30.106190 osdx wwan-accessibility-control[67767]: [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
Jun 04 12:14:08.990458 osdx systemd-journald[4212]: Runtime Journal (/run/log/journal/5d1a5a0de0704bcb98266ed78dfb5338) is 8.0M, max 80.3M, 72.3M free.
Jun 04 12:14:08.995684 osdx systemd-journald[4212]: Received client request to rotate journal, rotating.
Jun 04 12:14:08.995799 osdx systemd-journald[4212]: Vacuuming done, freed 0B of archived journals from /run/log/journal/5d1a5a0de0704bcb98266ed78dfb5338.
Jun 04 12:14:09.069463 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'system journal clear'.
Jun 04 12:14:09.224134 osdx OSDxCLI[66905]: User 'admin' entered the configuration menu.
Jun 04 12:14:09.343118 osdx OSDxCLI[66905]: User 'admin' added a new cfg line: 'set interfaces cellular cell0 traffic control in PLOSS'.
Jun 04 12:14:09.478972 osdx OSDxCLI[66905]: User 'admin' added a new cfg line: 'set traffic control PLOSS type network-emulator packet-loss 100'.
Jun 04 12:14:09.600469 osdx OSDxCLI[66905]: User 'admin' added a new cfg line: 'show changes'.
Jun 04 12:14:09.748541 osdx ubnt-cfgd[67863]: inactive
Jun 04 12:14:09.867181 osdx INFO[67873]: FRR daemons did not change
Jun 04 12:14:09.959062 osdx (udev-worker)[287]: ifb.cell0: Could not set Alias=, MACAddress=/MACAddressPolicy=, TransmitQueues=, ReceiveQueues=, TransmitQueueLength=, MTUBytes=, GenericSegmentOffloadMaxBytes= or GenericSegmentOffloadMaxSegments=, ignoring: Operation not supported
Jun 04 12:14:10.003055 osdx kernel: Mirror/redirect action on
Jun 04 12:14:10.011081 osdx kernel: netem: version 1.3
Jun 04 12:14:10.022394 osdx cfgd[3877]: [66905]Completed change to active configuration
Jun 04 12:14:10.042424 osdx systemd[1]: osdx-ledsd.service: Sent signal SIGUSR2 to main process 4683 (osdx-ledsd) on client request.
Jun 04 12:14:10.042449 osdx osdx-ledsd[4683]: Config changed, checking config paths
Jun 04 12:14:10.045083 osdx OSDxCLI[66905]: User 'admin' committed the configuration.
Jun 04 12:14:10.091139 osdx OSDxCLI[66905]: User 'admin' left the configuration menu.
Jun 04 12:14:11.286047 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'ping 8.8.8.8 count 1 size 56 timeout 1'.
Jun 04 12:14:20.106940 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Warning: Previous packet pending - ID: 2231, Sequence: 5
Jun 04 12:14:20.106956 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 1 - interval reduced to 10 seconds
Jun 04 12:14:30.107149 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Warning: Previous packet pending - ID: 2231, Sequence: 6
Jun 04 12:14:30.107164 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 2 - interval reduced to 5 seconds
Jun 04 12:14:31.651978 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 12:14:33.035978 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 12:14:34.431966 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 12:14:35.107287 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Warning: Previous packet pending - ID: 2231, Sequence: 7
Jun 04 12:14:35.107302 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 3 - interval reduced to 5 seconds
Jun 04 12:14:35.859975 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 12:14:37.299968 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 12:14:38.747954 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 12:14:40.107471 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Warning: Previous packet pending - ID: 2231, Sequence: 8
Jun 04 12:14:40.107486 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Warning: Connection in failure - consecutive failures: 4 - interval reduced to 5 seconds
Jun 04 12:14:40.117828 osdx WARNING[67984]: [wwan0/1] Requesting reconnection...
Jun 04 12:14:40.124465 osdx wwan-cli-socket[67986]: [Device/wwan0] Info: wwan-cli-socket reconnect 60000 wwan0
Jun 04 12:14:40.124859 osdx wwan-module[4715]: [Device/wwan0] Info: Reconnecting device...
Jun 04 12:14:40.124872 osdx wwan-module[4715]: [Device/wwan0] Warning: [PDP#1] Requesting reconnection...
Jun 04 12:14:40.124922 osdx wwan-module[4715]: [Device/wwan0] Info: WDS[0]: Stopping network connection...
Jun 04 12:14:40.212006 osdx OSDxCLI[66905]: User 'admin' executed a new command: 'system journal show | cat'.
Jun 04 12:14:40.241227 osdx wwan-module[4715]: [Device/wwan0] Info: WDS[0]: Network connection was stopped!
Jun 04 12:14:40.247059 osdx kernel: net _wwan0: link_state 0x1 -> 0x0
Jun 04 12:14:40.249261 osdx wwan-module[4715]: [Device/wwan0] Info: Checking registration state...
Jun 04 12:14:40.270017 osdx wwan-accessibility-control[67767]: [Core/wwan0/1] Info: Execution stopped
Jun 04 12:14:40.270116 osdx systemd[1]: Stopping wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control...
Jun 04 12:14:40.272045 osdx systemd[1]: wwan-accessibility-control@wwan0pdp1.service: Deactivated successfully.
Jun 04 12:14:40.272420 osdx systemd[1]: Stopped wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control.
Jun 04 12:14:40.283865 osdx INFO[67990]: Stop DHCP client for cell0
Jun 04 12:14:40.290883 osdx dhclient[67997]: Killed old client process
Jun 04 12:14:40.305019 osdx wwan-module[4715]: [Device/wwan0] Info: Device registered and PS attached successfully
Jun 04 12:14:40.305032 osdx wwan-module[4715]: [Device/wwan0] Info: [PDP#1] Establishing network connection...
Jun 04 12:14:40.407242 osdx dhclient[67997]: DHCPRELEASE of 88.31.106.177 on cell0 to 88.31.106.178 port 67
Jun 04 12:14:40.569343 osdx wwan-module[4715]: [Device/wwan0] Info: [PDP#1] Network connection was successfully started: PDH=[3799745488]
Jun 04 12:14:40.627060 osdx kernel: net _wwan0: link_state 0x0 -> 0x1
Jun 04 12:14:40.646203 osdx staticd[1245]: [S4MGP-4WQTA] route_notify_owner: Route 0.0.0.0/0 failed to install for table: 254
Jun 04 12:14:40.743052 osdx kernel: cell0: (slave _wwan0_1): Releasing backup interface
Jun 04 12:14:40.915259 osdx kernel: cell0: (slave _wwan0_1): The slave device specified does not support setting the MAC address
Jun 04 12:14:40.915371 osdx kernel: cell0: (slave _wwan0_1): making interface the new active one
Jun 04 12:14:40.915411 osdx kernel: cell0: (slave _wwan0_1): Enslaving as an active interface with an up link
Jun 04 12:14:40.927050 osdx kernel: 8021q: adding VLAN 0 to HW filter on device cell0
Jun 04 12:14:40.928699 osdx INFO[68047]: Start DHCP client for cell0
Jun 04 12:14:41.263361 osdx dhclient[68064]: DHCPDISCOVER on cell0 to 255.255.255.255 port 67 interval 8
Jun 04 12:14:41.266726 osdx dhclient[68064]: DHCPOFFER of 176.82.188.112 from 176.82.188.113
Jun 04 12:14:41.266771 osdx dhclient[68064]: DHCPREQUEST for 176.82.188.112 on cell0 to 255.255.255.255 port 67
Jun 04 12:14:41.268729 osdx dhclient[68064]: DHCPACK of 176.82.188.112 from 176.82.188.113
Jun 04 12:14:41.325587 osdx systemd[1]: Started wwan-accessibility-control@wwan0pdp1.service - WWAN Accessibility Control.
Jun 04 12:14:41.339317 osdx wwan-accessibility-control[68077]: [Core/wwan0/1] Info: Starting '/osdx/sbin/wwan-accessibility-control'...