Mobiele data: 2G, 3G, 4G, wifi, ... Verschillen in eigenschappen, toepassingen...
Paul Dekkers Summerschool Mobiele apps, augustus 2012
Inhoud • Wat doet SURFnet • Ontwikkelingen mobiel in Nederland • Mobiele netwerk standaarden • Het netwerk als gegeven? Netwerk vanaf de app... - Verschillen in technieken, karakteristieken... - Verschillen in telefoons, tablets...
• Tips and tricks
2
End-users / Apps … just some examples
Middleware
het network, en …
Communities
Authentication (federated)
Lower layers
Over SURFnet
DNS and resolving
Collaboration (Video)conferencing / MM Online video, e-learning Monitoring Mail-filtering Wireless: eduroam, 4G, ... Computing (cloud, virt., stor.) NTP Security IP network (IPv6!) Optical lightpaths
3
Wat doet SURFnet met mobiel • Privileges zoeken op mobiele netwerken voor de doelgroep, niet operator-gebonden • Onderzoek naar gebruik LTE (4G), complementair aan wifi (eduroam) • Focus op data (maar voice is belangrijk voor velen) • Bestaande sterke punten hergebruiken: - Netwerk voor het offloaden - Authenticatie infrastructuur - Vraagbundeling
4
LTE in Utrecht Science park
Ontwikkelingen mobiel: data honger Basic phone
4.3 MB/month
Smart phone
150 MB/month
= 1x = 35x
Laptop =
517 MB/month
488x2.1 GB/month
Bron: Cisco VNI mobile 2012
Tablet
= 120x
6
Verhoudingen in Nederland
(halfjaarlijks!) 7
Situatie in Nederland • 16,5 miljoen mensen: 22 miljoen abonnees • Nederlanders verbruiken ~ 6,5 MB data per device per dag • 3 mobiele operators: KPN, Vodafone, T-mobile • 4G / LTE: nu alleen 2,6 Ghz, door 5 bedrijven gekocht • Nieuwe veilingen in oktober 2012: - 800 Mhz, 1800 Mhz, 2100 Mhz, 2600 Mhz
8
Verwachtingen van een gebruiker • Moet gewoon werken: studenten en medewerkers als eindgebruikers • Overal breedbandig: downloaden, maar ook snel uploaden (social stuff: foto’s, filmpjes, lesmateriaal) • Onderdeel van onderwijs (ook als het social stuff is! afspraken ed.) • Betaalbaar al zitten gratis smartphones er niet meer in
9
Ontwikkeling van standaarden Hoe kies je een techniek, en met welk doel: vanuit operator, instelling, eindgebruiker...
... dit wil je als gebruiker allemaal niet weten
WiFi ontwikkeling 802.11 Frequency Max. bit Distance Distance Available in protocol [Ghz] rate inside[m] outside[m] [Mbit/s] a
5
54
35
120
1999
b
2.4
11
40
140
1999
g
2.4
54
50
140
2003
n
2,4 & 5
300
70
250
2009
ac
5
1000
40
140
2013
ad
60
>5000
10
-
2013
af
50-700 Mhz 80?
200?
500?
2012
11
Netwerk-generaties (~ 10j)
12
Beschikbaarheid LTE, en de nachtmerrie
13
illustratief complex ;-)
Complexiteit en interworking...
14
Complexiteit en implicaties
15
Vanuit een app • Vertraging ook in mobiele browser of framework
(beiden over Wi-Fi)
18
16
Focus op buiten Wi-Fi buiten schaalt slecht, bereik slecht, oorspronkelijk zelfs verboden
LTE buiten meer latency, variatie in snelheid maar gemiddeld goed, binnen zakt het snel in door frequentie
Verwachtingen en realiteit • Verwachtingen van een gebruiker zijn hoog maar:
• Netwerk is heel divers in karakteristieken • Mobieltjes zijn divers • Apps zijn vaak niet bewust (gemaakt) voor access-techniek • Servers zijn vaak niet bewust van de access-techniek
• Soms beter een trage
18
Netwerk-communicatie manieren • Low level sockets in Native apps: java of objective C - Als performance, timing, jitter/latency heel belangrijk is
• HTTP clients - Android: HttpClient libraries, DefaultHttpClient, AndroidHttpClient - iOS: NSURLConnection, NSURLRequest voor HTTP
• Browser gebruiken: HTML5, javascript • Cloud synchronisatie (bijv. ook files op iCloud tussen devices, en Google Cloud Messaging for Android, ...)
19
Netwerk, locatie, latency... Je kunt nog zo’n snel netwerk hebben, als de gebruiker aan de andere kant van de wereld zit (én een mobiel netwerk)... onvoorspelbaar!
Soms heb je meer aan een stabiel sloom netwerk, dan snel haperend netwerk. (Welke bus of trein moet ik NU?) Maar geen keus. 20
Tips and tricks • Radio-netwerken zijn onbetrouwbaar: - roamen: adressen kunnen veranderen - connectiviteit kan wegvallen, packetloss - check de beschikbaarheid van het data-verkeer
• Radio-netwerken met verschillende karakteristieken: - techniek kan veranderen bij roamen: dus latency/jitter - locatie van gebruiker heeft invloed: terugvallen op 2G bijv. - weinig van te zien vanuit de app
• Gedrag TCP sockets verschilt tussen iOS en Android: - iOS laat de sockets open, 3G en Wi-Fi tegelijk in gebruik - in Android moet app socket opnieuw openen: 3G (vaak) uit als Wi-Fi
21
Tips and tricks • Voorkeuren van eindgebruiker: stick to the SDK! (Die let daarop) • Nieuwe mogelijkheden OS (zoals bij slechte wifi overschakelen naar mobiel) • Er is veel overhead voor draadloos: - Niet te kleine packets versturen (1 802.11g AP kan bijv. maar 30x8Kbit (VOIP, G729) aan). - Memory is de bottleneck: data processen ook al is nog niet alles binnen
22
Conclusie • Apps en services zijn vaak netwerk unaware... • Toestellen zijn divers, en hebben verschillend gedrag • Roaming tussen technologieen een uitdaging • Behoefte aan goede apps, user-experience is belangrijk • Veel mogelijkheden met nieuwe technieken, overal breedband steeds realistischer en veel mogelijkheden voor onderwijs en onderzoek!
23
Vragen?
© Paul Dekkers.
paul.dekkers[at]surfnet.nl