Определение качества сетевого соединения в ios-почте,...

16
Определение качества сети в почте Mail.Ru Даниил Румянцев, iOS Developer, Mail.Ru, myMail

Upload: mailru-group

Post on 16-Apr-2017

2.416 views

Category:

Software


4 download

TRANSCRIPT

Page 1: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Определение качества сети в почте Mail.Ru

Даниил Румянцев, iOS Developer, Mail.Ru, myMail

Page 2: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

плохая сеть+

много траффика=

плохой UX

Page 3: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Как определить хорошая ли сеть?

Page 4: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Network Connection Class

https://github.com/facebook/network-connection-class

Page 5: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Network Connection Class

• ConnectionClass_Unknown

• ConnectionClass_Poor

• ConnectionClass_Moderate

• ConnectionClass_Good

• ConnectionClass_Excellent

Page 6: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

VS

ConnectionClass_PoorConnectionClass_Excellent

Page 7: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Ping

• Шлем 5 icmp-пакетов на старте

• Считаем время получения ответа и потерянные пакеты

• ….

• PROFIT!

Page 8: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

resp

onse

tim

e, s

ec

0

0,175

0,35

0,525

0,7

packets0 10 20 30 40 50 60 70 80 90 100

Page 9: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

CoreTelephonyCTRadioAccessTechnologyGPRS

CTRadioAccessTechnologyWCDMA CTRadioAccessTechnologyHSDPA CTRadioAccessTechnologyHSUPA CTRadioAccessTechnologyCDMA1x CTRadioAccessTechnologyCDMAEVDORev0 CTRadioAccessTechnologyCDMAEVDORevA CTRadioAccessTechnologyCDMAEVDORevB

CTRadioAccessTechnologyLTE

2G

3G

LTE

Page 10: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Facebook • Точный результат только при тяжелом траффике

Page 11: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Ping• Дает результат только через 5 секунд

• Результат станет невалидным при смене сети

Page 12: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

CoreTelephony• Работает только на сотовой сети, при wi-fi бесполезен

Page 13: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Ping

Application start

Кеш по SSID или типу соединения

CoreTelephony или Moderate

Facebook

Page 14: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

CompositeConnectionQualityHandler

facebook Ping CoreTelephony

Page 15: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Как мы это тестировалиp

Page 16: Определение качества сетевого соединения в iOS-почте, Даниил Румянцев, разработчик приложения Почты

Всем спасибо!Вопросы?

[email protected]