1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
|
Network Working Group E. Vyncke
Request for Comments: 5514 Cisco Systems
Category: Experimental 1 April 2009
IPv6 over Social Networks
Status of This Memo
This memo defines an Experimental Protocol for the Internet
community. It does not specify an Internet standard of any kind.
Discussion and suggestions for improvement are requested.
Distribution of this memo is unlimited.
Copyright Notice
Copyright (c) 2009 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents in effect on the date of
publication of this document (http://trustee.ietf.org/license-info).
Please review these documents carefully, as they describe your rights
and restrictions with respect to this document.
Abstract
There is a lack of IPv6 utilization in early 2009; this is partly
linked to the fact that the number of IPv6 nodes is rather low. This
document proposes to vastly increase the number of IPv6 hosts by
transforming all Social Networking platforms into IPv6 networks.
This will immediately add millions of IPv6 hosts to the existing IPv6
Internet. This document includes sections on addressing and
transport of IPv6 over a Social Network. A working prototype has
been developed.
Vyncke Experimental [Page 1]
^L
RFC 5514 IPoSN April 2009
1. Introduction
While the IPv6 protocols are well-known for years, not every host
uses IPv6 (at least in March 2009), and most network users are not
aware of what IPv6 is or are even afraid by IPv6 because it is
unknown.
On the other hand, Social Networks (like Facebook, LinkedIn, etc.)
are well-known by users and the usage of those networks is huge.
This document describes how to leverage Social Networks in order to
make more people aware of IPv6 and to add several thousands of IPv6
routers to the Internet.
2. Architecture
With IPv6 over Social Network (IPoSN):
o Every user is a router with at least one loopback interface;
o Every friend or connection between users will be used as a point-
to-point link.
On social networks, users want to have multiple friends, partners, or
relations with other users. Therefore, it can be expected that there
is a heavily meshed network among these users. This will provide for
good IPv6 connectivity because each user (IPoSN router) will be IPv6
connected to all his/her friends (IPoSN neighbor routers).
Several Social Network Applications (SNAs) allow for plug-ins or for
other applications to be mashed with the social network. Those
applications can then generate IPv6 packets on the behalf of the
users. Those packets can then be transferred hop by hop, or rather
user by user, over the mashed SNA/IPv6, until they reach their
destination.
The usual policy of an SNA is to only allow the account owner to
modify an account. Therefore, the IPv6 processing of a packet
received by an SNA account must be explicitly executed by the account
owner using a web action; this action will give the router CPU a
nudge to process all received IPv6 packets. This behavior has two
impacts on the IPv6 network:
1. the account owner must explicitly 'run the CPU' in order to
forward or to receive IPv6 packets; this is an opportunity for
IPoSN to detail all its operation (one goal is education)
Vyncke Experimental [Page 2]
^L
RFC 5514 IPoSN April 2009
2. the latency between two nodes over such a network can be very
high, and timers (especially the routing timers; see Section 3)
will have to be modified.
A latency of several hours has an impact on the transport protocols.
UDP SHOULD be used, and TCP SHOULD NOT be used.
2.1. Addressing
In SNA, all users have a unique numerical identification. Assuming
that there are less than 2**64 users on the SNA, the IPv6 global
address of the router loopback will be a /64 prefix (such as 2001:
db8:face:b00c::/64) followed by the SNA identification. As this
address is a loopback address, the prefix length will always be /128.
As the same /64 prefix is used for all SNA users, they will all
appear as being part of the same /64 network.
On each interface, the link-local address will be generated by
appending the SNA identification to the fe80::/64 prefix.
For example, here are two IPoSN addresses generated for the user
620147832 (this is 0x24f6b478 in hexadecimal):
o Global: 2001:db8:face:b00c::24f6:b478/128
o Link-local: fe80::24f6:b478/64
2.2. Address Translation
With the choice of the example prefix for all global addresses, an
IPv6-to-IPv6 Non-Carrier Grade NAT (NCGN) must be implemented and
linked to at least one 'edge' SNA user whose account will be used to
pass (and translate) IPv6 packets between IPoSN and the real IPv6
Internet. The gateway and NAT functions are out of scope of the
present document.
3. Choice of IGP
As seen in the architecture section (Section 2, the propagation of
IPv6 packets only happens when a user activates the IPoSN application
linked to his/her SNA account. Therefore, propagation delays are
measured in hours or days compared to microseconds over the Internet
fishbone. Moreover, the jitter is also very high as different users
have different habits regarding the use of SNA.
IPoSN SHOULD implement RIPng [RFC2080], which is relatively immune to
jitter and does not rely on flooding messages to all neighboring
routers. OSPFv3 [RFC5340] SHOULD NOT be used over IPoSN.
Vyncke Experimental [Page 3]
^L
RFC 5514 IPoSN April 2009
Routing protocols for Delay Tolerant Networks MAY be use for IPoSN.
4. Working Prototype
A working prototype has been developed by the author and is freely
available: IPv6 over Facebook Social Network [IPv6overFacebook]. It
uses the LAMP architecture.
Some statistics as of March 26, 2009 (pre-standard implementation of
course):
o Packet rate: 160 packets per minute
o Number of nodes: 3800
o Largest FIB: 1352
o NAT66 packet counters:
* to the Internet: 8,500
* from the Internet: 53,000
The extreme value of the latency makes network operation and trouble-
shooting quite interesting.
A high latency ICMP echo request/reply:
2009-02-24 10:23:01: Ping to 2001:db8:face:b00c::2a42:4346
2009-02-26 21:52:24: Got a PING reply from 2001:db8:face:b00c::2a42:4346
A high latency UDP-based traceroute:
2009-02-25 13:38:05: Traceroute to 2001:db8:face:b00c::21ca:5ab1
2009-02-25 13:40:41: 2001:db8:face:b00c::28ef:7c60, intermediate node
2009-02-25 18:04:21: 2001:db8:face:b00c::312a:c8cb, intermediate node
2009-02-26 00:55:32: 2001:db8:face:b00c::2707:a4a0, intermediate node
2009-02-26 00:55:33: 2001:db8:face:b00c::1e21:338b, intermediate node
2009-02-26 00:56:25: 2001:db8:face:b00c::4c13:9577, intermediate node
2009-02-26 07:44:17: 2001:db8:face:b00c::5422:2f57, intermediate node
2009-02-27 10:16:45: 2001:db8:face:b00c::5422:2f57, intermediate node
2009-02-27 10:16:45: 2001:db8:face:b00c::2726:8ed8, intermediate node
2009-03-01 15:41:50: 2001:db8:face:b00c::21ca:5ab1, destination reached
2009-03-01 16:22:54: 2001:db8:face:b00c::3e22:92b9, intermediate node
Vyncke Experimental [Page 4]
^L
RFC 5514 IPoSN April 2009
5. Security Considerations
As the users cannot really control what they are sending (they send
IPv6 packets through a well-controlled web interface), there is no
threat to send spoofed packets. The only exception is at the NAT66
gateway where packets from the real Internet can be received;
therefore, NAT66 gateway MUST implement anti-spoofing.
Denial of service (packet flooding) can happen if a malicious user
uses a web tool to request a ping diagnostic every second.
Therefore, implementation SHOULD implement a rate limit on each web
page that can generate an IPv6 packet.
Denial of service (packet flooding) can also happen at the NAT66
gateway from the real Internet. A rate limiter SHOULD also be
implemented at the NAT66 gateway.
6. Acknowledgments
Many thanks to all first users of the IPv6 over Facebook
[IPv6overFacebook] application: Isabelle Dehousse, Yves Hertoghs,
Thomas Kernen, Simon Leinen, and so many others.
7. References
7.1. Normative References
[RFC2080] Malkin, G. and R. Minnear, "RIPng for IPv6",
RFC 2080, January 1997.
[RFC3428] Campbell, B., Rosenberg, J., Schulzrinne, H.,
Huitema, C., and D. Gurle, "Session Initiation
Protocol (SIP) Extension for Instant Messaging",
RFC 3428, December 2002.
[RFC5340] Coltun, R., Ferguson, D., Moy, J., and A. Lindem,
"OSPF for IPv6", RFC 5340, July 2008.
7.2. Informative References
[IPv6overFacebook] Vyncke, E., "IPv6 over the Facebook Social
Network", <http://apps.facebook.com/ipoverfb/>.
Vyncke Experimental [Page 5]
^L
RFC 5514 IPoSN April 2009
Author's Address
Eric Vyncke
Cisco Systems
De Kleetlaan 6a
Diegem 1831
Belgium
Phone: +32 2 778 4677
EMail: evyncke@cisco.com
Vyncke Experimental [Page 6]
^L
|