;

V roce 2021 bude mít více lidí mobilní telefon než tekoucí vodu

24. 2. 2017
Doba čtení: 3 minuty

Sdílet

Autor: © ferkelraggae - Fotolia.com
Za čtyři roky bude mít více obyvatel zeměkoule mobilní telefon (5,5 miliardy) než bankovní účet (5,4 miliardy), tekoucí vodu (5,3 miliardy) nebo pevnou telefonní linku (2,9 miliardy). Mobilní datový provoz vzroste sedmkrát.

Vyplývá to z analytické studie Cisco Visual Networking Index (VNI) Global Mobile Data Traffic Forecast (2016 to 2021). Analytici také předpovídají, že se tento výrazný růst, spolu s rozmachem chytrých telefonů a připojení do internetu věcí promítne i do celkového objemu přenesených mobilních dat. Studie říká, že do roku 2021 vzroste sedminásobně, k čemuž přispěje i zvyšování přenosové rychlosti sítí a nárůst sledování videa na mobilních zařízeních.

Již pojedenácté zveřejnila společnost Cisco svoji studii Cisco Visual Networking Index. Tentokrát se zaměřila na analýzu a budoucí trendy globálního mobilního datového provozu. Ten do roku 2021 vzroste sedmkrát. V regionu Střední a východní Evropy očekává společnost Cisco šestinásobný nárůst (z 11,1 exabytů na 63 exabytů za rok).

„Do očekávaného nárůstu mobilního datového provozu se promítnou živé přenosy videa, aplikace pro rozšířenou realitu, rozmach internetu věcí i další moderní technologie. Nové možnosti v mobilních datech přinese technologie 5G, jejíž výhody se promítnou nejen do oblasti mobility, ale do celkové podoby sítí jako takových. Přinese proměnu architektury sítí, rozšíří možnosti programovatelnosti a automatizace,“ říká Michal Stachník, generální ředitel Cisco ČR

Mezi hlavní důvody nárůstu mobilního datového provozu patří:

  • Více uživatelů – V roce 2021 bude mít mobilní zařízení více než 70 % světové populace, konkrétně 5,5 miliardy. OSN odhaduje, že v té době dosáhne počet lidí na zeměkouli 7,8 miliard. Vlastnit mobilní zařízení tak bude více lidí než těch s přístupem k pitné vodě.
  • Nárůst počtu mobilních zařízení – V roce 2021 bude připojeno 12 miliard mobilních zařízení. Na jednoho obyvatele Země tak připadne zhruba 1,5 zařízení. Více než polovina (6,2 miliard) připadne na chytré telefony a phablety. V současné době připadá na jednoho člověka zhruba 1,1 mobilního zařízení a jejich celkový počet se pohybuje okolo 8 miliard.
  • Rychlejší připojení – V roce 2016 byla průměrná rychlost mobilních sítí 6,8 Mb/s. Společnost Cisco odhaduje, že o pět let později se rychlost zvýší trojnásobně na 20,4 Mb/s.
  • Více videa – Objem mobilních přenosů videa vzroste ve sledovaném období 8,7násobně a bude vykazovat nejvyšší tempo růstu ze všech kategorií mobilních aplikací. Mobilní přenosy videa budou v roce 2021 tvořit 78 % veškerého mobilního datového provozu. Výrazněji se také zvýší sledování živých přenosů (39krát), což bude představovat 5 % všech přenesených videí.

Velkou měrou se na těchto číslech podílí i vzájemná komunikace strojů a zařízení, tzv. machine‑to‑machine připojení. V současné době tvoří asi 5 % celkového mobilního připojení. V roce 2021 jeho poměr stoupne na 29 % a stane se tak nejrychleji rostoucím typem mobilního připojení. Tento nárůst souvisí především s rozvojem internetu věcí.


Nástup technologie 5G

Cyber25

V roce 2020 začne měřitelný dopad nových 5G sítí na celkový objem mobilního provozu. Mobilní operátoři budou potřebovat vyšší rychlost a nižší latenci, aby mohli vyhovět požadavkům stále náročnějších zákazníků. V roce 2021 bude mobilnímu datovému provozu stále dominovat technologie 4G. Ta bude v roce 2021 podporovat 58 % mobilních připojení a proteče jimi 79 procent celkového provozu. Prostřednictvím 5G sítí projde „pouhých“ 0,2 % připojení, avšak ty vygenerují 1,5 % celkového mobilního datového provozu. Budou tak 4,7krát efektivnější než 4G a 10,7krát než 3G sítě.

Zdroj: Cisco 

'; document.getElementById('preroll-iframe').onload = function () { setupIframe(); } prerollContainer = document.getElementsByClassName('preroll-container-iframe')[0]; } function setupIframe() { prerollDocument = document.getElementById('preroll-iframe').contentWindow.document; let el = prerollDocument.createElement('style'); prerollDocument.head.appendChild(el); el.innerText = "#adContainer>div:nth-of-type(1),#adContainer>div:nth-of-type(1) > iframe { width: 99% !important;height: 99% !important;max-width: 100%;}#videoContent,body{ width:100vw;height:100vh}body{ font-family:'Helvetica Neue',Arial,sans-serif}#videoContent{ overflow:hidden;background:#000}#adMuteBtn{ width:35px;height:35px;border:0;background:0 0;display:none;position:absolute;fill:rgba(230,230,230,1);bottom:20px;right:25px}"; videoContent = prerollDocument.getElementById('contentElement'); videoContent.style.display = 'none'; videoContent.volume = 1; videoContent.muted = false; const playPromise = videoContent.play(); if (playPromise !== undefined) { playPromise.then(function () { console.log('PREROLL sound allowed'); // setUpIMA(true); videoContent.volume = 1; videoContent.muted = false; setUpIMA(); }).catch(function () { console.log('PREROLL sound forbidden'); videoContent.volume = 0; videoContent.muted = true; setUpIMA(); }); } } function setupDimensions() { prerollWidth = Math.min(iinfoPrerollPosition.offsetWidth, 480); prerollHeight = Math.min(iinfoPrerollPosition.offsetHeight, 320); } function setUpIMA() { google.ima.settings.setDisableCustomPlaybackForIOS10Plus(true); google.ima.settings.setLocale('cs'); google.ima.settings.setNumRedirects(10); // Create the ad display container. createAdDisplayContainer(); // Create ads loader. adsLoader = new google.ima.AdsLoader(adDisplayContainer); // Listen and respond to ads loaded and error events. adsLoader.addEventListener( google.ima.AdsManagerLoadedEvent.Type.ADS_MANAGER_LOADED, onAdsManagerLoaded, false); adsLoader.addEventListener( google.ima.AdErrorEvent.Type.AD_ERROR, onAdError, false); // An event listener to tell the SDK that our content video // is completed so the SDK can play any post-roll ads. const contentEndedListener = function () { adsLoader.contentComplete(); }; videoContent.onended = contentEndedListener; // Request video ads. const adsRequest = new google.ima.AdsRequest(); adsRequest.adTagUrl = iinfoVastUrls[iinfoVastUrlIndex]; console.log('Preroll advert: ' + iinfoVastUrls[iinfoVastUrlIndex]); videoContent.muted = false; videoContent.volume = 1; // Specify the linear and nonlinear slot sizes. This helps the SDK to // select the correct creative if multiple are returned. // adsRequest.linearAdSlotWidth = prerollWidth; // adsRequest.linearAdSlotHeight = prerollHeight; adsRequest.nonLinearAdSlotWidth = 0; adsRequest.nonLinearAdSlotHeight = 0; adsLoader.requestAds(adsRequest); } function createAdDisplayContainer() { // We assume the adContainer is the DOM id of the element that will house // the ads. prerollDocument.getElementById('videoContent').style.display = 'none'; adDisplayContainer = new google.ima.AdDisplayContainer( prerollDocument.getElementById('adContainer'), videoContent); } function unmutePrerollAdvert() { adVolume = !adVolume; if (adVolume) { adsManager.setVolume(0.3); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } else { adsManager.setVolume(0); prerollDocument.getElementById('adMuteBtn').innerHTML = ''; } } function onAdsManagerLoaded(adsManagerLoadedEvent) { // Get the ads manager. const adsRenderingSettings = new google.ima.AdsRenderingSettings(); adsRenderingSettings.restoreCustomPlaybackStateOnAdBreakComplete = true; adsRenderingSettings.loadVideoTimeout = 12000; // videoContent should be set to the content video element. adsManager = adsManagerLoadedEvent.getAdsManager(videoContent, adsRenderingSettings); // Add listeners to the required events. adsManager.addEventListener(google.ima.AdErrorEvent.Type.AD_ERROR, onAdError); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_PAUSE_REQUESTED, onContentPauseRequested); adsManager.addEventListener( google.ima.AdEvent.Type.CONTENT_RESUME_REQUESTED, onContentResumeRequested); adsManager.addEventListener( google.ima.AdEvent.Type.ALL_ADS_COMPLETED, onAdEvent); // Listen to any additional events, if necessary. adsManager.addEventListener(google.ima.AdEvent.Type.LOADED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.STARTED, onAdEvent); adsManager.addEventListener(google.ima.AdEvent.Type.COMPLETE, onAdEvent); playAds(); } function playAds() { // Initialize the container. Must be done through a user action on mobile // devices. videoContent.load(); adDisplayContainer.initialize(); // setupDimensions(); try { // Initialize the ads manager. Ad rules playlist will start at this time. adsManager.init(1920, 1080, google.ima.ViewMode.NORMAL); // Call play to start showing the ad. Single video and overlay ads will // start at this time; the call will be ignored for ad rules. adsManager.start(); // window.addEventListener('resize', function (event) { // if (adsManager) { // setupDimensions(); // adsManager.resize(prerollWidth, prerollHeight, google.ima.ViewMode.NORMAL); // } // }); } catch (adError) { // An error may be thrown if there was a problem with the VAST response. // videoContent.play(); } } function onAdEvent(adEvent) { const ad = adEvent.getAd(); console.log('Preroll event: ' + adEvent.type); switch (adEvent.type) { case google.ima.AdEvent.Type.LOADED: if (!ad.isLinear()) { videoContent.play(); } prerollDocument.getElementById('adContainer').style.width = '100%'; prerollDocument.getElementById('adContainer').style.maxWidth = '640px'; prerollDocument.getElementById('adContainer').style.height = '360px'; break; case google.ima.AdEvent.Type.STARTED: window.addEventListener('scroll', onActiveView); if (ad.isLinear()) { intervalTimer = setInterval( function () { // Example: const remainingTime = adsManager.getRemainingTime(); // adsManager.pause(); }, 300); // every 300ms } prerollDocument.getElementById('adMuteBtn').style.display = 'block'; break; case google.ima.AdEvent.Type.ALL_ADS_COMPLETED: if (ad.isLinear()) { clearInterval(intervalTimer); } if (prerollLastError === 303) { playYtVideo(); } break; case google.ima.AdEvent.Type.COMPLETE: if (ad.isLinear()) { clearInterval(intervalTimer); } playYtVideo(); break; } } function onAdError(adErrorEvent) { console.log(adErrorEvent.getError()); prerollLastError = adErrorEvent.getError().getErrorCode(); if (!loadNext()) { playYtVideo(); } } function loadNext() { iinfoVastUrlIndex++; if (iinfoVastUrlIndex < iinfoVastUrls.length) { iinfoPrerollPosition.remove(); playPrerollAd(); } else { return false; } adVolume = 1; return true; } function onContentPauseRequested() { videoContent.pause(); } function onContentResumeRequested() { videoContent.play(); } function onActiveView() { if (prerollContainer) { const containerOffset = prerollContainer.getBoundingClientRect(); const windowHeight = window.innerHeight; if (containerOffset.top < windowHeight/1 && containerOffset.bottom > 0.0) { if (prerollPaused) { adsManager.resume(); prerollPaused = false; } return true; } else { if (!prerollPaused) { adsManager.pause(); prerollPaused = true; } } } return false; } function playYtVideo() { iinfoPrerollPosition.remove(); youtubeIframe.style.display = 'block'; youtubeIframe.src += '&autoplay=1&mute=1'; } }
OSZAR »