Системный канал по умолчанию что это
Перейти к содержимому

Системный канал по умолчанию что это

  • автор:

Библиотека System.Threading.Channel

Пространство System.Threading.Channels имен предоставляет набор структур данных синхронизации для передачи данных между производителями и потребителями асинхронно. Библиотека предназначена для .NET Standard и работает на всех реализациях .NET.

Эта библиотека доступна в пакете NuGet System.Threading.Channel . Однако если вы используете .NET Core 3.0 или более поздней версии, пакет входит в состав платформы.

Модель программирования производителя и потребителя

Каналы — это реализация концептуальной модели программирования производителя или потребителя. В этой модели программирования производители асинхронно создают данные, а потребители асинхронно используют эти данные. Другими словами, эта модель передает данные от одной стороны к другой. Попробуйте подумать о каналах, как и любой другой распространенный универсальный тип коллекции, например List . Основное различие заключается в том, что эта коллекция управляет синхронизацией и предоставляет различные модели потребления с помощью параметров создания фабрики. Эти параметры управляют поведением каналов, таких как количество элементов, которые они могут хранить, и что происходит, если достигнуто это ограничение, или же доступ к каналу осуществляется несколькими производителями или несколькими потребителями одновременно.

Ограничивающие стратегии

В зависимости от того, как Channel создается объект, его читатель и средство записи ведут себя по-разному.

Чтобы создать канал, указывающий максимальную емкость, вызовите Channel.CreateBounded. Чтобы создать канал, который используется любым количеством читателей и писателей одновременно, вызовите Channel.CreateUnbounded. Каждая ограничивающая стратегия предоставляет различные параметры, определенные создателем, либо BoundedChannelOptionsUnboundedChannelOptions соответственно.

Независимо от ограничивающей стратегии, канал всегда будет вызывать ChannelClosedException , когда он используется после закрытия.

Несвязанные каналы

Чтобы создать несвязанный канал, вызовите одну из Channel.CreateUnbounded перегрузок:

var channel = Channel.CreateUnbounded(); 

При создании необвязанного канала по умолчанию канал может использоваться любым количеством читателей и писателей одновременно. Кроме того, при создании несвязанного канала можно указать несоотделенное поведение, предоставив UnboundedChannelOptions экземпляр. Емкость канала не связана, и все операции записи выполняются синхронно. Дополнительные примеры см. в разделе «Неподвязанные шаблоны создания».

Ограниченные каналы

Чтобы создать ограниченный канал, вызовите одну из Channel.CreateBounded перегрузок:

var channel = Channel.CreateBounded(7); 

Предыдущий код создает канал с максимальной емкостью 7 элементов. При создании привязанного канала канал привязан к максимальной емкости. Когда граница достигнута, поведение по умолчанию заключается в том, что канал асинхронно блокирует продюсера, пока пространство не станет доступным. Это поведение можно настроить, указав параметр при создании канала. Ограниченные каналы можно создать с любым значением емкости, превышающим нулю. Другие примеры см. в разделе «Ограничивающие шаблоны создания».

Поведение полного режима

При использовании привязанного канала можно указать поведение, которое канал соответствует достижении настроенной привязки. В следующей таблице перечислены режимы полного режима для каждого BoundedChannelFullMode значения:

Значение Поведение
BoundedChannelFullMode.Wait Это значение по умолчанию. Вызовы для WriteAsync ожидания доступности пространства для завершения операции записи. Вызовы для немедленного TryWrite возврата false .
BoundedChannelFullMode.DropNewest Удаляет и не использует новый элемент в канале, чтобы освободить место для записываемого элемента.
BoundedChannelFullMode.DropOldest Удаляет и не использует наиболее старый элемент в канале, чтобы освободить место для записываемого элемента.
BoundedChannelFullMode.DropWrite Удаляет записываемый элемент.

Всякий Channel.Writer раз, когда производство быстрее, чем Channel.Reader может потреблять, писатель канала испытывает обратное давление.

API-интерфейсы производителя

Функциональные возможности производителя предоставляются на устройстве Channel.Writer. API-интерфейсы производителя и ожидаемое поведение подробно описаны в следующей таблице:

API Ожидаемое поведение
ChannelWriter.Complete Помечает канал как завершенный, то есть больше элементов не записываются в него.
ChannelWriter.TryComplete Пытается пометить канал как завершенный, то есть больше данных не записывается в него.
ChannelWriter.TryWrite Предпринимает попытку записать указанный элемент в канал. При использовании с необвязанным каналом это всегда возвращается, если запись канала не сигнализирует true о завершении с помощью илиChannelWriter.CompleteChannelWriter.TryComplete.
ChannelWriter.WaitToWriteAsync Возвращает значение ValueTask , которое завершается, когда пространство доступно для записи элемента.
ChannelWriter.WriteAsync Асинхронно записывает элемент в канал.

Потребительские API

Функциональность потребителя предоставляется в объекте Channel.Reader. API-интерфейсы потребителей и ожидаемое поведение подробно описаны в следующей таблице:

API Ожидаемое поведение
ChannelReader.ReadAllAsync Создает интерфейс IAsyncEnumerable , позволяющий считывать все данные из канала.
ChannelReader.ReadAsync Асинхронно считывает элемент из канала.
ChannelReader.TryPeek Пытается просмотреть элемент из канала.
ChannelReader.TryRead Пытается считать элемент из канала.
ChannelReader.WaitToReadAsync ValueTask Возвращает значение, которое завершается, когда данные доступны для чтения.

Общие варианты использования

Существует несколько шаблонов использования для каналов. API разработан так, чтобы он был простым, согласованным и как можно более гибким. Все асинхронные методы возвращают ( ValueTask или ValueTask ), представляющие упрощенную асинхронную операцию, которая может избежать выделения, если операция завершается синхронно и потенциально даже асинхронно. Кроме того, API предназначен для создания, в том, что создатель канала дает обещания о его предполагаемом использовании. При создании канала с определенными параметрами внутренняя реализация может работать более эффективно, зная эти обещания.

Шаблоны создания

Представьте, что вы создаете решение производителя или потребителя для глобальной системы позиций (GPS). Вы хотите отслеживать координаты устройства с течением времени. Пример объекта координат может выглядеть следующим образом:

/// /// A representation of a device's coordinates, /// which includes latitude and longitude. /// /// A unique device identifier. /// The latitude of the device. /// The longitude of the device. public readonly record struct Coordinates( Guid DeviceId, double Latitude, double Longitude); 
Неподвязанные шаблоны создания

Одним из распространенных шаблонов использования является создание канала без подключения по умолчанию:

var channel = Channel.CreateUnbounded(); 

Но вместо этого предположим, что вы хотите создать несвязанный канал с несколькими производителями и потребителями:

var channel = Channel.CreateUnbounded( new UnboundedChannelOptions < SingleWriter = false, SingleReader = false, AllowSynchronousContinuations = true >); 

В этом случае все записи синхронны, даже WriteAsync те. Это связано с тем, что несвязанный канал всегда имеет доступное место для записи немедленно. Однако при AllowSynchronousContinuations настройке true записи могут в конечном итоге выполнять работу, связанную с читателем, выполняя свои продолжения. Это не влияет на синхронность операции.

Ограниченные шаблоны создания

С ограниченными каналами настройка канала должна быть известна потребителю, чтобы обеспечить надлежащее потребление. То есть потребитель должен знать, какое поведение канал отображает при достижении настроенной привязки. Давайте рассмотрим некоторые распространенные шаблоны создания с ограниченными границами.

Самый простой способ создания привязанного канала — указать емкость:

var channel = Channel.CreateBounded(1); 

Предыдущий код создает ограниченный канал с максимальной емкостью 1 . Доступны другие варианты, некоторые параметры совпадают с несвязанным каналом, а другие относятся к несвязанным каналам:

var channel = Channel.CreateBounded( new BoundedChannelOptions(1_000) < SingleWriter = true, SingleReader = false, AllowSynchronousContinuations = false, FullMode = BoundedChannelFullMode.DropWrite >); 

В приведенном выше коде канал создается как ограниченный канал, который ограничен 1000 элементами с одним средством записи, но многие читатели. Его поведение в полном режиме определяется как DropWrite , что означает, что он удаляет элемент, записанный, если канал заполнен.

Чтобы наблюдать за элементами, которые удаляются при использовании привязанных каналов, зарегистрируйте обратный itemDropped вызов:

var channel = Channel.CreateBounded( new BoundedChannelOptions(10) < AllowSynchronousContinuations = true, FullMode = BoundedChannelFullMode.DropOldest >, static void (Coordinates dropped) => Console.WriteLine($"Coordinates dropped: ")); 

При каждом заполнении канала и добавлении itemDropped нового элемента вызывается обратный вызов. В этом примере предоставленный обратный вызов записывает элемент в консоль, но вы можете выполнить любое другое действие.

Шаблоны производителя

Представьте, что продюсер в этом сценарии записывает новые координаты в канал. Производитель может сделать это, вызвав:TryWrite

static void ProduceWithWhileAndTryWrite( ChannelWriter writer, Coordinates coordinates) < while (coordinates is < Latitude: < 90, Longitude: < 180 >) < var tempCoordinates = coordinates with < Latitude = coordinates.Latitude + .5, Longitude = coordinates.Longitude + 1 >; if (writer.TryWrite(item: tempCoordinates)) < coordinates = tempCoordinates; >> > 

Предыдущий код производителя:

  • Принимает ( Channel.Writer ChannelWriter ) в качестве аргумента, а также инициал Coordinates .
  • Определяет условный while цикл, который пытается переместить координаты с помощью TryWrite .

Альтернативный WriteAsync производитель может использовать метод:

static async ValueTask ProduceWithWhileWriteAsync( ChannelWriter writer, Coordinates coordinates) < while (coordinates is < Latitude: < 90, Longitude: < 180 >) < await writer.WriteAsync( item: coordinates = coordinates with < Latitude = coordinates.Latitude + .5, Longitude = coordinates.Longitude + 1 >); > writer.Complete(); > 

Опять же, используется Channel.Writer в цикле while . Но на WriteAsync этот раз вызывается метод. Метод будет продолжаться только после записи координат. while Когда цикл завершается, вызывается Complete вызов, который сигнализирует о том, что больше данных не записывается в канал.

Другой шаблон производителя — использовать WaitToWriteAsync метод, рассмотрим следующий код:

static async ValueTask ProduceWithWaitToWriteAsync( ChannelWriter writer, Coordinates coordinates) < while (coordinates is < Latitude: < 90, Longitude: < 180 >&& await writer.WaitToWriteAsync()) < var tempCoordinates = coordinates with < Latitude = coordinates.Latitude + .5, Longitude = coordinates.Longitude + 1 >; if (writer.TryWrite(item: tempCoordinates)) < coordinates = tempCoordinates; >await Task.Delay(TimeSpan.FromMilliseconds(10)); > writer.Complete(); > 

В рамках условного while вызова используется результат WaitToWriteAsync вызова, чтобы определить, следует ли продолжать цикл.

Шаблоны потребителей

Существует несколько общих шаблонов потребителей каналов. Если канал никогда не заканчивается, это означает, что он создает данные на неопределенный срок, потребитель может использовать while (true) цикл и читать данные по мере его доступности:

static async ValueTask ConsumeWithWhileAsync( ChannelReader reader) < while (true) < // May throw ChannelClosedException if // the parent channel's writer signals complete. Coordinates coordinates = await reader.ReadAsync(); Console.WriteLine(coordinates); >> 

Этот код создает исключение, если канал закрыт.

Альтернативный потребитель может избежать этой проблемы с помощью вложенного цикла во время выполнения, как показано в следующем коде:

static async ValueTask ConsumeWithNestedWhileAsync( ChannelReader reader) < while (await reader.WaitToReadAsync()) < while (reader.TryRead(out Coordinates coordinates)) < Console.WriteLine(coordinates); >> > 

В приведенном выше коде потребитель ожидает чтения данных. После того как данные будут доступны, потребитель пытается прочитать его. Эти циклы продолжают оцениваться до тех пор, пока производитель канала не сигнализирует о том, что данные больше не будут считываться. При этом, когда производитель, как известно, имеет ограниченное количество элементов, которые он создает, и он сигнализирует о завершении, потребитель может использовать await foreach семантику для итерации элементов:

static async ValueTask ConsumeWithAwaitForeachAsync( ChannelReader reader) < await foreach (Coordinates coordinates in reader.ReadAllAsync()) < Console.WriteLine(coordinates); >> 

Предыдущий ReadAllAsync код использует метод для чтения всех координат из канала.

См. также

  • В .NET show: работа с каналами в .NET
  • Блог .NET: введение в System.Threading.Channel
  • Основы управляемых потоков

Совместная работа с нами на GitHub

Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.

Рекомендуемые настройки для маршрутизаторов и точек доступа Wi-Fi

В целях обеспечения максимальной безопасности, производительности и надежности мы рекомендуем следующие настройки для маршрутизаторов Wi-Fi, базовых станций или точек доступа, используемых в сочетании с продуктами Apple.

Эта статья адресована главным образом сетевым администраторам и всем, кто управляет собственными сетями. Если вы пытаетесь подключиться к сети Wi-Fi, то найдете полезную информацию в одной из этих статей. Подключение к сети Wi-Fi на компьютере Mac Подключение к сети Wi-Fi на iPhone или iPad

Сведения о предупреждениях, связанных с обеспечением конфиденциальности и безопасности на вашем устройстве

  • Если вы являетесь администратором сети Wi-Fi, мы рекомендуем обновить настройки маршрутизатора Wi-Fi, чтобы они соответствовали указанным в этой статье стандартам безопасности или превосходили их.
  • Если вы не являетесь администратором сети Wi-Fi, то можете довести указанные в этой статье рекомендуемые настройки до сведения сетевого администратора.

Настройки маршрутизатора

Для обеспечения защищенного и надежного подключения ваших устройств к сети примените эти настройки последовательно к каждому маршрутизатору и точке доступа Wi-Fi, а также к каждому диапазону двухканального, трехканального или другого многоканального маршрутизатора. Перед изменением настроек необходимо выполнить следующие действия.

  • Сохраните резервную копию текущих настроек на случай, если потребуется их восстановить.
  • Установите последние обновления прошивки маршрутизатора. Обычно это делается из приложения или с веб-страницы, которые используются для администрирования маршрутизатора.
  • Обновите программное обеспечение на других устройствах, таких как компьютер Mac и iPhone или iPad, чтобы установить на них последние обновления системы безопасности и обеспечить наилучшее взаимодействие между этими устройствами.

После изменения настроек может потребоваться удалить сеть из памяти каждого устройства, которое ранее подключалось к этой сети. Таким образом, при повторном подключении к сети на устройстве будут использоваться новые настройки маршрутизатора.

Безопасность

Выберите значение WPA3 Personal, чтобы обеспечить максимальный уровень безопасности
Выберите значение WPA2/WPA3 Transitional для обеспечения совместимости со старыми устройствами

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

  • WPA3 Personal — это самый безопасный на сегодняшний день протокол, доступный для подключения устройств к сети Wi-Fi. Он работает со всеми устройствами, поддерживающими Wi-Fi 6 (802.11ax), а также некоторыми устройствами более ранних моделей.
  • WPA2/WPA3 Transitional — это смешанный режим, при котором используется WPA3 Personal с устройствами, поддерживающими данный протокол, при этом для устройств более ранних моделей доступен протокол WPA2 Personal (AES).
  • WPA2 Personal (AES) подойдет вам, если у вас нет возможности использовать один из более безопасных режимов. В этом случае также рекомендуем выбрать AES в качестве типа шифрования, если он доступен.
Избегайте использования слабых параметров безопасности на вашем маршрутизаторе

Не создавайте сети, использующие старые или устаревшие протоколы безопасности, и не подключайтесь к таким сетям. Они больше не являются защищенными, снижают надежность и пропускную способность сети и могут приводить к отображению предупреждений, связанных с безопасностью вашего устройства:

  • Смешанные режимы WPA/WPA2
  • WPA Personal
  • WEP, в том числе WEP Open, WEP Shared, WEP Transitional Security Network или Dynamic WEP (WEP с поддержкой 802.1X)
  • TKIP, включая любые значения параметров безопасности, содержащие слово TKIP

Кроме того, мы настоятельно не рекомендуем вам использовать параметры, отключающие функции защиты сети, такие как «Без защиты», «Открытая» или «Незащищенная». Деактивация функций защиты отключает аутентификацию и шифрование и позволяет любому устройству подключаться к вашей сети, получать доступ к ее общим ресурсам (включая принтеры, компьютеры и умные устройства), использовать ваше интернет-соединение, следить за тем, какие веб-сайты вы посещаете, и контролировать другие данные, передаваемые через вашу сеть или интернет-соединение. Такое решение сопряжено с риском, даже если функции безопасности отключены временно или для гостевой сети.

Имя сети (SSID)

Задайте одно уникальное имя (с учетом регистра) для всех диапазонов

Имя сети Wi-Fi или SSID (идентификатор набора услуг) — это имя, которое ваша сеть использует для сообщения о своей доступности другим устройствам. То же имя находящиеся поблизости пользователи видят в списке доступных сетей своего устройства.

  • Убедитесь, что все маршрутизаторы в сети используют одно имя для каждого диапазона, который они поддерживают. Если вы дадите диапазонам 2,4 ГГц, 5 ГГц или 6 ГГц разные имена, устройства не смогут должным образом подключиться к вашей сети, ко всем маршрутизаторам в вашей сети или ко всем доступным диапазонам ваших маршрутизаторов. Если маршрутизатор предоставляет доступ к сети Wi-Fi 6E, которая не использует одно имя для всех диапазонов, устройства Apple, поддерживающие Wi-Fi 6E, будут идентифицировать сеть как имеющую ограниченную совместимость.
  • Используйте уникальное для сети имя. Не используйте распространенные или заданные по умолчанию имена, такие как linksys, netgear, dlink, wireless или 2wire. В противном случае устройства, которые подключаются к вашей сети, могут обнаружить другие сети с таким же именем, а затем автоматически пытаться подключиться к ним.

Скрытая сеть

Задайте значение «Отключено»

Маршрутизатор можно настроить так, чтобы он скрывал свое имя сети (SSID). Ваш маршрутизатор может некорректно использовать обозначение «закрытая» вместо «скрытая» и «транслируется» вместо «не скрытая».

Скрытие имени сети не предотвращает ее обнаружение и не защищает ее от несанкционированного доступа. В связи с особенностями алгоритма, который устройства используют для поиска сетей Wi-Fi и подключения к ним, использование скрытой сети может привести к разглашению идентифицирующей информации о вас и используемых вами скрытых сетях, таких как ваша домашняя сеть. При подключении к скрытой сети на вашем устройстве может отображаться предупреждение об угрозе конфиденциальности.

В целях обеспечения безопасности доступа к вашей сети рекомендуем использовать соответствующие настройки безопасности.

Фильтрация MAC-адресов, аутентификация, контроль доступа

Задайте значение «Отключено»

Включите эту функцию для настройки маршрутизатора таким образом, чтобы он допускал подключение к сети исключительно устройств с определенными MAC-адресами (управление доступом к среде). Включение данной функции не гарантирует защиты сети от несанкционированного доступа по следующим причинам.

  • Она не препятствует сетевым наблюдателям отслеживать или перехватывать трафик сети.
  • MAC-адреса можно легко скопировать, подделать (имитировать) или изменить.
  • Чтобы защитить конфиденциальность пользователей, некоторые устройства Apple используют разные MAC-адреса для каждой сети Wi-Fi.

В целях обеспечения безопасности доступа к вашей сети рекомендуем использовать соответствующие настройки безопасности.

Автоматическое обновление прошивки

Задайте значение «Включено»

Если возможно, настройте маршрутизатор таким образом, чтобы производилась автоматическая установка обновлений программного обеспечения и прошивки по мере их появления. Эти обновления могут повлиять на доступные вам настройки безопасности и обеспечивают оптимизацию стабильности, производительности и безопасности вашего маршрутизатора.

Радиорежим

Задайте значение «Все» (рекомендуется) либо «Wi-Fi 2 – Wi-Fi 6» или более поздней версии

Настройки радиорежима, доступные отдельно для диапазонов 2,4 ГГц, 5 ГГц и 6 ГГц, определяют, какие версии стандарта Wi-Fi маршрутизатор использует для беспроводной связи. Более новые версии предлагают оптимизированную производительность и поддерживают одновременное использование большего количества устройств.

В большинстве случаев оптимальным решением является включение всех режимов, доступных для вашего маршрутизатора, а не какого-то ограниченного набора таких режимов. В таком случае все устройства, в том числе устройства более поздних моделей, смогут подключаться к наиболее скоростному поддерживаемому ими радиорежиму. Это также поможет сократить помехи, создаваемые устаревшими сетями и устройствами, находящимися поблизости.

Диапазоны

Включите все диапазоны, поддерживаемые вашим маршрутизатором

Диапазон Wi-Fi подобен улице, по которой перемещаются данные. Чем больше диапазонов, тем больше объем передаваемых данных и производительность вашей сети.

Канал

Задайте значение «Авто»

Каждый диапазон вашего маршрутизатора разделен на несколько независимых каналов связи, подобных полосам движения на проезжей части. Когда установлен автоматический выбор канала, ваш маршрутизатор выбирает оптимальный канал Wi-Fi за вас.

Если ваш маршрутизатор не поддерживает автоматический выбор канала, выберите тот канал, который лучше всего работает в вашей сетевой среде. Это зависит от помех Wi-Fi в вашей сетевой среде, в том числе от помех, создаваемых любыми другими маршрутизаторами и устройствами, использующим тот же канал. Если у вас несколько маршрутизаторов, настройте каждый так, чтобы он использовал отдельный канал, особенно если маршрутизаторы расположены близко друг к другу.

Ширина канала

Задайте значение «20 МГц» для диапазона 2,4 ГГц
Задайте значение «Авто» или «Каналы любой ширины» для диапазонов 5 ГГц и 6 ГГц

Настройка ширины канала определяет ширину полосы пропускания, доступную для передачи данных. Более широкие каналы отличаются более высокой скоростью, однако они в большей степени подвержены помехам и могут мешать работе других устройств.

  • 20 МГц для диапазона 2,4 ГГц помогает избежать проблем с производительностью и надежностью, особенно вблизи других сетей Wi-Fi и устройств 2,4 ГГц, включая устройства Bluetooth.
  • Режимы «Авто» или «Каналы любой ширины» для диапазонов 5 ГГц и 6 ГГц обеспечивают наилучшую производительность и совместимость со всеми устройствами. Помехи беспроводной связи в этих диапазонах вызывают меньше проблем.

DHCP

Задайте значение «Включено», если ваш маршрутизатор является единственным DHCP-сервером в сети

DHCP (протокол динамической конфигурации хоста) назначает IP-адреса устройствам в вашей сети. Каждый IP-адрес идентифицирует устройство в сети и позволяет ему обмениваться данными с другими устройствами в сети и через Интернет. Сетевому устройству нужен IP-адрес, подобно тому как телефону нужен номер телефона.

В вашей сети может быть только один DHCP-сервер. Если DHCP-сервер включен более чем на одном устройстве (например, на кабельном модеме и маршрутизаторе), конфликты адресов могут помешать некоторым устройствам подключаться к Интернету или использовать сетевые ресурсы.

Время аренды DHCP

Задайте значение «8 часов» для домашних или офисных сетей, «1 час» для точек доступа или гостевых сетей

Время аренды DHCP — это время, в течение которого IP-адрес, назначенный устройству, зарезервирован для этого устройства.

Маршрутизаторы Wi-Fi обычно имеют ограниченное количество IP-адресов, которые они могут назначать устройствам в сети. Если это количество исчерпано, маршрутизатор не может назначать IP-адреса новым устройствам, и эти устройства не могут связываться с другими устройствами в локальной сети и в Интернете. Сокращение времени аренды DHCP позволяет маршрутизатору быстрее восстанавливать и переназначать старые IP-адреса, которые больше не используются.

NAT

Задайте значение «Включено», если ваш маршрутизатор является единственным устройством, реализующим функцию NAT в сети

NAT (преобразование сетевых адресов) — это преобразование адресов в Интернете в адреса в вашей сети. NAT можно сравнить с почтовым отделом компании, который распределяет отправления в адрес сотрудников, направленные по почтовому адресу компании, по кабинетам этих сотрудников внутри здания.

В большинстве случаев NAT требуется включить только на маршрутизаторе. Если функция NAT включена более чем на одном устройстве (например, на кабельном модеме и маршрутизаторе), «дублирование NAT» может привести к потере устройствами доступа к определенным ресурсам в локальной сети или в Интернете.

WMM

Задайте значение «Включено»

WMM (Wi-Fi multimedia) определяет приоритет сетевого трафика для повышения производительности различных сетевых приложений, таких как видео и голосовая связь. На всех маршрутизаторах, поддерживающих Wi-Fi 4 (802.11n) или более поздней версии, функция WMM должна быть включена по умолчанию. Отключение WMM может повлиять на производительность и надежность устройств в сети.

Функции устройства, которые могут влиять на соединения Wi-Fi

Эти функции могут повлиять на настройку маршрутизатора или подключенных к нему устройств.

Частный адрес Wi-Fi

Если вы подключаетесь к сети Wi-Fi с iPhone, iPad или Apple Watch, узнайте об использовании частных адресов Wi-Fi на таких устройствах.

Службы геолокации

Убедитесь, что на вашем устройстве включены службы геолокации для сети Wi-Fi, поскольку разрешенные каналы Wi-Fi и уровни мощности беспроводного сигнала в каждой стране или регионе определяются местными нормативно-правовыми актами. Использование служб геолокации обеспечивает стабильное обнаружение устройств рядом с вашим устройством и подключение к ним, а также надежную работу вашего устройства при использовании функций, зависящих от Wi-Fi, например AirPlay или AirDrop.

На компьютере Mac с macOS Ventura или более поздней версии

  1. Перейдите в меню Apple  > «Системные настройки», затем выберите «Конфиденциальность и безопасность» в боковом меню.
  2. Нажмите «Службы геолокации» справа.
  3. Прокрутите список приложений и служб до конца, затем нажмите кнопку «Подробнее» рядом с пунктом «Системные службы».
  4. Включите «Передача данных и беспроводные сети» и нажмите «Готово».

На компьютере Mac с macOS Monterey или более ранней версии

  1. Перейдите в меню Apple  > «Системные настройки» и выберите «Защита и безопасность».
  2. Нажмите значок замка в углу окна, затем введите пароль администратора.
  3. На вкладке «Конфиденциальность» выберите «Службы геолокации», в затем «Включить службы геолокации».
  4. Прокрутите список программ и служб до конца, затем нажмите кнопку «Подробнее» рядом с пунктом «Системные службы».
  5. Выберите «Передача данных и беспроводные сети» (или «Сети Wi-Fi»), затем нажмите «Готово».

На устройстве iPhone или iPad

  1. Перейдите в раздел «Настройки» > «Конфиденциальность и безопасность» (или «Конфиденциальность») > «Службы геолокации».
  2. Включите параметр «Службы геолокации».
  3. Перейдите в конец списка, затем нажмите «Системные службы».
  4. Включите функцию «Сеть и беспроводная сеть» (или «сеть Wi-Fi»).

Автоподключение при использовании с беспроводными сетями Wi-Fi, обслуживаемыми операторами сотовой связи

Беспроводные сети Wi-Fi — это общедоступные сети, созданные вашим оператором беспроводной связи и его партнерами. Ваш iPhone или другое сотовое устройство Apple обрабатывают их как известные сети и автоматически подключаются к ним.

Если вы видите «Предупреждение конфиденциальности» под названием сети вашего оператора в настройках Wi-Fi, идентифицирующая информация о вашем сотовом устройстве может быть разглашена, если ваше устройство подключится к вредоносной точке доступа, имитирующей Wi-Fi вашего оператора. Чтобы избежать этого, вы можете запретить вашему iPhone или iPad автоматически подключаться к сети Wi-Fi вашего оператора:

  1. Выберите «Настройки» > Wi-Fi.
  2. Нажмите рядом с сетью оператора сотовой связи.
  3. Отключите автоподключение.

Информация о продуктах, произведенных не компанией Apple, или о независимых веб-сайтах, неподконтрольных и не тестируемых компанией Apple, не носит рекомендательного или одобрительного характера. Компания Apple не несет никакой ответственности за выбор, функциональность и использование веб-сайтов или продукции сторонних производителей. Компания Apple также не несет ответственности за точность или достоверность данных, размещенных на веб-сайтах сторонних производителей. Обратитесь к поставщику за дополнительной информацией.

Этот сложный Google Analytics: чем он поможет собственнику бизнеса

Андрей Рожков, Веб-аналитик

22 мая 2019

Собственнику бизнеса или директору компании непросто разобраться в Google Analytics, когда помимо продвижения у него есть другие важные задачи. От умения работать с данными, оценивать эффективность источников и оперативно вносить корректировки зависит успех проекта — нельзя просто отмахнуться от статистики или спихнуть на подрядчика работу с цифрами, если вы хотите понимать, куда уходит ваш рекламный бюджет и где находятся потенциальные точки роста.

Трафик для сайта — основная ценность, но чем он больше, тем сложнее его анализировать. Система Google Analytics позволяет делать анализ по источникам трафика, то есть источникам площадок, откуда пользователи перешли на ваш сайт.

Источников трафика у небольшого сайта немного: поисковые системы, социальные сети, органический и платный трафик. На сайтах с большой посещаемостью количество источников может достигать нескольких сотен: e-mail-рассылки, партнерские сети, прайс-агрегаторы, платный трафик с других ресурсов и так далее. Как анализировать эти данные, чтобы грамотно принимать управленческие решения?

Из чего состоит отчет «Источник/канал»

Предположим, что с технической стороны Google Analytics уже настроена, данные собираются корректно — нам остается их оценить и сделать соответствующие выводы. Отчеты в GA не только определяют и группируют показатели, но и представляют данные наглядно, что важно для отслеживания эффективности рекламных кампаний.

Прежде всего обратите внимание на отчет в системе в группе «Источники трафика» — отчет «Источник/канал» в подгруппе «Весь трафик», в котором собираются и группируются данные о входящем трафике сайта на основе UTM-меток.

Отчет состоит из двух блоков — «Верхний» и «Нижний».

В верхнем блоке есть возможность выбрать сегмент пользователей — по умолчанию это все пользователи, и временной промежуток, а также сохранить, выгрузить или изменить текущий отчет.

Сегмент — это часть трафика, объединенная общим признаком. Ниже в этом блоке находится графическая визуализация данных: можно выбрать до двух показателей и на графике отслеживать их зависимость друг от друга. Данные просматриваем в разбивке «день, неделя или месяц».

Нижний блок представлен в виде таблицы.

  • Organic — люди, пришедшие из поисковых систем;
  • Direct — прямые заходы на сайт;
  • Social — переходы из социальных сетей;
  • Referral — переходы по партнерским ссылкам;
  • Google — пользователи, перешедшие с поисковой системы Google;
  • Yandex — пользователи, перешедшие с поисковой системы Яндекс;
  • Cpm — трафик по модели оплаты за 1 000 показов;
  • Cpc — трафик по модели оплаты за один клик.
  • Пользователи — сколько пришло с этого источника или канала;
  • Новые пользователи — какое количество было на сайте впервые;
  • Сеансы — сколько сессий взаимодействия с сайтом было среди всех пользователей (например, сеанс 4 показывает, что один пользователь заходил на сайт 4 раза);
  • Показатель отказов — по умолчанию, отказом в GA считается посещение, в котором не были достигнуты цели рекламного размещения;
  • Страниц/сеанс — количество страниц сайта, просматриваемых пользователями за посещение;
  • Средняя длительность сеанса — время, которое пользователь находится на сайте.

  • Коэффициент транзакций/конверсии цели(CR) — какой процент пользователей совершает покупку или достигает цель;
  • Транзакции/Достигнутые цели — количество покупок/достижение цели;
  • Доход/Ценность цели — сумма заказов покупателей.

Есть фильтрация по заданным правилам.

В примере — оставим в отчете только данные с моделью оплаты «за клик».
В отчете «Источник/канал» данные представляются в разном виде:

  • Данные — в виде описанной выше таблицы;
  • Распределение — в виде круговой диаграммы:

  • Эффективность — наглядное представление по эффективности каналов:

  • Сравнение — похоже на «Эффективность», но сравнение идет относительно среднего значения сайта:

Оцениваем эффективность рекламы

Например, интернет-магазин в прошлом месяце запустил Google Рекламу с целью получить дополнительные продажи. Проанализируем, насколько успешно прошла рекламная кампания.

  1. Формируем отчет «Источник/Канал».
  2. Выбираем дополнительный параметр «Кампания». В качестве конверсий — «Электронную торговлю» и в столбце «Источник или канал» — google/cpc.
  3. В отчете видим, что за месяц Google Реклама принесла 11 транзакций на сумму 1 106,34 $. При этом транзакций по всем источникам было 57, а общий доход составил 3 263,94 $. Следовательно, Google Реклама принесла 19 % транзакций и 34 % дохода.

Мы запустили 9 рекламных кампаний. Как понять, какие из них лучше работают, а где требуются корректировки?

  1. Выбрать кампании, в которых накопилась достаточная статистика для анализа — условимся, что в нашем случае это не менее 100 пользователей за период.
  2. Посмотреть на показатель отказов: предельные допустимые значения — 55-65 %; если показатель отказов выше, то скорее всего рекламная кампания не отвечает на вопрос пользователя или предложение стоит доработать.
  3. Оценить коэффициент транзакции — в нашем случае, в среднем по всем источникам — 0,3 % и количество транзакций.
  • Лучше всего работает кампания AW — Apparel (приемлемый CR, наибольшее количество транзакций, максимальный доход);
  • Положительными результатами также обладают кампании AW — Google Brand и AW — Bags (получают конверсии и доход);
  • Кампании, требующие срочной оптимизации: AW — YouTube и AW — Office, по которым за месяц пришло 862 пользователя, не принеся при этом ни одной транзакции.

Благодаря отчету, сформированному за несколько минут, собственник бизнеса или директор может оценить рекламные размещения, работу сотрудника или подрядчика и спланировать бюджет на будущие.

Распределяем бюджет между площадками

Наша цель — получение максимального количества заявок с сайта. Необходимо распределить рекламный бюджет на следующий месяц.

Мы размещаемся в Google Рекламе и Яндекс.Директ. Допустим, что в предыдущем месяце инвестировали в каждую площадку по 100 000 рублей, а в этом появился дополнительный бюджет в размере 50 000. Куда их стоит вложить?

Формируем отчет аналогично предыдущему примеру, только в качестве цели выбираем заявку.

Яндекс.Директ принес 144 из 243 заявок, что составило 59 % от общего количества, а Google Реклама — 99 из 243 (41 %). При этом в Яндексе трафик имеет больший коэффициент конверсии — 0,81 % против 0,64 %, а с учетом того, что мы потратили одинаковое количество денег на обе площадки, стоимость заявки на Яндексе получилась дешевле. Эти данные говорят о том, что бюджет нужно увеличить именно на Директ.

Чтобы быть уверенным в своем решении, стоит дополнительно погрузиться в отчет на уровень кампаний, как в предыдущем примере, и проанализировать работу каждой кампании отдельно.

Резюме

Отчет «Источник/канал» позволяет детально оценивать эффективность источников трафика и содержит основные данные для их анализа и оптимизации. Рекомендую потратить несколько часов на его освоение, чтобы потом самостоятельно и быстро оценивать результаты вашей интернет-рекламы, планировать бюджет, следить за конверсиями и принимать полезные для бизнеса решения, основанные на цифрах, а не на интуиции, догадках и предположениях.

Стоит отметить, что при оптимизации рекламных кампаний нужно оценивать не только количество заявок, но и их стоимость и прибыль, которую они несут бизнесу.

Статья подготовлена специально для «Делового мира» и впервые опубликована здесь.

Собственные группы каналов в Google Analytics

Контекстная, таргетированная реклама и веб-аналитика

Прежде чем понять, что из себя представляют собственные группы каналов в Google Analytics, разберем еще раз два базовых термина в веб-аналитике — источник и канал.

Источник – последний ресурс, который посетил пользователь, прежде чем перейти к вашему контенту. Например, через поисковую систему Яндекс или по объявлению платной рекламы в Google AdWords. Канал – тип источника. Например, органический поиск (organic), платная реклама (cpc), переход с другого сайта (referral) и т.д.

В Google Analytics заложено 9 стандартных каналов по умолчанию:

  1. Direct — прямой трафик (переход на сайт через прямой ввод домена в адресную строку браузера или через закладки и сохраненные страницы);
  2. Organic Search — поисковый трафик из органической выдачи;
  3. PaidSearch – поисковый трафик с платных каналов (контекстная реклама);
  4. Social — трафик из социальных сетей;
  5. Email — трафик с email-рассылок;
  6. Affiliates — трафик с сайтов-партнеров;
  7. Referral — трафик переходов с сайтов;
  8. Display – медийная/баннерная реклама;
  9. Other Advertising – трафик, который система не смогла распознать (other в отчетах).

Все эти каналы составляют группу каналов, которая в Analytics называется группа каналов по умолчанию «Default Channel Grouping». Посмотреть как она выглядит можно на уровне представления в разделе «Настройки канала – Группа канала».

Группы каналов Google Analytics

Default Channel Grouping

Нажав на название группы, внутри вы увидите все доступные с набором правил и метки, которые будут отображаться в отчетах. Обозначение цвета используется в отчетах по многоканальным последовательностям.

В Google Analytics на стандартные группы каналов распространяются правила, определенные системой.

Группы каналов Google Analytics

Канал, определенный системой

Вы можете редактировать группы по умолчанию, добавлять новые и удалять существующие каналы, а также изменять определения правил. Отредактировать само системное определение (Канал, определенный системой) нельзя, но можно переопределить параметры его каналов.

В Google Analytics есть возможность создания групп каналов двумя способами:

  • создание собственной группы каналов (на уровне пользователя);

Группы каналов Google Analytics

Собственные группы каналов на уровне пользователя

У одного пользователя может быть до 100 собственных групп каналов. При создании новой вы можете применить ее к историческим данным.

Группы каналов Google Analytics

Настройки канала на уровне представления

В представлении можно создать не более 50 групп каналов. Когда вам дают ограниченный доступ управления ресурсом, создание новой группы каналов на уровне представления не всегда доступно. В этом случае можно воспользоваться первым способом и создать собственную группу каналов, а затем применить ее в отчетах по многоканальным последовательностям и в «Источники трафика – Обзор» или «Источники трафика – Весь трафик — Каналы».

Любые изменения в группе каналов по умолчанию:

  • необратимо изменяют классификацию трафика в Google Analytics;
  • видны всем пользователям представления;
  • не применяются к историческим данным о трафике.

В настройках канала доступна функция «Управление названиями брендов». Она позволяет анализировать эффективность брендированной и небрендированной платной рекламы, а также различных ключевых слов для получения конверсий.

В качестве примера рассмотрим:

  1. создание собственной группы каналов, в которую будут входить данные по рассылкам сервиса Getresponse и рекламы в Яндекс.Директ и Google AdWords;
  2. копирование группы каналов по умолчанию. Все названия источников переведем на русский язык, чтобы в отчетах было проще ориентироваться;
  3. создание каналов с помощью управления названиями брендов.

Создание собственной группы каналов

Переходим в нужное представление и раздел «Собственные группы каналов (BETA. Нажимаем +НОВАЯ ГРУППА КАНАЛОВ.

Вводим название и определяем правилами наши каналы.

Группы каналов Google Analytics

Определение собственных правил

В нашем примере – это простые параметры «Источник или канал» и тип точного соответствия или содержит (как на скриншоте выше) для e-mail рассылок Getresponse, имеющих собственную utm-метку.

Выбираем отображаемый цвет для отчетов по многоканальным последовательностям и в графе Просмотр видим конечный результат. Аналогично создаем два других канала для Яндекс.Директ и Google AdWords. При определении правила мы можем добавить дополнительное условие ИЛИ/И.

Группы каналов Google Analytics

Дополнительные условия отображаемый цвет канала

Перемещая правила, можно настроить порядок их применения. Правила обрабатываются в порядке их перечисления; каждая группа каналов должна содержать хотя бы одну метку. Все каналы, не вошедшие в первое правило (т. е. в первую метку), включаются во второе, если оно задано. Каналы, не вошедшие во второе правило (т. е. во вторую метку), включаются в третье, если оно задано. Все каналы, оставшиеся после применения всех правил, включаются в метку Другое (Other).

Сохраняем нашу группу. В результате мы получили пользовательскую группу каналов с возможностью изменения, копирования, удаления, продвижения и импорта в галерею решений Google Analytics. При отправке собственной группы каналов публикуется только конфигурация. Конфиденциальность ваших данных не будет нарушена.

Группы каналов Google Analytics

Действия с группами каналов

Продвижение – это возможность предоставить доступ к собственной группе каналов на уровне представления, то есть если вы откроете доступ, то будет создана копия этой группы каналов в разделе «Настройки канала».

Группы каналов Google Analytics

Доступ к группе каналов на уровне представления

Теперь мы сможем просмотреть данные по созданным каналам в отчетах. Переходим в «Источники трафика – Весь трафик — Каналы» и в качестве основного параметра выбираем нашу пользовательскую группу каналов.

Группы каналов Google Analytics

«Источники трафика — Весь трафик — Канал»

В отчетах «Ассоциированные конверсии» и «Основные пути конверсии» раздела «Конверсии» изначально используется группа каналов для многоканальных последовательностей по умолчанию. Чтобы увидеть данные по собственной группе каналов, просто измените основной параметр.

Группы каналов Google Analytics

Отчет «Основные пути конверсии»

Копирование группы каналов по умолчанию

Теперь рассмотрим пример копирования уже существующей группы каналов «Default Channel Grouping» с переименованием основных источников. Для этого на уровне представления переходив в «Настройки канала – Группа каналов».

Группы каналов Google Analytics

Копирование группы каналов

Вводим название (у меня это Группа каналов RU) и при выборе канала, определенного системой, нам сам Google Analytics показывает совпадения на русском языке. Остается только просто вручную переименовать 9 полей. При желании можно изменить отображаемые цвета.

Группы каналов Google Analytics

Русификация группы каналов

Нажимаем Сохранить. В отчетах по каналам или обзоре при выборе нашей скопированной группы каналов все источники будут отображаться на русском языке, также как мы их переименовали.

Группы каналов Google Analytics

Отчет «Источники трафика — Обзор»

Управление названиями брендов

С помощью брендированных и небрендированных каналов вы можете более точно проанализировать эффективность рекламных кампаний на предмет высокого или низкого значения CTR, цены за клик и конверсиям, которые были осуществлены по последнему взаимодействию или ассоциированным конверсиям.

Чтобы создать такую группу, переходим на уровне представления в «Настройки канала – Управление названиями брендов».

Группы каналов Google Analytics

Настройки канала — Управление названиями брендов

В поле рекомендованные на основании накопленной статистики по рекламным кампаниям Google предлагает использовать некоторые названия брендов. Одно из них он определил верно.

Рекомендации по выбору названий:

  • включайте в список названия брендов с орфографическими ошибками;

Например, в дополнение к google укажите названия gogole и googel.

  • не добавляйте различные варианты написания заглавных букв, поскольку эта функция не учитывает регистр символов.

Например, названия Google и google обрабатываются одинаково.

  • Не добавляйте формы множественного числа, поскольку в этой функции используется сопоставление содержит. Это означает, что брендированным будет признан каждый запрос, в любом месте которого встречается название бренда.

Например, название adword соответствует терминам adwords и google adword.

В поле Укажите названия брендов вводите на каждой строке один из вариантов написания, а далее добавление их в список активных через кнопку Добавить названия брендов.

Группы каналов Google Analytics

Добавление названий брендов

После сохранения нас попросят создать каналы. Нажимаем Yes, set up now.

Группы каналов Google Analytics

Настройка каналов для брендов

Нас уведомляют о том, что каналы брендированной и небрендированный рекламы созданы автоматически.

Группы каналов Google Analytics

Каналы созданы автоматически

Теперь ваша поисковая реклама будет автоматически делиться на два канала: брендовый трафик (по умолчанию — Branded Paid Search):

Группы каналов Google Analytics

Branded Paid Search

и весь остальной (Generic Paid Search):

Группы каналов Google Analytics

Generic Paid Search

Примечание: новые каналы Branded Paid Search и Generic Paid Search создались в группе каналов по умолчанию Default Channel Grouping. А Google сверху нас предупреждает, что любое изменение группы каналов по умолчанию для представления приводит к необратимому изменению модели классификации нового трафика. Статистика при этом сохраняется. Чтобы изменить отображение данных в отчетах, не затрагивая сами данные, создайте новую группу каналов.

Группы каналов Google Analytics

Поэтому лучше создать отдельную группу каналов и добавить туда два новых трафика (брендированный и весь остальной). Через 24 часа в отчетах Google Analytics вы увидите разделение трафика по каналам уже с новыми названиями.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *