Способ выдачи веб-страниц на оборудование пользователя, а также предназначенная для этого система



Способ выдачи веб-страниц на оборудование пользователя, а также предназначенная для этого система
Способ выдачи веб-страниц на оборудование пользователя, а также предназначенная для этого система
Способ выдачи веб-страниц на оборудование пользователя, а также предназначенная для этого система
Способ выдачи веб-страниц на оборудование пользователя, а также предназначенная для этого система

 


Владельцы патента RU 2571577:

ООО "Битрикс" (RU)

Настоящее изобретение относится к компьютерной технике, а именно к системам управления содержанием веб-страниц. Технический результат заключается в возможности быстрой выдачи веб-страниц пользователю и достигается за счет применения в веб-страницах динамических частей, которые обрабатываются на оборудовании пользователя. При первом обращении пользователя к веб-странице веб-сервером выполняется программный код с формированием html-кода, включающего html-код статической части и html-код динамических частей. Осуществляется выдача веб-сервером html-кода веб-страницы оборудованию пользователя. Обнаруживают веб-сервером в html-коде динамические части и заменяют их на JS-скрипт с формированием композитного кода. Сохраняют композитный код в запоминающем устройстве. JS-скрипт содержит предписание на получение актуального кода динамических частей с веб-сервера. При повторных обращениях оборудования пользователя к веб-странице осуществляется выдача веб-сервером оборудованию пользователя композитного кода из запоминающего устройства. Браузер в устройстве пользователя отображает указанные динамические части в соответствующих полях уже выведенной статической части веб-страницы. 2 н. и 14 з.п. ф-лы, 4 ил.

 

Область техники

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

Уровень техники

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

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

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

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

Управление сайтами, содержащими контент динамического вида, традиционно строится с использованием CMS-систем (система управления контентом от англ. Content Management System). CMS-система - это компьютерная программа, предоставляющая разработчикам сайта удобные инструменты для хранения и публикации текстового, графического и прочего наполнения сайта. Такие системы облегчают задачу управления контентом для неквалифицированных в программировании сотрудников компаний и владельцев сайтов.

Одной из особенностей CMS-системы является то, что работа с ней не требует установки какого-либо дополнительного программного обеспечения на компьютер, с которого ведется работа с сайтом. Сама CMS-система размещена на сервере провайдера, и пользователю достаточно иметь обычный браузер для того, чтобы получить доступ к сайту и управлять им. При редактировании/добавлении контента на сайт пользователь оперирует простыми и понятными ему инструментами, не прибегая к html-коду или программному код у. К числу указанных инструментов относятся, в частности, административные разделы, модули, компоненты с шаблонами и пр.

Основными инструментами для вывода информации на страницы сайта, созданного CMS-системой, являются компоненты с шаблонами. Указанные компоненты - это программный код, отвечающий за взаимодействие CMS-системы и управляемой компонентом информацией. Шаблон компонента - это своего рода оболочка, отвечающая за форму и способ вывода управляемой компонентом информации. Шаблоны можно модифицировать, меняя способ и форму вывода.

Между тем, за указанное упрощение работы с веб-страницами, содержащими динамический контент, приходится расплачиваться дополнительной нагрузкой на веб-сервер. В этом случае веб-сервер вынужден формировать отправляемый пользователю html-код страницы из программного кода CMS-системы. Как правило, в качестве кода CMS-системы используется php-код. К другим примерам программного кода относятся perl, asp, jsp и пр. На формирование конечного html-кода страницы у сервера уходит достаточно много времени, поскольку ему приходится преобразовывать все динамические части страницы с программного кода (например, php-кода) в html-код и корректно объединять их с html-кодом статической части. В результате, страница для пользователя открывается с существенной задержкой, вплоть до нескольких секунд, что, конечно, неприемлемо.

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

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

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

Более эффективным средством известного уровня техники по ускорению выдачи веб-страниц на оборудование пользователя является технология Full Page Cache от компании Magento Enterprise, которую можно рассматривать в качестве ближайшего аналога настоящего изобретения. Данная технология применима только к работе с веб-страницами, в коде которых присутствуют метки, обозначающие присутствие в веб-странице всех динамических частей. При первом обращении пользователя к такой веб-странице программный модуль Full Page Cache выполняет страницу в динамическом режиме, отправляет пользователю ее код и сохраняет кэш страницы в запоминающем устройстве сервера с удалением информации из ее динамических зон. При втором обращении пользователя к этой странице сервер выполняет код динамических частей, склеивает кэш страницы, взятый из запоминающего устройства, со сформированным кодом динамических частей и отдает страницу пользователю.

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

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

Раскрытие изобретения

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

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

- при первом обращении оборудования пользователя к веб-странице, размещенной на веб-сервере:

- выполнение веб-сервером программного кода веб-страницы, в том числе имеющихся на ней динамических частей, с формированием html-кода веб-страницы, включающего html-код статической части и html-код динамических частей;

выдача веб-сервером html-кода веб-страницы оборудованию пользователя для отображения этой веб-страницы браузером, установленным на оборудовании пользователя;

- обнаружение веб-сервером в html-коде веб-страницы, полученном на этапе формирования html-кода, кода, относящегося к динамическим частям;

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

- при втором и последующих обращениях оборудования пользователя к веб-странице:

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

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

- выполнение веб-сервером программного кода динамических частей с получением актуального html-кода, соответствующего этим частям;

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

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

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

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

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

формирование веб-сервером обновленного html-кода веб-страницы включающего актуальный html-код статической части и указанный актуальный html-код динамических частей;

- замена веб-сервером в обновленном html-коде веб-страницы указанного кода, относящегося к динамическим частям, на JS-скрипт, содержащий предписание на получение актуального кода этих динамических частей с веб-сервера, с формированием обновленного композитного кода;

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

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

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

Как вариант, способ дополнительно содержит этап имитации веб-сервером первого обращения оборудования пользователя к веб-странице.

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

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

- выполнение программного кода веб-страницы, в том числе имеющихся на ней динамических частей, с формированием html-кода веб-страницы, включающего html-код статической части и html-код динамических частей;

- выдача html-кода веб-страницы оборудованию пользователя для отображения этой веб-страницы браузером, установленным на оборудовании пользователя;

- обнаружение в html-коде веб-страницы, полученном на этапе формирования html-кода, кода, относящегося к динамическим частям;

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

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

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

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

- выполнение по запросу от браузера программного кода динамических частей с получением актуального html-кода, соответствующего этим частям;

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

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

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

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

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

формирование обновленного html-кода веб-страницы включающего актуальный html-код статической части и указанный актуальный html-код динамических частей;

- замена в обновленном html-коде веб-страницы указанного кода, относящегося к динамическим частям, на JS-скрипт, содержащий предписание на получение актуального кода этих динамических частей с веб-сервера, с формированием обновленного композитного кода;

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

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

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

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

Под композитным кодом в настоящей заявке понимается код, содержащий код статической части веб-страницы и специальный JS-скрипт (скрипт на языке JavaScript), содержащий предписание оборудованию пользователя на получение с веб-сервера актуального кода всех динамических частей, входящих в эту веб-страницу.

Краткое описание графических материалов

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

- фиг.1 изображает блок-схему заявляемой системы выдачи веб-страниц на оборудование пользователя и схематично иллюстрирует функционирование данной системы;

- фиг.2 изображает скриншот веб-страницы, содержащей статические и динамические части;

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

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

Осуществление изобретения

Блок-схема заявляемой системы показана в правой части фиг.1 обведенной прерывистой линией. Как следует из этого рисунка, система 1 выдачи веб-страниц на оборудование 50 пользователя, в частности, на стационарный компьютер, ноутбук, смартфон, планшет и пр., содержит веб-сервер 10 с размещенными на нем веб-страницами 100 и запоминающее устройство 15. В частных случаях система 1 может также включать в себя отдельные приемо-передающие устройства, коммутаторы, маршрутизаторы, консоли, блоки питания, контроллеры, дисковые массивы и пр. Однако заметим, что в данной области техники принято считать, что стандартный веб-сервер уже содержит в себе функции перечисленных выше устройств, реализуемых на нем аппаратным и/или программным образом. В некоторых вариантах изобретения веб-сервер 10 может включать в свой состав и запоминающее устройство 15 (ЗУ).

Если давать определение, веб-сервер 10 - это программно-аппаратный комплекс доступный пользователю через Интернет и выполненный с возможностью приема http-запросов пользователей, обычно от веб-браузеров, и выдающий им http-ответы, как правило, вместе с html-страницей, изображением, файлом, медиа-потоком или другими данными. В качестве конкретных примеров веб-сервера 10 можно назвать http-серверы Apache, US, Cherokee и Resin на базе операционных систем Linux, BSD, Mac OS, Microsoft Windows, Novell NetWare, BeOS. Неисчерпывающий список функций стандартного веб-сервера включает в себя следующее:

- Прием запросов от веб-браузеров по протоколу стандарта HTTP с использованием сетевых протоколов TCP/IP;

- Выполнение поиска и отсылки файлов с гипертекстом или каких-либо документов в браузер по протоколу HTTP;

- Обслуживание и обработка запросов, типа: mailto: …, FTP, Telnet и т.п.;

- Запуск прикладных программ на веб-сервере с последующей передачей и возвратом параметров обработки через стандарт интерфейса CGI;

- Работа и обслуживание навигационных карт изображений (Image map);

- Загрузка Java-приложений;

- Авторизация пользователей и их аутентификация;

- Ведение регистрационного журнала обращений пользователей к различным ресурсам;

- Автоматизированная работа веб-страниц;

- Поддержка страниц, которые генерируются динамически;

- Поддержка работы протокола HTTPS для защищенных соединений с клиентами.

Используемое в системе 1 запоминающее устройство 15 предназначено для записи и хранения данных, используемых веб-сервером 10, в частности, композитных html-страниц, динамических и статических частей html-страниц, контента, необходимого для наполнения html-страниц, вспомогательной информации и пр. В качестве запоминающего устройства 15 может использоваться жесткий диск веб-сервера, оперативная память этого веб-сервера или память других компьютеров, размещенных в сети Интернет, а также могут использоваться базы данных, программные продукты типа Memcache и пр.

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

- при первом обращении оборудования пользователя к веб-странице 100 совершать следующие действия:

- выполнение программного кода веб-страницы 100, в том числе всех имеющихся на ней динамических частей 101, 102, 103, с формированием html-кода веб-страницы 100, включающего html-код статической части и html-код динамических частей 101, 102, 103;

- выдача html-кода веб-страницы 100 оборудованию пользователя для отображения этой веб-страницы 100 браузером, установленным на оборудовании пользователя;

- обнаружение в html-коде веб-страницы 100, полученном на этапе формирования html-кода, кода, относящегося к динамическим частям 101,102, 103;

- замена в html-коде веб-страницы 100 указанного кода, относящегося к динамическим частям 101, 102, 103, на JS-скрипт, содержащий предписание на получение актуального кода этих динамических частей 101, 102, 103 с веб-сервера 10, с формированием композитного кода 110 и сохранение этого композитного кода 110 в запоминающем устройстве 15;

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

- выдача оборудованию пользователя композитного кода 110, сохраненного в запоминающем устройстве 15, для отображения браузером, установленным на оборудовании пользователя, статической части этой веб-страницы 100;

- прием от браузера запроса на актуальные данные для динамических частей 101, 102, 103, направляемого браузером путем следования предписанию, содержащемуся в JS-скрипте композитного кода 110;

- выполнение по запросу от браузера программного кода динамических частей 101, 102, 103 с получением актуального html-кода, соответствующего этим частям 101, 102, 103;

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

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

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

На фиг.2 изображен скриншот (т.е. снимок экрана) веб-страницы 100, содержащей статические и динамические части. Как видно из приведенного примера, показанная страница относится к Интернет-магазину, занимающемуся торговлей одеждой. На этой странице предусмотрены три динамические части 101, 102, 103, каждая из которых выделена прямоугольной рамкой.

Часть 101 обозначает корзину покупателя; часть 102 - телефон и время работы пункта доставки; часть 103 - цену. Данные части могут меняться в зависимости от условий и времени запрашивания страницы 100. Например, цена, телефон и условия работы, соответствующие частям 102 и 103, могут различаться в зависимости от статуса клиента. В частности, оптовые клиенты и клиенты, обладающие статусом «золотого» клиента, могут работать по одной цене и обслуживаться в одни часы работы, тогда как остальные клиенты будут обслуживаться в другое время и по другим ценам. Контент части 101, относящейся к корзине пользователя, зависит от цены товара и от числа единиц товара, заказанного пользователем.

Остальная часть страницы 100 является статической, т.е. является неизменной и не зависит от условий и времени запрашивания.

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

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

Итак, браузер оборудования пользователя посылает клиентский запрос на веб-сервер с адресом страницы 100. Веб-сервер, получив запрос на страницу 100, предпринимает действия по сборке html-кода этой страницы, в ходе которой выполняется следующее:

- выполнение программного кода динамических частей 101, 102, 103, относящегося к расчету корзины для данного пользователя, выводу телефона и времени работы пункта доставки и цены товара. Данный этап может проводиться с учетом проверки статуса и прав доступа пользователя, а также других возможных условий формирования страницы, и включает в себя выборку необходимых данных из баз данных, относящихся к клиентам, ценам и ассортименту, фильтрацию и сортировку этих данных и прочие действия, необходимые для формирования html-кода частей 101, 102, 103. В качестве программного кода обычно используется php-код, но может также выступать perl, asp, jsp и пр. Результатом этапа выполнения программного кода динамических частей является получение html-кода, соответствующего указанным частям 101, 102, 103;

- формирование html-кода веб-страницы 100, включающего html-код статической части и html-код динамических частей 101, 102, 103, полученный на предыдущем этапе путем выполнения их программного кода;

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

Как следует из фиг.3, в рассматриваемом очень простом примере время, проходящее с момента обращения пользователя к странице 100, содержащей всего три динамические части 101, 102, 103, до момента ее вывода в браузере пользователя, составляет 483 мс, из которых собственно отображение страницы занимает 26 мс, а остальное время уходит на сборку конечного html-кода. Все это время пользователь сидит перед пустым экраном своего оборудования, ожидая когда окончатся процессы формирования кода страницы 100, а также его пересылки и отображения.

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

При первом обращении оборудования 50 пользователя к веб-странице 100, действия заявляемой системы 1 по сути совпадают с аналогичными действиями системы известного уровня техники. Последовательность этапов в этом случае такая. Браузер оборудования 50 пользователя посылает клиентский запрос на веб-сервер 10 с адресом страницы 100. Веб-сервер 10, получив запрос на страницу 100, предпринимает действия по сборке html-кода этой страницы, в ходе которой выполняется следующее:

- выполнение программного кода динамических частей 101, 102, 103, относящегося к расчету корзины для данного пользователя, выводу телефона и времени работы пункта доставки и цены товара. Данный этап может проводиться с учетом проверки статуса и прав доступа пользователя, а также других возможных условий формирования страницы, и включает в себя выборку необходимых данных из баз данных, относящихся к клиентам, ценам и ассортименту, фильтрацию и сортировку этих данных и прочие действия, необходимые для формирования html-кода частей 101, 102, 103. В качестве программного кода обычно используется php-код, но может также выступать perl, asp, jsp и пр. Результатом этапа выполнения программного кода динамических частей является получение html-кода, соответствующего указанным частям 101, 102, 103;

- формирование html-кода веб-страницы 100, включающего html-код статической части и html-код динамических частей 101, 102, 103, полученный на предыдущем этапе путем выполнения программного кода динамических частей 101, 102, 103 (данный этап в общем случае может быть объединен с предыдущим этапом способа выдачи веб-страниц по настоящему изобретению);

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

Браузер пользователя отображает страницу 100 за те же 483 мс. Однако для веб-сервера 10 действия по обработке страницы 100 на этом не закончены. Он в фоновом режиме выполняет еще два этапа, дополнительные по сравнению со способом известного уровня техники. Первый из этих этапов - обнаружение в html-коде веб-страницы 100, полученном на этапе формирования html-кода, кода, относящегося к динамическим частям 101, 102, 103. Второй дополнительный этап заключается в замене в сформированном html-коде страницы 100 указанного кода, относящегося к динамическим частям 101, 102, 103, на специальный JS-скрипт, содержащий предписание на получение актуального кода этих динамических частей 101, 102, 103 с веб-сервера 10, с формированием в результате композитного кода 110 и в сохранении этого композитного кода 110 в своем запоминающем устройстве 15. После создания и сохранения композитного кода 110 действия предложенной системы 1 по формированию и выдаче веб-страницы 100 первому пользователю считаются выполненными.

При втором и последующих обращениях пользователя к странице 100, причем неважно, того же самого или нового, использующего то же самое оборудование или новое, действия системы таковы. Браузер пользователя посылает клиентский запрос на веб-сервер 10 с адресом страницы 100. Веб-сервер 10 отправляет на оборудование 50 пользователя сохраненный в запоминающем устройстве 15 композитный код 110 страницы 100. Перед отправкой веб-сервер 10 обычно проверяет, есть ли в запоминающем устройстве 15 файл с кодом 110, соответствующим запрошенной пользователем странице. Такая проверка целесообразна для исключения внештатных ситуаций. Если файла нет, то дальнейшее выполнение способа происходит, как это указано выше в отношении первого обращения пользователя. Если же файл есть, то он отсылается пользователю. Браузер пользователя, получив код 110, отображает его пользователю, и начиная с этого момента, пользователь уже может видеть на своем мониторе запрошенную страницу, пока, правда, только статическую ее часть, не заполненную динамическим контентом.

Одновременно с процедурой отображения статической части страницы пользователю, браузер, руководствуясь предписанием, содержащимся в JS-скрипте, посылает на веб-сервер фоновый для пользователя запрос на получение актуальных данных для динамических частей 101, 102, 103. Получив второй запрос от браузера, веб-сервер 10 выполняет программный код динамических частей 101, 102, 103, действуя по сути аналогично тому, как это описано в соответствующей части данного способа, относящейся к первому обращению пользователя к веб-странице 100. Результатом этапа выполнения программного кода динамических частей является получение html-кода, соответствующего указанным частям 101, 102, 103.

Далее, веб-сервер 10 досылает на компьютер пользователя html-код динамических частей 101, 102, 103, содержащий актуальную информацию о корзине пользователя, телефоне и времени работы пункта доставки и цене товара. Браузер пользователя сразу же после получения html-кода динамических частей отображает эти динамические части, например, последовательно по мере их получения, для пользователя в соответствующих полях уже выведенной статической части веб-страницы100.

Если обратиться к фиг.4, можно видеть, что при втором и последующих обращениях к странице 100 пользователь получает сохраненную страницу всего за 15 мс, из которых собственно отображение страницы занимает 13 мс. Сравнив это с 483 мс для способа вывода страниц, известного из уровня техники, нетрудно понять, что настоящее изобретение дает существенный выигрыш при отображении даже таких несложных страниц, характеризующихся относительно небольшим числом динамических частей. Последующие динамические данные приходят к пользователю и отображаются для него через 500 мс, но в виду того, что мозг и органы зрения человека не способны контролировать такое скоротечное изменение визуальной информации в разных частях выводимой на экран веб-страницы, пользователь не замечает процесса актуализации страницы, и у него складывается полное впечатление о моментальной загрузке запрашиваемой страницы, т.е. практически сразу же после обращения за ней к серверу. В результате, согласно техническому решению, предложенному в настоящем изобретении, работа с веб-страницами происходит в быстром, комфортном режиме, независимо от объема динамического контента на запрашиваемой странице. Кроме того, благодаря разделению процессов вывода статической и динамической частей веб-страницы на оборудование пользователя, веб-сервер загружается более равномерно, что благоприятно сказывается на сроке его службы.

В общем случае, этап обнаружения в html-коде веб-страницы 100 кода, относящегося к динамическим частям, выполняется веб-сервером 10 путем анализа ее html-кода при помощи соответствующего распознающего программного модуля. При этом согласно предпочтительному варианту изобретения, обнаружение динамических частей происходит по специальным указаниям, расставленным в коде страницы разработчиками сайта. Например, установленная на веб-сервере CMS-система анализирует код веб-страницы при сохранении ее на сервер. Если CMS-система встречает установленные разработчиком сайта программные указания, то система заменяет их на собственные метки, по которым она впоследствии определяет места замены устаревших данных на актуальные. В этом случае этапы обнаружения динамических частей и их замены JS-скриптом протекают наиболее быстро, что дает дополнительный выигрыш в скорости при отображении веб-страницы.

Согласно другому предпочтительному варианту изобретения, веб-сервер 10 на этапе выдачи оборудованию 50 пользователя композитного кода 110, сохраненного в запоминающем устройстве 15, направляет оборудованию пользователя дополнительно код объекта, предназначенного для временной подмены динамических частей 101, 102, 103 веб-страницы, т.е. до того момента, пока от сервера 10 не придет актуальная информация, относящаяся к этим динамическим частям. Это сделано для того, чтобы пользователь по внешнему виду отображенной статической части мог определить, что процесс вывода страницы выполнен не до конца. В соответствии с некоторыми типовыми случаями, на месте динамических частей в веб-странице может временно отображаться, например, некий информирующий пользователя текст, в частности, слово «Загрузка», или информация, которая выводилась при прошлом посещении страницы, а может вообще ничего не отражаться. Код объекта, отображаемого в динамической части до обращения JS-скрипта к серверу, как правило, зависит от предпочтений разработчика сайта. Его можно регулировать программным путем при настройке шаблонов компонентов.

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

В этой связи, чтобы корректно учитывать возможные изменения в статической части запрашиваемой веб-страницы, предложенный способ (а значит, и с соответсвующими изменениями предложенная система) может включать в себя дополнительный этап высчитывания веб-сервером 10 контрольной суммы композитного кода 110, осуществляемый после этапа его формирования при первом обращении пользователя к веб-странице 100, а также следующие этапы, выполняемые после этапа досылки веб-сервером 10 актуального html-кода динамических частей 101, 102, 103 на оборудование 50 пользователя:

- формирование веб-сервером 10 обновленного html-кода веб-страницы 100 включающего актуальный html-код статической части и указанный актуальный html-код динамических частей 101, 102, 103;

- замена веб-сервером 10 в обновленном html-коде веб-страницы 100 указанного кода, относящегося к динамическим частям 101, 102, 103, на JS-скрипт, содержащий предписание на получение актуального кода этих динамических частей 101, 102, 103 с веб-сервера 10, с формированием обновленного композитного кода 110;

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

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

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

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

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

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

ПЕРЕЧЕНЬ ССЫЛОЧНЫХ НОМЕРОВ

1 - предложенная система формирования и выдачи веб-страниц пользователю

10 - веб-сервер

15 - запоминающее устройство

50 - оборудование пользователя

100 - веб-страница

101, 102, 103 - динамические части веб-страницы

110 - композитный код.

1. Способ выдачи веб-страниц, содержащих по меньшей мере одну динамическую часть, на оборудование пользователя, включающий следующие этапы:
- при первом обращении оборудования (50) пользователя к веб-странице (100), размещенной на веб-сервере (10):
- выполнение веб-сервером (10) программного кода веб-страницы (100), в том числе имеющихся на ней динамических частей (101, 102, 103), с формированием html-кода веб-страницы (100), включающего html-код статической части и html-код динамических частей (101, 102, 103);
- выдача веб-сервером (10) html-кода веб-страницы (100) оборудованию (50) пользователя для отображения этой веб-страницы (100) браузером, установленным на оборудовании (50) пользователя;
- обнаружение веб-сервером (10) в html-коде веб-страницы (100), полученном на этапе формирования html-кода, кода, относящегося к динамическим частям (101, 102, 103);
- замена веб-сервером (10) в html-коде веб-страницы (100) указанного кода, относящегося к динамическим частям (101, 102, 103), на JS-скрипт (скрипт на языке JavaScript), содержащий предписание на получение актуального кода этих динамических частей (101, 102, 103) с веб-сервера (10), с формированием композитного кода (110) и сохранение этого композитного кода (110) в запоминающем устройстве (15);
- при втором и последующих обращениях оборудования (50) пользователя к веб-странице (100):
- выдача веб-сервером (10) оборудованию (50) пользователя композитного кода (110), сохраненного в запоминающем устройстве (15), для отображения браузером, установленным на оборудовании (50) пользователя, статической части веб-страницы (100);
- прием веб-сервером (10) от браузера запроса на актуальные данные для динамических частей (101, 102, 103), направляемого браузером путем следования предписанию, содержащемуся в JS-скрипте композитного кода (110);
- выполнение веб-сервером (10) программного кода динамических частей (101, 102, 103) с получением актуального html-кода, соответствующего этим частям (101, 102, 103);
- досылка веб-сервером (10) актуального html-кода динамических частей (101, 102, 103) на оборудование (50) пользователя для отображения браузером, установленным на оборудовании (50) пользователя, указанных динамических частей (101, 102, 103) в соответствующих полях уже выведенной статической части веб-страницы (100), согласно сформированному актуальному html-коду этих динамических частей (101, 102, 103).

2. Способ по п.1, в котором этап обнаружения веб-сервером (10) в html-коде веб-страницы (100) кода, относящегося к динамическим частям, осуществляют с использованием указаний в коде веб-страницы, помечающих эти части страницы как динамические.

3. Способ по п.1, в котором перед этапом выдачи оборудованию (50) пользователя композитного кода (110) веб-сервер (10) проверяет наличие этого композитного кода (110) в запоминающем устройстве (15), причем если композитный код (110) отсутствует, веб-сервер (10) расценивает данное обращение оборудования (50) пользователя к веб-странице (100) как первое и переходит к выполнению этапов, относящихся к первому обращению.

4. Способ по п.1, в котором веб-сервер (10) на этапе выдачи оборудованию пользователя композитного кода (110), сохраненного в запоминающем устройстве (15), направляет оборудованию пользователя дополнительно код объекта, предназначенного для временной подмены динамических частей веб-страницы (100).

5. Способ по п.1, дополнительно содержащий этап высчитывания веб-сервером (10) контрольной суммы композитного кода (110), осуществляемый после этапа его формирования при первом обращении оборудования пользователя к веб-странице (100), а также следующие этапы, выполняемые после этапа досылки веб-сервером (10) актуального html-кода динамических частей (101, 102, 103) на оборудование (50) пользователя:
- формирование веб-сервером (10) обновленного html-кода веб-страницы (100) включающего актуальный html-код статической части и указанный актуальный html-код динамических частей (101, 102, 103);
- замена веб-сервером (10) в обновленном html-коде веб-страницы (100) указанного кода, относящегося к динамическим частям (101, 102, 103), на JS-скрипт, содержащий предписание на получение актуального кода этих динамических частей (101, 102, 103) с веб-сервера (10), с формированием обновленного композитного кода (110);
- высчитывание веб-сервером (10) контрольной суммы обновленного композитного кода (110) и сверка суммы обновленного композитного кода с прежней суммой композитного кода и, если суммы не совпадают, то сохранение сервером (10) обновленного композитного кода (110) в запоминающем устройстве (15) для использования в дальнейшем.

6. Способ по п.5, в котором если сумма обновленного композитного кода и прежняя сумма композитного кода не совпадают, веб-сервер (10) выдает обновленный html-код веб-страницы (100) оборудованию (50) пользователя для отображения обновленной веб-страницы (100) браузером, установленным на оборудовании (50) пользователя.

7. Способ по п.5, дополнительно содержащий этап пересохранения прежнего композитного кода с присвоением ему нового имени.

8. Способ по п.1, содержащий этап имитации веб-сервером (10) первого обращения оборудования (50) пользователя к веб-странице (100).

9. Система (1) выдачи веб-страниц, содержащих по меньшей мере одну динамическую часть, на оборудование пользователя, включающая в себя веб-сервер (10) с размещенными на нем веб-страницами (100) и запоминающее устройство (15), причем веб-сервер (10) выполнен с возможностью:
- при первом обращении оборудования (50) пользователя к веб-странице (100) совершать следующие действия:
- выполнение программного кода веб-страницы (100), в том числе имеющихся на ней динамических частей (101, 102, 103), с формированием html-кода веб-страницы (100), включающего html-код статической части и html-код динамических частей (101, 102, 103);
- выдача html-кода веб-страницы (100) оборудованию (50) пользователя для отображения этой веб-страницы (100) браузером, установленным на оборудовании (50) пользователя;
- обнаружение в html-коде веб-страницы (100), полученном на этапе формирования html-кода, кода, относящегося к динамическим частям (101, 102, 103);
- замена в html-коде веб-страницы (100) указанного кода, относящегося к динамическим частям (101, 102, 103), на JS-скрипт (скрипт на языке JavaScript), содержащий предписание на получение актуального кода этих динамических частей (101, 102, 103) с веб-сервера (10), с формированием композитного кода (110) и сохранение этого композитного кода (110) в запоминающем устройстве (15);
- при втором и последующих обращениях оборудования (50) пользователя к веб-странице (100) совершать следующие действия:
- выдача оборудованию (50) пользователя композитного кода (110), сохраненного в запоминающем устройстве (15), для отображения браузером, установленным на оборудовании (50) пользователя, статической части этой веб-страницы (100);
- прием от браузера запроса на актуальные данные для динамических частей (101, 102, 103), направляемого браузером путем следования предписанию, содержащемуся в JS-скрипте композитного кода (110);
- выполнение по запросу от браузера программного кода динамических частей (101, 102, 103) с получением актуального html-кода, соответствующего этим частям (101, 102, 103);
- досылка актуального html-кода динамических частей (101, 102, 103) на оборудование пользователя для их отображения браузером, установленным на оборудовании (50) пользователя, в соответствующих полях уже выведенной статической части веб-страницы (100), согласно сформированному актуальному html-коду этих динамических частей (101, 102, 103).

10. Система по п.9, в которой веб-сервер (10) выполнен также с возможностью обнаружения в html-коде веб-страницы (100) кода, относящегося к динамическим частям, с использованием указаний в коде веб-страницы, помечающих эти части страницы как динамические.

11. Система по п.9, в которой веб-сервер (10) выполнен также с возможностью проверки, перед этапом выдачи оборудованию (50) пользователя композитного кода (110), наличия этого композитного кода (110) в запоминающем устройстве (15), причем если композитный код (110) отсутствует, веб-сервер (10) расценивает данное обращение оборудования (50) пользователя к веб-странице (100) как первое.

12. Система по п.9, в которой веб-сервер (10) выполнен также с возможностью во время выдачи оборудованию пользователя композитного кода (110), сохраненного в запоминающем устройстве (15), направлять оборудованию пользователя дополнительно код объекта, предназначенного для временной подмены динамических частей веб-страницы (100).

13. Система по п.9, в которой веб-сервер (10) выполнен также с возможностью высчитывания контрольной суммы композитного кода (110) после этапа его формирования при первом обращении оборудования пользователя к веб-странице (100), а также с возможностью выполнения следующих действий, осуществляемых после досылки веб-сервером (10) актуального html-кода динамических частей (101, 102, 103) на оборудование (50) пользователя:
- формирование обновленного html-кода веб-страницы (100), включающего актуальный html-код статической части и указанный актуальный html-код динамических частей (101, 102, 103);
- замена в обновленном html-коде веб-страницы (100) указанного кода, относящегося к динамическим частям (101, 102, 103), на JS-скрипт, содержащий предписание на получение актуального кода этих динамических частей (101, 102, 103) с веб-сервера (10), с формированием обновленного композитного кода (110);
- высчитывание контрольной суммы обновленного композитного кода (110) и сверка суммы обновленного композитного кода с прежней суммой композитного кода и, если суммы не совпадают, то сохранение обновленного композитного кода (110) в запоминающем устройстве (15) для использования в дальнейшем.

14. Система по п.13, в которой веб-сервер (10) выполнен также с возможностью выдачи обновленного html-кода веб-страницы (100) оборудованию (50) пользователя для отображения обновленной веб-страницы (100) браузером, установленным на оборудовании (50) пользователя, если сумма обновленного композитного кода и прежняя сумма композитного кода не совпадают.

15. Система по п.13, в которой веб-сервер (10) выполнен также с возможностью пересохранения прежнего композитного кода с присвоением ему нового имени.

16. Система по п.9, в которой веб-сервер (10) выполнен также с возможностью имитации первого обращения оборудования (50) пользователя к веб-странице (100).



 

Похожие патенты:

Изобретение относится к получению информации о топологии расширения порта (РЕ). Технический результат - эффективное получение информации о топологии каждого подключенного PE к управляющему мосту (CB) и установление канала для передачи данных.

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

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

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

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

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

Изобретение относится к вычислительной технике и может быть использовано при создании вычислительных систем повышенной надежности. Техническим результатом является повышение надежности работы системы.

Изобретение относится к области телеметрической информации (ТМИ). Данное изобретение может быть использовано в бортовых системах формирования/передачи данных на этапе летных испытаний и в процессе штатной эксплуатации объектов ракетно-космической техники (РКТ).

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

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

Изобретение относится к области защиты интерфейса Ethernet. Техническим результатом является повышение эффективности перемаршрутизации интерфейса Ethernet. Способ выполнения быстрой перемаршрутизации (FRR) интерфейса Ethernet содержит получение устройством сетевой стороны резервного маршрута для защищенного интерфейса, создание записи о взаимосвязи активного маршрута и резервного маршрута для защищенного интерфейса и создание группы FRR в соответствии с записью о взаимосвязи активного маршрута и резервного маршрута; и определение, присутствует ли информация записей переадресации прямых маршрутов на защищенном интерфейсе, в соответствии с информацией о группе FRR; если информация записей переадресации прямых маршрутов присутствует, то выполняют поиск информации всех записей переадресации прямых маршрутов на защищенном интерфейсе в соответствии с индексной информацией защищенного интерфейса из информации о группе FRR и устанавливают ассоциацию между упомянутой информацией всех записей переадресации прямых маршрутов и индексом FRR из информации о группе FRR; а если информация записей переадресации прямых маршрутов отсутствует на защищенном интерфейсе, то в аппаратную таблицу переадресации вводят информацию записи переадресации, соответствующую резервному маршруту FRR, и информацию записи переадресации прямых маршрутов, так что при сбое защищенного интерфейса переключение трафика группы FRR способно защитить нормальное прохождение трафика всех сервисов, которые используют защищенный интерфейс как выходной интерфейс; причем информация о группе FRR содержит индекс FRR, информацию об интерфейсе для защищенного интерфейса и информацию записи переадресации, соответствующую резервному маршруту FRR, а информация записей переадресации прямых маршрутов содержит маршрутную информацию сетевого сегмента, в котором находится адрес защищенного интерфейса, и информацию всех записей переадресации протокола разрешения адресов, принадлежащую этому сетевому сегменту. 2 н. и 10 з.п. ф-лы, 8 ил.

Изобретение относится к области управления ресурсами в телекоммуникационной сети или в информационной системе. Техническим результатом является оптимизация времени исполнения базовых операций на календаре резервирования ресурсов. Способ включает в себя обновление дерева, каждый узел которого представляет временной период. Дерево содержит по меньшей мере один узел, представляющий временной период, включающий данную дату. Обновление дерева включает в себя этап добавления узлов таким образом, чтобы корневой узел включал в себя дату начала периода, а также добавление всех минимальных узлов периода резервирования. 8 з.п. ф-лы, 2 ил.

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

Изобретение относится к способу отправки и приема информации управления, устройству и системе связи. Техническим результатом является повышение эффективности использования служебной нагрузки, требуемой для передачи информации управления. Способ для отправки информации управления включает в себя установление соответствующих битов управления в формате информации управления нисходящей линии связи (DCI), чтобы сформировать информацию управления, применяемую сетевой стороной к терминалу, где биты управления включают в себя биты указания действительности и биты управления передачей, причем в битах указания действительности записывается информация указания, указывающая, действительно ли в отношении терминала управление передачей, осуществляемое сетевой стороной по блоку передачи, и биты указания действительности размещаются вне битов управления передачей; и отправку сформированной информации управления терминалу. 4 н.п. ф-лы, 13 ил.

Изобретение относится к сетям связи. Технический результат заключается в повышении безопасности передачи данных внутри сети. Способ содержит: множество узлов, взаимосвязанных через межузловые соединения в ячеистой топологии, содержащий: идентификацию, между отправляющим узлом и принимающим узлом, первого и второго маршрутов связи без общей связи или узла, за исключением отправляющего и принимающего узлов, где промежуточный узел первого маршрута связи и промежуточный узел второго маршрута связи взаимосвязаны через межузловые соединения в сети связи; конфигурирование, в сети связи, первой Виртуальной Локальной Сети VLAN и второй VLAN на основе первого и второго маршрута связи соответственно и конфигурирование отправляющего и принимающего узлов для работы в соответствии с Протоколом Параллельного Резервирования PRP с первым и вторым портами связи отправляющего узла и первым и вторым портами связи принимающего узла, назначенных первой и второй VLAN соответственно. 2 н. и 7 з.п. ф-лы, 3 ил.

Изобретение относится к области осуществления связи в компьютерных системах. Технический результат - обеспечение уменьшения потребления ресурсов компьютерной системы за счет реализации оптимальной маршрутизации. Компьютерная система содержит: контроллер; множество коммутаторов, каждый из которых осуществляет операцию ретрансляции, которая определена в элементе потока, заданном контроллером, в отношении пакета, согласующегося с этим элементом потока, и множество узлов, осуществляющих связь через любой из множества коммутаторов, при этом контроллер получает первый МАС-адрес первого узла из множества узлов от первого узла и задает первый МАС-адрес в качестве адреса пункта назначения в правиле элемента потока для каждого из множества коммутаторов и задает обработку переноса для узла-адресата в качестве действия элемента потока для каждого из множества коммутаторов; каждый из множества коммутаторов переносит пакет, содержащий адрес пункта назначения, на узел-адресат на основе элемента потока, заданного для этого коммутатора, независимо от адреса источника передачи данного пакета. 2 н. и 8 з.п. ф-лы, 13 ил.

Изобретение относится к способам и устройству выполнения процесса очистки в порте сетевого коммутатора. Технический результат заключается в повышении быстродействия очистки в сетевом коммутаторе. Способ содержит операцию лавинной передачи и операцию повторного изучения адресов MAC, при этом в способе делают независимыми друг от друга упомянутые две операции, начинают операцию повторного изучения адресов MAC до окончания операции лавинной передачи, начинают операцию перенаправления пакетов в повторно изученные адреса MAC до окончания операции лавинной передачи, выполняют операцию лавинной передачи и операцию повторного изучения соответственно со ссылкой на два искусственно обеспеченных разных экземпляра очищенного порта, при этом для выполнения процесса очистки в порте сетевого коммутатора присваивают два разных экземпляра каждому порту упомянутого множества, в случае, когда процесс очистки требуется для конкретного порта, объявляют состояние “очистки” только для одного из экземпляров конкретного порта, выполняют операцию лавинной передачи с использованием экземпляра, находящегося в состоянии “очистки”, и выполняют операции повторного изучения и операцию перенаправления с использованием экземпляра, который не находится в состоянии “очистки”. 3 н. и 1 з.п. ф-лы, 7 ил.

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

Изобретение относится к области средств передачи информации в виде пакетов. Техническим результатом является уменьшение энергопотребления, а также обеспечение гарантированной доставки данных. Способ характеризуют предварительным определением количества необходимых оконечных станций и коммутаторов с определением необходимой топологии каналов связи между ними путем передачи через используемые каналы связи конфигурационных пакетов. Настраивают используемые коммутаторы и оконечные устройства для приема/передачи информации. Передаваемую информацию разбивают на пакеты для передачи по стандарту PCI-Express размером не свыше 4 килобайт с учетом служебных слов. 1 з.п. ф-лы, 1 ил.

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