Разработчик (и) | Microsoft |
---|---|
Первоначальный выпуск | октябрь 2001 г.; 19 лет назад (2001-10) |
Стабильный выпуск | 10.3 / 7 декабря 2019 г.; 10 месяцев назад (07.12.2019) |
Операционная система | Microsoft Windows |
Тип | Менеджер загрузки |
Лицензия | Собственное ПО коммерческое программное обеспечение |
Веб-сайт | docs.microsoft.com / en-us / windows / win32 / bits / background-intelligent-transfer-service-portal |
Фоновая интеллектуальная служба передачи (BITS) - это компонент Microsoft Windows XP и более поздних версий операционных систем, который обеспечивает асинхронную, приоритетную и регулируемую передачу файлов между машинами с использованием пропускной способности сети в режиме ожидания. Чаще всего он используется в последних версиях Центра обновления Windows, Центра обновления Майкрософт, Службы обновления Windows Server и System Center Configuration Manager для доставлять обновления программного обеспечения клиентам, антивирусный сканер Microsoft Microsoft Security Essentials (более поздняя версия Защитника Windows ) для получения обновления подписи, а также используется продуктами обмена мгновенными сообщениями Microsoft для передачи файлов. BITS предоставляется через компонентную объектную модель (COM).
BITS использует неактивную полосу пропускания для передачи данных. Обычно BITS передает данные в фоновом режиме, то есть BITS будет передавать данные только тогда, когда есть пропускная способность, которая не используется другими приложениями. BITS также поддерживает возобновление переводов в случае сбоев.
BITS версии 1.0 поддерживает только загрузки. Начиная с версии 1.5 BITS поддерживает как загрузку, так и выгрузку. Для загрузки требуется веб-сервер IIS с расширением сервера BITS на принимающей стороне.
BITS передает файлы от имени запрашивающих приложений асинхронно, то есть, как только приложение запрашивает у службы BITS передачу, оно может выполнить любую другую задачу или даже завершить работу. Передача будет продолжаться в фоновом режиме, пока есть сетевое соединение и владелец задания находится в системе. Задания BITS не передаются, если владелец задания не вошел в систему
BITS приостанавливает любую текущую передачу, когда сеть соединение потеряно или операционная система выключена. Он возобновляет передачу с того места, где она была прервана, когда (компьютер включается позже и) сетевое соединение восстанавливается. BITS поддерживает передачу по SMB, HTTP и HTTPS.
BITS пытается использовать только резервную полосу пропускания. Например, когда приложения используют 80% доступной полосы пропускания, BITS будет использовать только оставшиеся 20%. BITS постоянно контролирует сетевой трафик на предмет увеличения или уменьшения сетевого трафика и ограничивает свои собственные передачи, чтобы гарантировать, что другие приложения переднего плана (такие как веб-браузер ) получают необходимую им полосу пропускания. Обратите внимание, что BITS не обязательно измеряет фактическую пропускную способность. BITS версии 3.0 и выше будет использовать счетчики Internet Gateway Device, если они доступны, для более точного расчета доступной полосы пропускания. В противном случае BITS будет использовать скорость, указанную NIC для расчета пропускной способности. Это может привести к ошибкам расчета пропускной способности, например, когда быстрый сетевой адаптер (10 Мбит / с) подключен к сети через медленный канал (56 кбит / с).
BITS использует очередь для управления передачей файлов. Сеанс BITS должен быть запущен из приложения путем создания задания. Задание - это контейнер, в котором есть один или несколько файлов для передачи. Вновь созданное задание пусто. Файлы должны быть добавлены, указав как исходный, так и целевой URI. В то время как задание загрузки может иметь любое количество файлов, задание загрузки может иметь только один. Свойства могут быть установлены для отдельных файлов. Задания наследуют контекст безопасности приложения, которое их создает. BITS предоставляет API доступ для управления заданиями. Задание можно запускать, останавливать, приостанавливать, возобновлять и запрашивать состояние программным способом. Перед запуском задания необходимо установить приоритет, чтобы указать, когда задание обрабатывается относительно других заданий в очереди передачи. По умолчанию все задания имеют нормальный приоритет. Заданиям можно дополнительно установить высокий, низкий или приоритетный приоритет. Фоновая передача оптимизируется с помощью BITS, 1 который увеличивает и снижает (или ограничивает) скорость передачи в зависимости от доступной пропускной способности сети. Если сетевое приложение начинает потреблять больше полосы пропускания, BITS снижает скорость передачи, чтобы сохранить интерактивность пользователя, за исключением загрузок с приоритетом переднего плана.
BITS планирует каждое задание получать только конечный временной интервал, для которого разрешена передача только этого задания, прежде чем оно будет временно приостановлено, чтобы дать другой работе шанс перейти. Задания с более высоким приоритетом получают больший отрезок времени. BITS использует циклическое планирование для обработки заданий с одинаковым приоритетом и предотвращения блокировки более мелких заданий большим заданием передачи.
Когда задание создается заново, оно автоматически приостанавливается (или приостанавливается). Для активации его нужно явно возобновить. При возобновлении задание переводится в состояние очереди. В свою очередь для передачи данных он сначала подключается к удаленному серверу, а затем начинает передачу. По истечении временного интервала задания передача временно приостанавливается, а задание возвращается в состояние очереди. Когда задание получает другой временной интервал, оно должно снова подключиться, прежде чем оно сможет передать. Когда задание завершено, BITS передает право владения заданием приложению, которое его создало.
BITS включает встроенный механизм для обработки ошибок и попыток восстановления. Ошибки могут быть фатальными или временными; либо переводит задание в соответствующее состояние. Временная ошибка - это временная ошибка, которая разрешается через некоторое время. В случае временной ошибки BITS ждет некоторое время, а затем повторяет попытку. В случае фатальных ошибок BITS передает управление заданием создавающему приложению с максимально возможной информацией об ошибке.
Microsoft предоставляет служебную программу администрирования BITS (BITSAdmin
) с командной строкой утилита для управления заданиями BITS. Утилита входит в состав Windows Vista и более поздних версий. Он также доступен как часть средств поддержки Windows XP с пакетом обновления 2 или средств поддержки с пакетом обновления 1 для Windows Server 2003.
Пример использования:
C: \>bitsadmin / transfer myDownloadJob / download / priority обычный https://example.com/file.zip C: \ file.zip
В Windows 7 утилита BITSAdmin
устарела в пользу командлетов Windows PowerShell. Модуль BitsTransfer
PowerShell предоставляет восемь командлетов для управления заданиями BITS.
Следующий пример эквивалентен приведенному выше примеру BITSAdmin:
Start-BitsTransfer -Source "https: / /example.com/file.zip "-Destination" C: \ file.zip "-DisplayName" myDownloadJob "
Wikibooks есть книга по теме: Руководство по командам Windows |