1. 30 Jan, 2020 1 commit
    • dirkmc's avatar
      feat: bitswap protocol extensions · b3a47bcf
      dirkmc authored
      This commit extends the bitswap protocol with two additional wantlist properties:
      
      * WANT_HAVE/HAVE: Instead of asking for a block, a node can specify that they
        want to know if any peers "have" the block.
      * WANT_HAVE_NOT/HAVE_NOT: Instead of waiting for a timeout, a node can explicitly
        request to be told immediately if their peers don't currently have the given
        block.
      
      Additionally, nodes now tell their peers how much data they have queued to send
      them when sending messages. This allows peers to better distribute requests,
      keeping all peers busy but not overloaded.
      
      Changes in this PR are described in: https://github.com/ipfs/go-bitswap/issues/186
      b3a47bcf
  2. 15 Oct, 2019 1 commit
  3. 18 Feb, 2019 1 commit
  4. 04 Oct, 2018 1 commit
    • Steven Allen's avatar
      allocate less in protobufs · 243a6c53
      Steven Allen authored
      This was showing up as a major source of heap allocations (well, at least when
      the DHT is in client-only mode).
      243a6c53
  5. 09 Aug, 2018 1 commit
  6. 27 Jul, 2018 1 commit
  7. 10 Oct, 2016 1 commit
    • Jeromy's avatar
      bitswap: protocol extension to handle cids · 591491b1
      Jeromy authored
      This change adds the /ipfs/bitswap/1.1.0 protocol. The new protocol
      adds a 'payload' field to the protobuf message and deprecates the
      existing 'blocks' field. The 'payload' field is an array of pairs of cid
      prefixes and block data. The cid prefixes are used to ensure the correct
      codecs and hash functions are used to handle the block on the receiving
      end.
      
      License: MIT
      Signed-off-by: default avatarJeromy <why@ipfs.io>
      591491b1
  8. 13 Feb, 2016 1 commit
  9. 10 Jul, 2015 1 commit
  10. 28 Apr, 2015 1 commit
  11. 31 Mar, 2015 1 commit
  12. 18 Dec, 2014 1 commit
  13. 23 Oct, 2014 1 commit
  14. 22 Oct, 2014 2 commits
  15. 22 Sep, 2014 1 commit
    • Brian Tiger Chow's avatar
      refac(exchange) bitswap -> exchange/bitswap · 7cb2f524
      Brian Tiger Chow authored
      Move go-ipfs/bitswap package to go-ipfs/exchange/bitswap
      
      * Delineates the difference between the generic exchange interface and
        implementations (eg. BitSwap protocol)
      
        Thus, the bitswap protocol can be refined without having to overthink
        how future exchanges will work. Aspects common to BitSwap and other
        exchanges can be extracted out to the exchange package in piecemeal.
      
        Future exchange implementations can be placed in sibling packages next
        to exchange/bitswap. (eg. exchange/multilateral)
      7cb2f524