Як розібратися, яка програма надсилає / отримує величезну кількість даних на iPhone?


13

У мене є iPhone, який раптово (останні два місяці) почав переходити план 200 мб, на якому він був. До цього він навіть не був близький до меж.

Єдина інформація, яку дає мені телефонна компанія (AT&T), - це суми та час (який, наскільки я розумію, - це лише час виставлення рахунків для згрупованого обсягу даних). Ось зразок:

08/23  12:07 AM  Sent  198679KB
08/22  12:07 AM  Sent  6070KB
08/21  12:06 AM  Sent  13757KB
08/20  12:06 AM  Sent  5993KB
08/19  12:54 AM  Sent  64947KB
08/17  10:05 PM  Sent  165247KB
08/17  12:02 AM  Sent  12707KB
08/16  12:02 AM  Sent  90KB
08/15  12:42 AM  Sent  23581KB
08/14  12:10 AM  Sent  35819KB

А крім величезних сум на 3G, цей телефон провів дуже мало часу поза Wi-Fi.

Чи можливий спосіб (без джейлбрейків!) Дізнатися, яка програма могла б передати стільки даних? В даний час AT&T не може або не може дати мені розбиття напрямків руху. Навіть якби це було можливо, я хотів би відповісти, що лежить в телефоні як перевірка того, що вимірює оператор, якщо це можливо.


Багато хто з коментаторів у цій темі коментарів, схоже, відчувають ту саму проблему.
Ніколь

1
Ви не можете проксі-трафік 3G, як ви можете TCP / IP-трафік. Принаймні, не проксі і вивчити його. Це зашифровано. Якщо ви зможете побудувати міст 3G, на якому ваш телефон легко розмовлятиме і зможе бачити дейтаграми через цей міст, це зробить прослуховування мереж на основі 3G страшно легким. Ваша найкраща ставка - спостерігати за трафіком, коли він знаходиться в мережі WiFi.
Ян C.

Я зробив досить важливу редакцію своєї відповіді: коли ваш телефон знаходиться у сплячому режимі, він використовує 3G, а не WiFi. 3G-радіо є енергоефективним, тому Apple вирішила використовувати це, коли пристрій спить. Вам потрібно вимкнути стільникові дані на телефоні за допомогою моєї техніки. Насправді ви можете вимкнути використання стільникових даних, щоб заощадити себе під час з'ясування цього.
Ян C.

Я, звичайно, сподіваюся, що це не щось, що завантажує дані серверів на сервер. bits.blogs.nytimes.com/2012/02/28/…
bmike

Відповіді:


10

Після декількох ретельних ознайомлень із вашим запитанням щось виділялось:

А крім величезних сум на 3G, цей телефон провів дуже мало часу поза Wi-Fi.

Ваш iPhone, перебуваючи в режимі сну, вимикає радіо WiFi, щоб заощадити енергію акумулятора . Тож якщо у вас є голодні програми, які займаються фоном, коли телефон спить / заблокований, вони роблять це понад 3G. Зауважте, що поведінка в режимі без сну Wi-Fi у режимі сну дещо суперечлива. Але ви можете переконатися, що телефон 3G ніколи не використовується, коли ви проводите ці тести, вимикаючи стільникові дані. Таким чином, коли він спить, він продовжуватиме використовувати WiFi, а не 3G для передачі даних, і ви обов'язково захопите весь трафік у вашій мережі моніторингу.


Ви можете співати деякі технології, які можуть допомогти вам знайти винуватця.

Як швидкий перший пропуск ви можете спробувати відстежувати телефон, коли він перебуває у мережі WiFi за допомогою mitmproxy. З цієї чудової публікації в блозі mclov.in ви можете встановити проксі-сервер для свого телефону на вашому Mac і фільтрувати весь http / s трафік через нього:

  1. Завантажте інструмент mitmproxy та встановіть його, перейшовши до папки mitmproxy та запустивши установку sudo python setup.py. Якщо все піде добре, mitmproxy повинен бути доступний у вашому $ PATH.
  2. Запустіть mitmproxy, запустивши mitmproxy.
  3. Отримайте IP-адресу комп'ютера, запустивши ifconfig en1 (або будь-який інтерфейс, який ви використовуєте).
  4. Встановіть проксі-сервер на своєму iPhone, перейшовши до налаштувань бездротового зв’язку, встановивши проксі-сервер "Ручним", і встановіть IP-адресу для вашого комп'ютера, а порт 8080.

Якщо ви встановите mitmproxy для запису http / s дзвінків у файл, ви можете проаналізувати його через певний проміжок часу і шукати тенденції. Ви також зможете перевірити корисні навантаження на http / s дзвінки, щоб ви могли таким чином помітити незвично великі запити.

Звичайно: такий підхід передбачає, що винуватець використовує http / s для спілкування. Якщо це не так, ви не побачите проблеми через mitmproxy, і вам доведеться вдатися до рішення нижчого рівня.

Потрібно відстежувати весь трафік в WiFi, яку ви контролюєте, щоб допомогти вам знайти хоча б кінцеві точки для передачі даних. Моніторинг пропускної здатності не складно налаштувати, але ведення журналу даних про IP, на кінцеву точку дійсно важко пов'язане з обладнанням для споживачів, оскільки це може бути МАСИВНИЙ обсяг даних. Кожен пакет повинен бути перевірений за походженням, призначенням, увійти в обліковий запис за часом та розміром - він швидко формується.

Але ви можете отримати кілька пристойних цифр і звузити пошуковий простір, щоб це було щось потенційно піддається людському аналізу.

По-перше: вам потрібно налаштувати мережу з моніторингом пропускної здатності на рівні IP-адреси. Для цього я рекомендую споживчий WiFi-маршрутизатор Linksys WRT54GL під керуванням Tomato та надбудовою TeamanIPTraffic для відстеження пропускної здатності на рівні IP.

По-друге: встановіть свій DNS на маршрутизаторі для використання OpenDNS . У вашому обліковому записі OpenDNS для відстеження пошуку DNS:

  • Увійдіть на сторінку https://dashboard.opendns.com/
  • Перейдіть на вкладку "Налаштування"
  • Клацніть IP-адресу для мережі, пов’язаної з вашим маршрутизатором
  • Натисніть "Статистика та журнали" зліва
  • Переконайтесь, що прапорець "Увімкнути статистику та журнали" встановлений, і натисніть кнопку "Застосувати"

Тепер усі запити DNS, які виконуються у вашій мережі, будуть реєструватися.

Призначте своєму телефону статичну IP-адресу в цій мережі, щоб було легше відстежувати.

І ... чекай і дивись.

Ви збираєтеся відстежувати активність для IP-адреси, призначеної вашому телефону в таблицях активності вашого маршрутизатора за IP-адресою. Коли активність даних для цієї IP-адреси спалахує, ви перейдете на консоль OpenDNS і перегляньте статистику та журнали пошуку ваших DNS за той період часу, коли рух даних для вашого телефону був високим.

Це повинно дати короткий список імен хостів, які тоді були вирішені. І озброївшись цим списком, ви, можливо, зможете звузити його до програми.


3
Це саме те, на що я сподівався - деталі про те, як проксі використовувати дані. Я переконуюся в цьому і побачу, чи є у мене більше питань. Чудові зв’язки та робота над цим.
bmike

Я покращую цей підхід, якщо у вас також є Mac. Я напишу це трохи, коли встигну налагодити ідею.
Ян C.

2

У вашому взутті з моїми мізерними знаннями я просто підберу хорошого кандидата чи двох і вийму їх з iPhone за допомогою iTunes. Це повинно призвести до величезної втрати вільного місця, і iTunes може це показати.

Ще одним менш задіяним методом було б просто вимкнути їх, двічі клацнувши кнопку «Домашня сторінка» і утримуючи її, поки не з’явиться x.

Це, мабуть, лише один додаток, але для їх сортування знадобиться час і $, поки ви не знайдете його.

Напевно, є кращі способи, які підкажуть інші, але це з чогось почати.


Цікава ідея, я підключу її та спробую. Я тільки припустив, що дані, ймовірно, не записуються на диск.
Ніколь

Чудова пропозиція щодо іншого непрямого способу вимірювання змін. І якщо зберігання не змінюється, то використання даних може бути надійніше замінено на помилку чи потокове передавання чогось на відміну від завантаження чогось для постійного використання на пристрій.
bmike

2

Є кілька додатків, які можуть допомогти вам відстежувати використання даних додатків:

  • Поєднання NetStat та використання даних : Перший повідомить про всі з'єднання в певний момент часу. Останній стверджує, що працює з будь-яким бездротовим постачальником та може надавати звіти про використання бездротових даних та WiFi. Додаток також стверджує, що " відстежувати програму свиней даних , перевіряючи з часу останнього лічильника запуску". Це допоможе в процесі усунення пошуку, щоб потенційно виключити або в деяких додатках як користувачів даних.

  • Onavo ( розглядається тут ): забезпечує стиснення даних для iPhone та генерує звіти про кількість використання даних за додатком / категорією. Обмеження - наразі працює лише з AT&T для користувачів США, не може стискати потокове відео. Також можуть виникнути ризики для безпеки, оскільки ваші дані передаються через сервери Onavo.

Я також знайшов цей список помітних програм для відстеження даних iOS, які можуть відповідати вашим потребам.

Caveat : Я особисто не використовував ці програми, але відгуки здаються багатообіцяючими.


Я загляну в Onavo, але, здається, я не дуже хочу стиснення стільки, скільки метр, який я можу контролювати. Можливо, немає сервісу лише для обліку ...
bmike

1

Починаючи з iOS 7, ви можете зайти в Налаштування -> Дані для мобільних пристроїв і переглянути список усіх додатків разом із кількістю використаних даних (з моменту останнього скидання статистики) для кожного. Ви також можете вимкнути мобільні дані на основі додатка в одному і тому ж місці.

Якщо ви бачите незрозуміле високе використання мобільних даних, спробуйте відключити функцію Wi-Fi Assist на тому ж екрані налаштувань; він дозволяє вашому телефону користуватися мобільними даними, навіть якщо він має з'єднання Wi-Fi, якщо він вважає, що з'єднання є підпунктним.


0

Я вважаю, що є кілька додатків для iPhone, які дозволяють вам здійснювати вхід та моніторинг використання даних. Я не використовував жодного особисто, але я зробив деякий Googling і виявив, що хлопці, які створили NetUse для Mac, планують зробити подібний додаток для iPhone. Я також знайшов цю тему , яка по суті задає те саме питання; можливо, там є відповіді.

Можливо, ви могли б скористатися цим, коли він з’явиться, або пошукати в iPhone App Store, щоб побачити, чи щось подібне вже існує :)


0

Я б порекомендував кілька годин систематично переглядати ваші програми по черзі. По-перше, закрийте всі свої програми. Зверніть увагу на час відкриття програми та час його закриття (звісно, ​​видаливши його з багатозадачної панелі). Повторіть із наступним додатком. Коли ви бачите звіт AT&T, ви можете мати можливість визначати час, який додаток стільки використовує мережу.


Чи відрізняється це від відповіді в серпні, що запропонував процес усунення та намагався отримати опосередкований спосіб використання шляхом вимірювання того, що це не так? apple.stackexchange.com/a/23017/5472
bmike

@bmike Це дуже схоже на другу половину цієї відповіді, але це дещо розпливчасто щодо того, як саме це можна було б визначити за допомогою цього методу. Це виглядає так, що вони думають, що просто видалення не використовуваних додатків із багатозадачної панелі усуне проблему. Це, швидше за все, правда, але це не допомагає знайти винуватця програми.
Тімоті Мюллер-Хардер

0

Я здивований, що це не було згадано ... Але переконайтесь, що перевірити налаштування електронної пошти. Є варіанти для ...

  1. Надавати? (більше пропускної здатності)
  2. Налаштування попереднього перегляду повідомлення? (я б припускав більше пропускної здатності)
  3. Завантажити зображення? (Більша пропускна здатність)
  4. Час отримання? (нижча = більша пропускна здатність)
  5. Кілька акаунтів?

І залежно від налаштування календаря / контактів, фотографій, частоти змін ... Це також може вплинути на це. Крім того, чи є у вас iCloud або Знайдіть мій iPhone увімкненим із пізнього часу ... Це, безумовно, може вплинути на ваші номери використання ..

Хоча це і зовсім незначно ... Ви також можете вмикати та вимикати сповіщення для несуттєвих програм. Щоб усунути одне додаткове (малоймовірне) джерело проблеми.

Я перейшов на свій iPad один місяць - і змінивши агресивні налаштування перевірки електронної пошти, це все змінило для мене ... Але, незабаром після того, як це сталося .. Я також переклав би його в режим літака / wifi, коли це можливо .. Я припускаю, що ви використовуєте стільникову мережу для телефонних дзвінків (чого я не був), щоб запобіжний захід міг бути непридатним ... Але якщо вам потрібно зробити те, що вам потрібно зробити, щоб переконатися, що ви цього не зробите переходьте .. Ось варіант.


Мене більше хвилює вимірювання того, що відбувається, ніж попадання довільної межі. Я хочу знати, що це пошта, не обов'язково робити процес усунення, згаданий минулого серпня . Я ціную пропозицію, що це може бути пошта, однак мій телефон не налаштований на натискання і не надходить пошта, поки я не торкнусь піктограми вранці. (Це не було в первісному запитанні, тому немає ніякого способу знати, що :-)
bmike

Я не згадував це в первинному питанні, але я впевнений, що велика кількість відправлених даних виникає на задньому плані. Як я вже згадував, це був величезний приріст попередніх рахунків (той самий телефон, ті ж налаштування), які не можна було врахувати завдяки використанню стандартних програм.
Ніколь

0

Добре, ви можете вимкнути це, закривши всі додатки, які потребують даних, після чого перейдіть у Налаштування -> Загальне -> Мережа та вимкніть перемикач стільникових даних, щоб вимкнути.


1
Я думаю, що ідея тут полягає в тому, щоб продовжувати використовувати дані, але визначити, які програми (передній план чи фон, система чи третя сторона) використовують яку частину загальної кількості даних. Після того, як ми зможемо виміряти це, легко вибрати більше чи менше, як передбачає кожна ситуація.
bmike
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.