You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## 3.3 Block Exchange -- transfering content-addressed data
116
116
117
117
The IPFS **Block Exchange** takes care of negotiating bulk data transfers. Once nodes know each other -- and are connected -- the exchange protocols govern how the transfer of content-addressed blocks occurs.
118
118
@@ -122,7 +122,7 @@ The Block Exchange is an interface that is satisfied by various kinds of impleme
122
122
of BitTorrent to work with arbitrary (and not known apriori) DAGs.
123
123
-**HTTP:** a simple exchange can be implemented with HTTP clients and servers.
124
124
125
-
## [3.4. Merkledag -- making sense of data](../merkledag)
125
+
## 3.4. Merkledag -- making sense of data
126
126
127
127
[As discussed above](#IPFS-and-the-Merkle-DAG), the IPFS **merkledag** is the datastructure at the heart of IPFS. It is an [acyclic directed graph](http://en.wikipedia.org/wiki/Directed_acyclic_graph) whose edges are hashes. Another name for it is the merkleweb.
128
128
@@ -149,7 +149,7 @@ The merkledag is the "thin waist" of authenticated datastructures. It is a minim
149
149
150
150
See more in the merkledag spec (TODO).
151
151
152
-
## [3.4.1 Merkledag Paths](../merkledag)
152
+
## 3.4.1 Merkledag Paths
153
153
154
154
The merkledag is enough to resolve paths:
155
155
@@ -163,9 +163,9 @@ The merkledag is enough to resolve paths:
163
163
164
164
See more in the path resolution spec (TODO).
165
165
166
-

166
+

167
167
168
-
## [3.5 Naming -- PKI namespace and mutable pointers]()
168
+
## 3.5 Naming -- PKI namespace and mutable pointers
169
169
170
170
IPFS is mostly concerned with content-addressed data, which by nature is immutable: changing an object would change its hash -- and thus its address, making it a _different_ object altogether. (Think of it as a copy-on-write filesystem).
171
171
@@ -177,15 +177,15 @@ IPNS is based on [SFS](http://en.wikipedia.org/wiki/Self-certifying_File_System)
177
177
178
178
See more in the namin spec (TODO).
179
179
180
-
# [4. Applications and Datastructures -- on top of IPFS]()
180
+
# 4. Applications and Datastructures -- on top of IPFS
181
181
182
182
The stack described so far is enough to represent arbitrary datastructures and replicate them across the internet. It is also enough to build and deploy decentralized websites.
183
183
184
184
Applications and datastructures on top of IPFS are represented as merkledags. Users can create arbitrary datastructures that extend the merkledag and deploy them to the rest of the world using any of the tools that understand IPFS.
185
185
186
186
See more in the datastructures and applications specs (TODO).
187
187
188
-
## [4.1 unixfs -- representing traditional files]()
188
+
## 4.1 unixfs -- representing traditional files
189
189
190
190
The unix filesystem abstractions -- files and directories -- are the main way people conceive of files in the internet. In IPFS, `unixfs` is a datastructure that represents unix files on top of IPFS. We need a separate datastructure to carry over information like:
191
191
@@ -194,7 +194,7 @@ The unix filesystem abstractions -- files and directories -- are the main way pe
194
194
195
195
See more in the unixfs spec (TODO).
196
196
197
-
## [5 Lifetime of fetching an object.]()
197
+
## 5. Lifetime of fetching an object.
198
198
199
199
Suppose we ask an IPFS node to retrieve
200
200
@@ -212,13 +212,13 @@ Then, the IPFS node resolves the components.
212
212
The first component in an `/ipfs/...` path is always a multihash.
213
213
The rest are names of links, to be resolved into multihashes.
214
214
215
-
# [6 IPFS User Interfaces]()
215
+
# 6. IPFS User Interfaces
216
216
217
217
IPFS is not just a protocol. It is also a toolset. IPFS implementations include various tools for working with the merkledag, how to publish something, how to name something, etc. These interfaces may be critical to the survival of an implementation, or the project as a whole. These interfaces govern how people use IPFS, thus careful attention must be given to their design and implementation. Examples:
218
218
219
-
- The [IPFS api](http://ipfs.io/docs/api) - an HTTP service
220
-
- The [IPFS cli](http://ipfs.io/docs/commands/) - a unix cli
221
-
- The [IPFS libs](https://github.com/ipfs/ipfs#api-client-libraries) - implementations in various languages
219
+
- The [IPFS api](https://docs.ipfs.io/reference/api/http/) - an HTTP service
220
+
- The [IPFS cli](https://docs.ipfs.io/reference/api/cli/) - a unix cli
221
+
- The [IPFS libs](https://github.com/ipfs/ipfs#http-client-libraries) - implementations in various languages
222
222
- The IPFS gateways - nodes in the internet that serve HTTP over IPFS
0 commit comments