Non IP exchanges in IPFS?

From @theobat on Sat Mar 11 2017 18:05:33 GMT+0000 (UTC)

As mentioned in the libp2p specs the protocols responsible for Addressing a machine or process is ip either v4 or v6. My questions are simple:

  • Is there any IP substitute or alternative in the current versions of go-ipfs or js-ipfs ?
    It doesn’t seem to be the case given the libp2p link above and the multiaddress specs, but I remember a jbenet’s talk where he said ipfs was not even ip bound and I’m not really proficient in the current go ipfs implementation, perhaps network exchanges happen without using multiaddress ?

  • Is there a planned integration of any ip substitute for ipfs and for what purpose ?
    The libp2p specs mention Hidden addressing, like SDP, I didn’t find anything about that, perhaps Ipsec ?

  • Within the set of planned substitutes for IP (or merely alternatives), is there any of them that is non traceable (as far as we know) ? By traceable I mean any possibility to track the routers the protocol’s packets are supposed to use (or the ones it uses dynamically if not deterministic) and what are their use-cases/scopes ? IPv4 uses TTL, ipv6 uses Hop limit, Ipsec I don’t know yet…

I am asking because of my slow-going traceroute thinking. Just having the confirmation that any packet sent or received between two computers is traceable in the current ipfs versions would save me a lot of time !

As a side note: While referring to the actual responsibility of a protocol as opposed to its OSI layer is definitely a huge improvement in terms of education and understanding, it might be a good idea to keep some sort of responsibility name-space in multi-addresses… Perhaps this is just about grouping them by “roles” in the csv table, but it might also be a matter of validation like - is the multiaddress /ip4/127.0.0.1/ip4/1234 accepted in the multiaddress specs ? Nothing seems to forbid this, and yet it doesn’t mean anything to me.

Copied from original issue: https://github.com/ipfs/faq/issues/234

1 Like

From @whyrusleeping on Sat Mar 11 2017 20:27:25 GMT+0000 (UTC)

We are planning to have other transports, one that may make it in soon could be unix domain sockets.

Once we get to packet switch networking we can also use raw ethernet for in-datacenter or mesh applications.

Supporting IPsec would also be very very cool, and if someone wants to put work into that, i’m definitely in support.

As for your traceable packets question, thats currently difficult, but could probably be implemented once we have packet switched networking of some sort.

From @theobat on Mon Mar 13 2017 18:16:47 GMT+0000 (UTC)

thanks for your answer @whyrusleeping. Is raw ethernet fulfilling the same role as IP ? or both can be used for either similar or different purposes and are just beeing used as such in current internet protocol’s stack ?

packet switch networking

So how is it going without packet switch networking, does this mean that currently IPFS is not doing any queuing in its packet exchanges ? or does it mean that it’s simply not exchanging packets ?? I’m not sure I understand why packet switching has an impact on the traceability of the exchanges…

From @Kubuxu on Mon Mar 13 2017 20:50:14 GMT+0000 (UTC)

Packet Switching is endeavor of creating overlay network among IPFS nodes, where nodes can opt-in to be relays for others. This allows nodes that have no common transports (IPv6 and IPv4 only, Web browser and normal node without websockets enabled) to communicate over e2e channel through other nodes.