Организация исторической сессии просмотра

Иллюстрации

Показать все

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

Реферат

УРОВЕНЬ ТЕХНИКИ

[0001] В общем случае описанные вычислительные устройства и сети связи могут быть использованы для обмена информацией. В общем применении вычислительное устройство может подавать запрос на получение информационного ресурса от другого вычислительного устройства посредством сети связи. Например, пользователь вычислительного устройства, такого как персональное вычислительное устройство, может использовать программное приложение для просмотра, называемое, как правило, «браузером», для подачи запроса на получение Веб-страницы от серверного вычислительного устройства посредством сети Интернет. В таких вариантах воплощения подающее запрос вычислительное устройство может быть названо клиентским вычислительным устройством, и серверное вычислительное устройство может быть названо провайдером информационного ресурса.

[0002] Со ссылкой на иллюстративный пример, запрашиваемая Веб-страница или оригинальный контент может относиться к ряду дополнительных ресурсов, таких как изображения или видео, которые должны выводиться на экран вместе с Веб-страницей. В одном конкретном варианте воплощения дополнительные ресурсы Веб-страницы идентифицируются по количеству идентификаторов встроенных ресурсов, таких как унифицированные указатели информационного ресурса («URLs»). В свою очередь, программное обеспечение клиентских вычислительных устройств, такое как браузер, как правило, производит обработку идентификаторов встроенных ресурсов с целью генерирования запросов на получение контента. Соответственно, для того чтобы удовлетворить запрос на получение контента, один или более провайдеров контента будут в общем случае предоставлять клиентским вычислительным устройствам данные, относящиеся к Веб-странице, а также данные, относящиеся к встроенным ресурсам.

[0003] Как только клиентское вычислительное устройство получает Веб-страницу и относящиеся к ней дополнительные ресурсы, контент может быть обработан в ряде стадий с помощью программного приложения браузера или другого интерфейса клиентского вычислительного устройства. Например, и со ссылкой на вышеприведенную иллюстрацию, программное приложение браузера может разбивать Веб-страницу с целью обработки различной информации относительно компоновки HTML и ссылок на относящиеся к ней ресурсы, может производить идентификацию и обрабатывать информацию относительно Каскадных Таблиц Стилей («CSS»), может обрабатывать и создавать экземпляры различного кода Javascript, относящегося к Веб-странице, может конструировать собственную объектную модель с целью представления одного или более элементов Веб-страницы, и может вычислять различные свойства, относящиеся к компоновке и выводу на экран обработанного контента, с целью представления пользователю.

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

[0005] Вышеприведенные аспекты и многие из сопутствующих преимуществ данного изобретения будут более ясно оценены, по мере того, как они станут более понятными со ссылкой на нижеследующее детальное описание, рассматриваемое вместе с сопроводительными фигурами, на которых:

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

[0007] на Фигуре 2 представлена блок-схема среды доставки контента, представленной на Фигуре 1, иллюстрирующая генерирование и обработку запроса на открытие новой сессии просмотра от клиентского вычислительного устройства провайдеру сетевых вычислений;

[0008] на Фигуре 3 представлена блок-схема среды доставки контента, представленной на Фигуре 1, иллюстрирующая генерирование и обработку запроса на получение сетевого ресурса от провайдера сетевых вычислений провайдеру контента;

[0009] на Фигуре 4 представлена блок-схема среды доставки контента, представленной на Фигуре 1, иллюстрирующая генерирование и обработку одного или более запросов, соответствующих одному или более встроенных ресурсов, от провайдера сетевых вычислений провайдеру контента и сети доставки контента;

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

[0011] на Фигуре 6 представлена блок-схема среды доставки контента, представленной на Фигуре 1, иллюстрирующая генерирование и обработку дополнительного запроса на открытие новой сессии просмотра от клиентского вычислительного устройства провайдеру сетевых вычислений;

[0012] на Фигуре 7 представлена диаграмма пользовательского интерфейса, изображающая иллюстративный интерфейс браузера и вывод на экран контента сессии просмотра;

[0013] на Фигуре 8 представлена диаграмма, изображающая иллюстративные действия по обработке контента браузера в виде последовательности обрабатывающих подсистем;

[0014] на Фигуре 9 представлена блок-схема, иллюстрирующая подпрограмму открытия новой сессии просмотра, реализованную провайдером сетевых вычислений;

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

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

[0017] на Фигуре 12 представлена блок-схема среды доставки контента, представленной на Фигуре 1, иллюстрирующая генерирование и обработку нового запроса на получение исторического контента от клиентского вычислительного устройства провайдеру сетевых вычислений;

[0018] на Фигуре 13 представлена разветвленная схема, иллюстрирующая путь навигации сетевого ресурса;

[0019] на Фигуре 14 представлена разветвленная схема, иллюстрирующая путь навигации сетевого ресурса, изображающая опорные уровни сетевого ресурса; и

[0020] на Фигуре 15 представлена схема пользовательского интерфейса, изображающая иллюстративный интерфейс поиска в истории просмотров.

ПОДРОБНОЕ ОПИСАНИЕ

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

[0022] Со ссылкой на иллюстративный пример, пользователь может вызвать загрузку клиентским вычислительным устройством программного приложения браузера (далее называемого «браузером») с целью получения доступа к контенту, предоставляемому одним или более провайдерами контента. В одном варианте воплощения браузер может иметь окно или область дисплея, предназначенные для вывода на экран сетевого контента, к которому получен доступ, а кроме того - один или более элементов локального интерфейса, такие как панели инструментов, меню, кнопки или другие элементы управления интерфейсом пользователя. Элементы локального интерфейса могут организовываться и управляться программным приложением браузера или любым другим процессом, выполняющимся или реализованным локально на клиентском вычислительном устройстве. Как иллюстрация, локальная организация элементов управления интерфейсом пользователя может обеспечить возможность получения чувствительного интерфейса пользователя, поскольку взаимодействия пользователя обрабатываются локально на клиентском вычислительном устройстве.

[0023] Вслед за загрузкой браузера пользователь или автоматизированный процесс браузера может вызвать передачу клиентским вычислительным устройством запроса на получение доступа к контенту от провайдера контента путем установления сессии просмотра с провайдером сетевых вычислений посредством приватной или общедоступной сети. Запрос на открытие сессии просмотра может включать информацию, определяющую один или более источников запрашиваемого контента. Например, пользователь может выбрать или ввести URL (например, http://www.xyzwebsite.com) в окно браузера, вызывая передачу клиентским вычислительным устройством запроса на открытие новой сессии просмотра провайдеру сетевых вычислений, включающему выбранный URL. Запрос на открытие сессии просмотра может далее включать идентификационную информацию, такую как информацию, указывающую на пользователя, браузер или клиентское вычислительное устройство.

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

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

[0026] После получения запрашиваемого контента (например, запрашиваемого сетевого ресурса и встроенных ресурсов) провайдер сетевых вычислений может определить конфигурацию просмотра удаленной сессии клиента, устанавливающую протокол связи удаленной сессии для использования при передаче запрашиваемого контента, данных взаимодействия пользователя, промежуточных результатов обработки и другой информации между браузером, который выполняется на клиентском вычислительном устройстве, и браузером, который выполняется на созданном экземпляре элемента сетевых вычислений провайдера вычислений и хранения. Информация, обмен которой происходит между браузером на созданном экземпляре элемента сетевых вычислений и браузером на клиентском вычислительном устройстве, может в общем случае быть названной «информацией сессии браузера». Провайдер сетевых вычислений может дополнительно создавать любое количество дополнительных запросов на получение контента и/или вызывать создание экземпляров дополнительных удаленных сессий с целью извлечения и обработки любого контента, на который ссылается запрашиваемый контент (например, Веб-страниц, на которые имеются ссылки на запрашиваемой Веб-странице). Любое количество подключенных ресурсов в пределах установленной или определенной глубины может быть извлечено и предоставлено элементу хранения истории просмотров с целью хранения и индексирования.

[0027] В дополнение к установлению протокола связи удаленной сессии для передачи информации между клиентским вычислительным устройством и созданным экземпляром элемента сетевых вычислений в одном варианте воплощения определенной конфигурацией удаленной сессии просмотра клиента может быть установлено, что одно или более действий обработки, которые следует осуществить в отношении запрашиваемого контента, должны быть осуществлены на провайдере сетевых вычислений скорее чем, или в дополнение к осуществлению на клиентском вычислительном устройстве. Например, Веб-страница может быть разбита и обработана с целью обработки различной информации относительно компоновки HTML и ссылок на связанные ресурсы или встроенный контент, такой как каскадные таблицы стилей CSS и Javascript, а также встроенных объектов контента, таких как изображения, видео, аудио и т.д. Каждый объект или часть кода могут быть разбиты и обработаны перед тем, как может быть сконструирована и обработана далее для компоновки и вывода на экран репрезентативная модель объектов, соответствующая веб-странице. Конфигурацией просмотра удаленной сессии клиента может определяться, какие из данных действий должны быть осуществлены на элементе сетевых вычислений, и какие должны быть осуществлены на клиентском вычислительном устройстве.

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

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

[0030] В следующий момент времени клиентское вычислительное устройство может осуществлять поиск сохраненного контента на элементе хранения истории просмотров. В одном варианте воплощения клиентское вычислительное устройство может осуществлять поиск сохраненного контента, основываясь на определенном ресурсе, находящемся в кэше, или на представляющей интерес исторической сессии просмотра. В еще одном варианте воплощения клиентское вычислительное устройство может осуществлять поиск только того сохраненного контента, который пользователь не просматривал в исходной сессии просмотра (например, ресурсов, связанных с просматриваемыми ресурсами, и хранящихся на элементе хранения истории просмотров).

[0031] На Фигуре 1 представлена блок-схема, иллюстрирующая объединенную в сеть вычислительную среду 100, предназначенную для организации и обработки запросов на получение контента. Как проиллюстрировано на Фигуре 1, объединенная в сеть вычислительная среда 100 включает ряд клиентских вычислительных устройств 102 (в общем случае называемых клиентами), предназначенных для подачи запросов на получение контента и обработки контента от провайдера контента 104, провайдера службы сети доставки контента 106 или провайдера сетевых вычислений 107. В иллюстративном варианте воплощения клиентское вычислительное устройство 102 может соответствовать широкому спектру вычислительных устройств, включая персональные вычислительные устройства, портативные вычислительные устройства, наладонные вычислительные устройства, терминальные вычислительные устройства, мобильные устройства (например, мобильные телефоны, планшетные вычислительные устройства и т.д.), беспроводные устройства, различные электронные устройства и приборы и тому подобные. В иллюстративном варианте воплощения клиентское вычислительное устройство 102 включает необходимые элементы аппаратного обеспечения и программного обеспечения, предназначенные для установления связей посредством сети связи 108, такой как глобальная сеть или локальная сеть. Например, клиентское вычислительное устройство 102 может быть оборудовано сетевым оборудованием и программными приложениями браузеров, которые облегчают связь посредством сети Интернет или интранет. Клиентские вычислительные устройства 102 могут иметь различные локальные вычислительные ресурсы, такие как центральные процессоры и архитектуры, элементы памяти, внешние элементы памяти большого размера, графические процессоры, наличие и ширина канала сети связи и т.д.

[0032] Среда сетевых вычислений 100 может также включать провайдер контента 104, имеющий связь с одним или более клиентскими вычислительными устройствами 102 или другими провайдерами служб (например, провайдером службы сети доставки контента 106, провайдером сетевых вычислений 107 и т.д.) посредством сети связи 108. Провайдер контента 104, проиллюстрированный на Фигуре 1, соответствует логической связи одного или более вычислительных устройств, относящихся к провайдеру контента. В частности, провайдер контента 104 может включать элемент веб-сервера 110, соответствующий одному или более серверным вычислительным устройствам, предназначенный для получения и обработки запросов на получение контента (такого как Веб-страницы) от клиентских вычислительных устройств 102 или других провайдеров служб. Провайдер контента 104 может дополнительно включать элемент исходного сервера 112 и относящийся к нему элемент хранения 114, соответствующий одному или более вычислительным устройствам, предназначенные для получения и проведения обработки запросов на получение сетевых ресурсов от провайдера службы сети доставки контента. Провайдер контента 104 еще может дополнительно включать вычислительное устройство сервера приложений 111, такое как сервер потоковой передачи данных, предназначенное для обработки запросов на получение контента с потоковой передачей данных. Специалист в соответствующей области поймет, что провайдер контента 104 может относиться к различным дополнительным вычислительным ресурсам, таким как дополнительные вычислительные устройства, предназначенные для администрирования контента и ресурсов, серверы имен DNS и тому подобные. Например, хотя и не проиллюстрировано на Фигуре 1, провайдер контента 104 может относиться к одному или более компонентам серверов имен DNS, которые бы официально могли разрешать запросы DNS клиентского вычислительного устройства, соответствующие домену провайдера контента.

[0033] Продолжая ссылаться на Фигуру 1, среда сетевых вычислений 100 может далее включать провайдер службы сети доставки контента 106, имеющий связь с одним или более клиентскими вычислительными устройствами 102 и другими провайдерами служб посредством сети связи 108. Провайдер службы сети доставки контента 106, проиллюстрированный на Фигуре 1, соответствует логической связи одного или более вычислительных устройств, относящихся к провайдеру службы сети доставки контента. В частности, провайдер службы сети доставки контента 106 может включать ряд позиций Точек Доступа («POP») 116, 122, 128, которые соответствуют узлам сети связи 108. Каждая точка доступа 116, 122, 128 сети доставки контента включает элемент DNS 118, 124, 130, составленный из ряда вычислительных устройств сервера DNS, предназначенных для разрешения запросов DNS, поступающих от клиентских компьютеров 102. Каждая точка доступа 116, 122, 128 сети доставки контента также включает элемент кэша ресурса 120, 126, 132, составленный из ряда вычислительных устройств сервера кэша, предназначенных для хранения ресурсов, полученных от провайдеров контента, и передачи различных запрашиваемых ресурсов различным клиентским компьютерам. Элементы DNS 118, 124 и 130, а также элементы кэша ресурсов 120, 126, 132 могут дополнительно включать элементы дополнительного программного и/или аппаратного обеспечения, которые облегчают связь, включая элементы программного/аппаратного обеспечения баланса загрузки или разделения загрузки, но не ограничиваясь этим.

[0034] В иллюстративном варианте воплощения элемент DNS 118, 124, 130 и элемент кэша ресурса 120, 126, 132 рассматриваются сгруппированными логически вне зависимости от того, являются ли элементы или части элементов физически разделенными. Кроме того, хотя точки доступа 116, 122, 128 сети доставки контента проиллюстрированы на Фигуре 1 как логически относящиеся к провайдеру службы сети доставки контента 106, точки доступа сети доставки контента будут географически распределены в сети связи 108 таким способом, чтобы наилучшим образом обслуживать различные демографические показатели клиентских вычислительных устройств 102. Кроме того, специалист в соответствующей области поймет, что провайдер службы сети доставки контента 106 может быть отнесен к различным дополнительным вычислительным ресурсам, таким как дополнительные вычислительные устройства, предназначенные для администрирования контента и ресурсов, и тому подобные.

[0035] Продолжая ссылаться на Фигуру 1, среда сетевых вычислений 100 может также включать провайдер сетевых вычислений 107, имеющий связь с одним или более клиентскими вычислительными устройствами 102, провайдером службы сети доставки контента 106 и провайдером контента 104 посредством сети связи 108. Провайдер сетевых вычислений 107, проиллюстрированный на Фигуре 1, также соответствует логической связи одного или более вычислительных устройств, относящихся к провайдеру сетевых вычислений. В частности, провайдер сетевых вычислений 107 может включать ряд позиций Точек Доступа ("POP") 134, 142, 148, которые соответствуют узлам сети связи 108. Каждая точка доступа 134, 142, 148 включает элемент сетевых вычислений (NCC) 136, 144, 150, предназначенный для размещения приложений, таких так приложения потоковой передачи данных, посредством ряда экземпляров виртуальной машины, в общем случае называемой экземпляром элемента сетевых вычислений. Специалист в соответствующей области поймет, что элемент сетевых вычислений 136, 144, 150 будет включать ресурсы и программное обеспечение физического вычислительного устройства, предназначенные для предоставления нескольких экземпляров виртуальной машины или для динамического создания экземпляров виртуальной машины. Такое создание может быть основано на конкретном запросе, таком как получаемый от клиентского вычислительного устройства, или элемент сетевых вычислений может инициировать динамическое создание экземпляра виртуальной машины сам по себе. Каждая точка доступа 134, 142, 148 элемента сетевых вычислений также включает элемент хранения 140, 146, 152, составленный из ряда устройств хранения, предназначенный для хранения любого типа данных, используемых при доставке и обработке сетевых или вычислительных ресурсов, включая, но не ограничиваясь этим, данные пользователя, информацию о состоянии, требования к обработке, данные истории пользования и ресурсы, полученные от провайдеров контента, которые будут обрабатываться экземпляром элемента сетевых вычислений 136, 144, 150 и передаваться различным клиентским компьютерам, и т.д. Элементы сетевых вычислений 136, 144, 150 и элементы хранения 140, 146, 152 могут дополнительно включать элементы дополнительного программного обеспечения и/или аппаратного обеспечения, которые облегчают связь, включающие элементы программного/аппаратного обеспечения баланса загрузки или разделения загрузки, предназначенные для выбора экземпляров виртуальной машины, поддерживающих запрашиваемое приложение, и/или предоставления информации серверу имен DNS с целью облегчения маршрутизации запросов, но не ограничиваясь этим.

[0036] В иллюстративном варианте воплощения элементы сетевых вычислений 136, 144, 150 и элементы хранения 140, 146, 152 рассматриваются сгруппированными логически вне зависимости от того, являются ли элементы или части элементов физически разделенными. Например, провайдер сетевых вычислений 107 может поддерживать отдельные точки доступа с целью предоставления элемента сетевых вычислений и элементов хранения. Кроме того, хотя точки доступа 134, 142, 148 элементов сетевых вычислений проиллюстрированы на Фигуре 1 как логически относящиеся к провайдеру сетевых вычислений 107, точки доступа элемента сетевых вычислений будут географически распределены в сети связи 108 таким способом, чтобы наилучшим образом обслуживать различные демографические показатели клиентских вычислительных устройств 102. Кроме того, специалист в соответствующей области поймет, что провайдер сетевых вычислений 107 может относиться к различным дополнительным вычислительным ресурсам, таким как дополнительные вычислительные устройства, предназначенные для администрирования контента и ресурсов, и тому подобные. Еще далее специалист в соответствующей области поймет, что элементы провайдера сетевых вычислений 107 и элементы провайдера службы сети доставки контента 106 могут быть организованы одним и тем же или разными логическими объектами.

[0037] Теперь со ссылкой на Фигуры 2-6 будет проиллюстрировано взаимодействие между различными элементами среды сетевых вычислений 100, представленной на Фигуре 1. В частности, на Фигурах 2-6 проиллюстрировано взаимодействие между различными элементами среды сетевых вычислений 100 для обмена контентом между клиентским вычислительным устройством 102 и провайдером контента 104 посредством провайдера сетевых вычислений 107. Для примера, однако, иллюстрация была упрощена таким образом, что многие из элементов, используемых для облегчения связи, не показаны. Специалист в соответствующей области поймет, что такие элементы могут быть использованы, и что будут соответственно осуществляться дополнительные взаимодействия без отклонения от сущности и объема настоящего изобретения.

[0038] Со ссылкой на Фигуру 2, процесс может начаться с генерации и обработки запроса на открытие сессии просмотра, поступившего от клиентского вычислительного устройства 102 провайдеру сетевых вычислений 107. Как иллюстрация, клиентское вычислительное устройство 102 может загружать браузер с целью осуществления просмотра сетевого контента в ответ на событие или поступление запроса от пользователя. Вслед за загрузкой браузера браузер может реализовать подачу запроса на открытие новой сессии просмотра. С точки зрения пользователя клиентского вычислительного устройства запрос на открытие новой сессии просмотра соответствует целевому запросу на передачу запроса одному или более соответствующим провайдерам контента 104. Как иллюстрация, данный запрос может быть сгенерирован автоматически как результат загрузки браузера (например, запрос на открытие страницы по умолчанию или «домашней» страницы), или может быть сгенерирован как результат того, что пользователь переходит по ссылке или вводит сетевой адрес в адресную строку. Как проиллюстрировано на Фигуре 2, запрос на открытие сессии просмотра может быть передан сначала провайдеру сетевых вычислений 107. В иллюстративном варианте воплощения провайдер сетевых вычислений 107 использует программный интерфейс приложения регистрации («API») для принятия запросов на открытие сессии просмотра от клиентского вычислительного устройства 102. Запрос на открытие сессии просмотра может включать информацию о сетевом адресе, соответствующую запрашиваемому сетевому ресурсу, которая может иметь любую форму, включая, но не ограничиваясь этим, адрес Интернет-Протокола («IP»), URL, MAC-адрес и т.д. Запрос на открытие сессии просмотра может дополнительно включать информацию, указывающую на пользователя, браузер, клиентское вычислительное устройство 102 и/или любой другой логический объект, с помощью которого осуществляется просмотр.

[0039] Вслед за получением запроса на открытие сессии просмотра провайдер сетевых вычислений 107 может выбрать соответствующую точку доступа (в дальнейшем «POP») элемента сетевых вычислений, такую как POP элемента сетевых вычислений 142, для обслуживания запроса на открытие сессии просмотра, и может определить элемент хранения истории просмотров, основываясь на идентификационной информации, содержащейся в запросе на открытие сессии просмотра. Выбор POP элемента сетевых вычислений может определить ресурсы для обработки и сетевые ресурсы, доступные для созданных экземпляров виртуальной машины. Выбор ресурсов для обработки и сетевых ресурсов и предоставление программного обеспечения в экземпляре POP элемента сетевых вычислений может быть выполнен, по меньшей мере частично, с целью оптимизации связи с провайдером контента 104 и клиентским вычислительным устройством 102.

[0040] Со ссылкой на Фигуру 3 будет описано иллюстративное взаимодействие, предназначенное для генерирования и обработки запроса на получение сетевого ресурса от провайдера сетевых вычислений 107 провайдеру контента 104. Как проиллюстрировано на Фигуре 3, выбранная POP элемента сетевых вычислений 142 может генерировать сессию просмотра, соответствующую одному или более провайдерам контента, основываясь на запросе на открытие сессии просмотра, таком как иллюстративный запрос на открытие сессии просмотра, изображенный на Фигуре 2 выше. Как иллюстрация, создание экземпляра новой сессии просмотра может включать загрузку нового экземпляра виртуальной машины и/или экземпляра браузера в POP элемента сетевых вычислений 142, резервирующего или выделяющего память в устройстве, место для хранения или кэша, процессорное время, ширину канала сети или другие вычислительные или сетевые ресурсы для новой сессии просмотра.

[0041] Вслед за инициализацией нового экземпляра сессии просмотра POP элемента сетевых вычислений 142 может предоставить запрос на получение сетевого ресурса провайдеру контента 104, основываясь на сетевом адресе, включенном в запрос на открытие сессии просмотра. Например, запрос на открытие сессии просмотра может включать URL Веб-страницы, такой как «http://www.xyzsite.com/default.htm». POP элемента сетевых вычислений 142 может преобразовать URL в IP-адрес с помощью преобразователя DNS, относящегося к провайдеру сетевых вычислений (не показан), а может подать запрос на получение Веб-страницы от провайдера контента 104 в преобразованном IP-адресе. В различных вариантах воплощений сетевой ресурс может быть извлечен из любого сочетания провайдеров контента, серверов сети доставки контента (в дальнейшем «CDN») или хранилищ данных, относящихся к провайдеру сетевых вычислений 107. Например, провайдер сетевых вычислений может осуществлять проверку того, хранится ли ресурс в локальном кэше или на другом сервере или провайдере службы, относящемся к провайдеру сетевых вычислений 107. Если сетевой ресурс хранится в локальном или ассоциированном месте, POP элемента сетевых вычислений 142 может извлечь сетевой ресурс из локального или ассоциированного места скорее, чем получить от постороннего провайдера контента 104 или провайдера службы CDN 106. Как иллюстрация, POP элемента сетевых вычислений 142 может подавать запросы на получение любого количества сетевых ресурсов, согласно включенным в запрос на открытие сессии просмотра, и может получать данные сетевые ресурсы от любого количества различных источников последовательно или параллельно.

[0042] Как проиллюстрировано на Фигуре 3, провайдер контента 104 получает запрос на получение ресурса от POP элемента сетевых вычислений 142 и, соответственно, производит обработку запроса. В одном варианте воплощения провайдер контента 104 производит обработку запроса на ресурс так, как если бы он изначально был предоставлен клиентским вычислительным устройством 102. Например, провайдер контента 104 может выбирать тип контента, упорядочение контента или версию контента, согласно требованиям клиентского вычислительного устройства 102, подающего запрос. В другом варианте воплощения провайдеру контента 104 может предоставляться информация, относящаяся к POP элемента сетевых вычислений 142, предназначенная для применения для предоставления запрашиваемого контента (например, о доступном количестве ресурсов для обработки или ширине канала сети).

[0043] Вслед за получением запрашиваемого сетевого ресурса от провайдера контента 104 (или из другого источника, назначенного провайдером контента) POP элемента сетевых вычислений 142 может производить обработку сетевого ресурса с целью выделения идентификаторов встроенных ресурсов с целью сбора информации для определения конфигурации просмотра удаленной сессии клиента. Например, сетевой ресурс, такой как Веб-страница, может включать встроенную информацию о стиле каскадных таблиц стиля и Javascript, а также встроенные идентификаторы ресурсов, относящиеся к дополнительным ресурсам, таким как текст, изображения, видео, аудио, анимация, выполняемый код и другие файлы HTML, каскадных таблиц стилей и Javascript. В процессе выделения идентификаторов встроенных ресурсов POP элемента сетевых вычислений 142 может собирать информацию об обработанных сетевых ресурсах с целью дальнейшего использования при определении конфигурации просмотра удаленной сессии клиента, как обсуждается ниже со ссылкой на Фигуру 4.

[0044] Со ссылкой на Фигуру 4 описывается иллюстративное взаимодействие, предназначенное для генериров