distributed nets

Post on 22-May-2015

608 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Distributed networks help control yourself online identity in the Internet.A characteristic feature of them is absence of a central server. Nodesin the network belong to each of itsparticipants, and the software runs on your computeruser or a trusted server. The user determines the distribution policyof its data.Distributed social networks built on open technologies: Atom,WebFinder, OpenID/OAuth, Salmon, ActivityStreams and i.e.Most of developing distributed networks is opensourced and underdevelopment. Some of them is available for usage. For example:SatausNet . StatusNet is the open source microblogging platform thathelps you share and connect in real-time within your own domain. Yetanother distibuted social network OneSocialWeb dream of a world whereall social networks are connected and work together in a way similarto email.

TRANSCRIPT

Открытые протоколы - основа распеределеннхсоциальных сетей.

Александр Загацкий

lvee

11 апреля - судный день

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

SkyNet Goes Online

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

11 апреля

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

11 апреля

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

foursquare - down

социальная сеть с функцией геопозиционирования

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

hotsuite - down

"панель управления" социальными сервисами

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

quora - down

социальный сервис обмена знаниями

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

reddit - down

социальный новостной сайт

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

FriendFeed - down

агрегатор информации из различных социальных сетей

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Тут были мои заметки

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Так сохранился сайт в кэше

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Интернет не работает

В ожидании когда заработает Internet

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Сервисы могут быть куплены

Письмо от Yahoo! о продаже Delicious

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Сервисы могут неожиданно закрыться

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Распределенные сети

Основные черты

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

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Протоколы и форматы

О чем пойдет речь:

Atom/RSSWebFingerOpenID/OAuthPubsubhubbubActivityStreamsSalmonXMPPPortable Contacts

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Atom

Формат синдикации Atom позволяет описывать наборывеб-ресурсов

основан на XML и расширяемсовременная замена RSSявляется контейнером для других форматов

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Пример Atom

� �1 <?xml version="1.0" encoding="utf-8"?>2 <feed xmlns="http://www.w3.org/2005/Atom">3 <title>Example Feed</title>4 <link href="http://example.org/"/>5 <updated>2003-12-13T18:30:02Z</updated>6 <author>7 <name>John Doe</name>8 </author>9 <id>urn:uuid:60a76c80-d399-11d9-b93C-0003939e0af6</

id>10 <entry>11 <title>Atom-Powered Robots Run Amok</title>12 <link href="http://example.org/2003/12/13/atom03"

/>13 <id>urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a

</id>14 <updated>2003-12-13T18:30:02Z</updated>15 <summary>Some text.</summary>16 </entry>17 </feed>� �

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

ActivityStreams - cоциальная активность

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Иван Васильевич меняет профессию

Verb Object

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

WebFinger

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

WebFinger - набор технологий и форматов

The Hammer Stack

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Webfinger - цель профиль пользователя

LRRD - Link-based Resource Descriptor Discovery protocolНачнем с адреса:

zag@status.net

Определяем LRDD адрес:

http://status.net/.well-known/host-meta

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Webfinger - цель профиль пользователя

curl http://status.net/.well-known/host-meta� �1 <?xml version="1.0" encoding="UTF-8"?>2 <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0"3 xmlns:hm="http://host-meta.net/xrd/1.0">4 <hm:Host>status.net</hm:Host>5 <Link rel="lrdd" template="http://status.net/xrd?uri

={uri}">6 <Title>Resource Descriptor</Title>7 </Link>8 </XRD>� �

Интерес представляет:

http://status.net/xrd?uri=\{uri\}

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Webfinger - цель профиль пользователя

Берем:

zag@status.net

Добавляем acct:

acct:zag@status.net

Адрес для запроса XRD:

http://status.net/xrd?uri=acct:zag@status.net

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Extensible Resource Descriptor (XRD)

curl http://status.net/xrd?uri=acct:zag@status.net� �1 <?xml version="1.0" encoding="UTF-8"?>2 <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0">3 <Subject>acct:zag@status.net</Subject>4 <Link rel="http://webfinger.net/rel/profile-page"5 type="text/html" href="http://zag.status.net/zag"/>6 <Link rel="http://microformats.org/profile/hcard"7 type="text/html" href="http://zag.status.net/hcard"/>8 <Link rel="salmon" href="http://zag.status.net/main/

salmon/user/1"/>9 <Link rel="http://salmon-protocol.org/ns/salmon-

replies"10 href="http://zag.status.net/main/salmon/user/1"/>11 <Link rel="magic-public-key"12 href="data:application/magic-public-key,RSA.(...)c=.

AQAB"/>13 <Link rel="http://ostatus.org/schema/1.0/subscribe"14 template="http://zag.status.net/main/ostatussub?

profile={uri}"/>15 <Link rel="http://specs.openid.net/auth/2.0/provider"16 href="http://zag.status.net/zag"/>17 </XRD>� �

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

XRD

XRD содержит много полезной информации о пользователе:

адрес openid серверапубличный ключданные для других протоколов

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

OpenID/OAuth - протоколы аутентификации и авторизации

Позволяют повысить безопасность при взаимодействиинескольких независимых сервисов.

Пример openid адреса:http://zag.myopenid.com/

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Адрес OpenID сервера в профиле XRD

� �1 <?xml version="1.0" encoding="UTF-8"?>2 <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0">3 <Subject>acct:zag@status.net</Subject>4 <Link rel="http://microformats.org/profile/hcard"5 type="text/html" href="http://zag.status.net/hcard"/>6 <Link rel="salmon" href="http://zag.status.net/main/

salmon/user/1"/>7 <Link rel="http://salmon-protocol.org/ns/salmon-

replies"8 href="http://zag.status.net/main/salmon/user/1"/>9 <Link rel="http://specs.openid.net/auth/2.0/provider"

10 href="http://zag.status.net/zag"/>11 </XRD>� �

Адрес OpenID сервера:� �1 <Link rel="http://specs.openid.net/auth/2.0/provider"2 href="http://zag.status.net/zag"/>� �

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Простой способ ввода OpenID

Из исходного:

zag@status.net

Получили адрес OpenID сервера:http://zag.status.net/zag

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

pubsubhubbub - протокол подписки/публикации обновлений

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Опрос ресурсов для обновлений

Обычная структура

Hot Day

Hot Day

Недостаток: излишняя нагрузка на источник

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Снижение нагрузки на исходный сайт

Уведомления о новых записях

Hot Day

Hot Day

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Возможные схемы распределенных структур

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Salmon protocol

Salmon - протокол обмена сообщениями с проверкойподлинности отправителя

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Определение salmon-endpoint

Atom/RSS ссылка:� �1 <link rel="salmon" href="http://example.org/salmon-

endpoint"/>� �XRD:� �

1 <Link rel="salmon" href="http://zag.status.net/main/salmon/user/1"/>

2 <Link rel="http://salmon-protocol.org/ns/salmon-replies"

3 href="http://zag.status.net/main/salmon/user/1"/>� �

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Salmon - алгоритм взаимодействия

Atom entry

Salmon

endpoint

XRDrel="magic-public-key"

verifyMagicSig

200 OK

ActivityStreams

+

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

XMPP и Portable Contacts

Также:

XMPP

Выступает в качестве транспорта

Portable Contacts

Сервис доступа к адресной книге ( OAuth )

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Открытые распределенные сети

С чего начать знакомство ?

StatusNet

Платформа для микроблоггинга StatusNet. http://status.net/

Diaspora

Социальная сеть Diaspora. http://www.joindiaspora.com/

OneSocialWeb

Социальная сеть OneSocialWeb, построенная на основепротокола XMPP. http://onesocialweb.org/

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

Вопросы

Вопросы ?

The Hammer Stack http://hueniverse.com/2009/11/the-discovery-protocol-stack-redux/"Социальные API и протоколы". Загацкий А.http://writeat.com/zag/social-book/home page, mail http://zag.ru, zag(at)cpan.org

Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий

top related