СИСТЕМА ДИНАМИЧЕСКОЙ DNS ДЛЯ ЧАСТНЫХ СЕТЕЙ
DYNAMIC DNS SYSTEM FOR PRIVATE NETWORKS

Данная заявка притязает на приоритет родственной, совместно рассматриваемой Предварительной заявки на патент США №61/027714, зарегистрированной 11 февраля 2008 г., под авторством Philip Bernosky, озаглавленной "Internetworking Devices" и переданной правопреемнику настоящего изобретения (с № D07050 US01 в Патентном реестре), которая включается путем ссылки во всех отношениях, как если бы она была целиком изложена в этом документе.
Область техники, к которой относится изобретение
Настоящее изобретение в целом относится к организации сетей. Точнее говоря, варианты осуществления настоящего изобретения относятся к устройствам межсетевого взаимодействия.
Уровень техники
Сетевая технология и широкополосные сетевые платформы быстро развиваются и становятся всеобъемлющими. Эта среда взаимосвязи может использоваться по отношению к новой "подключенной" бытовой и промышленной электронике. При использовании в контексте этого документа термин "подключенная электроника" может относиться к электронным устройствам, которые могут публиковать и потреблять цифровой контент (например, кодированные материалы) вместе с другими такими устройствами, и от подключенных устройств в Интернет и другие сети.
Подходы, описанные в этом разделе, являются подходами, которые могли бы осуществляться, а не обязательно подходами, которые задуманы или осуществлены ранее. Поэтому, пока не указано иное, следует предполагать, что любой из подходов, описанных в этом разделе, называется предшествующим уровнем техники просто на основании их включения в этот раздел. Аналогичным образом, проблемы, установленные по отношению к одному или нескольким подходам, не следует предполагать признанными в любом предшествующем уровне техники на основе этого раздела, пока не указано иное.
Краткое описание чертежей
Настоящее изобретение ради примера, а не ради ограничения иллюстрируется на фигурах прилагаемых чертежей, и на которых одинаковые номера ссылок ссылаются на аналогичные элементы, и на которых:
Фиг.1 изображает поток информации в первом примере сетевой структуры, в соответствии с вариантом осуществления настоящего изобретения;
Фиг.2 изображает поток информации со вторым примером сетевой структуры, в соответствии с вариантом осуществления настоящего изобретения; и
Фиг.3 изображает пример платформы компьютерной системы, с которой может быть применен на практике вариант осуществления настоящего изобретения.
Описание примерных вариантов осуществления изобретения
В этом документе описываются устройства межсетевого взаимодействия. В нижеследующем описании для целей пояснения излагаются многочисленные специальные подробности, чтобы обеспечить всестороннее понимание настоящего изобретения. Однако станет очевидно, что настоящее изобретение может быть применено на практике без этих специальных подробностей. В других случаях общеизвестные структуры и устройства не описываются с исчерпывающими подробностями, чтобы избежать ненужного ограничения, затемнения или запутывания настоящего изобретения.
I. Обор
Примеры вариантов осуществления, описанные в этом документе, относятся к устройствам межсетевого взаимодействия. Компонент динамической службы имен (DNS) функционирует частным образом в отношении группы клиентских устройств, каждое из которых ассоциируется с уникальным унифицированным указателем ресурса (URL), который обслуживается компонентом DNS, который частным образом идентифицирует клиентские устройства в группе. URL дополнительно идентифицирует иерархию частных доменов, которая принудительно устанавливается в рамках группы и которая, по меньшей мере неявно, представляет частные отношения в ней между клиентскими устройствами. Сетевые правила применяются во всей группе на основе частных отношений или частных доменов. Устройства надежно аутентифицированы в рамках группы. Компонент службы совместного использования контента функционирует вместе с компонентом DNS, чтобы позволить одному из клиентских устройств в группе обращаться к контенту, ассоциированному с другим из клиентских устройств на основе, по меньшей мере частично, уникального URL другого клиентского устройства. Частный сетевой комплекс ("pnet") соответственно функционирует, по меньшей мере практически аналогично сети на основе Интернет-протокола (IP). Группа является безопасно доступной клиентским устройствам группы из сети, которая является внешней по отношению к группе. Кроме того, каждое клиентское устройство группы свободно доступно каждому из других клиентских устройств группы внутри группы.
Варианты осуществления могут эффективно снизить сложность, которая может ассоциироваться с установкой и обслуживанием домашних сетей, что для некоторых обычных потребителей может быть технически сложным. Например, варианты осуществления могут избегать конфигурирования маршрутизаторов и коммутаторов, модемов (модулятор/демодулятор), шлюзов и т.п. при помощи Протокола динамической конфигурации хоста (DHCP), IP-адресов и Универсального простого подключения (UPnP). DHCP выделяет IP-адреса динамически. Динамическое выделение IP-адреса дает возможность повторного использования IP-адресов (например, переназначение при разъединении). UPnP предоставляет прозрачную взаимосвязанность между некоторыми устройствами и другими технологиями. Кроме того, варианты осуществления без труда предоставляют возможность соединения между устройствами потребителя, которые могут быть не близкими физически или логически к группе pnet. Например, устройства группы, используемые вне дома потребителя, удаленные от местонахождения предприятия (или другого объекта), находящиеся за межсетевым экраном потребителя или предприятия или иным образом подвергнутые, возможно в большей степени мешающим, мерам безопасности и конфиденциальности, могут свободно и безопасно обращаться к группе pnet. При использовании в данном документе термин "устройства группы", "устройства в группе" и т.п. могут относиться к клиентским устройствам, которые содержат родственных участников группы pnet.
Вариант осуществления функционирует по принципу на основе IP или аналогичной Интернет-технологии, чтобы соединять устройства с частной интерсетью (pnet), и таким образом существенно устраняет влияние сложности сети, наряду с предоставлением значительных функциональных возможностей. Варианты осуществления соответственно разрешают доступ с помощью подключенных бытовых или промышленных электронных устройств (например, устройств, которые могут публиковать и потреблять цифровой контент, например кодированные материалы, вместе с другими такими устройствами, и от подключенных устройств в глобальную сеть и другие сети) как внутри, так и вне дома или предприятия к службам Интернета и контенту, сохраненному среди группы других подключенных устройств.
В некотором смысле, что быть чем-то похожим на некоторые функции IP и других Интернет-технологий, которые позволяют персональным компьютерам (РС) обращаться к веб-сайтам через серверы, вариант осуществления по своей природе функционирует глобально и в различных сетевых топологиях, чтобы связывать группу устройств, обращаться к контенту с других устройств группы и из глобальной сети и других сетей. При использовании в данном документе термин "глобальная сеть" может относиться к большому сетевому комплексу из различных сетей, который в мировом масштабе поддерживает доступ к "Всемирной паутине" (WWW). Таким образом, термин "глобальная сеть" в этом документе может отличаться от pnet, которая частным образом соединяет устройства в группе.
Варианты осуществления относятся к развертыванию созданных потребителем или предприятием "частных интерсетей", которые могут использовать технологии, которые по меньшей мере аналогичны используемым в глобальной сети. Однако варианты осуществления относятся к применению этих "Интернет-технологий" в группе подключенных устройств в частной интерсети. При использовании в данном документе термин "частная интерсеть" или pnet может относиться к закрытому домену, как в Интернете; закрытому, частному домену частных устройств, которые свободно соединяются использованием IP (или аналогичного по существу протокола).
Вариант осуществления относится к способу идентичности, который в своей основе представляет принадлежность и родственные отношения. Таким образом, вариант осуществления упрощает совместное использование контента, который может быть коммерческой и/или частной информацией, среди устройств группы в pnet. Такое совместное использование контента может называться "легальным" в этом документе. Наряду с полной поддержкой легального совместного использования контента в рамках группы pnet вариант осуществления, тем не менее, препятствует нелегальному (например, возможно противозаконному или дающему основания для судебного преследования) совместному использованию контента.
Вариант осуществления относится к способу аутентификации устройства и/или пользователя, который значительно упрощает взаимосвязь устройств группы. Кроме того, вариант осуществления относится к способу безопасной аутентификации и соединения устройств с группой снаружи локальной сети, наряду с разрешением одному устройству группы свободно обращаться к другому устройству группы внутри pnet.
II. Пример частных сетевых комплексов
А. Примерные сетевые возможности и функции
Фиг.1 изображает поток информации в первом примере сетевой структуры 100, в соответствии с вариантом осуществления настоящего изобретения. Вариант осуществления относится к созданию "частной интерсети" (pnet) 110 среди группы устройств. Pnet 110 может быть физически или логически ближайшей к дому пользователя или местонахождению предприятия или другого объекта, ассоциированного с pnet 110. Pnet 110 может включать в себя практически любое количество устройств, которые представлены в этом документе изображенными устройствам 102, 103, 104, 105 и 109. При использовании в данном документе термин "группа устройств" может относиться к семейству бытовых или промышленных электронных устройств. Термин может дополнительно подразумевать отношение между устройствами, которое может соответствовать общим, родственным или основанным на объектах ассоциациям между одним или несколькими пользователями устройств. Pnet 100 может рассматриваться как система для разрешения каждому из ассоциированных устройств группы обращаться друг к другу и обращаться к контенту, ассоциированному с каждым устройством.
Вариант осуществления использует способы, которые относятся к IP или аналогичным протоколам и связанным технологиям, например тем, с помощью которых функционируют глобальная сеть и Всемирная паутина. Таким образом, настройка и обслуживание сети в группе может извлекать выгоду из близости, простоты и по сути глобальной области действия Интернет-технологии. Каждое из устройств группы обладает уникальным, ассоциированным с ним URL, они обнаруживают друг друга посредством серверов DNS и автоматически и/или адаптивно направляют поток 100 информации внутри и снаружи дома или предприятия, используя способы, которые могут быть аналогичны или похожи на те, с помощью которых функционирует глобальная сеть.
Например, используя существующую глобальную сеть в качестве иллюстрации, URL и IP-адреса позволяют различным "доменам" глобальной сети выражаться, визуализироваться или описываться в терминах естественного языка, например простого английского. URL, ассоциированный с некоторым доменом, может быть превращен в IP-адрес, который является уникальным в глобальной сети, с помощью функции мирового главного каталога у глобальной DNS. URL, например, "http://www.dolby.com", "www.dolby.com" или "dolby.com" ассоциируется посредством глобальной DNS с IP-адресом, который соответствует веб-странице, которая визуализируется на языке гипертекстовой разметки (HTML) и ассоциируется с корпорацией, известной как "Dolby Laboratories, Inc".
Когда пользователь глобальной сети вводит такой URL на естественном языке, например, вводит подходящий текст, набранный буквенно-цифровым способом (или идеографически) в поле ввода обозревателя, который может быть подходящим образом конфигурироваться с помощью графического интерфейса пользователя (GUI), тогда технология, ассоциированная с глобальной сетью, превращает тот URL в определенный сервер по определенному адресу в определенной сети. Оттуда можно обратиться к полезной информации. Взаимодействие с пользователем является простым, эффективным, обычно положительным, прозрачным и очевидным. Например, хотя практически все пользователи могут пользоваться удобством извлечения информации подобным образом, многие пользователи могут быть практически неосведомленными (и не несущими сознательную ответственность) о лежащей в основе технологии, которая использовалась для возврата документа из URL, который они ввели.
Вариант осуществления содержит компонент 111 частной DNS (pDNS). Компонент 101 pDNS может содержать систему, устройство или службу, которая позволяет пользователю, потребителю, предприятию или другому объекту, ассоциированному с pnet 110, создать частный список частных устройств группы, включающий, например, устройства 102, 103, 104, 105 и 109. Каждое из устройств в частном списке обладает соответствующим уникальным частным URL (pURL). Компонент 111 pDNS обслуживает список частных pURL и предоставляет информацию 117, относящуюся к pURL в pnet 110, маршрутизатору/шлюзу 115 (или аналогично функционирующему сетевому объекту; например коммутатору). Хотя фиг.1 изображает структуру 100 как ассоциированную с адресацией по динамическим IP, следует принять во внимание, что варианты осуществления хорошо подходят для функционирования с адресацией по статическим IP.
С помощью запросов к компоненту 111 pDNS и соответственно возвращенной информации 117 о pURL маршрутизатор/шлюз 115 выполняет функции 116 трансляции и маршрутизации, которые относятся к аутентификации и комплексированию частных устройств, включающих примерные устройства 102, 103, 104, 105 и 109. Имена и метки устройств внутри pnet могут легко назначаться, считываться и пониматься большинством потребителей и профессионалов одинаково, потому что их номенклатура практически аналогична таковой у привычного URL, который используется в глобальной сети 150. Использующая похожие на IP протоколы, лежащая в основе сетевая технология, действующая внутри pnet 110, может быть неочевидна для квалификации пользователя, но быть эффективной и эффективно использоваться маршрутизатором/шлюзом 115 при выполнении функций маршрутизации и трансляции.
Кроме того, частная сущность компонента 111 pDNS соответствует степени безопасности. Например, хотя маршрутизатор/шлюз 115 функционирует для коммуникационного соединения pnet 110 с глобальной сетью 150 (и по возможности с другими сетями и сетевыми комплексами), никакого IP-адреса, URL, pURL или частного IP-адреса, ассоциированного с компонентом 111 pDNS или любым из частных устройств группы, не показывается в глобальной сети 150.
Внутри pnet 110 поддерживается иерархия субдоменов. Субдомены могут представлять собой принадлежность и отношения. Например, семья пользователя или другой объект мог бы выбрать имя "корневого домена", которое основывается на его фамилии. Для гипотетического примера семьи "Doe" пользователи и устройства, ассоциированные с той группой, могут представляться с помощью примерного pURL: http://doe.net. Возможные конфликты с доменными именами в глобальной сети по существу не относятся к делу. Частное доменное имя относится к частной интерсети. Pnet может быть практически непрозрачна с точки зрения глобальной сети, и pURL, ассоциированные с pnet, могут быть практически невидимыми, необнаруживаемыми или по существу бессмысленными для нее.
Члены группы, например члены гипотетического примера семьи Doe в этом документе, могут обращаться к pnet, с которой они ассоциируются. В рамках семьи или другой группы могут быть созданы субдомены. Например, гипотетические пользователи "Jane" и "John", ассоциированные с семьей Doe, могут соответственно конфигурировать уникальные субдомены, например могут соответствовать гипотетическим примерным pURL: "http://jane.doe.net" и "http://john.doe.net". Хотя субдомены могут быть уникальными, предполагаемое родственное отношение может выводиться из субдоменов "jane" и "john", потому что они оба являются субдоменами, которые принадлежат одинаковому семейному домену "Doe".
Кроме того, устройства также могут представлять субдомены. В примере членов гипотетической семьи Doe Jane может использовать устройство, например Ipod™ (семейство продуктов, доступное от Apple Computers, корпорации в Купертино, Калифорния), а John может использовать устройство, например Zune™ (семейство продуктов, доступное от Microsoft, корпорации в Редмонде, Вашингтон). Эти устройства могут соответствовать гипотетическим примерным pURL: "http://ipodjane.doe.net" и "http://zune.john.doe.net". Принадлежность и родственные отношения могут выводиться между устройствами, например, из отношения к корневому домену "doe.net" и личным доменам (например, "john" и "jane").
B. Пример возможностей совместного использования и безопасности
Внутри pnet 100 могут быть принудительно установлены правила передачи контента. Могут быть принудительно установлены различные правила передачи контента. Некоторые правила передачи могут быть в целом применимы внутри pnet 100. Например, коммерческий или другой предоставленный, или частный, или защищенный авторским правом контент может задавать правила передачи, которые сопровождают конкретный контент (или иным образом ассоциируются с ним). Общее правило для контента, ассоциированное с конкретным фильмом или музыкальным альбомом, может задавать политику добросовестного использования, применимую к ним, которая применялась бы в целом внутри pnet 100 по отношению к тому конкретному контенту. Правило может позволять передавать тот контент с устройства, ассоциированного с конкретным пользователем, на: (1) другое устройство, ассоциированное только с тем пользователем, (2) определенное количество раз (например, декларируя соответственно управление количеством экземпляров контента, которое пользователь может передать или скопировать), или (3) свободно. Следует принять во внимание, что вышеупомянутый пример всего лишь представляет общие правила передачи контента, и что внутри pnet 100 может быть принудительно установлен ряд других общеприменимых правил передачи контента.
Другие правила передачи могут быть применимы с чем-то более специфичным внутри pnet 100. Например, в pnet 100 с ее возможностями именования pDNS и pURL сохраненный на любом из устройств группы контент может быть свободно доступен с любого из других устройств группы. К контенту можно обращаться, например, с помощью простого пользовательского ввода. Пользовательский ввод вводит pURL, который задает подходящее устройство в группе, а также сохраненный на нем контент, который нужен для получения доступа. Например, гипотетический pURL может задавать название фильма, идентификатор видео или другой указатель контента, сохраненный на заданном устройстве. Например, гипотетический pURL: "http://ipod.jane.doe.net/starwars.mp4" может конкретно представлять пример фильма, кодированного кодеком MPEG-4 и имеющего название "Starwars", расположенного на устройстве iPod™, которое принадлежит примерному пользователю Jane в гипотетической семье Doe (или иным образом ассоциировано с ним).
Компонент 111 pDNS поддерживает список pURL и функционирует вместе с маршрутизатором/шлюзом 115 для преобразования IP-адрес и решения проблем маршрутизации, которые являются внутренними по отношению к pnet 110. После преобразования IP-адреса и маршрутизации запроса и информации между входным устройством группы (например, устройством 102) и целевым устройством, которое соответствует введенному pURL в pnet 110 (например, pURL "http://ipod.jane.doe.net" может соответствовать примерному устройству 103), указанная с помощью pURL информация извлекается из целевого устройства 103 и возвращается входному устройству 102. Однако пользователи pnet 110, наподобие пользователям глобальной сети 150, могут по существу оставаться неосведомленными и не озабоченными скрытыми техническими сложностями, выполняющими извлечение информации, которая им нужна от других устройств группы. В отличие от этого пользователи pnet 110 могут просто быть довольными, освобожденными или признавшими удобство от взаимодействия, которое по существу должно иметь сходство с их привычными навыками извлечения информации с помощью глобальной сети 150. Маршрутизатор/шлюз 115 может предоставлять услуги совместного использования контента между устройствами группы в pnet 110.
Возможности именования pURL и частные IP-адреса в pnet 110 реализуют возможности безопасности и конфиденциальности, которые эффективно "ограничивают" защищенный контент в сети, наряду с этим разрешая свободный доступ, извлечение и обмен контентом между устройствами группы. Конфиденциальность и безопасность соответственно улучшаются наряду с тем, что полностью поддерживаются добросовестное использование и аналогичные положительные принципы обмена информацией. В варианте осуществления pURL по существу представляют семейное (или похожее или аналогичное) отношение между группой устройств. Сетевая логика, ассоциированная с маршрутизатором/шлюзом 115, эффективно ограничивает или разрешает движение контента между устройствами на основе их отношения в рамках иерархии доменов и субдоменов.
Например, поставщики коммерческого контента могут устанавливать, что контент, который они предоставляют, разрешается совместно использовать с любым устройством (например, сохранять на нем), которым владеет один человек. Дополнительно или в качестве альтернативы поставщики контента могут устанавливать, что контент, который они предоставляют, разрешается совместно использовать с любым устройством, принадлежащим семье. Такие спецификации могут принудительно устанавливаться с помощью правил, которые подходят для pnet 110 и легко управляются сетевой логикой внутри домена, например, с помощью которых функционирует маршрутизатор/шлюз 115 в связи с информацией 117. Частный контент с помощью сетевой логики, действующей в pnet 100, может допускаться к совместному использованию и передаче между любыми устройствами в семье. Кроме того, может быть разрешено совместное использование некоторого контента с другими семейными доменами, тогда как для других доменов может быть ограничено совместное использование контента за пределами личного домена, ассоциированного с их соответствующей pnet.
C. Пример возможностей подключения
Варианты осуществления также могут упрощать подключение пользователя в pnet 100 при внесении устройств в частный домен. Например, при покупке или приобретении нового устройства для включения в pnet 100 пользователи могут просто инициализировать или включить устройство, чтобы выполнить подключение (например, установить коммуникационное и сетевое соединение устройства) в личной сети. В варианте осуществления инициализирующееся устройство запрашивает pURL, соответствующий его владельцу (например, для гипотетического пользователя "John Doe" используют соответственно подходящий pURL "john.doe.net"), и может выполнить подключение. Устройство связывается с компонентом 111 pDNS (например, сервером), который запрашивает аутентификацию.
Аутентификация может выполняться с помощью ввода пароля, биометрического соответствия, ответов на вопросы, других реагирующих механизмов или других средств. После аутентификации компонент pDNS может назначить или сохранить уникальный pURL, который соответствует устройству. Например, третье устройство iPod™ гипотетического пользователя John Doe после аутентификации в pnet 110 может ассоциироваться с примерным pURL: "ipod3.john.doe.net".
Назначение с проверкой подлинности надежно задает частный IP-адрес и ассоциированную информацию по маршрутизации в базе данных (или другом репозитории информации DNS), ассоциированной с компонентом 111 pDNS. Таким образом, инициализированное устройство получает доступ к базе данных DNS в сервере 111 pDNS и может использовать информацию, извлеченную из нее, чтобы обнаруживать связанные устройства в рамках pnet 100. Одновременно маршрутизатор/шлюз 115 может предоставлять или использовать ассоциированную информацию по маршрутизации, чтобы обрабатывать коммуникационный обмен между аутентифицированным инициализированным устройством и другими устройствами в pnet 110.
Таким образом, варианты осуществления могут эффективно использовать традиционные принципы идентификации URL. Например, вариант осуществления может функционировать в точном соответствии или согласии с доступными спецификациями OpenID в Интернете, например теми, которые могут быть опубликованы в различных Рабочих предложениях (RFC) Инженерной группы по развитию Интернета (IETF), чтобы осуществить образование и описание отношений внутри субдоменов с частными URL, которые обозначены с помощью pURL.
Вариант осуществления реализует идентичность, по меньшей мере в начале, в корневом домене. Например, корневой домен в гипотетических pURL в этом документе является синтаксисом, соответствующим части "doe.net" в pURL (синтаксисом ".net", соответствующим тому, что иногда называется "верхним уровнем", "первым уровнем" или "первичным доменным именем"). Устройства, стремящиеся получить аутентификацию в домен "doe.net" частной сети, могут просто получить адрес аутентификации из корневого домена. Например, частный домен pnet 100 может осуществлять идентичность по OpenID посредством pURL "openid.doe.net". Таким образом, устройства, стремящиеся к аутентификации в pnet 110, могут просто обратиться по этому конкретному pURL. После аутентификации в домене pnet 110 инициализирующееся устройство может свободно получить возможность подключения к другим устройствам.
D. Пример доступа к частной интерсети через внешние сети
Фиг.2 изображает поток информации во втором примере сетевой структуры 200, в соответствии с вариантом осуществления настоящего изобретения. Устройства группы могут безопасно подключаться к частной интерсети из физического или логического местонахождения, отличного от ближайшего к ним. Например, устройство 105 группы может подключиться к pnet 100 снаружи локальной сети и/или за пределами дома, предприятия или другого объекта, размещающего, разворачивающего или иным образом ассоциированного с pnet 100. Устройства группы, внешние по отношению к pnet 100, могут подключаться к ней через внешнюю сеть, которая может включать в себя глобальную сеть 155.
Вариант осуществления выполняет соединение внешне расположенных устройств группы (например, устройства 105) для доступа к частному домену. Устройство 105 проходит аутентификацию с помощью сервера 111 идентичности pDNS через глобальную сеть 155 и маршрутизатор/шлюз 115, и по существу попадает опосредованно в локальную сеть pnet 100. В качестве альтернативы или дополнительно устройство 105 может попасть в pnet 100 посредством прямого или промежуточного соединения с другим устройством группы из семейства устройств "doe.net", которое также физически или логически расположено внешне по отношению к pnet 100, но уже коммуникационно соединено и аутентифицировано в ее локальной сети. Например, устройство 105 может коммуникационно соединиться с другим устройством группы, которое, также будучи внешним по отношению к pnet 100, уже подключено (коммуникационно соединено и аутентифицировано) к ней через глобальную сеть 155 и маршрутизатор/шлюз 115.
Вариант осуществления может использовать два набора уникальных кодов для использования в качестве надежных индивидуальных идентификаторов. Уникальные коды или идентификаторы могут включать в себя случайно сформированный код, хэш-коды, цифровые сертификаты и методы обмена криптографическими ключами. Например, процедуры обмена ключами могут быть реализованы, по меньшей мере частично, посредством одного или нескольких из IPsec (защита данных, передаваемых по протоколу IP), IKE (протокол обмена ключами через Интернет), ISAKMP (протокол управления защищенными связями и ключами в Интернет) и/или связанных стандартов и протоколов Интернета. Вариант осуществления может использовать различные способы для формирования уникальных идентификаторов.
Вариант осуществления формируется и/или назначается код домена при создании частного корневого домена (например, корневого домена "doe.net"). Код домена может быть как уникальным с глобальной позиции, так и индивидуальным для частного домена, ассоциированного с pnet 100. Может существовать несколько частных доменов, которые могут иметь одинаковое название корневого домена на естественном языке. Например, более одного домена (возможно, многие) могут совместно использовать одинаковый идентификатор корневого домена "doe.net". Однако, несмотря на это очевидное, к тому же и поверхностное сходство, каждый домен частной интерсети соответствует глобально уникальному коду домена. Важно, что уникальные коды доменов позволяют доменам частной интерсети различаться и отличаться друг от друга со стороны их соответствующих частных доменов.
Вариант осуществления формирует второй набор кодов для каждого устройства группы. Например, после аутентификации нового устройства в pnet 110 создается и/или назначается "зависящий от устройства код", который конкретно соответствует проходящему аутентификацию устройству и который уникален в рамках частного домена. Важно, что код домена, объединенный с зависящим от устройства кодом, представляют идентификатор для заданного устройства группы, который сохраняет свою уникальную специфику глобально, например, с точки зрения пользователей и устройств в других сетях, внешних по отношению к pnet 100 и из глобальной сети 155.
Таким образом, устройства группы, хотя и не близкие физически или логически или находящиеся в границах pnet 110, размещающей локальную сеть, могут безопасно подключаться к ней через глобальную сеть 155. Существует большое число внешних местонахождений, из которых пользователь "семьи Doe" (или сотрудник предприятия или другого объекта, который аналогичным образом может рассматриваться в родственном или связанном контексте) может попытаться соединиться с pnet 110. К глобальной сети 155 можно получить доступ, например, из кафе, пабов, местонахождения компании потребителя, дома друзей, средств массового транспорта и аэропортов. Через общественную глобальную сеть 155 можно безопасно обратиться к pnet 110 с любого из ее внешне расположенных устройств группы.
Варианты осуществления упрощают аутентификацию и подключение, которые в противном случае усложнялись бы проблемами широкополосного доступа потребителя, например динамическим происхождением IP-адресов, которые могут применяться для дома потребителя, наличием межсетевых экранов и других преград и структур безопасности, и трансляцией сетевых адресов в маршрутизаторе потребителя. Варианты осуществления соответственно предоставляют динамическую систему для связи с частной интерсетью, аутентификации, взаимодействия и обмена информацией с ней, несмотря на такие проблемы.
Вариант осуществления реализует службу Интернета для преобразования кода домена, описанного в этом документе, в частный IP-адрес соответствующей сети с частной DNS (например, pnet 100). Например, сервер 111 pDNS время от времени, периодически или оперативно связывается с динамической глобальной DNS-службой 151 (фиг.1), ассоциированной с глобальной сетью 155, и гарантирует, что доступны текущие глобальные IP-адреса, необходимые для глобально контактирующих частных интерсетей. Важно, что варианты осуществления используют по существу скрытый код домена для адресации частного домена в pnet 110. Код домена эффективно скрывает частное доменное имя ("doe.net") от общедоступной динамической глобальной DNS-службы 151, соответственно предоставляя дополнительный уровень безопасности. Хотя фиг.2 изображает структуру 200 как ассоциированную с адресацией по динамическим IP, следует принять во внимание, что варианты осуществления хорошо подходят для функционирования с адресацией по статическим IP.
При обнаружении глобального IP-адреса частного домена пользователя в pnet 100 частное, внешнее устройство 105 группы может связаться с сервером 111 pDNS пользователя (например, через глобальную сеть 155 и маршрутизатор/шлюз 115), чтобы пройти аутентификацию и в конечном счете получить доступ в локальную сеть посредством функций посредника, обеспечиваемых pDNS 111. В варианте осуществления проходящее аутентификацию устройство 105 использует как код домена, так и зависящий от устройства код, например доменное имя ("doe.net") и пароль аутентификации или другой механизм безопасности. Глубокая защита предоставляется несколькими уровнями безопасности, которые могут отпугивать взломщиков, похитителей контента и других злодеев, сетевых мошенников и современных преступников.
Важно, что механизм направления, используемый с вариантами осуществления в этом документе, поддерживает аутентификацию как функцию компонентов частного домена pnet 100. Это ограничивает раскрытие другой идентичности и аутентификационных данных в глобальную сеть 155. Хотя код домена может быть показан в глобальную сеть 155, доменное имя ("doe.net"), имена устройств группы и коды устройств группы остаются частными и по существу скрытыми. Таким образом, имена устройств группы и коды устройств группы, необходимые для аутентификации и доступа, не раскрываются или не становятся доступными в глобальной сети 155.
В сетевой структуре 200 соответственно может функционировать процедура для комплексирования устройств группы. На этапе 211 формируются pURL, ассоциированные с каждым из устройств группы. Например, гипотетический pURL "Dev1.john.doe.net" может соответствовать устройству 201 группы, а pURL "Dev4.john.doe.net" может соответствовать устройству 104 группы. При попытке внешнего устройства 105 группы подключиться к pnet 100, чтобы с использованием кода домена получить доступ к информации, ассоциированной с устройствами 201, 102, 103 или 104 группы, обнаруживается его членство в группе, и частная информация по маршрутизации получается или извлекается частным образом в pnet 110 на этапе 222. На этапе 233 устройство 105 аутентифицируется с помощью собственного кода устройства, который может быть зашифрован. После аутентификации устройство 105 может свободно функционировать внутри pnet 110, хотя оно может не быть физически или логически близким к ней, и может безопасно обращаться к информации, ассоциированной с другими устройствами 201, 102, 103 и 104 группы.
III. Пример платформы компьютерной системы
Фиг.3 изображает пример платформы 300 компьютерной системы, с помощью которой может быть реализован вариант осуществления настоящего изобретения. Компьютерная система 300 включает в себя шину 302 или другой механизм связи для передачи информации, и процессор 304, соединенный с шиной 302 для обработки информации. Компьютерная система 300 также включает в себя основное запоминающее устройство 306, например оперативное запоминающее устройство (RAM) или другое динамическое запоминающее устройство, соединенное с шиной 302 для хранения информации и команд, которые должны выполняться процессором 304. Основное запоминающее устройство 306 также может использоваться для хранения временных переменных или другой промежуточной информации во время исполнения команд, которые должны выполняться процессором 304. Компьютерная система 300 дополнительно включает в себя постоянное запоминающее устройство 308 (ROM) или другое статическое запоминающее устройство, соединенное с шиной 302 для хранения статической информации и команд для процессора 304. Предоставляется запоминающее устройство 310, например магнитный диск или оптический диск, и оно соединяется с шиной 302 для хранения информации и команд.
Компьютерная система 300 может соединяться посредством шины 302 с дисплеем 312, например жидкокристаллическим дисплеем (LCD), электронно-лучевой трубкой (CRT) или т.п., для отображения информации пользователю компьютера. Устройство ввода 314, включающее буквенно-цифровые и другие клавиши, соединяется с шиной 302 для передачи информации и наборов команд процессору 304.
Другим типом пользовательского устройства ввода является управление 316 курсором, например мышь, шаровой манипулятор или клавиши управления курсором, для передачи информации о направлении и наборов команд процессору 304 и для управления перемещением курсора на дисплее 312. Это устройство ввода обычно имеет две степени свободы по двум осям, первой оси (например, х) и второй оси (например, у), что позволяет устройству задавать положения на плоскости.
Изобретение имеет отношение к использованию компьютерной системы 300 для ассоциации информации с мультимедийным контентом. В соответствии с одним вариантом осуществления изобретения, компьютерной системой 300 предоставляются устройства межсетевого взаимодействия в ответ на выполнение процессором 304 одной или нескольких последовательностей из одной или нескольких команд, содержащихся в основном запоминающем устройстве 306. Такие команды могут считываться в основное запоминающее устройство 306 с другого машиночитаемого носителя, например запоминающего устройства 310. Выполнение последовательностей команд, содержащихся в основном запоминающем устройстве 306, заставляет процессор 304 выполнять этапы процесса, описанные в этом документе. Один или несколько процессоров в многопроцессорной компоновке также могут применяться для выполнения последовательностей команд, содержащихся в основном запоминающем устройстве 306. В альтернативных вариантах осуществления могут использоваться аппаратные схемы вместо или в сочетании с программными командами для реализации изобретения. Таким образом, варианты осуществления изобретения не ограничиваются каким-либо особым сочетанием аппаратных схем и программного обеспечения.
Термин "машиночитаемый носитель" при использовании в данном документе относится к любому носителю, который участвует в предоставлении команд процессору 304 для исполнения. Такой носитель может принимать многие формы, включающие, но не только, энергонезависимые носители, энергозависимые носители и передающие среды. Энергонезависимые носители включают в себя, например, оптические или магнитные диски, например запоминающее устройство 310. Энергозависимые носители включают в себя динамическое запоминающее устройство, например запоминающее устройство 306. Передающие среды включают в себя коаксиальные кабели, медный провод и другие проводники и волоконную оптику, включая провода, которые образуют шину 302. Передающие среды также могут принимать форму звуковых или световых волн, например сформированных во время радиоволновых и инфракрасных передач данных.
Общие формы машиночитаемых носителей включают в себя, например, дискету, гибкий диск, жесткий диск, магнитную ленту или любой другой магнитный носитель, CD-ROM, любой другой оптический носитель, перфокарты, перфоленту, любой другой устаревший или другой физический носитель с рисунком из отверстий, RAM, PROM и EPROM, FLASH-EPROM, любая другая микросхема или картридж памяти, несущая, которая описана ниже, или любой другой носитель, с которого может считывать компьютер.
Различные формы машиночитаемых носителей могут участвовать в переносе одной или нескольких последовательностей из одной или нескольких команд к процессору 304 для исполнения. Например, команды сначала могут переноситься на магнитном диске удаленного компьютера. Удаленный компьютер может загрузить команды в динамическое запоминающее устройство и отправить команды по телефонной линии с использованием модема. Локальный модем компьютерной системы 300 может принять данные по телефонной линии и использовать инфракрасный передатчик для преобразования данных в инфракрасный сигнал. Детектор инфракрасного излучения, соединенный с шиной 302, может принять данные, переданные в инфракрасном сигнале, и поместить данные в шину 302. Шина 302 переносит данные в основное запоминающее устройство 306, из которого процессор 304 извлекает и выполняет команды. Команды, принятые основным запоминающим устройством 306, при желании могут храниться в запоминающем устройстве 310 либо до, либо после исполнения процессором 304.
Компьютерная система 300 также включает в себя интерфейс 318 связи, соединенный с шиной 302. Интерфейс связи 318 обеспечивает двустороннее соединение для передачи данных с сетевым каналом 320, который подключен к локальной сети 322. Например, интерфейс 318 связи может быть платой цифровой сети с интеграцией услуг (ISDN) или модемом цифровой абонентской линии (DSL), кабельным или иным модемом для предоставления соединения передачи данных соответствующему типу телефонной линии. В качестве другого примера интерфейс 318 связи может быть платой локальной сети (LAN) для обеспечения соединения передачи данных с совместимой LAN. Также могут быть реализованы беспроводные линии связи. В любой такой реализации интерфейс 318 связи отправляет и принимает электрические, электромагнитные или оптические сигналы, которые несут потоки цифровых данных, представляющие различные типы информации.
Сетевой канал 320 обычно обеспечивает передачу данных через одну или несколько сетей другим устройствам обработки данных. Например, сетевой канал 320 может обеспечивать соединение через локальную сеть 322 с главным компьютером 324 или с оборудованием передачи данных, управляемым Поставщиком 326 услуг Интернета (ISP) (например, для глобальной сети 155; фиг.1, 2). В свою очередь ISP 326 предоставляет услуги передачи данных через всемирную сеть передачи пакетных данных, теперь обычно называемую "Интернетом" 328 (например, которая может быть отождествлена или представлять глобальную сеть 155; фиг.1, 2). Локальная сеть 322 и глобальная сеть 328 используют электрические, электромагнитные или оптические сигналы, которые переносят потоки цифровых данных. Частная интерсеть, описанная в этом документе (например, pnet 110; фиг.1, 2), также может использовать такие сигналы. Сигналы по различным сетям и сигналы в сетевом канале 320 и по интерфейсу 318 связи, которые переносят цифровые данные к компьютерной системе 300 и от нее, являются типовыми формами несущих, транспортирующих информацию.
Компьютерная система 300 может отправлять сообщения и принимать данные, включающие программный код, по сети (сетям), сетевому каналу 320 и интерфейсу 318 связи. В примере глобальной сети сервер 330 мог бы передавать запрошенный код для прикладной программы через глобальную сеть 328, ISP 326, локальную сеть 322 и интерфейс 318 связи. В соответствии с изобретением одно такое загруженное приложение обеспечивает устройства межсетевого взаимодействия, которые описаны в этом документе.
Принятый код может выполняться процессором 304, когда он принимается, и/или сохраняться в запоминающем устройстве 310 или другом энергонезависимом хранилище для более позднего выполнения. Таким образом, компьютерная система 300 может получать код приложения в виде несущей.
Компьютерная система 300 может представлять различные компьютеры, компьютеризированные устройства связи и сетевые устройства, развлекательные, воспроизводящие мультимедиа и игровые устройства и другие электронные и цифровые устройства. Компьютерная система 300 может соответственно представлять персональный компьютер (РС) и аналогичные компьютеры (рабочие станции, компьютеры на основе Apple™ и Linux) различных типов, характеристик портативности и форм-факторов, которые могут включать в себя (но не ограничиваются) настольные компьютеры, переносные компьютеры, карманные компьютеры, персональные цифровые помощники (PDA), сотовые телефоны, проигрыватели мультимедиа (например, MP3 и/или других кодеков или форматов), игровые устройства и т.п.
Хотя варианты осуществления описаны в отношении выполнения с помощью компьютерной системы, следует принять во внимание, что варианты осуществления также могут быть реализованы с помощью схем и устройств, таких как интегральная схема (IC). Варианты осуществления могут функционировать с помощью IC, которые включают в себя (но не только) специализированную интегральную схему (ASIC), микроконтроллер, программируемую пользователем вентильную матрицу (FPGA) или программируемое логическое устройство (PLD). Функциональные возможности межсетевого взаимодействия, ассоциированные с вариантами осуществления, могут относиться к особенностям структуры и исполнения устройств, таких как ASIC. В качестве альтернативы или дополнительно, функциональные возможности межсетевого взаимодействия могут выполняться с помощью программных команд, логических состояний и/или конфигураций логических вентилей, применяемых к программируемым IC, например микроконтроллерам, PLD и FPGA.
IV. Примеры вариантов осуществления
Варианты осуществления настоящего изобретения соответственно могут относиться к одному или нескольким перечисленным примерам вариантов осуществления, описанных в пунктах ниже.
1. Система, содержащая:
компонент динамической службы имен, который функционирует частным образом в отношении группы клиентских устройств, каждое из которых ассоциируется с уникальным унифицированным указателем ресурса, обслуживаемым компонентом динамической службы имен, который частным образом идентифицирует клиентские устройства в группе;
где унифицированный указатель ресурса дополнительно идентифицирует иерархию частных доменов, которая принудительно устанавливается в рамках группы и которая, по меньшей мере неявно, представляет частные отношения в ней между клиентскими устройствами;
где сетевые правила применяются во всей группе на основе одного или нескольких частных отношений или частных доменов; и
где устройства надежно аутентифицированы в рамках группы; и
компонент службы совместного использования контента, который функционирует вместе с компонентом динамической службы имен, чтобы позволить по меньшей мере первому из клиентских устройств в группе обращаться к контенту, ассоциированному по меньшей мере со вторым из клиентских устройств на основе, по меньшей мере частично, уникального унифицированного указателя ресурса по меньшей мере второго из клиентских устройств.
2. Система, которая изложена в примере перечисленного варианта 1 осуществления, где система содержит частную интерсеть, которая функционирует в соответствии с протоколом, который по меньшей мере в главном аналогичен Интернет-протоколу.
3. Система, которая изложена в примере перечисленного варианта 1 осуществления, в которой группа является безопасно доступной клиентским устройствам из сети, которая является внешней по отношению к группе.
4. Система, которая изложена в примере перечисленного варианта 1 осуществления, в которой каждое клиентское устройство в группе является свободно доступным для каждого из других клиентских устройств внутри группы.
5. Система, которая изложена в примере перечисленного варианта 1 осуществления, в которой унифицированный указатель ресурса дополнительно идентифицирует контент, ассоциированный с каждым из клиентских устройств в группе.
6. Система, которая изложена в примере перечисленного варианта 5 осуществления, в которой компонент совместного использования контента функционирует для указания одного или нескольких из второго клиентского устройства и ассоциированного с ним контента в соответствии с унифицированными указателями ресурсов, соответствующих им.
7. Система, которая изложена в примере перечисленного варианта 1 осуществления, в которой контент, ассоциированный с каждым из устройств, является свободно переносимым между каждым из устройств в группе.
8. Система, которая изложена в примере перечисленного варианта 1 осуществления, в которой контент, ассоциированный с каждым из устройств, который формируется частным образом по отношению к группе, является свободно переносимым между каждым из устройств в группе; и
где контент, который формируется иначе, чем частным образом по отношению к устройствам группы, является переносимым внутри группы в соответствии с ассоциированными с ним правилами доступа к контенту.
9. Система, которая изложена в примере перечисленного варианта 8 осуществления, в которой передача контента, который формируется иначе, чем частным образом по отношению к устройствам группы, является переносимой изнутри группы к объекту, внешнему по отношению к ней, в соответствии с ассоциированными с ним правилами доступа к контенту; или
в которой блокируется передача контента, который формируется иначе, чем частным образом по отношению к устройствам группы, изнутри группы к сущности, которая является внешней по отношению к ней.
10. Система, которая изложена в примере перечисленного варианта 1 осуществления, в которой унифицированные указатели ресурсов содержат по меньшей мере корневой домен.
11. Система, которая изложена в примере перечисленного варианта 10 осуществления, в которой один или несколько унифицированных указателей ресурсов дополнительно содержат идентификатор, который однозначно идентифицирует субдомен корневого домена.
12. Система, которая изложена в одном или нескольких из примера перечисленного варианта 10 осуществления или примера перечисленного варианта 11 осуществления, в которой один или несколько унифицированных указателей ресурсов дополнительно содержат идентификатор, который однозначно идентифицирует одно из устройств группы.
13. Система, которая изложена в примере перечисленного варианта 12 осуществления, в которой один или несколько унифицированных указателей ресурсов дополнительно содержат идентификатор, который однозначно идентифицирует контент, ассоциированный с одним из устройств группы.
14. Система, которая изложена в одном или нескольких примерах перечисленных вариантов 1, 10, 11, 12 или 13 осуществления, в которой один или несколько корневых доменов или субдоменов подразумевают родственные отношения внутри группы.
15. Система, которая изложена в примере перечисленного варианта 10 осуществления, в которой код домена, однозначно соответствующий группе, формируется на основе корневого домена.
16. Система, которая изложена в примере перечисленного варианта 15 осуществления, в которой код домена формируется при создании корневого домена.
17. Система, которая изложена в примере перечисленного варианта 15 осуществления, в которой код домена однозначно представляет группу; и
где на основе кода домена можно обращаться к группе с помощью устройства группы из физического или логического местоположения, которое отличается от ближайшего к местоположению, ассоциированному с группой.
18. Система, которая изложена в примере перечисленного варианта 15 осуществления, в которой код устройства формируется для каждого из устройств в группе.
19. Система, которая изложена в примере перечисленного варианта 18 осуществления, в которой коды устройств, ассоциированные с каждым из устройств группы, формируются при их инициализации.
20. Система, которая изложена в примере перечисленного варианта 18 осуществления, в которой код домена и коды устройств, соответствующие каждому из устройств, функционируют для однозначного представления каждого из устройств группы с глобальной позиции.
21. Система, которая изложена в примере перечисленного варианта 20 осуществления, в которой код домена показывается в глобальную сеть;
где компонент частной динамической службы имен динамически отслеживает адрес по Интернет-протоколу, ассоциированный с кодом домена; и
где каждый из кодов устройств скрыт от глобальной сети.
22. Машиночитаемый носитель информации, содержащий команды, которые при выполнении одним или несколькими процессорами конфигурируют систему, которая изложена в любом из примеров перечисленных вариантов 1-21 осуществления.
23. Устройство, содержащее:
по меньшей мере одно из вычислительного, развлекательного устройства или устройства связи;
в котором по меньшей мере одно из вычислительного, развлекательного устройства или устройства связи оснащается системой, которая изложена в любом из примеров перечисленных вариантов 1-21 осуществления.
24. Интегральная схема, оснащенная по меньшей мере компонентом системы, которая изложена в любом из примеров перечисленных вариантов 1-21 осуществления.
25. Способ обработки, выполняемый одним или несколькими процессорами в системе, которая изложена в любом из примеров перечисленных вариантов 1-21 осуществления, или управляемый машиночитаемым носителем, который изложен в примере перечисленного варианта 22 осуществления.
V. Эквиваленты, расширения, альтернативы и прочее
Таким образом, описываются примеры вариантов осуществления для устройств межсетевого взаимодействия. В предшествующем описании варианты осуществления настоящего изобретения описаны со ссылкой на многочисленные специальные подробности, которые могут меняться от реализации к реализации. Таким образом, единственным и исключительным признаком того, что является изобретением и предполагается заявителями как изобретение, является формула изобретения, которая исходит из данной заявки, в характерной форме, в которой публикуется такая формула изобретения, включая любое последующее исправление. Любые определения, в прямой форме изложенные в этом документе для терминов, содержащихся в такой формуле изобретения, должны определять смысл таких терминов при использовании в формуле изобретения. Поэтому никакое ограничение, элемент, свойство, признак, преимущество или отличительная черта, которое ясно не изложено в формуле изобретения, не должно каким-либо образом ограничивать объем такой формулы изобретения. Описание изобретения и чертежи соответственно должны рассматриваться в пояснительном, а не ограничивающем значении.