Distributed nets
-
Upload
zagru -
Category
Technology
-
view
614 -
download
1
description
Transcript of Distributed nets
![Page 1: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/1.jpg)
Открытые протоколы - основа распеределеннхсоциальных сетей.
Александр Загацкий
lvee
![Page 2: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/2.jpg)
11 апреля - судный день
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 3: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/3.jpg)
SkyNet Goes Online
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 4: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/4.jpg)
11 апреля
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 5: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/5.jpg)
11 апреля
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 6: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/6.jpg)
foursquare - down
социальная сеть с функцией геопозиционирования
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 7: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/7.jpg)
hotsuite - down
"панель управления" социальными сервисами
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 8: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/8.jpg)
quora - down
социальный сервис обмена знаниями
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 9: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/9.jpg)
reddit - down
социальный новостной сайт
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 10: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/10.jpg)
FriendFeed - down
агрегатор информации из различных социальных сетей
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 11: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/11.jpg)
Тут были мои заметки
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 12: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/12.jpg)
Так сохранился сайт в кэше
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 13: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/13.jpg)
Интернет не работает
В ожидании когда заработает Internet
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 14: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/14.jpg)
Сервисы могут быть куплены
Письмо от Yahoo! о продаже Delicious
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 15: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/15.jpg)
Сервисы могут неожиданно закрыться
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 16: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/16.jpg)
Распределенные сети
Основные черты
программное обспечение установлено на доверенномсервереконтроль над распространением информациибезопасный обмен информацией между узламиданные сохраняются на персональном сервересобственные группы пользователей и политикараспространения информацииникаких пользовательских соглашений. Ваша информацияостается вашей :-)
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 17: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/17.jpg)
Протоколы и форматы
О чем пойдет речь:
Atom/RSSWebFingerOpenID/OAuthPubsubhubbubActivityStreamsSalmonXMPPPortable Contacts
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 18: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/18.jpg)
Atom
Формат синдикации Atom позволяет описывать наборывеб-ресурсов
основан на XML и расширяемсовременная замена RSSявляется контейнером для других форматов
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 19: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/19.jpg)
Пример 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>� �
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 20: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/20.jpg)
ActivityStreams - cоциальная активность
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 21: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/21.jpg)
Иван Васильевич меняет профессию
Verb Object
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 22: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/22.jpg)
WebFinger
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 23: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/23.jpg)
WebFinger - набор технологий и форматов
The Hammer Stack
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 24: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/24.jpg)
Webfinger - цель профиль пользователя
LRRD - Link-based Resource Descriptor Discovery protocolНачнем с адреса:
Определяем LRDD адрес:
http://status.net/.well-known/host-meta
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 25: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/25.jpg)
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\}
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 26: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/26.jpg)
Webfinger - цель профиль пользователя
Берем:
Добавляем acct:
acct:[email protected]
Адрес для запроса XRD:
http://status.net/xrd?uri=acct:[email protected]
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 27: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/27.jpg)
Extensible Resource Descriptor (XRD)
curl http://status.net/xrd?uri=acct:[email protected]� �1 <?xml version="1.0" encoding="UTF-8"?>2 <XRD xmlns="http://docs.oasis-open.org/ns/xri/xrd-1.0">3 <Subject>acct:[email protected]</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>� �
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 28: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/28.jpg)
XRD
XRD содержит много полезной информации о пользователе:
адрес openid серверапубличный ключданные для других протоколов
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 29: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/29.jpg)
OpenID/OAuth - протоколы аутентификации и авторизации
Позволяют повысить безопасность при взаимодействиинескольких независимых сервисов.
Пример openid адреса:http://zag.myopenid.com/
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 30: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/30.jpg)
Адрес 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:[email protected]</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"/>� �
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 31: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/31.jpg)
Простой способ ввода OpenID
Из исходного:
Получили адрес OpenID сервера:http://zag.status.net/zag
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 32: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/32.jpg)
pubsubhubbub - протокол подписки/публикации обновлений
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 33: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/33.jpg)
Опрос ресурсов для обновлений
Обычная структура
Hot Day
Hot Day
Недостаток: излишняя нагрузка на источник
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 34: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/34.jpg)
Снижение нагрузки на исходный сайт
Уведомления о новых записях
Hot Day
Hot Day
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 35: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/35.jpg)
Возможные схемы распределенных структур
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 36: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/36.jpg)
Salmon protocol
Salmon - протокол обмена сообщениями с проверкойподлинности отправителя
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 37: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/37.jpg)
Определение 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"/>� �
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 38: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/38.jpg)
Salmon - алгоритм взаимодействия
Atom entry
Salmon
endpoint
XRDrel="magic-public-key"
verifyMagicSig
200 OK
ActivityStreams
+
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 39: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/39.jpg)
XMPP и Portable Contacts
Также:
XMPP
Выступает в качестве транспорта
Portable Contacts
Сервис доступа к адресной книге ( OAuth )
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 40: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/40.jpg)
Открытые распределенные сети
С чего начать знакомство ?
StatusNet
Платформа для микроблоггинга StatusNet. http://status.net/
Diaspora
Социальная сеть Diaspora. http://www.joindiaspora.com/
OneSocialWeb
Социальная сеть OneSocialWeb, построенная на основепротокола XMPP. http://onesocialweb.org/
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий
![Page 41: Distributed nets](https://reader031.fdocuments.net/reader031/viewer/2022020101/555e1c51d8b42a6a4c8b464a/html5/thumbnails/41.jpg)
Вопросы
Вопросы ?
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
Открытые протоколы - основа распеределеннх социальных сетей. Александр Загацкий