Professional Documents
Culture Documents
Communications Protocol
Communications Protocol
Algorithm
1.1
Informal denition
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2
Formalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2.1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3
Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4
Computer algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5.1
Algorithm example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5.2
Euclids algorithm
1.5.3
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.5.4
1.6
Expressing algorithms
Algorithmic analysis
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Classication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.7.1
By implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.7.2
By design paradigm
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.7.3
Optimization problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10
1.7.4
By eld of study
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
1.7.5
By complexity
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
1.8
Continuous algorithms
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
1.9
Legal issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
1.7
1.6.1
1.6.2
Execution eciency
1.10 Etymology
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11
12
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
12
12
12
12
13
13
15
15
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
i
ii
CONTENTS
1.12 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
1.13 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
15
1.14 References
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
20
20
20
Analogy
22
2.1
22
2.2
22
2.2.1
Identity of relation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
2.2.2
Shared abstraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
2.2.3
23
2.2.4
Shared structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
2.2.5
High-level perception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
2.2.6
24
25
2.3.1
In language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
2.3.2
In science . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
2.3.3
In normative matters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
2.3.4
In teaching strategies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
2.4
See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
2.5
Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
2.6
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
28
2.7
External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
29
2.3
AppleTalk
30
3.1
History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
3.1.1
AppleNet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
3.1.2
AppleBus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
3.1.3
AppleBus networking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
3.1.4
AppleTalk . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
31
3.1.5
31
3.1.6
32
3.1.7
32
3.1.8
32
3.1.9
33
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
3.2
Design
3.3
Addressing
3.4
Protocols
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
33
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
3.4.1
34
3.4.2
34
CONTENTS
3.4.3
3.4.4
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
3.4.5
34
3.4.6
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
3.4.7
34
3.4.8
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
3.4.9
35
35
3.5
Physical implementation
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
3.6
Networking model
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.7
Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.8
Cross-platform solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.9
See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.10 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.11 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.11.1 Citations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
36
3.11.2 Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
37
ARPANET
38
4.1
History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
4.1.1
Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
39
4.1.2
39
4.1.3
ARPANET deployed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
40
4.1.4
40
4.1.5
41
4.1.6
Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
41
4.2.1
Network applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
4.2.2
Password protection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
42
4.3
42
4.4
See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
4.5
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
4.6
Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
4.6.1
Oral histories . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
4.6.2
45
External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
4.2
4.7
5
iii
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
47
5.1
Layer 2 Datagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
5.1.1
Cell size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
5.1.2
48
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
iv
CONTENTS
5.1.3
Cells in practice
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
49
5.1.4
49
5.1.5
. . . . . . . . . . . . . . . . . . . .
50
5.1.6
50
5.1.7
50
5.1.8
. . . . . . . . . . . . . . . . . . . . . . . .
51
5.1.9
Reference model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
5.2
Deployment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
5.3
51
5.4
See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
5.5
Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
5.6
References
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
5.7
External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
AX.25
53
6.1
Specication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
6.2
Implementations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
6.2.1
KISS-mode framing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
53
6.3
Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
6.4
Limitations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
6.5
See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
6.6
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
6.7
Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
55
56
7.1
56
History
7.1.1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Applications
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
Informal description
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
7.2.1
Primitives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
7.2.2
Algebraic operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
7.2.3
Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
Formal denition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
7.3.1
Syntax
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
58
7.3.2
Formal semantics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
7.4
Tools
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
59
7.5
Related formalisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
7.6
60
7.7
See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
7.8
Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
7.9
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
62
7.2
7.3
CONTENTS
8
Communication
63
8.1
Nonverbal communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
63
8.2
Verbal communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
63
8.3
64
8.4
Business communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
8.5
Family communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
8.6
Interpersonal communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
65
8.7
65
8.7.1
Cultural aspects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
66
Nonhuman communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
66
8.8.1
Animals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
8.8.2
67
8.8.3
67
Models of communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
8.10 Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
70
70
70
8.13 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
70
71
Communications protocol
72
9.1
Communicating systems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72
9.2
72
9.3
73
9.4
Universal protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
74
9.5
Protocol design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
74
9.5.1
74
9.5.2
Layering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
75
9.5.3
Formal specication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
78
Protocol development . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
78
9.6.1
79
9.6.2
Standards organizations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
9.6.3
79
9.6.4
79
9.7
Taxonomies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
81
9.8
Examples of protocols
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
81
9.9
Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
81
9.10 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83
84
84
8.8
8.9
9.6
10 Communications system
85
vi
CONTENTS
10.1 Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85
10.1.1 By media . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85
10.1.2 By Technology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85
86
86
10.3 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
86
10.4 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
86
11 Compiler
11.1 History
87
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
11.1.1 Compilation
87
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
88
88
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
88
88
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
90
90
90
91
92
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
92
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
92
93
11.7 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
11.8 References
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
94
12 Computer hardware
95
95
12.2 Sales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
95
96
96
97
98
12.3.4 Supercomputer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
98
98
98
12.6 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
98
98
13 Concurrent computing
99
CONTENTS
13.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
vii
99
105
107
109
112
viii
CONTENTS
17.6 Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
17.7 External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
18 De facto standard
115
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
117
119
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
122
124
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
CONTENTS
ix
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
130
CONTENTS
24 Finite-state machine
136
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
24.10Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
24.10.1 Hardware applications
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
. . . . . . . . . . 143
. . . . . . . 144
145
147
CONTENTS
xi
161
xii
CONTENTS
27.12Example session . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
27.12.1 Client request . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
27.12.2 Server response . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
27.13Similar protocols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
27.14See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
27.15Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
27.16References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
27.17External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
28 Implementation
168
170
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
. . . . . . . . . . . . . . . . . . . . . . . . . . . 171
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
29.10Semiotics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
29.11See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
29.12Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
29.13References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
29.14External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
30 Institute of Electrical and Electronics Engineers
176
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
CONTENTS
xiii
183
184
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
190
xiv
CONTENTS
33.3 Legal framework of ITU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
33.4 Leadership . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
33.5 Directors and Secretaries-General of ITU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
33.6 Membership . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
33.6.1 Regional groupings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
33.7 World Summit on the Information Society . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
33.8 World Conference on International Telecommunications 2012 (WCIT-12) . . . . . . . . . . . . . . 192
33.8.1 Changes to international telecommunication regulations . . . . . . . . . . . . . . . . . . . 192
33.8.2 Proposed changes to the treaty and concerns . . . . . . . . . . . . . . . . . . . . . . . . . 192
33.8.3 WCIT-12 conference participation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
33.9 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
33.10References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194
34 Internet
195
34.1 Terminology
34.2 History
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
CONTENTS
xv
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
214
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
218
221
xvi
CONTENTS
37.3.1 Connected and disconnected modes of operation . . . . . . . . . . . . . . . . . . . . . . . 222
37.3.2 Multiple clients simultaneously connected to the same mailbox . . . . . . . . . . . . . . . 222
37.3.3 Access to MIME message parts and partial fetch . . . . . . . . . . . . . . . . . . . . . . . 222
37.3.4 Message state information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
37.3.5 Multiple mailboxes on the server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
37.3.6 Server-side searches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
37.3.7 Built-in extension mechanism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
37.4 Disadvantages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
37.5 Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
37.6 Dialog example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223
37.7 See also . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
37.8 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
37.9 Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
37.10External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224
38 Internet Protocol
226
229
CONTENTS
xvii
237
239
241
243
245
xviii
CONTENTS
248
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
251
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
47 Moore machine
253
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 255
256
CONTENTS
xix
261
xx
CONTENTS
49.11Further reading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
49.12External links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
50 OSI model
277
283
286
CONTENTS
xxi
289
302
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
305
xxii
CONTENTS
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
316
CONTENTS
xxiii
322
326
xxiv
CONTENTS
331
333
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
339
341
CONTENTS
xxv
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
354
356
xxvi
CONTENTS
64.5.1 Denial of service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
64.5.2 Connection hijacking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
64.5.3 TCP veto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
370
372
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 373
375
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 375
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
CONTENTS
xxvii
378
382
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
386
xxviii
CONTENTS
70.6.1 X.25 facilities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
70.6.2 X.25 protocol versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
Chapter 1
Algorithm
cisely denes a sequence of operations.[11] which would
include all computer programs, including programs that
do not perform numeric calculations. Generally, a program is only an algorithm if it stops eventually.[12]
A prototypical example of an algorithm is Euclids algorithm to determine the maximum common divisor of two
The words 'algorithm' and 'algorism' come from the integers; an example (there are others) is described by the
name al-Khwrizm. Al-Khwrizm (Persian: , ow chart above and as an example in a later section.
c. 780850) was a Persian mathematician, astronomer, Boolos & Jerey (1974, 1999) oer an informal meaning
geographer, and scholar.
of the word in the following quotation:
An algorithm is an eective method that can be expressed within a nite amount of space and time[1]
and in a well-dened formal language[2] for calculating a function.[3] Starting from an initial state and initial input (perhaps empty),[4] the instructions describe
a computation that, when executed, proceeds through a
nite[5] number of well-dened successive states, eventually producing output[6] and terminating at a nal ending state. The transition from one state to the next is
not necessarily deterministic; some algorithms, known as
randomized algorithms, incorporate random input.[7]
The concept of algorithm has existed for centuries; however, a partial formalization of what would become
the modern algorithm began with attempts to solve the
Entscheidungsproblem (the decision problem) posed
by David Hilbert in 1928. Subsequent formalizations
were framed as attempts to dene "eective calculability"[8] or eective method";[9] those formalizations included the GdelHerbrandKleene recursive functions
of 1930, 1934 and 1935, Alonzo Church's lambda calculus of 1936, Emil Post's "Formulation 1" of 1936,
and Alan Turing's Turing machines of 19367 and 1939.
Giving a formal denition of algorithms, corresponding
to the intuitive notion, remains a challenging problem.[10]
CHAPTER 1. ALGORITHM
ENTRY
Euclid's algorithm for the
greatest common divisor (gcd)
of two numbers
1
INPUT A, B
yes
B = 0?
no
yes
A > B?
no (< or =)
4
5
B-A
GOTO 2
A-B
GOTO 2
PRINT A
END
with the necessary internally contained information and capabilities)[16] to nd, decode, and then process arbitrary input integers/symbols m and n, symbols + and = ...
and eectively[17] produce, in a reasonable
time,[18] output-integer y at a specied place
1.2 Formalization
Algorithms are essential to the way computers process
data. Many computer programs contain algorithms that
detail the specic instructions a computer should perform
(in a specic order) to carry out a specied task, such
as calculating employees paychecks or printing students
report cards. Thus, an algorithm can be considered to
be any sequence of operations that can be simulated by
a Turing-complete system. Authors who assert this thesis include Minsky (1967), Savage (1987) and Gurevich
(2000):
Minsky: But we will also maintain, with
Turing . . . that any procedure which could
naturally be called eective, can in fact be
realized by a (simple) machine. Although this
may seem extreme, the arguments . . . in its
favor are hard to refute.[19]
Gurevich: "...Turings informal argument
in favor of his thesis justies a stronger thesis:
every algorithm can be simulated by a Turing
machine ... according to Savage [1987], an algorithm is a computational process dened by
a Turing machine.[20]
Typically, when an algorithm is associated with processing information, data are read from an input source, written to an output device, and/or stored for further processing. Stored data are regarded as part of the internal state
of the entity performing the algorithm. In practice, the
state is stored in one or more data structures.
For some such computational process, the algorithm must
be rigorously dened: specied in the way it applies in all
possible circumstances that could arise. That is, any conditional steps must be systematically dealt with, case-bycase; the criteria for each case must be clear (and computable).
Because an algorithm is a precise list of precise steps, the
order of computation is always crucial to the functioning
of the algorithm. Instructions are usually assumed to be
1.3. IMPLEMENTATION
listed explicitly, and are described as starting from the
top and going down to the bottom, an idea that is described more formally by ow of control.
So far, this discussion of the formalization of an algorithm has assumed the premises of imperative programming. This is the most common conception, and it attempts to describe a task in discrete, mechanical means.
Unique to this conception of formalized algorithms is the
assignment operation, setting the value of a variable. It
derives from the intuition of "memory" as a scratchpad.
There is an example below of such an assignment.
For some alternate conceptions of what constitutes an algorithm see functional programming and logic programming.
1.2.1
1.3 Implementation
Vcc
Q
A
B
GND
Expressing algorithms
Representations of algorithms can be classed into three Elegant (compact) programs, good (fast) programs :
accepted levels of Turing machine description:[21]
The notion of simplicity and elegance appears informally in Knuth and precisely in Chaitin:
1 High-level description "...prose to describe an algoKnuth: ". . .we want good algorithms in some
rithm, ignoring the implementation details. At this
loosely dened aesthetic sense. One criterion .
level we do not need to mention how the machine
. . is the length of time taken to perform the almanages its tape or head.
gorithm . . .. Other criteria are adaptability of
2 Implementation description "...prose used to dene
the algorithm to computers, its simplicity and
the way the Turing machine uses its head and the
elegance, etc[22]
way that it stores data on its tape. At this level we do
not give details of states or transition function.
Chaitin: " . . . a program is 'elegant,' by which
I mean that its the smallest possible program
3 Formal description Most detailed, lowest level,
for producing the output that it does[23]
gives the Turing machines state table.
Chaitin prefaces his denition with: I'll show you can't
For an example of the simple algorithm Add m+n de- prove that a program is 'elegant'"such a proof would
scribed in all three levels, see Algorithm#Examples.
solve the Halting problem (ibid).
CHAPTER 1. ALGORITHM
A computer (or human computor[25] ) is a restricted
type of machine, a discrete deterministic mechanical device[26] that blindly follows its instructions.[27]
Melzaks and Lambeks primitive models[28] reduced this
notion to four elements: (i) discrete, distinguishable locations, (ii) discrete, indistinguishable counters[29] (iii) an
agent, and (iv) a list of instructions that are eective relative to the capability of the agent.[30]
Minsky describes a more congenial variation of Lambeks abacus model in his Very Simple Bases for
Computability".[31] Minskys machine proceeds sequentially through its ve (or six, depending on how one
counts) instructions, unless either a conditional IF
THEN GOTO or an unconditional GOTO changes program ow out of sequence. Besides HALT, Minskys machine includes three assignment (replacement,
substitution)[32] operations: ZERO (e.g. the contents
of location replaced by 0: L 0), SUCCESSOR
(e.g. L L+1), and DECREMENT (e.g. L
L 1).[33] Rarely must a programmer write code
with such a limited instruction set.
But Minsky
shows (as do Melzak and Lambek) that his machine is
Turing complete with only four general types of instructions: conditional GOTO, unconditional GOTO, assignment/replacement/substitution, and HALT.[34]
Simulation of an algorithm: computer (computor) language: Knuth advises the reader that the best way to
learn an algorithm is to try it . . . immediately take pen
and paper and work through an example.[35] But what
about a simulation or execution of the real thing? The
programmer must translate the algorithm into a language
that the simulator/computer/computor can eectively execute. Stone gives an example of this: when computing the roots of a quadratic equation the computor must
know how to take a square root. If they don't, then the
algorithm, to be eective, must provide a set of rules for
extracting a square root.[36]
This means that the programmer must know a language
that is eective relative to the target computing agent
(computer/computor).
But what model should be used for the simulation? Van
Emde Boas observes even if we base complexity theory
on abstract instead of concrete machines, arbitrariness of
the choice of a model remains. It is at this point that
the notion of simulation enters.[37] When speed is being
measured, the instruction set matters. For example, the
subprogram in Euclids algorithm to compute the remainder would execute much faster if the programmer had a
"modulus" instruction available rather than just subtraction (or worse: just Minskys decrement).
Structured programming, canonical structures: Per the
ChurchTuring thesis, any algorithm can be computed
by a model known to be Turing complete, and per
Minskys demonstrations, Turing completeness requires
only four instruction typesconditional GOTO, unconditional GOTO, assignment, HALT. Kemeny and Kurtz
1.5. EXAMPLES
observe that, while undisciplined use of unconditional this follows a simple algorithm, which can be stated in a
GOTOs and conditional IF-THEN GOTOs can result in high-level description English prose, as:
"spaghetti code", a programmer can write structured pro- High-level description:
grams using only these instructions; on the other hand it
is also possible, and not too hard, to write badly structured
1. If there are no numbers in the set then there is no
programs in a structured language.[38] Tausworthe aug[39]
highest number.
ments the three Bhm-Jacopini canonical structures:
SEQUENCE, IF-THEN-ELSE, and WHILE-DO, with
2. Assume the rst number in the set is the largest numtwo more: DO-WHILE and CASE.[40] An additional
ber in the set.
benet of a structured program is that it lends itself to
[41]
proofs of correctness using mathematical induction.
3. For each remaining number in the set: if this number
Canonical owchart symbols[42] : The graphical aide
is larger than the current largest number, consider
called a owchart oers a way to describe and document
this number to be the largest number in the set.
an algorithm (and a computer program of one). Like pro4. When there are no numbers left in the set to iterate
gram ow of a Minsky machine, a owchart always starts
over, consider the current largest number to be the
at the top of a page and proceeds down. Its primary symlargest number of the set.
bols are only four: the directed arrow showing program
ow, the rectangle (SEQUENCE, GOTO), the diamond
(IF-THEN-ELSE), and the dot (OR-tie). The Bhm (Quasi-)formal description: Written in prose but much
Jacopini canonical structures are made of these primitive closer to the high-level language of a computer program,
shapes. Sub-structures can nest in rectangles, but only the following is the more formal coding of the algorithm
if a single exit occurs from the superstructure. The sym- in pseudocode or pidgin code:
bols, and their use to build the canonical structures, are
Algorithm LargestNumber Input: A list of numbers L.
shown in the diagram.
Output: The largest number in the list L. if L.size = 0
return null largest L[0] for each item in L, do if item
> largest, then largest item return largest
1.5 Examples
1.5.1
Algorithm example
that follows.
An animation of the quicksort algorithm sorting an array of randomized values. The red bars mark the pivot element; at the start
of the animation, the element farthest to the right hand side is
chosen as the pivot.
CHAPTER 1. ALGORITHM
Computer language for Euclids algorithm
Only a few instruction types are required to execute Euclids algorithmsome logical tests (conditional GOTO),
unconditional GOTO, assignment (replacement), and
subtraction.
A location is symbolized by upper case letter(s), e.g.
S, A, etc.
The varying quantity (number) in a location is written in lower case letter(s) and (usually) associated
with the locations name. For example, location L
at the start might contain the number l = 3009.
An inelegant program for Euclids algorithm
E3: [Interchange s and r]: The nut of Euclids algorithm. Use remainder r to measure what was previously
smaller number s; L serves as a temporary location.
11 L R 12 R S 13 S L 14 [Repeat the measuring
process]: GOTO 7
1.5. EXAMPLES
7
of instructions. The owchart of Elegant can be found
at the top of this article. In the (unstructured) Basic language, the steps are numbered, and the instruction LET
[] = [] is the assignment instruction symbolized by .
5 REM Euclids algorithm for greatest common divisor
6 PRINT Type two integers greater than 0 10 INPUT
A,B 20 IF B=0 THEN GOTO 80 30 IF A > B THEN
GOTO 60 40 LET B=B-A 50 GOTO 20 60 LET A=A-B
70 GOTO 20 80 PRINT A 90 END
The following version can be used with Object Oriented
languages:
// Euclids algorithm for greatest common divisor integer euclidAlgorithm (int A, int B){ A=Math.abs(A);
B=Math.abs(B); while (B!=0){ if (A>B) A=A-B; else
B=B-A; } return A; }
How Elegant works: In place of an outer Euclid loop,
Elegant shifts back and forth between two co-loops,
an A > B loop that computes A A B, and a B
A loop that computes B B A. This works because,
when at last the minuend M is less than or equal to the
subtrahend S ( Dierence = Minuend Subtrahend), the
minuend can become s (the new measuring length) and
the subtrahend can become the new r (the length to be
measured); in other words the sense of the subtraction
reverses.
Proof of program correctness by use of mathematical induction: Knuth demonstrates the application of
mathematical induction to an extended version of EuThe following version of Euclids algorithm requires only clids algorithm, and he proposes a general method apsix core instructions to do what thirteen are required to plicable to proving the validity of any algorithm.[48]
do by Inelegant"; worse, Inelegant requires more types Tausworthe proposes that a measure of the complexity
An elegant program for Euclids algorithm
8
of a program be the length of its correctness proof.[49]
CHAPTER 1. ALGORITHM
not counted, or O(n) if it is counted.
It is frequently important to know how much of a particular resource (such as time or storage) is theoretically
required for a given algorithm. Methods have been developed for the analysis of algorithms to obtain such quantitative answers (estimates); for example, the sorting algorithm above has a time requirement of O(n), using the big
O notation with n as the length of the list. At all times the
algorithm only needs to remember two values: the largest
number found so far, and its current position in the input
list. Therefore, it is said to have a space requirement of
O(1), if the space required to store the input numbers is
1.7. CLASSIFICATION
1.7 Classication
9
problems have no parallel algorithms, and are called
inherently serial problems.
There are various ways to classify algorithms, each with Deterministic or non-deterministic Deterministic alits own merits.
gorithms solve the problem with exact decision
at every step of the algorithm whereas nondeterministic algorithms solve problems via guess1.7.1 By implementation
ing although typical guesses are made more accurate
through the use of heuristics.
One way to classify algorithms is by implementation
means.
10
CHAPTER 1. ALGORITHM
such problems. This category also includes search
algorithms, branch and bound enumeration and
backtracking.
such a problem if it can be proved that all restrictions for integer values are supercial, i.e., the solutions satisfy these restrictions anyway. In the general
case, a specialized algorithm or an algorithm that
nds approximate solutions is used, depending on
the diculty of the problem.
1.7.4
By eld of study
11
p. 107). This is closely related to the study of methods
of hypercomputation.
12
CHAPTER 1. ALGORITHM
The clock: Bolter credits the invention of the weightdriven clock as The key invention [of Europe in the Middle Ages]", in particular the verge escapement[68] that
provides us with the tick and tock of a mechanical clock.
The accurate automatic machine[69] led immediately
to mechanical automata" beginning in the 13th century
and nally to computational machinesthe dierence
engine and analytical engines of Charles Babbage and
Countess Ada Lovelace, mid-19th century.[70] Lovelace
1.11 History: Development of the is credited with the rst creation of an algorithm intended
for processing on a computer Babbages analytical ennotion of algorithm
gine, the rst device considered a real Turing-complete
computer instead of just a calculator and is sometimes
1.11.1 Ancient Near East
called historys rst programmer as a result, though a
full implementation of Babbages second device would
Algorithms were used in ancient Greece. Two exam- not be realized until decades after her lifetime.
ples are the Sieve of Eratosthenes, which was described
Logical machines 1870Stanley Jevons' logical abacus
in Introduction to Arithmetic by Nicomachus,[64][65]:Ch 9.2
and logical machine: The technical problem was to reand the Euclidean algorithm, which was rst described
duce Boolean equations when presented in a form similar
in Euclids Elements (c. 300 BC).[65]:Ch 9.1 Babylonian
to what are now known as Karnaugh maps. Jevons (1880)
clay tablets describe and employ algorithmic procedures
describes rst a simple abacus of slips of wood furto compute the time and place of signicant astronomical
nished with pins, contrived so that any part or class of the
[66]
events.
[logical] combinations can be picked out mechanically .
. . More recently however I have reduced the system to a
1.11.2 Discrete and distinguishable sym- completely mechanical form, and have thus embodied the
whole of the indirect process of inference in what may be
bols
called a Logical Machine" His machine came equipped
with certain moveable wooden rods and at the foot are
Tally-marks: To keep track of their ocks, their sacks
21 keys like those of a piano [etc] . . .. With this maof grain and their money the ancients used tallying: accuchine he could analyze a "syllogism or any other simple
mulating stones or marks scratched on sticks, or making
logical argument.[71]
discrete symbols in clay. Through the Babylonian and
Egyptian use of marks and symbols, eventually Roman This machine he displayed in 1870 before the Fellows of
numerals and the abacus evolved (Dilson, p. 1641). the Royal Society.[72] Another logician John Venn, howTally marks appear prominently in unary numeral system ever, in his 1881 Symbolic Logic, turned a jaundiced eye
arithmetic used in Turing machine and PostTuring ma- to this eort: I have no high estimate myself of the interest or importance of what are sometimes called logchine computations.
ical machines ... it does not seem to me that any contrivances at present known or likely to be discovered re1.11.3 Manipulation of symbols as place ally deserve the name of logical machines"; see more at
Algorithm characterizations. But not to be outdone he
holders for numbers: algebra
too presented a plan somewhat analogous, I apprehend,
The work of the ancient Greek geometers (Euclidean al- to Prof. Jevons abacus ... [And] [a]gain, correspondgorithm), the Indian mathematician Brahmagupta, and ing to Prof. Jevonss logical machine, the following conthe Islamic mathematics Al-Khwarizmi (from whose trivance may be described. I prefer to call it merely a
name the terms "algorism" and algorithm are derived), logical-diagram machine ... but I suppose that it could do
and Western European mathematicians culminated in very completely all that can be rationally expected of any
logical machine.[73]
Leibniz's notion of the calculus ratiocinator (ca 1680):
A good century and a half ahead of his
time, Leibniz proposed an algebra of logic, an
algebra that would specify the rules for manipulating logical concepts in the manner that ordinary algebra species the rules for manipulating numbers.[67]
1.11.5
13
ing each other but describing a process of men-ascomputers working on computationsand they yield virtually identical denitions.
Emil Post (1936) described the actions of a computer
(human being) as follows:
"...two concepts are involved: that of a symbol
space in which the work leading from problem
to answer is to be carried out, and a xed unalterable set of directions.
14
CHAPTER 1. ALGORITHM
A set of directions applicable to a general
problem sets up a deterministic process when
applied to each specic problem. This process
terminates only when it comes to the direction of type (C ) [i.e., STOP]".[89] See more
at PostTuring machine
1.11.7
15
See also
Abstract machine
Algorithm engineering
Algorithm characterizations
Algorithmic composition
Algorithmic synthesis
Algorithmic trading
Garbage in, garbage out
Introduction to Algorithms
List of algorithm general topics
List of important publications in theoretical computer science Algorithms
Numerical Mathematics Consortium
Theory of computation
Computability theory
Computational complexity theory
1.13 Notes
[1] Any classical mathematical algorithm, for example, can
be described in a nite number of English words (Rogers
1987:2).
[2] Well dened with respect to the agent that executes the
algorithm: There is a computing agent, usually human,
which can react to the instructions and carry out the computations (Rogers 1987:2).
[3] an algorithm is a procedure for computing a function
(with respect to some chosen notation for integers) ... this
limitation (to numerical functions) results in no loss of
generality, (Rogers 1987:1).
[4] An algorithm has zero or more inputs, i.e., quantities
which are given to it initially before the algorithm begins
(Knuth 1973:5).
[5] A procedure which has all the characteristics of an algorithm except that it possibly lacks niteness may be called
a 'computational method'" (Knuth 1973:5).
16
CHAPTER 1. ALGORITHM
[6] An algorithm has one or more outputs, i.e. quantities which have a specied relation to the inputs (Knuth
1973:5).
[28] Lambeks abacus is a countably innite number of locations (holes, wires etc.) together with an unlimited supply of counters (pebbles, beads, etc). The locations are
distinguishable, the counters are not. The holes have
unlimited capacity, and standing by is an agent who understands and is able to carry out the list of instructions
(Lambek 1961:295). Lambek references Melzak who denes his Q-machine as an indenitely large number of
locations . . . an indenitely large supply of counters
distributed among these locations, a program, and an operator whose sole purpose is to carry out the program
(Melzak 1961:283). B-B-J (loc. cit.) add the stipulation that the holes are capable of holding any number of
stones (p. 46). Both Melzak and Lambek appear in The
Canadian Mathematical Bulletin, vol. 4, no. 3, September
1961.
[15] Knuth 1973:7 states: In practice we not only want algorithms, we want good algorithms ... one criterion of goodness is the length of time taken to perform the algorithm
... other criteria are the adaptability of the algorithm to
computers, its simplicity and elegance, etc.
[17] Stone 1973:78 states that there must be, "...a procedure
that a robot [i.e., computer] can follow in order to determine precisely how to obey the instruction. Stone adds
niteness of the process, and deniteness (having no ambiguity in the instructions) to this denition.
[18] Knuth, loc. cit
[19] Minsky 1967, p. 105
[20] Gurevich 2000:1, 3
[21] Sipser 2006:157
[22] Knuth 1973:7
[23] Chaitin 2005:32
[25] In his essay Calculations by Man and Machine: Conceptual Analysis Seig 2002:390 credits this distinction
to Robin Gandy, cf Wilfred Seig, et al., 2002 Reections
on the foundations of mathematics: Essays in honor of
Solomon Feferman, Association for Symbolic Logic, A.
K Peters Ltd, Natick, MA.
1.13. NOTES
17
[60] Oaks, Jerey A. Was al-Khwarizmi an applied algebraist?". University of Indianapolis. Retrieved 2008-0530.
[61] Brezina, Corona (2006). Al-Khwarizmi: The Inventor Of
Algebra. The Rosen Publishing Group. ISBN 978-14042-0513-0.
[62] Foremost mathematical texts in history, according to Carl
B. Boyer.
[63] Oxford English Dictionary, Third Edition, 2012 s.v.
2.
[64] Eratosthenes.
[65] Cooke, Roger L. (2005). The History of Mathematics: A
Brief Course. John Wiley & Sons. ISBN 9781118460290.
[66] Aaboe, Asger (2001), Episodes from the Early History of
Astronomy, New York: Springer, pp. 4062, ISBN 0387-95136-9
[67] Davis 2000:18
[68] Bolter 1984:24
[69] Bolter 1984:26
[70] Bolter 1984:3334, 204206.
[71] All quotes from W. Stanley Jevons 1880 Elementary
Lessons in Logic: Deductive and Inductive, Macmillan and
Co., London and New York. Republished as a googlebook; cf Jevons 1880:199201. Louis Couturat 1914 the
Algebra of Logic, The Open Court Publishing Company,
Chicago and London. Republished as a googlebook; cf
Couturat 1914:7576 gives a few more details; interestingly he compares this to a typewriter as well as a piano.
Jevons states that the account is to be found at Jan . 20,
1870 The Proceedings of the Royal Society.
[72] Jevons 1880:199200
[73] All quotes from John Venn 1881 Symbolic Logic, Macmillan and Co., London. Republished as a googlebook. cf
Venn 1881:120125. The interested reader can nd a
deeper explanation in those pages.
[74] Bell and Newell diagram 1971:39, cf. Davis 2000
[75]
Melina Hill, Valley News Correspondent, A Tinkerer Gets a Place in History, Valley News West
Lebanon NH, Thursday March 31, 1983, page 13.
[58] Tsypkin (1971). Adaptation and learning in automatic systems. Academic Press. p. 54. ISBN 978-0-08-095582-7.
18
1.14 References
Axt, P (1959). On a Subrecursive Hierarchy
and Primitive Recursive Degrees. Transactions of
the American Mathematical Society. 92: 85105.
doi:10.2307/1993169.
Bell, C. Gordon and Newell, Allen (1971), Computer Structures: Readings and Examples, McGraw
Hill Book Company, New York. ISBN 0-07004357-4.
Bellah, Robert Neelly (1985). Habits of the Heart:
Individualism and Commitment in American Life.
Berkeley: University of California Press. ISBN
978-0-520-25419-0.
Blass, Andreas;
Gurevich, Yuri (2003).
Algorithms: A Quest for Absolute Denitions (PDF). Bulletin of European Association for
Theoretical Computer Science. 81. Includes an
excellent bibliography of 56 references.
Boolos, George; Jerey, Richard (1999) [1974].
Computability and Logic (4th ed.). Cambridge University Press, London. ISBN 0-521-20402-X.: cf.
Chapter 3 Turing machines where they discuss certain enumerable sets not eectively (mechanically)
enumerable.
Burgin, Mark (2004). Super-Recursive Algorithms.
Springer. ISBN 978-0-387-95569-8.
Campagnolo, M.L., Moore, C., and Costa, J.F.
(2000) An analog characterization of the subrecursive functions. In Proc. of the 4th Conference on
Real Numbers and Computers, Odense University,
pp. 91109
CHAPTER 1. ALGORITHM
Church, Alonzo (1936a). An Unsolvable Problem of Elementary Number Theory. The American Journal of Mathematics. 58 (2): 345363.
doi:10.2307/2371045. JSTOR 2371045. Reprinted
in The Undecidable, p. 89. The rst expression of
Churchs Thesis. See in particular page 100 (The
Undecidable) where he denes the notion of eective calculability in terms of an algorithm, and he
uses the word terminates, etc.
Church, Alonzo (1936b). A Note on the Entscheidungsproblem. The Journal of Symbolic Logic.
1 (1): 4041. doi:10.2307/2269326. JSTOR
2269326. Church, Alonzo (1936). Correction
to a Note on the Entscheidungsproblem. The
Journal of Symbolic Logic. 1 (3): 101102.
doi:10.2307/2269030. JSTOR 2269030. Reprinted
in The Undecidable, p. 110. Church shows that
the Entscheidungsproblem is unsolvable in about 3
pages of text and 3 pages of footnotes.
Daa', Ali Abdullah al- (1977). The Muslim contribution to mathematics. London: Croom Helm.
ISBN 0-85664-464-1.
Davis, Martin (1965). The Undecidable: Basic Papers On Undecidable Propositions, Unsolvable Problems and Computable Functions. New York: Raven
Press. ISBN 0-486-43228-9. Davis gives commentary before each article. Papers of Gdel, Alonzo
Church, Turing, Rosser, Kleene, and Emil Post are
included; those cited in the article are listed here by
authors name.
Davis, Martin (2000). Engines of Logic: Mathematicians and the Origin of the Computer. New York:
W. W. Nortion. ISBN 0-393-32229-7. Davis offers concise biographies of Leibniz, Boole, Frege,
Cantor, Hilbert, Gdel and Turing with von Neumann as the show-stealing villain. Very brief bios
of Joseph-Marie Jacquard, Babbage, Ada Lovelace,
Claude Shannon, Howard Aiken, etc.
This article incorporates public domain material from the NIST document: Black, Paul E.
algorithm. Dictionary of Algorithms and Data
Structures.
Dean, Tim (2012). Evolution and moral diversity. Baltic International Yearbook of Cognition,
Logic and Communication. 7.
Dennett, Daniel (1995). Darwins Dangerous Idea.
New York: Touchstone/Simon & Schuster. ISBN
0-684-80290-2.
Yuri Gurevich, Sequential Abstract State Machines
Capture Sequential Algorithms, ACM Transactions
on Computational Logic, Vol 1, no 1 (July 2000),
pages 77111. Includes bibliography of 33 sources.
1.14. REFERENCES
Hertzke, Allen D.; McRorie, Chris (1998). The
Concept of Moral Ecology. In Lawler, Peter Augustine; McConkey, Dale. Community and Political
Thought Today. Westport, CT: Praeger.
Kleene, Stephen C. (1936).
General Recursive Functions of Natural Numbers.
Mathematische Annalen.
112 (5): 727742.
doi:10.1007/BF01565439.
Presented to the
American Mathematical Society, September 1935.
Reprinted in The Undecidable, p. 237. Kleenes
denition of general recursion (known now as
mu-recursion) was used by Church in his 1935 paper An Unsolvable Problem of Elementary Number
Theory that proved the decision problem to be
undecidable (i.e., a negative result).
Kleene, Stephen C. (1943). Recursive Predicates and Quantiers.
American Mathematical Society Transactions.
54 (1): 4173.
doi:10.2307/1990131. JSTOR 1990131. Reprinted
in The Undecidable, p. 255. Kleene rened his
denition of general recursion and proceeded in
his chapter 12. Algorithmic theories to posit
Thesis I (p. 274); he would later repeat this thesis
(in Kleene 1952:300) and name it Churchs Thesis"(Kleene 1952:317) (i.e., the Church thesis).
Kleene, Stephen C. (1991) [1952]. Introduction to Metamathematics (Tenth ed.).
NorthHolland Publishing Company. ISBN 0-7204-21039.
Excellentaccessible, readablereference
source for mathematical foundations.
Knuth, Donald (1997). Fundamental Algorithms,
Third Edition. Reading, Massachusetts: Addison
Wesley. ISBN 0-201-89683-4.
Knuth, Donald (1969). Volume 2/Seminumerical Algorithms, The Art of Computer Programming First
Edition. Reading, Massachusetts: AddisonWesley.
Kosovsky, N. K. Elements of Mathematical Logic
and its Application to the theory of Subrecursive Algorithms, LSU Publ., Leningrad, 1981
Kowalski,
Robert
(1979).
AlgoCommunications
rithm=Logic+Control.
of
the
ACM.
22
(7):
424436.
doi:10.1145/359131.359136.
A. A. Markov (1954) Theory of algorithms. [Translated by Jacques J. Schorr-Kon and PST sta] Imprint Moscow, Academy of Sciences of the USSR,
1954 [i.e., Jerusalem, Israel Program for Scientic Translations, 1961; available from the Ofce of Technical Services, U.S. Dept. of Commerce, Washington] Description 444 p. 28 cm.
Added t.p. in Russian Translation of Works of the
Mathematical Institute, Academy of Sciences of the
USSR, v. 42. Original title: Teoriya algerifmov.
19
[QA248.M2943 Dartmouth College library. U.S.
Dept. of Commerce, Oce of Technical Services,
number OTS 60-51085.]
Minsky, Marvin (1967). Computation: Finite and
Innite Machines (First ed.). Prentice-Hall, Englewood Clis, NJ. ISBN 0-13-165449-7. Minsky
expands his "...idea of an algorithman eective
procedure... in chapter 5.1 Computability, Eective
Procedures and Algorithms. Innite machines.
Post, Emil (1936). Finite Combinatory Processes,
Formulation I. The Journal of Symbolic Logic.
1 (3): 103105. doi:10.2307/2269031. JSTOR
2269031. Reprinted in The Undecidable, p. 289.
Post denes a simple algorithmic-like process of a
man writing marks or erasing marks and going from
box to box and eventually halting, as he follows a
list of simple instructions. This is cited by Kleene as
one source of his Thesis I, the so-called Church
Turing thesis.
Rogers, Jr, Hartley (1987). Theory of Recursive
Functions and Eective Computability. The MIT
Press. ISBN 0-262-68052-1.
Rosser, J.B. (1939). An Informal Exposition of
Proofs of Godels Theorem and Churchs Theorem. Journal of Symbolic Logic. 4: 5360.
doi:10.2307/2269059. Reprinted in The Undecidable, p. 223. Herein is Rossers famous denition of eective method": "...a method each step
of which is precisely predetermined and which is
certain to produce the answer in a nite number of
steps... a machine which will then solve any problem
of the set with no human intervention beyond inserting the question and (later) reading the answer (p.
225226, The Undecidable)
Santos-Lang, Christopher (2014). Moral Ecology Approaches to Machine Ethics. In van Rysewyk, Simon; Pontier, Matthijs. Machine Medical
Ethics (PDF). Switzerland: Springer. pp. 111127.
doi:10.1007/978-3-319-08108-3_8.
Scott, Michael L. (2009). Programming Language
Pragmatics (3rd ed.). Morgan Kaufmann Publishers/Elsevier. ISBN 978-0-12-374514-9.
Sipser, Michael (2006). Introduction to the Theory
of Computation. PWS Publishing Company. ISBN
0-534-94728-X.
Sober, Elliott; Wilson, David Sloan (1998). Unto
Others: The Evolution and Psychology of Unselsh
Behavior. Cambridge: Harvard University Press.
Stone, Harold S. (1972). Introduction to Computer Organization and Data Structures (1972 ed.).
McGraw-Hill, New York. ISBN 0-07-061726-0.
Cf. in particular the rst chapter titled: Algorithms,
20
CHAPTER 1. ALGORITHM
Turing Machines, and Programs. His succinct informal denition: "...any sequence of instructions that
can be obeyed by a robot, is called an algorithm" (p.
4).
Tausworthe, Robert C (1977). Standardized Development of Computer Software Part 1 Methods. Englewood Clis NJ: PrenticeHall, Inc. ISBN 0-13842195-1.
Turing, Alan M. (193637). On Computable
Numbers, With An Application to the Entscheidungsproblem.
Proceedings of the London
Mathematical Society, Series 2. 42: 230265.
doi:10.1112/plms/s2-42.1.230.. Corrections, ibid,
vol. 43(1937) pp. 544546. Reprinted in The
Undecidable, p. 116. Turings famous paper
completed as a Masters dissertation while at Kings
College Cambridge UK.
Turing, Alan M. (1939). Systems of Logic Based
on Ordinals. Proceedings of the London Mathematical Society. 45: 161228. doi:10.1112/plms/s245.1.161. Reprinted in The Undecidable, p. 155.
Turings paper that dened the oracle was his PhD
thesis while at Princeton USA.
Wallach, Wendell; Allen, Colin (November 2008).
Moral Machines: Teaching Robots Right from
Wrong. USA: Oxford University Press. ISBN 9780-19-537404-9.
United States Patent and Trademark Oce
(2006), 2106.02 **>Mathematical Algorithms:
2100 Patentability, Manual of Patent Examining
Procedure (MPEP). Latest revision August 2006
1.14.1
Secondary references
Bolter, David J. (1984). Turings Man: Western Culture in the Computer Age (1984 ed.). The University
of North Carolina Press, Chapel Hill NC. ISBN 08078-1564-0., ISBN 0-8078-4108-0 pbk.
Dilson, Jesse (2007). The Abacus ((1968,1994)
ed.). St. Martins Press, NY. ISBN 0-312-10409X., ISBN 0-312-10409-X (pbk.)
van Heijenoort, Jean (2001). From Frege to Gdel,
A Source Book in Mathematical Logic, 18791931
((1967) ed.). Harvard University Press, Cambridge,
MA. ISBN 0-674-32449-8., 3rd edition 1976[?],
ISBN 0-674-32449-8 (pbk.)
Hodges, Andrew (1983). Alan Turing: The Enigma
((1983) ed.). Simon and Schuster, New York. ISBN
0-671-49207-1., ISBN 0-671-49207-1. Cf. Chapter The Spirit of Truth for a history leading to, and
a discussion of, his proof.
21
Je Erickson.
Chapter 2
Analogy
For other uses, see Analogy (disambiguation).
n =1
With respect to the terms source and target there are two
distinct traditions of usage:
A photon is emitted
with energy E = hf
The tradition in cognitive psychology, in literary theory, and in specializations within philosophy outside
of logic, speaks of a mapping from what is typically
the more familiar area of experience, the source, to
what is typically the more problematic area of experience, the target.
22
2.2.1
Identity of relation
In ancient Greek the word (analogia) originally meant proportionality, in the mathematical sense,
and it was indeed sometimes translated to Latin as proportio. From there analogy was understood as identity of
relation between any two ordered pairs, whether of mathematical nature or not. Kants Critique of Judgment held
to this notion. Kant argued that there can be exactly the
same relation between two completely dierent objects.
The same notion of analogy was used in the US-based
SAT tests, that included analogy questions in the form
A is to B as C is to what?" For example, Hand is to palm
as foot is to ____?" These questions were usually given in
the Aristotelian format: HAND : PALM : : FOOT : ____
While most competent English speakers will immediately
give the right answer to the analogy question (sole), it is
more dicult to identify and describe the exact relation
that holds both between pairs such as hand and palm, and
between foot and sole. This relation is not apparent in
some lexical denitions of palm and sole, where the former is dened as the inner surface of the hand, and the
latter as the underside of the foot. Analogy and abstraction
are dierent cognitive processes, and analogy is often an
easier one. This analogy is not comparing all the properties between a hand and a foot, but rather comparing the
relationship between a hand and its palm to a foot and its
sole.[4] While a hand and a foot have many dissimilarities,
the analogy focuses on their similarity in having an inner
surface. A computer algorithm has achieved human-level
performance on multiple-choice analogy questions from
the SAT test. The algorithm measures the similarity of
relations between pairs of words (e.g., the similarity between the pairs HAND:PALM and FOOT:SOLE) by statistical analysis of a large collection of text. It answers
SAT questions by selecting the choice with the highest
relational similarity.[5]
2.2.2
Shared abstraction
23
necessarily a relation, but also an idea, a pattern, a regularity, an attribute, an eect or a philosophy. These
authors also accepted that comparisons, metaphors and
images (allegories) could be used as arguments, and
sometimes they called them analogies. Analogies should
also make those abstractions easier to understand and give
condence to the ones using them.
The Middle Age saw an increased use and theorization of
analogy. Roman lawyers had already used analogical reasoning and the Greek word analogia. Medieval lawyers
distinguished analogia legis and analogia iuris (see below). In Islamic logic, analogical reasoning was used for
the process of qiyas in Islamic sharia law and qh jurisprudence. In Christian theology, analogical arguments
were accepted in order to explain the attributes of God.
Aquinas made a distinction between equivocal, univocal
and analogical terms, the last being those like healthy that
have dierent but related meanings. Not only a person
can be healthy, but also the food that is good for health
(see the contemporary distinction between polysemy and
homonymy). Thomas Cajetan wrote an inuential treatise on analogy. In all of these cases, the wide Platonic and Aristotelian notion of analogy was preserved.
James Francis Ross in Portraying Analogy (1982), the
rst substantive examination of the topic since Cajetans
De Nominum Analogia, demonstrated that analogy is a
systematic and universal feature of natural languages,
with identiable and law-like characteristics which explain how the meanings of words in a sentence are interdependent.
24
CHAPTER 2. ANALOGY
selected and mapping from base to target occurs in a serial manner.[13][14] Empirical evidence shows that human
analogical mapping performance is inuenced by information presentation order.[15]
25
Linguistics
An analogy can be the linguistic process that reduces
word forms perceived as irregular by remaking them
in the shape of more common forms that are governed by rules. For example, the English verb help
once had the preterite holp and the past participle
holpen. These obsolete forms have been discarded
and replaced by helped by the power of analogy (or
by widened application of the productive Verb-ed
rule.) This is called leveling. However, irregular
forms can sometimes be created by analogy; one example is the American English past tense form of
dive: dove, formed on analogy with words such as
drive: drove.
Neologisms can also be formed by analogy with existing words. A good example is software, formed
by analogy with hardware; other analogous neologisms such as rmware and vaporware have followed. Another example is the humorous[21] term
underwhelm, formed by analogy with overwhelm.
Analogy is often presented as an alternative mechanism to generative rules for explaining productive
formation of structures such as words. Others argue
that in fact they are the same mechanism, that rules
are analogies that have become entrenched as standard parts of the linguistic system, whereas clearer
cases of analogy have simply not (yet) done so (e.g.
Langacker 1987.445447). This view has obvious
resonances with the current views of analogy in cognitive science which are discussed above.
2.3.2 In science
Analogues are often used in theoretical and applied sciences in the form of models or simulations which can
be considered as strong analogies. Other much weaker
2.3.1 In language
analogies assist in understanding and describing functional behaviours of similar systems. For instance, an
Logic
analogy commonly used in electronics textbooks compares electrical circuits to hydraulics. Another example is
Logicians analyze how analogical reasoning is used in the analog ear based on electrical, electronic or mechanarguments from analogy.
ical devices.
Rhetoric
An analogy is a spoken or textual comparison between two words (or sets of words) to highlight some
form of semantic similarity between them. Such
analogies can be used to strengthen political and
philosophical arguments, even when the semantic
similarity is weak or non-existent (if crafted carefully for the audience). Analogies are sometimes
used to persuade those that cannot detect the awed
or non-existent arguments.
Mathematics
Some types of analogies can have a precise mathematical
formulation through the concept of isomorphism. In detail, this means that given two mathematical structures of
the same type, an analogy between them can be thought
of as a bijection between them which preserves some or
all of the relevant structure. For example, R2 and C are
isomorphic as vector spaces, but the complex numbers,
C , have more structure than R2 does: C is a eld as well
as a vector space.
26
Category theory takes the idea of mathematical analogy
much further with the concept of functors. Given two categories C and D, a functor F from C to D can be thought
of as an analogy between C and D, because F has to map
objects of C to objects of D and arrows of C to arrows
of D in such a way that the compositional structure of
the two categories is preserved. This is similar to the
structure mapping theory of analogy of Dedre Gentner, in
that it formalizes the idea of analogy as a function which
satises certain conditions.
Articial intelligence
CHAPTER 2. ANALOGY
his Conversation Theory asserts there exists an analogy
exhibiting both similarities and dierences between any
pair of the participants internal models or concepts.
Analogies from codes and statutes In civil law systems, where the preeminent source of law is legal codes
and statutes, a lacuna (a gap) arises when a specic issue
is not explicitly dealt with in written law. Judges will try
to identify a provision whose purpose applies to the case
at hand. That process can reach a high degree of sophistication, as judges sometimes not only look at a specic
provision to ll lacunae (gaps), but at several provisions
(from which an underlying purpose can be inferred) or
at general principles of the law to identify the legislator's
value judgement from which the analogy is drawn. Besides the not very frequent lling of lacunae, analogy is
very commonly used between dierent provisions in order to achieve substantial coherence. Analogy from previous judicial decisions is also common, although these
decisions are not binding authorities.
2.3.4
In teaching strategies
Analogies as dened in rhetoric are a comparison between words, but an analogy can be used in teaching as
well. An analogy as used in teaching would be comparing a topic that students are already familiar with, with
a new topic that is being introduced so that students can
get a better understanding of the topic and relate back
to previous knowledge. Shawn Glynn, a professor in the
department of educational psychology and instructional
technology at the University of Georgia,[25] developed a
theory on teaching with analogies and developed steps to
explain the process of teaching with this method. The
steps for teaching with analogies are as follows: Step one
is introducing the new topic that is about to be taught and
giving some general knowledge on the subject. Step two
is reviewing the concept that the students already know to
ensure they have the proper knowledge to assess the similarities between the two concepts. Step three is nding
relevant features within the analogy of the two concepts.
Step four is nding similarities between the two concepts
so students are able to compare and contrast them in order to understand. Step ve is indicating where the analogy breaks down between the two concepts. And nally,
step six is drawing a conclusion about the analogy and
comparison of the new material with the already learned
material. Typically this method is used to learn topics in
science.[26]
In 1989 Kerry Ruef, a teacher, began an entire program,
which she titled The Private Eye Project. It is a method of
teaching that revolves around using analogies in the classroom to better explain topics. She thought of the idea to
use analogies as a part of curriculum because she was observing objects once and she said, my mind was noting
what else each object reminded me of... This led her to
teach with the question, what does [the subject or topic]
remind you of?" The idea of comparing subjects and concepts led to the development of The Private Eye Project
as a method of teaching.[27] The program is designed to
27
build critical thinking skills with analogies as one of the
main themes revolving around it. While Glynn focuses on
using analogies to teach science, The Private Eye Project
can be used for any subject including writing, math, art,
social studies, and invention. It is now used by thousands
of schools around the country.[28] There are also various pedagogic innovations now emerging that use visual
analogies for cross-disciplinary teaching and research, for
instance between science and the humanities.[29]
2.5 Notes
[1] , Henry George Liddell, Robert Scott, A GreekEnglish Lexicon, on Perseus Digital Library
[2] analogy, Online Etymology Dictionary
[3] Hofstadter in Gentner et al. 2001.
[4] , Michael A. Martin, The Use of Analogies and Heuristics
in Teaching Introductory Statistical Methods
[5] Turney 2006
[6] Shelley 2003
[7] Hallaq, Wael B. (19851986). The Logic of Legal Reasoning in Religious and Non-Religious Cultures: The
Case of Islamic Law and the Common Law. Cleveland
State Law Review. 34: 7996 [935]
28
CHAPTER 2. ANALOGY
[28] The Private Eye Project. The Private Eye Project. 2013.
[29] Mario Petrucci. Crosstalk, Mutation, Chaos: bridgebuilding between the sciences and literary studies using
Visual Analogy.
2.6 References
Cajetan, Tommaso De Vio, (1498), De Nominum
Analogia, P.N. Zammit (ed.), 1934, The Analogy
of Names, Koren, Henry J. and Bushinski, Edward
A (trans.), 1953, Pittsburgh: Duquesne University
Press.
Chalmers, D.J. et al. (1991). Chalmers, D.J.,
French, R.M., Hofstadter, D., High-Level Perception, Representation, and Analogy.
Coelho, Ivo (2010). Analogy. ACPI Encyclopedia of Philosophy. Ed. Johnson J. Puthenpurackal.
Bangalore: ATC. 1:64-68.
Cornujols, A. (1996).
Analogie, principe
dconomie et complexit algorithmique. In Actes
des 11mes Journes Franaises de lApprentissage.
Ste.
Cornujols, A. (1996). Analogy, principle of economy and computational complexity.* Doumas, L.
A. A., Hummel, J.E., and Sandhofer, C. (2008). A
Theory of the Discovery and Predication of Relational Concepts. Psychological Review, 115, 1-43.
Forbus, K. et al.
(1998).
Analogy just
looks like high-level perception.* Gentner, D.
(1983). Structure-mapping: A theoretical framework for analogy. Cognitive Science, 7, 155170.
(Reprinted in A. Collins & E. E. Smith (Eds.), Readings in cognitive science: A perspective from psychology and articial intelligence. Palo Alto, CA:
Kaufmann).
Gentner, D., Holyoak, K.J., Kokinov, B. (Eds.)
(2001). The Analogical Mind: Perspectives from
Cognitive Science. Cambridge, MA, MIT Press,
ISBN 0-262-57139-0
Hofstadter, D. (2001). Analogy as the Core of
Cognition, in Dedre Gentner, Keith Holyoak, and
Boicho Kokinov (eds.) The Analogical Mind: Perspectives from Cognitive Science, Cambridge, MA:
The MIT Press/Bradford Book, 2001, pp. 499538.
29
Ross, J.F., (1958), A Critical Analysis of the Theory
of Analogy of St Thomas Aquinas, (Ann Arbor, MI:
University Microlms Inc).
Shelley, C. (2003). Multiple analogies in Science
and Philosophy. Amsterdam/Philadelphia: John
Benjamins Publishing Company.
Turney, P.D.; Littman, M.L. (2005). Corpusbased learning of analogies and semantic relations. Machine Learning. 60 (13): 251278.
doi:10.1007/s10994-005-0913-1.
Turney, P.D. (2006). Similarity of semantic relations. Computational Linguistics. 32 (3): 379416.
doi:10.1162/coli.2006.32.3.379.
Chapter 3
AppleTalk
AppleTalk was a proprietary suite of networking protocols developed by Apple Inc. for their Macintosh computers. AppleTalk includes a number of features that allow local area networks to be connected with no prior
setup or the need for a centralized router or server of any
sort. Connected AppleTalk-equipped systems automatically assign addresses, update the distributed namespace,
and congure any required inter-networking routing. It is
a plug-n-play system.
AppleTalk was released in 1985, and was the primary
protocol used by Apple devices through the 1980s and
1990s. Versions were also released for the IBM PC and
compatibles and the Apple IIGS. AppleTalk support was
also available in most networked printers (especially laser
printers), some le servers, and a number of routers.
The rise of TCP/IP during the 1990s led to a reimplementation of most of these types of support on that protocol,
and AppleTalk became unsupported as of the release of
Mac OS X v10.6 in 2009. Many of AppleTalks more
advanced autoconguration features have since been introduced in Bonjour, while Universal Plug and Play serves
similar needs.
3.1 History
3.1.1
AppleNet
3.1.2 AppleBus
Through this period, Apple was deep in development of
the Macintosh computer. During development, engineers
had made the decision to use the Zilog 8530 serial controller chip (SCC) instead of the lower cost and more
common UART to provide serial port connections.[6]
The SCC cost about $5 more than a UART, but oered
much higher speeds up to 250 kilobits per second (or
higher with additional hardware) and internally supported
a number of basic networking-like protocols like IBMs
Bisync.[7]
The SCC was chosen because it would allow multiple devices to be attached to the port. Peripherals equipped
with similar SCCs could communicate using the built-in
protocols, interleaving their data with other peripherals
on the same bus. This would eliminate the need for more
ports on the back of the machine, and allowed for the
elimination of expansion slots for supporting more complex devices. The initial concept was known as AppleBus, envisioning a system controlled by the host Macintosh polling dumb devices in a fashion similar to the
modern Universal Serial Bus.[8]
30
3.1. HISTORY
31
Jobs earlier question to Sidhu had already sparked a number of ideas. When AppleNet was cancelled in October, Sidhu led an eort to develop a new networking system based on the AppleBus hardware. This new system
would not have to conform to any existing preconceptions, and was designed to be worthy of the Mac - a system that was user-installable, had zero-conguration, and
no xed network addresses - in short, a true plug-andplay network.[10] Considerable eort was needed, but by
the time the Mac was released, the basic concepts had
been outlined, and some of the low-level protocols were
on their way to completion. Sidhu mentioned the work to
Belleville only two hours after the Mac was announced.[4]
The main advantage of AppleTalk was that it was completely maintenance-free. To join a device to a network, you simply plugged the adaptor into the machine,
then connected a cable from it to any free port on any
other adaptor. AppleTalks internal protocols negotiated
a working network address number, automatically gave
the computer a human-readable name, and collected up
a list of the names and types of other machines on the
network so the user could browse the devices through
the GUI-based Chooser. AppleTalk was so easy to use
that ad-hoc networks tended to appear whenever multiple
Macs were in the same room.[15] Apple would later use
this in an advertisement showing a network being created
between two seats in an airplane.[16]
32
3.1.6
CHAPTER 3. APPLETALK
EtherTalk, TokenTalk and Apple- device in the 2nd Floor zone to indicate its physical location. Phase II also included changes to the underlying
Share
In 1988 Apple had released MacTCP, a system that allowed the Mac to support TCP/IP on machines with
suitable Ethernet hardware. However, this left many
universities with the problem of supporting IP on their
many LocalTalk-equipped Macs. Stanford University pioneered development of MacIP, which allowed IP packets to be routed over LocalTalk networks with the support
of a suitable gateway machine. These were initially custom devices, but it was soon common to include MacIP
3.1.7 AppleTalk Phase II and other devel- support in LocalTalk-to-Ethernet bridges.[26] MacTCP
would not become a standard part of the Mac OS unopments
til 1994,[27] by which time it also supported SNMP and
A signicant re-design was released in 1989 as Ap- PPP.
pleTalk Phase II. In many ways, Phase II can be con- For some time in the early 1990s, the Mac was a prisidered an eort to make the earlier version (never called mary client on the rapidly expanding Internet. Among
Phase I) more generic. LANs could now support more the better known programs in wide use were Fetch, Euthan 255 nodes, and zones were no longer associated with dora, eXodus, NewsWatcher and the NCSA packages, esphysical networks, but were entirely virtual constructs pecially NCSA Mosaic and its ospring, Netscape Naviused simply to organize nodes. For instance, one could gator.[28] Additionally, a number of server products apnow make a Printers zone that would list all the printers peared that allowed the Mac to host Internet content.
in an organization, or one might want to place that same Through this period, Macs had about 2 to 3 times as many
3.3. ADDRESSING
clients connected to the Internet as any other platform,[29]
despite the relatively small overall marketshare.
As the world quickly moved to IP for both LAN and
WAN uses, Apple was faced with maintaining two increasingly outdated code bases on an ever-wider group
of machines as well as the introduction of the PowerPC
based machines. This led to the Open Transport eorts,
which re-implemented both MacTCP and AppleTalk on
an entirely new code base adapted from the Unix standard
STREAMS. Early versions had problems and did not become stable for some time.[30] By that point, Apple was
deep in their ultimately doomed Copland eorts.
3.1.9
33
concept was to allow routers to provide the information
or hardwire the system to known addresses and names.
On larger networks where AARP could cause problems
as new nodes searched for free addresses, the addition of
a router could reduce chattiness. Together AARP and
NBP made AppleTalk an easy-to-use networking system.
New machines were added to the network by plugging
them and optionally giving them a name. The NBP lists
were examined and displayed by a program known as the
Chooser which would display a list of machines on the local network, divided into classes such as le-servers and
printers.
3.3 Addressing
An AppleTalk address was a 4-byte quantity. This consisted of a two-byte network number, a one-byte node
number, and a one-byte socket number. Of these, only
the network number required any conguration, being obtained from a router. Each node dynamically chose its
own node number, according to a protocol (originally the
LocalTalk Link Access Protocol LLAP and later the AppleTalk Address Resolution Protocol, AARP)[32] which
handled contention between dierent nodes accidentally
choosing the same number. For socket numbers, a few
well-known numbers were reserved for special purposes
specic to the AppleTalk protocol itself. Apart from
these, all application-level protocols were expected to use
dynamically-assigned socket numbers at both the client
and server end.
However, the loss of AppleTalk did not reduce the desire for networking solutions that combined its ease-ofuse with IP routing. Apple has led development of many
such eorts, from the introduction of the AirPort router
to the development of the Zero conguration networking
Because of this dynamism, users could not be expected
system and their implementation of it, Bonjour.
to access services by specifying their address. Instead,
all services had names which, being chosen by humans,
could be expected to be meaningful to users, and also
3.2 Design
could be suciently long to minimize the chance of conicts.
The AppleTalk design rigorously followed the OSI model
As NBP names translated to an address, which included
of protocol layering. Unlike most of the early LAN a socket number as well as a node number, a name in Apsystems, AppleTalk was not built using the archetypal
pleTalk mapped directly to a service being provided by
Xerox XNS system. The intended target was not Eth- a machine, which was entirely separate from the name
ernet, and it did not have 48-bit addresses to route. Nevof the machine itself. Thus, services could be moved to
ertheless, many portions of the AppleTalk system have a dierent machine and, so long as they kept the same
direct analogs in XNS.
service name, there was no need for users to do anything
One key dierentiation for AppleTalk was it contained
two protocols aimed at making the system completely
self-conguring. The AppleTalk address resolution protocol (AARP) allowed AppleTalk hosts to automatically
generate their own network addresses, and the Name
Binding Protocol (NBP) was a dynamic system for mapping network addresses to user-readable names. Although systems similar to AARP existed in other systems,
Banyan VINES for instance, nothing like NBP has existed
until recently.
34
CHAPTER 3. APPLETALK
refer to the service, but there is no way of guaranteeing Macintosh HFS lesystem. AFP is still in use in Mac
that users will follow such a convention. Some newer pro- OS X, even though most other AppleTalk protocols have
tocols, such as Kerberos and Active Directory use DNS been deprecated.
SRV records to identify services by name, which is much
closer to the AppleTalk model.
3.4 Protocols
Name Binding Protocol was a dynamic, distributed system for managing AppleTalk names. When a service
started up on a machine, it registered a name for itself
as chosen by a human administrator. At this point, NBP
provided a system for checking that no other machine had
3.4.2 AppleTalk Data Stream Protocol
already registered the same name. Later, when a client
This was a comparatively late addition to the AppleTalk wanted to access that service, it used NBP to query maprotocol suite, done when it became clear that a TCP- chines to nd that service. NBP provided browseability
style reliable connection-oriented transport was needed. (what are the names of all the services available?") as
well as the ability to nd a service with a particular name.
Signicant dierences from TCP were:
Names were human readable, containing spaces, upper
and lower case letters, and including support for search a connection attempt could be rejected
ing.
there were no half-open connections; once one
end initiated a tear-down of the connection, the
whole connection would be closed (i.e., ADSP is
3.4.7 AppleTalk Echo Protocol
full-duplex, not dual simplex).
3.4.3
AEP (AppleTalk Echo Protocol) is a transport layer protocol designed to test the reachability of network nodes.
AEP generates packets to be sent to the network node
and is identied in the Type eld of a packet as an AEP
packet. The packet is rst passed to the source DDP. After it is identied as an AEP packet, it is forwarded to the
node where the packet is examined by the DDP at the destination. After the packet is identied as an AEP packet,
the packet is then copied and a eld in the packet is altered to create an AEP reply packet, and is then returned
to the source node.
3.4.8
35
termination for that connector.
The initial default hardware implementation for
3.4.9
36
CHAPTER 3. APPLETALK
Samba
Server Message Block
When AppleTalk was rst introduced, the dominant ofce computing platform was the PC compatible running
MS-DOS. Apple introduced the AppleTalk PC Card in
early 1987, allowing PCs to join AppleTalk networks and
print to LaserWriter printers.[33] A year later AppleShare
PC was released, allowing PCs to access AppleShare le
servers.[34]
3.10 Notes
[1] AppleBus is mentioned by name in Steve Jobs introduction of the Macintosh at the Boston Computer Society
meeting in 1984. It appears just after the 7:20 mark in
the video.
The TOPS Teleconnector[35] MS-DOS networking system over AppleTalk system enabled MS-DOS PCs to
communicate over AppleTalk network hardware; it com- 3.11 References
prised an AppleTalk interface card for the PC and a suite
of networking software allowing such functions as le, 3.11.1 Citations
drive and printer sharing. As well as allowing the construction of a PC-only AppleTalk network, it allowed [1] John Marko, Apple plans slower, aordable local area
network, InfoWorld, 14 February 1983, p. 14
communication between PCs and Macs with TOPS software installed. (Macs without TOPS installed could use
[2] Oppenheimer 2004, Slide 3.
the same network but only to communicate with other
Apple machines.) The Mac TOPS software did not match [3] David Ahl, 1983 National Computer Conference, May
the quality of Apples own either in ease of use or in ro16-19, Anaheim, California, Creative Computing, August
1983, p. 188
bustness and freedom from crashes, but the DOS software
was relatively simple to use in DOS terms, and was robust.
[4] Sidhu, Andrews & Oppenheiner 1989, p. xxiii.
The BSD and Linux operating systems support AppleTalk through an open source project called Netatalk,
which implements the complete protocol suite and allows
them to both act as native le or print servers for Macintosh computers, and print to LocalTalk printers over the
network.
The Windows Server operating systems supported AppleTalk starting with Windows NT and ending after
Windows Server 2003. Miramar included AppleTalk
in its PC MacLAN product which was discontinued
by CA in 2007. GroupLogic continues to bundle its
AppleTalk protocol with its ExtremeZ-IP server software for Macintosh-Windows integration which supports
Windows 2008 Server and Windows Vista as well prior
versions. HELIOS Software GmbH oers a proprietary
implementation of the AppleTalk protocol stack, as part
of their HELIOS UB2 server. This is essentially a File
and Print Server suite that runs on a whole range of different platforms.
In addition, Columbia University released the Columbia [16] Apple Computer Ad - Powerbook Networking
AppleTalk Package (CAP) which implemented the pro[17] Oppenheimer 2004, Slide 28.
tocol suite for various Unix avors including Ultrix,
SunOS, *BSD and IRIX. This package is no longer ac- [18] Tim Brown, AppleTalk Made Faster, Network World,
tively maintained.
26 October 1987, p. 27
3.11.2
Bibliography
37
Chapter 4
ARPANET
For the producer, see Gerald Donald. For the seventh
episode of the second season of the television series The
Americans, see Arpanet (The Americans).
See also: History of the Internet
The Advanced Research Projects Agency Network
(ARPANET) was an early packet switching network
and the rst network to implement the protocol suite
TCP/IP. Both technologies became the technical foundation of the Internet. ARPANET was initially funded
by the Advanced Research Projects Agency (ARPA) of
the United States Department of Defense.[1][2][3][4][5]
The packet switching methodology employed in the
ARPANET was based on concepts and designs by Americans Leonard Kleinrock and Paul Baran, British scientist Donald Davies, and Lawrence Roberts of the Lincoln
Laboratory.[6] The TCP/IP communications protocols
were developed for ARPANET by computer scientists
Robert Kahn and Vint Cerf, and incorporated concepts
by Louis Pouzin for the French CYCLADES project.
As the project progressed, protocols for internetworking
were developed by which multiple separate networks
could be joined into a network of networks. Access to
the ARPANET was expanded in 1981 when the National
Science Foundation (NSF) funded the Computer Science Network (CSNET). In 1982, the Internet protocol
suite (TCP/IP) was introduced as the standard networking protocol on the ARPANET. In the early 1980s the
NSF funded the establishment for national supercomputing centers at several universities, and provided interconnectivity in 1986 with the NSFNET project, which also
created network access to the supercomputer sites in the
United States from research and education organizations.
ARPANET was decommissioned in 1990.
4.1 History
Packet switchingtoday the dominant basis for data
communications worldwidewas a new concept at the
time of the conception of the ARPANET. Prior to the
advent of packet switching, both voice and data communications had been based on the idea of circuit switch-
38
4.1. HISTORY
S.D.C., and I wanted to talk to someone I knew at Berkeley, or M.I.T., about this, I had to get up from the S.D.C.
terminal, go over and log into the other terminal and get
in touch with them. I said, Oh Man!", its obvious what
to do: If you have these three terminals, there ought to
be one terminal that goes anywhere you want to go. That
idea is the ARPANET.[10]
Meanwhile, since the early 1960s, Paul Baran at the
RAND Corporation had been researching systems that
could survive nuclear war and developed the idea of
distributed adaptive message block switching.[11] Donald
Davies at the United Kingdoms National Physical Laboratory (NPL) independently invented the same concept in
1965.[12][13] His work, presented by a colleague, initially
caught the attention of ARPANET developers at a conference in Gatlinburg, Tennessee, in October 1967.[14]
He gave the rst public demonstration, having coined the
term packet switching, on 5 August 1968 and incorporated
it into the NPL network in England.[15] Larry Roberts
at ARPA applied Davies concepts of packet switching
for the ARPANET.[16] The NPL network followed by
ARPANET were the rst two networks in the world to use
packet switching,[17][18] and were themselves connected
together in 1973.[19][20] The NPL network was using line
speeds of 768 kbit/s, and the proposed line speed for
ARPANET was upgraded from 2.4 kbit/s to 50 kbit/s.[21]
4.1.1
Creation
39
magnetic-core memory, and a 16-channel Direct Multiplex Control (DMC) direct memory access unit.[23] The
DMC established custom interfaces with each of the host
computers and modems. In addition to the front-panel
lamps, the DDP-516 computer also features a special set
of 24 indicator lamps showing the status of the IMP communication channels. Each IMP could support up to four
local hosts, and could communicate with up to six remote
IMPs via leased lines. The network connected one computer in Utah with three in California. Later, the Department of Defense allowed the universities to join the
network for sharing hardware and software resources.
40
CHAPTER 4. ARPANET
NLS system, a very important early hypertext system, and would run the Network Information Center (NIC), with the SDS 940 that ran NLS, named
Genie, being the rst host attached;
University of California, Santa Barbara (UCSB),
with the Culler-Fried Interactive Mathematics Centers IBM 360/75, running OS/MVT being the machine attached;
The University of Utah's Computer Science Department, where Ivan Sutherland had moved, running a
DEC PDP-10 operating on TENEX.
4.1.3
ARPANET deployed
4.1.4 Growth and evolution
4.1.5
41
... it is somewhat tting to end on the note that
the ARPANET program has had a strong and
direct feedback into the support and strength
of computer science, from which the network,
itself, sprang.[44]
Because of its government funding, certain forms of trafc were discouraged or prohibited. A 1982 handbook
on computing at MITs AI Lab stated regarding network
etiquette:[38]
In the wake of ARPANET being formally decommissioned on 28 February 1990, Vinton Cerf wrote
the following lamentation, entitled Requiem of the
ARPANET":[45]
Senator Albert Gore, Jr. began to craft the High Performance Computing and Communication Act of 1991
(commonly referred to as The Gore Bill) after hearing
4.1.6 Technology
the 1988 report toward a National Research Network submitted to Congress by a group chaired by Leonard KleinSupport for inter-IMP circuits of up to 230.4 kbit/s was rock, professor of computer science at UCLA. The bill
added in 1970, although considerations of cost and IMP was passed on 9 December 1991 and led to the National
processing power meant this capability was not actively Information Infrastructure (NII) which Al Gore called the
used.
"information superhighway". ARPANET was the subject
[46][47]
1971 saw the start of the use of the non-ruggedized (and of two IEEE Milestones, both dedicated in 2009.
therefore signicantly lighter) Honeywell 316 as an IMP.
It could also be congured as a Terminal Interface Processor (TIP), which provided terminal server support for 4.2 Software and protocols
up to 63 ASCII serial terminals through a multi-line controller in place of one of the hosts.[39] The 316 featured a The starting point for host-to-host communication on the
greater degree of integration than the 516, which made it ARPANET in 1969 was the 1822 protocol, which dened
less expensive and easier to maintain. The 316 was con- the transmission of messages to an IMP.[48] The message
gured with 40 kB of core memory for a TIP. The size of format was designed to work unambiguously with a broad
core memory was later increased, to 32 kB for the IMPs, range of computer architectures. An 1822 message esand 56 kB for TIPs, in 1973.
sentially consisted of a message type, a numeric host adIn 1975, BBN introduced IMP software running on the dress, and a data eld. To send a data message to another
Pluribus multi-processor. These appeared in a few sites. host, the transmitting host formatted a data message conIn 1981, BBN introduced IMP software running on its taining the destination hosts address and the data message being sent, and then transmitted the message through
own C/30 processor product.
the 1822 hardware interface. The IMP then delivered the
In 1983, TCP/IP protocols replaced NCP as the message to its destination address, either by delivering
ARPANETs principal protocol, and the ARPANET then it to a locally connected host, or by delivering it to anbecame one subnet of the early Internet.[40][41]
other IMP. When the message was ultimately delivered
The original IMPs and TIPs were phased out as the to the destination host, the receiving IMP would transmit
ARPANET was shut down after the introduction of the a Ready for Next Message (RFNM) acknowledgement to
NSFNet, but some IMPs remained in service as late as the sending, host IMP.
July 1990.[42][43]
Unlike modern Internet datagrams, the ARPANET was
The ARPANET Completion Report, jointly published by designed to reliably transmit 1822 messages, and to inBBN and ARPA, concludes that:
form the host computer when it loses a message; the
42
CHAPTER 4. ARPANET
contemporary IP is unreliable, whereas the TCP is reliable. Nonetheless, the 1822 protocol proved inadequate for handling multiple connections among dierent applications residing in a host computer. This problem was addressed with the Network Control Program
(NCP), which provided a standard method to establish
reliable, ow-controlled, bidirectional communications
links among dierent processes in dierent host computers. The NCP interface allowed application software to connect across the ARPANET by implementing
higher-level communication protocols, an early example
of the protocol layering concept incorporated to the OSI
model.[40]
In 1983, TCP/IP protocols replaced NCP as the
ARPANETs principal protocol, and the ARPANET then
became one component of the early Internet.[41]
4.2.1
Network applications
4.2.2
Password protection
4.5. REFERENCES
43
[12] Scantlebury, Roger (25 June 2013). "Internet pioneers airbrushed from history". The Guardian. Retrieved 1 August
2015.
gust 2015.
NPL network
[15] The accelerator of the modern age. BBC News. 5 August 2008. Retrieved 19 May 2009.
4.5 References
[1] L.A Lievrouw - Handbook of New Media: Student Edition (p.253) (edited by L.A Lievrouw, S.M. Livingstone),
published by SAGE 2006 (abridged, reprint, revised), 475
pages, ISBN 1412918731 [Retrieved 2015-08-15]
[2] G. Schneider; J. Evans; K. Pinard. The Internet - Illustrated. published by Cengage Learning 26 Oct 2009,
296 pages, ISBN 0538750987, Available Titles Skills Assessment Manager (SAM) - Oce 2010 Series Illustrated
(Course Technology). Retrieved 2015-08-15.
[3] K.G. Coman & A.M. Odlyzco - Optical Fiber Telecommunications IV-B: Systems and Impairments published by
Academic Press 22 May 2002, 1022 pages, Optics and
Photonics, ISBN 0080513190, (edited by I. Kaminow &
T. Li) [Retrieved 2015-08-15]
[4] R. Oppliger. Internet and Intranet Security (p.12). Artech
House, 1 Jan 2001, 403 pages, Artech House computer security series, ISBN 1580531660. Retrieved 2015-08-15.
[5] (ed. by H. Bidgoli). The Internet Encyclopedia, G O.
published by John Wiley & Sons 11 May 2004, 840 pages,
ISBN 0471689963, Volume 2 of The Internet Encyclopedia. Retrieved 2015-08-15.
[6] Lawrence Roberts Manages The ARPANET Program.
Living Internet.com. Retrieved 6 November 2008.
[7] Packet Switching History, Living Internet, retrieved 26
August 2012
[8] J.C.R. Licklider And The Universal Network, Living
Internet
[9] IPTO Information Processing Techniques Oce, Living Internet
[10] John Marko (20 December 1999). An Internet Pioneer Ponders the Next Revolution. The New York Times.
Archived from the original on 22 September 2008. Retrieved 20 September 2008.
[11] Paul Baran and the Origins of the Internet. RAND corporation. Retrieved 29 March 2011.
[16] Cambell-Kelly, Martin (Autumn 2008). Pioneer Proles: Donald Davies. Computer Resurrection (44). ISSN
0958-7403.
[17] Roberts, Lawrence G. (November 1978). The Evolution
of Packet Switching. Retrieved 9 April 2016.
[18] Donald Davies. thocp.net; Donald Davies. internethalloame.org.
[19] C. Hempstead; W. Worthington. Encyclopedia of 20thCentury Technology. Routledge 8 Aug 2005, 992 pages,
(edited by C. Hempstead, W. Worthington),. Retrieved
2015-08-15.(source: Gatlinburg, ... Association for Computing Machinery)
[20] M. Ziewitz & I. Brown (2013). Research Handbook on
Governance of the Internet. Edward Elgar Publishing. p.
7. ISBN 1849805040. Retrieved 2015-08-16.
[21] Brief History of the Internet. Internet Society. Retrieved April 9, 2016.
[22] IMP Interface Message Processor, Living Internet
[23] Wise, Adrian.
Honeywell DDP-516.
Computers.com. Retrieved 21 September 2008.
Old-
44
CHAPTER 4. ARPANET
A history.
4.6.2
45
Sharing. Proceedings of the Spring Joint Computer
Conference, Atlantic City, New Jersey.
Heart, Frank; Kahn, Robert; Ornstein, Severo;
Crowther, William; Walden, David (1970). The
Interface Message Processor for the ARPA Computer Network (PDF). 1970 Spring Joint Computer
Conference. AFIPS Proc. 36. pp. 551567.
doi:10.1145/1476936.1477021.
Carr, Stephen; Crocker, Stephen; Cerf, Vinton
(1970). Host-Host Communication Protocol in the
ARPA Network. 1970 Spring Joint Computer
Conference. AFIPS Proc. 36. pp. 589598.
doi:10.1145/1476936.1477024. RFC 33 .
Ornstein, Severo; Heart, Frank; Crowther, William;
Russell, S. B.; Rising, H. K.; Michel, A. (1972).
The Terminal IMP for the ARPA Computer Network.
1972 Spring Joint Computer Conference. AFIPS
Proc. 40. pp. 243254.
McQuillan, John; Crowther, William; Cosell,
Bernard; Walden, David; Heart, Frank (1972).
Improvements in the Design and Performance of the
ARPA Network. 1972 Fall Joint Computer Conference part II. AFIPS Proc. 41. pp. 741754.
Feinler, Elizabeth J.; Postel, Jonathan B. (January
1978). ARPANET Protocol Handbook, NIC 7104.
Menlo Park: Network Information Center (NIC),
SRI International. ASIN B000EN742K.
Roberts, Larry (November 1978).
The
Evolution of Packet Switching.
Proceedings of the IEEE. 66 (11):
13071313.
doi:10.1109/PROC.1978.11141.
Roberts, Larry (September 1986).
The
ARPANET & Computer Networks. ACM.
46
Kleinrock, Leonard. The Day the Infant Internet Uttered its First Words. UCLA. Retrieved 11
November 2004. Personal anecdote of the rst message ever sent over the ARPANET
Doug Engelbarts Role in ARPANET History.
2008. Retrieved 3 September 2009.
Internet Milestones: Timeline of Notable Internet
Pioneers and Contributions. Retrieved 6 January
2012. Timeline.
Waldrop, Mitch (April 2008). DARPA and the Internet Revolution. 50 years of Bridging the Gap.
DARPA. pp. 7885. Retrieved 26 August 2012.
A picture of the ARPANET team.
Robert X Cringely: A Brief History of the Internet.
CHAPTER 4. ARPANET
Chapter 5
Thus, the designers of ATM utilized small data cells to reduce jitter (delay variance, in this case) in the multiplexing of data streams. Reduction of jitter (and also endto-end round-trip delays) is particularly important when
47
48
carrying voice trac, because the conversion of digitized
voice into an analogue audio signal is an inherently realtime process, and to do a good job, the decoder (codec)
that does this needs an evenly spaced (in time) stream of
data items. If the next data item is not available when it
is needed, the codec has no choice but to produce silence
or guess and if the data is late, it is useless, because
the time period when it should have been converted to a
signal has already passed.
At the time of the design of ATM, 155 Mbit/s
Synchronous Digital Hierarchy (SDH) with 135 Mbit/s
payload was considered a fast optical network link, and
many plesiochronous digital hierarchy (PDH) links in the
digital network were considerably slower, ranging from
1.544 to 45 Mbit/s in the USA, and 2 to 34 Mbit/s in
Europe.
49
5.1.3
Cells in practice
50
mon paths.
5.1.5
Trac shaping usually takes place in the network inter1. CBR - Constant bit rate: a Peak Cell Rate (PCR) is face card (NIC) in user equipment, and attempts to ensure
specied, which is constant.
that the cell ow on a VC will meet its trac contract,
i.e. cells will not be dropped or reduced in priority at the
2. VBR - Variable bit rate: an average or Sustainable UNI. Since the reference model given for trac policing
Cell Rate (SCR) is specied, which can peak at a in the network is the GCRA, this algorithm is normally
certain level, a PCR, for a maximum interval before used for shaping as well, and single and dual leaky bucket
being problematic.
implementations may be used as appropriate.
3. ABR - Available bit rate: a minimum guaranteed
rate is specied.
5.1.8
A network must establish a connection before two parties can send cells to each other. In ATM this is called
a virtual circuit (VC). It can be a permanent virtual circuit (PVC), which is created administratively on the end
points, or a switched virtual circuit (SVC), which is created as needed by the communicating parties. SVC creation is managed by signaling, in which the requesting
party indicates the address of the receiving party, the type
of service requested, and whatever trac parameters may
be applicable to the selected service. Call admission is
then performed by the network to conrm that the requested resources are available and that a route exists for
the connection.
5.1.9
Reference model
51
cells are transmitted from base stations to mobile terminals. Mobility functions are performed at an ATM switch
in the core network, known as crossover switch,[18]
which is similar to the MSC (mobile switching center) of
GSM Networks. The advantage of Wireless ATM is its
high bandwidth and high speed handos done at Layer
2. In the early 1990s, Bell Labs and NEC[19] Research
Labs worked actively in this eld. Andy Hopper from
Cambridge University Computer Laboratory also worked
in this area.[20] There was a Wireless ATM Forum formed
to standardize the technology behind Wireless ATM Networks. The forum was supported by several telecommunication companies, including NEC, Fujitsu, AT&T,
etc. Mobile ATM aimed to provide high speed multimedia communications technology, capable of delivering
broadband mobile communications beyond that of GSM
and WLANs.
5.5 Notes
5.2 Deployment
ATM became popular with telephone companies and
many computer makers in the 1990s. However, even
by the end of the decade, the better price/performance
of Internet Protocol-based products was competing with
ATM technology for integrating real-time and bursty network trac.[13] Companies such as FORE Systems focused on ATM products, while other large vendors such
as Cisco Systems provided ATM as an option.[14] After
the burst of the dot-com bubble, some still predicted that
ATM is going to dominate.[15] However, in 2005 the
ATM Forum, which had been the trade organization promoting the technology, merged with groups promoting
other technologies, and eventually became the Broadband
Forum.[16]
Wireless ATM,[17] or Mobile ATM, consists of an ATM [11] ATM Forum, The User Network Interface (UNI), v. 3.1,
core network with a wireless access network. ATM
ISBN 0-13-393828-X, Prentice Hall PTR, 1995.
52
[15] Optical Ethernet rms brave stormy industry seas. Network World. 7 May 2001. p. 14. Retrieved 24 September
2011.
[16] About the Broadband Forum: Forum History. Retrieved 24 September 2011.
[17] Wireless ATM
[18] Book on Wireless ATM Networks - Chai Keong Toh,
Kluwer Academic Press 1997
[19] WATMnet: a prototype wireless ATM system for multimedia personal communication, D. Raychaudhuri,at.al
[20] Cambridge Mobile ATM work
5.6 References
Black, Uyless D. (1998). ATMVolume III: Internetworking with ATM. Toronto: Prentice Hall. ISBN
0-13-784182-5.
De Prycker, Martin (1993). Asynchronous Transfer
Mode. Solutions for Broadband ISDN. Prentice Hall.
Joel, Amos E., Jr. (1993). Asynchronous Transfer
Mode. IEEE Press.
Golway, Tom (1997). Planning and Managing ATM
Network. New York: Manning. ISBN 978-0-13262189-2.
McDysan, David E.; Darren L. Spohn (1999). ATM
Theory and Applications. Montreal: McGraw-Hill.
ISBN 0-07-045346-2.
Neelakanta, P. S. (2000). A Textbook on ATM
Telecommunications, Principles and implementation.
CRC Press. ISBN 0-8493-1805-X.
ATM Cell formats- Cisco Systems
Asynchronous Transfer Mode (ATM) - Cisco Systems
ATM Tutorial
Vuskovic Marko, Broadband Communication Networks Lectures, San Diego State University.
ATM at Cisco DocWiki
Chapter 6
AX.25
AX.25 (Amateur X.25) is a data link layer protocol derived from the X.25 protocol suite and designed for use
by amateur radio operators.[1] It is used extensively on
amateur packet radio networks.
AX.25 v2.0 and later occupies the data link layer, the second layer of the OSI model. It is mainly responsible for
establishing connections and transferring data encapsulated in frames between nodes and detecting errors introduced by the communications channel. As AX.25 is
a pre-OSI-model protocol, the original specication was
not written to cleanly separate into OSI layers. This was
rectied with version 2.0 (1984), which assumes compliance with OSI level 2.
The AX.25 specication does dene a complete, albeit point to point only network layer protocol, but this
has seen little use outside of keyboard-to-keyboard or
keyboard-to-BBS connections. NET/ROM, ROSE, and
TexNet exist to provide routing between nodes. In principle, a variety of layer 3 protocols can be used with AX.25,
including the ubiquitous Internet protocol. This approach
is used by AMPRNet, which is an amateur radio TCP/IP
network using AX.25 UI-frames at the datalink layer.
6.2 Implementations
Traditionally, amateur radio operators have connected to
AX.25 networks through the use of a terminal node controller, which contains a microprocessor and an implementation of the protocol in rmware. These devices allow network resources to be accessed using only a dumb
terminal and a transceiver.
6.1 Specication
54
and the PC involved. Among other things, this makes it
awkward to address multiple TNCs without having multiple (serial) data channels.
Alternatives to KISS do exist that address these limitations, such as 6PACK.[6]
6.3 Applications
AX.25 has most frequently been used to establish direct,
point-to-point links between packet radio stations, without any additional network layers. This is sucient for
keyboard-to-keyboard contacts between stations and for
accessing local bulletin board systems and DX clusters.
In recent years, the Automatic Packet Reporting System
(APRS) has become a popular application.
CHAPTER 6. AX.25
new radio level modulations would need dierent
radio gear than what is currently in use and the resulting system would be incompatible with the existing one thus requiring a large initial investment
in new radio gear,
adoption of newer line codings potentially including
forward error correction takes more eort than the
1,200 bit/s AFSK of Bell 202. Previously sucient
small 8-bit microprocessors with 128 bytes of RAM
would not be enough, and new ones might cost USD
30 instead of USD 3. Phil Karn did demo decoding of this new modulation of his by running it on a
Pentium II machine some 10 years later, mid-level
embedded microprocessors are capable enough to
do the same with under USD 50 system cost.[8]
Despite these limitations, an extension to the AX.25 proFor tunneling of AX.25 packets over IP, AXIP and AX- tocol, supporting forward error correction, has been creUDP are used to encapsulate AX.25 into IP or UDP pack- ated by the TAPR. This extension is called FX.25.
ets.
Small gadget transmitters do not need to know what is
being transmitted. There is only a need to monitor channel occupation by radio receiver RSSI (Received Signal
6.4 Limitations
Strength Indication) to know when not to send. Transmitting interleaved Reed-Solomon FEC signal in some smart
At the speeds commonly used to transmit packet radio modulation needs a lot fewer resources than reception of
data (rarely higher than 9,600 bit/s, and typically 1,200 the same signal, thus a sucient microprocessor might
bit/s),[7] the use of additional network layers with AX.25 cost just USD 5 instead of USD 30 and a system cost
is impractical due to the data overhead involved. This is might stay below USD 50, transmitter included. Hownot a limitation of AX.25 per se, but places constraints on ever, in recent years, the ability to receive as well as send
the sophistication of applications designed to use it.
using cheap microcontrollers (such as the Atmel AVR or
The AX.25 protocol identies each message by sender the Motorola 68HC08 families) have been demonstrated.
and destination station call-sign plus SSID value in range It seems, however, that any new system that is not com0 through 15. At ITU WARC2003 meeting earlier ra- patible with the current Bell 202 modulation is unlikely to
dio amateur station call-sign specication was amended be widely adopted. The current modulation seems to fulso that earlier maximum length of 6 character was raised ll sucient need that little motivation exists to move to a
to 7 characters. However AX.25 has a built in hard limit superior design, especially if the new design requires sigof 6 characters, which means a 7 character call-sign can- nicant hardware purchases. However, as existing Bell
not be used in an AX.25 network.
202 modem chips become obsolete without replacement,
AX.25 lacks an explicit port (or SAP); the SSID often this consideration becomes less overwhelming.
assumes this role. Thus there can be only one service
per AX.25 station SSID address, which is often kludged
around with varying degrees of success.
6.5 See also
Some amateurs, notably Phil Karn KA9Q, have argued
that AX.25 is not well-suited to operation over noisy,
limited-bandwidth radio links, citing its lack of forward
error correction (FEC) and automatic data compression.
However, a viable widely adopted successor to AX.25 has
yet to emerge. Likely reasons may include:
a large existing deployment of recycled narrowband
FM radios and especially existing APRS applications,
easy availability of cheap, low-power FM transmitters, especially for the 430 MHz UHF band, to
match existing legacy radio gear,
Packet Radio
Automatic Packet Reporting System (APRS)
6.6 References
[1] AX.25 Link Access Protocol for Amateur Packet Radio
(PDF). Tucson Amateur Packet Radio. 1997. Retrieved
2014-01-15.
[2] James Miller G3RUH (1995). 9600 Baud Packet Radio
Modem Design. Retrieved 2012-02-03.
[3] ISO/IEC 3309: Information technology. Telecommunications and information exchange between systems. Highlevel Data Link Control (HDLC) procedures. Frame
structure (1984).
[4] John Ackermann (2002). Linux AX.25 Conguration.
febo.com. Archived from the original on 11 March 2008.
Retrieved 2008-03-05.
[5] Mike Chepponis; Phil Karn. The KISS TNC: A simple
Host-to-TNC communications protocol. Archived from
the original on 25 July 2008. Retrieved 2008-08-18.
[6] 6PACK a real time PC to TNC protocol. Retrieved
2009-05-28.
[7] Je Tranter (1997). Packet Radio Under Linux. Linux
Journal. Archived from the original on 22 November
2008. Retrieved 2009-01-01.
[8] Bugblat Cortino. Retrieved 2009-12-01.
55
Chapter 7
7.1 History
The version of CSP presented in Hoares original 1978
paper was essentially a concurrent programming language
rather than a process calculus. It had a substantially different syntax than later versions of CSP, did not possess
mathematically dened semantics,[10] and was unable to
represent unbounded nondeterminism.[11] Programs in
the original CSP were written as a parallel composition
of a xed number of sequential processes communicating with each other strictly through synchronous messagepassing. In contrast to later versions of CSP, each process
was assigned an explicit name, and the source or destination of a message was dened by specifying the name of
the intended sending or receiving process. For example,
the process
COPY = *[c:character; west?c east!c]
repeatedly receives a character from the process named
west, and then sends that character to process named east.
The parallel composition
[west::DISASSEMBLE || X::COPY || east::ASSEMBLE]
assigns the names west to the DISASSEMBLE process,
X to the COPY process, and east to the ASSEMBLE process, and executes these three processes concurrently.[5]
Following the publication of the original version of CSP,
Hoare, Stephen Brookes, and A. W. Roscoe developed
and rened the theory of CSP into its modern, process
algebraic form. The approach taken in developing CSP
into a process algebra was inuenced by Robin Milner's
work on the Calculus of Communicating Systems (CCS),
and vice versa. The theoretical version of CSP was initially presented in a 1984 article by Brookes, Hoare,
and Roscoe,[12] and later in Hoares book Communicating Sequential Processes,[10] which was published in 1985.
In September 2006, that book was still the third-most
cited computer science reference of all time according
to Citeseer (albeit an unreliable source due to the nature
of its sampling). The theory of CSP has undergone a
few minor changes since the publication of Hoares book.
Most of these changes were motivated by the advent of
automated tools for CSP process analysis and verication.
Roscoes The Theory and Practice of Concurrency[1] describes this newer version of CSP.
7.1.1 Applications
An early and important application of CSP was its use
for specication and verication of elements of the INMOS T9000 Transputer, a complex superscalar pipelined
processor designed to support large-scale multiprocessing. CSP was employed in verifying the correctness of
both the processor pipeline, and the Virtual Channel Processor which managed o-chip communications for the
processor.[7]
Industrial application of CSP to software design has usually focused on dependable and safety-critical systems.
For example, the Bremen Institute for Safe Systems and
Daimler-Benz Aerospace modeled a fault management
system and avionics interface (consisting of some 23,000
lines of code) intended for use on the International Space
Station in CSP, and analyzed the model to conrm that
their design was free of deadlock and livelock.[13][14] The
modeling and analysis process was able to uncover a number of errors that would have been dicult to detect using
testing alone. Similarly, Praxis High Integrity Systems
56
57
applied CSP modeling and analysis during the develop- Prex The prex operator combines an event and a proment of software (approximately 100,000 lines of code)
cess to produce a new process. For example,
for a secure smart-card Certication Authority to verify
that their design was secure and free of deadlock. Praxis
claims that the system has a much lower defect rate than
aP
comparable systems.[8]
Since CSP is well-suited to modeling and analyzing sysis the process which is willing to communicate
tems that incorporate complex message exchanges, it has
a with its environment, and, after a , behaves
also been applied to the verication of communications
like the process P .
and security protocols. A prominent example of this
sort of application is Lowes use of CSP and the FDR
renement-checker to discover a previously unknown at- Deterministic Choice The deterministic (or external)
choice operator allows the future evolution of a protack on the Needham-Schroeder public-key authenticacess to be dened as a choice between two compotion protocol, and then to develop a corrected protocol
nent processes, and allows the environment to reable to defeat the attack.[15]
solve the choice by communicating an initial event
for one of the processes. For example,
7.2.2
Algebraic operators
CSP has a wide range of algebraic operators. The principal ones are:
(a a ST OP ) (a b ST OP )
is equivalent to
a ((a ST OP ) (b ST OP ))
58
while
((coin choc STOP ) (card STOP))\{coin, card}
(a P ) |[{a, b}]| (b Q)
will simply deadlock.
Hiding The hiding operator provides a way to abstract This is a process which either oers a choc event and
processes, by making some events unobservable. A then stops, or just stops. In other words, if we treat the
trivial example of hiding is
abstraction as an external view of the system (e.g., someone who does not see the decision reached by the person),
nondeterminism has been introduced.
(a P ) \ {a}
which, assuming that the event a doesn't appear
in P , simply reduces to
7.4. TOOLS
59
P roc
::=
|
|
|
|
|
|
|
|
|
|
|
STOP
SKIP
e Proc
Proc Proc
Proc Proc
Proc ||| Proc
Proc |[{X}]| Proc
Proc \ X
Proc; Proc
if b then Proc else P roc
Proc Proc
Proc Proc
7.3.2
Formal semantics
The failures/divergence model further extends the failures model to handle divergence. The semantics of
a process in the failures/divergences model is a pair
(failures (P ) , divergences (P )) where divergences (P )
is dened as the set of all traces that can lead to divergent behavior and failures (P ) = failures (P )
{(s, X) | s divergences (P )} .
CSP has been imbued with several dierent formal semantics, which dene the meaning of syntactically cor- 7.4 Tools
rect CSP expressions. The theory of CSP includes mutually consistent denotational semantics, algebraic seman- Over the years, a number of tools for analyzing and
tics, and operational semantics.
understanding systems described using CSP have been
produced. Early tool implementations used a variety
of machine-readable syntaxes for CSP, making input
Denotational semantics
les written for dierent tools incompatible. However,
The three major denotational models of CSP are the most CSP tools have now standardized on the machinetraces model, the stable failures model, and the fail- readable dialect of CSP devised by Bryan Scattergood,
[16]
The CSPM dialect
ures/divergences model. Semantic mappings from pro- sometimes referred to as CSPM.
cess expressions to each of these three models provide of CSP possesses a formally dened operational semantics, which includes an embedded functional programthe denotational semantics for CSP.[1]
ming language.
The traces model denes the meaning of a process expression as the set of sequences of events (traces) that the The most well-known CSP tool is probably Failures/Divergence Renement 2 (FDR2), which is a comprocess can be observed to perform. For example,
mercial product developed by Formal Systems (Europe)
Ltd. FDR2 is often described as a model checker,
traces (STOP) = {} since STOP perbut is technically a renement checker, in that it conforms no events
verts two CSP process expressions into Labelled Transi traces (a b STOP)
=
tion Systems (LTSs), and then determines whether one
{, a, a, b} since the process
of the processes is a renement of the other within
(a b STOP) can be observed to
some specied semantic model (traces, failures, or
have performed no events, the event a ,
failures/divergence).[17] FDR2 applies various state-space
or the sequence of events a followed by b
compression algorithms to the process LTSs in order to
reduce the size of the state-space that must be explored
More formally, the meaning of a process P in the traces during a renement check. FDR2 has been succeeded
model is dened as traces (P ) such that:
by FDR3, a completely re-written version incorporating
amongst other things parallel execution and an integrated
1. traces (P ) (i.e. traces (P ) contains the empty type checker. It is released by the University of Oxford,
sequence)
which also released FDR2 in the period 2008-12.[18]
2. s1 s2 traces (P ) = s1 traces (P ) (i.e.
traces (P ) is prex-closed)
The Adelaide Renement Checker (ARC) [19] is a CSP renement checker developed by the Formal Modelling and
60
HCSP
Wright, an architecture description language
TCOZ, an integration of Timed CSP and Object Z
Circus, an integration of CSP and Z based on the
Unifying Theories of Programming
CML (COMPASS Modelling Language), a combination of Circus and VDM developed for the modelling of Systems of Systems (SoS)
CspCASL, an extension of CASL that integrates
CSP
LOTOS, an international standard[25] that incorporates features of CSP and CCS.
61
7.9 References
[1] Roscoe, A. W. (1997). The Theory and Practice of Concurrency. Prentice Hall. ISBN 0-13-674409-5.
[2] INMOS (1995-05-12). occam 2.1 Reference Manual
(PDF). SGS-THOMSON Microelectronics Ltd., INMOS
document 72 occ 45 03
[3] Resources about threaded programming in the Bell Labs
CSP style. Retrieved 2010-04-15.
[4] Language Design FAQ: Why build concurrency on the
ideas of CSP?".
[5] Hoare, C. A. R. (1978). Communicating sequential processes. Communications of the ACM. 21 (8): 666677.
doi:10.1145/359576.359585.
[6] Abdallah, Ali E.; Jones, Cli B.; Sanders, Je W. (2005).
Communicating Sequential Processes: The First 25 Years.
LNCS. 3525. Springer.
[7] Barrett, G. (1995).
Model checking in practice:
The T9000 Virtual Channel Processor. IEEE Transactions on Software Engineering.
21 (2): 6978.
doi:10.1109/32.345823.
[8] Hall, A; Chapman, R. (2002). Correctness by construction: Developing a commercial secure system (PDF).
IEEE Software. 19 (1): 1825. doi:10.1109/52.976937.
[9] Creese, S. (2001). Data Independent Induction: CSP
Model Checking of Arbitrary Sized Networks. D. Phil.
Oxford University.
[10] Hoare, C. A. R. (1985). Communicating Sequential Processes. Prentice Hall. ISBN 0-13-153289-8.
OpenComRTOS is a formally developed network[11] Clinger, William (June 1981). Foundations of Actor Secentric distributed RTOS based on a pragmatic sumantics. Mathematics Doctoral Dissertation. MIT.
perset of CSP.
Input/output automaton
Parallel programming model
62
[27] Origins of Go concurrency style. Talk by Rob Pike at OSCONs Emerging Languages Camp 2010.
Chapter 8
Communication
Communication (from Latin commnicre, meaning to
share[1] ) is the act of conveying intended meanings from
one entity or group to another through the use of mutually
understood signs and semiotic rules.
Nonverbal communication describes the process of conveying meaning in the form of non-word messages. Examples of nonverbal communication include haptic communication, chronemic communication, gestures, body
language, facial expression, eye contact, and how one
The basic steps of communication are:
dresses. Nonverbal communication also relates to intent of a message. Examples of intent are voluntary,
1. the forming of communicative intent
intentional movements like shaking a hand or winking,
as well as involuntary, such as sweating.[2] Speech also
2. message composition
contains nonverbal elements known as paralanguage, e.g.
rhythm, intonation, tempo, and stress. There may even
3. message encoding and decoding.
be a pheromone component. Research has shown that
4. transmission of the encoded message as a sequence up to 55% of human communication may occur through
non-verbal facial expressions, and a further 38% through
of signals using a specic channel or medium
para-language.[3] It aects communication most at the
subconscious level and establishes trust. Likewise, writ5. reception of signals
ten texts include nonverbal elements such as handwriting style, spatial arrangement of words and the use of
6. reconstruction of the original message
emoticons to convey emotion.
7. interpretation and making sense of the reconstructed
Nonverbal communication demonstrates one of Wazlawmessage.
icks laws: you cannot not communicate. Once proximity
has formed awareness, living creatures begin interpreting
The study of communication can be divided into:
any signals received.[4] Some of the functions of nonverbal communication in humans are to complement and il information theory which studies the quantication, lustrate, to reinforce and emphasize, to replace and substorage, and communication of information in gen- stitute, to control and regulate, and to contradict the denotative message.
eral;
communication studies which concerns human communication;
64
CHAPTER 8. COMMUNICATION
though there are exceptions. There is no dened line between a language and a dialect. Constructed languages
such as Esperanto, programming languages, and various
mathematical formalism is not necessarily restricted to
the properties shared by human languages. Communication is two-way process not merely one way
of tautologies in the universe.[7] This process, which requires a vast repertoire of skills in interpersonal processing, listening, observing, speaking, questioning, analyzing, gestures, and evaluating enables collaboration and
cooperation.[8]
5. Communicate all information needed by those individuals or teams external to the team.
6. Use nonverbal communication appropriately.
7. Use proper
information.[5]
order
when
2. The next step occurred when writing began to appear on paper, papyrus, clay, wax, and other media with common shared writing systems, leading to
adaptable alphabets. Communication became mobile.
Family communication is the study and of the communication perspective in a broadly dened family, with intimacy and trusting relationship.[10] The main goal of family communication is to understand the interactions of
3. The nal stage is characterized by the trans- family and the pattern of behaviors of family members
fer of information through controlled waves of in dierent circumstances.
electromagnetic radiation (i.e., radio, microwave, Family communication study looks at topics such as faminfrared) and other electronic signals.
ily rules, family roles or family dialectics and how those
factors could aect the communication between family
Communication is thus a process by which meaning is members. Researchers develop theories to understand
assigned and conveyed in an attempt to create shared un- communication behaviors. Family communication study
derstanding. Gregory Bateson called it the replication also digs deep into certain time periods of family life such
65
System design. System design faults refer to problems with the structures or systems in place in an
organization. Examples might include an organizational structure which is unclear and therefore makes
it confusing to know whom to communicate with.
Other examples could be inecient or inappropriate
information systems, a lack of supervision or training, and a lack of clarity in roles and responsibilities
which can lead to sta being uncertain about what
is expected of them.
Attitudinal barriers. Attitudinal barriers come
about as a result of problems with sta in an organization. These may be brought about, for example, by
such factors as poor management, lack of consultation with employees, personality conicts which can
result in people delaying or refusing to communicate, the personal attitudes of individual employees
which may be due to lack of motivation or dissatisfaction at work, brought about by insucient training to enable them to carry out particular tasks, or
simply resistance to change due to entrenched attitudes and ideas.
Ambiguity of words/phrases. Words sounding the
same but having dierent meaning can convey a different meaning altogether. Hence the communicator must ensure that the receiver receives the same
meaning. It is better if such words are avoided by
using alternatives whenever possible.
Individual linguistic ability. The use of jargon,
dicult or inappropriate words in communication
can prevent the recipients from understanding the
message. Poorly explained or misunderstood messages can also result in confusion. However, research in communication has shown that confusion
can lend legitimacy to research when persuasion
fails.[13][14]
Physiological barriers. These may result from
individuals personal discomfort, causedfor
exampleby ill health, poor eyesight or hearing
diculties.
Bypassing. These happens when the communicators (sender and the receiver) do not attach the same
symbolic meanings to their words. It is when the
sender is expressing a thought or a word but the receiver take it in a dierent meaning. For exampleASAP, Rest room
Technological multi-tasking and absorbency.
With a rapid increase in technologically-driven communication in the past several decades, individuals
are increasingly faced with condensed communication in the form of e-mail, text, and social updates.
This has, in turn, led to a notable change in the
way younger generations communicate and perceive
their own self-ecacy to communicate and connect
66
CHAPTER 8. COMMUNICATION
with others. With the ever-constant presence of another world in ones pocket, individuals are multitasking both physically and cognitively as constant
reminders of something else happening somewhere
else bombard them. Though perhaps too new of an
advancement to yet see long-term eects, this is a
notion currently explored by such gures as Sherry
Turkle.[15]
8.7.1
Cultural aspects
Paralinguistics are the voice involved in communication other than actual language and involves tones,
pitch, vocal cues etc. It also include sounds from
throat and all these are greatly inuenced by cultural
dierences across borders.
Proxemics deals with the concept of space element
in communication. Proxemics explains four zones
of spaces namely intimate personal, social and public. This concept diers with dierent culture as the
permissible space vary in dierent countries.
Artifactics studies about the non verbal signals or
communication which emerges from personal accessories such as dresses or fashion accessories worn
and it varies with culture as people of dierent countries follow dierent dressing codes.
Chronemics deal with the time aspects of communication and also include importance given to
the time. some issues explaining this conceptpt
are pauses, silences and response lag during an
interaction. This aspect of communication is also
inuenced by cultural dierences as it is well known
that there is a great dierence in the value given by
dierent cultures to time.
Cultural
dierences
exist
within
countries
(tribal/regional dierences, dialects etc.), between
religious groups and in organisations or at an organisa Kinesics mainly deals with the body languages such
tional level - where companies, teams and units may have
as postures, gestures, head nods, leg movements etc.
dierent expectations, norms and idiolects. Families
In
dierent countiessame gestures and postures are
and family groups may also experience the eect of
used
to convey dierent messages. Sometimes even
cultural barriers to communication within and between
a
particular
kinesic indicating something good in a
dierent family members or groups. For example:
country
may
have a negative meaning in any other
words, colours and symbols have dierent meanings in
culture.
dierent cultures. In most parts of the world, nodding
your head means agreement, shaking your head means
So in order to have an eective communication across
no, except in some parts of the world.[16]
world it is desirable to have a knowledge of cultural variCommunication to a great extent is inuenced by culables eecting communication.
ture and cultural variables.[17][18][19][20] Understanding
cultural aspects of communication refers to having knowl- According to Michael Walsh and Ghil'ad Zuckermann,
edge of dierent cultures in order to communicate ef- Western conversational interaction is typically dyadic,
fectively with cross culture people. Cultural aspects of between two particular people, where eye contact is imcommunication are of great relevance in todays world portant and the speaker controls the interaction; and
which is now a global village, thanks to globalisation. contained in a relatively short, dened time frame.
Cultural aspects of communication are the cultural dif- However, traditional Aboriginal conversational interacferences which inuences communication across borders. tion is communal, broadcast to many people, eye conImpact of cultural dierences on communication compo- tact is not important, the listener controls the interaction;
and continuous, spread over a longer, indenite time
nents are explained below:
frame.[21][22]
1) Verbal communication refers to form of communication which uses spoken and written words for expressing
and transferring views and ideas. Language is the most
important tool of verbal communication and it is the area 8.8 Nonhuman communication
where cultural dierence play its role. All countries have
dierent languages and to have a better understanding of See also: Biocommunication (science), Interspecies
dierent culture it is required to have knowledge of lan- communication, and Biosemiotics
guages of dierent countries.
2) Non verbal communication is a very wide concept and
it includes all the other forms of communication which
do not uses written or spoken words. Non verbal communication takes following forms:
67
8.8.2
68
CHAPTER 8. COMMUNICATION
5. A receiver, which 'decodes (reconstructs) the mesencoder to a destination/ receiver/ decoder. This comsage from the signal.
mon conception of communication simply views com6. A destination, where the message arrives.
munication as a means of sending and receiving information. The strengths of this model are simplicity, generality, and quantiability. Claude Shannon and Warren Shannon and Weaver argued that there were three levels
Weaver structured this model based on the following el- of problems for communication within this theory.
ements:
1. An information source, which produces a message.
69
secondary phenomena that followed the primary acquisition of communicative competences within social interactions.
70
8.10 Noise
In any communication model, noise is interference with
the decoding of messages sent over a channel by an encoder. There are many examples of noise:
Environmental noise. Noise that physically disrupts communication, such as standing next to loud
speakers at a party, or the noise from a construction
site next to a classroom making it dicult to hear
the professor.
Physiological-impairment noise. Physical maladies that prevent eective communication, such
as actual deafness or blindness preventing messages
from being received as they were intended.
Semantic noise. Dierent interpretations of the
meanings of certain words. For example, the word
weed can be interpreted as an undesirable plant in
a yard, or as a euphemism for marijuana.
Syntactical noise. Mistakes in grammar can disrupt communication, such as abrupt changes in verb
tense during a sentence.
Organizational noise. Poorly structured communication can prevent the receiver from accurate interpretation. For example, unclear and badly stated
directions can make the receiver even more lost.
Cultural noise. Stereotypical assumptions can
cause misunderstandings, such as unintentionally offending a non-Christian person by wishing them a
Merry Christmas.
Psychological noise. Certain attitudes can also
make communication dicult. For instance, great
anger or sadness may cause someone to lose focus on
the present moment. Disorders such as autism may
also severely hamper eective communication.[33]
CHAPTER 8. COMMUNICATION
Four Cs of 21st century learning
Human communication
Inter Mirica
Intercultural communication
Ishin-denshin
Sign system
Small talk
SPEAKING
Telecommunication
Telepathy
Understanding
21st century skills
8.13 References
[1] Harper, Douglas. communication. Online Etymology
Dictionary. Retrieved 2013-06-23.
[2] Types of Body Language. www.simplybodylanguage.
com. Retrieved 2016-02-08.
[3] Mehrabian, A. (1972).
Transaction Publishers.
Nonverbal communication.
[9] Heyman, Richard. Why Didn't You Say That in the First
Place? How to Be Understood at Work.
[10] Turner, L. H., & West, R. L. (2013). Perspectives on family communication. Boston, MA: McGraw-Hill.
[11] Trenholm, Sarah; Jensen, Arthur (2013). Interpersonal
Communication Seventh Edition. New York: Oxford University Press. pp. 360361.
[12] Robbins, S., Judge, T., Millett, B., & Boyle, M. (2011).
Organisational Behaviour. 6th ed. Pearson, Frenchs Forest, NSW p315-317.
[13] What Should Be Included in a Project Plan - Retrieved
December 18th, 2009
[14] J. Scott Armstrong (1980). Baegab Pays (PDF). Psychology Today: 12.
71
[32] Barnlund, D. C. (2008). A transactional model of communication. In. C. D. Mortensen (Eds.), Communication
theory (2nd ed., pp47-57). New Brunswick, New Jersey:
Transaction.
[33] Roy M. Berko, et al., Communicating. 11th ed. (Boston,
MA: Pearson Education, Inc., 2010) 9-12
Chapter 9
Communications protocol
In telecommunications, a communication protocol is
a system of rules that allow two or more entities of a
communications system to transmit information via any
kind of variation of a physical quantity. These are the
rules or standard that denes the syntax, semantics and
synchronization of communication and possible error recovery methods. Protocols may be implemented by
hardware, software, or a combination of both.[1]
To implement a networking protocol, the protocol software modules are interfaced with a framework implemented on the machines operating system. This framework implements the networking functionality of the operating system.[6] The best known frameworks are the
Communicating systems use well-dened formats TCP/IP model and the OSI model.
(protocol) for exchanging various messages. Each mes- At the time the Internet was developed, layering had
sage has an exact meaning intended to elicit a response proven to be a successful design approach for both comfrom a range of possible responses pre-determined piler and operating system design and, given the similarfor that particular situation. The specied behavior is ities between programming languages and communicatypically independent of how it is to be implemented. tions protocols, layering was applied to the protocols as
Communications protocols have to be agreed upon by the well.[7] This gave rise to the concept of layered protocols
parties involved.[2] To reach agreement, a protocol may which nowadays forms the basis of protocol design.[8]
be developed into a technical standard. A programming
language describes the same for computations, so there Systems typically do not use a single protocol to hanis a close analogy between protocols and program- dle a transmission. Instead they use a set of cooperating
ming languages: protocols are to communications what protocols, sometimes called a protocol family or protocol
suite.[9] Some of the best known protocol suites include:
programming languages are to computations.[3]
IPX/SPX, X.25, AX.25, AppleTalk and TCP/IP.
Messages are sent and received on communicating systems to establish communications. Protocols should
therefore specify rules governing the transmission. In
general, much of the following should be addressed:[12]
In contrast, because there is no common memory, communicating systems have to communicate with each other
72
73
74
the region of program text in which a binding is eective
is known as its scope.[23] The computational state is kept
using two components: the environment, used as a record
of identier bindings, and the store, which is used as a
record of the eects of assignments.[24]
75
9.5.2
Layering
TCP/IP - model
HTTP
POP3
UDP
TCP
IP
Ethernet protocol
Application
Transport
Internet
Network interface
76
for the layered protocols. This can be achieved using a
technique called Encapsulation.[36]
Usually, a message or a stream of data is divided into
small pieces, called messages or streams, packets, IP datagrams or network frames depending on the layer in which
the pieces are to be transmitted. The pieces contain a
header area and a data area. The data in the header area
identies the source and the destination on the network
of the packet, the protocol, and other data meaningful to
the protocol like CRCs of the data to be sent, data length,
and a timestamp.[37][38]
A Connectionless packet delivery (or packetswitched) system (or service) is oered by the
Internet, because it adapts well to dierent hardware, including best-eort delivery mechanisms
like the ethernet. Connectionless delivery means
that the messages or streams are divided into
pieces that are multiplexed separately on the high
speed intermachine connections allowing the
connections to be used concurrently. Each piece
carries information identifying the destination.
The delivery of packets is said to be unreliable,
because packets may be lost, duplicated, delayed
or delivered out of order without notice to the
sender or receiver. Unreliability arises only when
resources are exhausted or underlying networks
fail.[49] The unreliable connectionless delivery
system is dened by the Internet Protocol (IP). The
protocol also species the routing function, which
77
ate. The bottom module directly interacts with the bottom module of system B, so the message is sent across.
On the receiving system B the reverse happens, so ultimately (and assuming there were no transmission errors
or protocol violations etc.) the message gets delivered in
its original form to the topmodule of system B.[54]
On protocol errors, a receiving module discards the piece
it has received and reports back the error condition to the
original source of the piece on the same layer by handing
the error message down or in case of the bottom module
sending it across.[55]
The division of the message or stream of data into pieces
and the subsequent reassembly are handled in the layer
that introduced the division/reassembly. The reassembly
is done at the destination (i.e. not on any intermediate
routers).[56]
A reliable stream transport service using the unreliable connectionless packet delivery service is dened by the transmission control protocol (TCP).
The services are layered as well and the application
programs residing in the layer above it, called the
application services, can make use of TCP.[52] Pro[57]
grams wishing to interact with the packet delivery TCP/IP software is organized in four layers.
system itself can do so using the user datagram protocol (UDP).[53]
Application layer. At the highest layer, the services
available across a TCP/IP internet are accessed by
application programs. The application chooses the
Software layering
style of transport to be used which can be a sequence
of individual messages or a continuous stream of
Having established the protocol layering and the protobytes. The application program passes data to the
cols, the protocol designer can now resume with the softtransport layer for delivery.
ware design. The software has a layered organization and
its relationship with protocol layering is visualized in g Transport layer. The transport layer provides comure 5.
munication from one application to another. The
78
TCP/IP model, in other words some of the protocols behave in ways not described by the model.[62] To improve
on the model, an oending protocol could, perhaps be
split up into two protocols, at the cost of one or two extra
layers, but there is a hidden caveat, because the model is
also used to provide a conceptual view on the suite for
Program translation has been divided into four subprob- the intended users. There is a trade-o to be made here
for the designer and clarity for the
lems: compiler, assembler, link editor, and loader. As a between preciseness
[63]
intended
user.
result, the translation software is layered as well, allowing
the software layers to be designed independently. Noting
that the ways to conquer the complexity of program translation could readily be applied to protocols because of the 9.5.3 Formal specication
analogy between programming languages and protocols,
the designers of the TCP/IP protocol suite were keen on Formal ways for describing the syntax of the communicaimposing the same layering on the software framework. tions are Abstract Syntax Notation One (an ISO standard)
This can be seen in the TCP/IP layering by considering or Augmented Backus-Naur form (an IETF standard).
the translation of a pascal program (message) that is com- Finite state machine models[64][65] and communicating
piled (function of the application layer) into an assem- nite-state machines[66] are used to formally describe the
bler program that is assembled (function of the transport possible interactions of the protocol.
layer) to object code (pieces) that is linked (function of the
Internet layer) together with library object code (routing
table) by the link editor, producing relocatable machine
code (datagram) that is passed to the loader which lls in 9.6 Protocol development
the memory locations (ethernet addresses) to produce executable code (network frame) to be loaded (function of For communication to take place, protocols have to be
the network interface layer) into physical memory (trans- agreed upon. Recall that in digital computing systems,
mission medium). To show just how closely the analogy the rules can be expressed by algorithms and datastructs, the terms between parentheses in the previous sen- tures, raising the opportunity for hardware independence.
tence denote the relevant analogs and the terms written Expressing the algorithms in a portable programming lancursively denote data representations. Program transla- guage, makes the protocol software operating system intion forms a linear sequence, because each layers out- dependent. The source code could be considered a proput is passed as input to the next layer. Furthermore, the tocol specication. This form of specication, however
translation process involves multiple data representations. is not suitable for the parties involved.
We see the same thing happening in protocol software For one thing, this would enforce a source on all parties
where multiple protocols dene the data representations and for another, proprietary software producers would
of the data passed between the software modules.[35]
not accept this. By describing the software interfaces of
The network interface layer uses physical addresses and
all the other layers only use IP addresses. The boundary between network interface layer and Internet layer is
called the high-level protocol address boundary.[58] The
modules below the application layer are generally considered part of the operating system. Passing data between these modules is much less expensive than passing
data between an application program and the transport
layer. The boundary between application layer and transport layer is called the operating system boundary.[59]
Strict layering
the modules on paper and agreeing on the interfaces, implementers are free to do it their way. This is referred to
as source independence. By specifying the algorithms on
paper and detailing hardware dependencies in an unambiguous way, a paper draft is created, that when adhered
to and published, ensures interoperability between software and hardware.
Such a paper draft can be developed into a protocol standard by getting the approval of a standards organization.
To get the approval the paper draft needs to enter and
successfully complete the standardization process. This
activity is referred to as protocol development. The members of the standards organization agree to adhere to the
standard on a voluntary basis. Often the members are in
control of large market-shares relevant to the protocol and
in many cases, standards are enforced by law or the government, because they are thought to serve an important
public interest, so getting approval can be very important
for the protocol.
79
sometimes the source code needs to be disclosed and en- tions also do research and development for standards of
forced by law or the government in the interest of the the future. In practice, the standards organizations menpublic.
tioned, cooperate closely with each other.[67]
9.6.1
The need for protocol standards can be shown by looking at what happened to the bi-sync protocol (BSC) invented by IBM. BSC is an early link-level protocol used
to connect two separate nodes. It was originally not intended to be used in a multinode network, but doing so revealed several deciencies of the protocol. In the absence
of standardization, manufacturers and organizations felt
free to 'enhance' the protocol, creating incompatible versions on their networks. In some cases, this was deliberately done to discourage users from using equipment
from other manufacturers. There are more than 50 variants of the original bi-sync protocol. One can assume,
that a standard would have prevented at least some of this
from happening.[6]
In some cases, protocols gain market dominance without going through a standardization process. Such protocols are referred to as de facto standards. De facto
standards are common in emerging markets, niche markets, or markets that are monopolized (or oligopolized).
They can hold a market in a very negative grip, especially
when used to scare away competition. From a historical
perspective, standardization should be seen as a measure
to counteract the ill-eects of de facto standards. Positive exceptions exist; a 'de facto standard' operating system like GNU/Linux does not have this negative grip on
its market, because the sources are published and maintained in an open way, thus inviting competition. Standardization is therefore not the only solution for open systems interconnection.
9.6.2
Standards organizations
80
enough, because protocols also need a framework to operate. It is therefore important to develop a generalpurpose, future-proof framework suitable for structured
protocols (such as layered protocols) and their standardization. This would prevent protocol standards with overlapping functionality and would allow clear denition of
the responsibilities of a protocol at the dierent levels
(layers).[69] This gave rise to the OSI Open Systems Interconnection reference model (RM/OSI), which is used as a
framework for the design of standard protocols and services conforming to the various layer specications.[70]
The session layer may provide the following services to the presentation layer: establishment and release of session connections, normal and expedited
data exchange, a quarantine service which allows the
sending presentation entity to instruct the receiving
session entity not to release data to its presentation
entity without permission, interaction management
so presentation entities can control whose turn it is to
perform certain control functions, resynchronization
of a session connection, reporting of unrecoverable
exceptions to the presentation entity.[74]
The transport layer provides reliable and transparent data transfer in a cost-eective way as required
by the selected quality of service. It may support the
multiplexing of several transport connections on to
one network connection or split one transport connection into several network connections.[75]
9.9. NOTES
81
Nowadays, the IETF has become a standards organiza File Transfer Protocol (FTP)
tion for the protocols in use on the Internet. RM/OSI has
Internet Message Access Protocol (IMAP)
extended its model to include connectionless services and
because of this, both TCP and IP could be developed into
international standards.
Other instances of high level interaction protocols are:
9.7 Taxonomies
Classication schemes for protocols usually focus on domain of use and function. As an example of domain
of use, connection-oriented protocols and connectionless
protocols are used on connection-oriented networks and
connectionless networks respectively. For an example of
function consider a tunneling protocol, which is used to
encapsulate packets in a high-level protocol, so the packets can be passed across a transport system using the highlevel protocol.
A layering scheme combines both function and domain
of use. The dominant layering schemes are the ones proposed by the IETF and by ISO. Despite the fact that the
underlying assumptions of the layering schemes are different enough to warrant distinguishing the two, it is a
common practice to compare the two by relating common protocols to the layers of the two schemes.[81] For
an example of this practice see: List of network protocols.
The layering scheme from the IETF is called Internet layering or TCP/IP layering. The functionality of the layers
has been described in the section on software layering and
an overview of protocols using this scheme is given in the
article on Internet protocols.
The layering scheme from ISO is called the OSI model
or ISO layering. The functionality of the layers has been
described in the section on the future of standardization
and an overview of protocols using this scheme is given
in the article on OSI protocols.
9.9 Notes
[1] Licesio J. Rodrguez-Aragn: Tema 4: Internet y Teleinformtica. retrieved 2013-04-24. (Spanish)
[2] Protocol, Encyclopedia Britannica, retrieved 2012-09-24
[3] Comer 2000, Sect. 11.2 - The Need For Multiple Protocols, p. 177, They (protocols) are to communication
what programming languages are to computation
[4] Ben-Ari 1982, chapter 2 - The concurrent programming
abstraction, p. 18-19, states the same.
[5] Ben-Ari 1982, Section 2.7 - Summary, p. 27, summarizes
the concurrent programming abstraction.
[6] Marsden 1986, Section 6.1 - Why are standards necessary?, p. 64-65, uses BSC as an example to show the need
for both standard protocols and a standard framework.
[7] Comer 2000, Sect. 11.2 - The Need For Multiple Protocols, p. 177, explains this by drawing analogies between
computer communication and programming languages.
[8] Sect. 11.10 - The Disadvantage Of Layering, p. 192,
states: layering forms the basis for protocol design.
[9] Comer 2000, Sect. 11.2 - The Need For Multiple Protocols, p. 177, states the same.
[10] Comer 2000, Sect. 11.3 - The Conceptual Layers Of Protocol Software, p. 178, Each layer takes responsibility for
handling one part of the problem.
The Internet Protocol is used in concert with other protocols within the Internet Protocol Suite. Prominent mem- [11] Comer 2000, Sect. 11.11 - The Basic Idea Behind Multiplexing And Demultiplexing, p. 192, states the same.
bers of which include:
Transmission Control Protocol (TCP)
User Datagram Protocol (UDP)
Internet Control Message Protocol (ICMP)
Hypertext Transfer Protocol (HTTP)
Post Oce Protocol (POP)
[12] Marsden 1986, Chapter 3 - Fundamental protocol concepts and problem areas, p. 26-42, explains much of the
following.
[13] Comer 2000, Sect. 7.7.4 - Datagram Size, Network
MTU, and Fragmentation, p. 104, Explains fragmentation and the eect on the header of the fragments.
[14] Comer 2000, Chapter 4 - Classful Internet Addresses, p.
64-67;71.
82
[15] Marsden 1986, Section 14.3 - Layering concepts and general denitions, p. 187, explains address mapping.
[34] Comer 2000, Sect. 11.2 - The Need For Multiple Protocols, p. 177, introduces the decomposition in layers.
[35] Comer 2000, Sect. 11.2 - The need for multiple protocols, p. 178, explains similarities protocol software and
compiler, assembler, linker, loader.
[17] Marsden 1986, Section 3.3 - Acknowledgement, p. 2833, explains the advantages of positive only acknowledgement and mentions datagram protocols as exceptions.
[18] Marsden 1986, Section 3.4 - Loss of information - timeouts and retries, p. 33-34.
[19] Marsden 1986, Section 3.5 - Direction of information
ow, p. 34-35, explains master/slave and the negotiations
to gain control.
[20] Marsden 1986, Section 3.6 - Sequence control, p. 35-36,
explains how packets get lost and how sequencing solves
this.
[21] Marsden 1986, Section 3.7 - Flow control, p. 36-38.
[22] Comer 2000, Sect. 1.3 - Internet Services, p. 3, Protocols are to communication what algorithms are to computation
[23] Tennent 1981, Section 2.3.1 - Denitions, p.15, denes
scope and binding.
[24] Tennent 1981, Section 2.3.2 Environments and stores,
p.16, the semantics of blocks and denitions are described using environments and stores.
[25] Hoare (1985), Ch. 4 - Communication, p. 133, In the
introduction: a communication is an event described by a
pair c.v where c is the name of the communication channel
and v is the value of the message.
[26] Tanenbaum, Andrew S. (2003). Computer networks.
Prentice Hall Professional. p. 235. ISBN 978-0-13066102-9. Retrieved 22 June 2011.
[37] Comer 2000, Sect. 11.5.1 - The TCP/IP 5-Layer Reference Model, p. 184, Describes the transformations of
messages or streams that can be observed in the protocol
layers.
[38] Comer 2000, Sect. 2.4.10 - Ethernet Frame Format, p.
30, Ethernet frames are used as an example for administrative data for the protocol itself.
[39] Comer 2000, Sect. 11.4 - Functionality Of The Layers, p.
181, states the same about the software organization.
[40] Comer 2000, Sect. 3.3 - Network-Level Interconnection,
p. 55, explains universal interconnection and internetworking.
[41] Comer 2000, Sect. 4.4 - Addresses Specify Network Connections, p. 86, explains this.
[42] Comer 2000, Sect. 4.3 - The Original Classful Addressing
Scheme, p. 64, explains the address scheme, netid and
routing.
[43] Comer 2000, Sect. 5.13 - Summary, p. 86, explains ARP.
[44] Comer 2000, Sect. 2.11 - Other Technologies Over
Which TCP/IP Has Been Used, p. 46, states the same.
[45] Comer 2000, Sect. 8.3.2 - Indirect Delivery, p. 118, states
the same.
[46] Comer 2000, Sect. 8.5 - Next-Hop Routing, p. 120, gives
details on the routing table.
[48] Comer 2000, Sect. 3.8 - All Networks Are Equal, p. 59,
states the same.
[50] Comer 2000, Sect. 7.6 - Purposes Of The Internet Protocol, p. 97, states the same.
[51] Comer 2000, Sect. 2.11.1 - X25NET And Tunnels, p.
46-47, explains tunneling X.25 and mentions ATM.
[52] Comer 2000, Sect. 13.1 - Introduction, p. 209, introduces
TCP.
[53] Comer 2000, Sect. 12.10 - Summary, p. 206, explains
UDP.
[54] Comer 2000, Sect. 11.3 - The Conceptual Layers Of Protocol Software, p. 179, the rst two paragraphs describe
the sending of a message through successive layers.
9.10. REFERENCES
[55] Comer 2000, Sect. 9.3 - Error Reporting vs. Error Correction, p. 131, describes the ICMP protocol that is used
to handle datagram errors.
[56] Comer 2000, Sect. 7.7.5 - Reassembly Of Fragments, p.
104, describes reassembly of datagrams.
[57] Comer 2000, Sect. 11.5.1 - The TCP/IP 5-Layer Reference Model, p. 184, explains functionality of the layers.
[58] Comer 2000, Sect. 11.9.1 - High-Level Protocol Boundary, p. 191, describes the boundary.
83
[80] Comer 2000, Section 1.9 - Internet Protocols And Standardization, p. 12, explains why the IETF did not use existing protocols.
[60] IETF 1989, Sect 1.3.1 - Organization, p. 15, 2nd paragraph: many design choices involve creative breaking
of strict layering.
[81] Comer 2000, Sect. 11.5.1 - The TCP/IP 5-Layer Reference Model, p. 183, states the same.
[61] Comer 2000, Sect. 11.10 - The Disadvantage Of Layering, p. 192, explains why strict layering can be extremely
inecient giving examples of optimizations.
9.10 References
[62] IETF 1989, Sect 1.3.1 - Organization, p. 15, 2nd paragraph, explaining why strict layering is an imperfect
model
[63] IETF 1989, Sect 1.3.1 - Organization, p. 15, states: This
layerist organization was chosen for simplicity and clarity.
[64] Bochmann, G. (1978). Finite state description of communication protocols. Computer Networks (1976). 2 (4
5): 361201. doi:10.1016/0376-5075(78)90015-6.
[65] Comer 2000, Glossary of Internetworking Terms and Abbreviations, p. 704, term protocol.
[66] Brand, Daniel; Zaropulo, Pitro (1983). On Communicating Finite-State Machines. Journal of the ACM. 30
(2): 323. doi:10.1145/322374.322380.
[67] Marsden 1986, Section 6.3 - Advantages of standardisation, p. 66-67, states the same.
[68] Marsden 1986, Section 6.4 - Some problems with standardisation, p. 67, follows HDLC to illustrate the process.
[69] Marsden 1986, Section 6.1 - Why are standards necessary?, p. 65, explains lessons learned from ARPANET.
[70] Marsden 1986, Section 14.1 - Introduction, p. 181, introduces OSI.
[71] Marsden 1986, Section 14.3 - Layering concepts and general denitions, p. 183-185, explains terminology.
[72] Marsden 1986, Section 14.4 - The application layer, p.
188, explains this.
[73] Marsden 1986, Section 14.5 - The presentation layer, p.
189, explains this.
[74] Marsden 1986, Section 14.6 - The session layer, p. 190,
explains this.
[75] Marsden 1986, Section 14.7 - The transport layer, p. 191,
explains this.
84
Brian W Marsden (1986): Communication network
protocols 2nd Edition. Chartwell Bratt, ISBN 086238-106-1.
Andrew S. Tanenbaum (1984): Structured computer
organization 10th Print. Prentice Hall International,
ISBN 0-13-854605-3.
Chapter 10
Communications system
an optical ber. The light forms a carrier signal that is
modulated to carry information.
Communication system
86
10.1.3
By Application area
A tactical communications system is a communications [10] John Stone Stone, U.S. Patent 714,756
system that (a) is used within, or in direct support of
[11] John Stone Stone, U.S. Patent 716,955
tactical forces (b) is designed to meet the requirements
of changing tactical situations and varying environmental
conditions, (c) provides securable communications, such
as voice, data, and video, among mobile users to facilitate 10.4 References
command and control within, and in support of, tactical
Hansell, Clarence W., U.S. Patent 2,389,432, "Comforces, and (d) usually requires extremely short installamunication system by pulses through the Earth".
tion times, usually on the order of hours, in order to meet
the requirements of frequent relocation.
This article incorporates public domain material
An Emergency communication system is any system (typfrom the General Services Administration document
ically computer based) that is organized for the priFederal Standard 1037C (in support of MIL-STDmary purpose of supporting the two way communica188).
tion of emergency messages between both individuals and
groups of individuals. These systems are commonly designed to integrate the cross-communication of messages
between are variety of communication technologies.
An Automatic call distributor (ACD) is a communication
system that automatically queues, assigns and connects
callers to handlers. This is used often in customer service (such as for product or service complaints), ordering
by telephone (such as in a ticket oce), or coordination
services (such as in air trac control).
A Voice Communication Control System (VCCS) is essentially an ACD with characteristics that make it more
adapted to use in critical situations (no waiting for dialtone, or lengthy recorded announcements, radio and telephone lines equally easily connected to, individual lines
immediately accessible etc..)
10.3 Notes
[1] Schwartz, M., Bennett, W. R., & Stein, S. (1996). Communication systems and techniques. New York: IEEE
Press.
[2] Rappaport, T. S. (1996). Wireless communications: principles and practice. Upper Saddle River, N.J.: Prentice
Hall PTR.
[3] Radio Communications System (RCS) www.fas.org/man/
dod-101/sys/ship/weaps/radio.htm
[4] John Stone Stone, U.S. Patent 717,512
[5] John Stone Stone, U.S. Patent 726,476
[6] John Stone Stone, U.S. Patent 726,368
Chapter 11
Compiler
This article is about the computing term. For the anime,
see Compiler (anime).
Compile and compiling redirect here. For the
software company, see Compile (publisher). For other
uses, see Compilation.
Syntax/Semantic
Analyzer (Parser)
Syntax/Semantic
Analyzer (Parser)
Intermediate-code
Generator
Intermediate-code
Generator
While all programs that take a set of programming specications and translate them, i.e. create a means to execute those specications, are technically compilers, the
term generally means a program that produces a separate
executable from the compiler (that may require a run time
library or subsystem to operate), a compiler that merely
executes the original specications is usually referred to
as an "interpreter", although because of diering methods of analyzing what represents compilation and what
represents interpretation, there is some overlap between
the two terms.
Target-1
Code Generator
Target-1 machine code
Target-2
Code Generator
Target-2 machine code
87
88
rst autocode and its compiler were developed by Alick spite of its simplicity, the PL/0 compiler introduced sevGlennie in 1952 for the Mark 1 computer at the Univer- eral inuential concepts to the eld:
sity of Manchester and is considered by some to be the
rst compiled programming language.[2] The FORTRAN
1. Program development by stepwise renement (also
team led by John Backus at IBM is generally credited as
the title of a 1971 paper by Wirth)[8]
having introduced the rst complete compiler in 1957.
2. The use of a recursive descent parser
COBOL was an early language to be compiled on multiple architectures, in 1960.[3]
3. The use of Extended BackusNaur Form (EBNF) to
In many application domains the idea of using a higher
specify the syntax of a language
level language quickly caught on. Because of the expand4. A code generator producing portable P-code
ing functionality supported by newer programming languages and the increasing complexity of computer archi5. The use of tombstone diagrams in the formal detectures, compilers have become more complex.
scription of the bootstrapping problem.
Early compilers were written in assembly language. The
rst self-hosting compiler capable of compiling its own
source code in a high-level language was created in 11.2 Compiler output
1962 for Lisp by Tim Hart and Mike Levin at MIT.[4]
Since the 1970s it has become common practice to imOne classication of compilers is by the platform on
plement a compiler in the language it compiles, although
which their generated code executes. This is known as
both Pascal and C have been popular choices for implethe target platform.
mentation language. Building a self-hosting compiler is a
bootstrapping problemthe rst such compiler for a lan- A native or hosted compiler is one which output is inguage must be compiled either by hand or by a compiler tended to directly run on the same type of computer and
written in a dierent language, or (as in Hart and Levins operating system that the compiler itself runs on. The
Lisp compiler) compiled by running the compiler in an output of a cross compiler is designed to run on a dierent
platform. Cross compilers are often used when developinterpreter.
ing software for embedded systems that are not intended
to support a software development environment.
11.1.1
Compilation
11.1.2
Compilers in education
11.2.2
89
bytecode is then compiled using a JIT compiler to native machine code just when the execution of the program is required.[9]
hardware compilers (also known as syntheses tools)
are compilers whose output is a description of the
hardware conguration instead of a sequence of instructions.
The output of these compilers target computer
hardware at a very low level, for example
a eld-programmable gate array (FPGA) or
structured application-specic integrated circuit (ASIC).[10] Such compilers are said to be
hardware compilers, because the source code
they compile eectively controls the nal conguration of the hardware and how it operates.
The output of the compilation is only an interconnection of transistors or lookup tables.
An example of hardware compiler is
XST,[11][12] the Xilinx Synthesis Tool used
for conguring FPGAs. Similar tools are
available from Altera,[13] Synplicity, Synopsys
and other hardware vendors.
While the typical compiler outputs machine code, there Compilers bridge source programs in high-level lanare several other types:
guages with the underlying hardware. A compiler veries code syntax, generates ecient object code, performs
A source-to-source compiler is a type of compiler
run-time organization, and formats the output according
that takes a high level language as its input and
to assembler and linker conventions.
outputs a high level language. For example, an
automatic parallelizing compiler will frequently take In the early days, the approach taken to compiler design
in a high level language program as an input and then used to be directly aected by the complexity of the protransform the code and annotate it with parallel code cessing, the experience of the person(s) designing it, and
annotations (e.g. OpenMP) or language constructs the resources available.
(e.g. Fortrans DOALL statements).
A compiler for a relatively simple language written by one
Bytecode compilers that compile to assembly lan- person might be a single, monolithic piece of software.
guage of a theoretical machine, like some Prolog When the source language is large and complex, and high
quality output is required, the design may be split into a
implementations
number of relatively independent phases. Having sepa This Prolog machine is also known as the rate phases means development can be parceled up into
Warren Abstract Machine (or WAM).
small parts and given to dierent people. It also becomes
Bytecode compilers for Java, Python are also much easier to replace a single phase by an improved one,
examples of this category.
or to insert new phases later (e.g., additional optimiza Just-in-time compiler (JIT compiler) is the last part tions).
of a multi-pass compiler chain in which some compilation stages are deferred to run-time. Examples
are implemented in Smalltalk, Java and Microsoft
.NET's Common Intermediate Language (CIL) systems.
Applications are rst compiled using a byte- All but the smallest of compilers have more than two
code compiler and delivered in a machine- phases. The point at which these ends meet is not always
independent intermediate representation. This clearly dened.
90
11.3.1
Classifying compilers by number of passes has its background in the hardware resource limitations of computers. Compiling involves performing lots of work and
early computers did not have enough memory to contain
one program that did all of this work. So compilers were
split up into smaller programs which each made a pass
over the source (or some representation of it) performing
some of the required analysis and translations.
The ability to compile in a single pass has classically been
seen as a benet because it simplies the job of writing a
compiler and one-pass compilers generally perform compilations faster than multi-pass compilers. Thus, partly
driven by the resource limitations of early systems, many
early languages were specically designed so that they
could be compiled in a single pass (e.g., Pascal).
In some cases the design of a language feature may require a compiler to perform more than one pass over the
source. For instance, consider a declaration appearing on
line 20 of the source which aects the translation of a
statement appearing on line 10. In this case, the rst pass
needs to gather information about declarations appearing
after statements that they aect, with the actual translation happening during a subsequent pass.
The disadvantage of compiling in a single pass is that
it is not possible to perform many of the sophisticated
optimizations needed to generate high quality code. It
can be dicult to count exactly how many passes an optimizing compiler makes. For instance, dierent phases
of optimization may analyse one expression many times
but only analyse another expression once.
Compiler design
91
2. Lexical analysis breaks the source code text into
small pieces called tokens. Each token is a single
atomic unit of the language, for instance a keyword,
identier or symbol name. The token syntax is typically a regular language, so a nite state automaton
constructed from a regular expression can be used
to recognize it. This phase is also called lexing or
scanning, and the software doing lexical analysis is
called a lexical analyzer or scanner. This may not be
a separate step it can be combined with the parsing
step in scannerless parsing, in which case parsing is
done at the character level, not the token level.
execute sequentially or concurrently. This method is favored due to its modularity and separation of concerns.
Most commonly today, the frontend is broken into three
phases: lexical analysis (also known as lexing), parsing, and semantic analysis. Lexical analysis and parsing
comprise the syntactic analysis (word syntax and phrase
syntax, respectively), and in simple cases these modules
(the lexer and parser) can be automatically generated
from a grammar for the language, though in more complex cases these require manual modication. The lexical grammar and phrase grammar are usually contextfree grammars, which simplies analysis signicantly,
with context-sensitivity handled at the semantic analysis phase. The semantic analysis phase is generally more
complex and written by hand, but can be partially or fully
automated using attribute grammars. These phases themselves can be further broken down lexing as scanning
and evaluating, parsing as rst building a concrete syntax
tree (CST, parse tree), and then transforming it into an
abstract syntax tree (AST, syntax tree).
In some cases additional phases are used, notably line reconstruction and preprocessing, but these are rare. A detailed list of possible phases includes:
1. Line reconstruction: Languages which strop their
keywords or allow arbitrary spaces within identiers
require a phase before parsing, which converts the
input character sequence to a canonical form ready
for the parser. The top-down, recursive-descent,
table-driven parsers used in the 1960s typically read
the source one character at a time and did not require a separate tokenizing phase. Atlas Autocode,
and Imp (and some implementations of ALGOL
and Coral 66) are examples of stropped languages
which compilers would have a Line Reconstruction
phase.
92
according to its language specication.[16] Techniques include developing the compiler using formal methods and
using rigorous testing (often called compiler validation)
on an existing compiler.
2. Optimization: the intermediate language represen- 11.4 Conferences and organizatation is transformed into functionally equivalent but
tions
faster (or smaller) forms. Popular optimizations are
inline expansion, dead code elimination, constant
propagation, loop transformation, register allocation A number of conferences in the eld of programming languages present advances in compiler construction as one
and even automatic parallelization.
of their main topics.
3. Code generation: the transformed intermediate lanACM SIGPLAN supports a number of conferences, inguage is translated into the output language, usually
cluding:
the native machine language of the system. This involves resource and storage decisions, such as de Programming Language Design and Implementaciding which variables to t into registers and memtion (PLDI)
ory and the selection and scheduling of appropriate
machine instructions along with their associated ad Principles of Programming Languages (POPL)
dressing modes (see also Sethi-Ullman algorithm).
Debug data may also need to be generated to facili Object-Oriented Programming, Systems, Lantate debugging.
guages, and Applications (OOPSLA)
Compiler analysis is the prerequisite for any compiler optimization, and they tightly work together. For example,
dependence analysis is crucial for loop transformation.
In addition, the scope of compiler analysis and optimizations vary greatly, from as small as a basic block to the
procedure/function level, or even over the whole program
(interprocedural optimization). Obviously, a compiler
can potentially do a better job using a broader view. But
that broad view is not free: large scope analysis and optimizations are very costly in terms of compilation time
and memory space; this is especially true for interprocedural analysis and optimizations.
Asian Symposium on Programming Languages and Systems (APLAS) is organized by the Asian Association for
Foundation of Software (AAFS).
Due to the extra time and space needed for compiler anal- A program that translates from a low level language to a
ysis and optimizations, some compilers skip them by de- higher level one is a decompiler.
fault. Users have to use compilation options to explicitly
tell the compiler which optimizations should be enabled. A program that translates between high-level languages
is usually called a language translator, source to source
translator, language converter, or language rewriter. The
last term is usually applied to translations that do not in11.3.5 Compiler correctness
volve a change of language.
Main article: Compiler correctness
A program that translates into an object code format that
is not supported on the compilation machine is called a
Compiler correctness is the branch of software engineer- cross compiler and is commonly used to prepare code for
ing that deals with trying to show that a compiler behaves embedded applications.
11.8. REFERENCES
11.7 Notes
93
11.8 References
94
Chapter 12
Computer hardware
For other uses, see Hardware.
Computer hardware (or simply hardware in comput-
garian mathematician John von Neumann. This describes a design architecture for an electronic digital
computer with subdivisions of a processing unit consisting of an arithmetic logic unit and processor registers, a control unit containing an instruction register
and program counter, a memory to store both data and
instructions, external mass storage, and input and output
mechanisms.[3] The meaning of the term has evolved to
PDP-11 CPU board
mean a stored-program computer in which an instruction
fetch and a data operation cannot occur at the same time
ing contexts) is the collection of physical elements that because they share a common bus. This is referred to as
constitutes a computer system. Computer hardware is the Von Neumann bottleneck and often limits the perforthe physical parts or components of a computer, such mance of the system.[4]
as the monitor, keyboard, computer data storage, hard
disk drive (HDD), graphic cards, sound cards, memory
(RAM), motherboard, and so on, all of which are tangible physical objects.[1] By contrast, software is instructions that can be stored and run by hardware.
Software is any set of machine-readable instructions that
directs a computers processor to perform specic operations. A combination of hardware and software forms a
usable computing system.[2]
12.2 Sales
96
Power supply
10
5
9
12
11
15
14
7
1
16
13
The CPU (Central Processing Unit), which performs most of the calculations which enable a computer to function, and is sometimes referred to as
the brain of the computer. It is usually cooled by
a heatsink and fan, or water-cooling system. Most
newer CPUs include an on-die Graphics Processing
Unit (GPU). The clock speed of CPUs governs how
fast it executes instructions, and is measured in GHz;
typical values lie between 1 GHz and 5 GHz. Many
modern computers have the option to overclock the
CPU which enhances performance at the expense of
greater thermal output and thus a need for improved
cooling.
The chipset, which includes the north bridge, mediates communication between the CPU and the other
components of the system, including main memory.
Random-Access Memory (RAM), which stores
the code and data that are being actively accessed
by the CPU. RAM usually comes on DIMMs in the
sizes 2GB, 4GB, and 8GB, but can be much larger.
97
usefulness depends on being readable by other systems;
the majority of machines have an optical disk drive, and
virtually all have a USB port.
Input and output peripherals
Main article: Peripheral
Buses that connect the CPU to various internal comInput and output devices are typically housed externally
ponents and to expand cards for graphics and sound.
to the main computer chassis. The following are either
The CMOS battery, which powers the memory for standard or very common to many computer systems.
date and time in the BIOS chip. This battery is generally a watch battery.
Input Input devices allow the user to enter information
The video card (also known as the graphics card), into the system, or control its operation. Most personal
which processes computer graphics. More powerful computers have a mouse and keyboard, but laptop sysgraphics cards are better suited to handle strenuous tems typically use a touchpad instead of a mouse. Other
input devices include webcams, microphones, joysticks,
tasks, such as playing intensive video games.
and image scanners.
Expansion cards
Main article: Expansion card
Mainframe computer
Storage devices
Main article: Computer data storage
A storage device is any computing hardware that is used
for storing, porting and extracting data les and objects.
It can hold and store information both temporarily and
permanently, and can be internal or external to a computer, server or any similar computing device. It refers
to computer components and recording media that retain
digital data. Data storage is a core function and fundamental component of computers.
Fixed media Data is stored by a computer using a variety of media. Hard disk drives are found in virtually all
older computers, due to their high capacity and low cost,
but solid-state drives are faster and more power ecient,
although currently more expensive than hard drives, so
are often found in more expensive computers. Some sys- An IBM System z9 mainframe
tems may use a disk array controller for greater perforA mainframe computer is a much larger computer that
mance or reliability.
typically lls a room and may cost many hundreds or
thousands of times as much as a personal computer. They
Removable media To transfer data between comput- are designed to perform large numbers of calculations for
ers, a USB ash drive or optical disc may be used. Their governments and large enterprises.
98
12.3.3
Departmental computing
12.6 References
12.3.4
Supercomputer
Chapter 13
Concurrent computing
For a more theoretical discussion, see Concurrency be useful for tackling complexity, regardless of whether
(computer science).
the parts can be executed in parallel.[4]:1
Concurrent computing is a form of computing in which
several computations are executed during overlapping
time periods concurrently instead of sequentially
(one completing before the next starts). This is a property of a system this may be an individual program,
a computer, or a network and there is a separate execution point or thread of control for each computation
(process). A concurrent system is one where a computation can advance without waiting for all other computations to complete; where more than one computation can
advance at the same time.[1]
13.1 Introduction
99
100
13.1.1
Models
Ambient calculus
Calculus of communicating systems (CCS)
Communicating sequential processes (CSP)
-calculus
Suppose balance = 500, and two concurrent threads make
Join-calculus
the calls withdraw(300) and withdraw(350). If line 3 in
both operations executes before line 5 both operations
Input/output automaton
will nd that balance >= withdrawal evaluates to true,
and execution will proceed to subtracting the withdrawal
amount. However, since both processes perform their
withdrawals, the total amount withdrawn will end up be- 13.3 Implementation
ing more than the original balance. These sorts of problems with shared resources need the use of concurrency A number of dierent methods can be used to implecontrol, or non-blocking algorithms.
ment concurrent programs, such as implementing each
Because concurrent systems rely on the use of shared computational execution as an operating system process,
resources (including communication media), concurrent or implementing the computational processes as a set of
computing in general needs the use of some form of threads within a single operating system process.
arbiter somewhere in the implementation to mediate access to these resources.
13.1.2
Advantages
101
13.4 History
13.5 Prevalence
Adageneral purpose, with native support for message passing and monitor based concurrency
Alefconcurrent, with threads and message passing, for system programming in early versions of
Plan 9 from Bell Labs
Channel
Coroutine
Futures and promises
At the operating system level:
Computer multitasking, including both cooperative
multitasking and preemptive multitasking
Time-sharing, which replaced sequential batch
processing of jobs with concurrent use of a
system
102
Curry
Dmulti-paradigm system programming language
with explicit support for concurrent programming
(actor model)
Euses promises to preclude deadlocks
ECMAScriptpromises available in various libraries, proposed for inclusion in standard in ECMAScript 6
FAUSTreal-time functional, for signal processing, compiler provides automatic parallelization via
OpenMP or a specic work-stealing scheduler
13.8. NOTES
103
Sheaf (mathematics)
Software transactional memory
Transaction processing
Java ConcurrentMap
13.8 Notes
[1] This is discounting parallelism internal to a processor
core, such as pipelining or vectorized instructions. A onecore, one-processor machine may be capable of some parallelism, such as with a coprocessor, but the processor
alone is not.
Stackless Python
StratiedJScombinator-based concurrency, based
on JavaScript
13.9 References
[1] Operating System Concepts 9th edition, Abraham Silberschatz. Chapter 4: Threads
Uniconfor research
Language
Chu space
Critical section
Flow-based programming
Multitasking
Parallel computing
Ptolemy Project
Race condition
104
Downey, Allen B. (2005) [2005]. The Little Book
of Semaphores (PDF). Green Tea Press. ISBN 14414-1868-7.
Filman, Robert E.; Daniel P. Friedman (1984). Coordinated Computing: Tools and Techniques for Distributed Software. New York: McGraw-Hill. p.
370. ISBN 0-07-022439-0.
Leppjrvi, Jouni (2008). A pragmatic, historically
oriented survey on the universality of synchronization
primitives (PDF). University of Oulu.
Taubenfeld, Gadi (2006). Synchronization Algorithms and Concurrent Programming. Pearson /
Prentice Hall. p. 433. ISBN 0-13-197259-6.
Chapter 14
Connection-oriented communication
Connection-oriented (CO-mode[1] ) communication is
a network communication mode in telecommunications
and computer networking, where a communication session or a semi-permanent connection is established before any useful data can be transferred, and where a
stream of data is delivered in the same order as it was
sent. The alternative to connection-oriented transmission is connectionless communication, for example the
datagram mode communication used by the IP and UDP
protocols, where data may be delivered out of order, since
dierent packets are routed independently, and may be
delivered over dierent paths.
Connection-oriented communication may be a circuit
switched connection, or a packet-mode virtual circuit
connection. In the latter case, it may use either a transport layer virtual circuit protocol such as the TCP protocol, allowing data to be delivered in order although the
lower layer switching is connectionless, or it may be a
data link layer or network layer switching mode, where
all data packets belonging to the same trac stream are
delivered over the same path, and trac ows are identied by some connection identier rather than by complete routing information, allowing fast hardware based
switching.
Connection-oriented protocol services are often but not
always reliable network services, that provide acknowledgment after successful delivery, and automatic repeat
request functions in case of missing data or detected biterrors. ATM, Frame Relay and MPLS are examples of a
connection-oriented, unreliable protocol.
105
106
14.3 Examples
Examples of connection-oriented packet mode communication, i.e. virtual circuit mode communication:
Asynchronous Transfer Mode
Connection-oriented Ethernet
DCCP
Frame Relay
GPRS
IPX/SPX
Multiprotocol Label Switching
SCTP
Transmission Control Protocol
TIPC
X.25 is a connection-oriented reliable network protocol.
[1] Information Processing Systems - Open Systems Interconnection, Transport Service Denition, International
Organization for Standardization, International Standard
8072, June 1986.
[2] Ramos-Escano; et al. (2005-06-02). US Patent Application Publication 2005/0117529 A1. Retrieved 2008-0519.
[3] Ramos-Escano; et al. (2005-06-02). US Patent Application Publication 2005/0117529 A1. Retrieved 2008-0519.
Chapter 15
Connectionless communication
Connectionless communication, often referred to as
CL-mode communication,[1] is a data transmission
method used in packet switching networks by which each
data unit is individually addressed and routed based on
information carried in each unit, rather than in the setup
information of a prearranged, xed data channel as in
connection-oriented communication.
Under connectionless communication between two network end points, a message can be sent from one end
point to another without prior arrangement. The device at
one end of the communication transmits data addressed
to the other, without rst ensuring that the recipient is
available and ready to receive the data. Some protocols allow for error correction by requested retransmission. Internet Protocol (IP) and User Datagram Protocol
(UDP) are connectionless protocols.
In connectionless transmissions the service provider usually cannot guarantee that there will be no loss, error insertion, misdelivery, duplication, or out-of-sequence delivery of the packet. However, the eect of errors may
be reduced by implementing error correction within an
application protocol.
In connectionless mode no optimizations are possible
when sending several data units between the same two
peers. By establishing a connection at the beginning of
such a data exchange the components (routers, bridges)
along the network path would be able to pre-compute
TIPC
NetBEUI
Hypertext Transfer Protocol (HTTP)
15.2 References
107
[1] Information Processing Systems - Open Systems Interconnection, Transport Service Denition - Addendum
108
Chapter 16
Data ow diagram
16.2 Theory
Function
A data ow diagram (DFD) is a graphical representation of the ow of data through an information system,
modelling its process aspects. A DFD is often used as
a preliminary step to create an overview of the system,
which can later be elaborated.[2] DFDs can also be used
for the visualization of data processing (structured design).
File/Database
Input/Output
16.1 History
Flow
Larry Constantine, the original developer of structured
design,[3] based on Martin and Estrins Data Flow
Data ow diagram - Yourdon/DeMarco notation
Graph model of computation.
Starting in the 1970s, data ow diagrams (DFD) became
a popular way to visualize the major steps and data involved in software system processes. DFDs were usually
used to show data ow in a computer system, although
they could in theory be applied to business process modeling. DFD were useful to document the major data ows
or to explore a new high-level design in terms of data
ow.[4]
109
110
Data island
Data ow diagrams are one of the three essential perspectives of the structured-systems analysis and design
method SSADM. The sponsor of a project and the end
users will need to be briefed and consulted throughout all
stages of a systems evolution. With a data ow diagram,
users are able to visualize how the system will operate,
what the system will accomplish, and how the system will
be implemented. The old systems dataow diagrams can
be drawn up and compared with the new systems data
ow diagrams to draw comparisons to implement a more
ecient system. Data ow diagrams can be used to provide the end user with a physical idea of where the data
they input ultimately has an eect upon the structure of
the whole system from order to dispatch to report. How
any system is developed can be determined through a data
ow diagram model.
In the course of developing a set of levelled data ow diagrams the analyst/designer is forced to address how the
system may be decomposed into component sub-systems,
and to identify the transaction data in the data model.
Dataow
Directed acyclic graph
Function model
IDEF0
Logical Data Flow
Pipeline
Structured Analysis and Design Technique
Structure chart
System context diagram
Value stream mapping
Workow
16.4 References
Data ow diagrams can be used in both Analysis and Design phase of the SDLC.
[1] John Azzolini (2000). Introduction to Systems Engineering Practices. July 2001.
[2] Bruza, P. D., Van der Weide, Th. P., The Semantics of
Data Flow Diagrams, University of Nijmegen, 1993.
16.2.1
Physical DFD
A physical DFD shows how the system is actually implemented, either at the moment (Current Physical DFD), or
how the designer intends it to be in the future (Required
Physical DFD). Thus, a Physical DFD may be used to
describe the set of data items that appear on each piece
of paper that move around an oce, and the fact that a
particular set of pieces of paper are stored together in a
ling cabinet. It is quite possible that a Physical DFD
will include references to data that are duplicated, or redundant, and that the data stores, if implemented as a set
of database tables, would constitute an un-normalised (or
de-normalised) relational database. In contrast, a Logical
DFD attempts to capture the data ow aspects of a system
in a form that has neither redundancy nor duplication.
[3] W. Stevens, G. Myers, L. Constantine, Structured Design, IBM Systems Journal, 13 (2), 115-139, 1974.
[4] Craig Larman, Applying UML and Patterns, Pearson
Education, ISBN 978-81-7758-979-5
[5] Introduced by Clive Finkelstein in Australia, CACI in the
UK, and later writers such as James Martin
[6] Chris Gane and Trish Sarson. Structured Systems Analysis: Tools and Techniques. McDonnell Douglas Systems
Integration Company, 1977
[7] How to draw Data Flow Diagrams
Activity diagram
Control ow diagram
111
Chapter 17
Data structure
keys
17.1 Overview
hash
function
buckets
00
John Smith
Lisa Smith
Sandra Dee
01
521-8976
02
521-1234
03
:
13
14
15
521-9655
112
113
such as C++, Java and Smalltalk may use classes for this
purpose.
Many known data structures have concurrent versions that
allow multiple computing threads to access the data structure simultaneously.
17.5 References
[1] Paul E. Black (ed.), entry for data structure in Dictionary
of Algorithms and Data Structures. U.S. National Institute
of Standards and Technology. 15 December 2004. Online
version Accessed May 21, 2009.
[2] Entry data structure in the Encyclopdia Britannica
(2009) Online entry accessed on May 21, 2009.
[3] Gavin Powell (2006). Chapter 8: Building FastPerforming Database Models. Beginning Database Design ISBN 978-0-7645-7490-0. Wrox Publishing.
[4] The GNU C Manual. Free Software Foundation. Retrieved 15 October 2014.
[5] Free Pascal: Reference Guide. Free Pascal. Retrieved
15 October 2014.
114
Chapter 18
De facto standard
A de facto standard is a custom, convention, product,
or system that has achieved a dominant position by public acceptance or market forces (such as early entrance to
the market). De facto is a Latin phrase that means in fact
(literally by or from fact) in the sense of in practice but
not necessarily ordained by law or in practice or actuality, but not ocially established, as opposed to de jure.
The term de facto standard is used in contrast with obligatory standards (also known as "de jure standards); or to
express the dominant voluntary standard, when there is
more than one standard available for the same use.
18.1 Examples
A selection of well-known and illustrative examples of de
facto and de jure standards are:
Examples of long-time de facto but never de jure standards (for computer le formats):
116
The 1/2-inch (12.7 mm) spacing of the rollers in a
bicycle chain.
The IBM Personal Computer (PC). By one year
after its 1981 release, John Dvorak described
the PC as rapidly becoming a de facto standard microcomputer.[6] With the MS-DOS and
Microsoft Windows operating systems, it gained a
large share of the personal computer market. Because of the great inuence of the IBM PC on the
personal computer market, competing products like
the Rainbow 100 were eventually withdrawn.
Interpreted programming languages such as PHP
that have multiple implementations tend to also have
a de facto standard. In PHPs case the de facto standard is the binaries available from php.net, rather
than the Phalanger implementation for example.
18.4 References
[1] Ullmann-Margalit, Edna (1977). The Emergence of
Norms. Oxford: Clarendon Press. ISBN 0-19-8244118.
[2] QWERTY
[3] ISO 19005-1:2005 - Document management -- Electronic document le format for long-term preservation -Part 1: Use of PDF 1.4 (PDF/A-1)". Retrieved 17 April
2015.
Chapter 19
19.1 Hardening
118
19.4 References
[1] DCOM Security Enhancements
Chapter 20
Duplex (telecommunications)
A duplex communication system is a point-to-point system composed of two connected parties or devices that
can communicate with one another in both directions.
Duplex comes from "duo" that means double, and
"plex" that means structure or parts of"; thus, a duplex system has two clearly dened data transmissions,
with each path carrying information in only one direction: A to B over one path, and B to A over the other.
There are two types of duplex communication systems:
full-Duplex and half-Duplex.
20.1 Half-duplex
120
the hardware. Thus, there is no waste of the channel for
switching. For example, station A on one end of the data
link could be allowed to transmit for exactly one second,
then station B on the other end could be allowed to transmit for exactly one second, and then the cycle repeats.
In half-duplex systems, if more than one party transmits Some computer-based systems of the 1960s and 1970s
at the same time, a collision occurs, resulting in lost mes- required full-duplex facilities, even for half-duplex operasages.
tion, since their poll-and-response schemes could not tolerate the slight delays in reversing the direction of transmission in a half-duplex line.
20.2 Full-duplex
20.3 Full-duplex emulation
A full-duplex (FDX) system, or sometimes called doubleduplex, allows communication in both directions, and,
unlike half-duplex, allows this to happen simultaneously.
Land-line telephone networks are full-duplex, since they
allow both callers to speak and be heard at the same
time, with the transition from four to two wires being
achieved by a hybrid coil in a telephone hybrid. Modern
cell phones are also full-duplex.[1]
Where channel access methods are used in point-tomultipoint networks (such as cellular networks) for dividing forward and reverse communication channels on the
same physical communications medium, they are known
as duplexing methods, such as time-division duplexing and
frequency-division duplexing.
Full-duplex has also several benets over the use of halfduplex. First, there are no collisions so time is not wasted
by having to retransmit frames. Second, full transmission
PACTOR
121
ISDN BRI U interface, variants using the time- sound coming out of the speaker, originating from the
compression multiplex (TCM) line system
far end, re-enters the microphone and is sent back to the
far end. The sound then reappears at the original source
G.fast, a digital subscriber line (DSL) standard un- end, but delayed. This feedback path may be acoustic,
der development by the ITU-T
through the air, or it may be mechanically coupled, for
example in a telephone handset. Echo cancellation is a
signal-processing operation that subtracts the far-end sig20.3.2 Frequency-division duplexing
nal from the microphone signal before it is sent back over
the network.
Frequency-division duplexing (FDD) means that the
transmitter and receiver operate at dierent carrier fre- Echo cancellation is important to the V.32, V.34, V.56,
quencies. The term is frequently used in ham radio opera- and V.90 modem standards.[2]
tion, where an operator is attempting to contact a repeater Echo cancelers are available as both software and hardstation. The station must be able to send and receive a ware implementations. They can be independent compotransmission at the same time, and does so by slightly al- nents in a communications system or integrated into the
tering the frequency at which it sends and receives. This communication systems central processing unit. Devices
mode of operation is referred to as duplex mode or oset that do not eliminate echo sometimes will not produce
mode.
good full-duplex performance.
Uplink and downlink sub-bands are said to be separated
by the frequency oset. Frequency-division duplexing
can be ecient in the case of symmetric trac. In this
case time-division duplexing tends to waste bandwidth
during the switch-over from transmitting to receiving, has
greater inherent latency, and may require more complex
circuitry.
Another advantage of frequency-division duplexing is
that it makes radio planning easier and more ecient,
since base stations do not hear each other (as they transmit and receive in dierent sub-bands) and therefore will
normally not interfere with each other. On the converse,
with time-division duplexing systems, care must be taken
to keep guard times between neighboring base stations
(which decreases spectral eciency) or to synchronize
base stations, so that they will transmit and receive at
the same time (which increases network complexity and
therefore cost, and reduces bandwidth allocation exibility as all base stations and sectors will be forced to use
the same uplink/downlink ratio)
Examples of frequency-division duplexing systems are:
20.5 References
Most
cellular
systems,
including
the
UMTS/WCDMA use frequency-division duplexing
mode and the cdma2000 system.
20.3.3
Echo cancellation
Chapter 21
21.1 History
Dynamic Data Exchange was rst introduced in 1987
with the release of Windows 2.0 as a method of
interprocess communication so that one program could
communicate with or control another program, somewhat
like Suns RPC (Remote Procedure Call).[1] It used the
Windows Messaging Layer functionality within Windows. DDE continues to work even in modern versions
of Windows, but has been superseded by newer technologies. Windows for Workgroups introduced a remoting
version called NetDDE.
OLE and OLE Automation are more advanced than
DDE, but have proven to be bulky and dicult to code.
OLE is far more sophisticated and capable than DDE because it is built on top of Microsofts Component Object
Model, but also suers from COMs problems of a higher
performance penalty and a much steeper learning curve.
COM that works between networked machines is known
as DCOM (Distributed COM). .NET Remoting provides
a layered architecture for interprocess communication in
the .NET Framework. However, legacy DDE is still used
in several places inside Windows, e.g. for Shell le associations and for the copy, cut and paste functions.
21.2 Overview
21.3 NetDDE
California-based company Wonderware (acquired by
French company Schneider Electric from Invensys Plc
in January 2014) developed an extension for DDE called
NetDDE that could be used to initiate and maintain the
network connections needed for DDE conversations between DDE-aware applications running on dierent computers in a network and transparently exchange data. A
DDE conversation is an interaction between client and
server applications. NetDDE could be used along with
DDE and the DDE management library (DDEML) in applications.
21.5 Notes
[1] Net DDE to DOT NET Remoting 12 Jan, 2006
[2] Joel Spolsky - comment on Fog Creek Software discussion
forum
[3] NetDDE has been removed in Windows Vista.
21.6 References
Charles Petzold. Dynamic Data Exchange in Programming for Windows 95. Microsoft Press.
123
Chapter 22
data, and attaches a xed number of check bits (or parity data), which are derived from the data bits by some
deterministic algorithm. If only error detection is required, a receiver can simply apply the same algorithm
to the received data bits and compare its output with the
received check bits; if the values do not match, an error
has occurred at some point during the transmission. In a
system that uses a non-systematic code, the original message is transformed into an encoded message that has at
least as many bits as the original message.
22.3 Introduction
The general idea for achieving error detection and correction is to add some redundancy (i.e., some extra data)
to a message, which receivers can use to check consistency of the delivered message, and to recover data determined to be corrupted. Error-detection and correction
schemes can be either systematic or non-systematic: In
a systematic scheme, the transmitter sends the original
124
Automatic repeat request (ARQ) (sometimes also referred to as backward error correction): This is an
error control technique whereby an error detection
scheme is combined with requests for retransmission of erroneous data. Every block of data received
is checked using the error detection code used, and
if the check fails, retransmission of the data is requested this may be done repeatedly, until the data
can be veried.
125
22.5.1
Repetition codes
A repetition code is very inecient, and can be susceptible to problems if the error occurs in exactly the same
place for each group (e.g., 1010 1010 1010 in the previous example would be detected as correct). The advantage of repetition codes is that they are extremely simple, Even parity is a special case of a cyclic redundancy check,
and are in fact used in some transmissions of numbers where the single-bit CRC is generated by the divisor x +
126
1.
22.5.5
22.5.6
Error-correcting codes
22.7. APPLICATIONS
127
22.6.3
Hybrid schemes
22.7 Applications
Applications that require low latency (such as telephone
conversations) cannot use Automatic Repeat reQuest
(ARQ); they must use forward error correction (FEC).
By the time an ARQ system discovers an error and retransmits it, the re-sent data will arrive too late to be any
good.
Applications where the transmitter immediately forgets
the information as soon as it is sent (such as most television cameras) cannot use ARQ; they must use FEC because when an error occurs, the original data is no longer
available. (This is also why FEC is used in data storage
systems such as RAID and distributed data store).
Deep-space telecommunications
Development of error-correction codes was tightly coupled with the history of deep-space missions due to
the extreme dilution of signal power over interplanetary distances, and the limited power availability aboard
space probes. Whereas early missions sent their data
uncoded, starting from 1968 digital error correction
was implemented in the form of (sub-optimally decoded) convolutional codes and ReedMuller codes.[8]
The ReedMuller code was well suited to the noise the
spacecraft was subject to (approximately matching a bell
curve), and was implemented at the Mariner spacecraft
for missions between 1969 and 1977.
128
error correction, and enabled the spacecrafts extended archive formats, include a checksum (most often CRC32)
journey to Uranus and Neptune. Both craft use V2 RSV to detect corruption and truncation and can employ recoding due to ECC system upgrades after 1989.
dundancy and/or parity les to recover portions of corThe CCSDS currently recommends usage of error cor- rupted data. Reed Solomon codes are used in compact
rection codes with performance similar to the Voyager discs to correct errors caused by scratches.
2 RSV code as a minimum. Concatenated codes are increasingly falling out of favor with space missions, and are
replaced by more powerful codes such as Turbo codes or
LDPC codes.
The dierent kinds of deep space and orbital missions
that are conducted suggest that trying to nd a one size
ts all error correction system will be an ongoing problem for some time to come. For missions close to Earth
the nature of the channel noise is dierent from that
which a spacecraft on an interplanetary mission experiences. Additionally, as a spacecraft increases its distance from Earth, the problem of correcting for noise gets
larger.
22.7.3
The demand for satellite transponder bandwidth continues to grow, fueled by the desire to deliver television (including new channels and High Denition TV) and IP
data. Transponder availability and bandwidth constraints
have limited this growth, because transponder capacity
is determined by the selected modulation scheme and
Forward error correction (FEC) rate.
Overview
QPSK coupled with traditional Reed Solomon and Error-correcting memory controllers traditionally use
Viterbi codes have been used for nearly 20 years for Hamming codes, although some use triple modular redundancy.
the delivery of digital satellite TV.
Interleaving allows distributing the eect of a single cos Higher order modulation schemes such as 8PSK,
mic ray potentially upsetting multiple physically neigh16QAM and 32QAM have enabled the satellite inboring bits across multiple words by associating neighbordustry to increase transponder eciency by several
ing bits to dierent words. As long as a single event upset
orders of magnitude.
(SEU) does not exceed the error threshold (e.g., a sin This increase in the information rate in a transpon- gle error) in any particular word between accesses, it can
der comes at the expense of an increase in the carrier be corrected (e.g., by a single-bit error correcting code),
power to meet the threshold requirement for existing and the illusion of an error-free memory system may be
maintained.[11]
antennas.
Tests conducted using the latest chipsets demonstrate that the performance achieved by using Turbo
Codes may be even lower than the 0.8 dB gure assumed in early designs.
22.7.4
Data storage
129
Berger code
Burst error-correcting code
Forward error correction
Link adaptation
22.9 References
[1] Thompson, Thomas M. (1983), From Error-Correcting
Codes through Sphere Packings to Simple Groups, The
Carus Mathematical Monographs (#21), The Mathematical Association of America, p. vii, ISBN 0-88385-023-0
[2] Shannon, C.E. (1948), A Mathematical Theory of Communication, Bell System Tech. Journal, p. 418, 27
[3] Golay, Marcel J. E. (1949), Notes on Digital Coding,
Proc.I.R.E. (I.E.E.E.), p. 657, 37
[4] Frank van Gerwen. Numbers (and other mysterious) stations. Retrieved 12 March 2012.
[5] Gary Cutlack (25 August 2010). Mysterious Russian
'Numbers Station' Changes Broadcast After 20 Years.
Gizmodo. Retrieved 12 March 2012.
[6] A. J. McAuley, Reliable Broadband Communication Using a Burst Erasure Correcting Code, ACM SIGCOMM,
1990.
[7] Ben-Gal I.; Herer Y.; Raz T. (2003). Self-correcting inspection procedure under inspection errors (PDF). IIE
Transactions on Quality and Reliability, 34(6), pp. 529540.
[8] K. Andrews et al., The Development of Turbo and LDPC
Codes for Deep-Space Applications, Proceedings of the
IEEE, Vol. 95, No. 11, Nov. 2007.
[9] Human, William Cary; Pless, Vera S. (2003). Fundamentals of Error-Correcting Codes. Cambridge University
Press. ISBN 978-0-521-78280-7.
[10] My Hard Drive Died. Scott A. Moulton
[11] Using StrongArm SA-1110 in the On-Board Computer
of Nanosatellite. Tsinghua Space Center, Tsinghua University, Beijing. Retrieved 2009-02-16.
[12] Je Layton. Error Detection and Correction. Linux
Magazine. Retrieved 2014-08-12.
Chapter 23
21
PC1
PASV
PC2
PC1
21
PORT PS1
A
PC2
PS1
131
the client then uses to open a data connection from Some FTP software also implements a DEFLATE-based
an arbitrary client port to the server IP address and compressed mode, sometimes called Mode Z after the
server port number received.[7]
command that enables it. This mode was described in an
Internet Draft, but not standardized.[9]
Both modes were updated in September 1998 to support
IPv6. Further changes were introduced to the passive
mode at that time, updating it to extended passive mode.[8] 23.2.2
The server responds over the control connection with
three-digit status codes in ASCII with an optional text
message. For example, 200 (or 200 OK) means that
the last command was successful. The numbers represent
the code for the response and the optional text represents
a human-readable explanation or request (e.g. <Need account for storing le>).[1] An ongoing transfer of le data
over the data connection can be aborted using an interrupt
message sent over the control connection.
Login
While transferring data over the network, four data representations can be used:[2][3][4]
132
23.4 Security
23.3.1
Username protection
FTP does not encrypt its trac; all transmissions are in
clear text, and usernames, passwords, commands and data
can be read by anyone able to perform packet capture
(sning) on the network.[2][15] This problem is common
to many of the Internet Protocol specications (such as
SMTP, Telnet, POP and IMAP) that were designed prior
to the creation of encryption mechanisms such as TLS or
SSL.[4]
Common solutions to this problem include:
1. Using the secure versions of the insecure protocols,
e.g., FTPS instead of FTP and TelnetS instead of
Telnet.
2. Using a dierent, more secure protocol that can
handle the job, e.g. SSH File Transfer Protocol or
Secure Copy Protocol.
3. Using a secure tunnel such as Secure Shell (SSH) or
virtual private network (VPN).
Syntax
23.4.1 FTP over SSH
FTP URL syntax is described in RFC 1738, taking the form: ftp://{[}user{[}:password{]}@{]}host{[}: FTP over SSH is the practice of tunneling a normal FTP
port{]}/url-path (the bracketed parts are optional).
session over a Secure Shell connection.[15] Because FTP
For example, the URL ftp://public.ftp-servers.example. uses multiple TCP connections (unusual for a TCP/IP
com/mydirectory/myfile.txt represents the le my- protocol that is still in use), it is particularly dicult to
le.txt from the directory mydirectory on the server tunnel over SSH. With many SSH clients, attempting to
public.ftp-servers.example.com as an FTP resource. The set up a tunnel for the control channel (the initial client-toURL ftp://user001:secretpassword@private.ftp-servers. server connection on port 21) will protect only that chanexample.com/mydirectory/myfile.txt adds a specica- nel; when data is transferred, the FTP software at either
133
end sets up new TCP connections (data channels) and thus 23.5.4 Simple File Transfer Protocol
have no condentiality or integrity protection.
Simple File Transfer Protocol (the rst protocol abbreviOtherwise, it is necessary for the SSH client software to
ated SFTP), as dened by RFC 913, was proposed as an
have specic knowledge of the FTP protocol, to mon(unsecured) le transfer protocol with a level of complexitor and rewrite FTP control channel messages and auity intermediate between TFTP and FTP. It was never
tonomously open new packet forwardings for FTP data
widely accepted on the Internet, and is now assigned Hischannels. Software packages that support this mode intoric status by the IETF. It runs through port 115, and
clude:
often receives the initialism of SFTP. It has a command
[16]
Tectia ConnectSecure (Win/Linux/Unix) of SSH set of 11 commands and support three types of data transmission: ASCII, binary and continuous. For systems with
Communications Security's software suite
a word size that is a multiple of 8 bits, the implementation of binary and continuous is the same. The protocol also supports login with user ID and password, hier23.5 Derivatives
archical folders and le management (including rename,
delete, upload, download, download with overwrite, and
23.5.1 FTPS
download with append).
Main article: FTPS
23.5.2
23.5.3
Trivial File Transfer Protocol (TFTP) is a simple, lockstep FTP that allows a client to get from or put a le onto a
remote host. One of its primary uses is in the early stages
of booting from a local area network, because TFTP is
very simple to implement. TFTP lacks security and most
of the advanced features oered by more robust le transfer protocols such as File Transfer Protocol. TFTP was
rst standardized in 1981 and the current specication for
the protocol can be found in RFC 1350.
134
The third digit of the reply code is used to provide additional detail for each of the categories dened by the
second digit.
[16] http://ssh.com/index.php/products/
tectia-pci-point-to-point-encryption.html
23.9 References
[1] Forouzan, B.A. (2000). TCP/IP: Protocol Suite (1st ed.).
New Delhi, India: Tata McGraw-Hill Publishing Company Limited.
[2] Kozierok, Charles M. (2005). The TCP/IP Guide v3.0.
Tcpipguide.com.
[3] Dean, Tamara (2010). Network+ Guide to Networks. Delmar. pp. 168171.
[4] Clark, M.P. (2003). Data Networks IP and the Internet
(1st ed.). West Sussex, England: John Wiley & Sons Ltd.
[5] Active FTP vs. Passive FTP, a Denitive Explanation.
Slacksite.com. Archived from the original on 2014-1231.
[6] Parker, Don (September 2005). Understanding the FTP
Protocol. Windowsnetworking.com.
[7] RFC 959 (Standard) File Transfer Protocol (FTP). Postel,
J. & Reynolds, J. (October 1985).
[8] RFC 2428 (Proposed Standard) Extensions for IPv6,
NAT, and Extended Passive Mode. Allman, M. & Metz,
C. & Ostermann, S. (September 1998).
135
Chapter 24
Finite-state machine
State machine redirects here. For innite state ma- FSMs are studied in the more general eld of automata
chines, see State transition system. For fault-tolerance theory.
methodology, see State machine replication.
SFSM redirects here. For the Italian railway company,
see Circumvesuviana.
24.1 Example: coin-operated turnFinite Automata redirects here. For the electroindustrial group, see Finite Automata (band).
stile
A nite-state machine (FSM) or nite-state automaton (FSA, plural: automata), or simply a state machine,
Coin
Push
is a mathematical model of computation used to design
both computer programs and sequential logic circuits. It
Locked
is conceived as an abstract machine that can be in one
of a nite number of states. The machine is in only one
state at a time; the state it is in at any given time is called
the current state. It can change from one state to another
when initiated by a triggering event or condition; this is
called a transition. A particular FSM is dened by a list of State diagram for a turnstile
its states, and the triggering condition for each transition.
The behavior of state machines can be observed in
many devices in modern society that perform a predetermined sequence of actions depending on a sequence
of events with which they are presented. Simple examples are vending machines, which dispense products when
the proper combination of coins is deposited, elevators,
which drop riders o at upper oors before going down,
trac lights, which change sequence when cars are waiting, and combination locks, which require the input of
combination numbers in the proper order.
Unlocked
Push
Coin
An example of a very simple mechanism that can be modeled by a state machine is a turnstile.[2][3] A turnstile, used
to control access to subways and amusement park rides, is
a gate with three rotating arms at waist height, one across
the entryway. Initially the arms are locked, blocking the
entry, preventing patrons from passing through. Depositing a coin or token in a slot on the turnstile unlocks the
arms, allowing a single customer to push through. After
the customer passes through, the arms are locked again
until another coin is inserted.
136
24.3. REPRESENTATIONS
137
Exit action: performed when exiting the state.
24.3 Representations
A turnstile
138
state
1
opened
E: open
door
transition
close
open
transition condition
2
closed
entry action
E: close
door
24.4 Usage
In addition to their use in modeling reactive systems
presented here, nite state automata are signicant
in many dierent areas, including electrical engineering, linguistics, computer science, philosophy, biology,
mathematics, and logic. Finite state machines are a class
of automata studied in automata theory and the theory of
computation. In computer science, nite state machines
are widely used in modeling of application behavior, design of hardware digital systems, software engineering,
compilers, network protocols, and the study of computation and languages.
24.3.2
24.5 Classication
The Unied Modeling Language has a notation for de- The state machines can be subdivided into Transducers,
scribing state machines. UML state machines overcome Acceptors, Classiers and Sequencers.[4]
the limitations of traditional nite state machines while
retaining their main benets. UML state machines introduce the new concepts of hierarchically nested states 24.5.1 Acceptors and recognizers
and orthogonal regions, while extending the notion of
actions. UML state machines have the characteristics of
1
2
3
4
both Mealy machines and Moore machines. They supStart
n_found
i_found
c_found
n
i
c
port actions that depend on both the state of the system
and the triggering event, as in Mealy machines, as well
as entry and exit actions, which are associated with states
rather than transitions, as in Moore machines.
not_n
not_i
not_c
not_e
e
24.3.3
Error
Success
Acceptors (also called recognizers and sequence detectors) produce binary output, indicating whether or not received input is accepted. Each state of an FSM is either
accepting or not accepting. Once all input has been
received, if the current state is an accepting state, the input is accepted; otherwise it is rejected. As a rule, input
is a series of symbols (characters); actions are not used.
The example in gure 4 shows a nite state machine that
accepts the string nice. In this FSM, the only accepting
state is state 7.
24.5. CLASSIFICATION
A machine could also be described as dening a language,
that would contain every string accepted by the machine
but none of the rejected ones; that language is accepted
by the machine. By denition, the languages accepted by
FSMs are the regular languages; a language is regular
if there is some FSM that accepts it.
139
Classier is a generalization that, similar to acceptor,
produces single output when terminates but has more than
two terminal states.
24.5.2 Transducers
1
opened
close
sensor opened
Start state
The start state is usually shown drawn with an arrow
pointing at it from any where (Sipser (2006) p. 34).
open
2
closing
4
opening
close
sensor closed
open
3
closed
Accept states (also referred to as accepting or nal Moore machine The FSM uses only entry actions, i.e.,
states) are those at which the machine reports that the
output depends only on the state. The advantage
input string, as processed so far, is a member of the lanof the Moore model is a simplication of the beguage it accepts. Accepting states are usually represented
haviour. Consider an elevator door. The state maby double circles.
chine recognizes two commands: command_open
and command_close, which trigger state changes.
The start state can also be an accepting state, in which
The entry action (E:) in state Opening starts a mocase the automaton accepts the empty string. If the start
tor opening the door, the entry action in state Closstate is not an accepting state and there are no connecting
ing starts a motor in the other direction closing the
edges to any of the accepting states, then the automaton
door. States Opened and Closed stop the mois accepting nothing.
tor when fully opened or closed. They signal to the
An example of an accepting state appears in Fig.5:
outside world (e.g., to other state machines) the sita deterministic nite automaton (DFA) that detects
uation: door is open or door is closed.
whether the binary input string contains an even number
of 0s.
S 1 (which is also the start state) indicates the state at Mealy machine The FSM uses only input actions, i.e.,
output depends on input and state. The use of a
which an even number of 0s has been input. S1 is thereMealy FSM leads often to a reduction of the numfore an accepting state. This machine will nish in an
ber of states. The example in gure 7 shows a
accept state, if the binary string contains an even number
Mealy FSM implementing the same behaviour as in
of 0s (including any binary string containing no 0s). Exthe Moore example (the behaviour depends on the
amples of strings accepted by this DFA are (the empty
string), 1, 11, 11, 00, 010, 1010, 10110, etc
implemented FSM execution model and will work,
140
sensor closed
1
opened
2
closed
I:
I:
sensor opened
24.5.3
State
transition
conditions
Generators
The sequencers or generators are a subclass of aforementioned types that have a single-letter input alphabet.
They produce only one sequence, which can be interpreted as output sequence of transducer or classier outputs.
24.5.4
Determinism
State
Output
In accordance with the general classication, the following formal denitions are found:
A deterministic nite state machine or acceptor
deterministic nite state machine is a quintuple
(, S, s0 , , F ) , where:
is the input alphabet (a nite, non-empty set
of symbols).
S is a nite, non-empty set of states.
s0 is an initial state, an element of S .
is the state-transition function: : S
S (in a nondeterministic nite automaton it
24.10. IMPLEMENTATION
141
is
sextuple
24.9 Optimization
Main article: DFA minimization
Event-driven FSM
Virtual FSM (VFSM)
State design pattern
142
24.10.3
24.12 References
Finite automata are often used in the frontend of programming language compilers. Such a frontend may
comprise several nite state machines that implement a
lexical analyzer and a parser. Starting from a sequence of
characters, the lexical analyzer builds a sequence of language tokens (such as reserved words, literals, and identiers) from which the parser builds a syntax tree. The lexical analyzer and the parser handle the regular and contextfree parts of the programming languages grammar.[19]
[4] Keller, Robert M. (2001). Classiers, Acceptors, Transducers, and Sequencers (PDF). Computer Science: Abstraction to Implementation (PDF). Harvey Mudd College.
p. 480.
[2] Koshy, Thomas (2004). Discrete Mathematics With Applications. Academic Press. p. 762. ISBN 0-12-421180-1.
[3] Wright, David R. (2005). Finite State Machines (PDF).
CSC215 Class Notes. Prof. David R. Wright website, N.
Carolina State Univ. Retrieved July 14, 2012.
143
Ginsburg, S., An Introduction to Mathematical Machine Theory. Addison-Wesley, 1962.
24.13.1
General
Hopcroft, John E.; Motwani, Rajeev; Ullman, Jeffrey D. (2001). Introduction to Automata Theory,
Languages, and Computation (2nd ed.). Reading
Mass: Addison-Wesley. ISBN 0-201-44124-1.
Kozen, Dexter C. (1997). Automata and Computability (1st ed.). New York: Springer-Verlag.
ISBN 0-387-94907-0.
Lewis, Harry R.; Papadimitriou, Christos H. (1998).
Elements of the Theory of Computation (2nd ed.).
Upper Saddle River, New Jersey: Prentice-Hall.
ISBN 0-13-262478-8.
144
Linz, Peter (2006). Formal Languages and Automata (4th ed.). Sudbury, MA: Jones and Bartlett.
ISBN 978-0-7637-3798-6.
Minsky, Marvin (1967). Computation: Finite and
Innite Machines (1st ed.). New Jersey: PrenticeHall.
Papadimitriou, Christos (1993). Computational
Complexity (1st ed.). Addison Wesley. ISBN 0-20153082-1.
Pippenger, Nicholas (1997). Theories of Computability (1st ed.). Cambridge, England: Cambridge University Press. ISBN 0-521-55380-6.
24.13.4
24.13.5
Kemeny, John G.; Mirkil, Hazleton; Snell, J. Laurie; Thompson, Gerald L. (1959). Finite Mathematical Structures (1st ed.). Englewood Clis, N.J.:
Prentice-Hall, Inc. Library of Congress Card Catalog Number 59-12841. Chapter 6 Finite Markov
Chains.
External links
Chapter 25
25.2 Messages
25.3 Further reading
The ocial CORBA standard from the OMG
group.
25.4 References
[1] http://www.omg.org/library/iiop4.html
[2] Linda Rising (23 July 2001). Design Patterns in Communications Software. Cambridge University Press. p.
445. ISBN 978-0-521-79040-6. In addition to the standard GIOP and IIOP protocols, the CORBA specication
allows ORB implementors to dene Environment Specic Inter-ORB Protocols (ESIOP)s... Only one ESIOP
protocol is dened in the CORBA 2.x family of specications: the DCE Common Inter-ORB Protocol (DCECIOP). The OMG is attempting to standardize other protocols for such domains, such as wireless and mobile systems, which have unique performance characteristics and
optimization points.
[3] Zahir Tari; Omran Bukhres (7 April 2004).
Fundamentals of Distributed Object Systems: The
CORBA Perspective. John Wiley & Sons. p. 178. ISBN
978-0-471-46411-2.
ESIOP (Environment Specic
Inter-ORB Protocol) is a concrete GIOP protocol which
is used to communicate in a particular environment.
An ESIOP is optimized for a specic environment and
may be chosen over TCP/IP... An example of ESIOP is
DCE-CIOP (DCE-Common Inter-ORB Protocol) which
makes use of a subset of DCE-RPC facilities and parts of
GIOP specication.
[4] Kim, Dong Jin; Namgoong, Han; Lew, Young-Chul (5
December 1997). Danthine, Andre; Diot, Christophe,
eds. A bridge for heterogeneous communication between
CORBA and DCE. From Multimedia Services to Network Services: 4th International COST 237 Workshop,
Lisboa, Portugal, December 15-19, 1997. Proceedings. Springer. p. 4558. ISBN 978-3-540-639350. The other approach is using Environment Specic
Inter-ORB Protocol(ESIOP), the DCE Common InterORB Protocol(DCE-CIOP). DCE-CIOP messages repre-
146
sent OMG IDL types by using the Common Data Representation(CDR) transfer syntax.
[5] The DCE ESIOP. The Common Object Request Broker: Architecture and Specication: Revision 2.6.1 (PDF).
OMG. May 2002. p. 557. Retrieved 2016-05-11.
This chapter species an Environment-Specic InterORB Protocol (ESIOP) for the OSF DCE environment,
the DCE Common Inter-ORB Protocol (DCE-CIOP).
Chapter 26
HTML
".htm and ".html redirect here. For other uses, see
HTM (disambiguation).
HyperText Markup Language (HTML) is the standard markup language for creating web pages and web
applications. With Cascading Style Sheets (CSS), and
JavaScript, it forms a triad of cornerstone technologies
for the World Wide Web.[1] Web browsers receive HTML
documents from a webserver or from local storage and
render them into multimedia web pages. HTML describes the structure of a web page semantically and originally included cues for the appearance of the document.
HTML elements are the building blocks of HTML pages.
With HTML constructs, images and other objects, such
as interactive forms may be embedded into the rendered
page. It provides a means to create structured documents by denoting structural semantics for text such as
headings, paragraphs, lists, links, quotes and other items.
HTML elements are delineated by tags, written using The historic logo made by the W3C
angle brackets. Tags such as <img /> and <input /> introduce content into the page directly. Others such as
<p>...</p> surround and provide information about document text and may include other tags as sub-elements.
Browsers do not display the HTML tags, but use them to
interpret the content of the page.
HTML can embed programs written in a scripting language such as JavaScript which aect the behavior and
content of web pages. Inclusion of CSS denes the look
and layout of content. The World Wide Web Consortium (W3C), maintainer of both the HTML and the CSS
standards, has encouraged the use of CSS over explicit An example website written in HTML Code
presentational HTML since 1997.[2]
and wrote the browser and server software in late 1990.
That year, Berners-Lee and CERN data systems engineer
26.1 History
Robert Cailliau collaborated on a joint request for funding, but the project was not formally adopted by CERN.
In his personal notes[4] from 1990 he listed[5] some of
26.1.1 Development
the many areas in which hypertext is used and put an
In 1980, physicist Tim Berners-Lee, then a contractor at encyclopedia rst.
CERN, proposed and prototyped ENQUIRE, a system The rst publicly available description of HTML was
for CERN researchers to use and share documents. In a document called HTML Tags, rst mentioned on
1989, Berners-Lee wrote a memo proposing an Internet- the Internet by Tim Berners-Lee in late 1991.[6][7] It
based hypertext system.[3] Berners-Lee specied HTML describes 18 elements comprising the initial, relatively
147
148
Tim Berners-Lee
Netscape's visual markup tags. Netscapes blink element and Microsoft's marquee element were omitted due to a mutual agreement between the two
companies.[13] A markup for mathematical formulas similar to that in HTML was not standardized
until 14 months later in MathML.
26.1. HISTORY
149
May 2000 ISO/IEC 15445:2000[22][23] ("ISO HTML, November 1993 HTML+ was published by the IETF as
based on HTML 4.01 Strict) was published as
an Internet Draft and was a competing proposal to
an ISO/IEC international standard. In the ISO
the Hypertext Markup Language draft. It expired in
this standard falls in the domain of the ISO/IEC
May 1994.
JTC1/SC34 (ISO/IEC Joint Technical Committee
3.0[33]
1, Subcommittee 34 Document description and April 1995 (authored March 1995) HTML
[22]
was proposed as a standard to the IETF, but the
processing languages).
proposal expired ve months later (28 September
After HTML 4.01, there was no new version of HTML
1995)[34] without further action. It included many
for many years as development of the parallel,
of the capabilities that were in Raggetts HTML+
XML-based language XHTML occupied the W3Cs
proposal, such as support for tables, text ow around
HTML Working Group through the early and midgures and the display of complex mathematical
2000s.
formulas.[34]
October 28, 2014 HTML5[24] was published as a W3C
Recommendation.[25]
HTML draft version timeline
October 1991 HTML Tags,[6] an informal CERN document listing 18 HTML tags, was rst mentioned in
public.
June 1992 First informal draft of the HTML DTD,[26]
with seven[27][28][29] subsequent revisions (July 15,
August 6, August 18, November 17, November 19,
November 20, November 22)
November 1992 HTML DTD 1.1 (the rst with a version number, based on RCS revisions, which start
with 1.1 rather than 1.0), an informal draft[29]
June 1993 Hypertext Markup Language[30] was published by the IETF IIIR Working Group as an Internet Draft (a rough proposal for a standard). It was
150
26.2 Markup
HTML markup consists of several key components, including those called tags (and their attributes), characterbased data types, character references and entity references. HTML tags most commonly come in pairs like
<h1> and </h1>, although some represent empty elements
and so are unpaired, for example <img>. The rst tag in
In December 2012, W3C designated HTML5 as a such a pair is the start tag, and the second is the end tag
Candidate Recommendation.[43] The criterion (they are also called opening tags and closing tags).
for advancement to W3C Recommendation is
Another important component is the HTML document
two 100% complete and fully interoperable
type declaration, which triggers standards mode renderimplementations.[44][45]
ing.
XHTML is a separate language that began as a reformula- The Document Type Declaration <!DOCTYPE html> is
tion of HTML 4.01 using XML 1.0. It is no longer being for HTML5. If a declaration is not included, various
developed as a separate standard.
browsers will revert to "quirks mode" for rendering.[55]
26.2. MARKUP
26.2.1
Elements
151
<h3>Heading level 3</h3> <h4>Heading level 4</h4>
<h5>Heading level 5</h5> <h6>Heading level 6</h6>
link
to
152
may be specied; for example class="notation important puts the element into both the notation
and the important classes.
An author may use the style attribute to assign presentational properties to a particular element. It is
considered better practice to use an elements id or
class attributes to select the element from within a
stylesheet, though sometimes this can be too cumbersome for a simple, specic, or ad hoc styling.
The title attribute is used to attach subtextual explanation to an element. In most browsers this attribute
is displayed as a tooltip.
The lang attribute identies the natural language
of the elements contents, which may be dierent
from that of the rest of the document. For example,
in an English-language document:
<p>Oh well, <span lang="fr">c'est la vie</span>,
as they say in France.</p>
The abbreviation element, abbr, can be used to demonstrate some of these attributes :
<abbr id="anId class="jargon style="color:purple;"
title="Hypertext Markup Language">HTML</abbr>
This example displays as HTML; in most browsers, pointing the cursor at the abbreviation should display the title
text Hypertext Markup Language.
153
An example of an HTML 4 doctype
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML
4.01//EN "http://www.w3.org/TR/html4/strict.dtd">
This declaration references the DTD for the strict version of HTML 4.01. SGML-based validators read the
DTD in order to properly parse the document and to perform validation. In modern browsers, a valid doctype activates standards mode as opposed to quirks mode.
In addition, HTML 4.01 provides Transitional and
Frameset DTDs, as explained below. Transitional type
is the most inclusive, incorporating current tags as well as
older or deprecated tags, with the Strict DTD excluding deprecated tags. Frameset has all tags necessary to
make frames on a page along with the tags included in
transitional type.
Escaping also allows for characters that are not easily typed, or that are not available in the documents
character encoding, to be represented within element and
attribute content. For example, the acute-accented e (),
a character typically found only on Western European
and South American keyboards, can be written in any
HTML document as the entity reference é or as
the numeric references é or é, using charac26.3 Semantic HTML
ters that are available on all keyboards and are supported
in all character encodings. Unicode character encodings
such as UTF-8 are compatible with all modern browsers Main article: Semantic HTML
and allow direct access to almost all the characters of the
worlds writing systems.[65]
Semantic HTML is a way of writing HTML that emphasizes the meaning of the encoded information over its presentation (look). HTML has included semantic markup
26.2.3 Data types
from its inception,[67] but has also included presentational
markup, such as <font>, <i> and <center> tags. There are
HTML denes several data types for element content, also the semantically neutral span and div tags. Since the
such as script data and stylesheet data, and a plethora of late 1990s when Cascading Style Sheets were beginning
types for attribute values, including IDs, names, URIs, to work in most browsers, web authors have been encournumbers, units of length, languages, media descriptors, aged to avoid the use of presentational HTML markup
colors, character encodings, dates and times, and so on. with a view to the separation of presentation and conAll of these data types are specializations of character tent.[68]
data.
In a 2001 discussion of the Semantic Web, Tim BernersLee and others gave examples of ways in which intelligent software agents may one day automatically crawl
26.2.4 Document type declaration
the web and nd, lter and correlate previously unrelated,
[69]
Such
HTML documents are required to start with a Document published facts for the benet of human users.
Type Declaration (informally, a doctype). In browsers, agents are not commonplace even now, but some of the
the doctype helps to dene the rendering mode ideas of Web 2.0, mashups and price comparison websites may be coming close. The main dierence between
particularly whether to use quirks mode.
these web application hybrids and Berners-Lees semanThe original purpose of the doctype was to enable pars- tic agents lies in the fact that the current aggregation and
ing and validation of HTML documents by SGML tools hybridization of information is usually designed in by web
based on the Document Type Denition (DTD). The developers, who already know the web locations and the
DTD to which the DOCTYPE refers contains a machine- API semantics of the specic data they wish to mash,
readable grammar specifying the permitted and prohib- compare and combine.
ited content for a document conforming to such a DTD.
Browsers, on the other hand, do not implement HTML as An important type of web agent that does crawl and
an application of SGML and by consequence do not read read web pages automatically, without prior knowledge
of what it might nd, is the web crawler or search-engine
the DTD.
spider. These software agents are dependent on the seHTML5 does not dene a DTD; therefore, in HTML5 the mantic clarity of web pages they nd as they use various
doctype declaration is simpler and shorter:[66]
techniques and algorithms to read and index millions of
<!DOCTYPE html>
web pages a day and provide web users with search facilities without which the World Wide Webs usefulness
154
The most common lename extension for les containing HTML is .html. A common abbreviation of this is
.htm, which originated because some early operating systems and le systems, such as DOS and the limitations
HTML documents can be delivered by the same means
imposed by FAT data structure, limited le extensions to
as any other computer le. However, they are most often
three letters.[74]
delivered either by HTTP from a web server or by email.
26.4 Delivery
HTTP
155
standards existed in the early years of the language. formed XHTML 1.0 document that adheres to Appendix
Though its creators originally conceived of HTML as C (see below) into a valid HTML 4.01 document. To
a semantic language devoid of presentation details,[76] make this translation requires the following steps:
practical uses pushed many presentational elements and
attributes into the language, driven largely by the vari1. The language for an element should be specied
ous browser vendors. The latest standards surrounding
with a lang attribute rather than the XHTML
HTML reect eorts to overcome the sometimes chaotic
xml:lang attribute. XHTML uses XMLs built in
development of the language[77] and to create a ratiolanguage-dening functionality attribute.
nal foundation for building both meaningful and wellpresented documents. To return HTML to its role as a se2. Remove the XML namespace (xmlns=URI).
mantic language, the W3C has developed style languages
HTML has no facilities for namespaces.
such as CSS and XSL to shoulder the burden of presentation. In conjunction, the HTML specication has slowly
3. Change the document type declaration from
reined in the presentational elements.
XHTML 1.0 to HTML 4.01. (see DTD section for
further explanation).
There are two axes dierentiating various variations of
HTML as currently specied: SGML-based HTML versus XML-based HTML (referred to as XHTML) on one
axis, and strict versus transitional (loose) versus frameset
on the other axis.
4. If present, remove the XML declaration. (Typically this is: <?xml version="1.0 encoding="utf8"?>).
26.5.1
A well-formed XHTML document adheres to all the syntax requirements of XML. A valid document adheres to
Like HTML 4.01, XHTML 1.0 has three sub- the content specication for XHTML, which describes
the document structure.
specications: strict, transitional and frameset.
Aside from the dierent opening declarations for a doc- The W3C recommends several conventions to ensure an
ument, the dierences between an HTML 4.01 and easy migration between HTML and XHTML (see HTML
XHTML 1.0 documentin each of the corresponding Compatibility Guidelines). The following steps can be
DTDsare largely syntactic. The underlying syntax of applied to XHTML 1.0 documents only:
HTML allows many shortcuts that XHTML does not,
such as elements with optional opening or closing tags,
and even empty elements which must not have an end
tag. By contrast, XHTML requires all elements to have an
opening tag and a closing tag. XHTML, however, also introduces a new shortcut: an XHTML tag may be opened
and closed within the same tag, by including a slash before
the end of the tag like this: <br/>. The introduction of
this shorthand, which is not used in the SGML declaration
for HTML 4.01, may confuse earlier software unfamiliar
with this new convention. A x for this is to include a
space before closing the tag, as such: <br />.[78]
To understand the subtle dierences between HTML and
XHTML, consider the transformation of a valid and well-
Include both xml:lang and lang attributes on any elements assigning language.
Use the empty-element syntax only for elements
specied as empty in HTML.
Include an extra space in empty-element tags: for
example <br /> instead of <br>.
Include explicit close tags for elements that permit content but are left empty (for example,
<div></div>, not <div />).
Omit the XML declaration.
156
By carefully following the W3Cs compatibility guidelines, a user agent should be able to interpret the document equally as HTML or XHTML. For documents that
are XHTML 1.0 and have been made compatible in this
way, the W3C permits them to be served either as HTML
(with a text/html MIME type), or as XHTML (with an
application/xhtml+xml or application/xml MIME type).
When delivered as XHTML, browsers should use an
XML parser, which adheres strictly to the XML specications for parsing the documents contents.
26.5.2
26.5.3
157
HTML
26.5.4
As this list demonstrates, the loose versions of the specication are maintained for legacy support. However, contrary to popular misconceptions, the move to XHTML
does not imply a removal of this legacy support. Rather
the X in XML stands for extensible and the W3C is
modularizing the entire specication and opening it up
to independent extensions. The primary achievement
in the move from XHTML 1.0 to XHTML 1.1 is the
modularization of the entire specication. The strict
version of HTML is deployed in XHTML 1.1 through
a set of modular extensions to the base XHTML 1.1
specication. Likewise, someone looking for the loose
(transitional) or frameset specications will nd similar extended XHTML 1.1 support (much of it is contained in the legacy or frame modules). The modularization also allows for separate features to develop
on their own timetable. So for example, XHTML 1.1
will allow quicker migration to emerging XML standards
such as MathML (a presentational and semantic math
language based on XML) and XFormsa new highly
advanced web-form technology to replace the existing
HTML forms.
HTML lacks some of the features found in earlier hypertext systems, such as source tracking, fat links and
others.[81] Even some hypertext features that were in early
versions of HTML have been ignored by most popular
web browsers until recently, such as the link element and
in-browser Web page editing.
Sometimes Web services or browser manufacturers remedy these shortcomings. For instance, wikis and content
management systems allow surfers to edit the Web pages
they visit.
26.6.1
158
Comparison of HTML parsers
Dynamic web page
HTML decimal character rendering
List of document markup languages
List of XML and HTML character entity references
Microdata (HTML)
Microformat
Polyglot HTML
Semantic HTML
W3C (X)HTML Validator
26.10 References
[1] Flanagan, David. JavaScript - The denitive guide (6 ed.).
p. 1. JavaScript is part of the triad of technologies that
all Web developers must learn: HTML to specify the content of web pages, CSS to specify the presentation of web
pages, and JavaScript to specify the behaviour of web
pages.
[2] HTML 4.0 Specication W3C Recommendation
Conformance: requirements and recommendations.
World Wide Web Consortium. December 18, 1997. Retrieved July 6, 2015.
[3] Tim Berners-Lee, Information Management: A Proposal. CERN (March 1989, May 1990). W3.org
[4] Tim Berners-Lee, Design Issues
[5] Tim Berners-Lee, Design Issues
[6] Tags used in HTML. World Wide Web Consortium.
November 3, 1992. Retrieved November 16, 2008.
[7] First mention of HTML Tags on the www-talk mailing
list. World Wide Web Consortium. October 29, 1991.
Retrieved April 8, 2007.
[8] Index of elements in HTML 4. World Wide Web Consortium. December 24, 1999. Retrieved April 8, 2007.
[9] Tim Berners-Lee (December 9, 1991).
Re:
SGML/HTML docs, X Browser (archived wwwtalk mailing list post)". Retrieved June 16, 2007. SGML
is very general. HTML is a specic application of the
SGML basic syntax applied to hypertext documents with
simple structure.
[10] Raymond, Eric. IETF and the RFC Standards Process.
The Art of Unix Programming. In IETF tradition, standards have to arise from experience with a working prototype implementation but once they become standards,
code that does not conform to them is considered broken
and mercilessly scrapped. ...Internet-Drafts are not specications; software implementers and vendors are specifically barred from claiming compliance with them as if
26.10. REFERENCES
159
[27] Connolly, Daniel (15 July 1992). HTML DTD enclosed. CERN. Retrieved 24 October 2010.
[28] Connolly, Daniel (18 August 1992). document type declaration subset for Hyper Text Markup Language as dened by the World Wide Web project. CERN. Retrieved
24 October 2010.
[29] Connolly, Daniel (24 November 1992). Document Type
Denition for the Hyper Text Markup Language as used
by the World Wide Web application. CERN. Retrieved
24 October 2010. See section Revision History
[30] Berners-Lee, Tim; Connolly, Daniel (June 1993). Hyper
Text Markup Language (HTML) Internet Draft version
1.1. IETF IIIR Working Group. Retrieved 18 September
2010.
[31] Berners-Lee, Tim; Connolly, Daniel (June 1993).
Hypertext Markup Language (HTML) Internet Draft
version 1.2. IETF IIIR Working Group. Retrieved 18
September 2010.
[44] When Will HTML5 Be Finished?". FAQ. WHAT Working Group. Retrieved 29 November 2009.
[62] H56: Using the dir attribute on an inline element to resolve problems with nested directional runs. Techniques
for WCAG 2.0. W3C. Retrieved 18 September 2010.
160
[80] HTML5 Smile, its a Snapshot!". W3C Blog. 201212-17. Retrieved 2013-01-14.
[66] HTML: The Markup Language (an HTML language reference)". Retrieved 2013-08-19.
[83] Spiesser, J., Kitchen, L.: Optimization of HTML automatically generated by WYSIWYG programs. In: 13th
International Conference on World Wide Web, pp. 355
364. WWW '04. ACM, New York, NY (New York, NY,
U.S., May 1720, 2004)
[84] XHTML Reference: blockquote. Xhtml.com. Retrieved
on 2012-02-16.
[71] XHTML 1.0 The Extensible HyperText Markup Language (Second Edition)". World Wide Web Consortium. 2002 [2000]. Retrieved December 7, 2008.
XHTML Documents which follow the guidelines set forth
in Appendix C, HTML Compatibility Guidelines may
be labeled with the Internet Media Type text/html
[RFC2854], as they are compatible with most HTML
browsers. Those documents, and any other document
conforming to this specication, may also be labeled with
the Internet Media Type application/xhtml+xml as dened in [RFC3236].
[72] RFC 2119: Key words for use in RFCs to Indicate Requirement Levels. Harvard University. 1997. Retrieved
December 7, 2008. 3. SHOULD This word, or the adjective RECOMMENDED, mean that there may exist
valid reasons in particular circumstances to ignore a particular item, but the full implications must be understood
and carefully weighed before choosing a dierent course.
[73] XHTML 1.1 Module-based XHTML Second Edition. World Wide Web Consortium. 2007. Retrieved
December 7, 2008. XHTML 1.1 documents SHOULD
be labeled with the Internet Media Type text/html as dened in [RFC2854] or application/xhtml+xml as dened
in [RFC3236].
[74] Naming Files, Paths, and Namespaces. Microsoft. Retrieved 16 March 2015.
[75] Ted Nelson (29 January 1999). Ted Nelsons Computer
Paradigm, Expressed as One-Liners. Xanadu. Retrieved
26 July 2010.
[76] HTML Design Constraints, W3C Archives
[77] WWW:BTB HTML, Pris Sears
[78] Freeman, E (2005). Head First HTML. O'Reilly.
Chapter 27
161
162
ered. HTTP/1.1 communications therefore experience were HTTP/1.1 compliant.[9] The HTTP/1.1 standard as
less latency as the establishment of TCP connections dened in RFC 2068 was ocially released in January
presents considerable overhead.
1997. Improvements and updates to the HTTP/1.1 standard were released under RFC 2616 in June 1999.
27.2 History
Tim Berners-Lee
163
Some of the methods (for example, HEAD, GET, OPTIONS and TRACE) are, by convention, dened as safe,
which means they are intended only for information retrieval and should not change the state of the server. In
other words, they should not have side eects, beyond
relatively harmless eects such as logging, caching, the
serving of banner advertisements or incrementing a web
counter. Making arbitrary GET requests without regard
to the context of the applications state should therefore
HEAD The HEAD method asks for a response identical be considered safe. However, this is not mandated by the
to that of a GET request, but without the response standard, and it is explicitly acknowledged that it cannot
body. This is useful for retrieving meta-information be guaranteed.
GET The GET method requests a representation of the
specied resource. Requests using GET should only
retrieve data and should have no other eect. (This
is also true of some other HTTP methods.)[1] The
W3C has published guidance principles on this distinction, saying, "Web application design should be
informed by the above principles, but also by the relevant limitations.[13] See safe methods below.
164
By contrast, methods such as POST, PUT, DELETE and
PATCH are intended for actions that may cause side effects either on the server, or external side eects such
as nancial transactions or transmission of email. Such
methods are therefore not usually used by conforming
web robots or web crawlers; some that do not conform
tend to make requests without regard to context or consequences.
27.5.3 Security
The TRACE method can be used as part of a class of
attacks known as cross-site tracing; for that reason, common security advice is for it to be disabled in the server
conguration.[21] Microsoft IIS supports a proprietary
TRACK method, which behaves similarly, and which
is likewise recommended to be disabled.[21]
165
Version 1.1 of the protocol also made bandwidth op- 27.11 Response message
timization improvements to HTTP/1.0. For example,
HTTP/1.1 introduced chunked transfer encoding to allow The response message consists of the following:
content on persistent connections to be streamed rather
than buered. HTTP pipelining further reduces lag time,
A status line which includes the status code and reaallowing clients to send multiple requests before waiting
son message (e.g., HTTP/1.1 200 OK, which indifor each response. Another addition to the protocol was
cates that the clients request succeeded).
byte serving, where a server transmits just the portion of
Response header elds (e.g., Content-Type:
a resource explicitly requested by a client.
text/html).
An empty line.
An optional message body.
The status line and other header elds must all end
with <CR><LF>. The empty line must consist of only
<CR><LF> and no other whitespace.[27] This strict requirement for <CR><LF> is relaxed somewhat within
message bodies for consistent use of other system linebreaks such as <CR> or <LF> alone.[29]
A request line containing only the path name is accepted The ETag (entity tag) header eld is used to determine
by servers to maintain compatibility with HTTP clients if a cached version of the requested resource is identibefore the HTTP/1.0 specication in RFC 1945.[28]
cal to the current version of the resource on the server.
166
Most of the header lines are optional. When ContentLength is missing the length is determined in other ways.
Chunked transfer encoding uses a chunk size of 0 to mark
the end of the content. Identity encoding without ContentLength reads content until the socket is closed.
WebSocket
Wireshark
27.15 Notes
Content negotiation
Fiddler (software)
HTTP compression
HTTP/2 developed by the IETFs Hypertext [11] Berners-Lee, Tim; Fielding, Roy T.; Nielsen, Henrik
Transfer Protocol Bis (httpbis) working group.[32]
Frystyk. Method Denitions. Hypertext Transfer Pro HTTP-MPLEX A backwards compatible enhancement to HTTP to improve page and web object retrieval time in congested networks proposed
by Robert Mattson
HTTPS
List of le transfer protocols
27.16 References
HTTP 0.9 As Implemented in 1991
167
Chapter 28
Implementation
Implementation is the realization of an application, or methodology and enlisting professional advice can help
execution of a plan, idea, model, design, specication, but often it is the number of tasks, poor planning and
standard, algorithm, or policy.
inadequate resourcing that causes problems with an implementation project, rather than any of the tasks being
particularly dicult. Similarly with the cultural issues it
is often the lack of adequate consultation and two-way
28.1 Industry-specic denitions
communication that inhibits achievement of the desired
results.
28.1.1
Computer science
Information technology
169
What are the most ecient ways of storing this data?
Types:
Direct changeover
Well-trade
Phased implementation
28.2.1
User concerns
28.2.2
Designer concerns
Application software
28.4 References
[1] The National Implementation Research Network
[2] Laudon, K., & Laudon, J. (2010). Management Information Systems: Managing the Digital Firm. Eleventh
Edition (11 ed.). New Jersey: Prentice Hall.
Chapter 29
Information
For the criminal process, see Information (formal crimi- content of a message.
nal charge).
Information can be encoded into various forms for
Information (shortened as info) is that which informs.
transmission and interpretation (for example, information
may be encoded into a sequence of signs, or transmitted
via a sequence of signals). It can also be encrypted for
safe storage and communication.
101
110
110
110
111
110
110
110
110
0111
1001
1011
1001
0000
0101
0100
1001
0001
Wikipedia
29.1 Etymology
At its most fundamental, information is any propagation of cause and eect within a system. Information is
conveyed either as the content of a message or through direct or indirect observation of some thing. That which is
perceived can be construed as a message in its own right,
and in that sense, information is always conveyed as the
170
171
or even concept.
172
cosmic void can be conceived of as the absence of material information in space (setting aside the virtual particles
that pop in and out of existence due to quantum uctuations, as well as the gravitational eld and the dark energy). Nothingness can be understood then as that within
reviewing information in order to eectively derive which no space, time, energy, matter, or any other type
of information could exist, which would be possible if
value and meaning
symmetry and structure break within the manifold of the
referencing metadata if any is available
multiverse (i.e. the manifold would have tears or holes).
establishing a relevant context, often selecting from Another link is demonstrated by the Maxwells demon
many possible contexts
thought experiment. In this experiment, a direct relationship between information and another physical property,
deriving new knowledge from the information
entropy, is demonstrated. A consequence is that it is im making decisions or recommendations from the re- possible to destroy information without increasing the ensulting knowledge.
tropy of a system; in practical terms this often means generating heat. Another more philosophical outcome is that
Stewart (2001) argues that the transformation of informa- information could be thought of as interchangeable with
tion into knowledge is a critical one, lying at the core of energy. Toyabe et al. experimentally showed in nature
value creation and competitive advantage for the modern that information can be converted into work.[12] Thus, in
enterprise.
the study of logic gates, the theoretical lower bound of
thermal
energy released by an AND gate is higher than
[11]
The Danish Dictionary of Information Terms
argues
for
the
NOT
gate (because information is destroyed in an
that information only provides an answer to a posed quesAND
gate
and
simply converted in a NOT gate). Physical
tion. Whether the answer provides knowledge depends
information
is
of particular importance in the theory of
on the informed person. So a generalized denition of
quantum
computers.
the concept should be: Information = An answer to a
specic question.
tion study
29.6 As a property in physics
Main article: Physical information
29.10. SEMIOTICS
173
Galactic (including dark) matter distribution in a cu- may also be retained for their informational value. Sound
bic section of the Universe
records management ensures that the integrity of records
is preserved for as long as they are required.
Information embedded in an abstract mathematical
The international standard on records management, ISO
object with symmetry breaking nucleus
15489, denes records as information created, received,
Visual representation of a strange attractor, with and maintained as evidence and information by an organization or person, in pursuance of legal obligations or in
converted data of its fractal structure
the transaction of business. The International CommitInformation Security (shortened as InfoSec) is the on- tee on Archives (ICA) Committee on electronic records
going process of exercising due diligence to protect in- dened a record as, a specic piece of recorded inforformation, and information systems, from unauthorized mation generated, collected or received in the initiation,
access, use, disclosure, destruction, modication, disrup- conduct or completion of an activity and that comprises
tion or distribution, through algorithms and procedures sucient content, context and structure to provide proof
focused on monitoring and detection, as well as incident or evidence of that activity.
response and repair.
Information Analysis is the process of inspecting, transforming, and modelling information, by converting
raw data into actionable knowledge, in support of the
decision-making process.
Information Quality (InfoQ) is the potential of a dataset
to achieve a specic (scientic or practical) goal using a
given empirical analysis method..
Information Communication represents the convergence
of informatics, telecommunication and audio-visual media & content.
Records may be maintained to retain corporate memory of the organization or to meet legal, scal or
accountability requirements imposed on the organization. Willis (2005) expressed the view that sound
management of business records and information delivered "...six key requirements for good corporate governance...transparency; accountability; due process; compliance; meeting statutory and common law requirements; and security of personal and corporate information.
29.10 Semiotics
29.8 Technologically mediated information
29.9 As records
Records are specialized forms of information. Essentially, records are information produced consciously or
as by-products of business activities or transactions and
retained because of their value. Primarily, their value is
as evidence of the activities of the organization but they Empirics[17] is the study of the signals used to carry a
174
Information entropy
Nielsen (2008) discusses the relationship between semiotics and information in relation to dictionaries. The concept of lexicographic information costs is introduced and
refers to the eorts users of dictionaries need to make in
order to, rst, nd the data sought and, secondly, understand the data so that they can generate information.
Information inequity
Information overload
Informatics
Information geometry
Information infrastructure
Information management
Information mapping
Information processing
Information processor
Information sensitivity
Information superhighway
Information systems
Information theory
Information Quality (InfoQ)
Infosphere
Lexicographic information cost
Library science
Philosophy of information
Prediction
Propaganda model
Quantum information
Receiver operating characteristic
Relevance
Satiscing
ShannonHartley theorem
175
Luciano Floridi, (2005). 'Is Information Meaningful [10] Bateson, Gregory (1972). ^ Form, Substance, and Difference, in Steps to an Ecology of Mind. University of
Data?', Philosophy and Phenomenological Research,
Chicago Press. pp. 448466.
70 (2), pp. 351 370. Available online at PhilSci
Archive
[11] Informationsordbogen.dk
Luciano Floridi, (2005). 'Semantic Conceptions of [12] http://www.nature.com/news/2010/101114/full/news.
Information', The Stanford Encyclopedia of Philos2010.606.html
ophy (Winter 2005 Edition), Edward N. Zalta (ed.).
[13] The Worlds Technological Capacity to Store, CommuAvailable online at Stanford University
Luciano Floridi, (2010). Information: A Very Short
Introduction, Oxford University Press, Oxford.
Sandro Nielsen: 'The Eect of Lexicographical Information Costs on Dictionary Making and Use',
Lexikos 18/2008, 170-189.
Stewart, Thomas, (2001). Wealth of Knowledge.
Doubleday, New York, NY, 379 p.
Young, Paul. The Nature of Information (1987).
Greenwood Publishing Group, Westport, Ct. ISBN
0-275-92698-2.
29.13 References
[1] http://www.merriam-webster.com/dictionary/
information
[2] A short overview is found in: Luciano Floridi (2010).
Information - A Very Short Introduction. Oxford University Press. ISBN 0-19-160954-4. The goal of this volume
is to provide an outline of what information is...
[3] Stephen B. Wicker, Saejoon Kim (2003). Fundamentals
of Codes, Graphs, and Iterative Decoding. Springer. pp.
1 . ISBN 1-4020-7264-3.
[4] Dusenbery, David B. (1992). Sensory Ecology. W.H.
Freeman., New York. ISBN 0-7167-2333-6.
[5] Vigo, R. (2011).
Representational information:
a new general notion and measure of information.
Information Sciences.
181: 48474859.
doi:10.1016/j.ins.2011.05.020.
[6] Vigo, R (2013). Complexity over Uncertainty in Generalized Representational Information Theory (GRIT): A
Structure-Sensitive General Theory of Information. Information. 4 (1): 130. doi:10.3390/info4010001.
[7] Vigo, R. (2014). Mathematical Principles of Human
Conceptual Behavior: The Structural Nature of Conceptual Representation and Processing. Scientic Psychology Series, Routledge, New York and London; ISBN
0415714362.
[8] Shannon, Claude E. (1949). The Mathematical Theory of
Communication.
[9] Casagrande, David (1999). Information as verb: Reconceptualizing information for cognitive and ecological
models (PDF). Journal of Ecological Anthropology. 3
(1): 413. doi:10.5038/2162-4593.3.1.1.
Chapter 30
30.1 Name
IEEE stands for the Institute of Electrical and Electronics Engineers. The association is chartered under this
full legal name. IEEEs membership has long been composed of engineers and scientists. Allied professionals
who are members include computer scientists, software
developers, information technology professionals, physicists, and medical doctors, in addition to IEEEs electrical
and electronics engineering core. For this reason the organization no longer goes by the full name, except on legal
business documents, and is referred to simply as IEEE.
The IEEE is dedicated to advancing technological innovation and excellence. It has about 430,000 members in
about 160 countries, slightly less than half of whom reside
in the United States.[3][4]
30.2 History
The major interests of the AIEE were wire communications (telegraphy and telephony) and light and power sys- Notable presidents of IEEE and its founding organi176
30.4. PUBLICATIONS
zations include Elihu Thomson (AIEE, 18891890),
Alexander Graham Bell (AIEE, 18911892), Charles
Proteus Steinmetz (AIEE, 19011902), Robert H. Marriott (IRE, 1912), Lee De Forest (IRE, 1930), Frederick
E. Terman (IRE, 1941), William R. Hewlett (IRE, 1954),
Ernst Weber (IRE, 1959; IEEE, 1963), and Ivan Getting
(IEEE, 1978).
177
by various engineering societies as a formal repository
of topic articles, oral histories, rst-hand histories, Landmarks + Milestones and archival documents. The IEEE
History Center is annexed to Stevens University Hoboken, NJ.
In 2016, the IEEE acquired GlobalSpec, adding the provision of engineering data for a prot to its organizational
portfolio.[7]
30.3 Organization
30.4 Publications
The IEEE is incorporated under the Not-for-Prot Corporation Law of the state of New York.[5] It was formed
Main article: List of Institute of Electrical and Electronin 1963 by the merger of the Institute of Radio Engineers
ics Engineers publications
(IRE, founded 1912) and the American Institute of Electrical Engineers (AIEE, founded 1884).
IEEE produces over 30% of the worlds literature in the
IEEEs Constitution denes the purposes of the organielectrical and electronics engineering and computer scization as scientic and educational, directed toward the
ence elds, publishing well over 100 peer-reviewed jouradvancement of the theory and practice of Electrical,
nals.[8]
Electronics, Communications and Computer Engineering, as well as Computer Science, the allied branches The published content in these journals as well as the conof engineering and the related arts and sciences.[1] In tent from several hundred annual conferences sponsored
pursuing these goals, the IEEE serves as a major pub- by the IEEE are available in the IEEE online digital lilisher of scientic journals and organizer of conferences, brary, IEEE Xplore, for subscription-based access and inworkshops, and symposia (many of which have associ- dividual publication purchases.[9]
ated published proceedings). It is also a leading standards In addition to journals and conference proceedings, the
development organization for the development of indus- IEEE also publishes tutorials and the standards that are
trial standards (having developed over 900 active indus- produced by its standardization committees.
try technical standards) in a broad range of disciplines,
including electric power and energy, biomedical technology and healthcare, information technology, information
30.5 Educational activities
assurance, telecommunications, consumer electronics,
transportation, aerospace, and nanotechnology. IEEE develops and participates in educational activities such as The IEEE provides learning opportunities within the enaccreditation of electrical engineering programs in insti- gineering sciences, research, and technology. The goal
tutes of higher learning. The IEEE logo is a diamond- of the IEEE education programs is to ensure the growth
shaped design which illustrates the right hand grip rule of skill and knowledge in the electricity-related technical
embedded in Benjamin Franklin's kite, and it was created professions and to foster individual commitment to continuing education among IEEE members, the engineering
at the time of the 1963 merger.[6]
and scientic communities, and the general public.
IEEE has a dual complementary regional and technical
structure with organizational units based on geogra- IEEE oers educational opportunities such as IEEE e
[10]
[11]
phy (e.g., the IEEE Philadelphia Section, the IEEE Bue- Learning Library, the Education Partners Program,
[12]
and Continuing Education
naventura Section, IEEE South Africa Section ) and tech- Standards in Education
[13]
nical focus (e.g., the IEEE Computer Society). It man- Units (CEUs).
ages a separate organizational unit (IEEE-USA) which IEEE eLearning Library is a collection of online edurecommends policies and implements programs speci- cational courses designed for self-paced learning. Edcally intended to benet the members, the profession and ucation Partners, exclusive for IEEE members, oers
the public in the United States.
on-line degree programs, certications and courses at a
The IEEE includes 39 technical Societies, organized 10% discount. The Standards in Education website exaround specialized technical elds, with more than 300 plains what standards are and the importance of developing and using them. The site includes tutorial modlocal organizations that hold regular meetings.
ules and case illustrations to introduce the history of stanThe IEEE Standards Association is in charge of the stan- dards, the basic terminology, their applications and imdardization activities of the IEEE.
pact on products, as well as news related to standards,
The IEEE History Center became a feeder organiza- book reviews and links to other sites that contain intion to the Engineering and Technology History Wiki formation on standards. Currently, twenty-nine states
(ETHW) in 2015. The new ETHW is a cooperative eort in the United States require Professional Development
178
Hours (PDH) to maintain a Professional Engineering license, encouraging engineers to seek Continuing Education Units (CEUs) for their participation in continuing
education programs. CEUs readily translate into Professional Development Hours (PDHs), with 1 CEU being equivalent to 10 PDHs. Countries outside the United
States, such as South Africa, similarly require continuing
professional development (CPD) credits, and it is anticipated that IEEE Expert Now courses will feature in the
CPD listing for South Africa.
30.8 Membership
grades
and
member
Most IEEE members are electrical and electronics engineers, but the organizations wide scope of interests
has attracted people in other disciplines as well (e.g.,
[14]
IEEE also sponsors a website
designed to help young computer science, software engineering, mechanical
people better understand engineering, and how an engi- engineering, civil engineering, biology, physics, and
neering career can be made part of their future. Stu- mathematics).
dents of age 818, parents, and teachers can explore An individual can join the IEEE as a student member,
the site to prepare for an engineering career, ask experts professional member, or associate member. In order to
engineering-related questions, play interactive games, ex- qualify for membership, the individual must fulll certain
plore curriculum links, and review lesson plans. This academic or professional criteria and abide to the code of
website also allows students to search for accredited engi- ethics and bylaws of the organization. There are several
neering degree programs in Canada and the United States; categories and levels of IEEE membership and aliation:
visitors are able to search by state/province/territory,
country, degree eld, tuition ranges, room and board
Student Members: Student membership is availranges, size of student body, and location (rural, suburable for a reduced fee to those who are enrolled in
ban, or urban).
an accredited institution of higher education as unThrough the Student Activities Committee, IEEE facilitates partnership between student activities and all other
IEEE entities.[15]
30.9. AWARDS
179
The Senior Members are a selected group, and certain IEEE ocer positions are available only to Senior (and Fellow) Members. Senior Membership is
also one of the requirements for those who are nominated and elevated to the grade IEEE Fellow, a distinctive honor.
Fellow Members: The Fellow grade of membership is the highest level of membership, and cannot
be applied for directly by the member instead the
candidate must be nominated by others. This grade
of membership is conferred by the IEEE Board of
Directors in recognition of a high level of demonstrated extraordinary accomplishment.
30.9 Awards
Through its awards program, the IEEE recognizes contributions that advance the elds of interest to the IEEE. For
nearly a century, the IEEE Awards Program has paid tribute to technical professionals whose exceptional achievements and outstanding contributions have made a lasting
impact on technology, society and the engineering profession.
Funds for the awards program, other than those provided
by corporate sponsors for some awards, are administered
by the IEEE Foundation.
30.9.1
Medals
180
30.9.5 Scholarships
IEEE Life Members Graduate Study Fellowship
in Electrical Engineering was established by the
IEEE in 2000. The fellowship is awarded annually
to a rst year, full-time graduate student obtaining
their masters for work in the area of electrical engineering, at an engineering school/program of recognized standing worldwide.[17]
IEEE Charles LeGeyt Fortescue Graduate
Scholarship was established by the IRE in 1939
to commemorate Charles Legeyt Fortescue's contributions to electrical engineering. The scholarship
is awarded for one year of full-time graduate work
obtaining their masters in electrical engineering an
ANE engineering school of recognized standing in
the United States.[18]
Competitions
IEEEmadC
30.10 Societies
IEEE Kiyo Tomiyasu Award (for technologies hold- Various technical areas are addressed by IEEEs 39 societies, each one focused on a certain knowledge area. They
ing the promise of innovative applications)
provide specialized publications, conferences, business
IEEE Transportation Technologies Award
networking and sometimes other services.[19][20]
181
182
Re-
IEEE. Retrieved
Eta Kappa Nu, the electrical and computer engineering honor society of the IEEE
[4] IEEE 2013 Annual Report. IEEE. March 2014. Retrieved March 24, 2014.
[7] IEEE Acquires GlobalSpec and the Engineering360 Platform from IHS to Create Powerful New Resource for the
Global Engineering Community. IEEE. April 29, 2016.
Retrieved 2016-04-29.
[8] About IEEE
[9] IEEEs online digital library
[10] IEEE IEEE Expert Now
[11] IEEE IEEE Education Partners Program
[12] IEEE The IEEE Standards Education pages have moved
Chapter 31
Interaction protocol
Interaction protocols are possible communication scenarios between individual agents in multi-agent systems.
FIPA denes markup for interaction protocol diagrams
and several standard interaction protocols, including
Dutch auction, English auction and reply-response.
183
Chapter 32
32.3 History
32.1 Overview
ISO, the International Organization for Standardization,
is an independent, non-governmental organization, the
members of which are the standards organizations of the
162 member countries. It is the worlds largest developer
of voluntary international standards and facilitates world
trade by providing common standards between nations.
Nearly twenty thousand standards have been set covering
Plaque marking the building in Prague where the ISOs predeceseverything from manufactured products and technology
sor, the ISA, was founded.
to food safety, agriculture and healthcare.[4]
(Click to enlarge / read.)
Use of the standards aids in the creation of products
and services that are safe, reliable and of good quality.
The standards help businesses increase productivity while
minimizing errors and waste. By enabling products from
dierent markets to be directly compared, they facilitate companies in entering new markets and assist in the
development of global trade on a fair basis. The standards also serve to safeguard consumers and the end-users
of products and services, ensuring that certied products
conform to the minimum standards set internationally.[4]
184
32.6. FINANCING
185
ganization for Standardization; the new organization ofcially began operations in February 1947.[10]
32.4 Structure
ISO is a voluntary organization whose members are recognized authorities on standards, each one representing
one country. Members meet annually at a General Assembly to discuss ISOs strategic objectives. The orga- ISO member countries with a national standards body and ISO
nization is coordinated by a Central Secretariat based in voting rights.
Geneva.[11]
Correspondent members (countries without a national standards
body).
32.4.1
32.6 Financing
ISO is funded by a combination of:[18]
ISO/IEC JTC 2
Joint Project Committee Energy eciency and renewable energy sources Common terminology
ISO/IEC Joint Technical Committee 2 (JTC 2) was
created in 2009 for the purpose of "[s]tandardization
in the eld of energy eciency and renewable energy
sources.[17]
32.5 Membership
ISO has 162 national members,[2] out of the 206 total See also: List of International Organization for Stancountries in the world.
dardization standards
ISO has three membership categories:[2]
186
187
ISO/IEC 13818-
Other abbreviations:[25][26][28][29]
TR Technical Report (e.g., ISO/IEC TR
19791:2006)
DTR Draft Technical Report (e.g., ISO/IEC DTR
19791)
TS Technical Specication (e.g.,
16949:2009)
ISO/TS
188
of Oce Open XML process by saying I think it devalues the condence people have in the standards setThe fact that many of the ISO-created standards are ubiq- ting process, and Shuttleworth alleged that ISO did not
uitous has led, on occasion, to common use of ISO to carry out its responsibility. He also noted that Microsoft
describe the actual product that conforms to a standard. had intensely lobbied many countries that traditionally
had not participated in ISO and stacked technical comSome examples of this are:
mittees with Microsoft employees, solution providers and
resellers sympathetic to Oce Open XML.
Many CD images end in the le extension "ISO" to
signify that they are using the ISO 9660 standard
When you have a process built on trust and
le system as opposed to another le systemhence
when
that trust is abused, ISO should halt the
CD images are commonly referred to as ISOs.
process...
ISO is an engineering old boys club
Virtually all computers with CD-ROM drives that
and
these
things
are boring so you have to have
can read CDs use this standard. Some DVD-ROMs
a
lot
of
passion
32.9 Criticism
With the exception of a small number of isolated
standards,[32] ISO standards are normally not available
free of charge, but for a purchase fee,[33] which has been
seen by some as too expensive for small open source
projects.[34]
The ISO/IEC JTC1 fast-track procedures (Fast-track as
used by OOXML and PAS as used by OpenDocument)
have garnered criticism in relation to the standardization
of Oce Open XML (ISO/IEC 29500). Martin Bryan,
outgoing Convenor of ISO/IEC JTC1/SC34 WG1, is
quoted as saying:
I would recommend my successor that it is
perhaps time to pass WG1s outstanding standards over to OASIS, where they can get approval in less than a year and then do a PAS
submission to ISO, which will get a lot more attention and be approved much faster than standards currently can be within WG1.
[1] The three ocial full names of the ISO can be found at the
beginning of the foreword sections of the PDF document:
ISO/IEC Guide 2:2004 Standardization and related activities General vocabulary (PDF). Archived (PDF)
from the original on 21 July 2011.
[2] ISO members. International Organization for Standardization. Archived from the original on 9 February 2015.
[3] How to use the ISO Catalogue. ISO.org. Archived from
the original on 4 October 2007.
[4] About ISO. ISO. Archived from the original on 4 October 2007.
[5] The number of membre working countries an be found on
the rst page of the report. Annual Report 2013 (PDF).
ISO. Retrieved 18 June 2014.
[6] About ISO - Our name. ISO. Archived from the original
on 19 September 2012.
[7] Friendship among equals (PDF). ISO. (page 20)
[8] ISO name and logo. ISO. Archived from the original on
19 September 2012.
[12] Council. International Organization for Standardization. Archived from the original on 3 November 2012.
[13] Technical committees. International Organization for
Standardization. Archived from the original on 19
September 2012.
[14] Who develops ISO standards?". International Organization for Standardization. Archived from the original on 19
September 2012.
[15] Governance of technical work. International Organization for Standardization. Archived from the original on 19
September 2012.
[16] ISO/IEC JTC 1. International Organization for Standardization. Archived from the original on 15 December
2011.
[17] ISO/IEC JPC 2 Joint Project Committee - Energy eciency and renewable energy sources - Common terminology. International Organization for Standardization.
Archived from the original on 6 October 2012.
[18] General information on ISO. ISO. Archived from the
original on 5 October 2007.
[19] The ISO directives are published in two distinct parts:
ISO/IEC Directives, Part 1: Procedures for the
technical work (PDF). ISO/IEC. 2012. Archived
(PDF) from the original on 13 June 2012.
ISO/IEC Directives, Part 2: Rules for the structure
and drafting of International Standards (PDF).
ISO/IEC. 2011. Archived (PDF) from the original
on 16 October 2011.
[20] ISO. ISO/IEC Directives and ISO supplement.
Archived from the original on 16 May 2008.
[21] About MPEG. chiariglione.org. Archived from the
original on 21 February 2010.
[22] ISO. International harmonized stage codes. Archived
from the original on 4 October 2007.
[23] ISO. Stages of the development of International Standards. Archived from the original on 12 August 2007.
[24] The ISO27k FAQ - ISO/IEC acronyms and committees.
IsecT Ltd. Archived from the original on 24 November
2005.
[25] ISO (2007). ISO/IEC Directives Supplement Procedures specic to ISO (PDF). Archived (PDF) from the
original on 12 January 2012.
[26] ISO (2007). List of abbreviations used throughout ISO
Online. Archived from the original on 12 August 2007.
[27] US Tag Committee Handbook (DOC). March 2008.
[28] ISO/IEC JTC1 (2 November 2009), Letter Ballot on the
JTC 1 Standing Document on Technical Specications and
Technical Reports (PDF)
[29] ISO. ISO deliverables. Archived from the original on
12 August 2007.
189
Chapter 33
33.1 History
Monument in Bern, Switzerland. The text reads: Union Tlgraphique Internationale fonde Paris en 1865 sur l'initiative
du gouvernement franais. rig par dcision de l'Union Tlgraphique prise la confrence internationale de Lisbonne en
1908. (In English: International Telegraph Union founded at
Paris in 1865 on the initiative of the French government. [This
monument] erected by a decision of the Telegraph Union made
at the international conference at Lisbon in 1908.)
ITU was formed in 1865 at the International Telegraph Convention; this makes it one of the oldest
intergovernmental organizations in the world.[4][5] ITU
became a United Nations specialized agency in 1947.[5]
33.4. LEADERSHIP
191
French name Comit consultatif international tlphonique et tlgraphique), this sector standardizes
global telecommunications (except for radio).[7] In
1993, the CCITT became the ITU-T.
Development (ITU-D) Established in 1992, this sector
helps spread equitable, sustainable and aordable
access to information and communication technologies (ICT).
ITU Telecom ITU Telecom organizes major events for
the worlds ICT community.
A permanent General Secretariat, headed by the Secretary General, manages the day-to-day work of the Union International Telecommunication Union anniversary 150
years. Post of Azerbaijan, 2015.
and its sectors.
33.4 Leadership
The ITU is headed by a Secretary-General, who is elected
to a four-year term by the member states at the ITU
Plenipotentiary Conference.
Secretaries-
33.6 Membership
192
ers, funding bodies, research and development organizations and international and regional telecommunication
organizations, which may join ITU as non-voting Sector
Members.[11]
(WCIT-12) in Dubai.
WCIT-12 was a treatylevel conference to address International Telecommunications Regulations, the international rules for
telecommunications, including international taris.[17]
the Regulations
There are 193 Member States of the ITU, which are all The previous conference to update [18]
(ITRs)
was
held
in
Melbourne
in
1988.
[12]
UN member states, plus Vatican City.
The most recent member state to join the ITU is South Sudan, which In August 2012, ITU called for a public consultation on a
became a member on 14 July 2011.[13]
draft document ahead of the conference.[19] It is claimed
The Republic of China (Taiwan) was blocked from mem- the proposal would allow government restriction or blockbership by the Peoples Republic of China, but never- ing of information disseminated via the internet and cretheless received a country code, being listed as Tai- ate a global regime of monitoring internet communicawan, China.[14] Palestine was admitted as an observer tions, including the demand that those who send and receive information identify themselves. It would also allow
in 2010.[15]
governments to shut down the internet if there is the belief that it may interfere in the internal aairs of other
states or that information of a sensitive nature might be
33.6.1 Regional groupings
shared.[20]
Member states of the ITU are organized into six regional Telecommunications ministers from 193 countries atgroups:
tended the conference in Dubai.[20]
Asia-Pacic Telecommunity (APT)
Arab Spectrum Management Group (ASMG)
193
33.8.3
194
33.10 References
[1] International Telecommunication Union
[2] UNDG Members. Undg.org. Retrieved 15 May 2012.
[3] About ITU. International Telecommunication Union.
Retrieved 2011-03-20.
[4] Norman A. Graham; Robert S. Jordan (22 October 2013).
The International Civil Service: Changing Role and Concepts. Elsevier. p. 105. ISBN 978-1-4831-4799-4.
[5] Carl Malamud (1992). Exploring the Internet: A Technical
Travelogue. Carl Malamud. p. 384. ISBN 978-0-13296898-0.
[6] Sector Members, Associates and Academia. ITU. Retrieved 15 May 2014.
[7] Deutsches Institut fr Normung (1998). An Introduction
to Standards and Standardization. Beuth Verlag. p. 266.
ISBN 9783410141495. Retrieved 15 May 2014.
[8] Basic texts of the International Telecommunication
Union. Itu.int. Retrieved 15 May 2012.
[9] PP10contributions. 2010 Plenipotentiary Conference.
Itu.int. Retrieved 15 May 2012.
[10] ITU Management team inauguration on 15 January
2015. Retrieved 25 March 2015.
[11] Constitution of ITU: Chapter I Basic Provisions. Retrieved 14 April 2013.
[12] International Telecommunication Union Member
States.
International Telecommunication Union.
Retrieved 18 July 2013.
[13] New Country, New Number Country code 211 ocially
assigned to South Sudan ITU Pressroom, 14 July 2011
[14] ITU-T : International Numbering Resources : National
Numbering Plans : China, Taiwan. Itu.int. 26 January
2007. Retrieved 15 May 2012.
[15] Palestine ITU status. Itu.int. 20 October 2010. Retrieved 15 May 2012.
[16] World Summit on the Information Society. itu.int. Retrieved 11 October 2012.
[17] World Conference on International Telecommunications
2012. Itu.int. Retrieved 12 October 2012.
[18] International Telecommunication Regulations (PDF).
Retrieved 12 October 2012.
[19] ITU opens public consultation on internet regulation
treaty. 16 August 2012. Retrieved November 2012.
Check date values in: |access-date= (help)
[20] United Nations wants control of web kill switch.
news.com.au. 12 November 2012. Retrieved November
2012. Check date values in: |access-date= (help)
[21] Global Internet usage
Chapter 34
Internet
This article is about the worldwide computer network. email, Internet telephony, Internet television music, digFor other uses, see Internet (disambiguation).
ital newspapers, and video streaming websites. NewsNot to be confused with the World Wide Web.
paper, book, and other print publishing are adapting to
website technology, or are reshaped into blogging, web
The Internet is the global system of interconnected feeds and online news aggregators (e.g., Google News).
computer networks that use the Internet protocol suite The entertainment industry was initially the fastest grow(TCP/IP) to link billions of devices worldwide. It is a net- ing segment on the Internet. The Internet has enabled and
work of networks that consists of millions of private, pub- accelerated new forms of personal interactions through
lic, academic, business, and government networks of lo- instant messaging, Internet forums, and social networkcal to global scope, linked by a broad array of electronic, ing. Online shopping has grown exponentially both for
wireless, and optical networking technologies. The Inter- major retailers and small businesses and entrepreneurs, as
net carries an extensive range of information resources it enables rms to extend their "bricks and mortar" presand services, such as the inter-linked hypertext docu- ence to serve a larger market or even sell goods and serments and applications of the World Wide Web (WWW), vices entirely online. Business-to-business and nancial
electronic mail, voice over IP telephony, and peer-to-peer services on the Internet aect supply chains across entire
industries.
networks for le sharing.
The origins of the Internet date back to research commissioned by the United States federal government in
the 1960s to build robust, fault-tolerant communication
via computer networks.[1] The primary precursor network, the ARPANET, initially served as a backbone for
interconnection of regional academic and military networks in the 1980s. The funding of the National Science
Foundation Network as a new backbone in the 1980s,
as well as private funding for other commercial extensions, led to worldwide participation in the development
of new networking technologies, and the merger of many
networks.[2] The linking of commercial networks and
enterprises by the early 1990s marks the beginning of
the transition to the modern Internet,[3] and generated
a sustained exponential growth as generations of institutional, personal, and mobile computers were connected
to the network. Although the Internet was widely used by
academia since the 1980s, the commercialization incorporated its services and technologies into virtually every
aspect of modern life.
Internet use grew rapidly in the West from the mid-1990s
and from the late 1990s in the developing world.[4] In the
20 years since 1995, Internet use has grown 100-times,
measured for the period of one year, to over one third
of the world population.[5][6] Most traditional communications media, including telephony, radio, television,
paper mail and newspapers are being reshaped or redened by the Internet, giving birth to new services such as
The Internet has no centralized governance in either technological implementation or policies for access and usage; each constituent network sets its own policies.[7]
Only the overreaching denitions of the two principal
name spaces in the Internet, the Internet Protocol address
space and the Domain Name System (DNS), are directed
by a maintainer organization, the Internet Corporation
for Assigned Names and Numbers (ICANN). The technical underpinning and standardization of the core protocols is an activity of the Internet Engineering Task Force
(IETF), a non-prot organization of loosely aliated international participants that anyone may associate with by
contributing technical expertise.[8]
34.1 Terminology
See also: Capitalization of Internet
The term Internet, when used to refer to the specic global
system of interconnected Internet Protocol (IP) networks,
is a proper noun[9] and may be written with an initial
capital letter. In common use and the media, it is often not capitalized, viz. the internet. Some guides specify
that the word should be capitalized when used as a noun,
but not capitalized when used as an adjective.[10] The Internet is also often referred to as the Net, as a short form
of network. Historically, as early as 1849, the word inter-
195
196
34.2 History
T3 NSFNET Backbone, c. 1992.
34.3. GOVERNANCE
197
a low-speed satellite relay between Princeton University all telecommunicated information was carried over the
and Stockholm, Sweden in December 1988.[35] Although Internet.[46]
other network protocols such as UUCP had global reach
well before this time, this marked the beginning of the
Internet as an intercontinental network.
34.3 Governance
Slightly over a year later in March 1990, the rst highspeed T1 (1.5 Mbit/s) link between the NSFNET and
Europe was installed between Cornell University and
CERN, allowing much more robust communications than
were capable with satellites.[36] Six months later Tim
Berners-Lee would begin writing WorldWideWeb, the
rst web browser after two years of lobbying CERN management. By Christmas 1990, Berners-Lee had built all
the tools necessary for a working Web: the HyperText
Transfer Protocol (HTTP) 0.9,[37] the HyperText Markup
Language (HTML), the rst Web browser (which was
also a HTML editor and could access Usenet newsgroups and FTP les), the rst HTTP server software
(later known as CERN httpd), the rst web server (http:
//info.cern.ch), and the rst Web pages that described the
project itself. Public commercial use of the Internet began in mid-1989 with the connection of MCI Mail and
Compuserve's email capabilities to the 500,000 users of
the Internet. [38] Just months later on January 1, 1990,
PSInet launched an alternate Internet backbone for commercial use; one of the networks that would grow into
the commercial Internet we know today. In 1991 the
Commercial Internet eXchange was founded, allowing
PSInet to communicate with the other commercial networks CERFnet and Alternet. Since 1995 the Internet
has tremendously impacted culture and commerce, including the rise of near instant communication by email,
instant messaging, telephony (Voice over Internet Protocol or VoIP), two-way interactive video calls, and the
World Wide Web[39] with its discussion forums, blogs,
social networking, and online shopping sites. Increasing amounts of data are transmitted at higher and higher
speeds over ber optic networks operating at 1-Gbit/s,
10-Gbit/s, or more.
ICANN headquarters in the Playa Vista neighborhood of Los Angeles, California, United States.
untarily interconnected autonomous networks. It operates without a central governing body. The technical
underpinning and standardization of the core protocols
(IPv4 and IPv6) is an activity of the Internet Engineering
Task Force (IETF), a non-prot organization of loosely
aliated international participants that anyone may associate with by contributing technical expertise. To maintain interoperability, the principal name spaces of the
Internet are administered by the Internet Corporation
for Assigned Names and Numbers (ICANN). ICANN
is governed by an international board of directors drawn
from across the Internet technical, business, academic,
and other non-commercial communities. ICANN coordinates the assignment of unique identiers for use on
the Internet, including domain names, Internet Protocol
(IP) addresses, application port numbers in the transport
protocols, and many other parameters. Globally unied
name spaces are essential for maintaining the global reach
of the Internet. This role of ICANN distinguishes it as
perhaps the only central coordinating body for the global
Internet.[47]
198
Latin American and Caribbean Internet Addresses
Registry (LACNIC) for Latin America and the
Caribbean region
Rseaux IP Europens Network Coordination
Centre (RIPE NCC) for Europe, the Middle East,
and Central Asia
The National Telecommunications and Information Administration, an agency of the United States Department of Commerce, continues to have nal approval over
changes to the DNS root zone.[48][49][50] The Internet Society (ISOC) was founded in 1992 with a mission to assure the open development, evolution and use of the Internet for the benet of all people throughout the world.[51]
Its members include individuals (anyone may join) as
well as corporations, organizations, governments, and
universities. Among other activities ISOC provides an
administrative home for a number of less formally organized groups that are involved in developing and managing the Internet, including: the Internet Engineering
Task Force (IETF), Internet Architecture Board (IAB),
Internet Engineering Steering Group (IESG), Internet
Research Task Force (IRTF), and Internet Research
Steering Group (IRSG). On 16 November 2005, the
United Nations-sponsored World Summit on the Information Society in Tunis established the Internet Governance Forum (IGF) to discuss Internet-related issues.
PoP #3
Tier 1 Networks
Transit
Tier 2 Networks
Transit
Peering
PoP #2
PoP #1
Tier 2 ISP
IXP
Transit
Tier 3 Network
(multi-homed ISP)
Transit
Tier 3 Network
(single homed ISP)
Internet users
(business, consumers, etc)
2007 map showing submarine beroptic telecommunication cables around the world.
34.4.2 Access
34.5. PROTOCOLS
Many hotels also have public terminals, though these are
usually fee-based. These terminals are widely accessed
for various usages, such as ticket booking, bank deposit,
or online payment. Wi-Fi provides wireless access to the
Internet via local computer networks. Hotspots providing such access include Wi-Fi cafes, where users need to
bring their own wireless devices such as a laptop or PDA.
These services may be free to all, free to customers only,
or fee-based.
Grassroots eorts have led to wireless community networks. Commercial Wi-Fi services covering large city
areas are in place in New York, London, Vienna, Toronto,
San Francisco, Philadelphia, Chicago and Pittsburgh.
The Internet can then be accessed from such places as
a park bench.[53] Apart from Wi-Fi, there have been experiments with proprietary mobile wireless networks like
Ricochet, various high-speed data services over cellular phone networks, and xed wireless services. Highend mobile phones such as smartphones in general come
with Internet access through the phone network. Web
browsers such as Opera are available on these advanced
handsets, which can also run a wide variety of other Internet software. More mobile phones have Internet access
than PCs, though this is not as widely used.[54] An Internet access provider and protocol matrix dierentiates the
methods used to get online.
34.4.3
Structure
199
simply informative, experimental, or historical, or document the best current practices (BCP) when implementing Internet technologies.
The Internet standards describe a framework known as
the Internet protocol suite. This is a model architecture that divides methods into a layered system of protocols, originally documented in RFC 1122 and RFC 1123.
The layers correspond to the environment or scope in
which their services operate. At the top is the application
layer, space for the application-specic networking methods used in software applications. For example, a web
browser program uses the client-server application model
and a specic protocol of interaction between servers and
clients, while many le-sharing systems use a peer-topeer paradigm. Below this top layer, the transport layer
connects applications on dierent hosts with a logical
channel through the network with appropriate data exchange methods.
Underlying these layers are the networking technologies
that interconnect networks at their borders and hosts via
the physical connections. The Internet layer enables computers to identify and locate each other via Internet Protocol (IP) addresses, and routes their trac via intermediate (transit) networks. Last, at the bottom of the architecture is the link layer, which provides connectivity between hosts on the same network link, such as a physical
connection in the form of a local area network (LAN) or a
dial-up connection. The model, also known as TCP/IP, is
designed to be independent of the underlying hardware,
which the model, therefore, does not concern itself with
in any detail. Other models have been developed, such
as the OSI model, that attempt to be comprehensive in
every aspect of communications. While many similarities exist between the models, they are not compatible
in the details of description or implementation; indeed,
TCP/IP protocols are usually included in the discussion
of OSI networking.
Application
Data
34.5 Protocols
While the hardware components in the Internet infrastructure can often be used to support other software systems, it is the design and the standardization process of
the software that characterizes the Internet and provides
the foundation for its scalability and success. The responsibility for the architectural design of the Internet software systems has been assumed by the Internet Engineering Task Force (IETF).[59] The IETF conducts standardsetting work groups, open to any individual, about the
various aspects of Internet architecture. Resulting contributions and standards are published as Request for Comments (RFC) documents on the IETF web site. The principal methods of networking that enable the Internet are
contained in specially designated RFCs that constitute the
Internet Standards. Other less rigorous documents are
IP
header
Frame
header
UDP UDP
header data
Transport
IP data
Internet
Frame data
Frame
footer
Link
As user data is processed through the protocol stack, each abstraction layer adds encapsulation information at the sending
host. Data is transmitted over the wire at the link level between
hosts and routers. Encapsulation is removed by the receiving host.
Intermediate relays update link encapsulation at each hop, and
inspect the IP layer for routing purposes.
200
the Internet Protocol (IP), which provides addressing systems (IP addresses) for computers on the Internet. IP
enables internetworking and, in essence, establishes the
Internet itself. Internet Protocol Version 4 (IPv4) is the
initial version used on the rst generation of the Internet
and is still in dominant use. It was designed to address
up to ~4.3 billion (109 ) Internet hosts. However, the explosive growth of the Internet has led to IPv4 address exhaustion, which entered its nal stage in 2011,[60] when
the global address allocation pool was exhausted. A new
protocol version, IPv6, was developed in the mid-1990s,
which provides vastly larger addressing capabilities and
more ecient routing of Internet trac. IPv6 is currently
in growing deployment around the world, since Internet
address registries (RIRs) began to urge all resource man- This NeXT Computer was used by Tim Berners-Lee at CERN and
became the worlds rst Web server.
agers to plan rapid adoption and conversion.[61]
IPv6 is not directly interoperable by design with IPv4. In
essence, it establishes a parallel version of the Internet
not directly accessible with IPv4 software. Thus, translation facilities must exist for internetworking or nodes
must have duplicate networking software for both networks. Essentially all modern computer operating systems support both versions of the Internet Protocol. Network infrastructure, however, is still lagging in this development. Aside from the complex array of physical connections that make up its infrastructure, the Internet is
facilitated by bi- or multi-lateral commercial contracts,
e.g., peering agreements, and by technical specications
or protocols that describe the exchange of data over the
network. Indeed, the Internet is dened by its interconnections and routing policies.
34.6 Services
The Internet carries many network services, most prominently mobile apps such as social media apps, the World
Wide Web, electronic mail, multiplayer online games,
Internet telephony, and le sharing services.
34.6.1
Many people use the terms Internet and World Wide Web,
or just the Web, interchangeably, but the two terms are
not synonymous. The World Wide Web is the primary
application that billions of people use on the Internet, and
it has changed their lives immeasurably.[62][63] However,
the Internet provides many other services. The Web is
a global set of documents, images and other resources,
logically interrelated by hyperlinks and referenced with
Uniform Resource Identiers (URIs). URIs symbolically identify services, servers, and other databases,
and the documents and resources that they can provide.
Hypertext Transfer Protocol (HTTP) is the main access
protocol of the World Wide Web. Web services also use
HTTP to allow software systems to communicate in order
34.6. SERVICES
201
no extra features may be line-powered only and operate during a power failure; VoIP can never do so without a
backup power source for the phone equipment and the Internet access devices. VoIP has also become increasingly
Advertising on popular web pages can be lucrative, and popular for gaming applications, as a form of commue-commerce or the sale of products and services directly nication between players. Popular VoIP clients for gaming include Ventrilo and Teamspeak. Modern video game
via the Web continues to grow.
consoles also oer VoIP chat features.
When the Web developed in the 1990s, a typical web
page was stored in completed form on a web server, formatted in HTML, complete for transmission to a web 34.6.3 Data transfer
browser in response to a request. Over time, the process
of creating and serving web pages has become dynamic, File sharing is an example of transferring large amounts
creating a exible design, layout, and content. Websites of data across the Internet. A computer le can be
are often created using content management software emailed to customers, colleagues and friends as an attachwith, initially, very little content. Contributors to these ment. It can be uploaded to a website or File Transfer
systems, who may be paid sta, members of an organiza- Protocol (FTP) server for easy download by others. It can
tion or the public, ll underlying databases with content be put into a shared location or onto a le server for inusing editing pages designed for that purpose while ca- stant use by colleagues. The load of bulk downloads to
sual visitors view and read this content in HTML form. many users can be eased by the use of "mirror" servers
There may or may not be editorial, approval and secu- or peer-to-peer networks. In any of these cases, access
rity systems built into the process of taking newly entered to the le may be controlled by user authentication, the
content and making it available to the target visitors.
transit of the le over the Internet may be obscured by
34.6.2
Communication
202
material worldwide.
Digital media streaming increases the demand for network bandwidth. For example, standard image quality
needs 1 Mbit/s link speed for SD 480p, HD 720p quality
requires 2.5 Mbit/s, and the top-of-the-line HDX quality
needs 4.5 Mbit/s for 1080p.[64]
Webcams are a low-cost extension of this phenomenon.
While some webcams can give full-frame-rate video, the
picture either is usually small or updates slowly. Internet users can watch animals around an African waterhole, ships in the Panama Canal, trac at a local roundabout or monitor their own premises, live and in real time.
Video chat rooms and video conferencing are also popular with many uses being found for personal webcams,
with and without two-way sound. YouTube was founded
on 15 February 2005 and is now the leading website for
free streaming video with a vast number of users. It
uses a ash-based web player to stream and show video
les. Registered users may upload an unlimited amount
of video and build their own personal prole. YouTube
claims that its users watch hundreds of millions, and upload hundreds of thousands of videos daily. Currently,
YouTube also uses an HTML5 player.[65]
Others - 17%
English - 27%
Korean - 2%
Russian - 3%
French - 3%
Arabic - 3%
German - 4%
Portuguese - 4%
Japanese - 5%
Chinese - 25%
Spanish - 8%
Others - 11%
Portuguese - 2%
Arabic - 3%
Japanese - 4%
French - 4%
Chinese - 4%
English - 55%
Spanish - 5%
German - 5%
Russian - 6%
April 2013
34.7.1
Users
See also: Global Internet usage and English on the Inter- users reading blogs, and 2 billion videos viewed daily on
net
YouTube.[71] In 2014 the worlds Internet users surpassed
Internet usage has seen tremendous growth. From 2000 3 billion or 43.6 percent of world population, but twothirds of the users came from richest countries, with 78.0
percent of Europe countries population using the Internet, followed by 57.4 percent of the Americas.[72]
80
73
70
67
76
78*
71
63
60
59
61
54
50
51
46
40
36
38
42
33
30
20
0
1996
23
21
18
17
10
11
2
0
1998
7
2
2000
36
30
31
24
8
3
11
4
2002
12
6
14
7
2004
16
8
15
26
17
27
24
38
30
40*
32*
21
12
9
2006
2008
2010
2012
2014
The prevalent language for communication on the Internet has been English. This may be a result of the origin
of the Internet, as well as the languages role as a lingua
franca. Early computer systems were limited to the characters in the American Standard Code for Information
Interchange (ASCII), a subset of the Latin alphabet.
* Estimate
34.7.2
Usage
203
doctoral is available from websites. Examples range from
CBeebies, through school and high-school revision guides
and virtual universities, to access to top-end scholarly literature through the likes of Google Scholar. For distance
education, help with homework and other assignments,
self-guided learning, whiling away spare time, or just
looking up more detail on an interesting fact, it has never
been easier for people to access educational information
at any level from anywhere. The Internet in general and
the World Wide Web in particular are important enablers
of both formal and informal education. Further, the Internet allows universities, in particular, researchers from
the social and behavioral sciences, to conduct research remotely via virtual laboratories, with profound changes in
reach and generalizability of ndings as well as in communication between scientists and in the publication of
results.[86]
The low cost and nearly instantaneous sharing of ideas,
knowledge, and skills have made collaborative work dramatically easier, with the help of collaborative software.
Not only can a group cheaply communicate and share
ideas but the wide reach of the Internet allows such groups
more easily to form. An example of this is the free
software movement, which has produced, among other
things, Linux, Mozilla Firefox, and OpenOce.org. Internet chat, whether using an IRC chat room, an instant
messaging system, or a social networking website, allows
colleagues to stay in touch in a very convenient way while
working at their computers during the day. Messages can
be exchanged even more quickly and conveniently than
via email. These systems may allow les to be exchanged,
drawings and images to be shared, or voice and video contact between team members.
Content management systems allow collaborating teams
to work on shared sets of documents simultaneously without accidentally destroying each others work. Business
and project teams can share calendars as well as documents and other information. Such collaboration occurs
in a wide variety of areas including scientic research,
software development, conference planning, political activism and creative writing. Social and political collaboration is also becoming more widespread as both Internet
access and computer literacy spread.
204
34.7.3
ticular has been criticised in the past for not doing enough
to aid victims of online abuse.[88]
For organizations, such a backlash can cause overall
brand damage, especially if reported by the media. However, this is not always the case, as any brand damage
in the eyes of people with an opposing opinion to that
presented by the organization could sometimes be outweighed by strengthening the brand in the eyes of others.
Furthermore, if an organization or individual gives in to
demands that others perceive as wrong-headed, that can
then provoke a counter-backlash.
Some websites, such as Reddit, have rules forbidding
the posting of personal information of individuals (also
known as doxxing), due to concerns about such postings
leading to mobs of large numbers of Internet users directing harassment at the specic individuals thereby identied. In particular, the Reddit rule forbidding the posting of personal information is widely understood to imply
that all identifying photos and names must be censored in
Facebook screenshots posted to Reddit. However, the interpretation of this rule in relation to public Twitter posts
is less clear, and in any case, like-minded people online
have many other ways they can use to direct each others
attention to public social media posts they disagree with.
205
processes spanning the entire value chain: purchasing,
supply chain management, marketing, sales, customer
service, and business relationship. E-commerce seeks to
add revenue streams using the Internet to build and enhance relationships with clients and partners. According to International Data Corporation, the size of worldwide e-commerce, when global business-to-business and
-consumer transactions are combined, equate to $16 trillion for 2013. A report by Oxford Economics adds those
two together to estimate the total size of the digital economy at $20.4 trillion, equivalent to roughly 13.8% of
global sales.[99]
34.7.4
Electronic business
34.7.5 Telecommuting
Telecommuting is the performance within a traditional
worker and employer relationship when it is facilitated
by tools such as groupware, virtual private networks,
conference calling, videoconferencing, and voice over IP
(VOIP) so that work may be performed from any location, most conveniently the workers home. It can be
ecient and useful for companies as it allows workers
to communicate over long distances, saving signicant
amounts of travel time and cost. As broadband Internet
connections become commonplace, more workers have
adequate bandwidth at home to use these tools to link
their home to their corporate intranet and internal communication networks.
34.7.6 Crowdsourcing
206
judged or scrutinized and thus can feel more comfortable his 2004 thesis:
sharing.
As the globally evolving Internet provides
ever new access points to virtual discourse
34.7.7 Collaborative publishing
forums, it also promotes new civic relations
and associations within which communicative
Wikis have also been used in the academic community
power may ow and accumulate. Thus, tradifor sharing and dissemination of information across intionally national-embedded peripheries get
[105]
In those setstitutional and international boundaries.
entangled into greater, international periphtings, they have been found useful for collaboration on
eries, with stronger combined powers... The
grant writing, strategic planning, departmental documenInternet, as a consequence, changes the topoltation, and committee work.[106] The United States Patent
ogy of the centre-periphery model, by stimand Trademark Oce uses a wiki to allow the public to
ulating conventional peripheries to interlink
collaborate on nding prior art relevant to examination
into super-periphery structures, which enof pending patent applications. Queens, New York has
close and besiege several centres at once.[113]
used a wiki to allow citizens to collaborate on the design
and planning of a local park.[107] The English Wikipedia
has the largest user base among wikis on the World Wide Berdal, therefore, extends the Habermasian notion of the
Web[108] and ranks in the top 10 among all Web sites in public sphere to the Internet, and underlines the inherent global and civic nature that interwoven Internet techterms of trac.[109]
nologies provide. To limit the growing civic potential of
the Internet, Berdal also notes how self-protective measures are put in place by those threatened by it:
34.7.8 Politics and political revolutions
See also: Internet censorship, Culture of fear, and Mass
surveillance
The Internet has achieved new relevance as a politi-
Banner in Bangkok during the 2014 Thai coup d'tat, informing the Thai public that 'like' or 'share' activities on social media
could result in imprisonment (observed June 30, 2014).
34.7.9 Philanthropy
34.8. SECURITY
loan proles for funding. Kiva raises funds for local intermediary micronance organizations which post stories
and updates on behalf of the borrowers. Lenders can contribute as little as $25 to loans of their choice, and receive
their money back as borrowers repay. Kiva falls short of
being a pure peer-to-peer charity, in that loans are disbursed before being funded by lenders and borrowers do
not communicate with lenders themselves.[114][115]
However, the recent spread of low-cost Internet access
in developing countries has made genuine international
person-to-person philanthropy increasingly feasible. In
2009, the US-based nonprot Zidisha tapped into this
trend to oer the rst person-to-person micronance
platform to link lenders and borrowers across international borders without intermediaries. Members can fund
loans for as little as a dollar, which the borrowers then
use to develop business activities that improve their families incomes while repaying loans to the members with
interest. Borrowers access the Internet via public cybercafes, donated laptops in village schools, and even smart
phones, then create their own prole pages through which
they share photos and information about themselves and
their businesses. As they repay their loans, borrowers
continue to share updates and dialogue with lenders via
their prole pages. This direct web-based connection allows members themselves to take on many of the communication and recording tasks traditionally performed
by local organizations, bypassing geographic barriers and
dramatically reducing the cost of micronance services
to the entrepreneurs.[116]
207
Assistance For Law Enforcement Act, all phone calls
and broadband Internet trac (emails, web trac, instant messaging, etc.) are required to be available for
unimpeded real-time monitoring by Federal law enforcement agencies.[118][119][120] Packet capture is the monitoring of data trac on a computer network. Computers communicate over the Internet by breaking up messages (emails, images, videos, web pages, les, etc.) into
small chunks called packets, which are routed through a
network of computers, until they reach their destination,
where they are assembled back into a complete message
again. Packet Capture Appliance intercepts these packets as they are traveling through the network, in order to
examine their contents using other programs. A packet
capture is an information gathering tool, but not an analysis tool. That is it gathers messages but it does not analyze them and gure out what they mean. Other programs
are needed to perform trac analysis and sift through intercepted data looking for important/useful information.
Under the Communications Assistance For Law Enforcement Act all U.S. telecommunications providers are required to install packet sning technology to allow Federal law enforcement and intelligence agencies to intercept all of their customers broadband Internet and voice
over Internet protocol (VoIP) trac.[121]
The large amount of data gathered from packet capturing requires surveillance software that lters and reports
relevant information, such as the use of certain words
or phrases, the access of certain types of web sites, or
communicating via email or chat with certain parties.[122]
Agencies, such as the Information Awareness Oce,
NSA, GCHQ and the FBI, spend billions of dollars per
year to develop, purchase, implement, and operate sys34.8 Security
tems for interception and analysis of data.[123] Similar
systems are operated by Iranian secret police to identify
Main article: Internet security
and suppress dissidents. The required hardware and software was allegedly installed by German Siemens AG and
Internet resources, hardware, and software components Finnish Nokia.[124]
are the target of malicious attempts to gain unauthorized
control to cause interruptions or access private information. Such attempts include computer viruses which 34.8.2 Censorship
copy with the help of humans, computer worms which
copy themselves automatically, denial of service attacks, Main articles: Internet censorship and Internet freedom
ransomware, botnets, and spyware that reports on the ac- See also: Culture of fear
tivity and typing of users. Usually, these activities constitute cybercrime. Defense theorists have also speculated about the possibilities of cyber warfare using similar Some governments, such as those of Burma, Iran, North
Korea, the Mainland China, Saudi Arabia and the United
methods on a large scale.
Arab Emirates restrict access to content on the Internet
within their territories, especially to political and religious
content, with domain name and keyword lters.[129]
34.8.1 Surveillance
In Norway, Denmark, Finland, and Sweden, major Internet service providers have voluntarily agreed to restrict
access to sites listed by authorities. While this list of forbidden resources is supposed to contain only known child
The vast majority of computer surveillance involves the pornography sites, the content of the list is secret.[130]
monitoring of data and trac on the Internet.[117] In the Many countries, including the United States, have enUnited States for example, under the Communications acted laws against the possession or distribution of certain
Main article: Computer and network surveillance
See also: Signals intelligence and Mass surveillance
208
Internet metaphors
"Internets"
Open Systems Interconnection
Outline of the Internet
34.11 References
34.9 Performance
As the Internet is a heterogeneous network, the physical characteristics, including for example the data transfer rates of connections, vary widely. It exhibits emergent
phenomena that depend on its large-scale organization.
[2] Internet History -- One Page Summary, The Living Internet, Bill Stewart (ed), January 2000.
34.9.1
Outages
[3] So, who really did invent the Internet?", Ian Peter, The
Internet History Project, 2004. Retrieved 27 June 2014.
[4] Wilson, David Stokes, Nicholas (2006). Small business
management and entrepreneurship. London: Thomson
Learning. p. 107. ISBN 9781844802241. However,
users of the Internet were restricted largely to researchers
and academics until the development of the World Wide
Web by Tim Berners-Lee in 1989.
[5] The Open Market Internet Index. Treese.org. 1995-1111. Retrieved 2013-06-15.
[6] World Stats. Internet World Stats. Miniwatts Marketing
Group. 30 June 2012.
[7] Who owns the Internet?", Jonathan Strickland, How Stu
Works. Retrieved 27 June 2014.
[8] The Tao of IETF: A Novices Guide to Internet Engineering Task Force, P. Homan and S. Harris, RFC 4677,
September 2006.
[9] The Chicago Manual of Style, 16th Edition: capitalize
World Wide Web and Internet
34.11. REFERENCES
209
[36] ftp://ftp.cuhk.edu.hk/pub/doc/internet/Internet.
Monthly.Report/imr9002.txt
[38] https://books.google.com/books?id=
wDAEAAAAMBAJ&pg=PT31&lpg=PT31&
dq=compuserve+to+mci+mail+internet&source=
bl&ots=O0PGdOm7ZZ&sig=Cz9Uu_Wt1y_
5G_v4EJU8n5KmQQM&hl=en&sa=X&ved=
0ahUKEwiK8KvN-bfOAhUO3WMKHQcrBdsQ6AEIQDAH#
v=onepage&q=compuserve%20to%20mci%20mail%
20internet&f=false
[39] How the web went world wide, Mark Ward, Technology
Correspondent, BBC News. Retrieved 24 January 2011
[24] Ronda Hauben (2001). From the ARPANET to the Internet. Retrieved 28 May 2009.
[41] ICT Facts and Figures 2005, 2010, 2014, Telecommunication Development Bureau, International Telecommunication Union (ITU). Retrieved 24 May 2015.
210
[61] Notice of Internet Protocol version 4 (IPv4) Address Depletion (PDF). Retrieved 7 August 2009.
34.11. REFERENCES
211
[82] The Net and Netizens by Michael Hauben, Columbia Uni- [100] Badger, Emily (6 February 2013). How the Internet Reinforces Inequality in the Real World. The Atlantic. Reversity.
trieved 2013-02-13.
[83] A Brief History of the Internet from the Internet Society
[101] E-commerce will make the shopping mall a retail wasteland ZDNet, 17 January 2013
[84] Oxford Dictionaries internaut.
oxforddictionaries.com. Retrieved 6 June 2015.
[102] "Free Shipping Day Promotion Spurs Late-Season Online Spending Surge, Improving Season-to-Date Growth
[85] Mossberger, Karen. Digital Citizenship The Internet,
Rate to 16 Percent vs. Year Ago Comscore, 23 DecemSociety and Participation By Karen Mossberger, Carober 2012
line J. Tolbert, and Ramona S. McNeal. 23 Nov. 2011.
ISBN 978-0-8194-5606-9
[103] The Death of the American Shopping Mall The Atlantic
Cities, 26 December 2012
[86] Reips, U.-D. (2008). How Internet-mediated research
changes science. In A. Barak (Ed.), Psychological aspects [104] Harris, Michael (January 2, 2015). Book review: 'The
Internet Is Not the Answer' by Andrew Keen. Washingof cyberspace: Theory, research, applications (pp. 268ton Post. Retrieved 25 January 2015.
294). Cambridge: Cambridge University Press. ISBN
978-0-521-69464-3. Retrieved 22 July 2014.
[105] MM Wanderley; D Birnbaum; J Malloch (2006). New Interfaces For Musical Expression. IRCAM Centre Pom[87] The Virtual Private Nightmare: VPN. Librenix. 4 Aupidou. p. 180. ISBN 2-84426-314-3.
gust 2004. Retrieved 21 July 2010.
[88] Moore, Keith (27 July 2013). Twitter 'report abuse' button calls after rape threats. BBC News. Retrieved 7 December 2014.
[89] Kessler, Sarah (11 October 2010). 5 Fun and Safe Social
Networks for Children. Mashable. Retrieved 7 December 2014.
[90] Internet Pornography Statistics, Jerry Ropelato, Top
Ten Reviews, 2006
[91] Do It Yourself! Amateur Porn Stars Make Bank, Russell Goldman, ABC News, 22 January 2008
212
[113] Berdal, S.R.B. (2004). Public deliberation on the Web: [129] Access Controlled: The Shaping of Power, Rights, and Rule
A Habermasian inquiry into online discourse (PDF).
in Cyberspace, Ronald J. Deibert, John G. Palfrey, Rafal
Oslo: University of Oslo.
Rohozinski, and Jonathan Zittrain (eds), MIT Press, April
2010, ISBN 0-262-51435-4, ISBN 978-0-262-51435-4
[114] Kiva Is Not Quite What It Seems, by David Roodman, Center for Global Development, 2 October 2009, as accessed [130] Finland censors anti-censorship site. The Register. 18
February 2008. Retrieved 19 February 2008.
2 & 16 January 2010
[115] Strom, Stephanie (9 November 2009). Confusion on [131] Georgian woman cuts o web access to whole of Armenia. The Guardian. 6 April 2011. Retrieved 11 April
Where Money Lent via Kiva Goes. The New York Times.
2012.
p. 6.
[116] ""Zidisha Set to Expand in Peer-to-Peer Micro- [132] Cowie, James. Egypt Leaves the Internet. Renesys.
Archived from the original on 28 January 2011. Retrieved
nance"".
Micronance Focus.
7 February 2010.
28 January 2011.
Archived from the original on 28 February 2010.
[117] Die, Whiteld; Susan Landau (August 2008). Internet [133] Egypt severs internet connection amid growing unrest.
BBC News. 28 January 2011.
Eavesdropping: A Brave New World of Wiretapping.
Scientic American. Retrieved 2009-03-13.
[134] Internet responsible for 2 per cent of global energy usage, Jim Giles, New Scientist (Reed Business Information
[118] CALEA Archive -- Electronic Frontier Foundation.
Ltd.), 26 October 2011.
Electronic Frontier Foundation (website). Retrieved 200903-14.
[135] The Energy and Emergy of the Internet, Barath Raghavan (ICSI) and Justin Ma (UC Berkeley), in Proceedings
[119] CALEA: The Perils of Wiretapping the Internet. Elecof the 10th ACM Workshop on Hot Topics in Networks, 14
tronic Frontier Foundation (website). Retrieved 2009-0315 November 2011, Cambridge, MA, USA. ACM SIG14.
COMM. ISBN 978-1-4503-1059-8/11/11.
[120] CALEA: Frequently Asked Questions. Electronic Frontier Foundation (website). Retrieved 2009-03-14.
[121] American Council on Education vs. FCC, Decision,
United States Court of Appeals for the District of
Columbia Circuit (PDF). 9 June 2006. Archived from
the original (PDF) on 7 September 2012. Retrieved 8
September 2013.
[122] Hill, Michael (11 October 2004). Government funds
chat room surveillance research. USA Today. Associated Press. Retrieved 2009-03-19.
[123] McCullagh, Declan (30 January 2007). FBI turns to
broad new wiretap method. ZDNet News. Archived from
the original on 7 April 2010. Retrieved 2009-03-13.
[124] First round in Internet war goes to Iranian intelligence,
Debkale, 28 June 2009. (subscription required)
[125] OpenNet Initiative Summarized global Internet ltering
data spreadsheet, 8 November 2011 and Country Proles, the OpenNet Initiative is a collaborative partnership
of the Citizen Lab at the Munk School of Global Aairs,
University of Toronto; the Berkman Center for Internet
& Society at Harvard University; and the SecDev Group,
Ottawa
[126] Due to legal concerns the OpenNet Initiative does not
check for ltering of child pornography and because their
classications focus on technical ltering, they do not include other types of censorship.
[127] Internet Enemies, Enemies of the Internet 2014: Entities at the heart of censorship and surveillance, Reporters
Without Borders (Paris), 11 March 2014. Retrieved 24
June 2014.
Internet, Lorenzo Cantoni & Stefano Tardini, Routledge, 2006, ISBN 978-0-203-69888-4
213
Chapter 35
35.2.2 Data
ICMP error messages contain a data section that includes
the entire IPv4 header, plus the rst eight bytes of data
from the IPv4 packet that caused the error message. The
ICMP packet is then encapsulated in a new IPv4 packet.[1]
This data is used by the host to match the message to the
appropriate process. If a higher level protocol uses port
numbers, they are assumed to be in the rst 64 data bits
of the original datagrams data.[4]
Source quench
215
and a direct path from the host to R2 is available (that is,
the host and R2 are on the same Ethernet segment), then
R1 will send a redirect message to inform the host that the
best route for the destination is via R2. The host should
then send packets for the destination directly to R2. The
router will still send the original datagram to the intended
destination.[8] However, if the datagram contains routing
information, this message will not be sent even if a better
route is available. RFC 1122 states that redirects should
only be sent by gateways and should not be sent by Internet hosts.
Where:
Type must be set to 5.
Code species the reason for the redirection,
may be one of the following:
Since research suggested that ICMP Source Quench Time exceeded messages are used by the traceroute utility
[was] an ineective (and unfair) antidote for to identify gateways on the path between two hosts.
congestion,[7] routers creation of source quench
messages was deprecated in 1995 by RFC 1812. Fur- Where:
thermore, forwarding of and any kind of reaction to (ow
Type must be set to 11
control actions) source quench messages was deprecated
from 2012 by RFC 6633.
Code species the reason for the time exceeded message, include the following:
Where:
Type must be set to 4
Code must be set to 0
IP header and additional data is used by the
sender to match the reply with the associated
request
35.3.2
Redirect
35.3.4 Timestamp
Timestamp is used for time synchronization. The originating timestamp is set to the time (in milliseconds since
midnight) the sender last touched the packet. The receive
and transmit timestamps are not used.
216
Where:
Type must be set to 13
Code must be set to 0
Identier and Sequence Number can be used
by the client to match the timestamp reply with
the timestamp request.
Originate timestamp is the number of milliseconds since midnight Universal Time (UT).
If a UT reference is not available the mostsignicant bit can be set to indicate a nonstandard time value.
35.3.5
Timestamp reply
Timestamp Reply replies to a Timestamp message. It consists of the originating timestamp sent by the sender of
the Timestamp as well as a receive timestamp indicating 35.3.8 Destination unreachable
when the Timestamp was received and a transmit timestamp indicating when the Timestamp reply was sent.
Destination unreachable is generated by the host or its inbound gateway[3] to inform the client that the destination
Where:
is unreachable for some reason. A Destination Unreachable message may be generated as a result of a TCP, UDP
Type must be set to 14
or another ICMP transmission. Unreachable TCP ports
Code must be set to 0
notably respond with TCP RST rather than a Destination
Identier and Sequence number can be used
Unreachable type 3 as might be expected.
by the client to match the reply with the request
The error will not be generated if the original datagram
that caused the reply.
has a multicast destination address. Reasons for this mesOriginate timestamp is the time the sender
sage may include: the physical connection to the host
last touched the message before sending it.
does not exist (distance is innite); the indicated protocol
Receive timestamp is the time the echoer rst
or port is not active; the data must be fragmented but the
touched it on receipt.
'don't fragment' ag is on.
Transmit timestamp is the time the echoer
Where:
last touched the message on sending it.
All timestamps are in units of milliseconds
since midnight UT. If the time is not available
in milliseconds or cannot be provided with respect to midnight UT then any time can be inserted in a timestamp provided the high order
bit of the timestamp is also set to indicate this
non-standard value.
35.3.6
Where:
Type must be set to 17
ICMP tunnel
ICMPv6
217
IRDP
PMTU blackhole
Pathping
Ping
Smurf attack
TCP
35.5 References
[1] Forouzan, Behrouz A. (2007). Data Communications And
Networking (Fourth ed.). Boston: McGraw-Hill. pp.
621630. ISBN 0-07-296775-7.
[2] Protocol Numbers. Internet Assigned Numbers Authority. Retrieved 2011-06-23.
[3] Postel, J. (September 1981). Internet Control Message
Protocol. IETF. RFC 792. https://tools.ietf.org/html/
rfc792.
[4] https://tools.ietf.org/html/rfc792
[5] IANA ICMP Parameters. Iana.org. 2012-09-21. Retrieved 2013-01-07.
[6] Computer Networking A Top-Down Approach by Kurose
and Ross
[7] https://tools.ietf.org/html/rfc6633
[8] When Are ICMP Redirects Sent?".
2008-06-28. Retrieved 2013-08-15.
Cisco Systems.
35.6 RFCs
RFC 792, Internet Control Message Protocol
RFC 950, Internet Standard Subnetting Procedure
RFC 1016, Something a Host Could Do with Source
Quench: The Source Quench Introduced Delay
(SQuID)
RFC 1122, Requirements for Internet Hosts Communication Layers
RFC 1716, Towards Requirements for IP Routers
RFC 1812, Requirements for IP Version 4 Routers
Chapter 36
The rst IETF meeting was attended by 21 U.S.government-funded researchers on 16 January 1986. It
was a continuation of the work of the earlier GADS Task
Force. Representatives from non-governmental entities
218
36.4. CHAIRS
219
were invited to attend starting with the fourth IETF meet- is also considerable resistance to any change that is not
ing in October 1986. Since that time all IETF meetings fully backwards compatible. Work within the IETF on
have been open to the public.[3]
ways to improve the speed of the standards-making proInitially, the IETF met quarterly, but from 1991, it has cess is ongoing but, because the number of volunteers
been meeting three times a year. The initial meetings with opinions on it is very great, consensus on improvewere very small, with fewer than 35 people in attendance ments has been slow to develop.
at each of the rst ve meetings. The maximum attendance during the rst 13 meetings was only 120 attendees.
This occurred at the 12th meeting held during January
1989. These meetings have grown in both participation
and scope a great deal since the early 1990s; it had a maximum attendance of 2,810 at the December 2000 IETF
held in San Diego, CA. Attendance declined with industry restructuring during the early 2000s, and is currently
around 1,200.[11][3]
36.4 Chairs
Statistics are available that show who the top contributors by RFC publication are.[13] While the IETF only allows for participation by individuals, and not by corporations or governments, sponsorship information is available from these statistics.
36.3 Operations
The details of IETF operations have changed considerably as the organization has grown, but the basic mechanism remains publication of proposed specications, development based on the proposals, review and independent testing by participants, and republication as a revised proposal, a draft proposal, or eventually as an Internet Standard. IETF standards are developed in an open,
all-inclusive process in which any interested individual
can participate. All IETF documents are freely available
over the Internet and can be reproduced at will. Multiple, working, useful, interoperable implementations are
the chief requirement before an IETF proposed specication can become a standard.[3] Most specications are
focused on single protocols rather than tightly interlocked
systems. This has allowed the protocols to be used in
many dierent systems, and its standards are routinely
re-used by bodies which create full-edged architectures
(e.g. 3GPP IMS).
Because it relies on volunteers and uses "rough consensus
and running code" as its touchstone, results can be slow
whenever the number of volunteers is either too small to
make progress, or so large as to make consensus dicult,
or when volunteers lack the necessary expertise. For protocols like SMTP, which is used to transport e-mail for a
user community in the many hundreds of millions, there
220
36.6 References
[1] Internet Engineering Task Force (IETF)". RIPE NCC.
10 August 2012. Retrieved 13 October 2012.
[2] O. Jacobsen, D. Lynch (March 1991). A Glossary of
Networking Terms. RFC 1208. Retrieved 13 October
2012.
[3] Internet Engineering Task Force, Scott Bradner, Open
Sources: Voices from the Open Source Revolution,
O'Reilly, 1st Edition, January 1999, ISBN 1-56592-5823. Retrieved 21 July 2014.
[4] Register for the Next IETF Meeting. IETF. Retrieved
21 July 2014.
[5] Active IETF Working Groups. IETF. Retrieved 21 July
2014.
[6] Charter of the Internet Architecture Board (IAB)", RFC
2850, B. Carpenter, May 2000. Retrieved 21 July 2014.
[7] IETF NomCom, IETF. Retrieved 21 July 2014.
[8] IETF and the Internet Society, Vint Cerf, Internet Society, 18 July 1995. Retrieved 21 July 2014.
[9] History, Your Public Internet Registry. Retrieved 21
July 2014.
[10] IETF Trust, IETF. Retrieved 21 July 2014.
[11] Past Meetings. IETF. Retrieved 21 July 2014.
[12] IETF Meetings. IETF. Retrieved 17 January 2012.
[13] IETF document statistics (all documents)", Jari Arkko.
Retrieved 21 July 2014.
[14] IAB and IESG Selection, Conrmation, and Recall Process: Operation of the Nominating and Recall Committees, RFC 3777, J. Galvin (Ed.), June 2004. Retrieved
21 July 2014.
[15] Past IESG Members and IETF Chairs. IETF. Retrieved
21 July 2014.
Chapter 37
For the antipsychotic, see user retrieves the messages with an e-mail client that uses
one of a number of e-mail retrieval protocols. Some
clients and servers preferentially use vendor-specic,
In computing, the Internet Message Access Protocol proprietary protocols, but most support SMTP for sending e-mail and POP and IMAP for retrieving e-mail,
(IMAP) is an Internet standard protocol used by e-mail
clients to retrieve e-mail messages from a mail server over allowing interoperability with other servers and clients.
For example, Microsoft's Outlook client uses MAPI, a
a TCP/IP connection.[1] IMAP is dened by RFC 3501.
Microsoft proprietary protocol, to communicate with a
IMAP was designed with the goal of permitting complete Microsoft Exchange Server. IBM's Notes client works
management of an email box by multiple email clients, in a similar fashion when communicating with a Domino
therefore clients generally leave messages on the server server. All of these products also support POP, IMAP,
until the user explicitly deletes them. An IMAP server and outgoing SMTP. Support for the Internet standard
typically listens on port number 143. IMAP over SSL protocols allows many e-mail clients such as Pegasus Mail
(IMAPS) is assigned the port number 993.
or Mozilla Thunderbird to access these servers, and alVirtually all modern e-mail clients and servers support lows the clients to be used with other servers.
IMAP. IMAP and the earlier POP3 (Post Oce Protocol) are the two most prevalent standard protocols for
email retrieval,[2] with many webmail service providers 37.2 History
such as Gmail, Outlook.com and Yahoo! Mail also providing support for either IMAP or POP3.
IMAP was designed by Mark Crispin in 1986 as a remote
mailbox protocol, in contrast to the widely used POP, a
protocol for retrieving the contents of a mailbox.[5]
IMAP was previously known as Internet Mail Access Protocol, Interactive Mail Access Protocol (RFC
[6]
The Internet Message Access Protocol is an Application 1064), and Interim Mail Access Protocol.
Layer Internet protocol that allows an e-mail client to access e-mail on a remote mail server. The current version,
37.2.1 Original IMAP
IMAP version 4 revision 1 (IMAP4rev1), is dened by
RFC 3501. An IMAP server typically listens on wellThe original Interim Mail Access Protocol was impleknown port 143. IMAP over SSL (IMAPS) is assigned
mented as a Xerox Lisp machine client and a TOPS-20
well-known port number 993.
server.
IMAP supports both on-line and o-line modes of operaNo copies of the original interim protocol specication or
tion. E-mail clients using IMAP generally leave messages
its software exist.[7] Although some of its commands and
on the server until the user explicitly deletes them. This
responses were similar to IMAP2, the interim protocol
and other characteristics of IMAP operation allow mullacked command/response tagging and thus its syntax was
tiple clients to manage the same mailbox. Most e-mail
incompatible with all other versions of IMAP.
clients support IMAP in addition to Post Oce Protocol
(POP) to retrieve messages; however, fewer e-mail services support IMAP.[3] IMAP oers access to the mail
37.2.2 IMAP2
storage. Clients may store local copies of the messages,
but these are considered to be a temporary cache.[4]
The interim protocol was quickly replaced by the InterIncoming e-mail messages are sent to an e-mail server active Mail Access Protocol (IMAP2), dened in RFC
that stores messages in the recipients e-mail box. The 1064 (in 1988) and later updated by RFC 1176 (in 1990).
221
222
37.2.3
IMAP3
37.2.4
IMAP2bis
37.2.5
IMAP4
Usually all Internet e-mail is transmitted in MIME format, allowing messages to have a tree structure where the
leaf nodes are any of a variety of single part content types
and the non-leaf nodes are any of a variety of multipart
types. The IMAP4 protocol allows clients to retrieve any
of the individual MIME parts separately and also to retrieve portions of either individual parts or the entire message. These mechanisms allow clients to retrieve the text
portion of a message without retrieving attached les or
to stream content as it is being fetched.
37.5. SECURITY
223
shared and public folders. The IMAP4 Access Control List ing a copy in a server-side folder with a base-level IMAP
(ACL) Extension (RFC 4314) may be used to regulate ac- client requires transmitting the message content twice,
cess rights.
once to SMTP for delivery and a second time to IMAP
to store in a sent mail folder. This is remedied by a set
of extensions dened by the IETF LEMONADE Work37.3.6 Server-side searches
ing Group for mobile devices: URLAUTH (RFC 4467)
and CATENATE (RFC 4469) in IMAP and BURL (RFC
IMAP4 provides a mechanism for a client to ask the 4468) in SMTP-SUBMISSION. POP servers don't supserver to search for messages meeting a variety of crite- port server-side folders so clients have no choice but to
ria. This mechanism avoids requiring clients to download store sent items on the client. Many IMAP clients can
every message in the mailbox in order to perform these be congured to store sent mail in a client-side folder, or
searches.
to BCC oneself and then lter the incoming mail instead
of saving a copy in a folder directly. In addition to the
LEMONADE trio, Courier Mail Server oers a non37.3.7 Built-in extension mechanism
standard method of sending using IMAP by copying an
outgoing message to a dedicated outbox folder.[18]
Reecting the experience of earlier Internet protocols,
IMAP4 denes an explicit mechanism by which it may be
extended. Many IMAP4 extensions to the base protocol
have been proposed and are in common use. IMAP2bis 37.5 Security
did not have an extension mechanism, and POP now has
one dened by RFC 2449.
STARTTLS can be used to provide secure communications between the MUA communicating with the MSA or
MTA implementing the SMTP Protocol.
37.4 Disadvantages
224
0100000@cac.washington.edu> S: MIME-Version: 1.0 [11] IMAP Overview, History, Versions and Standards. Retrieved 2010-08-21.
S: Content-Type: TEXT/PLAIN; CHARSET=USASCII S: S: ) S: a004 OK FETCH completed C a005
[12] Protocol Action: Interactive Mail Access Protocol - Verstore 12 +ags \deleted S: * 12 FETCH (FLAGS
sion 3 to Historic (IETF mail archive)". 1993. Retrieved
(\Seen \Deleted)) S: a005 OK +FLAGS completed C:
2010-08-21.
a006 logout S: * BYE IMAP4rev1 server terminating
[13] Innosoft and POP/IMAP protocols? (mail archive)".
connection S: a006 OK LOGOUT completed
1993. Retrieved 2010-08-21.
37.8 References
[1] Dean, Tamara (2010). Network+ Guide to Networks. Delmar. p. 519.
[2] Komarinski, Mark (2000). Red Hat Linux System Administration Handbook. Prentice Hall. p. 179.
[3] Mullet, Diana (2000). Managing IMAP. O'Reilly. p. 25.
ISBN 0-596-00012-X.
[4] See e.g. Timo Sirainen, Dave Cridland. IMAP Client
Coding HOWTO.
[5] The IMAP Connection - IMAP Status and History
[6] Service Name and Transport Protocol Port Number Registry. Iana.org (2013-07-12). Retrieved on 2013-07-17.
[14] INTERACTIVE MAIL ACCESS PROTOCOL - VERSION 2bis (Internet Draft)". IETF. 1993. Retrieved
2010-08-21.
[15] IMAP2BIS -- EXTENSIONS TO THE IMAP2 PROTOCOL (DRAFT)". 1992. Retrieved 2010-08-21.
[16] IMAP implementation in Sup, an e-mail client written in
Ruby. rubyforge.com. Retrieved 2011-02-22.
[17] IMAP IDLE: The best approach for 'push' e-mail.
Isode.com. Retrieved 2009-07-30.
[18] Courier-IMAP: Sending mail via an IMAP connection.
Double Precision, Inc. Retrieved 2013-09-24.
[9] INTERACTIVE MAIL ACCESS PROTOCOL - VERSION 3. IETF. 1991. Retrieved 2010-08-21.
225
Chapter 38
Internet Protocol
This article is about the IP network protocol only. For
Internet architecture or other protocols, see Internet
protocol suite.
Application
Data
IP
header
Frame
header
UDP UDP
header data
Transport
IP data
Internet
Frame data
Frame
footer
Link
38.1.1
Datagram construction
38.2 Reliability
227
or transmission medium and is dynamic in terms of avail- the Internet Control Message Protocol (ICMP) disreability of links and nodes. No central monitoring or per- gard MTU size, thereby forcing IP to fragment oversized
formance measurement facility exists that tracks or main- datagrams.[5]
tains the state of the network. For the benet of reducing network complexity, the intelligence in the network
is purposely located in the end nodes.
38.4 Version history
As a consequence of this design, the Internet Protocol
only provides best-eort delivery and its service is characterized as unreliable. In network architectural language,
it is a connectionless protocol, in contrast to connectionoriented communications. Various error conditions may
occur, such as data corruption, packet loss, duplication
and out-of-order delivery. Because routing is dynamic,
meaning every packet is treated independently, and because the network maintains no state based on the path
of prior packets, dierent packets may be routed to the
same destination via dierent paths, resulting in out-oforder sequencing at the receiver.
IPv4 provides safeguards to ensure that the IP packet
header is error-free. A routing node calculates a
checksum for a packet. If the checksum is bad, the routing node discards the packet. Although the Internet Control Message Protocol (ICMP) allows such notication,
the routing node is not required to notify either end node
of these errors. By contrast, in order to increase performance, and since current link layer technology is assumed
to provide sucient error detection,[2] the IPv6 header
has no checksum to protect it.[3]
All error conditions in the network must be detected and
compensated by the end nodes of a transmission. The
upper layer protocols of the internet protocol suite are responsible for resolving reliability issues. For example, a
host may buer network data to ensure correct ordering
before the data is delivered to an application.
228
Version 5 was used by the Internet Stream Protocol, an
experimental streaming protocol.
The successor to IPv4 is IPv6. Its most prominent dierence from version 4 is the size of the addresses. While
IPv4 uses 32 bits for addressing, yielding c. 4.3 billion [7] CIO council adds to IPv6 transition primer, gcn.com
(4.3109 ) addresses, IPv6 uses 128-bit addresses pro[8] Mulligan, Geo. It was almost IPv7. O'Reilly. O'Reilly
viding ca. 340 undecillion, or 3.41038 addresses. AlMedia. Retrieved 4 July 2015.
though adoption of IPv6 has been slow, as of June 2008,
all United States government systems have demonstrated [9] Leyden, John (6 July 2004). China disowns IPv9 hype.
theregister.co.uk. The Register. Retrieved 4 May 2014.
basic infrastructure support for IPv6.[7] IPv6 was a result of several years of experimentation and dialog dur[10] RFC 1606: A Historical Perspective On The Usage Of IP
ing which various protocol models were proposed, such
Version 9. April 1, 1994.
as TP/IX (RFC 1475), PIP (RFC 1621) and TUBA (TCP
and UDP with Bigger Addresses, RFC 1347).
[11] Security Assessment of the Internet Protocol
(IP)(archived version)
38.5 Security
During the design phase of the ARPANET and the early
Internet, the security aspects and needs of a public, international network could not be adequately anticipated.
Consequently, many Internet protocols exhibited vulnerabilities highlighted by network attacks and later security
assessments. In 2008, a thorough security assessment and
proposed mitigation of problems was published.[11] The
Internet Engineering Task Force (IETF) has been pursuing further studies.[12]
38.7 References
[1] Netgear ProSafe XSM7224S reference manual
[2] RFC 1726 section 6.2
[3] RFC 2460
[4] Siyan, Karanjit. Inside TCP/IP, New Riders Publishing,
1997. ISBN 1-56205-714-6
[5] Parker, Don (2 November 2010). Basic Journey of a
Packet. symantec.com. Symantec. Retrieved 4 May
2014.
RFC 791
Data Communication Lectures of Manfred Lindner
Part IP Technology Fundamentals
Data Communication Lectures of Manfred Lindner
Part IP Routing Fundamentals
Chapter 39
39.1 History
ARPANET Network Control Program (NCP) protocol,
joined Kahn to work on open-architecture interconnec39.1.1 Early research
tion models with the goal of designing the next protocol
The Internet protocol suite resulted from research and de- generation for the ARPANET.
velopment conducted by the Defense Advanced Research By the summer of 1973, Kahn and Cerf had worked out a
Projects Agency (DARPA) in the late 1960s.[3] After fundamental reformulation, in which the dierences beinitiating the pioneering ARPANET in 1969, DARPA tween network protocols were hidden by using a common
started work on a number of other data transmission tech- internetwork protocol, and, instead of the network being
nologies. In 1972, Robert E. Kahn joined the DARPA responsible for reliability, as in the ARPANET, this funcInformation Processing Technology Oce, where he tion was delegated to the hosts. Cerf credits Hubert Zimworked on both satellite packet networks and ground- mermann and Louis Pouzin, designer of the CYCLADES
based radio packet networks, and recognized the value network, with important inuences on this design. The
of being able to communicate across both. In the spring protocol was implemented as the Transmission Control
of 1973, Vinton Cerf, the developer of the existing Program (TCP), rst published in 1974.[4]
229
230
39.1.3 Adoption
In March 1982, the US Department of Defense declared TCP/IP as the standard for all military computer
networking.[13] In 1985, the Internet Advisory Board
(later renamed the Internet Architecture Board) held a
three-day workshop on TCP/IP for the computer industry, attended by 250 vendor representatives, promoting
the protocol and leading to its increasing commercial use.
231
End-to-end principle: This principle has evolved to many other architectural principles not emphasizing
over time. Its original expression put the mainte- layering. It loosely denes a four-layer model, with the
nance of state and overall intelligence at the edges, layers having names, not numbers, as follows:
and assumed the Internet that connected the edges
retained no state and concentrated on speed and sim The application layer is the scope within which applicity. Real-world needs for rewalls, network adplications create user data and communicate this
dress translators, web content caches and the like
data to other applications on another or the same
have forced changes in this principle.[19]
host. The applications, or processes, make use of the
services provided by the underlying, lower layers,
Robustness Principle: In general, an implementaespecially the Transport Layer which provides relition must be conservative in its sending behavior,
able or unreliable pipes to other processes. The comand liberal in its receiving behavior. That is, it must
munications partners are characterized by the applibe careful to send well-formed datagrams, but must
cation architecture, such as the client-server model
accept any datagram that it can interpret (e.g., not
and peer-to-peer networking. This is the layer in
object to technical errors where the meaning is still
which all higher level protocols, such as SMTP, FTP,
clear).[20] The second part of the principle is alSSH, HTTP, operate. Processes are addressed via
most as important: software on other hosts may conports which essentially represent services.
tain deciencies that make it unwise to exploit legal
but obscure protocol features.[21]
The transport layer performs host-to-host communications on either the same or dierent hosts and
on either the local network or remote networks separated by routers. It provides a channel for the com39.3 Abstraction layers
munication needs of applications. UDP is the basic transport layer protocol, providing an unreliable
Encapsulation is used to provide abstraction of protocols
datagram service. The Transmission Control Protoand services. Encapsulation is usually aligned with the
col provides ow-control, connection establishment,
division of the protocol suite into layers of general funcand reliable transmission of data.
tionality. In general, an application (the highest level of
the model) uses a set of protocols to send its data down
The internet layer has the task of exchanging datathe layers, being further encapsulated at each level.
grams across network boundaries. It provides a
uniform networking interface that hides the actual
The layers of the protocol suite near the top are logically
topology (layout) of the underlying network conneccloser to the user application, while those near the bottions. It is therefore also referred to as the layer that
tom are logically closer to the physical transmission of the
establishes internetworking, indeed, it denes and
data. Viewing layers as providing or consuming a service
establishes the Internet. This layer denes the adis a method of abstraction to isolate upper layer protocols
dressing and routing structures used for the TCP/IP
from the details of transmitting bits over, for example,
protocol suite. The primary protocol in this scope
Ethernet and collision detection, while the lower layers
is the Internet Protocol, which denes IP addresses.
avoid having to know the details of each and every appliIts function in routing is to transport datagrams to
cation and its protocol.
the next IP router that has the connectivity to a netEven when the layers are examined, the assorted architecwork closer to the nal data destination.
tural documentsthere is no single architectural model
The link layer denes the networking methods
such as ISO 7498, the Open Systems Interconnection
within the scope of the local network link on which
(OSI) modelhave fewer and less rigidly dened layers
hosts communicate without intervening routers.
than the OSI model, and thus provide an easier t for realThis layer includes the protocols used to describe
world protocols. One frequently referenced document,
the local network topology and the interfaces needed
RFC 1958, does not contain a stack of layers. The lack
to eect transmission of Internet layer datagrams to
of emphasis on layering is a major dierence between the
next-neighbor hosts.
IETF and OSI approaches. It only refers to the existence
of the internetworking layer and generally to upper layers;
this document was intended as a 1996 snapshot of the ar- The Internet protocol suite and the layered protocol stack
chitecture: The Internet and its architecture have grown design were in use before the OSI model was established.
in evolutionary fashion from modest beginnings, rather Since then, the TCP/IP model has been compared with
than from a Grand Plan. While this process of evolution the OSI model in books and classrooms, which often reis one of the main reasons for the technologys success, sults in confusion because the two models use dierent
it nevertheless seems useful to record a snapshot of the assumptions and goals, including the relative importance
of strict layering.
current principles of the Internet architecture.
RFC 1122, entitled Host Requirements, is structured in This abstraction also allows upper layers to provide serparagraphs referring to layers, but the document refers vices that the lower layers do not provide. While the orig-
232
such as adding a packet header to prepare it for transmission, then actually transmit the frame over a physical
medium. The TCP/IP model includes specications of
translating the network addressing methods used in the
Internet Protocol to data link addressing, such as Media
Access Control (MAC). All other aspects below that
level, however, are implicitly assumed to exist in the link
layer, but are not explicitly dened.
The internet layer has the responsibility of sending packets across potentially multiple networks. Internetworking
requires sending data from the source network to the destination network. This process is called routing.[25]
The SSL/TLS library operates above the transport layer The Internet Protocol performs two basic functions:
(uses TCP) but below application protocols. Again, there
was no intention, on the part of the designers of these
Host addressing and identication: This is accomprotocols, to comply with OSI architecture.
plished with a hierarchical IP addressing system.
The link is treated as a black box. The IETF explicitly
Packet routing: This is the basic task of sending
does not intend to discuss transmission systems, which is
packets of data (datagrams) from source to destinaa less academic but practical alternative to the OSI model.
tion by forwarding them to the next network router
The following is a description of each layer in the TCP/IP
closer to the nal destination.
networking model starting from the lowest level.
39.3.1
Link layer
The link layer has the networking scope of the local network connection to which a host is attached. This regime
is called the link in TCP/IP literature. It is the lowest
component layer of the Internet protocols, as TCP/IP
is designed to be hardware independent. As a result, Some of the protocols carried by IP, such as ICMP which
TCP/IP may be implemented on top of virtually any hard- is used to transmit diagnostic information, and IGMP
ware networking technology.
which is used to manage IP Multicast data, are layered on
The link layer is used to move packets between the In- top of IP but perform internetworking functions. This ilternet layer interfaces of two dierent hosts on the same lustrates the dierences in the architecture of the TCP/IP
link. The processes of transmitting and receiving pack- stack of the Internet and the OSI model. The TCP/IP
ets on a given link can be controlled both in the software models internet layer corresponds to layer three of the
device driver for the network card, as well as on rmware Open Systems Interconnection (OSI) model, where it is
or specialized chipsets. These perform data link functions referred to as the network layer.
39.3.3
Transport layer
233
lost or discarded packets are resent
includes trac congestion control
The newer Stream Control Transmission Protocol
(SCTP) is also a reliable, connection-oriented transport mechanism. It is message-stream-orientednot
byte-stream-oriented like TCPand provides multiple
streams multiplexed over a single connection. It also provides multi-homing support, in which a connection end
can be represented by multiple IP addresses (representing multiple physical interfaces), such that if one fails, the
connection is not interrupted. It was developed initially
for telephony applications (to transport SS7 over IP), but
can also be used for other applications.
The User Datagram Protocol is a connectionless
datagram protocol. Like IP, it is a best eort, unreliable
protocol. Reliability is addressed through error detection
using a weak checksum algorithm. UDP is typically used
for applications such as streaming media (audio, video,
Voice over IP etc.) where on-time arrival is more important than reliability, or for simple query/response applications like DNS lookups, where the overhead of setting up a reliable connection is disproportionately large.
Real-time Transport Protocol (RTP) is a datagram protocol that is designed for real-time data such as streaming
audio and video.
The applications at any given network address are distinguished by their TCP or UDP port. By convention certain
well known ports are associated with specic applications.
The TCP/IP models transport or host-to-host layer corresponds to the fourth layer in the Open Systems Interconnection (OSI) model, also called the transport layer.
234
that a TCP/IP protocol stack must impose monolithic architecture above the transport layer. For example, the
NFS application protocol runs over the eXternal Data
Representation (XDR) presentation protocol, which, in
turn, runs over a protocol called Remote Procedure Call
(RPC). RPC provides reliable record transmission, so it
can safely use the best-eort UDP transport.
Dierent authors have interpreted the TCP/IP model differently, and disagree whether the link layer, or the entire
TCP/IP model, covers OSI layer 1 (physical layer) issues,
or whether a hardware layer is assumed below the link
layer.
OSI layering
39.9. REFERENCES
39.6 Implementations
235
- Principles, Protocols and Architecture. ISBN 867991-142-9
39.8 Bibliography
Douglas E. Comer. Internetworking with TCP/IP
39.9 References
[1] RFC 1122, Requirements for Internet Hosts Communication Layers, R. Braden (ed.), October 1989.
[2] RFC 1123, Requirements for Internet Hosts Application
and Support, R. Braden (ed.), October 1989
[3] The DoD Internet Architecture Model, Vinton G. Cerf
and Edward Cain, Computer Networks, 7 (1983), NorthHolland, pp. 307-318
[4] , Vinton G. Cerf and Robert E. Kahn, A Protocol for
Packet Network Intercommunication, 5 (1974)
[5] , Jon Postel, Comments on Internet Protocol and TCP,
(1977), Section 3.3.3.2
[6] , Norman Abramson, The Aloha System - Another alternative for computer communications, (1970)
236
[7] , Robert M. Metcalfe and David R. Boggs, Ethernet: Distributed Packet Switching or Local Computer Networks,
(1976)
[8] Vinton Robert E. Kahn, The Introduction of Packet Satellite Communications, (1979)
[31] Douglas E. Comer, Internetworking with TCP/IP: Principles, Protocols and Architecture, Pearson Prentice Hall
2005, ISBN 0-13-187671-6
[35] R. Bush; D. Meyer (December 2002), Some Internet Architectural Guidelines and Philosophy, Internet Engineering Task Force
Chapter 40
Internetworking
Internetworking is the practice of connecting a
computer network with other networks through the use
of gateways that provide a common method of routing
information packets between the networks. The resulting
system of interconnected networks are called an internetwork, or simply an internet. Internetworking is a combination of the words inter (between) and networking;
not internet-working or international-network.
The most notable example of internetworking is the
Internet, a network of networks based on many underlying hardware technologies, but unied by an internetworking protocol standard, the Internet Protocol Suite,
often also referred to as TCP/IP.
The smallest amount of eort to create an internet (an
internetwork, not the Internet), is to have two LANs of
computers connected to each other via a router. Simply
using either a switch or a hub to connect two local area
networks together doesn't imply internetworking; it just
expands the original LAN.
working, but the resulting system is simply a larger, single subnetwork, and no internetworking protocol, such
as Internet Protocol, is required to traverse these devices. However, a single computer network may be converted into an internetwork by dividing the network into
segments and logically dividing the segment trac with
routers. The Internet Protocol is designed to provide an
unreliable (not guaranteed) packet service across the network. The architecture avoids intermediate network elements maintaining any state of the network. Instead,
this function is assigned to the endpoints of each communication session. To transfer data reliably, applications must utilize an appropriate Transport Layer protocol, such as Transmission Control Protocol (TCP), which
provides a reliable stream. Some applications use a simpler, connection-less transport protocol, User Datagram
Protocol (UDP), for tasks which do not require reliable
delivery of data or that require real-time service, such as
video streaming [1] or voice chat.
Internetworking started as a way to connect disparate types of networking technology, but it became
widespread through the developing need to connect two
or more local area networks via some sort of wide area
network. The original term for an internetwork was
catenet.
Another type of interconnection of networks often occurs within enterprises at the Link Layer of the networking model, i.e. at the hardware-centric layer below the
level of the TCP/IP logical interfaces. Such interconnection is accomplished with network bridges and network
switches. This is sometimes incorrectly termed internet-
237
238
its Internet Layer.
40.4 References
[1] Teare, Diane (July 1999). 'Designing Cisco Networks. Indianapolis: Cisco Press.
Chapter 41
IPX/SPX
IPX/SPX stands for Internetwork Packet Ex- 41.2.1 DOS
change/Sequenced Packet Exchange. IPX and SPX
are networking protocols used primarily on networks Novells original NetWare client was written for DOS.
using the Novell NetWare operating systems.
Initial versions required a hard-linked protocol stack,
where a separate executable would be created by the network administrator for each network card conguration
on the network. This executable would be loaded at boot
41.1 Protocol layers
time, and remain resident in memory until the system was
shut down. Later implementations allowed the network
IPX and SPX are derived from Xerox Network Systems' stack to be loaded and unloaded dynamically, using preIDP and SPP protocols, respectively. IPX is a network existing modules. This greatly simplied maintenance of
layer protocol (layer 3 of the OSI Model), while SPX client workstations on the network.
is a transport layer protocol (layer 4 of the OSI Model). IPX/SPX was the de facto standard for DOS-era multiThe SPX layer sits on top of the IPX layer and provides user network games.[1] Many games longevity were exconnection-oriented services between two nodes on the tended through tunneling programs like Kali and Kahn
network. SPX is used primarily by clientserver applica- which allowed them to be played over the internet instead
tions.
of LAN-only.
IPX and SPX both provide connection services similar to
TCP/IP, with the IPX protocol having similarities to IP,
and SPX having similarities to TCP. IPX/SPX was primarily designed for local area networks (LANs), and is a
very ecient protocol for this purpose (typically its performance exceeds that of TCP/IP on a LAN ). TCP/IP
has, however, become the de facto standard protocol.
This is in part due to its superior performance over wide
area networks and the Internet (which uses TCP/IP exclusively), and also because TCP/IP is a more mature protocol, designed specically with this purpose in mind.
Despite the protocols association with NetWare, they are
neither required for NetWare communication (as of NetWare 5.x), nor exclusively used on NetWare networks.
NetWare communication requires an NCP implementation, which can use IPX/SPX, TCP/IP, or both, as a transport.
41.2 Implementations
Novell is largely responsible for the use of IPX as a popular computer networking protocol due to their dominance
in the network operating system software market (with
Novell Netware) from the late 1980s through the mid1990s.
41.2.2 Windows
Because of IPX/SPXs prevalence in LANs in the 1990s,
Microsoft added support for the protocols into Windows'
networking stack, starting with Windows for Workgroups
and Windows NT. Microsoft even named their implementation "NWLink", implying that the inclusion of the
layer 3/4 transports provided NetWare connectivity. In
reality, the protocols were supported as a native transport
for Windows SMB/NetBIOS, and NetWare connectivity required additional installation of an NCP client (Microsoft provided a basic NetWare client with Windows 95
and later, but it was not automatically installed, and initially only supported NetWare bindery mode). NWLink
was still provided with Windows (up to and including
Windows Server 2003), but it is neither included with nor
supported in Windows Vista. Its use is strongly discouraged because it cannot be used for Windows networking
except as a transport for NetBIOS, which is deprecated.
For the most part, Novells 32-bit Windows client software have eschewed NWLink for an alternative developed by Novell, although some versions permit use of Microsofts IPX/SPX implementation (with warnings about
potential incompatibility).
239
240
41.2.3
Other
41.3 Legacy
41.5 References
[1] Win95 FAQ Part 12 of 14: MS-DOS Games top of question 12.9
[2] Some notes on MacIPX internetworking, formerly at
[3] Blizzard Support. Web.archive.org (2010-08-20). Retrieved on 2013-09-27.
[4] FreeBSD ports info on Mars NWE
Chapter 42
Stub
Network
Skeleton
Server
242
}}
import
java.rmi.Remote;
import
java.rmi.RemoteException; public interface RmiServerIntf extends Remote { public String getMessage()
throws RemoteException; }
42.4 References
[1] Taylor, Ian J. From P2P to Web Services and Grids - Peers
in a Client/Server World. Springer, 2005
[2] Get smart with proxies and RMI - JavaWorld
[3] Java RMI Release Notes. Oracle. Retrieved 9 May
2012.
Chapter 43
Link layer
model.[3][4] These authors assume a hardware layer or
physical layer below the link layer, and several of them
adopt the OSI term data link layer instead of link layer
in a modied description of layering. In the predecessor to the TCP/IP model, the ARPAnet Reference Model
(RFC 908, 1982), aspects of the link layer are referred to
by several poorly dened terms, such as network-access
layer, network-access protocol, as well as network layer,
while the next higher layer is called internetwork layer. In
some modern text books, network-interface layer, hostto-network layer and network-access layer occur as synonyms either to the link layer or the data link layer, often
Despite the dierent semantics of layering in TCP/IP and including the physical layer.
OSI, the link layer is sometimes described as a combination of the data link layer (layer 2) and the physical
layer (layer 1) in the OSI model. However, the layers of 43.2 Link layer protocols
TCP/IP are descriptions of operating scopes (application,
host-to-host, network, link) and not detailed prescriptions The link layer in the TCP/IP model is a descriptive realm
of operating procedures, data semantics, or networking of networking protocols that operate only on the local nettechnologies.
work segment (link) that a host is connected to. Such
In computer networking, the link layer is the lowest
layer in the Internet Protocol Suite, commonly known as
TCP/IP, the networking architecture of the Internet. It is
described in RFC 1122 and RFC 1123. The link layer is
the group of methods and communications protocols that
only operate on the link that a host is physically connected
to. The link is the physical and logical network component used to interconnect hosts or nodes in the network
and a link protocol is a suite of methods and standards
that operate only between adjacent network nodes of a
local area network segment or a wide area network connection.
243
244
gree in technical coverage of protocols, they are not identical. The link layer in TCP/IP is still wider in scope and
in principle a dierent concept and terminology of classication. This may be observed when certain protocols,
such as the Address Resolution Protocol (ARP), which is
conned to the link layer in the TCP/IP model, is often
said to t between OSIs data link layer and the network
layer. In general, direct or strict comparisons should be
avoided, because the layering in TCP/IP is not a principal
design criterion and in general is considered to be harmful (RFC 3439).
Another term sometimes encountered, network access
layer, tries to suggest the closeness of this layer to the
physical network. However, this use is misleading and
non-standard, since the link layer implies functions that
are wider in scope than just network access. Important
link layer protocols are used to probe the topology of the
local network, discover routers and neighboring hosts, i.e.
functions that go well beyond network access.
43.6 References
[1] James F. Kurose, Keith W. Ross, Computer Networking:
A Top-Down Approach, 2007, ISBN 0-321-49770-8
[2] Mark Dye, Mark A. Dye, Wendell, Network Fundamentals: CCNA Exploration Companion Guide, 2007, ISBN
1-58713-208-7
[3] Douglas E. Comer, Internetworking with TCP/IP: Principles, Protocols and Architecture, Pearson Prentice Hall
2005, ISBN 0-13-187671-6
[4] Charles M. Kozierok, The TCP/IP Guide, No Starch
Press 2005
Chapter 44
However, this gain is not without a downside. Large packets occupy a slow link for more time than a smaller packet,
causing greater delays to subsequent packets, and increasing lag and minimum latency. For example, a 1500-byte
packet, the largest allowed by Ethernet at the network
layer (and hence over most of the Internet), ties up a 14.4k
modem for about one second.
To get around this issue, IPv4 allows fragmentation: dividing the datagram into pieces, each small enough to
pass over the single link that is being fragmented for,
using the MTU parameter congured for that interface.
This fragmentation process takes place at the IP layer
(OSI layer 3) and marks the packets it fragments as such,
so that the IP layer of the destination host knows it should
Large packets are also problematic in the presence of reassemble the packets into the original datagram. This
communications errors. Corruption of a single bit in a method implies a number of possible drawbacks:
packet requires that the entire packet be retransmitted.
At a given bit error rate, larger packets are more likely to
All fragments of a packet must arrive for the packet
be corrupt. Their greater payload makes retransmissions
to be considered received. If the network drops any
of larger packets take longer. Despite the negative eects
fragment, the entire packet is lost.
on retransmission duration, large packets can still have a
net positive eect on end-to-end TCP performance.[1]
When the size of most or all packets exceed the
246
44.2.1
44.5 References
[1] Murray, David; Terry Koziniec; Kevin Lee; Michael
Dixon (2012). Large MTUs and internet performance
(PDF). 13th IEEE Conference on High Performance
Switching and Routing (HPSR 2012).
[2] RFC 791, p. 24 Every internet destination must be able
to receive a datagram of 576 octets either in one piece or
in fragments to be reassembled.
[3] RFC 2460, p. 13
247
MSS Initiative
Chapter 45
Mealy machine
In the theory of computation, a Mealy machine is a
nite-state machine whose output values are determined
both by its current state and the current inputs. (This is in
contrast to a Moore machine, whose output values are determined solely by its current state.) A Mealy machine is
a deterministic nite-state transducer: for each state and
input, at most one transition is possible.
45.1 History
In Moore machines, more logic may be necessary to decode state into outputsmore gate
delays after clock edge.
45.4 Diagram
The state diagram for a Mealy machine associates an out a transition function T : S S mapping pairs put value with each transition edge (in contrast to the state
of a state and an input symbol to the corresponding diagram for a Moore machine, which associates an output
next state.
value with each state).
an output function G : S mapping pairs When the input and output alphabet are both , one can
to a Mealy Automata an Helix directed
of a state and an input symbol to the corresponding also associate
[2]
graph.
(S
,
(x, i) (T(x, i), G(x, i))) This graph has
output symbol.
as vertices the couples of state and letters, every nodes are
of out-degree one, and the successor of (x, i) is the next
In some formulations, the transition and output functions state of the automata and the letter that the automata outare coalesced into a single function T : S S put when it is instate x and it reads letter i. This graph is a
.
union of disjoint cycles i the automaton is bireversible.
248
45.7. SUMMARY
249
45.5 Examples
45.5.1
Moore/Mealy machines, are DFAs that have also output at any tick of the clock. Modern CPUs, computers, cell phones, digital clocks and basic electronic devices/machines have some kind of nite state machine to
control it.
Simple
45.5.2
Complex
45.7 Summary
Implementing a Moore or Mealy machine is not that hard,
especially if one does not intend to minimize the circuit.
However, it does take practice to be able to do it reasonably fast, and is dicult to understand conceptually, at
least, at rst. One should trace out a few steps just to
convince oneself of how it behaves. There is a subtle difference in the behavior of the implementation of a Mealy
and Moore machine. Tracing out a few steps can show
the dierences more clearly.
45.6 Applications
Mealy machines provide a rudimentary mathematical
model for cipher machines. Considering the input and
output alphabet the Latin alphabet, for example, then a
Mealy machine can be designed that given a string of letters (a sequence of inputs) can process it into a ciphered
string (a sequence of outputs). However, although one
could use a Mealy model to describe the Enigma, the state
250
45.9 Footnotes
[1] Mealy, George H. (September 1955). A Method for
Synthesizing Sequential Circuits. Bell System Technical Journal. 34: 10451079. doi:10.1002/j.15387305.1955.tb03788.x.
[2] Akhavi et al (2012)
45.10 References
Mealy, George H. (1955). A Method for Synthesizing Sequential Circuits. Bell System Technical Journal. pp. 10451079.
Holcombe, W.M.L. (1982). Algebraic automata
theory. Cambridge Studies in Advanced Mathematics. 1. Cambridge University Press. ISBN 0-52160492-3. Zbl 0489.68046.
Roth, Charles H., Jr. (2004). Fundamentals of
Logic Design. Thomson-Engineering. pp. 364367.
ISBN 0-534-37804-8.
Akhavi, Ali; Klimann, Ines; Lombardy, Sylvain;
Mairesse, Jean; Picantin, Matthieu (2012). On
the niteness problem for automaton (semi)groups.
Int. J. Algebra Comput. 22 (6). arXiv:1105.4725 .
Zbl 1280.20038.
Chapter 46
In the IEEE 802 reference model of computer networking, the medium access control or media access control (MAC) layer is the lower sublayer of the data link
layer (layer 2) of the seven-layer OSI model. The MAC
sublayer provides addressing and channel access control
mechanisms that make it possible for several terminals
or network nodes to communicate within a multiple access network that incorporates a shared medium, e.g. an
Ethernet network. The hardware that implements the
MAC is referred to as a media access controller.
The MAC sublayer acts as an interface between the
logical link control (LLC) sublayer and the networks
physical layer. The MAC layer emulates a full-duplex
logical communication channel in a multi-point network.
This channel may provide unicast, multicast or broadcast
communication service.
Protection against errors, generally by means of generating and checking frame check sequences
Examples of physical networks are Ethernet networks and
Control of access to the physical transmission Wi-Fi networks, both of which are IEEE 802 networks
and use IEEE 802 48-bit MAC addresses.
medium
A MAC layer is not required in full-duplex point-to-point
In the case of Ethernet, according to 802.3-2002 section communication, but address elds are included in some
4.1.4, the functions required of a MAC are:[2]
point-to-point protocols for compatibility reasons.
251
252
Cellular networks, such as GSM, UMTS or LTE networks, also use a MAC layer. The MAC protocol in cellular networks is designed to maximize the utilization of the
expensive licensed spectrum. [3] The air interface of a cellular network is at layers 1 and 2 of the OSI model; at layer
2, it is divided into multiple protocol layers. In UMTS
and LTE, those protocols are the Packet Data Convergence Protocol (PDCP), the Radio Link Control (RLC)
protocol, and the MAC protocol. The base station has
the absolute control over the air interface and schedules
The most widespread multiple access protocol is the con- the downlink access as well as the uplink access of all
tention based CSMA/CD protocol used in Ethernet net- devices. The MAC protocol is specied by 3GPP in TS
works. This mechanism is only utilized within a network 25.321[4] for UMTS and TS 36.321[5] for LTE.
collision domain, for example an Ethernet bus network or
a hub-based star topology network. An Ethernet network
may be divided into several collision domains, intercon- 46.6 See also
nected by bridges and switches.
A multiple access protocol is not required in a switched
full-duplex network, such as todays switched Ethernet
networks, but is often available in the equipment for compatibility reasons.
[3] G. Miao; J. Zander; K-W Sung; B. Slimane (2016). Fundamentals of Mobile Data Networks. Cambridge University Press. ISBN 1107143217.
This article is based on material taken from the Free Online Dictionary of Computing prior to 1 November 2008
and incorporated under the relicensing terms of the
GFDL, version 1.3 or later.
Chapter 47
Moore machine
In the theory of computation, a Moore machine is a
nite-state machine whose output values are determined
solely by its current state. This is in contrast to a Mealy
machine, whose output values are determined both by its
current state and by the values of its inputs. The Moore
machine is named after Edward F. Moore, who presented
the concept in a 1956 paper, Gedanken-experiments on
Sequential Machines.[1]
As Moore and Mealy machines are both types of nitestate machines, they are equally expressive: either type
can be used to parse a regular language.
The dierence between Moore machines and Mealy machines is that in the latter, the output of a transition is determined by the combination of current state and current
47.1 Formal denition
input ( S as the input to G ), as opposed to just the
current state ( S as the input to G ). When represented
A Moore machine can be dened as a 6-tuple as a state diagram,
(S, S0 , , , T, G) consisting of the following:
for a Moore machine, each node (state) is labeled
a nite set of states S
with an output value;
Every Moore machine M is equivalent to the Mealy machine with the same states and transitions and the output function G(s, ) GM (s) , which takes each stateinput pair (s, ) and yields GM (s) , where GM is M 's
output function.
47.2.2
Diagram
The state diagram for a Moore machine or Moore dia- 47.4 Examples
gram is a diagram that associates an output value with
Types according to number of inputs/outputs.
each state. Moore machine is an output producer.
253
254
47.4.1
Simple
0
1
S n+1
output
S0
Sn
R
clock
0
1
47.4.2 Complex
More complex Moore machines can have multiple inputs
as well as multiple outputs.
47.5 Gedanken-experiments
In Moores paper "Gedanken-experiments on Sequential
Machines,[1] the (n; m; p) automata (or machines) S are
dened as having n states, m input symbols and p output
symbols. Nine theorems are proved about the structure
of S , and experiments with S . Later, " S machines
became known as Moore machines.
At the end of the paper, in Section Further problems,
the following task is stated:
output logic
state memory
input
reset
Worked Example
In 1957, A. A. Karatsuba proved the following two theorems, which completely solved Moores problem on the
A sequential network has one input and one output. The improvement of the bounds of the experiment length of
output becomes 1 and remains 1 thereafter when at least his Theorem 8.
two 0s and two 1s have occurred as inputs.
A moore machine with nine states for the above description is shown on the right. The initial state is state A, and
the nal state is state I. The state table for this example is
as follows:
255
(n1)(n2)
2
+ 1 through which one may determine the state of S at the end of the experiment.
Theorem B. There exists an (n; m; p) machine, every two states of which are distinguishable from one another, such that the
length of the shortest experiments establishing
the state of the machine at the end of the experiment is equal to (n1)(n2)
+1.
2
47.7 References
[1] Moore, Edward F (1956). Gedanken-experiments on Sequential Machines. Automata Studies, Annals of Math.
Studies. Princeton, N.J.: Princeton University Press (34):
129153.
[2] Lee, Edward Ashford; Seshia, Sanjit Arunkumar (2013).
Introduction to Embedded Systems (1.08 ed.). UC Berkeley: Lulu.com. ISBN 9780557708574. Retrieved 1 July
2014.
[3] Karatsuba, A. A. (1960). Solution of one problem from
the theory of nite automata. Uspekhi Mat. Nauk (15:3):
157159.
Chapter 48
Network congestion
Network congestion in data networking and queueing
theory is the reduced quality of service that occurs when
a network node is carrying more data than it can handle.
Typical eects include queueing delay, packet loss or the
blocking of new connections. A consequence of the latter
two eects is that an incremental increase in oered load
leads either only to a small increase or even a decrease in
network throughput.[1]
computer
Even on fast computer networks (e.g. Gigabit Ethernet), the backbone can easily be congested by a few
servers and client PCs.
The aggregate transmission from P2P networks have
no problem lling an uplink or some other network
bottleneck.
Congestive collapse (or congestion collapse) is the condition in which congestion prevents or limits useful communication. Congestion collapse generally occurs at choke
points in the network, where incoming trac exceeds
outgoing bandwidth. Connection points between a local
A third avoidance method is the explicit allocation of net- area network and a wide area network are common choke
work resources to specic ows. One example of this is points.
the use of Contention-Free Transmission Opportunities When a network is in this condition, it settles into a sta(CFTXOPs) in the ITU-T G.hn standard, which provides ble state where trac demand is high but little useful
high-speed (up to 1 Gbit/s) local area networking over throughput is available, packet delay and loss and quality
varying wires (power lines, phone lines and coaxial ca- of service is extremely poor.
bles).
Congestion collapse was identied as a possible probRFC 2914 addresses the subject of congestion control in lem by 1984, for example in RFC 896. It was rst obdetail.
served on the early Internet in October 1986, when the
NSFnet phase-I backbone dropped three orders of magnitude from its capacity of 32 kbit/s to 40 bit/s, which
continued until end nodes started implementing Van Ja48.1 Network capacity
cobson's congestion control between 1987 and 1988.
Network resources are limited, including router process- When more packets were sent than could be handled by
intermediate routers, the intermediate routers discarded
ing time and link throughput.
many packets, expecting the end points of the network
For example:
to retransmit the information. However, early TCP implementations had poor retransmission behavior. When
A wireless LAN is easily lled by a single personal this packet loss occurred, the endpoints sent extra packets
256
48.4. MITIGATION
257
that repeated the information lost, doubling the incoming Among the ways to classify congestion control algorithms
rate.
are:
Congestion control controls trac entry into a telecommunications network, to avoid congestive collapse by
avoiding oversubscription by reducing the rate of packets. It should not be confused with ow control, which
prevents the sender from overwhelming the receiver.
48.3.1
By performance aspect: high bandwidth-delay product networks; lossy links; fairness; advantage to
short ows; variable-rate links
48.4 Mitigation
U (xi )
max
TCP congestion control various implementations
x
i
of eorts to deal with network congestion
Rx c
The Lagrange dual of this problem decouples, so that
each ow sets its own rate, based only on a price signalled by the network. Each link capacity imposes a constraint, which gives rise to a Lagrange
multiplier, pl . The
sum of these multipliers, yi = l pl rli , is the price to
which the ow responds.
Congestion control then becomes a distributed optimisation algorithm. Many current congestion control algo- The most common router congestion avoidance mecharithms can be modelled in this framework, with pl being nisms are fair queuing and other scheduling algorithms,
either the loss probability or the queueing delay at link l . and random early detection, or RED, where packets are
randomly dropped, proactively triggering the endpoints
A major weakness is that it assigns the same price to all
to slow transmission before congestion collapse occurs.
ows, while sliding window ow control causes burstiFair queuing is most useful in routers at chokepoints with
ness that causes dierent ows to observe dierent loss
a small number of connections passing through them.
or delay at a given link.
Larger routers must rely on RED.
48.3.2
Classication of congestion control gested conditions. TCP is perhaps the best behaved.
The rst TCP implementations to handle congestion were
algorithms
258
48.4.1
and are thereby able to signal a too big bandwidth ow according to some quality of service policy. A policy could
then divide the bandwidth among all ows by some criteria.
48.4.3
Active queue management (AQM) is the reorder or drop Cisco AQM: Dynamic buer limiting
of network packets inside a transmit buer that is associated with a network interface controller (NIC). This task Cisco Systems (Engine IV and V) has the capability to
classify ows as aggressive (bad) or adaptive (good). It
is performed by the network scheduler.
ensures that no ows ll the port queues. DBL can utilize
IP ECN instead of packet-delete-signalling.[14][15]
Random early detection
One solution is to use random early detection (RED) TCP window shaping
on the network equipments port queue buer.[8][9] On
network equipment ports with more than one queue See also: TCP window scale option
buer, weighted random early detection (WRED) could
be used if available.
Congestion avoidance can be achieved eciently by reRED indirectly signals to sender and receiver by deleting ducing trac. When an application requests a large le,
some packets, e.g. when the average queue buer lengths graphic or web page, it usually advertises a window of
are more than a threshold (e.g. 50%) and deletes linearly between 32K and 64K. This results in the server sendor cubically more packets,[10] up to e.g. 100%. The av- ing a full window of data (assuming the le is larger than
erage queue buer lengths are computed over 1 second the window). When many applications simultaneously reintervals.
quest downloads, this data creates a congestion point at
48.7. REFERENCES
an upstream provider by ooding the queue. By using a
device to reduce the window advertisement, the remote
servers send less data, thus reducing the congestion. This
technique can reduce network congestion by a factor of
40.
259
Choke exchange
Erlang (unit)
Max-min fairness
Sorcerers Apprentice Syndrome
Backward ECN
Backward ECN (BECN) is another proposed congestion
mechanism. It uses ICMP source quench messages as
an IP signalling mechanism to implement a basic ECN
mechanism for IP networks, keeping congestion notications at the IP level and requiring no negotiation between
network endpoints. Eective congestion notications can
be propagated to transport layer protocols, such as TCP
and UDP, for the appropriate adjustments.[16]
Radio links
48.5.2
Short-lived connections
The slow-start protocol performs badly for short connections. Older web browsers created many short-lived connections and opened and closed the connection for each
le. This kept most connections in the slow start mode,
which slowed response times.
To avoid this problem, modern browsers either open multiple connections simultaneously or reuse one connection
for all les requested from a particular server. Initial performance can be poor, and many connections never get
out of the slow-start regime, signicantly increasing latency.
48.7 References
[1] (Al-Bahadili, 2012, p. 282) Al-Bahadili, H. (2012).
Simulation in computer network design and modeling:
Use and analysis. Hershey, PA: IGI Global.
[2] TCP Tunnels: Avoiding Congestion Collapse (2000)
[3] Van Jacobson, Michael J. Karels. Congestion Avoidance and Control (1988). Proceedings of the Sigcomm '88
Symposium, vol.18(4): pp.314329. Stanford, CA. August, 1988. This paper originated many of the congestion
avoidance algorithms used in TCP/IP.
[4] RFC 2001 - TCP Slow Start, Congestion Avoidance, Fast
Retransmit, and Fast Recovery Algorithms
[5] RFC 2581 - TCP Congestion Control
[6] RFC 3390 - TCP Increasing TCPs Initial Window
[7] TCP Congestion Avoidance Explained via a Sequence Diagram
[8] Sally Floyd: RED (Random Early Detection) Queue Management
[9] Sally Floyd, Van Jacobson. Random Early Detection
Gateways for Congestion Avoidance (1993). IEEE/ACM
Transactions on Networking, vol.1(4): pp.397413. Invented Random Early Detection (RED) gateways.
[10] An Analytical RED Function Design Guaranteeing Stable
System Behavior Quote: "...The advantage of this function lies not only in avoiding heavy oscillations but also
in avoiding link under-utilization at low loads. The applicability of the derived function is independent of the
load range, no parameters are to be adjusted. Compared
to the original linear drop function applicability is extended by far...Our example with realistic system parameters gives an approximation function of the cubic of the
queue size...
[11] Zhang, Changwang; Yin, Jianping; Cai, Zhiping; Chen,
Weifeng (2010). RRED: Robust RED Algorithm to
Counter Low-rate Denial-of-Service Attacks (PDF).
IEEE Communications Letter. IEEE. 14: 489491.
[12] RFC 3168 - The Addition of Explicit Congestion Notication (ECN) to IP
260
TFRC Homepage
48.8 Books
Deploying IP and MPLS QoS for Multiservice
Networks: Theory and Practice by John Evans,
Clarence Filsls (Morgan Kaufmann, 2007, ISBN
0-12-370549-5)
AIMD-FC Homepage
TCP congestion control simulation: Fast recovery
Chapter 49
Operating system
An operating system (OS) is system software that manages computer hardware and software resources and provides common services for computer programs. All
computer programs, excluding rmware, require an operating system to function.
Single-user operating systems have no facilities to distinguish users, but may allow multiple programs to run in
tandem.[5] A multi-user operating system extends the basic concept of multi-tasking with facilities that identify
processes and resources, such as disk space, belonging to
multiple users, and the system permits multiple users to
interact with the system at the same time. Time-sharing
operating systems schedule tasks for ecient use of the
The dominant desktop operating system is Microsoft system and may also include accounting software for cost
Windows with a market share of around 85%. OS X allocation of processor time, mass storage, printing, and
by Apple Inc. is in second place (9%), and Linux is in other resources to multiple users.
third position (1.5%). [3] In the mobile sector Android
by Google is dominant with 63% and iOS by Apple is
placed second with around 25%.[4] Linux is dominant in
49.1.3 Distributed
the server and supercomputing sectors. Other specialized
classes of operating systems, such as embedded and realA distributed operating system manages a group of distime systems, exist for many applications.
tinct computers and makes them appear to be a single
computer. The development of networked computers
that could be linked and communicate with each other
49.1 Types of operating systems
gave rise to distributed computing. Distributed computations are carried out on more than one machine. When
computers in a group work in cooperation, they form a
49.1.1 Single- and multi-tasking
distributed system.[6]
A single-tasking system can only run one program at a
time, while a multi-tasking operating system allows more
than one program to be running in concurrency. This is
achieved by time-sharing, dividing the available processor time between multiple processes that are each interrupted repeatedly in time slices by a task-scheduling subsystem of the operating system. Multi-tasking may be
characterized in preemptive and co-operative types. In
preemptive multitasking, the operating system slices the
CPU time and dedicates a slot to each of the programs.
49.1.4 Templated
In an OS, distributed and cloud computing context,
templating refers to creating a single virtual machine image as a guest operating system, then saving it as a tool for
multiple running virtual machines. The technique is used
both in virtualization and cloud computing management,
and is common in large server warehouses.[7]
261
262
49.1.5
Embedded
49.1.6
Real-time
49.1.7
Library
49.2 History
Main article: History of operating systems
See also: Resident monitor
Early computers were built to perform a series of single
tasks, like a calculator. Basic operating system features
were developed in the 1950s, such as resident monitor
functions that could automatically run dierent programs
in succession to speed up processing. Operating systems
did not exist in their modern and more complex forms until the early 1960s.[8] Hardware features were added, that
enabled use of runtime libraries, interrupts, and parallel
processing. When personal computers became popular in
the 1980s, operating systems were made for them similar
in concept to those used on larger computers.
49.2. HISTORY
263
sidered by many to be the rst recognisable modern operating system.[9] Brinch Hansen described it as the
most signicant breakthrough in the history of operating
systems.[10]
49.2.1
Mainframes
264
49.2.2
Microcomputers
PC DOS was an early personal computer OS that featured a command line interface.
The Unix-like family is a diverse group of operating sysThe introduction of the Intel 80386 CPU chip in Octo- tems, with several major sub-categories including System
ber 1985,[11] with 32-bit architecture and paging capa- V, BSD, and Linux. The name "UNIX" is a trademark of
265
In 1974, University of California, Berkeley installed its
rst Unix system. Over time, students and sta in the
computer science department there began adding new
programs to make things easier, such as text editors.
When Berkeley received new VAX computers in 1978
with Unix installed, the schools undergraduates modied
Unix even more in order to take advantage of the computers hardware possibilities. The Defense Advanced
Research Projects Agency of the US Department of Defense took interest, and decided to fund the project. Many
schools, corporations, and government organizations took
notice and started to use Berkeleys version of Unix instead of the ocial one distributed by AT&T.
Steve Jobs, upon leaving Apple Inc. in 1985, formed
NeXT Inc., a company that manufactured high-end computers running on a variation of BSD called NeXTSTEP.
One of these computers was used by Tim Berners-Lee as
the rst webserver to create the World Wide Web.
OS X Main article: OS X
OS X (formerly Mac OS X) is a line of open core
The rst server for the World Wide Web ran on NeXTSTEP,
based on BSD.
266
49.4. COMPONENTS
Microsoft Windows is a family of proprietary operating systems designed by Microsoft Corporation and primarily targeted to Intel architecture based computers,
with an estimated 88.9 percent total usage share on Web
connected computers.[14][20][21][22] The latest version is
Windows 10.
267
49.4 Components
nel provides the most basic level of control over all of the
computers hardware devices. It manages memory access
for programs in the RAM, it determines which programs
get access to which hardware resources, it sets up or resets the CPUs operating states for optimal operation at all
49.3.3 Other
times, and it organizes the data for long-term non-volatile
storage with le systems on such media as disks, tapes,
There have been many operating systems that were signif- ash memory, etc.
icant in their day but are no longer so, such as AmigaOS;
OS/2 from IBM and Microsoft; Mac OS, the non-Unix
precursor to Apples Mac OS X; BeOS; XTS-300; RISC Program execution
OS; MorphOS; Haiku; BareMetal and FreeMint. Some
are still used in niche markets and continue to be de- Main article: Process (computing)
veloped as minority platforms for enthusiast communities and specialist applications. OpenVMS, formerly The operating system provides an interface between an
from DEC, is still under active development by Hewlett- application program and the computer hardware, so that
Packard. Yet other operating systems are used almost an application program can interact with the hardware
exclusively in academia, for operating systems education only by obeying rules and procedures programmed into
or to do research on operating system concepts. A typi- the operating system. The operating system is also a set
cal example of a system that fullls both roles is MINIX, of services which simplify development and execution of
while for example Singularity is used purely for research. application programs. Executing an application program
Other operating systems have failed to win signicant
market share, but have introduced innovations that have
inuenced mainstream operating systems, not least Bell
Labs Plan 9.
268
Ring 3
Ring 2
Least privileged
Ring 1
Interrupts
Ring 0
Kernel
Interrupts are central to operating systems, as they provide an ecient way for the operating system to interact with and react to its environment. The alternative
having the operating system watch the various sources
of input for events (polling) that require action can be
found in older systems with very small stacks (50 or 60
bytes) but is unusual in modern systems with large stacks.
Interrupt-based programming is directly supported by
most modern CPUs. Interrupts provide a computer with
a way of automatically saving local register contexts, and
running specic code in response to events. Even very
basic computers support hardware interrupts, and allow
the programmer to specify code which may be run when
that event takes place.
Device drivers
Most privileged
Device drivers
Applications
Memory management
49.4. COMPONENTS
tem kernel must be responsible for managing all system
memory which is currently in use by programs. This ensures that a program does not interfere with memory already in use by another program. Since programs time
share, each program must have independent access to
memory.
Cooperative memory management, used by many early
operating systems, assumes that all programs make voluntary use of the kernel's memory manager, and do not
exceed their allocated memory. This system of memory
management is almost never seen any more, since programs often contain bugs which can cause them to exceed
their allocated memory. If a program fails, it may cause
memory used by one or more other programs to be affected or overwritten. Malicious programs or viruses may
purposefully alter another programs memory, or may affect the operation of the operating system itself. With
cooperative memory management, it takes only one misbehaved program to crash the system.
Memory protection enables the kernel to limit a process
access to the computers memory. Various methods of
memory protection exist, including memory segmentation and paging. All methods require some level of hardware support (such as the 80286 MMU), which doesn't
exist in all computers.
In both segmentation and paging, certain protected mode
registers specify to the CPU what memory address it
should allow a running program to access. Attempts to
access other addresses trigger an interrupt which cause
the CPU to re-enter supervisor mode, placing the kernel
in charge. This is called a segmentation violation or SegV for short, and since it is both dicult to assign a meaningful result to such an operation, and because it is usually
a sign of a misbehaving program, the kernel generally resorts to terminating the oending program, and reports
the error.
Windows versions 3.1 through ME had some level of
memory protection, but programs could easily circumvent the need to use it. A general protection fault would
be produced, indicating a segmentation violation had occurred; however, the system would often crash anyway.
Virtual memory
Main article: Virtual memory
Further information: Page fault
The use of virtual memory addressing (such as paging
or segmentation) means that the kernel can choose what
memory each program may use at any given time, allowing the operating system to use the same memory locations for multiple tasks.
269
Virtual memory
(per process)
Physical
memory
Another
process's
memory
RAM
Disk
Many operating systems can trick programs into using memory
scattered around the hard disk and RAM as if it is one continuous
chunk of memory, called virtual memory.
Multitasking
If a program tries to access memory that isn't in its current
range of accessible memory, but nonetheless has been al- Main articles: Computer multitasking and Process
located to it, the kernel is interrupted in the same way management (computing)
as it would if the program were to exceed its allocated Further information: Context switch, Preemptive multi-
270
File systems allow users and programs to organize and sort les
on a computer, often through the use of directories (or folders)
49.4. COMPONENTS
access each specic le system into a standard set of commands that the operating system can use to talk to all le
systems. Programs can then deal with these le systems
on the basis of lenames, and directories/folders, contained within a hierarchical structure. They can create,
delete, open, and close les, as well as gather various information about them, including access permissions, size,
free space, and creation and modication dates.
Various dierences between le systems make supporting all le systems dicult. Allowed characters in le
names, case sensitivity, and the presence of various kinds
of le attributes makes the implementation of a single
interface for every le system a daunting task. Operating systems tend to recommend using (and so support
natively) le systems specically designed for them; for
example, NTFS in Windows and ext3 and ReiserFS in
Linux. However, in practice, third party drivers are usually available to give support for the most widely used
le systems in most general-purpose operating systems
(for example, NTFS is available in Linux through NTFS3g, and ext2/3 and ReiserFS are available in Windows
through third-party software).
Support for le systems is highly varied among modern
operating systems, although there are several common
le systems which almost all operating systems include
support and drivers for. Operating systems vary on le
system support and on the disk formats they may be installed on. Under Windows, each le system is usually
limited in application to certain media; for example, CDs
must use ISO 9660 or UDF, and as of Windows Vista,
NTFS is the only le system which the operating system
can be installed on. It is possible to install Linux onto
many types of le systems. Unlike other operating systems, Linux and UNIX allow any le system to be used
regardless of the media it is stored in, whether it is a hard
drive, a disc (CD, DVD...), a USB ash drive, or even
contained within a le located on another le system.
Device drivers
Main article: Device driver
A device driver is a specic type of computer software
developed to allow interaction with hardware devices.
Typically this constitutes an interface for communicating with the device, through the specic computer bus
or communications subsystem that the hardware is connected to, providing commands to and/or receiving data
from the device, and on the other end, the requisite interfaces to the operating system and software applications.
It is a specialized hardware-dependent computer program
which is also operating system specic that enables another program, typically an operating system or applications software package or computer program running under the operating system kernel, to interact transparently
with a hardware device, and usually provides the requi-
271
site interrupt handling necessary for any necessary asynchronous time-dependent hardware interfacing needs.
The key design goal of device drivers is abstraction. Every model of hardware (even within the same class of
device) is dierent. Newer models also are released by
manufacturers that provide more reliable or better performance and these newer models are often controlled differently. Computers and their operating systems cannot
be expected to know how to control every device, both
now and in the future. To solve this problem, operating systems essentially dictate how every type of device
should be controlled. The function of the device driver is
then to translate these operating system mandated function calls into device specic calls. In theory a new device, which is controlled in a new manner, should function
correctly if a suitable driver is available. This new driver
ensures that the device appears to operate as usual from
the operating systems point of view.
Under versions of Windows before Vista and versions of
Linux before 2.6, all driver execution was co-operative,
meaning that if a driver entered an innite loop it would
freeze the system. More recent revisions of these operating systems incorporate kernel preemption, where the
kernel interrupts the driver to give it tasks, and then separates itself from the process until it receives a response
from the device driver, or gives it more tasks to do.
49.4.2 Networking
Main article: Computer network
Currently most operating systems support a variety of networking protocols, hardware, and applications for using
them. This means that computers running dissimilar operating systems can participate in a common network for
sharing resources such as computing, les, printers, and
scanners using either wired or wireless connections. Networks can essentially allow a computers operating system
to access the resources of a remote computer to support
the same functions as it could if those resources were connected directly to the local computer. This includes everything from simple communication, to using networked
le systems or even sharing another computers graphics
or sound hardware. Some network services allow the resources of a computer to be accessed transparently, such
as SSH which allows networked users direct access to a
computers command line interface.
Client/server networking allows a program on a computer, called a client, to connect via a network to another
computer, called a server. Servers oer (or host) various
services to other network computers and users. These
services are usually provided through ports or numbered
access points beyond the servers network address. Each
port number is usually associated with a maximum of one
running program, which is responsible for handling requests to that port. A daemon, being a user program, can
272
in turn access the local hardware resources of that com- held on computers, both of a commercial and military naputer by passing requests to the operating system kernel. ture. The United States Government Department of DeMany operating systems support one or more vendor- fense (DoD) created the Trusted Computer System Evaluspecic or open networking protocols as well, for ex- ation Criteria (TCSEC) which is a standard that sets baample, SNA on IBM systems, DECnet on systems from sic requirements for assessing the eectiveness of secuDigital Equipment Corporation, and Microsoft-specic rity. This became of vital importance to operating system
protocols (SMB) on Windows. Specic protocols for spe- makers, because the TCSEC was used to evaluate, clascic tasks may also be supported such as NFS for le sify and select trusted operating systems being considered
for the processing, storage and retrieval of sensitive or
access. Protocols like ESound, or esd can be easily extended over the network to provide sound from local ap- classied information.
plications, on a remote systems sound hardware.
49.4.3
Security
273
Windows 9x had very little distinction between the interface and the kernel.
Many computer operating systems allow the user to install
or create any user interface they desire. The X Window
System in conjunction with GNOME or KDE Plasma
Desktop is a commonly found setup on most Unix and
Unix-like (BSD, Linux, Solaris) systems. A number of
Windows shell replacements have been released for Microsoft Windows, which oer alternatives to the included
Windows shell, but the shell itself cannot be separated
from Windows.
A real-time operating system (RTOS) is an operating system intended for applications with xed deadlines (realtime computing). Such applications include some small
Most of the modern computer systems support graphical embedded systems, automobile engine controllers, indususer interfaces (GUI), and often include them. In some trial robots, spacecraft, industrial control, and some largecomputer systems, such as the original implementation of scale computing systems.
Mac OS, the GUI is integrated into the kernel.
An early example of a large-scale real-time operating sysWhile technically a graphical user interface is not an op- tem was Transaction Processing Facility developed by
erating system service, incorporating support for one into American Airlines and IBM for the Sabre Airline Reserthe operating system kernel can allow the GUI to be more vations System.
responsive by reducing the number of context switches required for the GUI to perform its output functions. Other Embedded systems that have xed deadlines use a realoperating systems are modular, separating the graphics time operating system such as VxWorks, PikeOS, eCos,
subsystem from the kernel and the Operating System. In QNX, MontaVista Linux and RTLinux. Windows CE is
the 1980s UNIX, VMS and many others had operating a real-time operating system that shares similar APIs to
systems that were built this way. Linux and Mac OS X are desktop Windows but shares none of desktop Windows
also built this way. Modern releases of Microsoft Win- codebase. Symbian OS also has an RTOS kernel (EKA2)
dows such as Windows Vista implement a graphics sub- starting with version 8.0b.
system that is mostly in user-space; however the graphics Some embedded systems use operating systems such as
drawing routines of versions between Windows NT 4.0 Palm OS, BSD, and Linux, although such operating sysand Windows Server 2003 exist mostly in kernel space. tems do not support real-time computing.
274
Source: Gartner
49.10 References
[1] Stallings (2005). Operating Systems, Internals and Design
Principles. Pearson: Prentice Hall. p. 6.
[2] Dhotre, I.A. (2009). Operating Systems. Technical Publications. p. 1.
[3] http://gs.statcounter.com/
#desktop-os-ww-monthly-201507-201607-bar
[4] http://gs.statcounter.com/#mobile_
os-ww-monthly-201507-201607-bar
[5] Lorch, Jacob R., and Alan Jay Smith. Reducing processor power consumption by improving processor time
management in a single-user operating system. Proceedings of the 2nd annual international conference on Mobile
computing and networking. ACM, 1996.
275
[27] Using NDIS 2 PCMCIA Network Card Drivers in Windows 95. Support.microsoft.com. Retrieved 2012-0807.
[28] INFO: Windows 95 Multimedia Wave Device Drivers
Must be 16 bit. Support.microsoft.com. Retrieved 201208-07.
[29] Arthur, Charles. Windows 8 will run on ARM chips but third-party apps will need rewrite. The Guardian.
[8] Hansen, Per Brinch, ed. (2001). Classic Operating Systems. Springer. pp. 47. ISBN 0-387-95113-X.
[30] Operating System Share by Groups for Sites in All Locations January 2009.
[9] Lavington, Simon (1998). A History of Manchester Computers (2nd ed.). Swindon: The British Computer Society.
pp. 5052. ISBN 978-1-902505-01-5.
[31] Behind the IDC data: Windows still No. 1 in server operating systems. ZDNet. 2010-02-26.
[32] Stallings, William (2008). Computer Organization & Architecture. New Delhi: Prentice-Hall of India Private
Limited. p. 267. ISBN 978-81-203-2962-1.
[33] Poisson, Ken. Chronology of Personal Computer Software. Retrieved on 2008-05-07. Last checked on 200903-30.
[35] The History of Unix. BYTE. August 1983. p. 188. Retrieved 31 January 2015.
[36] Whitney, Lance (7 January 2014). Android device shipments to top 1 billion this year -- Gartner.
[15] IDC report into Server market share. Idc.com. Retrieved 2012-08-07.
[16] LinuxDevices Sta (23 April 2008). Linux still top embedded OS. LinuxGizmos.com. Retrieved 5 April 2016.
[17] Sublist Generator. Top500.org. Retrieved November
2015. Check date values in: |access-date= (help)
[18] Chromium OS. Chromium.org.
[22] Operating System Market Share. Net Applications. October 2009. Retrieved 5 November 2009.
[23] w3schools.com OS Platform Statistics. Retrieved 30
October 2011.
[24] Stats Count Global Stats Top Five Operating Systems.
Retrieved 30 October 2011.
O'Brien, J.A., & Marakas, G.M.(2011). Management Information Systems. 10e. McGraw-Hill Irwin
276
Chapter 50
OSI model
The Open Systems Interconnection model (OSI
model) is a conceptual model that characterizes and standardizes the communication functions of a telecommunication or computing system without regard to their underlying internal structure and technology. Its goal is the
interoperability of diverse communication systems with
standard protocols. The model partitions a communication system into abstraction layers. The original version
of the model dened seven layers.
50.1 History
In the late 1970s, one project was administered by the International Organization for Standardization (ISO), while
another was undertaken by the International Telegraph
and Telephone Consultative Committee, or CCITT (the
abbreviation is from the French version of the name).
277
278
279
50.2.4
The transport layer provides the functional and procedural means of transferring variable-length data sequences The session layer controls the dialogues (connections) befrom a source to a destination host via one or more net- tween computers. It establishes, manages and terminates
works, while maintaining the quality of service functions. the connections between the local and remote application.
It provides for full-duplex, half-duplex, or simplex operAn example of a transport-layer protocol in the standard ation, and establishes checkpointing, adjournment, terInternet stack is Transmission Control Protocol (TCP), mination, and restart procedures. The OSI model made
usually built on top of the Internet Protocol (IP).
this layer responsible for graceful close of sessions, which
The transport layer controls the reliability of a given link is a property of the Transmission Control Protocol, and
through ow control, segmentation/desegmentation, and also for session checkpointing and recovery, which is not
error control. Some protocols are state- and connection- usually used in the Internet Protocol Suite. The session
oriented. This means that the transport layer can keep layer is commonly implemented explicitly in application
track of the segments and retransmit those that fail. The environments that use remote procedure calls.
transport layer also provides the acknowledgement of the
successful data transmission and sends the next data if
no errors occurred. The transport layer creates packets 50.2.6 Layer 6: Presentation Layer
out of the message received from the application layer.
Packetizing is a process of dividing the long message into The presentation layer establishes context between
smaller messages.
application-layer entities, in which the application-layer
OSI denes ve classes of connection-mode transport entities may use dierent syntax and semantics if the preprotocols ranging from class 0 (which is also known as sentation service provides a mapping between them. If a
TP0 and provides the fewest features) to class 4 (TP4, mapping is available, presentation service data units are
designed for less reliable networks, similar to the Inter- encapsulated into session protocol data units, and passed
net). Class 0 contains no error recovery, and was designed down the protocol stack.
for use on network layers that provide error-free connections. Class 4 is closest to TCP, although TCP contains
functions, such as the graceful close, which OSI assigns
to the session layer. Also, all OSI TP connection-mode
protocol classes provide expedited data and preservation
of record boundaries. Detailed characteristics of TP0-4
classes are shown in the following table:[8]
This layer provides independence from data representation (e.g., encryption) by translating between application
and network formats. The presentation layer transforms
data into the form that the application accepts. This layer
formats and encrypts data to be sent across a network. It
is sometimes called the syntax layer.[9]
The original presentation structure used the Basic EncodAn easy way to visualize the transport layer is to com- ing Rules of Abstract Syntax Notation One (ASN.1), with
pare it with a post oce, which deals with the dispatch capabilities such as converting an EBCDIC-coded text
280
50.2.7
50.4 Interfaces
Neither the OSI Reference Model nor OSI protocols
specify any programming interfaces, other than deliberately abstract service specications. Protocol specications precisely dene the interfaces between dierent
computers, but the software interfaces inside computers,
known as network sockets are implementation-specic.
281
The Internet application layer includes the OSI application layer, presentation layer, and most of the
session layer.
[5] ITU-T Recommendataion X.800 (03/91), Security architecture for Open Systems Interconnection for CCITT applications". ITU. Retrieved 14 August 2015.
[6] 5.2 RM description for end stations. IEEE Std 8022014, IEEE Standard for Local and Metropolitan Area
Networks: Overview and Architecture. ieee.
[7] International Organization for Standardization (1989-1115). ISO/IEC 7498-4:1989 -- Information technology -Open Systems Interconnection -- Basic Reference Model:
Naming and addressing. ISO Standards Maintenance
Portal. ISO Central Secretariat. Retrieved 2015-08-17.
The link layer includes the OSI data link layer and
sometimes the physical layers, as well as some protocols of the OSIs network layer.
These comparisons are based on the original seven-layer
protocol model as dened in ISO 7498, rather than renements in such things as the internal organization of
the network layer document.
The presumably strict layering of the OSI model as it [10] G. Miao; G. Song (2014). Energy and spectrum ecient
wireless network design. Cambridge University Press.
is usually described does not present contradictions in
ISBN 1107039886.
TCP/IP, as it is permissible that protocol usage does not
follow the hierarchy implied in a layered model. Such ex[11] ITU-T Recommendation Q.1400 (03/1993)], Architecamples exist in some routing protocols (e.g., OSPF), or
ture framework for the development of signaling and
in the description of tunneling protocols, which provide
OA&M protocols using OSI concepts". ITU. pp. 4, 7.
a link layer for an application, although the tunnel host
protocol might well be a transport or even an application- [12] ITU Rec. X.227 (ISO 8650), X.217 (ISO 8649).
layer protocol in its own right.
[13] X.700 series of recommendations from the ITU-T (in particular X.711) and ISO 9596.
[14] Internetworking Technology Handbook - Internetworking Basics [Internetworking]". Cisco. 15 January 2014.
Retrieved 14 August 2015.
[15] 3GPP specication: 36.300. 3gpp.org. Retrieved 14
August 2015.
[16] RFC 3439
[17] RFC 3439 - Some Internet Architectural Guidelines and
Philosophy. ietf.org. Retrieved 14 August 2015.
[18] Walter Goralski. The Illustrated Network: How TCP/IP
Works in a Modern Network (PDF). Morgan Kaufmann.
p. 26. ISBN 978-0123745415.
50.8 References
[1] ITU-T X-Series Recommendations
[2] Publicly Available Standards. Standards.iso.org. 201007-30. Retrieved 2010-09-11.
[3] The OSI Models Seven Layers Dened and Functions
Explained. Microsoft Support. Retrieved 2014-12-28.
[4] RFC 4253
282
Zimmermann, Hubert (April 1980). OSI Reference Model The ISO Model of Architecture
for Open Systems Interconnection. IEEE Transactions on Communications. 28 (4): 425432.
doi:10.1109/TCOM.1980.1094702.
CiteSeerX:
10.1.1.136.9497.
Cisco Systems Internetworking Technology Handbook
Osi Model : 7 Layer Of The Network Communication
Chapter 51
Physical quantity
A physical quantity is a physical property of a
phenomenon, body, or substance, that can be quantied
by measurement.[1] A physical quantity can be expressed
as the combination of a magnitude expressed by a
number usually a real number and a unit; for example, 1.67492751027 kg (the mass of the neutron), or
299792458 metres per second (the speed of light). Physical quantities are measured as 'nu' where n is the magnitude and u is the unit. For example: A boy measured the
length of a room as 3 m. Here 3 is the magnitude and m
(metre) is the unit. 3 m can also be written as 300 cm.
This shows that n1u1 =n2u2. Almost all matters have
quantity.
Examples
Name reference:
The quantity has a
subscripted or superscripted single letter,
a number of letters, or an entire word, to specify what concept or entity they refer to, and
tend to be written in upright roman typeface
rather than italic while the quantity is in italic.
For instance E or E is usually used to
denote kinetic energy and E or E is
usually used to denote potential energy.
Quantity reference: The quantity has a
subscripted or superscripted single letter, a
number of letters, or an entire word, to specify what measurement/s they refer to, and tend
284
Most physical quantities include a unit, but not all some
are dimensionless. Neither the name of a physical quantity, nor the symbol used to denote it, implies a particular choice of unit, though SI units are usually preferred
and assumed today due to their ease of use and all-round
applicability. For example, a quantity of mass might be
represented by the symbol m, and could be expressed in
the units kilograms (kg), pounds (lb), or daltons (Da).
The last two angular units, plane angle and solid angle, are then:
subsidiary units used in the SI, but are treated as dimensionless. The subsidiary units are used for convenience to
Dierential The dierential n-space volume
dierentiate between a truly dimensionless quantity (pure
element is dn x dVn dx1 dx2 dxn ,
number) and an angle, which are dierent measurements.
XdVn
Derived quantities are those whose denitions are based The meaning of the term physical quantity is generally
well understood (everyone understands what is meant by
on other physical quantities(base quantities).
the frequency of a periodic phenomenon, or the resistance
of an electric wire). The term physical quantity does not
imply a physically invariant quantity. Length for example
51.4.1 Space
is a physical quantity, yet it is variant under coordinate
change in special and general relativity. The notion of
Important applied base units for space and time are be- physical quantities is so basic and intuitive in the realm of
low. Area and volume are of course derived from length, science, that it does not need to be explicitly spelled out
but included for completeness as they occur frequently in or even mentioned. It is universally understood that scienmany derived quantities, in particular densities.
tists will (more often than not) deal with quantitative data,
51.7. SOURCES
as opposed to qualitative data. Explicit mention and discussion of physical quantities is not part of any standard
science program, and is more suited for a philosophy of
science or philosophy program.
The notion of physical quantities is seldom used in
physics, nor is it part of the standard physics vernacular. The idea is often misleading, as its name implies
a quantity that can be physically measured, yet is often incorrectly used to mean a physical invariant. Due
to the rich complexity of physics, many dierent elds
possess dierent physical invariants. There is no known
physical invariant sacred in all possible elds of physics.
Energy, space, momentum, torque, position, and length
(just to name a few) are all found to be experimentally
variant in some particular scale and system. Additionally,
the notion that it is possible to measure physical quantities comes into question, particular in quantum eld theory and normalization techniques. As innities are produced by the theory, the actual measurements made are
not really those of the physical universe (as we cannot
measure innities), they are those of the renormalization
scheme which is expressly depended on our measurement
scheme, coordinate system and metric system.
51.6 References
[1] Joint Committee for Guides in Metrology (JCGM), International Vocabulary of Metrology, Basic and General
Concepts and Associated Terms (VIM), III ed., Pavillon de
Breteuil : JCGM 200:2012 (on-line)
[2] Fourier, Joseph. Thorie analytique de la chaleur, Firmin
Didot, Paris, 1822. (In this book, Fourier introduces the
concept of physical dimensions for the physical quantities.)
51.6.1
Computer implementations
285
51.7 Sources
Cook, Alan H. The observational foundations of
physics, Cambridge, 1994. ISBN 0-521-45597-9
Essential Principles of Physics, P.M. Whelan, M.J.
Hodgeson, 2nd Edition, 1978, John Murray, ISBN
0-7195-3382-1
Encyclopaedia of Physics, R.G. Lerner, G.L. Trigg,
2nd Edition, VHC Publishers, Hans Warlimont,
Springer, 2005, pp 1213
Physics for Scientists and Engineers: With Modern
Physics (6th Edition), P.A. Tipler, G. Mosca, W.H.
Freeman and Co, 2008, 9-781429-202657
Chapter 52
52.1 Overview
52.2 History
POP1 was specied in RFC 918 (1984), POP2 by RFC
937 (1985).
POP3 originated with RFC 1081 (1988). Its current
specication is RFC 1939, updated with an extension
mechanism, RFC 2449 and an authentication mechanism
in RFC 1734.
The original POP3 specication supported only an unencrypted USER/PASS login mechanism or Berkeley
.rhosts access control. POP3 currently supports several authentication methods to provide varying levels of
protection against illegitimate access to a users e-mail.
Most are provided by the POP3 extension mechanisms.
POP3 clients support SASL authentication methods via
the AUTH extension. MIT Project Athena also produced
a Kerberized version. RFC 1460 introduced APOP into
the core protocol. APOP is a challenge/response protocol which uses the MD5 hash function in an attempt to
avoid replay attacks and disclosure of the shared secret.
Clients implementing APOP include Mozilla Thunderbird, Opera Mail, Eudora, KMail, Novell Evolution, RimArts Becky!,[3] Windows Live Mail, PowerMail, Apple
Mail, and Mutt. RFC 1460 was obsoleted by RFC 1725,
which was in turn obsoleted by RFC 1939.
POP supports download-and-delete requirements for access to remote mailboxes (termed maildrop in the POP
RFC's).[2] Although most POP clients have an option to
leave mail on server after download, e-mail clients using POP generally connect, retrieve all messages, store
them on the users PC as new messages, delete them from
the server, and then disconnect. Other protocols, notably
IMAP, (Internet Message Access Protocol) provide more
complete and complex remote access to typical mailbox
operations. In the late 1990s and early 2000s, fewer
Internet Service Providers (ISPs) supported IMAP due
to the storage space that was required on the ISPs hardware. Contemporary e-mail clients supported POP, then
over time popular mail client software added IMAP sup- POP4 exists only as an informal proposal adding basic
folder management, multipart message support, as well
port.
as message ag management to compete with IMAP; but
A POP3 server listens on well-known port 110. has not progressed since 2003.[4]
Encrypted communication for POP3 is either requested
after protocol initiation, using the STLS command, if
supported, or by POP3S, which connects to the server
using Transport Layer Security (TLS) or Secure Sockets 52.3 Extensions and Specications
Layer (SSL) on well-known TCP port 995.
Available messages to the client are xed when a POP ses- An extension mechanism was proposed in RFC 2449
sion opens the maildrop, and are identied by message- to accommodate general extensions as well as announce
number local to that session or, optionally, by a unique in an organized manner support for optional commands,
identier assigned to the message by the POP server. This such as TOP and UIDL. The RFC did not intend to enunique identier is permanent and unique to the maildrop courage extensions, and rearmed that the role of POP3
and allows a client to access the same message in dierent is to provide simple support for mainly download-andPOP sessions. Mail is retrieved and marked for deletion delete requirements of mailbox handling.
by message-number. When the client exits the session, The extensions are termed capabilities and are listed by
the mail marked for deletion is removed from the mail- the CAPA command. Except for APOP, the optional
drop.
commands were included in the initial set of capabilities.
286
52.3.1
STARTTLS
52.3.2
SDPS
52.3.3
In computing, local e-mail clients can use the Kerberized Post Oce Protocol (KPOP), an application-layer
Internet standard protocol, to retrieve e-mail from a remote server over a TCP/IP connection. The KPOP protocol is based on the POP3 protocol with the dierences
that it adds Kerberos security and that it runs by default
over TCP port number 1109 instead of 110. One mail
server software implementation is found in the Cyrus
IMAP server.
287
be until a later session. In short: IMAP is designed
to permit manipulation of remote mailboxes as if
they were local. Depending on the IMAP client implementation and the mail architecture desired by
the system manager, the user may save messages directly on the client machine, or save them on the
server, or be given the choice of doing either.
The POP protocol requires the currently connected
client to be the only client connected to the mailbox. In contrast, the IMAP protocol specically
allows simultaneous access by multiple clients and
provides mechanisms for clients to detect changes
made to the mailbox by other, concurrently connected, clients. See for example RFC3501 section
5.2 which specically cites simultaneous access to
the same mailbox by multiple agents as an example.
When POP retrieves a message, it receives all parts
of it, whereas the IMAP4 protocol allows clients to
retrieve any of the individual MIME parts separately
- for example retrieving the plain text without retrieving attached les.
IMAP supports ags on the server to keep track of
message state: for example, whether or not the message has been read, replied to, or deleted.
by
POP is a much simpler protocol, making implemenS: <wait for connection on TCP port 110> C:
tation easier.
<open connection> S: +OK POP3 server ready
POP mail moves the message from the email server <1896.697170952@dbc.mtview.ca.us> C: APOP mrose
onto your local computer, although there is usually c4c9334bac560ecc979e58001b3e22fb S: +OK mroses
an option to leave the messages on the email server maildrop has 2 messages (320 octets) C: STAT S: +OK
as well.
2 320 C: LIST S: +OK 2 messages (320 octets) S: 1 120
S: 2 200 S: . C: RETR 1 S: +OK 120 octets S: <the
IMAP defaults to leaving the message on the email POP3 server sends message 1> S: . C: DELE 1 S: +OK
server, simply downloading a local copy.
message 1 deleted C: RETR 2 S: +OK 200 octets S: <the
POP treats the mailbox as one store, and has no con- POP3 server sends message 2> S: . C: DELE 2 S: +OK
message 2 deleted C: QUIT S: +OK dewey POP3 server
cept of folders
signing o (maildrop empty) C: <close connection> S:
An IMAP client performs complex queries, asking <wait for next connection>
the server for headers, or the bodies of specied
messages, or to search for messages meeting cer- POP3 servers without the optional APOP command extain criteria. Messages in the mail repository can pect the client to log in with the USER and PASS combe marked with various status ags (e.g. deleted mands:
or answered) and they stay in the repository un- C: USER mrose S: +OK User accepted C: PASS tanstaaf
til explicitly removed by the userwhich may not S: +OK Pass accepted
288
Citadel/UX
Courier Mail Server
Cyrus IMAP server
Dovecot
Eudora Internet Mail Server
HMailServer
52.9 References
[1] Dean, Tamara (2010). Network+ Guide to Networks. Delmar. p. 519.
[2] Allen, David (2004). Windows to Linux. Prentice Hall. p.
192.
Kerio Connect
Mailtraq
Nginx
qmail-pop3d
Qpopper
RePOP
UW IMAP
WinGate
Zimbra
RFC 1957 Some Observations on Implementations of the Post Oce Protocol (POP3)
Chapter 53
Programming language
tensions taken from the dominant implementation being
common.
53.1 Denitions
A programming language is a notation for writing
programs, which are specications of a computation or
algorithm.[3] Some, but not all, authors restrict the term
programming language to those languages that can express all possible algorithms.[3][4] Traits often considered
important for what constitutes a programming language
Source code of a simple computer program written in the C proinclude:
gramming language, which will output the "Hello, world!" message when compiled and run
A programming language is a formal computer language or constructed language designed to communicate instructions to a machine, particularly a computer.
Programming languages can be used to create programs
to control the behavior of a machine or to express
algorithms.
The earliest known programmable machine preceded the
invention of the digital computer and is the automatic
ute player described in the 9th century by the brothers
Musa in Baghdad, during the Islamic Golden Age".[1]
From the early 1800s, programs were used to direct the
behavior of machines such as Jacquard looms and player
pianos.[2] Thousands of dierent programming languages
have been created, mainly in the computer eld, and
many more still are being created every year. Many programming languages require computation to be specied
in an imperative form (i.e., as a sequence of operations to
perform), while other languages use other forms of program specication such as the declarative form (i.e. the
desired result is specied, not how to achieve it).
Function and target A computer programming language is a language used to write computer programs, which involve a computer performing some
kind of computation[5] or algorithm and possibly
control external devices such as printers, disk drives,
robots,[6] and so on. For example, PostScript programs are frequently created by another program
to control a computer printer or display. More
generally, a programming language may describe
computation on some, possibly abstract, machine.
It is generally accepted that a complete specication for a programming language includes a description, possibly idealized, of a machine or processor
for that language.[7] In most practical contexts, a
programming language involves a computer; consequently, programming languages are usually dened
and studied this way.[8] Programming languages differ from natural languages in that natural languages
are only used for interaction between people, while
programming languages also allow humans to communicate instructions to machines.
The description of a programming language is usually Abstractions Programming languages usually contain
split into the two components of syntax (form) and
abstractions for dening and manipulating data
semantics (meaning). Some languages are dened by a
structures or controlling the ow of execution. The
specication document (for example, the C programming
practical necessity that a programming language
language is specied by an ISO Standard), while other
support adequate abstractions is expressed by the
languages (such as Perl) have a dominant implementation
abstraction principle;[9] this principle is sometimes
that is treated as a reference. Some languages have both,
formulated as a recommendation to the programmer
with the basic language dened by a standard and exto make proper use of such abstractions.[10]
289
290
The next step was development of so-called secondgeneration programming languages (2GL) or assembly
languages, which were still closely tied to the instruction
set architecture of the specic computer. These served to
make the program much more human-readable, and relieved the programmer of tedious and error-prone address
calculations.
The rst high-level programming languages, or thirdgeneration programming languages (3GL), were written
in the 1950s. An early high-level programming language
to be designed for a computer was Plankalkl, developed
for the German Z3 by Konrad Zuse between 1943 and
1945. However, it was not implemented until 1998 and
2000.[26]
John Mauchly's Short Code, proposed in 1949, was
one of the rst high-level languages ever developed for
an electronic computer.[27] Unlike machine code, Short
Code statements represented mathematical expressions
in understandable form. However, the program had to
be translated into machine code every time it ran, making the process much slower than running the equivalent
machine code.
Another usage regards programming languages as theoretical constructs for programming abstract machines,
and computer languages as the subset thereof that runs
on physical computers, which have nite hardware
resources.[24] John C. Reynolds emphasizes that formal
specication languages are just as much programming
languages as are the languages intended for execution. He
also argues that textual and even graphical input formats
that aect the behavior of a computer are programming
languages, despite the fact they are commonly not Turingcomplete, and remarks that ignorance of programming The Manchester Mark 1 ran programs written in Autocode from
language concepts is the reason for many aws in input 1952.
formats.[25]
At the University of Manchester, Alick Glennie developed Autocode in the early 1950s. A programming language, it used a compiler to automatically convert the lan53.2 History
guage into machine code. The rst code and compiler
was developed in 1952 for the Mark 1 computer at the
Main article: History of programming languages
University of Manchester and is considered to be the rst
compiled high-level programming language.[28][29]
53.2.1
Early developments
53.2. HISTORY
agnostics which were advanced for the time. A contemporary but separate thread of development, Atlas Autocode was developed for the University of Manchester
Atlas 1 machine.
In 1954, language FORTRAN was invented at IBM by
John Backus; it was the rst widely used high level general
purpose programming language to have a functional implementation, as opposed to just a design on paper.[30][31]
It is still popular language for high-performance computing[32] and is used for programs that benchmark and rank
the worlds fastest supercomputers.[33]
291
Prolog, designed in 1972, was the rst logic programming language.
In 1978, ML built a polymorphic type system on top
of Lisp, pioneering statically typed functional programming languages.
Each of these languages spawned descendants, and most
modern programming languages count at least one of
them in their ancestry.
The 1960s and 1970s also saw considerable debate over
the merits of structured programming, and whether programming languages should be designed to support it.[39]
Edsger Dijkstra, in a famous 1968 letter published in the
Communications of the ACM, argued that GOTO statements should be eliminated from all higher level programming languages.[40]
53.2.2
Renement
292
moved to standardize ML and Lisp. Rather than inventing new paradigms, all of these movements elaborated
upon the ideas invented in the previous decades.
One important trend in language design for programming
large-scale systems during the 1980s was an increased focus on the use of modules, or large-scale organizational
units of code. Modula-2, Ada, and ML all developed
notable module systems in the 1980s, which were often
wedded to generic programming constructs.[42]
The rapid growth of the Internet in the mid-1990s created
opportunities for new languages. Perl, originally a Unix
scripting tool rst released in 1987, became common in
dynamic websites. Java came to be used for server-side
programming, and bytecode virtual machines became
Parse tree of Python code with inset tokenization
popular again in commercial settings with their promise
of "Write once, run anywhere" (UCSD Pascal had been
def add5(x):
return x+5
popular for a time in the early 1980s). These developments were not fundamentally novel, rather they were redef dotwrite(ast):
nodename = getNodename()
nements of many existing languages and paradigms (allabel=symbol.sym_name.get(int(ast[0]),ast[0])
though their syntax was often based on the C family of
print '
%s [label="%s' % (nodename, label),
if isinstance(ast[1], str):
programming languages).
Programming language evolution continues, in both industry and research. Current directions include security and reliability verication, new kinds of modularity (mixins, delegates, aspects), and database integration
such as Microsofts LINQ.
if ast[1].strip():
print '= %s"];' % ast[1]
else:
print '"]'
else:
print '"];'
children = []
for n, child in enumerate(ast[1:]):
children.append(dotwrite(child))
print '
%s -> {' % nodename,
for name in children:
print '%s' % name,
53.3.1
Syntax
53.3. ELEMENTS
293
294
a type system is to verify and usually enforce a certain
level of correctness in programs written in that language
by detecting certain incorrect operations. Any decidable
type system involves a trade-o: while it rejects many
incorrect programs, it can also prohibit some correct, albeit unusual programs. In order to bypass this downside, a number of languages have type loopholes, usually
unchecked casts that may be used by the programmer to
explicitly allow a normally disallowed operation between
dierent types. In most typed languages, the type system
is used only to type check programs, but a number of
languages, usually functional ones, infer types, relieving
the programmer from the need to write type annotations.
The formal design and study of type systems is known as
type theory.
Typed versus untyped languages
A special case of typed languages are the single-type languages. These are often scripting or markup languages,
such as REXX or SGML, and have only one data type
most commonly character strings which are used for both
symbolic and numeric data.
53.3.4
295
also articial languages designed from the ground up with
a specic purpose, they lack the precise and complete semantic denition that a programming language has.
Programs range from tiny scripts written by individual hobbyists to huge systems written by hundreds of
programmers.
Programmers range in expertise from novices who
need simplicity above all else, to experts who may
be comfortable with considerable complexity.
Programs must balance speed, size, and simplicity on systems ranging from microcontrollers to
supercomputers.
Programs may be written once and not change for
generations, or they may undergo continual modication.
Programmers may simply dier in their tastes: they
may be accustomed to discussing problems and expressing them in a particular language.
One common trend in the development of programming
languages has been to add more ability to solve problems
using a higher level of abstraction. The earliest programming languages were tied very closely to the underlying
hardware of the computer. As new programming languages have developed, features have been added that let
programmers express ideas that are more remote from
simple translation into underlying hardware instructions.
Because programmers are less tied to the complexity of
the computer, their programs can do more computing
with less eort from the programmer. This lets them
write more functionality per time unit.[55]
Natural language programming has been proposed as a
way to eliminate the need for a specialized language for
programming. However, this goal remains distant and its
benets are open to debate. Edsger W. Dijkstra took the
position that the use of a formal language is essential to
prevent the introduction of meaningless constructs, and
dismissed natural language programming as foolish.[56]
Alan Perlis was similarly dismissive of the idea.[57] Hybrid approaches have been taken in Structured English
and SQL.
A languages designers and users must construct a number of artifacts that govern and enable the practice of programming. The most important of these artifacts are the
language specication and implementation.
296
53.4.1
Specication
53.6 Usage
53.4.2
Implementation
One technique for improving the performance of interpreted programs is just-in-time compilation. Here A programming language provides a structured mechathe virtual machine, just before execution, translates the nism for dening pieces of data, and the operations or
53.7. TAXONOMIES
transformations that may be carried out automatically on
that data. A programmer uses the abstractions present in
the language to represent the concepts involved in a computation. These concepts are represented as a collection
of the simplest elements available (called primitives).[63]
Programming is the process by which programmers combine these primitives to compose new programs, or adapt
existing ones to new uses or a changing environment.
297
53.7 Taxonomies
For more details on this topic, see Categorical list of
programming languages.
There is no overarching classication scheme for programming languages. A given programming language
does not usually have a single ancestor language. Languages commonly arise by combining the elements of
several predecessor languages with new ideas in circulation at the time. Ideas that originate in one language will
diuse throughout a family of related languages, and then
leap suddenly across familial gaps to appear in an entirely
dierent family.
estimates of the number of existing lines of code A programming language may also be classied by facwritten in the language which may underestimate tors unrelated to programming paradigm. For instance,
languages not often found in public searches[69]
most programming languages use English language key counts of language references (i.e., to the name of words, while a minority do not. Other languages may be
classied as being deliberately esoteric or not.
the language) found using a web search engine.
Combining and averaging information from various internet sites, langpop.com claims that in 2013 the ten most
popular programming languages are (in descending order
by overall popularity): C, Java, PHP, JavaScript, C++,
Python, Shell, Ruby, Objective-C and C#.[70]
298
53.9 References
[1] Koetsier, Teun (2001). On the prehistory of programmable machines; musical automata, looms, calculators. PERGAMON, Mechanisma and Machine Theory
36. pp. 589603.
[2] Ettinger, James (2004) Jacquards Web, Oxford University Press
[3] Aaby, Anthony (2004).
Languages.
[7] R. Narasimahan, Programming Languages and Computers: A Unied Metatheory, pp. 189-247 in Franz Alt,
Morris Rubino (eds.) Advances in computers, Volume
8, Academic Press, 1994, ISBN 0-12-012108-5, p.193
: a complete specication of a programming language
must, by denition, include a specication of a processor-idealized, if you will--for that language. [the source cites
many references to support this statement]
Introduction to Programming
[4] In mathematical terms, this means the programming language is Turing-complete MacLennan, Bruce J. (1987).
Principles of Programming Languages. Oxford University
Press. p. 1. ISBN 0-19-511306-3.
[5] ACM SIGPLAN (2003). Bylaws of the Special Interest Group on Programming Languages of the Association
for Computing Machinery. Retrieved 19 June 2006.,
The scope of SIGPLAN is the theory, design, implementation, description, and application of computer programming languages - languages that permit the specication of
a variety of dierent computations, thereby providing the
user with signicant control (immediate or delayed) over
the computers operation.
[6] Dean, Tom (2002). Programming Robots. Building Intelligent Robots. Brown University Department of Computer Science. Retrieved 23 September 2006.
[10] Pierce, Benjamin (2002). Types and Programming Languages. MIT Press. p. 339. ISBN 0-262-16209-1.
[11] Digital Equipment Corporation. Information Technology - Database Language SQL (Proposed revised text
of DIS 9075)". ISO/IEC 9075:1992, Database Language
SQL. Retrieved 29 June 2006.
[12] The Charity Development Group (December 1996). The
CHARITY Home Page. Retrieved 29 June 2006., Charity is a categorical programming language..., All Charity
computations terminate.
[13] XML in 10 points W3C, 1999, XML is not a programming
language.
[14] Powell, Thomas (2003). HTML & XHTML: the complete
reference. McGraw-Hill. p. 25. ISBN 0-07-222942-X.
HTML is not a programming language.
[15] Dykes, Lucinda; Tittel, Ed (2005). XML For Dummies,
4th Edition. Wiley. p. 20. ISBN 0-7645-8845-1. ...its a
markup language, not a programming language.
[16] What kind of language is XSLT?". IBM.com. Retrieved
3 December 2010.
[17] XSLT
is
a
Programming
Language.
Msdn.microsoft.com. Retrieved 3 December 2010.
[18] Scott, Michael (2006). Programming Language Pragmatics. Morgan Kaufmann. p. 802. ISBN 0-12-633951-1.
XSLT, though highly specialized to the transformation of
XML, is a Turing-complete programming language.
[19] http://tobi.oetiker.ch/lshort/lshort.pdf
[20] Syropoulos, Apostolos; Antonis Tsolomitis; Nick Sofroniou (2003). Digital typography using LaTeX. SpringerVerlag. p. 213. ISBN 0-387-95217-9. TeX is not only
an excellent typesetting engine but also a real programming
language.
[21] Robert A. Edmunds, The Prentice-Hall standard glossary
of computer terminology, Prentice-Hall, 1985, p. 91
53.9. REFERENCES
299
[24] R. Narasimahan, Programming Languages and Computers: A Unied Metatheory, pp. 189-247 in Franz Alt,
Morris Rubino (eds.) Advances in computers, Volume
8, Academic Press, 1994, ISBN 0-12-012108-5, p.215:
"[...] the model [...] for computer languages diers
from that [...] for programming languages in only two
respects. In a computer language, there are only nitely
many names--or registers--which can assume only nitely
many values--or states--and these states are not further
distinguished in terms of any other attributes. [authors
footnote:] This may sound like a truism but its implications are far reaching. For example, it would imply that
any model for programming languages, by xing certain
of its parameters or features, should be reducible in a natural way to a model for computer languages.
[25] John C. Reynolds, Some thoughts on teaching programming and programming languages, SIGPLAN Notices,
Volume 43, Issue 11, November 2008, p.109
[26] Rojas, Ral, et al. (2000). Plankalkl: The First HighLevel Programming Language and its Implementation.
Institut fr Informatik, Freie Universitt Berlin, Technical
Report B-3/2000. (full text)
[43] Michael Sipser (1996). Introduction to the Theory of Computation. PWS Publishing. ISBN 0-534-94728-X. Section 2.2: Pushdown Automata, pp.101114.
[40] Dijkstra, Edsger W. (March 1968). Go To Statement Considered Harmful (PDF). Communications of
the ACM. 11 (3): 147148. doi:10.1145/362929.362947.
Retrieved 2014-05-22.
[41] Tetsuro Fujise, Takashi Chikayama, Kazuaki Rokusawa, Akihiko Nakase (December 1994). KLIC: A
Portable Implementation of KL1 Proc. of FGCS '94,
ICOT Tokyo, December 1994. http://www.icot.or.jp/
ARCHIVE/HomePage-E.html KLIC is a portable implementation of a concurrent logic programming language
KL1.
[44] Jerey Kegler, "Perl and Undecidability", The Perl Review. Papers 2 and 3 prove, using respectively Rices theorem and direct reduction to the halting problem, that the
parsing of Perl programs is in general undecidable.
[45] Marty Hall, 1995, Lecture Notes: Macros, PostScript
version
[46] Michael Lee Scott, Programming language pragmatics,
Edition 2, Morgan Kaufmann, 2006, ISBN 0-12-6339511, p. 1819
[47] Andrew Cooke. Introduction To Computer Languages.
Retrieved 13 July 2012.
[48] Specically, instantiations of generic types are inferred for certain expression forms. Type inference in
Generic Javathe research language that provided the
basis for Java 1.5s bounded parametric polymorphism
extensionsis discussed in two informal manuscripts
from the Types mailing list: Generic Java type inference
is unsound (Alan Jerey, 17 December 2001) and Sound
Generic Java type inference (Martin Odersky, 15 January
2002). C#'s type system is similar to Javas, and uses a
similar partial type inference scheme.
[49] Revised Report on the Algorithmic Language Scheme.
20 February 1998. Retrieved 9 June 2006.
[50] Luca Cardelli and Peter Wegner. On Understanding Types, Data Abstraction, and Polymorphism.
Manuscript (1985). Retrieved 9 June 2006.
[37] Richard L. Wexelblat: History of Programming Languages, Academic Press, 1981, chapter XIV.
300
[54] IBM in rst publishing PL/I, for example, rather ambitiously titled its manual The universal programming language PL/I (IBM Library; 1966). The title reected IBMs
goals for unlimited subsetting capability: PL/I is designed
in such a way that one can isolate subsets from it satisfying the requirements of particular applications. (PL/I.
Encyclopedia of Mathematics. Retrieved 29 June 2006.).
Ada and UNCOL had similar early goals.
[57] Perlis, Alan (September 1982). Epigrams on Programming. SIGPLAN Notices Vol. 17, No. 9. pp. 713.
[58] Milner, R.; M. Tofte, R. Harper and D. MacQueen.
(1997). The Denition of Standard ML (Revised). MIT
Press. ISBN 0-262-63181-4. Cite uses deprecated parameter |coauthors= (help)
[59] Kelsey, Richard; William Clinger; Jonathan Rees (February 1998). Section 7.2 Formal semantics. Revised5 Report on the Algorithmic Language Scheme. Retrieved 9
June 2006.
[60] ANSI Programming Language Rexx, X3-274.1996
[61] HOPL: an interactive Roster of Programming Languages. Australia: Murdoch University. Retrieved 1
June 2009. This site lists 8512 languages.
[62] Mayer, Philip; Bauer, Alexander (1 January 2015).
An Empirical Analysis of the Utilization of Multiple Programming Languages in Open Source Projects.
EASE '15.
New York, NY, USA: ACM: 4:1
4:10. doi:10.1145/2745802.2745805. ISBN 978-14503-3350-4. Retrieved 18 September 2015. Results:
We found (a) a mean number of 5 languages per project
with a clearly dominant main general-purpose language
and 5 often-used DSL types, (b) a signicant inuence
of the size, number of commits, and the main language
on the number of languages as well as no signicant inuence of age and number of contributors, and (c) three
language ecosystems grouped around XML, Shell/Make,
and HTML/CSS. Conclusions: Multi-language programming seems to be common in open-source projects and
is a factor which must be dealt with in tooling and when
assessing development and maintenance of such software
systems.
[63] Abelson, Sussman, and Sussman. Structure and Interpretation of Computer Programs. Retrieved 3 March 2009.
[64] Brown Vicki (1999).
Scripting Languages.
mactech.com. Retrieved November 17, 2014.
[65] Georgina Swan (2009-09-21). COBOL turns 50. computerworld.com.au. Retrieved 2013-10-19.
[66] Ed Airey (2012-05-03). 7 Myths of COBOL Debunked. developer.com. Retrieved 2013-10-19.
301
Chapter 54
54.2 Operators
The task of building the networks and selling services to
customers fell to the network operators. The rst company to be incorporated to provide PSTN services was
the Bell Telephone Company in the United States.
In some countries, however, the job of providing teleAutomation introduced pulse dialing between the phone phone networks fell to government as the investment reand the exchange, and then among exchanges, followed quired was very large and the provision of telephone serby more sophisticated address signaling including multi- vice was increasingly becoming an essential public utility.
302
303
one end to another via telephone exchanges. The call is
switched using a call set up protocol (usually ISUP) between the telephone exchanges under an overall routing
strategy.
The call is carried over the PSTN using a 64 kbit/s channel, originally designed by Bell Labs. The name given
to this channel is Digital Signal 0 (DS0). The DS0 cir54.3 Regulation
cuit is the basic granularity of circuit switching in a telephone exchange. A DS0 is also known as a timeslot beIn most countries, the central government has a regulator cause DS0s are aggregated in time-division multiplexing
dedicated to monitoring the provision of PSTN services (TDM) equipment to form higher capacity communicain that country. Their tasks may be for example to en- tion links.
sure that end customers are not over-charged for services A Digital Signal 1 (DS1) circuit carries 24 DS0s on a
where monopolies may exist. They may also regulate the North American or Japanese T-carrier (T1) line, or 32
prices charged between the operators to carry each others DS0s (30 for calls plus two for framing and signaling) on
trac.
an E-carrier (E1) line used in most other countries. In
54.4 Technology
54.4.1
Network topology
304
54.6 References
[1] Kushnick, Bruce (7 January 2013). What Are the Public Switched Telephone Networks, 'PSTN' and Why You
Should Care?". Hungton Post Blog. Retrieved 11 April
2014.
[2] TIA TSB-116. Global.ihs.com. Retrieved 2011-11-20.
Chapter 55
Radio
This article is about science and technology. For broadcasting, see Radio broadcasting. For other uses, see
Radio (disambiguation).
Radio is the technology of using radio waves to carry
modulation). Radio systems also need an antenna to convert electric currents into radio waves, and vice versa. An
antenna can be used for both transmitting and receiving.
The electrical resonance of tuned circuits in radios allow
individual stations to be selected. The electromagnetic
wave is intercepted by a tuned receiving antenna. A radio
receiver receives its input from an antenna and converts it
into a form usable for the consumer, such as sound, pictures, digital data, measurement values, navigational positions, etc.[2] Radio frequencies occupy the range from
a 3 kHz to 300 GHz, although commercially important
uses of radio use only a small part of this spectrum.[3]
A radio communication system sends signals by radio.[4]
The radio equipment involved in communication systems
includes a transmitter and a receiver, each having an
The Alexandra Palace, here: mast of the broadcasting station
antenna and appropriate terminal equipment such as a
information, such as sound, by systematically modulating microphone at the transmitter and a loudspeaker at the
[5]
some property of electromagnetic energy waves transmit- receiver in the case of a voice-communication system.
ted through space, such as their amplitude, frequency,
phase, or pulse width.[n 1] When radio waves strike
an electrical conductor, the oscillating elds induce an 55.1 Etymology
alternating current in the conductor. The information in
the waves can be extracted and transformed back into its The term radio is derived from the Latin word radius,
original form.
meaning spoke of a wheel, beam of light, ray. It was
Radio systems need a transmitter to modulate (change)
some property of the energy produced to impress a signal
on it, for example using amplitude modulation or angle
modulation (which can be frequency modulation or phase
rst applied to communications in 1881 when, at the suggestion of French scientist Ernest Mercadier, Alexander
Graham Bell adopted radiophone (meaning radiated
sound) as an alternate name for his photophone optical
305
306
transmission system.[6] However, this invention would not Radio Times since its founding in the early 1920s.
be widely adopted.
In recent years the more general term wireless has
Following Heinrich Hertz's establishment of the existence gained renewed popularity, even for devices using elecof electromagnetic radiation in the late 1880s, a vari- tromagnetic radiation, through the rapid growth of shortety of terms were initially used for the phenomenon, range computer networking, e.g., Wireless Local Area
with early descriptions of the radiation itself including Network (WLAN), Wi-Fi, and Bluetooth, as well as moHertzian waves, electric waves, and ether waves, bile telephony, e.g., GSM and UMTS cell phones. Towhile phrases describing its use in communications in- day, the term radio species the transceiver device or
cluded spark telegraphy, space telegraphy, aerogra- chip, whereas wireless refers to the lack of physical
phy and, eventually and most commonly, wireless teleg- connections; thus equipment employs embedded radio
raphy. However, wireless included a broad variety of transceivers, but operates as wireless devices over wirerelated electronic technologies, including electrostatic in- less sensor networks.
duction, electromagnetic induction and aquatic and earth
conduction, so there was a need for a more precise term
referring exclusively to electromagnetic radiation.
55.2 Processes
The rst use of radio- in conjunction with electromagnetic radiation appears to have been by French physicist douard Branly, who in 1890 developed a version
of a coherer receiver he called a radio-conducteur.[7] The
radio- prex was later used to form additional descriptive compound and hyphenated words, especially in Europe, for example, in early 1898 the British publication
The Practical Engineer included a reference to the radiotelegraph and radiotelegraphy,[8] while the French
text of both the 1903 and 1906 Berlin Radiotelegraphic
Conventions includes the phrases radiotlgraphique and
radiotlgrammes.
The use of radio as a standalone word dates back
to at least December 30, 1904, when instructions issued by the British Post Oce for transmitting telegrams specied that The word 'Radio'... is sent in
the Service Instructions.[9] This practice was universally
adopted, and the word radio introduced internationally, by the 1906 Berlin Radiotelegraphic Convention,
which included a Service Regulation specifying that Radiotelegrams shall show in the preamble that the service
is 'Radio'".
The switch to radio in place of wireless took place
slowly and unevenly in the English-speaking world. Lee
de Forest helped popularize the new word in the United
Statesin early 1907 he founded the DeForest Radio
Telephone Company, and his letter in the June 22, 1907
Electrical World about the need for legal restrictions
warned that Radio chaos will certainly be the result until such stringent regulation is enforced.[10] The United
States Navy would also play a role. Although its translation of the 1906 Berlin Convention used the terms wireless telegraph and wireless telegram, by 1912 it began
to promote the use of radio instead. The term started
to become preferred by the general public in the 1920s
with the introduction of broadcasting. (Broadcasting is
based upon an agricultural term meaning roughly scattering seeds widely.) British Commonwealth countries
continued to commonly use the term wireless until the
mid-20th century, though the magazine of the British
Broadcasting Corporation in the UK has been called
Radio systems used for communication have the following elements. With more than 100 years of development,
each process is implemented by a wide range of methods,
specialized for dierent communications purposes.
55.2. PROCESSES
307
signal strength can be used to reect the sounds to be reproduced by a speaker, or to specify the light intensity of
television pixels. It was the method used for the rst audio radio transmissions, and remains in use today. AM
is often used to refer to the medium wave broadcast band
(see AM radio), but it is used in various radiotelephone
services such as the Citizen Band, amateur radio and es- Rooftop television antennas. Yagi-Uda antennas like these six are
pecially in aviation, due to its ability to be received under widely used at VHF and UHF frequencies.
very weak signal conditions and its immunity to capture
eect, allowing more than one signal to be heard simulduce a tiny voltage at its terminals, that is applied to a
taneously.
receiver to be amplied. Some antennas can be used for
Frequency modulation varies the frequency of the carrier. both transmitting and receiving, even simultaneously, deThe instantaneous frequency of the carrier is directly pro- pending on the connected equipment.
portional to the instantaneous value of the input signal.
FM has the "capture eect" whereby a receiver only receives the strongest signal, even when others are present. 55.2.3 Propagation
Digital data can be sent by shifting the carriers frequency
among a set of discrete values, a technique known as Main article: Radio propagation
frequency-shift keying. FM is commonly used at Very
high frequency (VHF) radio frequencies for high-delity
broadcasts of music and speech (see FM broadcasting). Once generated, electromagnetic waves travel through
space either directly, or have their path altered by
Analog TV sound is also broadcast using FM.
reection, refraction or diraction. The intensity of
Angle modulation alters the instantaneous phase of the the waves diminishes due to geometric dispersion (the
carrier wave to transmit a signal. It may be either FM or inverse-square law); some energy may also be absorbed
phase modulation (PM).
by the intervening medium in some cases. Noise will generally alter the desired signal; this electromagnetic interference comes from natural sources, as well as from ar55.2.2 Antenna
ticial sources such as other transmitters and accidental
radiators. Noise is also produced at every step due to the
inherent properties of the devices used. If the magniMain article: Antenna (radio)
An antenna (or aerial) is an electrical device which con- tude of the noise is large enough, the desired signal will
verts electric currents into radio waves, and vice versa. It no longer be discernible; the signal-to-noise ratio is the
is usually used with a radio transmitter or radio receiver. fundamental limit to the range of radio communications.
In transmission, a radio transmitter supplies an electric
current oscillating at radio frequency (i.e. high frequency
AC) to the antennas terminals, and the antenna radiates 55.2.4 Resonance
the energy from the current as electromagnetic waves (radio waves). In reception, an antenna intercepts some of Main article: Electrical resonance
the power of an electromagnetic wave in order to pro- See also: LC circuit
308
The power consumed in a transmitting station varies depending on the distance of communication and the transmission conditions. The power received at the receiving
station is usually only a tiny fraction of the transmitters
output, since communication depends on receiving the
information, not the energy, that was transmitted.
ceiving antenna; this structure captures some of the energy of the wave and returns it to the form of oscillating electrical currents. At the receiver, these currents are
demodulated, which is conversion to a usable signal form
by a detector sub-system. The receiver is "tuned" to re- Classical radio communications systems use frequencyspond preferentially to the desired signals, and reject undivision multiplexing (FDM) as a strategy to split up and
desired signals.
share the available radio-frequency bandwidth for use by
Early radio systems relied entirely on the energy collected dierent parties communications concurrently. Modern
by an antenna to produce signals for the operator. Ra- radio communication systems include those that divide
dio became more useful after the invention of electronic up a radio-frequency band by time-division multiplexing
devices such as the vacuum tube and later the transistor, (TDM) and code-division multiplexing (CDM) as alterwhich made it possible to amplify weak signals. Today ra- natives to the classical FDM strategy. These systems ofdio systems are used for applications from walkie-talkie fer dierent tradeos in supporting multiple users, bechildrens toys to the control of space vehicles, as well as yond the FDM strategy that was ideal for broadcast radio
for broadcasting, and many other applications.
but less so for applications such as mobile telephony.
A radio receiver receives its input from an antenna, uses
electronic lters to separate a wanted radio signal from all
other signals picked up by this antenna, amplies it to a
level suitable for further processing, and nally converts
through demodulation and decoding the signal into a form
usable for the consumer, such as sound, pictures, digital
data, measurement values, navigational positions, etc.[11]
55.4 History
309
Early uses were maritime, for sending telegraphic messages using Morse code between ships and land. The earliest users included the Japanese Navy scouting the Russian eet during the Battle of Tsushima in 1905. One of
the most memorable uses of marine telegraphy was during the sinking of the RMS Titanic in 1912, including
communications between operators on the sinking ship
and nearby vessels, and communications to shore stations
listing the survivors.
Radio was used to pass on orders and communications
between armies and navies on both sides in World War
I; Germany used radio communications for diplomatic
messages once it discovered that its submarine cables had
been tapped by the British. The United States passed
on President Woodrow Wilson's Fourteen Points to Germany via radio during the war. Broadcasting began from
San Jose, California in 1909,[23] and became feasible in
the 1920s, with the widespread introduction of radio receivers, particularly in Europe and the United States. Besides broadcasting, point-to-point broadcasting, including telephone messages and relays of radio programs, became widespread in the 1920s and 1930s. Another use of
radio in the pre-war years was the development of detection and locating of aircraft and ships by the use of radar
(RAdio Detection And Ranging).
Today, radio takes many forms, including wireless networks and mobile communications of all types, as well as
radio broadcasting. Before the advent of television, commercial radio broadcasts included not only news and music, but dramas, comedies, variety shows, and many other
forms of entertainment (the era from the late 1920s to
the mid-1950s is commonly called radios Golden Age).
Radio was unique among methods of dramatic presentation in that it used only sound. For more, see radio proEarly 20th century radio systems transmitted messages
gramming.
by continuous wave code only. Early attempts at developing a system of amplitude modulation for voice and
music were demonstrated in 1900 and 1906, but had little success. World War I accelerated the development of 55.5.1 Audio
radio for military communications, and in this era the rst
vacuum tubes were applied to radio transmitters and re- One-way
ceivers. Electronic amplication was a key development
in changing radio from an experimental practice by ex- Main article: Radio broadcasting
perts into a home appliance. After the war, commercial AM radio uses amplitude modulation, in which the amradio broadcasting began in the 1920s and became an im- plitude of the transmitted signal is made proportional to
portant mass medium for entertainment and news.
the sound amplitude captured (transduced) by the miWorld War II again accelerated development of radio for crophone, while the transmitted frequency remains unthe wartime purposes of aircraft and land communica- changed. Transmissions are aected by static and intion, radio navigation and radar. After the war, the ex- terference because lightning and other sources of radio
periments in television that had been interrupted were re- emissions on the same frequency add their amplitudes to
sumed, and it also became an important home entertain- the original transmitted amplitude.
ment medium.
310
311
quently, 100,000-watt FM stations can regularly be heard Marine voice radios can use single sideband voice (SSB)
up to 100 miles (160 km) away, and farther, 150 miles in the shortwave High Frequency (HF3 MHz to 30
(240 km), if there are no competing signals.
MHz) radio spectrum for very long ranges or Marine
A few old, grandfathered stations do not conform to VHF radio / narrowband FM in the VHF spectrum for
these power rules. WBCT-FM (93.7) in Grand Rapids, much shorter ranges. Narrowband FM sacrices delity
Michigan, US, runs 320,000 watts ERP, and can increase to make more channels available within the radio specto 500,000 watts ERP by the terms of its original license. trum, by using a smaller range of radio frequencies, usuSuch a huge power level does not usually help to increase ally with ve kHz of deviation, versus the 75 kHz used
by commercial FM broadcasts, and 25 kHz used for TV
range as much as one might expect, because VHF frequencies travel in nearly straight lines over the horizon sound.
and o into space. Nevertheless, when there were fewer
FM stations competing, this station could be heard near
Bloomington, Illinois, US, almost 300 miles (480 km)
away.
Two-way
Main article: Two-way radio
Aviation voice radios use Aircraft band VHF AM. AM
is used so that multiple stations on the same channel can
be received. (Use of FM would result in stronger stations blocking out reception of weaker stations due to
FMs capture eect). Aircraft y high enough that their
transmitters can be received hundreds of miles away, even
though they are using VHF.
55.5.2 Telephony
Mobile phones transmit to a local cell site (transmitter/receiver) that ultimately connects to the public
switched telephone network (PSTN) through an optic
ber or microwave radio and other network elements.
When the mobile phone nears the edge of the cell sites
radio coverage area, the central computer switches the
phone to a new cell. Cell phones originally used FM, but
now most use various digital modulation schemes. Recent developments in Sweden (such as DROPme) allow
for the instant downloading of digital material from a radio broadcast (such as a song) to a mobile phone.
Satellite phones use satellites rather than cell towers to
communicate.
55.5.3 Video
312
55.5.5 Radar
Main article: Radar
Radar (Radio Detection And Ranging) detects objects at
a distance by bouncing radio waves o them. The delay
caused by the echo measures the distance. The direction
of the beam determines the direction of the reection.
The polarization and frequency of the return can sense
the type of surface. Navigational radars scan a wide area
two to four times per minute. They use very short waves
that reect from earth and stone. They are common on
commercial ships and long-distance commercial aircraft.
55.5.4
Navigation
313
sions. Commercial use of spread spectrum began in the
1980s. Bluetooth, most cell phones, and the 802.11b version of Wi-Fi each use various forms of spread spectrum.
Systems that need reliability, or that share their frequency with other services, may use coded orthogonal
frequency-division multiplexing or COFDM. COFDM
breaks a digital signal into as many as several hundred
slower subchannels. The digital signal is often sent as
QAM on the subchannels. Modern COFDM systems use
a small computer to make and decode the signal with
digital signal processing, which is more exible and far
less expensive than older systems that implemented separate electronic channels.
COFDM resists fading and ghosting because the narrowchannel QAM signals can be sent slowly. An adaptive
system, or one that sends error-correction codes can also
resist interference, because most interference can aect
only a few of the QAM channels. COFDM is used for
Radioteletype equipment usually operates on short-wave Wi-Fi, some cell phones, Digital Radio Mondiale, Eureka
(HF) and is much loved by the military because they cre- 147, and many other local area network, digital TV and
ate written information without a skilled operator. They radio standards.
send a bit as one of two tones using frequency-shift keying. Groups of ve or seven bits become a character
printed by a teleprinter. From about 1925 to 1975, ra- 55.5.7 Heating
dioteletype was how most commercial messages were
sent to less developed countries. These are still used by Main article: Radio-frequency heating
the military and weather services.
Aircraft use a 1200 Baud radioteletype service over VHF
to send their ID, altitude and position, and get gate
and connecting-ight data. Microwave dishes on satellites, telephone exchanges and TV stations usually use
quadrature amplitude modulation (QAM). QAM sends
data by changing both the phase and the amplitude of
the radio signal. Engineers like QAM because it packs
the most bits into a radio signal when given an exclusive
(non-shared) xed narrowband frequency range. Usually
the bits are sent in frames that repeat. A special bit
pattern is used to locate the beginning of a frame.
314
number of bands in the radio frequency spectrum noncommercially and for their own experiments. They may
also provide emergency and service assistance in exceptional circumstances. This contribution has been very
benecial in saving lives in many instances.[25]
Radio amateurs use a variety of modes, including ecient ones like Morse code and experimental ones like
Low-Frequency Experimental Radio. Several forms of
radio were pioneered by radio amateurs and later became
commercially important, including FM, single-sideband
(SSB), AM, digital packet radio and satellite repeaters.
Some amateur frequencies may be disrupted illegally by
power-line internet service.
55.5.9
Unlicensed, government-authorized personal radio services such as Citizens band radio in Australia, most of
the Americas, and Europe, and Family Radio Service and
Multi-Use Radio Service in North America exist to provide simple, usually short range communication for individuals and small groups, without the overhead of licensing. Similar services exist in other parts of the world.
These radio services involve the use of handheld units.
Wi-Fi also operates in unlicensed radio bands and is very
widely used to network computers.
Free radio stations, sometimes called pirate radio or
clandestine stations, are unauthorized, unlicensed, illegal broadcasting stations. These are often low power
transmitters operated on sporadic schedules by hobbyists,
community activists, or political and cultural dissidents.
Some pirate stations operating oshore in parts of Europe and the United Kingdom more closely resembled
legal stations, maintaining regular schedules, using high
power, and selling commercial advertising time.[26][27]
55.5.10
Radio remote controls use radio waves to transmit control data to a remote object as in some early forms
of guided missile, some early TV remotes and a range
of model boats, cars and airplanes. Large industrial
remote-controlled equipment such as cranes and switching locomotives now usually use digital radio techniques
to ensure safety and reliability.
55.7 Notes
[1] While the term 'radio-' is actually the combining form of
radiant (e.g., radioactive, radiotherapy), the process that
was originally called radiotelegraphy has become so common that it is nearly always called just 'radio' and the associated electromagnetic waves are called radio waves. In
practice, radio frequencies are signicantly below that of
visible light from about 3 kHz to 300 GHz.[1]
55.8 References
[1] Dictionary of Electronics By Rudolf F. Graf (1974). Page
467.
[2] Radio-Electronics, ''Radio Receiver Technology''".
Radio-electronics.com. Retrieved 2014-08-02.
[3] The Electromagnetic Spectrum, University of Tennessee,
Dept. of Physics and Astronomy
[4] Clint Smith, Curt Gervelis (2003). Wireless Network Performance Handbook. McGraw-Hill Professional. ISBN
0-07-140655-7.
[5] R. K. Puri (2004). Solid State Physics and Electronics. S.
Chand. ISBN 81-219-1475-2.
[6] Production of Sound by Radiant Energy by Alexander
Graham Bell, Popular Science Monthly, July, 1881, pages
329-330: "[W]e have named the apparatus for the production and reproduction of sound in this way the photophone, because an ordinary beam of light contains the
rays which are operative. To avoid in future any misunderstandings upon this point, we have decided to adopt the
term "radiophone", proposed by M. Mercadier, as a general term signifying the production of sound by any form
of radiant energy...
[7] The Genesis of Wireless Telegraphy by A. Frederick
Collins, Electrical World and Engineer, May 10, 1902,
page 811.
[8] Wireless Telegraphy, The Practical Engineer, February
25, 1898, page 174. Dr. O. J. Lodge, who preceded Marconi in making experiments in what may be called ray
telegraphy or radiotelegraphy by a year or two, has devised
a new method of sending and receiving the messages. The
reader will understand that in the radiotelegraph electric
waves forming the signals of the message start from the
sending instrument and travel in all directions like rays of
light from a lamp, only they are invisible.
[13] Clint Smith, Curt Gervelis (2003). Wireless Network Performance Handbook. McGraw-Hill Professional. ISBN
0-07-140655-7.
[14] Macario, R. C. V. (1996). Modern personal radio systems. IEE telecommunications series, 33. London: Institution of Electrical Engineers. Page 3.
[15] R. K. Puri (2004). Solid State Physics and Electronics. S.
Chand. ISBN 81-219-1475-2.
[16] web.pdx.edu/~{}bseipel/Lecture%20notes%206-%
20203%20EMwaves.pdf
[17] T. K. Sarkar, Robert Mailloux, Arthur A. Oliner, M.
Salazar-Palma, Dipak L. Sengupta , History of Wireless,
John Wiley & Sons - 2006, pages 258-261
[18] Christopher H. Sterling, Encyclopedia of Radio 3Volume, Routledge - 2004, page 831
[19] Anand Kumar Sethi, The Business of Electronics: A Concise History, Palgrave Macmillan - 2013, page 22
[20] ieeeghn.org, IEEE Global History Network, Etheric Force
[21] W. Bernard Carlson, Innovation as a Social Process: Elihu
Thomson and the Rise of General Electric, Cambridge
University Press - 2003, pages 57-58
[22] U.S. Supreme Court. Retrieved 2012-04-23.
[23] The History Of KQW Radio - KCBS. Bayarearadio.org.
Retrieved 2009-07-22.
[24] Audio example of SSB. Retrieved 2014-08-02.
[25] "Amateur Radio Saved Lives in South Asia". Arrl.org.
2004-12-29. Archived from the original on 2007-10-13.
[26] Free radio: electronic civil disobedience by Lawrence C.
Soley. Published by Westview Press, 1998. ISBN 0-81339064-8, ISBN 978-0-8133-9064-2
[27] Rebel Radio: The Full Story of British Pirate Radio by John
Hind, Stephen Mosco. Published by Pluto Press, 1985.
ISBN 0-7453-0055-3, ISBN 978-0-7453-0055-9
[28] Tesla - Master of Lightning: Remote Control. PBS. Retrieved 2009-07-22.
[29] Tesla - Master of Lightning: Selected Tesla Patents.
PBS. Retrieved 2009-07-22.
315
Chapter 56
Semantics
Semantics (from Ancient Greek: smantikos, signicant)[1][2] is primarily the linguistic, and
also philosophical study of meaningin language, programming languages, formal logics, and semiotics. It focuses on the relationship between signierslike words,
phrases, signs, and symbolsand what they stand for,
their denotation.
In international scientic vocabulary semantics is also
called semasiology. The word semantics was rst used by
Michel Bral, a French philologist.[3] It denotes a range
of ideasfrom the popular to the highly technical. It
is often used in ordinary language for denoting a problem of understanding that comes down to word selection
or connotation. This problem of understanding has been
the subject of many formal enquiries, over a long period
of time, especially in the eld of formal semantics. In
linguistics, it is the study of the interpretation of signs or
symbols used in agents or communities within particular
circumstances and contexts.[4] Within this view, sounds,
facial expressions, body language, and proxemics have semantic (meaningful) content, and each comprises several
branches of study. In written language, things like paragraph structure and punctuation bear semantic content;
other forms of language bear other semantic content.[4]
The formal study of semantics intersects with many other
elds of inquiry, including lexicology, syntax, pragmatics,
etymology and others. Independently, semantics is also
a well-dened eld in its own right, often with synthetic
properties.[5] In the philosophy of language, semantics
and reference are closely connected. Further related elds
include philology, communication, and semiotics. The
formal study of semantics can therefore be manifold and
complex.
56.1 Linguistics
In linguistics, semantics is the subeld that is devoted
to the study of meaning, as inherent at the levels of
words, phrases, sentences, and larger units of discourse
(termed texts, or narratives). The study of semantics
is also closely linked to the subjects of representation,
reference and denotation. The basic study of semantics is
oriented to the examination of the meaning of signs, and
the study of relations between dierent linguistic units
and compounds: homonymy, synonymy, antonymy,
hypernymy, hyponymy, meronymy, metonymy,
holonymy, paronyms. A key concern is how meaning attaches to larger chunks of text, possibly as a result
of the composition from smaller units of meaning.
Traditionally, semantics has included the study of sense
and denotative reference, truth conditions, argument
structure, thematic roles, discourse analysis, and the
linkage of all of these to syntax.
Semantics contrasts with syntax, the study of the combinatorics of units of a language (without reference to their
meaning), and pragmatics, the study of the relationships
between the symbols of a language, their meaning, and
the users of the language.[6] Semantics as a eld of study
also has signicant ties to various representational theo- Despite its elegance, Montague grammar was limited by
ries of meaning including truth theories of meaning, co- the context-dependent variability in word sense, and led
herence theories of meaning, and correspondence theo- to several attempts at incorporating context, such as:
ries of meaning. Each of these is related to the general
philosophical study of reality and the representation of
Situation semantics (1980s): truth-values are inmeaning.
complete, they get assigned based on context
316
317
afraid') has its particular value only because
they stand in contrast with one another. No
word has a value that can be identied independently of what else is in its vicinity.[11]
Another set of concepts related to fuzziness in semantics is based on prototypes. The work of Eleanor Rosch
in the 1970s led to a view that natural categories are not
characterizable in terms of necessary and sucient conditions, but are graded (fuzzy at their boundaries) and inconsistent as to the status of their constituent members.
One may compare it with Jung's archetype, though the
concept of archetype sticks to static concept. Some poststructuralists are against the xed or static meaning of the
words. Derrida, following Nietzsche, talked about slippages in xed meanings.
318
56.5.2
56.5.4
Lexical semantics
56.6.2
Semantic models
56.7 Psychology
319
Colorless green ideas sleep furiously
Computational semantics
Discourse representation theory
General semantics
Generative semantics
Hermeneutics
Natural semantic metalanguage
Onomasiology
Phono-semantic matching
Pragmatic maxim
Game semantics
Model theory
Gdels incompleteness theorems
Proof-theoretic semantics
Semantic consequence
Semantic theory of truth
Asemic writing
Semantics of logic
Cognitive semantics
Truth-value semantics
320
56.8.3
Computer science
56.8.4
Psychology
Ideasthesia
56.9 References
[1] . Liddell, Henry George; Scott, Robert; A
GreekEnglish Lexicon at the Perseus Project
[2] The word is derived from the Ancient Greek word (semantikos), related to meaning, signicant,
from semaino, to signify, to indicate, which is
from sema, sign, mark, token. The plural is used
in analogy with words similar to physics, which was in the
neuter plural in Ancient Greek and meant things relating
to nature.
[3] Chambers Biographical Dictionary,5e.1990,p.202
[4] Neurath, Otto; Carnap, Rudolf; Morris, Charles F. W.
(Editors) (1955). International Encyclopedia of Unied
Science. Chicago, IL: University of Chicago Press.
[5] Cruse, Alan; Meaning and Language: An introduction to
Semantics and Pragmatics, Chapter 1, Oxford Textbooks
in Linguistics, 2004; Kearns, Kate; Semantics, Palgrave
MacMillan 2000; Cruse, D. A.; Lexical Semantics, Cambridge, MA, 1986.
[6] Kitcher, Philip; Salmon, Wesley C. (1989). Scientic Explanation. Minneapolis, MN: University of Minnesota
Press. p. 35.
321
Chapter 57
SOAP
This article is about the computer network protocol. For generated data comes in a standardized machine-parsable
surfactants use for cleaning, see Soap. For other uses, format, the requesting application can then integrate it disee Soap (disambiguation).
rectly.
The SOAP architecture consists of several layers of specSOAP (Simple Object Access Protocol) is a protocol ications for:
specication for exchanging structured information in the
implementation of web services in computer networks. It
message format
uses XML Information Set for its message format, and re Message Exchange Patterns (MEP)
lies on application layer protocols, most often Hypertext
Transfer Protocol (HTTP) or Simple Mail Transfer Pro underlying transport protocol bindings
tocol (SMTP), for message negotiation and transmission.
message processing models
protocol extensibility
57.1 Characteristics
57.2 History
57.3 Specication
323
SOAP receiver a SOAP node that accepts a SOAP
message
SOAP message path the set of SOAP nodes through
which a single SOAP message passes
Initial SOAP sender (Originator) the SOAP sender
that originates a SOAP message at the starting point
of a SOAP message path
SOAP intermediary a SOAP intermediary is both a
SOAP receiver and a SOAP sender and is targetable
from within a SOAP message. It processes the
SOAP header blocks targeted at it and acts to forward a SOAP message towards an ultimate SOAP
receiver.
Ultimate SOAP receiver the SOAP receiver that
is a nal destination of a SOAP message. It is responsible for processing the contents of the SOAP
body and any SOAP header blocks targeted at it.
In some circumstances, a SOAP message might not
reach an ultimate SOAP receiver, for example because of a problem at a SOAP intermediary. An
ultimate SOAP receiver cannot also be a SOAP intermediary for the same SOAP message.
The SOAP specication denes the messaging framework, which consists of:
The SOAP processing model dening the rules for
processing a SOAP message
Both SMTP and HTTP are valid application layer pro The SOAP extensibility model dening the concepts tocols used as transport for SOAP, but HTTP has gained
of SOAP features and SOAP modules
wider acceptance as it works well with todays internet in The SOAP underlying protocol binding framework frastructure; specically, HTTP works well with network
describing the rules for dening a binding to an un- rewalls. SOAP may also be used over HTTPS (which is
derlying protocol that can be used for exchanging the same protocol as HTTP at the application level, but
uses an encrypted transport protocol underneath) with eiSOAP messages between SOAP nodes
ther simple or mutual authentication; this is the advocated
The SOAP message construct dening the structure WS-I method to provide web service security as stated in
of a SOAP message
the WS-I Basic Prole 1.1.
57.3.1
Processing model
The SOAP processing model describes a distributed processing model, its participants, the SOAP nodes, and how
a SOAP receiver processes a SOAP message. The following SOAP nodes are dened:
SOAP sender a SOAP node that transmits a SOAP
message
324
57.8.1 Advantages
WebSocket
Web Services Security
57.10 References
[1] Hirsch, Frederick; Kemp, John; Ilkka, Jani (2007).
Mobile Web Services: Architecture and Implementation.
John Wiley & Sons. p. 27. ISBN 9780470032596.
Retrieved 2014-09-15. Simple Object Access Protocol
(SOAP) denes a messaging envelope structure designed
to carry application payload in one portion of the envelope (the message body) and control information in another (the message header).
[2] Exclusive .NET Developers Journal Indigo Interview
with Microsofts Don Box. Dotnet.sys-con.com. Retrieved 2012-10-04.
[3] Don Box on the history of SOAP. XML.com. 200104-04.
[4] XML Cover Pages on the history of SOAP. Coverpages.org. Retrieved 2003-07-22.
[5] SOAP: Simple Object Access Protocol. September
1999.
[6] XML-RPC for Newbies. Archive.org. 1998-07-14.
Archived from the original on October 12, 1999.
[7] W3C Note on Simple Object Access Protocol (SOAP)
1.1. W3C. 2000-05-08.
[8] SOAP Specications. W3C. Retrieved 2014-03-29.
[9] W3C XML Protocol Working Group. W3C. Retrieved
2014-03-29.
[10] SOAP Version 1.2 Part 1: Messaging Framework (Second Edition)". W3C. April 27, 2007. Retrieved 201206-15. Note: In previous versions of this specication
the SOAP name was an acronym. This is no longer the
case. (Underneath section 1. Introduction)
[11] IBM Datapower. 306.ibm.com. 2011-11-30. Retrieved 2012-10-04.
[12] IBM Zurich XML Accelerator Engine (PDF). Retrieved
2012-10-04.
[13] Evaluating SOAP for High Performance Business Applications: Real-Time Trading Systems. Tenermerx Pty
Ltd University of Technology, Sydney. 2011-11-30. Retrieved 2013-03-14.
325
Chapter 58
Software
For other uses, see Software (disambiguation).
Computer software, or simply software, is that part
User
Application Software
The majority of software is written in high-level programming languages that are easier and more ecient for programmers, meaning closer to a natural language.[1] Highlevel languages are translated into machine language using a compiler or an interpreter or a combination of the
two. Software may also be written in a low-level assembly
language, essentially, a vaguely mnemonic representation
of a machine language using a natural language alphabet, which is translated into machine language using an
assembler.
Operating System
Hardware
A diagram showing how the user interacts with application software on a typical desktop computer. The application software
layer interfaces with the operating system, which in turn communicates with the hardware. The arrows indicate information
58.1 History
Main article: History of software
of a computer system that consists of encoded informa- An outline (algorithm) for what would have been the rst
tion or computer instructions, in contrast to the physical piece of software was written by Ada Lovelace in the
hardware from which the system is built.
19th century, for the planned Analytical Engine. HowThe term software was rst proposed by Alan Turing ever, neither the Analytical Engine nor any software for
and used in this sense by John W. Tukey in 1957. In it were ever created
computer science and software engineering, computer The rst theory about softwareprior to creation of comsoftware is all information processed by computer sys- puters as we know them todaywas proposed by Alan
tems, programs and data.
Turing in his 1935 essay Computable numbers with an apComputer software includes computer programs, plication to the Entscheidungsproblem (decision problem).
libraries and related non-executable data, such as online This eventually led to the creation of the twin academic
326
327
Utilities, which are computer programs designed to assist users in the maintenance and
care of their computers.
Malicious software or malware, which is software
that is developed to harm and disrupt computers.
As such, malware is undesirable. Malware is closely
associated with computer-related crimes, though
some malicious programs may have been designed
as practical jokes.
58.2.1
328
Architecture
User-written software: End-user development tailors systems to meet users specic needs. User software include spreadsheet templates and word processor templates. Even email lters are a kind of
user software. Users create this software themselves
and often overlook how important it is. Depending on how competently the user-written software
has been integrated into default application packages, many users may not be aware of the distinction
between the original packages, and what has been
added by co-workers.
58.3.2 Execution
Main article: Execution (computing)
Computer software has to be loaded into the computers
storage (such as the hard drive or memory). Once the
software has loaded, the computer is able to execute the
software. This involves passing instructions from the
application software, through the system software, to
the hardware which ultimately receives the instruction
as machine code. Each instruction causes the computer
to carry out an operationmoving data, carrying out a
computation, or altering the control ow of instructions.
Data movement is typically from one place in memory
to another. Sometimes it involves moving data between
memory and registers which enable high-speed data access in the CPU. Moving data, especially large amounts
of it, can be costly. So, this is sometimes avoided by using
pointers to data instead. Computations include simple
operations such as incrementing the value of a variable
data element. More complex computations may involve
many operations and data elements together.
58.3.3
329
termed "commercial software", which can only be
legally used on purchase of a license.
58.3.5 Patents
Main articles: Software patent and Software patent
debate
Software patents, like other types of patents, are theoretically supposed to give an inventor an exclusive, timelimited license for a detailed idea (e.g. an algorithm) on
how to implement a piece of software, or a component
of a piece of software. Ideas for useful things that software could do, and user requirements, are not supposed
to be patentable, and concrete implementations (i.e. the
actual software packages implementing the patent) are
not supposed to be patentable eitherthe latter are already covered by copyright, generally automatically. So
software patents are supposed to cover the middle area,
between requirements and concrete implementation. In
some countries, a requirement for the claimed invention
to have an eect on the physical world may also be part of
the requirements for a software patent to be held valid
although since all useful software has eects on the physical world, this requirement may be open to debate.
Software patents are controversial in the software industry with many people holding dierent views about them.
One of the sources of controversy is that the aforementioned split between initial ideas and patent does not seem
to be honored in practice by patent lawyersfor example the patent for Aspect-Oriented Programming (AOP),
which purported to claim rights over any programming
tool implementing the idea of AOP, howsoever imple58.3.4 License
mented. Another source of controversy is the eect on
innovation, with many distinguished experts and compaMain article: Software license
nies arguing that software is such a fast-moving eld that
software patents merely create vast additional litigation
The softwares license gives the user the right to use the
costs and risks, and actually retard innovation. In the case
software in the licensed environment, and in the case of
of debates about software patents outside the US, the arfree software licenses, also grants other rights such as the
gument has been made that large American corporations
right to make copies.
and patent lawyers are likely to be the primary beneciaProprietary software can be divided into two types:
ries of allowing or continue to allow software patents.
freeware, which includes the category of free
trial software or "freemium" software (in the 58.4 Design and implementation
past, the term shareware was often used for free
trial/freemium software). As the name suggests, Main articles: Software development, Computer profreeware can be used for free, although in the case of gramming, and Software engineering
free trials or freemium software, this is sometimes
only true for a limited period of time or with limited
Design and implementation of software varies dependfunctionality.
ing on the complexity of the software. For instance, the
software available for a fee, often inaccurately design and creation of Microsoft Word took much more
330
time than designing and developing Microsoft Notepad Non-prot software organizations include the Free Softbecause the latter has much more basic functionality.
ware Foundation, GNU Project and Mozilla Foundation.
Software is usually designed and created (a.k.a. Software standard organizations like the W3C, IETF decoded/written/programmed) in integrated development velop recommended software standards such as XML,
environments (IDE) like Eclipse, IntelliJ and Microsoft HTTP and HTML, so that software can interoperate
Visual Studio that can simplify the process and compile through these standards.
the software (if applicable). As noted in a dierent Other well-known large software companies include
section, software is usually created on top of existing Oracle, Novell, SAP, Symantec, Adobe Systems, and
software and the application programming interface Corel, while small companies often provide innovation.
(API) that the underlying software provides like GTK+,
JavaBeans or Swing. Libraries (APIs) can be categorized
by their purpose. For instance, the Spring Framework 58.6 See also
is used for implementing enterprise applications, the
Windows Forms library is used for designing graphical
Software release life cycle
user interface (GUI) applications like Microsoft Word,
and Windows Communication Foundation is used for
List of software
designing web services. When a program is designed, it
Software asset management
relies upon the API. For instance, if a user is designing a
Microsoft Windows desktop application, he or she might
use the .NET Windows Forms library to design the
desktop application and call its APIs like Form1.Close() 58.7 References
and Form1.Show()[5] to close or open the application,
and write the additional operations him/herself that it [1] Compiler construction.
needs to have. Without these APIs, the programmer
needs to write these APIs him/herself. Companies [2] System Software. The University of Mississippi.
like Oracle and Microsoft provide their own APIs so [3] Embedded SoftwareTechnologies and Trends. IEEE
that many applications are written using their software
Computer Society. Retrieved MayJune 2009. Check
libraries that usually have numerous APIs in them.
date values in: |access-date= (help)
Data structures such as hash tables, arrays, and binary
trees, and algorithms such as quicksort, can be useful for
creating software.
[6] v. Engelhardt, Sebastian (2008). The Economic Properties of Software. Jena Economic Research Papers. 2
(2008045.).
[7] Kaminsky, Dan (1999). Why Open Source Is The Optimum Economic Paradigm for Software.
Chapter 59
332
59.6 References
[1] Harris, David Money; Sarah L. Harris (2007). Digital
Design and Computer Architecture. USA: Morgan Kaufmann. p. 103. ISBN 0123704979.
[2] Kaeslin, Hubert (2008). Digital Integrated Circuit Design:
From VLSI Architectures to CMOS Fabrication. UK: Cambridge University Press. p. 735. ISBN 0521882672.
[3] Srinath, N. K. (August 2005). 8085 Microprocessor: Programming and Interfacing. Prentice-Hall of India Pvt.
Ltd. p. 326. ISBN 978-8120327856. Retrieved 7 December 2012. page 46
[4] Laplante, Philip A. (2000). Dictionary of Computer Science, Engineering and Technology. USA: CRC Press. p.
466. ISBN 0849326915.
[5] Misra, Jayadev (2001). A Discipline of Multiprogramming: Programming Theory for Distributed Applications.
Springer. p. 14. ISBN 0387952063.
[6] Prata, Stephen Prata (2004). C Primer Plus, 5th Ed. Pearson Education. pp. 113114. ISBN 0132713608.
Chapter 60
Syntax
For other uses, see Syntax (disambiguation).
be known as traditional grammar began with the work
Sentence structure redirects here. For sentence types of Dionysius Thrax.
in traditional grammar, see Sentence clause structure.
For centuries, work in syntax was dominated by a framework known as grammaire gnrale, rst expounded in
In linguistics, syntax (/sntks/[1][2] ) is the set of rules, 1660 by Antoine Arnauld in a book of the same title.
principles, and processes that govern the structure of This system took as its basic premise the assumption that
sentences in a given language, specically word order. language is a direct reection of thought processes and
The term syntax is also used to refer to the study of such therefore there is a single, most natural way to express a
principles and processes.[3] The goal of many syntacti- thought.
cians is to discover the syntactic rules common to all lan- However, in the 19th century, with the development of
guages.
historical-comparative linguistics, linguists began to realIn mathematics, syntax refers to the rules governing the ize the sheer diversity of human language and to question
behavior of mathematical systems, such as formal lan- fundamental assumptions about the relationship between
guages used in logic. (See logical syntax.)
language and logic. It became apparent that there was no
such thing as the most natural way to express a thought,
and therefore logic could no longer be relied upon as a
basis for studying the structure of language.
60.1 Etymology
and object
333
334
Greenberg) consider syntax a taxonomical device to reach Categorial grammar is an approach that attributes the synbroad generalizations across languages.
tactic structure not to rules of grammar, but to the properties of the syntactic categories themselves. For example,
rather than asserting that sentences are constructed by a
60.4.1 Generative grammar
rule that combines a noun phrase (NP) and a verb phrase
(VP) (e.g., the phrase structure rule S NP VP), in cateMain article: Generative grammar
gorial grammar, such principles are embedded in the category of the head word itself. So the syntactic category
The hypothesis of generative grammar is that language for an intransitive verb is a complex formula representing
is a structure of the human mind. The goal of gener- the fact that the verb acts as a function word requiring an
ative grammar is to make a complete model of this in- NP as an input and produces a sentence level structure as
ner language (known as i-language). This model could an output. This complex category is notated as (NP\S)
be used to describe all human language and to predict instead of V. NP\S is read as a category that searches
the grammaticality of any given utterance (that is, to pre- to the left (indicated by \) for an NP (the element on the
dict whether the utterance would sound correct to native left) and outputs a sentence (the element on the right).
speakers of the language). This approach to language was The category of transitive verb is dened as an element
pioneered by Noam Chomsky. Most generative theories that requires two NPs (its subject and its direct object) to
(although not all of them) assume that syntax is based form a sentence. This is notated as (NP/(NP\S)) which
upon the constituent structure of sentences. Generative means a category that searches to the right (indicated by
grammars are among the theories that focus primarily /) for an NP (the object), and generates a function (equivon the form of a sentence, rather than its communicative alent to the VP) which is (NP\S), which in turn represents
a function that searches to the left for an NP and produces
function.
a sentence.
Among the many generative theories of linguistics, the
Tree-adjoining grammar is a categorial grammar that
Chomskyan theories are:
adds in partial tree structures to the categories.
Transformational grammar (TG) (Original theory of
generative syntax laid out by Chomsky in Syntactic 60.4.3
Structures in 1957)[9]
Dependency grammar
Government and binding theory (GB) (revised the- Main article: Dependency grammar
ory in the tradition of TG developed mainly by Dependency grammar is an approach to sentence strucChomsky in the 1970s and 1980s)[10]
Minimalist program (MP) (a reworking of the theory out of the GB framework published by Chomsky
in 1995)[11]
Other theories that nd their origin in the generative
paradigm are:
Arc pair grammar
60.4.2
Categorial grammar
335
Word grammar
Antecedent
Lucien Tesnire (18931954) is widely seen as the father of modern dependency-based theories of syntax and
grammar. He argued vehemently against the binary division of the clause into subject and predicate that is associated with the grammars of his day (S NP VP) and
which remains at the core of most phrase structure grammars. In the place of this division, he positioned the verb
as the root of all clause structure.[12]
60.4.4
Stochastic/probabilistic
mars/network theories
gram-
Antecedent-contained deletion
Appositive
Argument
Article
Aspect
Attributive adjective and predicative adjective
Auxiliary verb
Binding
Branching
c-command
Case
Category
60.4.5
Functionalist grammars
Syntactic terms
Catena
Clause
Closed class word
Comparative
Complement
Compound noun and adjective
Conjugation
Conjunction
Constituent
Coordination
Coreference
Crossover
Dangling modier
Declension
Dependency grammar
Dependent marking
Adjective
Determiner
Adjective phrase
Discontinuity
Adjunct
Do-support
Adpositional phrase
Adverb
Ellipsis
Anaphora
Endocentric
Answer ellipsis
Exceptional case-marking
336
Expletive
Periphrasis
Extraposition
Person
Finite verb
Personal pronoun
Function word
Pied-piping
Gapping
Phrasal verb
Gender
Phrase
Gerund
Government
Plural
Head
Predicate
Head marking
Predicative expression
Innitive
Pronoun
Inversion
Pseudogapping
Lexical item
Raising
m-command
Restrictiveness
Merge
Modal particle
Sandhi
Modal verb
Scrambling
Modier
Selection
Mood
Sentence
Movement
Separable verb
Movement paradox
Shifting
Nanosyntax
Singular
Negative inversion
Sluicing
Non-congurational language
Small clause
Non-nite verb
Stripping
Noun
Subcategorization
Noun ellipsis
Subject
Noun phrase
Subject-auxiliary inversion
Number
Subject-verb inversion
Object
Subordination
Superlative
Parasitic gap
Tense
Part of speech
Topicalization
Particle
Tough movement
60.7. REFERENCES
337
60.7 References
Uninected word
V2 word order
Brown, Keith; Miller, Jim, eds. (1996). Concise Encyclopedia of Syntactic Theories. New York: Elsevier Science. ISBN 0-08-042711-1.
Valency
Verb
Carnie, Andrew (2006). Syntax: A Generative Introduction (2nd ed.). Oxford: Wiley-Blackwell. ISBN
1-4051-3384-8.
Verb phrase
Verb phrase ellipsis
Freidin, Robert; Lasnik, Howard, eds. (2006). Syntax. Critical Concepts in Linguistics. New York:
Routledge. ISBN 0-415-24672-5.
Voice
Wh-movement
Word order
Gra, Giorgio (2001). 200 Years of Syntax. A Critical Survey. Studies in the History of the Language
Sciences 98. Amsterdam: Benjamins. ISBN 90272-4587-8.
X-bar theory
60.6 Notes
Tesnire, Lucien 1969. lemnts de syntaxe structurale. 2nd edition. Paris: Klincksieck.
[4] Fortson IV, Benjamin W. (2004). Indo-European Language and Culture: An Introduction. Blackwell. p. 186.
ISBN 978-1405188968. [The Adhyy ] is a highly precise and thorough description of the structure of Sanskrit
somewhat resembling modern generative grammar...[it]
remained the most advanced linguistic analysis of any
kind until the twentieth century.
[5] Arnauld, Antoine (1683). La logique (5th ed.). Paris:
G. Desprez. p. 137. Nous avons emprunt...ce que
nous avons dit...d'un petit Livre...sous le titre de Grammaire
gnrale.
[6] Giorgio, Gra (2001). 200 Years of Syntax: A Critical
Survey (googlebook preview). John Benjamins Publishing.
[7] See Bickerton, Derek (1990). Language and Species.
University of Chicago Press. ISBN 0-226-04610-9. and,
for more recent advances, Derek Bickerton; Ers Szathmry, eds. (2009). Biological foundations and origin of
syntax. MIT Press. ISBN 978-0-262-01356-7.
[8] Ted Briscoe, 2 May 2001, Interview with Gerald Gazdar.
Retrieved 2008-06-04.
[9] Chomsky, Noam. 1957. Syntactic Structures.
Hague/Paris: Mouton, p. 15.
The
Brian Roark; Richard William Sproat (2007). Computational approaches to morphology and syntax.
Oxford University Press. ISBN 978-0-19-9274772. part II: Computational approaches to syntax.
338
Chapter 61
Technical standard
This article is about technical standards. For other uses,
see Standard.
A technical standard may be developed privately or unilaterally, for example by a corporation, regulatory body,
military, etc. Standards can also be developed by groups
61.2 Availability
such as trade unions, and trade associations. Standards
organizations often have more diverse input and usually
develop voluntary standards: these might become manda- Technical standards may exist as:
tory if adopted by a government (i.e. through legislation),
business contract, etc.
Public documents on the internet, public library, etc.
(Some technical standards may be found at a major
The standardization process may be by edict or may in[1]
central library or at the library of a good technical
volve the formal consensus of technical experts.
university)
Published documents available for purchase
61.1 Types
Private documents owned by an organization or corporation, used and circulated as the owner determines necessary or useful
A standard practice or procedure gives a set of instructions for performing operations or functions.
339
340
Regional standard: see standards of the Regional
standards organizations. For example, CEN standards.
International standard: see International standards
organizations Example, ISO and ASTM International.
61.4 Usage
The existence of a published standard does not imply that
it is always useful or correct. For example, if an item
complies with a certain standard, there is not necessarily
assurance that it is t for any particular use. The people
who use the item or service (engineers, trade unions, etc.)
or specify it (building codes, government, industry, etc.)
have the responsibility to consider the available standards,
specify the correct one, enforce compliance, and use the
item correctly. Validation of suitability is necessary.
Standards often get reviewed, revised and updated on a
regular basis. It is critical that the most current version of
a published standard be used or referenced. The originator or standard writing body often has the current versions
listed on its web site.
In social sciences, including economics, a standard is useful if it is a solution to a coordination problem: it emerges
from situations in which all parties realize mutual gains,
but only by making mutually consistent decisions. Examples:
61.6 References
[1] Example of TAPPI standards development regulations
Chapter 62
Telecommunication
Not to be confused with Teleconnection.
intelligence of any nature by wire, radio, optical
Telecommunication is the transmission of signs, or other electromagnetic systems.[1][2] Telecommunication occurs when the exchange of information between communication participants includes the use of
technology. It is transmitted either electrically over physical media, such as cables, or via electromagnetic radiation.[3][4][5][6][7][8] Such transmission paths are often divided into communication channels which aord the advantages of multiplexing. The term is often used in its
plural form, telecommunications, because it involves
many dierent technologies.
62.1 Etymology
The word telecommunication was adapted from the
French.[7] It is a compound of the Greek prex teleVisualization from the Opte Project of the various routes through (-), meaning distant, and the Latin communicare,
meaning to share, and its written use was recorded in
a portion of the Internet
1904 by the French engineer and novelist douard Essignals, messages, writings, images and sounds or tauni.[10][11] The prex tel means far, far o, op341
342
Homing pigeons have occasionally been used throughout history by dierent cultures. Pigeon post is thought
to have Persians roots and was used by the Romans
to aid their military. Frontinus said that Julius Caesar
used pigeons as messengers in his conquest of Gaul.[17]
The Greeks also conveyed the names of the victors
62.2 History
at the Olympic Games to various cities using homing
pigeons.[18] In the early 19th century, the Dutch governFor more details on this topic, see History of telecom- ment used the system in Java and Sumatra. And in 1849,
Paul Julius Reuter started a pigeon service to y stock
munication.
prices between Aachen and Brussels, a service that operated for a year until the gap in the telegraph link was
closed.[19]
62.2.1
62.2.4
On 11 September 1940, George Stibitz was able to transmit problems using teletype to his Complex Number Calculator in New York and receive the computed results
back at Dartmouth College in New Hampshire.[32] This
conguration of a centralized computer or mainframe
with remote dumb terminals remained popular throughout the 1950s. However, it was not until the 1960s
that researchers started to investigate packet switching a technology that would allow chunks of data
to be sent to dierent computers without rst passing
through a centralized mainframe. A four-node network
emerged on 5 December 1969; this network would become ARPANET, which by 1981 would consist of 213
nodes.[33]
ARPANET development centered around the Request
for Comment process and on 7 April 1969, RFC 1 was
published. This process is important because ARPANET
eventually merged with other networks to form the
Internet and many of the protocols the Internet relies
upon today were specied through the Request for Comment process. In September 1981, RFC 791 introduced
the Internet Protocol v4 (IPv4) and RFC 793 introduced
the Transmission Control Protocol (TCP) thus creating the TCP/IP protocol that much of the Internet relies
upon today.
However, not all important developments were made
through the Request for Comment process. Two popular link protocols for local area networks (LANs) also
appeared in the 1970s. A patent for the token ring protocol was led by Olof Soderblom on 29 October 1974
and a paper on the Ethernet protocol was published by
Robert Metcalfe and David Boggs in the July 1976 issue
343
of Communications of the ACM.[34][35]
344
62.3.2
Communications signals can be sent either by analog signals or digital signals. There are analog communication
systems and digital communication systems. For an analog signal, the signal is varied continuously with respect
to the information. In a digital signal, the information is
encoded as a set of discrete values (for example, a set
of ones and zeros). During the propagation and reception, the information contained in analog signals will inevitably be degraded by undesirable physical noise. (The
output of a transmitter is noise-free for all practical purposes.) Commonly, the noise in a communication system
can be expressed as adding or subtracting from the desirable signal in a completely random way. This form of
noise is called additive noise, with the understanding that
the noise can be negative or positive at dierent instants
of time. Noise that is not additive noise is a much more
dicult situation to describe or analyze, and these other
kinds of noise will be omitted here.
On the other hand, unless the additive noise disturbance
exceeds a certain threshold, the information contained in
digital signals will remain intact. Their resistance to noise
represents a key advantage of digital signals over analog
signals.[37]
62.3.3
Telecommunication networks
62.4. SOCIETY
62.3.5
345
Modulation
62.4 Society
Telecommunication has a signicant social, cultural and
economic impact on modern society. In 2008, estimates
placed the telecommunication industry's revenue at $4.7
trillion or just under 3 percent of the gross world product (ocial exchange rate).[42] Several following sections
discuss the impact of telecommunication on society.
346
62.4.3
Other impacts
62.5 Government
Many countries have enacted legislation which conforms
to the International Telecommunication Regulations established by the International Telecommunication Union
(ITU), which is the leading UN agency for information
and communication technology issues.[55] In 1947, at
the Atlantic City Conference, the ITU decided to afford international protection to all frequencies registered
in a new international frequency list and used in conformity with the Radio Regulation. According to the ITUs
Radio Regulations adopted in Atlantic City, all frequencies referenced in the International Frequency Registration Board, examined by the board and registered on the
International Frequency List shall have the right to international protection from harmful interference.[56]
From a global perspective, there have been political
debates and legislation regarding the management of
telecommunication and broadcasting. The history of
broadcasting discusses some debates in relation to balancing conventional communication such as printing and
telecommunication such as radio broadcasting.[57] The
onset of World War II brought on the rst explosion of international broadcasting propaganda.[57] Countries, their
governments, insurgents, terrorists, and militiamen have
all used telecommunication and broadcasting techniques
to promote propaganda.[57][58] Patriotic propaganda for
political movements and colonization started the mid1930s. In 1936, the BBC broadcast propaganda to the
Arab World to partly counter similar broadcasts from
Italy, which also had colonial interests in North Africa.[57]
Modern insurgents, such as those in the latest Iraq war,
often use intimidating telephone calls, SMSs and the distribution of sophisticated videos of an attack on coalition troops within hours of the operation. The Sunni
insurgents even have their own television station, AlZawraa, which while banned by the Iraqi government,
still broadcasts from Erbil, Iraqi Kurdistan, even as coalition pressure has forced it to switch satellite hosts several
times.[58]
On 10 November 2014, President Obama recommended
the Federal Communications Commission reclassify
broadband Internet service as a telecommunications service in order to preserve net neutrality.[59][60]
62.6.2 Telephone
In a telephone network, the caller is connected to the person they want to talk to by switches at various telephone
exchanges. The switches form an electrical connection
between the two users and the setting of these switches
is determined electronically when the caller dials the
number. Once the connection is made, the callers
voice is transformed to an electrical signal using a small
microphone in the callers handset. This electrical signal
is then sent through the network to the user at the other
end where it is transformed back into sound by a small
speaker in that persons handset.
The landline telephones in most residential homes are
analogthat is, the speakers voice directly determines
the signals voltage. Although short-distance calls may be
handled from end-to-end as analog signals, increasingly
telephone service providers are transparently converting
the signals to digital signals for transmission. The advantage of this is that digitized voice data can travel sideby-side with data from the Internet and can be perfectly
reproduced in long distance communication (as opposed
to analog signals that are inevitably impacted by noise).
347
dled together in a single cable.[68] Lastly, improvements
in multiplexing have led to an exponential growth in the
data capacity of a single bre.[69][70]
Assisting communication across many modern optic bre networks is a protocol known as Asynchronous Transfer Mode (ATM). The ATM protocol allows for the sideby-side data transmission mentioned in the second paragraph. It is suitable for public telephone networks because it establishes a pathway for data through the network and associates a trac contract with that pathway.
The trac contract is essentially an agreement between
the client and the network about how the network is to
handle the data; if the network cannot meet the conditions
of the trac contract it does not accept the connection.
This is important because telephone calls can negotiate a
contract so as to guarantee themselves a constant bit rate,
something that will ensure a callers voice is not delayed
in parts or cut o completely.[71] There are competitors
to ATM, such as Multiprotocol Label Switching (MPLS),
that perform a similar task and are expected to supplant
ATM in the future.[72][73]
DVB-T
ATSC
ISDB-T
DTMB
broadcast
tower
transmits
a
high-frequency
electromagnetic wave to numerous low-powered receivers. The high-frequency wave sent by the tower
is modulated with a signal containing visual or audio
information. The receiver is then tuned so as to pick up
the high-frequency wave and a demodulator is used to
retrieve the signal containing the visual or audio information. The broadcast signal can be either analog (signal
is varied continuously with respect to the information)
or digital (information is encoded as a set of discrete
values).[36][74]
The broadcast media industry is at a critical turning point
in its development, with many countries moving from
analog to digital broadcasts. This move is made possible by the production of cheaper, faster and more capable integrated circuits. The chief advantage of digital
broadcasts is that they prevent a number of complaints
common to traditional analog broadcasts. For television,
348
In digital television broadcasting, there are three competing standards that are likely to be adopted worldwide.
These are the ATSC, DVB and ISDB standards; the adoption of these standards thus far is presented in the captioned map. All three standards use MPEG-2 for video
compression. ATSC uses Dolby Digital AC-3 for audio compression, ISDB uses Advanced Audio Coding
(MPEG-2 Part 7) and DVB has no standard for audio
compression but typically uses MPEG-1 Part 3 Layer
2.[77][78] The choice of modulation also varies between
the schemes. In digital audio broadcasting, standards are
much more unied with practically all countries choosing
to adopt the Digital Audio Broadcasting standard (also
known as the Eureka 147 standard). The exception is the
United States which has chosen to adopt HD Radio. HD
Radio, unlike Eureka 147, is based upon a transmission
method known as in-band on-channel transmission that
allows digital information to piggyback on normal AM
or FM analog transmissions.[79]
Media Layers
Host Layers
this includes the elimination of problems such as snowy an amplitude modulated subcarrier is used for stereo FM.
pictures, ghosting and other distortion. These occur because of the nature of analog transmission, which means
that perturbations due to noise will be evident in the nal 62.6.4 Internet
output. Digital transmission overcomes this problem because digital signals are reduced to discrete values upon
data unit
layers
reception and hence small perturbations do not aect the
Application
nal output. In a simplied example, if a binary message
Data
Network Process to Application
1011 was transmitted with signal amplitudes [1.0 0.0 1.0
1.0] and received with signal amplitudes [0.9 0.2 1.1 0.9]
Presentation
Data
Data Representation
it would still decode to the binary message 1011 a perand Encryption
fect reproduction of what was sent. From this example,
Session
a problem with digital transmissions can also be seen in
Data
Interhost Communication
that if the noise is great enough it can signicantly alter
Transport
the decoded message. Using forward error correction a
Segments
End-to-End Connections
receiver can correct a handful of bit errors in the resulting
and Reliability
message but too much noise will lead to incomprehensible
output and hence a breakdown of the transmission.[75][76]
Network
Packets
Frames
Physical Addressing
(MAC and LLC)
Bits
Data Link
Physical
349
ternet chat), BitTorrent (le sharing) and XMPP (instant
messaging).
Voice over Internet Protocol (VoIP) allows data packets to be used for synchronous voice communications.
The data packets are marked as voice type packets and
can be prioritized by the network administrators so that
the real-time, synchronous conversation is less subject to
contention with other types of data trac which can be
delayed (i.e. le transfer or email) or buered in advance
(i.e. audio and video) without detriment. That prioritization is ne when the network has sucient capacity for all
the VoIP calls taking place at the same time and the network is enabled for prioritization i.e. a private corporate
style network, but the Internet is not generally managed
in this way and so there can be a big dierence in the
quality of VoIP calls over a private network and over the
public Internet.[92]
For the Internet, the physical medium and data link protocol can vary several times as packets traverse the globe.
This is because the Internet places no constraints on what
physical medium or data link protocol is used. This leads
to the adoption of media and protocols that best suit the
local network situation. In practice, most intercontinental communication will use the Asynchronous Transfer
Mode (ATM) protocol (or a modern equivalent) on top 62.6.5 Local area networks and wide area
of optic ber. This is because for most intercontinental
networks
communication the Internet shares the same infrastructure as the public switched telephone network.
Despite the growth of the Internet, the characteristics
At the network layer, things become standardized with of local area networks (LANs)--computer networks that
the Internet Protocol (IP) being adopted for logical ad- do not extend beyond a few kilometersremain distinct.
dressing. For the World Wide Web, these IP addresses This is because networks on this scale do not require all
are derived from the human readable form using the the features associated with larger networks and are ofDomain Name System (e.g. 72.14.207.99 is derived from ten more cost-eective and ecient without them. When
www.google.com). At the moment, the most widely used they are not connected with the Internet, they also have
version of the Internet Protocol is version four but a move the advantages of privacy and security. However, purto version six is imminent.[89]
posefully lacking a direct connection to the Internet does
At the transport layer, most communication adopts ei- not provide assured protection from hackers, military
ther the Transmission Control Protocol (TCP) or the User forces, or economic powers. These threats exist if there
Datagram Protocol (UDP). TCP is used when it is es- are any methods for connecting remotely to the LAN.
sential every message sent is received by the other computer whereas UDP is used when it is merely desirable.
With TCP, packets are retransmitted if they are lost and
placed in order before they are presented to higher layers.
With UDP, packets are not ordered or retransmitted if
lost. Both TCP and UDP packets carry port numbers with
them to specify what application or process the packet
should be handled by.[90] Because certain applicationlevel protocols use certain ports, network administrators
can manipulate trac to suit particular requirements. Examples are to restrict Internet access by blocking the trafc destined for a particular port or to aect the performance of certain applications by assigning priority.
Wide area networks (WANs) are private computer networks that may extend for thousands of kilometers. Once
again, some of their advantages include privacy and security. Prime users of private LANs and WANs include
armed forces and intelligence agencies that must keep
their information secure and secret.
In the mid-1980s, several sets of communication protocols emerged to ll the gaps between the data-link layer
and the application layer of the OSI reference model.
These included Appletalk, IPX, and NetBIOS with the
dominant protocol set during the early 1990s being IPX
due to its popularity with MS-DOS users. TCP/IP existed at this point, but it was typically only used by large
Above the transport layer, there are certain protocols government and research facilities.[93]
that are sometimes used and loosely t in the session
As the Internet grew in popularity and its trac was reand presentation layers, most notably the Secure Sockquired to be routed into private networks, the TCP/IP
ets Layer (SSL) and Transport Layer Security (TLS) proprotocols replaced existing local area network technolotocols. These protocols ensure that data transferred begies. Additional technologies, such as DHCP, allowed
[91]
tween two parties remains completely condential. FiTCP/IP-based computers to self-congure in the netnally, at the application layer, are many of the protocols
work. Such functions also existed in the AppleTalk/ IPX/
Internet users would be familiar with such as HTTP (web
NetBIOS protocol sets.[94]
browsing), POP3 (e-mail), FTP (le transfer), IRC (InWhereas Asynchronous Transfer Mode (ATM) or Multi-
350
protocol Label Switching (MPLS) are typical data-link
protocols for larger networks such as WANs; Ethernet and Token Ring are typical data-link protocols for
LANs. These protocols dier from the former protocols
in that they are simpler, e.g., they omit features such as
quality of service guarantees, and oer collision prevention. Both of these dierences allow for more economical
systems.[95]
Wired communication
Despite the modest popularity of IBM Token Ring in
the 1980s and 1990s, virtually all LANs now use either
wired or wireless Ethernet facilities. At the physical layer,
most wired Ethernet implementations use copper twisted- 62.9 References
pair cables (including the common 10BASE-T networks).
However, some early implementations used heavier coax62.9.1 Citations
ial cables and some recent implementations (especially
high-speed ones) use optical bers.[96] When optic bers [1] Article 1.3 (PDF), ITU Radio Regulations, International
are used, the distinction must be made between multiTelecommunication Union, 2012
mode bers and single-mode bers. Multimode bers can
be thought of as thicker optical bers that are cheaper to [2] Constitution and Convention of the International
Telecommunication Union, Annex (Geneva, 1992)
manufacture devices for, but that suers from less usable
bandwidth and worse attenuation implying poorer long- [3] Denition of telecommunication. Yahoo. Retrieved 28
distance performance.[97]
February 2013.
Dictionary.com.
Retrieved 28
62.9. REFERENCES
351
Olof Solderblom,
PN
[35] Ethernet: Distributed Packet Switching for Local Computer Networks, Robert M. Metcalfe and David R. Boggs,
Communications of the ACM (pp 395-404, Vol. 19, No.
5), July 1976.
[36] Haykin, Simon (2001). Communication Systems (4th ed.).
John Wiley & Sons. pp. 13. ISBN 0-471-17869-1.
[37] Ambardar, Ashok (1999). Analog and Digital Signal Processing (2nd ed.). Brooks/Cole Publishing Company. pp.
12. ISBN 0-534-95409-X.
352
[86] World Internet Users and Population Stats, internetworldstats.com, 19 March 2007.
[87] OECD Broadband Statistics, Organisation for Economic
Co-operation and Development, December 2005.
[88] History of the OSI Reference Model, The TCP/IP Guide
v3.0, Charles M. Kozierok, 2005.
[89] Introduction to IPv6, Microsoft Corporation, February
2006.
[71] Stallings, William (2004). Data and Computer Communications (7th edition (intl) ed.). Pearson Prentice Hall. pp.
337366. ISBN 0-13-183311-1.
[72] MPLS is the future, but ATM hangs on, John Dix, Network World, 2002
62.9.2
Bibliography
353
Chapter 63
Timeout (computing)
assumption that further waiting is useless, and some other
action is necessary.
Other examples are
In POP connections, the server will usually close a
client connection after a certain period of inactivity (the timeout period). This ensures that connections do not persist forever, if the client crashes or
the network goes down. Open connections consume
resources, and may prevent other clients from accessing the same mailbox.
In HTTP persistent connections, the web server
saves opened connections (which consume CPU
time and memory). The web client does not have to
send an end of requests series signal. Connections
are closed (timed out) after ve minutes of inactivity; this ensures that the connections do not persist
indenitely.
In a timed light switch, both energy and lamps lifespan are saved. The user does not have to switch o
manually.
63.2 Sources
354
63.2. SOURCES
MIL-STD-188
355
Chapter 64
356
357
of the actual rst data byte and the acknowledged number in the corresponding ACK are
then this sequence number plus 1.
358
unusual event
client/receiver path
server/sender path
(Start)
CLOSED
LISTEN/-
CLOSE/-
CLOSE/-
LISTEN
SEND/SYN
RST/-
SYN
RECEIVED
ACK/-
SYN
SENT
SYN+ACK/ACK
CLOSE/ FIN
FIN/ACK
CLOSE/ FIN
Active CLOSE
Passive CLOSE
FIN/ACK
FIN WAIT 1
CLOSING
CLOSE WAIT
FIN+ACK/ACK
ACK/-
ACK/-
FIN WAIT 2
TIME WAIT
CLOSE/ FIN
LAST ACK
FIN/ACK
Timeout
ACK/-
CLOSED
359
end-point for communications, the Internet socket. Dur- Once the passive open is established, a client may initiate
ing the lifetime of a TCP connection the local end-point an active open. To establish a connection, the three-way
undergoes a series of state changes:[11]
(or 3-step) handshake occurs:
LISTEN (server) represents waiting for a connection
request from any remote TCP and port.
SYN-SENT (client) represents waiting for a matching
connection request after having sent a connection
request.
SYN-RECEIVED (server) represents waiting for a
conrming connection request acknowledgment after having both received and sent a connection request.
ESTABLISHED (both server and client) represents an
open connection, data received can be delivered to
the user. The normal state for the data transfer phase
of the connection.
FIN-WAIT-1 (both server and client) represents waiting for a connection termination request from the
remote TCP, or an acknowledgment of the connec- At this point, both the client and server have received an
acknowledgment of the connection. The steps 1, 2 estion termination request previously sent.
tablish the connection parameter (sequence number) for
FIN-WAIT-2 (both server and client) represents wait- one direction and it is acknowledged. The steps 2, 3 esing for a connection termination request from the tablish the connection parameter (sequence number) for
remote TCP.
the other direction and it is acknowledged. With these, a
CLOSE-WAIT (both server and client) represents full-duplex communication is established.
waiting for a connection termination request from
the local user.
CLOSING (both server and client) represents waiting
for a connection termination request acknowledgment from the remote TCP.
LAST-ACK (both server and client) represents waiting for an acknowledgment of the connection termination request previously sent to the remote TCP
(which includes an acknowledgment of its connection termination request).
TIME-WAIT (either server or client) represents waiting for enough time to pass to be sure the remote
TCP received the acknowledgment of its connection
termination request. [According to RFC 793 a connection can stay in TIME-WAIT for a maximum of
four minutes known as two MSL (maximum segment lifetime).]
Receiver
Initiator
ESTABLISHED
connection
active close
FIN_WAIT_1
ACK
FIN
FIN_WAIT_2
TIME_WAIT
ESTABLISHED
connection
FIN
CLOSE_WAIT
passive close
LAST_ACK
ACK
CLOSED
CLOSED
360
for a timeout before nally closing the connection, during which time the local port is unavailable for new connections; this prevents confusion due to delayed packets
being delivered during subsequent connections.
Ordered data transfer the destination host rearranges according to sequence number[2]
Retransmission of lost packets any cumulative
stream not acknowledged is retransmitted[2]
Error-free data transfer[13]
Flow control limits the rate a sender transfers data
to guarantee reliable delivery. The receiver continually hints the sender on how much data can be received (controlled by the sliding window). When
the receiving hosts buer lls, the next acknowledgment contains a 0 in the window size, to stop transfer
and allow the data in the buer to be processed.[2]
Congestion control[2]
361
Flow control
TCP uses an end-to-end ow control protocol to avoid
having the sender send data too fast for the TCP receiver
to receive and process it reliably. Having a mechanism
for ow control is essential in an environment where machines of diverse network speeds communicate. For example, if a PC sends data to a smartphone that is slowly
processing received data, the smartphone must regulate
the data ow so as not to be overwhelmed.[2]
Data
re
but n ceived
,
ot ack
now
le
dged
Un
fille
If the sender infers that data has been lost in the network using one of the two techniques described above,
it retransmits the data.
Error detection
db
uff
er
Window
shifts
Receiver's window
(Allocation buffer)
Up to 2^16-1 slots
If a receiver is processing incoming data in small increments, it may repeatedly advertise a small receive window. This is referred to as the silly window syndrome,
since it is inecient to send only a few bytes of data in a
TCP segment, given the relatively large overhead of the
TCP header.
362
Congestion control
Acknowledgments for data sent, or lack of acknowledgments, are used by senders to infer network conditions between the TCP sender and receiver. Coupled with timers,
TCP senders and receivers can alter the behavior of the
ow of data. This is more generally referred to as con64.4.6
gestion control and/or network congestion avoidance.
Selective acknowledgments
Modern implementations of TCP contain four inter- Relying purely on the cumulative acknowledgment
twined algorithms: Slow-start, congestion avoidance, fast scheme employed by the original TCP protocol can lead
retransmit, and fast recovery (RFC 5681).
to ineciencies when packets are lost. For example, supIn addition, senders employ a retransmission timeout pose 10,000 bytes are sent in 10 dierent TCP packets,
(RTO) that is based on the estimated round-trip time (or and the rst packet is lost during transmission. In a pure
RTT) between the sender and receiver, as well as the vari- cumulative acknowledgment protocol, the receiver canance in this round trip time. The behavior of this timer is not say that it received bytes 1,000 to 9,999 successfully,
specied in RFC 6298. There are subtleties in the estima- but failed to receive the rst packet, containing bytes 0 to
tion of RTT. For example, senders must be careful when 999. Thus the sender may then have to resend all 10,000
calculating RTT samples for retransmitted packets; typi- bytes.
cally they use Karns Algorithm or TCP timestamps (see To alleviate this issue TCP employs the selective acRFC 1323). These individual RTT samples are then av- knowledgment (SACK) option, dened in RFC 2018,
eraged over time to create a Smoothed Round Trip Time which allows the receiver to acknowledge discontin(SRTT) using Jacobson's algorithm. This SRTT value is uous blocks of packets which were received correctly,
what is nally used as the round-trip time estimate.
in addition to the sequence number of the last contiguous
Enhancing TCP to reliably handle loss, minimize errors,
manage congestion and go fast in very high-speed environments are ongoing areas of research and standards development. As a result, there are a number of TCP congestion avoidance algorithm variations.
64.4.5
byte received successively, as in the basic TCP acknowledgment. The acknowledgement can specify a number
of SACK blocks, where each SACK block is conveyed by
the starting and ending sequence numbers of a contiguous
range that the receiver correctly received. In the example above, the receiver would send SACK with sequence
numbers 1000 and 9999. The sender would accordingly
retransmit only the rst packet (bytes 0 to 999).
A TCP sender can interpret an out-of-order packet delivery as a lost packet. If it does so, the TCP sender will
retransmit the packet previous to the out-of-order packet
and slow its data delivery rate for that connection. The
duplicate-SACK option, an extension to the SACK option that was dened in RFC 2883, solves this problem.
The TCP receiver sends a D-ACK to indicate that no
packets were lost, and the TCP sender can then reinstate
the higher transmission-rate.
The SACK option is not mandatory, and comes into operation only if both parties support it. This is negotiated
when a connection is established. SACK uses the optional
part of the TCP header (see TCP segment structure for
details). The use of SACK has become widespread
all popular TCP stacks support it. Selective acknowledgment is also used in Stream Control Transmission ProtoMSS announcement is also often called MSS negoti- col (SCTP).
64.5. VULNERABILITIES
64.4.7
Window scaling
363
364
the IETF.[23]
64.5.1
Denial of service
Network address translation (NAT), typically uses dynamic port-numbers, on the (Internet-facing) public
64.5.3 TCP veto
side, to disambiguate the ow of trac that is passing between a public network and a private subnetwork, thereby
An attacker who can eavesdrop and predict the size of allowing many IP addresses (and their ports) on the subthe next packet to be sent can cause the receiver to ac- net to be serviced by a single public-facing address.
cept a malicious payload without disrupting the existing
connection. The attacker injects a malicious packet with
the sequence number and a payload size of the next expected packet. When the legitimate packet is ultimately 64.7 Development
received, it is found to have the same sequence number
and length as a packet already received and is silently TCP is a complex protocol. However, while signicant
dropped as a normal duplicate packetthe legitimate enhancements have been made and proposed over the
365
(PRR) is a TCP extension developed by Google engineers. PRR ensures that the TCP window size after recovery is as close to the Slow-start threshold as
possible.[39] The algorithm is designed to improve the
speed of recovery and is the default congestion control
algorithm in Linux 3.2+ kernels.[40]
TCP Cookie Transactions (TCPCT) is an extension proposed in December 2009 to secure servers against denial64.9 Hardware implementations
of-service attacks. Unlike SYN cookies, TCPCT does
not conict with other TCP extensions such as window
scaling. TCPCT was designed due to necessities of One way to overcome the processing power requirements
DNSSEC, where servers have to handle large numbers of TCP is to build hardware implementations of it, widely
known as TCP Ooad Engines (TOE). The main probof short-lived TCP connections.
lem of TOEs is that they are hard to integrate into comtcpcrypt is an extension proposed in July 2010 to provide
puting systems, requiring extensive changes in the opertransport-level encryption directly in TCP itself. It is de- ating system of the computer or device. One company to
signed to work transparently and not require any congdevelop such a device was Alacritech.
uration. Unlike TLS (SSL), tcpcrypt itself does not provide authentication, but provides simple primitives down
to the application to do that. As of 2010, the rst tcpcrypt
IETF draft has been published and implementations exist 64.10 Debugging
for several major platforms.
TCP Fast Open is an extension to speed up the opening
of successive TCP connections between two endpoints. It
works by skipping the three-way handshake using a cryptographic cookie. It is similar to an earlier proposal
called T/TCP, which was not widely adopted due to security issues.[37] As of July 2012, it is an IETF Internet
draft.[38]
A packet snier, which intercepts TCP trac on a network link, can be useful in debugging networks, network
stacks and applications that use TCP by showing the user
what packets are passing through a link. Some networking stacks support the SO_DEBUG socket option, which
can be enabled on the socket using setsockopt. That option dumps all the packets, TCP states, and events on that
Proposed in May 2013, Proportional Rate Reduction socket, which is helpful in debugging. Netstat is another
utility that can be used for debugging.
366
64.11 Alternatives
For many applications TCP is not appropriate. One prob- When TCP runs over IPv4, the method used to compute
lem (at least with normal implementations) is that the ap- the checksum is dened in RFC 793:
plication cannot access the packets coming after a lost
packet until the retransmitted copy of the lost packet is
The checksum eld is the 16 bit ones comreceived. This causes problems for real-time applications
plement of the ones complement sum of all 16such as streaming media, real-time multiplayer games and
bit words in the header and text. If a segvoice over IP (VoIP) where it is generally more useful to
ment contains an odd number of header and
get most of the data in a timely fashion than it is to get all
text octets to be checksummed, the last octet is
of the data in order.
padded on the right with zeros to form a 16-bit
For both historical and performance reasons, most
word for checksum purposes. The pad is not
storage area networks (SANs) prefer to use Fibre Chantransmitted as part of the segment. While comnel protocol (FCP) instead of TCP/IP.
puting the checksum, the checksum eld itself is
replaced with zeros.
Also, for embedded systems, network booting, and
servers that serve simple requests from huge numbers of
clients (e.g. DNS servers) the complexity of TCP can
be a problem. Finally, some tricks such as transmitting
data between two hosts that are both behind NAT (using STUN or similar systems) are far simpler without a
relatively complex protocol like TCP in the way.
uses the destination address in the IPv6 header, otherwise, at the originating node, it uses the address in
the last element of the Routing header, and, at the
receiving node, it uses the destination address in the
IPv6 header.
TCP length the length of the TCP header and data
Next Header the protocol value for TCP
64.14. REFERENCES
64.12.3
Checksum ooad
367
WTCP a proxy-based modication of TCP for wireless networks
Transport Layer Comparison of transport layer
protocols
64.14 References
This feature may cause packet analyzers detecting outbound network trac upstream of the network adapter
that are unaware or uncertain about the use of checksum
ooad to report invalid checksum in outbound packets.
[1] Vinton G. Cerf; Robert E. Kahn (May 1974). "A Protocol for Packet Network Intercommunication" (PDF).
IEEE Transactions on Communications. 22 (5): 637
648. doi:10.1109/tcom.1974.1092259. Archived from
the original (PDF) on March 4, 2016.
Connection-oriented protocol
IP fragmentation
Karns algorithm
[6] RFC 1323, TCP Extensions for High Performance, Section 2.2.
Sockstress
[12] Tanenbaum, Andrew S. (2003-03-17). Computer Networks (Fourth ed.). Prentice Hall. ISBN 0-13-066102-3.
TCP pacing
TCP segment
[19] Gont, Fernando (November 2008). On the implementation of TCP urgent data. 73rd IETF meeting. Retrieved
2009-01-04.
368
[22] Security Assessment of the Transmission Control Protocol (TCP) at the Wayback Machine (archived March 6,
2009)
64.16.1 RFC
RFC 675 Specication of Internet Transmission
Control Program, December 1974 Version
RFC 793 TCP v4
RFC 1122 includes some error corrections for
TCP
RFC 1323 TCP Extensions for High Performance
[Obsoleted by RFC 7323]
RFC 1379 Extending TCP for Transactions
Concepts [Obsoleted by RFC 6247]
RFC 1948 Defending Against Sequence Number
Attacks
RFC 2018 TCP Selective Acknowledgment Options
RFC 5681 TCP Congestion Control
RFC 6247 - Moving the Undeployed TCP Extensions RFC 1072, RFC 1106, RFC 1110, RFC 1145,
RFC 1146, RFC 1379, RFC 1644, and RFC 1693
to Historic Status
[40] Grigorik, Ilya (2013). High-performance browser networking (1. ed.). Beijing: O'Reilly. ISBN 1449344763.
RFC 6824 - TCP Extensions for Multipath Operation with Multiple Addresses
64.16.2
Others
369
Chapter 65
Transmission medium
This article is about transmission of signals. For biological transmission, see Vector (molecular biology).
A transmission medium is a material substance (solid,
liquid, gas, or plasma) that can propagate energy waves.
For example, the transmission medium for sounds is usually air, but solids and liquids may also act as transmission
media for sound.
The absence of a material medium in vacuum may also
constitute a transmission medium for electromagnetic
waves such as light and radio waves. While material substance is not required for electromagnetic waves to propagate, such waves are usually aected by the transmission Coaxial cable, one example of a transmission medium
media they pass through, for instance by absorption or by
reection or refraction at the interfaces between media.
The term transmission medium also refers to a technical to explain the transmission medium. However, it is now
device that employs the material substance to transmit or known that electromagnetic waves do not require a physguide waves. Thus, an optical ber or a copper cable is ical transmission medium, and so can travel through the
a transmission medium. Not only this but also is able to "vacuum" of free space. Regions of the insulative vacuum
can become conductive for electrical conduction through
guide the transmission of networks.
the presence of free electrons, holes, or ions.
A transmission medium can be classied as a:
Transmission and reception of data is performed in four
steps.
Linear medium, if dierent waves at any particular
point in the medium can be superposed;
1. The data is coded as binary numbers at the sender
end
Bounded medium, if it is nite in extent, otherwise
unbounded medium;
2. A carrier signal is modulated as specied by the binary representation of the data
Uniform medium or homogeneous medium, if its
physical properties are unchanged at dierent
3. At the receiving end, the incoming signal is demodpoints;
ulated into the respective binary numbers
Isotropic medium, if its physical properties are the
4. Decoding of the binary numbers is performed[1]
same in dierent directions.
Electromagnetic radiation can be transmitted through an
optical medium, such as optical ber, or through twisted
pair wires, coaxial cable, or dielectric-slab waveguides. It
may also pass through any physical material that is transparent to the specic wavelength, such as water, air, glass,
or concrete. Sound is, by denition, the vibration of matter, so it requires a physical medium for transmission,
as do other kinds of mechanical waves and heat energy.
Historically, science incorporated various aether theories
65.1 Telecommunications
A physical medium in data communications is the transmission path over which a signal propagates.
Many transmission media are used as communications
channel.
For telecommunications purposes in the United States,
370
371
Federal Standard 1037C, transmission media are classi- 65.1.1 Types of transmissions
ed as one of the following:
A transmission may be simplex, half-duplex, or fullduplex.
Guided (or bounded)waves are guided along a
In simplex transmission, signals are transmitted in only
solid medium such as a transmission line.
one direction; one station is a transmitter and the other is
the receiver. In the half-duplex operation, both stations
Wireless (or unguided)transmission and reception may transmit, but only one at a time. In full duplex operation, both stations may transmit simultaneously. In the
are achieved by means of an antenna.
latter case, the medium is carrying signals in both directions at same time.
One of the most common physical medias used in net- There are two types of transmission media:
working is copper wire. Copper wire to carry signals to
long distances using relatively low amounts of power. The
Guided
unshielded twisted pair (UTP) is eight strands of copper
Unguided
wire, organized into four pairs.[2]
Another example of a physical medium is optical ber,
which has emerged as the most commonly used transmission medium for long-distance communications. Optical ber is a thin strand of glass that guides light along
its length. Four major factors favor optical ber over
copper- data rates, distance, installation, and costs. Optical ber can carry huge amounts of data compared to
copper. It can be run for hundreds of miles without the
need for signal repeaters, in turn, reducing maintenance
costs and improving the reliability of the communication
system because repeaters are a common source of network failures. Glass is lighter than copper allowing for
less need for specialized heavy-lifting equipment when
installing long-distance optical ber. Optical ber for indoor applications cost approximately a dollar a foot, the
same as copper.[3]
Multimode and single mode are two types of commonly
used optical ber. Multimode ber uses LEDs as the
light source and can carry signals over shorter distances,
about 2 kilometers. Single mode can carry signals over
distances of tens of miles.
Wireless media may carry surface waves or skywaves, either longitudinally or transversely, and are so classied.
In both communications, communication is in the form
of electromagnetic waves. With guided transmission media, the waves are guided along a physical path; examples of guided media include phone lines, twisted pair
cables, coaxial cables, and optical bers. Unguided transmission media are methods that allow the transmission of
data without the use of physical means to dene the path
it takes. Examples of this include microwave, radio or
infrared. Unguided media provide a means for transmitting electromagnetic waves but do not guide them; examples are propagation through air, vacuum and seawater.
The term direct link is used to refer to the transmission
path between two devices in which signals propagate directly from transmitters to receivers with no intermediate devices, other than ampliers or repeaters used to increase signal strength. This term can apply to both guided
and unguided media.
Guided Media:
Un-shielded Twisted Pair (UTP)
Shielded Twisted Pair
Coaxial Cable
Optical Fiber
Unguided Media: Transmission media then looking at
analysis of using them unguided transmission media is
data signals that ow through the air. They are not guided
or bound to a channel to follow. Following are unguided
media used for data communication:
Radio Transmission
Microwave
65.3 References
[1] Agrawal, Manish (2010). Business Data Communications.
John Wiley & Sons, Inc. p. 54. ISBN 0470483369.
[2] Agrawal, Manish (2010). Business Data Communications.
John Wiley & Sons, Inc. p. 37. ISBN 0470483369.
[3] Agrawal, Manish (2010). Business Data Communications.
John Wiley & Sons, Inc. pp. 4143. ISBN 0470483369.
Chapter 66
Transport layer
In computer networking, the transport layer is a conceptual division of methods in the layered architecture
of protocols in the network stack in the Internet Protocol
Suite and the Open Systems Interconnection (OSI). The
protocols of the layer provide host-to-host communication services for applications.[1] It provides services such
as connection-oriented data stream support, reliability,
ow control, and multiplexing.
The details of implementation and semantics of the
Transport Layer of the TCP/IP model (RFC 1122),[2]
which is the foundation of the Internet, and the Open Systems Interconnection (OSI) model of general networking,
are dierent. In the OSI model the transport layer is most
often referred to as Layer 4 or L4, while numbered layers
are not used in TCP/IP.
The best-known transport protocol of TCP/IP is the
Transmission Control Protocol (TCP), and lent its name
to the title of the entire suite. It is used for connectionoriented transmissions, whereas the connectionless User
Datagram Protocol (UDP) is used for simpler messaging
transmissions. TCP is the more complex protocol, due
to its stateful design incorporating reliable transmission
and data stream services. Other prominent protocols in
this group are the Datagram Congestion Control Protocol (DCCP) and the Stream Control Transmission Protocol (SCTP).
66.1 Services
Transport layer services are conveyed to an application
via a programming interface to the transport layer protocols. The services may include the following features:
Connection-oriented communication: It is normally
easier for an application to interpret a connection
as a data stream rather than having to deal with
the underlying connection-less models, such as the
datagram model of the User Datagram Protocol
(UDP) and of the Internet Protocol (IP).
Same order delivery: The network layer doesn't generally guarantee that packets of data will arrive in
the same order that they were sent, but often this is
372
66.3. PROTOCOLS
66.2 Analysis
373
66.3 Protocols
This list shows some protocols that are commonly placed
in the transport layers of the Internet protocol suite, the
OSI protocol suite, NetWare's IPX/SPX, AppleTalk, and
Fibre Channel.
66.4 Comparison of
layer protocols
transport
The OSI connection-mode transport layer protocol specication denes ve classes of transport protocols: TP0,
providing the least error recovery, to TP4, which is de- There is also a connectionless transport protocol, specied by ISO/IEC 8602/ITU-T Recommendation X.234.[4]
signed for less reliable networks.
374
66.6 References
[1] RFC 1122, 1.1.3.
[2] RFC 1122, Requirements for Internet Hosts Communication Layers, IETF, R. Braden (Editor), October 1989
[3] ITU-T Recommendation X.224 (11/1995) ISO/IEC
8073.
[4] ITU-T Recommendation X.234 (07/1994) ISO/IEC
8602.
Chapter 67
Tunneling protocol
In computer networks, a tunneling protocol allows a network user to access or provide a network service that the
underlying network does not support or provide directly.
One important use of a tunneling protocol is to allow a
foreign protocol to run over a network that does not support that particular protocol; for example, running IPv6
over IPv4. Another important use is to provide services
that are impractical or unsafe to be oered using only
the underlying network services; for example, providing
a corporate network address to a remote user whose physical network address is not part of the corporate network.
Because tunneling involves repackaging the trac data
into a dierent form, perhaps with encryption as standard, a third use is to hide the nature of the trac that is
run through the tunnels.
To understand a particular protocol stack imposed by tun- mand has to be executed on the blue computer. Written in Bash.
neling, network engineers must understand both the payA Secure Shell (SSH) tunnel consists of an encrypted tunload and delivery protocol sets.
nel created through an SSH protocol connection. Users
As an example of network layer over network layer, may set up SSH tunnels to transfer unencrypted trafGeneric Routing Encapsulation (GRE), a protocol run- c over a network through an encrypted channel. For
ning over IP (IP Protocol Number 47), often serves to example, Microsoft Windows machines can share les
carry IP packets, with RFC 1918 private addresses, over using the Server Message Block (SMB) protocol, a
the Internet using delivery packets with public IP ad- non-encrypted protocol. If one were to mount a Midresses. In this case, the delivery and payload protocols crosoft Windows le-system remotely through the Interare the same, but the payload addresses are incompatible net, someone snooping on the connection could see transwith those of the delivery network.
ferred les. To mount the Windows le-system securely,
It is also possible to establish a connection using the data one can establish a SSH tunnel that routes all SMB traflink layer. The Layer 2 Tunneling Protocol (L2TP) al- c to the remote leserver through an encrypted channel.
lows the transmission of frames between two nodes. A Even though the SMB protocol itself contains no encryptunnel is not encrypted by default, it relies on the TCP/IP tion, the encrypted SSH channel through which it travels
375
376
Remote port forwarding with ssh via command line. The ssh
command has to be executed on the blue computer.
oers security.
To set up a local SSH tunnel, one congures an SSH client
to forward a specied local port (green in the images) to a
port (purple in the images) on the remote machine (yellow
in the image). Once the SSH tunnel has been established,
the user can connect to the specied local port (green) to
access the network service. The local port (green) does
not have to be the same as the remote port (purple).
SSH tunnels provide a means to bypass rewalls that prohibit certain Internet services so long as a site allows
outgoing connections. For example, an organization may
prohibit a user from accessing Internet web pages (port
80) directly without passing through the organizations
proxy lter (which provides the organization with a means
of monitoring and controlling what the user sees through
the web). But users may not wish to have their web trac
monitored or blocked by the organizations proxy lter. If
users can connect to an external SSH server, they can create an SSH tunnel to forward a given port on their local
Users can also use tunneling to sneak through a rewall, using a protocol that the rewall would normally
block, but wrapped inside a protocol that the rewall
does not block, such as HTTP. If the rewall policy does
not specically exclude this kind of wrapping, this trick
can function to get around the intended rewall policy (or
any set of interlocked rewall policies).
Another HTTP-based tunneling method uses the HTTP
CONNECT method/command. A client issues the HTTP
CONNECT command to a HTTP proxy. The proxy
then makes a TCP connection to a particular server:
port, and relays data between that server:port and the
client connection.[1] Because this creates a security hole,
CONNECT-capable HTTP proxies commonly restrict
access to the CONNECT method. The proxy allows connections only to specic ports, such as 443 for HTTPS.[2]
67.5 References
[1] Upgrading to TLS Within HTTP/1.1. RFC 2817. 2000.
Retrieved March 20, 2013.
[2] Vulnerability Note VU#150227: HTTP proxy default
congurations allow arbitrary TCP connections. USCERT. 2002-05-17. Retrieved 2007-05-10.
377
Chapter 68
379
ports requires superuser operating permission. Port num- 68.4 Checksum computation
bers 1024 through 49151 are the registered ports used for
IANA-registered services. Ports 49152 through 65535 The method used to compute the checksum is dened in
are dynamic ports that are not ocially designated for RFC 768:
any specic service, and may be used for any purpose.
They also are used as ephemeral ports, from which softChecksum is the 16-bit ones complement of the
ware running on the host may randomly choose a port in
[4]
ones complement sum of a pseudo header of inorder to dene itself. In eect, they are used as tempoformation from the IP header, the UDP header,
rary ports primarily by clients when communicating with
and the data, padded with zero octets at the
servers.
end (if necessary) to make a multiple of two
octets.[7]
380
The source address is the one in the IPv6 header. The destination address is the nal destination; if the IPv6 packet
does not contain a Routing header, that will be the destination address in the IPv6 header; otherwise, at the originating node, it will be the address in the last element of
the Routing header, and, at the receiving node, it will be
the destination address in the IPv6 header. The value of
the Next Header eld is the protocol value for UDP: 17.
The UDP length eld is the length of the UDP header and
data.
and business applications are important to businesses, developing quality of service solutions is seen as crucial by
some.[10]
Some VPN systems such as OpenVPN may use UDP
while implementing reliable connections and error checking at the application level.
congestion
68.6 Applications
Streaming Data is read as a byte stream, no distinguishing indications are transmitted to signal mesNumerous key Internet applications use UDP, including:
sage (segment) boundaries.
the Domain Name System (DNS), where queries must be
fast and only consist of a single request followed by a single reply packet, the Simple Network Management Pro- User Datagram Protocol is a simpler message-based
tocol (SNMP), the Routing Information Protocol (RIP)[1] connectionless protocol. Connectionless protocols do not
and the Dynamic Host Conguration Protocol (DHCP). set up a dedicated end-to-end connection. Communication is achieved by transmitting information in one diVoice and video trac is generally transmitted using
rection from source to destination without verifying the
UDP. Real-time video and audio streaming protocols are
readiness or state of the receiver.
designed to handle occasional lost packets, so only slight
degradation in quality occurs, rather than large delays if
Unreliable When a UDP message is sent, it cannot
lost packets were retransmitted. Because both TCP and
be known if it will reach its destination; it could get
UDP run over the same network, many businesses are
lost along the way. There is no concept of acknowlnding that a recent increase in UDP trac from these
edgment, retransmission, or timeout.
real-time applications is hindering the performance of ap Not ordered If two messages are sent to the same
plications using TCP, such as point of sale, accounting,
and database systems. When TCP detects packet loss, it
recipient, the order in which they arrive cannot be
will throttle back its data rate usage. Since both real-time
predicted.
381
[7] Postel, J. (August 1980). RFC 768: User Datagram Protocol. Internet Engineering Task Force".
[8] Compute 16-bit Ones Complement Sum. http://
mathforum.org/. John. 2002-03-20. Retrieved 2014-1105. External link in |website= (help)
[9] RFC 768, p2
[10] The impact of UDP on Data Applications. Networkperformancedaily.com. Retrieved 17 August 2011.
UDP connections
Notes
Chapter 69
69.1 History
The organization tries to foster compatibility and agreement among industry members in the adoption of new
standards dened by the W3C. Incompatible versions of
HTML are oered by dierent vendors, causing inconsistency in how web pages are displayed. The consortium
tries to get all those vendors to implement a set of core
principles and components which are chosen by the consortium.
69.3. ADMINISTRATION
69.2.2
383
a program, owing to the risk of creating more drawbacks
for the community than benets.[5]
69.2.4
69.4 Membership
The Consortium is governed by its membership. The list
of members is available to the public.[2] Members include
businesses, nonprot organizations, universities, governmental entities, and individuals.[11]
Membership requirements are transparent except for one
requirement: An application for membership must be reviewed and approved by the W3C. Many guidelines and
requirements are stated in detail, but there is no nal
guideline about the process or standards by which membership might be nally approved or denied.[12]
The cost of membership is given on a sliding scale, depending on the character of the organization applying and
the country in which it is located.[13] Countries are catA recommendation may be updated or extended by egorized by the World Banks most recent grouping by
separately-published, non-technical errata or editor drafts GNI (Gross National Income) per capita.[14]
until sucient substantial edits accumulate for producing a new edition or level of the recommendation. Additionally, the W3C publishes various kinds of informative
69.5 Criticism
notes which are to be used as references.[5]
69.2.5
Later revisions
69.2.6
Certication
384
Flash.[15][16][17][18][19]
69.6 Standards
W3C/IETF standards (over Internet protocol suite):
CGI
69.7 References
[1] W3C Invites Chinese Web Developers, Industry,
Academia to Assume Greater Role in Global Web Innovation. W3.org. 2013-01-20. Retrieved 2013-11-30.
[2] World Wide Web Consortium current Members.
World Wide Web Consortium. 29 March 2012. Retrieved
2 June 2016.
[3] W3C (September 2009). World Wide Web Consortium
(W3C) About the Consortium. Retrieved 8 September
2009.
CSS
DOM
GRDDL
HTML
MathML
OWL
P3P
PROV
RDF
[20]
SISR
SKOS
SMIL
SOAP
It-
[10] The World Wide Web Consortium: Building a Better Internet. Mays Digital. Retrieved 7 November 2015.
[11] W3C (2010). Membership FAQ W3C. Retrieved 7
August 2010.
SPARQL
SRGS
SSML
[14] World
Bank
Country
Classication.
Web.worldbank.org. Retrieved 3 July 2010.
SVG
VoiceXML
XHTML
XHTML+Voice
XML
XML Events
XML Information Set
XML Schema
XPath
XQuery
XSL-FO
XSLT
WCAG
WSDL
XForms
385
Chapter 70
X.25
Study Group VII based upon a number of emerging data
network projects.[8] Various updates and additions were
worked into the standard, eventually recorded in the ITU
series of technical books describing the telecommunication systems. These books were published every fourth
year with dierent-colored covers. The X.25 specication is only part of the larger set of X-Series[9] specications on public data networks.[10]
X.25 NETWORK
PSE
PSE
DTE
DCE
DTE
DCE
DCE
PSE
PSE
DCE
DTE
PAD
DTE
70.1 History
X.25 is one of the oldest packet-switched services available. It was developed before the OSI Reference
Model.[4] The protocol suite is designed as three conceptual layers, which correspond closely to the lower three
layers of the seven-layer OSI model.[5] It also supports
functionality not found in the OSI network layer.[6][7]
France was one of the last remaining countries where
X.25 was developed in the ITU-T (formerly CCITT) commercial end-user service based on X.25 operated.
386
70.2. ARCHITECTURE
Known as Minitel it was based on Videotex, itself running on X.25. In 2002, Minitel had about 9 million users,
and in 2011, it still accounted for about 2 million users in
France when France Tlcom announced it would completely shut down the service by 30 June 2012.[14] As
planned, service was terminated 30 June 2012. There
were 800 000 terminals still in operation at the time.[15]
70.2 Architecture
The general concept of X.25 was to create a universal
and global packet-switched network. Much of the X.25
system is a description of the rigorous error correction
needed to achieve this, as well as more ecient sharing
of capital-intensive physical resources.
The X.25 specication denes only the interface between
a subscriber (DTE) and an X.25 network (DCE). X.75,
a very similar protocol to X.25, denes the interface between two X.25 networks to allow connections to traverse
two or more networks. X.25 does not specify how the
network operates internally many X.25 network implementations used something very similar to X.25 or X.75
internally, but others used quite dierent protocols internally. The ISO equivalent protocol to X.25, ISO 8208, is
compatible with X.25, but additionally includes provision
for two X.25 DTEs to be directly connected to each other
with no network in between. By separating the PacketLayer Protocol, ISO 8208 permits operation over additional networks such as ISO 8802 LLC2 (ISO LAN) and
the OSI data link layer.[16]
X.25 originally dened three basic protocol levels or architectural layers. In the original specications these
were referred to as levels and also had a level number,
whereas all ITU-T X.25 recommendations and ISO 8208
standards released after 1984 refer to them as layers.[17]
The layer numbers were dropped to avoid confusion with
the OSI Model layers.[1]
Physical layer: This layer species the physical,
electrical, functional and procedural characteristics
to control the physical link between a DTE and a
DCE. Common implementations use X.21, EIA232, EIA-449 or other serial protocols.
Data link layer: The data link layer consists of the
link access procedure for data interchange on the
link between a DTE and a DCE. In its implementation, the Link Access Procedure, Balanced (LAPB)
is a data link protocol that manages a communication session and controls the packet framing. It is a
bit-oriented protocol that provides error correction
and orderly delivery.
387
The X.25 model was based on the traditional telephony
concept of establishing reliable circuits through a shared
network, but using software to create "virtual calls"
through the network. These calls interconnect data terminal equipment (DTE) providing endpoints to users,
which looked like point-to-point connections. Each endpoint can establish many separate virtual calls to dierent
endpoints.
For a brief period, the specication also included a connectionless datagram service, but this was dropped in the
next revision. The fast select with restricted response
facility is intermediate between full call establishment
and connectionless communication. It is widely used in
query-response transaction applications involving a single
request and response limited to 128 bytes of data carried
each way. The data is carried in an extended call request
packet and the response is carried in an extended eld of
the call reject packet, with a connection never being fully
established.
Closely related to the X.25 protocol are the protocols to
connect asynchronous devices (such as dumb terminals
and printers) to an X.25 network: X.3, X.28 and X.29.
This functionality was performed using a Packet Assembler/Disassembler or PAD (also known as a Triple-X device, referring to the three protocols used).
X.25 was developed in the era of computer terminals connecting to host computers, although it also can be used
for communications between computers. Instead of dialing directly into the host computer which would
require the host to have its own pool of modems and
Packet layer: This layer dened a packet-layer pro- phone lines, and require non-local callers to make longtocol for exchanging control and user data packets distance calls the host could have an X.25 connection
to form a packet-switching network based on virtual to a network service provider. Now dumb-terminal users
calls, according to the Packet Layer Protocol.
could dial into the networks local PAD (Packet As-
388
sembly/Disassembly facility), a gateway device connecting modems and serial lines to the X.25 link as dened
by the X.29 and X.3 standards.
Having connected to the PAD, the dumb-terminal user
tells the PAD which host to connect to, by giving a phonenumber-like address in the X.121 address format (or by
giving a host name, if the service provider allows for
names that map to X.121 addresses). The PAD then
places an X.25 call to the host, establishing a virtual call.
Note that X.25 provides for virtual calls, so appears to be
a circuit switched network, even though in fact the data itself is packet switched internally, similar to the way TCP
provides connections even though the underlying data is
packet switched. Two X.25 hosts could, of course, call
one another directly; no PAD is involved in this case. In
theory, it doesn't matter whether the X.25 caller and X.25
destination are both connected to the same carrier, but in
practice it was not always possible to make calls from one
carrier to another.
For the purpose of ow-control, a sliding window protocol is used with the default window size of 2. The acknowledgements may have either local or end to end signicance. A D bit (Data Delivery bit) in each data packet
indicates if the sender requires end to end acknowledgement. When D=1, it means that the acknowledgement
has end to end signicance and must take place only after the remote DTE has acknowledged receipt of the data.
When D=0, the network is permitted (but not required) to
acknowledge before the remote DTE has acknowledged
or even received the data.
389
a price-per-segment on top of this.[30] Link speeds varied, typically from 2400 bit/s up to 2 Mbit/s, although
speeds above 64 kbit/s were uncommon in the public networks. A segment was 64 bytes of data (rounded up,
with no carry-over between packets),[31] charged to the
caller[32] (or callee in the case of reverse charged calls,
where supported).[33] Calls invoking the Fast Select facility (allowing 128 bytes of data in call request, call conrmation and call clearing phases)[34] would generally attract an extra charge, as might use of some of the other
X.25 facilities. PVCs would have a monthly rental charge
PVCs are permanently established in the network and
therefore do not require the use of addresses for call and a lower price-per-segment than VCs, making them
cheaper only where large volumes of data are passed.
setup. PVCs are identied at the subscriber interface
by their logical channel identier (see below). However,
in practice not many of the national X.25 networks sup70.5 X.25 packet types
ported PVCs.
One DTE-DCE interface to an X.25 network has a maximum of 4095 logical channels on which it is allowed to
establish virtual calls and permanent virtual circuits,[24]
although networks are not expected to support a full 4095
virtual circuits.[25] For identifying the channel to which a
packet is associated, each packet contains a 12 bit logical channel identier made up of an 8-bit logical channel number and a 4-bit logical channel group number.[24]
Logical channel identiers remain assigned to a virtual
circuit for the duration of the connection.[24] Logical
channel identiers identify a specic logical channel between the DTE (subscriber appliance) and the DCE (network), and only has local signicance on the link between
the subscriber and the network. The other end of the connection at the remote DTE is likely to have assigned a
dierent logical channel identier. The range of possible
logical channels is split into 4 groups: channels assigned
to permanent virtual circuits, assigned to incoming virtual
calls, two-way (incoming or outgoing) virtual calls, and
outgoing virtual calls.[26] (Directions refer to the direction of virtual call initiation as viewed by the DTE they
all carry data in both directions.)[27] The ranges allowed
a subscriber to be congured to handle signicantly differing numbers of calls in each direction while reserving
some channels for calls in one direction. All International
networks are required to implement support for permanent virtual circuits, two-way logical channels and oneway logical channels outgoing; one-way logical channels
incoming is an additional optional facility.[28] DTE-DCE
interfaces are not required to support more than one logical channel.[26] Logical channel identier zero will not be
assigned to a permanent virtual circuit or virtual call.[29]
The logical channel identier of zero is used for packets
which don't relate to a specic virtual circuit (e.g. packet
layer restart, registration, and diagnostic packets).
70.4 Billing
In public networks, X.25 was typically billed as a at
monthly service fee depending on link speed, and then
390
70.6.2
X.25
(1996)
Grey
70.8 References
[1] CCITT, Study Group VII, Draft Recommendation X-25,
March 1976
[2] History of X.25, CCITT Plenary Assemblies and Book
Colors
[3] Foregenix (February 2012). X.25 within the Payment
Card Industry (PDF). Retrieved 25 May 2016.
[4] (Friend et al. 1988, p. 242)
[5] (Friend et al. 1988, p. 243)
[6] ITU-T Recommendation X.28.
[7] ITU-T Recommendation X.3.
[8] X.25 Virtual Circuits Transpac in France Pre-Internet
Data Networking.
[9] X-Series recommendations
[10] (Friend et al. 1988, p. 230)
391
392
Text
Algorithm Source: https://en.wikipedia.org/wiki/Algorithm?oldid=736029079 Contributors: AxelBoldt, LC~enwiki, Brion VIBBER, Eloquence, Mav, Bryan Derksen, Zundark, Tarquin, Taw, Jeronimo, Seb, Ed Poor, Andre Engels, Arvindn, Gianfranco, Tim Marklew,
Miguel~enwiki, Ortolan88, Hannes Hirzel, Heron, Ryguasu, B4hand, Dwheeler, Bth, Isis~enwiki, Hfastedge, Spi~enwiki, Frecklefoot,
Boud, Michael Hardy, Zocky, Pit~enwiki, Lexor, DopeshJustin, Kku, Gabbe, CarlosMenendez, Ixfd64, Chinju, TakuyaMurata, Paddu,
Pde, Dgrant, Nanshu, Snoyes, Den fjttrade ankan~enwiki, Kragen, Kevin Baas, Poor Yorick, Nikai, Susurrus, Andres, Wael Ellithy,
Harvester, Jonik, Mxn, GRAHAMUK, Nikola Smolenski, Charles Matthews, Dcoetzee, Dysprosia, Andrewman327, Timc, Tpbradbury,
Saltine, Fernkes, Jtvisona, Populus, Ed g2s, Dbabbitt, Raul654, Farshadrbn, Jerzy, Ldo, Eux, Lumos3, Robbot, Jaredwf, Fredrik, Chris
73, Gandalf61, Chris Roy, MathMartin, Rholton, Timrollpickering, Hadal, Wikibot, Vikreykja, Michael Snow, Anthony, Guy Peters, Mfc,
Tea2min, David Gerard, McDutchie, Hexii, Cedars, Giftlite, Jacoplane, Inkling, Lupin, Fastssion, Everyking, Curps, Duncharris, Gilgamesh~enwiki, Sundar, Zoney, Eequor, Macrakis, Falcon Kirtaran, ElfMage, Matt Crypto, Bobblewik, Gubbubu, Bact, SarekOfVulcan,
Sonjaaa, Blankfaze, Stephan Leclercq, Antandrus, Beland, Rdsmith4, APH, Kntg, Zfr, Lumidek, Gscshoyru, Chadernook, Quota, Klemen
Kocjancic, Andreas Kaufmann, Frikle, Zondor, Trevor MacInnis, BeavisSanchez, Corti, Mike Rosoft, Oskar Sigvardsson, Shipmaster,
Noisy, Discospinster, Rich Farmbrough, Guanabot, Brutannica, Sesse, Sridharinnity, FiP, Mani1, Paul August, Goochelaar, Bender235,
Andrejj, Danakil, El C, Lycurgus, Kwamikagami, Johneasley, Kanzure, Whosyourjudas, Billymac00, Viriditas, R. S. Shaw, Khakbaz,
H3l1x, Jojit fb, B0at, RussBlau, Obradovic Goran, Krellis, Mpeisenbr, Jumbuck, InterruptorJones, Gary, Imfa11ingup, Anthony Appleyard, Mark Dingemanse, Wiki-uk, Diego Moya, Riana, Bart133, Snowolf, PaePae, Wtmitchell, Bucephalus, RainbowOfLight, Mikeo,
HenryLi, Kazvorpal, Markaci, Oleg Alexandrov, MickWest, Woohookitty, Mindmatrix, BillC, Ruud Koot, Cbdorsett, Plowboylifestyle,
Vasileios Zografos, Essjay, Adam Marx Squared, Graham87, Qwertyus, JIP, Lhademmor, Rjwilmsi, Tizio, Salix alba, Salleman, Pasky,
TheGWO, Drpaule, Penumbra2000, Yamamoto Ichiro, Fantom~enwiki, FlaBot, Ian Pitchford, RobertG, Mathbot, Nihiltres, Who, Fragglet, RexNL, Gurch, DevastatorIIC, Intgr, Jidan, Jersey Devil, DVdm, Bgwhite, YurikBot, Wavelength, RobotE, Hairy Dude, Deeptrivia,
RussBot, Michael Slone, Mattpeck, Guruduttmallapur, Grubber, Gaius Cornelius, Thane, Anomalocaris, Johantheghost, Toncek, D. F.
Schmidt, Jpbowen, Moe Epsilon, Mikeblas, Tony1, Alex43223, Zwobot, DeadEyeArrow, Googl, The Fish, Closedmouth, Cedar101, Pb30,
Depakote, BorgQueen, GraemeL, JoanneB, HereToHelp, Maxamegalon2000, GrinBot~enwiki, TuukkaH,
robot, Josh Triplett, A
bit iy, SmackBot, Bapi mahanta, Nihonjoe, ElectricRay, DCDuring, Unyoyega, Od Mishehu, KocjoBot~enwiki, Jagged 85, Shamalyguy,
Nil Einne, Swerdnaneb, Gilliam, Ohnoitsjamie, Hmains, Anwar saadat, Chris the speller, Bluebot, Persian Poet Gal, Silly rabbit, MARVEL~enwiki, Jenny MacKinnon, Delta Tango, Cornake pirate, Rizzardi, Jorvik, Cplakidas, Onorem, Nixeagle, MattOates, Addshore,
Aposu, Allan McInnes, Cybercobra, Savidan, Theodore7, alyosha, Lus Felipe Braga, Wybot, Adamarthurryan, Jna runn, Mlpkr,
FlyHigh, Algogeek, Nmnogueira, PradeepArya1109, SashatoBot, Lambiam, Vildricianus, Quendus, Derek farn, Wvbailey, SilverStar, Harryboyles, MagnaMopus, Treyt021, Kanjy, Breno, Goodnightmush, ManiF, Tlesher, Aarandir, Ckatz, Hvn0413, Kenbei, Giminy, Hu12,
Levineps, BranStark, DouglasCalvert, Iridescent, Dreftymac, Colonel Warden, Wjejskenewr, Aeternus, Paul Foxworthy, Marysunshine,
Adambiswanger1, Tawkerbot2, George100, Petr Matas, Splang, JForget, CRGreathouse, Ahy1, CmdrObot, Spankman, CBM, Alcalazar,
Charvex, ShelfSkewed, Pgr94, Gregbard, Sopoforic, Cydebot, Kanags, WillowW, Gogo Dodo, Chasingsol, Bb vb, Pascal.Tesson, DumbBOT, FastLizard4, Markluel, Kozuch, Daven200520, SteveMcCluskey, UberScienceNerd, Wexcan, BetacommandBot, Malleus Fatuorum, Thijs!bot, Epbr123, V31a, Headbomb, Marek69, Electron9, Maximilian Schnherr, Paxinum, Nick Number, Klausness, Napmor,
Escarbot, Je Edmonds, AntiVandalBot, Gioto, Quintote, Jbaranao, Hannes Eder, Dylan Lake, Danger, Farosdaughter, Wayiran, Storkk,
Dhrm77, DagosNavy, Deective, Oxinabox, The Transhumanist, Nthep, Fetchcomms, Michig, Andonic, Martinkunev, Greensburger,
Cameltrader, RebelRobot, Xact, GOV, Acroterion, Geniac, Wasell, Hurmata, Magioladitis, Guywhite, Bongwarrior, VoABot II, AtticusX,
Swpb, Ling.Nut, Lucyin, CountingPine, Cic, KConWiki, MetsBot, David Eppstein, User A1, DerHexer, Acardh, SamShearman, Jacomo,
MartinBot, PAK Man, EyeSerene, Kabton14, Rettetast, Speck-Made, Odin of Trondheim, EdBever, PhageRules1, J.delanoy, Mange01,
Rgoodermote, Wa3frp, Maurice Carbonaro, Jonpro, Athaenara, DslIWG,UF, Mikael Hggstrm, AntiSpamBot, NewEnglandYankee, SJP,
Policron, Thecarbanwheel, Malerin, Billcarr178, Lilwik, STBotD, DorganBot, Bonadea, TheNewPhobia, Ale2006, Spellcast, Makewater, Deor, Austinmohr, VolkovBot, Pasixxxx, Johan1298~enwiki, JohnBlackburne, AlnoktaBOT, Vincent Lextrait, Larry R. Holmgren,
Philip Trueman, TXiKiBoT, Ldonna, Nxavar, Rei-bot, Cyberjoac, Clarince63, Melsaran, Jackfork, Cremepu222, Geometry guy, Everything counts, Manik762007, Eubulides, Billinghurst, Andy Dingley, SQL, Groupthink, Dmcq, AlleborgoBot, Logan, Alexandre Bouthors,
BriEnBest, SieBot, Brenont, Tiddly Tom, Scarian, LancerSix, Ghimboueils, Fabullus, Caltas, Hamid88, Timhowardriley, MustangFan,
Yintan, Soler97, Nummer29, Keilana, Iames, Flyer22 Reborn, Cmdieck, Paolo.dL, Allmightyduck, Oxymoron83, Azurgi, Lightmouse,
CharlesGillingham, Torchwoodwho, Citneman, Meowist, Randomblue, Denisarona, SlackerMom, Martarius, Sfan00 IMG, ClueBot, Kl4m,
PipepBot, The Thing That Should Not Be, Eric Wester, Dinsha 89, Blackrock01, JuPitEer, Botodo, Boing! said Zebedee, Niceguyedc,
PMDrive1061, Seanwal111111, Jusdafax, Benn Adam, Winston365, Abrech, Estirabot, Rejka, Salon Essahj, Ysindbad, SoxBot III, Darkicebot, Boleyn, XLinkBot, Gnowor, Cascade07, Jytdog, Hiraku.n, Rror, 98dblachr, WikHead, Nasaralla, Galzigler, Bob1312, Alexius08, Bill4341, Matma Rex, MystBot, Cyrusace, Dsimic, Multipundit, Willking1979, Some jerk on the Internet, DOI bot, Friginator,
Crazysane, Kh0061, Leszek Jaczuk, MrOllie, Chamal N, EconoPhysicist, Abovechief, Glass Sword, AndersBot, Favonian, LinkFABot, Raayen, Denicho, 84user, Systemetsys, Geo g guy, Tide rolls, Jarble, CountryBot, Legobot, Luckas-bot, Yobot, OrgasGirl, JSimmonz, Ptbotgourou, WhyDoIKeepForgetting, Wainkelly, Pcap, KamikazeBot, Waltnmi, Agent phoenex, 747fzx, Tempodivalse, Markh56,
Orion11M87, AnomieBOT, Metalhead94, Ellegantsh, Jim1138, Galoubet, Alemua, Materialscientist, The High Fin Sperm Whale, Citation bot, X30x, GB fan, LilHelpa, The Firewall, Xqbot, Timir2, Mathviolintennis, Agasta, Drilnoth, DSisyphBot, XZeroBot, Cyphoidbomb, Isheden, Miym, GrouchoBot, Xashaiar, Omnipaedista, DAndC, Deadcracker, JulianDelphiki, JediMaster362, Sophus Bie, Sulaymaan114, Yohannesb, GhalyBot, Shadowjams, Erik9, Jundi78, FrescoBot, Tobby72, MetaNest, Mhadi.afrasiabi, Johnsap, Emadfarrokhih,
K3fka, Mission2ridews, Makewrite, The ansible, Tlork Thunderhead, Weetoddid, BenzolBot, Citation bot 1, DASSAF, Aekamir, Giantscoach55, Pinethicket, I dream of horses, HRoestBot, Chatfecter, MJ94, Lrsjohnson, Skyerise, Mutinus, RedBot, MastiBot, Maldoddi,
Serols, Rpwikiman, Isofox, Editorinchief1234, RobinK, Lissajous, Reconsider the static, Amberdhn, MusicNewz, Trappist the monk,
Eric.ito, January, Ud1406, Diannaa, Mttcmbs, Fastilysock, Rednas1234, Mean as custard, Alph Bot, Waynefan23, Skamecrazy123, MSPbitmesra, EmausBot, John of Reading, Drrevu, Sitharama.iyengar1, Dutilh, Mashaunix, Faolin42, GoingBatty, RA0808, Philipp Wetzlar,
ZxxZxxZ, KHamsun, K6ka, Bethnim, Werieth, Pro translator, Josve05a, The Nut, Wayne Slam, Tolly4bolly, Staszek Lem, Bigchip,
JoeSperrazza, Robbiemorrison, Loggerjack, IGeMiNix, Klugkerl, Donner60, Chewings72, Tijfo098, ChuispastonBot, Crimsonraptor,
Joosyfoo, Swfung8, Mjbmrbot, ClueBot NG, Proesershean, Wcherowi, This lousy T-shirt, Satellizer, SusikMkr, Frietjes, Jiri 1984,
Nikhileditor, Dreth, Tatelyle, Widr, Antiqueight, Algorithmguru, Mesimoney, Robert s denton, Helpful Pixie Bot, Mahali syarifuddin,
HMSSolent, Wbm1058, EhsanKhaki, BG19bot, Rrsoni, , Langchri, SNmirza, Manojkumarcm, Furkaocean,
Preetykondyal, Mark Arsten, Mhakcm, Basketboy63, CarloMartinelli, Neutral current, Silvrous, FutureTrillionaire, QuaeriSolet, Altar,
393
Algoritmy, Uri-Levy, Snow Blizzard, Nodira777, Soroosh60, Sni56996, YangYanhao, BattyBot, SimmeD, Belmira11, Laodah, Cyberbot
II, ChrisGualtieri, Ozziev, Laberkiste, Khazar2, Enterprisey, Phobosrocks, Dexbot, Kushalbiswas777, Djbrainboy, Webclient101, Mogism,
Brendonshay, Lugia2453, Mhcs.907, Frosty, Jochen Burghardt, Skylo Frost, FallingGravity, Vahid javani, I am One of Many, Jamesmcmahon0, Blackguy1212, AmaryllisGardener, Satassi, Bloorain, Waqaee, LCS check, NYBrook098, Ugog Nizdast, Ginsuloft, Quenhitran,
Dkwebsub, Dan.inPractice, Anrnusna, Ethanlim, Stamptrader, Dastoger Bashar, Hobbobobo, GeorgeAhad, G2dk7g, Tanmay bhattad,
Kaystay, Monkbot, Thibaut120094, Akki420, Somepics, Nonynonna, Jadecichy, Rattandip, Chadcallahan, Evolutionvisions, Psychedgrad,
ChamithN, Gpahal, Interpuncts, Ayush3504, Tensorproduct, HAN81, Waltersquare, Lgrush, KasparBot, Voloum, Pmaiden, Khalid157,
4thAgeDragon, Maczkopeti, Streetdaddy101, Abhishek sharma17, Snowweatyh, DICKSON BARASA, Fatimaatta, GreenC bot, Igor nova,
Luke wiki1234567, Kingjohn12345, DavidGreens and Anonymous: 977
Analogy Source: https://en.wikipedia.org/wiki/Analogy?oldid=731863458 Contributors: AxelBoldt, Vicki Rosenzweig, Toby Bartels, Sfdan, Hephaestos, Wapcaplet, Ihcoyc, CatherineMunro, Hermeneus, Charles Matthews, MatrixFrog, Fuzheado, Fvw, Metasquares, Wetman,
Branddobbe, Jredmond, Blainster, Quincy, Marc Venot, DavidCary, Geeoharee, Bradeos Graphon, Thetorpedodog, Decagon, Pgan002,
Fpahl, Karol Langner, Bumm13, Marc Mongenet, Salimfadhley, DanielCD, Rich Farmbrough, Kjoonlee, CanisRufus, Walden, Szquirrel,
Kwamikagami, Aude, Bobo192, Brim, Martg76, Sam Korn, Alansohn, Riana, Wikidea, Echuck215, Garzo, BMWman, Mikeo, Bsadowski1, Dragunova, Blaxthos, Alexrudd, Angr, Velho, Rocastelo, Kzollman, Kelisi, Dodo78, Dysepsion, Magister Mathematicae, BD2412,
Rjwilmsi, KYPark, Jake Wartenberg, Amire80, Nneonneo, The wub, Yamamoto Ichiro, Margosbot~enwiki, RexNL, Kolbasz, TheDJ,
ARAJ, Wavelength, RussBot, Nofrak, SpuriousQ, Ziddy, Anchjo, Aeusoes1, Grafen, RazorICE, Cleared as led, DAJF, Reyk, Tevildo,
JoanneB, Draicone, DVD R W, SmackBot, Lavintzin, Moeron, Bobet, KnowledgeOfSelf, Ikip, Jagged 85, Delldot, Mhss, Papa November,
Can't sleep, clown will eat me, JonHarder, Yidisheryid, Addshore, Ines it, Cybercobra, Nakon, Jon Awbrey, Vina-iwbot~enwiki, Deiz,
Drunken Pirate, Spiritia, SashatoBot, Nick Green, JackLumber, Kirkoconnell, 16@r, Grumpyyoungman01, Makyen, Wikidrone, Sheherazahde, Wolfdog, Fuzzycasserole, Pgr94, Gregbard, Phatom87, Cydebot, Reywas92, Gogo Dodo, Corpx, Julian Mendez, Miguel de
Servet, Christian75, Letranova, Thijs!bot, Helgus, A3RO, Dfrg.msc, Christopher James Dubey, Transhumanist, Good Vibrations, AntiVandalBot, Majorly, Vic226, Holyoak, Doktor Who, Jhsounds, Salgueiro~enwiki, Orarch, JAnDbot, Edwardspec TalkBot, Hut 8.5, TAnthony, Gdvwhite, VoABot II, Pdturney, JamesBWatson, Verkhovensky, Ling.Nut, Kutu su~enwiki, EagleFan, Rebels12, Wikivangelist,
PRMerkley, FisherQueen, MartinBot, Schmloof, Kiore, Tikitactinker, R'n'B, J.delanoy, Trusilver, EscapingLife, Katalaveno, MezzoMezzo,
HiLo48, Chiswick Chap, NewEnglandYankee, SJP, Student7, Jwh335, Greg-si, Macedonian, Je G., Kyle the bot, TXiKiBoT, Rei-bot, Ontoraul, Martin451, Jackfork, LeaveSleaves, Pishogue, Enigmaman, Synthebot, Enviroboy, Burntsauce, Insanity Incarnate, Helelen, SieBot,
Arpose, Caltas, Happysailor, Universalcosmos, Undead Herle King, Aruton, Anchor Link Bot, Emptymountains, Ajolewis, Martarius,
ClueBot, Rumping, The Thing That Should Not Be, Gawaxay, Supertouch, Niceguyedc, Grunty Thraveswain, Excirial, Rhododendrites,
SchreiberBike, La Pianista, Aitias, XLinkBot, Micmachete, Avoided, MystBot, Joseph.little, Addbot, Tanhabot, Ronhjones, Cst17, Download, Dougbast, The world deserves the truth, West.andrew.g, Tassedethe, ., Jarble, Megaman en m, ZX81, Yobot, Anypodetos,
AnomieBOT, Jim1138, AdjustShift, Materialscientist, E235, Citation bot, GnawnBot, Capricorn42, Luch4, A157247, Omnipaedista, Captobvius, Coochie3, HJ Mitchell, Boxplot, , MKFI, Jandalhandler, Gamewizard71, ItsZippy, Ivo Coelho, Vrenator, Raidon Kane, Reaper
Eternal, RjwilmsiBot, TjBot, EmausBot, YAYLOLAGE, Conser~enwiki, Racerx11, Syncategoremata, Ryanjcolligan, Scgtrp, K6ka, MindShifts, Dhmelody, TyA, Donner60, BioPupil, Bill william compton, ChuispastonBot, Analgape, DASHBotAV, ClueBot NG, EIN x FAMOUSxX, Satellizer, J151e, Helpful Pixie Bot, Faus, Lewisswinger, Wbm1058, BG19bot, Pacerier, Kyoakoa, Who.was.phone, Jander80,
Mark Arsten, CitationCleanerBot, Theasad.ali, BattyBot, David.moreno72, Miszatomic, ~riley, Delanydi, ChrisGualtieri, Dexbot, Numbermaniac, Lugia2453, Frosty, Jochen Burghardt, Aa2093, Morris.jake, Yuki huang, Carrot Lord, Mitchellriley46, Star767, Yomellamamama, WikiEnthusiastNumberTwenty-Two, Dmd104, Monkbot, Dguzzo, Asdklf;, Muzikbox, Jpshuskus, BashBoy00, Nkkenbuer, Jhtx,
PHCleverley, Snoopy44444545664 and Anonymous: 323
AppleTalk Source: https://en.wikipedia.org/wiki/AppleTalk?oldid=733627372 Contributors: Sodium, Mav, Tarquin, Rjstott, Aldie, SJK,
SimonP, Maury Markowitz, Edward, Nixdorf, Lovely Chris, Elano, GRAHAMUK, Zoicon5, Topbanana, Ldo, RedWolf, Kadin2048,
Hippietrail, Wikibot, Alerante, Fennec, Sj, Inkling, Sdsher, Siroxo, AlistairMcMillan, Raekwon, Bobblewik, Bumm13, Tooki, MementoVivere, Blorg, Freakofnurture, Rich Farmbrough, Pak21, Alistair1978, Byrial, Nchaimov, CanisRufus, Kross, Sietse Snel, Lunaverse,
Barcex, Cmdrjameson, Polluks, .:Ajvol:., Trevj, HasharBot~enwiki, Rd232, Kusma, Blaxthos, Nuno Tavares, TotoBaggins, Graham87,
Casey Abell, Ctempleton3, FlaBot, Jsephton, Joe07734, Nwatson, Bgwhite, YurikBot, Wavelength, Borgx, RussBot, DMahalko, Peter
S., Bovineone, Pjhagop, DragonHawk, Grafen, Mmccalpin, Giltramirez, Xpclient, Wknight94, MoriBot~enwiki, Picksomething, Zvika,
SmackBot, Reedy, Basil.bourque, Happywae, Bluebot, Manta7, Frap, JonHarder, Pattersonc, Mwtoews, Zac67, Dgatwood, Stradv16,
This user has left wikipedia, IronGargoyle, RomanSpa, Dl2000, Phuzion, RekishiEJ, Pmyteh, Drinibot, Denham062, Pgr94, Phatom87,
ChristTrekker, Thijs!bot, Sdream93, Laboye, RobotG, WinBot, Ownlyanangel, Shlgww, JAnDbot, Stefan Bethke, Magioladitis, SynergyStar, Lenoil~enwiki, GrammarNSpellChecker, Spellmaster, Nrobbin, RP88, Lilac Soul, Alexthepun, Inwind, Dan dan rae, X!,
VolkovBot, Je G., TXiKiBoT, Vanished user ikijeirw34iuaeolaseric, Wiae, Synthebot, Infodriveway, Bentogoa, Lightmouse, Manoj C
Menon, ClueBot, Me5000, Rjd0060, Jzink123, TReidLewis, PixelBot, John Nevard, Rhododendrites, Sun Creator, Technorj, Thehelpfulone, Aitias, Mac128, LieAfterLie, Jdmcs, Gwandoya, Shashank208, JBsupreme, Lightbot, Legobot, Luckas-bot, KGMallory, Yobot, Peter
Flass, AnomieBOT, 1exec1, Materialscientist, TinucherianBot II, Censorship Workaround, QuixoticWonderer, FrescoBot, Degress, Arekrishna, AlanOpp, SeoMac, RjwilmsiBot, EmausBot, John of Reading, Mojo66, Xanchester, ClueBot NG, Lord Chamberlain, the Renowned,
Alexbee2, Cyberpower678, Cyberbot II, Khazar2, Codename Lisa, Frosty, Jackmcbarn, Amazemen, Sudpiop and Anonymous: 121
ARPANET Source: https://en.wikipedia.org/wiki/ARPANET?oldid=738185425 Contributors: The Cunctator, Dreamyshade, Zundark,
The Anome, Snorre, Hephaestos, Chris Q, Edward, Tim Starling, Wwwwolf, Looxix~enwiki, Ahoerstemeier, Jimfbleak, Angela, Rl,
Rob Hooft, G Prime, Dysprosia, WhisperToMe, DJ Clayworth, Furrykef, Itai, Nv8200pa, Jnc, Franois~enwiki, Thue, Bevo, Toreau,
Flockmeal, Frazzydee, Phil Boswell, Twice25, Robbot, Sdedeo, Boy b, RedWolf, Postdlf, Sverdrup, Timrollpickering, Giftlite, DocWatson42, Ike~enwiki, Inter, Everyking, Dratman, Erdal Ronahi, Daibhid C, Siroxo, Matt Crypto, Bobblewik, CryptoDerk, Quadell, Beland, Jossi, Maximaximax, Szajd, Vishahu, Mschlindwein, Ohka-, Abdull, Adashiel, Grunt, Kate, JTN, Discospinster, Rich Farmbrough,
Guanabot, Jwise77, Adam850, Byrial, Kim Meyrick, Night Gyr, ESkog, Petrus~enwiki, Uli, Ylee, Shanes, Bookofjude, Coolcaesar,
TMC1982, Longhair, Smalljim, Cmdrjameson, KBi, La goutte de pluie, David Gale, PiccoloNamek, Twobells, Jumbuck, Alansohn,
Guy Harris, Uogl, Andrew Gray, Lord Pistachio, JoaoRicardo, Wensong~enwiki, Zippanova, Albino Fox, Lugevas, Cburnett, Docboat,
TheCoee, Netkinetic, Ceyockey, Red dwarf, Ericl234, Mhazard9, Smoth 007, Ian Moody, TSP, Woohookitty, Uttaddmb, Mu301,
DoctorWho42, Rocastelo, Velvetsmog, Tabletop, Gimboid13, Ashmoo, Qwertyus, Dave Cohoe, Squideshi, Rjwilmsi, Nightscream, Jake
Wartenberg, Vary, Arabani, TedPostol, Quiddity, Bruce1ee, Collard, Miha Ulanov, Jemcneill, Fred Bradstadt, Waynemcdougall, Untruth, Daderot, Jrtayloriv, Preslethe, Chobot, Bgwhite, Gwernol, YurikBot, KenBailey, Cycletime, Eggman183, Hydrargyrum, Shell
Kinney, Rsrikanth05, Carps, CarlHewitt, Grafen, Ino5hiro, Barberio, Cryptosmith, Xdenizen, Daniel Mietchen, Bobak, Allynnc, Dbrs, BOT-Superzerocool, Yudiweb, Brisvegas, Cengelbart, Bill.martin, Capt Jim, Zzuuzz, Ali K, Johna~enwiki, Jack Upland, ViperSnake151, Huebi~enwiki, KNHaw, Zvika, Samuel Blanning, Veinor, SmackBot, Mmernex, EvilCouch, Classiclms, Gavin77, Bjelleklang,
394
KocjoBot~enwiki, Btm, Kintetsubualo, Edgar181, Beerquest, Gilliam, Folajimi, Andy M. Wang, StanislavJ, Nbarth, DHN-bot~enwiki,
Ransu, JonHarder, Renegade Lisp, BostonMA, Dbrown46, Mwtoews, Wybot, DMacks, Ohconfucius, Will Beback, SashatoBot, Esrever,
AThing, Disavian, Arbustoo, Mr Stephen, Manifestation, MTSbot~enwiki, Kvng, TJ Spyke, Michaelbusch, MFago, CzarB, Joseph Solis
in Australia, Igoldste, Nethac DIU, Color probe, Az1568, Courcelles, Cyranomn, Guardianangelz, Tawkerbot2, Michaelwilson, Eastlaw, JForget, Mbiesz, Edward Vielmetti, CBM, CuriousEric, WeggeBot, Neelix, Cydebot, Flowerpotman, Kimyu12, Bramlet Abercrombie, Vyselink, Aduro.sudonim, Smiteri, Thijs!bot, Epbr123, Martyr2566, Anupam, Headbomb, SGGH, Nezzadar, Tellyaddict, RickinBaltimore, SusanLesch, Dawnseeker2000, Omaunder, Fmlyguy08, AntiVandalBot, LinaMishima, Leuqarte, JAnDbot, Harryzilber, The
Transhumanist, Arch dude, Hut 8.5, PhilKnight, Kalicaloo1212, .anacondabot, Geniac, Kilrothi, Magioladitis, Legallydolls, Bongwarrior, VoABot II, JamesBWatson, Nyttend, WODUP, Prestonmcconkie, Avicennasis, Jodi.a.schneider, Robin S, Gwern, MartinBot, Gully
33, CommonsDelinker, J.delanoy, Mange01, Bogey97, Reginhild, Cyanolinguophile, Rhinestone K, VAcharon, Public Menace, Dave
Dial, Milo03, Maxzig, (jarbarf), Saltysailor, Mufka, Phirazo, Doug4, Jamesontai, DorganBot, Gtg204y, Bonadea, Scott Illini, UnicornTapestry, Ichthyos, D A Patriarche, Drmargi, Philip Trueman, TXiKiBoT, Oshwah, Chris-marsh-usa, Ripepette, Ngch89, Harvsterjake,
AlleborgoBot, Thunderbird2, Logan, SiliconWolf, Kbrose, SieBot, StAnselm, 4wajzkd02, BotMultichill, Mikebar, LawrenceGRoberts,
Blueclaw, Le Pied-bot~enwiki, Maijohn, Oxymoron83, Lightmouse, Techman224, OKBot, ImageRemovalBot, ClueBot, Plastikspork,
Trevor.harris1, Der Golem, Objective3000, Mavericks12, Niceguyedc, Piledhigheranddeeper, Rhododendrites, Kmaster, CodeCaster,
Ottawa4ever, Thingg, Vegetator, Wmjames, Anderssl, Aadh, Adouglass, Egmontaz, XLinkBot, Pichpich, Gerhardvalentin, NellieBly,
Dgtsyb, TravisAF, RyanCross, Addbot, Ghettoblaster, Some jerk on the Internet, Jojhutton, Knight of Truth, Fgnievinski, Blethering
Scot, Ronhjones, Fluernutter, Elainecs, Glane23, Favonian, Torla42, Graylorde, , Mightybozo, Alanscottwalker,
, Gail, LuK3, Pointer1, Luckas-bot, Yobot, Fraggle81, Donfbreed, GilCahana, Palladmial, 12george1, Reddog81, Peter Flass, Thanmark, AnomieBOT, Rubinbot, Jim1138, TwistedText, Dmf360, Materialscientist, 90 Auto, Citation bot, JohnnyB256, Quebec99, LilHelpa, GrouchoBot, VonFassen, Omnipaedista, Samoher, Kaylanimis, Multixfer, Jurcking, N419BH, Shadowjams, Gnuish, A.amitkumar,
Sushil20051982, Zacharysyoung, Floparallel, FrescoBot, Abeair, W Nowicki, AnnDuvall, D'ohBot, ZedGreen, Redrose64, ImageTagBot, Tom.Reding, Lineslarge, Full-date unlinking bot, Jrxer, TobeBot, Throwaway85, Jonkerz, Lotje, Zvn, Mr.98, Tbhotch, DARTH
SIDIOUS 2, RjwilmsiBot, Balph Eubank, DASHBot, Steve03Mills, EmausBot, John of Reading, Acather96, Immunize, GoingBatty,
TuHan-Bot, Wikipelli, Dcirovic, AvicBot, Rapidosity, TcomptonMA, W163, Coasterlover1994, L Kensington, Pun, ChuispastonBot,
Marioluigi98, BornonJune8, ClueBot NG, Oldthumper, MelbourneStar, Lord Chamberlain, the Renowned, Frietjes, Koalabearyz, Helpful
Pixie Bot, Vikramanb17, PearlSt82, Joeykai, CAWylie, Pascal72~enwiki, BattyBot, Thom2729, Dexbot, NFLisAwesome, Sriharsh1234,
Zziccardi, Chrono85, Franois Robere, Lukesimo, Babitaarora, Thevideodrome, Ginsuloft, Whizz40, Twistie1, Philroc, Lasturias, JaconaFrere, Monkbot, SilverEditor, Gideon279, Trackteur, Macofe, Prpsct, Gareld Gareld, Mkvision, Charliecombs, MarlovianPlough,
Abuanand01, KeeveChris, Whalestate, KasparBot, JAKnott, Amrutkowski, Zamaster4536, GreenC bot and Anonymous: 524
Asynchronous Transfer Mode Source: https://en.wikipedia.org/wiki/Asynchronous_Transfer_Mode?oldid=737656198 Contributors:
Tobias Hoevekamp, Derek Ross, Zundark, The Anome, AlexWasFirst, Youssefsan, Aldie, Leandrod, Edward, Michael Hardy, Zanimum, Darrell Greenwood, Rl, Edaelon, Harris7, Kdaley, Colin Marquardt, Pedant17, Jnc, Populus, AnonMoos, Robbot, RedWolf, Nurg,
Wikibot, Gwicke~enwiki, Giftlite, Dinomite, Monedula, Everyking, Joconnor, Rookkey, Niteowlneils, Richard cocks, Matt Crypto, Darrien, Bobblewik, Tagishsimon, Onco p53, Quarl, Pembers, Necrothesp, Karl-Henner, Creidieki, Mzabaluev, Adashiel, EagleOne, Jkl,
Rich Farmbrough, Guanabot, Sladen, Smyth, Xezbeth, Dyl, Project2501a, *drew, Spearhead, Neilrieck, West London Dweller, Bobo192,
MarkWahl, Robotje, Get It, Unquietwiki, Kjkolb, Ivansanchez, Rjamorim, Espoo, Alansohn, Anthony Appleyard, Thebeginning, Snowolf,
Markrod, Cburnett, Hydrowire, Sakus, Lerdsuwa, Brholden, Blaxthos, Kiahh, Kelly Martin, RHaworth, BernardM, Camw, Ylem, Ilario,
Brentdax, Beej, Bluemoose, M412k, Teemu Leisti, Graham87, BD2412, Chrisc, RxS, Chrischambers, Ryan Norton, Jivecat, Salix alba,
Vegaswikian, Oblivious, ElKevbo, Ttwaring, FlaBot, RexNL, Pengu, Chobot, YurikBot, Tetzcatlipoca, Hyad, Pi Delport, RadioFan, Gaius
Cornelius, Chris Murphy, NickBush24, Daniel Luechtefeld, Ino5hiro, Dr Debug, Zwobot, Gr33ndata, Bobstopper, Janto, Ketil3, Phil
Holmes, Bluezy, SmackBot, Unyoyega, Gilliam, Ohnoitsjamie, Betacommand, Richfe, Skintigh, Oli Filth, Silent SAM, DHN-bot~enwiki,
TripleF, Martensjd, Rrburke, Chrylis, Het, Wizardman, Kukini, Zac67, Kylebrz, Vanished user 9i39j3, Soumyasch, Jec, Dicklyon, Totel, Saxbryn, Kvng, Iridescent, Paul Koning, Walton One, Tawkerbot2, CmdrObot, Pleyden, Jesse Viviano, Requestion, Duraivelanc,
Cheesysam, Phatom87, IoannisK, Ashok.Nair, Kozuch, Thijs!bot, TFriesen, Drpixie, Electron9, Gerry Ashton, Nezzadar, Philippe, Amlz,
LachlanA, AntiVandalBot, Davido, Edokter, Rie, Floppytoes, JAnDbot, Chaitanya.lala, Barek, TAnthony, Beaumont, VoABot II,
Mmkh, SandStone, Allstarecho, MartinBot, Dgepstein, Jim.henderson, Naohiro19, Genghiskhanviet, Lilac Soul, J.delanoy, Mange01, Tannerbrockwell, Peter Chastain, Adriao, Javawizard, Public Menace, LordAnubisBOT, Ls6777, Ra6907, Inwind, Emiller213, Funandtrvl,
JohnGrantNineTiles, VolkovBot, CSumit, Atm153, Philip Trueman, Vipinhari, Anonymous Dissident, Melsaran, BotKung, Tomg11030,
Iamzemasterraf, Why Not A Duck, Chenzw, KjellG, Wisamzaqoot, Anuragkothari, Kbrose, Nubiatech, ToePeu.bot, VVVBot, Winterspan,
Keilana, Bentogoa, Flyer22 Reborn, Jojalozzo, Arunachalammanohar, Smfavaro, Martarius, ClueBot, Methossant, Wutsje, Timberframe,
Niceguyedc, Vaibhav.nimbalkar, Yogi raj2, Tanketz, Propeng, Captpossum, Vivio Testarossa, Panda34, Apparition11, Antti29, Stickee,
Mohanchander, Jugandi, Dgtsyb, Kbdankbot, Addbot, Blethering Scot, Graham.Fountain, AndersBot, ChenzwBot, , Enduser, Legobot, Luckas-bot, Yobot, Les boys, Backslash Forwardslash, 1exec1, Jim1138, Kevintolly, Materialscientist, E2eamon, ArthurBot, Quebec99, DataWraith, Frankie0607, Cirne100, Visiting1, Lady alys, Ozzie13, Green Cardamom, FrescoBot, Nageh, W Nowicki,
GreenZeb, Orenburg1, Sricciar, Tekdude, Mosfet RJF, DARTH SIDIOUS 2, WildBot, Ericjmonson, EmausBot, Jsung123, Olof nord, Klbrain, Tommy2010, ZroBot, Carbonlethagy, Demonkoryu, MonoAV, Teapeat, ClueBot NG, Lord Chamberlain, the Renowned, Chester
Markel, Rezabot, Helpful Pixie Bot, Sumankane, Azerekh, BG19bot, Abhigyan.gaurav, ChrisGualtieri, Webclient101, UNOwenNYC,
Comp.arch, Semsi Paco Virchow, Narky Blert, Drsunnymount, GreenC bot and Anonymous: 401
AX.25 Source: https://en.wikipedia.org/wiki/AX.25?oldid=730870910 Contributors: Jvangorp, Vandys, Bobblewik, DNewhall, ChrisRuvolo, Jda, Simon South, Ralf.Baechle, Bookandcoee, Ylem, Eyreland, Rjwilmsi, Mirror Vax, Mcleodm, Anonym1ty, Oh2mqk, Shaddack,
Brandon, Extraordinary,
robot, SmackBot, Kharker, Mulder416, EVula, Adsllc, Euchiasmus, Xofc, Quibik, Dawnseeker2000, Luxomni, Storkk, Xeno, Dtheweather9, K7net, STBotD, DorganBot, Sv1xv, Muhandes, Kbdankbot, Addbot, Debresser, Yobot, Milks Favorite
Bot II, AnomieBOT, Nojiratz, Trappist the monk, DASHBot, Dewritech, Dcirovic, Sodmy, Kc2hmv, Chosulman, 32RB17, KasparBot and
Anonymous: 26
Communicating sequential processes Source: https://en.wikipedia.org/wiki/Communicating_sequential_processes?oldid=724948365
Contributors: Derek Ross, Michael Hardy, Ggaughan, UphillPhil, Phil Boswell, RickBeton, Borrible, DavidCary, Fishal, Discospinster,
LuckyStarr, Leibniz, Ged Byrne, BACbKA, EmilJ, Kgaughan, Whosyourjudas, Suruena, Linas, Lost.goblin, Daira Hopwood, Ruud Koot,
Qwertyus, Rjwilmsi, Ligulem, Jameshsher, RobyWayne, Quuxplusone, BMF81, RussBot, Arado, CarlHewitt, Jpbowen, LodeRunner,
Mig21bp, Nikkimaria, Cedar101, Black-Velvet, JLaTondre, Dpotop, SmackBot, Pintman, Betacommand, Letdorf, Nbarth, Allan McInnes,
Leland McInnes, JustAnotherJoe, MichaelBillington, Physis, Krauss, Thijs!bot, West Brom 4ever, JustAGal, YSolik, The Transhumanist, Bencherlite, Ourarash, Stijn Vermeeren, Gwern, STBot, R'n'B, Rimwolf, Outmind~enwiki, Gwizard, Ivan tambuk, SummerWithMorons, Shaiguitar, Thehelpfulone, Addbot, DOI bot, LaaknorBot, Lightbot, Legobot, Luckas-bot, Yobot, AnomieBOT, Citation bot,
395
Xqbot, Damienivan, Aclassier, Citation bot 1, Vasywriter, Tom.Reding, Cathy Richards, Yeng-Wang-Yeh, JonathanMayUK, JamieHanlon, WikitanvirBot, ZroBot, H3llBot, Igrigorik, Antiguru, Phil30129, KartikSinghal, Helpful Pixie Bot, BG19bot, Webclient101, Loyso
b, Nclridd, Jgrodziski, Monkbot, Vaskir and Anonymous: 83
Communication Source: https://en.wikipedia.org/wiki/Communication?oldid=738165102 Contributors: Stephen Gilbert, Ap, Ed Poor,
Andre Engels, Little guru, William Avery, SimonP, DavidLevinson, AdamRetchless, Mjb, Patrick, Michael Hardy, Alodyne, Lexor,
Gdarin, Vera Cruz, Kku, Gabbe, Ixfd64, Lquilter, Alo, Mdebets, Ahoerstemeier, J-Wiki, CatherineMunro, BigFatBuddha, Salsa Shark,
T3knomanser, Glenn, Marteau, Andres, Qwert, Ghewgill, Smack, RickK, Ww, Randyc~enwiki, WhisperToMe, Samsara, Vinay Varma,
Leonariso, Alexina, Jeq, Carlossuarez46, Chuunen Baka, Robbot, R3m0t, Altenmann, Richardpitt, Securiger, Rholton, Meelar, Andrew
Levine, Doidimais Brasil, Hadal, Wereon, Michael Snow, Dhodges, Ruakh, Tea2min, Alan Liefting, Ancheta Wis, Dominick, Giftlite,
Christopher Parham, Mintleaf~enwiki, Adasi~enwiki, Kenny sh, Zigger, Adamk, Emuzesto~enwiki, NeoJustin, Bensaccount, Borisgloger,
Malyctenar, Piman, Steve-o~enwiki, SWAdair, Edcolins, Christopherlin, ALargeElk, Peter Ellis, Chowbok, Gadum, Utcursch, Andycjp,
Antandrus, Beland, Piotrus, Kusunose, Khaosworks, Ot, MacGyverMagic, Zfr, Sam Hocevar, Karl Dickman, Bluemask, Zro, Mike Rosoft,
Brianjd, Jwdietrich2, Discospinster, Rich Farmbrough, Rhobite, Guanabot, Vsmith, Westendgirl, LindsayH, Mjpieters, Mani1, SpookyMulder, Edgarde, Bender235, ESkog, ZeroOne, Fronz, S.K., Slokunshialgo, Violetriga, CanisRufus, El C, Rgdboer, Shanes, Bookofjude,
Adambro, Bobo192, Chapium, DJ Ecto, Smalljim, Shenme, Maurreen, Nk, Thewayforward, Sam Korn, Haham hanuka, Nsaa, Mdd,
Orangemarlin, Ranveig, Zachlipton, Red Winged Duck, Alansohn, Jhertel, Arthena, Keenan Pepper, Riana, Steele~enwiki, Hu, Velella,
RainbowOfLight, Sciurin, Shoey, Bsadowski1, Freyr, Versageek, KTC, Phi beta, Jorray, RHaworth, Camw, LOL, Ikescs, Ruud Koot,
WadeSimMiser, Chochopk, Tabletop, Firien, Wikiklrsc, Peacefulvalley, Burkhard~enwiki, Macaddct1984, Waldir, DeweyQ, Dysepsion, Mandarax, RichardWeiss, Matilda, Graham87, BD2412, Zoz, Mendaliv, Phillipedison1891, Josh Parris, Sj, Sjakkalle, Rjwilmsi,
Mayumashu, Angusmclellan, Erebus555, Chsf, Vegaswikian, Lendorien, Tintazul, The wub, Kyle.Mullaney, Old Moonraker, Musical
Linguist, Rgathercoal, Doc glasgow, Margosbot~enwiki, HurriSbezu, Nivix, AJR, RexNL, Ewlyahoocom, Gurch, Otets, Jrtayloriv, AndriuZ, Quuxplusone, Swtpc6800, Srleer, Chobot, DVdm, Guliolopez, John Dalton, Bgwhite, Cactus.man, EWignall, Gwernol, YurikBot, Wavelength, Mukkakukaku, Phantomsteve, RussBot, Petiatil, J. M., Splash, Epolk, RadioFan2 (usurped), Stephenb, Shell Kinney,
Gaius Cornelius, Shaddack, Rsrikanth05, Pseudomonas, NawlinWiki, Lemon-s, Bachrach44, Janke, Grafen, Cquan, TheSwami, Anetode,
Moe Epsilon, Stevenwmccrary58, Misza13, PM Poon, Chichui, Zagalejo, Tkinkhorst, DeadEyeArrow, Everyguy, Botteville, Wknight94,
Pooryorick~enwiki, Pap3rinik, Boivie, Tigershrike, Theodolite, Cbogart2, Closedmouth, E Wing, KGasso, Pietdesomere, Josh3580, SMcCandlish, Pablo2garcia~enwiki, JoanneB, Fram, Anclation~enwiki, Willtron, Allens, Kungfuadam, Carlosguitar, SmackBot, MattieTK,
Aneeshnj, YellowMonkey, Erictj, Reedy, Prodego, Hydrogen Iodide, Mscuthbert, Rojomoke, Hardyplants, Cessator, Took, Fentonrobb,
HalfShadow, Gilliam, Skizzik, Carl.bunderson, Frdrick Lacasse, Cowman109, Chris the speller, Master Jay, Oli Filth, Tree Biting Conspiracy, Roscelese, SchftyThree, Akanemoto, Dlohcierekims sock, Imacdo, Nbarth, KingAlanI, Hallenrm, Gracenotes, Dethme0w, Can't
sleep, clown will eat me, Klacquement, Tracy2642000, Death2, Rrburke, Addshore, Midnightcomm, Mr.Z-man, SundarBot, Mayooresan,
Jaimie Henry, Nakon, Jiddisch~enwiki, Hoof Hearted, Perry8331, RandomP, Geor, Samato, MartinRe, Luigi III, Lcarscad, Wisco, KeithB, Sigma 7, Mschevrolet, Byelf2007, Runa27, Tydus Arandor, Hanasato, Srikeit, Kuru, KarmGrigoryan, Scientizzle, Mc nikki b, Rtybgh,
Gobonobo, JohnI, Robosh, JorisvS, Mgiganteus1, Feraudyh, IronGargoyle, Voceditenore, 16@r, JHunterJ, Slakr, Rafaleaz, SQGibbon,
Mr Stephen, Skishoo2, Dicklyon, Achilleshart, Jon186, Optakeover, SandyGeorgia, Spiel496, Dhp1080, Ryulong, Citicat, EEPROM Eagle, Nvpatentlawyer, Jose77, Varuag doos, Xionbox, Autonova, Quaeler, Levineps, BranStark, Iridescent, Shoeofdeath, Turbokoala, Gorillazfeelgoodinc, Igoldste, CapitalR, Guest0495, Courcelles, Bottesini, Tawkerbot2, George100, RockinRob, SkyWalker, JForget, CmdrObot, Escaper7, Porterjoh, Martins.Dzelde, Zarex, Unionhawk, Tensionjt, GHe, Kaune, Noel.Dietrich, AshLin, ShelfSkewed, Iokseng,
Kemrin, Bobnorwal, Gregbard, Funnyfarmofdoom, Warp9wb, Slazenger, Mike2000~enwiki, Meno25, Gogo Dodo, Flowerpotman, ST47,
Chasingsol, Julian Mendez, Skittleys, Cbaxter1, SymlynX, Tawkerbot4, Doug Weller, AndersFeder, DumbBOT, Bookgrrl, NaLalina, Lee,
Kozuch, Xantharius, Omicronpersei8, Lo2u, Nfslpu, Satori Son, FrancoGG, Letranova, Epbr123, Doct.proloy, Qwyrxian, TonyTheTiger,
Greg hill, HappyInGeneral, Andyjsmith, Marek69, John254, Bobblehead, Maximilian Schnherr, Tellyaddict, BauerPower, Pkapitola, Siggis, Escarbot, Mentisto, Porqin, AntiVandalBot, BokicaK, Luna Santin, Seaphoto, CZmarlin, Goodmansasha, Antique Rose, Expligatory,
DeepJR, Smartse, Jacqke, Alexthurleyratcli, Dylan Lake, PseudoChron, Jenny Wong, Jaredroberts, MikeLynch, JAnDbot, DuncanHill,
MER-C, The Transhumanist, JonBernstein, Charanhere, Acroterion, Rose455, Pablothegreat85, Freedomlinux, .snoopy., Hayduke lives,
Bongwarrior, VoABot II, Usereed, JamesBWatson, D1doherty, Autie 808, Swpb, Ling.Nut, Bwhack, I JethroBT, Champvirgomartin, Animum, Cgingold, Ciaccona, Hazukisan, Cpl Syx, Spellmaster, Vssun, DerHexer, JaGa, Edward321, Khalid Mahmood, Oicumayberight,
0612, MartinBot, Yrrah, Management Culture, Rettetast, CommonsDelinker, AlexiusHoratius, Jarhed, EdBever, Mausy5043, Erkan Yilmaz, J.delanoy, Pharaoh of the Wizards, Trusilver, Petreg, Adavidb, Hanteng, Silverxxx, Wtimrock, MistyMorn, Maurice Carbonaro, Extransit, Amanda Renee, Cdamama, Athalia~enwiki, Joe fob, Aqwis, Elkost, Katalaveno, Allanhgilbertson, McSly, Bryantnorland, Lovely seungmi, Brolsma, Babochka18, Gemena, The Transhumanist (AWB), NewEnglandYankee, Arun0070, Johnabolarin, Jorfer, EyeRmonkey,
Cometstyles, Warlordwolf, Treisijs, Sjwk, Kvdveer, Pdcook, Ja 62, Inwind, S (usurped also), DASonnenfeld, KGV, Funandtrvl, Black Kite,
Deor, VolkovBot, Je G., MaxwellBliss, Nburden, Tomer T, Aesopos, Philip Trueman, Tcaruso2, TXiKiBoT, AllanManangan, Yupi666,
Anne1024, NPrice, Anonymous Dissident, Nl74, GcSwRhIc, Qxz, Anna Lincoln, Brainresearch, Corvus cornix, Don4of4, C7796E2C,
DieBuche, Butterscotch, Andy Dingley, Lova Falk, Chuthuy20262, Enviroboy, Xsamanthaxwoodsx, Cnilep, Brianga, Rlanigan, DennisRivers, Raenico, Kalivd, Irishdunn, FlyingLeopard2014, Anon The Nitpicker, EJF, SieBot, John.n-irl, Danielden, Jauerback, Fantastic fred, Dawn Bard, Viskonsas, RJaguar3, Triwbe, Lucasbfrbot, Yintan, Keilana, Hebisddave, Bentogoa, Breawycker, Flyer22 Reborn,
MaynardClark, Oda Mari, JetLover, SPACKlick, Yerpo, Wombatcat, Tmorin, Sbowers3, Ayudante, Doctoruy, Oxymoron83, OKBot,
Nancy, Svick, Reneeholle, Capitalismojo, WikiLaurent, Aalucas, Asikhi, Denisarona, Sasha Callahan, Linforest, Atif.t2, Loren.wilton,
Martarius, ClueBot, Thedosmann, Avenged Eightfold, GorillaWarfare, Snigbrook, The Thing That Should Not Be, EoGuy, Shujaat Ali
Rahi, Jacob F. Roecker, Lawrence Cohen, PrometheusArisen, Gaia Octavia Agrippa, Tanglewood4, Frogys4me, Bradka, Uncle Milty,
Niceguyedc, Ictlecturer, Arunsingh16, Auntof6, Excirial, Alexbot, Mynameisnotpj, Jusdafax, Pablo.paz, Designanddraft, Ameher, Vanisheduser12345, Children.of.the.Kron, Vivio Testarossa, Henninb, Lartoven, ParisianBlade, Arjayay, Hans Adler, , S19991002,
Aleksd, Humdhan, Unmerklich, Andrewlau1022, Aitias, 7, Ranjithsutari, JDPhD, Versus22, Lambtron, Doriftu, MelonBot, Meske, SoxBot
III, Vanished user uih38riiw4hjlsd, Tanya.Christine, XLinkBot, Pichpich, Gnowor, Jebylicious, Samira19, Oldekop, Bmbenson2, JewerlyGirl18, Stickee, Kebell2, Samwise1, Valeva, Jovianeye, Rror, Dthomsen8, Feinoha, Svgalbertian, XDouglas, Mitch Ames, Dr sign,
WikHead, Mischievousmaddy, PL290, Frood, Alexius08, Noctibus, Vianello, Chinese language is the bubonic plague, Addbot, Jomackiewicz, Manuel Trujillo Berges, Liefjes, Some jerk on the Internet, Imark 02, Fgnievinski, Blethering Scot, Ronhjones, Fieldday-sunday,
Moosehadley, Ynaztiw, Fluernutter, Ccnc, MrOllie, Download, CarsracBot, Facilitation Author, 5 albert square, Tassedethe, Numbo3bot, Tide rolls, OlEnglish, Krano, Luckas Blade, Gail, MuZemike, Jarble, -, Albeiror24, Legobot, Luckas-bot, Postalprimesmock,
Yobot, Senator Palpatine, Fraggle81, TaBOT-zerem, Thescimitar, AmaraBot, Timir Saxa, Eric-Wester, Tempodivalse, SD93981, Rpf 81,
AnomieBOT, Quangbao, Hairhorn, Rubinbot, ThaddeusB, Sonia, Jim1138, IRP, Galoubet, Piano non troppo, AdjustShift, Drdac, Kingpin13, Justme89, NickK, Flewis, Materialscientist, ArdWar, Citation bot, Nifky?, LilHelpa, MauritsBot, Xqbot, Brown tabel, Sketchmoose,
396
Sionus, Khodeirmas229, Melmann, JimVC3, Capricorn42, Mankapr, Wingroad2, Meewam, Millahnna, Nasnema, Batesmas214, Venkaat,
Ched, GrandKokla, MiniBill, Anna Frodesiak, Wazofski, Dr Oldekop, Cat1project, Tdjewell, Frosted14, Omnipaedista, Charismatic
Verma, Frankie0607, Brandon5485, Simon321, Saalstin, JasonSWrench, Spiderwriter, Shadowjams, Amitkhullar, Grinofwales, Altraul,
Nywici, Fingerz, FrescoBot, Mshuda, Voxii, Fortdj33, Rmcnabb91, Sky Attacker, Wgpers, Webknguyen, Hiapale21, Comm&emotion,
Rnagar4, Jamesooders, Cinomancaca, DivineAlpha, Intelligentsium, MacMed, Pinethicket, I dream of horses, Rokaszil, Abductive, Invision2020, D(r)ead End, MJ94, Hellknowz, JuliaBaxter51, AnandaDaldal, Calint, RedBot, Ania Lian, Ezhuttukari, Madameoctopus, Boolsyet, Jandalhandler, Fumitol, Crimanats3, Dude1818, PSY7, Ceecee1212, FoxBot, Thrissel, TobeBot, Schmiggidy, Train2104, Antara
singhania, Exagon, Fox Wilson, Dinamik-bot, Vrenator, UNIT A4B1, LilyKitty, Joey1978, Vancouver Outlaw, ArielForeman, Amirsmile,
Arsmanimegalai, Paralympiakos, Sivakumar.sachin, Reaper Eternal, Diannaa, Dmkolobov, Suusion of Yellow, Jd Tendril, Tbhotch,
Csmithslca, DARTH SIDIOUS 2, Obankston, Chy1991, Im-tha-one, Onel5969, Mean as custard, Stj6, RjwilmsiBot, Coast123, Ripchip
Bot, Slice637636, Regancy42, Noommos, Rlholden, Yash k bhatt, Knoweco, Skamecrazy123, Idea101, DASHBot, Gloomofdom, Esoglou,
EmausBot, John of Reading, Yuhter, WikitanvirBot, Jnsdfbjisdfbjsfdjnsfd, Spamerman, Racerx11, Faolin42, GoingBatty, ShilpaSV,
ShakeeraDMyers, Mylaramkrishna, L235, Klbrain, Teerickson, Forestn101, Solarra, Encilee, Tommy2010, Sillybillypiggy, Wikipelli,
K6ka, Sanghera2685281, AsceticRose, Erpert, Savh, Evanh2008, Prayerfortheworld, Daonguyen95, F, Josve05a, Traxs7, rico, Lateg,
Jeyda007, Szalakta, The Nut, Matthewcgirling, Alpha Quadrant (alt), Cobaltcigs, Pingu.dbl96, Monterey Bay, Gz33, Ocaasi, Tolly4bolly,
RaptureBot, Tridibbhowmik, Thine Antique Pen, Architect21c, L Kensington, Donner60, Funnymind, Pun, Rathen69185, Orange
Suede Sofa, Wakebrdkid, Musicguy24, Krbibin, Ortmana, Sven Manguard, DASHBotAV, Ltaylor20, 28bot, Rocketrod1960, Cgt, Xanchester, Gjholt, ClueBot NG, Gowtamrajk, Gareth Grith-Jones, Jack Greenmaven, Change67, MelbourneStar, This lousy T-shirt, Satellizer, Jenova20, CloveWiki, Jasperspeicher, Rainstarlight, Snotbot, Theboymusic, Cntras, BabyGirlCourtney, Braincricket, O.Koslowski,
ScottSteiner, Widr, Antiqueight, C63205, Stomasz71, Vibhijain, Ashokrajaballa, North Atlanticist Usonian, Iopsycho, Magallon17, Helpful Pixie Bot, Irrc irri, Ratman2000, Rablanken, Bachelorcourse, Calabe1992, Bobbyshabangu, Tylerbesh, WNYY98, Anu.gnath, Lowercase sigmabot, Kmalekian, BG19bot, Vectevs, Hz.tiang, Wiki13, MusikAnimal, JasonPLK, Ronkays, Zachzab, Mark Arsten, AdventurousSquirrel, Anittisathiaraj, Pravincumar pek, Jgatti09, Altar, Mahen1201, Kammit102, N.manoraj, Balivernes, Dhamal07, Gobler18,
Mohamedadeed, Tanuruya Roy, Sonal6578, EditorRob, Iksar babes, Snow Blizzard, MrBill3, Ahmek001, Marjoleinkl, Awanishbvi, P
diggle, Ammarkhan05693, Klilidiplomus, Rapaddhu, Angelakanksha, Bells2012, Ace001TheBoss999, KGun10, Fylbecatulous, Several
Pending, Liam987, Pratyya Ghosh, Mrt3366, ChrisGualtieri, Gdfusion, EuroCarGT, Devenpro, RogerBryenton, Sarasapo, EagerToddler39, Webclient101, Mogism, Sundeep k lal, Saehry, Wallybblue, TwoTwoHello, Frosty, Graphium, Syum90, Ferniewernie, Corn
cheese, Telfordbuck, TANWIR HASSAN, Jituparida, AVlonely, Tami Allen, Faizan, Avwezel, Epicgenius, OverMyJob, Dddege, LogertGilby, Zalunardo8, BreakfastJr, Tentinator, Kogmaw, GingerGeek, Avatto123, Yankeesfan1234, Cherubinirules, Penperson, Lilythamzil,
Basilu, Taniquab2014, Babitaarora, Haminoon, Arpitmaurya, JoshuaChen, Ugog Nizdast, JustBerry, Giematt, Ginsuloft, Civiello m, Someone not using his real name, Sam Sailor, Jianhui67, Werddemer, Javiergustav, Chrissuba2013, Sereiakata, DannyFangles, Mallywazhere,
Dude200116, Vhiggs1, JaconaFrere, Kylo Ren, Csutric, TuxLibNit, Bobvancleef38, AKS.9955, Proudcommunist111111, Fauziya Muhammad, Mk bataiya, Znorth0818, Jim Carter, IvanZhilin, Berlinlasers, Morrisonann, Molhv, William Tlberg, Raymondlay, KBH96, KurodaSho, Radueno, KH-1, KatBerg52, Dwikicowan, Crystallizedcarbon, Ryanhw, WikiTechPresentation, Termaric, Tymon.r, Explicit re,
Ismailzabee92, Ss9704895, Lalith269, Syam prathipati, Gibralter123, Venkatesh doli, Rageetha, Fuebaey, Nicolecheek17, Gragarian,
Mediavalia, Bottlesd, Eugene Wood, Shakfastlink, NewAtSchool, PAULFERNZ, Jnm230, Natalie.Desautels, Culturalresearch, Silvermoney1963, KasparBot, Steve12040234, Donnerclan, Sweepy, Srednuas Lenoroc, Lathay, Anindyaneog, Vadivelu.vadi, Vidyabaskar,
Joeljoseph77, Sarithashankar, ParamedicDave, Mkamitkm, Adharris09, Iblue143, JumpiMaus, Tablelooksgood, Zeeshan 93, Lgracedwiki,
Timothy.kuhn, Rylee Wznick, Jessa.lusby, Garylee0210, Marianna251, Manto17, Ustudent29, Space Titans, Anwesha Sabat, Nokutenda
Chimbetete, TradCult, Sachinen, MeowMoon, Nikoby Andrews, Swetab and Anonymous: 1796
Communications protocol Source: https://en.wikipedia.org/wiki/Communications_protocol?oldid=736938855 Contributors: Damian
Yerrick, The Anome, Rjstott, Amillar, Aldie, Matusz, SimonP, Hannes Hirzel, B4hand, Youandme, Edward, Michael Hardy, Nixdorf,
Kku, MichaelJanich, Ahoerstemeier, Snoyes, Darkwind, Glenn, Tristanb, BAxelrod, Mxn, Conti, Hashar, Mulad, Guaka, Ciampix, WhisperToMe, Jnc, Topbanana, Bloodshedder, Chuunen Baka, Robbot, RedWolf, Mushroom, Takanoha, ShaunMacPherson, Thierryc, Rick
Block, Niteowlneils, Yekrats, Elmindreda, Tagishsimon, Regin LARSEN~enwiki, Beland, Maximaximax, Zondor, Jennypei, Mormegil,
Freakofnurture, JTN, Discospinster, Rich Farmbrough, Bert490, Skarg, Vsmith, Ardonik, Chowells, Byrial, Dyl, Bender235, S.K., Mwanner, Kyz, Bobo192, Smalljim, Enric Naval, Polluks, Jumbuck, Andrewpmk, BodyTag, Velella, Wtshymanski, Rick Sidwell, Lerdsuwa,
Graham87, BD2412, Kbdank71, Lockley, RexNL, BjKa, Kri, Vonkje, DVdm, Whosasking, The Rambling Man, Wavelength, Hairy Dude,
Undsoft~enwiki, RussBot, Pi Delport, David Woodward, Yyy, Wiki alf, Bodachi, Leptictidium, Denisutku, Oakwood, JLaTondre, Mike
Gale, BonsaiViking, SmackBot, Jphastings, KnowledgeOfSelf, Unyoyega, Matthuxtable, Gilliam, Oscarthecat, Kevinalewis, Chris the
speller, JEG, Can't sleep, clown will eat me, Allan McInnes, Radagast83, Clean Copy, Charivari, SashatoBot, Ferryca, Robosh, 16@r,
Kvng, Levineps, ManixPC, Pegasus1138, CapitalR, Zipz0p, Fumblebruschi, Nczempin, Pgr94, Phatom87, Cydebot, Kanags, Romangs,
Christian75, Neustradamus, Thijs!bot, Jacen6788, Escarbot, AntiVandalBot, Alphachimpbot, JAnDbot, Harryzilber, Bhamv, MER-C,
ElComandanteChe, Swpb, Helland, Flowanda, Jim.henderson, Anaxial, R'n'B, J.delanoy, Mange01, Samtheboy, IlyaKorolev, MischaO,
X!, Philip Trueman, Oshwah, Moogwrench, GroveGuy, Una Smith, Leafyplant, Cremepu222, Billinghurst, Riick, Kbrose, SieBot, Smsarmad, Flyer22 Reborn, Ngrieth, ClueBot, EoGuy, Mild Bill Hiccup, Niceguyedc, Liempt, DragonBot, Takeaway, Alejandrocaro35,
Ykhwong, Jotterbot, Dekisugi, Ltsampros, Vegetator, Bobjim.hunter, Johnuniq, Moazami~enwiki, Good Olfactory, RyanCross, Dsimic,
Addbot, Jncraton, CanadianLinuxUser, Brainmachine, Zorrobot, Yobot, Hwardsil, TaBOT-zerem, Calle, AnomieBOT, Bctwriter, Materialscientist, Aneah, Eumolpo, ArthurBot, LilHelpa, Brian2wood, Xqbot, TheAMmollusc, Intelati, GenQuest, Gensanders, PlaysWithLife,
Oyvind.misje, Miym, Alvin Seville, Smallman12q, Eugene-elgato, PPecheux, GliderMaven, FrescoBot, Nageh, Eddie Nixon, RedBot, Sonja
Connell, Sachipra, Vrenator, Suusion of Yellow, Mean as custard, EmausBot, John of Reading, Dewritech, Dcirovic, K6ka, Daonguyen95,
Alpha Quadrant (alt), Amar.prksh, AManWithNoPlan, Salsal99, Pillaidee, Coasterlover1994, Dairyintheillawarra, Donner60, Orange
Suede Sofa, BioPupil, Jsoon eu, Rememberway, ClueBot NG, Heavenlyhash, Zynwyx, Widr, Joe102283, MerlIwBot, Helpful Pixie Bot,
Helmsjs, Wbm1058, KLBot2, BG19bot, Tirupur123451, Petruss, Mrpeterobrien, Tanmay Patange, Javlonson, Klilidiplomus, Ncphillips,
Tech77, Dexbot, Cbw yeuy, Lugia2453, Acharya 87, , Lankrist, Zsoftua, ArmbrustBot, Stevethornbury, Jonmax74,
JWNoctis, Juhuyuta, Fwolters, CryptcWriter, Abc 123 def 456, Trax support, Haosjaboeces, Samil Mahapatra, ChamithN, 96aman96,
Crystallizedcarbon, Cherdchai Iamwongsrikul, Warrinerd, AjayKumarShrestha, Jdcomix, Wikispoiler01, KasparBot, Jipdaskip gurugaint,
JackeyDee and Anonymous: 273
Communications system Source: https://en.wikipedia.org/wiki/Communications_system?oldid=735682970 Contributors: Timo
Honkasalo, Imran, GTBacchus, Reddi, Giftlite, Kevin Rector, Eep, Dave souza, Keno, Mdd, Arthena, Scott5114, Youngamerican, Srleer, Jpbowen, Deville, Katieh5584, Trickstar, SmackBot, Kvng, Eastlaw, Harryzilber, Jim.henderson, Uncle Dick, NewEnglandYankee,
GrahamHardy, DoorsAjar, Oshwah, Botev, Sasha Callahan, ClueBot, The Thing That Should Not Be, Mild Bill Hiccup, CounterVandalismBot, Niceguyedc, Brews ohare, Tyler, BOTarate, Addbot, Yobot, Wikipedian2, SwisterTwister, RedBot, Primefac, Dcirovic, K6ka,
397
Vanished user jw983kjaslkekfhj45, ClueBot NG, Cobanyastigi, Chenspec, Sathya dyan, Chris.rider81, Frosty, Phamnhatkhanh, Faizan,
SJ Defender, CogitoErgoSum14 and Anonymous: 50
Compiler Source: https://en.wikipedia.org/wiki/Compiler?oldid=737263192 Contributors: Derek Ross, CYD, Andre Engels, Khendon,
Hari, Enchanter, PierreAbbat, Fubar Obfusco, Imran, Vkuncak, R Lowry, Atlan, Mrwojo, K.lee, RTC, Michael Hardy, Llywrch, Fred
Bauder, Norm, Tenbaset, TakuyaMurata, Mbessey, Minesweeper, Looxix~enwiki, Stan Shebs, Mac, Nanshu, CatherineMunro, Ijon, Glenn,
Smay, Mxn, Dwo, Emperorbma, CooYip~enwiki, Dcoetzee, Dysprosia, Jay, Doradus, Espertus, ThomasStrohmann~enwiki, Furrykef,
Wernher, Bevo, Raul654, Mariuz, Robbot, Murray Langton, Jwpurple, Hobbes~enwiki, RedWolf, Chocolateboy, Hubertus~enwiki, Babbage, Rfc1394, Iain.mcclatchie, Dina, Tea2min, Ancheta Wis, Giftlite, DavidCary, Scarroll, Haeleth, Holizz, Wolfkeeper, Kenny sh,
Bluetulip, VampWillow, Bobblewik, Edcolins, Neilc, Hereticam, Knutux, APH, Szajd, Joakim~enwiki, SamSim, Buraq~enwiki, Sonett72,
Muijz, Andreas Kaufmann, Abdull, Grunt, Corti, Mike Rosoft, D6, Mormegil, Imroy, Shipmaster, Jkl, Rich Farmbrough, Leibniz, Cacycle, Jpk, Lemontea, Alistair1978, DcoetzeeBot~enwiki, Bender235, ESkog, BACbKA, Project2501a, CanisRufus, BEDEWIN, Surachit,
Richard W.M. Jones, Sietse Snel, Deanos, Drhex, Kissall~enwiki, R. S. Shaw, Unquietwiki, Jung dalglish, Yonkie, Nich148 9, James Foster,
Obradovic Goran, Sam Korn, BlueNovember, Hooperbloob, Glaucus, Ociallyover, Jumbuck, Michael Dring, Liao, Interiot, Diego Moya,
Atanamir, BRW, Nex O-Slash, Suruena, Tony Sidaway, RainbowOfLight, Culix, Reaverdrop, SteinbDJ, TheCoee, Bookandcoee, Y0u,
Simetrical, LrdChaos, Daira Hopwood, StradivariusTV, Jonathan de Boyne Pollard, Rchrd, Paul Mackay~enwiki, Ruud Koot, Wikiklrsc,
Christopher Thomas, Marudubshinki, Yoric~enwiki, Graham87, 169, Qwertyus, Kbdank71, Rjwilmsi, Pasky, Ligulem, LjL, Graibeard,
Mkehrt, FlaBot, Moskvax, SchuminWeb, Akihabara, Mathbot, EmielMols, RexNL, Gurch, Quuxplusone, BMF81, Chobot, DVdm, YurikBot, Wavelength, X42bn6, Mukkakukaku, Daverocks, RussBot, Fabartus, Hydrargyrum, NawlinWiki, Thalter, Jpbowen, Natkeeran,
WMarsh, Brat32, Stainless steel, Zzuuzz, Lt-wiki-bot, Closedmouth, KGasso, Th1rt3en, JLaTondre, Rwwww, GrinBot~enwiki, SmackBot,
Matt73, Incnis Mrsi, TestPilot, FlashSheridan, Mgreenbe, BiT, Vizzer, Gilliam, Hmains, Skizzik, Parrothead1983, Thumperward, Xx236,
Nbarth, Javalenok, Detter, Rrelf, Jonatan Swift, Rene Mas, JonHarder, Radagast83, Charles Merriam, Jiddisch~enwiki, Tompsci, AlyM,
Maximum bobby, Phoenix314, Jna runn, Theme97, Derek farn, Axem Titanium, MisterPhyrePhox, Nharipra, Michael miceli, Edwindreillyjr, 16@r, Deepak D'Souza, Encryptio, Hans Bauer, Dreftymac, Doramjan, Avhohlov, Pattermeister, Raysonho, Makeemlighter,
IntrigueBlue, Napi, Pgr94, Cydebot, Daio~enwiki, Peterdjones, Neo85~enwiki, Vanished user vjhsduheuiui4t5hjri, Indeterminate, Rhe br,
Tawkerbot4, Christian75, Thijs!bot, Epbr123, Pjvpjv, DmitTrix, Luna Santin, Prolog, NSH001, Raw nerve, Spencer, Deadbeef, JAnDbot,
MER-C, Jens Troeger, LittleOldMe, Bongwarrior, Khaled hosny, Rajb245, TARBOT, Tedickey, Schily, Indon, Dcstimm, LorenzoB, JaGa,
Mdg149, Gwern, MartinBot, Motley Crue Rocks, KingDoorknob, Tgeairn, J.delanoy, Hans Dunkelberg, Brest, Yonidebot, Wjaguar, Ansmo, General Disarray (usurped), Lee.crabtree, AntiSpamBot, Raise exception, Wbrito, Pdcook, Captain Wingo, Reelrt, Tedoja, VolkovBot,
Ryan032, TXiKiBoT, BenLTitzer, Gregsinclair, CanOfWorms, LeaveSleaves, VanishedUserABC, Dmcq, Sources said, The Mysterious
Gamer, Trescott2000, SieBot, Spadge47, Holme215, Jerryobject, Pi is 3.14159, WRK, Quest for Truth, Faradayplank, Damdemi, Andrij Kursetsky, Fishnet37222, WimdeValk, OSP Editor, Loren.wilton, Martarius, ClueBot, Excirial, Pumpmeup, M4gnum0n, Alfa.walsh,
Jotterbot, Nerylix, DanielPharos, Certes, Expertjohn, XLinkBot, Duncan, Dsimic, NjardarBot, Glane23, Tide rolls, Krano, Jarble, Arbitrarily0, Legobot, Luckas-bot, Yobot, Bunnyhop11, Ptbotgourou,
, AnomieBOT, 1exec1, Flewis, Materialscientist, Citation bot, Dorchard, ArthurBot, Xtremejames183, LilHelpa, The Firewall, MauritsBot, Xqbot, TheAMmollusc, TinucherianBot II, Ioopooi, Climber22,
Miym, RibotBOT, A Quest For Knowledge, Sunnylalit, Adrignola, Msjaiswal, GliderMaven, FrescoBot, Pinethicket, HRoestBot, Jonesey95, Tom.Reding, Kurtbeyer, Skyerise, December21st2012Freak, Jauhienij, Trappist the monk, , Bencz, RjwilmsiBot,
EmausBot, Grottenolm42, BillyPreset, Bgeron, Lseongjoo, Ida Shaw, Annish33, Rcorcs, Teapeat, Methree69, ClueBot NG, Matthiaspaul, Satellizer, Shareddreams, G0gogcsc300, Wbm1058, Nbudden, Jdsalat, FredT67, Reimei, Daveatwork11, Yadu123yadu, Badsaha,
Anbu121, Tutelary, RichardMills65, Horizons 2009, KATANAGOD, Cyberbot II, ReadyKnit, JHandrop, Steamerandy, Codename Lisa,
Mogism, Makecat-bot, Jochen Burghardt, Randykitty, Himanshu1205, FrigidNinja, Franois Robere, Orcanaria, DavidLeighEllis, Rajmani94, Buntybhai, Feipu123, Melody Lavender, My name is not dave, Manish181192, Dannyruthe, Inaaaa, Rajeev26, Kharnagy, Ghfwe,
KasparBot, Matanc1, Tito Uzodinma, YQuazi, Arslan Muhannad, GreenC bot, SirFredTheDead, Fmadd, Stefano.cherubin, AugustGC,
WoyWoy, Tenoverten and Anonymous: 386
Computer hardware Source: https://en.wikipedia.org/wiki/Computer_hardware?oldid=738084870 Contributors: Ronz, Agtx, Bearcat,
Jondel, Tea2min, Ukexpat, Xrchz, Discospinster, ArnoldReinhold, Bender235, Guy Harris, Wtmitchell, BD2412, Bruce1ee, DVdm, RussBot, Rsrikanth05, Geertivp, NawlinWiki, Jpbowen, Voidxor, David Biddulph, Rwwww, BenBurch, Yamaguchi , Gilliam, Octahedron80,
Nick Levine, Rrburke, Richard001, Kuru, Mike1901, Optakeover, Waggers, Sohebbasharat, NickW557, DumbBOT, Ebrahim, MasterNetHead, Magioladitis, Faizhaider, Tedickey, Thompson.matthew, Blacksqr, Jesant13, NewEnglandYankee, KylieTastic, Treisijs, Idioma-bot,
DoorsAjar, Technopat, Oxfordwang, BotKung, Andy Dingley, BloodDoll, Bentogoa, Flyer22 Reborn, Chaitanya bhima, Elassint, Frmorrison, Boing! said Zebedee, Takeaway, Resoru, Johnuniq, Jed 20012, Dthomsen8, Ost316, Addbot, Non-dropframe, CanadianLinuxUser,
LaaknorBot, Quercus solaris, Luckas Blade, Margin1522, Yobot, Kartano, Fraggle81, Rubinbot, Jim1138, Materialscientist, FrescoBot,
Pepper, Zilgs, Pinethicket, I dream of horses, Ftckyman, Serols, SchreyP, DixonDBot, Lotje, Jamietw, Tbhotch, Mean as custard, EmausBot, Super48paul, Dewritech, GoingBatty, Solarra, Ali.eblis1, Wikipelli, K6ka, FunkyCanute, Bollyje, Eeveeman, Bamyers99, Kilopi,
Junip~enwiki, ChuispastonBot, Senator2029, Rocketrod1960, Petrb, ClueBot NG, Peter James, JetBlast, Satellizer, Widr, Soulcedric,
HMSSolent, Wbm1058, DBigXray, Lowercase sigmabot, BG19bot, Brainhelljr, MKar, Northamerica1000, MusikAnimal, Fylbecatulous,
Tutelary, David.moreno72, Mikkytopfem, HueSatLum, Sathyasri, Teammm, Cyberbot II, BoxofPresents, EuroCarGT, Jethro B, Ducknish, Harsh 2580, Dexbot, FoCuSandLeArN, Cerabot~enwiki, TwoTwoHello, Numbermaniac, NAVEEN VENKAT, Zaldax, Frosty,
Jamesx12345, Sriharsh1234, Wywin, Anna1994~enwiki, Me, Myself, and I are Here, Reatlas, Jvpreethi, Dave Braunschweig, Simonstone1695, Theos Little Bot, Rui24114, PWNGWN, Melonkelon, Mario3D12, Sandshark23, DavidLeighEllis, Babitaarora, Melody Lavender, Dannyruthe, Sarahanne.1, Margcphelan, JaconaFrere, Sam Hollingsworth, Markoolio97, Shnuce, Miljan1994, Lagoset, Wwesam01,
Trackteur, Sccr4u69, JoeHebda, MonkeyWithGlasses44, Maritalaairuk, Amortias, NianFav, KH-1, ChamithN, Techyknowsbest, LittleMissRich, Kartikmittal1995, TeaLover1996, Gladamas, Kyleb8181, Mediavalia, BoxOfChickens, JStock89, Azealia911, Avinash2000,
KasparBot, Bakosjen, BBQ, De la Marck, Oluwa2Chainz, Leevan27, CLCStudent, Sogyals429, Gkeejoey, Emotionalllama, Ghimire Udip,
Elijah Phibben, Renanel Ben Or, Invisible Guy, Jipdaskip gurugaint, RinkeyDinkeyDo, Ushkin N, Yusrirahim, Virtualkiller13, Udhaya
ukumar and Anonymous: 257
Concurrent computing Source: https://en.wikipedia.org/wiki/Concurrent_computing?oldid=729209975 Contributors: Michael Hardy,
Pratyeka, Raul654, Phil Boswell, Aspenlogic, Bumm13, Rlcantwell, Deewiant, Ivansanchez, Lost.goblin, Ruud Koot, Toussaint, Qwertyus,
Rjwilmsi, Jameshsher, BMF81, YurikBot, Hairy Dude, Pseudomonas, CarlHewitt, Shinmawa, Cedar101, JLaTondre, SmackBot, Vald,
TimBentley, LinguistAtLarge, SIZIK, Droll, Nbarth, MovGP0, Javalenok, JonHarder, Allan McInnes, Jpaulm, JustAnotherJoe, Radagast83, Cybercobra, Rebooted, Fonebone, Aveitch, Antonielly, IronGargoyle, Jack Waugh, Iridescent, FatalError, CBM, SimenH, Torc2,
Oubiwann, Griba2010, Shardz, Maxaeran, Magioladitis, Fuchsias, Rhwawn, Kestasjk, Ormej, Gwern, STBot, EmilioB, Dindon~enwiki,
Simonscarfe, ParallelWolverine, Giardante, AHMartin, Eagleal, Sttaft, Jerryobject, JCLately, Anchor Link Bot, Cstb, Krogstadt, Adrianwn, Niceguyedc, M4gnum0n, Shaiguitar, XLinkBot, Addbot, Skillsmatter, Leszek Jaczuk, Jarble, Snaily, Yobot, Lublaese, 4th-otaku,
398
AnomieBOT, Citation bot, The.malkolm, Miym, FrescoBot, Citation bot 1, Maggyero, Akim Demaille, JamieHanlon, GoingBatty, Klbrain,
Taiga234, Ipsign, VinculumMan, Kejia, Helpful Pixie Bot, Wbm1058, Cth027, Kibwen, ChrisGualtieri, Vway, Dexbot, Damian.rouson,
DougBoost, Franois Robere, Captain Conundrum, Andfaulkner, Ivo Balbaert, Logan.dunbar, Monkbot, Nelsonkam, Paintrick, Izkala,
RyeTheCat and Anonymous: 90
Connection-oriented communication Source: https://en.wikipedia.org/wiki/Connection-oriented_communication?oldid=701499332
Contributors: Edward, Yrj Kari-Koskinen, Abdull, Rich Farmbrough, Sietse Snel, Spl, W33v1l, Caballero1967, Ataub2qf, SmackBot,
JonHarder, Radagast83, Malomeat, Kvng, Marcuscalabresus, Thijs!bot, Nrubdarb, Storkk, DuncanHill, Jim.henderson, Mange01, Kbrose,
Addbot, Graham.Fountain, Quintus.bal, AnomieBOT, LilHelpa, Jradix, Erik9bot, RedBot, Sricciar, Jesse V., Kawawa.chitiya, AvicAWB,
Jabourdette, MacStep, ClueBot NG, Pratyya Ghosh, Gvteja, Kenshibata, Someone not using his real name, Monkbot, Gsyadav1994 and
Anonymous: 28
Connectionless communication Source: https://en.wikipedia.org/wiki/Connectionless_communication?oldid=722190177 Contributors:
Tedernst, Michael Hardy, Pnm, MartinHarper, Radiojon, Giftlite, Frencheigh, Gary D, Kevin Rector, Abdull, AFool, RJHall, Sietse
Snel, Viriditas, Guy Harris, Woohookitty, Srleer, Zwobot, Rita.dos.santos~enwiki, SmackBot, JonHarder, Radagast83, VdHamer, Kvng,
Eastlaw, Marcuscalabresus, UncleBubba, Kgeischmann, STBot, R'n'B, Kbrose, Jerryobject, SchreiberBike, Graham.Fountain, Legobot,
Luckas-bot, Yobot, AnomieBOT, Serols, Solarra, Bingnet, CeylonBoy, Cpt Wise, CkXVb and Anonymous: 17
Data ow diagram Source: https://en.wikipedia.org/wiki/Data_flow_diagram?oldid=734131353 Contributors: Derek Ross, William Avery, Sfdan, Michael Hardy, Ahoerstemeier, Ronz, Nichtich~enwiki, Morven, Chealer, Hadal, Tea2min, Ancheta Wis, Giftlite, Tom harrison, Beta m, Jpkoester1, Slowking Man, Mike Rosoft, Just zis Guy, you know?, Theshowmecanuck, Bobo192, Shenme, MaxHund,
Pearle, Hooperbloob, Nsaa, Mdd, Interiot, HenkvD, Derbeth, RJFJR, Sciurin, Redvers, Ae-a, JeremyA, Paulho, Tangotango, Wooptoo, TheMidnighters, Who, ViriiK, TeaDrinker, Akhenaten0, Hibana, Jajis, Tas50, YurikBot, Albanaco, Wavelength, Phantomsteve, J.
M., Akamad, Stephenb, Polluxian, Rsrikanth05, Desundae, Jonathan Webley, Luks, Rushyo, Jwissick, Nothlit, Tom Du, NeilN, Attilios,
SmackBot, Fireman bi, Derek Andrews, Hydrogen Iodide, Melchoir, Aardvark92, AutumnSnow, Chairman S., Arsenaldc1988, Gilliam,
Betacommand, Ranglin, Elantrix, Master of Puppets, Dlohcierekims sock, EdgeOfEpsilon, Can't sleep, clown will eat me, Zvar, Allan
McInnes, Jpaulm, Fullstop, Turkystung, Louv, Defunkier, Alexcollins, Yaniss, Burt Harris, Antonielly, SpyMagician, Beetstra, Waggers,
Bnagra, Hu12, Fan-1967, Dead3y3, DEddy, Denistorres, JForget, Deon, Casper2k3, Cydebot, Paul Bassin, Rayray5884, After Midnight,
Omicronpersei8, Ashwanilabs, Pindakaas, Kubanczyk, Einsidler, Polymorph self, SoftwareDeveloper, AntiVandalBot, Seaphoto, Alone
Coder, Danger, Gkhan, Golgofrinchian, MER-C, Wasell, Akuyume, Casmith 789, VoABot II, JamesBWatson, Rich257, Jvhertum, Perrydegner, Martynas Patasius, Hi mostafa, ISpyFace, DancingPenguin, MartinBot, CommonsDelinker, Lilac Soul, Tgeairn, J.delanoy, Pharaoh
of the Wizards, Trusilver, Philosopher06, Terrek, Manutd 06, Mayeco, Bhanks, Edrawing, NewEnglandYankee, SJP, Danhof, KylieTastic,
STBotD, Mado eng, Meiskam, Aivosto, Ann Stouter, Someguy1221, Seb az86556, Falcon8765, Enviroboy, Perter Nokia, SieBot, BotMultichill, Harveydrone, SPACKlick, Pm master, Oxymoron83, Steven Crossin, Struway2, Denisarona, ClueBot, HowardBGolden, Naresh
ni, Uncle Milty, Ramif 47, Failure.exe, Excirial, Kjramesh, Abrech, NuclearWarfare, Michael.W.Meissner, Eternitybrkn, Dekisugi, Warrior4321, Stirrer, ChrisHodgesUK, SoxBot III, Saminathan25, XLinkBot, Evert r, Ivan Akira, Stickee, Hubew, Moptophaha, MystBot, Addbot, McastAccount, Tcncv, Thirteenangrymen, MrOllie, DataModeler, Quantumobserver, Yobot, Ptbotgourou, TaBOT-zerem, Eemme1,
Peter Flass, AnomieBOT, DemocraticLuntz, Jim1138, Piano non troppo, Flewis, Materialscientist, Prasanga1989, Gill2008, OlYeller21, B
Jana, Shadowjams,
, Georgelkf, Mark Renier, Sithbhavanandha, Wikisteve316, D.wade33, Stella2603, Camelo5399, Vince cater15,
Oneal32heat, Alongzal33, Jasonkid7, Rayalan10, I dream of horses, Abazgiri, Florendobe, Ms1244434, Gryllida, Monymirza, Yunshui,
Javierito92, Darp-a-parp, Ivanvector, Suusion of Yellow, Reach Out to the Truth, Gf uip, EmausBot, Orphan Wiki, WikitanvirBot,
Heracles31, Cossack5, Ndkl, GoingBatty, Trideceth12, ZweiOhren, Bamyers99, Wayne Slam, L Kensington, EdoBot, Abhishekitmbm,
ClueBot NG, Widr, Sombody1234, Sjs205, AhMedRMaaty, Unmeshsphalak, Jeetucse, Kushalbiswas777, Rajdada100, Wonderingcat768,
Eyesnore, Tentinator, Ginsuloft, EdvardHang, U2fanboi, RC711, Luzanbaral, KasparBot, MageshKumaar, SinghsarvjeetIT and Anonymous: 520
Data structure Source: https://en.wikipedia.org/wiki/Data_structure?oldid=736224045 Contributors: LC~enwiki, Ap, -- April, Andre
Engels, Karl E. V. Palmen, XJaM, Arvindn, Ghyll~enwiki, Michael Hardy, TakuyaMurata, Minesweeper, Ahoerstemeier, Nanshu, Kingturtle, Glenn, UserGoogol, Jiang, Edaelon, Nikola Smolenski, Dcoetzee, Chris Lundberg, Populus, Traroth, Mrje, Bearcat, Robbot,
Noldoaran, Craig Stuntz, Altenmann, Babbage, Mushroom, Seth Ilys, GreatWhiteNortherner, Tea2min, Giftlite, DavidCary, Esap, Jorge
Stol, Siroxo, Pgan002, Kjetil r, Lancekt, Jacob grace, Pale blue dot, Andreas Kaufmann, Corti, Wrp103, Bender235, MisterSheik,
Lycurgus, Shanes, Viriditas, Vortexrealm, Obradovic Goran, Helix84, Mdd, Jumbuck, Alansohn, Liao, Tablizer, Yamla, PaePae, ReyBrujo, Derbeth, Forderud, Mahanga, Bushytails, Mindmatrix, Carlette, Ruud Koot, Easyas12c, TreveX, Bluemoose, Abd, Palica, Mandarax, Yoric~enwiki, Qwertyus, Koavf, Ligulem, GeorgeBills, Husky, Margosbot~enwiki, Fragglet, RexNL, Fresheneesz, Butros, Chobot,
Tas50, Banaticus, YurikBot, RobotE, Hairy Dude, Pi Delport, Mipadi, Grafen, Dmoss, Tony1, Googl, Ripper234, Closedmouth, Vicarious, JLaTondre, GrinBot~enwiki, TuukkaH, SmackBot, Reedy, DCDuring, Thunderboltz, BurntSky, Gilliam, Ohnoitsjamie, EncMstr,
MalafayaBot, Nick Levine, Frap, Allan McInnes, Khukri, Ryan Roos, Sethwoodworth, Er Komandante, SashatoBot, Demicx, Soumyasch,
Antonielly, SpyMagician, Loadmaster, Noah Salzman, Mr Stephen, Alhoori, Sharcho, Caiaa, Iridescent, CRGreathouse, Ahy1, FinalMinuet, Requestion, Nnp, Peterdjones, GPhilip, Pascal.Tesson, Qwyrxian, MTA~enwiki, Thadius856, AntiVandalBot, Widefox, Seaphoto,
Jirka6, Dougher, Tom 99, Lanov, MER-C, Wikilolo, Wmbolle, Magioladitis, Rhwawn, Nyq, Wwmbes, David Eppstein, User A1, Cpl Syx,
Oicumayberight, Gwern, MasterRadius, Rettetast, Lithui, Sanjay742, Rrwright, Marcin Suwalczan, Jimmytharpe, Santhy, TXiKiBoT, Oshwah, Eve Hall, Vipinhari, Coldre82, BwDraco, Rozmichelle, Billinghurst, Falcon8765, Spinningspark, Spitre8520, Haiviet~enwiki,
SieBot, Caltas, Eurooppa~enwiki, Ham Pastrami, Jerryobject, Flyer22 Reborn, Jvs, Strife911, Ramkumaran7, Nskillen, DancingPhilosopher, Digisus, Tanvir Ahmmed, ClueBot, Spellsinger180, Justin W Smith, The Thing That Should Not Be, Rodhullandemu, Sundar sando,
Garyzx, Adrianwn, Abhishek.kumar.ak, Excirial, Alexbot, Erebus Morgaine, Arjayay, Morel, DumZiBoT, XLinkBot, Paushali, Pgallert,
Galzigler, Alexius08, MystBot, Dsimic, Jncraton, MrOllie, EconoPhysicist, Publichealthguru, Mdnahas, Tide rolls, , Teles, ,
Legobot, Luckas-bot, Yobot, Fraggle81, AnomieBOT, DemocraticLuntz, SteelPangolin, Jim1138, Kingpin13, Materialscientist, ArthurBot, Xqbot, Pur3r4ngelw, Miym, DAndC, RibotBOT, Shadowjams, Methcub, Prari, FrescoBot, Liridon, Mark Renier, Hypersonic12,
Maggyero, Rameshngbot, MertyWiki, Thompsonb24, Profvalente, FoxBot, Laureniu Dasclu, Lotje, Bharatshettybarkur, Tbhotch, Thinktdub, Kh31311, Vineetzone, Uriah123, DRAGON BOOSTER, EmausBot, Apoctyliptic, Dcirovic, Thecheesykid, ZroBot, MithrandirAgain, EdEColbert, IGeMiNix, Mentibot, BioPupil, MainFrame, Chandraguptamaurya, Rocketrod1960, Raveendra Lakpriya, Petrb, ClueBot NG, Aks1521, Widr, Danim, Jorgenev, Orzechowskid, Gmharhar, HMSSolent, Wbm1058, Walk&check, Panchobook, Richfaber,
SoniyaR, Yashykt, Cncmaster, Sallupandit, , Sgord512, Anderson, Vishnu0919, Varma rockzz, Frosty, Hernan mvs,
Forgot to put name, I am One of Many, Bereajan, Gauravxpress, Haeynzen, JaconaFrere, Gambhir.jagmeet, Richard Yin, Jrachiele, Guturu
Bhuvanamitra, TranquilHope, Iliazm, KasparBot, \wowzeryest\, ProprioMe OW, Ampsthatgoto11, Koerkra, SandeepGfG, Harvi004 and
Anonymous: 388
399
400
etse Snel, RoyBoy, Femto, Rpresser, Bobo192, Stesmo, Boelthorn, John Vandenberg, Cmdrjameson, R. S. Shaw, Unquietwiki, Mikel Ward,
Brutulf, Waltervulej, Charonn0, Bawol, Blinken, Pasousa~enwiki, Sleske, Minghong, Towel401, Obradovic Goran, Wrs1864, Sam Korn,
JesseHogan, Ekevu, Jumbuck, Samatva, Alansohn, Guy Harris, Arthena, CyberSkull, Synt4x, Riana, Sade, Lectonar, Wtmitchell, Velella,
Kdau, Cburnett, Stephan Leeds, Suruena, RJFJR, Henry W. Schmitt, W7KyzmJt, Pauli133, Btornado, Manivannan, Saxifrage, Sam Vimes,
Mindmatrix, Josephf, Niektory, Splintax, Robert K S, ^demon, Eyreland, Pasteler0, Prashanthns, Turnstep, Gerbrant, Marudubshinki,
RichardWeiss, Deltabeignet, Qwertyus, Edjackiel, Rjwilmsi, Demian12358, Koavf, KamasamaK, ElKevbo, Aapo Laitinen, Oo64eva,
FlaBot, Klausner, Windchaser, Spaceman85, Woozle, Ewlyahoocom, Gurch, Ghen, ChongDae, Magbatz, Fresheneesz, Carrionluggage,
GreyCat, David H Braun (1964), Chobot, TkGy, Prikryl, Mhking, Bgwhite, Martin Hinks, Gwernol, YurikBot, Borgx, Angus Lepper,
Logixoul, Arado, Me and, Robert A West, Gardar Rurak, RadioFan, Hydrargyrum, Akamad, Barefootguru, Wimt, NawlinWiki, BigCow,
Grafen, Hkdennis2k, Dugosz, Nick, Retired username, Yoasif, Mikeblas, O!, Natkeeran, Yozh~enwiki, Bota47, J. Nguyen, Saishg,
BazookaJoe, Rwxrwxrwx, ElectricSheep, EAderhold, Zzuuzz, Lt-wiki-bot, Closedmouth, Antini, Garion96, Allens, Cotoco, Shepard,
GrinBot~enwiki, AndrewWTaylor, SmackBot, Classiclms, Ulterior19802005, KAtremer, Herostratus, KnowledgeOfSelf, Praetor alpha,
KocjoBot~enwiki, EarthBoundX5, Mscuthbert, Alksub, Rojomoke, Pmkpmk, Jwestbrook, Gilliam, Skizzik, Chaojoker, Marc Kupper, Anwar saadat, Coinchon, Thom2002, Jprg1966, Thumperward, MalafayaBot, OrangeDog, Silly rabbit, Deli nk, Octahedron80, Letdorf, Metalim, DHN-bot~enwiki, JEG, Gracenotes, Newmanbe, Can't sleep, clown will eat me, ReferenceMan, Frap, Alphathon, DRahier, OSborn,
Rrburke, CorbinSimpson, Huon, Khoikhoi, DavidSol, NoIdeaNick, Ianmacm, Shadow1, Warren, Fagstein, Mwtoews, Henning Makholm,
Ihatetoregister, Antipode, Vina-iwbot~enwiki, GameKeeper, SashatoBot, Tecccher, Fred Foobar, Ksn, Breno, Shadowlynk, IronGargoyle,
Ben Moore, 16@r, Magicmat, Erwin, Ehheh, Optakeover, Waggers, Iridescent, Peter M Dodge, Sjb72, Beno1000, Shmget, Insanitor, IronJohnSr, Tawkerbot2, FatalError, HDCase, Allaunjsilverfox, Unionhawk, Triage, Bumcheekcity, Kgentryjr, Lazulilasher, MeekMark, Dan
Fuhry, Equendil, Hamster2.0, Phatom87, Cydebot, Wadkdc, UncleBubba, Anonymi, ST47, Rgrof, Doug Weller, DumbBOT, Chrislk02,
Btharper1221, Thijs!bot, Epbr123, Jensamoller, Siidheesh, James086, Davidhorman, Dawnseeker2000, AlefZet, Escarbot, I already forgot,
SOBarber, AntiVandalBot, Chicgeek, Daimanta, Wtash, Joe Schmedley, Leuqarte, JAnDbot, MER-C, Austinmurphy, Kirrages, Raanoo,
Enjoi4586, Doom777, Bongwarrior, VoABot II, Tedickey, Angryninja, Vssun, DerHexer, Saberclaw, Ftiercel, Gwern, Stephenchou0722,
MartinBot, Jonathan.lampe@standardnetworks.com, Rettetast, Phillip.calvin, TinaSDCE, Tgeairn, J.delanoy, Mange01, Numbo3, Nbauman, Macaldo, Jaymac407, Acalamari, Andareed, Dispenser, LordAnubisBOT, Thomas Larsen, Jameswebuk, AntiSpamBot, Nomoreink,
Rolandelferink, Deepak garg147, Useight, VolkovBot, SamMichaels, TXiKiBoT, A4bot, Naveenpf, Lucamauri, Seraphim, David.bar, Kovianyo, LeaveSleaves, Caiguanhao, Complex (de), Michaeldsuarez, Synthebot, Monty845, Roybristow, AlleborgoBot, Logan, EmxBot,
Matagascar, Kbrose, RShohat, Yngvarr, SieBot, Nubiatech, Online backup, Smithderek2000, Plinkit, Eleclion, Crm123, 1234mike1234,
Orthorhombic, Vulcans Forge, Pxma, Flyer22 Reborn, Radon210, Coroberti, Wolfcm, Chridd, Oxymoron83, Virdiq, WarpEnterprises,
Ks0stm, Alex.muller, Taggard, Anchor Link Bot, Vanished User 8902317830, The sunder king, N0nr3s, ClueBot, Wikievil666, The
Thing That Should Not Be, Jesser07, Jan1nad, Ldueck, Raf1qu3, ChandlerMapBot, Excirial, Gnome de plume, Skittels, PixelBot, Abrech,
Muhandes, Vivio Testarossa, Cenarium, Airada, Acabashi, Aitias, Footballfan190, Mr. Gerbear, XLinkBot, Ceriak, Wordwizz, Feinoha,
Leoniana, Little Mountain 5, SilvonenBot, Ottomation, Muat, Good Olfactory, Thecarpy, Some jerk on the Internet, Mabdul, Jgeer,
PJonDevelopment, Xiainx, Elsendero, TutterMouse, Tedmund, MrOllie, CarsracBot, Simeon24601, Dky89, Dmemt, Bguras puppy,
OlEnglish, Xjan, Legobot, PlankBot, Luckas-bot, Yobot, Senator Palpatine, Fraggle81, Old Death, Mmxx, Ox, AnomieBOT, Rubinbot, Jim1138, Richm711, Mdfarock, Piano non troppo, Flewis, Materialscientist, The Firewall, Xqbot, Nishantjr, Addihockey10, Capricorn42, TechBot, Sharhalakis, Martnym, Ched, Nordrassil, GrouchoBot, Xusete18, RibotBOT, Amaury, MLauba, Hikki drafts copy23,
FrescoBot, Managed Phil, Krj373, Mfwitten, BenzolBot, HRoestBot, KlfJoat, Rantzen, Calmer Waters, PETAR1, Charles.mjhm, Reconsider the static, Merlion444, Robvanvee, Mawinme, Trappist the monk, Khaotika, Lotje, Dinamik-bot, Vrenator, Ygz79, Sarahmann2009,
Fastilysock, Suusion of Yellow, Some Wiki Editor, Bricaniwi, DARTH SIDIOUS 2, Onel5969, Ksb1392, 212.113.674 ftp, EmausBot,
Mikkik, Shadowmaster1969, Racerx11, RA0808, Eyedotlms, Mick09887,
, Hops Splurt, ValC, Sheeana, Richard asr, Josve05a,
Playdagame6991, Crashuploads, Lakshmeesha NR, Rajeev1486, Felixkasza, Wingman4l7, Sbmeirow, TyA, Duke.tim, Joemark2010, EuanK92, Icyganov, Donner60, Danwing, Wipsenade, Bomazi, ChuispastonBot, Mlorer, 28bot, Ycyganov, Petrb, Mikhail Ryazanov, ClueBot NG, Pantergraph, Nimiew, Poshtkohi, Morgankevinj huggle, BroderickAU, Prasantborn1990, O.Koslowski, Peedeeramone, SpelPunc-Gram, Masssly, Widr, Luke145, GGink, Sabatour 3, BG19bot, Yevstifeyev, Wikivkr, Chmarkine, WikiHannibal, Menna Elsawaf,
Proxyma, EricEnfermero, Captainjackfromgermany, Pratyya Ghosh, Mbk-4a, Khazar2, Codename Lisa, Makecat-bot, TwoTwoHello,
Frosty, Graphium, Liweinan0423, DBhavsar709, Jamesmcmahon0, ArmbrustBot, Thevideodrome, Acc12345acc, Ginsuloft, Zzeliboba,
Quenhitran, 32RB17, Timgenren, Noelfurlong22, ECKotes, ChamithN, Crystallizedcarbon, Faraz Ahmed46, Husburry, Kvtsj, ALIMJ85,
SNov104, Oscarrdg, Coldren.shannon, RaduMirceaAndrei, Castaglia, Maxbrown24, Jimmy Olano and Anonymous: 860
Finite-state machine Source: https://en.wikipedia.org/wiki/Finite-state_machine?oldid=736131265 Contributors: Damian Yerrick, AxelBoldt, Mav, Jeronimo, Jan Hidders, Khendon, Arvindn, Ray Van De Walker, LionKimbro, Heron, Hirzel, Michael Hardy, Pnm, TakuyaMurata, Ee79, Looxix~enwiki, Snoyes, Salsa Shark, Aimaz, Kimiko, Evercat, Jonik, GRAHAMUK, CAkira, Charles Matthews, Timwi,
Dcoetzee, Mac c, Dysprosia, Colin Marquardt, Radiojon, Furrykef, Fvw, Raul654, Nosebud, Twang, Phil Boswell, Robbot, Jaredwf,
Fredrik, Stewartadcock, JesseW, Wikibot, Borislav, EvanED, Nick Pisarro, Jr., Tea2min, Giftlite, DavidCary, Icenine0, Michael Devore, Joseph Dwayne, Neilc, Lukman Sasmita, Geni, Zeimusu, MarkSweep, Maximaximax, Simoneau, Alotau, Urhixidur, Paulbmann,
RevRagnarok, D6, Mormegil, Poccil, GoodStu, Discospinster, Rich Farmbrough, Mecanismo, Gdementen, Kakesson, ZeroOne, S.K.,
Art LaPella, Skinkie~enwiki, Vdm, Jonsafari, BlueNovember, Mdd, HasharBot~enwiki, SvendTofte, Joris Gillis, Wtshymanski, Knowledge Seeker, Danhash, Gpvos, IMeowbot, Thowa, Oleg Alexandrov, Linas, LOL, Bkkbrad, Robert K S, Ruud Koot, Dzordzm, Male1979,
Teemu Leisti, Calrfa Wn, Gwil, Graham87, Qwertyus, Snaekid, Drebs~enwiki, Rjwilmsi, KamasamaK, Armandeh, Ademkader,
Bensin, Fred Bradstadt, Mathbot, EnDumEn, Riki, Fresheneesz, Sperxios, Bmicomp, Kri, Anrie Nord, YurikBot, Hairy Dude, Bergsten, Gaius Cornelius, Rsrikanth05, Jaxl, Thsgrn, ArmadniGeneral, Jpbowen, Darkmeerkat, Bota47, Daghall, Saric, Schultkl, Cedar101,
Chrishmt0423, Bruyninc~enwiki, Cmglee, AndersL, SmackBot, RDBury, Dr. Bruce W. Watson, Adam majewski, Avengerx, Reedy,
0x6adb015, Stepa, Eskimbot, BiT, Amux, Rrohbeck, Thumperward, Villarinho, Waynebe, Jerome Charles Potts, Nbarth, Javalenok,
Frap, OrphanBot, Prmacn, Easwarno1, Nakon, RaCha'ar, ILike2BeAnonymous, A5b, Andrei Stroe, Petr Kopa, Wvbailey, Attys, Moquist, Sir Nicholas de Mimsy-Porpington, Antonielly, Nateman1352, Waggers, Kvng, SheldonN, Peets, Jazzcello, Courcelles, Ellin Beltz,
Chetvorno, George100, Davidbspalding, Sakurambo, CmdrObot, Amalas, CBM, Linus M., Sanspeur, Pj 1974, DomPrice, Cydebot, Sam
Staton, Dantiston, Stormy56, Skittleys, Hervegirod, Marek69, HalHal, Stannered, WinBot, Dough~enwiki, Vantelimus, Hermel, Hamaryns,
MagiMaster, JAnDbot, MattBan, JamesBWatson, Tedickey, Usien6, A3nm, David Eppstein, Martynas Patasius, Oravec, Mcarone, Glrx,
CommonsDelinker, J.delanoy, Maurice Carbonaro, Reedy Bot, Am117, Jeepday, Adamd1008, Ilya Voyager, Ashishpurna, Hotfeba, TXiKiBoT, Ianalis, Don4of4, BotKung, Wiae, Eubulides, Xeno8, Vector Potential, SieBot, Brech~enwiki, Enochhwang, 05, Martarius,
DFRussia, Justin W Smith, Adrianwn, Fake0Name, BlueAmethyst, Mynameisnotpj, Mhhwang2002, Thingg, DerBorg, XLinkBot, Pgallert,
SilvonenBot, MystBot, Addbot, OmgItsTheSmartGuy, SpellingBot, MrOllie, Download, Ollydbg, Meseptiamus, AnnaFrance, LinkFA-Bot,
Conikq, GregHolmberg, Legobot, Yobot, JackPotte, Rdancer, Mirosamek, AnomieBOT, 1exec1, Gargan26, Rememberfun, M!uqomzXb,
401
Materialscientist, Citation bot, Deleron, ArthurBot, Xqbot, Johann Peter Dirichlet, Matttoothman, LordArtemis, Intelliw, GliderMaven,
FrescoBot, Mezmeriseu, Gautamsomani, Adlerbot, Evgeny.berkovich, Skulldyvan, Lotje, Ybungalobill, Perhelion, TheArguer, Ripchip
Bot, Ashutosh y0078, Mcarone1, EmausBot, John of Reading, Bnogent, Zahnradzacken, AvicBot, Zarboublian, Richard.astbury, Tijfo098,
ClueBot NG, Gilderien, Helpful Pixie Bot, Remococco, Dh1509, Manu31415, MrBill3, Kishan247, BattyBot, Dinesh.lei, Jimw338, Uno
b4, Dexbot, Deltahedron, Makecat-bot, Jochen Burghardt, , Mark viking, Siddhars, Asierog, Jodosma, A god amongst men, Lightrace,
Quenhitran, Upkarsh, Mrcheeseface2, Guidotex, Monkbot, , Tapanbohra1911, Govardhanhegde, Be555810, JMP
EAX, Crystallizedcarbon, Some Gadget Geek, Espanolers, Rogalskiy.a, Baking Soda, Jhazelden, GreenC bot, ToeeC and Anonymous:
355
General Inter-ORB Protocol Source: https://en.wikipedia.org/wiki/General_Inter-ORB_Protocol?oldid=735488959 Contributors: SJK,
Conti, Bearcat, (:Julien:), Thv, Fleminra, Jfdwol, Tagishsimon, Rich Farmbrough, EbenVisher, YurikBot, Hairy Dude, Anog, Gdawirs,
Basil.bourque, Gjs238, Schmiteye, Audriusa, Lus Felipe Braga, Cydebot, BenedictPoole, Swpb, STBot, Katharineamy, VolkovBot, Jamelan, Wing gundam, MenoBot, Alksentrs, Kausikghatak, Addbot, Yobot, AnomieBOT, Dinamik-bot, Dwvisser, ClueBot NG, BG19bot,
The Anonymouse and Anonymous: 25
HTML Source: https://en.wikipedia.org/wiki/HTML?oldid=738022031 Contributors: Lee Daniel Crocker, Brion VIBBER, Uriyan, Zundark, The Anome, Koyaanis Qatsi, JeLuF, Gianfranco, SJK, William Avery, Mjb, Hirzel, Patrick, Michael Hardy, Chris-martin, Fred
Bauder, Voidvector, Tannin, Wapcaplet, Dramatic, Ixfd64, Cyde, Eurleif, Arthur3030, Skysmith, Eric119, Alo, Tregoweth, CesarB,
Ahoerstemeier, HarmonicSphere, Haakon, Mac, Ronz, Jpatokal, Den fjttrade ankan~enwiki, , Llull, Andres, Palfrey, Rl,
Ghewgill, Mydogategodshat, Hashar, Okome~enwiki, PatriceNe, Crissov, Jay, Fuzheado, Rednblu, Traal, Haukurth, Tpbradbury, Furrykef, Alexles, Mattworld, Omegatron, Traroth, Joy, Jens Meiert, Jusjih, Guppy, Jeq, Shantavira, Rogper~enwiki, RickBeton, Saqib
(usurped)~enwiki, Robbot, Chealer, Noldoaran, Pigsonthewing, Fredrik, RedWolf, Moondyne, Psychonaut, Lowellian, Costello, Postdlf,
Rholton, Rursus, Texture, Caknuck, Hadal, Profoss, Ledgerbob, Jor, Fab, Tea2min, David Gerard, Enochlau, Dave6, Giftlite, Philwiki,
Smjg, DocWatson42, SamB, Kerttie, Andy, Inter, Lethe, Herbee, Bradeos Graphon, Everyking, Markus Kuhn, Filceolaire, Rick Block,
LLarson, Lurker, Guanaco, Tom-, Mboverload, Siroxo, AlistairMcMillan, Horatio, Richard cocks, Neilc, Chowbok, DocSigma, Wasabie,
Antandrus, Beland, OverlordQ, Oneiros, Mzajac, OwenBlacker, Fuper, Mysidia, QuiTeVexat, MishaChan, Anirvan, Kelson, Urhixidur,
Burschik, Joyous!, Goobergunch, Jh51681, Karl Dickman, BeakerK44, Mmj, Eliazar, Liquid Flash, Abdull, Zondor, Trevor MacInnis,
Canterbury Tail, Kate, Bluemask, DavidL (usurped), Mike Rosoft, Brianjd, D6, RossPatterson, Discospinster, Rich Farmbrough, Guanabot, Mecanismo, Timsabin, YUL89YYZ, MeltBanana, Mani1, Pavel Vozenilek, Paul August, Blade Hirato~enwiki, Bender235, ZeroOne, Zy26, Andrejj, Acq3, Kjoonlee, Breon, Jonathanischoice, Rich13, Plugwash, Violetriga, Bdk, Danakil, Cap'n Refsmmat, Zenohockey, RoyBoy, Triona, Leif, Coolcaesar, Bobo192, Nigelj, Whosyourjudas, Smalljim, Shenme, SpeedyGonsales, Vystrix Nexoth, Unknown W. Brackets, Minghong, Wrs1864, Maebmij, Sean Kelly, Nsaa, Lysdexia, Jumbuck, Zachlipton, Alansohn, Gary, Mduvekot,
Rand~enwiki, Sheehan, Interiot, CyberSkull, Jeltz, NSK, Riana, Sade, Kurt Shaped Box, Kocio, Redfarmer, Mrholybrain, Hu, Llbbl
(usurped), Jmh~enwiki, Velella, TheRealFennShysa, Saga City, Vcelloho, Josh3736, RainbowOfLight, Sciurin, Mikeo, GeoPurchase,
Bsadowski1, A brisson, Versageek, Mattbrundage, Redvers, Netkinetic, Trustle, Dan100, Html~enwiki, Kbolino, DanielVonEhren, Alfrin,
Simetrical, Bushytails, OwenX, Mindmatrix, Georgia guy, Ataru, Camw, LOL, Decrease789, Uncle G, Benbest, Scjessey, NeoChaosX,
Ruud Koot, Dodiad, Je3000, SergeiRichard, Damicatz, Dionyziz, Goystein~enwiki, Eyreland, Toussaint, Xiong Chiamiov, TNLNYC,
Palica, Rufous, Tslocum, Qwertyus, Galwhaa, David Levy, FreplySpang, CarbonUnit, KramarDanIkabu, Reisio, Sj, Jorunn, Rjwilmsi,
P3Pp3r, Koavf, China Crisis, Ikh, Amire80, JoshuacUK, Tangotango, Pudleek, Salix alba, MZMcBride, Jollybengali, CQJ, R.e.b., N-Man,
Bubba73, Afterwriting, Williamborg, Aapo Laitinen, Sango123, Florihupf, Dionyseus, J2000ca, FlaBot, Ian Pitchford, RobertG, Heycam,
Crazycomputers, Nivix, RexNL, Gurch, Alexjohnc3, TheDJ, Intgr, Goeagles4321, Terrx, Jesse0986, Tysto, Joshebosh, Chobot, DVdm,
Bgwhite, WriterHound, Gwernol, Cornellrockey, Shervinafshar, The Rambling Man, Theymos, YurikBot, Wavelength, Klingoncowboy4,
ThunderPeel2001, SpikeJones, Angus Lepper, RobotE, Sceptre, Poldi~enwiki, Todd Vierling, Hairy Dude, Gyre, Charles Gaudette, Fayte,
Phantomsteve, Michael Slone, Fabartus, Spainhour, SpuriousQ, Matt Fitzpatrick, Hydrargyrum, Stephenb, Gaius Cornelius, Rsrikanth05,
Pseudomonas, Bovineone, Bullzeye, NawlinWiki, ENeville, Wiki alf, Mipadi, UCaetano, Bachrach44, Test-tools~enwiki, Grafen, Nutiketaiel, Irishguy, Saoshyant, Aaron Brenneman, Raven4x4x, Iancarter, Lomn, MySchizoBuddy, Zwobot, Snarius, Brat32, Av2917, DeadEyeArrow, Bota47, Kewp, Snareklutz, Szhaider, Alpha 4615, Wknight94, Ms2ger, Mholland, Sumanthk, Tribaal, Lt-wiki-bot, Nacimota,
Ageekgal, Closedmouth, Mike Selinker, Josh3580, GraemeL, Fram, JLaTondre, Dhavalhirdhav, ArielGold, Sitegod, Caballero1967, F.
Cosoleto, David Biddulph, Rwellington, RunOrDie, Suburbanslice, Katieh5584, Purple Sheep, NeilN, Minkus, Rwwww, KNHaw, DVD
R W, Sepsis13, Squirrel Boy, Luk, Veinor, BonsaiViking, SmackBot, MattieTK, Alan Pascoe, Pbb, Ashenai, Classiclms, Moeron, Rtc,
Incnis Mrsi, KnowledgeOfSelf, Unyoyega, Pgk, C.Fred, Bazza 7, KocjoBot~enwiki, Jtneill, WookieInHeat, ElDakio, Frymaster, Brossow,
WildElf, Canthusus, Scott Paeth, Alsandro, Alex earlier account, Zzymyn, Yamaguchi , Aksi great, King Bob324, Gilliam, Ohnoitsjamie, Skizzik, Chaojoker, Qtoktok, PJTraill, Fetofs, Amatulic, AstareGod, Chris the speller, Jamie C, Robert Wellock, CrookedAsterisk, Master of Puppets, BabuBhatt, Oli Filth, EncMstr, King Arthur6687, James Fryer, Doug Patriarche, SchftyThree, Jerome Charles
Potts, Nbarth, Vbigdeli, DHN-bot~enwiki, Methnor, Konstable, YggY, Ado, Zsinj, Dethme0w, Tsca.bot, Can't sleep, clown will eat
me, Shalom Yechiel, Tamfang, Frap, Onorem, Tim Pierce, Jennica, Nixeagle, TheKMan, Rrburke, Bogtha, GeorgeMoney, Addshore,
RedHillian, Midnightcomm, UU, Answerthis, Mgearfan, Cybercobra, Nibuod, Makemi, Nakon, Teehee123, EVula, RolandR, Shadow1,
Mistress Selina Kyle, Lcarscad, Markymarkmagic, Taare, Drc79, Buidinhthiem, Evlekis, Bart v M, MOO, DKEdwards, Kukini, Homo
sapiens, The undertow, SashatoBot, Dave314159, Rory096, Iball, Xerocs, Zahid Abdassabur, Sunroof, Kuru, Ergative rlt, Euchiasmus, Simonkoldyk, Cadderly, Ksn, NeantHumain, JorisvS, Dumarest, Minna Sora no Shita, CaptainVindaloo, BioTube, Tbc42, Tasc, JRS124c41,
Waggers, Dammit, Jgrahn, Ryulong, MrDolomite, GorillazFanAdam, Rory O'Kane, Xihix, Hetar, BranStark, DouglasCalvert, Iridescent, Arntuuri, Michaelbusch, Dreftymac, Theone00, Xaagkx, Wjejskenewr, Sander Sde, J Di, Huo Ma Ke, Igoldste, Blehfu, Rangi42,
Adambiswanger1, Courcelles, Moocowisi, Tawkerbot2, Daniel5127, Jasrocks, Conrad.Irwin, Amniarix, SkyWalker, JForget, Sakurambo,
Hetzer, Unixguy, CmdrObot, Code E, Porterjoh, Mattbr, Makeemlighter, Gmd588, Ruslik0, KnightLago, Maxiom, Jaxad0127, Leujohn, The gergster, Madda, Kennyluck, Cydebot, Krauss, MC10, Vanished user vjhsduheuiui4t5hjri, Gogo Dodo, SetiHitchHiker, Bazzargh, Studerby, Hsivonen, Msreeharsha, Tawkerbot4, Clovis Sangrail, Shirulashem, Codetiger, Torc2, DumbBOT, Kozuch, Ward3001,
Neustradamus, Omicronpersei8, JodyB, MicahElliott, Geekosaurus, UberScienceNerd, Saintrain, Timbl, Epbr123, Bot-maru, Wermlandsdata, Monkle, Mbell, Dasani, Hervegirod, Kablammo, Ucanlookitup, Mojo Hand, Trevyn, Marek69, John254, A3RO, Nezzadar, DavidLeeLambert, Lowercase, Jgr 94, Dfrg.msc, NigelR, TFunk, CharlotteWebb, Tonyseeker, Cplot, Natalie Erin, Folic Acid, Escarbot, I
already forgot, Martinvie, Mentisto, Sidasta, AntiVandalBot, Chicgeek, Majorly, Luna Santin, Guy Macon, Mvjs, Seaphoto, Chacor,
QuiteUnusual, Antique Rose, Prolog, Jj137, TexMurphy, LibLord, Farosdaughter, Gdo01, Zedla, DennisWithem, Wolf grey, Romestar, Carewolf, Jordan Rothstein, Myanw, Static17, Minun, Gkhan, JonathanCross, Golgofrinchian, Swamilive, JAnDbot, Durrantm,
Leuko, Barek, MER-C, The Transhumanist, Moneysaver67, Andonic, Roleplayer, Faerycircle, Snowolfd4, PhilKnight, Doctorhawkes,
LittleOldMe, Bencherlite, Typochimp, CrizCraig, Penubag, Magioladitis, Connormah, Pedro, Bongwarrior, VoABot II, Kuyabribri, JNW,
Kakomu, Mbc362, Swpb, Think outside the box, A10brown, Janadore, Tedickey, Rami R, Wileyc427, Jatkins, Skew-t, Twsx, JPG-GR,
402
Cic, Aka042, Recurring dreams, Diegosolo, SparrowsWing, Dsolovay, Animum, Adrian J. Hunter, Wwmbes, Allstarecho, Just James,
EstebanF, Glen, DerHexer, Esanchez7587, Patstuart, -bilal92-, Bitbit, Xhosan, 0612, Daviecat, MartinBot, PAK Man, Pdraig Coogan,
ShaunL, Mattjs, JayJayKay~enwiki, Rettetast, Speck-Made, Faceboyjim, Ramesh Chandra, Tgeairn, An7drew, J.delanoy, Captain panda,
Pharaoh of the Wizards, Trusilver, Svetovid, Think777, Pursey, Jesant13, TwigsterX, Ginsengbomb, Eliz81, Extransit, Mianbao~enwiki,
NerdyNSK, Satchy, Vanished user 342562, Darth Mike, Laurusnobilis, Cpiral, SharkD, JAKEhp55, Dispenser, Arronax50, Pikminlover,
Tannkremen, TomyDuby, McSly, Lordtopcat, Dabomb45, Tbisonman123, AntiSpamBot, Xmonicleman, Plasticup, LtEarth, TomasBat,
NewEnglandYankee, Nwbeeson, Aervanath, Gabrielhobro, Master shepherd, Xander756, Ljgua124, Potatoswatter, Smitty, KylieTastic,
Sarmenhb, Cometstyles, Lakeishikawa, Remember the dot, ACBest, DorganBot, Nphase, Niceguydave, Sarregouset, Kvdveer, MartinRinehart, Bonadea, Izno, Howcome, Squids and Chips, Idioma-bot, Funandtrvl, Joeinwap, Wikieditor06, Lights, X!, Chinneeb, VolkovBot,
Jorioux, Zcorpan, Xyzu, Je G., Indubitably, Blackdenimgumby, Rharding13, Lears Fool, Cenet47, Philip Trueman, TXiKiBoT, Oshwah, Zidonuke, Vanished user 98wiejfno34tijsfoiwefjlok5y, Vipinhari, Rei-bot, Wikidemon, HarryAla, Drestros power, Arnon Chan,
ScriptingMaster, Crazyhead4, Rick Jellie, Anna Lincoln, Lradrama, Ontoraul, V.v.vinaybabu, JhsBot, Leafyplant, BwDraco, Hamitr,
Drappel, DieBuche, IsaacGS, Cremepu222, David Condrey, NetOracle, Csdorman, Liberal Classic, Fenring, Maxim, Opgfss, LamCarLL71, Madhero88, Odinjobs, Andy Dingley, Enigmaman, Xieqi200, Rougieux, Meters, Synthebot, Falcon8765, Cole1234567890,
Alone363, MelanieBeth, Drake2007, BlackCab, LittleBenW, Logan, Yelling Bird, Legoktm, Zotag, Austriacus, Tbg connor, Demmy,
Kbrose, The Random Editor, Illinoisavonlady, SieBot, Coee, Fsminc, Scarian, Nestea Zen, PanagosTheOther, Lordofnerds, Dawn Bard,
Caltas, Eagleal, RJaguar3, Yintan, Gfonetobe, Vanished user 82345ijgeke4tg, Purbo T, Purplepickle10, Xenophon777, Formerly the IPAddress 24.22.227.53, Bentogoa, Happysailor, Iitim4two, Chridd, JSpung, Allmightyduck, Oxymoron83, Antonio Lopez, Lightmouse,
Tombomp, SH84, KathrynLybarger, BenoniBot~enwiki, SarvenCapadisli, OKBot, Hornyman121, WOFall, Spitre19, XU-engineer, Simplexplus, Mojoworker, StaticGull, Rcairnsjr, Sen Mon, Adi necromancer, Hostime, Jacob.jose, Mygerardromance, Lianmei, Denisarona,
Escape Orbit, Vonones, VanishedUser sdu9aya9fs787sads, WikipedianMarlith, Loren.wilton, ClueBot, Hightilidie, LAX, Binksternet, The
Thing That Should Not Be, Dmooresatx, VsBot, Neelchauhan, Jan1nad, Donovans, Lawrence Cohen, Quinxorin, Enthusiast01, Supertouch,
Taroaldo, Pomadgw, Freebullets, Squash444, Will052690, LukeShu, AntiSlice, Lantay77, Timberframe, Shonda13, Ryoutou, Attlas, Blanchardb, Soc5555, Isoft isoft, , Manishearth, Popadooodle7, Robert Skyhawk, Excirial, Yaniv p, Lochsley, Gtachiki,
Gwguey, MorrisRob, Vivio Testarossa, Rhododendrites, Brews ohare, NuclearWarfare, Cenarium, Wwwqwerty, Jotterbot, Leadv0cal,
Dekisugi, Tempmj, Mikaey, Oswald07, RuneScapez, MadMax45, Bald Zebra, Chiman9321, Thingg, Aitias, 7DaysForgotten, Boxing245,
Egmontaz, Party, Akira-otomo, Braddunbar, Tommyqiscow, DumZiBoT, Mrxwindows, Hogman500, Joeyman111, XLinkBot, Fastily,
Ultramince, Spitre, Gwandoya, RkOrton, Rror, Feinoha, OsoLeon, 007spyguy7, James-Y2J-fan, Nepenthes, WillOakland, Avoided, Burket, Sujgfjfgjhgjgj, Mitch Ames, WikHead, Cmr08, Jswarchinghimer, Alexius08, Noctibus, RP459, Subversive.sound, HarlandQPitt,
Vianello, Thatguyint, Addbot, Xp54321, Gamekid276, Inditfunny, Willking1979, Some jerk on the Internet, Mabdul, TheGeekHead,
Fyrael, Queux, Haruth, Kongr43gpen, Sparkmonkey7, Fgnievinski, Wtni, LovinHTML, Fieldday-sunday, CanadianLinuxUser, Fluernutter, EricCanada75, Protonk, PranksterTurtle, Glane23, Nate Wessel, Karl gregory jones, Waterret, Favonian, AtheWeatherman, LinkFABot, Jasper Deng, Tyw7, Tassedethe, Numbo3-bot, Prince-of-Life, Tide rolls, Tim Mckee, Worlddominater08, Jarble, Bartledan, Manjo
mandruva, Elizabeth Barnwell, Legobot, Yobot, Bunnyhop11, Ptbotgourou, Fraggle81, Tundra010, Yulelee, Leastminor, Tael, THEN
WHO WAS PHONE?, Rajakhr, Jez1, Skaarlaw, Mrnobody228, Eric-Wester, Vampic, AnomieBOT, Cq142, Onefreeinternet, Chazubell,
Message From Xenu, Jim1138, Galoubet, Penguinboyroy, 9258fahskh917fas, Piano non troppo, Betax, Kingpin13, Flewis, Materialscientist, MorgothX, Frankenpuppy, Nifky?, Nut er, Gsmgm, Lturbine, Whileupper, Obersachsebot, Xqbot, Costadelsponz, TinucherianBot II, Sionus, Addihockey10, Capricorn42, Armstrong1113149, Wperdue, 07w109, Moreght, Nasnema, Gilo1969, Grim23, Withoutmark, Jmundo, Ched, Galanothowns, L5138, StunitTeam, Tyrol5, Ruby.red.roses, KingHippo777, Internoob, HDrake, Nasa-verve,
Frosted14, Pandamonia, Shirik, RibotBOT, West Coast Gordo, Jetrink, Trevorpittz, Jacosi, Fert81, POTUS270, Shadowjams, Miyagawa,
Sesu Prime, RetiredWikipedian789, Magic.Wiki, GT5162, EpiQ SkiLL, FrescoBot, Sajidsa13, Logiphile, OspreyPL, Paine Ellsworth,
Anton Sergeev, Lucy75, Uxgeo, Charrua85, Johnnybravo2009, Djahmednawaz, Islamicinfo, Brianreavis, Buzgun, Kwiki, Sanaskar,
Jakesyl, Zorgelo, Flashesarenight, Redrose64, Ringling9, Pinethicket, ShadowRangerRIT, I dream of horses, HRoestBot, Wikiuser00008,
MJ94, Calmer Waters, Jake11899, Mutinus, Hoo man, Carineduwez, Impala2009, MastiBot, Serols, SpaceFlight89, Petree69, Sjpr73,
DMBradbury, Prapsnot, Pcuser42, Weylinp, Unbreakable comb, Pranayrocks23, Hiuhuhihiuh, Abc518, FoxBot, Sreeriz, Kakistocrator, Lotje, Nako16, Dinamik-bot, Vrenator, TBloemink, Extra999, Killr833, Lilgamer64, Chat de jutiapa guatemala horcones, Mr.98,
Spherems, Nman252, Jhone29, Ayansen1988, Diannaa, Gerhard Loeb, IeditU4good, Genhuan, BaseballByrd, Reach Out to the Truth,
Burns28, Sharon08tam, Aodonnel, DARTH SIDIOUS 2, Wolfhoundfeet, Nations114, Sheatrevor, Onel5969, Mean as custard, Clisblog,
Mrfencey, Bento00, DexDor, Amerias, Prosenzweig, Tomchen1989, Becritical, Thaqtipkilla, Kcmartz, Vickey Xiong, Chickenandpasta,
Deagle AP, Lineplus, Bmsshubham, Pwt-wsu-ap, EmausBot, Orphan Wiki, Tntc.tig, WikitanvirBot, Gfoley4, Beeshoney, Yt95, GoingBatty, RA0808, Np123456, Dcdspace, RenamedUser01302013, Vanished user zq46pw21, Yellow & Blue Music, Rabbabodrool, The
Mysterious El Willstro, Dmsdjing, Tommy2010, Winner 42, Wikipelli, Dcirovic, K6ka, Tudorol, Pielover88888, Thecheesykid, TheDrakoman, AlecFTW, Rima p.r, D'oh!, Josve05a, Traxs7, GranterOfMercy, Wes.turner, Cfust, Briansince1988, MithrandirAgain, Maypigeon of Liberty, Enrique00a, , Anir1uph, Empty Buer, Asiansryummeh, Virtual Loc, Dylthaavatar, Rizwanazizshaikh, Wasala555,
Demonkoryu, Zap Rowsdower, Wayne Slam, Tolly4bolly, Gregoroq, BrokenAnchorBot, Lipyn, Shyluv, Donner60, Wipsenade, Jamesamber, Bomazi, Chesshead123, Chesspapa, MainFrame, ChuispastonBot, Forever Dusk, Epicchamantha, DASHBotAV, Hacker9001, George
Makepeace, Dixwerr, ClueBot NG, Unisubs, Aerospeed, Frankdushantha, Matthiaspaul, MelbourneStar, Jcollumbell, Metinisim, Recon62,
Satellizer, PaleCloudedWhite, Wiklinkwonder, Carbon editor, Pokemonblackds, Andrew Kurish, O.Koslowski, Asukite, Ekphraster,
336, Widr, Telpardec, Blaise170, Anupmehra, Fltyingpig, ZacharyM001, Helpful Pixie Bot, Chickenjock, Jrichardsing, Captain Superman, Titodutta, Thatspartanguy, Calabe1992, Wbm1058, Schuy B., Technical 13, Doorknob747, Lowercase sigmabot, BG19bot, Island Monkey, Nathanswan, Krlozanov, KamranMackey, Vagobot, Way2tutorial, Iamjaypatel, AlphaBlogshow, Kangaroopower, Harkamal1001, MusikAnimal, Frze, OneCuteElmo, Ashutosh.ukey, Ramneek Sharma(MCT), Follishere, Mark Arsten, Compfreak7, Joshianurag21, Joydeep, NotinREALITY, RussiaRussia, Matthewp1998, Spokestrip EMP, Tharinduewe, Vannhuthanh, Makandal14, DavidLeader, Gysenn, Insidiae, Glacialfox, Toto Mommam, Klilidiplomus, Ajsandbach, Shanky.lonely, Hanitirkey, BattyBot, FootholdTechnology, David.moreno72, Darylgolden, SupernovaExplosion, Pratyya Ghosh, JDewint, Cyberbot II, Timothy Gu, GoShow, Jamila60, Sibtain
007, Worden.lee, EuroCarGT, Ducknish, JYBot, Dexbot, Rezonansowy, Norazizahhashim, I call the big one bitey, Mogism, Killerkur1,
SiBr4, Assisted Reputation, Mrkjohnson, Blakeman909, Lugia2453, Frosty, Tayyab mm, Booruguru, Flrgf, Itchytoes, Jscbiss, CCamp2013,
Anand Kishore Jha, Reatlas, Bluexephos Sjin, Mark viking, Xela722, Jnelmark101, Crisskooper, FallingGravity, Marsupium, I am One
of Many, Zaveri123, Htmlwiki, Jdbener, Shivajivarma, Mompati Dikunwane, Tentinator, Waqaee, AnthonyJ Lock, Timmothytheman,
Saleh0167, Jemee012, TechFilmer, Salamnam30, Haminoon, A owen1978, Blackraider7, LieutenantLatvia, Dexmediainc, Uwe Lck,
My name is not dave, Ginsuloft, George8211, Motemota9, JWNoctis, Sam Sailor, Thesloth34, Mustha jm, TCMemoire, Francois-Pier,
Jyothiug17, Dvorapa, Dkwebsub, King.escanlar, Meteor sandwich yum, Dastoger Bashar, CelesteMarkham, JaconaFrere, Jforjaxi, Himankpathak, Salton Finneger, Dixwerrr, RicoZepplin, Prestotron55, Your moms cousin, Adamali2002, Awesome Spider, Monkbot, Yu-
403
gals20, BatmanArkhamOriginsV3, LucasandEmma, Mdwhit, Notchrealm, TheQ Editor, .., Stronglolo, Ha1230, QueenFan,
Sonia Terver, Lord Marcellus, KH-1, ChamithN, Maths314, Gurjyottheman, Arvind asia, TeaLover1996, Ertyupoi, Devwebtel, Some Gadget Geek, Niki201, HTMLRulez, Muhammad Ijaz Javed, BoxOfChickens, Alefbeis, ToonLucas22, Hotsystem52, Keisuke3804, Bdurf,
Amazingcf.cool, Andrean rapz, Qsx753698, KasparBot, Milind Bordia BSHS, Waqas012, Gurbir Singh Dhaliwal, Thejas16496, Prajwal R Sajji, My Chemistry romantic, Ross MacPhee, Glory of Space, Manasaramoju, AniruddhaChatterjeeOUA, Bigwilly10, Gorgond,
Lemondoge, MonDavis, Zamaster4536, HTMLPanda, Garg.M2K, Amolyadav0099, EightTwoThreeFiveOneZeroSevenThreeOne, Yabgo
Mubassir, Heeeheee10101, Lukace8, Kutless02, GSS-1987, Callum.McTear, Krishna2636, Qzd, Doulph88, Stevan.keselj95, Shafran
franzy, Jcmendo, Riddhi2015, Amitmarkel, Justiceray1998, Cybergauntlet, NgYShung, Yadavrohit2003, Shaunyalad88, GreenC bot,
UnidentiedHuman721, DynaGirl, Werthert, Full Rune, VarunFEB2003, Hello8287556846, Rhowladar, Superuser56, Shantoa0, Vk khandal, Sanjaunita23, DUBSSC, NAYAN 1, Kaustubh Gole and Anonymous: 2196
Hypertext Transfer Protocol Source: https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol?oldid=737952516 Contributors:
Damian Yerrick, The Anome, Grouse, Wayne Hardman, Andre Engels, Rmhermen, Aldie, SJK, William Avery, Ben-Zin~enwiki, Mjb,
Bernfarr, Nknight, Edward, Patrick, Chris-martin, Modster, Lezek, Nixdorf, Pnm, Meekohi, Martin BENOIT~enwiki, Ixfd64, Sheldon
Rampton, TakuyaMurata, Delirium, Iluvcapra, Karingo, Tregoweth, Ellywa, Ahoerstemeier, Haakon, Nanshu, Yaronf, Lupinoid, Scott, IMSoP, Samuel~enwiki, Nikola Smolenski, Ehn, Hashar, Universimmedia, Dcoetzee, Tpbradbury, Furrykef, Paul-L~enwiki, Bevo, Wonko,
Nickshanks, Betterworld, Pakaran, Flockmeal, Finlay McWalter, Jeq, Robbot, Chealer, Fredrik, R3m0t, RedWolf, Psychonaut, Nurg,
Babbage, Ashley Y, Kwi, Yacht, Jleedev, Tea2min, Alerante, Giftlite, Lproven, Lee J Haywood, Lethe, Ferkelparade, No Guru, Jonathan
O'Donnell, Tromer, Itpastorn, Cloud200, Pascal666, AlistairMcMillan, Jaan513, Jackol, SWAdair, Vadmium, Utcursch, Pgan002, Knutux, Beland, Oneiros, Kesac, Icairns, Atemperman, Gscshoyru, Joyous!, Karl Dickman, BeakerK44, Mmj, Abdull, Reschke, Bluemask,
MikeF, Mormegil, Tordek ar, Imroy, JTN, RossPatterson, Discospinster, Rich Farmbrough, Hydrox, Cool-RR, Alistair1978, Delicates,
Horsten, Bg~enwiki, El C, Mdf, Mnot, Sietse Snel, Tbannist, Femto, Bobo192, Nigelj, John Vandenberg, BrokenSegue, Unquietwiki,
Kundor, Daf, Maebmij, Helix84, Krellis, Nevyn, Mdd, Lysdexia, Timmywimmy, Jumbuck, Checking, Zachlipton, Alansohn, Guy Harris,
Interiot, Pforret, Jeltz, John Quiggin, Damnreds, Lightdarkness, Kocio, Mbloore, Wtmitchell, BaronLarf, Eli the Bearded, BanyanTree,
Cburnett, Stephan Leeds, Suruena, Evil Monkey, Josh3736, RainbowOfLight, TenOfAllTrades, Krellion, Ent, Nightstallion, Voxadam,
DarTar, Woohookitty, Mindmatrix, RHaworth, Stolee, Uncle G, DanBishop, Jacobolus, Niqueco, JHolman, ^demon, Paul Mackay~enwiki,
Asteiner, Ruud Koot, Dionyziz, Eyreland, Meneth, Jonnabuz, Brownsteve, Kesla, RichardWeiss, Graham87, Seb-Gibbs, Yurik, Canderson7, Sj, Rjwilmsi, Koavf, Hans Genten, Bruce1ee, MZMcBride, Jdowland, HappyCamper, ElKevbo, The wub, Ravik, Fred Bradstadt,
Aapo Laitinen, Lotu, Syced, FlaBot, Spaceman85, Mathiastck, Hashproduct, RexNL, ChongDae, Intgr, Fresheneesz, TeaDrinker, Alphachimp, Benanhalt, Imnotminkus, Chobot, Frappyjohn, DVdm, GioeleBarabucci, Adoniscik, YurikBot, Wavelength, Angus Lepper,
Todd Vierling, Huw Powell, Charles Gaudette, Pip2andahalf, Kymacpherson, RussBot, Sparky132, Yuhong, Stephenb, Gaius Cornelius,
SteveLoughran, Cryptic, Anomalocaris, NawlinWiki, ENeville, Catamorphism, A!eX, JonoF, Saoshyant, Jstrater, CecilWard, Moe Epsilon, SixSix, Alex43223, Syrthiss, Htonl, DeadEyeArrow, Arch o median, Hrvoje Simic, Nlu, Trygvis, Graciella, BenBildstein, Ninly,
Macademe, Cedar101, Ka-Ping Yee, Pb30, KGasso, Dspradau, Sean Whitton, Kungfuadam, Benandorsqueaks, GrinBot~enwiki, TuukkaH,
Tom Morris, Jarkspratt, AndrewWTaylor, Mlibby, Amalthea, Drcwright, SmackBot, Elving, KAtremer, Incnis Mrsi, Hydrogen Iodide, Unyoyega, Basil.bourque, C.Fred, KocjoBot~enwiki, Gilliam, Betacommand, Englishrose, Lady Serena, Rmosler2100, Marc Kupper, Anwar
saadat, Persian Poet Gal, Dr bab, Thumperward, Timneu22, Jerome Charles Potts, Deathanatos, Omniplex, Baa, DHN-bot~enwiki, Bil1,
Firetrap9254, Gracenotes, Audriusa, George Ho, WDGraham, Schwallex, Dethme0w, Can't sleep, clown will eat me, SheeEttin, Frap,
Neo139, Blade44, Jennica, Nixeagle, Avb, Chruck, VMS Mosaic, UU, JustAnotherJoe, Ddas, MureninC, Nakon, T-borg, Valenciano,
HarisM, Astroview120mm, Mwtoews, Acdx, Daniel.Cardenas, DKEdwards, SashatoBot, Ksn, A-moll9, Bjankuloski06en~enwiki, Tlesher,
SpyMagician, CyrilB, Stupid Corn, Mr Stephen, Ryulong, KurtRaschke, MTSbot~enwiki, Negrulio, Kvng, Beefyt, Lee Carre, Hu12, Iridescent, Newone, Sander Sde, Sjb72, Chrisamaphone, Tawkerbot2, Brian.fsm, Earthlyreason, Kylu, SoftX, Stevenup7002, Pewwer42,
Equendil, Phatom87, Cydebot, Cahk, Mblumber, Agupte, Davilima, UncleBubba, Corpx, Chasingsol, JamesLucas, Christian75, Alaibot,
Ivko, Tobias382, Lyverbe, Epbr123, Marek69, Vertium, Electron9, TheJosh, James086, Nezzadar, Sakkath, Uruiamme, AlefZet, Escarbot,
Danielfolsom, KrakatoaKatie, AntiVandalBot, Yonatan, Luna Santin, Widefox, Guy Macon, MsDivagin, Blmatthews, Sstteevvee, Gdo01,
Lannm, Dougher, VictorAnyakin, Myanw, MikeLynch, JAnDbot, Barek, Bull3t, Mwarren us, Cameltrader, SiobhanHansa, Enjoi4586,
Danculley, Abu ali, Magioladitis, Bongwarrior, VoABot II, Transcendence, Davidjk, JamesBWatson, Bgwwlm, Tpirfan28, DerHexer,
Kgeischmann, Esanchez7587, GordonMcKinney, MartinBot, BetBot~enwiki, Onlynone, GimliDotNet, Rainman-sr~enwiki, Anaxial,
Ore4444, Mschel, KTo288, Ash, PrestonH, Lilac Soul, RockMFR, J.delanoy, Captain panda, Mange01, Mehfuz, Trusilver, Think777,
Uncle Dick, Extransit, Suppie, Andareed, LordAnubisBOT, Produke, Gurchzilla, AntiSpamBot, Chiswick Chap, Raise exception, NewEnglandYankee, Ivank06, Doria, Rwessel, SJP, Babedacus, STBotD, Ajfweb, CardinalDan, Idioma-bot, Funandtrvl, Wikieditor06, Fuzzygenius, VolkovBot, Part Deux, CWii, Alexandria, Perceptes, Philip Trueman, TXiKiBoT, Oshwah, GcSwRhIc, Elimerl, Retiono Virginian,
Anna Lincoln, MackSalmon, Leafyplant, Don4of4, Broadbot, Yomcat, Wiae, Saturn star, Madhero88, TonyAiuto, Sses401, Petero9,
Haseo9999, Gen. von Klinkerhoen, Tomaxer, Mohammedsheikh786, BOTijo, Okyea, Monty845, Praefectorian, Nightraider0, Scottywong, EmxBot, Kbrose, SieBot, Nubiatech, Graham Beards, Rystheguy, Dawn Bard, Caltas, Edmund Patrick, RJaguar3, Smsarmad,
Yintan, Beinder, Bamkin, Bevan7, Ham Pastrami, Keilana, Android Mouse, Pxma, Happysailor, Flyer22 Reborn, Wizzard2k, TechTony,
Coroberti, DanBLOO, Oxymoron83, Avnjay, Iain99, Nyelvmark, OKBot, La Parka Your Car, RandomHumanoid, Konniret3, Lloydpick,
Mpeylo, ObfuscatePenguin, Asj123fds, De728631, ClueBot, The Thing That Should Not Be, Enthusiast01, Spandrawn, Ajonlime, Boing!
said Zebedee, DigitalNinja, Blanchardb, Callmederek, Grantglendinning, Daniboydl07, PMDrive1061, Cedy, Sekro, Socrates2008, Jusdafax, M4gnum0n, SkE, Mumia-w-18, Lartoven, Hrafnkell.palsson~enwiki, Dmyersturnbull, Jotterbot, Morel, Saebjorn, Thehelpfulone,
Calor, Sdrtirs, Th.matt.wiki, Aitias, DerBorg, Scalhotrod, Versus22, Qwfp, Apparition11, DumZiBoT, Chris1834, XLinkBot, Fastily,
Rror, OsoLeon, Nepenthes, Orbnauticus, C. A. Russell, SilvonenBot, InfoRetrieval, Gamernotnerd, RyanCross, Dsimic, HexaChord, Addbot, Mortense, Habbabuba91, Jojhutton, Mabdul, Magaman dude, Hyperthermia, Tothwolf, AkhtaBot, Ronhjones, Marx01, Scientus,
CanadianLinuxUser, Cambalachero, Glane23, Favonian, Jasper Deng, Timc1212, Numbo3-bot, Agawish, Tide rolls, Lightbot, Jarble,
Matt.T, Legobot, Luckas-bot, Bpantalone, Yobot, THEN WHO WAS PHONE?, Gsiegman, TestEditBot, Tempodivalse, AnomieBOT,
Mauro Lanari, Rubinbot, Jim1138, Cavarrone, Piano non troppo, Bluerasberry, Jrobinjapan, Materialscientist, Aneah, Papadakis2007,
Pioneerking, Obersachsebot, Xqbot, Dalitvoice, Korealin, Rischmueller, TinucherianBot II, Capricorn42, Bihco, Moustafaza, Gilo1969,
Gap9551, GrouchoBot, AVBOT, RibotBOT, SassoBot, DasRakel, IShadowed, MLauba, Phette23, Cyberstrike3000X, Shadowjams, Mikerlynn, Tabledhote, Universalss, SchnitzelMannGreek, 4342, FrescoBot, Voxii, Weyesr1, Godtrog, Tobby72, Nageh, Krj373, Gaccolin,
Wikipe-tan, Idyllic press, Sae1962, Vinoth.t, Jarkospratt, Draperp, Maggyero, I dream of horses, HRoestBot, MastiBot, le ottante, Fraxtil, Lineslarge, RobMattson, Wolfomatic5, IJBall, Robert Xia, Lotje, GregKaye, Vrenator, Zvn, Extra999, EphemeralJun, JV Smithy,
Tbhotch, Reach Out to the Truth, Sharon08tam, Mean as custard, The Utahraptor, Linusnk, Wintonian, Salvio giuliano, EmausBot, John
of Reading, Gfoley4, Chenqiang.prc, Haiiiiilllsatana, Optiguy54, Super48paul, Jeroenvdmeer, Marcos canbeiro, Peaceray, Tinogomes,
Tommy2010, Chadller, Wikipelli, Rhaskallion, Shuipzv3, Babysabre, Kiwi128, Zalnas, 1234r00t, Sodabrew, GJHC1, Jmar777, Shrikan-
404
thv, Irrypride, Donner60, Sri Krishna Geova Allah, Ihatejava, Shiftoften66, GermanJoe, Andkim99, ClueBot NG, AnotherSprocket, Y98,
Matthiaspaul, HonestIntelligence, Zekefast, Frietjes, Widr, Anupmehra, Theopolisme, Galund, Novusuna, Johnny C. Morse, J.Dong820,
Calabe1992, BG19bot, Q828, EvanMHahn, M0rphzone, Adam.tolley, Sahara4u, Cyberpower678, Nen, IAlexR, Mark Arsten, Compfreak7, Jnanaranjan sahu, GGShinobi, OmarMOthman, Spuas, Chmarkine, Toto Mommam, MrExplosive, Bsrdjan, IRedRat, Tianjiao,
David.moreno72, Mdann52, Agus puryanto, Cyberbot II, Gdfusion, Wjcw, Gavinmorrice, XapApp, Ducknish, Himichellet, Makecatbot, Lugia2453, Doc Armitage, Dmufasa, The Quirky Kitty, Sriharsh1234, Athomeinkobe, Falsestu, Mark viking, I am One of Many,
Franois Robere, Melonkelon, Jakec, EvergreenFir, DavidLeighEllis, ArmbrustBot, Davidgumberg, Comp.arch, PerfectSystem, The Herald, Ginsuloft, Soujak, Meteor sandwich yum, Skr15081997, Ethically Yours, Upkarsh, Monkbot, Izaberina, Datjedi, Coder hsps, Level47,
Mfnpka, Alamatpalsoe, 2014Best, Thianw, Neshyanka, WordSeventeen, Shiv Shanker Sharma, Roemerb, Mlkj, Viam Ferream, Pishcal, Rubbish computer, Joseph2302, NickOsypenko, Surlycyborg, KasparBot, T-brace98, Will98769876, Oluwa2Chainz, Atanasmihaylov,
Wesko, CAPTAIN RAJU, Vansockslayer, Chenthil Vel, Bv56, Tajmil, H.dryad, Kmalhotra612, Harrryy33, Colonel Wilhelm Klink, KGirlTrucker81, Killerash734882, VINAY YADAV and Anonymous: 1253
Implementation Source: https://en.wikipedia.org/wiki/Implementation?oldid=736722518 Contributors: Kku, Ellywa, Bogdangiusca,
Stefan-S, Maximus Rex, Spikey, MOiRe, Diberri, Marius~enwiki, Andycjp, Slady, Discospinster, Aranel, Mike Schwartz, Halsteadk, Oleg
Alexandrov, BD2412, JIP, Lockley, MZMcBride, Cacafuego95, Margosbot~enwiki, TheMidnighters, RexNL, Jidan, YurikBot, Grafen,
Kymara, Moe Epsilon, Twelvethirteen, Katieh5584, SmackBot, Eskimbot, BiT, Francisco Valverde, Gilliam, PJTraill, Hongooi, JonHarder,
Khazar, Dreftymac, CmdrObot, Optimist on the run, Thijs!bot, Nick Number, Goldenrowley, MECU, .anacondabot, Catgut, JaGa, Gwern,
MartinBot, TheEgyptian, R'n'B, Gurchzilla, VolkovBot, Begewe, Owain.wilson, Anna Lincoln, AlleborgoBot, SieBot, Jojalozzo, ClueBot,
Goober49, Rror, Hubew, Addbot, Fluernutter, Mentisock, Jonathan d green, Chzz, Jarble, Luckas-bot, Yobot, Ptbotgourou, Fraggle81,
TaBOT-zerem, Materialscientist, Xqbot, J04n, SassoBot, Mathonius, Erik9bot, Cargoking, RedBot, Dinamik-bot, EmausBot, WikitanvirBot, TuHan-Bot, Sodmy, Heyjoy, Solde9, ClueBot NG, MelbourneStar, Wbm1058, BG19bot, Cbj125, Mitch078, Thecodemunky,
DayBridge, Star767, Dingalo, Bear-rings and Anonymous: 99
Information Source: https://en.wikipedia.org/wiki/Information?oldid=738004801 Contributors: Eloquence, The Anome, Christian List,
Little guru, Ben-Zin~enwiki, Mjb, Hephaestos, Olivier, Leandrod, Stevertigo, Lir, Michael Hardy, Modster, Lexor, Nixdorf, Kku, Ixfd64,
Tomos, Goatasaur, Ellywa, Mdebets, Ahoerstemeier, Jebba, Bueller 007, , Cyan, Mkoval, Poor Yorick, Scott, Andres, Wikiborg, Choster, Tpbradbury, Rronline, Shizhao, Olathe, Pir, Jusjih, Leonariso, Calieber, Robbot, Fredrik, Vespristiano, Peak, Romanm,
Dessimoz, Securiger, Mayooranathan, Nilmerg, Meelar, Rasmus Faber, Cassie~enwiki, Robinh, Roozbeh, Wile E. Heresiarch, Tea2min,
Alan Liefting, Ancheta Wis, Giftlite, Christopher Parham, Achurch, COMPATT, Everyking, Bensaccount, Sheizaf~enwiki, Yekrats,
SWAdair, Bobblewik, Sesel, Zeimusu, Antandrus, Joeblakesley, Togo~enwiki, Gscshoyru, WpZurp, Joyous!, JohnArmagh, Fabrcio Kury,
Grm wnr, Zondor, Trevor MacInnis, Guppynsoup, Mike Rosoft, Brianjd, D6, Jwdietrich2, CALR, EugeneZelenko, Diagonalsh, Discospinster, Solitude, Michal Jurosz, Silence, Smyth, Samboy, Martpol, Stereotek, Bender235, MisterSheik, CanisRufus, AndyB, Jpgordon, Blakkandekka, La goutte de pluie, Alphax, Flammifer, Tritium6, Andrewbadr, Helix84, Haham hanuka, Ranveig, Jumbuck, Complete~enwiki, Alansohn, PaulHanson, LtNOWIS, Riana, Ciaran H, BryanD, Jheald, Versageek, SteinbDJ, Spot, Ott, Natalya, OleMaster, Woohookitty, Edgerunner76, Ruud Koot, I64s, CharlesC, LogicalDash, Marudubshinki, Bebenko, Graham87, Deltabeignet, Magister
Mathematicae, BD2412, MC MasterChef, Amerique, Rjwilmsi, Mayumashu, KYPark, Bubba73, FlavrSavr, Downtownee, AJackl, FlaBot,
Michaelschmatz, Mathbot, Truman Burbank, RexNL, AndriuZ, Wingsandsword, King of Hearts, DVdm, Bgwhite, Flcelloguy, Roboto de
Ajvol, Rattle, Wavelength, Cybercat, Sputnikcccp, Loom91, Lalalalalala~enwiki, Stephenb, Mpfrank, GeeJo, NawlinWiki, Oberst, Prickus,
Moe Epsilon, Mikeblas, Iancarter, Kyle Barbour, Scope creep, Pelister, Pooryorick~enwiki, Igin, Zzuuzz, Tcsetattr, Denisutku, Arthur
Rubin, Dspradau, Tevildo, Alasdair, Samanwith, JLaTondre, Eaefremov, DVD R W, CIreland, Crystallina, SmackBot, Incnis Mrsi, InverseHypercube, TestPilot, McGeddon, Kirkjames, Ariedartin, Vald, Delldot, Hsarkka~enwiki, HalfShadow, Bertilvidet, Yamaguchi ,
PeterSymonds, Gilliam, Ohnoitsjamie, Skizzik, Richfe, Wigren, MK8, MalafayaBot, Khobler, Neo-Jay, Hallenrm, A. B., Enigma55,
Sct72, Can't sleep, clown will eat me, Alphabravotango~enwiki, Yidisheryid, TheKMan, Celcom, Xyzzyplugh, Mr.Z-man, COMPFUNK2,
YankeeDoodle14, Jerrch, Smooth O, alyosha, Dreadstar, Richard001, Jon Awbrey, Just plain Bill, Rspanton, Daniel.Cardenas, Bart
v M, Ged UK, MichaelGasser, Xdamr, Kuru, MagnaMopus, Sir Nicholas de Mimsy-Porpington, Steipe, Ckatz, Isria, Tasc, Beetstra,
Noah Salzman, Billreid, Wstomv, Avs5221, Mr Stephen, Dicklyon, Pvalozic, RichardF, Jose77, Kvng, Ramobear, Levineps, Iridescent,
Jakehall2, Dreftymac, Lottamiata, Exformation, Tawkerbot2, George100, CRGreathouse, Ale jrb, Makeemlighter, Floridi~enwiki, THF,
Dgw, MarsRover, Rizeg70, Davnor, Penbat, Gregbard, Stebbins, Maria Vargas, Nelbathy, Poojamal, Peterdjones, Gogo Dodo, Montag451, JFreeman, ST47, Djmiller9975, Carlroller, Naudefj, Hot torew, Daven200520, Blackjack48, Kyle J Moore, PKT, Michael Fourman, Epbr123, Al Lemos, Headbomb, Yettie0711, Klausness, Dawnseeker2000, Dehneshin, Escarbot, Mentisto, Rlitwin, QuiteUnusual,
PlatonicIdeas, Smartse, Danny lost, Andrewrutherford, Dreap, Obeattie, Golgofrinchian, JAnDbot, Jimothytrotter, Em3ryguy, MER-C,
Robocracy, Eurobas, Pvm 02, Ariaconditzione, Meeples, AndriesVanRenssen, Magioladitis, Bongwarrior, VoABot II, Think outside the
box, Kevinmon, Snowded, Indon, Faustnh, EagleFan, Ksanyi, MetsBot, David Eppstein, DerHexer, Khalid Mahmood, Oicumayberight,
Bradshow, NAHID, Gamma2delta, R'n'B, Tgeairn, Wlodzimierz, J.delanoy, Kimse, Thomasda, Draccon136, Svetovid, Overix, Maurice
Carbonaro, Kentback, Robert W. Wright, Kby, AntiSpamBot, TomasBat, Cobi, Jorfer, Dungs, Chitvamasi, Dessources, Juliancolton,
Linshukun, Gtg204y, DASonnenfeld, CardinalDan, Idioma-bot, Wikieditor06, Ddusenbery, VolkovBot, Semmelweiss, Aesopos, Philip
Trueman, TXiKiBoT, Oshwah, Ldonna, Yuma en, Ann Stouter, Z.E.R.O., Shindo9Hikaru, Kjells, Shahidislam31, Bluestripe, Jdunn0101,
Madhero88, BigDunc, Pepve, Stevenson-Perez, Synthebot, Jwithers, Vishal.belawade, Spinningspark, Brian Dare, AlleborgoBot, Logan,
PGWG, Cocomo-jp, Nosferattr, Neparis, SieBot, Ivan tambuk, Phe-bot, Dawn Bard, Caltas, Yintan, Flyer22 Reborn, Masgatotkaca,
Oxymoron83, GaryColemanFan, Gbbinning, Alex.muller, Algorithms, LonelyMarble, Luapnampahc, Cyfal, Sean.hoyland, Denisarona,
God of Slaughter, Loren.wilton, ClueBot, Thedosmann, Thriceplus, Shinpah1, ChandlerMapBot, Auntof6, Pointillist, DragonBot, Excirial, Alexbot, BirgerH, Rhododendrites, Brews ohare, R.Dhiyanesh, Cenarium, Hesar, TheRedPenOfDoom, Tnxman307, Coywish, Unmerklich, M.boli, Thingg, Versus22, Johnuniq, XLinkBot, Roberto Gejman, Feinoha, JinJian, EndlessWorld, Dorkysnorky123654, Addbot, Csharpboy, Manuel Trujillo Berges, Njaelkies Lea, Zarcadia, Mike J B, Download, Chamal N, 5 albert square, Systemetsys, Tide
rolls, David0811, Mah Nah, Informatwr, Luckas-bot, Yobot, Systemizer, Terrictrid, Sweetestbilly, Taxisfolder, Timir Saxa, Kgeza7,
AnomieBOT, Andrewrp, Cmsreview, Jim1138, Piano non troppo, K50 Dude, Atroche, Wikiwlod, Bluerasberry, Materialscientist, ArthurBot, DalaoDy, Raysonik, Xqbot, TheAMmollusc, Jayarathina, Bbarkley, Capricorn42, Millahnna, Tad Lincoln, J04n, Frosted14, Omnipaedista, Thosjleep, Apurvasukant, JonesC-NC, Aashaa, Jasonlums, Anne11jun, Shadowjams, CES1596, FrescoBot, Browneze, GEBStgo,
Mark Renier, SkepticalMetal, Machine Elf 1735, Mtz07, Rhalah, Boxplot, Luvstar 17, Pinethicket, ShadowRangerRIT, Hard Sin, Rushbugled13, InformationZone, Magdalena Szaran, SkyMachine, FoxBot, DixonDBot, Lotje, Catinator, Vrenator, LilyKitty, Jerd10, JenVan,
Tbhotch, Cuckoofridge, Mean as custard, RjwilmsiBot, Xaphnir, EmausBot, John of Reading, Acather96, Gfoley4, Iseecubes, Maashatra11,
Tommy2010, Dcirovic, K6ka, Kimberleyhastly, Sbamyani, Pratibha sharma, F, Quondum, Gz33, Chithrapriya, Tolly4bolly, Arman Cagle, Istarninwa, Mmalbayrakoglu, Healis, Wakebrdkid, GrayFullbuster, ClueBot NG, MelbourneStar, A520, BarrelProof, Harmeetkaur09,
Masssly, Petra oftenlungs, Widr, , Vibhijain, Sssbbbrrr, Helpful Pixie Bot, Pinkcyberheart, Vaishalimathur14, Door-
405
knob747, BG19bot, Vagobot, My mom is cool, PhnomPencil, Wiki13, Galois17, Mark Arsten, Asterisk98, Mmovchin, Altar, In4matt,
Klilidiplomus, Agent 78787, Knodir, Cimorcus, ~riley, Pratyya Ghosh, Csterns, ChrisGualtieri, Ngorgoya4real, EuroCarGT, JohnEisenhauer, 331dot, Unitknow2, Frosty, Brirush, , Epicgenius, Cbm12, Eratosthenes17, Tentinator, Maxwell bernard, Rkkhare, Mattram,
Ryanluck3, Szhu008, Latifah istud, Papan patil, To-nurture, Ugog Nizdast, Eric Corbett, Ginsuloft, Sam Sailor, Kind Tennis Fan, Tahmina.tithi, Jeremylawless, Dastoger Bashar, FrB.TG, Dr. JJenkins, Skr15081997, GeorgeAhad, ThatRusskiiGuy, Wahab14, Jjunsso,
Sunmist, Sayyedabbasjaer, Mikael400, DanBalance, KasparBot, ChesterThinks, Sam eastland, Anti-Keith, CAPTAIN RAJU, Abdivetclinic.go.tz, Sahilshekh, Jdsmercado, Simakenett and Anonymous: 638
Institute of Electrical and Electronics Engineers Source: https://en.wikipedia.org/wiki/Institute_of_Electrical_and_Electronics_
Engineers?oldid=737424899 Contributors: Bryan Derksen, The Anome, Tarquin, Ap, Christian List, Aldie, Matusz, SJK, Jarekadam,
Nixdorf, Menchi, Mac, Jimfbleak, Snoyes, Julesd, Jll, Kimiko, Andres, Mxn, Richj, Charles Matthews, Visorstu, Itai, Head, Wilbern
Cobb~enwiki, Raul654, David.Monniaux, Donarreiskoer, Robbot, Murray Langton, Altenmann, Romanm, Seglea, Jondel, Cyrius,
Enochlau, Matthew Stannard, Giftlite, Benji Franklyn, Leyman, Aspenlogic, Pbryan, Rookkey, Fjarlq, Jason Quinn, AlistairMcMillan, Alvestrand, Edcolins, Wmahan, Pgan002, Latitudinarian, DragonySixtyseven, Maximaximax, Bodnotbod, Iantresman, Neutrality,
Urhixidur, Abdull, JamesTeterenko, Rhobite, Pjacobi, Vsmith, ArnoldReinhold, Abelson, Kwamikagami, Diomidis Spinellis, Coolcaesar, Smalljim, John Vandenberg, Polluks, Zr40, Martg76, Wrs1864, Pearle, Mdd, Jumbuck, PaulHanson, Walter Grlitz, Interiot, Ashley
Pomeroy, Apoc2400, Cliandis, Wdfarmer, LearnMore, Wtshymanski, Emvee~enwiki, Moshekam, Alexei Polkhanov, Mnemo, BDD,
Notjim, MIT Trekkie, Joelthelion, Forderud, Woohookitty, LOL, Armando, Bratsche, Qaddosh, Ruud Koot, Firien, Optichan, Eaolson,
Dtwitkowski, MarkusHagenlocher, Jon Harald Sby, Gimboid13, Debsdelectables, Don Bratt, Kbdank71, Mulligatawny, Sj, Koavf,
Staecker, Crazynas, Klonimus, Utuado, FlaBot, Daderot, RobertG, Fereidunian, Dsc~enwiki, Chobot, MithrandirMage, Githin, YurikBot,
Wavelength, Borgx, Splash, Ansell, Hydrargyrum, Gaius Cornelius, Shanel, NawlinWiki, Edinborgarstefan, Dogcow, Nick, ArsniureDeGallium, Jpbowen, Mikeblas, Zwobot, Leeroyjenkins, Mysid, TimK MSI, Thomas H. White, Dingy, Inconsequential, Wknight94, Avraham, Benyang, Light current, Raistolo, Janto, Tsunaminoai, Tarawneh, Rathfelder, Xyrex, Poculum, Junglecat, Mebden, Marra, SmackBot,
Pgk, KocjoBot~enwiki, Whithamcp, Gleask, Robsomebody, Gilliam, Folajimi, Honbicot, Thumperward, Rdchambers, PrimeHunter, Adpete, DHN-bot~enwiki, AKMask, Gsp8181, Monsuco, TKD, LouScheer, Mr.Z-man, Juhlster1021, MrRadioGuy, Cybercobra, Bovester,
HarisM, Andrei Stroe, Ohconfucius, SashatoBot, Esrever, Ozhiker, Kuru, Disavian, Sobullubos, NongBot~enwiki, Drae, J5hale3, Domitori, Aeons, Zureks, Eye heart pizza, Ntsimp, Schibs, PamD, Epbr123, Hcobb, DeePatton, Escarbot, LachlanA, Tweedman, Gioto, Guy
Macon, SummerPhD, 17Drew, Olexandr Kravchuk, Lperez2029, JAnDbot, Leuko, Harryzilber, MER-C, Kshuyler, Dsp13, Kschader, MSBOT, Stangaa, VoABot II, JoeBoxer522, Willy on Wheels over Ethernet, Japo, Nikosmastorakis, Geni-pmd, DGG, Dverma, Racepacket,
Sigmundg, NAHID, Greeney, Jim.henderson, Ethicalhacker, Rettetast, AnthonyMastrean, XanderJ, R'n'B, Erkan Yilmaz, RSRScrooge,
EscapingLife, Rlsheehan, Osvat, AleaJactaEst, Dtneilson, Jtbarr4, Psuar1, Crimson Twilight, Inwind, Dgoessling, VolkovBot, Shortride,
Leebo, Je G., TXiKiBoT, Yanw82, Guillaume2303, Krushia, LanceBarber, Yk Yk Yk, Truthanado, Mr. PIM, EmxBot, Matthew V
Ball, Technion, SieBot, Tiddly Tom, Sgg61991, Da Joe, Xvani, Brozozo, Nopetro, Mlongsho315, Herrnieman, Mkeranat, Vice regent,
Julie Dancer, Lardon10, IEEE07, Martarius, ClueBot, 1rankman, Aintneo~enwiki, Sabbah67, WaltBusterkeys, ImperfectlyInformed, Lantay77, Ottawahitech, Hrudaya, Rollinsk, Razorame, Stephengmatthews, BOTarate, Aleksd, StevenDH, Johnuniq, DumZiBoT, Alphaknave, XLinkBot, Pichpich, MystBot, ThatWikiGuy, Addbot, Chembeth, Knight of Truth, Fgnievinski, Hermite~enwiki, Wirpstein, WaltonBC, Lepsteinn, Borminjeth, Anterman, LaaknorBot, Koyle, KoyleJ, Asumboler, Borlandersja, HerculeBot, Suwa, Legobot, Luckas-bot,
Yobot, Pink!Teen, UltraMagnus, Nmaddali, Rubinbot, Faisal zubaer, Galoubet, AdjustShift, Chrisc62, Materialscientist, ArthurBot, Csrus,
Gsmgm, Xqbot, TinucherianBot II, Ultrasonic o ke, Quintus314, Sionk, Miym, Alam bakshi, RogerDP, Wizardist, Mmmeg, A. di M., FrescoBot, WikiDonn, Steve Quinn, Geek2003, DrilBot, TAeiluj, Pinethicket, I dream of horses, Jadedrick, Tinton5, RedBot, Noel Streateld,
Bradlito, Full-date unlinking bot, Jube82, Cnwilliams, Keri, Jaisaacs, SchreyP, Winjay, 092platinum, Lotje, Sanjaynediyara, Taiko3615,
564dude, Tbhotch, DARTH SIDIOUS 2, Galois fu, Mophoplz, Ssinha1981, Countblack, EmausBot, WikitanvirBot, Look2See1, Horndinkle, GoingBatty, 4meter4, Hhhippo, ZroBot, John Cline, Parsonscat, , Colejohnson66, Amr9090, ClueBot NG, MelbourneStar,
Raghith, Theleprechaum, Sebastian37, Cntras, JordoCo, Helpful Pixie Bot, Croben, Lowercase sigmabot, CiscoManager, M0rphzone,
PearlSt82, BBCLCD, PhnomPencil, Graham11, Megalibgwilia, Piguy101, S2piDLuveR, Chmarkine, WikiHannibal, Whym, TheUnnamedNewbie, Icemail, BattyBot, Khazar2, JYBot, Grzegorznadolski, Rp8083, Frosty, Stewwie, Jibujames, Rmartinezmo, Ugog Nizdast, Sarr X, Seppi333, Indian corruption reform, Americans that hate americans, Vocalwotan, Pakrual73, Ter M. Ahn, B35c713dca,
MicahNSisco, RandyAAHaag, Latin Pig, Sangram12, Vivek-jones, Mountaindew776, Ejazmahmood82.em, , Nadeem.abbasi459,
BD2412bot, Missconstreu, Heather-2004, Atom2494, Dentking07, KingJohnDavids, Buenaventura IEEE and Anonymous: 304
Interaction protocol Source: https://en.wikipedia.org/wiki/Interaction_protocol?oldid=531051444 Contributors: Michael Hardy, Pnm,
Andrewman327, Khym Chanur, Varjag, Danakil, Pegship, Fang Aili, SmackBot, JonHarder, MarshBot, TheAMmollusc, Erik9bot and
Anonymous: 2
International Organization for Standardization Source:
https://en.wikipedia.org/wiki/International_Organization_for_
Standardization?oldid=736982364 Contributors: Brion VIBBER, Zundark, The Anome, VincentV, Jagged, Eclecticology, Ghakko,
Mjb, Heron, Olivier, Frecklefoot, Patrick, Olrick, Cprompt, Nixdorf, Liftarn, SGBailey, Lquilter, Delirium, Plasticlax, R4f~enwiki,
Keichwa, Egil, Looxix~enwiki, Ahoerstemeier, Mac, Jpatokal, Notheruser, Yaronf, DropDeadGorgias, Glenn, Whkoh, Mkoval, LouI,
Kwekubo, Tobias Conradi, Hashar, Gingekerr, Slathering, Billdakelski, Jusjih, JorgeGG, Denelson83, PuzzletChung, MK~enwiki, Robbot,
Modulatum, Verbose~enwiki, Puckly, DHN, Wereon, Guy Peters, David Gerard, Ancheta Wis, Binarygal, Chinasaur, Bovlb, Andycjp,
Joeblakesley, CaribDigita, Maximaximax, Icairns, Jbinder, Maikel, Abdull, Bcordes, CALR, A-giau, Discospinster, John FitzGerald,
Luxdormiens, Bender235, Mr. Billion, IndianCow, MBisanz, Kwamikagami, Spearhead, Sietse Snel, Mqduck, Coolcaesar, Cwass, Shoujun, Bobo192, Smalljim, Minghong, Mdd, Ranveig, Jumbuck, Gary, PaulHanson, Stovetopcookies, Hohum, Mbimmler, Irdepesca572,
Stephan Leeds, Suruena, Kusma, KTC, IRbaboon, Jacobolus, Sid1138, Pol098, Before My Ken, Ruud Koot, Knuckles, MiG, Frungi,
Sega381,
, Graham87, Wbeek, Mulligatawny, Rjwilmsi, Seidenstud, Koavf, Strait, MZMcBride, Yamamoto Ichiro, Vuong
Ngan Ha, Guthardt, FlaBot, Ewlyahoocom, Japointe, Subversive, Lmatt, Crazeman, Thecurran, Ahunt, Chobot, Adoniscik, YurikBot,
Whoisjohngalt, RobotE, Jimp, RussBot, Bhny, Akamad, Manop, Gaius Cornelius, Rsrikanth05, Aeusoes1, Dugosz, Rashev~enwiki,
Denihilonihil, EEMIV, Lockesdonkey, DeadEyeArrow, Bota47, TimK MSI, Haemo, Lt-wiki-bot, Hayden120, WirelessMike, Katieh5584,
Nick knowles, Finell, Sardanaphalus, SmackBot, Alex1011, Eskimbot, Edgar181, IstvanWolf, Anastasios~enwiki, Chris the speller,
Octahedron80, DHN-bot~enwiki, A. B., Hgrosser, Writtenright, Stepho-wrs, Addshore, SundarBot, Cybercobra, Mleinart, Jon Awbrey, RayGates, Aaker, Evlekis, Charivari, Ohconfucius, Dspakman, SashatoBot, Derek farn, Autoterm, JackLumber, MilborneOne,
MonstaPro, 16@r, Peter Horn, MTSbot~enwiki, Dl2000, Mackan, DouglasCalvert, Joseph Solis in Australia, Namiba, Vargklo, Zarex,
JohnCD, Thylacoleo, Lazulilasher, Culverden, Mato, DumbBOT, Kozuch, Thijs!bot, Dasani, Hervegirod, Anjadrame, SomeHuman,
Escarbot, Lmaltier, Scepia, Olexandr Kravchuk, JAnDbot, HAl, Zorro CX, Magioladitis, SHCarter, Mclay1, TARBOT, Tedickey,
Stupefaction, Ashishbhatnagar72, Rukaribe, Rettetast, R'n'B, Erkan Yilmaz, J.delanoy, Mindgames11, Qwanqwa, Rlsheehan, Jesant13,
406
Jerry, LordAnubisBOT, Plasticup, Furrybarry, Cobi, Ljgua124, Ansiansiansi, Blah0401, DASonnenfeld, VolkovBot, TreasuryTag,
TXiKiBoT, K-car, ISAN-IA, Rick Jellie, Rbenech, Melsaran, UnitedStatesian, Yk Yk Yk, Altermike, Truthanado, Logan, C0N6R355,
John Larmouth, Bierstube Katzen Keller, EmxBot, SieBot, Jrats, Gerakibot, Caltas, Timothy Cooper, SuzanneIAM, LeadSongDog,
Flyer22 Reborn, Alexbrn, RW Marloe, BenoniBot~enwiki, OKBot, Svick, Anchor Link Bot, Danio, Bibliophylax, Jza84, Lindum,
Denisarona, Revelian, Emk, Martarius, ClueBot, Binksternet, WurmWoode, Mattgirling, Mild Bill Hiccup, Piledhigheranddeeper, Sv1xv,
Azalia1225, L.tak, BOTarate, Unmerklich, Kslall8765, Justwatchme, Silica-gel, XLinkBot, Snoopy99~enwiki, Delicious carbuncle,
Environ1561, Levic69, Dthomsen8, Mitch Ames, The Aviv, Alexius08, ZooFari, Addbot, AkhtaBot, Harish431, Kit.macallister,
RP9, Exor674, Tide rolls, OlEnglish, MuZemike, BasicBaer, Legobot, Luckas-bot, Yobot, Fraggle81, TaBOT-zerem, AnomieBOT,
Ichwan Palongengi, Rubinbot, 1exec1, Gtz, Jeni, International Electrotechnical Commission, Qdinar, Law, Justme89, Bluerasberry,
Winklerteen, G7046072, Xqbot, JimVC3, Capricorn42, AnonyPussycat, DSisyphBot, Gumruch, Nasa-verve, Omnipaedista, RibotBOT,
Apathy monk, Theifynia, FrescoBot, LucienBOT, Haeinous, Outback the koala, DivineAlpha, BlaF, Bazzer palm, Editor Lara, Tinton5,
Skyerise, RedBot, MastiBot, Adamlaskey, FoxBot, Seahorseruler, Chrisbud14, Rollins83, EmausBot, Kpuersh, Danieldavidturner76,
Ntizoglou, TuHan-Bot, Wikipelli, P. S. F. Freitas, HiW-Bot, ZroBot, John Cline, Newbiepedian, Dondervogel 2, H3llBot, Shmilyshy,
Andattaca2010, Donner60, Matsievsky, Chewings72, ChuispastonBot, Uziel302, TYelliot, ClueBot NG, Cwmhiraeth, Matthiaspaul,
LuisMMCortez, Widr, Anupmehra, , Gob Lofa, Sterling.M.Archer, George Ponderevo, Doseduk, Davidiad, Marcocapelle,
Whym, BattyBot, David.moreno72, AllenZh, Samuelled, Mutoso, Isoindia, Dexbot, Rezonansowy, BroadcastDonkey, Rp8083, Enoshd,
Ekips39, Kemmabrant, Ujjwal210, Camyoung54, BreakfastJr, EstonianMan, Michipedian, Tentinator, ArmbrustBot, Werddemer, Chris
Mchale, Kickn, No longer a penguin, Meowcatzmeow, Kristanashly, Trackteur, Rajesh kumar005, TheAmazingBear, Malarvihzi,
Carbonheliumnitrogen, Wong Angel, Stefantangen, Pixelized frog, Winterysteppe, Yashsaini24, Garmonjones, Grammmarrr, GreenC bot
and Anonymous: 364
International Telecommunication Union Source: https://en.wikipedia.org/wiki/International_Telecommunication_Union?oldid=
737354967 Contributors: Stephen Gilbert, Shii, Ben-Zin~enwiki, Liftarn, Lquilter, Yann, Glenn, Jiang, JASpencer, Thg, Radiojon, Itai,
Bevo, Topbanana, Jusjih, Denelson83, Rogper~enwiki, Bearcat, Robbot, Nurg, Postdlf, Varlaam, Ssd, Jfdwol, Alvestrand, Peter Ellis,
Tipiac, Gadum, Information Habitat, Bolo1729, Gdr, Piotrus, Andyabides, SimoM, Icairns, Mormegil, Poccil, Pmsyyz, Jordancpeterson,
Quistnix, Bender235, Swid, Violetriga, Dataphile, El C, Joanjoc~enwiki, Ren, Jumbuck, WideArc, PaulHanson, Guy Harris, Calton,
Alinor, Lugevas, Geraldshields11, Tomlzz1, Instantnood, Benoni, Armando, Knuckles, HappyApple, Eyreland, Jon Harald Sby, MarkPos, Mandarax, Ictlogist, Graham87, Dmountain, Mulligatawny, Rjwilmsi, Vegaswikian, Cat5nap, Mkehrt, FlaBot, Itinerant1, Anonym1ty,
Parutakupiu, RockOfVictory, Chobot, Frappyjohn, Volunteer Marek, Slimey.limey, YurikBot, Borgx, MGodwin, Rsrikanth05, Marcus Cyron, Maggu, Howcheng, Saper, BertK, Danlaycock, Tachs, TimK MSI, Ninly, Larroney, Bensons, Thomas Blomberg, Eteru, SmackBot, Unyoyega, Eskimbot, Mauls, David H, Donama, Kmarinas86, MalafayaBot, DHN-bot~enwiki, Addshore, DinosaursLoveExistence, Cybercobra, Derek R Bullamore, Ohconfucius, Ozhiker, John, CmdrObot, R9tgokunks, Usgnus, Bioran23, Cydebot, Sa.vakilian, Kozuch, Dweiss,
Rjm656s, Thijs!bot, ITU, Gkhan, Harryzilber, Jahoe, Dcollard, Avicennasis, Adam Grenberg, Xtifr, Ashishbhatnagar72, Crunkcar,
RockMFR, J.delanoy, BandwidthSeek.Net, Maurice Carbonaro, AKA MBG, Sukee3, ABlockedUser, VolkovBot, RingtailedFox, TXiKiBoT, Youlia~enwiki, JhsBot, Yk Yk Yk, Altermike, AlleborgoBot, Pigdog234, Byassine, SieBot, Yintan, D'Ranged 1, Alexbrn, Lightmouse, BenoniBot~enwiki, Kristine.clara, Taximes, Denisarona, Tuxa, Bwfrank, Tvol, Arcaist, DaveBurstein, Interfase, MusicTree3, L.tak,
Mykkerin, DumZiBoT, Antti29, DidiWeidmann, Dthomsen8, Jabberwoch, Good Olfactory, Addbot, Otisjimmy1, Zarcadia, NjardarBot,
Download, CarsracBot, Numbo3-bot, Lightbot, OlEnglish, Legobot, Luckas-bot, Yobot, , AnomieBOT, Rubinbot, Galoubet,
Xqbot, TheAMmollusc, Madjar, Davshul, The Evil IP address, Isheden, Omnipaedista, January2009, Karlstar, D'ohBot, OgreBot, 10metreh, Foxhound66, Jschnur, Lars Washington, Mentmic, Jonkerz, Lotje, LilyKitty, Danigro456, Bornae, Mean as custard, TjBot, Bhawani
Gautam, Dstone66, EmausBot, China Dialogue News, BillyPreset, Rajwhite, WikiAnthony, Peaceray, Dcirovic, Slawekb, Wikignome0530,
Erianna, Umni2, Josie62, Targaryen, ClueBot NG, Coleemma, FinFihlman, Hurunui99, Newyorkadam, Piersletcher, Johnwest1999, Helpful Pixie Bot, BG19bot, Vagobot, AvocatoBot, Compfreak7, Japinderum, Polmandc, Whym, Tosek, Mdann52, Julien Houle, PhoneGuy86,
Hucklebur, Potor111, SmileyLlama, Rp8083, TheBlueCanoe, Skt12345, ThePassengerOfFreedom, Theoretical.Ideation, 83000bastian,
Hendrick 99, Deepakkumarpooja.kumar3, Duckbeaver, Tahmina.tithi, JaconaFrere, Wyn.junior, MrFrosty2, Filedelinkerbot, Taimurijaz97, Pmajor48 and Anonymous: 124
Internet Source: https://en.wikipedia.org/wiki/Internet?oldid=737865353 Contributors: Damian Yerrick, AxelBoldt, WojPob, Lee Daniel
Crocker, Eloquence, Mav, Bryan Derksen, Zundark, The Anome, Koyaanis Qatsi, Tim Chambers, Amillar, Wayne Hardman, Andre
Engels, Danny, Vignaux, XJaM, Darius Bacon, Fredbauder, Christian List, Aldie, Gianfranco, Little guru, Karen Johnson, SimonP,
Shii, Mjb, Heron, Rsabbatini, Mintguy, Dwheeler, Montrealais, Roybadami, Hephaestos, Twilsonb, Steverapaport, Quintessent, Patrick,
Michael Hardy, Modster, Lousyd, GUllman, Rp, Kabads, Tannin, Ixfd64, Graue, Seav, TakuyaMurata, Delirium, Pde, Minesweeper,
Tregoweth, CesarB, Fantasy, Ahoerstemeier, Ronz, Nanshu, Baylink, Snoyes, Cferrero, Collin~enwiki, Angela, Mvelicko, Den fjttrade
ankan~enwiki, Jdforrester, Erzengel, DropDeadGorgias, Julesd, Bjb~enwiki, Pratyeka, Glenn, Jschwa1, Whkoh, Bogdangiusca, Cyan,
Poor Yorick, Vzbs34, Cortalux, Susurrus, Kwekubo, Andres, Cimon Avaro, Kaihsu, Evercat, TonyClarke, Cherkash, Eirik (usurped),
Mxn, Marymary, TheStick, Schneelocke, Administration, Mulad, Guaka, Nohat, Andrevan, RickK, Viajero, N-true, Jwrosenzweig, Savantpol, Fuzheado, Slark, Andrewman327, Greenrd, WhisperToMe, DJ Clayworth, Haukurth, Tpbradbury, Jake Nelson, Maximus Rex,
Saltine, Marshallharsh, Jnc, Mattworld, Populus, Samsara, Thue, Bevo, RanchoRosco, J D, Traroth, Joy, Fvw, Bloodshedder, Raul654,
Pakaran, Jerzy, Jusjih, Johnleemk, David.Monniaux, Frazzydee, Shantavira, RadicalBender, Northgrove, Pakcw, Robbot, Paranoid, Juro,
Pigsonthewing, Fredrik, Chris 73, Vespristiano, RedWolf, Chocolateboy, ZimZalaBim, Netizen, Yelyos, Nurg, Naddy, Modulatum, Lowellian, P0lyglut, Yosri, Rursus, Texture, Jre, Meelar, Bethenco, Diderot, Rasmus Faber, Davodd, 75th Trombone, Moink, Hadal, VincentZ, JesseW, Borislav, Roozbeh, Mushroom, ElBenevolente, Anthony, Lupo, Fab, Tsavage, Seth Ilys, Guy Peters, Wile E. Heresiarch,
Jleedev, Jooler, Tea2min, Alan Liefting, Stirling Newberry, Alexwcovington, Centrx, Giftlite, Jacoplane, Marnanel, Gtrmp, Awolf002,
Fennec, Kim Bruning, ShaneCavanaugh, Wolfkeeper, Luis Dantas, Kenny sh, Lee J Haywood, Orangemike, IRelayer, Bimach~enwiki,
Peruvianllama, Everyking, Avalean, Curps, Henry Flower, Wikibob, Herdrick, Patrick-br, Rick Block, Andris, Guanaco, Daveb, Sundar, MrSnow, Siroxo, Rchandra, Djegan, AlistairMcMillan, Macrakis, Solipsist, Alvestrand, Uzume, Lakefall~enwiki, Bobblewik, Ragib,
Golbez, Christopherlin, Scurra, Wmahan, Neilc, Stevietheman, Wikiwiki~enwiki, RWolf, Fishal, Gadum, Utcursch, Alexf, Knutux,
Slowking Man, Yath, Sonjaaa, LucasVB, Quadell, Antandrus, Beland, Joeblakesley, OverlordQ, Dnas, MistToys, Piotrus, Am088,
Jossi, Marcschulz, CaribDigita, Rdsmith4, Gsociology, Rattlesnake, Kevin B12, Bodnotbod, ICTlogist~enwiki, Marc Mongenet, Thparkth, Neonstarlight, Cynical, Gscshoyru, Neutrality, Urhixidur, KeithTyler, Joyous!, Goobergunch, Karstimmer, Klemen Kocjancic,
Syvanen, Ratiocinate, Chmod007, Zondor, Adashiel, Trevor MacInnis, TheObtuseAngleOfDoom, Grunt, Iceamephoenix, EagleOne,
Tobias Wolter, Bluemask, Millisits, Khefri, Mike Rosoft, R, Freakofnurture, Monkeyman, Sparky the Seventh Chaos, Jiy, GoodStu,
JoshG, Shadanan, MysteryDog, Noisy, RossPatterson, Discospinster, Solitude, Rich Farmbrough, Rhobite, Guanabot, NrDg, Hydrox,
Oliver Lineham, Pmsyyz, MCBastos, Inkypaws, Jonnny, Izwalito~enwiki, YUL89YYZ, Narsil, LindsayH, Xezbeth, AlanBarrett, Gronky,
Stereotek, SpookyMulder, Bender235, ESkog, Cyclopia, Zaslav, Kbh3rd, Goplat, Klenje, Violetriga, Billlion, Brian0918, Aranel, Mr.
407
Billion, Livajo, JustPhil, Kwamikagami, Tverbeek, PhilHibbs, Shanes, Spearhead, Art LaPella, RoyBoy, Matteh, SEOXpert, Willemdd,
Coolcaesar, Villafanuk, Jpgordon, Bobo192, Nigelj, NetBot, Smalljim, Orbst, BrokenSegue, Tronno, Shenme, Viriditas, Tmh, Matt Britt,
Maurreen, Jag123, Jkh.gr, Man vyi, Jojit fb, Rajah, Cheung1303, Twobells, Minghong, John Fader, Obradovic Goran, GMR5, Wrs1864,
Helix84, Haham hanuka, Ral315, Pearle, Gsklee, Jonathunder, Mdd, Annexia, Merope, HasharBot~enwiki, SuperJake, Espoo, Jumbuck,
Danski14, Poweroid, Mithent, Alansohn, Gary, Goodnewsfortheinsane, Anthony Appleyard, Trollminator, Blahma, SnowFire, Dr Zen,
Guy Harris, Fadookie, Alyeska, Diego Moya, Mr Adequate, Jeltz, PatrickFisher, Andrewpmk, Verdlanco, Plumbago, Sl, Andrew Gray,
ABCD, Riana, Ahruman, Echuck215, Lightdarkness, Smoothy, Gareld226, InShaneee, Cdc, Malo, Bart133, DreamGuy, Lugevas, Marianocecowski, ClockworkSoul, Saga City, Rebroad, Knowledge Seeker, ReyBrujo, Stephan Leeds, Dtcdthingy, Evil Monkey, Max Naylor,
Jwinius, RJII, Olavandreas, Grenavitar, CloudNine, Drat, Sciurin, GregNorc, Mcmillin24, Guthrie, The1pato, EventHorizon, Computerjoe, Reaverdrop, Freyr, Versageek, MIT Trekkie, Justin5117, Redvers, Voxadam, YixilTesiphon, Ceyockey, Richard Weil, TimMartin, Kznf, Kenyon, Squiquifox, Scottbell, Sharprs, Stephen, Stuartyeates, Weyes, Thryduulf, Angr, Kelly Martin, The JPS, Simetrical, Bushytails, OwenX, Vidgmchtr, KidAirbag, Kupojsin, Mindmatrix, Camw, LOL, Yansa, Percy Snoodle, Guy M, Plek, Stickguy,
Bratsche, Wutasumi, Pol098, ^demon, Ruud Koot, Iconoclast~enwiki, MONGO, Pchov, Eleassar777, Kmg90, Schzmo, Foodmarket,
Bbatsell, Ppk01, I64s, Striver, Bluemoose, Complex~enwiki, Meneth, Sega381, Plrk, Waldir, Zzyzx11, Jonnabuz, Wayward, Wisq, Palica,
Driftwoodzebulin, Stevey7788, RichardWeiss, Azkar, KrisW6, Saposcat, Graham87, Marskell, GeorgeTheCar, Magister Mathematicae,
Tovias, BD2412, Galwhaa, Chun-hian, Kbdank71, FreplySpang, RxS, Reisio, Drbogdan, Sjakkalle, Rjwilmsi, Koavf, KYPark, Avochelm,
Vary, Bob A, Eyu100, Amire80, Biederman, Carbonite, Tangotango, Stardust8212, Sdornan, Captain Disdain, Lordkinbote, Vegaswikian,
Zizzybaluba, Nneonneo, Crazynas, HappyCamper, Ligulem, DoubleBlue, MarnetteD, GregAsche, DirkvdM, Renaissance Man, Yamamoto
Ichiro, SNIyer12, Leithp, Exeunt, Jash, FayssalF, Titoxd, Kiba, Splarka, TekeeTakShak, Mirror Vax, Mark Elliott, Soph, JeremyMcCracken, Doc glasgow, HJV, Crazycomputers, GnniX, Nivix, Chanting Fox, Isotope23, AJR, JIMBO WALES, Jsheehy, RexNL, Gurch,
Redwolf24, Jimbo D. Wales, Valermos, President Rhapsody, Brendan Moody, Sstrader, Seinfreak37, Intgr, Goeagles4321, Natalina smpf,
Daveg, Terrx, EronMain, Alphachimp, Kri, Mallocks, I Am Not Willy On Wheels, Miy900, Coolhawks88, Antimatter15, King of Hearts,
CJLL Wright, Chobot, Jersey Devil, Frappyjohn, Evilphoenix, JesseGarrett, Mmx1, Bgwhite, EvilZak, Gwernol, Wjfox2005, Faseidman,
Zerak-Tul, EamonnPKeane, Roboto de Ajvol, YurikBot, Wavelength, Klingoncowboy4, Hawaiian717, Pile0nades, Kinneyboy90, Sceptre, Blightsoot, Hairy Dude, Jimp, Brandmeister (old), Tznkai, Jetheji, MMuzammils, RussBot, Jtkiefer, Muchness, Peter S., Severa,
Anonymous editor, Briaboru, Chroniclev, Expertu, Gardar Rurak, SpuriousQ, Fabricationary, Oliverisyourdaddy, Samuel Curtis, WayneRay, Akamad, Dotancohen, Chensiyuan, Stephenb, Manop, Barefootguru, CambridgeBayWeather, Ihope127, MaxD~enwiki, Bisqwit,
Morphh, Wimt, Big Brother 1984, United88, NawlinWiki, Swollib, Xkeeper, R Pollack, 0waldo, Hm2k, SEWilcoBot, Wiki alf, Daemon8666, Obarskyr, RattleMan, Avuton, Grafen, Thatdog, Dforest, Nathan8225, Jaxl, Dijxtra, Kvn8907, DarthVader, AlMac, Justin
Eiler, Chunky Rice, Robchurch, Barberio, Thiseye, Rbarreira, Anetode, Entirety, Jpbowen, Dooky, PhilipO, Dr Debug, Moe Epsilon,
Mikeblas, Misza13, Tony1, Zwobot, Supten, Epa101, Aaron Schulz, Mditto, Samir, Deku-shrub, Roy Brumback, BOT-Superzerocool,
Wangi, Karl Meier, DeadEyeArrow, Psy guy, Bota47, Abrooke, Blowdart, Oliverdl, Haemo, CLW, INaNimAtE, Macs~enwiki, Lumaga,
Max Schwarz, Wknight94, Avraham, Zeno McDohl, Eurosong, FF2010, Zombi333, Emijrp, Rdmoore6, Zzuuzz, Lt-wiki-bot, Mristroph,
Shengii, Bayerischermann, Ageekgal, Nikkimaria, KieranL, Theda, Xaxafrad, Jolt76, Gppande, JuJube, GraemeL, Jecowa, Speculatrix,
JoanneB, Gwylim a, Alias Flood, Hrvatska, Smurrayinchester, Peter, Willtron, JLaTondre, RenamedUser jaskldjslak904, Spliy, ArielGold, Ilmari Karonen, RunOrDie, Zeroinbarnotation, Kungfuadam, Djr xi, Ben D., Cotoco, Jasn, NeilN, ChewT, Maxamegalon2000,
MansonP, Auroranorth, DVD R W, Finell, CIreland, Dusso Janladde, Trekkie711,
robot, Sycthos, Computageek95, Dylanthalus,
Jmchu, Veinor, Politik426, Themightyone, SmackBot, YellowMonkey, Elonka, Ashenai, Jamott, Classiclms, KMcD, Bobet, TheFloppyOne, Andre3k1, Incnis Mrsi, Reedy, Tarret, Prodego, InverseHypercube, KnowledgeOfSelf, VigilancePrime, McGeddon, Kenmcfa,
CopperMurdoch, Ederjar, Tale, Unyoyega, Pgk, Vald, Shervink, Jacek Kendysz, Kilo-Lima, KocjoBot~enwiki, Millifoo, Clpo13, Midway,
Fulldecent, Yelgrun, Mmeri, Delldot, Drzoidberg~enwiki, Irrelivant, MindlessXD, Srnelson, Vilerage, Parkinn, TheDoctor10, Edonovan,
Edgar181, MelancholieBot, Tommstein, Junipercwc, Xaosux, Cachedio, PeterSymonds, Ohnoitsjamie, Folajimi, Choalbaton, Jack slack,
Drn8, Chris the speller, Bidgee, Persian Poet Gal, Bad Bud, Oli Filth, MalafayaBot, Keryst, Sadads, 000o, Oni Ookami Alfador, Omghgomg,
TheLeopard, Omniplex, DHN-bot~enwiki, ZakTek, Resslerdylan, Hallenrm, Antonrojo, Hiii98, Invenio, Firetrap9254, A. B., Jnavas, Gracenotes, Nintendude, Yanksox, Andyiou52345, Mikker, Reaper X, Sleepyasthesouth, Chendy, Suicidalhamster, Mike hayes, Newmanbe,
Peter Campbell, Zsinj, Dethme0w, Can't sleep, clown will eat me, Jahiegel, Mulder416, Gamahucheur, Jorvik, Frap, SimonShlosberg,
Proofreader, Cooss, Atropos, Discharger12, Vulcanstar6, Nixeagle, Gareld 80, JonHarder, Voyajer, Dess~enwiki, TheKMan, Rrburke,
TonySt, Xyzzyplugh, Harlequinn, Chcknwnm, Mr.Z-man, Phaedriel, Khoikhoi, Stormy Waters, KnowBuddy, BWD, Krich, Wonderstruck,
Warhol13, Muraad kahn, E. Sn0 =31337=, Cybercobra, Irish Soue, Khukri, Digresser, Hhhhhh, Wikipediaphile, Makemi, Tenpin477,
Nakon, Savidan, Mikefzhu, Valenciano, Funky Monkey, Flyingember, MichaelBillington, EVula, Blake-, Nick125, Drivera90~enwiki,
Rajrajmarley, Orbitalwow, Dvc214, Chalybs, Dreadstar, Eran of Arcadia, Kirils, Invincible Ninja, ShaunES, Mini-Geek, Lcarscad, DylanW, Clean Copy, Weregerbil, Astroview120mm, Xagent86, Drphilharmonic, Jklin, AndyBQ, Acdx, Where, Mitchumch, Reliablesources,
Curly Turkey, Pilotguy, Kukini, Wossi, Ohconfucius, Cyberevil, Fujisher, The undertow, SashatoBot, Kostas.karachalios, Untame Zerg,
Rory096, Robomaeyhem, Quendus, Harryboyles, Rklawton, Locatelli, Atomic23112, Kuru, John, Allyoursanity, AmiDaniel, Bordello,
KenFehling, OFX, Plugimi, Vgy7ujm, Soptep, J 1982, Heimstern, Loodog, Kemkem, Gobonobo, EKN, Atgthatsme, Ekjon Lok, Paladinwannabe2, Johnnyssh, Soumyasch, Martysanders, Sir Nicholas de Mimsy-Porpington, Breno, Cpom, Isomega, Tktktk, Aujlakam,
Linnell, Benesch, Shadowlynk, JoshuaZ, Edwy, Chodorkovskiy, Cyberitis, Accurizer, Hadrians, Goodnightmush, Mr. Lefty, SpyMagician,
Hazr0x, Intiendes, Kinghy, HardwareBob, Entrpy, 16@r, Matthewccna, JHunterJ, Drew46, Trashday03, Agathoclea, Andypandy.UK,
RunningBon, Slakr, Stwalkerster, Shangrilaista, Luckycatfu, Muadd, Grandpafootsoldier, Charles7~enwiki, Dicklyon, Ambrose Brightside, Larrymcp, Spazm, Maksim L., Waggers, Nuutti, Anonymous anonymous, UpTheBracket, LPedroMachado, Ryulong, Fluppy, Dr.K.,
RichardF, Citicat, Jose77, Samurai107, Kvng, Rcannon100, Dl2000, Andreworkney, Nathanrdotcom, Stephen B Streater, Levineps, Hetar,
Saxmaniac777, JustJoe, OnBeyondZebrax, HisSpaceResearch, Fan-1967, Iridescent, Kencf0618, Missionary, Joseph Solis in Australia,
JoeBot, Kernow, Shoeofdeath, Pegasus1138, NCDS, Igoldste, Lenoxus, Sam Li, Charlesincharge, Alem800, Bandan, Az1568, Linkspamremover, Shawry 00, FancyPants, Woodshed, 2dogs, Tawkerbot2, Dlohcierekim, Yashgaroth, Daniel5127, Filelakeshoe, Nikk32, Erikringmar, Jworld2, Shebaboy102, Mr.happy~enwiki, Ryt, Lahiru k, Orangutan, SkyWalker, Taskmaster99, Teamcoltra, Didimos, Anthony22,
Wafulz, Centered1, Zarex, Picaroon, Richemond~enwiki, CWY2190, Eltonhoyantam, GHe, KnightLago, Stateguy, Bbao, Dgw, Green
caterpillar, Lemmio, Lentower, INVERTED, Moreschi, Old Guard, Casper2k3, Ravensfan5252, Www06, Linux Rocks, Tex, Helios Entity 2, Oden, MikeWren, Phatom87, AndrewHowse, Cydebot, Karimarie, Cahk, Mblumber, Peripitus, Ryan, Mike Christie, Johnny-5,
Steel, UncleBubba, Chris21192, Gogo Dodo, BlueAg09, Icewindresnow, Flowerpotman, Llort, ST47, Xeo-Wizzard, WikiWikiMan,
Eu.stefan, Tkynerd, Cbaxter1, SymlynX, Tawkerbot4, DumbBOT, Phydend, Nathan nfm, Dbeilhartz, Grison~enwiki, K00LKid, ZerD,
Inkington, Waxigloo, Kozuch, NorthernThunder, Toolingu, Omicronpersei8, JodyB, Niubrad, Sthow, Hydrajr, Satori Son, Khanlarian,
MeBee, FrancoGG, Thijs!bot, Skb8721, EthanNeuen, Biruitorul, Ph.D.Nikki, Coelacan, Nitishg, Pinaki ghosh, TonyTheTiger, Tkeller,
Staile, Fountain09, Daniel, PureLogic, Kablammo, HappyInGeneral, Serpent-A, Gamer007, Mojo Hand, Asmo86, Kevkoch5, Wompa99,
408
Headbomb, KillaDilla, Pjvpjv, West Brom 4ever, WillMak050389, PizzaMan (usurped), Tapir Terric, SomeStranger, TheJosh, Mr pand,
Merbabu, Irvingbird, Dagvadorj, Jeph paul, Sinn, NigelR, Dinardi, Strongriley, AgentPeppermint, Zachary, Tzhourdeka, Adw2000, Tocino,
GreatLiver, Central2, Insiriusdenial, Dawnseeker2000, Natalie Erin, SignorSimon, Navigatr85, AlefZet, Escarbot, Oreo Priest, Cyp01,
Handface, Mentisto, Porqin, WIkiHorseMan, Sunshine22 858, KrakatoaKatie, Gossamers, AntiVandalBot, Speedysam, AbstractClass, Jsnruf, Majorly, Yonatan, PARA19, Gioto, Luna Santin, Widefox, Kramden4700, BossOfTheGame, Opelio, Asdfghty, SummerPhD, Scrolls,
Bigtimepeace, Grich, Monsier Pie, CobraWiki, Quintote, Joelscorp, Dr. Blofeld, Autocracy, Readro, Jj137, Nycceo, Scepia, Smartse, Dylan Lake, PhJ, Geape, Graham Clark, Malcolm, Julie Deanna, Spencer, RajeshPandey, Madmax vii, Arx Fortis, Zidane tribal, Myanw, TI85,
Canadian-Bacon, Kariteh, Yet-another-user, JAnDbot, Harryzilber, Pguerra, Kaobear, Moe kuwait, AaronKaplan, MER-C, Sonicsuns, The
Transhumanist, Malnourish, Rockhall, Tech2blog, Gamefreek76, H3llbringer, MODS=FAIL, Andonic, Naugahyde, Mwarren us, Ytmnd6,
Martinkunev, Bigwig77, Pkoppenb, Dream Focus, Kirrages, Paladin656, , .anacondabot, Acroterion, Yahel Guhan, Couchpotato99,
Peteark, Freshacconci, Sinnerwiki, FaerieInGrey, Logan.aggregate, Captainpancreas, PrimroseGuy, Canjth, Pedro, Mrcharliexcore, Babyface123, Bongwarrior, VoABot II, Junie dilitori, Hhhhgoteam, AznShortBoi8021, VRoscioli, Rpgprog, Rscash22, Doug Coldwell, Rivertorch, Jops~enwiki, Michaelhaslip, Tedickey, Xeddy, Dinosaur puppy, Epidown, Bookuser, Prestonmcconkie, Tomatoe, Morganp7,
Tokyogirl119, Djjkxbox, Indon, Srice13, Animum, Subatomicguy, SSZ, Hekxcieksdl, Shady Hippo, Mapper76, Loonymonkey, Whiney,
M8al, Cpl Syx, Interop, Spellmaster, 3idiot, Jacobko, Arfan, DerHexer, Kgeischmann, Wikigreatest, Ostaph7, Bitbit, Aviaris, Abbos,
HiB2Bornot2B, B9 hummingbird hovering, Stephenchou0722, Timknell, EtienneDolet, Hdt83, MartinBot, Michael Podgorski, Sjjupadhyay~enwiki, Pagw, BetBot~enwiki, You must have cookies enabled to log in to Wikipedia., Jay-d123, Poeloq, Piuneer, Aladdin Sane, Lol at
Lilo, Sl021, Rettetast, Juansidious, 424242, Sm8900, Mschel, Zhente, CommonsDelinker, AlexiusHoratius, Deagro, JMJimmy, PrestonH,
Whale plane, Thewallowmaker, Smokizzy, Lilac Soul, Siliconov, Pomte, Mikaida, RockMFR, J.delanoy, Trusilver, AstroHurricane001,
Adavidb, UBeR, Numbo3, Zib redlektab, Hans Dunkelberg, Piercetheorganist, Maurice Carbonaro, All Is One, Public Menace, MoogleEXE, Jesant13, Mike Cherim, Jreferee, Mike.lifeguard, Octopus-Hands, Golfballock, Enchantian, Monkeyman393, Katalaveno, Smeira,
Guade00, SpigotMap, Starnestommy, Ryan Postlethwaite, J.puckett, Jigesh, Mikael Hggstrm, SparsityProblem, Gurchzilla, Cdxnolan,
AntiSpamBot, RaptorRobot, The Transhumanist (AWB), Darrendeng, NewEnglandYankee, Urzadek, Drosera~enwiki, Aervanath, SJP,
MKoltnow, Charlesblack, Olegwiki, Rinothan2, Xeysz, Laboobala, Dodecki, Jonathan P. Chen, Layzner, STBotD, CF90, WJBscribe,
Uberdude85, Operator tore~enwiki, Tiggerjay, Rebent, Student17~enwiki, Jamesontai, Remember the dot, KatherineTurnbull, Wikidogia,
Jevansen, Vanished user 39948282, Gimmeurm0ney, Diletante, RadiantSeabass, Bonadea, Jao Gonzales, Use the force, Nessdude14,
Link 991, Editmachine, Marcin Suwalczan, West wikipedia, Dorftrottel, Bwaav, RjCan, Steinberger, Mlewis000, Funandtrvl, KillerCRS, Spellcast, Lights, X!, Devonreilly, King Lopez, VolkovBot, TreasuryTag, Larryisgood, Thedjatclubrock, Raza514, Orphic, Derekbd,
MarcRS, Imacg3, Reymysterio01, TheRhani, Bry9000, Gluttenus, Majoreditor, MagicBanana, Freewayeric, LeilaniLad, Barneca, Maxtremus, Philip Trueman, JayEsJay, Eric outdoors, Drunkenmonkey, Domstabsdogs, Frigglinn~enwiki, TXiKiBoT, Ageing Geek, Mercurywoodrose, Berk, DaManWitDaPlan, Maximillion Pegasus, Antony, joseph, Tomsega, Sarenne, GDonato, Miranda, Dchall1, Wikidemon,
Ann Stouter, Anonymous Dissident, Stagefrog2, Qxz, Someguy1221, Taimaster, THEemu, The-secret-asian-man, Anna Lincoln, Kidutsu,
Lradrama, Sidepocket, JhsBot, Wordsmith, Fortethefourthversion, Irtrav, Canaima, Manchurian candidate, Drappel, Sawdon2, Bob f it,
Cremepu222, Frank G Anderson, Snoom haplub, Maxim, FlushinQwnzNyc, Olgerd, Shane3x, Wikidrone20000, Maksdo, Flash man999,
RadiantRay, Aphilo, Mwilso24, Cybaxter, Wenli, Corrupt one, Jaqen, InMooseWeTrust, Arekku`xx, Usergreatpower, Acprisip, Valkyryn,
W1k13rh3nry, WJetChao, Synthebot, BrianRecchia, Mgoerner, Ahmad halawani, Falcon8765, Purgatory Fubar, Softlavender, Network
master, Brianga, Zungaphile, Qworty, Ebaur5, AlleborgoBot, Joel delahunty, Sfmammamia, Tvinh, FlyingLeopard2014, EmxBot, Samj72,
Schoolproject2, D. Recorder, Berro9, Kbrose, HarryMcDeath, Rockinduck, Gantster, Chime Shinsen, STA654, Hegiiman, SieBot, Grassmaker, Kevin66, Richard Ye, Calliopejen1, Tiddly Tom, Moonriddengirl, Euryalus, Kwirky88, BotMultichill, Gannzor, Gnoluyr, S M
Woodall, Krawi, Harrystown, Geekmax, Lemonash, Callipides~enwiki, Gerakibot, Missy Prissy, YourEyesOnly, Parhamr, Caltas, Perspecto, Jacotto, Arsenal0328, Dinestysfaith, Lennartgoosens, Luxurius, G0dsweed, Knows lots, The Flying Purple Hippo, Maddenplayer,
Ph1r35p4wn, Excelsior f, Spedwehavedisabilaty, Foboy, Purbo T, Arda Xi, Keilana, Carmen.banea, RucasHost, NickD310, Pxma, Hobbit
ngers, Shreyash02, Tiptoety, Radon210, Oda Mari, Elcobbola, Elmidmibbs, Yatesie, URBOSAUR, Hiddenfromview, Jazzilla, Tuuuuuuuubes, Diverock, Puremind, Scott981992, Krapface, Aruton, Makemebad~enwiki, Oxymoron83, MangaFreak0, Smilesfozwood, AngelOfSadness, Nuttycoconut, Sparsh717, Lightmouse, Malunis T, KathrynLybarger, Yamaka122, Ceas webmaster, BenoniBot~enwiki, Poserxox, Dillard421, Stephen Shaw, Svick, Leonidasthespartan, Promodulus, C'est moi, Spartan-James, JohnnyMrNinja, Anchor Link Bot,
IamYossarian, Modelun88, Tfcollective, Wiggleintatter, Wisejoker, Wiknerd, Maoosnik, Dust Filter, Altzinn, Justin050190, Brandork,
DavidJGW, Saghar2, Moarmudkipzlulz, Jons63, Into The Fray, PerpetualSX, Velvetron, Skyhuperut, WikipedianMarlith, Mr. Granger,
Twinsday, ClueBot, SummerWithMorons, Rumping, Noorkhanuk85, PipepBot, The teller of all 666, Jumborulz, UniQue tree, Ankiththegreat, The Thing That Should Not Be, ArdClose, Theguns, Deedub1983, Enerccio~enwiki, NPhoenix, PopeMas214, Sukmas214, EoGuy,
Bhuvanneshsat, Jayan13, Imthesmartdude, Supertouch, SchulteMAS214, FundieBuster, Shade11sayshello, Longcatislooooooooooooong,
Wiki Edit 12, Meekywiki, Bookh, Bennettchipper, JRod451, Brezzo, Der Golem, Justin.purvis, Gingaspice, Wardron, Cameronmas214,
Regibox, Kingbob2, Popedawg, CounterVandalismBot, We4reLegion, Niceguyedc, HulleGranz, Italianboy931, Eybaybay, Goel madhur,
Jskleckner, Trivialist, Allr0und, Logan590, Marklar689, Sup chily monster, SimpleParadox, Cirt, Istiamar, Shantu123, Puchiko, Edwina
Storie, Liddlerebel, Breakmoved, Blossom the Awesome, DragonBot, Excirial, OracleGD, Oldrockx666, Cgeorge316, Joeikin, Cam809,
Danscool, Chotisornmas214, Technobadger, Raydomingo, THEODORMAS214, Suttipongkanasaimas214, Xklsv, Bentonmas214, Cenarium, Dpiccuirro, Not Zilla3, Jotterbot, LOLPEAR, Hardcoregayslaveman, Jp5508, Mrguythefourth, Jivadent, Joke321~enwiki, I amm
Beowulf!, Kuka369, CMW275, Dekisugi, Greatyingsock, Seth662, Dorgan65, Pamela Gardiner, Thehelpfulone, Expert at this, Thingg,
Ominousguardian, Tehmechapope, Aitias, YTMND64, Murali nmv, Musicmaniac15, NitroOx, Dickguertin, UrsaLinguaBWD, PCHSNJROTC, Rasmasyean, Burner0718, Vybr8, Grey666, Relly Komaruzaman, Oogadabaga, Slayerteez, Wawplok, Pianokid54, Psychcf,
Anonymasity, Zavon25, Rawrnessalphy, Spick And Span, John0101ddd, Dryice2ooo, Marcusvtos, Vjlenin, Gblxyz, Tylermillersucks, Jade
wezel, Jsoer, Rorenc, Codemastercode, Mangy Cheshire Cat, Freshbakedpie, Chabby, Petchboo, Whitehorse1413, Clothed so hardsm,
Little Mountain 5, Rreagan007, Sloud74, Avi1111, Good Olfactory, BK08, Eaaiscool, Kbdankbot, Blcarson, Bluejm2, Grayfell, Phillejay, Jkasd, Mabdul, Hirschtick3, Jgeer, Bandj, Capouch, M.nelson, Hyperthermia, Zellfaze, Sibbic, Bigbrotha3, Tothwolf, Blethering
Scot, AnotherDeadPerson, Vocation44, Technician2, Damiens.rf, CarsracBot, Joycloete, AndersBot, Fottry55i6, Favonian, Amitesh3011,
Guydrawers, Numbo3-bot, St ttb, Equilibrium007, Rehman, WQDW412, Lightbot, DigitalSorcerer, SasiSasi, Jarble, JEN9841, Drew
thomas amirault, LuK3, Pointer1, Publicly Visible, Yobot, TaBOT-zerem, The Grumpy Hacker, Pineapple fez, Rud Hud Hudibras,
EnochBethany, KamikazeBot, Timir Saxa, , Squish7, Nybiker1, OregonD00d, AnomieBOT, Andrewrp, 1exec1, Jim1138, 90,
JaredInsanity, Tehori, Wikisanchez~enwiki, EryZ, RandomAct, Mahmudmasri, SusanBrackman, Citation bot, Carlsotr, Lord Aro, ArthurBot, Quebec99, LilHelpa, Xqbot, Agather, PabloCastellano, Sman24, Khajidha, TechBot, DSisyphBot, Jmundo, Marxercise, Gahuntly,
GrouchoBot, Solphusion~enwiki, Eriktoto, Brandon5485, Mark Schierbecker, RibotBOT, SassoBot, Kesaloma, AlexPlante, Yoganate79,
Stratocracy, Jangirke, Ronz91, Justinwiki324, Natural Cut, Erik9, HackerOnSteroids69, Thinker jones, CommodoreAngryy, Dan larsen,
Cocklip, Jugdev, GliderMaven, 802geek, Tiramisoo, W Nowicki, Flubberdubbe, Raznice, Hunter-Ing, Bambuway, Louperibot, Cita-
409
tion bot 1, Manywindows, Littleduty2, MacMed, I dream of horses, ChrisJBenson, LittleWink, Spyke411, Rafaelluik, Lorenzocantoni,
Dana60Cummins, Eddowii, Wonsoh, Beao, Computerquip, Zhonghuo~enwiki, Bband11th, Ivasykus, Orenburg1, FoxBot, TobeBot, Trappist the monk, DriveMySol, TangoFett, Lotje, Jarmihi, Duoduoduo, Phil A. Fry, Kitfoxxe, Tbhotch, Mileshalverson, FelixtheMagnicent,
RjwilmsiBot, TjBot, Ripchip Bot, HeinzzzderMannn, EmausBot, John of Reading, WikitanvirBot, Timtempleton, Tallungs, Dewritech,
Sharkticon Guy, Roscheray, Faolin42, MechaWave, Dcirovic, Gagarine, P. S. F. Freitas, Jasonanaggie, Mz7, Eagardea, Lolnob, Checkingfax, Liquidmetalrob, Bcanoerrecart, NexCarnifex, BWP1234, Ora Stendar, Aronoel, H3llBot, Drangob123, SporkBot, Rapidosity,
TcomptonMA, W163, Gsarwa, Septuaginta, Bomazi, ChuispastonBot, GermanJoe, NorCal764, Knochen, Senator2029, Will Beback Auto,
Jwhimmelspach, ClueBot NG, Cispare, Michaelmas1957, Incompetence, Odisha1, Movses-bot, Wikifun95, Dubious Irony, Frietjes, Cntras, Hazhk, Aurora Glory Paradise, Joshua Gyam, Jebethe, Sirkh1, Aurelie Branchereau-Giles, Helpful Pixie Bot, Wbm1058, Bibcode
Bot, Someone35, Areeb cool, Anagramology, BG19bot, Pappy333, Flekkie, Wri0013, Kndimov, AvocatoBot, Zerbu, Davidiad, Bereziny,
Compfreak7, Cadiomals, Enervation, Floating Boat, Bfax, Zmasterodinternetz, In4matt, Mikeanthony1965, Meclee, Hamish59, Maurice
Flesier, Merritttttt, Minsbot, Oleg-ch, Bonkers The Clown, Pskelkar74, MeanMotherJr, Da9iel, ChrisGualtieri, Rezonansowy, Mogism,
Sri555666, Coolness107, Jemappelleungarcon, DouglasDean, Paspie, Jonhope123, Jo-Jo Eumerus, Combating Ignorance, NickKrammes,
Zalunardo8, Chrono85, Jennpliu, Neo Poz, Liketotaly, EllenCT, OldFishHouse, Thevideodrome, Atotalstranger, Bhasinnitish, Whizz40,
Fixuture, Abhikpal2509, Legendiii, Concord hioz, Monkbot, John Ozyer-Key, Hedieh Taraghi, Michael F 1967, Vincent60030, Prisencolin,
Evidense, YJAX, User26954344524345, Ithewanderer, Daniela C DeMaria, Aethyta, Radawebs, ChamithN, DangerousJXD, None159,
Rpot2, Lord Subro, Jlewis144, TechnologyExplorer, Kaufmanitay, Ermagerd117, StanfordLinkBot, Craftdraw, SoSivr, Rajahllame, Lymaniy, Bryte507, Shueman117, Abb2webb, Hungryce, Prinsgezinde, KasparBot, MB298, , SandipBhandari12,
Arifys, Fdfexoex, ScholarM, Sandenig, Chenthil Vel, Singular Near, Hhuan, Zerogravity89, GreenC bot, Robot psychiatrist, Outaouaisregina, Gzkefpro, Motivao and Anonymous: 2056
Internet Control Message Protocol Source: https://en.wikipedia.org/wiki/Internet_Control_Message_Protocol?oldid=729681745 Contributors: The Anome, Drj, Wayne Hardman, Matusz, Fubar Obfusco, William Avery, PeterB, SarahEmm, Nixdorf, Shellreef, Kku,
Jnc, Robbot, Chealer, Fredrik, Romanm, Tea2min, Alerante, Mintleaf~enwiki, Niteowlneils, Beowulf king, Bgraabek, Bumm13, Huwr,
Anggarda, Canterbury Tail, Monkeyman, JTN, Pmsyyz, Vsmith, CanisRufus, Sietse Snel, Robotje, Polluks, Wrs1864, Jumbuck, Poweroid,
Caesura, Suruena, Grenavitar, Voxadam, Kenyon, S.emmerson, Nuno Tavares, Woohookitty, RHaworth, DrThompson, Fbriere, Graham87, Qwertyus, Tlroche, FlaBot, Fresheneesz, Sioux.cz, Alvin-cs, Chobot, YurikBot, Hawaiian717, Me and, Jengelh, Voidxor, SixSix,
DeadEyeArrow, Antiduh, ArielGold, TuukkaH, Mr link, KocjoBot~enwiki, Tjpayne, Hardyplants, Jasminek, Joseanes, Plustgarten, Vinaiwbot~enwiki, Ugur Basak Bot~enwiki, Oskilian, Mahboud, Manifestation, Celtkin, Kvng, Courcelles, Unixguy, WeggeBot, Phatom87,
Cydebot, UncleBubba, Verdy p, Quibik, Thijs!bot, Dark knight, AntiVandalBot, Bradycardia, JAnDbot, Enjoi4586, Kgeischmann, Gwern, Ageekymonk, Verdatum, J.delanoy, Mange01, Athaenara, Andareed, Dnevil, VolkovBot, TXiKiBoT, Naveenpf, Goreatic, Piper8,
Whbstare, Rjgodoy, YordanGeorgiev, AlleborgoBot, Logan, Pointy haired fellow, Kbrose, BobHackett, SieBot, VVVBot, Flyer22 Reborn, Tstojano, Ajk91, Denisarona, Martarius, ClueBot, LAX, Hari36533, VsBot, Adamianash, Alexbot, Jadhav.m, Monkeymaker,
Promethean, Mremail1964, SilvonenBot, Dsimic, Addbot, Favonian, ChenzwBot, HerculeBot, Luckas-bot, Yobot, Massimobeltramo,
Fraggle81, Amirobot, Nallimbot, Eliellou, Ranjithts, Jim1138, RokerHRO, Xqbot, PlaysWithLife, Forton, RibotBOT, Philleb, Electrocut,
Omar35880, FrescoBot, Wikisierracharlie, Ccie5000, FoxBot, RjwilmsiBot, B20180, Xmm0, Mayonaise15, K6ka, ZroBot, John Cline,
Kalin.KOZHUHAROV, Jay-Sebastos, VictorianMutant, Voomoo, ClueBot NG, Nimiew, CocuBot, Zynwyx, MatthewIreland, Khazar2,
Lythamlatic, Jasubbey1, Bennettaur, Dave Braunschweig, Faizan, ArmbrustBot, Shrivas06, WikiJackool, Joshuaje1, Sangeshitou, DNPROJECT, KasparBot, Fosskevin and Anonymous: 223
Internet Engineering Task Force Source: https://en.wikipedia.org/wiki/Internet_Engineering_Task_Force?oldid=724750849 Contributors: The Anome, Stephen Gilbert, RobLa, Css, LA2, Paul~enwiki, Olrick, Polimerek, Liftarn, Lquilter, Looxix~enwiki, Julesd, Glenn,
Hashar, Wikiborg, Magnus.de, Jnc, Shizhao, Shantavira, Robbot, Chealer, Noldoaran, Sunray, Zigger, Behnam, Alvestrand, Piotrus,
Am088, Icairns, Yakovsh, Now3d, Jrp, Rich Farmbrough, Reallycoolguy, Y(J)S, Paolopal~enwiki, Bender235, Spearhead, Coolcaesar,
Robotje, Paulehoman, Blobglob, Suruena, Mindmatrix, Uncle G, Bkkbrad, Knuckles, Graham87, Rjwilmsi, Tim!, Koavf, Darguz Parsilvan, FlaBot, Guanxi, Chobot, Zimbabweed, YurikBot, Wavelength, Borgx, FrenchIsAwesome, Howcheng, Scs, Rob evans, Matthewdingley,
Jules.LT, Ninly, E Wing, Jcmarcores@msn.com~enwiki, SmackBot, FocalPoint, Bazza 7, Charlierichmond, Bluebot, Philosopher, JonHarder, Cybercobra, Andrewpayneaqa, Zearin, IronGargoyle, P199, Joseph Solis in Australia, Paul Foxworthy, Tonyhansen, NickW557,
Lentower, Gregbard, Krauss, SusanLesch, Widefox, Akradecki, JAnDbot, Cjkporter, Magioladitis, Jlenthe, Livingthingdan, STBot, Adzinok, Hardaker, Funandtrvl, VolkovBot, TXiKiBoT, Bob103051, Luksuh, Pigdog234, SieBot, BotMultichill, Flyer22 Reborn, Behind The
Wall Of Sleep, Cbl62, Hatster301, Athletic ro, 718 Bot, CodeCaster, Jereyschiller, Jovianeye, Addbot, Ghettoblaster, Mabdul, Tothwolf, Ridwan.redo, AnnaFrance, Jarble, Abhayakara, HerculeBot, Sonix, Legobot, Luckas-bot, Yobot, Amirobot, AnomieBOT, Rubinbot,
Coopkev2, Materialscientist, ArthurBot, Xqbot, Khajidha, Miracleworker5263, TruthPraiser, BuStuer, Aperson1234567, HJ Mitchell,
Lotje, Vrenator, EmausBot, WikitanvirBot, Gamliel Fishkin, ZroBot, Wayne Slam, W163, Aldnonymous, ClueBot NG, Chester Markel,
Oddbodz, Be..anyone, Mark Arsten, Chmarkine, Whym, Khazar2, Mogism, Razibot, Michael V Gold (True), RaphaelQS, ArmbrustBot,
Hooah8787, Soa Lucifairy, Trackteur, 2014Best and Anonymous: 91
Internet Message Access Protocol Source: https://en.wikipedia.org/wiki/Internet_Message_Access_Protocol?oldid=737980635 Contributors: Zundark, Koyaanis Qatsi, Christian List, Golem~enwiki, Defrenrokorit, Bdesham, Nixdorf, Liftarn, Yaronf, Julesd, Sinan~enwiki,
Jonik, ASk, Ryochiji, Wik, Shizhao, Finlay McWalter, Robbot, Chealer, RedWolf, Tim Ivorson, Yosri, Hgd, Honta, Giftlite, Johnjosephbachir, Anton Mravcek, Jonabbey, Fleminra, Joconnor, Rick Block, Sdsher, Mboverload, Rchandra, AlistairMcMillan, Falcon
Kirtaran, Espetkov, Joseph Spiros, Nomeata, LiDaobing, Robert Brockway, Pitr, Anirvan, Jlang, Hobart, EagleOne, JTN, Rich Farmbrough, KneeLess, Pmsyyz, Smyth, Hhielscher, Chadlupkes, ZeroOne, Kaszeta, *drew, Joanjoc~enwiki, Mairi, Apollo2011, Robotje,
Unquietwiki, Wrs1864, Krellis, Guinness~enwiki, Jumbuck, Gary, Guy Harris, AzaToth, Thoric, Ronark, SidP, Suruena, Omphaloscope,
Blaxthos, Ron Ritzman, Mcsee, Karnesky, BrdBjerkeJohannessen, Oliphaunt, Armando, Timosa, Pol098, Jhartmann, Graham87, Sj,
Rjwilmsi, Koavf, Allen Moore, FlaBot, PeconicSky, TheAnarcat, Kedadi, Gwydion1, HalifaxRage, Chobot, YurikBot, Hairy Dude, Hyad,
Red Slash, Sakurina, Gardar Rurak, Barefootguru, RussNelson, Grafen, Voidxor, Natkeeran, Bota47, Speedoight, Erpingham, Rwxrwxrwx, Cedar101, Drable, Anclation~enwiki, David Biddulph, GrinBot~enwiki, SmackBot, Imz, Pgk, Charlesrh, Skizzik, El Cubano,
Bluebot, Keegan, Thumperward, Snori, MalafayaBot, Deli nk, Uthbrian, Omniplex, Ned Scott, Frap, Chlewbot, JonHarder, Addshore,
Mr.Z-man, Estephan500, Gkanch, Cybercobra, WintersChild, Mwtoews, Ts4z, T, Zac67, Mouse Nightshirt, Trou, NongBot~enwiki,
Adam Marsh, Ktinga, Beetstra, Larrymcp, NaturalBornKiller, RG~enwiki, MTSbot~enwiki, Peyre, Koweja, Caiaa, Eliashc, Lathspell,
Beno1000, Wsheward, Z4ns4tsu, Mloughran, Ivan Pozdeev, Walling, Danitaz, Pgr94, Chrisahn, Equendil, UncleBubba, L.Petrlik, Tawkerbot4, Cosmoincarlow, Johayek, Glenn Anderson, Thickycat, SusanLesch, Escarbot, TravisHein, StevenMcCoy, Tgwizard, JAnDbot, Rsforward, Sophie means wisdom, R27182818, Enjoi4586, BlueRobot~enwiki, Ersalan, FisherQueen, P00r, Sagabot, Doodledoo, AlexJTaylor,
J.delanoy, TimoSirainen, NerdyNSK, Cpiral, AntiSpamBot, SJP, DaleKieing, Juliancolton, , Ale2006, Fuzzygenius, Mdcougar, VolkovBot, Areteichi, Tyler9xp, TXiKiBoT, Technopat, Intrigued-user, Jackfork, LeaveSleaves, Sciencewatcher, Billgordon1099,
410
Haseo9999, WJetChao, Alaniaris, AlleborgoBot, Nagy, Theoneintraining, Kbrose, Arjun024, SieBot, Nubiatech, Nestea Zen, Martin
Kealey, Duplicity, Android Mouse, Jimthing, Faradayplank, ClueBot, Hadrianheugh, Squadri, Excirial, Jotterbot, LobStoR, Sdrtirs, DerBorg, V.s.mousavi, DumZiBoT, Danejasper, Brandonsturgeon, 13 of Diamonds, Nekiko, Avisp~enwiki, Nemec~enwiki, Addbot, Mabdul, Alexcat, Luckas-bot, Yobot, JackPotte, Ajh16, THEN WHO WAS PHONE?, KamikazeBot, Draney13, Eric-Wester, AnomieBOT,
Materialscientist, RobertEves92, Tktravis, ArthurBot, Xqbot, Wcoole, Hi878, ChristopherKingChemist, LAMurakami, Smallman12q,
Gzbr, Thehelpfulbot, Moloch09, I dream of horses, Jonesey95, Clarkcj12, EmausBot, Rolf the wolf, BabsiSnoecks, Oceans and oceans,
Cmh294, ZroBot, , Westley Turner, Kiwi128, Palosirkka, Donner60, ClueBot NG, Helpful Pixie Bot, Fnordly,
Vagobot, Compfreak7, Klilidiplomus, Codename Lisa, Reatlas, Epicgenius, AbhishekGoel137, Ugog Nizdast, DrBungle, FockeWulf FW
190, Toohai, AKS.9955, TheQ Editor, GlutenFree123, KasparBot, Mrfridy, Fuchshuber and Anonymous: 368
Internet Protocol Source: https://en.wikipedia.org/wiki/Internet_Protocol?oldid=736311903 Contributors: General Wesc, Bryan Derksen, Zundark, The Anome, Tarquin, Andre Engels, Christian List, Aldie, Paul~enwiki, William Avery, Formulax~enwiki, Dwheeler,
Bdesham, Patrick, Nixdorf, Ixfd64, TakuyaMurata, CesarB, Looxix~enwiki, Ahoerstemeier, Haakon, Jdforrester, GaryW, Glenn,
Caramdir~enwiki, BAxelrod, Harvester, Timwi, Wik, Saltine, Jnc, Gamera2, Olathe, Chuunen Baka, Chealer, Noldoaran, Fredrik,
PedroPVZ, Hemanshu, Wereon, Borislav, Rsduhamel, Tea2min, ManuelGR, SmilingBoy, Giftlite, Brouhaha, Beefman, Kim Bruning,
Reub2000, Ferkelparade, Wikibob, Carlo.Ierna, Eequor, Python eggs, Tagishsimon, Latitudinarian, Antandrus, Dnas, Piotrus, Vanished
user 1234567890, Karol Langner, Dmaftei, Biot, Daniel Staal, Abdull, Trevor MacInnis, EagleOne, Mike Rosoft, Shamino, Imroy, CALR,
DanielCD, JTN, Urvabara, Rich Farmbrough, Wrp103, Naive cynic, Ardonik, Smyth, Cdyson37, Ceo, Paolopal~enwiki, El C, Hayabusa
future, Coolcaesar, Bobo192, Brim, Unquietwiki, SpeedyGonsales, Wrs1864, Helix84, Krellis, Sysiphe, Ogress, Poweroid, PaulHanson,
Ryanmcdaniel, Rgclegg, Echuck215, Kocio, Wtmitchell, BRW, Cburnett, Suruena, Max Naylor, Versageek, Jimgeorge, Woohookitty,
Mindmatrix, Mammad2002, Thorpe, JHolman, Cbdorsett, Hughcharlesparker, Jno, Stevey7788, Graham87, Wcourtney, Qwertyus, Casey
Abell, Demian12358, Vary, Vegaswikian, Yahoolian, Yamamoto Ichiro, FlaBot, RobertG, Intgr, Sperxios, Alvin-cs, Chobot, TkGy, Antiuser, Elfguy, Roboto de Ajvol, Hairy Dude, Stephenb, Manop, Yyy, Varnav, NawlinWiki, V-ball, Grafen, Je Carr, Maerk, DeadEyeArrow, Eclipsed, Anttin, Wknight94, Sandstein, Graciella, Zzuuzz, Closedmouth, Bobguy7, GraemeL, Attilios, SmackBot, Reedy,
Blue520, Hardyplants, Commander Keane bot, Aksi great, Gilliam, Skizzik, Anwar saadat, KD5TVI, MalafayaBot, Robocoder, A. B.,
JonHarder, Yidisheryid, Grover cleveland, Cybercobra, Melter, Nakon, Plustgarten, Jiddisch~enwiki, Warren, Where, Daniel.Cardenas,
Mion, Kukini, Supaplex~enwiki, Adagio Cantabile, Scientizzle, Gobonobo, Minna Sora no Shita, A-moll9, IronGargoyle, Camilo Sanchez,
Mikieminnow, Arkrishna, Kvng, Hetar, Shoeofdeath, Blehfu, Courcelles, Tawkerbot2, Justsee, Imcdnzl, Dgw, Phatom87, Cydebot, Conversion script, UncleBubba, Bridgecross, Jack Phoenix, Thijs!bot, Epbr123, O, Mojo Hand, Escarbot, Cyclonenim, AntiVandalBot, Widefox, Wayiran, Altamel, Altesys~enwiki, Ppchailley, JAnDbot, Dan D. Ric, Jheiv, Enjoi4586, Bouktin, Drugonot, Magioladitis, JamesBWatson, Kgeischmann, Tiuks, Calltech, Gwern, Jackson Peebles, MartinBot, Poeloq, Angelo.biboudis, Aggelos.Biboudis, Felipe1982,
J.delanoy, Mange01, Iamregin, Brest, DrBag, Andareed, Liangent, FrummerThanThou, Katalaveno, Fish147, The Transhumanist (AWB),
Doria, Andywandy~enwiki, JavierMC, Goatbilly, Funandtrvl, JohnGrantNineTiles, Chinneeb, VolkovBot, Philip Trueman, TXiKiBoT,
Oshwah, Jackfork, Noformation, Bennor, Rkrikorian, Ilyushka88, ARUNKUMAR P.R, Rjgodoy, Brianga, Chenzw, Marr75, AlleborgoBot, Nightraider0, EverGreg, Kbrose, SieBot, Richard Ye, Nubiatech, BotMultichill, Yintan, Bentogoa, Tezdog, Mahabub398, Oxymoron83, Byrialbot, Mailtomeet, Florentino oro, Pinkadelica, Denisarona, ClueBot, Bjornwireen, NGNWiki, RFST, Blanchardb, Otolemur crassicaudatus, DragonBot, Alexbot, Anon lynx, Coralmizu, PixelBot, Cynthia Rhoads, Yausman, Versus22, Johnuniq, Apparition11,
Erodium, DumZiBoT, Editorofthewiki, BodhisattvaBot, Defyant, NeoNorm, SkyLined, Karl McClendon, Kurniasan, Rabbit67890, Nubcaike, Addbot, Some jerk on the Internet, Love manjeet kumar singh, Atethnekos, TutterMouse, Shlomiz, Scientus, LaaknorBot, Chamal
N, Glane23, Torla42, Jasper Deng, Teles, Aekton, SasiSasi, Jarble, Legobot, Luckas-bot, Yobot, Markr123, THEN WHO WAS PHONE?,
Jadounrahul, AnomieBOT, Jim1138, Galoubet, Materialscientist, The High Fin Sperm Whale, Tristantech, Xqbot, Addihockey10, Capricorn42, 4twenty42o, Ryamigo, I am Me true, Forton, Sjaak, Corruptcopper, Zarcillo, RibotBOT, Amaury, , Sophus Bie,
SpaceRocket, Nageh, Krj373, Recognizance, GreenRoot, Sonicx059, Wikisierracharlie, DivineAlpha, I dream of horses, MastiBot, Serols,
Jauhienij, Jimys salonika, DixonDBot, Lotje, DARTH SIDIOUS 2, Onel5969, Noommos, Granbarreman, EmausBot, Sir Arthur Williams,
Dewritech, Racerx11, Baguettes, Vanished user zq46pw21, Tommy2010, VillemVillemVillem, Dcirovic, John Cline, F, Nialldawson,
Lion789, Wayne Slam, Coasterlover1994, L Kensington, Mentibot, Shiftoften66, Senator2029, Petrb, TheDramatist, ClueBot NG, Nimiew,
Gareth Grith-Jones, Nugzthepirate, CocuBot, Satellizer, FGont, Cverska, Rezabot, Widr, , 2w133, Northamerica1000, Allecher, Bryanbuang1993, Jedysurya, MrBill3, Sudhir kumar garhwal, Winston Chuen-Shih Yang, IRedRat, Samwalton9, David.moreno72,
Scopecreep, Ducknish, JYBot, Limitmagic1, Wywin, Mlindner, Corn cheese, Reatlas, Joeinwiki, Faizan, DBhavsar709, Kaznovac, Camyoung54, Melonkelon, Tentinator, Maura Driscoll, 9445mid, Ginsuloft, Jsennek, UY Scuti, Weknowna, FrB.TG, Mr. Smart LION, Kinetic37, Tacmamaeujnayn, Devesh142a, Ssaz 12, Mehnames, ScrapIronIV, Cherdchai Iamwongsrikul, DanWiki1997, Timothyjosephwood, Supdiop, Kim Oun, KasparBot, CAPTAIN RAJU, Nicoya67, Jfrank220, AriesNiNe, Jipdaskip gurugaint, RainFall, Erwin hidayat1
and Anonymous: 522
Internet protocol suite Source: https://en.wikipedia.org/wiki/Internet_protocol_suite?oldid=737817181 Contributors: Damian Yerrick,
AxelBoldt, Tobias Hoevekamp, Matthew Woodcraft, Brion VIBBER, Mav, Zundark, The Anome, Tarquin, Koyaanis Qatsi, Etu, Gsl, XJaM,
Aldie, Matusz, Paul~enwiki, William Avery, Shii, Imran, B4hand, Mintguy, Branko, Nknight, Edward, Nealmcb, Michael Hardy, Nixdorf,
Ixfd64, Paul A, Ellywa, Ahoerstemeier, Haakon, Ronz, Typhoon, Theresa knott, Glenn, IMSoP, Palfrey, Arteitle, Edmilne, Timwi, Doradus, Zoicon5, Kaare, Saltine, Itai, Nv8200pa, Jnc, Ed g2s, Shizhao, Topbanana, Betterworld, Bloodshedder, Olathe, Robbot, TomPhil,
Yas~enwiki, RedWolf, Sunray, Hadal, Pps, Miles, Carnildo, Smjg, Kim Bruning, Wolfkeeper, Ferkelparade, Zigger, Marcika, Rick Block,
Niteowlneils, AlistairMcMillan, SWAdair, Tagishsimon, Golbez, Mendel, Beland, Dnas, Zfr, Biot, Daniel Staal, Chadernook, Ukexpat, Abdull, Zondor, EagleOne, RevRagnarok, Mike Rosoft, Ta bu shi da yu, DanielCD, JTN, Rich Farmbrough, JesterXXV, Vsmith, DerekLaw,
Dmeranda, Jackqu7, Bender235, Tr606~enwiki, Plugwash, Violetriga, STHayden, Joanjoc~enwiki, Jantangring, Sietse Snel, Coolcaesar,
Smalljim, John Vandenberg, Xojo, Obradovic Goran, Wrs1864, Helix84, Krellis, Martyman, PioM, Mrzaius, Alansohn, Sully, Arcenciel,
Duman~enwiki, Guy Harris, Nealcardwell, Darkhalfactf, Hoary, Kocio, Snowolf, Here, Rick Sidwell, Cburnett, Stephan Leeds, Suruena,
Evil Monkey, Fixman88, RaNo, Kusma, Freyr, Mattbrundage, Ericl234, MilesMi, Ramnath R Iyer, GaelicWizard, Woohookitty, Camw,
Ilario, ^demon, Wikiklrsc, Eyreland, Mckoss, Pfalstad, Leapfrog314, Mandarax, Runis57, Graham87, Magister Mathematicae, Casey
Abell, Jorunn, Sjakkalle, Rjwilmsi, KYPark, Johnblade, Weregeek, Xos, Vegaswikian, Aapo Laitinen, Yamamoto Ichiro, Sheldrake,
RobertG, Nivix, Aliasptr, Cheesycow5, Otets, Intgr, Bmicomp, Chobot, DVdm, Bgwhite, SuperWiki, Albanaco, Wavelength, Hairy Dude,
Jimp, Mukkakukaku, Hyad, Bhavin, Stephenb, Manop, Cate, Rsrikanth05, Wimt, NawlinWiki, Barberio, Expensivehat, Dogcow, CecilWard, Layer~enwiki, Nick C, Tony1, Zwobot, Falcon9x5, Yudiweb, Tim Watson, Robost, Phgao, Maltest, Kevin, Katieh5584, Snaxe920,
Eptin, Finell, That Guy, From That Show!, Luk, Yakudza, Erik Sandberg, SmackBot, Paulkramer, KnowledgeOfSelf, Rayward, Unyoyega,
MeiStone, Thunderboltz, Elwood j blues, Ruthherrin, Canthusus, Bernard Franois, Gilliam, Locketine, Bluebot, SlimJim, Jprg1966,
Thumperward, Snori, EncMstr, Kungming2, Spmion, Rrelf, Vanis314, JonHarder, Gringo.ch, Wonderstruck, Radagast83, Cybercobra,
Richardwhiuk, Kasperd, HarisM, Drphilharmonic, James Mohr, Victor Liu, Reliablesources, Rodeosmurf, T, Nasz, Tmchk, Esrever,
411
Ana Couto, Doug Bell, Nhorton, Disavian, Breno, Hpnguyen83, Bezenek, CaptainVindaloo, Ckatz, Dicklyon, Kim Rubin, Waggers, Avant
Guard, Rserpool, Kvng, Lee Carre, Iridescent, Paul Koning, Fr34k, Matt Dunn, Tawkerbot2, Brian.fsm, CmdrObot, Imcdnzl, Oheckmann,
NE Ent, RobEby, Whereizben, Nmacu, Equendil, Cydebot, Peripitus, Krauss, Acceptus, Swhitehead, Indeterminate, Roberta F., DumbBOT, NMChico24, Thijs!bot, Epbr123, Wikid77, Hcberkowitz, Headbomb, Electron9, JustAGal, Ekashp, Perfectpasta, Xeesh, Mentisto,
AntiVandalBot, Konman72, Luna Santin, Widefox, Seaphoto, Smartse, Labongo, Storkk, JAnDbot, Harryzilber, Mwarren us, Holylampposts, Acroterion, Enjoi4586, Magioladitis, Parsecboy, VoABot II, AuburnPilot, JamesBWatson, Swpb, Tedickey, AliMaghrebi, Jatkins,
Rich257, Jrogern, Avicennasis, Edwardando, Logictheo, Techpro30, Papadopa, Inhumandecency, Falcor84, Techmonk, GordonMcKinney, MartinBot, Flexdream, BetBot~enwiki, R'n'B, TinaSDCE, J.delanoy, Pharaoh of the Wizards, Mange01, Public Menace, Skullketon,
AntiSpamBot, NewEnglandYankee, SJP, Mumphius, Inomyabcs, Ross Fraser, Ale2006, Funandtrvl, Meiskam, VolkovBot, TheOtherJesse,
Metaclassing, Philip Trueman, TXiKiBoT, Walor, Nxavar, Leekil, Donjrude, Anna Lincoln, Abdullais4u, Navedahmed123, Lova Falk,
Larree, Alireza.usa, EmxBot, Kbrose, CrinklyCrunk, Thw1309, SieBot, Ethanthej, Nubiatech, Yintan, Mothmolevna, Bentogoa, Martyvis,
EnOreg, Oxymoron83, Ydalal, Tmaufer, DavidDW, BenoniBot~enwiki, Ngrieth, Svick, Superbeecat, Denisarona, Sitush, Elassint, ClueBot, Zeerak88, Axcess, The Thing That Should Not Be, Rjd0060, Quinxorin, Alek Baka, CounterVandalismBot, Patilravi1985, Mzje,
DragonBot, Jusdafax, Anon lynx, Wiki104~enwiki, Eeekster, Zac439, Tyler, Shiro jdn, Cynthia Rhoads, Dorgan65, Thingg, Johnuniq,
Punjabi101, Dgtsyb, Thatguyint, Addbot, Atethnekos, Jncraton, Coasting, Jmdavid1789, Glane23, Amungale, Favonian, West.andrew.g,
Tassedethe, Tide rolls, Lightbot, Krano, Globemasterthree, SasiSasi, Legobot, Luckas-bot, Yobot, TaBOT-zerem, Fmrauch, ArchonMagnus, Wadamja, AnomieBOT, Rubinbot, Jim1138, Piano non troppo, Law, Materialscientist, OttoTheFish, Citation bot, Aneah, Merlissimo,
Xqbot, TinucherianBot II, Oxwil, Jrtuenge, Karlos77, RibotBOT, SassoBot, Kyng, , JediMaster362, Ctm314, Master Conjurer, FrescoBot, Weyesr1, ZNott, Kkj11210, Jonathansuh, Barnacle157, JMilty, Citation bot 1, Pokeywiz, I dream of horses, HRoestBot,
A8UDI, Cnwilliams, Weylinp, Pdebee, Yunshui, Renepick, Reaper Eternal, ArticCynda, Suusion of Yellow, SnoFox, Sideways713,
DARTH SIDIOUS 2, EmausBot, John of Reading, Clark42, Solarra, K6ka, P. S. F. Freitas, Hasty001, StanQuayle, Anororn, The Nut,
Samjoopin, A930913, Aeonx, Cf. Hay, Staszek Lem, W163, GeorgeBarnick, Stefan Milosevski, Putdust, Jsoon eu, DASHBotAV, 28bot,
ClueBot NG, Mechanical digger, GlobalEdge 2010, Stahla92, Widr, HMSSolent, BG19bot, Northamerica1000, AvocatoBot, Zvezda1111,
Winston Chuen-Shih Yang, Tutelary, Rbhagat0, Enterprisey, Indinkgo, Lugia2453, Dave Braunschweig, DBhavsar709, Epicgenius, Redeyed demon, Rickh1219rh, PenlroINFS315, Hawkins88, No3mann, Dingdong44, Manul, Abhijith anil, Mr. Smart LION, B Rowanz,
User26954344524345, Haosjaboeces, Akin DSA, MattQuarneri, TeaLover1996, Mehnames, Zortwort, Honeysyrup, JonnieD, CAPTAIN
RAJU, Swaggggg456, Michael Reed, PHMKim and Anonymous: 741
Internetworking Source: https://en.wikipedia.org/wiki/Internetworking?oldid=729433886 Contributors: Mav, The Anome, Aldie, Ahoerstemeier, CatherineMunro, Nickg, Pedant17, Jnc, Nurg, Giftlite, Zigger, Dnas, Deanos, Bobo192, Arthena, Melaen, Kbolino, Woohookitty,
Graham87, Yug, Aapo Laitinen, FlaBot, RobertG, DVdm, Borgx, Gardar Rurak, Bobyllib, Th1rt3en, That Guy, From That Show!,
SmackBot, Ashenai, DHN-bot~enwiki, JonHarder, Weregerbil, Lus Felipe Braga, Bushsf, Jadams76, AdultSwim, Iridescent, Erencexor,
Odie5533, Electron9, MER-C, Matthew Fennell, Mlewis000, ABF, Jamelan, Kbrose, SieBot, Sephiroth storm, Mygerardromance, FlamingSilmaril, Tanketz, Excirial, Muhandes, Grim pim, Johnuniq, XLinkBot, Addbot, Fluernutter, SpBot, , Luckas-bot,
KamikazeBot, AnomieBOT, Xqbot, Arlo Barnes, Arnold.Y, AlFReD-NSH, EmausBot, John of Reading, WikitanvirBot, K6ka, Szynaka,
J. Martin Wills, W163, ClueBot NG, O.Koslowski, HMSSolent, Clala09, Harmonicsonic, Jeroen Schrauwen, Nkansahrexford, Ginsuloft,
Mabandalone and Anonymous: 79
IPX/SPX Source: https://en.wikipedia.org/wiki/IPX/SPX?oldid=719799070 Contributors: Maury Markowitz, Bob Jonkman, Stw, Fuzheado, Jnc, Nickshanks, Yacht, Snowdog, Jrdioko, Neilc, Rhobite, Naive cynic, Bezthomas, Kundor, Guy Harris, BBird, LFaraone, Blaxthos, Postrach, Xyzzy288, Camw, Daira Hopwood, Marudubshinki, Lionel Elie Mamane, David H Braun (1964), Lukeonia1, YurikBot, Borgx, Nick Watts, EJSawyer, KnightRider~enwiki, Saravask, Unyoyega, MeiStone, Grawity, Frap, Cybercobra, Heywd, Dev920,
Phatom87, Cydebot, Thijs!bot, Electron9, Escarbot, JAnDbot, Magioladitis, KILNA, Algotr, P4k, Pilum, Biasoli, John Nevard, Carriearchdale, Dgtsyb, Deineka, Addbot, Ghettoblaster, DoodleSpeed, Lightbot, Yobot, AnomieBOT, FrescoBot, Uncopy, FoxBot, Dinamikbot, John of Reading, Vgmddg, ClueBot NG, BG19bot, Compfreak7, Cyberbot II, YFdyh-bot, Asdlkfjsalkdgh, Music1201 and Anonymous: 65
Java remote method invocation Source: https://en.wikipedia.org/wiki/Java_remote_method_invocation?oldid=730642970 Contributors:
Sfmontyo, Frecklefoot, Julesd, IMSoP, Big Bob the Finder, Itai, Robbot, RedWolf, Wlievens, TittoAssini, Jcttrll, Jonabbey, Fleminra,
Zoney, Quadell, Saucepan, Andreas Kaufmann, Abdull, Discospinster, Rich Farmbrough, Juntas, Fasten, Artur adib, LFaraone, Sega381,
Brighterorange, Cheesy123456789, FlaBot, BMF81, YurikBot, Luigi.bozzo, Cancan101, SteveLoughran, CPColin, Lt-wiki-bot, SmackBot, Leeanderson, Vald, AutumnSnow, Nbarth, Audriusa, Volphy, Doug Bell, Momet, Roshan baladhanvi, Valodzka, Simon Brady, Hervegirod, DavidLeeLambert, Wayiran, Esmond.pitt, SiobhanHansa, Bostonvaulter, MartinBot, In Transit, Klaus Trainer, SciAndTech, Synthebot, SieBot, BotMultichill, VVVBot, Chringle, Osian.h, The Thing That Should Not Be, M4gnum0n, XLinkBot, Phoenix720, Stvaruzek,
Addbot, Jarble, Yobot, Kilom691, AnomieBOT, Rubinbot, Xqbot, JimVC3, Peter lawrey, FrescoBot, RedBot, RazielZero, LogAntiLog,
Dinamik-bot, KF9129, EmausBot, Bruynoogheb, Peaceray, Mr.fylfot, Aaditya025, ClueBot NG, TimElessness, Mark Arsten, Arunava03,
Paericksen, C5st4wr6ch, Gadhatharan, WhatDoYouSee, Zackisrad, Ghfgcgcfghgh, Kkbkkbkkb, Monkbot, Aloksbjain, Extremesarova,
Vidhyasahar T and Anonymous: 96
Link layer Source: https://en.wikipedia.org/wiki/Link_layer?oldid=706872244 Contributors: Isomorphic, Chealer, Johnh, Wrs1864, Suruena, David Woodward, McGeddon, Gilliam, Dicklyon, CapitalR, Jirka6, Enjoi4586, Bongwarrior, Jacobko, R'n'B, Mange01, Inomyabcs,
Inwind, Kbrose, SieBot, Kbdankbot, Addbot, Jafeluv, Chzz, Lightbot, Yobot, TaBOT-zerem, Royote, Xqbot, Sophus Bie, Psychlohexane,
Pinethicket, Rafostry, Jujutacular, Dewritech, Fred Gandt, Natttam, MrInfo2012, Helpful Pixie Bot, Wbm1058, Dave Braunschweig,
ArmbrustBot and Anonymous: 24
Maximum transmission unit Source: https://en.wikipedia.org/wiki/Maximum_transmission_unit?oldid=731938195 Contributors:
JeLuF, JohnOwens, Julesd, Pedant17, Kaare, Rvalles, Tempshill, Topbanana, Babbage, Tea2min, ManuelGR, BenFrantzDale, Fleminra,
Mboverload, Dnas, Waskage, Abdull, EagleOne, Zaf, Mormegil, JTN, Jkl, Rich Farmbrough, Alistair1978, Plugwash, Richard W.M. Jones,
Unquietwiki, WaeMonster, BRW, Danhash, Nightstallion, Kenyon, Kumble2904, Isnow, Dkleeman, Rjwilmsi, FlaBot, Ground Zero,
YurikBot, Wavelength, Borgx, Pi Delport, Shaddack, CecilWard, Xaje, Hgmichna, ZoFreX, CIreland, SmackBot, Ricojonah, Betbest1,
Gilliam, El Cubano, Thumperward, Dhammala, Darth Panda, Chameleons84, Xchbla423, PeteShanosky, Chlewbot, JonHarder, Aldaron,
DylanW, J.smith, Zac67, TenPoundHammer, Peyre, Kvng, Hu12, MS3FGX, Adambiswanger1, Jasrocks, Xcentaur, WeggeBot, Hamster2.0, Jac16888, Cydebot, Xxsquishyxx, Thijs!bot, Epbr123, Tgwaltz, AntiVandalBot, Bigtimepeace, Xhienne, CosineKitty, Niclas
Wiberg, STBotD, N3ddy, X!, TXiKiBoT, Rei-bot, Milan Kerlger, SieBot, Dwandelt, WereSpielChequers, Enduser32, Flyer22 Reborn,
ClueBot, SchreiberBike, DumZiBoT, Andrewborrell, Dsimic, Addbot, CL, Skyschulz, Favonian, Yobot, AnomieBOT, ArthurBot, Xqbot,
SCRECROW, I2so4, 802geek, Itusg15q4user, Winterst, Btilm, Jandalhandler, Trappist the monk, Roy muzz, Onel5969, Suplamer,
412
ChuispastonBot, MOM4Evr, Dfarrell07, Prondou, Conifer, Cyberbot II, Jamesx12345, Tentinator, StianOvrevage, Dai Pritchard, Zmalmgren, GreenC bot and Anonymous: 175
Mealy machine Source: https://en.wikipedia.org/wiki/Mealy_machine?oldid=731347031 Contributors: Damian Yerrick, Michael Hardy,
Rp, Karada, Samw, Greenrd, Robbot, Jaredwf, Gandalf61, Ashley Y, Tea2min, DavidCary, Bigpeteb, Vina, Urhixidur, Karl Dickman,
Slady, Djordjes, Kbh3rd, Leithian, Qwertyus, Rjwilmsi, Allen Moore, Fresheneesz, Bgwhite, Personman, Zimbricchio, Trovatore, JulesH,
William R. Buckley, SmackBot, Adam majewski, SashatoBot, Wvbailey, Amenzix, Cloudwalking, Rizome~enwiki, CmdrObot, Cydebot,
Thijs!bot, WinBot, Rob Kennedy, Dereckson, David Eppstein, KylieTastic, Rei-bot, MohSaied, Prankstar008, Technion, Masgatotkaca,
Rrfwiki, Classicalecon, Elassint, Mild Bill Hiccup, TurionTzukosson, Sun Creator, Addbot, Cuaxdon, Leeaiwei, Luckas-bot, Theburn7,
AnomieBOT, Citation bot, Xqbot, Wparad, Felipebrahm, Arthur MILCHIOR, Iron0037, Fastilysock, Horcrux92, NameIsRon, WikitanvirBot, Tanner Swett, Thine Antique Pen, TYelliot, ClueBot NG, Widr, Helpful Pixie Bot, BG19bot, Adityagohad, BattyBot, Deltahedron,
Monkbot, Mohsen shaei and Anonymous: 69
Media access control Source: https://en.wikipedia.org/wiki/Media_access_control?oldid=728747249 Contributors: Youssefsan,
Notheruser, Angela, Evercat, Timwi, Zoicon5, Itai, GPHemsley, Robbot, Nurg, Giftlite, Joconnor, Alexander.stohr, Brianhe, A purple wikiuser, Zachlipton, Guy Harris, Caesura, Rick Sidwell, Cburnett, Suruena, Nuno Tavares, Woohookitty, DenesVadasz, Casey
Abell, ErikHaugen, HappyCamper, FlaBot, Intgr, Srleer, Borgx, Stassats, NawlinWiki, Steven Hepting, Closedmouth, Extraordinary,
LeonardoRob0t, Sardanaphalus, Leon Hunt, KnightRider~enwiki, Irnavash, KelleyCook, ProveIt, Zanetu, Gilliam, @modi, Snori, OrangeDog, DHN-bot~enwiki, HarisM, Lus Felipe Braga, Khazar, Breno, Mr Stephen, Dicklyon, Arkrishna, Dominio~enwiki, Kvng, Arathald,
Beno1000, Mellery, Jesse Viviano, Cydebot, Djg2006, Tawkerbot4, Ebrahim, Thijs!bot, Dawnseeker2000, Widefox, JAnDbot, .anacondabot, Enjoi4586, Willy on Wheels over Ethernet, Lihui912, FDD, Mange01, Mojodaddy, Philip Trueman, Crazy Murdoc, PaulTanenbaum,
Figureskatingfan, Vitz-RS, JFSM~enwiki, Logan, Kbrose, SieBot, Nubiatech, Ghez, Bentogoa, Treekids, ClueBot, Gwalker nz, Jusdafax,
Mlas, Johnuniq, Pgallert, Dgtsyb, MystBot, Good Olfactory, Kbdankbot, Addbot, JEG14, Luckas-bot, TaBOT-zerem, Nallimbot, Xqbot,
Loosecannon93, GliderMaven, Nageh, W Nowicki, Tolly4bolly, RyanQuinlan, MerlIwBot, Avitesh, YiFeiBot, Pccicpccic and Anonymous:
112
Moore machine Source: https://en.wikipedia.org/wiki/Moore_machine?oldid=731347153 Contributors: Michael Hardy, Rp, Delirium,
Timwi, Jaredwf, Naveen~enwiki, Fuelbottle, Tea2min, Connelly, DavidCary, Jrdioko, Bigpeteb, Vina, Karl Dickman, MakeRocketGoNow,
BrianWilloughby, RevRagnarok, Harej, Qwertyus, Allen Moore, Mathbot, Fresheneesz, MOF, Peter Grey, YurikBot, Benja, Sangwine,
JulesH, SmackBot, Adam majewski, Bluebot, Jeysaba, OrphanBot, SashatoBot, Tlesher, MedeaMelana, Pgadfor, Gingerjoos, Cydebot,
Thijs!bot, Headbomb, WinBot, Rob Kennedy, Dereckson, Dsigal, Phosphoricx, Magioladitis, Alienmercy, CommonsDelinker, VolkovBot,
AlleborgoBot, Technion, SieBot, Masgatotkaca, Mike Shepherd, MarcMutz, UKoch, BodhisattvaBot, Algebran, DiabolicQ, Addbot, Cuaxdon, AtheWeatherman, Biezl, Luckas-bot, Yobot, Freikorp, AnomieBOT, Materialscientist, Xqbot, Felipebrahm, Sjcjoosten, Ex Puexto,
Belchman, Morton Shumway, Panda-giant, Horcrux92, EmausBot, Helptry, Super48paul, Erianna, LordJe, Donner60, Jeptx, Tijfo098,
ClueBot NG, AvocatoBot, Akim.demaille, Bkd.online, Dinesh.lei, Deltahedron, Vbergl, My name is not dave and Anonymous: 71
Network congestion Source: https://en.wikipedia.org/wiki/Network_congestion?oldid=730062306 Contributors: The Anome, Jtk, Stw,
Radiojon, Jnc, Bloodshedder, Neilc, Mvuijlst, Per Olofsson, Wrs1864, Mc6809e, Woohookitty, JFG, Mandarax, GnniX, Mikeblas, SixSix,
QmunkE, Seifried~enwiki, MacsBug, SmackBot, JonHarder, Xofc, Peyre, Kvng, Imcdnzl, Billc.cn, Nick Number, LachlanA, Lfstevens,
JAnDbot, MER-C, Vigyani, Jim.henderson, STBotD, Inwind, Kbrose, Flyer22 Reborn, Tomkerswill, Loftenter, Arjayay, SilvonenBot,
Dsimic, Kbdavis07, Addbot, Graham.Fountain, , Luckas-bot, Yobot, AnomieBOT, Kypzto, LilHelpa, PabloCastellano, The
Evil IP address, FrescoBot, Fortdj33, Itusg15q4user, Gqqnb, Serols, Wschlitz, RA0808, Donner60, Rememberway, ClueBot NG, Nimiew,
Incompetence, Leblondleblond, Maadikhah, MsFionnuala, Mleoking, Khazar2, Cerabot~enwiki, Dough34, ScotXW, Meteor sandwich
yum, Philippe97, Rubbish computer, Akshayka and Anonymous: 41
Operating system Source: https://en.wikipedia.org/wiki/Operating_system?oldid=735993689 Contributors: Damian Yerrick, Magnus
Manske, Brion VIBBER, Mav, Robert Merkel, The Anome, Tarquin, Stephen Gilbert, Jeronimo, Amillar, Awaterl, Andre Engels, Rmhermen, Christian List, Fubar Obfusco, Ghakko, SolKarma, SimonP, Hannes Hirzel, Ellmist, Ark~enwiki, Heron, Hirzel, Olivier, Edward,
Ubiquity, Patrick, RTC, Ghyll~enwiki, D, Norm, Kku, Tannin, Wapcaplet, Ixfd64, Eurleif, Dori, Minesweeper, CesarB, Ahoerstemeier,
KAMiKAZOW, Gepotto, Kokamomi, Stevenj, Nanshu, Typhoon, Yaronf, Darkwind, Trisweb, Nikai, IMSoP, Rotem Dan, Evercat, Jordi
Burguet Castell, , Mxn, GRAHAMUK, Conti, Hashar, Htaccess, Dysprosia, Tpbradbury, Maximus Rex, Furrykef, Cleduc, Bevo,
Traroth, Shizhao, Gerard Czadowski, Joy, Stormie, AnonMoos, Olathe, Lumos3, Sewing, Branddobbe, Robbot, Noldoaran, Sander123,
Fredrik, RedWolf, Moondyne, Romanm, Lowellian, Stewartadcock, Rfc1394, SchmuckyTheCat, Texture, Blainster, Caknuck, Mendalus~enwiki, Kagredon, Tea2min, McDutchie, Alexwcovington, Martinwguy, Jpo, Giftlite, DavidCary, Kim Bruning, Kenny sh, var
Arnfjr Bjarmason, Tom harrison, Zigger, SheikYerBooty, Foot, No Guru, Enigmar007, CyborgTosser, Jfdwol, Sdsher, AlistairMcMillan, Falcon Kirtaran, VampWillow, Jaan513, Wiki Wikardo, Wmahan, K7jeb, Alexf, Bact, Kjetil r, Antandrus, Beland, Onco p53,
Kusunose, Ablewisuk, Am088, Karol Langner, 1297, Rdsmith4, APH, Bornslippy, Bbbl67, Zfr, Gschizas, Gscshoyru, Creidieki, Henriquevicente, Jh51681, Hillel, Demiurge, Zondor, Squash, Grunt, Canterbury Tail, Bluemask, Gazpacho, Mike Rosoft, Rolandg, D6,
Ta bu shi da yu, Archer3, RossPatterson, Discospinster, Rich Farmbrough, Lovelac7, Florian Blaschke, Wk muriithi, HeikoEvermann,
Notinasnaid, SocratesJedi, Andrew Maiman, Dyl, Rubicon, ESkog, JoeSmack, Ylee, CanisRufus, Livajo, TyrelHa, MBisanz, Ben Webber, El C, Phil websurfer@yahoo.com, Mwanner, RoyBoy, EurekaLott, Triona, Dudboi, Coolcaesar, Wareh, Bastique, Afed, Bobo192,
Iamunknown, Viriditas, R. S. Shaw, Polluks, Jjk, Daesotho, Syzygy, Cncxbox, Kjkolb, Nk, Trevj, Minghong, Idleguy, Justinc, Nsaa,
Mdd, Jumbuck, Musiphil, Alansohn, Guy Harris, Conan, Uogl, Atlant, Jeltz, Andrewpmk, Riana, Stephen Turner, Gaurav1146, Wdfarmer, Snowolf, Wtmitchell, Ronark, Gbeeker, Wtshymanski, Paul1337, Max Naylor, RainbowOfLight, LFaraone, Bsadowski1, Gortu,
Kusma, Freyr, Djsasso, Dan100, Markaci, Rzelnik, Kenyon, Sam Vimes, Woohookitty, Karnesky, Lost.goblin, Shreevatsa, Georgia guy,
TigerShark, Prophile, Ae-a, Thorpe, MattGiuca, Robert K S, Ruud Koot, JeremyA, Hdante, MONGO, Miss Madeline, Acerperi, Robertwharvey, Schzmo, Eyreland, Meneth, Umofomia, Waldir, Wayward,
, Jbarta, Marudubshinki, Mandarax, Slgrandson, Graham87,
Cuvtixo, BD2412, MC MasterChef, Kbdank71, CarbonUnit, Jclemens, Brolin Empey, Gorrister, Rjwilmsi, Dosman, Koavf, Attitude2000,
Raaele Megabyte, Alll~enwiki, OKtosiTe, Ian Dunster, MarnetteD, Sango123, DirkvdM, Fish and karate, SNIyer12, Titoxd, Ian Pitchford, Mirror Vax, Pruefer, SchuminWeb, RobertG, Ground Zero, Latka, Winhunter, Crazycomputers, RexNL, Gurch, Patato, Ayla, Intgr,
Zotel, Ahunt, BMF81, Tarmo Tanilsoo, Qaanol, Theshibboleth, King of Hearts, Chobot, SirGrant, Celebere, DVdm, Cactus.man, Carlosvigopaz, Roboto de Ajvol, YurikBot, Wavelength, TexasAndroid, Hawaiian717, RattusMaximus, X42bn6, Daverocks, Logixoul, DestroyerPC, Arado, Gardar Rurak, SpuriousQ, Lar, Hansfn, Stephenb, Gaius Cornelius, Rsrikanth05, Cpuwhiz11, Canageek, Dmlandfair,
Big Brother 1984, NawlinWiki, Shreshth91, Wiki alf, Astral, Grafen, Ang3lboy2001, Jaxl, SivaKumar, RazorICE, Ino5hiro, Nick, Xdenizen, Moe Epsilon, Mikeblas, MarkSG, Tony1, Joshlk, Dasnov, DeadEyeArrow, Gogodidi, Ke5crz, Oliverdl, Elkman, Nlu, Mike92591,
Wknight94, Dsda, Daniel C, Floydoid, Phgao, TheguX, Zzuuzz, Tokai, Clindhartsen, Theda, Closedmouth, E Wing, KGasso, Anouymous,
Josh3580, Charlik, JoanneB, Alasdair, LeonardoRob0t, Fram, JLaTondre, Fsiler, Chris1219, Ilmari Karonen, Katieh5584, Simxp, Meegs,
413
NeilN, Delinka, Teply, Rayngwf, Tyomitch, Arcadie, Kimdino, Luk, Davidam~enwiki, Sardanaphalus, SmackBot, Drummondjacob, MattieTK, Smadge1, Captain Goggles, Aim Here, Julepalme, KAtremer, Incnis Mrsi, Caminoix, Reedy, Ashley thomas80, KnowledgeOfSelf, Hydrogen Iodide, Unyoyega, Lvken7, Rokfaith, Blue520, WilyD, Jfg284, KocjoBot~enwiki, Chairman S., Matthuxtable, Jedikaiti,
Monz, BiT, Alsandro, Andrewkantor, Mslimix, Yamaguchi , Macintosh User, SmackEater, Gilliam, Ohnoitsjamie, Hmains, Betacommand, Cybiko123, Ennorehling, ERcheck, JSpudeman, JorgePeixoto, BenAveling, Guess Who, Andyzweb, GoneAwayNowAndRetired,
Bluebot, Bidgee, Unbreakable MJ, DStoykov, Badriram, Thumperward, DJ Craig, Mnemoc, Miquonranger03, MalafayaBot, AlexDitto,
Jerome Charles Potts, Lexlex, Letdorf, Omniplex, Vbigdeli, Baronnet, DHN-bot~enwiki, Charles Nguyen, MovGP0, Philip Howard, Darth
Panda, Cfallin, Verrai, FredStrauss, Emurphy42, Schwallex, Rrelf, J00tel, Can't sleep, clown will eat me, , Frap,
Onorem, Skidude9950, Parasti, Nixeagle, Sommers, Snowmanradio, JonHarder, Thecomputist, Yidisheryid, Benjamin Mako Hill, DrDnar,
Yoink23, Addshore, Flubbit, Kcordina, Edivorce, Mr.Z-man, Slogan621, SundarBot, Easwarno1, Paul E T, Grover cleveland, Crboyer,
Khoikhoi, World-os.com, Cybercobra, Jhonsrid, Nakon, VegaDark, MisterCharlie, Tompsci, Warren, Renamed user 8263928762779,
Huszone, Tomcool, Mwtoews, Leaord, Kidde, Sigma 7, LeoNomis, Ck lostsword, Fyver528, Qwerty0, The undertow, SashatoBot, Lambiam, Harryboyles, Cdills, Kuru, RTejedor, Vincenzo.romano, Sir Nicholas de Mimsy-Porpington, Linnell, Edwy, Kashmiri, Joelo,
Goodnightmush, Antonielly, KenBest, IronGargoyle, Ben Moore, Camilo Sanchez, Tom Hek, Chrisch, Aaronstj, Hanii Puppy, Loadmaster, JHunterJ, Ems2, Noah Salzman, Ehheh, Nayak143, Manifestation, Tdscanuck, MTSbot~enwiki, Rlinnity, Wwagner, Lucid,
Rubena, Emx~enwiki, Iridescent, Casull, Twas Now, Golngton, Beno1000, Jfayel, Zlemming, Courcelles, Linkspamremover, Desolator12, Slobot, Tawkerbot2, Alegoo92, Gumbos, Cartread, Tgnome, EvilRobot69, Fvasconcellos, J Milburn, JForget, James pic, Ahy1,
Unixguy, CmdrObot, Deon, Ale jrb, Raysonho, Mattbr, Flonase, Makeemlighter, Btate, Kev19, Charles dye, RockMaster, Michael B.
Trausch, NE Ent, SolarisBigot, SpooK, TempestSA, Karimarie, Mblumber, Krauss, A876, Oosoom, Mortus Est, Michaelas10, Gogo
Dodo, Travelbird, David Santos, TheWorld, Corpx, Spanglegluppet, Medovina, Odie5533, Kotiwalo, Dynaow, Christian75, Chrislk02,
DarkLink, Trevjs, Sp, After Midnight, Omicronpersei8, Vanished User jdksfajlasd, Landroo, Maziotis, Rbanzai, Nrabinowitz, JamesAM,
Littlegeisha, Thijs!bot, Epbr123, Kubanczyk, Jobrad, Qwyrxian, Ultimus, Anshuk, N5iln, Jdm64, Ursu17, Marek69, James086, Doyley,
Optimisticrizwan, TommyB7973, Ideogram, TurboForce, CharlotteWebb, CarbonX, Libertyernie2, SusanLesch, Ablonus, Sean William,
TarkusAB, Dawnseeker2000, AlefZet, Escarbot, Dzubint, KrakatoaKatie, AntiVandalBot, Mike33, Luna Santin, Widefox, Guy Macon,
Seaphoto, QuiteUnusual, ForrestVoight, Prolog, Memset, Chase@osdev.org, PhJ, Credema, Sridip, Yellowdesk, Alphachimpbot, Jstirling,
MichaelR., Storkk, Eleete, MikeLynch, Ioeth, JAnDbot, Chaitanya.lala, SuperLuigi31, Leuko, Numlockshy, DuncanHill, NapoliRoma,
Ethanhardman3, MER-C, Arch dude, Nvt~enwiki, Socalaaron, Hut 8.5, Greensburger, Knokej, Adams kevin, Bookinvestor, SteveSims,
Raanoo, Bencherlite, Pierre Monteux, RogierBrussee, Jaysweet, Bongwarrior, VoABot II, Nyq, JamesBWatson, Marko75, SHCarter, Kajasudhakarababu, PeterStJohn, Lucyin, Sedmic, Rami R, Inklein, Jatkins, Twsx, Bubba hotep, Manojbp07, Alanbrowne, Bleh999, Indon, 28421u2232nfenfcenc, Creativename, Papadopa, User A1, Bwildasi, Glen, DerHexer, Wdake, Janitor Starr, ChaoticHeavens, Calltech, Seba5618, Oroso, Stephenchou0722, Adriaan, AVRS, PhantomS, MartinBot, Miaers, BetBot~enwiki, Alexswilliams, Ethan.hardman,
Vanessaezekowitz, Kiore, Twitty666, Aladdin Sane, Comperr, Rettetast, Joemaza, Anaxial, Jonathan Hall, Mickytz13, R'n'B, CommonsDelinker, Nono64, PrestonH, Cesarth~enwiki, Tgeairn, Erkan Yilmaz, Manticore, J.delanoy, Pharaoh of the Wizards, Trusilver, Uncle
Dick, Public Menace, Jesant13, DanDoughty, Johnnaylor, Jerry, Ian.thomson, Cpiral, Alexei-ALXM, Davidm617617, Dispenser, It Is Me
Here, Katalaveno, Mc hammerutime, Grosscha, Silas S. Brown, AntiSpamBot, Plasticup, Dvn805, Warut, NewEnglandYankee, Burkeaj,
Matthardingu, Super Mac Gamer, Cobi, Touch Of Light, Tatrgel, Bigdumbdinosaur, Mufka, Manassehkatz, Orrs, Tdrtdr, DigitallyBorn,
Althepal, Cometstyles, Mwheatland, Simon the Dragon, RB972, Vanished user 39948282, Treisijs, Dekard, MrPaul84, Bonadea, Useight,
TheNewPhobia, CardinalDan, Idioma-bot, Joecoolatjunkmaildotcom, Signalhead, Vox Humana 8', S.borchers, Hammersoft, VolkovBot,
Thedjatclubrock, Thomas.W, Riahc3, Murderbike, S10462, Rhyswynne, Je G., AlnoktaBOT, Brownga, Philip Trueman, Kyuuseishu,
TXiKiBoT, Oshwah, Masonkinyon, Amphlett7, Zidonuke, Manmohan Brahma, Neversay.misher, Hqb, NPrice, Ngien, Naohiro19 revertvandal, Wingnutamj, Vanished user ikijeirw34iuaeolaseric, Anna Lincoln, Ocolon, Lradrama, Melsaran, Mistman123, JhsBot, Sanfranman59, Jackfork, LeaveSleaves, Tpk5010, Seb az86556, Random Hippopotamus, 1yesfan, Hrundi Bakshi, Wiae, Kaustubh.singh, Maxim,
Rjgarr, Ngch89, Milan Kerlger, Lejarrag, BigDunc, Andy Dingley, Dirkbb, Jsysinc, Alten~enwiki, Wasted Sapience, Prashanthomesh,
Jpeeling, Benneman~enwiki, Rainsak, WJetChao, Synthebot, Falcon8765, Lbmarshall, Enviroboy, Duke56, RaseaC, Insanity Incarnate,
Brianga, Jackmiles2006, Zx-man, AlleborgoBot, Badhaker, Jimmi Hugh, Bhu z Crecelu, Logan, EmxBot, Deconstructhis, Kbrose, The
Random Editor, SPQRobin, SieBot, Coee, Utahraptor ostrommaysi, Rektide, YonaBot, Euryalus, BotMultichill, EwokiWiki, Themoose8,
Zephyrus67, Zemoxian, Winchelsea, Josh the Nerd, RavenXtra, Rockstone35, DBishop1984, Triwbe, March23.1999, Yintan, Revent,
DavidHalko, Kaypoh, GrooveDog, Jerryobject, Purbo T, Buonoj, Android Mouse, Toddst1, Flyer22 Reborn, Oda Mari, Aruton, Oxymoron83, Antonio Lopez, Harry-, Techman224, BenoniBot~enwiki, Dantheman88, P.Marlow, Pithree, Sphilbrick, Echo95, Pinkadelica,
M2Ys4U, Nergaal, Denisarona, Escape Orbit, Martarius, ClueBot, Avenged Eightfold, GorillaWarfare, PipepBot, Wikievil666, The Thing
That Should Not Be, Alksentrs, MarioRadev, Rilak, Emwave, Jan1nad, ImperfectlyInformed, Arakunem, Drmies, Cp111, Frmorrison,
Unknown-xyz, Mild Bill Hiccup, E.mammadli~enwiki, Kathleen.wright5, Polyamorph, Boing! said Zebedee, McLovin34, Niceguyedc,
Jdrowlands, Mbalamuruga, Lyt701, Danieltobey, Ramif 47, The1DB, Asiri wiki, DragonBot, Rbakels, Excirial, Socrates2008, Jusdafax,
M4gnum0n, Andy pyro, Susheel verma, Eeekster, John Nevard, Kamanleodickson~enwiki, Winston365, Njuuton, Lightedbulb, Posix
memalign, Garlovel, Sun Creator, Tyler, Jotterbot, Josef.94, Tnxman307, Dekisugi, Youwillnevergetthis, Rmere, Yes-minister, Muralihbh,
La Pianista, Ninuxpdb~enwiki, OlurotimiO, Thingg, Andy16666, Callmejosh, Aitias, Bagunceiro, Mdikici, Johnuniq, SF007, Kerowhack,
DumZiBoT, XLinkBot, Aaron north, Spitre, MarmotteNZ, Stickee, Rror, Agentlame, Rreagan007, Klungel, Skarebo, WikHead, ErkinBatu, NellieBly, Galzigler, KenshinWithNoise, Alexius08, Kgoetz, Osarius, HexaChord, JimPlamondon, CalumH93, Ratnadeepm, Ghettoblaster, NNLauron, AVand, Wluka, Donhoraldo, Love manjeet kumar singh, Melab-1, Mabdul, Ente75, Non-dropframe, Raywil, Tothwolf, Grandscribe, Elsendero, Ronhjones, CanadianLinuxUser, Scherr, Debloper, Lindert, Ka Faraq Gatri, MrOllie, Download, Eivindbot, LaaknorBot, Chamal N, CarsracBot, EconoPhysicist, M.r santosh kumar., Glane23, AnnaFrance, Favonian, Kyle1278, LinkFA-Bot,
Jasper Deng, Manickam001, Tide rolls, Luckas Blade, Teles, Gail, Jarble, Legobot, Wisconsinsurfer, Luckas-bot, Yobot, Applechair,
WikiDan61, 2D, OrgasGirl, Senator Palpatine, Josepsbd, II MusLiM HyBRiD II, PlutosGeek, 2nth0nyj, Washburnmav, Mmxx, THEN
WHO WAS PHONE?, Nallimbot, Sven nestle, Golftheman, Baron1984, Timir Saxa, Knownot, Masharabinovich, Amicon, Quarkuar,
TestEditBot, South Bay, Tempodivalse, Synchronism, Jorge.guillen, AnomieBOT, Create g77, 1exec1, Gtz, Geph, Lucy-seline, Jim1138,
789455dot38, 9258fahskh917fas, Piano non troppo, AdjustShift, Law, Remixsoft10, RandomAct, Flewis, Materialscientist, Mcloud91,
9marksparks9, Twistedkevin, Felyza, Rabi Javed, Johnny039, Waterjuice, GB fan, Ashikpa, Xqbot, TheAMmollusc, Holden15, Capricorn42, CoolingGibbon, Biometricse, Nasnema, Mononomic, Jewang, Inferno, Lord of Penguins, HDrake, Pmlineditor, Nayvik, RibotBOT, Kyng, Oroba, Karolinski, Cul22dude, Sophus Bie, Sidious1741, Maitchy, N419BH, Bstarynk, =Josh.Harris, Shadowjams, Chatul,
Astatine-210, Kevin586, Endothermic, Jerrysmp, Lkatkinsmith, Captain-n00dle, Erickanner, FrescoBot, OspreyPL, Ashleypurdy, Trimaine, Pepper, Mthomp1998, Fobenavi~enwiki, Gauravdce07, Michael93555, Cps274203, Ishanjand, Photonik UK, Clsin, Jjupiter100,
Kwiki, Dhtwiki, WellHowdyDoo, DivineAlpha, Sanaskar, Citation bot 1, Skomes, DrilBot, Pinethicket, I dream of horses, Abazgiri, Vicenarian, Elockid, AR bd, 10metreh, Martin smith 637, Skyerise, Ngyikp, Brsh, Jschnur, RedBot, MastiBot, Serols, Chikoosahu, Meaghan,
414
Ltomuta, Gtgray1948, Merlion444, White Shadows, Tim1357, Wormsgoat, TobeBot, Trappist the monk, SchreyP, Yunshui, Zonafan39,
, Mptb3, Javierito92, Dinamik-bot, Vrenator, TBloemink, MrX, SeoMac, Defender of torch, Ansumang, Aoidh, Ondertitel,
DeDroa, Rro4785, WikiTome, Weedwhacker128, Lysander89, Tbhotch, Reach Out to the Truth, Jesse V., Programming geek, DARTH
SIDIOUS 2, Dexter Nextnumber, SirGre, Alextyhy, Jfmantis, Onel5969, Kjaleshire, Mean as custard, Mppl3z, TjBot, Pontiacsunre08,
Stealthmartin, BjrnBergman, Sweet blueberry pie, Sarikaanand, DiaNoCHe, Francis2795, Lordmarlineo, Slon02, Urvashi.iyogi, Deagle
AP, Rollins83, N sharma000, Vinnyzz, EmausBot, Gfoley4, Tasting boob, Odell421, SampigeVenkatesh, GoingBatty, RA0808, Cookdn,
Nwusr123log, Mrankur, CaptRik, NotAnonymous0, Tommy2010, Elvenmuse, Wikipelli, Dcirovic, Jasonanaggie, Alisha.4m, Werieth,
ZroBot, John Cline, Ida Shaw, Josve05a, Parsonscat, MithrandirAgain, Enna59, NicatronTg, EdEColbert, Bbuss, Ferrenrock, Lt monu,
Vorosgy, Fred Gandt, Hazard-SJ, Bijesh nair, Can You Prove That You're Human, Demonkoryu, Utilitytrack, Tolly4bolly, Thine Antique
Pen, W163, Eab28, Icerearceus, Arman Cagle, THeReDragOn, OllieWilliamson, L Kensington, Bachinchi, Gsarwa, Donner60, Wikiloop, Djonesuk, Pun, Adityachodya, ChuispastonBot, Wakebrdkid, GrayFullbuster, Sven Manguard, DASHBotAV, Rocketrod1960,
Blu Aardvark III, Jekyllhide, Cgt, Sonicyouth86, Petrb, MetaEntropy, ClueBot NG, Cwmhiraeth, Nothingisoftensomething, Frankdushantha, JetBlast, Matthiaspaul, NULL, Satellizer, Sparkle24, Dhardik007, Adair2324, WorldBrains, SunCountryGuy01, Feedintm, Doh5678,
Sainath468, Muon, Mesoderm, O.Koslowski, Geekman314, 149AFK, Joshua Gyam, CaroleHenson, Alenaross07, Widr, WikiPuppies,
Ashish Gaikwad, Sharanbngr, Lawsonstu, Friecode, Cllnk, Helpful Pixie Bot, Jijojohnpj, Mujz1, , Ndavidow, Calabe1992,
Wbm1058, Karabulutis252, Sunay419, Altay437, Muehlburger, Lowercase sigmabot, Lifemaestro, BG19bot, Pcbsder, Integralexplora,
Northamerica1000, Who.was.phone, MusikAnimal, Snow Rise, Abhik0904, FutureTrillionaire, Atomician, CimanyD, Yowanvista, Dainomite, Aranea Mortem, Bcxfu75k, Upthegro, Lmmaaaoooo, Glacialfox, Isacdaavid, GeneralChrisV, Jkl4201, Achowat, Vikrant manore,
ItsMeowAnywhere, Iswariya.r, SupernovaExplosion, Sharkert, Pratyya Ghosh, Cyberbot II, Fronx, DreamFieldArts, Meowmeow8956,
Macintosh123, MadGuy7023, JYBot, TravellerQLD, Dexbot, Sakariyerirash, Kushalbiswas777, FoCuSandLeArN, Codename Lisa, Ziiike, Webclient101, Mualif02, 12Danny123, Nozomimous, TwoTwoHello, Frosty, SFK2, Hair, Openmikenite, Sowlos, Harris james, Corn
cheese, Crossy1234, Epicgenius, Poydoy, Acetotyce, Carrot Lord, Pdecalculus, Sosthenes12, ArjunML, Arthurhkt, EngGerm12, AnthonyJ
Lock, Mjoshi91, Comp.arch, JRR Akumal, Melody Lavender, JustBerry, NottNott, Fercho333, AlexanderRedd, Samueljjc, Dannyruthe,
Bbirkinbine, Inaaaa, FrB.TG, TheWiki122, Monkbot, Ganesh1997141, Augbog, Dsprc, JoeHebda, TerryAlex, NQ, Oy284, Suspender
guy, Aethyta, Lycanewolfe, Nelsonkam, TranquilHope, ChamithN, Endlesss2014, Epicalagent56, Derpmeup, Trevor35on, Mathewisgreat,
Epigogue, Ign christian, Kethrus, ToonLucas22, Prakashmeansvictory, Harshkohli1, Kharl denis, Innite0694, OSMAX20, KasparBot,
Jamesmaclachlan, RippleSax, Qazi Umar FarooqKing, Squingo44, Jainishita, Ralphw, Wywyit, Jay1818, Thallyace, Risc64, Satyaki
Mukherjee (Rik), Nanaymo09090909, Amankesarwani, Wulfan Sravotsk, Nickrascal, Cpraveer, Coolindore2011, Wwsaa, Hauntedmath,
Starglider1, Song Syphan, CLCStudent, Reversepopo, Amitshora, Unisankar and Anonymous: 2504
OSI model Source: https://en.wikipedia.org/wiki/OSI_model?oldid=735872701 Contributors: Damian Yerrick, AxelBoldt, Bryan Derksen, The Anome, Stephen Gilbert, Manning Bartlett, Amillar, Andre Engels, Gsl, Aldie, Nate Silva, M~enwiki, William Avery, DavidLevinson, Heron, B4hand, Edward, PhilipMW, Michael Hardy, Chris-martin, MartinHarper, Todd, Looxix~enwiki, Mkweise, Ahoerstemeier, Haakon, Ronz, Nanshu, Glenn, Bogdangiusca, Netsnipe, IMSoP, Evercat, EdH, JidGom, Mulad, Markb, Emperorbma, Fuzheado,
Atreyu42, Markhurd, Tpbradbury, Grendelkhan, Jnc, Ed g2s, Rnbc, Nickshanks, Joy, Fvw, Johnleemk, Finlay McWalter, Phil Boswell,
Robbot, TomPhil, Friedo, Fredrik, Dumbledad, RedWolf, Postdlf, Wjhonson, Rfc1394, Puckly, Rursus, 75th Trombone, Hadal, David
Edgar, Rsduhamel, Filemon, David Gerard, Enochlau, Giftlite, Graeme Bartlett, DavidCary, Cokoli, Jpta~enwiki, Inkling, Tom harrison,
Lupin, Herbee, 0x6D667061, Everyking, CyborgTosser, Itpastorn, EJDyksen, Mboverload, AlistairMcMillan, Alvestrand, Tagishsimon,
Dave2, Gadum, Pamri, Mendel, Inversetime, Ravikiran r, Eldiablo~enwiki, Sridev, Parakalo~enwiki, Tooki, Kramerino, Lazarus666, Paparodo, Jcw69, Slrobertson, Kevin Rector, Trevor MacInnis, Moxfyre, Safety Cap, EagleOne, DmitryKo, Gazpacho, Mike Rosoft, Venu62,
Hes Nikke, Hgerstung, RossPatterson, Discospinster, Rich Farmbrough, Rhobite, DavidBarak, Lulu of the Lotus-Eaters, Demitsu, Paul August, Techtoucian, BACbKA, Kaszeta, CanisRufus, Charm, MBisanz, Lankiveil, Bletch, GarethGilson, Sietse Snel, RoyBoy, Triona, Causa
sui, Rlaager, Bobo192, MarkWahl, Smalljim, John Vandenberg, Dreish, Che090572, AtomicDragon, Elipongo, Mikel Ward, Giraedata,
SpeedyGonsales, Chirag, Nk, Bdamokos, Wrs1864, Helix84, Krellis, Nsaa, Mdd, Wayfarer, Ogress, Alansohn, Gary, Ghostalker, SnowFire, Guy Harris, Free Bear, Lectonar, OSUKid7, Caesura, Snowolf, Simon, Wtmitchell, Rebroad, Wtshymanski, Rick Sidwell, Cburnett,
Stephan Leeds, Suruena, RainbowOfLight, Drat, Mikeo, Pethr, H2g2bob, MIT Trekkie, Pytom, Cxxl, Richwales, Beelaj, Mahanga, Ott,
Feezo, Stemonitis, OwenX, Woohookitty, Camw, LOL, Blueskies238, Ilario, Robert K S, Hdante, Kgrr, Cbustapeck, Eyreland, Prashanthns, Andybryant, Palica, Marudubshinki, Kesla, Runis57, Jannetta, Chupon, Jetekus, Josh Parris, Casey Abell, Ketiltrout, Dpark, Johnblade, Jake Wartenberg, Kinu, Inkhorn, CraSH, TAS, Tangotango, SMC, Vegaswikian, Kazrak, BDerrly, ElKevbo, N-Man, Fred Bradstadt,
Syced, Yamamoto Ichiro, Audunv, StuartBrady, FlaBot, Nivix, Ewlyahoocom, Eric Soyke, RobyWayne, Intgr, Fresheneesz, Alphachimp,
Chfalcao, Imnotminkus, Jmorgan, Chobot, Hatch68, Visor, DVdm, JesseGarrett, Bgwhite, Adoniscik, Gwernol, FrankTobia, Roboto de
Ajvol, McGinnis, YurikBot, Albanaco, Borgx, Sceptre, Josef Sbl cz, Joodas, Jonwatson, Bhny, Tyler.szabo, SpuriousQ, Kirill Lokshin,
Joebeone, Grubber, Shell Kinney, CambridgeBayWeather, Eleassar, Pseudomonas, Abarry, Friday, NawlinWiki, ENeville, Grafen, RazorICE, Nick, Marvin01, Brandon, Moe Epsilon, Kaz219~enwiki, Voidxor, Lomn, Davetrainer, Tony1, PyreneesJIM, Nethgirb, Rjstinyc,
Jessemerriman, Caerwine, MarkBrooks, Wknight94, FF2010, Whitejay251, Lt-wiki-bot, YolanCh, Ageekgal, Closedmouth, Iambk, Fang
Aili, Pb30, Abune, Bariswheel, JoanneB, ThunderBird, Allens, Honeyman, CIreland, Luk, Hiddekel, EJSawyer, Sardanaphalus, SmackBot,
Mmernex, Bonobosarenicer, Irnavash, ThreeDee912, Reedy, KnowledgeOfSelf, Bjelleklang, Brick Thrower, Delldot, Nejko, Jonathanwagner, Gilliam, Psiphiorg, @modi, Djib, Delfeye, Alucard 16, Tree Biting Conspiracy, Stevage, Arroww, Octahedron80, Nbarth, Ctbolt,
Adibob, Thief12, TripleF, Can't sleep, clown will eat me, YamiKaitou, ZachPruckowski, JonHarder, Addshore, Kcordina, Edivorce,
Meepster, SundarBot, Adamantios, UU, Dohzer, Soosed, Apocryphite, Cybercobra, Fullstop, Valenciano, Shadow1, Tompsci, HarisM,
Insineratehymn, Weregerbil, Mwtoews, WoiKiCK, Ged UK, Dino.korah, Umair ahmed123, H34d~enwiki, Kuru, Microchip08, Natarajuab, Rejax, Martinkop, Adj08, Sir Nicholas de Mimsy-Porpington, Tim Q. Wells, Nux, Goodnightmush, Highpriority, Noahspurrier,
Michael miceli, IronGargoyle, Morten, Vanished user 8ij3r8jwe, MarkSutton, Krampo, Yms, Mr Stephen, Dicklyon, Kim Rubin, Waggers, Lachlancooper, Anonymous anonymous, IReceivedDeathThreats, Ryulong, Wrlee~enwiki, Citicat, Nbhatla, Kvng, Rcannon100, Lee
Carre, Hetar, Iridescent, Penno, Shoeofdeath, Beno1000, Courcelles, Drwarpmind, Tnneid, Danlev, Tawkerbot2, Ouishoebean, StephenFalken, Ryt, The Haunted Angel, Mmdoogie, InvisibleK, Sakurambo, KerryVeenstra, CmdrObot, Ale jrb, Nitecruzr, Scohoust, Lighthead,
Naishadh, Andkore, RobEby, Phatom87, Myheadspinsincircles, Mattalyst, Travelbird, Yuokool12, Maguscrowley, Odie5533, Tawkerbot4,
Mattjgalloway, DumbBOT, Chrislk02, Eazy007, Alaibot, Biblbroks, Scolobb, Omicronpersei8, JodyB, Epbr123, Rohwigan03, Jhilving,
Daniel, N5iln, Hcberkowitz, Amitbhatia76, JMatthews, CynicalMe, Marek69, John254, Tellyaddict, Iviney, Ajo Mama, RichardVeryard,
Kaaveh Ahangar~enwiki, Zachary, Dzubint, Turb0chrg, Qexter, KrakatoaKatie, AntiVandalBot, Majorly, Luna Santin, Fjpanna, Seaphoto,
CDima, BommelDing~enwiki, JeTataMe, Alphachimpbot, Graham.rellinger, Myanw, Gkhan, Caper13, JAnDbot, Niaz, Vmguruprasath,
Dereckson, MER-C, Dcooper, LittleOldMe, Enjoi4586, Ideoplex, Bakilas, VoABot II, Ishikawa Minoru, RoscoMck, Davidjk, JamesBWatson, Mbc362, Tedickey, Ifroggie, Panser Born, Animum, Cyktsui, Dili, Mtd2006, MetsBot, Logictheo, Schumi555, BenLiyanage,
WLU, SineChristoNon, Patstuart, Micahcowan, 0612, S3000, Flowanda, MartinBot, Nolyann, Naohiro19, Rettetast, Charles Edward, Ryan
415
au, Ore4444, Cputrdoc, Markolinsky, Jschoon4, Smokizzy, RockMFR, J.delanoy, Mange01, Carre, SaxicolousOne, Uncle Dick, Public
Menace, Mr Elmo, Saicome, Dispenser, Katalaveno, DJPohly, Skier Dude, Gurchzilla, Swapcouch, AntiSpamBot, Tarekradi, Kraftlos, Wilson.canadian, Jrodor, Lordeaswar, Cometstyles, Inomyabcs, Wily duck, Inwind, S (usurped also), Boikej, Pluyo8989, Mlewis000, Lights,
HamatoKameko, 28bytes, GreYFoXGTi, VolkovBot, Wire323, ABF, Adityagaur 7, Je G., Speaker to Lampposts, Lears Fool, Metaclassing, Saddy Dumpington, Khat17, Philip Trueman, DoorsAjar, Oshwah, BuickCenturyDriver, DSParillo, GDonato, Dmottl, Chimpex, Anna Lincoln, DennyColt, Leafyplant, BwDraco, PDFbot, BotKung, VidGa, Ibenr, Rjgodoy, Aslambasha09, Coriron, Ayengar,
Sunilmalik1107, Spitre8520, Henrikholm, AlleborgoBot, PGWG, Jchristn, CMBJ, LOTRrules, Kbrose, SieBot, Mikemoral, Nubiatech, Scarian, Jauerback, Caltas, Matthew Yeager, Triwbe, Yintan, GlassCobra, Bobdrad, Happysailor, Flyer22 Reborn, EnOreg, Oxymoron83, Arunachalammanohar, Tpvibes, Steven Crossin, Wishingtown~enwiki, Patrikor, Rkarlsba, StaticGull, ProPuke, Denisarona,
Troy 07, ClueBot, GorillaWarfare, The Thing That Should Not Be, Postmortemjapan, Think4amit, Lawrence Cohen, Unbuttered Parsnip,
Adrianwn, LizardJr8, Anjola, Pmorkert, Puchiko, Andjohn2000, Pointillist, DragonBot, Excirial, Throttler, Alexbot, Jusdafax, Anon
lynx, Erwinkarim, Fleg31789, NuclearWarfare, Arjayay, Jotterbot, Patch1103, DeltaQuad, Botsjeh, Morel, Isthisthingworking, Muro Bot,
Zoobee79, Thingg, Aitias, 7, Subfrowns, Versus22, Mr.ghlban, Mcnuttj, Rgilchrist, Johnuniq, SoxBot III, Apparition11, Bcherwrmlein, DumZiBoT, FreshPrinz, XLinkBot, Jovianeye, Tbsdy lives, Logthis, Dgtsyb, Karpouzi, Alexius08, Hellomarius, Jdrrmk, Tranzz,
HexaChord, Bojer~enwiki, Addbot, Mobius R, Willking1979, Akiyukio, 1337 JN, Balajia82, Tcncv, Bzimage.it, Friginator, Syntaxsystem, Djmoa, Scientus, Vishnava, CanadianLinuxUser, NjardarBot, Amtanoli, Cst17, MrOllie, The Athlon Duster, Ottosmo, Evillawngnome, Roux, Doniago, TinyTimZamboni, Lockcole, Tide rolls, OlEnglish, Teles, Zorrobot, MuZemike, David0811, Wireless friend,
Another-anomaly, Dcovell, Peni,
, Enduser, Angrysockhop, ZX81, Yobot, WikiDan61, Karelklic, Fraggle81, Cm001, Manishar
us, Therumakna, THEN WHO WAS PHONE?, Brougham96, Gafex, Tempodivalse, AnomieBOT, Duey111, Naresh jangra, Killiondude,
Jim1138, CraigBox, Kingpin13, Ulric1313, Mikeyh56, RandomAct, Flewis, Materialscientist, RobertEves92, uman, 90 Auto, Citation
bot, ShornAssociates, E2eamon, Roux-HG, Crimsonmargarine, Gasp01, Milind m2255, MauritsBot, Xqbot, Saad ziyad, Capricorn42, NfrMaat, Jerey Mall, DSisyphBot, Shrofami, AbigailAbernathy, Fuzzball24816, Nasa-verve, GrouchoBot, AVBOT, Wizardist, Rsiddharth,
Shirik, Mathonius, Kallaspriit, Mmmeg, Theelmgren, Shadowjams, Joaquin008, Sesu Prime, A.amitkumar, FrescoBot, DrSpice, Oita2001,
802geek, Advancedtelcotv, Itusg15q4user, VS6507, Kyllys, Recognizance, Nisavid, Runtux, Geek2003, Kismalac, Eliezerb, Vk anantha,
Originalharry, DrDOS, AstaBOTh15, Simple Bob, Mojalefa247, I dream of horses, Ajw901, LittleWink, Jonesey95, A412, Calmer Waters, Rushbugled13, Jschnur, SpaceFlight89, Isofox, Fumitol, Warrierrakesh, Bmylez, Mohitjoshi999, Merlion444, Mmeerman~enwiki,
Yamike, TobeBot, Ashutosh.mcse, Lotje, Asn1tlv, Dinamik-bot, Nemesis of Reason, Bluest, Mattmill30, Fiable.biz, JV Smithy, Tbhotch, Minimac, Brambleclawx, DARTH SIDIOUS 2, Artur Perwenis, Candc4, Ripchip Bot, Lynnallendaly, Conquest ace, Deagle AP,
Rollins83, EmausBot, Sliceofmiami, Stryn, Immunize, Alex3yoyo, Super48paul, Dewritech, Racerx11, Mrankur, RenamedUser01302013,
Peaceray, John Hopley, Sp33dyphil, Tommy2010, Wikipelli, Dcirovic, K6ka, Savh, Mohitsport, F, Josve05a, PaulWIKIJeery, Mkagenius, Unkownkid123, A930913, Saintends, Can You Prove That You're Human, Kyerussell, Cs mat3, SporkBot, Monterey Bay, Gz33,
Wingman4l7, Vanished user fois8fhow3iqf9hsrlgkjw4tus, Elfosardo, Praggu, Crasheral, Tarian.liber, Orange Suede Sofa, ChuispastonBot,
Pastore Italy, Kkbairi, SharePointStacy, Neil P. Quinn, DASHBotAV, Raju5134, Petrb, Encaitar, ClueBot NG, MelbourneStar, Jeanjour,
Satellizer, Lord Chamberlain, the Renowned, Chester Markel, Jjenkins5123, Jakuzem, Bchiap, 336, Widr, Scottonsocks, Suyashparth,
Chrkelly, Theopolisme, MerlIwBot, Novusuna, Johnny C. Morse, Kronn8, WNYY98, BG19bot, HMGb, Island Monkey, Northamerica1000, Hallows AG, Palltrast, Mudasir011, Snehasapte, Mark Arsten, Shraddha deshmukh, BJMdeJong, Dmohantyatgmail, Benzband,
Jatinsinha, Avitesh, MrsValdry, CitationCleanerBot, GGShinobi, Roo314159, Falk.H.G., Nathanashleywild, Mahesh Sarmalkar, TranslucentCloud, Wannabemodel, Winston Chuen-Shih Yang, Nkansahrexford, Jsonheld, Vanished user lt94ma34le12, Zhaofeng Li, Jimw338,
Taruntan, Sfeldner, Gm shamim, RealHandy, Tprz, Dexbot, Webclient101, Iambossatghari, Mitrabarun, Neevan99, Frosty, Payal1234,
, ElgeeC, DBhavsar709, Epicgenius, Davidh63, Immaculate.john95, Franois Robere, Melonkelon, Apurv.11213, DavidLeighEllis,
Thardrain, Comp.arch, Tilopenda, Spyglasses, Congoblast, Ginsuloft, Semsi Paco Virchow, Quenhitran, Jianhui67, Lengeni, Byte1000101,
Abbotn, Antrocent, Claw of Slime, YitzchakF, Tayyabjamil, User26954344524345, Omare83, TerryAlex, Psycho365, Say which?, Jain
Nupoor, Ajit31, Biochembob, TranquilHope, Praks purushot, Candlelighter, Vtor, Superdupernova, Sonicwave32, Lukajohn70, Rishi
Neemkhedia, Sagar22more, Prateek Proo, Neil Schoolman, Virulentvowels, Abcd50000, NgYShung, Krlicmuhamed and Anonymous:
2488
Physical quantity Source: https://en.wikipedia.org/wiki/Physical_quantity?oldid=732829016 Contributors: Tobias Hoevekamp, The
Epopt, Koyaanis Qatsi, XJaM, PierreAbbat, SimonP, Patrick, SebastianHelm, Ahoerstemeier, Andres, Mxn, Mydogategodshat, Aqualung,
Jusjih, Robbot, Romanm, Giftlite, Herbee, Markus Kuhn, Simian, Karol Langner, Icairns, Notinasnaid, Che090572, Rbj, Dungodung,
Jrme, Velella, Zoohouse, Gene Nygaard, Linas, Miaow Miaow, Ttwaring, Nihiltres, Physchim62, Chobot, Bgwhite, The Rambling Man,
Jimp, Conscious, Rhythm, Ecoleetage, GrinBot~enwiki, Mejor Los Indios, SmackBot, Slashme, Blue520, KocjoBot~enwiki, Fuhghettaboutit, Lambiam, Tarantola, Khazar, John, JoseREMY, Munita Prasad, Lorikeet, Postmodern Beatnik, CmdrObot, Jaeger5432, Kehrli,
Cydebot, Kanags, Paddles, Thijs!bot, Barticus88, PhJ, JAnDbot, Magioladitis, Geboy, R'n'B, Leyo, J.delanoy, Hodja Nasreddin, Ybk33,
NewEnglandYankee, Tygrrr, Idioma-bot, Soroush.mobasheri, WOSlinker, Yk Yk Yk, AlleborgoBot, SieBot, Jdaloner, Lightmouse,
Adamtester, Firey322, Jonathanstray, ClueBot, Samprul, The Thing That Should Not Be, Spoladore, Enenn, Jeknight, Ji Janouek, Mild
Bill Hiccup, Desruisseaux, Djr32, CohesionBot, Sun Creator, Vegetator, Addbot, Fgnievinski, FiriBot, Bostonquad, Ehrenkater, Lightbot,
Loupeter, Zorrobot, Luckas-bot, Mr.seuss, Yobot, Adi, THEN WHO WAS PHONE?, KamikazeBot, SolePensoso, Gtz, Xqbot, GrouchoBot, FrescoBot, Ribashka, AstaBOTh15, Pinethicket, LittleWink, Triplestop, MikeVanVoorhis, Share and Enjoy, Serols, TheBFG,
Tbhotch, EmausBot, WikitanvirBot, Sumsum2010, GoingBatty, RenamedUser01302013, Your Lord and Master, Hhhippo, Ouzel Ring,
Mar4d, Quondum, Tolly4bolly, L Kensington, Maschen, Donner60, Chlesimhae, Moocow121, ClueBot NG, Ulund, Widr, Helpful Pixie
Bot, ProjSHiNKiROU, F=q(E+v^B), AK456, Dexbot, Iskandersz, Frosty, Jochen Burghardt, Sergey L. Gladkiy, Daedalus3.14, DavRosen,
Xdever, Gautham komath, Upsilonprime, Maan Karate Buvan, Shafqat mahmood hazarvi, Komal9288 and Anonymous: 112
Post Oce Protocol Source: https://en.wikipedia.org/wiki/Post_Office_Protocol?oldid=737877798 Contributors: Vulture, VincentV,
Arcade~enwiki, Aldie, Hirzel, Ubiquity, Tregoweth, Card~enwiki, Haakon, Hashar, Daniel Quinlan, Pedant17, Shizhao, Joy, Johnleemk,
Wilinckx~enwiki, Psmith, RedWolf, Tim Ivorson, Geo97, Puckly, Hadal, Daniel Dickman, Varlaam, NSash, Rick block, Rick Block,
Ferdinand Pienaar, Gadum, Antandrus, Maximaximax, Hobart, Porges, Rpkrawczyk, SimonEast, JTN, Discospinster, Brianhe, Ckelsh,
Mani1, Pavel Vozenilek, Kbh3rd, Foolip, Hayabusa future, John Vandenberg, Cmdrjameson, Unquietwiki, Davidgothberg, Wrs1864,
Mrzaius, Thoric, Bart133, Fourthords, Suruena, TheFlow, Versageek, Adrian.benko, Madmardigan53, Miaow Miaow, Armando, Apokrif,
Tabletop, Ambar, MichaelDubner, Graham87, Amire80, Gareth McCaughan, ElKevbo, FlaBot, Chobot, Antiuser, UkPaolo, The Rambling Man, YurikBot, Wavelength, RobotE, Todd Vierling, Daverocks, Petiatil, Stephenb, Barefootguru, Wimt, SixSix, KGasso, Emc2,
Asterion, SkerHawx, AndrewWTaylor, SmackBot, Bggoldie~enwiki, Unyoyega, Apankrat, SMP, Snori, Deli nk, Oni Ookami Alfador,
Omniplex, Can't sleep, clown will eat me, WintersChild, Markhobley, Mwtoews, Tim Q. Wells, Jttodd, MTSbot~enwiki, Dead3y3, Grblomerth, Beno1000, Vinayksharma, FatalError, Zarex, JohnCD, Ozga, WeggeBot, Equendil, UncleBubba, Omicronpersei8, FrancoGG, Glenn
Anderson, Epbr123, Knakts, TXiKi, SusanLesch, Escarbot, Dzubint, AntiVandalBot, LibLord, Brum G, .anacondabot, LarryHughes, Ma-
416
gioladitis, Cander0000, Rettetast, R'n'B, Felipe1982, Pharaoh of the Wizards, Uncle Dick, Sigmundpetersen, Andareed, HiLo48, Ethd,
Xgmx, Matthew1471, Prhartcom, STBotD, Burzmali, Harry The Bustard, Bonadea, Shiryaev, Ale2006, Idioma-bot, Funandtrvl, Jmco,
VolkovBot, Oshwah, Milan Kerlger, Falcon8765, Chenzw, AlleborgoBot, FlyingLeopard2014, Kbrose, Gaelen S., Nubiatech, Caltas,
Oda Mari, Jimthing, Jdaloner, OKBot, Svick, Andrij Kursetsky, Denisarona, Amymeegan6, Loren.wilton, ClueBot, Snigbrook, The Thing
That Should Not Be, Squadri, Niceguyedc, Rockfang, PixelBot, John Nevard, Lartoven, Jotterbot, Versus22, Isode, Johnuniq, Pierzz, Addbot, Mabdul, Ronhjones, Vishnava, Fluernutter, Download, Coasting, , Kevinmcolaco, Legobot, Luckas-bot, Yobot, Ptbotgourou,
TaBOT-zerem, Pcap, Xqbot, Joshyedward, Ute in DC, RibotBOT, SassoBot, Chatul, Ez leviathan, HRoestBot, RedBot, JnRouvignac, Tbhotch, EmausBot, John of Reading, WikitanvirBot, BabsiSnoecks, GoingBatty, Jera22, Thecheesykid, ZroBot, Hazard-SJ, Birdsclose22,
ClueBot NG, Blackmetalgrandad, MelbourneStar, Snotbot, SLUG32, Helpful Pixie Bot, Calabe1992, Wbm1058, BG19bot, Green8907,
Compfreak7, Chmarkine, Yaroslav Nikitenko, Felixphew, Codename Lisa, Beige.librarian, Nodove, Comp.arch, JWNoctis, FockeWulf
FW 190, PeterSullivan12, Opencooper, Dorivaldo de C. M. dos Santos, Vj indian, JackeyDee, Fuchshuber and Anonymous: 262
Programming language Source: https://en.wikipedia.org/wiki/Programming_language?oldid=735524605 Contributors: Magnus Manske,
Matthew Woodcraft, Derek Ross, LC~enwiki, Brion VIBBER, Mav, Koyaanis Qatsi, AstroNomer, Jeronimo, Ap, Malcolm Farmer,
AlexWasFirst, Rjstott, Andre Engels, Fubar Obfusco, SimonP, Merphant, FvdP, Imran, Rlee0001, B4hand, Stevertigo, Hfastedge, DennisDaniels, Edward, K.lee, Michael Hardy, Tim Starling, Chris-martin, Kwertii, Nixdorf, MartinHarper, Ixfd64, TakuyaMurata, Karingo,
Minesweeper, Ahoerstemeier, Nanshu, Angela, Kragen, Poor Yorick, Nikai, Andres, Grin, Evercat, TonyClarke, , Jonik, Mxn, Vivin,
Speuler, Dave Bell, Dcoetzee, Reddi, Ww, Mac c, Dysprosia, Jitse Niesen, Gutza, Doradus, Zoicon5, 2988, Taxman, ZeWrestler, Bevo, Jph,
Jusjih, David.Monniaux, Mrje, Finlay McWalter, Pumpie, AlexPlank, Robbot, Noldoaran, Murray Langton, Friedo, Fredrik, Thniels,
RedWolf, Altenmann, SmartBee, Romanm, Rursus, Wlievens, Hadal, Borislav, Lupo, BigSmoke, Gwicke~enwiki, Tea2min, Ancheta
Wis, Gploc, Centrx, Giftlite, Thv, Dtaylor1984, Akadruid, PaulFord, Cobaltbluetony, Everyking, Esap, Wikibob, Mellum, Jorend, AJim,
Bonaovox~enwiki, Behnam, Ptk~enwiki, Macrakis, VampWillow, Bobblewik, Wmahan, Vadmium, Quagmire, Yath, Beland, Elembis,
Jossi, Phil Sandifer, DenisMoskowitz, Marcos, RainerBlome, Addicted2Sanity, Joyous!, Positron, Quota, Teval~enwiki, Zondor, Damieng,
EagleOne, Gazpacho, Mike Rosoft, Brianjd, SimonEast, Yana209, Noisy, Zaheen, Rich Farmbrough, Leibniz, Jpk, HeikoEvermann, Lulu
of the Lotus-Eaters, LindsayH, Michael Zimmermann, Paul August, Bender235, ESkog, Kbh3rd, Ben Standeven, Danakil, CanisRufus,
Hayabusa future, Shanes, Dgpop, Bobo192, AmosWolfe, Mpils, L33tminion, SpeedyGonsales, Photonique, Tgr, Saccade, Kickstart70,
Sam Korn, Phyzome, Simplyanil, Alansohn, Liao, Guy Harris, Diego Moya, Jeltz, Krischik, Wtmitchell, Suruena, Omphaloscope, Zawersh,
Voxadam, HenryLi, KTC, Forderud, Oleg Alexandrov, Mahanga, Revived, Innoid, Roland2~enwiki, Hoziron, Woohookitty, NewbieDoo,
Mu301, Nuggetboy, Ilario, Oldadamml, Nameneko, Ruud Koot, Goodgerster, Brentdax, KymFarnik, Dolfrog, Davidfstr, Mangojuice, Toussaint, Marudubshinki, Yoric~enwiki, Chun-hian, Kbdank71, Mendaliv, Pwv1, Icey, Ketiltrout, Sjakkalle, Rjwilmsi, Tizio, Angusmclellan, Koavf, Swirsky, Wikibofh, Amire80, Quiddity, Bruce1ee, Oblivious, Ligulem, DouglasGreen~enwiki, Bubba73, Reinis, GregAsche,
JanSuchy, Fantom~enwiki, FlaBot, Mathbot, Undeference, Nihiltres, Harmil, Vsion, Xavier Combelle, RexNL, Ewlyahoocom, Gurch,
Mpradeep, Quuxplusone, Tysto, Kri, Windharp, Chobot, Bgwhite, ColdFeet, Wavelength, Hairy Dude, RussBot, Hyad, Arado, Robert A
West, Taejo, Davidpdx, Bhny, Pi Delport, KSmrq, SpuriousQ, Edward301, Stephenb, Gaius Cornelius, Rsrikanth05, Wimt, CarlHewitt,
EngineerScotty, NawlinWiki, Wiki alf, Jaxl, Johann Wolfgang, BirgitteSB, Mccready, Brandon, Jpbowen, JulesH, Sekelsenmat, Nick C,
Tony1, Slaad, Natkeeran, BOT-Superzerocool, DeadEyeArrow, Perry Middlemiss, Ms2ger, Pooryorick~enwiki, WAS 4.250, Novasource,
Zero1328, Rushyo, Closedmouth, Jwissick, Kuciwalker, Cedar101, Peter, Donhalcon, Vahid83, Katieh5584, Kungfuadam, TuukkaH, DVD
R W, SmackBot, Tarret, Slashme, KnowledgeOfSelf, Lagalag, Vald, Brick Thrower, Alksub, Monz, ElAmericano, Xaosux, Gilliam, Duke
Ganote, Ohnoitsjamie, Bh3u4m, Bluebot, Klasbricks, LinguistAtLarge, JMSwtlk, Persian Poet Gal, SeeAnd, MK8, Jprg1966, Thumperward, Fplay, EncMstr, Victorgrigas, RayAYang, Nbarth, Royboycrashfan, Can't sleep, clown will eat me, Rrburke, Allan McInnes, -Barry-,
Cybercobra, Nick125, MisterCharlie, HarisM, Hammer1980, DMacks, MegaHasher, Vriullop, Derek farn, Ser Amantio di Nicolao, Wateres, Zarniwoot, Antonielly, JohnWittle, Ckatz, 16@r, A. Parrot, Eivind F yangen, Dan128, Slakr, Alhoori, Pieguy48, Xionbox, Dl2000,
SubSeven, Hu12, Stephen B Streater, Iridescent, Dreftymac, DavidHOzAu, Tawkerbot2, Vkhaitan, Switchercat, INkubusse, Acacix, Ahy1,
Georg Peter, Kris Schnee, Green caterpillar, Burkedavis, Jaxad0127, ShelfSkewed, MarsRover, Napi, Ezrakilty, Charlie Huggard, Ubiq,
Krauss, RenamedUser2, Fl, Peterdjones, Jason5ayers, Blaisorblade, Torc2, NotQuiteEXPComplete, Mattisse, Malleus Fatuorum, Epbr123,
Qwyrxian, N5iln, Headbomb, John254, Merbabu, Ideogram, AccurateOne, Natalie Erin, Escarbot, Acaciz, AntiVandalBot, Tewy, Gioto,
Luna Santin, Seaphoto, MHoover, Prolog, Jj137, Science History, VictorAnyakin, KHaskell, JAnDbot, JaK81600~enwiki, MER-C, IanOsgood, Andonic, Hut 8.5, PhilKnight, Four Dog Night, VoABot II, Necklace, Foobah, Tedickey, Catgut, Indon, JohnLai, Abednigo, Mkdw,
ArmadilloFromHell, DerHexer, Philg88, Khalid Mahmood, Calltech, Gwern, Kiminatheguardian, MartinBot, Benjaminct, Mschel, Autocratique, Tgeairn, J.delanoy, Pharaoh of the Wizards, Kimse, Trusilver, Giorgios (usurped), Ntalamai, Abeliavsky, Macaldo, Jesant13,
Acalamari, It Is Me Here, LordAnubisBOT, McSly, Nemo bis, Dominator09, SparsityProblem, Raise exception, NewEnglandYankee,
Rwessel, Ohms law, Cmichael, Ultra two, Juliancolton, LordCo Centre, Don't Copy That Floppy, Useight, Izno, Steel1943, Idioma-bot, Funandtrvl, Reelrt, Ottershrew, Red Thrushs Bot, VolkovBot, Cireshoe, Philip Trueman, Oshwah, Muro de Aguas, Charlesriver, Tomatensaft,
Lradrama, K12308025, BwDraco, Sgbirch, Noformation, MearsMan, PlayStation 69, Andy Dingley, Yk Yk Yk, Cnilep, AlleborgoBot,
Knyf, S.rvarr.S, EJF, SieBot, ATS, Sonicology, Tiddly Tom, Speed Air Man, Bill122, Krawi, Timhowardriley, Logarkh, Jerryobject,
Mwaisberg, Bentogoa, Happysailor, Flyer22 Reborn, Ranafon, Ferret, Faradayplank, Lightmouse, Techman224, BenoniBot~enwiki, Shane
A. Bender, HighInBC, ClueBot, CSProfBill, The Thing That Should Not Be, VsBot, Alliswellthen, Kedearian, Mild Bill Hiccup, Blanchardb, Takeaway, Robert Skyhawk, Iwantitalllllllll, Skytreader, Jotterbot, Hans Adler, Noosentaal, MelonBot, Chinabualo, SoxBot III,
HopeChrist, Darkicebot, Naderi 8189, Cp15, Slashem, Noctibus, MystBot, Dsimic, Addbot, JPINFV, L Gottschalk, DOI bot, Ronhjones,
Fieldday-sunday, Mentisock, Roux, Favonian, LinkFA-Bot, Systemetsys, Wikisedia~enwiki, Tide rolls, Krano, Gail, Jarble, Andylmurphy, Ben Ben, Legobot, Luckas-bot, Yobot, Midinastasurazz, OrgasGirl, Fraggle81, TaBOT-zerem, Abram.carolan, Pcap, Ningauble,
Peter Flass, Conor123777, AnomieBOT, Nottsadol, 1exec1, Jim1138, Galoubet, Ulric1313, Lucian1900, Materialscientist, Citation bot,
Maxis ftw, Fayt82, MauritsBot, Xqbot, Capricorn42, Jerey Mall, Gilo1969, XZeroBot, Miym, GrouchoBot, Papercutbiology, RibotBOT,
Gbruin, Russell Joseph McCann, Shadowjams, A.amitkumar, Apwestern, Captain-n00dle, Manpreett, Edgars2007, FrescoBot, Mark Renier, Mthrandir, DivineAlpha, Citation bot 1, I dream of horses, Elockid, HRoestBot, LittleWink, 10metreh, Jonesey95, Jschnur, , Robo
Cop, Txt.le, Trappist the monk, Cmdodanli, , Callanecc, TheTechFan, Specs112, Diannaa, WikiTome, Suusion of Yellow, Stroppolo, Vaibhavkanwal, DARTH SIDIOUS 2, Mean as custard, TomT0m, John lindgren, EmausBot, Orphan Wiki, Nima1024,
Carbo1200, Nutsnbolts222, Cogiati, Iuliatoyo, H3llBot, Karthikndr, Swatiri, Jguy, Noodleki, Carmichael, BioPupil, DASHBotAV, ClueBot
NG, A520, Mesoderm, Asukite, Snickel11, Danim, Helpful Pixie Bot, DBigXray, BG19bot, Krenair, Kangaroopower, Wiki13, MusikAnimal, J991, Compfreak7, Loriendrew, Nbrothers, Thomasuniko, Usman&muzammal, Teammm, Bobbygammill, Amitkumargarg88, Cyberbot II, Dexbot, Rezonansowy, Majilis, Damian.rouson, Steamerandy, Kooginup, Svensson1, Cathry, Ueutyi, Seanhalle, Vanamonde93,
Thetimperson, Grouphardev, Carrot Lord, Franois Robere, Wiki4Blog, Olmerta, Tentinator, Captain Conundrum, Komarov om, Alhade,
Uwe Lck, Ginsuloft, Inaaaa, Danielmask, Racer Omega, Lucky7-phool, Impsswoon, Fastdrummer, Monkbot, Theanimalover, Abdallasyam, Wildkrat52, Whikie, PotatoNinja, Malistomailie, TheMacroChip, Papapasan, Dorivaldo de C. M. dos Santos, Bridgetlane, TaqPol,
417
Esquivalience, Rubbish computer, Some Gadget Geek, Lee Ann Dickerson, Innite0694, Rajat293, KasparBot, Jose Diaz Sanchez Pablo
Garica Flores, Aro88, Grabtricks, The Quixotic Potato, LibbyLaneLonne, 45La45Lo33, Lukaslt13, Sahil qutub, Qzd, Music1201, CaptainGummyBearz, Eestrella198, Ushkin N, Arbor Fici, Allynykaza and Anonymous: 781
Public switched telephone network Source: https://en.wikipedia.org/wiki/Public_switched_telephone_network?oldid=729648328 Contributors: The Anome, Andre Engels, Gsl, Aldie, William Avery, SteveDay, MikkoM, Youandme, Steverapaport, Patrick, JohnOwens,
Michael Hardy, Darkaddress, Cameron Dewe, Looxix~enwiki, Tusixoh, Glenn, Crissov, Dysprosia, Radiojon, SEWilco, Robbot, Rfc1394,
DavidCary, Markus Kuhn, Niteowlneils, Leonard G., Rchandra, Falcon Kirtaran, Tagishsimon, Gloop, Chowbok, JeremiahOeltjen, Adrian
Sampson, Hugh Mason, JTN, Richardelainechambers, MBisanz, Fourpointsix, Bobo192, MarkWahl, Redlentil, Espoo, Disneyfreak96,
Poweroid, ChrisUK, Rohaq, Guy Harris, Wtmitchell, HenryLi, OwenX, ^demon, Ruud Koot, Graham87, BD2412, Yurik, Snaekid,
Pmj, Rjwilmsi, Makru, FlaBot, Ian Georey Kennedy, Polaralex, Chobot, YurikBot, Rsrikanth05, Cryptic, Hm2k, NickBush24, Adamn,
Jpbowen, Tony1, Nethgirb, Mysid, Elkman, Max Schwarz, Sharkb, Closedmouth, Petri Krohn, Hirudo, SmackBot, MerlinMM, JMiall,
Rick7425, Oli Filth, MalafayaBot, Duckbill, AmiDaniel, -ramz-, Nobodyinpart, Dicklyon, H, Kvng, Iridescent, BobbyLee, Joseph Solis in Australia, Az1568, Chetvorno, JohnTechnologist, CmdrObot, Ale jrb, BeenAroundAWhile, Yukoba~enwiki, Alaibot, Dragont,
Thijs!bot, Simeon H, Escarbot, Agnvoip, Alphachimpbot, JAnDbot, Harryzilber, Jan Friberg, Sln3412, Albany NY, Bellhead, Verkhovensky, AlephGamma, Kgeischmann, Calltech, I-baLL, Zahakiel, MartinBot, DrDorkus, Jim.henderson, Nono64, J.delanoy, Peter Chastain, NewEnglandYankee, Manassehkatz, Ishanbhanu, Birczanin, Netmonger, PNG crusade bot, TXiKiBoT, Vipinhari, Abtinb, Rei-bot,
Monkey Bounce, Doug, Isdnip, AlleborgoBot, Kbrose, Quietbritishjim, SieBot, Dwandelt, Gerakibot, Yunghkim, Mahehere, Jojalozzo,
Ebernat, Machina.sapiens, WordyGirl90, ClueBot, EoGuy, Taroaldo, Trivialist, Mlas, XLinkBot, Deadlyturtletank, WikHead, SilvonenBot, Dgtsyb, Addbot, AkhtaBot, Download, Numbo3-bot, Lightbot, Loupeter, Zorrobot, , Luckas-bot, Bunnyhop11, KamikazeBot, Vini 17bot5, AnomieBOT, New2way, Rubinbot, Kingpin13, Abdulraheemsidz, Obersachsebot, Xqbot, Ranjandutta, Toetoetoetoe,
GrouchoBot, SimonInns, FrescoBot, Nageh, Haeinous, Austria156, Ezhuttukari, EmausBot, WikitanvirBot, Super48paul, Boundarylayer,
Rkononenko, Midas02, Anthony.selby, Miguelito2010, ClueBot NG, Widr, ZombieRamen, Voipsatellite, Rlegends, Earaps, Rp8083,
Mogism, Ptuttle123, Slumberbus, Haminoon, Tc.guho, Spasticsociety, Rajuarya125, Dinnypaul and Anonymous: 238
Radio Source: https://en.wikipedia.org/wiki/Radio?oldid=738162021 Contributors: WojPob, Brion VIBBER, Mav, The Anome, Christian
List, Ghakko, Roadrunner, Ray Van De Walker, Waveguy, Heron, Someone else, Stevertigo, RTC, Infrogmation, D, Boud, Michael Hardy,
Tim Starling, GABaker, Lexor, Liftarn, Ixfd64, Sannse, Paul Benjamin Austin, Karada, Gbleem, Spliced, Pagingmrherman, Tregoweth,
Gaz~enwiki, Ahoerstemeier, PJC, Haakon, Mac, ZoeB, Ron Davis, TUF-KAT, Plop, TUF-KAT, Msablic, Aarchiba, Ugen64, Glenn, Cyan,
Nikai, GCarty, Marknew, Mxn, Ilyanep, Arteitle, Hashar, Emperorbma, Ed Cormany, Reddi, Dysprosia, Wik, Tpbradbury, Munford,
Omegatron, Mdchachi, Raul654, Gakrivas, Flockmeal, Francs2000, Lumos3, Denelson83, Jni, Twang, Nufy8, Robbot, Pigsonthewing,
PBS, TMC1221, BenBreen2003, ZimZalaBim, Romanm, Modulatum, Meduz, Chris Roy, Academic Challenger, Blainster, Pcr, Hadal,
Wikibot, Borislav, Dhodges, Mushroom, ElBenevolente, Lupo, HaeB, TexasDex, Rsduhamel, Jooler, Alan Liefting, Centrx, Giftlite, Andy,
Wolfkeeper, Inkling, Meursault2004, HangingCurve, Mark.murphy, Wwoods, Everyking, Ssd, RatOmeter, Crusty Curmudgeon, Sundar,
Owen&rob, Jaan513, Bobblewik, Dainamo, Golbez, Wmahan, Doshell, Gadum, Utcursch, Abu badali, Formeruser-81, Antandrus, Beland, OverlordQ, JoJan, Piotrus, SimonArlott, Oneiros, Girolamo Savonarola, Kevin B12, Icairns, Sam Hocevar, Magnum1, Montanean,
Tcr25, Eisnel, Canterbury Tail, Bluemask, Xioyux, Mike Rosoft, D6, Astronouth7303, Archer3, Imroy, Noisy, Brianhe, Rich Farmbrough,
Rhobite, Rydel, FiP, TrbleClef, ArnoldReinhold, Deelkar, Bender235, Andrejj, Kbh3rd, Brian0918, Ht1848, El C, Aude, RoyBoy, Triona, Bookofjude, Amerika, Jpgordon, Bobo192, Nigelj, Fir0002, Clawson, Davidruben, Shenme, NigelP, Cmacd123, Adrian~enwiki,
ParticleMan, Diceman, Sukiari, MPerel, Merope, St0rm~enwiki, Ranveig, Zachlipton, Mrzaius, Poweroid, Alansohn, JYolkowski, Anthony Appleyard, Saa, Qwghlm, Tek022, Jeltz, SlimVirgin, Water Bottle, DreamGuy, Snowolf, Wtmitchell, Velella, Fledgeling, Wtshymanski, Quaestor~enwiki, Paul1337, Max Naylor, Endersdouble, Cmapm, DV8 2XL, Alai, Ghirlandajo, Redvers, Kazvorpal, Jakes18,
Dennis Bratland, Gosgood, Stemonitis, Gmaxwell, Angr, Richard Arthur Norton (1958- ), RHaworth, BillC, Bonus Onus, Fuss, Fred J,
Wikiklrsc, Andromeda321, LadyofHats, Jon Harald Sby, MechBrowman, Prashanthns, Gimboid13, Weevil, Kryptops, Zpb52, Pgosta,
Dysepsion, LimoWreck, Kesla, Graham87, Marskell, Qwertyus, Chun-hian, MC MasterChef, Kbdank71, Canderson7, Sj, Rjwilmsi,
Koavf, Misternuvistor, Bruce1ee, Vegaswikian, Mbutts, Fred Bradstadt, Sango123, Yamamoto Ichiro, SNIyer12, Kevmitch, FayssalF,
SchuminWeb, RobertG, Musical Linguist, Doc glasgow, Nsjoker, Nihiltres, Fragglet, RexNL, Gurch, Talk1370, Lmatt, Windharp, Toi,
King of Hearts, Frappyjohn, Sharkface217, DVdm, Mhking, Peter Grey, Roboto de Ajvol, Wavelength, Samuel Wiki, Phantomsteve, RussBot, J. M., Conscious, Splash, GLaDOS, DanMS, SpuriousQ, Chaser, Chrisjustinparr, Zelmerszoetrop, RadioFan2 (usurped), Stephenb,
Gaius Cornelius, Zimbricchio, CambridgeBayWeather, Alvinrune, Rsrikanth05, Dsmouse, Wimt, Willpo~enwiki, NawlinWiki, Ethan,
SEWilcoBot, Wiki alf, Rjensen, Steven Hepting, Irishguy, Malcolma, DAJF, Davidpk212, Alex43223, Flyset, Bucketsofg, Dbrs, DeadEyeArrow, Nescio, Groink, Xedaf, Thomas H. White, Werdna, Djdaedalus, Gohiking, Wknight94, Searchme, FF2010, Sadistik, Light
current, 21655, Deville, Zzuuzz, MaNeMeBasat, ToyoWolf, Nelson50, HereToHelp, Tyrenius, Spliy, Ethan Mitchell, Crazyquesadilla,
Allens, Junglecat, Snaxe920, RG2, Carlosguitar, Mohylek, Cmglee, Linkminer, DVD R W, Kf4bdy, David.hillshafer, Veinor, SmackBot,
MattieTK, Haza-w, Terry1944, KnowledgeOfSelf, Hydrogen Iodide, McGeddon, Pgk, Sea diver, Jagged 85, Davewild, Thunderboltz,
Stephensuleeman, Renesis, Delldot, Fractal3, Jonathanwagner, Kintetsubualo, Alsandro, SmartGuy Old, Gilliam, Ohnoitsjamie, Skizzik,
Carl.bunderson, Micwea, Jcarroll, Cabe6403, Kmarinas86, Science3456, Hraefen, Armeria, Schmiteye, Chris the speller, Kharker, Wuyz,
MK8, Miquonranger03, Domthedude001, SchftyThree, Akanemoto, Leoni2, Mark7-2, Whispering, Baronnet, CMYK, Can't sleep, clown
will eat me, Shalom Yechiel, Jennica, Snowmanradio, Ostermana, Darthgriz98, Yidisheryid, WinstonSmith, Rrburke, Benjamin Mako
Hill, ArmitageShanks, Edivorce, Renegade Lisp, Mugaliens, Badbilltucker, Huon, Jmlk17, Ganchelkas, Aldaron, MrRadioGuy, Smooth
O, BesselDekker, Quizman1967, Mindraker, Funky Monkey, MisterCharlie, RobHarding, Xagent86, Kalathalan, Bretonbanquet, Cottingham, Ck lostsword, Kukini, Qmwne235, The undertow, Petr Kopa, Quendus, Kuru, Euchiasmus, Vgy7ujm, Arthuralee, J 1982, Andrewjuren, Kipala, GCW50, Coredesat, Minna Sora no Shita, Gwest1, MonstaPro, Mr. Lefty, Otterman665, A. Parrot, MarkSutton, Slakr,
Beetstra, Kondspi, Bendzh, Waggers, CUTKD, E-Kartoel, Butler david, Dr.K., Peter Horn, Kvng, Hu12, Ginkgo100, Levineps, DouglasCalvert, OnBeyondZebrax, White Ash, Spark, Cynric~enwiki, IvanLanin, Stereorock, Az1568, Courcelles, Linkspamremover, Bannanas,
Waer, Tawkerbot2, Cassamine, Daniel5127, Chetvorno, Dan1679, Jchittoor, Fritz28408, The Haunted Angel, JohnTechnologist, IanWills, Mosaa, JForget, Peter1c, Scohoust, Nczempin, Mig11, MrZap, Birdhurst, McVities, Requestion, Lazulilasher, Ravensfan5252,
Yaris678, Book M, Gogo Dodo, B0Rn2bL8, Anonymi, Flowerpotman, Pascal.Tesson, Scott14, Trident13, DumbBOT, Phonemonkey,
JodyB, Vanished User jdksfajlasd, Nol888, Gimmetrow, Click23, Ozguy89, Marqmike2, Epbr123, Doct.proloy, Kussy, Pampas Cat,
Mishmash8, Dnyhagen, Spunker540, Picus viridis, X201, Mnemeson, Leon7, Sgaragan, MichaelMaggs, Natalie Erin, CTZMSC3, Escarbot, Grandin, Mentisto, AntiVandalBot, Seaphoto, Mrshaba, Jbaranao, Epischedda, Venya, Xbox360wraith, Tomgray, LuckyLouie,
Jc3, Chill doubt, Bdean1963, Beachyboy, LegitimateAndEvenCompelling, Myanw, Uusitunnus, JAnDbot, Husond, Harryzilber, Barek,
MER-C, Fetchcomms, Andonic, Erpel13, Greensburger, Masked boy~enwiki, Parcemihi~enwiki, Jed S, SiobhanHansa, Acroterion, Geniac, Magioladitis, Creationlaw, Bongwarrior, VoABot II, AuburnPilot, JNW, Yandman, Paymani, Puddhe, Doug Coldwell, Jatkins,
Robomojo, Recurring dreams, Sgr927, Biokinetica, Cpl Syx, Glen, DerHexer, TheRanger, NatureA16, PhantomS, MartinBot, Meam-
418
vagabond, GM11, Jim.henderson, Rettetast, Rob Lindsey, Kostisl, Sfrandzi~enwiki, CommonsDelinker, AlexiusHoratius, Paulmcdonald,
Jmccormac, Gutta Percha, LedgendGamer, Mausy5043, RockMFR, J.delanoy, Trusilver, Anilbg, Wa3frp, Tntdj, Uncle Dick, Maurice
Carbonaro, Jesant13, Jreferee, JA.Davidson, Shawn in Montreal, NX1Z, Listen2myradio, Jigesh, Jayden54, Chalyres, Jackobyte, AntiSpamBot, RoboMaxCyberSem, GhostPirate, NewEnglandYankee, Fountains of Bryn Mawr, Nwbeeson, Micz.or, SJP, Gregtzy, Ontarioboy, Liliana-60, BigHairRef, Smitty, Prhartcom, 2help, Cometstyles, Jamesontai, Znx, Davidezell, Bonadea, Useight, Eduardo Mendona
de Lima, CardinalDan, Idioma-bot, Funandtrvl, X!, Deor, VolkovBot, ABF, Almazi, Rclocher3, Chienlit, Philip Trueman, Majorxp, Jhon
montes24, Oshwah, Mercy, Ldonna, The Original Wildbear, Pachayachachic, Mr Percy, Drestros power, SteveStrummer, Arnon Chan,
Pjdd2, Qxz, Monkey Bounce, Anna Lincoln, Clarince63, Dendodge, HorusHawkX, Corvus cornix, DocteurCosmos, Martin451, Slysplace,
Person324, Abdullais4u, Eatabullet, LeaveSleaves, Raymondwinn, Arthurs1212, Uannis~enwiki, Greswik, Andy Dingley, Wasted Sapience, Synthebot, Falcon8765, Enviroboy, Burntsauce, GlassFET, Thor12x, Ka6s, Symane, Logan, DigitalC, Tesla4life, EJF, Blue borg,
Smobri, Romeodesign, Millars, Tiddly Tom, Scarian, WereSpielChequers, NB-NB, Hertz1888, Dawn Bard, Viskonsas, Caltas, Matthew
Yeager, Command5, Thyroe, Yintan, M.thoriyan, MyNickname, Best 24, Dochdododo, Keilana, Bentogoa, Happysailor, Sletfsak2, Oda
Mari, ScAvenger lv, Faradayplank, AngelOfSadness, Joydrop, Stoneygirl45, Katecummings, Lightmouse, Manway, Rafamachine, Svick,
Datadrainacidblast, Jongleur100, Kristine.clara, Dust Filter, Mr. Stradivarius, Ascidian, PerryTachett, Denisarona, Jons63, Asher196,
Troy 07, Valiant11, Serialdownloader, Elassint, Rhyshuw1~enwiki, ClueBot, SummerWithMorons, LAX, Michael Gary Scott, Fspade,
Deviator13, GorillaWarfare, Jackollie, Snigbrook, Foxj, The Thing That Should Not Be, Littlekorea34, FLAHAM, Leonard 280, Drmies, Frmorrison, DanielDeibler, Wikijens, CounterVandalismBot, Skeeball93, Niceguyedc, EconomicsGuy, Gointv, Mayawi, Bob bobato, Neverquick, Nseidule, Chelseax3rose, Excirial, Jusdafax, Anquiliquest, Moreau1, Rcooley~enwiki, Wikitumnus, Eeekster, Conical
Johnson, Samx0x0x0, Abrech, Dropsore, Atomicfro, Vinhchaule, Arjayay, Jotterbot, Tinje, 7&6=thirteen, Razorame, Dekisugi, Deviljin21, SchreiberBike, Mlas, Safreeman, Q1w2e88, Calor, Girtyzg, Thingg, Maczad, Aitias, Footballfan190, 500million, Versus22, Sleddog71, Superherogirl7, Johnuniq, Egmontaz, Vanished user uih38riiw4hjlsd, Vanished User 1004, DumZiBoT, Qwertyqwertqwert, Aristokrata, Willem103, XLinkBot, Hotcrocodile, Spitre, Bar uurum, Gnowor, Andyl620, Vividenblem, Stickee, Rror, Bradv, Ed1234ab,
21stCenturyGreenstu, Avoided, WikHead, SilvonenBot, Badgernet, Noctibus, Artaxerxes, Subversive.sound, JinJian, S TiZzL3, Radiodata researcher, Milos Stevanovic, Addbot, Mortense, Manuel Trujillo Berges, Fyrael, Captain-tucker, Kingjames528, Otisjimmy1, Friginator, Fgnievinski, Swampre, Bob sagget jr., Fieldday-sunday, Laurinavicius, Kman543210, Aashleynj, Ka Faraq Gatri, Vrray people107,
MrOllie, XRK, Dylanrules123456789, LinkFA-Bot, 84user, Tide rolls, Lightbot, OlEnglish, Helt, Serge Lachinov, Gail, David0811, Albeiror24, Gursis11, Luckas-bot, Vedran12, Yobot, Fraggle81, II MusLiM HyBRiD II, Aldebaran66, Melvalevis, Joetaras, Troymacgill,
Washburnmav, SwisterTwister, Knownot, Axel22, MacTire02, OregonD00d, AnomieBOT, Stears81, Quangbao, Sertion, Jim1138, Galoubet, Eating Tomatoes, Piano non troppo, Kingpin13, RandomAct, Materialscientist, Citation bot, Anthonypunk1, Beenturns23, Crimsonmargarine, Kirchsw, TinucherianBot II, Timir2, LeX4051, The sock that should not be, Capricorn42, Drilnoth, Tex-linke, Jerey
Mall, Rainshower, Batesmas214, Teamitem, Crabman90210, AbigailAbernathy, TheIntersect, DjbFire, Ab1, Brandon5485, DaleDe, Yoganate79, EMDavidson, Astatine-210, Fotaun, GliderMaven, FrescoBot, Magnagr, Tangent747, Tobby72, A.Abdel-Rahim, Sky Attacker,
HJ Mitchell, Audemat, Blacky111, Jamesooders, Cannolis, HamburgerRadio, Citation bot 1, Connerandtom, MacMed, Pinethicket, I
dream of horses, Hard Sin, PrincessofLlyr, Pillo, Skyerise, Jschnur, Tesladeservescredit, Serols, SpaceFlight89, Meaghan, D1tempo, Hyater, Pankaj2211, EdoDodo, Cnwilliams, Postdeleter, Gryllida, Hsnmoom, Thrissel, Discographer, MAS10, Francis E Williams, Vrenator, Davish Krail, Gold Five, Wiki-Updater 2.0, Everyone Dies In the End, Mttcmbs, Brian the Editor, Suusion of Yellow, Tbhotch,
Reach Out to the Truth, Sideways713, Marie Poise, Mean as custard, Qwerky0o0, Jonathan Levy, Johnjones5278, Slon02, EmausBot,
Nebabc11, Thetofuseezall, Yuhter, Ken95, Immunize, Gfoley4, Jorge c2010, Yaleshen, Ajraddatz, TLPA2004, Dewritech, Courcelles
is travelling, GoingBatty, RA0808, Robert376, CaptRik, Smappy, Cherrybear101, Slightsmile, Tommy2010, Hagis5555550, Wikipelli,
K6ka, Hagisman, Thecheesykid, Kkm010, 15turnsm, 88frog88, Susfele, Chuck Baggett, F, A930913, H3llBot, Wayne Slam, Rcsprinter123, TechWriterNJ, Gsarwa, Adbatson, ChuispastonBot, Teapeat, 28bot, Superdehound, Halfbreed m, Cgt, ClueBot NG, Smtchahal, Winsladed08, CocuBot, This lousy T-shirt, BarrelProof, Jayanthkrishna, DobriAtanassovBatovski, Jocelyncarrasco, Snotbot, Crossreradio, Mesoderm, Widr, Reify-tech, Theopolisme, Oddbodz, Helpful Pixie Bot, Ghostshock, Kiwitunza3, Strike Eagle, Titodutta,
Wbm1058, Lowercase sigmabot, BG19bot, Stupidguy24, TCN7JM, Spoons14, Northamerica1000, ISTB351, Commandochris, MusikAnimal, Planetary Chaos Redux, Mark Arsten, JHobson2, Robert the Devil, Soerfm, 17morria, Loriendrew, Klilidiplomus, Tucci mayne,
Happenstancial, Cqdx, Miszatomic, Jamecons, MartinBoudreault, Embrittled, Diyanah satariah, Total-MAdMaN, Epicwo, Nikeboy175,
Adias13, Elddup11, Rahulradio, Hmainsbot1, Webclient101, Boby9952, SFK2, Reatlas, Iturbe Online, Fycafterpro, Faizan, Aftabbanoori,
Baconatorsforall, JamesMoose, Jakec, DetroitSeattle, Do Thang, Syamsunders, DavidLeighEllis, Kavithasri362, Liquid Lime18, Sirwalterdouglas, Comp.arch, Finnusertop, Ginsuloft, George8211, Noyster, Mrman21, UY Scuti, Meteor sandwich yum, Bballer123456789321,
Esl555666, TrekkieSpeller, Mortierr, HHubi, Crookedy0ungg, Superdragonmonster, Monkbot, Nemasdia5673, Patient Zero, Sssredg,
Phemmyjohnson, Golf, Meep876, 3primetime3, HMSLavender, Idunnowhat, Himisterpie, Beeshal Khadka, Craig Leo Johnson, Scientistmangesh, REDIRECT, SQMeaner, KasparBot, Chand3994, Blamheadshot11, Agricola123, ProprioMe OW, Pulltea, Swissinator,
Filpro, Bigmike88, Bigboombox, Goose121, CLCStudent, Duraka Radio, Jekson Bim, Wobblytabletop, Mariusrobin1981, Westofawesome, Radio batista ide, Su69, Stuthings1234567891011121314151617181920, On the ceiling, Electivo000 and Anonymous: 1504
Semantics Source: https://en.wikipedia.org/wiki/Semantics?oldid=736198078 Contributors: The Anome, Youssefsan, Vaganyik, Ortolan88, Ben-Zin~enwiki, Hannes Hirzel, Heron, Ryguasu, Netesq, Stevertigo, Michael Hardy, Pit~enwiki, Gdarin, Rp, Kku,
Looxix~enwiki, Glenn, Rossami, Andres, Hectorthebat, Jitse Niesen, Mjklin, Haukurth, Shizhao, Fvw, Jens Meiert, Jon Roland, Seriv,
Robbot, Lambda, Pigsonthewing, Jakohn, Kiwibird, Sverdrup, Rursus, Moink, Spellbinder, Marc Venot, Gwalla, Markus Krtzsch,
Jpta~enwiki, HHirzel, Everyking, Zhen Lin, Eequor, Khalid hassani, Jackol, Javier Carro, JoJan, Mukerjee, Augur, Kntg, Bornslippy,
Urhixidur, Yuriz, Lucidish, Rich Farmbrough, Cacycle, Rama, Slipstream, Kzzl, Dbachmann, Paul August, Jaberwocky6669, Evice, El C,
Chalst, Joanjoc~enwiki, Linkoman, Stesmo, Enric Naval, Nortexoid, Jonsafari, Jooyoonchung, Helix84, Anthony Appleyard, Mark Dingemanse, Sligocki, Cdc, Sabrebattletank, Ish ishwar, Tycho, EvenT, Jason L. Gohlke, Redvers, Simlorie, Galaxiaad, Ott, Jtauber, Velho,
Woohookitty, Mindmatrix, Kokoriko, Kelisi, Analogisub, SDC, Mandarax, Graham87, Imersion, Rjwilmsi, Mayumashu, Koavf, Jivecat,
Dmccreary, Brighterorange, Mlinar~enwiki, NeoAmsterdam, FlaBot, Sinatra, Nihiltres, Isotope23, Ben Babcock, Vonkje, Comiscuous,
Lambyuk, Chobot, Sonic Mew, Roboto de Ajvol, YurikBot, Wavelength, Hairy Dude, Retodon8, Stephenb, Anomalocaris, NawlinWiki,
Maunus, MarkBrooks, JECompton, WAS 4.250, Light current, G. Lako, Lt-wiki-bot, Donald Albury, SMcCandlish, JuJube, Pred, AGToth, NickelShoe, Sardanaphalus, SmackBot, Zerida, Unyoyega, Shamalyguy, Gilliam, Lindosland, Chris the speller, MasterofUnvrs314,
MK8, MalafayaBot, Droll, Jerome Charles Potts, A. B., Scwlong, Zsinj, Frap, Ioscius, Chlewbot, SundarBot, Khoikhoi, Cybercobra,
Iblardi, Battamer, Jon Awbrey, Byelf2007, SashatoBot, 16@r, Hvn0413, Nabeth, Kvng, Hu12, Gandalf1491, J Di, DEddy, Ziusudra,
George100, Stifynsemons, Wolfdog, Sir Vicious, Kensall, Gregbard, FilipeS, Cydebot, Warhorus, ST47, Quibik, Nickleus, Gimmetrow,
Thijs!bot, Wikid77, Runch, Mbell, Dalahst, Azymuthca, X201, Nick Number, Mentisto, AntiVandalBot, Shawn wiki, Gioto, Widefox,
TimVickers, Dylan Lake, Danny lost, JAnDbot, MER-C, Shermanmonroe, Jmchambers90, Dcooper, .anacondabot, Daveh1, AndriesVanRenssen, Tmusgrove, Nicodemus13, Mahitgar, Revery~enwiki, Mechanismic, Ekotkie, MartinBot, J.delanoy, Cyborg Ninja, Piercetheor-
419
ganist, Dbiel, Rod57, AKA MBG, Lygophile, Erick.Antezana, Lrunge, RasputinJSvengali, Macedonian, LokiClock, Philip Trueman, Amos
Han, TXiKiBoT, Purpose Observatory, Aaeamdar, Goberiko~enwiki, HillarySco, Merijn2, Synthebot, Lova Falk, Cnilep, Jimbo2222, Logan, Botev, SieBot, Nubiatech, Kgoarany, Asder, PaulColby, Jerryobject, Yerpo, ScAvenger lv, Strife911, Bguest, MiNombreDeGuerra,
Doc honcho, CharlesGillingham, Emptymountains, Martarius, ClueBot, Bbadree, Tanglewood4, Eklir, Niceguyedc, DragonBot, Awi007,
PixelBot, Vanisheduser12345, Rhododendrites, MacedonianBoy, Cenarium, Aleksd, Micmachete, MystBot, Alanthehat, Addbot, Rdanneskjold, The singapore ministry of education sucks, AVand, Guoguo12, Landon1980, Friginator, K1US, Aboctok, Ayatniazi, CanadianLinuxUser, Pirtskhalava, CarsracBot, Numbo3-bot, Erutuon, Tide rolls, JAHendler, Krixou, Legobot, Luckas-bot, TaBOT-zerem, Vanished user rt41as76lk, AnakngAraw, 8ung3st, Molewood6, Rockypedia, Rjanag, Govindmaheswaran, Jim1138, Materialscientist, Citation
bot, LilHelpa, Xqbot, Hyggelig, Lynch9000s, Aenioc, JustinCope82, Omnipaedista, Benjamin Dominic, FrescoBot, Levalley, Citation
bot 1, Mundart, Smithonian, Harold Philby, Pinethicket, Joost.b, RedBot, MastiBot, Nora lives, FoxBot, , Jonkerz, Lotje,
Theyetiman12345, RobotQuistnix, 2bluey, Mchcopl, Zegarad, EmausBot, Je, Active Banana, Hpvpp, Dcirovic, Alexey.kudinkin, Llamas4drama'10, Unreal7, SporkBot, Gabnh, Eric Biggs, Edunoramus, Kgsbot, Ready, Odysseus1479, Tijfo098, Manytexts, ClueBot NG,
Squarrels, Aniketdalal, Movses-bot, Helpful Pixie Bot, BG19bot, BenSmak, Boblibr, KateWishing, Lawandeconomics1, MusikAnimal,
Davidiad, Tom Pippens, Semantia, UnconsciousInferno, Darylgolden, Suraduttashandilya, Dave5702, Kevin12xd, Faizan, Bienmanchot,
Ahernandez33, Didigodot, Noizy Boy, Sarahjane212013, Pavel Stankov, Seagull123, Csusarah, FelixRosch, Good afternoon, Nkkenbuer,
Spyker247, KasparBot, Vjpand, George Bakouropoulos, Sykonos, Jman2324, Wilhelm Turing and Anonymous: 289
SOAP Source: https://en.wikipedia.org/wiki/SOAP?oldid=737607701 Contributors: Joakim Ziegler, Mav, The Anome, Christopher Mahan, Aldie, Lloy0076, Hannes Hirzel, Derek~enwiki, Sytone~enwiki, Michael Hardy, Ezra Wax, Modster, Nixdorf, Liftarn, Wwwwolf,
Kricxjo, Ronz, Samuelsen, Netsnipe, OliD~enwiki, Ehn, Nohat, Dysprosia, Rednblu, Jnc, Traroth, Joy, Khym Chanur, Veghead, UninvitedCompany, Chuunen Baka, Robbot, Celsius1414, Kristof vt, RedWolf, Kowey, Securiger, Wjhonson, Rrjanbiah, Diberri, David
Gerard, Javidjamae, Thv, Elf, Holizz, HangingCurve, Average Earthman, Bkonrad, Dawidl, Khalid hassani, Bluetulip, Tagishsimon,
Pgan002, Saucepan, Mzajac, Zmydlarz, BeakerK44, Andreas Kaufmann, Ferrans, Kustere, AliveFreeHappy, Delepster, Discospinster,
Pmsyyz, Dpm64, Smyth, Pavel Vozenilek, ColBatGuano, CanisRufus, MBisanz, Hayabusa future, Mkosmul, Triona, Saturnight, Aaronbrick, Femto, Kgaughan, Bobo192, Nigelj, Yongxinge, John Vandenberg, Duk, Darwinek, Dtynan, Flammifer, Minghong, Maebmij, Helix84, Krellis, Bijee~enwiki, Andrisi, Phils, Jumbuck, GoClick~enwiki, Alansohn, WickieNcf, Fg, Calton, !melquiades, RoySmith, Wtmitchell, Suruena, RubenSchade, Ethilien, Voxadam, Ironwolf, Mindmatrix, Unixer, WadeSimMiser, Schzmo, Al E., MyFavoriteMartin,
Gyrae, Toussaint, Marudubshinki, Gwil, Ashmoo, Tzadikv, Jetekus, Kbdank71, Yurik, Rogerd, Isaac Rabinovitch, Rillian, Netan'el,
Ttwaring, Boteman, HughJorgan, Munahaf, FlaBot, Margosbot~enwiki, Jamiecampbell, Ben Babcock, Sderose, M7bot, Marcuswittig,
Lasombra, Daev, Chobot, DVdm, Adam J. Sporka, Peterl, YurikBot, RobotE, Todd Vierling, TimNelson, DanMS, SpuriousQ, Manop,
Pseudomonas, Bovineone, Wiki alf, Bachrach44, Grafen, Prickus, LodeRunner, BrEyes, Scope creep, Simon80, MurrayRM, QuickBrownFox, 21655, Cedar101, CIreland, Algae, SmackBot, Herostratus, Vald, Mr link, Zserghei, RlyehRising, Brossow, HalfShadow,
Gilliam, Skizzik, Nahtanoj04, NickGarvey, Psiphiorg, ARK, Thumperward, Oli Filth, Jerome Charles Potts, Jenny MacKinnon, Can't sleep,
clown will eat me, Eliyahu S, Nixeagle, Kaimiddleton, Jpaulm, Safwankenobi, Cybercobra, Warren, Iridescence, DMacks, Crandmck,
Fireswordght, DKEdwards, Wiesel 99, Zearin, JzG, Vanished user 9i39j3, Soap, Soumyasch, Bezenek, Nux, Wickethewok, Ernstdehaan, Loadmaster, Optimale, Brainix, Yaxh, Kvng, Syberguru, Hu12, Dreftymac, Paul Foxworthy, Zero sharp, Destro, Danlev, FatalError, JForget, DSosnoski, WeggeBot, Cydebot, Nessymonster, Ryan, MC10, Gogo Dodo, Daniel Olsen, Thijs!bot, Epbr123, Robsinden,
Gamer007, Towopedia, RickinBaltimore, TXiKi, OrenBochman, Desmoh, Escarbot, AntiVandalBot, Mack2, Dockurt2k, JAnDbot, Sjlain,
Coolhandscot, Acroterion, Enjoi4586, Magioladitis, Bongwarrior, VoABot II, Nyq, JNW, JamesBWatson, Eltener, Tedickey, Rami R,
Scharer, Slartibartfast1992, Ianaf4you, Japo, SemiEvolved, Seashorewiki, KarlPihlblad, Lengyeltom, PDX Aaron, MartinBot, Actorma,
Mooglemoogle, J.delanoy, Mange01, Sorek, JohnicholasHines, Satchy, Reedy Bot, Asbjornu, LordAnubisBOT, Grshiplett, GaborLajos, Midnight Madness, Cometstyles, BOTones, Ale2006, BBilge, Lights, Netmonger, HughD, Leebo, Tcotco, Reinhardheydt, Edjanx,
Jsawiuk, Miranda, Rei-bot, Janom e, LeaveSleaves, Drappel, Waycool27, Najand, WinTakeAll, Dangiankit, Mcmohd20, Abhinav316,
Sapph, Vitz-RS, HiDrNick, Kbrose, Waxy Protector, Gorpik, Jzhang2007, VVVBot, Dawn Bard, Caltas, RJaguar3, Eclectic star, Althena, Samisa.abeysinghe, Happysailor, Darkimmortal, Truthandsanity, Alex.muller, OKBot, Svick, Nattelsker, ClueBot, Blanchardb,
Jusdafax, DavidABraun, Northernhenge, PixelBot, JeDonner, SpikeToronto, Vivio Testarossa, Dtwong, JamieS93, Pyrofork, Dekisugi,
Roberto999, Alejandro.imass, Bobcat43, Versus22, SoxBot III, DumZiBoT, Stabbyboyo, XLinkBot, Gnowor, Majkiw, JaredWBurt, DAud
IcI, WikHead, Dsimic, Sterremix, Ghettoblaster, Some jerk on the Internet, Shawisland, Aleksander Zawitkowski, Scientus, MrOllie, LaaknorBot, Edmund.vonderburg, Liassic, Tide rolls, Zorrobot, Kmacdowe, Menew222, Legobot, Luckas-bot, Yobot, Antonycarthy, KSiimson, Jim1138, Piano non troppo, Ham12343, Materialscientist, Superandoni, ArthurBot, Xqbot, Silver Spoon Sokpop, Clihanger,
Robmanson, RibotBOT, Bahaba, Cartque, 78.26, Intelliproject, Reggaloza, Cjolley101, Danested, Ilovenagpur, Sae1962, Iamfool, Ridvany, Pinethicket, I dream of horses, Arctic Night, RedBot, Jandalhandler, SchreyP, Yunshui, Reaper Eternal, Tbhotch, Reach Out to the
Truth, Soaguy, Christoph hausner, Jann.poppinga, VernoWhitney, DASHBot, Kadavralol, Apparati, EmausBot, Rsankarg39, IAMTHEORIGINALTED, RenamedUser01302013, Tommy2010, Wikipelli, K6ka, Xi3nt, Bveratudela, ZroBot, F, Access Denied, Oliynykd,
Manoj.aimca2, Coasterlover1994, Blanghals, Donner60, ChuispastonBot, Wjburnett, ClueBot NG, Laurentdk01, Gareth Grith-Jones,
Snanda85, Arnold4411, Widr, Helpful Pixie Bot, DBigXray, BG19bot, Jkonkle, Iriducibilli, Dentalplanlisa, Negara13, Thomas Vissers,
Japrin, Achowat, BattyBot, David.moreno72, Cyberbot II, Mardux, Deyafragrance, 069952497a, Epicgenius, Koppor, Faisalsarfraz.fs,
Chasing chintu, BhavnaSharma9, Ketuls, Logan Lynn Roberts, Nikify, Jpnh7, Wowowwewa, NicksterDaRemixer, PromanXd, Vineetbattula, Ajjensen13, Skrynauw, Play123play123, Daniele.Brundu, GeneralizationsAreBad, ErdrickLoto, Rimal11, Hippopotomonstrosesquipedaliophobia, The idiot with paedos up above and Anonymous: 684
Software Source: https://en.wikipedia.org/wiki/Software?oldid=738232299 Contributors: Damian Yerrick, Peter Winnberg, WojPob,
Mav, Uriyan, Bryan Derksen, The Anome, Ap, Malcolm Farmer, Andre Engels, Christian List, Matusz, Fubar Obfusco, Ray Van De
Walker, SimonP, Ben-Zin~enwiki, Ezubaric, Leandrod, K.lee, Michael Hardy, Wshun, Chris-martin, Wm, Nixdorf, Pnm, Liftarn, Ixfd64,
GTBacchus, Delirium, Minesweeper, Mdebets, Ahoerstemeier, DavidWBrooks, Nanshu, Angela, , Salsa Shark, Nikai, Jiang,
Hectorthebat, Rl, Harvester, Mxn, Smack, Denny, Hashar, Feedmecereal, RickK, Jay, Andrewman327, Greenrd, DJ Clayworth, Maximus
Rex, Wernher, Bevo, Traroth, Topbanana, Joy, Raul654, Jusjih, Guppy, Chuunen Baka, Robbot, Paranoid, Chealer, Murray Langton,
Brent Gulanowski, Fredrik, RedWolf, Jmabel, ZimZalaBim, Nurg, Stewartadcock, Rholton, Meelar, Mendalus~enwiki, Hadal, JesseW,
ElBenevolente, Lupo, TPK, Cyrius, Dina, Dave6, Jop~enwiki, Centrx, Giftlite, Ktanzer, Kenny sh, Peruvianllama, Everyking, Erdal Ronahi, Guanaco, AlistairMcMillan, Horatio, Richard cocks, Jaan513, Edcolins, Ragib, ALargeElk, Gadum, Utcursch, Bact, Slowking Man,
Antandrus, Beland, Jam2k, Karol Langner, Maximaximax, Supadawg, Icairns, Raylu, Lindberg G Williams Jr, Jcw69, Revised~enwiki,
Jh51681, Torinor, Andreas Kaufmann, Asiananimal, Trevor MacInnis, Canterbury Tail, RevRagnarok, Gazpacho, Mike Rosoft, Scrool,
Dreamatalana, Poccil, Imroy, Jiy, Mindspillage, RossPatterson, Discospinster, Rich Farmbrough, Guanabot, Oliver Lineham, Michal Jurosz, Roybb95~enwiki, Paul August, Gronky, Bender235, ZeroOne, Andrejj, Neurophyre, S.K., Fenice, Danakil, Livajo, Hayabusa future,
Mwanner, Quinobi, PhilHibbs, Dennis Brown, Triona, Coolcaesar, Spoon!, Jpgordon, Causa sui, Bobo192, Stesmo, Smalljim, Xevious,
420
R. S. Shaw, Matt Britt, Nk, Minghong, Nsaa, Mdd, Liberty Miller, Knucmo2, Jumbuck, Michael Dring, Alansohn, Gary, Liao, Guy
Harris, Conan, Jtalledo, Riana, Wtmitchell, Velella, TaintedMustard, Super-Magician, Rebroad, Suruena, A.K.R., Itsmine, Versageek,
HenryLi, Dan100, Markaci, Kenyon, Oleg Alexandrov, Daveydweeb, Roland2~enwiki, Weyes, Kelly Martin, Woohookitty, Mindmatrix,
Recnilgiarc, RHaworth, Georgia guy, Andrewspencer, Ruud Koot, WadeSimMiser, JeremyA, MONGO, Schzmo, Puersh101, GregorB,
Jonnabuz, Wayward, Mandarax, BD2412, Chun-hian, Reisio, Sj, Seidenstud, Koavf, XP1, Nneonneo, Ligulem, Jehochman, Bubba73,
AlisonW, Fred Bradstadt, Utuado, Sango123, Yamamoto Ichiro, Flarn2006, FlaBot, Old Moonraker, DLMahnken, Nihiltres, Gurch,
KFP, Alphachimp, Silivrenion, Imnotminkus, Butros, Psantora, Chobot, Frappyjohn, DVdm, Gwernol, The Rambling Man, Wavelength,
Kinneyboy90, StuOfInterest, Pip2andahalf, RussBot, Bhny, Gardar Rurak, SpuriousQ, KevinCuddeback, Stephenb, Gaius Cornelius,
CambridgeBayWeather, Rsrikanth05, Wimt, DBHunter, LauriO~enwiki, Friday, NawlinWiki, Wiki alf, Grafen, AlMac, Justin Eiler,
Tejas81, Pohatu771, Malcolma, Xdenizen, Jpbowen, Mjchonoles, Moe Epsilon, Lucianob, Syrthiss, T, Brucevdk, Brat32, DeadEyeArrow, Jeremy Visser, Werdna, Navstar, Flipjargendy, Pooryorick~enwiki, Tigershrike, K.Nevelsteen, Emana, Ali K, Fang Aili, KGasso,
Th1rt3en, GraemeL, JoanneB, Alasdair, Rurik, CWenger, Thelb4, JLaTondre, Caballero1967, Allens, Katieh5584, Fctk~enwiki, TLSuda,
Rwwww, Gordmoo, CIreland, Arcadie, Luk, Sintonak.X, SmackBot, Reedy, Hydrogen Iodide, McGeddon, Lagalag, Unyoyega, Pgk,
Rbreen, DanielPeneld, WookieInHeat, Aoratos, Commander Keane bot, Yamaguchi , Cunya, Gilliam, Ohnoitsjamie, Hmains, Nmrd,
Mr Barndoor, Skizzik, Chris the speller, Bluebot, SlimJim, Quinsareth, Thumperward, Liamdaly620, Miquonranger03, Hmcnally, LaggedOnUser, SchftyThree, Xx236, J. Spencer, Nbarth, Vbigdeli, Philip Howard, Darth Panda, Edlin, Anabus, Carl007, Dethme0w, Can't
sleep, clown will eat me, AussieLegend, Frap, Ashawley, Nixeagle, MeekSaron, Snowmanradio, JonHarder, Yidisheryid, Addshore, Rgill,
Edivorce, Normxxx, Virtualsfera, Spectrogram, E. Sn0 =31337=, Cybercobra, Valenciano, Jiddisch~enwiki, Richard001, Grahamperrin,
Mini-Geek, Weregerbil, Sigma 7, LeoNomis, Jna runn, Sadi Carnot, Pilotguy, Mgrand, ArglebargleIV, Derek farn, Howdoesthiswo,
Kuru, Microchip08, Mike1901, Sadeq, Gobonobo, Nharipra, Park3r, Evenios, Tim Q. Wells, RomanSpa, 16@r, A. Parrot, Ehheh, Arkrishna, GilbertoSilvaFan, Optakeover, TastyPoutine, Ryulong, Axcelis555, Nabeth, Xionbox, MrDolomite, Hu12, Iridescent, Wimbit, J
Di, Paul Foxworthy, GDallimore, Tawkerbot2, Daniel5127, Flubeca, JForget, CmdrObot, Dycedarg, Dbstommy, Page Up, JohnCD, Nunquam Dormio, NickW557, Mpete510, FlyingToaster, Pgr94, Dan Fuhry, Skybon, Safalra, Equendil, Phatom87, Cahk, MC10, Crossmr,
Gogo Dodo, Fazilati, ST47, Nike8, Tawkerbot4, Clovis Sangrail, Christian75, Torc2, DumbBOT, Kozuch, Omicronpersei8, Landroo,
Tuxide, Epbr123, Brinnington, Marek69, DmitTrix, Neil916, NorwegianBlue, James086, Nick Number, Big Bird, SusanLesch, Mentisto, SC979, KrakatoaKatie, AntiVandalBot, Blarrrgy, Luna Santin, Seaphoto, Turlo Lomon, Rehnn83, Vanjagenije, Ellenaz, Manionc, Spencer, Yoooder, Myanw, MikeLynch, JAnDbot, Random89, Zarkos, Barek, MER-C, The Transhumanist, Instinct, Hello32020,
Hno3, Andonic, PhilKnight, Bearly541, LittleOldMe, Acroterion, True Genius, Magioladitis, Swikid, Bongwarrior, VoABot II, AuburnPilot, Wikidudeman, Tasja~enwiki, JamesBWatson, Ff1959, Frip1000, Kajasudhakarababu, Faizhaider, Tedickey, Twsx, Brusegadi, Paul
Niquette, KConWiki, Catgut, Teryan2006, PIrish, GSCC, Saleem110, Mkdw, Cpl Syx, Ripogenus77, DerHexer, WLU, Slingerjansen,
Oicumayberight, PeaceAnywhere, MartinBot, Dugmn, Mermaid from the Baltic Sea, Cargils02, Rettetast, Kostisl, R'n'B, Autocratique,
CommonsDelinker, Siliconov, EdBever, J.delanoy, Trusilver, Abby, Hans Dunkelberg, Aweiredguy, Public Menace, Jesant13, Ginsengbomb, 12dstring, Jreferee, Gueldenberg, Cpiral, DanielEng, Dispenser, Dominator09, AntiSpamBot, The Transhumanist (AWB), Darrendeng, Rwessel, FJPB, Aatayyab, Jackaranga, KylieTastic, Alien4, Entropy, , Remember the dot, Jester7777, Gtg204y,
Bonadea, Alan012, Sigondronggondrong~enwiki, Idioma-bot, Jsheadixon, Wikieditor06, VolkovBot, Johan1298~enwiki, ABF, Jcuadros,
Je G., Supersteve04038, Ademsaykin, Ishara665g, Jacqueline7894y, Lareina3656y, RainierHa, Philip Trueman, TXiKiBoT, Oshwah,
Lookingchris, Technopat, Dj stone, Zybez, Poo1000, Zerokewl, Seraphim, Canaima, Jackfork, Eidetic Man, Ah2190, Seb az86556,
Ilyushka88, Milan Kerlger, Nathanielrichards, Flash man999, Manik762007, Mwilso24, Kurowoofwoof111, BigDunc, Aleemqureshi,
Boriszex, Andy Dingley, This acccount is 4 vandalism, Dirkbb, Synthebot, Purgatory Fubar, Oldwes, Monty845, Nickels360, Rainier3,
Fredtheyingfrog, Gabecuevas, Kbrose, Tharcore, SieBot, Casperdog2227, Krawi, Gerakibot, One more night, Dawn Bard, Viskonsas, Timhowardriley, Triwbe, Dibcom, Yintan, Soler97, Lajpatdhingra, Keilana, Flyer22 Reborn, Oda Mari, Nosferatus2007, Jardawien, Allmightyduck, Zedlik, Oxymoron83, Listlist, Harry-, Hello71, Steven Crossin, Redmercury82, Miguel.mateo, Fratrep, Macy,
Kumioko, Majorbrainy, Iknowyourider, Jacob.jose, Maralia, Egbsystem, Denisarona, Into The Fray, Stillwaterising, Mr. Granger, Martarius, Sokrato~enwiki, Elassint, ClueBot, Kathmandu2007, Safarj, Prohlep, Artichoker, Hutcher, Fyyer, Foxj, The Thing That Should
Not Be, Rodhullandemu, Starkiller88, Jan1nad, Hellosandimas, Wysprgr2005, Ahadrt, Kornxi, Drmies, Mild Bill Hiccup, Uncle Milty,
Boing! said Zebedee, Wikijens, Davennmarr, CounterVandalismBot, N n abc123, Passargea, Puchiko, Pointillist, Narayana vvss, DragonBot, PEH2, Drewster1829, Excirial, Jusdafax, M4gnum0n, Jamesiemiller, Monobi, Eeekster, Setveen, Totie, Aqeelbilal, Ykhwong,
NuclearWarfare, Jotterbot, M.O.X, Elizium23, Noosentaal, ChrisHodgesUK, La Pianista, Timothy Neilen, Thingg, Versus22, Doriftu,
Perkinsleslie, HumphreyW, Apparition11, Party, Matthias M., SF007, SewerCat, DumZiBoT, Editorofthewiki, Bean2thousand, XLinkBot,
Fastily, Gnowor, SwirlBoy39, Jovianeye, Avoided, Skarebo, SilvonenBot, IngerAlHaosului, Cburress, Big milsy, Siggy28, Darkevilfairy,
Addbot, Pyfan, Some jerk on the Internet, Betterusername, Binary TSO, Ronhjones, CoolD, Scientus, CanadianLinuxUser, Fluernutter,
Cst17, MrOllie, BalderV, Chzz, Mcdonald.ross5, Favonian, ChenzwBot, Doniago, Jasper Deng, Quercus solaris, 5 albert square, Japonca,
Naik5abhi, Numbo3-bot, Dayewalker, Shakya ind, Tide rolls, Lightbot, Emvn, Krano, Teles, Wireless friend, Jarble, Phillip Ca, Legobot,
Kurtis, Yobot, OrgasGirl, Cloudyed, Ptbotgourou, Senator Palpatine, Fraggle81, TaBOT-zerem, MarioS, Pcap, The Earwig, ArchonMagnus, THEN WHO WAS PHONE?, TheBiaatch, A Stop at Willoughby, Fern80, Rogger.Ferguson, KamikazeBot, Knownot, Esoteric Rogue,
Whitew123, South Bay, Matty, Backslash Forwardslash, AnomieBOT, Message From Xenu, Kerfuer, Jim1138, Galoubet, Dwayne, Piano
non troppo, AdjustShift, Kingpin13, Amalhotra124, Materialscientist, Kc03, The High Fin Sperm Whale, E2eamon, La comadreja, Felyza,
LilHelpa, Kuldeep06march, MauritsBot, Xqbot, JimVC3, Jtbatalla, Lunaumbrax, P99am, S0aasdf2sf, Frosted14, T4tarzan, Sivaguru411,
RibotBOT, Wikicrazier2011, Amaury, Sorryranga94, Thurak13, Chongkian, Cyberstrike3000X, Shadowjams, A.amitkumar, Dougofborg, GliderMaven, FrescoBot, Luntrasul, Tangent747, Rhye123, W Nowicki, Recognizance, Zero Thrust, MD66, HJ Mitchell, QuintusQuill, Ragha joshi, DivineAlpha, Maggyero, Intelligentsium, Rajeshmagic, Trueshow111, T3h 1337 b0y, Boxplot, Winterst, Programmer13, Pinethicket, I dream of horses, HRoestBot, Edderso, Deggalega, Jonathandeamer, 10metreh, NinjaCross, NurAzije, LinDrug,
Skyerise, Hoo man, Jschnur, RedBot, Muhen, , Serols, Citypanther, Curtis23, Bgpaulus, Davie4125, Aardvarkzz,
FoxBot, SchreyP, DixonDBot, LogAntiLog, Drawnman247, Dinamik-bot, Vrenator, MrX, January, Allen4names, Aoidh, Nourybouraqadi,
Reaper Eternal, Jerd10, Nascar1996, Tbhotch, Hauberk, Burnisk, DARTH SIDIOUS 2, Andrea105, Mean as custard, RjwilmsiBot,
Shafaet, DSP-user, Rollins83, DASHBot, EmausBot, JMetzler, John of Reading, Orphan Wiki, Happyisenough, Nima1024, Speaksleft,
Gfoley4, 021-adilk, Priyadarshi.pratyush, Freeeeeesoft, Dinhtuydzao, Racerx11, Ethine, GoingBatty, RA0808, RenamedUser01302013,
Kelldall, Solarra, Slowmo1993, Tommy2010, Wexhammer, Dcirovic, K6ka, Anirudh Emani, Sitarherophil, Haunting The Better, Abufaisal65, F, Angela 2502, MithrandirAgain, Funnysens, Dgd, Howling wolf of the jungle, AManWithNoPlan, Wayne Slam, Ocaasi,
Tolly4bolly, Puneet1507, EricWesBrown, Crazykr, Arman Cagle, Vale Len, L Kensington, Jguy, Mayur, Donner60, Virtualenv, Arnabatcal, Pigduckmeatshroom, Rihannoufal, Sven Manguard, DASHBotAV, 28bot, Venkisree, Web20image, Cgt, Petrb, Xanchester, ABC1A1,
Gwen-chan, ClueBot NG, Salmon92, Standalone0109, Shaluhijas, Xplodercop, Iiii I I I, Matthiaspaul, Satellizer, Jcrwaford5, Shaddim, Hamiltn, HectorAE, Seven.cardwell, Delusion23, Mesoderm, O.Koslowski, DURWHAT, Manishgoyal.indian, Ankur 360, Widr,
421
Matt j fox, JordoCo, Vibhijain, Oddbodz, Helpful Pixie Bot, Alazlogexi, Calibooboo1, HMSSolent, Itikhaarrr, Titodutta, Wbm1058,
SteveWringseld, BG19bot, Pine, Prahim, Jennapresley, Salmank120, Hz.tiang, Tiu, Ceradon, Northamerica1000, Ex-dot, Marcelnache,
P.deshmukh09, Travelour, Joydeep, Altar, Jcdericco, Dynix, Insidiae, Morning Sunshine, Klilidiplomus, Achowat, Wannabemodel, Calcifero, Knodir, EricEnfermero, Yasirilyas, BattyBot, David.moreno72, Labscientist, Pratyya Ghosh, SaadTeenager, Dominic9821, Piasa1,
Vishwajith33, Zatya34, ChrisGualtieri, MrDKing, TC Cannon, Adriancjr, YountLor, Markwaugh117, FoCuSandLeArN, Priyaranjanchampatiray, Cwobeel, Majilis, Hackguard, Codename Lisa, MaggieMidnight, TwoTwoHello, Buspirtraz, Lugia2453, Andro ip, Frosty,
SFK2, Xxtt, Sriharsh1234, Joeinwiki, Ipodsof, Dave Braunschweig, Softwarenod, Moony22, Red-eyed demon, Gregwinwood11, Afoshay, Deboub, I am One of Many, Carrot Lord, Aura707, Anand8prakash, Kogmaw, Jakec, Taylor Bohl, Shubabegum, EvergreenFir,
Probusiness, Scharge, Reneve48, Oleg3280, Ahmlmh, Daideep patel, Sugavin, Babitaarora, Diptytiw, A Certain Lack of Grandeur, Wikiuser13, Ugog Nizdast, Melody Lavender, JustBerry, Markchloe, George8211, Lukeama, Dannyruthe, Parth pratim, Inaaaa, Andy Xucha,
Mmadade, WikiJuggernaut, Dee59, Rangerbot962, Jesus Morales Arce, Crow, Zeshannehal, Saisuryakattamuri, SergioGaeta, Abdllahijaz,
Hiranya Kumar Rajbongshi, Giliofelix, Charithvalluru1993, Filedelinkerbot, Prasoonnegi17, Vikash1122, Scarlettail, U2fanboi, Waggie,
Sanuamrani, Khali khelo, IagoQnsi, Gnamus, Forextread, Xombear, Thandi moyo, Marcel15255, Avidwriterforever, 3primetime3, Anny
Johnson, Malerisch, Asdklf;, Blurseeps, Eurodyne, JLalou, Shivanshis4, Kingabzy7, Firas Boudaqa, Gurjyottheman, X3mole, Zppix,
Abdulrahmanimthihar, Hussa095, Shahnawaz hussain nagori, SDSJAFDHSA, TROLLED81, Shantanuspark, SafeerAhmedAbro, Monaiva, Miaitza, AlishiaHolmes, Bazlul1, NANCYNCIT, OSMAX20, KasparBot, Bakosjen, MH Rabby khan, Adam9007, WhiteChek,
Priyanksoni9713, Saira500, Abhinavsfc, Oluwa2Chainz, Sro23, Ganeshkavhar1, Mahnoorali1305, Ruhulamin.khatri, Kurousagi, Sociable
Computer, Raheemhacker, MartinZ02, Thomasclewer1234, Hyperham51197, Ronaepaul, Qzd, I will erase, Athaniya nizamuddin, Tanveerdogar, Nooriezak, Emotionalllama, Naman kashyap, Fmadd, Madi Gregi, Asadsoft, JazzGW, Jeezidkwhatmedoinhere, Kayallwestfall
and Anonymous: 1597
State (computer science) Source: https://en.wikipedia.org/wiki/State_(computer_science)?oldid=732690552 Contributors: The Anome,
SimonP, Mjb, Lexor, TakuyaMurata, Grendelkhan, Owen, Ancheta Wis, Giftlite, COMPATT, Hypertex, Zuidervled, BoP, Abdull, Diego
Moya, Kusma, MIT Trekkie, Dpv, RobyWayne, Fresheneesz, Hairy Dude, Hydrargyrum, Zzuuzz, Reyk, SmackBot, BiT, Detter, JonHarder, Jaibe, Kvng, Ellin Beltz, Chetvorno, ChrisCork, Cydebot, Thijs!bot, Nick Number, Nthep, Magioladitis, Usien6, R'n'B, Hans
Dunkelberg, Matthew Yeager, M4gnum0n, Posix memalign, SchreiberBike, GlasGhost, DumZiBoT, Addbot, Ptbotgourou, JimVC3, Mark
Renier, Sae1962, Jfmantis, FluySquid, BG19bot, EditorRob, MrBill3, YFdyh-bot, Werddemer, Monkbot, Shannon hedges and Anonymous: 20
Syntax Source: https://en.wikipedia.org/wiki/Syntax?oldid=732551480 Contributors: Mav, RoseParks, Andre Engels, Karl E. V. Palmen,
Youssefsan, Vaganyik, William Avery, Ben-Zin~enwiki, Hannes Hirzel, Hirzel, Stevertigo, K.lee, Michael Hardy, Kwertii, Looxix~enwiki,
Ahoerstemeier, Darkwind, Glenn, Cadr, Hectorthebat, Chronotox, Charles Matthews, Haukurth, Hyacinth, Ed g2s, PuzzletChung, Robbot,
RedWolf, Altenmann, Dittaeva, Sverdrup, Academic Challenger, Rursus, Ojigiri~enwiki, Hippietrail, Hadal, Spellbinder, Rik G., Giftlite,
Marnanel, Raymond Meredith, Linguizic, Jdavidb, Neilc, Physicist, Andycjp, J. 'mach' wust, Sonjaaa, Beland, OverlordQ, MarkSweep,
Mukerjee, Oneiros, Karl-Henner, Tooki, Robin klein, N-k, D6, Poccil, Haggen Kennedy, Skal, Discospinster, Rich Farmbrough, Bender235, El C, Cherry blossom tree, Joanjoc~enwiki, Sietse Snel, Bobo192, Beige Tangerine, Viriditas, Dungodung, Kappa, Joe Jarvis,
Kjkolb, Morganiq, Jonsafari, Anthony Appleyard, Mark Dingemanse, Atlant, CR7, Ciceronl, Cromwellt, Ish ishwar, RJFJR, Mikeo,
Axeman89, Stemonitis, Nuno Tavares, Angr, Simetrical, Woohookitty, Mindmatrix, Bellenion, Kokoriko, JeremyA, Keta, Eilthireach,
Pasta Salad, Palica, Mrcool1122, Graham87, FreplySpang, Mayumashu, NatusRoma, TheRingess, Wooddoo-eng, Krash, Nguyen Thanh
Quang, Whimemsz, Malhonen, CJLL Wright, Chobot, DVdm, Martin Hinks, KEJ, YurikBot, Wavelength, RobotE, RussBot, Hyad, Pigman, Polyvios, Anomalocaris, Cquan, Zarel, Bayle Shanks, Pdblues, Action potential, Maunus, Wknight94, Zzuuzz, Donald Albury,
Miguelmrm~enwiki, JoanneB, CWenger, Thomas Blomberg, TuukkaH, Torgo, SmackBot, David Kernow, Jasy jatere, KnowledgeOfSelf, Zerida, David.Mestel, Unyoyega, Aurista25, C.Fred, Mgreenbe, Neutral-en, BiT, Niro5, Jwestbrook, Gilliam, Jcarroll, Rmosler2100,
Bluebot, Mazeface, Thom2002, MalafayaBot, J. Spencer, Rlevse, Can't sleep, clown will eat me, Mr.Z-man, Allan McInnes, SundarBot, Stevenmitchell, Ghiraddje, RandomP, Jon Awbrey, Fuzzypeg, FlyHigh, Byelf2007, SashatoBot, Derek farn, Rijkbenik, Tim Q. Wells,
Minna Sora no Shita, 16@r, J Crow, Slakr, Novangelis, Kvng, Joseph Solis in Australia, Joshuagross, Stifynsemons, Macetw, Thomasmeeks,
Gregbard, FilipeS, Icek~enwiki, Cydebot, Kallerdis, Robzy213, Thijs!bot, Epbr123, Jobber, ClosedEyesSeeing, John254, Adw2000, Nick
Number, Angryafghan, Pprabhakarrao, KrakatoaKatie, AntiVandalBot, Luna Santin, Prabhakar P Rao, Comhreir, Wayiran, Bogger, JAnDbot, Leuko, FromFoamsToWaves, MER-C, Rollred15, Freedomlinux, VoABot II, Pleckaitis, Rivertorch, Eldumpo, Yaxu, Glen, DerHexer,
CapnPrep, Kornfan71, Anaxial, R'n'B, Dwspig2, Smokizzy, J.delanoy, Hippasus, EscapingLife, Bogey97, Numbo3, Jerry, McSly, Rwessel,
SJP, Hulten, Idioma-bot, VolkovBot, Semmelweiss, Johan1298~enwiki, Je G., Gbouzon, TXiKiBoT, Oshwah, Guillaume2303, PaulTanenbaum, ^demonBot2, Natg 19, Yannis1962, Synthebot, Cnilep, Wiredrabbit, Jimbo2222, SieBot, Mycomp, Nihil novi, Flyer22 Reborn,
Space Dracula, Sky1er, Yerpo, Hexham, Oxymoron83, Tautologist, ClueBot, JonnybrotherJr, Pi zero, Mike Klaassen, CyrilThePig4,
Wutsje, ChandlerMapBot, Zack wadghiri, Rhododendrites, Divespluto, Fattyjwoods, SchreiberBike, Acabashi, Aitias, Versus22, Will
Hen, Cc116, XLinkBot, Jbeans, Starre777, Nyoro n, Addbot, Xp54321, ConCompS, Willking1979, Rmalouf, Vishnava, Coeeassured, Numbo3-bot, Lpjurca, Erutuon, Tide rolls, OlEnglish, Jarble, Legobot, Luckas-bot, Yobot, Ptbotgourou, Denispir, Raimundo Pastor, AnomieBOT, Quangbao, Rjanag, Springindd, IRP, JackieBot, Glenfarclas, Materialscientist, Citation bot, ArthurBot, TwigsCogito,
Jchthys, Xqbot, Triplejo2, Dr Oldekop, Omnipaedista, RibotBOT, MarkkuP, Acb4341, LucienBOT, Krj373, Airborne84, Mundart, Sopher99, Pinethicket, Jonesey95, Full-date unlinking bot, Dude1818, Jauhienij, k, Lotje, Tjo3ya, Reaper Eternal, Kajervi, Brian the Editor, Tbhotch, DARTH SIDIOUS 2, 2bluey, Mean as custard, Ripchip Bot, Uanfala, Jmonk95, EmausBot, GoingBatty, RA0808, Dcirovic,
K6ka, Mainstreet27, Goudron, Neddy1234, Tijfo098, ClueBot NG, AK IM OP, Iloveandrea, Helpful Pixie Bot, BG19bot, CityOfSilver, Solomon7968, AdventurousSquirrel, CitationCleanerBot, Qetuth, Nuyhij, ChrisGualtieri, Grahas02, ComfyKem, BigBangTheoryLad,
Kevin12xd, Beatrice57, BreakfastJr, JKJasmineWongLaiKwan, Cmckain14, Wikiuser13, Werddemer, ANALYN AYCOCHO, Monkbot,
Boblamus, Qwertyxp2000, Crystallizedcarbon, Loraof, YeOldeGentleman, Faze4life2k16 and Anonymous: 314
Technical standard Source: https://en.wikipedia.org/wiki/Technical_standard?oldid=728787835 Contributors: The Cunctator, Zundark,
Ben-Zin~enwiki, Olivier, Michael Hardy, Wapcaplet, Delirium, Gbleem, Mac, Yaronf, Darkwind, Glenn, Tobias Conradi, Dysprosia,
Hyacinth, Mackensen, Jusjih, Gentgeen, Vespristiano, Cyrius, Pengo, Adam78, Markus Kuhn, Bensaccount, Iceberg3k, Tagishsimon,
Jurema Oliveira, Saucepan, Secfan, Icairns, Karl-Henner, Zondor, EagleOne, CALR, Rich Farmbrough, Pjacobi, Mani1, Fajro, Azure
Haights, Hardwick, RussBlau, Schnolle, Gary, Spangineer, Wtshymanski, TShilo12, Angr, Mel Etitis, Pixeltoo, DESiegel, BD2412, Shortenfs, Rjwilmsi, SpNeo, Vegaswikian, Makru, AJackl, Computor, ColdFeet, Mercury McKinnon, YurikBot, RussBot, DMahalko, Gaius
Cornelius, Retired username, Malcolma, Wangi, Nescio, 21655, Aufaber, Liujiang, Crystallina, SmackBot, Brick Thrower, Eskimbot,
Alsandro, Chris the speller, Thumperward, Nmyers, Darius Dhlomo, Karlhauth, Hongooi, Frap, Yidisheryid, Azumanga1, Mordea, Derek
farn, Ckatz, 16@r, Sijo Ripa, Adomenic, Levineps, V111P, IvanLanin, Chetvorno, J Milburn, CmdrObot, Harej bot, Krauss, LouisBB,
Travelbird, Escarbot, Milesint, Danger, Albany NY, Bongwarrior, Dekimasu, Gabriel Kielland, Ratherhaveaheart, Alro, Lilac Soul,
422
Rlsheehan, WarthogDemon, Sbipes, Mercurywoodrose, Martin451, Gotox, Val.policelli, Altermike, !dea4u, Pkgx, Yintan, KathrynLybarger, Alex.muller, StaticGull, Havarn, ClueBot, Arakunem, A3camero, Dekisugi, StanStandard, Rror, Alexius08, Addbot, , JakobVoss, TaBOT-zerem, Hugoham7, Sillypants85, Sivanov87, Piano non troppo, AdjustShift, Barf73~enwiki, Materialscientist, Citypanes89,
Shaymetcalfe, Isheden, Wgladwin, FrescoBot, Originalwana, Merlion444, EmausBot, Chuchart W, ZroBot, Ego White Tray, Dineshkumar Ponnusamy, ClueBot NG, Organicdev, MerlIwBot, Wbm1058, PhnomPencil, Kolarp, Some Gadget Geek, KasparBot, New Media
Theorist, Gluons12 and Anonymous: 94
Telecommunication Source: https://en.wikipedia.org/wiki/Telecommunication?oldid=736395538 Contributors: The Cunctator, Mav,
Bryan Derksen, The Anome, Ap, Rjstott, Aldie, Heron, Olivier, Edward, Michael Hardy, Mahjongg, Dan Koehl, Kku, Ixfd64, Dcljr,
Sannse, Tregoweth, Card~enwiki, Ahoerstemeier, DavidWBrooks, Haakon, Bluelion, Glenn, Nikai, Tristanb, Raven in Orbit, Guaka,
Ralesk, Reddi, Hydnjo, Will, Wik, Tpbradbury, Munford, Maximus Rex, SEWilco, Topbanana, Fvw, Chuunen Baka, Robbot, Chrism,
Vespristiano, RedWolf, Romanm, Modulatum, Richardpitt, Stewartadcock, Rfc1394, Steeev, Rasmus Faber, Hadal, Borislav, Betsumei,
Fuelbottle, Cedars, Stirling Newberry, Giftlite, Inkling, Mblaze, Bradeos Graphon, Curps, Rick Block, Mboverload, Bobblewik, Edcolins,
Gloop, Mendel, Sonjaaa, Spatch, Antandrus, MarkSweep, Piotrus, Quarl, MacGyverMagic, Bumm13, PFHLai, Neutrality, Ratiocinate,
Deglr6328, M1ss1ontomars2k4, Trevor MacInnis, Bluemask, Jayjg, CALR, Indosauros, Discospinster, 4pq1injbok, Rich Farmbrough,
Bert490, Smyth, Mjpieters, Pavel Vozenilek, Bender235, ZeroOne, Radavidson, Kjoonlee, JoeSmack, Violetriga, Borofkin, El C, PhilHibbs, Art LaPella, Bobo192, Shenme, MaxHund, Maurreen, K12u, Jerryseinfeld, Timsheridan, Sysiphe, Jumbuck, Alansohn, Polarscribe,
Riana, Batmanand, Denniss, Wtmitchell, Rick Sidwell, TenOfAllTrades, Ceyockey, Herodotos, Kelly Martin, Woohookitty, Mindmatrix, Pol098, Tabletop, Wikiklrsc, MarkPos, Ajshm, MrSomeone, RuM, Matilda, Graham87, BD2412, Kbdank71, Mendaliv, Snaekid,
Casey Abell, Drbogdan, Rjwilmsi, Koavf, Hulagutten, Rillian, Vegaswikian, Makru, Titoxd, Margosbot~enwiki, RexNL, RobyWayne,
Intgr, Terrx, Srleer, Phoenix2~enwiki, DVdm, Bgwhite, Stephenw77, YurikBot, Wavelength, Radishes, RobotE, Splash, Admiral Roo,
CambridgeBayWeather, Pseudomonas, Robbyyy, NawlinWiki, Cquan, Jaxl, Usingha~enwiki, Anareon, Sir48, PhilipO, Mikeblas, Tony1,
Zwobot, Bucketsofg, BOT-Superzerocool, FF2010, Light current, 2over0, David Jordan, GraemeL, Tyrenius, ArielGold, Johnpseudo,
TLSuda, Rwwww, GrinBot~enwiki, Sbyrnes321, Veinor, SmackBot, InverseHypercube, Unyoyega, CyclePat, Blue520, Misto, Eskimbot, KelleyCook, Lakhim, Gilliam, Ohnoitsjamie, Hmains, Ppntori, Chris the speller, Persian Poet Gal, Payxystaxna, Oli Filth, Jeysaba,
Silly rabbit, Vasu99a, Telecom.portal, Colonies Chris, A. B., Stenson jack, , Mitsuhirato, Rrburke, Addshore, DR04,
A5b, Mion, Ugur Basak Bot~enwiki, SashatoBot, Rory096, Harryboyles, Demicx, Mike1901, Smasafy, Bushsf, GothCabbage, Aden Scott,
IronGargoyle, 16@r, Special-T, Shangrilaista, Beetstra, Milesdowsett, Mr Stephen, Dicklyon, InedibleHulk, SandyGeorgia, TastyPoutine,
Totel, Ffxaddict899, Jose77, Kvng, ShakingSpirit, SansSanity, OnBeyondZebrax, Iridescent, Joseph Solis in Australia, Ohad.cohen, Courcelles, Tawkerbot2, JohnTechnologist, JForget, CRGreathouse, CmdrObot, Wafulz, JohnCD, N2e, SkylineEvo, Thomasmeeks, Penbat,
Cydebot, Obornp, Gogo Dodo, Hughdbrown, Studerby, Kraky, Tawkerbot4, Ethan01, Kozuch, Lxdbsn, Malleus Fatuorum, Thijs!bot,
Hcberkowitz, John254, Tellyaddict, Solveforce, Dawnseeker2000, Escarbot, Mentisto, KrakatoaKatie, AntiVandalBot, Majorly, Luna
Santin, Grammargal, Venya, Qsa5kn, PJY, Juzaily, Julie Deanna, Lperez2029, Once in a Blue Moon, JAnDbot, Harryzilber, MER-C,
CosineKitty, PhilKnight, Kerotan, Magioladitis, VoABot II, Appraiser, Verkhovensky, Bwhack, ClovisPt, LorenzoB, DerHexer, Oicumayberight, Kayau, Gwern, Europaandio, MartinBot, Jim.henderson, R'n'B, CommonsDelinker, Erkan Yilmaz, J.delanoy, Pharaoh of the
Wizards, Trusilver, Wa3frp, Jesant13, A New Nation, It Is Me Here, McSly, Brolsma, Skier Dude, Zedh, The Transhumanist (AWB),
Fountains of Bryn Mawr, KylieTastic, DASonnenfeld, Mlewis000, Idioma-bot, Funandtrvl, Remi0o, Sam Blacketer, VolkovBot, DMcMPO11AAUK, AlnoktaBOT, Coreyxbs, Gaianauta, Sdsds, Philip Trueman, TXiKiBoT, Chimpex, GcSwRhIc, Bogatabeav, Saligron,
Canaima, From-cary, Mezzaluna, PDFbot, Bhavin105, Wiae, ARUNKUMAR P.R, SpecMode, Madhero88, Kjoseph7777, Mohan0704,
Aulman, Meters, IdleUser, Synthebot, Insanity Incarnate, Symane, Logan, Kbrose, SieBot, Moonriddengirl, Scarian, Gerakibot, Keilana,
JD554, Andrew Hartford, Matthewedwards, SPACKlick, WannabeAmatureHistorian, Ioverka, Nazi 2007, Lightmouse, RW Marloe, Ngriffeth, OKBot, Svick, Spitre19, Kristine.clara, Rapaporta, Jayeshtula, WikiLaurent, Asocall, Denisarona, Ossguy, Tuxa, Twinsday, Church,
Martarius, Elassint, ClueBot, Valeria70, GorillaWarfare, PipepBot, Qedu, Pvineet131, The Thing That Should Not Be, WaltBusterkeys,
SyntaxBlitz, Wutsje, Businessphonesystems, Bbb2007, Excirial, Hadiyana, Hugsforsale, Sun Creator, Georgiamonet, Arjayay, Razorame,
Muro Bot, Pwarrior, BOTarate, Hdorren, Murali intl, Carlroddam, Johnuniq, SoxBot III, Vanished user uih38riiw4hjlsd, Skunkboy74,
XLinkBot, NocturnalA6 2.7, Setherson, Sweetpoet, Gggh, Addbot, DOI bot, Fgnievinski, Bkmays, Leszek Jaczuk, Fluernutter, Kutulus, MrOllie, Download, Favonian, 5 albert square, Tyw7, Lightbot, OlEnglish, Gail, Zorrobot, MuZemike, -, Solidice190,
Luckas-bot, Yobot, OrgasGirl, TaBOT-zerem, Samsam.yh, THEN WHO WAS PHONE?, KamikazeBot, Nyat, AnomieBOT, Srobak,
Rsayles, Bsimmons666, Bowmanmas229, Jim1138, Galoubet, Gaga.vaa, Piano non troppo, Kjkarthikmaddy, AdjustShift, Materialscientist, Whiskers9, Citation bot, Jeremyjf22, Freeness, Elm-39, Schproject, DynamoDegsy, Readiwip, ArthurBot, MauritsBot, Xqbot, Capricorn42, 4twenty42o, IMarc89, LoKiLeCh, DSofa, Ched, Srich32977, Coretheapple, Wiki2contrib, Nasa-verve, GrouchoBot, Wizardist,
Omnipaedista, Smartishkindaguy, Bo98, Shadowjams, 11cookeaw1, SD5, Gururaju, A.amitkumar, Anth12, Tsiuser09, FrescoBot, GEBStgo, Alarics, Mthrandir, Finalius, Citation bot 1, XxTimberlakexx, Biker Biker, MacMed, I dream of horses, Lars Washington, MastiBot,
Ezhuttukari, Bridget Huntley, Serols, Blycroft, 123, Crusoe8181, Thrissel, V4nd3r, TobeBot, Trappist the monk, SchreyP, Paul
J Wayman, Lotje, Callanecc, Vrenator, Aoidh, TheGrimReaper NS, Merlinsorca, Minimac, Sideways713, DARTH SIDIOUS 2, Mean
as custard, Onfopt, Basangbur, Haylstorms, EmausBot, John of Reading, Orphan Wiki, WikitanvirBot, Gfoley4, Katherine, Pugliavi,
Primefac, GoingBatty, RA0808, MCI telcomm, Telecomman, Wikipelli, Sprinklezz, Kkm010, Vihar7, Cogiati, F, H3llBot, Marc Spoddle, LIVPAT, Alrino, IGeMiNix, Kaeh4, Donner60, Rifasj123, Rangoon11, Chris857, ChuispastonBot, ThePowerofX, Philippe BINANT,
Teapeat, Sepersann, 28bot, ClueBot NG, JetBlast, This lousy T-shirt, Draksis314, Satellizer, DobriAtanassovBatovski, Mrgates, Mr Myson,
Muon, Widr, Glauki, Helpful Pixie Bot, BG19bot, Hittman627, Brittanyab, Northamerica1000, Ashishkulshreshtha, Graham11, Colbry53,
Axis Research Mind, Joydeep, Swamynathan007, Elagoutova, HelinaZ, Achowat, Fylbecatulous, Pratyya Ghosh, Oreileao, Khazar2, Mnativesacl, Mhughes38, Katiewiltshire, FoCuSandLeArN, Opensourceyk, Thermocycler, PeacefulPlanet3, Lugia2453, Perep80, Me, Myself,
and I are Here, Reatlas, Joeinwiki, Phamnhatkhanh, Faizan, Anawesomeeditor, Rizwaanahamed3, Chriyu, DavidLeighEllis, Daideep patel, Ugog Nizdast, Melody Lavender, NottNott, Ginsuloft, Jianhui67, Danieltele, Joancdocyogen, Mendisar Esarimar Desktrwaimar, Iamandrewg, HHubi, Salton Finneger, Monkbot, Dsprc, Trackteur, Wikijuanjo1514, Chicken butt0192, MRD2014, Vkryla, ChamithN,
Prinzpopo, Esquivalience, NekoKatsun, MarkyNToby, JaDam, Aman.singh5317, Deborah Chiaravalloti, Unibateman, KasparBot, Dinnypaul, Kiprorodri, Srednuas Lenoroc, Salwati6, SamWolves23, Jhansiranim, Kate A. Steel, GSS-1987, Yazebi, JMBeggs74, Rajram123,
Fmadd, Monvoip and Anonymous: 758
Timeout (computing) Source: https://en.wikipedia.org/wiki/Timeout_(computing)?oldid=725752926 Contributors: Radiojon, Alerante,
Nabla, Sleske, Hooperbloob, Cdric, Pfalstad, RobyWayne, Srleer, CiaPan, Pi Delport, Robchurch, VinceBowdren, Deville, Breznanderl~enwiki, Tinucherian, Stijn Vermeeren, Jim.henderson, Jamelan, SieBot, DragonBot, Addbot, Jacopo Werther, AnomieBOT, Mikespedia, Lotje, AvocatoBot, Dexbot, Dnfkagogo and Anonymous: 12
Transmission Control Protocol Source: https://en.wikipedia.org/wiki/Transmission_Control_Protocol?oldid=737259878 Contributors:
WojPob, Brion VIBBER, Zundark, The Anome, AlexWasFirst, Andre Engels, Aldie, Fubar Obfusco, Jtk, Mjb, B4hand, PeterB, Edward,
423
Michael Hardy, Nixdorf, Kku, Meekohi, Karada, Dori, Pde, Mac, William M. Connolley, Ojs, BAxelrod, Harvester, Eirik (usurped),
Samuel~enwiki, Nikola Smolenski, Idcmp, Hashar, Timwi, Dcoetzee, Sepper, Andrewman327, Wkcheang, Jnc, Gamera2, Shizhao, Betterworld, Raul654, Rogper~enwiki, Robbot, Chealer, Fredrik, Tomchiukc, RedWolf, Nurg, PedroPVZ, PxT, Jondel, Bkell, Lupo, Dina,
Giftlite, Graeme Bartlett, DavidCary, Sim~enwiki, Kim Bruning, Inter, Wolfkeeper, Fleminra, Frencheigh, Saaga, Mboverload, Nayuki,
Jaan513, Jackol, SWAdair, Jsavage, Kasperl, Fishal, Haggis, Mendel, LiDaobing, Beland, Dnas, StuartCheshire, Mozzerati, Biot, Daniel
Staal, SamSim, Jewbacca, Thorwald, RevRagnarok, Scrool, N328KF, Imroy, Pmadrid, JTN, Discospinster, Pak21, Hydrox, Qutezuce,
Wrp103, Smyth, Bender235, Dewet, ZeroOne, Goplat, Plugwash, Glenn Willen, Evice, Syp, CanisRufus, Purplefeltangel, Kwamikagami,
Spearhead, Sietse Snel, RoyBoy, Spoon!, GalaxiaGuy, Smalljim, John Vandenberg, Arnhemcr, Foobaz, Makomk, Giraedata, SpeedyGonsales, Toh, Nk, Mhandley, Ryan Stone, Wrs1864, Helix84, MtB, Krellis, Klhuillier, Zachlipton, Guy Harris, DariuszT, Nealcardwell, Yamla,
SHIMONSHA, Lightdarkness, Fawcett5, Snowolf, Markrod, Vedantm, Velella, Rick Sidwell, Mark Bergsma, Cburnett, Suruena, Evil
Monkey, Egg, Sleigh, Boscobiscotti, Voxadam, Kenyon, Tariqabjotu, GilHamilton, Lime~enwiki, Gmaxwell, Boothy443, Woohookitty,
Beccus, StradivariusTV, Bkkbrad, Pol098, Alexescalona, Palica, Pfalstad, Graham87, Bilbo1507, Rjwilmsi, Plainsong, CraSH, Bruce1ee,
Ryk, Fredrikh, Brighterorange, Fred Bradstadt, FlaBot, Jowagner, Shultzc, Ysangkok, Otets, Aliljet, Choess, Intgr, Fresheneesz, Alvin-cs,
Synchrite, Butros, Daev, Chobot, Moocha, P0per, YurikBot, Hairy Dude, Phantomsteve, Arado, Akamad, Stephenb, Manop, Gaius Cornelius, Yyy, Shaddack, Rsrikanth05, Wimt, NawlinWiki, Zwobot, Maerk, Phandel, DeadEyeArrow, Fabiob~enwiki, Harput, Bstrand, J.
Nguyen, Arthur Rubin, Jogers, JoanneB, Elfalem, Fsiler, Garion96, GrinBot~enwiki, TuukkaH, Kf4bdy, Marty Pauley, Luk, Amalthea,
Erik Sandberg, SmackBot, PaulWay, Ymiaji, DaveSymonds, The Monster, StephenHemminger, Doc Strange, Canthusus, Timotheus Canens, Agi896, BillMcGonigle, Andy M. Wang, Anwar saadat, Stevenwagner, Djdawso, Coinchon, Oli Filth, EncMstr, Colonies Chris,
LeiZhu, Can't sleep, clown will eat me, Neo139, OrphanBot, JonHarder, Logicwax, Zvar, Addshore, Ortzinator, Clements, Dharmabum420,
NeilGoneWiki, Duckbill, Alca Isilon~enwiki, Martijn Hoekstra, Mini-Geek, DylanW, Jwh, Acdx, A5b, Daniel.Cardenas, LeoNomis,
T, DKEdwards, Masterpjz9, Qwerty0, Via strass, SashatoBot, Miss Sa, Trou, Breno, A-moll9, Bezenek, Prasannaxd, Stonesand, Jec,
Tasc, Peytons, Aarktica, Mattabat, Jgrahn, Prunk, MTSbot~enwiki, Kvng, Iridescent, Akill, Pegasus1138, Bill Malloy, Alexh19740110,
Phuyal, Svinodh, MrBoo, Cheburashka, Unixguy, CmdrObot, Imcdnzl, Agent Koopa, Nviladkar, Mr Echo, Splint9, Lark ascending,
Pgr94, MeekMark, Equendil, Phatom87, Revolus, Sbnoble, UncleBubba, Gogo Dodo, Tawkerbot4, Quibik, JCO312, Asenine, Christopher P, CobbSalad, Omicronpersei8, M.S.K., Hilgerdenaar, Thijs!bot, Epbr123, Kubanczyk, El pak, Oldiowl, Marek69, TangentCube,
Uruiamme, LachlanA, I already forgot, AntiVandalBot, Majorly, Yonatan, Luna Santin, Widefox, DarkAudit, NKarstens, D235~enwiki,
Alphachimpbot, Altamel, Sdomin3, Esmond.pitt, Lanilsson, JAnDbot, Harryzilber, MER-C, Okiefromokla (old), Leolaursen, PhilKnight,
Enjoi4586, CrizCraig, Ideoplex, Magioladitis, Fisherisland14, VoABot II, TheVoid~enwiki, Kevinmon, Bubba hotep, PureRumble, Papadopa, Kgeischmann, WLU, I-baLL, Gwern, HiB2Bornot2B, Blacksqr, Perfgeek, MartinBot, AirCombat, Poeloq, Rettetast, Jonathan
Hall, FDD, Leyo, Lilac Soul, Gthm159, Mange01, Blendmaster, Jesant13, Jayden54, AntiSpamBot, Squidish, West81, Kraftlos, Bigdumbdinosaur, Juliancolton, Cometstyles, Manlyjacques, OsirisV, Wlgrin, Inwind, Izno, Ale2006, Tjhiker, Lights, Maksym.Yehorov, VolkovBot,
Chris.selwyn, Scorpiondiain, Umar420e, MenasimBot, Loor39, Lunadesign, Philip Trueman, JuneGloom07, TXiKiBoT, ALexL33, Sh
manu, Drake Redcrest, Gwinnadain, Rodowen, Cbrettin, Vinu Padmanabhan, Oxfordwang, Anna Lincoln, David.bar, Ziounclesi, Costela,
Katimawan2005, Neshom, Nave.notnilc, Enviroboy, Michael Frind, Jehorn, Jxw13, Kbrose, Nubiatech, Nestea Zen, ToePeu.bot, PanagosTheOther, Brech~enwiki, Smsarmad, TediousFellow, Danielgrad, Flyer22 Reborn, Cjdaniel, Oxymoron83, Jjinno, Rdone, Alt-sysrq, Ngriffeth, OKBot, Aprice457, StaticGull, WikiLaurent, Savagejumpin, Sasha Callahan, Explicit, Youpilot, ClueBot, The Thing That Should
Not Be, Mild Bill Hiccup, DnetSvg, Blanchardb, Lucasbfr2, Alexbot, Jusdafax, Ciprian Dorin Craciun, PixelBot, Dregin1, Technobadger, Pluknet, Kumarat9pm, Charles.partellow, Nedim.sh, Frederico1234, The-tenth-zdog, Cincaipatrin, Akshaymathur156, Johnuniq, Ordoon, DumZiBoT, Darkicebot, Astronomerren, Nneuman, BodhisattvaBot, WikHead, StubbyT, Alexius08, TravisAF, Dsimic, Oxyacanthous, Maimai009, Addbot, Mortense, Ghettoblaster, Jgeer, Psyced, Mootros, Anichandran.mca, Scientus, CanadianLinuxUser, Leszek
Jaczuk, Graham.Fountain, MrOllie, Glane23, Torla42, Loukris, 5 albert square, IOLJe, AgadaUrbanit, Numbo3-bot, Tide rolls, Arsenal9boi, Krano, Teles, Jarble, Quantumobserver, Luckas-bot, Yobot, Kartano, THEN WHO WAS PHONE?, AnotherNitPicker, SwisterTwister, Eric-Wester, Centrew, AnomieBOT, Jim1138, IRP, Piano non troppo, Shadowjain, Materialscientist, Ursushoribilis, Citation
bot, MithrasPriest, Mbruck, DirlBot, Nifky?, LilHelpa, Xqbot, Sergiodc, TechBot, Prashant.khodade, The Evil IP address, PlaysWithLife,
RodrigoCruzatti, RibotBOT, Oddeyed, , Shadowjams, Tstills, Kvmswitch42, Gmaran23, FrescoBot, Lokacit443, Rrazdan,
BenzolBot, Kwiki, Citation bot 1, Awy997, AstaBOTh15, 10metreh, Hamtechperson, Encognito, RedBot, MastiBot, PBSurf, HarrisonLi,
Fraxtil, Jandalhandler, Banej, Mohitjoshi999, Cwats124, Lam Kin Keung, Lotje, Longuniongirl, Rafalq, Rtclawson, Vrenator, PS3ninja,
MoreNet, Danielbarnabas, Some Wiki Editor, Ashwinsbhat, Jfmantis, RjwilmsiBot, Xaphnir, Scil100, WildBot, EmausBot, Zeroboo,
Ouimetch, John of Reading, Acather96, Velowiki, Dewritech, GoingBatty, RA0808, Urmajest, Smappy, Tommy2010, Wikipelli, Dcirovic,
Jasonanaggie, Ahson7, Ru.in.au, Kirelagin, Ancientphoenixians, Access Denied, DrHannibal216, Henriktudborg, Ocaasi, Thine Antique
Pen, Nateshwar kamlesh, L Kensington, Putdust, Ego White Tray, Cpaasch, L2d4y3, Venkatarun95, MacStep, A.upperwal, ClueBot NG,
Nimiew, Jack Greenmaven, Satellizer, GarryAnderson, Karthick.s5, FGont, BlackcurrantTea, Ltsampros2, JeClarkis, Clark-gr, Helpful Pixie Bot, HMSSolent, Silverwindx, Calabe1992, Mtsz, MultWiki, BG19bot, Arnavchaudhary, Deepblue1, Iitywybmad, Northamerica1000, Mrzehak, Nen, Prakash mit, Compfreak7, Altar, Tony Tan, Chmarkine, Masud.pce, Fcp999, Jcarlos-causa, A1vast, Nikhil
raskar, Maclion, Talel Atias, BattyBot, David.moreno72, C10191, Padmini Gaur, Cyberbot II, Ych06391, Dexbot, Vshebordaev, Codename
Lisa, Hainesr2000, Lone boatman, Sethwm, Frosty, Kapilsharma15, Sfgiants1995, Wywin, Ekips39, Dave Braunschweig, DBhavsar709,
Camyoung54, Koszik, Srigaurav1986, Soham, Scornay, Moris560, AlexanderRedd, Kind Tennis Fan, Shrivas06, Luxure, WikiJackool,
St170e, Kieranmcgr, Valeritn, WaterSnail, User26954344524345, Jterminator, Zppix, Ravinskumar, ToonLucas22, Nbro, Bhussai3, My
Chemistry romantic, Gdccdg, Ee586tedtalk, Atombinary, GreenC bot, Clay your and Anonymous: 942
Transmission medium Source: https://en.wikipedia.org/wiki/Transmission_medium?oldid=724232317 Contributors: Michael Hardy,
Stevenj, Reddi, Big Bob the Finder, Bearcat, Beland, Kevin Rector, Discospinster, Xezbeth, Aude, Giraedata, Stemonitis, NebY, BjKa,
KFP, Srleer, Chobot, Commander Nemet, YurikBot, Schadel, Jenblower, Salsb, Malcolma, 2over0, Reyk, Johnpseudo, Mebden, SmackBot, Rojomoke, Gilliam, Daniel.Cardenas, Iridescent, IvanLanin, JohnTechnologist, Bmk, Slazenger, Future Perfect at Sunrise, Thijs!bot,
Barticus88, Guy Macon, Harryzilber, Kevinmon, Oicumayberight, Mrten Berglund, J.delanoy, Maurice Carbonaro, AntiSpamBot, WinterSpw, Rexparry sydney, VolkovBot, The Original Wildbear, Kbrose, SieBot, Jojalozzo, ClueBot, Ljasie, Excirial, PixelBot, Addbot,
OlEnglish, Legobot, Yobot, Gobbleswoggler, TestEditBot, AmritasyaPutra, DemocraticLuntz, Materialscientist, Isheden, AbigailAbernathy, NOrbeck, GrouchoBot, Erik9bot, FrescoBot, Recognizance, Pinethicket, HRoestBot, 10metreh, Tom.Reding, Tinton5, Miracle
Pen, Rzuwig, EmausBot, Plaidoa, Gwen-chan, ClueBot NG, Cntras, Widr, FoCuSandLeArN, Group9 tele, Crystallizedcarbon, Adyaman,
King dboyj and Anonymous: 76
Transport layer Source: https://en.wikipedia.org/wiki/Transport_layer?oldid=715128996 Contributors: Rmhermen, Aldie, Nealmcb, Nixdorf, MartinHarper, Looxix~enwiki, Jimfbleak, Zoicon5, SatyrTN, Jnc, Fredrik, BenBreen2003, Kadin2048, Altenmann, Costello, Liotier,
Mirv, Kwi, Yacht, Hadal, Giftlite, 0x0077BE, AlistairMcMillan, Alvestrand, LiDaobing, JimR, ZeroOne, Limbo socrates, Alansohn, Guy
Harris, Conan, Mmmready, Suruena, Marcan, Kbolino, Lost.goblin, ScottDavis, JHolman, Hullbr3ach~enwiki, Fred Bradstadt, Gavinatkin-
424
son, MTC, Adoniscik, YurikBot, Borgx, RobotE, Phantomsteve, Hede2000, Yyy, PrologFan, Bota47, Xpclient, LeonardoRob0t, Kungfuadam, Eggnock, SmackBot, Commander Keane bot, Gilliam, Andreyf, MalafayaBot, Robth, Bigmantonyd, Gurnec, Butko, Jec, Kvng,
Choudesh, Andrew Hampe, Kkkdc, FatalError, CmdrObot, Imcdnzl, Phatom87, Quibik, Wmasterj, AntiVandalBot, Widefox, JAnDbot,
Enjoi4586, GermanX, Ovy, JonThackray, J.delanoy, Mange01, Inwind, Izno, Idioma-bot, Brettmeyers, Butlerm, TXiKiBoT, Vipinhari,
Highlandsun, Kbrose, SieBot, YonaBot, Yintan, EnOreg, Tpvibes, Int21h, Retroguy90, Simon04, Tcmcfaul, Alexbot, Zac439, Razorame,
1ForTheMoney, Johnuniq, Dgtsyb, Dsimic, Addbot, Jafeluv, SamatBot, Lightbot, Luckas Blade, Legobot, Luckas-bot, TaBOT-zerem,
AnomieBOT, Rubinbot, Ipatrol, Kingpin13, Materialscientist, MauritsBot, Xqbot, RibotBOT, Schw3rt, Fmunshi, Jerd10, Suusion of
Yellow, EmausBot, Samjoopin, Rcsprinter123, ChuispastonBot, ClueBot NG, Dzlinker, Dave Braunschweig, BronsonP, Dough34, Adrianf0, SheikhMkashif and Anonymous: 145
Tunneling protocol Source: https://en.wikipedia.org/wiki/Tunneling_protocol?oldid=737075295 Contributors: The Anome, Mjb, Kku,
CesarB, Palfrey, Rl, JidGom, Chealer, Kizor, Jtg, Subsolar, Fleminra, Cloud200, Mozzerati, MementoVivere, EagleOne, Sysy, FT2, Ebelular, Vsmith, Indil, Sietse Snel, Unquietwiki, Arthena, Hgsippe Cormier, Laug, Suruena, RJFJR, Larytet, Karnesky, Mindmatrix, Knuckles, Eyreland, Bruns, Lusitana, FlaBot, JYOuyang, Matt314, YurikBot, Bota47, Cavan, Jules.LT, Nachoman-au, GraemeL, Edgar181,
Yamaguchi , Jerome Charles Potts, SkipHuman, NickPenguin, Zearin, Accurizer, Noahspurrier, Aleenf1, 16@r, Exlex, Negrulio,
Megajuice, Alessandro57, IronJohnSr, CmdrObot, ThreeBlindMice, Alexamies, Drummle, UncleBubba, Bposert, JamesAM, Hcberkowitz,
Ministry of Truth, JAnDbot, Enjoi4586, VoABot II, PierreCG, Mange01, Liangent, The MAZZTer, Starunj, Reelrt, VolkovBot, Rei-bot,
Jamelan, ErikWarmelink, Kbrose, Emesee, Ngrieth, Klaus100, Chris D Heath, Gforce20, Plat'Home, PeterZacSmith, Skarebo, Dsimic,
Tclavel, Addbot, MrOllie, LaaknorBot, Surabh7, Jasper Deng, Erik Streb, Lightbot, EttAme, Luckas-bot, Riad.Bot~enwiki, Sourabhforu,
Mail2yogie, Materialscientist, ArthurBot, PabloCastellano, Ccostis, FrescoBot, Mr565, Kobekatt, Winterst, Xcvista, Jandalhandler, Lotje,
Silversatellite, EmausBot, Rolf the wolf, Dcirovic, Pazkooda, Noggo, Joshuaterrill, ClueBot NG, Watson1966, Rohitkalaskar, Popescucalin, Hayneskl43, Jamesx12345, Randomusername404, Captain Conundrum, Monochrome Monitor, Ugog Nizdast, Ginsuloft, TheHoster,
DrOfAwesomeness, Serypol, Brandont93 and Anonymous: 117
User Datagram Protocol Source: https://en.wikipedia.org/wiki/User_Datagram_Protocol?oldid=737966456 Contributors: Damian Yerrick, Bryan Derksen, The Anome, Fubar Obfusco, Jtk, Mahjongg, Nixdorf, Alo, Ronz, , BAxelrod, Samuel~enwiki, Vanished user 5zariu3jisj0j4irj, Tpbradbury, Wkcheang, Itai, Gamera2, Shizhao, Tjdw, Robbot, Fredrik, RedWolf, Romanm, Modulatum,
PedroPVZ, Robbe~enwiki, Tea2min, Psb777, Giftlite, Fennec, Beefman, Reub2000, Gracefool, SWAdair, Matt Darby, Neilc, Gordoni,
Thray, Erik Garrison, Daniel Staal, Joachim Wuttke, RevRagnarok, JTN, Twinxor, Ardonik, Xezbeth, Alistair1978, Michael Zimmermann,
Mani1, Bender235, Djordjes, Plugwash, Joanjoc~enwiki, Kwamikagami, Mpeg4codec, Towel401, Krellis, Frodet, Terrycojones, Nroets,
Guy Harris, Ayeroxor, Rick Sidwell, Cburnett, Suruena, Cvalda, Voxadam, DSatz, Mindmatrix, ^demon, Hdante, Ashmoo, Graham87,
E090, BD2412, CraSH, Quiddity, Bruce1ee, Wiarthurhu, Fredrikh, Aapo Laitinen, Alvin-cs, DVdm, YurikBot, Borgx, Phantomsteve,
RussBot, Jengelh, Rsrikanth05, Voidxor, Zwobot, Falcon9x5, DeadEyeArrow, Eclipsed, Bota47, Bobstopper, E Wing, Tdangkhoa, Petri
Krohn, Rwwww, SmackBot, InverseHypercube, The Monster, Od Mishehu, Golwengaud, Smeggysmeg, BenAveling, CrookedAsterisk,
Cassan, MLeb, DavidSol, Misterdom, A5b, Jna runn, Paulish, SashatoBot, Breno, Ben Moore, Clalansingh, Kvng, Johnny 0, Ginkgo100,
Teemuk, Conrad.Irwin, Burisch, Phatom87, Reywas92, Sammydee, UncleBubba, Thijs!bot, JNighthawk, DesTroy, AntiVandalBot, Widefox, Opelio, Esmond.pitt, JAnDbot, Dicentra, CombatWombat42, Enjoi4586, Ideoplex, Recurring dreams, 28421u2232nfenfcenc, Kgeischmann, Mike6271, Anaxial, Gthm159, Mange01, Public Menace, Gzkn, Sci13960, Aram33~enwiki, 83d40m, STBotD, Zara1709, Mike
V, Gnipahellir, AlnoktaBOT, Vinu Padmanabhan, DennyColt, Kovianyo, Spearsall, Teh romaoer, Chenzw, Andrew Kember, Kbrose, Sn-ushakov, SieBot, Nubiatech, Acasson, Eagleal, R2richar, Mam711, Bentogoa, Oxymoron83, Jjinno, Jdaloner, FrisoB~enwiki, Bane1998,
NHSKR, ClueBot, Uncle Milty, Hitherebrian, WestwoodMatt, Pelesl, Dfurbeck, Razorame, The-tenth-zdog, Cincaipatrin, Chiefmanzzz,
Upadhyaykc, Johnuniq, Delt01, Mwholt, BodhisattvaBot, SilvonenBot, Dsimic, Samersarhan83, Jncraton, MagnusA.Bot, Jasper Deng,
, Lightbot, Legobot, Yobot, Eduardopinheiro, KamikazeBot, AnomieBOT, Rubinbot, 1exec1, Fromageestciel, Flewis, Materialscientist, ArthurBot, Gsmgm, Xqbot, Locos epraix, Fightin' Phillie, Omnipaedista, RibotBOT, Kyng, Locobot, Ll1324, Frozenevolution, Uncopy, Plindemann, I dream of horses, RedBot, Lissajous, Cnwilliams, FoxBot, Headbangerkenny, Fox Wilson, Rimidalw, The
Utahraptor, WildBot, Alison22, EmausBot, Ouimetch, WikitanvirBot, Bongoramsey, Bobby Caudwell, Wingman4l7, Tolly4bolly, Irrypride, Gorryf, ChuispastonBot, Pqqq1, Teapeat, Rememberway, ClueBot NG, Fudgefr, Dkogh, Theopolisme, Ssd293, Benqmonitor,
Helpful Pixie Bot, BG19bot, Beacon11, McZusatz, Chmarkine, Timothyjaden, Dhruvv7, Achowat, IRedRat, PatheticCopyEditor, Popescucalin, Pratyya Ghosh, Yelojakit, Areh adeola, TechyOne, Rotlink, Dave Braunschweig, Fakenerd, Jsztabzyb, ArmbrustBot, MortenZdk,
Psycoconnetic, Jackmcbarn, Dough34, Rubenprot, Pall123ban, KasparBot, Blasher, Er.adk and Anonymous: 350
World Wide Web Consortium Source: https://en.wikipedia.org/wiki/World_Wide_Web_Consortium?oldid=735723846 Contributors:
Peter Winnberg, Lee Daniel Crocker, The Anome, Larry Sanger, Christian List, Mjb, Bdesham, Michael Hardy, Tompagenet, Delirium, Tregoweth, CesarB, ArnoLagrange, Mac, Nanshu, Den fjttrade ankan~enwiki, Kingturtle, LittleDan, Harvester, Jonik, Mxn,
Hashar, Andrewman327, Pedant17, Shizhao, David.Monniaux, Robbot, Chealer, Pigsonthewing, Moondyne, Yacht, Gidonb, Baojie,
Alba, Carlj7, Diberri, Ancheta Wis, Giftlite, Philwiki, DocWatson42, Sjh~enwiki, Lisbk, Itpastorn, Enkrates, Khalid hassani, Golbez,
Zhouxiaohu~enwiki, LiDaobing, Oneiros, Mzajac, Icairns, Almit39, Squash, Gregorio~enwiki, Kathar, Wikiacc, Smyth, Night Gyr, ESkog, Evice, El C, MITalum, Larryv, Helix84, Pearle, Wayfarer, ClementSeveillac, Milant, A.M.~enwiki, Hu, Suruena, Josh3736, Zorblek, Brookie, Shimeru, NantonosAedui, Simetrical, Wedesoft, Georgia guy, Miaow Miaow, Duncan.france, Rchamberlain, Toussaint,
TNLNYC, Paxsimius, Graham87, Scottkeir, Phoenix-forgotten, Nightscream, MZMcBride, Infosocialist, ElKevbo, Dmccreary, Ttwaring,
Sleepyhead81, DirkvdM, FlaBot, Margosbot~enwiki, AndriuZ, Alphachimp, Ahunt, Chobot, Skraz, UkPaolo, YurikBot, RussBot, Arado,
Spainhour, Ansell, Manop, CambridgeBayWeather, WulfTheSaxon, Jeh, Ms2ger, Josh3580, ZabMilenko, Whaa?, Rathfelder, Toniher,
DEng, Katieh5584, GrinBot~enwiki, Masonbarge, SmackBot, Renku, Sebesta, Gilliam, Anwar saadat, Hugoh, Persian Poet Gal, Emufarmers, JF Manning, Daviddec, Vbigdeli, TheRaven7, Rrburke, Jcravens42, Greenshed, Edivorce, Mr.Z-man, Cybercobra, Nakon, Alibabs, DDima, Vina-iwbot~enwiki, Ohconfucius, SashatoBot, Zearin, Gobonobo, 16@r, Hu12, IvanLanin, Aeons, Dka1, Tawkerbot2,
Wspencer11, Dennylin93, Linuxerist, Patchouli, Comrade42, Nczempin, Argon233, Old Guard, Simeon, Steveliang, Krauss, Meno25,
Mpidge, Epbr123, Joshuagay, Qwyrxian, Monkle, Marek69, Cplot, I already forgot, AntiVandalBot, Ministry of Truth, Widefox, Azbondgirl, Melmelmarms, Jatkins, Cic, Everton1984, DominiqueHazaelMassieux, Jodi.a.schneider, Lijnema, Oicumayberight, B9 hummingbird hovering, AVRS, CommonsDelinker, Ramesh Chandra, JMJimmy, Hanteng, Javawizard, Ian.thomson, Arite, Ignatzmice, Frequencydip, Chronorick, Josh Tumath, Paolo Baggia, Bonadea, Jacroe, Technopat, Donatus, Qxz, Seanho, Andy Dingley, Wegates, Synthebot, Legoktm, S.rvarr.S, SieBot, Tiddly Tom, Leahcim nai, Jack Merridew, Pao662~enwiki, NO ACMLM,AND XKEPPER SUCK
!, Triwbe, Execvator, Pxma, MiNombreDeGuerra, Lightmouse, Kanonkas, Leranedo, The Thing That Should Not Be, Joshi1983, SuperHamster, TarzanASG, Alexbot, PixelBot, Adimovk5, Rhododendrites, Dmyersturnbull, Amerdeni, DumZiBoT, JRWoodwardMSW,
BarretB, XLinkBot, Dthomsen8, Safepage, Addbot, Ghettoblaster, Some jerk on the Internet, Mabdul, Twinzor, Favonian, Krano, Luckas
Blade, Gail, Rojypala, Nickscoco, Luckas-bot, Yobot, Bunnyhop11, Fraggle81, Evereyes, KamikazeBot, AnomieBOT, Joe2008, Galou-
425
bet, Xqbot, Almabot, Amaury, Bpmcneilly, Raznice, Redrose64, Jonesey95, Meaghan, Jonkerz, Lotje, KarlDubost, Jskhuman, Yondonjamts, Wolfhoundfeet, Sleepinginisgivingin, EmausBot, Goswamir14, Jesmania, D'oh!, Beware podpeople, ArtBarstow, Gewild, BetweenMyths, Petrb, ClueBot NG, Youngdesigner, Widr, Radiojoe329, Helpful Pixie Bot, Wbm1058, ARIENGGO, Bmusician, MusikAnimal, LuLxFakie, 100arab.saurabh, Whym, BattyBot, Liam987, Wrcsuk, Msiderwicz, Rajesh.kk99, Koaliemoon, Lugia2453, Frosty,
Goatcheese3, Jadephx, Enock4seth, GRIFFnDOOR, RaphaelQS, General534, KaseyPollard, TheCommanderOf, Monkbot, Nutty151,
C1776M, Mxschumacher, TheMagikCow, TheFreeSeven, Tymon.r, Piglatin2369, Kyawthuya1089, Zaqpdos6969, Kripmo, Jerodlycett,
StinkyBrownApple, Smwrd, Bekandmike, Mnestis.wiki, Craft6789 and Anonymous: 264
X.25 Source: https://en.wikipedia.org/wiki/X.25?oldid=736868114 Contributors: Aldie, Maury Markowitz, Vaughan, Ahoerstemeier,
Ronz, Yaronf, Smack, Crissov, Itai, Finlay McWalter, Lumos3, Kizor, Stewartadcock, Hella~enwiki, Gidonb, Hadal, Xanzzibar, Vacuum, Itpastorn, Gzornenplatz, VampWillow, Tagishsimon, Karlward, Beland, Bumm13, Karl Dickman, MementoVivere, Abdull, Rich
Farmbrough, Guanabot, Wk muriithi, YUL89YYZ, Eric Shalov, Ray Dassen, MarkWahl, Nwsmith, Ivansanchez, Helix84, Guy Harris, RoySmith, GL, Stephan Leeds, Danhash, RJII, Blaxthos, Ilario, Tabletop, Eyreland, Commking, Haikupoet, Rjwilmsi, Gary Brown,
SAK, FlaBot, Ewlyahoocom, Overand, YurikBot, NTBot~enwiki, Gaius Cornelius, Barberio, Mortein, Mikeroetto, SmackBot, Reedy,
Bernard Franois, Chris the speller, GK tramrunner, Dvermeirre, Villarinho, JonHarder, Adamantios, Kotul, HarisM, Sparky-sama, Charivari, SashatoBot, Dave314159, Deceglie, Kvng, Huntscorpio, Prof 7, Caomhin, Mblumber, Gogo Dodo, Daenney, Quibik, Thijs!bot,
Hcberkowitz, Headbomb, Dawnseeker2000, Cocjh1, KMeyer, Dougher, IrishFlukey, JAnDbot, PrimroseGuy, Scostas, CommonsDelinker,
Mange01, ISC PB, Cpiral, Birczanin, VolkovBot, Vrac, Kurgus, TXiKiBoT, Dermots, Gbuchana, BotKung, Kbrose, SieBot, Dialate,
LeadSongDog, Lightmouse, CharlesGillingham, Ken123BOT, EoGuy, Kanchanghavle, Alexbot, PixelBot, IlliniFlag, Dgtsyb, Addbot,
Pieman196, Tonkie67, Enduser, Yobot, AnomieBOT, Citation bot, LilHelpa, Xqbot, Giddeon Fox, FrescoBot, Pepper, Merlion444, FromOrleans, John of Reading, Orphan Wiki, RFClover, The Mysterious El Willstro, Jasonanaggie, ZroBot, Westley Turner, Jgoodchild,
Ermishin, ChuispastonBot, ClueBot NG, Wdchk, Helpful Pixie Bot, BG19bot, Doodlebug777, Leikai Meetei, Cwobeel, Mogism, Cerabot~enwiki, Comp.arch, Monkbot, KasparBot and Anonymous: 106
70.11.2
Images
426
427
File:Desktop_computer_clipart_-_Yellow_theme.svg Source:
https://upload.wikimedia.org/wikipedia/commons/d/d7/Desktop_
computer_clipart_-_Yellow_theme.svg License: CC0 Contributors: https://openclipart.org/detail/17924/computer Original artist: AJ from
openclipart.org
File:Digital_broadcast_standards.svg Source: https://upload.wikimedia.org/wikipedia/commons/b/bd/Digital_broadcast_standards.
svg License: Public domain Contributors: Self-made from Image:BlankMap-World6.svg and listings at the relevant Wikipedia articles.
Original artist: EnEdC
File:Dolphin_FileManager.png Source: https://upload.wikimedia.org/wikipedia/commons/5/51/Dolphin_FileManager.png License:
GPL Contributors: http://www.kde.org/applications/system/dolphin/ Original artist: KDE
File:Edit-clear.svg Source: https://upload.wikimedia.org/wikipedia/en/f/f2/Edit-clear.svg License: Public domain Contributors: The
Tango! Desktop Project. Original artist:
The people from the Tango! project. And according to the meta-data in the le, specically: Andreas Nilsson, and Jakub Steiner (although
minimally).
File:Emblem_of_the_United_Nations.svg Source: https://upload.wikimedia.org/wikipedia/commons/5/52/Emblem_of_the_United_
Nations.svg License: Public domain Contributors: Based on File:Flag_of_the_United_Nations.svg Original artist: Spi
File:Emoji_u1f4bb.svg Source: https://upload.wikimedia.org/wikipedia/commons/d/d7/Emoji_u1f4bb.svg License: Apache License 2.0
Contributors: https://code.google.com/p/noto/ Original artist: Google
File:Encoding_communication.jpg Source: https://upload.wikimedia.org/wikipedia/commons/7/79/Encoding_communication.jpg License: CC BY 2.5 Contributors: Transferred from en.wikipedia to Commons by Sreejithk2000 using CommonsHelper. Original artist:
Yupi666 at English Wikipedia
File:Erdfunkstelle_Raisting_2.jpg Source: https://upload.wikimedia.org/wikipedia/commons/4/40/Erdfunkstelle_Raisting_2.jpg License: CC BY-SA 2.5 Contributors: Own work Original artist: Richard Bartz, Munich aka Makro Freak <a href='//commons.wikimedia.org/
wiki/File:MFB.jpg' class='image'><img alt='MFB.jpg' src='https://upload.wikimedia.org/wikipedia/commons/1/1e/MFB.jpg' width='80'
height='15' data-le-width='80' data-le-height='15' /></a>
File:Euclid{}s_algorithm_Book_VII_Proposition_2_2.png Source: https://upload.wikimedia.org/wikipedia/commons/8/89/Euclid%
27s_algorithm_Book_VII_Proposition_2_2.png License: CC BY 3.0 Contributors: Own work Original artist: Wvbailey
File:Euclid{}s_algorithm_Inelegant_program_1.png Source: https://upload.wikimedia.org/wikipedia/commons/4/49/Euclid%27s_
algorithm_Inelegant_program_1.png License: CC BY 3.0 Contributors: Own work Original artist: Wvbailey
File:Euclid{}s_algorithm_structured_blocks_1.png Source: https://upload.wikimedia.org/wikipedia/commons/4/44/Euclid%27s_
algorithm_structured_blocks_1.png License: CC BY 3.0 Contributors: Own work Original artist: Wvbailey
File:Euclid_flowchart.svg Source: https://upload.wikimedia.org/wikipedia/commons/d/db/Euclid_flowchart.svg License: CC BY-SA
4.0 Contributors: Own work Original artist: Somepics
File:Euclids-algorithm-example-1599-650.gif
Source:
https://upload.wikimedia.org/wikipedia/commons/e/e1/
Euclids-algorithm-example-1599-650.gif License: CC BY-SA 3.0 Contributors: Own work Original artist: Swfung8
File:Farlon_localtalk.jpg Source: https://upload.wikimedia.org/wikipedia/en/f/f0/Farlon_localtalk.jpg License: Cc-by-sa-3.0 Contributors: ? Original artist: ?
File:Fibreoptic.jpg Source: https://upload.wikimedia.org/wikipedia/commons/4/49/Fibreoptic.jpg License: CC-BY-SA-3.0 Contributors: First upload: (Sep 25 2004) en:Wikipedia Original artist: BigRiz
File:Finite_State_Machine_Logic.svg Source: https://upload.wikimedia.org/wikipedia/commons/6/64/Finite_State_Machine_Logic.
svg License: Public domain Contributors: Own work based on: Image:Finite_state_machine_definition.gif. Original artist: jjbeard; improved and German added by Perhelion
File:Finite_state_machine_example_with_comments.svg Source:
https://upload.wikimedia.org/wikipedia/commons/c/cf/Finite_
state_machine_example_with_comments.svg License: Public domain Contributors: Own work based on: en:File:Finite state machine
example with comments.gif Original artist: 1st Macguy314, reworked by Perhelion
File:First-arpanet-imp-log.jpg Source: https://upload.wikimedia.org/wikipedia/commons/e/e4/First-arpanet-imp-log.jpg License:
Public domain Contributors: UCLA Kleinrock Center for Internet Studies ([1]) Original artist: Charles S. Kline
File:First_Web_Server.jpg Source: https://upload.wikimedia.org/wikipedia/commons/d/d1/First_Web_Server.jpg License: CC-BYSA-3.0 Contributors: Own work Original artist: User:Coolcaesar at en.wikipedia
File:Fisher_500_radio.jpg Source: https://upload.wikimedia.org/wikipedia/commons/b/b1/Fisher_500_radio.jpg License: GFDL 1.2
Contributors: Photo by uploader, taken at The History of Audio: The Engineering of Sound, an exhibition of the San Francisco Airport Museums[1] in SFO Airport, Terminal 3 from 2006-09 to 2007-05. Original artist: Gregory F. Maxwell <gmaxwell@gmail.com>
PGP:0xB0413BFA
428
org/wikipedia/commons/thumb/9/90/Open_Access_logo_PLoS_white_green.svg/9px-Open_Access_logo_PLoS_white_green.svg.png'
width='9' height='14' srcset='//upload.wikimedia.org/wikipedia/commons/thumb/9/90/Open_Access_logo_PLoS_white_green.svg/
14px-Open_Access_logo_PLoS_white_green.svg.png 1.5x, //upload.wikimedia.org/wikipedia/commons/thumb/9/90/Open_Access_
logo_PLoS_white_green.svg/18px-Open_Access_logo_PLoS_white_green.svg.png 2x' data-le-width='640' data-le-height='1000'
/></a>
Original artist:
This version:Trappist_the_monk (talk) (Uploads)
File:Free_and_open-source_software_logo_(2009).svg Source: https://upload.wikimedia.org/wikipedia/commons/3/31/Free_and_
open-source_software_logo_%282009%29.svg License: Public domain Contributors: FOSS Logo.svg Original artist: Free Software Portal
Logo.svg (FOSS Logo.svg): ViperSnake151
File:Front_Z9_2094.jpg Source: https://upload.wikimedia.org/wikipedia/commons/2/21/Front_Z9_2094.jpg License: Public domain
Contributors: Own work Original artist: Ing. Richard Hilber
File:Fsm_Moore_model_door_control.svg Source: https://upload.wikimedia.org/wikipedia/commons/7/71/Fsm_Moore_model_door_
control.svg License: Public domain Contributors: Vectorized version of File:Door moore de.png Original artist: Saman
File:Fsm_mealy_model_door_control.svg Source: https://upload.wikimedia.org/wikipedia/commons/7/72/Fsm_mealy_model_door_
control.svg License: Public domain Contributors: Vectorized version of File:Door mealy example de.png Original artist: Saman
File:Fsm_parsing_word_nice.svg Source: https://upload.wikimedia.org/wikipedia/commons/a/a8/Fsm_parsing_word_nice.svg License:
Public domain Contributors: en:Image:Fsm parsing word nice.jpg Original artist: en:User:Thowa, redrawn by User:Stannered
File:FullDuplex.JPG Source: https://upload.wikimedia.org/wikipedia/commons/7/72/FullDuplex.JPG License: Public domain Contributors: Transferred from en.wikipedia to Commons. Original artist: Greggreggreg at English Wikipedia
File:GPS_Receivers.jpg Source: https://upload.wikimedia.org/wikipedia/commons/6/6b/GPS_Receivers.jpg License: CC-BY-SA-3.0
Contributors: ? Original artist: ?
File:Globe_of_letters.svg Source: https://upload.wikimedia.org/wikipedia/commons/d/de/Globe_of_letters.svg License: LGPL Contributors:
<a
href='//commons.wikimedia.org/wiki/File:Gnome-globe.svg'
class='image'><img
alt=''
src='https://upload.
wikimedia.org/wikipedia/commons/thumb/f/f3/Gnome-globe.svg/120px-Gnome-globe.svg.png'
width='120'
height='120'
srcset='https://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Gnome-globe.svg/180px-Gnome-globe.svg.png
1.5x,
https://upload.wikimedia.org/wikipedia/commons/thumb/f/f3/Gnome-globe.svg/240px-Gnome-globe.svg.png 2x' data-lewidth='48' data-le-height='48' /></a>
Gnome-globe.svg
<a
href='//commons.wikimedia.org/wiki/File:Globe_of_letters.png'
class='image'><img
alt=''
src='https://upload.
wikimedia.org/wikipedia/commons/thumb/6/62/Globe_of_letters.png/120px-Globe_of_letters.png' width='120' height='97'
srcset='https://upload.wikimedia.org/wikipedia/commons/6/62/Globe_of_letters.png 1.5x' data-le-width='144' data-leheight='116' /></a>
Globe of letters.png
Original artist: Seahen
File:Great_Seal_of_the_United_States_(obverse).svg Source: https://upload.wikimedia.org/wikipedia/commons/5/5c/Great_Seal_
of_the_United_States_%28obverse%29.svg License: Public domain Contributors: Extracted from PDF version of Our Flag, available here
(direct PDF URL here.) Original artist: U.S. Government
File:HTML.svg Source: https://upload.wikimedia.org/wikipedia/commons/8/84/HTML.svg License: CC BY-SA 2.5 Contributors:
HTML.svg Original artist: Dreftymac
File:HTML5-logo.svg Source: https://upload.wikimedia.org/wikipedia/commons/6/61/HTML5_logo_and_wordmark.svg License: CC
BY 3.0 Contributors: Ocial HTML5 logo by W3C. Licensed under the CC-by 3.0 Original artist: W3C
File:HTML_Example_Code.png Source: https://upload.wikimedia.org/wikipedia/en/9/94/HTML_Example_Code.png License: CCBY-SA-3.0 Contributors:
Own work
Original artist:
Zaraman
File:HalfDuplex.JPG Source: https://upload.wikimedia.org/wikipedia/commons/b/b3/HalfDuplex.JPG License: Public domain Contributors: Transferred from en.wikipedia to Commons. Original artist: Greggreggreg at English Wikipedia
File:Hash_table_3_1_1_0_1_0_0_SP.svg Source: https://upload.wikimedia.org/wikipedia/commons/7/7d/Hash_table_3_1_1_0_1_0_
0_SP.svg License: CC BY-SA 3.0 Contributors: Own work Original artist: Jorge Stol
File:Http_request_telnet_ubuntu.png Source: https://upload.wikimedia.org/wikipedia/commons/c/c6/Http_request_telnet_ubuntu.
png License: Public domain Contributors: Own work Original artist: TheJosh
File:IBM360-65-1.corestore.jpg Source: https://upload.wikimedia.org/wikipedia/commons/6/6a/IBM360-65-1.corestore.jpg License:
CC-BY-SA-3.0 Contributors: http://www.corestore.org/36065-1.jpg Original artist: Michael J. Ross
File:IBM_Turboways_ATM_155.jpg Source: https://upload.wikimedia.org/wikipedia/commons/2/26/IBM_Turboways_ATM_155.
jpg License: Public domain Contributors: Transferred from en.wikipedia to Commons by Sreejithk2000 using CommonsHelper. Original artist: Rjamorim at English Wikipedia
File:IEEE_logo.svg Source: https://upload.wikimedia.org/wikipedia/en/2/21/IEEE_logo.svg License: Fair use Contributors:
Direct link to image can be found here as found on this archived page of the organizations ocial website Original artist: ?
429
File:IETF_Logo.svg Source: https://upload.wikimedia.org/wikipedia/commons/9/98/IETF_Logo.svg License: Public domain Contributors: http://www.ietf.org/images/logos/ Original artist: the IETF Trust
File:IP_stack_connections.svg Source: https://upload.wikimedia.org/wikipedia/commons/c/c4/IP_stack_connections.svg License: CCBY-SA-3.0 Contributors: Prior Wikipedia artwork by en:User:Cburnett Original artist: en:User:Kbrose
File:ISO_Members.svg Source: https://upload.wikimedia.org/wikipedia/commons/0/05/ISO_Members.svg License: Public domain Contributors: Own work Original artist: Ichwan Palongengi
File:ITU.jpg Source: https://upload.wikimedia.org/wikipedia/commons/7/77/ITU.jpg License: CC-BY-SA-3.0 Contributors: Own work
Original artist: Yann Forget
File:ITU_monument,_Bern.jpg Source: https://upload.wikimedia.org/wikipedia/commons/a/a9/ITU_monument%2C_Bern.jpg License: CC-BY-SA-3.0 Contributors: No machine-readable source provided. Own work assumed (based on copyright claims). Original
artist: No machine-readable author provided. Gdr assumed (based on copyright claims).
File:Icannheadquartersplayavista.jpg Source: https://upload.wikimedia.org/wikipedia/commons/4/46/Icannheadquartersplayavista.
jpg License: CC BY-SA 3.0 Contributors: Own work Original artist: Coolcaesar
File:Icon_Camera.svg Source: https://upload.wikimedia.org/wikipedia/commons/4/43/Icon_Camera.svg License: Attribution Contributors: Own work Original artist: me
File:Interaction_comm_model.svg Source: https://upload.wikimedia.org/wikipedia/commons/7/79/Interaction_comm_model.svg License: Public domain Contributors:
Interaction_comm_model.jpg Original artist: Interaction_comm_model.jpg: JasonSWrench
File:International_Telecommunication_Union_11c_1965_issue_U.S._stamp.jpg Source: https://upload.wikimedia.org/wikipedia/
commons/d/d9/International_Telecommunication_Union_11c_1965_issue_U.S._stamp.jpg License: Public domain Contributors: U.S.
Postal Service; National Postal Museum: International Telecommunication Union Issue Original artist: Bureau of Engraving and Printing. Designed by Thomas F. Naegele.
File:Internet1.jpg Source: https://upload.wikimedia.org/wikipedia/commons/7/75/Internet1.jpg License: GFDL Contributors: Own work
Original artist: Rock1997
File:InternetUsersByLanguagePieChart.svg
Source:
https://upload.wikimedia.org/wikipedia/commons/e/e0/
InternetUsersByLanguagePieChart.svg License: CC BY-SA 3.0 Contributors: Own work, based on data from Number of Internet Users by Language, Internet WorldStats, Miniwatts Marketing Group, 31 May 2011, accessed 22 March 1960, URL:
http://www.internetworldstats.com/stats7.htm
Original artist: Je Ogden (W163)
File:Internet_Censorship_and_Surveillance_World_Map.svg Source:
https://upload.wikimedia.org/wikipedia/commons/c/c8/
Internet_Censorship_and_Surveillance_World_Map.svg License: CC0 Contributors: Own work based on the article Internet censorship and
surveillance by country as well as the classications from Reporters Without Borders, the OpenNet Initiative, the Freedom on the Net reports
from Freedom House, and the <a href='https://en.wikipedia.org/wiki/United_States%27_Country_Reports_on_Human_Rights_Practices'
class='extiw' title='wikipedia:United States Country Reports on Human Rights Practices>Country Reports on Human Rights Practices</a>
of the U.S. Department of State
Original artist: Jerey Ogden (W163)
File:Internet_Connectivity_Distribution_&_Core.svg Source:
https://upload.wikimedia.org/wikipedia/commons/3/36/Internet_
Connectivity_Distribution_%26_Core.svg License: CC BY-SA 3.0 Contributors: Internet Connectivity Distribution&Core.svg Original
artist: User:Ludovic.ferre
File:Internet_layering.svg Source: https://upload.wikimedia.org/wikipedia/en/a/a6/Internet_layering.svg License: CC-BY-SA-3.0 Contributors:
I (Jsoon eu (talk)) created this work entirely by myself. Original artist:
Jsoon eu (talk)
File:Internet_map_1024.jpg Source: https://upload.wikimedia.org/wikipedia/commons/d/d2/Internet_map_1024.jpg License: CC BY
2.5 Contributors: Originally from the English Wikipedia; description page is/was here. Original artist: The Opte Project
File:Internet_map_1024_-_transparent,_inverted.png Source: https://upload.wikimedia.org/wikipedia/commons/3/3f/Internet_map_
1024_-_transparent%2C_inverted.png License: CC BY 2.5 Contributors: Originally from the English Wikipedia; description page is/was
here. Original artist: The Opte Project
File:Internet_users_per_100_inhabitants_ITU.svg Source: https://upload.wikimedia.org/wikipedia/commons/2/29/Internet_users_
per_100_inhabitants_ITU.svg License: CC BY-SA 3.0 Contributors: Own work Original artist: Je Ogden (W163)
File:KDE_4.png Source: https://upload.wikimedia.org/wikipedia/commons/5/54/KDE_4.png License: GPL Contributors: Self-made
screenshot Original artist: KDE
File:Kernel_Layout.svg Source: https://upload.wikimedia.org/wikipedia/commons/8/8f/Kernel_Layout.svg License: CC BY-SA 3.0
Contributors: Own work Original artist: Bobbo
File:LampFlowchart.svg Source: https://upload.wikimedia.org/wikipedia/commons/9/91/LampFlowchart.svg License: CC-BY-SA-3.0
Contributors: vector version of Image:LampFlowchart.png Original artist: svg by Booyabazooka
File:Latimeria_chalumnae01.jpg Source: https://upload.wikimedia.org/wikipedia/commons/3/3d/Latimeria_chalumnae01.jpg License:
CC-BY-SA-3.0 Contributors: No machine-readable source provided. Own work assumed (based on copyright claims). Original artist: No
machine-readable author provided. JoJan assumed (based on copyright claims).
File:Linear_comm_model.svg Source: https://upload.wikimedia.org/wikipedia/commons/8/83/Linear_comm_model.svg License: Public domain Contributors: Linear comm model.jpg Original artist: Linear comm model.jpg: JasonSWrench
430
431
432
433
70.11.3
Content license