c3d2-web/content/static/datenspuren/2012/fahrplan/attachments/2202_slides.html

442 lines
408 KiB
HTML
Raw Normal View History

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="de" xml:lang="de">
<head>
<title>BitTorrent Basics</title>
<!-- Slidy: http://www.w3.org/Talks/Tools/Slidy2/ -->
<link rel="stylesheet" type="text/css" media="screen, projection, print" href="data:text/css;base64,Lyogc2xpZHkuY3NzCgogICBDb3B5cmlnaHQgKGMpIDIwMDUtMjAxMCBXM0MgKE1JVCwgRVJDSU0sIEtlaW8pLCBBbGwgUmlnaHRzIFJlc2VydmVkLgogICBXM0MgbGlhYmlsaXR5LCB0cmFkZW1hcmssIGRvY3VtZW50IHVzZSBhbmQgc29mdHdhcmUgbGljZW5zaW5nCiAgIHJ1bGVzIGFwcGx5LCBzZWU6CgogICBodHRwOi8vd3d3LnczLm9yZy9Db25zb3J0aXVtL0xlZ2FsL2NvcHlyaWdodC1kb2N1bWVudHMKICAgaHR0cDovL3d3dy53My5vcmcvQ29uc29ydGl1bS9MZWdhbC9jb3B5cmlnaHQtc29mdHdhcmUKKi8KYm9keQp7CiAgbWFyZ2luOiAwIDAgMCAwOwogIHBhZGRpbmc6IDAgMCAwIDA7CiAgd2lkdGg6IDEwMCU7CiAgaGVpZ2h0OiAxMDAlOwogIGNvbG9yOiBibGFjazsKICBiYWNrZ3JvdW5kLWNvbG9yOiB3aGl0ZTsKICBmb250LWZhbWlseTogIkdpbGwgU2FucyBNVCIsICJHaWxsIFNhbnMiLCBHaWxsU2Fucywgc2Fucy1zZXJpZjsKICBmb250LXNpemU6IDE0cHQ7Cn0KCmRpdi50b29sYmFyIHsKICBwb3NpdGlvbjogZml4ZWQ7IHotaW5kZXg6IDIwMDsKICB0b3A6IGF1dG87IGJvdHRvbTogMDsgbGVmdDogMDsgcmlnaHQ6IDA7CiAgaGVpZ2h0OiAxLjJlbTsgdGV4dC1hbGlnbjogcmlnaHQ7CiAgcGFkZGluZy1sZWZ0OiAxZW07CiAgcGFkZGluZy1yaWdodDogMWVtOyAKICBmb250LXNpemU6IDYwJTsKICBjb2xvcjogcmVkOwogIGJhY2tncm91bmQtY29sb3I6IHJnYigyNDAsMjQwLDI0MCk7CiAgYm9yZGVyLXRvcDogc29saWQgMXB4IHJnYigxODAsMTgwLDE4MCk7Cn0KCmRpdi50b29sYmFyIHNwYW4uY29weXJpZ2h0IHsKICBjb2xvcjogYmxhY2s7CiAgbWFyZ2luLWxlZnQ6IDAuNWVtOwp9CgpkaXYuaW5pdGlhbF9wcm9tcHQgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAxMDAwOwogIGJvdHRvbTogMS4yZW07CiAgd2lkdGg6IDEwMCU7CiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKDIwMCwyMDAsMjAwKTsKICBvcGFjaXR5OiAwLjM1OwogIGJhY2tncm91bmQtY29sb3I6IHJnYigyMDAsMjAwLDIwMCwgMC4zNSk7CiAgY3Vyc29yOiBwb2ludGVyOwp9CgpkaXYuaW5pdGlhbF9wcm9tcHQgcC5oZWxwIHsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCmRpdi5pbml0aWFsX3Byb21wdCBwLmNsb3NlIHsKICB0ZXh0LWFsaWduOiByaWdodDsKICBmb250LXN0eWxlOiBpdGFsaWM7Cn0KCmRpdi5zbGlkeV90b2MgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB6LWluZGV4OiAzMDA7CiAgd2lkdGg6IDYwJTsKICBtYXgtd2lkdGg6IDMwZW07CiAgaGVpZ2h0OiAzMGVtOwogIG92ZXJmbG93OiBhdXRvOwogIHRvcDogYXV0bzsKICByaWdodDogYXV0bzsKICBsZWZ0OiA0ZW07CiAgYm90dG9tOiA0ZW07CiAgcGFkZGluZzogMWVtOwogIGJhY2tncm91bmQ6IHJnYigyNDAsMjQwLDI0MCk7CiAgYm9yZGVyLXN0eWxlOiBzb2xpZDsKICBib3JkZXItd2lkdGg6IDJweDsKICBmb250LXNpemU6IDYwJTsKfQoKZGl2LnNsaWR5X3RvYyAudG9jX2hlYWRpbmcgewogIHRleHQtYWxpZ246IGNlbnRlcjsKICB3aWR0aDogMTAwJTsKICBtYXJnaW46IDA7CiAgbWFyZ2luLWJvdHRvbTogMWVtOwogIGJvcmRlci1ib3R0b20tc3R5bGU6IHNvbGlkOwogIGJvcmRlci1ib3R0b20tY29sb3I6IHJnYigxODAsMTgwLDE4MCk7CiAgYm9yZGVyLWJvdHRvbS13aWR0aDogMXB4Owp9CgpkaXYuc2xpZGUgewogIHotaW5kZXg6IDIwOwogIG1hcmdpbjogMCAwIDAgMDsKICBwYWRkaW5nLXRvcDogMDsKICBwYWRkaW5nLWJvdHRvbTogMDsKICBwYWRkaW5nLWxlZnQ6IDIwcHg7CiAgcGFkZGluZy1yaWdodDogMjBweDsKICBib3JkZXItd2lkdGg6IDA7CiAgY2xlYXI6IGJvdGg7CiAgdG9wOiAwOwogIGJvdHRvbTogMDsKICBsZWZ0OiAwOwogIHJpZ2h0OiAwOwogIGxpbmUtaGVpZ2h0OiAxMjAlOwogIGJhY2tncm91bmQtY29sb3I6IHRyYW5zcGFyZW50Owp9CgpkaXYuYmFja2dyb3VuZCB7CiAgZGlzcGxheTogbm9uZTsKfQoKZGl2LmhhbmRvdXQgewogIG1hcmdpbi1sZWZ0OiAyMHB4OwogIG1hcmdpbi1yaWdodDogMjBweDsKfQoKZGl2LnNsaWRlLnRpdGxlcGFnZSB7CiAgdGV4dC1hbGlnbjogY2VudGVyOwp9CgpkaXYuc2xpZGUudGl0bGVwYWdlIGgxIHsKICBwYWRkaW5nLXRvcDogMTAlOwogIG1hcmdpbi1yaWdodDogMDsKfQoKZGl2LnNsaWRlIGgxIHsKICBwYWRkaW5nLWxlZnQ6IDA7CiAgcGFkZGluZy1yaWdodDogMjBwdDsKICBwYWRkaW5nLXRvcDogNHB0OwogIHBhZGRpbmctYm90dG9tOiA0cHQ7CiAgbWFyZ2luLXRvcDogMDsKICBtYXJnaW4tbGVmdDogMDsKICBtYXJnaW4tcmlnaHQ6IDYwcHQ7CiAgbWFyZ2luLWJvdHRvbTogMC41ZW07CiAgZGlzcGxheTogYmxvY2s7IAogIGZvbnQtc2l6ZTogMTYwJTsKICBsaW5lLWhlaWdodDogMS4yZW07CiAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7Cn0KCmRpdi50b2MgewogIHBvc2l0aW9uOiBhYnNvbHV0ZTsKICB0b3A6IGF1dG87CiAgYm90dG9tOiA0ZW07CiAgbGVmdDogNGVtOwogIHJpZ2h0OiBhdXRvOwogIHdpZHRoOiA2MCU7CiAgbWF4LXdpZHRoOiAzMGVtOwogIGhlaWdodDogMzBlbTsKICBib3JkZXI6IHNvbGlkIHRoaW4gYmxhY2s7CiAgcGFkZGluZzogMWVtOwogIGJhY2tncm91bmQ6IHJnYigyNDAsMjQwLDI0MCk7CiAgY29sb3I6IGJsYWNrOwogIHotaW5kZXg6IDMwMDsKICBvdmVyZmxvdzogYXV0bzsKICBkaXNwbGF5OiBibG9jazsKICB2aXNpYmlsaXR5OiB2aXNpYmxlOwp9CgpkaXYudG9jLWhlYWRpbmcgewogIHdpZHRoOiAxMDAlOwogIGJvcmRlci1ib3R0b206IHNvbGlkIDFweCByZ2IoMTgwLDE4MCwxODApOwogIG1hcmdpbi1ib3R0b206IDFlbTsKICB0ZXh0LWFsaWduOiBjZW50ZXI7Cn0KCmltZyB7CiAgaW1hZ2UtcmVuZGVyaW5nOiBvcHRpbWl6ZS1xdWFsaXR5Owp9CgpwcmUgewogZm9udC1zaXplOiA4MCU7CiBmb250LXdlaWdodDogYm9sZDsKIGxpbmUtaGVpZ2h0OiAxMjAlOwogcGFkZGluZy10b3A6IDAuM
<script src="data:text/javascript;base64,Lyogc2xpZHkuanMKCiAgIENvcHlyaWdodCAoYykgMjAwNS0yMDExIFczQyAoTUlULCBFUkNJTSwgS2VpbyksIEFsbCBSaWdodHMgUmVzZXJ2ZWQuCiAgIFczQyBsaWFiaWxpdHksIHRyYWRlbWFyaywgZG9jdW1lbnQgdXNlIGFuZCBzb2Z0d2FyZSBsaWNlbnNpbmcKICAgcnVsZXMgYXBwbHksIHNlZToKCiAgIGh0dHA6Ly93d3cudzMub3JnL0NvbnNvcnRpdW0vTGVnYWwvY29weXJpZ2h0LWRvY3VtZW50cwogICBodHRwOi8vd3d3LnczLm9yZy9Db25zb3J0aXVtL0xlZ2FsL2NvcHlyaWdodC1zb2Z0d2FyZQoKICAgRGVmaW5lcyBzaW5nbGUgbmFtZSAidzNjX3NsaWR5IiBpbiBnbG9iYWwgbmFtZXNwYWNlCiAgIEFkZHMgZXZlbnQgaGFuZGxlcnMgd2l0aG91dCB0cmFtcGxpbmcgb24gYW55IG90aGVycwoqLwoKLy8gdGhlIHNsaWR5IG9iamVjdCBpbXBsZW1lbnRhdGlvbgp2YXIgdzNjX3NsaWR5ID0gewogIC8vIGNsYXNzaWZ5IHdoaWNoIGtpbmQgb2YgYnJvd3NlciB3ZSdyZSBydW5uaW5nIHVuZGVyCiAgbnNfcG9zOiAodHlwZW9mIHdpbmRvdy5wYWdlWU9mZnNldCE9J3VuZGVmaW5lZCcpLAogIGtodG1sOiAoKG5hdmlnYXRvci51c2VyQWdlbnQpLmluZGV4T2YoIktIVE1MIikgPj0gMCA/IHRydWUgOiBmYWxzZSksCiAgb3BlcmE6ICgobmF2aWdhdG9yLnVzZXJBZ2VudCkuaW5kZXhPZigiT3BlcmEiKSA+PSAwID8gdHJ1ZSA6IGZhbHNlKSwKICBpcGFkOiAoKG5hdmlnYXRvci51c2VyQWdlbnQpLmluZGV4T2YoImlQYWQiKSA+PSAwID8gdHJ1ZSA6IGZhbHNlKSwKICBpcGhvbmU6ICgobmF2aWdhdG9yLnVzZXJBZ2VudCkuaW5kZXhPZigiaVBob25lIikgPj0gMCA/IHRydWUgOiBmYWxzZSksCiAgYW5kcm9pZDogKChuYXZpZ2F0b3IudXNlckFnZW50KS5pbmRleE9mKCJBbmRyb2lkIikgPj0gMCA/IHRydWUgOiBmYWxzZSksCiAgaWU6ICh0eXBlb2YgZG9jdW1lbnQuYWxsICE9ICJ1bmRlZmluZWQiICYmICF0aGlzLm9wZXJhKSwKICBpZTY6ICghdGhpcy5uc19wb3MgJiYgbmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCJNU0lFIDYiKSAhPSAtMSksCiAgaWU3OiAoIXRoaXMubnNfcG9zICYmIG5hdmlnYXRvci51c2VyQWdlbnQuaW5kZXhPZigiTVNJRSA3IikgIT0gLTEpLAogIGllODogKCF0aGlzLm5zX3BvcyAmJiBuYXZpZ2F0b3IudXNlckFnZW50LmluZGV4T2YoIk1TSUUgOCIpICE9IC0xKSwKICBpZTk6ICghdGhpcy5uc19wb3MgJiYgbmF2aWdhdG9yLnVzZXJBZ2VudC5pbmRleE9mKCJNU0lFIDkiKSAhPSAtMSksCgogIC8vIGRhdGEgZm9yIHN3aXBlIGFuZCBkb3VibGUgdGFwIGRldGVjdGlvbiBvbiB0b3VjaCBzY3JlZW5zCiAgbGFzdF90YXA6IDAsCiAgcHJldl90YXA6IDAsCiAgc3RhcnRfeDogMCwKICBzdGFydF95OiAwLAogIGRlbHRhX3g6IDAsCiAgZGVsdGFfeTogMCwKCiAgLy8gYXJlIHdlIHJ1bm5pbmcgYXMgWEhUTUw/IChkb2Vzbid0IHdvcmsgb24gT3BlcmEpCiAgaXNfeGh0bWw6IC94bWwvLnRlc3QoZG9jdW1lbnQuY29udGVudFR5cGUpLAoKICBzbGlkZV9udW1iZXI6IDAsIC8vIGludGVnZXIgc2xpZGUgY291bnQ6IDAsIDEsIDIsIC4uLgogIHNsaWRlX251bWJlcl9lbGVtZW50OiBudWxsLCAvLyBlbGVtZW50IGNvbnRhaW5pbmcgc2xpZGUgbnVtYmVyCiAgc2xpZGVzOiBbXSwgLy8gc2V0IHRvIGFycmF5IG9mIHNsaWRlIGRpdidzCiAgbm90ZXM6IFtdLCAvLyBzZXQgdG8gYXJyYXkgb2YgaGFuZG91dCBkaXYncwogIGJhY2tncm91bmRzOiBbXSwgLy8gc2V0IHRvIGFycmF5IG9mIGJhY2tncm91bmQgZGl2J3MKICB0b29sYmFyOiBudWxsLCAvLyBlbGVtZW50IGNvbnRhaW5pbmcgdG9vbGJhcgogIHRpdGxlOiBudWxsLCAvLyBkb2N1bWVudCB0aXRsZQogIGxhc3Rfc2hvd246IG51bGwsIC8vIGxhc3QgaW5jcmVtZW50YWxseSBzaG93biBpdGVtCiAgZW9zOiBudWxsLCAgLy8gc3BhbiBlbGVtZW50IGZvciBlbmQgb2Ygc2xpZGUgaW5kaWNhdG9yCiAgdG9jOiBudWxsLCAvLyB0YWJsZSBvZiBjb250ZW50cwogIG91dGxpbmU6IG51bGwsIC8vIG91dGxpbmUgZWxlbWVudCB3aXRoIHRoZSBmb2N1cwogIHNlbGVjdGVkX3RleHRfbGVuOiAwLCAvLyBsZW5ndGggb2YgZHJhZyBzZWxlY3Rpb24gb24gZG9jdW1lbnQKICB2aWV3X2FsbDogMCwgIC8vIDEgdG8gdmlldyBhbGwgc2xpZGVzICsgaGFuZG91dHMKICB3YW50X3Rvb2xiYXI6IHRydWUsICAvLyB1c2VyIHByZWZlcmVuY2UgdG8gc2hvdy9oaWRlIHRvb2xiYXIKICBtb3VzZV9jbGlja19lbmFibGVkOiB0cnVlLCAvLyBlbmFibGVzIGxlZnQgY2xpY2sgZm9yIG5leHQgc2xpZGUKICBzY3JvbGxfaGFjazogMCwgLy8gSUUgd29yayBhcm91bmQgZm9yIHBvc2l0aW9uOiBmaXhlZAogIGRpc2FibGVfc2xpZGVfY2xpY2s6IGZhbHNlLCAgLy8gdXNlZCBieSBjbGlja2VkIGFuY2hvcnMKCiAgbGFuZzogImVuIiwgLy8gdXBkYXRlZCB0byBsYW5ndWFnZSBzcGVjaWZpZWQgYnkgaHRtbCBmaWxlCgogIGhlbHBfYW5jaG9yOiBudWxsLCAvLyB1c2VkIGZvciBrZXlib2FyZCBmb2N1cyBoYWNrIGluIHNob3dUb29sYmFyKCkKICBoZWxwX3BhZ2U6ICJodHRwOi8vd3d3LnczLm9yZy9UYWxrcy9Ub29scy9TbGlkeTIvaGVscC9oZWxwLmh0bWwiLAogIGhlbHBfdGV4dDogIk5hdmlnYXRlIHdpdGggbW91c2UgY2xpY2ssIHNwYWNlIGJhciwgQ3Vyc29yIExlZnQvUmlnaHQsICIgKwogICAgICAgICAgICAgIm9yIFBnIFVwIGFuZCBQZyBEbi4gVXNlIFMgYW5kIEIgdG8gY2hhbmdlIGZvbnQgc2l6ZS4iLAoKICBzaXplX2luZGV4OiAwLAogIHNpemVfYWRqdXN0bWVudDogMCwKICBzaXplczogIG5ldyBBcnJheSgiMTBwdCIsICIxMnB0IiwgIjE0cHQiLCAiMTZwdCIsICIxOHB0IiwgIjIwcHQiLAogICAgICAgICAgICAgICAgICAgICIyMnB0IiwgIjI0cHQiLCAiMjZwdCIsICIyOHB0IiwgIjMwcHQiLCAiMzJwdCIpLAoKICAvLyBuZWVkZWQgZm9yIGVmZmljaWVudCByZXNpemluZwogIGxhc3Rfd2lkdGg6IDAsCiAgbGFzdF9oZWlnaHQ6IDAsCgoKICAvLyBOZWVkZWQgZm9yIGNyb3NzIGJyb3dzZXIgc3Vw
<!-- Custom style -->
<style type="text/css">
.cover, h1, h2, h3, h4 {
text-align: center;
}
.cover h1 {
padding: 0;
margin: 0;
}
.speakers {
margin: 1em 0;
}
.speakers li {
list-style-type: none;
margin: 0;
padding: 0;
}
.slide > img {
margin: 0 auto;
}
@media screen {
.note { display: none; visibility: visible }
.toolbar { display:none }
}
@media print {
.note { display: block; visibility: visible; color: red; font-size: 110%; line-height: 1.5em; }
}
</style>
</head>
<body>
<div class="slide cover">
<h1>BitTorrent Basics</h1>
<p>Astro &lt;astro@spaceboyz.net&gt;</p>
<p>Datenspuren 2012</p>
<p>2012-10-14</p>
</div>
<div class="slide">
<h1>Agenda</h1>
<ul>
<li>Geschichte, Motivation, Werbung</li>
<li>Konzepte</li>
<li>Tracker</li>
<li>Wire Protocol</li>
<li>Vermeidung legaler Gefahren</li>
</ul>
</div>
<div class="slide">
<h1>Geschichte</h1>
<ul>
<li>Bram Cohen, April 2001</li>
<li>Released Juli 2001</li>
<li>Offen spezifiziert</li>
<li>Vielzahl an Clients verfügbar</li>
<li>Januar 2012: 150.000.000 active users (according to BitTorrent, Inc.)</li>
</ul>
</div>
<div class="slide">
<p class="note">Zur Bedeutung, eigentliche Motivation, deshalb damit beschäftigen</p>
<h1>BitTorrent Still Dominates Global Internet Traffic</h1>
<p>
A new Internet traffic trends report released by the Canadian
broadband management company Sandvine reveals that global P2P
traffic is expanding, with BitTorrent as the key player<span class="note">!</span>. In North
America, more than half of all upstream<span class="note">!</span> traffic (53.3%) on an
average day can be attributed to P2P. The report further signals
some really interesting regional differences in P2P use, such as
the dominance of Ares in Latin America.
</p>
<p><a href="http://torrentfreak.com/bittorrent-still-dominates-global-internet-traffic-101026/">http://torrentfreak.com/bittorrent-still-dominates-global-internet-traffic-101026/</a></p>
</div>
<div class="slide">
<h1>Werbung</h1>
<ul>
<li>Bitlove.org</li>
<li>Macht aus Podcasts Torrents <span class="note">Dank offener Protokolle</span></li>
<li>Eine legale BitTorrent-Website!</li>
</ul>
</div>
<div class="slide">
<h1>Wie funktioniert das eigentlich?</h1>
<img src="data:image/png;base64,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
<p class="note">Daten bleiben unten, Gegensatz zu HTTP/Fileserver/Sharehoster</p>
<p class="note">Unmittelbare Kommunikation, deshalb IP-Addressen sichtbar</p>
<p class="note">Skalierbarkeit</p>
<p class="note">Initial Seeder: Torrent tot sobald ein Stück bei keinem Peer ist</p>
<p class="note">Ratio &gt; 2</p>
</div>
<div class="slide">
<h1>Bencoding</h1>
<ul>
<li>Ähnlich zu JSON/BSON</li>
<li>Binary safe</li>
<li>
Struktur:
<ul>
<li>Dictionaries: <code>d...e</code></li>
<li>Listen: <code>l...e</code></li>
<li>Strings: <code>23:...</code></li>
<li>Integers: <code>i...e</code></li>
</ul>
</li>
</ul>
<pre style="white-space: pre-wrap"><span style="color: green">d<span style="color: red">8:<span style="color: blue">announce</span></span><span style="color: red">39:<span style="color: blue">http://tracker.publicbt.com:80/announce</span></span><span style="color: red">13:<span style="color: blue">announce-list</span></span><span style="color: green">l<span style="color: blue">l<span style="color: red">39:<span style="color: red">http://tracker.publicbt.com:80/announce</span></span>el<span style="color: red">45:</span><span style="color: blue">http://tracker.openbittorrent.com:80/announce</span></span>el<span style="color: red">38:<span style="color: blue">udp://tracker.publicbt.com:80/announce</span></span>el44:udp://tracker.openbittorrent.com:80/announceel42:http://tracker.torrentbay.to:6969/announceel39:http://tracker.torrent.to:2710/announceel35:http://tracker.zond.org:80/announceel36:http://exodus.desync.com:80/announceel37:http://fr33dom.h33t.com:3310/announceel35:udp://tracker.1337x.org:80/announceel31:http://cpleft.com:2710/announceel43:http://tracker.torrentbox.com:2710/announceee7:comment50:SXSW 2012 Showcasing Artists (Unofficial) - Part 113:creation datei1329452716e</span>e</span>
</pre>
</div>
<div class="slide">
<h1>.torrent Metainfo Files</h1>
<img src="data:image/png;base64,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
<ul>
<li><code>announce :: String</code></li>
<li><code>announce-list :: [[String]]</code></li>
<li><code>info/private :: Integer (BEP27)</code></li>
</ul>
</div>
<div class="slide">
<h1>Trackers</h1>
<ul>
<li>HTTP</li>
<li>
Erweiterungen:
<ul>
<li>UDP</li>
<li>(PEX)</li>
<li>(DHT)</li>
</ul>
</li>
</ul>
</div>
<div class="slide">
<h1>Tracker Request</h1>
<p>Client an Server:</p>
<ul>
<li>info_hash</li>
<li>peer_id</li>
<li>ip <span class="note">Sinn?</span></li>
<li>port</li>
<li>uploaded</li>
<li>downloaded</li>
<li>left</li>
<li>event <span class="note">started, completed, stopped, empty</span></li>
</ul>
<p class="note">Statistiken fälschbar</p>
<p class="note">Key</p>
</div>
<div class="slide">
<h1>Tracker Response</h1>
<p>Server an Client:</p>
<ul>
<li>
Peers, Peers6
<ul>
<li>Ursprünglich: Host, Port, Peer ID</li>
<li>Compact: Host, Port</li>
</ul>
</li>
<li>Interval</li>
<li>
Scrape-Informationen:
<ul>
<li>Anzahl aller Seeders</li>
<li>Anzahl aller Leechers</li>
</ul>
</li>
</ul>
<p class="note">DDoS Potential</p>
</div>
<div class="slide">
<h1>UDP Trackers</h1>
<ul>
<li>Anfrage &amp; Antwort je 1 UDP-Paket</li>
<li>Kein TCP-State</li>
<li>Effizienz</li>
</ul>
<p class="note">TCP besser throttlebar, aber UDP lohnt bei Verkehr mit vielen</p>
</div>
<div class="slide">
<h1>PEX: Peer Exchange</h1>
<ul>
<li>Austausch zwischen Peers über dritte Peers</li>
<li>Erweiterungen: <code>AZ_PEX</code>, <code>ut_pex</code></li>
<li>Schnelleres Bootstrapping <span class="note">Mehr Peers unabhängig von Tracker</span></li>
<li>Hält Schwarm zusammen wenn Tracker down ist</li>
</ul>
<p class="note">Tracker trotzdem benötigt wegen 1. Peer</p>
</div>
<div class="slide">
<h1>DHT: Distributed Hash Table</h1>
<ul>
<li>160-bit Schlüsselraum korrespondiert zu Info Hashes</li>
<li>UDP-Protokoll mit Bencoded Messages</li>
<li>
Nachrichten:
<ul>
<li>ping</li>
<li>find_node</li>
<li>get_peers</li>
<li>announce_peer <span class="note">Nur nach get_peers, limitiert Schreibzugriff</span></li>
</ul>
</li>
</ul>
</div>
<div class="slide">
<h1>Tracker Exchange</h1>
<ul>
<li>Beim Handshake Vergleich von Hashes der Tracker-Liste</li>
<li>Peers senden sich komplette Tracker-Liste und Updates</li>
<li>Nur <i>gute</i> Tracker werden weitergegeben</li>
</ul>
</div>
<div class="slide">
<h1>Peer IDs</h1>
<ul>
<li>160 Bits, hauptsächlich zufällig <p class="note">Per Client-Instanz oder per Torrent</p></li>
<li>Beginnt mit Version Identifier</li>
<li>BEP20: Peer ID Conventions</li>
<li>Mainline: <code>M4-3-6--</code>, <code>M4-20-8-</code></li>
<li>Andere: <code>-AZ2060-</code></li>
<li>
<code>AG</code>,
<code>A~</code>,
<code>AR</code>,
<code>AV</code>,
<code>AX</code>,
<code>AZ</code>,
<code>BB</code>,
<code>BC</code>,
<code>BF</code>,
<code>BG</code>,
<code>BR</code>,
<code>BS</code>,
<code>BX</code>,
<code>CD</code>,
<code>CT</code>,
<code>DE</code>,
<code>DP</code>,
<code>EB</code>,
<code>ES</code>,
<code>FT</code>,
<code>GS</code>,
<code>HL</code>,
<code>HN</code>,
<code>KG</code>,
<code>KT</code>,
<code>LH</code>,
<code>LP</code>,
<code>LT</code>,
<code>lt</code>,
<code>LW</code>,
<code>MO</code>,
<code>MP</code>,
<code>MR</code>,
<code>MT</code>,
<code>NX</code>,
<code>PD</code>,
<code>qB</code>,
<code>QD</code>,
<code>QT</code>,
<code>RT</code>,
<code>S~</code>,
<code>SB</code>,
<code>SS</code>,
<code>ST</code>,
<code>st</code>,
<code>SZ</code>,
<code>TN</code>,
<code>TR</code>,
<code>TS</code>,
<code>TT</code>,
<code>UL</code>,
<code>UT</code>,
<code>VG</code>,
<code>WT</code>,
<code>WY</code>,
<code>XL</code>,
<code>XT</code>,
<code>XX</code>,
<code>ZT</code>
<span class="note">So many clients!</span>
</li>
</ul>
</div>
<div class="slide">
<h1>Wire Protocol: Handshake</h1>
<p class="note">Für DDoS gegen HTTP</p>
<ul>
<li><code>"\19BitTorrent protocol"</code></li>
<li>8 Bytes Extensions</li>
<li>20 Bytes Info Hash</li>
<li>20 Bytes Peer ID</li>
</ul>
</div>
<div class="slide">
<h1>Wire Protocol: Messages</h1>
<img style="float: right" src="data:image/gif;base64,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
<ul>
<li>4 Bytes Length Prefix</li>
<li>
Messages:
<ul style="font-family: fixed, monospace">
<li>Choke</li>
<li>Unchoke</li>
<li>Interested</li>
<li>Not interested</li>
<li>Have(Index)</li>
<li>Bitfield(Pieces)</li>
<li>Request(Index, Begin, Length)</li>
<li>Piece(Index, Begin, Data)</li>
<li>Cancel(Index, Begin, Length)</li>
</ul>
</li>
</ul>
<p style="color: grey">http://en.wikipedia.org/wiki/BitTorrent</p>
</div>
<div class="slide">
<h1>uTP: µTorrent Protocol</h1>
<img style="float: right; height: 50%" src="data:image/png;base64,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
<ul>
<li>Motivation: Upstream dicht, Bufferbloat, unangenehme Latenz des Internetanschlusses <span class="note">Konfiguration von Upload-Limit nötig</span></li>
<li>TCP wird bei vielen Verbindungen suboptimal <span class="note">2 Transfers, 1 hört auf, 1. plötzlich doppelt so schnell</span></li>
<li>Deshalb: UDP</li>
<li>Ähnliche Idee wie CoDeL <span class="note">5ms in Queue vs 100ms RTT</span></li>
<li>Wie TCP: reliable, ordered delivery</li>
</ul>
<p style="color: grey">http://blog.bittorrent.com/2009/11/02/visualizing-%C2%B5tp/</p>
</div>
<div class="slide">
<h1>Magnet Links</h1>
<pre style="white-space: pre">magnet:?xt=urn:btih:<span style="color: red">41e5a43777cc554ce9b17f0731558ecdb198a418</span>
&amp;dn=<span style="color: blue">pentaradio-rapnroll-2009-09-22</span>&amp;<span style="color: green">tr=udp%3A%2F%2Ftracker.op
enbittorrent.com%3A80&amp;tr=udp%3A%2F%2Ftracker.publicbt.com%3A
80&amp;tr=udp%3A%2F%2Ftracker.istole.it%3A6969&amp;tr=udp%3A%2F%2Ftr
acker.ccc.de%3A80</span></pre>
<ul>
<li>BEP9: Extension for Peers to Send Metadata Files</li>
<li>Tracker optional (DHT)</li>
</ul>
</div>
<div class="slide">
<h1>BitTorrent Protocol Encryption</h1>
<ul>
<li>Message Stream Encryption/Protocol Encryption</li>
<li>DH Key Exchange</li>
<li>RC4 <span class="note">einfach, schnell, WEP, schlimmste Vulnerability vermieden (Anfang des Streams)</span></li>
<li>Confidentiality?</li>
<li><strike>Anonymity</strike></li>
<li>Obfuscation!</li>
<li>Häufige Einstellungen: Aus, Erlaubt/Bevorzugt, Erzwungen</li>
</ul>
</div>
<div class="slide">
<h1>Direkte Erreichbarkeit bei P2P</h1>
<p class="note">Nach Start sind nur erreichbare Peers nützliche Peers</p>
<p class="note">Später nicht-erreichbare Peers incoming, wenn
selbst erreichbar</p>
<ul>
<li>Direkte TCP-Verbindungen zwischen Endgeräten</li>
<li>Problem: zu viele Nutzer befinden sich hinter NAT</li>
<li>Automatisches Port-Mapping (DNAT): UPnP/IGD<span class="note">
Internet Gateway Device</span>, NAT PMP</li>
<li>The IPv6 Killer Application!</li>
</ul>
</div>
<div class="slide">
<h1>Erreichbar sein heißt...</h1>
<ul>
<li>...einen Internet-Dienst anzubieten</li>
<li>Datenaustausch findet auch bei ausgehenden Verbindungen
statt</li>
<li>Don't get caught:
<ul>
<li>Filterlisten: PeerGuardian, iBlocklist <span class="note">Böse Institutionen nutzen
auch normale DSL-Anschlüsse</span></li>
<li>VPN-Anbieter</li>
</ul>
</li>
</ul>
</div>
<div class="slide">
<h1>Internet-Traffic über VPN-Provider</h1>
<ul>
<li>Viele Anbieter, ca. 5-10 €/Monat</li>
<li>Tunnel mit PPTP oder OpenVPN: <code>tun0</code></li>
<li>Manuelle Route zum Tunnelendpunkt wie herkömmliche Default-Route</li>
<li>Neue Default-Route einzig über Tunnel</li>
</ul>
<p class="note">Zusicherung der Anbieter, sicher durch Ausland</p>
<p class="note">Anonyme Bezahlung?</p>
</div>
<div class="slide">
<h1>Internet-Traffic über VPN-Provider</h1>
<p>Wait, what?</p>
<p class="incremental">Lieber nur Torrent-Traffic, Isolation
bspw. über Virtualisierung</p>
</div>
<div class="slide">
<h1>Resümee</h1>
<ul>
<li>BitTorrent wird als <i>gefährlich</i> angesehen weil es gut funktioniert</li>
<li>Inhalte inkriminieren</li>
<li>Seed more pls!</li>
</ul>
</div>
</body>
</html>