diff --git a/README.md b/README.md index 438986be1699195bcf6cbe3eb56382008a9d126e..f98aa31ebb7f5637fe80f97b9eafe5a460e15079 100644 --- a/README.md +++ b/README.md @@ -10,72 +10,128 @@ distributing wireless credentials, vlan configuration and more. ## Overview -This READMe will show how to properly setup the mapcontroller configuration file +This README will show how to properly setup the mapcontroller configuration file and trigger mapcontroller functionality. ## UCI Configuration -A default configuration file may look as such: +A default configuration file which will propagate one fronthaul and one backhaul +interface for the 5GHz and 2.4GHz bands respectively may look as such: ``` config controller 'controller' option enabled '1' option registrar '5 2' option debug '0' - option al_bridge 'br-lan' + option enable_sta_steer '0' + option enable_bsta_steer '0' + option primary_vid '1' + option primary_pcp '0' -config vlan 'lan' - option network 'lan' - option id '1' +config interface 'lan' + option proto 'dhcp' -config fh-credentials +config ap option band '5' - option ssid 'MAP-44D4376AF600-5GHz' - option encryption 'psk2' - option key '5YXJOLWWQPGL2H' - option vlan '1' + option ssid 'MAP-EC6C9A52B027-5GHz' + option encryption 'sae-mixed' + option vid '1' + option type 'fronthaul' + option network 'lan' + option key '7NTx-APvX-pba7-tvd7' -config fh-credentials +config ap option band '2' - option ssid 'MAP-44D4376AF600-2.4GHz' - option encryption 'psk2' - option key '5YXJOLWWQPGL2H' - option vlan '1' + option ssid 'MAP-EC6C9A52B027-2.4GHz' + option encryption 'sae-mixed' + option vid '1' + option type 'fronthaul' + option network 'lan' + option key '7NTx-APvX-pba7-tvd7' -config bk-credentials +config ap option band '5' - option ssid 'MAP-44D4376AF600-BH-5GHz' - option encryption 'psk2' - option multi_ap '1' - option vlan '1' - option key '5f9f0ce167b43ec3b71915db7561932cb5d1f618ed8a83afd4f6d5db6f08cca8' + option ssid 'MAP-EC6C9A52B027-BH-5GHz' + option encryption 'sae' + option type 'backhaul' + option vid '1' + option network 'lan' + option key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' -config bk-credentials +config ap option band '2' - option ssid 'MAP-44D4376AF600-BH-2.4GHz' - option encryption 'psk2' - option multi_ap '1' - option disallow_bsta '0' - option vlan '1' - option key '5f9f0ce167b43ec3b71915db7561932cb5d1f618ed8a83afd4f6d5db6f08cca8' + option ssid 'MAP-EC6C9A52B027-BH-2.4GHz' + option encryption 'sae' + option type 'backhaul' + list disallow_bsta '0' + option vid '1' + option network 'lan' + option key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' + +config policy 'policy' + list steer_exclude '00:11:22:33:44:55' + list steer_exclude_btm '00:aa:bb:cc:dd:ee' + option steer_policy '2' + option util_threshold '200' + option rcpi_threshold '30' + option report_scan '0' + option report_sta_assocfails '1' + option report_sta_assocfails_rate '2' + option report_metric_periodic '0' + option report_rcpi_threshold '0' + option report_util_threshold '0' + option rcpi_hysteresis_margin '0' + option include_sta_stats '0' + option include_sta_metric '0' + option disallow_bsta_p1 '0' + option disallow_bsta_p2 '0' ``` The important part of this configuration file is to properly setup the wireless credentials. +### Credentials + +The section `ap` holds the wireless credentials that will be passed to agents in +the network, which will setup the local wireless configuration accordingly. + + ### Fronthaul Credentials -The section`fh-credentials` refers to fronthaul credentials (`multi_ap '2'` -by default). The two fh-credentials sections in the provided example above will -in practice be setup as follows in the wireless configuration by map-agent: +Fronthaul AP credentials are identified by `type 'fronthaul'`. In the wireless +uci configuration, these are mapped to the option `multi_ap '2'`, which will +be the APs that regular clients connect to. + +As such, the following mapagent sections will be correspodning to the respective +wireless sections: + +``` +config ap + option band '5' + option ssid 'MAP-EC6C9A52B027-5GHz' + option encryption 'sae-mixed' + option vid '1' + option type 'fronthaul' + option network 'lan' + option key '7NTx-APvX-pba7-tvd7' + +config ap + option band '2' + option ssid 'MAP-EC6C9A52B027-2.4GHz' + option encryption 'sae-mixed' + option vid '1' + option type 'fronthaul' + option network 'lan' + option key '7NTx-APvX-pba7-tvd7' +``` ``` config wifi-iface 'wl1_ap' option ifname 'wl1' option network 'lan' - option ssid 'MAP-44D4376AF600-2.4GHz' - option key '5YXJOLWWQPGL2H' - option encryption 'psk2+aes' + option ssid 'MAP-EC6C9A52B027-5GHz' + option key '7NTx-APvX-pba7-tvd7' + option encryption 'sae-mixed+aes' option mode 'ap' option device 'wl1' option multi_ap '2' @@ -84,15 +140,15 @@ config wifi-iface 'wl1_ap' option uuid 'cfa7df87-06a3-5daf-911f-44d4376af600' option wps '1' option wps_pushbutton '1' - option multi_ap_backhaul_ssid 'MAP-44D4376AF600-BH-2.4GHz' - option multi_ap_backhaul_key '53c2b08edd53b55d6628c340ce12d0f185ba467d0c928a7fb241becec7d6ee06' + option multi_ap_backhaul_ssid 'MAP-EC6C9A52B027-BH-5GHz' + option multi_ap_backhaul_key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' config wifi-iface 'wl0_ap' option ifname 'wl0' option network 'lan' - option ssid 'MAP-44D4376AF600-5GHz' - option key '5YXJOLWWQPGL2H' - option encryption 'psk2+aes' + option ssid 'MAP-EC6C9A52B027-2.4GHz' + option key '7NTx-APvX-pba7-tvd7' + option encryption 'sae-mixed+aes' option mode 'ap' option device 'wl0' option multi_ap '2' @@ -101,72 +157,94 @@ config wifi-iface 'wl0_ap' option uuid 'cfa7df87-06a3-5daf-911f-44d4376af600' option wps '1' option wps_pushbutton '1' - option multi_ap_backhaul_ssid 'MAP-44D4376AF600-BH-5GHz' - option multi_ap_backhaul_key '53c2b08edd53b55d6628c340ce12d0f185ba467d0c928a7fb241becec7d6ee06' + option multi_ap_backhaul_ssid 'MAP-EC6C9A52B027-BH-2.4GHz' + option multi_ap_backhaul_key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' ``` ### Backhaul Credentials -The section `bk-credentials` refers to backhaul credentials (`multi_ap '1'` by -default). The two bk-credentials sections in the provided example will in -practice be setup as follows in the wireless configuration by map-agent: +Backhaul AP credentials are identified by `type 'backhaul'`. In the wireless +uci configuration, these are mapped to the option `multi_ap '1'`, which will +be the APs that backhaul STA clients will connect to, in a Multi-AP environment. + +The following mapagent sections will be correspodning to the respective +wireless sections: + +``` +config ap + option band '5' + option ssid 'MAP-EC6C9A52B027-BH-5GHz' + option encryption 'sae' + option type 'backhaul' + option vid '1' + option network 'lan' + option key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' + +config ap + option band '2' + option ssid 'MAP-EC6C9A52B027-BH-2.4GHz' + option encryption 'sae' + option type 'backhaul' + list disallow_bsta '0' + option vid '1' + option network 'lan' + option key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' +``` ``` config wifi-iface 'wl1_1_ap' option ifname 'wl1.1' option network 'lan' - option ssid 'MAP-44D4376AF600-BH-2.4GHz' - option key '53c2b08edd53b55d6628c340ce12d0f185ba467d0c928a7fb241becec7d6ee06' - option encryption 'psk2+aes' + option ssid 'MAP-EC6C9A52B027-BH-5GHz' + option key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' + option encryption 'sae+aes' option mode 'ap' option device 'wl1' option multi_ap '1' option ieee80211k '1' option ieee80211v '1' option uuid 'cfa7df87-06a3-5daf-911f-44d4376af600' - option hidden '1' config wifi-iface 'wl0_1_ap' option ifname 'wl0.1' option network 'lan' - option ssid 'MAP-44D4376AF600-BH-5GHz' - option key '53c2b08edd53b55d6628c340ce12d0f185ba467d0c928a7fb241becec7d6ee06' - option encryption 'psk2+aes' + option ssid 'MAP-EC6C9A52B027-BH-2.4GHz' + option key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' + option encryption 'sae+aes' option mode 'ap' option device 'wl0' option multi_ap '1' option ieee80211k '1' option ieee80211v '1' option uuid 'cfa7df87-06a3-5daf-911f-44d4376af600' - option hidden '1' ``` ### Combined Front/Back -If combined fronthaul and backhaul interfaces are to be used, specify a -`config fh-credentials` section, and add an option `multi_ap '3'` to that -section: +If combined fronthaul and backhaul interfaces are to be used, a `config ap` +section with the option `type 'combined'` shall be provided: ``` -config fh-credentials +config ap option band '5' - option ssid 'MAP-44D4376AF600-COMBINED-5GHz' - option encryption 'psk2' - option key '5YXJOLWWQPGL2H' - option vlan '1' - option multi_ap '3' + option ssid 'MAP-EC6C9A52B027-COMBINED-5GHz' + option encryption 'sae' + option type 'combined' + option vid '1' + option network 'lan' + option key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' ``` -In turn map-agent will create the interface with multi_ap to set to 3, meaning -combined fronthaul/backhaul interface. +In turn map-agent will create the interface with the option `multi_ap '3'`, +meaning combined fronthaul/backhaul interface. ``` config wifi-iface 'wl0_ap' option ifname 'wl0' option network 'lan' - option ssid 'MAP-44D4376AF600-COMBINED-5GHz' - option key '5YXJOLWWQPGL2H' - option encryption 'psk2+aes' + option ssid 'MAP-EC6C9A52B027-COMBINED-5GHz' + option key '0138a5f1b2bea4941be88001a55954ca228629eeaf51d66656893791a60bfed' + option encryption 'sae+aes' option mode 'ap' option device 'wl0' option multi_ap '3' diff --git a/docs/api/mapcontroller.md b/docs/api/mapcontroller.md index 1ede19162da7440f6f37d7e7463f3c75ebef935a..80d9a6ebfccc4a6edc586de0e91859359f43a0e1 100644 --- a/docs/api/mapcontroller.md +++ b/docs/api/mapcontroller.md @@ -1 +1 @@ -<tbody><tr><td colspan="2"><div style="font-weight: bold">mapagent</div><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">section</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td><td><div style="font-weight: bold; font-size: 14px">multi</div></td><td><div style="font-weight: bold; font-size: 14px">options</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">mapcontroller</div></td><td class="td_row_even"><div class="td_row_even">Mapcontroller daemon Configuration</div></td><td class="td_row_even"><div class="td_row_even">false</div></td><td class="td_row_even"><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">name</div></td><td><div style="font-weight: bold; font-size: 14px">type</div></td><td><div style="font-weight: bold; font-size: 14px">required</div></td><td><div style="font-weight: bold; font-size: 14px">default</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">enabled</div></td><td class="td_row_even"><div class="td_row_even">boolean</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">true</div></td><td class="td_row_even"><div class="td_row_even">Enables mapcontroller daemon</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">debug</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">Mapcontroller debug level</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">registrar</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">The bands on which mapcontroller acts as registrar</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">al_bridge</div></td><td class="td_row_odd"><div class="td_row_odd">string</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">br-lan</div></td><td class="td_row_odd"><div class="td_row_odd">To be deprecated. No longer used</div></td></tr></tbody></table></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">vlan</div></td><td class="td_row_odd"><div class="td_row_odd">Vlan configuration of a bridge</div></td><td class="td_row_odd"><div class="td_row_odd">true</div></td><td class="td_row_odd"><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">name</div></td><td><div style="font-weight: bold; font-size: 14px">type</div></td><td><div style="font-weight: bold; font-size: 14px">required</div></td><td><div style="font-weight: bold; font-size: 14px">default</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">network</div></td><td class="td_row_even"><div class="td_row_even">string</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">lan</div></td><td class="td_row_even"><div class="td_row_even">The network name</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">id</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd"></div></td><td class="td_row_odd"><div class="td_row_odd">The vlan ID</div></td></tr></tbody></table></td></tr><tr><td class="td_row_even"><div class="td_row_even">fh-credentials</div></td><td class="td_row_even"><div class="td_row_even">Credentials to be configured as a fronthual interface</div></td><td class="td_row_even"><div class="td_row_even">true</div></td><td class="td_row_even"><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">name</div></td><td><div style="font-weight: bold; font-size: 14px">type</div></td><td><div style="font-weight: bold; font-size: 14px">required</div></td><td><div style="font-weight: bold; font-size: 14px">default</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">band</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">yes</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">Band for which the credentials applies</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">ssid</div></td><td class="td_row_odd"><div class="td_row_odd">string</div></td><td class="td_row_odd"><div class="td_row_odd">yes</div></td><td class="td_row_odd"><div class="td_row_odd"></div></td><td class="td_row_odd"><div class="td_row_odd">SSID to be transferred</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">encryption</div></td><td class="td_row_even"><div class="td_row_even">string</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">psk2+aes</div></td><td class="td_row_even"><div class="td_row_even">Encryption for the credentials</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">key</div></td><td class="td_row_odd"><div class="td_row_odd">string</div></td><td class="td_row_odd"><div class="td_row_odd">yes</div></td><td class="td_row_odd"><div class="td_row_odd"></div></td><td class="td_row_odd"><div class="td_row_odd">Password for the SSID</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">vlan</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">yes</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">Vlan section (mapped against ID)</div></td></tr></tbody></table></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">bk-credentials</div></td><td class="td_row_odd"><div class="td_row_odd">Credentials to be configured as a backhaul interface</div></td><td class="td_row_odd"><div class="td_row_odd">true</div></td><td class="td_row_odd"><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">name</div></td><td><div style="font-weight: bold; font-size: 14px">type</div></td><td><div style="font-weight: bold; font-size: 14px">required</div></td><td><div style="font-weight: bold; font-size: 14px">default</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">band</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">yes</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">Band for which the credentials applies</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">ssid</div></td><td class="td_row_odd"><div class="td_row_odd">string</div></td><td class="td_row_odd"><div class="td_row_odd">yes</div></td><td class="td_row_odd"><div class="td_row_odd"></div></td><td class="td_row_odd"><div class="td_row_odd">SSID to be transferred</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">encryption</div></td><td class="td_row_even"><div class="td_row_even">string</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">psk2+aes</div></td><td class="td_row_even"><div class="td_row_even">Encryption for the credentials</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">key</div></td><td class="td_row_odd"><div class="td_row_odd">string</div></td><td class="td_row_odd"><div class="td_row_odd">yes</div></td><td class="td_row_odd"><div class="td_row_odd"></div></td><td class="td_row_odd"><div class="td_row_odd">Password for the SSID</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">vlan</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">yes</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">Vlan section (mapped against ID)</div></td></tr></tbody></table></td></tr><tr><td class="td_row_even"><div class="td_row_even">agent-policy</div></td><td class="td_row_even"><div class="td_row_even">An agent and its configuration policy as provided by mapcontroller</div></td><td class="td_row_even"><div class="td_row_even">true</div></td><td class="td_row_even"><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">name</div></td><td><div style="font-weight: bold; font-size: 14px">type</div></td><td><div style="font-weight: bold; font-size: 14px">required</div></td><td><div style="font-weight: bold; font-size: 14px">default</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">agent_id</div></td><td class="td_row_even"><div class="td_row_even">string</div></td><td class="td_row_even"><div class="td_row_even">yes</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">AL-ID of this agent</div></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody> \ No newline at end of file +<tbody><tr><td colspan="2"><div style="font-weight: bold">mapagent</div><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">section</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td><td><div style="font-weight: bold; font-size: 14px">multi</div></td><td><div style="font-weight: bold; font-size: 14px">options</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">mapcontroller</div></td><td class="td_row_even"><div class="td_row_even">Mapcontroller daemon Configuration</div></td><td class="td_row_even"><div class="td_row_even">false</div></td><td class="td_row_even"><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">name</div></td><td><div style="font-weight: bold; font-size: 14px">type</div></td><td><div style="font-weight: bold; font-size: 14px">required</div></td><td><div style="font-weight: bold; font-size: 14px">default</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">enabled</div></td><td class="td_row_even"><div class="td_row_even">boolean</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">true</div></td><td class="td_row_even"><div class="td_row_even">Enables mapcontroller daemon</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">debug</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">Mapcontroller debug level</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">registrar</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">The bands on which mapcontroller acts as registrar, separated by space</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">primary_vid</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">Primary VLAN ID</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">primary_pcp</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">PCP for primary VLAN ID</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">enable_sta_steer</div></td><td class="td_row_odd"><div class="td_row_odd">boolean</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">Whether controller mandated RCPI based STA steering shall be enabled</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">enable_bsta_steer</div></td><td class="td_row_even"><div class="td_row_even">boolean</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">Whether controller mandated RCPI based backhaul STA steering shall be enabled</div></td></tr></tbody></table></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">interface</div></td><td class="td_row_odd"><div class="td_row_odd">Bridge interface configuration. MUST BE A NAMED SECTION</div></td><td class="td_row_odd"><div class="td_row_odd">true</div></td><td class="td_row_odd"><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">name</div></td><td><div style="font-weight: bold; font-size: 14px">type</div></td><td><div style="font-weight: bold; font-size: 14px">required</div></td><td><div style="font-weight: bold; font-size: 14px">default</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">proto</div></td><td class="td_row_even"><div class="td_row_even">string</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">dhcp</div></td><td class="td_row_even"><div class="td_row_even">The protocol to be used by the bridge. If bridge exists protocol will not be overwritten</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">ipaddr</div></td><td class="td_row_odd"><div class="td_row_odd">string</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">null</div></td><td class="td_row_odd"><div class="td_row_odd">IPv4 adress to be used by the bridge. If bridge exists IP address will not be overwritten</div></td></tr></tbody></table></td></tr><tr><td class="td_row_even"><div class="td_row_even">ap</div></td><td class="td_row_even"><div class="td_row_even">Wireless credentials to be configured</div></td><td class="td_row_even"><div class="td_row_even">true</div></td><td class="td_row_even"><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">name</div></td><td><div style="font-weight: bold; font-size: 14px">type</div></td><td><div style="font-weight: bold; font-size: 14px">required</div></td><td><div style="font-weight: bold; font-size: 14px">default</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">band</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">yes</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">Band for which the credentials applies</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">ssid</div></td><td class="td_row_odd"><div class="td_row_odd">string</div></td><td class="td_row_odd"><div class="td_row_odd">yes</div></td><td class="td_row_odd"><div class="td_row_odd"></div></td><td class="td_row_odd"><div class="td_row_odd">SSID to be transferred</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">encryption</div></td><td class="td_row_even"><div class="td_row_even">string</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">psk2+aes</div></td><td class="td_row_even"><div class="td_row_even">Encryption for the credentials</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">key</div></td><td class="td_row_odd"><div class="td_row_odd">string</div></td><td class="td_row_odd"><div class="td_row_odd">yes</div></td><td class="td_row_odd"><div class="td_row_odd"></div></td><td class="td_row_odd"><div class="td_row_odd">Password for the SSID</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">network</div></td><td class="td_row_even"><div class="td_row_even">string</div></td><td class="td_row_even"><div class="td_row_even">yes</div></td><td class="td_row_even"><div class="td_row_even">lan</div></td><td class="td_row_even"><div class="td_row_even">Interface section (mapped against name)</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">type</div></td><td class="td_row_odd"><div class="td_row_odd">string</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">fronthaul</div></td><td class="td_row_odd"><div class="td_row_odd">Interface type, may be set to fronthaul, backhaul or combined</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">vid</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">VLAN ID of the configured interface</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">disallow_bsta</div></td><td class="td_row_odd"><div class="td_row_odd">list</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">List of profiles to disallow connection over the interface</div></td></tr></tbody></table></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">policy</div></td><td class="td_row_odd"><div class="td_row_odd">A policy as provided by mapcontroller to a mapagent</div></td><td class="td_row_odd"><div class="td_row_odd">true</div></td><td class="td_row_odd"><table style="width:100%"><tbody><tr><td><div style="font-weight: bold; font-size: 14px">name</div></td><td><div style="font-weight: bold; font-size: 14px">type</div></td><td><div style="font-weight: bold; font-size: 14px">required</div></td><td><div style="font-weight: bold; font-size: 14px">default</div></td><td><div style="font-weight: bold; font-size: 14px">description</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">agent_id</div></td><td class="td_row_even"><div class="td_row_even">list</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">List of AL-IDs to which the policy should be provided. If excluded, the policy applies to all agents not listed in another section</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">steer_exclude</div></td><td class="td_row_odd"><div class="td_row_odd">list</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd"></div></td><td class="td_row_odd"><div class="td_row_odd">List of clients to be excluded from steering. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">steer_exclude_btm</div></td><td class="td_row_even"><div class="td_row_even">list</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even"></div></td><td class="td_row_even"><div class="td_row_even">List of clients to be excluded from BTM steering. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">steer_policy</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">0 = agent initiated steering disallowed, 1 = agent initiated RCPI steering mandated, 2 = agent initiated RCPI based steering allowed</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">util_threshold</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">Channel utilization threshold. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">rcpi_threshold</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">Threshold at which agent will perform steering</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">report_scan</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">Whether independent channel shall be reported. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">report_sta_assocfails</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">Whether sta association fails shall be reported. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">report_sta_assocfails_rate</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">Maximum frequency at which sta association fails shall be reported. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">report_metric_periodic</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">The interval at which AP Metrics shall be reported. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">report_rcpi_threshold</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">Threshold at which agent will report unsolicated STA associated client statistics</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">report_util_threshold</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">Threshold at which utilization will be reported. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">rcpi_hysteresis_margin</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">Threshold at which hysteresis will be reported. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">include_sta_stats</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">Whether to include STA traffic stats TLV with the AP metrics response. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">include_sta_metric</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">Whether to include associated STA link metrics TLV in the AP metrics response. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_odd"><div class="td_row_odd">disallow_bsta_p1</div></td><td class="td_row_odd"><div class="td_row_odd">integer</div></td><td class="td_row_odd"><div class="td_row_odd">no</div></td><td class="td_row_odd"><div class="td_row_odd">0</div></td><td class="td_row_odd"><div class="td_row_odd">Whether to disallow profile 1 bsta connections. NOT YET IMPLEMENTED</div></td></tr><tr><td class="td_row_even"><div class="td_row_even">disallow_bsta_p2</div></td><td class="td_row_even"><div class="td_row_even">integer</div></td><td class="td_row_even"><div class="td_row_even">no</div></td><td class="td_row_even"><div class="td_row_even">0</div></td><td class="td_row_even"><div class="td_row_even">Whether to disallow profile 2 bsta connections. NOT YET IMPLEMENTED</div></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody> \ No newline at end of file diff --git a/schemas/uci/mapcontroller.json b/schemas/uci/mapcontroller.json index 976c1321dc9015097743146ba32e80b8bdf656c2..25e7fa933d8f4e7bf0743ad3da559464a424fbae 100644 --- a/schemas/uci/mapcontroller.json +++ b/schemas/uci/mapcontroller.json @@ -24,41 +24,62 @@ "type": "integer", "required": "no", "default": "", - "description": "The bands on which mapcontroller acts as registrar" + "description": "The bands on which mapcontroller acts as registrar, separated by space" }, { - "name": "al_bridge", - "type": "string", + "name": "primary_vid", + "type": "integer", + "required": "no", + "default": "0", + "description": "Primary VLAN ID" + }, + { + "name": "primary_pcp", + "type": "integer", "required": "no", - "default": "br-lan", - "description": "To be deprecated. No longer used" + "default": "0", + "description": "PCP for primary VLAN ID" + }, + { + "name": "enable_sta_steer", + "type": "boolean", + "required": "no", + "default": "0", + "description": "Whether controller mandated RCPI based STA steering shall be enabled" + }, + { + "name": "enable_bsta_steer", + "type": "boolean", + "required": "no", + "default": "0", + "description": "Whether controller mandated RCPI based backhaul STA steering shall be enabled" } ] }, { - "section": "vlan", - "description": "Vlan configuration of a bridge", + "section": "interface", + "description": "Bridge interface configuration. MUST BE A NAMED SECTION", "multi": true, "options": [ { - "name":"network", + "name":"proto", "type":"string", "required":"no", - "default": "lan", - "description": "The network name" + "default": "dhcp", + "description": "The protocol to be used by the bridge. If bridge exists protocol will not be overwritten" }, { - "name":"id", - "type":"integer", + "name":"ipaddr", + "type":"string", "required":"no", - "default": "", - "description": "The vlan ID" + "default": null, + "description": "IPv4 adress to be used by the bridge. If bridge exists IP address will not be overwritten" } ] }, { - "section": "fh-credentials", - "description": "Credentials to be configured as a fronthual interface", + "section": "ap", + "description": "Wireless credentials to be configured", "multi": true, "options":[ { @@ -90,67 +111,158 @@ "description": "Password for the SSID" }, { - "name": "vlan", - "type": "integer", + "name": "network", + "type": "string", "required": "yes", - "default": "", - "description": "Vlan section (mapped against ID)" + "default": "lan", + "description": "Interface section (mapped against name)" + }, + { + "name": "type", + "type": "string", + "required": "no", + "default": "fronthaul", + "description": "Interface type, may be set to fronthaul, backhaul or combined" + }, + { + "name": "vid", + "type": "integer", + "required": "no", + "default": "0", + "description": "VLAN ID of the configured interface" + }, + { + "name": "disallow_bsta", + "type": "list", + "required": "no", + "default": "0", + "description": "List of profiles to disallow connection over the interface" } ] }, { - "section": "bk-credentials", - "description": "Credentials to be configured as a backhaul interface", + "section": "policy", + "description": "A policy as provided by mapcontroller to a mapagent", "multi": true, "options":[ { - "name": "band", - "type": "integer", - "required": "yes", + "name": "agent_id", + "type": "list", + "required": "no", "default": "", - "description": "Band for which the credentials applies" + "description": "List of AL-IDs to which the policy should be provided. If excluded, the policy applies to all agents not listed in another section" }, { - "name": "ssid", - "type": "string", - "required": "yes", - "default": "", - "description": "SSID to be transferred" + "name": "steer_exclude", + "type": "list", + "required": "no", + "default": "", + "description": "List of clients to be excluded from steering. NOT YET IMPLEMENTED" }, { - "name": "encryption", - "type": "string", - "required": "no", - "default": "psk2+aes", - "description": "Encryption for the credentials" + "name": "steer_exclude_btm", + "type": "list", + "required": "no", + "default": "", + "description": "List of clients to be excluded from BTM steering. NOT YET IMPLEMENTED" }, { - "name": "key", - "type": "string", - "required": "yes", - "default": "", - "description": "Password for the SSID" + "name": "steer_policy", + "type": "integer", + "required": "no", + "default": "0", + "description": "0 = agent initiated steering disallowed, 1 = agent initiated RCPI steering mandated, 2 = agent initiated RCPI based steering allowed" }, { - "name": "vlan", - "type": "integer", - "required": "yes", - "default": "", - "description": "Vlan section (mapped against ID)" - } - ] - }, - { - "section": "agent-policy", - "description": "An agent and its configuration policy as provided by mapcontroller", - "multi": true, - "options":[ + "name": "util_threshold", + "type": "integer", + "required": "no", + "default": "0", + "description": "Channel utilization threshold. NOT YET IMPLEMENTED" + }, { - "name": "agent_id", - "type": "string", - "required": "yes", - "default": "", - "description": "AL-ID of this agent" + "name": "rcpi_threshold", + "type": "integer", + "required": "no", + "default": "0", + "description": "Threshold at which agent will perform steering" + }, + { + "name": "report_scan", + "type": "integer", + "required": "no", + "default": "0", + "description": "Whether independent channel shall be reported. NOT YET IMPLEMENTED" + }, + { + "name": "report_sta_assocfails", + "type": "integer", + "required": "no", + "default": "0", + "description": "Whether sta association fails shall be reported. NOT YET IMPLEMENTED" + }, + { + "name": "report_sta_assocfails_rate", + "type": "integer", + "required": "no", + "default": "0", + "description": "Maximum frequency at which sta association fails shall be reported. NOT YET IMPLEMENTED" + }, + { + "name": "report_metric_periodic", + "type": "integer", + "required": "no", + "default": "0", + "description": "The interval at which AP Metrics shall be reported. NOT YET IMPLEMENTED" + }, + { + "name": "report_rcpi_threshold", + "type": "integer", + "required": "no", + "default": "0", + "description": "Threshold at which agent will report unsolicated STA associated client statistics" + }, + { + "name": "report_util_threshold", + "type": "integer", + "required": "no", + "default": "0", + "description": "Threshold at which utilization will be reported. NOT YET IMPLEMENTED" + }, + { + "name": "rcpi_hysteresis_margin", + "type": "integer", + "required": "no", + "default": "0", + "description": "Threshold at which hysteresis will be reported. NOT YET IMPLEMENTED" + }, + { + "name": "include_sta_stats", + "type": "integer", + "required": "no", + "default": "0", + "description": "Whether to include STA traffic stats TLV with the AP metrics response. NOT YET IMPLEMENTED" + }, + { + "name": "include_sta_metric", + "type": "integer", + "required": "no", + "default": "0", + "description": "Whether to include associated STA link metrics TLV in the AP metrics response. NOT YET IMPLEMENTED" + }, + { + "name": "disallow_bsta_p1", + "type": "integer", + "required": "no", + "default": "0", + "description": "Whether to disallow profile 1 bsta connections. NOT YET IMPLEMENTED" + }, + { + "name": "disallow_bsta_p2", + "type": "integer", + "required": "no", + "default": "0", + "description": "Whether to disallow profile 2 bsta connections. NOT YET IMPLEMENTED" } ] }