Higher education Wi-Fi brings on a plethora of challenges. As students, faculty, and staff move towards being a fully wireless, cord cutting, group of workforces, campus engineers must focus attention to manipulating radio frequencies to fit into coverage and capacity demands.

The common challenges higher education faces with providing Wi-Fi to such a large set of users aren’t challenges to easily overcome.

Wi-Fi must be taken with a lifecycle approach to ensure end user experience is met with the campus perception.

As we’ve seen in the past, students can take their Wi-Fi frustrations to social media.

What we’ll go over are the challenges and solutions to higher education Wi-Fi, what are they specifically, and how should they be approached.

Those challenges are:

Wi-Fi Lifecycle

One thing to remember here as we talk about the challenges is that Wi-Fi should be taken with a lifecycle approach. With any Wi-Fi deployment, there must be planning, design, implementation, validation, and optimization.

Bring Your Own Device

The biggest challenge I see for higher education is BYOD. It’s safe to say that campuses do not restrict what kind of devices students can bring. This poses a big question. What’s on the network?

If there’s a registration in place, then that’s where the data collection begins. With that data it is possible to determine what percentage of registered devices are Apple Macbooks, Lenovo laptops, Apple iPads, Samsung tablets, etc. But we still have unknown devices which are not registered and possibly using guest Wi-Fi.

Solution: Plan for application requirements. Because the majority of devices may be unknown to us we must work with what is known. What kind of application will be used in the classroom and with an estimated number of devices, such as laptops, determines the number of access points (APs) required.

High Density

Hundreds of students in a large auditorium, large lecture halls, stadiums, and interactive applications. High density has a large impact on wireless networks due to the large amount of devices and the capacity requirements that follow it.

Largely, the goal is to provide coverage to many devices with a specific amount of APs. This number depends on how many devices need to be serviced.

Solution: Determine how many devices need to be on Wi-Fi, find out their capacity requirements, and you have the number of APs required to fit requirements.


What is capacity? It is the need to ensure devices connected to an access point are able to use their applications without noticing considerable degradation of performance. Take interactive video as an example. The instructor tells each of the students to load a video. Each of those devices begins initiating a high definition streaming video.

High definition streaming video can take anywhere between 2-4 Mbps for each device, this could easily saturate or fill the capacity that an access point provides. The end result is slow connectivity and a poor experience. The instruction is then left at a standstill until everyone can complete the assignment.

Solution: Determine application requirements. This can be as simple as basic web connectivity for email and web surfing or as intense as large file downloads. In either case, knowing the application requirements are important in determining application throughput. That throughput is taken into consideration with the total amount of devices. The end result is the number of access points needed to service that capacity.


A large campus environment, like any environment, is prone to interference. Wi-Fi is a shared medium meaning any device is free to use the same spectrum. Interference negatively affects Wi-Fi by corrupting communications being transmitted by legitimate devices.

Interference can come in different forms from malfunctioning hardware to devices that transmit radio frequency as a byproduct.

Symptoms of interference can be devices dropping off of Wi-Fi, slow connectivity, or no connection at all. Some severe cases require specialty hardware to identify the source of interference.

Solution: Spectrum analysis should be performed regularly as part of a pre- and post-deployment site survey. Special software specifically aimed at finding interference is needed. Find the source and remove it from the environment.

End User Education

Setting realistic expectations to end users is important in understanding how wireless works. Because the medium is shared and half-duplex, it is important to distinguish the differences with a wired connection.

Marketing documentation will depict a different story and claim speeds that devices are not capable of due to the physics of radio frequencies.

Solution: Publish available documents describing the wireless service. Understand how users want to utilize Wi-Fi and explain the capabilities based on their requirements.

[gravityforms id=16 title=false description=false]
<script type="text/javascript">var gform;gform||(document.addEventListener("gform_main_scripts_loaded",function(){gform.scriptsLoaded=!0}),window.addEventListener("DOMContentLoaded",function(){gform.domLoaded=!0}),gform={domLoaded:!1,scriptsLoaded:!1,initializeOnLoaded:function(o){gform.domLoaded&&gform.scriptsLoaded?o():!gform.domLoaded&&gform.scriptsLoaded?window.addEventListener("DOMContentLoaded",o):document.addEventListener("gform_main_scripts_loaded",o)},hooks:{action:{},filter:{}},addAction:function(o,n,r,t){gform.addHook("action",o,n,r,t)},addFilter:function(o,n,r,t){gform.addHook("filter",o,n,r,t)},doAction:function(o){gform.doHook("action",o,arguments)},applyFilters:function(o){return gform.doHook("filter",o,arguments)},removeAction:function(o,n){gform.removeHook("action",o,n)},removeFilter:function(o,n,r){gform.removeHook("filter",o,n,r)},addHook:function(o,n,r,t,i){null==gform.hooks[o][n]&&(gform.hooks[o][n]=[]);var e=gform.hooks[o][n];null==i&&(i=n+"_"+e.length),gform.hooks[o][n].push({tag:i,callable:r,priority:t=null==t?10:t})},doHook:function(n,o,r){var t;if(r=Array.prototype.slice.call(r,1),null!=gform.hooks[n][o]&&((o=gform.hooks[n][o]).sort(function(o,n){return o.priority-n.priority}),o.forEach(function(o){"function"!=typeof(t=o.callable)&&(t=window[t]),"action"==n?t.apply(null,r):r[0]=t.apply(null,r)})),"filter"==n)return r[0]},removeHook:function(o,n,t,i){var r;null!=gform.hooks[o][n]&&(r=(r=gform.hooks[o][n]).filter(function(o,n,r){return!!(null!=i&&i!=o.tag||null!=t&&t!=o.priority)}),gform.hooks[o][n]=r)}});</script> <div class='gf_browser_chrome gform_wrapper gravity-theme' id='gform_wrapper_16' ><form method='post' enctype='multipart/form-data' id='gform_16' action='/higher-education-wi-fi-challenges-and-solutions/' > <div class='gform_body gform-body'><div id='gform_fields_16' class='gform_fields top_label form_sublabel_below description_below'><fieldset id="field_16_1" class="gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_16_1"><legend class='gfield_label gfield_label_before_complex' >Name<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></legend><div class='ginput_complex ginput_container no_prefix has_first_name no_middle_name no_last_name no_suffix gf_name_has_1 ginput_container_name' id='input_16_1'> <span id='input_16_1_3_container' class='name_first' > <input type='text' name='input_1.3' id='input_16_1_3' value='' aria-required='true' placeholder='First Name' /> <label for='input_16_1_3' >First</label> </span> </div></fieldset><div id="field_16_2" class="gfield gfield--width-full gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_16_2"><label class='gfield_label' for='input_16_2' >Email<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></label><div class='ginput_container ginput_container_email'> <input name='input_2' id='input_16_2' type='text' value='' class='large' placeholder='Business email address' aria-required="true" aria-invalid="false" /> </div></div><fieldset id="field_16_3" class="gfield gfield_contains_required field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_16_3"><legend class='gfield_label gfield_label_before_complex' >Consent<span class="gfield_required"><span class="gfield_required gfield_required_text">(Required)</span></span></legend><div class='ginput_container ginput_container_checkbox'><div class='gfield_checkbox' id='input_16_3'><div class='gchoice gchoice_16_3_1'> <input class='gfield-choice-input' name='input_3.1' type='checkbox' value='I consent to the processing and sharing with partners of the personal data that I provide Packet 6 for this activity in accordance with and as described in the &lt;a href=&quot;https://packet6.com/privacy-policy&quot; target=&quot;_new&quot;&gt;Privacy Policy&lt;/a&gt;' id='choice_16_3_1' /> <label for='choice_16_3_1' id='label_16_3_1'>I consent to the processing and sharing with partners of the personal data that I provide Packet 6 for this activity in accordance with and as described in the <a href="https://packet6.com/privacy-policy" target="_new">Privacy Policy</a></label> </div></div></div></fieldset><div id="field_16_4" class="gfield gform_validation_container field_sublabel_below field_description_below gfield_visibility_visible" data-js-reload="field_16_4"><label class='gfield_label' for='input_16_4' >Phone</label><div class='ginput_container'><input name='input_4' id='input_16_4' type='text' value='' /></div><div class='gfield_description' id='gfield_description_16_4'>This field is for validation purposes and should be left unchanged.</div></div></div></div> <div class='gform_footer top_label'> <input type='submit' id='gform_submit_button_16' class='gform_button button' value='Get the report' onclick='if(window["gf_submitting_16"]){return false;} window["gf_submitting_16"]=true; ' onkeypress='if( event.keyCode == 13 ){ if(window["gf_submitting_16"]){return false;} window["gf_submitting_16"]=true; jQuery("#gform_16").trigger("submit",[true]); }' /> <input type='hidden' class='gform_hidden' name='is_submit_16' value='1' /> <input type='hidden' class='gform_hidden' name='gform_submit' value='16' /> <input type='hidden' class='gform_hidden' name='gform_unique_id' value='' /> <input type='hidden' class='gform_hidden' name='state_16' value='WyJbXSIsImY4MGVlNTA5MGVjMWYzYzU5NzUyOGFhOWE3ZGFiMzRlIl0=' /> <input type='hidden' class='gform_hidden' name='gform_target_page_number_16' id='gform_target_page_number_16' value='0' /> <input type='hidden' class='gform_hidden' name='gform_source_page_number_16' id='gform_source_page_number_16' value='1' /> <input type='hidden' name='gform_field_values' value='' /> </div> <p style="display: none !important;"><label>&#916;<textarea name="ak_hp_textarea" cols="45" rows="8" maxlength="100"></textarea></label><input type="hidden" id="ak_js_1" name="ak_js" value="25"/><script>document.getElementById( "ak_js_1" ).setAttribute( "value", ( new Date() ).getTime() );</script></p></form> </div>